YOLO Vision 2026 :

Solutions Ultralytics : exploite YOLO26 pour résoudre des problèmes du monde réel#

Les solutions Ultralytics fournissent des applications de pointe de modèles YOLO, offrant des solutions concrètes telles que le comptage d'objets, le floutage et les systèmes de sécurité, améliorant ainsi l'efficacité et la précision dans divers secteurs. Découvre la puissance de YOLO26 pour des implémentations pratiques et percutantes.

Ultralytics Solutions Thumbnail



Watch: How to Run Ultralytics Solutions from the Command Line (CLI) | Ultralytics YOLO26 🚀

Solutions#

Voici notre liste de solutions Ultralytics sélectionnées avec soin, que tu peux utiliser pour créer de superbes projets de vision par ordinateur.

  • Analytique : réalise une analyse de données complète pour découvrir des tendances et prendre des décisions éclairées, en tirant parti de YOLO26 pour des analyses descriptives, prédictives et prescriptives.
  • Calcul de distance : calcule les distances entre les objets en utilisant les centroïdes de boîtes englobantes dans YOLO26, ce qui est essentiel pour l'analyse spatiale.
  • Cartes thermiques : utilise des cartes thermiques de détection pour visualiser l'intensité des données sur une matrice, offrant des perspectives claires dans les tâches de vision par ordinateur.
  • Segmentation d'instances avec suivi d'objets : implémente la segmentation d'instances et le suivi d'objets avec YOLO26 pour obtenir des limites d'objets précises et une surveillance continue.
  • Inférence en direct avec Streamlit : tire parti de la puissance de YOLO26 pour la détection d'objets en temps réel directement via ton navigateur web grâce à une interface Streamlit conviviale.
  • Floutage d'objets : applique le floutage d'objets à l'aide de YOLO26 pour protéger la vie privée dans le traitement d'images et de vidéos.
  • Comptage d'objets : apprends à effectuer un comptage d'objets en temps réel avec YOLO26. Acquiers l'expertise nécessaire pour compter avec précision des objets dans des flux vidéo en direct.
  • Comptage d'objets dans des régions : compte les objets dans des régions spécifiques à l'aide de YOLO26 pour une détection précise dans des zones variées.
  • Recadrage d'objets : maîtrise le recadrage d'objets avec YOLO26 pour une extraction précise d'objets à partir d'images et de vidéos.
  • Gestion des parkings : organise et dirige le flux de véhicules dans les zones de stationnement avec YOLO26, en optimisant l'utilisation de l'espace et l'expérience utilisateur.
  • Gestion des files d'attente : implémente des systèmes de gestion des files d'attente efficaces pour minimiser les temps d'attente et améliorer la productivité à l'aide de YOLO26.
  • Système d'alarme de sécurité : crée un système d'alarme de sécurité avec YOLO26 qui déclenche des alertes lors de la détection de nouveaux objets. Personnalise le système pour l'adapter à tes besoins spécifiques.
  • Recherche par similarité : active la recherche d'images intelligente en combinant les intégrations OpenAI CLIP avec la recherche par similarité cosinus, permettant des requêtes en langage naturel telles que "personne tenant un sac" ou "véhicules en mouvement".
  • Estimation de vitesse : estime la vitesse des objets à l'aide de YOLO26 et de techniques de suivi d'objets, ce qui est crucial pour des applications telles que les véhicules autonomes et la surveillance du trafic.
  • Suivi d'objets dans une zone : apprends à suivre des objets dans des zones spécifiques de trames vidéo à l'aide de YOLO26 pour une surveillance précise et efficace.
  • Mappage d'objets avec vue VisionEye : développe des systèmes qui imitent la focalisation de l'œil humain sur des objets spécifiques, améliorant la capacité de l'ordinateur à discerner et à prioriser les détails.
  • Suivi des entraînements : découvre comment suivre les entraînements à l'aide de YOLO26. Apprends à suivre et à analyser diverses routines de fitness en temps réel.

Arguments des Solutions#

ArgumentTypeDéfautDescription
modelstrNoneChemin d'accès vers un fichier de modèle YOLO d'Ultralytics.
regionlist ou dictNonePoints définissant la région d'intérêt, soit une liste de tuples (x, y), soit un dictionnaire associant des noms de région à des listes de points pour plusieurs régions (RegionCounter uniquement). Lorsque réglé sur None, les solutions nécessitant une région se replient sur une valeur par défaut prédéfinie.
show_inboolTrueIndicateur pour contrôler s'il faut afficher les comptages entrants sur le flux vidéo.
show_outboolTrueIndicateur pour contrôler s'il faut afficher les comptages sortants sur le flux vidéo.
analytics_typestr'line'Type de graphe, c'est-à-dire line, bar, area ou pie.
colormapintcv2.COLORMAP_DEEPGREENPalette de couleurs à utiliser pour la carte de chaleur.
line_widthint2Épaisseur de ligne pour les boîtes, les points clés et les comptes tracés par la solution.
verboseboolTrueActive le journal par trame de la solution concernant la forme d'entrée, les comptes de classes et la vitesse de traitement. L'appel de suivi reste toujours silencieux.
json_filestrNoneChemin d'accès au fichier JSON qui contient toutes les données de coordonnées de stationnement.
up_anglefloat145.0Seuil d'angle pour la posture 'vers le haut'.
kptslist[int]'[6, 8, 10]'Liste de trois indices de points clés utilisés pour surveiller les exercices physiques. Ces points clés correspondent aux articulations ou parties du corps, comme les épaules, les coudes et les poignets, pour des exercices tels que les pompes, les tractions, les squats et les abdominaux.
down_angleint90Seuil d'angle pour la posture 'vers le bas'.
blur_ratiofloat0.5Ajuste le pourcentage d'intensité du flou, avec des valeurs comprises dans l'intervalle 0.1 - 1.0.
crop_dirstr'cropped-detections'Nom du répertoire pour stocker les détections recadrées.
recordsint5Nombre total de détections pour déclencher un e-mail avec le système d'alarme de sécurité.
vision_pointtuple[int, int](20, 20)Le point où la vision suivra les objets et dessinera des chemins en utilisant la Solution VisionEye.
sourcestrNoneChemin vers la source d'entrée (vidéo, RTSP, etc.). Utilisable uniquement avec l'interface de ligne de commande (CLI) des Solutions.
figsizetuple[float, float](12.8, 7.2)Taille de figure pour les graphiques analytiques tels que les cartes de chaleur ou les graphiques.
fpsfloat30.0Images par seconde utilisées pour les calculs de vitesse.
max_histint5Points historiques maximum à suivre par objet pour les calculs de vitesse/direction.
meter_per_pixelfloat0.05Facteur d'échelle utilisé pour convertir la distance en pixels en unités du monde réel.
max_speedint120Limite de vitesse maximale dans les superpositions visuelles (utilisée dans les alertes).
datastr'images'Chemin vers le répertoire d'images utilisé pour la recherche de similarité.
imgszint640Taille de l'image d'entrée pour l'inférence du modèle.
Arguments de suivi

Les solutions transmettent certains de leurs arguments à track, à savoir tracker, conf, iou, classes et device.

ArgumentTypeDéfautDescription
trackerstr'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.
conffloat0.25Dé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.
ioufloat0.7Définit le seuil d'Intersection over Union (IoU) pour filtrer les détections qui se chevauchent.
classeslistNoneFiltre les résultats par index de classe. Par exemple, classes=[0, 2, 3] ne suit que les classes spécifiées.
devicestrNoneSpécifie le périphérique pour l'inférence (par exemple, cpu, cuda:0 ou 0). Permet aux utilisateurs de choisir entre le CPU, un GPU spécifique ou d'autres périphériques de calcul pour l'exécution du modèle.
Arguments de visualisation

Tu peux utiliser show_conf, show_labels et d'autres arguments mentionnés pour personnaliser la visualisation.

ArgumentTypeDéfautDescription
showboolFalseSi True, affiche les images ou vidéos annotées dans une fenêtre. Utile pour un retour visuel immédiat pendant le développement ou les tests.
show_confboolTrueAffiche 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_labelsboolTrueAffiche les étiquettes pour chaque détection dans la sortie visuelle. Permet une compréhension immédiate des objets détectés.

Utilisation de SolutionAnnotator#

Toutes les solutions Ultralytics utilisent la classe distincte SolutionAnnotator, qui étend la classe principale Annotator, et possèdent les méthodes suivantes :

MéthodeType de retourDescription
draw_region()NoneDessine une région en utilisant des points, des couleurs et une épaisseur spécifiés.
queue_counts_display()NoneAffiche les décomptes de file d'attente dans la région spécifiée.
display_analytics()NoneAffiche les statistiques globales pour la gestion des parkings.
estimate_pose_angle()floatCalcule l'angle entre trois points dans la pose d'un objet.
draw_specific_kpts()np.ndarrayDessine des points clés spécifiques sur l'image.
plot_workout_information()intDessine une zone de texte étiquetée sur l'image.
plot_angle_and_count_and_stage()NoneVisualise l'angle, le nombre de répétitions et l'étape pour le suivi de l'entraînement.
plot_distance_and_line()NoneAffiche la distance entre les centroïdes et les relie par une ligne.
display_objects_labels()NoneAnnote les boîtes englobantes avec des étiquettes de classe d'objet.
sweep_annotator()NoneVisualise une ligne de balayage verticale et une étiquette optionnelle.
visioneye()NoneMappe et connecte les centroïdes d'objets à un point "œil" visuel.
adaptive_label()NoneDessine une étiquette d'arrière-plan circulaire ou rectangulaire au centre d'une bounding box.

Travailler avec SolutionResults#

À l'exception de Similarity Search, chaque appel de solution renvoie un objet SolutionResults.

  • Pour le comptage d'objets, les résultats incluent in_count, out_count et classwise_count.
SolutionResults
import cv2

from ultralytics import solutions

im0 = cv2.imread("path/to/img")

region_points = [(20, 400), (1080, 400), (1080, 360), (20, 360)]

counter = solutions.ObjectCounter(
    show=True,  # display the output
    region=region_points,  # pass region points
    model="yolo26n.pt",  # model="yolo26n-obb.pt" for object counting with OBB model.
    # classes=[0, 2],  # count specific classes i.e. person and car with COCO pretrained model.
    # tracker="botsort.yaml"  # Choose trackers i.e "bytetrack.yaml"
)
results = counter(im0)
print(results.in_count)  # display in_counts
print(results.out_count)  # display out_counts
print(results.classwise_count)  # display classwise_count

L'objet SolutionResults possède les attributs suivants :

AttributTypeDescription
plot_imnp.ndarrayImage avec des superpositions visuelles telles que des décomptes, des effets de flou ou des améliorations spécifiques à la solution.
in_countintNombre total d'objets détectés entrant dans la zone définie dans le flux vidéo.
out_countintNombre total d'objets détectés sortant de la zone définie dans le flux vidéo.
classwise_countDict[str, int]Dictionnaire enregistrant les décomptes d'entrée/sortie d'objets par classe pour des analyses avancées.
queue_countintNombre d'objets actuellement dans une file d'attente ou une zone d'attente prédéfinie (adapté pour la gestion des files d'attente).
workout_countlist[int]Comptages de répétitions d'exercices par suivi depuis AI Gym (une entrée par individu actuellement suivi).
workout_anglelist[float]Angles d'exercices par suivi depuis AI Gym (une entrée par individu actuellement suivi).
workout_stagelist[str]Étape d'exercice actuelle par suivi depuis AI Gym (une entrée par individu actuellement suivi).
pixels_distancefloatDistance basée sur les pixels entre deux objets ou points, par ex. des boîtes englobantes. (Adapté pour le calcul de distance).
available_slotsintNombre d'emplacements inoccupés dans une zone surveillée (adapté pour la gestion de parking).
filled_slotsintNombre d'emplacements occupés dans une zone surveillée. (Adapté pour la gestion de parking)
email_sentboolIndique si une notification ou un e-mail d'alerte a été envoyé avec succès (adapté pour une alarme de sécurité).
total_tracksintNombre total de suivis d'objets uniques observés pendant l'analyse vidéo.
region_countsDict[str, int]Décomptes d'objets au sein de régions ou zones définies par l'utilisateur.
speed_dictDict[str, float]Dictionnaire par suivi des vitesses d'objets calculées, utile pour l'analyse de vélocité.
total_crop_objectsintNombre total d'images d'objets recadrées générées par la solution ObjectCropper.
speedDict[str, float]Dictionnaire contenant des mesures de performance pour le suivi et le traitement de la solution.

