Экспорт моделей Ultralytics YOLO11 в формат модели NCNN
Экспортируй модели Ultralytics YOLO11 в формат NCNN для эффективного выполнения ИИ-выводов с низкой задержкой на периферийных устройствах с ограниченными ресурсами питания и вычислений.

ИИ-решения становятся всё более распространенными даже в таких ответственных секторах, как управление в условиях стихийных бедствий, управление отходами и пожаротушение. По мере дальнейшего роста внедрения ИИ-модели развертываются в самых разных средах — не только на серверах или в облаке, но и непосредственно на устройствах, работающих «в поле».
Например, дроны и оборудование с периферийными компонентами на базе небольших процессоров могут играть важнейшую роль в зонах бедствия. Оснащенные тепловизорами, эти устройства могут собирать и анализировать данные на месте, чтобы находить людей, застрявших под завалами. Это становится возможным благодаря computer vision — ветви искусственного интеллекта, которая интерпретирует визуальную информацию из изображений и видео.
Однако внедрение моделей компьютерного зрения на периферийных устройствах не так просто, как может показаться. Модели AI должны быть оптимизированы для эффективной работы на оборудовании с ограниченными вычислительными мощностями и памятью. Именно поэтому AI-фреймворки, такие как NCNN, жизненно необходимы. Они помогают конвертировать и оптимизировать модели для обеспечения работы в режиме реального времени на маломощных устройствах без потери точности.
В частности, модели Ultralytics YOLO, такие как Ultralytics YOLO11, можно легко экспортировать в формат NCNN с помощью интеграции с NCNN, поддерживаемой Ultralytics. Конвертация YOLO11 в формат NCNN позволяет модели работать быстрее, использовать меньше памяти и плавно функционировать на различных устройствах без потери точности.
В этой статье мы рассмотрим интеграцию с NCNN, поддерживаемую Ultralytics, и разберем, как ты можешь экспортировать свою модель YOLO11 в формат NCNN. Давай начнем!
Обзор NCNN: легкий фреймворк для нейронных сетей#
NCNN — это фреймворк для инференса нейронных сетей с открытым исходным кодом, разработанный Tencent. Он был специально спроектирован для мобильных и периферийных сред, обеспечивая высокопроизводительный инференс с минимальным потреблением ресурсов. Это делает его идеальным для развертывания на устройствах с ограниченными ресурсами, таких как смартфоны, дроны и устройства IoT (интернет вещей).
Фреймворк NCNN завоевал популярность в сообществе ИИ и глубокого обучения благодаря своей эффективности, переносимости и оптимизации для мобильных ЦП (центральных процессоров). Он позволяет разработчикам запускать модели нейронных сетей на недорогих устройствах с ограниченной памятью и вычислительной мощностью. Созданный простым и гибким, NCNN поддерживает широкий спектр моделей компьютерного зрения и работает на множестве платформ, включая Android, Linux, iOS и macOS.

