序:我是一个普通的战五渣级别大四工科生,这篇文章的阅读源于我做的毕业设计,因为在阅读过程中感到非常困难的同时CSDN上面还没有什么好的帮助文献。以至于令我这个面向CSDN&&博客园的选手觉得心凉且愤恨,所以我决定把我做的笔记都记录下来,以便后来人学习。
但是我的实力低下,阅读仅限于翻译部分重点内容,将背景知识稍作补充以及解读部分细节。如果有什么批评指正可以私信我。
1.Abstract:
在本文中,我们解决了N个2D/3D点对应的位姿估计问题,称为(PnP)问题。我们提出了一个精确而同时有效的解决PnP问题的方法。以前的PnP算法通常涉及两组未知数,包括每个像素的深度和相机的姿态。我们的公式不涉及每个像素的深度。通过引入一些中间变量,这个公式得到了一个四次多项式代价函数,它有三个未知量,只涉及旋转。
我们提出了一种基于线性系统零空间分析的方法,为牛顿迭代提供了一个鲁棒的初始估计。实验结果表明,我们的算法在准确率方面可以与最先进的算法相媲美,速度也是最快的算法之一。
2.Introduction:
PnP问题是从图像平面上N个3D点及其对应的2D像素点计算出摄像机相对于世界框架的姿态,是计算视觉和机器人技术中的一个重要问题。它有许多应用,如结构从运动(SfM),同时定位与映射(SLAM),增强现实(AR)和视觉重新定位。
tip:我在另外一篇论文找到了PNP问题的分类:
![](https://img-blog.csdnimg.cn/fab44e8a18d74dafa81db611ae58069f.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAQ2hlbmdfX0xp,size_20,color_FFFFFF,t_70,g_se,x_16)
3.NOTATION AND PROBLEM DEFINITION:
![](https://img-blog.csdnimg.cn/fc6c6837ecb642b190c947c1616f8157.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAQ2hlbmdfX0xp,size_17,color_FFFFFF,t_70,g_se,x_16)
我们处理PNP问题的关键是解出旋转矩阵R以及平移向量t。
tip1:关于PNP问题的详细分析,可以看看这位博主的文章:
tip2:旋转矩阵R的性质补充:
旋转矩阵就是正交矩阵。
正交矩阵的逆等于正交矩阵的转置。
正交矩阵的行列式的值肯定为正负1的。
更多旋转矩阵的详情看看这个文章吧: http://t.csdn.cn/nqqnM
通过CGR参数化可以得到以下的公式:(这个操作是个啥我也不懂)
4.算法细节:
4.1由针孔相机模型得到的公式:
归一化的像素坐标:
有:
4.2我的手写草稿
5.算法总结:
我们先计算K在(13)中的值。然后我们计算奇异值分解(K)以得到正确的奇异向量。接下来我们解决这4种情况,以得到一个初始估计,后通过使用阻尼牛顿法最小化(14)来细化。最后,利用(12)和式(7)得到t。
(附上原文已经很清楚了)
结尾:由于我只需要这些算法细节,所以后面的一大堆效率分析我就没看了,看官们见谅。
文章的引用已经在文中附上链接了,债见。