我们提出了一个概念上简单的6DoF姿态估计网络,尤其是对于自动驾驶场景。在一个单目RGB图像上,我们的方法能够有效的检测交通工具,同时回归它们的三维平移和旋转向量。这个方法叫做6D-VNet,在Mask R-CNN上扩展了一个定制的头网络,以用于检测更好的车辆类比,旋转和平移。与以往的方法相比,本文提出的6D-VNet是端到端训练的。此外,我们表明,在联合损失中包括平移回归对于6DoF姿态估计任务至关重要,在6DoF姿态估计任务中,沿纵轴的对象平移距离会发生很大变化,例如在自动驾驶场景中。 此外,我们通过修改后的non-local模块合并交通工具之间相互的信息。 与原始的non-local块实现相反,所提出的权重修改在抵消极端梯度值的影响的同时考虑了空间邻近信息。 我们的6D-VNet在ApolloScape 3D汽车实例任务的挑战中【21】中排名第一。代码已经开源在了 https://github.com/stevenwudi/6DVNET
对于自动驾驶,对于检测周边的汽车,行人,骑自行车的人等是重要的。这个系统必须理解视线中交通参与者之间的3D关系。核心的部分之一是在给出的video中检测,估计和重构3D汽车的模型(Fig. 1)。
当前的最先进的RGB-based 6DoF姿态估计系统【32,6,22】是两阶段的:第一阶段是通过训练的网络去估计物体的3D旋转,第二阶段是通过映射的距离估计3D平移。前面提及的两阶段的系统首先关注于工业相关的bin picking任务。代表性的,一个机器人需要抓住所需对象的一个任意实例,e.g.,一个部件,如一个螺栓或螺母,和对他们一起操作。在这些场景中,在Z维上的表面排列。i.e.,摄像轴的光轴,在X和Y方向上的对齐是次要的。这样的工业设置要求旋转的精确估计,而平移误差可以放宽。然而,在自主驾驶中,交通参与者沿纵轴的平移距离变化较大。因此,平移估计更具有挑战性。同时,车辆平移的估计比方向的估计更为关键。
传统的方法是将平移估计作为一个独立的过程,而不是使用几何投影法进行目标类预测和旋转估计。然而,几何投影方法假设:
因此,利用几何投影作为后处理步骤,将对象类估计和旋转回归的误差合计到后续的投影距离估计中。
为了适应自动驾驶中准确的平移估计需求,我们提出了一个名为6D-VNet的框架,旨在同时回归车辆的旋转和平移(Figure 2)。6D-VNet通过区域建议网络(RPN)【10】的中间输出简化了车辆的6DoF。网络的检测部分是规范的2D对象检测网络(Mask R-CNN)。网络的6DoF估计部分采用检测头的中间输出。学习6DoF汽车位姿的挑战性的方向是设计一个既能学习旋转又能学习平移的损失函数。该模型在平移和方向的监督下学习互补表示。此外,交通参与者相互影响他们的邻居。因此,我们引入了一个加权的非局部块,它是【41】的一个修改版本,用可解释的自我注意图,来捕获交通参与者之间的集体信息。
具体地说,该网络是通过以稳定的几何基础设计的联合损耗进行端到端的训练。实验结果表明,该方法优于现有的两级系统。我们的贡献如下:
基于单目视觉的三维物体检测,借助人脸检测【39】的前期工作,推广实现了边界盒物体检测。后来,行人检测【7】,PASCAL VOC【8】,MS-COCO【29】推出了去检测更多样化的,挑战性的任务。Detection【11】基于一系列的工作【27、14、41、12、28、20、31、13、43】,使基于2D物体探测的广泛研究项目成为可能。KITTI的数据集【9】推动了自主驾驶场景下对于交通参与者的研究。但是,KITTI数据集中的三维对象检测任务主要集中在使用来自Velodyne 激光扫描仪的点云数据,这是一个昂贵的设备。实际上,KITTI 3D物体检测任务只有一半的旋转自由度,可以俯瞰车辆的行驶方向。
Camera pose estimation 是一个定位的问题,它是去推断你在哪,这对移动机器人,导航和增强现实是非常重要的。PoseNet【25】训练卷积神经网络,以端到端的方式从单个RGB图像中还原出6DoF的相机姿态,不需要额外的工程或图优化。更基础的理论处理在【24】中,通过探索一些基于几何和场景重投影误差的损失函数被给出。【40】提出了一种统一的架构来同时跟踪自我的定位和相机的姿态。相机的姿态估计是egocentric的,换句话说,一个单一的6维的向量对于定位相机姿态是足够的。
6DoF object detection 是移动机器人工作和增强现实的关键。BOP基准【18】由8个统一格式的数据集组成,涵盖了不同的实际场景,并表明基于点对特征的【38】方法目前的性能优于基于模板匹配【19】,基于学习【2,3,33,23】和3D 局部特征【5】的方法。最近的结果【22,17,42,38,15,32,6,34】十分令人鼓舞。他们在RGB或RGB-D图像上检测3D模型实例,并估计他们的6DoF姿态。在【32】中提出了一个two-staged的6DoF的物体检测基线:首先,一个Single Shot Multibox Detector(SSD)【30】被应用去提供物体的bounding box和识别。然后用域随机策略(Domain Randomisation【35】Strategy)来使用一个Augmented Autoencoder(AAE)去估计物体的旋转。但是,上述方法关注的是与行业相关的物体,它们既没有显著的纹理,也没有区别的颜色或反射特性。此外,感兴趣的对象都位于一个统一的地平面上(e.g. in T-LESS dataset【17】,目标距离的范围在650mm-940mm之间)。因此,旋转的容忍度需要保持较低,而平移可以放宽。
6D-VNet在概念上是直观的,在结构上是继承性的:Faster R-CNN对每个候选对象有两个输出,一个类标签和一个bounding box偏移量,Mask RCNN添加了第三个分支来输出对象mask。类似地,6D-VNet通过区域建议网络(RPN)的中间输出简化了目标6DoF预测。然而,为了不破坏预先学习过的网络功能,必须为端到端培训定制精心的设计选择。接下来,我们将Sec 3.1 中介绍总体架构。特别地,引入了端到端训练模式的平移估计,在平移估计精度方面大大优于其他两阶段的框架。Sec 3.2中,提出了联合损失函数的设计选择。最后,Sec 3.2中,我们证明了交通参与者之间的空间关系可以通过一个修正的加权非局部块来合并。
6D-VNet是建立在如Figure 3所示的标准对象检测网络上的。该系统是一个经过端到端训练的两级网络,用于估计目标的6DoF姿态信息。网络的第一阶段是典型的二维目标检测网络(Mask R-CNN)。该网络的第二阶段是自定义头估计目标6DoF位姿信息。
6DoF姿态估计分支是该模型的新颖之处,分为两部分:第一步是,如果候选类属于车辆类别,则对每个候选框【14】进行RoIAlign,并且执行子类分类和旋转估计。由于对于给定的车辆类别来说,平面旋转是唯一的,所有车辆都共享相似的偏航、俯仰和滚转角的旋转特性。因此,来自于RoIAlign层的固定大小的视觉提示,对于估计候选的子类类别和旋转是充足。
第二部分采用RoIAlign特征和bounding box信息(在Sec. 3.2中描述的世界单位中),通过连接操作来估计三维平移向量。据我们所知,这个新颖的formulation是第一个直接回归平移向量的方法。联合特征组合方案通过拼接操作对对象类和旋转信息进行隐式编码(⊕ 在Fig. 3)。将平移回归头与子类分类和四元数回归的联合损失相结合,可以实现平移回归头的协同作用。我们在实验中证明,我们提出的新的平移回归方法比将平移估计作为后处理步骤的方法有更加准确的位置估计。这种对平移向量的精确估计,对于物体之间的距离至关重要的应用来说尤为重要(e.g. 在自动驾驶场景中)。
我们以端到端的方式来训练我们的网络,以最小化下面的损失 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与【14】中的定义相同。为了加快网络训练的速度,保持预训练多任务模块的功能(e.g. 用于分割的mask head),我们能够冻结这些头和他们对应的孩子节点,i.e.,卷积的backbone 和在反向传播阶段设置 L d e t \mathcal{L}_{det} Ldet为0。 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} λsub_clsLsub_cls+ λ r o t L r o t \lambda_{rot}\mathcal{L}_{rot} λrotLrot+ λ t r a n s L t r a n s \lambda_{trans}\mathcal{L}_{trans} λtransLtrans,其中 λ s u b _ c l s \lambda_{sub\_cls} λsub_cls, λ r o t \lambda_{rot} λrot, λ t r a n s \lambda_{trans} λtrans是用来平衡他们对应损失的超参数。下面我们将解释上面三元损失的设计。
Sub-category classification loss L s u b _ c l s \mathcal{L}_{sub\_cls} Lsub_cls。Sub_category 代表车辆库中较详细的类别:e.g. Audi-A6 ,BMW-530,Benze-ML500,etc 为了平衡训练图像中不经常出现的车辆的罕见情况,采用加权交叉熵进行分类损失,加权交叉熵被用来子类分类损失。
Rotation loss L r o t \mathcal{L}_{rot} Lrot . 通常有是三种方式来提供方向信息: Euler angles,SO(3) rotation matrices 和Quaternions. 欧拉角是很容易理解和解释的参数化三维旋转。但是,当直接回归Euler angles 的时候,有两个问题:
(1)non-injectivity:同样的角度能够用多个 2 π 2\pi 2π角度来代表多个数值,这些使回归成为一个non uni-modal的任务。
(2)Gimbal lock:一个自由度的损失可能不会使欧拉角无效,但是会使它们不适用与实际的应用。
给定对象的3D模型,解决这个问题的一种方法是在固定的间隔内旋转每个视图以覆盖整个视图SO(3),然后找到最近的邻居【32】或最近的视点【22】,它将旋转估计问题变为一个分类问题。但是这需要一个完整的物体的CAD模型和一个方向角的离散化的步骤。去直接估计旋转矩阵,【6】提出了一种基于旋转表示的Lie algebra(李氏代数)回归的LieNet。但是,一个3×3的正交矩阵是超参数化的,其正交性的加强是非常不易的。
因为从四维值映射到有效旋转的通用性,所以四元数是有利的。这是一个比旋转矩阵的正交化更简单的过程。四元数是连续的、平滑的,位于一个流形单元中,可以通过反向传播很容易地执行。因此,我们的网络中的旋转头集中于四元数表示的回归。然而,四元数的主要问题是它们不是单射的:四元数 q 和 -q 表示相同的旋转,因为(来自每个半球的)两个惟一值映射到一个旋转。为了解决这个问题,我们将所有四元数限制在一个半球上,这样每个旋转都有一个唯一的值。因此,对于旋转头,给定ground truth唯一四元数 q 和预测的 -q,旋转的损失被定义为:
回归范数 ∣ ∣ ∣ ∣ γ ||||_{\gamma} ∣∣∣∣γ是欧氏空间回归的一个重要选择。典型的,深度学习模型使用 L 1 = ∣ ∣ ∣ ∣ 1 L_{1}=||||_{1} L1=∣∣∣∣1或 L 2 = ∣ ∣ ∣ ∣ 2 L_{2}=||||_{2} L2=∣∣∣∣2。用本文使用的数据集,我们发现 L 1 L_{1} L1泛型表现的更好:误差不随幅值的平方增加,也不使较大的残差过度衰减。
Translation loss L t r a n s \mathcal{L}_{trans} Ltrans. 用世界单位代替像素单位回归平移向量,稳定了损失。被检测对象的变换使用2D bounding box在像素空间中的中心,高和宽 u p u_{p} up, υ p \upsilon_{p} υp, h p h_{p} hp, w p w_{p} wp 和输出他们在世界空间中对应的 u w u_{w} uw, υ w \upsilon_{w} υw, h w h_{w} hw, w w w_{w} ww:
其中相机的内在的标定矩阵是【 f x , 0 , c x ; 0 , f y , c y ; 0 , 0 , 1 f_x,0,c_x;0,f_y,c_y;0,0,1 fx,0,cx;0,fy,cy;0,0,1】。
采用Huber loss来描述平移估计中的损失:给定ground truth 3维的平移矩阵t 和预测的 t ~ \widetilde{t} t ,平移损失是:
其中超参数 δ \delta δ控制异常值的边界。如果 δ \delta δ设置为1,它就变成了【10】中使用的smooth-L1 损失。在这篇论文中, δ \delta δ被设置为2.8,作为平移估计截止的阈值,详细的在Sec. 4.1。
为了获取检测到的感兴趣物体之间的空间依赖,我们介绍一个加权的non-local block。我们的理由是,相邻对象之间的依赖关系将有助于网络对6DoF姿态估计进行整体调整,而不是单独处理它们。例如,在同一车道上,相邻的车几乎会沿着相同的方向行驶,并保持一定的距离。与其他嵌入方案【37,1】相比,使用加权non-local操作有几个优点:
(i)non-local 操作通过计算任意两个位置之间的交互来直接捕获长期的依赖,而不管它们的位置距离。
(ii)non-loacl操作维持可变的输入大小,并且可以轻松地与其他操作结合使用。
(iii)我们提出的加权操作使得将输出映射与自我注意机制相关联成为可能,从而获得更好的可解释性。
这个non-local means(NL-means)在【4】中第一次被介绍,基于图像中所有像素的non-local平均。Later【41】介绍了non-local操作作为一个有效的和通用的组件捕获与深度神经网络的长期依赖。non-local操作维持可变的输入大小。直观地,一个non-local操作将一个位置的响应计算为输入特征图中所有位置的特征的加权和。将深度神经网络中的一般non-local操作定义为:
其中 i i i是要计算响应的输出位置(在空格中)的索引, j j j是枚举所有可能位置的索引。 x x x是输入的标记, y y y是与 x x x相同大小的输出的标记。成对函数 f f f计算 i i i和 j j j之间的标量(表示关系,如类同关系)。一元函数 g g g计算输入信号在位置 j j j处的表示。这个响应通过一个因素 C ( x ) C(x) C(x)被标准化。这个non-local models对于 f f f和 g g g的选择来说是不敏感的。为了简单和快速的计算,我们考虑 g g g的线性嵌入的形式: g ( x j ) = W g x j g(x_j)=W_gx_j g(xj)=Wgxj,其中 W j W_j Wj是一个要学习的权重矩阵。对函数 f f f以嵌入高斯函数形式实现: f ( x i , x j ) f(x_i,x_j) f(xi,xj)= e θ ( x i ) ϕ ( x j ) e^{\theta(x_i)\phi(x_j)} eθ(xi)ϕ(xj),其中 θ ( x i ) = W θ x i \theta(x_i)=W_{\theta}x_i θ(xi)=Wθxi 和 ϕ ( x j ) = W ϕ x j \phi(x_j)=W_{\phi}x_j ϕ(xj)=Wϕxj是两个嵌入。 C ( x ) = ∑ ∀ j f ( x i , x j ) C(x)=\sum_{{\forall}_j}f(x_i,x_j) C(x)=∑∀jf(xi,xj)。最近提出的self-attention【36】是嵌入高斯版本中non-local操作的一个特例:定给定 i i i时, 1 C ( x ) ∑ f ( x i . x j ) \frac{1}{C(x)}\sum{f(x_i.x_j)} C(x)1∑f(xi.xj)变成了沿维度 j j j进行softmax的计算。所以我们有 y = s o f t m a x ( x T W θ T W ϕ x ) g ( x ) y=softmax(x^TW^T_{\theta}W_{\phi}x)g(x) y=softmax(xTWθTWϕx)g(x)。
但是,我们发现当输入的维度 d d d(对于 H × W × C H \times W \times C H×W×C的特征图来说,C是通道数, d = H × W d=H \times W d=H×W)变大时,点积的大小变大,将softmax函数推到具有极端梯度的区域。结果, y y y也将有一个极端的值。为了抵消这个影响,我们提出了使用weighted non-local operation 来计算self-attenation map A \mathcal{A} A:
所以 y = A g ( x ) y=\mathcal{A}g(x) y=Ag(x)。weighted non-local操作将点积注意方差缩放到单元1,因此不会将softmax操作推到极端、饱和的值。相似的技术也在【16】中被采用,在何处提高最终的softmax的temperature以获得软目标。直观地,这个加权的操作有相同的表达式的形式。但是,在softmax中合适的temperature很难确定。要不,我们将点积输入方差缩放到单元1。因此,softmax操作后的输出映射将以一种自我注意公式的形式提供一个合理的解释。
我们对Apolloscape数据集挑战进行了全面的研究。这个Apolloscape 3D Car实例挑战包含了一组不同城市街景中录制的立体视频序列。在训练/验证/测试集中分别有3941/208/1041的高质量注释图像。单目的RGB图像的像素大小是2710 × \times × 3384。值得注意的是图像的高分辨率:单个图像的像素总数是其他标准图像数据集的100倍(e.g.,MS-COCO,Mapillary Vistas,ImageNet)。摄像机的固有参数以摄像机焦距 ( f x 、 f y ) (f_x、f_y) (fx、fy)和以像素坐标 ( c x 、 c y ) (c_x、c_y) (cx、cy)表示的光学中心的形式提供。汽车模型以三角形网格的形式提供。网格模型大约有4000个顶点和5000个三角形面。一个网路模型实例如Figure 2所示。共有3大类79款车型(sedan1,sedan2,SUV),只有34类汽车模型出现在训练集中。另外,忽略的标记作为未标记的区域提供,我们只使用忽略的掩码在测试期间过滤掉检测到的区域。
评价指标遵循与MS-COCO相似的实例均值AP【29】。但是,由于3D特性,3D汽车实例估计有它自己的特性:而不是使用2D掩模IoU来判断一个真正的正样本,在这个数据集中的3D度量包含视图的尺寸(s),3D平移(t)和3D旋转(r)。形状相似性得分由 N c a r ∗ N c a r N_{car}∗N_{car} Ncar∗Ncar矩阵提供,其中 N c a r N_{car} Ncar表示汽车模型的数量。对于3D平移和3D旋转,利用欧几里得距离和arccos距离分别测量位置差和方向差。
特别地,在一个图片 C i = ( s i , t i , r i ) C_{i}={(s_i,t_i,r_i)} Ci=(si,ti,ri)中,给定一个估计的3D汽车模型和ground truth模型 C i ∗ = ( s i ∗ , t i ∗ , r i ∗ ) C_i^*={(s_i^*,t_i^*,r_i^*)} Ci∗=(si∗,ti∗,ri∗),对着三个估计的评价如下:对于3D shape,通过将模型放置在固定位置并通过旋转对象呈现10个视图(v)来考虑重新投影相似性。Mean IoU 是在每个视图中呈现的两个姿态(P)之间计算的。形式上,这个度量被定义为: C s h a p e = 1 ∣ V ∣ ∑ v ∈ V I o U ( P ( s i ) , P ( s i ∗ ) ) v C_{shape}=\frac{1}{|V|}\sum_{v\in V}IoU(P(s_i),P(s_i^*))_v Cshape=∣V∣1∑v∈VIoU(P(si),P(si∗))v,其中V是相机视图的数据集。对于3D平移和旋转,评估指标遵循规范的self-localisation: C t r a n s = ∣ ∣ t i − t i ∗ ∣ ∣ 2 C_{trans}=||t_i-t_i^*||^2 Ctrans=∣∣ti−ti∗∣∣2和 c r o t = a r c c o s ( ∣ q ( r i ) ⋅ q ( r i ∗ ) ) c_{rot}=arccos(|q(r_i)\centerdot q(r_i^*)) crot=arccos(∣q(ri)⋅q(ri∗))。然后,从宽松到严格设置10个阈值 ( c 0 , c 1 , . . . . . , c 9 ) (c_0,c_1,.....,c_9) (c0,c1,.....,c9)
其中最宽松的标准 c 0 c_0 c0: 0.5,50,2.8意味着shape的相似率大于0.5,旋转距离小于50°和平移距离小于2.8米,严格的标准能够被相应的解释:这三个条件必须同时满足,才能算作正样本。
值得一提的是严格的平移距离的阈值是2.8米:它要求被检测车辆到相机中心的距离需要在2.8米的阈值内正确估计,即使车辆距离相机数百米,否则检测将被视为假正样本。精确的平移估计要求是网络产生正样本的主要因素,也是一项具有挑战性的人类视角任务。
采用ResNet-101作为卷积的主体,特征金字塔网络(FPN)作为检测主干。实例分割头使用Apolloscape scene dataset进行预训练,“car、motorcycle、bicycle、人行道、truck、bus、tricycle”作为8个实例标注。
在Sec.4.1中,Eqn. 3.2的超参数 λ s u b c l s , λ r o t , λ t r a n s \lambda_{sub_cls},\lambda_{rot},\lambda_{trans} λsubcls,λrot,λtrans被设置为10,10,0.1去缩放相应的loss。降低平移异常值的惩罚,稳定网络训练,Eqn. 3.2的超参数 δ \delta δ被设置为2.8米作为宽松的平移标准的结束。基础学习率从0.01开始,采用warm start-up方案,对模型进行 5 × 1 0 4 5×10^4 5×104次迭代训练,分别在 1.5 × 1 0 4 1.5×10^4 1.5×104次和 3 × 1 0 4 3×10^4 3×104次迭代时,将学习率除以10。我们使用权重衰减为0.0001和0.9的动量。RolAlign从每一个RoI中获取一个 7 × 7 7 \times 7 7×7的特征图。将加权后的non-local块插入卷积体的最后一层(第5层),感受野为32×32。在训练的过程中,照片被resize,其最大的边为在【2000,2300】之间的随机数。由于存储的限制,batch size被设置为1张图像在单GPU上。non-local block的引入将会增加存储的需求,当引入non-local block的时候,训练的图片被resize,使其最大的边为【1500,2000】之间的随机数。按FPN的级别选择前1000个区域,每个图像的batch size为100。在测试的阶段,在多尺度增强的 Faster R-CNN头检测中,将阈值设置为0.1。
我们介绍了6D-VNet在Apolloscape 观挑战赛3D汽车实例任务中获得第一名的成果。此外,我们在6D-VNet中进行综合的评估分析,这进一步的提高了state-of-the-art(Tab. 4)。我们的消融研究逐渐包含了所有的组成,详细如下:
Effect of End-to-End Training. 我们首先提供了来自Faster R-CNN head的2D边界框的mAP,作为2D对象检测的上界,如Tab. 1所示。我们能够发现小的物体对于检测来说是更加具有挑战性的。小物体也表示物体的纵轴距离通常是远离相机的。因此,对较大的平移距离值的准确估计更具挑战性。
在Tab. 2 我们证明了在我们的端到端训练方案中,平移头对于改进MAP是至关重要的。投影距离估计是目前作为测量平移距离第二阶段的最先进的方法【32,22,6】。在给定旋转姿态估计的情况下,深度分量估计被视为一个完全独立的过程。因此,几何后处理方法由于其粗略的平移估计,仅能实现约3.8%mAP。我们证明了使用相同的边界框信息(在世界单位中)来训练一个平移回归头可以改进mAP到8.8%。
Effect of Joint Losses. 在Fig.3中,我们研究了使用视觉信息去回归平移向量作为连接操作⊕。Tab. 2中的w/o⊕ row表示仅使用规格化的世界单位边界框信息的平移头,⊕row表示将来自RoIAlign的中间视觉信息与边界框信息相结合的平移头。使用RoIAlign的中间特征,进一步的提升2%的整体的mAP。值得注意的是通过Tab. 2中的中间训练值列反映的联合损失的协同作用:形状相似,旋转和平移分别提高了0.01,1.4°和2.3metres。通过连接平移头和中间的RoIAlign分支,平移损失与子分类和旋转的损失共同反向传播。平移估计的改进协同提高了形状和旋转估计的精度。这表明该网络能够学习对象类、旋转和平移之间共享的隐式信息。
Effect of Weighted Non-local Block. 加权的non-local块被插入到ResNet的最后一层,以对密集的空间依赖关系进行编码。从Fig. 4可以看出,加入加权的non-local块后,与之前的收敛模型相比,旋转训练和平移训练的损失进一步减小。Tab.3 展示了加权的non-local块的合并在验证集和测试集上不断地改进mAP,同时略微增加了推理运行时间。
我们将Eqn. 4的自我注意图 A \mathcal{A} A的加权non-local块在Fig. 5中可视化。右边的热图显示出有意义的注意位置(没有加权运算,热图将显示出极高的温度,很难在注意力图上解释位置),这说明了加权non-local块可以不受空间距离的影响,学习寻找有意义的关系线索。在Fig. 6中,我们在3D空间中可视化了预测的汽车。当与加权的non-local块合并时,该模型能够捕获空间相关性,从而根据邻近车辆的距离和方向调整预测。
提出了一种基于6D-VNet的单目RGB图像姿态估计方法。据我们所知,将平移回归纳入到网络中尚属首次。此外,我们根据几何上的坚实基础来设计联合损失,这对于实现精确的位姿估计至关重要。特别是,从视觉信息和边界框信息训练平移头时,位置估计有很大的改进。此外,我们证明了相邻车辆之间的空间依赖关系可以通过带有可解释的自我注意力图的加权non-local块来合并。我们未来的工作将包括使用后处理技术,如基于迭代逼近点的算法【44】或【26】中的迭代求精网络,进一步细化估计的6DoF姿态。
[1] A. Alahi, K. Goel, V. Ramanathan, A. Robicquet, L. Fei-Fei,and S. Savarese. Social-lstm: Human trajectory prediction in crowded spaces. In Proceedings of the IEEE Conference on
Computer Vision and Pattern Recognition (CVPR), 2016.
[2] E. Brachmann, A. Krull, F. Michel, S. Gumhold, J. Shotton, and C. Rother. Learning 6d object pose estimation using 3d object coordinates. In European conference on computer
vision (ECCV), 2014.
[3] E. Brachmann, F. Michel, A. Krull, M. Ying Yang, S. Gumhold, et al. Uncertainty-driven 6d pose estimation of objects and scenes from a single rgb image. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2016.
[4] A. Buades, B. Coll, and J.-M. Morel. A non-local algorithm for image denoising. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2005.
[5] A. G. Buch, L. Kiforenko, and D. Kraft. Rotational subgroup voting and pose clustering for robust 3d object recognition. In IEEE International Conference on Computer Vision (ICCV), 2017.
[6] M.-T. Do, T. Pham, M. Cai, and I. Reid. Real-time monocular object instance 6d pose estimation. In British Machine Vision Conference (BMVC), 2018.
[7] P. Dollar, C. Wojek, B. Schiele, and P. Perona. Pedestrian detection: An evaluation of the state of the art. IEEE transactions on pattern analysis and machine intelligence, 2012.
[8] M. Everingham, S. A. Eslami, L. Van Gool, C. K. Williams, J. Winn, and A. Zisserman. The pascal visual object classes challenge: A retrospective. International journal of computer vision, 2015.
[9] A. Geiger, P. Lenz, and R. Urtasun. Are we ready for autonomous driving? the kitti vision benchmark suite. In Conference on Computer Vision and Pattern Recognition (CVPR), 2012.
[10] R. Girshick. Fast r-cnn. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2015.
[11] R. Girshick, I. Radosavovic, G. Gkioxari, P. Dollar, and K. He. Detectron. https://github.com/
facebookresearch/detectron, 2018.
[12] G. Gkioxari, R. Girshick, P. Dollar, and K. He. Detecting ´and recognizing human-object interactions. arXiv preprint arXiv:1704.07333, 2017.
[13] R. A. Guler, N. Neverova, and I. Kokkinos. Densepose: ¨Dense human pose estimation in the wild. arXiv preprint arXiv:1802.00434, 2018.
[14] K. He, G. Gkioxari, P. Dollar, and R. Girshick. Mask r-cnn. ´ In Proceedings of the International Conference on Computer Vision (ICCV), 2017.
[15] S. Hinterstoisser, V. Lepetit, N. Rajkumar, and K. Konolige. Going further with point pair features. In European Conference on Computer Vision (ECCV), 2016.
[16] G. Hinton, O. Vinyals, and J. Dean. Distilling the knowledge in a neural network. arXiv preprint arXiv:1503.02531, 2015
[17] T. Hodan, P. Haluza, S. Obdr ˇ zˇalek, J. Matas, M. Lourakis, ´and X. Zabulis. T-less: An rgb-d dataset for 6d pose estimation of texture-less objects. In Applications of Computer
Vision (WACV), 2017.
[18] T. Hodan, F. Michel, E. Brachmann, W. Kehl, A. GlentBuch, D. Kraft, B. Drost, J. Vidal, S. Ihrke, X. Zabulis, C. Sahin, F. Manhardt, F. Tombari, T.-K. Kim, J. Matas, and C. Rother.
Bop: Benchmark for 6d object pose estimation. In The European Conference on Computer Vision (ECCV), September2018.
[19] T. Hodan, X. Zabulis, M. Lourakis, ˇ S. Obdr ˇ zˇalek, and J. Matas. Detection and fine 3d pose estimation of textureless objects in rgb-d images. In IEEE International Conference on Intelligent Robots and Systems (IROS), 2015.
[20] R. Hu, P. Dollar, K. He, T. Darrell, and R. Girshick. Learning to segment every thing. arXiv preprint, 2018.
[21] X. Huang, X. Cheng, Q. Geng, B. Cao, D. Zhou, P. Wang, Y. Lin, and R. Yang. The apolloscape dataset for autonomous driving. arXiv: 1803.06184, 2018.
[22] W. Kehl, F. Manhardt, F. Tombari, S. Ilic, and N. Navab. Ssd-6d: Making rgb-based 3d detection and 6d pose estimation great again. In Proceedings of the International Conference
on Computer Vision (ICCV), 2017.
[23] W. Kehl, F. Milletari, F. Tombari, S. Ilic, and N. Navab. Deep learning of local rgb-d patches for 3d object detection and 6d pose estimation. In European Conference on Computer
Vision (ECCV). Springer, 2016.
[24] A. Kendall, R. Cipolla, et al. Geometric loss functions for camera pose regression with deep learning. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2017.
[25] A. Kendall, M. Grimes, and R. Cipolla. Posenet: A convolutional network for real-time 6-dof camera relocalization. In Proceedings of the IEEE international conference on computer vision (ICCV), 2015.
[26] Y. Li, G. Wang, X. Ji, Y. Xiang, and D. Fox. Deepim: Deep iterative matching for 6d pose estimation. In The European Conference on Computer Vision (ECCV), 2018.
[27] T.-Y. Lin, P. Dollar, R. B. Girshick, K. He, B. Hariharan, and ´ S. J. Belongie. Feature pyramid networks for object detection. In Proceedings of the IEEE Conference on Computer
Vision and Pattern Recognition (CVPR), 2017.
[28] T.-Y. Lin, P. Goyal, R. Girshick, K. He, and P. Dollar. ´Focal loss for dense object detection. arXiv preprint arXiv:1708.02002, 2017.
[29] T.-Y. Lin, M. Maire, S. Belongie, J. Hays, P. Perona, D. Ramanan, P. Dollar, and C. L. Zitnick. Microsoft coco: Common objects in context. In European conference on computer
vision (ECCV), 2014.
[30] W. Liu, D. Anguelov, D. Erhan, C. Szegedy, S. Reed, C.-Y.Fu, and A. C. Berg. Ssd: Single shot multibox detector. In European conference on computer vision (ECCV), 2016.
[31] I. Radosavovic, P. Dollar, R. Girshick, G. Gkioxari, and ´K. He. Data distillation: Towards omni-supervised learning.arXiv preprint arXiv:1712.04440, 2017.
[32] M. Sundermeyer, Z. Marton, M. Durner, and R. Triebel. Implicit 3d orientation learning for 6d object detection from rgbimages. In Proceedings of the European Conference on Computer Vision (ECCV), 2018.
[33] A. Tejani, D. Tang, R. Kouskouridas, and T.-K. Kim. Latentclass hough forests for 3d object detection and pose estimation. In European Conference on Computer Vision (ECCV).
Springer, 2014.
[34] B. Tekin, S. N. Sinha, and P. Fua. Real-time seamless single shot 6d object pose prediction. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2018.
[35] J. Tobin, R. Fong, A. Ray, J. Schneider, W. Zaremba, and P. Abbeel. Domain randomization for transferring deep neural networks from simulation to the real world. In Intelligent
Robots and Systems (IROS), 2017.
[36] A. Vaswani, N. Shazeer, N. Parmar, J. Uszkoreit, L. Jones, A. N. Gomez, Ł. Kaiser, and I. Polosukhin. Attention is all you need. In Advances in Neural Information Processing
Systems(NIPS), 2017.
[37] A. Vemula, K. Muelling, and J. Oh. Social attention: Modeling attention in human crowds. In IEEE International Conference on Robotics and Automation (ICRA), 2018.
[38] J. Vidal, C.-Y. Lin, and R. Mart´ı. 6d pose estimation using an improved method based on point pair features. In International Conference on Control, Automation and Robotics (ICCAR), 2018.
[39] P. Viola and M. Jones. Rapid object detection using a boosted cascade of simple features. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition
(CVPR), 2001.
[40] P. Wang, R. Yang, B. Cao, W. Xu, and Y. Lin. Dels-3d: Deep localization and segmentation with a 3d semantic map. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2018.
[41] X. Wang, R. Girshick, A. Gupta, and K. He. Non-local neural networks. In The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2018.
[42] P. Wohlhart and V. Lepetit. Learning descriptors for object recognition and 3d pose estimation. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2015.
[43] Y. Wu and K. He. Group normalization. In European Conference on Computer Vision (ECCV), 2018.
[44] Z. Zhang. Iterative point matching for registration of freeform curves and surfaces. International journal of computer vision.
[45] Q.-Y. Zhou, J. Park, and V. Koltun. Open3D: A modern library for 3D data processing. arXiv:1801.09847, 2018.