Pregunta

¿Cómo se realiza el OCR de un archivo tiff utilizando la interfaz de Tesseract en C#?
Actualmente sólo sé cómo hacerlo usando el ejecutable.

¿Fue útil?

Solución

El código fuente parecía estar diseñado para un ejecutable, es posible que deba volver a cablear un poco las cosas para que se construya como una DLL.No tengo mucha experiencia con Visual C++ pero creo que no debería ser demasiado difícil con un poco de investigación.Supongo que es posible que alguien ya haya creado una versión de biblioteca, deberías probar con Google.

Una vez que tenga el código tesseract-ocr en un archivo DLL, puede importar el archivo a su proyecto C# a través de Visual Studio y hacer que cree clases contenedoras y haga todas las tareas de clasificación por usted.Si no puedes importar entonces Importación Dll le permitirá llamar a las funciones en la DLL desde el código C#.

Luego puede echar un vistazo al ejecutable original para encontrar pistas sobre qué funciones llamar para realizar el OCR correctamente en una imagen tiff.

Otros consejos

Echa un vistazo a tesnet

El programa C# inicia tesseract.exe y luego lee el archivo de salida de tesseract.exe.

Process process = Process.Start("tesseract.exe", "out");
process.WaitForExit();
if (process.ExitCode == 0)
{
    string content = File.ReadAllText("out.txt");
}

Descubrí hoy que EMGU ahora incluye un envoltorio Tesseract.Si bien la cantidad de archivos DLL no administrados de la biblioteca opencv puede parecer un poco desalentadora, no es nada que una copia rápida a su directorio de salida no pueda solucionar.A partir de ahí, el proceso de OCR real es tan simple como tres líneas:

Tesseract ocr = new Tesseract(Path.Combine(Environment.CurrentDirectory, "tessdata"), "eng", Tesseract.OcrEngineMode.OEM_TESSERACT_ONLY);
this.ocr.Recognize(clip);
optOCR.Text = this.ocr.GetText();

"robótica" reunida un vídeo de youtube muy bonito que demuestra una solución simple pero efectiva.

Descargo de responsabilidad:Trabajo para Atalasoft.

Nuestro El módulo OCR es compatible con Tesseract y si eso no es lo suficientemente bueno, puede actualizar a un motor mejor y simplemente cambiar una línea de código (proporcionamos una interfaz común para múltiples motores de OCR).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top