PointNet++

article/2025/9/14 4:15:31

[NIPS 2017]PointNet++: Deep Hierarchical Feature Learning onPoint Sets in a Metric Space

语雀(原文内容多一点,CSDN导不进来)

[论文地址][项目页面][GitHub]


在之前的文章中分析了PointNet网络是如何进行3D点云数据分类与分割的。但是PointNet存在的一个缺点是无法获得局部特征,这使得它很难对复杂场景进行分析。在PointNet++中,作者通过两个主要的方法进行了改进,使得网络能更好的提取局部特征。第一,利用空间距离(metric space distances),使用PointNet对点集局部区域进行特征迭代提取,使其能够学到局部尺度越来越大的特征。第二,由于点集分布很多时候是不均匀的,如果默认是均匀的,会使得网络性能变差,所以作者提出了一种自适应密度的特征提取方法。通过以上两种方法,能够更高效的学习特征,也更有鲁棒性。


导览

【PointNet作者亲述】90分钟带你了解3D物体检测算法和未来方向!

PPT:


斯坦福大学在读博士生祁芮中台:点云上的深度学习及其在三维场景理

PPT:


pointnet++翻译

一、背景

pointnet缺陷:没有平移不变性、没有局部特征提取能力、没有考虑点之间的关系
这些缺陷急需解决。

二、解决的问题

1.解决pointnet的缺陷,获得特征提取能力更好的网络。
2.多层次结构特征学习。
3.点的稀疏与稠密对特征提取的影响

三、方法

论文中说了很多官话,有兴趣的可以去看下,我稍微简洁点。

1.思路:在局部区域中用pointnet做递归

1.先根据空间距离的度量将点云划分到一些局部的区域中,这些区域可以是重叠的,再对每个小区域采用pointnet聚合特征,将每个区域聚合成一个带有特征向量的点,到此为止,庞大的点云转化为了:少量的点+包含区域特征的特征向量。处理和抽象一组点产生具有较少元素的新集合。
2.获得的新点云重复上面的工作,以扩大特征深度和广度。

举例,现在有一个点云 ( x , y ) (x,y) (x,y),它的一个局部区域中有个点 ( u , v ) (u,v) (u,v),用pointnet聚合区域
image.png
得到 ( X , Y , F ) (X,Y,F) (X,Y,F), F F F是该区域特征向量,用 ( X , Y , F ) (X,Y,F) (X,Y,F)代表区域所有点。
image.png
所以就将原始点云 ( X , Y ) (X,Y) (X,Y)转化成特征点云 ( Y , Y , F ) (Y,Y,F) Y,Y,F,特征点云点数更少,具有更高维度的信息 F F F

image.png
这就是作者文中提到的操作Set Abstraction:
farthest point sampling + grouping + pointnet

2.网络结构

2.1 set abstraction

image.png
用两个SA(set abstraction)组成多层点集特征学习网络,SA由三个关键层组成:采样层分组层PointNet层

采样层从输入点中选择一组点,这些点定义了局部区域的质心。 然后,分组层通过查找质心的相邻点来构建局部区域集。PointNet层使用mini-PointNet将局部区域编码为特征向量。

2.1.1 输入:

SA采用 N × ( d + c ) N\times(d+c) N×(d+c)矩阵作为输入

其中:
d代表d维坐标,比如xyz坐标中d=3;
c代表c维特征;

2.1.2 输出:

它输出具有d-dim坐标的 N’个子采样点的N’×(d + C’)矩阵和总结局部上下文的新 C’-dim特征向量。

