关注“测绘学术资讯”

手机多种携带模式下行人航向估算模型

郭英 段晨汐 刘寒烁 刘冰 李兆博 陈东军

( 山东科技大学 测绘与空间信息学院 )

要:针对智能手机陀螺仪的累积误差问题和行人以不同姿态携带手机引起的误差问题,该文改进了扩展卡尔曼滤波融合算法,引入磁力计模值控制融合误差并提高姿态精度,将手机姿态最优估值作为输入量推算手机平放、打电话、裤兜和摆臂模式下行人航向。打电话状态下,通过姿态矩阵转换手机陀螺仪数据,处理头部非水平转动,推算更可靠的行人前进方向;裤兜状态下,改进基于手机姿态旋转过程的推算方法,与主成分分析法互补推算行人航向,避免180°模糊问题,进一步提升航向精度;摆臂状态下,通过手机姿态确定摆臂点,消去手臂下垂时的航偏角,确定行人行进的方向。实验证明,上述4种手机携带模式下95%的航向误差分别低于6.38°、5.24°、10.73°和9.22°,航向和位置的精度及可靠性均有较大提升。

0 引言

随着微机电系统(micro-electro-mechanical systems, MEMS)的快速发展[1],更多体积小、精度高的传感器应用于手机中,使智能手机中具备更多功能[2]。例如,在室内定位中,智能手机利用惯性传感器、无线射频信号等完成行人导航定位,满足室内行人位置服务需求[3]。目前,相较于其他的无线电传感器,基于智能手机惯性传感器的行人航迹推算技术(pedestrian dead reckoning, PDR)[4-6],因抗干扰能力强,能够在短时间内确定行人的精确位置,越来越受到研究者的重视[7]。但是该技术在室内定位中仍然面临一些问题[8],如因智能手机陀螺仪精度有限导致航向误差的累积问题;磁力计受到室内环境影响的问题;行人手机携带模式变化引起的航向误差问题[9]

为保证长距离行走下行人航迹推算的可靠性,通常使用融合算法结合陀螺仪、磁力计和加速度计推算行人航向,文献[10]基于扩展卡尔曼滤波和互补滤波融合陀螺仪、加速度计和磁力计,在校准磁力计的同时提高航向精度。文献[11]提出了新的准静态磁场算法,判断磁场稳定性的同时根据扩展卡尔曼滤波融合陀螺仪和磁力计,提升了长距离行走下航向精度。为了提升手机PDR的稳定性,行人一般需要将手机稳定放于胸前,固定不变的携带模式难免会放弃部分便携性[12]。为降低因手机携带模式变化产生的航向误差,进一步提高行人导航过程中手机携带模式的多样性,文献[13]研究了手机在裤兜中时的行人行走的身体运动模式,提出了基于四元数旋转过程的推算方法(Rotational approach, RA)和主成分分析法(Principal Component Analysis, PCA)推算行人航向。文献[14]使用偏角法估算打电话状态下行人航向,采用PCA方法估计手机在裤兜和摆臂状态下的航向,满足多种携带模式下行人航向推算。文献[15]认为传统的PCA方法不能保证一个步幅内的水平加速度是完全水平的,这将影响行人航向推算,为此提出了基于全局加速度的PCA方法(PCA-based Method with Global Accelerations, PCA-GA),实验证明该方法具有比传统PCA和偏角法更高的精度。同时,由于传统RA方法精度有限,文献[16]补充了RA方法,实验证明该方法在口袋状态下效果优于PCA方法。

然而上述方法大多基于固定式惯性测量单元,在手机端不适用;两次融合校准算法计算量大;准静态磁场算法应用于室外环境,在室内效果不理想;偏角法会因偏角精度和偏角变动产生误差;基于PCA的航向推算方法均有180°模糊的限制;改进的RA方法虽避免了180°模糊的影响,但是仍受到累积误差影响。

为解决上述问题,本文以手机惯性传感器为平台,改进扩展卡尔曼滤波融合算法,根据磁力计模值自适应控制融合误差,降低计算量,提升室内环境下的修正效果,获取姿态最优估值,借助该最优估值进一步提升不同携带模式下行人航向估算精度;打电话状态下根据手机最优姿态采用旋转矩阵法转换陀螺仪数据,并处理头部非水平转动问题,削弱偏角选择和变动的影响;根据最优姿态改进RA方法并和PCA方法互补,避免180°模糊影响并降低累积误差影响,提升航向精度。

1 基于扩展卡尔曼滤波的手机姿态推算

智能手机内置惯性传感器因精度有限,输出的数据均存在一定程度的噪声。由于使用陀螺仪推算行人航向是积分的过程,故受到陀螺仪零偏误差的影响,误差会随着时间不断累积,从而产生航向漂移现象。为解决这一问题,通常会将陀螺仪、磁力计和加速度计数据进行融合计算,以达到消除航向漂移的目的[17]

