localai-org/depth-anything.cpp

A from-scratch C++17/ggml port of Depth Anything 2 and 3 (ByteDance)

解决的问题

depth-anything.cpp 是 Depth Anything 3 (DA3) 和 Depth Anything V2 模型的高性能、无依赖 C++ 实现。它在推理时无需依赖重型 Python、PyTorch 或 CUDA 工具链,使这些模型能够在更广泛的硬件上高效运行,包括无 GPU 的 CPU。

工作原理

该项目使用 ggml 库从零开始实现 DA3 架构的 C++17 版本。它将官方检查点转换为自包含的 GGUF 文件格式,该格式存储所有超参数和预处理常量。这使得加载器无需外部配置文件即可运行推理。该引擎支持量化(f16、q8_0、q4_k 等),以减少内存占用和模型大小,并提供扁平的 C API,便于嵌入 Go 或 Rust 等其他语言。

适用人群

  • 希望在无 Python 依赖的原生应用中嵌入深度估计模型的 开发者
  • 在消费级 CPU 或无专用 GPU 的硬件上运行 AI 的 用户
  • 需要从单张或多张图像中快速获取度量深度和相机位姿估计的 3D 重建专家

主要亮点

  • 性能: 在 CPU 上比 PyTorch 更快(最高达 1.31 倍),内存开销显著降低,加载速度更快。
  • 全面输出: 生成密集的度量深度图、像素级置信度、相机外参/内参、天空掩码和 3D 点云。
  • 广泛模型支持: 兼容完整的 DA3 系列(Small、Base、Large、Giant、Mono、Metric、Nested)和 Depth Anything V2。
  • 导出格式: 原生、无依赖地导出为 .glbCOLMAP.PLY 格式。
  • 硬件无关: 针对 CPU(通过 tinyBLAS、Winograd)优化,并支持 CUDA、Metal 和 Vulkan 后端。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目