December 21, 2024

ТехноЁлка: слет Джуниоров

https://teletype.in/@junior2024/slet

https://clck.ru/3FMkiZ

Презентацию своей команды прислать ftt@ya.ru или в TG @AnnBalak, @yupest

Введение

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

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

Фиолетовые - обязательны, розовые - ждем от вас творческих решений

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

Концепция проектов

Особенности проектов:

  • Интерфейс реализован на Scratch
  • Проекты используют модели машинного обучения для распознавания знаков управления (жестов, поз, звуков)

Добавим интерактивность в уже знакомые игровые механики для управления событиями через звуки и жесты. Эти задачи являются обязательными:

  1. Поздравление с интеллектом - поздравительная открытка-сюрприз, которая реагирует на звуки. Задача Модели - распознавать конкретный звук. Задача Scratch - запрограммировать действие на триггер: нарядить гирляндой, шариками, включить анимацию снега и т.п.
  2. Зеленая змейка - игра с управлением по жестам / позам. Например, поворот головы координирует направление змейки.

Еще 2 проекта предлагается на творческое решение, команда разрабатывает концепцию и реализует проекты в соответствии со структурой:

с использованием Scratch на платформе Machine learning for kids: https://machinelearningforkids.co.uk/scratch/

  1. Разработать модель машинного обучения на платформах Teachable Machine или Machine learning for kids по распознаванию:
    1. Изображений
    2. Поз/жестов
    3. Классификации
    4. Регрессия (прогнозирование числа)
    5. Текста
    6. Звуков

ИЛИ

Платформа stretch3: https://stretch3.github.io/ которая поддерживает аудио-модели и другие модели Teachable Machine. Подробнее как сделать модель распознания поз здесь.

Ваше решение должно быть реализовано с помощью предложенных инструментов и содержать: модель, интерфейс.

Общий порядок задач

Этап 1. Обсуждение концепции (вся команда):

  • Совместно определить, как будет работать игра или приложение, какими функциями оно должно обладать.
  • Придумать, как игрок будет взаимодействовать с приложением (жесты, команды, интерфейс).
  • Разделить основные задачи между участниками в зависимости от их ролей.

Этап 2. Сбор данных и разработка системы распознавания (Специалист по ИИ):

  1. Разработать список жестов или голосовых команд, необходимых для приложения.
  2. Организовать сбор данных для обучения модели: записать видео с жестами, записать аудио команд (при необходимости).
  3. Обучить модель машинного обучения для распознавания жестов или команд.
  4. Проверить точность работы модели и при необходимости дообучить.
  5. Подготовить модель для интеграции в приложение и передать её программисту.

Этап 3. Разработка базовой структуры приложения (Программист):

  1. Создать простую рабочую версию программы, чтобы протестировать основные механики (например, управление клавишами вместо жестов).
  2. Разработать интерфейс приложения, связанный с игровыми процессами (отображение персонажа, корзины, костюмов, бонусов и т.д.).
  3. Интегрировать модель машинного обучения, полученную от специалиста по ИИ.
  4. Настроить функционал для обработки жестов или голосовых команд и проверить их работу.

Этап 4. Создание визуального оформления (Дизайнер):

  1. Придумать визуальный стиль проекта и нарисовать эскизы персонажей, костюмов, бонусов, препятствий и окружения.
  2. Разработать элементы интерфейса, включая кнопки, подсказки и анимации.
  3. Подготовить графические ресурсы в формате, удобном для интеграции в приложение.
  4. Работать с программистом над внедрением графики и проверять, как она выглядит в игре.

Этап 5. Интеграция и тестирование (вся команда):

  1. Программист объединяет все элементы: логику игры, модель распознавания жестов/команд и визуальные элементы.
  2. Вся команда тестирует приложение: проверяет точность распознавания жестов, правильность работы игры, удобство интерфейса.
  3. Устраняются найденные ошибки и вносятся улучшения.

Этап 6. Доработка и финализация (вся команда):

  1. Добавление анимации, звуков и других праздничных деталей, которые делают игру интересной.
  2. Финальная проверка работы всех элементов и согласование мелких улучшений.
  3. Подготовка презентации проекта и демонстрация его работы.

Инструменты для ролей

Специалист по ИИ - обучает модели:

  • Составление списка необходимых жестов и/или голосовых команд.
  • Сбор и разметка данных для обучения модели.
  • Обучение и настройка модели для распознавания жестов и команд.
  • Передача готовой модели программисту и помощь в её интеграции.

Программист - создает программный интерфейс:

  • Настройка игрового процесса: управление, логика взаимодействия объектов.
  • Интеграция модели ИИ и графики.
  • Обеспечение работы голосовых команд (если требуется).
  • Отладка всех функциональных элементов.

Дизайнер - наводит красоту

  • Разработка визуального стиля: персонажи, костюмы, интерфейс, фоны.
  • Создание анимаций для действий (например, сбор конфет или смена костюма).
  • Настройка графических элементов для их корректного отображения в приложении.

Проекты

Поздравление с интеллектом

Описание: поздравительная открытка

Модель: распознавание звуков

Шаги реализации:

  1. Сгенерировать фон открытки.
  2. Нарисовать ёлочные украшения и другие атрибуты.
  3. Обучить модель распознавания звуков.
  4. Назначить показ или движение объектов на открытки для распознанных звуков.
Пример реализации

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

Материалы, использованные в проекте: https://disk.yandex.ru/d/jUzKhe8QPFNPNw

Зеленая змейка

Описание: игра "Змейка" - змейка появляется в случайном месте, пользователь управляет ее направлением движения, змейка должна есть, от чего становиться длиннее (увеличиваются единицы змейки). После приема еды, продукт появляется в новом случайном месте. Главное, чтобы змейка не врезалась в края.

Модель: распознавание жестов

Шаги реализации:

  1. Нарисовать (создать) единицу змейки.
  2. Придумать и нарисовать еду змейки.
  3. Разработать программную реализацию игры.
  4. Обучить модель распознавания жестов, каждый жест соответствует координации направления змейки.
  5. Добавить в программную реализацию управление жестами.

Новогодний маскарад

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

Модель: Участники разрабатывают язык жестов для смены нарядов и тренируют систему распознавать их в реальном времени.

Шаги реализации:

  1. Придумать персонажа.
  2. Разработать (нарисовать) костюмы персонажу.
  3. Обучить модель распознавания жестов.
  4. Добавить в программную реализацию управление жестами.

Аттракцион невиданной щедрости

Описание: активная игра, где с “неба” падают лакомства, и игроки должны собирать их в новогоднюю корзину. Каждый хлопок — это конфета (сколько хлопков, столько конфет), а выкрик "оп" собирает пирожные, молчание помогает избегать "ложек дегтя", которые могут испортить все угощение. Игрок может  также включить команду для паузы в игре: стоп.

Модель: распознание звуков.

Шаги реализации:

  1. Нарисовать лакомства и корзинку.
  2. Сделать
  3. Реализовать звуковую модель.
  4. Внедрить ее в программную реализацию.

Subway Surfers: в погоне за Дедом Морозом

Описание: знаменитая игра, в которой нужно избегать препятствия в движении.

Модель: распознавание жестов/положение головы, тела.

Шаги реализации:

  1. Сгенерировать и нарисовать персонажа и препятствия.
  2. Реализовать анимацию движения и логику игры.
  3. Обучить модель распознавания положения тела/головы и интегрировать ее в проект Scratch.

Чек-лист

Не заблудитесь в тайм-менеджменте, заполняйте прогресс работы в Google-таблице.

Работы участников

https://disk.yandex.ru/d/TfD37-hDY_OACg