基于LSTM个性化步长估计的井下人员精准定位PDR算法

2022-01-25 02:25郭倩倩崔丽珍杨勇赫佳星史明泉
工矿自动化 2022年1期
关键词:陀螺仪航向步长

郭倩倩, 崔丽珍, 杨勇, 赫佳星, 史明泉

(内蒙古科技大学 信息工程学院, 内蒙古 包头 014010)

0 引言

目前,煤矿井下人员定位技术主要有WiFi技术、超宽带(Ultra Wide Band,UWB)技术[1]、蓝牙技术等[2]。WiFi技术定位范围广、定位速度快,UWB技术传输速率高、定位精度高,蓝牙技术功耗低、定位成本低,这些技术在一定程度上满足了井下人员定位要求,但存在需要提前铺设设备且井下无线信号覆盖稀疏、定位精度较差等缺点。而基于智能手机内置惯性传感器的行人航位推算(Pedestrian Dead Reckoning,PDR)算法不需要其他额外的设施即可实现定位,不受井下多径效应[3]及矿井复杂环境的影响,适用于在井下复杂环境中对工作人员进行实时精准定位[4]。

PDR算法中步长估计和航向估计对其定位精度有着重要影响[5],步长估计模型可以总结为经验模型、线性模型、非线性模型、回归模型及神经网络模型等。H.Weinberg[6]提出了一种线性模型,该模型利用每一步Z轴上的最大和最小加速度值来估计步行距离。J.W.Kim等[7]研究的线性模型利用行走过程中每一步加速度幅值的平均值来计算步长。J.Scarlett[8]研究的非线性模型利用步长和加速度值之间的非线性关系计算步长。上述模型仅基于加速度幅值的最大值和最小值估计步长,模型简单,便于步长估计,但均无法有效解决井下人员行走时因姿态不同导致的计算误差。G.Han等[9]提出了基于上下文信息的步长回归模型,该模型精度较高,但无法反映复杂环境因素造成的误差。J.Hannink等[10]提出了一种基于深度卷积神经网络进行步长估计的方法,并取得了较高的精度,然而该方法依赖于特定的鞋载惯导,不适用于智能手机。针对以上问题,本文通过引入深度长短时间记忆网络(Long Short-Term Memory,LSTM)模型对井下人员步长进行个性化估计,利用智能手机内置的惯性传感器估计行人的运动步长,有效减小了井下人员行走姿态及井下复杂环境造成的步长估计误差。

精准的航向估计对PDR算法来讲至关重要,张荣辉等[11]提出采用四元数解算航向角。肖宇[12]通过互补滤波来融合陀螺仪与加速度数据进行姿态解算。N.Yadav等[13]提出了一种互补滤波算法,利用加速度计和磁力计校正陀螺仪进行航向解算。上述航向解算算法逐步提高了航向估计的精度,但均存在累积误差。本文利用降噪自编码器 (Denoising Auto-Encoder,DAE)[14]对井下惯性传感器数据进行降噪处理,提出了基于智能手机陀螺仪、重力计和磁力计的航向估计方法,提高了手机惯性传感器在井下航向估计应用中的稳定性和普适性。

综上,本文提出了一种基于LSTM个性化步长估计的井下人员精准定位PDR算法,引入深度LSTM模型对井下人员步长进行个性化估计,利用智能手机内置的惯性传感器估计行人的运动步长;利用DAE对井下惯性传感器数据进行降噪处理,得到更加鲁棒的数据输入特征;利用卡尔曼滤波(Kalman Filtering,KF)融合航向估计算法解算井下人员运动航向角,解决了传统PDR算法步长估计误差及航向累积误差较大的问题,提高了井下人员定位精度。

1 算法原理

1.1 井下人员航位推算原理

PDR算法用于对井下人员行走的步数、步长、方向进行检测与估计,推算出行走轨迹和位置等信息,PDR算法原理如图1所示。

