基于抗纹理十字和权值十字的立体视差优化方法与流程

文档序号:12674979阅读:210来源:国知局
基于抗纹理十字和权值十字的立体视差优化方法与流程

本发明属于计算机视觉领域,具体涉及一种立体视差优化方法,可用于无人驾驶、3D跟踪和智能机器人系统。



背景技术:

立体匹配一直是计算机视觉领域一个重要的研究课题。从两幅可匹配的彩色图像中生成视差图在很多领域中得到很广泛的应用,如无人驾驶、3D重建、3D跟踪。

现有的立体匹配算法被Scharstein等人分为两类:全局算法和局部算法。全局算法虽然准确率好,但运算复杂度很高。局部算法效率高,但由于实时性需求广泛,成为目前的主要研究对象。局部算法,通常分为四个步骤:匹配代价计算、代价聚合、视差计算和视差优化。

近些年来,很多局部算法被提出,但所有的局部算法都需要通过构建支持区域来找到像素点的相似点。文献(K.Zhang et al.,“Cross-based local stereo matching using orthogonal integral images.”IEEE Trans.on Circuits and Systems for Video Technology,2009,19(7):1073-1079)提出一种基于十字的局部立体匹配算法。该算法可以构建一个较为准确的支持区域。梅等人(参见,“On building an accurate stereo matching system on graphics hardware.”IEEE Int’l Conf.on Computer Vision Workshops.pp.467-474,2011)通过改变十字的终止条件,改进了该算法。但这两种算法均是基于颜色相似性和距离,受到彩色图像中纹理信息的干扰。视差值在图像纹理区域虽无变化,但是这些区域通常会有变化的深度,影响十字的延伸。而且支持区域中正确像素点个数也比较少。更加重要的是,这两种方法无法识别物体边界,导致最终视差图中边界模糊。

最近,文献(Q.Yang,“A non-local cost aggregation method for stereo matching,”Int’l.Conf.Computer Vision and Pattern Recognition,pp.1402-1409,2012)提出了一种基于树结构的聚合方法。在该方法中,一幅图像被看作一个四连通的无向图。图像中每个点都对应图中一个节点。每两个相似的相邻节点被一个边相连。边被排序并且被用来选择基于最小生成树中的权值。在代价聚合阶段,信息从一个节点传到相邻节点。在这之后,文献X.Mei et al.,“Segment-tree based cost aggregation for stereo matching,”IEEE Int’l.Conf.Computer Vision and Pattern Recognition,pp.313-320,2013又提出了一种分割树方法,用来改进树的结构。这种方法把一棵最小生成树分割成若干棵树来作为支持区域。但是,这两种基于树结构的算法也受到图像中纹理区域的干扰,图像中的纹理区域虽然不会影响视差,但是在构建最小生成树中,会导致相邻点权值很大,最小生成树的结构因此而改变,从而导致信息在纹理区域传递被阻隔,致使结果不准确。

视差优化,是立体算法中重要的一步,受到越来越多的重视。立体匹配的前三步可以得到原视差图。但是由于实测场景中存在遮挡区域、纹理区域和高光区域,原视差图中存在很多错误点。视差优化正是检测和更新这些错误点的过程。季等人提出一个有效的基于稳定树的视差优化算法(参见Y.Ji et al.,“Disparity Refinement with Stability-based Tree for Stereo Matching,”IEEE Intelligent Vehicles Symposium,pp.469-474,2015),但该算法基于最小生成树,而纹理信息的干扰会导致相邻点权值很大,因此会改变最小生成树的结构,从而导致信息在纹理区域传递被阻隔,致使结果不准确。



技术实现要素:

本发明的目的在于提出了一种基于抗纹理十字和权值十字的立体视差优化方法,以减小纹理干扰对支持区域和传统树结构的影响,提高视差图的准确率。

为了实现上述目的,本发明技术方案包括如下步骤:

(1)对原左视差图dL和原右视差图dR进行错误点检测,得到原左视差图dL中错误点集合E;

(2)对原始彩色图像I进行预处理,即滤除原始彩色图像I中的纹理信息,保留结构信息S;

(3)构建支持区域R:

(3a)利用步骤(1)得到的错误点集合E,选取一个错误点p∈E,在结构信息S中,进行向左、右、上、下四个方向的抗纹理十字延伸,即判定下一个点是否满足颜色相似性和距离相似性,若满足,则继续延伸,否则,用探索向量,即该位置后的L个连续点,探索该点所在的区域,若该点在结构边界上,则停止延伸,若在纹理区域上,则继续延伸;

