[傅里叶变换及其应用学习笔记] 九. 继续卷积的讨论
这份是本人的学习笔记,课程为网易公开课上的斯坦福大学公开课:傅里叶变换及其应用。
卷积在滤波中的应用
浑浊度(Turbidity)研究是关于测量水的清澈度的研究。大致方法是把光传感器放置到深水区域,然后测量光线的昏暗程度,测量出来的值将随时间变化。
(由于没有真实数据,下面用mathematica比较粗糙地模拟水域的浑浊度数据)
能看到信号主要集中在低频,我们需要把毛刺去除,也就是把高频去除,在频域进行低通滤波(Low Pass Filtering)
滤波后的波形如下
频域运算:π2νcF(s);时域运算为卷积:2νcsinc(2νct)∗f(t)。
滤波概念
滤波(Filtering)通常等同于卷积,滤波是由滤波器实现的。
滤波器(Filter)是一个输入可变的函数(信号)与一个固定的函数(信号)进行卷积运算的系统。这个固定的信号叫做脉冲响应(impulse response)。
g=f∗h
outputinputimpulse 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更加平滑。
如:矩形函数Π是不连续的,两个Π函数的卷积是三角函数Λ,是连续的。
F(Π∗Π)=(FΠ)(FΠ)=sinc2=FΛ
傅里叶导数定理
对原函数进行微分后,它的傅里叶变换等于其原函数的傅里叶变换乘以2πis
F(f′)(s)=2πis(Ff)(s)
证明过程如下:
傅里叶逆变换有:
f(t)=∫∞−∞F(s)e2πistds
对其求微分,
∂f∂t=∫∞−∞F(s)(2πise2πist)ds=∫∞−∞(2πisF(s))e2πistds
则有f′与2πisF(s)为傅里叶变换的关系
f′ ↔ 2πisF(s)
推广开来有
F(fn)(s)=(2πis)n(Ff)(s)
无限长柱上的热方程
U(x,t)表示时间t,位置x上的温度。
已知初始温度为U(x,0)=f(x),热方程为Ut=12Uxx。
U(x,t)的求解过程如下:
对位置变量进行x求傅里叶变换,假设变换的结果为U(s,t)。
对热方程等号左边进行傅里叶变换,
F(Ut)=∫∞−∞e−2πisx∂∂tU(x,t)dx=∂∂t∫∞−∞e−2πisxU(x,t)dx=∂∂tU(s,t)
对热方程等号右边进行傅里叶变换,
\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}}
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 自定义通信协议——实现零拷贝文件传输
· Brainfly: 用 C# 类型系统构建 Brainfuck 编译器
· 智能桌面机器人:用.NET IoT库控制舵机并多方法播放表情
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· DeepSeek 全面指南,95% 的人都不知道的9个技巧(建议收藏)
· 自定义Ollama安装路径
· 本地部署DeepSeek
· 快速入门 DeepSeek-R1 大模型
· DeepSeekV3+Roo Code,智能编码好助手