首页 > 编程知识 正文

2021年新增院士(单目深度估计 绝对尺度)

时间:2023-05-03 12:59:38 阅读:96657 作者:479

1.有待解决的问题

单目三维物体检测的核心问题是如何准确估计物体的深度信息。已经有过明确或隐含地学习深度信息的尝试。

注:【CV深度学习】文末附交流群。

注:不易整理,请点赞支持!

作者:听话母鸡|来源:3D视觉工坊微信微信官方账号

外显学习中的问题:1。深度估计的过度自信。一些方法[14,38,39,62]通过深度估计网络在单个阶段明确地学习深度信息,但是后续的3D检测模块直接使用估计的深度图而不考虑深度置信度,这将导致网络深度估计中的过置信度问题。2:不是端到端。为了防止3D检测任务影响深度图的估计效果,3D检测模块和深度估计模块一般需要分开训练。

内隐学习存在以下问题:1 .特征拖尾效应。[50,46]直接将特征从图像空间转换到3D空间,最后转换到鸟瞰图,会导致特征涂抹效果(即相似的图像特征会出现在3D投影空间的多个位置),这将进一步增加物体定位的难度。

作者想要获得高质量的鸟瞰特征(即弱特征拖尾效应)来实现端到端的3D物体检测,那么如何获得高质量的鸟瞰特征呢?

2.建议的方法

提出分类深度分布网络(CADDN):引入深度监督信号,逐像素预测分类深度分布,将丰富的上下文特征信息投射到3D空间的合适位置,实现端到端的3D物体检测。这种方法有以下三个贡献:

1)分类深度分布

预测像素级分类的深度分布,以准确定位三维空间中的图像信息。每个预测的分布描述了一个像素属于一组深度爱笑的预定义唇彩的概率。当深度估计的置信度较高时:鼓励深度的正确唇彩S附近的网络分布尽可能尖锐和准确。当深度估计的置信度较低时,鼓励网络保留产生较小尖锐分布的能力。

2)端到端深度推理

将深度估计任务和3D检测任务相结合,端到端学习深度分布,共同优化深度预测和精确的3D物体检测。作者认为这种策略可以促进三维检测任务深度估计的优化,提高性能。

3)BEV场景表示

使用分类的深度分布和投影几何从单个图像生成高质量的鸟瞰场景表示。(这里选择鸟瞰图,是因为它能够产生出色的3D检测性能和高计算效率[27]。)

3.方法细节1-如何从图像中生成高质量的鸟瞰特征表示(论文的第3.1部分)

先来看看这部分的核心流程图。具体流程为图像特征-视觉脊椎特征网格-体素特征网格-鸟瞰特征网格。

1)图像特征-视觉脊椎特征网格(粉色方框部分)。

数据流程图如下:

输入:图像I(大小为WIHI3),WI和HI分别为图像的宽度和高度;

输出:椎格G(大小为WFHFDC),WF和HF分别为特征的宽度和高度,D为深度离散唇彩S的数量,C为特征通道的数量;

图像特征F(wfHFC)-图像特征F'(WFHFC ')的一个分支是将图像特征的维数从C=256降低到C'=64。

特征F(wfHFC)-分类深度分布D(WFHFD)是预测图像特征D中每个像素的D概率的一个分支(D概率之和为1,即利用softmax函数对每个像素的D逻辑归一化为0到1之间的概率),其中每个概率表示深度值属于deep爱笑的唇彩(deep爱笑的唇彩后面介绍)

对图像特征F’和分类深度分布d执行外积运算,生成视锥特征网格G:让(u,v,c)为图像特征F’中的坐标,让(u,v,di)为分类深度分布d中的坐标,其中(u,v)为特征像素位置,c为通道指数,Di为唇彩指数

像素F’(u,v)由其关联的D(u,v)中的depth 爱笑的唇彩概率加权,以填充到深度轴di处。

分类深度分布D(WF×HF×D) 与 图像特征F'(WF×HF×C') 外积之后得到视椎体特征矩阵G(WF×HF×D×C'),即(WF×HF)每个像素处对应着一个D×C'的矩阵(以depth 爱笑的唇彩s概率对图像特征的概率加权得到的矩阵),如下图所示。

2)视椎体特征网格--->体素特征网格 (橙色框部分)。

