首先,HHT中用到的EMD详细介绍:https://wenku.baidu.com/view/3bba7029b4daa58da0114a9a.html

本文具体参考

为什么要用EMD?

对于信号的处理,可以是在频域,时域,或者时频域,其中信号在时频处理的方法有小波变换和EMD,但是小波变换是基于指定小波基的分析,一旦指定小波基,就是的分解出来的模式固定,而对于不同信号的分析最好采用不同的小波基以达到最好的处理效果;对应的EMD的方法正好可以解决这个问题,EMD相当于是一种自适应正交基的时频信号处理方法。也就是说对于一段未知的非线性非平稳信号的处理,不需要预先的分析与研究,就可以直接开始分解,这个方法会自动按照一些固定模式按层次分好,不需要人为干预与设置。

要理解EMD方法,就需要理解分析本征模态分量IMF

IMF指的是原始信号被EMD分解后得到的各层信号分量,我们通常认为任何信号都可以分解成若干个IMF的分量之和,IMF有两个约束条件

(1)在整个数据段内,极值点和过零点的个数必须相等或者 相差最多不能超过一个

(2)任意时刻由局部极大值点形成的上包络线和由局部极小值点形成的下包络线的平均值为零

最后对于具体的EMD的分解过程

1)根据原始信号的上下极值点,分别画出上下包络线

2)求上下包络线的均值,画出均值包络线

3)原始信号减均值包络线,得到中间信号

4)判断该中间信号是否是IMF(用上面的那两个条件)如果不是以该信号为基础重做1-4的分析

5)用上面的方法得到第一个IMF后,用原始信号减IMF1 作为新的原始信号, 再通过1-4的分析,可以得到IMF2,以此类推,完成EMD分解

在具体的应用中需要注意的是EMD分解过程中涉及到的:求解包络线的时候端点效应,以及筛分过程和分解过程的停止准则

实际信号中一旦出现间歇性信号,采用EMD的分解方法会出现频率混叠的现象,也叫模态混叠,具体的表现为一个IMF分量中存在多个尺度成分,或者是一个尺度成分在多个IMF分量中存在。

为了解决这个问题,人们提出了采用噪声辅助处理方法,EEMD(总体经验模态分解)以及CEEMD(补充总体经验模态分解)。EEMD是在原始信号中加入白噪声从而改变信号的极值点分布,而CEEMD则是在原始信号中加入一组噪声信号来改变信号的极值点分布。

根据 Yeh 等人的研究,在加入相同数量以及相同幅值的白噪声时,EEMD 剩余噪声会随着集成平均的次数而逐渐减小。CEEMD 的剩余噪声一直维持在一个较小的程度,不论集成平均次数多少。在一定程度上使用 CEEMD方法进行信号分解,可以使用相对较少的集成平均次数,从某种意义上来说,CEEMD在保证小剩余噪声干扰的情况下,能够节省计算时间。

 

