基于建筑材料改良的室内定位地磁指纹库构建方法

2019-01-23 08:15张斯尚殷锋袁平
现代计算机 2018年36期
关键词:样条插值间距

张斯尚,殷锋,袁平

(1.四川大学计算机学院,成都610065;2.西南大学计算机科学与技术学院,成都610041;3.重庆大学数学与信息工程学院,重庆400044)

0 引言

成熟的卫星定位系统给生活带来了极大的便利,但是在室内环境下,由于GPS信号无法穿透导致卫星定位的方案无法应用在室内的环境中。先前研究中的一些基于无线电信号的方案(Wi-Fi、RFID、蓝牙)会有部署节点和后期维护消耗较大的问题,不利于传播,成本较大,因此本文采取基于地磁指纹的定位方案。这种类型的方案由于地磁的普遍存在性、不需要部署电子设备等优势在众多室内定位方案中脱颖而出[1]。地磁信号在时域上是稳定的,并且在空间上是可区分的,实际的地理位置能够用不同的地磁信号加以区分,所以地磁RSSI(接收信号强度)很适合用在室内定位场景中。

一般来说,基于地磁的室内定位方案工作流程分为3个步骤[2]:

(1)地磁测量:勘测现场环境、测量采集地磁信号是第一步。不同传感器测量精度不同,会一定的误差。测量时的人力消耗等也是考虑的问题之一。

(2)地磁信号指纹库的构建和维护:RSSI信号的之需要和实际的位置信息进行关联。第二步就是将实际的语义标签(坐标)关联到地磁信号值上,形成一个可以映射的地图即指纹库。

(3)目标定位:当用户请求定位的时候将会采集当前地磁信号,第三步就是将这个信号和指纹库的信号进行匹配,最终找到它相应的语义标签(坐标)显示给用户。

研究表明地磁值很容易受到建筑材料钢筋混凝土或者H型钢的影响而发生一些拉伸,产生一些不同于室外地磁场的干扰,形成一些特定的地磁场。而室内定位的场景一般发生在由钢筋混凝土或者H型钢这些材料组建而成的建筑里。所以本文利用了这个特性,提出了改良的构建地磁指纹库的方法,减少了生成地磁指纹库的时间和计算消耗,从而改良了算法的特性,使之更加普适。

1 算法可行性分析

定位算法步骤目标定位中必不可少的环节就是指纹匹配。当前主流的基于地磁的指纹定位匹配算法是粒子滤波型的,因为它能在非线性的系统中展示出高的有效性。基于指纹的方案就是非线性的场景,需要快速地匹配指纹库里的数据,然而借助粒子滤波算法(贝叶斯概率)匹配指纹需要很大的计算量。并且通常为了保障定位的精度,指纹库里的指纹数量级会很大,这无疑加重了粒子滤波算法的计算消耗,同时时间也产生了延时导致了用户不能及时获取定位信息,体验下降。

根据之前的研究表明[3],地磁的磁通量和RSSI值很容易受到建筑材料影响而拉伸,之前的方案中没有利用这一特性来改造指纹库的做法。利用这种建筑环境带来的优势,本文提出了一种利用样条插值来简化指纹库构建的方法,使之在能够达到相同的定位精度的同时精简了指纹库,从而减少了目标定位阶段的计算消耗,提升了用户体验的同时也加快了算法的部署实施。

因为基于指纹库的定位方法一般在设计数据库的时候需要先将待定位区域进行划分[4],选择参考点进行地磁值的采样。我们将实验的场地选为四川大学计算机学院4楼,先将4楼的楼道区域划分成一块块半径60cm的区域,然后在这些区域里面选出参考点进行数据采集。采集数据的过程中会记录当前参考点的坐标信息,同一个参考点的多次值将采用K-means算法找出合适值,最后将合适的RSSI值关联上相关的地理坐标存在数据库里面。在数据库更新的时候也采用同样的方式进行更新。

我们在四川大学计算机学院4楼进行了地磁值的采样,整栋教学楼主要相关材料是钢筋混凝土,实验平面图如图1,彩色的点指代实验环境下的采样点。我们的采样机器主要是由一个远程操控的底座小车和智能手机组成,如图2。小车由底层程序驱动用来控制前进的距离、速度和方向,用作底座,每个小车是由铝合金、丙烯酸、铜版和塑料组成,通过小车来控制采样点水平方向上的变化,尽量减少了采集的地磁信号的影响。通过在底座小车上垫上平滑的书本来控制采样点垂直高度的变化。实验中的智能手机采用华为Mate10作为硬件,内嵌了数据采集程序。

图1 四川大学计算机学院4楼平面图

图2 采样机器底座

在反复测量走廊区域的地磁值后,取得稳定的RSSI地磁值(三轴数据取模值),绘制出走廊区域的RSSI磁场分布图如图3,横轴代表着水平的距离,数轴代表着垂直的距离,不同颜色表示了不同的RSSI值大小。图中显示越靠近混凝土墙壁的地磁值越大,有一种明显的趋势。这种特征值有明显变化的曲线可以建立数学模型进行分析,接下来就引入插值的方式来补全地磁指纹库。

