本发明涉及一种基于无迹卡尔曼滤波(unscentedkalmanfilter,ukf)的射频识别(radiofrequencyidentification,rfid)标签室内跟踪方法及设备,属于物联网射频识别技术领域。
背景技术:
射频识别是一种无线通信的自动识别技术,它采用无线射频信号完成物品信息的采集和传输,具有非视距,非接触,成本低,环境适应能力强等优点,被广泛应用于与生活息息相关的物品供应链,物流追踪,交通运输,门禁控制,车间生产等领域。rfid系统通过读写器和电子标签之间的通信,可以对物体进行信息数据搜集,为上层应用提供准确有效的数据支持。rfid定位跟踪技术利用读写器和电子标签之间的双向数据交换,对待测目标进行定位和追踪,在获取物品id的同时获取到物品的位置信息,成为室内定位技术的研究热点。
目前在室外定位跟踪中最常用的技术是通过卫星定位的gps定位。但是,在室内环境中,由于建筑物构造复杂,导致卫星信号衰减甚至丢失,并且室内场所面积有限,所以卫星通信无法满足室内定位跟踪的高精度的需求。目前在室内定位中比较常用的技术是红外线,zigbee,wi-fi,rfid等等。其中,rfid定位技术是具有成本低,环境适应能力强,可以在很短的时间内达到较高的定位精度等优点,因此rfid定位技术得到越来越多的关注。rfid定位可以应用于物品跟踪,如仓储物流,车间巡检等,也可以用于人员定位如矿井工作人员跟踪,老年人跟踪,医院病人管理等。射频识别定位方法可以分为测距算法和非测距算法。测距算法的实质是测量标签与阅读器之间的方位或距离进行定位,各个算法采用的测距方法不同,比如toa,tdoa,aoa,rssi等等。非测距定位算法以场景分析法为主。比如,vire方法引入了参考标签,但是定位精度与参考标签的密度紧密相关,密度越大定位误差越小,但是当密度过大时,标签之间又会产生信号的干扰,导致搜集的信息不准确,定位精度不高。
技术实现要素:
发明目的:针对上述现有技术的不足,本发明的目的是提供一种基于无迹卡尔曼滤波的rfid标签室内跟踪方法及设备,该方法采用非线性支持向量回归进行离线训练,通过粒子群迭代获取系统的观测向量,然后通过无迹卡尔曼滤波对观测向量进行滤波,最后用rts对滤波完成的轨迹进行平滑处理,有效地提高了室内跟踪精度。
技术方案:为实现上述目的,本发明采用的技术方案为:
一种基于无迹卡尔曼滤波的rfid标签室内跟踪方法,该方法包括如下步骤:
(1)根据目标标签的运动状态,建立系统的状态模型xk+1=f(xk)+wk和观测模型zk=h(xk)+vk;其中下标k表示时刻,xk表示系统的状态向量,包括目标标签在x轴方向的位置和速度,以及目标标签在y轴方向的位置和速度;zk表示系统的观测向量,f表示非线性状态方程函数,h表示非线性观测方程函数,wk表示零均值、协方差矩阵为q的过程噪声,vk表示零均值、协方差矩阵为r的观测噪声;
(2)将均匀分布在室内的参考标签的rssi及参考标签与阅读器的距离通过非线性svr进行训练,构建出rssi与距离的非线性映射关系;
(3)获取目标标签在当前时刻的rssi,根据步骤(2)构建的非线性映射关系,估算出目标标签与读写器之间距离,构建计算目标标签位置的非线性方程组,并将非线性方程组求解问题转化为目标函数的优化问题,通过粒子群优化对目标函数求解,得到当前时刻的目标标签的观测坐标;
(4)通过无迹卡尔曼滤波算法对当前时刻之前的目标标签的观测轨迹进行前向滤波;
(5)对滤波后的轨迹进行后向平滑,平滑后的轨迹为目标标签的室内跟踪轨迹。
在优选的实施方案中,所述步骤(1)中系统的状态向量为:xk=[pxkvx(k)pykvy(k)]t;其中,pxk为目标标签在x轴方向的位置,vx(k)为目标标签在x轴方向的速度,pyk为目标标签在y轴方向的位置,vy(k)为目标标签在y轴方向的速度;
系统的非线性状态函数与系统的运动状态有关;对于匀速运动的目标标签,系统的状态模型为:
对于匀速转弯的目标标签,系统的状态模型为:
系统的观测模型为:
在优选的实施方案中,步骤(2)具体包括:
(2.1)根据阅读器获取的均匀分布在室内的参考标签的信号强度值rssi建立参考标签的rssi矩阵;根据参考标签与阅读器之间的距离建立参考标签的距离矩阵;
(2.2)将参考标签的rssi作为样本的输入值,将参考标签的距离作为样本的期待输出值,参考标签的rssi与距离一一对应,通过非线性svr进行训练;
(2.3)根据非线性svr的训练结果,建立输入信号强度rssi和输出距离之间的非线性映射关系。
在优选的实施方案中,步骤(3)中的非线性方程组为:
其中,di是估算出的目标标签与第i个阅读器之间的距离,(x,y)为目标标签坐标,(xi,yi)为阅读器的位置坐标,i∈(1,m);m是阅读器的个数。
在优选的实施方案中,步骤(3)中的粒子群优化的目标函数为:
在优选的实施方案中,所述步骤(4)中的无迹卡尔曼滤波的步骤包括:
(4.1)k时刻的系统状态xk采用ut变换获取sigma点,并采用比例修正采样策略获取sigma点对应的均值权重
(4.2)计算sigma点的一步预测xi,k+1/k=f(xi,k),并计算得到系统状态量的估计值
(4.3)将预测的sigma点代入观测方程计算预测的观测量zi,k+1/k=h(xi,k+1/k),并计算得到系统观测量的预测值
(4.4)利用下一时刻的观测向量zk+1进行更新,得到递推过程中最后的估计值
在优选的实施方案中,所述步骤(5)中的后向平滑采用的是分段rts平滑,将标签运动的整个过程分为多段,每段逐步逆向平滑。
本发明另一方面提供的一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述计算机程序被加载至处理器时实现所述的基于无迹卡尔曼滤波的rfid标签室内跟踪方法。
有益效果:与现有技术相比,本发明的优点在于:本发明所涉及的rfid标签室内跟踪方法,采用非线性支持向量回归标签的信号强度值与距离进行离线训练,有效地提高了rssi测距的精度,根据目标标签的rssi估算距离后构建目标函数,通过粒子群优化对目标函数求解获取系统的观测向量,使得系统的观测向量精度较高,然后通过无迹卡尔曼滤波对观测向量进行滤波,最后用分段rts平滑对滤波完成后的轨迹进行平滑处理,有效地提高了室内跟踪精度。与现有的技术相比,本发明实现了在较少的参考标签和阅读器数量的情况下,通过非线性支持向量回归以及粒子群优化的方式提高了系统观测向量的精度,并在此基础上通过无迹卡尔曼滤波和分段rts平滑对轨迹进行平滑,而非直接采用目标标签到读写器之间的距离作为观测向量,本发明将目标标签的位置坐标作为观测向量,通过svr和pso提高观测向量精度后进行滤波和平滑,降低了运动目标轨迹跟踪的误差,极大地提高了轨迹跟踪的精度。
附图说明
图1为本发明实施例中标签跟踪方法的系统模型图;
图2为本发明实施例中标签跟踪方法的流程示意图;
图3为本发明实施例中标签跟踪方法的运动模型仿真图;
图4为本发明实施例中标签跟踪方法的仿真结果误差图。
具体实施方式
以下结合附图和具体实施例对本发明作进一步详细描述。
如图1所示,是标签室内跟踪方法实施的系统模型图,具体要求如下:在目标区域放置4个阅读器和均匀分布的m个参考标签,通常在区域中的每个角落放置一个阅读器,并每隔两米放置一个参考标签;并随机生成一定数量的待定位标签散落在目标区域。阅读器的阅读范围能够覆盖整个区域,其中阅读器的位置坐标为(xi,yi),i∈(1,m);
如图2所示,本发明实施例公开的一种基于无迹卡尔曼滤波的rfid标签室内跟踪方法,主要包括如下步骤:
(1)根据目标标签的运动状态,建立系统的状态模型xk+1=f(xk)+wk和观测模型zk=h(xk)+vk;其中下标k表示时刻,xk表示系统的状态向量,包括目标标签在x轴方向的位置和速度,以及目标标签在y轴方向的位置和速度;zk表示系统的观测向量,f表示非线性状态方程函数,h表示非线性观测方程函数,wk表示零均值、协方差矩阵为q的过程噪声,vk表示零均值、协方差矩阵为r的观测噪声;
系统的状态向量为:
xk=[pxkvx(k)pykvy(k)]t
其中,pxk为目标标签在x轴方向的位置,vx(k)为目标标签在x轴方向的速度,pyk为目标标签在y轴方向的位置,vy(k)为目标标签在y轴方向的速度。
系统的非线性状态函数与系统的运动状态有关。对于匀速运动的目标标签,系统的状态模型为:
对于匀速转弯的目标标签,系统的状态模型为:
系统的观测模型为:
过程噪声wk通常取方差为0.15,观测噪声vk通常取方差为1。
(2)将均匀分布在室内的参考标签的rssi及参考标签与阅读器的距离通过非线性svr进行训练,构建出rssi与距离的非线性映射关系;具体步骤包括:
(2.1)根据阅读器获取的均匀分布在室内的参考标签的信号强度值rssi建立参考标签的rssi矩阵;根据参考标签与阅读器之间的距离建立参考标签的距离矩阵;
(2.2)将参考标签的rssi作为样本的输入值,将参考标签的距离作为样本的期待输出值,参考标签的rssi与距离一一对应,通过非线性svr进行训练;
(2.3)根据非线性svr的训练结果,建立输入信号强度rssi和输出距离之间的非线性映射关系。
(3)获取目标标签在当前时刻的rssi,根据步骤(2)构建的非线性映射关系,估算出目标标签与读写器之间距离,构建计算目标标签位置的非线性方程组,并将非线性方程组求解问题转化为目标函数的优化问题,通过粒子群优化对目标函数求解,得到当前时刻的目标标签的观测坐标;具体步骤为:
(3.1)根据阅读器获取的待定位标签的信号强度值建立待定位标签的rssi矩阵,将待定位标签的rssi矩阵作为决策函数的输入,根据步骤(2)中rssi与距离的非线性映射关系,得到待定位标签与阅读器的距离矩阵;
(3.2)根据待定位标签的距离矩阵以及阅读器的位置坐标,构建出计算待定位标签位置的非线性方程组;
其中,di是估算出的目标标签与第i个阅读器之间的距离,(x,y)为目标标签坐标,(xi,yi)为阅读器的位置坐标,i∈(1,m);m是阅读器的个数。
(3.3)将非线性方程组求解问题转化为目标函数的优化问题,利用pso优化方法通过迭代寻求目标函数的最优解。其中,粒子群优化的目标函数为:
(3.4)计算并比较所有粒子的适应度值,根据全局最优值和个体最优值来改变粒子的位置和速度向最优解靠拢从而得到的最优解即为目标标签的位置坐标。
(4)通过无迹卡尔曼滤波算法对当前时刻之前的目标标签的观测轨迹进行前向滤波;具体步骤包括:
(4.1)k时刻的系统状态xk采用ut变换获取sigma点xi,k,并采用比例修正采样策略获取sigma点对应的均值以及方差的权值。sigma点对应的均值的权重记为
式中,λ=α2(n+v)-n,n是系统状态向量的维数,取值为4;α是用来设置点集到均值点的距离,通常为一个很小的数,取值为0.01,ν是一个比例参数,取值为0,β是高阶项信息参数,取值为2。
(4.2)计算sigma点的一步预测xi,k+1/k=f(xi,k),根据对sigma点的预测,对其加权求和获得系统状态量的一步预测
(4.3)根据系统预测值的协方差计算kalman增益:
(5)后向递推:通过rts平滑理论对滤波后的轨迹进行平滑,平滑后的结构即为目标标签的室内跟踪轨迹。后向平滑采用的是分段rts平滑,将标签运动的整个过程分为多段,每段逐步逆向平滑。分段平滑的具体步骤包括:
(5.1)初始化(k=n-1,…,1),其中n为每一段区间中采样点的个数;
(5.2)计算平滑增益
(5.3)更新平滑向量和方差;
实验环境配置为:本实验中,待定位区域为8m*8m的室内区域,在这个区域中的每个角落放置一个阅读器即m=4;在整个区域中均匀放置4*4个参考标签。粒子群优化的迭代总次数设为100。如图3所示,给出了本实例中基于无迹卡尔曼滤波的rfid标签室内跟踪方法的运动模型仿真图。运动目标的运动轨迹为:0~20s,在初始值基础上做匀速直线运动;
20~40s,目标在匀速直线运动之后做匀速左转弯运动;
40~60s,目标在匀速左转弯运动之后做匀速直线运动;
60~80s,目标在匀加速运动之后做匀速右转弯运动;
80~100s,目标在匀速右转弯运动之后做匀速直线运动。
如图4所示,给出了本实例中基于无迹卡尔曼滤波的rfid标签室内跟踪方法的仿真结果误差图。由图4可以看出,在同样的实验仿真条件下,本发明中rfid标签定位的误差明显低于经典的vire和ekf方法的定位误差。由上可知,本发明实施例中的标签跟踪方法与现有技术的室内跟踪算法相比具有更高的定位精度,在目标运动状态发生改变时,本发明中的跟踪方法仍然具有良好的跟踪结果,鲁棒性强。
基于相同的技术构思,本发明实施例还提供了一种计算机设备,该计算机设备可以包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述计算机程序被加载至处理器时实现上述基于无迹卡尔曼滤波的rfid标签室内跟踪方法。
以上所述仅为本发明的较佳实施方式,本发明的保护范围并不以上述实施方式为限,但凡本领域普通技术人员根据本发明所揭示内容所作的等效修饰或变化,皆应纳入权利要求书中记载的保护范围内。