Tessnet2 OCR:如何调整OCR以仅识别所有字母,单词和数字?

时间:2016-03-28 11:37:08

标签: c# ocr tesseract tessnet2

我正在使用tessnet2 C# simple example中描述的tessnet2。

 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,以便它读取所有字母,单词和数字。

1 个答案:

答案 0 :(得分:1)

只需编辑

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

通过

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

并注释掉第三行

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

它会起作用。