训练Tesseract时如何处理训练图像与真值文件中的多空格字符问题
Tesseract微调空格标注规则与推理参数说明
真值文件空格处理方案选择
- 选项1(精准标注空格数量):仅适配有严格排版还原需求的下游场景,例如固定格式票据识别、代码片段识别、古籍排版复刻等。该方案要求标注时尽可能还原原图的真实空格数量,模型才能学习到视觉间距和实际空格个数的对应关系。如果部分区域空格数量无法判断,可以将对应样本排除,或者结合同文档其他同间距区域的标注逻辑统一处理,避免标注误差影响训练效果。
- 选项2(统一使用单空格):适配仅需提取文本内容、无排版保留需求的通用识别场景。这类场景下多空格无实际语义价值,统一单空格标注可以降低训练复杂度,也能避免无法判断空格个数带来的标注错误。
- 选项3(两种方式无差异):结论错误,两种标注逻辑训练得到的模型适配场景、输出效果都有明显差异,不存在等效性。
保留词间距选项的影响
推理阶段的保留词间距参数不会改变训练阶段的标注选择逻辑,反而你的标注规则决定了该参数能否生效:
- 若训练时统一使用单空格标注,即使推理时打开该参数,模型也无法输出多空格结果,因为训练数据中没有对应的标注样本,模型没有学习到多空格的映射规则。
- 若训练时精准标注了空格数量,打开该参数时模型会输出和学习到的间距匹配的多空格结果;关闭该参数时,输出结果会自动将所有词间空格合并为单空格,和统一标注单空格的模型输出效果一致。
内容的提问来源于stack exchange,提问作者Neil
相关产品推荐
相关产品推荐

