这篇论文先举例子解释了为什么卷积无法直接应用在点云数据上。

如图1, 传统的卷积是作用在2维图像数据上。图像中每个像素的顺序是固定的,也就是说数据是结构化存储的。直接使用conv2d就能从这种潜在的空间结构中获取信息。

而点云数据是点集,如果直接使用卷积会出现图中234多种情况

若直接使用卷积,则f2与f3的计算结果是相等的,但是从图中可知,23显示不同,这说明卷积无法获得点的空间信息

而f3与f4的计算结果不等,但是图3与图4是相同的点集,必须得到相同的计算结果才合理,这说明卷积无法适应点集的N!种排列。

在其他论文里,为了适应点云数据的这两种的特点采取的方式有体素化、3DCNN及PointNet提的对称操作(symmetric,这个翻译是我自己译的)
版权声明:本文为CSDN博主「Link2Link」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_15602569/article/details/79560614


卷积神经网络(Conv)能够很好利用原始数据的在空间上的局部相关性(Spatially-local correlation),这也正是卷积神经网络在各种分割或者分类任务中取得成功的关键。正是如此,作者设想是否能效仿卷积神经网络来很好的利用点云(Point Cloud)的空间上的局部相关性,这将在点云分割和分类上取得很大的成功。所以这篇文章的重点就在于怎么利用这种相关性。
版权声明:本文为CSDN博主「JMU-HSF」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_42956785/article/details/86586513


首先,根据采样得到的中心点,将全局坐标变为局部坐标,相当于分区。(点的数量如何确定?)

o 利用MLP将每个点变换到高维空间(一维卷积),得到F-sigma

o Concat特征F(输入的每个点的附加特征,比如color或者normal)和F-sigma,得到新的特征F*

o 对每个局部区域中的点使用MLP,得到变换矩阵X。这里可以注意一下,得到变换矩阵X的过程,输入是P'(一组坐标点),输出是变换矩阵X。文中的消除实验表明,X变换的确是有效果的

o 对特征F*使用X进行变换后,在进行传统的卷积(1维)。作者是希望通过X变换,把特征F*变成空间相关,也就是希望矩阵中相邻的在空间中也相邻,这样就可以像图像一样卷积了。

最后的Conv是一维卷积。可以看到X-Conv中所用的都还是一维卷积,不管是MLP还是Conv,作者在论文的脚注部分也提到了,代码中也可以确认这一点。所以,作者用CNN做类比还是不太合适,唯一的共同点是尺寸的点的数量是由多变少,CNN中图像尺寸也是由大到小
o 一个区域的点是怎么变成一个中心点的特征的?在PointNet++中,作者是对每一个局部区域进行Maxpool得到一个一维的向量作为中心点的特征,在pointCNN中并没有使用maxpool。在本文中,最后一步使用了(1,K)的卷积核进行卷积,对每个区域中不同点的特征进行了融合,而在pointnet中,这一步是通过每个点对应维数的最大值,个人觉得,这是两者之间最大的不同,可能也是导致结果差别的主要原因,但这只是猜测,后续还需要进行实验验证。在这一一步中,为了减少参数量,作者使用了深度可分离卷积,

作者:摸鱼家
链接:https://zhuanlan.zhihu.com/p/89752154
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


https://blog.csdn.net/qq_33278989/article/details/80047252