( N , ( d + c ) ) (N,(d+c)) (N,(d+c)) ————> ( N ′ , ( d + c ) ) (N',(d+c)) (N,(d+c)) ————> ( N ′ , ( d + c ′ ) ) (N',(d+c')) (N,(d+c))

图中k是区域中的k个点

2.1.3 Sampling layer

最远点采样,网上介绍太多,不讲。
其实最远点采样会丢失点云的强度信息,看看后面有什么发现吧。

2.1.4 Grouping layer

( N , ( d + c ) ) (N,(d+c)) (N,(d+c)) ————> ( N ′ , k , ( d + c ) ) (N',k,(d+c)) (N,k,(d+c))
K最近邻(kNN)/Ball query,太多,不讲

2.1.5 PointNet layer

( N , k , ( d + c ) ) (N,k,(d+c)) (N,k,(d+c)) ————> ( N , ( d + c 1 ) ) (N,(d+c1)) (N,(d+c1))
作者还把k个点坐标替换成质心的相对坐标,意义何在,不知道。

2.2 Classification

image.png
分类任务:直接最大池化再经过全连接层 ( f c ) (fc) (fc)进行全局分类。

2.3 Segmentation

image.png
分割任务:往回插值和向上卷积得到每个点的分类,好好思考网络的过程就可以理解。

2.4 总结构

image.png最终得到整个网络。

四、难点

分组过程中,点的稠密与稀疏会影响特征image.png
MSG:广度
MRG:深度

性能测试,随机丢失点:
image.png

五、结果

Scene Parsing

Better accuracy with hierarchical learning
image.png
Robust layers for non-uniform densities (MSG) helps a lot
image.png

2020091111111219382.png20200911111219382.png

六、总结

一句话总结:分组操作使得点与点之间有了联系,使得局部特征提取有了可能。点的体素化是为了使用cnn,分组操作让pointnet也可以使用cnn思想,而且是直接处理点,因为之前说过pointnet就是为了直接处理点获得特征。所以pointnet的精髓在于分组思想

最远点采样采集的点大部分都是稀疏点,越密集的地方采集越少,会使得分组得到的点非常少


http://chatgpt.dhexx.cn/article/Z0p3IhEU.shtml

相关文章

一文搞懂PointNet全家桶——强势的点云处理神经网络

作者:黎国溥,3D视觉开发者社区签约作者,CSDN博客专家,华为云-云享专家 首发:公众号【3D视觉开发者社区】 前言 PointNet是由斯坦福大学的Charles R. Qi等人在《PointNet:Deep Learning on Point Sets for 3D Classifi…

PointNet理解(PointNet实现第4步)

PointNet第4步——PointNet理解 前面,我们讲到了点云的挑战,针对点云的挑战,PointNet论文提出了下面的解决方案。 下面用到的PPT来源于PointNet作者本人,不得不说大佬还是大佬,介绍也十分清晰,下面附上祁芮…

Pointnet/Pointnet++学习

一、点云的应用 二、点云的表述 三、Pointnet 四、Pointnet Pointnet概述 虽然这篇文章叫PointNet,但和PointNet相比还是有很大的改进。文章非常核心的一点就是提出了多层次特征提取结构。具体来说就是先在输…

PointNet介绍

论文:PointNet: Deep Learning on Point Sets for 3D Classification and Segmentation 代码:https://github.com/charlesq34/pointnet 0 引言 PointNet是处理点云数据的深度学习模型,其地位堪比2D图像处理中的CNN网络, 后续的诸…

三维深度学习之pointnet系列详解(一)

目前二维深度学习取得了很大的进步并且应用范围越来越广,随着三维设备的发展,三维深度学习得到了很大的关注。 最近接触了三维深度学习方面的研究,从pointnet入手,对此有了一点点了解希望记录下来并分享,若有误希望指…

综述|PointNet、PointNet++、 F-PointNet基于深度学习的3D点云分类和分割

点击下方卡片,关注计算机视觉工坊公众号 干货第一时间送达 作者:黎国溥,3D视觉开发者社区签约作者,CSDN博客专家,华为云-云享专家。 编辑:3D视觉开发者社区 前言 PointNet是由斯坦福大学的Charles R. …

PointNet++分类与分割详解

前言 PointNet是一个用于对不规则形状的点云数据进行分类和分割任务的深度神经网络。相对于传统的基于网格的3D数据表示方法,点云数据更易于获取和处理。PointNet的另一个优势是它引入了多尺度层次结构,可以处理更为复杂的点云数据。相比于第一版的Point…

【点云分类和分割】简述PointNet和PointNet++的理解

Hello大家好,最近阅读了PointNet和PointNet两篇论文,本人觉得这是点云方向入手的比较简单的入门论文,下面阐述一下自己对这两篇论文的理解 一、首先点云是非常重要的三维数据结构,但是其有着非常特殊的性质,不规则性和…

PointNet解读

PointNet解决的问题: 如上图所示: 1.点云图像的分类(整片点云是什么物体) 2.点云图像的部件分割(整片点云所代表的物体能拆分的结构) 3.点云图像的语义分割(将三维点云环境中不同的物体用不同…

基于深度学习方法的点云算法3——PointNet++(点云分类分割)

基于深度学习方法的点云算法3——PointNet(点云分类分割) 请点点赞,会持续更新!!! 基于深度学习方法的点云算法1——PointNetLK(点云配准) 基于深度学习方法的点云算法2——PointNet…

论文解读PointNet(用于点云处理的深度学习框架)

随着最近几年神经网络在CV、NPL等领域取得重大的成果,因此就有学者希望将神经网络应用于3D任务中。在这篇文章(PointNet: Deep Learning on Point Sets for 3D Classification and Segmentation)出现之前,一般在3D任务中用的最多的…

最全PointNet和PointNet++要点梳理总结

一、基本简介 本篇博文主要是对 PointNet,PointNet 论文的要点进行梳理和总结。认真阅读本博文后,不仅能够深刻理解论文的核心算法思想,而且对模型训练数据、模型的训练流程也能了然于胸。如果想阅读原论文以及翻译,参考下面的链接…

苹果将强制开发人员启用双因素认证提高安全

苹果的开发人员在近期应该都收到了公司的电子邮件通知,知会他们在今年2月27日之后,都必须启用双因素认证才能登入开发人员账号。苹果在邮件中指出,为了让开发人员的账号更为安全,从2月27日起,不管是要登入苹果的开发人…

关闭appleid双重认证_Apple ID 被停用如何解决?

苹果帐户被停用一般是因为输错密码次数过多,或者登录的设备数过多。账户被停用后,iPhone 就会弹出“您的帐户已在 App Store 和 iTunes 中被禁用”等提示。 如果看到一条内容为 " 您的帐户已在 App Store 和 iTunes 中被禁用 " 的信息&#xf…

苹果规定开发人员得使用双认证登入 以确保帐号安全

苹果的开发人员在近期应该都收到了公司的电子邮件通知,知会他们在今年2月27日之后,都必须启用双因素认证才能登入开发人员账号。 苹果在邮件中指出,为了让开发人员的账号更为安全,从2月27日起,不管是要登入苹果的开发人…

苹果怎么解ID锁?苹果ID锁解锁办法汇总

苹果ID锁很多人了解都不是很清楚,而且很多人认为用爱思助手刷机可以刷掉ID锁,如果你的手机出现ID锁后,那你就必须输入Apple ID账号密码才能激活后,无论之后你再怎么刷机都是需要账号密码才能激活的。 苹果解ID锁的办法在网上也是五…

苹果手机账号验证失败连接不上服务器,苹果手机让检查Apple ID 电话号码点击后验证失败,连接服务器失败出错...

这个问题应该是信号或者网络连接的问题,也可能是该时段服务器连接量过大。 建议换个时间段尝试,或者关掉wifi使用数据连接尝试验证。 双重认证是一种相对较新的安全保护机制,直接内建于 iOS、macOS、Apple tvOS、watchOS 和 Apple 网站中。它…

苹果开发者账号:忘记AppleID的安全提示问题怎么办?

方法一:通过iPhone重设安全问题 1、使用账号密码在设置里登录任意一台iOS 9及以上系统的手机 2、登录一段时间(大概一个月)之后,点击开启双重认证 3、 刚登陆的时候开启双重认证的话还需要回答安全提示问题。所以等一段时间再开启…

最近发现有很多人一直在问苹果ID双重认证怎么关闭。

最近发现有很多人一直在问苹果ID双重认证怎么关闭? 其实我想说大家都粗心了,双重认证是和ios版本没有关系的,无论什么IOS版本开通的双重认证都是可以关闭的。https://support.apple.com/zh-cn/HT204915 最后一段有说明哦。 其实苹果在官网上已…

苹果手机iCloud钥匙串的加密缺陷

什么是iCloud钥匙串 苹果钥匙串是苹果电脑,手机,平板上的密码管理器,帮助用户保存管理账号密码。开启iCloud云同步后,可以在用户的所有设备间同步账号密码,同时也会备份一份在iCloud上。 由于苹果默认会开启iCloud云同…