Depth Anything V2:抖音开源高性能任何单目图像深度估计V2版本,并开放具有精确注释和多样化场景的多功能评估基准

📜文献卡


题目: Depth Anything V2
作者: Lihe Yang; Bingyi Kang; Zilong Huang; Zhen Zhao; Xiaogang Xu; Jiashi Feng; Hengshuang Zhao
DOI: 10.48550/arXiv.2406.09414
摘要: This work presents Depth Anything V2. Without pursuing fancy techniques, we aim to reveal crucial findings to pave the way towards building a powerful monocular depth estimation model. Notably, compared with V1, this version produces much finer and more robust depth predictions through three key practices: 1) replacing all labeled real images with synthetic images, 2) scaling up the capacity of our teacher model, and 3) teaching student models via the bridge of large-scale pseudo-labeled real images. Compared with the latest models built on Stable Diffusion, our models are significantly more efficient (more than 10x faster) and more accurate. We offer models of different scales (ranging from 25M to 1.3B params) to support extensive scenarios. Benefiting from their strong generalization capability, we fine-tune them with metric depth labels to obtain our metric depth models. In addition to our models, considering the limited diversity and frequent noise in current test sets, we construct a versatile evaluation benchmark with precise annotations and diverse scenes to facilitate future research.
GitHub: DepthAnything/Depth-Anything-V2: Depth Anything V2. A More Capable Foundation Model for Monocular Depth Estimation (github.com)

在这里插入图片描述

⚙️ 内容

实现了一种名为“深度任意物V2”的单目深度估计算法,旨在通过三个关键实践:使用合成图像代替真实标记图、增加教师模型容量以及通过大规模伪标记的真实图像教授学生模型等方法,提高深度预测精度和鲁棒性。与基于Stable Diffusion的最新模型相比,该算法更加高效(比其快10倍以上)且准确度更高。作者提供了不同规模(从25M到1.3B参数)的模型以支持各种场景,并利用它们的强大泛化能力,在带有深度标签的数据集上进行微调,从而获得我们的深度测量模型。此外,考虑到当前测试数据集的有限多样性和频繁噪声,作者还构建了一个具有精确注释和多样化场景的灵活评估基准,以促进未来的研究。

test1

模型优点:

  • 高效性:更快的推理速度
  • 精度:更高的深度精度
  • 轻量级模型:参数少(从25M到1.3B)

💡 创新点

  • 数据驱动的深度学习优化:通过全面采用高质量合成图像作为训练数据源,克服了真实图像标签噪声的问题。

  • 模型架构与训练策略:引入了教师-学生模型框架,其中大型教师模型先在合成数据上训练,然后生成伪标签用于训练小型学生模型,有效转移知识并提升模型的泛化性能。

  • 深度预测的精度与多样性:无需依赖复杂技术,仅通过数据和模型结构的优化,显著提升了深度预测的准确度,尤其是在透明表面等挑战性对象上的表现。

  • 多功能评估基准:构建了新的测试基准,以促进未来单目深度估计研究的发展。

架构图

🧩 不足

  • 合成数据的局限性:尽管合成图像在提供精确标签方面有优势,但它们缺乏真实世界的多样性和复杂性,即存在合成图像与真实图像之间存在分布漂移问题和合成图像的场景覆盖不足问题,可能导致模型在某些特定或罕见场景下的表现不佳。
  • 深度预测的泛化能力:虽然模型在训练数据集上表现优异,但在未见过的极端或新奇环境下可能仍面临挑战。
  • 特殊场景表现不佳:透明对象和反射表面处理不佳

🔁 实验卡


💧 数据

  • 来源与预处理:研究使用了五个精确的合成数据集(含595K张图像)和八个大型的伪标签真实数据集(共62M张图像)。合成数据集如Hypersim和vKITTI提供了高精度的深度标签,而真实图像则用于生成大规模的伪标签。
  • 忽略噪声区域:在训练过程中,对于每个伪标签样本,会忽略其损失最大的前10%区域,视为潜在的噪声标签。

方法改进

与V1相比,该方法采用了更精确的合成数据集和更大的伪标签真实数据集,从而提高了模型的精度和泛化能力。此外,该方法还加入了梯度匹配损失Lgm,可以提高深度的锐度。

👩🏻‍💻 方法

  • 教师模型训练:基于DINOv2-G的教师模型在高质合成图像上进行训练。
  • 深度标签生成:教师模型在大规模未标记的真实图像上产生精确的伪深度。
  • 学生模型训练:使用伪标签真实图像训练最终的学生模型以实现稳健的一般化(即合成图像在此步骤中不再需要),以增强模型的鲁棒性和泛化能力。

