发明内容
本发明所要解决的技术问题是:提供一种基于线性链条件随机场的融合室内定位方法,通过对室内地磁技术和室内无线射频定位技术的融合,提高了室内定位结果的普适性和鲁棒性。
本发明为解决上述技术问题采用以下技术方案:
一种基于线性链条件随机场的融合室内定位方法,包括如下步骤:
步骤1,获取室内地图,根据室内地图规划室内地磁指纹采集路径,通过采集路径采集室内地磁指纹,构建室内地磁指纹地图,根据室内地磁指纹地图中室内地磁强度变化趋势构建地磁特征函数;
所述地磁特征函数公式t1为:
其中,Yt表示t时刻对应的定位位置坐标,表示t时刻的观测变量和 分别表示根据t到t-1时刻之间的室内地磁强度变化趋势所计算得到的定位位置坐标的均值、协方差;
步骤2,根据步骤1获取的室内地图,在室内人员密集之处和必经之处部署BLE设备,构建BLE地标地图,根据BLE设备的RSSI值构建地标信号峰值函数;
所述地标信号峰值函数公式t2为:
其中,YP表示BLE设备的RSSI峰值对应的定位位置坐标,Xt-i、Xt+i分别表示在t-i、t+i时刻采集得到的RSSI值,i表示采集间隔;
步骤3,根据步骤1获取的室内地图,以网格状的形式在室内均匀采集无线射频信号强度指纹,构建无线射频信号强度指纹地图,根据无线射频信号强度指纹构建信号指纹特征函数;
所述信号指纹特征函数公式t3为:
其中,Yt R表示t时刻Xt R对应的定位位置坐标,Xt R表示t时刻的观测变量μt R和μt R、分别表示利用BLE指纹定位算法计算得到的定位位置坐标的均值、协方差;
步骤4,建立线性链条件随机场模型,并利用改进的迭代尺度法对该模型进行训练,得到该模型的参数,将步骤1-步骤3构建的三个特征函数t1、t2、t3代入线性链条件随机场模型,利用维比特算法进行定位位置坐标的计算。
作为本发明的一个优选方案,步骤1所述根据室内地图规划室内地磁指纹采集路径,通过采集路径采集室内地磁指纹,构建室内地磁指纹地图的具体方法为:设置每条采集路径的起始点和终止点,且每条采集路径的起始点和终止点之间的连线为一条直线,每条采集路径的长度为25米,相邻两条采集路径之间的间距为0.5米;采集室内地磁指纹时,手执磁力计,从每条采集路径的起始点开始,以0.4m/s~0.65m/s的速度匀速直线行走至终止点,当一条采集路径采集完成时,判断是否结束采集,如果否,则继续下一条采集路径的采集,直至结束,利用线性插值法对采集的室内地磁指纹进行处理,构建室内地磁指纹地图。
作为本发明的一个优选方案,步骤3所述BLE指纹定位算法为KNN算法。
作为本发明的一个优选方案,步骤4所述线性链条件随机场模型的公式为:
其中,Z(x)表示规范化函数,tk表示特征函数,k=1,2,3,λk表示该模型的参数,t表示时刻,y表示定位位置坐标的值,x表示观测变量的值。
作为本发明的一个优选方案,步骤3所述以网格状的形式在室内均匀采集无线射频信号强度指纹,构建无线射频信号强度指纹地图的具体方法为:根据室内地图在室内呈网格状部署指纹采样点,利用磁力计对每个指纹采样点通信范围内的所有无线射频设备信号进行采样,并记录和存储当前指纹采样点的位置坐标、该指纹采样点通信范围内无线射频设备的MAC地址及对应的RSSI值,当所有指纹采样点都采集完成后,无线射频信号强度指纹地图即构建完成。
本发明采用以上技术方案与现有技术相比,具有以下技术效果:
1、本发明对行人进行定位时,利用线性链条件随机场模型,有选择地融合多种定位技术实现室内定位应用。定位方法实现了三种定位技术的融合定位,将室内地磁强度指纹、BLE地标以及无线射频信号强度指纹三种定位技术进行融合定位,三种定位技术之间形成互补关系,具有很好的普适性,在不同硬件设施的定位场景均可实现定位应用。
2、本发明定位方法具有较强的鲁棒性,即使受到定位场景的限制或设备成本的限制,无法在室内场景中部署无线射频设备,依然可以利用室内地磁技术实现室内定位应用。同样,也不会因为射频设备的损坏和更替导致室内定位失效的情况。
3、本发明定位方法可按需部署BLE设备作为BLE定位地标,可根据不同的需求提升局部定位精度。
4、本发明定位方法提出的连续地磁指纹采集方法可以通过众包更新的方式逐步建立更加完整精确的室内地磁强度指纹地图。
5、本发明定位方法中的无线射频信号强度指纹定位并不局限于BLE技术,一般的能够利用指纹定位法的无线射频技术皆可,例如:Wi-Fi技术。
具体实施方式
下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本发明提出的基于线性链条件随机场模型的融合室内定位方法,将室内地磁强度指纹技术、BLE信号地标技术以及无线射频信号强度指纹技术进行融合,实现室内定位应用。本实施例中,无线射频信号为BLE信号。在进行室内定位应用之前,有三项预处理工作需要提前准备:建立室内地磁强度指纹地图,建立BLE信号地标地图,建立BLE信号强度指纹地图,并利用训练数据对线性链条件随机场模型进行参数训练。在定位过程中,根据训练得到的模型参数,利用维特比算法进行定位位置计算。
在进行室内定位应用之前,本发明首先建立室内地磁指纹地图。在定位应用开始前,根据具体的室内地图信息,规划室内地磁指纹采集路径,并沿着规划的采集路径进行地磁指纹数据的采集。室内地图信息可通过相应的建筑平面CAD图获得,可通过边缘检测算法提取出图中所对应的位置信息。具体的地磁指纹采集步骤如下:
1、行人在室内地图上选定一条地磁指纹地图采集路径的起始点和终止点,一般起始点和终止点之间的连线为一条直线,并且采集路径要求平行于室内通道的墙面且不宜过长;
2、行人在步骤1中规划的采集路径上进行室内地磁指纹的采集,要求行人保持一个速度较慢且速度均匀的行走方式进行指纹采集,即要求指纹采集者以一个较低的速度匀速运动,一般行人的速度保持在[0.4m/s,0.65m/s];
3、完成一条采集路径的地磁强度指纹采集时,判断是否结束地磁强度指纹的采集,若结束则转到步骤4,若未结束则回到步骤1。需要注意的是,采集路径之间的间距一般取一个步长左右的距离,这里设为0.5m;
4、利用线性插值法对地磁指纹的采集路径进行处理,构建室内地磁指纹地图。
室内地磁指纹采集路径如图1所示,在一条室内通道上共规划了P1、P2、P3、P4四条采集路径,利用上述的地磁指纹采集方法对该室内通道建立地磁指纹地图,建立的地磁强度指纹地图如图2所示,其中y-axis表示y轴(米),Distance(m)表示距离(米)。采集的磁力指纹记录Mt包括磁力强度值和相应的位置信息,如公式(1)所示。
Mt=(mt,dt) (1)
其中,mt为计算得到的三轴磁力计标量,dt为对应的位置向量。
其次,需要建立BLE地标地图,如图3所示。使用BLE定位地标对定位点的坐标进行校正,就是利用RSSI的定位方法对定位点的坐标进行校正。对于BLE设备而言,其发射功率是可以调整的,可以把BLE的通信距离控制在一定的范围内,对进入范围的定位点进行坐标校正。在图3中,三角形图标即BLE定位地标所在,包裹每个定位地标的圆圈则是该定位地标的通信范围。实线圆圈的通信范围较小,虚线圆圈的通信范围较大,这是根据定位地标的需求而限定的,实线所在的三个地标都是部署在定位场景的走廊上的,这三个地标的通信范围只覆盖走廊区域。虚线圆圈所在的两个定位地标是部署在主要的上下楼通道口的,为了能够纠正每一个从通道口走过的行人的定位点,因此通信范围相对较大,覆盖了整个通道口的区域。定位地标的通信范围调整可以根据不同地点和不同的需要自由调整。
接着,需要建立BLE信号强度指纹地图,如图4所示。BLE信号强度指纹地图的构建方法使用的是传统的指纹地图建立方法。在行人定位的离线阶段,即定位应用开始之前,在定位场景中呈网格状的形式部署指纹采样点,在每一个采样点处利用智能移动终端对通信范围内的所有BLE设备信号进行指纹库的建立,记录当前的位置坐标以及各个BLE设备的MAC地址以及对应的RSSI值。最终将上述三种指纹数据存储进BLE指纹数据库,即为一个指纹采样点采集完毕,当所有指纹采样点的指纹值都存储进BLE指纹数据库之后,BLE信号强度指纹地图也就构建完成。图4中每一个圆点即指纹采样点。
线性链条件随机场是一种无向图模型,其无向图结构如图5所示。本发明中用于实现室内定位应用的线性链条件随机场需要在定位应用开始前使用改进的迭代尺度法进行模型的学习,在定位应用进行时利用维特比算法对定位位置进行预测。在对线性链条件随机场模型进行学习和预测前,需要针对上述的三种定位技术建立各自的特征函数。
设随机变量序列:X=(X1,X2,...,Xn)和Y=(Y1,Y2,...,Yn),其中X为观测序列,表示模型的输入序列,由智能移动终端采集的数据计算得到,采集的数据如:地磁强度值、BLE的RSSI值;Y表示输出序列,表示行人的位置坐标,是满足马尔科夫性的。那么线性链条件随机场的一般表达形式为:
P(Yt|X,Y1,...,Yt-1,Yt+1,...,Yn)=P(Yt|X,Yt-1,Yt+1) (2)
选择指数势函数并引入特征函数,用x和y分别表示随机变量X和Y的取值,可得线性链条件随机场的参数化形式:
在公式(3)中,Z(x)表示规范化函数,tk表示观测序列的两个相邻输出位置上的转移特征函数依赖于输出变量之间的关系及观测序列的影响;λk是对应于特征函数的参数。
对于磁力指纹而言,本文利用磁力指纹的变化趋势进行室内指纹定位,因此,磁力指纹的特征函数定义为:
在公式(4)中,Yt表示在t时刻的输出变量,即定位位置坐标;表示t时刻的观测变量,即和和分别表示根据t时刻和t-1时刻间地磁指纹数据变化趋势所计算得到的定位位置坐标的均值和协方差。
在进行磁力指纹定位时,利用似然函数对磁力指纹库中t时刻和t-1时刻间的地磁变化进行位置匹配,对每一个指纹匹配点设一个权值ωt,选择最大的ωt所对应的位置坐标作为磁力指纹的定位坐标,如公式5所示。
d=arg max(ωt) (5)
在公式(6)中,mt表示t时刻智能移动终端采集得到的磁力值信息,f(dt)表示磁力指纹匹配函数,f(dt)的作用是返回一个磁力指纹库中与dt所对应的坐标位置距离最近的磁力指纹值,V表示协方差,n表示mt的维数。
对于BLE信号地标而言,主要原理是当智能移动终端进入BLE地标范围并检测到相应的BLE信号地标的峰值后,将定位位置纠正道BLE地标处,因此,BLE地标的特征函数为:
在公式(7)中,YP表示BLE设备的RSSI峰值所对应的位置坐标,Xt P表示[Xt-i,Xt+i]中的最大值,Xt表示在t时刻的智能移动终端采集得到的RSSI值,i表示采样间隔。
对于BLE指纹而言,由于本文使用传统的指纹地图构建方法,因此,BLE指纹的特征函数定义为:
在公式(8)中,Yt R表示在t时刻的定位位置坐标,Xt R表示在t时刻的观测变量,即μt R和μt R和分别表示利用BLE指纹定位法计算得到的位置坐标的均值和协方差。BLE指纹定位法采用常规的KNN算法。
在得到三种定位技术的特征函数之后,使用改进的迭代尺度法作为模型学习算法,利用训练样本数据对线性链条件随机场模型进行训练。在完成线性链条件随机场模型的训练后,进行室内定位应用时,本发明采用维特比算法进行定位位置的计算。
以上实施例仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明保护范围之内。