基于信道状态信息的被动式目标轨迹跟踪方法*

2019-08-14 09:55郝占军颜丽华党小超
传感技术学报 2019年7期
关键词:被动式卡尔曼滤波指纹

郝占军,颜丽华,党小超,2

(1.西北师范大学计算机科学与工程学院,兰州 730070;2.甘肃省物联网工程研究中心,兰州 730070)

室内不像在室外环境中一样可借助卫星信号进行定位导航,因此基于WiFi的室内位置服务应用越来越广泛[1]。人的移动轨迹相比于物体的移动和单纯的定位信息,是一个更加细粒度,更为深层次的精确测量,所以室内的人员轨迹跟踪检测具有一定的难度,与人员位置信息[2]的获取相比,人员轨迹跟踪更加复杂,存在着很多壁垒。目前被广泛使用的目标轨迹跟踪方法,大部分需要给被测目标佩戴RFID标签、UWB标签、[3]GPS模块等设备,才能完成目标轨迹跟踪,如果在某些紧急情况下,所需观测的对象不方便或不配合携带设备,就无法完成对目标人员的轨迹跟踪,例如对病人行为轨迹的监测,对入侵者的监测。针对上述情况,有研究者提出了被动式人员轨迹跟踪,被动式目标轨迹测绘因为其不需要被测者携带任何设备而逐渐成为研究热点。

目前,主流的人员跟踪系统主要有被动式目标轨迹跟踪、专业化的特殊的传感器轨迹跟踪、基于位置信息的轨迹跟踪、基于人体行为监控的轨迹检测。文献[4]针对能耗和计算量问题,提出了基于压缩感知的被动式目标跟踪算法,该算法可以通过观测少量数据测绘出目标人员的轨迹。文献[5]提出了一种通过摄像机采集到运动目标图像,再利用卡尔曼滤波对运动目标进行跟踪对算法。文献[6]针对不同的运动目标和运动速度,提出了自适应滤波方法,即根据不同的速率自动匹配不同的滤波方法。文献[7]和文献[8]在无设备跟踪方面,作者利用卡尔曼滤波基于RIT方差和基于子空间方差的无线电层析成像的定位结果来跟踪单个人。文献[9]将工作扩展到多个人的追踪,把多个人的追踪问题转化为一个数据分配问题(DAP),用最小化DAP成本来实现多人追踪。文献[10]在室内环境的轨迹跟踪中,提出了基于信道状态信息CSI(Channel State Information)的Doopler-Music轨迹跟踪算法。目前的轨迹跟踪方法仍然存在通信消耗大,算法复杂度高等问题,针对这些问题,本文提出了基于CSI的被动式目标轨迹跟踪方法。

1 相关理论

1.1 信道状态信息

CSI与信号接收强度(Received Signal Strength,RSS)相比,是一个更加细粒度的描述无线物理信道状态的量[12-13],对环境的变化更加敏感,常应用于人体行为感知识别、人员行为状态分析、行动轨迹跟踪等。本文所讲的CSI就是无线信道中信号在每条传输路径上的衰弱因子,当有目标出现在观测区域的不同位置时,CSI信号会发生不同程度的衰减,从而可以检测到人员的位置信息[14]。

1.2 卡尔曼滤波

卡尔曼滤波器是一种很好的统计工具,它可以用最小化误差平均值来估计过程状态[15]。本文使用卡尔曼滤波器将当前估计与新测量混合,以最小化估计方差的方式产生新估计。根据概率的基本规律,卡尔曼滤波算法在解决目标人员跟踪问题时是在得到观测信息的基础上,通过当前状态向量的概率密度函数(PDF)从而估计计算出目标的状态[16]。卡尔曼滤波的过程中,试图估计的是目标人员的坐标和速度,而本文测量的只是坐标。利用预先定义好的基于卡尔曼滤波的跟踪模型,将基于卡尔曼滤波的跟踪模型应用于基于位置指纹的跟踪算法中。

1.3 K近邻算法

K近邻(KNN)算法在进行分类时,只与少量的相邻样本有关,与分类规则,K的大小和距离度量息息相关[17]。因此KNN算法适用于交叉或重叠区域较多的样本集。

输入:训练数据集,

T={(x1,y1),(x2,y2),…,(xn,yn)}

其中xi∈Rn,yi∈{c1,c2,…,ck}和测试数据x。

输出:实例x所属的类别。

在本文应用KNN算法进行位置跟踪匹配时三要素分别如下描述:

距离度量:

(1)

其中p≥1;当p=2时是欧氏距离,当p=1时是曼哈顿距离。

