模态分解算法 EMD、EEMD、CEEMD

news2024/11/16 23:58:05

一、模态分解算法===============EMD算法介绍

(一)模态分解相关的算法有以下几类

IMF 固有模态函数\EMD经验模态分解\EEMD集合经验模态分解\CEEMD 互补集合经验\(EEMD的标准形式)CEEMDAN自适应噪声完备集合经验模态分解\VMD 变分模态分解

(二)本篇主要介绍EMD算法

IMF的定义:将待研究的信号分解为一个个单分量信号,每一个单分量信号只包含一种振荡模式(即单一的瞬时频率),这些分解后的分量称为固有模态函数

满足两点要求

1)极值点和过零点的数目应该相等,或者最多差一个

2)局部最大和局部最小的上下包络线均值为零

这两点要求是必要非充分条件,也就是IMF一定满足上面两个条件,但是满足上面两个条件的不一定是IMF。

(三)EMD的步骤

1)对信号x(t),找出局部最大值和局部最小值点

2)再利用三次样条函数分别对这些局部最大值和局部最小值点进行插值得到x(t)的上包络线u(t)和下包络线l(t),获取上下包络线的均值

m(t) = [u(t)+l(t)]/2,则m(t)为上下包络线的均值。

3)令h(t) = x(t)-m(t);检查h(t)是否满足IMF的条件,如果不满足,则继续上述迭代过程至到某h(t)符合IMF的条件

以某心电数据为例,展示EMD的效果图:

(四)EMD存在的问题

模式混合/模态混叠

1)一个单独的IMF信号中含有不同的时间尺度;

2)相同时间尺度出现在不同的IMF中。

matlab论坛上面有一幅图可以清楚地展现这两个问题

如上图所示,IMF2中存在两种模式,IMF2红色圈和MIF3蓝色圈中类似于一种模式。

我们在看EMD算法时,经常能够看到说单一模态、单一模式或者单一时间尺度,那么,单一模态,或者单一时间尺度的标准是什么?

1)信号中局部两个连续过零点之间的时间宽度一致

2)信号中两个连续峰值之间的时间宽度一致

3)曲率上两个连续峰值之间的时间宽度一致

为了解决EMD模式混叠的问题,学者们提出将正态分布的白噪声加到原始信号,于是EEMD分解算法产生了。

二、模态分解算法===============EEMD算法介绍

上面介绍了EMD算法,并分析了EMD算法的存在的问题,即分解后的IMF可能存在模式混叠。一旦IMF存在模式混叠,也就是IMF不是单一频率的分量,也就无法准确获取瞬时频率。为了解决这个问题,集合经验模态分解算法(EEMD)被提出。

(1)EEMD算法步骤如下:

1.将正态分布的白噪声加到原始信号;

2.将加入白噪声的信号作为一个整体,然后进行EMD分解,得到各IMF分量;

3.重复步骤1和2,每次加入新的正态分布白噪声序列;

4.将每次得到的IMF做集成平均处理后作为最终结果。

语言是苍白是,我们用图表示,如下:

集合经验模态分解算法流程

我们同样采样Matlab论坛里面的一张图

从上图可以看出,EMD存在的频谱混叠现象,而EEMD已经不存在。

(2)EEMD存在的问题

EEMD虽然解决了EMD出现的模式混叠问题,但是由于加入白噪声,因此也带来其他问题

1.集总平均后的IMF可能不再符合IMF的要求(偏差一般较小,不影响瞬时频率的计算)

2.集总平均次数一般在几百次以上,非常耗时;

3.白噪声在集总平均之后基本抵消,但存在残留,重建之后噪声不可忽略;

为了解决重建之后白噪声无法完全抵消,加和之后噪声过大的问题,CEEMD紧接着被提出。

三、模态分解算法===============CEEMD算法介绍

