Depth Anything V2 Small hf

Providerdepth-anything
Categorydepth-estimation
Licenseapache-2.0
Downloads1.3K
Stars0

Overview

Depth Anything V2 Small is a lightweight monocular depth estimation model designed for real-time spatial analysis. Unlike traditional depth models that struggle with consistency, V2 leverages a more robust training pipeline to deliver sharper boundaries and superior relative depth accuracy. For developers, the 'Small' variant is specifically optimized for edge deployment and low-latency applications where GPU memory is constrained. It integrates seamlessly into computer vision pipelines for tasks like background blurring, 3D scene reconstruction, and robotic navigation. Compared to its predecessors, it provides a significant jump in zero-shot generalization across diverse environments without requiring extensive fine-tuning.

Highlights

  • High-precision relative depth estimation in real-time
  • Optimized for edge deployment and low-latency inference
  • Strong zero-shot generalization across diverse visual domains
  • Permissive Apache-2.0 license for commercial integration
  • Significantly sharper object boundaries than V1

Usage

Install
# Install Hugging Face transformers
pip install transformers torch
SDK Usage
# Load model with transformers
from transformers import AutoModel, AutoTokenizer

model = AutoModel.from_pretrained("depth-anything/Depth-Anything-V2-Small-hf")
tokenizer = AutoTokenizer.from_pretrained("depth-anything/Depth-Anything-V2-Small-hf")

Hugging Face Download

We recommend downloading the model via the Hugging Face CLI or Hub SDK.

Guidance:Before downloading, install huggingface_hub with:

Guidance
pip install -U huggingface_hub

CLI Download

Download the full repository

Download the full repository
huggingface-cli download depth-anything/Depth-Anything-V2-Small-hf

Download a single file to a local folder (e.g. config.json into ./dir)

Download a single file to a local folder (e.g. config.json into ./dir)
huggingface-cli download depth-anything/Depth-Anything-V2-Small-hf config.json --local-dir ./dir

See the official docs for more CLI options

SDK Download

SDK Download
# 模型下载
from huggingface_hub import snapshot_download
model_dir = snapshot_download('depth-anything/Depth-Anything-V2-Small-hf')

Git Download

Make sure git-lfs is installed first

Git Download
git lfs install
git clone https://huggingface.co/depth-anything/Depth-Anything-V2-Small-hf

To skip LFS large-file downloads, use:

Skip LFS
GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/depth-anything/Depth-Anything-V2-Small-hf

Model files are hosted on the Hugging Face Hub — download directly via HF CLI / SDK / Git, not through this site.

PyTorch / Transformers Usage

Install Transformers

Install Transformers
pip install -U transformers torch

Load the model and run inference

Load the model and run inference
from transformers import AutoModelForCausalLM, AutoTokenizer

model = AutoModelForCausalLM.from_pretrained('depth-anything/Depth-Anything-V2-Small-hf')
tokenizer = AutoTokenizer.from_pretrained('depth-anything/Depth-Anything-V2-Small-hf')

Model Download

We recommend downloading the model via the ModelScope CLI or SDK.

Guidance:Before downloading, install ModelScope with:

Guidance
pip install modelscope

CLI Download

Download the full repository

Download the full repository
modelscope download --model depth-anything/Depth-Anything-V2-Small-hf

Download a single file to a local folder (e.g. README.md into ./dir)

Download a single file to a local folder (e.g. README.md into ./dir)
modelscope download --model depth-anything/Depth-Anything-V2-Small-hf README.md --local_dir ./dir

See the docs for more CLI options

SDK Download

SDK Download
# 模型下载
from modelscope import snapshot_download
model_dir = snapshot_download('depth-anything/Depth-Anything-V2-Small-hf')

Git Download

Make sure git-lfs is installed first

Git Download
git lfs install
git clone https://www.modelscope.cn/depth-anything/Depth-Anything-V2-Small-hf.git

To skip LFS large-file downloads, use:

Skip LFS
GIT_LFS_SKIP_SMUDGE=1 git clone https://www.modelscope.cn/depth-anything/Depth-Anything-V2-Small-hf.git

