Xuất mô hình YOLO26 của Ultralytics sang định dạng Rockchip RKNN
Khi triển khai các mô hình thị giác máy tính trên các thiết bị nhúng, đặc biệt là những thiết bị sử dụng bộ vi xử lý Rockchip, việc sở hữu một định dạng mô hình tương thích là rất cần thiết. Xuất các mô hình Ultralytics YOLO26 sang định dạng RKNN đảm bảo hiệu suất tối ưu và khả năng tương thích với phần cứng của Rockchip. Hướng dẫn này sẽ đưa bạn qua quá trình chuyển đổi mô hình YOLO26 sang định dạng RKNN, cho phép triển khai hiệu quả trên các nền tảng Rockchip.
Hướng dẫn này đã được thử nghiệm với Radxa Rock 5B dựa trên Rockchip RK3588 và Radxa Zero 3W dựa trên Rockchip RK3566. Nó được dự kiến sẽ hoạt động trên các thiết bị dựa trên Rockchip khác hỗ trợ rknn-toolkit2 như RK3576, RK3568, RK3562, RK2118 và RV1126B. Các mục tiêu chỉ hỗ trợ suy luận INT8 (RV1103, RV1106, RV1103B, RV1106B) hiện chưa được hỗ trợ vì tính năng xuất RKNN của Ultralytics hiện chỉ tạo ra các mô hình FP16.
Rockchip là gì?
Nổi tiếng với việc cung cấp các giải pháp linh hoạt và tiết kiệm năng lượng, Rockchip thiết kế các Hệ thống trên Chip (SoCs) tiên tiến hỗ trợ cho nhiều thiết bị điện tử tiêu dùng, ứng dụng công nghiệp và công nghệ AI. Với kiến trúc dựa trên ARM, các bộ xử lý thần kinh (NPU) tích hợp và hỗ trợ đa phương tiện độ phân giải cao, các SoC của Rockchip mang lại hiệu suất vượt trội cho các thiết bị như máy tính bảng, TV thông minh, hệ thống IoT và các ứng dụng edge AI. Các công ty như Radxa, ASUS, Pine64, Orange Pi, Odroid, Khadas và Banana Pi cung cấp nhiều sản phẩm dựa trên các SoC của Rockchip, giúp mở rộng hơn nữa phạm vi tiếp cận và tầm ảnh hưởng của chúng trên nhiều thị trường đa dạng.
RKNN Toolkit
RKNN Toolkit là một bộ công cụ và thư viện được Rockchip cung cấp để hỗ trợ việc triển khai các mô hình học sâu trên các nền tảng phần cứng của họ. RKNN, hay Rockchip Neural Network, là định dạng độc quyền được sử dụng bởi các công cụ này. Các mô hình RKNN được thiết kế để tận dụng tối đa khả năng tăng tốc phần cứng từ NPU (Neural Processing Unit) của Rockchip, đảm bảo hiệu suất cao cho các tác vụ AI trên các thiết bị như RK3588, RK3566, RV1103, RV1106 và các hệ thống sử dụng chip Rockchip khác.
Các tính năng chính của mô hình RKNN
Các mô hình RKNN mang lại một số lợi thế khi triển khai trên nền tảng Rockchip:
- Tối ưu hóa cho NPU: Các mô hình RKNN được tối ưu hóa đặc biệt để chạy trên các NPU của Rockchip, đảm bảo hiệu suất và hiệu quả tối đa.
- Độ trễ thấp: Định dạng RKNN giúp giảm thiểu độ trễ suy luận, điều này rất quan trọng đối với các ứng dụng thời gian thực trên thiết bị edge.
- Tùy biến theo nền tảng: Các mô hình RKNN có thể được điều chỉnh cho các nền tảng Rockchip cụ thể, cho phép khai thác tốt hơn các tài nguyên phần cứng.
- Hiệu quả năng lượng: Bằng cách tận dụng phần cứng NPU chuyên dụng, các mô hình RKNN tiêu thụ ít điện năng hơn so với xử lý dựa trên CPU hoặc GPU, giúp kéo dài thời lượng pin cho các thiết bị di động.
Flash OS vào phần cứng Rockchip
Bước đầu tiên sau khi sở hữu một thiết bị sử dụng chip Rockchip là flash một hệ điều hành để phần cứng có thể khởi động vào môi trường làm việc. Trong hướng dẫn này, chúng tôi sẽ chỉ dẫn tới các hướng dẫn bắt đầu cho hai thiết bị đã được thử nghiệm là Radxa Rock 5B và Radxa Zero 3W.
Xuất sang RKNN: Chuyển đổi mô hình YOLO26 của bạn
Xuất mô hình Ultralytics YOLO26 sang định dạng RKNN và chạy suy luận với mô hình đã xuất.
Hãy đảm bảo sử dụng máy tính Linux dựa trên X86 để xuất mô hình sang RKNN vì việc xuất trên các thiết bị dựa trên Rockchip (ARM64) không được hỗ trợ.
Cài đặt
Để cài đặt các gói cần thiết, hãy chạy:
!!! Tip "Cài đặt"
# Install the required package for YOLO26
pip install ultralyticsĐể biết hướng dẫn chi tiết và các phương pháp thực hành tốt nhất liên quan đến quy trình cài đặt, hãy xem hướng dẫn Cài đặt Ultralytics của chúng tôi. Trong quá trình cài đặt các gói cần thiết cho YOLO26, nếu gặp bất kỳ khó khăn nào, hãy tham khảo hướng dẫn về các vấn đề phổ biến để tìm giải pháp và mẹo xử lý.
Cách sử dụng
Việc xuất hiện chỉ được hỗ trợ cho các mô hình phát hiện (detection). Hỗ trợ cho nhiều loại mô hình hơn sẽ sớm được bổ sung trong tương lai.
from ultralytics import YOLO
# Load the YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to RKNN format
# 'name' can be one of rk3588, rk3576, rk3566, rk3568, rk3562, rk2118, rv1126b (FP16). INT8-only targets rv1103, rv1106, rv1103b, rv1106b are not yet supported.
model.export(format="rknn", name="rk3588") # creates '/yolo26n_rknn_model'Các đối số Xuất
| Đối số | Loại | Mặc định | Mô tả |
|---|---|---|---|
format | str | 'rknn' | Định dạng mục tiêu cho model đã xuất, xác định khả năng tương thích với các môi trường triển khai khác nhau. |
imgsz | int hoặc tuple | 640 | Kích thước hình ảnh mong muốn cho đầu vào của model. Có thể là một số nguyên cho hình ảnh vuông hoặc một tuple (height, width) cho các kích thước cụ thể. |
batch | int | 1 | Chỉ định kích thước suy luận batch của model xuất hoặc số lượng ảnh tối đa mà model xuất sẽ xử lý đồng thời ở chế độ predict. |
name | str | 'rk3588' | Chỉ định mục tiêu Rockchip. Các loại hỗ trợ FP16: rk3588, rk3576, rk3566, rk3568, rk3562, rk2118, rv1126b. Các mục tiêu chỉ dùng INT8 (rv1103, rv1106, rv1103b, rv1106b) hiện chưa được hỗ trợ. |
device | str | None | Chỉ định thiết bị để xuất: GPU (device=0), CPU (device=cpu). |
Vui lòng đảm bảo sử dụng máy Linux x86 khi xuất sang RKNN.
Để biết thêm chi tiết về quy trình xuất, hãy truy cập trang tài liệu Ultralytics về xuất model.
Triển khai các mô hình YOLO26 RKNN đã xuất
Sau khi bạn đã xuất thành công các mô hình Ultralytics YOLO26 sang định dạng RKNN, bước tiếp theo là triển khai các mô hình này trên các thiết bị sử dụng chip Rockchip.
Cài đặt
Để cài đặt các gói cần thiết, hãy chạy:
!!! Tip "Cài đặt"
# Install the required package for YOLO26
pip install ultralyticsCách sử dụng
from ultralytics import YOLO
# Load the exported RKNN model
rknn_model = YOLO("./yolo26n_rknn_model")
# Run inference
results = rknn_model("https://ultralytics.com/images/bus.jpg")Nếu bạn gặp thông báo nhật ký cho biết phiên bản runtime RKNN không khớp với phiên bản RKNN Toolkit và quá trình suy luận thất bại, vui lòng thay thế /usr/lib/librknnrt.so bằng tệp librknnrt.so chính thức.

