이산시간 푸리에 변환(Discrete Time Fourier Transform)

Prerequisites

이 포스팅을 더 잘 이해하기 위해서는 아래의 내용에 대해 알고 오시는 것이 좋습니다.

이산 시간 푸리에 변환 (DTFT)

이산 시간 푸리에 변환은 연속 시간 푸리에 변환처럼 비주기 신호에 대해 적용하는 푸리에 분석 방법이다.

다만 여기서는 연속 시간 신호가 아닌 그것이 샘플된 이산 신호에 대해 적용한다는 차이가 있다.

DTFT를 유도해내는 아이디어 역시 CTFT에서와 마찬가지로 주기 N의 크기를 무한대로 크게 만드는 것이다. 만약 N의 크기가 무한대로 커지게 된다면, 비주기 이산신호를 분해 할 수 있게 된다.

Discrete Time Fourier Transform의 유도 과정

아래와 같이 DTFS의 $x[n]$ 의 수식에 $a_k$ 의 값을 직접 대입해보자.

\[x[n] = \sum_{k=0}^{N-1}{a_k \space exp\left(j \frac{2\pi k}{N}n\right)}\]
where
\[a_k =\frac{1}{N}\sum_{n=0}^{N-1}x[n] \exp\left(-j \frac{2\pi k}{N}n\right) \space for \space k = 0, 1, \cdots, N-1\]

그리고 N에 대한 극한값을 취해주면 다음과 같은 식 (3)을 얻을 수 있다.

\[\lim_{N\rightarrow\infty}x[n] = \lim_{N\rightarrow \infty} \sum_{k=N_1}^{N_2}\left( \frac{1}{N}\sum_{n=N_1}^{N_2}x[n]\exp\left(-j\frac{2\pi n}{N}k\right) \right)\exp\left(j\frac{2\pi k}{N}n\right)\]

식 (3)을 재정렬해서 $\frac{1}{N}$ 을 맨 오른쪽으로 옮기면 다음과 같다.

\[\lim_{N\rightarrow\infty}x[n] = \lim_{N\rightarrow \infty} \sum_{k=N_1}^{N_2}\left( \sum_{n=N_1}^{N_2}x[n]\exp\left(-j\frac{2\pi n}{N}k\right) \right)\exp\left(j\frac{2\pi k}{N}n \right)\frac{1}{N}\]

여기서 $N_1$과 $N_2$는 $N_2-N_1+1=N$의 관계를 가지는 정수이다.

주기 신호의 특성 상, 주기 신호는 어떤 위치의 점에서 시작하던간에 주기(여기서는 N)만 유지해주면 신호의 형태는 동일하게 유지된다.

또, 식 (3), (4)의 전개과정에서는 $N$ 을 무한히 크게 만드는데 이에 따라 $\frac{1}{N}$ 과 $k/N$ 은 다음과 같이 바꿔 쓸 수 있다.

\[as \space N \rightarrow \infty,\space\frac{1}{N}\rightarrow df\space \& \space\frac{k}{N}\rightarrow f\]

식(4)를 전개할 것인데, 이 때 계산의 편의를 위해 괄호 안에 있는 식 $\sum_{n=N_1}^{N_2}x[n]\exp\left(-j\frac{2\pi n}{N}k\right)$ 을 먼저 계산하도록 하자.

여기서, $N_2-N_1+1=N$ 라고 할 때, 다음이 성립한다.

\[N_2=N+N_1-1\] \[\Rightarrow N_1=N_2-N+1\] \[\therefore\quad as\quad N\rightarrow\infty,\quad N_1\rightarrow -\infty,\quad N_2 \rightarrow\infty\]

따라서 식 (4)의 괄호안에 있던 식은 다음과 같이 쓸 수 있다.

\[\lim_{N\rightarrow\infty} \sum_{n=N_1}^{N_2}x[n] \exp\left(-j \frac{2\pi n}{N}k\right)\] \[=\sum_{n=-\infty}^{\infty}x[n]\exp(-j2\pi f n) = X_{DTFT}(f)\]

따라서 식(10)를 이용해 식 (4)을 다시 쓰면,

\[\lim_{N\rightarrow \infty}\sum_{k=N_1}^{N_2}X_{DTFT}(f) \exp\left(j\frac{2\pi k}{N}n\right)\frac{1}{N}\]

정적분의 정의 및 식(5), 식(8)에 의해 식(7)의 결과는 다음과 같다.

\[\Rightarrow \int_{-\infty}^{\infty}X_{DTFT}(f)\exp\left(j 2\pi f n\right) df\]

이 때, 이산 시간 푸리에 급수(DTFS) 편에서 언급한 것 처럼, 디지털 주파수 $f$ 가 가질 수 있는 최대한의 범위는 [0,1]이다.

따라서 식 (12)은 다음과 같이 쓸 수 있다.

\[\Rightarrow \int_{0}^{1}X_{DTFT}(f) \exp\left(j 2\pi fn\right)df = x[n]\]

또한, 일반적으로 음의 주파수에 대하여 생각할 수 있으므로 적분 구간을 [0, 1]에서 [-0.5, 0.5]로 옮겨도 무관하다. 그러므로 다음과 같이 DTFT를 표현할 수 있다.

이산신호 $x[n]$ 에 대하여,

\[x[n] = \int_{-0.5}^{0.5}X_{DTFT}(f) \exp\left(j2\pi fn\right)df\]

where

\[X_{DTFT}(f) = \sum_{n=-\infty}^{\infty}{x[n]\exp\left(-j2\pi fn\right)}\]

DTFT에서도 CTFT와 마찬가지로 $X_{DTFT}(f)$ 의 수렴조건이 필요하다.

$\exp(-j2\pi fn)$ 의 크기가 1이기 때문에 $X_{DTFT}(f)$의 수렴조건은 다음과 같다.

\[|X_{DTFT}(f)| = \left|\sum_{n=-\infty}^{\infty} x[n]\exp\left(-j2\pi fn\right)\right| \leq\left|\sum_{n=-\infty}^{\infty}x[n]\right|< \infty\]