改进自适应均值滤波器

关键词: 适应 算法

改进自适应均值滤波器(精选八篇)

改进自适应均值滤波器 篇1

机动目标模型的好坏将对最终滤波估计结果产生决定性的影响,目标模型建立得越符合实际,跟踪算法的自适应性越强,则目标跟踪的性能越好[1]。国内外提出了多种不同的机动目标模型,主要有CA模型、CV模型、Jerk模型、Singer模型和“当前”统计模型等[2,3]。其中具有广泛应用的是由我国学者周宏仁提出的“当前”统计模型及其自适应滤波算法[4],该算法认为目标在下一时刻的加速度只能在“当前”加速度的领域范围内,从而创造性地将Singer模型中加速度零均值改进为自适应的加速度均值,其目标机动加速度的“当前”概率密度用修正的瑞利分布描述,均值为“当前”加速度的估计值[5,6]。“当前”统计模型自适应滤波算法需要预先设定最大加速度值,若最大加速度设定较大,则在跟踪弱机动目标时,机动加速度方差的值很大,使得状态噪声协方差矩阵较大,最终导致该算法对弱机动目标并不能有较高的跟踪精度。

现基于“当前”统计模型自适应滤波算法的研究及目标跟踪性能的分析,提出了一种改进算法,该改进算法可依据目标的机动情况实时修正最大加速度,降低加速度方差,使得当前统计模型自适应滤波算法对弱机动目标也具有较高的跟踪精度,并通过仿真计算,验证了改进算法的有效性。

1 算法描述

1.1 目标加速度模型

采用非零均值的时间相关模型如下

x(t)=a¯+a(t)(1)

a˙(t)=-αa(t)+ω(t)(2)

式中,x(t)为目标位置,a(t)为零均值有色加速度噪声;a¯为机动加速度均值,在每一个采样周期内为常数;α为机动时间常数的倒数;ω(t)是均值为零,方差为2ασ2a的白噪声,σ2a为目标加速度方差。

式(1)和式(2)合并运算可得到加速度的时间相关模型为

x(t)=-αx¨(t)+αa¯+ω(t)(3)

可得,一维情况下的状态方程为

[x˙xx]=[01000100-α][xx˙x]+[00α]a¯+[001]ω(t)(4)

1.2 离散状态方程

若采样时间为T,式(4)状态方程离散化,可得

X(k+1)=Φ(k+1|k)X(k)+U(k)a¯+W(k)(5)

式(5)中

X(k)=[x(k)x˙(k)x(k)]Τ(6)

Φ(k+1|k)=[1Τ(-1+αΤ+e-αΤ)/α201(1-e-αΤ)/α00e-αΤ](7)

U(k)=[(-Τ+αΤ2/2+(1-e-αΤ)/α)/αΤ-(1-e-αΤ)/α1-e-αΤ](8)

W(k)为离散时间白噪声序列,其方差为

Q(k)=2ασα2(k)[q11q12q13q12q22q23q13q23q33](9)

