2011-11-14 18 views
5

Muszę zakończyć projekt demonstracyjny, którego celem jest rozpoznanie zębów na obrazie Xray. Nie znam tego tematu i nie jestem pewien, które podejście byłoby preferowane w tym przypadku. (Myślałem o segmentacji tekstur - ale to tylko domysły, i nadal nie jestem pewien, czy jest to opcja)Rozpoznawanie kształtów złożonych

Rzeczą, którą muszę zrobić, to po prostu uzyskać kierunek (kąt) zęby i zestaw punktów, które są umieszczone na konturze każdego zęba, aby wykonać obliczenia specyficzne dla zadania.

Porady na temat podejść & algorytmów/bibliotek, które mogą być pomocne. C# byłoby preferowane, ale inne języki też są w porządku.

Z góry dziękuję.

próbek obrazu są podobne do tego (jestem szczególnie zainteresowany w drugim i trzecim zębów z prawej):

Odpowiedz

1

Ouch, wygląda bolesne! (zdjęcia) Zauważyłem, że biblioteka AForge jest bardzo przydatna. Jest napisany w języku C#, można pobrać źródła tutaj:

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

i dobry artykuł o jej stosowanie tutaj:

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

Może skali szarości, a następnie progową przy wysokiej intensywności pikseli aby pokazać tylko najjaśniejszą część zęba, następnie wykrycie krawędzi lub ślad konturu. Wygląda na to, że górna krawędź zęba ma najwyższą intensywność pikseli, więc gdy te kontury zostaną znalezione, możesz zrobić kilka wyzwalaczy, aby znaleźć kąt tego konturu, używając lhs i kończyn górnych?

2

zdecydowanie polecam korzystania OpenCV. Posiada opakowanie C# o nazwie EmguCV, które powinno być pomocne.

Możesz także rozważyć przeglądanie biblioteki ITK, która ma o wiele więcej algorytmów rejestracji i segmentacji obrazu niż OpenCV, ale uważam, że jest tylko implementacja C++ tego.

Mam nadzieję, że jest to pomocne!