Перейти к содержимому

Как экспортировать на NCNN из YOLO11 для плавного развертывания

Deploying computer vision models on devices with limited computational power, such as mobile or embedded systems, can be tricky. You need to make sure you use a format optimized for optimal performance. This makes sure that even devices with limited processing power can handle advanced computer vision tasks well.

The export to NCNN format feature allows you to optimize your Ultralytics YOLO11 models for lightweight device-based applications. In this guide, we'll walk you through how to convert your models to the NCNN format, making it easier for your models to perform well on various mobile and embedded devices.

Почему тебе стоит экспортировать на NCNN?

NCNN обзор

The NCNN framework, developed by Tencent, is a high-performance neural network inference computing framework optimized specifically for mobile platforms, including mobile phones, embedded devices, and IoT devices. NCNN is compatible with a wide range of platforms, including Linux, Android, iOS, and macOS.

NCNN is known for its fast processing speed on mobile CPUs and enables rapid deployment of deep learning models to mobile platforms. This makes it easier to build smart apps, putting the power of AI right at your fingertips.

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

NCNN models offer a wide range of key features that enable on-device machine learning by helping developers run their models on mobile, embedded, and edge devices:

  • Efficient and High-Performance: NCNN models are made to be efficient and lightweight, optimized for running on mobile and embedded devices like Raspberry Pi with limited resources. They can also achieve high performance with high accuracy on various computer vision-based tasks.

  • Quantization: NCNN models often support quantization which is a technique that reduces the precision of the model's weights and activations. This leads to further improvements in performance and reduces memory footprint.

  • Совместимость: модели NCNN совместимы с такими популярными фреймворками глубокого обучения, как. TensorFlow, Caffe и ONNX. Такая совместимость позволяет разработчикам легко использовать существующие модели и рабочие процессы.

  • Простота использования: модели NCNN предназначены для легкой интеграции в различные приложения благодаря совместимости с популярными фреймворками глубокого обучения. Кроме того, NCNN предлагает удобные инструменты для конвертации моделей между различными форматами, обеспечивая беспроблемную совместимость во всех сферах разработки.

Варианты развертывания с NCNN

Прежде чем мы рассмотрим код для экспорта моделей YOLO11 в формат NCNN , давай разберемся, как обычно используются модели NCNN .

Модели NCNN, разработанные с учетом эффективности и производительности, совместимы с различными платформами развертывания:

  • Мобильное развертывание: Специально оптимизирован для Android и iOS, что позволяет без проблем интегрировать их в мобильные приложения для эффективной работы с выводами на устройствах.

  • Встраиваемые системы и IoT-устройства: Если ты обнаружил, что выполнение выводов на Raspberry Pi с помощью Ultralytics Guide недостаточно быстро, то переход на экспортируемую модель NCNN может помочь ускорить процесс. NCNN отлично подходит для таких устройств, как Raspberry Pi и NVIDIA Jetson, особенно в ситуациях, когда тебе нужна быстрая обработка данных прямо на устройстве.

  • Развертывание в настольных и серверных средах: Возможность развертывания в настольных и серверных средах Linux, Windows и macOS, поддержка разработки, обучения и оценки с более высокими вычислительными мощностями.

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

Ты можешь расширить совместимость моделей и гибкость развертывания, конвертировав модели YOLO11 в формат NCNN .

Установка

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

Установка

# Install the required package for YOLO11
pip install ultralytics

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

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

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

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

from ultralytics import YOLO

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

# Export the model to NCNN format
model.export(format="ncnn")  # creates '/yolo11n_ncnn_model'

# Load the exported NCNN model
ncnn_model = YOLO("./yolo11n_ncnn_model")

# Run inference
results = ncnn_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to NCNN format
yolo export model=yolo11n.pt format=ncnn  # creates '/yolo11n_ncnn_model'

# Run inference with the exported model
yolo predict model='./yolo11n_ncnn_model' source='https://ultralytics.com/images/bus.jpg'

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

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

