Friday, January 4, 2013

Riconoscimento testi (OCR) in Fedora

Una delle esigenze che si hanno spesso nell'utilizzo di un computer, riguarda il riconoscimento automatico dei testi a partire dalle immagini digitali (OCR).

Per Linux esistono diversi strumenti che permettono l'OCR, alcuni di essi anche molto potenti.

La combinazione "engine-frontend" che per l'esperienza che ho avuto funziona meglio su Fedora, è questa:

L'engine: Tesseract
Installazione: yum install tesseract tesseract-langpack-ita

Tesseract è un software inizialmente proprietario e sviluppato anni fa dall'HP, ora è distribuito con Licenza Apache ed è sponsorizzato da Google. E' un engine molto potente e versatile, permette il riconoscimento dei testi con una miriade di lingue, tra cui anche l'Italiano.
Limitazioni: così com'è, può essere utilizzato solo da riga di comando e permette solo la lettura di immagini Tiff, difetto risolvibile con la gui giusta.
L'altra limitazione è il mancato riconoscimento del layout delle pagine.

Il front-end: gImageReader
Installazione: scegliere la versione più recente e scaricare l'RPM da qui (va bene anche quello per F15).

gImageReader è una semplice interfaccia grafica per Tesseract la quale, tra l'altro, permette di utilizzare anche immagini che non siano in formato Tiff.
Il programma è minimale, ma permette di fare il riconoscimento dei testi senza troppe complicazioni.
L'immagine sorgente può essere manipolata direttamente dal programma per migliorarne il riconoscimento (tramite contrasto, luminosità...), l'output infine può essere salvato su un file di testo.