zoukankan      html  css  js  c++  java
  • 计算机立体视觉之-相机针孔模型

      相机模型是将三维世界中的物体投影到二维相机平面中。常见的相机模型有针孔模型(pinhole model)和全景模型(omni-directional model,即通常称为鱼眼相机的模型)。针孔模型是光学相机模型中最常见的模型,也是最简单的一种。针孔模型一般使用在CCD相机中,但其他成像图片也可以使用此模型,比如医用X光图片。虽然相机一般都不是理想的针孔模型,但在立体视觉处理中,一般将其抽象为针孔模型,并在相机标定时,加入畸变参数。针孔模型的标定是经典的计算机视觉问题,有着广泛的研究,网上的资料也必将多,这里不再赘述。

    基本针孔模型

      在欧式空间中,针孔模型由三维世界投影在相机平面中。针孔模型将空间三维点 X = (X, Y, Z)T投影到像平面上。按照图像的习惯,一般从左到右为 $x$ 轴的正方向,从上到下为 $y$ 轴的正方向。故方面起见,对应的世界坐标系同图像保持一致。为了方便同空间坐标区分,图像坐标一般用 $x = (u, v)$表示。

      经过远点与图像垂直的轴称为Principle Axis,为相机坐标系下的Z轴方向。如图1所示。

      

    图1. 针孔模型的空间抽象

      根据相似三角形原理,可以很容易获空间点X得其对应关系,即X = (X, Y, Z)T投影到 $(fX/Z, fY/Z, f)^T$。所以

    $$ (u, v) = (fX/Z, fY/Z) $$

      用齐次坐标来表示则有如下转换关系

    $$egin{pmatrix} X \ Y \ X \ 1 end{pmatrix} ightarrow egin{pmatrix} fX \ fY \ Z end{pmatrix} =egin{bmatrix} f & & & 0 \ & f & & 0 \ & & 1 & 0 end{bmatrix}egin{pmatrix} X \ Y \ X \ 1 end{pmatrix}$$

      其中x表示齐次坐标系下的图像点,X表示齐次坐标系下的空间点。上面公式可以写成 x = PX

    摄像机内参

      

    $$ egin{bmatrix} f_{x} & & c_{x} \ & f_{y} & c_{y} \ & & 1 end{bmatrix} $$

  • 相关阅读:
    nodejs学习笔记
    php操作mysql数据库
    HTML5 新特性总结
    万恶的浏览器兼容问题
    图标字体使用方法
    托管代码
    进程间通信,把字符串指针作为参数通过SendMessage传递给另一个进程,不起作用
    利用自定义消息处理函数的WPARAM或LPARAM参数传递指针
    自定义消息中如果需要定义WPARAM和LPARAM,该怎么使用和分配?
    提高VS2010运行速度的技巧+关闭拼写检查
  • 原文地址:https://www.cnblogs.com/zjulion/p/9118557.html
Copyright © 2011-2022 走看看