![](/img/trans.png)
[英]OpenCV stereo vision 3D coordinates to 2D camera-plane projection different than triangulating 2D points to 3D
[英]OpenCV project 3D coordinates to 2d camera coordinates
我有一个物体的3D世界坐标,我想在相机2D平面上得到它的坐标。 我已经使用cv::calibrateCamera
校准了相机,因此我有相机矩阵和distortionCoeffs 。
为了将3D点投影到2d相机坐标,我使用cv::projectPoints
。 文件说:
void projectPoints(InputArray objectPoints ,InputArray rvec ,InputArray tvec ,InputArray cameraMatrix ,InputArray distCoeffs ,OutputArray imagePoints ,OutputArray jacobian = noArray() ,double aspectRatio = 0 )
我如何获得rvec / tvec并且我的方法是正确的? calibrateCamera
给了我rvecs
和tvecs
,但是它们用于每个输入棋盘图像,我猜,它们是棋盘的旋转和平移,而不是相机的旋转和平移。
由于我有投影矩阵 ( P
),我可以从3D坐标X
(使用齐次坐标 )计算相机平面中的2D坐标( x
):
x(u,v,w)= P * X(x1,x2,x3,w)
我只是对整改有问题 ,所以我没有得到我的2D图像的精确投影。 请参阅此处: OpenCV立体视觉3D坐标到2D相机平面投影不同于将2D点三角测量到3D
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.