halcon 标定板制作使用到 gen_caltab 算子;

halcon中使用的标定板如下图所示

python 标定板制作 标定板制作工艺_图像处理

 gen_caltab() 算子参数如下:

生成标定板图像

gen_caltab( : : XNum, YNum, MarkDist, DiameterRatio, CalPlateDescr, CalPlatePSFile : )

XNum:                  X 方向 MARK 点的数目,即上图标定板中行方向圆的个数

YNum:                  Y 方向 MARK 点的数目,即上图标定板中列方向圆的个数

MarkDist:              两个 MARK 点之间的距离(单位:米)

DiameterRatio:          MARK点直径 与 两个MARK点之间的距离 的比值

CalPlateDescr:          校正板描述文件名称(.descr);

CalPlatePSFile :      PostScript文件名称,存放了标定板图像(.ps),用 Photoshop 可以打开生成的标定板图像,形式如上图所示

PS:PostScript 是专门为打印图形和文字而设计的一个编程语言,是由Adobe公司在1985年提出来的. PostScript 文件可以用PHOTOSHOP 软件打开。

如采用 gen_caltab(7,7,0.00375,0.5,'caltab_30mm.descr','30_30.ps');文件夹下会生成一个 30_30.ps 文件,我们可以通过Photoshop 打开;

python 标定板制作 标定板制作工艺_工业视觉_02

 

1. 常见几种标定板的规格

 30*30 规格的标定板的规格

黑色圆点行数:   7
 黑色圆点列数:   7
 外边框长度:     30mm*30mm
 内边框长度:     28.125mm*28.125mm   即:黑色边框线宽为一个圆点半径(0.9375)
 黑色圆点半径:   0.9375mm
 圆点中心间距:   3.75mm
 裁剪宽度:       30.75mm*30.75mm     即:由黑色边框向外延伸0.375mm
 边角:           由黑色外边框向内缩进一个中心边距的长度

40*40 规格的标定板的规格

黑色圆点行数:   7
 黑色圆点列数:   7
 外边框长度:     40mm*40mm
 内边框长度:     37.5mm*37.5mm   即:黑色边框线宽为一个圆点半径(0.125)
 黑色圆点半径:   0.125mm
 圆点中心间距:   5mm
 裁剪宽度:       21mm*21mm     即:由黑色边框向外延伸0.5mm
 边角:           由黑色外边框向内缩进一个中心边距的长度

50*50 规格的标定板的规格

黑色圆点行数:   7
 黑色圆点列数:   7
 外边框长度:     50mm*50mm
 内边框长度:     46.875mm*46.875mm   即:黑色边框线宽为一个圆点半径(1.5625)
 黑色圆点半径:   1.5625mm
 圆点中心间距:   6.25mm
 裁剪宽度:       51.25mm*51.25mm     即:由黑色边框向外延伸0.625mm
 边角:           由黑色外边框向内缩进一个中心边距的长度

60*60 规格的标定板的规格

黑色圆点行数:   7
 黑色圆点列数:   7
 外边框长度:     60mm*60mm
 内边框长度:     56.25mm*56.25mm   即:黑色边框线宽为一个圆点半径(1.875)
 黑色圆点半径:   1.875mm
 圆点中心间距:   7.5mm
 裁剪宽度:       61.5mm*61.5mm     即:由黑色边框向外延伸0.75mm
 边角:           由黑色外边框向内缩进一个中心边距的长度

 

标定描述文件( .descr ):

标定描述文件( .descr )是 halcon 自带的;制作什么规格的标定板就选择相对应的 .descr 文件; .descr 文件在halcon安装目录下的 calib 文件夹中

python 标定板制作 标定板制作工艺_工业视觉_03

.descr 文件里面介绍了标定板的详细信息

python 标定板制作 标定板制作工艺_缩进_04

 

caltab_30mm.descr 文件解释如下 

# MARK点排列方式   7行7列
# 校正板的宽,高 [单位 米]: 0.03, 0.03
# 两个MARK点中心之间的距离 [单位 米]: 0.00375
# Y方向MARK的数目
r 7

#  X方向MARK点的数目
c 7

#   Z坐标偏移 [米] (可选项):
z 0

# Rectangular border (rim and black frame) of calibration plate
#   校正板的剪切边缘(min x, max y, max x, min y) [米](以标定板中心为坐标圆点):
o -0.015375 0.015375 0.015375 -0.015375
#   校正板的外边框 (min x, max y, max x, min y) [米](以标定板中心为坐标圆点):
i -0.015 0.015 0.015 -0.015 
#   三角标记,通过两个角点坐标(x,y, x,y) [米](以标定板中心为坐标圆点)
t -0.015 -0.01125 -0.01125 -0.015

#   黑边框的宽度 [米]:
w 0.0009375

# calibration marks:  x y radius [meter]
下面数据格式:
例如:
X坐标位置 Y坐标位置  黑边框的宽度
-0.01125 -0.01125 0.0009375
共7组X轴MARK点信息
# calibration marks at y = -0.01125 m
-0.01125 -0.01125 0.0009375
-0.0075 -0.01125 0.0009375
-0.00375 -0.01125 0.0009375
0 -0.01125 0.0009375
0.00375 -0.01125 0.0009375
0.0075 -0.01125 0.0009375
0.01125 -0.01125 0.0009375

# calibration marks at y = -0.0075 m
-0.01125 -0.0075 0.0009375
-0.0075 -0.0075 0.0009375
-0.00375 -0.0075 0.0009375
0 -0.0075 0.0009375
0.00375 -0.0075 0.0009375
0.0075 -0.0075 0.0009375
0.01125 -0.0075 0.0009375

# calibration marks at y = -0.00375 m
-0.01125 -0.00375 0.0009375
-0.0075 -0.00375 0.0009375
-0.00375 -0.00375 0.0009375
0 -0.00375 0.0009375
0.00375 -0.00375 0.0009375
0.0075 -0.00375 0.0009375
0.01125 -0.00375 0.0009375

# calibration marks at y = 0 m
-0.01125 0 0.0009375
-0.0075 0 0.0009375
-0.00375 0 0.0009375
0 0 0.0009375
0.00375 0 0.0009375
0.0075 0 0.0009375
0.01125 0 0.0009375

# calibration marks at y = 0.00375 m
-0.01125 0.00375 0.0009375
-0.0075 0.00375 0.0009375
-0.00375 0.00375 0.0009375
0 0.00375 0.0009375
0.00375 0.00375 0.0009375
0.0075 0.00375 0.0009375
0.01125 0.00375 0.0009375

# calibration marks at y = 0.0075 m
-0.01125 0.0075 0.0009375
-0.0075 0.0075 0.0009375
-0.00375 0.0075 0.0009375
0 0.0075 0.0009375
0.00375 0.0075 0.0009375
0.0075 0.0075 0.0009375
0.01125 0.0075 0.0009375

# calibration marks at y = 0.01125 m
-0.01125 0.01125 0.0009375
-0.0075 0.01125 0.0009375
-0.00375 0.01125 0.0009375
0 0.01125 0.0009375
0.00375 0.01125 0.0009375
0.0075 0.01125 0.0009375
0.01125 0.01125 0.0009375