Segment-based Disparity Refinement with Occlusion Handling for Stereo Matching翻译和理解

摘要

摘要:本文提出了一种视差细化方法,通过对视差统计意义的探讨,直接细化赢者通吃视差图。根据基于分割的立体匹配的主要步骤,将参考图像过度分割为超像素,并通过改进的随机样本对每个超像素进行视差面拟合共识(RANSAC)。我们设计了一个两层优化来细化视差平面。在全局优化中,利用马尔可夫随机域(MRF)推理估计超像素点的平均视差,然后根据平均视差推导出遮挡处理的三维邻域系统。在局部优化中,采用贝叶斯推理和贝叶斯预测相结合的概率模型,隐式地实现了三维邻居间的二阶平滑。两层优化是一种纯视差细化方法,因为在细化过程中不需要立体图像对之间的相关信息。在Middlebury和KITTI数据集上的实验结果表明,该方法能够快速准确地进行立体匹配,有效地处理遮挡。由此可见,“匹配成本计算+视差细化”框架是在较低的计算成本下生成精确视差图的一种可能的解决方案。

 

 

1.相关工作

1.1MRF Stereo Methods

      马尔可夫随机场(MRF)立体视觉方法将匹配问题形式化为标签问题,其目标是优化测量标签质量的全局能量函数。传统的MRF立体方法[18]、[19]给每个像素分配一个一维离散视差标签。利用图割[20]、[21]、信念传播[22]、[23]、TRW[24]等优化方法,实现能量函数的最小化。基于图切割的扩展移动和交换移动[18]显示出良好的性能。这些移动可以同时更新所有像素的标签,因此优化很难被局部极小值捕获。一维标签立体声方法的缺点是建模高度倾斜的表面。三维标签立体方法[25][27]的提出,以建立更准确的模型。这些方法不仅可以对高度倾斜曲面进行建模,而且可以实现二阶平滑约束[25]、[28]、[29]。因此,它们通常比1D标签方法有更好的准确性。然而,像素级的全局优化使计算变得复杂。

   我们的方法在超像素层上执行一维标签MRF推理。由于超像素的数量远远小于图像中的像素数量,因此推理速度要快得多。与之前的工作不同,我们的工作是以superpixel的离散均值差作为标签。即使在高度倾斜的表面上,也能正确地估计出这种差异。

1.2 Segment-based Stereo Methods 

       基于分段的立体方法[30][32]假设场景结构为分段平面,差值映射的估计转化为为每个分段分配一个三维视差平面。首先,将参考图像分割成颜色均匀的区域。然后用已知的立体匹配方法计算初始视差图,通过对视差图的平面拟合生成候选视差平面。最后,利用图形切割和信念传播等全局优化方法,为每一段分配一个最优的平面标签。最终的结果取决于分割的质量。为了放宽路段约束,提出了若干改进措施。为了保证深度不连续只出现在段的边界上,过度分割是一种常见的解决方案。Bleyer等人提出了一个像素级的MRF公式,该公式包含了软分段约束。联合分割和视差计算[34],[35]可以提高优化过程中的分割质量。但是这些方法有一个共同的缺点。一个段的finalplane标签是从候选标签集中分配的。有限集可能不包含正确的标记,在这种情况下,视差计划的估计是错误的,错误是无法纠正的。在wang和Zheng[36]的工作中,通过协同优化对总能量函数进行优化,并将其分解为局部优化的子目标能量函数和。优化过程是迭代的,局部优化可以修正虚规划。因此,该方法对初始拟合结果具有较强的鲁棒性。

     与以往的全局能量函数优化方法相比,该方法通过局部优化和隐式约束平滑来细化视差面。此外,视差细化方法不需要立体图像对之间的相关信息,因此可以在单一视图中进行处理。

 

2.OVERVIEW OF THE TWO LAYEROPTIMIZATION(两层优化的概述)

 

    我们提出了一个两层优化来细化WTAdisparity map。在全局优化层(第四节),采用MRF优化算法对后向平行视差图进行估计。

3维邻域系统通过超像素的平均视差划分。在局部优化层(SectionV)中,RANSAC对超像素点拟合了倾斜平面A,并利用超像素点S的平均视差对拟合结果进行了约束。利用贝叶斯推理和贝叶斯预测的概率模型对初始倾斜视差图进行了改进。这两个优化层都在超像素级运行,具有很高的效率。

2.1. FRONT-PARALLEL DISPARITY MAP(前向-平行视差图)

我们使用全局MRF优化来估计一个前并行视差图。超像素被表示为图形节点。MRF优化的目的是最小化后续的能量。

