Ultralytics YOLO27:

Quản lý hàng đợi sử dụng Ultralytics YOLO26#

Quản lý hàng đợi là gì?#

Open Queue Management In Colab

Quản lý hàng đợi bằng Ultralytics YOLO26 bao gồm việc tổ chức và kiểm soát các hàng người hoặc phương tiện nhằm giảm thời gian chờ và nâng cao hiệu quả. Đây là việc tối ưu hóa hàng đợi để cải thiện mức độ hài lòng của khách hàng và hiệu suất hệ thống trong nhiều môi trường như cửa hàng bán lẻ, ngân hàng, sân bay và cơ sở y tế.



Watch: How to Build a Queue Management System with Ultralytics YOLO26 | Real-Time Queue Analytics 🚀

Ưu điểm của quản lý hàng đợi#

  • Giảm thời gian chờ: Các hệ thống quản lý hàng đợi tổ chức hàng đợi hiệu quả, giảm thiểu thời gian chờ của khách hàng. Điều này giúp cải thiện mức độ hài lòng vì khách hàng dành ít thời gian chờ hơn và có nhiều thời gian tương tác với sản phẩm hoặc dịch vụ hơn.
  • Tăng hiệu quả: Việc triển khai quản lý hàng đợi cho phép doanh nghiệp phân bổ tài nguyên hiệu quả hơn. Bằng cách phân tích dữ liệu hàng đợi và tối ưu hóa việc bố trí nhân viên, doanh nghiệp có thể tinh gọn hoạt động, giảm chi phí và cải thiện năng suất tổng thể.
  • Thông tin chi tiết theo thời gian thực: Tính năng quản lý hàng đợi được hỗ trợ bởi YOLO26 cung cấp dữ liệu tức thời về độ dài hàng đợi và thời gian chờ, giúp người quản lý nhanh chóng đưa ra quyết định sáng suốt.
  • Cải thiện trải nghiệm khách hàng: Bằng cách giảm sự khó chịu do phải chờ lâu, doanh nghiệp có thể cải thiện đáng kể mức độ hài lòng và lòng trung thành của khách hàng.

Ứng dụng thực tế#

LogisticsBán lẻ
Quản lý hàng đợi tại quầy vé sân bay bằng Ultralytics YOLO26Giám sát hàng đợi trong đám đông bằng Ultralytics YOLO26
Quản lý hàng đợi tại quầy vé sân bay bằng Ultralytics YOLO26Giám sát hàng đợi trong đám đông bằng Ultralytics YOLO26

Quản lý hàng đợi bằng YOLO26#

Giải pháp QueueManager đếm các đối tượng nằm trong một vùng xác định ở mỗi frame, cung cấp độ dài hàng đợi theo thời gian thực để bạn có thể ghi vào video đầu ra. Truyền vào một vùng đa giác bao phủ khu vực chờ, sau đó chạy giải pháp trên nguồn video bằng Python API hoặc CLI.

Quản lý hàng đợi bằng 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)]"

Các argument của QueueManager#

Dưới đây là bảng các tham số của QueueManager:

Đối sốKiểuMặc địnhMô tả
modelstrNoneĐường dẫn đến file model Ultralytics YOLO.
regionlist hoặc dictNoneCác điểm xác định vùng quan tâm, có thể là một list các tuple (x, y) hoặc một dictionary ánh xạ tên vùng với list điểm cho nhiều vùng (chỉ dành cho RegionCounter). Khi None, các solution yêu cầu vùng sẽ sử dụng vùng mặc định được định nghĩa sẵn.
line_widthint2Độ dày đường kẻ cho các box, keypoint và số lượng mà solution vẽ.
verboseboolTrueBật log theo từng frame của solution, gồm kích thước input, số lượng class và tốc độ xử lý. Riêng lệnh tracking luôn ở chế độ im lặng.

Giải pháp QueueManager cũng hỗ trợ các đối số track:

Đối sốKiểuMặc địnhMô tả
trackerstr'botsort.yaml'Chỉ định thuật toán theo dõi cần sử dụng. Các tùy chọn tích hợp sẵn: botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.yaml.
conffloat0.25Thiết lập ngưỡng độ tin cậy cho các detection; giá trị thấp hơn cho phép theo dõi nhiều đối tượng hơn nhưng có thể bao gồm các false positive.
ioufloat0.7Thiết lập ngưỡng Intersection over Union (IoU) để lọc các detection chồng lấn.
classeslistNoneLọc kết quả theo chỉ số class. Ví dụ, classes=[0, 2, 3] chỉ theo dõi các class được chỉ định.
devicestrNoneChỉ định thiết bị dùng cho inference (ví dụ: cpu, cuda:0 hoặc 0). Cho phép người dùng lựa chọn giữa CPU, một GPU cụ thể hoặc các thiết bị tính toán khác để thực thi model.
imgszint or tuple640Kích thước ảnh inference mục tiêu: một số nguyên cho ảnh vuông hoặc một cặp (height, width). Các hình dạng được điều chỉnh theo stride của model.
max_detint300Số lượng detection tối đa được giữ lại trên mỗi frame trước khi tracking, giới hạn các đối tượng mà một solution xử lý trong các scene đông đúc.
quantizeint or strNoneĐộ chính xác inference: 16 (FP16) hoặc 32/không thiết lập (FP32) đối với các model PyTorch và TorchScript; các định dạng khác tính toán ở độ chính xác mà artifact và runtime của chúng chọn. Thay thế cờ half đã bị loại bỏ.

Ngoài ra, các tham số trực quan hóa sau đây cũng khả dụng:

