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. 【JDK8】Java8 Stream流API常用操作

    Java版本现在已经发布到JDK13了,目前公司还是用的JDK8,还是有必要了解一些JDK8的新特性的,例如优雅判空的Optional类,操作集合的Stream流,函数式编程等等;这里就按操作例举一些 ...

  2. 【并发编程】线程池是否需要手动关闭吗?以Hutool中的线程池为例

    Hutool工具包中使用线程池的API是: ThreadUtil.execute() /** * 直接在公共线程池中执行线程 * * @param runnable 可运行对象 */ public s ...

  3. ip协议是哪一层的协议

    IP协议对应于OSI标准模型的网络层. TCP/IP: 数据链路层:ARP,RARP 网络层: IP,ICMP,IGMP 传输层:TCP ,UDP,UGP 应用层:Telnet,FTP,SMTP,SN ...

  4. hdu3234 带权并查集(XOR)

    题意:       给你n个未知的正整数,有三总操作       I P V            P的值是V       I P Q V          P XOR Q = V       Q K ...

  5. Backdoor.Zegost木马病毒分析(一)

    http://blog.csdn.net/qq1084283172/article/details/50413426 一.样本信息 样本名称:rt55.exe 样本大小: 159288 字节 文件类型 ...

  6. Linux配置yum源(本地源和网络源)

    目录 一:配置本地yum源 二:配置网络yum源 更新源可以获取最新的软件信息,以更新您的系统 Redhat7配置源 YUM(Yellow dog  Updater Modified): yum是Re ...

  7. CVE-2018-8174(双杀漏洞)复现

    目录 CVE-2018-8174双杀漏洞复现一(不稳定) 下载payload MSF监听 CVE-2018-8174双杀漏洞复现二

  8. 三、jmeter常用的元件及组件

    一.HTTP cookie Manager 用来储浏览器产生的用户信息,Stepping Thread Group 可用于模拟阶梯加压! 二.HTTP Cache Manager 缓存管理器(模拟浏览 ...

  9. 【.Net Core】分析.net core在linux下内存占用过高问题

    现象 随着程序运行,内存占用率越来越高,直到触发linux的OOM,程序被杀死. 分析工具 运行环境:.net core 3.1(微软的分析工具要求最低3.0,无法分析2.1的core程序,需要先改为 ...

  10. Java中如何保证线程顺序执行

    只要了解过多线程,我们就知道线程开始的顺序跟执行的顺序是不一样的.如果只是创建三个线程然后执行,最后的执行顺序是不可预期的.这是因为在创建完线程之后,线程执行的开始时间取决于CPU何时分配时间片,线程 ...