Ứng dụng trong thế giới thực
Các thiết bị sử dụng chip Rockchip với các mô hình YOLO26 RKNN có thể được sử dụng trong nhiều ứng dụng khác nhau:
- Giám sát thông minh: Triển khai các hệ thống phát hiện đối tượng hiệu quả cho giám sát an ninh với mức tiêu thụ điện năng thấp.
- Tự động hóa công nghiệp: Thực hiện kiểm soát chất lượng và phát hiện lỗi trực tiếp trên các thiết bị nhúng.
- Phân tích bán lẻ: Theo dõi hành vi khách hàng và quản lý hàng tồn kho trong thời gian thực mà không phụ thuộc vào đám mây.
- Nông nghiệp thông minh: Giám sát sức khỏe cây trồng và phát hiện sâu bệnh bằng thị giác máy tính trong nông nghiệp.
- Robot tự hành: Kích hoạt điều hướng dựa trên thị giác và phát hiện chướng ngại vật trên các nền tảng có tài nguyên hạn chế.
Các Benchmark
Các điểm chuẩn YOLO26 dưới đây được thực hiện bởi đội ngũ Ultralytics trên Radxa Rock 5B dựa trên Rockchip RK3588 với định dạng mô hình rknn, đo lường tốc độ và độ chính xác.
| Model | Định dạng | Trạng thái | Kích thước (MB) | mAP50-95(B) | Thời gian inference (ms/im) |
|---|---|---|---|---|---|
| YOLO26n | rknn | ✅ | 7.1 | 0.479 | 65.7 |
| YOLO26s | rknn | ✅ | 20.9 | 0.571 | 99.2 |
| YOLO26m | rknn | ✅ | 42.5 | 0.610 | 235.3 |
| YOLO26l | rknn | ✅ | 52.1 | 0.630 | 280.5 |
| YOLO26x | rknn | ✅ | 112.2 | 0.666 | 669.1 |
Được đánh giá với ultralytics 8.4.23
Việc xác thực cho các điểm chuẩn trên được thực hiện bằng bộ dữ liệu COCO128. Thời gian suy luận không bao gồm tiền xử lý/hậu xử lý.
Tóm tắt
Trong hướng dẫn này, bạn đã học cách xuất các mô hình Ultralytics YOLO26 sang định dạng RKNN để nâng cao khả năng triển khai trên các nền tảng Rockchip. Bạn cũng đã được giới thiệu về RKNN Toolkit và những lợi thế cụ thể của việc sử dụng các mô hình RKNN cho các ứng dụng AI tại biên (edge AI).
Sự kết hợp giữa Ultralytics YOLO26 và công nghệ NPU của Rockchip cung cấp một giải pháp hiệu quả để chạy các tác vụ thị giác máy tính nâng cao trên các thiết bị nhúng. Phương pháp này cho phép phát hiện đối tượng theo thời gian thực và các ứng dụng AI thị giác khác với mức tiêu thụ điện năng tối thiểu và hiệu suất cao.
Để biết thêm chi tiết về cách sử dụng, hãy truy cập tài liệu chính thức của RKNN.
Ngoài ra, nếu bạn muốn biết thêm về các tích hợp Ultralytics YOLO26 khác, hãy truy cập trang hướng dẫn tích hợp của chúng tôi. Bạn sẽ tìm thấy nhiều tài nguyên và thông tin hữu ích ở đó.
Câu hỏi thường gặp (FAQ)
Làm thế nào để xuất mô hình YOLO của Ultralytics sang định dạng RKNN?
Bạn có thể dễ dàng xuất mô hình YOLO của Ultralytics sang định dạng RKNN bằng phương thức export() trong gói Python của Ultralytics hoặc thông qua giao diện dòng lệnh (CLI). Hãy đảm bảo bạn đang sử dụng máy tính Linux dựa trên x86 cho quá trình xuất, vì các thiết bị ARM64 như Rockchip không được hỗ trợ cho thao tác này. Bạn có thể chỉ định nền tảng Rockchip mục tiêu bằng tham số name, chẳng hạn như rk3588, rk3566, hoặc các loại khác. Quá trình này tạo ra một mô hình RKNN được tối ưu hóa sẵn sàng để triển khai trên thiết bị Rockchip của bạn, tận dụng bộ xử lý thần kinh (NPU) của nó để tăng tốc suy luận.
from ultralytics import YOLO
# Load your YOLO model
model = YOLO("yolo26n.pt")
# Export to RKNN format for a specific Rockchip platform
model.export(format="rknn", name="rk3588")Những lợi ích của việc sử dụng mô hình RKNN trên các thiết bị Rockchip là gì?
Các mô hình RKNN được thiết kế đặc biệt để tận dụng khả năng tăng tốc phần cứng của Bộ xử lý thần kinh (NPU) của Rockchip. Sự tối ưu hóa này dẫn đến tốc độ suy luận nhanh hơn đáng kể và giảm độ trễ so với việc chạy các định dạng mô hình chung như ONNX hoặc TensorFlow Lite trên cùng phần cứng. Việc sử dụng các mô hình RKNN cho phép sử dụng tài nguyên thiết bị hiệu quả hơn, dẫn đến tiêu thụ điện năng thấp hơn và hiệu suất tổng thể tốt hơn, đặc biệt quan trọng đối với các ứng dụng thời gian thực trên thiết bị biên. Bằng cách chuyển đổi các mô hình Ultralytics YOLO sang RKNN, bạn có thể đạt được hiệu suất tối ưu trên các thiết bị sử dụng SoC Rockchip như RK3588, RK3566 và các loại khác.
Tôi có thể triển khai các mô hình RKNN trên các thiết bị từ các nhà sản xuất khác như NVIDIA hoặc Google không?
Các mô hình RKNN được tối ưu hóa đặc biệt cho các nền tảng Rockchip và các NPU tích hợp của chúng. Mặc dù về mặt kỹ thuật bạn có thể chạy một mô hình RKNN trên các nền tảng khác bằng cách sử dụng phần mềm giả lập, bạn sẽ không được hưởng lợi từ khả năng tăng tốc phần cứng được cung cấp bởi các thiết bị Rockchip. Để có hiệu suất tối ưu trên các nền tảng khác, bạn nên xuất các mô hình Ultralytics YOLO của mình sang các định dạng được thiết kế riêng cho các nền tảng đó, chẳng hạn như TensorRT cho các GPU NVIDIA hoặc TensorFlow Lite cho Edge TPU của Google. Ultralytics hỗ trợ xuất sang nhiều định dạng, đảm bảo khả năng tương thích với nhiều bộ tăng tốc phần cứng khác nhau.
Những nền tảng Rockchip nào được hỗ trợ để triển khai mô hình RKNN?
Việc xuất mô hình Ultralytics YOLO sang định dạng RKNN hiện hỗ trợ các nền tảng Rockchip có suy luận FP16: RK3588, RK3576, RK3566, RK3568, RK3562, RK2118 và RV1126B. Các mục tiêu chỉ dùng INT8 (RV1103, RV1106, RV1103B, RV1106B) hiện chưa được hỗ trợ vì NPU của chúng yêu cầu lượng tử hóa (quantization), một tính năng đang nằm trong lộ trình phát triển. Các nền tảng này thường được tìm thấy trong các thiết bị từ các nhà sản xuất như Radxa, ASUS, Pine64, Orange Pi, Odroid, Khadas và Banana Pi, cho phép bạn triển khai các mô hình RKNN được tối ưu hóa trên một loạt các thiết bị chạy chip Rockchip, từ máy tính bo mạch đơn đến các hệ thống công nghiệp.
Hiệu suất của các mô hình RKNN so với các định dạng khác trên thiết bị Rockchip như thế nào?
Các mô hình RKNN thường vượt trội hơn các định dạng khác như ONNX hoặc TensorFlow Lite trên các thiết bị Rockchip nhờ sự tối ưu hóa cho các NPU của Rockchip. Ví dụ, các điểm chuẩn trên Radxa Rock 5B (RK3588) cho thấy YOLO26n ở định dạng RKNN đạt thời gian suy luận là 99,5 ms/ảnh, nhanh hơn đáng kể so với các định dạng khác. Lợi thế hiệu suất này nhất quán trên nhiều kích thước mô hình YOLO26, như đã được trình bày trong phần điểm chuẩn. Bằng cách tận dụng phần cứng NPU chuyên dụng, các mô hình RKNN giảm thiểu độ trễ và tối đa hóa thông lượng, khiến chúng trở nên lý tưởng cho các ứng dụng thời gian thực trên các thiết bị biên sử dụng Rockchip.