Intégration Roboflow
Roboflow fournit une suite d'outils conçus pour la création et le déploiement de modèles de vision par ordinateur. Vous pouvez intégrer Roboflow à différentes étapes de votre pipeline de développement en utilisant leurs API et SDK, ou utiliser son interface de bout en bout pour gérer le processus de la collecte d'images à l'inférence. Roboflow offre des fonctionnalités pour l'étiquetage des données, l'entraînement des modèles et le déploiement des modèles, fournissant des composants pour le développement de solutions de vision par ordinateur personnalisées aux côtés des outils Ultralytics.
Licences
Ultralytics propose deux options de licence pour s'adapter à différents cas d'utilisation :
- Licence AGPL-3.0 : Cette licence open source approuvée par l’OSI est idéale pour les étudiants et les passionnés, car elle favorise la collaboration ouverte et le partage des connaissances. Consultez le fichier LICENSE pour plus de détails.
- Licence Entreprise : Conçue pour un usage commercial, cette licence permet l'intégration transparente des logiciels et des modèles d'IA Ultralytics dans les produits et services commerciaux. Si votre scénario implique des applications commerciales, veuillez nous contacter via Ultralytics Licensing.
Pour plus de détails, consultez la page de licence Ultralytics.
Ce guide explique comment trouver, étiqueter et organiser les données pour entraîner un modèle Ultralytics YOLO11 personnalisé à l'aide de Roboflow.
- Recueillir des données pour l'entraînement d'un modèle YOLO11 personnalisé
- Télécharger, convertir et étiqueter des données pour le format YOLO11
- Prétraiter et augmenter les données pour la robustesse du modèle
- Gestion des ensembles de données pour YOLO11
- Exporter des données dans plus de 40 formats pour l'entraînement des modèles
- Télécharger des poids de modèle YOLO11 personnalisés pour les tests et le déploiement
- Comment évaluer les modèles YOLO11
- Ressources d'apprentissage
- Présentation de projets
- FAQ
Recueillir des données pour l'entraînement d'un modèle YOLO11 personnalisé
Roboflow offre deux services principaux pour aider à la collecte de données pour les modèles YOLO Ultralytics : Universe et Collect. Pour des informations plus générales sur les stratégies de collecte de données, consultez notre Guide de collecte et d'annotation de données.
Roboflow Universe
Roboflow Universe est un référentiel en ligne présentant un grand nombre de datasets de vision.
Avec un compte Roboflow, vous pouvez exporter les ensembles de données disponibles sur Universe. Pour exporter un ensemble de données, utilisez le bouton "Download this Dataset" (Télécharger cet ensemble de données) sur la page de l'ensemble de données concerné.
Pour la compatibilité avec Ultralytics YOLO11, sélectionnez « YOLO11 » comme format d'exportation :
Universe propose également une page regroupant les modèles YOLO affinés publics téléchargés sur Roboflow. Cela peut être utile pour explorer les modèles pré-entraînés à des fins de test ou d'étiquetage automatisé des données.
Roboflow Collect
Si vous préférez collecter vous-même les images, Roboflow Collect est un projet open source permettant la collecte automatique d'images via une webcam sur des appareils périphériques. Vous pouvez utiliser des invites textuelles ou visuelles pour spécifier les données à collecter, ce qui vous aidera à ne capturer que les images nécessaires à votre modèle de vision.
Télécharger, convertir et étiqueter des données pour le format YOLO11
Roboflow Annotate est un outil en ligne pour l'étiquetage d'images pour diverses tâches de vision par ordinateur, y compris la détection d'objets, la classification et la segmentation.
Pour étiqueter des données pour un modèle Ultralytics YOLO (qui prend en charge la détection, la segmentation d'instance, la classification, l'estimation de pose et l'OBB), commencez par créer un projet dans Roboflow.
Ensuite, téléchargez vos images et toutes les annotations existantes d'autres outils dans Roboflow.
Après le téléchargement, vous serez dirigé vers la page Annotate. Sélectionnez le lot d'images téléchargées et cliquez sur « Démarrer l'annotation » pour commencer l'étiquetage.
Outils d’annotation
- Annotation de boîtes englobantes: Appuyez sur
B
ou cliquez sur l’icône de la boîte. Cliquez et faites glisser pour créer le boîte englobante. Une fenêtre contextuelle vous invitera à sélectionner une classe pour l'annotation.
- Annotation de polygone: Utilisé pour segmentation d'instance. Appuyez sur
P
ou cliquez sur l’icône de polygone. Cliquez sur les points autour de l’objet pour dessiner le polygone.
Assistant d'étiquetage (intégration SAM)
Roboflow intègre un assistant d'étiquetage basé sur le Segment Anything Model (SAM) pour potentiellement accélérer l'annotation.
Pour utiliser l'assistant d'étiquetage, cliquez sur l'icône de curseur dans la barre latérale. SAM sera activé pour votre projet.
Passez le curseur sur un objet, et SAM peut suggérer une annotation. Cliquez pour accepter l'annotation. Vous pouvez affiner la spécificité de l'annotation en cliquant à l'intérieur ou à l'extérieur de la zone suggérée.
Étiquetage
Vous pouvez ajouter des balises aux images à l’aide du panneau Balises dans la barre latérale. Les balises peuvent représenter des attributs tels que l’emplacement, la source de la caméra, etc. Ces balises vous permettent de rechercher des images spécifiques et de générer des versions de l’ensemble de données contenant des images avec des balises particulières.
Assistance à l'étiquetage (basée sur un modèle)
Les modèles hébergés sur Roboflow peuvent être utilisés avec Label Assist, un outil d'annotation automatisé qui exploite votre modèle YOLO11 entraîné pour suggérer des annotations. Tout d'abord, téléchargez les poids de votre modèle YOLO11 sur Roboflow (voir les instructions ci-dessous). Ensuite, activez Label Assist en cliquant sur l'icône de la baguette magique dans la barre latérale gauche et en sélectionnant votre modèle.
Choisissez votre modèle et cliquez sur « Continuer » pour activer l’assistance au libellé :
Lorsque vous ouvrez de nouvelles images pour l'annotation, Label Assist peut automatiquement suggérer des annotations basées sur les prédictions de votre modèle.
Gestion des ensembles de données pour YOLO11
Roboflow fournit plusieurs outils pour comprendre et gérer vos datasets de vision par ordinateur.
Recherche de jeux de données
Utilisez la recherche d'ensembles de données pour trouver des images basées sur des descriptions textuelles sémantiques (par exemple, "trouver toutes les images contenant des personnes") ou des étiquettes/tags spécifiques. Accédez à cette fonctionnalité en cliquant sur "Dataset" dans la barre latérale et en utilisant la barre de recherche et les filtres.
Par exemple, rechercher des images contenant des personnes :
Vous pouvez affiner les recherches à l'aide de balises via le sélecteur "Tags" :
Vérification de l'état
Avant l'entraînement, utilisez Roboflow Health Check pour obtenir des informations sur votre jeu de données et identifier les améliorations potentielles. Accédez-y via le lien "Health Check" dans la barre latérale. Il fournit des statistiques sur la taille des images, l'équilibre des classes, les cartes thermiques d'annotation, et plus encore.
La vérification de l'état peut suggérer des modifications pour améliorer les performances, telles que la correction des déséquilibres de classes identifiés dans la fonctionnalité d'équilibre des classes. La compréhension de l'état de l'ensemble de données est cruciale pour un apprentissage du modèle efficace.
Prétraiter et augmenter les données pour la robustesse du modèle
Pour exporter vos données, vous devez créer une version de l'ensemble de données, qui est un instantané de votre ensemble de données à un moment précis. Cliquez sur « Versions » dans la barre latérale, puis sur « Créer une nouvelle version ». Ici, vous pouvez appliquer des étapes de prétraitement et des augmentations de données pour potentiellement améliorer la robustesse du modèle.
Pour chaque augmentation sélectionnée, une fenêtre contextuelle vous permet d'affiner ses paramètres, tels que la luminosité. Une augmentation appropriée peut améliorer considérablement la généralisation du modèle, un concept clé abordé dans notre guide de conseils pour l'entraînement des modèles.
Exporter des données dans plus de 40 formats pour l'entraînement des modèles
Une fois votre version d'ensemble de données générée, vous pouvez l'exporter dans différents formats adaptés à l'entraînement du modèle. Cliquez sur le bouton "Exporter l'ensemble de données" sur la page de la version.
Sélectionnez le format "YOLO11" pour assurer la compatibilité avec les pipelines d'entraînement Ultralytics. Vous êtes maintenant prêt à entraîner votre modèle YOLO11 personnalisé. Consultez la documentation du mode d'entraînement Ultralytics pour obtenir des instructions détaillées sur le lancement de l'entraînement avec votre ensemble de données exporté.
Télécharger des poids de modèle YOLO11 personnalisés pour les tests et le déploiement
Roboflow offre une API scalable pour les modèles déployés et des SDK compatibles avec des appareils tels que NVIDIA Jetson, Luxonis OAK, Raspberry Pi et les systèmes basés sur GPU. Explorez diverses options de déploiement de modèles dans nos guides.
Vous pouvez déployer des modèles YOLO11 en téléchargeant leurs poids sur Roboflow à l'aide d'un simple script Python.
Créer un nouveau fichier python et ajouter le code suivant :
import roboflow # install with 'pip install roboflow'
# Log in to Roboflow (requires API key)
roboflow.login()
# Initialize Roboflow client
rf = roboflow.Roboflow()
# Define your workspace and project details
WORKSPACE_ID = "your-workspace-id" # Replace with your actual Workspace ID
PROJECT_ID = "your-project-id" # Replace with your actual Project ID
VERSION = 1 # Replace with your desired dataset version number
MODEL_PATH = "path/to/your/runs/detect/train/" # Replace with the path to your YOLO11 training results directory
# Get project and version
project = rf.workspace(WORKSPACE_ID).project(PROJECT_ID)
dataset = project.version(VERSION)
# Upload model weights for deployment
# Ensure model_path points to the directory containing 'best.pt'
project.version(dataset.version).deploy(
model_type="yolov8", model_path=MODEL_PATH
) # Note: Use "yolov8" as model_type for YOLO11 compatibility in Roboflow deployment
print(f"Model from {MODEL_PATH} uploaded to Roboflow project {PROJECT_ID}, version {VERSION}.")
print("Deployment may take up to 30 minutes.")
Dans ce code, remplacez your-workspace-id
, your-project-id
, la fonction VERSION
nombre, et le MODEL_PATH
avec les valeurs spécifiques à votre compte Roboflow, à votre projet et au répertoire local des résultats d'entraînement. Assurez-vous que le MODEL_PATH
pointe correctement vers le répertoire contenant vos données entraînées best.pt
fichier de poids.
Lorsque vous exécutez le code ci-dessus, il vous sera demandé de vous authentifier (généralement via une clé API). Ensuite, votre modèle sera téléchargé et un point de terminaison API sera créé pour votre projet. Ce processus peut prendre jusqu'à 30 minutes.
Pour tester votre modèle et trouver les instructions de déploiement pour les SDK pris en charge, accédez à l'onglet « Deploy » dans la barre latérale de Roboflow. En haut de cette page, un widget apparaîtra vous permettant de tester votre modèle à l'aide de votre webcam ou en téléchargeant des images ou des vidéos.
Votre modèle téléchargé peut également être utilisé comme assistant d'étiquetage, suggérant des annotations sur de nouvelles images en fonction de son entraînement.
Comment évaluer les modèles YOLO11
Roboflow fournit des fonctionnalités pour évaluer les performances du modèle. La compréhension des métriques de performance est cruciale pour l'itération du modèle.
Après avoir téléchargé un modèle, accédez à l'outil d'évaluation du modèle via la page de votre modèle sur le tableau de bord Roboflow. Cliquez sur « Afficher l'évaluation détaillée ».
Cet outil affiche une matrice de confusion illustrant les performances du modèle et un tracé d'analyse vectorielle interactif utilisant les incorporations CLIP. Ces fonctionnalités aident à identifier les domaines à améliorer du modèle.
La fenêtre contextuelle de la matrice de confusion :
Passez le curseur sur les cellules pour voir les valeurs, et cliquez sur les cellules pour afficher les images correspondantes avec les prédictions du modèle et les données de vérité terrain.
Cliquez sur « Vector Analysis » pour obtenir un nuage de points visualisant la similarité des images basée sur les embeddings CLIP. Les images les plus proches sont sémantiquement similaires. Les points représentent les images, colorées du blanc (bonne performance) au rouge (mauvaise performance).
L'analyse vectorielle aide à :
- Identifier les clusters d'images.
- Identifier avec précision les clusters où le modèle est peu performant.
- Comprendre les points communs entre les images qui entraînent de mauvaises performances.
Ressources d'apprentissage
Explorez ces ressources pour en savoir plus sur l'utilisation de Roboflow avec Ultralytics YOLO11:
- Entraîner YOLO11 sur un ensemble de données personnalisé (Colab) : Un bloc-notes interactif Google Colab vous guidant à travers l'entraînement de YOLO11 sur vos données.
- Documentation YOLO11 : Découvrez l'entraînement, l'exportation et le déploiement des modèles YOLO11 dans le framework Ultralytics.
- Blog Ultralytics : Articles sur la vision par ordinateur, y compris les meilleures pratiques d'entraînement et d'annotation de YOLO11.
- Chaîne YouTube Ultralytics : Offre des guides vidéo approfondis sur des sujets de vision par ordinateur, de l'entraînement de modèles à l'étiquetage automatisé et au déploiement.
Présentation de projets
Commentaires d'utilisateurs combinant Ultralytics YOLO11 et Roboflow :
FAQ
Foire aux questions
Comment étiqueter des données pour les modèles YOLO11 à l’aide de Roboflow ?
Utilisez Roboflow Annotate. Créez un projet, téléchargez des images et utilisez les outils d'annotation (B
pour la boîtes englobantes, P
pour les polygones) ou l'assistant d'étiquetage basé sur SAM pour un étiquetage plus rapide. Des instructions détaillées sont disponibles dans le Section Télécharger, convertir et étiqueter les données.
Quels services Roboflow offre-t-il pour la collecte de données d'entraînement YOLO11 ?
Roboflow fournit Universe (accès à de nombreux datasets) et Collect (collecte automatisée d'images via webcam). Ceux-ci peuvent aider à acquérir les données d'entraînement nécessaires pour votre modèle YOLO11, en complément des stratégies décrites dans notre Guide de collecte de données.
Comment puis-je gérer et analyser mon ensemble de données YOLO11 en utilisant Roboflow ?
Utilisez les fonctionnalités de recherche, de marquage et de vérification de l'état des ensembles de données de Roboflow. La recherche permet de trouver des images par texte ou par balises, tandis que la vérification de l'état analyse la qualité de l'ensemble de données (équilibre des classes, tailles des images, etc.) afin d'orienter les améliorations avant l'entraînement. Consultez la section Gestion des ensembles de données pour plus de détails.
Comment exporter mon ensemble de données YOLO11 depuis Roboflow ?
Créez une version de l'ensemble de données dans Roboflow, appliquez le prétraitement et les augmentations souhaités, puis cliquez sur "Exporter l'ensemble de données" et sélectionnez le format YOLO11. Le processus est décrit dans la section Exporter les données. Ceci prépare vos données pour une utilisation avec les pipelines d'entraînement Ultralytics.
Comment puis-je intégrer et déployer des modèles YOLO11 avec Roboflow ?
Téléchargez vos pondérations YOLO11 entraînées sur Roboflow à l'aide du script python fourni. Cela crée un point de terminaison d'API déployable. Consultez la section Télécharger des pondérations personnalisées pour obtenir le script et les instructions. Explorez d'autres options de déploiement dans notre documentation.