2

CVPR2021|基于分类深度分布网络的单目3D物体检测

 3 years ago
source link: https://mp.weixin.qq.com/s/KjGzhh-1LUpG70_MmRDrhg
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

CVPR2021|基于分类深度分布网络的单目3D物体检测

晨曦 3D视觉工坊 1 week ago
计算机视觉工坊
计算机视觉工坊
专注于计算机视觉、VSLAM、目标检测、语义分割、自动驾驶、深度学习、AI芯片、产品落地等技术干货及前沿paper分享。这是一个由多个大厂算法研究人员和知名高校博士创立的平台,我们坚持工坊精神,做最有价值的事~
108篇原创内容
Official Account
640?wx_fmt=png
1.要解决的问题单目3D物体检测核心问题是如何准确估计物体的深度信息。已有方法尝试显式地或隐式地学习深度信息。显式地学习存在的问题:1:深度估计的过度置信。一些方法[14,38,39,62]通过深度估计网络在一个单独阶段显式学习深度信息,但是后续的3D检测模块在没有考虑深度置信度的问题的情况下直接利用估计的深度图,会导致网络深度估计中的过度置信问题。2:非End-to-End。为了防止3D检测任务影响深度图的估计效果,3D检测模块与深度估计模块一般需要分开训练。隐式地学习存在的问题:1:特征拖尾效应。[50,46]直接将特征从图像空间转换至3D空间,最后转换至鸟瞰角度,会导致特征拖尾效应(feature smearing effects,即3D投影空间中的多个位置会出现相似的图像特征),进而会增加物体定位难度。
640?wx_fmt=png
作者想要获取具有高质量(即弱特征拖尾效应)的鸟瞰特征实现端到端的3D物体检测,那么如何获取高质量的鸟瞰特征?2.提出的方法 提出了分类深度分布网络(CADDN):引入深度监督信号,预测逐像素的分类深度分布,将丰富的上下文特征信息投影到3D空间中的适当位置,实现端到端的3D物体检测。该方法有以下三个贡献:1)Categorical Depth Distributions 预测了像素级分类深度分布,以在3D空间中准确定位图像信息。每个预测的分布描述像素属于一组预定义depth bins的概率。深度估计的置信度较高时:鼓励网络在正确的depth bins附近的分布尽可能更sharp、更accurate。深度估计的置信度较低时:鼓励网络仍保留产生较小sharp分布的能力。2)End-to-End Depth Reasoning 联合深度估计任务和3D检测任务,以端到端方式学习深度分布,共同优化深度预测和精确的3D物体检测。作者认为该策略可鼓励针对3D检测任务优化深度估计,提高性能。3)BEV Scene Representation 使用分类深度分布和投影几何从单个图像生成高质量的鸟瞰场景表示。(这里之所以选择鸟瞰图,是因为它具有产生出色的3D检测性能和高计算效率的能力[27]。)3.方法具体细节1 ---如何从图像生成高质量的鸟瞰特征表示 (论文3.1部分) 先看一下这部分的核心流程图,具体流程为图像特征-->视椎体特征网格-->体素特征网格-->鸟瞰特征网格。
640?wx_fmt=png
1)图像特征--->视椎体特征网格 (粉色框部分)。
数据流程图如下:
640?wx_fmt=png
输入: 图像I (尺寸是 WI×HI×3),WI 和 HI分别是图像的宽和高;输出:视椎体网格G (尺寸是WF×HF×D×C),WF 和 HF分别是特征的宽和高,D是离散的depth bins的数量,C是特征通道数; 图像特征F(WF×HF×C)-->图像特征F'(WF×HF×C')这一个分支是对图像特征进行降维,从C=256降低到C’=64。图像特征F(WF×HF×C) -->分类深度分布D(WF×HF×D)这一分支是对图像特征D中每个像素预测D个概率(D个概率的和为1,即对每个像素使用softmax函数将D个logits归一化为0到1之间的概率),其中每个概率表示深度值属于指定depth bin(depth bin的介绍在后面)的置信度。 对图像特征F'和分类深度分布D做外积操作生成视椎体特征网格G:令(u,v,c)为图像特征F’中的坐标,而(u,v,di)为分类深度分布D中的坐标,其中(u,v)是特征像素位置,c是通道索引,di是depth bin索引。为了生成视椎体特征网格G,每个特征像素F’(u,v)由其关联的D(u,v)中的depth bin概率加权,以填充到深度轴di处。 分类深度分布D(WF×HF×D) 与 图像特征F'(WF×HF×C') 外积之后得到视椎体特征矩阵G(WF×HF×D×C'),即(WF×HF)每个像素处对应着一个D×C'的矩阵(以depth bins概率对图像特征的概率加权得到的矩阵),如下图所示。
640?wx_fmt=png
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]处。
640?wx_fmt=jpeg
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 bins的集合,对连续的深度空间进行离散化。这里可以使用具有固定bins大小的均匀离散(UD),间距增加的离散化(SID)[16](在对数空间中增加bin大小),或者线性增加的离散化(LID)[60],如下图所示。本文采用LID离散化深度,因为它可以为所有深度提供平衡的深度估计[60]。
640?wx_fmt=png
关于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)/KSID部分:已知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 + NearPS: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。
640?wx_fmt=png
6.部分消融实验 Sharpness in Depth Distributions. 实验1:显示了将图像特征F沿深度轴di重复填充视椎特征G时的检测性能; 实验2:添加深度分布预测来平衡图像特征F; 实验3:添加深度分布监督信号,鼓励sharp、accurate的分类深度分布,这个操作带来的效果提升是最大的; 实验4:对前景物体像素深度设置较大的权重,会鼓励网络对前景物体像素优先进行深度估计; 实验5:将UD离散化换为LID离散化;
640?wx_fmt=png
Depth Distribution Uncertainty。 为了验证该实验的深度分布包含有意义的不确定性信息,为D中每个估计的分类深度分布计算Shanon熵。观察到,熵通常随深度的增加而增加,这表明该实验的深度分布描述了有意义的不确定性信息。
640?wx_fmt=png
7.结论本文介绍了CaDDN算法,可以估算每个像素的准确分类深度分布。结合深度分布与图像特征以生成保留深度置信度的鸟瞰特征,可用于3D物体检测。实验证明,以正确的深度值为中心估算尖锐的分类深度分布,以及联合执行深度估计和物体检测对于3D物体检测性能至关重要。该算法在KITTI数据集[1]官方测试集上排名第一。备注:作者也是我们「3D视觉从入门到精通」特邀嘉宾:一个超干货的3D视觉学习社区本文仅做学术分享,如有侵权,请联系删文。下载1在「3D视觉工坊」公众号后台回复:3D视觉即可下载 3D视觉相关资料干货,涉及相机标定、三维重建、立体视觉、SLAM、深度学习、点云后处理、多视图几何等方向。下载2在「3D视觉工坊」公众号后台回复:3D视觉github资源汇总即可下载包括结构光、标定源码、缺陷检测源码、深度估计与深度补全源码、点云处理相关源码、立体匹配源码、单目、双目3D检测、基于点云的3D检测、6D姿态估计源码汇总等。下载3在「3D视觉工坊」公众号后台回复:相机标定即可下载独家相机标定学习课件与视频网址;后台回复:立体匹配即可下载独家立体匹配学习课件与视频网址。

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

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

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

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

640?wx_fmt=png▲长按加微信群或投稿

640?wx_fmt=jpeg

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的知识点汇总、入门进阶学习路线、最新paper分享、疑问解答四个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近3000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款640?wx_fmt=jpeg 圈里有高质量教程资料、可答疑解惑、助你高效解决问题觉得有用,麻烦给个赞和在看~640?wx_fmt=gif


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK