【问题标题】:OCR error correction algorithmsOCR 纠错算法
【发布时间】:2011-08-05 02:46:04
【问题描述】:

我正在将大量扫描文档数字化,并使用 Tesseract 3 作为我的 OCR 引擎。它的输出质量一般,因为它经常在实际文本之前和之后产生垃圾字符,以及文本中的拼写错误。

对于前一个问题,似乎必须有策略来确定哪些文本是真正的文本,哪些不是字典中的单词)。

对于拼写错误,大多数错误源于字母的一些错误分类(例如,将l1I 相互替换),似乎应该有方法猜测哪些单词拼错了(因为英语中没有太多单词中间有“1”),并猜测正确的更正是什么。

该领域的最佳做法是什么?是否有做这种事情的算法的免费/开源实现?谷歌已经发表了很多论文,但并不具体。如果没有可用的实现,那么众多论文中的哪一个会是一个好的起点?

【问题讨论】:

标签: algorithm ocr error-correction


【解决方案1】:

对于“确定哪些文本实际上是文本,哪些文本不是”,您可能需要查看来自开发 Tesseract(ISRI)的同一部门的rmgarbage。我写了一个Perl implementation 并且还有一个Ruby 实现。对于 1 与 l 的问题,我正在尝试使用 ocrspell(同样来自同一部门),their original source 可用。

我只能发两个链接,所以缺少的是:

  • ocrspell:在 dx.doi.org 输入“10.1007/PL00013558”]
  • rmgarbage:搜索“自动删除 OCR 文本中的垃圾字符串:一种实现”
  • ruby implementation:搜索“docsplit textcleaner”

【讨论】:

    【解决方案2】:

    可能对您有用的方法是尝试 this free online OCR 并将其结果与您的结果进行比较,看看是否通过播放图像(例如放大/缩小)可以改善结果。

    我将它用作我自己使用 tesseract 时应该得到的结果的“上限”(在使用 OpenCV 修改图像之后)。

    【讨论】:

      猜你喜欢
      • 2011-11-10
      • 1970-01-01
      • 2012-06-13
      • 2013-11-22
      • 2014-07-15
      • 1970-01-01
      • 2011-04-10
      • 2012-04-29
      • 1970-01-01
      相关资源
      最近更新 更多