2024年4月30日发(作者:)
统计信号处理仿真实验实验报告
卡尔曼滤波在目标跟踪中应用仿真研究
【摘要】目标跟踪问题的应用背景是雷达数据处理,即雷达在搜索到目标并记录目标的位置
数据,对测量到的目标位置数据(称为点迹)进行处理,自动形成航迹,并对目标在下一时
刻的位置进行预测。本文简要讨论了用Kalman滤波方法对单个目标航迹进行预测,并借助
于Matlab仿真工具,对实验的效果进行评估。
关键词:Kalman滤波、目标跟踪、Matlab仿真
1.情景假设
假定有一个二座标雷达对一平面上运动的目标进行观测,目标在
t0~400
秒沿
y
轴
0~60
作恒速直线运动,运动速度为-15米/秒,目标的起始点为(2000米,10000米),在
t4
秒向
x
轴方向做
90
0
的慢转弯,加速度均为0.075米/秒
2
,完成慢转弯后加速度将降为零,
2
从
t610
秒开始做
90
0
的快转弯,加速度为0.3米/秒
,在660秒结束转弯,加速度降至零。
雷达扫描周期
T2
秒,
x
和
y
独立地进行观测,观测噪声的标准差均为100米。
2.Kalman滤波算法分析
为了简单起见,仅对
x
轴方向进行考虑。
首先,目标运动沿
x
轴方向的运动可以用下面的状态方程描述:
(k)
(T
2
/2)u
x
(k)x(k
1)
x(k)
Tx
(k
1)
x
(k)
Tu
x
(k)x
X(k1)X(k)W(k)
(2.1)
用矩阵的形式表述为,
(2.2)
1
2
T
x(k)1T
在上式中,
X(k)
,
W
(
k
)
u
x
。
2
,
01
,
x(k)
T
考虑雷达的观测,得出观测方程为:
Z(k)C(k)X(k)V(k)
(2.3)
在(2.3)中,
C(k)10
,
V(k)
为零均值的噪声序列,方差已知。
对目标进行预测,由相关理论可得到下面的迭代式:
ˆ
(k/k1)X
ˆ
(k1/k1)
X
(2.4)
ˆ
(k/k
1)
E[X(k)|Z
k
1
]
,反映了由前
k1
各观测值对目前状态的估计。 在(2.4)中,
X
而预测的误差协方差可由下式表出,
P
X
)P
X
)
T
Q(k1)
T
(k/k1
(k1/k1
第 1 页
(2.5)
2019.06.24
统计信号处理仿真实验实验报告
对于最佳滤波,迭代表达式为:
ˆ
(k/k)X
ˆ
(k/k1)K(k)[Z(k)C(k)X
ˆ
(k/k1)]
X
(2.6)
在式(2.6)中,
K(k)
为Kalman增益。
而滤波误差的协方差为,
P
X
)
(k/k)[IK(k)C(k)]P
(k/k1
X
(2.7)
在应用上面的公式进行Kalman滤波时,需要指定初值。由于实际中通常无法得到目标
的初始状态,我们可以利用前几个观测值建立状态的初始估计,比如采用前两个观测值,
此时,估计误差为
ˆ
(2/2)
z(2)X
x
z
x
(2)z
x
(1)
/T
T
T
(2.8)
(2/2)
v(2)
T
u(1)
v
x
(1)
v
x
(2)
X
x
x
2T
2
x
P
XX
(2/2)
2
x
/T
(2.9)
而误差协方差矩阵为,
x
2
/T
2
2
x
/T
(2.10)
3.仿真计算与结果
为了真实地反映出Kalman滤波的效果,采用了Monte-Carlo方法,采用多次实验取均
值的方法进行研究,可以计算出估计的误差均值和方差,其表达式为:
1
e
x
(k)
M
ˆ
(k|k)]
[x(k)
x
ii
i
1
M
(2.11)
而误差的标准差可以表示为:
1
x
M
ˆ
(k|k)]
[x(k)
x
ii
i
1
M
2
e
x
2
(k)
(2.12)
在(2.11)和(2.12)中,
M
就是进行Monte-Carlo仿真的次数,而
k
为取样点数。当仿真的次数
越多时,实验的效果越接近于实际,但是计算的速度会明显变慢。在仿真时,需要根据实际
适当选取。在本程序中,取
M50
。
另外,在仿真过程中,为了进一步研究目标的航迹,在660秒后又进行了一段时间的匀
速运动仿真。
下面是仿真的结果,仿真源文件分别为trajectory.m,Kalman_filter.m和filter_result.m,
分别产生原始目标航迹、卡尔曼滤波估计和最终的输出,为了方便观察,将原始航迹、观测
数据和经过滤波后的估计航迹反映在一张图上。并且,画出了给定Monte-Carlo仿真的次数
情况下,沿
x
轴方向和
y
轴方向估计误差值的均值和标准差随着采样点数的增多而发生变化
的情况。
首先给出原始航迹,
第 2 页 2019.06.24


发布评论