Lisez notre article sur

class="img-responsive

.

En tant que Artefact, nous avons à cœur d'avoir un impact positif sur les personnes, l'environnement et la communauté. C'est pourquoi nous nous engageons à nous associer à des organisations à but non lucratif qui font de ces valeurs les fondements de leur vision.
C'est pourquoi nous avons collaboré avec Smart Parks, une entreprise néerlandaise qui fournit des solutions de capteurs avancés pour préserver les espèces sauvages menacées et gérer efficacement les parcs grâce à une technologie de pointe.

Dans cette série d'articles, nous faisons la chronique de notre parcours dans la conception et la construction d'un système de ML pour utiliser les médias des pièges photographiques de Smart Parks. En particulier, l'objectif du projet est d'utiliser une approche de ML pour ingérer le site data provenant des pièges à caméra et de fournir ensuite des informations, telles que la présence de personnes ou de types spécifiques d'animaux dans les images ou les vidéos capturées par les caméras. Ces informations sont ensuite utilisées par les gardes du parc pour mieux protéger la faune et détecter plus rapidement les dangers éventuels tels que les braconniers.

Introduction

Smart Parks avait besoin d'un système de surveillance de la faune capable d'accomplir les tâches suivantes :

  • Intégrer les médias (images et/ou vidéos) provenant des pièges photographiques en un seul endroit
  • Détecter automatiquement la présence d'êtres humains et d'animaux dans les médias

  • Accéder aux prévisions dans Earth Rangers, une application utilisée pour gérer les parcs et leur faune.

  • Contrôler les médias provenant des pièges à caméra

Notre principe directeur était de privilégier la rapidité. Ainsi, lorsque nous avons démarré, notre priorité absolue était de déployer le plus rapidement possible un produit de bout en bout, à l'état brut mais pleinement opérationnel.

Cet article sera le premier d'une longue série et se concentrera sur le contexte du projet, la vue d'ensemble du système conçu et les avantages de notre solution basée sur le cloud. Dans les prochains articles, nous approfondirons la manière de connecter les pièges à caméra à la Google Cloud Platform et à des points d'extrémité externes à l'aide d'un outil appelé Node-RED et la manière de concevoir une application web simple à l'aide de Streamlit pour gérer les pièges à caméra placés dans les parcs.

C'est parti !

Caméras piégées

Avant d'entrer dans le vif du sujet, examinons rapidement ce que sont les pièges photographiques et comment ils peuvent être utilisés pour soutenir la protection et la conservation des animaux.

Les pièges photographiques sont des dispositifs dotés de capteurs intégrés qui permettent de prendre immédiatement une photo ou une vidéo lorsqu'une activité est détectée devant eux. Ils permettent aux gardes forestiers et aux biologistes de la faune de voir nos congénères sans interférer avec leur comportement normal.

Parcourir les parcs et recueillir des informations est une technique valable, mais il s'agit d'un processus coûteux, à forte intensité de main-d'œuvre et de personnel. En outre, il existe un risque de rencontrer des animaux sauvages dangereux ou, pire encore, des braconniers.

Bien que les différentes techniques de collecte de data s'accompagnent de différents compromis, les pièges photographiques constituent une excellente source. Le grand avantage des pièges photographiques est qu'ils fonctionnent continuellement et silencieusement et qu'ils peuvent enregistrer des images très précises ( data ) sans déranger le sujet photographié. Ils peuvent être utiles à la fois pour surveiller subrepticement d'éventuelles activités illicites et pour quantifier le nombre d'espèces différentes dans une zone et déterminer leur comportement et leurs schémas d'activité.

Google Cloud Platform

Pour le stockage et la gestion des médias des pièges à caméra, nous avons choisi d'utiliser une solution basée sur le cloud, plus particulièrement la Google Cloud Platform.

Google propose des solutions de stockage telles que Google Cloud Storage, un stockage d'objets avec mise en cache intégrée pour stocker des données non structurées ( data), des solutions de calcul telles que Cloud Functions, Functions as a Service pour exécuter du code piloté par les événements, ainsi que des API d'IA utiles, par exemple :

Le fait d'avoir tous ces composants dans un seul environnement unifié était la solution idéale pour nous et nous a permis de fournir une solution opérationnelle en peu de temps.

Le déroulement des opérations

Tout d'abord, les médias sont téléchargés dans une base de données Google Cloud Storage. Nous verrons comment cela se passe exactement dans le deuxième article de cette série. Le panier est organisé en dossiers, un pour chaque caméra. Une fois qu'un fichier est téléchargé, une fonction Google Cloud est immédiatement déclenchée, cette fonction s'occupe des tâches suivantes :

  • Lire les médias téléchargés
  • Appeler l'API Cloud Vision ou Cloud Video Intelligence pour récupérer les prédictions.

  • Archiver les réponses de l'API dans un autre Cloud Storage Bucket

  • Envoyer les prédictions à un point de terminaison en dehors du GCP

class="img-responsive

