资源简介

个比较经典的二维经验模式分解程序代码,适用于图像分解,加油

资源截图

代码片段和文件信息

function imf = emd(x)
% Empiricial Mode Decomposition (Hilbert-Huang Transform)
% imf = emd(x)

x   = transpose(x(:));
imf = [];
while ~ismonotonic(x)
   x1 = x;
   sd = Inf;
   while (sd > 0.1) | ~isimf(x1) %#ok
      s1 = getspline(x1);
      s2 = -getspline(-x1);
      x2 = x1-(s1+s2)/2;
      
      sd = sum((x1-x2).^2)/sum(x1.^2);
      x1 = x2;
   end
   
   imf{end+1} = x1; %#ok
   x          = x-x1;
end
imf{end+1} = x;

function s = getspline(x)


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        991  2009-07-23 16:53  emd .m

----------- ---------  ---------- -----  ----

                  991                    1


评论

共有 条评论