【Matlab】如何使用Filter Design设计低通、高通、带阻滤波器

这篇具有很好参考价值的文章主要介绍了【Matlab】如何使用Filter Design设计低通、高通、带阻滤波器。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

如何使用Filter Design设计低通、高通、带阻数字滤波器。

文章目录

前言

一、低通滤波器

二、高通滤波器

三、带阻滤波器



前言

使用Matlab自带的Filter Design APP可以方便、快捷地设计各种FIR/IIR数字滤波器,并且能输出数字滤波器的阶数、幅度响应、相位响应等。


使用一个由10Hz,20Hz,30Hz的正弦波信号叠加的信号作为样本。

一、低通滤波器

       打开Filter Design,想要设计一个低通滤波器,滤出低于20Hz频率的信号,如下设计参数后,点击【Desigin Filter】后可以查看到设计的滤波器的幅度响应。点击【File】-【Save Session As】保存设计好的Fda格式的文件,里面存储滤波器的参数。

【Matlab】如何使用Filter Design设计低通、高通、带阻滤波器

clc
clear all
fs = 100;
N = 1000;
n = 0:N-1;
t = n/fs;
f = n*fs/N;

Y = sin(2*pi*10*t) + 3*sin(2*pi*20*t) + 5*sin(2*pi*30*t);
importfile('...\LowPass20.fda');%此处需要修改fda文件路径
Numerator = s.current_filt.Numerator;
Y_filter = filter(Numerator,1,Y);

mag_Y = abs(fft(Y));
mag_Y_filter = abs(fft(Y_filter));
figure
subplot(221)
plot(t,Y)
subplot(222)
plot(f,mag_Y)
subplot(223)
plot(t,Y_filter)
subplot(224)
plot(f,mag_Y_filter)

 左侧是滤波前后的信号在时域上的显示,右侧是频谱图。可以看出,20和30Hz的信号成分被滤除了。

 【Matlab】如何使用Filter Design设计低通、高通、带阻滤波器

二、高通滤波器

同上文所说低通滤波器,需要根据实际需要设计滤波器参数。

三、带阻滤波器

需要注意的是,带阻滤波器与低通、高通滤波器的设计后的数据结构不一样,代码中需要修改。需要把原来的filter函数更改成sosfilt。

并且,滤波器的Fpass1和Fstop1以及Fpass2和Fstop2之间需要留足够的过渡带,否则设计出的滤波器阶数会很高,增加过多的计算成本,需要结合实际需要合理选择。

【Matlab】如何使用Filter Design设计低通、高通、带阻滤波器

clc
clear all
fs = 100;
N = 1000;
n = 0:N-1;
t = n/fs;
f = n*fs/N;

Y = sin(2*pi*10*t) + 3*sin(2*pi*20*t) + 5*sin(2*pi*30*t);
importfile('...\BandStop20Hz.fda');
sos = s.current_filt.sosMatrix;
Y_filter = sosfilt(sos,Y);

mag_Y = abs(fft(Y));
mag_Y_filter = abs(fft(Y_filter));
figure
subplot(221)
plot(t,Y)
subplot(222)
plot(f,mag_Y)
subplot(223)
plot(t,Y_filter)
subplot(224)
plot(f,mag_Y_filter)

【Matlab】如何使用Filter Design设计低通、高通、带阻滤波器文章来源地址https://www.toymoban.com/news/detail-504719.html


