HSM-Net: Hierarchical Deep Stereo Matching on High-resolution Images

2024-02-09 22:10

本文主要是介绍HSM-Net: Hierarchical Deep Stereo Matching on High-resolution Images,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

paper code

Abstract
应用端到端的框架,从粗到细的层次上递增地搜索对应关系。由于高分辨率立体数据集相对较少,我们引入了一个包含高分辨率立体对的数据集,用于训练和评估。

Motivation
1.立体匹配中的误差随深度的增加呈二次曲线增加,提供更高的分辨率可以带来更好的预估。
但是高分辨率带来运行时间和内存开销的增加过大。
2.对于缩小比例的图像可以得到更快的运行速度,但是预测的结果模糊且对远场的视差估计不准确。
3.目前的SOTA算法在高分辨率数据集上表现不佳,主要原因是架构的不足和高分辨率数据集的缺失。

Core idea
模型以从粗略到精细的方式推理,粗分辨率图像用于估计较大的差异,然后用于bias/pre-warp 细化尺度视差预估。虽然效率很高,但粗略到精细的方法在粗略分辨下匹配薄结构时效果较差 ,因为低分辨率下这些结果会消失。而我们的模型计算一个由粗到精的特征量解码器,该特征量逐渐增加分辨率。至关重要的是,初始的粗略特征量可以在整个pipeline完成前生成大物体视差的粗略预估,这允许这网络可以按需生成近距离物体的报告,这对于实时快速导航至关重要。

实施方法
关键部分:1)高效的分层立体匹配体系结构,2)一套新颖的非对称增强技术,以及3)用于训练的高分辨率合成数据集。

设计分层网络的核心思想是:在提取多尺度特征的同时,首先通过网络对高分辨率图像进行积极的下采样,然后利用潜在的对应关系逐步建立分辨率提高的代价金字塔
在这里插入图片描述

从粗到精的设计原则是至关重要的,特别是利用1)空间金字塔池(SPP),它允许特征在接受野中显著增加。如果没有这一点,与高分辨率图像的其余部分相比,特征往往具有太小的接受范围。SPP中的原始实现将上采样的金字塔特征恢复到原始分辨率。为了减少内存,我们保留了集合特征的原始粗分辨率;2)跨视差维度的3D卷积,使我们能够有效地处理高分辨率代价体积;3)多尺度损失函数。

我们使用特征金字塔编码器来提取描述符,以进行由粗到精的匹配。为了在保持粗尺度信息的同时有效地提取不同细节层次的特征,我们采用了跳跃连接的编解码器结构。功能编码器由定制的RESNET主干和4个剩余块组成,后面跟着4个SPPlayer层(同样,用有限的计算和内存来增加接受域)。

对于左右两幅图像,我们都获得了这样的特征,然后通过考虑沿着水平扫描线的潜在匹配描述符对之间的差异来构造4D特征体。我们构建了一个由4个体积组成的金字塔,每个体积都具有越来越高的空间分辨率和越来越高的视差分辨率。虽然成本体积传统上是3D的(高度H乘以宽度W乘以视差D),但我们的特征体积包括表示特征通道C数量的第四个维度,对于编码器中的后续层,该维度会增加。

每个特征卷的解码或过滤过程。让我们首先将卷积3D“块”定义为具有残差连接的两个3D卷积。1)特征体积由6个Conv3D块过滤。2)就像特征提取的情况一样,然后我们应用V体积金字塔池(我们将SPP扩展到4D特征体)来生成能够为高分辨率输入捕获足够的全局上下文的特征。3a)对输出进行三线性上采样,以获得更高的空间(和视差)分辨率,从而可以将其与金字塔中的下一个4D特征体积融合。3b)为了报告从当前比例计算出的按需差异,使用另一个常规3D块对输出进行处理,以生成3D产出成本量。在计算棱锥体下游的后续特征体积之前,该成本量可以直接报告差异。
在这里插入图片描述
关于数据预处理
大多数传统的立体系统对目标和参考视图图像对进行几个假设,包括1)两个图像处于相同的成像条件下,2)摄像机是已完美校准,3)没有遮挡,每个像素都可以找到匹配。
这些假设在现实世界的场景中并不总是成立的。对于基于学习的方法,我们提出了3种非对称增强技术来解决这些问题:y分量增加校准,非对称彩色增强,非对称掩码。

