一种快速双目立体匹配方法

合集下载

双目立体视觉匹配

双目立体视觉匹配

双目立体视觉匹配双目立体视觉匹配是一种计算机视觉技术,用于在双目摄像头中获取的图像中,找到对应的目标点,从而实现立体深度感知。

双目立体视觉匹配的原理是基于两个前提假设:一是视差概念,即两个相同的场景在左右两个眼睛中的图像位置差异;二是视差和深度之间的关系。

根据这两个基本假设,我们可以通过比较左右两个图像中的像素值来确定两个图像中的对应关系,从而计算出立体深度信息。

双目视觉匹配的过程通常包括以下几个步骤:1. 图像预处理:双目图像首先需要进行预处理,包括去噪、图像校正、颜色校正等。

这些步骤旨在提高图像质量和减少噪声对匹配结果的影响。

2. 特征提取:在预处理之后,需要从图像中提取出一些能够反映目标结构和纹理信息的特征点。

常用的特征包括角点、边缘、区域等。

3. 特征匹配:在这一步中,通过比较特征点之间的相似性来确定它们之间的对应关系。

常用的匹配算法有最近邻匹配、迭代最近点算法、随机抽样一致性算法等。

4. 视差计算:特征匹配之后,我们可以根据特征点之间的位置差异来计算出视差信息,即目标点在左右图像中的位置差异。

一般来说,视差越大,深度越小。

5. 深度计算:视差和深度之间的具体关系取决于相机的内外参数、基线长度等因素。

通过根据相机标定信息和经验参数,可以将视差转换为具体的深度值。

双目立体视觉匹配在机器人导航、三维重建、虚拟现实等领域具有广泛的应用。

通过获取场景的三维深度信息,可以使机器人在复杂环境中进行精确的定位和避障;在三维重建中,双目立体视觉匹配可以用于获取物体或场景的精确几何结构;在虚拟现实中,双目立体视觉匹配可以为用户提供更加真实的交互体验。

双目立体视觉匹配也面临着一些挑战和限制。

双目视觉匹配对于光照变化、纹理缺失等问题比较敏感,这会导致匹配结果的不稳定性;相机标定是双目视觉匹配中的重要一步,需要准确地测量相机参数和关联参数,否则会影响深度计算结果的精度;双目视觉匹配在处理大场景、纹理一致的区域等情况下会面临困难。

基于深度学习的多尺度双目立体匹配方法

基于深度学习的多尺度双目立体匹配方法

基于深度学习的多尺度双目立体匹配方法基于深度学习的多尺度双目立体匹配方法摘要:双目立体视觉是计算机视觉领域中的重要研究方向之一。

本文介绍了一种基于深度学习的多尺度双目立体匹配方法。

通过使用卷积神经网络对双目图像进行特征提取,并采用多尺度策略对不同尺度的特征进行匹配,实现了准确快速的立体匹配。

实验结果表明,该方法能够获得较高的匹配精度和鲁棒性。

1. 引言双目立体匹配是计算机视觉领域中的重要问题之一,它可以通过两个相机拍摄的图像来恢复场景的三维结构。

早期的立体匹配方法主要基于传统的计算机视觉算法,如基于像素的匹配方法、基于特征的匹配方法等。

然而,这些方法通常存在匹配精度低、计算复杂度高等问题。

随着深度学习的兴起,基于深度学习的立体匹配方法取得了前所未有的进展。

2. 方法本文提出的多尺度双目立体匹配方法主要包括以下几个步骤:(1)数据准备首先,收集一对参考图像和目标图像,它们是在不同相机位置下拍摄的。

然后,对这对图像进行预处理,包括图像去噪、灰度化、尺度归一化等操作。

最后,将处理后的图像输入到网络中。

(2)特征提取使用卷积神经网络(CNN)对输入图像进行特征提取。

深度学习的卷积神经网络具有良好的特征提取能力,能够从图像中提取出具有丰富语义信息的特征。

在本文中,我们使用了经典的卷积神经网络模型,如ResNet和VGG等。

(3)多尺度策略为了解决不同尺度下的立体匹配问题,本文采用了多尺度策略。

