Ultralytics YOLO27:

Suy luận trực tiếp với ứng dụng Streamlit sử dụng Ultralytics YOLO26#

Giới thiệu#

Streamlit giúp việc xây dựng và triển khai các ứng dụng web tương tác trở nên đơn giản. Kết hợp với Ultralytics YOLO26, công cụ này cho phép phát hiện đối tượng và phân tích theo thời gian thực ngay trong trình duyệt. Độ chính xác và tốc độ cao của YOLO26 đảm bảo hiệu suất mượt mà cho các luồng video trực tiếp, khiến công cụ này trở nên lý tưởng cho các ứng dụng trong lĩnh vực an ninh, bán lẻ và nhiều lĩnh vực khác.



Watch: How to Build a Live Inference App with Ultralytics YOLO26 & Streamlit | Detection & Segmentation 🚀
Nuôi trồng thủy sảnChăn nuôi
Phát hiện cá bằng Ultralytics YOLO26Phát hiện động vật bằng Ultralytics YOLO26
Phát hiện cá bằng Ultralytics YOLO26Phát hiện động vật bằng Ultralytics YOLO26

Ưu điểm của suy luận trực tiếp#

  • Phát hiện đối tượng theo thời gian thực liền mạch: Streamlit kết hợp với YOLO26 cho phép phát hiện đối tượng theo thời gian thực trực tiếp từ luồng webcam. Điều này cho phép phân tích và thu thập thông tin chuyên sâu ngay lập tức, rất phù hợp cho các ứng dụng yêu cầu phản hồi tức thì.
  • Triển khai thân thiện với người dùng: Giao diện tương tác của Streamlit giúp dễ dàng triển khai và sử dụng ứng dụng mà không cần kiến thức kỹ thuật chuyên sâu. Người dùng có thể bắt đầu suy luận trực tiếp chỉ bằng một cú nhấp chuột, nâng cao khả năng tiếp cận và tính tiện dụng.
  • Sử dụng tài nguyên hiệu quả: Các thuật toán được tối ưu hóa của YOLO26 đảm bảo tốc độ xử lý cao với mức tài nguyên tính toán tối thiểu. Hiệu quả này cho phép suy luận webcam mượt mà và đáng tin cậy ngay cả trên phần cứng tiêu chuẩn, giúp thị giác máy tính tiên tiến trở nên dễ tiếp cận hơn với nhiều người dùng.

Mã ứng dụng Streamlit#

Cài đặt Ultralytics

Trước khi bắt đầu xây dựng ứng dụng, hãy đảm bảo bạn đã cài đặt package Ultralytics Python.

pip install ultralytics
Suy luận bằng Streamlit với Ultralytics YOLO
yolo solutions inference

yolo solutions inference model="path/to/model.pt"

yolo solutions help # list the available solution commands and arguments

Các lệnh này khởi chạy giao diện Streamlit mặc định đi kèm với Ultralytics.

Lệnh này sẽ khởi chạy ứng dụng Streamlit trong trình duyệt web mặc định của bạn. Bạn sẽ thấy tiêu đề chính, phụ đề và thanh bên chứa các tùy chọn cấu hình. Chọn model YOLO26 mong muốn, thiết lập các ngưỡng confidence và NMS, rồi nhấp vào nút "Start" để bắt đầu phát hiện đối tượng theo thời gian thực.

Cách thức hoạt động#

Ở phía sau, ứng dụng Streamlit sử dụng module solutions của Ultralytics để tạo giao diện tương tác. Khi bạn bắt đầu suy luận, ứng dụng sẽ:

  1. Thu video từ webcam hoặc file video đã tải lên
  2. Xử lý từng frame thông qua model YOLO26
  3. Áp dụng tính năng phát hiện đối tượng với các ngưỡng confidence và IoU do bạn chỉ định
  4. Hiển thị cả frame gốc và frame đã chú thích theo thời gian thực
  5. Tùy chọn bật tính năng tracking đối tượng nếu được chọn

Ứng dụng cung cấp giao diện gọn gàng, thân thiện với người dùng, cùng các điều khiển để điều chỉnh tham số model và bắt đầu/dừng suy luận bất kỳ lúc nào.

