欢迎光临散文网 会员登陆 & 注册

化繁为简:从复杂RGB场景中抽象出简单的3D几何基元(CVPR 2021)

2022-09-04 20:30 作者:3D视觉工坊  | 我要投稿

Cuboids Revisited: Learning Robust 3D Shape Fitting to Single RGB Images (CVPR 2021)代码地址:github.com/fkluger/cubo

作者:PCB_Segmen |来源:微信公众号「3D视觉工坊」

1、背景

如何用简单的基于部分的表示来抽象表达出复杂3D场景中的几何基元布局一直是计算机视觉领域的目标之一。人类可以通过简单形状基元(如立方体或几何图形)的渲染来理解复杂的场景。例如,一所房子是由砖块和方木制成的,一本书是由长方形组合而成的立方体。同时,人类还可以通过将环境分解为立方体、圆柱体、椭圆体和其他简单的体积基元的排列组合,实现在视觉上抽象的表征现实世界的环境。这种3D世界的抽象表达对于具有视觉感知的机器人也非常有用。自计算机视觉问世以来,基于几何形状基元的场景表示一直都是一个值得研究的话题。人类总是希望感知现实世界并将其构建为简单几何参数模型的组合,如图1所示。尤其是在一些人造环境,我们总是可以看到由几何元素基元组成的实体,例如立方体或圆柱体。因此正确推断出这些几何基元是获得高级抽象场景描述的重要步骤。

图1 简单的3D几何基元分析近年来,随着深度学习领域的快速发展,从单张图像进行高质量3D重建已经成为可能。大多数方法可以从RGB图像中恢复3D信息,例如深度和网格信息。但很少有工作考虑更简洁的3D形状描述。现有工作的3D形状解析器适用于孤立对象,但不能推广到更复杂的现实世界场景(参见图2)。以前的方法直接从2D或3D输入端估计形状参数,并且只能再现简单的几何对象,但无法在更复杂的3D场景实现物体的准确解析。相比之下,本文提出了一种用于几何基元拟合的鲁棒估计器,它可以使用立方体有意义地抽象现实世界环境。由神经网络引导的RANSAC估计器将这些几何基元拟合到3D特征上,例如深度信息。作者根据之前检测到的部分场景来调节网络,从而逐一解析它。为了从单个RGB图像中获取3D特征,作者还以端到端的方式优化了特征提取CNN。然而,直接最小化点到原始距离会导致大的或错误的立方体遮挡后面的部分场景。因此,作者还提出了一种能够正确处理不透明场景的遮挡感知距离度量。所提出的算法不需要大量的标签用于训练。在具有挑战性的 NYU Depth v2 数据集上的结果表明,所提出的算法成功地抽象出了杂乱真实世界中的3D场景布局。

图2 基于几何基元的场景抽象:研究者通过解析现实世界场景的图像(a),使用立方体(c)生成其3D结构的抽象。同时该方法能够比以前基于超二次曲线的工作(b)更准确地捕获场景结构。

本文主要贡献如下:

•提出了一种3D场景解析器,可以处理比以前的3D场景抽象工作更复杂的真实场景。

•提出了一种针对不透明场景的遮挡感知距离度量。

•解决了关于输入特征立方体梯度的解析推导,可以通过提出的最小求解器规避不可行的反向传播,从而实现端到端训练。

•方法不需要大量的立方体或对象注释标签,从而可以在现成的数据上进行训练。

2、核心思想

作者通过将一组形状基元M拟合到特征Y来解决抽象目标场景Z的问题,这些特征Y可以直接提供,也可以从观测数据X中提取。这里,Z表示GT深度或其对应的点云,X是与Z对齐的场景的RGB图像。特征Y等于Z,或者如果Z未知,则通过函数Y=fv (X)估计。函数fv通过具有参数v的神经网络实现。每个基元h∈M是一个具有可变大小和位姿的立方体。有关X、Y和M的处理流程示例,见图3。