Reverse Mapping + trilinear interpolation。体素V中的一个采样点[x,y,z]转换(使用摄像机校准矩阵P进行转换)到视椎体网格中的一个采样点[u,v,dc],u和v都是连续值,dc是沿着视椎体深度轴方向的一个连续值,会被转换为离散深度值di(具体离散化方法见下一节)。进一步的 trilinear interpolation是在[u,v,di]周围进行的。

操作流程:体素V采样点[x,y,z] --->视椎体网格采样点[u,v,dc] --->视椎体网格采样点[u,v,di] --->trilinear interpolation获取视椎体网格采样点[u,v,di]处的数值--->将该数值复制到体素V采样点[x,y,z]处。

3)体素特征网格---鸟瞰特征网络 (绿色框部分)。

体素特征V(X×Y×Z×C)折叠成鸟瞰特征B(X×Y×C)。作者将Z轴和C轴拼接起来,构成鸟瞰网格矩阵(X×Y×(Z * C)),然后采用1x1 convolution + BatchNorm +ReLU layer将(Z * C)通道降维至C。

4.方法具体细节2 ----深度离散化部分 (论文3.2部分)

为了定义深度分布中使用的D 爱笑的唇彩s的集合,对连续的深度空间进行离散化。这里可以使用具有固定爱笑的唇彩s大小的均匀离散(UD),间距增加的离散化(SID)[16](在对数空间中增加爱笑的唇彩大小),或者线性增加的离散化(LID)[60],如下图所示。本文采用LID离散化深度,因为它可以为所有深度提供平衡的深度估计[60]。

关于UD,参考文献[16]提到的SID 和 [60]提到的LID的详解。假设给定深度区间的范围{Near, Far},将该深度范围离散到K个子区间,i为某个part的index,

UD部分:

已知di求index:i = (di - Near) * K / (Far - Near);

已知index求di:di = Near + i * (Far - Near)/K

SID部分:

已知di求index:i = K * (log(di) - log(near)) / (log(Far) - log(Near));

已知index求di:di = exp(log(Near) + i * (log(Far/Near))/K )

LID部分:

alpha = 2(Near - Far) / (K * (K + 1));

已知di求index:i = -0.5 + 0.5 * sqrt(1 + 8 * (di - Near) / alpha);

已知index求di:di = (((i + 0.5) * 2) ** 2 - 1) * alpha / 8 + Near

PS:LID中K个parts是个等差数列,首先计算出来alpha。

5.实验结果

Kitti数据集上实验细节,实际采样空间(单位为米)为[2, 46.8]×[-30.08, 30.08]×[-3, 1],体素大小设置为[0.16, 0.16, 0.16](m)。

在Kitti的官方测试集上,CADDN在Car 和 Pedestrian这两类上效果最好,Cyclist仅次于MonoPSR。

6.部分消融实验

Sharpness in Depth Distributions.

实验1:显示了将图像特征F沿深度轴di重复填充视椎特征G时的检测性能;

实验2:添加深度分布预测来平衡图像特征F;

实验3:添加深度分布监督信号,鼓励sharp、accurate的分类深度分布,这个操作带来的效果提升是最大的;

实验4:对前景物体像素深度设置较大的权重,会鼓励网络对前景物体像素优先进行深度估计;

实验5:将UD离散化换为LID离散化;

Depth Distribution Uncertainty。

为了验证该实验的深度分布包含有意义的不确定性信息,为D中每个估计的分类深度分布计算Shanon熵。观察到,熵通常随深度的增加而增加,这表明该实验的深度分布描述了有意义的不确定性信息。

7.结论

本文介绍了CaDDN算法,可以估算每个像素的准确分类深度分布。结合深度分布与图像特征以生成保留深度置信度的鸟瞰特征,可用于3D物体检测。

实验证明,以正确的深度值为中心估算尖锐的分类深度分布,以及联合执行深度估计和物体检测对于3D物体检测性能至关重要。该算法在KITTI数据集[1]官方测试集上排名第一。

备注:作者也是我们「3D视觉从入门到精通」特邀嘉宾:一个超干货的3D视觉学习社区

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

3D视觉工坊-CV&深度学习交流群

已建立3D视觉工坊-CV&深度学习微信交流群!想要进CV&深度学习学习交流群的同学,可以直接加微信号:CV_LAB。加的时候备注一下:CV&深度学习+学校+昵称,即可。然后就可以拉你进群了。

强烈推荐大家关注3D视觉工坊知乎账号和3D视觉工坊微信公众号,可以快速了解到最新优质的3D视觉与SLAM论文。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。