本发明属于行人导航定位修正领域,具体涉及一种基于双向长短期记忆网络的定位修正方法。

背景技术:

近些年来,随着室内定位技术的不断发展,很大程度弥补了类似gps等利用卫星信号进行定位而卫星信号穿透力较差导致室内定位不精确的问题。现有的室内定位技术大部分都利用已有的信号源进行高精度定位,如wi-fi信号定位技术,uwb定位技术等。但是现有技术存在以下问题:但是,由于利用惯性元器件进行定位过程中需要使用二次积分,导致系统在长距离、长时间的定位过程中出现目标轨迹发散的现象,难以维持较高的精度。

技术实现要素:

针对现有技术中的上述不足,本发明提供的一种基于双向长短期记忆网络的定位修正方法解决了现有技术存在的问题。

为了达到上述发明目的,本发明采用的技术方案为:一种基于双向长短期记忆网络的定位修正方法,包括以下步骤:

s1、采集行人运动的原始数据,并对原始数据进行预处理,得到处理数据;

s2、构建双向长短期记忆网络,并对其进行训练;

s3、将原始数据输入训练完成的双向长短期记忆网络,获取零速判断结果;

s4、当零速判断结果为零速时,根据处理数据,利用卡尔曼滤波器对导航坐标系下的速度和位置信息进行修正。

进一步地,所述步骤s1包括以下分步骤:

s1.1、将惯性测量单元佩戴在使用者脚部,进行原始数据采集;

s1.2、根据原始数据中载体坐标系下的角速度,获取方向余弦矩阵;

s1.3、将原始数据中载体坐标系下的加速度经过固定窗口长度和步长的滑动窗口进行处理;

s1.4、将处理过后的加速度经过一次积分,得到在导航坐标系中的速度;

s1.5、将处理过后的加速度经过二次积分,得到在导航坐标系中的位置;

s1.6、将方向余弦矩阵、导航坐标系中的速度和导航坐标系中的位置作为处理数据。

进一步地,所述步骤s1.3中滑动窗口的步长为1,其窗口长度为256。

进一步地,所述双向长短期记忆网络包括依次串联的输入层、第一双向长短期记忆层、第二双向长短期记忆层、第一全连接层、第二全连接层和输出层。

进一步地,所述第一双向长短期记忆层的单元数为128,其输出为每一个方向的每一个时间步拼接在一起的结果;所述第二双向长短期记忆层的单元数为64,其输出为每一个方向的最后一个时间步拼接到一起的结果;所述的第一全连接层设置有32个神经元;所述第二全连接层设置有1个神经元,其输出为零速判断结果。

进一步地,所述步骤s2中对双向长短期记忆网络进行训练的具体方法为:

a1、根据原始数据中的加速度和角速度,采用人工标记的方式将零速时刻打上标签,得到标签数据;

a2、将原始数据和标签数据输入双向长短期记忆网络,将均方根误差作为损失值,并以损失值最小为目标对双向长短期记忆网络进行训练;

a3、采用adam算法作为网络参数优化算法,训练至损失值小于0.01时,将此时的网络参数保存为最终的网络参数,得到训练完成的双向长短期记忆网络。

进一步地,所述步骤s3具体为:将原始数据中载体坐标系下的加速度和角速度输入训练完成的双向长短期记忆网络,得到对应的零速判断结果。

进一步地,所述步骤s4包括以下分步骤:

s4.1、当零速判断结果为零速时,将此时导航坐标系中的速度、导航坐标系中的位置和速度观测量输入卡尔曼滤波器,得到速度误差向量、位置误差向量和姿态误差向量;

s4.2、根据速度误差向量、位置误差向量和姿态误差向量,对方向余弦矩阵以及导航坐标系下的速度和位置信息进行修正。

本发明的有益效果为:

(1)本发明能够精准的进行零速判断,实施的复杂度低,具有高的计算效率和拥有良好的鲁棒性。

(2)本发明成本低,通过对行人导航时进行零速检测,寻找出导航时产生的误差,最终通过位置误差进行定位修正,可以保证长时间的精准行人导航定位。

附图说明

图1为本发明提出的一种基于双向长短期记忆网络的定位修正方法流程图。

图2为本发明提出的双向长短期记忆网络结构图。

具体实施方式

下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。

下面结合附图详细说明本发明的实施例。

如图1所示,一种基于双向长短期记忆网络的定位修正方法,包括以下步骤:

s1、采集行人运动的原始数据,并对原始数据进行预处理,得到处理数据;

s2、构建双向长短期记忆网络,并对其进行训练;

s3、将原始数据输入训练完成的双向长短期记忆网络,获取零速判断结果;

s4、当零速判断结果为零速时,根据处理数据,利用卡尔曼滤波器对导航坐标系下的速度和位置信息进行修正。

