CN105335952B - 匹配代价计算方法和装置、以及视差值计算方法和设备 - Google Patents
匹配代价计算方法和装置、以及视差值计算方法和设备 Download PDFInfo
- Publication number
- CN105335952B CN105335952B CN201410277105.1A CN201410277105A CN105335952B CN 105335952 B CN105335952 B CN 105335952B CN 201410277105 A CN201410277105 A CN 201410277105A CN 105335952 B CN105335952 B CN 105335952B
- Authority
- CN
- China
- Prior art keywords
- pixel
- value
- power flow
- representative
- picture
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本申请公开了一种匹配代价计算方法和装置、以及视差值计算方法和设备。该匹配代价计算方法包括:在参考图像中确定用于参考像素的参考代表性像素集合,参考代表性像素集合包括参考像素、和处于参考像素的第一预定邻域中的并且其显著程度大于阈值的至少一个像素;在目标图像中确定用于目标像素的目标代表性像素集合,目标代表性像素集合包括目标像素、和处于目标像素的第一预定邻域中的并且其显著程度大于阈值的至少一个像素;以及根据参考代表性像素集合中每一个像素的像素值、和目标代表性像素集合中每一个像素的像素值,来计算参考像素与目标像素之间的匹配代价。因此,可以得到可区分的匹配代价,进而得到正确的视差信息。
Description
技术领域
本申请一般地涉及数字图像处理领域,更具体地,本申请涉及一种匹配代价计算方法和装置、以及视差值计算方法和设备。
背景技术
立体匹配方法在诸如机器人、监控以及智能车辆等众多领域中有着广泛的应用。通过立体匹配方法得到的视差信息(或称之为,深度信息)可以用来估计图像捕捉设备和物体之间的相对距离。例如,以智能车辆为例,通过由立体匹配方法获得的视差信息,可以容易地检测路面、白线和栅栏,进而检测例如行人和车辆等目标并对目标进行分类,由此能够全面掌控车辆的整体行驶状况。
立体匹配方法的基本原理是对通过图像捕捉设备(例如,立体相机)所拍摄的两个不同视角下(当双目相机时)或更多个不同视角下(当多目相机时)同一物体的图像进行比较,通过寻找对应像素来计算图像的像素点之间的位置偏差,从而得到视差信息,并依据该视差信息来绘制视差图像。
常用的立体匹配方法包括局部立体匹配方法(例如,块匹配方法)、全局立体匹配方法(例如,动态规划方法)、和半全局立体匹配方法(例如,半全局匹配(SGM)方法),其通常都包含下面的四个步骤或其中的几步:匹配代价计算、支持求和、视差计算/优化、和视差改进,其中匹配代价计算是这几个步骤中最为关键的步骤。
通常来说,目前的匹配代价计算方法,对于待计算匹配代价的像素,选择与其具有相近属性或处于其固定位置的相邻像素,并且根据待计算匹配代价的像素及其相邻像素所包括的像素信息,来计算多视角图像的对应像素之间的匹配代价。
然而,由于在选择相邻像素的上述过程中没有充分考虑所选择的像素在相关图像中是否具有代表性信息,所以很可能会得到不可区分的匹配代价,进而在后续步骤中得到错误的视差信息。
发明内容
为了解决上述技术问题,根据本申请的一个方面,提供了一种匹配代价计算方法,所述方法用于计算参考图像中的参考像素与目标图像中的目标像素之间的匹配代价,所述参考图像和所述目标图像属于一个原始图像对,并且所述方法包括:在所述参考图像中确定用于所述参考像素的参考代表性像素集合,所述参考代表性像素集合包括所述参考像素、和处于所述参考像素的第一预定邻域中的并且其显著程度大于阈值的至少一个像素;在所述目标图像中确定用于所述目标像素的目标代表性像素集合,所述目标代表性像素集合包括所述目标像素、和处于所述目标像素的所述第一预定邻域中的并且其显著程度大于所述阈值的至少一个像素;以及根据所述参考代表性像素集合中每一个像素的像素值、和所述目标代表性像素集合中每一个像素的像素值,来计算所述参考像素与所述目标像素之间的匹配代价。
此外,根据本申请的另一方面,提供了一种视差值计算方法,所述方法用于计算参考图像中的参考像素与目标图像中的匹配像素之间的视差值,所述参考图像和所述目标图像属于一个原始图像对,并且所述方法包括:确定多个目标像素;针对每一个目标像素,分别计算参考支持像素集合中每一个第一像素和与其对应的目标支持像素集合中对应第二像素之间的匹配代价,所述参考支持像素集合包括在所述参考图像中处于所述参考像素的第二预定邻域中的至少一个像素,并且所述目标支持像素集合包括在所述目标图像中处于所述目标像素的所述第二预定邻域中的至少一个像素;针对每一个目标像素,通过对所计算出的所有匹配代价进行求和来获得所述参考像素与所述目标像素之间的总体匹配代价;以及至少根据所述参考像素与所述多个目标像素之间的多个总体匹配代价来在所述多个目标像素中确定所述匹配像素,从而确定所述参考像素与所述匹配像素之间的视差值,其中,分别计算参考支持像素集合中每一个第一像素和与其对应的目标支持像素集合中对应第二像素之间的匹配代价包括:在所述参考图像中确定用于所述第一像素的第一代表性像素集合,所述第一代表性像素集合包括所述第一像素、和处于所述第一像素的第一预定邻域中的并且其显著程度大于阈值的至少一个像素;在所述目标图像中确定用于所述第二像素的第二代表性像素集合,所述第二代表性像素集合包括所述第二像素、和处于所述第二像素的所述第一预定邻域中的并且其显著程度大于所述阈值的至少一个像素;以及根据所述第一代表性像素集合中每一个像素的像素值、和所述第二代表性像素集合中每一个像素的像素值,来计算所述第一像素与所述第二像素之间的匹配代价。
根据本申请的又一方面,提供了一种匹配代价计算装置,所述装置用于计算参考图像中的参考像素与目标图像中的目标像素之间的匹配代价,所述参考图像和所述目标图像属于一个原始图像对,并且所述装置包括:参考集合确定单元,用于在所述参考图像中确定用于所述参考像素的参考代表性像素集合,所述参考代表性像素集合包括所述参考像素、和处于所述参考像素的第一预定邻域中的并且其显著程度大于阈值的至少一个像素;目标集合确定单元,用于在所述目标图像中确定用于所述目标像素的目标代表性像素集合,所述目标代表性像素集合包括所述目标像素、和处于所述目标像素的所述第一预定邻域中的并且其显著程度大于所述阈值的至少一个像素;以及匹配代价计算单元,用于根据所述参考代表性像素集合中每一个像素的像素值、和所述目标代表性像素集合中每一个像素的像素值,来计算所述参考像素与所述目标像素之间的匹配代价。
根据本申请的又一方面,提供了一种视差值计算设备,所述设备用于计算参考图像中的参考像素与目标图像中的匹配像素之间的视差值,所述参考图像和所述目标图像属于一个原始图像对,并且所述设备包括:目标像素确定装置,用于确定多个目标像素;匹配代价计算装置,用于针对每一个目标像素,分别计算参考支持像素集合中每一个第一像素和与其对应的目标支持像素集合中对应第二像素之间的匹配代价,所述参考支持像素集合包括在所述参考图像中处于所述参考像素的第二预定邻域中的至少一个像素,并且所述目标支持像素集合包括在所述目标图像中处于所述目标像素的所述第二预定邻域中的至少一个像素;总体代价获得装置,用于针对每一个目标像素,通过对所计算出的所有匹配代价进行求和来获得所述参考像素与所述目标像素之间的总体匹配代价;以及视差值计算装置,用于至少根据所述参考像素与所述多个目标像素之间的多个总体匹配代价来在所述多个目标像素中确定所述匹配像素,从而确定所述参考像素与所述匹配像素之间的视差值,其中,所述匹配代价计算装置通过以下操作来分别计算参考支持像素集合中每一个第一像素和与其对应的目标支持像素集合中对应第二像素之间的匹配代价:在所述参考图像中确定用于所述第一像素的第一代表性像素集合,所述第一代表性像素集合包括所述第一像素、和处于所述第一像素的第一预定邻域中的并且其显著程度大于阈值的至少一个像素;在所述目标图像中确定用于所述第二像素的第二代表性像素集合,所述第二代表性像素集合包括所述第二像素、和处于所述第二像素的所述第一预定邻域中的并且其显著程度大于所述阈值的至少一个像素;以及根据所述第一代表性像素集合中每一个像素的像素值、和所述第二代表性像素集合中每一个像素的像素值,来计算所述第一像素与所述第二像素之间的匹配代价。
与现有技术相比,本申请的实施例提供了一种匹配代价计算方法和装置,其中将支撑结构信息的概念引入到匹配代价计算过程中,这里支撑结构信息是指一些具有代表性的相邻像素。也就是说,在本申请的实施例中提供了一种基于支撑结构的匹配代价计算方法,以用于立体匹配方法。在根据本申请实施例的匹配代价计算方法中,能够在对于待计算匹配代价的像素选择相邻像素的过程中,充分考虑所选择的像素在相关图像中是否具有代表性信息,自适应地选择具有代表性的相邻像素,而不是简单地选择与其具有相近属性或处于其固定位置的相邻像素,并且通过选择这些具有代表性信息的相邻像素,可以得到可区分的匹配代价,进而在后续步骤中得到正确的视差信息。
此外,本申请的实施例还提供了一种视差值计算方法和设备,其中将支撑结构信息的概念引入到匹配代价计算过程中,能够在对于待计算匹配代价的像素选择相邻像素的过程中,充分考虑所选择的像素在相关图像中是否具有代表性信息,自适应地选择具有代表性的相邻像素,而不是简单地选择与其具有相近属性或处于其固定位置的相邻像素,并且通过选择这些具有代表性信息的相邻像素,可以得到可区分的匹配代价,进而将可区分的匹配代价应用于各种立体匹配算法,从而得到了正确的视差信息。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本申请的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请,并不构成对本申请的限制。在附图中:
图1A是图示了根据现有技术的基于绝对灰度差之和的匹配算法的原理图。
图1B是图示了根据现有技术的基于平方灰度差之和的匹配算法的原理图。
图1C是图示了根据现有技术的基于基本统计普查(Census)变换的匹配算法
图1D是图示了根据现有技术的基于第一增强Census变换的匹配算法。
图1E是图示了根据现有技术的基于第二增强Census变换的匹配算法。
图2A是图示了根据由双目相机在左侧视角中拍摄到的左图像的示意图。
图2B是图示了根据现有技术的基于第二增强统计普查变换的匹配算法所得到的视差图。
图3是图示了根据本申请实施例的匹配代价计算方法的总体流程图。
图4是图示了根据本申请实施例第一具体示例的匹配代价计算方法的流程图。
图5A是图示了在第一情况下计算像素的显著程度的示意图。
图5B是图示了在第二情况下计算像素的显著程度的示意图。
图6A是图示了在第一情况下确定对应像素的示意图。
图6B是图示了在第二情况下确定对应像素的示意图。
图7是图示了根据本申请实施例第二具体示例的匹配代价计算方法的流程图。
图8A是图示了在第一情况下左图像的Census变换结果的示意图。
图8B是图示了在第二情况下左图像的Census变换结果的示意图。
图9是图示了根据本申请实施例的视差值计算方法的总体流程图。
图10A是图示了根据现有技术的基于第二增强统计普查变换的匹配算法所得到的视差图。
图10B是图示了根据本申请实施例的视差值计算方法所得到的视差图。
图11图示了根据本申请实施例的匹配代价计算装置的功能配置框图。
图12图示了根据本申请实施例的视差值计算设备的功能配置框图。
图13图示了根据本申请实施例的视差值计算***的功能结构图。
图14图示了根据本申请实施例的用于视差值计算的硬件***的总体硬件框图。
具体实施方式
将参照附图详细描述根据本申请的各个实施例。这里,需要注意的是,在附图中,将相同的附图标记赋予基本上具有相同或类似结构和功能的组成部分,并且将省略关于它们的重复描述。
为了使本领域技术人员更好地理解本申请,将按下列顺序来对本申请作进一步详细说明。
1、现有技术的简要介绍
2、本申请的思想概述
3、匹配代价计算方法
3.1、第一具体示例
3.2、第二具体示例
4、视差值计算方法
5、匹配代价计算装置
6、视差值计算设备
7、视差值计算***
8、用于视差值计算的硬件***
1、现有技术的简要介绍
在对本申请的实施例进行描述之前,为了便于理解,将首先简要地介绍根据现有技术的匹配代价计算方法的技术原理及其技术问题。
作为立体匹配方法中的关键步骤,当前,主要存在两类匹配代价计算方法,用于计算多视角图像的对应像素之间的匹配代价。下面,为了便于描述,将以通过图像捕捉设备针对同一物体所拍摄到的多视角图像集合是仅仅包括参考图像和目标图像两个图像的原始图像对为例进行说明。
第一类匹配代价计算方法可以利用参考图像中某一个参考像素的信息、和与之具有相近属性的相邻像素的信息、以及目标图像中某一个目标像素的信息、和与之具有相近属性的相邻像素的信息,来计算该参考像素与该目标像素之间的匹配代价。
需要说明的是,在下面的描述中,在不对参考像素和目标像素进行区分时,可以简单地将两者统称为中心像素。
具体地,作为第一类匹配代价计算方法的示例,在现有技术中存在一种基于灰度相似性的匹配算法,其在选择与中心像素具有相近属性的相邻像素时,根据灰度相似性来对当前的中心像素构建一个连通的像素序列(即,一条自适应曲线),并且以此作为匹配元素来执行三级匹配方法,从而计算出参考图像与目标图像中的中心像素之间的匹配代价。换言之,该匹配算法利用灰度相似性来构建匹配元素,以选择由与中心像素具有灰度相似性的像素构建而成的一个连通像素序列作为匹配元素。
相对地,第二类匹配代价计算方法可以利用参考图像中某一个参考像素的信息、和处于其固定位置的相邻像素的信息、以及目标图像中某一个目标像素的信息、和处于其固定位置的相邻像素的信息,来计算该参考像素与该目标像素之间的匹配代价。
具体地,目前,第二类匹配代价计算方法主要包括基于绝对灰度差之和(SAD)的匹配算法、基于平方灰度差之和(SSD)的匹配算法、和基于统计普查(Census)变换的匹配算法。
下面,首先,将参考图1A和图1B来描述根据现有技术的SAD匹配算法和SSD匹配算法。
图1A是图示了根据现有技术的基于绝对灰度差之和的匹配算法的原理图,并且图1B是图示了根据现有技术的基于平方灰度差之和的匹配算法的原理图。
需要说明的是,为了描述方便,仍然假设针对同一物体所拍摄到的多视角图像集合是一对原始图像,其由通过双目相机在左右视角中拍摄到的参考图像和目标图像组成,并且假设该参考图像和目标图像是灰度图,也就是说,图像中的每一个像素具有各自的灰度值。此外,进一步假设该参考图像是由双目相机在左侧视角中拍摄到的左图像,而该目标图像是由双目相机在右侧视角中拍摄到的右图像,也就是说,在附图中,左边的9个像素来自左图像,右边的9个像素来自右图像,并且在它们之间存在一个已知的位置偏差。
基于上述假设,如图1A所图示的,为了计算参考图像中的某一个参考像素与目标图像中的某一个目标像素之间的匹配代价(在这里假设:该参考像素是图1A所示的左图像中具有灰度值为166的中心像素,并且该目标像素是图1A所示的右图像中具有灰度值为165的中心像素),SAD匹配算法包括:在参考图像中选择参考像素周围3×3邻域中的相邻像素;在目标图像中选择目标像素周围的相同邻域(即,3×3邻域)中的相邻像素;逐一地计算左边某一位置处的特定像素的灰度值与右边相同位置处的对应像素的灰度值之间的差值的绝对值(即,绝对灰度差)(例如,在图1A中,左图像中具有灰度值为135的左上角像素对应于右图像中具有灰度值为133的左上角像素,并且以此类推);并且通过对全部9个位置的绝对灰度差进行求和来获得该参考像素与该目标像素之间的匹配代价,即C=9。
如图1B所图示的,SSD匹配算法与SAD匹配算法的不同之处在于:在选定中心像素周围的相邻像素之后,逐一地计算左边某一位置处的特定像素的灰度值与右边相同位置处的对应像素的灰度值之间的差值的平方值(即,平方灰度差);并且通过对全部9个位置的平方灰度差进行求和来获得该参考像素与该目标像素之间的匹配代价,即C=18。
一般地,SAD匹配算法和SSD匹配算法都是基于以下假设,即认为参考图像和目标图像中的同一像素点在理想光照条件下应该具有相同的灰度值。然而,在实际使用时,由于图像捕捉设备容易受到外部因素(例如,光照变化、视角改变、遮挡和形变等)的影响,而使得采集到的图像与理想情况相差较大(例如,左图像和右图像可能处在不同的光照条件下),从而导致通过上述算法所得到的最终结果性能不佳。
为了克服上述问题并且获得更加鲁棒的匹配性能,进一步提出了Census变换匹配算法。Census变换匹配算法在匹配代价计算方法中也很常见,其先在左图像和右图像选取邻域并对邻域进行Census变换,再进行匹配代价计算。
具体而言,与SAD匹配和SSD匹配算法相似地,Census变换匹配算法仍然通过中心像素和处于其固定位置的相邻像素的像素信息来计算该中心像素之间的匹配代价。然而,与SAD匹配和SSD匹配算法不同地,Census变换匹配算法是利用邻近像素灰度值之间的大小关系、而非像素灰度值本身来作为相似性测度,从而使得抗外部因素影响的能力得到增强。
目前,主要的Census变换匹配算法主要包括三种类型:基本Census变换匹配算法、第一增强Census变换匹配算法、和第二增强Census变换匹配算法。
接下来,将参考图1C到图1E来描述根据现有技术的三种Census匹配算法。
图1C是图示了根据现有技术的基于基本统计普查(Census)变换的匹配算法,图1D是图示了根据现有技术的基于第一增强Census变换的匹配算法,并且图1E是图示了根据现有技术的基于第二增强Census变换的匹配算法。
如图1C所图示的,为了计算参考图像中的某一个参考像素与目标图像中的某一个目标像素之间的匹配代价(在这里假设:该参考像素是图1C所示的左图像中具有灰度值为166的中心像素,并且该目标像素是图1C所示的右图像中具有灰度值为165的中心像素),基本Census变换匹配算法包括:在参考图像中选择参考像素周围3×3邻域中的相邻像素;在目标图像中选择目标像素周围的相同邻域(即,3×3邻域)中的相邻像素;分别对单幅图像中的窗口区域进行Census变换,即通过图1C中所示的公式,分别在左图像和右图像中以中心像素的灰度值I0作为阈值,来对3×3邻域内8个相邻像素的灰度值Ii进行单比特二值化处理,从而得到用于左图像中8相邻像素的二进制串10111101、和用于右图像中8相邻像素的二进制串10111100;并且通过计算两个二进制串之间的汉明距离来获得该参考像素与该目标像素之间的匹配代价,即C=1。
如图1D所图示的,与基本Census变换匹配算法不同地,第一增强Census变换匹配算法在分别对单幅图像中的窗口区域进行Census变换时,使用图1D中所示的公式,即分别在左图像和右图像中以中心像素的灰度值I0和一个容忍度δ(可以根据经验值设定)作为阈值,来对3×3邻域内8个相邻像素的灰度值Ii进行两比特二值化处理,从而得到用于左图像中8相邻像素的二进制串0100010100010000、和用于右图像中8相邻像素的二进制串0100000100010000;并且通过计算两个二进制串之间的汉明距离来获得该参考像素与该目标像素之间的匹配代价,即C=1。
进一步地,为了获得更加准确的匹配代价,如图1E所图示的,在第二增强Census变换匹配算法中,可以考虑与第一增强Census变换匹配算法相比范围更大的邻域和图案更为复杂的相邻像素,如中心像素周围的深色像素点所示。
综上所述,在现有技术中,无论是第一类匹配代价计算方法,还是第二类匹配代价计算方法,在计算中心像素之间的匹配代价时,或者基于固定位置或者基于相近属性而对参考像素和目标像素选择邻域结构,并且使得邻域中的每个像素均具有相同的权重。
因此,可以看出,由于现有技术没有充分考虑邻域结构中的相邻像素在相关图像中是否是具有代表性信息的像素,所以可能会产生不可区分的匹配代价,进而在后续步骤中得到错误的视差信息。尤其是当在原始图像(例如,左图像或右图像中)的某一区域中的各个像素值之间的变化量较小(例如,缺少纹理)时,使用上述现有技术将无法获得关于该区域的性能良好的视差图。
下面,将参考图2A和图2B来描述根据现有技术的立体匹配算法的缺陷。
图2A是图示了根据由双目相机在左侧视角中拍摄到的左图像的示意图,并且图2B是图示了根据现有技术的基于第二增强统计普查变换的匹配算法所得到的视差图。
具体地,如图2A所图示的,在双目相机在左侧视角中拍摄到的左图像中,可以看出,在路面区域中几乎没有任何纹理。在此情况下,即使在对于该区域使用了在现有技术中性能相对优秀的基于第二增强Census变换匹配算法的SGM方法,在路面上也仍然无法计算得出太多正确的视差值。最后,在经过视差改进步骤(例如,滤噪)而使得错误的视差值被滤除之后,在如图2B所图示的最终视差图中,在路面上几乎没有任何视差值。显然,这样的结果是无法令人满意的。
2、本申请的思想概述
下面,将首先简要地描述本申请的主要思想。
为了解决现有技术中的技术问题,在本申请中提出了一种匹配代价计算方法和装置、以及视差值计算方法和设备,其能够在对于待计算匹配代价的像素选择相邻像素的过程中,充分考虑所选择的像素在相关图像中是否具有代表性信息,自适应地选择具有代表性的相邻像素,而不是简单地选择与其具有相近属性或处于其固定位置的相邻像素,从而可以得到可区分的匹配代价,进而在后续步骤中得到正确的视差信息。
3、匹配代价计算方法
在下文中,将参考图3来描述根据本申请实施例的匹配代价计算方法的总体流程示例。
根据本申请实施例的匹配代价计算方法可以用于计算多视角图像的对应像素之间的匹配代价。
一般地,该多视角图像可以是指通过图像捕捉设备(例如,立体相机)所拍摄的多个不同视角下同一物体的图像。显然,该多个不同视角可以包括两个以上的视角,并且所拍摄的图像可以由处于不同位置坐标的一系列像素点构成,该图像中的每一个像素点可以具有相同或不同的像素值。例如,该图像可以是灰度图,其中每一个像素点通过灰度值(Gray一个分量)来表示。替换地,该图像也可以是彩色图,其中每一个像素点通过彩色值(例如,RGB三个分量)来表示。
下面,为了便于描述,将以通过双目相机针对同一物体在左右视角中所拍摄到的双视角灰度图像作为该多视角图像的示例进行说明。例如,该双视角图像集合可以是指包括参考图像和目标图像两个灰度图像的原始图像对。具体地,可以假设该参考图像是由双目相机在左侧视角中拍摄到的左图像,而该目标图像是由双目相机在右侧视角中拍摄到的右图像。
然而,需要说明的是,本申请既可以应用于计算双视角图像的对应像素之间的匹配代价,也可以应用于计算更多视角图像的对应像素之间的匹配代价。此外,本申请可以同样地应用于灰度图或彩色图中的匹配代价操作。并且,也可以将右图像用作参考图像,并且将左图像用作目标图像。
图3是图示了根据本申请实施例的匹配代价计算方法的总体流程图。
如图3所示,该匹配代价计算方法可以包括:
在步骤S110中,在参考图像中确定用于参考像素的参考代表性像素集合。
当需要计算参考图像中的某一个参考像素与目标图像中的某一个目标像素之间的匹配代价时,可以首先在参考图像中对于参考像素选择具有代表性信息的相邻像素。
例如,相邻像素是否具有代表性信息可以通过其显著程度来判断。这里,一个相邻像素(或称之为,像素点)可以在整体图像中或者在部分区域中进行选择。具体地,为了减少计算设备的计算量并且提升计算效率,可以在参考像素的第一预定邻域中寻找其显著程度大于阈值的至少一个像素,作为上述相邻像素。
此外,该显著程度可以通过各种指标来进行权衡,例如,其可以是该像素的像素值(例如,灰度值)的跳变程度、该像素在参考图像中的稳定程度、该像素的结构特征、或其他特性等。
在这里,为了便于描述,可以将参考图像中的所述参考像素、和处于所述参考像素的第一预定邻域中的并且其显著程度大于阈值的至少一个像素统称为参考代表性像素集合、或者参考像素的支撑结构。
在步骤S120中,在目标图像中确定用于目标像素的目标代表性像素集合。
接下来,可以与步骤S110相似地,在目标图像中对于目标像素选择具有代表性信息的相邻像素。例如,为了准确地计算参考像素与目标像素之间的匹配代价,可以在参考图像与目标图像中相对于中心像素(分别地,参考图像中的参考像素、和目标图像中的目标像素)定义基于相同概念的支撑结构。也就是说,在目标图像中,该相邻像素同样可以是处于所述目标像素的所述第一预定邻域中的并且其显著程度大于所述阈值的至少一个像素。
类似地,为了便于描述,可以将目标图像中的所述目标像素、和处于所述目标像素的第一预定邻域中的并且其显著程度大于阈值的至少一个像素统称为目标代表性像素集合、或者目标像素的支撑结构。
此外,需要说明的是,尽管在这里将步骤S120描述为在步骤S110之后执行,但是在实践中,该步骤S120也可以在步骤S110之前执行或者两者同时执行。
在步骤S130中,计算参考像素与目标像素之间的匹配代价。
在确定出参考代表性像素集合和目标代表性像素集合之后,可以根据所述参考代表性像素集合中每一个像素的像素值、和所述目标代表性像素集合中每一个像素的像素值,来计算所述参考像素与所述目标像素之间的匹配代价。
具体地,首先,可以分别确定与所述参考代表性像素集合中的每一个像素对应的所述目标代表性像素集合中的对应像素。
例如,像素之间的这种对应关系可以是严格意义上的精确对应,其中两个像素的坐标必须完全对应。替换地,像素之间的这种对应关系也可以是具有一定容忍度的弹性对应,其中两个像素的坐标只要在一定容忍范围内对应即可。
然后,分别计算所述参考代表性像素集合中每一个像素和与其对应的所述目标代表性像素集合中对应像素之间的距离度量值。
该距离度量值可以取决于所采用的匹配代价算法而确定。例如,该距离度量值可以是对应像素之间的像素值差(例如,灰度差),或者也可以是对应像素之间的编码距离(例如,汉明距离)等。
此外,还可以根据当前正在处理的相邻坐标与中心坐标之间的相对位置关系来对上述的距离度量值分配加权处理,以获得具有更加准确度量性能的加权距离度量值。
最后,可以通过对所计算出的所述参考代表性像素集合中每一个像素和与其对应的所述目标代表性像素集合中对应像素之间的所有距离度量值进行求和,来获得所述参考像素与所述目标像素之间的匹配代价。
由此可见,本申请的实施例提供了一种匹配代价计算方法,其中将支撑结构信息的概念引入到匹配代价计算过程中,这里支撑结构信息是指一些具有代表性的相邻像素。也就是说,在本申请的实施例中提供了一种基于支撑结构的匹配代价计算方法,以用于立体匹配方法。在根据本申请实施例的匹配代价计算方法中,能够在对于待计算匹配代价的像素选择相邻像素的过程中,充分考虑所选择的像素在相关图像中是否具有代表性信息,自适应地选择具有代表性的相邻像素,而不是简单地选择与其具有相近属性或处于其固定位置的相邻像素,并且通过选择这些具有代表性信息的相邻像素,可以得到可区分的匹配代价,进而在后续步骤中得到正确的视差信息。
3.1、第一具体示例
在下文中,将参考图4到图6B来描述根据本申请实施例第一具体示例的匹配代价计算方法的总体流程。
根据本申请实施例第一具体示例的匹配代价计算方法用于计算参考图像中的参考像素与目标图像中的目标像素之间的匹配代价,其中该匹配代价通过对应像素之间的像素值差来进行测度。
在该第一具体示例中,仍然假设该参考图像是由双目相机在左侧视角中拍摄到的左图像,而该目标图像是由双目相机在右侧视角中拍摄到的右图像。该参考像素可以称为参考图像中的中心像素,并且该目标像素可以称为目标图像中的中心像素,两者之间具有一个已知的位置偏差,即两者在横坐标与纵坐标上具有偏差。
图4是图示了根据本申请实施例第一具体示例的匹配代价计算方法的流程图。
如图4所示,该匹配代价计算方法可以包括:
在步骤S210中,在参考图像中选择第一预定邻域。
例如,可以在所述参考图像(例如,左图像)中选择处于所述参考像素周围的并且具有预定形状的区域,作为所述第一预定邻域。
具体地,在参考图像中,参考像素作为中心像素。例如,可以以该参考像素为中心,并且在它周围确定一个宽高比为w×h的矩形区域。然而,本申请不限于此,参考像素也可以并非处于第一预定邻域的中心位置,而是处于距离第一预定邻域的中心偏移一定位置处,并且该第一邻域也可以是其他形状,诸如圆形、椭圆形、正方形等。
在步骤S220中,计算第一预定邻域中除了参考像素之外的至少一个像素的显著程度。
例如,该显著程度可以通过各种指标来进行权衡。
在第一情况下,该显著程度可以是该像素的像素值(例如,灰度值)的跳变程度。也就是说,具有代表性信息的相邻像素可以是处于灰度值跳变位置的灰度边缘像素。
这时,步骤S220可以通过以下操作来实现:在以所述参考像素为起点的多个不同方向中确定特定像素及其相邻像素之间的像素值跳变程度,并且将所述像素值跳变程度作为所述特定像素的显著程度。
图5A是图示了在第一情况下计算像素的显著程度的示意图。
参考图5A,可以在参考图像中,以参考像素(被标记为A)为中心,沿着多个不同方向进行扫描,直到所定义的第一预定邻域的区域边界为止。在图5A中,采用8个方向来完成上述扫描,即在中心像素向外的0°、45°、90°、135°、180°、225°、270°、315°方向中确定是否存在灰度跳变像素,并且扫描过程是从中心像素往区域边界进行的。然后,可以对于每个方向,标记灰度值跳变的位置。
具体地,对于某一方向r上的两个相邻像素Pr,i和Pr,i+1,如果它们之间的灰度值g(Pr,i)和g(Pr,i+1)的差别大于一个阈值η,也就是说,如果满足以下公式(1),则认为灰度值跳变情况发生,并且将像素Pr,i标记为跳变位置:
|g(Pr,i)-g(Pr,i+1)|>η 公式(1)
其中,η可以取经验值,并且在一个示例中,其可以根据灰度值的不同范围而取不同的值。
参考图5A所给出的来自左图像某个像素的支撑结构示例,在该图中,标记为字母A的圆代表中心像素,白色、灰色、暗色、黑色代表从小到大变化的灰度值,并且标记为字母B到P的圆代表最终标记出来的灰度值跳变位置。
然而,需要说明的是,本申请不限于此。还可以在更多或更少的方向中完成灰度值跳变的扫描,并且也可以在灰度值差别大于阈值时,将像素Pr,i+1、而不是像素Pr,i标记为跳变位置。
在第二情况下,该显著程度可以是该像素在参考图像中的稳定程度。也就是说,具有代表性信息的相邻像素可以是具有稳定性的像素。
这时,步骤S220可以通过以下操作来实现:通过对特定像素执行尺度不变特征描述来计算所述特定像素的尺度稳定程度,并且将所述尺度稳定程度作为所述特定像素的显著程度。
图5B是图示了在第二情况下计算像素的显著程度的示意图。
参考图5B,在给定一张原始图像(灰度或彩色)之后,本方法可以对该原始图像(或仅仅其中选定的w×h的第一预定领域)施加迭代高斯滤波来获得一簇图像,所述一簇图像中的每一幅图像对应于某一个特定的高斯滤波迭代次数。在图5B中,该次数以T表示,其中T是整数。例如,T=0表示相关图像是未施加高斯滤波的原始图像,T=1表示相关图像是施加了1次高斯滤波的原始图像,T=2表示相关图像是施加了2次高斯滤波的原始图像,如此类推。这一簇图像在图像处理技术中被称作原始图像的尺度空间。
然后,可以在尺度空间中寻找极值点,所述极值点即为尺度稳定程度较高的像素点。
例如,在本实施例中,该构建尺度空间和寻找极值点的步骤可以采用尺度不变特征变换(SIFT)算法来实现。然而,需要说明的是,本申请不限于此,该步骤还可以采用以下算法中的任何一种来实现:加速鲁棒特征(SURF)算法、和仿射性尺度不变特征变换(ASIFT)算法等。
在第三情况下,该显著程度可以是该像素在参考图像中的结构属性。也就是说,具有代表性信息的相邻像素可以是诸如角点像素之类的特定像素。
例如,可以计算用于表现一个像素点的本地邻域的强度结构的矩阵,并且通过该矩阵的特征值来判断该像素点是否是角点像素。
显然,本申请并不仅限于上述的三种情况。第一预定邻域中的某一个像素的显著程度也可以通过其他一个或多个特性进行确定。
在步骤S230中,将参考像素、和其显著程度大于阈值的所有像素的集合确定为参考代表性像素集合。
当在参考像素周围的第一预定邻域中确定出其显著程度大于阈值的所有像素之后,可以将参考图像中的所述参考像素、和处于所述参考像素的第一预定邻域中的并且其显著程度大于阈值的至少一个像素统称为参考代表性像素集合、或者参考像素的支撑结构。
在步骤S240中,在目标图像中选择第一预定邻域。
在步骤S250中,计算第一预定邻域中除了目标像素之外的至少一个像素的显著程度。
在步骤S260中,将目标像素、和其显著程度大于阈值的所有像素的集合确定为目标代表性像素集合。
由于步骤S240到S260分别对应于上述的步骤S210到S230,其区别仅仅在于,步骤S240到S260是针对目标图像(例如,右图像)中的目标像素来确定具有代表性的相邻像素的集合,所以在这里将省略其重复描述。
当在目标像素周围的第一预定邻域中确定出其显著程度大于阈值的所有像素之后,可以将目标图像中的所述目标像素、和处于所述目标像素的第一预定邻域中的并且其显著程度大于阈值的至少一个像素统称为目标代表性像素集合、或者目标像素的支撑结构。
在步骤S270中,分别确定与参考代表性像素集合中的每一个像素对应的目标代表性像素集合中的对应像素。
如上所述,由于已知参考像素与目标像素之间的横坐标和纵坐标上的位置偏差,并且还可以知道参考像素在参考图像中的坐标位置、和目标像素在目标图像中的坐标位置,同理,可以知道参考代表性像素集合中的每一个像素在参考图像中的坐标位置、和目标代表性像素集合中的每一个像素在目标图像中的坐标位置,所以可以根据各个像素的坐标来判断对于参考代表性像素集合中的某一个像素(例如,称之为第一像素)而言,在目标代表性像素集合中是否存在一个对应的目标像素(例如,称之为第二像素)。
在这里,需要说明的是,由于在实践中在进行匹配代价计算之前,往往需要对参考图像和目标图像进行高度校准,所以简单地,在参考像素与目标像素之间可以仅仅在横坐标上存在位置偏差Δx,而在纵坐标上已经校准为彼此相同。下面,为了方便,将以此为例继续说明。
例如,在左图像和右图像中像素点之间的对应关系可以是严格对应或弹性对应。
在第一情况下,两个像素的坐标可以是严格意义上的精确对应,也就是说,在左图像和右图像之间两个像素的坐标必须完全对应。
图6A是图示了在第一情况下确定对应像素的示意图。
如图6A所图示的,针对参考代表性像素集合中的某一个第一像素,可以首先确定参考代表性像素集合中的该第一像素在左图像中的第一坐标(x0,y0),然后对该第一坐标进行横坐标上的偏移,从而得到第二坐标(x0+Δx,y0),并且判断在目标代表性像素集合中是否存在其坐标是(x0+Δx,y0)的第二像素。
在第二情况下,两个像素的坐标可以是具有一定容忍度的弹性对应,也就是说,在左图像和右图像之间两个像素的坐标只要在一定容忍范围内对应即可。
图6B是图示了在第二情况下确定对应像素的示意图。
如图6B所图示的,针对参考代表性像素集合中的某一个第一像素,可以首先确定参考代表性像素集合中的该第一像素在左图像中的第一坐标(x0,y0),然后对该第一坐标进行横坐标上的偏移,从而得到第二坐标(x0+Δx,y0)。接下来,除了判断在目标代表性像素集合中是否存在其坐标是(x0+Δx,y0)的第二像素之外,还进一步判断在目标代表性像素集合中是否存在其坐标处于第二坐标周围的一个弹性对应邻域中的第二像素。
为此,可以在所述目标图像中选择处于第二坐标周围的并且具有预定形状的区域,作为该弹性对应邻域。例如,该弹性对应邻域可以是以第二坐标为中心的一个矩形区域、圆形区域或其他形状的区域。
例如,可以通过以下公式(2)来将该弹性对应邻域定义为一个矩形形形状:
|x-(x0+Δx)|<=1,同时|y-y0|<=1 公式(2)
其中,x是弹性对应邻域中某一个像素点的横坐标,并且y是弹性对应邻域中某一个像素点的纵坐标。
随后,可以将所述目标代表性像素集合中、其坐标处于所述弹性对应邻域中的第二像素确定为与所述第一像素对应的对应像素。
需要说明的是,当在弹性对应邻域中存在多个像素时,可以适当缩小弹性对应邻域的范围,或者直接选择其坐标与第二坐标距离最小的像素作为该第二像素。
此外,在确定弹性对应邻域时,除了可以使用坐标作为尺度基准之外,也可以使用其他度量值作为该尺度基准。例如,可以使用从中心像素到标记位置(即,具有代表性信息的相邻像素)的半径r和从水平向右到每条扫描线之间的夹角θ,作为用于形成弹性对应邻域的尺度基准。
在步骤S280中,分别计算参考代表性像素集合中每一个像素和与其对应的目标代表性像素集合中对应像素之间的像素差值。
如果在步骤S270中确定出对于参考代表性像素集合中的某一个像素(例如,称之为第一像素)而言,在目标代表性像素集合中存在一个对应的目标像素(例如,称之为第二像素),则可以计算两者之间的像素差值。例如,该像素差值可以是两者像素值(例如,灰度值)之间差值的绝对值(即,绝对灰度差)。替换地,该像素差值可以是两者像素值(例如,灰度值)之间差值的平方值(即,平方灰度差)。
然后,可以对于参考代表性像素集合中的每一个像素重复上述操作,以便分别得到所述参考代表性像素集合中每一个像素和与其对应的所述目标代表性像素集合中对应像素之间的像素差值。
此外,在一个示例中,在计算所述参考代表性像素集合中每一个像素和与其对应的所述目标代表性像素集合中对应像素之间的像素差值的过程中,可以不是向代表性像素集合中的每一个像素分配相同的权重值,而是根据代表性像素集合中的每一个像素与中心像素之间的位置关系来确定其权重系数,以便获得加权的像素差值。
具体地,在本申请中认为,在前面步骤中得到的代表性像素可以具有不同的权重,并且权重值可以与该代表性像素到中心像素之间的距离有关:距离中心像素越近,其权重越大;反之距离中心像素越远,其权重越小。替换地,作为不同的位置标识基准,该权重值也可以与该代表性像素的半径(r)和角度(θ)有关:处在不同角度的像素具有不同的权重;处在不同半径的像素具有不同的权重,且半径越小,权重越大,反之半径越大,权重越小。
这时,该分别计算参考代表性像素集合中每个像素和与其对应的目标代表性像素集合中对应像素之间的像素差值可以包括:根据所述参考代表性像素集合中的第一像素与所述参考像素之间的位置关系来确定第一权重系数;根据所述目标代表性像素集合中的第二像素与所述目标像素之间的位置关系来确定第二权重系数,所述第二像素是与所述参考代表性像素集合中的第一像素对应的所述目标代表性像素集合中的对应像素;计算所述第一像素和所述第二像素之间的像素差值;以及使用所述第一权重系数和所述第二权重系数,来对所述第一像素和所述第二像素之间的像素差值进行加权,以获得所述第一像素和所述第二像素之间的加权像素差值。
相反地,如果在步骤S270中确定出对于参考代表性像素集合中的第一像素而言,在目标代表性像素集合中并不存在任何对应的第二像素,则本方法可能无法继续完成上述像素差值的计算操作。
这时,为了保证本方法能够继续执行,在一个简单示例中,可以直接地忽略参考代表性像素集合中的第一像素,而继续处理参考代表性像素集合中的下一个像素。
然而,为了获得更加准确的匹配代价,在另一个示例中,可以将预定值设置为所述第一像素与所述第二像素之间的像素差值,其中,所述预定值大于所述参考代表性像素集合中每一个像素和与其对应的所述目标代表性像素集合中对应像素之间的像素差值中的最大值。
在步骤S290中,通过对所计算出的所有像素差值进行求和来获得参考像素与目标像素之间的匹配代价。
由此可见,在本申请实施例的第一具体示例中,能够在对于中心像素选择相邻像素的过程中,自适应地选择一些稀疏的像素作为匹配元素,它们是由中心像素的支撑结构(具有代表性的相邻像素,诸如,灰度/彩色边缘像素、关键点像素、和角点像素等)得到的,并且直接根据参考图像与目标图像之间中心像素和/或相邻像素的像素差值来得到可区分的匹配代价,进而将该匹配代价应用于后续的立体匹配算法中,以得到正确的视差信息。
3.2、第二具体示例
在下文中,将参考图7到图8B来描述根据本申请实施例第二具体示例的匹配代价计算方法的总体流程。
根据本申请实施例第二具体示例的匹配代价计算方法用于计算参考图像中的参考像素与目标图像中的目标像素之间的匹配代价,其中该匹配代价通过对应像素之间的数值化编码距离来进行测度。
图7是图示了根据本申请实施例第二具体示例的匹配代价计算方法的流程图。
如图7所示,该匹配代价计算方法可以包括:
在步骤S310中,在参考图像中选择第一预定邻域。
在步骤S320中,计算第一预定邻域中除了参考像素之外的至少一个像素的显著程度。
在步骤S330中,将参考像素、和其显著程度大于阈值的所有像素的集合确定为参考代表性像素集合。
在步骤S340中,在目标图像中选择第一预定邻域。
在步骤S350中,计算第一预定邻域中除了目标像素之外的至少一个像素的显著程度。
在步骤S360中,将目标像素、和其显著程度大于阈值的所有像素的集合确定为目标代表性像素集合。
在步骤S370中,分别确定与参考代表性像素集合中的每一个像素对应的目标代表性像素集合中的对应像素。
由于第二具体示例中的步骤S310到S370、以及后续的步骤S390分别对应于第一具体示例中的上述步骤S210到S270、以及步骤S290,所以在这里将省略其重复描述。
在步骤S375中,对所述参考代表性像素集合中的每一个像素进行数值化编码。
例如,可以以所述参考像素的像素值作为基准,根据所述参考代表性像素集合中每一个像素的像素值,来对所述参考代表性像素集合中的每一个像素进行数值化编码。例如,这种数值化编码可以是单比特二值化编码、两比特二值化处理等。
在步骤S380中,对所述目标代表性像素集合中的每一个像素进行数值化编码。
与步骤S375相似地,可以以所述目标像素的像素值作为基准,根据所述目标代表性像素集合中的每一个像素的像素值,来对所述目标代表性像素集合中的每一个像素进行数值化编码。
在步骤S385中,分别计算参考代表性像素集合中每一个像素和与其对应的目标代表性像素集合中对应像素之间的数值化编码距离。
在获得了参考代表性像素集合中每一个像素的数值化编码值和目标代表性像素集合中每一个像素的数值化编码值之后,可以以像素为单位来逐一地比较并且获得对应像素对之间的编码距离,以便在步骤S390中对编码距离求和来得到参考像素与目标像素之间的匹配代价。
在步骤S390中,通过对所计算出的所有数值化编码距离进行求和来获得参考像素与目标像素之间的匹配代价。
需要说明的是,尽管在上面的步骤S375到步骤S390中,以逐对应像素对地获得编码距离并且对所有对应像素之间的编码距离进行求和来获得参考像素与目标像素之间的匹配代价,然而,本申请不限于此。
在另一个示例中,还可以在步骤S375中将所得到的参考代表性像素集合中每一个像素的数值化编码值,根据像素在参考图像中的位置、按照一定的顺序而级联成一串数字,并且在步骤S380中对于目标代表性像素集合中每一个对应像素的数值化编码值执行相同的操作,以便在后续步骤中,直接比较所得到的两串数值之间的编码距离,从而更加方便地获得参考像素与目标像素之间的匹配代价。显然,在这样的处理中,由于在参考图像和目标图像中中心像素的编码是相同的,也就是说,两者之间的编码距离必然为0,因此,可以在所形成的一串数字中直接省略中心像素的数值化编码值,以在计算编码距离时节约处理资源。
为了有助理解,下面,将以参考代表性像素集合包括沿着多个方向扫描的灰度边缘像素为例进行说明。然而,无需赘述的是,步骤S375到S385同样可以应用诸如彩色边缘像素、关键点像素、和角点像素之类的其他代表性像素点。
例如,在步骤S375中,可以对于左图像,对于每个中心像素,在所有方向上,利用标记位置的灰度值以及中心像素的灰度值来直接计算左图像的左Census值。
计算左Census值的步骤可以采用任何一种Census变换匹配算法,例如,基本Census变换匹配算法、第一增强Census变换匹配算法、和第二增强Census变换匹配算法等。
例如,在左图像中,可以使用以下公式(3)来对参考代表性像素集合中的每一个像素的灰度值Ii进行两比特二值化处理,从而得到用于各个相邻像素的二进制串。
公式(3)
其中,I0是中心像素的灰度值,并且δ是容忍度,其可以根据经验值设定为常数。在一个示例中,δ也可以根据以下公式(4)、依据中心像素的灰度值I0来确定:
公式(4)
接下来,例如,在对参考代表性像素集合中的每一个像素的灰度值Ii进行两比特二值化处理之后,可以根据该像素的位置标识基准来将其编码到一个表格中,以便查找。
如上所述,为了标识参考代表性像素集合中的每一个像素,可以使用各种参数作为位置标识基准。
例如,在第一情况下,可以使用像素点在基于参考图像所构建的二维坐标系中的坐标(x,y)作为其位置标识基准。
图8A是图示了在第一情况下左图像的Census变换结果的示意图。
在图8A所示的表格中,x和y分别表示参考代表性像素集合中的每一个像素在基于参考图像所构建的二维坐标系中的横坐标和纵坐标,其中,该坐标系是以中心像素点为原点、水平向右为x轴正方向、竖直向上为y轴正方向所建立的直角坐标系,并且L(x,y)表示该参考代表性像素集合中每一个像素的Census编码值。
然后,可以在图8A中按照从上到下的顺序对左图像中所有的代表性像素点的Census值进行级联来生成左图像的左Census值,即001000001000010000010001001001。
替换地,在第二情况下,可以使用像素点在基于中心坐标所构建的角坐标系中的坐标(r,θ)作为其位置标识基准。
图8B是图示了在第二情况下左图像的Census变换结果的示意图。
在图8B所示的表格中,r表示从中心像素到标记位置的像素的半径,θ表示从水平向右到每条扫描线之间的夹角,并且L(r,θ)表示该参考代表性像素集合中每一个像素的Census编码值。在该表格中,Census变换为三值变换,*表示在该位置处没有数值。
然后,可以在图8B中按照从左到右、从上到下的顺序对左图像中所有的代表性像素点的Census值进行级联来生成左图像的左Census值,即001000001000010000010001001001。
显然,这两种左Census值的生成方式所得到的最终结果是一致的。
接下来,在步骤S380中,可以对于右图像,对于每个中心像素,在所有方向上,利用来自右图像的标记位置的灰度值以及中心像素的灰度值计算右图像的右Census值。
显然,本步骤的计算过程与上一步骤完全相同,因此,经计算,可以在右图像中得到目标代表性像素集合中的每一个像素的Census编码值R(x,y)或R(r,θ)。然后,通过按照与左图像中每一个代表性像素点之间的对应关系,来对右图像中所有的代表性像素点的Census值进行级联来生成右图像的右Census值。
最后,可以直接比较并获得左Census值和右Census值这两串数值之间的汉明距离,从而更加方便地获得参考像素与目标像素之间的匹配代价。
需要说明的是,如在第一具体示例中已经描述的,在上述步骤中所提及的左图像和右图像之间的对应像素可以是绝对对应关系或者弹性对应关系。
此外,当对于参考代表性像素集合中的第一像素而言,在目标代表性像素集合中并不存在任何对应的第二像素时,可以将一个大于对应像素之间的编码距离中的最大值的预定值设置为所述第一像素与所述第二像素之间的编码距离。例如,在上述示例中,通过上面的公式(3)可以知道,在两比特二值化的情况下,两个像素之间的最大编码距离为2。这时,可以将大于2的预定值(例如,3)设置为所述第一像素与所述第二像素之间的汉明距离。
另外,在计算左右图像中每一个代表性像素的Census编码值时,还可以进一步计算左图像和右图像中每个代表性像素的权重。
例如,在使用像素点在基于参考图像所构建的二维坐标系中的坐标(x,y)作为其位置标识基准的第一情况下,可以根据该代表性像素到中心像素之间的距离来设置权重值。由于在这里假设中心像素的坐标为原点坐标(0,0),所以直接根据该代表性像素的坐标来设置权重值。具体地,可以使用公式(5)来设置像素点(x,y)的权重值w(x,y):
公式(5)
其中,σX和σY为宽度参数,用于控制权重函数的作用范围。通过计算,分别得到左图像和右图像的权重函数:wl(x,y)和wr(x,y)。
这时,可以根据以下的公式(6)来计算得到左Census值和右Census值的加权汉明距离,即为匹配代价:
公式(6)
其中,wl(x,y)和wr(x,y)分别为左图像和右图像的权重函数,并且函数n(x)用于计算比特串x中1的个数。
替换地,在使用像素点在基于中心坐标所构建的角坐标系中的坐标(r,θ)作为其位置标识基准的第二情况下,可以根据该代表性像素到中心像素之间的距离和方向来设置权重值。例如,可以根据从中心像素到标记位置的半径r和从水平向右到每条扫描线之间的夹角θ来设置权重值。
由此可见,在本申请实施例的第二具体示例中,能够在对于中心像素选择相邻像素的过程中,自适应地选择具有代表性的相邻像素(诸如,灰度/彩色边缘像素、关键点像素、和角点像素等)。由于邻域中的像素具有不同的权重,所以本匹配代价计算方法更加鲁棒。然而,该方法可以对参考图像与目标图像之间中心像素和/或相邻像素进行数值化编码,并且根据对应像素之间的数值化编码距离来得到可区分的匹配代价,进而将该匹配代价应用于后续的立体匹配算法中,以得到正确的视差信息。
4、视差值计算方法
在利用根据本申请实施例的匹配代价计算方法得到参考图像中的参考像素与目标图像中的目标像素之间的匹配代价之后,可以根据该匹配代价来继续执行立体匹配方法中的后续步骤(例如,支持求和、视差计算/优化、和视差改进),以便最终计算得到参考图像中的参考像素与目标图像中的匹配像素之间的视差值。
图9是图示了根据本申请实施例的视差值计算方法的总体流程图。
如图9所示,该视差值计算方法可以包括:
在步骤S410中,确定多个目标像素。
如前文所述,立体相机可以拍摄得到同一物体在两个或更多个不同视角下的图像,即参考图像和目标图像。
为了计算参考图像中的参考像素与目标图像中的匹配像素之间的视差值,首先需要在目标图像中寻找到与参考图像中的参考像素匹配的匹配像素。为此,可以确定多个目标像素,作为候选的匹配像素。
如上所述,由于在实践中在进行匹配代价计算之前,往往需要对参考图像和目标图像进行高度校准,所以简单地,在参考像素与候选的匹配像素之间可以仅仅在横坐标上存在位置偏差Δx,并且该位置偏差Δx取决于立体相机参数,并因而是处于有限个像素范围内的。
因此,在假设参考像素在参考图像中的坐标为(x0,y0)时,只需要在目标图像中将位于坐标(x0,y0)到(x0+Δxmax,y0)中的有限个像素确定为目标像素即可。其中,上述像素的有限个数Δxmax可以根据经验值或实验值来确定。
在步骤S420中,针对每一个目标像素,分别计算参考支持像素集合中每一个第一像素和与其对应的目标支持像素集合中对应第二像素之间的匹配代价,所述参考支持像素集合包括在所述参考图像中处于所述参考像素的第二预定邻域中的至少一个像素,并且所述目标支持像素集合包括在所述目标图像中处于所述目标像素的所述第二预定邻域中的至少一个像素。
首先,可以在所述参考图像中确定用于所述参考像素的参考支持像素集合,所述参考支持像素集合(或称之为,参考像素的支持像素)包括处于所述参考像素的第二预定邻域中的至少一个像素。
一个像素的支持像素可以是与之具有近似的视差值的所有像素。例如,一种常用的方式是选择灰度图中目标像素的相邻像素(包括该目标像素本身),作为该目标像素的支持像素。替换地,可以另一种常用的方式是选择灰度图中与目标像素处于同一区域块上的相邻像素(包括该目标像素本身)作为该目标像素的支持像素。
然后,同理,可以在所述目标图像中确定用于所述目标像素的目标支持像素集合,所述目标支持像素集合包括处于所述目标像素的所述第二预定邻域中的至少一个像素。
接下来,可以根据像素的坐标,来分别确定与所述参考支持像素集合中的每一个像素对应的所述目标支持像素集合中的对应像素。
最后,可以使用上面描述的根据本申请实施例的匹配代价计算方法,针对每一个目标像素,分别计算参考支持像素集合中每一个第一像素和与其对应的目标支持像素集合中对应第二像素之间的匹配代价。
由于在上文中已经结合实施例和两个具体示例详细地描述了本申请实施例的匹配代价计算方法,所以在这里将省略其重复描述。
在步骤S430中,针对每一个目标像素,通过对所计算出的所有匹配代价进行求和来获得所述参考像素与所述目标像素之间的总体匹配代价。
例如,可以对所述匹配代价进行求和,并且将所述匹配代价之和作为所述参考像素与所述目标像素之间的总体匹配代价。
在步骤S440中,至少根据所述参考像素与所述多个目标像素之间的多个总体匹配代价来在所述多个目标像素中确定所述匹配像素,从而确定所述参考像素与所述匹配像素之间的视差值。
显然,根据本申请实施例的匹配代价计算方法可以应用于任意的立体匹配方法(例如,块匹配、SGM等)。也就是说,匹配代价计算方法的后续处理并非是本申请的关键所在,本领域技术人员可以利用任何现有的立体匹配方法基于匹配代价计算结果来确定视差值。
例如,对于块匹配方法而言,只需要通过寻找最小的总体(累计)匹配代价,即可在多个目标像素之中确定出匹配像素。对于SGM方法而言,可以进一步通过多方向动态规划并寻找最小累计匹配代价来确定出匹配像素。
最终,可以通过计算所述参考像素与所述匹配像素之间坐标距离来确定出两者之间的视差值。
下面,将参考图10A和图10B来描述根据本申请实施例的立体匹配算法的效果。
图10A是图示了根据现有技术的基于第二增强统计普查变换的匹配算法所得到的视差图,并且图10B是图示了根据本申请实施例的视差值计算方法所得到的视差图。
对比图10A和图10B可以看出,与现有技术中的立体匹配算法所获得的结果相比,根据本申请实施例的视差值计算方法所获得的视差图有更多正确的视差值,尤其是在无纹理的路面区域中,这种效果更加明显。在获得了这样的存在大量正确视差值的视差图之后,即使其中偶尔存在些许无效视差值,也可以利用后续操作(例如,平面拟合)来填充,以获得更加稠密的视差图。因此,可以看出,实验结果证明根据本申请实施例所提出的方法是确实有效的。
由此可见,本申请的实施例提供了一种视差值计算方法,其中将支撑结构信息的概念引入到匹配代价计算过程中,能够在对于待计算匹配代价的像素选择相邻像素的过程中,充分考虑所选择的像素在相关图像中是否具有代表性信息,自适应地选择具有代表性的相邻像素。也就是说,在该视差值计算方法中,可以利用了更具有代表性的信息(如,灰度边缘信息),使得该方法更鲁棒,计算得到的匹配代价更准确,由此得到的视差图也变得更为准确。
5、匹配代价计算装置
本申请的实施例还可以通过一种匹配代价计算装置来实施。在下文中,将参考图11来描述根据本申请实施例的匹配代价计算装置的功能配置框图。
图11图示了根据本申请实施例的匹配代价计算装置的功能配置框图。
如图11所示,该匹配代价计算装置100可以用于计算参考图像中的参考像素与目标图像中的目标像素之间的匹配代价,所述参考图像和所述目标图像属于一个原始图像对,并且所述装置可以包括:
参考集合确定单元110,用于在所述参考图像中确定用于所述参考像素的参考代表性像素集合,所述参考代表性像素集合包括所述参考像素、和处于所述参考像素的第一预定邻域中的并且其显著程度大于阈值的至少一个像素;
目标集合确定单元120,用于在所述目标图像中确定用于所述目标像素的目标代表性像素集合,所述目标代表性像素集合包括所述目标像素、和处于所述目标像素的所述第一预定邻域中的并且其显著程度大于所述阈值的至少一个像素;以及
匹配代价计算单元130,用于根据所述参考代表性像素集合中每一个像素的像素值、和所述目标代表性像素集合中每一个像素的像素值,来计算所述参考像素与所述目标像素之间的匹配代价。
在一个示例中,参考集合确定单元110可以通过以下操作来在所述参考图像中确定用于所述参考像素的参考代表性像素集合:在所述参考图像中选择处于所述参考像素周围的并且具有预定形状的区域,作为所述第一预定邻域;计算所述第一预定邻域中除了所述参考像素之外的至少一个像素的显著程度;以及将所述参考像素、和其显著程度大于所述阈值的所有像素的集合确定为所述参考代表性像素集合。
具体地,参考集合确定单元110可以通过以下各种方式中的至少一个来计算所述第一预定邻域中除了所述参考像素之外的至少一个像素的显著程度:在以所述参考像素为起点的多个不同方向中确定特定像素及其相邻像素之间的像素值跳变程度,并且将所述像素值跳变程度作为所述特定像素的显著程度;通过对特定像素执行尺度不变特征描述来计算所述特定像素的尺度稳定程度,并且将所述尺度稳定程度作为所述特定像素的显著程度;以及通过计算特定像素的强度结构来确定所述特定像素的结构属性,并且将所述结构属性作为所述特定像素的显著程度。
在一个示例中,匹配代价计算单元130可以通过以下操作来计算所述参考像素与所述目标像素之间的匹配代价:分别确定与所述参考代表性像素集合中的每一个像素对应的所述目标代表性像素集合中的对应像素;分别计算所述参考代表性像素集合中每一个像素和与其对应的所述目标代表性像素集合中对应像素之间的距离度量值;以及通过对所计算出的所有距离度量值进行求和来获得所述参考像素与所述目标像素之间的匹配代价。
例如,匹配代价计算单元130可以通过以下操作来分别确定与所述参考代表性像素集合中的每一个像素对应的所述目标代表性像素集合中的对应像素:确定所述参考代表性像素集合中的第一像素在所述参考图像中的第一坐标;在所述目标图像中选择处于第二坐标周围的并且具有预定形状的区域,作为弹性对应邻域,所述第二坐标与所述第一坐标之间具有预定偏移;以及将所述目标代表性像素集合中、其坐标处于所述弹性对应邻域中的第二像素确定为与所述第一像素对应的对应像素。
例如,匹配代价计算单元130可以通过以下各种方式中的任何一个来分别计算所述参考代表性像素集合中每一个像素和与其对应的所述目标代表性像素集合中对应像素之间的距离度量值:分别计算所述参考代表性像素集合中每一个像素和与其对应的所述目标代表性像素集合中对应像素之间的像素值差;以及以所述参考像素的像素值作为基准,根据所述参考代表性像素集合中每一个像素的像素值,来对所述参考代表性像素集合中的每一个像素进行数值化编码,以所述目标像素的像素值作为基准,根据所述目标代表性像素集合中的每一个像素的像素值,来对所述目标代表性像素集合中的每一个像素进行数值化编码,并且分别计算所述参考代表性像素集合中每一个像素和与其对应的所述目标代表性像素集合中对应像素之间的数值化编码距离。
例如,匹配代价计算单元130可以通过以下操作来分别计算所述参考代表性像素集合中每一个像素和与其对应的所述目标代表性像素集合中对应像素之间的距离度量值:根据所述参考代表性像素集合中的第一像素与所述参考像素之间的位置关系来确定第一权重系数;根据所述目标代表性像素集合中的第二像素与所述目标像素之间的位置关系来确定第二权重系数,所述第二像素是与所述参考代表性像素集合中的第一像素对应的所述目标代表性像素集合中的对应像素;计算所述第一像素和所述第二像素之间的距离度量值;以及使用所述第一权重系数和所述第二权重系数,来对所述第一像素和所述第二像素之间的距离度量值进行加权,以获得所述第一像素和所述第二像素之间的加权距离度量值。
例如,匹配代价计算单元130可以通过以下操作来分别计算所述参考代表性像素集合中每一个像素和与其对应的所述目标代表性像素集合中对应像素之间的距离度量值:当确定出在所述目标代表性像素集合中没有与所述参考代表性像素集合中的第一像素对应的第二像素时,将预定值设置为所述第一像素与所述第二像素之间的距离度量值,所述预定值大于所述参考代表性像素集合中每一个像素和与其对应的所述目标代表性像素集合中对应像素之间的距离度量值中的最大值。
上述参考集合确定单元110、目标集合确定单元120、和匹配代价计算单元130的具体功能和操作已经在上面参考图1到图10B描述的匹配代价计算方法中详细介绍,并因此,将省略其重复描述。
需要说明的是,上述匹配代价计算装置100的部件可以用软件程序来实现,例如通过通用计算机中的CPU结合RAM和ROM等以及其中运行的软件代码来实现。软件程序可以存储在诸如闪存、软盘、硬盘、光盘等存储介质上,在运行时加载到诸如随机访问存储器RAM上来由CPU执行。另外,除了通用计算机上,还可以通过专用集成电路和软件之间的合作来实现。所述集成电路包括通过例如MPU(微处理单元)、DSP(数字信号处理器)、FPGA(现场可编程门阵列)、ASIC(专用集成电路)等中的至少一个来实现。这样的通用计算机或者专用集成电路等例如可以装载在特定位置(例如,车辆)上,并且与安装在特定位置上的用于对道路和道路相关联的对象成像的成像设备例如照相机进行通信,以便对照相机拍摄获得的二维图像和/或立体图像提取支撑结构,进而计算加权匹配代价,以便稍后通过立体匹配算法后续步骤来计算视差值。另外,该匹配代价计算装置100的各个部件可以用专门的硬件来实现,例如特定的现场可编程门阵列、专用集成电路等。另外,匹配代价计算装置100的各个部件也可以利用软件和硬件的结合来实现。
6、视差值计算设备
本申请的实施例还可以通过一种视差值计算设备来实施。在下文中,将参考图12来描述根据本申请实施例的视差值计算设备的功能配置框图。
图12图示了根据本申请实施例的视差值计算设备的功能配置框图。
如图12所示,该视差值计算设备200可以用于计算参考图像中的参考像素与目标图像中的匹配像素之间的视差值,所述参考图像和所述目标图像属于一个原始图像对,并且所述设备可以包括:
目标像素确定装置210,用于确定多个目标像素;
匹配代价计算装置220,用于针对每一个目标像素,分别计算参考支持像素集合中每一个第一像素和与其对应的目标支持像素集合中对应第二像素之间的匹配代价,所述参考支持像素集合包括在所述参考图像中处于所述参考像素的第二预定邻域中的至少一个像素,并且所述目标支持像素集合包括在所述目标图像中处于所述目标像素的所述第二预定邻域中的至少一个像素;
总体代价获得装置230,用于针对每一个目标像素,通过对所计算出的所有匹配代价进行求和来获得所述参考像素与所述目标像素之间的总体匹配代价;以及
视差值计算装置240,用于至少根据所述参考像素与所述多个目标像素之间的多个总体匹配代价来在所述多个目标像素中确定所述匹配像素,从而确定所述参考像素与所述匹配像素之间的视差值,
其中,所述匹配代价计算装置220通过以下操作来分别计算参考支持像素集合中每一个第一像素和与其对应的目标支持像素集合中对应第二像素之间的匹配代价:在所述参考图像中确定用于所述第一像素的第一代表性像素集合,所述第一代表性像素集合包括所述第一像素、和处于所述第一像素的第一预定邻域中的并且其显著程度大于阈值的至少一个像素;在所述目标图像中确定用于所述第二像素的第二代表性像素集合,所述第二代表性像素集合包括所述第二像素、和处于所述第二像素的所述第一预定邻域中的并且其显著程度大于所述阈值的至少一个像素;以及根据所述第一代表性像素集合中每一个像素的像素值、和所述第二代表性像素集合中每一个像素的像素值,来计算所述第一像素与所述第二像素之间的匹配代价。
在一个示例中,该匹配代价计算装置220例如可以利用图11所示的匹配代价计算装置100的配置来实现。
7、视差值计算***
此外,本申请还可以通过一种视差值计算***来实施。在下文中,将参考图13来描述根据本申请实施例的视差值计算***的功能结构。
图13图示了根据本申请实施例的视差值计算***的功能结构图。
如图13所示,该视差值计算***300可以包括:用于对对象成像的成像设备310,如单目相机、双目相机、多目相机等等;视差值计算设备320,用于对来自成像设备210所拍摄获得的二维图像和/或立体图像提取支撑结构,进而计算加权匹配代价,以便通过立体匹配算法后续步骤来计算视差值,该视差值计算设备320例如可以利用图12所示的视差值计算设备200的配置来实现。
具体地,该视差值计算***300的输入为灰度图或彩色图等,例如可以由安装在特定位置处的双目相机来拍摄得到。该输入经过视差值计算设备之后,输出视差信息计算结果,输出形式可以是多样的,例如在显示器上输出可视形式的视差图。
8、用于视差值计算的硬件***
本申请还可以通过一种用于视差值计算的硬件***来实施。在下文中,将参考图14来描述根据本申请实施例的用于视差值计算的硬件***。
图14图示了根据本申请实施例的用于视差值计算的硬件***的总体硬件框图。
如图14所示,该匹配代价计算***400可以包括:输入设备410,用于从外部输入有关信息,例如灰度图、彩色图、相机设置信息等,例如可以包括键盘、鼠标器、以及通信网络及其所连接的远程输入设备等等,并且可以包括用于对对象成像的成像设备、以及用于对所形成的图像进行图像解码的解码设备等;处理设备420,用于实施上述的按照本申请实施例的视差值计算方法,或者实施为上述的视差值计算设备,例如可以包括计算机的中央处理器或其它的具有处理能力的芯片等等,可以连接到诸如因特网的网络(未示出),根据处理过程的需要向远程传送处理后的结果等等;输出设备430,用于向外部输出实施上述视差计算过程所得的结果,例如可以包括显示器、打印机、以及通信网络及其所连接的远程输出设备等等;以及存储设备440,用于以易失或非易失的方式存储上述视差值计算过程所涉及的数据,诸如视差图等数据,例如可以包括随机存取存储器(RAM)、只读存储器(ROM)、硬盘、或半导体存储器等等的各种易失或非易失性存储器。
在上面详细描述了本申请的各个实施例。然而,本领域技术人员应该理解,在不脱离本申请的原理和精神的情况下,可对这些实施例进行各种修改,组合或子组合,并且这样的修改应落入本申请的范围内。
Claims (10)
1.一种匹配代价计算方法,其特征在于,所述方法用于计算参考图像中的参考像素与目标图像中的目标像素之间的匹配代价,所述参考图像和所述目标图像属于一个原始图像对,并且所述方法包括:
在所述参考图像中确定用于所述参考像素的参考代表性像素集合,所述参考代表性像素集合包括所述参考像素、和处于所述参考像素的第一预定邻域中的并且其显著程度大于阈值的至少一个像素,其中,像素的显著程度由以下的至少一个表示:该像素的像素值的跳变程度、该像素在图像中的稳定程度、该像素的结构特征;
在所述目标图像中确定用于所述目标像素的目标代表性像素集合,所述目标代表性像素集合包括所述目标像素、和处于所述目标像素的所述第一预定邻域中的并且其显著程度大于所述阈值的至少一个像素;以及
根据所述参考代表性像素集合中每一个像素的像素值、和所述目标代表性像素集合中每一个像素的像素值,来计算所述参考像素与所述目标像素之间的匹配代价。
2.根据权利要求1的方法,其特征在于,在所述参考图像中确定用于所述参考像素的参考代表性像素集合包括:
在所述参考图像中选择处于所述参考像素周围的并且具有预定形状的区域,作为所述第一预定邻域;
计算所述第一预定邻域中除了所述参考像素之外的至少一个像素的显著程度;以及
将所述参考像素、和其显著程度大于所述阈值的所有像素的集合确定为所述参考代表性像素集合,
其中,计算所述第一预定邻域中除了所述参考像素之外的至少一个像素的显著程度包括以下各种方式中的至少一个:
在以所述参考像素为起点的多个不同方向中确定特定像素及其相邻像素之间的像素值跳变程度,并且将所述像素值跳变程度作为所述特定像素的显著程度;
通过对特定像素执行尺度不变特征描述来计算所述特定像素的尺度稳定程度,并且将所述尺度稳定程度作为所述特定像素的显著程度;
以及
通过计算特定像素的强度结构来确定所述特定像素的结构属性,并且将所述结构属性作为所述特定像素的显著程度。
3.根据权利要求1的方法,其特征在于,计算所述参考像素与所述目标像素之间的匹配代价包括:
分别确定与所述参考代表性像素集合中的每一个像素对应的所述目标代表性像素集合中的对应像素;
分别计算所述参考代表性像素集合中每一个像素和与其对应的所述目标代表性像素集合中对应像素之间的距离度量值;以及
通过对所计算出的所有距离度量值进行求和来获得所述参考像素与所述目标像素之间的匹配代价。
4.根据权利要求3的方法,其特征在于,分别确定与所述参考代表性像素集合中的每一个像素对应的所述目标代表性像素集合中的对应像素包括:
确定所述参考代表性像素集合中的第一像素在所述参考图像中的第一坐标;
在所述目标图像中选择处于第二坐标周围的并且具有预定形状的区域,作为弹性对应邻域,所述第二坐标与所述第一坐标之间具有预定偏移;以及
将所述目标代表性像素集合中、其坐标处于所述弹性对应邻域中的第二像素确定为与所述第一像素对应的对应像素。
5.根据权利要求3的方法,其特征在于,分别计算所述参考代表性像素集合中每一个像素和与其对应的所述目标代表性像素集合中对应像素之间的距离度量值包括以下各种方式中的任何一个:
分别计算所述参考代表性像素集合中每一个像素和与其对应的所述目标代表性像素集合中对应像素之间的像素值差;以及
以所述参考像素的像素值作为基准,根据所述参考代表性像素集合中每一个像素的像素值,来对所述参考代表性像素集合中的每一个像素进行数值化编码,以所述目标像素的像素值作为基准,根据所述目标代表性像素集合中的每一个像素的像素值,来对所述目标代表性像素集合中的每一个像素进行数值化编码,并且分别计算所述参考代表性像素集合中每一个像素和与其对应的所述目标代表性像素集合中对应像素之间的数值化编码距离。
6.根据权利要求3的方法,其特征在于,分别计算所述参考代表性像素集合中每一个像素和与其对应的所述目标代表性像素集合中对应像素之间的距离度量值包括:
根据所述参考代表性像素集合中的第一像素与所述参考像素之间的位置关系来确定第一权重系数;
根据所述目标代表性像素集合中的第二像素与所述目标像素之间的位置关系来确定第二权重系数,所述第二像素是与所述参考代表性像素集合中的第一像素对应的所述目标代表性像素集合中的对应像素;
计算所述第一像素和所述第二像素之间的距离度量值;以及
使用所述第一权重系数和所述第二权重系数,来对所述第一像素和所述第二像素之间的距离度量值进行加权,以获得所述第一像素和所述第二像素之间的加权距离度量值。
7.根据权利要求3的方法,其特征在于,分别计算所述参考代表性像素集合中每一个像素和与其对应的所述目标代表性像素集合中对应像素之间的距离度量值包括:
当确定出在所述目标代表性像素集合中没有与所述参考代表性像素集合中的第一像素对应的第二像素时,将预定值设置为所述第一像素与所述第二像素之间的距离度量值,所述预定值大于所述参考代表性像素集合中每一个像素和与其对应的所述目标代表性像素集合中对应像素之间的距离度量值中的最大值。
8.一种视差值计算方法,其特征在于,所述方法用于计算参考图像中的参考像素与目标图像中的匹配像素之间的视差值,所述参考图像和所述目标图像属于一个原始图像对,并且所述方法包括:
确定多个目标像素;
针对每一个目标像素,分别计算参考支持像素集合中每一个第一像素和与其对应的目标支持像素集合中对应第二像素之间的匹配代价,所述参考支持像素集合包括在所述参考图像中处于所述参考像素的第二预定邻域中的至少一个像素,并且所述目标支持像素集合包括在所述目标图像中处于所述目标像素的所述第二预定邻域中的至少一个像素;
针对每一个目标像素,通过对所计算出的所有匹配代价进行求和来获得所述参考像素与所述目标像素之间的总体匹配代价;以及
至少根据所述参考像素与所述多个目标像素之间的多个总体匹配代价来在所述多个目标像素中确定所述匹配像素,从而确定所述参考像素与所述匹配像素之间的视差值,
其中,分别计算参考支持像素集合中每一个第一像素和与其对应的目标支持像素集合中对应第二像素之间的匹配代价包括:
在所述参考图像中确定用于所述第一像素的第一代表性像素集合,所述第一代表性像素集合包括所述第一像素、和处于所述第一像素的第一预定邻域中的并且其显著程度大于阈值的至少一个像素,其中,像素的显著程度由以下的至少一个表示:该像素的像素值的跳变程度、该像素在图像中的稳定程度、该像素的结构特征;
在所述目标图像中确定用于所述第二像素的第二代表性像素集合,所述第二代表性像素集合包括所述第二像素、和处于所述第二像素的所述第一预定邻域中的并且其显著程度大于所述阈值的至少一个像素;以及
根据所述第一代表性像素集合中每一个像素的像素值、和所述第二代表性像素集合中每一个像素的像素值,来计算所述第一像素与所述第二像素之间的匹配代价。
9.一种匹配代价计算装置,其特征在于,所述装置用于计算参考图像中的参考像素与目标图像中的目标像素之间的匹配代价,所述参考图像和所述目标图像属于一个原始图像对,并且所述装置包括:
参考集合确定单元,用于在所述参考图像中确定用于所述参考像素的参考代表性像素集合,所述参考代表性像素集合包括所述参考像素、和处于所述参考像素的第一预定邻域中的并且其显著程度大于阈值的至少一个像素,其中,像素的显著程度由以下的至少一个表示:该像素的像素值的跳变程度、该像素在图像中的稳定程度、该像素的结构特征;
目标集合确定单元,用于在所述目标图像中确定用于所述目标像素的目标代表性像素集合,所述目标代表性像素集合包括所述目标像素、和处于所述目标像素的所述第一预定邻域中的并且其显著程度大于所述阈值的至少一个像素;以及
匹配代价计算单元,用于根据所述参考代表性像素集合中每一个像素的像素值、和所述目标代表性像素集合中每一个像素的像素值,来计算所述参考像素与所述目标像素之间的匹配代价。
10.一种视差值计算设备,其特征在于,所述设备用于计算参考图像中的参考像素与目标图像中的匹配像素之间的视差值,所述参考图像和所述目标图像属于一个原始图像对,并且所述设备包括:
目标像素确定装置,用于确定多个目标像素;
匹配代价计算装置,用于针对每一个目标像素,分别计算参考支持像素集合中每一个第一像素和与其对应的目标支持像素集合中对应第二像素之间的匹配代价,所述参考支持像素集合包括在所述参考图像中处于所述参考像素的第二预定邻域中的至少一个像素,并且所述目标支持像素集合包括在所述目标图像中处于所述目标像素的所述第二预定邻域中的至少一个像素;
总体代价获得装置,用于针对每一个目标像素,通过对所计算出的所有匹配代价进行求和来获得所述参考像素与所述目标像素之间的总体匹配代价;以及
视差值计算装置,用于至少根据所述参考像素与所述多个目标像素之间的多个总体匹配代价来在所述多个目标像素中确定所述匹配像素,从而确定所述参考像素与所述匹配像素之间的视差值,
其中,所述匹配代价计算装置通过以下操作来分别计算参考支持像素集合中每一个第一像素和与其对应的目标支持像素集合中对应第二像素之间的匹配代价:
在所述参考图像中确定用于所述第一像素的第一代表性像素集合,所述第一代表性像素集合包括所述第一像素、和处于所述第一像素的第一预定邻域中的并且其显著程度大于阈值的至少一个像素,其中,像素的显著程度由以下的至少一个表示:该像素的像素值的跳变程度、该像素在图像中的稳定程度、该像素的结构特征;
在所述目标图像中确定用于所述第二像素的第二代表性像素集合,所述第二代表性像素集合包括所述第二像素、和处于所述第二像素的所述第一预定邻域中的并且其显著程度大于所述阈值的至少一个像素;以及
根据所述第一代表性像素集合中每一个像素的像素值、和所述第二代表性像素集合中每一个像素的像素值,来计算所述第一像素与所述第二像素之间的匹配代价。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410277105.1A CN105335952B (zh) | 2014-06-19 | 2014-06-19 | 匹配代价计算方法和装置、以及视差值计算方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410277105.1A CN105335952B (zh) | 2014-06-19 | 2014-06-19 | 匹配代价计算方法和装置、以及视差值计算方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105335952A CN105335952A (zh) | 2016-02-17 |
CN105335952B true CN105335952B (zh) | 2018-04-17 |
Family
ID=55286459
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410277105.1A Expired - Fee Related CN105335952B (zh) | 2014-06-19 | 2014-06-19 | 匹配代价计算方法和装置、以及视差值计算方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105335952B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101856344B1 (ko) * | 2016-08-22 | 2018-06-25 | 현대자동차주식회사 | 스테레오 영상 정합을 통한 시차맵 생성 시스템 및 방법 |
CN108074250B (zh) * | 2016-11-10 | 2022-01-04 | 株式会社理光 | 匹配代价计算方法和装置 |
CN109724537B (zh) * | 2019-02-11 | 2020-05-12 | 吉林大学 | 一种双目三维成像方法及*** |
CN110363235B (zh) * | 2019-06-29 | 2021-08-06 | 苏州浪潮智能科技有限公司 | 一种高分辨率图像匹配方法及*** |
CN111210481A (zh) * | 2020-01-10 | 2020-05-29 | 大连理工大学 | 多波段立体相机的深度估计加速方法 |
CN113407756B (zh) * | 2021-05-28 | 2022-10-11 | 山西云时代智慧城市技术发展有限公司 | 一种基于自适应权重的肺结节ct图像重排序方法 |
CN115018850B (zh) * | 2022-08-09 | 2022-11-01 | 深圳市领拓实业有限公司 | 基于图像处理的精密电子零部件冲压孔毛刺检测方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102572485A (zh) * | 2012-02-02 | 2012-07-11 | 北京大学 | 一种自适应加权立体匹配算法、立体显示采集装置及*** |
CN103440653A (zh) * | 2013-08-27 | 2013-12-11 | 北京航空航天大学 | 双目视觉立体匹配方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101694292B1 (ko) * | 2010-12-17 | 2017-01-09 | 한국전자통신연구원 | 스테레오 영상 정합 장치 및 그 방법 |
KR101792501B1 (ko) * | 2011-03-16 | 2017-11-21 | 한국전자통신연구원 | 특징기반의 스테레오 매칭 방법 및 장치 |
-
2014
- 2014-06-19 CN CN201410277105.1A patent/CN105335952B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102572485A (zh) * | 2012-02-02 | 2012-07-11 | 北京大学 | 一种自适应加权立体匹配算法、立体显示采集装置及*** |
CN103440653A (zh) * | 2013-08-27 | 2013-12-11 | 北京航空航天大学 | 双目视觉立体匹配方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105335952A (zh) | 2016-02-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105335952B (zh) | 匹配代价计算方法和装置、以及视差值计算方法和设备 | |
Zhuang et al. | Strategies combining spectral angle mapper and change vector analysis to unsupervised change detection in multispectral images | |
US9715761B2 (en) | Real-time 3D computer vision processing engine for object recognition, reconstruction, and analysis | |
KR102204818B1 (ko) | 3d 정렬 알고리즘들을 위한 밸런싱된-프로브 사이트들의 선택 | |
CN109978839B (zh) | 晶圆低纹理缺陷的检测方法 | |
CN103810744B (zh) | 在点云中回填点 | |
CN104134200B (zh) | 一种基于改进加权融合的运动场景图像拼接方法 | |
CN109859226B (zh) | 一种图形分割的棋盘格角点亚像素的检测方法 | |
CN111780763A (zh) | 一种基于视觉地图的视觉定位方法、装置 | |
CN111126412B (zh) | 基于特征金字塔网络的图像关键点检测方法 | |
CN108986152B (zh) | 一种基于差分图像的异物检测方法及装置 | |
CN106991695A (zh) | 一种图像配准方法及装置 | |
WO2018179338A1 (ja) | 機械学習装置及び画像認識装置 | |
CN104123554B (zh) | 基于mmtd的sift图像特征提取方法 | |
CN108875504B (zh) | 基于神经网络的图像检测方法和图像检测装置 | |
CN105631872B (zh) | 基于多特征点的遥感图像配准方法 | |
CN110533774B (zh) | 一种基于智能手机的三维模型重建方法 | |
CN105427333A (zh) | 视频序列图像的实时配准方法、***及拍摄终端 | |
CN109493384A (zh) | 相机位姿估计方法、***、设备及存储介质 | |
CN113888461A (zh) | 基于深度学习的小五金件缺陷检测方法、***及设备 | |
CN111105452A (zh) | 基于双目视觉的高低分辨率融合立体匹配方法 | |
CN110443228B (zh) | 一种行人匹配方法、装置、电子设备及存储介质 | |
CN113688846A (zh) | 物体尺寸识别方法、可读存储介质及物体尺寸识别*** | |
CN112630469A (zh) | 一种基于结构光和多光场相机的三维检测方法 | |
CN114119437B (zh) | 一种基于gms的用于改善运动物体畸变的图像拼接方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180417 |
|
CF01 | Termination of patent right due to non-payment of annual fee |