📄 ex_08_09_3.m
字号:
% ex_08_09_3.m; 习题 8.9
clear all;clc;
I=imread('girl.bmp');
subplot(221);imshow(I);
%
A=double(I);
B=zeros(size(A));
C=zeros(size(A));
W=[16 11 10 16 24 40 51 61
12 12 14 19 26 58 60 55
14 13 16 24 40 57 69 56
14 17 22 29 51 87 80 62
18 22 37 56 68 109 103 77
24 35 55 64 81 104 113 92
49 64 78 87 103 121 120 101
72 92 95 98 112 100 103 99];
s=size(A);
for m=1:s(1)
if rem(m,8)==0
for n=1:s(2)
if rem(n,8)==0
B(m-8+1:m,n-8+1:n)=dct2(A(m-8+1:m,n-8+1:n));
for i=1:8
for j=1:8
B(m-8+i,n-8+j)=round(B(m-8+i,n-8+j)/W(i,j));
if (B(m-8+i,n-8+j)==0)
end
end
end
end
end
end
end
for m=1:s(1)
if rem(m,8)==0
for n=1:s(2)
if rem(n,8)==0
for i=1:8
for j=1:8
B(m-8+i,n-8+j)=round(B(m-8+i,n-8+j)*W(i,j));
end
end
C(m-8+1:m,n-8+1:n)=idct2(B(m-8+1:m,n-8+1:n));
end
end
end
end
C=uint8(C);
subplot(222);
imshow(C);
%axis square;xlabel('量化后重建图像');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -