PointNet++: Deep Hierarchical Feature Learning on Point Sets in a Metric Space

前言

本人是刚入门小白,把最近看的论文记录一下,记录的内容都是感觉比较重要的,望大家可以指点一下。

引言

PointNet是直接处理点云的结构,大体思想是学习到每个点的空间编码然后聚合所有独立的点特征到全局特征。PointNet的缺点是没有捕获点云的局部结构特征。

论文作者提出了一种级联神经网络,pointnet++,用级联方式处理空间中采样得到的点。pointnet++的思想很简单:首先把点集分成几个重叠的局部区域,就和CNNs类似,提取局部区域代表的三维结构的特征;这些局部特征能够组合成更大的单元,处理这些单元得到高层特征。这个过程可以一直重复,直到我们得到整个点集的特征。

pointnet++·有两个需要解决的问题:怎样将点集进行划分;怎样提取点集或者局部特征集的特征。第二个问题,提取局部特征的任务可以交给pointnet。

第一个问题,划分点集:使用球形划分。为了逐渐覆盖整个点集,在点集上采用FPS算法选取点,作为球心。

方法

级联特征学习

在这里插入图片描述
如上图所示,作者提出的级联结构由几组抽象级别组成。在每个抽象级别,点集经过处理和抽象得到更少元素组成的集合。抽象层次由三个层构成:采样层、组合层和pointnet层组成。

采样层: 给定点集 { x 1 , x 2 , . . . , x n } \{x1, x2, ...,xn\} {x1,x2,...,xn},迭代使用FPS算法,得到子集 { x i 1 , x i 2 , . . . , x i m } \{x_{i1}, x_{i2}, ...,x_{im}\} {xi1,xi2,...,xim}。子集中的点,将作为球形的球心。

组合层: 输入这个层的数据有: N × ( d + C ) N \times (d + C) N×(d+C)的点集和 N ′ × d N'\times d N×d的球心集合。经过该层,输出的数据为 N ′ × K × ( d + C ) N' \times K \times (d + C) N×K×(d+C)的点集。 K K K是球形里边的点的数量。值得注意的是 K K K在组合层有可能不同,但是pointnet层能够转换为固定长度的向量。

pointnet层: 输入的数据形状为 N ′ × K × ( d + C ) N' \times K \times (d+C) N×K×(d+C),输出数据的形状为 N ′ × ( d + C ′ ) N' \times (d+ C') N×(d+C)。局部区域中的点的坐标首先转换为以球心为中心点的相对坐标。

非均匀采样密度下的鲁棒特征学习

点云数据在不同的地方有不同的密度。在密度大的区域,我们希望可以观察的仔细一些(就是观察的空间区域小一些);在密度小的区域,我们需要观察更大的区域。出于这个目的,作者提出了两种方法:

在这里插入图片描述
多尺度组合(MSG): 如上图a所示,在不同尺度上使用pointnet提取特征然后组合起来。使用这个方法时,我们会随机的丢弃一些输入数据。对于训练点集,随机选取dropout ratio,对于每个点,应用这个dropout ratio。

多分辨率组合(MRG): 如上图b所示,分成两个层级。输出的特征是由两部分组成:一,较低的层级(大尺度)得到的特征;二:较低的层级(小尺度)得到特征后,由较高的层级再处理得到的特征。

分割问题点特征的传播

经过抽象层之后,点的数量是变少了。在分割问题中,我们需要获得原始点的特征。作者采用插值的方式来解决。

实验

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

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值