群智感知式WiFi信号指纹辅助的图像匹配室内定位方法转让专利

申请号 : CN201610143173.8

文献号 : CN105792353B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王维平陈伟李群侯洪涛石泽森常强

申请人 : 中国人民解放军国防科学技术大学

摘要 :

本发明提供一种群智感知式WiFi信号指纹辅助的图像匹配室内定位方法,该方法用WiFi实现初步定位,再利用所得初步定位的结果进行辅助图像定位,减少图像定位的复杂性,提高室内定位结果的实时性。

权利要求 :

1.一种群智感知式WiFi信号指纹辅助的图像匹配室内定位方法,其特征在于,包括以下步骤:

步骤S100:根据室内布局特点并结合KWNN算法中所需邻近邻居数量,随机采集至少K个参考点并记录各所述参考点的坐标、各所述参考点上接收到的WiFi接入点数量、各所述接入点的MAC地址以及所述接入点对应的RSSI值,同时获取所述参考点正前方的环境图像并对数据库图像进行编号,并将每一所述参考点对应的坐标、WiFi接入点数量、所述接入点的MAC地址、所述接入点对应的RSSI值以及所述参考点正前方的环境图像作为一条数据存入数据库中;

步骤S200:扫描待定位移动节点MN在t1时刻扫描到的接入点AP指纹数据序列,并得出处于所述待定位移动节点MN附近的所述参考点在数据库中的所述接入点AP指纹数据序列,通过KWNN算法判断扫描到的所述接入点AP与所述数据库中每一个参考点上对应存储的所述AP的MAC地址是否相同,然后计算具有相同MAC地址的AP的RSSI值之间的二维欧式距离,对有相同MAC地址的所述AP的RSSI值求和,作为所述参考点i与邻近邻居的距离:上式中RSSIMN表示移动节点MN扫描到AP的WiFi信号强度值,i表示参考点序号,该值最大为数据库中存入数据所对应的参考点的总数,RSSIRP表示所述数据库中所述参考点存储的WiFi信号强度值,n表示具有共同MAC地址的接入点AP数量,公式(1)中的p值代表马氏距离参数;

选取任一所述参考点附近的K个邻近邻居,按式(1)计算所述参考点与各所述邻近邻居的K个欧式距离值L(d,i),对所得K个距离值归一化得到各自权重ωi,计算公式为:其中q为调节参数,上式(2)中取为2;

根据K个所述参考点在所述数据库中存储的坐标及其归一化距离权重ωi,计算得到所述移动节点MN的初始位置坐标

其中,(xi,yi)对应表示K个邻居的坐标值,i=1,2,...,K;

步骤S300:用户在所述待定位移动节点MN处拍摄前方的图像得到用户图像,按SIFT特征提取算法处理所述数据库图像和所述用户图像,分别得到每个所述数据库图像的N1个特征点和所述用户图像中的N2个特征点及所述每个特征点的128维特征向量,并存储在所述数据库中,其中N1≠N2,计算所述用户图像和所述数据库图像中任意两特征点之间的特征向量欧式距离d(s,j),计算公式为:其中,s表示所述用户图像经过处理后得到的特征点序号,值为s=1,2,...,N2,j表示所述数据库中存储的任一张所述数据库图像的特征点序号,值为j=1,2,…,N1,t表示每一个特征点的128维特征向量,t=0,1,...,127,f(s,t)表示所述用户图像第s个特征点的第t维特征向量值,f(j,t)表示所述数据库图像的第j个特征点的第t维特征向量值,d(s,j)表示所述用户图像的第s个特征点和所述数据库图像的第j个特征点的欧式距离值,p取2;

步骤S400:取d(s,j)中的最小值与次最小值的比值作为所述用户图像中该特征点与每一张所述数据库图像中的所有特征点之间的相似性判定度量,如果该比值小于设定的阈值,则认为所述用户图像与所述数据库图像中存在一个共同特征点,求算所述用户图像和所述数据库图像之间的共同特征点数量Fc,根据所述共同特征点数量Fc求解所述用户图像和所述数据库图像的图像匹配因子ηi,根据所述图像匹配因子ηi校正权重ωi得到校正因子,计算公式如下:其中,i=1,2,...,K表示邻近邻居的编号,K表示邻近邻居的数量;

用所述校正因子ξi对所述移动节点MN的初步位置坐标 按下式进行校正:

其中,i=1,2,...,K表示邻近邻居的编号,K表示邻近邻居的数量,Pi(x,y)即为所述方法得到所述移动节点MN的室内定位位置坐标。

2.根据权利要求1所述的群智感知式WiFi信号指纹辅助的图像匹配室内定位方法,其特征在于,所述图像匹配因子定义为:其中,i=1,2,...,K表示经过KWNN算法计算得到的K个邻居对应的K张图像编号,各所述数据库图像中提取的特征总数为F(DB,i),其中,i=1,2,...,K,Fs为提取的特征总数。

3.根据权利要求2所述的群智感知式WiFi信号指纹辅助的图像匹配室内定位方法,其特征在于,还包括对所述数据库进行更新的步骤:由用户将所述待定位移动节点MN处得到定位结果、用户手机所扫描到的AP数量、AP的MAC地址和RSSI值上传至数据库的最后一行进行储存。

