2011-12-16 6 views
6

Supponiamo di disporre di un sistema che esegue la scansione dei documenti, in cui tutti i documenti utilizzano lo stesso tipo di carattere e dimensioni.Come rilevare forme esatte e predefinite con trasformata di hough, come una "W"?

In questi documenti, ci sarà sempre la stessa lettera "W". Diciamo che è sempre 20 px grande. Come posso impostare la trasformazione di hough per riconoscere questa lettera "W" a 20 px di grandi dimensioni nei miei documenti?

risposta

3

Una rapida ricerca su Google produce le seguenti informazioni di interesse:

Generalizing the Hough Transform to Detect Arbitrary Shapes

e si presenta come un lecture utilizzando la carta di cui sopra come la sua fonte.

Inoltre, se si tratta di una "W" effettiva, un motore OCR come Tesseract sarà più adatto alle proprie esigenze?

+0

Tesseract non è perfetto, ma è decisamente migliore di qualsiasi soluzione improvvisata per il riconoscimento dei caratteri. – Sam

+0

Vero! Lo scenario è piuttosto arbitrario però. Quello che stavo morendo è il fatto che sono un paio di linee diritte. Mi sento come se la trasformazione di Hough fosse in grado di gestire le forme che sono semplici linee rette abbastanza facilmente. Non è questo il caso? Votare, cool link a tesseract. –

1

La trasformazione di Hough per le linee trova le equazioni di linea più adatte. Dovresti eseguire un'ulteriore elaborazione per trovare solo i segmenti di linea. Se lo spessore del carattere è di diversi pixel, per trovare efficacemente le linee potresti voler ridurre lo spessore a un pixel. Esistono tecniche per farlo, ma anche varie trappole algoritmiche.

Una volta ottenuti i segmenti di linea, è comunque necessario scrivere un algoritmo per identificare i caratteri in base alla posizione e all'angolo dei segmenti di linea. È più difficile di quanto non appaia prima.

Una correlazione incrociata normalizzata (corrispondenza modello) potrebbe funzionare se si è certi che l'immagine sarà sempre in una determinata rotazione, i caratteri avranno sempre le stesse dimensioni, ecc. Ma anche per le scansioni vedrete qualche rotazione e qualche variazione in contrasto.

Tutto questo a parte, è probabilmente più economico a lungo termine utilizzare un pacchetto OCR commerciale o un progetto open source ragionevolmente buono. L'OCR è difficile da implementare se non si ha già familiarità con l'elaborazione delle immagini.

Problemi correlati