Intuicja splotu w przetwarzaniu obrazu

9

Przeczytałem wiele dokumentów na temat splotu w przetwarzaniu obrazu i większość z nich mówi o jego formule, kilku dodatkowych parametrach. Nikt nie wyjaśnia intuicji i prawdziwego znaczenia robienia splotu na obrazie. Na przykład intuicja wyprowadzania na wykresie sprawia, że ​​jest on na przykład bardziej liniowy.

Myślę, że szybkie podsumowanie definicji jest następujące: splot jest zwielokrotniony przez kwadrat i obraz między jądrem, a po tej sumie ponownie i zakotwiczony. I to nie ma dla mnie żadnego sensu.

Zgodnie z tym artykułem na temat splotu nie wyobrażam sobie, dlaczego splot może robić „niewiarygodne” rzeczy. Na przykład wykrywanie linii i krawędzi na ostatniej stronie tego łącza. Wystarczy wybrać odpowiednie jądro splotu, aby uzyskać fajne efekty (wykrywanie linii lub wykrywanie krawędzi).

Czy ktoś może podać jakąś intuicję (nie musi to być dokładny dowód) na temat tego, jak to zrobić?

hqt
źródło

Odpowiedzi:

13

Myślę, że najprostszym sposobem myślenia o konwolucji jest metoda zmiany wartości piksela na nową wartość na podstawie masy pobliskich pikseli.

Łatwo zrozumieć, dlaczego Box Blur:

_____________
|1/9|1/9|1/9|
|1/9|1/9|1/9|
|1/9|1/9|1/9|
-------------

Pracuje. Konwertowanie tego jądra jest tym samym, co przechodzenie przez każdy piksel zdjęcia i uczynienie nowej wartości piksela średnią dla siebie i ośmiu otaczających pikseli.

Jeśli to otrzymasz, możesz zobaczyć, dlaczego działa Rozmycie Gaussa:

_____________________
|.01|.04|.07|.04|.01|
|.04|.16|.26|.16|.04|
|.07|.26|.41|.26|.07|
|.04|.16|.26|.16|.04|
|.01|.04|.07|.04|.01|
---------------------

Jest to w zasadzie to samo, z tym wyjątkiem, że uśrednianie jest ważone silniej w kierunku pikseli, które są bliżej. Funkcja, która określa, jak szybko spadają ciężary w miarę oddalania się, jest funkcją Gaussa , ale nie trzeba znać jej szczegółów, aby użyć jej do rozmycia.

Jądro wykrywania krawędzi w połączonym artykule ma sens, jeśli spojrzysz na niego wystarczająco długo:

__________
|-1|-1|-1|
|-1|.8|-1|
|-1|-1|-1|
----------

Zasadniczo mówi, że wartość każdego piksela zaczyna się od 8/9 jego oryginalnej wartości. Następnie odejmij wartości każdego otaczającego go piksela, aby uzyskać nowy piksel.

Jeśli więc wartość piksela jest wysoka, a wartość pikseli wokół niego również jest wysoka, wzajemnie się anulują. Jeśli wartość piksela jest niska, a wszystkie piksele wokół niego są również niskie, również się anulują. Jeśli wartość piksela jest wysoka, a wartość pikseli wokół niego jest niska (jak w pikselach na krawędzi obiektu), nowa wartość piksela będzie wysoka.

Brian
źródło
6

Jednym ze sposobów myślenia o splotach / korelacjach jest to, jakbyś szukał jakiegoś sygnału w swoich danych. Im bardziej dane wyglądają jak jądro, tym wyższa będzie wynikowa wartość. W rzeczywistości biorę odwrotność jądra, tj. Jak w korelacji krzyżowej, ale jest to w zasadzie to samo.

Załóżmy na przykład, że szukasz kierunku w danych 1d.

Jądro może być

[-1 1]

i zastosujmy to do danych

[2 2 2 2 2 1 1 1 1 1]

Wynik będzie

[0 0 0 0 0 1 0 0 0 0]

Który wykrywa lokalizację kroku. Większy krok dałby większą wartość.

Działa to, ponieważ pomnożenie wzorca przez wzorzec występujący w jądrze daje wysoką wartość.

Wykrywanie krawędzi (lub dowolne inne wykrywanie wzorców) działa w ten sam sposób, na przykład w jądrze

[-1 2 -1]

W ten sposób można również rozważyć rozszerzenia do wyższych wymiarów.

Powinno to dać ci intuicję co najmniej na temat niektórych zastosowań przetwarzania obrazu w konwolucji.

Bitowe
źródło
4

Jeśli uważasz, że splot jest trochę zbyt trudny do zrozumienia, polecam rozpocząć wyszukiwanie na temat morfologii matematycznej stosowanej do przetwarzania obrazu, główną ideą morfologii matematycznej jest to, że wykonasz operację bardzo blisko splotu, aby „zmienić” morfologia obrazu, ale zachowaj informacje o topologii, w ten sposób możesz zrobić zdjęcie stojącego człowieka, szkieletu, który jest prawie ludzkim kijem, spróbuj zastosować operację erozji, następnie rozszerzyć operację, a następnie przejść do otwartej przestrzeni / zamknij operację, zaczniesz rozumieć, co potrafi maska ​​zastosowana do każdego piksela obrazu i jak można ich użyć w dużym scenariuszu, aby osiągnąć świetne wyniki (takie jak znalezienie miejsca, w którym można zacząć coś od ostatniej erozji), raz rozumiesz morfologię matematyczną, splot jest nieco trudniejszy,ponieważ jest on oparty na rachunku różniczkowym i zdefiniowany po zintegrowaniu, ale nadal wiele splotów jest łatwych do zrozumienia, takich jak rozmycie środkowe, rozmycie gaussowskie, wyostrzenie, wykrywanie krawędzi, laplace, gradient itp.

H_DANILO
źródło