资源简介
改进版程序ceemd,加入噪声,抑制噪声,有不错的效果。
代码片段和文件信息
function [imftresidtspecwaddmeancountimfnresidn] = ceemdnew(xthrshsthreshNalpha)
% Empiricial Mode Decomposition (Hilbert-Huang Transform)
% [imfresidspecwaphsmeancount] = emd(xthrshsthreshNalpha)
% Inputs:
% thrsh=thershold variance [0.2 to 0.3 usually]
% sthrh=threshold for first iteration [between 4/8]
% N=number of trials for the ensemble emd
% alpha=multiplier for white noise (defaults to .1*std(x) as suggested by Huang)
% Outputs:
% imf= intrinsic mode functions (imf(:end))
% resid=residue; spec is the spectrum (A*e^jwt) w is the
% frequency a is the ampitlude phs is the instphase
x = transpose(x(:));
imf = [];
k=0;
xt=x;
if nargin<5
% alpha=.1*std(xt);
alpha=0.5*std(xt);% 按照需要修改,huang的建议是0.1,但是0.1会造成端点噪声大。
end
cx=0;
s=0;
i=1;
lim=1;
imfprev=[];
while i if i~=1
Noise=alpha.*randn(size(xt));
else
Noise=0;
end
for t=1:lim
count=0;
x=xt+(-1)^t*Noise;
while ~ismonotonic(x)
count=count+1;
if i==1
k=k+1;
imf{count}=zeros(size(x));
meancount(k)=0;
end
x1 = x;
VA = Inf;
cn=0;
while (VA > thrsh) | ~isimf(x1)
cn=cn+1;
s1 = getspline(x1);
s2 = -getspline(-x1);
x2 = x1-(s1+s2)/2;
VA = var((s1+s2)./(2*x1));
x1 = x2;
if i==1 cx=cx+1; elseif cn>cx*2 break; end
if i==1 && cx>numel(xt)/2
s=s+1;
if s>sthresh
x1=xt+alpha.*randn(size(xt));
s=0;
cx=0;
disp(‘Restarting Sifting‘);
end
end
end
% if cn>cx*2 && i~=1
% disp(‘Too long for ensemble member breaking count‘)
% flag=1;
% break;
% else
% flag=0;
% end
if count<=k
if i==1
imf{count} = x1+imf{count};
else
imf{tcount}=x1+imf{tcount};
end;
else
break;
end
x=x-x1;
end
if i==1
resid=repmat(x21);
imf=repmat(imf21);
% elseif flag==0
else
resid(t:) = x+resid(t:);
if t==lim
meancount=meancount+1;
end
% residprev=x;
% else
% if t==lim
% resid(1:)=resid(1:)-residprev;
% for l=1:numel(imf(1:))
% imf{1l}=imf{1l}-imfprev{l};
% end
% end
% i=i-1;
end
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 4623 2019-05-13 11:39 ceemd (1).m
相关资源
- emdeemdceemd去噪
- 噪声自适应完备总体平均经验模态分
- 多目标问题RM-MOEAMOEAD的改进版,by张青
- VC 局域网文件传输源代码(改进版
- 声波通信源代码改进版
- Socket 类封装 改进版
- IEEE754 to DSP(VC33)(64位转40位) 改进
- 交易开拓者TB程序化策略R_Breaker改进版
- CEEMDAN算法,EEMD和EMD的进一步改进算法
- CEEMD-信息熵-完美运行,你指的拥有。
- 实验四:实现一个unix命令解释程序代
- 基于simbad平台的避障算法---栅格法改
- 测试压力和温度改进版.zip
- GitHack改进版git源码泄露恢复工具
- cad去除教育版戳记插件(改进版)
- emd,eemd,ceemd,ceemdan 函数分解差异
- CEEMD分解-imf分量相关系数-信息熵特征
- CEEMD-相关系数-样本熵特征,用于故障
- flash 抽奖程序改进版(附带源文件)
- VC自动登录telnet发送命令改进版
评论
共有 条评论