這份是本人的學習筆記,課程為網易公開課上的斯坦福大學公開課:傅里葉變換及其應用。
卷積在濾波中的應用
渾濁度(Turbidity)研究是關於測量水的清澈度的研究。大致方法是把光傳感器放置到深水區域,然后測量光線的昏暗程度,測量出來的值將隨時間變化。
(由於沒有真實數據,下面用mathematica比較粗糙地模擬水域的渾濁度數據)
能看到信號主要集中在低頻,我們需要把毛刺去除,也就是把高頻去除,在頻域進行低通濾波(Low Pass Filtering)
濾波后的波形如下
頻域運算:$\pi_{2\nu_c} F(s)$;時域運算為卷積:$2\nu_c sinc(2\nu_c t)*f(t)$。
濾波概念
濾波(Filtering)通常等同於卷積,濾波是由濾波器實現的。
濾波器(Filter)是一個輸入可變的函數(信號)與一個固定的函數(信號)進行卷積運算的系統。這個固定的信號叫做脈沖響應(impulse response)。
$g \quad = \quad f \qquad * \qquad h$
$\qquad output \qquad input \qquad impulse \ response$
卷積是在時域的表示方法,一般來說,頻域的運算會比時域簡單許多,因為頻域只需執行相乘運算。
$G(s) = F(s)H(s)$
$H(s)$被稱為傳遞函數(transfer function),在設計濾波器時通常是設計合適的傳遞函數$H(s)$。
下面是比較常用的濾波器。
低通濾波器(low pass filter),常用於圖像壓縮。
高通濾波器(high pass filter),常用於邊緣檢測(edge detection)
帶通濾波器(band pass filter)
卷積的含義
教授認為只需要從頻域理解為函數的相乘即可,而在時域上不需要去具象化卷積。(I think it is equally idiotic to try to visualize convolution. I think the way to visualize convolution, if there is a way, is to think in terms of multiplying in the frequency domain.)
卷積的性質
一般來說$f*g$通常比單獨的$f$和$g$更加平滑。
如:矩形函數$\Pi$是不連續的,兩個$\Pi$函數的卷積是三角函數$\Lambda$,是連續的。
$\mathcal{F}(\Pi * \Pi) = (\mathcal{F} \Pi)(\mathcal{F} \Pi) = sinc^2 = \mathcal{F} \Lambda$
傅里葉導數定理
對原函數進行微分后,它的傅里葉變換等於其原函數的傅里葉變換乘以$2\pi is$
$\mathcal{F}(f')(s) = 2\pi is(\mathcal{F} f)(s)$
證明過程如下:
傅里葉逆變換有:
$f(t) = \displaystyle{\int_{-\infty}^{\infty} F(s)e^{2\pi ist}ds }$
對其求微分,
$\begin{align*}
\frac{\partial f}{\partial t}
&= \int_{-\infty}^{\infty}F(s)(2\pi ise^{2\pi ist})ds \\
&= \int_{-\infty}^{\infty}(2\pi isF(s))e^{2\pi ist}ds \\
\end{align*}$
則有$f'$與$2\pi isF(s)$為傅里葉變換的關系
$f' \ \leftrightarrow \ 2\pi isF(s)$
推廣開來有
$\mathcal{F}(f^n)(s) = (2\pi is)^n(\mathcal{F} f)(s)$
無限長柱上的熱方程
$U(x,t)$表示時間$t$,位置$x$上的溫度。
已知初始溫度為$U(x,0) = f(x)$,熱方程為$U_t = \frac{1}{2}U_{xx}$。
$U(x,t)$的求解過程如下:
對位置變量進行$x$求傅里葉變換,假設變換的結果為$U(s,t)$。
對熱方程等號左邊進行傅里葉變換,
$\begin{align*}
\mathcal{F}(U_t)
&= \int_{-\infty}^{\infty}e^{-2\pi isx} \frac{\partial}{\partial t}U(x,t)dx \\
&= \frac{\partial}{\partial t}\int_{-\infty}^{\infty} e^{-2\pi isx}U(x,t)dx \\
&= \frac{\partial}{\partial t}U(s,t)
\end{align*}$
對熱方程等號右邊進行傅里葉變換,
$\mathcal{F}(\frac{1}{2}U_{xx}) = \frac{1}{2}(2\pi is)^2U(s,t) = –2\pi ^2s^2U(s,t)$
即有
$\frac{\partial}{\partial t}U(s,t) = –2\pi^2s^2U(s,t)$
求偏微分方程,得
$U(s,t) = U(s,0)e^{-2\pi^2s^2t}$
$U(s,0) = \displaystyle{\int_{-\infty}^{\infty}U(x,0)e^{-2\pi isx}dx=\int_{-\infty}^{\infty}f(x)e^{-2\pi isx}dx = F(s) }$
把$U(s,0)$的結果代入$U(s,t)$,得
$U(s,t) = F(s)e^{-2\pi ^2s^2t}$
轉換為卷積格式
$e^{-2pi ^2s^2t} = \mathcal{F}(\frac{1}{\sqrt{2\pi t}}e^{\frac{x^2}{2t}})$
$\begin{align*}
U(s,t)
&= F(s)e^{-2\pi ^2s^2t}\\
&= (\mathcal{F} f)(\mathcal{F} (\frac{1}{\sqrt{2\pi t}}e^{\frac{x^2}{2t}}))\\
&= \mathcal{F}(f* \frac{1}{\sqrt{2\pi t}}e^{\frac{x^2}{2t}})
\end{align*}$
$U(x,t) = f(x) * \frac{1}{\sqrt{2\pi t}}e^{\frac{x^2}{2t}}$