首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

立体SGBM视差图与WLS视差图的视差值差异

基础概念

立体SGBM视差图

  • SGBM:Semi-Global Block Matching,是一种用于计算立体图像对之间视差的算法。
  • 视差图:表示图像中每个像素点的视差值,视差值反映了像素点在左右图像中的位置差异,从而可以推算出深度信息。

WLS视差图

  • WLS:Weighted Least Squares,加权最小二乘法,是一种优化算法。
  • 视差图:同样表示图像中每个像素点的视差值,但通过WLS算法优化,可以得到更平滑、更准确的视差图。

优势与类型

立体SGBM视差图的优势

  • 计算速度快:SGBM算法相对简单,计算速度较快,适用于实时应用。
  • 鲁棒性好:能够在一定程度上处理光照变化、噪声等问题。

WLS视差图的优势

  • 精度高:通过加权最小二乘法优化,视差图更加平滑,细节更丰富,深度估计更准确。
  • 自适应性强:能够根据图像内容自动调整权重,适应不同的场景。

应用场景

立体SGBM视差图的应用场景

  • 自动驾驶:实时深度估计,用于车辆周围环境的感知。
  • 机器人导航:用于机器人路径规划和避障。

WLS视差图的应用场景

  • 虚拟现实:高精度的深度信息有助于生成更真实的虚拟环境。
  • 三维重建:用于高精度的三维模型重建。

视差值差异的原因

主要原因

  1. 算法差异:SGBM和WLS采用了不同的算法原理,SGBM通过局部块匹配计算视差,而WLS通过全局优化计算视差。
  2. 平滑处理:WLS视差图通过加权最小二乘法进行平滑处理,减少了噪声和误差,视差值更加平滑和准确。
  3. 权重分配:WLS算法根据像素点的邻域信息分配权重,能够更好地处理复杂场景中的视差估计。

解决问题的方法

解决视差值差异的方法

  1. 选择合适的算法:根据具体应用场景选择合适的视差计算算法。如果需要实时性和鲁棒性,可以选择SGBM;如果需要高精度和平滑性,可以选择WLS。
  2. 参数调整:根据具体图像内容和场景,调整算法的参数,如块大小、搜索范围、权重分配等,以优化视差图的精度和性能。
  3. 后处理:对生成的视差图进行后处理,如滤波、平滑等,以进一步提高视差图的准确性和稳定性。

示例代码

以下是一个简单的示例代码,展示如何使用OpenCV计算立体SGBM视差图和WLS视差图:

代码语言:txt
复制
import cv2
import numpy as np

# 读取左右图像
left_img = cv2.imread('left.png', 0)
right_img = cv2.imread('right.png', 0)

# 创建SGBM对象
stereo = cv2.StereoSGBM_create(
    minDisparity=0,
    numDisparities=16,
    blockSize=15,
    P1=8 * 3 * 15 ** 2,
    P2=32 * 3 * 15 ** 2,
    disp12MaxDiff=1,
    uniquenessRatio=10,
    speckleWindowSize=100,
    speckleRange=32
)

# 计算SGBM视差图
disparity_sgbm = stereo.compute(left_img, right_img)
disparity_sgbm = cv2.normalize(disparity_sgbm, None, 0, 255, cv2.NORM_MINMAX).astype(np.uint8)

# 创建WLS对象
wls_filter = cv2.ximgproc.createDisparityWLSFilter(matcher_left=stereo)

# 计算WLS视差图
disparity_wls = wls_filter.compute(left_img, right_img)
disparity_wls = cv2.normalize(disparity_wls, None, 0, 255, cv2.NORM_MINMAX).astype(np.uint8)

# 显示视差图
cv2.imshow('SGBM Disparity', disparity_sgbm)
cv2.imshow('WLS Disparity', disparity_wls)
cv2.waitKey(0)
cv2.destroyAllWindows()

参考链接

通过以上内容,您可以更好地理解立体SGBM视差图与WLS视差图的差异及其应用场景,并能够根据具体需求选择合适的算法和参数来解决问题。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

真实场景的双目立体匹配(Stereo Matching)获取深度图详解

