基于Tsai 两步法的视觉点胶系统相机标定方法
DOI :10.19557/jki.1001-9944.2018.05.001
马喜平,李
迪,姚侠楠,马苑晋
(华南理工大学机械与汽车工程学院,广州510640)
摘要:相机标定是机器视觉系统应用的一项重要步骤。针对传统标定方法大多使用标定板、而标定板的制作和摆放较为繁杂的问题,提出一种基于Tsai 两步法的简易标定方法。提出的方法不需要使用标定板,只需通过平台运动拍摄图标、提取特征点,操作简单,同时该方法通过合理的求解步骤,使用线性计算,避免了非线性计算的复杂过程。实验测试表明所提方法能有效降低标定复杂程度,减少标定时间,精度可达±0.1mm ,满足了视觉点胶系统的工程应用要求。
关键词:相机标定;Tsai 两步标定法;视觉点胶中图分类号:TP391.4
文献标志码:A
文章编号:1001⁃9944(2018)05⁃0001⁃04
Camera Calibration of Visual Dispensing System Bad on Tsai ’s Two ⁃step Method
MA Xi ⁃ping ,LI Di ,YAO Xia ⁃nan ,MA Yuan ⁃jin
(School of Mechanical and Automotive Engineering ,South China University of Technology ,Guangzhou 510640,China )
Abstract :Camera calibration is an important step in machine vision systems applied to the practical industry.Due to the fact that most of the traditional methods need calibration board and the production of that and the placement process are relatively complicated ,we propo an improved simple calibration method bad on Tsai ’s two ⁃step cali ⁃
bration method in this paper.Using this method ,we extract feature points with match method while the platform moving rather than using calibration board ,which makes the process more convenient and practical.The camera mod ⁃el takes the first ⁃order radial distortion into consideration and requires only linear calculation to avoid the cumber ⁃someness of nonlinear calculations.Experimental tests show that the propod method can effectively reduce the com ⁃plexity of calibration ,reduce calibration time ,and achieve an accuracy of ±0.1mm ,which meets the engineering appli ⁃
cation requirements of visual dispensing systems.
Key words :camera calibration ;Tsai two ⁃step calibration method ;visual dispenr
收稿日期:2018-03-13;修订日期:2018-04-03
基金项目:广东省自然科学基金资助项目(2015A030308002);广东省科技计划资助项目(2017B090913002,2017B090914002);
智能制造综合标准化与新模式应用项目;中央高校基本科研业务费专项资金资助项目(2017MS016)
作者简介:马喜平(1992—),男,硕士研究生,研究方向为机器视觉、计算机应用;李迪(1965—),女,教授,博士生导师,研究
方向为嵌入式系统、自动控制和机器视觉。
随着机器视觉技术的日益成熟,点胶系统开始通过机器视觉系统提高产品的生产效率,并通过优化标定计算方式进一步提高了产品的加工精度和质量,进而提高产品的经济效益。
运用机器视觉进行点胶加工前,需要进行相机
的标定。相机的标定的目的是建立空间中三维物点同像素坐标系的二维像点之间的关系,标定结果直接关系视觉系统工作的精度。相机标定方法一般有3种,除了传统相机标定方法以外,还有基于主动视觉标定方法和自标定方法[1]。
专题研究与综述
传统标定分为直接线性标定法[2-3]、Tsai 两步标
定法[4]、相机自标定方法[5]和张正友标定法[6]等。Tsai 两步标定法由Tsai 于1986年提出,此方法需要一
个已知的标定块作为空间参照物,利用空间参照物与图像特殊点的对应关系标定相机。在计算相机所有参数时,除了使用平板标定块,还必须保持特征点在不同的平面。因此,Tsai 两步标定法由两步进行:
(1)计算部分外部参数,如旋转矩阵和平移矩阵参数t x 和t y 。
(2)计算参数t z 。
尽管Tsai 两步法是常用的标定方法,但是也有其缺陷:
(1)无法通过一个平面标定全部内外参数。
(2)涉及非线性计算,可能导致解的不稳定性。
因此本文提出一种基于Tsai 两步法的简易标定方法,不需要制定标定板,直接通过平台运动拍摄图标、提取特征点;同时通过合理安排求解步骤,将非线性计算线性化,提高解的稳定性。
1基于Tsai 两步法的改进型相机标定方法
1.1标定中的几种坐标系及其转换关系
相机标定通常需要涉及四大坐标系并考虑它
们之间的关系:除了相机本身的相机坐标系(X c ,Y c ,
Z c )和像素坐标系(u ,v ),还需要针对产品标定的图
像坐标系(x ,y )和空间坐标系(X w ,Y w ,Z w )。四大坐标系之间的关系如图1所示。
根据小孔成像原理,光心O c 与空间任意点P 的
连线O c P 跟图像平面的交点就是点P 投影至图像上的位置p 。如果用(X c ,Y c ,Z c )表示点P (X w ,Y w ,Z w )
在相机坐标系下的坐标,用p (x ,y )表示点P 投影到图像平面的坐标,将单位像素在x 轴上的物理尺寸
设为d x 并将单位像素在y 轴上的物理尺寸设d y ,图像的中心坐标即主点设为(u 0,v 0)。设空间点在世界坐标系和相机坐标系下的齐次坐标分别为P w (X w ,
Y w ,Z w ,1)和P c (X c ,Y c ,Z c ,1)。
通过针孔成像模型,可以得到空间任意点的世
界坐标和像素坐标之间的对应关系,如式(1)所示。
Z c u v 1⎡⎣⎢⎢⎢⎢⎤⎦⎥⎥⎥⎥=a x 0u 000a y v 000010⎡
⎣⎢⎢⎢⎢⎤⎦⎥⎥⎥⎥
R T O T 1[
]
X w Y w Z w 1⎡
⎣⎢⎢⎢⎢⎢⎢⎤⎦
⎥⎥⎥⎥
⎥⎥=M 1M 2X w Y w
Z w 1⎡⎣⎢⎢⎢⎢⎢⎢⎤⎦⎥⎥⎥⎥⎥⎥=M X w Y w Z w 1⎡
⎣
⎢⎢
⎢⎢⎢⎢⎤⎦
⎥⎥⎥⎥
⎥⎥(1)
式中:M 1是内参,M 2是外参。1.2相机畸变模型
Tsai 指出,在对相机进行标定时,如果在计算过
程中过多考虑非线性畸变,会导致在计算过程中引入过多的非线性参数,反而影响了标定精度,而且还会引起其他相反作用,例如解的不稳定性。视觉
点胶系统的计算过程对这个问题进行了改进,通常只需修正径向畸变。
本文采用文献[7]提出的畸变模型进行求解,如式(2)所示:
x d =x u 1+kr d
2()y d =y u 1+kr d 2()⎧⎩
⏐⎨⏐(2)
式中:(x u ,y u )为图像点坐标的理想值;(x d ,y d )为实际图像点的坐标,且r d 2
=x d 2
+y d 2
;k 为一阶径向畸变系数。
1.3改进的两步标定法1.3.1
特征点的提取
特征点提取的主要目的是精确获取每个特征
防溺水安全手抄报点在图像中的位置,从而方便在对应的空间坐标中对其进行标定。实验首先在机台上固定一个标靶图像,移动至视野中心建立图像模板,然后机台在视野范围内运动固定距离,获得标靶的空间位置,再通过模板匹配得到各个位置的图像坐标。如图2所示,细
图1坐标系的转换
Fig.1Coordinate transformation
P (X c ,Y c ,Z c )
Z c x
X c
O 1
y f
O c
Y c
P (x ,y )
图2特征点提取Fig.2Extraction of
feature
point
专题研究与综述
框线是选取的模板范围,粗线是通过模板匹配获得的轮廓识别框,特征点是识别框的重心。1.3.2
标定计算
Tsai 两步法中,应当首先计算部分外部参数,从而利用径向畸变沿向量s i 的方向直接确定旋转矩
阵以及平移参数t x 和t y ,而第二步则必须对平移参
数t z 进行计算,因为t z 的变化会产生类似k 的图像效应[8]。本文通过合理安排求解次序,对Tsai 两步
标定法进行改进,避免了非线性优化繁琐的问题
[9]
。因为所有的特征点均位于平板标定物上,可将
所有特征点取Z w =0。设旋转矩阵R =[r 11,r 12,r 13,r 21,
r 22,r 23,r 31,r 32,r 33],平移向量T =t x ,t y ,t z []T
,式(2)可以
改写为
X c Y c Z c 1⎡⎣⎢⎢⎢⎢⎢⎢⎤⎦⎥⎥⎥⎥⎥⎥=r 11r 12r 13t x r 21r 22r 23t y r 31r 32r 33t z 0001⎡⎣
⎢⎢⎢⎢
⎢⎢⎤⎦⎥⎥⎥⎥⎥⎥X w Y w Z w 1⎡⎣⎢
⎢⎢
⎢
⎢⎢⎤⎦
⎥
⎥⎥⎥
⎥⎥=r 11
r 12t x r 21r 22t y r 31r 32t z 001⎡⎣
⎢⎢⎢⎢⎢⎢⎤⎦
⎥⎥⎥⎥⎥⎥X w
Y w Z w ⎡⎣⎢⎢⎢
⎢⎤⎦
⎥⎥⎥⎥(3)
将式(3)展开得:
X c =r 11X w +r 12Y w +t x Y c =r 21X w +r 22Y w +t y Z c =r 31X w +r 32Y w +t z
⎧⎩⏐⏐
⎨⏐⏐
根据径向平行约束条件,由式(2)得:
x d y d =X c Y c =r 11X w +r 12Y w +t x r 21X w +r 22Y w +t y
(4)
将式(4)整理得:
[y d X w ,y d Y w ,-x d X w ,-x d Y w ,y d ]·
r 11t
y
,r 12t y ,r 21t y ,r 22t y ,r x
t y
[]T
=x
d
(5)
1.3.3
标定算法的具体步骤
(Ⅰ)计算旋转矩阵R 、平移参数t x 和t y 。首先,
盖网通过求解其中一组参数l 来获得部分外部参数。对
于式(5),如果能过获取n 个特征点的空间坐标(X i ,
Y i ,Z i )及其对应的图像坐标(x i ,y i )(以mm 为单位),i =1,2,…,n (n >5),则可构造矩阵A ,每行为a i (a i =
印尼苏哈托
[y i X i ,y i Y i ,-x i X i ,-x i Y i ,y i ])。设l =[l 1,l 2,l 3,l 4,l 5]是需要求解的中间参数向
量,l 的各个参数如下所示:
l 1=r 11t y ,l 2=r 12t y ,l 3=r 21t y ,l 4=r 22t y ,l 5=t x
t y
设向量b =[x 1,x 2,…,x n ]包含n 组对应点的图像
横坐标x i ,列出线性方程A l =b ,方程中A 和b 是已知参数,从而可以求解l ,根据l 计算出旋转参数和
平移参数,如式(6)所示。
t y 2=L -L 2-4l 1l 4-l 2l 3()2[]
1/2
2l 1l 4-l 2l 3
年末工作总结()2
(l 1l 4-l 2l 3
)≠01
l 12+l 22,l 12+l 22≠01l 32+l 42,l 32+l 42
≠0⎧⎩⏐⏐⏐⏐⏐⎨⏐⏐⏐⏐⏐(6)
设t y =t y 2出门图片
()
1/2
,根据l 计算4个旋转参数和平移
参数t x ,如下所示:
r 11=l 1t y ,r 12=l 2t y ,r 21=l 3t y ,r 22=l 4t y ,t x =l 5t y
为了确定t y 的符号,选择一个特征点P (X w ,Y w ,
Z w )及其对应的图像点p (x ,y )进行计算:
ξx =r 11X w +r 12Y w +t x
ξy =r 21X w +r 22Y w +t y (7)苹果4图片
若ξx 与x 的符号且ξy 与y 的符号两者均分别一致,则t y 的符号与假设结果相符,否则,t y 就要
变号。
其余旋转参数可按下面公式进行计算:r 13=1-r 112
-
r 122()
1/2
,r 23=1-r 212
-r 222
()
1/2
,r 31=1-r 112
-r 12r 21
师德学习心得r 13
,
r 32=1-r 21r 12-r 22
2r 23
,r 33=1-r 31r 13-r 32r 23()1/2。
另外值得注意的是,旋转矩阵R 的正交约束条
件是推导上述公式必须遵守的条件。r 23,r 31,r 32的符
号有可能因为方根运算的二值性而存在错误,为了
保证旋转矩阵的正交性,若r 11r 21+r 21r 22的符号为正,则改变r 23的符号;若计算有效焦距f 为负号,则改变r 13,r 23,r 31,r 32的符号。第一步基本确定除t z 外的所
有外部参数,第二步只需对t z ,f ,k 进行计算。(Ⅱ)求解有效焦距f 、径向畸变系数k 和平移
参数t z 。对于某一特征点有:
x u =f X c Z c =f r 11X w +r 12Y w +r 13Z w +t x
r 31X w +r 32Y w +r 33Z w +t z
y u =f Y c Z c =f r 21X w +r 22Y w +r 23Z w +t y
r 31X w +r 32Y w +r 33Z w +t z
(8)
专题研究与综述
因为所有特征点的Z w =0,同时结合式(2)与式
(8)可得:
x d 1+kr d 2
=f r 11X w +r 12Y w +t x
r 31X w +r 32Y w +t z
y d
1+kr d 2
=f
星光现场r 21X w +r 22Y w +t y r 31X w +r 32Y w +t z
(9)
为了避免解非线性方程繁琐的问题,本文提出
了改进算法。令M =r 11X w +r 12Y w +t x ,N =r 21X w +r 22Y w +t y ,
L =r 31X w +r 32Y w ,k f =k f ,整理式(9)得到关于f ,k f ,t z 的
线性方程组:
M ,Mr d 2
,-x d []·f ,k f ,t z []T =x d L
N ,Nr d
2,-y d
[]·f ,k f
,t
z
[]T
=y d L
(10)
式中:M ,N ,L ,x d ,y d ,r d 均为已知量,f ,k f ,t z 为待求参数。对于N 个特征点,用最小二乘法解超定线性方程组对N 个特征点进行求解f ,k f ,t z ,即可求解k ,进
而求解。此时,需要对f 的符号进行判断修正,若判断f 为负号,则对f 的符号进行反号处理,同时改变第一步求得的r 13,r 23,r 31和r 32的符号。
在Tsai 基础上改进的两步法,可以求解全部相
机内外参数。此时,只需再通过分布标定进行线性计算,就可以有效地提高了标定精度,避免在非线性求解中遇到的繁琐和不稳定性的问题。
2标定实验验证
2.1平台的搭建
本文的标定实验在如图3所示的视觉点胶平
台进行,平台采用1个海康威视MV ⁃CA060⁃11GM 黑白相机,分辨率3072×2048,1个配套的镜头(焦距16mm ),相机安装高度大约800mm ;采用深圳旗众QZMC3004连续轨迹控制卡进行运动控制。视觉点胶系统界面如图4所示。
2.2标定实验的流程
标定流程描述如下:首先在三轴机械手的末端安装标靶零件,调整标靶平面使其水平并且与工件高度一致,通过点动使该平面移动至匹配范围的左
上角,录入左上角坐标;再移动至匹配范围的中心位置,建立匹配模板;最后移动至匹配范围的右下角,录入右下角坐标。点击开始标定按钮,机台得到指令后以40mm 为间隔进行移动,每次停留0.5s 等待机台停稳,然后进行拍照得到特征点的图像坐标。由于机械位置已知,因此可以获得一系列世界坐标和图像坐标的点对。通过对这些点对进行计算处理得到标定结果。2.3实验数据及分析
将特征点的图像坐标进行矩阵运算得到世界坐标的计算值,通过计算值与实际值对比进行误差分析[10]。
3结语
本文以视觉点胶控制系统为背景,针对传统的标定方法大多需要标定板,而标定板的制作和特征点的提取繁杂等问题,提出了一种改进型的简易标定方法,该方法不需要使用标定板,同时避免非线性计算的复杂。本文着重于视觉点胶系统中相机标定的简易性,大范围应用于工业场景。图3硬件结构与实验平台
Fig.3Hardware strcture and experiment platform
相机镜头平面光源
工作台
Y 轴
Z 轴X 轴
标靶零
件
图4视觉点胶系统界面
Fig.4Interface of visual dispensing system
表1实验分析表Tab.1Experimental analysis
序号测量坐标计算坐标误差Δl
x y z x y z 136.27520.000170.00036.25420.092170.0000.094276.27540.000170.00076.29040.085170.0000.0863116.27560.000170.000116.23559.913170.0000.0964156.27580.000170.000156.30279.933170.0000.0755196.275100.000170.000196.2899.98170.0000.0216236.275120.000170.000236.288120.056170.0000.0577276.275140.000170.000276.296139.962170.0000.0438316.275160.000170.000316.311160.089170.0000.0969336.275200.000170.000336.325199.958170.0000.06510
356.275240.000170.000
356.266240.028170.000
0.029
(下转第18页)
在视觉点胶平台上进行验证,结果表明本方法可以达到mm 的定位精度,能满足一般的视觉点胶设备的要求,是一种可靠有效的简便方法。
参考文献:
[1]曹文君.多目全景相机的内外参数标定研究[J].工业控制计算
机,2017,30(12):53-54
[2]
Abdel ⁃Aziz Y I ,Karara H M ,Hauck M.Direct linear transformation from comparator coordinates into object space coordinates in clo ⁃range photogrammetry[J].Photogrammetric Engineering &
Remote Sensing ,2015,81(2):103-107.
[3]
Goktepe A ,Kocaman E.Analysis of camera calibrations using
direct linear transformation and bundle adjustment methods[J].Scientific Rearch and Essays ,2010,5(9):869-872.
[4]
Tsai R Y.An efficient and accurate camera calibration technique
for 3D machine vision [J].Proc.of Comp.Vis.Patt.Recog.,1986:364-374.
[5]
De Ma S.A lf ⁃calibration technique for active vision systems
[J].IEEE Transactions on Robotics and Automation ,1996,12(1):114-120.
[6]
Zhang Z.A flexible new technique for camera calibration [J].
IEEE Transactions on Pattern Analysis and Machine Intelligence ,2000,22(11):1330-1334.[7]李玲.基于双目立体视觉的计算机三维重建方法研究[D].湖北:
武汉大学,2005.
[8]夏皮罗.计算机视觉[M].赵清杰,译.北京:机械工业出版社,2005.[9]
赵宣铭.一种基于Tsai 法的摄像机改进标定法[J].西安工程大学
学报,2011,25(4):560-565.
[10]李迪,张孙亚,吴培浩,等.用于分拣机器人的改进标定方法[J].广
东轻工职业技术学院学报,2017,16(1):1-5.
■
(上接第4页)更精确地反应供应商的评价情况,从而指导电能表招投标。5.2改进检定方案
根据故障率的分布和异常故障情况,指导检定方案的改进。得出某些具有代表性,影响性能的新类型故障,通过在检定方案中新增某些项目,及时发现此类故障。对于某些已通过产品设计,性能提升等
不会大量出现的问题,可在检定方案中去除此检定项目。
5.3建立智能电能表故障树
通过建立故障决策树的形式,建立电能表故障位置、故障现象、故障原因、解决方法之间的联系,为电能表性能改进和厂家性能提升提供依据。故障决策树类似于经验库、知识库。通过建立故障产生的位置→故障现象→故障原因→解决措施建立电能表故障决策树,提升计量性能,快速定位并解决电能表的问题,增强故障排查效率,故障决策树示例如图4所示,以电池单元为例,电池现象黑屏主
要由四类故障原因引起,通过数据挖掘与经验分析,由晶振异常引起的电池单元黑屏可通过检查晶振输出,焊接氧化,晶振虚焊等问题并解决。
6结语
本文基于Apriori ,k ⁃means 等数据挖掘技术,通过建立智能电能表故障库,深入分析电能表的数据价值,作为日常业务的管控依据,提前进行设备故障预警,规范拆回分拣业务,并为供应商评价提供数据支撑,配合网省公司进行规范各市县单位的拆回及装拆业务的工作质量。各网省单位根据故障现象库的统计、分析结果,开展进一步的深度检测工作,保存各单位的故障诊断报告,用户根据此功能可查看故障报告实现故障的快速处理机制,并反馈厂家改进表计质量。
参考文献:
[1]陈庄,罗告成.一种改进的Kmeans 算法在异常检测中的应用[J].重庆理工大学学报,2015(5):66-70.[2]张英,张建民,程昱舒.省级计量中心生产调度平台架构研究[J].科技资讯,2014,12(18):12-13.[3]
陈驰.基于用电信息采集系统的运行电表故障智能分析[J].电测
与仪表,2014,51(15):18-22.
[4]祝宇楠,徐晴,刘建,等.数据挖掘在智能电能表故障分析中的应
用[J].电力工程技术,2016,35(5):19-23.[5]
贺宁.智能电表故障大数据分析研究[J].中小企业管理与科技旬
刊,2016(19):142-145.■
图4电能表故障树
Fig.4Fault tree of electric energy meter
电池单元
黑屏
电池欠压时钟电池欠压抄表电池欠压
CPU 故障晶振异常变压器受损液晶屏故障检查晶振输出,焊接氧化,晶振虚焊
故障位置
故障现象
故障原因
解决办法