港大、TikTok推出任意图像的深度估计大模型Depth Anything,致敬Segment Anything

本文主要是介绍港大、TikTok推出任意图像的深度估计大模型Depth Anything,致敬Segment Anything,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

前言        

1.摘要

2.方法

3.实验结果

4.总结

前言        

        人类有两只眼睛来估计视觉环境的深度信息,但机器人和 VR 头社等设备却往往没有这样的「配置」,往往只能靠单个摄像头或单张图像来估计深度。这个任务也被称为单目深度估计(MDE)。

图片

        近日,TikTok发布一项新型AI技术“DepthAnything”,该技术由TikTok联合香港大学和浙江大学共同研发的一种先进单目深度估计(MDE)技术,能更有效地从2D图像中识别出深度信息图。基于这些深度信息图,普通的2D影像便可转化为3D影像。相比此前已有技术,“DepthAnything”在提升深度图的质量方面取得重大突破。此技术的应用将使得TikTok平台上现有的海量2D影像能够轻松转化为3D影像,让普通手机拍摄的2D影像“一键转3D”,或将大幅推进XR产业的发展。

图片

       Depth Anything模型的出现为机器人、自动驾驶、虚拟现实等领域带来了新的希望。这一模型的出现,让人们对单目深度估计问题的解决充满了信心。值得期待的是,这一模型未来在实际应用中能够取得更好的效果,为各行各业带来更多的便利。  

图片

论文:Depth Anything: Unleashing the Power of Large-Scale Unlabeled Data

单位:港大, TikTok, 之江实验室, 浙大

代码:https://github.com/LiheYoung/Depth-Anything

论文:https://arxiv.org/abs/2401.1089

1.摘要

        这项工作提出了 Depth Anything,这是一个非常实用的鲁棒单目深度估计解决方案。在不追求新颖的技术模块的情况下,我们的目标是建立一个简单而强大的基础模型,以处理任何情况下的任何图像。为此,我们通过设计一个数据引擎来扩大数据集,以收集和自动标注大规模无标签数据(约62M),这显著扩大了数据覆盖范围,从而能够减少泛化误差。

图片

        文章研究了两种简单而有效的策略,使数据规模化有前途。首先,通过利用数据增强工具创建一个更具挑战性的优化目标。它迫使模型积极寻找额外的视觉知识并获得鲁棒的表示。其次,开发了一种辅助监督,以强制模型从预训练的编码器中继承丰富的语义先验。我们广泛评估了它的零样本能力,包括六个公共数据集和随机捕获的照片。它展示了令人印象深刻的泛化能力(图1)。此外,通过使用NYUv2和KITTI的度量深度信息对其进行微调,我们设置了新的SOTA。我们的更好的深度模型也导致了更好的深度条件控制网。

这篇论文的主要贡献包括:

  • 强调了大规模、低成本和多样化无标注图像的数据扩展对 MDE 价值。

  • 指出了在联合训练大规模有标注和无标注图像方面的一个重要实践方法:不是直接学习原始无标注图像,而是为模型提供更困难的优化目标,让其学会使用额外的知识。

  • 提出从预训练编码器继承丰富的语义先验,从而实现更好的场景理解,而不是使用辅助性语义分割任务。

  • 新模型的零样本能力超过 MiDaS-BEiT_L-512。不仅如此,使用度量深度进行微调后,新模型的表现更是显著超过 ZoeDepth。

2.方法

图片

        本文提出了一种利用带标签和未标记图像进行单目深度估计(MDE)的方法,称之为“Depth Anything”。方法包括以下步骤:

  • 学习带标签图像(Learning Labeled Images):通过使用来自六个公共数据集的1.5M带标签图像,采用与MiDaS相似的深度值变换和归一化方法,采用仿射不变损失进行多数据集联合训练,构建了一个师傅模型T。

  • 释放未标记图像的力量(Unleashing the Power of Unlabeled Images):与传统方法不同,该方法强调利用大规模未标记图像提高数据覆盖。通过利用互联网或各种任务的公共数据集,构建了一个多样化和大规模的未标记集。通过师傅模型T为未标记集生成伪标签,然后利用带标签图像和伪标签图像的组合,训练了一个学生模型S。在训练中,采用强烈的颜色和空间扭曲来激励学生模型主动寻求额外的视觉知识。

  • 语义辅助感知(Semantic-Assisted Perception):引入了辅助语义分割任务,通过为未标记图像分配语义分割标签,提供了高级语义相关信息。然而,为了更好地处理深度估计任务,采用了DINOv2模型在语义相关任务中的优秀性能,通过辅助特征对齐损失将其强大的语义能力转移到深度模型中。

        总的来说,本文方法通过联合利用带标签和未标记图像,充分利用大规模未标记数据的优势,通过深度模型的自我挑战和语义辅助感知,实现了更强大的单目深度估计性能。方法在多个数据集上进行了评估,并取得了令人满意的结果。

