【Matlab学习日记】③ 常用滤波以及噪声分析方法(下)

文摘   科技   2024-10-14 08:00   山东  

关注+星标公众,不错过精彩内容


作者 | 量子君

微信公众号 | 极客工作室

【Matlab学习日记】专栏介绍

在这个专栏中,你可以找到大量与Matlab有关的知识和技能,包括基础语法、常用函数、绘图、数据分析和建模等方面的内容。此外,该专栏还包括一些与Matlab应用相关的内容,如simulink、图像处理、信号处理、机器学习等。

本章目录

  • 前言
  • 一、频域滤波器的构建和设计

    • 1.1 频域滤波的构建

    • 1.2 时域数据频谱分析

    • 1.3 构建带通滤波器(filterDesigner工具箱)

    • 1.4 提取系数,实现滤波器

    • 1.5 频域滤波处理

  • 二、常用的时域滤波

    • 2.1 幅值滤波

    • 2.2 中值滤波

    • 2.3 均值滤波

  • 三、卡尔曼滤波的构建和示例

    • 3.1 Kalman 滤波特点

    • 3.2 Kalman 一次滤波流程

    • 3.3 Kalman 滤波回路结构

    • 3.4 Kalman 滤波程序流程图

    • 3.5 Kalman 处理数据

  • 四、其他应用

    • 4.1 常见噪声

    • 4.2 各种滤波在信号处理过程中的表现

  • 总结



 前言

本文介绍常见的滤波算法的基础入门知识点。并以实际项目为出发点讲解常见滤波的作用和实现环节。

一、频域滤波器的构建和设计

1.1 频域滤波的构建

  • 超参数:

  1. 采样频率

  2. 通带、阻带截止频率

  3. 阶数(拟合)


  • 超参数的设置依据:

  1. 采样频率:依靠硬件设备

  2. 截止频率:频谱分析(特性未知)、经验值

  3. 阶数:自由设定、最小阶数拟合

  • 设计实现:


1.2 时域数据频谱分析

  • 频域:反映的加速度在每个频率能量强度。

  • 时域:反映的是加速度数据随时间在数值上发生的变化。


  • 时域数据:

原始数据:

放大后的细节:

  • 时域数据快速傅里叶变换:

由上图,我们感兴趣的频段为中间1~2Hz部分,基于此确定通带、阻带截止频率。

1.3 构建带通滤波器(filterDesigner工具箱)


1.4 提取系数,实现滤波器

  • 双线性Z变换法(IIR):

提取系数构成:分子 b、分母 a

  • 冲击响应不变法(FIR):

提取系数构成:分子 a


1.5 频域滤波处理

放大后的细节:


二、常用的时域滤波

2.1 幅值滤波


2.2 中值滤波


2.3 均值滤波

  1. 均值滤波:无窗口 + ①                   

  2. 加权均值滤波:无窗口 + ②                

  3. 滑动平均:滑动窗口 + ①/②


  • N值较大时:信号平滑度较高,但是灵敏度较低;N大平滑不灵敏

  • N值较小时:信号平滑度低,但灵敏度高。N小不滑但灵敏

  • 优点:适用于对一般具有随机干扰的信号进行滤波,数据在某一数值范围附近上下波动。

  • 缺点:不适用于对要求数据计算速度较快或测量速度较慢的实时系统。


  • 不同阶数的滑动平均对数据的影响:

  • 七阶滑动平均滤除随机噪声:

蓝色曲线为带通滤波处理后的部分数据,其中部分峰值和谷值的邻域存在随机误差,通过滑动平均滤波进行处理,得到处理后的红色曲线。
滑动平均滤波处理后存在线性相位延迟,需要对相位进行线性调整,绿色虚线为调整延迟后的滑动平均数据。

三、噪声分析及各种噪声的滤波选择

3.1 Kalman 滤波特点

Kalman滤波特点:

信息过程的足够精确的模型,是由白噪声所激发的线性、离散和有限维动态系统(可以是时变的);
每次测量信号都包含着附加的白噪声分量。


3.2 Kalman 一次滤波流程

  • Kalman 滤波启动值的获取:

测量噪声:

    由硬件相关,在获取曲柄的测量中误差时,将其处于静止状态,长时间采集数据,将均值近似为期望值,

将该段的中误差近似为测量噪声;(时不变模型)

模型噪声:

    表示测量模型预测结果与真实结果的偏差水平;设置为一个较小的值(假设模型精度高)

初始滤波估计协方差:

    因为初始值没有开始迭代,所以具有较高的可信度;因此初始值设定为一个较小的数值。


3.3 Kalman 滤波回路结构

左侧为滤波计算回路,右侧为增益计算回路。


3.4 Kalman 滤波程序流程图


3.5 Kalman 处理数据

蓝色曲线为带通滤波+滑动平均处理后的部分数据,通过卡尔曼滤波进行处理,得到处理后的红色曲线。
Kalman滤波会对数据产生相位偏移(非线性偏移)


四、其他应用

4.1 常见噪声

采集数据:

由上篇文章可知,上述采集到的数据包含目标数据、随机噪声、高频噪声、低频噪声。

目标数据:

随机噪声:

高频噪声:

低频噪声:


4.2 各种滤波在信号处理过程中的表现

采集数据:

带通滤波后:

绝对值滤波后:

低通滤波后:

滑动平均值滤波后:

Kalman滤波后:


总结

本文介绍常见的滤波算法的基础入门知识点。并以实际项目为出发点讲解常见滤波的作用和实现环节。






若觉得文章对你有帮助,随手点『好看』、转发分享,也是对我的支持
关注我的微信公众号回复“加群”按规则加入技术交流群,回复“1024”查看更多内容。
点击“阅读原文”查看更多分享

极客工作室
一个专注于嵌入式系统、智能硬件、AIoT的极客自媒体
 最新文章