惯性导航论文详解:神经惯性定位

news2024/11/26 17:35:41

来源:投稿 作者:小灰灰 编辑:学姐

论文标题:Neural Inertial Localization

论文链接:  https://arxiv.org/pdf/2203.15851v1.pdf

图1.从IMU测量到位置估计。给定惯性传感器数据(左),我们的方法(中)使用神经惯性导航技术来查找速度矢量序列;然后训练一个基于场景特定变压器的神经架构,该架构将速度序列映射到位置可能性。该图显示了来自我们办公室数据集的示例本地化结果。颜色显示输入(左)、中间表示(中)和位置(右)之间的时间对应关系。

1.摘要

在高度城市化地区实施先进智能交通系统的挑战之一是全球导航卫星系统(GNSS)接收机定位精度不足。多径Multipath和非视线(NLOS)效应严重恶化了GNSS定位性能。本文旨在通过有监督机器学习训练分类器,将GNSS伪距测量分为三类:clean, multipath and NLOS。从全球导航卫星系统原始数据中获得或计算出的若干特征进行了评估。本文还提出了一种新的特征来表示伪距测量值和多普勒频移测量值之间的一致性。根据实验结果,使用由所提出的特征和接收信号强度训练的支持向量机(SVM)分类器可以达到约75%的分类精度

2.介绍

智能出行是智能城市发展的六大组成部分之一。全球导航卫星系统(GNSS)本地化对于不同应用的智能移动性至关重要,包括行人和车辆导航、车队管理、道路交通监控和分析、道路用户收费、非正常驾驶检测等。本文主要研究自动驾驶应用中的车辆和行人定位。

随着行人对车辆(P2V)和车辆对车辆(V2V)通信的成熟和普及,行人和自动车辆之间的碰撞避免可能在未来实现。当前智能避碰的瓶颈之一是行人和车辆的定位精度。一般来说,GNSS接收机是向载波提供绝对定位信息的最常用设备/芯片。

目前,在高速公路、高速公路、郊区和农村等卫星观测条件较好的地区,全球导航卫星系统的定位性能非常令人满意。其在城市地区的定位表现则是另一回事。密集建筑环境中臭名昭著的多径效应正在显著降低GNSS定位精度。多径效应来源于高层建筑和摩天大楼对卫星信号的反射和衍射。它很容易将全球导航卫星系统的精度降低到几十米。与多径效应相比,更具破坏性的现象是非视线(NLOS)接收。多径和非直瞄之间的差异可以如图1所示。多径包含视线(LOS)和反射信号,而非直视仅包含后者。

使用复杂的接收机相关器设计可以大致减轻多径效应。相关器设计的原则是比较代码跟踪环路中的早期、提示和晚期信道。换句话说,它将直接信号与反射信号进行比较。不幸的是,由于非直瞄系统只包含反射信号,因此这种设计根本不能减轻非直瞄的影响。因此,关注非直瞄探测和缓解的研究正在增加。非直瞄探测方法可分为天线、高级接收机算法、传感器集成、3D建模和机器学习。

3.惯性定位问题

惯性定位是仅根据IMU传感器数据的历史来估计对象在环境中的位置的任务。存在训练阶段和测试阶段,即不使用平面布置图或外部位置信息。在测试过程中,输入是一系列加速度(加速度计)、角速度(陀螺仪)和可选的磁场(罗盘)测量值,每个测量值都有3个DoF。当地面真实位置可用时,输出是给定时间戳集合的位置估计。在训练期间,我们有一组输入IMU传感器数据和输出位置。

度量:定位精度通过

1)距离阈值(1、2、4或6米)内正确位置估计的比率(%)来测量

2)在角度阈值(20或40度)内的正确速度方向的比率(%)。位置比率是主要度量,而方向比率衡量时间一致性。

重新定位任务扩展:本文提出了一个惯性重新定位任务,它与惯性定位不同,因为位置R2(以及可选的运动方向SE(2))是先验已知的。该任务代表了一种场景,即使用WiFi在几分钟内获取一次全球位置,同时使用IMU传感器重新定位两者之间的位置以提高能效。

4.惯性定位数据集

