EPro-PnP: Generalized End-to-End Probabilistic Perspective-n-Points for Monocular Object Pose Estimation
这篇论文是获得了CVPR 2022 最佳学生论文,其论文内容比较有意思,也很有启发性,可以学习总结以下。
目标问题
首先,这篇文章要解决的问题是在6DoF估计问题中,没办法直接用Ground Truth Pose来监督网络训练的问题。
出现这个问题的原因是什么呢?
一般来说,要做姿态估计,我们的网络会输出一个集合,
是2D位置,
是3D位置,
是
关联的概率或者权重。
那么怎么通过这个得到估计的姿态呢?
那么想要求解出, 我们可以用BA方法,或者其他的PnP求解方法。但是这个方法有个问题,我们计算真实
和
的Loss时,在
上的梯度没办法传导到
上,因此无法直接对网络进行监督。
那么本论文的首要目标就是解决上述问题。
文章思路
文章的思路比较有创新点,其本质是将所在的空间进行离散化,来近似概率分布,然后和真实的概率分布(冲击函数)。
首先,我们需要定义出一个likelihood函数,该likelihood函数表示 , 表示在给定
时的真值Pose的分布。其实想得到这个likelihood函数比较简单,如果重投影误差为
, 那么likelihood函数可以定义为
。
同时我们知道真实的ground truth的likelihood是一个冲激函数,那么我们就可以用这两个分布的KL散度来作为Loss函数。
那么如何建立对的梯度呢?其实,我们只需要把likelihood离散,然后求解Loss即可。
具体来说,我们首先计算 , 其真值应该为1,那么我们再sample一些非真值的姿态,其likelihood应该为0。通过这种监督,就可以训练整个网络。
更加形象化的表示如下:
![图片来自原文章](https://i-blog.csdnimg.cn/blog_migrate/dc542a9ccbd61c6c366d9dd212892d0b.png)
实验效果
在实验中,必然很多都是Sota级别,但是我其实更加关注,EProPnP只用Pose做监督,不用3D coordinate 监督的方式到底够不够。
表格如下:
我们可以看到,在第三行,如果不叫coord监督,其结果也不是特别优秀的,那么其实这也说明,EProPnP更多情况是作为一个辅助loss。如果想要达到更高的精度,还是要多提供监督信息。当然即使这样,也不能掩盖这篇论文的创新高度。