- 人工智能
- 深度学习
- 计算机视觉
【免费下载链接】Depth-Anything-3
深度估计(Depth Estimation)是让 2D 图像拥有"距离感"的关键技术,而Depth-Anything-3(DA3)正是这一领域的最新一代模型。本文将完整记录 Depth Anything 系列从 1 到 3 的模型演进过程,并讲清楚本仓库为 ComfyUI 重新打包的 4 个 DA3 深度估计模型——怎么选、怎么装、怎么用。
一、3 分钟搞懂:深度估计是什么?
简单来说,深度估计就是给图像里的每一个像素预测一个"离相机有多远"的数值,输出一张灰度深度图:离镜头近的像素和远的像素会用不同灰度区分出来。
深度图在 3D 视觉和图像生成领域用途极广:
- 📐3D 重建:为场景生成点云或 3D 高斯泼溅(3DGS)模型
- 🎨深度补绘 / 背景移除:按深度分层抠图、扩图
- 🎬视频空间特效:2.5D 视差、体积感运镜
在 ComfyUI 中,深度图是空间类工作流的核心中间产物,而 Depth-Anything-3 就是目前输出这类深度图的主力模型之一。
二、Depth Anything 系列演进时间线
Depth Anything 1:单目深度估计的破局者
2024 年,Depth Anything V1 横空出世。它的核心贡献是用超大规模伪标注数据训练一个基于 DINOv2 视觉编码器 + DPT 解码器的单目深度估计网络,首次在"零样本"场景下实现了跨域、跨分辨率的高质量深度预测——之前这类任务通常只能在特定数据集(如室内场景)上表现好,而它把单目深度估计(MDE)直接带入了通用化时代。
Depth Anything 2:更小、更快、边缘更稳
V2 的改进集中在数据质量与工程化:
- 引入大规模真实场景精选数据集替代部分合成标注,深度图边缘更干净、伪影更少
- 提供Small / Base / Large三种规格,让消费级显卡也能实时推理
- 推理速度与稳定性显著提升,成为社区部署量最大的单目深度模型
Depth Anything 3:从"一张深度图"到"完整 3D 几何"
2025 年由 ByteDance-Seed 发布的 DA3,是一次范式升级——它不再只输出相对深度图,而是从单张图像或一段视频中同时恢复:
- 🧭相机位姿(Camera Pose):知道相机在哪里、朝向哪里
- 📏度量深度(Metric Depth):输出带真实物理单位(米)的深度
- 🌐完整 3D 几何:内置高斯泼溅头(Gaussian Splatting Head),可直接服务 3D 场景重建
这些架构细节并非凭空猜测,仓库里的转换脚本 convert_da3.py 中出现了大量"证据":DINOv2 主干中的camera_token(相机标记)、相机编解码器cam_enc.*/cam_dec.*,以及待剥离的高斯泼溅权重gs_head.*/gs_adapter.*(见 convert_da3.py 的DROP_PREFIXES定义)。
一句话总结演进:V1 解决"能不能通用",V2 解决"快不快、稳不稳",V3 解决"从 2.5D 深度图走向真正的 3D"。
三、本仓库的 4 个 DA3 模型怎么选?
本仓库在geometry_estimation/目录下提供了 4 个已转成ComfyUI 原生布局的 DA3 权重,覆盖不同需求:
| 模型文件 | 定位 | 适合场景 |
|---|---|---|
| depth_anything_3_small.safetensors | 轻量版,速度最快 | 低显存设备、批量预览、快速调试 |
| depth_anything_3_base.safetensors | 均衡版,性价比之选 | 日常深度图生成工作流 |
| depth_anything_3_metric_large.safetensors | 度量深度(输出真实米制距离) | 3D 重建、AR 场景测量、空间理解 |
| depth_anything_3_mono_large.safetensors | 单目深度(相对深度质量优先) | 图像深度补绘、2.5D 空间特效 |
💡新手选择建议:先用base跑通流程;需要真实尺度(米)时换metric_large;只关心画面前后关系的艺术化深度图时选mono_large;显存吃紧用small。
四、ComfyUI 安装:3 步放对位置
第 1 步:获取仓库(需要本地转换或核对权重时使用)
git clone https://gitcode.com/hf_mirrors/Comfy-Org/Depth-Anything-3第 2 步:放置模型文件。按照 README.md 的要求,把权重放进 ComfyUI 的models/geometry_estimation/目录:
📂 ComfyUI/ └── 📂 models/ └── 📂 geometry_estimation/ ├── depth_anything_3_base.safetensors ├── depth_anything_3_metric_large.safetensors ├── depth_anything_3_mono_large.safetensors └── depth_anything_3_small.safetensors第 3 步:重启 ComfyUI。权重采用 ComfyUI 原生布局,会自动检测加载,无需任何额外配置——这正是"重新打包(Repackaged)"的含义。
五、官方工作流:图片深度估计 & 视频深度图
README.md 中登记了两个官方工作流模板,均带 Before / After 效果对比:
- Depth Estimation: Depth Anything 3(图片)——输入单张图片,输出对应深度图
- Depth Map: Depth Anything 3(视频)——输入视频片段,输出逐帧深度图,可保持时序一致性
使用方法很简单:导入对应的工作流 JSON → 在深度估计节点的下拉框中选择刚安装的 DA3 模型 → 运行即可。视频工作流尤其适合做 2.5D 运镜和基于深度的背景移除。
六、进阶:convert_da3.py 转换脚本在做什么?
如果你拿到的是未经重新打包的原始 DA3 权重,可以用仓库自带的 convert_da3.py 离线转换成 ComfyUI 可直接加载的格式。它一次性完成三件事:
- 重映射 DINOv2 主干键名:把上游的
backbone.pretrained.*映射到Dinov2Model运行时布局(backbone.embeddings.*、backbone.encoder.layer.*、backbone.layernorm.*) - 拆分融合注意力:将每个 Transformer 块里融合的
attn.qkv投影拆分为独立的 query / key / value 线性层 - 剥离高斯泼溅头:删除 ComfyUI 深度估计流程中用不到的
gs_head.*、gs_adapter.*权重;而深度头head.*与相机编解码器cam_enc.*/cam_dec.*原样保留
基本用法(示例见 convert_da3.py 头部说明):
python convert_da3.py --input da3_original.safetensors --output models/diffusion_models/da3_comfy.safetensors转换只改写键名、拆分 QKV、裁剪无用分支,不会破坏原始权重语义,且输出写入新文件,原文件不受影响。
七、常见问题(FAQ)
Q1:metric_large和mono_large到底差在哪?metric输出度量深度,数值对应真实物理距离(米),适合需要尺度的 3D 任务;mono输出相对深度,只关心前后关系,适合视觉特效类工作流。
Q2:节点里看不到 DA3 模型?请确认文件放在了models/geometry_estimation/目录(注意不是checkpoints/),且为.safetensors格式,然后重启ComfyUI。
Q3:为什么仓库强调"Repackaged(重新打包)"?因为上游 DA3 权重的键名布局与 ComfyUI 加载器的预期不一致,直接放进 ComfyUI 可能无法自动识别。本仓库的文件已经离线完成了 convert_da3.py 中描述的完整转换,放入即可用。
Q4:如何快速判断模型是否加载成功?打开任意使用 DA3 的深度估计工作流,在模型选择下拉框中能看到depth_anything_3_*系列条目,即表示加载成功。
写在最后
从单目深度估计的通用化(V1),到速度与稳定性的工程打磨(V2),再到"深度图 + 相机位姿 + 完整 3D 几何"的范式跨越(V3),Depth Anything 系列只用了两年就走完了这条演进路线。本仓库让 DA3 的四个规格模型以零配置方式进入 ComfyUI——对于想在 ComfyUI 里做深度补绘、2.5D 特效乃至 3D 重建的用户来说,这已经是目前最顺手的深度估计入口之一。
- 人工智能
- 深度学习
- 计算机视觉
【免费下载链接】Depth-Anything-3
相关推荐
从PyTorch到MLX:如何将Video Depth Anything平滑迁移到Video-Depth-Anything-Base-MLX
从PyTorch到MLX:如何将Video Depth Anything平滑迁移到Video Depth Anything Base MLX Video Dep
Small、Base还是Large?Video Depth Anything MLX系列模型选型指南(含Metric-Video-Depth-Anything-Small-MLX对比)
Small、Base还是Large?Video Depth Anything MLX系列模型选型指南(含Metric Video Depth Anything
计算机视觉
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考