用matlab写。1)建立输入图像,在64x64的黑色图像矩阵的中心建立4x4的白色矩形图像点阵,形成图像文件。对输入图像进行二维傅立叶变换,将原始图像及变换图像(三维、中心化)都显示于屏幕上。
时间: 2024-05-31 07:11:31 浏览: 147
DCT4_org.rar_DCT 4_DCT coefficient_The First
以下是MATLAB代码实现:
% 设置图像大小为64x64,创建全黑图像矩阵
img_size = 64;
img = zeros(img_size);
% 在中心4x4的位置上创建白色矩形
rect_size = 4;
rect_start = (img_size - rect_size) / 2 + 1;
img(rect_start:rect_start+rect_size-1, rect_start:rect_start+rect_size-1) = 1;
% 显示输入图像
subplot(1,2,1);
imshow(img);
title('Input Image');
% 进行二维傅立叶变换
fft_img = fft2(img);
% 中心化
fft_img = fftshift(fft_img);
% 显示变换图像
subplot(1,2,2);
imshow(log(abs(fft_img)+1), []);
title('FFT Image');
其中,第一个 subplot 展示的是输入图像,第二个 subplot 展示的是变换后的图像。使用 log(abs(fft_img)+1) 转换图像,以便更好地展示变换后的结果。
阅读全文