文档库 最新最全的文档下载
当前位置:文档库 › 几种改进的粒子滤波算法性能比较

几种改进的粒子滤波算法性能比较

几种改进的粒子滤波算法性能比较
几种改进的粒子滤波算法性能比较

第26卷 第4期计 算 机 仿 真2009年4月 文章编号:1006-9348(2009)04-0120-05

几种改进的粒子滤波算法性能比较

相 威1,汪立新1,2,林孝焰1

(1.杭州电子科技大学通信工程学院,浙江杭州310018;

2.通信系统信息控制技术国家级重点实验室,浙江嘉兴314001)

摘要:粒子滤波算法摆脱了解决非高斯滤波问题时随机量必须满足高斯分布的制约,近年来广泛应用于跟踪与定位研究中。

与粒子滤波有关的一个普遍问题是退化现象,增加粒子个数可以部分的解决这个问题,同时马尔可夫链的引入可以使粒子

分布更加合理,因此建议分布的选择是至关重要的。分析粒子滤波原理后,将马尔可夫链蒙特卡罗法方法引入粒子滤波算

法的实现中,结合扩展卡尔曼滤波和不敏卡尔曼滤波两种建议分布进行仿真。仿真结果展示了改进的粒子滤波算法的良好

性能,而且粒子退化现象得到有效遏制。

关键词:粒子滤波;马尔可夫链蒙特卡罗法;建议分布;扩展卡尔曼滤波;不敏卡尔曼滤波

中图分类号:T N974 文献标识码:A

Co m par ison of So m e Im proved Parti cle F ilters

X I A NG W ei1,WANG L i-xin1,2,L I N Xiao-yan1

(1.College of Communicati on Engineering,Hangzhou D ianzi University,Hangzhou Zhejiang310018,China;

2.Nati onal Laborat ory of I nfor mati on Contr ol Technol ogy f or Communicati on Syste m,J iaxing Zhejiang314001,China)

ABSTRACT:Particle filter overcomes the restricti on that st ochastic variant must be Gaussian when dealing with the

non-Gaussian filtering p r oble m,and iswidely used in the tracking and l ocating recently.The unavoidable degenera2

cy p r oble m in particle filter can be s olved t o s ome extent by increasing the nu mber of particle.A t the sa me ti m e,u2

sing Markov Chain can make the particle distributi on more reas onable,s o the selecti on of the p r oposal distributi on is

crucial.I n this paper,after analyzing the p rinci p le of particle filter,MC MC is br ought f or ward t o realize this method

and combined with t w o kinds of p r oposal i m portance distributi on(EKF and UKF)t o carry out the si m ulati on.The

si m ulati on results indicate the good perf or mance of these i m p r oved particle filters and the degeneracy p r oble m is avoi2

ded efficiently.

KE YWO R D S:Particle filter;MC MC;Pr oposal distributi on;EKF;UKF

1 引言

在非线性动态系统的定位和跟踪方法中,扩展卡尔曼算法(EKF)和采用UT变换的UKF(Unscented Kal m an filter)算法是目前广泛采用的方法。EKF算法是通过对非线性系统的一阶线性化即泰勒级数展开在一阶截断来实现滤波,因而EKF算法引入了额外的误差导致滤波常常发散[1]。为了减少EKF的近似误差,Julia等人提出了UKF算法。UKF算法是在UT变换的基础上结合卡尔曼滤波算法得到的,应用于非线性高斯系统的状态估计中。UKF算法不用计算雅可比矩阵,其高斯随机变量的后验均值和协方差可以精确到两阶[2]。因此,UKF算法广泛应用于目标跟踪定位和神经网络训练中。

UKF算法逼近精度虽然高,但也局限于高斯分布情况下。由于粒子滤波不受非线性、非高斯滤波问题的限制,因而是近年来广泛研究的一种贝叶斯次优估计算法。它是针对非线性系统的一种随机抽样算法,其性能在很大程度上取决于重要性分布的设计。本文在选择重要性分布的同时引入了统计理论中的MC MC(Markov Chain Monte Carl o)方法,对所选的重要性分布进行优化处理。本文详细论述了MC2 MC方法在Bayes参数估计中的应用,结合EKF和UKF两种建议分布进行仿真并分析了几种改进的粒子滤波算法的性能。

收稿日期:2008-03-12 修回日期:2008-03-17

2 粒子滤波算法

粒子滤波算法是一种基于Bayes 原理用粒子概率密度表示的序贯Mont Carl o 模拟方法。通过蒙特卡罗方法随机抽取一组带有权值的粒子来逼近后验概率密度分布,并序贯预测与更新状态。假定系统模型为:

x k +1=f (x k )+w k +1(1)z k =h (x k )+v k

(2)

其中f (?)和h (?)都表示非线性函数,w k +1和v k 为互不相关的零均值的过程噪声和测量噪声,其协方差分别为Q k 和R k 。

用X k =x 1,…,x k ,Z k =z 1,…,z k 分别表示k 时刻的

状态序列和观测值序列。假设状态变量的初始概率密度已知,则贝叶斯递推状态预测方程和状态更新方程分别为:

p (x k Z k -1)=∫

p (x k x k -1)p (x k -1Z k -1)dx k -1(3)p (

x k Z k )=p (z k x k )p (x k Z k -1)/p (z k Z k -1)

(4)

其中p (x k x k -1)为转移先验分布,p (z k Z k -1)为归一化

常数。

通常很难直接从后验概率密度进行抽样,可以通过引入一个容易抽样的已知概率密度分布函数q (X k Z k )抽样来逼近,状态概率密度分布可以用下式近似表示:

p (X k Z k )≈

∑N

i =1

w i k

δ(X

k

-X i

k )

(5)

其中X i k

是k 时刻从重要性分布q (X k Z k )上随机抽取的第i 个粒子,w i k

为归一化粒子重要性权值,δ(?)是狄拉克脉冲函数。通过推导可以得到粒子重要性权值的递推公式:

w i

k =

w

i k -1

p (z k x i k

)p (x i k

x

i k -1

)

q (x

i k

X

i k -1,Z k )

(6)

重要性分布的选取原则是使得重要性权值的方差最小[3]

。从q (X k Z k )中抽取N 个带权值的粒子,当接收到新的观测数据时,实时更新每个粒子的权值。经过若干递推步骤后,可能除了某些粒子,其余的粒子权值都趋近于零,为了避免这种粒子退化现象,Gorden 等提出了重抽样方法[4],即对权值进行评价后,对粒子群进行重抽样,复制权值大的粒子而去除权值小的粒子。

3 几种改进的粒子滤波的算法

如果最优建议分布是非线性的,可以用推广卡尔曼滤波

器(Extended Kal m an Filter,EKF )进行目标的状态估计。由式(2)

将h (?)围绕x k |k -1展成泰勒级数,取其一次项,得到近似表达式:

z k h (x k |k -1)+

5h (x k )

5x k |

x k =x k |k -1(x k

-x k |k -1)+v k (7)

将上式写成如下形式:

z k Ηk x k +M k +v k

(8)

式中,

H k =

5h (x k )

5x k

|x k =x k |k -1

>

5h 1(x k )5x 1k 5h 1(x k )5x 2k …5h 1(x k )

5x N k 5h 2(x k )5x 1k

5h 2(x k )

5x 2k

5h 2(x k )5x N k

………5h M (x k )5x 1k

5h M (x k )5x 2k

5h M (x k )5x N k

M k =h (x k|k -1)-H k x k|k -1

设被估值系统的状态方程和测量方程为:

x k +1=Φk +1x k +w k

(9)z k +1=Ηk +1x k +1+M k +1+v k +1