🔬 实验

实验验证:通过与V1、Marigold等模型的对比,展示了Depth Anything V2在精度、速度和参数量方面的优势。特别是在透明表面挑战中的零样本测试中,V2取得了83.6%的高分,远超MiDaS的25.9%和V1的53.5%。

实验结果1
实验结果2

📜 结论

Depth Anything V2在不牺牲速度和效率的情况下,显著提高了深度预测的精度和细节质量,证明了其在单目深度估计领域的先进性。

🤔 总结卡


研究团队成功地揭示了数据质量和多样性对于提升单目深度估计模型性能的关键作用,特别是通过创新地结合高质量合成数据与大规模无标签真实数据的伪标签策略。然而,未来工作可以探索如何进一步增强模型对真实世界复杂性和多样性场景的理解,比如通过更先进的合成数据生成技术或者在模型设计中融入更多自适应机制来应对未知环境的挑战。同时,持续优化评估基准以更全面地反映模型在实际应用中的表现也是必要的。

文章特别点

  • 提出了DA-2K(Diverse Applications Dataset for Monocular Depth Estimation),一个更加多样化且高分辨率的基准数据集,用于评估相对单目深度估计模型。
  • 使用稀疏深度标签而非密集像素级深度标签来构建基准数据集,提高了效率并减少了人工标注的工作量。
  • 通过两个不同的管道选择像素对,并引入了挑战性的图像手动识别过程,确保了数据集的多样性和精确性。
  • 实验结果表明,该基准数据集能够覆盖广泛的场景,并提供更高质量的数据以支持各种应用。

方法创新点

  • 利用自动预测对象掩模的方法(SAM)和关键点来选取稀疏深度标签,提高数据集的多样性。
  • 通过与人类注释者一起检查每个注释,确保了数据集的准确性。
  • 通过使用深度学习技术,将编码器预训练在大型合成数据集上,然后将其转移到下游任务中,实现了良好的泛化能力。

未来展望

  • 进一步扩大DA-2K数据集的规模,以更好地满足实际应用场景的需求。
  • 研究如何处理透明物体等复杂情况下的深度估计算法,提高模型的鲁棒性和精度。
  • 探索如何利用多模式信息(如RGB、红外线、激光雷达等)来进一步提升深度估计算法的效果。

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

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

相关文章

RN组件库 - Button 组件

从零构建 React Native 组件库,作为一个前端er~谁不想拥有一个自己的组件库呢 1、定义 Button 基本类型 type.ts import type {StyleProp, TextStyle, ViewProps} from react-native; import type {TouchableOpacityProps} from ../TouchableOpacity/type; import…

webpack安装sass

