ZipDepth

ZipDepth ist ein kompaktes, reparametrisierbares CNN, das aus Depth Anything V2 Large destilliert wurde und eine dichte relative inverse Tiefenkarte vorhersagt. LibreYOLO unterstützt es für die Tiefenaufgabe mit Vorhersage und Zero-Shot-Validierung, aber ohne Trainingspfad.

Aufgaben
depth
Größen
b, bnpu at 384 px
Installation
pip install libreyolo
Supportstufe
Nur Inferenz, seit v. Nur Vorhersage, Validierung und Export. Trainingsfunktionen sind nicht verfügbar.
Upstream
ZipDepth von University of Bologna, MIT. Publikation, Quelle
Lizenzen
Code MIT, Gewichte MIT. Kommerzielle Nutzung

Installation

ZipDepth benötigt kein optionales Extra. Alle Importe sind in der Basisinstallation enthalten.

bash
pip install libreyolo

Vorhersage

Die Gewichte werden bei der ersten Verwendung von Hugging Face heruntergeladen und lokal zwischengespeichert.

Python
from libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("LibreZipDepthb-depth.pt")result = model(SAMPLE_IMAGE, save=True) depth = result.depth_mapprint(depth.min, depth.max, depth.mean)
CLI
libreyolo predict model=LibreZipDepthb-depth.pt source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg save=True
NPU-/Edge-Checkpoint
from libreyolo import LibreYOLO, SAMPLE_IMAGE # Derselbe Encoder mit einem Upsampling-Kopf ohne Unfold für Compiler ohne# Gather-/Unfold-Unterstützung. Die Ausgabe entspricht visuell dem b-Checkpoint.model = LibreYOLO("LibreZipDepthbnpu-depth.pt")result = model(SAMPLE_IMAGE, save=True)

result.depth_map enthält eine dichte relative inverse Tiefenkarte. Höhere Werte bedeuten eine geringere Entfernung zur Kamera. Die Werte besitzen weder eine metrische Einheit noch eine bildübergreifende Skala. save=True schreibt eine farbcodierte Visualisierung dieser Karte auf den Datenträger. Results.plot() unterstützt diese Familie nicht, da die Methode nur für Oberflächennormalen und Kanten definiert ist. Unter Vorhersage findest du Informationen zu Quellen, Streaming und Ergebnisverarbeitung.

Varianten

Die beiden Checkpoints besitzen dieselbe Encoder-Kapazität und unterscheiden sich nur im trainierten Upsampling-Kopf. b verwendet konvexes Upsampling und läuft auf GPU oder CPU. bnpu ersetzt dies durch einen Decoder ohne Unfold für NPU- und Edge-Compiler, die Gather oder Unfold nicht unterstützen. Seine Ausgabe wird als visuell gleichwertig zu b beschrieben. Wähle bnpu für eine eingeschränkte Ziellaufzeitumgebung, andernfalls b.

Beide Checkpoints wurden aus Pseudo-Labels von Depth Anything V2 Large destilliert. Diese Familie bildet damit die kompakte, Edge-orientierte Stufe der Tiefenaufgabe von LibreYOLO neben den größeren Encodern von Depth Anything V2.

Für diese Familie wird kein Training angeboten. LibreZipDepth.train() löst bedingungslos NotImplementedError aus. Das Upstream-Rezept destilliert Pseudo-Labels über eine große Bildmenge und lässt sich nicht als LibreYOLO-Trainingslauf reproduzieren. Trainiere im Upstream-Projekt unter fabiotosi92/ZipDepth und konvertiere das Ergebnis mit weights/convert_zipdepth_weights.py.

Validierung

val() führt den gemeinsamen Tiefenvalidator aus. Er richtet jede Vorhersage anhand von Skalierung und Verschiebung nach der Methode der kleinsten Quadrate bildweise an der Ground Truth aus und meldet anschließend die üblichen Zero-Shot-Metriken für relative Tiefe: AbsRel, RMSE und die drei Delta-Schwellenwerte.

Python
from libreyolo import LibreYOLO model = LibreYOLO("LibreZipDepthb-depth.pt")metrics = model.val(data="my-dataset.yaml") print(metrics["metrics/abs_rel"])print(metrics["metrics/rmse"])print(metrics["metrics/delta1"])
CLI
libreyolo val model=LibreZipDepthb-depth.pt data=my-dataset.yaml

Export

