dudubear2009 发表于 2007-5-23 10:41

emd.m中的diff函数起什么作用?

Ivan Magrin-Chagnolleau的程序(emd.m)中,求局部最大最小值时,diff函数是求微分的意思吗?起什么作用呢,为什么要有这个函数?本人没有信号处理基础,请大虾指教~
while SD > 0.3
            % find local max/min points
      d = diff(h); % approximate derivative
      maxmin = []; % to store the optima (min and max without distinction so far)
      for i=1:N-2
         if d(i)==0                        % we are on a zero
            maxmin = ;
         elseif sign(d(i))~=sign(d(i+1))   % we are straddling a zero so
            maxmin = ;      % define zero as at i+1 (not i)
         end
      end
      
      if size(maxmin,2) < 2 % then it is the residue
         break
      end

eight 发表于 2007-5-23 10:49

本帖最后由 wdhd 于 2016-3-11 13:43 编辑

原帖由 dudubear2009 于 2007-5-23 10:41 发表
Ivan Magrin-Chagnolleau的程序(emd.m)中,求局部最大最小值时,diff函数是求微分的意思吗?起什么作用呢,为什么要有这个函数?本人没有信号处理基础,请大虾指教~
while SD > 0.3
            % find...
极值点必定是稳定点(导数为0的点)

dudubear2009 发表于 2007-5-23 11:04

再请问eight~

谢谢eight~
再请问,
elseif sign(d(i))~=sign(d(i+1))   % we are straddling a zero so
            maxmin = ;      % define zero as at i+1 (not i)

为什么0点在 i 和 i+1之间时,取 i+1 为极值点啊?

eight 发表于 2007-5-23 11:10

本帖最后由 wdhd 于 2016-3-11 13:43 编辑

原帖由 dudubear2009 于 2007-5-23 11:04 发表
谢谢eight~
再请问,
elseif sign(d(i))~=sign(d(i+1))   % we are straddling a zero so
            maxmin = ;      % define zero as at i+1 (not i)

为什么0点在 i 和 i+1之间时,取 ...
求导后生成的向量比原向量的长度少1,取为 i+1 是比较好的方法,当然,也可以取为 i
页: [1]
查看完整版本: emd.m中的diff函数起什么作用?