📄 ch4_2_2.m
字号:
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 + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -