3D检测中深度离散化

参考论文:Center3D: Center-based Monocular 3D Object Detection with Joint Depth Understanding

1 引言

单目3D目标检测中通常需要进行深度估计,一般是将回归问题转化为分类问题,先根据数据集确定好深度的最大最小值,然后在这个范围内划分多个区间(bins),从而变成分类问题,预测深度值属于哪个区间。

2 方法

远处的物体有着更大的深度值和更少的视觉特征,这会产生大的损失值,从而主导训练过程并且增加不确定性。
在这里插入图片描述

图1. SID和LID

两种常用方法SIDLID的区别和结果如图1所示,按照KITTI数据集,设置 d m i n = 1 m , d m a x = 91 m , N = 80 d_{min}=1m,d_{max}=91m,N=80 dmin=1m,dmax=91m,N=80 N N N 是子区间个数,图中显示了鸟瞰图视角下的 0 m 0m 0m 54 m 54m 54m,红色线是每个bin的阈值,实心矩形表示预测的边界框,蓝色矩形表示真实框,可以看到LID对远处物体检测更准确。

2.1 SID

SID 方法通过在log空间中划分 [ d m i n , d m a x ] [d_{min},d_{max}] [dmin,dmax] 来降低远处物体的权重,但是这种方法会产生太密集的bins,如图1第一行所示。SID公式如下:
在这里插入图片描述

2.2 LID

LID 方法能够更加均匀地划分。

在这里插入图片描述

2.3 转换方法

训练标签:根据SIDLID公式,给定的连续深度值 d d d 计算出 l l l 后,向下取整得到所属的类别bin l i n t l_{int} lint,此外,保存并回归残差部分 l r e s = l − l i n t l_{res}=l-l_{int} lres=llint l i n t l_{int} lint l r e s l_{res} lres 作为标签。
前向传播:对于特征图中一个像素,把概率大于0.5的bin的中值作为估计的深度值 l ^ \hat l l^,同时预测深度类别 l ^ i n t \hat l_{int} l^int,计算 l ^ r e s = l ^ − l ^ i n t \hat l_{res}=\hat l-\hat l_{int} l^res=l^l^int,得到深度类别以及残差量。
因为是离散的,取中值的精度不够,所以在训练阶段结合分类和回归任务,用到 l i n t l_{int} lint l r e s l_{res} lres
反向传播:只在预测2D边界框中心位置 c ^ 2 D i = ( x ^ 2 D i , y ^ 2 D i ) , i ∫ { 0 , 1 , . . . , K − 1 } \hat{\mathbf{c}}_{2D}^{\mathbf{i}}=(\hat{x}_{2D}^i,\hat{y}_{2D}^i),i\int \{0,1,...,K-1\} c^2Di=(x^2Di,y^2Di),i{0,1,...,K1} K K K 是图像中物体个数, i i i 是物体序号,各部分损失函数如下:
在这里插入图片描述
最终的损失函数是 L d e p , L o r d i i , L r e s i L_{dep},L_{ord}^ii,L_{res}^i Ldep,Lordii,Lresi 三部分的和,其中 P n i P_n^i Pni 是第 i i i 个物体比第 n n nbin更远的概率,SmL1 是 smooth L1 loss。
推理时,预测 l ^ i n t i \hat l_{int}^i l^inti l r e s i l_{res}^i lresi l ^ = l ^ i n t i + l r e s i \hat l = \hat l_{int}^i+l_{res}^i l^=l^inti+lresi,再带入SIDLID公式中反求得到深度值 d d d

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值