在本实施例中,原始数据包括行人运动的角速度、加速度和速度观测量。

其中,所述步骤s1包括以下分步骤:

s1.1、将惯性测量单元佩戴在使用者脚部,进行原始数据采集;

s1.2、根据原始数据中载体坐标系下的角速度,获取方向余弦矩阵;

s1.3、将原始数据中载体坐标系下的加速度经过固定窗口长度和步长的滑动窗口进行处理;

s1.4、将处理过后的加速度经过一次积分,得到在导航坐标系中的速度;

s1.5、将处理过后的加速度经过二次积分,得到在导航坐标系中的位置;

s1.6、将方向余弦矩阵、导航坐标系中的速度和导航坐标系中的位置作为处理数据。

其中,所述步骤s1.3中滑动窗口的步长为1,其窗口长度为256。

如图2所示,所述双向长短期记忆网络包括依次串联的输入层、第一双向长短期记忆层、第二双向长短期记忆层、第一全连接层、第二全连接层和输出层。

其中,所述第一双向长短期记忆层的单元数为128,其输出为每一个方向的每一个时间步拼接在一起的结果;所述第二双向长短期记忆层的单元数为64,其输出为每一个方向的最后一个时间步拼接到一起的结果;所述的第一全连接层设置有32个神经元;所述第二全连接层设置有1个神经元,其输出为零速判断结果。

在本实施例中,输入层的维度为(256,6),其中256表示窗口大小,6表示陀螺仪和加速度计的三轴数据,输出层采用softmax函数进行零速判断结果的输出,输出1表示该时间戳对应的为零速时刻,0表示该时间戳对应的不是零速时刻。

其中,所述步骤s2中对双向长短期记忆网络进行训练的具体方法为:

a1、根据原始数据中的加速度和角速度,采用人工标记的方式将零速时刻打上标签,得到标签数据;

a2、将原始数据和标签数据输入双向长短期记忆网络,将均方根误差作为损失值,并以损失值最小为目标对双向长短期记忆网络进行训练;

a3、采用adam算法作为网络参数优化算法,训练至损失值小于0.01时,将此时的网络参数保存为最终的网络参数,得到训练完成的双向长短期记忆网络。

其中,所述步骤s3具体为:将原始数据中载体坐标系下的加速度和角速度输入训练完成的双向长短期记忆网络,得到对应的零速判断结果。

其中,所述步骤s4包括以下分步骤:

s4.1、当零速判断结果为零速时,将此时导航坐标系中的速度、导航坐标系中的位置和速度观测量输入卡尔曼滤波器,得到速度误差向量、位置误差向量和姿态误差向量;

s4.2、根据速度误差向量、位置误差向量和姿态误差向量,对方向余弦矩阵以及导航坐标系下的速度和位置信息进行修正。

在本实施例中,误差向量δxt为:

其中,表示t时刻的姿态误差向量,δθt表示t时刻的翻滚角,δγt表示t时刻的俯仰角,δψt表示t时刻的航向角,δpt表示t时刻的位置误差向量,δvt表示t时刻的速度误差向量。

根据姿态误差向量对t时刻的方向余弦矩阵的修正,修正公式为:

其中,表示修正后的t时刻方向余弦矩阵,表示t-1时刻的方向余弦矩阵,i3×3表示3×3的单位矩阵,δω表示姿态误差向量构成的反对称矩阵,b表示载体坐标系,n表示导航坐标系。

所述反对称矩阵δω为:

根据速度误差向量对t时刻的速度进行修正,修正的公式为:

其中,表示t时刻的速度修正值,表示t-1时刻的速度值。

根据位置误差向量对t时刻的位置进行修正,修正的公式为:

其中,表示修正后t时刻的位置,表示t-1时刻的位置。

本发明能够精准的进行零速判断,实施的复杂度低,具有高的计算效率和拥有良好的鲁棒性。本发明成本低,通过对行人导航时进行零速检测,寻找出导航时产生的误差,最终通过位置误差进行定位修正,可以保证长时间的精准行人导航定位。