我们展示了第一个惯性定位数据集,其中包含来自两座大学建筑和一个办公空间的53小时运动/轨迹数据。表1总结了数据集统计数据,而图2可视化了覆盖在平面布置图上的所有地面真相轨迹。每个场景都跨越一个平面,位置以二维坐标给出,没有垂直位移。如果可用,将为场景提供平面图图像以进行定性可视化,该图像描述了建筑结构(例如,墙、门和窗),但不包含椅子、桌子和沙发等瞬态对象。

「数据收集:」 我们用智能手机收集IMU传感器数据和地面实况位置。在未来,AR设备(例如Meta的Aria眼镜、Snap的眼镜)将允许收集以自我为中心的数据集,以及紧密耦合的IMU和相机数据。我们在这项工作中使用了两种设备;1) 具有内置视觉惯性SLAM功能的手持式3D跟踪电话(Google Tango、AsusZenfone AR),产生地面真实相对运动,其中Z轴与重力对齐;以及2)标准智能手机,在自然电话处理下(例如在口袋、手上或用于呼叫等)记录IMU传感器数据。我们利用探戈区域描述文件[6]将地面真实轨迹与公共坐标系对齐,然后手动与平面图对齐。大学A包含来自RoNIN数据集[1]的数据,这些数据手动与平面图对齐。IMU传感器数据和地面真实位置均以200Hz记录。

「测试集:」 我们随机选择六分之一的轨迹作为测试数据,其平均持续时间为13.3分钟。我们还通过从每个测试序列中随机裁剪三个子序列(100米)来形成一组短的固定长度子序列用于测试。

NILoc数据集被去识别以掩盖受试者的身份,并且不包含任何图像或视频数据。

5.NILoc:神经惯性定位

代替从IMU测量回归位置,NILoc系统利用了神经惯性导航将IMU传感器数据序列转换为一系列速度矢量,我们的核心任务是将速度矢量转换为位置估计。

NILoc采用具有两个基于Transformer的网络分支的神经架构[2],能够使用复杂运动数据的长期历史来减少不确定性。“速度分支”编码一系列速度向量,其中时间卷积网络压缩时间维度以进一步增强时间感受野。“自回归位置分支”编码了一系列位置似然性,能够自动回归地产生长期的位置估计。在给定训练数据的情况下,每个场景对网络进行训练。 如图3显示,神经惯性定位系统图。我们使用双分支变压器架构来估计速度输入的位置似然性。仅用于训练的路径显示为虚线。

5.1速度分支

该分支使用速度数据的历史来估计位置序列。它由三个网络模块组成:基于TCN的速度压缩器、变压器速度编码器和翻译感知位置解码器。

「基于TCN的速度压缩器:」 Transformer功能强大但内存密集。我们使用时间卷积网络(TCN)[3]将速度序列长度压缩10倍,允许我们处理更长的运动历史。特别地,我们使用具有10的感受野的2层TCN将长度为T的2D速度向量序列压缩为长度为T/10的d维特征向量序列{vt′}:

「Transformer编码器:」 Transformer架构[27]将压缩的速度向量{vt′}作为标记,并通过级联帧索引的d/2维三角位置编码来初始化每个特征向量ft:

「翻译感知位置解码器:」 最后一个模块对每个单独的嵌入et进行操作。首先,et是重新排列成图像特征体积(3D张量3),以及通过3层全卷积解码器进行上采样转置卷积。最后一层是“翻译”-感知“1×1卷积,其参数不共享跨像素。为了说明不确定性,输出位置表示为大小的2D似然图Lt,编码器有两块自我注意网络。每个模块有2个标准变压器编码器层,具有8路多头关注。第一个块之后的特征向量也被传递到另一个分支(即,自回归位置分支)。这种翻译感知层使网络能够轻松地学习与翻译相关的信息,例如“人们从未来到过这个位置”或“人们总是从这个门口经过”。

5.2自回归位置分支

位置分支结合了来自速度分支的速度特征和来自其过去推断或外部位置信息(例如WiFi)的先验位置似然性。

