2011-11-14 19 views
5

Ho bisogno di completare il progetto demo che mira a riconoscere i denti sull'immagine dei raggi X. Non ho familiarità con l'argomento e non sono sicuro di quale approccio sarebbe preferibile in questo caso. (Stavo pensando alla segmentazione della trama - ma questa è solo un'ipotesi, e non sono ancora sicuro se questa è un'opzione)Riconoscimento forme complesse

La cosa che devo fare è fondamentalmente ottenere la direzione (angolo) del denti e l'insieme di punti che sono posizionati sul contorno di ciascun dente per eseguire calcoli specifici delle attività.

Si prega di consulenza sugli approcci & algoritmi/librerie che potrebbero essere utili. C# sarebbe prefferibile, ma anche altre lingue vanno bene.

Grazie in anticipo.

I campioni di immagine sono tutto simile a questo (io sono particolarmente interessato al secondo e il terzo denti da destra):

risposta

1

Ouch, sembra doloroso! (le immagini) Ho trovato molto utile la libreria di AForge. E 'scritto in C#, e si può scaricare il sorgente qui:

http://www.aforgenet.com/framework/downloads.html

e un buon articolo del suo uso qui:

http://www.codeproject.com/KB/GDI-plus/Image_Processing_Lab.aspx

Forse in scala di grigi e quindi la soglia ad un'intensità di pixel per mostrare solo la parte più leggera del dente, quindi rilevare il bordo o traccia del contorno. Sembra che il bordo superiore del dente abbia l'intensità di pixel più alta, quindi una volta trovati questi contorni, è possibile eseguire alcuni trigsi per trovare l'angolo di questo contorno usando le sue estremità lhs e rhs?

2

Consiglio vivamente usando OpenCV. Ha un wrapper C# disponibile chiamato EmguCV, che dovrebbe essere utile.

Si potrebbe anche considerare la libreria ITK, che ha algoritmi di registrazione dell'immagine e di segmentazione molto più di OpenCV, ma credo che ci sia solo un'implementazione in C++.

Spero che sia utile!