关注+星标公众号,不错过精彩内容
作者 | 量子君
微信公众号 | 极客工作室
【Matlab学习日记】专栏目录
第一章 ① Sinmulink自动代码生成教程
第二章 ② 常用滤波以及噪声分析方法(上)
文章目录
- 前言
- 一、使用滤波的目的
- 二、常见的几种噪声和表现形式
- 2.1 几种常见的噪声及表现形式
- 2.2 低频噪声表现形式
- 2.3 高频噪声表现形式
- 2.4 加性噪声表现形式
- 2.5 系数噪声表现形式
- 三、噪声分析及各种噪声的滤波选择
- 3.1 噪声分析方法
- 3.2 噪声表现形式分析
- 3.3 构建滤波的流程
- 3.4 实际数据滤波分析
- 总结
前言
在这个专栏中,你可以找到大量有关C语言和算法的知识内容。可以学习到C语言的基础知识和语法规则,了解如何使用指针、结构体等语言特性进行编程。同时,你还可以了解到C语言的高级编程技巧,如多线程编程、内存管理等。深入学习计算机科学中的核心知识,提高编程能力和实践能力。
本文介绍常见的滤波算法的基础入门知识点。并以实际项目为出发点讲解常用滤波和数据中噪声分析方法。
一、使用滤波的目的
我们在采集数据时,我们希望得到的数据光滑,看起来舒服,就像下图:噪声少、信噪比高、质量好的数据;
然而,我们采集到的实际数据很有可能是这样:噪声多、信噪比低、质量差的数据;
虽然我们不知道评判数据好坏的标准,但从直观感觉上,上面这组是要好于下面这组的。这两组数据之间就需要设计一组甚至多组滤波器来处理。所以,使用滤波器的目的就是把质量差的数据处理成质量好的数据–也叫做去噪或者去污染。
二、常见的几种噪声和表现形式
2.1 几种常见的噪声及表现形式
从上一节中,我们了解到,滤波的目的是剔除数据中的噪声,那么得到一组数据,是否就可以马上利用滤波进行去噪呢?答案是:不!
噪声种类多种多样,每种噪声需要特定的滤波进行剔除分离,所以在搭建滤波器之前,先要对系统的噪声系统进行分析。滤波器构建,噪声分析先行。
常见的噪声可以从频率特性和噪声作用方式两个方面来理解:
- 频率特性:
低频噪声:通常是指频率较低的噪声,可能源于电源干扰、机械振动等,常见于50 Hz以下的频段。
高频噪声:指频率较高的噪声,可能包括电子元件自振、射频干扰等,通常在kHz甚至MHz以上范围内。 - 作用方式:
加性噪声:是指这类噪声直接加在信号上,不随信号的内容而变化。加性噪声的一个典型例子是高斯白噪声,它是一种均匀影响整个频谱的噪声。加性噪声又分为随机噪声和基线噪声。其中,基线噪声又分为定常噪声和时变噪声。
系数噪声:通常与信号的幅度或相位相关,可能会随着信号幅度改变,通常出现在倍乘或相干检测等过程中。其中,系数噪声也分为定常噪声和时变噪声。
在实际应用中,低频和高频噪声可以都是加性噪声的一种特例,因为它们都是独立于信号本身叠加在其上的。此外,低频噪声和高频噪声还可以对系统的不同部分造成不同类型的干扰,因此常需要不同的滤波手段来处理。而系数噪声则更复杂,因为它涉及信号的变化特性,并且可能需要通过先进的估计算法来校正其对信号的影响。
综上:采集数据 = 系数噪声 * 真实数据 + 加性噪声 + 其他噪声 。
2.2 低频噪声表现形式
原始数据:
低频噪声:
被低频噪声污染:
2.3 高频噪声表现形式
原始数据:
高频噪声:
被高频噪声污染:
2.4 加性噪声表现形式
原始数据:
线性噪声:
被线性噪声污染:
多项式噪声:
被多项式噪声污染:
随机噪声:
被随机噪声污染:
2.5 系数噪声表现形式
原始数据:
被定常系数噪声K污染:
被时变系数噪声K(t)污染:
三、噪声分析及各种噪声的滤波选择
3.1 噪声分析方法
在对系统的噪声进行分析时,我们只会采集到带有噪声的数据,而不知道无噪声的数据是什么样的。要对系统在多个状态下的数据分别进行分析。
比较常用的状态:
- 静息状态:理论上,数值变化不大,可以基于此做基线噪声和随机噪声的分析;
- 稳定工作状态:系统输出的数值频率变化不大,可以基于此做频率噪声分析。
静息状态噪声分析流程:
解决方法:
- 根据拟合函数修正基线;
- 时域滤波去随机噪声。
稳定状态噪声分析流程:
解决方法:
低通频域滤波、高通频域滤波、带通频域滤波、带阻频域滤波。
3.2 噪声表现形式分析
信号处理分析示例(以加速度数据为例):
原始数据:
放大后的细节:
先从数据的表现形式上,分析可能存在的噪声。通过上面对噪声的认识,显然随机噪声和高频噪声可能性比较大,低频噪声和基线噪声可能性比较小。
3.3 构建滤波的流程
目的:解算加速度
数据:加速度数据
特征:频率特征
可能存在的噪声:
①高频噪声
②随机噪声
可能用的滤波:
①阻带截止频率为4Hz的低通滤波、
②滑动平均或Kalman等时域滤波
构建滤波的流程:
3.4 实际数据滤波分析
低通滤波处理前后对比,处理前:
低通滤波处理后:
滑动平均处理:
卡尔曼滤波也能达到类似的效果:
总结
本文介绍常见的滤波算法的基础入门知识点。并以实际项目为出发点讲解常用滤波和数据中噪声分析方法。
关注公众号回复“加群”按规则加入技术交流群,回复“1024”查看更多内容。