图3   方法概述:给定观察值X(RGB图像),本文使用参数为v的神经网络预测3D特征Y(深度图)。对于每个特征y∈Y,以状态s为条件,参数为w的第二个神经网络预测采样权重p(y|s;w)∈Q。使用这些权重,基于RANSAC的估计器对最小的特征集进行采样,并生成基元(立方体)假设H。选择最佳假设h^∈H并将其附加到先前的集合中恢复几何基元集M。最后根据M,更新状态s并重复该过程以逐步恢复场景中所有几何基元。对于几何基元拟合,作者在Kluger等人的鲁棒多模型估计器的基础上建立估计模型。该估计器通过具有参数w的神经网络从观测值Y和状态s预测采样权重p=fw(Y,s),这些参数是从数据中学习得到的。所提方法根据p从Y中采样最小特征集,并通过最小求解器fh拟合基元假设集H。从这些假设中,作者根据内部标准选择最佳基元h^∈H,并将其添加到当前基元集M中。然后基于M更新状态s并预测新的采样权重p以便采样和选择下一个基元。如图3所示,这个过程被重复,直到所有的几何基元都被一一地找到。与Kluger工作不同的是,作者以端到端的方式与特征提取器fv联合学习采样权重预测器fw的参数。需要指出的是,在这项工作中处理的场景是使用RGB-D相机拍摄的,只有2.5D信息,即场景只包含可见部分的3D信息,而没有关于被遮挡部分的信息。因此,没有完整的3D形状可用作场景的GT。这一事实可能会导致计算过程中选择错误、过大或不合适的基元,出于这个原因,作者提出了遮挡感知距离和内部指标,如图4所示。

图4 遮挡情况说明:给定一个点云(✕)、两个立方体(A和B)和一个观察场景的摄像机。立方体A更适合,因为它不遮挡任何点。

A.特征提取:为了将3D形状(例如立方体)拟合到RGB图像X中,必须从X中提取3D特征Y。这里使用深度估计器fv,它以像素深度图的形式为我们提供所需的特征Y=fv(X)。深度估计器通过具有参数v的卷积神经网络实现。然后使用已知的相机内参K通过反向投影将Y转换为点云。

B.立方体参数化:立方体由其形状(ax,ay,az)和位姿(R,t)描述。形状对应于以立方体为中心的坐标系中的宽度、高度和长度,而其位姿将后者转换为世界坐标系。作者用角轴符号r=θu表示旋转R。旋转矩阵有9个未知量,因此需要至少9个点集来估计基元。

点到立方体的距离。在计算点y=(x,y,z)T和立方体h=(ax,ay,az,R,t)之间的距离时,作者首先将y转换为以立方体为中心的坐标系:y^=R(y-t)。然后计算它到立方体表面的平方距离:。

类似地,可以计算点到立方体六个独立边中的任何一个的距离。例如,将与 x 轴正方向正交的平面定义为第一边,可以将点 y 到它的距离定义为:

距离立方体的其他边的距离 dP2, . . . , dP6以此类推完成计算。

遮挡处理。在处理仅具包含场景可见部分的2.5D数据时,只计算最小的点到立方体的距离是不够的。图4给出了一个直观的例子:所有点到立方体A或B的最近表面的平均距离是相同的。但是,立方体B的可见表面会遮挡所有点,而无法表示场景中存在的任何结构。另一方面,立方体A不遮挡任何点,其可见表面非常适合场景中的实际结构。尽管其表面的其他部分也不代表任何结构,但它们是自遮挡的,因此不会影响结果。综上,立方体A比立方体B更适合。

遮挡感知点到立方体距离。为了正确评估有遮挡的场景,作者提出了一个遮挡感知的点到立方体距离:给定一个点y和一组立方体 M = {h1, . . . , h|M|},作者计算它到最远端的遮挡表面的距离。

如果y完全没有被遮挡,这个距离自然会变为零。因此将点到一组立方体的遮挡感知距离定义为:

C.鲁棒的拟合:为了在可能有噪声的3D特征y∈Y中更加鲁棒地拟合一组立方体M={h1, . . . ,h|M|},作者在Kluger等人的鲁棒多模型拟合方法的基础上,构建以下过程:

