L’analisi del layout OCR ricostruisce pagine complesse combinando le parole riconosciute con la geometria, i tipi di regione, le relazioni tra le tabelle e una sequenza di ordine di lettura dedotta.
Un estratto conto bancario scansionato, una fattura, un programma di elettrodomestici, un modulo scolastico, una pagina di rivista o un manuale tecnico non sono soltanto un insieme di parole. Il significato dipende dalla posizione di un token, dal titolo a cui appartiene un paragrafo, dall’intestazione che identifica un valore nella tabella e dalla colonna da leggere successivamente. L’OCR dei caratteri fornisce testo e coordinate; l’analisi del layout aggiunge il livello strutturale che trasforma queste rilevazioni in un documento che una pipeline di ricerca o RAG può preservare in modo coerente.
L’OCR produce innanzitutto elementi di testo ancorati alla geometria della pagina
La ricostruzione inizia con rilevazioni a livello di pagina, come parole, righe, segmenti, poligoni delimitatori, valori di attendibilità e orientamento. La geometria conserva informazioni che il semplice testo altrimenti eliminerebbe.
gli elementi della pagina con segmenti e posizioni conservano il testo riconosciuto insieme alla geometria locale della pagina, fornendo alle fasi successive del layout le informazioni necessarie per raggruppare righe, regioni e posizioni di origine.
Una parola a x=800 non è intrinsecamente “successiva” a una parola a x=100. In una pagina a due colonne, la loro relazione geometrica può indicare flussi di lettura separati anziché un’unica frase da sinistra a destra. Il livello delle coordinate agisce quindi come informazione spaziale grezza per il raggruppamento, ma la geometria da sola non basta a determinare ruoli semantici come titolo, didascalia, intestazione di tabella o piè di pagina.
I modelli di layout classificano le regioni prima di appiattire la pagina
Un analizzatore del layout rileva regioni più ampie, come paragrafi, titoli, intestazioni, tabelle, figure, elenchi, intestazioni di pagina e piè di pagina. Ogni regione contiene sia il contenuto sia la posizione nella pagina.
La classificazione dei ruoli geometrici e logici separa le regioni fisiche, come tabelle e figure, dai ruoli semantici, come titoli, intestazioni e piè di pagina, prima di appiattire la pagina.
Questo passaggio relativo alle regioni impedisce che il numero di pagina, una nota laterale, una didascalia e il paragrafo principale vengano trattati come righe equivalenti in un unico flusso lineare.
Crea inoltre contenitori che la logica successiva delle tabelle e dell’ordine di lettura può collegare, invece di dover risolvere le relazioni tra ogni singola parola in modo indipendente.
La ricostruzione delle tabelle aggiunge righe, colonne, celle e campi uniti al testo OCR
Riconoscere “$128.50” non rivela se si tratti di un subtotale, di una franchigia, di un addebito mensile o di un valore appartenente a un’altra colonna. L’analizzatore deve dedurre la cella a cui appartiene il token e le relazioni della griglia circostante.
Il recupero della struttura delle tabelle e delle relazioni contestuali trasforma i token OCR in righe, colonne, celle, intestazioni e oggetti consapevoli della sezione, che possono mantenere il proprio significato dopo l’indicizzazione.
I confini delle celle possono derivare da linee visibili, spazi bianchi, schemi di allineamento, caratteristiche visive apprese o da una combinazione di questi segnali. La struttura risultante registra l’appartenenza a righe e colonne e può anche conservare celle unite o ruoli di intestazione.
Una pipeline RAG locale può quindi serializzare la tabella come righe strutturate, Markdown, HTML, coppie chiave-valore o blocchi consapevoli della struttura tabellare, mantenendo al contempo le coordinate per verificare la fonte.
L’ordine di lettura viene dedotto come relazione tra le regioni
Dopo il rilevamento delle regioni, il sistema deve ancora decidere quale elemento segua ciascun altro. Un semplice ordinamento dall’alto verso il basso non funziona con due colonne, barre laterali, didascalie su più righe e testo disposto intorno alle figure.
La modellazione dell’ordine di lettura come problema a grafo consente di valutare i possibili passaggi tra righe di testo o regioni prima di scegliere una sequenza globale per layout complessi a più colonne.
I sistemi commerciali di analisi del layout possono usare modelli diversi, ma il compito concettuale è lo stesso: determinare le relazioni di successione a partire da geometria, testo, classe della regione e schemi di layout appresi. L’output dovrebbe consentire di terminare un paragrafo nella colonna sinistra prima di passare all’inizio della colonna destra, mantenendo al contempo una didascalia vicina associata alla relativa figura invece di inserirla nel testo principale.
La gerarchia collega titoli, paragrafi, tabelle e figure alle sezioni
L’ordine di lettura fornisce la sequenza, ma anche la gerarchia è utile per la ricerca. Un paragrafo sotto “Eccezioni alla garanzia” dovrebbe rimanere collegato a quel titolo anche quando il titolo si trova diverse righe sopra il blocco recuperato.
Un albero del layout del documento preserva la gerarchia padre-figlio, così che un paragrafo o un blocco di tabella possa mantenere il contesto del titolo che ne definisce il ruolo nel documento originale.
Questo è particolarmente utile per il RAG privato, perché una riga di tabella recuperata può risultare ambigua senza il titolo della sezione o le intestazioni delle colonne che ne definiscono il significato.
Il chunking consapevole della struttura può quindi avvenire dopo la ricostruzione, invece di costringere il sistema a riscoprire le relazioni della pagina a partire dal testo OCR appiattito.
L’output strutturato conserva la provenienza per la ricerca e la verifica
Un parser affidabile dovrebbe mantenere la corrispondenza tra gli elementi ricostruiti, i numeri di pagina e le coordinate di origine. In questo modo l’interfaccia di ricerca può mostrare la tabella o il paragrafo originale invece di trattare la struttura generata come un nuovo documento non tracciabile.
Il ripristino delle relazioni tabellari perse dall’OCR richiede l’aggiunta delle associazioni tra righe, colonne, intestazioni e campi uniti prima che il contenuto estratto venga trasformato in normali blocchi di ricerca.
Per una bolletta domestica, la provenienza può collegare un importo recuperato alla relativa cella, all’etichetta della riga, all’intestazione della colonna, alla pagina e al riquadro delimitatore. Per un manuale a più colonne, può conservare l’esatta sequenza dei paragrafi. Questo rende l’analisi del layout molto più di una semplice formattazione estetica. Determina quale unità informativa verrà successivamente classificata dall’indice vettoriale o per parole chiave e quale regione della fonte potrà essere mostrata in una citazione.
L’analisi del layout non può ricostruire in modo affidabile informazioni che l’OCR non ha mai acquisito
I modelli strutturali dipendono da segnali visivi e testuali utilizzabili. Sfocatura grave, bordi ritagliati, scrittura a mano, inclinazione, timbri sovrapposti, scansioni danneggiate o riconoscimento errato dei caratteri possono eliminare le informazioni necessarie per identificare una cella o una relazione.
La modellazione congiunta del rilevamento del layout e dell’ordine di lettura aiuta a collegare il riconoscimento delle regioni alla sequenza in cui tali regioni devono essere lette durante la ricostruzione dell’intero documento.
Distinguere l’OCR incoerente tra le pagine scansionate dagli errori nell’ordine del layout impedisce al parser di attribuire la colpa della ricostruzione strutturale ai caratteri sottostanti, quando questi sono stati riconosciuti in modo errato.
Valutate entrambi gli aspetti. Verificate l’accuratezza del testo, l’appartenenza delle celle alle tabelle, l’associazione delle intestazioni, la gerarchia delle sezioni, l’ordine di lettura e la tracciabilità delle coordinate prima che l’output ricostruito diventi una fonte per un sistema privato di ricerca o RAG.
Hub Tecnologico e AI
Altro da leggere

Stato di runtime vs stato persistente in Home Assistant: cosa deve sopravvivere al riavvio?
Home Assistant non conserva ogni valore in tempo reale; la configurazione, i registri, gli stati selezionati ripristinati, la cronologia e i dati di distribuzione...

Come autentica Home Assistant le sessioni locali e remote?
Le sessioni Home Assistant locali e remote utilizzano lo stesso modello di identità lato server; l'accesso remoto modifica il percorso e il confine TLS,...

Perché le query della cronologia di Home Assistant possono rallentare man mano che crescono i dati del Recorder?
La crescita del registratore può aumentare il costo delle query della cronologia quando l’intervallo richiesto coinvolge più righe, aumentano i cache miss o le...

