【发布时间】:2011-04-10 15:06:08
【问题描述】:
问题
我正在尝试通过组合来自三个不同 OCR 系统(tesseract、cuneinform、ocrad)的输出来改进 OCR 过程的结果。 我已经进行了图像预处理(去歪斜、去斑、阈值处理等等)。我不认为这部分可以改进很多。 通常要识别的文本长度在 1 到 6 个单词之间。文本的语言是未知的,它们经常包含幻想词。 我在 Linux 上。首选语言是 Python。
到目前为止我所拥有的
通常每个结果都有一两个错误。但他们在不同的字符/位置有错误。错误可能是它们识别出错误的字符或它们包含不存在的字符。他们不经常忽略一个角色。
示例可能如下所示:
Xorem_ipsum
lorXYm_ipsum
lorem_ipuX
X 是错误识别字符,Y 是文本中不存在的字符。空格替换为“_”以提高可读性。
在这种情况下,我会尝试组合不同的结果。 在三对之间重复使用“最长公共子串”算法,我可以获得给定示例的以下结构
or m_ipsum
lor m_ip u
orem_ip u
但是我现在卡住了。我无法将这些部分组合成一个结果。
问题
你有吗
- 如何结合不同的想法 常见的最长子串?
- 或者您有更好的办法解决这个问题吗?
【问题讨论】:
标签: algorithm ocr error-correction