Triển khai liền mạch Ultralytics YOLO11 bằng OpenVINO™
Tìm hiểu cách xuất Ultralytics YOLO11 sang định dạng OpenVINO™ giúp kích hoạt suy luận siêu nhanh trên phần cứng Intel®, tăng cường tốc độ, khả năng mở rộng và độ chính xác.

Việc áp dụng AI phụ thuộc vào khả năng truy cập các giải pháp AI, và một phần lớn trong đó là giúp việc triển khai trên phần cứng hiện có trở nên dễ dàng. Chạy các model AI trên GPU (đơn vị xử lý đồ họa) là một lựa chọn tuyệt vời xét về hiệu suất và khả năng xử lý song song.
Tuy nhiên, thực tế là không phải ai cũng có quyền truy cập vào các GPU cao cấp, đặc biệt là trong các môi trường biên hoặc trên máy tính xách tay thông thường. Đó là lý do tại sao việc tối ưu hóa các model để chạy hiệu quả trên phần cứng phổ biến hơn như CPU (đơn vị xử lý trung tâm), GPU tích hợp và NPU (đơn vị xử lý thần kinh) lại quan trọng đến vậy.
Computer vision, chẳng hạn, là một nhánh của AI cho phép máy móc phân tích và hiểu hình ảnh cũng như luồng video theo thời gian thực. Các model Vision AI như Ultralytics YOLO11 hỗ trợ các tác vụ chính như phát hiện đối tượng và phân đoạn thực thể, cung cấp năng lượng cho các ứng dụng từ phân tích bán lẻ đến chẩn đoán y tế.

Hình 1. Sử dụng Ultralytics YOLO11 để phát hiện và phân đoạn đối tượng trong một cửa hàng bán lẻ.
Để làm cho computer vision dễ tiếp cận hơn trên diện rộng, Ultralytics đã phát hành bản tích hợp cập nhật với bộ công cụ OpenVINO, vốn là một dự án mã nguồn mở nhằm tối ưu hóa và chạy suy luận AI trên các CPU, GPU và NPU.
Với bản tích hợp này, việc xuất và triển khai các model YOLO11 trở nên dễ dàng hơn với hiệu suất suy luận nhanh hơn tới 3× trên các CPU cùng hiệu năng được tăng tốc trên các GPU và NPU của Intel. Trong bài viết này, chúng ta sẽ tìm hiểu cách sử dụng gói Python của Ultralytics để xuất các model YOLO11 sang định dạng OpenVINO và sử dụng chúng để suy luận. Hãy cùng bắt đầu nhé!
Tổng quan về Ultralytics YOLO11#
Trước khi đi sâu vào chi tiết của bản tích hợp OpenVINO được Ultralytics hỗ trợ, hãy xem xét kỹ hơn điều gì làm cho YOLO11 trở thành một model computer vision đáng tin cậy và có sức ảnh hưởng. YOLO11 là model mới nhất trong dòng Ultralytics YOLO, mang lại những cải tiến đáng kể cả về tốc độ và độ chính xác.
Một trong những điểm nổi bật chính của nó là hiệu quả. Ví dụ, Ultralytics YOLO11m có ít tham số hơn 22% so với Ultralytics YOLOv8m, nhưng lại đạt được mAP (mean average precision) cao hơn trên tập dữ liệu COCO. Điều này có nghĩa là nó chạy nhanh hơn và đồng thời phát hiện đối tượng chính xác hơn, khiến nó trở nên lý tưởng cho các ứng dụng thời gian thực nơi mà hiệu suất và khả năng phản hồi là yếu tố then chốt.

