paper:PointNet: Deep Learning on Point Sets for 3D Classification and Segmentation

与普通的2D图片不同,点云数据是空间中离散的点(和3D图像不同的是,点云是稀疏的),见下图:

上图左为2D图像,右图为点云,点云数据包含点的颜色位置等信息。

点云由3D扫描技术得到,点云具有以下特点:

  1. 稀疏性:点云数据仅存在于物体表面。
  2. 数据缺失:由于遮挡导致部分表面未被扫描到。
  3. 数据噪声:仪器本身的精度或者环境因素导致。
  4. 非均匀性:由仪器的采样策略、相对位置、扫描范围等因素引起。

一、引言

在语义分割任务中,通常 使用卷积神经网络完成分割任务(2D图片使用2D卷积,3D医疗图像使用3D卷积),但是由于点云数据的稀疏性,卷积神经网络不能直接应用到点云分割任务中。

PointNet提出使用神经网络实现点云分类和点云分割,并且获得了极好的效果,主要贡献如下:

1、针对3D无序的数据点集,设计了一个新的神经网络模型;

2、使用神经网络完成了3D数据形状分类、分割任务;

二、PointNet

1、数据特点

点云数据有以下几个特点:

无序性(Unordered):点云是空间中离散的点,没有顺序,对于3D空间中的N个点,共有N!种排序;

关联性( Interaction among points):对于某个点,该点和其相邻的点具有相关性;

不变性(Invariance):整体的旋转和平移不改变点云的种类和语义分割的结果。

2、PointNet

PointNet网络结构如下图所示,需要注意的是分类网络和语义分割网络的区别,语义分割网络需要对每个像素点分类,故将全局特征和局部特征结合后再进行像素分类。

a、Symmetry Function for Unordered Input

对于无序的点云输入,它的排列有很多种,然而多种排列对于点云的分类和分割结果应该无影响,故需要设计一个函数,它能对不同顺序的输入点集输出相同的结果。这里简单说一下论文实现的流程。

假设有N个点,每个点数据维度为6(x,y,z,r,g,b),那么输入的维度为[N, 6],将输入放入多层mlp网络,得到输出维度为[N,C](这个时候N个无序的点有N!种排序),在维度N取最大值得到输出[C],即可实现对任意排序得到相同的特征。

b、Local and Global Information Aggregation

对于语义分割任务,使用max pool提取全局特征后,将全局特征和像素级特征concat,增加特征图的上下文语义信息。

c、Joint Alignment Network

点云数据经过旋转平移等变换后,它的像素标签并不会变化,故网络需要学习到一种表征能力,使得点云数据经过变换后的特征表示不会发生改变。

PointNet引入了TNet来预测变换矩阵,再高维空间中变换矩阵难以优化(网络结构中当特征维度为64时),故限制特征变换矩阵接近于正交矩阵。

三、PointNet体验

这里使用torch实现的PointNet进行快速,链接:https://github.com/yanx27/Pointnet_Pointnet2_pytorch

Readme中使用方法作者介绍的非常详细,这里不再进行赘述,直接上作者给出的预训练模型在S3DIS上的预测结果,使用MeshLab可视化。(Area5_WC_1)

area_5_hallway_11:

参考:

PointNet 家族简介(一)

【论文笔记】3D点云分割-PointNet相关推荐

  1. 收藏 | 清华团队将Transformer用到3D点云分割

    点上方蓝字计算机视觉联盟获取更多干货 在右上方 ··· 设为星标 ★,与你不见不散 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:量子位 AI博士笔记系列推荐 周志华<机器学习> ...

  2. 清华团队将Transformer用到3D点云分割上后,效果好极了

    萧箫 发自 凹非寺 量子位 报道 | 公众号 QbitAI 当Transformer遇上3D点云,效果会怎么样? 一个是当下最热门的模型(NLP.图像领域表现都不错),另一个是自动驾驶领域.机器人抓取 ...

  3. 清华团队将Transformer用到3D点云分割

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 当Transformer遇上3D点云,效果会怎么样? 一个是当下最 ...

  4. 清华团队将Transformer用到3D点云分割上后,效果好极了丨开源

    萧箫 发自 凹非寺 量子位 报道 | 公众号 QbitAI 当Transformer遇上3D点云,效果会怎么样? 一个是当下最热门的模型(NLP.图像领域表现都不错),另一个是自动驾驶领域.机器人抓取 ...

  5. 详解3D点云分割网络 Cylindrical and Asymmetrical 3D Convolution Networksfor LiDAR Segmentation

    本文介绍一篇3D点云分割网络:Cylinder3D,论文已收录于 CVPR 2021. 这里重点是理解本文提出的 Cylindrical Partition 和 Asymmetrical 3D Con ...

  6. 清华大学胡事民是计算机视觉,清华团队将Transformer用到3D点云分割上后,效果好极了丨开源...

    萧箫 发自 凹非寺量子位 报道 | 公众号 QbitAI 当Transformer遇上3D点云,效果会怎么样? 一个是当下最热门的模型(NLP.图像领域表现都不错),另一个是自动驾驶领域.机器人抓取等 ...

  7. segMatch:基于3D点云分割的回环检测

    该论文的地址是:https://arxiv.org/pdf/1609.07720.pdf segmatch是一个提供车辆的回环检测的技术,使用提取和匹配分割的三维激光点云技术.分割的例子可以在下面的图 ...

  8. 阿里巴巴自动驾驶三维点云分割PointNet实现

    阿里巴巴点云分割(PointNet) 项目地址:https://github.com/Summit11/PointNet_AliData 本项目是点云分割模型PointNet在DataFountain ...

  9. CVPR2020中关于3D点云分割

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者:不知道叫什么好 | 来源:知乎 https://zhuanlan.zhihu.com/p/152 ...

最新文章

  1. Jeff Dean竟在谷歌成众矢之的!开除“论文不合格”AI伦理研究员,被1400名员工批斗...
  2. 郁闷心情——电话聊天排解法
  3. 【Python进阶】Python进阶专栏、编程与开源框架知识星球上线,等你来follow
  4. 作业综合练习-初始化工作
  5. javascript 之---正则表达式
  6. 工作197:判断对象里面是否有0和1
  7. Python爬取“Python小屋”公众号所有文章生成独立Word文档
  8. DNN网络(三)python下用Tensorflow实现DNN网络以及Adagrad优化器
  9. python成绩管理系统设计 gui csdn_用golang简单编写学生信息管理系统
  10. 爬去图片插件_学不会你打我,一个插件爬取亚马逊数据!
  11. Exchange2013 企业部署解决方案-Part 2
  12. 关于WIN10下NVIDIA安装驱动后没有控制面板的解决办法
  13. 运动重构(SFM)学习笔记一
  14. 【周赛266】leetcode2062.统计字符串中的的元音子字符串
  15. 代码读智识  笔墨知人心 1
  16. Java实现 LeetCode 55 跳跃游戏
  17. 波束管理(Beam Management)
  18. 【cocos2d-x入门实战】微信飞机大战之八:自定义敌机精灵
  19. mongodb基本语法及操作(增删改查)
  20. Linux配置ssh无密登录

热门文章

  1. 彩虹韩漫《物种起源》物种起源漫画全文在线阅读
  2. 8A计算机游戏问题课文翻译,2013-新译林牛津英语8a课文翻译.pdf
  3. html5 vido切换超清高清标清,H5 video标签我要做一个切换清晰度的按钮,请问如何解决...
  4. 青岛联通大数据助建智能交通平台
  5. 使用HTML+Css+transform实现3D导航栏-小白进阶必备
  6. 推特CEO:马斯克决定不加入推特公司董事会
  7. 橙色云CDS让制造业难题迎刃而解
  8. 线性回归阶段学习总结
  9. Solidworks模型导入MATLAB过程
  10. 知识图谱火了,但你知道它的发展历史吗?|赠书5本