Перейти к содержанию

Экспорт RKNN для моделей Ultralytics YOLO11

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

Примечание

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

RKNN

Что такое Rockchip?

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

Набор инструментов RKNN

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

Ключевые особенности моделей RKNN

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

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

Флеш-версия ОС для аппаратного обеспечения Rockchip

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

Экспорт в RKNN: Преобразование модели YOLO11

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

Примечание

Убедитесь, что для экспорта модели в RKNN используется компьютер с ОС Linux на базе X86, поскольку экспорт на устройства на базе Rockchip (ARM64) не поддерживается.

Установка

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

Установка

# Install the required package for YOLO11
pip install ultralytics

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

Использование

Примечание

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

Использование

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

# Export the model to RKNN format
# Here name can be one of rk3588, rk3576, rk3566, rk3568, rk3562, rv1103, rv1106, rv1103b, rv1106b, rk2118
model.export(format="rknn", args={"name": "rk3588"})  # creates '/yolo11n_rknn_model'
# Export a YOLO11n PyTorch model to RKNN format
# Here name can be one of rk3588, rk3576, rk3566, rk3568, rk3562, rv1103, rv1106, rv1103b, rv1106b, rk2118
yolo export model=yolo11n.pt format=rknn name=rk3588  # creates '/yolo11n_rknn_model'

Более подробную информацию о процессе экспорта можно найти на странице документацииUltralytics , посвященной экспорту.

Развертывание экспортированных YOLO11 моделей RKNN

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

Установка

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

Установка

# Install the required package for YOLO11
pip install ultralytics

Использование

Использование

from ultralytics import YOLO

# Load the exported RKNN model
rknn_model = YOLO("./yolo11n_rknn_model")

# Run inference
results = rknn_model("https://ultralytics.com/images/bus.jpg")
# Run inference with the exported model
yolo predict model='./yolo11n_rknn_model' source='https://ultralytics.com/images/bus.jpg'

Бенчмарки

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

Модель Формат Статус Размер (МБ) mAP50-95(B) Время вывода (мс/им)
YOLO11n rknn 7.4 0.61 99.5
YOLO11s rknn 20.7 0.741 122.3
YOLO11m rknn 41.9 0.764 298.0
YOLO11l rknn 53.3 0.72 319.6
YOLO11x rknn 114.6 0.828 632.1

Примечание

Валидация для вышеупомянутого эталона была проведена с помощью набора данных coco8

Резюме

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

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

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

📅 Создано 0 дней назад ✏️ Обновлено 0 дней назад

Комментарии