到了这里,关于【Matlab】如何使用Filter Design设计低通、高通、带阻滤波器的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用C++设计滤波器(低通滤波器,高通滤波器,带通滤波器)

    以下是一个使用C++语言编写的基本低通滤波器的示例代码,它可以对输入信号进行滤波以降低高频成分: 在这个示例中,我们使用一个一阶滤波器来实现低通滤波器。该滤波器具有一个截止频率,所有高于该频率的信号成分都会被过滤掉。在构造函数中,我们根据采样率和截

    2024年02月11日
    浏览(41)
  • matlab实现图像频域处理(低通滤波、高通滤波、同态滤波)

            频域滤波是一种图像处理技术,可以通过在频域中增加或减弱某些频率分量,从而实现图像去噪、锐化、平滑等功能。常见的频域滤波包括频域低通滤波、频域高通滤波和频域同态滤波。            在使用这些滤波器进行频域处理时,通常需要选择合适的参

    2024年02月12日
    浏览(39)
  • OpenCV(图像处理)-基于python-滤波器(低通、高通滤波器的使用方法)

    低通滤波 :低通滤波可以去除图像的噪音或平滑图像。 高通滤波 :可以帮助查找图像的边缘。 噪音 :即对一幅图像的产生负面效果,过暗或过亮的部分,一幅图像中,低于或高于某个像素点的值,都可以认为是噪音。 卷积核 :即用来滤波的矩阵,卷积核一般为奇数,如

    2024年02月09日
    浏览(66)
  • OpenCV(图像处理)-基于Oython-滤波器(低通、高通滤波器的使用方法)

    低通滤波 :低通滤波可以去除图像的噪音或平滑图像。 高通滤波 :可以帮助查找图像的边缘。 噪音 :即对一幅图像的产生负面效果,过暗或过亮的部分,一幅图像中,低于或高于某个像素点的值,都可以认为是噪音。 卷积核 :即用来滤波的矩阵,卷积核一般为奇数,如

    2024年02月09日
    浏览(55)
  • 高通滤波器,低通滤波器

    1.高通滤波器是根据像素与邻近像素的亮度差值来提升该像素的亮度。   确实容易看出,第三种效果最好。 2. 使用medianBlur()作为模糊函数,它对去除数字化的视频噪声非常有效。  从BGR色彩空间转灰度色彩空间   使用Laplacian()作为边缘检测函数,它会产生明显的边缘线条 

    2024年02月14日
    浏览(38)
  • 高通滤波和低通滤波理性到感性分析

    物理意义: 从频率角度,高通滤掉低频信息,低通滤掉高频信息 从采样点看,低通使样点前后变化更平缓,也即增大低频,降低高频 总体说明 本质是对当前维度的样点值,进行平滑,去除相关高低频率的信息 时域越平缓,对应的低频信息越多;时域越变化,对应的高频信

    2024年02月06日
    浏览(50)
  • 传感数据分析——高通滤波与低通滤波

    对于传感信号而言,我们可以提取其中的高频信息和低频信息,低频信息往往是信号的趋势,高频信息往往是一些突变或异常的信号,根据实际需求分离信号中的高低频特征具有实际意义。本文将使用scipy库中的signal模块实现高低通滤波器的设计,并采用计算周期特征,以下

    2024年01月20日
    浏览(49)
  • 第三章 图像的低通与高通滤波

    前面讲解了一些图像的基本理论以及操作,这一张将聚焦与图像的滤波操作。 解释: 图像卷积是一种在图像处理中广泛使用的操作。其基本思想是在图像的每个像素点上,以该点为中心选择一个固定大小的滤波器模板(通常是一个矩阵),并将该滤波器与该像素点及其相邻

    2024年02月05日
    浏览(40)
  • 图像处理之高通滤波器与低通滤波器

    目录 高频与低频区分: 高通滤波器: 1.傅里叶变换: 低通滤波器: 总结:         在了解图像滤波器之前,先谈一下如何区分图像的高频信息和低频信息,所谓高频就是该像素点与周围像素差异较大,常见于一副图像的边缘细节和噪声等;而低频就是该像素点与周围像素

    2023年04月09日
    浏览(49)
  • matalb 图像处理 低通滤波和高通滤波 (理想,巴特沃斯,高斯 含代码)

    1.低通滤波 主要分为理想低通滤波,巴特沃斯低通滤波,高斯低通滤波 理想低通滤波: 其中:对于大小为M*N的图像,频率点(u,v)与频域中心的距离为D(u,v),其表达式为: 下列的D(u,v)都相同 巴特沃斯低通滤波: 高斯低通滤波: 2.高通滤波 理想高通滤波: 巴特沃斯高通滤波

    2024年02月08日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包