通过将输入图像分别经过不同尺度的卷积核进行特征提取,可以得到多尺度的特征图。

然后,对不同尺度下的特征图进行匹配,以获得更准确的匹配结果。

(4)立体匹配将多尺度特征图输入立体匹配网络,通过学习得到每个像素的视差值。

在本文中,我们使用了经典的卷积神经网络模型,如Siamese网络和GC-Net等。

这些网络通过学习大量的立体图像对,能够获得有效的视差估计模型。

(5)后处理为了进一步提高立体匹配的精度,本文还进行了后处理。

通过采用传统的图像处理算法,如代价聚合、视差平滑等手段,可以去除匹配中的错误和噪声,得到更准确的立体匹配结果。

《基于双目视觉的立体匹配算法研究及应用》范文

《基于双目视觉的立体匹配算法研究及应用》范文

《基于双目视觉的立体匹配算法研究及应用》篇一一、引言随着计算机视觉技术的飞速发展,双目视觉立体匹配算法在三维重建、机器人导航、自动驾驶等领域得到了广泛应用。

本文旨在研究基于双目视觉的立体匹配算法,探讨其原理、方法及实际应用,以期为相关领域的研究提供参考。

二、双目视觉立体匹配算法原理双目视觉立体匹配算法是通过模拟人类双眼视觉原理,利用两个相机从不同角度获取场景的图像信息,通过计算两幅图像间的视差,从而恢复出场景的三维信息。

立体匹配是双目视觉的核心问题,其基本原理包括特征提取、特征匹配、视差计算等步骤。

1. 特征提取:在两幅图像中提取出具有代表性的特征点,如角点、边缘点等。

这些特征点将用于后续的匹配过程。

2. 特征匹配:利用一定的匹配算法,如基于区域的匹配、基于特征的匹配等,在两幅图像中寻找对应的特征点。

3. 视差计算:根据匹配得到的特征点,计算视差图。

视差图反映了场景中各点在两幅图像中的相对位移,从而可以恢复出场景的三维信息。

三、立体匹配算法研究针对双目视觉立体匹配算法,本文重点研究了以下几种方法:1. 基于区域的匹配算法:该类算法通过计算两幅图像中对应区域的相似性来寻找匹配点。

常见的区域匹配算法包括块匹配、窗口匹配等。

2. 基于特征的匹配算法:该类算法通过提取图像中的特征点,如角点、边缘点等,进行特征匹配。

常见的特征匹配算法包括SIFT、SURF等。

3. 视差计算优化方法:为了提高视差计算的精度和效率,研究者们提出了多种优化方法,如引入先验知识、利用多尺度信息、采用半全局匹配算法等。

四、立体匹配算法应用双目视觉立体匹配算法在多个领域得到了广泛应用,如三维重建、机器人导航、自动驾驶等。

本文将重点介绍其在以下两个领域的应用:1. 三维重建:通过双目视觉立体匹配算法,可以恢复出场景的三维信息,从而实现三维重建。

三维重建技术在游戏开发、虚拟现实、医疗影像处理等领域具有广泛应用。

2. 自动驾驶:双目视觉立体匹配算法可以用于自动驾驶系统的环境感知。

一种快速双目立体匹配方法

一种快速双目立体匹配方法

邮局订阅号:82-946120元/年技术创新软件时空《PLC 技术应用200例》您的论文得到两院院士关注一种快速双目立体匹配方法A Fast Stereo Matching Method for Binocular Images(苏州大学)梅金燕龚声蓉赵勋杰MEI Jin-yan GONG Sheng-rong ZHAO Xun-jie摘要:在双目立体视觉中立体匹配是关键技术之一。

为了提高匹配速度,提出一种新的立体匹配方法。

首先根据极线约束条件限定同名点搜索区域,然后在极线约束区域使用活动轮廓分割出物体区域,进一步缩小匹配点搜索范围。

在匹配算法方面,使用了邻域差值模板匹配方法。

实验证明,提出的方法能够显著地提高匹配速度,并有较好的匹配精度。

