Extraer texto de la imagen

La extracción de texto de una imagen se puede hacer con el procesamiento de imágenes. En términos científicos esto se llama Reconocimiento óptico de caracteres (OCR).

Un motor OCR popular se llama tesseract. Tesseract es un motor de reconocimiento óptico de caracteres para varios sistemas operativos.

OCR con Tesseract

Puede hacer OCR en Python usando el binario tesseract. El primer paso es instalar tesseract en su sistema. Luego puede ejecutar el código a continuación.

Comienza el proceso de teseracto con la imagen de entrada como argumento. La salida del programa es devuelta por la función. El programa simplemente envía el contenido a la pantalla (imprimir).

import os
import tempfile
import subprocess

def ocr(path):
    temp = tempfile.NamedTemporaryFile(delete=False)

    process = subprocess.Popen(['tesseract', path, temp.name], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
    process.communicate()

    with open(temp.name + '.txt', 'r') as handle:
        contents = handle.read()

    os.remove(temp.name + '.txt')
    os.remove(temp.name)

    return contents

str = ocr('image.png')
print(str)

Puede usar cualquier imagen para probar el programa, pero debe ser una imagen muy clara. No debe tener rotación, desenfoque o fondo. Se requiere blanco y negro liso. Si su imagen no es clara, debe realizar un procesamiento previo de la imagen antes de ejecutar tesseract.

Ejecute el programa para ver el texto. Todo se muestra en la terminal.

En la imagen se encuentra el famoso texto “Lorem ipsum”.

Además de llamar directamente al motor OCR, puede usar uno de estos módulos:

  • pytesseract
  • piocr
  • tesserwrap
  • pytesser

Todos usan el mismo motor OCR debajo: tesseract.

No dudes en revisar estas entradas sobre Machine Learning:

En un puesto de científico de datos, se espera que el candidato tenga un conocimiento práctico del software utilizado para ...
El modelo de bolsa de palabras python es un modelo utilizado en el procesamiento del lenguaje natural (NLP) y la ...
¿No estás cansado de pasar páginas y quedarte dormido? Los libros de texto y otros materiales de estudio te proporcionarán ...
Trabajar con Big Data es muy costoso, además de que muchas empresas aún no cuentan con la infraestructura adecuada para ...
Los datos de entrenamiento y prueba son comunes para los algoritmos de aprendizaje supervisado. Dado un conjunto de datos, se ...
Una red profunda utiliza una serie de capas de unidades de procesamiento que extraen y transforman recursos. Pongamos un ejemplo ...

¿ Te ayudo esta publicación Extraer texto de la imagen?
⬇️ Te agradecería si compartes esta publicación.⬇️

Extraer texto de una imagen con python

Librería Descripción Uso
Tesseract OCR Una de las librerías más populares para el reconocimiento óptico de caracteres (OCR) en Python. Utilizando la función «image_to_string» de la librería pytesseract para extraer texto de una imagen.
OpenCV Librería de visión por computadora que se puede utilizar para preprocesar imágenes antes de extraer texto. Aplicando técnicas de procesamiento de imágenes como binarización, suavizado y segmentación para mejorar la calidad de la imagen antes de utilizar Tesseract OCR.
Pytesseract Una interfaz de Python para la librería Tesseract OCR, que facilita la integración de Tesseract en aplicaciones Python. Instalando la librería pytesseract y configurando la ruta al ejecutable de Tesseract para poder utilizarlo en Python.

Extraer texto de una imagen python

Librería Descripción Ejemplo de código
Pytesseract Permite reconocer texto de imágenes utilizando Tesseract OCR «`python

import pytesseract

from PIL import Image

img = Image.open(‘imagen.jpg’)

text = pytesseract.image_to_string(img)

print(text)

«`

OpenCV Proporciona herramientas para procesamiento de imágenes, incluido OCR «`python

import cv2

import pytesseract

img = cv2.imread(‘imagen.jpg’)

gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

text = pytesseract.image_to_string(gray)

print(text)

«`

4 comentarios en «Extraer texto de la imagen»

  1. ¡Interesante artículo! ¿Alguien ha probado alguna vez extraer texto de imágenes con Python?

    • ¡Sí, he probado extraer texto de imágenes con Python y funciona de maravilla! Es una herramienta muy útil para automatizar tareas. Te recomiendo probarlo, ¡te sorprenderá lo fácil que es! ¡Buena suerte!

  2. ¡El OCR con Tesseract es una maravilla! ¿Pero Python o no Python? Opiniones, por favor.

    • ¡Sin duda, Python es la mejor opción para utilizar Tesseract! Su facilidad de uso y versatilidad lo convierten en la elección ideal. ¡No lo dudes y aprovecha todas las ventajas que Python ofrece para trabajar con OCR y Tesseract!

Los comentarios están cerrados.