En cliquant sur « Accepter tous les cookies », vous acceptez le stockage de cookies sur votre appareil pour améliorer la navigation sur le site, analyser son utilisation et contribuer à nos efforts de marketing. Plus d’infos
Paramètres des cookies
En cliquant sur « Accepter tous les cookies », vous acceptez le stockage de cookies sur votre appareil pour améliorer la navigation sur le site, analyser son utilisation et contribuer à nos efforts de marketing. Plus d’infos
Apprenez à exécuter les inférences de YOLO11 dans une interface Streamlit et à construire une interface d'IA interactive pour les tâches de vision par ordinateur sans connaissances particulières en matière de codage.
Les modèles de vision par ordinateur sont des outils d'IA percutants qui permettent aux machines d'interpréter et d'analyser les données visuelles, en effectuant des tâches telles que la détection d'objets, la classification d'images et la segmentation d'instances avec une grande précision. Cependant, ils peuvent parfois nécessiter une expertise technique supplémentaire, telle que des compétences en développement web ou en applications mobiles, pour être déployés et rendus accessibles à un public plus large.
Prendre Ultralytics YOLO11par exemple. Il s'agit d'un modèle qui prend en charge diverses tâches et qui est utile dans toute une série d'applications. Toutefois, sans connaissances techniques de base, la construction et le déploiement d'une interface conviviale pour une interaction transparente peuvent sembler un peu difficiles pour certains ingénieurs en IA.
Streamlit est un framework open-source qui vise à faciliter ce processus. Il s'agit d'un outil Python qui permet de créer des applications interactives sans développement frontal complexe. Associé à YOLO11, il permet aux utilisateurs de télécharger des images, de traiter des vidéos et de visualiser les résultats en temps réel avec un minimum d'effort.
Ultralytics va encore plus loin avec sa solution Live Inference, qui rend l'intégration de Streamlit encore plus facile. D'une simple commande, les utilisateurs peuvent lancer une application Streamlit préconstruite pour YOLO11, éliminant ainsi la nécessité d'une configuration et d'un codage manuels.
Dans cet article, nous verrons comment configurer et exécuter YOLO11 en utilisant la solution Live Inference d'Ultralyticsavec Streamlit, rendant le déploiement de l'IA en temps réel plus rapide et plus accessible.
Qu'est-ce que Streamlit ?
Streamlit est un framework Python qui simplifie la création d'applications web interactives. Les développeurs d'IA peuvent créer des applications alimentées par l'IA sans avoir à s'occuper des complexités du développement frontal.
Il est conçu pour fonctionner de manière transparente avec des modèles d'IA et d'apprentissage automatique. Avec seulement quelques lignes de Python, les développeurs peuvent créer une interface où les utilisateurs peuvent télécharger des images, traiter des vidéos et interagir avec des modèles d'IA.
Fig 1. Principales caractéristiques de Streamlit. Image de l'auteur.
L'une de ses principales caractéristiques est le rendu dynamique. Lorsque les utilisateurs effectuent des modifications, l'application se met à jour automatiquement sans nécessiter de rechargement manuel de la page.
De plus, comme il est léger et facile à utiliser, Streamlit fonctionne efficacement sur les machines locales et les plateformes cloud. Cela en fait un excellent choix pour déployer des applications d'IA, partager des modèles avec d'autres et fournir une expérience utilisateur intuitive et interactive.
Ultralytics YOLO11: un modèle Vision AI polyvalent
Avant de voir comment exécuter des inférences en direct avec Ultralytics YOLO11 dans une application Streamlit, examinons de plus près ce qui rend YOLO11 si fiable.
Ultralytics YOLO11 est un modèle conçu pour les tâches de vision artificielle en temps réel telles que la détection d'objets, la segmentation d'instances et l'estimation de la pose. Il offre des performances élevées et une précision impressionnante.
Fig. 2. Exemple d'utilisation de YOLO11 pour la détection d'objets.
L'un des principaux avantages de YOLO11est sa facilité d'utilisation. Les développeurs peuvent installer le paquetagePython Ultralytics et commencer à faire des prédictions avec seulement quelques lignes de code.
Le package Ultralytics Python offre une série de fonctionnalités permettant aux utilisateurs d'affiner les modèles et d'ajuster les paramètres de détection. Il permet également d'optimiser les performances sur différents appareils pour un déploiement plus fluide.
Au-delà de la flexibilité, le package Ultralytics Python prend en charge les intégrations sur de multiples plateformes, y compris les appareils périphériques, les environnements cloud et les systèmesGPU NVIDIA . Qu'il soit déployé sur un petit appareil embarqué ou sur un serveur cloud à grande échelle, YOLO11 s'adapte sans effort, rendant l'IA visionnaire avancée plus accessible que jamais.
Avantages de l'utilisation de Streamlit avec Ultralytics YOLO11
Vous vous demandez peut-être comment savoir si Streamlit est la bonne option de déploiement pour moi ? Si vous recherchez un moyen simple et efficace d'exécuter YOLO11 sans avoir à vous préoccuper du développement frontal, Streamlit est une bonne option - en particulier pour les projets de prototypage, de démonstration de faisabilité (PoC) ou les déploiements destinés à un petit nombre d'utilisateurs.
Il rationalise le processus de travail avec YOLO11 en éliminant la complexité inutile et en fournissant une interface intuitive pour une interaction en temps réel. Voici quelques autres avantages clés :
Contrôles d'IA personnalisables : Vous pouvez ajouter des curseurs, des menus déroulants et des boutons à votre interface, permettant aux utilisateurs d'affiner facilement les paramètres de détection et de filtrer des objets spécifiques.
Intégration avec d'autres outils d'IA : Streamlit prend en charge l'intégration avec NumPy, OpenCV, Matplotlib et d'autres bibliothèques d'apprentissage automatique, améliorant ainsi les capacités du flux de travail de l'IA.
Visualisation interactive des données : La prise en charge intégrée des graphiques et des diagrammes permet aux utilisateurs de visualiser sans effort la détection d'objets, les résultats de la segmentation ou les informations de suivi.
Facilité de collaboration : Les applications Streamlit peuvent être facilement partagées avec les membres de l'équipe, les parties prenantes ou les clients via un simple lien, ce qui permet un retour d'information et une itération instantanés.
Guide étape par étape pour déployer YOLO11 dans une application web Streamlit
Maintenant que nous avons exploré les avantages de l'utilisation de Streamlit avec YOLO11, voyons comment exécuter des tâches de vision par ordinateur en temps réel dans un navigateur en utilisant Streamlit avec YOLO11.
Installation du paquetage Ultralytics Python
La première étape consiste à installer le paquetageUltralytics Python . Ceci peut être fait en utilisant la commande suivante :
Une fois installé, YOLO11 est prêt à être utilisé sans aucune configuration compliquée. Si vous rencontrez des problèmes lors de l'installation des paquets requis, vous pouvez vous référer à notre Guide des problèmes courants pour obtenir des conseils et des solutions de dépannage.
Lancement de l'application Streamlit avec YOLO11
Normalement, vous devriez développer un script Python utilisant des composants Streamlit pour exécuter YOLO11. Cependant, Ultralytics fournit un moyen simple d'exécuter YOLO11 avec Streamlit.
L'exécution du script Python suivant lancera instantanément l'application Streamlit dans votre navigateur web par défaut :
Aucune configuration supplémentaire n'est nécessaire. L'interface de l'application Streamlit comprend une section de téléchargement pour les images et les vidéos, un menu déroulant pour sélectionner la variante du modèle YOLO11 qui vous intéresse, et des curseurs pour ajuster la confiance dans la détection. Tout est bien organisé, ce qui permet aux utilisateurs d'effectuer des inférences sans effort et sans écrire de code supplémentaire.
Exécution d'inférences avec YOLO11 sur l'application Streamlit
Maintenant que l'application Streamlit s'exécute dans votre navigateur web, voyons comment l'utiliser pour effectuer des inférences avec YOLO11.
Par exemple, disons que nous voulons analyser un fichier vidéo pour la détection d'objets. Voici les étapes à suivre pour télécharger un fichier, sélectionner un modèle et afficher les résultats en temps réel :
Télécharger un fichier vidéo : Sélectionnez "vidéo" dans le menu déroulant de configuration de l'utilisateur, ce qui indique à l'application de traiter un fichier préenregistré au lieu d'un flux de webcam.
Choisissez un modèle YOLO11 : Sélectionnez "YOLO11l" dans la liste déroulante des modèles pour la détection d'objets à l'aide d'un grand modèle YOLO11 .
Démarrer le processus de détection: Cliquez sur "Démarrer" pour permettre à YOLO11 d'analyser la vidéo image par image et de detect objets en temps réel.
Voir la vidéo traitée : Regardez la vidéo apparaître à l'écran avec des mises à jour en direct, affichant les objets détectés avec des boîtes englobantes.
Interagissez avec les résultats dans Streamlit : Utilisez l'interface pour ajuster les paramètres ou analyser les détections, le tout sans configuration ni codage supplémentaires.
Fig. 3. L'interface de l'application Ultralytics YOLO Streamlit.
Cas d'utilisation de Streamlit et YOLO11
Nous avons examiné comment Streamlit est idéal pour créer des prototypes, des outils de recherche et des applications de petite à moyenne taille. Il offre un moyen simple de déployer des modèles d'IA sans développement frontal complexe.
Cependant, faire fonctionner YOLO11 avec Streamlit n'est pas toujours une solution prête à l'emploi - à moins que vous n'utilisiez l'application Ultralytics YOLO Streamlit que nous avons mise en place dans les étapes ci-dessus. Dans la plupart des cas, un travail de développement est nécessaire pour adapter l'application à des besoins spécifiques. Bien que Streamlit simplifie le déploiement, vous devrez toujours configurer les composants nécessaires pour assurer le bon fonctionnement de YOLO11 .
Examinons deux exemples pratiques de la manière dont Ultralytics YOLO11 peut être efficacement déployé avec Streamlit dans des scénarios réels.
Comptage d'objets pour les contrôles d'inventaire à l'aide de YOLO11
Le suivi track stocks dans les magasins de détail, les salles de stockage ou les zones de fournitures de bureau peut prendre beaucoup de temps et être sujet à des erreurs. En utilisant YOLO11 avec Streamlit, les entreprises peuvent automatiser le comptage d'objets rapidement et efficacement, ce qui en fait une excellente option pour une démonstration de faisabilité avant de s'engager dans un déploiement à grande échelle.
Avec cette configuration, les utilisateurs peuvent télécharger une image ou utiliser une caméra en direct, et YOLO11 peut aider à detect et à compter instantanément les objets. Le comptage en temps réel peut être affiché dans l'interface Streamlit, offrant ainsi un moyen facile de contrôler les niveaux de stock sans effort manuel.
Par exemple, le propriétaire d'un magasin peut scanner une étagère et voir immédiatement combien de bouteilles, de cartons ou de produits emballés s'y trouvent, sans avoir à les compter manuellement. En s'appuyant sur YOLO11 et Streamlit, les entreprises peuvent réduire le travail manuel, améliorer la précision et explorer l'automatisation avec un investissement minimal.
Fig. 4. Détection de bouteilles dans un réfrigérateur à l'aide de YOLO11.
Renforcer la sécurité avec YOLO11 et Streamlit
Assurer la sécurité des zones restreintes dans les bureaux, les entrepôts ou les lieux d'événements peut s'avérer difficile, en particulier avec une surveillance manuelle. En utilisant YOLO11 avec Streamlit, les entreprises peuvent mettre en place un système de sécurité simple alimenté par l'IA pour detect accès non autorisés en temps réel.
Une caméra peut être connectée à l'interface Streamlit, où YOLO11 est utilisé pour identifier et track personnes entrant dans les zones restreintes. Si une personne non autorisée est détectée, le système peut déclencher une alerte ou enregistrer l'événement pour examen.
Par exemple, un responsable d'entrepôt peut surveiller l'accès à des zones de stockage hautement sécurisées, ou un bureau peut track mouvements dans des sections restreintes sans avoir besoin d'une supervision constante.
Ce projet peut s'avérer révélateur pour les entreprises qui souhaitent explorer la surveillance de la sécurité par Vision AI avant de s'engager dans un système plus important et entièrement automatisé. En intégrant YOLO11 à Streamlit, les entreprises peuvent renforcer la sécurité, minimiser la surveillance manuelle et réagir plus efficacement en cas d'accès non autorisé.
Conseils pour surveiller une application d'IA interactive avec Streamlit
L'utilisation d'outils comme Streamlit pour déployer des modèles de vision par ordinateur contribue à créer une expérience interactive et conviviale. Cependant, après avoir configuré l'interface en direct, il est important de s'assurer que le système fonctionne efficacement et fournit des résultats précis au fil du temps.
Voici quelques facteurs clés à prendre en compte après le déploiement :
Surveillance régulière: Suivez la précision de la détection, la vitesse d'inférence et l'utilisation des ressources. Ajustez les paramètres du modèle ou mettez à niveau le matériel si les performances diminuent.
Gestion de plusieurs utilisateurs et évolutivité : À mesure que la demande des utilisateurs augmente, l'optimisation de l'infrastructure est essentielle pour maintenir les performances. Les plateformes cloud et les solutions de déploiement évolutives contribuent à assurer un fonctionnement fluide.
Mise à jour du modèle : La mise à jour du modèle et des bibliothèques améliore la précision, la sécurité et l'accès aux nouvelles fonctionnalités.
Principaux points à retenir
Ultralytics simplifie le déploiement de YOLO11 grâce à une interface Streamlit live prête à l'emploi qui s'exécute avec une seule commande - aucun codage n'est nécessaire. Cela permet aux utilisateurs de commencer à utiliser la détection d'objets en temps réel instantanément.
L'interface comprend également une personnalisation intégrée, permettant aux utilisateurs de changer de modèle, d'ajuster la précision de la détection et de filtrer facilement les objets. Tout est géré dans une interface simple et conviviale, éliminant ainsi le besoin de développement manuel de l'interface utilisateur. En combinant
Grâce aux capacités de YOLO11et à la facilité de déploiement de Streamlit, les entreprises et les développeurs peuvent rapidement prototyper, tester et affiner les applications basées sur l'IA.