PatchMatchNet笔记

news2024/11/26 17:23:55

PatchMatchNet笔记

    • 1 概述
    • 2 PatchmatchNet网络结构图
      • 2.1 多尺度特征提取
      • 2.2 基于学习的补丁匹配
    • 3 性能评价

PatchmatchNet: Learned Multi-View Patchmatch Stereo:基于学习的多视角补丁匹配立体算法

1 概述

特点
  高速,低内存,可以处理更高分辨率的图像,它的效率比所有现有的性能最好的模型都要高得多: 比最先进的方法至少快2.5倍,内存使用量减少一倍。
  首次在端到端可训练架构中引入了迭代的多尺度Patchmatch,并用一种新颖的、可学习的自适应传播和每次迭代的评估方案改进了传统Patchmatch核心算法。

主要贡献
  基于学习的方法比传统的方法有优势,但是受限于内存和运行时间,于是将补丁匹配的想法引入到端到端可训练的深度学习中,用可学习的自适应模块增强了补丁匹配的传统传播和代价评估步骤,减少了内存消耗和运行时间。

2 PatchmatchNet网络结构图

  补丁匹配网络的结构:多尺度特征提取器、基于学习的补丁匹配和细化。补丁匹配应用于多个阶段的多次迭代,以从粗到细的方式预测深度映射。细化使用输入来指导最终深度贴图的上采样。在阶段k上,深度图的分辨率为W/ 2 k× H/2 k,输入图像的大小为W×H。
在这里插入图片描述

2.1 多尺度特征提取

  给定N张大小为W×H的输入图像,使用I0和I1,…,In分别表示参考图像和源图像。
特征是在多个分辨率下分层提取的(像特征金字塔结构),可以粗到细的方式推进深度地图估计。
在这里插入图片描述

2.2 基于学习的补丁匹配

补丁匹配包括以下三个主要步骤:
1.初始化:生成随机的深度假设。
2.传播:向邻域传播假设。
3.评价:计算所有假设的匹配代价,并选择最佳解。

在这里插入图片描述

2.2.1 初始化与局部扰动

  基于预定义的深度范围[dmin,dmax],在反深度范围内对每像素的Df深度假设进行采样,对应于图像空间中的均匀采样。
  对于第k阶段的后续迭代,通过在归一化的反深度范围Rk中均匀地生成每像素的Nk假设来执行局部扰动,并在更精细的阶段中逐渐减少Rk。
为了定义Rk的中心,利用了前一次迭代的估计,从一个较粗的阶段上采样。这提供了一组更多样化的假设。围绕之前的估计进行采样,可以在局部细化结果并纠正错误的估计。

2.2.2 自适应传播

  在参考特征图F0上应用二维CNN,学习每个像素p的额外二维偏移量,并通过双线性插值得到深度假设Dp §如下:

D p ( p ) = D ( p + o i + Δ o i ( p ) ) i = 1 K p D_{p}(p)={D(p+o_{i}+\Delta o_{i}(p))}_{i=1}^{K_{p}} Dp(p)=D(p+oi+Δoi(p))i=1Kp

其中,D是来自前一次迭代的深度映射,可能来自一个较粗的阶段经过向上采样获得。

在这里插入图片描述

2.2.3 自适应评价和可微分的翘曲

  自适应评估模块执行以下步骤:可微扭曲、匹配代价计算、自适应空间代价聚合和深度回归。

  在平面扫描立体之后,大多数基于学习的MVS方法在采样深度假设下建立前端到平行平面,并将源图像的特征图扭曲成参考图。
