Queue Management using Ultralytics YOLO11 🚀
Qu'est-ce que la gestion des files d'attente ?
Queue management using Ultralytics YOLO11 involves organizing and controlling lines of people or vehicles to reduce wait times and enhance efficiency. It's about optimizing queues to improve customer satisfaction and system performance in various settings like retail, banks, airports, and healthcare facilities.
Regarde : How to Implement Queue Management with Ultralytics YOLO11 | Airport and Metro Station
Avantages de la gestion des files d'attente ?
- Réduction des temps d'attente : Les systèmes de gestion des files d'attente organisent efficacement les files d'attente, minimisant ainsi les temps d'attente pour les clients. Cela permet d'améliorer le niveau de satisfaction car les clients passent moins de temps à attendre et plus de temps à s'occuper des produits ou des services.
- Efficacité accrue : La mise en œuvre de la gestion des files d'attente permet aux entreprises d'allouer les ressources plus efficacement. En analysant les données relatives aux files d'attente et en optimisant le déploiement du personnel, les entreprises peuvent rationaliser les opérations, réduire les coûts et améliorer la productivité globale.
Applications dans le monde réel
Logistique | Vente au détail |
---|---|
Queue management at airport ticket counter Using Ultralytics YOLO11 | Queue monitoring in crowd Ultralytics YOLO11 |
Queue Management using YOLO11 Example
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("Path/to/video/file.mp4")
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("queue_management.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
queue_region = [(20, 400), (1080, 404), (1080, 360), (20, 360)]
queue = solutions.QueueManager(
model="yolo11n.pt",
region=queue_region,
)
while cap.isOpened():
success, im0 = cap.read()
if success:
out = queue.process_queue(im0)
video_writer.write(im0)
if cv2.waitKey(1) & 0xFF == ord("q"):
break
continue
print("Video frame is empty or video processing has been successfully completed.")
break
cap.release()
cv2.destroyAllWindows()
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("Path/to/video/file.mp4")
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("queue_management.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
queue_region = [(20, 400), (1080, 404), (1080, 360), (20, 360)]
queue = solutions.QueueManager(
model="yolo11n.pt",
classes=3,
)
while cap.isOpened():
success, im0 = cap.read()
if success:
out = queue.process_queue(im0)
video_writer.write(im0)
if cv2.waitKey(1) & 0xFF == ord("q"):
break
continue
print("Video frame is empty or video processing has been successfully completed.")
break
cap.release()
cv2.destroyAllWindows()
Arguments QueueManager
Nom | Type | DĂ©faut | Description |
---|---|---|---|
model |
str |
None |
Path to Ultralytics YOLO Model File |
region |
list |
[(20, 400), (1260, 400)] |
List of points defining the queue region. |
line_width |
int |
2 |
Épaisseur du trait pour les boîtes de délimitation. |
show |
bool |
False |
Drapeau permettant de contrôler l'affichage ou non du flux vidéo. |
Arguments model.track
Argument | Type | DĂ©faut | Description |
---|---|---|---|
source |
str |
None |
Specifies the source directory for images or videos. Supports file paths and URLs. |
persist |
bool |
False |
Enables persistent tracking of objects between frames, maintaining IDs across video sequences. |
tracker |
str |
botsort.yaml |
Specifies the tracking algorithm to use, e.g., bytetrack.yaml ou botsort.yaml . |
conf |
float |
0.3 |
Sets the confidence threshold for detections; lower values allow more objects to be tracked but may include false positives. |
iou |
float |
0.5 |
Sets the Intersection over Union (IoU) threshold for filtering overlapping detections. |
classes |
list |
None |
Filters results by class index. For example, classes=[0, 2, 3] only tracks the specified classes. |
verbose |
bool |
True |
Controls the display of tracking results, providing a visual output of tracked objects. |
FAQ
How can I use Ultralytics YOLO11 for real-time queue management?
To use Ultralytics YOLO11 for real-time queue management, you can follow these steps:
- Load the YOLO11 model with
YOLO("yolo11n.pt")
. - Capture le flux vidéo à l'aide de
cv2.VideoCapture
. - Définis la région d'intérêt (ROI) pour la gestion des files d'attente.
- Traite les trames pour détecter les objets et gérer les files d'attente.
Voici un exemple minimal :
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.mp4")
queue_region = [(20, 400), (1080, 404), (1080, 360), (20, 360)]
queue = solutions.QueueManager(
model="yolo11n.pt",
region=queue_region,
line_width=3,
)
while cap.isOpened():
success, im0 = cap.read()
if success:
out = queue.process_queue(im0)
cv2.imshow("Queue Management", im0)
if cv2.waitKey(1) & 0xFF == ord("q"):
break
cap.release()
cv2.destroyAllWindows()
Tirer parti de Ultralytics HUB peut rationaliser ce processus en fournissant une plateforme conviviale pour le déploiement et la gestion de ta solution de gestion des files d'attente.
What are the key advantages of using Ultralytics YOLO11 for queue management?
Using Ultralytics YOLO11 for queue management offers several benefits:
- Des temps d'attente en chute libre : Organise efficacement les files d'attente, réduisant ainsi le temps d'attente des clients et augmentant leur satisfaction.
- Améliorer l'efficacité : Analyse les données des files d'attente pour optimiser le déploiement du personnel et les opérations, réduisant ainsi les coûts.
- Alertes en temps réel : Fournit des notifications en temps réel pour les longues files d'attente, ce qui permet une intervention rapide.
- Évolutivité : Facilement extensible dans différents environnements tels que la vente au détail, les aéroports et les soins de santé.
Pour plus de détails, explore nos solutions de gestion des files d'attente.
Why should I choose Ultralytics YOLO11 over competitors like TensorFlow or Detectron2 for queue management?
Ultralytics YOLO11 has several advantages over TensorFlow and Detectron2 for queue management:
- Real-time Performance: YOLO11 is known for its real-time detection capabilities, offering faster processing speeds.
- Facilité d'utilisation : Ultralytics offre une expérience conviviale, de la formation au déploiement, via Ultralytics HUB.
- Modèles préformés : Accès à une gamme de modèles pré-entraînés, ce qui minimise le temps nécessaire à la configuration.
- Soutien de la communauté : Une documentation complète et un soutien actif de la communauté facilitent la résolution des problèmes.
Apprends à démarrer avec Ultralytics YOLO.
Can Ultralytics YOLO11 handle multiple types of queues, such as in airports and retail?
Yes, Ultralytics YOLO11 can manage various types of queues, including those in airports and retail environments. By configuring the QueueManager with specific regions and settings, YOLO11 can adapt to different queue layouts and densities.
Exemple pour les aéroports :
queue_region_airport = [(50, 600), (1200, 600), (1200, 550), (50, 550)]
queue_airport = solutions.QueueManager(
model="yolo11n.pt",
region=queue_region_airport,
line_width=3,
)
Pour plus d'informations sur les diverses applications, consulte notre section Applications du monde réel.
What are some real-world applications of Ultralytics YOLO11 in queue management?
Ultralytics YOLO11 is used in various real-world applications for queue management:
- Vente au détail : Surveille les lignes de caisse pour réduire les temps d'attente et améliorer la satisfaction des clients.
- Aéroports : Gère les files d'attente aux guichets et aux points de contrôle de sécurité pour une expérience plus fluide des passagers.
- Santé : Optimise le flux de patients dans les cliniques et les hôpitaux.
- Banques : Améliore le service à la clientèle en gérant efficacement les files d'attente dans les banques.
Consulte notre blog sur la gestion des files d'attente dans le monde réel pour en savoir plus.