(3b)通过向左、右、上、下四个方向的十字延伸,得到错误点p的正交十字左臂L(p),右臂R(p),上臂U(p)和下臂D(p);

(3c)对每个属于上臂U(p)和下臂D(p)上的点q,通过向左右两个方向延伸,找到其水平臂H(q),进而得到整个支持区域R;

(4)对支持区域R中的每一点t,在可选视差d的每一层,计算其视差代价Cd(t):

其中,dL(t)是点t在原左视差图中的视差值;d为可选视差,取0到max=64之间的整数,则每一点t可得max+1层视差代价Cd(t);

(5)构建权值十字T:

(5a)对于支持区域R,按照步骤(3)中先左臂L(p)、右臂R(p)、上臂U(p)、下臂D(p),再水平臂H(q)的顺序,在每条臂的相邻点m与n之间,计算权重Wmn

其中,ΔIc=|Ic(m)-Ic(n)|,为结构信息S中相邻两点m与n的深度间隔,Δd=|dL(m)-dL(n)|,为原左视差图中相邻两点m与n的视差间隔,c表示R,G,B三个通道中的一个通道,λ∈[0,1],为调节深度信息和视差信息的权重参数,τ3是控制视差间隔的门限;

(5b)通过计算相邻点m与n之间的权重Wmn,得到权值十字T,即一个加权无向图,利用权值Wmn,通过弗洛伊德算法遍历权值十字T,得到任意两节点x和y之间最短路径的距离D(x,y);

(6)视差代价聚合:

(6a)对于可选视差d的每一层,利用权值十字T,计算每个节点m的向上信息量和向下信息量

其中,F(n)表示n的父节点,F(m)表示m的父节点,Cd(m)表示点m的视差代价,S(m,n)表示两点m,n之间的相似性;

(6b)对于可选视差d的每一层,每个节点m的视差聚合总信息量为:

(7)对于错误点p,利用其每一层可选视差d的视差聚合总信息量选择最佳视差值doptimal(p):

将错误点p的视差值更新为doptimal(p);

(8)重复步骤(3)-(7),直至所有错误点p∈E被更新。

本发明与现有的技术相比,有如下优点:

(1)本发明由于采用先提取彩色图像中的结构信息,滤除其中的纹理信息,再在抗纹理十字的构建过程中,使用探索向量,判断十字延伸到的是纹理区域还是结构边界,使得生成的支持区域有良好的抗纹理特性。

(2)本发明使用有权值十字的更新方法来优化视差图,相比原先最小生成树的方法,权值十字结构稳定,不受纹理信息的干扰,使得视差信息和深度信息可以很好地在权值十字中传递。

(3)本发明在错误点更新中,只需考虑离错误点相似的较近的点,而离错误点不相似的较远的点,不需考虑,使得计算复杂度极大降低,运算时间较短。

附图说明

图1为本发明的实现流程图;

图2为本发明中生成原左右视差图的错误点图;

图3为本发明中对原始彩色图像预处理后与预处理前的比较结果图;

图4为本发明中的抗纹理十字支持区域图;

图5为本发明中的权值十字图;

图6为用本发明和现有方法生成的支持区域图对比图;

图7为用本发明和现有方法生成的视差优化对比图。

具体实施方式

下面结合附图和表格对本发明作进一步说明:

视差优化,是将两个水平放置的照相机得到的左右两幅图像,经过立体匹配算法中的行滤波处理,计算得到未经优化的原左视差图和原右视差图,再将该原始视差图进行视差优化,更新其错误点,得到更准确的视差图。

参照图1,本发明的实现步骤如下:

步骤1错误点检测。

(1.1)利用原左视差图dL和原右视差图dR,通过左右连续性检测方法进行错误点检测,即对于原左视差图dL中的点p,判定是否满足下式:

|dL(p)-dR(p-dL(p))|≥1,

如果满足,则p为错误点,反之,p为正确点;

(1.2)对原左视差图dL中的所有点重复步骤(1.1)操作,生成错误点集合E,如图2所示,其中图2(a)为原左视差图,图2(b)为原右视差图,图2(c)为错误点图,图2(c)中的黑色点为错误点。

