王 颖
(商丘职业技术学院,河南 商丘 476000)
机动目标是指监控区域内的目标在运动过程中具有高度的非线性和非预谋的规律运动模式的突变,如,突然的转弯、加速和俯冲等运动。机动目标的定位与跟踪在机载预警系统、空中交通管制系统、移动机器人、海岸监视系统和空间运动体监控等领域起到了举足轻重的作用,具有重要的研究前景和价值。[1-4]当跟踪场景中的目标运动模式具有较强的随机性和突发性使得运动环境变得不易侦测时,机动目标的建模与有效跟踪就会异常困难和棘手。
如何实现一个复杂环境下相对完善的多目标跟踪系统,能够有效地跟踪机动多目标和准确地估计这些目标的状态,一直是目标跟踪工程应用上最具挑战性的任务之一。依据不同的实际跟踪场景,选择一个合适的目标运动模型,并结合相应的滤波技术,是解决更精准的机动多目标跟踪问题的关键。较好的机动目标运动模型能够相对精准地描述目标运动的时变状态。较为常见的机动目标运动模型主要有Jerk模型[5]、Singer模型[6-7]、CS模型[8]和交互多模型[9]等。基于目标运动模型的滤波技术实现对机动目标的运动状态的预测与估计;滤波技术是机动目标跟踪的核心。目前,主流的滤波技术有基于Kalman及其变体的滤波算法[10-12]、粒子滤波算法[13]、变分贝叶斯滤波算法[14]和随机集滤波算法[15]。近年来,随着传感器的普及和广泛应用,尤其是异质传感器的推广,为机动多目标跟踪问题的研究提供了新的驱动力。通过充分利用不同传感器提供的互补观测信息,跟踪场景中的一些不确定因素能够得以较大程度的改善。相较于传统的基于单传感器的机动多目标跟踪技术,融合了多传感器策略的机动多目标跟踪方法具有相对较高的滤波精度。然而,由于需要处理较多的观测信息,基于多传感器的机动多目标跟踪技术具有相对较高的计算代价。[16]
现实跟踪场景中,运动方式多样性、随机性运动和运动规则不确定性是机动目标的典型运动特征。机动目标跟踪的难点主要有:建模一个准确的、通用的先验数学模型来表示机动目标的运动特性;设计基于完善的先验参数信息的自适应滤波算法以抑制系统的不确定性的干扰。机动目标跟踪的本质是递推滤波,即采用先进的自适应滤波技术,根据一定的滤波准则以最大限度地减小各滤波时刻目标的状态估计与真实状态间的偏差。
机动目标跟踪过程可简要概括为:首先由含有噪声的传感器观测和目标预测状态计算得出当前时刻的残差向量,然后基于该残差向量的变化进行目标机动辨识,即跟踪场景中被跟踪目标是否发生了机动运动,最后采用相应的目标滤波技术计算机动目标的状态估计值,至此完成跟踪过程中的一个时刻的滤波;将当前时刻得出的目标的状态和协方差传递至下一时刻作为下一次滤波的初始值,然后重复上述过程,循环往复,直到遍历所有跟踪时刻。[17]通过以上机动目标跟踪原理的分析可以看出,预测和自适应滤波模块是整个跟踪体系的核心和关键之一。
滤波就是根据一定的最优计算准则,从受噪声干扰的不精确观测中恢复数据的实际状态值和滤除掉杂波的数据处理方法。Kalman滤波是目前应用最为广泛的滤波技术,该方法革命性的使用了状态空间模型,定义了描述系统状态随时间演变的系统模型和描述观测量与系统状态之间关系的观测模型。
通过迭代地递推无偏最小均方根误差估计,Kalman滤波通过系统输入输出观测数据,利用线性系统状态方程对动态系统的状态进行最优估计。建模离散型且时变的状态变量使得状态空间描述和离散滤波时刻更新有机地关联在一起,滤波过程总体上看上去更像是一个随时间变化而时变的状态演变函数。其优点为:更加易于计算、复杂的场景更简单化、易于功能模块的编程处理,相对较高的实时性和精准性。
复杂动态系统的离散域内系统状态和观测方程分别为:
X(k)=F(k-1)X(k-1)+W(k-1)
(1)
Z(k)=H(k)X(k)+V(k)
(2)
其中X(k)为k时刻n维状态向量,W(k-1)为k-1时刻服从高斯分布的n维状态白噪声,Z(k)为k时刻m维观测,V(k)为k时刻服从高斯分布的m维观测白噪声,F(k-1)为k-1时刻n×n阶系统状态转移矩阵,H(k)为k时刻m×n阶系统观测矩阵。通常在确定性的动态系统下,系统状态及观测噪声的均值和方差等先验参数是确定的,系统状态及观测噪声的均值统计特性通常满足零均值。
假设k-1时动态系统状态的均值和方差分别为X(k-1|k-1)和P(k-1|k-1),则k时刻动态系统的一步预测均值和方差可表示为:
X(k|k-1)=F(k)X(k-1|k-1)
(3)
P(k|k-1)=F(k-1)P(k-1|k-1)FT(k-1)+Q(k-1)
(4)
其中Q(k-1)为k-1时刻动态系统状态噪声协方差。
基于k时刻动态系统的一步预测方差P(k|k-1)和观测噪声协方差R(k),动态系统状态的新息协方差矩阵为:
S(k)=H(k)P(k|k-1)HT(k)+R(k)
(5)
此外,k时刻体现动态系统状态误差大小的卡尔曼增益为:
K(k)=P(k|k-1)HT(k)S-1(k)
(6)
利用k时刻动态系统的观测,更新后的动态系统的状态和方差为:
X(k|k)=X(k|k-1)+K(k)(Z(k)-H(k)X(k|k-1))
(7)
P(k|k)=P(k|k-1)-K(k)S(k)KT(k)
(8)
Singer模型是一种建模普遍意义的机动运动模式的有效技术。该模型假定机动目标运动模式是相关噪声模型。即机动目标运动模式的相关参数与动态系统的状态噪声间相关的,改变相关噪声的取值,即可实现目标运动模式的相关参数的自适应调节。跟踪场景中目标假设以某一固定速率运动,然而转弯、避障以及大气干扰等这些不确定因素均可能导致目标速率的变化。目标速率的改变,一般情况下在目标运动模型中以加速度的参数体现。同样,目标机动能力的强弱通常也以目标的加速度均值来描述。
假设目标加速度是一个指数自相关的随机过程,其均值为零。动态跟踪系统中采用a(k)来表示目标加速度,其中表示k采样时刻。一个典型的基于指数衰减的相关函数可表示为:
Ra(τ)=E(a(k)a(k-τ))=σ2e-α|τ|
(9)
其中,α表示目标的机动频率,σ2表示目标的机动幅度。由式(9)可见,在[k,k+τ]采样区间内,机动频率和机动幅度参数决定了目标机动的特性。常见的不确定性因素引起目标机动和机动频率的对应关系有:目标做避障运动时机动频率α=1/20;目标做转弯运动时机动频率α=1/60;大气干扰因素下机动频率α=1。
一个已经被证明能相对较好地描述机动目标的瞬时机动特性的目标机动幅度σ2的概率密度函数可表示为:
(10)
其中,amax表示目标加速度的上限值,Pmax表示出现目标加速度的上限值的概率,P0表示目标非机动的概率。
假设动态系统中k时刻目标状态向量X(k)=[xp(k),xv(k),xa(k)]由位置xp(k),速度xv(k)和加速度xa(k)构成,则Singer模型的状态描述式为:
(11)
其中,v(k)服从零均值,2ασ2方差的高斯白噪声。
对Singer模型的状态描述式进行离散化处理,转换后的表达式为:
X(k)=ξ(k|k-1)X(k-1)+w(k-1)
(12)
(13)
其中,T表示采样间隔,状态噪声w(k-1)的协方差表示为:
(14)
其中
Kalman滤波时,需要对相关参数进行初始化处理。即跟踪场景中目标的初始状态X(0)、协方差矩阵P(0)、状态和观测方程中相关矩阵F、H和噪声协方差W、V。然后基于离散域内系统的状态方程计算目标的一步预测值;最后基于各滤波时刻得到的传感器观测值和前一滤波时刻目标的预测值,采用Kalman的更新方法对目标预测值进行校正,得到当前滤波时刻目标的状态值。Kalman滤波器仅需要利用当前滤波时刻的观测进行目标状态更新,因此该滤波器具有较小的计算量。
Singer模型中,状态噪声w的协方差矩阵ρ对滤波算法的滤波精度具有至关重要的决定作用。机动幅度σ2体现了目标机动加速度的偏差大小,不合适的机动幅度σ2将导致Singer模型的仿真结果严重失真。机动频率α在[0,+∞]区间取值时,Singer模型中机动目标的运动状态从匀速到匀加速间的变化。协方差矩阵中的机动频率α和机动幅度σ2依赖于机动目标的实际情况,具有较大未知性和不确定性。通常需要依据具体跟踪场景,选取相对适当的经验值。
本文算法采用MATLAB软件进行仿真实验,跟踪场景为单个机动目标在二维平面区域运动。被跟踪目标的真实运动状态为:k=0时刻,目标x方向初始位置、速度和加速度分别为0、50m/s和0m/s2;y方向初始位置、速度和加速度分别0、100m/s和0m/s2。0~30秒,x和y方向的加速度均为0m/s2;30~60秒,x方向以-5m/s2的加速度运动,y方向以45m/s2的加速度运动;60~90秒,x方向以50m/s2的加速度运动,y方向以-6m/s2的加速度运动。跟踪场景中,观测噪声协方差的标准差为20m,采样周期T=1s。Singer模型的机动频率为α=1/60,机动幅度σ2可由式(10)计算,其中P0=0.1,Pmax=0.3和amax=50。所有实验结果均为100次Monte Carlo仿真的平均值。
图1给出了仿真跟踪场景中机动目标真实运动轨迹和本文算法的目标轨迹估计。从航迹估计结果可见,本文算法的目标运动轨迹估计基本与目标实际运动轨迹吻合,表明了本文算法能够相对准确地给出机动目标的状态估计。Singer模型的引入能够较好地建模机动目标运动状态,因此场景中的虚警得以有效地消除。航迹估计结果表明,本文算法提出的机动目标跟踪方案是有效的和可行的。
图1 目标轨迹和本文算法轨迹估计对比
图2给出了本文算法在x和y方向上速度均方根误差。可见,本文算法在x和y方向上速度误差总体在15~20m/s之间。由于机动目标在x方向上60~90秒内和y方向30~60秒内是强机动状态,因而本文算法在x方向和y方向的相应采样时刻出现了较大误差。总体上,本文算法两个方向上的速度误差在理论速度误差允许范围内,表明该算法能够较为准确的估计机动目标的速度。
图2 本文算法在x和y方向上速度均方根误差
图3给出了本文算法在x和y方向上加速度均方根误差。可见,除了跟踪起始时递推次数不多导致误差偏大以及目标在强机动开始和结束时刻外,其它跟踪时间点上的误差均较小。此外,本文算法在目标弱机动情况下相对比较好,强机动情况下误差相对较大。
图3 本文算法在x和y方向上加速度均方根误差
为了进一步观察观测噪声对本文算法的影响,本文开展了不同观测噪声下的滤波性能仿真实验。表1统计了观测噪声标准差为20m、40m和60m时,本文算法的目标位置估计、速度估计和加速度估计的均方根误差。随着观测噪声标准差不断变大,位置、速度和加速度的均方根误差均相对增大,总体趋势上呈线性变化。然而,过大的标准差将使得误差超过允许偏差范围,最终将导致跟踪失败。
给出了一种基于Singer-Kalman模型下的机动目标跟踪算法,并从仿真实验的角度对所提算法进行了性能验证。实验结果表明,本文算法能够较好地实现机动目标跟踪的目的,且具有良好的跟踪性能。然而,算法中Singer模型的机动幅度不能自适应调整,不够灵活;复杂机动目标场景中不能真实地反映目标机动强度的变化。后续重点关注如何改进本文算法,以能较好地应用于强机动目标跟踪场合。