ModelScope 模型页直接下载模型文件;无需将模型文件放在本站服务器。

Notebook Quickstart

Install the ModelScope library

Install the ModelScope library
pip install "modelscope[audio,cv,nlp,multi-modal,science]" -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html

Load the model and run inference

Load the model and run inference
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks

p = pipeline('text-generation', 'depth-anything/Depth-Anything-V2-Small-hf')

Full Documentation

来源: HuggingFace

---
license: apache-2.0
tags:

  • depth

  • relative depth

pipeline_tag: depth-estimation
library: transformers
widget:
  • inference: false

---

Depth Anything V2 Small – Transformers Version

Depth Anything V2 is trained from 595K synthetic labeled images and 62M+ real unlabeled images, providing the most capable monocular depth estimation (MDE) model with the following features:

  • more fine-grained details than Depth Anything V1

  • more robust than Depth Anything V1 and SD-based models (e.g., Marigold, Geowizard)

  • more efficient (10x faster) and more lightweight than SD-based models

  • impressive fine-tuned performance with our pre-trained models

This model checkpoint is compatible with the transformers library.

Depth Anything V2 was introduced in the paper of the same name by Lihe Yang et al. It uses the same architecture as the original Depth Anything release, but uses synthetic data and a larger capacity teacher model to achieve much finer and robust depth predictions. The original Depth Anything model was introduced in the paper Depth Anything: Unleashing the Power of Large-Scale Unlabeled Data by Lihe Yang et al., and was first released in this repository.

Online demo.

Model description

Depth Anything V2 leverages the DPT architecture with a DINOv2 backbone.

The model is trained on ~600K synthetic labeled images and ~62 million real unlabeled images, obtaining state-of-the-art results for both relative and absolute depth estimation.

<img src="https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/transformers/model_doc/depth_anything_overview.jpg"
alt="drawing" width="600"/>

<small> Depth Anything overview. Taken from the <a href="https://arxiv.org/abs/2401.10891">original paper</a>.</small>

Intended uses & limitations

You can use the raw model for tasks like zero-shot depth estimation. See the model hub to look for
other versions on a task that interests you.

How to use

Here is how to use this model to perform zero-shot depth estimation:

python
from transformers import pipeline
from PIL import Image
import requests

load pipe

pipe = pipeline(task="depth-estimation", model="depth-anything/Depth-Anything-V2-Small-hf")

load image

url = 'http://images.cocodataset.org/val2017/000000039769.jpg' image = Image.open(requests.get(url, stream=True).raw)

inference

depth = pipe(image)["depth"]

Alternatively, you can use the model and processor classes:

python
from transformers import AutoImageProcessor, AutoModelForDepthEstimation
import torch
import numpy as np
from PIL import Image
import requests

url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open(requests.get(url, stream=True).raw)

image_processor = AutoImageProcessor.from_pretrained("depth-anything/Depth-Anything-V2-Small-hf")
model = AutoModelForDepthEstimation.from_pretrained("depth-anything/Depth-Anything-V2-Small-hf")

prepare image for the model

inputs = image_processor(images=image, return_tensors="pt")

with torch.no_grad():
outputs = model(**inputs)
predicted_depth = outputs.predicted_depth

interpolate to original size

prediction = torch.nn.functional.interpolate( predicted_depth.unsqueeze(1), size=image.size[::-1], mode="bicubic", align_corners=False, )

For more code examples, please refer to the documentation.

Citation

bibtex
@misc{yang2024depth,
      title={Depth Anything V2}, 
      author={Lihe Yang and Bingyi Kang and Zilong Huang and Zhen Zhao and Xiaogang Xu and Jiashi Feng and Hengshuang Zhao},
      year={2024},
      eprint={2406.09414},
      archivePrefix={arXiv},
      primaryClass={id='cs.CV' full_name='Computer Vision and Pattern Recognition' is_active=True alt_name=None in_archive='cs' is_general=False description='Covers image processing, computer vision, pattern recognition, and scene understanding. Roughly includes material in ACM Subject Classes I.2.10, I.4, and I.5.'}
}
Join our Telegram