发明内容
本发明主要目的在于提出了一种不随外界变化的概率预测型目标跟踪方法,使其相对于传统的目标跟踪算法具有更强大的适应性。
该方法采用的技术方案为:首先利用起始的2个观测点的最小二乘法,得出kalman的初始速度和初始位置,进而启动kalman滤波。启动kalman滤波后,预测下一点的位置,根据下一点的观测值,进行数据融合。然后进入预测验证阶段,用当前的观测值去验证过去时刻的预测值是否在误差的允许的范围内;最后是利用上述的参数,进行预测,预测算法选取近当前观测时刻的目标滤波后的序列值,将x、t和y、t分别以此作为最小二乘法的输入,进而得出x(t)和y(t)的关系,同时可获得相应的预测值,在此基础上,设定了一个概率函数,对预测值进行约束。
(1)启动kalman滤波:将目标坐标的观测数据录入本系统,则本系统提取前2个目标坐标的观测值;将目标坐标的观测值作相应的运算,并从中取得目标的初始速度和初始位置坐标,kalman滤波器一旦有了初始速度和初始坐标,就能够启动跟踪预测功能;
(2)kalman滤波:经过步骤(1)后,kalman滤波器已经启动,利用卡尔曼滤波的预测性,预测出目标坐标的下一个位置坐标,用下一时刻的目标坐标的观测值与预测的下一个位置坐标进行融合,得出下一时刻的比较精准的位置。
(3)预测验证:判断当前系统是否有目标坐标的预测值即第(4)步的预测值,如果没有则跳过此步骤,如果有,则用当前的目标坐标的观测值去验证过去时刻的预测值是否在误差的允许的范围内,如果不在误差的允许范围内则将概率公式(1)的参数τ按照一定的规则增加,如果在允许的误差范围之外,则将概率公式(1)的参数τ按照一定的规则减小。
(4)概率预测:结合当前滤波值,取最近的6个连续目标坐标点,将取出来的点作最小二乘法,并预测下N时刻的点;根据第(2)步和第(3)步中得出来的参数,利用概率计算公式,用计算出来概率值p为每一个预测值进行约束,其中概率公式如下:
其中:
t:预测的相对时间
τ:预测被验证的次数
p:计算出来的概率值。
所述步骤(1)中得目标的初始速度和初始位置坐标的具体过程:根据所述6个数值,将x、t和y、t分别以此作为最小二乘法的输入,得到出x(t)与y(t)的关系,当t=0时,即得到kalman滤波器的初始坐标,其中x(t)和y(t)的斜率就是kalman滤波器的初始速度。
所述步骤(4)的具体实现过程:
取6个最近滤波后的目标位置坐标,将x、t和y、t分别以此作为最小二乘法的输入,得到出x(t)与y(t)的关系,分别取t=n+1,n+2,n+3时,n为当前时刻,即得到预测的目标坐标点,并利用概率计算公式,用概率值为每一个预测值进行约束。
本发明更详细的步骤为:
输入:每隔一定的时间,输入一个二维坐标值
输出:输出该时刻的一系列预测值,并给出该值的概率值。
步骤一:启动kalman滤波
将的观测数据录入系统。
提取前6个观测值。(6是经过反复试验得到,如果数据过少,则会影响滤波器的收敛速度,如果数据量过多,则会拖慢系统的启动速度)
根据这6个数值,将x、t和y、t分别以此作为最小二乘法的输入,得到出x(t)与y(t)的关系,当t=0时,即可得到kalman滤波器的初始速度和坐标,即
步骤二:kalman滤波
(1)状态矢量预测
xn`=Fxn-1+un (1)
其中 T为采样周期,un为过程噪声,Q是过程噪声协方差,P为协方差;
(2)观测值预测
其中: z为观测向量,R为观测误差,P为协方差矩阵,x为状态向量;
(3)卡尔曼滤波器更新
其中:K为增益矩阵,x为状态向量,P为协方差矩阵。
步骤三:预测验证,用当前的观测值去验证过去时刻的预测值是否在误差的允许的范围内,如果在误差的允许范围内,则将概率公式中的(预测被验证的次数)按照一定的规则增加。如果在允许的误差范围之外,则将按照一定的规则减小。
步骤四:概率预测
提取最近的6个预测值。
根据这6个数值,将x、t和y、t分别以此作为最小二乘法的输入,得到出x(t)与y(t)的关系,当t=n的后续时间时,即可得到预测的坐标点。
利用概率计算公式,用概率值为每一个预测值进行约束。
其中概率函数是利用sigmoid函数的变体,形式如下所示:
参数说明:
t:预测的相对时间;
τ:预测被验证的次数;
p:计算出来的概率值。
概率函数的范围是(0,1),概率的结果是与预测时间长度成反比(惩罚),与预测被验证的次数τ成正比(奖励)。在这种奖惩方式下,使得该概率函数能够较好的代表预测值的准确程度。
本发明与现有技术相比的优点在于:
(1)可以适应不同的环境;
(2)利用概率来标识预测数据的准确度;
(3)拥有多点预测的能力。
现有的目标跟踪技术仅仅是给出目标滤波后的轨迹,具有一定的延迟性,而本发明拥有多点预测的能力,在一定程度上能够弥补延迟性。而且因为无法得到复杂环境下的完备模型,因此在实际复杂环境中,传统的目标跟踪算法有一定的局限性。本发明利用kalman滤波的线性最优性,再辅以最小二乘法的可预测性,在一定程度上能够弥补这一缺陷。
具体实施方式
为更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,对依据本发明提出的概率预测型的目标跟踪算法其具体实施方式、特征及其功效,其应用场景如下:摄像头采集数据并识别出目标,给出目标的坐标,作为本算法的输入。
如图1所示,本发明提出的概率预测型的目标跟踪方法具体操作步骤如下:
步骤一:启动kalman滤波
将的观测数据录入系统。提取前2个观测值。
根据这2个数值,将这两个坐标进行相应的运算,即可得到初始位置和初始坐标,即的值;的值取单位矩阵。
步骤二:kalman滤波
根据步骤(1)后,kalman滤波器已经初始化,利用卡尔曼滤波的预测性,预测出目标坐标的下一个位置坐标,用下一时刻的目标坐标的观测值与预测的下一个位置坐标进行融合,得出下一时刻的比较精准的位置,Kalman滤波方式如下:
滤波器初始化初始化并取
按照表达式(1-8)式可得出kalman滤波的结果。
步骤三:预测验证,用当前的观测值去验证过去时刻的预测值是否在误差的允许的范围内,如果在误差的允许范围内,则将概率公式中的τ(预测被验证的次数)按照一定的规则增加。如果在允许的误差范围之外,则将τ按照一定的规则减小。
步骤四:概率预测
提取最近的6个预测值。
根据这6个数值,将x、t和y、t分别以此作为最小二乘法的输入,得到出x(t)与y(t)的关系,当t=n的后续时间时,即可得到预测的坐标点。
利用概率计算公式,用概率值为每一个预测值进行约束。
其中概率函数是:
其中t是预测的相对时间,τ是预测被验证的次数,p:计算出来的概率值。
概率函数的范围是(0,1),概率的结果是与犯规次数time成反比(惩罚),与预测被验证的次数τ成正比(奖励)。在这种奖惩方式下,使得该概率函数能够较好的代表预测值的准确程度。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。