基于时序状态学习模型的惯性导航方法、装置及设备
- 国知局
- 2024-10-09 16:07:10
本技术涉及惯性导航,特别是涉及一种基于时序状态学习模型的惯性导航方法、装置及设备。
背景技术:
1、行人导航在应急救援、商超购物和增强现实等应用场景下有着重要的支撑作用。随着微惯性传感器技术的不断发展,微惯性测量单元(micro inertial measurementunit,mimu)在小型化、低功耗、低成本等方面取得了长足的发展。但是受限于器件固有噪声的影响,基于微惯性器件的捷联导航算法会因噪声的二次积分而在短时间内迅速发散,这也限制了其在导航领域的进一步应用。
2、越来越多的研究着眼于利用载体运动状态来提供观测信息,从而抑制导航误差发散。例如基于零速检测(zero-velocity update,zupt)和行人航位推算(pedestrian deadreckoning,pdr)两类方法。其中,基于零速检测的方法利用行人行走过程中的足部触地零速信息提供速度观测来提高行人导航精度。这种方法要求惯性器件需安装于行人足部,不适用于手机导航等日常使用场景下的导航定位任务。而行人航位推算算法则是利用行人运动中的惯性信息与行人步长估计模型来进行导航定位。这种方法依赖于算法调参和行人运动状态,难以满足实际导航任务需求。另外,微惯性器件的传感器噪声目前依然存在着难以精准建模、上电重复性差等问题。因此,采用数据驱动的方式来对微惯性导航算法进行改进成为目前重要的研究方向。
3、近年来深度学习在时序信号处理方面展现出了值得发掘的潜能,其在语音处理、序列学习与等方面都有着不俗的表现。而微惯性传感器数据是一类典型的带有噪声的时序数据,因而众多学者也在利用深度学习进行惯性数据处理方面开展了相关研究。惯性里程计网络(inertial odometry network,ionet)算法首次提出了利用长短期记忆网络(longshort-term memory,lstm)网络估计二维极坐标平面下的相对位移来对位置进行估计。之后鲁棒imu(惯性测量单元)双重积分方法(robust imu double integration,ridi)、鲁棒神经网络惯性导航方法(robust neural inertial navigation,ronin)、紧耦合可学习惯性里程计方法(tight learned inertial odometry,tlio)等算法提出了利用深度神经网络方法进行位移、速度或姿态相关的估计来优化导航结果。相较于传统的行人航位推算或零速检测方法,这类基于深度学习的惯性导航方法因其在消除累积误差以及鲁棒性方面的优势而逐渐成为研究热点。但是这些方法采用了卷积神经网络(convolutional neuralnetwork,cnn)或循环神经网络(recurrent neural network,rnn)的神经网络架构对惯性数据进行建模,未充分考虑惯性数据的时序特性,缺乏时序数据的拟合能力。其中,基于cnn的模型受到其局部感受野的限制,难以捕获惯性数据完整上下文信息的能力,从而影响了惯性导航算法整体精度。而rnn网络结构对历史信息的记忆能力有限,对于较长的上下文信息难以建立有效联系,限制了进一步提升定位精度。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种能够充分考虑惯性数据的时序特性、抑制惯性导航算法的发散、提高惯性导航定位精度的基于时序状态学习模型的惯性导航方法、装置及设备。
2、一种基于时序状态学习模型的惯性导航方法,所述方法包括:
3、构建并训练时序状态学习模型;其中,时序状态学习模型包括依次连接的imu缓存区、特征编码模块、时序建模模块和特征解码模块;
4、获取imu测量得到的运动载体的惯性时序数据,将惯性时序数据分别输入至卡尔曼滤波器中进行预测和输入至imu缓存区进行缓存,并根据卡尔曼滤波器预测输出的旋转矩阵对缓存的惯性时序数据进行重力对齐,得到重力对齐后的惯性时序数据;
5、通过特征编码模块对重力对齐后的惯性时序数据进行特征编码,输出得到特征编码后的惯性特征向量;通过时序建模模块中的若干个依次连接的双向状态空间模型单元对特征编码后的惯性特征向量进行时序建模,输出得到时序建模后的惯性特征向量;通过特征解码模块对时序建模后的惯性特征向量进行特征解码,输出得到运动载体的位移估计和不确定性估计;
6、将时序状态学习模型输出的位移估计和不确定性估计输入至卡尔曼滤波器中,利用卡尔曼滤波器将位移估计和不确定性估计作为观测量,并通过与初始获取的惯性时序数据融合进行量测更新,输出得到运动载体的导航状态量。
7、在其中一个实施例中,在时序状态学习模型的训练过程中,先后采用均方根误差损失和高斯最大似然损失这两类损失函数进行训练;
8、其中,均方根误差损失表示为
9、;
10、其中,表示时序状态学习模型的3维位移估计输出值,是相应的真值标签,表示第个位移估计输出值且,是相应的真值标签,表示位移估计的数量,表示惯性时序数据的长度;
11、高斯最大似然损失定义为位移的负对数似然,表示为
12、;
13、其中,表示第个不确定性估计所对应的3×3协方差矩阵,为的集合,表示求的行列式,表示常数。
14、在其中一个实施例中,通过特征编码模块对重力对齐后的惯性时序数据进行特征编码,输出得到特征编码后的惯性特征向量,包括:
15、特征编码模块采用1维版本的efficientnet-b0网络结构,对重力对齐后的惯性时序数据进行特征编码,输出得到特征编码后的惯性特征向量,表示为
16、;
17、其中,,为惯性时序数据的长度,为的特征向量长度,为的特征向量维度,表示实数集。
18、在其中一个实施例中,通过时序建模模块中的若干个依次连接的双向状态空间模型单元对特征编码后的惯性特征向量进行时序建模,输出得到时序建模后的惯性特征向量,包括:
19、通过时序建模模块中的若干个依次连接的双向状态空间模型单元,对特征编码后的惯性特征向量进行时序建模,输出得到时序建模后的惯性特征向量,表示为
20、;
21、其中,表示双向状态空间模型单元。
22、在其中一个实施例中,双向状态空间模型单元包括归一化层、第一线性层、第二线性层、正向卷积层、正向状态空间模型、反向卷积层、反向状态空间模型以及第三线性层;
23、双向状态空间模型单元对特征编码后的惯性特征向量进行时序建模的具体过程包括:
24、获取特征编码后的惯性特征向量并输入至归一化层进行归一化处理;
25、通过第一线性层对归一化处理后的惯性特征向量进行扩维处理后,得到输入向量;通过第二线性层和激活函数依次对归一化处理后的惯性特征向量进行扩维与映射处理后,得到门控矩阵;
26、对输入向量分别进行正向处理和反向处理,在正向处理和反向处理的过程中,先将输入向量分别输入正向卷积层与反向卷积层中,进行1维卷积和sigmoid线性加权处理,得到中间向量,表示为
27、;
28、其中,为线性加权的激活函数,表示1维卷积;
29、然后将中间向量分别输入正向状态空间模型和反向状态空间模型,输出得到正向输出和反向输出;
30、最后,将正向输出和反向输出分别与门控矩阵相乘,并将两个乘积之和输入至第三线性层进行降维处理,并将降维结果与初始输入的特征编码后的惯性特征向量相加,得到双向状态空间模型单元的输出。
31、在其中一个实施例中,反向状态空间模型是由正向状态空间模型翻转得到,二者的网络结构一致,均包括连续时间形式、循环表示形式和卷积表示形式这三种表达形式。
32、在其中一个实施例中,通过特征解码模块对时序建模后的惯性特征向量进行特征解码,输出得到运动载体的位移估计和不确定性估计,包括:
33、特征解码模块利用全连接层,对时序建模后的惯性特征向量进行 mlp特征解码,输出得到运动载体的位移估计和不确定性估计,表示为
34、。
35、在其中一个实施例中,运动载体的导航状态量表示为
36、;
37、其中,是过去运动状态且过去运动状态中仅包含位姿状态量进行优化,表示第个时刻的从惯性坐标系转换到世界坐标系下的旋转矩阵,表示第个时刻的位置,,表示待优化变量的个数;是当前运动状态,表示从惯性坐标系转换到世界坐标系下的旋转矩阵,表示三维中的旋转操作;分别表示世界坐标系下运动载体的速度与位置,分别表示是微惯性传感器陀螺与加速度计的零偏。
38、一种基于时序状态学习模型的惯性导航装置,所述装置包括:
39、模型构建模块,用于构建并训练时序状态学习模型;其中,时序状态学习模型包括依次连接的imu缓存区、特征编码模块、时序建模模块和特征解码模块;
40、预处理模块,用于获取imu测量得到的运动载体的惯性时序数据,将惯性时序数据分别输入至卡尔曼滤波器中进行预测和输入至imu缓存区进行缓存,并根据卡尔曼滤波器预测输出的旋转矩阵对缓存的惯性时序数据进行重力对齐,得到重力对齐后的惯性时序数据;
41、模型预测模块,用于通过特征编码模块对重力对齐后的惯性时序数据进行特征编码,输出得到特征编码后的惯性特征向量;通过时序建模模块中的若干个依次连接的双向状态空间模型单元对特征编码后的惯性特征向量进行时序建模,输出得到时序建模后的惯性特征向量;通过特征解码模块对时序建模后的惯性特征向量进行特征解码,输出得到运动载体的位移估计和不确定性估计;
42、滤波器更新模块,用于将时序状态学习模型输出的位移估计和不确定性估计输入至卡尔曼滤波器中,利用卡尔曼滤波器将位移估计和不确定性估计作为观测量,并通过与初始获取的惯性时序数据融合进行量测更新,输出得到运动载体的导航状态量。
43、一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
44、构建并训练时序状态学习模型;其中,时序状态学习模型包括依次连接的imu缓存区、特征编码模块、时序建模模块和特征解码模块;
45、获取imu测量得到的运动载体的惯性时序数据,将惯性时序数据分别输入至卡尔曼滤波器中进行预测和输入至imu缓存区进行缓存,并根据卡尔曼滤波器预测输出的旋转矩阵对缓存的惯性时序数据进行重力对齐,得到重力对齐后的惯性时序数据;
46、通过特征编码模块对重力对齐后的惯性时序数据进行特征编码,输出得到特征编码后的惯性特征向量;通过时序建模模块中的若干个依次连接的双向状态空间模型单元对特征编码后的惯性特征向量进行时序建模,输出得到时序建模后的惯性特征向量;通过特征解码模块对时序建模后的惯性特征向量进行特征解码,输出得到运动载体的位移估计和不确定性估计;
47、将时序状态学习模型输出的位移估计和不确定性估计输入至卡尔曼滤波器中,利用卡尔曼滤波器将位移估计和不确定性估计作为观测量,并通过与初始获取的惯性时序数据融合进行量测更新,输出得到运动载体的导航状态量。
48、上述基于时序状态学习模型的惯性导航方法、装置及设备,通过构建并训练时序状态学习模型,依次进行惯性时序数据的缓存、特征编码、时序建模和特征解码,利用该模型可以充分挖掘非因果关系的惯性数据的时序特性,提高了惯性导航的定位精度。并且,在获取时序状态学习模型输出的位移估计与不确定性估计后,进一步将模型输出结果输入至卡尔曼滤波器中,通过卡尔曼滤波器融合惯性时序数据与模型输出结果以抑制时序状态学习模型的惯性误差发散,降低误差漂移,进一步提升了惯性导航定位的精度,实现精准的惯性导航。
本文地址:https://www.jishuxx.com/zhuanli/20240929/311712.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表