关键词:立体匹配;极线约束;活动轮廓;领域差值模板中图分类号:TP391文献标识码:AAbstract:Stereo matching is crucial for the distance measurement with binocular stereo system.Since the two cameras are hardly to be strictly parallel,matching based on epipolar constraint can not be applied directly.Analysing the system ’s module,a new mach -ing method was proposed in this paper.Firstly,the correct loaction area was selected based on the epipolar constraint.Secondly,the background was excluded out of the former area by active counter model.Finaly,the corresponding point is matched via feature tem -plate which is formed of neighborhood difference.The experimental results show that the proposed algorithm can improve stereo matching speed and it is more effective in the situation of detecting more than one point on the surface of the same object.Key words:Stereo matching;Epipolar constraint;Active counter;Neighborhood difference template文章编号:1008-0570(2012)10-0415-03引言双目立体视觉是计算机视觉的一个重要分支,它是一种由两幅图像获取物体三维几何信息的方法。

双目结构光匹配算法

双目结构光匹配算法

双目结构光匹配算法
1. 立体校正,首先对双目摄像头捕获的图像进行立体校正,以
保证两个摄像头的成像平面对齐。

2. 结构光投射,通过在被测物体上投射结构光,获取物体表面
的纹理和形状信息。

3. 图像匹配,利用双目摄像头捕获的图像,结合结构光投射的
信息,进行图像匹配,即找到左右两幅图像中对应像素点之间的匹
配关系。

4. 深度计算,根据图像匹配的结果,利用三角测量或其他深度
计算方法,计算出物体表面上每个像素点的深度信息,从而实现三
维重建。

双目结构光匹配算法的优点包括能够获取高精度的深度信息、
对纹理丰富的物体具有较好的适用性、抗光照变化能力强等。

然而,也存在一些挑战,例如在光照不均匀或反射严重的情况下匹配精度
较低、对算法实时性要求较高等。

在实际应用中,双目结构光匹配算法被广泛应用于工业测量、三维扫描、机器人视觉、虚拟现实等领域,为实现精准的三维重建和深度感知提供了重要的技术支持。

随着计算机视觉和图像处理技术的不断发展,双目结构光匹配算法也在不断完善和拓展,为各种应用场景的需求提供更加可靠和高效的解决方案。

python双目orb立体匹配代码

python双目orb立体匹配代码

Python双目ORB立体匹配代码1. 简介立体匹配是计算机视觉中一个重要的任务,其目标是找到左右两幅图像中对应的点,并计算其三维空间位置。

Python中有很多库可以实现立体匹配,其中ORB (Oriented FAST and Rotated BRIEF)是一种旋转不变的特征描述子,可以用于提取特征并进行立体匹配。

本文将介绍如何使用Python进行双目ORB立体匹配。

2. 准备工作在开始编写代码之前,我们需要先安装以下库:•OpenCV:用于图像处理和特征提取•NumPy:用于处理多维数组•Matplotlib:用于可视化结果你可以使用以下命令来安装这些库:pip install opencv-python numpy matplotlib安装完成后,我们可以开始编写代码了。

