MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   [MATLAB图像处理] 关于fft2和ifft2 (https://www.labfans.com/bbs/showthread.php?t=8892)

danyanger 2009-06-09 13:32

关于fft2和ifft2
 
I = uint8(rand(5) * 255); %模拟一幅图像
Ift = fftshift(fft2(I));
l1 = abs(Ift); %获取幅值
r1 = angle(Ift); %获取相位值
l1(1, 1) = l1(2, 3); %对幅值进行修改
l1(3, 4) = l1(1, 4); %对幅值进行修改
l2 = l1 .* cos(r1); %重构幅值
r2 = l1 .* sin(r1); %重构相位值
I2ft = complex(l2, r2);
I2 = ifft2(ifftshift(I2ft))

上面是本人的一段测试代码,想测试对fft的幅值进行修改后进行ifft所得的结果,我希望I2也应该是一幅图像,但发现I2是复数,不知是我的方法有错误,还是原本就是这样的结果,请各位不吝赐教。


所有时间均为北京时间。现在的时间是 05:12

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.