双目视觉的图像立体匹配系统-说明文档
双目立体视觉匹配

双目立体视觉匹配
双目立体视觉匹配是一种人工智能技术,它通过对两个立体图像中的像素进行比较,以找到它们之间的对应关系,并将它们组合成一个立体图像。
在这个过程中,系统会自动计算出物体的深度和距离,从而实现对物体的三维识别和定位。
为了实现双目立体视觉匹配,系统需要进行以下几个步骤:
1. 图像对齐。
由于两个摄像头拍摄的图像可能有一些偏移或者旋转,所以需要对这两个图像进行对齐,以保证像素之间的对应关系正确。
2. 特征提取。
系统需要从每一个像素中提取出一些特征,以便进行匹配。
这些特征通常包括像素的颜色、亮度、纹理等。
3. 匹配算法。
系统需要设计一个算法来找到图像中每一个像素在另一个图像中的对应像素。
常用的匹配算法包括基于相似性的匹配算法、基于能量优化的匹配算法和基于深度学习的匹配算法等。
4. 深度计算。
通过对两个图像中的像素进行匹配和距离测量,系统可以计算出物体的深度和距离。
这些信息可以用来进行物体的三维重建和定位等任务。
双目立体视觉匹配已经在许多领域得到了广泛应用。
其中最常见的应用包括机器人导航、智能交通、医疗影像分析等。
比如,在机器人导航中,双目立体视觉匹配可以帮助机器人快速识别环境中的障碍物和路径,从而实现自主导航。
在医疗影像分析中,它可以帮助医生更准确地诊断病情,确定手术方案和治疗方法。
总之,双目立体视觉匹配是一项重要的人工智能技术,它可以帮助我们更准确地理解和分析三维世界,并在多个领域得到广泛应用。
未来随着技术的不断进步,相信它的应用场景还会不断扩展和深化。
双目立体视觉匹配

双目立体视觉匹配双目立体视觉匹配是一种计算机视觉技术,用于在双目摄像头中获取的图像中,找到对应的目标点,从而实现立体深度感知。
双目立体视觉匹配的原理是基于两个前提假设:一是视差概念,即两个相同的场景在左右两个眼睛中的图像位置差异;二是视差和深度之间的关系。
根据这两个基本假设,我们可以通过比较左右两个图像中的像素值来确定两个图像中的对应关系,从而计算出立体深度信息。
双目视觉匹配的过程通常包括以下几个步骤:1. 图像预处理:双目图像首先需要进行预处理,包括去噪、图像校正、颜色校正等。
这些步骤旨在提高图像质量和减少噪声对匹配结果的影响。
2. 特征提取:在预处理之后,需要从图像中提取出一些能够反映目标结构和纹理信息的特征点。
常用的特征包括角点、边缘、区域等。
3. 特征匹配:在这一步中,通过比较特征点之间的相似性来确定它们之间的对应关系。
常用的匹配算法有最近邻匹配、迭代最近点算法、随机抽样一致性算法等。
4. 视差计算:特征匹配之后,我们可以根据特征点之间的位置差异来计算出视差信息,即目标点在左右图像中的位置差异。
一般来说,视差越大,深度越小。
5. 深度计算:视差和深度之间的具体关系取决于相机的内外参数、基线长度等因素。
通过根据相机标定信息和经验参数,可以将视差转换为具体的深度值。
双目立体视觉匹配在机器人导航、三维重建、虚拟现实等领域具有广泛的应用。
通过获取场景的三维深度信息,可以使机器人在复杂环境中进行精确的定位和避障;在三维重建中,双目立体视觉匹配可以用于获取物体或场景的精确几何结构;在虚拟现实中,双目立体视觉匹配可以为用户提供更加真实的交互体验。
双目立体视觉匹配也面临着一些挑战和限制。
双目视觉匹配对于光照变化、纹理缺失等问题比较敏感,这会导致匹配结果的不稳定性;相机标定是双目视觉匹配中的重要一步,需要准确地测量相机参数和关联参数,否则会影响深度计算结果的精度;双目视觉匹配在处理大场景、纹理一致的区域等情况下会面临困难。
双目立体视觉匹配

