Ultralytics YOLO27: Вступи в список ожидания.
Лицензия YOLO
Интеграции

Экспорт моделей Ultralytics YOLO11 в формат NCNN

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

Абирами ВинаAbirami Vina8 мин. чтения
Экспорт моделей Ultralytics YOLO11 в формат NCNN

Решения на основе ИИ всё чаще применяются даже в таких критически важных сферах, как ликвидация последствий стихийных бедствий, управление отходами и пожаротушение. По мере распространения ИИ модели развёртывают во всё более разнообразных условиях — не только на серверах или в облаке, но и непосредственно на устройствах, работающих в полевых условиях.

Например, дроны и оборудование с периферийными компонентами на базе маломощных процессоров могут играть важную роль в зонах бедствия. Оснащённые тепловизорами, такие устройства собирают и анализируют данные на месте, чтобы находить людей, оказавшихся под завалами. Это стало возможным благодаря компьютерному зрению — области искусственного интеллекта, которая интерпретирует визуальную информацию на изображениях и видео.

Однако развёртывание моделей компьютерного зрения на периферийных устройствах не так просто, как может показаться. Чтобы эффективно работать на оборудовании с ограниченной вычислительной мощностью и памятью, модели ИИ нужно оптимизировать. Поэтому важны такие фреймворки ИИ, как NCNN. Они помогают преобразовывать и оптимизировать модели для работы в реальном времени на маломощных устройствах с минимальным снижением точности.

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

В этой статье мы рассмотрим интеграцию NCNN, поддерживаемую Ultralytics, и покажем, как экспортировать модель YOLO11 в формат NCNN.

Обзор NCNN: лёгкий фреймворк для нейронных сетей#

NCNN — это фреймворк с открытым исходным кодом для инференса нейронных сетей, разработанный Tencent. Он специально создан для мобильных и периферийных сред и обеспечивает высокую производительность инференса при минимальном потреблении ресурсов. Поэтому он идеально подходит для развёртывания на устройствах с ограниченными ресурсами, таких как смартфоны, дроны и устройства Интернета вещей (IoT).

Фреймворк NCNN завоевал популярность среди специалистов по ИИ и глубокому обучению благодаря эффективности, переносимости и оптимизации для мобильных CPU (центральных процессоров). Он позволяет разработчикам запускать модели нейронных сетей на недорогих устройствах с ограниченной памятью и вычислительной мощностью. NCNN разработан с упором на простоту и гибкость, поддерживает широкий спектр моделей компьютерного зрения и работает на разных платформах, включая Android, Linux, iOS и macOS.

Модели в формате NCNN можно развёртывать на многих платформах

Рис. 1. Модели в формате NCNN можно развёртывать на многих платформах.

Ключевые особенности NCNN для оптимизации производительности#

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

  • Лёгкая среда выполнения, не зависящая от оборудования: Фреймворк NCNN оптимизирован для запуска моделей на стандартных CPU и не требует специализированного оборудования, например GPU (графических процессоров) или NPU (нейронных процессоров).
  • Квантование моделей: для приложений, где критически важны объём памяти и скорость, NCNN поддерживает методы квантования, которые уменьшают размер модели и сокращают время инференса. Это помогает моделям ИИ эффективно работать на мобильных и встраиваемых устройствах.
  • Открытый исходный код и доступность: NCNN — это фреймворк с открытым исходным кодом, которым каждый может бесплатно пользоваться, изменять его и улучшать. Это способствует инновациям и широкому применению в самых разных сценариях.
  • Активная разработка и сообщество: Tencent и растущее сообщество разработчиков активно поддерживают NCNN на GitHub, регулярно обновляя фреймворк и улучшая совместимость с моделями.

Экспорт Ultralytics YOLO11 в формат модели NCNN: краткое руководство#

Теперь, когда мы разобрали, что такое NCNN, давай подробнее рассмотрим, как экспортировать модели Ultralytics YOLO11 в формат NCNN.

