dmMaze / BallonsTranslator

深度学习辅助漫画翻译工具, 支持一键机翻和简单的图像/文本编辑 | Yet another computer-aided comic/manga translation tool powered by deeplearning
GNU General Public License v3.0
2.58k stars 175 forks source link

为什么使用 mit48px 手动选择文本框OCR的结果很差,但是点run运行全部的结果就正常? #483

Open hhucchenyixiao opened 3 months ago

hhucchenyixiao commented 3 months ago

并且就算我对run出来的文本框选择 OCR 效果也不如 run 出来的好。 20240614_214511

dmMaze commented 3 months ago
  1. 识别框的排版方向要和原文对应
  2. 这些 mit 模型都是逐行/列识别的,所以框选也只能框单行/列才有结果

本来打算训练一个能按块识别的 OCR,不过无限期搁置了,我这礼拜有空翻出以前的自动分行脚本加进来...

hhucchenyixiao commented 3 months ago
  1. 识别框的排版方向要和原文对应
  2. 这些 mit 模型都是逐行/列识别的,所以框选也只能框单行/列才有结果

本来打算训练一个能按块识别的 OCR,不过无限期搁置了,我这礼拜有空翻出以前的自动分行脚本加进来...

既然 mit 只能识别一行,但是为什么 run 的时候可以识别多行呢?

dmMaze commented 3 months ago
  1. 识别框的排版方向要和原文对应
  2. 这些 mit 模型都是逐行/列识别的,所以框选也只能框单行/列才有结果

本来打算训练一个能按块识别的 OCR,不过无限期搁置了,我这礼拜有空翻出以前的自动分行脚本加进来...

既然 mit 只能识别一行,但是为什么 run 的时候可以识别多行呢?

因为 ocr 前面还有个 detection 模型,run 的时候调用它能检测整页行坐标给 ocr,但是它在局部区域效果不行,所以手动的时候不调用它 e79705a 以后调用 mit 模型前会尝试自动分行

hhucchenyixiao commented 2 months ago

因为 ocr 前面还有个 detection 模型,run 的时候调用它能检测整页行坐标给 ocr,但是它在局部区域效果不行,所以手动的时候不调用它 e79705a 以后调用 mit 模型前会尝试自动分行 谢谢。现在能识别多行了,但是效果还是不如 run 出来的好,比如这里总是把 a 识别为 g。 image image

还有就是我发现检测器检测出来的范围总是比整个文本小一点,比如这图里面的 W 右边一点就在外面去了,有的时候行首或者行尾的字母符号就因此识别的不对。能否直接让文本框都扩张一点,保证行首和行尾不会遗漏?