Instale Tesseract OCR en Linux

Instale Tesseract OCR en Linux
Este tutorial explica cómo instalar Tesseract en Linux utilizando tanto el Administrador de paquetes APT de Debian como los repositorios GIT para otras distribuciones de Linux.

Tesseract es gratuita y probablemente la mejor solución de OCR en el mercado. Desde 2006 ha sido patrocinado por Google; Anteriormente, fue desarrollado por Hewlett Packard en C y C ++ entre 1985 y 1998. El sistema puede identificar incluso la escritura a mano; Puede aprender, aumentar su precisión, y se encuentra entre los más desarrollados y completos del mercado.

Si se entrenan adecuadamente, puede vencer a competidores comerciales como Abby; Si está buscando una solución seria para OCR, Tesseract es la más precisa, pero no espere soluciones masivas: utiliza un núcleo por proceso, lo que significa que un procesador de 8 núcleo (hipercreto aceptado) podrá procesar 8 o 16 imágenes simultáneamente.

Tesseract es una gran solución, pero antes de pensarlo, debes saber que las versiones de The Last Tesseract trajeron grandes mejoras, algunas de las cuales significan trabajo duro. Si bien el entrenamiento podría durar horas o días, la capacitación de versiones recientes de Tesseract puede ser de días, semanas o incluso meses, especialmente si está buscando una solución de OCR multilingüe.

Instalación de Tesseract en Debian y Ubuntu:

Para instalar Tesseract en la distribución de Debian o Ubuntu Linux, use APT como se muestra en la captura de pantalla a continuación.

sudo apt install tesseract -oCr -y

Esto instalará Tesseract debajo /usr/share/tesseract-oCR/4.00/tessdata.

Nota: Para otras distribuciones de Linux, salte para instalar Tesseract de fuentes.

Por defecto, Tesseract instalará el paquete de idioma inglés. Para instalar idiomas adicionales, la sintaxis es la siguiente. En el ejemplo a continuación, instalaré el paquete de idioma hebreo.

sudo apto install tesseract-oCr-heb

Para instalar todos los idiomas disponibles, ejecute:

sudo apt install tesseract-oCom -y -y

Para que Tesseract funcione correctamente, necesitaremos usar el comando "Convertir". Este comando es útil para convertir entre formatos de imagen y cambiar el tamaño de una imagen, desenfoque, recorte, desprecio, dither, dibujar, voltear, unirse, volver a muestrear y mucho más. Esta herramienta es proporcionada por ImageMagick:

sudo apto install imageMagick

Ahora probemos Tesseract, busque una imagen que contenga texto y ejecute:

Tesseract

Tesseract extraerá el texto de la imagen.

Cuando trabajé con Tesseract, todo lo que necesitábamos era para contar palabras documentos. Como con cualquier otro programa, puede y debe entrenarlo para comprender la escritura a mano.

En editores de texto avanzados, podemos definir algunos símbolos que se pueden contar o no, si cuentan o no números, etc., Lo mismo con posibilidad está disponible en Tesseract.

Optimización de Tesseract:

  • Optimización de tamaño: Según las fuentes oficiales, el tamaño óptimo de píxeles para una imagen que Tesseract procesa con éxito es 300 ppi es. Tendremos que procesar cualquier imagen utilizando el parámetro -r para hacer cumplir este DPI. Aumentar el DPI también aumentará el tiempo de procesamiento.
  • Rotación de la página: Si, cuando se escanea, la página no se coloca correctamente y permanece 180 ° o 45 °, la precisión de Tesseract disminuirá, por lo que puede usar un script de Python para detectar y solucionar problemas de rotación automáticamente.
  • Eliminación de fronteras: Según el hombre oficial de Tesseract, las fronteras pueden ser elegidas erróneamente como personajes, especialmente Borders Dark y donde hay una variedad de gradación. Eliminar bordes puede ser un buen paso para lograr la máxima precisión con Tesseract.
  • Eliminar el ruido: Según las fuentes de Tesseract, el ruido "es una variación aleatoria del brillo o el color en una imagen". Podemos eliminar esta variación en el paso de binarización, lo que significa polarizar sus colores.

Introducción al proceso de capacitación de Tesseract:

Anteriormente, este artículo cubrió el proceso de capacitación de Tesseract, que evolucionó a un proceso más manual que merece un artículo dedicado. Por lo tanto, esta sección solo cubre información teórica sobre el proceso de capacitación e instrucciones para instalar herramientas de capacitación de Tesseract y lanzarlas.