Hình 2. Các điểm chuẩn hiệu năng của Ultralytics YOLO11.
Ngoài việc phát hiện đối tượng, YOLO11 còn hỗ trợ nhiều tác vụ computer vision nâng cao khác như phân đoạn thực thể, ước 1 lượng tư thế, phân loại hình ảnh, theo dõi đối tượng và phát hiện hộp bao có định hướng. YOLO11 cũng rất thân thiện với nhà phát triển, với gói Python của Ultralytics cung cấp một giao diện đơn giản và nhất quán để huấn luyện, đánh giá và triển khai các model.
Bên cạnh đó, gói Python của Ultralytics hỗ trợ nhiều tích hợp và nhiều định dạng xuất khác nhau, bao gồm OpenVINO, ONNX, TorchScript, cho phép bạn dễ dàng tích hợp YOLO11 vào các pipeline triển khai khác nhau. Cho dù bạn đang nhắm mục tiêu đến cơ sở hạ tầng đám mây, các thiết bị biên hay hệ thống nhúng, quá trình xuất rất trực quan và có thể thích ứng với nhu cầu phần cứng của bạn.
OpenVINO™ là gì?#
OpenVINO™ (Open Visual Inference and Neural Network Optimization) là một bộ công cụ nguồn mở để tối ưu hóa và triển khai inference AI trên nhiều loại phần cứng. Nó cho phép các nhà phát triển chạy các ứng dụng inference hiệu suất cao một cách hiệu quả trên nhiều nền tảng Intel, bao gồm CPU, GPU tích hợp và rời, NPU, và FPGA (field-programmable gate array).
OpenVINO cung cấp một giao diện runtime hợp nhất giúp trừu tượng hóa các khác biệt về phần cứng thông qua các plugin đặc thù cho thiết bị. Điều này có nghĩa là các nhà phát triển có thể viết mã một lần và triển khai trên nhiều mục tiêu phần cứng Intel bằng cách sử dụng một API nhất quán.
Dưới đây là một số tính năng chính khiến OpenVINO trở thành lựa chọn tuyệt vời cho việc triển khai:
- Bộ chuyển đổi model: Công cụ này chuyển đổi và chuẩn bị các model từ các framework phổ biến như PyTorch, ONNX, TensorFlow, PaddlePaddle và các framework khác, để chúng có thể được tối ưu hóa cho suy luận hiệu quả trên phần cứng Intel.
- Heterogeneous execution: Bạn không cần phải viết lại code của mình cho các phần cứng Intel khác nhau. OpenVINO giúp việc chạy cùng một model trên bất kỳ phần cứng được hỗ trợ nào, từ CPU đến GPU, trở nên dễ dàng.
- Quantization support: Bộ công cụ hỗ trợ các định dạng giảm độ chính xác như FP16 (mặc định) và INT8, giúp giảm kích thước model và tăng tốc độ inference mà không ảnh hưởng đáng kể đến độ chính xác.

Hình 3. OpenVINO cho phép đa dạng các tùy chọn triển khai.
Khám phá sự tích hợp giữa Ultralytics và OpenVINO#
Bây giờ chúng ta đã tìm hiểu OpenVINO là gì và tầm quan trọng của nó, hãy cùng thảo luận cách xuất các model Ultralytics YOLO11 sang định dạng OpenVINO và chạy suy luận hiệu quả trên phần cứng Intel.
Bước 1: Cài đặt gói Python của Ultralytics#
Để xuất một model sang định dạng OpenVINO, trước tiên bạn cần cài đặt gói Python của Ultralytics. Gói này cung cấp mọi thứ bạn cần để huấn luyện, đánh giá và xuất các model YOLO, bao gồm cả YOLO11.
Bạn có thể cài đặt nó bằng cách chạy lệnh "pip install ultralytics" trong terminal hoặc command prompt của bạn. Nếu bạn đang làm việc trong một môi trường tương tác như Jupyter Notebook hoặc Google Colab, chỉ cần thêm một dấu chấm than trước lệnh đó.
Ngoài ra, nếu bạn gặp bất kỳ vấn đề nào trong quá trình cài đặt hoặc xuất, tài liệu của Ultralytics và các hướng dẫn khắc phục sự cố là những tài nguyên tuyệt vời giúp bạn giải quyết vấn đề.
Bước 2: Xuất model Ultralytics YOLO11 của bạn sang định dạng OpenVINO#
Sau khi package Ultralytics đã được thiết lập, bước tiếp theo là tải model YOLO11 của bạn và chuyển đổi nó thành định dạng tương thích với OpenVINO.
Trong ví dụ dưới đây, chúng ta đang sử dụng một model YOLO11 được train sẵn (“yolo11n.pt”). Chức năng export được sử dụng để chuyển đổi nó sang định dạng OpenVINO. Sau khi chạy code này, model đã chuyển đổi sẽ được lưu vào một thư mục mới có tên là “yolo11n_openvino_model”.
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
model.export(format="openvino")Bước 3: Chạy inference với model đã export#
Khi model YOLO11 của bạn đã được export sang định dạng OpenVINO, bạn có thể chạy inference theo hai cách: sử dụng package Python của Ultralytics hoặc OpenVINO Runtime gốc.
Sử dụng package Python của Ultralytics#
Model YOLO11 đã export có thể được triển khai dễ dàng bằng cách sử dụng package Python của Ultralytics, như được hiển thị trong đoạn code dưới đây. Phương pháp này rất lý tưởng để thử nghiệm nhanh và triển khai hợp lý trên phần cứng Intel.
Bạn cũng có thể chỉ định thiết bị nào sẽ sử dụng cho inference, chẳng hạn như "intel:cpu", "intel:gpu" hoặc "intel:npu", tùy thuộc vào phần cứng Intel có sẵn trên hệ thống của bạn.
ov_model = YOLO("yolo11n_openvino_model/")
results = ov_model("https://ultralytics.com/images/bus.jpg", device="intel:gpu")Sau khi chạy code trên, hình ảnh đầu ra sẽ được lưu trong thư mục "runs/detect/predict".

