【论文笔记】—目标姿态估计—EPro-PnP—2022-CVPR

论文介绍

该论文被评为 CVPR 2022 最佳学生论文 。

将PnP位姿优化问题转变为预测位姿概率密度的问题。
对于一个基于PnP的物体位姿估计网络,可以通过反向传播位姿的概率密度从而学习物体的2D-3D关联,实现稳定的端到端训练。

题目:EPro-PnP: Generalized End-to-End Probabilistic Perspective-n-Points for Monocular Object Pose Estimation

DOI:10.48550/arXiv.2203.13254

时间:2022-3-24上传于arxiv
会议:2022-CVPR
作者:陈涵晟(同济大学 & 阿里巴巴)

论文链接:https://arxiv.org/abs/2203.13254
代码链接:https://github.com/tjiiv-cprg/EPro-PnP
论文十问:https://readpaper.com/paper/4605324801770266625?channel=harryreadpaper

提出问题

对于单目物体位姿估计任务,基于PnP的几何优化方法需要通过深度网络提取图像中的2D-3D关联点,然后求解PnP问题得到物体的位姿。但因为PnP本质上不可导,难以通过反向传播PnP输出的位姿来训练网络。

1、什么是PnP问题?
PnP(全称Perspective-n-Points),指3D到2D点对的物体运动定位问题,即已知物体在世界坐标系下的坐标,以及物体在相机的图像平面的像素坐标,求解相机的位姿(六个自由度,位置坐标和三个方向角)。位姿估计之PnP算法
从单张的RGB图片中去定位一个3D的物体:
给定物体的投影Image frame,求解物体的坐标系Object frame到相机坐标系Camera frame的刚体变换。
(刚体变换:物体到相机的一个相对位姿。包含两部分:1、朝向Orientation;2、位置Position。)

【论文笔记】—目标姿态估计—EPro-PnP—2022-CVPR

解决方案

在不知道物体形状的情况下,仅用端到端位姿损失就能训练网络去预测所有的2D/3D点及其关联权重。

本文将位姿优化问题转变为预测位姿概率密度的问题,提出了end-to-end probabilistic PnP(EPro-PnP),从而实现了通过监督位姿的概率分布来端到端地训练网络,使网络可以自主学习2D-3D关联点而不必强加代理损失。

2、什么是端到端学习?
端到端学习是一种解决问题的思路,与之对应的是多步骤解决问题,也就是将一个问题拆分为多个步骤分步解决,每个步骤是一个独立的任务,其结果的好坏会影响到下一步骤,从而影响整个训练的结果。
而端到端就是不经过复杂的中间建模过程, 由输入端的数据直接得到输出端的结果(也就是一步搞定问题),预测结果与真实结果相比较会得到一个误差,然后我们采用比如梯度下降的方法使得误差结果减少,模型最终达到收敛,达到预期的结果。
3、端到端的好处
缩减人工的预处理、后续处理和特征提取步骤,减少了人为的工作量尽可能是模型从原始输入到最终输出。给模型更多可以根据数据自动调节的空间,增加模型的整体契合度。

创新点

将PnP位姿优化问题转变为预测位姿概率密度的问题。
对于一个基于PnP的物体位姿估计网络,可以通过反向传播位姿的概率密度从而学习物体的2D-3D关联,实现稳定的端到端训练。

基于几何的位姿估计PnP方法

在图像坐标系和3D物体坐标系分别找到n个相关联的2D和3D点,对应的这个2D的图像坐标和3D的物体坐标,从这些点中可以构建一个集合投影的约束,物体的位姿被隐式地去定为了优化问题的─个最优解(优化物体的位姿y:使得每一个3D点通过位姿变换投影到图像上后它与2D点之间的重投影的误差最小化,这样得到的最优位姿即PnP的位姿解)

【论文笔记】—目标姿态估计—EPro-PnP—2022-CVPR

问题的本质:想办法找到这些2D点和3D点。

一般方法:通过一个前馈网络输入一张RGB图像,去预测2D点和3D点。同时还可以预测每一个关联点的权重,构成一个加权问题。以往的方法需要直接监督这些2D点和3D点,构建一个所谓的surrogate loss(代理损失),但对于位姿来说它并非是最优的一个训练的目标。

【论文笔记】—目标姿态估计—EPro-PnP—2022-CVPR

