본문 바로가기

2D 컨볼루션3

이미지 필터 설계해 보기 필터를 설계한다는 것은 곧 LSI 시스템의 임펄스 반응 \( h[m,n] \)을 결정하는 것과 같다. 그러면 입력 이미지가 \( x[m,n] \)일 때, 필터링된 출력 이미지 \( y[m,n] \)은 시스템의 임펄스 반응과 입력 이미지의 2D 컨볼루션으로 주어진다. \[ \begin{align} y[m,n] &= h[m,n]*x[m,n] \\ \\ &= \sum_{k =-\infty}^{\infty} \sum_{l =-\infty}^{\infty} x[k,l] h[m-k,n-l] \end{align} \] 간단히 3개의 이미지 필터를 설계해 보자. 먼저 이미지를 흐릿하게 만드는 스무딩(smoothing) 필터다. 스무딩 필터의 임펄스 반응은 다음과 같이 정할 수 있다. 임펄스 반응을 보면 스무딩 필터는 .. 2020. 7. 29.
2D 컨볼루션 계산하기 1D 컨볼루션과 똑같은 방법으로 '뒤집기와 이동' 방법을 사용하여 2D 컨볼루션을 계산해보자. 2020/07/25 - [CNN의 수학] - 컨볼루션 쉽게 계산하기 공식을 살펴보면, \[ y[m,n] = \sum_{k=-\infty}^\infty \sum_{l=-\infty}^\infty x[k,l] h[m-k, n-l] \] 우선 \( x[m,n] \)과 \( h[m,n] \)을 \( x[k,l] \)과 \( h[k,l] \)로 바꿔야 한다는 것을 알 수 있다. 그리고 \( h[k,l] \)을 수평축과 수직축을 기준으로 두 번 뒤집어서 \( h[-k,-l] \)로 만든 후, \( m,n \)만큼 수평과 수직으로 이동시켜서 \( h[m-k,n-l] \)을 만들고, \( k,l \)에 대해서 \( x[k,l.. 2020. 7. 29.
2D 컨볼루션 독립변수가 1개인 함수로 표현되는 신호 \( x[n] \)을 1차원 신호(one-dimensional signal)라고 한다. 여기서 \( n \)은 인덱스로서 정수 값을 갖는다. 이 인덱스는 보통 시간스텝(time step)을 나타낸다. 1차원 신호와 관련된 컨볼루션을 1D 컨볼루션이라고 하거나 그냥 컨볼루션이라고 한다. 독립변수가 2개인 함수로 표현되는 신호 \( x[m,n] \)을 2차원 신호라고 한다. 2차원 신호에서 인덱스는 주로 공간상의 위치를 나타내는 배열 또는 순서를 뜻한다. 2차원 신호는 행렬로 나타내며 \( m \)은 행, \( n \)은 열을 나타낸다. 대표적인 2차원 신호로는 이미지(image) 신호가 있다. 2차원 신호와 관련된 컨볼루션을 2D 컨볼루션이라고 한다. 지금부터 LTI.. 2020. 7. 28.