mercoledì 5 dicembre 2012

OCR in Linux con Tesseract

Ho iniziato ad usare dei software OCR nel lontano 1992 su un computer 486 DX/25 con un vetusto software Omniscan su Windows 3.1
Il tempo e' passato ed adesso sono disponibili dei software molto piu' perfomanti e gratuiti; per Linux ho provato ad utilizzare il software Tesseract che attualmente e' sponsorizzato da Google e si puo' scaricare da questo link

Esistono diversi pacchetti gia' compilati per tesseract ma visto che ci siamo sono partito dalla compilazione dei sorgenti

per prima cosa e' necessario eseguire
sudo apt-get install autoconf automake libtool
sudo apt-get install libpng12-dev
sudo apt-get install libjpeg62-dev
sudo apt-get install libtiff4-dev
sudo apt-get install zlib1g-dev


successivamente vanno compilate ed installate le librerie del progetto Leptonica tramite la classica sequenza configure/make/make install

terminata la fase preparatoria si scaricano i file dei sorgenti di Tesseract (i piu recenti sono qui) ed il file per il linguaggio di cui si desidera la conversione (italiano o inglese)

./configure
make
make install
ldconfig


terminata la compilazione si spacchetta il file del linguaggio in una directory (per esempio /home/luca/tessdata) ed al termine nella directory devono essere presenti file tipo ita.cube.bigram oppure ita.traindata

si indica quindi al programma dove sono ubicati i file della lingua mediante
export TESSDATA_PREFIX=/home/luca

e si procede da linea di comando ad effettuare una convesione OCR mediante il comando
tesseract immagine.tif testo_scansionato -l ita
(dove con -l ita si indica di utilizzare i file di conversione della lingua italiana, il risultato viene inserito nel file testo_scansionato.txt)

per testare il programma si possono scaricare le immagini di test da questo link

Attenzione: il programma accetta come input solo file TIF e solo con particolari caratteristiche prive di canale alpha. Nel caso di errato riconoscimento caratteri e' probabile che il file immagine non sia nel formato richiesto. Il formato richiesto e' di almeno 200 dpi con una profondita' di colore di 1 bit (quindi immagine a bianco e nero)

Come esempio di prova e' stata usata questa immagine


che ha come risultato della conversione il seguente testo
--------------------------------------------------------------------------------
 ~ Visual Linking allows users to join tables without having to understand
   the underlying table structure.

ReportSmith is available on MS-Windows and works with ASK INGRES/Net for
Windows to provide client/server reporting for ASK INGRES data.

Seeing is believing - - - so we've enclosed a Report Sampler that shows the types
of impressive reports available from ReportSmith.

We're so sure that ReportSmith will answer your reporting requirements that
we're offering a full development copy for $139~~over 50% off the regular price
-~so you can start generating new reports today!

Simply fill out the enclosed reply card, include your credit card number, mail it
back in the postage paid envelope, and we'll ship you a single-user copy of
ReportSmith today!

Once you've had a chance to use this product, I'm sure you'll see why it was
voted Byte Best of Comdex "Finalist" Award, and Windows Sources "Experts Pick"
Award.

For the reporting tool you've been waiting for... send in our reply card or call
1-800-446-4737 today! This special offer ends December 15th.


Regards,


George Kellar
Director Marketing
North America Operations
The ASK Group, Inc.


*This offer is limited to one user per site.
-------------------------------------------------------
facendo la prova invece con una pagina in italiano


e questa e' la ottima conversione in formato testo (gli errori ci sono ma sono abbastanza marginali e principalmente derivati da una cattiva interpretazione dell'apostrofo
------------------------------------------------------------------

ll punto di vista di ARPAT sulla prevenzione, enunciato formalmente fin dal i996, considera
elemento portante della propria politica gestionale la tutela della salute e sicurezza di tutti gli
operatori. Questo nel profondo convincimento che la salute sia un bene primario di cui ognuno ha
diritto, in ogni ambito di vita e di lavoro.

