Link to this sectionComptage d'objets dans différentes zones avec Ultralytics YOLO 🚀#
Link to this sectionQu'est-ce que le comptage d'objets par zones ?#
Le comptage d'objets dans des zones avec Ultralytics YOLO26 implique de déterminer précisément le nombre d'objets dans des zones spécifiées à l'aide de la vision par ordinateur avancée. Cette approche est utile pour optimiser les processus, renforcer la sécurité et améliorer l'efficacité dans diverses applications.
Watch: Object Counting in Different Regions using Ultralytics YOLO26 | Ultralytics Solutions 🚀
Link to this sectionAvantages du comptage d'objets par zones#
- Précision et exactitude : Le comptage d'objets dans des zones avec la vision par ordinateur avancée garantit des comptes précis et exacts, minimisant les erreurs souvent associées au comptage manuel.
- Amélioration de l'efficacité : Le comptage automatisé d'objets améliore l'efficacité opérationnelle, fournissant des résultats en temps réel et rationalisant les processus à travers différentes applications.
- Polyvalence et application : La polyvalence du comptage d'objets par zones le rend applicable dans divers domaines, de la fabrication et la surveillance au contrôle du trafic, contribuant à son utilité et son efficacité généralisées.
Link to this sectionApplications dans le monde réel#
| Commerce de détail | Rues commerçantes |
|---|---|
![]() | ![]() |
| Comptage de personnes dans différentes zones avec Ultralytics YOLO26 | Comptage de foule dans différentes zones avec Ultralytics YOLO26 |
Link to this sectionExemples d'utilisation#
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"
# Pass region as list
# region_points = [(20, 400), (1080, 400), (1080, 360), (20, 360)]
# Pass region as dictionary
region_points = {
"region-01": [(50, 50), (250, 50), (250, 250), (50, 250)],
"region-02": [(640, 640), (780, 640), (780, 720), (640, 720)],
}
# Video writer
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("region_counting.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
# Initialize region counter object
regioncounter = solutions.RegionCounter(
show=True, # display the frame
region=region_points, # pass region points
model="yolo26n.pt", # model for counting in regions, e.g., yolo26s.pt
)
# Process video
while cap.isOpened():
success, im0 = cap.read()
if not success:
print("Video frame is empty or processing is complete.")
break
results = regioncounter(im0)
# print(results) # access the output
video_writer.write(results.plot_im)
cap.release()
video_writer.release()
cv2.destroyAllWindows() # destroy all opened windowsLe module de comptage par zones Ultralytics est disponible dans notre section exemples. Tu peux explorer cet exemple pour personnaliser le code et le modifier selon ton cas d'utilisation spécifique.
Link to this sectionArguments RegionCounter#
Voici un tableau avec les arguments de RegionCounter :
| Argument | Type | Défaut | Description |
|---|---|---|---|
model | str | None | Chemin d'accès vers un fichier de modèle YOLO d'Ultralytics. |
region | list | '[(20, 400), (1260, 400)]' | Liste de points définissant la région de comptage. |
La solution RegionCounter permet d'utiliser les paramètres de suivi d'objets :
| Argument | Type | Défaut | Description |
|---|---|---|---|
tracker | str | 'botsort.yaml' | Spécifie l'algorithme de suivi à utiliser. Options intégrées : botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.yaml. |
conf | float | 0.1 | Définit le seuil de confiance pour les détections ; des valeurs plus faibles permettent de suivre plus 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. |
verbose | bool | True | Contrôle l'affichage des résultats de suivi, en fournissant une sortie visuelle des objets suivis. |
device | str | None | Spécifie le périphérique pour l'inférence (par ex. cpu, cuda:0 ou 0). Permet aux utilisateurs de choisir entre le CPU, un GPU spécifique ou d'autres dispositifs de calcul pour l'exécution du modèle. |
De plus, les paramètres de visualisation suivants sont pris en charge :
| Argument | Type | Défaut | Description |
|---|---|---|---|
show | bool | False | Si True, affiche les images ou vidéos annotées dans une fenêtre. Utile pour un retour visuel immédiat lors du développement ou des tests. |
line_width | int or None | None | Spécifie l'épaisseur de ligne des boîtes englobantes. Si None, l'épaisseur de ligne est automatiquement ajustée en fonction de la taille de l'image. Offre une personnalisation visuelle pour plus de clarté. |
show_conf | bool | True | Affiche le score de confiance pour chaque détection à côté de l'étiquette. Donne un aperçu de la certitude du modèle pour chaque détection. |
show_labels | bool | True | Affiche les étiquettes pour chaque détection dans la sortie visuelle. Permet une compréhension immédiate des objets détectés. |
Link to this sectionFAQ#
Link to this sectionQu'est-ce que le comptage d'objets dans des zones spécifiées avec Ultralytics YOLO26 ?#
Le comptage d'objets dans des zones spécifiées avec Ultralytics YOLO26 implique la détection et le décompte du nombre d'objets dans des zones définies à l'aide de la vision par ordinateur avancée. Cette méthode précise améliore l'efficacité et la précision dans diverses applications comme la fabrication, la surveillance et le contrôle du trafic.
Link to this sectionComment exécuter le script de comptage d'objets par zones avec Ultralytics YOLO26 ?#
Suis ces étapes pour exécuter le comptage d'objets dans Ultralytics YOLO26 :
-
Clone le dépôt Ultralytics et navigue vers le répertoire :
git clone https://github.com/ultralytics/ultralytics cd ultralytics/examples/YOLOv8-Region-Counter -
Exécute le script de comptage par zones :
python yolov8_region_counter.py --source "path/to/video.mp4" --save-img
Pour plus d'options, visite la section Exemples d'utilisation.
Link to this sectionPourquoi utiliser Ultralytics YOLO26 pour le comptage d'objets par zones ?#
L'utilisation d'Ultralytics YOLO26 pour le comptage d'objets par zones offre plusieurs avantages :
- Traitement en temps réel : L'architecture de YOLO26 permet une inférence rapide, ce qui le rend idéal pour les applications nécessitant des résultats de comptage immédiats.
- Définition flexible des zones : La solution te permet de définir plusieurs zones personnalisées sous forme de polygones, de rectangles ou de lignes pour répondre à tes besoins de surveillance spécifiques.
- Prise en charge multi-classes : Compte différents types d'objets simultanément dans les mêmes zones, fournissant des analyses complètes.
- Capacités d'intégration : Intègre facilement le système aux solutions existantes via l'API Python Ultralytics ou l'interface de ligne de commande.
Explore des avantages plus profonds dans la section Avantages.
Link to this sectionQuelles sont les applications réelles du comptage d'objets par zones ?#
Le comptage d'objets avec Ultralytics YOLO26 peut être appliqué à de nombreux scénarios réels :
- Analyse de vente au détail : Compte les clients dans différentes sections du magasin pour optimiser la disposition et la gestion du personnel.
- Gestion du trafic : Surveille le flux de véhicules sur des segments routiers ou des intersections spécifiques.
- Fabrication : Suis les produits se déplaçant à travers différentes zones de production.
- Opérations d'entrepôt : Compte les articles en stock dans des zones de stockage désignées.
- Sécurité publique : Surveille la densité de foule dans des zones spécifiques lors d'événements.
Explore plus d'exemples dans la section Applications réelles et la solution TrackZone pour des capacités de surveillance basées sur des zones supplémentaires.

