地址为:https://github.com/jbehley/point_labeler
用于标记单个点云或点云流的工具。
给定KITTI点云数据集的姿态,我们加载重叠点云的贴图。因此,在一个特定的区域内,多个点云被同时标记。(类似与对SLAM图进行标记)
特点
支持KITTI视觉基准点云。
xml中的可读标签描述文件允许定义标签名称、id和颜色。
现代OpenGL着色器甚至可以渲染数百万个点。
用于标记单个点和多边形的工具。
标签的过滤使得即使是复杂的结构也可以轻松地进行标签。
依赖
build
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
cd
mkdir catkin_ws
cd catkin_ws
mkdir src
catkin init
cd src
git clone https://github.com/ros/catkin.git
cd ~/catkin_ws/src
git clone https://github.com/jbehley/point_labeler.git
catkin deps fetch
catkin build point_labeler
使用
在bin目录下,运行./labeler启动标签工具。
该标记工具允许以基于瓦的方式标记点云序列,即,该工具加载与当前瓦位置重叠的所有扫描。因此,您将始终标记与当前贴图重叠的扫描部分。
在settings.cfg文件中,您可以更改以下选项:
tile size: 100.0 # 100.0 #贴图大小(越小加载的扫描次数越少)
max scans: 500 # 扫描次数加载一个贴图。(应该是1000),但目前这非常消耗内存。
min range: 0.0 # 考虑点的最小距离
max range: 50.0 # 点云中点的最大距离。
add car points: true # 添加可能由汽车本身引起的传感器原点点数。默认值:false。
文件结构
When loading a dataset, the data must be organized as follows:
文档介绍
在下面,我们将使用LMB作为鼠标左键,MMB作为鼠标中键,RMB作为鼠标右键。通常情况下,这意味着您可以通过点击相应的按钮来激活功能。
点云显示在主视图(1)中,您还可以用鼠标导航以获得点云的近距离视图。标签在框(2)中被选中,按下按钮显示当前选中的标签。还可以使用CTRL和单击按钮来选择要筛选的标签。时间轴(3)允许你选择特定的激光扫描,但这只有在你从(2)的Visuals选项卡中选择显示单个扫描时才可见。tile selector(4)用于从更大的点云中选择一个tile。(5)中的按钮用于打开、保存贴图、返回等。
点云中的导航
在tile坐标系中,有三个彩色向量对应于:
x方向的红色向量
y方向的绿色向量
蓝色的z方向向量
在控制台输出中,您将看到当前选择的tile的tile坐标。例如,200,-100,50表示x = 200(红色方向)的瓷砖,y = -100(绿色方向)的tile大小为50。
tile选择
由于整个点云包含数十亿个点,我们使用一个贴图来表示点云的一小部分。在左边的贴图选择视图中,你可以选择正方形来加载所选贴图内的所有点。当前选中的贴图用橙色边框突出显示。
穿过 tile的红线显示了汽车在场景中行驶的路径。
移动相机
你必须按住ctrl键才能在场景中移动。即使有画笔或多边形工具选择,移动仍然是可能的。
使用
通过上述链接下载
下载依赖
编译
/home/pf/Open_Code/PointLabeler_ws/devel/.private/glow/lib/libglow.so:对‘boost::filesystem::path::filename() const’未定义的引用
看问题是动态库没有找到这个库
按照源码readme中的要求 重新下载sudo apt install git libboost-all-dev
此时提示库已存在且是最新
分析:有可能是存在多个库导致系统不知道应该链接到哪个 需要了解find_package到底是如何工作 学习(Cmake之深入理解find_package()的用法 - 希葛格的韩少君的文章 - 知乎
https://zhuanlan.zhihu.com/p/97369704)
重新catkin build point_labeler
仍然出现未定义引用该问题
卸载上述方法下载的boost
编译仍存在该问题–尝试另一种方法打印编译信息
使用catkin_make 编译时可以看出 找到的boost是 链接到了 /home/pf/anaconda3/lib/cmake/boost_headers-1.70.0
分析 可能是虚拟环境的问题–退出虚拟base环境
编译未通过
分析可能是catkin包的问题
安装指南中需要下载一个catkin-但是我的电脑已经存在
将src中的catkin包删除, 找到的包链接到本地库Boost version: 1.65.1
重新使用catkin build point_labeler 编译
编译通过!!
加载文件
运行./labeler
打开WADS下的某个文件要包含poses.txt文件
这是我加载出来的带有降雪标签和积雪标签(unlabeled)的点云图