PnP(Perspective-n-Point)是求解3D-2D点运动的方法。
PnP问题有很多种求解方法,直接线性变换、P3P、EPnP.
直接线性变换
考虑空间中某个点P,知道它的齐次坐标为P=(x,y,z,1),图像I上的投影特征点x=(u,v,1)。此时相机的位姿未知,R,t,定义增广矩阵[R|t]为一个3*4的矩阵,包含了旋转和平移信息,在已知相机内参后,可以得到:
最后通过最后一行可以把s消去,为了简化计算:
可以把增广矩阵定义成T的行向量,[t1,t2,t3]T,于是有:
可以看出一个特征点可以对应两个求解方程,所以T的十二个未知量只需要六对特征点就可以求解。