Como crear un programa de OCR con Software Libre

Como crear una herramienta OCR que te permita procesar imágenes en PDFs y convertirlos a texto. Convertir documentos en PDF escaneados como Imagen a formato OCR, con el texto embebido en el documento al estilo de Acrobat Reader Pro.

Si necesitas convertir tus documentos PDF a OCR o extraer los textos de un documento escaneado como Imagen, puedes crear tu propia herramienta OCR, utilizando librerías Open Source.

Existen varias herramientas que te pueden servir, tenemos las librerías: GOCR, OCRAD, Tesseract ... en este caso elegiremos Tesseract.

Lo primero que debemos hacer es instalar lmagemagick que nos ayuda a convertir el PDF en imágenes de diversos formatos. 
sudo apt-get install imagemagick
 
Las imágenes para Tesseract deben estar en formato TIFF de 8 bits para mejores resultados.
convert -density 300 documentoescaneado.pdf -depth 8 documentoescaneado.tif
 
si no tienes instalado "convert", hazlo con apt-get install convert
 
Previamente a Tesseract:
 
Antes de comenzar con la instalación se deben instalar las siguientes librerías para el manejo de imágenes.
 

sudo apt-get install libpng12-dev

sudo apt-get install libjpeg62-dev

sudo apt-get install libtiff4-dev

Las siguientes librerías pueden estar ya instaladas en tu sistema, para asegurarte de ello, puedes volver a instalarlas.
 

sudo apt-get install gcc
sudo apt-get install g++
sudo apt-get install automake

 
Debes descargar Leptonica que te permitirá extraer el texto en HTML de un PDF, colocando las coordenadas de las palabras:
http://www.leptonica.org/
Puedes descargarlo de: http://www.leptonica.org/source/leptonlib-1.67.tar.gz
(Puedes usar la versión más reciente)
 
 

wget http://www.leptonica.org/source/leptonlib-1.67.tar.gz
tar -zxvf leptonlib-1.67.tar.gz
cd leptonlib-1.67
./configure
make
sudo checkinstall
sudo ldconfig

Luego de esto ya puedes instalar Tesseract, que te permitirá escanear el PDF y extraer las palabras (OCR):
 
cd ..
 
Instalar Tesseract
 

wget http://tesseract-ocr.googlecode.com/files/tesseract-3.00.tar.gz
tar -zxvf tesseract-3.00.tar.gz
cd tesseract-3.00
./runautoconf
./configure
make
sudo checkinstall 
sudo ldconfig

 
Cuando lo tengas instalado, puedes descargarte los diccionarios en varios idiomas, si utilizarás sólo para Español, puedes hacerlo con:

cd /usr/local/share/tessdata
sudo wget http://tesseract-ocr.googlecode.com/files/spa.traineddata.gz
sudo gunzip spa.traineddata.gz

Ten en cuenta que cuanto más diccionarios descargues, será más lento el proceso de reconocimiento de texto.
 
 
Es momento de instalar hOCR, que colocará el HTML sobre la imagen original, teniendo como resultado un PDF con el texto embebido, tal como lo hace Acrobat Reader. La librería hocr2pdf forma parte del paquete exactimage:

sudo apt-get install exactimage

 
Necesitas modificar el fichero de configuración:

cd /usr/local/share/tessdata/configs
sudo vi hocr

 
Colocar lo siguiente: "tessedit_create_hocr 1"
Grabar ":x"
 
 
Finalmente, para usar estas herramientas, puedes hacerlo entrando a la carpeta de documentos escaneados y ejecutando los comandos en este orden:
 

cd /home/CarpetaDocumentos
Convert -density 300 scanpage1.pdf -depth 8 scanpage1.tif
Tesseract scanpage1.tif outputtext
Tesseract scanpage1.tif outputtext -l spa hocr

Categorias: JAVA, PHP
Solicitamos su permiso para obtener datos estadísticos de su navegación en esta web, en cumplimiento del Real Decreto-ley 13/2012. Si continúa navegando consideramos que acepta el uso de cookies.
ACEPTO | Más información