Kết luận#

Bằng cách làm theo hướng dẫn này, bạn đã tạo thành công một ứng dụng phát hiện đối tượng theo thời gian thực bằng Streamlit và Ultralytics YOLO26. Ứng dụng này cho phép bạn trải nghiệm sức mạnh của YOLO26 trong việc phát hiện đối tượng qua webcam, với giao diện thân thiện với người dùng và khả năng dừng luồng video bất kỳ lúc nào.

Để nâng cao ứng dụng hơn nữa, bạn có thể khám phá việc bổ sung các tính năng như ghi luồng video, lưu các frame đã chú thích hoặc tích hợp với các thư viện thị giác máy tính khác.

FAQ#

  • Việc thiết lập ứng dụng phát hiện đối tượng theo thời gian thực với Streamlit và Ultralytics YOLO26 khá đơn giản. Trước tiên, hãy đảm bảo bạn đã cài đặt package Ultralytics Python bằng lệnh:

    pip install ultralytics

    Sau đó, bạn có thể tạo một ứng dụng Streamlit cơ bản để chạy suy luận trực tiếp:

    Ứng dụng Streamlit
    from ultralytics import solutions
    
    inf = solutions.Inference(
        model="yolo26n.pt",  # you can use any model that Ultralytics supports, e.g., YOLO26, or a custom-trained model
    )
    
    inf.inference()
    
    # Make sure to run the file using command `streamlit run path/to/file.py`

    Để biết thêm chi tiết về thiết lập thực tế, hãy tham khảo phần Mã ứng dụng Streamlit trong tài liệu.

  • Sử dụng Ultralytics YOLO26 với Streamlit để phát hiện đối tượng theo thời gian thực mang lại một số ưu điểm:

    • Phát hiện theo thời gian thực liền mạch: Đạt được khả năng phát hiện đối tượng theo thời gian thực với độ chính xác cao trực tiếp từ luồng webcam.
    • Giao diện thân thiện với người dùng: Giao diện trực quan của Streamlit cho phép sử dụng và triển khai dễ dàng mà không cần kiến thức kỹ thuật chuyên sâu.
    • Hiệu quả tài nguyên: Các thuật toán được tối ưu hóa của YOLO26 đảm bảo tốc độ xử lý cao với mức tài nguyên tính toán tối thiểu.

    Tìm hiểu thêm về những lợi ích này trong phần Ưu điểm của suy luận trực tiếp.

  • Sau khi viết code cho ứng dụng Streamlit tích hợp Ultralytics YOLO26, bạn có thể triển khai ứng dụng bằng cách chạy lệnh:

    streamlit run path/to/file.py

    Lệnh này sẽ khởi chạy ứng dụng trong trình duyệt web mặc định của bạn, cho phép bạn chọn các model YOLO26, thiết lập các ngưỡng confidence và NMS, rồi bắt đầu phát hiện đối tượng theo thời gian thực chỉ bằng một cú nhấp chuột. Để xem hướng dẫn chi tiết, hãy tham khảo phần Mã ứng dụng Streamlit.

  • Phát hiện đối tượng theo thời gian thực bằng Streamlit và Ultralytics YOLO26 có thể được ứng dụng trong nhiều lĩnh vực:

    Để tìm hiểu các trường hợp sử dụng và ví dụ chuyên sâu hơn, hãy khám phá Ultralytics Solutions.

  • Ultralytics YOLO26 mang lại một số cải tiến so với các model trước đây như YOLOv5 và RCNNs:

    • Tốc độ và độ chính xác cao hơn: Hiệu suất được cải thiện cho các ứng dụng thời gian thực.
    • Dễ sử dụng: Đơn giản hóa giao diện và quy trình triển khai.
    • Hiệu quả tài nguyên: Được tối ưu hóa để đạt tốc độ tốt hơn với yêu cầu tính toán tối thiểu.

    Để xem so sánh toàn diện, hãy tham khảo Tài liệu Ultralytics YOLO26 và các bài đăng blog liên quan thảo luận về hiệu suất model.

Bình luận