以往方法举例

  1. 基于关键点Keypoints的方法:已知物体的形状可以首先定义一些3D点,网络的任务就是找到这些2D点的位置。
  2. Dense correspondence:把2D点固定在图像上的一个像素的中心位置,每个像素需要去预测对应的一个3D的坐标X、Y、Z。然后还要粑图像的前景也就是mask给导出来。

【论文笔记】—目标姿态估计—EPro-PnP—2022-CVPR

上两种方法都是相应的把问题进行了一个转化,直接去监督这些东西的变量,但是会有诸多的限制,比如说我们必须得知道它的形状。

而本论文不需要知道知道它的形状,只知道数据集中只标了物体的位姿的情况下,是否可以通过反向传播包括这个PnP这么一层来去学习这些中间变量。

实验原理

把PnP求解器变成一个可微分的一个Layer(层),或者说是一个模块,使得它在整个网络中可以实现一个端到端的训练。

以前的解决方法:lmmplicit differentiation(隐式微分),但是有一个问题arg min函数并不是真正完全可导的,在某些点是不连续的,所以会导致反向传播不稳定,就必须要依赖整个代理损失来做一个正则化,来保证整个PnP它优化的目标函数如果它是一个凸优化问题的话,然后用隐式微分就可以解决,但是如果没有前面这些东西,光靠端到端的一个损失函数,没有办法稳定的通过反向传播来学习所有的这些2D、3D点。

【论文笔记】—目标姿态估计—EPro-PnP—2022-CVPR

本文试图把不可微分的—个最优解deterministic pose固定的一个单独位姿把它变成一个可微的东西。用了概率框架,把PnP视角转换一下,输出一个关于位姿的概率分布。输入Correspondence X是一个可导的东西,通过经典的贝叶斯公式推导得到一个概率密度。

  1. Define the likelihood function:定义一个似然函数,通过重授影误差的─个平方和,来取负号再取exp,可以得到关于位姿的一个likelihood似然。
  2. Prior:先验使用一个无信息的uninformative prior,其实是一个flat prior(扁平先验)的求码小模,可以直接粑整个likelihood做一个normalization归—化,就得到了最终的后验的─个概率密度,即图右上角的分布。

【论文笔记】—目标姿态估计—EPro-PnP—2022-CVPR

实质上是分类的Softmax在一个连续域上的推广,因为实际Softmax它就是用类似的一种方法Sumation(求和)在离散的类别上的求和,但本文是一个积分的情况,一个不可导的arg min问题来变成一个可导的问题。

这是因为优化层中的argmin函数不可导,因此最优位姿不可导,但将位姿视为概率分布后,位姿的概率密度是可导的。从本质上来说,这一做法等同于训练分类网络时,将argmax层替换为softargmax(即softmax)层,本文实际上是将离散softmax推广到了连续分布上。

损失函数

得到一个具体的分布后,损失函数的反向传播是基于KL Divergence来计算和真值之间的误差,和分类里面的cross entropy交叉嫡它本身是一回事,是一个连续的cross entropy。

【论文笔记】—目标姿态估计—EPro-PnP—2022-CVPR

实现具体分布的KL Divergence计算时用蒙特卡洛的方法对这个分布做一个近似,

【论文笔记】—目标姿态估计—EPro-PnP—2022-CVPR

启发1:【DSAC】

做一个可微分的RANSAC,解决思路是RANSAC本身需要很多的—个hypothesis(假设),我们要从中去选择一个比较好的hypothesis(假设),取arg max,但为了使其变成一个可学习的过程使用了softmax,来把hypothesis对应的一个score变成一个可学习的东西,有限的hypothesis的pool中去选择最优的一个解,其实也不是一个连续意义上的东西。

启发2:【Deep SDF】

预测一个物体的3D物体的表面得到他的一个几何结构。也是一个隐式的方法,需要去找到表面的一个位置,但是很难直接去预测表面的各个点,所以把它变成预测一个signed distance function(符号距离函数),输入x是3D空间的三维坐标,输出的s是各个点到物体表面的距离(外面SDF>0,里面的SDF

Original: https://blog.csdn.net/qq_39751352/article/details/125968948
Author: chaikeya
Title: 【论文笔记】—目标姿态估计—EPro-PnP—2022-CVPR

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/648870/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球