|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
前段时间做一维EMD的分解,其间遇到很多绞尽脑汁的问题,看过论坛上很多帖子之后,一个个问题迎刃而解,先谢谢各位热心的大侠。最近转移到了二维BEMD的研究,一开始便遇到了大难题,在门口徘徊半个月都进不去,着急啊,所以发帖求助,还希望大家多多帮忙。
首先,在论坛上找到了二维BEMD的程序(谢谢各位的共享),程序包括BEMD.m、BEMD_RBF.m、Env.Rbf.m、moy_env.m。将这些m文件加载到work下之后,发现二维并不是一维那么简单,然后又在论坛上搜索之后发现,要下载FastRBF,并且需要FastRBF.lic这个文件,两个都搞定之后,开始使用程序。因为不知道二维程序该如何使用,所以就按照一维的思路摸索。在BEMD.m里发现有这样几句话
nb_modes=6; % number of modes
ext_lpe=1 % if ext_lpe==1 interpolation by extrema
% else by crest lines
SDmax=1; % standard deviation
precision=0.0003; % precision of stop criteria
t1=150;
t2=150;
t3=0;
t4=0;
I=imread('E:\JC\Images\Decomposition\barbara.gif');
I=mat2gray(double(I));
%figure, imagesc(I), colormap(gray), title('image'),truesize, drawnow
I=double(I)*255;
figure, imagesc(I), colormap(gray), title('image'),truesize, drawnow
[If,Ires,Imodes]=BEMD_RBF(I,nb_modes,SDmax,ext_lpe,precision);
所以就凭着感觉输入了下面的程序,
>> a=imread('F:\image\nadal.bmp');
>> a=mat2gray(double(a));
>> a=double(a)*255;
>> [If,Ires,Imodes]=BEMD_RBF(a,6,1,1,0.0003);
结果matlab显示
Interpolation par les extrema
??? Undefined command/function 'fastrbf_fit'.
Error in ==> Env_Rbf at 64
rbfmin=fastrbf_fit(datamin,0.00000001);
Error in ==> BEMD_RBF at 47
[Ienv_I,Ienv_S,nb_extr]=Env_Rbf(I,ext_lpe);
也在论坛上搜过,发现可能是因为matlab的版本不对,我用的是matlab7.0版本,想请教下应该换成哪个版本?并且之前输入的matlab口令也可能是错的,还请赐教应该如何写?
|
|