2

我正在使用 tessnet2,如tessnet2 C# 简单示例中所述。

 var image = new Bitmap(@"C:\OCRTest\number.jpg"); 
 var ocr = new Tesseract(); 
 ocr.SetVariable("tessedit_char_whitelist", "0123456789"); // If digit only 
 //@"C:\OCRTest\tessdata" contains the language package, without this the method crash and app breaks 
 ocr.Init(@"C:\OCRTest\tessdata", "eng", true);  
 var result = ocr.DoOCR(image, Rectangle.Empty); 
 foreach (Word word in result) 
 Console.WriteLine("{0} : {1}", word.Confidence, word.Text); 
 Console.ReadLine(); 

但是,当我将图像作为输入时,它还包含英文单词和数字或仅包含英文单词。它只返回数字(图像中存在的数字和一些额外的数字)。我在评论第三行后尝试过,但它甚至无法识别数字。有谁知道如何在 C# 中使用 tessnet2 以便它读取所有字母、单词和数字。

4

1 回答 1

1

只需编辑该行

ocr.Init(@"C:\OCRTest\tessdata", "eng", true);

经过

ocr.Init(@"C:\OCRTest\tessdata", "eng", false);

并注释掉第三行

//ocr.SetVariable("tessedit_char_whitelist", "0123456789");

它会起作用的。

于 2016-03-29T05:21:32.347 回答