我使用opencv calibrateCamera计算了翻译(rvecs
)和(tvecs
)。在calibrateCamera()中,我给出了来自4个不同深度(z)的设置对象和图像点。
calibrateCamera(objectPts, imagePts, imSize, cameraMatrix, distortionCoef, rvecs, tvecs);
因此rvecs和tvecs向量大小为4(我得到4个不同的旋转和翻译vecs)。
现在对于一个新的3d点,我可以使用上面向量返回的旋转和平移向量之一。
但是我将如何选择我需要使用哪个旋转平移向量projectPoints()
才能获得正确的3d到2d变换?
我有静态相机,我有一组平面的点(该平面中的所有点都具有相同的z
值)。同样地,我有来自不同平面的点集。现在,对于每个平面,我有不同的旋转和平移向量(使用校准相机计算)。现在对于不同平面中的新3d点,我需要使用我获得的上述旋转和平移向量来计算2d图像点。