MATLAB图像处理_傅里叶变换


使用matlab中自带的fft等相关的函数进行操作。


代码如下:

clear;
clc;

img=imread('test.jpg');
img=rgb2gray(img);

f=fft2(img);        %傅里叶变换
f=fftshift(f);      %使图像对称
r=real(f);          %求图像频域实部
i=imag(f);          %求图像频域虚部
margin=log(abs(f));      %图像幅度谱,加log便于显示
phase=log(angle(f)*180/pi);     %图像相位谱
l=log(f);

subplot(2,2,1),imshow(img),title('源图像');
subplot(2,2,2),imshow(l,[]),title('频谱');
subplot(2,2,3),imshow(margin,[]),title('幅度谱');
subplot(2,2,4),imshow(phase,[]),title('相位谱');


你可能感兴趣的:(【,Image,Processing,】)