EMD——EEMD——CEEMD语音增强算法基础的更多相关文章

  1. 基于Matlab的MMSE的语音增强算法的研究

    本课题隶属于学校的创新性课题研究项目.2012年就已经做完了,今天一并拿来发表.   目录: --基于谱减法的语音信号增强算法..................................... ...

  2. AliCloudDenoise 语音增强算法:助力实时会议系统进入超清音质时代

    近些年,随着实时通信技术的发展,在线会议逐渐成为人们工作中不可或缺的重要办公工具,据不完全统计,线上会议中约有 75% 为纯语音会议,即无需开启摄像头和屏幕共享功能,此时会议中的语音质量和清晰度对线上 ...

  3. 图像处理之Retinex增强算法(SSR、MSR、MSRCR)

    视网膜-大脑皮层(Retinex)理论认为世界是无色的,人眼看到的世界是光与物质相互作用的结果,也就是说,映射到人眼中的图像和光的长波(R).中波(G).短波(B)以及物体的反射性质有关 其中I是人眼 ...

  4. [论文] FRCRN:利用频率递归提升特征表征的单通道语音增强

    本文介绍了ICASSP2022 DNS Challenge第二名阿里和新加坡南阳理工大学的技术方案,该方案针对卷积循环网络对频率特征的提取高度受限于卷积编解码器(Convolutional Encod ...

  5. Levenberg-Marquardt算法基础知识

    Levenberg-Marquardt算法基础知识 (2013-01-07 16:56:17) 转载▼   什么是最优化?Levenberg-Marquardt算法是最优化算法中的一种.最优化是寻找使 ...

  6. 解读Raft(一 算法基础)

    最近工作中讨论到了Raft协议相关的一些问题,正好之前读过多次Raft协议的那paper,所以趁着讨论做一次总结整理. 我会将Raft协议拆成四个部分去总结: 算法基础 选举和日志复制 安全性 节点变 ...

  7. 腾讯2017年暑期实习生编程题【算法基础-字符移位】(C++,Python)

     算法基础-字符移位 时间限制:1秒 空间限制:32768K 题目: 小Q最近遇到了一个难题:把一个字符串的大写字母放到字符串的后面,各个字符的相对位置不变,且不能申请额外的空间. 你能帮帮小Q吗? ...

  8. 算法基础_递归_求杨辉三角第m行第n个数字

    问题描述: 算法基础_递归_求杨辉三角第m行第n个数字(m,n都从0开始) 解题源代码(这里打印出的是杨辉三角某一层的所有数字,没用大数,所以有上限,这里只写基本逻辑,要符合题意的话,把循环去掉就好) ...

  9. 毕业设计预习:SM3密码杂凑算法基础学习

    SM3密码杂凑算法基础学习 术语与定义 1 比特串bit string 由0和1组成的二进制数字序列. 2 大端big-endian 数据在内存中的一种表示格式,规定左边为高有效位,右边为低有效位.数 ...

随机推荐

  1. C#高级编程(第9版) 第10章 集合 笔记

    话说 虽然敲过好多代码, 但除了C++,一直没正眼瞧过其它语言.(没办法 谁叫C++既有oop又能自由控制内存呢) 今天 看公司老项目的src,c#的,linq+Dictionary的用法有感.所以找 ...

  2. 并发与高并发(十三)J.U.C之AQS

    前言 什么是AQS,是AbstractQueuedSynchronizer类的简称.J.U.C大大提高了并发的性能,而AQS又是J.U.S的核心. 主体概要 J.U.C之AQS介绍 J.U.C之AQS ...

  3. CSS行间样式与内部样式

    注释 <!-- --> 快捷键 crtl+/ div 双标签<div></div> CSS语法    属性名:属性值: Css引入方式 1.行间样式的引入:在标签中 ...

  4. rabbitmq安装及简单demo练习

    参考:https://my.oschina.net/loveorange/blog/3026473 安装参考链接: 1. 下载自己需要的rabbitmq_server(http://www.rabbi ...

  5. maven项目从本地向本地仓库导入jar包

    方法一(推荐): <dependency> <groupId>guagua-commons</groupId> <artifactId>guagua-c ...

  6. A4纸表格打印

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  7. CocoaPods为多个target添加依赖库/Podfile的配置

    Podfile的相关配置,请看官方文档http://guides.cocoapods.org/syntax/podfile.html 1)多个target公用相同库,还可以添加额外的不同第三方库 编辑 ...

  8. 批量导出数据库表(oracle)

    批量导出数据库表(oracle) 要求:导出sql文件,包含表结构和数据. 方案一 1:用cmd进入命令行输入:tnsping cmstar就是测试172.18.13.200是否连接成功2:导入与导出 ...

  9. MySQL--SHOW ENGINE INNODB STATUS

    ===================================== -- :: 0x7f305b965700 INNODB MONITOR OUTPUT =================== ...

  10. Mac系统下查看Android studio默认debug签名与正式签名的SHA1值

    https://blog.csdn.net/weixin_32364917/article/details/80095063 获取默认debug签名SHA1值方法,也可以直接打开系统的终端 输入: k ...