Intermedio 12 minVisione

Tesseract OCR: leggere una scansione in locale (guida francese)

Risposta diretta

Tesseract è il motore OCR libero di riferimento (Apache 2.0, più di 70.000 stelle su GitHub, versione 5.5.3 nel 2026): gratuito, offline, disponibile ovunque, e la sua precisione dipende molto più dalla qualità dell'immagine — risoluzione, raddrizzamento, contrasto — che dalle sue impostazioni. Su testo pulito rimane veloce e affidabile; su un layout complesso o un documento leggermente inclinato, la sua precisione può precipitare in un istante.

Un PDF scansionato non contiene testo: è un'immagine di testo. Finché non viene sottoposto al riconoscimento ottico dei caratteri, viene indicizzato senza alcun contenuto testuale e l'assistente documentale giura che il documento non dica nulla. Tesseract è il motore libero di riferimento per questo passaggio: gratuito, offline, disponibile ovunque, e molto più dipendente dalla qualità dell'immagine che dalle proprie impostazioni.

Di Mohamed Meguedmi·Agg. 2026-09-29·Testato su Windows, macOS e Linux

#Cosa è Tesseract e cosa non è

Tesseract è un motore di riconoscimento ottico dei caratteri pubblicato sotto licenza Apache 2.0. Il repository ufficiale, descritto dai suoi manutentori come il «Tesseract Open Source OCR Engine», conta oggi più di 70.000 stelle su GitHub. La versione 4 ha aggiunto un motore basato su reti neurali LSTM, incentrato sul riconoscimento delle righe; il motore storico, che riconosce pattern di caratteri, rimane disponibile come opzione. Legge i formati di immagine comuni (PNG, JPEG, TIFF) e produce testo semplice, hOCR, PDF o TSV. La versione stabile più recente, la 5.5.3, è stata rilasciata il 24 luglio 2026. In pratica: installa il file della lingua, cura l'immagine (300 punti per pollice, pagina dritta, contrasto netto), scegli la modalità di segmentazione corretta, poi verifica il risultato su una ventina di pagine prima di elaborare un lotto.

Cosa non è: uno strumento di comprensione dei documenti. Restituisce testo, eventualmente con informazioni sulla posizione. Non indica che un blocco è un titolo, non ricostruisce una tabella in righe e colonne e non capisce ciò che legge. Per un documento strutturato, l'OCR è solo uno dei componenti.

#Il francese: il file di lingua

Il kit IA Locale

Il tuo ChatGPT privato e gratuito sulla tua macchina in 1 ora — LM Studio, Ollama, Open WebUI, i tuoi documenti, senza cloud.

  • Spazio online a vita
  • PDF + file
  • Aggiornamenti a vita

Per impostazione predefinita, Tesseract legge l'inglese. Su un documento francese, questo si traduce in accenti mancanti e parole riconosciute in modo approssimativo — e molti ne deducono che il motore sia scadente. La documentazione specifica che, senza l'opzione -l, si presume che la lingua sia l'inglese. È quindi necessario installare il file dei dati della lingua e specificarla esplicitamente al momento dell'esecuzione. Il progetto dichiara di riconoscere oltre cento lingue una volta installati i pacchetti corretti.

Riconoscimento di una scansione in francese
# Debian/Ubuntu : installer les données françaises
sudo apt install tesseract-ocr tesseract-ocr-fra

# macOS (Homebrew) : le moteur puis les langues supplémentaires
brew install tesseract tesseract-lang

# Reconnaître une image en français, sortie texte
tesseract scan.png sortie -l fra

# Plusieurs langues dans le même document
tesseract scan.png sortie -l fra+eng

# Sortie PDF avec couche de texte interrogeable
tesseract scan.png sortie -l fra pdf
i
Un PDF non è un'immagine
Tesseract richiede immagini in ingresso. Quando si lavora su un'immagine, aggiungere pdf alla fine del comando produce un PDF con uno strato di testo ricercabile. Per un PDF scansionato di più pagine, uno strumento come OCRmyPDF, che si basa su Tesseract, rasterizza le pagine e poi aggiunge lo strato di testo al documento.

#La qualità dell'immagine è determinante