步骤2滤除原始彩色图像I中的纹理信息。

(2.1)使用相对总偏差法对原始彩色图像I进行滤波,提取其结构信息得到第一结构层S1

(2.2)从原始彩色图像I去除第一结构层S1,得到第一细节层D1=I-S1,继续使用相对总偏差法对第一细节层D1进行滤波,提取出D1的结构信息得到第二结构层S2

(2.3)根据第一结构层S1和第二结构层S2,计算原始彩色图像的结构信息S:

S=λ1×S12×S2

其中,λ1为第一层系数,λ2为第二层系数;

本步骤的结果如图3所示,其中,图3(a)为原始彩色图像,图3(b)为所得结构信息S,图3(c)为原始彩色图像的一段,图3(d)为所得结构信息S的一段。

从图3中可以看出,通过图像预处理结构边界被很好的保留,如图3c)中的圈2部分、图3d)中的圈4部分,而纹理细节却被滤除,如图3c)中的圈1部分、图3d)中的圈3部分。

步骤3、构建支持区域R。

(3.1)定义颜色相似性:

如果结构信息S中两个像素点m与n满足:max(|Ic(m)-Ic(n)|c=R,G,B)<τ1,则这两个像素点满足颜色相似性,否则,不满足颜色相似性,其中,Ic(·)为结构信息S中深度信息,c为R,G,B三个通道中的一个通道,τ1为颜色门限,τ1=20;

(3.2)定义距离相似性:

如果结构信息S中两个像素点m与n满足:Ω(m,n)<τ2,则这两个像素点满足距离相似性,否则,不满足距离相似性,其中,Ω(m,n)为m和n之间的欧几里得距离,τ2为距离门限,τ2=25;

(3.3)利用步骤(1)得到的错误点集合E,选取一个错误点p∈E,在结构信息S中,进行向左、向右、向上、向下四个方向的抗纹理十字延伸,即判定下一个点是否满足颜色相似性和距离相似性,若满足,则继续延伸,否则,用探索向量,即该位置后的L=5个连续点,探索L个连续点所在的区域,若L个连续点在结构边界上,则停止延伸,若其在纹理区域上,则继续延伸;

(3.4)通过向左、向右、向上、向下四个方向的十字延伸,得到错误点p的正交十字左臂L(p),右臂R(p),上臂U(p)和下臂D(p);

(3.5)对每个属于上臂U(p)和下臂D(p)上的点q,通过分别向左右两个方向延伸,找到其水平臂H(q),进而得到整个支持区域R,如图4所示。

图4中,方格填充的点为p的左臂、右臂、上臂和下臂,阴影点为q的水平臂,黑色点为与p不相似的点,有白色边框的连续点为探索向量。

步骤4对支持区域R中的每一点t,在可选视差d的每一层,计算其视差代价Cd(t):

其中,dL(t)是点t在原左视差图中的视差值;d为可选视差,取0到max=64之间的整数,则每一点t可得max+1层视差代价Cd(t)。

步骤5构建权值十字T。

(5.1)对于支持区域R,按照步骤(3)中先左臂L(p)、右臂R(p)、上臂U(p)、下臂D(p),再水平臂H(q)的顺序,在每条臂的相邻点m与n之间,计算权重Wmn

其中,ΔIc=|Ic(m)-Ic(n)|为结构信息S中相邻两点m与n的深度间隔,Δd=|dL(m)-dL(n)|为原左视差图中相邻两点m与n的视差间隔,c表示R,G,B三个通道中的一个通道,λ=0.8,为调节深度信息和视差信息的权重参数,τ3是控制视差间隔的门限,取值为τ3=10;

(5.2)把支持区域R的像素点建立成图的点集V,将支持区域R中每条臂的相邻点m与n之间进行连接,建立图的边集E,并对其赋给边上权值Wmn,建立关联函数I,生成加权无向图(V,E,I),如图5,即为权值十字T;

在权值十字T中,中心点是错误点p,子节点,即与该节点相邻的节点且离中心点有较大的距离,父节点,即与该节点相邻的节点且离中心点有较小的距离;十字终端,即没有子节点的节点,子十字,即该节点与该节点直到十字终端的所有子节点;

(5.3)利用权值Wmn,通过弗洛伊德算法遍历权值十字T,搜索任意两节点x和y之间最短路径的距离D(x,y)。

