本发明涉及移动互联网技术领域,尤其涉及一种基于多维特征融合的自适应位置指纹定位方法。
背景技术:
随着移动互联网的快速发展,基于位置服务的需求倍受人们关注,特别是在大型、复杂、动态多变的室内场景,位置服务(lbs)日渐成为人们生活工作中必不可少的一部分,位置服务信息有助于对网络中突发事件进行事前预警、事中决策以及事后处理。例如,无线网络位置服务用于煤矿井下定位,可以在灾难发生前预知危险区域,灾难发生时,可以获取一条逃离路径,灾难发生后,可以及时采取有效措施进行补救。又如办公区域,工作人员可以迅速找到最近位置的打印机,因此,位置服务的贡献巨大,具有广泛的应用前景,人们对此有着广泛的需求。
但是,卫星信号在地表的强度很微弱,很容易被楼宇建筑阻挡或散射,通常不能穿透建筑墙体,人体对其阻碍也特别大,无法进入室内,因此会出现很多室内定位盲区,导致卫星定位系统在室外能有效地工作,而导致人们常常工作和活动的室内场所无法定位。
技术实现要素:
本发明的目的就在于为了解决上述问题而提供一种基于多维特征融合的自适应位置指纹定位方法。
本发明通过以下技术方案来实现上述目的:
本发明包括以下步骤:
(1)基于内容的定位过程:
1.1在定位区域设置n个参考点,以一定长度作为采样间隔,例如:将定位区域划分为2m*2m的小栅格,每个栅格作为参考点,智能手机可以通过摄像头可以记录栅格对应的图片或者视频,从而通过图片或者视频特征得到周围的内容,用于基于内容的定位;
1.2对每个栅格参考点的内容进行图片特征提取,形成特征向量ci,并组成特征向量集合c={c1,c2,...,cn}。图片特征常见的有颜色、纹理、形状、空间关系等,所以通常也会用特征矩阵来描述;
1.3当未知节点根据内容进行定位时,将其与所有栅格的特征向量进行比较得到二者的相似度,相似度越高说明距离越接近,那么未知节点通过基于内容的定位匹配到相似度最高的参考栅格内,进而得到其粗坐标。
(2)多维特征位置指纹的构造:
2.1在定位区域设置n个参考点,以一定长度作为采样间隔,例如:将定位区域划分为1m*1m的小栅格,在每个栅格的顶点作为参考点,部署m个ap并将其进行编号,所有参考点的位置集合为:l={l1,l2,...,ln},其中li={xi,yi}为第i个参考点的位置坐标i=1,2,...,n;
2.2特征数据采集:采集rss、磁场强度、加速度。在参考点处记录接收到的wifi的rss数据和该位置的磁场强度数据,进行数据采集时,手机终端打开wifi,由于信号强度与方向有关系,因此在每一个参考点的位置通过调整手机位置朝向,开始循环的记录在定位区域内接收到的m个wifi的rss数据序列和磁场强度序列以及加速度,当关闭rss数据采集时,数据自动存储在本地目录中,可以将文件导出,然后进行数据的分析和处理,同时还可以扫描到多个wifi的各种信息,wifi名称、mac地址;
2.3、指纹数据预处理;根据步骤2.2采集的rss数据,由于环境中往往存在多径、散射、障碍物、电磁干扰等不稳定因素,使得rssi值不稳定,具有较大的波动性;实际使用中,需要对测得的多个rssi值进行滤波优化处理,得到优化后的rssi值,再进行定位计算;结合卡尔曼滤波和递推平滑滤波对数据进行处理,递推平滑滤波是把连续接收到的n个rssi值看成一个队列,队列的长度固定为n,每次接收到一个新的rssi值后放入队尾,并扔掉原来队首的一个rssi值,形成新的rssi队列;
然后再通过卡尔曼滤波,以最小均方误差为最佳估计准则,采用信号与噪声的状态空间模型,利用前一时刻的估计值和当前时刻的观测值来更新对状态变量的估计,求出当前时刻的估计值,算法根据建立的系统方程和观测方程对需要处理的信号做出满足最小均方误差的估计,在一定程度上削弱由于噪声造成的rssi观测值偏离,经过卡尔曼滤波算法使数据稳定性更好;
2.4、建立指纹数据库;建立与步骤2.1中l一一对应的位置指纹集合r={r1,r2,...,rm},其中ri={rssii1,rssii2,...,rssiim},i=1,2,...,m;rssiij表示第i个参考点接收到来自第j个ap的信号强度值,那么,构建一条基于多维特征的完整的指纹为:ri={rssii1,rssii2,...,rssiim,hix,hiy,hiz,ax,ay,az,xi,yi},其中(hx,hy,hz)表示磁场强度,(ax,ay,az)表示加速度,建立含有信号强度值和位置坐标以及磁场强度和加速度的参考点i的位置指纹,指纹数据库由n个参考点的指纹数据构成;
2.5、将指纹数据聚类分块;为了减小未知节点指纹匹配的范围和提高精度以及效率,以定位区域中k个参考点为中心进行聚类分块,根据待聚类指纹数据和聚类中心距离最小原则进行划分,具体工作流程描述如下:
2.5.1在定位区域中选取k个指纹数据作为初始聚类中心,r={r1,r2,...,rr},其中(r<m),这k个指纹可以随机选取,但是不能过于分散和集中,因此要在定位范围内均匀的选择;
2.5.2根据信号强度与距离的相性相关性,计算待聚类的指纹数据与聚类中心的欧式距离d,
2.5.3将指纹数据库中的所有指纹分配完成后,更新聚类中心的值,不断重复步骤2.5.1、2.5.2,知道k个聚类中心大致固定不变,就终止迭代,完成初步分类;
2.5.4将每个参考点接收到的信号强度进行降序排列,上述步骤2.3实现对wifi进行编号,将每个参考点接收到wifi信号最强的编号相同的划分为一类,形成新的类簇;
聚类过程结束之后,每个位置指纹都被划分为与聚类中心最近的区域,相当于每个聚类中心和相对应的位置指纹数据形成一个个独立的部分位置指纹数据库,这样的话,在线匹配阶段就会减小匹配的范围。
本发明的有益效果在于:
本发明是一种基于改进位置指纹的定位方法,与现有技术相比,本发明通过提出一种先基于内容位置粗定位的定位方法,将未知节点定位在某相似度较高的栅格内,得到其粗坐标,再通过位置指纹计算方法得到更加精确的坐标,有效的提高了定位精度;通过构建多维特征的指纹,在线匹配阶段可以进行多参数的匹配,从而提高定位精度;通过结合卡尔曼滤波和递推平滑滤波对rss数据的处理,提高指纹数据的高可用性;通过提出指纹数据聚类分块的概念,提高指纹匹配的效率,最终为在线匹配阶段做充分的准备,具有推广应用的价值。
附图说明
图1是本发明的位置指纹定位方法的离线数据采集和处理阶段流程图;
图2是本发明的基于内容定位方法的实现步骤。
图3是本发明的卡尔曼滤波算法工作原理图。
具体实施方式
下面结合附图对本发明作进一步说明:
如图1所示:室内定位技术的难点在成本高、精度低,在wifi环境下对数据进行采集,不仅降低成本,还有助于提高精度。离线阶段首先是数据采集与预处理,然后建立位置指纹数据库,最后将指纹数据进行聚类分块,
本发明包括以下步骤:
(1)基于内容的定位过程:
1.1在定位区域设置n个参考点,以一定长度作为采样间隔,例如:将定位区域划分为2m*2m的小栅格,每个栅格作为参考点,智能手机可以通过摄像头可以记录栅格对应的图片或者视频,从而通过图片或者视频特征得到周围的内容,用于基于内容的定位;
1.2对每个栅格参考点的内容进行图片特征提取,形成特征向量ci,并组成特征向量集合c={c1,c2,...,cn}。图片特征常见的有颜色、纹理、形状、空间关系等,所以通常也会用特征矩阵来描述;
1.3当未知节点根据内容进行定位时,将其与所有栅格的特征向量进行比较得到二者的相似度,相似度越高说明距离越接近,那么未知节点通过基于内容的定位匹配到相似度最高的参考栅格内,进而得到其粗坐标,其工作原理图实如图2所示。
(2)多维特征位置指纹的构造:
2.1在定位区域设置n个参考点,以一定长度作为采样间隔,例如:将定位区域划分为1m*1m的小栅格,在每个栅格的顶点作为参考点,部署m个ap并将其进行编号,所有参考点的位置集合为:l={l1,l2,...,ln},其中li={xi,yi}为第i个参考点的位置坐标i=1,2,...,n;
2.2特征数据采集:采集rss、磁场强度、加速度。在参考点处记录接收到的wifi的rss数据和该位置的磁场强度数据,进行数据采集时,手机终端打开wifi,由于信号强度与方向有关系,因此在每一个参考点的位置通过调整手机位置朝向,开始循环的记录在定位区域内接收到的m个wifi的rss数据序列和磁场强度序列以及加速度,当关闭rss数据采集时,数据自动存储在本地目录中,可以将文件导出,然后进行数据的分析和处理,同时还可以扫描到多个wifi的各种信息,wifi名称、mac地址;
2.3、指纹数据预处理;根据步骤1.1采集的rss数据,由于环境中往往存在多径、散射、障碍物、电磁干扰等不稳定因素,使得rssi值不稳定,具有较大的波动性;实际使用中,需要对测得的多个rssi值进行滤波优化处理,得到优化后的rssi值,再进行定位计算;结合卡尔曼滤波和递推平滑滤波对数据进行处理,递推平滑滤波是把连续接收到的n个rssi值看成一个队列,队列的长度固定为n,每次接收到一个新的rssi值后放入队尾,并扔掉原来队首的一个rssi值,形成新的rssi队列;
然后再通过卡尔曼滤波,以最小均方误差为最佳估计准则,采用信号与噪声的状态空间模型,利用前一时刻的估计值和当前时刻的观测值来更新对状态变量的估计,求出当前时刻的估计值,算法根据建立的系统方程和观测方程对需要处理的信号做出满足最小均方误差的估计,在一定程度上削弱由于噪声造成的rssi观测值偏离,经过卡尔曼滤波算法使数据稳定性更好;其工作原理图如图3所示;
2.4、建立指纹数据库;建立与步骤2.1中l一一对应的位置指纹集合r={r1,r2,...,rm},其中ri={rssii1,rssii2,...,rssiim},i=1,2,...,m;rssiij表示第i个参考点接收到来自第j个ap的信号强度值,那么,构建一条基于多维特征的完整的指纹为:ri={rssii1,rssii2,...,rssiim,hix,hiy,hiz,ax,ay,az,xi,yi},其中(hx,hy,hz)表示磁场强度,(ax,ay,az)表示加速度,建立含有信号强度值和位置坐标以及磁场强度和加速度的参考点i的位置指纹,指纹数据库由n个参考点的指纹数据构成;
2.5、将指纹数据聚类分块;为了减小未知节点指纹匹配的范围和提高精度和效率,以定位区域中k个参考点为中心进行聚类分块,根据待聚类指纹数据和聚类中心距离最小原则进行划分,具体工作流程描述如下:
2.5.1在定位区域中选取k个指纹数据作为初始聚类中心,r={r1,r2,...,rr},其中(r<m),这k个指纹可以随机选取,但是不能过于分散和集中,因此要在定位范围内均匀的选择;
2.5.2根据信号强度与距离的相性相关性,计算待聚类的指纹数据与聚类中心的欧式距离d,
2.5.3将指纹数据库中的所有指纹分配完成后,更新聚类中心的值,不断重复步骤2.5.1、2,知道k个聚类中心大致固定不变,就终止迭代,完成初步分类;
2.5.4将每个参考点接收到的信号强度进行降序排列,上述步骤2.3实现对wifi进行编号,将每个参考点接收到wifi信号最强的编号相同的划分为一类,形成新的类簇;
聚类过程结束之后,每个位置指纹都被划分为与聚类中心最近的区域,相当于每个聚类中心和相对应的位置指纹数据形成一个个独立的部分位置指纹数据库,这样的话,在线匹配阶段就会减小匹配的范围。
以上显示和描述了本发明的基本原理和主要特征及本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。