关于将DCT应用于矩阵的有趣观察

时间:2014-07-30 08:12:28

标签: matrix dct

我的尺寸为512x512的灰度图像。我想将矩阵转换为dct,所以这就是我所做的。

场景1:将DCT应用于整个图像

img = imread('cameraman.tif');

img_dct = dct2(img);

场景2:将DCT应用于原始图像的第一个8x8块

img2 = imread('cameraman.tif);

img_block = img2(1:8, 1:8);

img_block_dct = dct2(img_block);

现在,有趣的一点(或者我做错了) 当我显示img_dct(1:8, 1:8)img_block_dct时,我得到两个非常不同的8x8矩阵。难道这两者完全不一样,还是我错了?

1 个答案:

答案 0 :(得分:0)

不一样。通过DCT2等式,DCT系数取决于图像的大小。如果你明确阻止M=8 N=8,那么它将是图像的大小。