¿Cuál es la mejor y más simple solución de OCR?

78

Me gustaría escanear una buena cantidad de papeles que tengo por ahí, con la menor molestia posible. Me gustaría convertirlos a imágenes usando Simple Scan, luego convertirlos a texto usando OCR. ¿Existe una buena aplicación de OCR con una GUI que me dará buenos resultados con solo presionar un botón?

Bou
fuente
Realmente necesitamos mucho trabajo en este hilo. Tantas cosas viejas / depreciadas / ... No hay pruebas de una línea. Principalmente resultados / listas copiadas aquí. Sin garantía de calidad.
Léo Léopold Hertz 준영
En 2018, la solución de OCR más simple es utilizar una API de OCR en línea : Google Vision OCR, Azure OCR o la API gratuita OCR.space OCR proporcionan resultados de OCR de alta calidad, por supuesto solo si su aplicación / caso de uso permite una solución en la nube .
Nic Endo

Respuestas:

70
  • GOCR from es un programa de reconocimiento óptico de caracteres (OCR) que convierte imágenes escaneadas de texto en archivos de texto.

  • CLARA es otra buena opción gráfica.

  • OCRAD from es un OCR que se puede usar como una aplicación de consola independiente o como un back-end para otros programas.

  • KOOKA from es una aplicación de KDE pero funciona bien, además tiene que instalar programas de OCR reales como GOCR y OCRAD. Después de instalar Kooka y los programas de OCR, debe apuntar a Kooka a la ubicación de instalación de OCR para que pueda Convierte el JPEG a texto.

  • OCRFeeder de es un sistema de análisis de diseño de documentos y reconocimiento óptico de caracteres.

  • Tesseract partir es la utilidad de línea de comandos y es muy sencillo de use.You puede instalar el paquete de idiomas tesseract-ocr-spa desde aquí .

Echa un vistazo a esta página .

Nota:
Para ejecutar tesseract goto terminal y escriba lo siguiente

tesseract imagefile.tif outputfile.txt

Tesseract solo puede leer un archivo TIFF; si tiene un archivo JPEG o PDF o lo que sea, tendrá que convertirlo. Además, la extensión del nombre de archivo debe ser .tif, no .tiff, de lo contrario, se eliminarán los errores de prueba.

karthick87
fuente
1
Si tu idioma hablado no es inglés? ¿hay extensiones para otro idioma?
Vassilis
3
@Vassilis: los sistemas OCR son independientes del lenguaje porque reconocen caracteres, no palabras. Sin embargo, si su alfabeto tiene caracteres no latinos1 (como cirílico), entonces puede perderlos.
OpenNingia
2
@OpenNingia: el idioma puede ser importante, incluso con sistemas de escritura que solo usan letras latinas. Ayuda a la OCR a discriminar entre letras ambiguas.
Frédéric Grosshans
13
Tales preguntas / respuestas realmente estropean askubuntu. La persona preguntó "¿Cuál es la mejor y más simple solución de OCR?", No "cuáles son todas las aplicaciones de OCR disponibles para Linux". ¡Esta solución no debería haber sido aceptada! Realmente confuso y no útil.
Alin Andrei
1
Ubuntu actual tesseract(3.04.00 en Ubuntu 15.10) no tiene problemas con PNGlos archivos de entrada. acepta JPGarchivos, pero da un resultado peor para ellos, como cabría esperar de los artefactos adicionales de compresión.
Volker Siegel
10

