当前位置: 首页 > article >正文

【数字图像处理】一篇搞定傅里叶变换

🌈 个人主页:十二月的猫-CSDN博客
🔥 系列专栏: 🏀软件开发必备知识_十二月的猫的博客-CSDN博客

💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光

目录

1. 自然常数e

 2. 理解复数i

3. 傅里叶级数

3.1 频域

为什么进行时域和频域特性分析:

3.2 傅里叶级数

4. 傅里叶变换

4.1 卷积

4.2 傅里叶变换公式的理解

5. 总结 


1. 自然常数e

傅里叶变换中最重要的部分就是欧拉公式,欧拉公式中最重要的部分就是自然常数e。

因此这里,我们来讲讲自然常数e。


起源:

自然对数起源于 雅各布·伯努利 。

这位伯努利在研究复利原理时偶然发现:

如果把自己的一块钱存入银行,银行年利率为100%,那么即使他在一年中不停把利息取出来并和本金重新放入银行,重新开始计算本金+利息的新利息。自己所获得的钱也不会超过一个数2.7182........。这个数就是e

取出70次: 

取出184次:

取出217次:


自然常数e与其他数的关系:

在自然常数e被提出来后,很多数学家开始研究这个自然常数和其他的分数(小数)、整数等数有什么关系。

数学、物理等自然科学在发现一个新现象后,都有必要将这个新的东西和之前旧的知识体系联系起来。

这种大一统的研究一直让无数科学家们痴迷、痛苦。比如爱因斯坦就一直很想将量子力学、牛顿力学、相对论从某种角度去统一化,而不是相互割裂的

因此,就提出了:

e=1+\frac1{1!}+\frac1{2!}+\frac1{3!}+\frac1{4!}+\frac1{5!}+\frac1{6!}+\frac1{7!}+....

后面又拓展到泰勒级数:

\boldsymbol{e}^\times\boldsymbol{=} 1+\frac{x}{1!}+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+\frac{x^5}{5!}+\frac{x^6}{6!}+\frac{x^7}{7!}+\frac{x^8}{8!}+\cdots


自然常数e和三角函数的关系 :

至此,自然常数已经和我们的原先数学体系相联系了,但是数学家们还是不满足,于是又有数学家发现:

\text{sin(x) = }\frac{x}{1!}\quad-\quad\frac{x^3}{3!}\quad+\quad\frac{x^5}{5!}\quad-\quad\frac{x^7}{7!}\quad+\quad\cdots

  \cos(x)=1\quad-\quad\frac{x^2}{2!}\quad+\quad\frac{x^4}{4!}\quad-\quad\frac{x^6}{6!}\quad+\quad\frac{x^8}{8!}+.....

好像当初,我们发现sin和cos函数时,我们也用类似的展开式去联系上 数学大厦的。

那么e^x和sin、cos有什么关系吗?

sin(x)+cos(x)= 1+\frac{x}{1!}-\frac{x^{2}}{2!}-\frac{x^{3}}{3!}+\frac{x^{4}}{4!}+\frac{x^{5}}{5!}-\frac{x^{6}}{6!}-\frac{x^{7}}{7!}+\frac{x^{8}}{8!}+\cdots

此时出现一个大问题:x^2前面是负的,要把它变为正的,那就需要一个东西,它平方后为负的。

但是没有东西平方后是负数呀~~~~~~

这个问题过了很久才有人解答,最后就是创造了一个东西 i 

令i^2=-1 

大功告成!!!!!

于是可以推导出:

e^{ix}=cos(x)+isin(x)

数学史上最美公式之一:

        e^{i\pi }+1=0

这个公式将自然常数这一个无理数,连同pi这个无理数,和一个自然数1产生了联系!!!!

无理数 联系 有理数!!


 2. 理解复数i

通过前一部分的内容,我们想必对自然常数e有了一定的理解。

相信我,这是理解傅里叶变化的必要前提之一!!!

前提回顾:

        1、自然常数e来源于复利定理

        2、自然常数e能够用泰勒展开和分数产生联系

        3、自然常数e能够与三角函数sin、cos产生联系,得到欧拉公式

        4、欧拉公式的特殊形式:欧拉恒等式

        5、自然常数e能够和复数i产生联系 

接下来,我们来看看复数i。

我们前面已经见过i了。为了整合e和sin、cos,数学家们引入了i 。

在引入i后,实际上从坐标系角度就引入了另一个坐标——复数坐标,也叫复平面

