Opencv 摄像机投影矩阵主点

Opencv 摄像机投影矩阵主点,opencv,graphics,3d,computer-vision,camera-calibration,Opencv,Graphics,3d,Computer Vision,Camera Calibration,我对在摄影机矩阵中添加主点偏移的目的有点困惑。这些方程式来自于 除了添加c_x和c_y之外,我了解所有这些。我已经读到,我们这样做是为了移动投影点的原点,使其相对于图像左上角的(0,0)。但是,我不知道如何添加图像中心的坐标(主点)来实现这一点。我认为这是简单的几何学,但我很难理解。看看你问题中的图表。x/y坐标系的原点位于图像中心附近。也就是说,可能存在负坐标。u/v坐标系的原点位于左上角,即,不能有负坐标。为了这个问题,我将考虑x/y坐标系统已经用 fx,Fy < /C> >,即(x,

我对在摄影机矩阵中添加主点偏移的目的有点困惑。这些方程式来自于


除了添加
c_x
c_y
之外,我了解所有这些。我已经读到,我们这样做是为了移动投影点的原点,使其相对于图像左上角的
(0,0)
。但是,我不知道如何添加图像中心的坐标(主点)来实现这一点。我认为这是简单的几何学,但我很难理解。

看看你问题中的图表。x/y坐标系的原点位于图像中心附近。也就是说,可能存在负坐标。u/v坐标系的原点位于左上角,即,不能有负坐标。为了这个问题,我将考虑x/y坐标系统已经用<代码> fx,Fy < /C> >,即<代码>(x,y)=(fx*x',fy*y')< /> >

您要做的是将坐标从x/y坐标系转换为u/v坐标系。让我们看几个例子:

  • x/y
    (0,0)
    中的原点将映射到u/v中的
    (cx,cy)
  • 左上角(即u/v中的
    (0,0)
    )具有x/y中的坐标
    (-cx,-cy)
你可以举出更多的例子。它们都有一个共同点,
(u,v)=(x,y)+(fx,fy)
。这是方程中的变换