傅里叶变化频谱图及频域滤波
了解傅立叶变换在图像处理中的应用;掌握频率滤波的原理和特点;利用matlab 实现二维图像的傅里叶变换;实现图像的理想高/低通、高斯高/低通、布特沃斯高/低通滤波
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 158711 2015-11-13 12:32 输入图像lena.jpg
文件 572892 2013-07-14 20:43 输入图像moon.tif
目录 0 2018-12-03 23:34 输入图像
文件 5103414 2018-12-03 09:43 输出图像高斯高通.bmp
文件 5103414 2018-12-03 10:00 输出图像频域拉普拉斯增强.bmp
文件 5103414 2018-12-03 09:44 输出图像理想高通.bmp
文件 5103414 2018-12-03 15:35 输出图像理想低通.bmp
文件 5103414 2018-12-03 09:44 输出图像布特沃斯高通.bmp
文件 5103414 2018-12-03 15:35 输出图像布特沃斯低通.bmp
文件 5103414 2018-12-03 09:09 输出图像实验2二维傅里叶变换.bmp
文件 5103414 2018-12-03 09:18 输出图像实验2三维.bmp
文件 5103414 2018-12-03 09:00 输出图像实验1一维傅里叶变换.bmp
目录 0 2018-12-03 23:31 输出图像
文件 5103414 2018-12-03 15:34 输出图像高斯低通.bmp
文件 5103414 2018-12-03 09:56 输出图像频域高斯低通与空域高斯低通对比.bmp
文件 1379 2018-12-03 23:21 源程序Exp3_3.m
目录 0 2018-12-03 23:27 源程序
文件 1218 2018-12-03 23:17 源程序Bfilter.m
文件 1204 2018-12-03 23:19 源程序Bhighfilter.m
文件 1668 2018-12-03 23:15 源程序Exp1.m
文件 1315 2018-12-03 23:16 源程序Exp2.m
文件 1671 2018-12-03 23:26 源程序Exp2_3D.m
文件 1969 2018-12-03 23:20 源程序Exp3_1.m
文件 2012 2018-12-03 23:20 源程序Exp3_2.m
文件 572892 2013-07-14 20:43 源程序moon.tif
文件 1152 2018-12-03 23:22 源程序Exp4.m
文件 886 2018-12-03 23:18 源程序gauss_highpass.m
文件 878 2018-12-03 23:17 源程序gauss_lowpass.m
文件 302 2018-12-03 23:18 源程序gaussfiltbox.m
文件 1088 2018-12-03 23:19 源程序ideal_highpass.m
文件 943 2018-12-03 23:16 源程序ideal_lowpass1.m
............此处省略1个文件信息
function [image_out] = Bfilter(image_in D0 N)
% Butterworth滤波器,在频率域进行滤波
% 输入为需要进行滤波的灰度图像,Butterworth滤波器的截止频率D0,阶数N
% 输出为滤波之后的灰度图像
[row colu] = size(image_in);
P = 2 * row;
Q = 2 * colu;
fp = zeros(P Q);
%对图像填充0并且乘以(-1)^(x+y) 以移到变换中心
for i = 1 : row
for j = 1 : colu
fp(i j) = double(image_in(i j)) * (-1)^(i+j);
end
end
% 对填充后的图像进行傅里叶变换 到频域
F1 =fft2(fp); %不要用 fftshift
% 生成Butterworth滤波函数,中心在(m+1n+1)
Bw = zeros(P Q);
a = D0^(2 * N);%D0 截止频率, N 阶数
for u = 1 : P
for v = 1 : Q
temp = (u-(row+1.0))^2 + (v-(colu+1.0))^2;
Bw(u v) = 1 / (1 + (temp^N) / a);
end
end
%进行滤波
G = F1 .* Bw;
% 反傅里叶变换
gp = ifft2(G);
% 处理得到的图像
image_out = zeros(row colu ‘uint8‘);
gp = real(gp);% 取实部
g = zeros(row colu);
for i = 1 : row
for j = 1 : colu
g(i j) = gp(i j) * (-1)^(i+j);
%取消图像的乘数
end
end
mmax = max(g(:));
mmin = min(g(:));
range = mmax-mmin;
for i = 1 : row
for j = 1 : colu
image_out(ij) = uint8(255 * (g(i j)-mmin) / range); %重新量化到min max
end
end
end
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 158711 2015-11-13 12:32 输入图像lena.jpg
文件 572892 2013-07-14 20:43 输入图像moon.tif
目录 0 2018-12-03 23:34 输入图像
文件 5103414 2018-12-03 09:43 输出图像高斯高通.bmp
文件 5103414 2018-12-03 10:00 输出图像频域拉普拉斯增强.bmp
文件 5103414 2018-12-03 09:44 输出图像理想高通.bmp
文件 5103414 2018-12-03 15:35 输出图像理想低通.bmp
文件 5103414 2018-12-03 09:44 输出图像布特沃斯高通.bmp
文件 5103414 2018-12-03 15:35 输出图像布特沃斯低通.bmp
文件 5103414 2018-12-03 09:09 输出图像实验2二维傅里叶变换.bmp
文件 5103414 2018-12-03 09:18 输出图像实验2三维.bmp
文件 5103414 2018-12-03 09:00 输出图像实验1一维傅里叶变换.bmp
目录 0 2018-12-03 23:31 输出图像
文件 5103414 2018-12-03 15:34 输出图像高斯低通.bmp
文件 5103414 2018-12-03 09:56 输出图像频域高斯低通与空域高斯低通对比.bmp
文件 1379 2018-12-03 23:21 源程序Exp3_3.m
目录 0 2018-12-03 23:27 源程序
文件 1218 2018-12-03 23:17 源程序Bfilter.m
文件 1204 2018-12-03 23:19 源程序Bhighfilter.m
文件 1668 2018-12-03 23:15 源程序Exp1.m
文件 1315 2018-12-03 23:16 源程序Exp2.m
文件 1671 2018-12-03 23:26 源程序Exp2_3D.m
文件 1969 2018-12-03 23:20 源程序Exp3_1.m
文件 2012 2018-12-03 23:20 源程序Exp3_2.m
文件 572892 2013-07-14 20:43 源程序moon.tif
文件 1152 2018-12-03 23:22 源程序Exp4.m
文件 886 2018-12-03 23:18 源程序gauss_highpass.m
文件 878 2018-12-03 23:17 源程序gauss_lowpass.m
文件 302 2018-12-03 23:18 源程序gaussfiltbox.m
文件 1088 2018-12-03 23:19 源程序ideal_highpass.m
文件 943 2018-12-03 23:16 源程序ideal_lowpass1.m
............此处省略1个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)