CV / STDC1
STDC1
STDC1 (Short-Term Dense Concatenate) exécute la segmentation sémantique avec 19 classes Cityscapes via le service d'inférence HailoRT.
Choisissez l'appareil que vous utilisez. Le guide de configuration et la documentation seront mis à jour en conséquence.
Pour commencer
sudo docker run --rm \
--name cm5-hailo8-stdc1 \
--privileged \
--net=host \
-e PYTHONUNBUFFERED=1 \
--device /dev/hailo0:/dev/hailo0 \
-v /usr/lib/libhailort.so.4.23.0:/usr/lib/libhailort.so.4.23.0:ro \
-v /usr/lib/libhailort.so:/usr/lib/libhailort.so:ro \
ghcr.io/seeed-projects/recomputer-hailo8-cv/stdc1:latest \
python web_detection.py --model_path model/stdc1.hef --video_path video/test.mp4API REST
Utilisez l'API REST pour exécuter l'inférence. Copiez les commandes ci-dessous.
curl -X POST "http://<Board_IP>:8000/api/models/stdc1/predict" \
-F "file=@test.jpg"import requests
resp = requests.post(
"http://<Board_IP>:8000/api/models/stdc1/predict",
files={"file": open("test.jpg", "rb")},
timeout=30,
)
print(resp.json())Détails du modèle
STDC1 sur reComputer série R (CM5 + Hailo-10H)
STDC1 (Short-Term Dense Concatenate) segmentation sémantique en temps réel avec sortie 19 classes Cityscapes, s'exécutant sur Hailo-10H via HailoRT.
Cette page cible reComputer série R (CM5 + Hailo-10H) avec un accélérateur PCIe Hailo-10H.
Informations sur le modèle
| Propriété | Valeur |
|---|---|
| Architecture | STDC1 (Short-Term Dense Concatenate) |
| Tâche | Segmentation sémantique |
| Entrée | 1024×1920×3 RGB |
| Sortie | Masque de classe 1024×1920 (19 classes) |
| Paramètres | 8,27M |
| mIoU (Cityscapes) | 73,7% (matériel) |
| Source | Hailo Model Zoo |
Classes Cityscapes
| ID | Classe | ID | Classe | ID | Classe |
|---|---|---|---|---|---|
| 0 | road | 7 | traffic sign | 14 | truck |
| 1 | sidewalk | 8 | vegetation | 15 | bus |
| 2 | building | 9 | terrain | 16 | train |
| 3 | wall | 10 | sky | 17 | motorcycle |
| 4 | fence | 11 | person | 18 | bicycle |
| 5 | pole | 12 | rider | ||
| 6 | traffic light | 13 | car |
Configuration matérielle et hôte
| Élément | Valeur |
|---|---|
| Carte | reComputer série R avec Raspberry Pi CM5 |
| Accélérateur | Hailo-10H sur PCIe, exposé comme /dev/hailo0 |
| OS | Raspberry Pi OS Bookworm, aarch64 |
| Pilote hôte | Paquet apt hailo-all |
sudo apt update
sudo apt install hailo-all
sudo reboot
# Après redémarrage
hailortcli fw-control identify
ls /dev/hailo0
# Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh --mirror Aliyun
sudo systemctl enable docker
sudo systemctl start dockerExécuter avec une vidéo de démonstration
sudo docker run --rm --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/stdc1:latest \
python web_detection.py --model_path model/stdc1.hef --video_path video/test.mp4Ouvrez http://<Board_IP>:8000 pour visualiser l'aperçu web. L'image inclut le code source du module, la vidéo de démonstration, le wheel Python HailoRT et les fichiers HEF listés ci-dessous.
Mode caméra USB
sudo docker run --rm --privileged --net=host \
-e PYTHONUNBUFFERED=1 \
--device /dev/hailo0:/dev/hailo0 \
--device /dev/video0:/dev/video0 \
-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/stdc1:latest \
python web_detection.py --model_path model/stdc1.hef --camera_id 0Fichiers HEF
| HEF | Taille | Notes |
|---|---|---|
stdc1.hef | 11 Mo | Modèle de segmentation sémantique |
API REST
Point de terminaison de prédiction :
POST http://<Board_IP>:8000/api/models/stdc1/predictExemple de requête image :
curl -X POST "http://<Board_IP>:8000/api/models/stdc1/predict" \
-F "file=@test.jpg"Points de terminaison courants du service :
| Point de terminaison | Méthode | Objectif |
|---|---|---|
/ | GET | Interface d'aperçu web |
/api/models/stdc1/predict | POST | Masque de segmentation (JSON) |
/api/models/stdc1/visualize | POST | Image de superposition (JPEG) |
/api/models/stdc1/classes | GET | Liste des classes Cityscapes |
/api/video_feed | GET | Flux d'aperçu MJPEG |
Notes de développement
- Module source :
src/hailo10h_stdc1/ - Dockerfile :
docker/hailo10h/stdc1.dockerfile - Service principal :
web_detection.py --model_path model/stdc1.hefenveloppe l'inférence HailoRT, le post-traitement, l'aperçu MJPEG et la prédiction REST.
Entrées et sorties
Entrée : image (1024x1920 RGB). Sortie : masque de segmentation sémantique à 19 classes (Cityscapes).