depth anything small hf

ProviderLiheYoung
Categorydepth-estimation
Licenseapache-2.0
Downloads57.0K
Stars0

Overview

Depth Anything Small (HF) is a lightweight monocular depth estimation model designed for high-efficiency spatial analysis. Unlike traditional depth models that struggle with diverse environments, this model leverages a robust encoder-decoder architecture to produce relative depth maps from single RGB images with impressive zero-shot generalization. For developers, this means reliable depth perception across various scenes without needing task-specific fine-tuning. Its small footprint makes it ideal for integration into real-time pipelines, mobile applications, or as a preprocessing step for 3D reconstruction and robotic navigation where low latency and minimal VRAM usage are critical.

Highlights

  • High-performance monocular depth estimation in a compact size
  • Strong zero-shot generalization across diverse real-world scenes
  • Low latency for real-time edge device deployment
  • Apache-2.0 license ensures flexible commercial integration
  • Seamless integration via Hugging Face Transformers library

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("LiheYoung/depth-anything-small-hf")
tokenizer = AutoTokenizer.from_pretrained("LiheYoung/depth-anything-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 LiheYoung/depth-anything-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 LiheYoung/depth-anything-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('LiheYoung/depth-anything-small-hf')

Git Download

Make sure git-lfs is installed first

Git Download
git lfs install
git clone https://huggingface.co/LiheYoung/depth-anything-small-hf

To skip LFS large-file downloads, use:

Skip LFS
GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/LiheYoung/depth-anything-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('LiheYoung/depth-anything-small-hf')
tokenizer = AutoTokenizer.from_pretrained('LiheYoung/depth-anything-small-hf')

Full Documentation

来源: HuggingFace

---
license: apache-2.0
tags:

  • vision

pipeline_tag: depth-estimation
widget:
  • inference: false

---

Depth Anything (small-sized model, Transformers version)

Depth Anything model. It was introduced in the paper Depth Anything: Unleashing the Power of Large-Scale Unlabeled Data by Lihe Yang et al. and first released in this repository.

Online demo is also provided.

Disclaimer: The team releasing Depth Anything did not write a model card for this model so this model card has been written by the Hugging Face team.

Model description

Depth Anything leverages the DPT architecture with a DINOv2 backbone.

The model is trained on ~62 million 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="LiheYoung/depth-anything-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, one can use the classes themselves:

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("LiheYoung/depth-anything-small-hf")
model = AutoModelForDepthEstimation.from_pretrained("LiheYoung/depth-anything-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, we refer to the documentation.

BibTeX entry and citation info

bibtex
@misc{yang2024depth,
      title={Depth Anything: Unleashing the Power of Large-Scale Unlabeled Data}, 
      author={Lihe Yang and Bingyi Kang and Zilong Huang and Xiaogang Xu and Jiashi Feng and Hengshuang Zhao},
      year={2024},
      eprint={2401.10891},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}
Join our Telegram