Según el wiki oficial de Tesseract, tenemos 3 opciones actuales para capacitar a nuestro sistema OCR:

  • "Afinar. Comenzando con un lenguaje capacitado existente, capacite en sus datos adicionales específicos. Esto puede funcionar para problemas cercanos a los datos de capacitación existentes pero diferentes de alguna manera sutil, como una fuente particularmente inusual. Puede trabajar incluso con una pequeña cantidad de datos de capacitación.
  • Corte la capa superior (o un número arbitrario de capas) de la red y vuelva a entrenar una nueva capa superior utilizando los nuevos datos. Si el ajuste fino no funciona, esta es la siguiente mejor opción. Si comienza con el script de aspecto más similar, cortar la capa superior podría funcionar para capacitar un idioma o guión completamente nuevo.
  • Vuelva a entrenar desde cero. A menos que tenga un conjunto de capacitación muy representativo y suficientemente grande para su problema, esta es una tarea desalentadora. De lo contrario, es probable que termine con una red sobrecogida que funciona realmente bien en los datos de capacitación pero no en los datos reales.

Antes de continuar con las instrucciones de capacitación de Tesseract, necesitaremos instalar bibliotecas adicionales:

sudo apto instalación libicu-dev libicu-dev libcairo2-devel

En las distribuciones de Linux con sede en Debian, instale el paquete de desarrollo de Tesseract, incluidas las herramientas de capacitación de Tesseract que usan APT como se muestra a continuación. Si no está utilizando una distribución de Linux con sede en Debian, lea las instrucciones para instalar herramientas de capacitación Tesseract de fuentes.

sudo apto install libtesseract -dev -y

Después de la instalación, podrá ver las herramientas de capacitación en /usr/share/tesseract-oCR/ Como se muestra abajo.

ls/usr/share/tesseract-oCR

Antes de comenzar a entrenar un idioma, debe proporcionar a Tesseract el contenido del cual aprender.

Para esto, debe crear el directorio de LangData y el subdirectorio ENG dentro del directorio principal de instalación de Tesseract. Luego cree el archivo de texto de entrenamiento como se muestra a continuación.

sudo mkdir/usr/share/tesseract-oc/langdata/
sudo mkdir/usr/share/tesseract-oc/langdata/eng/
sudo nano/usr/share/tesseract-oc/langdata/engg/Eng/Eng/.Training_Text

Nota: Recuerde agregar contenido al Inglaterra.Training_Text archivo.

Una vez que se agregó el archivo de texto de capacitación, la sintaxis para comenzar a capacitar un idioma es el siguiente. El siguiente comando es entrenar el idioma inglés definido como "Inglaterra".

./Tesstrain.SH--Lang Eng--langdata_dir/usr/share/tesseract-oCR/langData--tessdata_dir/usr/share/tesseract-oCR/tessdata

Este proceso puede llevar mucho tiempo. Por supuesto, esto también depende de sus archivos de texto de capacitación. Esta es la introducción al proceso de capacitación de Tesseract. Publicaremos un nuevo artículo centrado solo en el proceso de capacitación.

Solución de problemas Fuentes faltantes:

En mi caso, recibí un error al intentar entrenar a Tesseract. Faltaba la fuente Arial Bold. Resolví esto ejecutando el comando a continuación.

sudo apt install ttf-mscorefonts-installer

Instale Tesseract de fuentes en Linux:

En diferentes distribuciones de Linux, puede obtener Tesseract usando git, como se muestra a continuación.

Git clon https: // github.com/tesseract-oc/tesseract.git

Una vez clonado, vaya al directorio Tesseract ejecutando usando CD.

CD Tesseract

Luego ejecuta el autógeno.mierda Script como se muestra a continuación.

sudo ./Autógeno.mierda

El comando anterior crea los archivos de instalación; Ahora ejecute el siguiente comando para iniciar el proceso de instalación.

sudo ./Configurar

Correr hacer para comenzar a compilar Tesseract.

sudo haz

Entonces corre hacer instalar, Como se muestra en la captura de pantalla a continuación.

sudo haz instalar

Ejecutar ldconfig Como se muestra abajo.

sudo ldconfig

Para compilar herramientas de capacitación, ejecute el siguiente comando.

sudo hacer entrenamiento

Entonces corre:

sudo hacer instalación de entrenamiento

Ahora puede seguir las instrucciones para comenzar con el proceso de capacitación.

Conclusión:

Como puede ver, instalar Tesseract en Linux es bastante fácil, especialmente en las distribuciones de Linux con sede en Debian. Cuando utilicé Tesseract, administramos miles de clientes potenciales que subían contenido escrito a mano, imágenes con texto, etc. Utilizamos 48 servidores principales, con DatabaseByDesign y luego con AWS; Nunca tuvimos un problema de recursos.

Teníamos un cargador que discriminó entre archivos de texto como Microsoft Office o abrió archivos e imágenes de oficina o documentos escaneados. El cargador determinó cualquiera que los scripts OCR o PHP procesarían un orden en el campo del reconocimiento de texto.

En mi experiencia, Tesseract es la mejor solución de OCR disponible en el mercado, y es de código abierto.

Gracias por leer este tutorial explicando cómo instalar y configurar Tesseract OCR en Linux. Sigue siguiéndonos para obtener consejos y tutoriales adicionales de Linux.