6D-VNet:End-to-End 6DoF Vehicle Pose Estimation from Monocular RGB Images解读

本文详细介绍了6D-VNet,一个专注于自动驾驶领域的网络,用于从单目RGB图像中进行6自由度(6DoF)车辆定位。相较于传统方法,6D-VNet将平移估计与旋转估计结合,通过网络的两阶段进行联合优化。第一阶段使用Mask R-CNN进行2D目标检测,第二阶段则对车辆类别进行子分类和旋转估计,以及直接回归三维平移向量。网络结构中引入加权非局部邻域嵌入,以增强物体间的空间依赖关系,提升姿态估计的准确性。通过端到端训练,6D-VNet能实现比传统后处理方法更精确的平移估计,这对于自动驾驶等应用至关重要。
摘要由CSDN通过智能技术生成

首先本文是专注于自动驾驶领域,在这项任务中,交通参与者沿纵轴的平移距离变化比较大,因此,平移的估计是更具有挑战性的。同时,车辆的平移估计比方向估计更为关键。
传统的方法是将平移估计作为一个独立的过程,而不是使用几何投影法进行目标类的预测和旋转估计。但是,几何投影法方法是有假设的前提条件的。
1、三维物体的中心投影到二维图像的物体的bounding box的中心
2、正确估计预测的对象类别和旋转向量

网路的主要组成部分,2D空间的检测头和6D-VNet在3D space中回归6DoF的旋转和平移向量
整体的网络架构
在这里插入图片描述
 6D-VNet是建立在如Figure 3所示的标准对象检测网络上的。该系统是一个经过端到端训练的两级网络,用于估计目标的6DoF姿态信息。网络的第一阶段是典型的二维目标检测网络(Mask R-CNN)。该网络的第二阶段是自定义头估计目标6DoF位姿信息。
 6DoF姿态估计分支是该模型的新颖之处,分为两部分:第一步是,如果候选类属于车辆类别,则对每个候选框进行RoIAlign,并且执行子类分类和旋转估计。由于对于给定的车辆类别来说,平面旋转是唯一的,所有车辆都共享相同的偏航、俯仰和滚转角的旋转特性。因此,来自于RoIAlign层的固定大小的视觉提示,对于估计候选的子类类别和旋转是充足。

 第二部分采用RoIAlign特征和bounding box信息(在Sec. 3.2中描述的世界单位中),通过连接操作来估计三维平移向量。据我们所知,这个新颖的formulation是第一个直接回归平移向量的方法。联合特征组合方案通过拼接操作对对象类和旋转信息进行隐式编码(⊕ 在Fig. 3)。将平移回归头与子类分类和四元数回归的联合损失相结合,可以实现平移回归头的协同作用。我们在实验中证明,我们提出的新的平移回归方法比将平移估计作为后处理步骤的方法有更加准确的位置估计。这种对平移向量的精确估计,对于物体之间的距离至关重要的应用来说尤为重要(e.g. 在自动驾驶场景中)。

1. Network Architecture

其实整体的结构的话,看网络的架构就应该会是比较的清楚的,对于6DoF姿态估计分支来说,整体可以简单的分为两部分。
  第一步是判断候选类的类别,如果为车辆类别,则对候选框进行RoIAlign,这个地方不同于Mask RCNN,在Mask RCNN中,产生RoI之后,即进行RoIAlign操作,然后将RoIAlign之后的特征放到后续的网络中。但是在6D-VNet中是先进行相关的操作,然后输出类别和box以及mask,当判断其为车辆类别之后再进行RoIAlign操作(这个地方不是特别的确定,因为这样产生的mask是没有Mask RCNN 准确的,需要看一下它的代码)。注:还有一个关键的问题是,作者在文中好像并没有提及mask是用来做什么的。
  第二部分是采用RoIAlign特征和Bounding box的信息,通过连接操作来估计三维平移向量。联合特征组合方案通过拼接操作对对象类和旋转信息进行隐式编码(⊕ 在Fig. 3)。将平移回归头与子类分类和四元数回归的联合损失相结合,可以实现平移回归头的协同作用。
在这里插入图片描述

2. Joint losses

  损失函数的设计是一个很关键的部分,端到端的训练网络,最小化损失 L \mathcal{L} L L \mathcal{L} L= L d e t \mathcal{L}_{det} Ldet+ L i n s t \mathcal{L}_{inst} Linst,其中 L d e t \mathcal{L}_{det} Ldet代表标准检测网络中的多任务损失函数: L d e t \mathcal{L}_{det} Ldet= L c l s \mathcal{L}_{cls} Lcls+ L b o x \mathcal{L}_{box} Lbox+ L m a s k \mathcal{L}_{mask} Lmask。分类损失 L c l s \mathcal{L}_{cls} Lcls,2D bounding box 损失 L b o x \mathcal{L}_{box} Lbox和2D mask损失 L m a s k \mathcal{L}_{mask} Lmask L i n s t \mathcal{L}_{inst} Linst代表6DoF估计的子类分类的单个实例损失。特别地,它代表三元损失 L i n s t \mathcal{L}_{inst} Linst= λ s u b _ c l s L s u b _ c l s \lambda_{sub\_cls}\mathcal{L}_{sub\_cls} λ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值