双目立体视觉匹配双目立体视觉匹配是指利用人类双眼在空间中略微不同的视角,联合大脑进行视觉信息的处理和匹配,从而获得空间的深度和立体感。
在现代科技中,利用双目立体视觉匹配可以实现很多实用的应用,比如立体影像、立体游戏、机器人视觉导航等。
双目立体视觉匹配技术是计算机视觉和人工智能领域的一个重要研究方向,具有广泛的应用前景。
一、双目立体视觉原理人类通过双眼获取的两幅视觉图像,实际上是同一个物体在不同视角下的投影。
这两幅图像之间存在视差,也就是物体在不同视角下的位置差异。
大脑通过对这些视差的处理,得出了深度信息,使我们能够感知到物体的三维空间位置。
双目立体视觉匹配主要涉及视差的计算和匹配。
在数字图像处理中,利用计算机对双眼获取的两幅图像进行处理和匹配,从而获取深度信息。
通常采用的方法包括视差计算、视差匹配和深度图生成等步骤。
1. 视差计算:通过一系列像素级的图像处理方法,计算出两幅图像之间的视差。
常见的计算方法包括半全局匹配(Semi-Global Matching, SGM)、立体匹配算法(Stereo Matching)、视差图像传感器(Depth Sensing Image Sensor)等。
2. 视差匹配:将两幅图像中对应的像素进行匹配,找到它们之间的视差值。
通常采用的方法包括基于特征点的匹配、基于像素级的匹配等。
3. 深度图生成:根据计算得出的视差信息,生成目标物体的深度图,从而实现三维空间中物体位置的感知。
双目立体视觉匹配的原理是基于人类视觉的工作原理,通过模拟人类双眼的工作方式,从而实现数字图像的深度感知和立体视觉效果。
二、双目立体视觉应用双目立体视觉匹配技术在现代科技中应用广泛,涉及到多个领域,包括计算机视觉、人工智能、机器人技术等。
以下将介绍一些典型的双目立体视觉应用。
1. 立体影像:利用双目立体视觉匹配技术,可以实现立体影像的拍摄和显示。
通过双目相机拍摄的图像以及虚拟现实(Virtual Reality, VR)或增强现实(Augmented Reality, AR)技术,可以实现逼真的立体影像体验。
《双目立体视觉三维重建的立体匹配算法研究》范文

《双目立体视觉三维重建的立体匹配算法研究》篇一一、引言双目立体视觉作为计算机视觉领域中的一种重要技术,通过模拟人眼视觉系统的双目原理,获取物体的深度信息并实现三维重建。
其中,立体匹配算法作为双目立体视觉的核心技术之一,其性能直接决定了三维重建的精度和效果。
本文将重点研究双目立体视觉中的立体匹配算法,并对其原理、方法和优化进行详细分析。
二、双目立体视觉基本原理双目立体视觉基于视差原理,通过两个或多个摄像头从不同角度获取同一场景的图像信息,再通过计算图像间的视差来获取物体的深度信息。
双目立体视觉系统主要由摄像头、图像获取、预处理、特征提取、立体匹配和三维重建等部分组成。
其中,立体匹配是整个系统中最关键的一环。
三、立体匹配算法概述立体匹配算法是双目立体视觉中用于计算左右图像间对应点(即视差)的算法。
它通过在左右图像中寻找相同的特征点或像素点,从而得到视差信息,进而实现三维重建。
目前,常见的立体匹配算法包括基于区域的匹配算法、基于特征的匹配算法和基于相位的匹配算法等。
四、常见立体匹配算法分析1. 基于区域的匹配算法:该类算法通过计算左右图像中一定区域内的像素相似度来确定视差。
其优点是简单易行,但容易受到光照变化、噪声等因素的影响,导致匹配精度不高。
2. 基于特征的匹配算法:该类算法先提取图像中的特征(如边缘、角点等),再在左右图像中寻找相应的特征进行匹配。
该方法提高了匹配的准确性和效率,但对特征的提取和匹配方法要求较高。
3. 基于相位的匹配算法:该类算法利用相位信息进行匹配,具有较高的精度和抗干扰能力。
但计算复杂度较高,对硬件要求较高。
五、本文研究重点:基于深度学习的立体匹配算法随着深度学习技术的发展,基于深度学习的立体匹配算法成为了研究热点。
该方法通过训练神经网络来学习图像间的映射关系,从而实现精确的立体匹配。
本文重点研究了基于卷积神经网络的立体匹配算法,包括网络结构的设计、损失函数的选择和训练方法的优化等方面。
《基于双目视觉的立体匹配算法研究及应用》范文

