【经验模态分解】4.信号由时域向频域的转换

/**
 * @poject          经验模态分解及其衍生算法的研究及其在语音信号处理中的应用
 * @file            傅里叶变换与小波变换
 * @author			jUicE_g2R(qq:3406291309)
 * 
 * @language        MATLAB
 * @EDA				Base on matlabR2022b
 * @editor			Obsidian(黑曜石笔记软件)
 * 
 * @copyright		2023
 * @COPYRIGHT	    原创学习笔记:转载需获得博主本人同意,且需标明转载源
 */
  • E M D EMD EMD 是 基于 傅里叶变换 与 小波变换 的改进
  • E M D EMD EMD离散小波变换 产生的背景是 基于解决 傅里叶变换 与 小波变换时间尺度 上存在的缺陷

文章目录

  • 1 傅里叶变换与短时傅里叶变换
    • 1-1 (传统的)傅里叶变换
      • 1-1-1 优点
      • 1-1-2 缺陷
    • 1-2 短时傅里叶变换
    • 1-3 信号的频谱图和时频图实验
  • 2 离散小波变换
    • 2-1 尺度因子
    • 2-2 平移因子

1 傅里叶变换与短时傅里叶变换

1-1 (传统的)傅里叶变换

  • 傅里叶变换(Fourier Transform)是一种将 时域上的信号转换到频域上 的数学工具

1-1-1 优点

优点详细说明
可时频转换傅里叶变换可以将时域上的信号转换为频域上的信号,便于对信号的频率特征进行分析和处理
可分解傅里叶变换可以将信号分解成多个不同频率的正弦和余弦函数,这些分量可以提供有关信号频率和振幅的信息
线性性傅里叶变换具有线性性,可以对多个信号进行叠加处理
可逆性可以将频率域上的信号转换回时域上的信号

1-1-2 缺陷

缺陷详细说明
实时性差傅里叶变换是一种理论分析工具,不适合对信号进行实时处理,因此需要使用快速傅里叶变换(FFT)等算法来加速计算
普适性差傅里叶变换需要将整个信号在时间上进行全局分析,计算复杂度较高,不适合对长时间信号进行处理
局部性差傅里叶变换对信号的局部特征无法进行分析,对于非周期性信号和突发性信号的频谱分析效果较差
处理特殊情况效果差傅里叶变换对于非线性信号、带噪声信号等情况处理效果较差
  • 傅里叶变换 是 对 一段信号 不分时间先后 来观察其中的频率成分 及 各个频率成分的贡献,即没有时间分辨率不可通过傅里叶变换知道一个特定时间点的频率成分

1-2 短时傅里叶变换

  • 短时傅里叶变换 是 基于 (传统的)傅里叶变换时间分辨率的缺陷 给出了相应的改进方法

短时:即将 长段信号源 拆分成 多段 短的信号源(但是 窗口大小是固定的【固定窗长】,这也是它的缺陷)

Ts = 0:0.001:2; 						% 采样频率1000次每秒,时长为2s
%% 两个源信号用的是扫频函数chirp()
Sig_Low2High = chirp(Ts, 50, 2, 300); 	% 低频到高频:从 50Hz  线性升至 300Hz
Sig_High2Low = chirp(Ts, 300, 2, 50);	% 高频到地频:从 300Hz 线性升至 50Hz

1-3 信号的频谱图和时频图实验

步骤:

1-3-1 打开 信号分析器APP

1-3-2 面板设置

在这里插入图片描述

1-3-3 拖入信号

在这里插入图片描述

1-3-4 设置 采样率 S a m p l e R a t e SampleRate SampleRate

在这里插入图片描述
注:两个信号要分别修改对应的 S a m p l e R a t e SampleRate SampleRate

1-3-5 对每个面板选中相应的信号

在这里插入图片描述

1-3-6 选中面板并点击上方工具栏的频谱获得相应的频谱图

在这里插入图片描述

  • 分析上述频谱图
    左面板是 高频 到 低频,右面板是 低频 到 高频:
    两边的频谱图是一模一样的,一个原因是两个信号都是扫频函数(频率线性变化),另一个是频谱工具箱得到的频谱图是通过 傅里叶变换 得到的(傅里叶变换是全局的,两个全局确实一样,但局部不一样)

  • 选中面板并点击上方工具栏的时谱获得相应的时谱图
    在这里插入图片描述
    时频图是根据 短时傅里叶变换 得到的,很明显的可以看到两个信号的区别,同时体现了 短时傅里叶变换 具有 时间与频率的分辨率

