【发布时间】:2013-05-11 23:49:57
【问题描述】:
您好,谁能给我一个测试 Tesseract OCR 的简单示例
最好在 C# 中。
我尝试了找到here 的演示。
我下载英文数据集并解压到 C 盘。并修改代码如下:
string path = @"C:\pic\mytext.jpg";
Bitmap image = new Bitmap(path);
Tesseract ocr = new Tesseract();
ocr.SetVariable("tessedit_char_whitelist", "0123456789"); // If digit only
ocr.Init(@"C:\tessdata\", "eng", false); // To use correct tessdata
List<tessnet2.Word> result = ocr.DoOCR(image, Rectangle.Empty);
foreach (tessnet2.Word word in result)
Console.WriteLine("{0} : {1}", word.Confidence, word.Text);
不幸的是,代码不起作用。程序在 "ocr.Init(..." 行终止。即使使用 try-catch,我什至无法获得异常。
我能够运行vietocr!但这对我来说是一个非常大的项目。我需要一个像上面这样的简单例子。
【问题讨论】:
-
你所说的“它不起作用”是什么意思,它是崩溃还是只是不做你想做的事?
-
好吧,程序刚刚关闭,没有任何错误或异常。它将输出写入控制台。所以我做了配音并逐行进行。发现程序在第5行退出 -> ocr.Init(@"C:\tessdata\", "eng", false);
-
您可以单步执行该函数并找出导致程序退出的原因。
-
C盘下加载tessdata会不会有权限问题?可以改变路径再试一次。
-
函数在 tessnet dll 中。我进不去!它是一台 Windows 7 机器,我以管理员身份登录。我不明白为什么会有权限问题。我什至没有其他驱动器