Made by Euplectellashen
这是一个简单的桌面程序,用于从一个文件夹中随机显示图片,智能检测并自动遮挡带文字的标签区域(并不好用),左键点击恢复原图来显露标签。支持方向键翻页、"记住了"/"没记住"计数保存,以及只练习未记住图片的模式。
- 智能 OCR 遮挡:使用 EasyOCR 自动检测图片中的文字区域,放大裁剪时自动避开文字,无需手动选择标签位置
- 手动标签位置:也可以关闭 OCR,手动选择标签在哪个角落(右下、左下、右上、左上)
- 记忆统计:记住了/没记住 按钮,每张图片的计数持久化保存
- 只练未记住:勾选后只循环尚未记住的图片
- 导出 CSV:将所有图片的记忆统计导出为 CSV 文件
- 重置计数:一键重置所有图片的记忆计数
- 选择目录:可随时切换图片目录
main.py:主程序(使用 tkinter + Pillow + EasyOCR)requirements.txt:依赖列表counts.json:运行后自动生成,保存每张图片的记住次数
-
安装依赖:
pip install -r requirements.txt
注意:首次运行时 EasyOCR 会自动下载语言模型(中文+英文),可能需要几分钟。
-
将图片放到仓库根目录下的
Pic文件夹,或在程序中点击"选择图片目录"按钮选择其他目录。 -
启动程序:
python main.py
- 放大/还原:鼠标左键点击画布切换
- 拖曳平移:在放大模式下按住鼠标左键拖动可平移视图
- 键盘微调:在放大模式下使用 ↑↓←→ 方向键微调视图位置(每次移动 20 像素)
- 翻页:Shift+左/右方向键 或 界面按钮(放大模式下单独按左/右键是微调,需要 Shift 才能翻页)
- 记住了/没记住:点击按钮更新当前图片的记忆计数
- 智能 OCR 遮挡:默认开启,程序会自动检测图片中的文字并在放大时将其裁剪掉
- 标签位置:设为
auto时使用 OCR 自动检测;也可选择固定角落 - 只练没记住的:勾选后只显示记忆计数为 0 的图片
- 导出 CSV:点击按钮将统计数据保存为 CSV 文件
- 重置计数:点击按钮将所有图片的记忆计数归零
- 重置拖曳位置:清除所有图片保存的拖曳偏移
counts.json:保存每张图片的记忆计数drag_offsets.json:保存每张图片的拖曳偏移位置,重启程序后自动恢复
- OCR 检测在首次查看每张图片时会有短暂延迟(约 1-2 秒),之后结果会被缓存
- 如果 OCR 检测效果不理想,可以关闭"智能 OCR 遮挡"并手动选择标签位置
- 在无图形界面环境下,GUI 程序无法显示,请在有桌面环境的终端运行