CN110211168A - 一种基于改进匹配代价的分段树视差图获取方法 - Google Patents
一种基于改进匹配代价的分段树视差图获取方法 Download PDFInfo
- Publication number
- CN110211168A CN110211168A CN201910483502.7A CN201910483502A CN110211168A CN 110211168 A CN110211168 A CN 110211168A CN 201910483502 A CN201910483502 A CN 201910483502A CN 110211168 A CN110211168 A CN 110211168A
- Authority
- CN
- China
- Prior art keywords
- pixel
- matrix
- detai
- formula
- image
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20228—Disparity calculation for image-based rendering
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Abstract
本发明公开一种基于改进匹配代价的分段树视差图获取方法,包括以下步骤:对左、右图像进行像素点采集;建立矩阵;进行代价计算;转化无向连通图;转化最小生成树;计算相邻像素点间权重;代价聚合;获得左、右视差图;左右像素一致性;引入深度信息与色彩信息;重新进行代价聚合;获得最终视差图。针对弱纹理区域容易产生歧义匹配的缺陷,引入了颜色和梯度多维信息分量使得窗口的权值分配更加合理,增强像素点在弱纹理区域的代价量;并提出一种新型的分组策略,让符合视差一致性的像素点分到同一棵生成树上;在保持时间效率的同时,能生成更为精确的匹配结果。
Description
技术领域
本发明涉及图像处理技术领域,特别涉及一种基于改进匹配代价的分段树视差图获取方法。
背景技术
人类在探索外部世界的过程中,获得信息的方式是多种多样的。但是,其中至少有80%的信息是来源于视觉部分。眼睛作为重要的视觉器官,能够将捕获到的场景传输到大脑进行分析处理。随着科学技术的不断发展以及相关理论日趋成熟,研究人员希望计算机也能够实现类似人类的视觉系统功能。不但能够获得现实场景的图像,同时希望能够识别图像信息并能够分析处理出重要信息,由此诞生了计算机视觉这门学科。作为该学科中热门的研究方向,立体视觉技术因具有恢复客观场景的特性,近年来受到了许多学者的关注。同时,由于立体视觉是一种非接触式测量方法,该方法结构简单、易于实现,已经广泛应用于工业、军事、医疗和农业等各个方面,例如三维重建、工业测量、影视制作和目标跟踪等领域。
在立体视觉的领域里,由摄像机的数量决定了生成立体视觉种类是多种多样的,从单目立体视觉到多目立体视觉。其中,双目立体视觉不仅是构成各类立体视觉的基础,同时应用也最为广泛。双目立体视觉根据的是双眼成像原理,利用放置在不同角度上的两台相机同时对三维场景中目标物体进行捕捉。通过对所采集到的左右图像对进行立体匹配寻找图像中的匹配点获得视差图,并利用相机参数解析出物体在三维空间中的初始状态。通常对双目立体视觉系统而言,该系统处理过程涉及诸多方面的内容,其中主要包含了图像信息的采集、相机系统的标定、对图像进行预处理操作、立体匹配工作以及后续对视差图的处理过程。值得一提的是,立体匹配是整个系统中最具有挑战性的部分,决定着后处理的表现。尽管,近年来出现了大量优秀的立体匹配算法,但是依然存在许多不良因素导致匹配过程中难以找到正确的视差,例如,光照不均、物体遮挡和弱纹理区域等。如何克服这些难点带来的错误匹配,改善视差图结果一直是目前需要亟待解决的目标。
得益于双边滤波具有保留深度边缘优异的特性,自适应权重算法能够获得高精度的视差图,但是该方法受到颜色信息影响较重,在光照不足或光照过强的环境下,易造成图像质量不佳,纹理信息不足使得匹配精度下降。为避免基于窗口的代价聚合方法因具有局部特性而容易受到纹理缺乏的影响,Yang利用双边滤波的思想提出了一种非局部代价聚合的方法。该算法将整幅参考图片预先构造成一棵最小生成树(Minimum Spanning Tree,MST)模型,并在此基础上进行基于树的滤波以降低复杂度,但在代价计算过程存在权值分配不均的问题。作为MST的一种变体,Mei等人基于图像分割提出了一种分段树(Segment-tree,ST)立体匹配方法,该算法将分段信息引入非局部代价聚合框架。设计了两步滤波方式更新代价量,并在第二步滤波中通过引入深度信息完成对权值的调整。此外,Zhang等人提出了一种跨尺度框架,用于改进一些现有的局部和非局部聚合方法。对于基于ST的方法,图像分割策略直接决定了生成树结构。然而,原有的分割策略由于忽略了视差一致性假设,不可避免的导致了初始分割结果的粗糙性。
发明内容
针对现有技术中的上述不足,本发明提供了一种基于改进匹配代价的分段树视差图获取方法,其针对传统代价计算的树结构的方法中存在计算复杂度高和视差图精度低的问题提出了解决方案。
为了达到上述发明目的,本发明采用的技术方案为:
一种基于改进匹配代价的分段树视差图获取方法,包括以下步骤:
步骤1:对左图像进行像素点采集,由左图像上所有像素点按照从左到右,从上到下的顺序构成矩阵Z_Left;设矩阵Z_Left有M行,N列,M=450,N=375;Z_Left(i,j)=(LR(i,j),LG(i,j),LB(i,j))为矩阵Z_Left的第i行第j列元素,其中LR(i,j)、LG(i,j)、LB(i,j)分别为Z_Left(i,j)的RGB值;
步骤2:对右图像进行像素点采集,由右图像上所有像素点按照从左到右,从上到下的顺序构成矩阵Z_Right;设矩阵Z_Right有M行,N列;Z_Right(i,j)=(RR(i,j),RG(i,j),RB(i,j))为矩阵Z_Right的第i行第j列元素,其中RR(i,j)、RG(i,j)、RB(i,j)分别为Z_Right(i,j)的RGB值;
步骤3:建立矩阵,构造矩阵C_P,设元素C_P(i,j)是矩阵C_P的第i行第j列元素,
C_P(i,j)=(1-α-β)*C_AD(i,j)+α*C_GradX(i,j)+β*C_GradY(i,j),i=1,2,…,M,j=1,2,…,N,α称为水平梯度分量调节因子,β称为垂直梯度分量调节因子;
步骤4:对于i=1,2,…,M,j=1,2,…,N,根据公式
C_P(i,j)=1/(1+e-C_P(i,j))
计算像素点p的代价量C_P(i,j),e为自然常数,e=2.718281828459;
步骤5:把左图像转化为一幅无向连通图G=(V,E),其中V表示左图像中所有像素点的集合,E表示左图片中所有相邻像素点边的集合;
步骤6:设s和r是左图片中任意一对相邻像素点,s在左图片中的坐标为(si,sj),s的RGB值分别为LR(si,sj)、LG(si,sj)、LB(si,sj),r在左图片中的坐标为(ri,rj),r的RGB值分别为LR(ri,rj)、LG(ri,rj)、LB(ri,rj),利用公式
W_s_r=(|LR(si,sj)-LR(ri,rj)|+|LG(si,sj)-LG(ri,rj)|+|LB(si,sj)-LB(ri,rj)|)/3计算这对相邻像素点之间边的权重W_s_r;
步骤7:对于左图像中任意两个像素点p和q来说,这两个像素点之间的距离D(p,q)可由公式
D(p,q)=ΣW_p_q
计算得到,D(p,q)表示从像素点p到像素点q之间的路径中相邻像素间边的权重和,这两个像素点之间的相似度S(p,q),可由公式
S(p,q)=e(-D(p,q)/σ)计算得到,其中σ视一个用户定义的调节因子;
步骤8:将左图像转化为一棵最小生成树模型;转化方法如下:
根据步骤6中的公式,计算获得左图像中所有相邻像素点之间边的权重,根据权重非递减顺序对E中的边进行排序,将集合V中的每一个像素点作为一棵子树;
对于V中任意两个像素点p和q,如果p和q分别属于不同的子树,其中p所属的子树用Tp表示,q所属的子树用Tq表示,则这两棵子树之间边的权重W_Tp_Tq满足下式
W_Tp_Tq≤min(Int(Tp)+k*log(1+|Tp|),Int(Tq)+k*log(1+|Tq|))
式中Int(Tp)和Int(Tq)分别表示子树Tp和Tq中最大边的权重,|Tp|和|Tq|分别表示Tp和Tq中结点的数量,k为指定的常数参数。
对集合E进行扫描搜索,当一条边连接两个不同的子树,则合并子树Tp和Tq成一棵更大的新子树,直到集合V中所有顶点都在一棵树内,搜索停止;
步骤9:设p为分段树中的任意一个节点,p在左图像中的坐标为(i,j),如果p不是叶子节点,利用公式
C_A_d1(p)=C_P(i,j)+Σ(S(p,q)*C_A_d1(q)),q∈Ch(p)
计算p的第一次遍历聚合代价C_A_d1(p),式中Ch(p)表示像素点p的所有孩子节点的集合;如果p是叶子节点,那么C_A_d1(p)=C_P(i,j)。
利用公式
C_A_d2(p)=S(Pr(p),p)*[C_P(pi,pj)-S(p,Pr(p))*C_A_d1(p)]
计算p的第二次遍历聚合代价C_A_d2(p),式中Pr(p)表示像素点p的父节点,Pr(p)在左图像中的坐标为(pi,pj);
利用公式
C_A_d(p)=C_A_d1(p)+C_A_d2(p)
计算p的聚合代价C_A_d(p);
步骤10:设p为分段树中的任意一个节点,p在左图像中的坐标为(i,j),设与像素点p的视差小于Max_disp的像素点个数为L,其中像素点t的聚合代价最小,那么p的第一类视差值可以利用公式d1(p)=C_A_d(t)计算得到,Max_disp=69,所有的像素点的第一类视差值就可以用构成一幅左视差图,用DL表示;
步骤11:再将右图像作为参考图像,然后依次执行步骤2至步骤9,设p为分段树中的任意一个节点,p在右图像中的坐标为(i,j),设与像素点p的视差小于Max_disp的像素点个数为L,其中像素点t的聚合代价最小,那么p的第二类视差值可以利用公式d2(p)=C_A_d(t)计算得到,Max_disp=69,所有的像素点的第二类视差值就可以用构成一幅右视差图,用DR表示;
步骤12:设在世界坐标系下的同一个点在左图像中的视差值为d1(p),在右图像中与对应的像素点的视差值为d2(p),如果|d1(p)-d2(p)|>threshold,那么改点为稳定状态,否则为不稳点状态,threshold=1;
步骤13:设任意一个像素点为p,该像素点的视差值为d,如果p处于稳定状态,并且该像素点的聚合代价大于零,那么利用公式C_new_d(p)=|d-d1(p)|可计算p的新的代价量C_new_d(p),否则C_new_d(p)=0;
步骤14:引入深度信息与色彩信息相结合策略进行树的构建,并利用色彩和深度权重对树结构进行二次分割来增强树的结构;设s和r是任意一对相邻像素点,s在左图片中的坐标为(si,sj),像素点s的RGB值分别为LR(si,sj)、LG(si,sj)、LB(si,sj),r在左图片中的坐标为(ri,rj),像素点r的RGB值分别为RR(ri,rj)、RG(ri,rj)、RB(ri,rj),利用公式
W_s_r=λ*(|LR(si,sj)-LR(ri,rj)|+|LG(si,sj)-LG(ri,rj)|+|LB(si,sj)-LB(ri,rj)|)/3/ΔI+(1-λ)*|D(s)-D(r)|/ΔD
重新计算这对相邻像素点之间边的权重W_s_r,式中D(s)是像素点s的深度值,D(r)是像素点r的深度值,ΔI和ΔD是将彩色图像I和深度图像D归一化到[0,1]范围的两个参数,λ是用于平衡颜色分量项和深度分量项的调节因子;
步骤15:根据更新后的边的权重W_s_r信息,执行步骤7至步骤9,得到更新之后的聚合代价,执行步骤10,所得到的左视差图为最终得到精准的视差图。
进一步,所述步骤3建立的矩阵包括以下几个步骤:
S1:构造矩阵I_Left,设元素I_Left(i,j)是矩阵I_Left的第i行第j列元素,
I_Left(i,j)=(LR(i,j)+LG(i,j)+LB(i,j))/3/255,i=1,2,…,M,j=1,2,…,N;
S2:构造矩阵I_Right,设元素I_Right(i,j)是矩阵I的第i行第j列元素,
I_Right(i,j)=(RR(i,j)+RG(i,j)+RB(i,j))/3/255,i=1,2,…,M,j=1,2,…,N;
S3:构造矩阵detaI_LeftX,设元素detaI_LeftX(i,j)是矩阵detaI_LeftX的第i行第j列元素,
detaI_LeftX(i,j)=I_Left(i,j+1)-I_Left(i,j),i=1,2,…,M,j=1,2,…,N-1,
detaI_LeftX(i,N)=I_Left(i,N),i=1,2,…,M;
S4:构造矩阵detaI_LeftY,设元素detaI_LeftY(i,j)是矩阵detaI_LeftY的第i行第j列元素,
detaI_LeftY(i,j)=I_Left(i+1,j)-I_Left(i,j),i=1,2,…,M-1,j=1,2,…,N,
detaI_LeftY(M,j)=I_Left(M,j),j=1,2,…,N;
S5:构造矩阵detaI_RightX,设元素detaI_RightX(i,j)是矩阵detaI_RightX的第i行第j列元素,
detaI_RightX(i,j)=I_Right(i,j+1)-I_Right(i,j),i=1,2,…,M,j=1,2,…,N-1,
detaI_RightX(i,N)=I_Right(i,N),i=1,2,…,M;
S6:构造矩阵detaI_RightY,设元素detaI_RightY(i,j)是矩阵detaI_RightY的第i行第j列元素,
detaI_RightY(i,j)=I_Right(i+1,j)-I_Right(i,j),i=1,2,…,M-1,j=1,2,…,N,
detaI_RightY(M,j)=I_Right(M,j),j=1,2,…,N;
S7:构造矩阵C_GradX,设元素C_GradX(i,j)是矩阵C_GradX的第i行第j列元素,
C_GradX(i,j)=min(|detal_LeftX(i,j)-detal_RightX(i,j)|,Tgradx),
式中i=1,2,…,M,j=1,2,…,N,Tgradx是用于限制异常值负面影响的截断阈值;
S8:构造矩阵C_GradY,设元素C_GradY(i,j)是矩阵C_GradY的第i行第j列元素,
C_GradY(i,j)=min(|detal_LeftY(i,j)-detal_RightY(i,j)|,Tgrady),
式中i=1,2,…,M,j=1,2,…,N,Tgrady是用于限制异常值负面影响的截断阈值;
S9:构造矩阵C_AD,设元素C_AD(i,j)是矩阵C_AD的第i行第j列元素,
C_AD(i,j)=min((|LR(i,j)-RR(i,j)|+|LG(i,j)-RG(i,j)|+|LB(i,j)-RB(i,j)|)/3,Tcol),
式中i=1,2,…,M,j=1,2,…,N,Tcol是用于限制异常值负面影响的截断阈值;
S10:构造矩阵C_P,设元素C_P(i,j)是矩阵C_P的第i行第j列元素,
C_P(i,j)=(1-α-β)*C_AD(i,j)+α*C_GradX(i,j)+β*C_GradY(i,j),i=1,2,…,M,j=1,2,…,N,α称为水平梯度分量调节因子,β称为垂直梯度分量调节因子。
本发明的有益效果为:通过以上具体实现步骤,即可利用左右图像对进行代价计算、代价聚合、视差精化等步骤生成稠密是视差图。针对弱纹理区域容易产生歧义匹配的缺陷,引入了颜色和梯度多维信息分量使得窗口的权值分配更加合理,增强像素点在弱纹理区域的代价量。并提出一种新型的分组策略,让符合视差一致性的像素点分到同一棵生成树上。在保持时间效率的同时,能生成更为精确的匹配结果,该方法通过改变匹配代价函数、利用改变分段树分组策略、使用树形结构的代价聚合、基于色彩和深度信息的增强分割和树结构的视差精化步骤来实现稠密视差图。
附图说明
图1为本发明的流程示意图;
具体实施方式
为了使本发明的内容更容易被清楚地理解,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
如附图所示,一种基于改进匹配代价的分段树视差图获取方法,包括以下步骤:
步骤1:对左图像进行像素点采集,由左图像上所有像素点按照从左到右,从上到下的顺序构成矩阵Z_Left;设矩阵Z_Left有M行,N列,M=450,N=375;Z_Left(i,j)=(LR(i,j),LG(i,j),LB(i,j))为矩阵Z_Left的第i行第j列元素,其中LR(i,j)、LG(i,j)、LB(i,j)分别为Z_Left(i,j)的RGB值;
步骤2:对右图像进行像素点采集,由右图像上所有像素点按照从左到右,从上到下的顺序构成矩阵Z_Right;设矩阵Z_Right有M行,N列;Z_Right(i,j)=(RR(i,j),RG(i,j),RB(i,j))为矩阵Z_Right的第i行第j列元素,其中RR(i,j)、RG(i,j)、RB(i,j)分别为Z_Right(i,j)的RGB值;
步骤3:建立矩阵,
S1:构造矩阵I_Left,设元素I_Left(i,j)是矩阵I_Left的第i行第j列元素,
I_Left(i,j)=(LR(i,j)+LG(i,j)+LB(i,j))/3/255,i=1,2,…,M,j=1,2,…,N;
S2:构造矩阵I_Right,设元素I_Right(i,j)是矩阵I的第i行第j列元素,
I_Right(i,j)=(RR(i,j)+RG(i,j)+RB(i,j))/3/255,i=1,2,…,M,j=1,2,…,N;
S3:构造矩阵detaI_LeftX,设元素detaI_LeftX(i,j)是矩阵detaI_LeftX的第i行第j列元素,
detaI_LeftX(i,j)=I_Left(i,j+1)-I_Left(i,j),i=1,2,…,M,j=1,2,…,N-1,
detaI_LeftX(i,N)=I_Left(i,N),i=1,2,…,M;
S4:构造矩阵detaI_LeftY,设元素detaI_LeftY(i,j)是矩阵detaI_LeftY的第i行第j列元素,
detaI_LeftY(i,j)=I_Left(i+1,j)-I_Left(i,j),i=1,2,…,M-1,j=1,2,…,N,
detaI_LeftY(M,j)=I_Left(M,j),j=1,2,…,N;
S5:构造矩阵detaI_RightX,设元素detaI_RightX(i,j)是矩阵detaI_RightX的第i行第j列元素,
detaI_RightX(i,j)=I_Right(i,j+1)-I_Right(i,j),i=1,2,…,M,j=1,2,…,N-1,
detaI_RightX(i,N)=I_Right(i,N),i=1,2,…,M;
S6:构造矩阵detaI_RightY,设元素detaI_RightY(i,j)是矩阵detaI_RightY的第i行第j列元素,
detaI_RightY(i,j)=I_Right(i+1,j)-I_Right(i,j),i=1,2,…,M-1,j=1,2,…,N,
detaI_RightY(M,j)=I_Right(M,j),j=1,2,…,N;
S7:构造矩阵C_GradX,设元素C_GradX(i,j)是矩阵C_GradX的第i行第j列元素,
C_GradX(i,j)=min(|detal_LeftX(i,j)-detal_RightX(i,j)|,Tgradx),
式中i=1,2,…,M,j=1,2,…,N,Tgradx是用于限制异常值负面影响的截断阈值;
S8:构造矩阵C_GradY,设元素C_GradY(i,j)是矩阵C_GradY的第i行第j列元素,
C_GradY(i,j)=min(|detal_LeftY(i,j)-detal_RightY(i,j)|,Tgrady),
式中i=1,2,…,M,j=1,2,…,N,Tgrady是用于限制异常值负面影响的截断阈值;
S9:构造矩阵C_AD,设元素C_AD(i,j)是矩阵C_AD的第i行第j列元素,
C_AD(i,j)=min((|LR(i,j)-RR(i,j)|+|LG(i,j)-RG(i,j)|+|LB(i,j)-RB(i,j)|)/3,Tcol),
式中i=1,2,…,M,j=1,2,…,N,Tcol是用于限制异常值负面影响的截断阈值;
S10:构造矩阵C_P,设元素C_P(i,j)是矩阵C_P的第i行第j列元素,
C_P(i,j)=(1-α-β)*C_AD(i,j)+α*C_GradX(i,j)+β*C_GradY(i,j),i=1,2,…,M,j=1,2,…,N,α称为水平梯度分量调节因子,β称为垂直梯度分量调节因子。
步骤4:对于i=1,2,…,M,j=1,2,…,N,根据公式
C_P(i,j)=1/(1+e-C_P(i,j))
计算像素点p的代价量C_P(i,j),e为自然常数,e=2.718281828459;
步骤5:把左图像转化为一幅无向连通图G=(V,E),其中V表示左图像中所有像素点的集合,E表示左图片中所有相邻像素点边的集合;
步骤6:设s和r是左图片中任意一对相邻像素点,s在左图片中的坐标为(si,sj),s的RGB值分别为LR(si,sj)、LG(si,sj)、LB(si,sj),r在左图片中的坐标为(ri,rj),r的RGB值分别为LR(ri,rj)、LG(ri,rj)、LB(ri,rj),利用公式
W_s_r=(|LR(si,sj)-LR(ri,rj)|+|LG(si,sj)-LG(ri,rj)|+|LB(si,sj)-LB(ri,rj)|)/3
计算这对相邻像素点之间边的权重W_s_r;
步骤7:对于左图像中任意两个像素点p和q来说,这两个像素点之间的距离D(p,q)可由公式
D(p,q)=ΣW_p_q
计算得到,D(p,q)表示从像素点p到像素点q之间的路径中相邻像素间边的权重和,这两个像素点之间的相似度S(p,q),可由公式
S(p,q)=e(-D(p,q)/σ)
计算得到,其中σ视一个用户定义的调节因子;
步骤8:将左图像转化为一棵最小生成树模型;转化方法如下:
根据步骤6中的公式,计算获得左图像中所有相邻像素点之间边的权重,根据权重非递减顺序对E中的边进行排序,将集合V中的每一个像素点作为一棵子树;
对于V中任意两个像素点p和q,如果p和q分别属于不同的子树,其中p所属的子树用Tp表示,q所属的子树用Tq表示,则这两棵子树之间边的权重W_Tp_Tq满足下式
W_Tp_Tq≤min(Int(Tp)+k*log(1+|Tp|),Int(Tq)+k*log(1+|Tq|))
式中Int(Tp)和Int(Tq)分别表示子树Tp和Tq中最大边的权重,|Tp|和|Tq|分别表示Tp和Tq中结点的数量,k为指定的常数参数。
对集合E进行扫描搜索,当一条边连接两个不同的子树,则合并子树Tp和Tq成一棵更大的新子树,直到集合V中所有顶点都在一棵树内,搜索停止;
步骤9:设p为分段树中的任意一个节点,p在左图像中的坐标为(i,j),如果p不是叶子节点,利用公式
C_A_d1(p)=C_P(i,j)+Σ(S(p,q)*C_A_d1(q)),q∈Ch(p)
计算p的第一次遍历聚合代价C_A_d1(p),式中Ch(p)表示像素点p的所有孩子节点的集合;如果p是叶子节点,那么C_A_d1(p)=C_P(i,j)。
利用公式
C_A_d2(p)=S(Pr(p),p)*[C_P(pi,pj)-S(p,Pr(p))*C_A_d1(p)]
计算p的第二次遍历聚合代价C_A_d2(p),式中Pr(p)表示像素点p的父节点,Pr(p)在左图像中的坐标为(pi,pj);
利用公式
C_A_d(p)=C_A_d1(p)+C_A_d2(p)
计算p的聚合代价C_A_d(p);
步骤10:设p为分段树中的任意一个节点,p在左图像中的坐标为(i,j),设与像素点p的视差小于Max_disp的像素点个数为L,其中像素点t的聚合代价最小,那么p的第一类视差值可以利用公式d1(p)=C_A_d(t)计算得到,Max_disp=69,所有的像素点的第一类视差值就可以用构成一幅左视差图,用DL表示;
步骤11:再将右图像作为参考图像,然后依次执行步骤2至步骤9,设p为分段树中的任意一个节点,p在右图像中的坐标为(i,j),设与像素点p的视差小于Max_disp的像素点个数为L,其中像素点t的聚合代价最小,那么p的第二类视差值可以利用公式d2(p)=C_A_d(t)计算得到,Max_disp=69,所有的像素点的第二类视差值就可以用构成一幅右视差图,用DR表示;
步骤12:设在世界坐标系下的同一个点在左图像中的视差值为d1(p),在右图像中与对应的像素点的视差值为d2(p),如果|d1(p)-d2(p)|>threshold,那么改点为稳定状态,否则为不稳点状态,threshold=1;
步骤13:设任意一个像素点为p,该像素点的视差值为d,如果p处于稳定状态,并且该像素点的聚合代价大于零,那么利用公式C_new_d(p)=|d-d1(p)|可计算p的新的代价量C_new_d(p),否则C_new_d(p)=0;
步骤14:引入深度信息与色彩信息相结合策略进行树的构建,并利用色彩和深度权重对树结构进行二次分割来增强树的结构;设s和r是任意一对相邻像素点,s在左图片中的坐标为(si,sj),像素点s的RGB值分别为LR(si,sj)、LG(si,sj)、LB(si,sj),r在左图片中的坐标为(ri,rj),像素点r的RGB值分别为RR(ri,rj)、RG(ri,rj)、RB(ri,rj),利用公式
W_s_r=λ*(|LR(si,sj)-LR(ri,rj)|+|LG(si,sj)-LG(ri,rj)|+|LB(si,sj)-LB(ri,rj)|)/3/ΔI+(1-λ)*|D(s)-D(r)|/ΔD
重新计算这对相邻像素点之间边的权重W_s_r,式中D(s)是像素点s的深度值,D(r)是像素点r的深度值,ΔI和ΔD是将彩色图像I和深度图像D归一化到[0,1]范围的两个参数,λ是用于平衡颜色分量项和深度分量项的调节因子;
步骤15:根据更新后的边的权重W_s_r信息,执行步骤7至步骤9,得到更新之后的聚合代价,执行步骤10,所得到的左视差图为最终得到精准的视差图。
通过以上具体实现步骤,即可利用左右图像对进行代价计算、代价聚合、视差精化等步骤生成稠密是视差图。针对弱纹理区域容易产生歧义匹配的缺陷,引入了颜色和梯度多维信息分量使得窗口的权值分配更加合理,增强像素点在弱纹理区域的代价量。并提出一种新型的分组策略,让符合视差一致性的像素点分到同一棵生成树上。在保持时间效率的同时,能生成更为精确的匹配结果,该方法通过改变匹配代价函数、利用改变分段树分组策略、使用树形结构的代价聚合、基于色彩和深度信息的增强分割和树结构的视差精化步骤来实现稠密视差图。
以上所述仅为本发明专利的较佳实施例而已,只是用于帮助理解本发明的方法及其核心思想,并不用以限制本发明专利,凡在本发明专利的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明专利的保护范围之内。
Claims (2)
1.一种基于改进匹配代价的分段树视差图获取方法,其特征在于,包括以下步骤:
步骤1:对左图像进行像素点采集,由左图像上所有像素点按照从左到右,从上到下的顺序构成矩阵Z_Left;设矩阵Z_Left有M行,N列,M=450,N=375;Z_Left(i,j)=(LR(i,j),LG(i,j),LB(i,j))为矩阵Z_Left的第i行第j列元素,其中LR(i,j)、LG(i,j)、LB(i,j)分别为Z_Left(i,j)的RGB值;
步骤2:对右图像进行像素点采集,由右图像上所有像素点按照从左到右,从上到下的顺序构成矩阵Z_Right;设矩阵Z_Right有M行,N列;Z_Right(i,j)=(RR(i,j),RG(i,j),RB(i,j))为矩阵Z_Right的第i行第j列元素,其中RR(i,j)、RG(i,j)、RB(i,j)分别为Z_Right(i,j)的RGB值;
步骤3:建立矩阵,构造矩阵C_P,设元素C_P(i,j)是矩阵C_P的第i行第j列元素,
C_P(i,j)=(1-α-β)*C_AD(i,j)+α*C_GradX(i,j)+β*C_GradY(i,j),i=1,2,…,M,j=1,2,…,N,α称为水平梯度分量调节因子,β称为垂直梯度分量调节因子;
步骤4:对于i=1,2,…,M,j=1,2,…,N,根据公式
C_P(i,j)=1/(1+e-C_P(i,j))
计算像素点p的代价量C_P(i,j),e为自然常数,e=2.718281828459;
步骤5:把左图像转化为一幅无向连通图G=(V,E),其中V表示左图像中所有像素点的集合,E表示左图片中所有相邻像素点边的集合;
步骤6:设s和r是左图片中任意一对相邻像素点,s在左图片中的坐标为(si,sj),s的RGB值分别为LR(si,sj)、LG(si,sj)、LB(si,sj),r在左图片中的坐标为(ri,rj),r的RGB值分别为LR(ri,rj)、LG(ri,rj)、LB(ri,rj),利用公式
W_s_r=(|LR(si,sj)-LR(ri,rj)|+|LG(si,sj)-LG(ri,rj)|+|LB(si,sj)-LB(ri,rj)|)/3计算这对相邻像素点之间边的权重W_s_r;
步骤7:对于左图像中任意两个像素点p和q来说,这两个像素点之间的距离D(p,q)可由公式
D(p,q)=ΣW_p_q
计算得到,D(p,q)表示从像素点p到像素点q之间的路径中相邻像素间边的权重和,这两个像素点之间的相似度S(p,q),可由公式
S(p,q)=e(-D(p,q)/σ)
计算得到,其中σ视一个用户定义的调节因子;
步骤8:将左图像转化为一棵最小生成树模型;转化方法如下:
根据步骤6中的公式,计算获得左图像中所有相邻像素点之间边的权重,根据权重非递减顺序对E中的边进行排序,将集合V中的每一个像素点作为一棵子树;
对于V中任意两个像素点p和q,如果p和q分别属于不同的子树,其中p所属的子树用Tp表示,q所属的子树用Tq表示,则这两棵子树之间边的权重W_Tp_Tq满足下式
W_Tp_Tq≤min(Int(Tp)+k*log(1+|Tp|),Int(Tq)+k*log(1+|Tq|))
式中Int(Tp)和Int(Tq)分别表示子树Tp和Tq中最大边的权重,|Tp|和|Tq|分别表示Tp和Tq中结点的数量,k为指定的常数参数。
对集合E进行扫描搜索,当一条边连接两个不同的子树,则合并子树Tp和Tq成一棵更大的新子树,直到集合V中所有顶点都在一棵树内,搜索停止;
步骤9:设p为分段树中的任意一个节点,p在左图像中的坐标为(i,j),如果p不是叶子节点,利用公式
C_A_d1(p)=C_P(i,j)+Σ(S(p,q)*C_A_d1(q)),q∈Ch(p)
计算p的第一次遍历聚合代价C_A_d1(p),式中Ch(p)表示像素点p的所有孩子节点的集合;如果p是叶子节点,那么C_A_d1(p)=C_P(i,j)。
利用公式
C_A_d2(p)=S(Pr(p),p)*[C_P(pi,pj)-S(p,Pr(p))*C_A_d1(p)]
计算p的第二次遍历聚合代价C_A_d2(p),式中Pr(p)表示像素点p的父节点,Pr(p)在左图像中的坐标为(pi,pj);
利用公式
C_A_d(p)=C_A_d1(p)+C_A_d2(p)
计算p的聚合代价C_A_d(p);
步骤10:设p为分段树中的任意一个节点,p在左图像中的坐标为(i,j),设与像素点p的视差小于Max_disp的像素点个数为L,其中像素点t的聚合代价最小,那么p的第一类视差值可以利用公式d1(p)=C_A_d(t)计算得到,Max_disp=69,所有的像素点的第一类视差值就可以用构成一幅左视差图,用DL表示;
步骤11:再将右图像作为参考图像,然后依次执行步骤2至步骤9,设p为分段树中的任意一个节点,p在右图像中的坐标为(i,j),设与像素点p的视差小于Max_disp的像素点个数为L,其中像素点t的聚合代价最小,那么p的第二类视差值可以利用公式d2(p)=C_A_d(t)计算得到,Max_disp=69,所有的像素点的第二类视差值就可以用构成一幅右视差图,用DR表示;
步骤12:设在世界坐标系下的同一个点在左图像中的视差值为d1(p),在右图像中与对应的像素点的视差值为d2(p),如果|d1(p)-d2(p)|>threshold,那么改点为稳定状态,否则为不稳点状态,threshold=1;
步骤13:设任意一个像素点为p,该像素点的视差值为d,如果p处于稳定状态,并且该像素点的聚合代价大于零,那么利用公式C_new_d(p)=|d-d1(p)|可计算p的新的代价量C_new_d(p),否则C_new_d(p)=0;
步骤14:引入深度信息与色彩信息相结合策略进行树的构建,并利用色彩和深度权重对树结构进行二次分割来增强树的结构;设s和r是任意一对相邻像素点,s在左图片中的坐标为(si,sj),像素点s的RGB值分别为LR(si,sj)、LG(si,sj)、LB(si,sj),r在左图片中的坐标为(ri,rj),像素点r的RGB值分别为RR(ri,rj)、RG(ri,rj)、RB(ri,rj),利用公式
W_s_r=λ*(|LR(si,sj)-LR(ri,rj)|+|LG(si,sj)-LG(ri,rj)|+|LB(si,sj)-LB(ri,rj)|)/3/ΔI+(1-λ)*|D(s)-D(r)|/ΔD
重新计算这对相邻像素点之间边的权重W_s_r,式中D(s)是像素点s的深度值,D(r)是像素点r的深度值,ΔI和ΔD是将彩色图像I和深度图像D归一化到[0,1]范围的两个参数,λ是用于平衡颜色分量项和深度分量项的调节因子;
步骤15:根据更新后的边的权重W_s_r信息,执行步骤7至步骤9,得到更新之后的聚合代价,执行步骤10,所得到的左视差图为最终得到精准的视差图。
2.根据权利要求1所述的一种基于改进匹配代价的分段树视差图获取方法,其特征在于:所述步骤3建立的矩阵包括以下几个步骤:
S1:构造矩阵I_Left,设元素I_Left(i,j)是矩阵I_Left的第i行第j列元素,
I_Left(i,j)=(LR(i,j)+LG(i,j)+LB(i,j))/3/255,i=1,2,…,M,j=1,2,…,N;
S2:构造矩阵I_Right,设元素I_Right(i,j)是矩阵I的第i行第j列元素,
I_Right(i,j)=(RR(i,j)+RG(i,j)+RB(i,j))/3/255,i=1,2,…,M,j=1,2,…,N;
S3:构造矩阵detaI_LeftX,设元素detaI_LeftX(i,j)是矩阵detaI_LeftX的第i行第j列元素,
detaI_LeftX(i,j)=I_Left(i,j+1)-I_Left(i,j),i=1,2,…,M,j=1,2,…,N-1,
detaI_LeftX(i,N)=I_Left(i,N),i=1,2,…,M;
S4:构造矩阵detaI_LeftY,设元素detaI_LeftY(i,j)是矩阵detaI_LeftY的第i行第j列元素,
detaI_LeftY(i,j)=I_Left(i+1,j)-I_Left(i,j),i=1,2,…,M-1,j=1,2,…,N,
detaI_LeftY(M,j)=I_Left(M,j),j=1,2,…,N;
S5:构造矩阵detaI_RightX,设元素detaI_RightX(i,j)是矩阵detaI_RightX的第i行第j列元素,
detaI_RightX(i,j)=I_Right(i,j+1)-I_Right(i,j),i=1,2,…,M,j=1,2,…,N-1,
detaI_RightX(i,N)=I_Right(i,N),i=1,2,…,M;
S6:构造矩阵detaI_RightY,设元素detaI_RightY(i,j)是矩阵detaI_RightY的第i行第j列元素,
detaI_RightY(i,j)=I_Right(i+1,j)-I_Right(i,j),i=1,2,…,M-1,j=1,2,…,N,
detaI_RightY(M,j)=I_Right(M,j),j=1,2,…,N;
S7:构造矩阵C_GradX,设元素C_GradX(i,j)是矩阵C_GradX的第i行第j列元素,
C_GradX(i,j)=min(|detal_LeftX(i,j)-detal_RightX(i,j)|,Tgradx),
式中i=1,2,…,M,j=1,2,…,N,Tgradx是用于限制异常值负面影响的截断阈值;
S8:构造矩阵C_GradY,设元素C_GradY(i,j)是矩阵C_GradY的第i行第j列元素,
C_GradY(i,j)=min(|detal_LeftY(i,j)-detal_RightY(i,j)|,Tgrady),
式中i=1,2,…,M,j=1,2,…,N,Tgrady是用于限制异常值负面影响的截断阈值;
S9:构造矩阵C_AD,设元素C_AD(i,j)是矩阵C_AD的第i行第j列元素,
C_AD(i,j)=min((|LR(i,j)-RR(i,j)|+|LG(i,j)-RG(i,j)|+|LB(i,j)-RB(i,j)|)/3,Tcol),
式中i=1,2,…,M,j=1,2,…,N,Tcol是用于限制异常值负面影响的截断阈值;
S10:构造矩阵C_P,设元素C_P(i,j)是矩阵C_P的第i行第j列元素,
C_P(i,j)=(1-α-β)*C_AD(i,j)+α*C_GradX(i,j)+β*C_GradY(i,j),i=1,2,…,M,j=1,2,…,N,α称为水平梯度分量调节因子,β称为垂直梯度分量调节因子。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910483502.7A CN110211168A (zh) | 2019-06-04 | 2019-06-04 | 一种基于改进匹配代价的分段树视差图获取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910483502.7A CN110211168A (zh) | 2019-06-04 | 2019-06-04 | 一种基于改进匹配代价的分段树视差图获取方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110211168A true CN110211168A (zh) | 2019-09-06 |
Family
ID=67790683
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910483502.7A Withdrawn CN110211168A (zh) | 2019-06-04 | 2019-06-04 | 一种基于改进匹配代价的分段树视差图获取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110211168A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111191694A (zh) * | 2019-12-19 | 2020-05-22 | 浙江科技学院 | 图像立体匹配方法 |
CN111915503A (zh) * | 2020-06-12 | 2020-11-10 | 华南理工大学 | 一种基于树形神经网络结构的视差获取方法、存储介质及计算设备 |
CN113763269A (zh) * | 2021-08-30 | 2021-12-07 | 上海工程技术大学 | 一种用于双目图像的立体匹配方法 |
-
2019
- 2019-06-04 CN CN201910483502.7A patent/CN110211168A/zh not_active Withdrawn
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111191694A (zh) * | 2019-12-19 | 2020-05-22 | 浙江科技学院 | 图像立体匹配方法 |
CN111915503A (zh) * | 2020-06-12 | 2020-11-10 | 华南理工大学 | 一种基于树形神经网络结构的视差获取方法、存储介质及计算设备 |
CN111915503B (zh) * | 2020-06-12 | 2023-08-22 | 华南理工大学 | 一种基于树形神经网络结构的视差获取方法、存储介质及计算设备 |
CN113763269A (zh) * | 2021-08-30 | 2021-12-07 | 上海工程技术大学 | 一种用于双目图像的立体匹配方法 |
CN113763269B (zh) * | 2021-08-30 | 2023-11-24 | 上海工程技术大学 | 一种用于双目图像的立体匹配方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104134234B (zh) | 一种全自动的基于单幅图像的三维场景构建方法 | |
CN110211168A (zh) | 一种基于改进匹配代价的分段树视差图获取方法 | |
CN110827398B (zh) | 基于深度神经网络的室内三维点云自动语义分割方法 | |
CN103544711B (zh) | 遥感影像的自动配准方法 | |
CN108596975B (zh) | 一种针对弱纹理区域的立体匹配算法 | |
CN102665086B (zh) | 利用基于区域的局部立体匹配获取视差的方法 | |
CN104539928B (zh) | 一种光栅立体印刷图像合成方法 | |
CN110310317A (zh) | 一种基于深度学习的单目视觉场景深度估计的方法 | |
CN106600632B (zh) | 一种改进匹配代价聚合的立体图像匹配方法 | |
CN102065313A (zh) | 平行式相机阵列的未标定多视点图像校正方法 | |
CN110189294B (zh) | 基于深度可信度分析的rgb-d图像显著性检测方法 | |
CN111047709B (zh) | 一种双目视觉裸眼3d图像生成方法 | |
CN102831601A (zh) | 基于联合相似性测度和自适应支持权重的立体匹配方法 | |
CN103702103B (zh) | 基于双目相机的光栅立体印刷图像合成方法 | |
CN105005988B (zh) | 一种基于交互式图像分割的立体匹配方法 | |
WO2018053952A1 (zh) | 一种基于场景样本库的影视图像深度提取方法 | |
CN101765019B (zh) | 一种用于运动模糊和光照变化图像的立体匹配方法 | |
CN106408596A (zh) | 基于边缘的局部立体匹配方法 | |
CN110110682A (zh) | 遥感图像的语义立体重构方法 | |
CN106652015A (zh) | 一种虚拟人物头像生成方法及装置 | |
CN103260043A (zh) | 基于学习的双目立体图像匹配方法及系统 | |
CN106447718B (zh) | 一种2d转3d深度估计方法 | |
CN109523528A (zh) | 一种基于无人机双目视觉sgc算法的输电线路提取方法 | |
CN104182968A (zh) | 宽基线多阵列光学探测系统模糊动目标分割方法 | |
CN105657401A (zh) | 一种裸眼3d显示方法、系统及裸眼3d显示装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20190906 |
|
WW01 | Invention patent application withdrawn after publication |