공부
[딥러닝 공부] FFT, 퓨리에 변환이란?
gyuilLim
2024. 6. 25. 14:35
반응형
퓨리에 변환
- 파형은 일정한 주기를 가지고 있다.
- 파형의 성질을 적절히 수량화하면 분류기가 두 신호를 분류하는데 쓸모 있는 특징이 될 수 있다.
파형의 선형 결합
- 위 두 개의 그래프는 아래 두 개의 그래프(기저 함수)의 선형 결합으로 나타낸 것이다.
- $s_1(x) = 0.5g_1(x) + 1.5g_2(x)$
- $s_2(x) = 1.5g_1(x) + 0.5g_2(x)$
- 이 계수들을 특징으로 삼을 수 있다.
- 실제 상황에서는 계수를 미리 알 수 없다. 따라서 퓨리에 변환을 통해 기저 함수의 계수를 구한다.
입력 신호 : $\mathbf s = (s(0), s(1), \cdots, s(n-1))^T$
- 입력 신호 $\mathbf s$는 $n$개의 값으로 구성된다.
- $s(i)$에서 $i$는 경우에 따라 시간 또는 위치를 나타내는 매개 변수이다. (음성 신호인 경우 시간을 나타냄)
퓨리에 변환 : $f(u) = \frac{1}{\sqrt n} \sum^{n-1}_{i=0} s(i) exp(-j \frac{2\pi ui}{n}), u=0, \cdots, n-1$
- 입력 신호가 디지털일 때 퓨리에 변환을 위한 식, 이산 퓨리에 변환
- $j$는 복소수에 나타내는 $\sqrt -1$을 의미한다.
- $s(i)$를 $f(u)$로 변환한다.($u$는 주파수) 즉 퓨리에 변환은 시간 공간을 주파수 공간으로 바꾸어준다.
이산 퓨리에 변환
- 위 네 개의 점을 이산 퓨리에 변환하면
- $f(0) = 0.5(1.7e^0 + 0.6e^0 +1.5e^0 + 1.2e^0) = 2.5 + j0$ 과 같이 실수부와 허수부로 나타낼 수 있다.
- 네 개의 점에 대해 실수부와 허수부를 표로 정리하면 아래와 같다.
u | 실수부 | 허수부 |
0 | 2.5 | 0 |
1 | 0.1 | 0.3 |
2 | 0.7 | 0 |
3 | 0.1 | -0.3 |
- 즉 $f(u)$ 는 실수부와 허수부로 구성되는데, 이 때 파워 스펙트럼을 구해 특징으로 취할 수 있다.
파워 스펙트럼
- 파워 스펙트럼 : $p(u) = \sqrt {real(f(u))^2 + imag(f(u))^2}, u = 0, \cdots , n-1$
- 이산 퓨리에 변환으로 구한 실수부와 허수부를 각각 대입하면 아래와 같은 4차원 벡터를 얻게 된다.
- $\mathbf x = (2.5, 0.316, 0.7, 0.316)^T$. 이 특징을 퓨리에 특징이라고 한다.
728x90