但是在室内中,磁力计精度会受到周围环境的影响。直接融合三种传感器数据时,会因磁力计不稳定导致姿态偏差,进而影响后续推算。因此这里改进了融合方式,将磁力计模值作为输入量,根据磁力计模值变化情况控制对磁力计的信任度,提高磁力计不稳定区域的姿态精度,进而提升整体姿态精度。

手机姿态表示方法主要有欧拉角法、四元数法、方向余弦法等。四元数因计算量小、简单高效,并且可以全姿态求解成为了姿态描述中较为常用的方法[18]

2手机不同携带模式下行人航向估计

为满足多种手机携带模式下的行人航向估计,并进一步提升航向可靠性,这里将手机携带模式分为平放、打电话、放入口袋和摆臂,且不同手机姿态下手机惯导轴系方向一致。根据改进的扩展卡尔曼滤波得到手机最优姿态估计,并将该姿态应用于不同手机携带模式的航向推算中,进而推算更为准确的行人航向。

手机平放状态为固定状态,通过扩展卡尔曼滤波得到的最优姿态估计可直接推算行人航向。故以下主要研究另外3种手机携带模式下行人航向。

2.1打电话状态下航向估计

打电话状态通常被看作一种固定状态,即打电话状态和行人前进方向保持固定的偏角,此时行人航向可由手机姿态的航向减去偏角获得。但该方法会因固定偏角的选择和头部非水平转动产生误差。

为提高打电话状态下的航向稳定性和精度,首先使用姿态最优估值获取手机姿态变化,得到打电话前后航向偏差,然后结合打电话状态下的实时手机姿态估值中的俯仰角和横滚角建立旋转矩阵。

行人动力学模拟(手机多种携带模式下行人航向估算模型)(1)

图1中,头部状态为0时行人未发生头部非水平转动,为1则进行转动,可以看出行人头部非水平转动能够被阈值正确检测。通过图2对比分析姿态转换前后和头部动时的航向变化情况验证该方法的有效性。

行人动力学模拟(手机多种携带模式下行人航向估算模型)(2)

从图2可以看出,使用旋转矩阵方法能够准确估算打电话状态下行人航向,加入转动处理后避免了头部非水平转动的导致的误差,并且不影响正常转弯时的航向推算,总体航向估算结果与参考航向一致。

2.2 基于改进的RA方法估算口袋状态下行人航向

2.2.1 已有航向估计方法及分析

行人行走过程中,在裤兜里的手机随着大腿运动可能会产生口袋与手机之间的相对位置变化。为了获取准确的行人航向,有学者采用基于加速度数据的PCA方法估算行人航向;也有学者根据陀螺仪数据计算四元数使用RA方法推导出旋转轴来确定行人的前进方向。然而PCA方法因手机随着腿部前后摆动受到180°模糊影响以及因水平加速度不稳定产生影响,RA方法因陀螺仪自身漂移产生累积误差。因此仅使用PCA方法或者RA方法得到的结果精度有限。

为避免180°模糊问题,这里通过重力加速度数据判断每一步的腿部迈进区间,然后根据该区间的加速度数据和最优姿态估计分别推算PCA航向和RA航向,最后使用互补滤波融合以上两种航向,并根据两航向偏差调节互补滤波的控制参数,进一步提高行人航向精度。

2.2.2 基于改进RA方法的行人航向估计

在连续行走的过程中由于手机随着步态前后摆动,PCA方法得到的行人加速度方向会前后摆动产生180°模糊,RA方法也会因旋转的方式不同导致前进方向发生180°的变化。为避免这一问题,这里选取每一步手机侧腿部迈进的数据区间进行计算。

1) 数据区间的确定。

2) 行人航向估算。

行人动力学模拟(手机多种携带模式下行人航向估算模型)(3)

通过上述方法得到的PCA、RA和改进的RA方法的航向对比图如图3所示。其中,PCA航向在一定程度上偏离参考航向,RA航向虽然稳定但是仍有一定的偏离,改进的RA方法航向精度明显优于另外两种。

2.3 基于摆臂规律的航向估计

由于行人摆臂的过程存在一定的规律性,因此这里从摆臂规律中捕捉特定点的手机姿态进而估算行人航向。

首先捕捉行人每次摆臂时手臂经过的特定点,由于在摆臂过程中手臂与行人平行时的手机姿态特征明显,且此时手臂稳定,因此选取该点作为特定点,在该点附近手机姿态中的俯仰角接近于0°,捕捉该时刻的手机航向角,如图4所示。

行人动力学模拟(手机多种携带模式下行人航向估算模型)(4)

上述4种手机携带模式下行人航向的具体流程图,见图5。

行人动力学模拟(手机多种携带模式下行人航向估算模型)(5)

3 实验验证

实验过程使用OPPO R9s智能手机,数据采集使用AndroidSensor应用软件,采集频率为50HZ。手机平放状态下实验为约200 m的矩形路线,对比改进的扩展卡尔曼滤波算法的航向精度。另外3种携带模式下的行走路线为约100 m的矩形路线。

3.1 手机平放状态实验

