【问题标题】:Obtaining world coordinates of an object from its image coordinates从对象的图像坐标中获取对象的世界坐标
【发布时间】:2015-06-24 08:40:04
【问题描述】:

我一直在关注this 文档以使用 OpenCV。在下面的公式中,我成功地计算了内在矩阵和外在矩阵(我使用了 solvePnP() 过程来获得这些矩阵)。由于物体躺在地上,所以我将 Z = 0 代入。然后,我只删除了外在矩阵的第三列,并将其与内矩阵相乘,得到一个 3X3 的投影矩阵。我把它取反,然后乘以图像坐标,即 su、sv 和 s。

但是,世界坐标中的所有点似乎都偏离了 1 毫米或更小,因此我得到的坐标不太准确。有谁知道我哪里出错了?

谢谢

【问题讨论】:

    标签: c++ opencv computer-vision signal-processing camera-calibration


    【解决方案1】:

    相机校准可能总是有些不准确,因为对于超过 2 张校准图像,而不是从校准图像中获得一个方程组的真正解,您会得到误差最小的解。

    cv::solvePnP() 也是如此。您使用三种方法中的一种来优化给定方程组的许多可能的解。

    我不明白你是如何从cv::solvePnP() 得到内在和外在矩阵的,用于计算物体在相机坐标系中的旋转和平移。

    你可以做什么:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-03
      • 2015-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-22
      相关资源
      最近更新 更多