深度学习论文: Depth Anything V2

news2025/1/19 19:28:16

深度学习论文: Depth Anything V2
Depth Anything V2
PDF: https://arxiv.org/pdf/2406.09414v1
代码:https://depth-anything-v2.github.io/
PyTorch代码: https://github.com/shanglianlm0525/CvPytorch
PyTorch代码: https://github.com/shanglianlm0525/PyTorch-Networks

1 概述

在这里插入图片描述
Depth Anything V2通过三项关键实践实现了更精细、更稳健的单目深度估计:首先,采用合成图像替代真实标记图像,以克服标签噪声和细节缺失;其次,扩大教师模型的容量,提升性能;最后,利用大规模伪标签真实图像训练学生模型。与基于Stable Diffusion的模型相比,V2在效率和准确性上均大幅提升,速度快10倍以上。此外,V2提供了多种规模的模型,并支持一个多功能评估基准,以促进未来研究。
在这里插入图片描述

2 Depth Anything V2

训练 Depth Anything V2 的流程。它包括三个步骤:

  • 基于 DINOv2-G,仅在高质量的合成图像上训练一个可靠的教师模型。
  • 在大规模未标记的真实图像上生成精确的伪深度标签。
  • 在伪标记的真实图像上训练最终的学生模型,以实现鲁棒的泛化

在这里插入图片描述
Depth Anything V2使用五个精确合成的数据集(包含595K张图片)和八个大规模伪标签真实数据集(包含62M张图片)
在这里插入图片描述
在训练过程中,忽略每个伪标签样本中损失最大的10%区域,视为潜在噪声。提出的模型生成仿射不变逆深度,并采用两个已知的损失项(Lssi和Lgm)对标记图像进行优化。特别地,本文发现Lgm在使用合成图像时对提高深度锐度非常有益。此外,在伪标签图像上增加了特征对齐损失来保留语义信息。

2-1 Using Synthetic Data

在深度估计中,尽管大规模真实数据集推动了性能提升,但其标签噪声和细节缺失限制了模型的预测能力。研究者们转向合成图像,因其精确的深度标签和详细标注,能够准确捕捉各种细节和复杂表面。合成图像不仅克服了真实图像的局限性,还允许快速扩展数据集,从而提升单目深度估计的性能。

尽管合成数据有特定的优势,但是将合成数据应用到单目深度估计(MDE)中面临两大挑战:

  • 分布偏移:合成图像与真实图像在风格和颜色分布上有明显差异,导致模型难以迁移到真实场景。
  • 场景覆盖限制:合成图像通常来自有限的预定义场景,无法覆盖真实世界中的多样化场景。

尽管通过联合训练真实与合成图像来改善泛化,但真实图像的粗糙深度图可能影响预测精度。此外,收集足够的合成图像以模拟所有真实场景是不现实的。本文通过整合未标记的真实图像来缓解这一问题。

2-2 Key Role of Large-Scale Unlabeled Real Images

提出的解决方案通过整合未标记的真实图像来增强MDE模型的性能。首先,使用高质量的合成图像训练基于DINOv2-G的MDE模型,并在未标记的真实图像上生成伪深度标签。然后,新模型仅用这些伪标记图像进行训练,从而在以下方面发挥作用:

  • 弥合领域差距:利用未标记图像作为中间学习目标,帮助模型更好地适应真实世界数据分布。
  • 增强场景覆盖:通过大规模未标记图像扩展模型训练的场景多样性,提高零样本MDE能力。
  • 知识迁移:小型模型通过模仿大型模型在未标记图像上的预测结果,实现知识蒸馏,增强模型鲁棒性。

这种方法避免了直接从合成图像到真实图像的迁移难题,同时解决了合成图像在多样性和细节上的局限性。

3 Experiment

3-1 Zero-Shot Relative Depth Estimation

在这里插入图片描述

3-2 Fine-tuned to Metric Depth Estimation

在这里插入图片描述

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

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

相关文章

黑神话悟空-吉吉国王版本【抢先版】

在中国的游戏市场中,一款名为“黑神话悟空”的游戏引起了广泛的关注。这款游戏以中国传统的神话故事“西游记”为背景,创造了一个令人震撼的虚拟世界。今天,我们要来介绍的是这款游戏的一种特殊版本,那就是吉吉国王版本。 在吉吉国…

Go微服务: redis分布式锁在集群中可能遇到的问题及其解决方案

概述 我们的 redis 一般都是集群来给我们程序提供服务的,单体的redis现在也不多见 看到上面是主节点redis和下面是6个重节点redis,主节点和重节点的通讯都是畅通没问题的这个时候,我们有 gorouting 写我们的数据,那它就会用到我们…

《沃趣 分手后霸道少爷宠爆我》盛大开机典礼

南京五聚文化传媒有限公司自豪地宣布,引人入胜的2024年度短剧巨作——《沃趣 分手后霸道少爷宠爆我》——今日正式开拍!在星辰下的华丽舞台上,我们汇集了业界的精英力量,准备讲述一个关于爱、错位与重生的故事。 典礼精彩亮点 1.…

openh264 宏块级码率控制源码分析

openh264 宏块级码率控制函数关系 宏块级核心函数分析 WelsRcMbInitGom函数 功能:openh264 码率控制框架中宏块级码率控制函数,根据是否启用GOM QP来决定如何设置宏块的QP值,以控制编码的质量和比特率。原理过程: 函数参数&…

高效管理:好用的项目管理工具推荐

在当今快速变化的商业环境中,高效的项目管理工具能够显著提升团队的生产力和项目的成功率,还能有效地跟踪项目进度。所以,一款优秀的项目管理工具首先要具备先进的项目管理理念,支持多种研发管理和项目管理方法论,才能…

