一、理想低通滤波
%%理想低通滤波
function out=imidealflpf(I,freq)
% imidealflpf 函数 构造理想的频域低通滤波器
% I参数 输入的灰度图像
% freq 参数 低通滤波器的截止频率
% 返回值 out -指定的理想低通滤波器
[M,N]=size(I);
out = ones(M,N);
for i=1:M
for j=1:N
if (sqrt(((i-M/2)^2+(j-N/2)^2))>freq)
out(i,j)=0;
end
end
end
end
二、高斯低通滤波
%% 高斯低通滤波
function out=imgaussflpf(I,sigma)
%imgaussflpf函数 构造频域高斯低通滤波器
%I参数 输入的灰度图像
%sigma参数 高斯函数的sigma参数
[M,N]=size(I);
out=ones(M,N);
for i=1:M
for j=1:N
out(i,j)=exp((-(i-M/2)^2-(j-N/2)^2)/(2*sigma^2));
end
end
end
三、对灰度图像进行频域滤波
function out=imfreqfilt(I,ff)
%imfreqfilt 函数 对灰度图像进行频域滤波
%参数I 输入的空域图像
%参数ff 应用的与原图等大的频域滤镜
if (ndims(I)==3)&&(size(I,3)==3)%RGB图像
I=rgb2gray(I);
end
if (size(I)~=size(ff))
msg1=sprintf(‘%s:滤镜与原图像不等大,检查输入’,m