一文精通Fourier Transform--傅里叶变换

news2024/9/23 13:21:53

 导读:

        在数字信号处理中,我们把信号分为时域信号与频域信号。傅里叶发现:任何周期信号(时域)都能够由不同频率谐波的正弦波(频域)叠加而成。沟通起时域频域最为关键的一点就是我们要学习的傅里叶变换(Fourier Transform)。

        在CSDN上有诸多大佬,对傅里叶变换的来龙去脉做了较为清晰的阐释。此处就不过多赘述其原理,感兴趣的自行阅读:傅里叶变换的理解-从正弦信号到傅里叶_正弦信号的傅里叶变换-CSDN博客数字信号处理期末总复习_级联型结构怎么因式分解-CSDN博客

本人更加喜欢的是《数字信号处理期末总复习》,总有种让我还在期末备考的感觉。并且让大家不仅仅对傅里叶变换,还对数字信号有了一个基础的了解。

 连续与离散傅里叶变换

傅里叶变换的常见公式如图1所示。

 图1. 常见傅里叶变换公式

首先,对于傅里叶变换先给一个总结性的结果,

1、如果时域信号是周期的,那么它的频谱就是离散的。

2、如果时域信号是非周期的,那么它的频谱就是连续的。

3、如果时域信号是离散的,那么它的频谱就是周期的。

4、如果时域信号是连续的,那么它的频谱就是非周期的。

    如果将时域信号周期非周期,离散非离散进行组合,就会得到四种组合,1、周期连续;2、非周期连续;3、非周期离散;4、周期离散。

        实际上,我们常用的傅里叶变换公式为连续时间傅里叶变化,即CTFT(Continuous-Time Fourier Transform),用来分析和处理连续时间的模拟信号。在实际应用中,由于连续时间信号的频谱可能是无限宽的,因此很难直接计算CTFT。通常,我们会对信号进行窗函数处理,将其截断为有限时长的信号,然后使用离散时间傅里叶变换(DTFT)或离散傅里叶变换(DFT)来近似计算。

        离散时间傅里叶变换(Discrete-Time Fourier Transform,DTFT)是连续时间信号的傅里叶变换在离散时间信号上的推广。DTFT为无限长序列提供了频域分析的方法。对于一个离散时间信号 x[n],其DTFT定义为:

        DTFT将离散时间信号从时域转换到频域,得到的是信号的频率响应,需要注意的DTFT的使用场景是时域信号截断得到的有限长序列,但得到的频谱是连续的

        如果我们将DTFT得到连续频谱进一步离散化,那我们得到的就是离散傅里叶变换的结果。离散傅里叶变换(Discrete Fourier Transform,DFT)是一种将信号从时域转换到频域的数学方法。DFT是连续傅里叶变换在离散时间信号上的等价形式。对于一个长度为N的离散序列 x[n],其DFT定义为:

        对比DFT与DTFT的表达式,我们可以得到这样一个结论:

DFT得到的结果X(k)是对DTFT得到的结果X(e^jw)在区间[0,2pi)的N点等间隔采样

什么是快速傅里叶变换

         在实际应用中,通常会使用快速傅里叶变换(Fast Fourier Transform,FFT)算法来高效地计算DFT,DFT的直接计算涉及到对每个频域样本 X[k]的计算,每个样本都需要对时域信号 x[n]的所有N个样本进行乘法和累加操作。因此,对于N个样本的信号,DFT需要进行 N×N次乘法操作,即乘法复杂度是 O(N*N)。而FFT可以将复杂度降低到 O(Nlog⁡N),FFT算法的核心思想是将一个DFT分解为多个小规模的DFT,然后利用这些小规模DFT的结果来构建原始DFT的结果。这种方法可以显著减少所需的乘法操作次数。在实际应用中,FFT算法被广泛应用于信号处理、图像处理、音频分析、雷达系统、无线通信等领域。实际上,FFT算法有多种不同的变体,如Cooley-Tukey算法、Rader算法、Bluestein算法等,它们在不同的应用场景下各有优势。

