相机标定方法与实验研究.docx
- 文档编号:25213791
- 上传时间:2023-06-06
- 格式:DOCX
- 页数:20
- 大小:769.29KB
相机标定方法与实验研究.docx
《相机标定方法与实验研究.docx》由会员分享,可在线阅读,更多相关《相机标定方法与实验研究.docx(20页珍藏版)》请在冰豆网上搜索。
相机标定方法与实验研究
专业综合实践报告
题目名称:
相机标定方法与实验研究
学生姓名:
学号:
联系电话:
电子邮箱:
指导教师:
职称:
哈尔滨工业大学
自动化测试与控制系
目录
一、绪论1
1.1课题背景及研究的目的与意义1
1.2国内外研究现状2
二、相机标定原理和方法3
2.1相机标定基础知识3
2.1.1齐次坐标3
2.1.2图像坐标系、相机坐标系与世界坐标系4
2.1.3针孔成像模型6
2.2相机标定方法7
2.2.1传统相机标定方法简介7
2.2.2基于主动视觉的标定方法简介8
2.2.3相机自标定方法简介8
三、实验内容9
3.1试验方案设计9
3.2试验测试10
3.3试验结论14
四、总结14
参考文献15
一、绪论
1.1课题背景及研究的目的与意义
对于人类而言,眼睛是最重要的感觉器官之一,大脑是最重要的信息处理加工器官。
人类通过眼睛获取外界信息再通过大脑加工处理可以成为记忆、影响情感甚至引发灵感。
随着计算机应用的不断推广,人们不仅希望计算机能获取图像信息,也希望能像人类一样高效地处理图像信息,因此,诞生了计算机视觉这一综合学科。
在中国,机器视觉技术是从上世纪90年代才开始发展应用的,到现在已经有了近20多年的历史。
机器视觉技术是随着工业上越来越多的使用不断发展并且逐渐完善的。
伴着中国加工产业以及制造业的大幅度发展,市场上对机器视觉技术和设备的需要将呈现出较大的上升趋势。
另外,全球在加工制造业方面的工厂和市场越来越多的倾向于中国,并且中国经过30多年的改革开放发展,经济领域正在转型,许多高技术行业的发展前景广阔,所以中国的机器视觉市场正在继北美的美国、欧洲的德国和亚洲的日本之后,逐渐的成为另一个让国际上机器视觉厂商们关注的地方。
在过去的2011和即将过去的2012年,虽然由于经济危机的影响中国的一些手工业和制造业有
了不同程度的打击,但是一批高科技产业却是有了较好的发展。
电子制造业、汽车行业、新能源、以及食品和包装等大量的行业需求带来了包括机器视觉在内的自动化产品的需求增长。
同时,随着中国经济的转型,一些高科技领域在原有基础上扩大容量和高端生产的需求,也为以机器视觉技术为代表的一些创新技术的市场带来了更多财富和机遇。
机器视觉是一门涉及人工智能、神经生物学、计算机科学、图像处理、模式识别等诸多领域的交叉学科[1-2]。
机器视觉系统主要利用计算机来模拟人或再现与人类视觉有关的某些智能行为,从客观事物的图像中提取信息进行处理并加以理解,最终用于实际检测和控制的系统[3]。
在机器视觉中利用相机标定技术得到的相机系统的内外参数的精度对整个系统的成败有很大的影响。
机器视觉系统中很重要的一项工作就是是通过相机获取的物体图像信息计算出三维空间中物体的几何信息,并根据这些信息进行后续的重建和识别工作。
相机成像的数学模型决定了空间物体表面某点在世界坐标系中的位置与其在图像坐标系中对应点之间的相互关系,通过实验与计算得到这些模型参数的过程就称为相机标定[4]。
通过标定我们需要确定的就是相机的数学方面和光学方面的内部参数以及相机系统坐标系相对于世界坐标系的外部位置参数。
由于标定参数精度的高低会对机器视觉系统的精度产生直接影响,因此相机标定是机器视觉系统的基础,可以说标定相机参数过程的成功与否直接决定了机器视觉系统成败。
因此提高相机标定的精度对整个机器视觉系统的发展有很大意义,提高相机标定精度也是当前机器视觉研发工作中的重要方面。
1.2国内外研究现状
计算机视觉技术在国外的研究是从上世纪50年代开始的,当时对这个技术的研究主要集中在对图片的细化、鉴别等分析上。
20世纪60年代,标志着立体视觉技术诞生的研究成果就是Roberts教授通过研究积木世界把以往的二维图片分析推广到对三维场景的分析上。
80年代初,构成机器视觉研究领域中一个非常重要的理论框架就是由DavidMarr教授提出的关于视觉研究的理论。
人工智能、模式识别、生理神经学以及某些图像处理的领域也取得的了一些成果,这得益于Marr视觉理论从信息处理的这一全新角度分析这些问题。
上世纪90年代,机器视觉技术在工业中得到越来越多的应用,同时多视角的视觉理论也得到了迅速发展。
进入21世纪后,三维物体的重建和识别,机器人导航,相机系统的自标定技术以及基于图像序列的三维重建技术都成为了是国外相关领域的研究重点[5]。
目前国外学者在相机标定上研究的一种新技术就是基于图像序列的三维重建技术。
这种技术利用摄像机拍摄场景或物体不同角度的图像,根不同图像之间的几何关系估计摄像机的外部参数(即摄像机的位置和方向)恢复场景在摄影空间的几何模型,再利用自标定技术估计摄像机内部参数并完成场景在欧氏空间的重建[6-7]。
国内的学者从90年代才开始进行机器视觉理论的相关研究,目前一些高校和科研机构已经取得了相当的成就,并且随着机器视觉系统越来越多的受到各行各业的青睐,更多的学者和机构也相继投入到机器视觉理论的研究中,例如:
南昌航空大学2010年专门成立了计算机视觉研究所,北京大学的视觉与听觉信息处理国家重点实验室,浙江大学视觉理解与机器人实验室等。
中国科学院自动化研究所模式识别国家重点实验室的孟晓桥、胡占义对摄像机自标定有着比较深入的研究,他们在张正友平面模板的基础提出了一种新的基于圆环点的摄像机自标定方法[8-9]。
这种方法需要相机在多个不同方位对由含有若干条直径的圆的模板拍照,再根据相应的数学算法就可以用线性的方法求得全部相机内部参数。
此方法应用的主要原理就是:
平面上任意一个圆与该平面的无穷远直线必定交于两个圆环点。
这个原理对相机标定方法的发展有很大的促进作用。
相机标定结果的精度和稳定性以及标定方法的实用性等方面严重制约了机器视觉技术的更广泛的应用。
所以继续简化标定工作的硬件设备,提高标定结果的精度,根据相机不同的应用场合采用相应的模型和方法是提高标定结果精度,提高标定算法效率的重要途径。
二、相机标定原理和方法
2.1相机标定基础知识
相机标定技术涉及到一些数学原理和几何模型,这些数学原理和几何模型是相机标定算法使用和进一步发展的基础。
下面对相机标定技术中涉及到的齐次坐标、单应性矩阵、标定坐标系和相机成像模型等这些基础原理和知识作一些介绍。
2.1.1齐次坐标
所谓齐次坐标表示法,就是用n+1维矢量表示一个n维矢量。
N维空间中点的位置矢量用非齐次坐标系表示时,具有n个坐标分量(P1,P2,…,Pn),且是唯一的。
若用齐次坐标表示时,此矢量有n+1个坐标矢量(hP1,hP2,…,hPn),且不唯一。
普通的或“物理的”坐标与齐次坐标的关系是一对多,若二维点(x,y)的齐次坐标表示为(hx,hy,h),则(h1x,h1y,h1),(h2x,h2y,h2),…,(hmx,hmy,hm)都表示二维空间中的同一点(x,y)的齐次坐标。
类似地,对三维空间中坐标点的齐次坐标表示为(hx,hy,hz,h)。
齐次坐标表示有以下两个优点:
(1)提供了用矩阵运算把二维,三维甚至更高维空间中的一个点集从一个坐标系变换到另一个坐标系的有效方法。
例如,二维齐次坐标变换矩阵的形式是
2D=
(2.1)
三维齐次坐标变换矩阵的形式是
T3D=
(2.2)
(2)可以表示无穷远点。
例如,n+1维中,h=0的齐次坐标实际上表示了一个n维的无穷远点。
对二维的齐次坐标[a,b,h],当h
0,表示ax+by=0的直线,即在y=-(a/b)x上的连续点[x,y]逐渐趋近于无穷远,但其斜率不变。
在三维情况下,利用齐次坐标表示原点时的投影变换,其几何意义会更加清晰。
2.1.2图像坐标系、相机坐标系与世界坐标系
图2.1图像坐标系、相机坐标系与世界坐标系
(1)图像坐标系(u,v)
图像坐标系通常以图像左上角起始点为原点,每一个图像点的坐标(u,v)表示的是该点在图像矩阵中的行数与列数。
因此图像点在图像坐标系中的坐标是以像素为单位的,这样的坐标系我们称之为图像像素坐标系。
因为后面需要对图像点坐标和对应空间点空间位置的进行相互换算,所以根据上述需要我们建立了以光轴与像平面的交点O1为原点,以毫米为单位的坐标系X-Y,这样的坐标系称之为图像物理坐标系,如图2.2所示,若O1在图像像素坐标系中的坐标为(u0,v0),假设单个像素在X轴与Y轴方向上的物理尺寸为dX、dY,则图像中的所有像素点的坐标都具有:
(2.3)
用齐次坐标系表示为:
=
(2.4)
图2.2图像坐标系
(2)相机坐标系(XC,YC,ZC)
可以把相机的光心看作是相机坐标系的原点O,相机坐标系中的XC轴、YC轴分别与图像物理坐标系的X轴与Y轴平行,相机的光轴看作是ZC轴。
(3)世界坐标系(XW,YW,ZW)
由于摄像机可以可放置在工作环境中的任意位置,所以我们就需要在整体环境中选择一个基准坐标来描述摄像机的位置,通常情况下是以实际场景中的某个特殊参考点当做原点用它来描述环境中任何物体的位置,这个基准坐标系就是世界坐标系。
世界坐标系和相机坐标系之间的转换关系通过平移向量T和旋转矩阵R来表达。
若空间任意某点的世界坐标系和相机坐标系下的坐标分别为(XW,YW,ZW)和(XC,YC,ZC),则它们之间存在如下关系:
=
(2.5)
其中,R和T表示的分别是世界坐标系到相机坐标系转换的旋转矩阵和平移矩阵,R为3×3正交单位的旋转矩阵,T为3×1矩阵,0T=[0,0,0],M为4×4矩阵。
R是一个3×3的行列式值等于1的正交矩阵,即:
R=
(2.6)
2.1.3针孔成像模型
针孔成像[10]模型又称为线性摄像机模型。
空间任何一点P在图像中的成像位置可以用针孔成像模型近似表示,即任何点P在图像中的投影位置p,为光心O与P点的连线OP与图像平面的交点。
这种关系也称为中心射影或透视投影。
由比例关系有如下关系式:
(2.7)
其中,(X,Y)为p点的图像坐标;(x,y,z)为空间点P在摄像机坐标系下的坐标,f为xy平面与图像平面的距离,一般为摄像机的焦距。
用齐次坐标和矩阵表示:
s
=
=P
(2.8)
s为一比例因子,P为透视投影矩阵。
s
=
=
=M1M2
=M
=
(2.9)
其中
=
、
=
是图像水平轴和垂直轴的尺度因子,或称归一化焦距;M为3×4矩阵,称为投影矩阵;M1由
、
、
、
决定,这些参数为摄像机内部参数;M2由摄像机相对于世界坐标系的方位决定,称为摄像机的外部参数。
确定已知摄像机的内外参数,称为摄像机定标;而对于非线性模型的内部参数,除了线性模型的所有内部参数外,还包括径向畸变参数k1、k2和切向畸变参数p1、p2。
2.2相机标定方法
相机标定技术分为传统标定、基于主动视觉的标定和自标定[11]。
这些方法有各自的优缺点,一般来说如果对精度要求很高时可用传统标定方法,但要以损失标定的速度为代价;如果对精度没有很高的要求,但需要实时标定或者对标定速度要求较高的会用自标定的方法;还有基于主动视觉标定方法。
2.2.1传统相机标定方法简介
传统的相机标定方法是需要利用具有确定的结构信息景物而使用到标定块。
它是基于一定的相机模型,通过特定的实验条件,如具有确定结构信息(形状、位置、大小)的标定物,利用一系列的计算和变换的方法(分为最优化算法的标定方法、利用相机透视变换矩阵的标定方法、进一步考虑崎变补偿的两步法和采用更为合理的相机模型的双平面标定法)对其进行图像处理,进而求得相机模型的内部、外部参数。
传统的相机标定方法的优点是适用于任意的相机模型,而且标定精度较高;其缺点是标定程序复杂,同时又要求有高精度的确定结构信息的标定物,这将给一些实际应用的场合例如空间机器人、危险恶劣环境下工作的机器人的应用带来很大的麻烦。
1)基于一维标定物的相机标定
一维标定物通常指一维的直线(线段),通过将其一端固定而使另一端绕固定端旋转来实现标定过程。
基于一维标定物的相机标定方法,通常是采用透视变换过程中的“交比不变性”这一约束条件得到相机的相关参数的方程,然而具体操作过程需要对直线(线段)作三次甚至三次以上的刚体运动,从而得出充足的参数方程用以计算出相机参数。
2)基于二维标定物的相机标定
基于二维标定物的相机标定方法是一种平面标定方法,是一种新型的适合应用的灵活方法。
该方法中,相机通过在不同的方位拍摄同一个二维标定物,从而将标定板上点的物理坐标与拍摄的图像上点的进行匹配,进而计算出相机的内参数与外参数。
这种方法既具有较好的鲁棒性,又不需要花费太多也不需要不太精制的标定块,因此实用性非常好。
3)基于三维标定物的相机标定
基于三维标定物的相机标定法是使用三维标定物来进行相机标定。
把三维标定物上的每一个小方块的顶点作为特征点,这样每个特征点在世界坐标系中的位置可以得到较为精确地测定。
为了操作方便,一般使用的标定物具有两、三个带有特征点正交平面,也可以使用带有标定点的一个平面进行多次正交运动来标定。
2.2.2基于主动视觉的标定方法简介
基于主动视觉的标定方法指的是利用相机的某些运动信息来标定相机相关参数的方法。
我们将相机固定在一个平台上,且该平台可以被精确控制,平台的参数可以从计算机中精确地读取,于是,我们只需要利用相机作特殊的运动来获取多幅图像,从而由己知的相机参数和图像来求得相机的内参数与外参数。
基于主动视觉标定方法的特点是:
需要将相机的某些运动信息定量化。
它的优点在于通常可以线性求解因此解的稳定性高,鲁棒性也比较高,缺点在于不能使用不能很好定量化的相机运动未知或者相机的运动情况无法控制的场合。
2.2.3相机自标定方法简介
自标定法仅仅依靠多幅图像对应点之间的关系直接进行标定。
相机的自标定是20世纪90年代中后期在计算机视觉领域兴起的主要研究方向之一。
自标定灵活性强、应用范围广,但是鲁棒性差。
因为自标定主要基于绝对二次曲线和绝对二次曲面的方法,需要求解多元非线性方程。
自标定主要应用于对精度要求不高的场合,如通讯、虚拟现实等。
三、实验内容
3.1试验方案设计
本实验采用2个参数相同的ProsilicaGT1660相机,这是由德国AlliedVisionTechnologies公司(德国AVT)生产的一款200万像素千兆网接口(符合GigEVision协议)数字相机,如图3.1,其参数如图3.2所示。
该相机的分辨率为1600
1200,实验环境VC6.0。
图3.1实验所用相机
表3.1相机参数
ProsilicaGT1660
数据接口
IEEE802.31000baseT
分辨率
1600
1200
传感器型号
TruesenseKAI-02050
传感器类型
CCD逐行扫描
传感器尺寸
Type2/3”
像元尺寸
5.5
镜头接口
C(后焦可调)
在全分辨率下的最大帧率
62fps
A/D
14bit
板载FIFO
128MB
本实验将霍尼韦尔LED发光二极管作为测量目标(该灯型号为SE3470-003,波长为880nm,发散角为90度,最大电压为1.9V,光谱宽度为80nm,测试电流100mA),并将其固定在三坐标测量机的测头上,通过控制三坐标测量机的测头在世界坐标系中的位置变化来实现测量目标的位置变化,并用相机连续采集光点信息的模式(为了保证采集到的信号足够强,并且具有一定的抗干扰能力,我们使用发射红外光的LED灯同时在天黑的情况下进行试验,这样可避免可见光对实验的干扰);同时配备2台计算机进行实时采集数据。
将采集到的光点的像素坐标和光点的世界坐标对应,然后使用数据处理程序在VC6.0下处理数据并计算得出相机的内外参数。
本实验采用直接线性变换法,这种方法是Abdal-Aziz和Karar在1971年通过研究相机成像图像和拍摄物体之间的对应关系,提出的相机成像几何的线性模型,这就是直接线性变换的相机标定方法。
这种线性模型中的相关参数可以通过求解线性方程组来得到。
根据定义,直接线性变换就是将图像上像点和空间中的物点的成像几何关系在齐次坐标下写成透视投影矩阵的形式:
s
=M1
=
(3.1)
其中,(u,v,1)为相机的二维图像坐标系下的齐次坐标,(XW,YW,ZW)为三维世界坐标系下的空间点的齐次坐标,M1为透视投影矩阵,S为尺度因子。
约束条件为m34=1。
通过算法求解M矩阵共11个未知量,并分解得到相机的内外参数。
3.2试验测试
前期准备工作:
我们首先调整2个相机的光轴平行。
为了达到这个目的,我们使用三坐标测量机测量相机的物理模型上的光轴是否平行,最终调整相机位置使光轴的平行误差在允许范围内。
实验中,设定三个平面,分别采集三个平面上各100个点。
分别在世界坐标系中的位置Y轴在1100mm,1500mm和1900mm的平面上等间隔的采集10
10个图像点,最终得到300个不同位置的点,每个点采集10次,取平均值。
接着对实验所得的数据进行处理。
我们先选择接近像素坐标中心位置的几个像素点进行线性分析。
由于相机分辨率为1600
像素,故选取靠近800
600像素的点。
Y轴在1100mm位置数据如表3.2:
表3.2Y轴在1100mm处的坐标
相机坐标系坐标
世界坐标系坐标
u(像素)
v(像素)
X(mm)
Y(mm)
Z(mm)
774.0358
550.9256
390
1100
-365
874.9566
550.9747
410
1100
-365
976.0284
551.0465
430
1100
-365
975.9445
652.0713
430
1100
-385
874.8853
651.9585
410
1100
-385
773.9242
651.8292
390
1100
-385
773.7903
752.8043
390
1100
-405
874.7316
752.9643
410
1100
-405
975.8188
753.1020
430
1100
-405
Y轴在1500mm位置的数据如表3.3:
表3.3Y轴在1500mm处的坐标
相机坐标系坐标
世界坐标系坐标
U(像素)
V(像素)
X(mm)
Y(mm)
Z(mm)
702.4644
514.1836
360
1500
-350
808.4684
514.2267
390
1500
-350
914.5834
514.2836
420
1500
-350
914.4885
620.4421
420
1500
-380
808.3712
620.3430
390
1500
-380
702.3600
620.2514
360
1500
-380
702.2619
726.3244
360
1500
-410
808.2792
726.4671
390
1500
-410
914.3844
726.6210
420
1500
-410
Y轴在1900mm位置的数据如表3.4:
表3.4Y轴在1900mm处的坐标
相机坐标系坐标
世界坐标系坐标
U(像素)
V(像素)
X(mm)
Y(mm)
Z(mm)
718.3516
561.8438
350
1900
-360
854.3459
561.9192
400
1900
-360
990.5516
562.0280
450
1900
-360
990.4333
671.0359
450
1900
-400
854.2363
670.8712
400
1900
-400
718.2248
670.7149
350
1900
-400
718.1039
779.5751
350
1900
-440
854.1269
779.7912
400
1900
-440
990.3388
780.0351
450
1900
-440
以上数据为三个平面各9个点共27点作为直接线性法的计算数据。
首先用这27个点进行线性估计,结果如图3.2。
图3.2线性估计结果
则可知相机内外参数如下:
M1=
R=
t=
用求得的参数计算相机的焦距为25.8mm,与理论偏差大约为0.8mm左右,对数据进行反向验证,与所测的数据比较如图3.3,可知测的值与用所得参数估计的估计值相差小于0.1mm,在接受范围内。
图3.3线性估计验证
图3.4非线性估计结果
非线性估计是建立在线性估计结果上的如图3.4,其结果如下:
M1=
R=
t=
径向畸变k1=0.0000004732,k2=0.0000005507
切向畸变p1=-0.0000423168,p2=0.0000274675
非线性估计即对线性估计进行了优化操作,考虑了径向和切向畸变,从而提高了标定精度。
3.3试验结论
在本实验,我们采用三坐标测量机和LED红外光点的组合可以较好的模拟三维空间点,能够准确模拟任意位置并且具有一定的精度。
同时我们采用直接线性法对数据进行处理,可以较好的得到相机标定的内外参数,然后用非线性优化方法对数据进行进一步的优化,提高了标定精度。
四、总结
经过这两周的专业综合实践,我在老师的指导和师兄们的帮助下,并结合网上的各类资料,对相机标定有了初步的了解。
无论是在图像测量或者机器视觉应用中,相机参数的标定都是非常关键的环节,其标定结果的精度及算法的稳定性直接影响相机工作产生结果的准确性,所以准确地标定相机对后续工作的作用至关重要。
在前期的查找资料过程中,通过了解相机标定的背景及国内外研究现状,我对相机标定在机器视觉这方面的重要地位有了明确的认识,并且了解了相机标定的理论内容及几种主流的标定方法,还有数种标定后的数据处理方面的算法。
通过实验我对相机标定的过程及方式有了进一步深刻的认识,也初步接触了本实验的数据处理方法,即直接线性法的运算原理和内容。
后续我将继续深入学习相机标定的理论知识,为毕业设计做准备。
参考文献
[1]马颂德.计算机视觉-计算理论与算法基础.北京:
科学出版社,1998.
[2]张广军.机器视觉.北京:
科学出版社,2005.
[3]段峰.机器视觉技术及其应用综述,科普园地,2002,19(3):
59~61.
[4]杨雪荣.视觉测量中的相机标定方法进展研究,机械设计与制造,2009,
(3):
259~261.
[5]MengXQ,LiH,HuZY.AnewcameracalibrationtechniquebasedOncircularpoints.ConfBritishMachineVision.UK:
Bristol,IEEE,2000:
496~505.
[6]PollefeysM.Self-calibrationandMetric3DReconstructionfromUncalibratedImageSequences(Ph.D.thesis).KatholiekeUniversiteitLeuven,1999.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 相机 标定 方法 实验 研究