RA-Depth

article/2025/11/5 10:54:50

一、论文贡献

1、提出了一种任意尺度的数据增强方法,以促进模型从具有不同尺度的图像中学习深度尺度。

2、开发了一种双高分辨率网络,具有多尺度特征融合,使用新的跨尺度深度一致性损失训练。

二、相关工作

三、方法

3.1参照monodepth2

3.2分辨率自适应自监督框架

概述:

除了使用了论文自身的Dual HRNet,数据增强,其它计算与monodepth2相同。

数据增强:

对于形状为 (c, h0, w0) 的单个原始图像 I,我们首先获得三个不同分辨率的图像 (T L, T M 和 T H)通过调整大小操作。 T M 的分辨率固定为 (h, w ),表示中间刻度。 T L 和 T H 的分辨率在连续范围内随机变化,分别由比例因子 sL 和 sH 控制。 sL 和 sH 的范围分别为 [0.7, 0.9] 和 [1.1, 2.0]。通过图像拼接的方式从 T L 生成一个低比例图像 IL,T M 直接视为中间比例图像 IM ,从高分辨率图像 IH通过 RandomCrop得到TH。(三者分辨率相同)(在本文中,(c, h0, w0) 是 (3, 375, 1242), (c, h, w ) 是 (3, 192, 640))(细节参照图2和算法1)

Dual HRNet:

解码器对编码器输出进行逐步解码,仿照编码器,并非是一步到位的上采样到高分辨率。

解释为对,比当前层次低的低分辨率的特征进行上采样与1*1卷积后累加,再加上当前层次的特征,也就是该阶段的内容。(参照图2(b)与公式)

(下图是HRNet的编码与解码)

跨尺度深度一致性损失:

根据已知的尺度因子 sL 和 sH 以及算法 1 中 RandomCrop 的裁剪位置,我们可以得到 DL t 、 DM t 和 DH t 之间的像素对应关系。

对于 DM t 和 DH t ,我们首先找到 DH t 在 DM t 中的对应位置,由 DM t 中的黑色虚线框(命名为 ̃DM t )表示。然后我们调整 DH t 的大小以保持与 ̃DM t 相同的大小以获得 ̃DH t 。

高中尺度之间与中低尺度之间的光度误差

训练损失:

加权三个尺度的最小重投影损失 + 加权三个尺度的平滑损失 +  加权跨尺度深度一致性损失

 四、实验

实施:

为了提高训练速度,我们只为深度估计网络输出单尺度深度并计算单尺度深度上的损失,而不是计算深度估计网络的多尺度输出上的损失。

结果:

 Monodepth2预测的深度图在不同分辨率下是不一致的,RA-Depth 在不同分辨率下显示出可信且一致的深度预测,这表明 RA-Depth 可以学习场景深度的尺度不变性。

消融实验:

1、Effects of Arbitrary-Scale Data Augmentation:

AS-Aug 生成三个具有三种不同尺度的训练图像,让模型隐式学习场景深度的尺度不变性。

ASAug 直接在原始图像上进行裁剪,以便保留图像的详细信息。另一方面,将三个尺度的图像输入到网络中,可以模拟三种相机内在函数。

2、Effects of Cross-Scale Depth Consistency Loss:

实验表明,CSLoss的显式约束可以进一步帮助模型学习场景深度的尺度不变性,从而增强模型的分辨率适应能力。

3、Effects of Dual HRNet:相对比较轻量,参数和计算复杂度低。


http://chatgpt.dhexx.cn/article/bhSfrlsP.shtml

相关文章

DMA简介

为什么要有 DMA 技术? dma主要是用于读写数据用的 在没有 DMA 技术前,I/O 的过程是这样的: CPU 发出对应的指令给磁盘控制器,然后返回;磁盘控制器收到指令后,于是就开始准备数据,会把数据放入到磁盘控制…

利用RadASM 写汇编程序

