问题描述
您好,我正在尝试计算立体相机的世界坐标,但不确定我是否完全正确。
在特征匹配之后,获得 3D 点并过滤内点,我使用了 solvePNPRansac 并获得了一个旋转和平移向量。
cv::solvePnPRansac(points3DIn_Left,currMatchesIn_Left,camMatLeft,emptydistCoeff,rVec_Left,tVec_Left);
cv::solvePnPRansac(points3DIn_Right,currMatchesIn_Right,camMatRight,rVec_Right,tVec_Right);
这些已经是真实世界坐标了吗?
在其他来源中,他们使用 Rodrigues,然后将平移向量与转置旋转矩阵相乘。
cv::Mat R = cv::Mat(3,3,CV_64F,double(0));;
cv::Rodrigues(r,R);
cv::Mat result = -(R.t() * t);
在另一个来源中,他们将值放入转换矩阵中。
cv::Mat R = cv::Mat(3,R);
cv::Mat T = cv::Mat::eye(4,4,R.type());
T(cv::Range(0,3),cv::Range(0,3) ) = R;
T(cv::Range(0,cv::Range(3,4) ) = -(R.t() * t;
这是否需要计算相机的真实世界坐标? 也许你可以帮助我了解我的相机的真实世界坐标是什么。非常感谢任何帮助。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)