Apollo 7.0障碍物感知模型原型,SMOKE 单目3D目标检测,代码开源。

SMOKE是百度Apollo 7.0障碍物感知模型,是一个抛弃2D检测、直接进行3D预测的单目视觉模型。通过关键点预测和3D框回归实现高效3D检测,代码开源。模型包含关键点预测分支和3D边界框回归分支,使用DLA-34主干网络,并应用了可变形卷积和组归一化。实验结果显示SMOKE在3D目标检测和鸟瞰图生成上有良好表现。
摘要由CSDN通过智能技术生成

作者:黎国溥 CSDN博客专家,华为云-云享专家
首发:公众号【3D视觉开发者社区】

前言

SMOKE是一个one-stage的单目视觉障碍物检测模型,它认为2D检测对于单目3D检测任务来说是冗余的,且会引入噪声影响3D检测性能,所以直接用关键点预测和3D框回归的方式。

最近发布的百度Apollo 7.0中,摄像头障碍物感知也是基于这个模型改进的;它能实现实时推理,代码开源,值得学习一下。

在这里插入图片描述
论文名称:SMOKE: Single-Stage Monocular 3D Object Detection via Keypoint Estimation
论文地址:https://arxiv.org/pdf/2002.10111.pdf
开源地址:https://github.com/lzccccc/SMOKE
环境搭建:https://guo-pu.blog.csdn.net/article/details/122243245

SMOKE模型的3D目标检测和俯视图效果如图1.1所示。
在这里插入图片描述
图1.1 SMOKE模型效果

一、论文动机

1.1 对于已有的两阶段单目3D目标检测框架:

a、基于2D目标检测网络生成目标的2D候选区域;
b、针对获取到的目标的“2D patch特征” 预测目标位姿;

1.2 SMOKE
a、论文认为其中的2D检测对于单目3D检测任务来说是冗余的,且会引入噪声影响3D检测性能。
b、若已知相机内参和目标的3D属性,反过来是可以推测出目标的2D检测框的;(即:基于3D box在图像平面上的投影点求取满足条件的最小外接矩形。)

本论文抛弃了2D候选区域生成这一步,提出了基于关键点预测的一阶段单目3D检测框架SMOKE(Single-Stage Monocular 3D Object Detection via Keypoint Estimation),直接预测目标的3D属性信息。
​​

二、单目3D目标检测

针对单张RGB图像,宽度 W、高度 H、通道数 3;
给出其中每个目标的类别标签 C、3D边界框 B;其中B 可以用7个参数表示(h、w、l、x、y、z、θ),如图2.1 所示。需要加水相机的内参矩阵已知。

  • (h、w、l) 表示目标的高度、宽度和长度;
  • (x、y、z) 表示目标中心点在相机坐标系下的坐标;
  • θ 表示目标的航向角。
    在这里插入图片描述
    图2.1 描述3D目标检测框

三、SMOKE 整体框架

输入图像经过DLA-34 Backbone进行特征提取;网络主要包含两个分支:关键点预测分支和3D边界框回归分支,DLA框架结构如图3.1 所示。

SMOKE网络采用关键点预测分支来定位前景目标,关键点分支输出的分辨率为 ( H 4 , W 4 , C ) \left( \frac{H}{4}, \frac{W}{4},C\right) (4H,4W,C),表示数据集中前景目标的类别个数。3D边界框回归分支输出的分辨率为 ( H 4 , W 4 , 8 ) \left( \frac{H}{4}, \frac{W}{4},8\right) (4H,4W,8),表示描述3D边界框的参数有8个。
在这里插入图片描述
图3.1 SMOKE框架结构

四、SMOKE的Backbone(主干网络)

主干网络采用带有DCN(Deformable Convolution Network)以及使用GN(GroupNorm)标准化的DLA-34神经网络提取特征,网络输出分辨率为输入分辨率的四分之一。

4.1 DLA

DLA-34是DLA结构中的其中一种,先介绍一下DLA(Deep Layer Aggregation),CVPR 2018的一篇论文,它是一种网络特征融合方法。

DLA框架结构如图4.1所示。通过了迭代深度聚合和分层深度聚合,最后为了降低计算量简化了模型。目的是更好地融合空间特征和语义信息,即融合浅层的底层信息和深层的语义信息。

论文地址:https://arxiv.org/pdf/1707.06484.pdf

开源代码:https://github.com/ucbdrive/dla

在这里插入图片描述
图4.1 DLA框架结构

DLA-34
论文中采用DLA-34作为主干网络进行特征提取,以便对不同层之间的特征进行聚合。

网络中主要做了两点改动如下:

1、将所有的分层聚合连接替换为可变形卷积;

2、将所有的BN层用GN(GroupNorm)替换,因为GN对batch size大小不敏感,且对训练噪声更鲁棒,作者在实验部分也对这一点进行了验证。

4.2 可变形卷积(改进点1)

Deformable Convolutional ,可变形卷积( ICCV 2017)

论文地址:https://arxiv.org/pdf/1703.06211.pdf

开源地址:https://github.com/msracver/Deformable-ConvNets

如图4.2所示,可变形卷积指卷积核在每一个元素上额外增加了一个参数方向参数,这样卷积核就能在训练过程中扩展到很大的范围。

在这里插入图片描述
图4.2 描述传统卷积和可变形卷积

(a)是传统的标准卷积核,尺寸为3x3(图中绿色的点);

(b)可变形卷积,通过在图(a)的基础上给每个卷积核的参数添加一个方向向量(图b中的浅绿色箭头),使的卷积核可以变为任意形状;

(c)和(d)是可变形卷积的特殊形式。

传统的卷积核通常是固定尺寸、固定大小的(例如3x3,5x5),它对于未知的变化适应性差,泛化能力不强。

例如:同一CNN层的激活单元的感受野尺寸都相同,但是不同的位置可能对应有不同尺度的物体,这些层需要能够自动调整尺度或者感受野的方法。

在这里插入图片描述
图4.3 传统卷积和可变形卷积

可变形卷积的卷积核可以根据实际情况调整本身的形状,更好的提取输入的特征。

即:卷积核的形状是可变的,也就是感受野可以变化,但注意感受野的元素是“不变”的。

4.3 Group Normbalization(改进点2)

组归一化(Group Normbalization,GN)是一种新的深度学习归一化方式,它解决了BN式归一化对batch size依赖的影响,对训练噪声更鲁棒。

在这里插入图片描述
​图4.4 几种归一化方式的对比

•BatchNorm:batch方向做归一化,算NHW的均值

•LayerNorm:channel方向做归一化,算CHW的均值

•InstanceNorm:一个channel内做归一化,算H*W的均值

•GroupNorm:将channel方向分group,然后每个group内做归一化,算(C/G)HW均值

五、SMOKE的 3D检测网络

此部分主要包括关键点检测、3D边界框回归分支。

5.1 关键点检测

在关键点分支中,图像中的每一个目标用一个关键点进行表示。 这里的关键点被定义为目标3D框的中心点在图像平面上的投影点,而不是目标的2D框中心点。

如图5.1所示,红色点是目标的2D框中心点,橙色点是3D框的中心点在图像平面上的投影点。
在这里插入图片描述
图5.1 关键点检测

设关键点坐标为 ( x c , y c ) \left( x_{c} ,y_{c}\right) (xcy

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值