È il punto che si scopre troppo tardi: la documentazione ufficiale dedica la sua pagina «Improve quality» all'elaborazione dell'immagine prima delle impostazioni del motore. Tesseract esegue già operazioni interne (libreria Leptonica), ma non sempre sono sufficienti, e un pretrattamento di poche righe basta spesso a rendere leggibile una scansione mediocre. Koncile, un produttore di software per l'estrazione di fatture, illustra l'entità del fenomeno nei propri test, pubblicati nel 2026: su una fattura inclinata di appena tre-cinque gradi, la percentuale di lettura corretta passa dal 100% al 31%. Non è uno studio indipendente, ma l'ordine di grandezza corrisponde all'avvertimento della documentazione ufficiale. Nessuna impostazione del motore può compensare un calo simile; solo un raddrizzamento preliminare può farlo.

Risoluzione
La documentazione ufficiale indica che Tesseract funziona meglio su immagini di almeno 300 punti per pollice e suggerisce di ridimensionare in caso contrario.
Raddrizzamento
La documentazione avverte che la qualità della segmentazione in righe diminuisce nettamente quando la pagina è troppo inclinata: bisogna ruotare l'immagine in modo che le righe siano orizzontali. Vedere il dato riportato sopra.
Contrasto e binarizzazione
Tesseract effettua la binarizzazione internamente (algoritmo di Otsu), con risultati a volte mediocri quando lo sfondo ha una tonalità non uniforme. La versione 5.0 ha aggiunto due metodi, Adaptive Otsu e Sauvola, regolabili attraverso i parametri thresholding_*. Per un motore in versione 4 o successiva, serve testo scuro su sfondo chiaro.
Bordi
Bordi molto ampi disturbano il motore, ma anche un testo ritagliato troppo a ridosso dei caratteri: la documentazione consiglia di aggiungere un piccolo bordo bianco (10 pixel nel suo esempio) attorno a un estratto senza margini.
  1. 01
    Raddrizzare la pagina
    Rilevare l'angolo dominante del testo e ruotare l'immagine prima di tutto il resto; un semplice script basato sulla trasformata di Hough basta per la maggior parte degli scanner da ufficio.
  2. 02
    Migliorare il contrasto
    Convertire in scala di grigi, poi binarizzare (con una sogliatura adattiva anziché una soglia fissa, che non funziona con un'illuminazione non uniforme) per ottenere nero puro su bianco puro.
  3. 03
    Ritaglia e avvia l'OCR
    Rimuovere i bordi dello scanner e gli ampi margini vuoti, lasciare un sottile bordo bianco intorno al testo, poi eseguire Tesseract con la lingua e la modalità di segmentazione adatte al tipo di documento trattato.

#I parametri che modificano il risultato

Le opzioni da conoscere
OpzioneA cosa serveQuando modificarla
Modalità di segmentazione della pagina (--psm)Indica al motore come appare la pagina: blocco unico, colonna, riga isolata (7), testo disperso (11)Per uno scontrino, un'etichetta, una colonna stretta o un piccolo ritaglio: la modalità predefinita si aspetta una pagina intera
Modalità motore (--oem)1: solo rete neurale LSTM; 0: motore storicoRaramente: i file di lingua dei pacchetti Linux comuni (tessdata_fast) supportano solo LSTM, e i modi 0 e 2 non funzionano con essi
Elenco dei caratteri ammessi (tessedit_char_whitelist)Limita il riconoscimento a un sottoinsieme di caratteriSu un campo puramente numerico, per ridurre la confusione tra lettere e cifre
Dizionari (load_system_dawg, load_freq_dawg)Due variabili che attivano le liste di parole del motoreSu ricevute, elenchi di prezzi, codici: disattivarli può aiutare quando la maggior parte del testo non è composta da parole comuni

La modalità di segmentazione è l'impostazione che si dimentica più spesso. La documentazione lo ricorda: per impostazione predefinita, Tesseract si aspetta una pagina di testo e, per leggere una piccola area, bisogna scegliere un'altra modalità. Su un'immagine contenente una sola riga, la modalità 7 la tratta come una riga singola. Per testo sparso senza un ordine particolare — una schermata con etichette disseminate — la modalità corrispondente evita lo stesso problema. La modalità del motore, invece, cambia raramente il risultato, per una ragione pratica: il motore storico è presente solo nei file di lingua del repository tessdata, non nelle varianti rapide o precise fornite dalla maggior parte delle distribuzioni.

Su testo stampato pulito e ben inquadrato, Tesseract resta competitivo: FastOCR, un servizio di OCR online che vende un'alternativa cloud, indica una precisione dal 95 al 97,2% per Tesseract v5 su testo inglese pulito, contro una precisione dal 98,2 al 99,1% per Google Cloud Vision. Sono cifre fornite da un operatore con un interesse commerciale, senza un protocollo pubblicato: prendile come un ordine di grandezza, non come una misurazione. La scelta del motore dovrebbe basarsi sulla natura reale dei documenti: se sono puliti e stampati, Tesseract è più che sufficiente; se sono danneggiati, manoscritti o hanno una struttura molto densa, diventa l'anello debole della catena.

#Tesseract o un modello di visione

Due famiglie, due usi
CriterioTesseractModello di visione locale
RisorseSolo processoreGPU auspicabile, diversi gigabyte
VelocitàMolto veloceMolto più lento
Testo pulito su una colonnaEccellenteEquivalente, più costoso
Layout complesso, tabelleBassa: la documentazione del progetto riconosce un problema noto con le tabelleMolto meglio
Scrittura a manoMolto basso: dal 25 al 40 % secondo FastOCRMolto meglio
Comprensione del contenutoNessunaPuò rispondere a una domanda sul documento
Rischio di invenzioneBasso: confonde caratteri piuttosto che generare valoriReale: un modello può inventare un valore plausibile

Quest'ultima riga è importante per qualsiasi controllo documentale: Tesseract sbaglia confondendo i caratteri, mentre un modello di visione può produrre un numero dalla forma perfetta ma errato. La differenza non è assoluta, perché anche uno 0 letto come un 8 in un importo può passare inosservato, ma un testo assurdo rivela più spesso un errore di un motore OCR rispetto a un valore plausibile inventato. Un confronto pubblicato nel 2026 riassume il panorama ormai cambiato: le vere alternative non sono più i motori OCR tradizionali, ma i modelli di visione-linguaggio open source, e cita espressamente PaddleOCR-VL tra questi — con un costo da sostenere in cambio, perché questi modelli richiedono una GPU, mentre a Tesseract basta un normale processore.

#Il vero costo di un progetto Tesseract

Il motore in sé non costa nulla, il che spesso nasconde dove viene realmente impiegato il tempo in un progetto OCR. Il vero lavoro riguarda le attività che ruotano attorno al motore: pre-elaborazione delle immagini (raddrizzamento, binarizzazione, bordi) e verifica del risultato. Un budget realistico prevede fin dall'inizio del tempo per queste due fasi, anziché scoprirle dopo un primo lotto di risultati deludenti.

Scanner o foto scattata con il telefono
Uno scanner piano produce pagine più dritte e meglio illuminate rispetto a una foto scattata a mano libera; preferire lo scanner non appena il volume lo giustifica.
Formato di output
Il testo semplice basta per l'indicizzazione; il formato hOCR conserva le posizioni, il che è utile per evidenziare un estratto nell'interfaccia originale.
Controllo qualità
Un campione riletto manualmente dopo ogni cambio della fonte delle scansioni permette di individuare una deriva prima che coinvolga l'intero lotto.
Volume e parallellismo
Tesseract è multithread per impostazione predefinita (OpenMP), il che non è adatto all'elaborazione di un lotto di grandi dimensioni. La FAQ del progetto consiglia di avviare un processo per core con la variabile OMP_THREAD_LIMIT=1, che elimina il costo aggiuntivo del multithreading.

Un ultimo aspetto spesso dimenticato: la denominazione dei file generati. Su diverse migliaia di pagine, bisogna poter ritrovare quale testo corrisponde a quale scansione; mantenere lo stesso nome di base per l'immagine e il testo riconosciuto risolve il problema fin dall'inizio.

#Inserirlo in una pipeline locale

In un sistema locale di gestione documentale, Tesseract interviene in un solo punto: subito prima dell'indicizzazione, sui documenti privi di un livello di testo. Il test da automatizzare è semplice — se l'estrazione del testo da un PDF restituisce meno di qualche decina di caratteri per pagina (soglia da adattare al tuo corpus), probabilmente si tratta di una scansione, che viene quindi inviata all'OCR. Senza questo test, interi documenti entrano nell'indice come vuoti senza che nessuno se ne accorga, finché un utente non si stupisce.

Il raddrizzamento e la binarizzazione andrebbero automatizzati nella stessa pipeline anziché affidati a una valutazione pagina per pagina: uno script che rileva l'angolo dominante e lo corregge prima della chiamata al motore evita buona parte delle brutte sorprese descritte in precedenza. Su un lotto omogeneo — sempre lo stesso scanner, lo stesso tipo di documento — questo pretrattamento si configura una volta e poi funziona senza supervisione.

→
Misurare prima di ottimizzare
Prima di modificare qualsiasi impostazione, preparare un piccolo campione di venti-trenta pagine rappresentative del corpus reale e annotare il tasso di errore prima e dopo ogni modifica. È l'unico modo per sapere se il raddrizzamento, la binarizzazione o un cambio della modalità di segmentazione ha davvero migliorato i risultati sui tuoi documenti anziché su un singolo esempio.

#FAQ

Tesseract è gratuito?+
Sì, è un software libero con licenza Apache 2.0, utilizzabile commercialmente senza royalty, che funziona offline senza costi per pagina né chiave API. Il repository ufficiale supera le 70.000 stelle su GitHub, segno di un'ampia base di utenti e di un progetto ancora attivamente mantenuto nel 2026, con una versione stabile pubblicata a luglio.
Come fargli leggere il francese?+
Installando il file dei dati della lingua francese e specificando esplicitamente questa lingua al momento della chiamata, con l'opzione -l fra. Altrimenti, il motore legge in inglese e storpia gli accenti, trasformando una « é » in un carattere approssimativo. È possibile combinare più lingue contemporaneamente, ad esempio fra+eng per un documento bilingue.
Perché il mio risultato è illeggibile?+
Il più delle volte, la qualità dell'immagine: risoluzione insufficiente, pagina inclinata, contrasto basso. Un documento inclinato di soli tre-cinque gradi può far scendere il tasso di lettura dal 100% a circa il 31% nei test del produttore Koncile. Raddrizzare, binarizzare e puntare a 300 punti per pollice dà in genere risultati migliori rispetto alle regolazioni del motore.
Tesseract sa leggere le tabelle?+
Restituisce il testo, non la struttura, e la documentazione ufficiale segnala un problema noto con le tabelle senza segmentazione personalizzata. Le righe e le colonne si perdono e un importo può ritrovarsi associato all'intestazione sbagliata. Per le tabelle, serve uno strumento di analisi dell'impaginazione come PaddleOCR o un modello di visione in grado di ricostruire le celle prima di fidarsi dei numeri estratti.
Conviene scegliere un modello di visione?+
Su impaginazioni complesse o testi scritti a mano, sì: FastOCR, un servizio concorrente, attribuisce a Tesseract v5 una precisione tra il 25 e il 40% sui testi manoscritti, dato da considerare con cautela. Su testo stampato nitido, Tesseract rimane più veloce, più leggero e genera meno valori plausibili: confonde i caratteri, mentre un modello può produrre un valore falso ma credibile.
Che cos'è la modalità di segmentazione della pagina?+
Un'impostazione che indica al motore la struttura del documento prima di leggerlo: pagina intera, colonna singola, riga isolata, parola isolata o testo sparso senza un ordine particolare. È la prima impostazione da modificare quando un'immagine ritagliata che contiene visibilmente del testo non restituisce nulla. Secondo la documentazione, aiuta anche aggiungere un sottile bordo bianco intorno a un estratto ritagliato troppo strettamente.
Come rendere ricercabile un PDF scansionato con Tesseract?+
Per un'immagine, aggiungi pdf alla fine del comando: Tesseract genera un PDF con uno strato di testo nascosto. Per un PDF di più pagine, usa OCRmyPDF, che si basa su Tesseract, rasterizza le pagine e poi aggiunge questo strato al documento. In entrambi i casi, specifica la lingua con -l fra, altrimenti viene assunto l'inglese e gli accenti si perdono.
Questa guida ti è stata utile?

Un feedback, un errore, una precisazione? Facci sapere, così la guida migliora per tutti.