ch4_2_2.m

来自「Matlab7.x图像处理的光盘内容 人民邮电出版社的最新」· M 代码 · 共 19 行

M
19
字号
I = imread('cameraman.tif');
I = im2double(I);
T = dctmtx(8);		%产生DCT变换矩阵
B = blkproc(I,[8 8],'P1*x*P2',T,T');	%计算二维DCT
mask = [1   1   1   1   0   0   0   0
       1   1   1   0   0   0   0   0
       1   1   0   0   0   0   0   0
       1   0   0   0   0   0   0   0
       0   0   0   0   0   0   0   0
       0   0   0   0   0   0   0   0
       0   0   0   0   0   0   0   0
       0   0   0   0   0   0   0   0];
%二值掩模,用来压缩DCT的系数
B2 = blkproc(B,[8 8],'P1.*x',mask);
%只保留DCT的10个系数
I2 = blkproc(B2,[8 8],'P1*x*P2',T',T);
%逆DCT,用来重构图像
imshow(I), figure, imshow(I2)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?