如何获取图像的相位角并进行验证? MATLAB

问题描述

相位和相位谱有什么区别?

我有一张 360x360 的二维图像 该图像是通过捕获反射波的振幅创建的。

我想计算这张图片的相位角

我的尝试:

image = rgb2gray(imread('coin.jpg')); 
F = fft2(double(image));
F_Mag = abs(F);
F_Phase = exp(1i*angle(F));
% reconstructin
I_Mag = ifft2(log(F_Mag+1));
I_Phase = ifft2(F_Phase);
% Calculate limits for plotting
I_Mag_min = min(min(abs(I_Mag)));
I_Mag_max = max(max(abs(I_Mag)));
I_Phase_min = min(min(abs(I_Phase)));
I_Phase_max = max(max(abs(I_Phase)));
% display reconstructed images
subplot(121),imshow(abs(I_Mag),[I_Mag_min I_Mag_max]),colormap gray 
title('reconstructed image only by Magnitude');
subplot(122),imshow(abs(I_Phase),[I_Phase_min I_Phase_max]),colormap gray 
title('reconstructed image only by Phase');

但我不确定我是否正确?

如何验证?

enter image description here

enter image description here

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)