双向长短期记忆网络模型_一种基于双向长短期记忆网络的定位修正方法与流程...相关推荐

  1. catia制作物料明细_一种基于CATIA的国标标准物料清单的生成方法与流程

    本发明涉及一种物料清单的生成方法,尤其涉及一种基于CATIA的国标标准物料清单的生成方法. 背景技术: 众所周知,CATIA是法国达索公司的产品开发旗舰解决方案.作为PLM协同解决方案的一个重要组成部 ...

  2. 极坐标梯度公式_一种基于极坐标系梯度变化的类圆环边缘检测方法与流程

    本发明涉及图形处理技术领域,具体地说是一种基于极坐标系梯度变化的类圆环边缘检测方法. 背景技术: 边缘检测是图像处理和计算机视觉中的基本问题,边缘检测的目的是标识数字图像中亮度变化明显的点.图像属性中 ...

  3. 区块链相关数据报表_一种基于区块链的财务报表系统及其使用方法与流程

    本发明涉及区块链领域,尤其是一种基于区块链的财务报表系统及其使用方法. 背景技术: 随着社会的发展,公司的成立数量越来越多,而公司的财务报表是一个公司的关键资料,这就要求资料数据的绝对安全防止他人的恶 ...

  4. raid配置ssd为缓存_一种基于SSDRAID阵列的多级缓存及缓存方法与流程

    本发明属于固态硬盘存储技术领域,更具体地,涉及一种基于SSD RAID阵列的多级缓存及缓存方法. 背景技术: 基于闪存的固态磁盘(Solid State Drives,SSD)以其优异的性能.非异失和 ...

  5. matlab血糖预测,一种基于VMD-PACF-BP模型的动态血糖在线预测方法与流程

    本发明属于血糖预测技术领域,尤其涉及一种基于VMD-PACF-BP模型的动态血糖在线预测方法. 背景技术: 目前,中国患有糖尿病人数已成为在世界上拥有糖尿病患者最多的国家.为了降低糖尿病患者长期处于高 ...

  6. orb特征 稠密特征_一种基于ORB-SLAM2的双目三维稠密建图方法技术

    本发明专利技术公开了一种基于ORB‑SLAM2的双目稠密建图方法,涉及机器人同步定位与地图创建领域,该方法主要由跟踪线程.局部地图线程.闭环检测线程和稠密建图线程组成.其中稠密建图线程包含以下步骤:1 ...

  7. java 解析数据包_一种基于Java语言的网络通讯数据包解析方法与流程

    本发明涉及网络通讯领域,特别涉及一种基于Java语言的网络通讯数据包解析方法. 背景技术: 计算机系统和网络的大量普及使用使全球跨入了信息化时代.但是,正由于现代社会中几乎一切都在"计算机化 ...

  8. grub2引导linux内核,一种基于grub2的linux系统启动bootloader的制作方法与流程

    技术领域 本发明涉及服务器应用技术领域,具体涉及一种基于grub2的linux系统启动bootloader的制作方法. 背景技术: 当前linux系统的内核版本已经升级至4.0以上,最新的linux系 ...

  9. 一种基于说话人识别和数字语音识别的身份认证方法与流程

    本发明属于语音处理技术领域,具体涉及到对数字语音序列进行说话人识别和语音识别,确定说话人身份的身份认证方法. 背景技术: 说话人识别也称为声纹识别,可以从说话人发出的声音中提取其个性特征,从而识别出当 ...

最新文章

  1. 计算机界和数学界,也需要一个“希波克拉底誓言”
  2. python爬虫正则表达式实例-3.Python爬虫入门_正则表达式(简单例子)
  3. MYSQL的随机抽取实现方法
  4. 苏州大学计算机考研复试经验,苏州大学计算机考研复试经验总结.docx
  5. 解决VS2010链接错误:LINK fatal error LNK1123: 转换到 COFF
  6. Git Flow工作流图
  7. 2021二维数组中的元素查重(C++,stl--set)
  8. (活动)MySQL DBA之路 | 性能配置调优篇
  9. myeclipse jdk tomcat mysql配置_JDK,TOMCAT,myeclipse,mysql安装以及配置
  10. gitignore.io-程序猿值得拥有的智能生成gitignore文件的秘密武器
  11. MySQL单表删除重复列SQL语句
  12. Django项目中集成富文本编辑器的通用方法,适合KindEditor,xhEditor,NicEditor,wymeditor等 .
  13. Blackrock的思考与启示
  14. 老游戏与你共渡亲子时光
  15. SAP BDC的应用
  16. docker之user_remap
  17. MySQL——超详细数据库触发器教程
  18. python dataset_数据管道Dataset
  19. 浏览器窗口切换(从一个页面切换到另一个页面并且不刷新)
  20. Linux - 如何查看Ubuntu系统的版本信息

热门文章

  1. Android之TBS浏览Word、Excel、PPT、PDF等文件
  2. 磁盘IOPS和带宽(throughput)
  3. AI之AutoML:autosklearn/Auto-Sklearn(基于scikit-learn库的自动化的机器学习工具)的简介、安装、使用方法之详细攻略
  4. 电视盒子有哪些软件支持电视节目回看?
  5. /proc/mounts介绍
  6. 音视频同步-ffmpeg
  7. Linux SSH命令大全
  8. 网络营销与传统营销的区别及优缺点
  9. C++重载相等运算符operator==的两种方式
  10. 【第1天】移动App-学习笔记