Depth Anything 3
Depth Anything 3 est un simple transformer DINOv2 entraîné à prédire la profondeur et la géométrie de caméra à partir d'une ou plusieurs vues, sans aucune spécialisation architecturale. LibreYOLO porte son checkpoint DA3MONO-LARGE pour la tâche de profondeur : prédiction et validation zero-shot, sans chemin d'entraînement.
- Tâches
- depth
- Tailles
- l at 504 px
- Installer
pip install libreyolo- Niveau de support
- Inférence uniquement, depuis v. Prédiction, validation et export uniquement. Les fonctionnalités d'entraînement ne s'appliquent pas.
- Licences
- Code Apache-2.0, poids Apache-2.0. Usage commercial
Installation
Depth Anything 3 ne demande aucun extra optionnel. Tout ce qu'il importe fait partie de l'installation de base.
pip install libreyoloPrédire
Les poids sont téléchargés depuis Hugging Face au premier usage, puis mis en cache localement.
from libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("LibreDepthAnything3l-depth.pt")result = model(SAMPLE_IMAGE, save=True) depth = result.depth_mapprint(depth.min, depth.max, depth.mean)libreyolo predict model=LibreDepthAnything3l-depth.pt source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg save=Truefrom libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("LibreDepthAnything3l-depth.pt")result = model(SAMPLE_IMAGE) depth = result.depth_map # DepthMap dense (H, W), plus grand = plus procheraw = depth.data # tenseur, sans unité ni échelle communenormalized = depth.normalized() # ramené à [0, 1] pour la visualisationresult.depth_map porte une carte dense de profondeur inverse relative : des
valeurs plus élevées signifient plus proche de la caméra, et ces valeurs n'ont
ni unité métrique ni échelle commune d'une image à l'autre. Le checkpoint
amont produit une profondeur relative positive ; le wrapper réseau de
LibreYOLO l'inverse et reproduit le traitement officiel du ciel, si bien que
la sortie respecte le contrat de profondeur partagé de LibreYOLO. save=True
écrit sur disque une visualisation colorisée de cette carte ; Results.plot()
ne couvre pas cette famille, puisqu'elle n'est définie que pour les normales
de surface et les contours. Voir la prédiction pour les
sources, le streaming et le traitement des résultats.
Variantes
Une seule taille, l, à une résolution d'entrée fixe. En amont, DA3 publie
aussi des checkpoints any-view Small et Base, un checkpoint de profondeur
métrique, ainsi que des checkpoints Nested et Giant ; LibreYOLO n'en expose
aucun. La profondeur métrique demande un contrat public différent de la tâche
de profondeur inverse relative de LibreYOLO, et les checkpoints any-view et
Nested demandent une API caméra multi-images que LibreYOLO ne propose pas. Les
checkpoints any-view Large et Giant sont par ailleurs sous CC-BY-NC-4.0 et ne
sont référencés par aucun chemin de téléchargement de LibreYOLO.
L'entraînement n'est pas proposé pour cette famille.
LibreDepthAnything3.train() lève NotImplementedError sans condition ;
entraînez en amont, puis convertissez un checkpoint DA3MONO-LARGE compatible
avec weights/convert_depth_anything3_weights.py.
Valider
val() exécute le validateur de profondeur partagé : il aligne chaque
prédiction sur sa vérité terrain avec une échelle et un décalage estimés par
moindres carrés image par image, puis rapporte les métriques standard de
profondeur relative en zero-shot, AbsRel, RMSE et les trois seuils delta.
from libreyolo import LibreYOLO model = LibreYOLO("LibreDepthAnything3l-depth.pt")metrics = model.val(data="my-dataset.yaml") print(metrics["metrics/abs_rel"])print(metrics["metrics/rmse"])print(metrics["metrics/delta1"])libreyolo val model=LibreDepthAnything3l-depth.pt data=my-dataset.yamlExporter
| Tâche | ONNX | TorchScript | ExecuTorch | TensorRT | OpenVINO | Paddle | MNN | RKNN | ncnn | TFLite | CoreML | Core AI |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| depth | depth to ONNX : pris en charge | depth to TorchScript : pris en charge | depth to ExecuTorch : pris en charge | depth to TensorRT : pris en charge | depth to OpenVINO : pris en charge | depth to Paddle : non pris en charge | depth to MNN : non pris en charge | depth to RKNN : non pris en charge | depth to ncnn : non pris en charge | depth to TFLite : non pris en charge | depth to CoreML : non pris en charge | depth to Core AI : non pris en charge |
L'export est limité à cinq formats pour cette famille : ONNX, TorchScript,
ExecuTorch, TensorRT et OpenVINO. Demander tout autre format lève
NotImplementedError plutôt que de tenter une conversion non validée. Un
artefact exporté se recharge via LibreYOLO() d'après son suffixe de fichier,
si bien qu'un fichier .onnx ou .engine se comporte comme un checkpoint et
renvoie le même objet Results, avec depth_map à la place des boîtes.
from libreyolo import LibreYOLO model = LibreYOLO("LibreDepthAnything3l-depth.pt")model.export(format="onnx")model.export(format="tensorrt", half=True)libreyolo export model=LibreDepthAnything3l-depth.pt format=onnxlibreyolo export model=LibreDepthAnything3l-depth.pt format=tensorrt half=Truefrom libreyolo import LibreYOLO, SAMPLE_IMAGE # La factory route selon le suffixe du fichier, donc un artefact exporté# se charge comme un checkpoint et renvoie le même objet Results.model = LibreYOLO("LibreDepthAnything3l-depth.onnx")result = model(SAMPLE_IMAGE) print(result.depth_map.data.shape)Checkpoints
Tous les fichiers de poids publiés pour cette famille.
| Fichier | Entrée (px) | Licence des poids |
|---|---|---|
| depth | ||
| LibreDepthAnything3l-depth.pt | apache-2.0 | |
Tous les fichiers ci-dessus sont actuellement disponibles dans l<link>organisation LibreYOLO</link> et sont téléchargés à la première utilisation.
Licence
Vérifiez la licence dans le dépôt Hugging Face des poids précis que vous téléchargez. Chaque checkpoint de l<link>organisation LibreYOLO</link> en possède une, et elles ne sont pas toujours identiques au sein dune même famille. Ce dépôt fait autorité ; le résumé ci-dessous décrit les conditions applicables lors de la dernière vérification de cette page.
Ceci décrit les licences concernées et ne constitue pas un conseil juridique. Si la réponse a une importance commerciale, lisez vous-même les licences et consultez votre propre avocat.
- Travail d'origine
- Depth Anything 3, ByteDance Seed
- Licence du projet d'origine
- Apache-2.0
- Source du projet d'origine
- github.com/ByteDance-Seed/Depth-Anything-3
- Code de LibreYOLO
- MIT
- Poids
- Apache-2.0, republiés sur huggingface.co/LibreYOLO
- Interprétation
- Apache-2.0 is a permissive license, so the DA3MONO-LARGE checkpoint LibreYOLO ports can be used in commercial and closed-source products. It asks you to keep its license text and attribution notices with any copy you redistribute, and it grants a patent license. It places no obligation on your own application code. The upstream project also publishes CC-BY-NC-4.0 Large, Giant and Nested checkpoints for its any-view and multi-view modes; LibreYOLO does not port those, so that non-commercial license never reaches anything this family downloads.
Citation
@article{depthanything3,
title={Depth Anything 3: Recovering the visual space from any views},
author={Haotong Lin and Sili Chen and Jun Hao Liew and Donny Y. Chen and Zhenyu Li and Guang Shi and Jiashi Feng and Bingyi Kang},
journal={arXiv preprint arXiv:2511.10647},
year={2025}
}Copié depuis le bloc de citation des auteurs sur github.com/ByteDance-Seed/Depth-Anything-3#-citations.