为直观反应陀螺仪漂移的影响和磁力计受环境的影响,这里将对比以上两种方法的航向结果,以及常规扩展卡尔曼融合滤波和改进的扩展卡尔曼融合滤波的结果。图7展示了上述四种方法的行人行走路线对比图。可以看出,随时间和距离的增加,陀螺仪航向不断偏离产生漂移现象,磁力计受到环境影响导致航向不稳定,扩展卡尔曼滤波融合算法同样受到磁力计的影响,而改进后的扩展卡尔曼滤波融合算法能够有效避免磁力计的影响,并在一定程度上消除陀螺仪漂移误差。

行人动力学模拟(手机多种携带模式下行人航向估算模型)(6)

改进后的扩展卡尔曼滤波融合算法95%的航向误差小于6.38°,50%航向误差小于2.46°,闭合差为1.66 m。

3.2 打电话状态实验

行人先手持手机以平放状态走一段距离,然后转为打电话状态行走,最后转为平放状态抵达终点。该部分实验对比了偏角法和文中提出旋转矩阵法的行走路线和航向误差。图7为打电话状态下的行人行走路线对比图,图8为航向误差对比图,其对比航向误差数据见表1。

行人动力学模拟(手机多种携带模式下行人航向估算模型)(7)

行人动力学模拟(手机多种携带模式下行人航向估算模型)(8)

行人动力学模拟(手机多种携带模式下行人航向估算模型)(9)

从图7,图8和表1中可以看出,文中方法的行人行走路线更接近真实路线;在打电话状态下,文中使用的方法95%的航向误差为5.81°,50%的航向误差为2.77°,精度高于偏角法。

3.3 裤兜状态实验

手机在裤兜状态下的实验先以平放状态前进,然后将手机放入裤兜行走,在即将到达终点前转为平放状态直至结束。该实验分别使用RA、PCA和改进的RA方法进行行人航向和位置估算。图9为裤兜状态下行人的行走路线对比图,图10为该状态下的行人航向误差分布图,其航向误差分布表见表2。

行人动力学模拟(手机多种携带模式下行人航向估算模型)(10)

行人动力学模拟(手机多种携带模式下行人航向估算模型)(11)

行人动力学模拟(手机多种携带模式下行人航向估算模型)(12)

从图9、图10和表2可以看出,在行人的裤兜装入手机的状态下,相比较PCA和RA方法,改进的RA的行人行走路线更符合参考路线,改进的RA方法95%航向误差为10.73°,50%的航向误差为3.59°,有学者实验表明,改进后的RA方法均方根误差约为4.17°,文中RA方法均方根误差平均约为3.9°,RA方法的实验结果与之近似,而改进的RA方向有着更高的航向精度。

3.4 摆臂状态实验

摆臂状态实验分别使用原始航向和航向捕捉法进行航向对比,图11为摆臂状态下行走路线对比图,图12为航向误差分布图,其航向误差数据见表3。

行人动力学模拟(手机多种携带模式下行人航向估算模型)(13)

行人动力学模拟(手机多种携带模式下行人航向估算模型)(14)

行人动力学模拟(手机多种携带模式下行人航向估算模型)(15)

从图11、图12和表3可以看出,原始航向随着摆臂左右摆动,航向捕捉方法计算得到的航向稳定;在图10中原始航向的路线偏离较小,这是因为一部分选取的步频点刚好在手臂下垂点附近,另一部分点在摆臂前后的平均航向指向前进方向;从航向误差上看,航向捕捉法95%的航向误差为9.22°,50%的航向误差为2.06°,相比原始航向提升较大。

为直观比较以上方法对位置精度的影响,表4对比了以上各实验路线的闭合差和路线全长相对闭合差。

行人动力学模拟(手机多种携带模式下行人航向估算模型)(16)

4 结束语

本文以智能手机平放、打电话、裤兜和摆臂状态4种携带模式为基准,改进了基于扩展卡尔曼滤波的惯性传感器融合方法,并研究了不同携带模式下行人航向的确定方法,结合实际行人行走实验,结果表明:

1)单独使用陀螺仪或者磁力计均难以满足长距离行走下行人航向估算,直接通过扩展卡尔曼滤波融合加速度计、陀螺仪和磁力计数据仍不能避免磁力环境干扰引起的误差,而改进扩展卡尔曼滤波后能够有效提升航向精度和稳定性,航向精度提升约74%,位置精度提升约90%。

2)打电话状态下,仅使用固定偏角会随着头部转动产生误差,而文中基于旋转矩阵的方法是动态的,加入了头部非水平转动检测,进一步提升航向精度。该方法航向精度相较于传统的偏角法提升约47%,位置精度提升约71%。

3)裤兜状态下,改进后的RA方法能够有效避免180°模糊问题,得到更稳定精度更高的航向。相较于PCA和RA方法,改进后的RA方法95%航向精度提升了约18%~75%。

4)摆臂状态下,通过捕捉摆臂特定点间接推算行人航向,该方法不仅计算量少而且能够准确的估算行人航向。

(内容有删减)

,