在应用中通常采用交叉验证的方法来选取合适的K值,一般来说K值较小并且是奇数[15]。

分类规则:根据给定的距离度量,在训练集T中找到与x距离最近的k个样本,涵盖这k个点的x的邻域记作Nk(x)。

在Nk(x)中根据分类规则(如多数表决)确定x的类别y:

(2)

给定测试样本x,其中最邻近的k个训练实例构成集合Nk(x),分类损失函数为0-1损失[11]。0-1损失函数是指如果预测值与目标值不相等,则为1,否则为0。如果涵盖Nk(x)区域的类别为cj,则分类误差率是:

2 被动式目标轨迹跟踪方法

本文提出了一种基于信道状态信息的目标人员轨迹跟踪方法,首先通过布置好的实验环境采集CSI数据,建立离线指纹库。在进行目标跟踪时,首先通过K最邻近(KNN)算法得到一个位置估计,然后利用融合了卡尔曼滤波算法的位置指纹跟踪系统得到目标的位置,最后将目标人员的所有活动点连接起来得到目标人员的运动轨迹。其目标轨迹跟踪方法基本流程图如图1所示。

图1 目标人员轨迹跟踪流程图

2.1 基于卡尔曼滤波的跟踪模型

针对人员轨迹跟踪系统,先验知识包括被测者的位置、朝向、当前运动状态、运动速度等[18],观测信息包括被测者的加速度、位移等。

系统模型为:

Ok=g(Ok-1,Rk-1,Tk)

(4)

观测模型为:

Qk=j(Ok,Sk)

(5)

Ok是第k次迭代时的状态向量,Qk是第k次迭代时的观测状态,g(·)表示系统函数,Rk是系统输入,j(·)表示观测函数,Tk是过程噪声,Sk是测量噪声。

根据概率的基本规律,卡尔曼滤波算法在解决目标人员跟踪问题时是在得到观测信息的基础上,通过当前状态向量的概率密度函数从而估计计算出目标的状态。

预测状态:使用先前的测量值进行k-1次迭代来预测当前状态Ok:

(6)

更新状态:使用第k次迭代得到的测量值更新预测Ok的值:

其中g(Qk|Ok)是可能性,p(Ok|Q1:k-1,R0:k-1)是先验概率,p(Ok|Q1:k,R0:k-1)是后验概率。

如果式(4)中的系统模型g(·)和测量模型j(·)都是状态向量Ok的的线性函数,输入Rk,式(5)中的测量噪声Sk是高斯噪声,则式(6)和式(7)可以被写成如下:

Ok=AOk-1+CRk-1+Tk

(8)

Qk=HOk+Sk

(9)

其中是A状态转移矩阵,C是输入矩阵,H是度量矩阵。

在我们的跟踪系统中,我们假设目标人员以匀速方式行走,设置不同的行走速度。

设状态向量Ok=[pxk,pyk,vxk,vyk],其中(pxk,pyk)和(vxk,vyk)分别是主体的坐标和速度,nk是系统的随机加速度。所以系统模型为:

Ok+1=AOk+Bnk

(10)

其中:

对于测量模型Qk=HOk+Sk直接在本地化系统中测量到目标人员的坐标Qk=(pxk,pyk),所以我们的跟踪系统测量方程式为:Qk=(pxk,pyk),测量矩阵H为:

最终融合了卡尔曼滤波算法的目标人员跟踪模型描述如下:

Step1使用先前的测量值进行次迭代来预测当前状态。

Step2使用第k次迭代得到的测量值更新预测Ok的值。

Step3若系统模型g(·)和测量模型j(·)都是状态向量Xk的的线性函数,则将式(6)和式(7)改成式(8)和式(9)。

2.2 基于CSI的KNN位置指纹跟踪方法

基于CSI的KNN位置指纹算法采用现有的WIFI网络和CSI数据采集设备,将在线阶段采集到的数据与先前建立好的离线数据库进行匹配得到结果。

2.2.1 离线阶段

由于实验过程中会受到多种因素的影响,产生多种噪声,利用卡尔曼滤波对数据进行预处理。如图2(a)是在参考点采集出的CSI数据用MATLAB解析出的图像,从图2(a)中我们可以看出,数据中包含了很多噪声,为了使指纹数据库更加精确,我们对采集到的数据进行多次训练并利用卡尔曼滤波算法对CSI数据进行预处理,处理后的图像如图2(b)所示。

图2 数据预处理

2.2.2 在线阶段