Đối sốKiểuMặc địnhMô tả
showboolFalseNếu True, hiển thị image hoặc video đã được annotate trong một cửa sổ. Hữu ích để nhận phản hồi trực quan ngay lập tức trong quá trình development hoặc testing.
show_confboolTrueHiển thị score confidence cho mỗi detection bên cạnh label. Cung cấp thông tin về mức độ chắc chắn của model đối với từng detection.
show_labelsboolTrueHiển thị label cho mỗi detection trong output trực quan. Cung cấp nhận biết tức thì về các object được phát hiện.

Chiến lược triển khai#

Khi triển khai quản lý hàng đợi với YOLO26, hãy cân nhắc các phương pháp hay nhất sau:

  1. Bố trí camera chiến lược: Đặt camera sao cho ghi lại toàn bộ khu vực hàng đợi mà không bị che khuất.
  2. Xác định vùng hàng đợi phù hợp: Cẩn thận thiết lập ranh giới hàng đợi dựa trên bố cục thực tế của không gian.
  3. Điều chỉnh độ tin cậy phát hiện: Tinh chỉnh ngưỡng độ tin cậy dựa trên điều kiện ánh sáng và mật độ đám đông.
  4. Tích hợp với các hệ thống hiện có: Kết nối giải pháp quản lý hàng đợi với hệ thống bảng hiệu kỹ thuật số hoặc thông báo cho nhân viên để tự động hóa phản hồi.

FAQ#

  • Để sử dụng Ultralytics YOLO26 cho quản lý hàng đợi theo thời gian thực, bạn có thể thực hiện các bước sau:

    1. Tải model YOLO26 bằng YOLO("yolo26n.pt").
    2. Thu video bằng cv2.VideoCapture.
    3. Xác định vùng quan tâm (ROI) để quản lý hàng đợi.
    4. Xử lý các frame để phát hiện đối tượng và quản lý hàng đợi.

    Dưới đây là một ví dụ tối giản:

    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="yolo26n.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()

    Tận dụng Ultralytics Platform có thể đơn giản hóa quy trình này bằng cách cung cấp một nền tảng thân thiện với người dùng để triển khai và quản lý giải pháp quản lý hàng đợi của bạn.

  • Sử dụng Ultralytics YOLO26 để quản lý hàng đợi mang lại một số lợi ích:

    • Giảm mạnh thời gian chờ: Tổ chức hàng đợi hiệu quả, giảm thời gian khách hàng phải chờ và nâng cao mức độ hài lòng.
    • Nâng cao hiệu quả: Phân tích dữ liệu hàng đợi để tối ưu hóa việc bố trí nhân viên và hoạt động, qua đó giảm chi phí.
    • Cảnh báo theo thời gian thực: Cung cấp thông báo theo thời gian thực khi hàng đợi dài, cho phép can thiệp nhanh chóng.
    • Khả năng mở rộng: Dễ dàng mở rộng trên nhiều môi trường khác nhau như cửa hàng bán lẻ, sân bay và cơ sở y tế.

    Để biết thêm chi tiết, hãy khám phá các giải pháp Quản lý hàng đợi của chúng tôi.

  • Ultralytics YOLO26 có một số ưu điểm so với TensorFlow và Detectron2 trong quản lý hàng đợi:

    • Hiệu suất theo thời gian thực: YOLO26 nổi tiếng với khả năng phát hiện theo thời gian thực, mang lại tốc độ xử lý nhanh hơn.
    • Dễ sử dụng: Ultralytics cung cấp trải nghiệm thân thiện với người dùng, từ huấn luyện đến triển khai, thông qua Ultralytics Platform.
    • Model được huấn luyện trước: Có thể truy cập nhiều model được huấn luyện trước, giảm thiểu thời gian cần thiết để thiết lập.
    • Hỗ trợ cộng đồng: Tài liệu phong phú và sự hỗ trợ tích cực từ cộng đồng giúp việc giải quyết vấn đề trở nên dễ dàng hơn.

    Tìm hiểu cách bắt đầu với Ultralytics YOLO.

  • Có, Ultralytics YOLO26 có thể quản lý nhiều loại hàng đợi khác nhau, bao gồm hàng đợi tại sân bay và trong môi trường bán lẻ. Bằng cách cấu hình QueueManager với các vùng và thiết lập cụ thể, YOLO26 có thể thích ứng với các bố cục và mật độ hàng đợi khác nhau.

    Ví dụ cho sân bay:

    queue_region_airport = [(50, 600), (1200, 600), (1200, 550), (50, 550)]
    queue_airport = solutions.QueueManager(
        model="yolo26n.pt",
        region=queue_region_airport,
        line_width=3,
    )

    Để biết thêm thông tin về các ứng dụng đa dạng, hãy xem mục Ứng dụng thực tế của chúng tôi.

  • Ultralytics YOLO26 được sử dụng trong nhiều ứng dụng thực tế để quản lý hàng đợi:

    • Bán lẻ: Giám sát hàng người xếp hàng thanh toán để giảm thời gian chờ và cải thiện mức độ hài lòng của khách hàng.
    • Sân bay: Quản lý hàng đợi tại quầy vé và điểm kiểm tra an ninh để mang lại trải nghiệm thuận tiện hơn cho hành khách.
    • Y tế: Tối ưu hóa luồng bệnh nhân tại các phòng khám và bệnh viện.
    • Ngân hàng: Nâng cao dịch vụ khách hàng bằng cách quản lý hàng đợi hiệu quả tại các ngân hàng.

    Hãy xem bài blog về quản lý hàng đợi trong thực tế của chúng tôi để tìm hiểu thêm về cách computer vision đang chuyển đổi hoạt động giám sát hàng đợi trong nhiều ngành.

Bình luận