Meet YOLO26: next-gen vision AI.

Link to this sectionЭкспорт Rockchip RKNN для моделей Ultralytics YOLO26#

При развертывании моделей компьютерного зрения на встраиваемых устройствах, особенно на базе процессоров Rockchip, критически важно иметь совместимый формат моделей. Экспорт моделей Ultralytics YOLO26 в формат RKNN обеспечивает оптимизированную производительность и совместимость с аппаратным обеспечением Rockchip. В этом руководстве ты узнаешь, как конвертировать модели YOLO26 в формат RKNN, включая экспорт с плавающей запятой и квантованием INT8, что позволит эффективно развертывать их на платформах Rockchip.

Rockchip RKNN export for NPU deployment

Примечание

Это руководство было протестировано на Radxa Rock 5B, основанном на Rockchip RK3588, и Radxa Zero 3W, основанном на Rockchip RK3566. Ожидается, что оно будет работать на других устройствах с процессорами Rockchip, поддерживающих rknn-toolkit2, таких как RK3576, RK3568, RK3562, RK2118, RV1126B, RV1103, RV1106, RV1103B и RV1106B. Для целей, поддерживающих только INT8, таких как RV1103 и RV1106, требуется quantize=8.

Link to this sectionЧто такое Rockchip?#

Компания Rockchip славится своими универсальными и энергоэффективными решениями и разрабатывает передовые системы на кристалле (SoC), которые используются в широком спектре бытовой электроники, промышленных приложений и технологий ИИ. Благодаря архитектуре ARM, встроенным нейронным процессорам (NPU) и поддержке мультимедиа высокого разрешения, SoC от Rockchip обеспечивают высокую производительность для таких устройств, как планшеты, смарт-ТВ, IoT-системы и приложения граничного ИИ. Компании, такие как Radxa, ASUS, Pine64, Orange Pi, Odroid, Khadas и Banana Pi, предлагают множество продуктов на базе SoC Rockchip, что еще больше расширяет их охват и влияние на различных рынках.

Link to this sectionНабор инструментов RKNN#

RKNN Toolkit — это набор инструментов и библиотек, предоставленных Rockchip для упрощения развертывания моделей глубокого обучения на их аппаратных платформах. RKNN (сокращение от Rockchip Neural Network) — это проприетарный формат, используемый этими инструментами. Модели RKNN разработаны таким образом, чтобы в полной мере использовать аппаратное ускорение, обеспечиваемое NPU (нейронным процессором) от Rockchip, что гарантирует высокую производительность в задачах ИИ на таких системах, как RK3588, RK3566, RV1103, RV1106 и других устройствах на базе Rockchip.

Link to this sectionКлючевые особенности моделей RKNN#

Модели RKNN обладают рядом преимуществ для развертывания на платформах Rockchip:

  • Оптимизация под NPU: Модели RKNN специально оптимизированы для запуска на NPU от Rockchip, что обеспечивает максимальную производительность и эффективность.
  • Низкая задержка: Формат RKNN минимизирует задержку вывода, что критически важно для приложений реального времени на граничных устройствах.
  • Адаптация под конкретную платформу: Модели RKNN можно настроить под конкретные платформы Rockchip, что позволяет лучше использовать аппаратные ресурсы.
  • Энергоэффективность: Используя выделенное аппаратное обеспечение NPU, модели RKNN потребляют меньше энергии, чем при обработке на CPU или GPU, что увеличивает время автономной работы портативных устройств.

Link to this sectionПрошивка ОС на оборудование Rockchip#

Первый шаг после получения устройства на базе Rockchip — это прошивка ОС, чтобы оборудование могло загрузиться в рабочую среду. В этом руководстве мы укажем на руководства по началу работы для двух протестированных нами устройств: Radxa Rock 5B и Radxa Zero 3W.

Link to this sectionЭкспорт в RKNN: конвертация твоей модели YOLO26#

Экспортируй модель Ultralytics YOLO26 в формат RKNN и запускай вывод с помощью экспортированной модели.

Примечание

Обязательно используй ПК на базе Linux с архитектурой x86 для экспорта модели в RKNN, так как экспорт на устройствах Rockchip (ARM64) не поддерживается.

Link to this sectionУстановка#

Чтобы установить необходимые пакеты, выполни:

Установка
# Install the required package for YOLO26
pip install ultralytics

Подробные инструкции и лучшие практики по процессу установки ищи в нашем руководстве по установке Ultralytics. Если при установке необходимых пакетов для YOLO26 у тебя возникнут трудности, обратись к нашему руководству по распространенным проблемам за решениями и советами.

Link to this sectionИспользование#

Примечание

В настоящее время экспорт поддерживается только для моделей детектирования. Поддержка других моделей появится в будущем.

Формат RKNN поддерживает режимы Export, Predict и Validate. Инференс и валидация выполняются на аппаратном обеспечении Rockchip NPU. Экспортируй свою модель, а затем загрузи её для запуска инференса или проверки точности. По умолчанию экспорт в RKNN использует путь сборки с плавающей запятой (quantize=16) для целей Rockchip с поддержкой FP16. Используй quantize=8 для сборки INT8-квантованной модели RKNN с калибровочными данными. Экспорт в RKNN не предоставляет отдельного режима FP32; значение по умолчанию FP16 не запрашивает 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Аргументы экспорта#

АргументТипПо умолчаниюОписание
formatstr'rknn'Целевой формат для экспортированной модели, определяющий совместимость со средами развертывания Rockchip.
imgszint или tuple640Желаемый размер изображения для входных данных модели. Может быть целым числом для квадратных изображений или кортежем (height, width) для конкретных размеров.
batchint1Задает размер пакета (batch) для вывода экспортированной модели или максимальное количество изображений, которые модель будет обрабатывать одновременно в режиме predict.
namestr'rk3588'Указывает целевое устройство Rockchip. rk3588, rk3576, rk3566, rk3568, rk3562, rk2118 и rv1126b поддерживают FP16 (quantize=16 или не задано) и INT8 (quantize=8); rv1103, rv1106, rv1103b и rv1106b работают только с INT8 (quantize=8 или не задано).
quantizeint или strNoneТочность квантования: значение по умолчанию или 16 создает FP16 для целей, поддерживающих FP16; значение по умолчанию автоматически включает INT8 для целей, поддерживающих только INT8; 8 создает INT8. Экспорт в RKNN не имеет отдельного режима FP32. Заменяет устаревшие флаги half/int8.
datastrNoneYAML-файл набора данных, используемый для калибровки INT8. Если при quantize=8 он не указан, Ultralytics выбирает стандартный набор данных для калибровки под задачу модели.
fractionfloat1.0Доля калибровочных изображений, используемых для квантования INT8.
devicestrNoneУказывает устройство для экспорта: GPU (device=0), CPU (device=cpu).
Совет

Пожалуйста, обязательно используй машину с Linux x86 при экспорте в RKNN.

Для получения дополнительной информации о процессе экспорта посети страницу документации Ultralytics по экспорту.

Link to this sectionРазвертывание экспортированных моделей YOLO26 RKNN#

После успешного экспорта моделей Ultralytics YOLO26 в формат RKNN следующим шагом будет развертывание этих моделей на устройствах на базе Rockchip.

Link to this sectionУстановка#

Чтобы установить необходимые пакеты, выполни:

Установка
# Install the required package for YOLO26
pip install ultralytics

После установки запускай вывод и валидацию на своем устройстве Rockchip точно так же, как показано в разделе Usage выше — экспортированная модель _rknn_model загружается напрямую через YOLO(...).

Примечание

Если ты увидишь сообщение в журнале о том, что версия среды выполнения RKNN не совпадает с версией RKNN Toolkit, и вывод завершается ошибкой, замени /usr/lib/librknnrt.so на официальный файл librknnrt.so.

Скриншот экспорта RKNN

Link to this sectionПрименение в реальных условиях#

Устройства на базе Rockchip с моделями YOLO26 RKNN могут использоваться в различных приложениях:

  • Умное видеонаблюдение: Развертывай эффективные системы обнаружения объектов для мониторинга безопасности с низким энергопотреблением.
  • Промышленная автоматизация: Внедряй контроль качества и обнаружение дефектов непосредственно на встраиваемых устройствах.
  • Розничная аналитика: Отслеживай поведение клиентов и управляй запасами в режиме реального времени без зависимости от облака.
  • Умное сельское хозяйство: Контролируй здоровье сельскохозяйственных культур и обнаруживай вредителей с помощью компьютерного зрения в сельском хозяйстве.
  • Автономная робототехника: Включай навигацию на основе зрения и обнаружение препятствий на платформах с ограниченными ресурсами.

Link to this sectionБенчмарки#

Бенчмарки YOLO26, приведенные ниже, были проведены командой Ultralytics на Radxa Rock 5B на базе Rockchip RK3588 с модельным форматом rknn с измерением скорости и точности.

Производительность
МодельФорматСтатусРазмер (МБ)mAP50-95(B)Время вывода (мс/из)
YOLO26nrknn7.10.47965.7
YOLO26srknn20.90.57199.2
YOLO26mrknn42.50.610235.3
YOLO26lrknn52.10.630280.5
YOLO26xrknn112.20.666669.1

Протестировано с ultralytics 8.4.23

Примечание

Валидация для вышеуказанных бенчмарков проводилась с использованием набора данных COCO128. Время вывода не включает предварительную/последующую обработку.

Link to this sectionРезюме#