p i , j = K i ⋅ ( R 0 , i ⋅ ( K 0 − 1 ⋅ p ⋅ d j ) + t 0 , i p_{i,j}=K_{i}·(R_{0,i}·(K_{0}^{-1}·p·d_{j})+t_{0,i} pi,j=Ki(R0,i(K01pdj)+t0,i
通过可微双线性插值,我们得到了视图i的扭曲源特征图和第j组(每像素不同的)深度假设,Fi(pi,j)。

3 性能评价

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

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

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

相关文章

SQLMAP --TAMPER的编写

跟着师傅的文章进行学习 sqlmap之tamper脚本编写_sqlmap tamper编写-CSDN博客 这里学习一下tamper的编写 这里的tamper 其实就是多个绕过waf的插件 通过编写tamper 我们可以学会 在不同过滤下 执行sql注入 我们首先了解一下 tamper的结构 这里我们首先看一个最简单的例子…

python基于DETR(DEtection TRansformer)开发构建人员手持物品检测识别分析系统

PyTorch训练代码和DETR(DEDetection-TRansformer)的预训练模型。我们用Transformer替换了完全复杂的手工制作的对象检测管道,并将Faster R-CNN与ResNet-50匹配,使用一半的计算能力(FLOP)和相同数量的参数在…

React升级到18版本

前言 升级前react版本是16.9.0,react-dom版本为16.9.0,react-router-dom为5.1.2版本。 安装 // npm npm install react react-dom// yarn yarn add react react-dom// pnpm pnpm install react react-dom启动项目 此时,项目可以正常运行&…

【python】——控制语句和组合数据类型(其二)

🎃个人专栏: 🐬 算法设计与分析:算法设计与分析_IT闫的博客-CSDN博客 🐳Java基础:Java基础_IT闫的博客-CSDN博客 🐋c语言:c语言_IT闫的博客-CSDN博客 🐟MySQL&#xff1a…

【开源】基于JAVA的服装店库存管理系统

项目编号: S 052 ,文末获取源码。 \color{red}{项目编号:S052,文末获取源码。} 项目编号:S052,文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 角色管理模块2.3 服…

OpenCV技术应用(3)— 把.png图像保存为.jpg图像

前言:Hello大家好,我是小哥谈。本节课就手把手教你如何把.png图像保存为.jpg图像,希望大家学习之后能够有所收获~!🌈 目录 🚀1.技术介绍 🚀2.实现代码 🚀1.技术介绍 如果在电脑某…

image is being used by stopped container 7d2ff8620f3b 删除镜像失败怎么办

这个错误信息表明,镜像 55860ee0cd73 正被一个已停止的容器 7d2ff8620f3b 使用,因此无法正常删除。要解决这个问题,你有两个选择: 删除使用该镜像的容器:首先删除引用该镜像的容器,然后再删除镜像。这可以通…

到站上海!见证这座零碳园区的绿色低碳新选择

不知不觉中,科士达新能源的零碳足迹已遍布五洲四海,为全球各地,千行百业、千家万户,带去了源源不断的绿色能源和低碳新选择。再次启航,这一站,抵达上海世博园。 小机身,大配置,灵活适…

扬帆未来,成就架构之路:十本书籍助力你的架构师梦想 | 文末送书

相信大家都对未来的职业发展有着憧憬和规划,要做架构师、要做技术总监、要做CTO。对于如何实现自己的职业规划也都信心满满,努力工作、好好学习、不断提升自己。 规划职业发展 当涉及未来职业发展时,我们都怀揣着远大的目标和野心。对许多人…

移动硬盘打不开?正确操作方法分享!

“我的移动硬盘用了好几年了,但是不知道为什么,最近每次把移动硬盘插入电脑都显示无法打开。我还有一些很重要的数据在里面呢,有什么比较好的方法可以解决这个问题吗?” 作为一个便捷的存储工具,移动硬盘给我们带来了很…

【汇编】内存中字的存储、用DS和[address]实现字的传送、DS与数据段

文章目录 前言一、内存中字的存储1.1 8086cpu字的概念1.2 16位的字存储在一个16位的寄存器中,如何存储?1.3 字单元 二、用DS和[address]实现字的传送2.1 字的传送是什么意思?2.2 要求原理解决方案:DS和[address]配合8086传送16字节…

【LeetCode刷题-滑动窗口】--340.至多包含K个不同字符的最长子串

340.至多包含K个不同字符的最长子串 class Solution {public int lengthOfLongestSubstringKDistinct(String s, int k) {int len s.length();if(len < k){return len;}//滑动窗口的左右指针int left 0,right 0;//定义一个哈希映射HashMap<Character,Integer> hash…

外汇天眼:世界级的交流碰撞!Wiki Finance EXPO悉尼2023圆满落幕

11月16日对于外汇天眼来说是个特殊的日子&#xff0c;而对于整个世界金融界来说也是一个意义非凡的日子&#xff0c;由WikiGloba展会品牌WiKiEXPO举办的2023 Wiki Finance Expo在悉尼富丽敦酒店顺利举办并圆满落幕。 金融科技作为金融业创新变革的重要引擎&#xff0c;在全球数…

【Python基础篇】字符串的拼接

博主&#xff1a;&#x1f44d;不许代码码上红 欢迎&#xff1a;&#x1f40b;点赞、收藏、关注、评论。 格言&#xff1a; 大鹏一日同风起&#xff0c;扶摇直上九万里。 文章目录 一 Python中的字符串拼接二 join函数拼接三 os.path.join函数拼接四 号拼接五 &#xff0c;号…

【开源】基于JAVA的高校宿舍调配管理系统

项目编号&#xff1a; S 051 &#xff0c;文末获取源码。 \color{red}{项目编号&#xff1a;S051&#xff0c;文末获取源码。} 项目编号&#xff1a;S051&#xff0c;文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能需求2.1 学生端2.2 宿管2.3 老师端 三、系统…

⑩② 【MySQL索引】详解MySQL`索引`:结构、分类、性能分析、设计及使用规则。

个人简介&#xff1a;Java领域新星创作者&#xff1b;阿里云技术博主、星级博主、专家博主&#xff1b;正在Java学习的路上摸爬滚打&#xff0c;记录学习的过程~ 个人主页&#xff1a;.29.的博客 学习社区&#xff1a;进去逛一逛~ MySQL索引 ⑩② 【MySQL索引】1. 索引2. 索引的…

Spring Cloud Netflix微服务组件-Hystrix

目录 Hystrix的主要功能 传统容错手段 超时机制 应用容错三板斧 超时机制 舱壁隔离 熔断降级 侵入式Command用法 改进版一&#xff1a;ribbon与hystrix组合 改进版二&#xff1a;feign与hystrix组合 Hystrix三态转换图 源码分析 流程图 原理流程图 核心实现流程…

【开源】基于Vue.js的社区买菜系统的设计和实现

项目编号&#xff1a; S 011 &#xff0c;文末获取源码。 \color{red}{项目编号&#xff1a;S011&#xff0c;文末获取源码。} 项目编号&#xff1a;S011&#xff0c;文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、系统设计2.1 功能模块设计2.1.1 数据中心模块2.1…

11.13ASM图,FSM的一些verliog实现,串并转换

ASM图 除法器 FSM的verilog实现 状态机的状态就不用编码&#xff0c;而是用参数的定义进行转换 1. 在次态确定当中&#xff0c;只要w和y发生变化&#xff0c;就进行操作 在次态当中&#xff0c;只要时钟上升沿来临或者复位信号&#xff0c;就进行操作 2 Mealy型状态机 串…

CNN(卷积神经网络)、RNN(循环神经网络)、DNN(深度神经网络)的内部网络结构有什么区别?

【导师不教&#xff1f;我来教&#xff01;】同济计算机博士半小时就教会了我五大深度神经网络&#xff0c;CNN/RNN/GAN/transformer/LSTM一次学会&#xff0c;简直不要太强&#xff01;_哔哩哔哩_bilibili了解的五大神经网络&#xff0c;整理笔记如下&#xff1a; 视频是唐宇…