首页 >>> 成功案例 >

成功案例

立体机器视觉标定方法

立体视觉标定系统资料

 

 

 

  1 引言
  摄像机标定是立体视觉测量的关键问题之一。它的目的是确定三维物体的世界坐标系到摄像机图像坐标系的映射关系,其中包括摄像机成像系统内外几何及光学参数的标定和两个或多个摄像机之间相对位置关系的标定。

  根据不同的摄像机模型,摄像机标定可分为线性标定、非线性标定和两步法。线性标定不考虑镜头畸变,简单快速,但精度低;非线性标定考虑了畸变参数,但计算繁琐,速度慢;两步法介于两者之间,采用由粗到精策略,是一种比较灵活的方法[1]。根据有无标定物,摄像机标定可分为自标定方法和基于主动视觉的标定方法、基于标定物的方法。

  相对于前两者,后者的优点是可以使用任意摄像机模型,标定精度高[2]。在标定物选择上,一般分为棋盘方格和标圆靶两类。相对于棋盘格角点提取,圆靶质心提取算法具有速度快,抗噪能力强,稳定性好的特点。基于两步法标定技术,本文以二维圆靶平面作为标定物,在VC环境开发了立体视觉标定系统。

2 单摄像机标定
  2.1 非线性摄像机模型
  非线性摄像机的透视投影模型如图1。其中

非线性摄像机透视投影模型

1非线性摄像机透视投影模型

   为某世界坐标系下空间点的三维坐标。为点在摄像机坐标系(以摄像机光心为O为原点,Z轴与光轴重合)下的坐标。为理想摄像机模型(不考虑畸变)点图像坐标。点实际图像坐标(含畸变)点计算机图像坐标,以像素为单位。摄像机模型的建立就是从的变换过程,具体步骤如下:
  从世界坐标系到摄像机坐标系的变换

立体视觉标定系统的分析公式

  从摄像机坐标系到图像平面坐标的理想投影变换(f为有效焦距):

定系统的分析公式

  畸变模型(的变换)
  非线性畸变一般包括径向畸变、切向畸变、偏心畸变等。工业测量中,径向畸变是影响机器视觉精度的主要因素,可由  以下关系表示:

定系统的分析公式

  从实际图像坐标到计算机图像坐标的变换

定系统的分析公式

   是计算机图像实际主点坐标。dXdY分别为图像xy方向上单位像素的尺寸大小。例如,CCD成像面积大小为4.8×3.6mm,图像分辨率大小为768×576像素,则定系统的分析公式(1)(2)(3)(4)相结合可得非线性摄像机模型:

定系统的分析公式

  2.2圆心标定点提取
  标定算法中常用棋盘方格点[3]和圆靶圆心[4]作为标定点。前者往往通过Harrissusan等角点提取方法获得,尽管这些方法精度高,但抗噪性能弱运算量大,而且易受噪声影响。圆心提取算法计算的是特定区域的当量中心,算法简单,抗噪能力强,即使图像发生扭曲时(如圆被扭曲成椭圆),也能准确地提取其重心位置。

  本文以包含49个不同大小的标定圆的圆靶为标定板,识别并将所有标定圆自动排序,提取质心坐标。与目前常用的标定点提取算法相比,方便快捷而且达到了亚像素精度。具体步骤如下:

  固定摄像机,调整标定板所占视场内的比例(一般在35左右)
  截取标定区域,调节对比度增加其亮度,阈值分割将标定区域二值化;
  采用贴标签算法[5]对标定区域内所有标定圆一一标识、排序并以不同颜色显示;利用公式(6)计算每个标定圆的圆心坐标。

定系统的分析公式

  由于对标定圆进行排序,在立体标定完成后,每个圆心的空间坐标将与其像平面坐标一一对应。

  2.3 “两步法标定算法实现
  Tsai提出的基于RAC约束(Radial Alignment Constraint)的两步法[2]先利用线性变换方法求解摄像机参数,再以求得的参数作为初始值,考虑畸变因素,利用非线性优化方法进一步提高标定精度。

Tsai算法第2步求解非线性优化中本文使用阻尼小二乘法,求解非线性方程组。单摄像机标定的程序模块如下:
  数据读入模块:读取标定区域圆心坐标。
  解方程模块:求解Tsai算法步中的线性方程,解得
  非线性优化模块:将的结果带入非线性方程,解得估计值,然后以此作为初始值,调用软件包求解非线性方程组,得到
  数据输出模块:将标定参数以txt文件保存。
  畸变校正模块:由的畸变系数,利用式(3)可得到原始图像中对应点的坐标。至此,单目摄像机标定模块的设计结束,具体流程如图2

单目摄像机标定流程
2单目摄像机标定流程

3、双目立体视觉标定

  立体摄像机模型如图3点在世界坐标系、左右摄像机坐标系下的非齐次坐标分别为。左右摄像机外参数为。由于左右摄像机外参数都基于同一世界坐标系(系统将世界坐标原点定在个标定圆质心沿轴正向1000mm),故有

定系统的分析公式

  现假定左摄像机光心位于世界坐标原点处,令则右摄像机坐标系与此时的世界坐标系O-XYZ可通过空间转换矩阵[R,T]表示为:


双目立体视觉系统流程图

4、系统介绍与实验结果
  4.1 系统介绍
  基于上述分析,通过VC++平台的强大支持,本文开发了一套双目立体视觉标定系统(设计流程如图4)。图5是系统的部分用户界面:系统读入左右摄像机视频后,用户可手动选取标定区域(一般包括标定板上全部49个圆即可)并做预处理;开始标定进入单摄像机标定界面对左右摄像机分别标定;确认后系统保存左右摄像机参数;点击标定,系统将调用立体视觉算法计[RT]算和标定圆质心的三维坐标,数据保存为TXT文件。

单摄像机标定界面 单摄像机标定界面
5(a) 系统的主界面         图5(b)单摄像机标定界面


  3.2 标定实验
  系统由两个MV-808H工业相机(成像平面4.8*3.6 mm)、两路MV-8002采集卡组成;图像分辨率为768×576。图6显示了左右标定区域;

工业相机标定板 工业相机标定板
6 左右标定区域

5、小结
  实验结果表明,本系统操作简单,有较好的稳定性,对空间点的测量达到了一定的精度,可广泛应用在立体测量领域中。