Utiliser les augmentations d'Albumentations pour diversifier vos données

Abirami Vina

5 minutes de lecture

17 février 2025

Apprenez à utiliser les Albumentations pour les augmentations lors de l'entraînement personnalisé d'Ultralytics YOLO11 afin d'améliorer les performances du modèle avec diverses données d'entraînement.

Lors de l'élaboration d'une solution de vision par ordinateur, la collecte d'un ensemble diversifié d'images pour l'entraînement des modèles d'IA de vision peut constituer une partie cruciale du processus. Cela demande souvent beaucoup de temps et d'argent, et parfois, les images collectées ne sont pas assez variées pour que les modèles apprennent efficacement.

Par exemple, les modèles de vision artificielle comme Ultralytics YOLO11 peuvent être entraînés sur mesure sur des ensembles de données d'images pour diverses tâches de vision artificielle liées à différentes applications. La diversité des données est essentielle car elle aide le modèle à mieux se généraliser, ce qui lui permet de reconnaître des objets et des modèles dans un large éventail de scénarios du monde réel.

Si vous êtes confronté à un manque de diversité des données, les techniques d'augmentation des données d'image peuvent être une excellente solution. Des méthodes telles que la rotation, le retournement et l'ajustement de la luminosité peuvent contribuer à accroître la variété de votre ensemble de données, améliorant ainsi la capacité du modèle à gérer un plus large éventail de conditions.

C'est pourquoi Ultralytics propose une intégration pour l'augmentation des données d'images. En utilisant Albumentations, un outil populaire qui offre une collection de transformations, vous pouvez créer diverses données visuelles. Cette intégration simplifie le processus de formation de YOLO11 en augmentant automatiquement les images de formation, ce qui améliore les performances du modèle. 

Dans cet article, nous allons voir comment vous pouvez utiliser l'intégration d'Albumentations, ses avantages et son impact sur la formation au modèle.

Qu'est-ce que l'albumentation ?

Les modèles de vision par ordinateur peuvent apprendre à partir d'un large ensemble d'images de haute qualité pour reconnaître des objets dans différents environnements. La collecte de vastes ensembles de données à partir de sources réelles peut s'avérer lente, coûteuse et inefficace. Pour rationaliser cette tâche, vous pouvez utiliser l'augmentation des données d'image pour créer de nouvelles variations d'images existantes, ce qui permet aux modèles d'apprendre à partir de différents scénarios sans avoir à collecter davantage de données.

Plus précisément, vous pouvez tirer parti d'Albumentations, une bibliothèque open-source introduite en 2018 pour augmenter efficacement les données d'image. Elle prend en charge une variété d'opérations, des changements géométriques simples tels que les rotations et les retournements aux ajustements plus complexes tels que la luminosité, le contraste et l'ajout de bruit.

__wf_reserved_inherit
Fig. 1. Exemples de différents types d'augmentations de données d'images.

Principales caractéristiques des Albumentations

Albumentations est connu pour ses performances élevées, ce qui signifie qu'il peut traiter les images rapidement et efficacement. Construit sur des bibliothèques optimisées comme OpenCV et NumPy, il traite de grands ensembles de données avec un temps de traitement minimal, ce qui le rend idéal pour l'augmentation rapide des données pendant l'entraînement des modèles.

Voici d'autres caractéristiques clés des Albumentations :

  • Large gamme de transformations : Albumentations propose plus de 70 types d'augmentations. Ces variations permettent aux modèles d'apprendre à détecter des objets malgré les changements d'éclairage, d'angle ou d'arrière-plan.
  • Optimisé pour la vitesse : il utilise des techniques d'optimisation avancées telles que SIMD (Single Instruction, Multiple Data), qui traite plusieurs points de données à la fois afin d'accélérer l'augmentation des images et de traiter efficacement les grands ensembles de données.
  • Trois niveaux d'augmentation : Il améliore les données de trois manières. Par exemple, les augmentations au niveau des pixels ajustent la luminosité et la couleur sans modifier les objets. Par ailleurs, les augmentations au niveau spatial modifient le positionnement des objets tout en préservant les détails essentiels, et les augmentations au niveau du mixage mélangent des parties de différentes images pour créer de nouveaux échantillons.

Pourquoi utiliser l'intégration des Albumentations ?

