PointASNL 小白笔记

PointASNL: Robust Point Clouds Processing using Nonlocal Neural Networks with Adaptive Sampling(CVPR 2020)

论文 https://arxiv.org/pdf/2003.00492.pdf
代码 https://github.com/yanx27/PointASNL

李镇老师个人主页
本文来自于香港中文大学(深圳)、深度比特实验室,一作为颜旭,通讯作者为李镇。
PS:本人小白,此篇博客仅作为个人笔记,有很多用语不准确,如有错误请麻烦指出,谢谢!

0. Abstract

  当原始点云由3D传感器采集或者重建算法生成时,必然会包括一些 离群点(outliers) 或者噪声。本文提出了一种用于处理点云的端到端网络:PointASNL。此网络对处理这些包含outliers或者noise的点云十分有效。

  此网络主要由两大部分组成,分别为adaptive sampling (AS) module和local-nonlocal (L-NL) module。

adaptive sampling (AS) module
1.对FPS得到的初始采样点周围的neighbors进行re-weight

2.自适应地调整采样点,其中,这个采样点可能就是一个outlier

3.作用:有利于点云数据的特征学习,抑制outlier的负面影响

4.如下图左半部分所示,黄色五角星就是由FPS得到的初始采样点,运气不好,它是一个outlier
  直接用它进行接下去的学习,那必然会出现很多问题。
  而AS通过步骤1和2,将这个采样点调整到了点云内部,也就是红色五角星的位置。
  将这个红色五角星作为新的采样点,进行接下去的步骤。
  如此,就抑制了outlier的影响。
local-nonlocal (L-NL) module
1.受论文Non-local Neural Networks(CVPR 2018)启发,提出L-NL模块。

2.目的是为了进一步获取采样点(AS处理后的)的neighbor和long-range dependencies(远程依存关系?不知道如何翻译)
  总之就是,L-NL模块,通过使用局部和全局的信息,进一步对feature进行增强。
  
3.L-NL模块,使得网络对噪声不敏感


  实验效果都很不错,尤其是对那种有很多噪声的真实世界室外数据集,比如KITTI,效果相比其他算法来说,有很大的提升。

1. Introduction

  点云由两部分组成:the points P ∈ R N ∗ 3 R^{N*3} RN3 and the features F ∈ R N ∗ D R^{N*D} RND

  和二维图像不同,3D点云具有稀疏性无序性,使点云处理很困难。另外,在真实世界中获取的点云或者由重建算法得到的点云,不可避免地存在outlier或者噪声

  作者提出了PointASNL,可以很好地处理这些outlier和噪声。由两大部分组成,分别为adaptive sampling (AS) module和local-nonlocal (L-NL) module。

adaptive sampling (AS) module

  由于传统卷积无法直接用在点云上,所以大多数方法采取的策略是:从原始点云中,运用采样法选择采样点,再进行局部特征的学习。

  论文中提到的采样算法有FPS:farthest point sampling、PDS:Poisson disk sampling、GSS:Gumbel subset sampling等。

  它们各自存在缺点,且有一个共同的问题:它们都可能将outlier选为采样点,然后继续接下去的流程肯定会造成负面影响,即对outlier敏感

  而本文提出的AS模块,可以调整初始采样点的坐标,像摘要中讲的那样,有利于fit the intrinsic geometry submanifold (拟合固有几何子流形),且使得学习不受outlier影响。

  所以,AS模块不仅有利于点云特征的学习,还有利于减弱噪声和outlier的影响。

local-nonlocal (L-NL) module

  为了进一步提升效果且为了使学习过程对噪声不敏感,提出了 local-nonlocal (L-NL) 模块。

  过去的特征提取算法大多都是先弄一个采样点,再结合基于图的点云学习或者类卷积的方式进行局部特征的学习,作者将这些操作命名为Point Local Cell。然而这仅仅考虑了局部区域的信息交互,想要获取全局的上下文信息必须通过分层结构来获取,这样的话,层数较大的时候,可能会出现计算量增大、梯度爆炸消失、信息丢失等情况。

  L-NL分为L部分和NL部分。前者就是局部特征学习,后者则是全局特征学习。NL本质上是self-attention,对每个采样点,在整个点云范围内进行融合,为每个采样点计算出一个包含全局信息的feature。这样,N-NL模块就可以为点云处理提供一个更加准确且鲁棒的信息。比如,即使上图中,下侧引擎的采样点(红色五角星)被noise覆盖,L-NL还是可以从另一侧的引擎学习特征。

2. Related Work

2.1 Volumetric-based and Projection-based Methods.

1.不是十分有效率
2.有一些算法进行了优化,计算效率得到提升,但是导致容量的下降。
3.还有一些投影的方法,但是缺少全局的特征学习。

2.2 Point-based Learning Methods.

1.PointNet、PointNet++ 、PointCNN。。。。

2.同样,缺少全局信息,想要全局信息要通过分层结构或者很深的层,从局部特征中进行获取。

2.3 Outlier Removal and Sampling Strategy.

1.outlier去除算法一般都需要很复杂的参数或者要求额外的信息。

2.有一些基于数据驱动的方法首先将outlier去除,再projects noisy points to clean surfaces,
  但是不能将点云的特征学习和outlier去除算法结合起来。
  
3.通过对点云进行采样,可以减少计算量。但是采样算法的效果大多都因为
  对噪声敏感、不是基于数据驱动、没有考虑到空间分布,而受到限制。

3. Our Method

3.1 Adaptive Sampling (AS) Module

  FPS存在两个缺点:
   1.对outlier敏感,使得它很难对真实世界的点云进行处理
   2.对于缺失的地方,比如在采集过程中发生遮挡和丢失错误,则很难推断出原始几何信息。

  如前面所述,运用AS模块可以克服上述缺点。先用FPS采样,获得相对均匀的点作为原始采样点后,再用AS模块对原始采样点进行处理,自适应地学习每个采样点地位移量,进行坐标调整。再利用KNN寻找到每个采样点的neighbors,最后通过自注意力机制对每一组的特征进行更新。接下来介绍方法。

   P s ϵ R N S ∗ 3 P_{s}\epsilon R^{N_{S}*3} PsϵRNS3: 表示从某个层用FPS下采样后得到的点集,其中可能包含噪点,总共有 N S N_{S} NS
   F s ϵ R N S ∗ D l F_{s}\epsilon R^{N_{S}*D_{l}} FsϵRNSDl: 表示下采样得到的点集的feature集合
   x i , f i x_{i}, f_{i} xi,fi: 表示下采样得到的点集里面的某个点的坐标和feature

  1. AS模块首先从上一层的点集中,运用FPS下采样,得到 P S P_{S} P

  • 3
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值