《基于双目视觉的立体匹配算法研究及应用》篇一一、引言随着计算机视觉技术的飞速发展,双目视觉立体匹配算法在三维重建、机器人导航、自动驾驶等领域得到了广泛应用。
本文旨在研究基于双目视觉的立体匹配算法,探讨其原理、方法及实际应用,以期为相关领域的研究提供参考。
二、双目视觉立体匹配算法原理双目视觉立体匹配算法是通过模拟人类双眼视觉原理,利用两个相机从不同角度获取场景的图像信息,通过计算两幅图像间的视差,从而恢复出场景的三维信息。
立体匹配是双目视觉的核心问题,其基本原理包括特征提取、特征匹配、视差计算等步骤。
1. 特征提取:在两幅图像中提取出具有代表性的特征点,如角点、边缘点等。
这些特征点将用于后续的匹配过程。
2. 特征匹配:利用一定的匹配算法,如基于区域的匹配、基于特征的匹配等,在两幅图像中寻找对应的特征点。
3. 视差计算:根据匹配得到的特征点,计算视差图。
视差图反映了场景中各点在两幅图像中的相对位移,从而可以恢复出场景的三维信息。
三、立体匹配算法研究针对双目视觉立体匹配算法,本文重点研究了以下几种方法:1. 基于区域的匹配算法:该类算法通过计算两幅图像中对应区域的相似性来寻找匹配点。
常见的区域匹配算法包括块匹配、窗口匹配等。
2. 基于特征的匹配算法:该类算法通过提取图像中的特征点,如角点、边缘点等,进行特征匹配。
常见的特征匹配算法包括SIFT、SURF等。
3. 视差计算优化方法:为了提高视差计算的精度和效率,研究者们提出了多种优化方法,如引入先验知识、利用多尺度信息、采用半全局匹配算法等。
四、立体匹配算法应用双目视觉立体匹配算法在多个领域得到了广泛应用,如三维重建、机器人导航、自动驾驶等。
本文将重点介绍其在以下两个领域的应用:1. 三维重建:通过双目视觉立体匹配算法,可以恢复出场景的三维信息,从而实现三维重建。
三维重建技术在游戏开发、虚拟现实、医疗影像处理等领域具有广泛应用。
2. 自动驾驶:双目视觉立体匹配算法可以用于自动驾驶系统的环境感知。
双目立体视觉匹配

双目立体视觉匹配双目立体视觉匹配是指通过两个视觉传感器(眼睛)同时获取的视觉信息,进行图像的匹配与处理,从而实现对三维空间中物体位置、形状和深度的感知。
在人类视觉系统中,我们的两只眼睛分别观察到不同的景象,这两个视角的差异被大脑处理后,使我们能够感知到三维世界。
双目立体视觉匹配的核心就是模拟人类视觉系统的工作原理,通过计算机对不同眼睛拍摄到的图像进行处理,提取出深度信息,从而实现对三维空间的感知。
双目立体视觉匹配的基本原理是寻找两个图像之间的对应点。
当两个图像的视角或位置发生变化时,同一物体在两个图像中的像素值可能会发生变化。
通过分析这种变化,可以计算出物体的深度信息。
1. 图像获取:使用两个摄像机同时获取两幅图像,这两个摄像机应具有一定的基线距离,即两个摄像机之间的距离。
2. 校准:对两个摄像机进行标定和校准,确定两个摄像机之间的位置关系和相机参数。
3. 特征提取:从图像中提取出能够用于匹配的特征点,常用的特征点包括角点、边缘等。
4. 特征描述:对提取出的特征点进行描述,通常使用局部特征描述方法,如SIFT、SURF等。
5. 特征匹配:将一个图像中的特征点与另一个图像中的特征点进行匹配,通常使用特征向量的距离度量方法,如欧氏距离、余弦相似度等。
6. 匹配剔除:对匹配点进行剔除,以排除误匹配和无效匹配。
7. 深度计算:根据匹配点的位置信息以及两个摄像机之间的位置关系,计算出物体的深度信息。
8. 三维重建:根据深度信息和摄像机参数,将匹配点重建为三维空间中的点云,从而得到三维物体模型。
双目立体视觉匹配在计算机视觉领域有重要的应用,例如机器人导航、三维重建、物体跟踪等。
由于双目立体视觉匹配能够提供精确的深度信息,因此在许多应用中可以取得比单目视觉更好的效果。
双目立体视觉匹配也存在一些挑战和限制。
对于低纹理区域或者高度相似的物体,匹配点的提取和匹配可能会受到干扰。
摄像机的标定和校准是一个关键的步骤,如果标定不准确或者摄像机之间的位置关系发生变化,都会影响匹配的准确性。
《双目立体视觉三维重建的立体匹配算法研究》

