cel, który chcesz osiągnąć potrzebne jest jeszcze obliczyć honografię między płaszczyzną uziemienia, jego położenie na obrazie oglądanym przez kamerę i jego pozycję w widoku orła.
Jest to tradycyjnie obsługiwane przez wyodrębnianie funkcji (narożników lub punktów kluczowych) w większości rurociągów Computer Vision, ale jest to niepraktyczne: nie ma w nich funkcji (ani zmieniających się funkcji) na drodze.
Co można zrobić zamiast tego jest obliczenie tych homographies w etapie kalibracji, z następującą procedurą:
umieścić aparat na pojeździe docelowym. Umieść znany prostokątny wzór (zazwyczaj szachownicę) leżący na płaskiej ziemi przed samochodem. Jeśli chcesz metrycznych odległości, to musisz również znać rozmiar wzoru, w przeciwnym razie zmierzysz tylko odległości względne.
Wykonaj zdjęcie wzoru kalibracji za pomocą tej konfiguracji.
Na obrazie wzoru należy go wykryć. Można to zrobić na kilka sposobów: jeśli masz obraz referencyjny wzoru, możesz go wykryć automatycznie lub możesz ręcznie kliknąć 4 zewnętrzne rogi. W ten sposób uzyskasz co najmniej czteropunktową zgodność (1 dla każdego zewnętrznego rogu wzoru). Powiązania punktowe są ustalane pomiędzy punktami obrazu (np. 4 narożnikami) i pozycją odniesienia, która jest albo pozycją tego punktu w obrazie odniesienia wzoru (jeśli oyu go ma), albo pozycją, która ma być dla tego punktu punkt w widoku orła.
Z korespondencji oszacuj homografię H
. H
to macierz 3x3 (zobacz odniesienie do Computer Vision, online lub podręcznik).
Spowoduje to wyświetlenie transformacji między tym, co kamera widzi, a położeniem odniesienia wzoru kalibracji. Jeśli wziąłeś jako odniesienie widok z przodu równoległego wzoru lub jego pożądanych współrzędnych w widoku orła, masz homografię, której szukasz. Jeśli nie, musisz oszacować drugą homografię i połączyć wyniki.
Należy pamiętać, że ta aplikacja jest rozpatrywana pod numerem Gary Bradski's Learning OpenCV book. Możesz przeczytać więcej na ten temat w książce i znaleźć oryginalny kod online.
Co z [tym wątkiem] (http://stackoverflow.com/questions/7838487/executing-cvwarpperspective-for-a-fake-deskewing-on-a-set-of-cvpoint)? – karlphillip
Dołącz kod, który już napisałeś, i wskaż, która jego część powoduje problem. –
Wygląda to trochę jak materiał na poziomie badań.Spróbuj zapoznać się z dokumentami PDF związanymi z tym tematem: [ten] (http://www.eee.nuigalway.ie/Research/car/documents/docualain_issc10.pdf) wydaje się obiecujący, ale nie przeczytałem go, tylko spojrzał na kilka stron. W każdym razie jest to prawdopodobnie rodzaj dokumentów, których powinieneś szukać. – didierc