?? fencengyasuo.m
字號:
%圖像壓縮部分程序
clear all;
load woman;
x=X(100:200,100:200);
%對原始圖像用bior3.7小波進行2層小波分解
[c,s]=wavedec2(x,2,'bior3.7');
%提取小波分解結構中第1層的低頻系數和高頻系數
cA1=appcoef2(c,s,'bior3.7',1);
%水平方向
cH1=detcoef2('h',c,s,1);
%斜線方向
cD1=detcoef2('d',c,s,1);
%垂直方向
cV1=detcoef2('v',c,s,1);
%分別對各頻率成分進行重構
%重構第一層系數
A1=wrcoef2('a',c,s,'bior3.7',1);
H1=wrcoef2('h',c,s,'bior3.7',1);
D1=wrcoef2('d',c,s,'bior3.7',1);
V1=wrcoef2('v',c,s,'bior3.7',1);
c11=[A1 H1;V1 D1];
%保留第一層低頻信息并對其進行量化編碼
ca1=wcodemat(cA1,440,'mat',0);
%利用小波函數bior3.7保留第二層低頻信息并對其進行量化編碼
cA2=appcoef2(c,s,'bior3.7',2);
ca2=wcodemat(cA2,440,'mat',0);
ca2=0.5*ca2;
nbc=size(map,1);
colormap(map);
subplot(2,2,1);
image(wcodemat(x,nbc));
title('原始圖像');
subplot(2,2,2);
image(wcodemat(c11,nbc));
title('分解后的低頻和高頻信息');
subplot(2,2,3);
image(wcodemat(ca1,nbc));
title('用小波bior3.7第一次壓縮后圖像 ');
subplot(2,2,4);
image(wcodemat(ca2,nbc));
title('用小波bior3.7第二次壓縮后圖像');
axis square;
disp('原始圖象大小: ');
whos('x');
disp('用小波bior3.7第一次壓縮后圖像的大?。?#039;);
whos('ca1');
disp('用小波bior3.7第二次壓縮后圖像大?。?#039;);
whos('ca2');
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -