一种简化的线扫相机单维度标定法

Posted baiyy-daheng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一种简化的线扫相机单维度标定法相关的知识,希望对你有一定的参考价值。

线扫相机精度高、速度快、抗干扰能力强,适用于连续性产品的在线检测。针对产品的测量,要获得产品边界的精确坐标,需对检测目标进行图像坐标系u-v到世界坐标系x-y-z的转化,如下图所示:

 技术图片

图 1 相机成像分布示意图

目前相机的标定主要有Tsai标定法和张氏标定法,这两种方法需要拍摄若干角度的标定板图像,然后按照转换矩阵求相机的内参和外参。而线扫相机成像时需要拍摄物有相对运动,高精度的标定板很难保证运动速度与采集速度的统一,标定板图像采集很困难,且大多数的工业检测项目,需要到现场再安装相机,且检测面并不一定是一个平面,根本无法在现场进行标定。

目前对线扫相机的标定,主要有构建标定面法和虚拟靶标方法,均需要通过两个维度的空间坐标来确定标定参数。其实,根据实际项目的检测需求和线扫相机的特点,我们更关心的是一个维度(X方向)的尺寸,不需要对空间点进行求取,基于此可以大大简化标定方法。

本文主要分以下几个部分来阐述:1、需要准备的工具; 2、标定流程及测试数据;3、代码实现

1、         需要准备的工具

标定之前,我们需要准备:菲林片和自己开发的标定软件。其中菲林片就是我们自己定制的标定工具,如下图所示:黑白相间且等距(10mm,工艺误差在0.04mm以内)

技术图片

   这种设计,也是多次改进后的版本,可能有些人会比较疑惑为什么黑白条纹不是完全平行的,而是上下跳跃的。这么设计主要是为了便于现场调整相机的水平度,如下图所示:只有相机的采集点调整在红色线的位置时,才能够完整的拍出黑白相间的条纹,否则会有采集不到的条纹。

技术图片 

  调整好后采集效果如下图所示:

技术图片

2、         标定流程及测试数据

技术图片

测试数据如下:

1)标尺的各个单位对应的像素数(10mm)

 技术图片

 

 

 

2)中间数据的线性拟合

技术图片

技术图片

3)所有数据的非线性拟合

技术图片

技术图片 

4)实际产品测试

 

                           产品类型1

产品类型2

位置

方差

方差

宽度(pixel)

2229.81

2235.4

2231.13

 

94.4181

96.9068

97.0978

 

平均分辨率

0.07462

0.07462

0.07462

 

0.07462

0.07462

0.07462

 

标定前(mm)

166.396

166.812

166.494

0.2175

7.046

7.231

7.246

0.1114

标定后(mm)

166.274

166.29

166.529

0.0289

7.077

7.206

7.25

0.0367

 

3、         代码实现

整体原理比较简单,核心算法就是最小二乘法的实现,halcon版本代码如下:

 技术图片

 

以上是关于一种简化的线扫相机单维度标定法的主要内容,如果未能解决你的问题,请参考以下文章

SLAM入门之视觉里程计:相机标定 张正友经典标定法详解

相机标定究竟在标定什么?[转]

相机标定原理介绍

相机标定的内参、外参、畸变参数

相机标定原理与张氏标定法

相机标定原理与张氏标定法