(10)式中,x 是N 维状态矢量,Φ是N ×N 阶状态转移矩阵,w 是

N 维动态噪声向量,z 是M 维测量向量,H 是M ×N 阶测量矩

阵,v 是M 维测量误差向量,M 是M 维的测量系统的系统误差。则采用EKF 建议分布粒子滤波算法(EPF )的详细实现过程如下[5-7]:

1)初始化:

令k =0,通过初始概率密度分布p (x 0)抽取样本点,得到N 点的粒子集:

x 1

x 2

x N

给定初值:

x ⌒i

0=E (x i

0)

P i 0=E ((x i 0-x ⌒

i 0)(x i 0-x ⌒

i 0)T )

初始化重要性权值:

w i

k -1=1/N

2)用EKF 算法更新采样粒子

^x i k|k -1=Φk x i k -1

P i k|k -1=Φk P i k -1(Φk )T

+Q k

K k =P i k|k -1(H i k )T (H i k P i k|k -1(H i k )T

+R k )

-1

^x i k =^x i k|k -1+K k (z k -h (^x i k|k -1))

P i k =(I -K k H i k )P i

k|k -1

3)状态更新:

x (k |k )=

∑N

i =1

x

i k|k w i

k

与EKF 相似,UKF 也可用来近似粒子滤波的建议分布,这就是Unscented 粒子滤波(UPF )。UPF 的详细实现过程如下[8,9]。

1)初始化

令k =0,通过初始概率密度分布p (x 0)抽取样本点,得到N 点的粒子集:

x 1

x 2

x N

给定初值:

x ⌒i

0=E (x i

0)

P i 0=E ((x i 0-x ⌒

i 0)(x i 0-x ⌒

i 0)T )

初始化重要性权值:

w

i k -1

=1/N

2)用UKF 算法更新采样粒子:

W (m )i =W (c )i =1/2(N +λ)

x ⌒i ,k -1=x ⌒

k -1+(

(N +λ)P k -1)i i =1,…,N x ⌒

i ,k -1=x ⌒

k -1-((N +λ)P k -1)i-L i =N +1, (2)

式中,((N +λ)P k -1)i 为矩阵

(N +λ)P k -1的第i 行(或列)。

时间更新:

χ3i ,k|k -1=f (χi ,k -1,w k )

x ⌒-k|k -1=

2N

i =0

W (m )

i

χ

3

i ,k|k -1

P

-k

=

2N

i =0

W (c )

i

((χ

3

i ,k|k -1

-x ⌒-k|k -1)(χ

3

i ,k|k -1

-x ⌒-k|k -1)T

)+

Q (k ), y i ,k|k -1=h (χ3

i ,k|k -1)

y ⌒-

k =

2N

i =0

W (m )

i

y i ,k|k -1

量测更新方程:

P y k y k =

2N

i =0

W (c )

i

(y i ,k|k -1-y ⌒-k )(y i ,k|k -1-y ⌒

-k )T +R (k )

P x k y k =

2N

i =0

W (c )i

(χ3i ,k|k -1-x ⌒

-k )(y i ,k|k -1-y ⌒

-k )

T k k =P x k y k P -1

y k y k

x ⌒

k =x ⌒-k +k k (z

k -y ⌒

-k )

P k =P

-k

-k k P y k y k k

T

k

式中,L 为状态向量维数,Q (k )是过程噪声的方差,R (k )是

量测噪声的方差。

3)状态更新:

x (k |k )=

N

i =1

x i k w i

k

相对而言,MC MC 方法是将随机过程中的马尔可夫过程

引入到Monte Carl o 模拟中,实现动态模拟,其基本思路是通过构造一个平稳分布为目标分布π的马尔可夫链,得到π的样本,从而做出各种统计推断。在Bayes 参数估计应用中,如果将MC MC 方法应用到重要性采样中,后验密度p (x k

Z k )就是目标密度π,关键是构造一个各态历经的马尔可夫链,具有与所期望的目标密度p (?)等价的平稳分布p 3

(?)。关于MC MC 方法主要有两类算法:MH (M etr opolis

Hastings )算法和Gibbs 采样方法[10]

。本文采用的是MH 算法。对于给定的状态X k =x,从所选择的重要性分布中产生一些备择点x ′,下一状态就在这些备择点中产生。备择点的接受概率计算公式为:

ρ(x,x ′)=m in p (x ′)p (x )q (x x ′)q (x ′x )

,1

(11)

若接受备择点,则X k +1=X ′;若拒绝备择点,则X k +1=X k 。

MH 算法的具体实现步骤如下:

1)初始化参数X 0,k =0。

2)根据选择的重要性分布q (?X k )产生备择点X ′。3)从U (0,1)均匀分布中产生一个参考接受率U,与(11)式所得结果比较做出接受与拒绝的判决。当ρ(x x ′)

≥U 时,接受备择点X ′,X k +1=X ′;否则保持X k +1=X k 。

MH 算法有两个特别的优点使其对于Bayes 分析特别有

用:一是根据不同的特定条件,我们可以选择比较容易采样的分布函数q (?);二是不需要(11)式中p (?)的规范化常数,因为在计算时候可以相互抵消[10]。

基于MC MC 方法的粒子滤波算法的具体实现步骤如下:

1)初始化分布

通过初始概率密度分布p (x 0)抽取样本点,得到N 点的

粒子集:x 1

x 2

x N

0。

2)时间更新(预测)

对k -1时刻的粒子,根据系统状态方程,采用MH 算法进行重要性采样,得到k 时刻的一组新的预测粒

子:^x

1k ^x 2

k

^x N

k

3)测量更新(滤波)

根据观测方程,按重要性权值递推式(6),可以递推计算重要性权值w i k ,归一化权值:

w i

k

=w i k /

∑N

j =1w

j k

计算状态后验均值和方差:

x k =

∑N

j =1

w

j k

^x j

k

P k =

∑N

j =1

W

j k (^x j k - x k )(^x j k - x k )T

4)重采样

重复步骤2)、3)、4)。

4 仿真结果与分析

为了便于仿真,采用以下的非线性序列生成仿真系统,系统定义为:

x (k +1)y (k +1)

=

1+sin (4310

-2

πk )+0.5x (k )+k +w (k )1+sin (4310

-2

πk )+0.5y 2(k )+k +w (k )

z (k )=

0.5x (k )-2+υ(k )

0.5y (k )-2+υ(k )

当k >300.2x 2

(k )+υ(k )0.2y 2

(k )+υ(k )

当k ≤30

初始状态分布p (x 0)~

Ν(0,0.75)。过程噪声w (k )服从ga mma (3,2)分布,方差为0175。

仿真的测量噪声υ(k )为高斯白噪声,υ(k )~N (0,

10

-5

),采样的粒子数N 取100,进行60次蒙特卡罗仿真实

验。由系统方程得到的真实状态值如图1所示,分别采用

PF、PF-EKF、PF-UKF、PF-MC、PF-EKF-MC和PF-

UKF-MC等六种滤波算法进行状态估计,得到的状态估计

如图2所示,六种滤波算法的状态估计均方误差和实时性比

较分别如图3和图4所示。通过仿真得到PF、PF-EKF、PF

-UKF、PF-MC、PF-EKF-MC、PF-UKF-MC等六种算法

的均方误差分别为:0160583、01080678、01033716、0159548、

01081412、01032632。

图4 N=100时几种实时性比较

由仿真结果可知:从跟踪效果上分析,几种粒子滤波算

法的性能依次为PF-UKF-MC、PF-UKF、PF-EKF、PF-

EKF-MC、PF-MC、PF;从运算量及实时性分析,几种粒子

滤波算法依次为PF、PF-MC、PF-EKF、PF-EKF-MC、PF

