我DCT2算法导致空白图像,请帮助

2视图(30天)
有一个灰色lenna512形象。bmp im,被要求 做所有8×8重叠的二维DCT块图像的im,和合并工具条的像素块DCT变换后得到一个较小的图像ims。
这是我所做的:
=双(imread (“lenna512.bmp”));
B = 0 (64、64);
i = 1:64
j = 1:64
%把原始图像分割成重叠8 * 8块
% 64 * 64 = 4096
C =((8 *我):8 *我,(8 * j-7): 8 * j);
%调用内置函数来执行
在每一块% 2-dimentional傅里叶变换
D = dct2 (C);
%的左上角元素
%完成块矩阵
B (i, j) = D (1,1);
结束
结束
% imwrite (uint8 (B),“ims.bmp”);
imshow (uint8 (B));
它显示了一个空白的图片没有任何细节,请告诉我如何解决它

答案(1)

Chunru
Chunru 2022年5月23日
一个= rgb2gray (imread (“Lenna.png”));
图;imshow(一个);
类属性名称大小字节786432 512 262144年x512 uint8我512 x512x3 uint8 cmdout 1 x33 66字符
B = 0 (64、64);
i = 1:64
j = 1:64
%把原始图像分割成重叠8 * 8块
% 64 * 64 = 4096
C =((8 *我):8 *我,(8 * j-7): 8 * j);
%调用内置函数来执行
在每一块% 2-dimentional傅里叶变换
D = dct2(双(C));
%的左上角元素
%完成块矩阵
B (i, j) = D (1,1);
结束
结束
% imwrite (uint8 (B),“ims.bmp”);
% imshow (uint8 (B));
图;显示亮度图像(B)

s manbetx 845


释放

R2022a

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!