在线位置估计阶段,使用K-最近邻(KNN)算法作为匹配算法,指纹的偏差表示为欧氏距离,方程式为:

(12)

其中CSIji是从APj处的CSI数据,CSIj是在线估计阶段测量到的CSI数据,m是AP的数量。

(13)

最后选择k个最近的样本来估计目标人员的位置,其中ε是一个非常小的正常数。具体的方法描述如下:

Step1在线阶段采集CSI数据进行卡尔曼滤波预处理。

Step2计算运动目标某时刻位置的指纹偏差,利用式(11)计算欧式距离。

Step3使用位置指纹算法将实际测量的位置与参考位置进行匹配,得到位置估计。

Step4将预先规定好的跟踪模型与KNN位置指纹算法融合,得到目标人员的运动轨迹。

在离线阶段,对指纹进行多次测量,并利用统计工具消除误差。在线位置估计阶段,考虑到目标跟踪是实时性的,可以对指纹进行很少的测量。在复杂的室内环境中,信号容易受到干扰,在相位中获得的数据总是伴随着噪声,因此,跟踪误差是由在线位置估计中测量的指纹的不准确性导致的。所以,将卡尔曼滤波模型与KNN位置指纹算法结合可以大大降低在线阶段的不确定性,提高系统的精度。

图3 监控区域网格图

3 实验验证及性能分析

3.1 目标人员轨迹测绘场景设置

设置一个面积是X×Y的矩形区域为目标人员活动监控区域,将监控区域等分为c×c的正方形网格,如图 3所示。接下来在图 4所示的场景中进行目标人员的轨迹测绘。但是在实际场景中所监控的区域长宽X或Y往往不能被网格边长c整除,所以我们选择在监控区域中选择一块正方形区域划分为c×c的网格,将网格按照从上到下,从左到右的顺序编号为1,2,3,…,N;在监控区域的一侧布置信号发射器,另一侧布置信号接收器,接收信号的天线与发射信号的天线布置在同一高度,发射天线为2根,接收天线为3根。

当开启设备让它们相互之间进行通信时,监控区域整个被无线信号覆盖,当监控区域中出现目标时,目标会对无线通信链路的信号产生干扰,包括折射、吸收、反射等。由于目标的运动,无线链路受到不同的干扰,会收集到不同的CSI值。这种变化使得CSI可以对目标进行跟踪。图3为监控区域网格图。

3.2 实验环境

实验设备是两台内核和无线网卡驱动均经过定制的台式电脑,CPU型号为Intel Core i3-4150,操作系统为Ubuntu10.04LTS,网卡为Atheros 9380,其中一台为信号发射机,一台为信号接收机。实验场地是一个12 m×8 m的办公区域,12 m×8 m的办公区域被划分成取出一个6 m×6 m正方形子区域,子区域被划分为25个1.2 m×1.2 m的网格,信号接收机与信号发射机距离8 m,天线高度为1.2 m。实验场景的平面图以及详细部署如图4所示。

图4 实验室环境平面图

在训练阶段,我们把一名为身高170 cm的女性人员作为跟踪目标,收集CSI数据。在办公区域的跟踪区域是6 m×6 m。让目标人员沿着正方形网格走。在实验中,让目标人员沿着设定好相同的路线行走,收集100次数据,分析跟踪的目标轨迹的效果。图4为本文的实验室环境平面图。

3.3 跟踪性能分析

目标人员在监测区域中沿着预先设定好的轨迹以匀速速度行走,获取真实的数据信息,目标人员移动时录制视频。为了收集到数据的准确性,排除室内环境变化的影响,每次实验都选择在每天的21:00到23:00。实验中设置发包速率为100 Hz/S,行走速度为0.5 m/s,目标人物为170 cm的女性。目标人物的步距大约1 m~1.2 m。第一个实验选择直线轨迹。图5是人员在沿直线行走时的跟踪结果,圆形图标为跟踪轨迹,加号形图标为真实轨迹,图5(a)是跟踪轨迹与实际轨迹的跟踪路径图,图5(b)是跟踪轨迹与实际轨迹的针状图。

图5 跟踪结果(直线)

图6 跟踪结果(圆弧)

由图5可知,当目标人员沿着直线行走时,跟踪描绘出的跟踪结果误差较小,跟踪结果较为准确。基于CSI的被动式目标轨迹跟踪对于直线行走的目标可以较为精准的描绘出来,真实轨迹和跟踪轨迹基本重合,跟踪效果明显,达到预期的精度。

第2个实验选择了圆弧轨迹,跟踪结果如图6所示,圆形图标为真实轨迹,三角形图标为跟踪轨迹,图6(a)为跟踪轨迹结果图,图6(b)为跟踪结果针状图。