假设井下人员初始位置S0坐标为(E0,N0),第n步步长为dn(n=1,2,…,k,k为步数)、航向角为θn,已知初始位置,可以得出任意时刻的位置SK(K为任意时刻)的坐标为

图1 PDR算法原理Fig.1 PDR algorithm principle

(1)

1.2 步伐检测

人行走时的加速度具有周期性,因此,采用峰值检测确定井下人员步频[15],步骤如下:

(1) 初始化,获取加速度数据。

(2) 初始化滑动窗口,剔除重力加速度值并滤波平滑。

(3) 如果检测到的加速度峰值大于预设的峰值阈值,且相邻2个峰值之间的时间差大于规定的时间阈值,该峰值记为有效峰值。

(4) 检测跨步结束后,统计步频。

1.3 基于LSTM的井下人员个性化步长估计

为了提高步长估计的准确性,本文提出了一种基于LSTM的步长估计方法,用于解决环境复杂的煤矿井下人员运动距离估计引起的PDR算法误差。

在离线阶段,训练预测模型,将矿用本安型智能手机的惯性传感器测量值作为训练数据,鞋载惯导模块中三轴加速度计和三轴陀螺仪实时解算出的单步运动距离作为步长标签。在在线预测阶段,利用矿用本安型智能手机实时采集的传感器数据和前期训练好的模型估计井下人员的运动步长。井下人员个性化步长估计LSTM模型框架如图2所示。

基于井下人员个性化步长估计LSTM模型提取鞋载惯导内置加速度计、陀螺仪在单步上的测量值作为时间特征表示。

D={([Ai,Gi],yi),i=1,2,…,N}

(2)

Ai=[a1a2…am]

(3)

Gi=[g1g2…gm]

(4)

(5)

(6)

式中:D为LSTM模型的输入;Ai、Gi分别为第i步时加速度计和陀螺仪在单步时间上的测量值,i=1,2,…,N,N为步伐数);yi为第i步步长;aj、gj分别为加速度计和陀螺仪在第j个固定时间长度的测量值,j=1,2,…,m,m为固定时间长度个数;axj、ayj和azj分别为三轴方向上的加速度计在第j个固定时间长度的测量值;gxj、gyj和gzj分别为三轴方向上的陀螺仪在第j个固定时间长度的测量值。

图2 井下人员个性化步长估计LSTM模型框架Fig.2 LSTM model framework of underground personnel personalized step size estimation

图3 LSTM模型原理Fig.3 LSTM model principle

LSTM将惯性传感器加速度、陀螺仪测量值作为输入序列,并按顺序反馈给LSTM每一单元。

(1) 更新遗忘门输出,计算信息的遗忘程度。

