Professional Documents
Culture Documents
Fourier Transform
Fourier Transform
22036 반진성
1 서론
1.1 연구 동기
정보과학에서 사운드 프로세싱(Sound processing)을 진행할 때 소리를 인식하는 과정에서 잡음이 있으면 원
하는 정보를 정확하게 얻지 못하는 어려움을 겪었다. 이런 두 개 이상의 소리가 섞여 있는 상황에서 원하는
부분만 뽑아낼 수 있는 가장 대표적인 방법이 푸리에 변환(Fourier Transformation; FT)이라는 것을 알게 되었
다. 하지만 그 때는 선형대수학을 배우지 않아 사용하기에 난이도가 높아 사용하지 못했다. 선형대수학을 배운
시점에서 전에는 이해하지 못했던 푸리에 변환에 대해 탐구해보자 하였다.
2 연구 내용
∞
X(ξ ) = x(t)e−2πiξ t dt, ξ ∈ C (1)
−∞
푸리에 변환은 연속적인 시간에 대해 적용 가능한 것이기 때문에 전산적으로 활용하기 위해선 이산 푸리에
변환(Discrete Fourier Transfomr; DFT)을 이용해야 한다. 이산 푸리에 변환은 이산적인 데이터 집합을 변환하는
것이기 때문에 선형대수학의 개념이 사용 가능하다. 이산 푸리에 변환은 다음과 같은 식으로써 정의할 수 있다.
N−1
2πkn
X[k] = ∑ x[n] exp −i
N
(2)
n=0
여기서 x[n]은 얻은 총 데이터를 의미하며, 그 길이를 N이라고 하여 x[0]부터 x[N − 1]까지로 표현할 수 있다.
이산 푸리에 변환으로 얻은 X[k]는 주파수 성분을 벡터로 표시한 것으로, 마찬가지로 전체 주파수 대역을 N
개로 나누어 X[0]부터 X[N − 1]까지로 표현할 수 있다.
1
2.3 이산 복소 정현파의 직교성
N−1
∑ φk [n]φ p∗ [n] = 0 when k ∕= p (3)
n=0
2πkn
φk [n] = exp i where k = 0, 1, 2, · · · , N − 1 (4)
N
N−1 N−1
2πkn 2π pn
∑ φk [n]φ p∗ [n] = ∑ exp i
N
exp −i
N
(5)
n=0 n=0
N−1
2π(k − p)n
= ∑ exp i (6)
n=0 N
N−1
2π(k − p) n
= ∑ exp i (7)
n=0 N
1) k = p
N−1 N−1
2πn
∑ φk [n]φ p∗ [n] = ∑ exp i
N
(0) = N (8)
n=0 n=0
2) k ∕= p
2π(k − p)
식 (7)을 보면 초항이 1이고 공비가 exp i 인 등비급수의 합임을 알 수 있다.
N
N−1
N−1
2π(k − p) n
∑ φk [n]φ p∗ [n] = ∑ exp i
N
(9)
n=0 n=0
N
1 − exp i 2π(k−p)
N
= (10)
2π(k−p)
1 − exp i N
1 − exp (2iπ(k − p))
= (11)
1 − exp i 2π(k−p)
N
정수 n에 대해 exp(2iπn) = 0이므로
N−1
∑ φk [n]φ p∗ [n] = 0 (12)
n=0
2
2.4 inverse Discrete Fourier Transform
이산 푸리에 역변환(inverse Discrete Fourier Transform; iDFT)은 이산 푸리에 변환을 역방향으로 유도하는
과정으로 다음과 같이 정의할 수 있다.
1 N−1 2πkn
x[n] = ∑ X[k] exp i N
N n=0
(13)
proo f )
1) p ∕= n, 직교성의 성질에 의해
N−1
2π pk
∑ X[k] exp i N = 0 (16)
p=0
2) p = n
N−1
2π pk
∑ X[k] exp i N = Nx[n] (17)
p=0
1 N−1 2πkn
∴ x[n] = ∑
N n=0
X[k] exp i
N
(18)
2.5.1 정의
X[k]와 x[n]의 관계를 살펴본다면 이를 적절히 선형변환으로 나타낼 수 있음을 알 수 있다. 신호와 이산 주파수
성분은 모두 N차원 열벡터로 생각할 수 있다.
T T
신호는 x[0] x[1] · · · x[n] · · · x[N − 1] , 주파수는 X[0] X[1] · · · X[k] · · · X[N − 1] (19)
2π0 2π0 2π0
X[0] = x[0] exp −i 0 + x[1] exp −i 1 + · · · + x[N − 1] exp −i (N − 1) (20)
N N N
2π1 2π1 2π1
X[1] = x[0] exp −i 0 + x[1] exp −i 1 + · · · + x[N − 1] exp −i (N − 1) (22)
N N N
2π
w = exp −i (23)
N
3
그러면 k번째 주파수 성분 X[k]는 다음과 같이 정리할 수 있다.
즉, DFT 과정을 벡터와 행렬의 관계로 나타낼 수 있게 되고, 신호 벡터에 곱하는 행렬을 푸리에 행렬(Fourier
Matrix)라고 부른다.
X[0] 1 1 1 ··· 1 x[0]
X[1] 1
w1 w2 ··· wN−1
x[1]
.. = .. .. .. .. .. (25)
.
. 1 . . . .
X[N − 1] 1 wN−1 w(N−1)·2 ··· w(N−1)·(N−1) x[N − 1]
(23)으로부터 오일러 공식에 의해 w가 하나의 각도를 나타내고 있음을 알 수 있다. 따라서 푸리에 행렬의 각
행은 cosine 혹은 sine의 관점으로 보았을 때 각각의 함수를 나타내고 있다고 말할 수 있다.
2.5.2 Orthgonality
N−1 N−1
FHF
k×l
= ∑ w∗nk wnl = ∑ wn(l−k) (27)
n=0 n=0
∗nk
2π ∗nk 2π 2π
∵ w∗nk = exp −i = cos − + i sin −
N N N
nk
2π 2π 2π nk
= cos − − i sin − = exp i = w−nk
N N N
if k = l
N−1 N−1
∑ wn(l−k) = ∑ w0 = N (28)
n=0 n=0
if k ∕= l
N−1
1 − wN(l−k)
∑ wn(l−k) = 1 − wl−k
= 0 (∵ wN = 1) (29)
n=0
∴ FHF = N · I (30)
4
2.5.3 Inverse Fourier Matrix
1 H
F −1 = F (31)
N
x[0] 1 1 1 ··· 1 X[0]
x[1] 1 1 w∗1 w∗2 w ∗(N−1)
··· X[1]
.. = .. .. .. .. .. (32)
N .
. 1 . . . .
x[N − 1] 1 w∗N−1 w∗(N−1)·2 ··· w∗(N−1)·(N−1) X[N − 1]
3 결론
3.1 알게된 점
3.2 느낀 점