Шаг 1. Установи пакет Ultralytics для Python#

Перед экспортом модели установи пакет Ultralytics для Python с помощью установщика пакетов pip. Для этого выполни в терминале или командной строке команду pip install ultralytics. Если ты работаешь в Jupyter Notebook или Google Colab, поставь перед командой восклицательный знак: !pip install ultralytics.

Пакет Ultralytics предоставляет инструменты для обучения, тестирования, дообучения и экспорта моделей ИИ для компьютерного зрения, предназначенных для различных задач. Если при установке или экспорте модели возникнут проблемы, обратись к официальной документации Ultralytics и руководству «Частые проблемы» — там есть полезные советы по устранению неполадок.

Шаг 2. Экспорт Ultralytics YOLO11#

После установки пакета Ultralytics можно загрузить модель YOLO11 и экспортировать её в формат NCNN. В примере ниже используется предварительно обученная модель YOLO11n (yolo11n.pt), которая экспортируется в формат NCNN; результат сохраняется в папке yolo11n_ncnn_model.

from ultralytics import YOLO

model = YOLO("yolo11n.pt")
model.export(format="ncnn")

Экспортированную модель Ultralytics YOLO11 можно развернуть на различных маломощных устройствах, например смартфонах, встраиваемых системах и платформах IoT. Процесс развёртывания также очень прост.

Например, рассмотрим приведённый ниже фрагмент кода, который показывает, как загрузить экспортированную модель и запустить инференс. Инференс — это процесс, в котором обученная модель делает предсказания на новых данных, которых раньше не видела. В этом примере модель проверяется на изображении мужчины, едущего на велосипеде, полученном по общедоступному URL.

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.

Обнаружение объектов с помощью экспортированной модели Ultralytics YOLO11 в формате NCNN

Рис. 2. Обнаружение объектов с помощью экспортированной модели Ultralytics YOLO11 в формате NCNN. Изображение предоставлено автором.

Почему стоит выбрать обнаружение объектов в реальном времени с NCNN#

Изучая различные интеграции, поддерживаемые Ultralytics, ты можешь заметить, что доступно несколько вариантов экспорта. В каких случаях стоит выбрать формат NCNN?

Формат экспорта NCNN — надёжный вариант, если нужно развернуть модели Ultralytics YOLO11 на устройствах с ограниченными ресурсами. Он особенно полезен для приложений реального времени, которые работают непосредственно на устройстве, например на периферийных устройствах, и не требуют подключения к облаку. Благодаря этому модель может выполнять такие задачи, как обнаружение объектов, прямо на месте.

Вот несколько типичных сценариев, для которых хорошо подходит NCNN:

  • Развёртывание на мобильных устройствах: Формат NCNN оптимизирован для Android и iOS, поэтому модели легко интегрировать в мобильные приложения для быстрого инференса непосредственно на устройстве с минимальной задержкой.
  • Встроенные системы и устройства IoT: Если ты разворачиваешь модель на устройствах вроде Raspberry Pi или NVIDIA Jetson, экспорт в NCNN может повысить производительность и скорость отклика.
  • Развёртывание на настольных компьютерах и серверах: NCNN хорошо подходит для маломощных устройств, но также поддерживает Linux, Windows и macOS для настольных и серверных сред. Это даёт разработчикам гибкие возможности развёртывания.

Варианты развёртывания модели Ultralytics YOLO11 с NCNN

Рис. 3. Варианты развёртывания модели Ultralytics YOLO11 с NCNN. Изображение предоставлено автором.

Варианты использования развёртывания модели Ultralytics YOLO11 с NCNN#

Теперь рассмотрим несколько практических сценариев, в которых экспорт моделей Ultralytics YOLO11 в NCNN может заметно изменить ситуацию.

Шлемы с компьютерным зрением и ИИ для пожарных#

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

Однако запуск полноразмерных моделей непосредственно на носимых устройствах может замедлить работу и быстро разрядить аккумулятор. В этом случае разумным решением будет интеграция NCNN. Она обеспечивает инференс с низкой задержкой и небольшим энергопотреблением.

