form 发表于 2007-5-16 21:04

原帖由 jingrenzhi 于 2007-5-16 14:59 发表 http://www.chinavib.com/forum/images/common/back.gif
我是这样做的
x=(importdata);
imf=emd(x)
就用了两句话,得到的是imf矩阵,你的意思是imf=emd-visu(x)就得到图吗?
emd实现了对x的分解,emd_visu才会显示出来,你有了这两个m文件好好看一下前面的注释信息,自己试试就会有的,呵呵。imf=emd-visu(x)这个是不对的,两个函数是前后关系

jingrenzhi 发表于 2007-5-16 23:43

回复 #32 form 的帖子

你好!emd-visu函数,我按照帮助信息,试了一下,怎么提示错误?你是怎么用的?

[ 本帖最后由 jingrenzhi 于 2007-5-16 23:45 编辑 ]

form 发表于 2007-5-17 09:13

回复 #34 jingrenzhi 的帖子

什么错误?你找找以前的帖子。你再看一下置顶帖中的 EMD程序使用
emd_visu(x,t,imf,i);
%inputs :   - x : analyzed signal, if x is complex cemd_visu is called
%            - t : time instants
%            - imf : output of emd.m
%            - i (optional) : figure number for display

jingrenzhi 发表于 2007-5-17 09:18

回复 #35 form 的帖子

你好!我这样做的!
x=(importdata);
imf=emd(x);
t=1024;
i=10;
emd_visu(x,t,imf,i);
这样运行后结果是emd_visu程序的48行出错了!
我不知道为什么?谢谢

form 发表于 2007-5-17 19:08

估计你的向量长短不匹配,x,t。

zhangnan3509 发表于 2007-5-17 19:18

回复 #32 jingrenzhi 的帖子

坦白的说我还觉得用emd_visu画IMF很好,很简单。能少写点程序

jingrenzhi 发表于 2007-5-17 20:55

回复 #36 zhangnan3509 的帖子

请举个例子!

silly004 发表于 2007-5-18 20:25

原帖由 jingrenzhi 于 2007-5-17 09:18 发表 http://www.chinavib.com/forum/images/common/back.gif
你好!我这样做的!
x=(importdata);
imf=emd(x);
t=1024;
i=10;
emd_visu(x,t,imf,i);
这样运行后结果是emd_visu程序的48行出错了!
我不知道为什么?谢谢

t应该是个向量吧,与x是一个格式的

wendy袁 发表于 2007-9-6 21:06

clear;clc;
Eldzhbo;
dt=0.02;
x=dzhbo;
N=length(x);
T=0:dt:dt*(N-1);
imf=emd(x);

错误提示是:
??? Undefined function or variable 'isvector'.

Error in ==> F:\MATLAB6p5p1\wen\emd2\emd.m (init)
On line 744==> if ~isvector(x)

Error in ==> F:\MATLAB6p5p1\wen\emd2\emd.m
On line 160==> = init(varargin{:});

Error in ==> F:\MATLAB6p5p1\wen\emd2\hht.m
On line 7==> imf=emd(x);
我不明白isvector(x)表示什么,希望各位帮助,谢谢!

zhangnan3509 发表于 2007-9-6 21:12

回复 #39 wendy袁 的帖子

你的问题和kevin19821 的一样,还是建议你们用2005版的

wendy袁 发表于 2007-9-6 21:34

你是说emd分解用2005版的?哪来有的下载?
那之前我出现的是什么问题呢?

zhangnan3509 发表于 2007-9-6 21:40

回复 #41 wendy袁 的帖子

在zhlong的网络硬盘里有,你之前的问题是2007版的程序需要安装,不能直接拿来使用,你肯定没有安装或者安装好。

eight 发表于 2007-9-6 21:46

原帖由 wendy袁 于 2007-9-6 21:06 发表 http://www.chinavib.com/forum/images/common/back.gif
clear;clc;
Eldzhbo;
dt=0.02;
x=dzhbo;
N=length(x);
T=0:dt:dt*(N-1);
imf=emd(x);

错误提示是:
??? Undefined function or variable 'isvector'.

Error in ==> F:\MATLAB6p5p1\wen\emd2\emd.m ...

估计你使用的 matlab 版本比较早期(6.5或者7.0),所以没有这个 isvector 函数,换个新版本吧。各个版本的信息请参见 matlab讨论区 板块 置顶帖:聚宝盆

zhangnan3509 发表于 2007-9-6 21:52

回复 #41 wendy袁 的帖子

eight也说一种情况,所以安装版的总有条件限制,还是使用2005版的,更方便,也不用安装,基本函数都全,并且是MATLAB编写的,如果不想使用把文件夹剪切就可以了啊。那才是挥一挥手,不带走一片云彩呢

wendy袁 发表于 2007-9-6 22:12

我用的matlab是较早6.5比较久的版本。
首先谢谢两位的耐心解答。
我用2005年的了,可是结果不是很满意
2005版和2007版的计算结果相差大吗?
页: 1 2 [3] 4 5
查看完整版本: emd方法的 几点不明 请高手予以解答