小样本点云深度学习库_NeurIPS2019 | MIT与上海交大提出新型点云深度学习框架Point-Voxel CNN...
首发于公众号:3D点云深度学习。
论文:’Point-Voxel CNN for Efficient 3D Deep Learning’
来源:NeurIPS2019Spotlight
共同一作:Zhijian Liu (MIT), Haotian Tang(上海交大)
代码:https://github.com/mit-han-lab/pvcnn
项目:https://hanlab.mit.edu/projects/pvcnn/
3D深度学习广泛的应用到多个领域,如AR/VR和自动驾驶等,因此受到了越来越多的关注。在这些应用中往往需要很高的实时性。然而,终端设备(如手机和VR头戴设备)受到硬件资源和电池的严格限制。因此,设计高效、快速的三维深度学习模型是非常重要的。这篇文章巧妙地将voxel-based方法和point-based方法结合,新框架同时具备了两种方法的优点。
- 已有方法的缺陷分析
论文对已有方法的缺陷进行了细致地分析,这是文章重要的一部分。论文的分析很透彻,给笔者留下了很深的印象。
对于voxel-based类方法的缺陷,论文指出:这类方法难以平衡分辨率和内存的关系。当体素尺寸较大时,分辨率低,大量点云占据同一个体素,没办法很好地区分。然而,当减小体素尺寸,提高分辨率时,内存占用则会成三次方增加。其实voxel-based类方法的这个缺陷学界基本已经产生了共识,因此这部分此处就不再赘述了。
接着,文章对point-based方法的缺点也进行了分析。学界对于point-based方法的缺点还鲜有报道,这也是本篇论文比较新颖的地方之一。作者指出,这类方法的内存访问的无序性(Irregular access)和动态核开销(Dynamic Kernel)会占用大量时间。因为point-based方法直接对无序点云进行操作,以PointNet, PointCNN为代表的这类方法需要对点云进行邻域查询,因此会产生大量的随机内存访问(Irregular access),这部分会占用大量运行时间。
与此同时,point-based方法还存在动态卷积核的问题。由于点云散落分布在三维空间中,不同于voxel-based类方法中数据那样规整,因此需要动态地确定卷积核,这就是动态核开销(Dynamic Kernel)。
为了更有说服性,作者对几类典型的point-based方法的内存访问(Irregular access)和动态核开销(Dynamic Kernel)时间进行了统计。如图所示是作者对于DGCNN, PointCNN, SpiderCNN的时间消耗进行的计算。左边两个方框内的时间是无效时间,可以看出上述三种point-based方法有大量的无效时间。而右边的Actual computation是实际运算时间,可以看出作者提出的网络时间效率具有压倒性的优势。
- 提出PVConv
分析完voxel-based方法和point-based方法的缺陷之后,作者开始提出自己设计的网络架构Point-Voxel Convolution(PVConv)。
如图所示,PVConv由两路分支构成。一个支路用来进行基于体素的特征聚合,用来进行粗粒度的邻域特征提取;另一个支路用MLP对点云直接进行特征转换,是一种细粒度的逐点特征提取;最后两种特征会进行融合。
在上面的支路中,首先对点云进行归一化;然后进行体素划分,这里使用的体素率较低,不至于带来太多消耗。接着将体素送入到堆叠的3D卷积层中进行特征升维,此时学到的是每个体素的高维特征。然后对数据进行解体素,将体素的特征转化到每个点上去。
这里的操作很容易让人想到PointNet++中的Grouping-MLP-Interpolate的结构。但是作者很巧妙地用Voxelize代替了Grouping,从而避免了前文提到的随机内存访问(Irregular access)的时间消耗。而此处的Devoxelize也没有直接采用pointnet++中的最近邻interpolate操作,而是用了trilinear interpolation,使得不同点对应不同的特征。
如果把上面支路提取的信息作为邻域特征,那么下方的支路则用来提取每个点的局部特征,直接采用MLP对每个点进行特征提取。两种信息的融合,能够获得更为丰富的特征信息。
- 实验结果
文章进行了丰富而详细的实验,包括了部件分割、语义分割和目标检测三种任务。作者不仅关心实验效果而且重点分析GPU的内存消耗。与主流点云深度学习框架(PointNet, PointCNN, F-PointNet等)进行了比较,效果很好。部分实验结果如下:
语义分割任务,可以说是,利用更少的内存消耗,获得了更好的实验效果。
目标检测,性能和内存消耗方面,基本上都超过了F-PointNet++。
- 总结
这篇论文提出了Point-VoxelCNN (PVCNN),将点云处理领域的两种方法进行了结合,想法简单巧妙,而且文章对两种方法都进行了缺点的分析,特别是对于point-based类方法的分析,让人印象深刻。此外,文章中对于内存占用的分析计算的思路也值得借鉴,在改进其他网络的过程中,是否也考虑下这个层面呢,没准会给网络性能找到新的突破口。
小样本点云深度学习库_NeurIPS2019 | MIT与上海交大提出新型点云深度学习框架Point-Voxel CNN...相关推荐
- 模型压缩95%,MIT韩松等人提出新型Lite Transformer
2020-06-08 16:31:31 选自arXiv 作者:Zhanghao Wu等 机器之心编译 参与:小舟.魔王 Transformer 的高性能依赖于极高的算力,这让移动端 NLP 严重受限. ...
- 不用地图如何导航?DeepMind提出新型双路径强化学习「智能体」架构
来源:deepmind.arXiv 作者:Piotr Mirowski.Matthew Koichi Grimes.Mateusz Malinowski.Karl Moritz Hermann.Kei ...
- 【强化学习】不用地图如何导航?DeepMind提出新型双路径强化学习「智能体」架构
来源:deepmind.arXiv 作者:Piotr Mirowski.Matthew Koichi Grimes.Mateusz Malinowski.Karl Moritz Hermann.Kei ...
- Python机器学习、深度学习库总结(内含大量示例,建议收藏)
Python机器学习.深度学习库总结(内含大量示例,建议收藏) 前言 python常用机器学习及深度学习库介绍 总结与分类 python 常用机器学习及深度学习库总结 分类 更多 前言 目前,随着人工 ...
- Python机器学习、深度学习库总结
Python机器学习.深度学习库总结(内含大量示例,建议收藏) 前言 python常用机器学习及深度学习库介绍 总结与分类 python 常用机器学习及深度学习库总结 分类 更多 前言 为了大家能够对 ...
- 盘点27个机器学习、深度学习库最频繁使用的 Python 工具包(内含大量示例,建议收藏)
目前,随着人工智能的大热,吸引了诸多行业对于人工智能的关注,同时也迎来了一波又一波的人工智能学习的热潮,虽然人工智能背后的原理并不能通过短短一文给予详细介绍,但是像所有学科一样,我们并不需要从头开始& ...
- 小样本点云深度学习库_合成鲁棒的对抗样本来欺骗深度学习分类器
本期一诺sec关注深度学习系统安全问题,推荐一篇来自ICML 2018会议论文Synthesizing Robust Adversarial Examples.论文链接http://proceedin ...
- 小样本点云深度学习库_小样本学习综述报告
文章内容整理:Enneng Yang, Xiaoqing Cao 本文仅作为学习交流使用,如有问题,请联系ennengyang@qq.com. 1.小样本问题的研究意义✚●○ 深度学习已经在各个领域取 ...
- 小样本点云深度学习库_论文 | 小样本学习综述
转自:专知[https://www.zhuanzhi.ai/] [导读]现有的机器学习方法在很多场景下需要依赖大量的训练样本.但机器学习方法是否可以模仿人类,基于先验知识等,只基于少量的样本就可以进行 ...
最新文章
- 服务器端发送邮件签名采用Data URI scheme包含图片
- hadoop com.mysql.jdbc.driver_hadoop – Impala找不到com.mysql.jdbc.Driver
- NLP - 新闻文本分类-baseline
- #华为云·寻找黑马程序员#【代码重构之路】我是如何将8行代码缩减成1行的
- Android 系统性能优化(41)---Android代码内存优化建议-OnTrimMemory优化
- React.js 官网入门教程 分离文件 操作无法正常显示HelloWord
- 认识RabbitMQ交换机模型
- Confluence 企业服务器正遭攻击
- 多少开发人员 饿了么_饿了么CPS新社交电商,2020年的创业新风口
- 未来教育全国计算机考试,未来教育.全国计算机等级考试
- 什么是负反馈电路?微分.积分电路?“自激”现象?
- request请求参数中文乱码问题
- 再谈:数据治理的长效运营机制!
- 全国计算机等级四级计算机网络第6套答案,全国计算机等级考试四级计算机网络第6套试题(2)...
- B.系数 (Lucas定理)
- 在线教育颠覆传统教育
- 那些程序员之间丧心病狂的鄙视链,你在哪一层?
- Java期末考试试题及参考答案(07)
- Linux那些事儿 之 戏说USB(22)设备的生命线(一)
- 就只想要几个c币,单独够买又不行,哎
热门文章
- 两个单片机iic通讯程序_PIC单片机之DS1302时钟
- php中获取随机数的方法,PHP实现获取随机数的方法
- (第八章)左右外连接
- 如何在注解上拿到方法中的参数_想自己写框架?不会写Java注解可不行
- linux acl源码,acl框架库下载
- ROS入门 小乌龟跟随示例
- 二叉树的遍历 C/C++语言实现
- Python——(Anaconda+PyCharm)Youki的Python环境配置笔记(Ubuntu+Windows)~
- ESP32开发 CMakeLists包含同级目录.h文件,error: gpioX.h: No such file or directory
- 【设计模式】适配器模式(Adapter Pattern)