-UKF、PF-UKF-MC。因此,MC MC方法对于纯粹采用PF

算法和采用EKF和UKF两种建议分布的粒子滤波算法性能

上都有所提高,并且粒子退化现象得到有效遏制,但是增加

了运算量。在实际应用中,就要权衡实时要求和滤波精度要

求,选择最适合的滤波算法。

5 结论

粒子滤波方法是一种基于贝叶斯估计的非线性滤波算

法,由于是近年来出现的新算法,仍有大量的问题亟待解决。

本文中的改进算法不仅是可行的,而且在滤波性能方面也有

不同程度的提高。随着计算机技术的发展,这种改进的粒子

滤波算法将在处理非高斯非线性时变系统的参数估计和状

态滤波问题方面有更加广泛的应用。

参考文献:

[1] K Xi ong,H Y Zhang,C W Chan.Perf or mance evaluati on of UKF

based nonlinear filtering[R].Aut omatica,February,2006,42

(2):261-270.

[2] E W an,R van derMer we.The unscented Kal m an filter for nonlin2

ear esti m ati on[C].Adap tive Syste m s f or Signal Pr oce-ssing,

Communicati ons and Contr ol Sy mposium,Lake Louis-e,A lta,

US A,2000.

[3] A Doucet,S J Godsill,C Andrieu.On sequential Monte car-l o

sa mp ling methods f or Bayesian filtering[J].Statistics and Compu2

ting,2000,10(3):197-208.

[4] M Sanjeev A rulampala m,B R istic,N Gordon.Bearings only

tracking of manoeuvring targets using particle filters[C].EUR2

ASI P Journal on App lied Signal Pr ocessing,2004,15:2351

-2365.

[5] Doucet .Rao -B lack wellised particle filtering for dynam ic Bayes 2

ian net w orks [C ].Pr oc UA I 2000,Cambridge U K,Calnbridge Univ Press,20001253-259.

[6] R Chen .M ixture Kal m an filters [J ].J Roy Statist Soc (B ),

2000,62:493-508.

[7] A Doucet .On sequentialMonte Carl o sa mp ling methods for Bayes 2

ian filtering[J ].Statist Comput,2000,10:197-208.

[8] R Van Der Mer we .The Unscented Particle Filter .Adv Neural I n 2

f or m Pr ocess Syst [M ].Massachusetts:M I T Pres -s,20001353-359.

[9] E W an .The unscented Kal m an filter[M ].Haykin S .Kal m an Fil 2

tering and Neural Net w orks [C ].Ne w York:W iley,20011146-153.

[10]

 J Spall .Esti m ati on via Markov Chain Monte Carl o [J ].

I EEE

Contr ol System sMagazine,Ap rail,2003134-45.

[作者简介]

相 威(198316-),男(汉族),山东乳山人,杭州

电子科技大学研究生,研究方向:目标检测与跟踪,数据融合。

汪立新(1966110-),男(汉族),浙江萧山人,硕

士生导师,教授,研究方向:信号与信息处理,软件无线电。

林孝焰(198319-),男(汉族),浙江温州人,硕士学位,研究方向:

目标检测与跟踪。

(上接第33页)

S v 垂直方向上噪声的协方差S f ,S g 接收机时钟模型的噪声协方差

5 仿真分析及结论

设S p =100,S v =25,S f =S g =0101,采样时间1分钟,采样间隔014秒。分别采用线性卡尔曼滤波和扩展卡尔曼滤

波对系统进行估计,得到的结果如图4所示(为东向位置误差的估计值,虚线表示线性卡尔曼得到的结果,实线表示扩展卡尔曼滤波得到的结果

)。

图4 仿真结果

从图中可以看出,卡尔曼滤波能有效降低系统的噪声水

平。相对线性卡尔曼滤波,扩展卡尔曼滤波更适合系统为非

线性的情况。由于无人机在飞行过程中会受到许多非线性因素的影响,为了得到更加准确的系统描述,应采用扩展卡尔曼滤波方法。参考文献:

[1] 秦永元,张洪钺,汪叔华.卡尔曼滤波与组合导航原理[M ].西

安:西北工业大学出版社,1998.

[2] 张宗麟.惯性导航与组合导航[M ].北京:国防工业出版

社,2001.

[3] Jouni Hartikanien and Si m o Sarkk .Op ti m al Filtering with Kal m an

Filters and S moothers -a Manual for Matlab Toolbox EKF /UKF [J ].Journal of the American Statistical A ss ociati on,2007.[4] S Peter .Maybeck .St ochastic models,esti -mati on and contr ol

[M ].Acade m ic Press .Ne w York .,1979.

[5] Creg W elch and Gary B ishop.An I ntr oducti on t o the Kal m an Fil 2

ters[J ].Journal of Basic Engineering,2001.

[作者简介]

王 浩(198015-),男(汉族),安徽凤阳人,博士

研究生,研究方向:无人机导航与控制,常规弹药制导化。

黄长强(196212-),男(汉族),江苏如东人,博

士,教授,研究方向:无人机及精确制导武器总体设计。

吴文超(1980110-),男(汉族),山东胶南人,硕士研究生,研究方

向:机载精确制导武器总体技术。

一种改进的粒子滤波重采样算法研究_金玉柱

2011年4月第4期 电子测试 ELECTRONIC TEST Apr.2011 No.4一种改进的粒子滤波重采样算法研究 金玉柱,李善姬 (延边大学工学院,吉林 延吉 133002) 摘要:粒子滤波是基于递推的蒙特卡罗模拟方法的总称,可用于任意非线性,非高斯随机系统的状态估计。为了减轻退化现象,引入重采样过程,但重采样过程算法复杂,计算量大,不利于硬件实现,并且会削弱粒子的多样性,从而导致滤波性能下降。提出了一种将局部重采样和优化组合算法结合的重采样算法。将粒子按权值大小分类,小权值的粒子抛弃,大权值的粒子进行复制,将复制的粒子和抛弃的粒子线性组合产生新的粒子,增加了粒子多样性并且只对大权值粒子进行运算,故降低了计算量利于实时系统的硬件实现。仿真结果证明了该算法的有效性。 关键字:粒子滤波; 局部重采样; 优化组合 中图分类号: TP391 文献标识码:A Research of improved particle filter resampling algorithm Jin Yuzhu, Li Shanji (College of Engineering, Yanbian University, Yanji 133002, China) Abstract: Particle filtering is a sequential Monte Carlo simulation algorithm. It can be used to estimate the state of any nonlinear, non-Gaussian system. In order to reduce the degeneracy, the resampling algorithm is adopted. But the resampling process has complex algorithm architecture, which have restricted its implementation in real-time system. Resampling process also leads to the loss of diversity of particles, and the loss makes filter’s performance worse. A new algorithm-partial resampling combined with optimizing combination resampling method is proposed. Assort the particles by their weights, the particles which have low weights are abandoned and the particles which have high weights are reproduced, and generate new particles by combining the reproduced particles and abandoned particles. This new method partly overcomes the loss of diversity and because it simply operates to the high weights particle so its calculation is simplified. And it is propitious to implement by hardware. The simulation results prove the effectiveness of the proposed method. Keywords : particle filtering; partial resampling; optimizing combination 0 引言 粒子滤波器,又称序贯蒙特卡罗方法。可以有效地处理非线性、非高斯滤波问题,广泛地应用在机动目标跟踪、信号传输与压缩、金融领域数据分析、图像处理、故障诊断等领域。所谓粒子滤波就是贝叶斯估计基于抽样理论的一种近似算法,通过非参数化的蒙特卡罗模拟方法来实现递推贝叶斯滤波,即通过一组动态状态空间上按贝叶斯准则进行更新的随机加权的样本或粒子,对未知状态的后验概率密度进行估计,其中这些粒子通过对后验密度序贯重

