首先,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. 项目进度02-Day3

    ①今天做了什么? 数据库数据的重置.之前的用户类字段的补充.简单的平台信息查询 ②明天要做什么?   分类浏览和综合查询功能. ③遇到了什么问题? 出现问题:Parameter index out o ...

  2. jQuery实现轮播图--入门

    jQuery是一个前台的框架. 主要函数: setInterval 语法:setInterval(code,millisec[,"lang"]) cdoe:需要执行的代码或者要调用 ...

  3. CSS 宽,高,背景设置

    width 宽,height 高,background 背景:背景色 background-color:颜色值--英文单词/十六进制/rgb:背景图 background-image:url(‘图片路 ...

  4. Q8:String to Integer (atoi)

    8. String to Integer (atoi) 官方的链接:8. String to Integer (atoi) Description : Implement atoi to conver ...

  5. 对自己有用的VS调试技巧

    设置下一条语句 编辑然后继续 符号越界后查看堆对象 查看数组的值 底部 设置下一条语句 返回顶部 一个典型的调试情况就是通过单步跟踪分析为什么一个函数调用失败了.当你发现一个函数调用的另一个函数返回错 ...

  6. java课程之团队开发之用户模板和用户场景

    用户模板与用户场景: 姓名:孙某 性别年龄:男 19岁 职业;学生 收入:无 知识层次能力:大学生,用电脑熟练. 生活/工作状况:正常进行上课,学霸. 动机目的,困难:喜欢依据自己的兴趣进行学习. 用 ...

  7. Python中的常用内置对象之map对象

    如果你了解云计算的最重要的计算框架Mapreduce,你就对Python提供的map和reduce对象有很好的理解,在大数据面前,单机计算愈加力不从心,分布式计算也就是后来的云计算的框架担当大任,它提 ...

  8. JAVA初学者——Hello,World!

    大家好,我是浩宇大熊猫 我本科专业学的是GIS(Geographical Information System),大学期间也学习了很多的编程语言,有C/C++/JAVA等 之前给我们授课的是韩冰老师, ...

  9. LeetCode 687. Longest Univalue Path 最长同值路径 (C++/Java)

    题目: Given a binary tree, find the length of the longest path where each node in the path has the sam ...

  10. Jmeter接口测试之案例实战

    Jmeter是apacheg公司基于Java开发的一款开源的压力测试工具,安装Jmeter之前先安装Jdk,具体JDK安装和环境变量配置自行百度.这里不概述. 1.添加线程组 测试计划->添加- ...