1-3-7 结论

傅里叶变换 相较于 短时傅里叶变换 存在明显的 时频分辨率 上的差异

2 离散小波变换

  • 频域 上来看,离散小波变换 相当于一个 带通滤波器,相当于通过 尺度因子 与 平移因子
因子作用
尺度因子控制 小波基 的 伸展程度(控制 频率
平移因子控制 时间
  • 短时傅里叶变换 而言,离散小波变换 具有平衡 频率分辨率 与 时间分辨率 的优势

2-1 尺度因子

  • 小波母函数
    C e n t F r e q ( 中心频率 ) = S c a l e F a c t o r ( 尺度因子 ) ∗ f CentFreq(中心频率)=ScaleFactor(尺度因子)*f CentFreq(中心频率)=ScaleFactor(尺度因子)f

2-2 平移因子

  • 能使得 时间和频率之间 达到 平衡
    离散小波变换 是 对 短时傅里叶变换固定窗长 这一特性出现 “低频精度不高,高频分辨率太低” 缺陷的一种解决办法。

  • C ( 常数 ) = W d n L e n ( 窗长 ) ∗ f C(常数)=WdnLen(窗长)*f C(常数)=WdnLen(窗长)f
    高频时:具有很高的 时间分辨率,窗长小
    低频时:具有很高的 频率精度
    ,窗长大

本节参考视频源:NO.11 两步搞定经验模态分解与离散小波变换-哔哩哔哩

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

亚马逊云科技实时 AI 编程助手 Amazon CodeWhisperer,开发快人一步!

近年来,随着 AI 技术的进步、基础设施建设的不断完善,AI 应用场景不断丰富,各类 AI 产品和工具层出不穷。其中,面向开发者的 AI 编程工具也在不断迭代,并因宣称能“帮开发者写代码”而引发关注。目前,可以为…

喜报!华为云金融PaaS3.0荣获“2023年应用现代化典型案例”称号

中国软件行业协会近期启动了2023“应用现代化产业实践”优秀案例征集活动,旨在加快推动应用现代化发展与推广应用,形成行业应用带动和示范作用,打造应用现代化软件名企、名品,凝聚行业资源,助力我国行业应用现代化高质…

使用jdk21预览版 --enable-preview

异常 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.10.1:compile (default-compile) on project sb3: Compilation failure [ERROR] --enable-preview 一起使用时无效 [ERROR] (仅发行版 21 支持预览语言功能) 解决…

MIPI配置的OV5640的使用

MIPI摄像头的数据输入FPGA的数据流: N Lane 差分串行输入 ————串转并模块 ————字节对齐处理 ————Lane同步处理处理 ————逆转LLP:Unpacked 处理 ————Byte转Pixel处理 此后写入Wfifo并且存入DDR3。

thinkphp6 起步

1、安装 composer create-project topthink/think6.0 tp62、使用多应用模式,你需要安装多应用模式扩展think-multi-app composer require topthink/think-multi-app3、config/app.php中,将 ‘auto_multi_app’ > flase, 改为true; 需要自…

MySQL-基础篇

文章目录 第一章 MYSQL 概述数据库相关概念MySQL 数据库下载安装启动和停止 MySQL客户端连接解决:mysql 不是内部或外部命令,也不是可运行的程序或批处理文件。配置 Path 环境变量解决:net start mysql80 发生系统错误 5。 拒绝访问。MYSQL 的…

Java自学第8课:电商项目(3) - 重新搭建环境

由于之前用的jdk和eclipse,以及mysql并不是视频教程所采用的,在后面运行源码和使用作者提供源码时,总是报错,怀疑: 1 数据库有问题 2 jdk和引入的jar包不匹配 3 其他什么未知的错误? 所以决定卸载jdk e…

STM32C8T6实现微秒延时函数delay_us

/* USER CODE BEGIN 0 */ void delay_us(uint32_t ii) {uint32_t temp;SysTick->LOADii*8;SysTick->VAL0x00;SysTick->CTRL0x01;//2号位1使用内核时钟do{tempSysTick->CTRL;}while(temp&0x01&&!(temp&(1<<16)));SysTick->CTRL0X00;SysTic…

【学术综述】-如何写出一篇好综述-写好综述要注意的问题

文章目录 1.前置1.1 SSD 的结构1.2 FTL的架构和作用 2 动机-why&#xff1f;3 做了什么【做了哪些方面的survey】&#xff1f;4 背景知识【上下文】5 研究的问题6 每个问题对应的解决方案 从昨天晚上【2023.11.09 22:00】到今天22:29的&#xff0c;花了一天的时间在读这篇surve…

串口通信(11)-CRC校验介绍算法

本文为博主 日月同辉&#xff0c;与我共生&#xff0c;csdn原创首发。希望看完后能对你有所帮助&#xff0c;不足之处请指正&#xff01;一起交流学习&#xff0c;共同进步&#xff01; > 发布人&#xff1a;日月同辉,与我共生_单片机-CSDN博客 > 欢迎你为独创博主日月同…

【全网首发】【Python】Python控制parrot ARDrone 2.0无人机

&#x1f389;欢迎来到Python专栏~Python控制parrot ARDrone 2.0无人机 ☆* o(≧▽≦)o *☆嗨~我是小夏与酒&#x1f379; ✨博客主页&#xff1a;小夏与酒的博客 &#x1f388;该系列文章专栏&#xff1a;Python学习专栏 文章作者技术和水平有限&#xff0c;如果文中出现错误…

公众号标签

公众号标签 本章节&#xff0c;讲解公众号标签的相关内容&#xff0c;支持对标签进行创建、查询、修改、删除等操作&#xff0c;也可以对用户进行打标签、取消标签等操作&#xff0c;对应 《微信公众号官方文档 —— 用户标签管理》 (opens new window)文档。 #1. 表结构 公众…

C语言 用字符串比较函数cmp来做一个门禁:账号密码是否匹配 (干货满满)

#include<stdio.h> #include<string.h> void fun04() {for (int i 0; i < 3; i){char *str01 "hello";char uname[100] ;printf("请输入账号");scanf("%s",uname);char *str02 "123456";char pword[100];printf(&qu…

Halcon Variable Inspect 安装失败

版本 Visual Studio 2022Halcon 20.11 找到Halcon 扩展文件 输入CMD 经过下面博客所示步骤&#xff0c;修改Visual Studio 对应版本 Halcon Variable Inspect 安装失败 替换成功&#xff01;

Python初学者软件以及如何安装和配置,新手入门必看系列。

文章目录 前言一、Python软件二、集成开发环境&#xff08;IDE&#xff09;1.PyCharm2.Spyder3.IDLE 三、包管理工具四、使用Python虚拟环境总结Python技术资源分享1、Python所有方向的学习路线2、学习软件3、精品书籍4、入门学习视频5、实战案例6、清华编程大佬出品《漫画看学…

EF Core 数据库映射成实体类

首先在 NuGet 包管理器中安装三个包 Microsoft.EntityFrameworkCore.SqlServer 是一个用于与 SQL Server 数据库进行交互的实体框架核心包。这个包提供了方便的方法和工具&#xff0c;用于在 .NET Core 应用程序中操作 SQL Server 数据库。 Microsoft.EntityFrameworkCore.Too…

QT QDockWidget

QDockWidget是Qt中的一个容器类&#xff0c;用于在主窗口上创建可停靠的子窗口。 设置停靠窗口的一般流程如下: (1)创建一个QDockWidget 对象的停靠窗体。 (2)设置此停靠窗体的属性&#xff0c;通常调用setFeatures()及setAllowedAreas()两种方法。 (3)新建一个要插入停靠窗…

大容量疯了!居然想把磁带放到硬盘,100TB+是否可以实现?

1.引言 上一篇关于大容量硬盘的文章&#xff08;HDD最后的冲刺&#xff1a;大容量硬盘的奋力一搏&#xff09;中&#xff0c;我们针对大容量硬盘研发状态&#xff0c;小编最近又有了新发现。WDC希望可以通过HDD和磁带结合&#xff0c;把盘的容量提升到100TB。 2.数据大爆炸的…

使用Keepalived实现双机热备,实现服务高可用

安装&#xff08;所有节点&#xff09; yum -y install keepalived修改配置 vi /etc/keepalived/keepalived.conf :set nu //显示行号 :35 dG // 删除35行以后的所有行ip a将master1虚拟机挂起&#xff0c;再次执行ip a 看vip是否漂移到另一台虚拟机worker1 漂移了&…

【原创】java+swing+mysql教务管理系统设计与实现

摘要&#xff1a; 教务管理系统是一个专门设计用于管理学校教务工作的系统&#xff0c;包括学生信息管理、课程管理、成绩管理等多个模块。本文采用了Java语言和MySQL数据库&#xff0c;利用面向对象编程的思想&#xff0c;实现了各个对象的方法和属性。具体实现过程包括数据库…