使用 Tesseract Engine 的 Tessnet2 - 为什么输出非常糟糕?
Tessnet2 using Tesseract Engine - Why does it give very bad output?
我正在尝试在 C# 中通过 Tesseract 引擎使用 Tessnet2。很多我给Tessnet2的测试图,输出的很差,几乎没有一个是正确的
这是我在 C# 控制台项目中的代码,Program.cs class:
static void Main(string[] args)
{
try
{
Bitmap image = new Bitmap(@"C:\Users\hp\Desktop\eurotext.tif");
var ocr = new Tesseract();
//when I tried to add the SetVariable(...), it didn't change the output much
ocr.Init(@"C:\Program Files (x86)\Tesseract-OCR", "eng", true);
var result = ocr.DoOCR(image, Rectangle.Empty);
foreach (Word word in result)
Console.WriteLine("{0} : {1}", word.Confidence, word.Text);
Console.ReadLine();
}
catch (Exception exception)
{
Console.WriteLine("Error");
}
}
例如,这是一个示例(大二进制 300 dpi)测试图像 "eurotext.tif":
这是这张图片的 Tessnet2 输出:
我一直在这个网站学习使用Tessnet2的步骤:
https://code.msdn.microsoft.com/windowsdesktop/How-to-use-Tessnet2-library-716be12f
我用这个网站尝试正确使用 SetVariable(...) 函数来让它做我想做的事,但没有运气,输出也没有太大区别:
http://www.sk-spell.sk.cx/tesseract-ocr-en
我找到了 Tesseract 指南来减少引擎的错误:
http://code.google.com/p/tesseract-ocr/wiki/ImproveQuality
它说"Tesseract works best with text using a DPI of at least 300 dpi"..这个示例图像是 300 dpi
这个示例图像也是二进制的,这应该会提供更好的输出,正如许多人在各种网站上所建议的那样
我到处寻找可以提高准确性的解决方案,我发现很多帖子和人都有类似的问题,但没有有效的解决方案。
这个问题可能是什么原因造成的?我该如何解决?
我是这个主题的初学者,如果解决方案太琐碎,请多多包涵。
谢谢!
要显示文本,您必须更改:
ocr.Init(@"C:\Program Files (x86)\Tesseract-OCR", "eng", true);
至:
ocr.Init(@"C:\Program Files (x86)\Tesseract-OCR", "eng", false);
我正在尝试在 C# 中通过 Tesseract 引擎使用 Tessnet2。很多我给Tessnet2的测试图,输出的很差,几乎没有一个是正确的
这是我在 C# 控制台项目中的代码,Program.cs class:
static void Main(string[] args)
{
try
{
Bitmap image = new Bitmap(@"C:\Users\hp\Desktop\eurotext.tif");
var ocr = new Tesseract();
//when I tried to add the SetVariable(...), it didn't change the output much
ocr.Init(@"C:\Program Files (x86)\Tesseract-OCR", "eng", true);
var result = ocr.DoOCR(image, Rectangle.Empty);
foreach (Word word in result)
Console.WriteLine("{0} : {1}", word.Confidence, word.Text);
Console.ReadLine();
}
catch (Exception exception)
{
Console.WriteLine("Error");
}
}
例如,这是一个示例(大二进制 300 dpi)测试图像 "eurotext.tif":
这是这张图片的 Tessnet2 输出:
我一直在这个网站学习使用Tessnet2的步骤: https://code.msdn.microsoft.com/windowsdesktop/How-to-use-Tessnet2-library-716be12f
我用这个网站尝试正确使用 SetVariable(...) 函数来让它做我想做的事,但没有运气,输出也没有太大区别: http://www.sk-spell.sk.cx/tesseract-ocr-en
我找到了 Tesseract 指南来减少引擎的错误: http://code.google.com/p/tesseract-ocr/wiki/ImproveQuality
它说"Tesseract works best with text using a DPI of at least 300 dpi"..这个示例图像是 300 dpi
这个示例图像也是二进制的,这应该会提供更好的输出,正如许多人在各种网站上所建议的那样
我到处寻找可以提高准确性的解决方案,我发现很多帖子和人都有类似的问题,但没有有效的解决方案。
这个问题可能是什么原因造成的?我该如何解决?
我是这个主题的初学者,如果解决方案太琐碎,请多多包涵。
谢谢!
要显示文本,您必须更改:
ocr.Init(@"C:\Program Files (x86)\Tesseract-OCR", "eng", true);
至:
ocr.Init(@"C:\Program Files (x86)\Tesseract-OCR", "eng", false);