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

如图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. 201871010123-吴丽丽 《面向对象程序设计(Java)》第十六周学习总结

    201871010123-吴丽丽 <面向对象程序设计(Java)>第十六周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ ...

  2. ACWING 844. 走迷宫

    地址 https://www.acwing.com/problem/content/description/846/ 给定一个n*m的二维整数数组,用来表示一个迷宫,数组中只包含0或1,其中0表示可以 ...

  3. 将静态页面部署到github.io

    背景:   我的腾讯云服务器是之前利用学生身份(有优惠)买的,现在快到期了,而且服务器上面只有一个引导页(静态页面)还有用,别的项目都没有用了.所以就想找一种不花钱买服务器就可以访问到我的引导页的方法 ...

  4. 【51nod1678】lyk与gcd(莫比乌斯反演+枚举因数)

    点此看题面 大致题意: 一个长度为\(n\)的数组,实现两种操作:单点修改,给定\(i\)求\(\sum_{j=1}^na_j[gcd(i,j)=1]\). 莫比乌斯反演 考虑推一推询问操作的式子: ...

  5. 适合新手:从零开发一个IM服务端(基于Netty,有完整源码)

    本文由“yuanrw”分享,博客:juejin.im/user/5cefab8451882510eb758606,收录时内容有改动和修订. 0.引言 站长提示:本文适合IM新手阅读,但最好有一定的网络 ...

  6. 17-REST framework-Request与Response

    1.Django REST framework提供的视图的主要作用 1.控制序列化器的执行(检验,保存,转换数据) 2.控制数据库查询的执行 Request与Response 1.Request RE ...

  7. Generating a new SSH key

    Open Git Bash. Paste the text below, substituting in your GitHub email address. $ ssh-keygen -t rsa ...

  8. 一文告诉你,Kafka在性能优化方面做了哪些举措!

    很多粉丝私信问我Kafka在性能优化方面做了哪些举措,对于相关问题的答案其实我早就写过了,就是没有系统的整理一篇,最近思考着花点时间来整理一下,下次再有粉丝问我相关的问题我就可以潇洒的甩个链接了.这个 ...

  9. Django多进程滚动日志的问题

    使用RotatingFileHandler控制日志文件的大小 # settings.py LOGGING = { ... 'handlers': { ... 'file': { 'level': 'I ...

  10. http服务源码分析

    多读go的源码,可以加深对go语言的理解和认知,今天分享一下http相关的源码部分 在不使用第三方库的情况下,我们可以很容易的的用go实现一个http服务, package main import ( ...