{q11=12α5(1-e-2αΤ+2αΤ+2α3Τ33-2α2Τ2-4αΤe-αΤ)q12=12α4(e-2αΤ+1-2e-αΤ+2αΤse-αΤ-2αΤ+α2Τ2)q13=12α3(1-e-2αΤ-2αΤe-αΤ)q22=12α3(4e-2αΤ-3-e-2αΤ)q23=12α2(e-2αΤ+1-2e-αΤ)q33=12α(1-e-2αΤ)

(10)

观测方程为

Y(k)=H(k)X(k)+V(k) (11)

若观测量为含噪声的目标位置,则有

H(k)=[1] (12)

式(12)中,V(k)是均值为零,方差为R(k)的高斯观测噪声。

1.3 自适应卡尔曼滤波算法

采用状态方程(5)和观测方程(11)可得标准卡尔曼滤波方程(见式(13))。

当前统计模型把加速度的一步预测值看作是当前加速度,于是,当前机动加速度方差自适应调整见式(14)。

{X^(k+1/k)=Φ(k+1/k)X^(k/k)+U(k)a¯(k)Ρ(k+1/k)=Φ(k+1/k)Ρ(k/k)ΦΤ(k+1/k)+Q(k)Κ(k+1)=Ρ(k+1/k)ΗΤ×(k+1)[Η(k+1)Ρ(k+1/k)ΗΤ×(k+1)+R(k)]-1X^(k+1/k+1)=X^(k+1/k)+Κ(k+1)[Ζ(k+1)-Η(k)X^(k+1/k)]Ρ(k+1/k+1)=[Ι-Κ(k+1)Η(k+1)]×Ρ(k+1/k)(13)

σa2(k)={4-ππ(amax-x¨^(k/k))2x¨(k/k)>04-ππ(a-max+x¨^(k/k))2x¨(k/k)<0

(14)

2 算法改进

2.1 滤波算法跟踪性能分析

由自适应卡尔曼滤波算法可知:影响k时刻的最优状态估计与实际状态接近程度主要取决于卡尔曼滤波增益K(k+1)对状态观测值X(k+1/k)的修正程度。而当参数αT和观测噪声方差R(k)给定时,卡尔曼滤波增益取决于加速度方差σ2a。

从式(14)可知,当amax和a-max取一定值后,若机动加速度较大,机动加速度方差的值较小,则状态噪声协方差阵较小,跟踪精度较高;但在机动加速度较小时,即目标弱机动情况下,机动加速度方差的值很大,使得状态噪声协方差矩阵较大,滤波结果精度较差。因此,当前统计模型自适应滤波算法对目标的机动状态大范围变化时并不能保证均有较高的跟踪精度。所以,有必要设计一种方法可以根据目标的机动情况来实时修正σ2a值,以提高系统的跟踪性能。

2.2 自适应滤波算法改进方案

可通过滤波的加速度估计值x¨(k/k)amax、a-max比较,将目标的机动状态进行划分为:强机动、弱机动,弱机动包括常速运动、常加速运动、弱变加速三种情况,当目标在作强机动时,σ2a的计算结果不需要进行修正,而当目标进行弱机动时,适当减小目标加速度的最大值amax和a-max,来降低σa2值。

于是,当前加速度为正时,σa2的计算方法如下

σa2(k)={4-ππ(amax-x¨^(k/k))2,x¨(k/k)>εamax4-ππ(ηamax-x¨^(k/k))2,x¨(k/k)εamax(15)

式(15)中,ε为目标机动强弱的判别系数,η为目标弱机动情况下最大加速度的修正系数。

3 仿真验证

为了评估改进算法的有效性,分别针对常速、常加速、弱变加速三种情况,研究了改进算法和原算法对目标运动的跟踪响应特性。

假设观测噪声仿真(距离量测误差)与目标的距离的平方成正比,即观测噪声为

V(k)=(βx(k)+Δx0)ω(k) (16)

式(16)中,β为相对误差系数,Δx0为固定量测误差,ω(k)是均值为零,方差为1的正态伪随机数。可得,观测噪声方差为

R(k)=(βx(k)+Δx0)2E[ω2(k)] (17)

仿真中所选参数为:Δx0=30 m,β=0.01,α=0.1,T=1s,amax=80 m/s2。

3.1 常速运动

图1和图2给出了当x0=20 km,v0=200 m/s和a0=0 m/s2,常速运动时原算法和改进算法速度和加速度的估值曲线,改进算法中最大加速度的修正系数取0.1。

3.2 常加速运动

图3和图4给出了当x0=20 km,v0=10 m/s和a0=5 m/s2,常加速运动时原算法和改进算法速度和加速度的估值曲线,改进方案中最大加速度的修正系数取0.2。

3.3 弱变加速运动

图5和图6给出了当x0=20 km,v0=10 m/s和a0=5 m/s2,加速度在100 s时间内做5 m/s2到-1 m/s2的缓慢变化时原算法和改进算法速度和加速度的估值曲线,改进方案中最大加速度的修正系数取0.2。

由图1—图6可见,目标做常速、常加速、弱变加速三种弱机动运动时,采用最大加速度修正改进算法的跟踪精度较传统算法好。

4 结论

基于当前统计模型自适应滤波算法的跟踪性能分析及仿真验证结果可见,通过修正最大加速度的方法,较好的克服了传统算法对弱机动目标跟踪精度较差的问题。

参考文献

[1]姚洪利.用改进的“当前”统计模型对机动目标快速跟踪.情报指挥控制系统与仿真技术,2004;26(6):38—43

[2]Singer R A Estimational optimal tracking filter performance for man-ned maneuvering targets.IEEE Transaction on Aerospace and Electronic System,1970;6(4):473—483

[3]周宏仁.机动目标当前统计模型与自适应跟踪算法.航空学报,1983;4(1):73—86

[4]周宏仁,敬忠良,王培德.机动目标跟踪.北京:国防工业出版社,1991

[5]范小军,刘锋,秦勇,等.基于STF的“当前”统计模型及自适应跟踪算法.电子学报,2006;(6):81—84

改进自适应均值滤波器 篇2

改进的Sage-Husa自适应滤波及其应用

为防止滤波发散和提高系统的实时性,提出了一种基于协方差匹配技术的自适应滤波方法.该方法将协方差匹配技术和一种简化的Sage-Husa自适应滤波算法相结合,通过滤波的状态确定量测噪声协方差阵的值,在线估计噪声的统计特性实现自适应滤波.将该算法应用到惯导/双星(INS/DS)组合导航系统中,并和简化的.Sage-Husa自适应滤波算法进行仿真比较.仿真结果表明,在滤波精度相当的情况下,新算法简化了运算,提高了实时性.

作 者:鲁平赵龙 陈哲 LU Ping ZHAO Long CHEN Zhe  作者单位:北京航空航天大学自动化科学与电气工程学院,北京,100083 刊 名:系统仿真学报  ISTIC PKU英文刊名:JOURNAL OF SYSTEM SIMULATION 年,卷(期):2007 19(15) 分类号:V249.32+8 关键词:Sage-Husa自适应滤波   协方差匹配技术   实时性   组合导航系统  

改进自适应均值滤波器 篇3

关键词:高斯噪声;模糊滤波;直方图

中图分类号:TP301.6 文献标识码:A

1 引 言.

图像在其形成、传输、变换以及终端处理中,经常会受到各种噪声的干扰而降质。随着人们对图像的需求日益增加,对图像质量的要求也越来越高,为了满足人们的要求,对图像进行滤波就显得尤为重要[1-3]。高斯噪声是其中一种重要的噪声类型,其服从高斯分布,特点是密度大、噪声强度的波动范围宽,受高斯噪声污染的图像不仅每一个像素灰度级都会受影响,而且即使是同一灰度级受污染的程度也会不同[4-5]。传统的滤波算法中,均值滤波是常用的去除高斯噪声的滤波方法,其本质是一种低通滤波的方法,在消除噪声的同时也会对图像的高频细节成分造成破坏和损失,使图像模糊[6],而且算法中用局部窗口内各像素灰度的算术平均值替换中心像素灰度值,没有充分利用图像各像素间的相关性和像素的位置信息。近年来大量学者基于均值滤波存在的不足,提出许多改进方法其中有改进的加权均值滤波算法[7],算法采用局部阈值优化的方法计算各像素点的权值,将滤波窗口各像素点的灰度值与对应的权值进行加权运算,结果作为窗口中心点的滤波输出;自适应加权均值滤波算法[8],根据像素间的相关性通过一个分段函数确定权值,根据不同的权值确定中心点像素值。这些算法都一定程度解决了均值滤波没有充分利用像素间相关性的不足。自从1965年美国加里福尼亚大学的控制论专家L. A.扎德教授提出模糊数学以来,模糊技术被广泛地应用于各个领域,模糊滤波算法在去除噪声和保护图像细节这对固有的矛盾上表现出越来越好的效果。其中有模糊加权均值滤波算法[2],根据像素间的相关性和位置信息指定模糊规则从而确定加权系数,该算法要求知道原期望图像,但在多数情况下,我们是很难得到原期望图像的。文献[9]提出算法在有效去除椒盐噪声的前提下,根据图像直方图确定模糊隶属度函数的阀值,从而实现混合噪声下的模糊滤波;一种新型的模糊滤波算法[10],根据模糊推理系统确定加权因子。根据以上滤波算法,本文提出了基于图像受噪程度的改进模糊加权均值滤波算法,此算法在不需要期望图像和高斯噪声方差的情况下能有效地去除噪声,并且能够很好地保护图像的的细节信息。

2 基于图像受噪程度的改进模糊加权均值滤波算法

为叙述方便,考虑如下两幅lena图,其中一幅为不含噪声图像,另一幅为含方差为0,均值为0.05的高斯噪声图像,如下所示。

2.1 估计原图像灰度直方图

根据高斯噪声密度大、噪声强度的波动范围宽,且受高斯噪声污染的图像不仅每个像素级都会受影响而且即使是同一灰度级受噪声污染的程度也有很大差异的特点,根据像素间相关性提出了基于受噪程度的灰度直方图估计方法。

采用3*3的滤波窗口,根据下式

求出各个像素点的受噪程度ρ(i,j),为方便计算,ρ(i,j)均为百分值,其中y(i,j)为3*3滤波窗口的中间值,y(i+k,j+l)为其领域值其中k,l=1,2,3。根据得到的各个像素点的受噪程度ρ(i,j)和原噪声图像像素点灰度值y(i,j),可以得到原不含噪声图像各个像素点的估计灰度值,公式如下

2.2 建立模糊隶属度函数

根据式(2)得到的像素值做出首次滤波后图像的估计灰度直方图3和第一次滤波后图5,为分析估计直方图的有效性我们做出原不含噪声直方图4,如下图所示从图可以看出,两个直方图形状上大体相似,但是图3中灰度值为0及其附近灰度值像素点的个数明显增多而且在255个灰度级中出现了很多个数小于100的像素点。所以决定采用模糊滤波对图像进行第二次滤波。由于在现实情况下,我们多数是不能明确知道原不含噪声图像的直方图的,所以根据估计的直方图,建立模糊隶属度函数实现第二次滤波。由图3可以看出,其图像与高斯函数的图形大体相似,于是我们可以利用其灰度级为论域建立模糊子集,并在每个模糊子集上定义一个隶属度函数来表达其模糊属性。根据图3的形状和高斯函数的图形特点,将图像按灰度值0—50、51—100、101—250分成3部分,不同的图像根据直方图形状不同,所分区间会有所不同,对这3部分均采用高斯曲线形的函数为其隶属度函数,数学表达式为

f(x)=exp-(x-μ)22σ2(3)

其中μ为高斯函数的均值,σ为其方差。根据图3确定出函数中的参数,使隶属度函数更接近直方图的形状,其步骤如下

1.根据直方图将图像按灰度值0—50、51—100、101—250分成3部分。

2.根据高斯函数的特点,当自变量等于其均值μ1时,函数值达到最大。由其统计特点取σ=μ/3。在第一部分中求出使灰度值函数达到最大的灰度值g1,使得μ1

3.在第二部分中按同样的方法求出g2,使μ2=g2,然后在μ1和μ2之间求出使灰度值函数达到最小的灰度值gmin,使得σ2=|μ24.在第三部分求g3,并令μ3=g3,σ3=(255-μ3)/3。

5.将上述3部分合并为一个模糊隶属度函数,用f(x(i,j))表示。

2.3 改进模糊加权均值滤波

根据第一次滤波后图5可以看出,图像已有较好的滤波效果只是多出了许多黑点,这是因为直方图中增多的0及其附近灰度值的像素点,而数量小于100的像素点是在利用受噪程度估计原不受噪声图像时产生的很小的误差,在图像中不会显现出来。所以我们主要处理直方图中增多的0及其附近灰度值的像素点,不同的图像会有差别,这里我们根据两个直方图选择灰度值小于或等于25的像素点进行模糊加权平均滤波。由此,可得出基于图像受噪程度的改进模糊加权均值滤波的算法步骤如下endprint

1.选取3*3的滤波窗口,找出窗口中的中值和其领域值。

2.利用式(1)求出各个像素点的受噪程度ρ(i,j)

3.根据受噪程度和原噪声图像由式(2)得到第一次滤波后图像和估计的灰度直方图。

4.根据得到的估计灰度直方图求出模糊隶属度函数式f(x(i,j)),计算出加权系数。

5.找出第一次滤波后图像中灰度值小于或者等于25的像素点。

6.采用3*3的滤波窗口根据式(4)对这些像素点进行模糊加权均值滤波,其公式为

其中,x(i,j),y(i,j),ω(i,j)分别为原含噪声图像、滤波后图像、加权系数。

2.4 图像滤波实验结果及分析

为验证本文提出滤波算法的有效性,用MATLAB对其进行仿真。选用具有256灰度级的222*208像素的标准Lena图像和256灰度级的256*256的Cameraman图像作为实验图像。实验时,对原图像加上均值为0,方差分别为0.005,0.01,0.05的高斯噪声,选用3*3的滤波窗口,分别采用均值滤波和本文提出的基于图像受噪程度的改进模糊加权均值滤波对含不同方差的噪声图像进行滤波。如图1为原不含噪声图像,图2为均值为0,方差为0.05的含高斯噪声图像,图6为模糊加权均值滤波图,图7为Lena图像基于本文算法与均值滤波算法效果对比图,图8为Cameraman图像基于本文算法与均值滤波算法效果对比图。为进一步验证本文提出的滤波算法的有效性,分别给出了以上各种滤波算法针对不同等级的高斯噪声的峰值信噪比(PSNR)滤波性能指标数据,如表1。PSNR的计算公式如下

PSNR=10log 10∑Mi=1∑Nj=12552∑Mi=1∑Nj=1(h(i,j)-f(i,j))2 (5)

其中:图像大小为M*N,h(i,j)为原始图像像素点的灰度值;f(i,j)为噪声图像滤波后图像像素点灰度值。

表1中通过改变噪声中的方差并将三种滤波算法的PSNR值进行对比,可以看出本文提出的基于图像受噪程度的改进模糊加权均值滤波算法即使在噪声等级较高的情况依然可以在很好去除噪声的同时保护图像的细节,具有更好的滤波效果,显示了较好的鲁棒性。

3 结 论

基于传统均值滤波算法不仅会使图像模糊而且不能充分的利用图像中各个像素间的相关性及空间位置信息的不足,本文提出了基于图像受噪程度的改进模糊加权均值滤波算法。其算法是根据图像各个像素的受噪程度得到第一次滤波后图像和估计直方图,然后由估计直方图得出模糊隶属度函数作为模糊加权均值滤波算法的加权系数,最后对第一次滤波后的图像中小于或等于25的像素点进行模糊加权均值滤波,得到的最终滤波图像在很好的去除高斯噪声的前提下,保护了图像细节。通过表1可以看出此算法对方差较大的高斯噪声同样具有很好的滤波效果,证明了此滤波算法的可行性。

参考文献

[1] 张昊慧.改进的基于中值滤波喝小波变换的图像降噪方法[J].2012,31(20):51-53.

[2] 陈大力.图像模糊滤波算法的对比研究与改进[D].沈阳:东北大学,2005.

[3] 卢京晶,方中华,孙胜利.一种自适应的加权均值滤波器[J].传感技术学报,2005,18(4):880-882..

[4] 张铮,王艳平,薛桂香.数字图像处理与机器视觉[M]——Visual C++与MATLAB实现[M].北京:人民邮电出版社,2010.

[5] 王建勇,周晓光,廖启征.一种有效的混合噪声滤波算法[J].信息技术.2005,29(11):48-50.

[6] 朱士虎,游春霞.一种改进的均值滤波算法[J].计算机应用与软件.2013,30(12):97-100.

[7] 沈德海,候建,鄂旭,等.一种改进的加权均值滤波算法 [J].现代电子技术.2015,38(10): 1-3.

[8] KANG J Y,MIN L Q,LUAN Q X. Novel modified fuzzy cmeans algorithm with applications[J].Digital Signal Processing,2009,19(2) : 309-319.

[9] 张燕,严勇杰.一种改进滤波算法在图像处理中的应用 [J].信息化研究.2015,41(2):53-56.

自适应卡尔曼滤波算法改进与仿真 篇4

关键词:自适应卡尔曼滤波,改进算法,GPS仿真

引言

采用运动载体“当前”统计模型及动态卡尔曼滤波算法进行卫星动态定位的滤波处理, 虽然仿真结果表明定位误差明显减小, 定位精度得到了显著提高, 但是进一步分析可以发现, 此时滤波器的跟踪能力并不强, 当载体发生强机动时, 定位误差明显增大, 使得滤波精度下降。因此, 为了改善滤波器的动态性能, 提高滤波器的跟踪能力, 本文提出了自适应卡尔曼滤波算法, 并对算法进行了几点改进, 能够更有效的提高滤波精度和动态性能。

1、自适应卡尔曼滤波方程的建立

由和这是一个典型的线性卡尔曼滤波模型。由于在基于“当前”统计模型中, 加速度只能在前一时刻的邻域内波动, 因此可以把加速度的一步预测值看作“当前”加速度均值。即:

设采样周期为T, 并考虑k T时刻的加速度均值为加速度的一步预测值, 可建立如下的卡尔曼滤波方程:

根据系统方程和观测方程, 建立自适应卡尔曼滤波方程:

式 (1.8) 中的λ (k+1) 是引入的自适应遗忘因子, 目的是用遗忘因子限制卡尔曼滤波器的记忆长度, 充分利用“现时”的测量数据, 改善滤波器的动态性能。由于所建立的模型与真实情况存在误差, 且当载体发生机动时, 某些状态变量会发生突变, 同时在滤波计算过程中会累计误差, 使得P (k+1/k) 失去正定对称性, 从而导致滤波器动态跟踪性能不强, 甚至可能导致滤波发散。

在考虑滤波器的最佳性能下, 自适应遗忘因子的确定方法如

从式 (1.12) ~ (1.16) 可以看出自适应遗忘因子的物理意义:状态突变时, 估计误差v (k+1) 的增大引起误差方差阵C0 (k+1) 增大, λ (k+1) 相应增大, 滤波器的跟踪能力增强, 使滤波效果最佳。

2、自适应算法的改进

将上述的自适应滤波算法应用于仿真过程中发现, 尽管滤波器的收敛效果得到了改善, 但是动态滤波效果还不理想, 原因在于如果状态发生突变时, λ (k+1) 尽管大于1但仍然太小, 滤波器的跟踪能力不强。为此, 对算法进行了进一步改进, 以提高系统的动态性能。

2.1 引入调整系数α

式中α称为调整系数 (α>1) , α是根据具体情况取值。α的引入人为地加大了λ (k+1) , 强制提高了滤波器的跟踪性能。

2.2 引入自适应加权因子d

λ (k+1) 的大小在很大程度上取决于N (k+1) , 而N (k+1) 又受误差方程C0 (k+1) 的影响。当状态发生突变时, 造成C0 (k+1) 增大, 这时希望λ (k+1) 能够足够大, 以使滤波器及时跟踪状态变化。引入自适应加权因子d后N (k+1) 的表达式为:

自适应加权因子d根据估计残差v (k+1) 的大小自动确定:

U为适当选取的估计误差方差限值。

2.3 引入自适应调节量β

引入自适应调节量β后, N (k+1) 的表达式改为:

自适应调节量β由下式确定:

式中, xi为突变的状态变量, η为调节系数。系统中可能只有某一状态变量对λ (k+1) 的影响, 这便是引入β的目的。引入调整系数α、自适应加权因子d及自适应调节量β, 使滤波动态性能获得更好的改善, 但滤波精度由最优变为次优, 即牺牲了一定的最佳性换取了较好的动态性能。同时, λ (k+1) 变为次优加权自适应因子。

3、自适应卡尔曼滤波仿真与分析

为了较全面地研究载体各种机动飞行对导航性能的影响, 设计采用一个比较完整且机动飞行较多的飞行航迹, 总飞行时间为3600s, 仿真中飞机的初始位置为北纬32°、东经118°、飞行高度为300m, 初始航向角为90°。整个航迹包含爬升、平飞、转弯、俯冲、加速和减速等各种常见的机动飞行状态, 能够充分模拟载体的运动情况。载体的动态飞行航迹和系统仿真框图分别如图1和图2所示。

对GPS系统进行算法仿真验证, 得到改进自适应卡尔曼滤波误差曲线, 参见图3~图5所示。

从仿真结果可以看出, 运用改进的自适应滤波算法与常规的卡尔曼滤波器相比, 动态跟踪性能更好, 当状态机动时, 有很强的跟踪能力, 滤波器具有良好的鲁棒性。以X轴方向为例, 选择载体在1500~2500s时发生机动的运动过程, 运动状态由平飞到减速转弯再到平飞过程的局部机动放大误差曲线对比如图6所示。

4、总结

本文研究了卫星导航定位卡尔曼滤波算法, 以GPS卫星导航系统为例, 进行了仿真验证, 结果表明, 该算法切实可行, 并且能有效提高导航定位精度。当载体发生机动时, 存在状态突变导致滤波跟踪能力不强, 定位误差突然增大的问题, 因而提出了自适应卡尔曼滤波导航定位算法, 并且为了进一步提高滤波器的跟踪能力, 对算法进行了几点改进, 同时对GPS导航系统进行了仿真验证, 仿真结果表明, 该改进的自适应滤波器能有效改善常规滤波器在载体机动状态突变出现的问题。改进的适应滤波算法, 结果表明, 改进自适应滤波算法增强了滤波器的跟踪能力, 改善了滤波效果, 提高了定位精度。

参考文献

[1]秦永远, 张洪钺, 等.卡尔曼滤波与组合导航原理.西安:西北工业大学出版社.1998

[2]Romanenko A, Castro J, The unscented filter as an alternativeto the EKF for nonlinear state estimation:a simulation casestudy, Computers and Chemical Engineering, 2004, 28 (3) :347-355

[3]M.Mosallaei, K.Salahshoor, M.Bayat, Centralized andDecentralized Process and Sensor Fault Monitoring Using DataFusion Based on Adaptive Extended Kalman Filter Algorithm, Measurement (2008) , doi:10.1016/j.measurement, 2008.02.009

改进自适应均值滤波器 篇5

自适应滤波算法广泛应用于信号处理领域, 例如雷达、声纳、系统辨识、智能天线等方面, 原理如图1所示。在众多的自适应算法中, 最小均方算法以其结构简单、运算量小的特点, 得到了广泛的应用。

最小均方 (LMS) 自适应算法由美国学者Widrow和Hoff[1]提出。该算法虽然以简单的结构得到学术研究人员的青睐, 但是由于过于简单, 导致在很多场合中得不到期望的性能。人们期望在收敛初始时算法具有很快的收敛速度, 收敛过程达到稳定时能够达到较低的稳态误差, 使系统具有较好的系统跟踪和辨识能力。然而, LMS算法的步长是固定的, 直接导致系统对收敛速度、跟踪能力与稳态误差之间的矛盾不可调和。为了缓解以上的矛盾, 折中取得最优的性能, 人们提出了变步长自适应滤波算法。

Kwong R H等[2]于1992年提出Kwong算法, 通过均方瞬时误差e2 (n) 控制步长的更新。算法在低噪声环境中能够在收敛速度和稳态误差之间折中取得较好的性能, 但是当噪声较大时, 步长容易受到噪声干扰从而偏离预期的更新过程。Aboulnasr T等[3]提出的算法同样能够折中取得好的算法性能, 而且在收敛过程中避免非相关噪声的影响, 但是跟踪能力有限, 尤其在时变环境中, 不能对系统变化进行很好的跟踪。近年来, 一些学者提出了基于Sigmoid函数的LMS算法 (SVSLMS) 及其改进算法[4,5,6,7]。由于Sigmoid函数较为复杂, 而且在误差接近零时不具有缓慢变化的特性[5], 因此算法效果仍不够理想。如文献[4]中的算法, 步长在误差很小时仍难以达到足够小以实现很好的效果。在其他的变步长LMS算法研究中, 文献[8-10]的算法兼有良好的性能和低的运算量, 但是只适用于一些特定的场合。敖伟、李建平等[11,12]使用双曲正切函数实现变步长, 能够很好地实现小的稳态误差, 但是收敛速度和跟踪能力没有得到改善。朱斌、马艳等[13]使用反正切函数实现步长更新, 在误差很小时可以取得趋近于零的步长, 然而在步长更新中容易受到噪声的影响, 使得算法性能下降。

上述算法各有优劣, 但基本思想一致。本文遵循相同的思想, 在文献[3]和文献[13]的基础上, 提出改进的LMS自适应算法。

1 改进的LMS算法

文献[13]中提出的自适应算法为:

其中e (n) 为误差, μ (n) 为步长。文献[13]算法能够实现很快的收敛速度, 在较少的迭代次数内达到稳态。但是算法中采用e2 (n) 控制步长, 在信号的输入端引入了非相关噪声的干扰。本文从这一点出发, 提出改进的自适应算法为:

其中k (n) 为误差的自相关时间均值估计, α、β、γ、λ、ε为常量参数, 其中β控制步长取值范围, α和γ共同控制步长曲线的斜率变化, λ为遗传系数, 控制收敛时间。通过合理选择以上四个参数能够在收敛初期实现很快的收敛速度。ε为取较小值的正常数, 避免分母为零的情况发生。

为了保证权向量收敛, 在迭代次数足够多时需要使满足:

其中λq是输入信号自相关矩阵的特征值。即要求:

其中λmax是最大特征值。联系式 (4) 和式 (9) 可得β的取值范围:

由式 (4) 可得:

参数选择适当的情况下, 算法的收敛过程如下:在收敛初期阶段, 误差的自相关估计较大, 根据反正切函数与自变量的正比增长关系可得此时的步长较大, 具有较快的收敛速度;在收敛趋近平稳时, 权向量趋近最优值, 此时误差的自相关估计很小且变化平滑, 从而导致步长很小, 实现较理想的稳态误差。

2 算法性能分析

2.1 消除噪声干扰

本文算法利用误差的自相关e (n) e (n-1) 代替e (n) 2, 消除了非相关噪声对步长更新的干扰。

设理想情况下, 期望信号为:

其中ξ (n) 为均值为零, 与x (n) 不相关的干扰信号, wopt (n) 是时变滤波器的最优权系数。由式 (6) 和式 (12) 可得:

分别对e2 (n) 和e (n) e (n-1) 求数学期望, 可得:

由于ξ (n) 是均值为零, 与x (n) 不相干的噪声, 因此:

对比式 (16) 和式 (17) 可以看出, 采取e (n) e (n-1) 代替e (n) 2能够有效地消除ξ (n) 的影响, 从而提升算法的性能。

2.2 误差自相关估计与归一化处理

为了能够将稳态误差控制在较低的范围内, 本文在计算误差自相关时, 在式 (5) 引入误差自相关估计值k (n) 和遗传系数λ。在λ取值较大的情况下, k (n) 迭代次数比较少时, k (n) 取值较大, 此时的误差自相关对k (n) 的贡献相对较大。经过若干次迭代之后, e (n) 已经变得较小, k (n) 通过累积e (n) e (n-1) 使得当前时刻的误差自相关对迭代影响逐渐减小, 从而使k (n) 的迭代更加平滑。因此当误差足够小时, 扰动对步长产生的影响几乎可以忽略不计。

另外, 本文引入了信号归一化功率x (n) xT (n) 以改善输入信号的取值范围, 使之能够在更大的范围内接收信号。

2.3 算法复杂度分析

固定步长的LMS算法的复杂度即权向量更新所需的计算量, 为2N次乘法, N为自适应滤波器阶数。本文对比的算法均为变步长LMS算法, 因此只需分析各算法在计算步长中所需的计算量即可, 而本文算法在权向量更新时采用信号功率归一化处理, 因此会适当增加计算量。表1为除2N次乘法外各算法额外增加的计算量。

本文算法在乘法运算上与文献[10]相当, 略多于文献[11], 但是由于没有指数运算, 而指数运算的计算量相当于多次的乘法, 因此相比之下本文算法具有更低的复杂度。

3 算法性能仿真

3.1 仿真条件

本文的算法仿真条件如下:

(1) 自适应滤波器阶数N=8, 采样点数为1024;

(2) 输入信号x (n) 是均值为0, 方差为1的高斯白噪声;

(3) 干扰噪声v (n) 为与x (n) 无关的, 均值为0, 方差为0.1的高斯白噪声;

(4) 初始时未知系统单位冲激响应矢量为:W=[0.1 0.3-0.2-0.5 0.2-0.5-0.3 0.1]T;

(5) 每次做1 000次独立实验, 取统计平均求其收敛曲线。

3.2 算法参数分析

图2-图5为采取控制变量法, 在仿真条件下分别对β、α、γ、λ进行分析。图2为α、γ、λ分别取8、1、0.99时, β取0.05、0.2、0.8的算法收敛曲线。

图3为β、γ、λ分别取0.6、1、0.99时, α取1、16、32的收敛曲线。

α为k (n) 的幅度, 由于反正切函数在输入较大时取值较大而且保持很缓的斜率, 因此α取大值的曲线在收敛初期将保持较快的收敛速度。图4为α、β、λ分别取8、0.6、0.99时, γ取0.5、1、2的收敛曲线, 可以看出当|k (n) |小于1时, γ越小则|k (n) |γ越大, 此时步长取值越大, 相应的稳态误差也较大。

图5为α、β、γ分别取8、0.6、1时, λ取0.7、0.8、0.9的收敛曲线。λ控制e (n) e (n-1) 的累积作用, λ越大收敛性能越好。经过多次实验得出在本文实验条件下, 算法最佳参数为:α=0.6, β=8, γ=1, λ=0.99。ε经过实验验证取0.0001能取得较好的效果。

3.3 仿真对比

本文选取文献[11]、文献[13]的算法作为对比, 三种算法选取的参数如表2所示。

图6所示为文献[11]算法、文献[13]算法和本文算法在仿真条件下收敛曲线的对比。

由图6可知, 本文算法的收敛速度快于文献[11]算法。因为在误差较大时, 反正切函数能够在此误差的邻域内实现步长的缓慢变化, 因此能够在初始一段时间内能够保持很快的收敛速度。另外由于通过抑制步长更新中非相关噪声的干扰, 本文算法能够实现比文献[13]更低的稳态误差, 有更好的收敛性能。

3.4 时变环境中的仿真分析

实验条件和算法参数设置与上述仿真一致, 系统总采样点数为3 072, 在第1 024个采样点时刻未知系统发生第一次时变, 系统冲激响应跳变为W1=[-0.2 0.4-0.6 0.1 0.5-0.50.2]T;在第2 048个采样点时刻发生第二次时变, 冲激响应跳变为W2=[-0.2-0.3-0.4 0.5-0.1-0.05-0.1 0.1]T。图7是文献[11]、文献[13]和本文的算法在时变环境中的收敛情况。

由图7可以看出, 在经过两次系统时变后, 本文算法依然有很快的收敛速度, 具有较好的跟踪能力和鲁棒性。这是因为在经历每一次系统时变时, 随着误差瞬时增大, 三种算法的步长都瞬时增大, 而误差自相关估计的平滑作用减缓了步长减小的趋势, 因此本文算法在每一次系统发生时变后都能够保持很快的收敛速度。

4 结语

本文提出一种基于反正切函数的改进LMS算法, 利用误差自相关的时间估计, 通过反正切函数进行步长更新, 同时引入归一化信号功率扩大了输入信号的接收范围。仿真结果表明, 该算法在平稳环境下能够实现很快的收敛速度和较低的稳态误差, 在时变环境下该算法依然具有较好的收敛性能, 而且克服了输入端非相关噪声的干扰, 具有较好的鲁棒性和有效性。

摘要:针对最小均方算法收敛过程中收敛速度与稳态误差的矛盾, 提出一种基于反正切函数的归一化最小均方算法。该算法利用反正切函数和误差自相关的时间估计建立了步长与误差之间的非线性关系, 抑制环境中的非相关噪声, 同时引入归一化信号功率扩大输入信号的取值。仿真结果表明, 该算法具有较快的收敛速度、较低的稳态误差, 同时具备较好的系统时变跟踪能力。

改进自适应均值滤波器 篇6

自适应滤波研究始于20世纪50年代末Widrow和H o f f提出的最小均方误差算法,由于该算法具有简单性、鲁棒性和易于实现的性能,因此在自适应滤波原理中得到了很好的应用[1]。然而,传统的固定步长的LMS算法在收敛速度、时变系统的跟踪能力和稳态失调之间的要求是存在很大矛盾的。小的步长确保稳态时具有小的失调,但是算法的收敛速度慢,并且对非稳态系统的跟踪能力差;大的步长µ使算法具有更快的收敛速度和好的跟踪能力,但这是以大的失调为代价的[2,3]。为解决这一矛盾,各种变步长LMS算法被提出。变步长算法都是利用自适应过程中提供的某种近似值作为衡量标准来调节步长。简单有效的方法是利用自适应过程中的误差信号,试图在步长与误差信号之间建立某种函数关系。文献[4]给出Sigmoid函数的变步长LMS算法(SVSLMS),其能同时获得较快的收敛速度、跟踪速度和较小的稳态误差。然而,该Sigmoid函数在误差e(n)接近零时变化太大,不具有缓慢变化的特性,使得SVSLMS算法在稳态时仍有较大的步长变化。为此,文献[5-6]分别给出相应的改进算法,使其在稳态时步长因子很小,而且变化不大,解决了S V S L M S算法存在的问题。文献[7]克服了文献[5]在低信噪比下收敛速度变慢的问题,但在稳态性能方面欠佳。在分析了以上算法的基础上,文献[8]提出了基于双曲正切函数的变步长算法,该算法能同时获得较快的收敛速度、跟踪速度和较小的稳态误差。然而,该双曲正切函数在误差e(n)接近零处变化太大,不具有缓慢变化的特性,使得该算法在自适应稳态阶段仍有较大的步长变化,并且在低信噪比环境下,该算法收敛速度、跟踪速度和稳态误差并不十分理想。本文在此基础上提出了一种改进型算法,不仅保证了较快的收敛速度、跟踪速度和较小的稳态误差,并且克服了双曲正切函数在自适应稳态阶段步长调整过程中的不足,同时,降低了算法对自相关性较弱噪声的敏感性。

2 固定步长LMS算法

基本的L M S算法可以表示为

其中X(n)为n时刻输入信号矢量;W(n)为n时刻N阶自适应滤波器的权系数,d(n)为期望信号,e(n)为误差信号,µ是步长因子。

该算法收敛的条件是0<µ<1/λmax,λmax是输入信号自相关矩阵的最大特征值。

3 改进的变步长LMS算法及其分析

文献[8]中提出了基于双曲正切函数的变步长LMS算法:

式中变步长µ(n)是e(n)的双曲正切函数。

该算法能同时获得较快的收敛速度、跟踪速度和较小的稳态误差。然而,该双曲正切函数在误差e(n)接近零处变化太大,不具有缓慢变化的特性,使得该算法在自适应稳态阶段仍有较大的步长变化,并且在低信噪比环境下,该算法收敛速度、跟踪速度和稳态误差并不十分理想,这是算法的不足。

本文通过对双曲正切函数修正得到新的变步长L M S算法为:

3.1 收敛性分析

β用于控制函数的取值范围,α和h用于控制函数的形状。根据算法收敛条件:0<µ<1/λmax,则要求0<β<1/λmax,同时根据步长调整原则的要求,应有参数α>0,h>0,在此条件下分析参数α、β和h的选择。为了说明参数α、β和h对函数的影响,绘制了在不同参数下µ(n)和e(n)的函数关系曲线。由图2~4可知:α选择过大时误差e(n)接近0仍有较大步长,稳态误差增大,α选择过小时步长较小且变化缓慢,收敛速度降低;β选择过大时会超出收敛条件,过小时初始阶段收敛速度较慢;h选择过大时,步长调整过早进入缓慢变化区域,选择过小时会增大稳态误差。因此参数α、β和h应根据具体的系统环境与要求进行选择。

3.2 抗干扰性分析

由式(1)可得:

而误差e(n)与输入信号X(n)有关,为了便于分析,将d(n)表示为

式中:N(n)是均值为零的噪声,与输入信号无关;W*(n)为时变的最优系数矢量。令

式中:K(n)为系数偏差矢量。

由于N(n)是零均值的噪声,N(n)与X(n)无关,并且噪声N(n)本身不相关,N(n)N(n-1)对µ(n)的贡献很小,可忽略不计,故有

而在文献[8]算法中,根据N(n)本身不相关,与X(n)也不相关,可得出

从统计的观点,由式(12)可以看出,当采用式(3)对步长因子µ(n)进行调整时,由于E[N(n)]项的存在,µ(n)不在是算法自适应状态的准确反应,在噪声和干扰比较严重的应用环境下,N(n)将影响LMS算法的性能,是自适应算法很难达到最优解,在最优解周围波动。为了减小N(n)对步长因子µ(n)的影响,式(5)对其进行了改进,即用e(n)e(n-1)来调节步长因子µ(n),而不是文献[8]算法中的e(n)。在自适应滤波的开始阶段,e(n)比较大,µ(n)也较大,由于噪声N(n)不相关,N(n)N(n-1)对µ(n)的贡献很小,所以N(n)对µ(n)的影响可以忽略不计。当e(n)较小时,µ(n)也较小,由于改进算法的步长只与输入信号有关,而不受噪声的影响。因此,具有收敛速度快,稳态误差小的优点,而且在低信噪比的环境中仍保持较好的性能,具有广泛的用途。

4 仿真结果及分析

4.1 仿真条件

本节从收敛性、跟踪性能、稳态性能和抗干扰性能等方面进行仿真比较,说明本文算法的有效性。采用文献[8]的实验条件:

(1)自适应滤波器的阶数L=2;

(2)未知系统的FIR系数为W*=[0.8,0.5]T;在第5 0 0个采样点时刻,未知系统发生时变,系数矢量变为;

(3)参考输入信号x(n)是零均值、方差为1的高斯白噪声;(4)v(n)为与x(n)不相关的高斯白噪声,其均值为零、方差σv2=0.04。为得到LMS算法的学习曲线,分别做200次独立的仿真,采样点数为1000,然后求其统计平均。

本文步长在h=1000、α=200和β=0.25时为最优状态。

4.2 仿真结果及分析

图5是本文算法和原算法收敛曲线的比较,上面一条是h、α和β为原算法最佳值的收敛曲线,下面一条是本文算法的最优收敛曲线。由图5可知本文算法优于原算法。

图6和图7分别是信噪比为10d B和18d B时本文算法和原算法收敛曲线的比较。可以看出,低信噪比时原算法的稳态误差波动较大,本文算法稳态性能优于原算法;信噪比相对比较大时,2种算法的仿真曲线近似一致,说明在高信噪比的情况下,二者具有相同的性能。

5 结束语

本文通过对双曲正切函数的修正,建立了步长因子µ(n)与误差信号e(n)之间新的非线性函数关系,其在误差e(n)接近零处具有缓慢变化的特性,克服了双曲正切函数在自适应稳态阶段步长调整过程中的不足。计算机仿真结果表明该算法比原算法收敛性能更好,与理论分析相一致。并且,在低信噪比环境下,该算法比原算法有更小的稳态误差,有更好的抗噪声性能。

参考文献

[1]何振亚.自适应信号处理[M].科学出版社,2002.

[2]HAYKIN S.Adaptive Filter[M].Third Edition.Prentice-Hall Inc.,1996.

[3]GELFAND S B,WEI Y,KROGMEIER J V.TheStability of Variable Step-size LMS Algorithms[J].IEEETrans.on Signal Processing,1999,47(12):3277-3288.

[4]覃景繁,欧阳景正.一种新的变步长自适应滤波算法[J].数据采集与处理,1997,12(3):171-194.

[5]高鹰,谢胜利.一种变步长LMS自适应滤波算法及分析[J].电子学报,2001,(8):1094-1097.

[6]罗小东,贾振红,王强.一种新的变步长LMS自适应滤波算法[J].电子学报,2006,34(6):1123-1126.

[7]TANG J,ZHANG S J,WANG J.An improved vari-able step size LMS adaptive filtering algorithm and itsanalysis[C]∥Proc.Of International Conference on Com-munication Technology,Guilin,2006:1-4.

改进自适应均值滤波器 篇7

在过去几十年中, 模糊分割方法, 尤其是模糊C均值算法 (FCM) , 被广泛用于图像分割中 (Udupa和Samarasekera1996年;Yamany等, 1999年) , 该方法将模糊函数用于图像的每个像素中, 且能保留更多的图像信息 (Pham和Prince, 1999年) 。然而, 大多数的无监督模糊聚类算法都是提前假定一个聚类数量C, 但在实际情况中, 聚类的数目往往是未知或无法确定的, 甚至是估计值。因此, 确定聚类的最佳数目是一个具有挑战性的任务[1]。

本文首先介绍了自动模糊C均值聚类算法 (AFCM) , 它提出了一种可确定聚类数目的方法。为了得到更好的分割质量, 本文提出了一种基于AFCM算法的方法, 称为自动改进的模糊C均值聚类分割算法 (AMFCM) 。AMFCM算法将空间信息应用于隶属度函数。并计算每个像素邻域附近隶属函数的加权和作为空间函数。实验的结果表明, AMFCM算法是一种有效的分割方法, 并优于标准的FCM算法和AFCM算法。

本文的其余部分安排如下。在第1章, 简单介绍标准FCM算法。第2章具体阐述AMFCM算法。第3章列出实验结果。本文的结论在第4章。

1 模糊C均值聚类算法

1.1 标准FCM算法

标准的FCM算法是对目标函数进行迭代最小化。目标函数定义如下

条件是:

其中:m∈ (1, ∞) 控制由此产生的模糊性分区, m=2用在本文中, uij表示像素xj在i的隶属度值, dij=‖xj-vi‖表示像素xj和聚类中心vi之间的距离。在图像聚类中, 常用的特征是灰度值或图像的强度。在FCM算法中, 概率仅取决于像素和聚类中心之间的距离。隶属度函数和聚类中心的更新如下[2]:

m=1时, 定义目标函数如下:

条件是:

1.2 聚类有效性函数

为了得到定量的比较, 两种类型的聚类有效性函数、模糊分割和特征结构, 通常都被用来作为其性能评估的标准。模糊分割的代表函数是分配系数Vpc (Bezdek1974) 和划分熵Vpe (Bezdek1975) 。它们的定义如下[3]:

这些有效性函数是指, 该分区用的模糊性越少则性能越好。具体是指, 当值Vpc是最大或Vpe是最小时, 则找到最好的聚类数目。

2 自动改进的模糊C均值算法

2.1 自动模糊C均值算法

标准FCM算法往往是由聚类数目所确定, 并由模糊聚类算法的隶属度值初始化而来。在本文中, 我们提出了一种新方法, 以提高标准FCM算法的分割效果并能自动判断模糊C均值聚类的最佳聚类数目。该算法可以概括为:首先, 使用C均值算法寻找两个与聚类中心接近的两个中心。其次, FCM用于计算迭代的隶属度矩阵。通过计算一个聚类中像素之和与图形所有像素之和来得到每个聚类的像素比值 (popi) 。当至多有两个聚类的比值都小于δ时, 得到最佳的集群。参数δ表示为现有聚类的最小的百分比。所占面积为<10%的集群将被丢弃。因为面积太小对于整个图形来说没有意义。因此, δ的值设定为0.1。

AFCM算法的步骤如下:

步骤1:从原始数据集中随机初始化两个聚类。设m=2, 确定任意ε, 其中ε是一个小的正常数。

步骤2:通过公式 (5) 由硬C均值算法来初始化中心。

步骤3:重复:a.通过公式 (4) 更新聚类中心V (l) ;b.通过公式 (3) 计算隶属度函数U (l) , 直到‖U (l) -U (l+1) ‖<ε停止。

步骤4:检查自动最优聚类数目:

1) 计算popi值:popi=|ci|/n, 其中|ci|是第i组的大小, i=1, 2, …, c, n为图像的总像素数;

2) 当达到最佳聚类数目时, 停止计算, 否则转到步骤5。

步骤5:增加聚类数字c=c+1, 得到新的聚类中心vc, 转到步骤3。

算法结束后, 得到最佳的隶属度矩阵U。然后, 我们就可以得到最终的分割图像。

2.2 自动改进模糊C均值聚类算法

2.2.1 像素的空间特征

一个图像的重要特征是相邻像素是高度相关的。换句话说, 这些相邻像素具有相似的特征值, 根据改进的隶属度函数可知它们应具有相近的隶属度值, 而且属于同一个聚类的可能性很大。在聚类中此空间关系是很重要的, 而它在标准的FCM算法中是不被利用的。当使用标准的模糊C均值算法聚类时, 所有样本都作为分散点。所以标准FCM算法对噪声很敏感。利用空间信息, 空间函数被定义为[4]:

其中:Ωj代表xj在空间域中一个正方形窗口的中心像素。本文使用一个3×3窗口。正如隶属度函数一样, 空间函数hij表示属于第i个聚类中像素xj的概率。如果它的所有邻域像素属于第i聚类, 则空间函数是最大的;如果它的邻域像素都不属于第i个聚类, 则空间函数是最小的。在空间函数中, c是期望的聚类数目, βt是邻域xt的辅助系数, 权重uit是第i个聚类中邻域xt的隶属度。βt代表属于整体空间相异性的邻域xt的隶属度系数。一般情况下, 邻域越近, 相互作用越显著。因此, 对于每邻域xt, βt是像素点j和t之间距离的一个非递增函数, 定义如下:

随着两像素之间距离的增加, 系数θ决定迭代的速度。一个小θ导致了不同的邻域的相似性;而一个大θ使得空间差异性高度依赖于这些邻域。本文中, θ设定为0.6。

2.2.2 自动改进FCM算法

随着像素的空间特征提取, 修改后的隶属度函数定义如下[5]:

新的聚类中心如下:

则AMFCM算法总结为以下步骤:

步骤1:通过AFCM算法获得聚类的数目。

步骤2:通过公式 (9) 和公式 (10) 计算空间函数hij和βt。

步骤3:通过公式 (12) 更新聚类中心V (l) 。

步骤4:通过公式 (11) 更新隶属度矩阵U (l) 。

步骤5:如果‖U (l) -U (l+1) ‖<ε则停止;否则, 跳到步骤2。

3 实验结果和分析

在本节中, 对256*256像素的工件图像分别进行了三种算法 (FCM, AFCM和AMFCM) 的测试。原图像在图1中显示。对于所有的情况, 除非另有说明, 则取模糊加权指数为m=3, δ=0.1, ε=1e-3。所有的算法都在VC++6.0中编码实现。图2、3、4分别显示了FCM、AFCM、AMFCM算法的分割结果图像。表1列出三种算法的有效性函数值。由表可见, AFCM算法的Vpc值最小, 而Vpe值最大。该算法虽然可以自动检测出聚类数目, 但它的分割效果是最差的。事实上, AMFCM算法的Vpc最大, 而Vpe最小, 它不仅能够自动检测出聚类数目而且分割效果好。

4 结论

FCM算法是图像分割算法中最常用的方法之一。当我们使用标准的FCM算法时, 聚类数目必须是预先已知的。为了克服这种条件的限制, 提出了一种新的AFCM算法, 它的一个重要特征是能自动查找聚类的最优数目。然而, AFCM的分割质量很差, 本文提出一种新的AMFCM算法, 该算法不仅能够自动找到聚类的最优数目, 而且能够获得较好的分割质量。实验结果表明, 所提出AMFCM算法优于标准的FCM算法和AFCM算法。

参考文献

[1]郭华磊, 马苗.改进的模糊C均值聚类的图像分割算法[J].计算机工程与应用, 2011, 47 (1) :176-178.

[2]Shelokar PS, Jayaraman VK, Kulkami BD.An Ant Colony Approach for Clustering[J].Anal Chim Acta, 2004, 509 (2) :187-195.

[3]Huang GR, Wang XF, Cao XB.Ant Colony Optimization Algorithm Based on Directional Pheromone Diffusion[J].Chin J Electron, 2006, 15 (3) :447-450.

[4]Hall LO, Kanade PM.Fuzzy Ants and Clustering[J].IEEE Trans Syst Man Cybern A Syst Hum, 2007, 37 (5) :758-769.

改进自适应均值滤波器 篇8

移动机器人在未知环境中如何实现真正的自主导航问题, 在机器人研究领域获得了极为广泛的关注。同时定位与地图构建 (Simultaneous Localization And Map Building, SLAM) 是实现机器人真正自主导航的关键技术之一[1]。SLAM是指机器人在未知环境中, 依靠自身携带的传感器递增式地创建环境地图, 同时利用已创建的环境地图来估计出机器人在地图中的位置。

最初SLAM算法是在Ayache、Faugeras[2]和Chatila、Laumond[3]工作的基础上, 由Smith、Self和Cheeseman[4]提出来的。典型的SLAM算法包括基于卡尔曼滤波框架下的扩展卡尔曼滤波算法 (EKF SLAM) [5]、无迹卡尔曼滤波算法 (UKF SLAM) [6]、压缩扩展卡尔曼滤算法 (CEKF SLAM) [7]等和基于粒子滤波框架下的快速同时定位与构图算法 (Fast SLAM) [8]、Rao-Blackwellized[9]粒子滤波算法、DP SLAM算法[10]等, 以及基于信息滤波框架下的扩展信息滤波算法 (EIF SLAM) [11]、稀疏扩展信息滤波算法 (SEIF) [12]、精确稀疏扩展信息滤波算法 (ESEIF SLAM) [13]等。S.Thrun[12]通过经验观测发现, 信息矩阵具有自然稀疏的特性。利用这一特性, 他提出了著名的稀疏扩展信息滤波 (Sparse Extended Information Filter, SEIF) SLAM算法;该算法通过消除机器人与环境特征间的弱连接来进一步保持信息矩阵的稀疏性;Walter[13]则采用不同的稀疏规则, 提出了精确稀疏扩展信息滤波 (Exactly Sparse Extended Information Filter, ESEIF) SLAM算法, 虽然该算法的稀疏规则能得到较好的结果, 但它需要利用地图中已观测到的环境特征来对位姿重定位, 故具有一定的适用缺陷;文献[14]提出了完备信息稀疏规则, 该规则考虑到预测时刻的观测信息, 一定程度上提高了算法的精度及一致性。

除了以上关于稀疏规则的改进外, 在SEIF SLAM中, 还有一个关键因素[12]—状态均值恢复, 由于在这方面的研究较少, 主要是采用迭代算法[15]来恢复均值, 为了保证算法的收敛性, 其迭代次数必然会增加, 随之计算复杂度就相应增高, 使之难以应用到更大环境范围内;改进算法从矩阵求逆角度出发, 克服了算法不易收敛性的同时, 进一步提高了算法计算效率。

2 稀疏扩展信息滤波SLAM算法

2.1 运动更新

假设机器人运动模型为:

xt为t时刻位姿, δt也是一个高斯随机向量, 其均值也为0, 协方差矩阵为Qt。运动更新的信息矩阵和信息向量可表示为:

其中

2.2 观测更新

假设机器人观测模型为

εt是一个高斯随机向量, 其均值为0, 协方差矩阵为Rt;yt=[xt, M]为系统增广状态向量;zt为在t时刻的观测量。观测更新的信息矩阵和信息向量可表示为:

其中

2.3 稀疏化

为了稀疏化信息矩阵, 令θx为机器人与特征的关联数上界, θy为特征点之间的关联数上界。当机器人移动或者观测到新特征点的时候, 就会超出阈值θx或者θy, 这时就需要稀疏化信息矩阵。

为了更明确的表示, 把所有特征分为三个互不连接的子集m=m++m0+m-, 其中m+表示保持与位姿相连的主动特征的集合;m0表示将要由主动特征变为被动特征的特征集合;m-表示当前所有被动特征的集合。所以m+∪m0表示当前所有主动特征的集合。系统的联合后验分布可表示为:

在上面公式最后一步第一项中, 如果主动特征m+和m0是已知的, 那么位姿xt与被动特征m-无关, 因此可以设置m-为任意值, 如上面将其设为零。

根据"D-分离"[16]原理将一个主动特征m1与位姿xt+1之间的连接移除, 把m1由主动特征变为被动特征, 使机器人位姿与环境特征之间的连接数维持在θx以下, 使得信息矩阵达到真正的稀疏化。即可用式子p (xt|m+, m-=0) 来替代p (xt|m+, m0, m-=0) , 由此得出

2.4 状态恢复

在SEIF SLAM中的最后步骤是关于均值μt的恢复。它在运动更新中的式 (3) 、观测更新中的式 (6) 以及稀疏化步骤均有涉及。精确的恢复方法是通过μt=Ωt-1ξt进行直接计算, 由于这里存在一个超高维信息矩阵的求逆问题, 标准SEIF SLAM采用迭代的方法来近似处理, 增加了算法的时间复杂度;所以本文利用算法中信息矩阵的稀疏性特点, 通过数学矩阵求逆的方式来直接求解信息矩阵的逆, 从而可以加快状态均值μt的恢复。

3 三对角矩阵求逆算法

在SEIF SLAM算法中需要恢复状态向量均值μt=Ωt-1ξt, 其中存在信息矩阵Ωt的求逆问题。随着机器人的不断运动, 地图特征数量不断增加, SLAM信息矩阵将构成超多维矩阵, 而对矩阵求逆计算复杂度为O (n3) (n是矩阵的维数) 。

为了进一步提高标准SEIF SLAM算法计算效率, 根据信息矩阵数据分布的基本形态--数据主要集中在主对角线附近, 且是对称的、对角占优的Hermite矩阵, 这一特性;利用快速三对角矩阵求逆方法来解决信息矩阵求逆问题, 由于不需要直接对高维的信息矩阵求逆, 从而算法的运算量大大降低, 使计算状态向量均值的时间大大提高。

3.1 信息矩阵分解

假设信息矩阵为Ω, 将其分解为Ω1和Ω2, 其中Ω1为三对角矩阵。

由于矩阵Ω满足前述条件, 根据矩阵公式, 则有如下结果

那么, Ω-1的一阶近似为

信息矩阵求逆问题转化为三对角阵Ω1逆的计算和矩阵乘积问题。

3.2 三角矩阵求逆算法

首先讨论三对角阵Ω1逆的计算快速实现, 为证明方便, 设Ω1=diag (ai, bi, ci) , 即

满足如下:

令, 可由下述快速算法求得:

第一步:令

第二步:计算

第三步:对于j=2, …, n-1分别计算

证明:设Xj= (x1, j, x2, j, …, xn, j) T, 并用Ej表示n阶单位方阵的第j列, 分三种情况:

i) 先考虑方程组Ω1X1=E1, 由 (16) 、 (17) 式可知, 对i=n, n-1, …, 2可分别从第i个方程解出xi, 1然后代入第i-1个方程, 由 (19) 式逐个可得

再从 (21) 式出发, 利用 (20) 式依次顺推, 逐个可得

ii) 再考虑方程组Ω1Xn=En, 由 (15) 、 (17) 式可知, 对i=1, …, n-1, 可分别从第i个方程解出xi, n, 代入第i+1个方程, 由 (18) 式逐个可得

