FIR滤波器——DSP学习笔记三(包含一个滤波器设计的简明案例)

​​​​​​

  • 背景知识

    • FIR滤波器的特性与优点

      • 可精确地实现线性相位响应(Linear phase response),无相位失真;

      • 总是稳定的,所有极点都位于原点

    • 线性相位FIR滤波器的性质、类型及零点位置

      • 冲击响应满足:奇或偶数长度、奇或偶对称

        • 1型,奇数长度 + 偶对称

        • 2型,偶数长度 + 偶对称

        • 3型,奇数长度 + 奇对称

        • 4型,偶数长度 + 奇对称

      • 零点位置(总结:一个零点,他的都是,他的共轭,他的倒数共轭也都是零点

  • FIR滤波器的设计

    • 基于窗函数法的线性相位FIR滤波器设计

      • 其他固定窗

      • 窗函数法基本思想:对ℎ进行截短+移位,得到一个有限、长度、因果、线性相位的FIR滤波器。包含两个操作:

        • • 加窗截短:

        • 时间移位:

      • 矩形窗的应用及其分析

        • 例子:

        • 低通滤波器,高于这个的频率被滤除

        • 分析:使用矩形窗得到的简单截短滤波器的幅度响应呈现振动的现象,通常称为“吉布斯现象

          • 吉布斯现象的原因:矩形窗函数中0与1之间的陡峭下降沿

          • 当N 增大,主瓣宽度及旁瓣宽度都减小,但最大波纹高度保持不变

          • 如何消除? • 使用逐渐平滑减小到零的窗函数 • 减小旁瓣高度,代价是增大主瓣宽度 和过渡带宽度Δw

      • 不同窗函数的特性:

        • • 过渡带宽度 和波纹大小之间的折中 • 窗函数主瓣宽度决定了过渡带带宽,与窗类型、窗长有关 • 窗函数旁瓣高度决定了滤波器波纹,与窗类型有关,与窗长无关

        • 选择窗函数的标准:根据主板狂赌和过渡带要求选择滤波器长度;根据庞斑高度和波纹要求选择窗函数类型

    • FIR低通滤波器设计流程及案例

      • 基于固定窗函数的FIR低通滤波器设计流程

        • • 确定滤波器性能指标(过渡带宽度、波纹大小等)

        • • 根据所要求的旁瓣高度P d 或阻带衰减s d ,选择合适的窗类型

        • • 根据所要求的过渡带宽度Δ/ ,确定滤波器长度)

        • • 计算理想低通滤波器的冲激响应ℎX [ ]

        • • 加窗截短、右移,得到有限长因果低通FIR滤波器

      • 基于固定窗函数的FIR低通滤波器设计案例

    • 拓展:FIR高通、带通、带阻滤波器

    • 其他设计方法

      • 可变窗函数法:增加一个参数,用来控制波纹大小:• 道尔夫-切比雪夫Dolph-Chebyshev窗,凯泽Kaiser窗

      • • 最优化等波纹线性相位FIR滤波器设计

      • • 频率抽样法

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/829871.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

iframe父子页面通信

目录 一、 创建父页面和子页面 父页面(parent.html): 子页面(child.html): 二、 实现父子页面之间的通信 在父页面的 在子页面的 三、扩展:postMessage() 方法的语法: 一、 …

(学习日记)2024.05.03:UCOSIII第五十七节:User文件夹函数概览(uCOS-III->Source文件夹)第三部分

之前的章节都是针对某个或某些知识点进行的专项讲解,重点在功能和代码解释。 回到最初开始学μC/OS-III系统时,当时就定下了一个目标,不仅要读懂,还要读透,改造成更适合中国宝宝体质的使用方式。在学完野火的教程后,经过几经思考,最后决定自己锦上添花,再续上几章。 这…

【PyTorch】torch.gather() 用法

gather常被用于image做mask的操作中,对哪些地方进行赋值0/1 API: torch.gather — PyTorch 2.2 documentation torch.gather(input, dim, index, outNone) → Tensor gather()的意义: 顾名思义,聚集、集合:gather…

计算机网络组成—物理层

一、物理层基本概念 物理层解决如何在连接各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体。 1物理层接口特性 机械特性:定义物理连接的特性,规定物理连接时所采用的规格、接口形状、引线数目、引脚数量和排列情况电气特性&…

VS2019配合QT5.9开发IRayAT430相机SDK

环境配置 VS2019 QT5.9 编译器版本 MSVC2017_64添加系统环境变量(完毕后重启电脑) 从VS2019中下载Qt插件 从VS2019中添加单个编译组件 上述操作完成后用VS打开工程文件,工程文件地址 : C:\Users\86173\Desktop\IRCNETSDK_W…

python基础知识分享

1程序结构 1.1分支结构 单分支结构: 例如 if 条件表达式: 语句块 双分支结构: 例如 if 条件表达式: 语句块1 else: 语句块2 多分支路结构: 例如: if 条件表达式: if 条件表达式1: 语句块1 elif 条件表达式2: 语句块2 elif 条件表达式3: 语句块3 ....... else: …

Debezium系列之:Debezium技术专栏第300篇系列文章之打通Debezium实时采集Oracle数据库数据到Kafka集群的技术

