3D点云上的深度学习综述

1 Title

        Deep Learning for 3D Point Clouds: A Survey(Yulan Guo; Hanyun Wang; Qingyong Hu; Hao Liu; Li Liu; Mohammed Bennamoun)【IEEE Transactions on Pattern Analysis and Machine Intelligence 2020

2  Conclusion

        Deep learning on point clouds is still in its infancy due to the unique challenges faced by the processing of point clouds with deep neural networks. To stimulate future research, this paper presents a comprehensive review of recent progress in deep learning methods for point clouds. It covers three major tasks, including 3D shape classification, 3D object detection and tracking, and 3D point cloud segmentation.It also presents comparative results on several publicly available datasets, together with insightful observations and inspiring future research directions.

3 Good Sentences

        1、As a commonly used format, point cloud representation preserves the original geometric information in 3D space without any discretization. Therefore, it is the preferred representation for many scene understanding related applications such as autonomous driving and robotics.(why 3D point cloud is so important)
        2、deep learning on 3D point clouds still face several significant challenges, such as the small scale of datasets, the high dimensionality and the unstructured nature of 3D point clouds.(The challenge of 3D point cloud meet)
        3、These methods first project a 3D shape into multiple views and extract view-wise features, and then fuse these features for accurate shape classification. How to aggregate multiple view-wise features into a discriminative global representation is a key challenge for these methods.(The principal of Multi-View Based Methods)


介绍:

        3D 数据通常可以用不同的格式表示,包括深度图像、点云、网格和体积网格。作为一种常用的格式,点云表示保留了 3D 空间中的原始几何信息,没有任何离散化。因此,它是许多场景理解相关应用(例如自动驾驶和机器人技术)的首选表示。近年来,深度学习技术主导了许多研究领域,例如计算机视觉、语音识别和自然语言处理。然而,3D点云深度学习仍然面临一些重大挑战,例如数据集规模小、3D点云的高维性和非结构化性质。在此基础上,本文重点分析了已用于处理3D点云的深度学习方法。

如图为3D 点云深度学习方法的分类。常用3D点云数据集包括ModelNet、ScanObjectNN、ShapeNet 、 PartNet、 S3DIS  、ScanNet、Semantic3D、ApolloCar3D和KITTI 视觉基准套件。

数据集

        3D形状分类,有两种类型的数据集:合成数据集和真实数据集。合成数据集中的对象是完整的,没有任何遮挡和背景。相比之下,现实世界数据集中的对象在不同级别上被遮挡,并且某些对象受到背景噪声的污染。
        3D对象检测和跟踪,有两种类型的数据集:室内场景和室外城市场景。室内数据集中的点云要么从密集深度图转换而来,要么从 3D 网格中采样。室外城市数据集是为自动驾驶而设计的,其中物体在空间上分离良好,并且这些点云稀疏。
        对于 3D 点云分割,这些数据集由不同类型的传感器获取,包括移动激光扫描仪 (MLS) 、航空激光扫描仪(ALS)静态地面激光扫描仪 (TLS) 、RGB-D 相机和其他 3D 扫描仪。这些数据集可用于开发应对各种挑战的算法,包括类似的干扰因素、形状不完整性和类别不平衡。

评估指标

对于 3D 形状分类,总体精度 (OA) 和平均类别精度 (mAcc) 是最常用的性能标准。 “OA”代表所有测试实例的平均准确度,“mAcc”代表所有形状类别的平均准确度。对于 3D 对象检测,平均精度 (AP) 是最常用的标准。它的计算方式是精确率-召回率曲线下的面积。精度和成功度通常用于评估 3D 单目标跟踪器的整体性能。平均多目标跟踪精度 (AMOTA) 和平均多目标跟踪精度 (AMOTP) 是评估 3D 多目标跟踪最常用的标准。对于 3D 点云分割、OA、平均交并集 (mIoU) 和平均类精度是最常用的绩效评估标准。

3D形状分类

        用于此任务的方法通常首先学习每个点的嵌入,然后使用聚合方法从整个点云中提取全局形状嵌入。最终通过将全局嵌入输入到几个全连接层中来实现分类。根据神经网络输入的数据类型,现有的3D形状分类方法可以分为基于多视图的方法、基于体积的方法和基于点的方法。基于多视图的方法将非结构化点云投影为 2D 图像,而基于体积的方法将点云转换为 3D 体积表示。然后,利用完善的 2D 或 3D 卷积网络来实现形状分类。相比之下,基于点的方法直接作用于原始点云,无需任何体素化或投影。基于点的方法不会引入显式信息丢失,并且变得越来越流行。

