Requisito previo: Pytesseract , OpenCV
En este artículo, vamos a reconocer el carácter de las imágenes y obtener datos de texto de una imagen. Hagamos una introducción rápida al módulo requerido.
- OpenCV: Es un módulo de Python en el que podemos hacer procesamiento de imágenes, captura de video y algunas herramientas de análisis como detección de rostros o detección de objetos. Tiene interfaces C++, Python, Java y MATLAB y es compatible con Windows, Linux, Android y Mac OS.
- Pytesseract: Python-tesseract es una herramienta de reconocimiento óptico de caracteres (OCR) para Python. Es decir, reconocerá y “leerá” el texto incrustado en las imágenes. Python-tesseract es un contenedor para el motor Tesseract-OCR de Google. También es útil como script de invocación independiente para tesseract, ya que puede leer todos los tipos de imágenes compatibles con las bibliotecas de imágenes de Pillow y Leptonica, incluidos jpeg, png, gif, BMP, tiff y otros. Además, si se usa como script, Python-tesseract imprimirá el texto reconocido en lugar de escribirlo en un archivo.
Acercarse:
- Importar módulo requerido
- Establecer la ruta de pytesseract.
- Lee la imagen con cv2.imread()
- Convierte la imagen en formato RGB.
- Extrae texto de la imagen usando pytesseract.image_to_string(img).
Vamos a usar esta imagen para una demostración:
A continuación se muestra la implementación completa:
Python3
# importing the libraries import cv2 import pytesseract # seting the path of pytesseract exe # you have to write the location of # on which your tesseract was installed pytesseract.pytesseract.tesseract_cmd = 'C:\\Program Files\\Tesseract-OCR\\tesseract.exe' # Now we will read the image in our program # you have to put your image path in place of photo.jpg img = cv2.imread('photo.jpg') # Our image will read as BGR format, # So we will convert in RGB format because # tesseract can only read in RGB format img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) # For getting the text and number from image print(pytesseract.image_to_string(img)) # For displaying the original image cv2.imshow("result", img) cv2.waitKey(0)
Producción:
GeeksforGeeks