Управление очередью с использованием Ultralytics YOLO11 🚀
Что такое управление очередью?
Управление очередью с использованием Ultralytics YOLO11 включает в себя организацию и контроль линий людей или транспортных средств для сокращения времени ожидания и повышения эффективности. Речь идет об оптимизации очередей для повышения удовлетворенности клиентов и производительности системы в различных местах, таких как розничная торговля, банки, аэропорты и медицинские учреждения.
Смотреть: Как реализовать управление очередью с помощью Ultralytics YOLO11 | Аэропорт и станция метро
Преимущества управления очередью
- Сокращение времени ожидания: Системы управления очередями эффективно организуют очереди, сводя к минимуму время ожидания для клиентов. Это приводит к повышению уровня удовлетворенности, поскольку клиенты тратят меньше времени на ожидание и больше времени на взаимодействие с продуктами или услугами.
- Повышение эффективности: Внедрение управления очередями позволяет предприятиям более эффективно распределять ресурсы. Анализируя данные очереди и оптимизируя расстановку персонала, предприятия могут оптимизировать операции, снизить затраты и повысить общую производительность.
- Аналитика в реальном времени: Управление очередями на базе YOLO11 предоставляет мгновенные данные о длине очередей и времени ожидания, что позволяет менеджерам быстро принимать обоснованные решения.
- Улучшенный клиентский опыт: Сокращая разочарование, связанное с долгим ожиданием, предприятия могут значительно повысить удовлетворенность и лояльность клиентов.
Приложения в реальном мире
Логистика | Розничная торговля |
---|---|
![]() |
![]() |
Управление очередью у билетной кассы аэропорта с использованием Ultralytics YOLO11 | Мониторинг очереди в толпе Ultralytics YOLO11 |
Управление очередью с использованием Ultralytics YOLO
# Run a queue example
yolo solutions queue show=True
# Pass a source video
yolo solutions queue source="path/to/video.mp4"
# Pass queue coordinates
yolo solutions queue region="[(20, 400), (1080, 400), (1080, 360), (20, 360)]"
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"
# 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("queue_management.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
# Define queue points
queue_region = [(20, 400), (1080, 400), (1080, 360), (20, 360)] # region points
# queue_region = [(20, 400), (1080, 400), (1080, 360), (20, 360), (20, 400)] # polygon points
# Initialize queue manager object
queuemanager = solutions.QueueManager(
show=True, # display the output
model="yolo11n.pt", # path to the YOLO11 model file
region=queue_region, # pass queue region points
)
# Process video
while cap.isOpened():
success, im0 = cap.read()
if not success:
print("Video frame is empty or processing is complete.")
break
results = queuemanager(im0)
# print(results) # access the output
video_writer.write(results.plot_im) # write the processed frame.
cap.release()
video_writer.release()
cv2.destroyAllWindows() # destroy all opened windows
QueueManager
Аргументы
Вот таблица с QueueManager
аргументы:
Аргумент | Тип | По умолчанию | Описание |
---|---|---|---|
model |
str |
None |
Путь к файлу модели Ultralytics YOLO. |
region |
list |
'[(20, 400), (1260, 400)]' |
Список точек, определяющих область подсчета. |
Параметр QueueManagement
Решение также поддерживает некоторые track
аргументы:
Аргумент | Тип | По умолчанию | Описание |
---|---|---|---|
tracker |
str |
'botsort.yaml' |
Указывает алгоритм отслеживания, например, bytetrack.yaml или botsort.yaml . |
conf |
float |
0.3 |
Устанавливает порог уверенности для обнаружений; более низкие значения позволяют отслеживать больше объектов, но могут включать ложные срабатывания. |
iou |
float |
0.5 |
Устанавливает порог Intersection over Union (IoU) для фильтрации перекрывающихся обнаружений. |
classes |
list |
None |
Фильтрует результаты по индексу класса. Например, classes=[0, 2, 3] отслеживает только указанные классы. |
verbose |
bool |
True |
Управляет отображением результатов отслеживания, обеспечивая визуальный вывод отслеживаемых объектов. |
device |
str |
None |
Указывает устройство для инференса (например, cpu , cuda:0 или 0 ). Позволяет пользователям выбирать между CPU, конкретным GPU или другими вычислительными устройствами для выполнения модели. |
Кроме того, доступны следующие параметры визуализации:
Аргумент | Тип | По умолчанию | Описание |
---|---|---|---|
show |
bool |
False |
Если True , отображает аннотированные изображения или видео в окне. Полезно для немедленной визуальной обратной связи во время разработки или тестирования. |
line_width |
None or int |
None |
Указывает ширину линии ограничивающих рамок. Если None , ширина линии автоматически регулируется в зависимости от размера изображения. Обеспечивает визуальную настройку для большей четкости. |
show_conf |
bool |
True |
Отображает оценку достоверности для каждого обнаружения рядом с меткой. Дает представление об уверенности модели для каждого обнаружения. |
show_labels |
bool |
True |
Отображает метки для каждого обнаружения в визуальном выводе. Обеспечивает немедленное понимание обнаруженных объектов. |
Стратегии реализации
При реализации управления очередью с помощью YOLO11 учитывайте следующие рекомендации:
- Стратегическое размещение камер: Разместите камеры так, чтобы охватить всю зону очереди без препятствий.
- Определите подходящие области очереди: Тщательно установите границы очереди на основе физической планировки вашего пространства.
- Отрегулируйте уверенность обнаружения: Точная настройка порога уверенности на основе условий освещения и плотности толпы.
- Интеграция с существующими системами: Подключите свое решение для управления очередью к системам цифровых вывесок или системам уведомления персонала для автоматизированного реагирования.
Часто задаваемые вопросы
Как я могу использовать Ultralytics YOLO11 для управления очередями в реальном времени?
Чтобы использовать Ultralytics YOLO11 для управления очередями в реальном времени, выполните следующие действия:
- Загрузите модель YOLO11 с помощью
YOLO("yolo11n.pt")
. - Захват видеопотока с использованием
cv2.VideoCapture
. - Определите область интереса (ROI) для управления очередью.
- Обрабатывайте кадры для обнаружения объектов и управления очередями.
Вот минимальный пример:
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.mp4")
queue_region = [(20, 400), (1080, 400), (1080, 360), (20, 360)]
queuemanager = solutions.QueueManager(
model="yolo11n.pt",
region=queue_region,
line_width=3,
show=True,
)
while cap.isOpened():
success, im0 = cap.read()
if success:
results = queuemanager(im0)
cap.release()
cv2.destroyAllWindows()
Использование Ultralytics HUB может упростить этот процесс, предоставив удобную платформу для развертывания и управления вашим решением для управления очередью.
Каковы ключевые преимущества использования Ultralytics YOLO11 для управления очередями?
Использование Ultralytics YOLO11 для управления очередями предлагает несколько преимуществ:
- Резкое сокращение времени ожидания: Эффективно организует очереди, сокращая время ожидания клиентов и повышая удовлетворенность.
- Повышение эффективности: Анализирует данные очереди для оптимизации развертывания персонала и операций, тем самым снижая затраты.
- Оповещения в реальном времени: Предоставляет уведомления в реальном времени о длинных очередях, что позволяет быстро принять меры.
- Масштабируемость: Легко масштабируется в различных средах, таких как розничная торговля, аэропорты и здравоохранение.
Для получения более подробной информации изучите наши решения по управлению очередями.
Почему мне следует выбрать Ultralytics YOLO11 вместо таких конкурентов, как TensorFlow или Detectron2, для управления очередями?
Ultralytics YOLO11 имеет ряд преимуществ перед TensorFlow и Detectron2 для управления очередью:
- Производительность в реальном времени: YOLO11 известна своими возможностями обнаружения в реальном времени, предлагая более высокую скорость обработки.
- Простота использования: Ultralytics обеспечивает удобство использования, от обучения до развертывания, через Ultralytics HUB.
- Предварительно обученные модели: Доступ к ряду предварительно обученных моделей, что сводит к минимуму время, необходимое для настройки.
- Поддержка сообщества: Обширная документация и активная поддержка сообщества облегчают решение проблем.
Узнайте, как начать работу с Ultralytics YOLO.
Может ли Ultralytics YOLO11 обрабатывать несколько типов очередей, например, в аэропортах и розничной торговле?
Да, Ultralytics YOLO11 может управлять различными типами очередей, включая очереди в аэропортах и розничной торговле. Настроив QueueManager с определенными регионами и настройками, YOLO11 может адаптироваться к различным схемам и плотности очередей.
Пример для аэропортов:
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,
)
Для получения дополнительной информации о различных приложениях ознакомьтесь с нашим разделом Реальные приложения.
Каковы некоторые реальные применения Ultralytics YOLO11 в управлении очередями?
Ultralytics YOLO11 используется в различных реальных приложениях для управления очередями:
- Розничная торговля: Отслеживает очереди на кассах, чтобы сократить время ожидания и повысить удовлетворенность клиентов.
- Аэропорты: Управляет очередями у билетных касс и пунктов досмотра для более комфортного обслуживания пассажиров.
- Здравоохранение: Оптимизирует поток пациентов в клиниках и больницах.
- Банки: Улучшает обслуживание клиентов за счет эффективного управления очередями в банках.
Ознакомьтесь с нашей статьей в блоге об управлении очередями в реальном мире, чтобы узнать больше о том, как компьютерное зрение преобразует мониторинг очередей в различных отраслях.