三维点云——数据标注

三维点云——数据标注数据处理 点云数据标注欢迎使用 Markdown 编辑器一 标注工具功能快捷键合理的创建标题 有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中 居左 居右 SmartyPants 创建一个自定义列表如何创建一个注脚注释也是必不可少的 KaTeX 数学公式新的甘特图功能 丰富你的文章 UML 图表 FLowchart 流程图导出与导入导出导入欢迎使

三维点云数据标注

应该有很多刚开始接触三维深度学习的同学,都被安排过标注数据的工作,找到合适的标注方式是一个很困难的事情,博主在找标注工具的时候,几乎尝试过目前所有的标注工具,例如目前比较热门的PCAT_Open_Source, Semantic-Segmentation-Editor,此类软件比较优秀但也有一些弊端,例如安装步骤复杂,使用方式模糊不清,对于刚入门的科研小白极不友好,Lidar360包含了丰富的点云数据处理工具集, 但是不能用于点云精确标注,还有一些其他不是很主流的标注工具,也几乎都处于安装后也不能用于标注的状态。经过对比,选择了CloudCompare作为最终的标注工具,安装方式简单,标注流程清晰,标注后的可视化效果直观。下面是博主写的一份标注教程,已经尽量把所有可能遇到的困难都提示到了,请注意细节, 并看完整份标注教程再进行标注,避免出现错误,科研是份细腻的工作,标注亦是!

一.标注工具

CloudCompare2.9.0

下载链接:
https://pan.baidu.com/s/1sjnu3pHXu-3vaRaK1LC8-g

使用教程:
https://blog.csdn.net/datase/article/details/

二.标签

Objects Label ID
其他 (e.g., 垃圾桶…) 0
路面 1
路面标志 (e.g., 斑马线,虚线,实线和箭头…) 2
3
建筑物 4
传输线(电线…) 5
杆 (e.g., 交通灯和灯杆…) 6
道路使用者 (e.g., 汽车和行人…) 7
围栏 8

三.标注步骤

3.1 导入数据

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


3.2 框选标注区域

勾选并点击数据(呈蓝色状),未点击会出现不能框选现象:
在这里插入图片描述
Edit->Segment选中要标注的局域(绿色框):

在这里插入图片描述
点击右上方的Segment in按钮得到标注区域:

在这里插入图片描述

点击Confirm Segmentation按钮保存:

在这里插入图片描述

目录会多一行数据,为刚才切割的部分:

在这里插入图片描述

取消原数据的勾选,单选切割部分的点云数据,界面会只显示切割部分:

在这里插入图片描述

3.3 对框选数据添加标签

工具栏操作:Edit -> Scalar fields ->Add constant SF 输入label:

在这里插入图片描述
建筑物的labelid为4,则填入4:

在这里插入图片描述
点击ok,观察到Scalar Fields下的Count值变为7(Count代表数据的标量数目,此份数据初始值为6,以下的举例都是以6作为基准,实际情况自行参考自己的数据集,每份数据的初始值不同。),标注的建筑物变为蓝色:

在这里插入图片描述
勾选全部数据,可观察到标记部分在全部数据中的显示效果:
在这里插入图片描述
至此一次标注结束。


3.4 合并标注数据

若要进行第二次标注,只需勾选未标注的数据,不勾选已经标注的数据,防止重复标注。可观察到已标注过的数据不显示。

在这里插入图片描述

未标注数据的Scalar Fields下的Count值一定是6(每份数据Count值不同,此处6作为一个初始Count的基准),若不是6,考虑是否在对已框选数据标注的过程,把未框选数据部分也勾选了,解决方案:选中未标注数据,Edit -> Scalar fields ->Delete,Scalar fields的Count会由7变为最初始的6。

在这里插入图片描述
重复3.2操作,框选路面,得到下图:

在这里插入图片描述
重复3.3操作,对路面进行标注,注意,只需勾选路面对应的数据并点击:

在这里插入图片描述
标注后观察到:
在这里插入图片描述
勾选全部数据,可发现不同标签的数据会显示不同颜色:
在这里插入图片描述
此处只做两个标签的数据合并展示,亦可多次进行3.2,3.3操作后再合并:
在这里插入图片描述
点击Merge Multiple clouds按钮合并:
在这里插入图片描述
得到一份数据:
在这里插入图片描述
此处可发现建筑物部分标注有误差,解决方案参考第五部分。建议确保每一类别数据标注准确后再合并不同类别数据,避免增加多余工作量。










3.5 数据保存与重新打开