Hay algunas herramientas populares de línea de comandos de OCR que puede usar (no estoy seguro si tienen GUI):

  • Tesseract ( Léame , preguntas frecuentes ) (Python)

    También disponible para: Tesseract .NET , Tesseract iOS

    Un motor de OCR que se desarrolló en HP Labs entre 1985 y 1995 ... y ahora en Google. Tesseract es probablemente el motor de OCR de código abierto más preciso disponible.

    Uso:

    tesseract [inputFile] [outputFile] [-l optionalLanguageFile] [PathTohOCRConfigFile]
    
  • GOCR

    Reconocimiento de caracteres de código abierto. Convierte imágenes escaneadas de texto a archivos de texto. GOCR puede usarse con diferentes front-end, lo que hace que sea muy fácil portar a diferentes sistemas operativos y arquitecturas. Puede abrir muchos formatos de imagen diferentes, y su calidad ha mejorado día a día.

  • OCRopus ™ ( FAQ ) (escrito en Python, NumPy y SciPy)

    El sistema OCR se centra en el uso del aprendizaje automático a gran escala para abordar problemas en el análisis de documentos, con análisis de diseño conectable, reconocimiento de caracteres conectables, modelado estadístico de lenguaje natural y capacidades multilingües.

    El motor OCRopus se basa en dos proyectos de investigación: un reconocedor de escritura a mano de alto rendimiento desarrollado a mediados de los 90 e implementado por la oficina del censo de EE. UU., Y nuevos métodos de análisis de diseño de alto rendimiento.

    OCRopus es un desarrollo patrocinado por Google e inicialmente está destinado a esfuerzos de conversión de documentos de alto volumen y alto rendimiento. Esperamos que también sea un excelente sistema de OCR para muchas otras aplicaciones.

  • Tessnet2 (código abierto, OCR, Tesseract, .NET, DOTNET, C #, VB.NET, C ++ / CLI)

    Tesseract es un motor de OCR de código abierto C ++. Tessnet2 es un ensamblado .NET que expone métodos muy simples para hacer OCR. Tessnet2 está bajo la licencia Apache 2 (como tesseract), lo que significa que puede usarlo como desee, incluido en productos comerciales.

Pocos otros: ABBYY CLI OCR para Linux , Asprise OCR

Para obtener una lista más completa, consulte: Lista de software de reconocimiento óptico de caracteres en Wikipedia

Vea también: wanghaisheng/awesome-ocr- Una lista seleccionada de recursos prometedores de OCR en GitHub.

kenorb
fuente
9

linux-intelligent-ocr-solution

descargo de responsabilidad: estoy estrechamente relacionado con el desarrollo de esta solución de código abierto

Lios puede convertir la impresión a texto usando un escáner o una cámara.

También puede producir texto a partir de imágenes escaneadas de otras fuentes, como Pdf, Imagen o Carpeta que contiene imágenes.

El programa tiene accesibilidad total para personas con discapacidad visual.

Como estoy estrechamente conectado, me encantaría recibir comentarios.

Nalin.x.Linux
fuente
¿Dónde está la documentación sobre el uso? lios no es tan intuitivo como esperaba.
un codificador
El proyecto se ha mudado aquí .
Suzana
¿Es posible ejecutarlo a través de la línea de comandos solo en modo sin cabeza en el servidor?
Punto muerto
8

Gscan2PDF

OCR en PDF de varias páginas o documentos escaneados

Esta es probablemente la forma más fácil. Gscan2pdf es una herramienta gráfica que le permite no solo escanear archivos, sino también importar archivos y realizar OCR en ellos. Instale gscan2pdf desde aquí Instalar gscan2pdf , desde el Centro de software de Ubuntu o ejecute este comando en una terminal:

sudo apt-get install gscan2pdf
  • Ejecute gscan2pdf
  • Importar el pdf (Ctrl + O)
  • Opcional: Herramientas> Limpiar
  • Elija Herramientas> Guardar OCR (Ctrl + S)

Gscan2PDF puede usar motores OCR personalizables, el valor predeterminado es tesseract-ocr

Puede considerar seleccionar el idioma apropiado. En ese caso, deberá instalar el tesseract-ocr-LANGpaquete, donde se LANGencuentra el código de idioma ISO 639-2 de tres letras. En este momento tienes 108 idiomas en 16.04 repo.

mxdsp
fuente
No puedo hacer nada con este software. No hay detección suficiente en absoluto. Sería genial obtener muestras de prueba sobre aplicaciones antes de sus recomendaciones.
Léo Léopold Hertz 준영
gscan2pdf para 16.04 al menos no tiene acceso directo a la opción Ctrl + i. Abrir un archivo pdf identifica correctamente las "páginas para extraer", pero seleccionar "ok" no hace nada.
user75505
3

Acabo de tener éxito (bajo 16.04) con pdfocr.rb . Esto aparece en la wiki de Ubuntu

Aquí hay un ppa pero el repositorio para 16.04 no está actualizado. El script de rubí anterior de github, aunque todavía funciona con 16.04.

Puedes descargarlo desde Github. Necesitará los siguientes paquetes instalados:

ruby tesseract-ocr pdftk exactimage

luego hizo pdfocr.rb ejecutable y ejecutó:

./pdfocf.rb -i source.pdf -o output.pdf

Opcionalmente puede usar el -l LANGparámetro. En ese caso, deberá instalar el tesseract-ocr-LANGpaquete, donde se LANGencuentra el código de idioma ISO 639-2 de tres letras. En este momento tienes 108 idiomas en 16.04 repo.

user75505
fuente
3

La mejor y más fácil forma de usarlo pypdfocres que no cambia el pdf. pypdfocr es un enlace del módulo de Python aquí.

pypdfocr your_document.pdf

Al final, tendrá otro de your_document_ocr.pdfla forma que lo desee con texto de búsqueda. La aplicación no cambia la calidad de la imagen. Aumenta un poco el tamaño del archivo al agregar el texto superpuesto.

Creo que el comando es bastante fácil ya que no necesita ninguna GUI. Quizás instalar pypdfocr sea un poco más detallado:

sudo apt install tesseract-ocr 
pip install pypdfocr 

Actualización 3 de noviembre de 2018:

pypdfocrya no es compatible desde 2016 y noté algunos problemas debido a que no se mentained. ocrmypdf(el módulo hace un trabajo similar y se puede usar así:

ocrmypdf in.pdf out.pdf

Instalar:

pip install ocrmypdf

o

apt install ocrmypdf
Eduard Florinescu
fuente
Esta es una herramienta muy interesante, aunque creo que OP quería una herramienta GUI para producir un archivo de texto, no un sándwich PDF. Sería bueno si pudiera incluir el sitio web del proyecto.
Andrea Lazzarotto
@AndreaLazzarotto Sí, lo vi, pero dado que el comando es así de simple, supongo que muchas personas pueden usar el terminal para eso. así que pensé incluir la solución aquí
Eduard Florinescu
1
Como coincidencia, hace poco descubrí "ocrmypdf". ¿Lo revisaste? Es muy bonito. :)
Andrea Lazzarotto
@AndreaLazzarotto parece una buena alternativa, es posible que desee publicar una respuesta;) Lo probaré para ver cómo funciona :)
Eduard Florinescu
@AndreaLazzarotto Parece que no es tan sencillo instalar ocrmypdf en ubuntu 16.04 github.com/jbarlow83/OCRmyPDF/issues/118
Eduard Florinescu
3

Solo porque funciona muy bien y definitivamente debería estar en la lista:


Ejemplo de gimageReader de una captura de pantalla:

ingrese la descripción de la imagen aquí

Está en los repositorios (respondido el 18.10, pero lo he estado usando durante años)

Jacob Vlijm
fuente
Cuando lancé por primera vez gimageReader, me dio un mensaje de "No hay idiomas disponibles" para tesseract. La respuesta " ¿Cómo instalo un nuevo paquete de idioma para tesseract " no aparece engcomo una opción ... pero lo resolví! :) Correr sudo apt install tesseract-ocr-engen la terminal hizo el truco. Sería bueno si esto se documentara en el archivo de ayuda de gimageReader o "README" en github ... o en alguna parte. Como aquí, tal vez.
Dɑvïd
1

gscan2pdf incluye 3 motores ocr diferentes. Puede escanear directamente al programa o importar su pdf al programa. He descubierto que el motor Tesseract funciona muy bien y es muy fácil de usar.

Vince West
fuente