X ( t , f ) = ∫ − ∞ ∞ w ( t − τ ) x ( τ ) e − j 2 π f τ d τ {\displaystyle X(t,f)=\int _{-\infty }^{\infty }w(t-\tau )x(\tau )e^{-j2\pi f\tau }d\tau } w ( t ) = e − π σ t 2 {\displaystyle w(t)=e^{-\pi \sigma t^{2}}}
令 t = n Δ t , f = m Δ f , τ = p Δ t {\displaystyle t=n\Delta _{t},f=m\Delta _{f},\tau =p\Delta _{t}} 可將式子改寫為離散形式:
X ( n Δ t , m Δ f ) = ∑ p = − ∞ ∞ w ( ( n − p ) Δ t ) x ( p Δ t ) e − j 2 π m p Δ t Δ f Δ t {\displaystyle {X}\left({n{\Delta _{t}},m{\Delta _{f}}}\right)=\sum \limits _{p=-\infty }^{\infty }{w\left({(n-p){\Delta _{t}}}\right){x}\left({p{\Delta _{t}}}\right)}{e^{-j2\pi \,mp{\Delta _{t}}{\Delta _{f}}}}{\Delta _{t}}} w ( t ) ≅ 0 f o r | t | > B , B Δ t = Q {\displaystyle w(t)\cong 0\qquad for\left|t\right|>B,{\frac {B}{\Delta _{t}}}=Q} w ( ( n − p ) Δ t ) ≅ 0 {\displaystyle w((n-p)\Delta _{t})\cong 0\qquad } f o r | n − p | > B Δ t {\displaystyle for\left|n-p\right|>{\frac {B}{\Delta _{t}}}} , | p − n | > Q {\displaystyle \left|p-n\right|>Q} therefore,only when − Q < p − n < Q {\displaystyle -Q<p-n<Q} w ( ( n − p ) Δ t ) {\displaystyle w((n-p)\Delta _{t})} is nonzero可改寫為:
X ( n Δ t , m Δ f ) = ∑ p = n − Q n + Q w ( ( n − p ) Δ t ) x ( p Δ t ) e − j 2 π m p Δ t Δ f Δ t {\displaystyle {X}\left({n{\Delta _{t}},m{\Delta _{f}}}\right)=\sum \limits _{p=n-Q}^{n+Q}{w\left({(n-p){\Delta _{t}}}\right){x}\left({p{\Delta _{t}}}\right)}{e^{-j2\pi \,mp{\Delta _{t}}{\Delta _{f}}}}{\Delta _{t}}} 按照此式即可實現 e − π σ a 2 < 0.00001 {\displaystyle e^{-\pi \sigma a^{2}}<0.00001} w h e n | a | > 1.9143 {\displaystyle when\left|a\right|>1.9143} Q = 1.9143 σ Δ t {\displaystyle Q={\frac {1.9143}{{\sqrt {\sigma }}\Delta t}}} B = 1.9143 σ {\displaystyle B={\frac {1.9143}{\sqrt {\sigma }}}}
(1) Δ t < 1 2 Ω Ω = Ω x + Ω w {\displaystyle {\Delta _{t}}<{\frac {1}{2\Omega }}\qquad {\Omega }={{\Omega _{x}}+{\Omega _{w}}}}
O(TFQ) T:時間取樣點數 F:頻率取樣點數 Q: Q = 1.9143 σ Δ t {\displaystyle Q={\frac {1.9143}{{\sqrt {\sigma }}\Delta t}}}
優點:簡單實現,限制條件少 缺點:時間複雜度高 FFT-Based Method(快速傅立葉轉換) 编辑 由Direct Implementation可得下式
X ( n Δ t , m Δ f ) = ∑ p = n − Q n + Q w ( ( n − p ) Δ t ) x ( p Δ t ) e − j 2 π m p Δ t Δ f Δ t {\displaystyle {X}\left({n{\Delta _{t}},m{\Delta _{f}}}\right)=\sum \limits _{p=n-Q}^{n+Q}{w\left({(n-p){\Delta _{t}}}\right){x}\left({p{\Delta _{t}}}\right)}{e^{-j2\pi \,mp{\Delta _{t}}{\Delta _{f}}}}{\Delta _{t}}} 令 q = p − ( n − Q ) → p = ( n − Q ) + q {\displaystyle q=p-(n-Q)\to p=(n-Q)+q} 且離散傅立葉轉換標準式 Y [ m ] = ∑ n = 0 N − 1 y [ n ] e − j 2 π m n N {\displaystyle Y[m]=\sum \limits _{n=0}^{N-1}y[n]e^{-j{\frac {2\pi mn}{N}}}} 可將式子整理為:
X ( n Δ t , m Δ f ) = Δ t e j 2 π ( Q − n ) m N ∑ q = 0 N − 1 x 1 ( q ) e − j 2 π q m N {\displaystyle {X}\left({n{\Delta _{t}},m{\Delta _{f}}}\right)={\Delta _{t}}{e^{j{\textstyle {{2\pi \,(Q-n)m} \over N}}}}\sum \limits _{q=0}^{N-1}{x_{1}\left({q}\right){e^{-j{\textstyle {{2\pi \,qm} \over N}}}}}} 按照此式將 x 1 {\displaystyle {x_{1}}} 以fft()算出帶入即可實現其中 x 1 ( q ) = w ( ( Q − q ) Δ t ) x ( ( n − Q + q ) Δ t ) {\displaystyle {x_{1}}\left(q\right)=w\left({(Q-q){\Delta _{t}}}\right)x\left({(n-Q+q){\Delta _{t}}}\right)} , 0 ≤ q ≤ 2 Q {\displaystyle 0\leq q\leq 2Q} , w ( t ) = e − π σ t 2 {\displaystyle w(t)=e^{-\pi \sigma t^{2}}}
x 1 ( q ) = 0 , 2 Q < q ≤ N {\displaystyle {x_{1}}\left(q\right)=0,2Q<q\leq N} Q = 1.9143 σ Δ t {\displaystyle Q={\frac {1.9143}{{\sqrt {\sigma }}\Delta t}}} B = 1.9143 σ {\displaystyle B={\frac {1.9143}{\sqrt {\sigma }}}} Matlab及python 皆可呼叫fft函式完成 Y [ m ] = ∑ n = 0 N − 1 y [ n ] e − j 2 π m n N {\displaystyle Y[m]=\sum \limits _{n=0}^{N-1}y[n]e^{-j{\frac {2\pi mn}{N}}}} 假設 t = n 0 Δ t , ( n 0 + 1 ) Δ t , ⋯ ⋯ , ( n 0 + T − 1 ) Δ t {\displaystyle t=n_{0}\Delta _{t},(n_{0}+1)\Delta _{t},\cdots \cdots ,(n_{0}+T-1)\Delta _{t}}
f = m 0 Δ f , ( m 0 + 1 ) Δ f , ⋯ ⋯ , ( m 0 + F − 1 ) Δ f {\displaystyle \,f=m_{0}\Delta _{f},(m_{0}+1)\Delta _{f},\cdots \cdots ,(m_{0}+F-1)\Delta _{f}} step 1:計算 n 0 , m 0 , T , F , N , Q {\displaystyle n_{0},m_{0},T,F,N,Q} step 2: n = n 0 {\displaystyle n=n_{0}} step 3:決定 x 1 ( q ) {\displaystyle x_{1}(q)} step 4: X 1 ( m ) = F F T [ x 1 ( q ) ] {\displaystyle X_{1}(m)=FFT[x_{1}(q)]} step 5:轉換 X 1 ( m ) {\displaystyle X_{1}(m)} 成 X ( n Δ t , m Δ f ) {\displaystyle X(n\Delta _{t},m\Delta _{f})} step 6:設 n = n + 1 {\displaystyle n=n+1} and return to Step 3 until n = n 0 + T + 1 {\displaystyle n=n_{0}+T+1} (1) Δ t < 1 2 Ω Ω = Ω x + Ω w {\displaystyle {\Delta _{t}}<{\frac {1}{2\Omega }}\qquad {\Omega }={{\Omega _{x}}+{\Omega _{w}}}} (基本上任何實現方法都要避免贋頻效應) (2) Δ t Δ f = 1 N {\displaystyle {\Delta _{t}}{\Delta _{f}}={\textstyle {1 \over {N}}}} (3) N = 1 / Δ t Δ f ≥ 2 Q + 1 {\displaystyle N=1/{\Delta _{t}}{\Delta _{f}}\geq 2Q+1} O ( T N log 2 N ) {\displaystyle O(TN{\log _{2}}N)}
優點:時間複雜度低 缺點:限制條件較直接實現法多 可改寫為:由Direct Implementation可得下式
X ( n Δ t , m Δ f ) = ∑ p = n − Q n + Q w ( ( n − p ) Δ t ) x ( p Δ t ) e − j 2 π m p Δ t Δ f Δ t {\displaystyle {X}\left({n{\Delta _{t}},m{\Delta _{f}}}\right)=\sum \limits _{p=n-Q}^{n+Q}{w\left({(n-p){\Delta _{t}}}\right){x}\left({p{\Delta _{t}}}\right)}{e^{-j2\pi \,mp{\Delta _{t}}{\Delta _{f}}}}{\Delta _{t}}} e − π σ a 2 < 0.00001 {\displaystyle e^{-\pi \sigma a^{2}}<0.00001} w h e n | a | > 1.9143 {\displaystyle when\left|a\right|>1.9143} Q = 1.9143 σ Δ t {\displaystyle Q={\frac {1.9143}{{\sqrt {\sigma }}\Delta t}}} B = 1.9143 σ {\displaystyle B={\frac {1.9143}{\sqrt {\sigma }}}}
令 e x p ( − j 2 π m p Δ t Δ f ) = e x p ( − j π p 2 Δ t Δ f ) e x p ( j π ( p − m ) 2 Δ t Δ f ) e x p ( − j π m 2 Δ t Δ f ) {\displaystyle exp(-j2\pi \,mp{\Delta _{t}}{\Delta _{f}})=exp(-j\pi \,p^{2}{\Delta _{t}}{\Delta _{f}})exp(j\pi \,{(p-m)}^{2}{\Delta _{t}}{\Delta _{f}})exp(-j\pi \,m^{2}{\Delta _{t}}{\Delta _{f}})} 可將式子改寫為:
X ( n Δ t , m Δ f ) = Δ t ∑ p = n − Q n + Q w ( ( n − p ) Δ t ) x ( p Δ t ) e − j 2 π m p Δ t Δ f → X ( n Δ t , m Δ f ) = Δ t e − j π m 2 Δ t Δ f ∑ p = n − Q n + Q w ( ( n − p ) Δ t ) x ( p Δ t ) e − j π p 2 Δ t Δ f e j π ( p − m ) 2 Δ t Δ f {\displaystyle {X}\left({n{\Delta _{t}},m{\Delta _{f}}}\right)={\Delta _{t}}\sum \limits _{p=n-Q}^{n+Q}{w\left({(n-p){\Delta _{t}}}\right){x}\left({p{\Delta _{t}}}\right)}{e^{-j2\pi \,mp{\Delta _{t}}{\Delta _{f}}}}\to {X}\left({n{\Delta _{t}},m{\Delta _{f}}}\right)={\Delta _{t}}{e^{-j\pi \,m^{2}{\Delta _{t}}{\Delta _{f}}}}\sum \limits _{p=n-Q}^{n+Q}{w\left({(n-p){\Delta _{t}}}\right){x}\left({p{\Delta _{t}}}\right)}{e^{-j\pi \,p^{2}{\Delta _{t}}{\Delta _{f}}}}{e^{j\pi \,{(p-m)}^{2}{\Delta _{t}}{\Delta _{f}}}}} 按此式即可實現Step1: x 1 [ p ] = w ( ( n − p ) Δ t ) x ( p Δ t ) e − j π p 2 Δ t Δ f {\displaystyle x_{1}[p]=w((n-p)\Delta _{t})x(p\Delta _{t})e^{-j\pi p^{2}\Delta _{t}\Delta _{f}}} n − Q ≤ p ≤ n + Q {\displaystyle \quad \quad n-Q\leq p\leq n+Q} Step2: X 2 [ n , m ] = ∑ p = n − Q n + Q x 1 [ p ] c [ m − p ] c [ m ] = e j π m 2 Δ t Δ f {\displaystyle X_{2}[n,m]=\sum _{p=n-Q}^{n+Q}x_{1}[p]c[m-p]\quad \quad c[m]=e^{j\pi m^{2}\Delta _{t}\Delta _{f}}} Step3: X ( n Δ t , m Δ f ) = Δ t e − j π m 2 Δ t Δ f X 2 [ m , n ] {\displaystyle X(n\Delta _{t},m\Delta _{f})=\Delta _{t}e^{-j\pi m^{2}\Delta _{t}\Delta _{f}}X_{2}[m,n]} (1) Δ t < 1 2 Ω Ω = Ω x + Ω w {\displaystyle {\Delta _{t}}<{\frac {1}{2\Omega }}\qquad {\Omega }={{\Omega _{x}}+{\Omega _{w}}}}
O ( T N log 2 N ) {\displaystyle O(TN{\log _{2}}N)}
優點:限制條件與Direct Implementation法一樣基本上沒有限制 缺點:時間複雜度與FFT-Based Method(快速傅立葉轉換)一樣 但由於加伯轉換無法使用Recursive Method(遞迴法)所以此不能算是缺點