文章模态分解算法「一」EMD算法介绍介绍了EMD算法的流程,并分析了EMD算法存在的问题,即模式混叠,基于EMD存在的问题,文章模态分解算法「二」EEMD算法介绍介绍了在简单的EMD分解的基础上添加白噪声,从而使得分解的IMF是单一模式,优化了模式混叠,但是引入新的问题,即白噪声在集总平均之后不能完全抵消,而存在残留,导致重建之后的噪声不可忽略。因此互补集合经验模态CEEMD被提出。

CEEMD和EEMD流程相似,不同的是EEMD每次仅添加白噪声,CEEMD算法是将原信号加上白噪声和原信号减去白噪声两个信号同时经过EMD,求均值,用于抵消信号中加入的噪声。具体的算法流程如下所示:

互补集合经验模态分解

s(t)为原始信号,加入不同的白噪声,共加入n次,也就是集总平均次数为n。分别对加噪声和减噪声的信号做EMD分解,将分解之后的两组IMF求均值,再将n组IMF求平均值,即可获得最终的IMF组分量。

CEEMD是对EEMD的优化,集总平均次数会减少,从EEMD的百量级减小到CEEMD的几十的量级,重建后的信号噪声明显减少。通常情况,集总平均次数越多,重构后的信号噪声越小。

说明&致谢:

本文仅供学习参考之用,参考及致谢:XieHS

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

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

相关文章

Crypko.ai:动漫角色生成和设计平台

【产品介绍】 Crypko.ai是一个基于GAN(生成对抗网络)的高质量动漫角色生成和设计平台,可以让用户通过简单的操作,创造出各种风格和特征的动漫角色,并且可以对角色的头发、脸部、衣服、风格等进行编辑和调整。 Crypko.a…

【GNN】谱域图卷积

