Będę korzystać z funkcji o stałej skali przekształcić algorytm jako przykład. SIFT tworzy przestrzeń skali na podstawie skalowanego filtrowania obrazu gaussowskiego, a następnie oblicza różnicę gaussów w celu wykrycia potencjalnych punktów zainteresowania. Punkty te są zdefiniowane jako lokalne minima i maksima dla różnicy gaussów.
Twierdzi się, że takie podejście jest niezmienne w skali (wśród innych zagadkowych niezmienników). Dlaczego to? Nie jest dla mnie jasne, dlaczego tak jest.
Odpowiedzi:
Termin „niezmiennik skali” oznacza tutaj, co następuje. Załóżmy, że masz obraz I i wykryłeś cechę (czyli punkt zainteresowania) f w pewnym miejscu (x, y) i na pewnym poziomie skali s . Powiedzmy teraz, że masz obraz I ' , który jest skalowaną wersją I (na przykład próbkowania w dół). Następnie, jeśli twój detektor cech jest niezmienny w skali, powinieneś być w stanie wykryć odpowiednią cechę f ' w I' w odpowiedniej lokalizacji (x ', y') i odpowiedniej skali s ' , gdzie (x, y, s) i (x ', y', s ') są powiązane przez odpowiednią transformację skalowania.
Innymi słowy, jeśli wykrywacz niezmiennik skali wykrył punkt funkcji odpowiadający czyjejś twarzy, a następnie powiększysz lub pomniejszysz kamerę w tej samej scenie, nadal powinieneś wykryć punkt funkcji na tej twarzy.
Oczywiście, chciałbyś również mieć „deskryptor funkcji”, który pozwoliłby ci dopasować dwie funkcje, a dokładnie to daje SIFT.
Tak więc, ryzykując dalsze zamieszanie, istnieją tutaj dwie rzeczy, które są niezmienne w skali. Jednym z nich jest wykrywacz punktów zainteresowania DoG, który jest niezmienny w skali, ponieważ wykrywa określony typ cech obrazu (plamy) niezależnie od ich skali. Innymi słowy, wykrywacz DoG wykrywa plamy o dowolnej wielkości. Inną rzeczą niezmienną dla skali jest deskryptor elementu, który jest histogramem orientacji gradientu, który pozostaje mniej więcej podobny dla tej samej cechy obrazu pomimo zmiany skali.
Nawiasem mówiąc, różnica Gaussów jest tutaj stosowana jako przybliżenie do filtru Laplaciana-Gaussa.
źródło
Różnica gaussów nie jest niezmienna w skali. Niezmiennik skali SIFT (do ograniczonego stopnia), ponieważ szuka ekstremy DoG w przestrzeni skali - to jest znajdowanie skali w DoG ekstremalnej zarówno przestrzennie, jak i względem sąsiednich skal. Ponieważ wyjściowy DoG jest uzyskiwany dla tej stałej skali (która nie jest funkcją skali wejściowej), wynik jest niezależny od skali, czyli niezmienny dla skali.
źródło