Xuất và tối ưu hóa Ultralytics YOLOv8 để suy luận trên Intel OpenVINO
Tối ưu hóa mô hình Ultralytics YOLOv8 của bạn để suy luận bằng OpenVINO. Làm theo hướng dẫn của chúng tôi để chuyển đổi các mô hình PyTorch sang ONNX và tối ưu hóa chúng cho các ứng dụng thời gian thực.

Trong bài viết này, chúng ta sẽ tìm hiểu cách xuất và tối ưu hóa mô hình Ultralytics YOLOv8 đã được huấn luyện trước hoặc huấn luyện tùy chỉnh để inference bằng OpenVINO. Nếu bạn đang sử dụng hệ thống dựa trên Intel, dù là CPU hay GPU, hướng dẫn này sẽ chỉ cho bạn cách tăng tốc mô hình đáng kể với nỗ lực tối thiểu.
Tại sao nên tối ưu hóa Ultralytics YOLOv8 với OpenVINO?#
Việc tối ưu hóa model Ultralytics YOLOv8 của bạn với OpenVINO có thể mang lại tốc độ suy luận tăng gấp 3 lần, đặc biệt là khi bạn chạy trên CPU Intel. Sự cải thiện hiệu suất này có thể tạo ra sự khác biệt lớn trong các ứng dụng thời gian thực, từ object detection đến segmentation và các hệ thống bảo mật.
Các bước để export và tối ưu hóa model Ultralytics YOLOv8 của bạn#
Tìm hiểu về quy trình#
Đầu tiên, hãy phân tích quy trình này. Chúng ta sẽ chuyển đổi một mô hình PyTorch sang ONNX và sau đó tối ưu hóa nó bằng OpenVINO. Quy trình này bao gồm một vài bước đơn giản và có thể áp dụng cho nhiều mô hình cũng như định dạng khác nhau bao gồm TensorFlow, PyTorch, Caffe và ONNX.
Xuất mô hình#
Đi vào phần documentation của Ultralytics, chúng ta thấy rằng việc xuất mô hình YOLOv8 liên quan đến việc sử dụng phương thức export từ framework Ultralytics. Phương thức này cho phép chúng ta chuyển đổi mô hình từ PyTorch sang ONNX, và cuối cùng là tối ưu hóa cho OpenVINO. Kết quả là một mô hình chạy nhanh hơn đáng kể, tận dụng phần cứng mạnh mẽ của Intel.
Cài đặt các phần phụ thuộc#
Trước khi chạy tập lệnh xuất, bạn cần đảm bảo rằng tất cả các phần phụ thuộc cần thiết đã được cài đặt. Chúng bao gồm thư viện Ultralytics, ONNX và OpenVINO. Việc cài đặt các gói này là một quy trình đơn giản có thể được thực hiện thông qua pip, trình cài đặt gói Python.
Chạy tập lệnh xuất#
Sau khi thiết lập môi trường, bạn có thể chạy tập lệnh xuất của mình. Tập lệnh này sẽ chuyển đổi mô hình PyTorch của bạn sang ONNX và sau đó sang OpenVINO. Quy trình này rất đơn giản và chỉ cần gọi một hàm duy nhất để xử lý việc xuất. Framework Ultralytics giúp việc chuyển đổi và tối ưu hóa các mô hình của bạn trở nên dễ dàng, đảm bảo bạn đạt được hiệu suất tốt nhất mà không gặp rắc rối.

Hình 1. Nicolai Nielsen trình bày cách chạy script xuất mô hình.
So sánh hiệu suất#
Sau khi xuất, việc so sánh hiệu suất giữa mô hình gốc và mô hình đã tối ưu hóa là rất quan trọng. Bằng cách benchmark thời gian inference của cả hai mô hình, bạn có thể thấy rõ những cải thiện về hiệu suất. Thông thường, mô hình OpenVINO sẽ cho thấy thời gian inference giảm đáng kể so với mô hình PyTorch gốc. Điều này đặc biệt đúng với các mô hình lớn hơn, nơi mà sự cải thiện hiệu suất rõ rệt nhất.
Ứng dụng và lợi ích thực tế#
Tối ưu hóa các model Ultralytics YOLOv8 với OpenVINO đặc biệt có lợi cho các ứng dụng đòi hỏi xử lý thời gian thực. Dưới đây là một số ví dụ:
- Security Systems: Phát hiện vật thể theo thời gian thực có thể cảnh báo nhân viên an ninh ngay lập tức, nâng cao độ an toàn và khả năng phản hồi.
- Automated Vehicles: Tốc độ inference nhanh hơn cải thiện khả năng phản hồi của hệ thống lái tự động, giúp chúng an toàn và đáng tin cậy hơn.
- Healthcare: Xử lý hình ảnh nhanh chóng cho các công cụ chẩn đoán có thể cứu sống người bệnh bằng cách cung cấp kết quả nhanh hơn, cho phép can thiệp kịp thời.
Bằng cách thực hiện các tối ưu hóa này, bạn không chỉ cải thiện hiệu suất mà còn nâng cao độ tin cậy và hiệu quả cho các ứng dụng của mình. Điều này có thể dẫn đến trải nghiệm người dùng tốt hơn, tăng năng suất và nhiều giải pháp sáng tạo hơn.
Tóm tắt#
Export và tối ưu hóa một model Ultralytics YOLOv8 cho OpenVINO là một cách mạnh mẽ để tận dụng phần cứng Intel cho các ứng dụng AI nhanh hơn và hiệu quả hơn. Chỉ với một vài bước đơn giản, bạn có thể biến đổi hiệu suất của model và áp dụng nó vào các kịch bản thực tế một cách hiệu quả.
Hãy nhớ xem thêm các hướng dẫn và tài liệu từ Ultralytics để tiếp tục nâng cao các dự án AI của bạn. Hãy truy cập GitHub repository của chúng tôi và tham gia cộng đồng Ultralytics để có thêm thông tin chi tiết và cập nhật. Hãy cùng nhau đổi mới!
Hãy nhớ rằng, tối ưu hóa các mô hình của bạn không chỉ là về tốc độ—mà còn là về việc mở ra những khả năng mới và đảm bảo các giải pháp AI của bạn mạnh mẽ, hiệu quả và sẵn sàng cho tương lai.






