ROS骨骼跟踪+多台摄像机+ aruco

时间:2018-08-27 10:56:41

标签: opencv ros aruco

早上好

我正在使用OpenNI2 + NiTe2骨架跟踪器和2个xtion摄像机。我需要将两个摄像机之间的关节位置设置在相同的坐标系中,并且这个新参考系统的原点必须在精确的位置(或多或少),所以我尝试使用Aruco进行操作。

现在,我使用cv::aruco::estimatePoseSingleMarkerscv::Rodrigues(rvec,R);从aruco获得rvec tvec并创建转换矩阵A。

然后,在执行跟踪时,我以这种方式变换每个关节:

  R_ = MatrixXd(4, 4);
  R_ << -1, 0, 0, -0.025,
        0, -1, 0, 0, 
        0, 0, 1, 0, 
        0, 0, 0, 1; //from RGB (Aruco) to DEPTH (joint)

  R_ = (A.inverse()) * R_;
  p1 = R_ * p0; //p0 original joint coordinates

如果我是对的,就可以通过这种方式将摄像机坐标系中的每个关节都转换为aruco上的关节。

我对两台摄像机都这样做(每台摄像机都有其固有的参数和aruco变换),但是新的联合坐标不会像他们应该的那样重叠。

有什么主意吗?

谢谢。

0 个答案:

没有答案