同样,我看这篇文章只是为了3D点云对比循环网络,只关注有关的部分,前两个方法略过了

基于多视图的方法

        这些方法首先将 3D 形状投影到多个视图中并提取视图特征,然后融合这些特征以进行准确的形状分类。如何将多个视图特征聚合成有区别的全局表示是这些方法的关键挑战。

基于体积的方法

        这些方法通常将点云体素化为 3D 网格,然后在体积表示上应用 3D 卷积神经网络 (CNN) 以进行形状分类。

基于点的方法:

        根据用于每个点的特征学习的网络架构,此类方法可以分为逐点MLP、基于卷积、基于图、基于分层数据结构的方法和其他典型方法。
        逐点 MLP 方法:使用多个共享的多层感知器 (MLP) 独立地对每个点进行建模,然后使用对称聚合函数聚合全局特征

基于卷积的方法:

        与在 2D 网格结构(例如图像)上定义的内核相比,由于点云的不规则性,3D 点云的卷积内核很难设计。根据卷积核的类型,当前的3D卷积方法可以分为连续卷积方法和离散卷积方法

(a) 表示以点 p 为中心的局部邻域 qi ; (b) 和 (c) 分别表示 3D 连续卷积和离散卷积。

        3D 连续卷积方法。这些方法在连续空间上定义卷积核,其中相邻点的权重与相对于中心点的空间分布相关。3D 卷积可以解释为给定子集的加权和,MLP,以某一点周围的局部点子集为输入 ,通过学习从低级关系(如欧几里得距离和相对位置)到局部子集与中心点之间高级关系的映射,实现卷积。
        3D 离散卷积方法。这些方法在规则网格上定义卷积核,其中相邻点的权重与相对于中心点的偏移量相关。

基于图的方法:

        空间域中基于图的方法。这些方法定义了空间域中的操作(例如,卷积和池化)。具体来说,卷积通常通过空间邻居上的 MLP 来实现,并采用池化来通过聚合来自每个点的邻居的信息来生成新的粗化图。每个顶点通常被赋予坐标、激光强度或颜色等特征,而每个边上的特征通常与两个相连点之间的几何属性相关联。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/604292.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android开发编程从入门到精通,安卓技术从初级到高级全套教学

一、教程描述 本套教程基于JDK1.8版本,教学内容主要有,1、环境搭建,UI布局,基础UI组件,高级UI组件,通知,自定义组件,样式主题;2、四大组件,Intent&#xff0…

(九)One-Wire总线-DS18B20

文章目录 One-Wire总线篇复位和应答读/写0,1 DS18B20篇原理图概述最主要特性几个重要的寄存器(部分要掌握)存储有数字温度结果的2个字节宽度的温度寄存器寄存器描述:寄存器说明: 一个字节的过温和一个字节的低温&#…

msckf_vio在ubuntu20.04中的编译

1.新建catkin workspace文件夹,并在其中新建src文件夹,并将源码clone至src内。 源码地址:https://github.com/KumarRobotics/msckf_vio 目录层级示意如下,build和devel不必新建,后续指令会自动新建。 2. 在编译之前…

Python 面向对象之反射

