LMD经验模态分解matlab程序
LMD经验模态分解matlab程序——原味的
曾经也用滑动平均写过LMD,其实滑动平均的EMD才是原汁原味的居于均值分解。
分享给有需要的人,程序写的不好,只是希望提供一种思路。如果谁写了更完美LMD程序,别忘了发我一份,快毕业了,一直没有把LMD写完美,对于我来说始终是个遗憾。来分完美的LMD让我也品尝下,我也无憾了~
代码下载地址:/source/3102096
此处没有提供测试代码,如需要可以点这里:点我
源代码如下:
%原始lmd算法,效果很不好,不知道程序哪里写错function[PF,A,SI]=lmd(m)c=m;k=0wucha1=0.001;n_l=nengliang(m);while 1????k=k+1;????a=1;????h=c;????[pf,a,si]=zhaochun(a,h,wucha1);????c=c-pf;????PF(k,:)=pf;????A(k,:)=a;????SI(k,:)=si;????c_pos=pos(c);????n_c=nengliang(c);????n_pf=nengliang(pf);????if length(c_pos)<3 || n_c
function pos=pos(y)%功能:找序列极值点位置坐标
%y:输入序列%pos:极值点的序列位置坐标m = length(y);d = diff(y);
n = length(d);d1 = d(1:n-1);d2 = d(2:n);indmin = find(d1.