Domanda

Voglio che la mia richiesta di compilare un unico campo in una forma che esiste come un file di immagine in bianco e nero. La forma sempre inizia come la stessa versione cartacea, ma per il momento il mio applicazione ottiene dai miei utenti, potrebbe essere stato sottoposto a scansione o fax di più di una volta. A causa di ciò, il campo ho bisogno non è in stesso luogo in ogni file.

I miei utenti non sempre ottengono il modulo in bianco da me, così io non lo fanno avere la possibilità di stampare un marchio o segnaposto che posso riconoscere più tardi.

C'è del testo sul modulo in bianco originale, ma perché si può sono stati inviato via fax, ho solo 200 dpi di risoluzione. Il testo è sempre abbastanza grande per un essere umano da leggere, ma io sono scettico su OCR.

ho un po 'di bilancio in modo da non ho bisogno di una soluzione gratuita ... facciamo basta dire $ del 2000.

Detto questo, sto considerando

  1. Ottenere una soluzione OCR per trovare il testo etichetta sul campo ho bisogno. Io non credo di avere le risorse o competenze per roll-my-own. Io non bisogno di perfetto riconoscimento, dal momento che già che cosa dice il testo. Ma ho bisogno di sapere X e Coordinate Y. C'è un software che fa questo? O è la programmazione più facile di quanto io pensi?

  2. Costruire o acquistare il software per riconoscere i bordi del modulo. Da li, Ho potuto ottenere la posizione relativa di il campo ho bisogno. sto pensando a la linea tratteggiata il mio software dello scanner pone intorno all'immagine di un piccolo documento. È che una nota algorhthm o c'è una disposizione soluzione?

  3. Qualche altro modo per riconoscere la campo ho bisogno. I tentativi di google software di compilazione moduli dammi centinaia di partite per moduli web, moduli PDF, ecc che non fare quello che ho hanno bisogno.

Io non sono esigenti in fatto di lingua. La mia applicazione funziona su Linux, ma se la soluzione migliore è Microsoft, che probabilmente può fare quel lavoro.

apprezzerei i vostri pensieri.

È stato utile?

Soluzione

Se ho capito bene, la forma è sempre la stessa, ma può essere spostato, ridimensionato, o leggermente ruotato a causa di fotocopie / fax. In questo caso, il problema è uno dei registrazione di immagini : trovare la trasformazione rigida ottimale che lo rende un modulo da una linea utente con il modulo di "modello", in cui si conosce la posizione del campo di interesse. Una volta che conosci la trasformazione, è possibile calcolare la posizione del campo in forma dell'utente.

Ci sono molti algoritmi di registrazione delle immagini, in genere sviluppati per applicazioni come l'allineamento MR-immagini del cervello. Essi sono computazionalmente costosi e richiedono priori statistici. Per fortuna, il tuo caso è più semplice: tutto quello che dovete fare è montare un rettangolo intorno il contenuto del modulo dell'utente. Coordinate discesa dovrebbe funzionare. Avrete bisogno di una certa tolleranza per il rumore (spazzatura al di fuori del modulo).

Altri suggerimenti

Ecco un breve riassunto di alcune soluzioni OCR disponibili (open source e non): http://googlesystem.blogspot.com/2007/04/open-source-ocr-software-sponsored-by.html

registrazione rigido potrebbe non essere sufficiente. Gli utenti possono modificare il layout e la formattazione di una forma modello, come ad esempio cambiare i font, modificare la posizione di una casella di controllo o di una casella di immissione, rompe un paragrafo in diverse posizioni di nuova riga, ecc Queste differenze sono più complicate da affrontare che la pura spostamento, rotazione o trasformazioni di scala. Inoltre, se l'immagine è immagine binaria (bianco e nero), non credo che questi algoritmi di registrazione di immagini mediche (che lavora in scala di grigi su) aiuterà molto. Le strategie di funzione e di minimizzazione del costo possono essere modificati di conseguenza.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top