Debezium系列之:Debezium技术专栏第300篇系列文章之打通Debezium实时采集Oracle数据库数据到Kafka集群的技术 一、需求描述二、部署Debezium集群和Oracle连接器三、安装Oracle数据库四、设置具有采集Oracle数据库数据权限的账号1.以系统管理员的身份连接到数据库实例2.创建表空…

数据分析:生存分析原理和应用实例

介绍 生存分析的目的是分析某个时间点的“生存概率”是多少。基于这样的研究目的,需要提供生存数据,它是一种由不同的开始时间和结束时间组成的事件-时间的数据,比如在癌症研究领域,研究手术到死亡的过程、治疗到疾病进展等等。 在开展生存分析前,需要了解什么是删失(c…

动手学大模型应用开发--Chapter 06构建个人知识助手

文章目录 前言一、学习目标二、学习知识点概要三、实验步骤 前言 本学习笔记为datawhale动手学大模型应用开发的第六章,学习链接为: https://datawhalechina.github.io/llm-universe/ 一、学习目标 基于LangChain和RAG部署本地大模型。 二、学习知识…

时间序列生成数据,TransformerGAN

简介:这个代码可以用于时间序列修复和生成。使用transformer提取单变量或者多变时间窗口的趋势分布情况。然后使用GAN生成分布类似的时间序列。 此外,还实现了基于prompt的数据生成,比如指定生成某个月份的数据、某半个月的数据、某一个星期的…

代码随想录35期Day27-Java(day26休息)

Day27题目 LeetCode39组合总和 核心思想&#xff1a;经典回溯 class Solution {int sum 0;//记录当前元素List<Integer> path new ArrayList<>();// 记录返回值List<List<Integer>> res new ArrayList<>();public List<List<Integer…

哈夫曼编码---一种无损数据压缩算法

哈夫曼编码是一种无损数据压缩算法&#xff0c;该算法在数据压缩&#xff0c;存储和网络传输等领域广泛引用&#xff0c;对互联网的发展也产生了深远的影响。 大家熟知的数据无损压缩软件&#xff0c;如WinRAR&#xff0c;gzip&#xff0c;bzip&#xff0c;lzw&#xff0c;7-z…

mac M2 配置item2 rzsz

背景 apple m 系列处理器安装的 homebrew 跟 intel 处理器略有不同&#xff0c;其中安装目录的区别&#xff1a; m 系列处理器安装目录为 /usr/local/bin/homebrew intel 处理器安装目录为 /opt/homebrew 问题1: 卡住 产生原因&#xff1a; m 系列使用 brew install lrzs…

linux驱动-CCF-1 provider 注册时钟

CCF: common clock frameword provider 注册时钟分析 1. 待注册 时钟数据 #define _REGISTER(f, s, ...) { .clk_register (bcm2835_clk_register)f, \.supported s, \.data __VA_ARGS__ } #define REGISTER_CLK(s, ...) _REGISTER(&bcm2835_register_clock, \s, …

Vscode——SSH连接不进去服务器的万能解决办法

一、查看当前版本VSCode的commit_id Help -> About -> Commit&#xff08;对应中文版本&#xff1a;帮助 -> 关于 -> 提交&#xff09; 会得到一串数字字母&#xff0c;我们简称 ID。 二、手动下载对应的VSCode包 浏览器输入&#xff1a;https://update.code.v…

手撕红黑树(kv模型模拟)

目录 前言 一、相关概念 二、性质介绍 红黑树平衡说明 三、红黑树模拟&#xff08;kv结构&#xff09; 1、红黑树节点 2、红黑树插入 2、特殊处理情况 声明&#xff1a; 情况一&#xff1a;cur为红&#xff0c;p为红&#xff0c;g为黑&#xff0c;u存在&#xff0c;且…

【MHA】MySQL高可用MHA介绍3-命令详解

目录 masterha_manager&#xff1a;运行 MHA Manager 的命令 通用参数 监控特定参数 故障转移特定参数 masterha_master_switch 手动故障转移 非交互式故障转移 计划&#xff08;在线&#xff09;主切换 masterha_check_status masterha_check_repl masterha_stop mas…

Spring Cloud学习笔记(Feign):配置类(未完成)

这是本人学习的总结&#xff0c;主要学习资料如下 - 马士兵教育 1、给Feign配置的方式1.1、通过Bean配置1.2、application.yaml配置 2、配置日志2.1、日志级别1.2、指定日志级别1.2.1、通过Bean配置1.2.2、application.yaml配置 3、Inteceptor配置 1、给Feign配置的方式 我们有…

视觉生成范式 VAR: Visual Auto Regressive

使 GPT 风格的自回归模型在图像生成首次超越扩散模型&#xff0c;并观察到与大语言模型相似的 Scaling Laws 缩放定律、Zero-shot Task Generalization 泛化能力 体验网站&#xff1a;https://var.vision/ 论文链接&#xff1a;https://arxiv.org/abs/2404.02905 开源代码&a…

牛客NC99 多叉树的直径【较难 深度优先 Java/Go/PHP】

题目 题目链接&#xff1a; https://www.nowcoder.com/practice/a77b4f3d84bf4a7891519ffee9376df3 思路 核心就是树的最大直径(globalMax)一定是以某一个node为root最长的两个path-to-leaf. 就是普通dfs的同时算路径长度。时间: O(n), DFS一次 空间: O(n)参考答案Java impo…