Attenzione! Questa è una Pagina di prova. Le informazioni riportate potrebbero essere incomplete, errate e potenzialmente pericolose. Per contribuire alla realizzazione di questa pagina consultare la discussione di riferimento. |
Guida verificata con Ubuntu: 20.04
Problemi in questa pagina? Segnalali in questa discussione
Introduzione
Con l'acronimo OCR (Optical Character Recognition), si indica una tecnologia che consente di convertire le scansioni contenente testo, in testo semplice. Ciò permette di risparmiare spazio sul disco, modificare il testo o fare ricerche all'interno di esso.
Strumenti OCR di largo utilizzo per i sistemi Linux sono: OCRFeeder, Tesseract, CuneiForm.
Installare i motori OCR
Installare i pacchetti:
Da interfaccia grafica: ocrfeeder.
Da interfaccia terminale: tesseract-ocr, ocrad, gocr.
Uso da interfaccia grafica (OCRFeeder)
Per avviare l'applicazione OCRFeeder:
Con il + in alto a sinistra selezionare il file da convertire.
- Con il simbolo immediatamente a destra avviare la conversione.
È possibile modificare le opzioni di conversioni con i menu a destra. In particolare è possibile scegliere un motore di conversione diverso da quello predefinito.
Uso dal terminale
Tesseract
Tesseract accetta solo immagini con l'estensione .tif.
L'immagine non deve avere estensione file .tiff.
Per ottimizzare le immagini per l'acquisizione con Tesseract, dopo essersi assicurati di avere installato GIMP, procedere come segue:
Aprire GIMP e andare nel menù Immagine → Modalità ed assicurarsi che l'immagine sia RGB o in Scala di grigi.
Selezionare dal menù Strumenti → Colore → Soglia e scegliere un valore di soglia adeguato.
Selezionare dal menù Immagine → Modalità → Indicizzata e dalle opzioni selezionare 1-bit e Nessun dithering.
Digitare nel terminale il seguente comando:
tesseract <percorso del file TIFF> <nome del file di output>
Supponendo che la propria Home si chiami /home/mario, che al suo interno vi sia il file input.tif e che si voglia generare il file di testo output.txt, il comando diverrà:
tesseract /home/mario/input.tif output
Tesseract darà automaticamente al file generato l'estensione .txt.
Usare Tesseract con PDF multipagine
Spesso, i documenti scansionati vengono salvati come immagini in documenti .pdf. Usare ImageMagick (installare tramite il pacchetto imagemagick), le singole pagine possono essere estratte come file .tiff per poi essere processate con Tesseract.
Di seguito viene mostrato l'utilizzo di uno script per automatizzare il processo:
Creare nella propria Home il file per lo script.
Aprire con un editor di testo il file tesseract_multipagine.sh e copiare al suo interno le seguenti stringhe:
#!/bin/bash PAGINE=100 # set to the number of pages in the PDF SORGENTE=book.pdf # set to the file name of the PDF OUTPUT=book.txt # set to the final output file RESOLUTION=600 # set to the resolution the scanner used (the higher, the better) touch $OUTPUT for i in `seq 1 $PAGINE`; do convert -monochrome -density $RESOLUTION $SORGENTE\[$i\] page$i.tif tesseract page$i.tif page$i cat $OUTPUT page$i.txt > temp.txt rm $OUTPUT rm page$i.tif rm page$i.txt mv temp.txt $OUTPUT done
Prima dell'utilizzo impostare nel file tesseract_multipagine.sh le voci:
PAGINE: inserire il numero di pagine desiderato.
SORGENTE: indicare il nome del file da trasformare in .pdf.
OUTPUT: indicare il nome del nuovo documento in .pdf.
RESOLUTION: impostare la risoluzione desiderata.
Aggiungere i premessi di esecuzione, digitare nel terminale i comandi:
chmod +x tesseract_multipagine.sh
Per avviare lo script digitare:
./tesseract_multipagine.sh
Cuneiform
Installare il pacchetto cuneiform.
Viene qui mostrata una procedura tramite script per trasformare immagini contenenti testo (.jpg, meglio se .tif) in file di testo semplice .txt.
Creare nella propria Home il file per lo script.
Aprire con un editor di testo il file script_cuneiform.sh e copiare al suo interno le seguenti stringhe:
#!/bin/bash if [ "$1" ] && [ -e "$1" ]; then TMPF=$(mktemp XXXXXXXX.tif) DEST="$2" if [ ! "$DEST" ]; then DEST="${1%.*}.txt" if [ -e "$DEST" ]; then echo "$DEST already exists; please provide a new textfile name" >&2 exit 1 fi fi /usr/bin/convert "$1" -colorspace Gray -depth 8 -resample 200x200 $TMPF \ && /usr/bin/cuneiform -o "$DEST" $TMPF EX=$? /bin/rm -f $TMPF [ $EX -eq 0 ] && [ "$TERM" ] && echo "created $DEST" exit $EX else echo "Usage: $0 imagefile [textfile]" >&2 echo " creates a plain text file with the text found in imagefile" >&2 exit 1 fi
Salvare quindi il file e chiuderlo.Aggiungere i premessi di esecuzione, digitare nel terminale i comandi:
chmod +x script_cuneiform.sh
Avviare lo script
Per eseguire lo script digitare nel terminale il comando:
./script_cuneiform.sh /percorso_file/immagine.tif
Al termine verrà creato nella medesima cartella il file immagine.txt.
Sostituire /percorso_file/immagine.tif, con il percorso_file dell'immagine da convertire in file di testo.