我不知道为什么写的这么复杂,不是我写的,我也想写的简单。这部分是做极大极小值点提取的,是一通用部分 ...
包络谱和频谱一样吗?是不是一个求法?谢谢 xiaomi1987 发表于 2013-7-1 11:52 static/image/common/back.gif
包络谱和频谱一样吗?是不是一个求法?谢谢
包络谱是不是包络线的频谱/时频谱?
我不清楚。如果是的话,那么包络谱是先要从信号中提取出来包络线,接下来的过程和频谱是一样额,利用FFT做。
yghit08 发表于 2012-6-16 15:56 static/image/common/back.gif
大家自己看着下吧,分离效果一般。程序写的一般怕被笑话,所以用.p格式的
学习学习,谢谢 yghit08 发表于 2013-3-26 19:39 static/image/common/back.gif
LMD的作者发布了一个GUI,不过收费50英镑,具体成熟与否,你考虑考虑EMD。如果说EMD也没被认为成熟,那么 ...
他们申请了专利 对我们使用有影响吗 luweiyun 发表于 2013-8-28 15:27 static/image/common/back.gif
他们申请了专利 对我们使用有影响吗
没有吧,不是商业目的用没问题 yghit08 发表于 2013-8-28 15:47 static/image/common/back.gif
没有吧,不是商业目的用没问题
哦哦 那就好谢谢主任{:3_53:} 非常不错,学习中》》》》》》》》》 我也想加入讨论,贴上一些机械故障诊断数据的插图分享。呵呵 之前看网上一个程序,运行总是只有两个pf,我自己改了好久也没有改对。先看看楼主的,谢谢分享! 楼主你好,我刚开始涉足LMD,希望能跟你请教一下啊!!!方便加Q么?1013416478 本帖最后由 王子期待 于 2013-11-18 22:38 编辑
运行
clc;
N=4096;
n=1:N;
fs=3838.77;
t=n/fs;
x2=(x2)';
=lmd_test(x2);
pf=Am_d.*Fm_d;
figure(1)
plot(t,pf);
出来错误啊
Error using horzcat
CAT arguments dimensions are not consistent.
Error in extr (line 28)
indzer = sort();
Error in lmd_test (line 11)
=extr(x);
Error in Untitled (line 7)
=lmd_test(x2);
求楼主指导!
补充内容 (2013-11-19 11:09):
x2=(x2)';
这一步不是转置了嘛...
关于LMD的问题??初学者
1.初学LMD,看了原理和算法,自己做一些简单的验证。
>> t=1:100;
>> x=sin(t)+sin(2*t);
>> pe=lmd1(x);
这个简单的可以运行。但是取了步长后,就是错误:
>> t=1:0.01;100;
>> x=sin(t)+sin(2*t);
>> pe=lmd1(x);
??? Error using ==> zhaochun1>boundary_conditions at 89
not enough extrema 没有足够的极值点。
自己带了自己用的1维语音信号进去,会出现有时1个周期运行出来,换个周期又是上面的错误,,请问是什么原因??
2.EMD和LMD
EMD是用原信号—平均包络X(t)-ml=hl再带去,而LMD是si=(h-mi)./ai; LMD对数据的维数是不是有要求,EMD可以处理的数据,LMD不一定可以处理?
离别依然 发表于 2013-11-21 16:52 static/image/common/back.gif
不知道你的lmd程序哪来的,不好评价,不过出现你说的这个问题具体原因不明,看程序写的是“t=1:0.01;100”如果不是这里错误的话就不知道是为啥了:t=1:0.01:100;
个人持这样的观点:EMD能处理的,LMD也能处理;EMD处理结果不错的,LMD可能能得到更好的结果(可能性不大,EMD中不出现负频率的情况下);
从目前的发展看,LMD亦出现二维LMD算法了,所以不存在你说的第二个问题 yghit08 发表于 2013-11-21 17:08 static/image/common/back.gif
不知道你的lmd程序哪来的,不好评价,不过出现你说的这个问题具体原因不明,看程序写的是“t=1:0.01;100” ...
多谢!!我用的是残翅天使转法国人的那个LMD程序,运行就存在没有足够的极值点和维数存在问题
??? Error using ==> minus
Matrix dimensions must agree.
Error in ==> zhaochun1 at 10
si=(h-mi)./ai;
Error in ==> lmd1 at 13
=zhaochun1(a,h,wucha1);
那里极值点判断<3
??? Error using ==> zhaochun1>boundary_conditions at 89
not enough extrema
Error in ==> zhaochun1>envelope at 71
= boundary_conditions(indmin,indmax,t,x,NBSYM);
,,下了几个程序都是这个问题
@yghit08,,对不起啊关于LMD的回复不了,又开了一贴
@yghit08,对不起啊于LMD的回复不了,又开了一贴,麻烦管理员了,sorry!!楼主,请问下,我用了你的《新建文件夹2》的lmd和lmd-text程序,我想问下lmd程序的
%%%%%本来应该用移动平均法做局部均值函数,这里还是利用cubic样条函数做的
LocalMeanFun=interp1(index,local_mean,1:n,interpl.method);
LocalEnFun=interp1(index,local_en,1:n,interpl.method);
和lmd_test程序的
LocalMaxEn=interp1(tmax,zmax,1:n,'spline');%%%%%上包络
LocalMinEn=interp1(tmin,zmin,1:n,'spline'); %%%%%下包络
有什么不同是什么意思,LMD前面人讲的不是不做上下包络的??只是求局部均值,,
多谢楼主,才学LMD,看了中文文献,只懂的LMD的求解远离,但对于具体的程序里面的编程远离就直接看不懂了,