【问题标题】:Tessnet2 returning only one characterTessnet2 只返回一个字符
【发布时间】:2013-05-08 18:29:04
【问题描述】:

我正在编写一个应用程序,我想读取图像并提取文本。为了测试 porpuses,我传入了一个包含 6 个字符的图像。这是我的代码。

Bitmap image = new Bitmap("eurotext.tif");
tessnet2.Tesseract ocr = new tessnet2.Tesseract();
ocr.SetVariable("tessedit_char_whitelist", "abcdefghijklmopqrstuvwxyz0123456789"); // If digit only
ocr.Init(null, "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);

结果是 100:~

我第二次运行它返回:

100:-

请帮忙!!!谢谢

【问题讨论】:

    标签: c# .net ocr tesseract tessnet2


    【解决方案1】:

    尝试更大的图片。当我开始使用 tessnet2 时,我得到了几次“~”。在我使用更大的图片(Textsize 应该超过 12)之后,程序运行良好。

    要放大图片并尝试不同的尺寸,可以使用轨迹栏和以下代码:

    C#

            Bitmap originalImage = new Bitmap(imagePath, true);
            double needdedHeigth = Convert.ToDouble(trackbar1.Value);
            double faktor = needdedHeigth / (double)originalImage.Height;
            int newWidth = Convert.ToInt32(faktor * (double)originalImage.Width);
            Bitmap ORCImage = new Bitmap(originalImage,newWidth,Convert.ToInt32(needdedHeigth));
    

    在“DoOCR()”方法中使用“OCRImage”位图

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多