汇总|基于3D点云的深度学习方法

小白学视觉

共 4478字,需浏览 9分钟

 ·

2021-08-16 01:30

点击上方小白学视觉”,选择加"星标"或“置顶

重磅干货,第一时间送达

本文转自|计算机视觉工坊

前言

三维数据通常可以用不同的格式表示,包括深度图像、点云、网格和体积网格。点云表示作为一种常用的表示格式,在三维空间中保留了原始的几何信息,不需要任何离散化。因此,它是许多场景理解相关应用(如自动驾驶和机器人)的首选表示。近年来,深度学习技术已成为计算机视觉、语音识别、自然语言处理、生物信息学等领域的研究热点,然而,三维点云的深度学习仍然面临着数据集规模小、维数高、非结构化等诸多挑战三维点云。在此基础上,本文对基于点云数据下的深度学习方法最新进展做了详解,内容包括三维形状分类、三维目标检测与跟踪、三维点云分割三大任务。

3D点云形状识别

这些方法通常先学习每个点的embedding,然后使用聚集方法从整个点云中提取全局形状embedding,最后通过几个完全连接的层来实现分类。基于在每个点上进行特征学习的方法,现有的3D形状分类可分为基于投影的网络和point-based的网络。基于投影的方法首先将一个非结构化点云投影到一个中间正则表示中,然后利用建立良好的二维或三维卷积来实现形状分类。相比之下,基于点的方法直接作用于原始点云,而无需任何体素化或投影。基于点的方法没有引入显式的信息丢失,并且越来越流行。

基于投影的方法

这些方法首先将三维物体投影到多个视图中,提取相应的视图特征,然后融合这些特征进行精确的物体识别。如何将多个视图特征聚合为一个有区别的全局表示是一个关键的挑战。该类方法主要包括:
  • MVCNN
  • MHBN
  • Learningrelationships for multi-view 3D object recognition
  • Volumetric andmulti-view CNNs for object classification
  • GVCNN: Groupviewconvolutional neural networks for 3D shape recognition
  • Dominant setclustering and pooling for multi-view 3D object recognition
  • Learningmulti-view representation with LSTM for 3D shape recognition and retrieval
除此之外,还有一些对3D点云进行volumetric representation,主要包括:
  • VoxNet
  • 3D shapenets: Adeep representation for volumetric shapes
  • OctNet: Learning deep3D representations at high resolutions
  • OCNN:Octree-based convolutional neural networks for 3D shape analysis
  • Pointgrid: A deepnetwork for 3d shape understanding

Point-based网络

根据用于每个点特征学习的网络体系结构,该类方法可分为逐点MLP、卷积方式、基于Graph、基于数据索引的网络和其他典型网络。网络汇总如下表所示:

3D点云目标检测与跟踪

3D目标检测

三维目标检测的任务是精确地定位给定场景中所有感兴趣的目标。类似于图像中的目标检测,三维目标检测方法可以分为两类:region proposal-based methods 和 single shotmethods。
针对region proposal-based methods:这些方法首先提出几个可能包含对象的区域(也称为proposal),然后提取区域特征来确定每个proposal的类别标签。根据它们的proposal生成方法,这些方法可以进一步分为三类:基于多视图的方法、基于分割的方法和基于frustum的方法。
针对single shot methods:这些方法直接预测类别概率,并使用单级网络回归物体的三维bounding box。这些方法不需要region proposal和后处理。因此,它们可以高速运行,非常适合实时应用。根据输入数据的类型,又可以分为两类:基于BEV(投影图)的方法和基于点云的方法。
两种方式的网络汇总:

3D目标跟踪

给定对象在第一帧中的位置,对象跟踪的任务是估计其在随后帧中的状态。由于三维目标跟踪可以利用点云中丰富的几何信息,因此有望克服二维图像跟踪所面临的遮挡、光照和尺度变化等缺点。主要方法包括:
  • Leveraging shape completion for3D siamese tracking
  • Context-aware correlationfilter tracking
  • Efficient tracking proposalsusing 2D-3D siamese networks
  • Complexer-YOLO: Real-time 3Dobject detection and tracking
除了上述方式,还有一些基于光流思想的跟踪算法。类似于二维视觉中的光流估计,已有多种方法开始从点云序列中学习有用信息(如三维场景流、空间临时信息),主要包括:
  • Flownet3D: Learning scene flowin 3D point clouds
  • FlowNet3D++: Geometric lossesfor deep scene flow estimation
  • HPLFlowNet: Hierarchicalpermutohedral lattice flownet for scene flow estimation
  • PointRNN: Point recurrentneural network for moving point cloud processing
  • MeteorNet: Deep learning on dynamic 3D point cloud sequences
  • Just go with the flow:Self-supervised scene flow estimation

3D点云分割

三维点云分割需要了解全局几何结构和每个点的细粒度细节。根据分割粒度,三维点云分割方法可分为三类:语义分割(场景级)、实例分割(对象级)和部件分割(部件级)。

语义分割

语义分割是基于场景级别,主要包括基于投影和基于点的方法。
针对投影方式的分割算法:主要包括Multi-viewRepresentation、Spherical Representation、Volumetric Representation、PermutohedralLattice Representation、Hybrid Representation五种方式,下图对近期的分割网络进行了汇总:
针对基于point方式的分割算法:基于点的网络直接作用于不规则点云。然而,点云是无秩序的、非结构化的,直接应用标准CNN是不可行的。为此,提出了开创性的PointNet来学习使用共享MLP的逐点特征和使用对称池函数的全局特征。基于该思想,后期的方法大致可以分为点MLP方法、点卷积方法、基于RNN的方法和基于图的方法。针对近期point-based分割网络,下表进行了详细的汇总:

实例分割

与语义分割相比,实例分割更具挑战性,因为它需要对点进行更精确、更精细的推理。特别是,它不仅要区分语义不同的点,而且要区分语义相同的实例。总的来说,现有的方法可以分为两类:基于proposal的方法和proposal-free的方法。
基于proposal的方式将实例分割问题转化为两个子任务:三维目标检测和实例掩码预测。而基于proposal-free的方式没有对象检测模块,相反,这类方法通常将实例分割视为语义分割之后的后续聚类步骤。特别地,大多数现有的方法是基于假设属于相同实例的点应该具有非常相似的特征。因此,这些方法主要集中在鉴别特征学习和点分组两个方面。两种方式的网络汇总如下所示:

部件分割(Part Segmentation)

三维形状的部件分割有两个难点。首先,具有相同语义标签的形状零件具有较大的几何变化和模糊性。其次,该方法对噪声和采样应该具有鲁棒性。现有算法主要包括:
  • VoxSegNet: Volumetric CNNs forsemantic part segmentation of 3D shapes
  • 3D shape segmentation withprojective convolutional networks
  • SyncSpecCNN: Synchronizedspectral CNN for 3D shape segmentation
  • 3D shape segmentation via shapefully convolutional networks
  • CoSegNet: Deep co-segmentationof 3D shapes with group consistency loss
本文参考:https://arxiv.org/pdf/1912.12033.pdf

下载1:OpenCV-Contrib扩展模块中文版教程
在「小白学视觉」公众号后台回复:扩展模块中文教程即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。

下载2:Python视觉实战项目52讲
小白学视觉公众号后台回复:Python视觉实战项目即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。

下载3:OpenCV实战项目20讲
小白学视觉公众号后台回复:OpenCV实战项目20讲即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。

交流群


欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~


浏览 31
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报