slam输出的数据指啥

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了slam输出的数据指啥相关的知识,希望对你有一定的参考价值。

参考技术A SLAM(即时定位与地图构建)是一种帮助机器人绘制地图,并导航它们行动的常用方法。
为了解决机器人导航问题,它们需要一些地图的帮助。
就像人类一样,机器人不能总是依赖GPS,尤其是当它们在室内运行时。况且,GPS在室外如果达不到几英寸的精度,机器人也不能安全地移动。
参考技术B 在《 搭建ORB_SLAM3在Linux下的编译和运行环境 》这篇博文的最后
运行了开源ORB_SLAM3算法 和 开源数据集"Vicon Room 1 01":
kmavvisualinertialdatasets – ASL Datasets

现在就以"Vicon Room 1 01" 数据集为例
解析一个标准VIO设备和SLAM3算法的数据流(DataFlow)
进一步了解VIO设备和SLAM3算法的运行机制

这是指啥 C++ 数据结构? [关闭]

【中文标题】这是指啥 C++ 数据结构? [关闭]【英文标题】:What C++ data structure is this referring to? [closed]这是指什么 C++ 数据结构? [关闭] 【发布时间】:2020-11-18 04:09:01 【问题描述】:

我在网上偶然发现了这段代码,想确认一下这个数据结构是什么


unordered_map<int, int> pre[10];
int main()

...
    pre[1] = 9, 5, 7, 4, 3, 2;
...


看起来像 unordered_map&lt;int, unordered_map&lt;int, int&gt;&gt; pre 给我。但是,我不确定 unordered_map&lt;int, int&gt; 在这种情况下是如何工作的。有人能解释一下这是什么吗?

【问题讨论】:

【参考方案1】:
unordered_map<int, int> pre[10];

不要忘记最后的[10]。这是一个包含十个unordered_map&lt;int, int&gt; 实例的数组main 行将特定的unordered_map&lt;int, int&gt; 分配给位于1 位置的那个。

【讨论】:

谢谢,我没有考虑数组部分。感谢您向我指出这一点。现在说得通了。【参考方案2】:

任务

pre[1] = 9, 5, 7, 4, 3, 2;

基本上等价于

std::unordered_map<int, int> temporary_map = 9, 5, 7, 4, 3, 2;
pre[1] = temporary_map;

记住pre 是一个由十个元素组成的数组pre[1] 是数组中的第二个元素。

【讨论】:

【参考方案3】:

在我看来,它像 unordered_map&lt;int, unordered_map&lt;int, int&gt;&gt; pre

确实如此,只是后面有[10]。这使变量成为一个数组。

但是,我不确定unordered_map&lt;int, int&gt; 在这种情况下是如何工作的。

unordered_map&lt;int, int&gt;是数组元素的类型。

【讨论】:

以上是关于slam输出的数据指啥的主要内容,如果未能解决你的问题,请参考以下文章

SLAM实现模块及功能

SLAM实现模块及功能

sql i/o开销指啥,开销大对数据库有啥影响

c语言中%x指啥

激光slam课程学习笔记--第3课: 3D激光 slam

激光slam课程学习笔记--第3课: 3D激光 slam