Link to this sectionXuất Rockchip RKNN cho các model Ultralytics YOLO26#
Khi triển khai các model thị giác máy tính trên thiết bị nhúng, đặc biệt là những thiết bị sử dụng bộ xử lý Rockchip, việc có một định dạng model tương thích là rất cần thiết. Xuất model 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ẽ hướng dẫn bạn chuyển đổi các model YOLO26 sang định dạng RKNN, bao gồm xuất ở dạng dấu phẩy động và lượng tử hóa INT8, giú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. Hướng dẫn này dự kiến sẽ hoạt động trên các thiết bị chạy Rockchip khác hỗ trợ rknn-toolkit2 như RK3576, RK3568, RK3562, RK2118, RV1126B, RV1103, RV1106, RV1103B và RV1106B. Các mục tiêu chỉ hỗ trợ INT8 như RV1103 và RV1106 yêu cầu quantize=8.
Link to this sectionRockchip là gì?#
Nổi tiếng với việc cung cấp các giải pháp đa năng và tiết kiệm điện năng, Rockchip thiết kế các System-on-Chip (SoC) tiên tiến cung cấp năng lượng cho nhiều loại 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, 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, smart TV, hệ thống IoT và các ứng dụng AI biên. 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 SoC của Rockchip, mở rộng thêm phạm vi tiếp cận và tác động của chúng trên các thị trường đa dạng.
Link to this sectionBộ công cụ RKNN#
RKNN Toolkit là một bộ công cụ và thư viện do Rockchip cung cấp để tạo điều kiện triển khai các model học sâu trên nền tảng phần cứng của họ. RKNN, hay Rockchip Neural Network, là định dạng độc quyền được các công cụ này sử dụng. Các model RKNN được thiết kế để tận dụng tối đa khả năng tăng tốc phần cứng do NPU (Neural Processing Unit) của Rockchip cung cấp, đảm bảo hiệu suất cao trong các tác vụ AI trên các thiết bị như RK3588, RK3566, RV1103, RV1106 và các hệ thống chạy Rockchip khác.
Link to this sectionCác tính năng chính của model RKNN#
Các model RKNN mang lại một số lợi ích cho việc triển khai trên nền tảng Rockchip:
- Tối ưu hóa cho NPU: Các model RKNN được tối ưu hóa đặc biệt để chạy trên 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ả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ị biên.
- Tùy chỉnh theo nền tảng: Các model RKNN có thể được điều chỉnh cho các nền tảng Rockchip cụ thể, cho phép sử dụng tài nguyên phần cứng tốt hơn.
- 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 model RKNN tiêu thụ ít năng lượ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.
Link to this sectionFlash OS vào phần cứng Rockchip#
Bước đầu tiên sau khi sở hữu thiết bị dựa trên Rockchip là flash một OS để 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ẽ dẫn đến các hướng dẫn bắt đầu của hai thiết bị mà chúng tôi đã thử nghiệm là Radxa Rock 5B và Radxa Zero 3W.
Link to this sectionXuất sang RKNN: Chuyển đổi model YOLO26 của bạn#
Xuất model Ultralytics YOLO26 sang định dạng RKNN và chạy suy luận với model đã xuất.
Hãy chắc chắn sử dụng máy tính Linux dựa trên X86 để xuất model 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ợ.
Link to this sectionCài đặt#
Để cài đặt các gói cần thiết, hãy chạy:
# 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 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 khi cài đặt các gói cần thiết cho YOLO26, nếu bạn gặp bất kỳ khó khăn nào, hãy tham khảo Hướng dẫn các vấn đề thường gặp để tìm giải pháp và mẹo.
Link to this sectionCách sử dụng#
Việc xuất hiện tại chỉ được hỗ trợ cho các model phát hiện (detection). Hỗ trợ thêm cho các loại model khác sẽ có trong tương lai.
Định dạng RKNN hỗ trợ các chế độ Export, Predict và Validate. Quá trình suy luận và xác thực chạy trên phần cứng Rockchip NPU. Hãy xuất model của bạn, sau đó tải model đã xuất để chạy suy luận hoặc xác thực độ chính xác của model. Theo mặc định, xuất RKNN sử dụng đường dẫn build dấu phẩy động (quantize=16) cho các mục tiêu Rockchip hỗ trợ FP16. Sử dụng quantize=8 để build model RKNN đã lượng tử hóa INT8 với dữ liệu hiệu chuẩn. Xuất RKNN không cung cấp chế độ FP32 riêng biệt; mặc định FP16 không yêu cầu FP32.
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to RKNN format
model.export(format="rknn", name="rk3588") # creates '/yolo26n_rknn_model'
# Export an INT8-quantized RKNN model with calibration data
model.export(format="rknn", name="rk3588", quantize=8, data="coco8.yaml")from ultralytics import YOLO
# Load the exported RKNN model
model = YOLO("./yolo26n_rknn_model")
# Run inference
results = model("https://ultralytics.com/images/bus.jpg")from ultralytics import YOLO
# Load the exported RKNN model
model = YOLO("./yolo26n_rknn_model")
# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")Link to this sectionĐố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 Rockchip. |
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 batch inference của model khi 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. rk3588, rk3576, rk3566, rk3568, rk3562, rk2118, và rv1126b hỗ trợ FP16 (quantize=16 hoặc để trống) và INT8 (quantize=8); rv1103, rv1106, rv1103b, và rv1106b chỉ hỗ trợ INT8 (quantize=8 hoặc để trống). |
quantize | int hoặc str | None | Độ chính xác lượng tử hóa: để trống hoặc 16 sẽ tạo FP16 cho các mục tiêu hỗ trợ FP16; để trống sẽ tự động kích hoạt INT8 cho các mục tiêu chỉ hỗ trợ INT8; 8 sẽ tạo INT8. Xuất RKNN không có chế độ FP32 riêng biệt. Thay thế các cờ half/int8 đã lỗi thời. |
data | str | None | Dataset YAML được sử dụng để hiệu chuẩn INT8. Nếu bỏ qua với quantize=8, Ultralytics sẽ chọn dataset hiệu chuẩn mặc định cho tác vụ của model. |
fraction | float | 1.0 | Tỷ lệ hình ảnh hiệu chuẩn được sử dụng cho lượng tử hóa INT8. |
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 của Ultralytics về việc xuất.
Link to this sectionTriển khai các model YOLO26 RKNN đã xuất#
Sau khi đã xuất thành công các model Ultralytics YOLO26 sang định dạng RKNN, bước tiếp theo là triển khai các model này trên các thiết bị dựa trên Rockchip.
Link to this sectionCài đặt#
Để cài đặt các gói cần thiết, hãy chạy:
# Install the required package for YOLO26
pip install ultralyticsSau khi cài đặt, hãy chạy suy luận và kiểm chứng trên thiết bị Rockchip của bạn chính xác như được hiển thị trong phần Usage ở trên — _rknn_model đã xuất tải trực tiếp với YOLO(...).
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 file librknnrt.so chính thức.