图3 走廊区域地磁分布值

2 利用插值的指纹库方法

通常的定位算法的定位精确度和地磁信号的稳定性和指纹库的精确性成正比。地磁信号越稳定,定位的精度就越高。同样的指纹数据库越精确,定位的准确性就越高[5]。可以通过多次采样,不断迭代,用滤波器和聚类算法获得最稳定的值,进而保证地磁信号的稳定性。而指纹数据库的精确度受到采样点的间距影响。间距太长,定位精度达不到要求;间距过短,增加采样工作的消耗,使得数据库过大影响定位速度,导致不良用户体验。

一般来说,参考点的采集间距是设置为20cm,衡量了前期的采集消耗和定位精度,这个间隔距离是能保证定位精度且不消耗多余资源的最佳距离。但是即使是这个最佳距离,不计算沿途行走的时间,在一个4m的区域内采集数据需要消耗10分钟的时间。插值的方法是用来解决定位区域参考点过多问题的一个很好的方法。插值法可以用来预测参考点之间的一些地磁RSSI值,加入插值法就能增加采样点之间的距离从而达到减少数据库构建消耗的目的。

2.1 三次样条插值模型

插值的方法是从已知点来预估未知点的近似计算方法,抽象成数学概念即需要构造一个多项式函数,使其通过所有已知点,然后用求得的函数预测位置点。一个典型的使用场景就是用在图像处理上。图片的被放大后因为分辨率的问题像素会有缺失,可以用插值的方式用周围已知的像素来预测未知的像素值,通过诸如线性方程、回归曲线分析、傅里叶级数、样条曲线、克里克法、移动均值、三次样条方法等等来实现。我们采用样条插值的法案,根据实验划分的小区域可以建立三次多项式,结果能够产生更加平滑的曲线来通过一些已知的值,受到的影响更加小,所以建立三次样条插值的公式。样条曲线S(x)是一个分段的定义的公式。假设我们在实验环境下按照间距L采集N+1个采样点(x,y):

给出的N+1个采样点会形成N个区间,在每个分段区间[xi,xi+1],S(x)=Si(x)都是一个三次多项式。满足S(xi)=yi,我们建立三次多项式为:

给出样条曲线后带入已知点(x,y)就可以求出系数ai,bi,ci,di。从而补足未知点的值。

2.2 实验测得最佳间距

使用插值产生的补足RSSI是用来更新指纹数据库的,在初始数据库建立后更新指纹数据库。在指纹数 据 库 中 的 值 是 一 个 二 维 的 值 {x,y,mag_x,mag_y,mag_z},(x,y)是空间上的坐标信息,mag_x、mag_y、mag_z分别是地磁信号的三轴数据。

实验设计将采样点的间距作为变量划分出不同大小的采样区域,以定位精度来评估最后的效果。初始标准数据库的间距设置为20cm,采用传统的方式获得指纹数据库DB_20。实验时将间距分别拓展为40cm、60cm和80cm,如图4,采样数据后获得数据库DB_40、DB_60和DB_80。使用插值法补足DB_40、DB_60和DB_80中间缺失的采样点值产生20cm间距的新的指纹数据库DB_40_20、DB_60_20和DB_80_20。

最后比较标准数据库DB_20和插值补足数据库DB_40_20、DB_60_20和DB_80_20的相似度,数据表明在实验环境下,本次方法的采样间距可以到达60cm,这种补足的数据库可以和原始的采样间距为20cm的数据库相媲美。如图5和图6,分别计算了标准数据库DB_20和插值补足数据库DB_40_20和DB_60_20,可以看到插值算法补足数据库和原始的数据库数据值基本接近。即是说给出的插值算法满足可以至少将采样间距扩展到60cm,极大减少了采集过程的工作。

图4 对比标准采集点和插值补足点

图5 标准采样数据库和插值数据库DB40的相似度对比

图6 标准采样数据库和插值数据库DB60的相似度对比

3 结语

本文的目标是减少指纹数据库构建消耗,首先是证明建筑材料会对磁通量产生拉伸,较大程度影响了室内地磁指纹,进而指明建立数学模型的可行性。随后验证在构建指纹库的时候使用插值方法可以增加采样间距,在前期构建上减少了消耗。但是由于指纹库中的指纹相似度很高,接下来的工作将从补足粒子滤波算法上入手,使数据库更加的精简。

猜你喜欢
样条插值间距
开始和结束
滑动式Lagrange与Chebyshev插值方法对BDS精密星历内插及其精度分析
基于数值积分的最佳平方逼近样条函数
非均匀间距的低副瓣宽带微带阵列天线设计
B样条曲线在汽车CAD软件中的应用研究
基于pade逼近的重心有理混合插值新方法
混合重叠网格插值方法的改进及应用
三次样条和二次删除相辅助的WASD神经网络与日本人口预测
算距离
基于混合并行的Kriging插值算法研究