我正在从本教程学习FFT: https://www.mathworks.com/help/images/fourier-transform.html#f21-16704
所以我在matlab的网站上尝试了这个例子。但是,频域图像是灰度而不是彩色图功能指定的彩色图像。我唯一能让它变得丰富多彩的方法是将imshow函数替换为下面注释掉的版本。
为什么在这种情况下色彩映射功能不起作用?
f = zeros(30,30);
f(5:24,13:17) = 1;
imshow(f,'InitialMagnification','fit')
figure;
F = fft2(f);
F2 = log(abs(F));
%imshow(F2,[-1 5],'InitialMagnification','fit','Colormap',jet(256)); % this works
imshow(F2,[-1 5],'InitialMagnification','fit');
colormap(jet(256)); colorbar % not work, gets greyscale image
答案 0 :(得分:0)
我认为你想要你的色彩图是一个问题。用下面的代码替换最后一行。 gca
指的是当前轴。
colormap(gca,jet(256)); colorbar