us是标签,在我们的例子中是超像素s的均值视差;n是超像素集合,N代表相邻超像素集合;g(us) 为数据项,f(us,ut)平滑项,l为平衡系数。与3D标签MRF相比,在超像素级优化1Dlabel是有效的(Section IV-B)。我们提出了一种新的基于视差分布(Section IV-A)的数据项,而不是基于左右图像之间的匹配成本或相似度度量。为了处理前-背景遮挡,由us推导出表示深度不连续的三维邻域系统(Section IV-C)。我们还研究了一个特殊的情况,证明1D标签的MRF公式不能模拟高裂纹表面(IV-D部分)。

A.视差分布的解释

   基于分段的立体视觉方法假设视差在一个分段内近似线性。在分段平面假设下,具有适当边界的平面的视差分布是均匀的。

考虑到超像素点的不规则边界形状,建立了超像素点内视差分布的数学模型超像素是正态分布。

    d代表视差,us和ds分别代表超像素s的均值和方差。较高的ds表示较倾斜的表面,而对于前平行表面,ds 近似等于零。(2)的数据项基于视差分布直方图,如本节所述B

B.MRF Optimization

为了估计一个前向平行视差图,我们估计了超像素的超像素视差。front-parallel平面可以通过π=(0,0,us)获取。(2)的数据项和平滑项定义如下:

1)数据项:评估视差中心的置信度,超像素的视差分布是被分成直方图箱,我统计超像素视差落入直方图的数目,宽度为L。定义如下:

 

 Ns为在超像素的素数数目,us的取值为0,1l,2l......,而较低的数据项表示由于负号而较高的置信度,I是一个条件函数:

I表示是否落入Bin的直方图重。数据项的设计是基于投票的。

    落在同一个箱子里的观测次数越多,可信度越高。闭塞区域的wta差异存在噪声干扰,难以达成一致。因此,被遮挡区域的dataterm相对较高,标签以平滑项为主。

2)平滑项:平滑项使相邻超像素间的视差分布中心具有相似性,定义为:

Wst颜色相似度权重,定义为:

y是控制颜色权重的影响系数。I(S)为超像素的色彩平均值,E为下界截断值,L(s,t)相邻的超像素s和t是共享边界长度;T可以是一个度规或半度规,将在C部分定义。

C.3D邻域系统:

通过MRF优化估计的超像素平均视差提供了全局的场景信息。提出了表示深度不连续性的三维邻域系统:

(s,t)为超像素对,如果他们均值视差不相似,那么他们的一范式大于L,那么他们不是相邻,因此,在N3d中可能存在的前-背景连接是切断的。这是遮挡处理的一个重要属性。E章节有更多的描述。

估计N3d的准确度,T是平滑项,通过定N3d ,T的定义如下:

其中τ> 2。Ts是一个半度量,它是非子模的,不能通过流行的扩展移动[18]来优化。

 

代码地址:https://github.com/TingmanYan/SDR

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/510193.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

三大范式和BC范式

https://www.cnblogs.com/awidy/articles/3978724.html 引言 数据库的设计范式是数据库设计所需要满足的规范,满足这些规范的数据库是简洁的、结构明晰的,同时,不会发生插入 (insert)、删除(delete&#x…

重装pip

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.psudo python get-pip.py --force-reinstallsudo apt-get purge python-pkg-resources sudo apt-get -f install sudo rm -Rf /usr/local/bin/pip sudo apt-get install python-pip sudo pip install -U pip

I begin to keep a daily

This is the first day that I write journal because of my English is very poor, so I want to improve my English.I believe that I can keep it. Todays weather is worse than yesterday,it is the big fog and haze(霾). Visibility(能见度) les…

Hadoop文章收集汇总 - 如禁止转载,请及时联系本人 收集学习互联网各位前辈分享的文章

工具自动自动集成文章列表与URL 公众号名称标题作者发布时间Hadoop实操如何使用Sentry管理Hive仓库目录外的其他目录的acl同步Fayson2018/9/30 8:27Hadoop实操如何使用Impala合并小文件Fayson2018/9/29 1:14Hadoop实操如何规划设置Kafka Broker的heap sizeFayson2018/9/28 0:27…

html之文档的头部和元数据定义(上)

