資源簡介
二維EMD程序,這是利用最新的插值函數,個比較經典的二維經驗模式分解程序代碼,適用于圖像的特征提取和分解
代碼片段和文件信息
function?[imf_matrix]=bemd(img)
%%輸入一副灰度圖像
[rowcoldep]?=?size(img);%??row?col?and?depth?of?original?image
if?dep?~=?1
????img?=?im2double(rgb2gray(img));
else
????img?=?im2double(img);??
end
%%%%%主函數
%?分解IMF個數設置為3(加上殘余量為4個分解量)(可根據實際情況修改)
m=4;
k=1;
input_img=img;
while(k ????[imf_de?res_de]=decompsition(input_img);??%%?通過分解得到IMF分量和余項
????imf_matrix(::k)=imf_de;%%保存IMF分量
????input_img=res_de;?%%將余項作為新信號,再次分解
????k=k+1;
end
imf_matrix(::k)=res_de;%%保存殘余量
end?
function??[imf_de?res_de]=decompsition(input_img)
[width?height]=size(input_img);
x=1:width;
y=1:height;
input_img_temple=input_img;
while(1)
????[zmax?imax?zmin?imin]=extrema2(input_img_temple);??%%%%圖像表面極值點
????[xmax?ymax]=ind2sub(size(input_img_temple)imax);
????[xmin?ymin]=ind2sub(s
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1364??2018-06-03?09:39??bemd\bemd.m
?????文件???????3723??2018-06-03?09:48??bemd\extrema.m
?????文件???????5480??2018-06-03?09:47??bemd\extrema2.m
?????文件??????33939??2006-08-06?09:34??bemd\gridfit.m
?????目錄??????????0??2018-07-04?07:09??bemd
-----------?---------??----------?-----??----
????????????????44506????????????????????5
評論
共有 條評論