参考:https://blog.csdn.net/qq_42262078/article/details/130575984

目录

1. 安装Docker

2. apt更换国内镜像源

3. 拉取vins-fusion的image

4. 文件检查

5. 完整运行流程​​

​终端1:启动 RVIZ​​

​终端2:运行 VINS 节点​​

​终端3:播放数据集​​

6. 运行结果

1. 安装Docker

参考:https://yeasy.gitbook.io/docker_practice/install/ubuntu

2. apt更换国内镜像源

参考:https://blog.csdn.net/carefree2005/article/details/134133077 

3. 拉取vins-fusion的image

  • 选择自带数据集的vins-fusion
docker pull jianchong/vins-fusion

4. 文件检查

​这里需要注意的是:下载好并运行的vins-fusion本身就是一个完整的编译好的container,不需要再次编译,也不需要使用vins-fusion源文件中的Dockerfile进行make build,因此使用时运行的是通过catkin_make编译而成的launch文件,而不是docker文件夹里的run.sh。

        4.1 确认 Docker 容器内的文件位置​​

  • 进入容器后,关键目录如下:
# 查看自己的容器ID
# docker ps

# 进入容器
docker exec -it <container ID> /bin/bash #<container ID>为自己的容器ID

# 检查 VINS-Fusion 源码位置
ls ~/catkin_ws/src/VINS-Fusion/

# 检查数据集位置
ls ~/catkin_ws/data/  # 应包含 MH_01_easy.bag

# 检查编译后的环境
ls ~/catkin_ws/devel/  # 应包含 setup.bash

        ​4.2 如果 devel/setup.bash 不存在​​

  • 说明镜像未预编译,需手动编译:
cd ~/catkin_ws
catkin_make            # 编译
source devel/setup.bash # 加载环境

5. 完整运行流程​​

​终端1:启动 RVIZ​​
docker exec -it <container ID> /bin/bash #<container ID>为自己的容器ID
cd ~/catkin_ws
source devel/setup.bash
roslaunch vins vins_rviz.launch
​终端2:运行 VINS 节点​​
docker exec -it <container ID> /bin/bash #<container ID>为自己的容器ID
cd ~/catkin_ws
source devel/setup.bash
rosrun vins vins_node ~/catkin_ws/src/VINS-Fusion/config/euroc/euroc_stereo_imu_config.yaml
​终端3:播放数据集​​
docker exec -it <container ID> /bin/bash #<container ID>为自己的容器ID
rosbag play ~/catkin_ws/data/MH_01_easy.bag

6. 运行结果

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