深度学习开源框架系列:基础算法之傅立叶变换:1:概要介绍
傅立叶变换时数字信号处理的重要方法之一,是法国数学家傅立叶在1807年在法国科学学会上发表的一篇文章中所提出的,在文章中使用了正弦函数描述温度分布,而且提出了一个著名的论断:任何连续性的周期信号都可以由一组适当的正弦曲线组合而成。而这个论断被当时审查论文的著名数学家拉格朗日所否定,拉格朗日认为正弦函数无法组合成一个个带有棱角的信号,但是从无限逼近的角度考虑,可以使用正弦函数来非常逼近期直到表示方法不存在明显差异,这篇论文最终在在拉格朗日死后15年之久才得以发表。
傅立叶变换的分类
根据信号是是周期性以及连续还是离散的特点,将傅立叶变换进行延伸,变换分为如下四种
周期性 | 连续性 | 缩写 | 全称 | 说明 |
---|---|---|---|---|
周期性 | 连续性 | FS | Fourier Series | 傅立叶级数 |
非周期性 | 连续性 | FT | Fourier Transform | 傅立叶变换 |
周期性 | 离散型 | DFT | Discrete Fourier Transform | 离散傅里叶变换(周期性) |
非周期性 | 离散型 | DTFT | Discrete Time Fourier Transform | 离散时间傅立叶变换 |
另外,根据使用的是实数还是复数,有分为实数傅立叶变换和复数傅立叶变换。
主要特点:FS
用于分析连续周期信号。时域上任意连续的周期信号可以分解为无限多个正弦信号之和,在频域上就表示为离散非周期的信号,即时域连续周期对应频域离散非周期的特点。
主要特点:FT
主要用于分析连续非周期信号,由于信号是非周期的,它必包含了各种频率的信号,所以具有时域连续非周期对应频域连续非周期的特点。
FS和FT 都是用于连续信号频谱的分析工具,都以傅立叶级数理论问基础推导出的。时域上连续的信号在频域上都有非周期的特点,但对于周期信号和非周期信号又有在频域离散和连续之分。
主要特点:DTFT
它用于离散非周期序列分析,根据连续傅立叶变换要求连续信号在时间上必须可积这一充分必要条件,那么对于离散时间傅立叶变换,用于它之上的离散序列也必须满足在时间轴上级数求和收敛的条件;由于信号是非周期序列,它必包含了各种频率的信号,所以DTFT对离散非周期信号变换后的频谱为连续的,即有时域离散非周期对应频域连续周期的特点。
主要特点:DFT
假设了序列的周期无限性,但在处理时又对区间作出限定(主值区间),以符合有限长的特点,这就使DFT带有了周期性。另 外,DFT只是对一周期内的有限个离散频率的表示,所以它在频率上是离散的,就相当于DTFT变换成连续频谱后再对其采样,此时采样频率等于序列延拓后的周期N,即主值序列的个数。
离散傅立叶变换DFT
DFT用于将信号从时域变换为频域,而且时域与频域都是离散的,可以确认出一个信号是由哪些正弦波叠加而成,而这些结果者反应为正弦波的振幅和相位等信息。而至于时域与频域,前者表示的是信号随时间动态变化的关系,在这种分析方式下,往往会随着时间的不同信号呈现不同的状态变化。而频域可以理解为正弦波的振幅,从傅立叶的论断中我们了解到,任何周期函数,都可能是由不同振幅和不同相位与角频率的正弦波的叠加,频域分析的一个主要结果是频谱,常见的频谱有两种:振幅相关的频谱与相位相关的频谱。比如正弦曲线可表示为y=Asin(ωx+φ)+k,具体的实际意义如下所示:
参数 | 定义 | 解释 |
---|---|---|
A | 振幅 | 反映幅度 |
(ωx+φ) | 相位 | 反映变量y所处的状态。 |
φ | 初相 | x=0时的相位 |
k | 偏距 | 反映在坐标系上则为图像的上移或下移。 |
ω | 角频率 | 控制正弦周期(单位弧度内震动的次数)。 |
理解辅助:变形的谐波函数
谐波(harmonic wave)是指电流中所含有的频率为基波的整数倍的电量,一般是指对周期性的非正弦电量进行傅里叶级数分解,其余大于基波频率的电流产生的电量。如下可以看出动态的三角函数的图形变换,可以加深对傅立叶论断的理解。
理解辅助:振幅的频谱
而至于如何求取频谱,由于三角函数具有正交性,相互之间不具影响,根据此特性结合下图,对于振幅的频谱则可有直观的了解。而至于初相相关的频谱,可以以此为基础,不难理解。
快速傅立叶变换FFT
FFT(Fast Fourier Transform)实际只是DFT的改善。是1965年由库利和图基共同提出的一种快速计算DFT的方法。这种方法充分利用了DFT运算中的对称性和周期性,从而将DFT运算量从N2减少到N*log2N。当N比较小时,FFT优势并不明显。但当N大于32开始,点数越大,FFT对运算量的改善越明显。比如当N为1024时,FFT的运算效率比DFT提高了100倍。
应用领域和局限
傅立叶变化在很多领域都有很好的应用,比如图像优化和音频降噪等等,但是由于傅立叶变换的模型建立在平稳信号基础上的,对于非平稳信号的分析具有很大的局现性。
参考文献
https://blog.csdn.net/wangchao712217/article/details/78731494
https://blog.csdn.net/YhL_Leo/article/details/49535711
深度学习开源框架系列:基础算法之傅立叶变换:1:概要介绍相关推荐
- 飞桨深度学习开源框架2.0抢先看:成熟完备的动态图开发模式
百度飞桨于近期宣布,深度学习开源框架2.0抢先版本正式发布,进入2.0时代.其中一项重大升级,就是推出更加成熟完备的命令式编程模式,即通常说的动态图模式.同时在该版本中将默认的开发模式定为动态图模式, ...
- 【杂谈】超过12个,150页深度学习开源框架指导手册与GitHub项目,初学CV你值得拥有...
之前我们公众号输出了很多深度学习开源框架相关的内容,今天整理成技术手册给大家分享以方便阅读,下面是详细信息. 开源框架背景 现如今开源生态非常完善,深度学习相关的开源框架众多,光是为人熟知的就有caf ...
- 【杂谈】面向新手的深度学习开源框架指导手册与GitHub项目,欢迎加入我们的开源团队...
之前我们公众号输出了很多深度学习开源框架相关的内容,现在整理成技术手册给大家分享以方便阅读,下面是详细信息. 开源框架背景 现如今开源生态非常完善,深度学习相关的开源框架众多,光是为人熟知的就有caf ...
- 【通知】有三AI发布150页深度学习开源框架指导手册与GitHub项目,欢迎加入我们的开源团队...
之前我们公众号输出了很多深度学习开源框架相关的内容,今天整理成技术手册给大家分享以方便阅读,下面是详细信息. 开源框架背景 现如今开源生态非常完善,深度学习相关的开源框架众多,光是为人熟知的就有caf ...
- 【完结】12大深度学习开源框架(caffe,tf,pytorch,mxnet等)快速入门项目
这是一篇总结文,给大家来捋清楚12大深度学习开源框架的快速入门,这是有三AI的GitHub项目,欢迎大家star/fork. https://github.com/longpeng2008/yousa ...
- 【完结】给新手的12大深度学习开源框架快速入门项目
文/编辑 | 言有三 这是一篇总结文,给大家来捋清楚12大深度学习开源框架的快速入门,这是有三AI的GitHub项目,欢迎大家star/fork. https://github.com/longpen ...
- darknet框架_【通知】有三AI发布150页深度学习开源框架指导手册与GitHub项目,欢迎加入我们的开源团队...
之前我们公众号输出了很多深度学习开源框架相关的内容,今天整理成技术手册给大家分享以方便阅读,下面是详细信息. 开源框架背景 现如今开源生态非常完善,深度学习相关的开源框架众多,光是为人熟知的就有caf ...
- AI学习笔记(九)从零开始训练神经网络、深度学习开源框架
AI学习笔记之从零开始训练神经网络.深度学习开源框架 从零开始训练神经网络 构建网络的基本框架 启动训练网络并测试数据 深度学习开源框架 深度学习框架 组件--张量 组件--基于张量的各种操作 组件- ...
- 12大深度学习开源框架(caffe,tensorflow,pytorch,mxnet等)汇总详解
这是一篇总结文,给大家来捋清楚12大深度学习开源框架的快速入门,这是有三AI的GitHub项目,欢迎大家star/fork. https://github.com/longpeng2008/yousa ...
最新文章
- 网络抓包wireshark
- 易宝典文章——用ISA 2006标准版发布Exchange 2010的OWA系列之外网客户端
- 在阿里云服务器上安装docker
- 聚烷撑乙二醇(数学+期望)
- 异步EJB只是一个Gi头吗?
- 比特币网站Flexcoin遭黑客攻击 损失极大 被迫关闭
- Win7(64Bit) 安装 PL/SQL Developer图解
- linux service和chkconfig命令区别
- php当前工作目录路径,Linux_Linux下使用Shell脚本改变当前工作路径, She - phpStudy...
- unity人物旋转移动代码_Unity实现人物旋转和移动效果
- linux系统怎么修改数据库密码,Linux系统修改数据库密码相关
- 戴尔启动修复无法自动修复此计算机,在 Dell 计算机上运行 Windows 启动修复
- 微信V3版本支付下单、查询支付订单状态、订单退款接入正式项目中并引入策略模式实操
- 非均匀三次B样条曲线插值实现及MATLAB代码
- 三维视觉 | 03 MATLAB 单、双目相机标定
- 12个优雅的 python 代码使用案例
- 并查集的一些个人观点 以及克鲁斯卡尔算法的详解
- 如何使用 Director 编写“拼图游戏”
- 股票涨跌预测方法之二:股票技术指标计算
- 【总结】2023数学建模美赛!收官!
热门文章
- 漫谈游漫谈游戏如何吸引玩家以及付费玩
- 华为eNSP下防火墙双机热备的实现以及在HRP配置错误时的现象
- Ubuntu开机遇到 clean files blocks问题
- QT 正则表达式——表征字符串的特征
- 设计两个程序要求用消息队列实现简单的聊天功能linux,linux软件工程师(C语言)实用教程第7章.ppt...
- js-table2excel导出表格中图片不显示的解决方法
- 转:优秀的管理者是下属的帮手
- 常见面试题总结,数据库、监控、网络管理
- 使用python实现菲波那切数列
- 智能串口协议转换模块(四串口)SS-430