pointcnn的更多相关文章

  1. PointCNN 论文翻译解析

    1. 前言 卷积神经网络在二维图像的应用已经较为成熟了,但 CNN 在三维空间上,尤其是点云这种无序集的应用现在研究得尤其少.山东大学近日公布的一项研究提出的 PointCNN 可以让 CNN 在点云 ...

  2. 论文笔记:(NIPS2018)PointCNN: Convolution On X-Transformed Points

    目录 摘要 一.2D卷积应用在点云上存在的问题 二.解决的方法 2.1 idea 2.2 X-conv算子 2.3 分层卷积 三.实验 3.1分类和分割 3.2消融实验.可视化和模型复杂度 总结 仍存 ...

  3. 3D点云的深度学习

    使用卷积神经网络(CNN)架构的深度学习(DL)现在是解决图像分类任务的标准解决方法.但是将此用于处理3D数据时,问题变得更加复杂.首先,可以使用各种结构来表示3D数据,所述结构包括: 1  体素网格 ...

  4. 转载:点云上实时三维目标检测的欧拉区域方案 ----Complex-YOLO

    感觉是机器翻译,好多地方不通顺,凑合看看 原文名称:Complex-YOLO: An Euler-Region-Proposal for  Real-time 3D Object Detection ...

  5. CVPR2020:4D点云语义分割网络(SpSequenceNet)

    CVPR2020:4D点云语义分割网络(SpSequenceNet) SpSequenceNet: Semantic Segmentation Network on 4D Point Clouds 论 ...

  6. CVPR2020:基于自适应采样的非局部神经网络鲁棒点云处理(PointASNL)

    CVPR2020:基于自适应采样的非局部神经网络鲁棒点云处理(PointASNL) PointASNL: Robust Point Clouds Processing Using Nonlocal N ...

  7. CVPR2020:三维点云无监督表示学习的全局局部双向推理

    CVPR2020:三维点云无监督表示学习的全局局部双向推理 Global-Local Bidirectional Reasoning for Unsupervised Representation L ...

  8. 论文笔记:(2021CVPR)PAConv: Position Adaptive Convolution with Dynamic Kernel Assembling on Point Clouds

    目录 摘要 1.引言 2.相关工作 将点云映射到常规二维或三维栅格(体素) 基于MLPs的点表示学习 基于点卷积的点表示学习 动态卷积和条件卷积 3.方法 3.1 回顾 3.2 动态内核组装 Weig ...

  9. 论文笔记:(2019)GAPNet: Graph Attention based Point Neural Network for Exploiting Local Feature of Point Cloud

    目录 摘要 一.引言 二.相关工作 基于体素网格的特征学习 直接从非结构化点云中学习特征 从多视图模型中学习特征 几何深度学习的学习特征 三.GAPNet架构 3.1 GAPLayer 局部结构表示 ...

随机推荐

  1. BZOJ2007/LG2046 「NOI2010」海拔 平面图最小割转对偶图最短路

    问题描述 BZOJ2007 LG2046 题解 发现左上角海拔为 \(0\) ,右上角海拔为 \(1\) . 上坡要付出代价,下坡没有收益,所以有坡度的路越少越好. 所以海拔为 \(1\) 的点,和海 ...

  2. Norm比较

    目录 Introduction BN LN IN GN SN Conclusion Introduction 输入图像shape记为[N, C, H, W] Batch Norm是在batch上,对N ...

  3. 如何使用PHP的生成器yield处理大量数据业务

    官方解释yield yield生成器是php5.5之后出现的,官方文档这样解释:yield提供了一种更容易的方法来实现简单的迭代对象,相比较定义类实现 Iterator 接口的方式,性能开销和复杂性大 ...

  4. Anaconda安装第三方库与pip和conda 添加国内源

    Anaconda安装第三方库 PIP使用命令 Anaconda命令 pip和conda 添加国内源 1:PIP相关命令 卸载 pip uninstall XXX 1.升级pip python -m p ...

  5. java自定义equals函数和hashCode函数

    所有类都继承自Object类,他所有的非final方法:equals,hashCode, toString, clone 和 finalize,它们都有通用约定. 我们在覆盖这些方法的时候需要遵循这些 ...

  6. swoole中使用task进程异步的处理耗时任务

    我们知道,swoole中有两大进程,分别是 master 主进程和 manager 管理进程. 其中 master 主进程中会有一个主 reactor 线程和多个 reactor 线程,主要的作用就是 ...

  7. 利用zabbix监控ogg进程(Linux平台下)

    前段时间生产的一个数据库的ogg进程挂了快半个月才被发现,已经起不来了,只有重新初始化再同步.因此很有必要监控下ogg的进程,这里给大家介绍如何使用zabbix监控oracle的ogg的进程.思路就是 ...

  8. c++11 C++14 C++17

    Since C++11, WG21, the ISO designation for the C++ standard,  try to shipped the standard every 3 ye ...

  9. 初始HTML_二

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta na ...

  10. Node.js提供了哪些内容(API)

    Nodejs运行时,JavaScript代码运行时的环境. 提供了一些核心模块,应用程序编程接口(Application Program Interface,API)  API 的意思就是.一个已经解 ...