В этом руководстве ты узнал, как экспортировать модели Ultralytics YOLO26 в формат RKNN для улучшения их развертывания на платформах Rockchip. Тебя также познакомили с RKNN Toolkit и конкретными преимуществами использования моделей RKNN для приложений граничного ИИ.

Сочетание Ultralytics YOLO26 и технологии NPU от Rockchip предоставляет эффективное решение для выполнения сложных задач компьютерного зрения на встраиваемых устройствах. Этот подход обеспечивает обнаружение объектов в реальном времени и другие приложения зрения ИИ с минимальным энергопотреблением и высокой производительностью.

Для получения подробной информации об использовании посети официальную документацию RKNN.

Кроме того, если ты хочешь узнать больше о других интеграциях Ultralytics YOLO26, посети нашу страницу руководства по интеграции. Там ты найдешь множество полезных ресурсов и инсайтов.

Link to this sectionFAQ#

Link to this sectionКак экспортировать мою модель Ultralytics YOLO в формат RKNN?#

Ты можешь легко экспортировать свою модель Ultralytics YOLO в формат RKNN с помощью метода export() в пакете Ultralytics Python или через интерфейс командной строки (CLI). Убедись, что для процесса экспорта ты используешь ПК на базе Linux с архитектурой x86, так как устройства ARM64, такие как Rockchip, не поддерживаются для этой операции. Ты можешь указать целевую платформу Rockchip с помощью аргумента name, например rk3588, rk3566 или другие. Этот процесс создает оптимизированную модель RKNN, готовую к развертыванию на твоем устройстве Rockchip, используя его нейронный процессор (NPU) для ускоренного вывода.

Пример
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 sectionВ чем преимущества использования моделей RKNN на устройствах Rockchip?#

Модели RKNN специально разработаны для использования возможностей аппаратного ускорения нейронных процессоров (NPU) компании Rockchip. Эта оптимизация приводит к значительно более высокой скорости вывода и снижению задержек по сравнению с запуском стандартных форматов моделей, таких как ONNX или TensorFlow Lite, на том же оборудовании. Использование моделей RKNN позволяет более эффективно расходовать ресурсы устройства, что ведет к снижению энергопотребления и повышению общей производительности, что особенно критично для приложений реального времени на граничных устройствах. Преобразуя свои модели Ultralytics YOLO в RKNN, ты сможешь достичь оптимальной производительности на устройствах на базе SoC Rockchip, таких как RK3588, RK3566 и других.

Link to this sectionМогу ли я развертывать модели RKNN на устройствах других производителей, таких как NVIDIA или Google?#

Модели RKNN специально оптимизированы для платформ Rockchip и их встроенных NPU. Хотя технически ты можешь запустить модель RKNN на других платформах с помощью программной эмуляции, ты не получишь преимуществ аппаратного ускорения, предоставляемого устройствами Rockchip. Для достижения оптимальной производительности на других платформах рекомендуется экспортировать твои модели Ultralytics YOLO в форматы, специально разработанные для этих платформ, такие как TensorRT для графических процессоров NVIDIA или TensorFlow Lite для Edge TPU от Google. Ultralytics поддерживает экспорт в широкий спектр форматов, обеспечивая совместимость с различными аппаратными ускорителями.

Link to this sectionКакие платформы Rockchip поддерживаются для развертывания моделей RKNN?#

Экспорт Ultralytics YOLO в формат RKNN поддерживает платформы Rockchip со сборками RKNN с плавающей запятой, включая RK3588, RK3576, RK3566, RK3568, RK3562, RK2118 и RV1126B. Он также поддерживает экспорт в INT8-квантованный RKNN с помощью quantize=8, что необходимо для целей, поддерживающих только INT8, таких как RV1103, RV1106, RV1103B и RV1106B. Эти платформы часто встречаются в устройствах от таких производителей, как Radxa, ASUS, Pine64, Orange Pi, Odroid, Khadas и Banana Pi, что позволяет тебе развертывать оптимизированные модели RKNN на широком спектре устройств Rockchip, от одноплатных компьютеров до промышленных систем.

Link to this sectionКак производительность моделей RKNN соотносится с другими форматами на устройствах Rockchip?#

Модели RKNN, как правило, превосходят другие форматы, такие как ONNX или TensorFlow Lite, на устройствах Rockchip благодаря оптимизации под NPU Rockchip. Например, бенчмарки на Radxa Rock 5B (RK3588) показывают, что YOLO26n в формате RKNN достигает времени вывода 65.7 мс/изображение, что значительно быстрее, чем другие форматы. Это преимущество в производительности сохраняется для моделей YOLO26 различных размеров, как показано в разделе бенчмарков. Используя выделенное аппаратное обеспечение NPU, модели RKNN минимизируют задержку и максимизируют пропускную способность, что делает их идеальными для приложений реального времени на граничных устройствах на базе Rockchip.

Комментарии