TFLite Sample

TFLite Sample

Aurora OS example to demonstrate the usage of Tensorflow Lite with GPU acceleration via OpenCL.

TFLiteSample

Приложение для демонстрации использования Tensorflow Lite с аппаратным ускорением посредством OpenCL. Приложение использует модель YOLOv3 для Tensorflow Lite для выполнения распознавания сущностей на изображении с использованием аппаратного CPU/GPU. Пользователь может выбрать изображение из памяти устройства. Выбранное изображение передается в модель, которая выполняет определение и классификацию известных сущностей. После выполнения распознавания приложения отображает изображением с отмеченными опознанными сущностями. Дополнительно приложения позволяет выполнить и оценить длительность перемножения матриц батчами с использованием Tensorflow Lite с опцией включения аппаратного ускорения.

Для сборки приложения со сборкой библиотеки TFLite в сборочном окружении использующим VB необходимо увеличить объем памяти в сборочной виртуальной машине AuroraOS-X.X.X.XX-MB2 с 4-х гигабайт, указанных по умолчанию, до 8 гигабайт через настройки- система - основная память. В противном случае сборка заканчивается с ошибкой нехватки памяти.

Условия использования и участия

Исходный код проекта предоставляется по лицензии, которая позволяет использовать его в сторонних приложениях.

Соглашение участника регламентирует права, предоставляемые участниками компании «Открытая Мобильная Платформа».

Информация об участниках указана в файле AUTHORS.

Кодекс поведения — это действующий набор правил компании «Открытая Мобильная Платформа», который информирует об ожиданиях по взаимодействию между членами сообщества при общении и работе над проектами.

Структура проекта

Проект имеет стандартную структуру приложения на базе C++ и QML для ОС Аврора.

  • Файл ru.auroraos.Keystore.pro описывает структуру проекта для системы сборки CMake.
  • Файл CMakeLists.txt описывает структуру подпроекта приложения для системы сборки CMake.
  • Каталог qml содержит исходный код на QML и ресурсы интерфейса пользователя.
    • Каталог cover содержит реализации обложек приложения.
    • Каталог icons содержит дополнительные иконки интерфейса пользователя.
    • Каталог pages содержит страницы приложения.
    • Файл TFLiteCheck.qml предоставляет реализацию окна приложения.
  • Каталог rdp описывает подпроект, содержащий исходный код библиотеки FreeRDP. ru.auroraos.Keystore.spec используется инструментом rpmbuild.
  • Каталог src содержит исходный код на C++.
  • Каталог translations содержит файлы перевода интерфейса пользователя.
  • Каталог models содержит модели Tensorflow Lite, файлы с именами классов и файлы лицензий.
    • model-fixed.tflite бинарный файл модели Tensorflow Lite, используется для умножения матриц с фиксированными размерами.
    • model-variable.tflite бинарный файл модели Tensorflow Lite, используется для умножения матриц с конфигурируемыми размерами.
    • Файл coco.names содержит названия классов MS COCO, опознаваемые моделью YOLOv3.
    • yolo_v3.tflite LICENSE.mit бинарный файл Tensorflow Lite модели YOLOv3.
  • Файл ru.auroraos.TFLiteCheck.desktop определяет отображение и параметры запуска приложения.

This document in English

Совместимость

Приложение полностью совместимо с Аврора ОС 5 и частично совместимо с Аврора ОС 4.

Из-за требований к версии стандартной библиотеки C++ в новых версиях Tensorflow Lite, аппаратное ускорение не поддерживается на Аврора ОС 4 и более ранних версиях. На старых версиях Аврора ОС доступна сборка или Tensorflow Lite с аппаратным ускорением версии ниже 2.8.3, или Tensorflow Lite актуальной версии без аппаратного ускорения. Tensorflow Lite версии ниже 2.8.3 имеет следующее ограничения:

  • Загрузка модели YOLOv3 приводит к ошибке, из-за чего она не может использоваться в сборке приложения под Аврора ОС 4.

На Аврора ОС 4 количество размер батча не может превышать 1.

Мы используем cookies для персонализации сайта и его более удобного использования. Вы можете запретить cookies в настройках браузера.

Пожалуйста ознакомьтесь с политикой использования cookies.