Ultralytics Solutions : Exploiter YOLO11 pour résoudre des problèmes réels
Ultralytics Les solutions fournissent des applications de pointe des modèles YOLO , offrant des solutions concrètes telles que le comptage d'objets, le flou et les systèmes de sécurité, améliorant ainsi l'efficacité et la précision dans diverses industries. Découvrez la puissance de YOLO11 pour des mises en œuvre pratiques et percutantes.
Regarder : Comment exécuter les solutions Ultralytics à partir de la ligne de commande (CLI) | Ultralytics YOLO11 🚀
Solutions
Voici notre liste de solutions Ultralytics qui peuvent être utilisées pour créer de superbes projets de vision par ordinateur.
- Comptage d'objets: Apprenez à compter des objets en temps réel avec YOLO11. Acquérir l'expertise nécessaire pour compter avec précision les objets dans les flux vidéo en direct.
- Recadrage d'objets: Maîtrisez le recadrage d'objets avec YOLO11 pour une extraction précise d'objets à partir d'images et de vidéos.
- Floutage d'objets: Appliquer le flou d'objet à l'aide de YOLO11 pour protéger la vie privée dans le traitement des images et des vidéos.
- Suivi des séances d'entraînement: Découvrez comment surveiller les séances d'entraînement avec YOLO11. Apprenez à suivre et à analyser diverses routines de fitness en temps réel.
- Comptage d'objets dans les régions: Comptez les objets dans des régions spécifiques à l'aide de YOLO11 pour une détection précise dans des zones variées.
- Système d'alarme de sécurité: Créez un système d'alarme de sécurité avec YOLO11 qui déclenche des alertes en cas de détection de nouveaux objets. Personnalisez le système pour qu'il réponde à vos besoins spécifiques.
- Cartes thermiques: Utilisez les cartes thermiques de détection pour visualiser l'intensité des données dans une matrice, ce qui permet d'obtenir des informations claires dans les tâches de vision par ordinateur.
- Segmentation d'instance avec suivi d'objet: Mettez en œuvre la segmentation des instances et le suivi des objets avec YOLO11 pour obtenir des limites d'objets précises et une surveillance continue.
- VisionEye - Cartographie des objets vus: Développer des systèmes qui imitent la focalisation de l'œil humain sur des objets spécifiques, améliorant ainsi la capacité de l'ordinateur à discerner et à hiérarchiser les détails.
- Estimation de la vitesse: Estimation de la vitesse de l'objet à l'aide de YOLO11 et de techniques de suivi des objets, cruciales pour des applications telles que les véhicules autonomes et la surveillance du trafic.
- Calcul de la distance: Calculer les distances entre les objets en utilisant les centroïdes des boîtes englobantes dans YOLO11, ce qui est essentiel pour l'analyse spatiale.
- Gestion des files d'attente: Mettre en œuvre des systèmes efficaces de gestion des files d'attente pour réduire les temps d'attente et améliorer la productivité à l'aide de YOLO11.
- Gestion des parkings: Organisez et dirigez le flux de véhicules dans les aires de stationnement avec YOLO11, en optimisant l'utilisation de l'espace et l'expérience des utilisateurs.
- Analyse: Effectuez une analyse complète des données pour découvrir des modèles et prendre des décisions éclairées, en tirant parti de YOLO11 pour l'analyse descriptive, prédictive et prescriptive.
- Inférence en direct avec Streamlit: Exploitez la puissance de YOLO11 pour la détection d'objets en temps réel, directement dans votre navigateur Web, grâce à l'interface conviviale de Streamlit.
- Suivi d'objets dans une zone 🚀 NOUVEAU : Apprenez à suivre des objets dans des zones spécifiques d'images vidéo à l'aide de YOLO11 pour un suivi précis et efficace.
Solutions Arguments
Argument | Type | Défaut | Description |
---|---|---|---|
model |
str |
None |
Chemin d'accès au fichier modèleYOLO d'Ultralytics . |
region |
list |
[(20, 400), (1260, 400)] |
Liste des points définissant la région de comptage. |
show_in |
bool |
True |
Indicateur permettant de contrôler l'affichage du nombre d'entrées dans le flux vidéo. |
show_out |
bool |
True |
Indicateur permettant de contrôler l'affichage du nombre de sorties sur le flux vidéo. |
analytics_type |
str |
line |
Type de graphique, c'est-à-dire, line , bar , area ou pie . |
colormap |
int |
cv2.COLORMAP_JET |
Carte de couleurs à utiliser pour la carte thermique. |
json_file |
str |
None |
Chemin d'accès au fichier JSON qui contient toutes les données relatives aux coordonnées du parking. |
up_angle |
float |
145.0 |
Seuil d'angle pour la pose "debout". |
kpts |
list[int, int, int] |
[6, 8, 10] |
Liste des points clés utilisés pour le suivi des séances d'entraînement. Ces points clés correspondent à des articulations ou des parties du corps, telles que les épaules, les coudes et les poignets, pour des exercices tels que les pompes, les tractions, les squats et les séances d'abdominaux. |
down_angle |
float |
90.0 |
Seuil d'angle pour la pose "en bas". |
blur_ratio |
float |
0.5 |
Règle le pourcentage de l'intensité du flou, avec des valeurs comprises entre 0.1 - 1.0 . |
crop_dir |
str |
"cropped-detections" |
Nom du répertoire où sont stockées les détections recadrées. |
records |
int |
5 |
Nombre total de détections pour déclencher un e-mail avec le système d'alarme de sécurité. |
vision_point |
tuple[int, int] |
(50, 50) |
Le point où la vision suivra les objets et dessinera des trajectoires à l'aide de la solution VisionEye. |
tracker |
str |
'botsort.yaml' |
Spécifie l'algorithme de suivi à utiliser, par exemple, bytetrack.yaml ou botsort.yaml . |
conf |
float |
0.3 |
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.5 |
Définit le seuil d'intersection sur l'union (IoU) pour le filtrage des 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 du suivi, fournissant une sortie visuelle des objets suivis. |
device |
str |
None |
Spécifie le dispositif d'inférence (par ex, cpu , cuda:0 ou 0 ). Permet aux utilisateurs de choisir entre CPU, un GPU spécifique ou d'autres dispositifs de calcul pour l'exécution du modèle. |
show |
bool |
False |
Si True affiche les images ou vidéos annotées dans une fenêtre. Utile pour un retour d'information visuel immédiat pendant le développement ou les tests. |
line_width |
None or int |
None |
Spécifie la largeur de ligne des boîtes de délimitation. Si les None La largeur de la ligne est automatiquement ajustée en fonction de la taille de l'image. Permet une personnalisation visuelle pour plus de clarté. |
Arguments de suivi
Les solutions soutiennent également certains des arguments de track
y compris des paramètres tels que conf
, line_width
, tracker
, model
, show
, verbose
et classes
.
Argument | Type | Défaut | Description |
---|---|---|---|
tracker |
str |
'botsort.yaml' |
Spécifie l'algorithme de suivi à utiliser, par exemple, bytetrack.yaml ou botsort.yaml . |
conf |
float |
0.3 |
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.5 |
Définit le seuil d'intersection sur l'union (IoU) pour le filtrage des 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 du suivi, fournissant une sortie visuelle des objets suivis. |
device |
str |
None |
Spécifie le dispositif d'inférence (par ex, cpu , cuda:0 ou 0 ). Permet aux utilisateurs de choisir entre CPU, un GPU spécifique ou d'autres dispositifs de calcul pour l'exécution du modèle. |
Utilisation de SolutionAnnotator
Toutes les solutions Ultralytics utilisent la classe distincte SolutionAnnotator
qui prolonge le programme principal de Annotator
et possèdent les méthodes suivantes :
Méthode | Type de retour | Description |
---|---|---|
draw_region() |
None |
Dessine une région en utilisant les points, les couleurs et l'épaisseur spécifiés. |
queue_counts_display() |
None |
Affiche le nombre de files d'attente dans la région spécifiée. |
display_analytics() |
None |
Affiche les statistiques globales de la gestion des parkings. |
estimate_pose_angle() |
float |
Calcule l'angle entre trois points dans la pose d'un objet. |
draw_specific_points() |
None |
Dessine des points clés spécifiques sur l'image. |
plot_workout_information() |
None |
Dessine une zone de texte étiquetée sur l'image. |
plot_angle_and_count_and_stage() |
None |
Visualisation de l'angle, du nombre de pas et de l'étape pour le suivi de l'entraînement. |
plot_distance_and_line() |
None |
Affiche la distance entre les centroïdes et les relie par une ligne. |
display_objects_labels() |
None |
Annote les boîtes de délimitation avec des étiquettes de classe d'objet. |
seg_bbox() |
None |
Dessine les contours des objets segmentés et les étiquette éventuellement. |
sweep_annotator() |
None |
Visualise une ligne de balayage verticale et une étiquette optionnelle. |
visioneye() |
None |
Cartographie et relie les centroïdes des objets à un point visuel "œil". |
circle_label() |
None |
Dessine une étiquette circulaire à la place d'une boîte de délimitation. |
text_label() |
None |
Dessine une étiquette rectangulaire à la place d'une boîte de délimitation. |
Utilisation des résultats de la solution
Tous les appels Solutions renvoient une liste de SolutionResults
contenant des informations complètes sur les solutions.
- Pour le comptage d'objets, les résultats sont les suivants
incounts
,outcounts
etclasswise_counts
.
Résultats de la solution
counter = solutions.ObjectCounter(
show=True, # display the output
region=region_points, # pass region points
model="yolo11n.pt", # model="yolo11n-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.count(im0)
print(results.in_counts) # display in_counts
print(results.out_counts) # display out_counts
Pour plus de détails, voir le SolutionResults
documentation de la classe.
Solutions Utilisation via CLI
Informations sur les commandes
La plupart des solutions peuvent être utilisées directement via l'interface de ligne de commande :
Count
, Crop
, Blur
, Workout
, Heatmap
, Isegment
, Visioneye
, Speed
, Queue
, Analytics
, Inference
Syntaxe
yolo SOLUTIONS SOLUTION_NAME ARGS
- SOLUTIONS est un mot-clé obligatoire.
- SOLUTION_NAME est l'un d'entre eux :
['count', 'crop', 'blur', 'workout', 'heatmap', 'isegment', 'queue', 'speed', 'analytics', 'trackzone', 'inference', 'visioneye']
. - ARGS (facultatif) sont personnalisés
arg=value
paires, telles queshow_in=True
pour annuler les réglages par défaut.
yolo solutions count show=True # for object counting
yolo solutions source="path/to/video.mp4" # specify video file path
Contribuer à nos solutions
Les contributions de la communauté sont les bienvenues ! Si vous maîtrisez un aspect particulier de Ultralytics YOLO qui n'est pas encore couvert par nos solutions, nous vous encourageons à partager votre expertise. La rédaction d'un guide est un excellent moyen de rendre service à la communauté et de nous aider à rendre notre documentation plus complète et plus conviviale.
Pour commencer, veuillez lire notre Guide de contribution pour savoir comment ouvrir une demande d'extraction (PR) 🛠️. Nous attendons avec impatience vos contributions !
Travaillons ensemble pour rendre l'écosystème Ultralytics YOLO plus robuste et plus polyvalent 🙏 !
FAQ
Comment puis-je utiliser Ultralytics YOLO pour le comptage d'objets en temps réel ?
Ultralytics YOLO11 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. Vous pouvez suivre notre guide détaillé sur le comptage d'objets pour configurer YOLO11 pour l'analyse de flux vidéo en direct. Il vous suffit d'installer YOLO11, de charger votre modèle et de traiter les images vidéo pour compter les objets de manière dynamique.
Quels sont les avantages de l'utilisation de Ultralytics YOLO pour les systèmes de sécurité ?
Ultralytics YOLO11 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 utilisant YOLO11, vous pouvez 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. Découvrez comment mettre en place un système d'alarme de sécurité avec YOLO11 pour un contrôle de sécurité efficace.
Comment Ultralytics YOLO peut-il améliorer les systèmes de gestion des files d'attente ?
Ultralytics YOLO11 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, ce qui permet de réduire les temps d'attente et d'optimiser l'efficacité du service. Suivez notre guide détaillé sur la gestion des files d'attente pour apprendre comment mettre en œuvre YOLO11 pour un contrôle et une analyse efficaces des files d'attente.
Le site Ultralytics YOLO peut-il être utilisé pour le suivi de l'entraînement ?
Oui, Ultralytics YOLO11 peut être utilisé efficacement pour surveiller les séances d'entraînement en suivant et en analysant les routines de fitness en temps réel. Cela permet une évaluation précise de la forme et de la performance des exercices. Consultez notre guide sur le suivi des séances d' entraînement pour savoir comment mettre en place un système de suivi des séances d'entraînement piloté par l'IA à l'aide de YOLO11.
Comment Ultralytics YOLO aide-t-il à créer des cartes thermiques pour la visualisation des données?
Ultralytics YOLO11 peut générer des cartes thermiques pour visualiser l'intensité des données dans une zone donnée, en mettant en évidence les régions à forte activité ou présentant un intérêt particulier. Cette fonction est particulièrement utile pour comprendre les modèles et les tendances dans diverses tâches de vision par ordinateur. En savoir plus sur la création et l'utilisation de cartes thermiques avec YOLO11 pour une analyse et une visualisation complètes des données.