位置分支与速度分支具有相同的架构,但有两个不同之处。首先,代替基于TCN的速度压缩器,我们使用ConvNet将每个W×H似然映射转换为d′维向量。我们使用相同的三角位置编码(但使用维度d′而不是d/2来匹配维度),将其添加到向量中。其次,我们在每个自我关注层之后(即,在每个添加规范层之前)通过交叉关注从速度分支注入速度特征。其余的架构是相同的。

在推理时,我们首先以滑动窗口的方式评估速度分支,以计算速度特征向量。位置分支获取多达20帧的位置似然历史:{Lt,Lt−1,··Lt-19}. L0编码外部初始位置信息(例如来自WiFi)或统一分布(如果不可用)。在输出端,用帧t′处的似然性初始化的节点将在帧t′+1处具有似然性估计。因此,我们推断一帧的似然性高达20倍,其中我们通过从第一个推断结果到最后一个将权重从1.0减至0.05来计算加权平均值作为最终似然性。

5.3训练阶段

在两个分支都使用交叉熵损失。地面真实可能性是一个零强度图像,除了地面真实位置的一个像素,其值为1.0。我们采用并行计划采样[4]来训练自回归位置分支,而不展开递归推断。该过程有两个步骤。首先,我们将GT似然传递给所有输入令牌并进行预测。其次,我们使用概率rteacher(称为教师强制比率)保持输入令牌中的GT似然性,同时用预测的似然性替换剩余节点。反向传播仅在第二步骤中进行。rteacher在前50个时期设置为1.0,每5个时期后减少0.01。

6.实验

据我们所知,以前没有任何工作涉及室内仅从IMU数据进行定位。因此,我们比较采用以下三种融合IMU和平面布置图的技术,仅使用IMU数据而不使用平面布置图图像的定位。我们简要解释这三种技术。

「粒子过滤器(PF)」 维护一组粒子,每个粒子存储位置、航向方向和偏差/刻度误差校正项。从给定初始位置周围的高斯分布或均匀分布开始,系统基于惯性导航结果和平面布置图信息更新粒子的状态(即,如果在可步行区域之外,则降低粒子的重量)。我们将最接近加权中值x/y坐标的粒子作为位置预测。

「学习先验(LP)」 也是一种基于粒子过滤器的方法,同时使用深度网络帮助更新粒子权重。通过UNet[20]提取的平面图特征和LSTM[11]提取的运动特征之间的点积计算的位置似然性用于对粒子进行加权。我们使用本地实现,因为代码不可用。注意,该方法需要初始位置和方向,并且仅针对SE(2)重新定位任务进行评估。

「条件随机场(CRF)」 基于最先进的地图匹配系统,该系统根据平面图计算到达能力图,使用惯性导航结果在图节点之间转换,并使用维特比算法回溯和确定位置。我们对系统进行了一些修改,以更好地适应我们的要求:1)使用RoNIN结果作为速度输入;2) 将搜索邻域增加1.5倍以处理惯性导航中的比例不准确;以及3)在固定窗口内进行周期性反向传播,以与其他近实时基线相比较。

表2a是我们的主要结果,分别对三座建筑的本地化任务进行了定量评估。NILoc在大多数参赛作品中都取得了最好的成绩。唯一的例外是针对固定短序列的建筑A的CRF。注意,CRF使用平面图信息,而我们的输入仅为IMU。CRF是计算密集型的,比我们的方法慢30倍,甚至需要动态编程来有效地搜索与平面布置图的所有可能对齐。

表2b显示了重新定位任务的结果,三座建筑物的平均值。所有方法都通过提供更多的初始化信息来始终如一地提高性能。虽然NILoc在较低的距离阈值(即,通常非常精确)下获得了最佳结果,但CRF在牺牲其密集的计算费用和对平面布置图图像的要求的情况下总体表现更好。

表3是一项消融研究,评估了我们系统中各种模块的贡献。第一行与最先进的惯性导航方法进行了比较,我们和所有基线都优于该方法。接下来的四行显示了基于距离的成功率,同时从主系统中逐个删除了四个模块。该表显示,在两个分支上对网络进行损失训练非常重要。第二排特别有趣。位置和(前半部分)速度分支都只在位置分支处进行损失训练,其性能显著下降。第三行表示惯性导航任务中高度不确定性的挑战。如果没有基于TCN的压缩器,当输入运动历史减少10倍时,成功率甚至下降到一位数。最后两行比较了整个系统的速度分支和位置分支的预测。速度分支不采用先前的位置似然性,无法解决重新定位任务。然而,对于定位任务,它以明显的优势优于定位分支,同时计算效率是定位分支的两倍。

