Créez des applications de drones alimentées par l'IA avec Ultralytics YOLO11

Abirami Vina

4 min lire

18 avril 2025

Découvrez comment créer des applications pour drones alimentées par l'IA avec Ultralytics YOLO11, permettant la détection d'objets en temps réel et les tâches de vision par ordinateur basées sur les drones.

Les achats en magasin et les achats en ligne peuvent sembler similaires, mais ils reposent sur une logistique différente. Les magasins ont besoin de réapprovisionner leurs rayons, tandis que les commandes en ligne dépendent des livraisons à domicile. Grâce aux progrès technologiques, les deux expériences d'achat sont en train d'être remodelées en parallèle.

Par exemple, un changement majeur est en train de se produire dans les livraisons. Les drones dotés d'IA modifient la façon dont les produits arrivent chez nous. Ces drones intelligents devraient assurer environ 808 millions de livraisons au cours de la prochaine décennie, faisant du ciel le nouvel itinéraire de livraison pour le commerce de tous les jours.

Les drones de livraison utilisent l'intelligence artificielle (IA) et la vision par ordinateur, un sous-domaine de l'IA utilisé pour analyser les données visuelles, pour naviguer et manœuvrer autour des obstacles. Les modèles de vision par ordinateur comme Ultralytics YOLO11 peuvent aider les drones à détecter et à suivre des objets en temps réel, ce qui leur permet de mieux comprendre leur environnement et d'interagir avec lui.

Fig 1. Un drone de livraison emmène un colis à sa destination.

Des entreprises comme Meituan et DJI intègrent déjà la vision artificielle dans leurs drones. En fait, l'adoption rapide des drones dans diverses industries a fait grimper le marché des drones IA à 206,9 milliards de dollars d'ici 2031. 

Dans cet article, nous allons examiner de plus près comment les modèles de vision par ordinateur comme Ultralytics YOLO11 peuvent être utilisés dans des applications basées sur les drones, comme les livraisons par drone. Nous présenterons un exemple qui montrera comment ces technologies peuvent être développées et testées avant d'être utilisées dans des scénarios réels.

Utilisation de Ultralytics YOLO11 sur des drones pour détecter des maisons

Un élément clé des drones de livraison est leur capacité à détecter les maisons pendant qu'ils naviguent. Pour recréer cette capacité et comprendre comment elle fonctionne, nous allons entraîner un modèle de vision par ordinateur capable d'identifier les maisons dans les images capturées par un drone aérien. Pour ce faire, nous allons entraîner YOLO11 sur mesure, ce qui implique d'affiner un modèle YOLO11 pré-entraîné pour reconnaître et détecter les maisons à l'aide d'exemples étiquetés.

Pour ce faire, nous avons besoin de données vidéo de haute qualité provenant d'un drone. Il est intéressant de noter que même sans accès à un véritable drone, il est possible de générer des images aériennes réalistes. Voyons comment.

Création d'une prise de vue artificielle par drone à l'aide de Google Earth Studio

Google Earth Studio est un outil d'animation en ligne qui permet aux utilisateurs de créer des contenus fixes et animés à partir des images satellite et 3D de Google Earth. Nous pouvons l'utiliser pour créer des séquences aériennes réalistes.

La première étape consiste à ouvrir Google Earth Studio et à créer un projet, comme indiqué ci-dessous. 

Vous aurez besoin d'un compte Google pour vous connecter.

Fig. 2. Création d'un projet sur Google Earth Studio.

Une fois que vous vous êtes connecté, vous pouvez choisir un lieu pour votre vidéo de drone artificiel. La barre de recherche située dans le coin supérieur gauche de la page vous permet de rechercher des lieux. Pour ce tutoriel, nous choisirons le Canada. De plus, comme nous allons entraîner un modèle à détecter les maisons, notre vidéo de drone doit présenter une vue aérienne des maisons.

Fig. 3. Sélection d'un emplacement à l'aide de Google Earth Studio.

Ensuite, nous pouvons définir la première et la dernière image temporelle pour capturer le mouvement de la prise de vue artificielle du drone. Une fois que vous avez choisi l'emplacement de départ de la prise de vue du drone, définissez la première image à l'aide des losanges bleus, comme illustré ci-dessous. 

Fig. 4. Définition du premier cadre à l'aide des losanges bleus.