Vous vous posez peut-être la question : il existe de nombreuses façons d'appliquer des augmentations à un ensemble de données, et vous pouvez même créer les vôtres à l'aide d'outils tels qu'OpenCV. Alors, pourquoi choisir une intégration qui supporte une bibliothèque comme Albumentations ?

La création manuelle d'augmentations avec des outils comme OpenCV peut prendre beaucoup de temps et nécessite une certaine expertise. Il peut également être difficile d'affiner les transformations pour obtenir les meilleurs résultats. L'intégration d'Albumentations facilite ce processus. Elle offre de nombreuses transformations prêtes à l'emploi qui peuvent vous faire gagner du temps et de l'énergie lors de la préparation de votre jeu de données.

Une autre raison de choisir l'intégration d'Albumentations est qu'elle fonctionne parfaitement avec le pipeline de formation de modèles Ultralytics. Il est ainsi beaucoup plus facile d'entraîner YOLO11 sur mesure, car les augmentations sont automatiquement appliquées pendant l'entraînement. Cela simplifie le processus et vous permet de vous concentrer sur l'amélioration de votre modèle plutôt que sur la préparation des données. 

Démarrer avec l'intégration des Albumentations

Il est intéressant de noter que l'utilisation des intégrations d'Albumentations pour entraîner YOLO11 est plus simple qu'il n'y paraît. Une fois les bonnes bibliothèques configurées, l'intégration applique automatiquement des augmentations de données d'image pendant l'entraînement. Elle aide le modèle à apprendre à partir de différentes variations d'images en utilisant le même ensemble de données.

Ensuite, nous allons voir comment installer et utiliser l'intégration d'Albumentations lors de la formation personnalisée de YOLO11.

Installation du package Ultralytics Python et des Albumentations

Avant d'appliquer des augmentations, le package Ultralytics Python et Albumentations doivent être installés. L'intégration a été conçue de manière à ce que les deux bibliothèques fonctionnent ensemble de manière transparente par défaut, de sorte que vous n'avez pas à vous soucier de configurations complexes.

L'ensemble du processus d'installation peut être réalisé en quelques minutes à l'aide d'une simple commande pip, qui est un outil de gestion de paquets pour l'installation de bibliothèques Python, comme le montre l'image ci-dessous. 

__wf_reserved_inherit
Fig. 2. Installation des Ultralytiques et des Albumentations.

Une fois Albumentations installé, le mode d'entraînement du modèle Ultralytics applique automatiquement des augmentations d'images pendant l'entraînement. Si Albumentations n'est pas installé, ces augmentations ne seront pas appliquées. Pour plus de détails, vous pouvez vous référer à la documentation officielle d'Ultralytics.

Former YOLO11 avec l'aide de l'intégration Albumentations

Comprenons mieux ce qui se passe sous le capot de l'intégration d'Albumentations. 

Voici un aperçu des augmentations appliquées lors de l'entraînement à YOLO11 :

  • Flou : cette transformation ajoute un léger flou à une image. Elle aide le modèle à détecter les objets même lorsqu'ils sont flous.
  • Flou médian : Il réduit le bruit aléatoire tout en préservant les contours des objets dans une image. Le modèle peut ainsi détecter plus facilement des objets dans des environnements complexes.
  • Niveaux de gris : En convertissant une image en noir et blanc, cette augmentation peut aider le modèle à se concentrer sur les formes et les textures plutôt que sur les couleurs.
  • CLAHE (Contrast limited adaptive histogram equalization) : Cette amélioration renforce le contraste des images, en particulier dans les zones trop sombres ou difficiles à voir, par exemple dans des conditions de faible luminosité ou de brume. Les objets situés dans ces zones sont ainsi plus clairs et plus faciles à identifier pour le modèle.
__wf_reserved_inherit
Fig. 3. Exemple d'augmentation des niveaux de gris appliquée à l'image d'un chat.

Applications de YOLO11 et de l'intégration des Albumentations

Si vous entraînez YOLO11 pour une application spécifique, l'intégration d'Albumentations peut aider à améliorer les performances du modèle en s'adaptant à différentes conditions. Discutons de quelques applications réelles et des défis que cette intégration peut résoudre.

Améliorer l'imagerie médicale

