Configuración detallada de Tesseract

Cuando se trata de OCR, tener opciones y flexibilidad sobre cómo abordar y extraer texto de documentos es esencial. Dado que realizar OCR es costoso, es necesario poder controlar el rendimiento y los métodos a utilizar en documentos específicos para garantizar que la aplicación que utiliza OCR sea escalable y eficiente.

IronTesseract ofrece a los desarrolladores diferentes propiedades y opciones con las que experimentar. Por ejemplo, si quisieras bloquear ciertos caracteres o también quisieras leer los códigos de barras dentro de los documentos, o incluso dictar cómo el motor de OCR lee la página para escanear posibles bloques de texto, todo eso y más con la clase IronTesseract.

Después de iniciar la clase IronTesseract, hay algunas opciones importantes inmediatamente disponibles que querríamos modificar. La primera propiedad que se debe configurar es el Language. Por defecto, el idioma es inglés; sin embargo, IronTesseract admite hasta 125 idiomas e incluso permite usar varios idiomas con el método UseMultipleLanguages. Para más detalles, consulte a aquí.

La segunda propiedad que queremos configurar es la clase TesseractConfiguration. Con esta clase, podemos modificar cómo el motor Tesseract escanea el documento en busca de posibles bloques de texto. Primero, modificamos el idioma del motor Tesseract asignando el idioma a OcrLanguage.EnglishBest. Esta variación combina un LTSM y un OEM, que son estrategias de reconocimiento de formas utilizando OCR. combinar estas dos estrategias permite que el OCR produzca resultados más precisos. Después, configuramos ReadBarCodes en falso para evitar la lectura de códigos de barras durante el proceso de OCR.

También personalizamos y especificamos los caracteres que queremos extraer mediante la inclusión en la lista negra de ciertos caracteres en el documento. En este ejemplo, ponemos en la lista negra los caracteres para evitar extraer texto con comillas inversas, acentos o el símbolo de intercalado. Finalmente, configuramos las TessreactVariables["tessedit_parallelize"]a falso para desactivar el procesamiento en paralelo por el momento. Esta última es una característica realmente potente, ya que se comunica directamente con el motor Tesseract.[Aquí](https://ironsoftware.com/csharp/ocr/how-to/iron-tesseract/)es una lista completa deTesseractVariables` que permite a los desarrolladores personalizar aún más el comportamiento del Tesseract Engine al realizar OCR. Haga clic aquí para ver la Guía de Cómo Hacerlo, incluidos ejemplos, código de muestra y archivos.