一种基于双目视觉的半全局立体匹配方法组成比例

技术编号:39182257 阅读:32 留言:0更新日期:2023-10-27 08:29
本发明专利技术公开了一种基于双目视觉的半全局立体匹配方法。涉及立体匹配技术领域,该方法对代价计算和代价聚合两个方面进行改进,提升了视差图的准确率。首先采集左右图像信息并进行预处理,然后分别计算图像关于梯度的代价、Census代价和Ad代价,并将它们加权融合为新的代价。在代价聚合部分,将十字交叉窗口与引导滤波相结合,对代价进行滤波。然后使用基于八路径的扫描线优化进一步优化代价,接着使用赢家通吃策略计算视差,最后使用左右一致性检查、视差填充以及中值滤波对视差图做优化。本发明专利技术采用融合代价以及结合引导滤波做代价聚合,强化了代价的表现力并在聚合时考虑到物体边缘,使得算法在图像的弱纹理和不连续区域表现更佳。现更佳。现更佳。

【技术实现步骤摘要】
一种基于双目视觉的半全局立体匹配方法


[0001]本专利技术涉及立体匹配
,具体涉及一种基于双目视觉的半全局立体匹配方法。

技术介绍

[0002]随着近年来计算机科学的快速发展,计算机视觉领域中的双目视觉占据了重要地位。双目视觉是通过两台校正过的相机对同一物体进行拍照,然后对得到的左右图片进行立体匹配,得到场景中的深度信息,进而由二维场景得到三维场景的信息。立体匹配是双目视觉中最重要的一个步骤,其本质通过左边图像的像素点来寻找对应右图像素点的位置,然后计算出两点横坐标之差,得到视差。所以,立体匹配的精度直接决定了三维重建的质量。
[0003]立体匹配可分为全局立体匹配、局部立体匹配和半全局立体匹配。全局立体匹配使用整个图像的信息,再进行立体匹配的过程中考虑了所有像素之间的关系。如动态规划(Dynamic Programming)算法,动态规划算法试图找到整个图像中代价最小的匹配路径,这样可以保证全局一致性,视差图准确度较高,但计算复杂度较高。局部立体匹配算法是基于局部区域的匹配算法,它只考虑像素点周围的领域信息。如块匹配算法(Block Matching),块匹配算法将图像分为小块,然后选择左图像中的一个块,寻找在右图中最相似的块,从而计算出视差。局部匹配算法简单、高效,但视差图精度较低。半全局算法是介于全局算法与局部算法之间的一种算法,具有较高的匹配精度与效率。如SGM(Semi

Global Matching)算法,在全局匹配路径搜索时考虑了像素点在多个方向上的代价信息,从而在保持全局一致性的同时,降低了计算复杂度,同时保证了匹配的精度。
[0004]立体匹配算法虽然得到了广泛的应用,但在实际应用中仍然存在一些棘手的问题;(1)弱纹理区域。指图像中色彩或灰度分布相对比较均匀的区域,这些区域在匹配时,往往代价值没有明显的区分。(2)深度不连续区域。这些区域的空间往往是非连续的,使用固定的窗口会包含深度不连续的区域,从而使视差图边缘出现膨胀现象,产生误匹配。(3)遮挡问题。由于遮挡使该区域的像素点无法匹配到另一副图像,只能通过视差优化来寻找合适的视差值来填充。

技术实现思路

