본 게시물은 University of Arizona의 Prof. J. Scott Tyo의 OPTI512R 강의를 보고 정리한 내용입니다.
전공자가 아닌 만큼 부정확한 정보가 포함되어 있을 수 있습니다.
부정확한 정보가 있다면 알려주시면 감사하겠습니다.
The Convolution Theorem for DFT
우리는 Convolution integral이 다음과 같이 정의되는 Continuous linear System에 대해 학습하였다.
g(x)=f(x)∗h(x)=∫∞−∞f(α)h(x−α)dαg(x)=f(x)∗h(x)=∫∞−∞f(α)h(x−α)dα
여기서 αα는 integration을 위한 dummy variable이다. 우리는 위 수식의 Integral과 Fourier Transform을 연관 짓는 다음의 중요한 theorem을 배웠다.
G(ξ)=F(ξ)H(ξ)G(ξ)=F(ξ)H(ξ)
위 theorem에 의해 f(x)↔F(ξ)f(x)↔F(ξ)이고, h(ξ)↔G(ξ)h(ξ)↔G(ξ)이다. 여기서 볼 수 있는 것과 같이 Discrete signal에 대한 비슷한 convolution 정리를 도출할 수 있다.
DFT{fk}=FnDFT{fk}=Fn과 DFT{hk}=HnDFT{hk}=Hn가 성립하는 Discrete Sequence Gn=FnHnGn=FnHn이 있다고 하자. 이때 gk=DFT−1{Gn}gk=DFT−1{Gn}을 fkfk와 hkhk를 사용하여 표현할 수 있을까?
Inverse DFT부터 시작해보자.
gk=1NN−1∑n=0FnHnej2piknN=1NN−1∑n=0{[N−1∑k1=0fk1e−j2πk1nN][N−1∑k2=0hk2e−j2πk2nN]ej2πknN}gk=1NN−1∑n=0FnHnej2piknN=1NN−1∑n=0{[N−1∑k1=0fk1e−j2πk1nN][N−1∑k2=0hk2e−j2πk2nN]ej2πknN}
Complex exponential의 sum을 다음과 같이 분리하기 위해 summation의 순서를 rearrange 할 수 있다.
gk=1NN−1∑k1=0N−1∑k2=0{fk1hk2N−1∑n=0ej2πN[(k−k1)−k2]n}gk=1NN−1∑k1=0N−1∑k2=0{fk1hk2N−1∑n=0ej2πN[(k−k1)−k2]n}
우리는 이미 Complex Exponential의 sum이 다음과 같이 주어지는 것을 알고 있다.
N−1∑n=0ej2πN[(k−k1)−k2]n=Nδ(k−k1,k2)N−1∑n=0ej2πN[(k−k1)−k2]n=Nδ(k−k1,k2)
이를 이용해 우리는 rearrange 한 수식을 위 수식으로 substitute 할 수 있다.
gk=N−1∑k1=0N−1∑k2=0ff1fk2δ(k−k1,k2)=N−1∑k1=0hk−k1fk1gk=N−1∑k1=0N−1∑k2=0ff1fk2δ(k−k1,k2)=N−1∑k1=0hk−k1fk1
위 equation은 놀랍게도 convolutional sum과 같아 보인다. 하지만 아직까지 DFT의 Property가 위 수식에 적용된다는 확신이 없기에 검증이 필요하다.
다음의 두 function의 convolution을 생각해보자.
f(x)=ramp(x)rect(x−.5)h(x)=rect(x−.25.5)f(x)=ramp(x)rect(x−.5)h(x)=rect(x−.25.5)
아래 두 그림은 위 두 function의 graphical convolution 단계를 보여준다. f(x)f(x)의 length가 1이고, h(x)h(x)의 length가 0.5 이기 때문에 g(x)=f(x)∗h(x)g(x)=f(x)∗h(x)의 length는 1.5 임을 알 수 있다. function h(x−α)h(x−α)가 f(x)f(x)를 통과하면, output은 0이 된다.


두 signal의 DFT를 정의하기 위해서는 각 sequence의 length를 정의해야 한다. 우리는 f(x)f(x)와 h(x)h(x)가 모두 0≤x<1.250≤x<1.25의 interval에 걸쳐 정의된다고 정의할 것이다. 그러나 DFT와 IDFT operation이 periodic 하기 때문에 k−k1k−k1이 range 0,1,....,N−10,1,....,N−1의 밖에 있다면, 우리는 Input sequence에 Periodicity를 적용해야 하고, 이는 아래 그림과 같다.

위 그림에서 보이다시피 f(x)f(x)의 한 interval 이후로, function h(x)h(x)를 fit 할 수 있는 만큼의 space가 없기 때문에, function의 succeissive period 사이에 overlap이 발생하게 되고, g(x)g(x)가 periodicity를 가지게 된다.

위 그림과 같은 Convolution은 Circular convolution 또는 Periodic convolution이라고 불린다. Linear axis를 따라 function을 표시하는 대신에, axis의 끝과 끝이 만나도록 warping 한다.

h(x)h(x)를 flip 하고, shifting 한다면, h(x)h(x)는 위 그림과 같이 circle을 따라 cycle 하게 된다.
만약 function의 zero padding이 더욱 줄어든다면 아래 그림과 같은 결과를 확인할 수 있다. 이는 Periodic representation에서 본 것과 유사한 effect를 보인다.

'Optics > 이론' 카테고리의 다른 글
Lec 16. Fraunhofer Diffraction (0) | 2021.08.23 |
---|---|
Lec 15. Plane wave spectrum and Beams (0) | 2021.08.18 |
Lec 13. Discrete Fourier Transform (0) | 2021.08.16 |
Lec 12. Sampling & Reconstruction (2) | 2021.08.14 |
Lec 11. Signal Processing (0) | 2021.08.13 |