Ensuite, nous pouvons choisir la dernière image pour déterminer la destination du drone. Cela nous aidera à créer un effet de mouvement pour la séquence du drone. Pour ce faire, faites glisser la barre (en surbrillance ci-dessous) vers la droite jusqu'à un moment précis afin de créer un effet de mouvement pour la prise de vue du drone. Une fois encore, utilisez les losanges bleus pour définir le dernier point.

Fig. 5. Réglage de la dernière image en déplaçant la barre.

Enfin, vous pouvez enregistrer ce projet et le rendre en cliquant sur le bouton rouge "Render" dans le coin supérieur droit de la page. Vous obtiendrez ainsi la sortie vidéo finale de la prise de vue du drone, ce qui vous permettra de créer des séquences vidéo artificielles à partir d'un drone.

Fig. 6. Rendu de la vidéo de sortie finale.

Comment étiqueter les données du drone ?

Maintenant que nous avons créé des séquences vidéo de drones artificiels, l'étape suivante consiste à étiqueter ou à annoter les maisons qui s'y trouvent. Nous devrons également séparer les différentes images de la vidéo. 

Pour commencer, nous allons installer LabelImg. LabelImg est un outil open-source d'étiquetage d'images. Vous pouvez l'installer directement depuis le terminal en utilisant l'installateur de paquets pip en lançant la commande suivante : "pip install labelImg".

Après l'installation, vous pouvez lancer l'outil à l'aide de la commande "labelImg" dans votre terminal ou à l'invite de commande. Cela vous amènera à la page ci-dessous.

Fig. 7. L'interface de l'outil LabelImg.

En attendant, nous pouvons utiliser un convertisseur vidéo-image en ligne ou un outil appelé FFmpeg pour diviser la vidéo en images. FFmpeg est un ensemble de bibliothèques et d'outils permettant de traiter des contenus multimédias tels que l'audio, la vidéo, les sous-titres et les métadonnées associées. 

Vous pouvez utiliser la commande suivante pour séparer chaque image de la vidéo du drone :

Une fois que nous avons séparé les images du film de drone, nous pouvons commencer à étiqueter les objets (maisons) qu'elles contiennent. En accédant au dossier d'images à l'aide de l'outil LabelImg, nous pouvons étiqueter les objets de chaque image. Veillez à sauvegarder et à vérifier chaque image étiquetée. Après avoir annoté les images, nous pouvons maintenant passer à l'entraînement de YOLO11 en utilisant ces données.

Fig. 8. Exemple d'enregistrement d'images annotées.

Flux de travail pour l'entraînement au modèle YOLO11

Avant de commencer à former YOLO11, nous allons organiser nos images et nos étiquettes. Commencez par créer deux dossiers : l'un nommé "train" et l'autre "valid". Répartissez vos images dans ces dossiers. Dans chacun d'eux, créez des sous-dossiers distincts pour les images et les fichiers d'étiquettes correspondants (format texte), comme indiqué ci-dessous.

Fig. 9. Exemple de création de dossiers d'images et d'étiquettes.

Ensuite, nous pouvons commencer à former le modèle YOLO11 de la manière suivante :

  • Étape 1 : Installer le paquetage Python Ultralytics. Vous pouvez le faire en exécutant la commande "pip install ultralytics" dans votre terminal. Si vous rencontrez des problèmes d'installation, consultez notre guide de dépannage pour obtenir des conseils et des astuces qui vous aideront à les résoudre.
  • Étape 2 : Après avoir installé avec succès le paquet, créez un fichier portant le nom "data.yaml". Il s'agit d'un fichier de configuration crucial pour l'entraînement du modèle. Dans le fichier data.yaml, incluez les informations suivantes : le chemin d'accès à votre ensemble de données d'apprentissage, le chemin d'accès à votre ensemble de données de validation, le nombre de classes (nc) et une liste de noms de classes (names), comme illustré ci-dessous.
Fig. 10. Exemple de fichier data.yaml.

  • Étape 3 : Une fois que le fichier 'data.yaml' est configuré, vous pouvez commencer à entraîner votre modèle en utilisant le code Python suivant. Ce code charge le modèle YOLO11 pré-entraîné et l'entraîne selon vos configurations.
from ultralytics import YOLO

