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.

29 downloads
Grootte
9.2 MB
Geheugen
4GB+
Precisie
Hailo HEF / HailoRT

Kies het apparaat dat je gebruikt. De installatiehandleiding en documentatie worden dienovereenkomstig bijgewerkt.

Aan de slag

Implementeren
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.mp4

REST API

Gebruik de REST API om inferentie uit te voeren. Kopieer de onderstaande commando's.

Curl
curl -X POST "http://<Board_IP>:8000/api/models/fcn8_resnet/predict" \
  -F "file=@test.jpg"
Python
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

EigenschapWaarde
ArchitectuurFCN-8s + ResNet-18
TaakSemantische segmentatie
Invoer1024×1920×3 RGB
Uitvoer1024×1920-klassenmasker (19 klassen)
Parameters11.20M
mIoU (Cityscapes)69.2% (hardware)
BronHailo Model Zoo

Cityscapes-klassen

IDKlasseIDKlasseIDKlasse
0weg7verkeersbord14vrachtwagen
1stoep8vegetatie15bus
2gebouw9terrein16trein
3muur10lucht17motorfiets
4hek11persoon18fiets
5paal12berijder
6verkeerslicht13auto

Hardware- en hostinstellingen

OnderdeelWaarde
BordreComputer R Series met Raspberry Pi CM5
VersnellerHailo-10H via PCIe, beschikbaar als /dev/hailo0
BesturingssysteemRaspberry Pi OS Bookworm, aarch64
Hoststuurprogrammaapt-pakket hailo-h10-all
bash
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 docker

Uitvoeren met demovideo

bash
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.mp4

Open http://<Board_IP>:8000 voor het webvoorbeeld. Het image bevat de modulebroncode, demovideo, HailoRT Python-wheel en de hieronder vermelde HEF-bestanden.

USB-cameramodus

bash
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 0

HEF-bestanden

HEFGrootteOpmerkingen
fcn8_resnet_v1_18.hef9.2 MBModel voor semantische segmentatie

REST-API

Voorspellingsendpoint:

text
POST http://<Board_IP>:8000/api/models/fcn8_resnet/predict

Voorbeeld van een afbeeldingsverzoek:

bash
curl -X POST "http://<Board_IP>:8000/api/models/fcn8_resnet/predict" \
  -F "file=@test.jpg"

Veelgebruikte service-endpoints:

EndpointMethodeDoel
/GETWebvoorbeeldinterface
/api/models/fcn8_resnet/predictPOSTPixeldekking per klasse (JSON)
/api/video_feedGETMJPEG-voorbeeldstream

Ontwikkelnotities

  • Bronmodule: src/hailo10h_fcn8_resnet_v1_18/
  • Dockerfile: docker/hailo10h/fcn8_resnet_v1_18.dockerfile
  • Hoofdservice: web_detection.py bundelt HailoRT-inferentie, nabewerking, MJPEG-voorbeeld en REST-voorspelling.

Invoer en uitvoer

Input: image (1024x1920 RGB). Output: 19-class semantic segmentation mask (Cityscapes).