3.实验结果

        在六个公开数据集与随机拍摄图片上评估了Depth Anything模型的zero-shot能力;通过度量深度信息微调达成新的SOTA;更优的深度模型进而引申出更优的深度引导ControlNet。

图片

图片

图片

图片

图片

4.总结

        本研究引入了Depth Anything模型,该模型在稳健的单目深度估计方面展现了高度实用性。通过强调廉价且多样化的未标记图像的价值,并采用两种有效策略,即在学习未标记图像时设定更具挑战性的优化目标以及保留预训练模型的丰富语义先验,使得该模型在零样本深度估计方面表现出色。此外,该模型还可作为有望初始化下游度量深度估计和语义分割任务的有效工具。

图片

        感兴趣的小伙伴可以点击下面链接体验一下,感谢你看到这里,要不就顺便左下角再点个关注吧!一个有趣有AI的AIGC公众号:关注AI、深度学习、计算机视觉、AIGC、Stable Diffusion等相关技术。

这篇关于港大、TikTok推出任意图像的深度估计大模型Depth Anything,致敬Segment Anything的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

最长公共子序列问题的深度分析与Java实现方式

《最长公共子序列问题的深度分析与Java实现方式》本文详细介绍了最长公共子序列(LCS)问题,包括其概念、暴力解法、动态规划解法,并提供了Java代码实现,暴力解法虽然简单,但在大数据处理中效率较低,... 目录最长公共子序列问题概述问题理解与示例分析暴力解法思路与示例代码动态规划解法DP 表的构建与意义动

Spring AI Alibaba接入大模型时的依赖问题小结

《SpringAIAlibaba接入大模型时的依赖问题小结》文章介绍了如何在pom.xml文件中配置SpringAIAlibaba依赖,并提供了一个示例pom.xml文件,同时,建议将Maven仓... 目录(一)pom.XML文件:(二)application.yml配置文件(一)pom.xml文件:首

如何在本地部署 DeepSeek Janus Pro 文生图大模型

《如何在本地部署DeepSeekJanusPro文生图大模型》DeepSeekJanusPro模型在本地成功部署,支持图片理解和文生图功能,通过Gradio界面进行交互,展示了其强大的多模态处... 目录什么是 Janus Pro1. 安装 conda2. 创建 python 虚拟环境3. 克隆 janus

本地私有化部署DeepSeek模型的详细教程

《本地私有化部署DeepSeek模型的详细教程》DeepSeek模型是一种强大的语言模型,本地私有化部署可以让用户在自己的环境中安全、高效地使用该模型,避免数据传输到外部带来的安全风险,同时也能根据自... 目录一、引言二、环境准备(一)硬件要求(二)软件要求(三)创建虚拟环境三、安装依赖库四、获取 Dee

DeepSeek模型本地部署的详细教程

《DeepSeek模型本地部署的详细教程》DeepSeek作为一款开源且性能强大的大语言模型,提供了灵活的本地部署方案,让用户能够在本地环境中高效运行模型,同时保护数据隐私,在本地成功部署DeepSe... 目录一、环境准备(一)硬件需求(二)软件依赖二、安装Ollama三、下载并部署DeepSeek模型选

Go中sync.Once源码的深度讲解

《Go中sync.Once源码的深度讲解》sync.Once是Go语言标准库中的一个同步原语,用于确保某个操作只执行一次,本文将从源码出发为大家详细介绍一下sync.Once的具体使用,x希望对大家有... 目录概念简单示例源码解读总结概念sync.Once是Go语言标准库中的一个同步原语,用于确保某个操

Golang的CSP模型简介(最新推荐)

《Golang的CSP模型简介(最新推荐)》Golang采用了CSP(CommunicatingSequentialProcesses,通信顺序进程)并发模型,通过goroutine和channe... 目录前言一、介绍1. 什么是 CSP 模型2. Goroutine3. Channel4. Channe