低通滤波-matlab低通滤波程序

article/2025/10/22 18:17:58

本例程展示了信号处理中低通滤波的作用,首先生成一个高斯白噪声,然后对其进行低通滤波。低通滤波器的截止频率和Q值可以自己设定,得到低通滤波器的传输函数后,在经过双线性变换法得到其单位脉冲响应。滤波后对原始信号的频谱和滤波后的信号的频谱进行了对比。

%% 低通滤波器演示程序
%% 生成白噪声信号
clc;clear all; close all;
N = 1000; %采样点数
fs = N;   %采样频率
fre_base = -N/2:N/2-1;
a = randn(N,1); %生成符合高斯分布的随机噪声
F = fftshift((fft(a)))*2/N;  %对其进行快速傅里叶变换
%% 生成低通滤波器
cut_off_freq = 50;          
Q = 0.625;                   
plot_enable_L = 1;            
[Hs, H_z] = produce_LPF(cut_off_freq, Q, fs, plot_enable_L);  
%% 进行低通滤波
filterd_signal = filter(H_z.num{:}, H_z.den{:}, a);    
filter_sig_f = fftshift(fft(filterd_signal))*2/N;
%% 绘图
figure;
subplot(2,1,1); %绘制子图
plot(fre_base,abs(F)); %绘制频率图
xlabel('Hz');
title('原始信号频谱图');
subplot(2,1,2); %绘制子图
plot(fre_base,abs(filter_sig_f)); %绘制频率图
xlabel('Hz');
title('低通滤波后信号频谱图');

产生低通滤波器的子函数代码如下:

function [Hs, H_z] = produce_LPF(cut_off_freq, Q, fs, plot_enable_L)
%% 构造低通滤波器w0 = 2*pi*cut_off_freq;					% 滤波器截止频率对应的角频率A=1; B=w0/Q; C=w0^2;                    % 传递函数构造因子numerator = C;                          % 传递函数的分子的矩阵表示denominator = [A B C];                  % 传递函数的分母的矩阵表示disp('二阶低通滤波器的传递函数');Hs = tf(numerator, denominator)         % 构造模拟低通滤波器传递函数H_z = c2d(Hs, 1/fs, 'tustin');          % 将滤波器的脉冲响应用双线性变换法离散化%% 绘制图形     if plot_enable_L == 1%%计算坐标,画模拟滤波器的频率特性w = logspace(1,6);                        % 产生10^1到10^4次的对数坐标hs = freqs(numerator,denominator,w);      % 滤波器的幅频、相频特性曲线mag = abs(hs);          % 取幅值 phase = angle(hs);      % 取相角f = w/(2*pi);                           % 将横坐标的单位由rad变为Hz   phase = phase*180/pi;                   % 将纵坐标的单位变为度。figure; semilogx(f, mag); grid on    xlabel('频率(Hz)'); ylabel('增益'); title('滤波器的幅频特性曲线');figure; semilogx(f, phase); grid on; xlabel('频率(Hz)'); ylabel('相位(°)'); title('滤波器的相频特性曲线');figure; impulse(Hs); grid on                    xlabel('时间'); ylabel('幅度'); title('模拟滤波器脉冲响应');figure; impz(H_z.num{:}, H_z.den{:}); grid on;     %画双线性变换后的数字滤波器的脉冲响应 xlabel('点数'); ylabel('幅度'); title('数字滤波器脉冲响应');endend

在这里插入图片描述

图1. 低通滤波器的幅频特性曲线

在这里插入图片描述

图2. 原始信号及低通滤波后的信号频谱图
由上图我们可以知道,原始信号的频谱弥漫在整个频率轴上,经过低通滤波后的信号的频谱只剩下低频的通带内,高频的分量被抑制掉了。这就是低通滤波器的作用。

http://chatgpt.dhexx.cn/article/HOU5FDFv.shtml

相关文章

模拟和数字低通滤波器的MATLAB实现

转自:http://blog.sina.com.cn/s/blog_79ecf6980100vcrf.html 低通滤波器参数:Fs8000,fp2500,fs3500,Rp1dB,As30dB,其他滤波器可以通过与低通之间的映射关系实现。 %%模拟滤波器 %巴特沃斯——…

matlab低通滤波

