?? example2_3_1.m
字號:
load leleccum; %裝載信號
s=leleccum(1:3920);
ls=length(s);
[cA1,cD1]=dwt(s,'db1'); %采用db1基本小波來分解信號
A1=upcoef('a','cA1','db1',1,ls); %第三步中產生的系數cA1和cD1構造第一層的低頻和高頻(A1和D1)系數
D1=upcoef('d','cD1','db1',1,ls);
figure(1);
subplot(1,2,1);plot(A1);title('Approximation A1') %顯示第一層的分解結果
subplot(1,2,2);plot(D1);title('Detail D1')
A0=idwt(cA1,cD1,'db1',ls); %由小波逆變換恢復信號
[C,L]=wavedec(s,3,'db1'); %多尺度一維分解
cA3=appcoef(C,L,'db1',3); %從上面的C中提取第三層的低頻系數
cD3=detcoef(C,L,3); %從上面的C中提取第1、2、3層的高頻系數
cD2=detcoef(C,L,2);
cD1=detcoef(C,L,1);
A3=wrcoef('a',C,L,'db1',3); %重構第三層的低頻信號
D1=wrcoef('d',C,L,'db1',1); %重構第1、2、3層的高頻信號
D2=wrcoef('d',C,L,'db1',2);
D3=wrcoef('d',C,L,'db1',3);
figure(2);
subplot(2,2,1);plot(A3);title('Approximation A3') %顯示多尺度一維分解結果
subplot(2,2,2);plot(D1);title('Detail D1')
subplot(2,2,3);plot(D2);title('Detail D2')
subplot(2,2,4);plot(D3);title('Detail D3')
A0=waverec(C,L,'db1'); %比較第三層近似信號與原始信號
err = max(abs(s-A0)) %重構最大誤差
figure(3);
subplot(2,1,1);plot(s);title('original');axis off %比較第三層近似信號與原始信號
subplot(2,1,2);plot(A3);title('Level 3 Approximation');axis off
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -