QQ登录

只需一步,快速开始

6.1 haclon相机标定介绍

[ 复制链接 ]
在halcon中,相机之所以要标定,就是要确定 一些参数值,确定 相机的模型。
因为实际 光学系统 并不是理想的光学系统,通常这些参数 可以建立 标定板所确定 的三维坐标系和
相机图像 坐标系的映射关系。也就是说我们可以用这些参数 把一个三维空间的点映射到图像 空间。
    计算机视觉的基本任务之一是从摄像 机获取 图像 信息,而后计算三维空间物体的几何信息,由此重建与识别物体。
所以相机标定 极为重要,它是重建三维环境 信息的关键环节,这也是标定 的目的,因为物体成像后会发生畸变的缩放。
这样就需要建立 一个模型,能让我们通过 图像 信息重构出物体三维空间数据。也就是确定 摄像 机的几何和光学参数,
以及摄像 机相对世界坐标系的方位。而标定 精度的大小,直接 影响着计算机常常的精度 。所以只有做好了摄像 机标定 工作,
后续工作才能正常展开。标定 当中,这个求解相机参数和模型的过程,我们称为相机标定。其目的前面 也说过,就是为了得到准确 朴实的三维
空间坐标。就像我们人眼,眼睛看到的不一定是真实世界,时常大脑会欺骗我们,比如三维动画构图游戏就 是利用人的视觉错觉。
摄像机也一样,经过镜头成像后的图像 也不是真实世界,要想得到真实世界模型,我们要建立相机模型,这样就出现 了标定 来得到这个模型参数。
   
相机的标定 方法很多,常见的有传统标定 法,相机自标定法,主动摄像 机标定 法等,当然 我们如果 按照不同的相机模型来分,其实主要是两类。
线性模型和非线性模型,线性模型摄像机标定是用线笥方程求解,简单快速,是当前计算机视觉领域的研究热点之一,已有大量研究成果。
但非线性模型不考虑镜头畸变,准确 性欠佳。对于 非线性模型摄像机标定,考虑了畸变参数,引入 了非线性优化,但方法较繁琐,速度 过慢,对初值选择和
噪声比较敏感,而且非线性搜索 并不是保证参数 收敛到全局最先解。
  
首先我们要理解相机模型中的四个平面坐标系关系:像素平面坐标系(u,v)像平面坐标系(x,y),相机坐标系(Xc, Yc, Zc)和世界坐标系(Xw, Yw,Zw).
1.图像像素坐标系(u,v)
   以像素为单位,是以图像 的左上方为原点的图像坐标系;2.像平面坐标系(x,y)(或叫图像物理坐标系)
   以毫米为单位,用物理单位表示图像像素位置,定义坐标系OXY,原点O定义在相机与图像平面交点。
3.相机坐标系(Xc, Yc, Zc)
  以毫米为单位 ,以相机的光心作为原点,Zc轴与重合,并垂直于成像平面,且取摄影方向为正方向,
Xc, Yc由与图像 物理坐标系的X,Y轴平行。
4.世界坐标系(Xw, Yw,Zw)
   根据具体情况而定 ,该坐标系描述环境中斜体物体的位置,根据 具体 情况 而定 ,满足右手 法则。

刚开始理解时,看着那一堆的公式十分的头晕,我相信很多初学者和我一样,但仔细想想,只不过是,
我们假设了一些参数,使四个坐标系之间的坐标联系起来,这样我们就可以从拍摄的图片上一个点坐标一路反推出世界中的那个点的坐标,
这样就达到了我们的目的-->三维重建。而那些我们假设的参数,就是我们要标定的内参和外参。

相机的内外 参数:标定 的主要目的就是求解 相机参数,内容如下 :
   摄像 机内参数:摄像 机内参矩阵([color=rgba(0, 0, 0, 0.75)]dx,dy,u0,v0),和畸变系数(三个径向K1, K2, K3,两个切向 , P1, P2)
   摄像机外参数:旋转向量(1*3的矢量或3*3矩阵)和平移向量(Tx, Ty,Tz)

像素坐标系

像素坐标系

1,像素坐标系与像平面坐标系的关系
  像平面坐标系就是实际物理尺寸坐标系,假设其原点在左上角,而像素坐标系的中点在图像中心,
确定它们关系前,我们可以假设每一个像素在u轴和v轴方向上物理尺寸为dx,dy.则有公式:

haclon相机标定介绍

haclon相机标定介绍

公式中我们假设物理坐标系的参数为毫米,也就是x为毫米,那么dx的单位为:毫米/像素,x/dx就为像素单位了。
也就是u(像素单位) = x/dx(像素单位)+Uo(像素单位)。
Uo,Vo是图像中心坐标(光轴与图像平面的交点),dx,dy分别为一个像素 在x,y方向 上对应的物理尺寸。
[color=rgba(0, 0, 0, 0.75)]得出这个公式后我们可以运用线性代数的知识把方程用矩阵形式表示:

haclon相机标定介绍

haclon相机标定介绍

上面公式的逆关系表示为:

haclon相机标定介绍

haclon相机标定介绍


2.相机坐标系与世界坐标系的转换关系
这两个坐标系之间的关系我们可以旋转矩阵R和平移矩阵T来得到以下关系

haclon相机标定介绍

haclon相机标定介绍

上面公式中,R为3*3矩阵,T为3*1,0为(0,0,0),简化用Lw表示后为4*4矩阵。

3.相机坐标系与像平面坐标系
摄像机成像模型解释:图像 上每个像素 点的灰度反映 了空间的物体表面某点的反射光强度,
而该点在图像上的位置则与空间物体表面对应点的几何位置有关。这些位置的相互关系,
由摄像 机成像系统 的几何投影模型所决定,
计算机视觉研中,三维空间的物体到像平面的投影关系即为成像模型。

理想的投影成像模型是光学中的中心投影,也称为针孔模型。
针孔模型是各种相机模型中最简单的一种,它是相机的一个近似线性模型。在相机坐标系下,
任一点P(Xc,Yc,Zc)在像平面的投影位置,也就是说,
任一点P(Xc,Yc,Zc)的投影点p(x,y)都是OP(即光心(投影中心)与点P(Xc,Yc,Zc)的连线)与像平面的交点,
如下图。

haclon相机标定介绍

haclon相机标定介绍

haclon相机标定介绍

haclon相机标定介绍


4.世界坐标系转为像素 坐标系
从前面公式推导可得,点P的世界坐标与其投影坐标(u,v)之间的关系为:

haclon相机标定介绍

haclon相机标定介绍

上面公式中完成了从世界坐标系到图像坐标系的转变,中间经过了相机坐标系的过度,
Xw中的w表示world世界,单位为毫米,
而u,v是的 单位为像素,
即完成了从毫米——像素的转换。

其中
ax=f/dx,
ay=f/dy;
M是3×4的矩阵—投影矩阵,
M1完全由相机的内参数ax,ay,u0,v0决定,(u0,v0)为主点坐标,ax,ay分别表示图像u轴和v轴上的尺度因子,
M2则完全由相机的外部参数决定。而相机标定就是确定相机的内外参数。


实际上,由于实际的镜头并不是理想的透视成像,而是带有不同程度的畸变,
使得空间点所成的像并不在线性模型所描述的位置(X, Y),
而是在受到镜头失真影响而偏移的实际像平面坐标(X', Y')
2019-03-30_205723.jpg
其中,δxδx和δyδy是非线性畸变值,它与图像点再图像中的位置有关。
理论上镜头会同时存在径向畸变和切向畸变。但一般来讲切向畸变比较小,
径向畸变的修正量由距图像中心的径向距离的偶次幂多项式模型来表示。

δx=(X′−u0)(k1r2+k2r4+⋯
δy=(Y′−v0)(k1r2+k2r4+⋯
其中,u0,v0  u0,v0是主点位置坐标的精确值,

2019-03-30_205851.jpg
表明X方向和Y方向的畸变相对值δx/X,δy/Yδx/X,δy/Y与径向半径的平方成正比,
即在图像边缘处的畸变较大。对一般机器视觉,一阶径向畸变已足够描述非线性畸变,即省略上式中大于等于4的高次项。
线性模型参数αxαxαyαyu0u0v0v0与非线性畸变参数k1k1k2k2一起构成了摄像机非线性模型的内部参数

透镜由于制造精度以及组装工艺的偏差会引入畸变,
导致原始图像的失真。镜头的畸变分为径向畸变和切向畸变两类。
1.顾名思义,径向畸变就是沿着透镜半径方向分布的畸变,
产生原因是光线在原理透镜中心的地方比靠近中心的地方更加弯曲,
这种畸变在普通廉价的镜头中表现更加明显,径向畸变主要包括桶形畸变和枕形畸变两种。
以下分别是枕形和桶形畸变示意图:

haclon相机标定介绍

haclon相机标定介绍
成像仪光轴中心的畸变为0,沿着镜头半径方向向边缘移动,畸变越来越严重。
畸变的数学模型可以用主点(principle point)周围的泰勒级数展开式的前几项进行描述,
通常使用前两项,即k1和k2,对于畸变很大的镜头,如鱼眼镜头,可以增加使用第三项k3来进行描述,
成像仪上某点根据其在径向方向上的分布位置,调节公式为:

haclon相机标定介绍

haclon相机标定介绍
上式里(x0,y0)是畸变点在成像仪上的原始位置,(x,y)是畸变较真后新的位置,
下图是距离光心不同距离上的点经过透镜径向畸变后点位的偏移示意图,可以看到,距离光心越远,
径向位移越大,表示畸变也越大,在光心附近,几乎没有偏移。

haclon相机标定介绍

haclon相机标定介绍
切向畸变是由于透镜本身与相机传感器平面(成像平面)或图像平面不平行而产生的,
这种情况多是由于透镜被粘贴到镜头模组上的安装偏差导致。
畸变模型可以用两个额外的参数p1和p2来描述:

haclon相机标定介绍

haclon相机标定介绍
下图显示某个透镜的切向畸变示意图,大体上畸变位移相对于左下——右上角的连线是对称的,
说明该镜头在垂直于该方向上有一个旋转角度。

haclon相机标定介绍

haclon相机标定介绍

如果数学底子一般,上面出现的公式比较难理解,我们使用halcon主要目的是解决问题。
至于原理性的东西,在应用级别上,我们记住其推导结果就好,相机标定,无非就是使用halcon
算子计算出相机内参外参,将结果在后续图像处理中使用。


回复

使用道具 举报

快速回复 返回列表 客服中心 搜索