没有复平面之前,一个数x就是一维坐标,两个数(x,y)构成二维坐标。

由于复数i的引入,数出现了奇奇怪怪的变化~~~~~~~~~

例如:

3+4i

我们知道一个维度上的数两两是能够直接相加的,但是显然3和4i不能相加,因此两者不在一个坐标轴上!!!!

为此,我们只能引入复数轴,制造出复平面(一维坐标的复平面)

如下图:

记住哈!!!!引入i后,4i和3是两个维度的东西,不会在一起处理 

后面要考!

一个小栗子:

复数的乘除可以转化为自然常数来处理

3. 傅里叶级数

前面两个部分,我们分别掌握了欧拉公式、欧拉恒等式以及复数的概念。

接下来,正式进入正题!!!傅里叶变换与傅里叶级数 

3.1 频域

傅里叶变化能够将时域波转化为频域波

从我们出生,我们看到的世界都以时间贯穿,股票的走势、人的身高、汽车的轨迹都会随着时间发生改变。这种以时间作为参照来观察动态世界的方法我们称其为时域分析。而我们也想当然的认为,世间万物都在随着时间不停的改变,并且永远不会静止下来。

所以,我们很自然的就认为认识世界的方式就是四维时空的角度(三维空间+一维时间)

当然,这肯定是不对的!!!!!!

认识世界可以从时域角度,但是也可以从频域角度。


 那么什么是频域,频域又为什么也能够传达和四维时空一样的信息呢?

听我慢慢道来~~~~


在你的理解中,一段音乐是什么?或者说声音是什么?

