Reconocimiento óptico de caracteres (OCR) con pytesseract

en español
python
ocr
Autor/a

Riva Quiroga

Fecha de publicación

20 de agosto de 2021

Este es un ejemplo de cómo hacer reconocimiento óptico de caracteres usando pytesseract. Como se infiere de su nombre, esta librería nos permite utilizar tesseract desde Python. El objetivo es convertir un texto que está como imagen, como el que se muestra a continuación, en texto plano que podamos analizar utilizando herramientas computacionales.

En este caso, la imagen corresponde a la primera página del libro “Historia de la enseñanza en Chile” de Amanda Labarca, quien fuese la primera mujer en ser profesora titular de la Universidad de Chile.

A continuación se presenta el paso a paso para hacer este procesamiento:

1. Instalar tesseract

El primer paso es instalar tesseract a través del terminal/línea de comandos, indicando que nos interesa el modelo para español (spa)

sudo apt install tesseract-ocr-spa

Para chequear que todo quedó bien, podemos ejecutar el siguiente comando, que nos indicará las lenguas en que tesseract está disponible:

tesseract --list-langs

Si no has utilizado tesseract antes, deberías ver algo así:

List of available languages (3):
spa
eng
osd

2. Instalar pytesseract y pillow

Ahora, instalaremos pytesseract, la librería que nos permitirá utilizar tesseract desde python. También instalaremos pillow, que en este caso nos servirá para importar la imagen que procesaremos.

pip install pytesseract
pip install pillow

3. Procesar la imagen

Ahora que tenemos todo instalado, ya podemos procesar nuestra imagen, que se llama amanda-labarca.png:

import pytesseract
from PIL import Image

amandalabarca = pytesseract.image_to_string(Image.open("amanda-labarca.png"), lang = "spa")

Listo! Revisemos cómo quedó.

print(amandalabarca)

AL LECTOR

No sin timidez empecé a redactar las páginas de
este libro. Aunque a la enseñanza chilena he dedi-
cado los más activos años de mi existencia y durante
los últimos tres he tenido a mi cargo el seminario
de investigación de sus problemas en el Instituto
Pedagógico de la Universidad de Chile, no me juzgo
capacitada para emprender la obra de historiarla.
Fué la necesidad la que me impulsó a hacerlo. Re-
queríamos mis alumnos y yo una síntesis sistemática
y completa de los esfuerzos chilenos en esta rama
de la cultura, para darnos cuenta del por qué de algu-
nos problemas actuales. Y me di a la tarea de pre-
pararla.

Seguramente, este ensayo mío va a ; adoleter de
vacíos y de involuntarias omisiones. Tan prolijos co-
mo hemos sido los chilenos para conservar los docu-
mentos de nuestro desarrollo civil y militar, tan
exactos para referirlos en minuciosas crónicas, en
materia de educación, incluso del siglo XIX y del
*presente, no existen recopilaciones completas. El
Ministerio de Instrucción Pública ha dejado de
publicar sus Memorias. Las otras reparticiones eje-
cutivas que mantienen escuelas especiales, principal-
mente el antiguo Ministerio de Industria y Obras
Públicas, el de Guerra y Marina (hoy Defensa), el
de Agricultura, el de Justicia, etc., no han publicado
en series permanentes los detalles de su labor didác-
tica. Marca una excepción la Universidad de Chile,

Próximos pasos

Obviamente, el resultado obtenido no está listo para poder ser utilizado. Al menos tendríamos que resolver el problema de los saltos de línea, sobre todo en los casos en que las palabras quedaron cortadas con un guión. Dependiendo del nivel de precisión que requiramos en nuestro análisis, también tendríamos que revisar los casos en que el procesamiento no fue perfecto, como al inicio del segundo párrafo, en que “adolecer” quedó como “adoleter”.