Czy mógłby Pan jasno wyjaśnić, jaka jest różnica między korelacją a splotem wykonywanym przez filtr na obrazie?
Mam na myśli, jeśli chodzi o definicję przetwarzania sygnału, wiem, że splot opisuje wyjście systemu LTI, to znaczy jeśli system LTI wytwarza wyjście z powodu splotu z systemem wejściowym, wówczas sygnał wyjściowy można opisać jako wynik splotu sygnał wejściowy i odpowiedź impulsowa systemu LTI. Jeśli chodzi o korelację, opisuje ona podobieństwa między sygnałami. Ale w jaki sposób splot i korelacja wpływają na obraz i jak różnią się pod względem efektów?
Dzięki
image-processing
convolution
image
correlation
the_naive
źródło
źródło
Odpowiedzi:
Splot jest korelacją z filtrem obróconym o 180 stopni. Nie robi to różnicy, jeśli filtr jest symetryczny, jak gaussowski lub Laplacian. Ale robi to dużą różnicę, gdy filtr nie jest symetryczny, jak pochodna.
Powodem, dla którego potrzebujemy splotu jest to, że jest on asocjacyjny, podczas gdy korelacja w ogóle nie jest. Aby zobaczyć, dlaczego tak jest, pamiętaj, że splot jest zwielokrotnieniem w dziedzinie częstotliwości, co oczywiście jest skojarzone. Z drugiej strony korelacja w dziedzinie częstotliwości jest mnożona przez złożony koniugat, który nie jest asocjacyjny.
Asocjatywność splotu umożliwia „wstępne splatanie” filtrów, dzięki czemu wystarczy splot obrazu za pomocą jednego filtra. Załóżmy na przykład, że masz obraz , który musisz splotować za pomocą g, a następnie za pomocą h . f ∗ g ∗ h = f ∗ ( g ∗ h ) . Oznacza to, że można convolve g i h najpierw do jednego filtru, a następnie convolve F z nim. Jest to przydatne, jeśli potrzebujesz splotić wiele obrazów za pomocą g i h . Możesz wstępnie obliczyć kf g h f∗g∗h=f∗(g∗h) g h f g h , a następnie ponownieużyj k wiele razy.k=g∗h k
Jeśli więc dopasowujesz szablon , tj. Szukasz jednego szablonu, korelacja jest wystarczająca. Ale jeśli musisz używać wielu filtrów jeden po drugim i musisz wykonać tę operację na wielu obrazach, rozsądnie jest z wyprzedzeniem przekształcić wiele filtrów w jeden filtr.
źródło