思考
文章中提到了一个思想:在cost regularization的部分像特征提取一样用SPP捕获多尺度上下文信息。所以其实拿到cost volume之后的regularization部分与特征提取是有很多相近之处的,可以尝试在这一部分引入更多特征提取模块的技巧。
同时有一点需要注意,最近看的一些多尺度视差预估的论文都在不同尺度的cost上做残差连接或者说element-wise summation,但是并没有明确这一部分的含义,只是粗略地讲上下文信息融合,但是如果已经得到了不同尺度的输出视差图,我们融合的具体是哪一部分的有效信息,我觉得更多的是从coarse部分拿到的一些smoothness信息,或者说平滑优化信息,可以针对这一点做一些验证。

这篇关于HSM-Net: Hierarchical Deep Stereo Matching on High-resolution Images的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/695409

相关文章

poj 1258 Agri-Net(最小生成树模板代码)

感觉用这题来当模板更适合。 题意就是给你邻接矩阵求最小生成树啦。~ prim代码:效率很高。172k...0ms。 #include<stdio.h>#include<algorithm>using namespace std;const int MaxN = 101;const int INF = 0x3f3f3f3f;int g[MaxN][MaxN];int n

如何在Visual Studio中调试.NET源码

今天偶然在看别人代码时,发现在他的代码里使用了Any判断List<T>是否为空。 我一般的做法是先判断是否为null,再判断Count。 看了一下Count的源码如下: 1 [__DynamicallyInvokable]2 public int Count3 {4 [__DynamicallyInvokable]5 get

2、PF-Net点云补全

2、PF-Net 点云补全 PF-Net论文链接:PF-Net PF-Net (Point Fractal Network for 3D Point Cloud Completion)是一种专门为三维点云补全设计的深度学习模型。点云补全实际上和图片补全是一个逻辑,都是采用GAN模型的思想来进行补全,在图片补全中,将部分像素点删除并且标记,然后卷积特征提取预测、判别器判别,来训练模型,生成的像

.NET 自定义过滤器 - ActionFilterAttribute

这个代码片段定义了一个自定义的 ASP.NET Core 过滤器(GuardModelStateAttribute),用于在控制器动作执行之前验证模型状态(ModelState)。如果模型状态无效,则构造一个 ProblemDetails 对象来描述错误,并返回一个 BadRequest 响应。 代码片段: /// <summary>/// 验证 ModelState 是否有效/// </

.Net Mvc-导出PDF-思路方案

效果图: 导语:     在我们做项目的过程中,经常会遇到一些服务性的需求,感到特别困扰,明明实用的价值不高,但是还是得实现;     因此小客在这里整理一下自己导出PDF的一些思路,供大家参考。     网上有很多导出PDF运用到的插件,大家也可以看看其他插件的使用,学习学习; 提要:     这里我使用的是-iTextSharp,供大家参考参考,借鉴方案,完善思路,补充自己,一起学习

.net MVC 导出Word--思路详解

序言:          一般在项目的开发过程中,总会接收到一个个需求,其中将数据转换成Work来下载,是一个很常见的需求;          那么,我们改如何处理这种需求,并输出实现呢?          在做的过程中,去思考 1、第一步:首先确认,Work的存在位置,并创建字符输出路:             //在的项目中创建一个存储work的文件夹             string

asp.net 中GridView的使用方法

可以看看,学习学习 https://blog.csdn.net/zou15093087438/article/details/79637042

leetcode#10. Regular Expression Matching

题目 Implement regular expression matching with support for ‘.’ and ‘*’. '.' Matches any single character.'*' Matches zero or more of the preceding element.The matching should cover the entire input

Deep Ocr

1.圈出内容,文本那里要有内容.然后你保存,并'导出数据集'. 2.找出deep_ocr_recognition_training_workflow.hdev 文件.修改“DatasetFilename := 'Test.hdict'” 310行 write_deep_ocr (DeepOcrHandle, BestModelDeepOCRFilename) 3.推理test.hdev

ASP.NET状态管理的总结

由于HTTP协议的无状态特性,导致在ASP.NET编程中,每个请求都会在服务端从头到执行一次管线过程, 对于ASP.NET页面来说,Page对象都会重新创建,所有控件以及内容都会重新生成, 因此,如果希望上一次的页面状态能够在后续页面中保留,则必需引入状态管理功能。   ASP.NET为了实现状态管理功能,提供了8种方法,可帮助我们在页面之间或者整个用户会话期间保留状态数据。 这些方法分为二类: