less than 1 minute read

  • ring描述子复现

1. 项目基本信息

  • 系统:Ubuntu 20.04
  • ROS 版本:Noetic
  • 项目地址https://github.com/lus6-Jenny/RING
  • 这是我的复现过程记录,并非教程,因此会有一些不必要的操作

2. 本地复现

sd10@sd10-MS-7D76:~$ nvidia-smi
Sat Mar  8 19:05:14 2025       
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 535.216.03             Driver Version: 535.216.03   CUDA Version: 12.2     |
|-----------------------------------------+----------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |

3. docker复现

  • 拉取镜像:
    docker pull lus6/ring:noetic
    
  • 运行
    docker run -itd --gpus all --network host --name ring lus6/ring:noetic
    
  • 如果退出后 docker start ring 然后再 docker exec -it ring bash
  • 测试:python3 test.py 输出

  • 在docker中安装必要的软件:apt update && apt install -y libgl1-mesa-glx x11-apps , 之后测试可以了 成功图片

4. NCLT Dataset数据集下载

  • NCLT Dataset下载直接下载或者官方提供的脚本下载:downloader.py
  • 注意要把脚本中的 base_dir = 'http://robots.engin.umich.edu/nclt' 网址改为 https://s3.us-east-2.amazonaws.com/nclt.perl.engin.umich.edu
  • 然后按照教程下载即可 python2 ./downloader.py --date="2013-01-10" –all
  • 代理要开全局模式

5. 其他命令

  • 退出容器exit或者在另一终端停止:docker stop ring # 如果你的容器名是 ring或者直接容器ID
  • 在宿主机启用 X11 访问 xhost +local:root
  • 使用 -e DISPLAY 和 -v /tmp/.X11-unix:/tmp/.X11-unix 运行docker:docker run -itd --gpus all --network host -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix --name ring lus6/ring:noetic
  • 挂载宿主机的数据集目录:docker run -it --gpus all --network host -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix -v /home/sd10/Downloads/ring/:/home/RING/data --name ring lus6/ring:noetic