Tessnet2 (Tesseract) не возвращает правильные результаты - способы улучшить вывод
Я использую tessnet2 (tesseract-ocr) в C# на следующем изображении:
Это мой код:
var image = new Bitmap(@"D:\anuj\a2.jpg");
ocr.Init(@"D:\anuj\OCRTest\tessdata", "eng", false);
var result = ocr.DoOCR(image, Rectangle.Empty);
foreach (Word word in result)
Console.Write("{0} ", word.Text);
Console.ReadLine();
который дает вывод: Icurumcretz j
Какие способы получения правильного результирующего текста в качестве образца изображения довольно ясны и имеют хорошее разрешение и все еще не дают правильный текст. Какие параметры нужно определить, чтобы получить правильный результат. Ответьте, пожалуйста.
1 ответ
Вы должны попробовать и немного обработать изображение, чтобы улучшить вывод тессеракта. Библиотеки OpenCV(EmguCV для C#, я думаю) могут помочь вам в некоторых из этих методов обработки изображений. Я использовал маленькую медиану размытия на изображении, чтобы уменьшить шум, и сделал из него двоичное изображение.
Тестирование этого изображения с помощью tesseract дает мне следующий вывод: laurumoretz и немного тарабарщины на следующей строке, потому что я не удалял маленькие капли (символы с наклейки с номерами телефонов). Так что это по одному, но я не использовал исправление, чтобы текст выглядел полностью линейным.
Я надеюсь, что это даст вам представление о том, как улучшить вывод tesseract-ocr.