ft=σ(WF·[ht-1,xt]+bF

(7)

式中bF为遗忘门的偏置项。

It=σ(WI·(ht-1,xt]+bI)

(8)

(9)

式中:bI为输入门的偏置项;bC为单元状态的偏置项。

(3) 更新单元状态Ct,即当前时刻的单元状态包括遗忘门和上一时刻状态的积加上输入门2个部分的积。

(10)

(4) 更新输出门输出,用于计算当前时刻信息被输出的程度。输出门输出Ot不考虑先前时刻学到信息的输出,tanhCt是对先前学到信息的压缩,两者相乘从而得出LSTM模型的最终输出ht。

Ot=σ(W0[ht-1,xt]+b0)

(11)

ht=Ot*tanhCt

(12)

式中b0为输出门的偏置项。

(5) 输出H(x)(H(x)为输入序列在时间特征空间的嵌入),将LSTM模型输出ht映射到时间特征空间。

H(x)=ht=OT*tanhCT

(13)

式中OT,CT为Ot,Ct在时间特征空间的映射,T为t在时间特征空间对应的时间。

LSTM模型采用加速度计和陀螺仪测量值作为输入,LSTM层将输入序列映射到时间特征空间,然后添加4个级联的全连接层,在特征空间和目标值(即步长)之间建立映射关系。

1.4 基于KF-DAE的航向估计

针对现有航向解算算法存在累积误差以及不适用于井下特殊环境等问题,本文利用KF-DAE算法解算井下人员运动航向角。KF-DAE算法包括利用KF算法融合陀螺仪积分、九轴传感器航向解算及旨在消除原始惯性传感器数据噪声的DAE。首先利用DAE对井下惯性传感器数据进行降噪处理,训练DAE中的编码器和解码器来最小化重构误差,学习重构分布来获得更加鲁棒的数据特征;然后基于智能手机陀螺仪、重力计和磁力计的航向估计方法,依据陀螺仪不受磁扰影响和磁力计不受长期漂移影响的互补特性,采用加速度和磁力计数据对陀螺仪进行补偿,利用四元数互补滤波更新解算航向角;最后利用KF算法融合陀螺仪直接积分获取的航向角来提高算法在煤矿井下的适应能力,提高手机惯性传感器在井下航向估计应用中的稳定性和普适性。基于KF-DAE的航向估计算法如图4所示。

图4 基于KF-DAE的航向估计算法Fig.4 Heading estimation algorithm based on KF-DAE

2 试验与结果分析

2.1 井下人员个性化步长估计LSTM模型验证

2.1.1 LSTM模型参数设置及训练

为验证本文PDR算法的可行性与实用性,在内蒙古鄂尔多斯市高头窑煤矿进行了试验。由于无法携带鞋载惯导在矿井下采集原始数据,所以试验者(井下工作人员,年龄为26~45岁,身高为1.60~1.85 m,体重为58~80 kg)右脚绑定鞋载惯导模拟井下行走姿态,采样频率为100 Hz,采集原始惯性传感器数据作为基准数据集,采用零速修正和姿态识别方法将试验者运动轨迹以单步长划分,解算单步步长。本文使用六通道加速度、陀螺仪原始惯性信息构建步长数据,训练标签为鞋载惯导模块中每一步的运动距离,井下人员个性化步长估计LSTM模型的输入如图5所示。

图5 井下人员个性化步长估计LSTM模型的输入Fig.5 Input of LSTM model of underground personnel personalized step size estimation

井下人员个性化步长估计LSTM模型以单步加速度、陀螺仪原始惯性训练样本为输入,以对应的实际步长作为网络的标签,将固定长度的步长数据输入LSTM网络进行训练,隐含层选择ReLU激活函数,预测层由于是一个回归任务而没有激活函数,训练完成的井下人员个性化步长估计LSTM模型将用于预测井下人员运动的步长。井下人员个性化步长估计LSTM模型的结构参数如图6所示。

图6 井下人员个性化步长估计LSTM模型的结构参数Fig.6 Structural parameters of LSTM model of underground personnel personalized step size estimation

井下人员个性化步长估计LSTM模型是在Windows平台下基于Keras环境实现,使用Adam算法进行优化,模型的超参数见表1。MSE(Mean Square Error,均方误差)损失函数用来衡量模型预测与实际之间的差距。

表1 井下人员个性化步长估计LSTM模型的超参数Table 1 Super parameter of LSTM model of underground personnel personalized step size estimation

为了防止过拟合,对模型训练采用了早停法。当迭代次数达到50而损失函数没有下降时,系统自动停止迭代,训练和验证过程损失函数曲线如图7所示,可以看出训练数据及验证数据的损失函数均随着迭代次数的增加而减小,当迭代到220次时损失函数不再下降,模型停止迭代,此时模型达到最优。

图7 训练和验证过程损失函数曲线Fig.7 Loss function curves of training and verification process

2.1.2 步伐检测

为验证本文步伐检测算法的实用性,随机选取3名试验者进行试验,模拟井下行走姿态。智能手机采样频率为100 Hz,行走50步,重复5次,步伐检测算法结果见表2。从表2可看出,本文步伐检测算法的精度为96.5%,满足井下人员PDR定位中步伐检测需求。

表2 步伐检测算法结果Table 2 Results of step detection algorithm

2.1.3 步长估计

为验证本文个性化步长估计LSTM模型的可行性,进行行走对比试验,行走路线为直线,行走总距离为61.45 m,步数为100步。

3种不同算法在行走过程中的实际步长估计数据见表3。由表3可看出:本文算法的步长估计精度较高,比Kim算法[7]提高9%,比Weinberg算法[6]提高5%;同时,本文算法得到的步长大小及变化幅度较合理,与实际的步长吻合较好。

表3 不同算法步长估计结果对比Table 3 Comparison of step size estimation results of different algorithms

为了清楚地表示步长估计误差的分布,使用CDF(误差累积分布函数)来比较本文步长估计算法与其他常用步长估计算法(Weinberg算法[6],Kim算法[7])单个步长估计的误差(自然行走100步),如图8所示。从图8可看出,本文步长估计算法的相对误差小于Weinberg算法和Kim算法,误差为0.125 m时CDF达到100%。

2.2 井下试验

基于地面训练好的井下人员个性化步长估计LSTM模型,在高头窑煤矿真实井下环境进行井下人员精准定位PDR算法试验,井下测试场景如图9所示。试验对传统PDR算法[6,11]与本文基于LSTM个性化步长估计的井下人员精准定位PDR算法进行对比,验证本文PDR算法在煤矿井下的可行性与实用性。

图8 不同步长估计算法误差分布对比Fig.8 Comparison of error distribution of different step size estimation algorithms

图9 井下测试场景Fig.9 Underground test scenario

在高头窑煤矿2-3煤3号大巷联络巷进行试验,路线从起点开始向北行走经过1次直角转弯到达电缆通道,后沿电缆通道向西行走到下一直角拐弯进入北向联络巷,井下人员行进路线及起始点如图10所示,参考路径全长75 m。

图10 试验行进路线Fig.10 Test route

传统PDR算法[6,11]与本文基于LSTM个性化步长估计的PDR算法在煤矿井下行走路径对比如图11所示,传统PDR算法距离误差为17.17 m,即定位误差为22.89%,不能满足井下人员定位需求;而本文PDR算法距离误差为1.75 m,定位误差为2.33%,远低于传统PDR算法定位误差,满足井下人员定位需求。

图11 传统PDR算法与基于LSTM个性化步长估计的 PDR算法在煤矿井下行走路径对比Fig.11 Comparison of walk routes of traditional PDR algorithm and PDR algorithm based on LSTM personalized step size estimation in coal mine

3 结语

针对传统PDR算法受井下复杂环境的干扰,导致定位精度低,不能满足井下人员定位需求的问题,提出了基于LSTM的井下人员个性化步长估计及基于KF-DAE的航向估计的PDR算法。该算法首先离线训练井下人员个性化步长估计LSTM模型;然后通过步伐检测算法、个性化步长估计LSTM模型及KF-DAE航向估计算法获得井下人员运动的步伐、每一步的步长及运动航向角,最后根据步长及运动航向角预测井下人员当前位置。试验结果表明:基于LSTM个性化步长估计的井下人员精准定位PDR算法对井下人员运动中的步伐检测精度为96.5%,步长估计精度为90%,均满足井下人员定位的精度要求;在井下真实环境中的相对定位误差为2.33%,有效提高了井下人员定位精度,满足井下定位导航的需求。

猜你喜欢
陀螺仪航向步长
中心差商公式变步长算法的计算终止条件
风浪干扰条件下舰船航向保持非线性控制系统
基于Armijo搜索步长的BFGS与DFP拟牛顿法的比较研究
基于EMD的MEMS陀螺仪随机漂移分析方法
知坐标,明航向
一种改进的变步长LMS自适应滤波算法
考虑几何限制的航向道模式设计
我国著名陀螺仪专家——林士谔
“蓝天王国”奇遇记(十一)——陀螺仪
基于干扰观测器的船舶系统航向Backstepping 控制