了解projectPoints(OpenCV C ++)

时间:2018-04-04 18:50:36

标签: c++ opencv

我目前正在开展一个项目,我有一个模拟环境(基于Gazebo)。这个模拟有一个虚拟摄像头和一个物体,我正在追踪。

我试图在不使用任何CV算法的情况下在相机的图像周围放置一个边界框,这是一个简单的任务,考虑到我知道物体在空间中的准确位置,我可以找到相机矩阵,但我无法理解cv::projectPoints(InputArray objectPoints, InputArray rvec, InputArray tvec, InputArray cameraMatrix, InputArray distCoeffs, OutputArray imagePoints)功能。

InputArray objectPoints是我要投影的对象点数组。但我无法理解在哪个坐标系中

  • 有些教程似乎在对象的本地坐标中定义它们,这意味着rvectvec定义旋转和平移(在相机坐标中)空间中的对象
  • 在不同来源中,rvectvec代表世界坐标中的相机的旋转和平移,因此{strong}中定义objectPoints世界坐标

哪种方法是正确的?

0 个答案:

没有答案