Esta noticia ha sido probado por expertos así garantizamos la exactitud de nuestra esta crónica.
Solución:
Desde mi experiencia, Tesserocr es mucho más rápido que Pytesseract.
Tesserocr es un contenedor de python en torno a la API Tesseract C++. Mientras que pytesseract es un contenedor de la CLI tesseract-ocr.
Por lo tanto, con Tesserocr puede cargar el modelo al principio o su programa y ejecutar el modelo por separado (por ejemplo, en bucles para procesar videos). Con pytesseract, cada vez que llama image_to_string
función, carga el modelo y procesa la imagen, por lo que es más lento para el procesamiento de video.
Para instalar tesserocr solo tecleé en la terminal pip install tesserocr
.
Para usar tesserocr
import tesserocr
from PIL import Image
api = tesserocr.PyTessBaseAPI()
pil_image = Image.open('sample.jpg')
api.SetImage(pil_image)
text = api.GetUTF8Text()
Para instalar pytesseract: pip install pytesseract
.
Para ejecutarlo:
import pytesseract
import cv2
image = cv2.imread('sample.jpg')
text = pytesseract.image_to_string(image)
pytesseract
es solo un enlace para tesseract-ocr
para Python. Entonces, si quieres usar tesseract-ocr
en código python sin usar subprocess
o os
módulo para ejecutar la línea de comando tesseract-ocr
comandos, entonces usas pytesseract
. Pero, para usarlo, tienes que tener un tesseract-ocr
instalado.
Puedes pensarlo de esta manera. Tu necesitas un tesseract-ocr
instalado porque es el programa que realmente se ejecuta y hace el OCR. Pero, si desea ejecutarlo desde el código python como una función, instale pytesseract
paquete que le permite hacer eso. Así que cuando corres pytesseract.image_to_string(Image.open('test-european.jpg'), lang='fra')
llama a la tesseract-ocr
con los argumentos proporcionados. Los resultados son los mismos que correr tesseract test-european.jpg -l fra
. Entonces, tiene la capacidad de llamar eso desde el código, pero al final, todavía tiene que ejecutar el tesseract-ocr
para hacer el OCR real.
Pytesseract es un “envoltorio” de python para el binario tesseract. Ofrece solo las siguientes funciones, junto con la especificación de banderas (página man):
get_tesseract_version
Devuelve la versión de Tesseract instalada en el sistema.image_to_string
Devuelve el resultado de una ejecución de Tesseract OCR en la imagen para stringimage_to_boxes
Devuelve el resultado que contiene caracteres reconocidos y sus límites de cuadroimage_to_data
Devuelve un resultado que contiene límites de cuadro, confianzas y otra información. Requiere Tesseract 3.05+. Para obtener más información, consulte la documentación de Tesseract TSVimage_to_osd
Devuelve un resultado que contiene información sobre la orientación y la detección de secuencias de comandos.
Consulte la descripción del proyecto para obtener más información.
Por otro lado, tesserocr interactúa directamente con la API C++ de Tesseract (ejemplo API), que es mucho más flexible/compleja y ofrece funciones avanzadas.
Reseñas y puntuaciones
Tienes la opción de confirmar nuestra faena ejecutando un comentario o dejando una puntuación te lo agradecemos.