Intégration de Roboflow
Roboflow fournit une suite d'outils conçus pour construire et déployer des modèles de vision par ordinateur. Vous pouvez intégrer Roboflow à différentes étapes de votre pipeline de développement en utilisant ses 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 avec les outils Ultralytics .
Licences
Ultralytics propose deux options de licence pour répondre aux différents cas d'utilisation :
- LicenceAGPL-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. Voir le fichier LICENSE pour plus de détails.
- Licence d'entreprise: Conçue pour un usage commercial, cette licence permet l'intégration transparente du logiciel Ultralytics et des modèles d'IA dans des produits et services commerciaux. Si votre scénario implique des applications commerciales, veuillez contacter Ultralytics Licensing.
Pour plus de détails, voir la page Licences d'Ultralytics .
Ce guide montre comment trouver, étiqueter et organiser les données pour former un logiciel de formation personnalisé. Ultralytics YOLO11 à l'aide de Roboflow.
- Collecte de données pour l'entraînement d'un modèle personnalisé YOLO11
- Téléchargement, conversion et étiquetage des données pour le format YOLO11
- Prétraitement et enrichissement des données pour la robustesse du modèle
- Gestion des ensembles de données pour YOLO11
- Exportation des données dans plus de 40 formats pour la formation aux modèles
- Télécharger les pondérations personnalisées du modèle YOLO11 pour les tester et les déployer
- Comment évaluer les modèles YOLO11
- Ressources pédagogiques
- Vitrine des projets
- FAQ
Collecte de données pour l'entraînement d'un modèle personnalisé YOLO11
Roboflow propose deux services principaux pour aider à la collecte de données pour lesmodèlesYOLO d Ultralytics : Univers et Collecte. Pour des informations plus générales sur les stratégies de collecte de données, reportez-vous à notre Guide de collecte et d'annotation des données.
Roboflow Univers
Roboflow Universe est un référentiel en ligne présentant un grand nombre d'ensembles de données de vision.
Avec un compte Roboflow , vous pouvez exporter des ensembles de données disponibles sur Universe. Pour exporter un ensemble de données, utilisez le bouton "Télécharger cet ensemble de données" sur la page de l'ensemble de données concerné.
Pour une compatibilité avec Ultralytics YOLO11sélectionnezYOLO11" 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 des 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 les images vous-même, 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 de texte ou d'image pour spécifier les données à collecter, ce qui permet de ne capturer que les images nécessaires à votre modèle de vision.
Téléchargement, conversion et étiquetage des données pour le format YOLO11
Roboflow Annotate est un outil en ligne permettant d'étiqueter des images pour diverses tâches de vision par ordinateur, notamment la détection, la classification et la segmentation d' objets.
Pour étiqueter les données d'un Ultralytics YOLO (qui prend en charge la détection, la segmentation des instances, la classification, l'estimation de la pose et l'OBB), commencez par créer un projet dans Roboflow.
Ensuite, téléchargez vos images et toutes les annotations existantes provenant d'autres outils dans Roboflow.
Après le téléchargement, vous serez dirigé vers la page Annoter. Sélectionnez le lot d'images téléchargées et cliquez sur "Commencer à annoter" pour commencer l'étiquetage.
Outils d'annotation
- Annotation de la boîte englobante: Presse
B
ou cliquez sur l'icône de la boîte. Cliquez et faites glisser pour créer le boîte de délimitation. Une fenêtre pop-up vous invite à sélectionner une classe pour l'annotation.
- Annotation des polygones: Utilisé pour segmentation des instances. Appuyez sur la touche
P
ou cliquez sur l'icône du polygone. Cliquez sur des points autour de l'objet pour dessiner le polygone.
Assistant d'étiquetageSAM intégrationSAM
Roboflow intègre un assistant d'étiquetage basé sur le modèleSAM(Segment Anything Model) afin d'accélérer potentiellement l'annotation.
Pour utiliser l'assistant d'étiquetage, cliquez sur l'icône du curseur dans la barre latérale. SAM sera activé pour votre projet.
En survolant un objet, 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.
Balisage
Vous pouvez ajouter des balises aux images en utilisant le panneau des 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 jeux de données contenant des images avec des balises particulières.
Aide à l'étiquetage (basé 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 les données que vous avez formées. YOLO11 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 Label Assist :
Lorsque vous ouvrez de nouvelles images pour les annoter, 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 ensembles de données de vision par ordinateur.
Recherche de données
Utilisez la recherche d'ensembles de données pour trouver des images sur la base de descriptions textuelles sémantiques (par exemple, "trouver toutes les images contenant des personnes") ou d'étiquettes/tags spécifiques. Pour accéder à cette fonction, cliquez sur "Dataset" dans la barre latérale et utilisez la barre de recherche et les filtres.
Par exemple, la recherche d'images contenant des personnes :
Le sélecteur "Tags" permet d'affiner les recherches à l'aide de tags :
Bilan de santé
Avant la formation, utilisez le bilan de santé de Roboflow pour obtenir des informations sur votre ensemble de données et identifier les améliorations potentielles. Accédez-y via le lien "Health Check" de la barre latérale. Il fournit des statistiques sur la taille des images, l'équilibre des classes, les cartes thermiques des annotations, etc.
Le bilan de santé peut suggérer des modifications pour améliorer les performances, par exemple en corrigeant les déséquilibres entre les classes identifiés dans la fonction d'équilibre des classes. La compréhension de l'état de l'ensemble des données est cruciale pour l'efficacité de l'apprentissage des modèles.
Prétraitement et enrichissement des données pour la robustesse du modèle
Pour exporter vos données, vous devez créer une version du jeu de données, qui est un instantané de votre jeu 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 afin d'améliorer potentiellement 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 de manière significative la généralisation du modèle, un concept clé abordé dans notre guide de conseils pour la formation des modèles.
Exportation des données dans plus de 40 formats pour la formation aux modèles
Une fois que la version de votre jeu de données est générée, vous pouvez l'exporter dans différents formats adaptés à l'entraînement des modèles. Cliquez sur le bouton "Export Dataset" sur la page de la version.
Sélectionnez le formatYOLO11" pour la compatibilité avec les pipelines de formation Ultralytics . Vous êtes maintenant prêt à former votre YOLO11 personnalisé. Reportez-vous à la documentation du mode Train d'Ultralytics pour obtenir des instructions détaillées sur le lancement de l'entraînement avec votre jeu de données exporté.
Télécharger les pondérations personnalisées du modèle YOLO11 pour les tester et les déployer
Roboflow propose une API évolutive pour les modèles déployés et des SDK compatibles avec des appareils tels que NVIDIA Jetson, Luxonis OAK, Raspberry Pi et des systèmes GPU. Explorez les différentes options de déploiement de modèles dans nos guides.
Vous pouvez déployer les modèles YOLO11 en téléchargeant leurs poids dans Roboflow à l'aide d'une simple commande Python Python.
Créez un nouveau fichier Python et ajoutez 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
, le VERSION
et le numéro MODEL_PATH
avec les valeurs propres à votre compte Roboflow , à votre projet et à votre répertoire local de résultats de formation. Veillez à ce que les MODEL_PATH
pointe correctement vers le répertoire contenant votre formation best.pt
fichier de poids.
Lorsque vous exécutez le code ci-dessus, il vous sera demandé de vous authentifier (généralement au moyen d'une clé API). Ensuite, votre modèle sera téléchargé et un point d'accès à l'API sera créé pour votre projet. Ce processus peut prendre jusqu'à 30 minutes.
Pour tester votre modèle et trouver des instructions de déploiement pour les SDK pris en charge, allez à l'onglet "Déployer" dans la barre latérale de Roboflow . En haut de cette page, un widget apparaîtra pour vous permettre de tester votre modèle en utilisant votre webcam ou en téléchargeant des images ou des vidéos.
Votre modèle téléchargé peut également être utilisé comme un assistant d'étiquetage, suggérant des annotations sur de nouvelles images sur la base de sa formation.
Comment évaluer les modèles YOLO11
Roboflow propose des fonctionnalités permettant d'évaluer les performances des modèles. La compréhension des mesures de performance est cruciale pour l'itération des modèles.
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 de Roboflow . Cliquez sur "Voir l'évaluation détaillée".
Cet outil affiche une matrice de confusion illustrant la performance du modèle et un graphique d'analyse vectorielle interactif utilisant les encastrements CLIP. Ces fonctionnalités permettent d'identifier les domaines dans lesquels le modèle peut être amélioré.
La matrice de confusion apparaît :
Survolez les cellules pour voir les valeurs, et cliquez sur les cellules pour voir les images correspondantes avec les prédictions du modèle et les données de la réalité du terrain.
Cliquez sur "Analyse vectorielle" pour obtenir un diagramme de dispersion permettant de visualiser la similarité des images sur la base de l'intégration CLIP. Les images les plus proches les unes des autres sont sémantiquement similaires. Les points représentent des images, colorées de blanc (bonne performance) à rouge (mauvaise performance).
L'analyse vectorielle est utile :
- Identifier les groupes d'images.
- Identifier les groupes où le modèle n'est pas performant.
- Comprendre les points communs entre les images à l'origine des mauvaises performances.
Ressources pédagogiques
Explorez ces ressources pour en savoir plus sur l'utilisation de Roboflow avec Ultralytics YOLO11:
- Entraîner YOLO11 sur un jeu de données personnalisé (Colab): Un carnet de notes interactif Google Colab vous guidant dans l'entraînement de YOLO11 sur vos données.
- YOLO11 Documentation: Apprenez à former, exporter et déployer des modèles YOLO11 dans le cadre d'Ultralytics .
- BlogueUltralytics : Présente des articles sur la vision artificielle, notamment sur les meilleures pratiques en matière de formation et d'annotation dans le cadre deYOLO11 .
- Chaîne YouTube d'Ultralytics : Propose des guides vidéo approfondis sur des sujets liés à la vision par ordinateur, de la formation des modèles à l'étiquetage et au déploiement automatisés.
Vitrine des projets
Retour d'expérience d'utilisateurs combinant Ultralytics YOLO11 et Roboflow:
FAQ
Questions fréquemment posées
Comment étiqueter les données pour les modèles YOLO11 en utilisant Roboflow?
Utilisez Roboflow Annotate. Créez un projet, téléchargez des images et utilisez les outils d'annotation (B
pour boîtes de délimitation, P
pour les polygones) ou l'assistant d'étiquetage SAM pour un étiquetage plus rapide. Les étapes détaillées sont disponibles dans le Télécharger, convertir et étiqueter les données.
Quels sont les services proposés par Roboflow pour la collecte des données relatives à la formation sur YOLO11 ?
Roboflow propose Universe (accès à de nombreux ensembles de données) et Collect (collecte automatisée d'images via une webcam). Ces outils peuvent vous aider à acquérir les données d'entraînement nécessaires pour votre modèle YOLO11 , en complétant les stratégies décrites dans notre Guide de collecte de données.
Comment puis-je gérer et analyser mon jeu de données YOLO11 à l'aide de Roboflow?
Utilisez les fonctions de recherche, de marquage et de bilan de santé des ensembles de données de Roboflow. La recherche permet de trouver des images par texte ou par étiquette, tandis que le bilan de santé analyse la qualité de l'ensemble de données (équilibre des classes, taille des images, etc.) afin de guider les améliorations avant la formation. Voir la section Gestion des ensembles de données pour plus de détails.
Comment exporter mon jeu de données YOLO11 à partir de Roboflow?
Créez une version du jeu de données dans Roboflow, appliquez les prétraitements et augmentations souhaités, puis cliquez sur "Exporter le jeu de données" et sélectionnez le format YOLO11 . Le processus est décrit dans la section Exportation de données. Cela prépare vos données à être utilisées avec lespipelines de formation Ultralytics .
Comment puis-je intégrer et déployer les modèles YOLO11 avec Roboflow?
Téléchargez vos poids YOLO11 entraînés vers Roboflow à l'aide du script Python fourni. Cela crée un point d'extrémité API déployable. Reportez-vous à la section Télécharger des poids personnalisés pour obtenir le script et les instructions. Explorez d'autres options de déploiement dans notre documentation.