3. 双目ORB立体匹配代码实现3.1 导入库首先,我们需要导入所需的库:import cv2import numpy as npimport matplotlib.pyplot as plt3.2 读取图像# 读取左右两幅图像left_image = cv2.imread('left.png')right_image = cv2.imread('right.png')# 将图像转换为灰度图left_gray = cv2.cvtColor(left_image, cv2.COLOR_BGR2GRAY)right_gray = cv2.cvtColor(right_image, cv2.COLOR_BGR2GRAY)3.3 提取ORB特征# 创建ORB对象orb = cv2.ORB_create()# 在左右图像上提取特征点和描述子left_keypoints, left_descriptors = orb.detectAndCompute(left_gray, None)right_keypoints, right_descriptors = orb.detectAndCompute(right_gray, None)3.4 匹配特征点# 创建BFMatcher对象bf = cv2.BFMatcher(cv2.NORM_HAMMING, crossCheck=True)# 使用KNN算法进行特征点匹配matches = bf.match(left_descriptors, right_descriptors)# 根据距离进行排序matches = sorted(matches, key=lambda x: x.distance)# 取前100个匹配结果top_matches = matches[:100]3.5 计算视差# 获取匹配的特征点的坐标left_pts = np.float32([left_keypoints[m.queryIdx].pt for m in top_matches]).re shape(-1, 1, 2)right_pts = np.float32([right_keypoints[m.trainIdx].pt for m in top_matches]). reshape(-1, 1, 2)# 使用cv2函数计算视差disparity = puteDisparity(left_gray, right_gray)# 将视差图进行归一化处理disparity_normalized = cv2.normalize(disparity, None, alpha=0, beta=255, norm_ type=cv2.NORM_MINMAX, dtype=cv2.CV_8U)3.6 可视化结果# 绘制匹配特征点matches_image = cv2.drawMatches(left_gray, left_keypoints, right_gray, right_k eypoints, top_matches, None, flags=cv2.DrawMatchesFlags_NOT_DRAW_SINGLE_POINTS)# 绘制视差图plt.subplot(1, 2, 1)plt.imshow(left_image)plt.title('Left Image')plt.axis('off')plt.subplot(1, 2, 2)plt.imshow(disparity_normalized, cmap='gray')plt.title('Disparity Map')plt.axis('off')plt.show()4. 结果分析通过上述代码,我们成功实现了双目ORB立体匹配。

双目立体匹配ncc算法

双目立体匹配ncc算法

双目立体匹配的NCC算法是一种常用的图像处理技术,用于在双目立体视觉系统中实现图像匹配。

双目立体视觉是一种通过分析两个不同视角的图像来确定物体三维信息的技术。

在双目立体匹配过程中,NCC算法被广泛应用于寻找两幅图像之间的相似区域。

NCC算法的基本原理是通过计算两个图像之间的相关系数来匹配图像。

相关系数是一种衡量两个变量之间相似性的度量,其值范围在-1到1之间。

当两个图像之间的相似区域越大时,相关系数值越大。

NCC算法的基本步骤包括:1. 计算两幅图像的卷积:使用一个滤波器(如高斯滤波器)对两幅图像进行卷积,以提取图像中的特征。

2. 计算相关系数:将卷积后的结果进行求和,并除以图像大小和卷积核大小的内积,得到相关系数矩阵。

3. 阈值处理:对相关系数矩阵进行阈值处理,以排除不相关区域的影响。

通常使用软阈值处理方法,以保证匹配质量的同时减小计算量。

4. 找到匹配区域:根据阈值处理后的相关系数矩阵,找到匹配区域。

通常采用自适应阈值法,根据图像的局部特征动态调整阈值,以提高匹配精度。

5. 优化匹配结果:对找到的匹配区域进行优化,如平滑、锐化等操作,以提高立体匹配的质量。

在双目立体匹配中,NCC算法的应用优势在于其计算速度快、精度较高。

通过使用合适的滤波器和阈值处理方法,NCC算法可以在保证匹配精度的同时减小计算量,提高处理速度。

此外,NCC算法还可以处理不同视角、光照和噪声条件下的图像,具有较强的鲁棒性。

在实际应用中,双目立体匹配的NCC算法通常与其他技术相结合,如特征点提取、特征匹配和三角测量等,以实现精确的立体视觉应用,如自动驾驶、机器人导航和医学影像等。

通过双目立体匹配技术,可以获取更加精确的三维信息,为各种应用提供更可靠的支撑。

总之,双目立体匹配的NCC算法是一种常用的图像处理技术,用于在双目立体视觉系统中实现图像匹配。

通过使用合适的滤波器和阈值处理方法,NCC算法可以在保证匹配精度的同时提高处理速度和鲁棒性。

《双目立体视觉三维重建的立体匹配算法研究》

《双目立体视觉三维重建的立体匹配算法研究》

《双目立体视觉三维重建的立体匹配算法研究》篇一一、引言随着计算机视觉技术的飞速发展,双目立体视觉技术作为三维重建领域的重要手段,得到了广泛关注。

