CV / FCN ResNet
FCN8 ResNet-18
reComputer R Series (CM5 + Hailo-10H)
FCN-8s met een ResNet-18-backbone voor semantische segmentatie op reComputer R Series met Hailo-10H.
Kies het apparaat dat je gebruikt. De installatiehandleiding en documentatie worden dienovereenkomstig bijgewerkt.
Aan de slag
sudo docker run --rm \
--name cm5-hailo-fcn8-resnet \
--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/fcn8_resnet_v1_18:latest \
python web_detection.py --model_path model/fcn8_resnet_v1_18.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/fcn8_resnet/predict" \
-F "file=@test.jpg"import requests
resp = requests.post(
"http://<Board_IP>:8000/api/models/fcn8_resnet/predict",
files={"file": open("test.jpg", "rb")},
timeout=30,
)
print(resp.json())Modeldetails
FCN8 ResNet-18 op reComputer R Series (CM5 + Hailo-10H)
FCN-8s (volledig convolutioneel netwerk) met ResNet-18-backbone voor semantische segmentatie draait via HailoRT op Hailo-10H.
Deze pagina is bedoeld voor reComputer R Series (CM5 + Hailo-10H) met een PCIe-Hailo-10H-versneller.
Modelinformatie
| Eigenschap | Waarde |
|---|---|
| Architectuur | FCN-8s + ResNet-18 |
| Taak | Semantische segmentatie |
| Invoer | 1024×1920×3 RGB |
| Uitvoer | 1024×1920-klassenmasker (19 klassen) |
| Parameters | 11.20M |
| mIoU (Cityscapes) | 69.2% (hardware) |
| Bron | Hailo Model Zoo |
Cityscapes-klassen
| ID | Klasse | ID | Klasse | ID | Klasse |
|---|---|---|---|---|---|
| 0 | weg | 7 | verkeersbord | 14 | vrachtwagen |
| 1 | stoep | 8 | vegetatie | 15 | bus |
| 2 | gebouw | 9 | terrein | 16 | trein |
| 3 | muur | 10 | lucht | 17 | motorfiets |
| 4 | hek | 11 | persoon | 18 | fiets |
| 5 | paal | 12 | berijder | ||
| 6 | verkeerslicht | 13 | auto |
Hardware- en hostinstellingen
| Onderdeel | Waarde |
|---|---|
| Bord | reComputer R Series met Raspberry Pi CM5 |
| Versneller | Hailo-10H via PCIe, beschikbaar als /dev/hailo0 |
| Besturingssysteem | Raspberry Pi OS Bookworm, aarch64 |
| Hoststuurprogramma | apt-pakket hailo-h10-all |
sudo apt update
sudo apt install hailo-h10-all -y
sudo reboot
# After reboot
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 dockerUitvoeren met demovideo
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/fcn8_resnet_v1_18:latest \
python web_detection.py --model_path model/fcn8_resnet_v1_18.hef --video_path video/test.mp4Open http://<Board_IP>:8000 voor het webvoorbeeld. Het image bevat de modulebroncode, demovideo, HailoRT Python-wheel en de hieronder vermelde HEF-bestanden.
USB-cameramodus
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/fcn8_resnet_v1_18:latest \
python web_detection.py --model_path model/fcn8_resnet_v1_18.hef --camera_id 0HEF-bestanden
| HEF | Grootte | Opmerkingen |
|---|---|---|
fcn8_resnet_v1_18.hef | 9.2 MB | Model voor semantische segmentatie |
REST-API
Voorspellingsendpoint:
POST http://<Board_IP>:8000/api/models/fcn8_resnet/predictVoorbeeld van een afbeeldingsverzoek:
curl -X POST "http://<Board_IP>:8000/api/models/fcn8_resnet/predict" \
-F "file=@test.jpg"Veelgebruikte service-endpoints:
| Endpoint | Methode | Doel |
|---|---|---|
/ | GET | Webvoorbeeldinterface |
/api/models/fcn8_resnet/predict | POST | Pixeldekking per klasse (JSON) |
/api/video_feed | GET | MJPEG-voorbeeldstream |
Ontwikkelnotities
- Bronmodule:
src/hailo10h_fcn8_resnet_v1_18/ - Dockerfile:
docker/hailo10h/fcn8_resnet_v1_18.dockerfile - Hoofdservice:
web_detection.pybundelt HailoRT-inferentie, nabewerking, MJPEG-voorbeeld en REST-voorspelling.
Invoer en uitvoer
Input: image (1024x1920 RGB). Output: 19-class semantic segmentation mask (Cityscapes).