说明书 :

群智感知式WiFi信号指纹辅助的图像匹配室内定位方法

技术领域

[0001] 本发明涉及室内定位技术领域,具体的涉及一种群智感知式WiFi信号指纹辅助的图像匹配室内定位方法。

背景技术

[0002] 位置信息是基于位置服务应用的重要基础,对于室外环境的定位多采用GPS(全球定位系统)或GNSS(Global Navigation Satellite System)方式获取目标位置数据,其中GPS是指利用GPS定位卫星,在全球范围内实时进行定位、导航的系统。不过GPS存在一个明显缺陷:不能在室内定位,而且通常民用GPS的精度仅为10m左右,相对于室内导航的要求(1m左右)还有一段距离。而且在室内环境下,由于GNSS的信号衰减、遮挡等原因无法获取室内环境的信息,而使得用户位置信息不够准确。因此,室内定位相关原理和技术的研究吸引了国内外众多研究者和公司的关注,并相继开发了多个室内定位算法,例如谷歌室内定位地图,WiFiSlam,苹果公司Indoor Survey等。其中,使用WiFi指纹RSSI(Received Signal Strength Indicator)实现室内定位,由于算法复杂度不高,使用硬件少,成本低,定位实时性强,受到广泛研究和使用。
[0003] 基于WiFi信号指纹实现室内定位方法,包括两个步骤:训练与定位。训练阶段主要是指创建信号指纹数据库,在室内不同位置,利用智能手机扫描搜集不同热点信号强度,并将该点位置与对应的信号RSSI值组合构成信号指纹,将所有信号指纹保存到数据库中。在定位阶段,将用户实时扫描到的信号RSSI值与指纹数据库中所有信号指纹进行比对,寻找相似的信号指纹,通过不同算法,例如KNN,KWNN,贝叶斯,神经网络等算法,计算用户位置。
[0004] 该方法可以通过使用现有的WiFi热点和普通智能手机实现,但精度并不高,国际公认精度为5~6m。许多研究者对WiFi定位算法进行改进,例如使用高斯过程生成指纹信号丰富的指纹数据库,然而,WiFi信息在传播空间内十分容易受到环境变化的影响,造成信号强度的波动,即使在算法上加以改进,由于信号本身发生了变化,定位精度也会随之下降,造成定位系统稳定性下降。同时,WiFi信号指纹数据库如不能及时进行更新,将难以保证数据库存储数据和实际信号的一致性,这也会降低定位的准确性。
[0005] 此外,基于WiFi指纹信号的室内定位方法还存在构建和维护指纹数据库复杂高的问题,首先,创建数据库过程非常费时费力,需要逐点测量各点的WiFi信号强度,这些位置和信号强度已知的节点称为参考点(Reference Point,RP),如果需要设置大量的参考点,则对各点的测量需要消耗较长时间。以一个20m*20m的区域为例,为了保证定位精度,假如每隔1米测量一个参考点,则总共需要测量400个参考点,每个点需要进行数次测量以获得可行的信号数据,可以看出测量过程是非常耗费时间的。对于更大的区域,所需测量时间会更多。
[0006] 采用这种参考点数据库获取方法还存在其他问题:对于有些区域来说,由于室内布局等原因,无法获取高密度的参考点;其次,维护一个数据库成本也非常巨大。因为无线信号传播受到环境影响较大,室内物品摆放发生变化后,门的开关,人员的走动,以及天气环境的变化等都会影响信号的分布。一旦信号分布发生变化,为保持定位性能,原有数据库就需要更新。室内环境变化较为频繁时,数据库就需要不断更新,造成数据库的维护成本非常巨大。
[0007] 采用计算机视觉进行室内定位的方法,1)利用存在于世界坐标系的中特征点和它们投影到图像坐标系中的特征点之间的几何约束关系,建立共线条件方程,采用前方交会方法和后方交会方法来解算用户的位置和姿态,实现定位;2)利用摄像头获取图像,从背景中准确识别出目标并提取其特征,进行实时跟踪。方法1)中需要采用摄影测量学方面的理论,通常计算过程较为复杂,并且对于定位过程要求专门的并且精度较高的测量仪器,这样就会增加实现定位的成本,方法2)中需要采用图像匹配识别实现室内定位,随着光学传感技术和图像识别技术的发展以及智能手机处理能力的提高,可以很大的提高定位精度,然而,基于图像匹配的定位系统需要构建庞大的图像数据库,在实时匹配阶段,用户拍摄的图像需要在整个数据库中进行检索查询,找到匹配图像,这个过程耗时长,导致该定位方法整体的实时性较差。

发明内容

[0008] 本发明的目的在于提供一种解决上述背景技术中提到的现有技术存在的技术问题的群智感知式WiFi信号指纹辅助的图像匹配室内定位方法。
[0009] 本发明提供一种群智感知式WiFi信号指纹辅助的图像匹配室内定位方法,包括以下步骤:
[0010] 步骤S100:根据室内布局特点并结合KWNN算法中所需邻近邻居数量,随机采集至少K个参考点并记录各参考点的坐标、各参考点上接收到的WiFi接入点数量、各接入点的MAC地址以及接入点对应的RSSI值,同时获取参考点正前方的环境图像并对数据库图像进行编号,并将每一参考点对应的坐标、WiFi接入点数量、接入点的MAC地址、接入点对应的RSSI值以及参考点正前方的环境图像作为一条数据存入数据库中;
[0011] 步骤S200:扫描待定位移动节点MN在t1时刻扫描到的接入点AP指纹数据序列,并得出处于待定位移动节点MN附近的参考点在数据库中的接入点AP指纹数据序列,通过KWNN算法判断扫描到的接入点AP与数据库中每一个参考点上对应存储的AP的MAC地址是否相同,然后计算具有相同MAC地址的AP的RSSI值之间的二维欧式距离,对有相同MAC地址的AP的RSSI值求和,作为参考点i的距离:
[0012]
[0013] 上式中RSSIMN表示移动节点MN扫描到AP的WiFi信号强度值,i表示参考点序号,该值最大为数据库的总数,RSSIRP表示数据库中参考点存储的WiFi信号强度值,n表示具有共同MAC地址的接入点AP数量;
[0014] 选取任一参考点附近的K个邻近邻居,计算K个参考点与各邻近邻居的欧式距离值L(d,i),对所得K个距离值归一化得到各自权重ωi,计算公式为:
[0015]
[0016] 其中q为调节参数,上式(2)中取为2;
[0017] 根据K个参考点在数据库中存储的坐标及其归一化距离权重ωi,计算得到移动节点MN的初始位置坐标
[0018]
[0019] 其中,(xi,yi)对应表示K个邻居的坐标值,i=1,2,...,K;
[0020] 步骤S300:用户在待定位移动节点MN处拍摄前方的图像得到用户图像,按SIFT特征提取算法处理数据库图像和用户图像,分别得到每个数据库图像的N1个特征点和用户图像中的N2个特征点及每个特征点的128维特征向量,并存储在数据库中,其中N1≠N2,计算用户图像和数据库图像中任意两特征点之间的特征向量欧式距离d(s,j),计算公式为:
[0021]
[0022] 其中,s表示用户图像经过处理后得到的特征点序号,值为s=1,2,...,N2,j表示数据库中存储的任一张数据库图像的特征点序号,值为j=1,2,…,N1,t表示每一个特征点的128维特征向量,t=0,1,...,127,f(s,t)表示用户图像第s个特征点的第t维特征向量值,f(j,t)表示数据库图像的第j个特征点的第t维特征向量值,d(s,j)表示用户图像的第s个特征点和数据库图像的第j个特征点的欧式距离值;
[0023] 步骤S400:取d(s,j)中的最小值与次最小值的比值作为用户图像中该特征点与每一张数据库图像中的所有特征点之间的相似性判定度量,如果该比值小于设定的阈值,则认为用户图像与数据库图像中存在一个共同特征点,求算用户图像和数据库图像之间的共同特征点数量Fc,根据共同特征点数量Fc求解用户图像和数据库图像的图像匹配因子ηi,根据图像匹配因子ηi校正权重ωi得到校正因子,计算公式如下:
[0024]
[0025] 其中,i=1,2,...,K表示邻近邻居的编号,K表示邻近邻居的数量;
[0026] 用校正因子ξi对移动节点MN的初步位置坐标 按下式进行校正:
[0027]
[0028] 其中,i=1,2,...,K表示邻近邻居的编号,K表示邻近邻居的数量, 即为经过本发明方法得到移动节点MN的室内定位位置坐标。
[0029] 进一步地,图像匹配因子定义为:
[0030]
[0031] 其中,i=1,2,...,K表示经过KWNN算法计算得到的K个邻居对应的K张图像编号,K个邻近邻居对应的K张数据库图片表示为I(DB,i)(i=1,2,...,K),各数据库图像中提取的特征总数为F(DB,i)(i=1,2,...,K)。
[0032] 进一步地,还包括对数据库进行更新的步骤:由用户将待定位移动节点MN处得到定位结果、用户手机所扫描到的AP数量、AP的MAC地址和RSSI值上传至数据库的最后一行进行储存。
[0033] 本发明的技术效果:
[0034] 1、本发明提供的群智感知式WiFi信号指纹辅助的图像匹配室内定位方法,能在提高定位系统定位精度的同时保证其实时性,其次采用群智感知的方式更新数据库,保证数据库存储数据和实际情况中数据的一致性,极大地减少了数据库构建和维护成本。
[0035] 2、本发明提供的群智感知式WiFi信号指纹辅助的图像匹配室内定位方法,在WiFi指纹定位阶段,采用KWNN算法估计初始位置,同时将KWNN算法计算得到的K个邻近邻居对应的图像用于图像匹配定位,相比检索整个数据库,该方法能够缩小图像的检索范围,缩小匹配空间;
[0036] 3、本发明提供的群智感知式WiFi信号指纹辅助的图像匹配室内定位方法,采用SIFT算法,保证在缩放、旋转变化等情况下的匹配稳定性,同时采用多线程机制处理选取的K个图像,进一步缩短匹配用时,保证实时性;
[0037] 4、本发明提供的群智感知式WiFi信号指纹辅助的图像匹配室内定位方法,采用群智感知式数据更新机制,用户可将定位结果上传至数据库,补充和更新数据库中尚未记录的RP点数据信息,辅助他人下次完成定位;
[0038] 5、本发明提供的群智感知式WiFi信号指纹辅助的图像匹配室内定位方法,实现十分易于推广和应用,用户在普通安卓智能手机上下载APP安装即可使用,无需其他硬件辅助,极大降低该定位方法的使用成本。
[0039] 具体请参考根据本发明的群智感知式WiFi信号指纹辅助的图像匹配室内定位方法提出的各种实施例的如下描述,将使得本发明的上述和其他方面显而易见。