AufgabeONNXTorchScriptExecuTorchTensorRTOpenVINOPaddleMNNRKNNncnnTFLiteCoreMLCore AI
depthdepth to ONNX: unterstütztdepth to TorchScript: unterstütztdepth to ExecuTorch: unterstütztdepth to TensorRT: unterstütztdepth to OpenVINO: unterstütztdepth to Paddle: nicht unterstütztdepth to MNN: nicht unterstütztdepth to RKNN: nicht unterstütztdepth to ncnn: unterstütztdepth to TFLite: nicht unterstütztdepth to CoreML: nicht unterstütztdepth to Core AI: unterstützt

Der Export verwendet einen dichten Vertrag mit fester Auflösung. Das Quellbild wird gestreckt auf den exportierten Canvas skaliert und die zurückgegebene Tiefenkarte anschließend wieder auf den ursprünglichen Canvas gebracht. Ein exportiertes Artefakt wird über seine Dateiendung wieder durch LibreYOLO() geladen. Eine .onnx- oder .ncnn-Datei verhält sich daher wie ein Checkpoint und gibt dasselbe Results-Objekt zurück, wobei depth_map an die Stelle von Boxen tritt.

Python
from libreyolo import LibreYOLO model = LibreYOLO("LibreZipDepthb-depth.pt")model.export(format="onnx")model.export(format="ncnn")
CLI
libreyolo export model=LibreZipDepthb-depth.pt format=onnxlibreyolo export model=LibreZipDepthbnpu-depth.pt format=ncnn
Exportierte Datei verwenden
from libreyolo import LibreYOLO, SAMPLE_IMAGE # Die Factory leitet anhand der Dateiendung weiter, daher wird ein exportiertes Artefakt# wie jeder Checkpoint geladen und gibt dasselbe Results-Objekt zurück.model = LibreYOLO("LibreZipDepthb-depth.onnx")result = model(SAMPLE_IMAGE) print(result.depth_map.data.shape)

Checkpoints

Alle für diese Familie veröffentlichten Gewichtsdateien.

DateiEingabe (px)Lizenz der Gewichte
depth
LibreZipDepthb-depth.ptmit
LibreZipDepthbnpu-depth.ptmit

Jede oben aufgeführte Datei ist heute in der LibreYOLO-Organisation verfügbar und wird bei der ersten Verwendung heruntergeladen.

Lizenzierung

Prüfe die Lizenz im Hugging-Face-Repository der konkreten Gewichte, die du herunterlädst. Jeder Checkpoint in der LibreYOLO-Organisation hat eine Lizenz, und sie ist innerhalb einer Familie nicht immer gleich. Dieses Repository ist die maßgebliche Quelle. Die Zusammenfassung unten beschreibt den Stand bei der letzten Verifizierung dieser Seite.

Dies ist eine Beschreibung der beteiligten Lizenzen und keine Rechtsberatung. Wenn die Antwort kommerziell relevant ist, lies die Lizenzen selbst und hole eigenen Rechtsrat ein.

Originalarbeit
ZipDepth, University of Bologna
Upstream-Lizenz
MIT
LibreYOLO-Code
MIT
Gewichte
MIT, erneut unter huggingface.co/LibreYOLO veröffentlicht
Einordnung
MIT is a permissive license, so both checkpoints can be used in commercial and closed-source products with no redistribution restriction beyond keeping the license notice. It places no obligation on your own application code. The weights were trained by distilling pseudo-labels from Depth Anything V2 Large, whose Large checkpoint is itself CC-BY-NC-4.0; the ZipDepth authors publish the distilled student under MIT regardless, and LibreYOLO republishes that same MIT-licensed student.

Zitieren

@inproceedings{tosi2026zipdepth,
  title     = {ZipDepth: Bringing Lightweight Zero-Shot Monocular Depth Anywhere, on Any Device},
  author    = {Tosi, Fabio and Bartolomei, Luca and Poggi, Matteo and Mattoccia, Stefano},
  booktitle = {European Conference on Computer Vision (ECCV)},
  year      = {2026}
}

Aus dem Zitierblock der Autoren unter github.com/fabiotosi92/ZipDepth#-citation kopiert.

Mit LibreYOLO v1.5.0 verifiziert. Supporttabellen, Checkpoints und Benchmarkwerte auf dieser Seite werden aus der veröffentlichten Bibliothek und den publizierten Gewichten generiert und nicht von Hand geschrieben.