0. 简介
对于点云的深度学习分割而言,其中主要组成部分为两块,一个是点云bin文件,一个是特征的label文件,而point_labeler这个点云标注工具就能很好的让我们去标注自身想要的数据集。下面我们将来详细的介绍point_labeler这个工具的使用方法。
1. 环境安装
环境依赖:
- catkin
- Eigen >= 3.2
- boost >= 1.54
- QT >= 5.2
- OpenGL Core Profile >= 4.0
- glow (catkin package)
这里请各位自己对照版本,这个点云标注工具依赖ROS1,也就是说支持Ubuntu 16.04和18.04两个版本的ROS,并确保确保安装了catkin工具:
sudo apt install git libeigen3-dev libboost-all-dev qtbase5-dev libglew-dev catkin
sudo apt install python-pip
sudo pip install catkin_tools catkin_tools_fetch empy
然后创建一个ROS的工作空间:
mkdir catkin_ws
cd catkin_ws
mkdir src
catkin init
cd ~/catkin_ws/src
git clone https://github.com/jbehley/point_labeler.git
然后下载附加的依赖项,并编译该项目:
catkin deps fetch
catkin build point_labeler
如果出现某些包找不到的情况可以尝试着源码下载编译,提示找不到时候可以检查/usr和/usr/local是否装了不同版本,并删除其中一个
sudo rm -rf /usr/local/include/boost/
sudo rm -rf /usr/local/lib/libboost_*
#并在CmakeList中指派
set(BOOST_DIR /home/westwell/boost_1_57_0/lib)
2. 软件使用
现在,项目根目录(例如~/catkin_ws/src/point_labeler)应该包含一个包含labeler的bin目录。
到这一步环境就全部装完了,下面是在 bin 目录下,只需运行 ./labeler 即可启动标注工具。
该标记工具允许以基于tile-based的形式标记一系列点云,即该工具加载与当前tile-based重叠的所有扫描区域。 因此,您将始终标记与当前图块重叠的扫描部分。
在 settings.cfg 文件中,可以更改以下选项:
tile size: 100.0 #平铺的大小(越小,加载的扫描越少。)
max scans: 500 # 为磁贴加载的扫描次数。 (应该可能是 1000),但这目前非常消耗内存。
min range: 0.0 # 要考虑的点的最小距离。
max range: 50.0 # 点云中点的最大距离。
add car points: true # 在传感器原点添加点,可能是汽车本身造成的。 默认值:假。
文件夹结构
point cloud folder
├── velodyne/ -- 目录包含“.bin”文件内部存有 Velodyne 点云。
├── labels/ [optional] -- 标签目录,将生成,如果不存在。
├── image_2/ [optional] -- 目录包含从相机中获取的“.png”文件。
├── calib.txt -- 摄像机的校准与速度校准。需要将点云投影到相机中。
└── poses.txt -- 包含每次扫描姿势的文件。
其中calib.txt 和poses.txt 是用来连续帧标注中使用,这里可以只提供一个pose进行单独标注
点云显示在主视图 (1) 中,您还可以在其中使用鼠标导航以更近距离地查看点云。 标签在框 (2) 中被选中,当前选中的标签由按下的按钮显示。 您还可以使用 CTRL 并单击按钮来选择要过滤的标签。 时间线 (3) 使您能够选择特定的激光扫描,但仅当您从 (2) 的 Visuals 选项卡中选择显示单次扫描时才可见。 瓦片选择器 (4) 用于从较大的点云中选择瓦片。 (5) 中的按钮用于打开、保存图块、恢复等。
最终自己标注如下图,,经过测试如果在短距离精度难以满足需求的情况下,最好单张标注,否则多帧会模糊不清,这里建议单帧标注,即poses.txt当中只存在一个位姿。
poses.txt和calib.txt如下图所示
3. 参考链接
https://blog.csdn.net/qq_41295858/article/details/123991374
评论(0)
您还未登录,请登录后发表或查看评论