双目立体视觉技术通过模拟人类双眼的视觉系统,利用两个相机从不同角度获取物体图像,并利用立体匹配算法对这些图像进行匹配,从而实现对物体三维信息的重建。

本文将重点研究双目立体视觉三维重建中的立体匹配算法。

二、双目立体视觉系统概述双目立体视觉系统主要由两个相机、图像采集设备、图像处理单元等部分组成。

两个相机从不同角度拍摄同一场景,获得两幅具有视差的图像。

通过分析这两幅图像中的像素对应关系,可以恢复出物体的三维空间信息。

三、立体匹配算法研究立体匹配是双目立体视觉三维重建的核心步骤,其目的是在两个视图的像素之间找到对应关系。

本文将重点介绍几种常见的立体匹配算法。

1. 基于区域的立体匹配算法基于区域的立体匹配算法通过比较两个视图中对应区域的像素相似度来寻找匹配点。

该算法简单易行,但容易受到光照、遮挡等因素的影响。

为了提高匹配精度,可以引入多尺度、多方向的信息,以及采用动态规划、图割等优化方法。

2. 基于特征的立体匹配算法基于特征的立体匹配算法首先提取两个视图中的特征点,然后根据特征点的对应关系进行匹配。

该算法对光照、遮挡等因素的鲁棒性较好,且可以处理复杂的场景。

特征提取的方法包括SIFT、SURF等算法,而特征匹配则可以采用暴力匹配、FLANN 匹配等方法。

3. 基于相位的立体匹配算法基于相位的立体匹配算法利用相位信息来进行匹配。

该算法对噪声和光照变化具有较强的鲁棒性,且能够提供亚像素级的精度。

然而,该算法的计算量较大,需要采用优化算法来提高计算效率。

四、立体匹配算法的优化与改进为了提高立体匹配的精度和效率,本文提出了以下几种优化与改进方法:1. 引入深度学习技术:利用深度学习模型提取更加鲁棒的特征,提高匹配精度。

2. 结合全局与局部信息:在匹配过程中同时考虑全局和局部的像素信息,提高匹配的稳定性和精度。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

邮局订阅号:82-946120元/年技术创新软件时空《PLC 技术应用200例》您的论文得到两院院士关注一种快速双目立体匹配方法A Fast Stereo Matching Method for Binocular Images(苏州大学)梅金燕龚声蓉赵勋杰MEI Jin-yan GONG Sheng-rong ZHAO Xun-jie摘要:在双目立体视觉中立体匹配是关键技术之一。

为了提高匹配速度,提出一种新的立体匹配方法。

首先根据极线约束条件限定同名点搜索区域,然后在极线约束区域使用活动轮廓分割出物体区域,进一步缩小匹配点搜索范围。

在匹配算法方面,使用了邻域差值模板匹配方法。

实验证明,提出的方法能够显著地提高匹配速度,并有较好的匹配精度。

关键词:立体匹配;极线约束;活动轮廓;领域差值模板中图分类号:TP391文献标识码:AAbstract:Stereo matching is crucial for the distance measurement with binocular stereo system.Since the two cameras are hardly to be strictly parallel,matching based on epipolar constraint can not be applied directly.Analysing the system ’s module,a new mach -ing method was proposed in this paper.Firstly,the correct loaction area was selected based on the epipolar constraint.Secondly,the background was excluded out of the former area by active counter model.Finaly,the corresponding point is matched via feature tem -plate which is formed of neighborhood difference.The experimental results show that the proposed algorithm can improve stereo matching speed and it is more effective in the situation of detecting more than one point on the surface of the same object.Key words:Stereo matching;Epipolar constraint;Active counter;Neighborhood difference template文章编号:1008-0570(2012)10-0415-03引言双目立体视觉是计算机视觉的一个重要分支,它是一种由两幅图像获取物体三维几何信息的方法。

它利用两个摄像机对同一景物从不同的视角成像,然后根据视差和投影模型来获取景物的三维信息。

双目立体视觉由于直接模拟了人类双眼视觉的生理构造,因此,在许多领域有着广阔的应用前景,如微操作系统的位姿检测与控制、机器人导航与航测、三维测量学及虚拟现实等。