参考文献:
- [1] SachiniHerath,HangYan,andYasutakaFurukawa.RoNIN: Robust neural inertial navigation in the wild: Benchmark, evaluations, & new methods. In 2020 IEEE International Conference on Robotics and Automation (ICRA), pages 3146–3152. IEEE, 2020. 1, 2, 3, 6, 7
- [2] Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N Gomez, Łukasz Kaiser, and Illia Polosukhin. Attention is all you need. In Advances in neural information processing systems, pages 5998–6008, 2017. 2, 4
- [3] ShaojieBai,JZicoKolter,andVladlenKoltun.Anempirical evaluation of generic convolutional and recurrent networks for sequence modeling. arXiv preprint arXiv:1803.01271, 2018. 4
- [4] Tsvetomila Mihaylova and Andre ́ FT Martins. Scheduled sampling for transformers. In Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics: Student Research Workshop, pages 351–356, 2019. 5

关注下方《学姐带你玩AI》🚀🚀🚀

回复“500”获取AI必读200+论文PDF

码字不易,欢迎大家点赞评论收藏!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/551620.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C#,生信软件实践(04)——DNA数据库EMBL格式文件的解释器之完整源代码

EMBL文件的格式详解请阅读前面的文章: C#,生信软件实践(02)——DNA数据库EMBL格式详解及转为FASTA格式文件的源代码https://blog.csdn.net/beijinghorn/article/details/130462070 本文的代码用于: (1&a…

Linux---文件操作命令(cp、mv、rm)

1. cp命令 cp命令可以用于复制文件\文件夹,cp命令来自英文单词:copy。 语法:cp [选项] 参数1 参数2 参数1:Linux路径,表示被复制的文件或文件夹 参数2:Linux路径,表示要复制去的地方 选…

《Java 核心技术面试》课程笔记(十一)

Java 提供了哪些 IO 方式? 典型回答 Java IO 基于不同的 IO 抽象模型和交互方式,可以分为: BIO,传统的 java.io 包,它基于流模型实现。 提供了我们最熟知的⼀些 IO 功能,比如 File 抽象、输入输出流等。交…

安装编译PostgreSql15.3.0

一、下载源码 方式一 官网手动下载 https://www.postgresql.org/download/. 解压 tar -zxvf postgresql-14.2.tar.gz方式二 git clone git clone https://github.com/postgres/postgres.git解压或下载后计入postgres目录 cd postgres-15.3二、创建目录 用root账户创建 创建…

[iOS开发]<多线程-NSOperation操作队列NSOperationQueue>

前言 寒假期间学习过GCD。今天学习NSOperation。同样都是多线程封装,NSOperation和NSOperationQueue是基于GCD的更高一层的封装,完全的面向对象,相比于GCD复杂的各种API方法,它的优势就是更加的简单实用,代码的可读性…

电力电子课设—数控产生PWM波——使用51单片机输出占空比可调PWM波(按钮控制、数码管显示)控制速成教程

我们学校电气专业开始做电力电子的课设了,小组选了一项制作硬件电路的任务,里面有要求采用数控方式实现DC-DC电压变换的输出电压调节,数控在电路中的体现就是用单片机输出可调占空比的PWM作用于产生PWM波控制IGBT的芯片。考虑到可能有同学没接…

金领冠520解密母乳源代码,助推婴配粉中国式现代化高速发展

又是一年520,又是一个“全国母乳喂养宣传日”。 1990年5月10日,为保护、促进和支持母乳喂养,更好地实行优生优育,原中华人民共和国国家卫生部召开新闻发布会,确立每年5月20日为“全国母乳喂养宣传日”。 那时&#x…

[GXYCTF2019]BabySQli1

拿到题目一看就是sql注入,所以还是老样子账号admin密码随便输入,回显但是密码错误 当用户名随便输入时,回显用户名错误,说明是先检测用户名,再检测密码 应该是存在过滤 通过burp爆破大致找出过滤字符,还有就…

