Qual è il modo migliore per rilevare gli angoli di una fattura / ricevuta / foglio di carta in una foto? Questo deve essere utilizzato per la successiva correzione della prospettiva, prima dell'OCR.
Il mio approccio attuale è stato:
RGB> Grigio> Rilevamento Canny Edge con soglia> Dilata (1)> Rimuovi piccoli oggetti (6)> Cancella oggetti boarder> scegli blog più grandi in base all'area convessa. > [rilevamento angoli - Non implementato]
Non posso fare a meno di pensare che ci debba essere un approccio statistico / "intelligente" più robusto per gestire questo tipo di segmentazione. Non ho molti esempi di formazione, ma probabilmente potrei mettere insieme 100 immagini.
Contesto più ampio:
Sto usando matlab per prototipare e sto pianificando di implementare il sistema in OpenCV e Tesserect-OCR. Questo è il primo di una serie di problemi di elaborazione delle immagini che devo risolvere per questa specifica applicazione. Quindi sto cercando di lanciare la mia soluzione e familiarizzare con gli algoritmi di elaborazione delle immagini.
Ecco alcune immagini di esempio che vorrei che l'algoritmo gestisse: Se desideri accettare la sfida, le immagini di grandi dimensioni si trovano su http://madteckhead.com/tmp
(fonte: madteckhead.com )
(fonte: madteckhead.com )
(fonte: madteckhead.com )
(fonte: madteckhead.com )
Nel migliore dei casi questo dà:
(fonte: madteckhead.com )
(fonte: madteckhead.com )
(fonte: madteckhead.com )
Tuttavia fallisce facilmente in altri casi:
(fonte: madteckhead.com )
(fonte: madteckhead.com )
(fonte: madteckhead.com )
Grazie in anticipo per tutte le fantastiche idee! Amo così!
EDIT: Hough Transform Progress
D: Quale algoritmo raggrupperebbe le linee hough per trovare gli angoli? Seguendo i consigli delle risposte sono stato in grado di utilizzare la trasformazione di Hough, selezionare le linee e filtrarle. Il mio approccio attuale è piuttosto rozzo. Ho ipotizzato che la fattura sarà sempre meno di 15 gradi fuori allineamento con l'immagine. Finisco con risultati ragionevoli per le linee se questo è il caso (vedi sotto). Ma non sono del tutto sicuro di un algoritmo adatto per raggruppare le linee (o votare) da estrapolare per gli angoli. Le linee di Hough non sono continue. E nelle immagini rumorose possono esserci linee parallele, quindi sono richieste metriche di forma o distanza dall'origine della linea. Qualche idea?
(fonte: madteckhead.com )