Czy można wymienić niektóre deskryptory cech niezmienników skali i rotacji do zastosowania w wykrywaniu cech
Aplikacja służy do wykrywania samochodów i ludzi na wideo zarejestrowanym przez UAV przy użyciu klasyfikatora wieloklasowego.
Do tej pory patrzyłem na SIFT i MSER (który jest niezmiennikiem afinicznym). Patrzyłem również na LESH, LESH opiera się na lokalnym modelu energetycznym, ale jest obliczany w sposób, który nie jest niezmienny obrotowo, starałem się wymyślić sposób wykorzystania energii lokalnej, aby zbudować niezmiennie obrotowo deskryptor funkcji, czytam tutaj Jakie są darmowe alternatywy dla SIFT / SURF, które można wykorzystać w aplikacjach komercyjnych? , że „jeśli przypiszesz orientację do punktu zainteresowania i odpowiednio obrócisz łatkę obrazu, otrzymasz za darmo niezmienność rotacji”, ale nie wiem, czy to w ogóle ulżyło lub w jaki sposób mogę zastosować to do mojego problemu, każda pomoc byłaby doceniam, dzięki
Odpowiedzi:
Jeśli chodzi o alternatywy dla SIFT / SURF, pytanie, które łączysz, zapewnia bardzo dobre odpowiedzi.
Mogłem przeczytać jeszcze dwa pytania:
Deskryptory cech budynków
To ważny temat badawczy. Dobre deskryptory funkcji nie są czymś, co każdy może zbudować po południu. Ludzie publikują artykuły, gdy pomyślnie modelują deskryptory funkcji o pożądanych właściwościach. Jest to powód, dla którego obecnie używa się tylko garstki najnowocześniejszych deskryptorów i właśnie to radzę: znaleźć deskryptory funkcji odpowiednie dla twoich potrzeb .
Osiągnięcie niezmienności rotacyjnej „za darmo”
|black->gray->white|
|white->gray->black|
W ten sposób zawsze obliczysz deskryptor na łatce obrazu o tej samej dominującej orientacji (obrócona łata), dzięki czemu uzyskasz niezmienność rotacyjną.
źródło
Innym sposobem na uzyskanie niezmienności obrotowej za darmo jest wybranie obiektów, które są niezmiennie obrotowe. Na przykład okrąg lub pierścień jest niezmienny dla obrotów.
Ekstraktor funkcji : wykrywanie krawędzi przebiegu. Dla każdego sąsiedztwa
NxN
pikseli obliczyć histogram 2D kierunku i krawędzi. Znajdź wszystkie punkty, które mają wysoką całkowitą wielkość i duży kąt rozproszenia . Usuń wszystkie punkty, które nie mają symetrii promieniowej.Deskryptor funkcji : Znajdź środek każdego okrągłego obiektu. Ponieważ obiekt jest okrągły, nie ma dominującego kąta gradientu. Wszystkie kąty są równe. Zatem profil promieniowy (suma wartości pikseli we współrzędnych biegunowych) jest deskryptorem niezmiennym kąta.
Nawiasem mówiąc, jest to jeden z powodów, dla których fiduciale są wytwarzane jako koła na obwodach elektrycznych:
źródło
Wolę przyjrzeć się KAZE / AKAZE, które osiągają równie dobre wyniki przy znacznym przyspieszeniu. Przypadki deformacji są również tolerowane. OpenCV niedawno uzyskał implementację poprzez GSoC 2014. Można go znaleźć tutaj .
źródło
Jeśli odwzorujesz lokalną łatę wokół punktu cechy na współrzędne log-biegunowe (z punktem początkowym w punkcie zainteresowania), zmiany skali odpowiadają translacji wzdłuż osi log-radial, a obroty odpowiadają translacjom (z zawijaniem) wzdłuż osi kątowej. Jeśli następnie obliczysz dwuwymiarową transformatę Fouriera, translacje w kierunkach promieniowym i kątowym stają się przesunięciami fazowymi w dziedzinie częstotliwości. Jeśli następnie obliczysz wartość bezwzględną transformacji Fouriera, faza znika całkowicie, a zmiany skali i obroty oryginalnej łatki obrazu stają się niezauważalne. Zatem wartość bezwzględna przekształcenia Fouriera 2D obrazu we współrzędnych log-poolar będzie deskryptorem obiektu.
Cóż, przynajmniej w teorii. W praktyce musisz ograniczyć promieniowe przedłużenie plastra. Oznacza to, że musisz wyciąć dużą część danych przed obliczeniem transformacji Fouriera (która jest tak naprawdę serią Fouriera), więc tłumaczenie wzdłuż logarytmicznego kierunku promieniowego we współrzędnych logarytmiczno-biegunowych nie odpowiada dokładnie przesunięcie fazowe w dziedzinie częstotliwości, więc metoda nie jest idealnie niezmienna w skali. Podejrzewam, że jeśli użyjesz jakiejś funkcji okna - bez nieciągłości - na współrzędnej log-promień i pomnożysz ją przez intensywność kolorów, problem ten zostanie nieco złagodzony.
Jednak deskryptor funkcji powinien nadal być idealnie niezmienny.
Odniesienie: Niezmienność skali bez wyboru skali
źródło
Możesz także sprawdzić SZYBKO i ZNISZAĆ .
źródło