在OpenGL

时间:2016-04-20 12:29:49

标签: c++ opencv opengl matrix

我正在研究AR计划。我已经完成了这个步骤:

  • 使用OpenCV
  • 检测国际象棋棋盘的角落
  • 使用SolvePNP查找rvec和tvec
  • 在rvec上应用Rodrigues以获得R_mat
  • 使用hconcat(R_mat, tvec, P);连接R_mat和tvec以获取Projection矩阵
  • 在P上应用decomposeProjectionMatrix以获取新的翻译,T2,vector和eulerAngles

现在我的问题是翻译向量只是tvec [2]或Z轴上的翻译是正确的 并且在Euler Angles中再次旋转(来自decomposeProjectionMatrix)只是eulerAngles [2]或绕z轴旋转是正确的。 我不知道我能否正确地获得与X轴和Y轴相关的平移和旋转。 我将在OpenGL中使用这些来增强模式上的多维数据集。 在我的代码中,X和Y轴上的平移结果比窗口大小大得多; X轴和Y轴周围的旋转非常小并且总是接近零(小于0.0001)

任何想法如何获得正确有意义的T和R? P.S:我使用Identity矩阵作为相机矩阵,使用零矩阵表示dist coeff矩阵。

0 个答案:

没有答案