css flex布局

css flex布局 flex是flexible Box的缩写,意为“弹性布局”,任何一个容器都可以指定为flex布局。 当我们为父盒子设为flex布局以后,子元素的float、clear和vertical-align属性将失效 总结flex布局原理: 就是通过给父盒子添加fl…

Java - AQS(一)

Java - AQS(一) 在Java中,AQS代表AbstractQueuedSynchronizer(抽象队列同步器)。AQS是Java并发包中用于构建同步器的基础框架。它提供了一种实现同步状态管理、线程等待和通知的机制。 AQS主要通过一个int类型的状态…

轻松玩转开源大语言模型bloom(四)

前言 前几篇都围绕着语言模型的decoding strategy来讲述,今天将进入进阶篇,在解码策略效果有限和提示词修改也无法满意的情况下如何提升模型的效果呢?这时我们需要对大语言模型进行fine-tune,即微调。一般我们用的大语言模型都是…

chatgpt赋能Python-python5个数从小到大排序

Python中的5个数从小到大排序 在Python中,排序是一个常见的操作。我们经常需要对一组数据进行排序,以便更方便地对数据进行分析和处理。在本文中,我们将探讨Python中如何排序5个数,具体来说,是从小到大排序。 介绍 …

chatgpt赋能Python-python5__3

Python5%-3: 介绍和结论 什么是Python5%-3 Python5%-3是在Python 3语言版本中增加的一个新特性,它是Python语言中对移动开发的支持扩展,这个特性被称为Python5%-3。 具体来说,Python5%-3允许开发者能够更方便地创建移动应用程序&#xff0…

大脑MRI去噪技术研究进展

导读 磁共振(MR)图像诊断的准确性取决于图像的质量,而图像质量下降的主要原因是由于噪声和伪影。噪声是由成像环境错误或传输系统失真所引起的。因此,去噪方法对提高图像质量起着重要作用。然而,在去噪和保留结构细节之间需要权衡。现有的大…

【Linux】Linux 下的权限(初)

d1 目录下有目录dir,和一个普通文件 test.c 重点看到文件的各种权限,拆分清晰地理解(重) 观察到权限和文件类型一坨除了第一列的文件类型其他的都是文件相关的权限,而且是三个三个分开 为什么分开呢?是因为…

【leetcode】456. 132 模式 单调栈出栈特性

看题意是要在数组中找到一个大于左右元素波峰。 一开始看数据量是 10e5,还以为是 nlogn算法。没想到居然是个 n 的单调栈。 这道题利用了递减单调栈出栈的特性, 出栈元素 k、栈中某一个特定元素 j 满足 nums[j] > nums[k],如果从数组后面向前遍历的…

什么是uni-app?为什么要学习uni-app?

文章目录 前言 一、什么是uni-app框架? 二、为什么要学? 三、uni-app开发的适用场景是什么? 总结 前言 随着前端技术的不断发展进步,跨端开发成为了程序猿不得不面临的一个难题,uni-app的出现解决了程序猿不断重复…

《Java 核心技术面试》课程笔记(十)

如何保证集合是线程安全的? 典型回答 Java 提供了不同层⾯的线程安全支持。 在传统集合框架内部,除了 Hashtable 等同步容器,还提供了所谓的同步包装器(Synchronized Wrapper),我们可以调用 Collections 工具类提供…

16款ChatGPT工具,太炸裂了,收藏!

1.ChatGPT for google 一个浏览器插件,可搭配现有的搜索引擎来使用。 最大化搜索效率,对搜索体验的提升相当离谱: 安装完插件后,在搜索引擎搜索任何问题,都能获取两份答案。 左边是谷歌抓取的全网资源,右…

完美解决:“因为计算机丢失VCRUNTIME140_1.dll”

VCRUNTIME140_1.dll是Microsoft Visual C Redistributable的一个组件,它包含了许多用于C编程的函数和类。如果你的系统缺少了这个文件,那么你可能会遇到“找不到VCRUNTIME140_1.dll无法继续执行代码”的错误提示。 方法1:直接复制VCRUNTIME…