(2024.12自用存档)Ubuntu20.04——DynSLAM运行命令

前面忘记记录了,大概记一下后面```

看了很多大佬的文章(感谢!),包括但不限于以下参考文章:

Ubuntu16.04编译dynslam总结-CSDN博客

ubuntu14.04 CUDA8.0 DynSLAM编译与运行-CSDN博客

【视觉SLAM十四讲】Pangolin编译失败,踩坑日记_ubuntu20.04安装pangolin0.5报错-CSDN博客

视觉SLAM十四讲 Ubuntu20.04 Pangolin 环境配置_pangolin-0.5-20.04-CSDN博客

Ubuntu20.04安装docker教程_ubuntu20.04 安装docker-CSDN博客

Pangolin 安装和配置指南-CSDN博客

安装nvidia-docker_nvidia-docker安装-CSDN博客

Pangolin 安装和配置指南-CSDN博客

//

一.构建

1.清除构建(build路径)

bash 复制代码
rm -rf 

2.重新构建

bash 复制代码
cmake ..

make -j$(nproc)

3.构建成功

二.运行

tips:别忘了先创建一个csv文件夹

1.运行命令(按需修改数据路径)

bash 复制代码
./DynSLAMGUI --dataset_root=/home/huang/Data/dynslam/mini-seq-06 --dataset_type=kitti-odometry

2.运行完毕

3.GUI界面

  1. 左侧控制面板

    • 包含一系列操作按钮和选项,用于控制 DynSLAM 的行为。
    • [N]ext Frame:跳转到下一帧。
    • [S]ave Static Map:保存静态地图。
    • Force cleanup of current instance:强制清理当前实例。
    • Rec:显示当前活动重建的数量。
    • Previous Object [z]Ne[x]t Object:在对象之间导航。
    • Save Active [o]bject:保存当前活动对象。
    • [Q]uit:退出程序。
    • Previous Preview Type [j]Next Preview Type [k]:切换预览类型。
    • Map Voxel [G]Raw Previews:可能是查看地图体素和原始预览的选项。
    • Show Scene Flow:显示场景流,可能用于可视化相机的运动轨迹或特征点的流动。
  2. 顶部预览窗口

    • 显示当前处理的帧(Frame #97)。
    • 提供一个自由相机预览,可能用于在 3D 地图中导航。
  3. 中心图像

    • 显示立体相机的一对立体图像,用于深度估计和地图构建。
  4. 右侧 3D 视图

    • 显示通过 DynSLAM 重建的 3D 地图。颜色编码可能表示不同的权重或不确定性,例如,红色可能表示低权重区域,蓝色表示高权重区域。
  5. 底部图表

    • 显示内存使用情况和活动跟踪的数量。
    • Free GPU Memory (100s of MiB):显示 GPU 的剩余内存。
    • Static map memory usage (100s of MiB):显示静态地图的内存使用量。
    • Static map memory usage without decay (100s of MiB):显示没有衰减的静态地图内存使用量。
    • Active tracks:显示活动跟踪的数量。

DynSLAM GUI 界面中的各个部分输出如下:

  1. 左侧控制面板

    • 这是用户与 DynSLAM 交互的界面,不直接输出数据,但提供控制命令。
  2. 顶部预览窗口

    • 显示当前处理的帧的立体图像或3D视图,用于直观展示当前帧的相机视角或重建的3D视图。
  3. 中心图像

    • 立体图像:一对立体图像,用于深度估计。
    • 彩色图像:可能是单目相机图像或立体图像中的一个。
  4. 右侧3D 视图

    • 显示通过 DynSLAM 重建的3D 地图。颜色编码表示体素的权重或不确定性,红色可能表示低权重或噪声区域,蓝色表示高权重或系统更有信心的区域。
  5. 底部图表

    • Free GPU Memory (100s of MiB):显示 GPU 剩余内存量,单位是 MiB 的百分之一。
    • Static map memory usage (100s of MiB):显示静态地图使用的内存量,单位是 MiB 的百分之一。
    • Static map memory usage without decay (100s of MiB):显示没有考虑内存衰减(可能指未释放不再需要的内存)的静态地图内存使用量。
    • Active tracks:显示当前活跃的跟踪数量,即 DynSLAM 正在处理的特征点或物体的数量。

这些输出为用户监控和调试 DynSLAM 的运行状态提供了可视化信息。例如,用户可以通过观察内存使用情况来评估是否需要优化算法或增加硬件资源。通过3D视图,用户可以直观地看到重建的地图质量,并通过控制面板进行交互式操作,如切换到下一帧或保存当前的重建结果。

4.让程序自动运行,需要在启动的时候设置参数(--autoplay=true)

bash 复制代码
./DynSLAMGUI --use_dispnet --dataset_root=/home/huang/Data/dynslam/mini-seq-06 --dataset_type=kitti-odometry
  • ./DynSLAMGUI:执行位于当前目录(~/Code/Open/DynSLAM/build)下的 DynSLAM GUI 可执行文件。
  • --use_dispnet:指示使用 DispNet 网络来估计深度信息。
  • --dataset_root=/home/huang/Data/dynslam/mini-seq-06:指定数据集的根目录为新路径。
  • --dataset_type=kitti-odometry:指定数据集类型为 KITTI 里程计数据。
相关推荐
一弓虽38 分钟前
git 学习
git·学习
冷凌爱2 小时前
总结HTML中的文本标签
前端·笔记·html
保持学习ing2 小时前
黑马Java面试笔记之 集合篇(算法复杂度+ArrayList+LinkedList)
java·笔记·算法·面试
Moonnnn.3 小时前
【单片机期末】串行口循环缓冲区发送
笔记·单片机·嵌入式硬件·学习
viperrrrrrrrrr73 小时前
大数据学习(131)-Hive数据分析函数总结
大数据·hive·学习
fen_fen4 小时前
学习笔记(26):线性代数-张量的降维求和,简单示例
笔记·学习·算法
FakeOccupational4 小时前
【p2p、分布式,区块链笔记 MESH】Bluetooth蓝牙通信 BLE Mesh协议的拓扑结构 & 定向转发机制
笔记·分布式·p2p
布伦鸽6 小时前
C# WPF 左右布局实现学习笔记(1)
笔记·学习·c#·wpf
love530love6 小时前
【笔记】旧版MSYS2 环境中 Rust 升级问题及解决过程
开发语言·人工智能·windows·笔记·python·rust·virtualenv
超级土豆粉7 小时前
从0到1写一个适用于Node.js的User Agent生成库
linux·ubuntu·node.js