Hình 4. Sử dụng model Ultralytics YOLO11 đã xuất để phát hiện đối tượng trong hình ảnh.
Sử dụng OpenVINO Runtime gốc#
Nếu bạn đang tìm kiếm một cách tùy chỉnh để chạy inference, đặc biệt là trong môi trường sản xuất, OpenVINO Runtime mang lại cho bạn nhiều quyền kiểm soát hơn đối với cách model của bạn được thực thi. Nó hỗ trợ các tính năng nâng cao như thực thi bất đồng bộ (chạy nhiều yêu cầu inference song song) và cân bằng tải (phân phối khối lượng công việc inference hiệu quả trên phần cứng Intel).
Để sử dụng runtime gốc, bạn sẽ cần các tệp model đã export: một tệp .xml (xác định cấu trúc mạng) và một tệp .bin (lưu trữ các trọng số đã train của model). Bạn cũng có thể cấu hình các tham số bổ sung như kích thước đầu vào hoặc các bước tiền xử lý tùy thuộc vào ứng dụng của bạn.
Một luồng triển khai điển hình bao gồm việc khởi初始化 OpenVINO core, tải và biên dịch model cho một thiết bị mục tiêu, chuẩn bị đầu vào và thực thi suy luận. Để có các ví dụ chi tiết và hướng dẫn từng bước, hãy tham khảo tài liệu OpenVINO chính thức của Ultralytics.
Tại sao nên chọn sự tích hợp giữa Ultralytics và OpenVINO?#
Trong khi khám phá các bản tích hợp của Ultralytics, bạn sẽ thấy rằng package Python của Ultralytics hỗ trợ export các model YOLO11 sang nhiều định dạng khác nhau như TorchScript, CoreML, TensorRT và ONNX. Vậy, tại sao nên chọn bản tích hợp OpenVINO?
Dưới đây là một số lý do tại sao định dạng export OpenVINO là lựa chọn tuyệt vời để triển khai các model trên phần cứng Intel:
- Hiệu năng cải thiện: Bạn có thể trải nghiệm hiệu suất suy luận nhanh hơn tới 3× trên các CPU Intel, với khả năng tăng tốc bổ sung có sẵn trên các GPU tích hợp và NPU.
- Không cần huấn luyện lại: Bạn có thể xuất trực tiếp các model Ultralytics YOLO11 hiện có của mình sang định dạng OpenVINO mà không cần sửa đổi hoặc huấn luyện lại chúng.
- Được xây dựng cho quy mô lớn: Cùng một model đã xuất có thể được triển khai trên các thiết bị biên công suất thấp và cơ sở hạ tầng đám mây quy mô lớn, đơn giản hóa việc triển khai AI có thể mở rộng.
Bạn cũng có thể đánh giá các điểm chuẩn hiệu suất cho model Ultralytics YOLO11 trên nhiều nền tảng Intel® khác nhau tại OpenVINO™ Model Hub. OpenVINO Model Hub là tài nguyên dành cho các lập trình viên để đánh giá các model AI trên phần cứng Intel và khám phá lợi thế hiệu suất của OpenVINO trên CPU, GPU tích hợp, NPU và card đồ họa rời của Intel.

