求提取小波係數的matlab程序
題目:
求提取小波係數的matlab程序
解答:
% 裝載leleccum信號
load leleccum;
s = leleccum(1:3920);
% 用db1小波函數對信號進行三尺度小波分解
[C,L]=wavedec(s,2,'db1');
figure(1);
plot(s);
title('leleccum原始信號');
% 提取尺度1的低頻係數
cA1 = appcoef(C,L,'db1',1); %用小波分解框架[C.L]計算1層低頻係數的近似值,小波基爲db1
% 提取尺度2的低頻係數
cA2 = appcoef(C,L,'db1',2);
figure(2);
subplot(2,1,1);
plot(cA1);
title('尺度1的低頻係數');
subplot(2,1,2);
plot(cA2);
title('尺度2的低頻係數');
% 提取尺度1的高頻係數
cD1 = detcoef(C,L,1); %用小波分解框架[C.L]計算1層高頻係數的近似值,小波基爲db1
% 提取尺度2的高頻係數
cD2 = detcoef(C,L,2);
figure(3);
subplot(2,1,1);
plot(cD1);
title('尺度1的高頻係數');
subplot(2,1,2);
plot(cD2);
title('尺度2的高頻係數');
添加新評論