Lecture4 filter 09/29
Shared on October 11, 2026
설명을 드렸죠. ADTBT랑 HOMOGENIALTY 이 두가지 증명해주는 것을 잘 기억해주시고요. 그래서 MOVING AVERAGE, BOX 필터 같은 경우에는 이렇게 증명을 해보면 ADTBT랑 HOMOGENIALTY를 둘 다 만족을 하기 때문에 리뉴얼하다고 얘기를 할 수가 있고 리뉴얼 필터를 사용하는 것을 컨볼리션이라고 얘기를 할 수가 있습니다. 그래서 이따가 요거 스트레스 볼지 오버레이션도 볼 거고요. 이번에 저희가 무빙에버리지를 이용을 해서 이렇게
노이즈를 제거를 했을 때 이런 문제점이 발생한다. 그래서 줄무늬 패턴으로 발생하는 문제점이 왜 발생하는지를 기억을 잘 해주세요. 그래서 박스 필터 안에 내부에서는 어떤 위치든 상관없이 모두 다 K제곱분의 1의 위치를 가지게 되고 이 필터의 바깥쪽은 0을 가지죠. 그래서 저희 이미지 있는 모든 픽셀들 0 또는 K제곱분의 1을 갖게 되는데 이 필터의 모양 자체가 사각형으로 생각하기 때문에 이 필터의 바운더리에서 바로 옆 픽셀이 0인데
이 픽셀은 K제곱분의 1의 웨이트를 가지는 이런 상황이 발생하기 때문에 저희가 이 필터를 슬라이드 윈도우 했을 때 이런 줄무늬 패턴이 발생한다는 것을 설명을 드렸죠. 그래서 이거를 개선하기 위해서 나왔던 게 가오시안 필터였던 거고요. 그래서 가오시안 필터는 필터의 내부에서 모든 것을 다 동등하게 볼 게 아니라 우리가 필터의 가운데 센터 포인트에 가까울수록 좀 더 높은 웨이트를 줘서 반영을 해보자 라는 거였죠.
그래서 가오시안 디스트리리션을 사용해서 저희가 이 Gaussian 필터를 만들 수가 있고요 원래 Gaussian distribution은 이제 어떤 continuous distribution 확률분포가 되는데 이거를 저희가 이미지에서 사용을 하려고 하면은 이렇게 이상적인 값으로 변환을 해줘야 되고요 실제로 예를 들어 5x5의 이렇게 커너를 가정을 했을 때 이런 정도의 weight가 들어가고요 그래서 summation을 해보면은 완벽하게 1이 되지 않을 수도 있어요
왜냐하면 2, 3화 과정에서 디스크립 타이징 하면서 이게 조금 달라질 수는 있는데 그게 이제 중요한 것은 아니고 이 Gaussian 필터의 목적을 잘 이해를 해주시면 되겠습니다 그래서 코너를 가운데에 있을수록 높은 웨이트를 가지고 코너를 갈수록 점점 더 웨이트가 작아지는 형태 이렇게 만들고 나면 저희가 어떤 한 픽셀이 가지는 웨이트 자체가 굉장히 다양한 각종을 가질 수가 있죠 필터 외부에 있으면 0이 되는 거고
필터 내부에 있더라도 센터에서 얼마나 가까웠고 원에 따라서 0에 가까운 값부터 여기서는 예를 들어 0.159에 더 높은 값을 갖게 되는 그래서 픽셀간에 격차가 생기기 때문에 앞선 박스 필터에 스트라이프 패턴 문제를 해결을 할 수가 있다는 거죠 그래서 가오시아 필터도 박스 필터랑 마찬가지로 필터 내부에서 여러 픽셀의 값을 조합을 하는 거죠 픽셀 값을 weighted sum 해서 조합을 하는 거다 보니까
노이즈를 제거하는 데 효과를 보이게 되는 거고요 반면에 박스 필터에 대비해서는 좀 더 자연스러운 이미지를 우리가 만들어낼 수가 있다는 거죠 그래서 이렇게 가온 시간 필터를 설명을 했었고 가온 시간 필터의 성질 중에서 로우 패스 필터라는 로우 프리퀀시 정보들을 통과를 시키고 거꾸로 얘기하면 엣지나 코너 같은 하이 프리퀀시 정보들이 제거되는 특징을 갖고 있고요
그 다음에 가온 시간 자체가 두 개의 가온 시간을 합치면 더 큰 스탠드업 대비성을 가지는 가온 시간을 우리가 시뮬레이션을 할 수가 있고 마지막으로는 X축, Y축을 이제 분리를 할 수가 있죠 가오시안 디스트리비션의 수식 자체에서 x축이랑 y축을 분리를 하면은 하나의 2차원 가오시안은 두 개의 원디 가오시안의 곡으로 표현이 된다 이렇게 이해해주시면 되겠습니다 그래서 이제 뭐 가오시안 커널이 리니어한지 증명을 해볼 수가 있을 거고요
여러 커널 배웠죠. 아이덴티티 커널부터 시작해서 픽셀을 몇 칸 옆으로 옮기는 시프트 커널 여기에 있었고 아까 얘기했던 이 하이프레퀸시 정보 엣지나 코너 같은 정보를 살리는 하이패스 커널이 있죠. 그래서 이 하이패스 커널은 가오샤 커널이랑 하는 역할이 어떻게 보면 반대라고 우리가 얘기를 할 수가 있습니다. 가오샤는 하이프레퀸시 정보를 제거하고 로우스컨시 정보를 패스 시키는 반면에 하이패스는 로우 프레퀸시 정보를 제거하고
하이프레퀸시 정보를 패스를 시키는 효과를 가지게 된다. 그 다음에 샤프닝 커널 같은 경우에는 원본 이미지에다가 하이피컷이 정보를 강화를 하기 위해서 만드는 샤프닝 커널이구요 그래서 이 커널 모양 자체가 아이덴티 커널에다가 하이피컷이 커널을 붙여놓은 것과 하이패스 커널을 붙여놓은 것과 동일한 모양을 붙여야 됩니다
마지막 엠버스 코너까지 다 썼고요 네, 이걸 중요했던 소백커널 그래서 저희가 결국에 이미지에서 엣지를 찾을 때 엣지라고 하는 정보를 찾으려면 엣지라는 것은 결국에 어떤 물체와 물체를 가르는 선을 얘기하는 거죠 그러면 가로 엣지를 우리가 갖는다는 것은 이 가로 엣지 하는 역할은 엣지를 기준으로 위와 아래의 대비가 클 때 엣지가 만들어집니다.
그렇겠죠? 그래서 저희가 이렇게 위와 아래의 디퍼런스를 커널로 만들어주면 이 커너를 이미지에다 필터링 영상을 통해서 얻은 결과를 봤을 때 가로 방향의 엣지를, X쪽 방향의 엣지를 얻을 수가 있고요. 그 다음에 상태로 왼쪽과 오른쪽 차이를 이제 local difference를 계산을 하게 되면은
이제 세로 방향의 엣지를 얻어낼 수가 있다는 거죠. 그래서 두 개를 합치면은 어떤 방향의 엣지가 형성이 되어 있고 그리고 이 엣지의 세기가 어느 정도의 인지를 계산을 해낼 수가 있다. 까지 소비커널 했었고 마지막으로 미디움커널 얘도 마찬가지로 이제 Denoising을 위해서 사용되는 커널인건데 커널 내부의 값들 중에서 이제 중간 값을 하나 지정을 해서
컴플루션의 결과로 사용을 하는 이런 커널도 있었다고 말씀해 드렸죠 그래서 이제 지난 시간에 커널들을 여러개를 배웠는데 여러분들이 각각의 커널이 왜 이런 모양으로 생긴거고 이런 모양으로 생겼기 때문에 어떤 영향을 받게 되는지 어떤 결과를 받게 되는지를 기억을 해주시면 되겠습니다 네 그래서 이제 오늘 내용 나갈거구요 오늘 일단은 저희 이제 앞에서 linearity 증명하는거
additivity랑 homogeneity 증명하는거를 먼저 이제 뭐 recap을 해볼 수가 있을거구요 그래서 box커널에는 이런식으로 수식을 쓸 수가 있는데 box커널에 대해서 증명을 하면은 이렇게 증명이 되는거고 여기서 Thresholding Operation, Binerization이라고 하는 이거를 저희가 어떤 필터링 연산으로 생각을 했을 때 얘가 linear한지 아닌지를 생각을 해볼 수가 있고요 Thresholding이라는 거는 어떤 픽셀의 값이
즉적값 이상이면은 예를 들어서 여기서 100보다 픽셀의 값이 크면은 1로 만들고 0보다 작으면 0으로 만드는 뭐 1 0이든 250, 뭐 0이든 이렇게 저희가 두 값 중 하나로 보내는 것을 Threshold이라고 얘기를 했고 여기서 사용하는 백을 Threshold라고 얘기해요. 경계값. 백을 경계값 Threshold라고 얘기를 할 수가 있습니다. 그러면은 우리가 이 Thresholding Operator이 linear한지 아닌지를 보려면은
얘가 필터링에서 관점에서 봤을 때 어떤 모양의 필터 또는 어떤 모양의 커널을 사용을 해야 될지를 생각을 해봐야 될 거고요. 사실 이 Thresholding Operator를 생각을 하면은 주변 픽셀에 영향을 받지는 않고 자기 자신의 값만 이제 상관이 있는 거죠. 그래서 여기 수식에서 저희가 정의를 했듯이 n,n번째의 픽셀에 대해서 우리가 이 Thresholding Operator를 계산을 할 때 우리가 필요한 것은 n,n만 필요하지 주변 픽셀은 필요가 없습니다. 그 얘기는 뭐냐면은
이 Thresholding Operator는 이제 원 바이원 모양의 커널을 사용하는 걸로 우리가 생각을 할 수가 있는 거죠. 그래서 우리가 어떤 G라는 필터를 고려를 했을 때 얘는 주연필서를 보지 않고 자기 자신만 보는 1x1의 외이터를 가지게 될 거다 라고 생각을 할 수 있고요 얘가 이제 리니어인지 아닌지 확인을 하기 위해서 우리가 박스필터처럼 어떤 수식을 시그마의 형태로 정의를 하려고 하면
얘가 시그마의 형태로 잘 정의되지는 않을 것 같아 보이죠 그래서 이게 이제 리뉴얼지 아닌지 증명을 하기 위해서는 우리가 Additivity랑 Homogeneity를 증명을 해야 되는 건데 얘가 Sigma의 형태로 안 만들어질 것 같아요 Sigma의 형태로 만들어지지 않는다는 것은 Linear하지 않을 것 같다는 얘기와 동료한 거고요 Linear하지 않다는 증명을 거꾸로 해야 되면은 우리가 뭘 증명을 해야 되냐면은 Linearity 또는 Homogeneity 둘 중 하나라도 만족을 못 시킨다는 것을 우리가 보여주면은
저희가 이 필터 오퍼레이션이 필터링 오퍼레이션이 리뉴어지 않다라는 것을 알려줄 수 있는 거죠 증명할 수 있는 거죠 그래서 둘 중 하나만 하면 되고요 그래서 이거 증명은 이제 발레를 들면 됩니다 그러니까 어떤 예시에서 에디티비티가 흘러하지 않는다 적용되지 않는다 라는 것을 증명을 해주면 되고요 그래서 단순한 예시로 이런 예시를 써보면 우리가 알 수가 있어요 이 에디티비티 라는 거는 우리가 정의를 생각해보면
이미지 두 개를 더한 다음에 필터링을 한 거 vs 이미지 두 개를 각각 필터링을 해서 더한 거 두 개를 비교했을 때 똑같은지 아닌지를 판단을 해주면 되는 게 에디티비티였죠 그래서 이런 식으로 우리가 정의를 해볼 수가 있어요 예를 들어서 이미지 1에 x, y 좌표에 값이 50이에요 50이고, 이미지2의 같은 포지션에 이제 생값은 60이다 이런 상태에서, 그러니까 각각의 이미지에다가
이 프레스월딩 오퍼레이션을 적용을 하면은 둘 다 100이 넘지는 않기 때문에 결과는 이제 0이 나오겠죠 이미지1에 대해서 필터링한 결과 x,y 접혀 0이 나오고 이미지2에 대해서 필터링한 결과 x,y 또 0이 나올 거다 근데 만약에 우리가 이미지1과 2를 더했어요 더하면은 이 i1+i2의 x,y 좌표의 값은 110이 되는 거고요 더한 뒤에 세일설딩 오퍼레이션을 우리가 적용을 하면은
이게 100보다 크기 때문에 결과가 1이 나올 거란 것을 예칭을 할 수가 있죠 그러면은 각각 필터링을 적용한 것은 결과가 0이니까 얘를 두 개를 더하면은 그대로 0이 될 거고요 더한 다음에 필터링을 적용한 게 1이다 그러면은 두 개가 서로 다르다는 것을 우리가 보여줄 수가 있는 거고 이게 다르다는 얘기는 즉 이제 linearity 중에서 evitivity를 만족을 하지 않는다
라는 것을 우리가 발레를 들어서 보여준 겁니다 그래서 여러분들 수학 증명 같은 걸 많이 해보셨을 건데 증명을 할 때 우리가 어떤 성질이 만족한다를 증명을 하는 게 더 어렵죠 만족하지 않는다를 증명하는 것은 발레를 하나 들어주면 굉장히 쉽게 끝나고요 만족한다를 보여주려면 우리 앞에서 박스필터 했듯이 이런 식으로 모든 일반적인 케이스에 대해서 증명을 해줘야 되는 거죠
그래서 thresholding 또는 binaryization 이라고 하는 operation이 linear하지 않다는 것은 우리가 이렇게 증명을 additivity로 할 수 있고요 additivity로 증명해도 되고 homogeneity도 증명을 해도 돼요 둘 중 하나라도 만족을 못하면은 linear하지 않는 거기 때문에 우리는 둘 다 보여줄 필요도 없고 둘 중 하나만 보여주면 되는데 또는 선택의 영역인 거고요 그래서 homogeneity가 만족하지 않는다 보이는 것도 굉장히 쉽죠? 예를 들어서
50 조금 애매한데 60으로 어떤 x,y 좌표의 어떤 이미지의 x,y 좌표의 픽셀값이 60이다 여기다가 3솔딩 적용하면은 결과는 0이 될 거고요 여기다가 스칼라 값을 알파를 2를 곱하던 3을 곱하던 알파를 곱하려면은 알파를 2라고 하면은 이 픽셀값이 120이 되면서 1타닉 적용 결과가 0에서 1로 바뀌게 되죠
우리가 이제 스칼라를 곱하기 전에 0인거에다 스칼라를 곱한거 0에다가 2를 곱해도 0이죠 0이 되는거고 스칼라를 곱한 이후에 필터링을 적용을 한거는 결과 1이 나와요 그래서 두개가 다르기 때문에 이 연산은 호모지니에이지를 만족을 하지 않는다 라고 증명을 해줄 수가 있는거죠 그래서 Thresholding이 만족하지 않는다는 것을 이런 식으로 보여줄 수가 있습니다
그래서 여러분들이 Thresholding도 있고 저희 지난 시간에 봤던 Medium Filter 같은 경우도 생각을 해보면 Medium Filter도 그러니까 Linear한지를 생각을 해보면은 Medium이라는 중간값을 찾는 어퍼레이션이 시그마로 표현이 될까를 곰곰이 생각하려면은 잘 되지 않을 거고요 그래서 Medium Filter도 사실 Linear하지 않습니다
만약에 미디어 필터가 리니어한지 아닌지 묻는 문제가 있다면 여러분들이 일단은 미디어 필터가 리니어하지 않을 건데 라는 가정을 세우고 발레를 먼저 찾아야 되겠죠 발레를 먼저 찾아보고 발레를 못 찾으면은 이제 뭐 리니어하지 않다는 증명을 실패하는 거고 거꾸로 리니어하다고 증명을 해야 되는 거고요 실제로는 미디어 필터는 미디어 하지 않기 때문에 발레를 찾아보시면 찾을 수가 있을 겁니다
그래서 그런 것도 직접 한번 해보시면 좋아요 그래서 미디어 한지 아닌지 시스템을 증명을 해볼 수가 있는 거고요 그 다음에 리미어 한 거에다가 추가적으로 하나가 더 들어갈 수가 있어요 Shift Invariance라는 시스템 이런 게 이 Shift Invariance라는 시스템이 이미지에서 되게 중요한 성질 중의 하나입니다 일단 Shift Invariance라 Shift라고 하는 건요 이미지에 존재하는 물체가 이동을 한다는 것을 의미하는 거예요
그래서 이미지의 왼쪽 위에 있던 물체가 오른쪽 아래로 내려가더라도 이 시스템상에서는 그 물체가 같은 물체인 것을 인식을 해야 되죠 그거를 이제 Shift Invariant 하다라고 얘기를 하는 겁니다 그래서 이미지가 일정 방향, 일정 거리만큼 Shift가 되더라도 이 이미지를 해석을 하는 결과는 달라지면 안 된다 라는 것이
Shift의 Invariant 하다 라고 이해를 해주시면 되겠습니다 그래서 간단한 예시로 보면 뭐 이제 저희가 어떤 물체를 인식을 할 때 고양이가 있는데 고양이가 이미지의 왼쪽 위에 있던 오른쪽 아래 있던 우리는 이미지의 아홉시 고양이가 될 거다 라는 걸 알 수가 있죠 그래서 이런 시스템이 이런 비전 특히나 이미지를 다루는 비전에서 중요한 성적이고요 그래서 linear shift invariant 시스템을 합쳐서 보고 나면
줄여서 LSI라고 부르는 시스템이 되는 거고 이거는 linearity+ shift invariant 둘 다 만드고 해야 저희가 LSI 시스템이라고 얘기를 할 수가 있는 겁니다 그러면 이것도 이제 증명을 할 수가 있을 거고요. Shift Impedance에 증명을 할 수가 있고 어떻게 증명을 해야 되냐면은 일단은 저희가 이제 이미지를 Shift 한 버전을 만들 수가 있죠.
I'이라는 버전을 만들 수가 있어요. 그래서 I'이라는 버전을 만들면은 이 I'의 X, Y의 좌표는 원래 이미지의 x,y는 저기로 shift가 됐어요. x축으로 x축으로 y축으로 y축으로만큼 shift가 됐기 때문에 현재 x,y의 좌표에 들어 있는 shifted 버전에서 들어 있는 것은 x-x축으로 원래 이미지에서 x-x축으로 y-y축으로 있던 픽셀이 현재는 x,y로 옮겨져 있다 라고
저희가 수식적으로 쓸 수가 있구요. 그러면은 이제 우리가 증명을 해야 되는 것은 원래 이미지에다가 필터링을 적용을 하고 나서 x-x, y-y, 아니 x-x0, y-y0 픽셀의 값이랑 그 다음에 이미지를 먼저 shift를 하고 나서 필터링을 적용한 값이랑 같은지 안 같은지 따라서 저희가 shift-embarium-tine 시스템인지 아닌지를 판단할 수가 있겠습니다.
그래서 얘도 마찬가지에요. 앞에 이제 에디티비티는 더 쌤을 먼저 하고 필터링을 하냐, 필터링을 하고 더 쌤을 하냐, 똑같냐 본거였고, 호모지네이트는 스칼라 곱을 먼저 하고 필터링을 하냐, 필터링 곱하고 스칼라 곱하는게 똑같냐 이렇게 봤던거고, Shift 이베리어스는 Shift를 하고 필터링을 한거랑 그 다음에 필터링을 하고 시프터링한 거랑 똑같은지를 확인하는 작업이라고 보시면 되겠습니다 그래서 저희 계속 사용하는 박스 필터가 Shift에 인벼리언트한지 증명을 간단하게 해볼 수가 있을 거고요
그래서 저희가 이제 이미지를 Shift 한 다음에 필터링한 결과를 보면은 이제 여기 i' x+i, y+j가 적용이 될 거고요 이 i'이라는 것을 우리가 앞에서 정의를 하기를 이렇게 원본 이미지의 좌표값을 x0, y0만큼 다시 되돌려 놨을 때의 생값을 얘기를 했던 거죠 그래서 이 i'을 이렇게 i로 쓸 수가 있고요
여기서 보면은 이제 어떤 값을 기준으로 우리가 i랑 j를 이용해서 필터링 연산을 리뉴얼하게 구현을 했는데 이 기준값이 x가 아니라 x-x0를 기준값으로 설정한 것과 동일한 거죠. 그래서 이 박스 필터 연산은 이제 이미지를 필터링을 하고 x-x0, y-y0, y-y0 이 좌표의 값을 가져온 것과 같다
그래서 이제 이미지를 shift한 뒤에 필터링을 한 거랑 이제 필터링을 하고 나서 shift를 한 거랑 똑같다는 결과를 증명할 수가 있겠습니다 그래서 이 시스템 자체가 Shift-Evaryance 시스템이라고 증명할 수가 있습니다. 사실 저희가 Linearity라는 Shift-Evaryance를 얘기를 했는데 사실 Linear한 필터들은 대부분 거의 100% 다 Shift-Evaryance라는 특징을 가지게 돼요.
그래서 필터가 어떤 위치에 있든 필터링의 결과가 weighted성으로 우리가 표현이 되면 결과는 달라지지 않게 된다. 아홉 붓이 똑같이 나온다. 라는 것으로 이해를 해주시면 되겠습니다. 그래서 이렇게 이해를 해주시면 되고요 그래서 linear shift invalient system
그래서 원래 알고 있던 abtbt homogeneity에다가 shift invalient한 성질까지 기억을 해주시면 될 것 같아요 그 다음에 오늘은 조금 이제 convolution의 역사에 대해서 간단하게 볼 거구요. 그래서 저희가 지난번에 커널이 리니어한 상태에서 필터링을 적용하는 것을 컨블루션이라고 얘기를 했고 컨블루션을 사용했을 때 얻을 수 있는 장점들, GPU에서 병렬화가 수월하다 이런 얘기를 쭉 했었죠.
근데 이제 실제로는 컨블루션이 완벽하게 리니어 필터링하는 오퍼레이션과 동일하지는 않구요. 그래서 이거를 위해서 저희가 컨블루션이 어떻게 처음에 만들어졌는지, 이런 개념이 왜 나왔는지부터 먼저 살펴볼 거구요. 그래서 컨블루션이라는 연산은 원래 신호처리에서 먼저 만들어진 연산입니다. 그래서 신호처리라는 것은 시계열 데이터죠 시간이 흘러가면서 어떤 데이터가 들어오는 이런 상황에서 이제 연산을 수행을 하기 위해서 컴플로이션을 만든 거고요
그래서 이런 시계열 데이터에서는 이런 델타 펑션 이제 다이렉 델타 펑션을 많이 사용하는데 저희가 이 어떤 시계열 신호 자체를 모사를 할 때 continuous 값이 들어오는게 아니라 예를 들어서 값이 이제 샘플링이 되어서 한 번은 0, 한 번은 1, 한 번은 2 이런 식으로 이제 잘라서 들어오는 것을 의미합니다 그래서 이거를 다이락된 타폼션으로 표현을 하면은 저희가 좌표계상에서
이제 한 좌표에서만 값이 존재하고요 1로 존재하고 나머지 좌표에서는 값이 존재하지 않는 이런 이상적인 확률분거로 모사를 할 수가 있어요 그래서 이런게 다이락된 타폼션인데 이게 뭐 중요한 건 아니고 결국에는 이거를 사용을 하는게 우리가 SQL 데이터에서 임펄스라는 것을 자극이라는 것을 이제 표현하기 위해서 이런 펌션을 사용할 수가 있는 겁니다 그래서 한 번째로 하는게 뭐냐면
저희가 갖고 있는 시스템이 이렇게 되어 있어요 시스템이 되어 있고 시스템이 이제 X축은 시간이고 Y축은 response에 대한 함수가 있어요 그래서 이런 모양으로 갖고 있고요 그래서 만약에 우리한테 주어진 시그널이 여기서 이 시간에서 이만큼 시그널이 주어진다 그럼 이 시그널이랑 이 시스템의 발응량을 급해서 최종적인 아웃풋이 결정이 됩니다 이게 시계열 데이터라고 생각을 해주시면 되고요
그래서 시스템은 이런 식으로 고정이 되어 있고 우리가 시계열 데이터는 이제 시간에 따라서 순서대로 발생이 되는 데이터를 갖고 있어요 그래서 이 impulse signal은 0초일 때 이렇게 발생이 되고요 그 다음에 1초일 때 이만큼 발생이 되고 2초일 때 이렇게 발생이 돼요 그래서 아까 말씀드렸듯이 얘가 지금 이제 이상적인 형태를 갖고 있죠 디스크립트하게 갖고 있어요 그러면은 우리가 이 컨몰레이션을 사용을 하는 이유는
이런 impulse signal이 들어왔을 때 이 시스템이 반응하는 결과를 시간에 따라서 나타내는 것을 원하는 거예요 그걸 위해서 이제 컨몰레이션을 사용을 하고요 그래서 시그널이 이렇게 발생이 된다고 했을 때 0초일 1번, 2번, 3번이 발생된다고 했을 때 이 시스템이 어떻게 반응할 것인가를 살펴볼 거고요 그래서 일단은 당연하게 이 임팔스 시그널에서 봤을 때 0초에서 발생한 애가 먼저 시스템에 도달하고
1초에서 발생한 애가 다음에 도달하고 2초에 발생했던 애가 다음에 도달하겠죠 그렇기 때문에 시스템에 도달하는 순서를 보려면은 내 시그널을 뒤집어줘야 돼요 시그널을 이제 X축을 뒤집어서 이제 먼저 발생한 인플스 시그널이 먼저 오도록 만들어 준 다음에요 이 시그널을 우리가 시프트를 해줍니다 이제 이 시스템에 차근차근 들어오는 것을 이렇게 시뮬레이션을 해줄 수가 있어요
그래서 인플스 시그널이 왼쪽 끝에 있을 때는 지금 이 시스템이랑 맞다는 부분이 없어요 이 시그널이 이렇게 되어 있으니까 시스템의 리스폰스랑은 이제 상관이 없으니까 각시 아웃포스 0이 나오다가 얘를 한 칸 옆으로 옮기면은 지금 얘가 겹치죠. 여기에 이제 시그널이 이렇게 겹치게 되고 겹친 거를 이제 반응량을 계산할 때 두 개를 구분해서 얘 하나가 이렇게 하고 싶이 완성이 되겠다는 거구요
그 다음에 얘가 또 오면은 얘는 이제 두 번 겹치겠죠 얘랑 얘가 이제 겹치게 되고 얘네 반응량과 얘의 반응량 계산해서 weighted sum을 해서 이제 반응량을 만들어 낼 수가 있고 그래서 이렇게 해서 시그널이 시간 순서대로 차갑차갑 들어올 때 이제 각각의 시간에 TypeStamp에서의 반응량을 계산을 하는 것이 이제 원래 컨볼리션의 목적이었다 라고 이해를 해주시면 되겠습니다
그래서 요약을 하자면 컨볼리션이란 거는 우리가 갖고 있는 시스템이 시그널에 대해서 얼마나 어느정도로 반응을 하는지를 계산하는 프로세서라고 이해를 해주시면 되겠습니다 그래서 이 영상이 사실 우리가 이미지에서 했던 것과 굉장히 유사하죠 이미지에서 슬라이딩 윈도우 했던 것과 굉장히 유사해서 저희가 이런 신호처리 분야의 컴플루션 연산을 이미지 도메인에서 사용을 할 수가 있는 겁니다
그래서 이걸 수식으로 쓰면 이런식으로 쓸 수가 있어요 그래서 이제 M번째 타임에서의 컨볼루션 결과는 M-K 위치의 시그널과 K번째 위치의 시스템 K는 모델 시스템의 포지션에 대해서
waited sum을 한 것과 동일하다 이렇게 수식적으로 써주실 수가 있습니다. 이런 프로세스를 저희가 어떤 함수 F를 필터 H에다가 컨벌링을 한거다 라고 얘기를 할 수가 있고 이게 2D 도메인에서의 슬라이딩도 필터링과 똑같다, 유사하다 라고 얘기를 할 수 있고요
똑같지 않은 차이점이 하나 있는데 차이점이 필터가 뒤집혔냐 안 뒤집혔냐의 차이점을 갖고 있어요 그래서 우리가 이것을 좀 더 스트릿하게 보면은 이렇게 두 개로 구분을 지어서 생각을 할 수가 있습니다. 그래서 컨볼루션 연상 같은 경우에는 이제 예를 들어서 f를 이미지나 하고 hd-signal 필터라고 얘기를 하면은 f 그대로에다가 이 시그널은 n-k로 들어간다는 것은 뒤집어서 들어온다는 것을 의미하는 거고요.
반면에 컨볼루션에 반대되는 코릴레이션이라는 개념은 fk에다가 이제 이 필터를 뒤집지 않고 n+k로 해서 들어오는 과정을 얘기를 할 수가 있습니다. 그래서 두 수식에서 봤을 때 저희가 유일한 차이점이 필터가 ddp과 안지지표에 차이가 있는 거고요. 근데 이제 두 오프레이션이 만들어진 배경은 좀 다른 거죠. 그래서 컨볼루션은 cdr 데이터에서 cdr 반응량을 측정하기 위해서 만들어진 오프레이션이고요.
코릴레이션은 사실 이렇게 해서 계산을 하는 것이 의미를 하는 것은 이 F라는 이미지랑 이 h라는 이 필터가 얼마나 유사한지를 계산하는 correlation을 측정하는 수식이라고 이해를 해주시면 되겠습니다 그래서 이렇게 컴플루션이랑 correlation이 원래 이렇게 다르게 된 거고요 그래서 그러면은 컴플루션이랑 correlation이 수식이 이렇게 다르지만
두 개가 같아질 때가 있습니다 두 개가 같아질 때가 언젠지를 생각을 해보면은 이 필터 자체가 대칭일 때, 대칭적인 구조를 가질 때, 뒤집어도 자기 자신이 될 때 컨볼루션이랑 필레이션이 같아진다. 이렇게 이해를 해주시면 되겠습니다. 그래서 이게 조금 헷갈릴 수가 있어요. 컨볼루션이란게 시계열 데이터에서 사용할 때 필터를 뒤집는 과정이 들어가고요.
이미지 도메인에서는 컨볼루션이라고 하지만 필터를 뒤집지 않고 연산을 하는 과정을 컨볼루션이라고 관습적으로 이렇게 부르고 있어 가지고 여러분들이 이 차이점을 이해를 해주시면 될 것 같아요 그래서 correlation이라는 거는 사실 저희가 이 correlation 과정을 이미 histogram 할 때 했었어요 저희가 두 이미지가 얼마나 유사한지를 similarity를 제보자 할 때 histogram 두 개를 놓고
두 histogram을 이제 같은 위치에 있는 histogram 값을 곱한 다음에 다 summation을 해줬죠 summation을 해줬을 때 저희가 이 두 histogram이 유사하면 유사할수록 곱해서 summation한 correlation measure가 높은 결과가 나오게 되는 것들 여기다가 -를 붙여서 우리가 distance, metric으로 사용을 했었죠 그래서 correlation 필터를 뒤집지 않고 바로 컴플루션 하는 것은 correlation 되는 것과 유사하다
그래서 저희가 갖고 있는 얼굴 페이스에 대한 템플릿 히스터렘 이렇게 있을 때 이런 윈도우를 이제 이동시키면서 각 윈도우내랑 내부랑 히스터렘이랑 얼마나 유사한지 코릴레이션을 측정을 했었죠. 그래서 코릴레이션을 봤었구요. 그래서 컴플레이션과 코릴레이션을 계산할 때의 차이점을 기억해주시면 되겠습니다. 그래서 저희가 전통적인 컨블루션을 이용을 해서
이미지 필터링을 하려면은 어떤게 달라져야 되는가를 볼 거고요 그래서 저희가 갖고 있는 인풋이 이렇게 돼 있어요 이 인풋의 경우에는 이제 x축, y축으로 했을 때 x축은 좌표가 0,1,2가 될 거고 y는 0,1,2가 되겠죠 0부터 시작하는 시스템을 생산을 하면요 그 다음에 커널은 어떻게 생겼냐면 이렇게 생겼는데 이런 커널, 소벨 커널이죠 이제 호라이즈널한 가로에 엣지를 얻기 위한 커널, 소벨 커널이구요
이 경우에는 저희가 여기 아이폰마체를 가운데 센터포인트를 0,0 시스템으로 만들구요 그 다음에 여기는 -1, 1 그리고 위로 가면 y축이 -1, 그리고 아래로 가면 1이 되는 거고요 그래서 input 좌표계랑 이 커널 필터의 좌표계가 다른 상태를 우리가 생각을 할 수가 있고요 이렇게 고려를 해야 되는 거고 여기서 실제 컨볼레이션 연산을 수행을 하려면
이 좌표계를 커널 좌표계를 뒤집어서 계산을 해줘야 되는 겁니다 그래서 이 필터링한 결과 x,y의 결과를 계산할 때 뒤에는 이제 똑같죠. x+i, y+i가 되는거고 여기에는 이제 w-i, -j가 들어갑니다. 그래서 이제 i랑 j가 -2분의 k-1부터 시작해서 2분의 k-1로 가니까 w-i, -j 이 좌표는 거꾸로 2분의 k-1부터 시작을 해서
-2분의 k-1로 가겠죠 정보를 이제 해야 할 수가 있습니다 그래서 사실 뭐 이렇게 수집적으로 이게 달라지지만 저희가 이 컴폴레이션 연산 수행을 할 때 이전과 달라진 거는 딱 하나죠 이 필터가 반전이 됐냐 안 됐냐 우리가 따져줘야 되는 거고요
그래서 이 커너를 저희가 X축 한 번 Y축 한 번 이렇게 뒤집어준 다음에 우리가 알고 있던 필터링 오버레이션을 적용하는 것과 별거 똑같습니다 그래서 이렇게 생겼던 게 좌표계가 이제 뒤집히니까 원래 이제 위에 -1, -2, -1이었던게 플러스가 되고 아래가 -1, -1, -1이 되구요 이 상태로 만들어 준 다음에 우리가 알던 대로 weighted sum을 빵빵 찍듯이 계산을 해주면 되겠습니다
그래서 이렇게 뒤집는 것 자체가 이제 -i, -j 좌표계를 -i, -j 좌표계로 뒤집는 것과 이제 동일한 효과를 얻을 수가 있는 거구요 이렇게 뒤집힌 상태에서 우리가 weighted sum을 해줘야 이제 원래 오리지널한 컨볼루션 연산을 수행하는 것과 동일한 겁니다 이렇게 빵빵 찍으면 겹치는 부분, 지금 여기 패딩이 없으니까 제로 패딩이라고 생각하고 0이 다 들어있다고 생각을 하고요
0이 부분은 곱해도 어차피 0이니까 무시를 하고 우리가 계산을 해야 되는 것은 이 네 부분 계산을 하면 되구요. 계산하면 0 곱하기 1 + 0 곱하기 2에다가 -5를 해주면 두 개 더하면 -13이 나오게 될 거구요. 그 다음에 이 필터를 이제 옆으로 옮겨가서 한 칸 옆으로 옮기면은 여기서도 패딩이 제어패딩이 되어있다고 가정을 하고
우리가 계산을 해야 되는 부분은 올려서 이 부분을 계산을 해줘야 되는 거죠. 그래서 0x1+0x2+0x3 한 다음에 다 0이 되는 거고 -1 곱하기 4, -2 곱하기 5, -1 곱하기 6 세 개를 연산을 수행을 해주면은 내가 -20이라는 결과를 얻어낼 수가 있겠습니다. 그래서 컴플루션 연상 수행을 하면은 최종적으로 이런 결과를 우리가 얻어낼 수가 있죠.
-3, -7, -7 이렇게 해서 얻어낼 수가 있습니다. 그래서 잠깐 앞으로 다시 돌아가서 컴플루션이랑 코리레이션이 이렇게 좀 다른 개념인 것을 이해를 해주시면 되고요. 앞에 시그널 프로세싱에서 제가 뭐 인프라 시그널이랑 크런티 시스템에서 리스폰스 개선하는 거 얘기를 드렸지만 간단하게 넘어갔죠. 그거를 자세하게 이해하실 필요는 없고요. 컴플루션이라는 게 하는 역할이
시그널과 시스템의 반응량을 계산을 해서 반응량의 총량을 계산하는 거라고 이해를 해주시면 되겠습니다 그래서 사실 컴플루션은 적분이에요 적분으로 들어가는 거고요 그 다음에 코릴레이션은 여러분들 요런 형태의 코릴레이션을 계산한다고 이해를 해주시면 되고요 사실 우리가 필터링에서 사용을 했던 게 계속 요런 형태죠 요런 형태에서 계산을 해서 원래 필터랑 이 필터가 슬라이빙 윈도우 하면서 그 위치한게 얼마나 유사한지
코릴레이션을 잰 것과 똑같구나 라고 이해를 해주시면 될 것 같습니다 또 하나 더 말씀을 드리면은 그래서 결국에 헷갈리죠 어떤게 컨볼루션이라고 할 거냐 생각했을 때 비중 분야에서 컨볼루션이라고 하면은 위에 거를 쓰진 않고 코릴레이션 맨투잉을 그냥 컨볼루션이라고 씁니다 그래서 엄격한 정의상으로는 조금 다르지만 이제 관습적으로 아래꺼를 그냥 컨볼루션이라고 쓰게 되구요
이게 이제 딥러닝 시대가 오면서 이 두개가 차이가 없어졌어요 왜 차이가 없냐면은 여기에 컨볼루션이랑 프릴레이션이 필터가 뒤집히고 안 뒤집히고의 차이라고 얘기를 했죠 근데 우리가 딥러닝 특히나 컨볼루션을 누르는 네트워크에서 사용하는 컨볼루션을 사용할 때 이 필터를 학습을 하죠 웨이트 필터를 학습을 하기 때문에 학습된 필터가 뒤집혀서 나오던지 안 뒤집혀서 나오던지 암튼 결과는 똑같이 나와요 왜냐면은 이 필터 웨이트가 고정되어 있는게 아니라
학습이 되기 때문에 위의 영상으로 계산을 한 네트워크랑 아래의 영상으로 계산하는 네트워크랑 아웃풋이 똑같이 나옵니다. 그래서 이제 수식의 좀 편리함을 위해서 필터를 뒤집는 과정을 이제 생략하고 아래에 '코릴레이션'이라는 것을 저희가 이미지 도메인에서'컨볼루션'이라고 이름을 쓰고 사용한다 이렇게 이해를 해주시면 되겠습니다.
이렇게 이해를 해주시고요. 중요한 것은 우리가 사용하는 컨볼루션이라는 연산이 안 뒤집고 계산하는 것이 코릴레이션 관점에서 해석을 할 수 있다는 것을 기억을 해주셔야 돼요. 그래서 어떤 우리 필터가 있을 때 이 필터랑 이미지랑 컨볼루션한 결과가 높게 나왔다는 것은 이 필터랑 이미지가 유사한 모양을 갖고 있다. 패턴을 갖고 있다. 라고 이해를 해주시면 됩니다. 그래서 나중에 중앙고사 이후에 아마 열릴 텐데
딥러닝을 통해서 학습된 이 필터 모양을 보면요 필터의 모양들을 비주얼라이즈를 해보면은 이런 식으로 나와요 어떤 필터가 이렇게 생겼고요 어떤 필터가 이렇게 생겼고 어떤 필터가 이런 식으로 생겼어요 이 필터가 이제 학습이 돼서 나온 거를 비주얼라이즈를 했을 때 얘를 해석을 할 때 코리레이션 관점에서 해석을 하면은 결국에 이런 모양의 이렇게 생긴 엣지를 검출을 잘하게 될 거고요 비슷한 모양의 대각선 엣지가 있을 때 높은 코릴레이션 값을 갖게 될 거고
위에는 이런 모양을 잘 검출할 거고요 이런 거를 이해를 할 수가 있습니다 조금 헷갈리실 수가 있는데 중요한 거는 지금 이미지 도메인에서 우리가 컨블루션이라고 하는 거는 코릴레이션 연산을 사용한다는 거를 잘 이해를 해 주시고요 그래서 코를레이션이 시밀러에 있는 관점에서 해석이 가능하다 이게 중요하다고 생각을 해주시면 되겠습니다 그래서 컨볼루션과 코를레이션이 좀 복잡하긴 한데
이걸 한번 짚고 넘어가야 되는 게 여러분들이 시그널 프로세싱에서 컨볼루션이라고 하면 우리가 아는 아래 수식이 아니라 위의 수식이 나와요 그래서 김혁 교수님이 수업하시는 시노처리 수업 들으시거나 하면 컨볼레이션 영상이 나올거기 때문에 알아두시면 좋을거 같습니다 그래서 컨볼레이션을 좀 개선을 할 수가 있구요 당연하게도 제가 수업문제로 컨볼레이션을 내면 컨볼레이션이 코릴레이션에 대한 컨볼레이션인지 아니면 시그널 퍼센싱의 컨볼레이션인지
제시를 하겠죠? 모호하니까 둘다 국수정답이 될 수 있습니다. 걱정 안하셔도 될 것 같아요. 그 다음에 블러링커널이라는 것을 얘기할 거고요. 블러링커널은 사실 저희가 지금까지 배웠던 Denoizen을 위한 코널들을 다 블러링커널이라고 얘기합니다. 블러리하다 라고 하는 것은 이미지가 흐릿하게 보인다는 것을 얘기를 하는 거고 저희가 봤을 때 박스 필터 그리고 가을 시간 필터 적용을 했을 때
이미지가 원본 이미지보다 조금 뿌옇게 보이는 결과를 얻을 수가 있는 것을 봤었죠. 그래서 그리고 이제 커널 사이즈를 키우면 키울수록 Denoizing을 좀 더 잘하기는 하지만 아웃풋 결과도 점점 블러리해진다 이런 설명을 했었죠. 그래서 이런 것들을 블러링커널이라고 보면 되고요. 이 블러리하게 만든다 라는 것은 자세하게 들여다보면은 blurry하다는게 뭐냐면은 경계선이 흐릿해지는 것을 의미해요
그래서 어떤 이미지가 있을 때 이미지에서 객체의 경계가 흐릿해지는 것을 우리가 blurry하다고 얘기를 하게 되는 거고요 이 경계, 엣지나 코너를 의미하게 되는 거죠 경계가 흐릿해진다는 것은 경계 정보가 사라진다 다시 말해서 하이페퀀시 정보가 사라지는 것을 얘기를 했고요 그래서 가오시안 필터 얘기할 때 잠깐 나왔던 얘기지만 가오시안 필터 로우 패스 커널이라고 얘기를 했죠 마찬가지로 이제 무빙에버리지도 그러면은 로우 패스 필터라고 얘기를 할 수 있겠죠
이제 하이페퀀시 정보가 사라지고 블럭이 해지니까요 그래서 다 민 블러링, 얘는 무빙에버리지와 똑같은 거고요 가오시안 블러링, 미디엄 블러링 셋 다 이제 로우패스 필터다 라고 이해를 해주시면 되겠습니다 그래서 이런 디노이징의 효과를 가지는 애들은 다 블러리한 효과도 같이 갖고 있다 블러링을 하는 효과를 갖고 있다고 이해를 해주시면 되겠습니다
그러면 우리가 어떤 블러링 커널을 갖고 있을 때 이 블러링 커널이 어떤 정보를 삭제를 하는지 보고 싶어요 만약에 어떤 정보를 삭제하고 어떤 정보를 남기는지 보고 싶으면 이제 완벽하게 들어맞지는 않지만 이론적으로 이런 식으로 우리가 계산을 할 수 있겠죠 원래의 이미지가 있고요 이 이미지를 이미지에다가 오바이오 박스 필터를 씌워서 이제 무빙에버리지를 적용을 한거에요 무빙에버리지를 적용한 결과가 있어요
그러면은 여기에는 A랑 B라는 정보가 있고 우리가 A, B는 뭔지 모르겠고 얘다가 smoothing, 박스 필터를 적용했더니 A는 사라지고 B만 남았다 라고 가정을 하면은 우리가 이론적으로 오리지널 이미지에서 필터링 아웃풋을 빼게 되면은 A, B에서 B를 빼는 거니까 A만 남는다고 우리가 생각을 할 수가 있겠죠
그 얘기는 뭐냐면은 오리지널 이미지에서 박스 필터의 필터링 결과를 빼주면은 박스 필터가 어떤 정보를 삭제하는지를 우리가 알아볼 수가 있겠죠 그래서 블러리 코너를 적용했을 때 어떤 정보가 사라지는지를 원본 이미지에서 이 블러리하게 변한 이미지를 빼주면 된다 그래서 빼주면 실제로 이런 식의 결과가 나오는 걸 볼 수가 있어요 이미지가 그래서 보면은 어떤 색감 정보는 거의 다 사라지고요. 밝기 정보가 많이 사라지고
이제 이 물체의 실루엣에 대한 정보들만 남는 것을 볼 수 있어요. 이거를 뭐 이제 하이 프레퀘시 디테일이라고 얘기를 할 수 있겠죠. 그래서 이렇게 계산을 해봤을 때 우리가 이제 앞서 말씀을 드렸던 대로 이 블러링 커널의 하는 역할이 여러 하이픽 퀸시 정보를 제거를 한다 라고 우리가 해석을 할 수가 있겠습니다 그러면은 이 수식을 조금
이 커널의 모양으로 봤을 때는 오리지널이라는 것은 아이덴티티 커널을 의미하는 거죠 아이덴티티 커널이고 그 다음에 박스 필터 같은 경우는 여기서는 오바이 온대 그림은 3/3으로 되어있는 1/9에다가 1/3이 다 채워져 있는 곱하면은 모든 픽셀이 1/9의 웨이트를 가지는 이렇게 만들어지구요 아이덴티티 커널에서 이 박스 필터를 빼주면 1/9에다가 이렇게 부산이 되겠죠
이 모양을 보면은 이제 저희가 봤던 하이패스 필터랑 굉장히 유사하게 하는 것을 보실 수가 있죠 하이패스 코너를 지난 시간에 봤던 하이패스 코너로 볼 수가 있구요 이 수식을 조금 바꾸면은 여기가 원래의 이미지에다가
이 디테일을 몇대만큼 곡을 해서 더해줄 수가 있죠 그래서 곡을 해서 더해준다는 얘기는 원본 이미지에서 하이피퀀시 정보를 강조를 한다는게 되고요 이게 지난 시간에 봤던 그래서 결과를 보면은 이제 블러리한 것과의 반대로 가는 거죠. 샤픈, 샤프해지는 샤픈 이미지를 우리 얻을 수 있고 샤픈하는 것은 경계선이 더 명확하게 푸요트하게 보이는 이미지를 얘기를 하는 거고요. 요거를 이제 필터모양으로 봤을 때 지난 시간에 얘기했던 것과 똑같은 건데
이제 아이덴티 커널에다가 아이덴티티 커널에다가 하이패스 커널을 몇 배를 해서 더해주면은 이렇게 이런 모양이 되고요 그래서 아이덕틱 커널을 더해줬으니까 이제 웨이트 오트릭스에서 가운데에 픽셀만 같이 커지죠 가운데 픽셀만 커지는 것을 볼 수가 있고요 그래서 원본을 보존하되 하이 페퀸시 정보만 강조를 하는 이런 것을 우리가 샤플닝 커널이라고 얘기를 했었죠
그래서 identity 코너에다가 하이패스 코너를 알파만 급해서 알파 1일 수가 있겠죠. 그냥 더해서 알파를 급해서 더해주게 되면은 원본의 정보를 유지하되 하이패스 정보만 추가적으로 강조를 하는 채푸니 코너를 같아진다는 것을 이해를 할 수가 있습니다. 그래서 이 비전에서 High Frequency 정보를 구분하는게 되게 중요해요 그래서 우리가 어떤 오퍼레이션을 적용을 했을 때
이게 High Frequency 정보를 남기느냐 Low Frequency 정보를 남기느냐가 여러분들이 어떤 필터의 모양이나 필터의 과정을 보고 예측을 할 수가 있어야 된다 어떤 필터를 봤을때는 엣지나 코너가 사라지고 블러디한 결과가 나오겠구나 라던가 엣지나 코너의 정보만 남기겠구나 하이트랙의 정보만 남기겠구나 그런 것을 해석을 하실 수가 있어야 되겠습니다 그래서 이렇게 블러디 코너과
하이패스 코너들과의 관계를 조절해주시면 되겠습니다. 마지막 슬라이드인데요. 결국에 저희가 여러가지 코너를 배웠는데 지난 시간부터 여러가지 코너를 배웠는데 당연히 얘네가 전부가 아니라 우리가 만들고 싶은 만큼 코너를 만들 수가 있어요. 결국에 코너를 만든다는 것은 이 매트릭스 안에 숫자를 어떻게 채우느냐에 대한 문제이기 때문에 무수히 많은 경우일 수가 있을 거고요. 방금 설명드린 것처럼
어떤 코너의 모양을 봤을 때 이 코너이 하는 역할이 무엇이겠다라고 해석을 하거나 예측을 하는 게 되게 중요하다 라는 겁니다 그래서 여러분들이 이렇게 아무 정보도 없이 이렇게 커널만 주어졌을 때 각각이 무슨 커널이고 어떤 역할을 하는지를 이해를 해주셔야 돼요 그래서 첫 번째 같은 경우에는 가운데 자기 자신은 1이고 주변 픽셀에 대해서 웨이트가 다 0이다 그러면 나오는 건 자기 자신만 나오니까 이거는 IDXD 커널이다
라는 거를 이해를 할 수가 있고요 이거 같은 경우에는 왼쪽 위에 대해서는 양수값을 취하고 오른쪽 아래에 대해서 양수값을 취하네 그러면은 이제 한쪽은 빛을 받은 거고 한쪽은 안 받은 것처럼 보내 보사를 할 수가 있고요 이런 거를 엠보스 커널처럼 엠보스 커널이라고 이제 이제 엠보스 커널이라고 이제 해석을 할 수가 있을 거고요 그 다음에 얘랑 얘는 이제 지난 시간에도 강조를 했던 위와 아래의 차이를 계산을 해서 얻는 거는
위와 아래를 구분을 짓는 경계선을 찾는 커널인 거고요 그래서 얘는 X축 이제 엣지를 찾는 소백커널이 되는거고, 얘는 y2개짐을 찾는 소백커널이 되는거구요. 그 다음에 이 아래 두개를 보면은 둘 다 모양이랑 똑같아요. 가운데랑 상하 4호랑 얼마나 다른지를 계산을 하는거구요. 그래서 이걸 계산하는거 자체가 일단은 high frequency 정보죠.
high frequency 정보를 계산을 하는건데, 얼마나 다른지를 계산을 하는건데 하나는 합의, 터널 레버의 합의 summation 하면은 0이 되고요 하나는 summation 하면은 1이 되죠 그러면은 summation 했을 때 1이 된다는 것은 원본 정보를 보존을 하면서 강조를 하는 것이기 때문에 happening corner이 되는 거고요 합이 0인 것은 원본 정보 필요 없이 하이패스 정보만 남기는 것이기 때문에 하이패스 필터가 하이패스 코널이다 라고 예측을 하실 수가 있어야겠습니다
네 그래서 거의 100장에 다다르는 필터랑 컴플러션 연산에 대해서 살펴봤고요 쭉 하면서 나왔던 개념 중에 제가 여러번 반복했던 것들을 잘 기억을 해주시면 좋을 것 같아요 그러면은 오늘 수업 이 정도로 하고 마무리하고 이제 다음 시간에 엣지 부분을 나갈 수 있습니다. 수고하셨고, 목요일에 뵙겠습니다.