FFT算法的实现通常需要考虑数据的存储和访问模式,以及硬件的并行处理能力。在编程实现中,许多编程语言和数学库都提供了FFT的实现,例如:

  • NumPy:Python的一个科学计算库,提供了 numpy.fft 模块。
  • MATLAB:提供了 fft 函数。
  • FFTW:是一个高效的C库,用于计算一维或多维的DFT。
  • KissFFT:是一个小型、易于使用的FFT库,适用于嵌入式系统。

        大家根据实际编程需要去使用相应的FFT函数库即可。具体的推导可以参考经典的Cooley-Tukey算法,该算法使用分治思想,递归计算DFT,最小计算单元为蝶形运算单元。

如何理解和掌握快速傅里叶变换的计算和概念? - 知乎 (zhihu.com)高赞回答,详细的推导了分治下的FFT算法。

傅里叶变换与信号能量、功率计算(帕斯瓦尔定理,维纳-辛钦定理)

        以下内容是信号处理中的基本概念,用于区分能量信号和功率信号,并提供了计算它们能量和功率的方法。能量信号是在整个时间轴上能量有限的信号,而功率信号则是能量无限但功率有限的信号。周期信号的傅里叶变换提供了一种将信号分解为其组成频率成分的方法。

        帕斯瓦尔定理(Parseval's Theorem)是信号处理和傅里叶分析中的一个重要定理,它建立了信号在时域和频域的能量之间的关系。帕斯瓦尔定理表明,一个信号的总能量(在时域中计算)等于其频谱的总能量(在频域中计算)。以连续时间的傅里叶变换为例,下面推导下该定理的数学原理。

     

        对于宽平稳随机过程,这类随机过程的统计特性不随时间变化,且其均值、自相关函数和功率谱密度等特性是稳定的。维纳辛钦定理(Wiener-Khinchin Theorem)是信号处理和傅里叶分析中的一个重要结果,该定理描述了信号的自相关函数和它的功率谱密度(Power Spectral Density, PSD)之间的关系。定理表明,一个宽平稳随机过程的自相关函数的傅里叶变换等于其功率谱密度。维纳辛钦定理提供了一种从功率谱密度计算自相关函数的方法,反之亦然。同时说明了随机过程的频域特性(功率谱)和时域特性(自相关)之间的密切关系。

傅里叶变换与经典功率谱估计

        功率谱估计(Power Spectral Density Estimation, PSDE)是信号处理中的一个重要问题,它用于估计信号的功率谱密度,即信号功率在频域上的分布。对于信号的处理,总的来说有两类方法:一类是时域处理,比如维纳-卡尔曼滤波、自适应滤波这些;另一类是频域处理,如果针对确定性信号,当这些信号满足绝对可积或者可和时,直接转换到频域处理。针对随机信号(大自然中这些信号居多),采用随机信号的处理方法(比如协方差、自相关矩阵等)对信号进行功率谱估计。
        功率谱的估计主要包括经典谱估计和现代谱估计两种方法。经典谱估计由于分析的输入信号为有限长,不能解决时间分辨率和频率分辨率的矛盾(测不准原理)、方差性能差,于是引入了现代谱估计:参数模型法具体表现为AR、MA、ARMA等方法估计出随机信号的功率谱。非参数模型法主要包括Pisarenko谱波分解等方法。以下是一些常见的功率谱估计方法:

  1. 周期图法: 周期图法是通过计算信号的离散傅里叶变换(DFT)的平方幅度来估计功率谱。它是最简单的功率谱估计方法,适用于平稳信号。

  2. Bartlett's Method: 巴特利特法是一种将信号分割成重叠的段,然后对每段信号计算DFT,最后对所有DFT结果取平均的方法。这种方法可以减少估计的方差。

  3. Welch's Method: 威尔奇法是巴特利特法的改进,它在平均之前对每个段的DFT结果进行了加窗处理,并且使用了修正的周期图来减少估计的偏差和方差。

  4. 多窗口法: 多窗口法使用不同的窗口函数对信号进行分段,然后对每个段进行功率谱估计,最后将结果结合起来。这种方法可以提供更平滑的功率谱估计。

  5. 最大熵法: 最大熵法基于最大熵原理,通过最大化信号的熵来估计功率谱。这种方法可以提供更平滑的估计,并且对噪声具有较好的抑制作用。

  6. Yule-Walker法: Yule-Walker法基于自相关函数和功率谱之间的关系,通过求解Yule-Walker方程来估计功率谱。这种方法适用于自相关函数已知的情况。

  7. 协方差法: 协方差法类似于Yule-Walker方法,但是它使用信号的协方差而不是自相关函数。

  8. 非参数方法: 非参数方法不依赖于信号的参数模型,而是直接从数据中估计功率谱。这些方法包括基于数据重采样的技术。

  9. 参数方法: 参数方法基于信号的参数模型,如自回归(AR)、移动平均(MA)或自回归移动平均(ARMA)模型,通过估计模型参数来估计功率谱。

  10. 短时傅里叶变换(STFT): STFT是将信号分割成短时间帧,然后对每个帧进行傅里叶变换,从而得到信号的时频表示。这种方法可以提供信号的时变功率谱信息。

  11. 小波变换: 小波变换是一种时频分析工具,它通过在不同频率上使用不同尺寸的窗口来分析信号。小波变换可以提供信号的时频分布,并且对非平稳信号特别有效。

选择哪种功率谱估计方法取决于信号的特性、所需的估计精度以及计算资源等因素。在实际应用中,可能需要尝试多种方法来确定最适合特定信号和应用需求的功率谱估计方法。

 经典功率谱估计

        经典功率谱估计采用的是传统傅里叶变换分析方法(又称线性谱估计),主要分为自相关法(间接法)和周期图法(直接法)两种。自相关法在1985年提出,先估计自相关函数,再计算功率谱。周期图法直接对观测数据进行快速傅里叶变换,得到功率谱。优点是可以直接FFT快速计算,所以应用比较广泛。
经典谱估计优点是计算效率高,缺点是频率分辨率低,常用于频率分辨率要求不高的场合。

BT法(间接法)

        BT法是一种通过估计自相关函数,然后对其进行傅里叶变换以获得功率谱的方法。在这种方法中,使用有偏自相关函数估计,其误差相对较小,并且是一种渐近一致估计。

周期图法(直接法)

利用有偏自相关函数的BT法和周期图法是等价的,均属于有偏估计,N趋近无穷,周期图的统计平均值趋于真值,周期图属于渐近无偏估计

经典谱估计方法改进


存在问题:BT法和周期图法估计功率谱都不是一致估计,频率分辨率低。

解决方法:对周期图进行修正,使其满足一致估计条件。可以采用平滑处理的方法,使其方差减小。存在如下三种方法:Bartlett平均周期图法;窗口处理法平均周期图;Welch法(修正的周期图求平均法)。

传统的功率谱估计方法无论采取哪一种改进方法,总是以减少分辨率为代价,换取估计方差

的减少,提高分辨率的问题无法根本解决

现代功率谱估计

        自回归(AR)模型是一种统计模型,用于描述时间序列数据的动态特性。在信号处理和时间序列分析中,AR模型被广泛用于信号的谱估计,即估计信号的功率谱密度(PSD)。AR模型假设当前值可以由其过去的值和白噪声线性预测得到,方式求解AR模型系数或线性预测器系数。

        现代功率谱估计还有最大熵谱估计等,太难了,没学会,大家自行寻找资料学习哈。书籍推荐《现代信号谱分析》,翻译自信号处理大佬、IEEE信号处理协会技术成就奖获得者Petre Stoica教授2005年编写的教材《Spectral Analysis of Signals》。该书介绍了经典谱分析和现代谱分析的基本理论和方法,主要内容包括谱估计的基本概念(自相关,能量谱和功率谱),非参数化谱分析(周期图和相关图,加窗技术),有理谱分析(自回归,滑动平均以及自回归滑动平均方法),线谱分析(最小二乘估计,Yule-Walker和子空间方法),滤波器组方法(改进的滤波器组方法,Capon方法,APES方法),阵列信号处理(波束形成,Capon方法,参数化波达方向估计),有关矩阵分析、Cramer-Rao理论和模型阶数选取的主要结论。

本文阐述的傅里叶变换, 信号功率能量计算,谱估计等方法,均在Matlab上有函数可以直接调用,信号处理学习的过程中Matlab技能必须掌握!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2122196.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

党务政务服务|基于SprinBoot+vue的党务政务服务热线系统(源码+数据库+文档)

党务政务服务热线系统 目录 基于SprinBootvue的党务政务服务热线系统 一、前言 二、系统设计 三、系统功能设计 系统功能实现 管理员功能模块 管理员功能模块 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取: 博…

威胁建模STRIDE框架

威胁建模STRIDE框架 1.威胁建模框架概述2.STRIDE威胁建模框架欺骗 - 冒充某人或某物篡改 - 未经授权更改数据否认性 - 不宣称对执行的操作负责信息泄露 - 查看不应查看的数据拒绝服务 - 系统繁忙权限提升 - 拥有本不应该拥有的权限 3.后续的威胁发现 1.威胁建模框架概述 威胁建…

如何通过内网穿透实现Pycharm远程服务器编译项目与服务器代码同步

文章目录 前言一、前期准备1. 检查IDE版本是否支持2. 服务器需要开通SSH服务 二、Pycharm本地链接服务器测试1. 配置服务器python解释器 三、使用内网穿透实现异地链接服务器开发1. 服务器安装Cpolar2. 创建远程连接公网地址 四、使用固定TCP地址远程开发 前言 本文主要介绍如…

Flex布局最后一行元素的对齐的解决方案

问题的产生 使用Flex布局&#xff0c;设置justify-content: space-between;让元素在主轴上两队对齐。 <div class"box"><div class"item">1</div><div class"item">2</div><div class"item">3&l…

考试:软件工程(01)

软件开发生命周期 ◆软件定义时期&#xff1a;包括可行性研究和详细需求分析过程&#xff0c;任务是确定软件开发工程必须完成的总目标&#xff0c; 具体可分成问题定义、可行性研究、需求分析等。 ◆软件开发时期&#xff1a;就是软件的设计与实现&#xff0c;可分成概要设计…

【PPT】文字突然变成方框

文章目录 前言一、问题描述二、解决方案参考文献 前言 在 ppt 画图时遇到的问题 一、问题描述 在 ppt 使用过程中&#xff0c;同一字体&#xff0c;有些变成了方框&#xff0c;有些没有变&#xff08;排除字体缺失问题&#xff09; 二、解决方案 如果是页数多了&#xff0…

【用map解决高频单词问题】返回前k个高频单词

目录 1.前言2.题目简介3.求解思路4.示例代码4.1换个稳定排序解决4.2用仿函数强行进行控制 1.前言 ok&#xff0c;好久不写博客了&#xff0c;这里简单的来写一写用到关于容器map来解决前k个高频单词的问题。 当然&#xff0c;这个问题也可以用优先级队列(堆)来解决&#xff0c…

免费扫描试卷的软件有哪些?5个软件帮助你轻松进行试卷扫描

免费扫描试卷的软件有哪些&#xff1f;5个软件帮助你轻松进行试卷扫描 扫描试卷的软件可以帮助你将纸质试卷转化为电子版&#xff0c;方便保存、分享和编辑。以下是五款免费的试卷扫描软件&#xff0c;它们功能强大且易于使用&#xff0c;能够帮助你轻松完成试卷扫描。 试卷…

【精彩瞬间】2024外滩大会回顾

9月8号&#xff0c;为期3天的“2024 inclusion外滩大会”在上海黄浦圆满落下帷幕。本届大会&#xff0c;共吸引了5.2万人到场参观&#xff0c;无论是参会规模还是国际嘉宾的数量都创下历史新高。 500位演讲嘉宾分别在1场开幕主论坛、36场见解分论坛上聚焦“ai产业新实践”“科技…

基于STM32的保温水壶控制器设计

文章目录 前言资料获取设计介绍功能介绍设计源码具体实现截图参考文献设计获取 前言 &#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师&#xff0c;一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/AVR等单片机设…

【MATLAB】矩阵的合并

矩阵的合并是指将两个或者多个矩阵合并到一起构成一个新的矩阵。矩阵标识符方括号 [ ]&#xff0c;不仅可以用来创建新的矩阵&#xff0c;还可以用来将若干个矩阵合并到一起。表达式 C [A B] 将矩阵A和B在水平方向上合并到一起&#xff0c;而表达式C[A;B]则将矩阵A和B在竖直方…

java反射(reflection)的基本理解和使用

目录 一、什么是反射 二、反射的主要用途&#xff1f; 三、什么情况下使用反射 四、反射有什么优点&#xff1f; 1、增加程序的灵活性 2、避免将固有的逻辑程序写死到代码里 3、提高代码的复用率 4、支持动态代理和动态配置 5、支持自动化测试和代码生成 6、自由度高…

ABAP EXCEL宏函数应用

【应用场景】 1. excel导出项目及对应的分期,楼栋的各个产品类型对应的各个面积指标数据, 分项目/分期/楼栋三个SHEET页签。当用户在楼栋层级编辑完产品类型对应的面积指标时,可以 通过宏函数自下往上先汇总到相同产品类型+面积指标的分期层级,再自动汇总到项目层级面积…

万龙觉醒免费辅助脚本:VMOS云手机助力物资获取与养成!

在《万龙觉醒》中&#xff0c;资源获取和英雄养成是游戏的重要组成部分&#xff0c;而使用VMOS云手机可以为玩家带来更高效的游戏体验。通过使用VMOS云手机&#xff0c;玩家可以轻松实现24小时不间断的游戏辅助&#xff0c;无需反复安装或更新游戏&#xff0c;因为VMOS云手机自…

upload-labs通关教程

一.第一关&#xff08;前端绕过&#xff09; 首先准备一个php小马 <?php phpinfo();?>这是调用phpinfo这个函数&#xff0c;查看php的配置信息 首先上传1.php发现 使用BP抓不到包&#xff0c;猜测被前端验证了&#xff0c;查看网页源代码 可以看到下面有一段js代码过…

国内超声波清洗机哪个品牌好?非常好用的超声波清洗机

在当今社会快速生活的节奏下&#xff0c;个人健康与生活品质成为了焦点话题。面对传统清洁方法的局限性和可能对物品造成的伤害&#xff0c;人们愈发倾向于探索更高效、安全的清洁方案。超声波清洗技术恰逢其时地步入大众视野&#xff0c;凭借其高效清洁力与环保特性&#xff0…

鸿蒙开发(API 12 Beta6版)【P2P模式】 网络WLAN服务开发

概述 无线局域网&#xff08;Wireless Local Area Networks&#xff0c;WLAN&#xff09;&#xff0c;是通过无线电、红外光信号或者其他技术发送和接收数据的局域网&#xff0c;用户可以通过WLAN实现结点之间无物理连接的网络通讯。常用于用户携带可移动终端的办公、公众环境…

打造无死角安防网:EasyCVR平台如何助力智慧警务实现视频+AI的全面覆盖

一、背景概述 随着科技的飞速发展&#xff0c;智慧城市建设已成为提升社会治理能力、增强公共安全水平的重要途径。在警务领域&#xff0c;智慧警务作为智慧城市的重要组成部分&#xff0c;正通过融合视频监控技术与人工智能&#xff08;AI&#xff09;解决方案&#xff0c;实…

数据库中的主码、候选码、主属性、非主属性

参考链接 候选码、主码、全码、外码、主属性、主键、主关键字、非主属性清晰总结 - 知乎 (zhihu.com) 1.码&#xff1a; 能够标识一条记录的属性或者属性集 2.候选码 能够标识一条记录的最小属性集 任一候选键的任何真子集都不能唯一标识一个记录&#xff08;比如在成绩表…

诸葛io:消费金融行业智能运营与数智化经营模型构建

规范化的快速发展已成为消费金融行业的主旋律&#xff0c;消金公司亟待制定数智化转型战略&#xff0c;建设自主营销与精细化运营能力&#xff0c;以找到存量时代的全新增长密码。 容联云旗下诸葛智能公司作为数智化经营领域的杰出代表&#xff0c;凭借数据技术先进性、金融业…