什么叫元数据? 要理解这个问题,首先要知道“元”是什么。元(meta),一般被我们翻译成“关于……的……”。 元数据(meta data)——“data about data” 关于数据的数据,一般是结构化数据(如存储在数据库里的数据&#x…

线程和std::shared_ptr智能指针使用

//定义线程指针 std::unique_ptr<std::thread> thread_; //指向定义函数 threadCapture_.reset(new std::thread([this]() { func(); } ));#功能函数 void func() {while(1){std::chrono::system_clock::time_point now std::chrono::system_clock::…

Hbase二级索引+CDH+Lily

1.更改表结构&#xff0c;允许复制 已存在的表 disable tableName alter tableName,{NAME >fn, REPLICATION_SCOPE >1} enable tableName 不存在的表 create ‘table‘,{NAME >‘cf‘, REPLICATION_SCOPE >1} #其中1表示开启replication功能&#xff0c;0表示不开…

html之文档的头部和元数据定义(下,未写完)

设置网页定时跳转 当http-quip属性的值为Content-Language时&#xff0c;就可以设置网页所使用的语言&#xff1a;<mata http-equiv"Refresh" content"n; urlhttp://yourlinlk">定时浏览器将在n秒后跳转到链接&#xff0c;如果没有定义url&#xff0…

win10(UEFI)和Ubuntu双系统安装,无法进入ubuntu。

因为win10采用UEFI引导&#xff0c;所以在安装Ubuntu系统的时候着重注意 其中一个分区为efi作为引导分区 要将安装的启动引导器(grub2)设备选择在efi分区上 如下图&#xff1a;

TF-IDF + K-Means 中文聚类例子 - scala

Demo仅供参考 使用spark1.6import java.io.{BufferedReader, InputStreamReader} import java.util.Arraysimport org.ansj.splitWord.analysis.ToAnalysis import org.apache.hadoop.fs.FSDataInputStream import org.apache.spark.{SparkConf, SparkContext} import org.apa…

双目标定与矫正 matlab

matlab版本有2015a 或更新的本 1.预先拍摄好多幅标定板图像 像这样&#xff1a; 分别将左右图像放在left和right文件夹中。 2.相机标定 选择APPS,下拉菜单选择"stereo camera calibration" 进入一下界面&#xff0c;点击“add image”,分别设置camera1 &#xff0…

平衡二叉树模板

#include <iostream> #include <cstdio> #include <cstring> #include <algorithm> using namespace std; struct node {int ndata; //记录关键字数值node *l,*r;int nheight; //平衡因子 }; int height(node* p) //返回…

Hbase PageFilter 取出数量不准确问题

PageFilter pf new PageFilter(pageFilterSize); filterList.addFilter(pf); PageFilter&#xff1a;设置获取的数据行数PageFilter作用在region上&#xff0c;只能保证当前region返回相应的数量&#xff0c;也就是说大概可理解为 region数量*pageFilterSize

CV_LOAD_IMAGE_COLOR 和 CV_BGR2RGBA找不到定义

添加下面头文件 #include "opencv2/imgcodecs/legacy/constants_c.h" #include "opencv2/imgproc/types_c.h"

堆排序原理及算法实现(最大堆)

堆排序 堆排序是利用堆的性质进行的一种选择排序。下面先讨论一下堆。 1.堆 堆实际上是一棵完全二叉树&#xff0c;其任何一非叶节点满足性质&#xff1a; Key[i]<key[2i1]&&Key[i]<key[2i2]或者Key[i]>Key[2i1]&&key>key[2i2] 即任何一非叶节点的…

Storm 安装

下载地址&#xff1a;http://storm.apache.org/ 下载完成后解压到相应目录 修改 conf目录下的storm.yaml文件,集群的所有服务器统一配置 #zookeeper地址&#xff0c;默认端口2181 storm.zookeeper.servers:- "test1"- "test2"- "test3"#nimbus…

Failed to connect to 127.0.0.1 port 1080: Connection refused package:git

windows平台&#xff1a; 解决方法&#xff1a; 打开c:/user/***/..gitconfig 删除一下内容&#xff1a; [http "https://github.com"] proxy 127.0.0.1:50647 [https "https://github.com"] proxy 127.0.0.1:50647 proxy 127.0.0.1:506…

Hbase Region in transition (RIT) 异常解决

查看Hbase状态&#xff0c;突然发现出现了RIT&#xff0c;并且很长时间了~ 查看了一些相关RIT介绍 &#xff08;部分介绍和Hbase2.0不同&#xff0c;如&#xff1a;RIT状态信息2.0已不在zookeeper保存&#xff09; https://mp.weixin.qq.com/s?__bizMzU5OTQ1MDEzMA&mid224…

邻接表的构建、DFS、BFS搜索

接着上次的文章“图的构建&#xff08;邻接链表法&#xff09;”&#xff0c;邻接链表法构建图相对来说比较简单&#xff0c;并且遍历起来也相对简单&#xff0c;但是要是动态添加图的节点和图的边&#xff0c;则是实在不方便&#xff0c;不过现在不管那么多&#xff0c;今天的…

Storm性能简单测试

看了很多关于Storm性能的文章&#xff0c;说法不一&#xff0c;自己根据实际业务测一下是否能满足自身要求&#xff08;只做了简单集群和代码调优&#xff09; 场景&#xff1a;kafka消费数据标准化后存储到Hbase中 服务器资源&#xff1a;两台32G内存做Supervisor 使用资源平…