巴特沃斯滤波器的MATLAB实现

简介

巴特沃斯滤波器是一种电子滤波器。巴特沃斯滤波器的特点是通带的频率响应曲线最平滑。这种滤波器最早是由英国工程师Stephen Butterworth在1930年发表在《英国无线电工程杂志》上的一篇论文中提出的。巴特沃兹滤波器的特点巴特沃兹滤波器的特点是通带内的频率响应曲线尽可能平坦,没有波动,而在阻带内逐渐下降到零。在对数振幅对角频率的波动图上,从某个边界角频率开始,振幅随着角频率的增大而逐渐减小,并趋于负无穷大。巴特沃斯低通滤波器用于平滑受噪声干扰的图像。

lyqmath的实例%

% DLUT数学科学学院,2008年

% BLOG: /lyqmath

clc全部清除;全部关闭;

I = im read(' rice . png ');

图;

支线剧情(2,2,1);imshow(一);标题(“原图”);

J1 = imnoise(I,' salt & amp辣椒’);%叠加椒盐噪声

支线剧情(2,2,2);imshow(j 1);标题(“嘈杂的图像”);

g = FFT 2(double(j 1));%傅立叶变换

g = FFT shift(g);%转换数据矩阵

[M,N]=大小(g);

nn = 2;%二阶巴特沃兹低通滤波器

d0 = 20

M = fix(M/2);

N = fix(N/2);

因为i = 1:M

对于j = 1:N

d = sqrt((i-m)^2+(j-n)^2);

h = 1/(1+0.414*(d/d0)^(2*nn));%计算低通滤波器传递函数

结果(I,j) = h*g(i,j);

T(i,j)= h;

结束

结束

result = ifftshift(结果);

J2 = ifft2(结果);

JBOY3乐队= uint8(雷亚尔(J2));

支线剧情(2,2,3);网眼(T);标题(“滤波器示意图”)

盒子打开;

%显示过滤后的图像。

支线剧情(2,2,4);imshow(JBOY3乐队);标题(“过滤结果”)结果