当前位置:文档之家› 常用数字滤波算法

常用数字滤波算法


n=2 设滤波器窗口的宽度为n=2k+1,离散时间信号x (i)的长度为N,(i=1,2,…,N;N>>n), , 则当窗口在信号序列上滑动时, 则当窗口在信号序列上滑动时 , 一维中值滤波 器的输出: 器的输出: med[x ( i ) ]=x(k) 表示窗口 2k+1 内排序的第 k 表示窗口2 个值,即排序后的中间值。 个值,即排序后的中间值。
2.滑动平均滤波法
对于采样速度较慢或要求数据更新率 较高的实时系统, 较高的实时系统,算术平均滤法无法 使用的。 使用的。 滑动平均滤波法把N 滑动平均滤波法把N个测量数据看成一 个队列,队列的长度固定为N,每进行 个队列,队列的长度固定为N 一次新的采样,把测量结果放入队尾, 一次新的采样,把测量结果放入队尾, 而去掉原来队首的一个数据, 而去掉原来队首的一个数据,这样在 队列中始终有N 最新”的数据。 队列中始终有N个“最新”的数据。

(1).确定当前数据有效性的判别准则 ).确定当前数据有效性的判别准则
一个序列的中值对奇异数据的灵敏度远 无小于序列的平均值, 无小于序列的平均值 , 用中值构造一个 尺度序列, 中值为Z 尺度序列,设{ x i (k) }中值为Z,则
给出了每个数据点偏离参照值的尺度 {d(k)}的中值为 的中值为D 著名的统计学家FR FR. 令{d(k)}的中值为D,著名的统计学家FR.Hampel 提出并证明了中值数绝对偏差MAD MAD= 4826*D *D, 提出并证明了中值数绝对偏差 MAD = 1.4826*D , MAD可以代替标准偏差 可以代替标准偏差σ MAD可以代替标准偏差σ。对3σ法则的这一修正 有时称为“Hampel标识符 标识符” 有时称为“Hampel标识符”。
N −1
按FIR滤波设计 确定系数
三、复合滤波法
在实际应用中, 在实际应用中,有时既要消除大幅度的脉冲 干扰,有要做数据平滑。 干扰,有要做数据平滑。因此常把前面介绍 的两种以上的方法结合起来使用, 的两种以上的方法结合起来使用,形成复合 滤波。 滤波。 去极值平均滤波算法:先用中值滤波 中值滤波算法滤 去极值平均滤波算法:先用中值滤波算法滤 除采样值中的脉冲性干扰, 除采样值中的脉冲性干扰,然后把剩余的各 采样值进行平均滤波 连续采样N 平均滤波。 采样值进行 平均滤波 。 连续采样 N 次 , 剔除 其最值和最小值,再求余下N-2个采样的 其最大值和最小值, 再求余下N 平均值。显然,这种方法既能抑制随机干扰, 平均值。显然,这种方法既能抑制随机干扰, 又能滤除明显的脉冲干扰。 又能滤除明显的脉冲干扰。
●计算出窗口序列的中值Z(排序法) 计算出窗口序列的中值Z 排序法) 的中值d 排序法) ●计算尺度序列 d i (k) =| w i (k) - z | 的中值d(排序法) ● 令 ●计算 ●如果 Q=1.4826*d =MAD 4826*d
q =| x m (k) - z |
q < L⋅Q 则
y m (k) = x m (k) 否则
(2).实现基于L*MAD (2).实现基于L*MAD准则的滤波算法 L*MAD准则的滤波算法
●建立移动数据窗口(宽度m) 建立移动数据窗口(宽度m
{w 0 (k), w 1 (k), w 2 (k),K w m-1 (k)} = {x 0 (k), x 1 (k), x 2 (k),K x m-1 (k)}
件噪声和A/D量化噪声等引起的,在相同条件下测量 同一量时,其大小和符号作无规则变化而无法预测, 但在多次测量中符合统计规律的误差。采用模拟滤 波器是主要硬件方法。
随机误差:由串入仪表的随机干扰、仪器内部器
数字滤波算法的优点:(1)数字滤波只是一
个计算过程,无需硬件,因此可靠性高,并且不存 在阻抗匹配、特性波动、非一致性等问题。模拟滤 波器在频率很低时较难实现的问题,不会出现在数 字滤波器的实现过程中。(2)只要适当改变数字滤 波程序有关参数,就能方便的改变滤波特性,因此 数字滤波使用时方便灵活。
y n −1 ,L y n − 2 , y n −1
若本次采样值为y 则本次滤波的结果由下式确定: 若本次采样值为yn,则本次滤波的结果由下式确定:
≤ a , y n = y n ∆y n =| y n − y n −1 | > a , y n = y n −1或y n = 2 y n −1 − y n − 2
y m (k) = Z
可以用窗口宽度m和门限L调整滤波器的特性。 可以用窗口宽度m和门限L调整滤波器的特性。m影响滤波器的 总一致性, 值至少为7 门限参数L 总一致性,m值至少为7。门限参数L直接决定滤波器主动进取 程度,本非线性滤波器具有比例不变性、因果性、 程度,本非线性滤波器具有比例不变性、因果性、算法快捷等 特点,实时地完成数据净化。 特点,实时地完成数据净化。
拉依达准则法实施步骤
(1)求N次测量值X1至XN的算术平均值 次测量值X
1 X = N

N
X
i=1
i
(2)求各项的剩余误差Vi 求各项的剩余误差V (3)计算标准偏差σ
Vi = Xi − X
N i =1 2 i
σ = (∑ V ) /( N − 1)
(4)判断并剔除奇异项Vi>3σ,则认为该Xi为 判断并剔除奇异项V 坏值,予以剔除。
3.加权滑动平均滤波
增加新的采样数据在滑动平均中的比重, 以提高系统对当前采样值的灵敏度,即对 不同时刻的数据加以不同的权。通常越接 近现时刻的数据,权取得越大。
1 X n = ∑ CiX n −i N i=0
C0 + C1 + L + C N −1 = 1
C 0 > C1 > L > C N −1 > 0
常用的数字滤波算法 常用的数字滤波算法
一、克服大脉冲干扰的数字滤波法
1.限幅滤波法 . 2.中值滤波法 剔除粗大误差) 3.基于拉依达准则的奇异数据滤波法(剔除粗大误差) 4. 基于中值数绝对偏差的决策滤波器
二、抑制小幅度高频噪声的平均滤波法
1.算数平均 2.滑动平均 3.加权滑动平均
三、复合滤波法
二、抑制小幅度高频噪声的平均滤波法 小幅度高频电子噪声: 小幅度高频电子噪声:电子器件热噪 A/D量化噪声等 量化噪声等。 声、A/D量化噪声等。 通常采用具有低通特性的线性滤波器: 通常采用具有低通特性的线性滤波器: 算数平均滤波法 加权平均滤波法 滤波法、 滤波法、 算数平均滤波法、加权平均滤波法、 滑动加权平均滤波法等 滤波法等。 滑动加权平均滤波法等。
依据拉依达准则净化数据的局限性
采用3 准则净化奇异数据, 采用 3σ准则净化奇异数据,有的仪器通过选择 Lσ中的 中的L 调整净化门限, Lσ 中的 L 值 ( L = 2 , 3 , 4 , 5 ) 调整净化门限 , 门限放宽, 门限紧缩。采用3 L > 3 , 门限放宽 , L < 3 , 门限紧缩 。 采用 3σ 准则净化采样数据有其局限性,有时甚至失效。 准则净化采样数据有其局限性,有时甚至失效。 该准则在样本值少于 10个时不能判别任 样本值少于10 ( 1 ) 该准则在 样本值少于 10 个时不能判别任 何奇异数据; 何奇异数据; (2)3σ准则是建立在正态分布的等精度重复 测量基础上, 测量基础上,而造成奇异数据的干扰或噪声难 以满足正态分布。 以满足正态分布。
1.算数平均滤波
个连续采样值(分别为X 相加, N个连续采样值(分别为X1至XN)相加,然 后取其算术平均值作为本次测量的滤波值。 后取其算术平均值作为本次测量的滤波值。 1 N 即
X=
∑X N
i =1
i

Xi = Si + n i
Si为采样值中的有用部分ni 为采样值中的有用部分n 为随机误差。 为随机误差。
一、克服大脉冲干扰的数字滤波法 克服由仪器外部环境偶然因 素引起的突变性扰动或仪器内部 不稳定引起误码等造成的尖脉冲 干扰,是仪器数据处理的第一步。 通常采用简单的非线性滤波法。
1.限幅滤波法
限幅滤波法(又称程序判别法) 限幅滤波法 ( 又称程序判别法 ) 通过程序判断被测 信号的变化幅度 从而消除缓变信号中的尖脉冲干 变化幅度, 信号的 变化幅度 , 从而 消除缓变信号中的尖脉冲干 具体方法是,依赖已有的时域采样结果, 扰 。 具体方法是 , 依赖已有的时域采样结果 , 将本 次采样值与上次采样值进行比较 若它们的差值超 采样值进行比较, 次采样值与上次 采样值进行比较 , 若它们的 差值超 出允许范围,则认为本次采样值受到了干扰, 出允许范围 , 则认为本次采样值受到了干扰 , 应予 易除。 易除。 已滤波的采样结果: 已滤波的采样结果:
2.中值滤波法
中值滤波是一种典型的非线性滤波器, 中值滤波是一种典型的非线性滤波器,它运 是一种典型的非线性滤波器 算简单, 算简单,在滤除脉冲噪声的同时可以很好地 保护信号的细节信息。 保护信号的细节信息。 对某一被测参数连续采样 被测参数连续采样n 一般n 对某一被测参数连续采样n次(一般n应为奇 然后将这些采样值进行排序 排序, 数),然后将这些采样值进行排序,选取中 间值为本次采样值。 间值为本次采样值。 对温度、液位等缓慢变化的被测参数, 对温度、液位等缓慢变化的被测参数,采用 中值滤波法一般能收到良好的滤波效果。 中值滤波法一般能收到良好的滤波效果。
基本数据处理算法内容提要
克服随机误差的数字滤波算法 消除系统误差的算法、非线性校正 消除系统误差的算法、 工程量的标度变换。 工程量的标度变换。 诸如频谱估计、 相关分析、 诸如频谱估计 、 相关分析 、 复杂滤波等 算法,阅读数字信号处理方面的文献。 算法,阅读数字信号处理方面的文献。
第一节 克服随机误差的数字滤波算法
1 N 1 N 1 N X = ∑ (s i + n i ) = ∑ s i + ∑ n i N i =1 N i =1 N i =1
相关主题