Рис. 1. Модели в формате NCNN можно развертывать на множестве платформ.
Основные функции оптимизации производительности NCNN#
Вот некоторые ключевые функции, которые делают NCNN эффективным и широко используемым фреймворком для инференса нейронных сетей:
- Легковесная, аппаратно-независимая среда выполнения: Фреймворк NCNN оптимизирован для запуска моделей на стандартных CPU и не требует специализированного оборудования, такого как GPU (графические процессоры) или NPU (нейронные процессоры).
- Квантование моделей: Для приложений, где память и скорость имеют критическое значение, NCNN поддерживает методы квантования, которые уменьшают размер модели и улучшают время инференса. Это помогает плавно запускать ИИ-модели на мобильных и встраиваемых устройствах.
- Открытый исходный код и доступность: Будучи фреймворком с открытым исходным кодом, NCNN свободно доступен для использования, изменения и улучшения любым желающим. Это стимулирует инновации и широкое внедрение в различных сценариях использования.
- Активная разработка и сообщество: NCNN активно поддерживается на GitHub компанией Tencent и растущим сообществом разработчиков, получая регулярные обновления и улучшения совместимости с моделями.
Экспорт моделей Ultralytics YOLO11 в формат модели NCNN: краткое руководство#
Теперь, когда мы обсудили, что такое NCNN, давай поближе познакомимся с тем, как экспортировать модели Ultralytics YOLO11 в формат NCNN.
Шаг 1: Установка пакета Ultralytics Python#
Перед экспортом модели первым шагом является установка пакета Python от Ultralytics с помощью менеджера пакетов pip. Это можно сделать, выполнив команду "pip install ultralytics" в своем терминале или командной строке. Если ты работаешь в Jupyter Notebook или Google Colab, добавь восклицательный знак перед командой, вот так: "!pip install ultralytics".
Пакет Ultralytics предоставляет инструменты для обучения, тестирования, тонкой настройки и экспорта моделей компьютерного зрения для различных задач. Если ты столкнешься с какими-либо проблемами во время установки или экспорта модели, официальная документация Ultralytics и руководство по частым проблемам станут отличными ресурсами для поиска и устранения неисправностей.
Шаг 2: Экспорт Ultralytics YOLO11#
После установки пакета Ultralytics ты можешь загрузить свою модель YOLO11 и экспортировать ее в формат NCNN. В примере ниже используется предобученная модель ("yolo11n.pt"), которая экспортируется в формат NCNN, сохраняя вывод в папку с именем "/yolo11n_ncnn_model".
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
model.export(format="ncnn")Экспортированную модель Ultralytics YOLO11 можно затем развернуть на различных легковесных устройствах, таких как смартфоны, встраиваемые системы или платформы IoT. Сам процесс развертывания также очень прост и оптимизирован.
Например, рассмотри фрагмент кода ниже, который показывает, как загрузить экспортированную модель и запустить инференс. Инференс — это процесс использования обученной модели для предсказаний на новых, ранее не виденных данных. В этом примере модель тестируется на изображении человека, едущего на велосипеде, которое получено по общедоступной ссылке.
ncnn_model = YOLO("./yolo11n_ncnn_model")
results = ncnn_model("https://images.pexels.com/photos/19431209/pexels-photo-19431209/free-photo-of-a-man-riding-a-bike-on-a-road.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=2.jpg", save=True)После запуска кода ты найдешь итоговое изображение в папке "runs/detect/predict".

Рис. 2. Обнаружение объектов с помощью экспортированной модели Ultralytics YOLO11 в формате NCNN. Изображение автора.
Почему стоит выбрать обнаружение в реальном времени с помощью NCNN#
Изучая различные интеграции, поддерживаемые Ultralytics, ты можешь заметить, что доступно несколько вариантов экспорта. Итак, когда тебе следует выбирать формат NCNN?
Формат экспорта NCNN — это надежный выбор, когда тебе нужно развернуть модели Ultralytics YOLO11 на устройствах с ограниченными ресурсами. Он особенно полезен для приложений реального времени, которые работают прямо на устройстве, например на периферийных устройствах, без необходимости подключения к облаку. Это означает, что модель может решать такие задачи, как обнаружение объектов, прямо на месте.
Вот несколько типичных сценариев, где NCNN отлично подходит:
-
Мобильное развертывание: Формат NCNN оптимизирован для Android и iOS, что позволяет легко интегрировать модели в мобильные приложения для быстрого инференса на устройстве с минимальной задержкой.
-
Встраиваемые системы и устройства IoT: Если ты развертываешь решения на таких устройствах, как Raspberry Pi или NVIDIA Jetson, экспорт в NCNN поможет повысить производительность и скорость отклика.
-
Развертывание на десктопах и серверах: Хотя NCNN отлично подходит для маломощных устройств, он также поддерживает Linux, Windows и macOS для сред настольных компьютеров и серверов. Это дает разработчикам гибкие варианты для развертывания.

