Créer la solution d’analytique vidéo sur IoT Edge

Effectué

Dans ce module, vous allez découvrir comment utiliser Azure Live Video Analytics sur IoT Edge pour déployer un modèle sur la périphérie afin de détecter les vides dans le rayon. Vous allez aussi découvrir les fonctionnalités de Live Video Analytics qui permettent de déployer facilement un modèle personnalisé sous forme de conteneur sur la périphérie et d’analyser un flux vidéo en temps réel simulé. Vous allez utiliser Custom Vision pour créer et entraîner un modèle de vision par ordinateur en capturant et en étiquetant quelques images provenant du flux vidéo.

Vous allez voir comment :

  • Configurer des ressources Azure
  • Configurer des charges de travail périphériques sur l’appareil périphérique
  • Utiliser Custom Vision pour créer un modèle dans le cloud afin de détecter les vides, et le déployer sur la périphérie
  • Déployer votre solution
  • Examiner et interpréter les résultats

Vous utilisez une machine virtuelle Azure comme appareil IoT Edge et la solution d’analyse de vidéos est basée sur un exemple qui se trouve dans le dépôt GitHub.

Exemple de vidéo

Ce module utilise un fichier vidéo de rayon de bouteilles pour simuler un flux en temps réel. Pour lire la vidéo, vous pouvez utiliser une application comme le Lecteur multimédia VLC. Copiez le lien de la vidéo et collez-le. Votre modèle de vision personnalisé sera entraîné pour détecter les vides dans la vidéo, qui représentent les articles en rupture de stock.

Workflow de la solution

Tout d’abord, vous devez configurer un appareil périphérique sur lequel le runtime IoT Edge est installé. Vous allez créer un hub IoT qui va envoyer le manifeste de déploiement à votre appareil périphérique une fois que vous avez configuré votre appareil pour IoT Hub.

Une fois le manifeste de déploiement envoyé, l’agent IoT Edge qui s’exécute sur votre appareil périphérique reçoit de nouveaux conteneurs du registre de conteneurs et les démarre sur votre appareil périphérique.

  • Module web : ce module est l’application web avec laquelle l’utilisateur interagit. Par exemple quand vous ajoutez votre caméra, ce module web définit le graphique avec tous les paramètres de votre caméra sur le module Live Video Analytics. Le module web est basé sur le paramètre utilisateur, et peut capturer automatiquement des images et les envoyer pour réentraînement en utilisant l’API customvision.ai.
  • Live Video Analytics (LVA) : ce module va analyser les images de toutes les caméras et les envoyer au module d’inférence.
  • Orchestrateur d’inférence : ce module envoie les trames au module de prédiction et obtient les résultats. Il couvre également les résultats sur le flux des caméras, envoie un flux vidéo HTTP au module web et envoie les résultats du Machine Learning à Azure IoT Hub.
  • Module de prédiction Machine Learning : ce module exécute des modèles entraînés par Custom Vision en utilisant onnxruntime ; il prend les trames sur HTTP ou gRPC, puis envoie les résultats au format JSON.
  • Avec Live Video Analytics, les utilisateurs peuvent aussi autoriser le module web à stocker des vidéos en fonction des résultats de l’inférence et à les envoyer à leur compte de service multimédia fourni sur Azure.

Architecture

Voici l’architecture de la solution d’analytique vidéo de bout en bout.

The illustration shows overview of custom template.

Définir les produits Azure

Pour la conception de la solution, vous allez utiliser les composants suivants :

  • Azure IoT Hub : Azure IoT Hub fournit un back-end de solutions hébergées dans le cloud pour connecter quasiment n’importe quel appareil.
  • Machine virtuelle Azure IoT Edge : C’est une machine virtuelle pour installer le runtime. Dans ce module, vous allez ouvrir le port réseau 8181 pour permettre les communications entre votre machine virtuelle et l’application web.
  • Live Video Analytics sur IoT Edge : est un module IoT Edge qui a des fonctionnalités à combiner à d’autres modules périphériques Azure. Ces modules sont notamment : Stream Analytics sur IoT Edge, Azure AI services sur IoT Edge et des services Azure dans le cloud, comme Media Services et Event Hub.
  • Service Custom Vision : Custom Vision vous permet de créer, déployer et améliorer vos classifieurs d’images. Un classifieur d’images est un service d’IA qui applique des étiquettes (représentant des classes) à des images sur la base de leurs caractéristiques visuelles.
  • Media Services : Azure Media Services est une collection de services de flux de travail multimédias cloud et périphériques qui vous permettent de créer des solutions nécessitant une analyse vidéo en temps réel et par lot, du transcodage, des services de distribution multi-appareils, une protection des contenus et la diffusion en temps réel d’événements à grande échelle.

Procédure à suivre

Les étapes générales du module pour cette solution sont :

  1. Création d’un IoT Hub
  2. Créer une machine virtuelle comme appareil périphérique
  3. Inscrire l’appareil périphérique auprès du hub IoT
  4. Installer et exécuter le programme d’installation d’Azure Shell
    1. Configurer les ressources Azure
    2. Définir des charges de travail sur l’appareil IoT Edge
  5. Charger l’exemple de vidéo sur l’appareil périphérique
  6. Connecter l’application web
  7. Ajouter une caméra pour alimenter l’exemple de vidéo
  8. Capturer des images à partir du flux vidéo et appliquer des étiquettes en tant que vides
  9. Déployer la solution
  10. Examiner les résultats

Conclusion

Une fois le module terminé, la solution de vision est déployée sur votre appareil périphérique pour détecter les vides d’un rayon en utilisant le service Custom Vision et Live Video Analytics.

Regardez la vidéo suivante pour voir une brève présentation et comprendre Vision sur la solution Edge.