毫无疑问,很多人会说,声音就是一段声波,音乐也是一段声波。(这也就是时域信息

因为波的性质,我们记录下声音可以采用采样的方法:

在一段足够小的间隔采一次样,存储下所有采样点

只要采样点足够,我们也就是存储了声音,如下图:


那么,我们记录声音除了上面说的:“根据声音是波,所以可以记录波的采样点外,还有其他的存储方式吗?”

显然是有的。

上图是一个五线谱,明白五线谱的人便可以根据五线谱弹奏出优美的音乐~~~~~

这说明,五线谱也是一个存储声音的方式!!!!!!

这说明,声音还有其他的特性!!!!!

那么这个特性是什么呢?

就是频域特性 


一个音符代表一个固定形状的波,整个五线谱就记录了每个形状的波的出现次数和出现位置。

因此,频域中每个部分也将有三个信息:(出现位置、消失位置、波形) 

波形包括幅度、频率、相位

这显然和时域是相对的嘛,时域中的每个信息有两个部分:(采样点空间信息,采样点时间信息)

叉出去讲:

所有事物能够发出声音就在于存在一个东西,它能够挤压空气,通过有规律的挤压空气,从而让空气也呈现出某种波形。这个波形到我们耳朵中,经过大脑解析就变成某种声音啦!!!!! 

所以,声音本质上是空气挤压产生的


绕来绕去,接下来就让我们来看看一个波的频域分析到底长什么样吧!

波的时域分析:

波的频域分析:

这里应该要有个问题:频域分析是不是丢失了时间信息

答案:是的

频域分析以丢弃时间信息为代价,换来对数据成分和能量分布的关注

时域分析和频域分析的关系:

两者侧重反映波这一数据的不同特点,反映信息的不同面。

两者相辅相成,互相成全

为什么进行时域和频域特性分析:

1、全面理解信号:

通过时域和频域特性分析,可以从不同的角度全面理解信号的特性,包括其变化趋势、振幅、频率成分等。

2、提取关键信息:

时域特性可以提供关于信号的基本统计特征,频域特性可以帮助识别信号的频率成分,从而提取关键的信息。

3、故障诊断与分析:

在工程领域中,时域和频域特性分析常用于故障诊断和分析。通过分析信号的时频特性,可以帮助确定可能的故障原因。

4、信号处理与改进:

时域和频域特性分析可以为信号的进一步处理提供指导,比如滤波、降噪等。

3.2 傅里叶级数

级数:相似但不同单元的叠加

傅里叶级数:不同形状的正弦波的叠加

一个前提假设:任何波形都可以用不同的正弦波叠加得到。

如果你不接受呢,那么就要和我们的欧拉大佬好好吵一吵了!!!!!

当然,当初拉格朗日就不同意欧拉的这个观点。

他认为,对于一个突变的方型波就没法通过正弦波叠加得到。

最终呢,欧拉和拉格朗日都对。这真是红红火火恍恍惚惚~~~~~

因为,只要我们不断的增加我们叠加的正弦波,最终就能不断逼近突变的波!

(叠加的正弦波彼此要正交,不然没有意义。假如叠加进去的正弦波和之前的正弦波不正交,那么这个波一定能用之前的波来表示。那么增加与否对于整个波整体的表示能力没有影响)

第一幅图是一个郁闷的正弦波cos(x)

第二幅图是2个卖萌的正弦波的叠加cos(x)+a.cos(3x)

第三幅图是4个发春的正弦波的叠加

第四幅图是10个便秘的正弦波的叠加

随着正弦波数量逐渐的增长,他们最终会叠加成一个标准的矩形

因此,通过彼此正交的不同波的叠加,我们能够表示所有的波形

感性证明:弯曲波到突变波,我都可以拟合,那还有什么中间的波形是我不行的!!


从上面的分析,我们知道任何波都能够表示为不同正弦波的叠加

换个角度看看波的叠加:

有同学要开始嫌弃我了!!!!

为什么到现在还没开始讲傅里叶级数和傅里叶变化的数学公式!!!!

别急,这就来嘞~~~

傅里叶级数:

f(t)=\sum_{n=0}^\infty[b_n\sin(nt)+a_n\cos(nt)] 

(公式中对波的表示是从时域的角度) 


是不是有人要问了:

“前面不是说任何波都可以用正弦波来表示吗?为什么这里用了正弦波和余弦波呀?”

其实都没有错。

用正弦波来表示,则正弦波可以变动的有:相位、频率、幅度

用正弦波和余弦波来表示,则需要变动的只有:幅度、频率

因为,正弦波余弦波通过相位可以彼此转化

另一句话,广义上讲,正弦波和余弦波都可以叫做正弦波

为了不引入相位这个变量,我们使用两个波来表示 

另一个角度:

正弦波和余弦波是正交的,因此像正交系的xy轴,可以表示所有的波 

4. 傅里叶变换

前面我们讲完了 傅里叶级数

傅里叶级数:

        1、核心:一个波能用其他正弦波来表示;一个波能分解为其他不同的、彼此正交的正弦波。

        2、作用:利用不同频率(正交)的波构成级数来表示一个复杂的波。

        3、理解:笛卡尔坐标系作用就是将复杂的位置信息转化为简单的多个坐标信息;傅里叶级数同样也就是找到一个“傅里叶坐标系”(猫猫自己取得名字),让不同频率的正弦波作为基轴去表示一个复杂的波。(理解上用cos来表示,数学公式上把一个cos转为cos、sin

4.1 卷积

想要理解卷积,可以先来看看我的另外两篇文章:

【深度学习基础】深入理解 卷积与卷积核-CSDN博客

【深度学习基础】常用图像卷积核类型-CSDN博客

通过这两篇文章的学习,我们可以知道

卷积的作用:筛选出相似的部分,卷积结果就是相似部分

例如,我们得到一个f(t),利用前面的泰勒级数展开。

其就是所有频率的正弦波的叠加:

f(t)=\sum_{n=0}^\infty[b_n\sin(nt)+a_n\cos(nt)]

我们令f(t)*cos(2x)

此时,f(t)*cos(2x)本质就是f(t)这个波中和cos(2x)这个波的相似部分

只要求解积分,便可以判断相似程度的量化值:

\int\mathrm{x(t)}\times\cos(2x).\mathrm{dt}

这里我们发现:cos的变量是x也就是角度,而x(t)的变量是t也就是时间。

于是,还需要对公式进行变形~~~ 

利用公式:

x=2{\pi}ft

最终转化式子为:

\int_{-p/2}^{+p/2}x(t)\times cos(2\pi ft).dt 

同理,用sin波来进行筛选可以有:

 \int_{-p/2}^{+p/2}x(t)\times sin(2\pi ft).dt


傅里叶变化的目的:把复合的波分解成不同频率的波。

在这个目的指导下,结合上面的例子,我们不难知道可以利用卷积从复合波中提取确定频率的波

由于任何波都可以转化为sin和cos两个波来表示,因此可以用这两个波去提取,如下:

\int_{-p/2}^{+p/2}x(t)\times cos(2\pi ft).dt

\int_{-p/2}^{+p/2}x(t)\times sin(2\pi ft).dt

假设,我们提取出来了,那么这两个东西的结果要如何整合起来呢?

这就要用来前面说的虚数了!!!!

我们想要的效果是两个部分,分开求解积分的面积,然后将面积相加(面积就是相似部分)。

因此,我们提出:

\int_{p/2}^{p/2}x(t)\times\cos(2\pi ft).dt\quad-i\quad\int_{p/2}^{p/2}x(t)\times\sin(2\pi ft).dt

这里中间是+或者是-本质是相同的,因为i将两者分开

这里用减号仅仅是习惯问题

 利用i的虚部处理,将两个积分部分隔开,在不同维度做处理。因此有:

\int_{p/2}^{+p/2}x(t)\times\cos(2\pi ft)-\mathrm{i~}x(t)\times\sin(2\pi ft).dt

核心点:利用i将积分两部分隔离,达成既用一个积分符号又分开彼此求解积分面积的效果 

 继续对公式进行处理有:

\int_{-p/2}^{+p/2}x\left(t\right)\left(\cos\left(2\pi ft\right)-i\times\sin\left(2\pi ft\right)\right).dt

利用欧拉公式有:

\int_{-p/2}^{+p/2}x(t)e^{-\mathrm{i}2\pi ft}.dt 

最后得到傅里叶变换公式为:

 c(f)=\int_{-p/2}^{+p/2}x(t)e^{-\mathrm{i}2\pi ft}.dt

 离散后的傅里叶变换公式为:

F(f)=\frac1M\sum_{t=0}^{M-1}f(t)e^{-2i\pi ft/M}

 

4.2 傅里叶变换公式的理解

  • 傅里叶变换公式目的为将波从时间域转化到频率域
  • 傅里叶变化离散型和连续型之间的关系可以从周期性角度理解。f(x)波和cos、sin波的相似度拟合都是以周期2T为单位的。因此对于离散型,需要有一个e^{-2i\pi ft/M}这和连续型的e^{-\mathrm{i}2\pi ft}存在不同。最前面的1/M是由于求和需要归一化而积分不需要。
  • 傅里叶公式中如何复合波拆解的正弦波都采用sin与cos作为基底表示

5. 总结 

本文的核心思想和推导过程参考了b站视频:

【傅里叶变换的工作原理系列(第九部分):卷积 II】https://www.bilibili.com/video/BV1pG4y1s787?vd_source=f378daf0ee52de58cae7283855d446aa

这一个系列的视频

如果想要学习更多深度学习知识,大家可以点个关注并订阅,持续学习、天天进步

你的点赞就是我更新的动力,如果觉得对你有帮助,辛苦友友点个赞,收个藏呀~~~


http://www.kler.cn/a/386763.html

相关文章:

  • 基于Spring Boot与Redis的令牌主动失效机制实现
  • MySQL(5)【数据类型 —— 字符串类型】
  • 3D编辑器教程:如何实现3D模型多材质定制效果?
  • Java结合ElasticSearch根据查询关键字,高亮显示全文数据。
  • React Hooks在现代前端开发中的应用
  • 微信小程序中使用离线版阿里云矢量图标
  • Git 入门篇(二)
  • Centos7安装Redis 远程连接
  • 【LeetCode】【算法】206. 反转链表
  • nodejs 020: React语法规则 props和state
  • 采用macvlan绕过某些软件需要MAC授权的问题
  • Mac电脑中隐藏文件(即以 . 开头的文件/文件夹)的显示和隐藏的两种方法
  • javascript实现sha512和sha384算法(支持微信小程序),可分多次计算
  • Cesium着色器的创意和方法(五——Polyline)
  • opencv保姆级讲解-guI和pymsql实现人脸识别打卡(6)
  • 【WebRTC】视频编码链路中各个类的简单分析——VideoEncoder
  • C++20 概念与约束(2)—— 初识概念与约束
  • 三分钟学会Docker基本操作,快速入门容器技术!
  • 还在网盘?分享百兆级大文件传输工具--Wormhole:不限速在线文件传输下载利器
  • Java 类和对象
  • Spring Boot开发入门教程
  • 第二届计算机网络技术与电子信息工程国际学术会议(CNTEIE 2024,12月6-8日)
  • Android 应用插件化及其进程关系梳理
  • Python异常检测 - LSTM(长短期记忆网络)
  • “2048”游戏网页版html+css+js
  • 100种算法【Python版】第40篇——卡恩算法