《双目立体视觉三维重建的立体匹配算法研究》篇一一、引言双目立体视觉技术是计算机视觉领域中的一项重要技术,它通过模拟人类双眼的视觉系统,利用两个相机从不同角度获取同一场景的图像信息,再通过一系列的图像处理技术,实现三维重建。
其中,立体匹配算法是双目立体视觉三维重建的关键技术之一。
本文将重点研究双目立体视觉三维重建中的立体匹配算法,并分析其原理、方法和存在的问题及解决方法。
二、立体匹配算法的基本原理和常用方法1. 立体匹配算法的基本原理立体匹配算法是利用双目相机获取的左右两幅图像中的视差信息,通过匹配算法找出同一场景在不同视角下的对应点,进而实现三维重建。
其基本原理包括四个步骤:图像预处理、特征提取、立体匹配和三维重建。
2. 常用立体匹配算法(1)基于区域的立体匹配算法:该算法通过计算左右图像中每个像素点周围的区域相似度来确定视差值。
其优点是精度高,但计算量大,实时性较差。
(2)基于特征的立体匹配算法:该算法先提取左右图像中的特征点,再通过特征匹配来计算视差值。
其优点是计算量小,实时性好,但需要较好的特征提取算法。
(3)基于相位的立体匹配算法:该算法利用相位信息来计算视差值,具有较高的精度和稳定性。
但其对噪声敏感,且计算量较大。
三、存在的问题及解决方法1. 匹配精度问题:由于光照、遮挡、透视畸变等因素的影响,立体匹配算法的精度会受到影响。
为了提高匹配精度,可以采用多尺度、多特征融合的方法,提高特征提取的准确性和鲁棒性。
2. 实时性问题:在实际应用中,要求立体匹配算法具有较高的实时性。
为了解决这一问题,可以采用优化算法、硬件加速等方法来降低计算量,提高运算速度。
3. 视差图问题:视差图是立体匹配算法的重要输出结果之一。
视差图的质量直接影响着三维重建的精度和效果。
为了提高视差图的质量,可以采用多约束条件下的优化算法、后处理等方法来优化视差图。
四、研究进展与展望近年来,随着计算机视觉技术的不断发展,双目立体视觉三维重建技术也取得了较大的进展。
双目视觉地图像立体匹配系统说明书文档