Рис. 3. Варианты развертывания модели Ultralytics YOLO11 с помощью NCNN. Изображение автора.
Варианты использования развертывания модели Ultralytics YOLO11 с помощью NCNN#
Давай теперь погрузимся в некоторые практические сценарии использования, где экспорт моделей Ultralytics YOLO11 в NCNN может реально помочь.
Каски с AI для пожаротушения#
Защитные каски, оснащенные камерами и встроенными микрокомпьютерами, могут использоваться в таких сферах, как строительство и пожаротушение, для повышения безопасности и осведомленности. Модели компьютерного зрения в реальном времени, такие как Ultralytics YOLO11, могут запускаться на этих устройствах для обнаружения различных типов объектов и оборудования. Например, такие каски могут помочь пожарным обнаруживать людей, препятствия или опасности в условиях плохой видимости.
Однако запуск полноразмерных моделей непосредственно на носимых устройствах может привести к замедлению работы и быстрой разрядке батареи. В этом случае использование интеграции NCNN — умный выбор. Она обеспечивает инференс с низкой задержкой и энергоэффективностью.
Классификация отходов и умные мусорные баки#
Аналогичным образом умные мусорные контейнеры могут быть оснащены камерами и компактными периферийными процессорами ИИ для идентификации и сортировки материалов по мере их выбрасывания. Модели компьютерного зрения, такие как YOLO11, могут быть обучены на заказ для обнаружения различных видов отходов, таких как бумага, пластик, резина и т.д.
После того как отходы идентифицированы, они могут автоматически сортироваться по отдельным отсекам в зависимости от их пригодности для повторного использования. Используя периферийный ИИ вместе с экспортированными моделями Ultralytics YOLO11 в формате NCNN, такие урны могут обрабатывать данные локально — без необходимости подключения к интернету. Это позволяет им работать автономно и принимать решения о сортировке в реальном времени с минимальной задержкой.

Рис. 4. Обнаружение пластиковых отходов с помощью YOLO11.
Мониторинг крупного рогатого скота с помощью дронов и компьютерного зрения#
Иногда в сельскохозяйственных районах, расположенных в отдаленных местах, отсутствует доступ к стабильному интернет-соединению или даже к постоянному электропитанию, что ограничивает возможности запуска AI-приложений онлайн. В таких случаях периферийные устройства и дроны могут быть использованы для выполнения различных задач.
Хорошим примером является мониторинг скота, такого как крупный рогатый скот, овцы и птица. Это можно делать с помощью моделей компьютерного зрения, таких как YOLO11, которые можно использовать для отслеживания перемещений животных, обнаружения признаков травм, болезней или аномального поведения, а также для предупреждения фермеров, когда животные пропадают. Интеграция с NCNN также позволяет запускать и обрабатывать эти данные непосредственно на периферийных устройствах, что делает ее отличным выбором для анализа изображений и видео на фермах в отдаленных или автономных районах.

Рис. 5. Обзор использования YOLO11 для мониторинга скота.
Основные выводы#
Экспорт моделей YOLO11 с использованием интеграции NCNN, поддерживаемой Ultralytics, — это простой способ внедрить компьютерное зрение в среду с низким энергопотреблением. Будь то дроны в зонах бедствия, умные баки для сортировки отходов или мониторинг скота на удаленных фермах, YOLO и NCNN обеспечивают инференс AI в реальном времени, который является быстрым, эффективным и переносимым. Этот подход помогает сделать системы AI более доступными и надежными там, где это важнее всего.
Хочешь узнать больше об ИИ? Изучи наш репозиторий GitHub, присоединяйся к нашему сообществу и ознакомься с нашими вариантами лицензирования, чтобы дать старт своему проекту компьютерного зрения. Узнай на страницах наших решений, как такие инновации, как ИИ в розничной торговле и компьютерное зрение в здравоохранении, формируют будущее.






