基于apid过滤和卡尔曼滤波的室内wlan指纹定位方法

文档序号:7797111阅读:204来源:国知局
基于ap id过滤和卡尔曼滤波的室内wlan指纹定位方法
【专利摘要】本发明涉及基于AP?ID过滤和卡尔曼滤波的室内WLAN指纹定位方法,将待定位区域划分为若干个小分区,并通过分区的AP?ID库筛选迅速确定分区;同时通过AP?ID库过滤,使系统能够自动适应少量AP变动的情况;通过卡尔曼滤波算法对WLAN信号指纹进行处理,滤除定位环境的随机干扰。本发明实现了WLAN指纹定位过程中的快速准确的匹配定位,解决了传统WLAN指纹定位方法中匹配速度慢、定位精度低的问题。通过分区AP?ID过滤,显著提升了指纹匹配的速度,同时,使系统能够自动适应少量AP变动的情况,避免了重复建库的问题;通过卡尔曼滤波算法增强了系统对随机干扰的自适应能力,提高了定位精度。
【专利说明】基于AP ID过滤和卡尔曼滤波的室内WLAN指纹定位方法
【技术领域】
[0001]本发明属于导航定位领域。涉及一种利用计算机技术、数字信号处理技术、数据库技术等实现自适应的、快速的室内WLAN指纹定位方法。该方法能实现WLAN指纹定位过程中对环境扰动和AP (Access Point,无线信号接入点)数量变化的自适应和快速定位。
【背景技术】
[0002]室内是人类活动最密集的场所,因此对于室内位置服务的研究具有重要意义。由于室内环境存在多径、非视距、复杂多变等特点,因此室内不能应用像GPS等广泛用于室外的定位技术。基于WLAN的位置指纹定位技术因其设备简单,定位精度高而成为近年来室内定位技术研究的焦点。
[0003]根据指纹匹配方式的不同,将WLAN位置指纹定位技术划分为两大类:一类是确定性定位方法,一类是概率性定位方法。确定性定位方法的位置指纹是每个接入点信号强度的平均值,使用该值采用确定性的推理算法来估计用户位置。如微软的Bahl等人采用信号空间最近邻法(Nearest Neighbors SignalStrength, NNSS)和最接近K邻居法(K-NearestNeighbors in Signal Space, K-NNSS),在位置指纹数据库里找到与实时信号强度样本最接近的一个或多个样本,将它们对应的采样点或多个采样点的平均值作为估计的用户位置。概率性的定位方法通过条件概率为位置指纹建立模型,并采用贝叶斯推理机制来估计用户的位置。比较著名的WLAN位置指纹定位系统有微软研发的RADAR系统和Harvard大学MoteTrack定位系统。然而,这些系统平均定位精度都在3m以上,还不能满足高精度的室内定位需求。
[0004]随着建筑规模的不断扩大,匹配定位过程中数据处理量越来越大,如何提高匹配定位速度也成为当前研究的热点。而且,由于WLAN信号易受干扰,以及环境变动等因素的影响,当前WLAN指纹定位技术的定位精度难以满足不断提高的位置服务需求。因此,这些问题都亟需进一步解决。

【发明内容】

