CV / Depth-Anything
Depth-Anything-V2-ViTS
reComputer R Series (CM5 + Hailo-10H)
Monoculaire diepteschatting zonder specifieke training met Depth-Anything-V2-Small op reComputer R Series met Hailo-8 of Hailo-10H.
Kies het apparaat dat je gebruikt. De installatiehandleiding en documentatie worden dienovereenkomstig bijgewerkt.
Aan de slag
sudo docker run --rm \
--name cm5-hailo10h-depth-anything-v2-vits \
--privileged \
--net=host \
-e PYTHONUNBUFFERED=1 \
--device /dev/hailo0:/dev/hailo0 \
-v /usr/lib/libhailort.so.5.1.1:/usr/lib/libhailort.so.5.1.1:ro \
-v /usr/lib/libhailort.so:/usr/lib/libhailort.so:ro \
ghcr.io/seeed-projects/recomputer-hailo10h-cv/depth_anything_v2_vits:latest \
python web_detection.py --model_path model/depth_anything_v2_vits.hef --video_path video/test.mp4REST API
Gebruik de REST API om inferentie uit te voeren. Kopieer de onderstaande commando's.
curl -X POST "http://<Board_IP>:8000/api/models/depth_anything_v2_vits/predict" \
-F "file=@test.jpg"import requests
response = requests.post(
"http://<Board_IP>:8000/api/models/depth_anything_v2_vits/predict",
files={"file": open("test.jpg", "rb")},
timeout=30,
)
print(response.json())Modeldetails
reComputer R Series (CM5 + Hailo-10H)Depth-Anything-V2-ViTS op reComputer R Series (CM5 + Hailo-10H)
Depth-Anything-V2-Small (ViT-S-backbone) voert zero-shot monoclulaire diepteschatting uit op Hailo-10H via HailoRT. De HEF levert een relatieve dieptekaart van 224×224×1; de applicatie normaliseert deze, past een INFERNO-colormap toe en alpha-blendt het resultaat over het originele frame.
Modelinformatie
| Eigenschap | Waarde |
|---|---|
| Architectuur | ViT-S (Depth-Anything-V2-Small-hf) |
| Taak | Zero-shot diepteschatting |
| Invoer | 224x224x3 RGB |
| Uitvoer | Dieptekaart 224x224x1 (relatief, FLOAT32) |
| Parameters | 24.2M |
| Bewerkingen | 16.7G |
| AbsRel | 0.147 |
| HEF | Hailo Model Zoo v5.4.0, Hailo-10H |
| HEF-grootte | 24.6 MB (24,596,480 bytes) |
Uitvoeren met de demo-video
sudo docker run --rm \
--name cm5-hailo10h-depth-anything-v2-vits \
--privileged \
--net=host \
-e PYTHONUNBUFFERED=1 \
--device /dev/hailo0:/dev/hailo0 \
-v /usr/lib/libhailort.so.5.1.1:/usr/lib/libhailort.so.5.1.1:ro \
-v /usr/lib/libhailort.so:/usr/lib/libhailort.so:ro \
ghcr.io/seeed-projects/recomputer-hailo10h-cv/depth_anything_v2_vits:latest \
python web_detection.py --model_path model/depth_anything_v2_vits.hef --video_path video/test.mp4Open http://<Board_IP>:8000 om de diepte-overlay te bekijken.
Voor een USB-camera monteert u /dev/video0 en vervangt u --video_path ...
door --camera_id 0.
REST API
curl -X POST "http://<Board_IP>:8000/api/models/depth_anything_v2_vits/predict" \
-F "file=@test.jpg"Retourneert depth_stats (min, max, mean, std) voor de voorspelde dieptekaart.
| Endpoint | Methode | Doel |
|---|---|---|
/api/models/depth_anything_v2_vits/predict | POST | Dieptestatistieken (JSON) |
/api/video_feed | GET | MJPEG met INFERNO-diepteoverlay |
Implementatienotities
- Relatieve diepte: de uitvoer wordt per frame min-max genormaliseerd (niet metrisch). Hoger = verder. Donker (INFERNO) = dichtbij, helder = ver weg.
- Een slider regelt de alpha-blend tussen het originele frame en de diepte-colormap.
normalize_in_netImageNet RGB; geen input_conversion → na letterboxing worden ruwe uint8 RGB-pixels aangeboden.- Geen nabewerking op de chip — de ruwe dieptekaart is de uitvoer, opgevraagd als FLOAT32-vstreams zodat de host gedequantiseerde waarden ontvangt.
- De invoergrootte van de HEF wordt bij het opstarten uitgelezen (224x224).
Ontwikkelnotities
- Bron:
src/hailo10h_depth_anything_v2_vits/ - Dockerfile:
docker/hailo10h/depth_anything_v2_vits.dockerfile - Container:
ghcr.io/seeed-projects/recomputer-hailo10h-cv/depth_anything_v2_vits:latest - HEF: Hailo Model Zoo v5.4.0 (
hailo10h), 24,596,480 bytes, SHA256b6f6328ec3d6b3c09235ce5ee33b5aebc7c63d5443083d7dc5613155bc298744 - Familie: depth_anything (varianten v2_vits / vits)
Invoer en uitvoer
Input: image, video, or USB camera frame. Output: relative depth map with INFERNO colormap overlay on MJPEG preview, plus depth statistics (min/max/mean/std) via API.