低通滤波器的功能是让低频率通过而滤掉或衰减高频,其作用是过滤掉包含在高频中的噪声。所以低通滤波的效果是图像去噪声平滑增强,但同时也抑制了图像的边界,造成图像不同程度上的模糊。 大于大小为MN的图像,频率点(u&…

基于MATLAB的filter的使用,低通、带通和高通滤波器设计

1、目的 学习MATLAB的filter函数的使用,通过设计低通、带通和高通滤波器对其进行仿真 2、用到的主要函数和工具 MATLAB、FDATOOL、filter、fft 3、设计 信号的产生 %% Parameter Interface Frequence0 60; %单位:Hz Frequenc…

Matlab中的滤波器

在matlab中我们需要生成滤波器时,可以使用matlab中自带的工具。 在matlab命令窗口中输入filterDesigner,出现下列窗口。 在这里根据需要设计自己所需要的滤波器即可。 设计完滤波器之后如果我们想要以函数的方式使用我们的滤波器,那么我们可…

【DSP教程】第36章 FIR滤波器的Matlab设计(含低通,高通,带通和带阻)

完整版教程下载地址:http://www.armbbs.cn/forum.php?modviewthread&tid94547 第36章 FIR滤波器的Matlab设计(含低通,高通,带通和带阻) 本章节讲解FIR滤波器的Matlab设计。主要是函数fir1和fir2的使用。 目录 36.1 窗函数 36…

1.巴特沃斯模拟滤波器(低通,高通,带通,带阻)设计-MATLAB实现

本文是模拟滤波器设计,如果需要了解数字滤波器的内容,可以按顺序看我写的另外两篇博客,如下: 2.MATLAB实现无限脉冲响应数字滤波器(IIR) 3.MATLAB实现有限脉冲响应数字滤波器(FIR)…

matlab设计模拟带通滤波器

简单记录下在matlab上如何设计出模拟的带通滤波器,包括:巴特沃斯滤波器、切比雪夫I型滤波器、切比雪夫II型滤波器、椭圆型滤波器。 代码如下: %设计带通滤波器 %巴特沃斯、切比雪夫I型、切比雪夫II型、椭圆型滤波器clear all;%wp和ws分别是通…

学习如何在matlab用带通滤波器进行滤波

如何在matlab用带通滤波器进行滤波? 主要内容是在知乎上看到的一篇文章 链接: https://zhuanlan.zhihu.com/p/152647067?from_voters_pagetrue.可以直接看这篇文章。 以带通滤波器——巴特沃斯滤波器为例 matlab给出的代码如下:[n,Wn] buttord(Wp,W…

matlab设计低通滤波器

matlab设计低通滤波器 文章目录 matlab设计低通滤波器 前言一、什么是滤波器?二、滤波器的技术指标三、滤波器的分类四、巴特沃斯低通滤波器设计1.输入信号设置2.设计滤波器3.滤波器输出信号 五、采用ADI公司的滤波器向导设计滤波器 前言 例如:随着人工…

matlab实现低通、高通、带通、带阻滤波

MATLAB滤波常用函数 模拟滤波器阶数选择函数 buttord 功能:计算butterworth模拟滤波器的阶数 调用格式: [n,Wn]buttord(Wp,Ws,Rp,Rs,s); % 参数中的n是求出模拟滤波器最小的阶数,Wn是等效低通滤波器的截止频率;Wp和Ws分别是通…

matlab制作数字滤波器(带通滤波器)

一、目的 使用matlab中自带的工具fdatool制作带通滤波器,对数据进行滤波。 二、过程 如图,使用该工具制作了一个带通滤波器,频率为130-180Hz,使用汉明窗截短,滤波器的阶数为250。 滤波器的冲击响应如下图 将生成的滤…

matlab实现带通滤波

以带通滤波器——巴特沃斯滤波器为例 matlab给出的代码如下:[n,Wn] buttord(Wp,Ws,Rp,Rs) 首先要先理解一个带通滤波器的幅频特性图中,分为通带、阻带、过渡带三大部分。 通带截止频率和阻带截止频率对这三部分进行划分,二者之间的部分即…

PTAM算法流程介绍

相关工作:1、摄像机校正 2、特征提取(FAST角点特征、扭曲图像的直线特征优化) 3、极线几何与极线搜索 4、RANSAC(随机采样一致)及N点算法(主要围绕5点算法) 5、Bundle Adjustment(光…

智能优化算法、智能控制算法、多目标优化、MPPT、无功优化

一、主题 matlab,python等智能优化算法、智能控制算法、多目标优化、MPPT、无功优化、机器学习类程序,可提供指导。 二、主要领域 开关电源、最大功率点跟踪(恒电压法、电导增量法、爬山法、智能算法等)、并网逆变器控制、多目…

【图】普利姆算法(prim算法)基本思想

一、prim算法基本思想: 假设G=(V,E)是连通的,TE是G上最小生成树中边的集合。算法从U={u0}(u0∈V)、TE={}开始。重复执行下列操作: 在所有u∈U,v∈V&#xf…

MP算法与OMP算法讲解一

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接: https://blog.csdn.net/ice110956/article/details/18403789 稀疏编码的一般最优化公式为: 其中的零范数为非…

MP算法和OMP算法介绍

正交匹配追踪算法是90年代初提出来的,主要目的是将信号在完备的字典库上进行稀疏分解。 1. 信号的稀疏表示(sparse representation of signals) 预设一个过完备字典矩阵,矩阵每列表示一种原型信号的原子。可将一个信号y表示成这些原子的稀疏线性组合。即 y = Dx ,或者…

单相/三相光伏发电并网/离网simlink仿真(MPPT)或是大功率VSC 最大功率点追踪算法(MPPT)仿真模型

单相/三相光伏发电并网/离网simlink仿真(MPPT)或是大功率VSC 最大功率点追踪算法(MPPT)仿真模型, 有基于扰动观察法(P&O),恒压算法,电导增量法,变步长扰动…

光伏逆变simlink仿真(MPPT) 最大功率点追踪算法(MPPT)仿真模型,本设计基于扰动观察法

光伏逆变simlink仿真(MPPT) 最大功率点追踪算法(MPPT)仿真模型,本设计基于扰动观察法(P&O)最大功率点跟踪算法追踪光伏电池的发电曲线,实现最大功率点追踪输出的仿真模型。 目前…

Matlab|基于粒子群优化算法及鲁棒MPPT控制器提高光伏并网的效率

📋📋📋本文目录如下:⛳️⛳️⛳️ 目录 1 光伏特性 2 动机 3 基于粒子群优化的MPPT算法 4 运行结果 5 结论 6 Simulink&Matlab代码实现 1 光伏特性 光伏电池特性是非线性的,其输出功率随辐照度和温度的变化而变化。…