“打造智能售货机系统,基于ruoyi微服务版本生成基础代码“

目录 # 开篇 1. 菜单 2. 字典配置 3. 表配置 3.1 导入表 3.2 区域管理 3.3 合作商管理 3.4 点位管理 4. 代码导入 4.1 后端代码生成 4.2 前端代码生成 5. 数据库代码执行 6. 点位管理菜单顺序修改 7. 页面展示 8. 附加设备表 8.1 新增设备管理菜单 8.2 创建字…

高效处理大数据:Kafka的13个核心概念详解

我是小米,一个喜欢分享技术的29岁程序员。如果你喜欢我的文章,欢迎关注我的微信公众号“软件求生”,获取更多技术干货! 大家好,我是你们的小米!今天我们来深入探讨一下Kafka这个强大而复杂的数据流平台。Kafka被广泛应用于高吞吐量、低延迟的数据流应用场景中。那么,我…

wordpress站群搭建3api代码生成和swagger使用

海鸥技术下午茶-wordpress站群搭建3api代码生成和swagger使用 目标:实现api编写和swagger使用 0.本次需要使用到的脚手架命令 生成 http server 代码 goctl api go -api all.api -dir ..生成swagger文档 goctl api plugin -plugin goctl-swagger"swagger -filename st…

【算法训练记录——Day32】

Day32——贪心算法Ⅱ 1.leetcode122买卖股票的最佳时机II2.leetcode55跳跃游戏3.leetcode45跳跃游戏II4.eetcode1005K次取反后最大化的数组和 目标: leetcode122买卖股票的最佳时机IIleetcode55跳跃游戏leetcode45跳跃游戏IIleetcode1005K次取反后最大化的数组和 1…

数据结构经典面试之链表——C#和C++篇

文章目录 一、链表的基本概念二、链表的操作三、定义链表的节点结构体(C#)四、定义链表的基本操作类(C#)五、创建一个链表实例并进行基本操作演示(C#)六、编写一个自定义链表操作函数(C&#xf…

搭建一个简单的xxljob

数据库表结构: YyJobInfo: public class YyJobInfo {//定时任务idprivate int id;//该定时任务所属的执行器的idprivate int jobGroup;//定时任务描述private String jobDesc;//定时任务添加的时间private Date addTime;//定时任务的更新时间private D…

centos7将jar包制作服务并设置开机服务

为了避免服务器因为一些原因重启导致java服务没启动,我们将jar包制作为service并开机启动 制作过程 在网上找了一些关于java jar包制作开启启动的,大致流程为先做一个xxx.service,放在/etc/systemd/system/目录下,然后执行syste…

ASP.NET Core 6.0 启动方式

启动方式 Visualstudio 2022启动 IIS Express IIS Express 是一个专为开发人员优化的轻型独立版本的 IIS。 借助 IIS Express,可以轻松地使用最新版本的 IIS 开发和测试网站。 控制台版面 直接在浏览器输入监听的地址,监听的是 http://localhost:5137 脚本启动 dotnet run…

交易中的特殊存在

在交易的广袤天空中,有一群特殊的存在——他们,是Eagle Trader。 他们以鹰眼般的洞察力,捕捉市场的微妙变化,每一次决策都如同猎食者般精准;他们运用策略,如同雄鹰在风中翱翔,利用风向&#xf…

Setapp AI 怎么样,值得订阅吗?

Setapp 是一款提供 240 多款 Mac 软件库,可以满足 Mac 和 iOS 用户的各种需求。只需支付一笔订阅费,就可以使用一系列应用程序,这些应用程序可以简化任务、提高创造力和组织工作流程。不过,Setapp 并不只注重应用程序的数量&#…

R语言——类与对象

已知2024年4月23日是星期五,编写一个函数day.in.a.week (x, y,z),参数x和y和z分别代表年月日,判断这一天是否存在(例如,2018年没有2月29日,也没有11月31日),如果不存在,返…

2024097期传足14场胜负前瞻

2024097期售止时间为6月22日(周六)20点30分,敬请留意: 本期14场由欧洲杯、美洲杯、美职联组成,1.5以下赔率2场,1.5-2.0赔率10场,其他场次是平半盘、平盘。本期14场难度中等。以下为基础盘前瞻&a…

针对河南大学数据结构傻逼学堂在线的自动化脚本

首先展示一下我们的答案 {1: [对象], 2: [关系]} {1: [非数值计算], 2: [操作]} {1: [线性表]} [D] [B] [B] [C] [C] {1: [操作]} {1: [数据关系, 数据对象上关系的集合]} {1: [性质相同]} {1: [物理结构]} {1: [存储结构, 操作表示]} [C] [B] [D] [B] [D] [true] [false] [fa…

css文字镂空加描边

css文字镂空加描边 <!DOCTYPE html> <html><head><meta charset"utf-8"><title>文字镂空</title><style>/* 公用样式 */html,body{width: 100%;height: 100%;position: relative;}/* html{overflow-y: scroll;} */*{margi…

(Python)可变类型不可变类型;引用传递值传递;浅拷贝深拷贝

从一段代码开始说事&#xff0c;先上代码&#xff1a; a [[1],[2],[3]] b [[4,5],[6,7],[7,8]] for i,j in zip(a,b):print(i,j)i [9]#i[0] 8j[:2][1,2]print(i, j) print(a) print(b) 运行的结果&#xff1a; [1] [4, 5] [9] [1, 2] [2] [6, 7] [9] [1, 2] [3] [7, 8] …