当前位置:   article > 正文

基于深度学习的点云分割网络及点云分割数据集

云数据集的零件特征识别方法

作者丨泡椒味的泡泡糖

来源丨深蓝AI

引言

点云分割是根据空间、几何和纹理等特征对点云进行划分,使得同一划分内的点云拥有相似的特征。点云的有效分割是许多应用的前提,例如在三维重建领域,需要对场景内的物体首先进行分类处理,然后才能进行后期的识别和重建。传统的点云分割主要依赖聚类算法和基于随机采样一致性的分割算法,在很多技术上得到了广泛应用,但当点云规模不断增大时,传统的分割算法已经很难满足实际需要,这时就需要结合深度学习进行分割。本文将重点介绍5种前沿的点云分割网络,包括PointNet/PointNet++、PCT、Cylinder以及JSNet网络,最后介绍5中常用的点云分割数据集。

1. PointNet/PointNet++

说起点云分割网络,就不得不介绍PointNet,它来源于CVPR的论文“Deep Learning on Point Sets for 3D Classification and Segmentation”。PointNet是首个输入3D点云输出分割结果的深度学习网络,属于开山之作,成为了后续很多工作的BaseLine,网络的总体结构如图1所示。

205f5df7e67e87e55d191dc27b71869c.png

图1 PointNet网络

整体的PointNet网络中,除了点云的感知以外,还有T-Net,即3D空间变换矩阵预测网络,这主要是由于点云分类的旋转不变性,当一个N×D在N的维度上随意的打乱之后,其表述的其实是同一个物体,因此针对点云的置换不变性,其设计的网络必须是一个对称的函数。

在PointNet网络中,对于每一个N×3的点云输入,网络先通过一个T-Net将其在空间上对齐(旋转到正面),再通过MLP将其映射到64维的空间上,再进行对齐,最后映射到1024维的空间上。这时对于每一个点,都有一个1024维的向量表征,而这样的向量表征对于一个3维的点云明显是冗余的,因此这个时候引入最大池化操作,将1024维所有通道上都只保留最大的那一个,这样得到的1×1024的向量就是N个点云的全局特征。

PointNet网络在ShapeNet数据集上的实验效果如表1所示,可以看出,大多数分割都取得了SOAT效果。部分分割结果如图2所示,可以看出分割结果相当平稳,并且具有很强的鲁棒性。

表1 PointNet在ShapeNet上的分割效果对比

6997955ef5844625eb30d6122cd3036a.png

fccee83e8d175827c1b30d4d5508b260.png

图2 PointNet部分分割结果

PointNet++主要是为了克服PointNet自身的一些缺点,其中最大的缺点就是缺失局部特征。由于PointNet直接暴力地将所有的点最大池化为一个全局特征,因此局部点与点之间的联系并没有被网络学习到。在分类和物体的Part Segmentation中,这样的问题还可以通过中心化物体的坐标轴部分地解决,但在场景分割中,这就会导致效果变差。

为了克服PointNet的缺点,作者在PointNet++中主要借鉴了CNN的多层感受野的思想。CNN通过分层不断地使用卷积核扫描图像上的像素并做内积,使得越到后面的特征图感受野越大,同时每个像素包含的信息也越多。而PointNet++就是仿照了这样的结构,先通过在整个点云的局部采样并划一个范围,将里面的点作为局部的特征,用PointNet进行一次特征的提取。因此,通过了多次这样的操作以后,原本的点的个数变得越来越少,而每个点都是有上一层更多的点通过PointNet提取出来的局部特征,也就是每个点包含的信息变多了。

PointNet++的网络结构如图3所示,同时作者对比了PointNet和PointNet++的分割效果如图4所示,可见PointNet++的效果全面优于PointNet。

6ab7b3a59476114c96701e217fe68327.png

图3 PointNet++网络结构

b2e08ab1156defb4662be1c06f8ae0a8.png

图4 PointNet++分割结果

2. PCT网络

近年来,NLP领域的Transformer大火,同时也有大量学者将其从NLP领域迁移到图像和点云领域。清华大学将Transformer应用于3D点云分割技术,设计了全新的PCT(Point Cloud Transformer)网络,其网络结构如图5所示。

a8cb38c72fd91d696b3a0bb8b71bb80a.png

图5 PCT网络结构

PCT应用Transformer进行点云分割的具体原理如图6所示,其中星号代表Transformer的查询向量,黄色到蓝色代表注意力权重逐渐增加,最后一列代表分割结果。

f98d6b74818492dd74a7caa190066f47.png

图6 PCT点云分割原理

为了更好地捕获点云中的local context,作者在最远点采样和最近邻居搜索的支持下增强了输入嵌入,同时Transformer在点云分割领域的成功,也逐渐打通了NLP、图像、点云等不同领域的壁垒,对于“模型大一统”具有重要意义。PCT点云分割与其他分割算法的对比如图7所示,大量的实验表明,PCT在形状分类,part分割和法向量估算任务方面达到了最先进的性能。

5e54b9b9b8cdb9a9328534f34fbc0acf.png

图6 PCT点云分割效果与其他算法对比

3. Cylinder网络

Cylinder网络来源于CVPR论文“Cylindrical and Asymmetrical 3D Convolution Networks for LiDAR Segmentation”,Cylinder网络结构如图7所示。Cylinder网络由圆柱坐标体素划分和非对称3D卷积网络组成,作者认为圆柱分割可以有效提高分割精度,此外作者还引入了一个point-wise模块来改进体素块输出,提高辨识精度。

39d9ab66d3a0d7aeb43f9aba48d00e53.png

图7 Cylinder网络结构

作者认为基于柱坐标的voxel的划分,可以与激光雷达扫描过程保持一致。进而有效地减少空voxel的比率。此外,作者将Cylinder网络在两个大型室外场景数据集(SemanticKITTI和nuScenes)上进行了评估,评估效果对比如表2和表3所示。评估显示,在SemanticKITTI数据集上,Cylinder网络排名第一。在nuScenes数据集上,新方法的表现也大大超过了之前的方法。

表2 Cylinder网络在SemanticKITTI数据集上的对比效果

848519ea9519016622eb685849cefba2.png

表3 Cylinder网络在nuScenes数据集上的对比效果

a6e0e438a177fa13bea6293b037761a7.png

4. JSNet网络

JSNet来源于AAAI论文“JSNet: Joint Instance and Semantic Segmentation of 3D Point Clouds”,JSNet可以同时解决3D点云的实例和语义分割问题,其网络结构如图8所示。

d40b08544fb3cac808cc77bf4822e4f3.png

图8 JSNet网络结构

JSNet首先建立有效的骨干网络,以从原始点云数据中提取鲁棒的特征。其次为了获得更多的判别特征,提出了一种点云特征融合模块来融合骨干网的不同层特征。此外,JSNet开发了联合实例语义分割模块以将语义特征转换为实例嵌入空间,然后将转换后的特征进一步与实例特征融合以促进实例分割。同时,该模块还将实例特征聚合到语义特征空间中,以促进语义分割。最后,JSNet通过对实例嵌入应用简单的均值漂移聚类来生成实例预测。

如表4和表5所示是JSNet网络在大型3D室内点云数据集S3DIS上的评估结果,图9是JSNet网络的分割效果。实验结果表明,JSNet网络在3D实例分割中的性能优于最新方法,在3D语义预测方面有重大改进,同时有利于零件分割。

表4 JSNet网络在S3DIS数据集上的实例分割结果

3cc15dea350ab08424d8f2c565c72722.png

表5 JSNet网络在S3DIS数据集上的语义分割结果

aebc8681e6525fa59e728a9dac6a459f.png

1e49dc221e326572b18deaf9bdd0d662.png

图9 JSNet网络的分割效果

5. 点云分割数据集

深度神经网络的训练往往需要大量的数据集,同时深度神经网络性能的优劣也往往是在公开数据集上进行评估,因此选择合适的数据集至关重要。常用的点云分割数据集主要有如下几个:

5.1 Semantic3D

经典的大型室外场景点云分割数据集,由激光雷达扫描周围场景得到。Semantic3D提供了一个带有大标签的自然场景的3D点云数据集,总计超过40亿个点,8个类别标签。

数据集包含了各种城市和乡村场景,如农场,市政厅,运动场,城堡和广场。该数据集包含15个训练数据集和15个测试数据集,另外还包括4个缩减了的测试数据集。数据集中的点都含有RGB和深度信息,并被标记为8个语义类别,分别是1:人造地形;2:自然地形;3:高植被;4:低植被;5:建筑物;6:硬景观;7:扫描人工制品,8:汽车,附加标签0:未标记点,标记没有地面真值的点。

数据集地址:http://www.semantic3d.net/

24b8625277bef7c5181bb7a16ed77b5a.png 

 b418d3391d3209f7aa731ee9dde03397.png

5.2 S3DIS

S3DIS数据集是斯坦福大学开发的带有像素级语义标注的语义数据集,是常用的室内场景分割数据集,使用Matterport相机收集数据,包含6个Area,13个语义元素,11种场景。

其中13个语义元素分别包括:天花板ceiling、地板floor、墙壁wall、梁beam、柱column、窗window、门door、桌子table、椅子chair、沙发sofa、书柜bookcase、板board、混杂元素(其他)clutter;11种场景分别包括办公室office、会议室conference room、走廊hallway、礼堂auditorium、开放空间open space、大堂lobby、休息室lounge、储藏室pantry、复印室copy room、储藏室storage和卫生间WC。

数据集地址:http://buildingparser.stanford.edu/dataset.html