После успешного экспорта твоих моделей Ultralytics YOLO11 в формат NCNN ты можешь приступить к их развертыванию. Основным и рекомендуемым первым шагом для запуска модели NCNN является использование метода YOLO("./model_ncnn_model"), как описано в предыдущем фрагменте кода использования. Однако для получения подробных инструкций по развертыванию твоих NCNN -моделей в различных других настройках, взгляни на следующие ресурсы:

  • Android: This blog explains how to use NCNN models for performing tasks like object detection through Android applications.

  • macOS (): Пойми, как использовать модели NCNN для выполнения задач через macOS.

  • Linux: Изучи эту страницу, чтобы узнать, как развернуть модели NCNN на устройствах с ограниченными ресурсами, таких как Raspberry Pi и другие подобные устройства.

  • Windows x64 с помощью VS2017: Изучи этот блог, чтобы узнать, как развернуть модели NCNN на windows x64 с помощью Visual Studio Community 2017.

Резюме

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

За подробными инструкциями по использованию обращайся к официальной документации NCNN .

Also, if you're interested in exploring other integration options for Ultralytics YOLO11, be sure to visit our integration guide page for further insights and information.

ВОПРОСЫ И ОТВЕТЫ

Как экспортировать модели Ultralytics YOLO11 в формат NCNN ?

Чтобы экспортировать свою модель Ultralytics YOLO11 в формат NCNN , выполни следующие шаги:

  • Python: Используй export функция из класса YOLO .

    from ultralytics import YOLO
    
    # Load the YOLO11 model
    model = YOLO("yolo11n.pt")
    
    # Export to NCNN format
    model.export(format="ncnn")  # creates '/yolo11n_ncnn_model'
    
  • CLI: Используй yolo команда с export аргумент.

    yolo export model=yolo11n.pt format=ncnn  # creates '/yolo11n_ncnn_model'
    

О подробных параметрах экспорта читай на странице " Экспорт" в документации.

В чем преимущества экспорта моделей YOLO11 на NCNN?

Экспорт твоих моделей Ultralytics YOLO11 на NCNN дает несколько преимуществ:

  • Эффективность: модели NCNN оптимизированы для мобильных и встраиваемых устройств, что обеспечивает высокую производительность даже при ограниченных вычислительных ресурсах.
  • Квантование: NCNN поддерживает такие техники, как квантование, которые повышают скорость работы модели и уменьшают расход памяти.
  • Широкая совместимость: Ты можешь развернуть модели NCNN на множестве платформ, включая Android, iOS, Linux и macOS.

Более подробную информацию ты найдешь в разделе документации " Экспорт на NCNN ".

Почему я должен использовать NCNN для своих мобильных AI-приложений?

NCNN, разработанный компанией Tencent, специально оптимизирован для мобильных платформ. Основные причины использовать NCNN включают в себя:

  • Высокая производительность: Разработан для эффективной и быстрой обработки данных на мобильных процессорах.
  • Cross-Platform: Compatible with popular frameworks such as TensorFlow and ONNX, making it easier to convert and deploy models across different platforms.
  • Поддержка сообщества: Активная поддержка сообщества обеспечивает постоянные улучшения и обновления.

Чтобы понять больше, посети обзорNCNN в документации.

What platforms are supported for NCNN model deployment?

NCNN универсален и поддерживает различные платформы:

  • Мобильный: Android, iOS.
  • Встраиваемые системы и IoT-устройства: Такие устройства, как Raspberry Pi и NVIDIA Jetson.
  • Настольные компьютеры и серверы: Linux, Windows и macOS.

Если запуск моделей на Raspberry Pi недостаточно быстр, то конвертация в формат NCNN может ускорить работу, как это подробно описано в нашем руководстве по Raspberry Pi.

Как развернуть модели Ultralytics YOLO11 NCNN на Android?

Чтобы развернуть свои модели YOLO11 на сайте Android:

  1. Сборка для Android: Следуй руководству NCNN Build for Android.
  2. Интегрируй в свое приложение: Используй NCNN Android SDK, чтобы интегрировать экспортированную модель в твое приложение для эффективных выводов на устройстве.

For step-by-step instructions, refer to our guide on Deploying YOLO11 NCNN Models.

Более продвинутые руководства и примеры использования можно найти на странице документацииUltralytics .

📅 Создано 8 месяцев назад ✏️ Обновлено 1 месяц назад

Комментарии