inteintegrity2026-09-09

Raspberry Pi 5 と Hailo-8 によるナンバープレート認識

Raspberry Pi 5 上で Hailo-8 を使用し、Tiny-YOLOv4 のプレート検出と LPRNet の数字認識を高速化します。

CVLicense Plate RecognitionObject DetectionGitHub

1. 仕組み

本プロジェクトは Raspberry Pi 5 と Hailo-8 上で 2 段階のナンバープレート認識を実行します。Tiny-YOLOv4 がプレートを検出し、LPRNet が元解像度の切り出し画像から数字を認識します。2 つの HEF ネットワークは HailoRT のスケジューリングで 1 台の Hailo-8 を共有します。

LPRNet license plate recognition demo

主な機能

  • Hailo-8 によるプレート検出と OCR の高速化
  • FastAPI によるローカルネットワークのブラウザ表示
  • 画像予測 REST API
  • 動画、画像、カメラ入力への対応

必要環境

Raspberry Pi 5 または互換 CM5 システム、Hailo-8 M.2、64 ビット ARM Linux、互換性のある HailoRT 4.23.x、Python、FastAPI、OpenCV、Docker が必要です。

2. Raspberry Pi 5 + Hailo-8 デプロイガイド

bash
git clone https://github.com/Seeed-Projects/reComputer-Hailo8-CV.git
cd reComputer-Hailo8-CV

hailortcli scan
hailortcli fw-control identify

sudo docker build \
  -f docker/hailo8/lprnet.dockerfile \
  -t lprnet:latest \
  src/rpi5_hailo8_lprnet
bash
sudo docker run --rm \
  --name rpi5-hailo8-lprnet \
  --privileged --net=host \
  --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 \
  lprnet:latest

同じネットワークから http://<BOARD_IP>:8000 を開きます。画像 API は /api/models/lprnet/predict です。

3. 認識ロジックと運用上の注意

検出器は 416 × 416 RGB 入力から 2 つの YOLO Head を出力し、CPU でデコードと NMS を行います。LPRNet は 300 × 75 BGR クロップを受け取り、Softmax と CTC デコードで数字列を生成します。

公式モデルの文字集合は 0123456789- で、文字や中国の省略文字には対応していません。鮮明で十分に大きいプレート画像を使用し、HailoRT の各コンポーネントを互換バージョンにそろえ、設置場所の映像でしきい値を調整してください。