7679e473a7fa1990b2ab21f4dff93910.png

 f35fa1a00f4e022b009bc97de23c2c63.png

5.3 SemanticKITTI

SemanticKITTI数据集是一个基于KITTI Vision Benchmark里程计数据集的大型户外点云数据集,显示了市中心的交通、住宅区,以及德国卡尔斯鲁厄周围的高速公路场景和乡村道路。原始里程计数据集由22个序列组成,作者将序列00到10拆分为训练集,将11到21拆分为测试集,并且为了与原始基准保持一致,作者对训练和测试集采用相同的划分,采用和KITTI数据集相同的标定方法,这使得该数据集和KITTI数据集等数据集可以通用。

SemanticKITTI数据集作者提供了精确的序列扫描注释,并且在点注释中显示了前所未有的细节,包含28个类,确保了类与Mapillary Visiotas数据集和Cityscapes数据集有很大的重叠,并在必要时进行了修改,以考虑稀疏性和垂直视野。

数据集地址:http://www.semantic-kitti.org/index.html

b8935a51916ba0e67debc46bba718e97.png

5.4 ShapeNet

ShapeNet数据集是一个由对象的三维CAD模型表示的形状存储库,注释丰富,规模较大。ShapeNet包含来自多种语义类别的3D模型,并按照WordNet分类法组织,能够完成部件分割任务,即不仅知道这个点云数据大的分割,还要将它的小部件进行分割。它总共包括十六个大的类别,每个大的类别有可以分成若干个小类别,十六个类别具体包括:飞机Airplane、包Bag、帽子Cap、汽车Car、椅子Chair、耳机Earphone、吉他Guitar、刀Knife、灯Lamp、电脑Laptop、摩托车Motorbike、杯子Mug、手枪Pistol、火箭Rocket、滑板Skateboard、桌子Table。

数据集地址:https://www.shapenet.org/

d6f3017b5bba4b988316c973ed6028cd.png

 0d2d47546cb9449c54b7a5155f351b84.png

5.5 PartNet

PartNet数据集是用于细粒度和分层零件级3D对象理解的大规模基准。数据集包含573585个零件实例,涵盖26671个3D模型,涵盖24个对象类别。PartNet数据集启用并充当许多任务的催化剂,例如形状分析,动态3D场景建模和仿真,可负担性分析等。数据集建立了用于评估3D零件识别的三个基准测试任务:细粒度语义分割,分层语义分割和实例分割。

数据集地址:https://shapenet.org/download/parts

9c4dad2ec2987a17a7fd4c55bc346423.png

6. 总结

近年来,随着自动驾驶和三维重建技术的不断发展,需要处理的点云规模越来越庞大,传统的聚类算法和基于随机采样一致性的分割算法较难满足实时性和精度要求。而基于深度学习的点云分割网络较好地解决了上述问题,本文重点介绍了几种前沿的点云分割网络,包括PointNet/PointNet++、PCT、Cylinder以及JSNet网络,并介绍了5种常用的点云分割数据集。读者在应用深度学习进行点云分割或设计点云分割网络时,要根据自身需求和实际工况,有针对地选择合适的点云分割网络和数据集。

本文仅做学术分享,如有侵权,请联系删文。

3D视觉工坊精品课程官网:3dcver.com

1.面向自动驾驶领域的多传感器数据融合技术

2.面向自动驾驶领域的3D点云目标检测全栈学习路线!(单模态+多模态/数据+代码)
3.彻底搞透视觉三维重建:原理剖析、代码讲解、及优化改进
4.国内首个面向工业级实战的点云处理课程
5.激光-视觉-IMU-GPS融合SLAM算法梳理和代码讲解
6.彻底搞懂视觉-惯性SLAM:基于VINS-Fusion正式开课啦
7.彻底搞懂基于LOAM框架的3D激光SLAM: 源码剖析到算法优化
8.彻底剖析室内、室外激光SLAM关键算法原理、代码和实战(cartographer+LOAM +LIO-SAM)

9.从零搭建一套结构光3D重建系统[理论+源码+实践]

10.单目深度估计方法:算法梳理与代码实现

11.自动驾驶中的深度学习模型部署实战

12.相机模型与标定(单目+双目+鱼眼)

13.重磅!四旋翼飞行器:算法与实战

14.ROS2从入门到精通:理论与实战

15.国内首个3D缺陷检测教程:理论、源码与实战

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

30e81af8ac2ec857ac59acafbb17c817.png

▲长按加微信群或投稿

994e3bd741a4da30a1353baa8901e461.png

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列三维点云系列结构光系列手眼标定相机标定激光/视觉SLAM自动驾驶等)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近4000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

9296e8c6c82bdf27b7aaaa0d1b82e999.png

 圈里有高质量教程资料、答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~  

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/127820
推荐阅读
相关标签
  

闽ICP备14008679号