tessnet init问题

时间:2011-07-26 10:37:07

标签: c# .net frameworks ocr tessnet2

我需要对.jpg图像进行OCR。我搜索了很多,最后得到了“tessnet2”。 代码看起来很简单,但我对示例有疑问:l

当我尝试初始化ocr时,我的应用程序退出并且没有返回任何内容。 Debuging,看起来像下一行是它退出的地方:

ocr.Init("C:\\Desarrollo\\Prueba\\ConsoleApplication1\\tessdata", "spa", false);

包含“tessdata”的路径的第一个参数,不是吗? 第二条路径是我想要使用的语言......

在tessdata中我有它需要的8个文件。

我做错了什么?

我正在使用c#和visual studio 2010.当我尝试编译它时,我得到.net框架的错误(我使用的是4.0,它需要2.0,我减少它,现在编译但我得到了这个问题)。< / p>

谢谢!

3 个答案:

答案 0 :(得分:9)

我遇到了同样的问题,但我发现我一直在使用Tesseract 3.0(不是2.0)的语言文件。当我把文件放到2.0时,它起作用了。

由于您似乎也在使用2.0 SDK,请下载2.0的语言文件(http://code.google.com/p/tesseract-ocr/downloads/list)。顶部的文件是3.0。滚动到列表底部。

答案 1 :(得分:1)

我也遇到了同样问题的方法 tessnet2.Tesseract ocr = new tessnet2.Tesseract(); ocr.Init(@&#34; E:\ QAliber \ qaliber-code-133 \ QAliber Engine \ OCR \&#34; + @&#34; tessdata \&#34;,&#34; eng&#34; ,false);

在Init()方法失败了。它没有给我任何错误,但执行只是退出退出代码1。 为了解决这个问题,我从正确的版本下载了eng语言文件(对我来说是2.0)并删除了注册表中我找到关键词&#34; tesseract&#34;的所有键。然后我重新启动了机器。它程序现在成功执行。现在唯一的问题是我没有得到正确的结果(身高是负面的)。我会看看它。但我很高兴至少我的程序执行。

答案 2 :(得分:0)

我的代码在其他计算机上工作正常但不能在一台计算机上运行。我正在使用VS2010和框架3.5。控制权从以下代码自动退出:

ocr.Init(@&#34; D:\ path&#34;,&#34; eng&#34;,false);

这里的ocr是Tesseract()的实例。