发明内容
本发明提供了一种基于SIFT描述子的自适应权重立体匹配方法,本发明提高了低纹理区域和深度不连续区域的匹配精度,详见下文描述:
一种基于SIFT描述子的自适应权重立体匹配方法,所述自适应权重立体匹配方法包括以下步骤:
通过相似性区域判决准则获得各个中心点的自适应聚合窗口;
通过各点SIFT描述子的L1范数进行自适应权重计算,根据初始联合匹配代价、自适应聚合窗口完成匹配代价的优化;
对优化后的匹配代价,采用WTA策略选取每点的最优视差值,然后采取左右一致性检测方法对最优视差值进行检测,利用背景填充法对检测出的误匹配点进行填充,得到最终的视差图。
其中,所述初始联合匹配代价具体为:
采用左右视图梯度域的幅值和相位,对左右视图进行匹配代价的计算,获得初始联合匹配代价。
其中,所述相似性区域判决准则具体为:判定像素点q是否满足以下关系:
Dc(p,q)<ψ,且Ds(p,q)<ξ
其中,Dc(p,q)为中心像素点p与像素点q之间的色彩差异;ψ为阈值;Ds(p,q)表示中心像素点p与像素点q之间的空间距离;ξ为像素点q的最大搜索范围。
进一步地,所述根据初始联合匹配代价、自适应聚合窗口完成匹配代价的优化的步骤具体为:
其中:pij代表聚合窗口内的某个像素点pij(xi,yj),wij表示利用SIFT描述子计算的某个像素点pij的自适应权重;win(p)表示中心点像素p(x,y)基于相似性区域判决准则获得的自适应窗口;C(x,y,d)为初始联合匹配代价;C2(x,y,d)为优化后的匹配代价。
本发明提供的技术方案的有益效果是:本发明将SIFT描述子用于求解自适应权重,并与基于相似性区域判决准则得到的自适应窗口相结合,很好的实现了立体匹配过程中的匹配代价的聚合,能够得到精度较高的视差图,克服了传统算法在深度不连续区域和低纹理区域匹配精度不高的问题,有广泛的应用前景。
实施例2
201:采用左右视图梯度域的幅值和相位,对左右视图进行匹配代价的计算,获得初始联合匹配代价;
其中,传统的立体匹配算法是利用像素点的颜色差值,或基于census变换、rank变换的方法来计算匹配代价,容易受到噪声和局部光照变化的影响。鉴于梯度域对噪声和局部光照变化具有较强的鲁棒性,本发明实施例采用梯度域的幅值和相位来计算匹配代价,以提高算法的鲁棒性。
对于待匹配视图中任意一个像素点(x,y),当视差值为d时,其基于梯度域的联合匹配代价函数定义为:
C(x,y,d)=α·min(Cc(x,y,d),Tc)+β·min((Cg(x,y,d),Tg)+μ·min(Cp(x,y,d),Tp)) (1)
其中,α,β为常数,且满足关系:α+β=1;μ为权重因子,用于调整梯度域的幅值和相位在计算匹配代价时的贡献大小;d表示左右视差图的可能视差,其取值一般为0到最大视差dmax之间的整数;Cc(x,y,d)表示基于图像像素大小的非相似性测度,Tc为该项的最大阈值;Cg(x,y,d)、Cp(x,y,d)分别表示基于梯度域的幅值和相位的非相似性测度,Tg和Tp分别为对应的最大阈值。
其中,Cc(x,y,d)是基于图像的像素大小进行计算的,它对纹理丰富的区域有优势,但对于低纹理区域效果则较差,其定义式为:
其中,IL k(x,y)、IR k(x-d,y)分别为待匹配左右视图中像素点(x,y)、(x-d,y)的k颜色通道的像素值大小;k∈(R,G,B),分别表示RBG颜色空间的R、G和B通道像素值的大小。
另,Cp(x,y,d)、Cg(x,y,d)是基于图像梯度域的幅值和相位进行计算的,其计算公式为:
其中,f(·)表示反正切函数(即,(·)表示等), 表示左视图中x方向和y方向的梯度,表示右视图中x方向和y方向的梯度。
202:利用相似性区域判决准则获得各个中心点的自适应聚合窗口;
固定窗口的局部算法效果与窗口大小有关,窗口选择过小,则匹配代价区分度过低,在低纹理区域容易出现误匹配;反之,若窗口选择过大,在深度不连续区域又会出现较高的误匹配。为解决上述问题,本发明提出利用相似性区域判决准则来自适应获得各个中心点的矩形聚合窗口,以获得最佳的聚合效果。
本发明采取相互正交的水平和垂直扫描线进行分割,以得到某个中心点p(x,y)的聚合窗口win(p)。本发明根据色彩视差一致性假设提出2个判决准则,以确定某中心点p(x,y)的相似性区域,进而获得聚合窗口左、右、上、下4个端点P1、P2、P3、P4的位置,如图2所示:
以左端点P1点的求解过程为例,首先计算中心点p(x,y)左侧任意一点q(x,y)与中心点p(x,y)的色彩差异,其定义如下:
其中,λ为权衡因子,本发明设为0.8,Ik(p),Ik(q)分别表示中心点及其左侧任意一点在RGB空间中的像素值;分别表示像素点p和q在x方向的导数;
公式(5)中第一项用于限定像素点q与p的像素大小差异性,第二项用于限定左侧任意一点q与中心点p的梯度差异性。
本发明提出的相似性区域判决准则可概括如下:
1)判定左侧任意一像素点q是否满足关系:Dc(p,q)<ψ;
其中,Dc(p,q)为中心像素点p与像素点q之间的色彩差异,ψ为阈值,本发明实施例设ψ为25,具体实现时,可以根据实际应用中的需要进行设定,本发明实施例对此不做限制。
2)判定左侧任意一像素点q是否满足关系:Ds(p,q)<ξ;
其中,Ds(p,q)表示像素点p与q之间的空间距离,ξ为像素点q的最大搜索范围,用于防止出现过平滑现象,经过试验,本发明实施例设ξ为15~30,具体实现时,可以根据实际应用中的需要进行设定,本发明实施例对此不做限制。
选择满足上述2个判定准则的最左像素点q作为左端点P1的位置。同理,分别选择满足上述2个准则的最右点、最上点和最下点分别作为右端点P2,上端点P3和下端点P4的位置。
值得注意的是,当计算上端点P3和下端点P4的位置时,公式(5)中的应改为像素点p和q在y方向的梯度
203:计算各点SIFT描述子,利用各点SIFT描述子的L1范数进行自适应权重计算,完成匹配代价的聚合过程;
其中,SIFT特征描述子是利用特征点邻域图像窗口内梯度方向的统计直方图来构造特征描述向量,该特征描述子对图像的仿射变换具有较强的鲁棒性,鉴于此,本发明实施例提出基于SIFT特征描述子来计算自适应聚合权重,具体作法如下:
以某个像素点(x,y)为中心选取8*8的矩形窗口,计算窗口内每个像素点梯度的幅值和方向:
θ(x,y)=arctan((I(x,y+1)-I(x,y-1))/(I(x+1,y)-I(x-1,y))) (7)
其中,g(x,y)、θ(x,y)分别代表点(x,y)处梯度的幅值和方向,I(x,y)表示点(x,y)处像素值的大小,I(x+1,y)表示点(x+1,y)处像素值的大小,I(x-1,y)表示点(x-1,y)处像素值的大小,以此类推,本发明实施例对其他关于I(.)符号的定义不做赘述。
对窗口内每个像素点梯度的幅值利用标准差为1的高斯函数进行加权,其目的是提高中心像素点的权重。在每个4*4的子窗口将图像梯度方向直方图量化到8个平均分配的方向,即将像素点的梯度投影到离其最近的一个方向上,归一化后生成每个像素点的32维SIFT描述子。
利用各点SIFT描述子的L1范数进行自适应权重计算,完成匹配代价的聚合过程。首先提取待匹配图像中每个像素点的SIFT特征描述子,利用其视觉和光照不变性的特点,实现各像素之间相似性测度的计算。
设win(p)为以点p(x,y)为中心点的聚合窗口,则该聚合窗口内的任意一点pij(xi,yj)的自适应聚合权重,可以通过计算pij与p的SIFT特征描述子的相似性来求解,即:
其中,wij为自适应权重;α、β为权重因子,本发明实施例分别设置为0.9、0.1;S(xi,yj)、S(x,y)分别表示聚合窗口内像素点pij与p的SIFT特征描述子;||S(xi,yj)-S(x,y)||1代表L1范数,用来计算两个SIFT特征描述符的相似性。
计算获得像素点p(x,y)的自适应窗口及聚合权重后,本发明实施例利用权重聚合的方式实现像素点p(x,y)匹配代价的优化,定义如下:
其中:pij代表聚合窗口内的某个像素点pij(i,j),wij表示利用SIFT描述子计算的某个像素点pij的自适应权重;win(p)表示中心点像素p(x,y)基于相似性区域判决准则获得的自适应窗口。
204:采用WTA策略选取每点的最优视差值,然后采取LRC(左右一致性检测方法)策略进行遮挡检测,利用背景填充法对检测出的误匹配点进行填充,得到最终的视差图。
本发明采用WTA(winner-takes-all胜者为王)策略来进行最优视差值得选取,即选择使匹配代价达到最小时对应的视差值作为最优视差值,定义式:
D(x,y)=min(C2(x,y,d)) (10)
采用WTA策略得到的最终视差值中仍然存在误匹配点,本发明通过左右一致性检测方法(LRC)来标记出误匹配点,一致性检测条件为:D(x,y)=-D’(x-D(x,y),y),即将不满足该条件的D(x,y)标记为误匹配点。其中:D(x,y)表示以左图为参考图得到的像素点(x,y)的最优视差值,D’(·)表示以右图为参考图得到的的最优视差值,公式(11)中的D’(x-D(x,y),y)表示像素点(x-D(x,y),y)以右图为参考图得到的最优视差值。
对标记出来的误匹配点利用背景填充法进行替换,得到最终的视差图,具体填充的步骤为本领域技术人员所公告,本发明实施例对此不做赘述。