Hình 5. OpenVINO™ Model Hub: Benchmark hiệu năng cho model Ultralytics YOLO11 trên nhiều nền tảng Intel®.
Các ứng dụng của Ultralytics YOLO11 và định dạng xuất OpenVINO#
Với sự trợ giúp của tích hợp OpenVINO, việc triển khai các model Ultralytics YOLO11 trên phần cứng Intel trong các tình huống thực tế trở nên đơn giản hơn rất nhiều.
Một ví dụ tuyệt vời là bán lẻ thông minh, nơi Ultralytics YOLO11 có thể giúp phát hiện các kệ hàng trống theo thời gian thực, theo dõi các sản phẩm sắp hết hàng và phân tích cách khách hàng di chuyển trong cửa hàng. Điều này cho phép các nhà bán lẻ cải thiện quản lý hàng tồn kho và tối ưu hóa bố cục cửa hàng để tăng cường sự tương tác của người mua sắm.
Tương tự, trong các thành phố thông minh, YOLO11 có thể được sử dụng để giám sát giao thông bằng cách đếm phương tiện, theo dõi người đi bộ và phát hiện các trường hợp vượt đèn đỏ theo thời gian thực. Những thông tin chi tiết này có thể hỗ trợ tối ưu hóa luồng giao thông, cải thiện an toàn đường bộ và hỗ trợ trong các hệ thống xử lý tự động.

Hình 6. Đếm phương tiện bằng cách sử dụng YOLO11.
Một trường hợp sử dụng thú vị khác là kiểm tra công nghiệp, nơi Ultralytics YOLO11 có thể được triển khai trên các dây chuyền sản xuất để tự động phát hiện các lỗi trực quan như thiếu linh kiện, lệch căn chỉnh hoặc hư hỏng bề mặt. Điều này giúp nâng cao hiệu quả, giảm chi phí và hỗ trợ chất lượng sản phẩm tốt hơn.
Các yếu tố quan trọng cần xem xét khi sử dụng bộ công cụ OpenVINO#
Trong quá trình triển khai các model Ultralytics YOLO11 với OpenVINO, dưới đây là một số điều quan trọng cần ghi nhớ để đạt được kết quả tốt nhất:
- Kiểm tra tính tương thích phần cứng: Đảm bảo phần cứng Intel của bạn, cho dù là CPU, GPU tích hợp hay NPU, được hỗ trợ bởi OpenVINO để model có thể chạy hiệu quả.
- Cài đặt đúng trình điều khiển: Nếu bạn đang sử dụng GPU hoặc NPU của Intel, hãy kiểm tra kỹ xem tất cả các trình điều khiển cần thiết đã được cài đặt đúng cách và cập nhật hay chưa.
- Hiểu rõ các đánh đổi về độ chính xác: OpenVINO hỗ trợ các độ chính xác model FP32, FP16 và INT8. Mỗi loại đi kèm với một sự đánh đổi giữa tốc độ và độ chính xác, vì vậy điều quan trọng là phải chọn tùy chọn phù hợp dựa trên các mục tiêu hiệu năng và phần cứng sẵn có của bạn.
Các điểm chính cần lưu ý#
Việc export Ultralytics YOLO11 sang định dạng OpenVINO giúp dễ dàng chạy các model AI thị giác nhanh và hiệu quả trên phần cứng Intel. Bạn có thể triển khai trên các CPU, GPU và NPU mà không cần phải train lại hoặc thay đổi code của mình. Đây là một cách tuyệt vời để tăng cường hiệu suất trong khi vẫn giữ mọi thứ đơn giản và có khả năng mở rộng.
Với sự hỗ trợ được tích hợp sẵn trong package Python của Ultralytics, việc export và chạy inference với OpenVINO trở nên rất đơn giản. Chỉ trong vài bước, bạn có thể tối ưu hóa model của mình và chạy nó trên nhiều nền tảng Intel khác nhau. Cho dù bạn đang làm việc trong lĩnh vực bán lẻ thông minh, giám sát giao thông hay kiểm tra công nghiệp, quy trình này giúp bạn chuyển từ phát triển sang triển khai một cách nhanh chóng và tự tin.
Tham gia cộng đồng YOLO và khám phá kho lưu trữ GitHub của Ultralytics để tìm hiểu thêm về các bản tích hợp có tác động được hỗ trợ bởi Ultralytics. Ngoài ra, hãy xem các tùy chọn cấp phép của Ultralytics để bắt đầu với computer vision ngay hôm nay!
Đăng ký tham gia hội thảo trực tuyến sắp tới của chúng tôi để chứng kiến sự kết hợp giữa Ultralytics và OpenVINO hoạt động trong thực tế, đồng thời truy cập trang web OpenVINO để khám phá các công cụ tối ưu hóa và triển khai AI trên diện rộng.