再从 (24) 式出发, 利用 (23) 式依次倒推, 逐个可得

iii) 考虑方程组Ω1Xj=Ej, j=2, …, n-1, 对任意给定的j, 2≤j≤n-1。首先, 仿i) , 从第n个方程开始依次倒推, 由 (17) 、 (19) 式逐个可得

仿ii) , 从第一个方程开始依次顺推, 由 (17) 、 (18) 式逐个可得

然后, 分别从 (26) 、 (27) 式得出xj+1, j, xj-1, j的表达式, 将它们代入第j个方程, 由 (17) 式得到

最后, 从 (28) 式出发, 利用 (26) 式依次倒推, 逐个可得

再从 (28) 出发, 利用 (27) 式依次顺推, 逐个可得

由上面得到的 (21) 、 (22) 、 (24) 、 (25) 、 (28) 、 (30) 及 (17) 、 (18) 式, 给出了求逆的快速算法。

4 实验仿真与结果分析

下面是本文设计的测试矩阵分别由快速三对角矩阵求逆和Matlab的求逆方法进行测试和比较。设计的测试矩阵是随机产生的, 且满足对角占优、实对称性的稀疏矩阵。图1给出了计算时间的比较, 结果显示在100阶以下两种方法求逆时间差别不大, 但是随着矩阵的阶数增高, 快速三对角方法求逆计算时间远快于Matlab的求逆方法。

