自适应卡尔曼滤波方法在光电跟踪系统中的应用*
2021-06-26孙春霞沈玉玲
吴 旭,孙春霞,沈玉玲
(兰州交通大学 电子与信息工程学院,甘肃 兰州 730070)
0 引 言
在光电跟踪控制系统的视场中,目标的位置与视场的中心之间的特定偏差被称为脱靶量。脱靶量是用作伺服控制系统运动的误差量,使得目标保持在视场中[1~4]。由于光电子器件在图像合成,处理和传输等一系列过程中消耗一定的时间,因此在目标实际位置信息和输出脱靶量信息之间存在滞后。脱靶量的滞后对跟踪性能影响的大小是光电跟踪系统是否稳定的重要因素之一。
近年来复合控制结构[5~7]常被用于光电跟踪控制系统,光电跟踪中的复合控制主要由反馈控制结构组成,在反馈控制结构中,学者们建立目标运动模型,构建系统传递函数,使用传感器与各类滤波方法来获得目标运动的参数,使系统能够与实际运动模型相符合从而更准确地跟踪目标。
对目标运动状态进行估计是弥补滞后的一种方法,卡尔曼滤波器是一种常用的基于模型的运动目标参数估计算法,它利用状态方程和递推公式根据前一周期估计数据获得当前周期信号数据。然而由于实际运动中目标运动的时变性、机动性、不确定性和脱靶量滞后,传统的卡尔曼滤波不能保证高精度和鲁棒性[8~10]。
针对以上问题,提出了一种基于CSM模型[11,12]和STF算法[13,14]的自适应卡尔曼滤波跟踪方法,算法通过CSM模型来描述目标的运动,借鉴STF强跟踪滤波算法的思想,利用残差序列计算调节因子,校正当前的CSM模型的参数,再根据校正后的参数更新自适应卡尔曼预测信息,将其输入与速度环。
1 自适应卡尔曼滤波方法
1.1 本文方法的控制结构
图1 加入自适应卡尔曼滤波方法的复合控制结构示意
1.2 当前机动目标统计模型
卡尔曼滤波算法需要基于某个目标运动模型进行滤波预测,机动目标的当前统计模型CSM认为当目标以一定加速度运动时下一时刻的加速度值受限,它只能是当前加速度的邻域。
(1)
(2)
式中a+max与a-max分别为加速度分布为正与负时的极值。
1.3 自适应调整机制
X(k+1|k)=φ(k+1|k)X(k|k)+w(k)
(3)
式中w(k)为过程噪声,状态转移矩阵φ(k|k+1)为
(4)
式中T为采样周期。预测误差方差矩阵P(k+1|k)为
P(k+1|k)=φ(k+1|k)P(k│k)φT(k+1|k)+
Q(k+1)
(5)
残差序列ek+1表示为
ek+1=Z(k+1)-H(k+1)X(k+1|k)
(6)
式中H(k+1)=[1 0 0],根据卡尔曼滤波理论,当运动模型与实际运动一致时,残差序列应具有以下属性
ek+1=Z(k+1)-H(k+1)X(k+1|k),E[e(k+1)]=0,
(7)
机动目标的当前统计模型可以更好地描述机动目标运动特性,但由于实际运动的不确定性,滤波器的状态估计不能总是符合系统的真实状态,当目标运动模型与实际运动条件不匹配时,基于运动模型的目标状态预测值X(k+1|k)将出现大的偏差,此时残差序列ek+1不再满足等式(7)中所示的关系。
引入STF算法,使得残差序列保持正交,将自适应卡尔曼滤波器的协方差矩阵修改为P*(k+1|k)
P*(k+1|k)=λ(k+1)φ(k+1|k)P(k|k)φT×
T(k+1|k)+Q(k+1)
(8)
其中,调节因子
(9)
λ0的计算为
(10)
式中ρ为遗忘因子且0<ρ≤1,通常ρ=0.95。
由于机动目标模型与实际运动状态不完全匹配,因此模型中预设的参数需要自适应调整。对于机动频率α,当目标机动性较弱时,根据经验将其设定为较小的值;当目标机动增强时,使用调节因子调整λ(k+1),即
αk+1=λ(k+1)αk
(11)
1.4 自适应卡尔曼滤波算法
基于CSM模型,自适应卡尔曼滤波算法的步骤如下:
1)在时间k+1,利用式(3)计算状态预测值X(k+1|k),利用式(5)计算预测误差方差矩阵P(k+1|k)。
2)根据等式(6),计算残差序列ek,并通过等式(9),计算λ(k+1)。
3)计算调整后的机动频率αk+1,并计算修正状态转移矩阵φ*(k),有
φ*(k+1|k)=φ(k+1|k)(αk+1)
(12)
4)利用式(8)计算调整后的预测误差方差矩阵P*(k+1|k)。
5)计算卡尔曼增益并递归地获得更新值,公式如下
K(k+1)=P*(k+1│k)HT(k+1)×
[H(k+1)P*(k+1│k)HT(k+1)+R(k+1)]-1
X(k+1|k+1)=X(k+1|k)+K(k+1)×
[Z(k+1)-H(k+1)X(k+1|k)]
P(k+1|k+1)=[I-K(k+1)H(k+1)P*(k+1|k)]
(13)
2 仿真与实验
2.1 等效正弦仿真
为了验证本文改进的自适应卡尔曼滤波算法的有效性,对跟踪目标轨迹在MATLAB平台上进行仿真分析。根据项目指标需求,将目标运动轨迹分解为方位和俯仰两个方向,这里以方位轴为例,将角加速度为400(°)·s-2,角速度为5(°)·s-1的运动目标进行等效正弦计算,结果为θ=0.063 sin(80t)
在相同干扰的情况下,分别使用传统卡尔曼滤波算法与本文提出的改进的自适应卡尔曼滤波算法对等效正弦波进行跟踪。图2为跟踪误差示意图,其横坐标为运动的周期T,T=t/0.01,纵坐标为跟踪误差。
图2 对以θ=0.063sin(80t)运动的目标进行跟踪的位置跟踪误差
表1给出了算法的最大跟踪误差(error)与跟踪误差的均方根误差(RMS)的比较。
表1 卡尔曼与自适应卡尔曼的比较结果
从结果可以知,自适应卡尔曼滤波方法的最大跟踪误差和均方根误差(RMS)相对传统卡尔曼滤波方法均有明显减小,最大误差的降低为传统方法的0.39倍,均方根误差(RMS)降低为传统方法的0.21倍。由此可以看出,改进后的自适应卡尔曼方法可以有效地提高跟踪精度。
2.2 实验分析
为更进一步验证本文算法的可用性,搭建如图3所示实验平台进行系统的测试,平行光管打出一束平行光电作为跟踪对象,相隔0.5 m处有一与平行光管等高的折射镜,经一定角度转动的折射镜的折射后,目标被0.5 m外的CCD图像传感器捕获,传感器架设于离地面约0.8 m的控制台上,由DSP控制驱动电机和控制架对平行光束进行跟踪,最后各项数据导入主控机平台。
图3 实验平台示意
在跟踪平台上,将被跟踪目标运动分解为方位轴和俯仰轴两个方向,以方位轴为例进行跟踪状况的分析,图4为实验平台上的跟踪结果图,图4(a)为利用自适应卡尔曼滤波跟踪目标时的方位轴跟踪结果图,图4(b)为系统的跟踪误差图,跟踪误差约为0.02°复合控制系统的跟踪误差满足实时性及精确度的要求。
图4 在实验平台中的跟踪结果
3 结 论
本文设计了一种自适应卡尔曼滤波方法来补偿脱靶量延迟,通过自适应调节与强跟踪滤波的思想,改进了卡尔曼滤波进行前馈,构成复合控制结构。通过实验与仿真分析了传统算法与本文算法的跟踪精度,仿真结果表明:在高机动情况下采用改进的自适应卡尔曼滤波方法,最大跟踪误差约为传统算法的0.4倍,跟踪误差的均方根误差约为传统算法的0.2倍,误差都有显著的减小,在搭建的实验平台中进行的跟踪实验,其结果表明本文提出的自适应卡尔曼跟踪方法在光电跟踪系统中有良好的表现,满足跟踪系统对跟踪误差的要求。