【问题标题】:Creating a training image for Tesseract OCR为 Tesseract OCR 创建训练图像
【发布时间】:2012-11-05 01:01:01
【问题描述】:

我正在编写一个生成器,用于为 Tesseract OCR 训练图像。

在为 Tesseract OCR 的新字体生成训练图像时,最佳值是:

  1. DPI
  2. 以磅为单位的字体大小
  3. 字体是否应该抗锯齿
  4. 边界框是否适合:,或不适合:

【问题讨论】:

  • 尝试使用 12 pts 和 300 dpi 的字体

标签: ocr tesseract


【解决方案1】:

tesseract 训练的好工具http://vietocr.sourceforge.net/training.html

这是一个很好的工具,因为它有很多优点

  1. 字母上的边界框可以通过基于 GUI 的界面进行编辑
  2. 自动创建所有需要文件
  3. 自动将freq-dawg、word-dawg、user-words(可以是空文件)、Inttemp、Normproto、Pffmtable、Unicharset、DangAmbigs(可以是空文件)、shapetable 等所有文件合并为单个eng.traineddata 文件。
  4. 新的训练数据可以与现有的tesseract文件一起使用end.traineddata

【讨论】:

    【解决方案2】:

    这里以某种方式回答了第二个问题:http://code.google.com/p/tesseract-ocr/wiki/TrainingTesseract3#Generate_Training_Images 无需训练多种尺寸。 10点就可以了。 (一个例外是非常小的文本。如果您想识别 x 高度小于约 15 像素的文本,您应该专门训练它或在尝试识别它们之前缩放您的图像。)

    问题 1 和 3:根据经验,我已成功使用 300 dpi 图像/非抗锯齿字体。更具体地说,我在训练 pdf 上使用了以下转换参数,生成了令人满意的图像:

    convert -density 300 -depth 8 [input].pdf -background white -flatten +matte -compress none -monochrome [output].tif
    

    但后来我尝试向 Tesseract 添加点字体,并且仅在我使用 150 dpi 图像时才能正确检测到字符。所以,我认为没有通用的解决方案,这取决于您要添加的字体类型。

    【讨论】:

      【解决方案3】:

      我找到了第 4 个问题的答案 - “边界框是否应该紧密贴合”。

      似乎尽可能地拟合矩形可以得到更好的结果。

      正如@Yaroslav 建议的那样,对于其他 12 pts 和 300 dpi 就足够了。我认为最好关闭抗锯齿功能。

      【讨论】:

        猜你喜欢
        • 2020-06-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-10-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多