在双目立体视觉中,通过立体匹配方法寻找空间同一物点在左、右两幅图像上对应的投影点(同名点)进而获得视差。

立体匹配方法大体可以分为基于区域灰度和基于特征两类匹配方法。

基于区域灰度的匹配方法简单,容易实现,但对于左图像中的每一像点,都要与右图像中所有点进行相关运算,计算量大,实时性差,且对光照因素比较敏感。

通过极线约束,可以沿物点对应极线搜索同名点,将二维搜索限制到一维搜索,提高匹配的速度。

但是,在两图极线不平行时这种匹配方法不适合。

针对这种情况,文献对整个图像平面投影进行校正,使两个图像重投影后极线平行,对校正后的图像进行相关匹配。

然而,平面投影校正忽略了极线的方向性,在极点距离图像较近时图像失真严重,方法比较复杂。

文献提出了基于极线局部校正的匹配算法,使基于灰度的匹配方法可以得到有效的应用,然而,该方法匹配时间较长,效率较低。

文献在分析双目成像形成极线约束的基础上,从行和列两个方向上缩小第二幅图像待匹配特征点坐标的搜索范围,提高了匹配速度,但是搜索范围通常包括前景和后景,匹配正确与否易受后景影响。

针对上述问题,本文提出了一种快速立体匹配方法。

首先根据极线约束限定同名点搜索区域,然后通过检测物体轮廓去除背景区域,进一步约束搜索区域。

最后,采用邻域差值模板进行匹配,将特征匹配和区域匹配两种方法结合起来,减小光照因素的影响。

1极线约束原理在如图1所示的双目立体视觉系统中,假设三维空间点P 是两个摄像机均可见的空间场景物上的一点,点P 在光心点为C L 和C R 相机像面I L 、I R 上的投影分别为P L 、P R ,由光心、像点和空间点形成的平面称为极平面。

两光心连线与像平面的交点分别为E L 、E R 。

极平面与左像面I L 的交线P L E L图1双目立体视觉中的极线几何关系称为点P R 在图像I L 中的极线,交线P R E R 也有同样的定义。

无论与P L 对应的P 点距离远近,它在右图上的投影点总是在P L 的极线P R E R 上。

对于任意P L ,只需要在它的极线上寻找对应点P R ;反之亦然。

这是双目视觉的一个重要特点,称之为极线约束。

通过极线约束,我们可以由一个投影点知道其对应的极线,但不知道它对应点的具体位置,即极限约束是点与直线的对应,而不是点与点的对应。

尽管如此,极限约束给出了对应点重要的约束条件,它将对应点匹配从整幅图像寻找限定在一条直线上需找对应点。

因此,极大地减小了搜索地范围,对点的匹配具有梅金燕:硕士研究生基金项目:基金申请人:龚声蓉;项目名称:基于二型模糊概率图模型的多摄像头目标检测研究;基金颁发部门:国家自然科学基金委员会(61170124)415--技术创新《微计算机信息》2012年第28卷第10期120元/年邮局订阅号:82-946《现场总线技术应用200例》软件时空指导作用。

2活动轮廓模型原理在极限约束基础上,我们再利用活动轮廓模型提取物体的边界,从而去除后景区域,最终待匹配区域仅限于极限约束下的目标区域。

活动轮廓模型是指定义在图像上的一条能量递减曲线,由轮廓自身特征决定的内部能量和图像特征决定的外部能量共同作用,在能量最小的原则下移动,最终停止在物体边缘附近。

以Marr 为代表的计算机视觉理论,认为轮廓提取是一个自治的、自上而下的处理过程。

上层的处理结果直接受底层的处理结果的影响。

为了能够融合图像上层知识和底层图像特征,M.Kass 首先提出了活动轮廓模型。

模型的轮廓线承载了上层知识,而轮廓线与图像的匹配又融合了底层特征,这两部分分别代表活动轮廓模型中的外部能量和内部能量;外部能量使活动轮廓靠近物体的边缘或其他感兴趣的图像特征,而内部能量使轮廓保持光滑和连续性。

