MiDaS

MiDaS adalah estimasi kedalaman relatif monokular yang dilatih dengan loss invarian skala dan pergeseran pada campuran dataset. Rangkaian pekerjaan ini membentuk protokol transfer kedalaman zero-shot yang digunakan kembali oleh family berikutnya. LibreYOLO mendukungnya untuk task kedalaman: prediksi dan validasi zero-shot, tanpa jalur pelatihan.

Task
depth
Ukuran
s, l at 256 to 384 px
Instalasi
pip install "libreyolo[midas]"
Tier dukungan
Hanya inferensi, sejak v1.5.0. Hanya prediksi, validasi, dan ekspor. Fitur pelatihan tidak berlaku.
Proyek upstream
MiDaS oleh Intel Intelligent Systems Lab (Intel ISL), MIT. Makalah, sumber
Lisensi
Kode MIT, bobot MIT. Penggunaan komersial

Instalasi

MiDaS memerlukan extra midas untuk encoder timm-nya.

bash
pip install "libreyolo[midas]"

Prediksi

Checkpoint s dan l diunduh dari mirror LibreYOLO dengan izin MIT dari penerbit dan disimpan dalam cache lokal.

Python
from libreyolo import LibreYOLO, SAMPLE_IMAGE # Mengunduh checkpoint dari mirror saat pertama kali dipakai.model = LibreYOLO("LibreMiDaSl-depth.pt")result = model(SAMPLE_IMAGE, save=True) depth = result.depth_mapprint(depth.min, depth.max, depth.mean)
CLI
libreyolo predict model=LibreMiDaSl-depth.pt source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg save=True
Varian kecil
from libreyolo import LibreYOLO, SAMPLE_IMAGE # Encoder EfficientNet-Lite3, lebih kecil dan cepat daripada ukuran DPT-Large l.model = LibreYOLO("LibreMiDaSs-depth.pt")result = model(SAMPLE_IMAGE, save=True)

result.depth_map berisi peta kedalaman invers relatif yang rapat: nilai lebih besar berarti lebih dekat ke kamera, tanpa satuan metrik atau skala yang berlaku antar gambar. save=True menulis visualisasi peta berwarna ke disk; Results.plot() merender peta kedalaman. Lihat prediksi untuk sumber, streaming, dan penanganan hasil.

Varian

Ada dua varian dengan encoder berbeda, bukan sekadar skala berbeda dari encoder yang sama. s adalah MiDaS v2.1 Small dengan encoder EfficientNet-Lite3. l adalah DPT-Large dengan encoder ViT-L/16 dan decoder DPT yang diperkenalkan MiDaS untuk prediksi padat. Preprocessing-nya juga berbeda. s memakai resize aspek upper-bound dengan normalisasi mean/std ImageNet, sedangkan l memakai resize aspek minimal dengan mean dan std 0.5. Pilih s untuk CNN yang lebih ringan, atau l untuk akurasi decoder transformer.

Pelatihan tidak tersedia untuk family ini. LibreMiDaS.train() selalu memunculkan NotImplementedError.

Validasi

val() menjalankan validator kedalaman bersama. Setiap prediksi disejajarkan dengan ground truth melalui skala dan pergeseran least-squares per gambar, lalu validator melaporkan metrik kedalaman relatif zero-shot standar: AbsRel, RMSE, dan tiga ambang batas delta.

Python
from libreyolo import LibreYOLO model = LibreYOLO("LibreMiDaSl-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=LibreMiDaSl-depth.pt data=my-dataset.yaml

Ekspor

TaskONNXTorchScriptExecuTorchTensorRTOpenVINOPaddleMNNRKNNncnnTFLiteCoreMLCore AI
DepthDepth to ONNX: didukungDepth to TorchScript: didukungDepth to ExecuTorch: didukungDepth to TensorRT: didukungDepth to OpenVINO: didukungDepth to Paddle: tidak didukungDepth to MNN: tidak didukungDepth to RKNN: tidak didukungDepth to ncnn: didukungDepth to TFLite: tidak didukungDepth to CoreML: tidak didukungDepth to Core AI: tidak didukung

Artefak hasil ekspor dapat dimuat kembali melalui LibreYOLO() berdasarkan akhiran berkasnya, sehingga berkas .onnx atau .engine berperilaku seperti checkpoint dan mengembalikan Results yang sama, dengan depth_map sebagai pengganti box.

Python
from libreyolo import LibreYOLO model = LibreYOLO("LibreMiDaSl-depth.pt")model.export(format="onnx")model.export(format="tensorrt", half=True)
CLI
libreyolo export model=LibreMiDaSl-depth.pt format=onnxlibreyolo export model=LibreMiDaSl-depth.pt format=tensorrt half=True
Gunakan berkas hasil ekspor
from libreyolo import LibreYOLO, SAMPLE_IMAGE # Factory merutekan berdasarkan akhiran berkas, sehingga artefak hasil ekspor dimuat# seperti checkpoint lain dan mengembalikan objek Results yang sama.model = LibreYOLO("LibreMiDaSl-depth.onnx")result = model(SAMPLE_IMAGE) print(result.depth_map.data.shape)

Lisensi

Periksa lisensi di repositori Hugging Face untuk bobot tertentu yang diunduh. Setiap checkpoint di organisasi LibreYOLO memiliki lisensi, dan lisensinya tidak selalu sama dalam satu family. Repositori tersebut adalah sumber resmi. Ringkasan di bawah menjelaskan ketentuan yang berlaku saat halaman ini terakhir diverifikasi.

Ini adalah deskripsi lisensi yang terlibat, bukan nasihat hukum. Jika jawabannya penting secara komersial, baca sendiri lisensinya dan mintalah nasihat dari penasihat hukum Anda.

Karya asli
MiDaS, Intel Intelligent Systems Lab (Intel ISL)
Lisensi upstream
MIT
Kode LibreYOLO
MIT
Bobot
MIT, dipublikasikan ulang di huggingface.co/LibreYOLO
Interpretasi
The upstream repository and released weights declare MIT. LibreYOLO mirrors the s and l checkpoints under that publisher grant.

Sitasi

@ARTICLE {Ranftl2022,
    author  = "Ren\'{e} Ranftl and Katrin Lasinger and David Hafner and Konrad Schindler and Vladlen Koltun",
    title   = "Towards Robust Monocular Depth Estimation: Mixing Datasets for Zero-Shot Cross-Dataset Transfer",
    journal = "IEEE Transactions on Pattern Analysis and Machine Intelligence",
    year    = "2022",
    volume  = "44",
    number  = "3"
}

@article{Ranftl2021,
	author    = {Ren\'{e} Ranftl and Alexey Bochkovskiy and Vladlen Koltun},
	title     = {Vision Transformers for Dense Prediction},
	journal   = {ICCV},
	year      = {2021},
}

Disalin dari blok sitasi penulis di github.com/isl-org/MiDaS#citation.

Diverifikasi dengan LibreYOLO v1.6.0. Tabel dukungan, checkpoint, dan angka benchmark di halaman ini dihasilkan dari library yang telah dirilis dan bobot yang dipublikasikan, bukan ditulis manual.

Arsitektur MiDaS

Pilih varian atau ikhtisar keluarga, lalu pilih blok untuk melihat detail. Buka diagram lengkap untuk memperbesar atau mengunduh SVG dan PNG. Diagram menggunakan bahasa Inggris.