Yolo Vision Shenzhen
Шэньчжэнь
Присоединиться сейчас

Бесшовное развертывание Ultralytics YOLO11 с помощью интеграции MNN

Узнайте, как экспортировать и развертывать модели Ultralytics YOLO11 с интеграцией MNN для быстрого вывода данных на мобильных, встраиваемых и маломощных платформах.

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

В результате периферийный ИИ набирает обороты во многих отраслях. Ожидается, что к 2031 году объем рынка программного обеспечения для периферийного ИИ достигнет 8,88 миллиарда долларов, поскольку все больше систем переходят к более быстрой и локальной обработке.

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

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

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

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

Один из наиболее эффективных вариантов - MNN (Mobile Neural Network), легковесный механизм вывода, разработанный для устройств с низким уровнем ресурсов. Экспорт YOLO11 в MNN позволяет запускать его непосредственно на мобильных телефонах, встраиваемых системах и других платформах, где важна быстрая обработка данных на устройстве.

В этой статье мы рассмотрим, как работает интеграция с MNN, выделим общие случаи использования и расскажем, как приступить к выполнению выводов с помощью экспортированной модели YOLO11 . Давайте начнем!

Обзор MNN: фреймворка для глубокого обучения

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

Мобильная нейронная сеть, или MNN, - это легкий и высокопроизводительный механизм вывода, разработанный компанией Alibaba для обеспечения эффективной работы моделей искусственного интеллекта на аппаратном обеспечении с низким ресурсом, сохраняя при этом производительность в режиме реального времени. MNN поддерживает широкий спектр платформ, включая Android, iOS и Linux, и работает на различных типах оборудования, таких как центральные процессоры (CPU) и графические процессоры (GPU).

Рис. 2. Обзор фреймворка MNN (Источник).

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

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

Ключевые особенности серверной части MNN

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

Интересно, что MNN используется внутри Alibaba в более чем 30 приложениях, включая Taobao, Tmall, Youku, DingTalk и Xianyu, в широком спектре сценариев, таких как прямая трансляция видео, короткий контент, поиск изображений и проверки безопасности на устройстве. Он поддерживает крупномасштабное развертывание и выполняет миллионы выводов в день в производственной среде.

Вот некоторые из ключевых особенностей фреймворка MNN:

  • Автоматический выбор бэкэнда: MNN может автоматически выбирать наиболее подходящий бэкэнд выполнения, например CPU или GPU, в зависимости от аппаратного обеспечения, на котором он работает.
  • Многопоточное выполнение: Он поддерживает многопоточность, что позволяет ему в полной мере использовать многоядерные процессоры для более быстрого инференса.
  • Поддерживает квантование моделей: Это позволяет значительно уменьшить размер модели с помощью квантования FP16 или INT8, что помогает повысить скорость логического вывода при использовании меньшего объема памяти.
  • Легкий и быстрый: MNN занимает очень мало места: основная библиотека составляет около 400 КБ на Android и около 5 МБ на iOS, что делает его идеальным для мобильных и встраиваемых устройств.

Понимание принципов работы интеграции MNN

Далее рассмотрим, как экспортировать модели YOLO11 в формат MNN.

Первым шагом будет установка пакетаUltralytics Python , который содержит все необходимое для экспорта моделей YOLO11 в формат MNN. Это можно сделать, выполнив команду "pip install ultralytics" в терминале или в командной строке. Если вы используете Jupyter Notebook или Google Colab, добавьте восклицательный знак перед командой.

Если у вас возникнут какие-либо проблемы во время установки, обратитесь к руководству по распространенным проблемам для получения советов по устранению неполадок.

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

from ultralytics import YOLO
model = YOLO("yolo11n.pt")
model.export(format="mnn")

После преобразования вашей модели в MNN вы можете использовать ее на различных мобильных и встроенных платформах в зависимости от потребностей вашего приложения.

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

mnn_model = YOLO("yolo11n.mnn")
results = mnn_model("https://videos.pexels.com/video-files/27783817/12223745_1920_1080_24fps.mp4", save=True)

По окончании работы выходное видео с обнаруженными объектами автоматически сохраняется в папке 'detect'. Кроме того, если вы хотите запустить процесс прогнозирования с помощью пакета MNN Python напрямую, вы можете ознакомиться с официальной документациейUltralytics для получения более подробной информации и примеров.

Рис. 3. Анализ трафика с помощью модели YOLO11 , экспортированной в формат MNN. Изображение автора.

Примеры развертывания моделей искусственного интеллекта на границе с помощью YOLO11 и MNN

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

Мобильный edge AI для идентификации болезней растений

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

После обучения модель YOLO11 может быть экспортирована в формат MNN и запущена непосредственно на мобильных устройствах. Модель может classify виды растений и detect видимые симптомы болезней на месте, не отправляя данные на сервер. 

Рис. 4. Пример использования YOLO11 для detect признаков ржавчины (болезни растений) на листе(Источник).

Эффективные логические выводы на устройстве в производстве

Точное отслеживание посылок необходимо на загруженных производственных линиях на предприятиях. С помощью YOLO11 можно track и подсчитывать каждый товар по мере его прохождения через ключевые контрольные точки, обновляя данные в режиме реального времени и отмечая любые несоответствия. Это помогает сократить количество пропущенных или неучтенных отправлений и способствует более плавной и надежной работе.

Рис. 5. Отслеживание и подсчет пакетов с помощью YOLO11 (источник).

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

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

Преимущества экспорта YOLO11 в формат модели MNN

Вот некоторые ключевые преимущества интеграции MNN, предоставляемой Ultralytics:

  • Более быстрое время отклика: Поскольку вывод выполняется на устройстве, прогнозы происходят в режиме реального времени с минимальной задержкой.
  • Улучшенная конфиденциальность данных: Данные остаются на устройстве, что снижает необходимость отправки конфиденциальных изображений или видео в облако.
  • Открытый исходный код и активная поддержка: MNN, поддерживаемый Alibaba и активным сообществом, надежен и регулярно обновляется для повышения производительности.

Факторы, которые следует учитывать при использовании фреймворка MNN

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

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

Основные выводы

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

Такая настройка помогает упростить развертывание при сохранении производительности и низких требованиях к ресурсам. Независимо от того, создаете ли вы системы "умного дома", полевые инструменты или компактные промышленные устройства, экспорт YOLO11 в MNN обеспечивает гибкий и эффективный способ выполнения задач компьютерного зрения непосредственно на граничных устройствах.

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

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

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

Начать бесплатно