L'IA de vision dans le domaine de la santé aide les médecins à analyser les images médicales avec plus de précision afin de faciliter les diagnostics et d'améliorer les soins aux patients. En fait, environ un cinquième des organismes de soins de santé utilisent déjà des solutions d'IA. 

Cependant, la création de ces solutions de vision par ordinateur s'accompagne de son propre lot de défis. Les scanners médicaux peuvent varier considérablement d'un hôpital à l'autre, sous l'influence de facteurs tels que les équipements, les réglages et même l'expérience des techniciens. Les variations de luminosité, de contraste et d'exposition peuvent affecter la cohérence et la précision des modèles de vision artificielle, ce qui les empêche de fonctionner de manière fiable dans différents environnements.

C'est là que l'intégration d'outils comme Albumentations devient essentielle. En générant plusieurs versions augmentées du même scan, Albumentations permet au modèle d'apprendre à partir d'une variété de qualités d'images. Le modèle devient ainsi plus robuste, ce qui lui permet de détecter les maladies avec précision sur des images de haute et de basse qualité. 

__wf_reserved_inherit
Fig. 4. Images radiographiques augmentées.

Renforcement de la sécurité et de la surveillance

Une autre application intéressante de l'IA de vision est la sécurité et la surveillance. La détection d'objets en temps réel peut aider les équipes de sécurité à identifier rapidement les menaces potentielles. 

L'une des principales préoccupations liées à cette application est que les caméras de sécurité enregistrent des séquences dans diverses conditions d'éclairage tout au long de la journée, et que ces conditions peuvent avoir une incidence considérable sur la manière dont un modèle comprend ces images. Des facteurs tels que la faible luminosité, l'éblouissement ou la mauvaise visibilité peuvent empêcher les modèles de vision artificielle de détecter des objets ou de reconnaître des menaces potentielles de manière cohérente.

L'intégration d'Albumentations permet d'appliquer des transformations pour imiter différentes conditions d'éclairage. Cela permet au modèle d'apprendre à détecter des objets dans des environnements lumineux ou peu éclairés, ce qui le rend plus fiable et améliore les temps de réponse dans des conditions difficiles.

Redéfinir les flux de travail dans le commerce de détail et l'expérience client

Un déversement dans une allée de supermarché, un chien qui court dans le magasin ou un enfant qui renverse un présentoir ne sont que quelques exemples d'événements quotidiens qui peuvent constituer des cas limites pour l'IA de vision dans les environnements de vente au détail . La vision par ordinateur est de plus en plus utilisée pour améliorer l'expérience client en suivant le comportement des acheteurs, en surveillant le trafic piétonnier et en identifiant les produits dans les rayons. Toutefois, ces situations du monde réel peuvent être difficiles à comprendre et à traiter avec précision par les systèmes d'IA.

Bien que tous les scénarios ne puissent pas être représentés dans un ensemble de données de vision par ordinateur, l'intégration d'Albumentations permet d'augmenter les données afin de couvrir de nombreuses situations possibles, telles qu'un éclairage inattendu, des angles inhabituels ou des obstructions. Les modèles de vision artificielle s'adaptent ainsi à diverses conditions, améliorant leur capacité à traiter les cas particuliers et à faire des prédictions précises dans les environnements dynamiques de la vente au détail.

Principaux enseignements

La collecte de diverses données réelles pour l'entraînement des modèles peut être compliquée, mais Albumentations facilite la tâche en créant des variations d'images qui aident les modèles à s'adapter à des conditions différentes. 

L'intégration d'Albumentations soutenue par Ultralytics simplifie le processus d'application de ces augmentations lors de l'entraînement personnalisé de YOLO11. Il en résulte une meilleure qualité des ensembles de données, ce qui profite à un large éventail d'industries en produisant des modèles Vision AI plus précis et plus fiables.

Rejoignez notre communauté et explorez notre dépôt GitHub pour en savoir plus sur l'IA, et consultez nos options de licence pour lancer vos projets Vision AI. Vous êtes intéressé par des innovations telles que l 'IA dans la fabrication ou la vision par ordinateur dans la conduite autonome? Visitez nos pages de solutions pour en savoir plus. 

Construisons ensemble le futur
de l'IA !

Commencez votre voyage avec l'avenir de l'apprentissage automatique

Commencer gratuitement
Lien copié dans le presse-papiers