双目立体匹配一直是双目视觉的研究热点,双目相机拍摄同一场景的左、右两幅视点图像,运用立体匹配匹配算法获取视差图,进而获取深度图。...---- 三、立体匹配 1. SGBM算法获取视差图   立体校正后的左右两幅图像得到后,匹配点是在同一行上的,可以使用OpenCV中的BM算法或者SGBM算法计算视差图。...,左视差图的数据类型为CV_16UC1,右视差图的数据类型为CV_16SC1 (SGBM中视差图中不可靠的视差值设置为最小视差(mindisp-1)*16。...如果将右视差图不可靠视差值也设置为0,则如下 ?   至此,左视差图和右视差图遥相呼应。 2. 视差图空洞填充   视差图中视差值不可靠的视差大多数是由于遮挡引起,或者光照不均匀引起。...既然牛逼如SGBM也觉得不可靠,那与其留着做个空洞,倒不如用附近可靠的视差值填充一下。   空洞填充也有很多方法,在这里我检测出空洞区域,然后用附近可靠视差值的均值进行填充。

11.1K51

OpenCV stereo matching 代码 matlab实现视差显示

怎样获取与原图像有效像素区域相同的视差图? 在OpenCV2.0及以前的版本中,所获取的视差图总是在左侧和右侧有明显的黑色区域,这些区域没有有效的视差数据。...视差图有效像素区域与视差窗口(ndisp,一般取正值且能被16整除)和最小视差值(mindisp,一般取0或负值)相关,视差窗口越大,视差图左侧的黑色区域越大,最小视差值越小,视差图右侧的黑色区域越大。...:视差窗口,即最大视差值与最小视差值之差, 窗口大小必须是 16 的整数倍,int 型 // 后处理参数 textureThreshold:低纹理区域的判断阈值。...一旦在状态参数中设定了 roi1 和 roi2,OpenCV 会通过cvGetValidDisparityROI 函数计算出视差图的有效区域,在有效区域外的视差值将被清零。...disp12MaxDiff:左视差图(直接计算得出)和右视差图(通过cvValidateDisparity计算得出)之间的最大容许差异。超过该阈值的视差值将被清零。

1.8K20
  • 基于双目视觉的树木高度测量方法研究

    通过SGBM算法和BM算法立体匹配后获得视差深度图像,进而获取树木关键点的三维坐标信息并以此来计算树木高度。将深度学习与双目视觉相结合可以实现树木同时在二维和三维空间的信息提取。...式(3)中的第一项表示像素点p视差为Dp时的匹配代价;第2项表示当视差差值为1个像素时,将增加1个惩罚系数P1;Dq为视差,Dp-Dq表示视差差值;第3项表示当视差差值大于1个像素时,将增加1个惩罚系数...单一方向上,整张图片的像素通过动态规划公式参与: 式中:C(p,d)表示当前代价;第2项中4个式子分别表示像素p在某方向上的像素在视差值为d时的代价、视差值为d-1时的代价加上P1、视差值为d+1时的代价加上...在双目立体视觉标定过程中已建立了以双目相机左镜头的中心作为原点空间坐标系,此时,在经过SGBM、BM算法之后,获得的视差深度图可以较好地获取树木关键点的深度信息。...3.3 立体匹配 获取树木有效特征参数较重要。立体匹配双目图像最重要的作用是获取树木关键点的深度信息,将图像校正后的2张图像通过SGBM算法与BM算法获得树木的视差深度图。

    1.7K30

    关于双目立体视觉的三大基本算法及发展现状的总结

    cost P1、P2—惩罚系数,分别适用于当像素P相邻像素中的disparity值与P的disparity差值为1和大于1时 I[]—当[]内的参数为真时返回1,否则返回0 SGBM算法的基本流程如下:...、P2控制视差图的光滑度 //P2越大,视差图越平滑 sgbm->setDisp12MaxDiff...1 + uniquenessRatio/100)倍时 //最低代价对应的视差值才是该像素点的视差,...④强调场景与任务的约束,建立适用于不同场景和任务的双目立体视觉系统的标准和方法。...华盛顿大学与微软公司合作为火星卫星“探测者”号研制了宽基线立体视觉系统,使“探测者”号能够在火星上对其即将跨越的几千米内的地形进行精确的定位及导航。

    1.9K30

    关于双目立体视觉的三大基本算法及发展现状的总结

    、P2—惩罚系数,分别适用于当像素P相邻像素中的disparity值与P的disparity差值为1和大于1时 I[]—当[]内的参数为真时返回1,否则返回0 SGBM算法的基本流程如下: ①预处理:使用...控制视差图的光滑度 //P2越大,视差图越平滑 sgbm->setDisp12MaxDiff(1.../100)倍时 //最低代价对应的视差值才是该像素点的视差,否则该像素点的视差为 0 ,不能为负值,...④强调场景与任务的约束,建立适用于不同场景和任务的双目立体视觉系统的标准和方法。...华盛顿大学与微软公司合作为火星卫星“探测者”号研制了宽基线立体视觉系统,使“探测者”号能够在火星上对其即将跨越的几千米内的地形进行精确的定位及导航。

    4K20

    OpenCV3.4两种立体匹配算法效果对比

    (cv::StereoSGBM::MODE_SGBM_3WAY); sgbm->compute(imgL, imgR, disp);  效果如图: SGBM算法得到的视差图(左),空洞填充后得到的视差图...(右) 可见SGBM算法得到的视差图相比于BM算法来说,减少了很多不准确的匹配点,尤其是在深度不连续区域,速度上SGBM要慢于BM算法。... 两种立体匹配算法在算出初始视差图后会进行视差图后处理,包括中值滤波,连通域检测等。...大概流程如下: 判断当前像素点四邻域的邻域点与当前像素点的差值diff,如果diff与当前像素点是一个连通域,设置一个标记。...所有像素点处理后,满足条件的区域会被设置为newValue值,后续可以用空洞填充等方法重新估计其视差值。

    4.9K40

    真实场景的虚拟视点合成(View Synthsis)详解

    视差图反映的是同一个三维空间点在左、右两个相机上成像的差异,而深度图能够直接反映出三维空间点距离摄像机的距离,所以深度图相较于视差图在三维测量上更加直观和方便。...利用视差图合成虚拟视点 利用深度图合成虚拟视点 一、利用视差图合成虚拟视点   由于视差图反映的是三维空间点在左、右两个相机上成像的差异,并且由于提前进行了立体校正,这种差异就反映在图像的同一行上。...在立体匹配的SGBM算法中就是以其中某一副为参考图像,在另一幅图像的同一行上搜索匹配点。因此在合成虚拟视点时也只需在同一行上平移虚拟摄像机位置即可。流程如下:   (1)....假设视差图中某一个像素点的视差值为dmax,也就是说从左摄像机camL到右摄像机camR之间,该像素点的视差值变化范围为0~dmax。为了方便介绍我将其归一化到alpha取值范围为0~1。   ...上面效果中在深度不连续区域有较为明显的失真,这是由于该区域为遮挡区域,无法计算出准确的视差值,可以通过观察前面立体匹配博客的视差图或者深度图看出。

    2.9K30

    教程:使用iPhone相机和openCV来完成3D重建(第三部分)

    根据“Learning OpenCV 3”一书,立体匹配的典型技术是块匹配。Open CV提供两种块匹配的实现:立体块匹配和半全局块匹配(SGBM)。两种算法相似,但有差异。...在SGBM算法的特定情况下,有一个名为dis12maxdiff的参数,它指定从左到右计算的视差与从右到左计算的视差之间允许的最大差异。 如果视差之间的差异超过阈值,该像素将被宣布为未知。...当图片被适当地扭曲和SGBM算法很好地调整后,会得到平滑的视差图,如下图所示。这个视差图来自 cones dataset。 ? 平滑的视差图....优化视差图的最佳方法是在算法上构建GUI并实时优化视差图,以获得更平滑的图像。在未来,我将上传一个GUI进行实时微调,同时我们将使用这个视差图。...一个漂亮的视差图会产生这样的结果: ? 上面给出的平滑视差图的点云。 差不多就是这样。你可以通过改进你拍照的方式、校准的方式以及在SGBM算法中微调参数来改善结果。

    1.7K20

    使用iPhone相机和OpenCV来完成3D重建(第三部分)

    在SGBM算法的特定情况下,有一个名为disp12MaxDiff的参数,它指定从左到右计算的差异与从右到左计算的差异之间允许的最大差异。 如果差异之间的差异超过该阈值,则像素将被宣布为未知。...这就是为什么在将视差图转换为点云之前,将其可视化非常方便的原因。 经过多次的尝试和错误,我的视差图最终是这样的。 我自己的视差图 如你所见,这个视差图在我衬衫的区域有很多死点和斑点。...而且,我的嘴不见了,似乎噪声很多。这是因为我没有很好地调整SBGM参数。 当图片被适当地扭曲和SGBM算法被很好地调整,你将得到平滑的视差图,如下所示。...就我而言,这是我的结果。 Point cloud of myself 如您所见,图像看起来有噪声和畸变,与视差图的外观非常相似。根据经验,如果你的视差图看起来含有噪声,那么你的点云就会有点失真。...一个好的视差图会产生这样的结果: 平滑视差图的点云 差不多就是这样。你可以通过改进你的拍照方式,你的校准方式和微调SGBM算法中的参数来改善结果。

    1.4K62

    深度相机-介绍

    原理 应用 IToF主要应用在:Kinect2.0,魅族旗舰手机17Pro、18Pro,无人驾驶中常用的激光雷达 3、 双目立体成像 - Active Stereo 介绍 如同人的双眼,通过左右相机的拍摄图像的差异...(视差)来确定距离。...通过三角定位原理以视差的方式来计算被测物距离。...,匹配左右摄像机间视场中的相同特征,计算匹配特征在左右图像上的列坐标的差值,输出视差图,将视差图通过三角测量的方法转换成距离,输出深度图。...双目视觉三维重建,相机标定如果用matlab标定的话校正后图像是行对准的,而直接用opencv校正的话图像都不能行对准,后面匹配用的是SGBM算法,生成的深度图 立体校正是为了使得左右相机的图像坐标系行对准

    1.4K10

    一篇文章认识《双目立体视觉》

    视差disparity 首先看一组视觉图:左相机图和右相机图不是完全一致的,通过计算两者的差值,形成视差,生成视差图(也叫:深度图) ​ 视差是同一个空间点在两个相机成像中对应的x坐标的差值; 它可以通过编码成灰度图来反映出距离的远近...补充理解: 由立体视觉系统测量的深度被离散成平行平面 (每个视差值一个对应一个平面) ​ 给定具有基线 b 和焦距 f 的立体装备, 系统的距离场受视差范围[dmin ,dmax]的约束。...哦,它是是这样的:(需要 极线校正/立体校正) ​ 极线校正/立体校正 ​ 双目测距流程: 相机标定(获取内参+外参) 双目矫正(矫正镜头变形图像) 双目立体匹配(生成视差图 Disparity map...标定+矫正 (基于MATLAB) b.双目矫正 消除镜头变形,将立体相机对转换为标准形式 ​ c.立体匹配 寻找左右相机对应的点(同源点) ​ d.双目测距(三角测量) 给定视差图、基线和焦距,通过三角计算在...双目测距的Python版代码:看看大家情况,如果需要的,我抽时间写一下分享给大家(BM、SGBM算法等) 如果大家对端到端的视差计算网络感兴趣,需要开源代码跑通教程和介绍,也考虑分享大家,主要看大家意愿了

    10.2K22

    原理+代码详解 | 稠密重建之SGMtSGM算法

    立体匹配算法介绍 全局立体匹配算法 全局立体匹配算法主要是采用了全局的优化理论方法估计视差,建立全局能量函数,通过最小化全局能量函数得到最优视差值; 通过二维相邻像素视差之间的约束(如平滑性约束)...局部立体匹配算法 主要是采用局部优化方法进行视差值估计,局部立体匹配算法有 SAD,SSD 等算法,与全局立体匹配算法一样,也是通过能量最小化方法进行视差估计,但是在能量函数中,只有数据项,而没有平滑项...所以如果当前像素与邻域像素视差相差比较小(1个像素)我们会给一个比较小的惩罚,如果大于一个像素则给一个大的惩罚。...视差优化 视差一致性检查 将左右图互换,得到R-L视差图。与L-R视差图对比,根据左图的视差找到在右图中的对应视差,如果两者小于阈值则认为是准确的,反之是错的把该值剔除。...,得到另一张视差图,因为视差图中每个值所反映的是 // 两个像素之间的对应关系,所以依据视差的唯一性约束,通过左影像的视差图,找到每个像素在右影像的同名点像素及该像素对应的视差值,这两个视差值之间的差值若小于一定

    2K30

    三维重建15-立体匹配11,经典算法Fast Bilateral Solver

    我们先看看这里说的化腐朽为神奇是什么意思吧: 下面我展示了一对双目相机拍摄的原始图像,已经过了立体校正: 一对做过立体校正后的双目图像 而下面左图是OpenCV的SGBM算法得到的视差图,右边则是通过我今天要介绍的算法处理后的视差图...(下面右图),就是用FBS处理了SGBM算法的结果(左图)后得到的,这也是我最喜欢的FBS的用法: 左:SGBM算法结果 右:FBS优化左图的结果 FBS的优秀之处在于它不仅仅可以用于优化初始的视差图...FBS试图优化的全局代价函数 刚才给过的这张图,清晰的展示了上面公式的4张图。左上图为目标图像t,是由一个立体匹配算法得到的初始视差图。而右上图是输出图x,是经过FBS优化得到的结果。...,直接求解一个线性等式Ay=b即可,这是因为FBS不再需要承担做立体匹配的职责,它只需要保证优化后的视差图满足双边平滑以及与初始视差图尽可能相似即可。...下图中左下角是SGBM的结果,右下角是FBS处理后的结果。我们可以看到头发部分的视差图很明显引入了原图中美女头发部分的纹理特征,这并非我们想要的结果。

    54000

    计算机视觉方向简介 | 半全局匹配SGM

    同时,SGM依赖惩罚参数来适应视差连续与断裂等情况,故而惩罚参数的设置较为重要,并且需要预先给定视差范围,在opencv中的sgbm实现中还需要给定许多其他优化参数,如果希望获取较好的匹配效果,合理设置参数非常重要...视差计算及精化 视差计算步骤其实非常简单,通常直接利用赢家通吃(WTA)算法,即选择某一个像素在所有视差值中最小的那一个即可,这也间接说明上一步,也即代价聚集步骤后所得到的视差空间中的代价值需要非常准确...视差优化则是对计算得到的视差图进行进一步的优化,包括剔除粗差,亚像素插值,平滑等等。...比如经常使用的左右一致性检查,可用来剔除遮挡点所产生的错误匹配,对视差图的改进比较大,有时候甚至可以成为许多算法的“遮羞布”。...亚像素插值是对WTA得到的整像素进行精化,通常使用二次曲线拟合来获得子像素的视差。平滑则是使用一些平滑算子对视差图进行平滑处理。 结语 本文简要介绍了SGM的思想,并辅以部分代码以助于理解。

    3.8K10

    DCF:立体视觉的视差计算系统

    首发地址:DCF:立体视觉的视差计算系统 视差图是立体视觉系统的重要组成部分,因为它们会对两个或多个图像的位移进行编码。...不过,以前的工作只提供了一些实现细节,处理步骤上不太好定义,并且很少讨论软件设计。与之相反,DCF是对立体视觉系统的主要组件进行标准化,并进行了集成,以促进视差图的构建。...视差计算旨在测量相机之间像素的位移[8]。移动较少的像素具有较小的视差值。另一方面,当可以在非相邻位置处观察到像素移动时,出现较大的视差值。该测量是根据一个或多个目标图像与参考图像的坐标来计算的。...顾名思义,参考图像是观察像素位移的起点。 视差信息表示着场景中的元素到参考相机的接近度或距离。视差也被视为逆深度,因为视差值与深度成反比[9,10]。...当像素在图像之间具有较小的位移时,视差值指示场景中的对象离得更远,即,它们具有更大的深度值。相反,更显著的差异表明场景中的对象更接近参考相机,即它们具有更低的深度值。

    83220

    三维重建23-立体匹配19,端到端立体匹配深度学习网络之怎样估计立体匹配结果的置信度?

    由此,我们有必要为立体匹配的结果引入置信度,当某些像素的视差置信度很低时,可以被判断为错误的匹配,然后用邻域像素的视差值来替换。这样可以避免将错误的匹配引入到后端的应用。...我们来看看下面这篇文章介绍的内容 这篇文章里面展示了理想的匹配结果和可能导致错误的匹配结果之间的差异 左图是理想的匹配结果,横轴是视差值,纵轴是匹配代价。...比如c1点是全局最低点,但它和旁边的第二最低点c2之间的代价差异并不大。另外c2m是第二个局部最低点,与c1的代价相差也不大。...既然立体匹配技术本身已经从传统算法演进到了基于深度学习的算法,那么与之相应的置信度图的计算,也可以一样利用深度学习来完成。...好了,那么现在如果有一个输入的从左图到右图的视差图,当我们要判断某个像素的匹配优劣时,可以以这个像素为中心取一个小窗口,计算窗口内每个像素的视差值与该像素的视差差异,这样我们可以构成一个以这种视差差异为值的二维视差块

    35010

    DCF:立体视觉的视差计算系统

    与之相反,DCF是对立体视觉系统的主要组件进行标准化,并进行了集成,以促进视差图的构建。因此,DCF算法可以被参数化或使用先前定义的配置来执行。...视差计算旨在测量相机之间像素的位移[8]。移动较少的像素具有较小的视差值。另一方面,当可以在非相邻位置处观察到像素移动时,出现较大的视差值。该测量是根据一个或多个目标图像与参考图像的坐标来计算的。...顾名思义,参考图像是观察像素位移的起点。 视差信息表示着场景中的元素到参考相机的接近度或距离。视差也被视为逆深度,因为视差值与深度成反比[9,10]。...当像素在图像之间具有较小的位移时,视差值指示场景中的对象离得更远,即,它们具有更大的深度值。相反,更显著的差异表明场景中的对象更接近参考相机,即它们具有更低的深度值。...DCF可以提出与比较不同的视差计算方法、估计和预测的视差之间的误差分析、每种算法的执行时间、过滤输入图像、构建视差图以及细化视差计算相关的研究问题。

    21920

    三维重建14-立体匹配10,经典视差优化算法Fast Bilateral-Space Stereo

    事实上,这些指标都在强调视差图在视差方向上的准确性,却没有怎么强调视差图与原图之间的贴合性——或者说,它们都在强调Z方向的准确性,却没有重视其在X/Y方向上的准确性。...算法的边缘瑕疵: 本文算法渲染细节 小结一下我们现在得到的信息: 传统的基于类似MiddleBurry这样的数据集的评价指标来设计的双目立体匹配算法,大多数侧重于视差值或者深度值的准确性,却对视差图贴合原图物体边缘的程度不够重视...而有一类算法,比如说我今天将要介绍这种算法,特别强调视差图与原图目标边缘的贴合程度,从而比较适合产生渲染类应用所需要的视差图(深度图)。 那么是什么样的算法能够从原理上保证这一点呢?它是如何做到的呢?...于是这个过程就变成了一个最优化某个能量函数的过程,该函数通常写成如下的形式: 等号右边第1项是数据项,它衡量计算出的视差与实际输入图像关系的差异。...我们接着来看看Jon是如何一步步做到这种转换的。 三. 视差图的平滑性与双边滤波 现在重新想想我们的视差图需要满足什么样的特性:视差图总体上是平滑变化的,视差的突然变化只会在场景内物体的边缘处产生。

    84121

    双目立体匹配

    好久没有更新和视觉相关的内容了,相信小伙伴们已经等呆好久了。 1、立体匹配定义 立体匹配是立体视觉研究中的关键部分(双目匹配与深度计算(三角化),直接法中也有一定关系)。...稠密匹配:是基于生成的视差图,对于所有像素都能生成确定视差值,称为稠密匹配。...体现了定义场景的约束,C是匹配代价,P是不同两像素p和q视差的函数,一般称之为惩罚项(penalty),当p点和q点视差不相等时,P>0,且与两者差值越大,P值越大。当p和q视差相等时,P=0。...与全局立体匹配算法相似,通过优化一个代价函数的方法计算最佳视差。但是,在局部立体匹配算法的能量函数中,只有基于局部区域的约束数据项,没有平滑项。...②Z.Gu最早提出将Rank变换函数引入到立体匹配中,与其他相似性测度相比,Rank变换对图像噪声和立体图像的亮度差异不那么敏感,且计算快,实时性好。Rank变换函数公式如下: ?

    1.4K20

    三维重建22-立体匹配18,端到端立体匹配深度学习网络之怎样进行实时立体匹配?

    三维重建21-立体匹配17,端到端立体匹配深度学习网络之如何获得高分辨率的视差图我们讲了端到端深度学习网络中获取高分辨率视差图的各种方法,我们看到这里面有自底向上和自顶向下两大类算法,而我个人最喜欢的还是自顶向下的方法...这也导致现在在工业界,很多时候还在采用SGBM、ADCensus这样的传统算法来做双目立体视觉的核心算法,这些传统算法经过硬件加速后,可以在低价的设备上取得很不错的性能、效果也可堪一用。...这样,网络最终产生的一维视差残差,在叠加到预测上后,ReLU激活函数确保了视差值的正确性。...从预定义的均匀分布中产生k个候选视差值 传播层:利用卷积运算,将邻域的视差进行传播,这样就可以把一个像素的视差传播到它的4个邻域。...评估层:接下来对任意像素i,用候选视差值,计算左右两图的匹配得分,计算方法是计算左右两个特征向量的内积: �(�,�)= ,其中j是i的对应候选像素。

    38010
    领券