【问题标题】:Calculate Homography Matrix only for Rotation仅计算旋转的单应矩阵
【发布时间】:2015-05-04 05:39:56
【问题描述】:

关于paper,我正在尝试计算相机相对于测试图案的方向。测试模式看起来像

当相机垂直于测试图案平面观察它时。从未知方向观察时,测试模式看起来像

.

我能够计算围绕 x (alpha) 和 y (beta) 轴的角度。现在我需要校正测试图案以获得关于 z (gamma) 轴(相机光轴)的旋转角度。这是通过将测试图案图像围绕 x 和 y 旋转 alpha 和 beta 的负值来完成的。那么如何获得仅用于旋转的单应矩阵。我经历过virtual camera rotationwiki link。虚拟相机旋转代码产生良好的结果,但取决于相机与测试图案的距离,在我的情况下是未知的。我通过仅传递旋转矩阵尝试了cv::warpPerspective,但结果很奇怪。

【问题讨论】:

  • 令人惊讶的是,这些人如何在 2008 年发表一篇关于 1998 年就广为人知的不可靠/不精确校准技术的论文!!!

标签: opencv rotation computer-vision affinetransform homography


【解决方案1】:

由于您的图案缺少破坏其对称性的特征,因此该问题显然只能通过旋转 90 度的倍数以及围绕图案的轴及其中心对称来解决。

有了这个警告,您可以使用 DLT 算法进行直接的单应性估计,使用模式的中心和轴与边界之间的 4 个交点。您可以将这些图像点任意分配给点 r*(0, 0), r*(1, 0), r*(0, 1), r*(-1, 0), r*(0, -1)分别是你的图案,r 是它的半径长度。

估计单应矩阵 H 后,您可以将其分解为右三角矩阵 R 和所需的旋转平移矩阵 Q 的乘积 R*Q。有关详细信息,请参阅 Zhang's paper 相机校准。

【讨论】:

  • @.Francesco ..thanx 为这个过程...尝试它并会更新
猜你喜欢
  • 1970-01-01
  • 2012-03-05
  • 2015-06-04
  • 2012-05-28
  • 2012-03-21
  • 1970-01-01
  • 2023-03-27
  • 2013-02-07
相关资源
最近更新 更多