基于加权扩展卡尔曼滤波的室内定位方法及室内定位系统
文献发布时间:2023-06-19 11:00:24
技术领域
本发明涉及定位技术领域,更具体地说,涉及一种室内定位技术。
背景技术
在室外开阔环境下,全球卫星导航系统(GPS、北斗、Glonass、Galileo)可以提供较高的定位精度。当多颗卫星发射电磁信号时,接收器利用接收到的卫星信号计算出在地球坐标系中的具体位置。常用的定位方法包括到达时间、到达时间差和到达角度。虽然卫星导航系统已经成功地应用于室外环境,但在室内环境中却面临着许多问题。同时随着导航定位服务行业的蓬勃发展,室内导航定位受到了广泛关注。
惯性导航系统是一种不依赖外界信息、不向外界辐射能量的自主导航系统。它可以提供载体位置、姿态和速度的连续实时信息。惯导系统使用加速计和陀螺仪来收集加速度和角速度。载体位置是通过对加速度和角速度进行积分得到的。运行时间越长,惯导系统的累积误差越大。
利用磁场进行定位是解决室内导航定位问题的另一种方法。它主要分为两种方案:指南针模型和指纹匹配模型。在室内磁场不受金属设备干扰的情况下,利用磁场指向北方的特性,由磁场和角速度确定行人方向。当室内磁场受到干扰时,通常采用指纹匹配算法来估计行人的运动轨迹。
近年来,使用WiFi进行定位变得越来越流行。常用的定位方法包括WiFi传播模型和指纹匹配模型。WiFi传播模型利用信号在空间传播的路径来建立信道模型。利用WiFi定位指纹可以分为两个阶段:离线阶段和在线阶段。在离线阶段采集WiFi指纹,构建指纹数据库。在线阶段,采集WiFi指纹进行匹配,估计行人轨迹。
Eric Foxlin于2005年在《IEEE Computer Graphics and Applications》的25期6卷38-46页提出了一种零速度更新来校正速度误差。John Elwell于1999年在《TheDigitization of the Battlespace》提出零姿态更新算法来减少姿态误差。
Jian Chen于2019年在《Electronics》的8期2卷提出三维动态时间规整算法计算在线指纹和数据库指纹之间的匹配度。You Li于2016年在《IEEE CommunicationsLetters》的20期12卷提出多维动态时间弯曲算法计算多维WiFi指纹的匹配度。
中国专利申请号:201811083050.5,公开了一种基于WiFi与PDR融合的室内定位方法专利,其通过融合策略有效地提高了室内导航定位精度。
上述论文和专利提出的方案虽然能够在一定程度上提高室内导航定位精度,但是惯性导航系统的累积误差、磁场和WiFi指纹误匹配仍然没有得到有效解决。因此如何有效的解决惯性导航系统的累积误差,磁场和WiFi指纹误匹配来提高室内定位精度为本领域所要解决的问题。
发明内容
针对现有技术的不足,本发明一方面的目的是提供一种基于加权扩展卡尔曼滤波的室内定位方法。该室内定位方法可使用智能手机传感器作为采集信号源的载体,不需要提前部署额外设施,具有定位精度高、成本低、易于扩展等特点。
为了达到上述目的,本发明提供的基于加权扩展卡尔曼滤波的室内定位方法,包括以下步骤:
基于惯导方法推算目标当前位置;
采集现场磁场信号,并与构建的磁场指纹数据库进行磁场指纹匹配;
采集现场WiFi信号,并与构建的WiFi指纹数据库进行WiFi指纹匹配;
将推算的行人当前位置、经过匹配的磁场指纹信号、经过匹配的WiFi指纹信号进行加权扩展卡尔曼滤波融合计算得到目标在室内的位置。
进一步地,所述定位方法基于惯导方法推算目标当前位置时,包括:
通过惯导设备获取目标在定位区域行走时的加速度、角速度;
将获取到的角速度转换成方向数据,以及将加速度转换为步数和步长数据;
根据方向数据、步数和步长数据,推算出目标在定位区域内的当前位置。
进一步地,所述定位方法还包括离线阶段磁场数据库和WiFi指纹数据库构建步骤:
1.1把定位区域划分成网格,选择参考点,测量参考点的坐标位置;
1.2在参考点开始收集磁场和WiFi信号;
1.3使用反距离算法对采集的WiFi信号进行插值,选择两个无线接入点信号分别为RSS
式中N代表需要插值的数量,i代表第i个插值点;
1.4构建指纹位置键值对数据库,磁场和WiFi指纹数据库分别如下表示
式中k代表在第k个参考点收集指纹信号,m代表磁场长度,n代表第n个无线接入点,(x
进一步地,其特征在于,所述定位方法中,动态时间规整通过拉伸指纹序列来匹配在线阶段和离线阶段采集的不等长磁场指纹,计算磁场指纹之间的距离,距离越小指纹相似度越高,指纹库中越相似的指纹对应的位置可信度越高;加权K近邻在指纹匹配后选择K个最相似磁场指纹,通过加权的方式提高磁场指纹匹配精度。
进一步地,所述定位方法中,欧氏距离是通过计算在线阶段和离线阶段采集的WiFi指纹距离得到的,越小距离对应的WiFi指纹相似度越高,越相似的WiFi指纹对应的位置可信度越高;加权K近邻通过选择K个最相似WiFi指纹,通过加权的方式提高WiFi指纹匹配精度。
进一步地,所述定位方法中,加权扩展卡尔曼滤波使用行人航位推算作为状态转移方程,惯性导航系统与磁场匹配之差、惯性导航系统与WiFi匹配之差作为观测方程,通过适当地加权有效地融合了多源信息,最后从惯性导航系统中移除误差,从而提高定位精度。
为了达到上述目的,本发明另一方面的目的是提供一种基于加权扩展卡尔曼滤波的室内定位系统,该室内定位系统包括:
惯导模块,所述惯导模块基于惯导方法推算目标当前位置;
磁场匹配模块,采集现场磁场信号,并与构建的磁场指纹数据库进行磁场指纹匹配;
WiFi匹配模块,采集现场WiFi信号,并与构建的WiFi指纹数据库进行WiFi指纹匹配;
多传感器融合模块,与惯导模块、磁场匹配模块以及WiFi匹配模块数据连接,将推算的行人当前位置、经过匹配的磁场指纹信号、经过匹配的WiFi指纹信号进行加权扩展卡尔曼滤波融合计算得到目标在室内的位置。
进一步地,所述磁场匹配模块利用动态时间规整,通过拉伸指纹序列来匹配在线阶段和离线阶段采集的不等长磁场指纹,计算磁场指纹之间的距离,距离越小指纹相似度越高,指纹库中越相似的指纹对应的位置可信度越高,并且利用加权K近邻,在指纹匹配后选择K个最相似磁场指纹,通过加权的方式提高磁场指纹匹配精度。
进一步地,所述WiFi匹配模块利用欧氏距离,计算在线阶段和离线阶段采集的WiFi指纹距离,越小距离对应的WiFi指纹相似度越高,越相似的WiFi指纹对应的位置可信度越高,并且利用加权K近邻,选择K个最相似WiFi指纹,通过加权的方式提高WiFi指纹匹配精度。
进一步地,所述多传感器融合模块利用加权扩展卡尔曼滤波,使用行人航位推算作为状态转移方程,惯性导航系统与磁场匹配之差、惯性导航系统与WiFi匹配之差作为观测方程,通过适当地加权有效地融合了多源信息,最后从惯性导航系统中移除误差,从而提高定位精度。
本发明的室内定位方法不需要部署额外的基础设施,具有易扩展、低成本、高精度、高鲁棒性等特点。
本发明的室内定位方法还具有易部署、易推广的特点。
附图说明
图1显示为本发明实例中的基于加权扩展卡尔曼滤波的室内定位方案的原理图;
图2为智能手机收集加速度、角速度、磁场以及WiFi界面;
图3显示为本发明实例中的建筑物楼层平面的示意图及真实轨迹;
图4显示为本发明实例中加权扩展卡尔曼滤波在自实习定位结果;
图5显示为本发明实例中加权扩展卡尔曼滤波在办公楼定位结果。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所披露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修改或改变。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
针对现有技术的不足,本方法给出基于加权扩展卡尔曼滤波的室内定位方案。本方法使用加权扩展卡尔曼滤波融合惯导定位、磁场指纹匹配以及WiFi指纹匹配,由此来实现在不需要部署额外基础设施的情况下,进行室内高精度定位。
具体的,本基于加权扩展卡尔曼滤波的室内定位方法,主要通过如下步骤方案配合构成:
基于惯导方法推算目标当前位置;
采集现场磁场信号,并与构建的磁场指纹数据库进行磁场指纹匹配;
采集现场WiFi信号,并与构建的WiFi指纹数据库进行WiFi指纹匹配;
将推算的行人当前位置、经过磁场匹配的定位结果、经过WiFi匹配的定位结果进行加权扩展卡尔曼滤波融合计算得到目标在室内的位置。
这里以智能手机传感器作为采集信号源的载体为例,来具体说明一下本方法的实施过程(参见图1)。图1中,欧式距离采集的WiFi信号由MAC地址和对应值组成。移除MAC地址后,使用欧式距离算法计算在线采集的指纹与离线指纹之间的距离,如下所示:
d=|RSS-RSS
式中RSS和RSS
离线阶段磁场指纹数据库和WiFi指纹数据库构建
Step1:把定位区域划分成网格,选择参考点,使用激光测距仪测量参考点的坐标位置;
Step2:安装GetSesorsData APP软件,在参考点手持智能手机点击开始按钮开始收集磁场和WiFi信号;
Step3:使用反距离算法对采集的WiFi进行插值,选择两个无线接入点信号分别为RSS
式中N代表需要插值的数量,i代表第i个插值点。
Step4:构建指纹位置键值对数据库,磁场和WiFi指纹数据库分别如下表示
式中k代表在第k个参考点收集指纹信号,m代表磁场长度,n代表第n个无线接入点,(x
磁场指纹和WiFi指纹构建成键值对形式,存储在指纹数据库中。构建的指纹库具有易于存储,方便查找。通过磁场或WiFi指纹很容易查找到指纹对应的位置。
在线阶段数据采集
行人手持智能手机点击GetSesorsData APP开始按钮后按照正常步行速度在定位区域行走,智能手机采集加速度、角速度、磁场以及WiFi。
惯导推算当前位置
首先,通过手持智能手机获取目标在定位区域行走时的加速度、角速度;
接着,将获取到的角速度转换成方向数据,以及将加速度转换为步数和步长数据;
最后,根据方向数据、步数和步长数据,推算出目标在定位区域内的当前位置。
具体的,推算目标当前位置的过程如下:
Step1:使用角速度可以估计出智能手机的姿态信息。主要手段包括直接余弦矩阵法、四元数法和欧拉角法。
直接余弦矩阵法如下计算:
式中[q
基于直接余弦矩阵法的行人方向如下计算
Step2:当加速度计采集加速度后,使用倒立摆模型计算行人步长,计算如下
式中SL代表步长,L代表智能手机距离地面高度,H代表垂直位移。
Step3:行人航位推算使用前一时刻[x
使用航位推算估计行人位置只需要知道前一时刻位置、步长和方向便可推算出当前时刻的行人位置,具有计算量小、功耗低、不向外界辐射能量、抗干扰强、受外界环境干扰小等优点。
指纹匹配
动态时间规整通过拉伸指纹序列来匹配在线阶段和离线阶段采集的不等长磁场指纹,计算磁场指纹之间的距离,距离越小指纹相似度越高,指纹库中越相似的指纹对应的位置可信度越高。加权K近邻在指纹匹配后选择K个最相似磁场指纹,通过加权的方式提高磁场指纹匹配精度。
欧氏距离是通过计算在线阶段和离线阶段采集的WiFi指纹距离得到的,越小距离对应的WiFi指纹相似度越高,越相似的WiFi指纹对应的位置可信度越高。加权K近邻通过选择K个最相似WiFi指纹,通过加权的方式提高WiFi指纹匹配精度。
其中,动态时间规整过程如下:
Step1:采集的指纹信号长度为S1和S2,计算两个指纹对应点之间的距离
d(i,j)=(S1(i)-S2(j))
Step2:使用递归算法计算指纹距离
D(i,j)=d(i,j)+min([D(i-1,j),D(i-1,j-1),D(i,j-1)]) (8)
加权K近邻过程如下:
选择最小K个指纹距离以及对应的位置,使用指纹距离的倒数作为权重,指纹匹配的行人位置如下估计
式中
加权K近邻使用加权K个指纹匹配结果,通过指纹距离的倒数加权K个指纹位置,具有减小误匹配带来的定位误差。
加权扩展卡尔曼滤波融合
加权扩展卡尔曼滤波使用行人航位推算作为状态转移方程,惯性导航系统与磁场匹配之差、惯性导航系统与WiFi匹配之差作为观测方程,通过适当地加权有效地融合了多源信息,最后从惯性导航系统中移除误差,从而提高定位精度。
具体的,本实例中加权扩展卡尔曼滤波融合运算的过程如下:
Step1:多传感器融合加权扩卡尔曼滤波的误差如下设计
δX
式中δX
Step2:加权扩展卡尔曼滤波的观测方程如下定义:
Z
式中
Step3:根据加权线性最下方差优化算法,最终融合估计结果如下
式中要求α
式中
Step4:构建拉格朗日方程:
求得:
Step5:多传感器融合加权扩展卡尔曼滤波误差如下:
Step6:多传感器融合加权扩展卡尔曼滤波估计的位置为:
式中
加权扩展卡尔曼滤波通过加权融合多个信号源信息,利用导航源互补特性,有效地减少了定位误差。
本实例给出的方案在具体实现时,可以以相应的软件程序来实现。据此,本实例可形成一套基于加权扩展卡尔曼滤波的室内定位系统。
如此形成的多传感器融合室内定位系统主要包括惯导模块、磁场匹配模块、WiFi匹配模块和多传感器融合模块。
惯导模块用于行人方向估计、步长估计、行人航位推算;同时,本惯导模块还把智能手机中加速度计、陀螺仪采集的数据转换成步长、方向、步数为加权扩展卡尔曼滤波的多传感器融合做准备。
磁场匹配模块包括离线阶段的磁场指纹库构建和在线阶段的指纹匹配,将采集现场磁场信号,并与构建的磁场指纹数据库进行磁场指纹匹配。
WiFi匹配模块包括离线阶段的WiFi指纹库构建和在线阶段的指纹匹配,将采集现场WiFi信号,并与构建的WiFi指纹数据库进行WiFi指纹匹配。
多传感器融合模块,与惯导模块、磁场匹配模块以及WiFi匹配模块数据连接,将推算的行人当前位置、经过匹配的磁场指纹信号、经过匹配的WiFi指纹信号进行加权扩展卡尔曼滤波融合计算得到目标在室内的位置。
这里的磁场匹配模块利用动态时间规整,通过拉伸指纹序列来匹配在线阶段和离线阶段采集的不等长磁场指纹,计算磁场指纹之间的距离,距离越小指纹相似度越高,指纹库中越相似的指纹对应的位置可信度越高,并且利用加权K近邻,在指纹匹配后选择K个最相似磁场指纹,通过加权的方式提高磁场指纹匹配精度。
这里的WiFi匹配模块利用欧氏距离,计算在线阶段和离线阶段采集的WiFi指纹距离,越小距离对应的WiFi指纹相似度越高,越相似的WiFi指纹对应的位置可信度越高,并且利用加权K近邻,选择K个最相似WiFi指纹,通过加权的方式提高WiFi指纹匹配精度。
这里的多传感器融合模块利用加权扩展卡尔曼滤波使用行人航位推算作为状态转移方程,惯性导航系统与磁场匹配之差、惯性导航系统与WiFi匹配之差作为观测方程,通过适当地加权有效地融合了多源信息,最后从惯性导航系统中移除误差,从而提高定位精度。
下面以具体应用实例来进一步说明本实例方案。
参见图2-5,基于加权扩展卡尔曼滤波的室内定位的实施过程如下:
步骤1:行人手持智能手机收集加速度、角速度、磁场以及WiFi,如图2所示。
步骤2:结合定位区域参考点位置,离线阶段构建的磁场指纹库和WiFi指纹库,如图3所示。
步骤3:基于加速度、角速度计算行人位置。
步骤4:磁场指纹使用动态时间规整和加权K近邻估计定位结果。
步骤5:WiFi指纹使用欧氏距离和加权K近邻估计定位结果。
步骤6:使用加权扩展卡尔曼滤波融合加速度、角速度、磁场以及WiFi信号,加权扩展卡尔曼滤波使用行人航位推算作为状态转移方程,惯性导航系统与磁场匹配之差、惯性导航系统与WiFi匹配之差作为观测方程,通过适当地加权有效地融合了多源信息。行人手持智能手机在自习室、教学楼按照正常步行速度行走,执行加权扩展卡尔曼滤波后定位轨迹如图4和图5所示。
由上实例可知,本方法在具体实施时,只需使用智能手机传感器作为采集信号源的载体,不需要提前部署额外设施,具有定位精度高、成本低、易于扩展等特点。
上述本发明的方法,或特定系统单元、或其部分单元,为纯软件架构,可以透过程序代码布设于实体媒体,如硬盘、光盘片、或是任何电子装置(如智能型手机、计算机可读取的储存媒体),当机器加载程序代码且执行(如智能型手机加载且执行),机器成为用以实行本发明的装置。上述本发明的方法与装置亦可以程序代码型态透过一些传送媒体,如电缆、光纤、或是任何传输型态进行传送,当程序代码被机器(如智能型手机)接收、加载且执行,机器成为用以实行本发明的装置。
由上实例可知,本发明的室内定位方法使用行人航位推算误差模型作为扩展卡尔曼滤波器的状态转移方程,惯性导航系统与磁场定位之差、惯性导航系统与WiFi定位之差作为观测方程。基于各导航系统的互补特性,使用加权因子融合多信号源信息,有效的减少了室内导航定位误差。同时本发明的室内定位方法不需要部署额外的基础设施,具有易扩展、低成本、高精度、高鲁棒性等特点。
以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
- 基于加权扩展卡尔曼滤波的室内定位方法及室内定位系统
- GPS室内定位系统和基于GPS室内定位系统的室内定位方法