Компьютерное зрение - SnapML

Xbox или PS5 Энтузиаст? - Создание объектива Snapchat на базе искусственного интеллекта с Fritz AI Studio

Используйте Fritz AI для быстрого создания набора данных, обучения модели маркировки изображений и развертывания непосредственно в Lens Studio

Введение

Playstation 5 и Xbox Series X выходят как раз к праздникам. Если поклонники Sony и поклонники Microsoft уже сделали свой выбор, некоторые все еще колеблются. И Sony, и Microsoft предлагают консоли нового поколения с эксклюзивными играми и услугами по подписке.

Поэтому я подумал, что в честь следующего поколения игр… почему бы не создать объектив Snapchat, который классифицирует любую консоль и соответствующим образом изменит наложение камеры?

Если вы никогда не слышали о Snapchat’s Lens Studio, вы можете прочитать мои учебники по Fritz AI Studio и Lens Studio:





В этой статье я покажу вам, как легко можно создать настраиваемую линзу на основе машинного обучения, почти без кода. Затем мы создадим объектив, который будет распознавать и классифицировать консоли следующего поколения (Xbox Series X и PS5).

Использование настраиваемых нейронных сетей непосредственно внутри Lens Studio открывает новые миры погружения и интерактивности, а также огромную базу пользователей. Но часть ML все еще сложна. Узнайте, как Fritz AI упрощает разработчикам создание и интеграцию моделей машинного обучения в их объективах.

Студия Fritz AI Studio

Во-первых, давайте поработаем над созданием готовой модели Lens Studio с помощью Fritz AI Studio.

  • Исходные изображения: загружайте изображения, содержащие Xbox Series X и PS5, желательно с разными углами и условиями освещения. К сожалению, поскольку две консоли еще не запущены, вы найдете только общие изображения для прессы. Мне удалось найти около 15 хороших изображений семян для каждого класса. Мы будем использовать эти исходные изображения для создания обучаемого снимка набора данных.

  • Удаление фона. Многие службы предлагают способ бесплатного удаления фона изображений, например remove.bg или clippingmagic.com. Если вы не хотите пользоваться этими сервисами, можно использовать Photoshop, а также Preview (только для macOS) или GIMP. Студия Fritz AI будет использовать эти изображения, чтобы перекрыть их на тысячах случайных изображений.

  • Аннотация: Когда все изображения будут готовы, перейдите в Наборы данных - ›Добавить коллекцию изображений -› Загрузить изображения. Когда все изображения загружены, вверху появится совершенно новое меню с интерфейсом аннотации изображений. Процесс довольно простой и понятный, особенно для моделей маркировки (классификации) изображений. Вы начинаете с создания новых классов, каждый из которых имеет свой цвет. В моем случае у меня два класса (xbox, ps5) - это заняло всего несколько секунд, используя сочетания клавиш. Вы также можете использовать этот рабочий процесс аннотации для других задач машинного обучения, включая обнаружение объектов и сегментацию изображений.

  • Создайте снимок: здесь происходит все волшебство. С вашими помеченными исходными изображениями Fritz AI создаст синтетические изображения на основе ваших исходных изображений со встроенным своего рода дополнением данных. Вы также можете отслеживать, сколько изображений было создано. Когда процесс будет завершен, вы получите электронное письмо.

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

Создавайте изображения

Я ни в коем случае не дизайнер - поэтому я использовал Canvas для создания двух очень простых изображений, которые будут отображаться в нижней части экрана, чтобы обозначить, что вы поклонник Xbox или PS5.

Хотите узнать больше о возможностях SnapML, прежде чем приступить к созданию? Загрузите наше бесплатное полное руководство по работе с машинным обучением в Lens Studio с помощью SnapML.

Объектив Студия

Теперь, когда у нас есть наша модель машинного обучения, нам нужно импортировать ее в Lens Studio и создать нашу Lens.

  • Откройте проект. Откройте файл .lsproj из ZIP-файла проекта, предоставленного Fritz AI Studio. Появится подсказка - просто нажмите на импорт.

  • Импортируйте модель как компонент машинного обучения: на левой панели «Объекты» Lens Studio вы найдете объект с именем ML Component. Щелкните по нему и импортируйте модель с правой панели (левое изображение на рисунке 10). Поскольку файл модели уже находится в структуре проекта, Lens Studio может его распознать. Я настоятельно рекомендую изменить порог (достоверность предсказания модели) на значение выше 0,5, чтобы избежать ложных срабатываний - я решил установить его на 0,8. Пороговое значение модели можно найти в файле Classification Controller (изображение справа на рис. 10).

  • Измените текстуру ввода: в файле ML Component измените текстуру ввода на Textures > Device Camera Texture. На этом этапе Lens может классифицировать консоли.

  • Измените сценарий: на левой Resources панели вы можете найти папку с именем Scripts > Classification Helpers, содержащую все .js файлы. Мы изменим файл ClassificationExampleHelper следующим кодом:
  • Добавьте изображения и настройте цвета текста. Установив входные данные в приведенном выше скрипте, Lens Studio автоматически добавит меню, в которое вы можете загрузить баннеры Xbox и PS5 и установить собственные цвета для каждой консоли. .

Вывод

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

Я решил добавить больше изображений из MKBHD’s video распаковки PS5 и создать гораздо больший снимок из 6000 изображений, а не из 3200 изображений. Я также обучил модель из первой существующей контрольной точки Keras, которая, по сути, является первой итерацией.

Модель теперь намного лучше классифицирует консоли. Я также заметил, что когда вы держите камеру открытой более 30 секунд, кадры падают, и телефон (проверенный на iPhone X) сильно нагревается.

Проект еще далеко не готов для использования конечными пользователями, есть много вещей, которые можно было бы добавить, чтобы улучшить весь опыт с точки зрения дизайна или даже других элементов, таких как музыка. Возможности безграничны и, вероятно, легко реализовать для Snapchat Lens Creators. Также есть возможность сделать его еще более интересным, добавив к этому классу энтузиастов компьютерных игр!

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

Независимая редакция, Heartbeat спонсируется и публикуется Fritz AI, платформой машинного обучения, которая помогает разработчикам учить устройства видеть, слышать, ощущать и думать. Мы платим участникам и не продаем рекламу.

Если вы хотите внести свой вклад, переходите к нашему призыву участников. Вы также можете подписаться на наши еженедельные информационные бюллетени (Deep Learning Weekly и Fritz AI Newsletter), присоединяйтесь к нам на » «Slack и подписывайтесь на Fritz AI в Twitter , чтобы узнавать обо всех последних новостях в области мобильного машинного обучения.