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

Ultralytics Android App: Обнаружение объектов в реальном времени с помощью моделей YOLO

Превью изображения Ultralytics HUB

Ultralytics GitHub space Ultralytics LinkedIn space Ultralytics Twitter space Ultralytics YouTube space Ultralytics TikTok space Ultralytics BiliBili space Ultralytics Discord

Google Play store 

Приложение Ultralytics Android — это мощный инструмент, который позволяет запускать модели YOLO непосредственно на вашем Android-устройстве для обнаружения объектов в реальном времени. Это приложение использует TensorFlow Lite для оптимизации модели и различные аппаратные делегаты для ускорения, обеспечивая быстрое и эффективное обнаружение объектов.



Смотреть: Начало работы с приложением Ultralytics HUB (IOS и Android)

Квантование и ускорение

Для достижения производительности в реальном времени на вашем Android-устройстве модели YOLO квантуются до точности FP16 или INT8 precision. Квантование — это процесс, который снижает числовую точность весов и смещений модели, тем самым уменьшая размер модели и объем необходимых вычислений. Это приводит к более быстрому времени вывода без существенного влияния на точность модели.

Квантование FP16

Квантование FP16 (или половинной точности) преобразует 32-битные числа с плавающей запятой модели в 16-битные числа с плавающей запятой. Это уменьшает размер модели вдвое и ускоряет процесс вывода, сохраняя при этом хороший баланс между точностью и производительностью.

Квантование INT8

Квантование INT8 (или 8-битное целое число) еще больше уменьшает размер модели и вычислительные требования, преобразуя ее 32-битные числа с плавающей запятой в 8-битные целые числа. Этот метод квантования может привести к значительному увеличению скорости, но может привести к небольшому снижению средней точности (mAP) из-за более низкой числовой точности.

Снижение mAP в моделях INT8

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

Делегаты и изменчивость производительности

На устройствах Android доступны различные делегаты для ускорения вывода модели. Эти делегаты включают CPU, GPU, Hexagon и NNAPI. Производительность этих делегатов варьируется в зависимости от поставщика оборудования устройства, линейки продуктов и конкретных чипсетов, используемых в устройстве.

  1. CPU: Опция по умолчанию с приемлемой производительностью на большинстве устройств.
  2. GPU: Использует GPU устройства для более быстрого вывода. Он может обеспечить значительный прирост производительности на устройствах с мощными GPU.
  3. Hexagon: Использует Hexagon DSP от Qualcomm для более быстрой и эффективной обработки. Эта опция доступна на устройствах с процессорами Qualcomm Snapdragon.
  4. NNAPI: Android Neural Networks API (NNAPI) служит уровнем абстракции для запуска моделей ML на устройствах Android. NNAPI может использовать различные аппаратные ускорители, такие как CPU, GPU и специализированные AI-чипы (например, Google Edge TPU или Pixel Neural Core).

Вот таблица, показывающая основных поставщиков, их линейки продуктов, популярные устройства и поддерживаемые делегаты:

Производитель Линейки продуктов Популярные устройства Поддерживаемые делегаты
Qualcomm Snapdragon (например, серия 800) Samsung Galaxy S21, OnePlus 9, Google Pixel 6 CPU, GPU, Hexagon, NNAPI
Samsung Exynos (например, Exynos 2100) Samsung Galaxy S21 (глобальная версия) CPU, GPU, NNAPI
MediaTek Dimensity (например, Dimensity 1200) Realme GT, Xiaomi Redmi Note CPU, GPU, NNAPI
HiSilicon Kirin (например, Kirin 990) Huawei P40 Pro, Huawei Mate 30 Pro CPU, GPU, NNAPI
NVIDIA Tegra (например, Tegra X1) NVIDIA Shield TV, Nintendo Switch CPU, GPU, NNAPI

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

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

Начало работы с приложением Ultralytics Android

Чтобы начать работу с приложением Ultralytics Android, выполните следующие действия:

  1. Загрузите приложение Ultralytics из Google Play Store.

  2. Запустите приложение на своем устройстве Android и войдите в систему, используя свою учетную запись Ultralytics. Если у вас еще нет учетной записи, создайте ее на https://hub.ultralytics.com/.

  3. После входа в систему вы увидите список ваших обученных моделей YOLO. Выберите модель для использования в задачах обнаружения объектов.

  4. Предоставьте приложению разрешение на доступ к камере вашего устройства.

  5. Направьте камеру вашего устройства на объекты, которые вы хотите обнаружить. Приложение будет отображать ограничивающие рамки и метки классов в режиме реального времени по мере обнаружения объектов.

  6. Изучите настройки приложения, чтобы настроить порог обнаружения, включить или отключить определенные классы объектов и многое другое.

С помощью приложения Ultralytics Android у вас теперь есть возможность обнаружения объектов в реальном времени с использованием моделей YOLO прямо у вас под рукой. Наслаждайтесь изучением функций приложения и оптимизацией его настроек в соответствии с вашими конкретными случаями использования.



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

Комментарии