Geo-CNN的三维点云
Geo-CNN的三维点云
Modeling Local Geometric Structure of 3D Point Clouds using Geo-CNN
摘要
深度卷积神经网络(CNNs)的最新进展促使研究人员采用CNNs直接对三维点云中的点进行建模。局部结构的建模已经被证明是卷积结构成功的关键,研究人员在特征提取层次中开发了局部点集的建模。对于局部区域内点间几何结构的显式建模研究却很少。提出GeoCNN,它对每个点及其局部邻域应用一种称为GeoConv的类卷积运算。在提取中心点与相邻点的边缘特征时,捕捉点之间的局部几何关系。将边缘特征提取过程分解为三个正交基,根据边缘向量与基之间的夹角对提取的特征进行聚合。在整个特征提取层次中保持欧几里德空间中的几何结构。GeoConv是一种通用且高效的操作,可轻松集成到多个应用程序的三维点云分析管道中。在ModelNet40和KITTI上评估Geo-CNN,并获得最先进的性能。
创新点
为了解决这些问题,提出了一种新的卷积式操作GeoConv,在特征提取的整个层次中,显式地建模点之间的几何结构。GeoConv应用于每个点及其由半径确定的局部球面邻域。如图1所示,表示两点间几何结构的向量p~q可以分解为三个正交基。通过将边缘特征提取过程分解为三个正交方向,减少点云绝对坐标的方差,鼓励网络沿着每个基独立学习边缘特征;根据边缘向量与基之间的几何关系聚合特征,显式地建立点之间的几何结构模型。这种学习方式在保留几何信息的同时,将复杂的几何结构学习问题分解为简单的几何结构学习问题。最后,为了提取中心点的局部特征,基于p~q范数对局部邻域中所有点的边缘特征进行加权,GeoConv的另一个优点是能够实现特征级的多视图增强。分解聚合方法可以通过操纵角度来重新加权特征,从而在特征层近似点云的旋转。
通过将多层GeoConv与越来越大的邻域进行叠加,构建Geo CNN,通过增加接收域来分层提取特征。通过通道最大值池来聚合所有点的特征,以保持置换不变性。GeoConv是对点的局部几何结构进行建模的通用模块。可以很容易地集成到不同的管道中进行三维点云分析,例如三维形状分类、分割和目标检测。对Geo-CNN的ModelNet40[51]和KITTI[17]进行了评估,并获得了最佳性能状态。
以一组三维点为输入,通过对每个点及其局部邻域应用卷积类运算(GeoConv)来开发局部几何结构。通过增加邻域大小来叠加多个GeoConv层来构建Geo-CNN。逐步扩大卷积的接受域,并抽象出越来越大的局部区域,以分层提取特征并保持沿层次的点的几何结构(如图2的(a)所示)。
B = {(1,0,0),(−1,0,0),(0,1,0), (0,−1,0),(0,0,1),(0,0,−1)}
如图2的(c)所示,六个基将空间分成8个象限,特定象限中的任何矢量都可以由B之外的三个基组成。给定一个相邻点q,定位它所处的象限(将p设为原点来考虑相对坐标系)。将矢量p~q投影到该象限的三个基上,计算p~q与各基之间的夹角(如图2(d)所示)。
表1显示了Geo-CNN和以前的方法之间的比较。Geo CNN在对象分类任务中使用ModelNet401的两个评估指标实现了最新的性能。本文使用最先进的PointNet++[35]实现了类似的性能。
用GeoConv代替v1分割网络中的点网特征提取模块,GeoCNN的截头台性能优于v1和v2截头台。根据[32]发布的代码评估验证集上的截头台v1和v2的性能,它与[32]中报告的性能非常相似。在图4的二维和三维图像上用Geo-CNN可视化截头台的检测结果。
表2显示了KITTI 3D目标检测的评估结果。检测管道的实现基于截锥点网v1,涉及到2D对象检测中的对象建议[36、18、59、26、58]。v1的性能被更复杂体系结构的截头体PointNet v2超越。
如表3所示,直接学习点之间的几何结构或系数以从三维坐标中聚合分解的特征没有帮助。
评估了特征级多视图增强的效果。一种将多视图信息融合到网络学习过程中的简单方法,训练时随机旋转输入点云作为数据增强。在GeoConv中提出的分解-聚集方法,使我们能够在特征层近似三维多视图增强。表5显示了ModelNet40数据集上输入级多视图增强和特征级近似的性能。观察到输入级多视图数据增强导致基线法和Geo-CNN的性能下降。一个可能的原因是,输入级数据的增加会导致不同视图之间的差异很大,而这种差异不能用单一的紧凑模型来正确地学习。另一种可能的解决方案是学习具有不同视图的单独模型,然后将其聚合。多网络模型的复杂性,其灵活性和可扩展性较差。
Geo-CNN的三维点云的更多相关文章
- CVPR2020:训练多视图三维点云配准
CVPR2020:训练多视图三维点云配准 Learning Multiview 3D Point Cloud Registration 源代码和预训练模型:https://github.com/zgo ...
- CVPR2020:端到端学习三维点云的局部多视图描述符
CVPR2020:端到端学习三维点云的局部多视图描述符 End-to-End Learning Local Multi-View Descriptors for 3D Point Clouds 论文地 ...
- CVPR2020:三维点云无监督表示学习的全局局部双向推理
CVPR2020:三维点云无监督表示学习的全局局部双向推理 Global-Local Bidirectional Reasoning for Unsupervised Representation L ...
- 第一周:读取XML深度数据并将其重建为三维点云
本周主要任务:学习PCL点云库,掌握利用PCL对点云处理的方法 任务时间:2014年9月1日-2014年9月7日 任务完成情况:完成了读取单幅xml深度数据,并重建三维点云并显示 任务涉及基本方法: ...
- python读取三维点云球坐标数据并动态生成三维图像与着色
关键步骤: 1.首先通过读取.txt文本数据并进行一系列字符串处理,提取显示所需要的相关数据矩阵 2.然后利用python的matplotlib库来进行动态三维显示 备注:matplotlib在显示2 ...
- Dlib三维点云示例
Dlib三维点云示例 源代码来自Dlib的示例代码http://dlib.net/3d_point_cloud_ex.cpp.html 在windows下需要链接winmm``comctl32``gd ...
- Matlab给三维点云添加高斯噪声和随机噪声
写在前面 在我们进行点云配准一类的模拟实验时,第一步就是对原始点云进行适当的RT变换,并添加一定的噪声,得到测量点云,然后才可以用我们的算法去进行后面的配准操作.在添加噪声这一块,matlab里并没有 ...
- 三维点云去噪无监督学习:ICCV2019论文分析
三维点云去噪无监督学习:ICCV2019论文分析 Total Denoising: Unsupervised Learning of 3D Point Cloud Cleaning 论文链接: htt ...
- python处理点云数据并生成三维点云模型
1.python代码: 1 import numpy as np 2 import matplotlib.pyplot as plt 3 from mpl_toolkits.mplot3d impor ...
随机推荐
- 「跬步千里」详解 Java 内存模型与原子性、可见性、有序性
文题 "跬步千里" 主要是为了凸显这篇文章的基础性与重要性(狗头),并发编程这块的知识也确实主要围绕着 JMM 和三大性质来展开. 全文脉络如下: 1)为什么要学习并发编程? 2) ...
- Hook android系统调用研究(一)
本文的博客链接:http://blog.csdn.net/qq1084283172/article/details/55657300 一.Android内核源码的编译环境 系统环境:Ubuntu 14 ...
- Android Dex分包之旅
http://yydcdut.com/2016/03/20/split-dex/ http://blog.zongwu233.com/the-touble-of-multidex http://tec ...
- anaconda安装教程
Anaconda是一个方便的python包管理和环境管理软件,一般用来配置不同的项目环境.我们常常会遇到这样的情况,正在做的项目A和项目B分别基于python2和python3,而第电脑只能安装一个环 ...
- 【python】Leetcode每日一题-132模式
[python]Leetcode每日一题-132模式 [题目描述] 给定一个整数序列:a1, a2, ..., an,一个132模式的子序列 ai, aj, ak 被定义为:当 i < j &l ...
- mysql-创建用户并授权,设置允许远程连接
一.创建用户并授权 1.登录mysql mysql -u root -q 2.创建数据库 create database dbdata;//以创建dbdata为例 3.创建用户 创建user01,只能 ...
- utf8改成utf8mb4实战教程
前言: 在 MySQL 中,系统支持诸多字符集,不同字符集之间也略有区别.目前最常用的字符集应该是 utf8 和 utf8mb4 了,相比于 utf8 ,utf8mb4 支持存储 emoji 表情,使 ...
- 『居善地』接口测试 — 5、使用Requests库发送POST请求
目录 1.请求正文是application/x-www-form-urlencoded 2.请求正文是raw (1)json格式文本(application/json) (2)xml格式文本(text ...
- Jenkins 基础篇 - 基础设置
站点设置 刚搭建好 Jenkins 环境,你还需要做一些简单设置,让我们的 Jenkins 看起来是这么一回事,特别是你要用于生产环境的时候.首先就是域名配置,如果你为 Jenkins 服务分配了一个 ...
- 个人项目作业$\cdot$求交点个数
个人项目作业\(\cdot\)求交点个数 一.作业要求简介 本次作业是北航计算机学院软件工程课程的个人项目作业,个人开发能力对于软件开发团队是至关重要的,本项目旨在通过一个求几何图形的交点的需求来使学 ...