【发布时间】:2017-06-01 20:22:56
【问题描述】:
我正在尝试通过 Matlab 中的imread 函数读取两个“bmp”格式的图像。
对于第一张图片,它返回一个 512*512 uint8 的矩阵,对于第二张图片,它返回一个 512*512*3 uint8 的矩阵。
对img2 进行傅里叶变换后,显示为白色图像。任何想法?
img1 = imread('I1.bmp');
img2 = imread('I2.bmp');
mag1 = abs(img1);
mag2 = abs(img2);
phase1 = angle(double(img1));
phase2 = angle(double(img2));
subplot(2, 2, 1);
subimage(img1);
subplot(2, 2, 2);
subimage(img2);
FFT1 = fft2(double(img1));
FFT2 = fft2(double(img2));
subplot(2, 2, 3);
imshow(log(abs(fftshift(FFT1))), [0 10]);
colormap(gray);
colorbar;
subplot(2, 2, 4);
imshow(log(abs(fftshift(FFT2))), [0 10]);
colormap(gray);
colorbar;
【问题讨论】:
标签: matlab image-processing fft