[0005]针对WLAN指纹定位技术中存在的定位精度低、速度慢等问题,本发明提出了一种基于AP ID过滤和卡尔曼滤波的室内WLAN指纹定位方法。将待定位区域划分为若干个小分区,并通过分区的AP ID库筛选迅速确定分区,从而大大减少数据匹配量;同时通过APID库过滤,使系统能够自动适应少量AP变动的情况,避免了重复建库的问题,提高了系统的自适应性;通过卡尔曼滤波算法对WLAN信号指纹进行处理,滤除定位环境的随机干扰,减小环境变动带来的定位误差。
[0006]基于AP ID过滤和卡尔曼滤波的室内WLAN指纹定位方法,包括以下步骤:
[0007]步骤1:离线建立WLAN位置指纹库。
[0008]步骤1.1:确定待定位区域。
[0009]获取待定位区域的平面图和室内结构图,并确定待定位区域内所有AP接入点的分布位置。
[0010]步骤1.2:判断是否需要进行区域划分。
[0011]在结构复杂的室内环境中,AP的信号衰减速度非常快,传输距离有限,因此,可以根据室内结构和AP的分布情况,将较大的待定位区域划分为几个小区域。
[0012]—般的,如果建筑物边长大于50m,有多个AP分布在定位区域的不同方位上,并且不同AP接入点间墙体间隔大于4层时,就对定位区域进行划分;否则,转步骤1.8。
[0013]步骤1.3:按照划分原则进行区域划分。
[0014]区域划分的原则是:尽量使每个分区以AP的位置为中心,在分区内每个AP的信号穿墙数量应少于3层,分区直径应小于50m。这样可以提高分区AP ID库的可辨识度。
[0015]步骤1.4:采集信号的位置指纹和参考坐标。
[0016]在每个分区内前后左右间隔Im处均匀选择参考点,之后通过将平面图矢量化,确定每个参考点的坐标。然后,在每个参考点处采集信号强度指纹40?60组,采样间隔为I秒。并将采集的数据上传到计算机。
[0017]步骤1.5:对指纹信号进行卡尔曼滤波。
[0018](I)对步骤1.4采集的信号指纹进行卡尔曼滤波,通过对随机过程进行实测、预测和校正,有效处理具有时变特性的实际问题,滤除测量过程中的环境干扰,增强系统的定位精度和环境的自适应性。
[0019](2)提取每组指纹中来自同一个AP的信号强度,根据采集时间进行连续卡尔曼滤波。
[0020]步骤1.6:建立AP ID全库。
[0021]将步骤1.5滤波过程采集到的信号指纹中出现的所有AP ID提取出来,并保存到数据库中,建立定位区域的AP ID全库。
[0022]步骤1.7:建立各分区的分区AP ID库和分区位置指纹库。
[0023](I)将步骤1.5滤波后的位置指纹按信号强度RSS从大到小对AP ID排序,并按照指定格式保存到相应的分区位置指纹库中,建立分区位置指纹库。
[0024](2)在每个区域内所有参考点处,取每个指纹中前几个(一般选6?12个)AP的APID组成AP ID库,每个小区域对应一个分区AP ID库。根据每个分区内AP ID出现频率的统计值对其进行从大到小排序。
[0025]步骤1.8:如果不需要分区,重复步骤1.4?1.7,对指纹信号进行卡尔曼滤波,并建立整个定位区域的AP ID全库和位置指纹库。
[0026]步骤2:在线进行指纹匹配定位。
[0027]步骤2.1:采集待定位区域指纹。
[0028]在待定位区域,用手机连续采集信号指纹数据,并记录下采集点位置,通过矢量地图确定各采集点的真实坐标,将采集的信号指纹数据上传到计算机。
[0029]步骤2.2:对指纹信号进行卡尔曼滤波。
[0030]将步骤2.1采集的待定位信号指纹中的每一个AP信号按照时间进行卡尔曼滤波处理,将实时测得信号中来自相同AP的RSS进行卡尔曼滤波,将相同时刻滤波后的全部AP信息,按照RSS的大小进行排序,对应相应的AP ID,形成待定位指纹。将滤波后的待定位信号指纹保存起来。[0031]步骤2.3:对滤波后的指纹信号进行离散采样。
[0032]从不同的采集点采集的待定位指纹中均匀地抽选信号指纹,用于下一步的匹配定位。
[0033]步骤2.4:判断是否有新增AP。
[0034]将步骤2.3得到的待定位指纹的AP ID与该区域的AP ID全库进行匹配,如果某个AP ID在AP ID全库中找不到,则说明该AP是新增或更换的AP,在待定位指纹中的直接删除此AP ID和对应的RSS信息,组成新的待定位指纹。否则,转下一步。
[0035]步骤2.5:判断待定位指纹属于哪个分区AP ID库。
[0036]查找包含待定位指纹的全部AP ID的分区AP ID库。当有多个分区AP ID库包含待定位指纹的全部AP ID时,首先确定所述多个分区AP ID库中与待定位指纹相同的APID,然后,计算这些相同的AP ID在待定位指纹中的序号与在分区AP ID库中的序号的差的绝对值,并求所述绝对值的和。和最小的分区AP ID库即为待定位指纹所属的分区AP ID库。
[0037]步骤2.6:判断该分区内是否有与待定位指纹AP ID相同库指纹集。如果有,进一步采用最近邻法估计待定位指纹的位置;如果没有,缩短指纹长度,再次匹配。
[0038]步骤2.7:计算待定位指纹与筛选出的库指纹的欧式距离,找出欧式距离最小的位置指纹,从而估计出待定位指纹的位置坐标。如果该距离超过阈值,缩短指纹长度,转步骤2.6 ;否则,转下一步。所述阈值通常取150。
[0039]步骤2.8:判断采样指纹是否全部匹配。如果不是全部匹配,转步骤2.4 ;如果全部匹配,输出估计位置。
[0040]所述步骤1.6、步骤1.8和步骤2.2采用相同的卡尔曼滤波算法,最大程度地滤除环境干扰,卡尔曼滤波算法主要由以下5个公式组成:
【权利要求】
1.基于AP ID过滤和卡尔曼滤波的室内WLAN指纹定位方法,其特征在于,将待定位区域划分为若干个小分区,并通过分区的AP ID库筛选迅速确定分区,从而大大减少数据匹配量;同时通过AP ID库过滤,使系统能够自动适应少量AP变动的情况,避免重复建库的问题;通过对WLAN信号指纹进行卡尔曼滤波,减小环境变动带来的定位误差;所述方法包括以下步骤: 步骤1:离线建立WLAN位置指纹库; 步骤1.1:确定待定位区域; 获取待定位区域的平面图和室内结构图,并确定待定位区域内所有AP接入点的分布位置; 步骤1.2:判断是否需要进行区域划分; 一般的,如果建筑物边长大于50m,有多个AP分布在定位区域的不同方位上,并且不同AP接入点间墙体间隔大于4层时,就对定位区域进行划分;否则,转步骤1.8 ; 步骤1.3:按照划分原则进行区域划分; 区域划分的原则是:尽量使每个分区以AP的位置为中心,在分区内每个AP的信号穿墙数量应少于3层,分区直径应小于50m ;这样划分可以提高分区AP ID库的可辨识度; 步骤1.4:采集信号的位置指纹和参考坐标; 在每个分区内前后左右间隔Im处均匀选择参考点,之后通过将平面图矢量化,确定每个参考点的坐标;然后, 在每个参考点处采集信号强度指纹40~60组,采样间隔为I秒;并将采集的数据上传到计算机 ; 步骤1.5:对指纹信号进行卡尔曼滤波; (1)对步骤1.4采集的信号指纹进行卡尔曼滤波,通过对随机过程进行实测、预测和校正,有效处理具有时变特性的实际问题,滤除测量过程中的环境干扰,增强系统的定位精度和环境的自适应性; (2)提取每组指纹中来自同一个AP的信号强度,根据采集时间进行连续卡尔曼滤波; 步骤1.6:建立AP ID全库; 将步骤1.5滤波过程采集到的信号指纹中出现的所有AP ID提取出来,并保存到数据库中,建立定位区域的AP ID全库; 步骤1.7:建立各分区的分区AP ID库和分区位置指纹库; (1)将步骤1.5滤波后的位置指纹按信号强度RSS从大到小对AP ID排序,并按照指定格式保存到相应的分区位置指纹库中,建立分区位置指纹库; (2)在每个区域内所有参考点处,取每个指纹中前M个AP的APID组成AP ID库,通常取6≤M≤12,每个小区域对应一个分区AP ID库;根据每个分区内AP ID出现频率的统计值对其进行从大到小排序; 步骤1.8:如果不需要分区,重复步骤1.4~1.7,对指纹信号进行卡尔曼滤波,并建立整个定位区域的AP ID全库和位置指纹库; 步骤2:在线进行指纹匹配定位; 步骤2.1:采集待定位区域指纹; 在待定位区域,连续采集信号指纹数据,并记录下采集点位置,通过矢量地图确定各采集点的真实坐标,将采集的信号指纹数据上传到计算机;步骤2.2:对指纹信号进行卡尔曼滤波; 将步骤2.1采集的待定位信号指纹中的每一个AP信号按照时间进行卡尔曼滤波处理,将实时测得信号中来自相同AP的RSS进行卡尔曼滤波,将相同时刻滤波后的全部AP信息,按照RSS的大小进行排序,对应相应的AP ID,形成待定位指纹;将滤波后的待定位信号指纹保存起来; 步骤2.3:对滤波后的指纹信号进行离散采样; 从不同的采集点采集的待定位指纹中均匀地抽选信号指纹,用于下一步的匹配定位; 步骤2.4:判断是否有新增AP; 将步骤2.3得到的待定位指纹的AP ID与该区域的AP ID全库进行匹配,如果某个APID在AP ID全库中找不到,则说明该AP是新增或更换的AP,在待定位指纹中的直接删除此AP ID和对应的RSS信息,组成新的待定位指纹;否则,转下一步; 步骤2.5:判断待定位指纹属于哪个分区AP ID库; 查找包含待定位指纹的全部AP ID的分区AP ID库;当有多个分区AP ID库包含待定位指纹的全部AP ID时,首先确定所述多个分区AP ID库中与待定位指纹相同的AP ID,然后,计算这些相同的AP ID在待定位指纹中的序号与在分区AP ID库中的序号的差的绝对值,并求所述绝对值的和;和最小的分区AP ID库即为待定位指纹所属的分区AP ID库;步骤2.6:判断该分区内是否有与待定位指纹AP ID相同库指纹集;如果有,进一步采用最近邻法估计待定位指纹的位置;如果没有,缩短指纹长度,再次匹配; 步骤2.7:计算待定位指纹与筛选出的库指纹的欧式距离,找出欧式距离最小的位置指纹,从而估计出待定位指纹的位置坐标;如果该距离超过阈值,缩短指纹长度,转步骤2.6 ;否则,转下一步;所述阈值通常取150 ; 步骤2.8:判断采样指纹是否全部匹配;如果不是全部匹配,转步骤2.4 ;如果全部匹配,输出估计位置。
2.根据权利要求1所述的基于AP ID过滤和卡尔曼滤波的室内WLAN指纹定位方法,其特征在于,所述步骤1.6、步骤1.8和步骤2.2采用相同的卡尔曼滤波算法,最大程度地滤除环境干扰,卡尔曼滤波算法主要由以下5个公式组成:
X (k |k-l) = AX(k-l|k-l)+BU(k) (I)
P (k |k-l) = AP(k-l|k-l)A,+Q (2)
X (k I k-1) = X (k-11 k-1) +Kg (K) (Z (K) -X (k | k-1)) (3)
3.根据权利要求1所述的基于APID过滤和卡尔曼滤波的室内WLAN指纹定位方法,其特征在于,所述步骤1.7位置指纹库中每条位置指纹的格式如下:
4.根据权利要求1所述的基于APID过滤和卡尔曼滤波的室内WLAN指纹定位方法,其特征在于,所述步骤1.7每个AP ID在分区内出现频率的统计值为:

5.根据权利要求1所述的基于APID过滤和卡尔曼滤波的室内WLAN指纹定位方法,其特征在于,所述步骤2.7待定位指纹与位置指纹库中指纹的欧几里德距离公式为:
【文档编号】H04W64/00GK103889051SQ201410055244
【公开日】2014年6月25日 申请日期:2014年2月18日 优先权日:2014年2月18日
【发明者】张会清, 许建波 申请人:北京工业大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1