好吧,我正在使用此 OCR 的编译 .NET 版本,可以在@http://www.pixel-technology.com/freeware/tessnet2/ 找到它。
我有它的工作,但是它的目的是翻译车牌,遗憾的是引擎确实没有准确翻译一些字母,例如这是我扫描的图像以确定字符问题
结果:
12345B7B9U ABCDEFGHIJKLMNUPIJRSTUVHXYZ
因此以下字符翻译不正确:
1、O、Q、W
这看起来还不错,但是在我的车牌上,结果不是很好:
= H4 ODM
= LDH IFW
假测试
= NR4 y2k
正如您可能会说的那样,我已经尝试了降噪、增加对比度和移除非绝对黑色的像素,但没有真正的改进。
显然你可以“学习”引擎的新字体,但我想我需要为 .NET 重新编译库,而且这似乎是在我没有的 Linux 操作系统上执行的。
http://www.scribd.com/doc/16747664/Tesseract-Trainingfor-Khmer-LanguageFor-Posting
所以我不知道接下来要尝试什么,我已经编写了一个快速控制台应用程序,纯粹用于测试目的,如果有人想尝试的话。如果有人有任何想法/图形处理/图书馆想法,我将不胜感激。
最佳答案
我最近通过 Tessnet2 使用了 Tesseract(如果我没记错的话,Tessnet2 是 Rémy Thomas 制作的围绕 Tesseract 2.0 的 VS2008 C++ 包装器)。让我试着用我对这个工具的一点了解来帮助你:
1,正如我上面所说,这个包装器仅适用于 Tesseract 2.0,并且 newest Tesseract version on Google Code是 3.00(代码不再托管在 Source Forge 上)。有固定的贡献者:我看到计划发布 3.01 左右的版本。因此,您不会从最后的增强功能中受益,包括页面布局分析,这在您的牌照不是 100% 水平时可能会有所帮助。
我向 Rémy 询问了第 3 版的 Tessnet2 .NET 包装器,他目前没有任何计划。所以像我一样,你必须自己做!
所以如果你想获得最新版本的源代码,你可以从Subversion下载它们。存储库(所有内容都在 dedicated site page 中描述),如果您有 Visual Studio 2008,您将能够编译它们,因为它们的源代码在
vs2008
子文件夹中包含一个 VS2008 解决方案。此解决方案由 VS2008 C++ 项目组成,因此要在 C# 中获得结果,您必须将 .NET P/Invoke 与项目构建的tessDll
结合使用。同样,如果您需要这个,我有您可能感兴趣的代码示例,但您可能希望继续使用 C++ 并创建您自己的新 WinForm 项目,例如!当你完成编译时(应该不会有什么大问题,但如果你遇到了一些,请告诉我,我可能也遇到过他们:-)),你将在输出几个二进制文件会让你做特定的训练!同样,有 a page specially dedicated to Tesseract 3 training .得益于此培训,您可以:
限制您的字符集,这将自动删除标点符号(例如,'/-\' 而不是 'A')
指出您检测到的歧义(如您所见,用“D”代替“O”,用“B”代替“8”等),您在使用训练时会考虑这些歧义。
我还看到,如果将图像限制在字母所在的区域(即没有人脸,周围没有风景),Tesseract 结果会更好:在我的例子中,我只需要识别特定的区域从网络摄像头拍摄的卡片照片,所以我使用图像处理来限制区域。当然,那很长,但我的图像来自许多不同的来源,所以我别无选择。如果你能得到限制到最低限度的图像,那就太好了!
希望对您有所帮助,请随时给我您的意见和问题!
关于c# - Tesseract OCR Library - 学习字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4908919/