本发明属于通信的技术领域,具体涉及一种基于众包数据的位置指纹数据库快速构建方法。
背景技术:
现有的基于众包构建位置指纹数据库方法包括两种:一种是显示众包方式,该方法的特点是可以得到相对准确的位置指纹信息,但是会频繁打扰用户,造成用户的体验下降,用户不准确操作时会造成数据受到污染,阻碍实际推广应用;另一种是隐式众包方式,该方法可避免用户被频繁打扰的现象,但是需要考虑位置和指纹的匹配问题,现有的基于隐式众包的位置指纹数据库构建方法,只能对位置和指纹进行粗略的匹配。
现有的基于pdr结合隐式众包构建位置指纹数据库方式可以实现位置和指纹的匹配问题,可快速构建相对完整的位置指纹数据库。但pdr存在较大的累计误差,造成位置和指纹的匹配精度不高,现有采用特征地标点纠正pdr累计误差可以提高部分区域的匹配精度,但是特征地标点数目有限,匹配精度不能得到有效提高。
技术实现要素:
本发明的目的在于针对现有技术中的上述不足,提供一种基于众包数据的位置指纹数据库快速构建方法,以解决现有技术中频繁打扰用户,位置和指纹匹配精度低的问题。
为达到上述目的,本发明采取的技术方案是:
一种基于众包数据的位置指纹数据库快速构建方法,其包括:
s1、基于pdr、粒子滤波和地图约束的裂变建库,其步骤包括
s11、训练短距离位置指纹关联模型;
s12、构建室内地图;
s13、标记显式地标点并采集相应位置指纹数据;
s14、判断众包路径数据是否启效;
s15、基于pdr、粒子滤波和地图约束多重条件约束关联指纹和位置点;
s16、设置众包路径的有效时间阈值,在所述有效时间阈值内,若传感器数据累积误差属于可容忍范围内时,则进入步骤s15,否则,众包路径失效,进入步骤s17;
s17、基于裂变方式分段依次建库;
s2、基于mds纠正非显式地标点区域的pdr累积误差,其步骤包括
s21、基于指纹相似度计算隐式地标点区域范围;
s22、统计隐式地标点区域之间的共有路径;
s23、搜索相对有效的众包路径;
s24、重新绘制隐式地标点区域之间的新路径;
s25、计算隐式地标点区域的相对坐标;
s26、基于mds精确计算隐式地标点区域的绝对坐标;
s27、纠正非显式地标点区域的pdr累积误差。
优选地,步骤s11中训练短距离位置指纹关联模型的方法包括:
a1、基于多维wifi数值特征指纹距离建模;
a2、短距离位置指纹关联模型的训练。
优选地,步骤a1基于多维wifi数值特征指纹距离建模的方法为:
a11、构建由相对子序列构成的相对指纹;
a12、计算相对子序列对的相似性;
a13、计算相对指纹对中指纹相对子序列对的相似度,并采用遍历计算得到相对指纹对的相似度矩阵;
a14、采用动态规划算法在相似度矩阵中搜索查找最佳匹配的相对指纹对。
优选地,步骤a2短距离位置指纹关联模型的训练方法为:
a21、获取已知地标点周围的众包数据;
a22、根据指纹相似度提取地标点辐射区域的指纹数据;
a23、计算所述地标点辐射区域指纹数据的指纹距离;
a24、基于mds确定短距离位置指纹关联模型。
优选地,步骤s14判断众包路径数据是否启效的方法为:
当数据库中只存在显式地标点数据时,设定当用户行走到显式地标点附近时,众包路径才开始有效,并利用短距离位置指纹关联模型计算出众包路径开始有效时的起始位置点物理坐标;
根据wifi指纹相似度判断用户是否已经行走到显式地标点周围。
优选地,步骤s15基于pdr、粒子滤波和地图约束多重条件约束关联指纹和位置点的方法为:
结合pdr、粒子滤波和地图约束多重技术构建位置指纹数据库;
根据智能手机内置传感器数据推导行人步数、步长和航向,得到用户行走路径,获得众包路径上数据采集点的物理坐标,并获得位置和指纹的匹配;
采用粒子滤波和地图约束双重约束条件获得精准的众包路径。
优选地,步骤s17基于裂变方式分段依次建库的方法为:
当位置指纹数据库中建立了非显式位置点的指纹数据后,其他用户的众包路径数据有效起始位置为任何已知位置点周围,基于裂变方式建库;
裂变方式建库之后的位置指纹数据库上的每个指纹点均对应一个粗略的物理坐标。
优选地,步骤s21包括设定一个指纹相似度阈值σsim,指纹相似度超过σsim的位置点所在的小区域作为隐式地标点区域;
步骤s22包括对连续路径进行编号,得到同时经过两个地标点区域之间的路径数;
步骤s23包括依次在两隐式地标点区域之间的共有路径中,选取磁力计数据波动最小的路径作为两地标点区域之间的有效路径;
步骤s24包括根据隐式地标点区域之间有效路径的加速度传感器和磁力计传感器数据,重新绘制出隐式地标点区域之间的新路径;
步骤s25包括从显式地标节点出发,依次计算各个隐式地标点区域相对显式地标点的坐标。
优选地,步骤s26基于mds精确计算隐式地标点区域的绝对坐标的方法为:
根据各隐式地标点区域和显式地标点的相对坐标,构建相对距离矩阵d,
其中,dij为显式地标点、隐式地标点和中心位置点之间的相对距离,i=1,2,3,…,m;j=1,2,3…,m;
将中心位置点设置为原点,根据mds计算出显式和隐式地标点与原点的相对坐标,更新隐式地标点的原始相对坐标;
根据显式地标点的实际物理坐标求出各个隐式地标点的实际物理坐标。
优选地,步骤s27纠正非显式地标点区域的pdr累积误差的方法为:
将各个隐式地标点作为经过该点周围众包路径的新起始点,根据经过该点的后续部分原始路径信息绘制新的众包路径,纠正pdr的累积误差,提高位置与指纹的匹配精度。
本发明提供的基于众包数据的位置指纹数据库快速构建方法,具有以下有益效果:
本发明基于裂变方式和设置路径有效时间阈值构建位置指纹数据库,并采用mds结合隐式地标点纠正pdr累计误差,同时,基于加权多维wifi数值特征构建短距离位置指纹关联模型;相对于现有技术可以快速构建位置指纹数据库,减少传感器的累计误差,提高位置和指纹的匹配精度,有效地解决了现有技术中频繁打扰用户,位置和指纹匹配精度低的问题。
附图说明
图1为基于众包数据的位置指纹数据库快速构建方法的流程图。
图2为训练短距离位置指纹关联模型流程图。
图3为基于裂变方式建库示意图。
图4为计算隐式地标点区域的相对坐标示意图。
具体实施方式
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
根据本申请的一个实施例,参考图1,本方案的基于众包数据的位置指纹数据库快速构建方法,包括:
s1、基于pdr、粒子滤波和地图约束的裂变建库,其步骤包括:
s11、训练短距离位置指纹关联模型;
参考图2,其中,步骤s11具体包括以下两个步骤
a1、基于多维wifi数值特征指纹距离建模;
a2、短距离位置指纹关联模型的训练。
步骤a1基于多维wifi数值特征指纹距离建模的具体方法包括:
a11、构建由相对子序列构成的相对指纹;
设有两组指纹
a12、计算相对子序列对的相似性;
将两组不同的相对指纹
其中,wi为加权系数(0≤wi≤1,i=1,2,3,4),
a13、计算相对指纹对中指纹相对子序列对的相似度,并采用遍历计算得到相对指纹对的相似度矩阵;
相对指纹对的相似矩阵表示的是在相对指纹对
其中,
a14、采用动态规划算法在相似度矩阵中搜索查找最佳匹配的相对指纹对;
获得到相似度矩阵
采用上述的构建相对指纹距离方法可以降低设备异构性对定位结果的影响。
步骤a2短距离位置指纹关联模型的训练的具体方法包括:
a21、获取已知地标点周围的众包数据;
在室内待定位区域上设置一些已知地标点并采集对应位置的坐标和rss信息,用户手持设备在地标点周围采集rss数据同时利用pdr记录行走路径;该过程中,为了避免训练过程存在的设备异构性问题,在已知地标点采集数据的手机设备和用户在该点附近采集众包数据时所用的手机设备一致,这些数据不是真正建库过程的众包数据,而是为训练短距离估计模型专门采集的众包数据。
a22、根据指纹相似度提取地标点辐射区域的指纹数据;
根据指纹相似度提取地标点辐射区域的指纹数据,由于训练数据采集时避免了设备异构性的影响,则可根据指纹之间的rss欧式距离进行指纹相似度计算。
a23、计算所述地标点辐射区域指纹数据的指纹距离;
将提取出来的地标点周围指纹数据按照同一众包路径进行划分,构成训练数据;训练数据中包含了两两匹配的数据采集点,匹配的数据采集点位于同一众包路径上,其相对物理距离和指纹数据均已知。利用指纹距离模型计算出各匹配数据采集点之间的相对指纹距离,构成相对指纹距离矩阵dwifi。
a24、基于mds确定短距离位置指纹关联模型
短距离位置指纹关联模型是由指纹特征推导出来的,可以用于估计实际物理距离。此模型可以根据两点之间指纹信息和其中一个点的物理坐标信息来推断出另外一个点的物理坐标信息。
短距离位置指纹关联模型是在指纹距离模型的基础上进一步得到的,通过训练最优的权值0≤wi≤1(i=1,2,3,4)来获得该模型;通过mds(multidimensionalscalinganalysis,mds)算法根据相对指纹距离矩阵dwifi生成各数据采集点之间的相对坐标,根据相对坐标求得数据采集点之间的相对距离l,由pdr得到数据采集点之间的物理相对距离d,假设d和l近似为正比关系d=kl,该式子中包含了0≤wi≤1(i=1,2,3,4)和k四个未知参数,通过最小二乘法ls(leastsquare)求出最优的未知参数求得短距离位置指纹关联模型,其中将同一众包路径位置点数据作为最小二乘法的训练数据,最后采用已知地标点的精确数据验证该模型的准确性,求出模型的误差。
s12、构建室内地图;
将待定位区域按照一定的比例绘制相应的平面地图,用于粒子滤波的约束条件,进一步提高建库过程位置和指纹的匹配精度。
s13、标记显式地标点并采集相应位置指纹数据;
显式地标节点一般设置在特殊的物理位置点,走廊交叉位置、楼梯口位置以及区域入口等行人容易经过的区域。众包建库前,提前采集显式地标点的物理坐标和指纹数据存入位置指纹数据库。
s14、判断众包路径数据是否启效;
由于pdr存在较大的累积误差,若长时间未能进行纠正,所采集的众包数据可靠性很低。为了得到相对准确的众包数据,当数据库中只存在显式地标点数据时,设定当用户行走到显式地标点附近时,众包路径才开始有效,并利用短距离位置指纹关联模型计算出该众包路径开始有效时的起始位置点物理坐标。根据wifi指纹相似度(公式2所示)判断用户是否已经行走到显式地标点周围。
s15、基于pdr、粒子滤波和地图约束多重条件约束关联指纹和位置点;
众包路径开始有效后,结合pdr、粒子滤波和地图约束多重技术构建位置指纹数据库。根据智能手机内置传感器(陀螺仪、磁力计和加速度计传感器)数据推导行人的步数、步长和航向,得到用户行走的路径;
由于众包路径开始有效时的起始位置点物理坐标已知,因此可得到众包路径上数据采集点的物理坐标,从而获得位置和指纹的匹配;同时采用粒子滤波和地图约束双重约束条件获得更加精准的众包路径。
s16、设置众包路径的有效时间阈值,在所述有效时间阈值内,若传感器数据累积误差属于可容忍范围内时,则进入步骤s15,否则,众包路径失效,进入步骤s17;
由于传感器具有累积误差,为了减少累积误差,提前训练出传感器累积误差时间阈值,一般在5-10分钟左右,在该时间阈值内,传感器数据累积误差属于可容忍范围。超出该时间阈值时,该众包路径失效,采集的数据不存入位置指纹数据库。
s17、基于裂变方式分段依次建库;
参考3,裂变方式指的是从一个已知位置点出发得到的一系列有效路径位置点,又可以作为经过这些点的众包路径的有效起始位置点。当位置指纹数据库中建立了非显式位置点的指纹数据后,其他用户的众包路径数据有效起始位置可以是任何已知位置点周围(包括显式位置点和有效的众包路径片段)。经过裂变方式建库之后,位置指纹数据库上的每个指纹点均对应一个粗略的物理坐标。
步骤s2、基于mds纠正非显式地标点区域的pdr累积误差,其步骤包括:
s21、基于指纹相似度计算隐式地标点区域范围;
隐式地标点是由众包路径计算出来的,多个众包路径交叉位置可作为一个隐式地标点。因此当待定位区域上采集了较多的众包路径后,可以计算出较多的隐式地标点。由于同一个位置点周围的指纹相似度很高,因此可设定一个指纹相似度阈值σsim,指纹相似度超过该阈值的位置点所在的小区域作为隐式地标点区域,例如图3中的区域v。为了降低异构性的影响,可先对指纹求其相对指纹后才计算指纹相似度。
s22、统计隐式地标点区域之间的共有路径;
经过各个地标点(包括隐式地标点和显式地标点)之间的众包路径数量不一定相同,通过对连续路径进行编号,求得同时经过两个地标点区域之间的路径数。
s23、搜索相对有效的众包路径;
各众包路径的累积误差不同,需要在地标点区域之间的共有路径中选取累计误差最小的一条路径。
磁力计传感器长时间相对稳定,短时间易受手机自身磁场影响,陀螺仪传感器长时间累积误差大,短时间较准,因此可依次在两隐式地标点区域之间的共有路径中,选取磁力计数据波动最小的路径作为两地标点区域之间的有效路径。
s24、重新绘制隐式地标点区域之间的新路径;
根据隐式地标点区域之间有效路径的加速度传感器和磁力计传感器数据,重新绘制出隐式地标点区域之间的新路径。
s25、计算隐式地标点区域的相对坐标;
显式地标点的物理坐标准确已知,从显式地标节点出发,依次计算各个隐式地标点区域相对显式地标点的坐标。过程如下:若有众包路径同时经过显式地标点和某个隐式地标点区域,则可以计算出该隐式地标点区域的坐标,进而可以计算出和该隐式地标点区域有众包路径相连的其他隐式地标点区域坐标。
参考图4,显式地标点和隐式地标点a、e有路径相连,根据pdr算法和显式地标点坐标可求得a、e两点的坐标,而隐式地标点b与a有路径相连,则b点坐标可根据a点坐标求得,依次类推求出有路径相连的其他隐式地标点坐标。
s26、基于mds精确计算隐式地标点区域的绝对坐标;
根据各隐式地标点区域和显式地标点的相对坐标,构建相对距离矩阵d,假设由众包路径连接起来的显式地标点和隐式地标点数量共m-1个,求这m-1个地标点的中心位置点
将中心位置点设置为原点,根据mds计算出显式和隐式地标点与原点的相对坐标,更新隐式地标点的原始相对坐标。进一步根据显式地标点的实际物理坐标精确求出各个隐式地标点的实际物理坐标。由于隐式地标点的原始相对坐标是根据单个路径计算得到的,误差可能较大,根据mds算法可使得各隐式地标点之间相互校正,减少隐式地标点的坐标误差。
s27、纠正非显式地标点区域的pdr累积误差。
将各个隐式地标点作为经过该点周围众包路径的新起始点,根据经过该点的后续部分原始路径信息绘制新的众包路径,从而进一步纠正了pdr的累积误差,提高位置与指纹的匹配精度。
本发明基于裂变方式和设置路径有效时间阈值构建位置指纹数据库,并采用mds结合隐式地标点纠正pdr累计误差,同时,基于加权多维wifi数值特征构建短距离位置指纹关联模型;相对于现有技术可以快速构建位置指纹数据库,减少传感器的累计误差,提高位置和指纹的匹配精度,有效地解决了现有技术中频繁打扰用户,位置和指纹匹配精度低的问题。
虽然结合附图对发明的具体实施方式进行了详细地描述,但不应理解为对本专利的保护范围的限定。在权利要求书所描述的范围内,本领域技术人员不经创造性劳动即可做出的各种修改和变形仍属本专利的保护范围。