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 điều này với Ultralytics YOLO26 cho phép phát hiện đối tượng và phân tích thời gian thực trực tiếp trong trình duyệt của bạn. Độ 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, làm cho nó trở nên lý tưởng cho các ứng dụng trong bảo mật, bán lẻ và hơn thế nữa.
Watch: How to Build a Live Inference App with Ultralytics YOLO26 & Streamlit | Detection & Segmentation 🚀
| Nuôi trồng thủy sản | Chăn nuôi |
|---|---|
![]() | ![]() |
| Nhận diện cá sử dụng Ultralytics YOLO26 | Nhận diện động vật sử dụng Ultralytics YOLO26 |
Ưu điểm của Suy luận trực tiếp#
- Phát hiện đối tượng 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 thời gian thực trực tiếp từ nguồn cấp dữ liệu webcam của bạn. Điều này cho phép phân tích và đưa ra thông tin chi tiết tức thì, làm cho nó trở nên lý tưởng 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ỉ với một cú nhấp chuột, tăng cường khả năng tiếp cận và tính dễ sử dụng.
- Tận 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 xử lý tốc độ cao với 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 computer vision tiên tiến tiếp cận được với nhiều đối tượng hơn.
Mã ứng dụng Streamlit#
Trước khi bắt đầu xây dựng ứng dụng, hãy đảm bảo bạn đã cài đặt gói Ultralytics Python.
pip install ultralyticsyolo solutions inference
yolo solutions inference model="path/to/model.pt"
yolo solutions help # list the available solution commands and argumentsCác lệnh này khởi chạy giao diện Streamlit mặc định đi kèm với Ultralytics.
Thao tác 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, tiêu đề phụ và thanh bên với các tùy chọn cấu hình. Chọn model YOLO26 mong muốn của bạn, đặt ngưỡng độ tin cậy và ngưỡng NMS, rồi nhấp vào nút "Start" để bắt đầu phát hiện đối tượng thời gian thực.
Cách thức hoạt động#
Bên trong, ứng dụng Streamlit sử dụng module giải pháp 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ẽ:
- Ghi lại video từ webcam hoặc tệp video được tải lên
- Xử lý từng khung hình thông qua model YOLO26
- Áp dụng nhận diện đối tượng với ngưỡng tin cậy và ngưỡng IoU đã chỉ định của bạn
- Hiển thị cả khung hình gốc và khung hình đã chú thích theo thời gian thực
- Tùy chọn cho phép theo dõi đối tượng nếu được chọn
Ứng dụng cung cấp giao diện sạch sẽ, thân thiện với người dùng cùng các nút điều khiển để điều chỉnh tham số model và bắt đầu/dừng suy luận bất cứ 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 ứng dụng nhận diện đối tượng thời gian thực bằng cách sử dụ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 thô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 hơn nữa, bạn có thể khám phá thêm các tính năng như ghi lại luồng video, lưu các khung hình được chú thích hoặc tích hợp với các thư viện computer vision khác.
Câu hỏi thường gặp#
Việc thiết lập ứng dụng nhận diện đối tượng thời gian thực với Streamlit và Ultralytics YOLO26 rất đơn giản. Trước tiên, hãy đảm bảo bạn đã cài đặt gói Ultralytics Python bằng cách sử dụng:
pip install ultralyticsSau đó, 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 Streamlitfrom ultralytics import solutions inf = solutions.Inference( model="yolo26n.pt", # you can use any model that Ultralytics supports, e.g., YOLO26, YOLOv10 ) 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ã nguồn ứng dụng Streamlit trong tài liệu.
Sử dụng Ultralytics YOLO26 với Streamlit để nhận diện đối tượng thời gian thực mang lại một số ưu điểm:
- Phát hiện thời gian thực liền mạch: Đạt được độ chính xác cao, phát hiện đối tượng thời gian thực trực tiếp từ nguồn cấp dữ liệu 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 xử lý tốc độ cao với tài nguyên tính toán tối thiểu.
Tìm hiểu thêm về các lợi ích này trong phần Ưu điểm của suy luận trực tiếp.
Sau khi viết mã ứ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:
streamlit run path/to/file.pyLệ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 model YOLO26, đặt độ tin cậy và ngưỡng NMS, đồng thời bắt đầu phát hiện đối tượng thời gian thực chỉ với một cú nhấp chuột đơn giản. Để có hướng dẫn chi tiết, hãy tham khảo phần Mã nguồn ứng dụng Streamlit.
Nhận diện đối tượng thời gian thực bằng Streamlit và Ultralytics YOLO26 có thể được áp dụng trong nhiều lĩnh vực:
- Bảo mật: Giám sát thời gian thực đối với truy cập trái phép và các hệ thống cảnh báo bảo mật.
- Bán lẻ: Đếm khách hàng, quản lý kệ hàng và theo dõi khoảng không quảng cáo.
- Động vật hoang dã và Nông nghiệp: Giám sát động vật và tình trạng cây trồng cho các nỗ lực bảo tồn.
Để biết thêm các trường hợp sử dụng có chiều sâu và ví dụ, hãy khám phá Giải pháp của Ultralytics.
Ultralytics YOLO26 cung cấp một số cải tiến so với các model trước đây như YOLOv5 và RCNN:
- Tốc độ và Độ chính xác cao hơn: Cải thiện hiệu suất cho các ứng dụng thời gian thực.
- Dễ sử dụng: Giao diện và quy trình triển khai được đơn giản hóa.
- Hiệu quả tài nguyên: 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.
Để có sự so sánh toàn diện, hãy kiểm tra Tài liệu Ultralytics YOLO26 và các bài đăng trên blog liên quan thảo luận về hiệu suất model.

