解决方案
无耻的插头与免责声明:我公司包正方体在.NET中使用
超正方体是一个行OCR引擎。它可能会错过很多东西,很容易得到非文本混淆。你可以为它做的最好的事情是确保它只是变得文本。下一个最好的办法是给它东西三立二值化(自适应或动态阈值到那里)或灰度,让它尝试做二值化。
其他提示
- 训练 tesseract 识别你的字体
- 使图像更加干净,并且在字符周围有足够的可用空间
- 利润 :)
以下是一些现实世界的例子。
- 第一张图像是原始图像(裁剪后的功率计数字)
- 第二张图像是在 GIMP 中稍微清理过的图像,在 tesseract 中 OCR 准确率约为 50%
- 第三张图像是完全干净的图像 - 100% OCR 识别,无需任何培训!
即使最好的条件OCR变种会偷袭你下。你最好的选择将是设计你的测试,以了解他们的。
有关0和O之间进行区分,一个简单的解决方案是选择区分字体两者(例如:0在其中间破折号或点)。请问,在您的应用程序是可以接受的?
另一种解决方案是应用文本的字符逐字符分析之后基于字典的步骤 - 将所识别的文本到某种形式的拼写检查或验证器的困难的字符之间进行区分。
例如,圆形符号随后其它数目是最有可能是零,而在同一符号,随后是字母最有可能是大写的O。这是一个简单的例子,但它表明上下文如何需要使更可靠的OCR系统。
不隶属于 StackOverflow