在这里插入图片描述
记事本最后一列为标签:
在这里插入图片描述
重新导入这两份数据:
在这里插入图片描述
选中已经被标注的数据,将Colors设置为Scalar field,并将Active设为#7,可观察到不同标签的数据显示结果。




在这里插入图片描述
重复以上步骤,直到全部数据标注完成,合并为一份数据。

数据可能会如上图显示,将Colors设置为Scalar field,并将Active设为#7。

四.标注视频

链接:https://pan.baidu.com/s/1qs9UPtXP0r7E6Z9m2F9A7g
提取码:vygu

五.错误解决

标注一棵树,但是树底部草坪部分也被选中:

在这里插入图片描述
遵循步骤3.2,把树底部草坪部分切割出来,得到:
在这里插入图片描述

删除草坪部分错误的标签信息 Edit -> Scalar fields ->Delete,Scalar fields的Count由7变为最初始的6:

在这里插入图片描述
对草坪部分重新标注,重复标注步骤3.3:
在这里插入图片描述
草坪属于是others,输入0:
在这里插入图片描述
观察到,标签已经区分出来:




在这里插入图片描述

六.注意事项

  1. 标注过程中不断旋转数据集方向,保证每个点精确定位到每个类别。
  2. 滑动鼠标滑轮可放大缩小数据显示界面,点击界面按住鼠标左键拖动鼠标可旋转方向。
  3. 数据集周围分辨不清类别的点为噪声点,可忽略。
  4. 将Colors设置为RGB,数据集可恢复原始颜色。
  5. 关闭CloudCompare后所有标注都会消失,所以标注完成后的数据需保存到本地。
  6. 对于数据保存后重新打开,继续标注时,两个count值为7的数据合并后变成了一整个count值为8的数据,解决方案,标注时在SF name中输入Scalar field #7而不是label 。

七.可视化效果

在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/227894.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月16日 下午8:16
下一篇 2026年3月16日 下午8:17


相关推荐

  • logstash配置文件说明

    logstash配置文件说明logstash 配置语句详解 logstash 配置文件包含三个配置部分 分别为 input filter output 定义区域 区域内可以定义一个或多个插件 通过插件对数据进行收集 加工处理 输出 数据类型 布尔值类型 ssl enable gt true 字节类型 bytes gt 1MiB 字符串类型 name gt xkops 数值类型 port gt 22 数组 match gt datetime UNIX 哈希

    2026年3月18日
    2
  • Java 装饰模式 (Decorator)「建议收藏」

    Java 装饰模式 (Decorator)

    2022年2月4日
    45
  • checkbox选中和不选中 jqu_jquery checkbox 选中不选中

    checkbox选中和不选中 jqu_jquery checkbox 选中不选中展开全部$(function(){//动态绑定默认状态//$(“#ck”).attr(“checked”,true)//选中//$(“#ck”).attr(“checked”,false)//未选中//点击判断选中还是未选中$(“#ck”).click(function(){if($(this).is(“:checked”)){alert(“选中”);}else{alert…

    2022年6月30日
    36
  • Java线程(七):Callable和Future

    Java线程(七):Callable和Future接着上一篇继续并发包的学习 本篇说明的是 Callable 和 Future 它俩很有意思的 一个产生结果 一个拿到结果 Callable 接口类似于 Runnable 从名字就可以看出来了 但是 Runnable 不会返回结果 并且无法抛出返回结果的异常 而 Callable 功能更强大一些 被线程执行后 可以返回值 这个返回值可以被 Future 拿到 也就是说 Future 可以拿到异步执行任务的返

    2026年3月19日
    1
  • Java 分布式解决方案

    Java 分布式解决方案文章目录一、基础知识1.CAP理论2.BASE理论一、基础知识1.CAP理论CAP是Consistency、Availability、Partitiontolerance三个词语的缩写,分别表示一致性、可用性、分区容忍性Consistency一致性一致性是指写操作后的读操作可以读取到最新的数据状态,当数据分布在多个节点上,从任意结点读取到的数据都是最新的状态。Availability可用性可用性是指任何事务操作都可以得到响应结果,且不会出现响应超时或响应错误。Partitio

    2022年5月28日
    35
  • C语言scanf函数用法详细解释!

    C语言scanf函数用法详细解释!函数名 scanf nbsp 功能 执行格式化输入 nbsp 用法 intscanf char format argument scanf 函数是通用终端格式化输入函数 它从标准输入设备 键盘 读取输入的信息 可以读入任何固有类型的数据并自动把数值变换成适当的机内格式 其调用格式为 nbsp nbsp nbsp scanf lt 格式化字符串 gt lt 地址表 gt scanf 函数返

    2026年3月26日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号