双目视觉的图像立体匹配系统文档1引言计算机视觉技术的发展将光与影的艺术和计算机的逻辑性紧密结合起来,而双目立体视觉技术更将这种结合从平面二次元上升到立体的角度,为我们的生产生活提供了新的技术和工具,例如已经被普遍运用的电影技术,研发中的虚拟现实、谷歌视觉眼镜、汽车自动驾驶技术,即将上市的淘宝虚拟实景购物等,不断改变着我们的生活,另外双目立体视觉在军事、医学、工业等领域都有其重要的作用,是机器感知物体几何层级的基础,因此对双目视觉的理论研究成为推动立体视觉乃至计算机视觉技术在各个领域创造更高价值的重要因素。
在双目视觉的研究和运用中,最重要的一个阶段无疑为将平面图像转化为可计算机可识别的立体模型,这里将用到立体匹配技术,目前双目视觉研究领域用到的立体匹配算法及其衍生算法有很多种,算法的效率和匹配精度将直接影响到算法运用的响应时间和准确度[,1当]今各种视觉智能设备的发展需要将立体匹配过程直接嵌入到单片机中,这种场景下,算法的效率和匹配精度将直接决定不同运算性能的嵌入式设备的选择和产品推广后的用户体验度,也将直接决定设备成本,因此研究出更加速度快、精度高的立体匹配算法在各领域都具有划时代的重要意义。
2系统方案设计2.双1目视觉的图像立体匹配系统说起立体视觉系统,要从人的双眼说起,人眼是一个典型的双目视觉系统,每只眼睛是一个摄像机,两只平行的眼睛是两台平行的摄像机,因为两只眼睛的位置不同,看到的图像是有差异的,这个差异就是立体视觉的基础,视觉信号传入大脑,大脑利用其强大的匹配能力,就可以基本确定图像中的物体的立体信息,或者叫做图像的深度信息。
随着人们知识和生产生活的发展,需要通过仿真立体视觉的原理,让计算机获取到图像从向发展,即获取图像的深度信息,以实现一些和空间视觉有关的需求,这就出现了机器立体视觉技术。
Object图2.1立体视觉原理示意图如图是一张立体视觉原理示意图,和为两台摄像机,物体上的点分别对应左右图像上点和2通过算法找到图像左右图像上对应的点12这个过程则是立体匹配。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
双目视觉的图像立体匹配系统文档1 引言计算机视觉技术的发展将光与影的艺术和计算机的逻辑性紧密结合起来,而双目立体视觉技术更将这种结合从平面二次元上升到立体的角度,为我们的生产生活提供了新的技术和工具,例如已经被普遍运用的3D电影技术,研发中的虚拟现实、谷歌视觉眼镜、汽车自动驾驶技术,即将上市的淘宝虚拟实景购物等,不断改变着我们的生活,另外双目立体视觉在军事、医学、工业等领域都有其重要的作用,是机器感知物体几何层级的基础,因此对双目视觉的理论研究成为推动立体视觉乃至计算机视觉技术在各个领域创造更高价值的重要因素。
在双目视觉的研究和运用中,最重要的一个阶段无疑为将平面图像转化为可计算机可识别的立体模型,这里将用到立体匹配技术,目前双目视觉研究领域用到的立体匹配算法及其衍生算法有很多种,算法的效率和匹配精度将直接影响到算法运用的响应时间和准确度[1],当今各种视觉智能设备的发展需要将立体匹配过程直接嵌入到单片机中,这种场景下,算法的效率和匹配精度将直接决定不同运算性能的嵌入式设备的选择和产品推广后的用户体验度,也将直接决定设备成本,因此研究出更加速度快、精度高的立体匹配算法在各领域都具有划时代的重要意义。
2 系统方案设计2.1 双目视觉的图像立体匹配系统说起立体视觉系统,要从人的双眼说起,人眼是一个典型的双目视觉系统,每只眼睛是一个摄像机,两只平行的眼睛是两台平行的摄像机,因为两只眼睛的位置不同,看到的图像是有差异的,这个差异就是立体视觉的基础,视觉信号传入大脑,大脑利用其强大的匹配能力,就可以基本确定图像中的物体的立体信息,或者叫做图像的深度信息。
随着人们知识和生产生活的发展,需要通过仿真立体视觉的原理,让计算机获取到图像从2D向3D发展,即获取图像的深度信息,以实现一些和空间视觉有关的需求,这就出现了机器立体视觉技术。
图2.1 立体视觉原理示意图如图2.1是一张立体视觉原理示意图,O1和O2为两台摄像机,物体上的点p12分别对应左右图像上点p1和p2,通过算法找到图像左右图像上对应的点p1、p2,这个过程则是立体匹配。
求解p1、p2、p12构成的三角形,我们就能得到点p12的坐标,也就能得到p12的深度[6],如图2.2所示。
图2.2 标准双目视觉系统投影成像示意图其中,点l O 和点r O 分别是左右两个摄像头的光学中心位置,即两个摄像头成像坐标系的光学原点,f 为左右两个摄像头的焦距,在这里,点A (X,Y,Z )以l O 为坐标中心,左摄像头成像坐标系为坐标系,由相似三角形的性质,有:Y v Z f X x X Z f Z b b u u ll l r =-=-=+-,(2-1)则rl r l l r l l u u bfZ u u b v Y u u b u X -=-=-=,,(2-2)因此找到点A 在左右图像上对应的la 和r a 则是重中之重,一个好的立体匹配算法对双目视觉系统起到了决定性作用,我们将在本文接下来的章节对最有代表性的算法做具体介绍。
双目立体视觉之间模拟了人眼视觉构造,因此双目视觉在各个领域都具有广泛的运用,比如机器人导航领域,双目视觉可以被运用在汽车自动驾驶,机器人自动导航;在虚拟现实领域,通过对双目视觉的研究,人们可以虚拟出立体视觉,极大丰富了人类生活;在航空航天领域,双目视觉已经运用在飞行器自动导航和飞行器避障;在工业上,双目视觉被运用在机械自动化制造,工业监测等方面。
一个完整的双目立体视觉系统通常包括图像获取、摄像机标定、图像矫正、立体匹配和深度恢复五个方面:(1)图像获取 通过模拟双目的方式,利用平行的两台摄像机对左右眼图像进行获取。
(2)立体标定 通过图像特征点获取,建立摄像机的几何成像模型(3)图像矫正 把实际中非共面行对准的两幅图像,校正成共面行对准,因为当两个图像平面是完全共面行对准时,计算立体视差是最简单的[7](4)立体匹配 通过算法对图像进行立体匹配,建立图像的立体模型。
深度恢复 通过匹配结果,恢复图像的立体感。
2.2 双目视觉的图像立体匹配系统框图在进行图像的立体匹配之前,需要得到可匹配的图像,既使得左右双眼图片在平面上完全行对准,这时计算立体视觉差是最简单的,而这种行对准图像是可以通过图像校正完成的,但由于每对摄像机的参数(位置、畸变等)不同,在校正时需要拿到摄像头的标正值,因此在校正前需要对摄像头进行标定。
总的流程图如图3.1所示:图3.1 系统设计框图通过采集左右摄像头的图像和标定图像进行反复对比标定,得到图像的标定参数,进而进行图像校正,校正后的图像即可通过立体匹配算法进行深度匹配。
3 设备选型及硬件系统详细设计3.1 设备选型本系统选用不同型号的两个摄像头作为双目视觉采集摄像机。
3.2 硬件系统设计系统所用硬件系统配置如下:PC:四核i5处理器、4Gb内存、显示卡2G RAM4 软件设计及测试4.1 开发环境编译器:VS2015、MATLAB2015B视觉库:OpenCV3.04.2 概要设计4.2.1 流程图4.2.2 主要函数及实现功能4.3 详细设计4.3.1图像采集本论文采用MATLAB对双目图像进行采集,摄像机用到是视觉平行的两台摄像头,如图4.1所示:图4.1 图像采集用的双目摄像头说明:将摄像头使用USB连接线与电脑相连接,使用matlab在同一时间对图像进行采集,为了摄像头标定参数无变化,整个实验过程中需要保持摄像头位置不变,否则实验会不准确。
4.3.2立体标定在实际拍摄中,有的摄像头会产生畸变,且采集到的图像极线相交,为了降低后续图像匹配的难度,我们需要得到两个摄像头的焦距、主点坐标、倾斜系数、畸变系数以及它们之间的旋转矢量,现多采用张定友棋盘格标定法对摄像头进行标定,他利用了摄像头拍摄的图像与实物间存在线性关系,表达式如下:[]⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡101321Y X t r r r K v u s (4.2)其中,K 代表摄像机的内参数矩阵,[u v 1]表示实物投影到图像平面上的齐次坐标,[r1 r2 r3]和t 是摄像机的外参数,分别代表以摄像机为中心的坐标系相对世界坐标系的旋转矩阵和平移向量。
采用棋盘格能够得到多个角点的位置,解方程组得到摄像机的内外参数[15]。
Opencv3.0和MATLAB 的标定都采用了张定友定标法,因为MATLAB 标定工具箱较OpenCV3.0标定结果更为准确,因此,本文采用MATLAB 对摄像机进行进行标定,本文用14*14,以20mm 为边长的黑白棋盘格进行标定,如图4.3所示:图4.3 14*14,20mm 为边长的棋盘格标定图像标定具体步骤如下:(1)使用左右摄像头采集同一时间下同一标定板图像,采集过程中,应让标定图像处于摄像头视野的中间位置(2)分别读取摄像头图像对两个摄像头进行单独标定,本文采集了15张标定图完成标定,每个摄像头的标定结果单独储存。
(3)将左右摄像头mat文件读入MATLAB的标定工具箱,进行立体标定。
标定图像如下图4.4和4.5图4.4 左摄像头标定图像集图4.5 右摄像头标定图像集单摄像头标定结果表4.1 左摄像头标定结果参数结果焦距主点倾斜系数畸变像素误差[937.38 917.06]±[10.68 8.93][409.05 279.03]±[11.63 14.39][0.00]±[0.00][-0.18643 1.69505 0.01121 0.022100.00000]±[0.06598 0.59557 0.005550.00447 0.00000][0.15528 0.19454]表4.2 右摄像头标定结果参数结果焦距主点倾斜系数畸变像素误差[927.22 907.05]±[11.02 8.93][337.29 280.35]±[13.06 15.06][0.00]±[0.00][-0.01803 -0.43391 0.00965 0.01415 0.00000]±[0.05957 0.36702 0.00597 0.00484 0.00000][0.42602 0.53865]如图4.6和4.7分布表示标定时棋盘标定板和两个摄像机的位置关系:图4.6 棋盘标定板与左摄像机位置关系图4.7 棋盘标定板与右摄像机位置关系立体标定结果读取左右摄像机的标定参数,进行立体标定后,其结果如表4.3所示:表4.3 立体摄像头标定结果摄像头参数结果左摄像头焦距主点倾斜系数畸变[919.29 901.54]±[6.88 6.35][402.30 258.05]±[11.24 10.12][0.00]±[0.00][-0.01803 -0.43391 0.00965 0.014150.00000]±[0.05957 0.36702 0.00597 0.00484 0.00000]右摄像头焦距主点倾斜系数畸变[919.29 901.54]±[6.88 6.35][402.30 258.05]±[11.24 10.12][0.00]±[0.00][-0.23197 2.36790 -0.00265 0.01769 0.00000]±[0.06621 0.79331 0.00399 0.00376 0.00000]双目摄像头旋转矢量转化矢量[0.04887 0.01864 0.01890]±[0.01496 0.01610 0.00116][101.42 4.24 -11.01]±[0.65 0.77 5.33]双摄像机与棋盘标定板的位置关系如图4.8所示:图4.8 双摄像机与棋盘标定板的位置关系4.3.3校正为了在立体匹配时,左右摄像机图像的平面是行对准的,需要对图像进行校正,而图像校正,使用OpenCV3.0图像库里的bouguet算法比较适合,采用bouguet算法比利用摄像机标定参数,对图像进行校正[16],其过程如图4.9所示:图4.9图像校正过程实现过程如下:分别读取立体标正后的标定参数,之后使用OpenCV3.0自带的库进行消除畸变和图像校正矫正的结果分别对比4.10和4.11可知,如图4.10和4.11分别为左摄像机和右摄像机校正前后的图像对比:图4.10 左右摄像机校正前图4.11 左右摄像机校正后4.3.4立体匹配经过校正后的图像左右平面为行对准的,之后即可使用不同的立体匹配算法对左右图像进行立体匹配,为了之后做算法的效率和匹配精度的性能分析,本文在算法运行的同时,通过打印时间戳的方法获取其运行时长。