[0005]为解决
技术介绍
中涉及到的前两个问题,本专利技术提出了一种基于双目视觉的半全局立体匹配方法。
[0006]本专利技术采用以下技术方案:一种基于双目视觉的半全局立体匹配方法包括以下步骤:
[0007]步骤1:使用双目相机对场景进行拍摄,获得左、右两个相机拍摄的图像。通过标定相机获取相机的内外参数对照像进行矫正,使左右图像为同一水平面;
[0008]步骤2:对左右图像进行预处理,保留需要的图像区域;
[0009]步骤3:对左右图像进行代价计算,分别计算新的关于梯度的代价、Census代价以及Ad代价,然后将三种代价使用不同的比例进行加权融合,最后得到一个代价空间;
[0010]步骤4:对得到的代价空间使用自适应窗口结合引导滤波进行代价聚合;
[0011]步骤5:对代价使用八路径进行扫描线优化;
[0012]步骤6:采用赢家通吃策略计算出图像的视差;
[0013]步骤7:在视差优化中使用左右一致性检查、视差填充和中值滤波对视差图优化处理。
[0014]进一步的,所述步骤3对左右图像进行代价计算包括:
[0015]计算左右图像的梯度,然后定义一个大小为5
×
5的矩形窗口,窗口内每个点为图像的梯度值。使用5
×
5的窗口遍历图像,将窗口中心点的梯度值与窗口其它的梯度值依次比较。若梯度值小于中心点的梯度值则记为1,否则记为0,从而得到长度为24的比特串序列。比较公式如下:
[0016][0017]其中:I(p)为窗口中心点的梯度值;I(q)为除中心点外其余各点的梯度值。然后对得到的比特串按位进行异或运算,计算结果为1的个数,记为汉明距离。其中汉明距离越小,代表两点相似度越高。最后得到的代价记为新的关于梯度的代价。
[0018]采用同样的方法,将5
×
5矩形窗口里的梯度值换成左右图像的灰度值,计算得出Census代价。将左图与右图的灰度图像相减,得到Ad代价。将新的梯度代价、Census代价和Ad代价按比例进行加权融合,在这之前需要将三种代价的范围归一化到[0,1]之间。公式如下:
[0019][0020]C(p,d)=ρ(C
gdc
(p,d),λ
gdc
)+ρ(C
ad
(p,d),λ
ad
)+ρ(C
cemsus
(p,d),λ
census
)
[0021]其中c为代价值,λ为权重比列,C(p,d)为融合之后的最终代价。
[0022]进一步的,所述步骤4对得到的代价空间使用自适应窗口结合引导滤波进行代价聚合包括:
[0023]根据左图的每个像素颜色和长度距离为依据,对每个像素建立自适应十字交叉域。结合引导滤波按照十字交叉域窗口对代价空间进行滤波。公式如下:
[0024][0025]其中q
i
是代价矩阵矩q在点i处的值,I
i
是引导图像I在i处的值,ω
k
是k为中心的十字窗口,a
k
和b
k
是ω
k
内的线性参数。
[0026]进一步的,所述步骤5对代价使用八路径进行扫描线优化包括:
[0027]将像素点p在某条路径上的所有视差范围内的代价进行聚合,然后对像素p的八条路径上的代价值进行累加,得到p的代价函数,最后对代价值取平均得到最终的代价值。
[0028]进一步的,所述步骤6采用赢家通吃策略计算出图像的视差包括:
[0029]对步骤5得到最终代价值,在视差范围内,选取代价值最小的代价所对应的视差作为该点的视差值,得到图像的初步视差图。
[0030]进一步的,所述步骤7在视差优化中使用左右一致性检查、视差填充和中值滤波对
视差图优化处理包括:
[0031]计算出左右视差图,如果左视差图与右视差图对应点视差超出阈值范围,则记为误匹配的匹配点,将其剔除。对剔除的点采用局部迭代投票,得到合适的视差值来填充这些被剔除的点。最后,对整个视差图采用中值滤波平滑处理。
[0032]本专利技术的有益效果在于:
[0033]1、本专利技术在代价计算中引入了一种新的关于梯度的代价计算方式,同时将其与Census代价和Ad代价进行加权融合得到最终的融合后的代价。融合后的代价具有更强的特征表现,减少了在低纹理区域和遮挡区域的误匹配率,提高本算法的鲁棒性。
[0034]2、本专利技术在代价聚合中引入了引导滤波,与十字交叉窗口相结合。十字交叉窗口能够提高滤波后视差的准确率,引导滤波具有很好的边缘保持性。二者相结合,在代价聚合中提升了聚合的准确率,同时保证了匹配中物体的边缘不模糊,有效缓解了当前算法得出视差本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于双目视觉的半全局立体匹配方法,其特征在于包括以下步骤:步骤1:使用双目相机对场景进行拍摄,获得左、右两个相机拍摄的图像。通过标定相机获取相机的内外参数对照像进行矫正,使左右图像为同一水平面;步骤2:对左右图像进行预处理,保留需要的图像区域;步骤3:对左右图像进行代价计算,分别计算新的关于梯度的代价、Census代价以及Ad代价,然后将三种代价使用不同的比例进行加权融合,最后得到一个代价空间;步骤4:对得到的代价空间使用自适应窗口结合引导滤波进行代价聚合;步骤5:对代价使用八路径进行扫描线优化;步骤6:采用赢家通吃策略计算出图像的视差;步骤7:在视差优化中使用左右一致性检查、视差填充和中值滤波对视差图优化处理。2.根据权利要求1所述的基于双目视觉的半全局立体匹配方法,其特征在于,所述步骤3中一种新的关于梯度的计算方式,具体步骤如下:计算左右图像的梯度,然后定义一个大小为5
×
5的矩形窗口,窗口内每个点为图像的梯度值。使用5
×
5的窗口遍历图像,将窗口中心点的梯度值与窗口其它的梯度值依次比较。若梯度值小于中心点的梯度值则记为1,否则记为0,从而得到长度为24的比特串序列。比较公式如下:其中:I(p)为窗口中心点的梯度值;I(q)为除中心点外其余各点的梯度值。然后对得到的比特串按位进行异或运算,计算结果为1的个数,记为汉明距离。其中汉明距离越小,代表两点相似度越高。最后得到的代价记为新的关于梯度的代价。3.根据权利要求1所述的基于双目视觉的半全局立体匹配方法,其特征在于,所述步骤3中对代价进行融合的计算方式,具体步骤如下:将新的梯度代价、Census代价和Ad代价按比例进行加权融合,在这之前需要将三种代价的范围归一化到[0,1]之间。公式如下:C(p,d)=ρ(C
gdc
(p,d),λ
gdc
)+ρ(C
ad
(p,d),λ
ad<...

【专利技术属性】
技术研发人员:刘奇季鹏
申请(专利权)人:南京工业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1