对一幅灰度图像:(1)计算并画出此图像的中心化频率谱
(2)分别用高斯低通和高斯高通滤波器对图像进行频域处理,并对结果进行分析
(3)用频域拉普拉斯算子对此图像进行锐化处理,并对结果进行分析
(1)程序clear;clc;A=imread('lena
jpg','jpg');B=rgb2gray(A);figure;subplot(2,2,1);imshow(B);title('原图像');B_d=double(B);[m,n]=size(B);%fft2函数实现ifismatrix(B_d)%ismatrix:确定输入的是否为矩阵ifnargin==1%nargin用来判断输入变量的个数f=fftn(B_d);%fftn:N维离散傅里叶变换elsef=fftn(B_d,[mn]);endelseifnargin==1f=fft(fft(B_d,[],2),[],1);elsef=fft(fft(B_d,n,2),m,1);endendC3=log(1+abs(f));subplot(2,2,2);imshow(C3,[]);title('原图像频谱');%计算并画出此图像的中心化频率谱[m,n]=size(B);fori=1:mforj=1:nC1(i,j)=((-1)^(i+j))*(B_d(i,j));endendC2=log(1+abs(fft2(C1)));C4=fftshift(log(1+abs(fft2(B_d))));subplot(2,2,3);imshow(C2,[]);title('编写函数实现频谱中心化')subplot(2,2,4);imshow(C4,[])title('matlab函数实现频谱中心化')%分别用低通滤波和高通滤波对此图像进行频域处理C5=fftshift(fft2(B_d));P1=round(m/2);Q1=round(n/