본문 바로가기

컨볼루션11

[Continuous-Time] LTI 시스템과 인과 시스템 LTI시스템의 출력은 다음과 같이 입력과 임펄스 반응의 컨볼루션으로 주어진다. \[ y(t)= \int_{-\infty}^{\infty} u(\tau) h(t-\tau) \ d\tau \] 여기서 \(h(t-\tau)\) 는 시간 \(\tau\) 에서 시스템에 임펄스를 입력으로 가했을 때 시간 \(t\) 에서의 출력이다. 그런데 여기서 \( t \lt \tau\) 일 때 \(h(t-\tau)\) 의 값이 \(0\) 이 아니라면 조금 이상한 일이 벌어진다. 임펄스를 입력으로 가하기 이전에 그 결과인 임펄스 반응이 시간적으로 먼저 나오는 것으로 해석되기 때문이다. 이것은 인과 법칙에 위배된다. 원인이 앞서고 결과가 뒤따르는게 순리적으로 맞기 때문이다. 원인이 결과에 앞서는 시스템을 인과(causal) 시스템.. 2022. 9. 13.
[Continuous-Time] LTI 시스템과 컨볼루션 입력과 출력의 관계식으로 표현하는 방법을 시스템의 외부적 표현 방법이라고도 하는데 다음과 같이 연산자(operator)를 이용하여 입출력 관계식을 함수로 나타낸다. \[ \mathbf{y}(t)= \mathcal{F} \{ \mathbf{u}(t), t\} \] 여기서 \(t\) 는 시간, \(\mathbf{u}(t)\) 는 입력, \(\mathbf{y}(t)\) 는 출력이다. 시불변 시스템의 경우 입력을 가한 싯점에 관계없이 출력이 동일해야 하므로 입출력 관계식은 다음과 같이 된다. \[ \mathbf{y}(t)= \mathcal{F} \{ \mathbf{u}(t) \} \] 한편 시불변이면서 동시에 선형인 경우에는 중첩의 원리가 적용되므로 시스템은 다음과 같은 특성을 가져야 한다. \[ \begin{.. 2022. 9. 13.
[U-Net] U-Net 구조 이미지 세그멘테이션(image segmentation)은 이미지의 모든 픽셀이 어떤 카테고리(예를 들면 자동차, 사람, 도로 등)에 속하는지 분류하는 것을 말한다. 이미지 전체에 대해 단일 카테고리를 예측하는 이미지 분류(image classification)와는 달리, 이미지 세그멘테이션은 픽셀 단위의 분류를 수행하므로 일반적으로 더 어려운 문제로 인식되고 있다. 위 그림에서 semantic segmentation은 이미지 내에 있는 객체들을 의미 있는 단위로 분할해내는 것이고, instance segmentation 은 같은 카테고리에 속하는 서로 다른 객체까지 더 분할하여 semantic segmentation 범위를 확장한 것이다. 이미지 세그멘테이션은 의료 이미지 분석(종양 경계 추출 등), 자.. 2022. 5. 11.
컨볼루션과 상관도 LTI 시스템의 임펄스 반응 \( h[n] \)과 입력 신호 \( x[n] \)의 컨볼루션(convolution)은 다음 식으로 정의한다. \[ y[n] = \sum_{k=-\infty}^{\infty} x[k] h[n-k] \] 한편, LSI 시스템의 임펄스 반응 \( h[m,n] \)과 입력 신호 \( x[m,n] \)의 2D 컨볼루션은 다음 식으로 정의한다. \[ y[m,n] = \sum_{k=-\infty}^{\infty} \sum_{l=-\infty}^{\infty} x[k,l] h[m-k, n-l] \] 컨볼루션은 앞에서 설명했듯이 LTI 또는 LSI 시스템에 입력신호가 가해졌을 때 출력신호를 계산하는 식이며, 컨볼루션은 ‘뒤집기와 이동’ 방법을 사용하여 계산할 수 있다. 상관도(correla.. 2020. 9. 22.
이미지 필터 설계해 보기 필터를 설계한다는 것은 곧 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 컨볼루션 독립변수가 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.
이동평균(moving average) 필터 설계해 보기 필터를 설계한다는 것은 곧 LTI 시스템의 임펄스 반응 \( h[n] \)을 결정하는 것과 같다. 주식 차트를 보면 5일 이동평균선, 10일 이동평균선이라는 것이 있다. 5일 이동 평균은 현재부터 과거 5일전까지의 주가 평균을 계산한 것이다. 10일 이동 평균선도 마찬가지로 현재부터 과거 10일전까지의 주가를 평균 낸 것이다. 그러면 주식 차트의 이동평균선과 비슷하게, 입력 신호에 대한 5 포인트(point) 이동평균 필터와 10 포인트 이동평균 필터를 설계해 보자. 입력 신호를 \( x[n] \)으로 하고, 이동 평균 출력 신호를 \( y[n] \)으로 하면 5 포인트 이동평균 필터의 임펄스 반응은 다음과 같이 설계할 수 있다. \[ \begin{align} h[n] &= \frac{1}{5} ( \d.. 2020. 7. 26.
컨볼루션 쉽게 계산하기 일반적으로 많이 쓰이는 ‘뒤집기와 이동’ 방법을 사용하여 컨볼루션을 계산해 보자. 공식을 잘 살펴보면, \[ y[n] = \sum_{k=-\infty}^\infty h[n-k] x[k] \] 우선 \( x[n] \)과 \( h[n] \)을 \(x[k] \)와 \( h[k] \)로 바꿔야 한다는 것을 알 수 있다. 그리고, \( h[k] \)를 뒤집어서 \( h[-k] \)로 만든 후, \( n \)만큼 이동시켜서 \( h[n-k] \)를 만든 후, \( k \)에 대해서 \( x[k] \)와 \( h[n-k] \)를 곱한 다음, \( k \)에 대해서 \( h[n-k]x[k] \)를 모두 더하면 \( y[n] \)을 계산할 수 있다는 것을 알 수 있다. 그리고, 모든 \( n \)에 대해서 위 과정을 반.. 2020. 7. 25.
컨볼루션 공식대로 계산하기 신호처리 분야에서는 LTI 시스템을 필터(filter)라고 한다. LTI 시스템의 임펄스 반응은 시스템 그 자체라고 했으므로 필터를 설계한다는 것은 곧 LTI 시스템의 임펄스 반응 \( h[n] \)을 결정하는 것과 같다. LTI 시스템의 출력 \( y[n] \)은 시스템의 임펄스 반응 \( h[n] \)과 입력 \( x[n] \)의 컨볼루션으로 주어지므로, \[ \begin{align} y[n] &= h[n]*x[n] \\ \\ &=\sum_{k=-\infty}^\infty h[n-k] x[k] \end{align} \] 필터 또는 임펄스 반응은 어떤 입력에 대해서 원하는 출력이 나오도록 설계되어야 한다. 임펄스 반응 \( h[n] \)의 길이가 무한대이면 무한임펄스반응 (IIR, infinite im.. 2020. 7. 25.
LTI 시스템과 컨볼루션 이제 선형 시불변(LTI) 시스템을 알았으니 LTI 시스템에 임의의 입력 \( x[n] \) 을 가했을 때 출력 \( y[n] \) 이 어떻게 계산되는지 알아보자. 그 전에 먼저 특별한 입력 신호인 임펄스(impulse) 신호에 대해 알아보자. 임펄스 신호는 \( n=0 \) 일 때만 크기가 1 이고, \( n \ne 0 \) 에서는 크기가 모두 0 인 신호다. 기호로 \( \delta [n] \) 라 쓴다. 크기가 1 이므로 단위 임펄스라고 하기도 한다. 임펄스를 수식으로 표현하면 다음과 같다. \[ \delta [n]= \begin{cases} 1, & \mbox{if }n=0 \\ 0, & \mbox{if }n \ne 0 \end{cases} \] 그림으로 표현하면 다음과 같다. 임펄스 신호를 오른.. 2020. 7. 23.