实验仿真环境由一个包含400路标的500x500 (m2) 矩形区域表示, 且每个路标之间的最小距离不低于2m, 如图2示, 图中点状为特征点, 线条为路径。在仿真实验中, 机器人移动速度为3 m/s, 角速度为π/15 rad/s, 最大转角是π/5 rad/s, 运动控制时间步为0.05s, 在运动过程中, 机器人的速度以及角速度噪声分别为0.02 m/s和π/240 rad/s;其观测距离为40m, 观测时间间隔为0.2s, 观测距离以及角度噪声为分别为0.09 m和π/240 rad/s。在实验中, 把活动特征点的稀疏阈值固定为9。

在相同机器人初始状态和环境条件下, 改进算法和标准SEIF SLAM算法的计算效率比较如图3所示, 可见, 改进算法的计算速度相比标准SEIF SLAM算法计算效率明显提高。

为了更进一步探讨状态均值恢复计算效率的提高对整个算法的影响, 分别对改进算法和标准SEIF SLAM算法在运动更新阶段以及观测更新阶段的计算效率进行对比;由于在运动更新阶段和观测更新阶段的计算当中均需要对状态向量均值进行计算, 见式 (4) 以及 (8) ;故在其他因子不变的前提下, 当状态均值计算效率提高, 那么运动以及观测更新阶段的计算效率也会随之提高, 见图4和图5所示。

综上, 仿真实验对比可知, 改进算法的计算效率相比标准SEIF SLAM算法更优。

5 结束语

注:本文为网友上传,旨在传播知识,不代表本站观点,与本站立场无关。若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:66553826@qq.com

上一篇:培训观点分享 下一篇:弹塑性有限单元法在岩石高边坡稳定分析中的应用