Un système de sécurité complet qui relie détection visuelle, règles métier, stockage, diffusion instantanée et intervention humaine. Il analyse des images à la demande ou surveille en continu des dossiers d'images et de vidéos, transforme les résultats YOLOv5 en alertes et synchronise chaque changement sur le Web et HarmonyOS.
Il s’agit d’une plateforme de sécurité full-stack qui transforme la détection d’objets en alertes traitables, en fermant la boucle : reconnaissance IA, mapping par règles, persistance en base, diffusion WebSocket et traitement côté interface. La reconnaissance dispose de deux entrées : saisir une URL d’image à la main, ou déposer images et vidéos dans le dossier ai-watch, qu’un thread d’arrière-plan balaie toutes les 2 secondes en guise de caméra. Spring Boot, MySQL et WebSocket assurent l’état et la synchronisation temps réel, tandis que les clients web et HarmonyOS servent à la vérification et au traitement.
Deux entrées de reconnaissanceSoumettre une image à la main, ou déposer des fichiers dans ai-watch pour un balayage et un archivage automatiques.
Uniquement les alertes utilesLes classes du modèle sont converties en six types d’alertes métier ; les classes non reconnues sont consignées comme anomalies de reconnaissance et ignorées, ni stockées ni diffusées.
Preuves archivées avec l’alerteLes images annotées à cadre de détection et les images vidéo assemblées sont conservées avec l’enregistrement d’alerte.
À propos de ce projet
Ce qu’il traite
Si les résultats de détection en surveillance s’arrêtent aux cadres englobants, ils ne peuvent pas soutenir le traitement ultérieur. Ce projet transforme la sortie du modèle en alertes métier et associe à chacune une preuve sur site et un état de traitement, formant un registre traçable.
Circulation des données
L’entrée manuelle transmet une URL d’image au service IA ; l’entrée par dossier fait balayer ai-watch toutes les 2 secondes par un thread d’arrière-plan, qui renvoie les résultats et archive les fichiers sources dans processed. Les résultats sont convertis par règles en anomalies de fumée/incendie, d’attroupement, d’intrusion, de véhicule, d’animal ou d’objet, puis diffusés en WebSocket une fois la transaction validée.
Ce qu’il utilise
L’inférence repose sur FastAPI avec YOLOv5 (un modèle COCO et un modèle feu/fumée) ; le côté métier sur Spring Boot 3.3 et MySQL 8, avec WebSocket pour la diffusion temps réel. Les interfaces sont construites avec Vue 3 et ArkTS / ArkWeb. Vue est servi en version statique locale directement par Spring Boot : le projet fonctionne dès le clonage ; un déploiement Docker en une commande est également fourni.
État actuel
Cinq pages sont implémentées — tableau de bord, équipements, enregistrements de reconnaissance IA, centre d’alertes en direct et historique de traitement — accompagnées d’un tutoriel d’explication du code. La qualité réelle de détection doit être évaluée selon le jeu de données, le seuil de confiance et l’environnement de déploiement utilisés.
5Vues principales
6 typesRègles d'alerte métier
≈ 2 sCycle de surveillance
3 clientsWeb · OpenAPI · HarmonyOS
Deux écrans d’entrée
L’interface d’administration est servie en fichiers statiques directement par Spring Boot : le projet fonctionne dès le clonage, sans environnement Node.js séparé.
Le tableau de bord résume les équipements en ligne, les alertes en attente, le total d’alertes et les événements IA, avec en dessous un flux d’alertes rafraîchi par WebSocket indiquant pour chacune la classe détectée et la confiance.
La page de connexion. Une fois authentifié, l’accès ouvre la vue de sûreté du site présentée ci-dessus.
De la détection à l’intervention
De ce que le modèle voit à la clôture de l'incident, chaque étape conserve son état et ses preuves visuelles.
Analyse image et vidéo
Images réseau, téléversements et trames vidéo échantillonnées, réunies dans un événement cohérent.
Inférence YOLO
Les modèles COCO et feu/fumée couvrent personnes, véhicules, objets, animaux, fumée et flammes.
Règles métier
Les classes détectées deviennent des alertes d'intrusion, foule, incendie, véhicule ou objet.
Diffusion en direct
Les événements WebSocket partent après validation de la transaction pour garder les écrans cohérents.
Cycle de traitement
Les alertes passent de « à traiter » à « en cours », puis « clôturée », avec validation des transitions.
Archivage des preuves
Les détections annotées et planches de trames restent liées à leurs alertes.
Le parcours d'une alerte
Les soumissions manuelles et le dossier ai-watch empruntent la même chaîne métier.
01 · Entrée
Média terrain
URL, fichier ou image/vidéo surveillée.
02 · Vision
FastAPI + YOLO
Inférence, annotation et agrégation.
03 · Règles
Spring Boot
Mapping, validation et transactions.
04 · Données
MySQL 8
Appareils, alertes, états et preuves.
05 · Diffusion
WebSocket
Événements envoyés aux consoles connectées.
Détections vérifiables
L'opérateur peut revoir les cadres à l'origine de l'alerte.
Planche de trames vidéo annotées, conservée comme preuve avec l'alerte.
Client HarmonyOS
Le client associe ArkWeb, interaction sensible au terminal et partage natif.
ArkTS + ArkWeb
Connexion par adresse locale, navigation, progression de chargement et session de démonstration.
Prise en main
Le bouton flottant s'adapte à une tenue main gauche ou main droite.
HarmonyShare
Le partage tactile et les gestes aériens transmettent une session contrôlée aux appareils proches.
Technologies
Un ensemble coordonné pour le navigateur, le métier, la vision, les données et le terminal.