Comptage d’objets avec Ultralytics YOLO26#
Qu’est-ce que le comptage d’objets ?#
Le comptage d’objets avec Ultralytics YOLO26 consiste à identifier et compter avec précision des objets spécifiques dans des vidéos et des flux de caméras. YOLO26 excelle dans les applications en temps réel en fournissant un comptage d’objets efficace et précis dans divers scénarios, tels que l’analyse de foule et la vidéosurveillance, grâce à ses algorithmes de pointe et à ses capacités d’apprentissage profond.
Watch: How to Perform Real-Time Object Counting with Ultralytics YOLO26 🚀
Avantages du comptage d’objets#
- Optimisation des ressources : Le comptage d’objets facilite la gestion efficace des ressources en fournissant des décomptes précis et en optimisant l’allocation des ressources dans des applications telles que la gestion des stocks.
- Sécurité renforcée : Le comptage d’objets renforce la sécurité et la surveillance en suivant et en comptant précisément les entités, ce qui contribue à la détection proactive des menaces.
- Prise de décision éclairée : Le comptage d’objets fournit des informations précieuses pour la prise de décision et l’optimisation des processus dans le commerce de détail, la gestion du trafic et divers autres domaines.
Applications concrètes#
| Logistique | Aquaculture |
|---|---|
![]() | ![]() |
| Comptage de colis sur un tapis roulant avec Ultralytics YOLO26 | Comptage de poissons en mer avec Ultralytics YOLO26 |
Compter des objets avec YOLO26#
Définis une region — deux points pour une ligne ou au moins trois pour un polygone — et transmets-la à la solution ObjectCounter. Le compteur suit chaque objet d’une image à l’autre et totalise les décomptes ENTRÉE/SORTIE lorsque les objets suivis franchissent la ligne ou traversent la région, puis renvoie une image annotée que tu peux écrire dans une vidéo de sortie.
# Run a counting example
yolo solutions count show=True
# Pass a source video
yolo solutions count source="path/to/video.mp4"
# Pass region coordinates
yolo solutions count region="[(20, 400), (1080, 400), (1080, 360), (20, 360)]"L’argument region accepte soit deux points (pour une ligne), soit un polygone composé d’au moins trois points. Définis les coordonnées dans l’ordre dans lequel elles doivent être reliées afin que le compteur sache exactement où ont lieu les entrées et les sorties.
Arguments de ObjectCounter#
Voici un tableau présentant les arguments de ObjectCounter :
| Argument | Type | Valeur par défaut | Description |
|---|---|---|---|
model | str | None | Chemin vers un fichier de modèle Ultralytics YOLO. |
show_in | bool | True | Indicateur contrôlant l'affichage ou non des comptages entrants sur le flux vidéo. |
show_out | bool | True | Indicateur contrôlant l'affichage ou non des comptages sortants sur le flux vidéo. |
region | list ou dict | None | Points définissant la région d'intérêt, soit une liste de tuples (x, y), soit un dictionnaire associant les noms des régions à des listes de points pour plusieurs régions (RegionCounter uniquement). Lorsque None, les solutions qui nécessitent une région utilisent une région par défaut prédéfinie. |
line_width | int | 2 | Épaisseur des lignes des boîtes, des points clés et des comptages dessinés par la solution. |
verbose | bool | True | Active le journal par image de la solution, qui indique la forme d'entrée, les comptages par classe et la vitesse de traitement. L'appel de suivi lui-même est toujours silencieux. |
La solution ObjectCounter permet d’utiliser plusieurs arguments track :
| Argument | Type | Valeur par défaut | Description |
|---|---|---|---|
tracker | str | 'botsort.yaml' | Indique l'algorithme de suivi à utiliser. Options intégrées : botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.yaml. |
conf | float | 0.25 | Définit le seuil de confiance des détections ; des valeurs plus faibles permettent de suivre davantage d'objets, mais peuvent inclure des faux positifs. |
iou | float | 0.7 | Définit le seuil d'intersection sur union (IoU) pour filtrer les détections qui se chevauchent. |
classes | list | None | Filtre les résultats par indice de classe. Par exemple, classes=[0, 2, 3] ne suit que les classes spécifiées. |
device | str | None | Indique le périphérique utilisé pour l'inférence (par exemple, cpu, cuda:0 ou 0). Permet de choisir entre le CPU, un GPU spécifique ou d'autres périphériques de calcul pour l'exécution du modèle. |
imgsz | int or tuple | 640 | Taille de l'image d'inférence cible : un entier pour un carré ou une paire (height, width). Les formes sont ajustées au pas du modèle. |
max_det | int | 300 | Nombre maximal de détections conservées par image avant le suivi, ce qui limite les objets traités par une solution dans les scènes denses. |
quantize | int or str | None | Précision de l'inférence : 16 (FP16) ou 32/non définie (FP32) pour les modèles PyTorch et TorchScript ; les autres formats s'exécutent à la précision sélectionnée par leur artefact et leur environnement d'exécution. Remplace l'indicateur déprécié half. |
De plus, les arguments de visualisation listés ci-dessous sont pris en charge :
| Argument | Type | Valeur par défaut | Description |
|---|---|---|---|
show | bool | False | Si True, affiche les images ou vidéos annotées dans une fenêtre. Utile pour obtenir un retour visuel immédiat pendant le développement ou les tests. |
show_conf | bool | True | Affiche le score de confiance de chaque détection à côté de son étiquette. Donne un aperçu du degré de certitude du modèle pour chaque détection. |
show_labels | bool | True | Affiche les étiquettes de chaque détection dans la sortie visuelle. Permet d’identifier immédiatement les objets détectés. |
FAQ#
L’utilisation d’Ultralytics YOLO26 pour le comptage d’objets offre plusieurs avantages :
- Optimisation des ressources : Il facilite la gestion efficace des ressources en fournissant des décomptes précis et en aidant à optimiser l’allocation des ressources dans des secteurs tels que la gestion des stocks.
- Sécurité renforcée : Il renforce la sécurité et la surveillance en suivant et en comptant précisément les entités, ce qui contribue à la détection proactive des menaces et aux systèmes de sécurité.
- Prise de décision éclairée : Il fournit des informations précieuses pour la prise de décision et l’optimisation des processus dans des domaines tels que le commerce de détail, la gestion du trafic et bien d’autres.
- Traitement en temps réel : L’architecture de YOLO26 permet l’inférence en temps réel, ce qui le rend adapté aux flux vidéo en direct et aux applications sensibles au facteur temps.
Pour découvrir des exemples d’implémentation et des applications pratiques, consulte la solution TrackZone pour suivre des objets dans des zones spécifiques.
Pour compter des classes d’objets spécifiques avec Ultralytics YOLO26, tu dois indiquer les classes qui t’intéressent pendant la phase de suivi. Voici un exemple en Python :
import cv2 from ultralytics import solutions def count_specific_classes(video_path, output_video_path, model_path, classes_to_count): """Count specific classes of objects in a video.""" cap = cv2.VideoCapture(video_path) assert cap.isOpened(), "Error reading video file" w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS)) video_writer = cv2.VideoWriter(output_video_path, cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h)) line_points = [(20, 400), (1080, 400)] counter = solutions.ObjectCounter(show=True, region=line_points, model=model_path, classes=classes_to_count) while cap.isOpened(): success, im0 = cap.read() if not success: print("Video frame is empty or processing is complete.") break results = counter(im0) video_writer.write(results.plot_im) cap.release() video_writer.release() cv2.destroyAllWindows() count_specific_classes("path/to/video.mp4", "output_specific_classes.avi", "yolo26n.pt", [0, 2])Dans cet exemple,
classes_to_count=[0, 2]signifie qu’il compte les objets des classes0et2(par exemple, les personnes et les voitures dans le jeu de données COCO). Tu trouveras davantage d’informations sur les indices de classes dans la documentation du jeu de données COCO.Ultralytics YOLO26 offre plusieurs avantages par rapport à d’autres modèles de détection d’objets tels que Faster R-CNN, SSD et les versions précédentes de YOLO :
- Vitesse et efficacité : YOLO26 offre des capacités de traitement en temps réel, ce qui le rend idéal pour les applications nécessitant une inférence à grande vitesse, telles que la vidéosurveillance et la conduite autonome.
- Précision : Il fournit une précision de détection et de suivi de pointe, réduisant les faux positifs et améliorant la fiabilité globale du système.
- Facilité d’intégration : YOLO26 s’intègre facilement à diverses plateformes et appareils, notamment les appareils mobiles et les appareils edge, ce qui est essentiel pour les applications modernes d’IA.
- Flexibilité : Il prend en charge les tâches de détection et de segmentation, avec le mode de suivi en complément, ainsi que des modèles configurables pour répondre aux exigences de cas d’utilisation spécifiques.
Consulte la documentation YOLO26 d’Ultralytics pour approfondir ses fonctionnalités et comparer ses performances.
Oui, Ultralytics YOLO26 est parfaitement adapté aux applications avancées telles que l’analyse de foule et la gestion du trafic grâce à ses capacités de détection en temps réel, à son évolutivité et à sa flexibilité d’intégration. Ses fonctionnalités avancées permettent un suivi, un comptage et une classification des objets très précis dans des environnements dynamiques. Voici quelques exemples de cas d’utilisation :
- Analyse de foule : Surveille et gère les grands rassemblements, en garantissant la sécurité et en optimisant la circulation des personnes grâce au comptage par région.
- Gestion du trafic : Suis et compte les véhicules, analyse les schémas de circulation et gère les embouteillages en temps réel grâce aux capacités d’estimation de la vitesse.
- Analyse du commerce de détail : Analyse les schémas de déplacement des clients et leurs interactions avec les produits afin d’optimiser l’agencement des magasins et d’améliorer l’expérience client.
- Automatisation industrielle : Compte les produits sur les tapis roulants et surveille les lignes de production afin d’améliorer le contrôle qualité et l’efficacité.
Pour des applications plus spécialisées, consulte les solutions Ultralytics, qui proposent un ensemble complet d’outils conçus pour relever les défis de la vision par ordinateur dans le monde réel.


Pour compter des objets dans une vidéo avec Ultralytics YOLO26, tu peux suivre ces étapes :
cv2,ultralytics).Voici un exemple simple de comptage dans une région :
Pour des configurations et des options plus avancées, consulte la solution RegionCounter pour compter simultanément des objets dans plusieurs régions.