Я пытаюсь извлечь текст из png, используя tesseract. Tesseract не извлекает текст в случае следующего png. Tesseract OCR для .net не обнаруживает текст, когда белый текст написан на черном прямоугольнике, а граница черного прямоугольника белая?
Черный прямоугольник на изображении имеет белую рамку (что не видно из-за фона веб-сайта). Но в случае, если я удаляю белую границу с прямоугольника, тогда Tesseract способен обнаруживать текст. Есть ли какая-либо работа вокруг этого вопроса?
Кроме того, если уменьшить размер границы, то это извлечь какой-нибудь текст, как:
I (31,04 I
Вот код, который я использую:
using (TesseractEngine ocr = new TesseractEngine(dataPath, "eng", EngineMode.TesseractOnly))
{
using (Pix p = Pix.LoadFromFile(filePath))
{
using (Pix img = p.Scale(2,3))
{
using (var page = ocr.Process(img))
{
string text = page.GetText();
Console.WriteLine(text);
}
}
}
}
С помощью масштабирования я могу извлечь следующий текст:
I G1.04 I
Однако, если я увеличиваю размер границы, то даже масштабирование изображения не будет иметь эффекта.
На самом деле Тессеракт может обнаружить текст даже с белыми границами. Возможно, это связано с другой проблемой. Попробуйте преобразовать изображение в оттенки серого и передать его tesseract – Prabu