Math♾️/Fourier Analysis
-
FFT가 빠른 이유Math♾️/Fourier Analysis 2023. 6. 22. 15:58
다항식 A(x)와 B(x)의 곱을 C(x)라고 하자. 이때 다항식 C(x)의 각 항의 계수들은 다음과 같이 각 항을 차례대로 곱하는 분배법칙을 통해서 구할 수 있다. 다항식 간의 곱 연산 시 계산되는 요소는 각 항의 계수이므로 다음과 같이 다항식의 각 항의 계수들만 배열의 형태로 나타내는 방법을 Coefficient Representation이라고 한다. Coefficient Representation을 이용해 각 항을 곱해나가며 계산을 할 경우 A(x)의 각 항은 B(x)의 모든 항과 한 번씩 곱연산을 수행해야 한다. 따라서 A(x), B(x)를 최고차항이 d라고 하면 A(x)의 하나의 항당 B(x)의 모든 d개의 항에 대해서 곱연산을 하며 이를 A(x)의 모든 d개 항에 실시하므로 기본적으로 총 d*..
-
푸리에 변환은 차원을 확장시켜 파형을 분해한다.Math♾️/Fourier Analysis 2023. 5. 30. 14:56
일반적으로 코사인 그래프는 다음과 같이 x(시간) 축에 대하여 y(진폭) 축 방향으로 위, 아래로 왔다 갔다 하면서 나타난다. 시간에 따른 점의 위치를 나타내는 코사인 함수를 각 시간 t에 대한 진폭 값들을 y축에 사영함으로써 시간의 경과를 나타내는 x축을 점의 움직임으로 전환하여 1차원 상에서 표현할 수 있다. 이와 같이 코사인 함수를 일차원상에서 나타내게 되면 시간이 무한이 증가해도 점은 수평면 상에서 좌우로 왔다 갔다 하며 반복적으로 움직일 뿐이다. 이렇게 주기성을 가지는 움직임의 형태를 'sinusodial'이라고 한다. 시간 요소를 점의 움직임으로 나타내면서 일차원 상에서 코사인 그래프를 나타낼 수 있게 되었다. 이 방법을 이용하여 점의 움직임을 2차원으로 확대해 보자. 하나의 좌표축으로 하나의..
-
컨볼루션(합성 곱) 에 대한 직관적 이해Math♾️/Fourier Analysis 2023. 5. 15. 15:04
합성곱이라고도 불리는 'Convolution'은 소리 신호 필터링, 영상 처리등과 같이 입력과 이에 대한 출력이 존재하는 경우 입력을 목적에 따라 가공해서 원하는 출력을 얻기 위해서 사용하는 연산이다. 다양한 분야에서 사용되는 만큼 자주 만나게 되는 연산이지만 수식의 전개로만 이해하기에는 너무 추상적이기 때문에 그 분야에서 적용되는 연산 방법을 외우고 이를 그냥 활용하기만 하는 경우가 있다. 이 합성곱이 일반적으로는 어떠한 의미를 갖고 있는지를 살펴보는 과정을 통해 합성곱이 입력과 출력사이에서 어떠한 역할을 하는지에 대한 직관을 얻을 수 있도록 해보았다. 추상적인 것을 이해하는 방법 중 하나는 알고자 하는 것에 대한 가장 단순한 예를 생각해 보고 이를 기초로 점점 다양한 상황에 적용될 수 있도록 일반화하..
-
라플라스 변환은 푸리에 변환의 일반형이다.Math♾️/Fourier Analysis 2022. 9. 23. 22:07
푸리에 변환 푸리에 변환은 주기 함수의 주기를 무한대로 함으로써 파형의 주기성을 제거하고 파형자체만 남겼다. 이를 진동수 축에 사영시킴으로써 시간에 대하여 나타나던 파형을 진동수에 대해 나타낼 수 있었다. 푸리에 변환을 하기 위해서는 대상이 되는 함수가 주기를 가지고 있어야한다. (하나의 구간에 파형의 전체가 나타나야한다.) 주기를 가진 함수는 주기를 무한대로 보내어 하나의 구간에 대해서 확대되어 나타내면 양쪽값이 0에 수렴한다. 하지만 주기함수가 아닌 일반적인 함수에서 양쪽 값 모두 0에 수렴하지 않는 경우에 푸리에 변환을 적용할 수 가 없다. 라플라스 변환 라플라스 변환은 푸리에 변환을 적용할 수 없는 함수에 대하여 푸리에 변환을 가능하게 한 방법이다. Heaviside 계단 함수를 예로 들면 아래와..
-
Wavelets and Multi resolution AnalysisMath♾️/Fourier Analysis 2022. 9. 22. 22:54
파형의 분석 방법 파형을 분석하는데 있어서 domain에 따라 세가지 방법으로 나누어졌다. 1. 시간 $t$에 대하여 기본적으로는 시간에 따른 데이터의 변화를 측정한다. -> 자연에서 나타나는 현상의 변화는 기본적으로 시간에 대하여 설명되기 때문이다. 2. 진동수 $w$에 대하여 푸리에 변환을 통해 파형을 구성하는 진동수가 어떤 진동수이며 해당 진동수들이 얼마나 포함되어 있는지 분석 할 수 있었다. 3. 시간 $t$와 진동수 $w$에 대하여 Gabor Transform을 통해 특정 시점에서 어떠한 진동수들이 얼마나 들어있는지 분석 할 수 있었다. * Gabor Transform을 통해서 시간과 진동수 모두에 대하여 파동을 분석할 수 있게 되었지만 불확정성의 원리에 따라 각각에 대하여 분석하였을 때보다 해..
-
불확정성의 원리 with Fourier TransformMath♾️/Fourier Analysis 2022. 9. 21. 23:14
각 시점에서 파형이 어떠한 진동수로 구성되어 있는지 분해하기 위하여 Gabor Transform을 이용하였다. Gabor Transform을 하게 되면 진동수와 시간을 같은 좌표에서 나타낼 수 있어 특정 시점에서의 진동수들의 분해가 가능하기 때문이다. 하지만 시간 $t$에 대해서만 나타냈을 때와 푸리에 변환하여 진동수 $w$에 대해서만 나타냈을 때와 비교하면 각 축에 대한 해상도가 떨어지는 점을 알 수 있다. ( $\Delta x, \Delta w$가 증가한다.)-> 구분 가능한 개수가 줄어든다. - 불확정성의 원리 Gabor transform을 하였을 때 각각 $t$와 $w$로 나타내었을 때보다 해상도가 떨어지는 이유를 불확정성 원리에 의해 설명된다. 하이젠베르크의 불확정원리는 입자의 위치와 운동량을 ..
-
The Spectrogram and the Gabor TransformMath♾️/Fourier Analysis 2022. 9. 21. 21:01
Gabor Transform 음악을 듣는다 했을 때 소리는 공기의 진동으로 나타나는 파동의 형태로 귀로 들어오게 될것이다. 이러한 파동을 시간에 대하여 나타내면 아래와 같이 나타난다. 시간 domain에서는 특정시간($t_0$)에서의 파동의 형태를 알 수는 있지만 그 파동이 어떠한 진동수로 구성되어 있는지 알 수가 없다. 위와 같은 파동을 푸리에 변환하게 되면 파동이 어떠한 진동수들로 구성되어 있는지 또 해당 진동수들은 얼마나 포함되어 있는지 알 수 있다. 하지만 진동수 domain에서는 특정 진동수($c$)가 어느 시점(시간)에 나타나는지 알 수 없다. 시간 domain에서는 진동수에 대한 정보가 진동수 domain에서는 시간에 대한 정보가 없어서 특정 시점에서 파동이 어느 진동수로 구성되어 있는지에 ..