巴特沃斯滤波器在信号处理中应用

一、引言

    巴特沃斯滤波器(Butterworth Filter),是滤波器的一种,其主要特点是通频带的频率响应曲线最平滑。这种滤波器最先由英国工程师斯蒂芬·巴特沃斯(StephenButterworth)在1930年发表在英国《无线电工程》期刊的一篇论文中提出的,也被称作最大平坦滤波器,在于其通频带内的频率响应曲线最大限度平坦,而在阻频带则逐渐下降为零。

        一维信号巴特沃斯滤波器的公式由以下公式定义:

       H(w)= 1/ (w + (w/Wc)^2N)^0.5

       其中,H(w)是滤波器的传递函数,w是频域变量,Wc是截止频率,N是滤波器的阶数。

二维信号巴特沃斯滤波器的公式由以下公式定义:

      H(u,v) =(1./(1 + (D/Wc).^(2*n)).^0.5  

      D =(u.^2 + v.^2).^0.5;    其中,u和v是频率。

       其中,H(u,v)是滤波器的传递函数,u、v是频域变量,Wc是截止频率,n是滤波器的阶数。

       巴特沃斯滤波器有多种类型,主要包括低通滤波器、高通滤波器、带通滤波器和带阻滤波器。下面分别给出一个采用低通巴特沃斯滤波器对一维原始信号和二维图像进行处理的实例。

二、巴特沃斯滤波器的MATLAB应用

1.采用低通巴特沃斯滤波器对一维原始信号处理实例。

clear all;
close all;
clc;
% 参数设置  
fs = 1000;        % 采样频率 (Hz)  
fc = 100;         % 截止频率 (Hz)  
n = 4;            % 滤波器阶数  
 
 
Wn = fc / (fs/2);  % 归一化截止频率
 
% 设计低通滤波器  
[b, a] = butter(n, Wn, 'low');  %用于根据 ftype 的值和 Wn 的元素数目,设计低通巴特沃斯滤波器。

% 频率响应  
freqz(b, a);  
title('低通巴特沃斯滤波器的频率响应'); 
% 应用滤波器(假设有一个信号 x)  
x = randn(1, 1000);  % 随机信号作为示例  
y = filter(b, a, x);  
 
% 绘制信号  
figure;  
subplot(2, 1, 1);  
plot(x);  
title('原始信号');  
subplot(2, 1, 2);  
plot(y);  
title('巴特沃斯滤波器滤波后的信号');

2.采用低通巴特沃斯滤波器对二维图像进行处理的实例。

clear all;
close all;
clc;
imageSize = [256, 256];  % 设置图像大小  
randomImage = rand(imageSize);% 生成随机二维图像信号  
figure,imshow(randomImage, []),title('原始随机图像');  ;    % 显示原始图像  
colormap(gray);  
% 创建高通滤波器  
% 定义频率空间的范围  
[u, v] = meshgrid(-floor(imageSize(1) / 2) : floor(imageSize(1) / 2) - 1, -floor(imageSize(2) / 2) : floor(imageSize(2) / 2) - 1);  
D = sqrt(u.^2 + v.^2);  % 计算距离频率中心的距离  
D0 = 30; % 可以调整这个值来改变滤波器的效果  
n=5;
% 巴特沃斯滤波器的频率响应函数  
  H = sqrt(1./(1 + (D/D0).^(2*n)));  
figure;  
surf(u, v, H);  
shading interp; % 插值着色  
zlabel('H(u, v)');  
colorbar;  
% 设置视角  
view(3);  
axis tight;
F = fftshift(fft2(randomImage)); % 将滤波器应用到频率域   
G = F .* H;  
filteredImage = ifft2(ifftshift(G));  % 逆傅里叶变换得到滤波后的图像  
figure,imshow(real(filteredImage), []),title('高通滤波后的图像');   % 显示滤波后的图像   
colormap(gray);

三、主要运行结果

1.采用低通巴特沃斯滤波器对一维原始信号处理实例。

2f65ae616b764f4cb0fb847e4775ab44.png

c0b3b79943b64f8bb5ccf2d637568f24.png

2.采用低通巴特沃斯滤波器对二维图像进行处理的实例。

5082a3cb4b864309a2c5d17b384bcc31.pngb0d7fb876050494695fbb17eeb9d0ff8.png

0445af2cafc141509513db02774e123d.png

       如果你觉得本文对大家学习和研究有所帮助,请关注、点赞和转发。感谢大家的支持!

      

    

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值