如何"正确"从单应性重建内在矩阵

时间:2014-03-26 10:09:42

标签: matrix camera homography calibration

我非常努力地阅读以下文章。

ž。张。通过从未知方向查看平面来灵活地进行相机校准。国际计算机视觉会议(ICCV'99),希腊科孚岛,第666-673页,1999年9月。

本文提出了一种首先估计图像坐标和世界坐标中棋盘之间单应矩阵的方法。然后可以根据内部的方程获得内在和外在参数。

然而,我发现了一些非常奇怪的东西,即“主要点”的位置,u0& V0。从理论上讲,它们应该在图像中。

在此图中,如果我通过单位为像素的图像(黑色)坐标和单位为mm的世界(蓝色)坐标来定义棋盘。主要点几乎位于此图像的中心,这是合理的! 但是,如果我在另一个图像坐标中定义了棋盘,红色的那个,主要点将在图像外面撒谎,我不知道如何解释这样的结果。理论上,用不同坐标定义棋盘是相同的。

在我的matlab代码中,用于描述两个坐标之间的棋盘关系的单应性是完全正确的。

问题是为什么我在不同的图像坐标中无法获得相同的结果。 例如,如果我使用黑色图像坐标,则主点应位于图像的中心。如果我使用红色图像坐标,主点也应该在图像的中心。

我知道在不同坐标上描述棋盘会产生不同的单应矩阵,但这应该考虑在不同/相应坐标(黑色或红色)中定义的相同“主要点”。

如果有人精通这个领域,请帮助我。 我甚至可以上传我的matlab代码,让你明白我的意思,并帮助那些可能在将来像我一样困惑的人!

Alex

PS,为了估计内在矩阵,根据论文至少需要两个图像!

figure1

1 个答案:

答案 0 :(得分:2)

很抱歉误导所有人。 我终于找出了论文的意思。 请参阅以下文章深入推导出针孔模型!!

The coordinate system of pinhole camera model

亚历