附图说明

[0040] 图1是本发明提供的群智感知式WiFi信号指纹辅助的图像匹配室内定位方法流程示意图;
[0041] 图2是本发明提供的群智感知式WiFi信号指纹辅助的图像匹配室内定位方法中KWNN定位算法示意图;
[0042] 图3是本发明提供的群智感知式WiFi信号指纹辅助的图像匹配室内定位方法中KWNN中K值对定位性能影响比较结果示意图;
[0043] 图4是本发明提供的群智感知式WiFi信号指纹辅助的图像匹配室内定位方法中图像匹配过程示意图,其中,a)是用户拍摄的待定位点MN前方的用户图像;b)为待定位点MN附近的参考点1的数据库图像;c)为为待定位点MN附近的参考点2的数据库图像;d)为待定位点MN附近的参考点3的数据库图像
[0044] 图5是本发明提供的群智感知式WiFi信号指纹辅助的图像匹配室内定位方法中图像间特征距离阈值对定位性能影响比较结果示意图;
[0045] 图6是本发明提供的群智感知式WiFi信号指纹辅助的图像匹配室内定位方法中群智感知对于定位性能影响比较结果示意图。

具体实施方式

[0046] 构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。
[0047] 为了实现上述目的,本发明分为离线构建数据库阶段和在线实时定位阶段。在离线阶段构建图像-指纹数据库,记录一个参考点上接收到的WiFi热点数量、每一个热点的MAC地址和该热点对应的WiFi信号的RSSI值和该参考点正前方的图像并对图像进行编号,从而构成一条图像-指纹数据,采用数组列表形式存储在数据库的一张数据表内,该数据表中总数目与参考点数量一致。从而获得多个参考点的数据表。每一条图像-指纹数据对应的图像经过SIFT特征提取算法提取特征后存放在数据库的另一张数据表内,图像-指纹数据的存储形式为表1。在线定位阶段,采用加权K邻近(K Weighted Nearest Neighbors,KWNN)算法匹配用户实测WiFi信号指纹(同样包含热点数量、热点MAC地址及对应的RSSI值)和离线已构建图像指纹库内的指纹信息,估计得到用户初略位置,实现WiFi的初步定位,同时选择K个邻近邻居对应的图像用于图像匹配定位,相比于检索整个图像-指纹库中的图像数据,本发明极大地缩小匹配图像阶段的检索范围。图像匹配定位阶段,采用多线程处理经过KWNN算法挑选的K张图像,进一步减少图像匹配所需时间,保证了采用图像进行室内定位的实时性,采用图像特征匹配算法计算图像匹配因子,进一步校正KWNN算法中的距离权重值,提高用户的定位精度,同时,采用群智感知的方式补充与更新数据库,支持用户上传定位结果,这样一方面保证定位系统存储数据库和实际信号的一致性,另一方面解决了常见于构建数据库阶段耗时较长的问题。实验实测表明,本发明所用的算法能够显著地弥补图像匹配定位和WiFi指纹定位方式的缺点,并且用户使用普通安卓智能手机即可实现定位,无需外界多余硬件辅助,大幅减少实现成本。
[0048] 参见图1,本发明提供的群智感知式WiFi信号指纹辅助的图像匹配室内定位方法包括以下步骤:
[0049] 步骤S100:根据室内布局特点并结合KWNN算法中所需邻近邻居数量,随机采集至少K个参考点并记录各参考点的坐标、各参考点上接收到的WiFi接入点数量、各接入点的MAC地址以及接入点对应的RSSI值,同时获取参考点正前方的环境图像并对数据库图像进行编号,并将每一参考点对应的坐标、WiFi接入点数量、接入点的MAC地址、接入点对应的RSSI值以及参考点正前方的环境图像作为一条数据存入数据库中;
[0050] 参考点指的是在离线阶段采集到的样本点,每一个样本点对应的是实际当中的一个实际位置,参考点的数量与离线阶段采集的样本点多少有关。采集了50个样本点,就有50个参考点。邻近点是每一个时刻从很多参考点里挑选出来的,挑选出K个参考点,这时这K个参考点叫做邻近邻居。所以为了能够挑选出K个邻居点,要采集K个参考点。二者存在一一对应的关系。
[0051] 步骤S200:扫描待定位移动节点MN在t1时刻扫描到的接入点AP指纹数据序列,并得出处于待定位移动节点MN附近的参考点在数据库中的接入点AP指纹数据序列,通过KWNN算法判断扫描到的所述接入点AP与数据库中每一个参考点上对应存储的AP的MAC地址是否相同,然后计算具有相同MAC地址的AP的RSSI值之间的二维欧式距离,对有相同MAC地址的AP的RSSI值求和,作为参考点i的距离L(d,i):
[0052]
[0053] 上式中RSSIMN表示移动节点MN扫描到AP的WiFi信号强度值,i表示参考点序号,该值最大为数据库的总数,RSSIRP表示数据库中参考点存储的WiFi信号强度值,n表示具有共同MAC地址的接入点AP数量;解释KWNN算法时是用当前时刻表示,也就是t1,其他时刻的原理和t1时刻是一样的。
[0054] 选取任一参考点附近的K个邻近邻居,计算K个参考点与各邻近邻居的欧式距离值L(d,i),对所得K个距离值归一化得到各自权重ωi,计算公式为:
[0055]
[0056] 其中q为为调节参数,上式(2)中取为2;
[0057] 根据K个参考点在数据库中存储的坐标及其归一化距离权重ωi,计算得到移动节点MN的初始位置坐标
[0058]
[0059] 其中,(xi,yi)对应表示K个邻居的坐标值,i=1,2,...,K;
[0060] 公式(3)中的P表示位置。公式(1)中的P值代表马氏距离参数,当p=2时,求解的距离为欧式距离。
[0061] 步骤S300:用户在待定位移动节点MN处拍摄前方的图像得到用户图像,按SIFT特征提取算法处理数据库图像和用户图像,分别得到每个所述数据库图像的N1个特征点和所述用户图像中的N2个特征点(N1≠N2)及每个特征点的128维特征向量,并存储在数据库中,计算用户图像和数据库图像之间任意两特征点之间的特征向量欧式距离d(s,j),计算公式为:
[0062]
[0063] 其中,s表示用户图像经过处理后得到的特征点序号,值为s=1,2,...,N2,j表示数据库中存储的任一张数据库图像的特征点序号,值为j=1,2,...,N1,t表示每一个特征点的128维特征向量,t=0,1,...,127,f(s,t)表示用户图像第s个特征点的第t维特征向量值,f(j,t)表示数据库图像的第j个特征点的第t维特征向量值,d(s,j)表示用户图像的第s个特征点和数据库图像的第j个特征点的欧式距离值,p取2;
[0064] 对于数据库图像和用户图像,用算法处理后,每个图像提取的特征点都不相同,这里假设数据库提取的特征点总数为N1,用户图像提取的特征点总数为N2,N1和N2不一定相等,但是每一个特征点都是128维的向量,称为特征向量。
[0065] 步骤S400:取d(s,j)中最小值与次最小值的比值,作为用户图像中该特征点与数据库图像中的所有特征点之间的相似性判定度量,如果该比值小于设定的阈值,则认为用户图像与数据库图像中存在一个共同特征点,求算用户图像和数据库图像之间的共同特征点数量Fc,根据共同特征点数量Fc求解用户图像和数据库图像的图像匹配因子ηi,根据图像匹配因子ηi校正权重ωi得到校正因子,计算公式如下:
[0066]
[0067] 其中,i=1,2,...,K表示邻近邻居的编号,K表示邻近邻居的数量;
[0068] 用校正因子ξi对移动节点MN的初始位置坐标 按下式进行校正:
[0069]
[0070] 其中,i=1,2,...,K表示邻近邻居的编号,K表示邻近邻居的数量,Pi(x,y)即为经过本发明方法得到所述移动节点MN的室内定位坐标。
[0071] 采用上述方法对KWNN算法得到的初始坐标进行校正,能提高定位准确性,同时对图像的所搜时间缩短,提高该方法的实时性。
[0072] 优选的,图像匹配因子定义为:
[0073]
[0074] 其中,i=1,2,...,K表示经过KWNN算法计算得到的K个邻居对应的K张图像编号,K个邻近邻居对应的K张数据库图片表示为I(DB,i)(i=1,2,...,K),各数据库图像中提取的特征总数为F(DB,i)(i=1,2,...,K)。
[0075] 优选的,还包括对数据库进行更新的步骤:由用户将待定位移动节点MN处得到定位结果、用户手机所扫描到的AP热点数量、AP热点的MAC地址和RSSI值上传至数据库的最后一行储存。
[0076] 参考点信号指纹每一个热点的MAC地址和该热点对应的WiFi信号的RSSI值和该参考点正前方的图像并对图像进行编号。
[0077] 具体的本发明提供的方法包括以下步骤:
[0078] 第一阶段是离线构建阶段。根据室内布局特点,随机采集至少K个参考点信号指纹,记录所述参考点的坐标,所扫描到的WiFi接入点的数量、每一个热点的MAC地址和该热点对应的WiFi信号的RSSI值,同时在此参考点上,使用智能手机自带的摄像头,拍摄参考点正前方的图像数据,以上这些信息构成数据库中的一条数据,存储形式如表1所示,(xn,yn)表示离线阶段采集的第n个参考点的二维坐标,mn表示在第n个参考点位置扫描到的可用AP数量,由于室内环境变化,不同参考点处接收到的可用AP数量可能不一样,MACm1表示第一个参考点扫描到的所有AP的MAC地址,RSSIm1为这些MAC地址对应的RSSI值。
[0079] 离线阶段对参考点上各项信息的采集为后续定位提供所需信息,同时采用KWNN算法实现初步定位的参考点数至少与KWNN算法中的邻近邻居数量一致,由于本发明中采用了群智感知补充图像-指纹数据库,因此后续随着数据库参考点数量增加,定位性能会越来越好,采集的图像数据经过SIFT算法,提取128维的特征向量,并存储在数据库中的另一张数据表内,以便于后续采用图像匹配定位进一步提高定位的精度。
[0080] 表1图像-指纹数据存储方式
[0081]
[0082] 第二阶段是在线定位阶段,包括WiFi指纹初步定位和图像特征匹配定位两个部分。
[0083] 参见图2,基于KWNN的WiFi指纹初步定位原理为:假设室内布置M(M>5)个已知位置的AP热点(图2中未画出),同时在参考点采集阶段采集了N(N>5)个RP(参考点)指纹数据,待定位的移动节点MN在t1时刻扫描到AP指纹数据序列为{AP1,AP2,AP3},参考点RP21,RP22,RP31,RP32在数据库中的AP指纹数据序列分别是{AP1,AP2,AP3},{AP1,AP4,AP5},{AP1,AP2,AP3},{AP1,AP3,AP4,AP5},则通过KWNN算法首先判断扫描到的每个AP与数据库中每一个参考点对应存储AP的MAC地址是否相同,然后计算具有相同MAC地址的AP的RSSI值之间的欧式距离。由于此例子中矩阵为二维的,因而该欧式距离为二维欧式距离,由于用于求解欧式距离的每组参考点下具有相同MAC地址的AP数量不同,因此需要对有相同MAC地址的AP的RSSI值求和,才能作为该组参考点RP的“距离”,同理,移动节点MN在t2时刻,则根据实时扫描进行选择参考点,“距离”L(d,i)计算公式为:
[0084]
[0085] 上式中RSSIMN表示移动节点MN扫描到AP的WiFi信号强度值,i表示参考点序号,该值最大为数据库的总数,RSSIRP表示数据库中参考点存储的WiFi信号强度值,n表示具有共同MAC地址的接入点AP数量,由于是欧式距离,上式中p=2。在计算得到多组“距离”值后,选择任一参考点的K个邻近邻居,根据这K个距离值归一化得到各自权重ωi,计算公式为:
[0086]
[0087] 其中q为调节参数,上式(2)中取为2;最后根据数据库中K个参考点已存坐标和归一化距离权重因子,计算得到移动节点初始位置坐标:
[0088]
[0089] 上式中计算得到的坐标值Pi(x,y)KWNN暂时存储在手机缓存内,经过图像匹配定位后,进一步校正。
[0090] 基于图像匹配的定位算法原理为:采用由David Lowe提出的SIFT特征提取算法提取图像特征,该算法的具体内容可以参考David G.Lowe Computer Science Department University of British olumbia Vancouver,B.C.,Canada于2004年1-5发表的《Distinctive Image Features from Scale-Invariant Keypoints》中公开的SIFT特征提取算法,以下简称SIFT算子。
[0091] 该过程在服务器中进行,生成图像的描述子,表示为N×128维特征向量存储在数据库中,其中N表示任一张存储在数据库中的图像处理后,得到的特征点总数,用户实时拍摄的图像在经过SIFT算子处理后得到N×128维特征向量,得到图像的特征向量后,计算任一图像中N个特征点之间的特征向量欧式距离,计算公式为:
[0092]
[0093] s表示用户拍摄图像经过处理后得到的特征点序号,j表示数据库中存储的一张图像的特征点序号,t表示每个特征点的128维特征向量,值为t=0,1,...,127,f(s,t)表示用户拍摄图像第s个特征点的第t维特征向量值,f(j,t)表示数据库图像第j个特征点的第t维特征向量值,d(s,j)表示用户图像第s个特征点和数据库图像第j个特征点中的“距离”值,p取2。
[0094] 用户拍摄图像中某点与数据库中的所有特征点进行欧式距离求解,把这些距离值中最小值与次最小值的比值作为用户拍摄图像中的该点与数据库中的所有特征点之间的相似性判定度量,如果该值小于设定的阈值,则认为用户拍摄图像与数据库图像中存在一个共同特征点。
[0095] 本发明中,根据KWNN算法计算得到的K个邻近邻居缩小了图像检索范围。假设经过WiFi指纹定位得到K个邻近邻居对应的K张数据库图片表示为I(DB,i)(i=1,2,...,K),各自提取的特征总数为F(DB,i)(i=1,2,...,K),用户图像表示为Is,提取的特征总数为Fs,发明中分别求算用户图像和数据库图像之间的共同特征数量Fc为:
[0096] Fci=(F(DB,i)∩Fs)∈[0,min(F(DB,i),Fs)]    (5)
[0097] 其中,i=1,2,...,K,表示邻近邻居数,min(F(DB,i),Fs)表示求出数据库中的K张图像与用户拍摄图像之间最少的共同特征数量,求得共同特征数后求解图像匹配因子,图像匹配定位阶段采用图像匹配因子来选择最佳匹配图像,同时图像匹配因子可用来校正根据公式(2)计算得到的归一化“距离”权重因子ω,图像匹配因子定义为:
[0098]
[0099] i=1,2,...,K表示经过KWNN算法计算得到的K个邻居对应的K张图像编号。
[0100] 经过图像匹配计算得到图像匹配因子,能够对WiFi初步定位的结果进行校正,即采用图像匹配定位,采用的策略是用图像匹配因子校正公式(2)中的“距离”权重因子ω,从而达到提高定位精度的目的,用于该校正过程的校正因子定义如下:
[0101]
[0102] 上式(7)中,i=1,2,...,K表示邻近邻居的编号,K表示邻近邻居的数量。
[0103] 最后定位用户的位置计算式为:
[0104]
[0105] 上式(8)中,i=1,2,...,K表示邻近邻居的编号,K表示邻近邻居的数量。
[0106] 第三阶段为群智感知更新数据库。
[0107] 本发明支持用户将定位处理结果上传至数据库,更新数据库,维持数据库与实际信号的一致性。主要的过程为:用户拍摄图像处理得到的特征以及在拍摄时刻用户手机所扫描到的AP热点数量、AP热点的MAC地址和RSSI值,作为一条图像-指纹数据,存在于手机缓存中,由于图像-指纹图像数据库安装数组列表的方式存储,其长度可增加,上传数据直接增加到原图像数据库的最后一行,即可保证储存方式一致。
[0108] 采用群智感知更新的好处在于:极大的降低构建数据库时的复杂性,在某些没有离线采集数据的区域,在用户上传即时定位的结果后,可辅助其他人下次定位使用。
[0109] 具体算例如下:
[0110] 算法整体框架参见图1,下面结合具体实施例,对本发明群智感知式WiFi信号指纹辅助的图像匹配室内定位算法做进一步的详细说明,其具体步骤为:
[0111] 步骤一:离线构建图像-指纹数据库,具体实施例中首先在数据库中构建30个参考点数据,共30条图像-指纹数据,其中一条数据包括参考点二维坐标、该参考点接收到的AP数量、每一个AP的MAC地址以及该AP的RSSI值和图像编号,图像编号从1~30,例如,第23条指纹图像数据的坐标为(576,471),接收到的AP总数为11个,对应的每个AP和RSSI值为(74:a3:4a:00:8f:0c=-49)、(00:11:f7:20:3f:64=-81)、(00:11:f7:20:3e:20=-62)、(92:
68:c3:f5:18:8a=-87)、(64:09:80:41:12:81=-73)、(00:11:f7:e0:3d:29=-90)、(00:
11:f7:20:3e:3b=-91)、(14:cf:92:43:d0:aa=-90)、(00:11:f7:20:3e:b9=-92)、(f8:
0b:d0:09:98:ac=-75)、(00:11:f7:a6:4d:4f=-94),图像编号23。
[0112] 步骤二:采用KWNN算法实现WiFi指纹初步定位,同时,对比不同的邻居数K下的定位平均误差,用户实际定位时,真实坐标为(361,331),对应的RSSI值为:(00:11:f7:20:3e:0e=-60)、(f8:0b:d0:08:43:7e=-37)、(00:11:f7:e0:3d:29=-78)、(00:11:f7:20:3f:88=-73)、(92:68:c3:f5:18:8a=-73)、(00:11:f7:20:3e:4d=-82)、(00:11:f7:20:3d:fc=-86)、(00:11:f7:20:3e:20=-88)、(78:52:62:17:22:d2=-78)、(00:11:f7:e0:43:b1=-92)、(00:11:f7:20:3f:01=-92)、(f8:0b:d0:09:98:ac=-94)、(64:09:80:41:12:81=-85),设置不同的K值,对比定位平均误差,结果如图3所示,从图中看出,当K=3时,定位的平均误差最小,因此邻近邻居数K选择为3。
[0113] 步骤三:计算3个邻近邻居数的欧式距离,公式为:
[0114]
[0115] 找到的3个邻近邻居,第一个邻居指纹数据为:(00:11:f7:20:3e:0e=-69)、(f8:0b:d0:08:43:7e=-43)、(92:68:c3:f5:18:8a=-90)、(00:11:f7:20:3e:20=-80)、(78:
52:62:17:22:d2=-770、(00:11:f7:20:3f:88=-82)、(00:11:f7:20:3e:4d=-82)、(00:
11:f7:20:43:f7=-91)、(00:11:f7:20:43:f6=-87)、(00:11:f7:20:44:00=-83)、(00:
11:f7:20:43:ff=-83)、(00:11:f7:20:43:d2=-90)、(64:09:80:41:12:81=-83)、(00:
11:f8:10:0d:8d=-95)、(00:11:f8:10:0d:8e=-92)、(00:11:f7:20:43:d3=-91)、(00:
11:f7:20:3f:64=-84),图像编号为1。该邻居的坐标为(413,239)。
[0116] 第二个邻居指数数据为:(00:11:f7:20:3e:0e=-59)、(f8:0b:d0:08:43:7e=-32)、(00:11:f7:e0:3d:29=-83)、(64:09:80:41:12:81=-84)、(00:11:f7:20:3f:88=-
76)、(92:68:c3:f5:18:8a=-76)、(00:11:f7:20:3e:4d=-82)、(00:11:f7:20:3d:fc=-
89)、(00:11:f7:20:3e:20=-85)、(78:52:62:17:22:d2=-77)、(00:11:f7:e0:43:b1=-
94)、(00:11:f7:20:3f:01=-92),图像编号为2。该邻居的坐标为(355,333)。
[0117] 第三个邻居指纹数据为:(00:11:f7:20:3e:0e=-63)、(f8:0b:d0:08:43:7e=-32)、(00:11:f7:e0:3d:29=-78)、(00:11:f7:20:3f:88=-74)、(92:68:c3:f5:18:8a=-
75)、(00:11:f7:20:3e:4d=-81)、(00:11:f7:20:3d:fc=-85)、(00:11:f7:20:3e:20=-
87)、(78:52:62:17:22:d2=-78)、(00:11:f7:e0:43:b1=-93)、(00:11:f7:20:3f:01=-
91)、(64:09:80:41:12:81=-83),图像编号为22,该邻居的坐标为(357,328)。利用公式(9)计算得到的距离分别为:L(d,1)=52.0、L(d,2)=27.0和L(d,3)=18.0。
[0118] 步骤三:利用公式:
[0119]
[0120] 计算得到三个邻居对应的归一化权重为:ω1=0.536、ω2=0.278、ω3=0.186。
[0121] 步骤四:利用三个邻居的坐标值和经过计算得到的各自权重,用公式:
[0122]
[0123] 计算得到用户的位置为(386.46,281.68)。用户实际标定的位置为(361,331),可见误差较大。
[0124] 步骤五:采用SIFT算法提取用户拍摄图像和数据库中3个邻居对应的图像特征数量Fs=103,数据库的三个特征点数分别为F(DB,1)=75,F(DB,2)=92、F(DB,3)=72,提取的图像如图4所示。
[0125] 计算3个邻近对应的图像特征和用户拍摄图像特征之间的欧式距离d(s,j):
[0126]
[0127] 根据最小距离和次最小距离的比值,设定阈值,统计用户拍摄图像和数据库内的图像之间的共同特征数。本发明中,经过不同的阈值实验验证,该阈值设置为0.55时,能够较好的满足图像匹配正确率,同时还能使定位的平均误差最小,该结果显示为图5。计算得到的共同特征数量分别为:Fc1=20,Fc2=58,Fc3=48。
[0128] 步骤六:利用公式:
[0129]
[0130] 计算得到归一化图像匹配因子η1=0.997,η2=1.472,η3=1.319。
[0131] 步骤七:根据计算得到的距离权重因子ω和图像匹配因子η,计算得到提高定位精度的校正因子ξ。校正因子ξ的定位为:
[0132]
[0133] 计算得到归一化校正因子分别为:ξ1=0.263,ξ2=0.389,ξ3=0.348。
[0134] 步骤八:根据计算得到的校正因子ξ和3个邻近邻居的坐标(413,239),(355,333),(357,328),计算公式为:
[0135]
[0136] 计算得到校正后的用户位置为(371.02,306.54),相比于WiFi指纹定位得到的(386.46,281.68),精度得到提高。
[0137] 步骤九:在步骤一初始构建参考点图像-指纹数据库数据量为30,利用群智感知的方式补充和更新图像-指纹数据库。数据库中的参考点的数量依次为30,50,70,90,120,140,160,180,200,220,共10组数据,每一组的操作方式与步骤二至步骤八一致,对比WiFi指纹定位和本发明的群智感知式WiFi信号指纹辅助的图像匹配室内定位的平均误差,结果如图6。
[0138] 本领域技术人员将清楚本发明的范围不限制于以上讨论的示例,有可能对其进行若干改变和修改,而不脱离所附权利要求书限定的本发明的范围。尽管己经在附图和说明书中详细图示和描述了本发明,但这样的说明和描述仅是说明或示意性的,而非限制性的。本发明并不限于所公开的实施例。
[0139] 通过对附图,说明书和权利要求书的研究,在实施本发明时本领域技术人员可以理解和实现所公开的实施例的变形。在权利要求书中,术语“包括”不排除其他步骤或元素,而不定冠词“一个”或“一种”不排除多个。在彼此不同的从属权利要求中引用的某些措施的事实不意味着这些措施的组合不能被有利地使用。权利要求书中的任何参考标记不构成对本发明的范围的限制。