Camera Relocalization by Computing Pairwise Relative Poses Using Convolutional Neural Network

利用卷积神经网络计算成对相对姿态的相机重定位(解读)(原论文


摘要

文中提出的基于深度学习的相机重定位方法。通过使用卷积神经网络(CNN)来定位给定的查询图像,用于首先检索类似的数据库图像,然后预测查询与其姿势已知的数据库图像之间的相对姿势。查询图像的摄像机位置是通过使用基于RANSAC的方法的两个相对平移估计的三角测量获得的。每个相对姿势估计提供相机方向的假设,并且它们在第二RANSAC方案中融合。使用训练图像对以端对端方式训练神经网络以进行相对姿态估计。


优势

在文中,将学习过程与场景的坐标系分离。也就是说,不是直接回归绝对姿势,而是训练一个连体CNN架构来回归一对输入图像之间的相对姿势,并提出一个管道,用于计算几个相对姿势估计之间的绝对姿势。这种方法是灵活的并且具有以下几个好处:

  • (a)CNN可以从任何场景的图像对中学习,从而能够改进通用相对姿势估计器;
  • (b)单个网络可以被训练并用于同时在几个不相交的场景中定位,即使在训练过程中,图像在网络中的训练时间很少或没有经过训练的场景中也是如此;
  • (c)该方法是可扩展的,因为单个CNN可用于各种场景,并且在测试时内存中不需要完整的场景特定数据库(即训练)图像作为紧凑特征描述符和快速大规模图像检索可以改为使用此技术。

所提出的方法应用Siamese神经网络来预测两个视图之间的相对方向和相对平移。 然后对这些相对转换估计进行三角测量以恢复相机绝对位置。


网络结构

该方法包括两个模块:用于相对姿态计算的Siamese CNN网络和定位流水线。

输入RGB图像,以及具有各自姿势的图像数据库。第一阶段,构建了一组训练图像对,并用它训练一个Siamese CNN来预测每一对的相对摄像机姿态。需要注意的是,训练图像对可以独立于本地化数据库中的场景,然后将网络的每个训练分支视为特征抽取器,利用提取的特征向量识别特征空间中与查询图像最近的邻域(nn)的数据库图像。最后,计算查询与其相邻位置之间的相对姿态估计值,然后将其与生成完整6-DoF摄像机姿态的新融合算法中相应数据库图像的地面真值绝对位置合并。

成对姿态估计

旨在从RGB图像对中直接估计相对相机姿态。

基于Siamese的CNN网络由在ImageNet 上预训练的两个分支组成,训练直接回归一对摄像机(顶部)之间的相对姿势。训练过程完成后,使用分支作为描述符来计算图像数据库和查询图像的特征表示。然后,将点积作为检索系统的一部分应用于这些表示,并且根据较高的相似性得分对数据库描述符进行排序。 因此,查询描述符及其排名前N位的数据库表示被连接并馈送到网络的回归部分以预测成对相对姿势。最后,所提出的融合算法自然地合并相对姿态估计和地面实况绝对姿势以产生完整的6-DoF查询位置。

Camera Relocalization by Computing Pairwise Relative Poses Using Convolutional Neural Network

分支共享相同的权重集,并在最后一个平均池化层截断了resnet34体系结构。权重由预先为大规模图像分类任务训练的网络初始化,然后对相对姿态估计任务进行微调。表示分支的输出被连接起来并通过回归器传递,回归器由三个完全连接的层(fc)组成,即FC_i、FC_r和FC_t,后者分别预测相对方向和平移。完全连接的层是随机初始化的。

回归部分的输出参数化为相对方向∆r的4维四元数和相对平移的3维∆t 。当四元数位于一个单位球体上时,对任何4-D向量强制单位范数约束将输出一个有效的旋转。另外,两个四元数之间的距离(ri,rk)可以用欧几里得L2范数 ||ri − rk||2 来测量,与流形上的旋转矩阵等其他旋转参数不同,距离计算需要找到欧几里得嵌入。为了回归相对摄像机姿态,对CNN进行了以下客观标准的训练:

 Camera Relocalization by Computing Pairwise Relative Poses Using Convolutional Neural Network

其中Δr_gt和Δt_gt分别是地面实况的相对方向和平移。为了平衡方向和平移的损失,使用参数β> 0。

在测试时,将一对图像馈送到回归神经网络,该回归神经网络由两个分支组成,其直接估计相对相机姿态向量的实值参数。 最后,将估计的四元数和平移向量归一化为单位长度。 标准化的平移向量给出从数据库图像到查询相机位置的平移方向。 虽然网络预测的向量包含比例信息,但使用位置流水线(管道)恢复比例。

位置管道

最近邻检索

为了找到最接近查询图像的数据库图像,重要的是获得查询图像q和数据库图像D都有一个合适的表示。使用第一阶段的微调网络(模型架构的一个分支)作为特征提取器,将查询和数据库图像编码为固定的全局表示(即512维特征向量)。反过来,计算查询和数据库特征向量的点积以获得图像相似性。因此,根据相似性得分对数据库图像进行排序。最后,选择排名前N位的数据库图像d = {dj |dj∈D,j = 1 ... N}作为查询图像q的最近邻。

计算相对姿势

在管道的下一阶段,Siamese CNN用于回归图像对的相对相机姿态Q = q×d,ΔR= {ΔR1,ΔR2...ΔRN}和Δt= {Δt1, Δt2,......ΔtN}。 这里,ΔRj表示第j个NN数据库图像dj∈d与查询q之间的相对取向。 类似地,Δtj是相对平移方向。

姿态假设滤波

定位系统的最后部分是一种新的融合算法,从这N个相对姿态估计中恢复绝对查询相机姿态。 该过程在图2中示意性地示出。

Camera Relocalization by Computing Pairwise Relative Poses Using Convolutional Neural Network

从入围的排名靠前的数据库图像d中,选择一对Camera Relocalization by Computing Pairwise Relative Poses Using Convolutional Neural Network,其中Camera Relocalization by Computing Pairwise Relative Poses Using Convolutional Neural Network。现在,将图像ps对查询q的平移方向预测三角化,以获得查询摄像机ts的位置/平移参数。

估计查询相机的旋转使用以下等式来获得假设:

Camera Relocalization by Computing Pairwise Relative Poses Using Convolutional Neural Network

具有最高内部计数的假设被指定为查询相机的方向估计。 当两个或多个假设共享相同的内部计数时,应用稳健的旋转平均算法来获得最终的查询相机旋转。