傅里叶变换的Matlab代码
傅里叶变换的Matlab代码:
img=imread(‘e:/4.jpg’); subplot(2,2,1),imshow(img); f=rgb2gray(img); subplot(2,2,2),imshow(f); %二维傅里叶变换 F=fft2(f); FS=fftshift(F); %频谱 S=log(1+abs(FS)); subplot(2,2,3);imshow(S,[]); %% 二维傅里叶逆变换 fr=real(ifft2(ifftshift(FS))); ret=im2uint8(mat2gray(fr)); subplot(2,2,4),imshow(ret);
所参考的程序:
[i,lcmp]=imread(‘f:/tank.bmp’);%=======读取图像 显示图像 imshow(i,lcmp); ii=im2double(i); %=====将图像矩阵类型转换为double(图像计算很多是不能用整型的) i1 = fft2(ii); %======傅里叶变换 i2 =fftshift(i1); %======将变换的频率图像四角移动到中心(原来良的部分在四角 现在移动中心,便于后面的处理ÿ
还没有评论,来说两句吧...