Inférence en direct avec l'application Streamlit utilisant Ultralytics YOLO11
Introduction
Streamlit simplifie la création et le déploiement d'applications web interactives. Combiner cela avec Ultralytics YOLO11 permet une détection d'objets et une analyse en temps réel directement dans votre navigateur. La haute précision et la vitesse de YOLO11 garantissent des performances fluides pour les flux vidéo en direct, ce qui le rend idéal pour les applications dans les domaines de la sécurité, du commerce de détail, et au-delà.
Regarder : Comment utiliser Streamlit avec Ultralytics en temps réel Vision par ordinateur dans votre navigateur
Aquaculture | Élevage d'animaux |
---|---|
![]() |
![]() |
Détection de poissons à l'aide d'Ultralytics YOLO11 | Détection d'animaux à l'aide d'Ultralytics YOLO11 |
Avantages de l'inférence en direct
- Détection d'Objets Transparente en Temps Réel : Streamlit combiné à YOLO11 permet la détection d'objets en temps réel directement à partir du flux de votre webcam. Cela permet une analyse et des informations immédiates, ce qui le rend idéal pour les applications nécessitant un retour d'information instantané.
- Déploiement convivial : L’interface interactive de Streamlit facilite le déploiement et l’utilisation de l’application sans connaissances techniques approfondies. Les utilisateurs peuvent démarrer l’inférence en direct d’un simple clic, ce qui améliore l’accessibilité et la convivialité.
- Utilisation efficace des ressources : Les algorithmes optimisés de YOLO11 garantissent un traitement à haute vitesse avec un minimum de ressources de calcul. Cette efficacité permet une inférence de webcam fluide et fiable, même sur du matériel standard, ce qui rend la vision par ordinateur avancée accessible à un public plus large.
Code de l'application Streamlit
Installation Ultralytics
Avant de commencer à construire l'application, assurez-vous que le paquet Ultralytics Python est installé. Vous pouvez l'installer en utilisant la commande pip install ultralytics.
Inférence utilisant Streamlit avec Ultralytics YOLO
yolo solutions inference
yolo solutions inference model="path/to/model.pt"
from ultralytics import solutions
inf = solutions.Inference(
model="yolo11n.pt", # you can use any model that Ultralytics support, i.e. YOLO11, or custom trained model
)
inf.inference()
# Make sure to run the file using command `streamlit run path/to/file.py`
Cela lancera l'application Streamlit dans votre navigateur web par défaut. Vous verrez le titre principal, le sous-titre et la barre latérale avec les options de configuration. Sélectionnez le modèle YOLO11 souhaité, définissez la confiance et les seuils NMS, et cliquez sur le bouton "Start" pour commencer la détection d'objets en temps réel.
Comment ça marche
En coulisses, l'application Streamlit utilise le module de solutions Ultralytics pour créer une interface interactive. Lorsque vous lancez l'inférence, l'application :
- Capture des vidéos à partir de votre webcam ou d’un fichier vidéo téléchargé
- Traite chaque trame à travers le modèle YOLO11
- Applique la détection d'objets avec les seuils de confiance et d'IoU que vous avez spécifiés
- Affiche à la fois les trames originales et les trames annotées en temps réel
- Active optionnellement le suivi des objets si sélectionné
L'application fournit une interface propre et conviviale avec des commandes permettant d'ajuster les paramètres du modèle et de démarrer/arrêter l'inférence à tout moment.
Conclusion
En suivant ce guide, vous avez créé avec succès une application de détection d'objets en temps réel à l'aide de Streamlit et d'Ultralytics YOLO11. Cette application vous permet de découvrir la puissance de YOLO11 dans la détection d'objets via votre webcam, avec une interface conviviale et la possibilité d'arrêter le flux vidéo à tout moment.
Pour des améliorations supplémentaires, vous pouvez envisager d'ajouter d'autres fonctionnalités telles que l'enregistrement du flux vidéo, la sauvegarde des images annotées ou l'intégration avec d'autres bibliothèques de vision par ordinateur.
Partagez vos réflexions avec la communauté
Engagez-vous avec la communauté pour en savoir plus, résoudre les problèmes et partager vos projets :
Où trouver de l'aide et de l'assistance
- Problèmes GitHub : Visitez le dépôt Ultralytics GitHub pour poser des questions, signaler des bugs et suggérer des fonctionnalités.
- Serveur Discord Ultralytics : Rejoignez le serveur Discord Ultralytics pour vous connecter avec d'autres utilisateurs et développeurs, obtenir de l'aide, partager des connaissances et échanger des idées.
Documentation officielle
- Documentation Ultralytics YOLO11 : Consultez la documentation officielle de YOLO11 pour des guides complets et des informations sur diverses tâches et projets de vision par ordinateur.
FAQ
Comment puis-je configurer une application de détection d'objets en temps réel en utilisant Streamlit et Ultralytics YOLO11 ?
La mise en place d'une application de détection d'objets en temps réel avec Streamlit et Ultralytics YOLO11 est simple. Tout d'abord, assurez-vous que le paquet Ultralytics python est installé en utilisant :
pip install ultralytics
Ensuite, vous pouvez créer une application Streamlit de base pour exécuter l'inférence en direct:
Application Streamlit
from ultralytics import solutions
inf = solutions.Inference(
model="yolo11n.pt", # you can use any model that Ultralytics support, i.e. YOLO11, YOLOv10
)
inf.inference()
# Make sure to run the file using command `streamlit run path/to/file.py`
yolo solutions inference
Pour plus de détails sur la configuration pratique, consultez la section Code de l'application Streamlit de la documentation.
Quels sont les principaux avantages de l'utilisation d'Ultralytics YOLO11 avec Streamlit pour la détection d'objets en temps réel ?
L'utilisation d'Ultralytics YOLO11 avec Streamlit pour la détection d'objets en temps réel offre plusieurs avantages :
- Détection en temps réel transparente : Obtenez une précision élevée de la détection d'objets en temps réel directement à partir des flux de webcam.
- Interface conviviale : L’interface intuitive de Streamlit permet une utilisation et un déploiement faciles sans connaissances techniques approfondies.
- Efficacité des ressources : Les algorithmes optimisés de YOLO11 garantissent un traitement à haute vitesse avec des ressources de calcul minimales.
Découvrez plus d'avantages dans la section Avantages de l'inférence en direct.
Comment déployer une application de détection d'objets Streamlit dans mon navigateur web ?
Après avoir codé votre application Streamlit intégrant Ultralytics YOLO11, vous pouvez la déployer en exécutant :
streamlit run path/to/file.py
Cette commande lancera l'application dans votre navigateur web par défaut, vous permettant de sélectionner des modèles YOLO11, de définir des seuils de confiance et de NMS, et de démarrer la détection d'objets en temps réel d'un simple clic. Pour un guide détaillé, consultez la section Code de l'application Streamlit.
Quels sont quelques cas d'utilisation de la détection d'objets en temps réel à l'aide de Streamlit et d'Ultralytics YOLO11 ?
La détection d'objets en temps réel à l'aide de Streamlit et d'Ultralytics YOLO11 peut être appliquée dans divers secteurs :
- Sécurité : Surveillance en temps réel des accès non autorisés et des systèmes d’alarme de sécurité.
- Vente au détail : Comptage des clients, gestion des rayons et suivi des stocks.
- Faune et agriculture : Surveillance des animaux et des conditions des cultures pour les efforts de conservation.
Pour des cas d'utilisation et des exemples plus approfondis, explorez les Solutions Ultralytics.
Comment Ultralytics YOLO11 se compare-t-il à d'autres modèles de détection d'objets tels que YOLOv5 et les RCNN ?
Ultralytics YOLO11 offre plusieurs améliorations par rapport aux modèles précédents comme YOLOv5 et RCNN :
- Vitesse et Précision Supérieures : Performance améliorée pour les applications en temps réel.
- Facilité d'utilisation : Interfaces et déploiement simplifiés.
- Efficacité des ressources : Optimisé pour une meilleure vitesse avec des exigences de calcul minimales.
Pour une comparaison complète, consultez la Documentation Ultralytics YOLO11 et les articles de blogue connexes traitant de la performance des modèles.