二、小孔成像原理

1. 小孔成像原理 

初中物理的时候就学过小孔成像的原理,主要包含以下几个方面:
--简单没有镜头
--有一个小光圈
--真实世界的3D物体,发出光线通过光圈
--相机的另一侧,像平面位置,得到一个倒立的实像

 2. 坐标系变换 

相机标定中必须要知道的4个坐标系:
--世界坐标系(World Coords):点在真实世界中的位置,描述点在真实世界的位置,单位是m
--相机坐标系(Camera Coords):以相机sensor中心为原点,建立相机坐标系,单位m
--图像坐标系:经过小孔成像后得到的二维坐标系,单位是mm,
--像素坐标系(Pixel Coords):成像点在相机sensor上像素的行数和列数,单位为像素数


另一个重要的参数叫主点:定义为光轴与图像平面的交点

 2.1 世界坐标系到相机坐标系的转换 

点P在不同坐标系的表示:
--世界坐标系(World Coords):P(x_{w},y_{w},z_{w})

--相机坐标系(Camera Coords): P(x_{c},y_{c},z_{c},)

世界坐标系和相机坐标系都属于三维坐标系,我们知道从一个坐标系变换到另一个坐标系可以通过旋转和平移来实现,因此我们可以定义:

R: 相机坐标系对于世界坐标系的旋转矩阵

T: 相机坐标系对于世界坐标系的平移矩阵

故两个坐标系之间的转换关系可以表示为:

扫描二维码关注公众号,回复: 16255971 查看本文章

\begin{bmatrix} x_{c}\\y_{c}\\z_{c}\\ 1 \end{bmatrix}=\begin{bmatrix} R3\times 3 &T3\times 1 \\O &1 \end{bmatrix}\cdot \begin{bmatrix} x_{w}\\y_{w}\\ z_{w}\\ 1 \end{bmatrix}

这里涉及到齐次坐标系,简而言之就是用n+1维坐标系来代表n维坐标系,关于齐次坐标系的概念可以参考:什么是齐次坐标系?为什么要用齐次坐标系? - 知乎

 2.2 相机坐标系到图像坐标系的转换 

假设相机坐标系中的点P(Xc,Yc,Zc)在图像坐标系中的成像点是P'(X,Y), 基于小孔成像的原理,空间中的一点成像在平面中,与XoY平面平行,距离原点f的平面,取一个截面ZoY, 可以得到下图,根据相似三角关系可以计算得到:

\frac{x}{x_{c}} = \frac{y}{y_{c}} = \frac{f}{z_{c}}

简化以后得到:

x= \frac{f}{z_{c}}\cdot x_{c}

y = \frac{f}{z_{c}}\cdot y_{c}

 写成矩阵形式:

z_{c} \begin{bmatrix} x\\y \\ 1 \end{bmatrix}=\begin{bmatrix} f & 0 & 0 &0 \\ 0& f & 0 & 0\\ 0&0 & 1 &0 \end{bmatrix}\cdot \begin{bmatrix} x_{c}\\y_{c} \\ z_{c} \\ 1 \end{bmatrix}

其中f为镜头焦距,单位为mm.

 2.3 图像坐标系到像素坐标系的转换 

图像坐标系的点P(x,y)到像素坐标系的(u,v)的转换。

图像坐标系的原点在sensor的几何中心,单位是mm

像素坐标系的原点在sensor的左上角,单位是pixel,也就是像素的行数和列数

他们的转换关系可表示为:u = \frac{x}{dx}+u_{0}v = \frac{y}{dy}+v_{0}, 其中dx,dy分别表示像素点在x和y方向的尺寸,u0, v0为主点坐标。换成矩阵表示:

\begin{bmatrix} u\\v \\ 1 \end{bmatrix}=\begin{bmatrix} \frac{1}{dx} &0 &u_{0} \\ 0& \frac{1}{dy} & v_{0}\\ 0&0 & 1 \end{bmatrix}\begin{bmatrix} x\\y \\ 1 \end{bmatrix}=\frac{1}{z_{c}}\begin{bmatrix} \frac{1}{dx} &0 &u_{0} \\ 0& \frac{1}{dy} & v_{0}\\ 0&0 & 1 \end{bmatrix}\begin{bmatrix} f & 0 & 0 &0 \\ 0& f &0 &0 \\ 0 &0 & 1 &0 \end{bmatrix}\begin{bmatrix} x_{c}\\y_{c} \\ z_{c} \\ 1 \end{bmatrix}= \frac{1}{z_{c}}\begin{bmatrix} f_{x} & 0 & {u_{0}} & 0\\ 0& f_{y} & {v_{0}} &0 \\ 0&0 &1 &0 \end{bmatrix}\begin{bmatrix} x_{c}\\y_{c} \\ z_{c} \\ 1 \end{bmatrix}

 其中f_{x}=\frac{f}{d_{x}},f_{y}=\frac{f}{d_{y}},可以通过标定得到,.

 2.4 完整坐标系转换

 {z_{c}}\begin{bmatrix} u\\v \\ 1 \end{bmatrix}=\begin{bmatrix} \frac{1}{dx} &0 &u_{0} \\ 0& \frac{1}{dy} & v_{0}\\ 0&0 & 1 \end{bmatrix}\begin{bmatrix} x\\y \\ 1 \end{bmatrix}=\begin{bmatrix} \frac{1}{dx} &0 &u_{0} \\ 0& \frac{1}{dy} & v_{0}\\ 0&0 & 1 \end{bmatrix}\begin{bmatrix} f & 0 & 0 &0 \\ 0& f &0 &0 \\ 0 &0 & 1 &0 \end{bmatrix}\begin{bmatrix} x_{c}\\y_{c} \\ z_{c} \\ 1 \end{bmatrix}= \begin{bmatrix} f_{x} & 0 & {u_{0}} & 0\\ 0& f_{y} & {v_{0}} &0 \\ 0&0 &1 &0 \end{bmatrix}\begin{bmatrix} x_{c}\\y_{c} \\ z_{c} \\ 1 \end{bmatrix}= \begin{bmatrix} f_{x} & 0 & {u_{0}} & 0\\ 0& f_{y} & {v_{0}} &0 \\ 0&0 &1 &0 \end{bmatrix}\begin{bmatrix} R_{3\times 3} & T_{3\times 1}\\ O&1 \end{bmatrix}\begin{bmatrix} x_{w}\\ y_{w}\\ z_{w}\\1 \end{bmatrix}=M_{1}M_{2}\begin{bmatrix} x_{w}\\ y_{w}\\ z_{w}\\1 \end{bmatrix}

其中M_{1}为相机内参,包含相机的焦距和主点坐标

M_{1}=\begin{bmatrix} f_{x} & 0 & {u_{0}} & 0\\ 0& f_{y} & {v_{0}} &0 \\ 0&0 &1 &0 \end{bmatrix}

M_{2}为相机外参:像素坐标系到世界坐标系的旋转平移矩阵

M_{2}=\begin{bmatrix} R_{3\times 3} & T_{3\times 1}\\ O&1 \end{bmatrix}=\begin{bmatrix} r_{11} & r_{12} & r_{13} & t_{1}\\ r_{21}& r_{22} & r_{23} &t_{2} \\ r_{31}&r_{32} & r_{33} &t_{3} \end{bmatrix}

猜你喜欢

转载自blog.csdn.net/csucmee502/article/details/129832212
今日推荐