1.采样。使用神经网络fw从数据Y中预测采样权重集合p。在Kluger等人的工作中,每一步都预测一组采样权重p(Y|M)。理想情况下,这些权重应该突出Y中的单个结构并抑制其余结构。但是,一个场景中往往存在多个重要结构。因此,首先需要强调和采样的结构可能无法被正确识别。为了解决这个问题,作者将网络改为预测几组采样权重Q={p1, . . . ,pQ}和相应的选择概率q(Y|M)∈RQ,如图5所示。首先,根据q随机选择一个抽样权重集p∈Q。然后根据选定的采样权重p对最小的特征集进行采样,以生成立方体假设。这样就可以实现网络一次突出显示多个结构,而不会相互干扰。使用这些采样权重,基于RANSAC的估计器会生成一个立方体实例h,我们将其附加到M。

图5 采样权重:对于每张图像,预测多组采样权重 Q = {p1, . . . ,pQ}和相应的选择概率q= [q1, . . . ,qQ]。在这个例子中,前三个采样权重集大致覆盖了场景的不同部分。第四组 p4 没有覆盖大部分场景,但其被选择的概率也最低。

2. 拟合。给定最小的采样特征集S = {y1, . . . ,yC} ⊂ Y,作者想要找到一个立方体h = fh(S)的参数,使其最适合拟合这些场景特征。为此作者通过一个目标函数定义最小求解器fh:

3. 以M为条件,通过fw更新采样权重p并生成下一个立方体实例。多次重复这些步骤,直到所有立方体都被一一恢复。图3给出了算法的概述,图6更详细地描述了采样和拟合阶段。

图6 采样和拟合:(1)使用采样权重Q对最小的特征集S⊂Y进行采样。(2)通过最小求解器fh内,初始化立方体参数h0。(3)使用方程迭代优化参数,产生一个假设h。(4)同时计算多个立方体假设,产生一组假设H。(5)使用遮挡感知内点数量,选择最佳假设h^(6)将假设集添加到恢复的立方体集合M中。

3、主要实验结果展示

数据集。本文的实验主要在NYU Depth v2 数据集进行定性和定量结果分析。该场景它包含1449张室内场景图像,并使用Kinect相机记录相应的GT深度。其中654幅图像用于测试,795幅图像用于训练,其中作者保留195幅用于实验验证。

施细节。对于RGB图像输入的实验,作者使用在NYU预训练的BTS深度估计器作为特征提取网络。以GT深度作为输入对样本权重估计网络进行20个epoch的预训练,这也是用于深度输入实验的网络。然后,继续使用RGB输入对两个网络进行25个epoch的端到端训练。对于立方体拟合,作者通过应用Adam优化器执行梯度下降来实现最小求解器。

评价标准。以前的方法使用倒角距离和体积IoU评估结果。然而,这些工作处理的是完整3D形状,而本文是将3D几何基元拟合到只有2.5D数据的真实场景中。因此,作者使用提出的遮挡感知距离度量(简称OA-L2)进行评估。具体为计算每个场景中所有真实点到恢复的几何基元的遮挡感知距离。使用这些距离标准,计算多个上限(50cm、20cm、10cm、5cm)的召回曲线下的相对面积(AUC,百分比)。与平均距离相比,AUC值受异常值的影响较小。此外,作者还对比了平均OA-L2以及常规L2距离的平均值。由于所提方法是基于随机采样的,因此计算了所有指标在五次运行中的均值和方差。

A.定性评估:

在图7的第3-5行中,作者展示了所提方法预测的测试场景的立方体抽象渲染结果。第三行是从与原始图像相同的角度渲染的,而第四行和第五行分别显示俯视图和侧视图。正如这些示例所示,作者的方法能够恢复场景关键元素的立方体,例如墙壁、地板、橱柜、柜台或桌子。所提方法通常首先恢复覆盖图像较大部分的立方体。但该方法也并不总能成功捕获所有对象的体积属性,例如第五列中的冰箱,它由两个几乎在同一平面的立方体表示。此外,偶尔会出现错误的、非常薄的立方体估计,例如最后一列中与桌子相交的立方体。

图7   定性结果。第一行:RGB输入图像。第二行和第三行:使用提出的方法获得的立方体(分别与原始图像和俯视图相同的视图)。颜色代表选择立方体的顺序,分别为:红色、蓝色、绿色、紫色、青色、橙色。覆盖大部分图像的立方体通常优先选择。第四行:立方体与真实深度之间的OA-L2距离。较大的距离是由于缺少或遮挡立方体。最后一行:超二次曲线结果。该方法获取的抽象基元非常混乱,几乎不能代表原始场景。作者提出的算法可以推断出更紧密地代表原始场景的抽象基元。