由图6可知,当跟踪轨迹为圆弧时,跟踪轨迹与实际轨迹基本一致,跟踪结果较为精确。综合图5、图6可知,在简单轨迹追踪时,实际坐标与跟踪坐标差距不大,跟踪结果精确度高,在面对复杂轨迹时,实际坐标与跟踪坐标有了较大差距,跟踪性能产生误差,特别是在直角拐弯处跟踪波动较大。为了消除噪声、提高精度,本文引入卡尔曼滤波算法进行位置指纹跟踪,跟踪性能有了较大提高。

不同的运动轨迹会对跟踪性能产生不同的影响,本文设计了直线、矩形、圆弧三种不同的运动轨迹,图7显示了不同的轨迹的误差分布图。

由图7可知,当运动轨迹为直线和圆弧时,跟踪精度较轨迹比跟踪轨迹为矩形时高,跟踪误差在1.5 m能够达到20%,跟踪误差在3 m以内均达到60%以上,相比之下运动轨迹为矩形时误差就相对较大,跟踪误差在4 m时仅有69%。运动轨迹越简单,运动轨迹越长,跟踪精度越高。

为了研究行走速度对跟踪误差的影响,让目标人员在室内按照直线轨迹以匀速行走,速度分别为0.5 m/s,1.0 m/s,1.5 m/s。速度对跟踪误差的影响如图8所示。

图7 不同速度跟踪误差CDF图

图8 不同速度跟踪误差CDF图

由图8可知,速度为0.5 m/s时跟踪精度在2 m以内的概率达到了50%,而速度为1.5 m/s时的跟踪精度在2 m以内的概率只有26%,说明了速度的快慢会对跟踪精度产生影响,速度为0.5 m/s时跟踪误差最小,跟踪精度最高。

图9是不同目标的跟踪性能比较,分别选择185 cm,178 cm的男性和170 cm女性进行对比实验,实验结果如下。

图9 不同目标人员跟踪误差CDF图

由图9可知不同的目标对跟踪误差的影响不大,在不同跟踪目标可以达到相近的精度,说明本方法对不同目标具有普适性。

发包速率对采集的CSI数据会产生影响,不同的运动状态对应着不同的最佳发包速率,所以本文为了获得最佳的跟踪效果,实验验证了不同发包速率的影响,如图10所示。

图10 不同发包速率跟踪误差CDF图

由图10可知,当发包速率为100 Hz/S时,跟踪性能达到最好,200 Hz/S的发包速率就较差,相比而言,100 Hz/S的发包速率比200 Hz/S的跟踪误差减小了越18%,实验说明对于运动中的目标,50 Hz/S~100 Hz/S的发包速率是最优的区间,不同的运动状态要选择适合的发包速率。

为了验证本文提出的被动式目标轨迹跟踪方法,体现本文算法在跟踪性能方面的优势,将本文算法与表1中的其他目标人员轨迹跟踪算法进行比较。

表1 跟踪方法性能比较

表1显示了本文提出的被动式轨迹跟踪方法与其他目标跟踪方法的性能参数,从文中可以看出,本文提出的被动式轨迹跟踪方法提高了跟踪精度,减小了计算时间和通信开销。本文的跟踪方法比Doppler-music算法,传统的KNN和K-means算法的精度分别提高了1.7%、3.7%和6.9%,总体来说,跟踪性能有所提高,能更好的实现对目标人员的轨迹跟踪。

4 结论

针对目前的被动式目标人员轨迹跟踪方法计算开销大,算法复杂度高等问题,将实时数据与离线数据库中的数据利用融合了卡尔曼滤波的KNN位置指纹算法进行匹配,实现目标人员轨迹跟踪。反复实验证明,本文提出的被动式目标轨迹跟踪方法,在普适性,跟踪精度等方面均有提高,跟踪可靠性更高。

猜你喜欢
被动式卡尔曼滤波指纹
基于深度强化学习与扩展卡尔曼滤波相结合的交通信号灯配时方法
被动式音乐疗法改善脑卒中后睡眠障碍的研究进展
像侦探一样提取指纹
被动式节能在住宅建筑设计中的应用分析
为什么每个人的指纹都不一样
卡尔曼滤波在信号跟踪系统伺服控制中的应用设计
被动式低能耗建造技术探析
基于递推更新卡尔曼滤波的磁偶极子目标跟踪
基于有色噪声的改进卡尔曼滤波方法
简化供暖在被动式公寓的应用