Pour plus de détails, réfère-toi à la documentation de la classe SolutionResults.

Utilisation des solutions via CLI#

Information sur la commande

La plupart des solutions peuvent être utilisées directement via l'interface de ligne de commande, y compris :

Count, Crop, Blur, Workout, Heatmap, Isegment, Visioneye, Speed, Queue, Analytics, Inference, Trackzone

Syntaxe

yolo SOLUTIONS SOLUTION_NAME ARGS
  • SOLUTIONS est un mot-clé requis.
  • SOLUTION_NAME fait partie de : ['count', 'crop', 'blur', 'workout', 'heatmap', 'isegment', 'queue', 'speed', 'analytics', 'trackzone', 'inference', 'visioneye', 'region', 'security', 'parking'].
  • ARGS (optionnel) sont des paires arg=value personnalisées, telles que show_in=True, pour remplacer les paramètres par défaut.
yolo solutions count show=True # for object counting

yolo solutions count source="path/to/video.mp4" # specify video file path

Contribue à nos solutions#

Nous accueillons les contributions de la communauté ! Si tu maîtrises un aspect particulier de Ultralytics YOLO qui n'est pas encore couvert dans nos solutions, nous t'encourageons à partager ton expertise. Rédiger un guide est un excellent moyen de contribuer à la communauté et de nous aider à rendre notre documentation plus complète et conviviale.

Pour commencer, lis notre Guide de contribution pour obtenir des instructions sur la manière d'ouvrir une pull request (PR) 🛠️. Nous avons hâte de voir tes contributions !

Travaillons ensemble pour rendre l'écosystème Ultralytics YOLO plus robuste et polyvalent 🙏 !

FAQ#

  • Ultralytics YOLO26 peut être utilisé pour le comptage d'objets en temps réel en tirant parti de ses capacités avancées de détection d'objets. Tu peux suivre notre guide détaillé sur le Comptage d'objets pour configurer YOLO26 pour l'analyse de flux vidéo en direct. Installe simplement YOLO26, charge ton modèle et traite les trames vidéo pour compter les objets de manière dynamique.

  • Ultralytics YOLO26 améliore les systèmes de sécurité en offrant des mécanismes de détection d'objets et d'alerte en temps réel. En employant YOLO26, tu peux créer un système d'alarme de sécurité qui déclenche des alertes lorsque de nouveaux objets sont détectés dans la zone de surveillance. Apprends à configurer un Système d'alarme de sécurité avec YOLO26 pour une surveillance de sécurité robuste.

  • Ultralytics YOLO26 peut améliorer considérablement les systèmes de gestion des files d'attente en comptant et en suivant avec précision les personnes dans les files d'attente, contribuant ainsi à réduire les temps d'attente et à optimiser l'efficacité du service. Suis notre guide détaillé sur la Gestion des files d'attente pour apprendre à implémenter YOLO26 pour une surveillance et une analyse efficaces des files d'attente.

  • Oui, Ultralytics YOLO26 peut être utilisé efficacement pour le suivi des entraînements en suivant et en analysant les routines de fitness en temps réel. Cela permet une évaluation précise de la posture et des performances lors de l'exercice. Explore notre guide sur le Suivi des entraînements pour apprendre à configurer un système de surveillance des entraînements alimenté par l'IA à l'aide de YOLO26.

  • Ultralytics YOLO26 peut générer des cartes thermiques pour visualiser l'intensité des données sur une zone donnée, en mettant en valeur les régions de forte activité ou d'intérêt. Cette fonctionnalité est particulièrement utile pour comprendre les tendances et les motifs dans diverses tâches de vision par ordinateur. En apprends plus sur la création et l'utilisation de Cartes thermiques avec YOLO26 pour une analyse et une visualisation complètes des données.

Commentaires