本文介绍利用RedASM写一个messageBox “hello world”. RadAsm 是我用过最爽的一个汇编Ide了, 代码高亮,智能提示…… RadASM支持多种不同的汇编编译器,这里我们选择MASM.既然是IDE了,创建工程就很简单了, 文件->Win32 App(no …

srand和rand详细讲解

srand 使用srand引用头文件#include<stdlib.h> 在rand调用之前设置srand&#xff0c;若不设置当rand调用时随机数种子默认为1&#xff0c;随机数种子一样则每次打印出来的值也是一样的。 设置srand srand( (unsigned int )time(NULL) ) 如上所示&#xff0c;我们给一个持…

RadASM with Masm32

1.下载RadASM 从http://www.oby.ro/rad_asm/ 处下载 或http://www.assembly.com.br/ //这个是官网 1.RadASM 2.2.1.6 (09-April-2009) 2.RadASM Assembly programming (07-08-2008) 第一个是编译器 第二个是官网自带的编译配置辅助文件 2.下载MASM 从…

windows10_64位环境下RadAsm的8086汇编语言程序

前言&#xff1a; 当我们在win10环境下使用RadAsm编写汇编时&#xff0c;发现并不能够运行&#xff0c;因为Win64已经废弃了对16位程序的支持&#xff0c;甚至连debug都废除了。而且使用虚拟机太麻烦&#xff0c;有两种解决方案: 方法一&#xff1a;第一种是linux环境下使用命…

在64位系统下,使用 RadASM IDE 写 32 位及 16 位的汇编程序

一&#xff0e; 解压压缩包 二&#xff0e; 打开解压出的文件夹 三&#xff0e; 解压下图两个文件 四&#xff0e; 移动下图的文件夹&#xff08;DOSBox-0.74&#xff09;到你想放置的位置 五&#xff0e; 运行下图程序 下一步 我同意 下一步&#x…

汇编工具安装二:RadASM的安装!

已经配置好的汇编工具下载地址&#xff1a;http://download.csdn.net/detail/sunylat/9189543 RadASM也是一款汇编开发工具&#xff0c;网址&#xff1a;http://www.oby.ro/rad_asm/ 这个工具我也是偶然知道的&#xff0c;今天简单试用了一下&#xff0c;我觉得不错&#xff01…

图解RadASM使用初步

RadASM是一个主要用于Win32汇编的开发工具&#xff0c;也有对其他语言的支持&#xff1b; 此工具提供的方便相当多&#xff1b; 1 安装 2 自带例程 3 部分自带工具 ascii码表 颜色工具&#xff1b; 自带教程&#xff1b; 工具栏制作器&#xff1b; 自带代码片段&#xff1b;…

【汇编语言】汇编实验IDE(集成开发环境):RadASM的安装和使用说明

0 前言 本文适合8086CPU的指令集。 对于重要的专业基础课程&#xff0c;汇编语言&#xff0c;做实验是必不可少的&#xff0c;但是由于汇编语言本身的缺陷&#xff0c;现代计算机并不能直接运行汇编语言程序&#xff0c;因此&#xff0c;一般老师会要求我们 使用虚拟机&…

32位汇编第三讲,RadAsm,IDE的配置和使用,以及汇编代码注入方式

32位汇编第三讲,RadAsm,IDE的配置和使用,以及汇编代码注入方式 一丶RadAsm的配置和使用 用了怎么长时间的命令行方式,我们发现了几个问题 1.没有代码提醒功能 2.编写代码很慢,记不住各种声明 那么现在有大神,已经帮我们做了一个IDE环境,就是RadAsm,首先简单介绍一下界面 (对于这…

python3——写文件默认的编码格式 GBK~cp936

用python3写文件的时候没有指定编码模式&#xff0c;其默认使用的是encoding‘cp936’ 微软的CP936通常被视为等同GBK&#xff0c;连 IANA 也以“CP936”为“GBK”之别名。不过实际上 GBK 定义的字符比 CP936 多出95个字&#xff0c;其中包括了15个非汉字及80个汉字。 所以小…

Configuration file contains invalid cp936 characters in C:\Users\xxx\pip\pip.ini.

在按照网上的教程配置过pip.ini之后&#xff0c;使用install命名进行导包&#xff0c;导包不成功&#xff0c;提示这个&#xff1a; Configuration file contains invalid cp936 characters in C:\Users\wangli66\pip\pip.ini. 这是我配置的文件&#xff1a; [global] index…

PL3369CE

PL3369CE是一款原边控制&#xff0c;用于反激式开关电源的恒流/恒压调节器。PL3369CE高度集成了功率开关&#xff0c;并通过去除光耦以及次级控制电路&#xff0c;在简化充电器/适配器等传统的恒流/恒压设计的同时实现了精确的电流和电压调节。PL3369CE的复合模式的应用使芯片能…

TexLive安装报错does not map to cp936

TexLive解压后安装&#xff0c;如果存放在有中文名的文件夹中&#xff0c;就会出现如下报错&#xff1a;xxx does not map to cp936 at xxx/install-menu-extl.pl line 111. in vars section 解决方法&#xff1a;直接将解压好的文件剪切到不含中文的文件夹中&#xff08;比如直…

Configuration file contains invalid cp936 characters in C:\Users\YWX\pip\pip.ini. 已解决!

项目场景&#xff1a; python pip安装国内镜像源报错问题&#xff01; 问题描述 在C:\Users\YWX\pip 配置好镜像源后 在cmd安装出现&#xff1a; 原因分析&#xff1a; 在pip.ini 配置文件里存在注释符号 解决方案&#xff1a; 把注释去掉&#xff0c;保存&#xff01; &g…

ubuntu 截图快捷键设置

转载于:https://www.cnblogs.com/WhiteHorseIsNotHorse/p/8554312.html

ubuntu-ubuntu16.04截屏

默认&#xff1a; 对整个屏幕截图&#xff1a; PrintScreen 对活动窗口截图&#xff1a; AltPrintScreen 对任意矩形截图&#xff1a; ShiftPrintScreen 以上三个快捷键再加上Ctrl&#xff0c;就会默认复制截图到粘贴板 在系统设置里可以更改快捷键设置&#xff1a; 系统设置-硬…

Ubuntu设置快捷键截图

单击桌面右上角的设置然后点击系统设置&#xff1a; 单击键盘选项&#xff1a; 选择快捷键&#xff1a; 选择截图-复制选区截图到剪贴板&#xff0c;然后输入你想设置的快捷键&#xff1a; 这样方便多了&#xff0c;做个记录。

Ubuntu 自带截图工具快捷键盘

PrtSc – 获取整个屏幕的截图并保存到 Pictures 目录。 Shift PrtSc – 获取屏幕的某个区域截图并保存到 Pictures 目录。 Alt PrtSc –获取当前窗口的截图并保存到 Pictures 目录。 Ctrl PrtSc – 获取整个屏幕的截图并存放到剪贴板。 Shift Ctrl PrtSc – 获取屏幕的某个…

ubuntu 20.04截图快捷键

按鍵位置&#xff1a; 截屏键&#xff1a; Pirnt Screen截圖快捷鍵&#xff1a; Print Screen截取整个桌面Alt Print Screen截取选中的窗口––Shift Print Screen自由选区––Alt Print Screen截取选中的窗口––Ctrl Print Screen剪贴板整个桌面––Ctrl Alt Print …