3D点云几何拟合

Supervised Fitting of Geometric Primitives to 3D Point Clouds

论文地址:

http://openaccess.thecvf.com/content_CVPR_2019/papers/Li_Supervised_Fitting_of_Geometric_Primitives_to_3D_Point_Clouds_CVPR_2019_paper.pdf

摘要

将几何基元拟合到三维点云数据可以在底层三维形状的低层数字化三维数据和高层结构信息之间建立一个桥梁。使许多下游应用在三维数据处理。长期以来,基于RANSAC的方法一直是解决此类原始设置问题的金标准,需要对每个输入参数进行仔细的调整,无法很好地适应具有不同形状的大型数据集。引入了有监督原始拟合网络(SPFN),一种端到端的神经网络,可在不受任何用户控制的情况下,在不同的尺度上检测出不同数量的原始体。该方法利用地面真值原始曲面和原始隶属度对网络进行监督。架构不是直接预测原型,而是首先预测每一点的属性,然后使用微分模型估计模块计算原始类型和参数。在一个新的ANSI三维机械部件模型基准上评估了的方法,并证明了与目前最先进的基于ransac的方法和直接神经预测方法相比的显著改进。

主要贡献

•提出SPFN,一种端到端的有监督神经网络,它以点云为输入,检测不同尺度的不同数量的基元。

•可微原始模型估计器解决了一系列线性最小二乘问题,从而使整个管道端到端可训练。

•使用一个新的机械部件CAD模型数据集来演示网络的性能。

最近的三维扫描技术和大规模的三维存储库拓宽了三维几何数据处理的机会。但是,这些存储库中的大多数扫描数据和模型都表示为数字化点云或网格。由于缺乏与形状语义一致的结构信息,三维数据的这种低级表示限制了对它们进行几何操作的能力。例如,当编辑从几何基本体构建的形状时,对每个基本体的类型和参数的了解可以极大地帮助操作生成可信的结果(图1)。为了解决数字化数据中缺乏此类结构信息的问题,本文考虑了将三维点云映射到一些最适合底层形状的几何基元的转换问题。

Supervised Primitive Fitting Network

提出了一种监督基元拟合网络(SPFN),该网络采用点云P∈RN×3表示的输入形状,其中N是点的个数,并预测了一组最适合输入的几何基元。SPFN的输出包含每个原型的类型和参数,以及分配给它的输入点列表。网络支持L=4种类型的基元:平面、球体、圆柱体和圆锥体(图3),将这些类型相应地索引0、1、2、3。本文将使用符号{·}i,:和{·}:,k分别表示矩阵的第i行和第k列。

训练时的SPFN管道如图2所示。使用PointNet++[25]分段体系结构来使用输入点云P。一个小小的改进是,在PointNet++管道的末端添加了三个独立的完全连接层,方便预测计算。

计算了成员矩阵W和ˆW中所有列对的并集上的松弛交集(RIoU)[15]。两个指示向量W和Wˆ的RIoU定义如下:

然后通过匈牙利匹配[16]给出两个矩阵列之间的最佳一对一对应关系(由RIoU确定)。根据这一对应关系,对真值原型进行重新排序,使真值原型k与预测的原型k相匹配。由于小扰动将导致匹配结果变化的输入集的测度为零,因此整个管道几乎处处保持可微。使用外部匈牙利匹配解算器获得最佳匹配指标,将这些指标注入网络,进一步的损失计算和梯度传播。

Evaluation Metrics

评估指标设计如下。对单个形状的每个数量进行描述,并将数字报告为所有测试形状中这些数量的平均值。对于每一个基元度量,先按照执行基元重新排序,以便匹配预测基元和基本真元的索引。

在表1中报告了SPFN和effient RANSAC的结果。由于Ef-fient RANSAC能够提供更高分辨率的点云,使用与SPFN(第1行)相同的8k输入点云和以相同方式采样和扰动的另一64k输入点云(第2行)对其进行测试。即使与高分辨率点云的结果相比,SPFN在所有指标上都优于Ef-fient RANSAC。阈值为0.01的{Sk}和P覆盖率数字都显示了较大的边距,
SPFN fits原型更加精确。

引入每个点来测试有效的RANSAC SPFN预测的属性。首先训练只有Lseg损失的SPFN,然后对预测的隶属度矩阵中的每一段使用effient RANSAC预测单个原型(表1,第4行)。进一步在训练中依次添加Ltype和Lnorm损失,并在effient RANSAC(第5-6行)中使用预测的原始类型ˆt和点法线ˆN。

图5说明了{Sk}覆盖率,对于不同尺度的地面真值原型,覆盖率Q为0.01。有效的RANSAC覆盖率在利用网络分割结果时有所提高,但在规模较小时仍然较低。相反,SPFN在所有尺度上都表现出一致的高覆盖率。

为了测试真实的噪声模式,三维打印了一些测试模型,并使用DAVID SLS2三维扫描仪扫描了输出。注意,在合成噪声上训练的SPFN成功地重建了所有原型,包括小片段(图6)。

