CN112985462B - 基于卷积神经网络模型的惯性测量数据校正方法及装置 - Google Patents

基于卷积神经网络模型的惯性测量数据校正方法及装置 Download PDF

Info

Publication number
CN112985462B
CN112985462B CN202110429181.XA CN202110429181A CN112985462B CN 112985462 B CN112985462 B CN 112985462B CN 202110429181 A CN202110429181 A CN 202110429181A CN 112985462 B CN112985462 B CN 112985462B
Authority
CN
China
Prior art keywords
neural network
network model
convolutional neural
module
measurement data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110429181.XA
Other languages
English (en)
Other versions
CN112985462A (zh
Inventor
费再慧
贾双成
朱磊
李成军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhidao Network Technology Beijing Co Ltd
Original Assignee
Zhidao Network Technology Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhidao Network Technology Beijing Co Ltd filed Critical Zhidao Network Technology Beijing Co Ltd
Priority to CN202110429181.XA priority Critical patent/CN112985462B/zh
Publication of CN112985462A publication Critical patent/CN112985462A/zh
Application granted granted Critical
Publication of CN112985462B publication Critical patent/CN112985462B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C25/00Manufacturing, calibrating, cleaning, or repairing instruments or devices referred to in the other groups of this subclass
    • G01C25/005Manufacturing, calibrating, cleaning, or repairing instruments or devices referred to in the other groups of this subclass initial alignment, calibration or starting-up of inertial devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Navigation (AREA)

Abstract

本申请是关于一种基于卷积神经网络模型的惯性测量数据校正方法及装置。该方法包括:以滑动窗口对IMU的测量数据进行分割;使卷积神经网络模型依据时刻I至时刻N+I‑1的IMU的第I组测量数据序列输出时刻N+I‑1的IMU估计数据;依据时刻N+I‑1的IMU估计数据推算获得时刻N+I‑1的轨迹点推算位置;获得每个时刻N+I‑1的轨迹点推算位置与定位模块的位置数据的K个差值的累积和;如果K个差值的累积和小于设定的第一阈值,获得训练好的卷积神经网络模型;依据训练好的卷积神经网络模型输出的每个时刻的IMU估计数据。本申请提供的方案,能够基于卷积神经网络模型降低惯性测量单元的测量误差。

Description

基于卷积神经网络模型的惯性测量数据校正方法及装置
技术领域
本申请涉及导航技术领域,尤其涉及一种基于卷积神经网络模型的惯性测量数据校正方法及装置。
背景技术
相关技术的车辆导航多依赖于卫星定位模块例如GPS(Global PositioningSystem,全球定位系统)卫星定位模块。但在某些场景下,例如桥下,涵洞,隧道,密集楼宇之间等GPS信号不好的位置,相关技术的卫星定位模块的定位偏差很大,甚至无法提供定位结果。而包含惯性测量单元(Inertial Measurement Unit,简称IMU)的惯性导航系统,可以利用惯性测量单元的测量数据,能够推算出车辆准确的速度、姿态和位置信息。
惯性导航系统利用惯性测量单元的加速度计和陀螺仪的测量数据推算车辆的速度、姿态和位置信息。然而,惯性测量单元中的加速度计和陀螺仪受各种因素影响,使用一段时间后,其参数和性能会发生变化,使得的测量数据会有所偏差,而且随着时间的推移积累较大的误差,导致利用惯性测量单元的测量数据进行定位导航的进度降低。因此如何降低惯性测量单元的测量误差,是一个亟待解决的技术问题。
发明内容
为解决或部分解决相关技术中存在的问题,本申请提供一种基于卷积神经网络模型的惯性测量数据校正方法及装置,能够基于卷积神经网络模型降低惯性测量单元的测量误差。
本申请第一方面提供一种基于卷积神经网络模型的惯性测量数据校正方法,所述方法包括:
初始化卷积神经网络模型,包括:定义卷积神经网络模型的卷积核大小为N,并为每个卷积核设定参数值,其中,N为大于1的整数;
以步长为1、长度为N的滑动窗口对一时间段的惯性测量单元的测量数据进行分割,以时刻I至时刻N+I-1的惯性测量单元的测量数据为第I组测量数据序列,获得每组包括N个测量数据的K组测量数据序列,其中,K为大于等于N的整数,I=1,2,…,K;
向卷积神经网络模型输入所述K组测量数据序列,以及定位模块的位置数据序列;
使卷积神经网络模型分别依据第I组测量数据序列输出时刻N+I-1的IMU估计数据,并分别依据时刻N+I-1的IMU估计数据推算获得时刻N+I-1的轨迹点推算位置,由此获得K个轨迹点推算位置;
依据每个时刻N+I-1的轨迹点推算位置与所述定位模块的位置数据,获得每个时刻N+I-1的轨迹点推算位置与所述定位模块的位置数据的第I个差值,并获得K个差值的累积和;
如果K个差值的累积和小于设定的第一阈值或者循环次数超过设定的第二阈值,停止卷积神经网络模型的训练,获得训练好的卷积神经网络模型;
向训练好的卷积神经网络模型输入惯性测量单元的测量数据,获取训练好的卷积神经网络模型输出的每个时刻的IMU估计数据。
优选的,所述方法还包括:
如果K个差值的累积和大于或等于设定的第一阈值或者循环次数超过设定的第二阈值,并且K个差值的累积和小于卷积神经网络模型的损失值,将循环次数L更新为L+1,依据设定的卷积神经网络模型的学习率修改第j个卷积核的参数值,将卷积神经网络模型的损失值更新为K个差值的累积和,其中,j为L除N的余数。
优选的,所述方法还包括:
如果K个差值的累积和大于或等于设定的第一阈值或者循环次数没有超过设定的第二阈值,并且K个差值的累积和大于或等于卷积神经网络模型的损失值,将循环次数L更新为L+1,依据设定的卷积神经网络模型的学习率修改第j-1个卷积核的参数值。
优选的,所述以步长为1、长度为N的滑动窗口对一时间段的惯性测量单元的测量数据进行分割,以时刻I至时刻N+I-1的惯性测量单元的测量数据为第I组测量数据序列,获得每组包括N个测量数据的K组测量数据序列,其中,K为大于等于N的整数,I=1,2,…,K,包括:
依据惯性测量单元的加速度的变化量的大小和/或惯性测量单元的角速度的变化量的大小调整滑动窗口的大小;
以步长为1、长度为N的滑动窗口对一时间段的惯性测量单元的测量数据进行分割,以时刻I至时刻N+I-1的惯性测量单元的测量数据为第I组测量数据序列,获得每组包括N个测量数据的K组测量数据序列,其中,K为大于等于N的整数,I=1,2,…,K。
本申请第二方面提供一种基于卷积神经网络模型的惯性测量数据校正装置,所述装置包括:
初始模块,用于初始化卷积神经网络模型,包括:定义卷积神经网络模型的卷积核大小为N,并为每个卷积核设定参数值,其中,N为大于1的整数;
分割模块,用于以步长为1、长度为N的滑动窗口对一时间段的惯性测量单元的测量数据进行分割,以时刻I至时刻N+I-1的惯性测量单元的测量数据为第I组测量数据序列,获得每组包括N个测量数据的K组测量数据序列,其中,K为大于等于N的整数,I=1,2,…,K;
输入模块,用于向卷积神经网络模型输入所述分割模块获得的K组测量数据序列,以及定位模块的位置数据序列;
推算轨迹模块,用于使卷积神经网络模型分别依据所述输入模块输入的第I组测量数据序列输出时刻N+I-1的IMU估计数据,并分别依据时刻N+I-1的IMU估计数据推算获得时刻N+I-1的轨迹点推算位置,由此获得K个轨迹点推算位置;
误差模块,用于依据所述推算轨迹模块获得的每个时刻N+I-1的轨迹点推算位置与所述输入模块输入的所述定位模块的位置数据,获得每个时刻N+I-1的轨迹点推算位置与所述定位模块的位置数据的第I个差值,并获得K个差值的累积和;
第一判断模块,用于判断所述误差模块获得的K个差值的累积和是否小于设定的第一阈值或者循环次数是否超过设定的第二阈值;
停止模块,用于如果所述第一判断模块判断K个差值的累积和小于设定的第一阈值或者循环次数超过设定的第二阈值,停止卷积神经网络模型的训练,获得训练好的卷积神经网络模型;
估计数据获取模块,用于向训练好的卷积神经网络模型输入惯性测量单元的测量数据,获取训练好的卷积神经网络模型输出的每个时刻的IMU估计数据。
优选的,所述装置还包括:
第二判断模块,用于如果所述第一判断模块判断K个差值的累积和大于或等于设定的第一阈值或者循环次数没有超过设定的第二阈值,判断K个差值的累积和是否小于卷积神经网络模型的损失值;
更新模块,用于如果所述第二判断模块判断K个差值的累积和小于卷积神经网络模型的损失值,将循环次数L更新为L+1,依据设定的卷积神经网络模型的学习率修改第j个卷积核的参数值,将卷积神经网络模型的损失值更新为K个差值的累积和,其中,j为L除N的余数。
优选的,所述更新模块,还用于如果所述第二判断模块判断K个差值的累积和大于或等于卷积神经网络模型的损失值,将循环次数L更新为L+1,依据设定的卷积神经网络模型的学习率修改第j-1个卷积核的参数值。
优选的,所述装置还包括:
窗口调整模块,用于依据惯性测量单元的加速度的变化量的大小和/或惯性测量单元的角速度的变化量的大小调整滑动窗口的大小;
所述分割模块,用于以步长为1、长度为N的所述窗口调整模块调整大小的滑动窗口对一时间段的惯性测量单元的测量数据进行分割,以时刻I至时刻N+I-1的惯性测量单元的测量数据为第I组测量数据序列,获得每组包括N个测量数据的K组测量数据序列,其中,K为大于等于N的整数,I=1,2,…,K。
本申请第三方面提供一种电子设备,包括:
处理器;以及
存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如上所述的方法。
本申请第四方面提供一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如上所述的方法。
本申请提供的技术方案可以包括以下有益效果:
本申请的技术方案,以同一时间段的定位模块的位置数据序列、同一时间段的每组包括N个加速度的K组加速度序列和每组包括N个角速度的K组角速度序列为卷积神经网络模型的训练样本,通过使卷积神经网络模型依据第I组加速度序列输出时刻N+I-1的加速度,依据第I组角速度序列输出时刻N+I-1的角速度,增强训练样本的可信度,减少了训练样本的误差;通过使卷积神经网络模型依据第I组加速度序列输出时刻N+I-1的加速度,依据第I组角速度序列输出时刻N+I-1的角速度,推算获得时刻N+I-1的轨迹点推算位置;依据时刻N+I-1的轨迹点推算位置与同一时间段的时刻N+I-1的位置数据,获得时刻N+I-1的轨迹点推算位置与同一时间段的时刻N+I-1的位置数据的第I个差值,获得K个差值的累积和;分析K个差值的累积和与卷积神经网络模型的当前损失值,依据设定的卷积神经网络模型的学习率,修改卷积神经网络模型的损失值和依次修改卷积神经网络模型的卷积核的参数值,完成卷积神经网络模型的训练,能够提高卷积神经网络模型的训练精度和速率。向完成训练的卷积神经网络模型输入惯性测量单元的加速度和角速度,使卷积神经网络模型输出的降低测量误差的估计加速度和估计角速度。基于卷积神经网络模型的惯性测量数据校正方法,能够基于卷积神经网络模型降低惯性测量单元的测量误差,获得降低测量误差的惯性测量单元的校正测量数据,有助于提高惯性定位导航的精度。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
通过结合附图对本申请示例性实施方式进行更详细的描述,本申请的上述以及其它目的、特征和优势将变得更加明显,其中,在本申请示例性实施方式中,相同的参考标号通常代表相同部件。
图1是本申请一实施例示出的基于卷积神经网络模型的惯性测量数据校正方法的流程示意图;
图2是本申请另一实施例示出的基于卷积神经网络模型的惯性测量数据校正方法的流程示意图;
图3是本申请一实施例示出的基于卷积神经网络模型的惯性测量数据校正装置的结构示意图;
图4是本申请实施例示出的电子设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本申请的实施方式。虽然附图中显示了本申请的实施方式,然而应该理解,可以以各种形式实现本申请而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本申请更加透彻和完整,并且能够将本申请的范围完整地传达给本领域的技术人员。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语“第一”、“第二”、“第三”等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
本申请实施例提供一种基于卷积神经网络模型的惯性测量数据校正方法,能够基于卷积神经网络模型降低惯性测量单元的测量误差,获得降低误差的校正测量数据。
以下结合附图详细描述本申请实施例的技术方案。
实施例一:
图1是本申请一实施例示出的基于卷积神经网络模型的惯性测量数据校正方法的流程示意图。
参见图1,一种基于卷积神经网络模型的惯性测量数据校正方法,包括:
在步骤101中,初始化卷积神经网络模型,包括:定义卷积神经网络模型的卷积核大小为N,并为每个卷积核设定参数值,其中,N为大于1的整数。
在一种具体实施方式中,初始化卷积神经网络模型,可以定义一个大小为N的卷积核,为N个卷积核依次排序,并依次为每个卷积核设定参数值;设定卷积神经网络模型的损失值LOSS;设定卷积神经网络模型的学习率learn_rate。在一些实施例中,还可以定义循环次数L=1。
在一种实施方式中,依据惯性测量单元采集加速度和角速度的采集频率,初始化卷积神经网络模型,包括:以采集频率的约数或者倍数定义卷积神经网络模型的卷积核大小N,并为每个卷积核设定参数值,其中,N为大于1的整数。
在一种具体实施方式中,依据惯性测量单元的采集频率,为卷积神经网络模型定义一个大小为N的卷积核,N的取值为采集频率的约数或倍数。例如,惯性测量单元的采集频率为100,N的取值可以是2、4、5、10、20……100、200等100的约数或倍数。在一些实施例中,N的取值可以是10。
在步骤102中,对一时间段的惯性测量单元的测量数据进行分割,获得每组包括N个测量数据的K组测量数据序列,其中,K为大于等于N的整数。
在一种具体实施方式中,车辆上设有惯性测量单元、定位模块。惯性测量单元包括加速度计和陀螺仪,惯性测量单元的测量数据包括惯性测量单元的加速度计的加速度、陀螺仪的角速度。可以通过惯性测量单元的加速度计获得的车辆的加速度、惯性测量单元的陀螺仪获得的车辆的角速度。定位模块可以包括但不限于GPS模块、北斗卫星定位模块、RTK(Real Time Kinematic,实时动态)定位模块等卫星定位模块中的至少一种。利用定位模块可以获得车辆的定位信息,该定位信息可以包括但不限于位置信息、速度信息和姿态信息。位置信息包括但不限于描述位置的经纬度坐标信息,姿态信息包括但不限于描述航向的航向角信息。
在一种具体实施方式中,在车辆RTK定位模块信号可用的情况下,获得车辆一个时间段的定位信息,依据车辆一个时间段的定位信息获取车辆一个时间段的位置数据序列。在通过RTK定位模块获取车辆一个时间段的位置数据序列时,通过惯性测量单元的加速度计获取同个一时间段的车辆的加速度,通过惯性测量单元的陀螺仪获取同一个时间段的车辆的角速度。
在一种实施方式中,以步长为1、长度为N的滑动窗口对一时间段的惯性测量单元的测量数据进行分割,以时刻I至时刻N+I-1的惯性测量单元的测量数据为第I组测量数据序列,获得每组包括N个测量数据的K组测量数据序列,其中,K为大于等于N的整数,I=1,2,…,K。
在一种具体实施方式中,以步长为1、长度为N的滑动窗口对同一个时间段的加速度进行分割,以时刻I至时刻N+I-1的加速度为第I组加速度序列,获得每组包括N个加速度的K组加速度序列;以步长为1、长度为N的滑动窗口对同一个时间段的角速度进行分割,以时刻I至时刻N+I-1的角速度为第I组角速度序列,获得每组包括N个角速度的K组角速度序列。
例如,将每N个加速度打包成一组,以时刻1至时刻N的加速度为第一组加速度序列,时刻2至时刻N+1的加速度为第二组加速度序列,时刻3至时刻N+2的加速度为第三组加速度序列,直至获得包括N个加速度的K组加速度序列。将每N个角速度打包成一组,以时刻1至时刻N的角速度为第一组角速度序列,时刻2至时刻N+1的角速度为第二组角速度序列,时刻3至时刻N+2的角速度为第三组角速度序列,直至获得包括N个角速度的K组角速度序列。
在步骤103中,向卷积神经网络模型输入K组测量数据序列,以及定位模块的位置数据序列。
在一种具体实施方式中,向卷积神经网络模型输入每组包括N个加速度的K组加速度序列和每组包括N个角速度的K组角速度序列,以及定位模块的位置数据序列。
在步骤104中,使卷积神经网络模型分别依据第I组测量数据序列输出时刻N+I-1的IMU估计数据,并分别依据时刻N+I-1的IMU估计数据推算获得车辆在时刻N+I-1的轨迹点推算位置,由此获得K个轨迹点推算数据。
在一种具体实施方式中,通过使卷积神经网络模型依据第I组加速度序列输出时刻N+I-1的估计加速度,依据第I组角速度序列输出时刻N+I-1的估计角速度,并依据时刻N+I-1的估计加速度和估计角速度,推算获得车辆在时刻N+I-1的轨迹点推算位置,共获得K个轨迹点推算数据,其中,I=1,2,…,K。
可以使卷积神经网络模型分别对第一组加速度序列和第一组角速度序列进行卷积,输出一个角速度和一个加速度,以输出的加速度为时刻N的估计加速度,以输出的角速度为时刻N的估计角速度;以同一个时间段的RTK定位模块的时刻N-1的位置数据为初始位姿;以时刻N-1的位置数据、时刻N的估计加速度和时刻N的估计角速度,推算得到时刻N的轨迹点推算位置。
可以使卷积神经网络模型分别对第二组加速度序列和第二组角速度序列进行卷积,输出一个角速度和一个加速度,以输出的加速度为时刻N+1的估计加速度,以输出的角速度为时刻N+1的估计角速度;以同一个时间段的RTK定位模块的时刻N的位置数据为初始位姿;以时刻N的位置数据、时刻N+1的估计加速度和时刻N+1的估计角速度,推算得到时刻N+1的轨迹点推算位置。
依此类推,可以使卷积神经网络模型分别对第I组加速度序列和第I组角速度序列进行卷积,输出一个角速度和一个加速度,以输出的加速度为时刻N+I-1的估计加速度,以输出的角速度为时刻N+I-1的估计角速度;以同一个时间段的RTK定位模块的时刻N+I的位置数据为初始位姿;以时刻N+I的位置数据、时刻N+I-1的估计加速度和时刻N+I-1的估计角速度,推算得到时刻N+I-1的轨迹点推算位置,推算获得K个轨迹点推算数据。
在步骤105中,依据每个时刻N+I-1的轨迹点推算位置和定位模块的位置数据,获得每个时刻N+I-1轨迹点推算位置与定位模块的位置数据的差值,并获得K个差值的累积和。
在一种具体实施方式中,依据时刻N的轨迹点推算位置和定位模块的位置数据,获得时刻N的第一个差值dp1;依据时刻N+1的轨迹点推算位置和定位模块的位置数据,获得时刻N+1差值dp2;依此类推,依据同一个时间段的各时刻N+I-1的轨迹点推算位置和定位模块的位置数据,获得各时刻N+I-1的差值dpI,其中,I=1,2,…,K,由此获得K个差值。可以理解的是,时刻N+I-1的轨迹点推算位置和定位模块的时刻N+I-1位置数据在时间上是对齐的。累计第一个差值dp1、第二个差值dp2……、第K个差值dpk的和,获得K个差值的累积和loss=dp1+dp2+……+dpk
在步骤106中,判断K个差值的累积和是否小于设定的第一阈值或者循环次数是否超过设定的第二阈值;如果K个差值的累积和大于或等于设定的第一阈值或者循环次数没有超过设定的第二阈值,执行步骤107;如果K个差值的累积和小于设定的第一阈值或者循环次数超过设定的第二阈值,执行步骤108。
在步骤107中,如果K个差值的累积和小于卷积神经网络模型的损失值,
将循环次数L更新为L+1,依据设定的卷积神经网络模型的学习率修改第j个卷积核的参数值,将卷积神经网络模型的损失值更新为K个差值的累积和,其中,j为L除N的余数;执行步骤104。
在一种具体实施方式中,如果K个差值的累积和小于卷积神经网络模型的损失值,增加1次循环次数,将当前的循环次数L更新为L+1,依据设定的卷积神经网络模型的学习率learn_rate修改第j个卷积核的参数值,其中,j=mod(L,N),即j为L除N的余数,然后将卷积神经网络模型的损失值LOSS更新为K个差值的累积和loss。返回循环执行步骤104,对更新损失值LOSS和修改卷积核的参数值后的卷积神经网络模型继续进行训练。
在一种具体实施方式中,如果K个差值的累积和loss小于卷积神经网络模型的损失值LOSS,增加1次循环次数,将当前的循环次数L更新为L+1,依据设定的卷积神经网络模型的学习率learn_rate更新第j个卷积核的参数值xj,例如可以但不限于依据下列公式先求解出第j个卷积核的新的参数值xj',然后将xj的值更新为xj'。
xj'=xj-(loss-LOSS)/loss*learn_rate
然后,将卷积神经网络模型当前的损失值LOSS更新为K个差值的累积和loss。返回循环执行步骤104,对更新损失值LOSS和修改卷积核的参数值后的卷积神经网络模型继续进行训练。
在一种具体实施方式中,如果K个差值的累积和loss小于卷积神经网络模型的损失值LOSS,增加1次循环次数,将当前的循环次数L更新为L+1,循环次数L除N的余数为0,可以依据设定的卷积神经网络模型的学习率learn_rate修改第N个卷积核的参数值xN,将卷积神经网络模型当前的损失值LOSS更新为K个差值的累积和loss。返回循环执行步骤104,对更新损失值LOSS和修改卷积核的参数值后的卷积神经网络模型继续进行训练。
在步骤108中,停止卷积神经网络模型训练,获得训练好的卷积神经网络模型。
在一种具体实施方式中,如果K个差值的累积和小于设定的第一阈值或者循环次数超过设定的第二阈值,停止卷积神经网络模型训练,即完成卷积神经网络模型的训练,获得训练好的卷积神经网络模型。
本实施例中,在依据设定的卷积神经网络模型的学习率修改某个卷积核的参数值后,循环执行步骤104、105和106。如果循环获得的K个差值的累积和大于或等于设定的第一阈值,并且,K个差值的累积和小于卷积神经网络模型的损失值,增加1次循环次数,将当前的循环次数L更新为L+1,继续修改卷积神经网络模型的某个卷积核的下一个卷积核的参数值,更新卷积神经网络模型的损失值;并再一次循环执行步骤104、105、106和107。如果循环获得的K个差值的累积和小于设定的第一阈值,停止卷积神经网络模型的训练,即完成卷积神经网络模型的训练,获得训练好的卷积神经网络模型。
在另一实现方式中,可以设定卷积神经网络模型的训练循环次数,如果没有超过设定的循环次数,利用包括N个加速度的K组加速度序列和包括N个角速度的K组角速度序列,通过循环获得的K个差值的累积和,循环修改卷积神经网络模型的卷积核的参数值和卷积神经网络模型的当前损失值,对卷积神经网络模型进行训练。当超过设定的循环次数,例如循环次数超过设定的第二阈值时,停止卷积神经网络模型的训练,即完成卷积神经网络模型的训练,获得训练好的卷积神经网络模型。
可以理解的,在K个差值的累积和小于设定的第一阈值和循环次数超过设定的第二阈值两个条件中的任一个条件满足时,停止卷积神经网络模型的训练;也可在K个差值的累积和小于设定的第一阈值和循环次数超过设定的第二阈值两个条件都满足时,停止卷积神经网络模型的训练。
需要说明的是,在卷积神经网络模型的训练过程,依据卷积神经网络模型的学习率修改各个卷积核的参数值时,可以使用同样的学习率,也可以采用学习率自更新的方式在卷积神经网络模型的训练过程调整学习率。学习率自更新的方式可以参考相关技术,本申请的实施例不再赘述。
在步骤109中,向训练好的卷积神经网络模型输入惯性测量单元的测量数据,通过训练好的卷积神经网络模型输出每个时刻的IMU估计数据。
在一种具体实施方式中,在车辆的定位模块例如RTK定位模块信号可用的情况下,完成卷积神经网络模型的训练。在车辆的RTK定位模块信号不可用,无法提供定位信息的情况下,通过惯性测量单元的加速度计获取车辆的加速度,通过惯性测量单元的陀螺仪获取车辆的角速度。向训练好的卷积神经网络模型输入车辆的加速度和角速度,使卷积神经网络模型输出降低测量误差的每个时刻的估计加速度和估计角速度,以卷积神经网络模型输出的估计加速度为校正后的加速度,以卷积神经网络模型输出的估计角速度为校正后的角速度,完成惯性测量单元测量数据的校正。
本申请的实施例提供的基于卷积神经网络模型的惯性测量数据校正方法,以同一时间段的定位模块的位置数据序列、同一时间段的每组包括N个加速度的K组加速度序列和每组包括N个角速度的K组角速度序列为卷积神经网络模型的训练样本,通过使卷积神经网络模型依据第I组加速度序列输出时刻N+I-1的加速度,依据第I组角速度序列输出时刻N+I-1的角速度,增强训练样本的可信度,减少了训练样本的误差;通过使卷积神经网络模型依据第I组加速度序列输出时刻N+I-1的加速度,依据第I组角速度序列输出时刻N+I-1的角速度,推算获得时刻N+I-1的轨迹点推算位置;依据时刻N+I-1的轨迹点推算位置与同一时间段的时刻N+I-1的位置数据,获得时刻N+I-1的轨迹点推算位置与同一时间段的时刻N+I-1的位置数据的第I个差值,获得K个差值的累积和;分析K个差值的累积和与卷积神经网络模型的当前损失值,依据设定的卷积神经网络模型的学习率,修改卷积神经网络模型的损失值和依次修改卷积神经网络模型的卷积核的参数值,完成卷积神经网络模型的训练,能够提高卷积神经网络模型的训练精度和速率。向完成训练的卷积神经网络模型输入惯性测量单元的加速度和角速度,使卷积神经网络模型输出的降低测量误差的估计加速度和估计角速度。基于卷积神经网络模型的惯性测量数据校正方法,能够基于卷积神经网络模型降低惯性测量单元的测量误差,获得降低测量误差的惯性测量单元的校正测量数据,有助于提高惯性定位导航的精度。
实施例二:
图2是本申请另一实施例示出的基于卷积神经网络模型的惯性测量数据校正方法的流程示意图。图2相对于图1更详细描述了本申请的方案。
参见图2,一种基于卷积神经网络模型的惯性测量数据校正方法,包括:
在步骤201中,初始化卷积神经网络模型,包括:定义卷积神经网络模型的卷积核大小为N,并为每个卷积核设定参数值,其中,N为大于1的整数。
该步骤可以参见步骤101的描述,此处不再赘述。
在步骤202中,对一时间段的惯性测量单元的测量数据进行分割,获得每组包括N个测量数据的K组测量数据序列,其中,K为大于等于N的整数。
在一种具体实施方式中,车辆上设有惯性测量单元、定位模块。惯性测量单元包括加速度计和陀螺仪,惯性测量单元的测量数据包括惯性测量单元的加速度计的加速度、陀螺仪的角速度。可以通过惯性测量单元的加速度计获得的车辆的加速度、惯性测量单元的陀螺仪获得的车辆的角速度。定位模块可以包括但不限于GPS模块、北斗卫星定位模块、RTK定位模块等卫星定位模块中的至少一种。利用定位模块可以获得车辆的定位信息,该定位信息可以包括但不限于位置信息、速度信息和姿态信息。位置信息包括但不限于描述位置的经纬度坐标信息,姿态信息包括但不限于描述航向的航向角信息。
在一种具体实施方式中,在车辆RTK定位模块信号可用的情况下,获得车辆一个时间段的定位信息,依据车辆一个时间段的定位信息获取车辆一个时间段的位置数据序列。在通过RTK定位模块获取车辆一个时间段的位置数据序列时,通过惯性测量单元的加速度计获取同个一时间段的车辆的加速度,通过惯性测量单元的陀螺仪获取同一个时间段的车辆的角速度。
在一种实施方式中,以步长为1、长度为N的滑动窗口对一时间段的惯性测量单元的测量数据进行分割,以时刻I至时刻N+I-1的惯性测量单元的测量数据为第I组测量数据序列,获得每组包括N个测量数据的K组测量数据序列,其中,K为大于等于N的整数,I=1,2,…,K。
在一种具体实施方式中,以步长为1、长度为N的滑动窗口对同一个时间段的加速度进行分割,以时刻I至时刻N+I-1的加速度为第I组加速度序列,获得每组包括N个加速度的K组加速度序列;以步长为1、长度为N的滑动窗口对同一个时间段的角速度进行分割,以时刻I至时刻N+I-1的角速度为第I组角速度序列,获得每组包括N个角速度的K组角速度序列。
例如,将每N个加速度打包成一组,以时刻1至时刻N的加速度为第一组加速度序列,时刻2至时刻N+1的加速度为第二组加速度序列,时刻3至时刻N+2的加速度为第三组加速度序列,直至获得包括N个加速度的K组加速度序列。将每N个角速度打包成一组,以时刻1至时刻N的角速度为第一组角速度序列,时刻2至时刻N+1的角速度为第二组角速度序列,时刻3至时刻N+2的角速度为第三组角速度序列,直至获得包括N个角速度的K组角速度序列。
在一种实施方式中,依据惯性测量单元的加速度的变化量的大小和/或惯性测量单元的角速度的变化量的大小调整滑动窗口的大小。
在一种具体实施方式中,滑动窗口的大小是对应窗口内惯性测量单元的测量数据的多少,也就是K组测量数据序列的K的取值大小。依据惯性测量单元的加速度计获取的车辆的加速度,获得车辆在设定时间段的加速度的变化量,依据加速度的变化量的大小调整滑动窗口的大小。如果车辆在设定时间段的加速度的变化量大于或等于第一设定阈值,增大滑动窗口;如果车辆在设定时间段的加速度的变化量小于第一设定阈值,减小滑动窗口。例如,车辆在加速或者减速行驶时,车辆在设定时间段的加速度的变化量大于或等于第一设定阈值,增大滑动窗口,即增多获得的惯性测量单元的测量数据,可以向卷积神经网络模型输入的更多的每组包括N个加速度的加速度序列和每组包括N个角速度的角速度序列;车辆在直线匀速行驶时,车辆在设定时间段的加速度的变化量小于第一设定阈值,减小滑动窗口,即减少获得的惯性测量单元的测量数据,可以向卷积神经网络模型输入的较少的每组包括N个加速度的加速度序列和每组包括N个角速度的角速度序列。
在一种具体实施方式中,依据惯性测量单元的陀螺仪获取的车辆的角速度,获得车辆在设定时间段的角速度的变化量,依据角速度的变化量的大小调整滑动窗口的大小。如果车辆在设定时间段的角速度的变化量大于或等于第二设定阈值,增大滑动窗口;如果车辆在设定时间段的角速度的变化量小于第二设定阈值,减小滑动窗口。例如,车辆在多弯路段转弯行驶时,车辆在设定时间段的角速度的变化量大于或等于第二设定阈值,增大滑动窗口;车辆在直线路段行驶时,车辆在设定时间段的角速度的变化量小于第二设定阈值,减小滑动窗口。
在一种具体实施方式中,以步长为1、长度为N的调整大小的滑动窗口对同一个时间段的加速度进行分割,以时刻I至时刻N+I-1的加速度为第I组加速度序列,获得每组包括N个加速度的K组加速度序列;以步长为1、长度为N的调整大小的滑动窗口对同一个时间段的角速度进行分割,以时刻I至时刻N+I-1的角速度为第I组角速度序列,获得每组包括N个角速度的K组角速度序列。
在步骤203中,向卷积神经网络模型输入K组测量数据序列,以及定位模块的位置数据序列。
该步骤可以参见步骤103的描述,此处不再赘述。
在步骤204中,使卷积神经网络模型分别依据第I组测量数据序列输出时刻N+I-1的IMU估计数据,并分别依据时刻N+I-1的IMU估计数据推算获得车辆在时刻N+I-1的轨迹点推算位置,由此获得K个轨迹点推算数据。
该步骤可以参见步骤104的描述,此处不再赘述。
在步骤205中,依据每个时刻N+I-1的轨迹点推算位置和定位模块的位置数据,获得每个时刻N+I-1轨迹点推算位置与定位模块的位置数据的差值,并获得K个差值的累积和。
该步骤可以参见步骤105的描述,此处不再赘述。
在步骤206中,判断K个差值的累积和是否小于设定的第一阈值或者循环次数是否超过设定的第二阈值;如果K个差值的累积和大于或等于设定的第一阈值或者循环次数没有超过设定的第二阈值,执行步骤207;如果K个差值的累积和小于设定的第一阈值或者循环次数超过设定的第二阈值,执行步骤210。
在步骤207中,判断K个差值的累积和是否小于卷积神经网络模型的损失值;如果K个差值的累积和小于卷积神经网络模型的损失值,执行步骤208;如果K个差值的累积和大于或等于卷积神经网络模型的损失值,执行步骤209。
在一种具体实施方式中,如果K个差值的累积和大于或等于设定的第一阈值或者循环次数没有超过设定的第二阈值,再判断K个差值的累积和是否小于卷积神经网络模型当前的损失值。如果K个差值的累积和小于卷积神经网络模型的损失值,执行步骤208;如果K个差值的累积和大于或等于卷积神经网络模型的损失值,执行步骤209。
在步骤208中,将循环次数L更新为L+1,依据设定的卷积神经网络模型的学习率修改第j个卷积核的参数值,将卷积神经网络模型的损失值更新为K个差值的累积和,其中,j为L除N的余数;执行步骤204。
在一种具体实施方式中,如果K个差值的累积和loss小于卷积神经网络模型的损失值LOSS,增加1次循环次数,将循环次数L更新为L+1,依据设定的卷积神经网络模型的学习率learn_rate更新第j(L+1)个卷积核的参数值xj,其中,j=mod(L,N) ,即j为L除N的余数,例如可以但不限于依据下列公式先求解出第j个卷积核的新的参数值xj',然后将xj的值修改为xj'。
xj'=xj-(loss-LOSS)/loss*learn_rate
然后,将卷积神经网络模型当前的损失值LOSS更新为K个差值的累积和loss。返回循环执行步骤204,对更新损失值LOSS和修改卷积核的参数值后的卷积神经网络模型继续进行训练。
在步骤209中,将循环次数L更新为L+1,依据设定的卷积神经网络模型的学习率修改第j-1个卷积核的参数值;执行步骤204。
在一种具体实施方式中,如果K个差值的累积和loss大于或等于卷积神经网络模型的损失值LOSS,增加1次循环次数,将循环次数L更新为L+1,依据设定的卷积神经网络模型的学习率learn_rate更新第j-1(L+1-1)个卷积核的参数值xj-1,其中,j=mod(L,N),即j为L除N的余数,例如可以但不限于依据下列公式先求解出第j-1个卷积核的新的参数值xj-1',然后将xj-1的值修改为xj-1'。
Xj-1'=xj-1-(loss-LOSS)/loss*learn_rate
然后,返回循环执行步骤204,对修改卷积核的参数值后的卷积神经网络模型继续进行训练。
在一种具体实施方式中,如果K个差值的累积和loss小于卷积神经网络模型的损失值LOSS,增加1次循环次数,将当前的循环次数L更新为L+1,如果循环次数L除N的余数为0,可以依据设定的卷积神经网络模型的学习率learn_rate修改第N个卷积核的参数值xN,将卷积神经网络模型当前的损失值LOSS更新为K个差值的累积和loss。返回循环执行步骤104,对更新损失值LOSS和修改卷积核的参数值后的卷积神经网络模型继续进行训练。如果K个差值的累积和loss大于或等于卷积神经网络模型的损失值LOSS,增加1次循环次数,将当前的循环次数L更新为L+1,如果循环次数L除N的余数为0,可以依据设定的卷积神经网络模型的学习率learn_rate修改第N-1个卷积核的参数值xN-1。返回循环执行步骤104,对更新损失值LOSS和修改卷积核的参数值后的卷积神经网络模型继续进行训练。
例如,设定循环次数L=1,第一次获得K个差值的累积和loss,判断K个差值的累积和Loss是否小于设定的第一阈值。如果K个差值的累积和Loss大于或等于设定的第一阈值,再判断K个差值的累积和loss是否小于卷积神经网络模型的损失值LOSS。如果K个差值的累积和loss大于或等于卷积神经网络模型的损失值LOSS,将循环次数L更新为L+1=2,依据设定的卷积神经网络模型的学习率learn_rate修改第1(1+1-1)个卷积核的参数值x1,将第1个卷积核的参数值x1修改为x1'。可以依据下列公式先求解出第1个卷积核的新的参数值x1,然后将x1的值更新为x1'。
x1'=x1-(loss-LOSS)/loss*learn_rate
然后,返回循环执行步骤204,对修改卷积核的参数值后的卷积神经网络模型继续进行训练,直至获得的K个差值的累积和loss小于卷积神经网络模型的损失值LOSS,对第2个卷积核的参数值进行修改。
如果K个差值的累积和loss小于卷积神经网络模型的损失值LOSS,将循环次数L更新为L+1=2,依据设定的卷积神经网络模型的学习率learn_rate修改第2(1+1)个卷积核的参数值x2,将第2个卷积核的参数值x2修改为x2'。可以依据下列公式先求解出第2个卷积核的新的参数值x2,然后将x1的值更新为x2'。
x2'=x2-(loss-LOSS)/loss*learn_rate
然后,将卷积神经网络模型当前的损失值LOSS更新为K个差值的累积和loss。返回循环执行步骤204,对更新损失值LOSS和修改卷积核的参数值后的卷积神经网络模型继续进行训练。如果K个差值的累积和loss大于或等于卷积神经网络模型的损失值LOSS,继续对第2个卷积核的参数值进行修改;直至K个差值的累积和loss小于卷积神经网络模型的损失值LOSS,继续对第3个卷积核的参数值进行修改和更新卷积神经网络模型的损失值LOSS;依此类推,直至获得的K个差值的累积和loss小于设定的第一阈值。
在步骤210中,停止卷积神经网络模型训练,获得训练好的卷积神经网络模型。
在一种具体实施方式中,如果K个差值的累积和小于设定的第一阈值或者循环次数超过设定的第二阈值,停止卷积神经网络模型训练,即完成卷积神经网络模型的训练,获得训练好的卷积神经网络模型。
本实施例中,在依据设定的卷积神经网络模型的学习率修改某个卷积核的参数值后,循环执行步骤204、205、206和207。判断K个差值的累积和Loss是否小于设定的第一阈值。如果K个差值的累积和Loss大于或等于设定的第一阈值,再判断K个差值的累积和loss是否小于卷积神经网络模型的损失值LOSS。如果K个差值的累积和大于或等于卷积神经网络模型的损失值,继续修改卷积神经网络模型当前的某个卷积核的参数值;循环执行步骤204、205、206和207,直至获得的K个差值的累积和小于卷积神经网络模型的损失值。如果K个差值的累积和小于卷积神经网络模型的损失值,修改卷积神经网络模型当前的某个卷积核的下一个卷积和的参数值,然后更新卷积神经网络模型的当前损失值;循环执行步骤204、205、206、207、208和209,直到循环获得的K个差值的累积和小于设定的第一阈值,停止卷积神经网络模型的训练,即完成卷积神经网络模型的训练,获得训练好的卷积神经网络模型。
在另一实现方式中,可以设定卷积神经网络模型的训练循环次数,判断当前的循环次数是否超过设定的第二阈值。如果当前的循环次数没有超过设定的第二阈值,则继续循环利用包括N个加速度的K组加速度序列和包括N个角速度的K组角速度序列,通过循环获得的K个差值的累积和,判断K个差值的累积和是否小于卷积神经网络模型的损失值,循环修改卷积神经网络模型的卷积核的参数值和卷积神经网络模型的当前损失值,对卷积神经网络模型进行训练。当超过设定的循环次数,例如循环次数超过设定的第二阈值时,停止卷积神经网络模型的训练,即完成卷积神经网络模型的训练,获得训练好的卷积神经网络模型。
可以理解的,在K个差值的累积和小于设定的第一阈值和循环次数超过设定的第二阈值两个条件中的任一个条件满足时,停止卷积神经网络模型的训练;也可在K个差值的累积和小于设定的第一阈值和循环次数超过设定的第二阈值两个条件都满足时,停止卷积神经网络模型的训练。
在步骤211中,向训练好的卷积神经网络模型输入惯性测量单元的测量数据,通过训练好的卷积神经网络模型输出每个时刻的IMU估计数据。
该步骤可以参见步骤109的描述,此处不再赘述。
本申请的实施例提供的基于卷积神经网络模型的惯性测量数据校正方法,依据惯性测量单元的加速度的变化量的大小和/或惯性测量单元的角速度的变化量的大小调整滑动窗口的大小,在车辆转弯和/或加减速行驶时,增大滑动窗口;在车辆直线匀速行驶时,减少滑动窗口,能够提高卷积神经网络模型的训练精度和速率。
实施例三:
与前述应用功能实现方法实施例相对应,本申请还提供了一种基于卷积神经网络模型的惯性测量数据校正装置、电子设备及相应的实施例。
图3是本申请一实施例示出的基于卷积神经网络模型的惯性测量数据校正装置的结构示意图。
参见图3,一种基于卷积神经网络模型的惯性测量数据校正装置,包括初始模块301、分割模块302、窗口调整模块303、输入模块304、推算轨迹模块305、误差模块306、第一判断模块307、第二判断模块308、更新模块309、停止模块310、估计数据获取模块311。
初始模块301,用于初始化卷积神经网络模型,包括:定义卷积神经网络模型的卷积核大小为N,并为每个卷积核设定参数值,其中,N为大于1的整数。
在一种具体实施方式中,初始模块301初始化卷积神经网络模型,可以定义一个大小为N的卷积核,为N个卷积核依次排序,并依次为每个卷积核设定参数值;设定卷积神经网络模型的损失值LOSS;设定卷积神经网络模型的学习率learn_rate。在一些实施例中,初始模块301还可以定义循环次数L=1。
在一种实施方式中,初始模块301依据惯性测量单元采集加速度和角速度的采集频率,初始化卷积神经网络模型,包括:以采集频率的约数或者倍数定义卷积神经网络模型的卷积核大小N,并为每个卷积核设定参数值,其中,N为大于1的整数。
在一种具体实施方式中,初始模块301依据惯性测量单元的采集频率,为卷积神经网络模型定义一个大小为N的卷积核,N的取值为采集频率的约数或倍数。例如,惯性测量单元的采集频率为100,N的取值可以是2、4、5、10、20……100、200等100的约数或倍数。
分割模块302,用于以步长为1、长度为N的滑动窗口对一时间段的惯性测量单元的测量数据进行分割,以时刻I至时刻N+I-1的惯性测量单元的测量数据为第I组测量数据序列,获得每组包括N个测量数据的K组测量数据序列,其中,K为大于等于N的整数,I=1,2,…,K。
在一种具体实施方式中,车辆上设有惯性测量单元、定位模块。惯性测量单元包括加速度计和陀螺仪,惯性测量单元的测量数据包括惯性测量单元的加速度计的加速度、陀螺仪的角速度。分割模块302可以通过惯性测量单元的加速度计获得的车辆的加速度、惯性测量单元的陀螺仪获得的车辆的角速度。定位模块可以包括但不限于GPS模块、北斗卫星定位模块、RTK(RealTimeKinematic,实时动态)定位模块等卫星定位模块中的至少一种。分割模块302利用定位模块可以获得车辆的定位信息,该定位信息可以包括但不限于位置信息、速度信息和姿态信息。位置信息包括但不限于描述位置的经纬度坐标信息,姿态信息包括但不限于描述航向的航向角信息。
在一种具体实施方式中,在车辆RTK定位模块信号可用的情况下,输入模块304获得车辆一个时间段的定位信息,依据车辆一个时间段的定位信息获取车辆一个时间段的位置数据序列。在通过RTK定位模块获取车辆一个时间段的位置数据序列时,分割模块302通过惯性测量单元的加速度计获取同个一时间段的车辆的加速度,通过惯性测量单元的陀螺仪获取同一个时间段的车辆的角速度。
在一种具体实施方式中,分割模块302以步长为1、长度为N的滑动窗口对同一个时间段的加速度进行分割,以时刻I至时刻N+I-1的加速度为第I组加速度序列,获得每组包括N个加速度的K组加速度序列;分割模块302以步长为1、长度为N的滑动窗口对同一个时间段的角速度进行分割,以时刻I至时刻N+I-1的角速度为第I组角速度序列,获得每组包括N个角速度的K组角速度序列。
例如,分割模块302将每N个加速度打包成一组,以时刻1至时刻N的加速度为第一组加速度序列,时刻2至时刻N+1的加速度为第二组加速度序列,时刻3至时刻N+2的加速度为第三组加速度序列,直至获得包括N个加速度的K组加速度序列。分割模块302将每N个角速度打包成一组,以时刻1至时刻N的角速度为第一组角速度序列,时刻2至时刻N+1的角速度为第二组角速度序列,时刻3至时刻N+2的角速度为第三组角速度序列,直至获得包括N个角速度的K组角速度序列。
窗口调整模块303,用于依据惯性测量单元的加速度的变化量的大小和/或惯性测量单元的角速度的变化量的大小调整滑动窗口的大小。
在一种具体实施方式中,滑动窗口的大小是对应窗口内惯性测量单元的测量数据的多少,也就是K组测量数据序列的K的取值大小。窗口调整模块303依据分割模块302通过惯性测量单元的加速度计获取的车辆的加速度,获得车辆在设定时间段的加速度的变化量,依据加速度的变化量的大小调整滑动窗口的大小。如果车辆在设定时间段的加速度的变化量大于或等于第一设定阈值,窗口调整模块303增大滑动窗口;如果车辆在设定时间段的加速度的变化量小于第一设定阈值,窗口调整模块303减小滑动窗口。例如,车辆在加速或者减速行驶时,车辆在设定时间段的加速度的变化量大于或等于第一设定阈值,窗口调整模块303增大滑动窗口,即增多获得的惯性测量单元的测量数据,可以向卷积神经网络模型输入的更多的每组包括N个加速度的加速度序列和每组包括N个角速度的角速度序列;车辆在直线匀速行驶时,车辆在设定时间段的加速度的变化量小于第一设定阈值,窗口调整模块303减小滑动窗口,即减少获得的惯性测量单元的测量数据,可以向卷积神经网络模型输入的较少的每组包括N个加速度的加速度序列和每组包括N个角速度的角速度序列。
在一种具体实施方式中,窗口调整模块303依据分割模块302通过惯性测量单元的陀螺仪获取的车辆的角速度,获得车辆在设定时间段的角速度的变化量,依据角速度的变化量的大小调整滑动窗口的大小。如果车辆在设定时间段的角速度的变化量大于或等于第二设定阈值,窗口调整模块303增大滑动窗口;如果车辆在设定时间段的角速度的变化量小于第二设定阈值,窗口调整模块303减小滑动窗口。例如,车辆在多弯路段转弯行驶时,车辆在设定时间段的角速度的变化量大于或等于第二设定阈值,窗口调整模块303增大滑动窗口;车辆在直线路段行驶时,车辆在设定时间段的角速度的变化量小于第二设定阈值,窗口调整模块303减小滑动窗口。
在一种具体实施方式中,分割模块302以步长为1、长度为N的窗口调整模块303调整大小的滑动窗口对同一个时间段的加速度进行分割,以时刻I至时刻N+I-1的加速度为第I组加速度序列,获得每组包括N个加速度的K组加速度序列;分割模块302以步长为1、长度为N的窗口调整模块303调整大小的滑动窗口对同一个时间段的角速度进行分割,以时刻I至时刻N+I-1的角速度为第I组角速度序列,获得每组包括N个角速度的K组角速度序列。
输入模块304,用于向卷积神经网络模型输入分割模块302获得的K组测量数据序列,以及定位模块的位置数据序列。
在一种具体实施方式中,向卷积神经网络模型输入分割模块302获得的每组包括N个加速度的K组加速度序列和每组包括N个角速度的K组角速度序列,以及定位模块的位置数据序列。
推算轨迹模块305,用于使卷积神经网络模型分别依据输入模块304输入的第I组测量数据序列输出时刻N+I-1的IMU估计数据,并分别依据时刻N+I-1的IMU估计数据推算获得时刻N+I-1的轨迹点推算位置,由此获得K个轨迹点推算位置。
在一种具体实施方式中,推算轨迹模块305通过使卷积神经网络模型依据输入模块304输入的第I组加速度序列输出时刻N+I-1的估计加速度,依据输入模块304输入的第I组角速度序列输出时刻N+I-1的估计角速度,并依据时刻N+I-1的估计加速度和估计角速度,推算获得车辆在时刻N+I-1的轨迹点推算位置,共获得K个轨迹点推算数据,其中,I=1,2,…,K。
推算轨迹模块305可以使卷积神经网络模型分别对输入模块304输入的第一组加速度序列和第一组角速度序列进行卷积,输出一个角速度和一个加速度,以输出的加速度为时刻N的估计加速度,以输出的角速度为时刻N的估计角速度;以同一个时间段的RTK定位模块的时刻N-1的位置数据为初始位姿;以时刻N-1的位置数据、时刻N的估计加速度和时刻N的估计角速度,推算得到时刻N的轨迹点推算位置。
推算轨迹模块305可以使卷积神经网络模型分别对输入模块304输入的第二组加速度序列和第二组角速度序列进行卷积,输出一个角速度和一个加速度,以输出的加速度为时刻N+1的估计加速度,以输出的角速度为时刻N+1的估计角速度;以同一个时间段的RTK定位模块的时刻N的位置数据为初始位姿;以时刻N的位置数据、时刻N+1的估计加速度和时刻N+1的估计角速度,推算得到时刻N+1的轨迹点推算位置。
依此类推,推算轨迹模块305可以使卷积神经网络模型分别对输入模块304输入的第I组加速度序列和第I组角速度序列进行卷积,输出一个角速度和一个加速度,以输出的加速度为时刻N+I-1的估计加速度,以输出的角速度为时刻N+I-1的估计角速度;以同一个时间段的RTK定位模块的时刻N+I的位置数据为初始位姿;以时刻N+I的位置数据、时刻N+I-1的估计加速度和时刻N+I-1的估计角速度,推算得到时刻N+I-1的轨迹点推算位置,推算获得K个轨迹点推算数据。
误差模块306,用于依据推算轨迹模块305获得的每个时刻N+I-1的轨迹点推算位置与定位模块的位置数据,获得每个时刻N+I-1的轨迹点推算位置与定位模块的位置数据的第I个差值,并获得K个差值的累积和。
在一种具体实施方式中,误差模块306依据推算轨迹模块305获得的时刻N的轨迹点推算位置和定位模块的位置数据,获得时刻N的第一个差值dp1;依据推算轨迹模块305获得的时刻N+1的轨迹点推算位置和定位模块的位置数据,获得时刻N+1差值dp2;依此类推,依据推算轨迹模块305获得的同一个时间段的各时刻N+I-1的轨迹点推算位置和定位模块的位置数据,获得各时刻N+I-1的差值dpI,其中,I=1,2,…,K,由此获得K个差值。可以理解的是,推算轨迹模块305获得的时刻N+I-1的轨迹点推算位置和定位模块的时刻N+I-1位置数据在时间上是对齐的。误差模块306累计第一个差值dp1、第二个差值dp2……、第K个差值dpk的和,获得K个差值的累积和loss=dp1+dp2+……+dpk
第一判断模块307,用于判断误差模块306获得的K个差值的累积和是否小于设定的第一阈值或者循环次数是否超过设定的第二阈值。
第二判断模块308,用于如果第一判断模块307判断K个差值的累积和大于或等于设定的第一阈值或者循环次数没有超过设定的第二阈值,判断K个差值的累积和是否小于卷积神经网络模型的损失值。
更新模块309,用于如果第二判断模块308判断K个差值的累积和小于卷积神经网络模型的损失值,将循环次数L更新为L+1,依据设定的卷积神经网络模型的学习率修改第j个卷积核的参数值,将卷积神经网络模型的损失值更新为K个差值的累积和;如果第二判断模块308判断K个差值的累积和大于或等于卷积神经网络模型的损失值,将循环次数L更新为L+1,依据设定的卷积神经网络模型的学习率修改第j-1个卷积核的参数值,其中,j为L除N的余数。
停止模块310,用于如果第一判断模块307判断K个差值的累积和小于设定的第一阈值或者循环次数超过设定的第二阈值,停止卷积神经网络模型的训练,获得训练好的卷积神经网络模型。
在一种具体实施方式中,如果第一判断模块307判断误差模块306获得的K个差值的累积和大于或等于设定的第一阈值或者循环次数没有超过设定的第二阈值,第二判断模块308判断K个差值的累积和是否小于卷积神经网络模型的损失值。如果第二判断模块308判断K个差值的累积和小于卷积神经网络模型的损失值,更新模块309增加1次循环次数,将当前的循环次数L更新为L+1,依据设定的卷积神经网络模型的学习率learn_rate修改第j个卷积核的参数值,其中,j=mod(L,N),即j为L除N的余数,然后将卷积神经网络模型的损失值LOSS更新为K个差值的累积和loss。返回循环执行推算轨迹模块305、误差模块306、第一判断模块307、第二判断模块308、更新模块309,对更新模块309更新损失值LOSS和修改卷积核的参数值后的卷积神经网络模型继续进行训练。
在一种具体实施方式中,如果第二判断模块308判断K个差值的累积和loss小于卷积神经网络模型的损失值LOSS,更新模块309增加1次循环次数,将当前的循环次数L更新为L+1,依据设定的卷积神经网络模型的学习率learn_rate更新第j个卷积核的参数值xj,例如可以但不限于依据下列公式先求解出第j个卷积核的新的参数值xj',然后将xj的值更新为xj'。
xj'=xj-(loss-LOSS)/loss*learn_rate
然后,更新模块309将卷积神经网络模型当前的损失值LOSS更新为K个差值的累积和loss。返回循环执行推算轨迹模块305、误差模块306、第一判断模块307、第二判断模块308、更新模块309,对更新模块309更新损失值LOSS和修改卷积核的参数值后的卷积神经网络模型继续进行训练。
在一种具体实施方式中,如果第二判断模块308判断K个差值的累积和loss大于或等于卷积神经网络模型的损失值LOSS,更新模块309增加1次循环次数,将循环次数L更新为L+1,依据设定的卷积神经网络模型的学习率learn_rate更新第j-1(L+1-1)个卷积核的参数值xj-1,其中,j=mod(L,N),即j为L除N的余数,例如可以但不限于依据下列公式先求解出第j-1个卷积核的新的参数值xj-1',然后将xj-1的值修改为xj-1'。
Xj-1'=xj-1-(loss-LOSS)/loss*learn_rate
然后,返回循环执行推算轨迹模块305、误差模块306、第一判断模块307、第二判断模块308、更新模块309,对更新模块309修改卷积核的参数值后的卷积神经网络模型继续进行训练。
在一种具体实施方式中,如果第二判断模块308判断K个差值的累积和loss小于卷积神经网络模型的损失值LOSS,更新模块309增加1次循环次数,将当前的循环次数L更新为L+1,如果循环次数L除N的余数为0,可以依据设定的卷积神经网络模型的学习率learn_rate修改第N个卷积核的参数值xN,将卷积神经网络模型当前的损失值LOSS更新为K个差值的累积和loss。返回循环执行推算轨迹模块305、误差模块306、第一判断模块307、第二判断模块308、更新模块309,对更新模块309更新损失值LOSS和修改卷积核的参数值后的卷积神经网络模型继续进行训练。如果第二判断模块308判断K个差值的累积和loss大于或等于卷积神经网络模型的损失值LOSS,更新模块309增加1次循环次数,将当前的循环次数L更新为L+1,如果循环次数L除N的余数为0,可以依据设定的卷积神经网络模型的学习率learn_rate修改第N-1个卷积核的参数值xN-1。返回循环执行推算轨迹模块305、误差模块306、第一判断模块307、第二判断模块308、更新模块309,对更新模块309更新损失值LOSS和修改卷积核的参数值后的卷积神经网络模型继续进行训练。
例如,初始模块301设定循环次数L=1,误差模块306第一次获得K个差值的累积和loss,第一判断模块307判断K个差值的累积和Loss是否小于设定的第一阈值。如果第一判断模块307判断K个差值的累积和Loss大于或等于设定的第一阈值,第二判断模块308再判断K个差值的累积和loss是否小于卷积神经网络模型的损失值LOSS。如果第二判断模块308判断K个差值的累积和loss大于或等于卷积神经网络模型的损失值LOSS,更新模块309将循环次数L更新为L+1=2,依据设定的卷积神经网络模型的学习率learn_rate修改第1(1+1-1)个卷积核的参数值x1,将第1个卷积核的参数值x1修改为x1'。更新模块309可以依据下列公式先求解出第1个卷积核的新的参数值x1,然后将x1的值更新为x1'。
x1'=x1-(loss-LOSS)/loss*learn_rate
然后,返回循环执行推算轨迹模块305、误差模块306、第一判断模块307、第二判断模块308、更新模块309,对更新模块309修改卷积核的参数值后的卷积神经网络模型继续进行训练。直至第二判断模块308判断获得的K个差值的累积和loss小于卷积神经网络模型的损失值LOSS,更新模块309对第2个卷积核的参数值进行修改。
如果第二判断模块308判断K个差值的累积和loss小于卷积神经网络模型的损失值LOSS,更新模块309将循环次数L更新为L+1=2,依据设定的卷积神经网络模型的学习率learn_rate修改第2(1+1)个卷积核的参数值x2,将第2个卷积核的参数值x2修改为x2'。更新模块309可以依据下列公式先求解出第2个卷积核的新的参数值x2,然后将x1的值更新为x2'。
x2'=x2-(loss-LOSS)/loss*learn_rate
然后,更新模块309将卷积神经网络模型当前的损失值LOSS更新为K个差值的累积和loss。返回循环执行推算轨迹模块305、误差模块306、第一判断模块307、第二判断模块308、更新模块309,对更新模块309更新损失值LOSS和修改卷积核的参数值后的卷积神经网络模型继续进行训练。如果第二判断模块308判断K个差值的累积和loss大于或等于卷积神经网络模型的损失值LOSS,更新模块309继续对第2个卷积核的参数值进行修改;直至第二判断模块308判断K个差值的累积和loss小于卷积神经网络模型的损失值LOSS,更新模块309继续对第3个卷积核的参数值进行修改和更新卷积神经网络模型的损失值LOSS;直至第一判断模块307判断获得的K个差值的累积和loss小于设定的第一阈值。
在一种具体实施方式中,如果第一判断模块307判断K个差值的累积和小于设定的第一阈值或者循环次数超过设定的第二阈值,停止模块310停止卷积神经网络模型训练,即完成卷积神经网络模型的训练,获得训练好的卷积神经网络模型。
本实施例中,在更新模块309依据设定的卷积神经网络模型的学习率修改某个卷积核的参数值后,循环执行推算轨迹模块305、误差模块306、第一判断模块307、第二判断模块308、更新模块309。误差模块306获得K个差值的累积和;如果第一判断模块307判断误差模块306循环获得的K个差值的累积和大于或等于设定的第一阈值,并且,第二判断模块308判断K个差值的累积和小于卷积神经网络模型的损失值,更新模块309增加1次循环次数,将当前的循环次数L更新为L+1,继续修改卷积神经网络模型的某个卷积核的下一个卷积核的参数值,更新卷积神经网络模型的损失值。并再一次循环执行推算轨迹模块305、误差模块306、第一判断模块307、第二判断模块308、更新模块309;如果第一判断模块307判断误差模块306循环获得的K个差值的累积和小于设定的第一阈值,停止模块310停止卷积神经网络模型的训练,即完成卷积神经网络模型的训练,获得训练好的卷积神经网络模型。
在另一实现方式中,初始模块301可以设定卷积神经网络模型的训练循环次数,如果第一判断模块307判断没有超过设定的循环次数,推算轨迹模块305利用包括N个加速度的K组加速度序列和包括N个角速度的K组角速度序列;误差模块306通过循环获得K个差值的累积和;更新模块309循环修改卷积神经网络模型的卷积核的参数值和卷积神经网络模型的当前损失值,对卷积神经网络模型进行训练。当第一判断模块307判断断超过设定的循环次数,例如第一判断模块307判断循环次数超过设定的第二阈值时,停止模块310停止卷积神经网络模型的训练,即完成卷积神经网络模型的训练,获得训练好的卷积神经网络模型。
估计数据获取模块311,用于向训练好的卷积神经网络模型输入惯性测量单元的测量数据,获取训练好的卷积神经网络模型输出的每个时刻的IMU估计数据。
在一种具体实施方式中,在车辆的定位模块例如RTK定位模块信号可用的情况下,完成卷积神经网络模型的训练。在车辆的RTK定位模块信号不可用,无法提供定位信息的情况下,估计数据获取模块311通过惯性测量单元的加速度计获取车辆的加速度,通过惯性测量单元的陀螺仪获取车辆的角速度。估计数据获取模块311向训练好的卷积神经网络模型输入车辆的加速度和角速度,使卷积神经网络模型输出降低测量误差的每个时刻的估计加速度和估计角速度,以卷积神经网络模型输出的估计加速度为校正后的加速度,以卷积神经网络模型输出的估计角速度为校正后的角速度,完成惯性测量单元测量数据的校正。
本申请的实施例提供的技术方案,以同一时间段的定位模块的位置数据序列、同一时间段的每组包括N个加速度的K组加速度序列和每组包括N个角速度的K组角速度序列为卷积神经网络模型的训练样本,通过使卷积神经网络模型依据第I组加速度序列输出时刻N+I-1的加速度,依据第I组角速度序列输出时刻N+I-1的角速度,增强训练样本的可信度,减少了训练样本的误差;通过使卷积神经网络模型依据第I组加速度序列输出时刻N+I-1的加速度,依据第I组角速度序列输出时刻N+I-1的角速度,推算获得时刻N+I-1的轨迹点推算位置;依据时刻N+I-1的轨迹点推算位置与同一时间段的时刻N+I-1的位置数据,获得时刻N+I-1的轨迹点推算位置与同一时间段的时刻N+I-1的位置数据的第I个差值,获得K个差值的累积和;分析K个差值的累积和与卷积神经网络模型的当前损失值,依据设定的卷积神经网络模型的学习率,修改卷积神经网络模型的损失值和依次修改卷积神经网络模型的卷积核的参数值,完成卷积神经网络模型的训练,能够提高卷积神经网络模型的训练精度和速率。向完成训练的卷积神经网络模型输入惯性测量单元的加速度和角速度,使卷积神经网络模型输出的降低测量误差的估计加速度和估计角速度。基于卷积神经网络模型的惯性测量数据校正方法,能够基于卷积神经网络模型降低惯性测量单元的测量误差,获得降低测量误差的惯性测量单元的校正测量数据,有助于提高惯性定位导航的精度。
进一步的,本申请的实施例提供的技术方案,依据惯性测量单元的加速度的变化量的大小和/或惯性测量单元的角速度的变化量的大小调整滑动窗口的大小,在车辆转弯和/或加减速行驶时,增大滑动窗口;在车辆直线匀速行驶时,减少滑动窗口,能够提高卷积神经网络模型的训练精度和速率。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不再做详细阐述说明。
图4是本申请实施例示出的电子设备的结构示意图。
参见图4,电子设备40包括存储器401和处理器402。
处理器402可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器 (Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列 (Field-Programmable Gate Array,FPGA) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器401可以包括各种类型的存储单元,例如系统内存、只读存储器(ROM),和永久存储装置。其中,ROM可以存储处理器402或者计算机的其他模块需要的静态数据或者指令。永久存储装置可以是可读写的存储装置。永久存储装置可以是即使计算机断电后也不会失去存储的指令和数据的非易失性存储设备。在一些实施方式中,永久性存储装置采用大容量存储装置(例如磁或光盘、闪存)作为永久存储装置。另外一些实施方式中,永久性存储装置可以是可移除的存储设备(例如软盘、光驱)。系统内存可以是可读写存储设备或者易失性可读写存储设备,例如动态随机访问内存。系统内存可以存储一些或者所有处理器在运行时需要的指令和数据。此外,存储器401可以包括任意计算机可读存储媒介的组合,包括各种类型的半导体存储芯片(DRAM,SRAM,SDRAM,闪存,可编程只读存储器),磁盘和/或光盘也可以采用。在一些实施方式中,存储器401可以包括可读和/或写的可移除的存储设备,例如激光唱片(CD)、只读数字多功能光盘(例如DVD-ROM,双层DVD-ROM)、只读蓝光光盘、超密度光盘、闪存卡(例如SD卡、min SD卡、Micro-SD卡等等)、磁性软盘等等。计算机可读存储媒介不包含载波和通过无线或有线传输的瞬间电子信号。
存储器401上存储有可执行代码,当可执行代码被处理器402处理时,可以使处理器402执行上文述及的方法中的部分或全部。
此外,根据本申请的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本申请的上述方法中部分或全部步骤的计算机程序代码指令。
或者,本申请还可以实施为一种非暂时性机器可读存储介质(或计算机可读存储介质、或机器可读存储介质),其上存储有可执行代码(或计算机程序、或计算机指令代码),当可执行代码(或计算机程序、或计算机指令代码)被电子设备(或电子设备、服务器等)的处理器执行时,使处理器执行根据本申请的上述方法的各个步骤的部分或全部。
以上已经描述了本申请的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (10)

1.一种基于卷积神经网络模型的惯性测量数据校正方法,其特征在于,包括:
初始化卷积神经网络模型,包括:定义卷积神经网络模型的卷积核大小为N,并为每个卷积核设定参数值,其中,N为大于1的整数;
以步长为1、长度为N的滑动窗口对一时间段的惯性测量单元的测量数据进行分割,以时刻I至时刻N+I-1的惯性测量单元的测量数据为第I组测量数据序列,获得每组包括N个测量数据的K组测量数据序列,其中,K为大于等于N的整数,I=1,2,…,K;
向卷积神经网络模型输入所述K组测量数据序列,以及卫星定位模块的位置数据序列;
使卷积神经网络模型分别依据第I组测量数据序列输出时刻N+I-1的IMU估计数据,并分别依据时刻N+I-1的IMU估计数据推算获得时刻N+I-1的轨迹点推算位置,由此获得K个轨迹点推算位置;
依据每个时刻N+I-1的轨迹点推算位置与所述卫星定位模块的位置数据,获得每个时刻N+I-1的轨迹点推算位置与所述卫星定位模块的位置数据的第I个差值,并获得K个差值的累积和;
如果K个差值的累积和小于设定的第一阈值或者循环次数超过设定的第二阈值,停止卷积神经网络模型的训练,获得训练好的卷积神经网络模型;
向训练好的卷积神经网络模型输入惯性测量单元的测量数据,获取训练好的卷积神经网络模型输出的每个时刻的IMU估计数据。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
如果K个差值的累积和大于或等于设定的第一阈值或者循环次数超过设定的第二阈值,并且K个差值的累积和小于卷积神经网络模型的损失值,将循环次数L更新为L+1,依据设定的卷积神经网络模型的学习率修改第j个卷积核的参数值,将卷积神经网络模型的损失值更新为K个差值的累积和,其中,j为L除N的余数。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
如果K个差值的累积和大于或等于设定的第一阈值或者循环次数没有超过设定的第二阈值,并且K个差值的累积和大于或等于卷积神经网络模型的损失值,将循环次数L更新为L+1,依据设定的卷积神经网络模型的学习率修改第j-1个卷积核的参数值。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述以步长为1、长度为N的滑动窗口对一时间段的惯性测量单元的测量数据进行分割,以时刻I至时刻N+I-1的惯性测量单元的测量数据为第I组测量数据序列,获得每组包括N个测量数据的K组测量数据序列,其中,K为大于等于N的整数,I=1,2,…,K,包括:
依据惯性测量单元的加速度的变化量的大小和/或惯性测量单元的角速度的变化量的大小调整滑动窗口的大小;
以步长为1、长度为N的滑动窗口对一时间段的惯性测量单元的测量数据进行分割,以时刻I至时刻N+I-1的惯性测量单元的测量数据为第I组测量数据序列,获得每组包括N个测量数据的K组测量数据序列,其中,K为大于等于N的整数,I=1,2,…,K。
5.一种基于卷积神经网络模型的惯性测量数据校正装置,其特征在于,包括:
初始模块,用于初始化卷积神经网络模型,包括:定义卷积神经网络模型的卷积核大小为N,并为每个卷积核设定参数值,其中,N为大于1的整数;
分割模块,用于以步长为1、长度为N的滑动窗口对一时间段的惯性测量单元的测量数据进行分割,以时刻I至时刻N+I-1的惯性测量单元的测量数据为第I组测量数据序列,获得每组包括N个测量数据的K组测量数据序列,其中,K为大于等于N的整数,I=1,2,…,K;
输入模块,用于向卷积神经网络模型输入所述分割模块获得的K组测量数据序列,以及卫星定位模块的位置数据序列;
推算轨迹模块,用于使卷积神经网络模型分别依据所述输入模块输入的第I组测量数据序列输出时刻N+I-1的IMU估计数据,并分别依据时刻N+I-1的IMU估计数据推算获得时刻N+I-1的轨迹点推算位置,由此获得K个轨迹点推算位置;
误差模块,用于依据所述推算轨迹模块获得的每个时刻N+I-1的轨迹点推算位置与所述输入模块输入的所述卫星定位模块的位置数据,获得每个时刻N+I-1的轨迹点推算位置与所述卫星定位模块的位置数据的第I个差值,并获得K个差值的累积和;
第一判断模块,用于判断所述误差模块获得的K个差值的累积和是否小于设定的第一阈值或者循环次数是否超过设定的第二阈值;
停止模块,用于如果所述第一判断模块判断K个差值的累积和小于设定的第一阈值或者循环次数超过设定的第二阈值,停止卷积神经网络模型的训练,获得训练好的卷积神经网络模型;
估计数据获取模块,用于向训练好的卷积神经网络模型输入惯性测量单元的测量数据,获取训练好的卷积神经网络模型输出的每个时刻的IMU估计数据。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
第二判断模块,用于如果所述第一判断模块判断K个差值的累积和大于或等于设定的第一阈值或者循环次数没有超过设定的第二阈值,判断K个差值的累积和是否小于卷积神经网络模型的损失值;
更新模块,用于如果所述第二判断模块判断K个差值的累积和小于卷积神经网络模型的损失值,将循环次数L更新为L+1,依据设定的卷积神经网络模型的学习率修改第j个卷积核的参数值,将卷积神经网络模型的损失值更新为K个差值的累积和,其中,j为L除N的余数。
7.根据权利要求6所述的装置,其特征在于:
所述更新模块,还用于如果所述第二判断模块判断K个差值的累积和大于或等于卷积神经网络模型的损失值,将循环次数L更新为L+1,依据设定的卷积神经网络模型的学习率修改第j-1个卷积核的参数值。
8.根据权利要求5-7中任一项所述的装置,其特征在于,所述装置还包括:
窗口调整模块,用于依据惯性测量单元的加速度的变化量的大小和/或惯性测量单元的角速度的变化量的大小调整滑动窗口的大小;
所述分割模块,用于以步长为1、长度为N的所述窗口调整模块调整大小的滑动窗口对一时间段的惯性测量单元的测量数据进行分割,以时刻I至时刻N+I-1的惯性测量单元的测量数据为第I组测量数据序列,获得每组包括N个测量数据的K组测量数据序列,其中,K为大于等于N的整数,I=1,2,…,K。
9.一种电子设备,其特征在于,包括:
处理器;以及
存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如权利要求1-4中任一项所述的方法。
10.一种非暂时性机器可读存储介质,其特征在于,非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如权利要求1-4中任一项所述的方法。
CN202110429181.XA 2021-04-21 2021-04-21 基于卷积神经网络模型的惯性测量数据校正方法及装置 Active CN112985462B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110429181.XA CN112985462B (zh) 2021-04-21 2021-04-21 基于卷积神经网络模型的惯性测量数据校正方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110429181.XA CN112985462B (zh) 2021-04-21 2021-04-21 基于卷积神经网络模型的惯性测量数据校正方法及装置

Publications (2)

Publication Number Publication Date
CN112985462A CN112985462A (zh) 2021-06-18
CN112985462B true CN112985462B (zh) 2021-07-23

Family

ID=76341508

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110429181.XA Active CN112985462B (zh) 2021-04-21 2021-04-21 基于卷积神经网络模型的惯性测量数据校正方法及装置

Country Status (1)

Country Link
CN (1) CN112985462B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113175936B (zh) * 2021-06-28 2021-08-31 智道网联科技(北京)有限公司 基于神经网络模型的车辆轨迹推算方法及装置
CN113375669B (zh) * 2021-08-16 2021-11-09 智道网联科技(北京)有限公司 基于神经网络模型的姿态更新方法及装置
CN113916223B (zh) * 2021-09-29 2022-11-11 深圳市慧鲤科技有限公司 定位方法及装置、设备、存储介质
CN114199279B (zh) * 2021-11-26 2023-06-20 北京航天自动控制研究所 全量模式下基于高精度惯组的mems惯组参数的在线估计方法
CN115547508B (zh) * 2022-11-29 2023-03-21 联仁健康医疗大数据科技股份有限公司 数据校正方法、装置、电子设备及存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201126429A (en) * 2010-01-25 2011-08-01 Mingchi Inst Of Technology A method and system for processing GPS navigation information and INS navigation information by utilization of artificial neural network and Kalman wave filter
CN109405827A (zh) * 2018-11-23 2019-03-01 安徽华米信息科技有限公司 终端定位方法及装置
CN110553644A (zh) * 2019-09-20 2019-12-10 鞍钢集团矿业有限公司 一种矿用电铲精准定位系统和方法
CN111707260A (zh) * 2020-06-24 2020-09-25 电子科技大学 一种基于频域分析及卷积神经网络的定位方法
US20200311514A1 (en) * 2019-04-01 2020-10-01 Honeywell International Inc. Deep neural network-based inertial measurement unit (imu) sensor compensation method
CN111857176A (zh) * 2020-07-20 2020-10-30 广州狸园科技有限公司 一种gps无人机控制方法
CN111928869A (zh) * 2020-10-10 2020-11-13 蘑菇车联信息科技有限公司 车辆运动轨迹估计方法、装置及电子设备
CN112197772A (zh) * 2020-12-08 2021-01-08 智道网联科技(北京)有限公司 一种确定车辆移动轨迹的方法及相关装置
CN112461269A (zh) * 2020-12-04 2021-03-09 智道网联科技(北京)有限公司 惯性测量单元标定方法、设备及服务器
CN112577521A (zh) * 2020-11-26 2021-03-30 北京邮电大学 一种组合导航误差校准方法及电子设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112004183B (zh) * 2020-07-08 2022-05-31 武汉科技大学 一种基于卷积神经网络融合IMU和WiFi信息的机器人自主定位方法
CN112232314A (zh) * 2020-12-11 2021-01-15 智道网联科技(北京)有限公司 一种基于深度学习进行目标检测的车辆控制方法和装置

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201126429A (en) * 2010-01-25 2011-08-01 Mingchi Inst Of Technology A method and system for processing GPS navigation information and INS navigation information by utilization of artificial neural network and Kalman wave filter
CN109405827A (zh) * 2018-11-23 2019-03-01 安徽华米信息科技有限公司 终端定位方法及装置
US20200311514A1 (en) * 2019-04-01 2020-10-01 Honeywell International Inc. Deep neural network-based inertial measurement unit (imu) sensor compensation method
CN110553644A (zh) * 2019-09-20 2019-12-10 鞍钢集团矿业有限公司 一种矿用电铲精准定位系统和方法
CN111707260A (zh) * 2020-06-24 2020-09-25 电子科技大学 一种基于频域分析及卷积神经网络的定位方法
CN111857176A (zh) * 2020-07-20 2020-10-30 广州狸园科技有限公司 一种gps无人机控制方法
CN111928869A (zh) * 2020-10-10 2020-11-13 蘑菇车联信息科技有限公司 车辆运动轨迹估计方法、装置及电子设备
CN112577521A (zh) * 2020-11-26 2021-03-30 北京邮电大学 一种组合导航误差校准方法及电子设备
CN112461269A (zh) * 2020-12-04 2021-03-09 智道网联科技(北京)有限公司 惯性测量单元标定方法、设备及服务器
CN112197772A (zh) * 2020-12-08 2021-01-08 智道网联科技(北京)有限公司 一种确定车辆移动轨迹的方法及相关装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Estimation of Vehicle Attitude, Acceleration, and Angular Velocity Using Convolutional Neural Network and Dual Extended Kalman Filter;Minseok Ok 等;《sensors》;20210211;第1-20页 *
卷积神经网络辅助的组合导航自适应滤波算法;严甲汉;《第九届中国卫星导航学术年会论文集—S10多源融合导航技术》;20180523;第1-4页 *

Also Published As

Publication number Publication date
CN112985462A (zh) 2021-06-18

Similar Documents

Publication Publication Date Title
CN112985462B (zh) 基于卷积神经网络模型的惯性测量数据校正方法及装置
CN111928869B (zh) 车辆运动轨迹估计方法、装置及电子设备
CN112197772B (zh) 一种确定车辆移动轨迹的方法及相关装置
CN112762933B (zh) 基于神经网络模型的车辆定位方法及装置
CN112146683B (zh) 惯性测量单元标定参数调整方法、装置及电子设备
CN112461269B (zh) 惯性测量单元标定方法、设备及服务器
CN111982158B (zh) 一种惯性测量单元标定方法及装置
CN113375669B (zh) 基于神经网络模型的姿态更新方法及装置
CN113252060B (zh) 基于神经网络模型的车辆轨迹推算方法及装置
CN111026081B (zh) 一种误差计算方法、装置、设备及存储介质
CN112118537B (zh) 一种利用图片实现移动轨迹估算的方法及相关装置
CN112985463B (zh) 基于卷积神经网络模型的惯性测量单元标定方法及装置
CN115406440A (zh) 一种车辆定位校正方法、系统及电子设备
CN113607176A (zh) 组合导航系统轨迹输出方法及装置
CN113175936B (zh) 基于神经网络模型的车辆轨迹推算方法及装置
CN113917512B (zh) 自动驾驶车辆的定位方法、装置、电子设备及存储介质
CN113280813B (zh) 基于神经网络模型的惯性测量数据补偿方法及装置
CN112762932B (zh) 基于神经网络模型的轨迹推算方法及装置
CN114543800B (zh) 一种用于车辆移动轨迹估计的处理方法及相关装置
CN111580139A (zh) 卫星导航数据的有效性判断方法及装置、电子设备
CN113375668B (zh) 卫星导航系统的天线安装角标定方法及装置
CN112284421B (zh) 一种imu内参调整方法及相关装置
CN108120450B (zh) 一种静止状态的判断方法及装置
CN111928865B (zh) 轨迹计算方法、装置、电子设备及存储介质
CN113124884B (zh) 基于lstm神经网络模型的车辆定位方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant