Scan2CAD: Learning CAD Model Alignment in RGB-D Scans学习总结

本文介绍了Scan2CAD研究,该研究利用3D卷积神经网络对RGB-D扫描数据进行处理,生成热图并通过9DoF优化实现CAD模型的对齐。研究人员创建了Scan2CAD数据集,使用手动标注的关键点对进行训练,并设计了评估基准。神经网络部分,使用SDF和DF表示扫描和CAD数据,通过不同卷积结构进行特征提取。最终,通过损失函数结合BCE和NLL训练网络,优化对齐过程。
摘要由CSDN通过智能技术生成

Scan2CAD: Learning CAD Model Alignment in RGB-D Scans的学习总结

概述:团队研究人员研究的内容是通过训练后的新颖3D卷积神经网络去接受一个半虚拟半真实组合成的对象作为输入,并且生成相对应的热图,最后通过一个9DoF位姿优化算法去将这个热图最终重建成一个对应的CAD模型并且根据输入场景进行对齐。

数据集设计:
他们设计了自己的数据集Scan2CAD作为训练神经网络的数据。Scan2CAD数据集的设计都是基于ShapeNet中的CAD模型以及ScanNet中的扫描图片。研究人员通过手动标注扫描图片和CAD模型的对应关键点对来完成图片和模型的对齐工作(关键点对需要保持在6个及以上)。这些标注后的数据就作为训练神经网络的数据集。

Benchmark:
他们设计了一个Benchmark来判定他们的Scan2CAD方法是否成功对齐。他们通过9DoF的数据来定量误差阈值(三维度位移,三维度旋转,三维度scale)。如果位移的误差阈值≤20cm, 旋转的误差阈值≤20°,scale的误差阈值≤20%则是成功的对齐。

神经网络:
对于输入数据的表达式Scan data和CAD data都采用了不同的表达方式。Scan data通过有向距离场(SDF)来表达在一个volumetric grid中。CAD data则是通过github中的工具直接转换成距离场(DF)表达。
个人认为以下的博客对于SDF和DF有十分清晰的定义:
https://www.jianshu.com/p/c466e8b2c854?utm_campaign=haruki(SDF)
https://www.zhihu.com/question/314433176(DF)

个人认为研究人员使用SDF表达Scan data是为了保证在扫描数据在经过卷积神经网络的加密之后,加密后的信息依然保持较高的准确性。(平面数据)
在CAD data的表达中是一个三维立体数据,所以可以通过距离场去表示。

他们同时将Scan data和CAD data作为输入,然后经由不同的卷积结构加密,将最终结果链接在一起并且作为输入值传输到解码区,解码区会对热图,兼容性和比例分别进行预测。如下图所示:

在这里插入图片描述
在这里插入图片描述

注:图中的(K,S,C)结构代表(卷积核大小,步长,数字通道)。
ConvBlock是由Conv3-BatchNorm-ReLu结构组成的一个卷积块,ResBlock本质上是用来跳过连接层。BigBlock则包含着两个连续的ResBlock。

BatchNorm详解:https://blog.csdn.net/wzy_zju/article/details/81262453

每个热图的的最终大小都为32×32×32,初始的输出是H:Ω→[0,1](映射),这代表图像中每个voxel(体素)在定义域为Ω∈N×N×N(N在这里指代自然数集)匹配到扫描SDF中心点的匹配概率值。每个体素都在[0,1]区间内的概率值表达模型匹配的概率。后续将二元交叉熵(BCE)和负对数似然(NLL)结合使用去训练神经网络。在最后一层的解码层会得到一个原始的输出S:Ω→R(R在这里指代实数集),最终通过这个输出去生成热图:
在这里插入图片描述
可以通过公式看出最终的损失函数L是通过将BCE和NLL相加得出。if x > 0.0, ω(x)=64.0, else ω(x)=1.0。v=64是加权因子用来提高体素网格中稀疏体素的信号。HGT在这里指代的是ground truth数据。sigmoid和softmax分别是两个激励函数。

关于误差函数和激励函数个人找了一篇比较直观的博客:
(https://www.cnblogs.com/woodyh5/p/12067215.html)误差函数
(https://blog.csdn.net/yizhen_acmer/article/details/55652187?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1.channel_param)激励函数

兼容性概率的取值范围在[0,1]之间,如果概率的值越大则越说明scan data和CAD data之间的相似性很高,对于兼容性的误差计算先使用了sigmoid函数,后使用了BCE:
在这里插入图片描述

对于Scale的预测则是使用了最普遍的均方差方法(MSE):

在这里插入图片描述
最后用一个加权组合误差去训练网络:
在这里插入图片描述

对齐优化:
对齐优化的输入值是从场景S中的模型M中获取到的一个Harris keypoints的集合K。他们会从K中筛选出需要的值进行优化。他们采用了Otsu阈值分割算法去筛选数据。

接着他们设计了一个变量优化方法。根据Harris keypoints p j p_j pj

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值