使用OpenCV的SovePNP的相机姿势和反射



我正在尝试使用函数SolvePNP来估计相机的相对位置。米的问题是,在选择世界坐标时,我是否需要小心选择它们,以便在将它们转换为相机坐标时不会有反射?或者OpenCV会帮我纠正吗?

细节:我正在拍摄一个网球场,最初将世界坐标原点设置为球场的中心,x轴指向与网平行的左侧,y轴指向球场上垂直向前,z轴指向上方。如果我理解正确的话,SolvePNP会将这些坐标转换为一个系统,其原点位于图像左上角后面的某个点,x轴指向图像上的下方,y轴指向右侧,z轴指向场景前方。然而,这种转换肯定会涉及反射,我必须交换我的世界坐标的x和y轴以避免这种情况吗?还是可以保持原样?(此外,如果我犯了一个大错误,请告诉我,SolveNP实际上将原点放在图像中心后面的一点,而不是左上角的一点…)

假设您有一个相机校准矩阵(并且这样的校准一直是在假设右手坐标系统的情况下完成的),并更正图像中网球场特征与CAD特征之间的对应关系:

您需要在网球场中选择参考系,使其成为右手坐标系,以便您的solvePNP解决方案提供网球场参考系相对于相机坐标系(默认情况下为右手坐标系)的姿势和位置。

希望它能帮助

最新更新