# Load a YOLO11 model
model = YOLO("yolo11n.pt")  # choose your model, e.g., YOLO11 nano

# Train the model with your data and settings
model.train(data="data.yaml", epochs=100, imgsz=640)
  • Étape 4 : Une fois l'entraînement terminé, vous devriez obtenir un résultat similaire à celui illustré ci-dessous. Cela signifie que vous avez réussi à entraîner votre modèle YOLO11 pour les applications basées sur les drones.
Fig. 11. La sortie affichée après l'apprentissage du modèle.

Exécuter des prédictions en utilisant Ultralytics YOLO11 sur des drones

Le modèle YOLO11 formé peut maintenant être utilisé pour faire des prédictions par le biais d'un processus appelé inférence. L'inférence consiste à utiliser un modèle pour analyser de nouvelles données inédites sur la base de ce qu'il a appris au cours de la formation. Dans ce cas, le modèle peut être utilisé pour trouver et étiqueter des objets spécifiques, tels que des maisons, dans des images ou des vidéos en dessinant des boîtes de délimitation autour d'eux.

Pour effectuer une prédiction, vous pouvez utiliser le modèle YOLO11 entraîné sur une vidéo d'entrée à l'aide du code Python suivant. Dans cet exemple, nous utiliserons la même vidéo de drone artificiel que celle utilisée pour l'entraînement, mais vous pouvez utiliser n'importe quel autre fichier vidéo si vous le souhaitez.

# Import library
from ultralytics import YOLO

# Load the YOLO model
model = YOLO("best.pt")  # Choose your custom-trained model

# Predict the results from the model
results = model.predict(source="path/to/original/video.mp4", show=True, save=True)

Après l'exécution de ce code, le fichier vidéo de sortie contenant les prédictions et les boîtes englobantes est enregistré.

Fig. 12. Une image du fichier vidéo de sortie. 

Intégration d'Ultralytics YOLO11 sur des drones pour diverses applications

La détection des maisons pour les colis livrés par drone n'est qu'un exemple de l'application de la vision par ordinateur et de YOLO11. Voici d'autres utilisations concrètes de la vision par ordinateur, de YOLO11 et des drones :

  • Surveillance et sécurité : Les drones IA peuvent être utilisés pour surveiller de vastes zones en temps réel. Ils peuvent détecter les intrusions, suivre les activités suspectes et renforcer la sécurité aux frontières nationales ainsi que lors de grands événements publics. 
  • Intervention en cas de catastrophe et recherche et sauvetage : Équipés de caméras thermiques et de systèmes de détection d'objets, les drones peuvent aider à localiser les survivants dans les zones sinistrées. Ils peuvent également évaluer les dégâts et livrer des fournitures d'urgence.
  • Agriculture et agriculture de précision : Les drones intégrés à la vision artificielle peuvent être utilisés pour analyser la santé des cultures et détecter les maladies, ce qui permet aux agriculteurs d'augmenter les rendements tout en réduisant les coûts. 
  • Cartographie et analyse géospatiale : En collectant des cartes 3D à haute résolution, les drones d'IA peuvent contribuer à la planification urbaine et à l'arpentage. Ils fournissent des évaluations de terrain plus rapides et plus précises que les méthodes traditionnelles. 

Principaux enseignements

Les drones IA alimentés par la vision artificielle sont en train de changer de nombreuses industries, de la livraison de colis à l'aide en cas d'urgence en passant par l'agriculture. Dans ce guide, nous avons créé une vidéo de drone artificiel, étiqueté les objets qu'elle contient, entraîné YOLO11 et l'avons utilisé pour détecter des maisons.

L'application de la détection d'objets aux séquences filmées par les drones rend ces derniers plus intelligents, leur permettant de reconnaître et de suivre automatiquement les objets en temps réel. Au fur et à mesure que la technologie s'améliore, les drones pilotés par l'IA joueront probablement un rôle encore plus important dans l'accélération des livraisons, l'amélioration de la sécurité et l'aide aux interventions en cas de catastrophe.

Rejoignez notre communauté et explorez notre dépôt GitHub pour en savoir plus sur Vision AI, et consultez nos options de licence pour lancer vos projets de vision par ordinateur. Vous êtes intéressé par des innovations telles que l 'IA dans la fabrication ou la vision par ordinateur dans l' industrie automobile? 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