【深度学习】ECCV 2022 | 用于单目3D目标检测的密集约束深度估计器

论文链接:https://arxiv.org/pdf/2207.10047.pdf

代码链接:https://github.com/BraveGroup/DCD

摘要

由于深度信息的缺失,从单目图像估计物体的准确3D位置是一个具有挑战性的问题。之前的工作表明,利用目标的关键点投影约束来估计多个候选深度可以提高检测性能。然而,现有方法只能利用垂直边缘作为深度估计的投影约束。所以这些方法只利用了少量的投影约束,产生的深度候选不足,导致深度估计不准确。论文提出了一种可以利用来自任何方向边缘的密集投影约束方法。通过这种方式,论文使用了更多的投影约束并输出了更多的候选深度。此外,论文提出了一个图匹配加权模块来合并候选深度。本文提出的方法名为DCD(Densely Constrained Detector),在 KITTI 和 WOD基准上实现了最先进的性能。

之前算法存在的问题在于它们的几何约束不足。具体来说,一些现有的方法 [51,25,50] 估计2D边界框和3D边界框的高度,然后利用2D到3D高度投影约束生成目标的深度候选。最终的深度是通过对所有候选深度进行加权来生成的。如下图所示,该方法仅适用于垂直边缘,这意味着它们只使用少量约束和3D先验,导致深度估计的不准确。

d8ad2cd6f6db286df07bf7bc585b71bd.png

方法

DCD的框架的如下图所示。DCD使用单阶段检测器 [51]从单目图像中检测目标。论文提出了密集几何约束深度估计器(DGDE,Densely Geometric-constrained Depth Estimator),它可以计算任何方向的2D-3D边缘的深度。DGDE可以有效地利用目标的语义关键点并产生更多的深度候选。此外,论文利用回归得到的2D边缘、3D边缘和方向作为2D-3D边缘图匹配网络的输入。所提出的图匹配加权模块 (GMW,Graph Matching Weighting module) 匹配每个2D-3D边缘并输出匹配分数。通过将多个深度与其相应的匹配分数相结合,论文最终可以为目标生成一个稳健的深度。

8a244233dd97aa1098ada037f51086b4.png

Geometric-based 3D Detection Definition

基于几何的单目3D目标检测通过2D-3D投影约束估计目标的位置。具体来说,网络预测目标的尺寸(),旋转角。假设一个目标有n个语义关键点,论文回归第i个关键点在图像坐标中的2D坐标和object frame中的3D坐标。object frame的坐标原点是目标的中心点。给定n个语义2D-3D关键点投影约束,解决3D目标位置是一个超定问题,它是用于将点云将从object frame转换到camera frame的平移向量。生成每个目标的语义关键点的方法改编自[23]。论文通过PCA建立了一些汽车模型,并通过从点云和2D mask中分割出来的3D点云来细化模型。在获得关键点后,就可以使用DGDE从关键点投影约束中估计目标的深度。

Densely Geometric-constrained Depth Estimation

虽然以前的深度估计方法[51]只考虑了垂直边缘,但DGDE可以处理任意方向的边缘。因此,论文能够利用更多的约束来估计每个深度候选的深度。

该方法基于关键点从3D空间到2D图像的投影关系。第i个关键点的3D坐标在object frame中定义,并通过以下等式投影到2D图像平面上:

5a72f7c921bf3c371fa0f3c9fdc92bef.png

其中是第i个关键点的深度,K是相机内参,K,R,t 表示为:

740565cbf8ba4fb0b47e8f6831399010.png

通过上述两式,第i个关键点的投影约束方程记为:

609a681c1afe9abc73285a250b382ebf.png

第j个关键点投影约束方程与上式类似,进一步可以从第i个、第 j 个关键点投影约束中得到深度估计:

5163a65a23d11395fc5a4a2e32043181.png

这个方程表明深度可以通过任意方向边缘的投影约束来计算。

给定n个关键点,论文生成m=n(n-1)/2 个深度候选。与此同时,不可避免地会遇到一些低质量的深度候选。因此,需要适当的加权方法来集成这些深度候选。

Depth Weighting by Graph Matching

利用DGDE估计目标的深度候选时,目标的最终深度可以根据根据估计质量进行加权:

ffea78ca9c534683e762bc89b47d54f5.png

接下来介绍论文提出的新的加权方法——Graph Matching Weighting module (GMW)。

Graph Construction and Edge Feature extraction:论文构造了2D关键点图和3D关键点图。3D关键点图与2D关键点图基本一致,唯一的区别是顶点坐标是2D坐标还是3D坐标。2D和3D边缘特征提取器[47]如下所示:

8953f5c751b5795812b817a171e6e758.png

FC、CN、BN、ReLU 分别表示全连接层、Context Normalization [47]、Batch Normalization 和 ReLU。值得一提的是,Context Normalization 提取了所有边的全局信息。

Graph matching layer:给定提取的2D和3D边缘特征,根据在边缘s上的2D特征和边缘t上的3D特征之间的L2距离计算如下损失:

1700cefdf396b034f2a0be3e13e07292.png

然后论文将M作为Sinkhorn layer[4]的输入来获得分配矩阵P。Sinkhorn layer通过最小化下述目标函数来迭代优化P:

3a13295554344a282eeb7192b98b30f8.png

Loss function:设计如下所示的回归损失来监督最终的加权深度,并使用分类损失来监督图匹配:

2cd33dd4fe0c86d2e6efe43946a3d0f8.png

实验结果

KITTI上的实验结果,优势比较明显。

1982a929351931ea8a7c46d658e41a91.png

可视化:

1b2a1d475472dd3220038dd2022e6659.png

更多的实验结果如下表所示:

c4298f7eb6dbaea0eabcd4248f4b0c81.png

消融实验

ed20498f608579acacf8d6d8e9ea7200.png

DCD可以比基线更准确地估计深度。

17b95a1833bd9475f50f426216702022.png

GMW和边数量的消融实验

7eaec3eef3b07462dd01e53ea9525ec7.png

关于DCD和AutoShape的讨论

尽管DCD和AutoShape [23]都利用多个关键点来估计目标的位置,但存在如下关键差异:

  • AutoShape直接使用所有2D-3D关键点投影约束来求解对象目标深度。DCD则从每个边缘约束中求解一个深度候选。因此,DCD的边缘约束不仅数量多,而且比关键点约束的阶数更高;

  • AutoShape独立生成关键点权重,而关键点之间没有显式交互。DCD则使用可学习的图匹配模块对边缘约束进行建模,因此DCD根据所有边缘约束生成每个深度的权重,从而获得更好的权重。

 
 

54836cbc99017b32d093dfc6d6a7b802.jpeg

 
 
 
 
 
 
 
 
往期精彩回顾




适合初学者入门人工智能的路线及资料下载(图文+视频)机器学习入门系列下载机器学习及深度学习笔记等资料打印《统计学习方法》的代码复现专辑机器学习交流qq群955171419,加入微信群请扫码

7841e74472a184215534c8e1d52268ef.png

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值