B.定量评估:

表1 NYU上的定量结果:在 NYU Depth v2上评估RGB和深度输入。将所提的方法与SQ-Parsing和SequentialRANSAC的变体进行比较。作者提出了遮挡感知(OA)L2距离的各种上限的AUC值(越高越好)。同时还对比了平均OA-L2和常规L2距离(越低越好)。

表  1 给出了在 NYU Depth v2   测试集上的RGB和深度输入的定量分析结果。对于深度输入,所提方法比SequentialRANSAC实现了明显更高的AUC值。Sequential   RANSAC在AUC上的性能优于SQ-Parsing。所提方法在整个范围内也比SQ-Parsing有着更高的AUC值。作者的方法具有较低的平均L2和遮挡感知L2距离,分别提高了3.0cm(14.3%)和13.9cm(40.0%)。对于RGB输入,表1显示SQ-Parsing+BTS,即深度输入与单目深度估计器的组合,比[45]的RGB变体表现更好。这意味着[45]的基于图像的编码器网络不能像[30]那样从图像中提取3D信息。然而,所提的方法也大大优于SQParsing+BTS,AUC提高了8.9到26.9个百分点。所提方法将平均L2和OA-L2距离分别提高了4.0cm(11.8%)和31.5cm(47.8%)。总而言之,作者的方法在所有指标上的所有设置都优于[45]在NYU数据上的结果,为这项具有挑战性的任务提供了SOTA结果。

4、总结

本文中作者提出了一个3D场景解析器,它将复杂的现实世界场景抽象为更简单的体积几何基元的集合。该方法建立在基于学习的鲁棒估计器之上,作者对其进行扩展以便从RGB图像中恢复立方体。为此,作者提出了一种遮挡感知距离度量,使该方法能够正确处理遮挡的场景。同时通过最小求解器绕过反向传播并推导原始参数的梯度来促进端到端训练,分析输入特征。所提的算法既不需要已知的GT原始参数,也不需要任何其他昂贵的注释过程。因此,该方法可以直接应用于缺乏此信息的其他数据集。在未来的工作中,作者计划通过用更具表现力的3D特征替换深度估计并使用匹配数据进行训练,解决常见的故障情况,即平面和错误立方体。

本文仅做学术分享,如有侵权,请联系删文。

干货下载与学习

在公众号「3D视觉工坊」后台回复:巴塞罗那自治大学课件,即可下载国外大学沉淀数年3D Vison精品课件

在公众号「3D视觉工坊」后台回复:计算机视觉书籍,即可下载3D视觉领域经典书籍pdf

在公众号「3D视觉工坊」后台回复:3D视觉课程,即可学习3D视觉领域精品课程

本文仅做学术分享,如有侵权,请联系删文。

3D视觉工坊精品课程官网:3dcver.com
1.面向自动驾驶领域的多传感器数据融合技术
2.面向自动驾驶领域的3D点云目标检测全栈学习路线!(单模态+多模态/数据+代码)
3.彻底搞透视觉三维重建:原理剖析、代码讲解、及优化改进
4.国内首个面向工业级实战的点云处理课程
5.激光-视觉-IMU-GPS融合SLAM算法梳理和代码讲解
6.彻底搞懂视觉-惯性SLAM:基于VINS-Fusion正式开课啦
7.彻底搞懂基于LOAM框架的3D激光SLAM: 源码剖析到算法优化
8.彻底剖析室内、室外激光SLAM关键算法原理、代码和实战(cartographer+LOAM +LIO-SAM)
9.从零搭建一套结构光3D重建系统[理论+源码+实践]
10.单目深度估计方法:算法梳理与代码实现
11.自动驾驶中的深度学习模型部署实战
12.相机模型与标定(单目+双目+鱼眼)
13.重磅!四旋翼飞行器:算法与实战
14.ROS2从入门到精通:理论与实战
15.国内首个3D缺陷检测教程:理论、源码与实战
16.基于Open3D的点云处理入门与实战教程


重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信:dddvision,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉、CV&深度学习、SLAM、三维重建、点云后处理、自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

化繁为简:从复杂RGB场景中抽象出简单的3D几何基元(CVPR 2021)的评论 (共 条)

分享到微博请遵守国家法律