package.json文件 {"devDependencies": {"sass-loader": "^7.2.0","sass": "^1.22.10","fibers": "^4.0.1"} }这个不用webpack.config.js module.exports {module: {rules: [{test: /\.s[ac]ss$/i,u…

FlinkSQL开发经验分享

最近做了几个实时数据开发需求,也不可避免地在使用Flink的过程中遇到了一些问题,比如数据倾斜导致的反压、interval join、开窗导致的水位线失效等问题,通过思考并解决这些问题,加深了我对Flink原理与机制的理解,因此将…

DC-DC 高压降压、非隔离AC-DC、提供强大的动力,选择优质电源芯片-(昱灿)

畅享长续航,尽在我们的充电芯片! 无论是手机、平板还是智能设备,长时间使用后电量不足总是令人头疼。然而,我们的充电芯片将为您带来全新的充电体验!采用先进的技术,我们的充电芯片能够提供快速而稳定的充电…

威纶通触摸屏软件出现显示异常问题(显示黑色)处理方法

异常现象 电脑端显示异常,显示黑色 解决方法 Step1:软件根目录查找DisplaySetting.exe Step2:勾选第1或第2项,重启软件即可 分享创作不易,请多多支持,点赞、收藏、关注! Ending~

《计算机英语》 Unit 3 Software Engineering 软件工程

Section A Software Engineering Methodologies 软件工程方法论 Software development is an engineering process. 软件开发是一个工程过程。 The goal of researchers in software engineering is to find principles that guide the software development process and lea…

冲击2024年CSDN博客之星TOP1:CSDN文章质量分查询在哪里?

文章目录 一,2023年博客之星规则1,不高的入围门槛2,[CSDN博文质量分测评地址](https://www.csdn.net/qc) 二,高分秘籍1,要有目录2,文章长度要足够,我的经验是汉字加代码至少1000字。3&#xff0…

I.MX6U点灯实验C语言版

笔记性质的文章。 开发流程梳理 想要在CPU上运行C程序,需要做以下的事情: 编写.S文件(_start.S)设置CPU的工作模式并且指定栈区大小写点灯程序编译烧录 以下一步一步配合代码记录。 .S文件编写 在.S文件里,只需要…

6G时代,即将来临!

日前,由未来移动通信论坛、紫金山实验室主办的2024全球6G技术大会在南京召开。本次大会以“创新预见6G未来”为主题,在大会开幕式上发布了协力推进全球6G统一标准行动的倡议和紫金山科技城加速培育以6G技术引领未来产业行动计划。 在我国已开展第五代移动…

Markdown基础教程

目录 标题段落换行字体格式引用列表有序列表无序列表列表嵌套 代码代码块围栏代码块 分隔线 标题 #表示创建标题,#的数量表示标题的级别,一个#是一级,两个是两级,以此类推。 注意:井号#和标题之间要有一个空格&#…

会自动清除的文件——tempfile

原文链接:http://www.juzicode.com/python-tutorial-tempfile/ 在某些不需要持久保存文件的场景下,可以用tempfile模块生成临时文件或者文件夹,这些临时文件或者文件夹在使用完之后就会自动删除。 NamedTemporaryFile用来创建临时文件&…

mysqladmin——MySQL Server管理程序(二)

mysqladmin 是一个命令行工具,用于执行简单的 MySQL 服务器管理任务,如检查服务器的状态、创建和删除数据库、重载权限等。 1 reload 重新加载授权表(grant tables)。当修改了MySQL的权限系统(例如,修改了…

6月27日云技术研讨会 | 中央集中架构新车型功能和网络测试解决方案

会议摘要 “软件定义汽车”新时代下,整车电气电气架构向中央-区域集中式发展已成为行业共识,车型架构的变革带来更复杂的整车功能定义、更多的新技术的应用(如SOA服务化、TSN等)和更短的车型研发周期,对整车和新产品研…

C语言| 数组的折半查找

数组的折半查找 折半查找:在已经排好序的一组数据中快速查找数据。 先排序,再使用折半查找。 【折半查找的运行过程】 1 存储数组下标 low最小的下标,mid中间的下标, high最大的下标 2 key存放查找的值,每一次对比后…

Python 全栈系列255 UCS实践:按ID同步数据

说明 这是一个常见的使用场景,实测下来效果良好。 内容 1 实验场景 将库中所有的数据取出,送到队列 本质上,这是一种单向不返回的模式。除了在遍历全库有用,在进行回测时也是一样的,时间就是单向不返回的。 通过UC…

Acrobat Pro DC 2021:Mac/Win平台上全面高效的PDF编辑器

Acrobat Pro DC 2021是一款在Mac和Windows平台上广受欢迎的PDF编辑器,它凭借其全面的功能和高效的性能,为用户提供了卓越的PDF处理体验。 一、编辑功能全面强大 Acrobat Pro DC 2021允许用户轻松创建、编辑、合并、转换、签署和分享PDF文件。无论是对P…

学习笔记——交通安全分析07

目录 前言 当天学习笔记整理 2交通行为、心理与安全 3道路交通事故数据 4信控交叉口交通安全分析 结束语 前言 #随着上一轮SPSS学习完成之后,本人又开始了新教材《交通安全分析》的学习 #整理过程不易,喜欢UP就点个免费的关注趴 #本期内容接上一…

一个电商创业者眼中的618:平台大变局

战役结束了,战斗还在继续。 一位朋友去年5月创业,网上卖咖啡,这个赛道很拥挤,时机也不好,今年是他参加第一个618。朋友说,今年的目标是锤炼团队,总结方法,以及最重要的——活下去。…

水系统阻力计算

所谓水泵的选取计算其实就是估算(很多计算公式本身就是估算的),估算分的细致些考虑的内容全面些就是精确的计算。 特别补充:当设计流量在设备的额定流量附近时,上面所提到的阻力可以套用,更多的是往往都大…

Spring (72)如何在Spring中使用缓存

在Spring框架中,使用缓存是一种有效的方式来提高应用程序性能,减少数据库或者计算密集型操作的负担。Spring提供了一个声明式的缓存抽象,它允许开发者通过注解来简单地将缓存应用到应用程序中。下面我们将深入探讨Spring缓存的使用&#xff0…