基于OpenCV的多视角视觉测量系统标定

技术创新
《微计算机信息》(测控自动化)2009年第25卷第11-1期
360元/年邮局:82-946
《现场总线技术应用200例》
软件天地
pcb技术基于OpenCV 的多视角视觉测量系统标定
Calibration for Multi-Angles Vision Measuring System Based on OpenCV
(天津科技大学)
李旭王永强许增朴于德敏
LI Xu WANG Yong-qiang XU Zeng-pu YU De-min
摘要:分析了线结构光式多视角视觉测量系统的标定方法,给出了基于开源视觉库OpenCV 的多视角视觉测量系统标定算
法的处理流程,实现了一个完整的多视角视觉测量系统标定模块的开发。实验证明该方法简便,易行。关键词:摄像机标定;多视角;视觉测量系统;OpenCV 中图分类号:TP391文献标识码:A
Abstract:The principle of camera calibration method for multi -angles vision measuring system is analyzed.The processing flow of the calibration method is given based on Open Source Computer Vision library.The camera calibration software for multi-angles vi -sion measuring system is realized.The experiment proves that the method is easy and user-friendly.Key words:Camera calibration;Multi-angles;Vision measuring system;OpenCV
文章编号:1008-0570(2009)11-1-0204-03
1引言
在线结构光多视角视觉测量系统应用中,系统标定通常是既繁琐又关键的技术环节,由于算法复杂,目前还没有一种通用有效的标准方法。由于OpenCV 是一种开源计算机视觉库,实现了大量通用算法,涉及到图像处理、摄像机标定等技术,因此,本文提出并实现了基于OpenCV 的多视角视觉测量系统标定方法。
2标定的基本原理
2.1线结构光视觉传感器的数学模型
线结构光视觉传感器的数学模型如图1所示。
图1线结构光视觉传感器的数学模型
摄像机坐标系为O c x c y c z c ,图像平面坐标系为Oxy 。在光平面上以一点O s 为原点,建立系统的测量坐标系O s x s y s z s 。光平面O s x s y s 在O s x s y s z s 下的方程为
(1)
设光平面上任意一点P 在O s x s y s z s 下的齐次坐标为
,在图像平面上的投影点为p,其齐次坐标为,对应的归一化齐次坐标为
摄像机的透视投影模型可以表示为
(2)(3)
式中:A ———摄像机内部参数矩阵
R ——
—单位正交旋转矩阵T ——
—平移矢量f x ,f y ———摄像机在x 、y 方向上的有效焦距u 0,v 0———摄像机的主点坐标式(1)、(2)表示了欧式空间上的线结构光视觉传感器的视觉模型。由式(3)求出归一化图像坐标后,根据式(1)、(2)就可以得到光平面上空间点的测量坐标。
对于单摄像机内部参数和外部参数的求解,参考文献中提出的方法。
2.2多摄像机坐标系的统一
为了实现多视点数据的拼接,形成完整的测量数据,需要将系统中各个视觉传感器的局部坐标统一到系统测量坐标系上,即确定各视觉传感器相对于系统测量坐标系的位置和方向。
在系统中,设置其中任意一个摄像机作为参考摄像机。在光平面上以一点O s 为原点,建立系统的测量坐标系O s x s y s z s 。通过文献中的标定方法,获得各个摄像机的内部参数。通过文献的方法,获得参考摄像机的外部参数。对于非参考摄像机,外部参数的求取方法为:
建立局部世界坐标系O i x i y i z i ,参考摄像机坐标系O 1x 1y 1z 1,非参考摄像机坐标系O 2x 2y 2z 2,
系统测量坐标系O s x s y s z s 。设空间中任意一点P 在O i x i y i z i 下的齐次坐标为,在O 1x 1y 1z 1下的齐次坐标为,在O 2x 2y 2z 2下的齐次坐标为,在O s x s y s z s 下的齐次坐标为,存在以下式子
李旭:硕士研究生
204--
流动资金需求测算
邮局:82-946360元/年技术创新
软件天地
《PLC 技术应用200例》
您的论文得到两院院士关注
(4)(5)(6)
———局部世界坐标系到参考摄像机坐标系的转换矩阵———局部世界坐标系到非参考摄像机坐标系的转换矩阵———系统测量坐标系到参考摄像机坐标系的转换矩阵由式(4)~(6)可得
(7)
从而得到系统测量坐标系到非参考摄像机坐标系的转换矩阵。
3基于OpenCV 的多视角视觉测量
系统标定
3.1标定模块的开发步骤一拍摄标定图像
参考摄像机拍摄不少于2个任意位置的标定板图像,每个位置拍摄两幅图像,其中一幅带有激光器向标定板投射的激光条,另一幅无光条。其它非参考摄像机分别拍摄不少于2幅位置任意的标定板图像。最后,参考摄像机和每个非参考摄像机利用公共视野,分别拍摄标定板图像。注意,每一幅标定图像中所有标定格需完全可见。
步骤二计算参考摄像机内、外参数
利用OpenCV 函数cvFindChessboardCorners()对参考摄像机拍摄的不带光条的图像进行角点提取,将角点坐标输入到函数cvFindCornerSubPix()中,获得亚像素级精度的角点图像坐标。标定板内标定格的尺寸和个数都是确定的,角点在局部世界坐标系下的坐标很容易获得。利用函数cvCalibrateCamera
2(),根据输入的所有角点图像坐标和在局部世界坐标系下的坐标,可以得到摄像机的内部参数f x ,f y ,u 0,v 0,畸变系数以及外部旋转矩阵、平移矢量。
利用交比不变性的原理,获得大量光点在不同局部世界坐标系下的坐标,利用已求得的外参矩阵,将这些光点的坐标统一到参考摄像机坐标系中,利用最小二乘法获得光平面在参考摄像机坐标系中的平面方程。将此平面置为测量坐标系的XOY 平面,计算出测量坐标系到参考摄像机坐标系的转换矩阵。
步骤三计算非参考摄像机内部参数
对非参考摄像机内部参数的计算,方法与步骤二相同,只是不需要进行光平面的计算。
步骤四计算测量坐标系到非参考摄像机坐标系的转换矩阵首先,以参考摄像机和非参考摄像机同时拍摄某一位置的标定板表面为XOY 平面,建立局部世界坐标系。之后,利用函数cvFindChessboardCorners()获得所有角点的图像坐标,利用函数cvFindExtrinsicCameraParam2()求得摄像机外参数。最后,利用公式(7),计算得到测量坐标系到非参考摄像机坐标系的转换矩阵。若拍摄了多组标定板图像,得到的多组转换矩阵会有差别,可取多组结果的平均值作为最佳标定结果。
3.2角点顺序的统一
需要强调的是,cvFindChessboardCorners()获得的角点起始位置不确定。由多摄像机坐标系统一方法
可知,两个摄像机拍摄同一位置标定板,标定时要求两个局部世界坐标系应该是相同的。为了解决这一问题,本文所采用的标定板增加了两个黑圆形标记,如图2所示。局部世界坐标系的XOY 平面为标定板平面,坐标原点为a 。圆A 的半径与标定格边长相同,圆B 的半径为标定格边长的一半。假设标定板每行(列)的角点个数为
m_numofpt,每个标定格的边长为m_panewidth 。
圆A 圆心在局部世界坐标系中的坐标为(-2*m_panewidth,-2*m_panewidth,0),圆B 圆心的坐标为(-2*m_panewidth,(m_numofpt +2)*m_panewidth,0)。
图2带有标记的标定板图像
每幅图像中得到的角点图像坐标最终保存在数组resultpts [M][N]中,M,N 均等于m_numofpt,resultpts[0][0]中保存a 点的图
像坐标,所有点的坐标按照图2中的连线顺序保存在数组中。
为了实现所有角点的图像坐标按照此顺序保存,本文提出的方法如下:
利用函数cvFindChessboardCorners()获得所有角点的图像坐标,保存在一个二维数组pts[M][N]中(M,
N 均等于m_numofpt)。将pts[0][0]坐标处的点定义为P 1点,pts[0][m_numofpt-1]坐标处的点定义为P 2点,pts[m_numofpt-1][m_numofpt-1]坐标处的点定义为P 3点,pts[m_numofpt-1][0]坐标处的点定义为P 4点。如图3所示,遍历所有角点坐标,得到与P 1距离最近的点,记为P 11,求得长度,从P 1点延长,长度为(*),记此点为Q 1,以Q 1为中心,(2*)为边长,得到一个正方形区域,记为Area1。同理,得到区域Area2,Area3,Area4。之后,利用函数cvAdaptiveThreshold()对图像进行自适应二值化处理,遍历Area1中的点,遇到黑点时进行区域生长,生长过程中记录x 坐标和y 坐标的最值,分别记为xmax,xmin,ymax,ymin,生长结束,获得黑区域中像素坐标在x 方向和y 方向的最大跨度l,l =max
((xmax-xmin),(ymax-ymin))。根据实验,当l 与
的长度比在[1.6,2.2]之间时,记P 1为a 的对应点,当l 与
的长度比在[0.6,1.2]之间时,记P 1为b 的对应点,同理搜寻区域Area2,Area3,Area4,得到P 1,P 2,P 3,P 4与a,b,c,d 的对应关系。图3中,对应关系为:P 1-b,P 2-c,P 3-d,P 4-a 。
图3自动提取角点顺序错误的图像
构造两个平面直角坐标系X a O a Y a 和X b O b Y b 。点a,b,c,d 在坐标系X a O a Y a 中的坐标分别为其在数组resultpts 的位置,即(0,0),(0,m_numofpt-1),(m_numofpt-1,m_numofpt-1),(m_numofpt-1,0),
点P 1,P 2,P 3,P 4在平面X b O b Y b 中的坐标分别为其在数组pts 的位置,即(0,0),(0,m_numofpt-1),(m_numofpt-1,m_numofpt-1),(m_nu -
205--
技术创新
《微计算机信息》(测控自动化)2009年第25卷第11-1期顽皮豆豆
360元/年邮局:82-946《现场总线技术应用200例》软件天地
mofpt-1,0),平面X a O a Y a和平面X b O b Y b转换仅用一个3*3的矩阵
即可:
其中M33=1。
由已求得的P1,P2,P3,P4与a,b,c,d的对应关系并运用函数
微计算机信息
cvFindHomography()可以得到此3*3的变换矩阵。之后,从(0,0)开
始逐个反求X b O b Y b坐标系中的点在X a O a Y a坐标系中的坐标。
如有一点在X b O b Y b坐标系中的坐标为(i,j),利用转换矩阵求得此
点在X a O a Y a坐标系中的坐标为(h,k),则resultpts[h][k]中保存pts
[i][j]的坐标值。注意,求得的h和k可能不是整数,应该将其进行
四舍五入运算,得到h和k的整数值。
4标定实验
根据上述的原理和标定方法,本文在Windows XP(SP2)平
台上,利用Visual C++6.0开发了一个基于OpenCV1.0版本的
多视角视觉测量系统标定程序,对测量系统进行系统标定。
利用标定结果对一个标准圆柱进行了测量,结果如下:圆柱
真实直径为274.7mm,测量直径为279.9mm,绝对误差为5.2mm,
相对误差为1.88%。
5结论
利用OpenCV的API函数可以迅速完成多视角视觉测量
系统的摄像机标定,这种标定方法简单、快捷。
本文作者创新点:基于开源视觉库OpenCV完成了线结构
光多视角视觉测量系统的标定,解决了角点顺序的统一这一关
键问题。实验证明该方法简便,易行。
项目产生的经济效益:可以迅速完成多视角视觉测量系统
的摄像机标定,方法简单、快捷。
参考文献
[1]陈磊.计算机视觉类库OpenCV在VC中的应用[J].微计算机
信息,2007,4-3:209-210。
[2]周富强,张广军.线结构光视觉传感器的现场标定方法,机械
工程学报,2004,6
[3]Zhang Z Y.A flexible new technique for camera calibration.
IEEE Transactions on Pattern Analysis and Machine Intelligence,
2000,22(11):1330~1334
作者简介:李旭(1984-),男(汉族),山西省太原市人,硕士研究生,
研究方向为机器视觉;王永强(1965-),男(汉族),天津人,教授,研
究生导师,研究方向为机器视觉、机械参数测量与控制;许增朴
(1952-),男(汉族),天津人,教授,博士生导师,研究方向为机器视
觉、机械参数测量与控制;于德敏(1950-),男(汉族),天津人,教授,
研究生导师,研究方向为机器视觉、机械参数测量与控制。
Biography:LI Xu(1984-),male,Taiyuan,ShanXi Province,master,
research direction for the machine vision.
(300222天津天津科技大学机械工程学院)李旭王永强
许增朴于德敏
(Mechanical Engineering Institute,Tianjin University of Sci-
ence and Technology,Tianjin,300222,China)LI Xu
WANG Yong-qiang XU Zeng-pu YU De-min
通讯地址:(300222天津市河西区大沽南路1038号天津科技大
学271信箱)李旭
(收稿日期:2008.12.18)(修稿日期:2009.03.18)
(上接第159页)
作者创新:设计并实现了Rayleigh衰落信道下DQPSK信号
传输模型,模型集成考虑了多普勒频移以及在无时延扩散情况
下DQPSK信号传输时遇到的干扰,也可用于其他调制信号的模
拟仿真,具有通用性。
参考文献
[1]达新宇,陈树新,王瑜等编著.通信原理教程.北京:北京邮电大
学出版社,2005
[2]郭梯云,邬国扬,李建东.移动通信.西安:西安电子科技大学出
版社,2003
[3]樊昌信等编著.通信原理.北京:国防工业出版社,1995
[4]王立宁,乐光新.MATLAB与通信仿真.北京:人民邮电出版社,2000
[5]柳宁,孟高勇,胡捍英.基于不可分离多径瑞利信道的最佳二元
检测.微计算机信息,2005,4-1:80-82
作者简介:王世强(1982-),男,汉族,空军工程大学工程学院硕士
研究生。主要研究方向:图象处理与模式识别;张登福(1968-),
男,汉族,教授,研究方向为图像处理,图像分析,数据压缩;罗伟
(1981-),男,土家族,空军工程大学工程学院硕士研究生。主要研
究方向:图象处理与模式识别。
Biography:WANG Shi-qiang,(1982-),male,Engineering College,正丁醇
Air Force Engineering University,master,major:video compression
and translation.
(710038西安空军工程大学工程学院)王世强张登福罗伟
(The Engineering Institute,Air Force Engineering University,
Xi’an710038,China)WANG Shi-qiang ZHANG Deng-fu
LUO Wei
通讯地址:(710038西安空军工程大学工程学院四系14队)王世强
(收稿日期:2008.11.20)(修稿日期:2009.02.20)
(上接第181页)
参考文献
[1]王兆安.无功功率补偿和谐波抑制[J].北京:机械工业出版社,2004,
[2]范瑞祥,罗安,李欣然.并联混合型有源电力滤波器的系统参
数设计及应用研究[J].中国电机工程学报,2006,26-2.
[3]Wang Qun,Wu Ning,Wang Zhaoan.A neuron adaptive detect-
ing approach of harmonic current for APF and its realization of
analog circuit. Instrumentation and Measurement,
2001,50-1:77-84.
[4]Gao Dawei,Sun Xiaorui.A shunt active power filter with control
method based on neural network.PowerCon2000International
Conference:1619-1624.
[5]张绍忠,何国锋.有源滤波器谐波电流检测与控制综述[J].微机械毕业设计论坛
计算机信息,2007,5-2:291-292.
[6]杜志秀.TMS320C542最小系统硬件设计[J].微计算机信息,
1999,15-6:62~63.
作者简介:余意(1982-),男,湖南人,硕士研究生,研究方向:智能
控制与智能自动化;张航(1957-),男,湖北人,副教授,研究方向:
模式识别与智能控制,电力机车状态监测及故障诊断技术。
Biography:YU Yi(1982-),Hunan province,Research direction:
Intelligent Control and Intelligent Automation.
(410083湖南长沙中南大学信息科学与工程学院)余意张航
(College of Information Science&Technology,Central South
University,ChangSha,410083,China)YU Yi ZHANG Hang
通讯地址:(410083长沙中南大学本部生物楼104室)余意
(收稿日期:2008.12.15)(修稿日期:2009.03.15) 206
-
-

本文发布于:2024-09-20 20:33:56,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/697981.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:标定   摄像机   坐标系   测量
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议