谱域图卷积 1. 谱域卷积的背景知识 1.1 谱域图卷积实现思路 f 1 ( t ) ⋆ f 2 ( t ) F − 1 [ F 1 ( w ) F 2 ( w ) ] f_1(t) \star f_2(t) F^{-1}[F_1(w)F_2(w) ] f1​(t)⋆f2​(t)F−1[F1​(w)F2​(w)] 1.2 如何定义图上的傅里叶变换 经典傅里叶变换: x ( …

人工智能+自助餐:一种有效减少食物浪费的创新方案

一、案例背景: 自助餐是一种受欢迎的餐饮形式,可以满足不同顾客的口味和需求。但是,自助餐也存在着浪费食物的问题,有的顾客拿得多吃得少,有的顾客只吃部分食物,剩下的扔掉。据统计,2022年中国…

【算法竞赛】实现约瑟夫问题的四种方法(附手绘图详解)

💌 博客内容:实现约瑟夫问题的四种方法 😀 作  者:陈大大陈 🚀 个人简介:一个正在努力学技术的准前端,专注基础和实战分享 ,欢迎私信! 💖 欢迎大家&…

视频剪辑配乐技巧 视频剪辑配音推荐

视频是视觉加听觉的艺术,视频的背景音乐不同,所呈现的效果也不同。接下来为大家带来大家视频剪辑配乐技巧,视频剪辑配音推荐的相关内容。 一、视频剪辑配乐技巧 视频剪辑时选好了配乐,视频就成功了一半。那如何找到合适的配乐呢…

yapi一键安装 文档开源系统

访问 GitHub - Ryan-Miao/docker-yapi: Docker build and run yapi as serviceDocker build and run yapi as service. Contribute to Ryan-Miao/docker-yapi development by creating an account on GitHub.https://github.com/Ryan-Miao/docker-yapi git clone https://githu…

Class类

package com.hspedu.reflection.class_;import com.hspedu.Cat;import java.util.ArrayList;/*** author 韩顺平* version 1.0* 对Class类特点的梳理*/ public class Class01 {public static void main(String[] args) throws ClassNotFoundException {//看看Class类图//1. Cla…

python版电报API接入从零到一(有彩蛋)

文章链接 编号分类文章及链接介绍作者来源分类撰写日期收录日期F1框架python版telegram接入开源botpython-telegram-botGithub2023-04-24 申明:本文仅作试验研究用,不对参考本文操作产生的各种结果承担任何责任。 Q&A 使用Telegram的API需要交费吗…

三顾茅庐,七面阿里,成功上岸25k16薪,我行你也行~

写在片头:声明,勿杠 首先简单说一下,这三次面试阿里并不是一次性去面的,实际上第一次面试时候还在大四,找的实习岗,不太清楚是什么部门,别问我为什么还记得面试题,有记录和复盘的习惯…

什么是OADM光分插复用器

文章导读: 什么是OADM光分插复用器 光分插复用器的功能 光分插复用器的类型(FOADM, TOADM) OADM的应用 1、什么是OADM光分插复用器 由不同的光通道进出单模光纤。 它的主要功能是在不影响其他波长信道传输的情况下,选择性地下载或…

Vue(监测数据改变、收集表单数据、过滤器)

一、监测数据改变原理 1. 监测对象数据改变原理 当数据发生改变之后:直接会显示数据改变(一种强硬写法) let data { name: "北京大学", address: "北京" };// 以下通过temp进行监视:还得还原temp值&#xf…

k8s 部署 ldap 服务

1、创建挂载卷,将数据和配置进行持久化存储 1.1、使用nfs作为共享存储 [rootlocalhost openldap_yaml]# cat /etc/exports /dump_file/openldap_db 172.21.53.0/24(rw,sync,no_root_squash,no_all_squash) /dump_file/openldap_conf 172.21.53.0/24(rw,sync,no_roo…

【Linux常见指令以及权限理解】基本指令(1)

写在前面: 相信看完上一个博客,我们已经成功搭建好了Linux环境, 如果没有可以去看看:Linux环境搭建。 接下来我会讲述Linux的常见指令以及权限理解相关内容。 这篇文章会介绍一些常用的Linux指令并穿插一些操作系统的概念理解…

巧用千寻位置GNSS软件|一文教会横断面测量

测横断面主要用于线路工程和水利工程的前期设计中,在线路平曲线设计好之后,千寻位置GNSS软件可用于在中桩处测定垂直于线路中线方向原地貌的地面起伏的数据,本期就为大家介绍具体的操作技巧。 点击【测量】->【测横断面】,选择…

ByteHouse云数仓版查询性能优化和MySQL生态完善

ByteHouse云数仓版是字节跳动数据平台团队在复用开源 ClickHouse runtime 的基础上,基于云原生架构重构设计,并新增和优化了大量功能。在字节内部,ByteHouse被广泛用于各类实时分析领域,最大的一个集群规模大于2400节点&#xff0…

( 栈和队列) 20. 有效的括号 ——【Leetcode每日一题】

❓20. 有效的括号 难度:简单 给定一个只包括 (,),{,},[,]的字符串 s ,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合…

决策树入门、sklearn实现、原理解读和算法分析

文章目录 决策树入门决策树sklean实现决策树算法单/多变量决策树CART分类树算法 决策树分析复杂度控制特征重要性决策树特点 决策树入门 总算来到心心念念的决策树了。工作中一直在用xgb模型,今天开始,终于可以尝试去理解其背后的算法原理了。不过xgb较…

软件开发全套文档案例分享

写在前面 在日常项目开发过程中,会产生大量的过程文档,比如开发过程中的文档、管理过程中的文档、产品相关文档等等,那这些文档我们日常怎么去管理呢?怎么去做规划呢?如何做成通用标准呢?小编特地整理了一…

问卷中多选题如何分析?

一、案例与问卷 本研究选取大学生作为研究对象,旨在通过理财认知、理财现状、理财偏好三个方面,对大学生理财产品了解情况、使用需求进行调查。本次问卷共分为四个部分:第一部分共5道题,为基本信息题;第二部分共3道题…

换肤实现及LayoutInflater原理

文章目录 背景实现换肤步骤解析插件 apk 的包信息获取插件 apk 的 Resources 对象替换资源 简单的插件化换肤实现和存在的问题换肤如何动态刷新?控件换肤刷新的性能考虑如何降低 xml 布局中 View 的替换成本LayoutInflater 原理LayoutInflater.Factory2 替换 View 小…