2011-01-30相机标定个人总结
手机相机标定实验报告

1 手机相机标定与校正1.1 实验目的要进行手机相机的标定与校正,首先需要建立模型。
通过拍摄到的图像信息获取到物体在真实三维世界里相对应的信息,建立物体从三维世界映射到相机成像平面这一过程中的几何模型。
由于相机透镜的制造工艺,会使成像产生多种形式的畸变,例如近大远小,在世界坐标系中的直线转化到其他坐标系不在是直线等。
在矫正过程中,利用畸变系数来矫正这种像差。
1.2 实验原理1.2.1 相机标定模型与方法定义如下的四个坐标系来建立模型: 世界坐标系(三维):用户定义的三维世界的坐标系,描述目标物在真实世界里的位置。
单位为m 。
相机坐标系(三维):在相机上建立的坐标系,从相机的角度描述物体位置,作为沟通世界坐标系和图像/像素坐标系的中间一环。
单位为m 。
图像坐标系(二维):描述成像过程中物体从相机坐标系到图像坐标系的投影透射关系,方便进一步得到像素坐标系下的坐标。
单位为m 。
像素坐标系(二维):描述物体成像后的像点在数字图像上(相片)的坐标,是我们真正从相机内读取到的信息所在的坐标系。
单位为个(像素数目)。
通过单应性变化实现像素坐标系与世界坐标系之间的映射,假定标定棋盘位于世界坐标系中0=w Z 的平面,两者间坐标映射关系如下:0012001101x w y w f u u X v s f v r r t Y ⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎡⎤=⎢⎥⎣⎦⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦其中,u 、v 表示像素坐标系中的坐标,s 表示尺度因子,X.Y 表示世界坐标系中的坐标。
如下矩阵为相机的内参矩阵,其中/,/x y f f dx f f dy ==为分别在x 轴和y 轴上对焦距进行归一化所求得的值,dx 、dy 为像元尺寸。
00(,)u v 为图像中心坐标。
0000001x y f u f v ⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦张氏相机标定法利用单应性矩阵来描述世界坐标系与像素坐标系之间的映射关系,将尺度因子、内参矩阵和外参矩阵的乘积定义为单应性矩阵,如下所示:001200001xy f u H s f v r r t ⎡⎤⎢⎥⎡⎤=⎢⎥⎣⎦⎢⎥⎣⎦确定角点后,可通过下述公式求得单应性矩阵H ,进一步求得内参矩阵以及外参矩阵:111213212223313233''11x h h h x y h h h y h h h ⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦展开化简,化为AX=0的齐次方程组形式,多组对应点形成超定方程组,可以运用最小二乘法求解:111213313233313233111213313233212223212223313233''()y'()y'h x h y h x h x h y h x h x h y h h x h y h h x h y h h x h y h h x h y h h x h y h ++⎧=⎪++++=++⎪→⎨++=++++⎪=⎪++⎩将单应性矩阵化为[]12H sM r r t =,M 为内参矩阵。
调相机年终个人工作总结

调相机年终个人工作总结在过去的一年中,我作为公司的调相机工程师,经历了许多的挑战和收获了许多成就。
在这里我想总结一下我在过去一年中的工作情况。
首先,在过去的一年中,我完成了多个项目的调相机工作。
这些项目涉及到不同的行业和领域,包括医疗、工业、航空航天等。
在这些项目中,我与团队成员密切合作,根据客户的需求设计和开发了各种不同的调相机系统,并且取得了很好的成绩。
我充分发挥了自己的专业知识和技能,为项目的顺利完成作出了贡献。
其次,在过去的一年中,我不断学习和提升自己的专业技能。
我积极参加公司组织的各种培训和学习活动,不断提高自己在调相机领域的专业水平。
我还通过阅读相关的书籍和论文,了解最新的调相机技术和发展趋势,为自己的工作增添了更多的灵感和创新。
最后,在过去的一年中,我更加注重与客户的沟通和服务。
我始终把客户的需求放在第一位,努力为客户提供更好的调相机解决方案和服务。
我不断改进自己的工作方式和方法,以确保能够满足客户的需求,并且取得了客户的一致好评。
总的来说,过去的一年中,我在调相机领域取得了很大的成绩。
我不断提升自己的专业能力,不断完善自己的工作方式,不断提高客户满意度。
我相信在未来的工作中,我会继续努力,为公司的发展和客户的满意度做出更大的贡献。
在过去的一年中,我作为公司的调相机工程师,经历了许多挑战和收获了许多成就。
我想借此机会对过去一年的工作进行总结和回顾,并对未来的工作提出一些展望和规划。
首先,在过去一年中,我参与了多个项目的调相机工作。
这些项目涵盖了不同的行业和领域,包括医疗、工业、航空航天等。
在这些项目中,我不仅与团队成员密切合作,还与客户紧密沟通,充分了解他们的需求,为他们定制了最适合的调相机系统。
通过这些项目,我学到了很多新知识,不仅在技术上有所提高,也更加深入地理解了客户需求和行业特点。
我发现,只有深入了解客户的需求,才能更好地为他们提供解决方案。
其次,在过去的一年中,我不断学习和提升自己的专业技能。
相机标定实验报告

相机标定一、实验原理相机标定就是求解相机的内参数以及畸变参数的过程。
相机的标定主要有两种:传统的摄像头标定方法和摄像头自标定方法,典型的有:(1)Tsai(传统的标定方法);(2)张正友(介于传统和自标定之间)。
1999年,微软研究院的张正友提出了基于移动平面模板的相机标定方法。
此方法是介于传统标定方法和自标定方法之间的一种方法,传统标定方法虽然精度高设备有较高的要求,其操作过程也比较繁琐,自标定方法的精度不高,张正友标定算法克服了这两者的缺点同时又兼备二者的优点,因此对办公、家庭的场合使用的桌面视觉系统(DVS)很适合。
张正友标定方法由于简单、效果好而得到广泛使用。
张正友标定法的标定步骤:1、打印一张模板并贴在一个平面上;2、从不同角度拍摄若干张模板图像;3、检测出图像中的特征点;4、求出摄像机的外参数(单应性矩阵)和内参数(最大似然估计);5、求出畸变系数;6、优化求精。
张正友标定方法的主要思想是:1、相机内参矩阵其中,q 的坐标系是默认的OpenCV 的像素坐标系,Q 的坐标系是标定板坐标系,Z 轴为0,原点在标定板的某个内角点上(标定板上角点的坐标均为[*,*,0]的形式),在OpenCV 3.0中使用的是([i ∗Squres_Size ,j ∗Square_Size ,0]的形式)。
其中fx 和fy 表示相机x 轴和y 轴的焦距,s 表示成像平面x 轴和y 轴的不正交性。
2、基础公式对于不同位置的棋盘格到相机的成像,可以使用下面的公式进行表示:其中,[R|t]表示棋盘格坐标系相对于相机坐标系的位姿。
把矩阵R 和M ~写开,如下式所示:进行化简得:其中[u v 1]是已知量,[X Y 1]也是已知量,A 和[r1 r2 t]是未知量。
其中H=A[r1 r2 t]又叫做单应性矩阵,可以使用下面的3中所述的方法求解。
3、单应矩阵求解这里使用的方法基于最大似然准则:假设提取的m 存在均值为0,噪声协方差矩阵为的高斯白噪声。
工业相机个人工作总结

一、前言时光荏苒,转眼间,我在工业相机岗位已工作一年有余。
在这一年的时间里,我在公司领导的关心与指导下,在同事们的帮助下,认真学习业务知识,努力提高自己的综合素质,现将一年来工作情况进行总结如下:二、工作回顾1. 熟悉产品知识,提高业务水平入职以来,我深知自己肩负着公司工业相机产品销售的重任。
为了更好地胜任工作,我认真学习产品知识,了解产品性能、特点及适用范围。
通过不断学习,我对工业相机有了全面、深入的了解,为今后的销售工作打下了坚实基础。
2. 积极拓展市场,提高销售额在工作中,我始终保持积极进取的态度,主动出击,拓展市场。
通过参加行业展会、拜访客户等方式,了解客户需求,为客户提供专业、贴心的服务。
在过去的一年里,我成功签约了多个客户,为公司创造了良好的业绩。
3. 优化客户关系,提升客户满意度在销售过程中,我注重与客户的沟通与交流,了解客户需求,为客户提供解决方案。
同时,我还关注客户反馈,及时解决客户在使用过程中遇到的问题。
通过努力,我赢得了客户的信任,提升了客户满意度。
4. 团队协作,共同进步在工作中,我注重团队协作,与同事们共同进步。
遇到问题时,主动请教,共同解决。
在团队活动中,积极参与,发挥自己的专长,为团队贡献力量。
三、工作不足与改进措施1. 工作经验不足:在市场拓展方面,我缺乏一定的经验,导致部分客户未能成功签约。
针对这一问题,我将在今后的工作中多向有经验的同事请教,提高自己的业务能力。
2. 时间管理能力有待提高:由于工作繁忙,我在时间管理方面存在一定的不足。
为了提高工作效率,我将在今后的工作中合理安排时间,确保各项工作有序进行。
3. 沟通表达能力有待加强:在与客户沟通时,有时表达不够清晰,导致客户理解偏差。
针对这一问题,我将在今后的工作中加强沟通技巧的学习,提高自己的表达能力。
四、未来展望在新的一年里,我将继续努力,不断提升自己的业务能力和综合素质,为公司创造更多价值。
具体措施如下:1. 深入学习产品知识,提高业务水平。
手机相机标定实验报告

1 手机相机标定与校正1.1 实验目的要进行手机相机的标定与校正,首先需要建立模型。
通过拍摄到的图像信息获取到物体在真实三维世界里相对应的信息,建立物体从三维世界映射到相机成像平面这一过程中的几何模型。
由于相机透镜的制造工艺,会使成像产生多种形式的畸变,例如近大远小,在世界坐标系中的直线转化到其他坐标系不在是直线等。
在矫正过程中,利用畸变系数来矫正这种像差。
1.2 实验原理1.2.1 相机标定模型与方法定义如下的四个坐标系来建立模型: 世界坐标系(三维):用户定义的三维世界的坐标系,描述目标物在真实世界里的位置。
单位为m 。
相机坐标系(三维):在相机上建立的坐标系,从相机的角度描述物体位置,作为沟通世界坐标系和图像/像素坐标系的中间一环。
单位为m 。
图像坐标系(二维):描述成像过程中物体从相机坐标系到图像坐标系的投影透射关系,方便进一步得到像素坐标系下的坐标。
单位为m 。
像素坐标系(二维):描述物体成像后的像点在数字图像上(相片)的坐标,是我们真正从相机内读取到的信息所在的坐标系。
单位为个(像素数目)。
通过单应性变化实现像素坐标系与世界坐标系之间的映射,假定标定棋盘位于世界坐标系中0=w Z 的平面,两者间坐标映射关系如下:0012001101x w y w f u u X v s f v r r t Y ⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎡⎤=⎢⎥⎣⎦⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦其中,u 、v 表示像素坐标系中的坐标,s 表示尺度因子,X.Y 表示世界坐标系中的坐标。
如下矩阵为相机的内参矩阵,其中/,/x y f f dx f f dy ==为分别在x 轴和y 轴上对焦距进行归一化所求得的值,dx 、dy 为像元尺寸。
00(,)u v 为图像中心坐标。
0000001x y f u f v ⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦张氏相机标定法利用单应性矩阵来描述世界坐标系与像素坐标系之间的映射关系,将尺度因子、内参矩阵和外参矩阵的乘积定义为单应性矩阵,如下所示:001200001xy f u H s f v r r t ⎡⎤⎢⎥⎡⎤=⎢⎥⎣⎦⎢⎥⎣⎦确定角点后,可通过下述公式求得单应性矩阵H ,进一步求得内参矩阵以及外参矩阵:111213212223313233''11x h h h x y h h h y h h h ⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦展开化简,化为AX=0的齐次方程组形式,多组对应点形成超定方程组,可以运用最小二乘法求解:111213313233313233111213313233212223212223313233''()y'()y'h x h y h x h x h y h x h x h y h h x h y h h x h y h h x h y h h x h y h h x h y h ++⎧=⎪++++=++⎪→⎨++=++++⎪=⎪++⎩将单应性矩阵化为[]12H sM r r t =,M 为内参矩阵。
相机标定方法及技巧分析

相机标定方法及技巧分析相机标定是计算机视觉领域中的一项重要技术,它通过矫正相机的非线性畸变和确定相机的内部参数和外部参数,从而提高图像处理和计算机视觉应用的精度和稳定性。
本文将对相机标定的方法和技巧进行详细的分析。
1. 相机标定的基本概念相机标定是指确定相机的内参和外参的过程。
其中,内参包括相机的焦距、主点坐标等;外参包括相机在世界坐标系中的位置和朝向。
这些参数在计算机视觉任务中被广泛应用,例如三维重建、目标跟踪等。
2. 相机标定的方法2.1 标定板法标定板法是目前最常用的相机标定方法之一。
这种方法需要使用一张按照特定规则划分的标定板,在不同的位置和姿态下拍摄多张图像。
通过分析这些图像中的标定板特征点,可以计算出相机的内参和外参。
2.2 归一化法归一化法是一种基于对极几何原理的相机标定方法。
它利用多张不同角度的图像中的相应点的对极约束关系,对相机进行标定。
与标定板法相比,归一化法不需要使用特定的标定板,只需要提供多张具有对应点的图像。
2.3 Kalibr方法Kalibr是一种利用轴承约束进行相机标定的方法。
它通过观察相机在不同角度下对于静态目标的旋转轴承约束,估计相机的内参和外参。
这种方法相对于其他方法,对于非刚性场景和动态场景有更好的鲁棒性。
3. 相机标定的技巧3.1 图像采集要求为了获得准确的相机标定结果,图像采集的质量至关重要。
首先,要确保标定板或特征点在图像中有足够的分辨率。
其次,应避免过曝光和欠曝光的情况,保证图像的亮度均匀。
此外,还需要采集不同角度和距离下的图像,以获得更全面的标定数据。
3.2 标定板的选择对于标定板法,标定板的选择也对标定结果有一定影响。
传统的标定板通常是黑白棋盘格或由黑白相间的圆点组成的棋盘格。
近年来,还出现了更加精确和稳定的标定板,例如纹理丰富的标定板和带有激光二维码的标定板。
选择合适的标定板可以提高标定的精度和鲁棒性。
3.3 多角度标定为了获得准确的相机标定结果,通常需要在多个角度下对相机进行标定。
相机标定方法范文

相机标定方法范文相机标定是计算机视觉和机器视觉领域中的重要技术之一,它用于从相机图像中获取相机的内部参数和外部参数,以便实现图像的几何校正、三维重建、姿态估计等任务。
相机标定的目标是估计相机的内部参数(如焦距、主点),以及相机到世界坐标系的变换参数(如旋转矩阵、平移向量),从而将图像坐标映射到真实三维世界坐标。
相机标定的基本思想是通过对已知世界物体或者图案在图像上的投影来进行参数的估计。
常用的相机标定方法包括棋盘格标定、多平面标定和结构光标定等。
棋盘格标定是最常用的相机标定方法之一、它通过放置具有已知尺寸的棋盘格在不同的位置和角度下拍摄一组图像,并通过检测和提取图像中的棋盘格角点来进行标定。
在标定过程中,首先需要校正图像的畸变,即去除图像中的径向畸变和切向畸变。
然后,通过最小二乘法来估计相机的内部参数和外部参数。
最后,可以利用这些参数进行图像的几何校正和三维重建等任务。
多平面标定是一种相机标定方法,它利用多个平面的特性来进行标定。
在标定过程中,需要选取若干个具有已知尺寸和形状的平面,并在不同的位置和角度下拍摄一组图像。
通过检测和提取图像中平面上的特征点,可以估计相机的内部参数和外部参数。
多平面标定方法相对于棋盘格标定方法的优势在于它可以同时估计相机的内部参数和外部参数,而不需要进行两次标定过程。
结构光标定是一种利用光栅或者条纹投影仪进行相机标定的方法。
在标定过程中,首先需要将光栅或者条纹投影到场景中,形成一组特征点或者特征线。
然后,通过检测和提取图像中的特征点或者特征线来进行标定。
通过这种方法可以得到更多的标定数据,从而提高标定的准确性和精度。
除了以上介绍的常用相机标定方法,还有一些其他方法也被广泛应用于相机标定领域,如基于张量分解的相机标定、基于球面映射的相机标定等。
这些方法都有各自的优缺点,适用于不同的标定场景和任务需求。
总结来说,相机标定是计算机视觉和机器视觉领域中的重要技术之一,它可以估计相机的内部参数和外部参数,以实现图像的几何校正、三维重建和姿态估计等任务。
工业相机标定总结

工业相机标定总结1. 引言工业相机标定是指通过一系列的计算和校正过程,将相机图像中的像素坐标映射到世界坐标系中,从而实现像素与物理距离的转换。
标定的准确与否直接影响到工业相机在机器视觉领域的应用效果。
本文将对工业相机标定的基本原理、常用方法以及注意事项进行总结和介绍。
2. 工业相机标定原理工业相机标定的基本原理是通过建立相机的内部参数矩阵和外部参数矩阵来描述相机成像过程。
内部参数矩阵包括焦距、主点位置和畸变等参数,外部参数矩阵包括相机位置和姿态等参数。
3. 工业相机标定方法3.1 板点标定法板点标定法是工业相机标定中最常用的一种方法。
该方法需要将一个特制的标定板放置在相机视野范围内,并测量标定板上的特定点在相机图像中的像素坐标。
通过对比测量的像素坐标和实际世界坐标,可以计算出相机的内外参数矩阵。
3.2 立体相机标定法立体相机标定法是用于双目视觉系统的标定方法。
该方法需要使用两个相机同时获取同一场景的图像,并测量两个相机图像中的对应点坐标。
通过计算这些对应点的像素坐标和实际世界坐标之间的关系,可以得到相机的内外参数矩阵。
3.3 灰度平面标定法灰度平面标定法是一种利用灰度信息进行相机标定的方法。
该方法通过将相机对准一个具有均匀灰度分布的平面,然后采集平面上的图像,并计算图像中的像素坐标和实际世界坐标之间的映射关系,从而得到相机的内外参数矩阵。
4. 工业相机标定注意事项4.1 标定板选择在进行板点标定法时,选择一个合适的标定板非常重要。
标定板应具有清晰的边缘和特定的点,以便于测量像素坐标。
此外,标定板的大小和形状也需要根据相机的视野范围进行选择。
4.2 图像采集条件在进行工业相机标定时,需要注意图像采集条件的统一性。
例如,光线条件应保持一致,摄像机的设置参数如曝光时间、增益等也应一致。
这样可以避免在标定过程中的误差。
4.3 数据处理和优化在获取到相机的内外参数矩阵后,还需要对数据进行处理和优化。
通常可以采用非线性优化算法对标定结果进行优化,以提高标定的准确性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本文是一篇关于相机标定意义和原理的个人总结,包含了OpenCV和Matlab中常用的相机标定函数的注解。
相机标定是机器视觉的基础,标定结果的好坏直接决定了机器视觉的系统精度,作用可见一斑。
在这一年半的时间里,我个人也是随着实验和程序的进一步理解,对标定的原理和意义有了更多的想法。
同样,由于博文的关系,仍有一些朋友会常常询问标定的程序问题。
本人的2010-05-17OpenCV标定程序的问题也多次被朋友询问,由于当时对标定的认识还不够系统,因此现在认为该文对标定的意义和原理有很多误解,并在此推荐一些较好的博文拱大家学习:双目测距与三维重建的OpenCV实现问题集锦(一)图像获取与单目标定;双目测距与三维重建的OpenCV实现问题集锦(二)双目标定与双目校正;双摄像头测距的OpenCV实现;分享一些OpenCV实现立体视觉的经验;下面结合本人的毕业论文及一年半来对机器视觉的学习,对相机标定的意义和原理进行叙述。
1.单目相机模型单目相机模型中的三种坐标系关系如图1所示,相机坐标系即是以光轴中心O为原点的坐标系,其z轴满足右手法则,成像原点fO所代表平面即为像平面坐标系(实际应用中,均以图像左上角为坐标系原点),实际物体坐标系即为世界坐标系。
光轴中心O图1 单目相机模型的三坐标系统关系其中,P在世界坐标系的值为()W W WX,Y,Z,Pu是P在像平面坐标系的投影点,其相机坐标系的值为(X,Y,Z)u u u。
θ是相机坐标系Z轴与像平面夹角,一般情况下Z轴与像平面垂直,θ值为90 。
且相机坐标系x yO与像平面f f fx yO平行,f为相机的焦距。
对于从相机坐标系到像平面坐标系的变换,像平面坐标系是用像素单位来表示的,而相机坐标系则是以毫米为单位来表示,因此,要完成改变换过程就需要先得到像平面的像素单位与毫米单位之间的线性关系。
在图1中,相机光轴中心z 轴方向上与像平面的交点'O 称为投影中心,坐标为x y (c ,c ),是像素单位,而每个像素在f X 和f Y 的物理尺寸为1x s dx=和1y s dy=,单位是像素/毫米,则像平面的像素与毫米间的线性关系如式(1): 111xx y y u s 0c x v 0s c y 00⎛⎫⎛⎫⎛⎫ ⎪ ⎪⎪= ⎪ ⎪⎪ ⎪ ⎪⎪⎝⎭⎝⎭⎝⎭(1)根据小孔模型下投影变换原理,像平面的物理坐标(,)x y 对应的相机坐标系满足式(2): X Y Z Z cos Y Z sin u u u uuu x f f y f θθ⎧=-⎪⎪⎨⎪=⎪⎩(2)其对应的矩阵形式为式(3):X cos 00Y10sin 00Z Z 10101u 1u 1u u x f f y f θθ--⎛⎫⎛⎫-⎛⎫⎪⎪ ⎪ ⎪= ⎪ ⎪ ⎪ ⎪⎪ ⎪⎝⎭⎝⎭⎝⎭(3)联立式(1)和式(3),得到式(4)即为相机坐标系与像平面坐标系变换的矩阵。
X cos 0Y10sin 0Z Z 10101u 1x x u 1y x u u u s f f c v s f c θθ--⎛⎫⎛⎫-⎛⎫⎪ ⎪ ⎪ ⎪= ⎪ ⎪ ⎪ ⎪⎪ ⎪⎝⎭⎝⎭⎝⎭(4)其中,11,,,,,x y x y c c f s s θ⎛⎫⎪⎝⎭即为相机的6个内参数,其组成的矩阵即为内参数矩阵。
对于从相机坐标系到世界坐标系的变换,是通过旋转矩阵R 和平移矩阵T 完成的,如图2所示。
摄像机坐标系u u u u xO图2 相机坐标系与世界坐标系的变换关系其中,平移矩阵T 是三维列向量,旋转矩阵R 是坐标轴依次绕,x y 和z 轴旋转角度,ψϕ和τ所形成的三个矩阵()()()R ,R ,R x y z ψϕτ的总乘积。
它们的定义如式(5):()()()100R =0cos sin 0-sin cos cos 0-sin R =010sin 0cos cos sin 0R =-sin cos 0001x y z ψψψψψϕϕϕϕϕτττττ⎛⎫ ⎪⎪⎪⎝⎭⎛⎫ ⎪⎪⎪⎝⎭⎛⎫ ⎪⎪⎪⎝⎭(5)则矩阵R 的计算公式如式(6):cos cos cos sin +sin sin cos sin sin -cos sin cos R=-cos sin cos cos -sin sin sin sin cos +cos sin sin sin -sin cos cos cos ϕτψτψϕτψτψϕτϕτψτψϕτψτψϕτϕψϕψϕ⎛⎫⎪⎪ ⎪⎝⎭(6)因此,从相机坐标系到世界坐标系的变换如式(7),其中,0T 表示()000,R 33⨯为旋转矩阵,31T ⨯为平移矩阵,该变换矩阵称为外参数矩阵。
w w wX X Y Y R Z Z 0111u u 3331u T ⨯⨯T ⎛⎫⎛⎫⎪⎪⎛⎫ ⎪ ⎪= ⎪ ⎪ ⎪⎝⎭ ⎪ ⎪⎝⎭⎝⎭(7)最后,联立式(4)和式(7)求得像平面坐标系与世界坐标系之间的变换关系,如式(8):w w w w w w w w w X cos 0Y R 10sin 0Z Z 01100101X X Y Y =M Z Z 111x x 13331y y u 0001020310111213342021222330313233u s f f c T v s f c m m m m m m m m m m m m m m m m θθ--⨯⨯T⨯⎛⎫⎛⎫-⎛⎫⎪⎛⎫ ⎪ ⎪ ⎪= ⎪⎪ ⎪ ⎪⎝⎭ ⎪⎪ ⎪⎝⎭⎝⎭⎝⎭⎛⎫⎛⎫⎛⎫⎪⎪ ⎪ ⎪⎪⎪= ⎪⎪ ⎪ ⎪⎪ ⎪⎝⎭⎝⎭⎝⎭ (8)其中,M 34⨯即为透视投影矩阵,表示空间中三维点坐标与图像平面二维坐标之间的线性关系,()1u v T表示P u 的像平面齐次坐标值,()www X Y Z 1T表示P 的世界坐标系齐次坐标值。
基于以上几何原理和相机模型得到的图像信息和三维信息之间的关系,存在不可逆性,即可以通过已知世界坐标系的坐标值求得二维坐标值,如果要进行二维坐标到三维坐标的反求还需要其他的数学模型辅助求解。
2.Matlab 标定工具箱应用1) 制作标定板,标定板尺寸为324(mm)X252(mm),即7行9列63个36mm 的正方形方格组成,如图3所示。
图3 标定方格板2)将水平平行的左右相机同时采集标定板的不同位姿图像,共计12组位姿(对于采集的图像,位姿越多,标定结果也会越精确,建议在10组到20组之间)如图4,5所示。
图4 左相机的标定图像图5 右相机的标定图像3)在工具箱中通过Extract grid corners提取每幅标定图像的特征点(即黑方格与白方格的交点)。
4)进行单目标定,得到左右相机的内外参数以及畸变系数,并将参数保存到Calib_Results_left和Calib_Results_right两个mat格式的文件中。
3.Matlab标定结果与OpenCV标定结果的比较与分析Matlab标定结果:通过上节的步骤(1)-(4),可以得到如图6和7所示的左右相机的内参数、畸变系数结果。
图6 左相机的内参数和畸变系数图7 右相机的内参数和畸变系数对于左右相机由于透镜畸变造成的误差使用工具箱中的visualize_distortions 功能进行分析,可以得到左相机的畸变图,如8、9、10所示,相应的右相机畸变图,如11、12、13所示。
图8 左相机镜头畸变图图9 左相机径向畸变图图10 左相机切向畸变图对于图8到10,图中的0点即为左相机光学中心,图中的箭头显示相机图像的畸变方向。
图8左相机整体畸变模型中,该相机的左侧畸变不明显,若物体的图像在此则不易受畸变因素影响造成线条的弯曲;图9左相机径向畸变模型中,该相机的畸变系数由中心向外增大,即物体的图像越靠近图像边缘,其线条的弯曲程度就越大;图10左相机切向畸变模型中,箭头方向显示该相机切向畸变的增大方向,在相机的左侧其切向畸变与径向畸变的方向相反,使得整体畸变模型中,相机左侧的畸变较小。
图11 右相机镜头畸变图图12 右相机径向畸变图图13 右相机切向畸变图对于图11到13,图中的0点与左相机相同,即为右相机光学中心,图中的箭头显示相机图像的畸变方向。
图11右相机整体畸变模型中,该相机的中间及偏左侧畸变不明显,若物体的图像在此则不易受畸变因素影响造成线条的弯曲;图12右相机径向畸变模型中,该相机的畸变系数由中心向外增大,但右相机比左相机在光轴中心附近有更大的区域畸变很小,因此位于右侧相机光学中心的图像,其线条因受畸变造成的弯曲很小;图13右相机切向畸变模型中,箭头方向显示该相机切向畸变的增大方向,在相机的左侧其切向畸变与径向畸变的方向相反,使得整体畸变模型中,位于右相机图像左侧的线条受畸变影响较小。
OpenCV 标定结果:在此列举的OpenCV 标定结果是我双目视觉标定且优化后的结果,与Matlab 的会有差异。
左侧相机的内参数矩阵:837.629310301.03710840.95381238.93799001⎛⎫ ⎪⎪ ⎪⎝⎭(9)右侧相机的内参数矩阵:837.342150306.915340842.97182244.3674001⎛⎫ ⎪⎪ ⎪⎝⎭(10)该式(9)-(10)与式(1)相对应。
而Matlab 中的cc 对应于式(1)中的相机光轴中心在图像平面的投影坐标,fc 即为式(1)中的x s 和y s 。
至此,讲解完了OpenCV 与Matlab 所对应的相机标定内参数矩阵的含义。
OpenCV 与Matlab 标定中的差异:OpenCV 的标定参数中,对于镜头畸变采用的方法是Brown 博士在71年发表的文章中提到的;而Matlab 中的镜头畸变参数采用基于Heikkil 博士提出的方法,将非线性干扰因素引入到内外参数的求解过程。
Heikkil 采用51⨯的矩阵()12123k k p p k 来表示以上的两种畸变系数。
根据Brown 的非线性模型,12,k k 和3k 表示镜头的径向畸变系数,通常只使用12,k k 两项,3k 只是针对即便较大的镜头(例如鱼眼镜头,其余情况下该系数值为0),而1p 和2p 表示切向畸变系数,由式(11)和式(12)求解该矩阵,本文的畸变系数求解伴随在相机标定过程中。
()()246radical 123246radical 123=1=1x x k r k r k r y y k r k r k r++++++ (11)其中,(,)x y 是像平面上的任一点坐标值,radical radical (,)x y 是进行径向畸变矫正后的坐标值,246,,r r r 是r 作为光学中心畸变为0的点进行泰勒级数展开后得到的。
()()22tangential 1222tangential 12=+22=+22x x p y p r x y y p r yp y ⎡⎤++⎣⎦⎡⎤++⎣⎦(12)其中,(,)x y 是像平面上的任一点坐标值,tangential tangential (,)x y 是进行切向畸变矫正后的坐标值,246,,r r r 如式(11)的定义相同。