Convolution FIlter를 통과하게 되면 input image가 작아지게 되는데 padding을 이용하면 기존의 크기를 유지할 수 있다
-> 만약 7x7 크기의 이미지를 3x3 필터로 convolution 연산을 수행하게 되면 5x5 크기의 output image를 얻게 된다
input size를 유지하지 못해서 크기가 줄어들게 된다
padding = round down(the kernel size/2)

확장된 영역에서 0을 채운다

확장된 영역에서 가장 가까운 이미지 테두리 값을 채운다

확장된 영역의 테두리를 가로질러 반사된 값을 채운다

the size of padding = round down(kernel size/2) = round down(3/2) = 1

h[n] = h[-n]일 때, convolution과 correlation은 같다
저주파만 통과시키는 필터로, smoothing filter라고도 부른다

그림을 자세히 살펴보겠다

u0보다 값이 작으면 값이 1이기 때문에 곱하면 항상 자기자신의 값이니까 그대로 통과시키는 것처럼 보이게 된다 따라서 Passband이다
반면에 u0보다 큰 값은 값이 0이기 때문에 어떤 신호(input)이 와도 곱하면 0이 된다 따라서 Stopband이다
-> 낮은 값만 통과시키고 높은 값은 통과 못하기 때문에 LPF
Box Filter(or Average Filter)는 유명한 Low Pass Filter(LPF) 중 하나이다
오직 DC (=F(0,0))만 통과시킨다
m x n box filter는 1의 m x n 배열이며 앞에 normalizing constant가 있다
그 값은 1을 계수 값의 합으로 나눈 값입니다.
(ex) 모든 계수가 1인 경우 -> 1/mn)

kernel의 사이즈가 커지면 더 블러리해진다
두 번째 사진은 3x3 kernel, 세 번째 사진은 11x11 kernel, 네 번째 사진은 21x21 kernel이다

Low pass filter (LPF)이다
가우시안 분포는 평균을 중심으로 좌우 대칭의 종 모양을 갖는 확률분포를 말한다
이는 평균 근방에서 분포가 가장 많이 발생하고, 평균에서 멀어질수록 발생 빈도가 종 모양으로 감소하는 형태이다
kernel의 사이즈가 중요한데, kernel의 사이즈가 커질수록 blur의 강도가 더 세진다


(0,0)에서 가장 높다 따라서 (0,0)이 frequency signal이 된다
The area around the origin (원점 주변의 영역)은 저주파 영역이다 대부분의 저주파 신호를 잘 전달할 수 있다

-> 다 더하면 16 나와야 한다

-> 중심과 멀수록 크기가 작아진다
일반적으로 이미지를 흐리게 하거나 noise를 줄이는 데 사용한다

가우시안 필터는 origin pixel에 더 많은 가중치를 부여하기 때문에 Average filter보다 blur 강도가 약하다

LPF를 통해 고주파를 제거하고 이미지에 가우시안 필터를 convolve하면 블러링된 이미지를 얻을 수 있다 이때, 블러링된 이미지를 원래 이미지에서 뺴면 이미지의 디테일한 부분을 얻을 수 있다

원본 이미지에서 블러링된 이미지를 빼면 디테일한 부분을 얻을 수 있고
원본 이미지에서 디테일한 부분을 더하면 더욱 선명한 이미지를 얻을 수 있다


비선형 필터이다
salt noise(밝은 노이즈)와 pepper noise(어두운 노이즈)를 지우는 데에 효과적이다
median filter가 클수록 더 blur가 세진다

참고
https://velog.io/@lcy1221/%EC%BB%B4%ED%93%A8%ED%84%B0-%EB%B9%84%EC%A0%84-10-Spatial-Filtering
https://velog.io/@wyjung0731/Gaussian-Filter
https://cho001.tistory.com/150