HERRAMIENTAS OCR

Cómo crear un OCR en Python

Actualizado 22 de noviembre, 2023
Compartir:

El mundo está inundado de ingentes cantidades de información textual. Desde documentos impresos a notas escritas a mano, existe una gran cantidad de contenido valioso que podría ser inmensamente útil si fuera un poco más accesible.

Aquí es donde el reconocimiento óptico de caracteres (OCR) entra en juego la tecnología. Imagínese un ordenador capaz de "leer" texto de imágenes igual que lo hace un ser humano, sólo que esto es visión por ordenador, que representa una sección de la informática en la que podemos entrenar a los ordenadores para que reconozcan e identifiquen distintos sujetos en una imagen.

En este tutorial, le guiaremos a través del proceso de creación de su propio sistema OCR utilizando Python, un lenguaje de programación conocido por su sencillez y versatilidad. Con la ayuda de bibliotecas como Tesseract, IronOCR y OpenCV, pronto podrá liberar el potencial de extraer, manipular y trabajar con texto a partir de imágenes de documentos.

Requisitos previos del motor OCR (reconocimiento óptico de caracteres)

Antes de sumergirnos en el meollo de la construcción de nuestro sistema OCR, hay algunas cosas que necesitarás:

  1. Python: Asegúrate de tener instalado Python en tu ordenador. Puede descargarlo en Sitio web oficial de Python.
  2. Instalar Tesseract OCR: Tesseract OCR es un motor OCR de código abierto desarrollado por Google. Es una potente herramienta que utilizaremos en nuestro proyecto. Puede descargar la biblioteca Tesseract desde GitHub y lea sobre el proceso de instalación de Tesseract OCR.
  3. Bibliotecas Python: Vamos a utilizar dos importantes bibliotecas de Python para este proyecto pytesseract y opencv biblioteca. Puede instalarlos utilizando los siguientes comandos en su línea de comandos o terminal:
    :InstallCmd  pip install pytesseract opencv-python

Cómo construir un OCR en Python: Figura 1

Pasos para construir el sistema OCR

Puedes construir fácilmente OCR usando código Python con la ayuda de Python OCR Libraries y un simple script Python.

Paso 1 Importar bibliotecas

Lo primero es lo primero: tendrás que importar las bibliotecas necesarias:

import cv2 
import pytesseract
PYTHON

Paso 2 Leer y procesar una imagen

Cargar la imagen usando OpenCV y preprocesarla para mejorar la precisión del OCR:

# Load the image using OpenCV 
image = cv2.imread('sample_image.png') 
# Convert the image to grayscale 
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) 
# Apply thresholding or other preprocessing techniques if needed
PYTHON

Paso 3: Utilizar Tesseract para el OCR

Ahora es el momento de utilizar el motor Tesseract OCR para realizar el reconocimiento óptico de caracteres en la imagen procesada:

# Use pytesseract to perform OCR on the grayscale image 
pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files (x86)\Tesseract-OCR\tesseract.exe'
text = pytesseract.image_to_string(gray_image) 
PYTHON

Paso 4: Mostrar resultados

Si desea visualizar la imagen original y el texto extraído, puede utilizar OpenCV para mostrarlos:

# Display the original image 
cv2.imshow('Original Image', image) 
cv2.waitKey(0) 
# Display the extracted text
    print("Extracted Text:", text) 
cv2.waitKey(0) 
cv2.destroyAllWindows()
PYTHON

Imagen original

Cómo construir un OCR en Python: Figura 2

Texto extraído

Cómo construir un OCR en Python: Figura 3

Como se puede ver el resultado es demasiado malo porque tenemos que entrenarlo (mientras entrenamos el aprendizaje automático) antes de utilizarlo para realizar un OCR con el fin de extraer imágenes de texto que contengan tablas.

IronOCR

En un mundo inundado de datos, la capacidad de convertir sin esfuerzo texto impreso o manuscrito en contenido legible por máquinas es una capacidad transformadora.

Entre en IronOCR - una tecnología de vanguardia que permite a los desarrolladores integrar un sólido reconocimiento óptico de caracteres (OCR) en sus aplicaciones con facilidad.

Ya se trate de extraer datos de documentos escaneados, automatizar la introducción de datos o mejorar la accesibilidad, IronOCR ofrece una solución integral que trasciende los límites del reconocimiento de texto tradicional.

En esta exploración, nos adentramos en el reino de IronOCR, descubriendo sus versátiles características y destacando su potencial para tender puentes entre los mundos físico y digital.

Instalación de IronOCR

Puede instalar IronOCR fácilmente utilizando la consola NuGet Package Manager, simplemente ejecutando el siguiente comando.

Install-Package IronOcr

IronOCR también puede descargarse en la dirección Sitio web oficial de NuGet.

Extracción de texto de una imagen con IronOCR

En esta sección, veremos cómo se puede extraer fácilmente texto de imágenes utilizando IronOCR. A continuación se muestra el código fuente que extrae el texto de la imagen.

using IronOcr;
using System;
var ocr = new IronTesseract();
using (var input = new OcrInput())
{
    input.AddImage("r3.png");
    OcrResult result = ocr.Read(input);
    string text = result.Text;
    Console.WriteLine(result.Text);
}
using IronOcr;
using System;
var ocr = new IronTesseract();
using (var input = new OcrInput())
{
    input.AddImage("r3.png");
    OcrResult result = ocr.Read(input);
    string text = result.Text;
    Console.WriteLine(result.Text);
}
Imports IronOcr
Imports System
Private ocr = New IronTesseract()
Using input = New OcrInput()
	input.AddImage("r3.png")
	Dim result As OcrResult = ocr.Read(input)
	Dim text As String = result.Text
	Console.WriteLine(result.Text)
End Using
VB   C#

Salida

Cómo construir un OCR en Python: Figura 4

Conclusión

En este tutorial, hemos explorado el proceso de construcción de un Reconocimiento Óptico de Caracteres (OCR) en Python, desvelando la capacidad de extraer texto de imágenes con notable facilidad.

Aprovechando bibliotecas como Tesseract y OpenCV, hemos recorrido pasos esenciales, desde la carga y el preprocesamiento de imágenes hasta la utilización del motor OCR de Tesseract para la extracción de texto.

También hemos mencionado posibles problemas, como las limitaciones de precisión, que soluciones avanzadas como IronOCR pretenden resolver.

Tanto si opta por el bricolaje como si adopta herramientas sofisticadas, el mundo del OCR le atrae con la promesa de transformar imágenes en texto procesable, agilizar la introducción de datos y ampliar la accesibilidad. Con estos nuevos conocimientos, estás preparado para embarcarte en un viaje que fusiona a la perfección los ámbitos visual y digital.

Para empezar con IronOCR visite enlace. Para ver el tutorial completo sobre cómo extraer texto de imágenes visite aquí.

Si quieres probar IronOCR gratis hoy, asegúrate de inscribirte en el programa ensayo ofrecido por IronOCR para explorar todos sus usos y potencial en un entorno comercial sin la marca de agua. Para seguir utilizándolo una vez transcurridos los 15 días, basta con adquirir un licencia.

< ANTERIOR
Cómo escanear texto escrito (Tutorial para principiantes)
SIGUIENTE >
Cómo escanear a texto editable en C#

¿Listo para empezar? Versión: 2024.7 recién publicada

Descarga gratuita de NuGet Descargas totales: 2,012,139 Ver licencias >
123