Python 面向对象之反射 【一】概念 反射是指通过对象的属性名或者方法名来获取对象的属性或调用方法的能力反射还指的是在程序额运行过程中可以动态获取对象的信息(属性和方法) 【二】四个内置函数 又叫做反射函数 万物皆对象(整数、字符串、函数、模块、类等等…

第02章_变量与进制

第02章_变量与进制 讲师:尚硅谷-宋红康(江湖人称:康师傅) 官网:http://www.atguigu.com 本章专题脉络 1、关键字(keyword) 定义:被C语言赋予了特殊含义,用做专门用途的字符串(或单…

力扣:438. 找到字符串中所有字母异位词 题解

Problem: 438. 找到字符串中所有字母异位词 438. 找到字符串中所有字母异位词 预备知识解题思路复杂度Code其它细节推荐博客或题目博客题目滑动窗口哈希表 预备知识 此题用到了双指针算法中的滑动窗口思想,以及哈希表的运用。c中是unordered_map。如果对此不了解的u…

二、UI文件设计与运行机制

一、UI文件设计与运行机制 1、创建工程 2、添加控件,实现按钮点击 (1)添加控件 (2)添加信号和槽 2、分析项目结构 test_02test_02.pro Qt工程文件Headerswidget.h 设计的窗体类的头文件Sourcesmain.cpp 主程序入…

rk3588中编译带有ffmpeg的opencv

有朋友有工程需要,将视频写成mp4,当然最简单的方法当然是使用opencv的命令 cv::VideoWriter writer;bool bRet writer.open("./out.mp4", cv::VideoWriter::fourcc(m, p, 4, v), 15, cv::Size(640, 512), 1); 但是奈何很难编译成功&#xff…

Python | 基于Mediapipe框架的手势识别系统

一、项目要求 1、题目 本题着力于解决会商演示系统中的非接触式人机交互问题,具体而言,其核心问题就是通过计算机视觉技术实现对基于视频流的手势动作进行实时检测和识别。通过摄像头采集并识别控制者连续的手势动作,完成包括点击、平移、缩放…

离散数学1

注:线性代数已经更新了最大部分的内容,因此过段时间再补充剩余内容。 小王能歌善舞。因此,小王必须得会唱歌也必须得会跳舞,才满足题意 小王能唱歌或者小王能跳舞。因此,小王会唱歌也会跳舞满足。小王不会唱歌但会跳舞…

JavaScript常用事件演示

文章目录 一、在JavaScript中什么是事件?二、什么是JavaScript 常用事件?三、常用JS事件代码示例:四、事件总结 一、在JavaScript中什么是事件? JavaScript 使我们有能力创建动态页面。事件是可以被 JavaScript 侦测到的行为。 网页中的每个…

C++|【34】C++中的const

文章目录 constconst最基本的用法const和指针const和类 const const最基本的用法 用于限定a的大小,使a变成一个恒定不变的值。 应用场景:比如设置一些和标准相关的值,如上下限等等。 const和指针 指针总是包含两部分信息,一个是…

如何信任机器学习模型的预测结果?

在本篇中,我将通过一个例子演示在 MATLAB 如何使用 LIME 进行复杂机器学习模型预测结果的解释。 我使用数据集 carbig(MATLAB 自带的数据集)训练一个回归模型,用于预测汽车的燃油效率。数据集 carbig 是 70 年代到 80 年代生产的汽…

docker的基础知识

介绍docker 什么是docker Docker是一种开源的容器化平台,可以让开发人员将应用程序与其依赖的运行时环境一起打包到一个称为容器的独立单元中。这个容器可以在任何支持Docker的机器上运行,提供了一种快速和可移植的方式来部署应用程序。Docker的核心组件…

Python库学习(十四):ORM框架-SQLAlchemy

1.介绍 SQLAlchemy 是一个用于 Python 的 SQL 工具和对象关系映射(ORM)库。它允许开发者通过 Python 代码而不是 SQL查询语言来操作数据库。SQLAlchemy 提供了一种灵活且强大的方式来与关系型数据库交互,支持多种数据库后端,如 P…

【十七】【动态规划】DP41 【模板】01背包、416. 分割等和子集、494. 目标和,三道题目深度解析

动态规划 动态规划就像是解决问题的一种策略,它可以帮助我们更高效地找到问题的解决方案。这个策略的核心思想就是将问题分解为一系列的小问题,并将每个小问题的解保存起来。这样,当我们需要解决原始问题的时候,我们就可以直接利…

GeoServer发布地图服务(WMS、WFS)

文章目录 1. 概述2. 矢量数据源3. 栅格数据源 1. 概述 我们知道将GIS数据大致分成矢量数据和栅格数据(地形和三维模型都是兼具矢量和栅格数据的特性)。但是如果用来Web环境中,那么使用图片这个栅格形式的数据载体无疑是最为方便的&#xff0…

WebofScience快速检索文献的办法

Web of Science为什么老是搜不到文章,原来是要在这个地方全部勾选 如果是搜标题的话,选Title,输入你要搜的文章标题 另外,也可以在浏览器直接搜文章标题,得到文章的DOI,然后选DOI,直接搜DOI也行…

中通快递查询,中通快递单号查询,批量删除不需要的快递单号

快递单号的管理现在是许多企业和个人日常工作中不可或缺的一部分,面对堆积如山的快递单号,如何快速、准确地处理成了许多人的难题。今天,我们将为大家带来一款强大的快递单号处理软件——快递批量查询高手,让你从此告别繁琐的手动…

SpringCloud-高级篇(十一)

(1)搭建Redis-主从架构 前面我们实现了Redis的持久化,解决了数据安全问题,但是还有需要解决的问题,下面学习Redis的主从集群,解决Redis的并发能力的问题 Redis的集群往往是主从集群,Redsi为什么…