通讯作者:Carsten Rother

第一作者:Eric Brachmann

研究机构:德累斯顿工业大学,微软

代码地址:DSAC

自己的想法:

随机森林的思想在很多需要解决歧义性和多解的问题中出现,如果一个预测器没法分辨出相似的两种情况,那就训练多个预测器。

论文解决的问题

解决了RANSAC方法不可微因而无法应用到深度学习中的问题。

首先介绍下RANSAC:

该算法用于将模型拟合到一组存在噪声的数据上的任务,已经有多种RANSAC的变种被提出,这里只介绍基础版本。

  1. 通过对数据的最小子集进行采样来生成一组模型假设
  2. 基于某种相似性的量度对模型假设进行打分
  3. 选择分数最高的模型假设
  4. 使用其他数据点来优化完善所选择的模型假设

算法不可微,因此RANSAC不能参与到深度学习模型的训练过程中去。

现有方法的不足 & 本文贡献

现有的基于RANSAC的相机位姿预测方法都没有能够端到端训练的。

本文提出了两种克服RANSAC不可微的方法,其中效果较好的一种叫做DSAC。为了证明DSAC的有效性,作者将其应用到相机定位问题中,显著提升了视觉定位的精度(高出SOTA 7.3%)。

论文方法介绍

具体的,作者基于场景坐标回归森林(SCoRF)的方法 ,使用深度神经网络和DSAC对其改造,论证了DSAC的效果。

标注说明:

I iI、\ i 分别表示输入图像和像素的index,

y(I,i) yiy(I,i)、\ y_i均表示像素ii的三维坐标的预测值,

Y(I) YY(I)、\ Y均表示对图像$I $的所有像素的三维坐标的预测值。

h~\tilde{h} 表示模型参数

模型概述:

DSAC – Differentiable RANSAC for Camera Localization && CVPR 2017 论文笔记

如上图,

  1. 首先使用W网络对输入图像进行预测,得到每一个像素点的三维坐标预测值(correspondences)。
  2. 每个最小坐标子集YJY_J包含4个correspondences(通过随机采样获得),通过PNP算法每个最小坐标子集可以得到一个模型假设。通过这种方法得到一个假设集{hi}\{h_i\}
  3. 使用基于重投影误差的标量函数S对每个假设模型打分。
  4. 选择得分最高的一个假设模型hAMh_{AM},使用剩余的correspondences对该最佳假说模型进行优化。

ei=piChJyipiiCinlieroutliers(hJ,Y)hJinlier 重投影误差:\quad e_i=‖pi−Ch_Jy_i‖\quad pi为像素i的坐标,C是相机的投影矩阵\\当重投影误差小于设定的阈值时该点即被视为inlier,否则视为outlier\\标量函数 s(h_J,Y) 统计了假说h_J的inlier数目作为打分数值\\

本文方法基于前人的几篇论文:

  • 论文《Scene coordinate regression forests for cam-era relocalization in rgb-d images》提出了回归森林方法,用于获得三维坐标预测y(I,i)y(I,i)
  • 论文《Learning analysis by synthesis for 6d pose estimation in rgb-d images》提出了标量函数s(hJ,Y)s(h_J,Y)

但是都是分开训练的,本文的工作就是将两部分结合在一起成为一个可端到端训练的模型。

下图说明了基础的RANSAC(不可微)、基于softmax的RANSAC(可微)、DSAC三种方法的异同:

DSAC – Differentiable RANSAC for Camera Localization && CVPR 2017 论文笔记

Soft argmax Selection (SoftAM):

实际上,该方法使用所有假说模型的加权和作为最终的最佳模型,避开了原始版本RANSAC需要求argmax的不可微操作:
hSoftAMw,v=JP(Jv,w)hJww,vP(Jv,w)=exp(s(hJw,Yw;v))Jexp(s(hJwYw;v)) h^{w,v}_{SoftAM}=\sum_JP(J|v,w)h^w_J\\w,v分别表示三维坐标预测网络和打分模块,是网络需要训练的参数\\其中:P(J|v,w) =\frac{exp(s(h^w_J,Y^w;v))}{\sum_{J′}exp(s(h^w_{J'}Y^w;v))}
最后通过优化损失函数L得到最优参数w~,v~\tilde w,\tilde v:
w~,v~=argminw,vILL(R(hAMw,v,Yw),h)hR(Hy)yH \tilde w,\tilde v= argmin_{w,v}\sum_{I\in L}L(R(h^{w,v}_{AM},Y^w),h^∗)\\其中h^*为模型参数的真值,函数R(H,y)负责根据y优化假说H

Probabilistic Selection (DSAC):

使用概率选择的思想:
hDSACw,v=hJw, with JP(Jv,w)P(Jv,w) h^{w,v}_{DSAC}=h^w_J,\ with \ J∼P(J|v,w)\\其中的P(J|v,w)与之前提到的相同
此时需要优化损失函数的期望值:
w~,v~=argminw,vILEJP(Jv,w)[L(R(hJw,Yw))] \tilde w,\tilde v= argmin_{w,v}\sum_{I\in L}E_{J∼P(J|v,w)}[L(R(h^w_J,Y^w))]
计算梯度:
wEJP(Jv,w)[L()]=EJP(Jv,w)[L()wlogP(Jv,w)+wL()] \frac{∂}{∂w}E_{J∼P(J|v,w)}[L(·)] =E_{J∼P(J|v,w)}[L(·)\frac{∂}{∂w}logP(J|v,w) +\frac{∂}{∂w}L(·)]

Differentiable Camera Localization:

作者整体框架借鉴了论文《 Uncertainty-driven 6d pose estimation of ob-jects and scenes from a single rgb image》,不同之处在于:

  1. 将其中的随机森林换成了CNN用来预测三维坐标。
  2. 同样使用CNN来对假设模型打分

模型结构如图:
DSAC – Differentiable RANSAC for Camera Localization && CVPR 2017 论文笔记

相关文章:

  • 2021-10-31
  • 2021-07-21
  • 2021-09-23
  • 2021-05-04
  • 2021-06-21
  • 2021-10-17
  • 2021-12-11
  • 2020-06-22
猜你喜欢
  • 2021-11-07
  • 2021-07-15
  • 2021-09-24
  • 2021-09-02
  • 2022-12-23
  • 2021-08-10
  • 2021-11-10
相关资源
相似解决方案