OA-SLAM 笔记

https://gitlab.inria.fr/tangram/oa-slam

https://blog.csdn.net/CV_Autobot/article/details/128168775

4.1

基于 ORB-SLAM2 (tracking, local mapping, loop closure) , 增加了 针对于 objects 的模块。这些模块使用 the ellipse/ellipsoid modeling framework, 和 points 使用相同的策略, 即在 frames 上跟踪 objects, 以 3D 的方式估计,插入到地图,然后不断优化。object tracking and object initial reconstruction are added to the main tracking thread。

  • The local object mapping is handled in a similar way as the local point mapping and continuously refines the object models. It is run in a separate thread .

通过集成 objects, 重定位模块被增强,提高了 robustness.

image
图 2:系统:蓝色项对应于 ORB-SLAM2 主干网中新添加的元素。请注意,每个模块(Tracking,
Local Mapping, Loop Closing and Local Object Mapping)都在单独的线程中运行

4.2 椭球体 object 表示

使用一个 3D 椭球体,建模一个 object。这个 object 在图像中的观测 是一个 椭圆。这是一个 粗略但轻量级的表示,只需要九个参数:三个参数用于 axes size,三个参数用于orientation,三个参数用于position。

此外,椭球体在任何视点下都投影为椭圆。其方程可以使用对偶空间以闭合形式表示。在该空间中,椭球体由 4 × 4 矩阵 Q 定义,椭圆由 3 × 3 矩阵 C 定义,它们通过投影矩阵 P [12] 连接在一起:

相比之下,使用物体的长方体表示是不可能的。事实上,将 3D box corners with the 2D box edges 相匹配会导致高组合性。

4.3 Object 检测和关联

YOLO。 为了稳健性,我们只考虑分数高于 0.5 的检测,并丢弃其他检测。

随时间推移在对象检测之间建立关联是我们系统的关键部分。给定当前帧中的一组检测,目标是将每个检测与现有 Object 轨迹匹配,或者决定创建一个新对象轨迹。关联首先受到对象类别的约束。此外,我们还考虑了检测框的重叠以及检测框之间的 points 匹配。这使我们能够处理不准确或部分的 Object 检测。

posted @ 2024-06-05 17:46  cold_moon  阅读(30)  评论(0编辑  收藏  举报