【论文笔记】视觉重定位 层级场景坐标回归 Hierarchical Scene Coordinate Classification and Regression 2020

Hierarchical Scene Coordinate Classification and Regressionfor Visual Localization

芬兰阿尔托大学 , Facebook AI Research

这篇论文的工作应该是在DSAC++ 的基础上改的,且仅仅对其场景坐标回归网络进行了改进。在大场景中也是SOTA,同时模型足够紧凑,解决了模型尺寸和容量的问题。未来可以考虑综合其他模块的改进进一步提升性能(如RANSAC模块,使用DSAC++的自适应RANSAC,或NG-RANSAC)。

本文针对的问题

DSAC++中,使用一个场景坐标回归网络对像素点对应的场景坐标进行稠密预测,然后使用pnp-RANSAC求解出相机位姿。

本文认为DSAC++的场景坐标回归网络泛化性不够,只适用于小场景。在大场景中感受野受限(DSAC的image patches输入),增大感受野(DSAC++)又容易过拟合。

由此本文提出HSC-Net,一种由粗到细层级结构的场景坐标回归网络。解决了场景坐标回归网络容易产生局部场景混淆的问题。

论文方法介绍

在这里插入图片描述

整体框架与DSAC++一样,但是对其场景坐标回归网络进行了改进,使用分层架构。

改进后的场景坐标回归网络由两个分类分支和一个回归分支

分类分支分别为每个像素预测其区域标签(即属于哪个区域),两层分类分支则可以达到对场景进行层级分割的目的,最后得到sub regions。回归分支则在此基础上再对其场景坐标的偏移量进行回归预测。使用偏移量而不是绝对场景坐标,因为这样网络更容易拟合。

网络的详细结构: 在这里插入图片描述

base regression network 还是VGG_like的,但是在每一个输出层之前都加入了条件层(conditioning layer)。 条件层的想法来自于视觉推理的论文《FiLM: Visual reasoning witha general conditioning layer》。

条件层的结构如图:

在这里插入图片描述

首先有一个条件参数生成器(conditioning parameter generator),其以分类分支预测的标签图L为输入,输出缩放参数 γ \gamma γ和平移参数 β \beta β

然后条件层使用这两个参数对特征图X做线性变换:
f ( x , l ) = γ ( l ) ⊙ x + β ( l ) f(x,l) =\gamma(l)\odot x+\beta(l) f(x,l)=γ(l)x+β(l)

其中 ⊙ \odot 表示矩阵逐点相乘.

损失函数:

两个分类分支和一个回归分支,所以是三个损失函数项:
L = w 1 L c 1 + w 2 L c 2 + w 3 L r L=w_1L^1_c+w_2L^2_c+w_3L_r L=w1Lc1+w2Lc2+w3Lr
其中分类损失是交叉熵损失,回归损失是场景坐标的二范数。回归损失是主要损失项,因此w3较大.

训练用的场景坐标和区域标签是对3D点云使用k-means聚类制作的。每个像素对应一个场景坐标和一个层级聚类的标签,代表其对应的区域。

实验结果:

室内外三个数据集:

在这里插入图片描述

相比DSAC++,室内室外都更准确。注意DSAC++使用了分阶段的训练方式且需要训练两天,其RANSAC机制也是经过精心设计的,本文只是用最简单的RANSAC。后期可以考虑加入DSAC++的RANSAC机制或者NG-RANSAC?

相比于regression only的方法,在训练是其损失值明显更小,说明分类分支预测的局部位置标签(subregion label)是有用的。 在这里插入图片描述

即使没有使用数据扩增,HSC-Net在仅仅改进了场景回归网络的前提下,精度依然小幅超越DSAC++。

在这里插入图片描述

在大场景下模型仍然足够紧致。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值