步骤6、聚合视差代价。

(6.1)计算权值十字T中任意两点m,n之间的相似性S(m,n):

其中,σ=0.1,为用来调节距离的参数,D(m,n)表示两点m,n之间最短路径的距离;

(6.2)权值十字T的向上信息传递:

向上信息传递是将信息从十字终端传递到中心点的过程,对于可选视差d的每一层,利用权值十字T,计算每个节点m的向上信息量

其中,F(n)代表n的父节点,Cd(m)表示点m的视差代价,S(m,n)表示两点m,n之间的相似性。对于十字终端上的点,该过程是一个迭代过程,从先访问十字终端开始迭代,直到访问到中心节点为止;

(6.3)权值十字T的向下信息传递:

向下信息传递是将信息从中心点传递到十字终端的过程,对于可选视差d的每一层,利用向上信息量计算每个节点m的向下信息量

对于根节点该过程是一个迭代过程,从先访问中心点开始迭代,直到访问十字终端为止。

对于可选视差d的每一层,根据向下信息量得到每个节点m的视差聚合总信息量为:

步骤7、对于错误点p,根据其每一层可选视差d的视差聚合总信息量选择最佳视差值:将错误点p的视差值更新为dopt(p)。

步骤8,重复步骤3-7,直至所有错误点p∈E被更新。

下面结合实验对本发明的效果做进一步说明。

1.仿真参数

本实验中采用的是middleburry标准数据集中2005数据集,是在双目立体匹配中最常用的数据集之一,可以衡量在视差图中,全部像素和非遮挡部分的错误率,包括cones(375*450)、teddy(375*450)、venus(383*434)、tuskuba(288*384)四组图像数据。

2.仿真实验内容

本实验中分别采用本发明与基于十字的方法,分割树方法和稳定树方法进行视差优化,通过视差图中的错误率和视差图的视觉评判比较这四种方法的效果。

仿真实验1

取第一层系数λ1=0.8,第二层系数λ2=0.1,分别采用本发明和基于十字方法生成支持区域,结果如图6,其中,图6(a)为使用基于十字方法对cones数据桌角部分生成的支持区域图,图6(b)为使用本发明对cones数据桌角部分生成的支持区域图,图6(c)为使用基于十字方法对cones数据栅栏部分生成的支持区域图,图6(d)为使用本发明对cones数据栅栏部分生成的支持区域图。

从图6可以看出,基于十字的方法由于受到图像中纹理区域的干扰,生成的支持区域往往较小,而且形状不规则,而本发明具有良好的抗纹理特性,能够较好地找到物体的边界,生成的支持区域比较理想。

仿真实验2

分别采用本发明与现有的分割树方法和稳定树方法对原视差图进行视差优化,通过使用视差图的错误率比较这三种方法的结果。其中,视差图的错误率计算公式为:式中,N是像素点总数,dc是视差优化方法生成视差图的视差值,dT是标准视差图的视差值,δd是容错门限。

实验结果如下表1和表2:

表1本发明和现有方法在容错门限δd=1时错误率比较

表2本发明和现有方法在容错门限δd=2时错误率比较

在表1和表2中,“非遮挡”为视差图中非遮挡区域的错误率,“所有”为视差图中全部区域的错误率,在容错门限δd=1时,8组实验结果中本发明有4组结果最好,在容错门限δd=2时,8组实验结果中本发明有5组结果最好,可见本发明有较好的准确率。

仿真实验3

分别采用本发明与现有的分割树方法和稳定树方法对原视差图进行视差优化,结果如图7,其中,图7(a)为cones数据的标准视差图,图7(b)为用本发明对cones数据生成的视差图,图7(c)为用分割树方法对cones数据生成的视差图,图7(d)为用稳定树方法对cones数据生成的视差图,图7(e)为teddy数据的标准视差图,图7(f)为用本发明对teddy数据生成的视差图,图7(g)为用分割树方法对teddy数据生成的视差图,图7(h)为用稳定树方法对teddy数据生成的视差图。

由图7可见,本发明生成的视差图有较好地准确率,错误点更新较为准确,物体的边界清晰。

综上所述,本发明提出的基于抗纹理十字和权值十字的立体视差优化方法,可以减小纹理干扰对支持区域和传统树结构的影响,较好地保留物体的边界,提高视差图的准确率,能够快速准确地对原始视差图视差优化。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1