資源簡介
小波熵matlab程序 自己編寫的,希望對他人有用.小波分解層數為3層,提取高頻系數,進行單只重構,從而得到各組系數,最后再用能量熵的算法對其進行..
代碼片段和文件信息
%計算小波熵
function?WEE?=?wentropy0(y)
sig=y;
fs=10000;
t=((1:length(y))/fs)‘;?
n=6;
wname=‘db6‘;
%?y=entropy(signwname);
[cl]=wavedec(signwname);%?使用db6對信號進行6層分解
ca=wrcoef(‘a‘clwnamen);%對第6層的逼近(低頻)系數進行單支重構得到重構逼近系數
EA=norm(ca2)*norm(ca2);%求第6層逼近系數的能量
for?m=1:n
????cd(m:)=wrcoef(‘d‘clwnamem);%對各層的細節(高頻)系數進行單支重構得到重構細節系數
????E(m)=norm(cd(m:)2)*norm(cd(m:)2);%每層細節系數的能量
end
%?%顯示重構后的第6層近似系數和各層細節系數
%?figure
%?subplot(711);
%?plot(tca‘LineWidth‘1);
%?ylabel(‘ca6‘);
%?title(‘顯示重構后的第6層近似系數和各層細節系數‘);
%?subplot(712);
%?plot(tcd(6:)‘LineWidth‘1);
%?ylabel(‘cd6‘);
%?subplot(713);
%?plot(tcd(5:)‘LineWidth‘1);
%?ylabel(‘cd5‘);
%?subplot(714);
%?plot(tcd(4:)‘LineWidth‘1);
%
評論
共有 條評論