Mam następujący obraz:jak wykryć środek okręgu rozmyte z OpenCV
Są krzywe na zdjęciu. Chciałbym znaleźć środek kół zawierających krzywe.
Próbowałem transformacji OpenCV i Hough Circle, ale nie przyniosłem żadnych rezultatów.
Mam następujący obraz:jak wykryć środek okręgu rozmyte z OpenCV
Są krzywe na zdjęciu. Chciałbym znaleźć środek kół zawierających krzywe.
Próbowałem transformacji OpenCV i Hough Circle, ale nie przyniosłem żadnych rezultatów.
Naturalnym kandydatem będzie cvHoughCircles
. Każda część każdej krzywej dodaje "głos" dla tripletu X/Y/R
, który identyfikuje punkt środkowy. Teraz masz tylko część kręgów, więc liczba głosów jest ograniczona, a dokładność zmniejszona, ale prawdopodobnie podejrzewasz tak bardzo.
Oto, co chciałbym spróbować najpierw:
Zauważmy, że jeśli narysować promienie od prawdziwego centrum kręgów, lokalnego maksimum intensywności obrazu wzdłuż nich występują w odstępach niezależnych od orientacji promienia. Te interwały są różnicami między długością promieni kolejnych kółek.
W ten sposób ustal kierunki liczby lub promienia, powiedzmy 16 równo rozmieszczone w [0, pi] i określ funkcję kosztu sparametryzowaną na (xc, yc) współrzędnych środka i promieniach ri kół, z koszt równy, na przykład, wariancji maksimów lokalizacji wzdłuż promienia między różnymi promieniami.
Prawdopodobnie lepsze pytanie dla [DSP] (http://dsp.stackexchange.com/) – Maurits
Wygląda na to, że centrum znajduje się poza obrazem, czy to prawda? – MSalters
Tak, środek jest na zewnątrz, ale używam większego obrazu z tym na środku, kiedy używam transformacji kółka. – JingKe