## VietOCR

### DESCRIZIONE

VietOCR è un'interfaccia grafica perTesseract OCR engine, fornisce supporto per il riconoscimento dei caratteri per i formati immagine più comuni. Il programma dispone di software di post-elaborazione che aiuta a correggere gli errori che susseguono nel processo di riconoscimento, aumentando il grado di precisione del risultato. Il programma può anche funzionare come applicazione console, eseguendo i comandi tramite linea di comando.

L'elaborazione in batch è ora supportata. Il programma controlla una cartella per ricercare il file della nuova immagine, che elabora automaticamente attraverso il motore OCR, e salva i risultati in una cartella di output.

### REQUISITI DEL SISTEMA

Java Runtime Environment 8 o superiore. On Windows, Microsoft Visual C++ v14 Redistributable Package is also required.

### INSTALLAZIONE

Tesseract eseguibile di Windows è fornito assieme al programma. Un Pacchetto dati lingua per Tesseract, il cui nome inizia con il codice ISO639-3, dovrebbe essere inserito nella sottocartella `tessdata`.

Per Linux, Tesseract ed i suoi pacchetti di dati linguistici si trovano nella cartella (universo) Grafica . Possono essere installati tramite Synaptic o con il seguente comando:

> `sudo apt-get install tesseract-ocr tesseract-ocr-eng tesseract-ocr-ita`

I file saranno inseriti in `/usr/bin` e `/usr/share/tesseract-ocr/tessdata`, rispettivamente. D'altra parte, se Tesseract è costruito e installato dai file sorgenti , saranno messi in `/usr/local/bin` e `/usr/local/share/tessdata`. È anche possibile lasciare che VietOCR riconosca automaticamente la posizione della cartella `tessdata` tramite la variabile `TESSDATA_PREFIX`:

> `export TESSDATA_PREFIX=/usr/local/share/`

Per altre piattaforme consultare la pagina Tesseract Wiki.

VietOCR fornisce anche il supporto per il download e l'installazione di Pacchetti Lingue selezionati attraverso Download Pacchetti Dati che si trova nel menù. A seconda della posizione della cartella `tessdata`, potrebbe essere necessario eseguire il programma come root o admin per essere in grado di installare i dati scaricati, come ad esempio in `/usr` su Linux o `C:\Program Files` in Windows.

Il supporto per lo scnnering viene fornito da Windows Image Acquisition Library v2.0.

Su Linux, la scansione richiede l'installazione di pacchetti di SANE:

> `sudo apt-get install libsane sane sane-utils libsane-extras xsane`

Il supporto PDF è disponibile con PDFBox.

La funzionalità di controllo ortografico è disponibile attraverso Hunspell, il cui dizionario (`.aff`, `.dic`) deve essere posto nella cartella `dict` di VietOCR. `user.dic` è un file criptato UTF-8 che contiene una lista di parole predefinite, una per linea.

Su Linux, Hunspell ed i suoi dizionari possono essere installati da Synaptic o `apt`, come segue:

> `sudo apt-get install hunspell hunspell-en-us myspell-it`

### ISTRUZIONI

Per lanciare il programma:

> `java -jar VietOCR.jar`

Note: Se si verificano errori di out-of-memory , eseguire lo script`ocr` invece di utilizzare il .jar.

I dati nella lingua vietnamita sono stati generati per Times New Roman, Arial, Verdana, e font Courier New. Pertanto, il riconoscimento risulta migliore per le immagini che hanno le grafie di caratteri simili. Per le immagini OCR che hanno grafia dei caratteri diversi dai caratteri supportati generalmente bisognerà creare un altro pacchetto di lingua dati appositamente per quei caratteri tipografici. Dati linguistici per alcune tipografie VNI e TCVN3 (ABC) sono stati anche aggiunti nelle ultime versioni.

Le immagini da acquisire devono essere scansionate ad una risoluzione di almeno 200 dpi fino a 400 DPI in modo monocromatico (bianco e nero) o in scala di grigi. La scansione a risoluzioni più elevate non necessariamente si traduce in una migliore precisione del riconoscimento, che attualmente può essere superiore al 97% per i linguaggi Vietnamiti, e che per la prossima versione di Tesseractsono previsti miglioramenti. Anche così, i risulatati effettivi dipendono ancora molto dalla qualità del dell'immagine acquisita. Le impostazioni tipiche per la scansione sono 300 DPI e 1 bpp (bit per pixel ) in bianco e nero oppure in scala di grigi a 8 bpp tramite immagini TIFF o PNG.

La modalità Screenshot offre risultati migliori per immagini con risoluzione più bassa, come serigrafie, che vengono riscalate a 300 DPI.

Oltre all' algoritmo integrato di post-elaborazione del testo, è possibile aggiungere il proprio schema personalizzato del testo tramite un file di testo denominato UTF-8-encoded tab-delimited `x.DangAmbigs.txt`, dove x è il codice ISO639-3 della lingua. Entrambe le sostituzioni di testo normale e Regex sono supportati.

Alcuni strumenti integrati sono forniti per unire più immagini o file PDF in un unico documento. Altre per comode operazioni di OCR, o per dividere un file PDF in qdocumenti più piccoli se è troppo grande, che può causare rallentamenti al programma.

### POST ELABORAZIONE

Gli errori di riconoscimento possono generalmente essere classificati in tre categorie. Molti degli errori sono legati ai caratteri maiuscoli e minuscoli - per esempio: mamma, mAmma - che possono essere facilmente corretti da editor di testo Unicode. Molti altri errori sono il risultato del processo OCR, ad esempio mancano segni diacritici, lettere sbagliate con forme simili, ecc - cane - canè, patata - pataca, scur0 - scuro, la - 1a, è - é. Questi possono anche essere facilmente corretti dai programmi di controllo ortografico. La funzione di post elaborazione può aiutare a correggere gli errori elencati sopra.

L'ultima categoria di errori è la più difficile da rilevare perché sono errori di semantica, il che significa che le parole sono voci valide nel dizionario, ma sono sbagliate in quel determinato contesto - ad esempio, ce - c'è, fa - fà. Questi errori devono essere corretti manualmente attraverso il confronto con l'immagine originale.

Di seguito sono riportate le istruzioni su come correggere le prime due categorie di errori OCR utilizzando le funzionalità implementate:

1. Gruppo linee. Le linee devono essere raggruppate al paragrafo a cui appartengono, una volta eseguito l'OCR, ogni riga diventa un carattere di separazione all'interno del paragrafo. Utilizzare Rimuovere le interruzioni di riga che si trova sotto la voce Formato del menu. Si noti che questa operazione potrebbe non essere necessaria per le poesie.
2. Selezionare Modifica carattere, che si trova nel menù Formato scegliere Carattere Frase per correggere la maggior parte degli errori riguardanti il carattere delle lettere.
3. Correggere gli errori di ortografia con l'opzione Controlla Ortografia.

Attraverso il processo sopra citato, la maggior parte degli errori comuni possono essere eliminati. I restanti errori semantici sono di norma pochi, ma richiedono un redattore umano per essere corretti attraverso il confronto con l'immagine originale.

Se hai qualche domanda scrivila sul Forum di VietOCR.