CV / LPRNet

LPRNet

reComputer R Series (CM5 + Hailo-8)

Kentekenherkenning op reComputer RK3576, RK3588 en CM5 met Hailo-8 of Hailo-10H.

167 downloads
Precisie
RKNN / Hailo HEF

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

Aan de slag

Implementeren
sudo docker run --rm \
  --name cm5-hailo8-lprnet \
  --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/lprnet:latest \
  python web_detection.py --model_path model/lprnet.hef --detector_model_path model/tiny_yolov4_license_plates.hef --video_path video/test.mp4

REST API

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

Curl
curl http://localhost:8080/v1/chat/completions -d '{
  "model": "lprnet-rknn",
  "messages": [{"role": "user", "content": "Hello"}]
}'
Python
import requests

resp = requests.post(
    "http://localhost:8080/v1/chat/completions",
    json={"model": "lprnet-rknn", "messages": [{"role": "user", "content": "Hello"}]},
)
print(resp.json())

Modeldetails

reComputer R Series (CM5 + Hailo-8)

LPRNet Pipeline op CM5 + Hailo-8

Modelinformatie

Deze toepassing voert twee officiële Hailo-8-HEF’s uit:

  1. tiny_yolov4_license_plates detecteert een kentekenvak in een verkeersbeeld van 416x416.
  2. lprnet schaalt de kentekenuitsnede op oorspronkelijke resolutie naar 300x75 BGR en levert 5x19x11 logits.

De OCR-nabewerking volgt Hailo TAPPAS: neem het gemiddelde van de vijf uitvoerslices, pas softmax toe, voer CTC-greedy-decodering uit en verwijder herhalingen en de blanco klasse. Vereis daarna een gemiddelde tekenbetrouwbaarheid van minimaal 0.90 en minimaal zeven gedecodeerde cijfers. Een Laplaciaanse-variantiecontrole wijst onscherpe uitsneden vóór OCR af.

Het officiële alfabet is 0123456789-. Dit HEF kan geen letters of Chinese provincietekens herkennen en ondersteunt daarom geen volledige tekenreeksen van Chinese blauwe kentekens.

De Model Zoo v2.17-configuratie vermeldt 99.86% nauwkeurigheid op Hailo’s interne dataset. Dit zijn bronmetadata, geen lokale CM5-benchmark.

Uitvoeren

bash
sudo docker run --rm \
  --name cm5-hailo8-lprnet \
  --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/lprnet:latest \
  python web_detection.py \
    --model_path model/lprnet.hef \
    --detector_model_path model/tiny_yolov4_license_plates.hef \
    --video_path video/test.mp4

Open http://<Board_IP>:8000.

REST-API

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

Elke voorspelling bevat het detectievak en de betrouwbaarheid, de uitsnedekwaliteit, de OCR-kandidaat en de betrouwbaarheid daarvan, en een geaccepteerde plate-waarde of null.

Bronnen en validatie

  • OCR-HEF: Hailo Model Zoo v2.16, doelplatform Hailo-8.
  • Detector-HEF: Hailo Model Zoo v2.17, doelplatform Hailo-8.
  • OCR-algoritme en demovideo: Hailo TAPPAS v3.29.

Invoer en uitvoer

RKNN: cropped plate or selected region to recognized text. Hailo: traffic frame to detected plate box and CTC-decoded numeric plate text.