Сортировка отходов и умные мусорные контейнеры#

Аналогичным образом умные мусорные баки можно оснастить камерами и компактными периферийными ИИ-процессорами, чтобы распознавать и сортировать выбрасываемые материалы. Модели компьютерного зрения, такие как YOLO11, можно обучить обнаруживать различные виды отходов: бумагу, пластик, резину и т. д.

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

Обнаружение пластиковых отходов с помощью Ultralytics YOLO11

Рис. 4. Обнаружение пластиковых отходов с помощью YOLO11.

Мониторинг крупного рогатого скота с помощью дронов и компьютерного зрения#

В сельскохозяйственных районах, расположенных в отдалённых местах, иногда нет стабильного интернет-соединения или постоянного электроснабжения, что ограничивает возможности запуска онлайн-приложений ИИ. В таких случаях для выполнения самых разных задач можно использовать периферийные устройства и дроны.

Хороший пример — мониторинг сельскохозяйственных животных, например крупного рогатого скота, овец и птицы. Для этого можно использовать модели компьютерного зрения с ИИ, например YOLO11, чтобы отслеживать перемещения животных, выявлять признаки травм, болезней или необычного поведения, а также сообщать фермерам о пропаже животных. Интеграция NCNN также позволяет запускать модели и обрабатывать эти данные непосредственно на периферийных устройствах, что делает её отличным решением для анализа изображений и видео на фермах в отдалённых районах или местах без подключения к электросети.

Мониторинг сельскохозяйственных животных с помощью Ultralytics YOLO11

Рис. 5. Пример мониторинга сельскохозяйственных животных с помощью YOLO11.

Главные выводы#

Экспорт моделей YOLO11 с помощью интеграции NCNN, поддерживаемой Ultralytics, — это простой способ внедрить ИИ для компьютерного зрения в среды с ограниченными ресурсами. Будь то дроны в зонах бедствий, умные баки для сортировки отходов или мониторинг скота на удалённых фермах, YOLO и NCNN обеспечивают быстрый, эффективный и портативный инференс ИИ в реальном времени. Такой подход помогает сделать системы ИИ доступнее и надёжнее именно там, где это особенно важно.

Хочешь узнать больше об ИИ? Изучи наш репозиторий на GitHub, присоединяйся к нашему сообществу и ознакомься с вариантами лицензирования, чтобы быстрее начать свой проект в области компьютерного зрения. Узнай, как такие инновации, как ИИ в розничной торговле и компьютерное зрение в здравоохранении, формируют будущее, на страницах наших решений.

Автор

Abirami Vina
Abirami Vina

Создатель контента · Ultralytics

Начав карьеру инженером по компьютерному зрению, Абирами Вина заложила прочную основу в области ИИ для компьютерного зрения и машинного обучения. Она создает контент для Ultralytics и является основательницей и главным автором Scribe of AI, где готовит качественные технические материалы для компаний, работающих в сфере ИИ. Стремясь сделать ИИ понятным и увлекательным, она помогает связать передовые технологии с их практическим применением.

Комментарии

Задай вопрос, поделись результатами или помоги кому-нибудь.

Изучи решения

Компьютерное зрение в спорте

Компьютерное зрение в спорте

Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки

Компьютерное зрение для аэросъёмки

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

Компьютерное зрение в аэрокосмической отрасли

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

Компьютерное зрение в сфере безопасности

Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике

Компьютерное зрение в робототехнике

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

Компьютерное зрение в логистике

Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле

Компьютерное зрение в розничной торговле

Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении

Компьютерное зрение в здравоохранении

Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве

Компьютерное зрение в производстве

Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли

Компьютерное зрение в автомобильной отрасли

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

Компьютерное зрение в сельском хозяйстве

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

Давай вместе строить будущее ИИ!

Начни свой путь в будущее машинного обучения