EMD EEMD CEEMD CEEMDAN IEEMDAN 附赠EEMD代码
EMD
不足:EMD的局部特性可能在一个模态中产生尺度非常不同的振荡,或者在不同模态中产生尺度相似的振荡,称为“模态混合”。
EEMD
优势:对原信号添加高斯白噪音,利用EMD滤波器的二元滤波器组特性,填充整个时频空间来减少模态混合。
不足:1.重构信号。模态和最终趋势的总和,包含残余噪声;
2.信号加噪声的不同实现,可能会产生不同数量的模式,需要对不同阶的IMF进
行平均运算,最终导致虚假分量的产生,影响后续信号分析。
Complementary EEMD
优势:将白噪声成对地加入到原始数据中,大大缓解了重建问题;
不足:1.完备性不能被证明;
2.最终的平均问题仍然没有解决,因为不同的噪声信号副本可以产生不同数量的模式。
Complete EEMD with adaptive noise(CEEMDAN) 自适应噪声完备集合经验模态分解
优势:1)重构误差几乎为0; 2)解决了不同的信号加噪声实现的不同模式数的问题。
不足:1)它的模态中含有一些残余噪声;
2)与EEMD相比,信号信息出现的“晚”,在分解的早期阶段出现一些“伪”模式。
改进的CEEMDAN
优势:改善了CEEMDAN的不足。1)用局部均值的估计替换模态的估计;
2)不直接使用白噪声,而是使用信号的局部均值来提取k阶模态。
EEMD代码:
%function allmode=eemd(Y,Nstd,NE)
%
% This is an EMD/EEMD program
%
% INPUT:
% Y: Inputted data;1-d data only
% Nstd: ratio of the standard deviation of the added noise and that
% of Y (0.2-0.3);噪声的标准差
% NE: Ensemble number for the EEMD (70-100)
% OUTPUT:
% A matrix of N*(m+1) matrix, where N is the length of the input
% data Y, and m=fix(log2(N))-1. Column 1 is the original data, columns 2, 3, …
% m are the IMFs from high to low frequency, and comlumn (m+1) is the
% residual (over all trend).
%
% NOTE:
% It should be noted that when Nstd is set to zero and NE is set to 1, the
% program degenerates to a EMD program.(for EMD Nstd=0,NE=1)
% This code limited sift number=10 ,the stoppage criteria can’t change.
%
% References:
% Wu, Z., and N. E Huang (2008),
% Ensemble Empirical Mode Decomposition: a noise-assisted data analysis method.
% Advances in Adaptive Data Analysis. Vol.1, No.1. 1-41.
%
% code writer: Zhaohua Wu.
% footnote:S.C.Su 2009/03/04
%
% There are three loops in this code coupled together.
% 1.read data, find out standard deviation ,devide all data by std
% 2.evaluate TNM as total IMF number–eq1.
% TNM2=TNM+2,original data and residual included in TNM2
% assign 0 to TNM2 matrix
% 3.Do EEMD NE times-------------------------------------------------------------loop EEMD start
% 4.add noise
% 5.give initial values before sift
% 6.start to find an IMF------------------------------------------------IMF loop start
% 7.sift 10 times to get IMF--------------------------sift loop start and end
% 8.after 10 times sift --we got IMF
% 9.subtract IMF from data ,and let the residual to find next IMF by loop
% 6.after having all the IMFs---------------------------------------------IMF loop end
% 9.after TNM IMFs ,the residual xend is over all trend
% 3.Sum up NE decomposition result-------------------------------------------------loop EEMD end
% 10.Devide EEMD summation by NE,std be multiply back to data
%
% Association: no
% this function ususally used for doing 1-D EEMD with fixed
% stoppage criteria independently.
%
% Concerned function: extrema.m
% above mentioned m file must be put together
function allmode=eemd(Y,Nstd,NE)
%part1.read data, find out standard deviation ,devide all data by std
xsize=length(Y);
dd=1:1:xsize;
Ystd=std(Y);
Y=Y/Ystd;
%part2.evaluate TNM as total IMF number,ssign 0 to TNM2 matrix
TNM=fix(log2(xsize))-1;
TNM2=TNM+2;
for kk=1:1:TNM2,
for ii=1:1:xsize,
allmode(ii,kk)=0.0;
end
end
%part3 Do EEMD -----EEMD loop start
for iii=1:1:NE, %EEMD loop -NE times EMD sum together
%part4 --Add noise to original data,we have X1
for i=1:xsize,temp=randn(1,1)*Nstd;X1(i)=Y(i)+temp;
end%part4 --assign original data in the first column
for jj=1:1:xsize,mode(jj,1) = Y(jj);
end%part5--give initial 0 to xorigin and xend
xorigin = X1;
xend = xorigin;%part6--start to find an IMF-----IMF loop start
nmode = 1;
while nmode <= TNM,xstart = xend; %last loop value assign to new iteration loop %xstart -loop start dataiter = 1; %loop index initial value%part7--sift 10 times to get IMF---sift loop start while iter<=10,[spmax, spmin, flag]=extrema(xstart); %call function extrema %the usage of spline ,please see part11. upper= spline(spmax(:,1),spmax(:,2),dd); %upper spline bound of this sift lower= spline(spmin(:,1),spmin(:,2),dd); %lower spline bound of this sift mean_ul = (upper + lower)/2;%spline mean of upper and lower xstart = xstart - mean_ul;%extract spline mean from Xstartiter = iter +1;end%part7--sift 10 times to get IMF---sift loop end %part8--subtract IMF from data ,then let the residual xend to start to find next IMF xend = xend - xstart;nmode=nmode+1;%part9--after sift 10 times,that xstart is this time IMF for jj=1:1:xsize,mode(jj,nmode) = xstart(jj);endend
%part6--start to find an IMF-----IMF loop end%part 10--after gotten all(TNM) IMFs ,the residual xend is over all trend
% put them in the last column
for jj=1:1:xsize,mode(jj,nmode+1)=xend(jj);
end
%after part 10 ,original +TNM-IMF+overall trend ---those are all in mode allmode=allmode+mode;
end
%part3 Do EEMD -----EEMD loop end
%part10–devide EEMD summation by NE,std be multiply back to data
allmode=allmode/NE;
allmode=allmode*Ystd;
%part11–the syntax of the matlab function spline
%yy= spline(x,y,xx); this means
%x and y are matrixs of n1 points ,use n1 set (x,y) to form the cubic spline
%xx and yy are matrixs of n2 points,we want know the spline value yy(y-axis) in the xx (x-axis)position
%after the spline is formed by n1 points ,find coordinate value on the spline for [xx,yy] --n2 position.
EMD EEMD CEEMD CEEMDAN IEEMDAN 附赠EEMD代码相关推荐
- Unity3d(webGL)构建数字孪生小案例(包含完整的数据交互体系)附赠完整代码
先来看看概念吧: 数字孪生体是现有或将有的物理实体对象的数字模型, 通过实测.仿真和数据分析来实时感知.诊断.预测物理实体对象的状态, 通过优化和指令来调控物理实体对象的行为, 通过相关数字模型间的相 ...
- 2021华为软件精英挑战赛(附赠线下判题器链接)——经历
2021华为软件精英挑战赛(附赠线下判题器链接)--经历 1.题目解析 本次赛题源自现实的互联网企业面临的问题,怎样购买与部署服务器最便宜! 服务器:不相同型号的服务器有着不同的CPU与不同的内存,每 ...
- python爬虫简单实例-最简单的Python爬虫案例,看得懂说明你已入门,附赠教程
原标题:最简单的Python爬虫案例,看得懂说明你已入门,附赠教程 这是最简单的Python爬虫案例,如果你能看懂,那么请你保持信心,因为你已经入门Python爬虫,只要带着信心和努力,你的技术能力在 ...
- Dockerfile 简版大全,附赠编写实例
基础镜像可以用于创建Docker容器.镜像可以非常基础,仅仅包含操作系统:也可以非常丰富,包含灵巧的应用栈,随时可以发布.当你在使用Docker构建镜像的时候,每一个命令都会在前一个命令的基础上形成一 ...
- c语言二级考试程序设计题难吗,计算机二级考试:题库抽的不是题是“命”!附赠考试通关全攻略!...
原标题:计算机二级考试:题库抽的不是题是"命"!附赠考试通关全攻略! 四六级的报名刚截止不久, 考研复试如火如荼地进行, 计算机二级考试如约而至. 今天是考试第一天 老新猜你一定有 ...
- 适合新手的python书籍推荐_推荐一本适合初学者全面自学python的书(附赠电子书)...
原标题:推荐一本适合初学者全面自学python的书(附赠电子书) 今天一个朋友问我:有个朋友要学习 python,她属于那种特别能啃书的,让我推荐.我学 python 都是无师自通的,没有看过什么书, ...
- 全国计算机一级书红色封面,年度最强的网红录取通知书,竟然附赠了一张黑胶唱片...
这两天世超被一张来自中国科学院大学的录取通知书给刷屏了,这份录取通知书里还附赠了一张黑胶光盘. 光盘上刻录了一份国科大为新生准备的特别的礼物 -- 一段来自宇宙深处的声音. 它们是由国科大师生通过 5 ...
- 中文名称:程序员杂志2007精华本及附赠DVD光盘
中文名称:程序员杂志2007精华本附赠DVD光盘 资源类型:ISO 发行时间:2008年 <程序员>杂志编辑部 编 地区:大陆 语言:普通话 简介: <程序员>创刊8年来,每年 ...
- python扫雷游戏课程设计小组任务计划与分配表_Python开源扫雷游戏由网瘾少年制作,转手后月入18K,附赠所有源文件...
原标题:Python开源扫雷游戏由网瘾少年制作,转手后月入18K,附赠所有源文件 最近入手一款Python扫雷游戏,迫不及待的打开源文件试玩几次之后,颇感惭愧-惭愧这么经典的游戏居然不是由我这种&qu ...
- 移动营销的魔力:让你的客户无处可逃(附赠2012移动营销百问百答手册)
<移动营销的魔力:让你的客户无处可逃>(附赠2012移动营销百问百答手册) 基本信息 作者: (美)克鲁姆(Krum, C.) [作译者介绍] 译者: 唐兴通 出版社:电子工业出版社 IS ...
最新文章
- SGM:Sequence Generation Model for Multi-Label Classification(SGM)
- echart vue 图表大小_vue中echarts图表大小适应窗口大小且不需要刷新案例
- NBU7.5---Windows_BMR备份与恢复
- linux 装完yum不能用,解决yum不能正常使用的问题
- 如何在页面显示json数据
- JavaScript模块化编程之AMD
- 微软服务器离线补丁工具包,自己动手离线集成Windows 7 SP1最新补丁
- 黑马乐优商城Java57期
- spss因子分析结果解读_【SPSS数据分析】SPSS聚类分析(R型聚类)的软件操作与结果解读 ——【杏花开生物医药统计】...
- BLENDER快捷键(个人防止忘记的几个快捷键)
- 系统分析与设计小组项目总结报告
- 在CentOS上MySQL数据库服务器配置方法
- 疯狂的程序员_戴蓓会客厅第13期|疯狂的程序员 三维家蔡志森的野心
- 小猿圈python之python期末考试测试题(二)_小猿圈Python开发面试题(二)
- Linux dirname 命令
- python面向对象高级
- 从零学SpringCloud系列(七):API网关Zuul
- python之不同公司不同年份同一财务指标比较
- Shell脚本编程案例集(持续更新)
- sw槽钢插件_基于solidworks的槽钢构建有限元分析、优化设计及对有限元的展望