3D点云几何拟合的更多相关文章

  1. 2020厦门大学综述翻译:3D点云深度学习(Remote Sensiong期刊)

    目录 摘要 1.引言: 2.点云深度学习的挑战 3.基于结构化网格的学习 3.1 基于体素 3.2 基于多视图 3.3 高维晶格 4.直接在点云上进行的深度学习 4.1 PointNet 4.2 局部 ...

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

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

  3. 3D点云配准算法简述

    ​蝶恋花·槛菊愁烟兰泣露 槛菊愁烟兰泣露,罗幕轻寒,燕子双飞去. 明月不谙离恨苦,斜光到晓穿朱户. 昨夜西风凋碧树,独上高楼,望尽天涯路. 欲寄彩笺兼尺素.山长水阔知何处? --晏殊 导读: 3D点云 ...

  4. 3D点云完美匹配

    3D点云完美匹配 The Perfect Match: 3D Point Cloud Matching with Smoothed Densities 地址链接: http://openaccess. ...

  5. 3D点云深度学*

    3D点云深度学* 在自动驾驶中关于三维点云的深度学*方法应用.三维场景语义理解的方法以及对应的关键技术介绍. 1. 数据 但是对于3D点云,数据正在迅速增长.大有从2D向3D发展的趋势,比如在open ...

  6. 3D点云点云分割、目标检测、分类

    3D点云点云分割.目标检测.分类 原标题Deep Learning for 3D Point Clouds: A Survey 作者Yulan Guo, Hanyun Wang, Qingyong H ...

  7. 3D点云重建原理及Pytorch实现

    3D点云重建原理及Pytorch实现 Pytorch: Learning Efficient Point Cloud Generation for Dense 3D Object Reconstruc ...

  8. 2020国防科大综述:3D点云深度学习——综述(3D点云分割部分)

    目录 摘要 1.引言: 2.背景 2.1 数据集 2.2评价指标 3.3D点云分割 3.1 3D语义分割 3.1.1 基于投影的方法 多视图表示 球形表示 3.1.2 基于离散的方法 稠密离散表示 稀 ...

  9. 2020国防科大综述:3D点云深度学习—综述(点云形状识别部分)

    目录 摘要 1.引言: 2.背景 2.1 数据集 2.2评价指标 3.3D形状分类 3.1基于多视图的方法 3.2基于体素的方法 3.3基于点的方法 3.3.1 点对多层感知机方法 3.3.2基于卷积 ...

随机推荐

  1. hdu2100 26进制加法

    题意:       给你两个26进制数,让你算出他们两个的和. 思路:      水题不解释了,注意这样的数据 AAA AAA 输出A #include<stdio.h> #include ...

  2. 路由器逆向分析------binwalk工具的安装

    本文博客链接:http://blog.csdn.net/qq1084283172/article/details/65441110 一.binwalk工具运行支持的平台 binwalk工具安装支持的平 ...

  3. DVWA之Command injection(命令执行漏洞)

    目录 Low Medium Middle Impossible 命令执行漏洞的原理:在操作系统中, &  .&& .|  . ||   都可以作为命令连接符使用,用户通过浏览器 ...

  4. PHP 上传文件至阿里云OSS对象存储

    简述 1.阿里云开通对象存储服务 OSS 并创建Bucket 2.下载PHP SDK至框架扩展目录,点我下载 3.码上code 阿里云操作 开通对象存储服务 OSS 创建 Bucket 配置Acces ...

  5. python-内置函数-compile,eval,exec

    #将字符串,编译成python代码 compile()#执行,有返回值,执行表达式并获取结果 eval()#执行python代码,无返回值,接收:代码或者字符串 exec() s = "pr ...

  6. 浅谈自动特征构造工具Featuretools

    简介 特征工程在机器学习中具有重要意义,但是通过手动创造特征是一个缓慢且艰巨的过程.Python的特征工程库featuretools可以帮助我们简化这一过程.Featuretools是执行自动化特征工 ...

  7. 看雪加密解密第一个traceme程序破解

    工具:ollydbg(吾爱破解2.10版) 工具设置:因为traceme是一个win32图形用户程序,所以其程序入口点在WinMain()函数处,设置ollydbg的调试设置的事件选项,选中在WinM ...

  8. Jenkins 基础篇 - 小试牛刀

    现在我们来创建一个简单的 Jenkins 任务,这个任务输出 Java 版本信息和系统信息,通过这个任务我们先了解创建 Jenkins 任务的流程,以及了解一些对任务的基础设置,接下来就是演示任务的整 ...

  9. makefile的函数集合

    strip函数:$(strip text) 函数功能:去除字符串空格函数 示例: STR =        a    b c      LOSTR = $(strip $(STR)) #结果是&quo ...

  10. golang:正则表达式总结

    正则表达式是一种进行模式匹配和文本操纵的复杂而又强大的工具.虽然正则表达式比纯粹的文本匹配效率低,但是它却更灵活.按照它的语法规则,随需构造出的匹配模式就能够从原始文本中筛选出几乎任何你想要得到的字符 ...