Le azioni intraprese da ARPAT per mettere in pratica questa scelta gestionale si sono concretizzate,
in primo luogo, nellîndividuazione del responsabile del servizio di prevenzione e protezione e,
successivamente, nellîndividuazione di tutte quelle ligure che rientrano nel “Sistema prevenzione”
dellfiAgenzia: fra queste, il medico competente ed autorizzato, che fin dal 1997 opera a fianco del
responsabile del servizio di prevenzione e protezione.

Le attività di quesfiultimo e del medico competente sono fra loro complementari e sinergiche,
Mentre il responsabile del servizio di prevenzione e protezione individua e propone le misure di
prevenzione primaria atte ad eliminare i rischi per la salute e la sicurezza degli operatori
dell’Agenzia (che sono legate ad interventi rivolti in particolare a strutture, impianti, attrezzature ed
organizzazione del lavoro), il medico competente rivolge la sua attenzione alla persona, mettendo in
pratica la sorveglianza sanitaria attraverso Feffettuazione di accertamenti sanitari preventivi e
periodici e l’espressione dei giudizi di idoneità allo svolgimento della mansione specifica di ogni
operatore delPAgenzia, Congiuntamente le due figure operano, invece, per Feffettuazione della
valutazione dei rischi e la formazione del personale delFAgenzia.

ll lavoro portato avanti fino ad oggi dal responsabile del servizio di prevenzione e protezione e dal
medico competente ha portato ARPAT ad accrescere progressivamente e sostanzialmente il suo
impegno nei riguardi delle norme di igiene e sicurezza. La situazione iniziale in cui si trovava
l'Agenzia al momento della sua costituzione, cosi come evidenziato nei primi documenti
predisposti e resi noti dal Direttore generale, vedeva oscillare, infatti, fra il 20 ed il 60% la
percentuale di adeguatezza alle norme tecniche (per le parti strutturali ed impiantistiche delle varie
sedi); d’altra parte anche il controllo sanitario dei lavoratori costituiva Feccezione alla regola,
risultando operativo, nel i996, solo in alcune realtà particolari.

Grazie all’impegno di tutta l’Agenzia, con il supporto tecnico del servizio di prevenzione e
protezione e del medico competente, la situazione iniziale e stata oggetto di un radicale mutamento.

Gli interventi tesi al miglioramento delle strutture e degli impianti, resisi necessari a seguito della
valutazione dei rischi, hanno portato alla realizzazione ed acquisizione di nuove sedi per il
Dipartimento provinciale di Siena, il Servizio sub-provinciale di Empoli, la Sede centrale
delFAgenzia a Firenze, Fimmobile “nuovo” per il dipartimento provinciale di Prato; di “locali
aggiuntivi” per i Dipartimenti provinciali di Livorno ed Arezzo ed a trasformazioni strutturali
(ampia quella del Dipartimento provinciale di Firenze), grazie anche agli interventi previsti dal
Progetto alimenti, per quanto riguarda la maggior parte delle altre sedi.

La politica degli investimenti adottata ha permesso, da un lato, di acquisire attrezzature specifiche
finalizzate alla sicurezza (annadi aspirati per sostanze pericolose, generatori di gas, cappe chimiche
e biologiche ecc.), dall’altro di procedere ad un rinnovamento delle dotazioni strumentali finalizzato
alla sicurezza prima di tutto, oltre che al miglioramento delle prestazioni.

Accanto a queste attività hanno preso vita progetti di formazione ed informazione interna del
personale ARPAT, attraverso incontri informativi gestiti dal responsabile del servizio di
prevenzione e protezione presso ogni sede e corsi di formazione su argomenti generali e specifici, ai
quali hanno preso parte finora circa 600 operatori (pronto soccorso, prevenzione incendi, rischio
cancerogeno e rischio biologico).

Contemporaneamente si e intrapreso un percorso di collaborazione con le altre Agenzie per la
protezione ambientale presenti sul territorio nazionale per accelerare il processo di miglioramento
grazie alla condivisione delle esperienze maturate fino ad ora, percorso che ha avuto recentemente
la sua manifestazione più concreta nel Seminario di Asti del giugno 2000 sullo stato di attuazione
del “sistema sicurezza nelle Agenzie”.




Nessun commento:

Posta un commento

Dockerizza Flask

Un esempio semplice per inserire in un container Docker una applicazione Flask Partiamo da una semplice applicazione che ha un file app.py ...