活动轮廓模型主要分为两类:参数活动轮廓模型和几何活动轮廓模型,后者具有更优越的拓扑性能,前者能直接以参数化形式表达轮廓曲线的运动(变形),允许人们与模型直接交互,并且参数表达形式简单,有利于参数活动轮廓模型的快速实时实现。

本文采用Snake 参数活动轮廓模型。

Snake 模型先构造一个能量函数,然后利用变分法对该能量函数极小化,得到模型演化的偏微分方程,使得轮廓线在到达目标边界时因为能量函数达到最小值而自动停止。

参数活动轮廓模型可以描述为二维图像I(x,y)内一条参数曲线集:。

能量定义如下:(1)其中:为轮廓弹性势能;为轮廓弯曲势能;;;;α、β、ω为加权因子。

和构成内部能量,为外部能量,图像边缘点的梯度最大时外部能量最小。

Snake 的运动过程就是曲线能量函数最小化的过程,在内部和外部能量的共同作用下,轮廓曲线沿能量降低方向演化,当能量函数Etotal 曲线运动停止即收敛到目标位置。

Snake 模型的计算步骤:(1)根据具体的应用情景,定义适当的能量函数,并给出合理的初始曲线;(2)利用变分法得到能量函数的欧拉方程;(3)迭代求解欧拉方程,直到函数能量最小为止。

此时得到的曲线即为最终求解结果。

3图像匹配算法实验使用的视觉系统光轴平行,成像平面平行。

根据极线原理,同一点在左右像平面上的投影点位置应纵坐标相同,横坐标方向有偏移,得到的两条极线共线。

但是,通常双目设备的光轴和成像平面不可能达到完全平行,匹配点在纵坐标方向上也会有偏移,如图2所示。

a)左图b)右图图2非严格平行的双目系统获得的图像对在上述情况下,物体上的一点P 在左右图上的对应点P L (x L,y L )、Pr(x R ,y R )的位置如图2所示。

以左图上的点(x L ,y L )为参考点,将理论上的极线沿纵坐标正负方向分别平移δ像素,使y R ∈(y L -δ,y L +δ)。

由于人为使双目系统尽量逼近平行,故较小的δ取值便可满足前面的要求。

其次,根据双目成像光学原理,同一空间点在右图像上投影偏右,列坐标值较大,即x L <x R 。

假设水平坐标的偏移量在[d1,d2]范围内,则x R ∈(x L +d1,x L +d2)。

综上所述,可以选取一个矩形框包含上述列和行,如图2中右图内方框。

该方框包含了正确的匹配点,覆盖全部或部分P 点所在的物体。

以上述方框为Snake 模型的初始曲线,通过Snake 模型提取物体边界。

最后,采用邻域差值模板匹配法,在物体轮廓范围内进行匹配。

邻域差值模板匹配算法原理如图3所示。

邻域差值模板是指间隔一定距离的两点对应的像素邻域的灰度差值,即在点P L 邻域取一个大小为w ×h 的区域M1,然后再在与它间隔一定距离的另一点取同样大小的区域M2,计算两个区域的差值作为待匹配点的特征值base=M2-M1。

在匹配过程中,每搜索到第二幅图像中(限定在搜索范围内)的一个点时,用同样的方法计算该点的特征值match=N2-N1,并依次与base 进行比较,|match-base|最小点就是最佳匹配点。

图3基于邻域差值模板的匹配方法该算法与区域相关法一样是按点求取视差的,所以能够得到浓密的视差图,但不是以相关值的大小作为匹配的标准,而是取特定的特征模板作为匹配基元,这样就不用计算相关,从而大大提高了匹配的速度。

所选取的特征模板反映了图像点的结构特征,具有对光照影响不敏感的特点,保证了匹配的效果。

算法流程图如图4所示。

图4匹配流程图若接下来选择的待匹配点与之前的空间点在同一物体上,则无需再次进行轮廓提取,可直接在之前得到的物体轮廓范围内进行匹配,耗时大幅较少。

相关文档
最新文档