1

使用具有固定位置的相机,我必须跟踪运动中的物体并将其定位在某个预先选择的坐标系中。想法是在已知高度的对象顶部放置一个特定的颜色标记,这样Z坐标就知道了。完成颜色跟踪后,我需要从找到颜色的 u 和 v 图像坐标中找出 X 和 Y。我已经完成了相机校准,我打算使用 cv::solvePnP 来获取旋转和平移向量。另外,我在这里学习了颜色跟踪,并从中编写了一个 C++ api。

我已经在这里找到了一个类似的问题,并从中学到了很多,但不同的是我只需要评估 X 和 Y,因为 Z 坐标是已知的(之前测量过)。如何获得具有预先指定 Z 的 X 和 Y 坐标?感谢帮助!

4

2 回答 2

2

由于您已经校准(我假设 z=0),您可以使用相机、平移和旋转矩阵从像素到 rw 坐标。

  1. 你找到一个你想知道 rw 坐标的点。(颜色标记)
  2. 您查找该点的 x 和 y 坐标(假设 z=0)
  3. 您计算 x 和 y 中的角度(相对于主点)
  4. 您可以使用这些角度来计算 x 和 y 在 z=objectHeight 处的值
于 2012-08-22T13:43:02.727 回答
0

在您校准并获得外在参数和内在参数后,您可以使用有关的信息

  • u,v 坐标
  • z坐标

在世界坐标中找到 X e Y:

  • Pc = R * Pw + T

其中 Pc 凸轮坐标,Pw 世界坐标,R 旋转矩阵和 T 平移向量。

于 2012-09-11T13:12:16.437 回答