OCR纠错算法

| 我正在使用Tesseract 3作为我的OCR引擎,对大量扫描文档进行数字化处理。输出的质量中等,因为它经常在实际文本之前和之后产生垃圾字符,并在文本内产生拼写错误。 对于前一个问题,似乎必须要有策略来确定哪些文本实际上是文本,哪些文本不是(大多数文本是像人的名字一样的东西,所以我正在寻找除查找字典中的单词)。 对于错字问题,大多数错误源于字母的一些错误分类(例如,将“ 0”,“ 1”和“ 2”相互替换),并且似乎应该有猜测哪些单词拼写错误的方法(因为不是)许多英语单词的中间都有一个“ 1”),并猜测适当的更正是什么。 这个领域的最佳做法是什么?是否有做这种事情的算法的免费/开源实现? Google已经发表了很多论文,但是没有太多具体的内容。如果没有可用的实现,那么很多论文中的哪一篇是一个好的开始?     
已邀请:
对于“确定哪些文本实际上是文本而哪些文本不是”,您可能要看开发Tesseract(ISRI)的同一部门的
rmgarbage
。我已经编写了Perl实现,还有一个Ruby实现。对于1对1的问题,我正在尝试
ocrspell
(同样来自同一个部门),其原始信息可用。 我只能发布两个链接,所以缺少的链接是: ocrspell:在dx.doi.org中输入\“ 10.1007 / PL00013558 \”] rmgarbage:搜索\“自动删除OCR文本中的垃圾字符串:实现\” 红宝石实现:搜索“ docsplit textcleaner”     
可能对您有用的是尝试使用此免费的在线OCR,并将其结果与您的结果进行比较,以查看通过播放图像(例如放大/缩小)是否可以改善结果。 我将其用作我自己使用tesseract时应获得的结果的“上限”(在使用OpenCV修改图像之后)。     

要回复问题请先登录注册