Vision IA · Full Stack · Temps réel

Plateforme de surveillance IA

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.

Tableau de bord de surveillance

Le projet en bref

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.

À 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é.

Tableau de bord : équipements en ligne, alertes en attente et flux d’alertes en direct
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.
Page de connexion de la plateforme
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.

Détection YOLO de personnes dans une salle
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.

Java 17Spring Boot 3.3MyBatis-PlusMySQL 8Vue 3WebSocketPythonFastAPIYOLOv5OpenCVArkTSArkWeb
Retour aux projets