[傅里叶变换及其应用学习笔记] 九. 继续卷积的讨论

这份是本人的学习笔记,课程为网易公开课上的斯坦福大学公开课:傅里叶变换及其应用。

卷积在滤波中的应用

浑浊度(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$,是连续的。

$\eta(\Pi * \Pi) = (\eta \Pi)(\eta \Pi) = sinc^2 = \eta \Lambda$

傅里叶导数定理

对原函数进行微分后,它的傅里叶变换等于其原函数的傅里叶变换乘以$2\pi is$

$\eta(f‘)(s) = 2\pi is(\eta 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)$

推广开来有

$\eta(f^n)(s) = (2\pi is)^n(\eta 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*}
\eta(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*}$

对热方程等号右边进行傅里叶变换,

$\eta(\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} = \eta(\frac{1}{\sqrt{2\pi t}}e^{\frac{x^2}{2t}})$

$\begin{align*}
U(s,t)
&= F(s)e^{-2\pi ^2s^2t}\\
&= (\eta f)(\eta (\frac{1}{\sqrt{2\pi t}}e^{\frac{x^2}{2t}}))\\
&= \eta(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}}$

时间: 2024-08-07 08:19:16

[傅里叶变换及其应用学习笔记] 九. 继续卷积的讨论的相关文章

APUE 学习笔记(九) 高级I/O

1. 非阻塞I/O 低速系统调用时可能会使进程永远阻塞的一类系统调用,包括以下调用: (1)某些文件类型你(网络socket套接字.终端设备.管道)暂无可使用数据,则读操作可能会使调用者永远阻塞 (2)如果数据不能立即被(1)中文件类型接受,则写操作会使调用者永远阻塞 (3)某些进程间通信函数 非阻塞I/O使我们可以调用open.read.write这样的I/O操作,并使这些操作不会永远阻塞,如果这种操作不能完成,则调用立即出错返回 对于一个给定的文件有两种方法对其指定非阻塞I/O: (1)调用

python学习笔记九——文件与目录

1.python进行文件读写的函数是open或file类 mode:r  只读 r+   读写 w  写入,先删除原文件,再重新写入,如果文件没有则创建 w+  读写,先删除原文件,再重新写入,如果文件没有则创建(可写入和输出) a  写入,在文件末尾追加新的内容,文件不存在则创建 a+  读写,在文件末尾追加新的内容,文件不存在则创建 b  打开二进制文件,可与r,w,a,+结合使用 U  支持所有的换行符号,"\r","\n","\r\n"

angular学习笔记(九)-css类和样式3

再来看一个选择li列表的例子: 点击li中的任意项,被点击的li高亮显示: <!DOCTYPE html> <html ng-app> <head> <title>6.3css类和样式</title> <meta charset="utf-8"> <script src="../angular.js"></script> <script src="scri

angular学习笔记(九)-css类和样式2

在上一个例子中,元素的类名使用拼接的方法,这样,类名中就不得不带有true或false,并且不易维护,所以,angular使用ng-class属性来控制元素的类名: 我们来看一个小例子,点击error按钮,顶部提示错误框,点击warning按钮,顶部提示警告框. 错误框的类名是.err,警告框的类名是.warn: <!DOCTYPE html> <html ng-app> <head> <title>6.2css类和样式</title> <

Linux System Programming 学习笔记(九) 内存管理

1. 进程地址空间 Linux中,进程并不是直接操作物理内存地址,而是每个进程关联一个虚拟地址空间 内存页是memory management unit (MMU) 可以管理的最小地址单元 机器的体系结构决定了内存页大小,32位系统通常是 4KB, 64位系统通常是 8KB 内存页分为 valid or invalid: A valid page is associated with an actual page of data,例如RAM或者磁盘上的文件 An invalid page is

虚拟机VMWare学习笔记九 - 物理机上的文件挂载到虚拟机上

物理机上的文件夹或盘符直接挂载到虚拟机上使用. VM -- Settings Options -- Shared Folders -- 勾选Always enabled , 勾选Map as a network drive in Windows guests 在点击下面的添加来添加共享的文件夹 选择路径 可以看到虚拟机中的共享文件夹已经出现在Windows 中了 虚拟机VMWare学习笔记九 - 物理机上的文件挂载到虚拟机上

初探swift语言的学习笔记九(OC与Swift混编)

swift 语言出来后,可能新的项目直接使用swift来开发,但可能在过程中会遇到一些情况,某些已用OC写好的类或封装好的模块,不想再在swift 中再写一次,哪就使用混编.这个在IOS8中是允许的. 先中简单的入手,先研究在同一个工程目录下混合使用的情况. 为了演示.先准备两个类 第一个是swift语言写的类,文件名为 act.swift import Foundation class Act : NSObject { func hasAct(tag:Int) -> String { swit

《Hibernate学习笔记九》:多对一和一对多的关联关系

<Hibernate学习笔记九>:多对一和一对多的关联关系 前面介绍了一对一的关联关系在Hibernate应该如何来实现,这篇博文就来介绍下多对一和一对多的关联关系. 多对一和一对多的关联关系在我们的生活中也比较常见,例如,在我们学生时代,一个班级可以有多个学生,而一个学生只能属于一个班级,这就是一个多对一(一对多)的例子: 还有在我们的工作中,一个工作小组可以有多个用户,而一个用户只能属于一个小组,这也是一个多对一(一对多)的关系的例子. 1.多对一的单向关联关系 下面就以一个工作小组可以有

[傅里叶变换及其应用学习笔记] 十. 卷积与中心极限定理

这份是本人的学习笔记,课程为网易公开课上的斯坦福大学公开课:傅里叶变换及其应用. 中心极限定理(Central Limit Theorem) 中心极限定理,简称CLT.大多数概率事件,当有足够多的取样时,都服从高斯分布.(Most probabilities – some kind of average – are calculated or approximated as if they are determined by a Gaussian.) 标准正态(高斯)分布 在傅里叶变换中,我们用