用于选择用于视差计算的参数组的优选值的方法和系统与流程

文档序号:11832895阅读:344来源:国知局
用于选择用于视差计算的参数组的优选值的方法和系统与流程
本公开涉及立体图像领域,且更具体地,涉及一种用于选择用于视差计算的参数组的优选值的方法和系统。
背景技术
:视差计算、或者称为立体匹配的基本原理是对两个(双目)或更多不同视角下对同一物体拍摄的图像(例如,左图像和右图像)进行比较,通过寻找对应像素并计算图像的像素点之间的位置偏差,来得到视差图。常用的视差计算或立体匹配算法可分成三类:局部算法(如,块匹配(参考D.Scharstein&R.Szeliski.“Ataxonomyandevaluationofdensetwo-framestereocorrespondencealgorithms”.IJCV.47(1-3):7-42.2002)),其特点是高效率,但效果差;全局算法(如,动态规划(参考“A.F.Bobick&S.S.Intille.Largeocclusionstereo”.IJCV.33(3):181-200.1999)),其特点是效果好,但效率低;半全局算法(如,SemiGlobalMatching,SGM(参考Hirschmuller,H.:“Accurateande_cientstereoprocessingbysemi-globalmatchingandmutualinformation”.InProc.IEEEInt.Conf.ComputerVisionPatternRecognition(CVPR),2(2005)807-814))具有相对高的效率和相对好的效果,在实际应用中经常用到。当前算法普遍存在的一个问题是缺乏自适应性,即在某种场景下,它们可能会取得好的效果,但如果遇到其它场景,效果也许并不理想;此外,当前算法都需要进行一些参数优化,通过参数调整,可能会具备这种自适应性,但是手动调整参数需要耗费大量精力,不切实际。现有技术中也提出了一些立体匹配的方法。例如,2012年1月17日授权的美国专利号US8098276B2,题为“STEREOVISIONSYSTEMANDCONTROLMETHODTHEREOF”中描述了通过对左/右图像的亮度控制与校正来增强立体匹配的精度,其最核心的部分是“匹配结果评估单元”,通过对深度图提取高频信号来计算匹配程度,进而反馈到“图像校正单元”来重新校正左/右图像重复上述过程,进而得到高精度深度图并 对变化的环境具有适应性。该专利提取结果深度图的信息,以此作为反馈来进行图像校正,为了得到高精度深度图并对变化的环境具有适应性。但是该专利只考虑图像级别的信息,某一场景的整体深度图像效果有可能并不理想。在技术文章“LearningtoDetectGroundControlPointsforImprovingtheAccuracyofStereoMatching”(CVPR,2014)中描述了一种有监督的学习方法,提取若干像素级别的特征,利用随机森林来预测匹配的正确性,其特征包括匹配代价、到图像边界距离、最大间隔等。在测试阶段,预测每个匹配的正确程度,估计出一个置信图(可靠视差点),并结合到基于MRF的立体匹配算法中。该文章通过学习得到一个模型,并用来预测每个像素的匹配正确性,从而得到可靠视差点,进而提高立体匹配的精度;该文章只考虑像素级别的信息,视差图的整体效果有可能并不理想。本公开的目的是提供一种用于选择用于视差计算的参数组的优选值的方法和系统,能够在不同场景下自适应地取得良好的视差计算效果。技术实现要素:根据本公开的一个方面,提供一种用于选择用于视差计算的参数组的优选值的方法,包括如下步骤:获得训练图像和对应的真实视差图;定义用于所述参数组中的各参数的初始取值范围;通过划分所述初始取值范围,生成所述各参数的参数取值组合;用每个参数取值组合对所述训练图像计算得到的各个计算视差图;针对每个参数取值组合,确定各个计算视差图与真实视差图之间的整体接近程度和分布接近程度;选择对应于该训练图像的所述参数组的更优选的取值范围,其中,所述选择所述参数组的更优选的取值范围的步骤包括:以所述整体接近程度和所述分布接近程度为特征在所述参数组的参数空间中进行分割,以得到更优选的取值范围,使得所述整体接近程度在所述更优选的取值范围内的变化小于第一预定阈值,所述分布接近程度在所述更优选的取值范围内的变化小于第二预定阈值,且在所述更优选的取值范围内的中心整体接近程度大于第三预定阈值。根据本公开的另一方面,提供一种用于选择用于视差计算的参数组的优选值的系统,包括:获得装置,被配置为获得训练图像和对应的真实视差图;定义装置,被配置为定义用于所述参数组中的各参数的初始取值范围;生成装置,被配置为通过划分所述初始取值范围,生成所述各参数的参数取值组 合;计算装置,被配置为用每个参数取值组合对所述训练图像计算得到的各个计算视差图;确定装置,被配置为针对每个参数取值组合,确定各个计算视差图与真实视差图之间的整体接近程度和分布接近程度;选择装置,被配置为选择对应于该训练图像的所述参数组的更优选的取值范围,其中,所述选择装置被配置为以所述整体接近程度和所述分布接近程度为特征在所述参数组的参数空间中进行分割,以得到更优选的取值范围,使得所述整体接近程度在所述更优选的取值范围内的变化小于第一预定阈值,所述分布接近程度在所述更优选的取值范围内的变化小于第二预定阈值,且在所述更优选的取值范围内的中心整体接近程度大于第三预定阈值。本公开的技术是一种基于学习的技术,在给定视差计算算法的情况下,从各种场景的训练图像中提取多层次信息,包括至少每幅训练图像的全局信息、可选地局部信息、并可选地考虑了大多数训练图像的信息、并可选地进行迭代计算,从而选出视差计算算法的最优参数;该技术更具有适应性,利用具有最优参数的视差计算算法所得到的视差图像也会更准确。本技术可以应用到很多场合,例如,机器人、监控以及智能车辆等。通过立体匹配技术得到的视差信息(深度信息)可用来估量摄像机和场景之间的相对距离。以智能车辆为例,基于一幅鲁棒的视差图像,能很容易地检测到路面、白线和栅栏,进而检测目标并对目标进行分类,在这里目标主要是指行人和其它车辆,车辆的整个行驶状况也因此能够得到全面掌控。附图说明图1是示出应用本发明的实施例的应用场景的功能框图。图2是示出应用本发明的实施例的应用场景的硬件框图。图3是示出根据本发明的一个实施例的用于选择用于视差计算的参数组的优选值的方法的流程图。图4(a)和4(b)分别示出参考图像和对应的真实视差图的示例。图5是示出根据真实视差图和计算视差图的比较而计算整体接近程度(例如正确率)的过程的示意图。图6(a)和6(b)是示出例如正确率的整体接近程度的局部平滑性的示意图。图7是示出分布接近程度(例如错误像素掩码图)的示意图。图8(a)-8(c)是示出例如错误像素掩码图的分布接近程度的局部平滑性的 示意图。图9是示出例如二维参数空间分割的示意图。图10是示出在存在多个训练图像的情况下根据大多数原则进行投票的示意图。图11是示出根据本发明的一个实施例的用于选择用于视差计算的参数组的优选值的系统的方框图。具体实施方式现在将详细参照本发明的具体实施例,在附图中例示了本发明的例子。尽管将结合具体实施例描述本发明,但将理解,不是想要将本发明限于所述的实施例。相反,想要覆盖由所附权利要求限定的在本发明的精神和范围内包括的变更、修改和等价物。应注意,这里描述的方法步骤都可以由任何功能块或功能布置来实现,且任何功能块或功能布置可被实现为物理实体或逻辑实体、或者两者的组合。为了使本领域技术人员更好地理解本发明,下面结合附图和具体实施方式对本发明作进一步详细说明。图1是示出应用本发明的实施例的应用场景的功能框图。应用本发明的实施例的视差计算包括两个部分:训练和测试。在训练阶段,以训练参考图像和训练目标图像(简称训练图像)、真实视差值(或真实视差图)和视差算法的参数为输入,经过视差计算算法的模块和应用本发明的实施例的基于学习的方法的模块,输出最优选的参数(的取值或取值范围)。在测试阶段,以测试参考图像和测试目标图像(简称测试图像)、在训练阶段得到的最优选的参数为输入,经过视差计算算法的模块,输出测试图像的视差图像。参考图像和目标图像可以由立体相机拍摄得到,可以选择立体相机系统中左相机拍摄到的左图像为参考图像,也可以选择右相机拍摄到的右图像为参考图像,选定好参考图像,另外一个相机拍摄到的图像即为目标图像。每张训练参考图像都有真实视差值信息,例如,所有像素或者一部分像素的正确视差值,如图4所示。注意,在训练和测试阶段,该视差计算算法可以是已知的,且保持不变,在此不对视差计算算法做详细的说明,因为本公开的技术可以应用于任何视 差计算算法,只要该视差计算算法涉及一个或多个待定参数。例如如下的E(D)是全局立体匹配算法要优化的视差计算算法的函数,其中P1和P2即为待调整的参数。E(D)=Edata(D)+Esmooth(D),Esmooth(D)=Σ<p,q>∈Ns(p,q)s(p,q)=0ifdp=dqPiif|dp-dq|=1P2if|dp-dq|>1]]>。注意,根据本发明的实施例通常应用于训练阶段中的基于学习的方法的模块,来得到视差计算算法中涉及的一个或多个待定参数的优选的取值或取值范围。图2是示出应用本发明的实施例的应用场景的硬件框图。如图2所示,应用本发明的实施例的应用场景的硬件包括输入设备201、处理器202、输出设备203、存储器204。其中处理器202连接输入设备201、输出设备203和存储器204。输入设备201包括立体相机和解码器等,立体相机可以对场景进行拍摄得到左右图像,作为参考图像和目标图像。存储器204中可以存储处理器202所需的数据(例如真实视差图)和得到的中间数据。在输入设备201输入训练图像的情况下,根据本发明的实施例所提出的方法可以在处理器202上运行。输出设备203可以输出计算的参数组的优选取值或取值范围作为输出结果。在输入设备201输入测试图像下,如果处理器202中已经运行了根据本发明的实施例所提出的方法且在存储器204中实现存储了所计算的参数组的优选取值或取值范围,则输出设备203可以直接以视差图像作为输出结果。图3是示出根据本发明的一个实施例的用于选择用于视差计算的参数组的优选值的方法300的流程图。图3所示的一种用于选择用于视差计算的参数组的优选值的方法300包括如下步骤:步骤S301,获得训练图像和对应的真实视差图;步骤S302,定义用于所述参数组中的各参数的初始取值范围;步骤S303,通过划分所述初始取值范围,生成所述各参数的参数取值组合;步骤S304,用每个参数取值组合对所述训练图像计算得到的各个计算视差图;步骤S305,针对每个参数取值组合,确定各个计算视差图与真实视差图之间的整体接近程度和分布接 近程度;步骤S306,选择对应于该训练图像的所述参数组的更优选的取值范围,其中,所述选择所述参数组的更优选的取值范围的步骤包括:以所述整体接近程度和所述分布接近程度为特征在所述参数组的参数空间中进行分割,以得到更优选的取值范围,使得所述整体接近程度在所述更优选的取值范围内的变化小于第一预定阈值,所述分布接近程度在所述更优选的取值范围内的变化小于第二预定阈值,且在所述更优选的取值范围内的中心整体接近程度大于第三预定阈值。训练图像的个数可以是一个或多个。具体地,在步骤S301中,包括训练参考图像和训练目标图像的训练图像可以由立体相机拍摄得到,可以选择立体相机系统中左相机拍摄到的左图像为参考图像,也可以选择右相机拍摄到的右图像为参考图像,选定好参考图像,另外一个相机拍摄到的图像即为目标图像。每张训练参考图像都可以有真实视差值信息,例如,所有像素或者一部分像素的正确视差值,如图4所示。图4(a)和4(b)分别示出参考图像和对应的真实视差图的示例。本方法并不限定具体的视差计算算法,而是可以应用于任何视差计算算法。对于给定的视差计算算法,其有若干参数需要进行优化,例如,有两个参数作为一个参数组、包括p1参数和p2参数。在步骤S302中,可以例如定义各参数的初始的取值范围如下:表1参数取值范围参数p1p2范围[1,N1][1,N2]在步骤S303中,通过划分所述初始取值范围,生成所述各参数的参数取值组合。以下表2是根据表1的参数取值范围进行划分得到的参数取值组合,其中,n=(N1/S1)*(N2/S2),S1和S2分别是参数p1和p2的搜索步长。表2参数取值组合在步骤S304中,对每个参数取值组合计算视差图,得到计算视差图。具体地,对于上述参考/目标图像对,给定了已知的视差计算算法,用一个参数取值组合即可得到一个计算视差图。而用n个参数取值组合,可以得到n个计算视差图。而如前所述,真实视差图是已经获得了的一个视差图。在步骤S305中,针对每个参数取值组合,确定该n个计算视差图与真实视差图之间的n个整体接近程度。即,一个计算视差图与真实视差图之间存在一个整体接近程度,而另一个计算视差图与真实视差图之间存在另一个整体接近程度。整体接近程度可以用来从整体上(或全局上)评价该计算视差图与真实视差图之间的接近程度(或差异程度),即,整体接近程度可以从整体上考察所有像素处的计算视差值是否接近于真实视差值。整体接近程度的例子可以包括但不限于:在整个训练图像中的所有像素处的计算视差与真实视差相同(或相差较小)的像素的个数、或在整个训练图像中的所有像素处的计算视差与真实视差相同(或相匹配)的像素的个数与总像素的比值、或者在整个训练图像中的所有像素处的计算视差与真实视差相同(或相差较小)的像素的个数与计算视差有效的像素的个数的比值等等。当然,本领域技术人员还可以用相同的原理构思其他整体接近程度的例子。如此,该计算视差图与真实视差图之间的整体接近程度越高(或差异程度越小),则该计算视差图所对应的参数取值组合PCi越优选。在一个实施例中,所述整体接近程度可以用正确率(CorrectRate,CR)来表示,所述正确率可以与在所有像素处的计算视差达到真实视差的正确的总数相关。在此,“计算视差达到真实视差”可以通过计算视差与真实视差的差值小于一个阈值∈来实现。在一个实施例中,所述正确率CR可以用如下公式来表示:Ng=||{(x,y):(x,y)∈R,dg(x,y)>0}||Nc=||{(x,y):(x,y)∈R,dg(x,y)>0,dc(x,y)>0,|dg(x,y)-dc(x,y)|<∈}||CR=NcNg]]>……公式(1)其中,R是训练图像,x,y是训练图像中的像素的横坐标和纵坐标,dg是真实视差值,dc是计算得到的视差值,∈为设定的阈值,CR为正确率,其中,所述正确率越大,所述整体接近程度越大。当然,本领域技术人员还可以构思除了上述正确率的公式以外的其他的评价整体接近程度的方式,例如仅用上述Nc来评价、或不局限于计算视差值大于0且真实视差值大于0的有效像素的个数Nc等等,在此不一一赘述。图5是示出根据真实视差图和计算视差图的比较而计算整体接近程度(例如正确率)的过程的示意图。例如,图5所示,对一个参数取值组合PCi所对应的计算视差图和真实视差图来说,计算得到的正确率CR假设为0.604,即表示在计算视差和真实视差都大于0的所有像素中计算视差和真实视差之间的差异的绝对值小于∈的像素的个数与真实视差大于0的所有像素的个数的比值。也就是说,该正确率CR是从整体上(例如,像素总数上)评价计算视差图和真实视差图之间的接近程度。图6(a)和6(b)是示出例如正确率的整体接近程度的局部平滑性的示意图。局部平滑性意味着该参数取值组合具有稳定性,即,如果参数取值组合中的参数值在小范围内波动,所计算得到的视差图的效果不会受到很大影响。首先,若某个参数取值组合PCi是较优选的,从正确率CR上来看,从参数取值组合PCi到其邻近参数取值组合不应该有剧烈下降。图6(a)和6(b)示出了以两个参数p1和p2为例的正确率CR的局部平滑性的示意图,其中三维空间的x、y轴分别表示参数p1和p2的各个取值,而z轴表示用某个参数取值组合PCi(即特定的p1的值和特定的p2的值)所计算得到的正确率CR的值。在图6(a)中,从三维空间曲面的较高点(即正确率CR较高的参数取值组合)到其近邻有剧烈下降(即,该较高的正确率CR与近邻处的正确率之间的变化较大),则该曲面较高点不具有局部平滑性,而不应该作为优选的参数取值组合;而在图6(b)中,从较高点到其近邻没有剧烈下降发生,而是缓慢下降(即,该较高的正确率与近邻处的正确率之间的变化较小),即图6(b)中的曲面较高点所表示的参数取值组合(即正确率较高的参数取值组合)具有局部平滑性。因此,步骤S306,选择对应于该训练图像的所述参数组的更优选的取值 范围,其中,所述选择所述参数组的更优选的取值范围的步骤包括:以所述整体接近程度和所述分布接近程度为特征在所述参数组的参数空间中进行分割,以得到更优选的取值范围,使得所述整体接近程度在所述更优选的取值范围内的变化小于第一预定阈值,所述分布接近程度在所述更优选的取值范围内的变化小于第二预定阈值,且在所述更优选的取值范围内的中心整体接近程度大于第三预定阈值。从而,满足整体接近程度和局部接近程度都在所述更优选的取值范围内具有局部平滑性。在此,添加中心整体接近程度(例如中心正确率CR)大于一定阈值θ的条件可以进一步保证用于投票的该取值范围的类所对应的正确率是较高的,因此可以进一步保证与真实视差图的接近、以及所得到的取值范围的准确性。在一个实施例中,在步骤S306中,所述整体接近程度在所述更优选的取值范围内的变化可以用所述正确率之间的差表示,其中,所述差越小,所述整体接近程度在所述更优选的取值范围内的变化越小。即,为了衡量正确率的变化,直接采用正确率之间的差来表示。当然,这仅是简单的衡量整体接近程度的变化的一种方式,而本领域技术人员还可以构思其他的衡量变化的方式,例如差的绝对值、或差的平方等,在此不一一赘述。以上通过从整体上考虑各个参数取值组合所计算的视差图与真实视差图之间的接近程度是否较大以及该接近程度的变化是否平滑(即是否具有局部平滑性),来选择了具有局部平滑性的整体接近程度所对应的参数取值组合,从而获得了更优选的参数取值组合(具体的值或范围),从而能够将这种参数取值组合代入已知的视差计算算法中,来得到视差计算更接近于真实视差结果的具体视差计算算法,从而能够利用该具体视差计算算法来对双目相机拍摄的参考图像和目标图像进行视差计算,来获得更准确的视差图。当然,上述整体接近程度是从整体上评价利用各种参数取值组合得到的视差计算是否算更接近于真实视差结果,而如果再加上从像素分布上考虑利用各种参数取值组合得到的视差计算是否算更接近于真实视差结果,则可以更加准确地得到更优选的参数取值组合。分布接近程度可以从像素分布上考察每个像素处的计算视差值是否接近于真实视差值。在一个实施例中,所述分布接近程度可以用错误像素掩码(ErrorPixelMask,EPM)图来表示,所述错误像素掩码图可以表示在各像素处的计算视 差是否未达到真实视差。在一个实施例中,所述错误像素掩码图可以用如下公式表示:EPM(x,y)=255ifdg(x,y)>0,dc(x,y)=0255ifdg(x,y)>0,dc(x,y)>0,|dg(x,y)-dc(x,y)|≥ϵ0else]]>……公式(2)其中,x,y是训练图像中的像素的横坐标和纵坐标,dg是真实视差值,dc是计算得到的视差值,∈为设定的阈值,EPM(x,y)表示在训练图像的各像素(x,y)处的错误像素掩码。即,在训练图像的每个像素分布上,将计算视差值与真实视差值之间的差的绝对值大于或等于∈的像素标为黑色(即,灰度为0),而将计算视差值与真实视差值之间的差的绝对值大于或等于∈的像素以及具有无效计算视差值的像素标为白色(即灰度为255)。如图7所示。图7是示出分布接近程度(例如错误像素掩码图)的示意图。从图7可以看出,在每个像素处该计算视差值是否接近于真实视差值,可见图7中的白色的像素处都是计算视差值错误(即计算视差值与真实视差值之间的差的绝对值大于或等于∈或计算视差值为0)的地方。同样,若某个参数取值组合PCi是最优的,从错误像素掩码图上来看,从参数取值组合PCi的掩码到其邻近参数取值组合的掩码不应该有较大差别。图8(a)-8(c)是示出例如错误像素掩码图的分布接近程度的局部平滑性的示意图。图8(a)与图8(b)的掩码之间具有较小差别,而图8(a)与图8(c)的掩码之间具有较大差别;图8(a)中的掩码是对一个参数取值组合计算得到的,而图8(b)与图8(c)的掩码是由对该参数取值组合邻近的两个不同的参数取值组合计算得到的两个视差图像分别与图4(b)中的真实视差图比较得到的。如图8(a)-8(c)所示,与邻近的参数取值组合计算的错误掩码1(如图8(b)所示)差别较小的该参数取值组合更优选。因此,在步骤S306中,除了考虑整体接近程度(例如正确率)的局部平滑性以外还考虑分布接近程度(例如错误像素掩码图)的局部平滑性两者来对各参数的参数空间进行分割,以得到更优选的取值范围,使得所述整体接近程度在所述更优选的取值范围内具有较大值、且所述整体接近程度和所述分布接近程度的变化都小于各自的预定阈值。具体地,如下表3所示,对于一个或多个训练图像j的每个(如果只有一个训练图像,则j为1),对于每个参数取值组合PCi,计算正确率CR和错误像素掩码图EPM,得到一个特征(CRj,i,EPMj,i)。表3特征训练图像1训练图像2.训练图像j训练图像mPC1*****PC2*****.*****PCi***(CRj,i,EPMj,i)*.*****PCn*****然后,对每张训练图像的参数空间进行分割。对于一个或多个训练图像j的每个,以(CRj,i,EPMj,i)作为特征对其特征空间进行分割。在一个实施例中,所述分布接近程度在所述更优选的取值范围内的变化(即,与邻近的参数取值组合计算的错误掩码差别)可以用差别率表示,所述差别率可以与各错误像素掩码图之间的在各像素处的差别相关。正确率CR是用数值来表示的,所以很容易衡量两个正确率之间的相似度,例如两个正确率之间的差的绝对值、差的平方等。而错误像素掩码图是一幅图像,为考虑每个训练图像的分布信息,可以定义差别率(DifferentialRate,DR)来衡量两个错误像素掩码图之间的相似度:所述差别率DR可以用如下公式表示:Nall=||{(x,y):(x,y)∈EPMj,i}||Ndiff=||{(x,y):(x,y)∈EPMj,i,EPMj,i(x,y)≠EPMj,neigh(x,y)}||DR=NdiffNall]]>……公式(3)其中,DR表示在两个错误像素掩码之间的差别率,j表示多个训练图像中的第j个训练图像(如果只有一个训练图像,则忽略该j),i表示第i个参数取值组合,EPMj,neigh(x,y)表示在j个训练图像的各像素(x,y)处的、对于第j个训练图像、对于第i个参数取值组合邻近的参数取值组合的错误像 素掩码。所述差别率越小,所述分布接近程度在所述更优选的取值范围内的变化越小,即与邻近的参数取值组合计算的错误掩码的差别越小。当然,该差别率仅是描述两个错误像素掩码图之间的相似度的一种方式,本领域技术人员还可以构思其他方式,例如只考虑上述Ndiff,或者利用两个错误像素掩码图的一一对应像素处的差、差的绝对值、差的平方、等等,在此不一一赘述。在一个实施例中,该中心整体接近程度可以是如下中的一种:在所述更优选的取值范围内的所有整体接近程度的平均值;以及在所述更优选的取值范围内的所有整体接近程度的中值。当然,中心整体接近程度不限于上述举例的例子,而是可以是表现该更优选的取值范围内的整体接近程度的分布、大小等,例如四分位值等。在一个实施例中,所述以特征在所述参数组的参数空间中进行分割的步骤306可以通过以特征在所述参数空间中以各自的预定阈值进行聚类的方式来实现。具体地,对于一个或多个训练图像j的每个,经过对其参数空间进行分割,参数取值组合被聚类成nj类:Cj,k,k=1,2,...,nj每个类别有一个中心正确率CRj,k。图9是示出例如二维参数空间分割的示意图。如图9所示,特征空间被分割(聚类)成三类Cj,1、Cj,2、Cj,3。在此,聚类算法是本领域的公知技术,只要确定了阈值即可以实现。一个好的聚类是:同一个类中的对象尽可能相互接近或相关,而不同的类中的对象尽可能远离或不同。使用这个基本思想的算法有:K-MEANS算法、K-MEDOIDS算法、CLARANS算法。在此不赘述其具体过程。当然,为了以特征在所述参数组的参数空间中进行分割,还可以采用除了聚类算法以外的方式,例如区域生长等,在此不一一举例。如此,用整体接近程度(例如正确率)的和分布接近程度(例如错误像素掩码图)两者作为特征来对各参数的参数空间进行分割,以得到更优选的取值范围,使得所述整体接近程度在所述更优选的取值范围内具有较大值、且所述整体接近程度和所述分布接近程度的变化都小于各自的预定阈值。上通过结合从像素分布上的各个参数取值组合所计算的视差图与真实视 差图之间的接近程度的变化是否平滑(即是否具有局部平滑性)以及先前提到的整体接近程度的较大值和局部平滑性,来选择了整体接近程度和分布接近程度都具有局部平滑性的所对应的参数取值组合,从而获得了更加优选的参数取值组合(具体的值或范围),从而能够将这种参数取值组合代入已知的视差计算算法中,来得到视差计算更加接近于真实视差结果的具体视差计算算法,从而能够利用该具体视差计算算法来对双目相机拍摄的参考图像和目标图像进行视差计算,来获得更加准确的视差图。如上所述,训练图像的个数可以是一个或多个,在训练图像的个数是一个的情况下,以上的各个实施例已经可以得到一定程度优选的参数取值组合(具体的值或范围)了,但是如果存在多个训练图像(例如m个),则可以进一步优化参数取值组合(具体的值或范围),如下详细描述的。在一个实施例中,图3所示的方法300还可以包括:在存在多个训练图像的情况下:确定参与投票的各个取值范围,所述参与投票的各个取值范围是在对应于多个训练图像的各自的更优选的取值范围;根据大多数原则,在参与投票的各个取值范围内进行投票,以确定在大多数训练图像中被确定为更优选的取值范围的取值范围作为进一步优选的取值范围。如上所述,对单个训练图像所选择的更优选的取值范围考虑了中心正确率大于预定阈值,因此,对于每个训练图像(样本)j,分割后的每个类的中心正确率CRj,k(例如但不限于,该类中的所有正确率的平均值、或中值等)都大于一定阈值θ:CRj,k>θ如此,保证了在特征空间中被投票的取值范围的例如正确率的整体接近程度是较大的。对所有训练图像(样本)进行投票,根据大多数原则,可在特征空间中确定在大多数训练图像中都被选择为更优选的取值范围的最优参数候选取值范围。如图10所示,图10是示出在存在多个训练图像的情况下根据大多数原则进行投票的示意图。因为对于每个训练图像,都可以选择出一个或多个满足整体接近程度和分布接近程度的局部平滑性的参数取值组合(具体的值或范围),如此,对于所有这些参数取值组合(具体的值或范围)中的中心正确率大于一定阈值θ的参数取值组合进行投票,即,出现在大多数(例如大于数量m’个)训练图 像中的选择的参数取值组合(具体的值或范围)(例如图10中的PC10)被投票为进一步优选的取值范围。这样,获得对于多个训练图像的大多数优选的取值范围,可以进一步保证参数取值组合的准确性,从而得到进一步接近于真实视差结果的具体视差计算算法,从而能够利用该具体视差计算算法来对双目相机拍摄的参考图像和目标图像进行视差计算,来获得进一步准确的视差图。到此,可以获得在这一轮计算中的不同准确程度的优选的参数取值范围。但是,为了进一步加强优选的参数取值范围的准确度并得到最终的最优参数取值,还可以通过如下迭代的方式。具体地,在一个实施例中,图3所示的方法300还可以包括:将所述优选的取值范围或所述进一步优选的取值范围作为所述初始取值范围,进行预定次数的迭代计算,以得到最优的取值范围。在迭代过程中,每一轮参数的取值范围和搜索步长都可以是由上一步结果决定的。通过由粗到精的搜索,最终可以得到最优参数。例如,在参数p1和p2的初始取值范围[1,N1]和[1,N2]中,利用S1和S2的搜索步长,来生成所述各参数的参数取值组合。假设,在第一轮迭代中,选择得到优选的参数取值范围为[N1’,N1”]和[N2’,N2”],则可以利用S1’和S2’的更小的搜索步长,来生成下一轮迭代的各参数的参数取值组合,其中q为q=(N1”-N1’/S1’)*(N2”-N2’/S2’)。表4参数取值组合在利用上述各参数的参数取值组合来进行第二轮迭代,以此类推。可以设定迭代的预定次数阈值,或设定参数取值组合的阈值等来确定迭代的终止条件。从而能够通过由粗到精的搜索,最终得到最优参数取值组合的值或范围。注意,以上描述的示例仅是一个具体的例子,而不作为限制本发明的实施例必须为如下具体的步骤、数值、条件、数据、顺序等等。本领域技术人员可以通过阅读本说明书来运用本发明的构思来构造本说明书中未提到的更多实施例。图11是示出根据本发明的一个实施例的用于选择用于视差计算的参数组的优选值的系统1100的方框图。图11所示的系统1100包括:一种用于选择用于视差计算的参数组的优选值的系统,包括:获得装置1101,被配置为获得训练图像和对应的真实视差图;定义装置1102,被配置为定义用于所述参数组中的各参数的初始取值范围;生成装置1103,被配置为通过划分所述初始取值范围,生成所述各参数的参数取值组合;计算装置1104,被配置为用每个参数取值组合对所述训练图像计算得到的各个计算视差图;确定装置1105,被配置为针对每个参数取值组合,确定各个计算视差图与真实视差图之间的整体接近程度和分布接近程度;选择装置1106,被配置为选择对应于该训练图像的所述参数组的更优选的取值范围,其中,所述选择装置1106被配置为以所述整体接近程度和所述分布接近程度为特征在所述参数组的参数空间中进行分割,以得到更优选的取值范围,使得所述整体接近程度在所述更优选的取值范围内的变化小于第一预定阈值,所述分布接近程度在所述更优选的取值范围内的变化小于第二预定阈值,且在所述更优选的取值范围内的中心整体接近程度大于第三预定阈值。在一个实施例中,该系统1100还包括:在存在多个训练图像的情况下:确定参与投票的各个取值范围,所述参与投票的各个取值范围是在对应于多个训练图像的各自的更优选的取值范围的装置;根据大多数原则,在参与投票的各个取值范围内进行投票,以确定在大多数训练图像中被确定为更优选的取值范围的取值范围作为进一步优选的取值范围的装置。在一个实施例中,该系统1100还包括:将所述优选的取值范围或所述进 一步优选的取值范围作为所述初始取值范围,进行预定次数的迭代计算,以得到最优的取值范围的装置。在一个实施例中,所述整体接近程度可以用正确率来表示,所述正确率可以与在所有像素处的计算视差达到真实视差的正确的总数相关。所述整体接近程度在所述更优选的取值范围内的变化可以用所述正确率之间的差表示,其中,所述差越小,所述整体接近程度在所述更优选的取值范围内的变化越小。在一个实施例中,所述正确率可以用如下公式来表示:Ng=||{(x,y):(x,y)∈R,dg(x,y)>0}||Nc=||{(x,y):(x,y)∈R,dg(x,y)>0,dc(x,y)>0,|dg(x,y)-dc(x,y)|<∈}||CR=NcNg]]>……公式(1)其中,R是训练图像,x,y是训练图像中的像素的横坐标和纵坐标,dg是真实视差值,dc是计算得到的视差值,∈为设定的阈值,CR为正确率,其中,所述正确率越大,所述整体接近程度越大。在一个实施例中,所述分布接近程度可以用错误像素掩码图来表示,所述错误像素掩码图可以表示在各像素处的计算视差是否未达到真实视差。所述分布接近程度在所述更优选的取值范围内的变化可以用差别率表示,所述差别率可以与各错误像素掩码图之间的在各像素处的差别相关。所述差别率越小,所述分布接近程度在所述更优选的取值范围内的变化越小。在一个实施例中,所述错误像素掩码图可以用如下公式表示:EPM(x,y)=255ifdg(x,y)>0,dc(x,y)=0255ifdg(x,y)>0,dc(x,y)>0,|dg(x,y)-dc(x,y)|≥ϵ0else]]>……公式(2)其中,x,y是训练图像中的像素的横坐标和纵坐标,dg是真实视差值,dc是计算得到的视差值,∈为设定的阈值,EPM(x,y)表示在训练图像的各像素(x,y)处的错误像素掩码。所述差别率可以用如下公式表示:Nall=||{x,y):(x,y)∈EPMj,i}||Ndiff=||{(x,y):(x,y)∈EPMj,i,EPMj,i(x,y)≠EPMj,neigh(x,y)}||DR=NdiffNall]]>……公式(3)其中,DR表示在两个错误像素掩码之间的差别率,j表示多个训练图像中的第j个训练图像,i表示第i个参数取值组合,EPMj,neigh(x,y)表示在j个训练图像的各像素(x,y)处的、对于第j个训练图像、对于第i个参数取值组合邻近的参数取值组合的错误像素掩码。在一个实施例中,该中心整体接近程度可以是如下中的一种:在所述更优选的取值范围内的所有整体接近程度的平均值;以及在所述更优选的取值范围内的所有整体接近程度的中值。在一个实施例中,所述以特征在所述参数组的参数空间中进行分割的步骤可以通过以特征在所述参数空间中以各自的预定阈值进行聚类的方式来实现。如此,可以获得不同准确程度的优选的参数取值的值或范围,从而得到不同准确程度的接近于真实视差结果的具体视差计算算法,从而能够利用该具体视差计算算法来对双目相机拍摄的参考图像和目标图像进行视差计算,来获得不同准确程度的视差图。当然,上述的具体实施例仅是例子而非限制,且本领域技术人员可以根据本发明的构思从上述分开描述的各个实施例中合并和组合一些步骤和装置来实现本发明的效果,这种合并和组合而成的实施例也被包括在本发明中,在此不一一描述这种合并和组合。注意,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本发明的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本发明为必须采用上述具体的细节来实现。本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里 所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。本公开中的步骤流程图以及以上方法描述仅作为例示性的例子并且不意图要求或暗示必须按照给出的顺序进行各个实施例的步骤。如本领域技术人员将认识到的,可以按任意顺序进行以上实施例中的步骤的顺序。诸如“其后”、“然后”、“接下来”等等的词语不意图限制步骤的顺序;这些词语仅用于引导读者通读这些方法的描述。此外,例如使用冠词“一个”、“一”或者“该”对于单数的要素的任何引用不被解释为将该要素限制为单数。另外,本文中的各个实施例中的步骤和装置并非仅限定于某个实施例中实行,事实上,可以根据本发明的概念来结合本文中的各个实施例中相关的部分步骤和部分装置以构思新的实施例,而这些新的实施例也包括在本发明的范围内。以上所述的方法的各个操作可以通过能够进行相应的功能的任何适当的手段而进行。该手段可以包括各种硬件和/或软件组件和/或模块,包括但不限于电路、专用集成电路(ASIC)或处理器。可以利用被设计用于进行在此所述的功能的通用处理器、数字信号处理器(DSP)、ASIC、场可编程门阵列信号(FPGA)或其他可编程逻辑器件(PLD)、离散门或晶体管逻辑、离散的硬件组件或者其任意组合而实现或进行所述的各个例示的逻辑块、模块和电路。通用处理器可以是微处理器,但是作为替换,该处理器可以是任何商业上可获得的处理器、控制器、微控制器或状态机。处理器还可以实现为计算设备的组合,例如DSP和微处理器的组合,多个微处理器、与DSP核协作的一个或多个微处理器或任何其他这样的配置。结合本公开描述的方法或算法的步骤可以直接嵌入在硬件中、处理器执行的软件模块中或者这两种的组合中。软件模块可以存在于任何形式的有形存储介质中。可以使用的存储介质的一些例子包括随机存取存储器(RAM)、只读存储器(ROM)、快闪存储器、EPROM存储器、EEPROM存储器、寄存器、硬碟、可移动碟、CD-ROM等。存储介质可以耦接到处理器以便该处理器可以从该存储介质读取信息以及向该存储介质写信息。在替换方式中,存储介质可以与处理器是整体的。软件模块可以是单个指令或者许多指令,并且可以分布在几个不同的代码段上、不同的程序之间以及跨过多个存储介质。在此公开的方法包括用于实现所述的方法的一个或多个动作。方法和/或 动作可以彼此互换而不脱离权利要求的范围。换句话说,除非指定了动作的具体顺序,否则可以修改具体动作的顺序和/或使用而不脱离权利要求的范围。所述的功能可以按硬件、软件、固件或其任意组合而实现。如果以软件实现,功能可以作为一个或多个指令存储在切实的计算机可读介质上。存储介质可以是可以由计算机访问的任何可用的切实介质。通过例子而不是限制,这样的计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其他光碟存储、磁碟存储或其他磁存储器件或者可以用于携带或存储指令或数据结构形式的期望的程序代码并且可以由计算机访问的任何其他切实介质。如在此使用的,碟(disk)和盘(disc)包括紧凑盘(CD)、激光盘、光盘、数字通用盘(DVD)、软碟和蓝光盘,其中碟通常磁地再现数据,而盘利用激光光学地再现数据。因此,计算机程序产品可以进行在此给出的操作。例如,这样的计算机程序产品可以是具有有形存储(和/或编码)在其上的指令的计算机可读的有形介质,该指令可由一个或多个处理器执行以进行在此所述的操作。计算机程序产品可以包括包装的材料。软件或指令也可以通过传输介质而传输。例如,可以使用诸如同轴电缆、光纤光缆、双绞线、数字订户线(DSL)或诸如红外、无线电或微波的无线技术的传输介质从网站、服务器或者其他远程源传输软件。此外,用于进行在此所述的方法和技术的模块和/或其他适当的手段可以在适当时由用户终端和/或基站下载和/或其他方式获得。例如,这样的设备可以耦接到服务器以促进用于进行在此所述的方法的手段的传送。或者,在此所述的各种方法可以经由存储部件(例如RAM、ROM、诸如CD或软碟等的物理存储介质)提供,以便用户终端和/或基站可以在耦接到该设备或者向该设备提供存储部件时获得各种方法。此外,可以利用用于将在此所述的方法和技术提供给设备的任何其他适当的技术。其他例子和实现方式在本公开和所附权利要求的范围和精神内。例如,由于软件的本质,以上所述的功能可以使用由处理器、硬件、固件、硬连线或这些的任意的组合执行的软件实现。实现功能的特征也可以物理地位于各个位置,包括被分发以便功能的部分在不同的物理位置处实现。而且,如在此使用的,包括在权利要求中使用的,在以“至少一个”开始的项的列举中 使用的“或”指示分离的列举,以便例如“A、B或C的至少一个”的列举意味着A或B或C,或AB或AC或BC,或ABC(即A和B和C)。此外,措辞“示例的”不意味着描述的例子是优选的或者比其他例子更好。可以不脱离由所附权利要求定义的教导的技术而进行对在此所述的技术的各种改变、替换和更改。此外,本公开的权利要求的范围不限于以上所述的处理、机器、制造、事件的组成、手段、方法和动作的具体方面。可以利用与在此所述的相应方面进行基本相同的功能或者实现基本相同的结果的当前存在的或者稍后要开发的处理、机器、制造、事件的组成、手段、方法或动作。因而,所附权利要求包括在其范围内的这样的处理、机器、制造、事件的组成、手段、方法或动作。提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本发明。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本发明的范围。因此,本发明不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本发明的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1