Détection de personnes — IA embarquée STM32 N657X0-Q

Détection et comptage de personnes — IA embarquée sur STM32 N657X0-Q

Une caméra, un microcontrôleur STM32 N657X0-Q et son NPU embarqué : la détection, le suivi et le comptage de personnes tournent directement sur la carte, sans PC ni cloud, puis remontent en Wi-Fi vers un dashboard temps réel.

Projet Master Électronique — IA embarquée, STM32 N657X0-Q, ESP32, MQTT
NUCLEO-N657X0-Q / STM32N6570-DK NPU 800 MHz YOLO embarqué ESP32 · MQTT

Le pipeline

01
Caméra
Capture continue 320×240
02
NPU STM32 N657X0-Q
Détection YOLO + suivi embarqués
03
Passerelle ESP32
Réception série, publication MQTT
04
Dashboard web
Comptages et historique en direct

Ce que fait le système

Comptage par franchissement de ligne
Une ligne virtuelle traverse l’image ; chaque passage incrémente un compteur IN ou OUT selon le sens, avec anti-rebond pour éviter les doublons.
Suivi persistant des personnes
Chaque personne détectée garde un identifiant stable d’une image à l’autre.
Caméra pilotable à distance
Le flux vidéo UVC peut être coupé par MQTT pour économiser l’énergie, sans arrêter la détection ni le comptage.
Deux cartes supportées
NUCLEO-N657X0-Q (sortie vidéo USB/UVC vers PC) ou STM32N6570-DK (écran LCD embarqué 800×480, autonome sans PC).

Caractéristiques techniques

Cœur / NPU
Cortex-M55 @ 800 MHz + NPU Neural-ART
Modèle IA
YOLOv8-UI (Nucleo) · ST-YoloX (DK)
Classe détectée
person (les autres classes sont filtrées)
Résolution vidéo
320 × 240
Sortie vidéo
USB/UVC (Nucleo) · LCD 800×480 (DK)
Liaison vers ESP32
UART 115200 bps
Démarrage
Autonome, boot depuis flash externe (FSBL + SSBL)

Communication MQTT

FABLAB_21_22/nucleoN657/detect/out/
{ "person": 2, "in": 5, "out": 3 }
Publié par l’ESP32 à chaque changement stable du nombre de personnes visibles.
FABLAB_21_22/nucleoN657/detect/in/
{"webcam": 0}
Commande entrante : coupe (0) ou réactive (1) le flux vidéo UVC pour économiser l’énergie.
mosquitto_pub -h mqtt.webprofs.fr -p 8883 -u fablab2122 -P 2122 \
  -t "FABLAB_21_22/nucleoN657/detect/in/" -m '{"webcam":0}'

En images

Voir le dépôt GitHub
Firmware, câblage, dashboard web et guide de flashage autonome