Guide d'utilisation du projet open-source YOLOv5

Le projet YOLOv5, développé par Ultralytics, est une soultion avancée et performante pour la détection d'objets en temps réel. Basé sur le framework PyTorch, il vise à offrir une approche rapide, précise et facile à intégrer pour diverses tâches de vision par ordinateur, y compris la détection d'objets, la segmentation d'instances et la classification d'images. Sa nature open-source et sa forte communauté garantissent un accès facile à sa documentation et à son support.

Démarrage rapide

Prérequis système

Pour commencer, assurez-vous que votre environnement Python est configuré avec les versions suivantes :

  • Python >= 3.8
  • PyTorch >= 1.7

Vous pouvez installer PyTorch via pip :

pip install torch torchvision

Clonage du dépôt

Clonez le référentiel YOLOv5 depuis GitHub sur votre machine locale :

git clone https://github.com/Tony0726/yolov5.git
cd yolov5

Installation des dépendances

Installez toutes les bibliothèques nécessaires au bon fonctionnement de YOLOv5 :

pip install -r requirements.txt

Exemple d'utilisation avec un modèle pré-entraîné

Voici comment effectuer une détection d'objets en utilisant un modèle pré-entraîné directement via PyTorch Hub :

import torch

# Chargement du modèle pré-entraîné (yolov5s est la version la plus petite et rapide)
detector = torch.hub.load('ultralytics/yolov5', 'yolov5s')

# Spécification de l'image source (peut être une URL ou un chemin local)
image_source = 'https://ultralytics.com/images/zidane.jpg'

# Exécution de l'inférence sur l'image
detection_results = detector(image_source)

# Affichage des résultats de la détection (boîtes englobantes, labels, scores)
detection_results.show()

Cas d'application et bonnes pratiques

Détection d'objets

YOLOv5 excelle dans la détection d'objets, trouvant des applications dans des domaines tels que les véhicules autonomes, la surveillance de sécurité et l'inspection industrielle. Pour exécuter la détection en temps réel à partir d'une webcam, utilisez la commande suivante :

python detect.py --source 0

Segmentation d'instances

Le modèle supporte également la segmentation d'instences, utile pour des tâches comme l'analyse d'images médicales ou la détection dans l'agriculture. Pour effectuer une segmentation, vous pouvez utiliser :

python segment/predict.py --weights yolov5s-seg.pt --source data/images/bus.jpg

Classification d'images

YOLOv5 peut être appliqué à la classification d'images, par exemple pour la reconnaissance d'images ou l'analyse de sentiments. Un exemple de script de classification est :

python classify/predict.py --weights yolov5s-cls.pt --source data/images/bus.jpg

Projets de l'écosystème

Roboflow

Roboflow est une plateforme spécialisée dans l'annotation de données et la gestion de datasets. Elle s'intègre facilement avec YOLOv5, facilitant la création et l'entraînement de modèles personnalisés.

ClearML

ClearML est un outil open-source pour la gestion d'expériences d'apprentissage automatique. Il permet de suivre et d'enregistrer les processus d'entraînement et d'inférence de YOLOv5.

Comet

Comet est une plateforme de visualisation dédiée à l'entraînement et au déploiement de modèles d'apprentissage automatique. Elle offre des fonctionnalités de suivi d'expériences et de gestion de modèles pour YOLOv5.

L'intégration avec ces outils de l'écosystème permet aux utilisateurs de YOLOv5 d'optimiser leurs flux de travail pour l'entraînement, la validation et le déploiement de modèles, améliorant ainsi la valeur applicative de leurs projets.

Étiquettes: YOLOv5 PyTorch détection d'objets segmentation d'instances classification d'images

Publié le 3 juillet à 02h57