CV / STDC1
STDC1
STDC1 Echtzeit-semantische Segmentierung auf reComputer R Series mit Hailo-8 oder Hailo-10H.
Wähle das Gerät, das du verwendest. Die Einrichtungsanleitung und Dokumentation werden entsprechend aktualisiert.
Erste Schritte
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.mp4REST API
Verwende die REST API für die Inferenz. Kopiere die folgenden Befehle.
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())Modelldetails
reComputer R Series (CM5 + Hailo-10H)STDC1 auf reComputer R Serie (CM5 + Hailo-10H)
STDC1 (Short-Term Dense Concatenate) semantische Echtzeit-Segmentierung mit Cityscapes 19-Klassen-Ausgabe, laeuft auf Hailo-10H ueber HailoRT.
Diese Seite richtet sich an reComputer R Serie (CM5 + Hailo-10H) mit einem PCIe Hailo-10H-Beschleuniger.
Modellinformationen
| Eigenschaft | Wert |
|---|---|
| Architektur | STDC1 (Short-Term Dense Concatenate) |
| Aufgabe | Semantische Segmentierung |
| Eingabe | 1024x1920x3 RGB |
| Ausgabe | 1024x1920 Klassenmaske (19 Klassen) |
| Parameter | 8,27M |
| mIoU (Cityscapes) | 73,7% (Hardware) |
| Quelle | Hailo Model Zoo |
Cityscapes-Klassen
| ID | Klasse | ID | Klasse | ID | Klasse |
|---|---|---|---|---|---|
| 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 |
Hardware- und Host-Einrichtung
| Element | Wert |
|---|---|
| Board | reComputer R Serie mit Raspberry Pi CM5 |
| Beschleuniger | Hailo-10H ueber PCIe, bereitgestellt als /dev/hailo0 |
| Betriebssystem | Raspberry Pi OS Bookworm, aarch64 |
| Host-Treiber | hailo-all apt-Paket |
sudo apt update
sudo apt install hailo-all
sudo reboot
# Nach dem Neustart
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 dockerMit Demo-Video ausfuehren
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.mp4Oeffnen Sie http://<Board_IP>:8000, um die Web-Vorschau anzuzeigen. Das Image enthaelt den Modulquellcode, das Demo-Video, das HailoRT-Python-Wheel und die unten aufgefuehrten HEF-Dateien.
USB-Kamera-Modus
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 0HEF-Dateien
| HEF | Groesse | Hinweise |
|---|---|---|
stdc1.hef | 11 MB | Semantisches Segmentierungsmodell |
REST-API
Vorhersage-Endpunkt:
POST http://<Board_IP>:8000/api/models/stdc1/predictBeispiel fuer eine Bildanfrage:
curl -X POST "http://<Board_IP>:8000/api/models/stdc1/predict" \
-F "file=@test.jpg"Allgemeine Dienst-Endpunkte:
| Endpunkt | Methode | Zweck |
|---|---|---|
/ | GET | Web-Vorschau-UI |
/api/models/stdc1/predict | POST | Segmentierungsmaske (JSON) |
/api/models/stdc1/visualize | POST | Ueberlagerungsbild (JPEG) |
/api/models/stdc1/classes | GET | Cityscapes-Klassenliste |
/api/video_feed | GET | MJPEG-Vorschau-Stream |
Entwicklungshinweise
- Quellmodul:
src/hailo10h_stdc1/ - Dockerfile:
docker/hailo10h/stdc1.dockerfile - Hauptdienst:
web_detection.py --model_path model/stdc1.hefumschliesst HailoRT-Inferenz, Nachbearbeitung, MJPEG-Vorschau und REST-Vorhersage.
Eingaben und Ausgaben
Eingabe: Bild (1024x1920 RGB). Ausgabe: 19-Klassen semantische Segmentierungsmaske (Cityscapes).