Link to this sectionỨng dụng trong thực tế#
Các thiết bị sử dụng Rockchip với model 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ả để 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 cần 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 cách sử dụ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 hạn chế tài nguyên.
Link to this sectionĐiểm chuẩn (Benchmarks)#
Các benchmark 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 model rknn để đo lường tốc độ và độ chính xác.
| Mô hình | Định dạng | Trạng thái | Kích thước (MB) | mAP50-95(B) | Thời gian suy luận (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 benchmark với ultralytics 8.4.23
Kiểm chứng cho các benchmark trên được thực hiện bằng cách sử dụng dataset COCO128. Thời gian suy luận không bao gồm tiền xử lý/hậu xử lý.
Link to this sectionTóm tắt#
Trong hướng dẫn này, bạn đã học cách xuất các model Ultralytics YOLO26 sang định dạng RKNN để tăng cường triển khai chúng 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 ích cụ thể của việc sử dụng các model RKNN cho các ứng dụng AI biên.
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. Cách tiếp cận 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 rất nhiều tài nguyên và thông tin hữu ích ở đó.
Link to this sectionCâu hỏi thường gặp#
Link to this sectionLàm cách nào để xuất model Ultralytics YOLO của tôi sang định dạng RKNN?#
Bạn có thể dễ dàng xuất model Ultralytics YOLO của mình sang định dạng RKNN bằng phương thức export() trong gói Ultralytics Python hoặc thông qua giao diện dòng lệnh (CLI). Đả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 cách sử dụng đối 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 model 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 Neural Processing Unit (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")Link to this sectionLợi ích của việc sử dụng model RKNN trên các thiết bị Rockchip là gì?#
Các model 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 các Neural Processing Unit (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 model chung như ONNX hoặc TensorFlow Lite trên cùng phần cứng. Việc sử dụng các model RKNN cho phép sử dụng tài nguyên của 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 model 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 của Rockchip như RK3588, RK3566 và các loại khác.
Link to this sectionTôi có thể triển khai model 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 model RKNN được tối ưu hóa đặc biệt cho các nền tảng Rockchip và NPU tích hợp của chúng. Mặc dù bạn có thể chạy model RKNN trên các nền tảng khác bằng cách giả lập phần mềm, nhưng bạn sẽ không nhận được lợi ích từ việc tăng tốc phần cứng mà các thiết bị Rockchip cung cấp. Để đạt hiệu suất tối ưu trên các nền tảng khác, bạn nên export các model Ultralytics YOLO của mình sang các định dạng được thiết kế chuyên biệt cho những 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ợ export sang nhiều loại định dạng khác nhau, đảm bảo tính tương thích với nhiều bộ tăng tốc phần cứng đa dạng.
Link to this sectionNhững nền tảng Rockchip nào được hỗ trợ để triển khai model RKNN?#
Việc xuất Ultralytics YOLO sang định dạng RKNN hỗ trợ các nền tảng Rockchip với các bản build RKNN dấu phẩy động, bao gồm RK3588, RK3576, RK3566, RK3568, RK3562, RK2118 và RV1126B. Nó cũng hỗ trợ xuất RKNN lượng tử hóa INT8 với quantize=8, vốn là yêu cầu bắt buộc cho các mục tiêu chỉ hỗ trợ INT8 như RV1103, RV1106, RV1103B và RV1106B. 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 model RKNN đã tối ưu hóa của mình trên một loạt các thiết bị chạy Rockchip từ máy tính bảng đơn đến các hệ thống công nghiệp.
Link to this sectionHiệu suất của các model RKNN so với các định dạng khác trên các thiết bị Rockchip như thế nào?#
Các model 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ờ vào sự tối ưu hóa cho các NPU của Rockchip. Ví dụ, các benchmark trên Radxa Rock 5B (RK3588) cho thấy YOLO26n ở định dạng RKNN đạt thời gian suy luận là 65.7 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 model YOLO26 khác nhau, như đã được trình bày trong phần benchmark. Bằng cách tận dụng phần cứng NPU chuyên dụng, các model 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 dựa trên Rockchip.