Mój obecny problem:
- Mam wejściowy obraz binarny 3D (macierz 3D, która ma tylko 0 i 1), która składa się z losowych liczb kuli o promieniu r.
- Nie wiemy, ile sfer jest na obrazie.
- Wszystkie kule mają ten sam promień r, ale nie znamy promienia r.
- Kule są rozmieszczone w dowolnym miejscu na obrazie i mogą się na siebie nakładać.
- przykładowy obraz podano poniżej.
Moje wymaganie:
- jaki jest promień r?
Obecnie po prostu spłaszczam obraz, aby pozbyć się osi Z i wykonać wykrywanie krawędzi, i próbuję transformacji Hougha za pomocą: http://rsbweb.nih.gov/ij/plugins/hough-circles.html
Jednak w przypadku transformacji Hougha widzę, że zmienne muszą mieć minimalny promień, maksymalny promień i liczbę okręgów. Próbowałem kilka prób poniżej:
Przy prawidłowych parametrach Hough Transform potrafi dobrze wykryć koła. Ale w prawdziwej aplikacji nie wiem, ile jest sfer, a podejmowanie przez program próby odgadnięcia minimalnego i maksymalnego promienia wydaje się niewykonalne. Czy istnieją inne sposoby na osiągnięcie tego?
Link: /math/118815/finding-radius-r-of-the-overlappable-spheres-in-3d-image
image-processing
3d
Karl
źródło
źródło
Odpowiedzi:
Prostszym rozwiązaniem i znacznie bardziej wydajnym obliczeniowo w porównaniu z transformacją Hougha jest użycie transformacji odległości:
Kolejną zaletą tego rozwiązania w porównaniu z transformacją Hougha jest to, że zapewnia znacznie dokładniejszą wartość promienia.
źródło
Przekształcenie Hougha w swojej ogólnej formie nie wymaga domysłów w promieniu poszukiwanych kręgów ani ich liczby. Być może zostałeś wprowadzony w błąd przez swoje źródło. Transformacja może być kosztownie obliczeniowa w najbardziej ogólnej formie; wszelkie posiadane wcześniej informacje mogą sprawić, że wykonanie algorytmu będzie szybsze i dokładniejsze.
Spodziewałbym się, że Transformacja Hougha, biorąc pod uwagę wasze obrazy wejściowe, znajdzie promień kul z rozsądną dokładnością; na obrazach jest wiele punktów reprezentujących punkty na obwodzie okręgów o tym samym promieniu.
Biorąc pod uwagę ten promień, wydaje się, że reszta problemu została złamana, więc nie będę więcej pisać.
Widzę, że wyjaśnienie Wikipedii dotyczące transformaty Hougha wskazuje również, że można jej użyć do znalezienia obiektów 3D na obrazach 3D, pod warunkiem, że można sparametryzować te obiekty - czym z pewnością może być kula.
źródło