几种非线性滤波算法的研究-内附程序

2017 年秋季学期研究生课程考核 (读书报告、研究报告) 考核科目:雷达系统导论 学生所在(系):电子与信息工程学院 学生所在学科:电子与同学工程 学生姓名: 学号: 学生类别: 考核结果阅卷人 第 1 页(共页)

几种非线性滤波算法的介绍与性能分析 作者姓名:学号: 专业院系:电信学院电子工程系 电子邮件: 摘要—非线性滤波算法在雷达目标跟踪中有着重要的应用,对雷达的跟踪性能有着至关重要的影响。好的滤波算法有利于目标航迹的建立及保持,能够得到较精确的目标位置,为发现目标后的后续工作提供可靠的数据依据。本文重点介绍了雷达数据处理中的几种非线性滤波算法:扩展卡尔曼滤波(EKF)、不敏卡尔曼滤波(UKF)、粒子滤波(PF),并且给出了一个利用这三种算法进行数据处理的一个实例,通过这个实例对比分析了这三种算法的性能以及优劣。 关键字—非线性滤波算法;扩展卡尔曼滤波;不敏卡尔曼滤波;粒子滤波; I.概述(一级表题格式) 在雷达对目标进行跟踪前要先对目标进行检测。对于满足检测条件的目标就需要进行跟踪,在跟踪的过程中可以利用新获得的数据完成对目标的进一步检测比如去除虚假目标等,同时利用跟踪获得数据可以进一步完成对目标动态特性的检测和识别。因此对目标进行准确的跟踪是雷达性能的一个重要指标。在检测到满足条件的目标后,根据目标运动状态建立目标运动模型,然后对目标跟踪算法进行设计,这是雷达目标跟踪中的核心部分。 目前主要的跟踪算法包括线性自回归滤波,两点外推滤波、维纳滤波、- αβ滤波、加权最小二乘滤波、维纳滤波和卡尔曼滤波[1]。对于线性系统而言最优滤波的方法就是卡尔曼滤波,卡尔曼滤波是线性高斯模型下的最优状态估计算法。但是实际问题中目标的运动模型往往不是线性的,因此卡尔曼滤波具有很大的局限性。目前主要用的非线性滤波算法可以分为高斯滤波和粒子滤波[2]。不敏卡尔曼滤波和扩展卡尔曼滤波就是高斯滤波中的典型代表,也是应用相对较为广泛的。粒子滤波的应用范围比高斯滤波的适用范围要广,对于系统状态非线性,观测模型非高斯等问题都有很好的适用性。本文具体分析阐述了扩展卡尔曼滤波算法,不敏卡尔曼滤波算法,粒子滤波算法,并且通过一个实例利用仿真的方法分析了这三种算法在滤波性能上的优劣,最后对这三种算法做了一定的总结。 我本科毕业设计题目为《基于历史数据的路径生成算法研究》,由于我是跨专业保研到电信学院,该课题所研究内容不属于雷达系统研究范围,是一种城市路网最快路径生成算法。 II.几种非线性滤波算法 A.扩展卡尔曼滤波 扩展卡尔曼滤波是将非线性系统转换为近似的线性系统的一种方法,其核心思想是围绕滤波值将非线性函数展开成泰勒级数并略去二阶及以上的项,得到一个近似的线性化模型,然后应用卡尔曼滤波完成状态估计。 扩展卡尔曼滤波状态空间模型: k k k w x f+ = + ) ( x 1 状态方程 k k k v x h+ =) ( z观测方程 其中(.) f和(.) h为非线性函数 在扩展卡尔曼滤波中,状态的预测以及观测值的预测由非线性函数计算得出,线性卡尔曼滤波中的状态转移矩阵A阵和观测矩阵H阵由f和h函数的雅克比矩阵代替。 对 (.) f和(.) h Taylor展开,只保留一次项有: ) ? ( ) ?( ) ( k k k k k x x A x f x f- + ≈ ) ? ( ) ?( ) ( k k k k k x x H x h x h- + ≈ 其中: k k x x k k dx df A ?= =为f对 1- k x求导的雅克比矩阵 k k x x k k dx dh H ?= =为h对 1- k x求导的雅克比矩阵 ) ?( ? 1-k k x f x=,于是可以得出: k k k k k k k w x A x f x A x+ - + ≈ + ) ? ) ?( ( 1 k k k k k k k v x H x h x H z+ - + ≈ + ) ? ) ?( ( 1 通过以上变换,将非线性问题线性化。接下来EKF 滤波过程同线性卡尔曼滤波相同,公式如下: )) | (?( ) |1 ( X?k k X f k k= + ) ( ) ( ) | ( ) ( ) |1 (P k Q k k k P k k k+ Φ' Φ = + )1 ( )1 ( ) |1 ( )1 ( )1 (S+ + + ' + + = +k R k H k k P k H k )1 ( )1 ( ) |1 ( )1 ( K1+ + ' + = +-k S k H k k P k

粒子滤波原理和仿真

粒子滤波算法原理和仿真 1 引言 粒子滤波(Particle Filter, PF)是一种基于蒙特卡洛(Monte Carlo, MC)方法的递推贝叶斯滤波算法。其核心思想是通过从状态空间寻找的一系列随机样本来近似系统变量的概率密度函数,以样本均值代替积分运算,从而获得状态的最小方差估计。其中从状态空间中抽取的样本称为“粒子”。一般地,随着粒子数目的增加,粒子的概率密度函数就逐渐逼近状态的概率密度函数,从而达到最优贝叶斯估计的效果。 2 粒子滤波原理 2.1 系统的动态空间 对于被观测对象的状态,可以通过以下非线性离散系统来描述: 11(,)t t t x f x w --= (1) (,)t t t z h x v = (2) 以上为系统的状态方程和观测方程。其中,f ( )为状态函数,h ( )为观测函数,x t 是系统在时间t 的状态变量,w t 为对应的过程噪声,z t 是系统在时间t 的观测值,v t 为对应的观测噪声。 从贝叶斯估计角度来看,状态估计问题就是根据观测信息z 0:t 构造状态的概率密度函数p (x 0:t |z 0:t ),从而估计在系统在任何状态下的滤波值。设系统状态序列函数为g t ,则有: []0:0:0:0:0:()()()t t t t t t x E g x g x p x z dx =? (3) 根据蒙特卡洛方法,后验概率分布可以用有限的离散样本来近似,由大数定律,当系统粒子数N →∞时,期望E [g t (x 0:t )]可近似为: []() 0:0:1 1()()N i t t t t i E g x g x N ==∑ (4) 式中{() 0:i t x : i =1,2,...N }为状态空间中按p (x 0:t |z 0:t )得到的采样点。 2.2 重要性采样 在粒子采集过程中,p (x 0:t |z 0:t )往往是未知且多变的,因此可先从一个已知且容易采样的参考分布q (x 0:t |z 0:t )中抽样,再通过对抽样粒子集进行加权求和来估计系统的状态值,即:

卡尔曼滤波算法总结

Kalman_Filter(float Gyro,float Accel) { Angle+=(Gyro - Q_bias) * dt; Pdot[0]=Q_angle - PP[0][1] - PP[1][0]; Pdot[1]= - PP[1][1]; Pdot[2]= - PP[1][1]; Pdot[3]=Q_gyro; PP[0][0] += Pdot[0] * dt; PP[0][1] += Pdot[1] * dt; PP[1][0] += Pdot[2] * dt; PP[1][1] += Pdot[3] * dt; Angle_err = Accel - Angle; PCt_0 = C_0 * PP[0][0]; PCt_1 = C_0 * PP[1][0]; E = R_angle + C_0 * PCt_0; K_0 = PCt_0 / E; K_1 = PCt_1 / E; t_0 = PCt_0; t_1 = C_0 * PP[0][1]; PP[0][0] -= K_0 * t_0; PP[0][1] -= K_0 * t_1; PP[1][0] -= K_1 * t_0; PP[1][1] -= K_1 * t_1; Angle += K_0 * Angle_err; Q_bias += K_1 * Angle_err; Gyro_x = Gyro - Q_bias; } 首先是卡尔曼滤波的5个方程: -=--+(1)先验估计 X k k AX k k Bu k (|1)(1|1)() -=--+(2)协方差矩阵的预测(|1)(1|1)' P k k AP k k A Q

几种卡尔曼滤波算法理论

自适应卡尔曼滤波 卡尔曼滤波发散的原因 如果卡尔曼滤波是稳定的,随着滤波的推进,卡尔曼滤波估计的精度应该越来越高,滤波误差方差阵也应趋于稳定值或有界值。但在实际应用中,随着量测值数目的增加,由于估计误差的均值和估计误差协方差可能越来越大,使滤波逐渐失去准确估计的作用,这种现象称为卡尔曼滤波发散。 引起滤波器发散的主要原因有两点: (1)描述系统动力学特性的数学模型和噪声估计模型不准确,不能直接真实地反映物理过程,使得模型与获得的量测值不匹配而导致滤波发散。这种由于模型建立过于粗糙或失真所引起的发散称为滤波发散。 (2)由于卡尔曼滤波是递推过程,随着滤波步数的增加,舍入误差将逐渐积累。如果计算机字长不够长,这种积累误差很有可能使估计误差方差阵失去非负定性甚至失去对称性,使滤波增益矩阵逐渐失去合适的加权作用而导致发散。这种由于计算舍入误差所引起的发散称为计算发散。 针对上述卡尔曼滤波发散的原因,目前已经出现了几种有效抑制滤波发散的方法,常用的有衰减记忆滤波、限定记忆滤波、扩充状态滤波、有限下界滤波、平方根滤波、和自适应滤波等。这些方法本质上都是以牺牲滤波器的最优性为代价来抑制滤波发散,也就是说,多数都是次优滤波方法。 自适应滤波 在很多实际系统中,系统过程噪声方差矩阵Q和量测误差方差阵R事先是不知道的,有时甚至连状态转移矩阵 或量测矩阵H也不能确切建立。如果所建立的模型与实际模型不符可能回引起滤波发散。自适应滤波就是这样一种具有抑制滤波发散作用的滤波方法。在滤波过程中,自适应滤波一方面利用量测值修正预测值,同时也对未知的或不确切的系统模型参数和噪声统计参数进行估计修正。自适应滤波的方法很多,包括贝叶斯法、极大似然法、相关法与协方差匹配法,其中最基本也是最重要的是相关法,而相关法可分为输出相关法和新息相关法。

粒子滤波开题报告

毕 业 设 计 (论文) 开 题 报 告 姓名: 学号: 学院: 专业: 课题:基于粒子滤波的移动目标跟踪导师: 时间:

1.本课题研究的目的及意义: 粒子滤波(Particle Filter, PF)是一种基于蒙特卡罗(Monte Carlo)仿真的方法,它利用状态空间的一组带权值的随机样本(粒子)逼近状态变量的概率密度函数,每个样本代表系统的一个可能状态,可以得到状态的最小方差估计。粒子滤波算法摆脱了解决非线性滤波问题时随机量必须满足高斯分布的制约条件,因此,近几年来它在计算机视觉、目标跟踪、机器学习等领域受到了广泛的关注。另外,粒子滤波器的多模态处理能力,也是它应用广泛的原因之一。 本课题主要关注粒子滤波算法在目标跟踪领域的应用,随着计算机技术的发展,人们开始利用计算机来处理数字图像,包括图像增强,图像恢复,图像检索等等,而视频中运动目标的跟踪一直是计算机视觉、图像处理和模式识别等领域非常重要的研究课题。但是传统的目标跟踪方法存在着很多的局限性与不足之处,比如对非刚性目标跟踪时如何准确提取合适的目标特征进行跟踪,以及如何应对跟踪过程中的遮挡问题和复杂背景等等,也就难以保证跟踪的实时性和有效性。然而诸如此类的问题现在可以借助基于粒子仿真的方法来解决,在动态系统的模型选择,故障检测、诊断方面,出现了基于粒子的假设检验、粒子多模型、粒子似然度比检测等方法。同时,粒子滤波较之卡尔曼滤波(Kalman Filter)等在非线性非高斯系统领域中存在的优势,也决定了它的应用范围更加宽泛。 本课题旨在通过研究深入理解粒子滤波的原理及其算法,并利用MATLAB软件的图像处理功能,成功将粒子滤波算法应用于目标跟踪领域,最终实现对视频中运动目标的准确跟踪与检测。 2. 本课题国内外同类研究现状: 基于粒子滤波极强的实用性,国内外学者对此已经进行了大量研究,提出了许多用于跟踪的有效算法。这些方法主要可以分为两类:(1) 基于运动的方法:依据某种强健的算法,把一段时间内的具有运动一致性的点归为一类,如光流法和特征点法,但是计算量较大。(2) 基于模型的方法:主要依据高层的语义表示和知识描述来完成目标的跟踪。利用目标中信息部分的不同,可分为基于目标边界、基于目标区域的方法。但由于目标本身的信息较多,如不加简化,将不可避免地带来信息匹配时的大量运算。因此,对于实时性要求很高的运动目标的跟踪技术而言,如何选取目标的特征信息,并在可靠的前提下简化运算是目标跟踪的关键。本研究将在借鉴前人研究成果的基础

(整理)11种滤波方法+范例代码.

软件滤波算法(转载) 这几天做一个流量检测的东西,其中用到了对数据的处理部分,试了很多种方法,从网上找到这些个滤波算法,贴出来记下 需要注意的是如果用到求平均值的话,注意总和变量是否有溢出,程序没必要照搬,主要学习这些方法,相信做东西的时候都能用得上 1、限幅滤波法(又称程序判断滤波法) A、方法: 根据经验判断,确定两次采样允许的最大偏差值(设为A) 每次检测到新值时判断: 如果本次值与上次值之差<=A,则本次值有效 如果本次值与上次值之差>A,则本次值无效,放弃本次值,用上次值代替本次值 B、优点: 能有效克服因偶然因素引起的脉冲干扰 C、缺点 无法抑制那种周期性的干扰 平滑度差 2、中位值滤波法 A、方法: 连续采样N次(N取奇数) 把N次采样值按大小排列 取中间值为本次有效值 B、优点: 能有效克服因偶然因素引起的波动干扰 对温度、液位的变化缓慢的被测参数有良好的滤波效果 C、缺点: 对流量、速度等快速变化的参数不宜 3、算术平均滤波法 A、方法: 连续取N个采样值进行算术平均运算 N值较大时:信号平滑度较高,但灵敏度较低 N值较小时:信号平滑度较低,但灵敏度较高 N值的选取:一般流量,N=12;压力:N=4 B、优点:

适用于对一般具有随机干扰的信号进行滤波 这样信号的特点是有一个平均值,信号在某一数值范围附近上下波动 C、缺点: 对于测量速度较慢或要求数据计算速度较快的实时控制不适用 比较浪费RAM 4、递推平均滤波法(又称滑动平均滤波法) A、方法: 把连续取N个采样值看成一个队列 队列的长度固定为N 每次采样到一个新数据放入队尾,并扔掉原来队首的一次数据.(先进先出原则) 把队列中的N个数据进行算术平均运算,就可获得新的滤波结果 N值的选取:流量,N=12;压力:N=4;液面,N=4~12;温度,N=1~4 B、优点: 对周期性干扰有良好的抑制作用,平滑度高 适用于高频振荡的系统 C、缺点: 灵敏度低 对偶然出现的脉冲性干扰的抑制作用较差 不易消除由于脉冲干扰所引起的采样值偏差 不适用于脉冲干扰比较严重的场合 比较浪费RAM 5、中位值平均滤波法(又称防脉冲干扰平均滤波法) A、方法: 相当于“中位值滤波法”+“算术平均滤波法” 连续采样N个数据,去掉一个最大值和一个最小值 然后计算N-2个数据的算术平均值 N值的选取:3~14 B、优点: 融合了两种滤波法的优点 对于偶然出现的脉冲性干扰,可消除由于脉冲干扰所引起的采样值偏差 C、缺点: 测量速度较慢,和算术平均滤波法一样 比较浪费RAM

粒子滤波详解

2.4粒子滤波 例子滤波是以贝叶斯滤波和重要性采样为基本框架的。因此,想要掌握例子滤波,对于上述两个基本内容必须有一个初步的了解。重要性采样呢,其实就是根据对粒子的信任程度添加不同的权重,添加权重的规则就是:对于我们信任度高的粒子,给它们添加的权重就相对大一些;否则,就加的权重小一些。根据权重的分布形式,实际上就是它与目标的相似程度。 粒子滤波的结构实际上就是加一层重要性采样思想在里面的蒙特卡罗方法(Monte Carlo method,即以某时间出现的频率来指代该事件的概率)。该方法的基本思想是用一组样本(或称粒子)来近似表示系统的后验概率分布,然后使用这一近似的表示来估计非线性系统的状态。采用此思想,在滤波过程中粒子滤波可以处理任意形式的概率,而不像Kalman滤波只能处理线性高斯分布的概率问题。粒子滤波的一大优势也在于此,因此近年来该算法在许多领域得到成功应用。 2.4.1贝叶斯滤波理论 贝叶斯滤波泛指一类以贝叶斯定理为基础的滤波技术,其根据所获得的观测,对状态后验概率分布、状态先验概率分布、状态估计值以及状态预测值等感兴趣量进行递归计算。 假设有一个系统,我们知道它的状态方程,和测量方程如下: =(,(状态方程)(2.4.1) =(,(测量方程)(2.4.2) 其中x为系统状态,y为测量到的数据,f,h是状态转移函数和测量函数,v,n 为过程噪声和测量噪声,噪声都是独立同分布的。 由贝叶斯理论可知,状态估计问题(目标跟踪、信号滤波)就是根据之前一系列的已有数据(测量数据)递推的计算出当前状态的可信度,这个可信度就是概率公式p(),它需要通过预测和更新两个步奏来递推的计算。 预测过程是利用系统模型(状态方程2.4.2)预测状态的先验概率密度,也就是通过已有的先验知识对未来的状态进行猜测,即p( )。更新过程则利用最新的测量值对先验概率密度进行修正,得到后验概率密度,也就是对之前的猜测进行修正。 处理这些问题之前,假设系统的状态转移服从一阶马尔科夫模型,即当前时刻的状态x(k)只与上一个时刻的状态x(k-1)有关, k时刻测量到的数据y(k)只与当前的状态x(k)有关。

卡尔曼滤波算法总结

卡尔曼滤波算法总结-标准化文件发布号:(9556-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

2015.12.12 void Kalman_Filter(float Gyro,float Accel) { Angle+=(Gyro - Q_bias) * dt; Pdot[0]=Q_angle - PP[0][1] - PP[1][0]; Pdot[1]= - PP[1][1]; Pdot[2]= - PP[1][1]; Pdot[3]=Q_gyro; PP[0][0] += Pdot[0] * dt; PP[0][1] += Pdot[1] * dt; PP[1][0] += Pdot[2] * dt; PP[1][1] += Pdot[3] * dt; Angle_err = Accel - Angle; PCt_0 = C_0 * PP[0][0]; PCt_1 = C_0 * PP[1][0]; E = R_angle + C_0 * PCt_0; K_0 = PCt_0 / E; K_1 = PCt_1 / E; t_0 = PCt_0; t_1 = C_0 * PP[0][1]; PP[0][0] -= K_0 * t_0; PP[0][1] -= K_0 * t_1; PP[1][0] -= K_1 * t_0; PP[1][1] -= K_1 * t_1; Angle += K_0 * Angle_err; Q_bias += K_1 * Angle_err; Gyro_x = Gyro - Q_bias; }

首先是卡尔曼滤波的5个方程: (|1)(1|1)() X k k AX k k Bu k -=--+(1)先验估计 (|1)(1|1)'P k k AP k k A Q -=--+(2)协方差矩阵的预测 ()(|1)'/(|1)')Kg k P k k H HP k k H R =--+(3)计算卡尔曼增益 (|)(|1)()(()(|1))X k k X k k Kg k Z k HX k k =-+--(4)进行修正 5个式子比较抽象,现在直接用实例来说: 一、卡尔曼滤波第一个式子 对于角度来说,我们认为此时的角度可以近似认为是上一时刻的角度值加上上一时刻陀螺仪测得的角加速度值乘以时间,因为d dt θω=?,角度微分等于时间的微分乘以角速度。但是陀螺仪有个静态漂移(而且还是变化的),静态漂移就是静止了没有角速度然后陀螺仪也会输出一个值,这个值肯定是没有意义的,计算时要把它减去。 由此我们得到了当前角度的预测值Angle Angle=Angle+(Gyro - Q_bias) * dt; 其中等号左边Angle 为此时的角度,等号右边Angle 为上一时刻的角度,Gyro 为陀螺仪测的角速度的值,dt 是两次滤波之间的时间间隔,我们的运行周期是4ms 或者6ms 。 同时 Q_bias 也是一个变化的量。 但是就预测来说认为现在的漂移跟上一时刻是相同的,即 Q_bias=Q_bias 将上面两个式子写成矩阵的形式 1_0 1_0 Angle dt Angle dt Q bias Q bia o s Gyr -= + 得到上式,这个式子对应于卡尔曼滤波的第一个式子 (|1)(1|1)() X k k AX k k Bu k -=--+ (|)(|1) P k k I Kg k H P k k =--(())(5)更新协方差阵

视频目标跟踪算法综述_蔡荣太

1引言 目标跟踪可分为主动跟踪和被动跟踪。视频目标跟踪属于被动跟踪。与无线电跟踪测量相比,视频目标跟踪测量具有精度高、隐蔽性好和直观性强的优点。这些优点使得视频目标跟踪测量在靶场光电测量、天文观测设备、武器控制系统、激光通信系统、交通监控、场景分析、人群分析、行人计数、步态识别、动作识别等领域得到了广泛的应用[1-2]。 根据被跟踪目标信息使用情况的不同,可将视觉跟踪算法分为基于对比度分析的目标跟踪、基于匹配的目标跟踪和基于运动检测的目标跟踪。基于对比度分析的跟踪算法主要利用目标和背景的对比度差异,实现目标的检测和跟踪。基于匹配的跟踪主要通过前后帧之间的特征匹配实现目标的定位。基于运动检测的跟踪主要根据目标运动和背景运动之间的差异实现目标的检测和跟踪。前两类方法都是对单帧图像进行处理,基于匹配的跟踪方法需要在帧与帧之间传递目标信息,对比度跟踪不需要在帧与帧之间传递目标信息。基于运动检测的跟踪需要对多帧图像进行处理。除此之外,还有一些算法不易归类到以上3类,如工程中的弹转机跟踪算法、多目标跟踪算法或其他一些综合算法。2基于对比度分析的目标跟踪算法基于对比度分析的目标跟踪算法利用目标与背景在对比度上的差异来提取、识别和跟踪目标。这类算法按照跟踪参考点的不同可以分为边缘跟踪、形心跟踪和质心跟踪等。这类算法不适合复杂背景中的目标跟踪,但在空中背景下的目标跟踪中非常有效。边缘跟踪的优点是脱靶量计算简单、响应快,在某些场合(如要求跟踪目标的左上角或右下角等)有其独到之处。缺点是跟踪点易受干扰,跟踪随机误差大。重心跟踪算法计算简便,精度较高,但容易受到目标的剧烈运动或目标被遮挡的影响。重心的计算不需要清楚的轮廓,在均匀背景下可以对整个跟踪窗口进行计算,不影响测量精度。重心跟踪特别适合背景均匀、对比度小的弱小目标跟踪等一些特殊场合。图像二值化之后,按重心公式计算出的是目标图像的形心。一般来说形心与重心略有差别[1-2]。 3基于匹配的目标跟踪算法 3.1特征匹配 特征是目标可区别与其他事物的属性,具有可区分性、可靠性、独立性和稀疏性。基于匹配的目标跟踪算法需要提取目标的特征,并在每一帧中寻找该特征。寻找的 文章编号:1002-8692(2010)12-0135-04 视频目标跟踪算法综述* 蔡荣太1,吴元昊2,王明佳2,吴庆祥1 (1.福建师范大学物理与光电信息科技学院,福建福州350108; 2.中国科学院长春光学精密机械与物理研究所,吉林长春130033) 【摘要】介绍了视频目标跟踪算法及其研究进展,包括基于对比度分析的目标跟踪算法、基于匹配的目标跟踪算法和基于运动检测的目标跟踪算法。重点分析了目标跟踪中特征匹配、贝叶斯滤波、概率图模型和核方法的主要内容及最新进展。此外,还介绍了多特征跟踪、利用上下文信息的目标跟踪和多目标跟踪算法及其进展。 【关键词】目标跟踪;特征匹配;贝叶斯滤波;概率图模型;均值漂移;粒子滤波 【中图分类号】TP391.41;TN911.73【文献标识码】A Survey of Visual Object Tracking Algorithms CAI Rong-tai1,WU Yuan-hao2,WANG Ming-jia2,WU Qing-xiang1 (1.School of Physics,Optics,Electronic Science and Technology,Fujian Normal University,Fuzhou350108,China; 2.Changchun Institute of Optics,Fine Mechanics and Physics,Chinese Academy of Science,Changchun130033,China)【Abstract】The field of visual object tracking algorithms are introduced,including visual tracking based on contrast analysis,visual tracking based on feature matching and visual tracking based on moving detection.Feature matching,Bayesian filtering,probabilistic graphical models,kernel tracking and their recent developments are analyzed.The development of multiple cues based tracking,contexts based tracking and multi-target tracking are also discussed. 【Key words】visual tracking;feature matching;Bayesian filtering;probabilistic graphical models;mean shift;particle filter ·论文·*国家“863”计划项目(2006AA703405F);福建省自然科学基金项目(2009J05141);福建省教育厅科技计划项目(JA09040)

几种滤波算法

一.十一种通用滤波算法(转) 1、限幅滤波法(又称程序判断滤波法) A、方法: 根据经验判断,确定两次采样允许的最大偏差值(设为A) 每次检测到新值时判断: 如果本次值与上次值之差<=A,则本次值有效 如果本次值与上次值之差>A,则本次值无效,放弃本次值,用上次值代替本次值B、优点: 能有效克服因偶然因素引起的脉冲干扰 C、缺点 无法抑制那种周期性的干扰 平滑度差 2、中位值滤波法 A、方法: 连续采样N次(N取奇数) 把N次采样值按大小排列 取中间值为本次有效值 B、优点: 能有效克服因偶然因素引起的波动干扰 对温度、液位的变化缓慢的被测参数有良好的滤波效果 C、缺点: 对流量、速度等快速变化的参数不宜 3、算术平均滤波法 A、方法: 连续取N个采样值进行算术平均运算 N值较大时:信号平滑度较高,但灵敏度较低 N值较小时:信号平滑度较低,但灵敏度较高 N值的选取:一般流量,N=12;压力:N=4

适用于对一般具有随机干扰的信号进行滤波 这样信号的特点是有一个平均值,信号在某一数值范围附近上下波动 C、缺点: 对于测量速度较慢或要求数据计算速度较快的实时控制不适用 比较浪费RAM 4、递推平均滤波法(又称滑动平均滤波法) A、方法: 把连续取N个采样值看成一个队列 队列的长度固定为N 每次采样到一个新数据放入队尾,并扔掉原来队首的一次数据.(先进先出原则) 把队列中的N个数据进行算术平均运算,就可获得新的滤波结果 N值的选取:流量,N=12;压力:N=4;液面,N=4~12;温度,N=1~4 B、优点: 对周期性干扰有良好的抑制作用,平滑度高 适用于高频振荡的系统 C、缺点: 灵敏度低 对偶然出现的脉冲性干扰的抑制作用较差 不易消除由于脉冲干扰所引起的采样值偏差 不适用于脉冲干扰比较严重的场合 比较浪费RAM 5、中位值平均滤波法(又称防脉冲干扰平均滤波法) A、方法: 相当于“中位值滤波法”+“算术平均滤波法” 连续采样N个数据,去掉一个最大值和一个最小值 然后计算N-2个数据的算术平均值 N值的选取:3~14

关于粒子滤波算法的形象比喻

本文来自https://www.wendangku.net/doc/ac13085334.html,/yangyangcv/archive/2010/05/23/1742263.html 一直都觉得粒子滤波是个挺牛的东西,每次试图看文献都被复杂的数学符号搞得看不下去。一个偶然的机会发现了Rob Hess(https://www.wendangku.net/doc/ac13085334.html,/~hess/)实现的这个粒子滤波。从代码入手,一下子就明白了粒子滤波的原理。根据维基百科上对粒子滤波的介绍 (https://www.wendangku.net/doc/ac13085334.html,/wiki/Particle_filter),粒子滤波其实有很多变种,Rob Hess实现的这种应该是最基本的一种,Sampling Importance Resampling (SIR),根据重要性重采样。下面是我对粒子滤波实现物体跟踪的算法原理的粗浅理解: 1)初始化阶段-提取跟踪目标特征 该阶段要人工指定跟踪目标,程序计算跟踪目标的特征,比如可以采用目标的颜色特征。具体到Rob Hess的代码,开始时需要人工用鼠标拖动出一个跟踪区域,然后程序自动计算该区域色调(Hue)空间的直方图,即为目标的特征。直方图可以用一个向量来表示,所以目标特征就是一个N*1的向量V。2)搜索阶段-放狗 好,我们已经掌握了目标的特征,下面放出很多条狗,去搜索目标对象,这里的狗就是粒子particle。狗有很多种放法。比如,a)均匀的放:即在整个图像平面均匀的撒粒子(uniform distribution);b)在上一帧得到的目标附近按照高斯分布来放,可以理解成,靠近目标的地方多放,远离目标的地方少放。Rob Hess的代码用的是后一种方法。狗放出去后,每条狗怎么搜索目标呢?就是按照初始化阶段得到的目标特征(色调直方图,向量V)。每条狗计算它所处的位置处图像的颜色特征,得到一个色调直方图,向量Vi,计算该直方图与目标直方图的相似性。相似性有多种度量,最简单的一种是计算 sum(abs(Vi-V)).每条狗算出相似度后再做一次归一化,使得所有的狗得到的相似度加起来等于1. 3)决策阶段 我们放出去的一条条聪明的狗向我们发回报告,“一号狗处图像与目标的相似度是0.3”,“二号狗处图像与目标的相似度是0.02”,“三号狗处图像与目标的相似度是0.0003”,“N号狗处图像与目标的相似度是0.013”...那么目标究竟最可能在哪里呢?我们做次加权平均吧。设N号狗的图像像素坐标是(Xn,Yn),它报告的相似度是Wn,于是目标最可能的像素坐标X = sum(Xn*Wn),Y = sum(Yn*Wn). 4)重采样阶段Resampling 既然我们是在做目标跟踪,一般说来,目标是跑来跑去乱动的。在新的一帧图像里,目标可能在哪里呢?还是让我们放狗搜索吧。但现在应该怎样放狗呢?让我们重温下狗狗们的报告吧。“一号狗处图像与目标的相似度是0.3”,“二号狗处图像与目标的相似度是0.02”,“三号狗处图像与目标的相似度是 0.0003”,“N号狗处图像与目标的相似度是0.013”...综合所有狗的报告,一号狗处的相似度最高,三号狗处的相似度最低,于是我们要重新分布警力,正所谓好钢用在刀刃上,我们在相似度最高的狗那里

卡尔曼滤波简介及其算法实现代码

卡尔曼滤波简介及其算法实现代码 卡尔曼滤波算法实现代码(C,C++分别实现) 卡尔曼滤波器简介 近来发现有些问题很多人都很感兴趣。所以在这里希望能尽自己能力跟大家讨论一些力所能及的算法。现在先讨论一下卡尔曼滤波器,如果时间和能力允许,我还希望能够写写其他的算法,例如遗传算法,傅立叶变换,数字滤波,神经网络,图像处理等等。 因为这里不能写复杂的数学公式,所以也只能形象的描述。希望如果哪位是这方面的专家,欢迎讨论更正。 卡尔曼滤波器– Kalman Filter 1.什么是卡尔曼滤波器 (What is the Kalman Filter?) 在学习卡尔曼滤波器之前,首先看看为什么叫“卡尔曼”。跟其他著名的理论(例如傅立叶变换,泰勒级数等等)一样,卡尔曼也是一个人的名字,而跟他们不同的是,他是个现代人! 卡尔曼全名Rudolf Emil Kalman,匈牙利数学家,1930年出生于匈牙利首都布达佩斯。1953,1954年于麻省理工学院分别获得电机工程学士及硕士学位。1957年于哥伦比亚大学获得博士学位。我们现在要学习的卡尔曼滤波器,正是源于他的博士论文和1960年发表的论文《A New Approach to Linear Filtering and Prediction Problems》(线性滤波与预测问题的新方法)。如果对这编论文有兴趣,可以到这里的地址下载: https://www.wendangku.net/doc/ac13085334.html,/~welch/media/pdf/Kalman1960.pdf。 简单来说,卡尔曼滤波器是一个“optimal recursive data processing algorithm(最优化自回归数据处理算法)”。对于解决很大部分的问题,他是最优,效率最高甚至是最有用的。他的广泛应用已经超过30年,包括机器人导航,控制,传感器数据融合甚至在军事方面的雷达系统以及导弹追踪等等。近年来更被应用于计算机图像处理,例如头脸识别,图像分割,图像边缘检测等等。 2.卡尔曼滤波器的介绍 (Introduction to the Kalman Filter) 为了可以更加容易的理解卡尔曼滤波器,这里会应用形象的描述方法来讲解,而不是像大多数参考书那样罗列一大堆的数学公式和数学符号。但是,他的5条公式是其核心内容。结合现代的计算机,其实卡尔曼的程序相当的简单,只要你理解了他的那5条公式。 在介绍他的5条公式之前,先让我们来根据下面的例子一步一步的探索。 假设我们要研究的对象是一个房间的温度。根据你的经验判断,这个房间的温度是恒定的,也就

粒子滤波技术的发展现状综述

1 收稿日期: 2009-06-10 基金项目:国家自然科学基金项目10872125、上海市自然科学基金 项目06ZR14042、高等学校学科创新引智计划资助项目B06012、教育部留学回国人员科研启动基金项目 作者简介:张瑞华(1985-),女,硕士,目前从事非线性动力学、信 号处理与识别研究。E m ai:l zhangrh @s j tu https://www.wendangku.net/doc/ac13085334.html, 文章编号:1006 1355(2010)02 0001 04 粒子滤波技术的发展现状综述 张瑞华,雷 敏 (上海交通大学机械系统与振动国家重点实验室,上海 200240) 摘 要:对粒子滤技术的近几年研究发展进行回顾,介绍四大类粒子滤波改进算法,总结目前目标跟踪、导航与定位中存在的问题,展望粒子滤波技术的方法研究及实际应用前景。 关键词:振动与波;粒子滤波;非线性系统;信号处理;目标识别中图分类号:TP27;TN 713;V 2 文献标识码:A DO I 编码:10.3969/.j issn .1006-1355.2010.02.001 Review of State of The A rt of Particle Filtering Technique ZHANG Rui hua,LEI M in (S tate Key Laboratory ofM echanical Syste m and V ibration ,Shangha i Jiao tong Un i v ersity ,Shangha i 200240,China) Abstract :Th is paper rev ie w s the state of the art of particle filtering techn i q ue .The novelm ethods for particle filtering ca lculati o n o f four k i n ds of particles are i n troduced .The prob l e m s i n tar get track i n g ,nav i g ation and orientation are summ ar ized.A t las,t t h e further study and practica l app li c ations of particle filtering techn ique are prospected . Key w ords :v i b ra ti o n and wave ;particle filtering ;nonlinear syste m s ;si g na l pr ocess ;target recog niti o n 粒子滤波(Partic le Filter ,PF )技术是一种用于非线性、非高斯系统的滤波方法。在其发展过程中有很多表述方法,如Bootstrap filter ,C ondensati o n M onte Carlo filter ,Particle filter 等,目前使用最多的是英文 Particle filter 中文 粒子滤波 。粒子滤波思想最早可以追溯到上一世纪50年代末H e mm ers ley 等人[1] 提出的基于贝叶斯采样估计的顺序重要采样(SI S)滤波思想。60年代以后粒子滤波技术得到了一定的发展,但研究中一直存在粒子退化、重采样可能减少正确的粒子数和计算量制约等致命问题,从而没有引起人们足够的重视。直到上个世 纪90年代初,Go r dan 等人[2] 提出在递推过程中重 新抽样的思想,奠定了粒子滤波实用性的基础,随后许多改进算法相继被提出,使得粒子滤波技术得到迅速发展。目前该技术已被广泛地应用到诸多领域里,如目标跟踪及导航与制导、状态监视和故障诊断、参数估计与系统辨识、人手臂运动识别、计算机视觉、金融领域等 [3-9] 。 1 粒子滤波技术发展现状 根据SC I 数据库的检索报告,从1990年至今共有482篇SC I 的 粒子滤波(Parti c le F ilteri n g) 标题文章,而近5年的标题文章就有336篇,占全部标题文章的69.7%,并且 粒子滤波(Partic le F iltering) 的主题文章近5年就有将近1500篇之多,可以说粒子滤波技术已受到学者和科研人员的高度关注,成为当今一个非常活跃的研究领域。 粒子滤波是针对所有可能的观测值,通过状态空间随机生成一些粒子,每个粒子利用贝叶斯准则进行加权修正,然后递归构造状态变量的条件概率密度,以近似估计实际的系统状态。Gordan 等人 [2] 粒子滤波技术的发展现状综述

相关文档