图像相位的重要性
本⽂主要参考D Ghiglia和M Pritt的《Two Dimensional Phase Unwrapping: Theory, Algorithms and Software》中对相位重要性的例⼦
傅⾥叶变换
相信很多⼈都看过知乎上的⼤神⽂章,傅⾥叶变换之掐死教程,傅⾥叶变换可以将信号从时域转到频域,如下图在时域中的⼀段声⾳信号,频域中可以⽤⼀个⾳符来表⽰。
⽽图像的傅⾥叶变换,也就是⼆维傅⾥叶变换,可以将图像从空间域转到频域中,从中我们可以分别求出幅度谱和相位谱。
那对于⼀张图⽚,到底是幅度谱重要,还是相位谱更重要呢?
相位的重要性
现在有两张图⽚,⼀张是爱因斯坦,另⼀张是蒙娜丽莎,对这两张图⽚分别做傅⾥叶变换得到各⾃的幅度谱和相位谱
当然,只看两张图⽚的幅度谱和相位谱是看不出来哪个更重要的,但现在我们把
1.爱因斯坦图像的幅度谱和蒙娜丽莎图像的相位谱结合,并做逆傅⾥叶变换。
2.蒙娜丽莎图像的幅度谱和爱因斯坦图像的相位谱结合,并做逆傅⾥叶变换。
这样结合,到底会得到爱因斯坦还是蒙娜丽莎呢?
感兴趣的话可以⽤matlab写⼏⾏代码来实现看看
- - - - - - - - - - - -- - - - - - - - - - - -- - - - --- - - - - - - 安静当条分割线✂ - - - - -- - - - - - - - - -- - - - - - - - - -- - - - - - - - - - - - - - - - --
答案揭晓:
1.爱因斯坦图像的幅度谱和蒙娜丽莎图像的相位谱结合,并做逆傅⾥叶变换,看起来是蒙娜丽莎
2.蒙娜丽莎图像的幅度谱和爱因斯坦图像的相位谱结合,并做逆傅⾥叶变换,看起来是爱因斯坦
我想这个例⼦就很好证明了图像的相位的重要性了。
最后划个重点:
图像的相位谱中,保留了图像的边缘以及整体结构的信息,
⽽错误的幅度谱看起来则像是噪声覆盖在原图上,但对并没有影响图像的内容本⾝。附两幅图像FFT得到幅度谱、相位谱,交换相位谱后做IFT的matlab代码:
%读⼊图像
X=imread('x.jpg');
matlab傅里叶变换的幅度谱和相位谱Y=imread('y.jpg');
%转为灰度图
x = rgb2gray(X);
y = rgb2gray(Y);
% 傅⾥叶变换
xf=fft2(double(x));
yf=fft2(double(y));
%取幅度和相位
xf1=abs(xf);
xf2=angle(xf);
yf1=abs(yf);
yf2=angle(yf);
%交换相位
xfr=xf1.*cos(yf2)+xf1.*sin(yf2).*1i;
yfr=yf1.*cos(xf2)+yf1.*sin(xf2).*1i;
%傅⾥叶逆变换
xr=abs(ifft2(xfr));
yr=abs(ifft2(yfr));
%转换成uint8类型
xf1=uint8(xf1);
xf2=uint8(xf2);
yf1=uint8(yf1);
yf2=uint8(yf2);
xr=uint8(xr);
yr=uint8(yr);
%显⽰
figure(1)
subplot(2,2,1);imshow(x);title('x 灰度图');
subplot(2,2,2);imshow(y);title('y 灰度图');
subplot(2,2,3);imshow(xr,[]);title('x 幅度谱与 y相位谱');
subplot(2,2,4);imshow(yr,[]);title('y 幅度谱与 x相位谱');
figure(2)
subplot(2,2,1);imshow(xf1,[]);title('x 幅度谱 ');
subplot(2,2,2);imshow(yf1,[]);title('y 幅度谱');
subplot(2,2,3);imshow(xf2,[]);title('x 相位谱');
subplot(2,2,4);imshow(yf2,[]);title('y相位谱');
部分参考⽂献:
D Ghiglia, M Pritt.Two Dimensional Phase Unwrapping: Theory, Algorithms and Software[M].
感谢这本书让我提升了英语阅读能⼒,还学会了经典的相位解包裹算法,如果研究相位解包裹,墙裂推荐~
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论