【问题标题】:Tesseract - Best way to format multiple images of words as one image for OCRTesseract - 将多个单词图像格式化为 OCR 图像的最佳方法
【发布时间】:2019-04-02 23:42:41
【问题描述】:

我有一系列图像,每个图像都包含一个单词。我不想在所有图像上单独运行 pytesseract OCR(效果很好),而是想将图像编译成一个大图像并在其上运行 pytesseract OCR(以降低运行时间)。

设置图像格式以获得最佳效果的最佳方法是什么? (即:它们是否应该水平排列、垂直排列、混乱排列等)

另外,最好的页面分割模式是什么?

我已经尝试水平连接图像,然后使用 PSM 7(将图像视为单行文本),但是,这并没有产生与使用 PSM 8 对每个单独的单词图像运行 pytesseract OCR(处理图像作为一个单词)。

【问题讨论】:

  • 您真的确定将图像合并为一个可以提高运行时间吗?我知道人们在使用云 OCR API 时这样做是为了减少 API 调用的数量,但您无需为使用 Tesseract 的每个 API 调用付费。
  • @Lalaland 当我水平连接图像时,运行时间显着减少。话虽如此,该方法还不够,因为 tesseract 错误地识别了一些单词。我假设如果这样做显着减少了运行时间,那么更改格式可以在同样减少的运行时间下产生更好的结果。

标签: python ocr tesseract python-tesseract


【解决方案1】:

pytesseract 正在包装 tesseract 可执行文件,因此它是 wrote each image to diskread output from disk。 tesseract 可执行文件的每次启动都会导致 api 的初始化(例如,从磁盘读取训练数据)。

如果您要对大文本/图像进行 OCR,这可能不是什么大问题,但如果您有大量短文本图像(例如单词),则会浪费时间/性能。 考虑通过 cffi 或 ctype 在 python 中使用 tesseract C-API。见recent example in tesseract user forum

【讨论】:

    猜你喜欢
    • 2020-07-28
    • 1970-01-01
    • 2012-11-05
    • 2014-03-30
    • 2012-11-10
    • 1970-01-01
    • 2019-01-12
    • 2013-08-31
    • 1970-01-01
    相关资源
    最近更新 更多