您的位置:首页 > 其它

SLAM学习——相机与图像

2017-07-10 16:05 316 查看

1.针孔模型

一般而言,我们通过小孔成像来描述相机的成像原理,对其进行数学建模,如下图所示。



其中O-x-y-z为相机坐标系,O’-x’-y’-z’为成像平面物理坐标系,o-u-v为像素坐标系,通过此几何模型,我们可以得到:Z/f=-X/X’=-Y/Y’,其中负号表示这个在成像平面上所形成的像是倒的,我们可以对该模型进行一定的处理,将负号去掉,得到以下模型:



以上分别为真实成像平面、对称成像平面、归一化成像平面。其中像素坐标系的定义为:原点定义在左上角上,u轴与x轴平行,v轴与y轴平行。像素坐标系与成像坐标系相差了一个缩放和原点的平移。设在u轴缩放了αα

倍,在 v 轴缩放了ββ 倍,原点平移了[cx,cy]T[cx,cy]T,则成像平面上的点P’与像素坐标的关系为:

{u=αX′+cxv=βY′+cy{u=αX′+cxv=βY′+cy

将像素平面与摄像机坐标系上的点P(X,Y,Z)P(X,Y,Z)联系起来,在这里,我们设fx=αffx=αf ( ff 表示焦距),fy=βffy=βf,则可得到以下公式:

{u=fxXZ+cxv=fyYZ+cy{u=fxXZ+cxv=fyYZ+cy

其中,f 的单位为米,αα,ββ单位为像素/米,fxfx,fyfy的单位为像素,写成齐次坐标为:

⎛⎝⎜uv1⎞⎠⎟=1Z⎛⎝⎜fx000fy0cycy1⎞⎠⎟⎛⎝⎜XYZ⎞⎠⎟=1ZKP=1ZK(RP+t)(uv1)=1Z(fx0cy0fycy001)(XYZ)=1ZKP=1ZK(RP+t)

则K代表的是内参,若需要将世界坐标点转换到,只需要对上述基于摄像机坐标系的空间点P转化到基于世界坐标系的空间点P’即可。以上我们得到了像素坐标系,成像坐标系,摄像机坐标系,世界坐标系上点的转换关系。其中涉及到一个归一化平面,相当于焦距为单位化了,这里不详细说明。

2.镜头畸变

对于畸变而言,可分为径向畸变和切向畸变,在这里我们只考虑径向畸变

{xdistorted=x(1+k1r2+k2r4+k3r6)ydistorted=y(1+k1r2+k2r4+k3r6)}{xdistorted=x(1+k1r2+k2r4+k3r6)ydistorted=y(1+k1r2+k2r4+k3r6)}

其中(x,y)为归一化平面上的点,(xdistorted,ydistorted)(xdistorted,ydistorted) 为畸变后的点。在畸变纠正模型中,对于畸变较小的图像中心区域,主要是k1起作用,对于畸变较大的边缘区域,主要是k2起作用。

在这里补充一下归一化平面的知识,归一化平面位于相机前方z=1处的平面,因此上面的点z坐标的值恒等于1.有以下关系式:



在以上公式中,PwPw基于世界坐标系,Pc˜Pc~ 基于摄像机坐标系,PcPc 基于归一化平面。T为世界坐标系到摄像机坐标系的转换矩阵。

单目相机成像过程:世界坐标系P(X,Y,Z)——> 摄像机坐标系P’(X’,Y’,Z’)——>归一化平面上的点p(X’/Z’,Y’/Z’,1)(或者焦距为f的点p)——>进行畸变矫正得到的点p′(xdistorted,ydistorted)p′(xdistorted,ydistorted)——>通过内参得到像素上的点p′′(u,v)p″(u,v)。

3.图像像素

灰度图:在一张灰度图中,每个像素位置(x,y)对应一个灰度值II,所以,一张宽度为w、高度为h的图像,数学上可以记做一个矩阵: mathitI(x,y)∈Rw×hmathitI(x,y)∈Rw×h。由于计算机不能表达整个实数空间,所以常见的灰度图中,用0-255的整数来表达图像的灰度大小。

故一张宽度为640像素、高度为480像素分辨率的图像图就可以表示为:

usigned char image[480][640]


RGB-D:在RGB深度图中,记录了各个像素与相机之间的距离,这个距离通常以毫米为单位,而RGB-D相机的量程通常在10几米之外,超过了255.采用16位整数来记录深度图,也就是位于0-65536的值。

彩色图像:彩色图像需要有通道的概念。计算机中,用红绿蓝这三种颜色的组合来任意表示,于是对于每一个像素,就要记录R、G、B三个数值,每个数值称为一个通道。例如,最常见的彩色图有三个通道,每个通道由8位整数表示,在这种规定下,一个像素占据24位空间。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: