Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant

Déployer Ultralytics YOLO11 en toute transparence grâce à l'intégration MNN

Découvrez comment exporter et déployer les modèles Ultralytics YOLO11 avec l'intégration MNN pour une inférence rapide sur les plates-formes mobiles, embarquées et à faible consommation d'énergie.

De nos jours, les innovations en matière d'IA se sont étendues au-delà des environnements de serveurs distants. Les solutions d'IA sont intégrées dans des appareils périphériques tels que les capteurs et les smartphones. Grâce à cette évolution technologique, les données peuvent désormais être traitées directement là où elles sont générées, ce qui permet des réponses plus rapides, une meilleure confidentialité et une dépendance réduite à une connectivité cloud constante.

Par conséquent, l'IA en périphérie gagne du terrain dans de nombreux secteurs. Le marché des logiciels d'IA en périphérie devrait atteindre 8,88 milliards de dollars d'ici 2031, à mesure que de plus en plus de systèmes évoluent vers un traitement plus rapide et plus local.

En particulier, la vision par ordinateur, une branche de l'IA qui se concentre sur la compréhension des images et de la vidéo, est rapidement adoptée à la périphérie. Qu'il s'agisse de compter les aliments lors de leur conditionnement ou d'aider les véhicules à detect piétons, la vision par ordinateur prend en charge d'innombrables applications pratiques dans différents secteurs.

Cela est possible grâce à des modèles de vision par ordinateur. Par exemple, Ultralytics YOLO11 est un modèle qui prend en charge diverses tâches de vision artificielle telles que la détection d'objets, la segmentation d'instances, le suivi d'objets et l'estimation de la pose. Il est conçu pour être rapide et efficace et fonctionne bien sur des appareils aux ressources matérielles limitées.

Fig. 1. Détection et suivi des aliments emballés à l'aide de YOLO11 (Source).

En plus d'être adapté au déploiement en périphérie, YOLO11 peut être exporté dans divers formats adaptés à différents environnements matériels grâce à diverses intégrations prises en charge par Ultralytics. 

L'une des options les plus efficaces est MNN (Mobile Neural Network), un moteur d'inférence léger conçu pour les appareils à faibles ressources. L'exportation de YOLO11 vers MNN lui permet de fonctionner directement sur les téléphones portables, les systèmes embarqués et d'autres plates-formes de pointe où un traitement rapide sur l'appareil est essentiel.

Dans cet article, nous allons explorer le fonctionnement de l'intégration MNN, mettre en évidence les cas d'utilisation courants et expliquer comment commencer à exécuter des inférences à l'aide d'un modèle YOLO11 exporté. Commençons par le commencement !

Aperçu de MNN : un framework de deep learning

L'exécution de modèles de vision artificielle sur des appareils plus petits comme les téléphones portables, les capteurs industriels et les systèmes portables n'est pas toujours simple. Ces appareils ont souvent une mémoire limitée, des processeurs plus lents et des limites de puissance strictes. 

Le réseau neuronal mobile, ou MNN, est un moteur d'inférence léger et performant développé par Alibaba pour faire fonctionner efficacement les modèles d'intelligence artificielle sur du matériel à faibles ressources tout en maintenant des performances en temps réel. Le MNN prend en charge un large éventail de plateformes, notamment Android, iOS et Linux, et fonctionne sur différents types de matériel tels que les unités centrales de traitement (CPU) et les unités de traitement graphique (GPU).

Fig 2. Aperçu du framework MNN (Source).

L'intégration MNN prise en charge par Ultralytics permet d'exporter facilement les modèles YOLO11 vers le format MNN. En d'autres termes, les modèles peuvent être convertis du format YOLO au format MNN. 

Une fois convertis, ils peuvent être déployés sur des appareils qui prennent en charge le cadre MNN pour une inférence efficace sur l'appareil. L'un des principaux avantages de l'utilisation du format MNN est qu'il simplifie le déploiement de YOLO11 dans des scénarios où la taille, la vitesse et l'efficacité des ressources sont essentielles.

Principales caractéristiques du backend d'inférence MNN

Avant de nous pencher sur l'utilisation de l'intégration MNN, examinons ce qui fait du framework MNN un excellent choix pour l'exécution de modèles d'IA sur des appareils du monde réel. Il est conçu pour gérer les contraintes uniques des environnements périphériques tout en offrant des performances rapides et fiables.

Il est intéressant de noter que MNN est utilisé en interne chez Alibaba dans plus de 30 applications, notamment Taobao, Tmall, Youku, DingTalk et Xianyu, dans un large éventail de scénarios tels que la vidéo en direct, le contenu de courte durée, la recherche d'images et les contrôles de sécurité sur l'appareil. Il prend en charge le déploiement à grande échelle et exécute des millions d'inférences par jour dans des environnements de production.

Voici quelques-unes des principales caractéristiques du framework MNN :

  • Sélection automatique du backend : MNN peut choisir automatiquement le backend d'exécution le plus approprié, tel que le CPU ou le GPU, en fonction du matériel sur lequel il fonctionne.
  • Exécution multithread : Il prend en charge le multithreading, ce qui lui permet de tirer pleinement parti des processeurs multicœurs pour une inférence plus rapide.
  • Prise en charge de la quantification de modèles : Elle vous permet de réduire considérablement la taille du modèle en utilisant la quantification FP16 ou INT8, ce qui contribue à améliorer la vitesse d'inférence tout en utilisant moins de mémoire.
  • Léger et rapide : MNN a un très faible encombrement, avec une bibliothèque centrale d'environ 400 Ko sur Android et d'environ 5 Mo sur iOS, ce qui le rend idéal pour les appareils mobiles et embarqués.

Comprendre le fonctionnement de l'intégration MNN

Ensuite, nous allons voir comment exporter les modèles YOLO11 au format MNN.

La première étape consiste à installer le paquetagePython Ultralytics , qui fournit tout ce qui est nécessaire pour exporter les modèles YOLO11 au format MNN. Vous pouvez le faire en exécutant "pip install ultralytics" dans votre terminal ou en utilisant l'invite de commande. Si vous utilisez un Jupyter Notebook ou Google Colab, ajoutez un point d'exclamation avant la commande.

Si vous rencontrez des problèmes lors de l'installation, consultez le guide des problèmes courants pour obtenir des conseils de dépannage.

Une fois votre environnement configuré, vous pouvez charger un modèle YOLO11 pré-entraîné tel que "yolo11n.pt" et l'exporter au format MNN comme le montre l'extrait de code ci-dessous. Si vous avez entraîné votre propre modèle YOLO11 , vous pouvez l'exporter en remplaçant simplement le nom du fichier par le chemin d'accès à votre modèle.

from ultralytics import YOLO
model = YOLO("yolo11n.pt")
model.export(format="mnn")

Après avoir converti votre modèle en MNN, vous pouvez l'utiliser sur différentes plateformes mobiles et embarquées en fonction des besoins de votre application.

Par exemple, supposons que vous souhaitiez tester le modèle exporté sur une vidéo de la circulation. Dans ce cas, vous pouvez charger le modèle YOLO11 au format MNN pour detect objets tels que des véhicules, des piétons et des panneaux de signalisation directement sur l'appareil, comme le montre l'exemple ci-dessous.

mnn_model = YOLO("yolo11n.mnn")
results = mnn_model("https://videos.pexels.com/video-files/27783817/12223745_1920_1080_24fps.mp4", save=True)

Lorsque l'inférence est terminée, la vidéo de sortie avec les objets détectés est enregistrée automatiquement dans le dossier "detect". Par ailleurs, si vous souhaitez exécuter l'inférence en utilisant directement le paquetage Python MNN, vous pouvez consulter la documentation officielle d'Ultralytics pour plus de détails et d'exemples.

Fig. 3. Analyse du trafic à l'aide d'un modèle YOLO11 exporté au format MNN. Image de l'auteur.

Cas d'utilisation du déploiement d'un modèle d'IA de pointe rendu possible par YOLO11 et MNN

Le déploiement de YOLO11 avec MNN permet d'effectuer rapidement et efficacement des tâches de vision artificielle telles que la détection d'objets dans des environnements où le traitement basé sur le cloud n'est pas pratique ou possible. Voyons comment cette intégration peut être particulièrement utile dans des scénarios réels.

IA mobile en périphérie pour l'identification des maladies des plantes

Les applications d'identification des maladies des plantes qui utilisent la classification d'images gagnent en popularité auprès des jardiniers, des chercheurs et des passionnés de la nature. Avec juste une photo, les utilisateurs peuvent rapidement identifier les premiers signes de maladie, tels que des taches sur les feuilles ou une décoloration. Comme ces applications sont souvent utilisées dans des zones extérieures où l'accès à Internet peut être limité ou indisponible, le fait de s'appuyer sur le traitement dans le cloud peut ne pas être fiable.

Après l'entraînement, un modèle YOLO11 peut être exporté au format MNN et exécuté directement sur des appareils mobiles. Le modèle peut alors classify espèces végétales et detect symptômes de maladies visibles localement, sans envoyer de données à un serveur. 

Fig. 4. Exemple d'utilisation de YOLO11 pour detect signes de rouille (une maladie végétale) sur une feuille(Source).

Inférences efficaces sur les appareils dans le secteur manufacturier

Un suivi précis des colis est essentiel sur les chaînes de production à forte activité dans les usines de fabrication. YOLO11 peut être utilisé pour track et compter chaque article lorsqu'il passe par les points de contrôle clés, en mettant à jour les comptages en temps réel et en signalant toute anomalie. Cela permet de réduire le nombre d'envois manqués ou non comptabilisés et de favoriser des opérations plus fluides et plus fiables.

Fig. 5. Suivi et comptage des colis à l'aide de YOLO11 (Source).

L'intégration de MNN peut avoir un impact particulier dans ce contexte. Une fois que le modèle YOLO11 est exporté au format MNN, il peut fonctionner directement sur des appareils compacts et de faible puissance installés le long du convoyeur. 

Comme tout le traitement se fait localement, le système peut fournir un retour d'information instantané et ne nécessite aucune connexion internet. Cela garantit des performances rapides et fiables sur le site de production, permettant de maintenir une production efficace tout en conservant une précision et un contrôle élevés.

Avantages de l'exportation de YOLO11 vers le format de modèle MNN

Voici quelques avantages clés de l'intégration de MNN fournie par Ultralytics:

  • Temps de réponse plus rapides : comme l’inférence s’exécute sur l’appareil, les prédictions se font en temps réel avec une latence minimale.
  • Amélioration de la confidentialité des données : Les données restent sur l'appareil, ce qui réduit la nécessité d'envoyer des images ou des vidéos sensibles au cloud.
  • Open source et activement maintenu : Soutenu par Alibaba et bénéficiant d'une communauté active, MNN est fiable et régulièrement mis à jour avec des améliorations de performance.

Facteurs à prendre en compte lors de l'utilisation du framework MNN

Avant de choisir MNN comme framework de déploiement, il est également important d'évaluer dans quelle mesure il correspond aux exigences de votre projet, aux cibles de déploiement et aux limitations techniques. Voici quelques facteurs clés à prendre en compte :

  • Compatibilité continue : Les mises à jour du framework ou les modifications apportées à vos plateformes cibles peuvent nécessiter de nouveaux tests ou des ajustements pour que tout continue de fonctionner correctement.
  • Moins d’outils de débogage : comparativement aux frameworks plus grands, MNN dispose d’outils plus limités pour le débogage et l’inspection du comportement du modèle, ce qui peut rendre le dépannage plus difficile.
     
  • Les performances dépendent du matériel : La vitesse et l'efficacité de votre modèle varieront en fonction de l'appareil. Testez votre matériel cible pour vous assurer qu'il répond à vos objectifs de performance.

Principaux points à retenir

La prise en charge de l'intégration MNN par Ultralyticsfacilite l'exportation des modèles YOLO11 pour une utilisation sur des appareils mobiles et embarqués. Il s'agit d'une option pratique pour les applications qui nécessitent une détection rapide et fiable sans dépendre d'un accès au cloud ou d'une connectivité constante.

Cette configuration permet de rationaliser le déploiement tout en maintenant les performances et en limitant les demandes de ressources. Que vous construisiez des systèmes domestiques intelligents, des outils de terrain ou des appareils industriels compacts, l'exportation de YOLO11 vers MNN constitue un moyen souple et efficace d'exécuter des tâches de vision par ordinateur directement sur des appareils périphériques.

Rejoignez notre communauté en pleine croissance ! Explorez notre dépôt GitHub pour approfondir vos connaissances sur l'IA. Prêt à démarrer vos projets de vision par ordinateur ? Consultez nos options de licence. Découvrez-en davantage sur l'IA dans le secteur de la santé et la vision par ordinateur dans le commerce de détail sur nos pages de solutions !

Construisons ensemble l'avenir
de l'IA !

Commencez votre parcours avec l'avenir de l'apprentissage automatique

Démarrer gratuitement