Cette architecture présente de multiples avantages :

  • Évolutivité: Grâce à l'utilisation de fonctions cloud, la solution est capable d'évoluer automatiquement en fonction du nombre de demandes (c'est-à-dire le nombre de médias téléchargés en même temps dans le panier de stockage cloud d'entrée).

  • Stockage bon marché et durable: Le stockage des données non structurées data dans Google Cloud Storage est très peu coûteux (seulement 0,026 $ par Go-mois pour le niveau de stockage standard) et offre en outre la meilleure durabilité des objets sur une année donnée.

  • Automatisation: L'utilisation conjointe de tous ces services nous permet d'avoir un pipeline entièrement automatisé, sans aucune intervention humaine. De l'ingestion de data à la récupération des prédictions, tout s'exécute automatiquement dès qu'un nouveau média est téléchargé.

API de vision dans le nuage et d'intelligence vidéo dans le nuage

L'utilisation de l'apprentissage automatique, et plus précisément de la vision par ordinateur, pour identifier automatiquement des personnes et des animaux dans des images ou des vidéos a connu des avancées significatives au cours des dernières années et est aujourd'hui largement considérée comme un "changement de jeu" par les chercheurs en faune et flore. Concentrons-nous sur les API utilisées.

Vision API et Video Intelligence API proposent de puissants modèles d'apprentissage automatique pré-entraînés par le biais d'API REST et RPC. La première est destinée à travailler avec des images, tandis que la seconde, comme son nom l'indique, travaille avec des vidéos. Toutes deux sont capables de reconnaître automatiquement un grand nombre d'objets, de lieux et d'actions.

Pour ce projet, nous nous sommes principalement concentrés sur ces trois fonctionnalités fournies par les API :

  • Détection d'étiquettes: Avoir une idée des entités (par exemple, les animaux, les personnes, les véhicules) présentes dans les médias. Sur cette base, il serait possible de créer des règles qui déclenchent une alarme en présence d'un ensemble spécifique d'entités.

  • Détection/suivi d'objets: Pour avoir une idée plus précise de l'emplacement des animaux/personnes détectés dans les médias. Contrairement à la détection d'étiquettes, nous obtenons également les annotations des cases des détections.

  • Détection de visages/personnes: Obtenir plus d'informations sur les personnes détectées, par exemple pour comprendre leurs émotions ou extraire leurs vêtements. Ces informations supplémentaires pourraient ensuite être utilisées pour distinguer les braconniers des personnes normales.

Vous pouvez jouer avec l'API Vision en téléchargeant simplement votre image ici.

class="img-responsive

Le chemin à suivre

Le chemin parcouru jusqu'à présent est une base pour le chemin passionnant et plein d'impact qui nous attend. Grâce aux outils de base mis en place dans un avenir proche, nous serons en mesure de créer beaucoup de valeur, non seulement pour les parcs intelligents, mais aussi pour la conservation de la faune et de la flore, et au-delà !

Les prochaines étapes porteront sur ces grands domaines de travail :

  • Expérimentation de modèles: Jusqu'à présent, nous n'avons expérimenté que des API ou des modèles pré-entraînés, mais il serait intéressant à l'avenir de constituer un ensemble de données d'images/vidéos collectées par les pièges à caméra. L'étiqueter, manuellement ou à l'aide du système que nous venons de présenter, puis l'utiliser pour entraîner des modèles de vision par ordinateur personnalisés afin d'obtenir une meilleure précision.

  • Mise en œuvre des cas d'utilisation: Le fait d'avoir déjà une solution entièrement automatisée nous permettra de nous concentrer davantage sur le développement de cas d'utilisation ciblés, c'est-à-dire de réfléchir à la manière d'exploiter les informations récupérées pour avoir un impact et aider les gardes forestiers et tous les bénévoles à protéger la faune et la flore des parcs.

  • Edge AI: Pour l'instant, la vitesse d'exécution de notre boucle de prédiction est satisfaisante pour notre cas d'utilisation (quelques minutes). Nous avons encore des points à améliorer pour nous rapprocher d'une solution en temps réel. L'Edge AI, avec un modèle déployé et fonctionnant plus près du matériel du piège à caméra, est une option qui permettrait d'éviter les allers-retours vers le nuage.

Dans ce premier article, nous avons expliqué comment nous avons construit notre pipeline évolutif entièrement automatisé dans Google Cloud, qui nous permet d'ingérer des médias et d'utiliser des API d'apprentissage automatique pour en extraire des informations. Il s'agit d'une base solide, facile et rapide à mettre en œuvre pour tout type de projet impliquant la consommation de médias et l'utilisation de l'apprentissage automatique pour en extraire des informations.

Merci de votre lecture et rendez-vous dans les prochains articles de la série où nous expliquerons plus en détail comment l'architecture présentée est effectivement connectée aux pièges à caméra, et où nous passerons en revue l'application web conçue pour les gérer, alors restez à l'écoute !

Un grand merci à Maël Deschamps pour son aide dans la révision du contenu de ce billet, et à Tim van Dam de Smart Parks pour son soutien tout au long du projet. Vous êtes géniaux !

class="img-responsive

Moyen Blog par Artefact.

Cet article a été initialement publié sur Medium.com.
Suivez-nous sur notre Medium Blog !