Сервис изучения русского жестового языка с применением модели распознавания жестов

от автора

Всем доброго первого зимнего дня!

Меня зовут Рома, я проджект менеджер студенческой команды ПИН-КОД и это наша первая статья 🙂

Я хочу рассказать о нашем сервисе изучения РЖЯ и представить небольшой кусочек,
который вы сможете сами «пощупать».
Ссылка на демо (для нетерпеливых) *корректно отображается только на ноутбуке/ПК, модель распознавания может работать с задержками из-за высокой нагрузки.

А еще, это первая продуктовая история с моделью распознавания РЖЯ ?

С чего всё началось?

В августе 2023 года мы выиграли хакатон от Сбера (https://кодгорода300.рф/). На нём мы делали переводчик русского жестового языка для видеоконференций на базе ИИ-модели и большой языковой модели (LLM Gigachat) (об этом статья будет чуть позже), а сейчас, в рамках предмета «Проектный практикум» в любимом ИРИТ-РТФ Уральского Федерального, пилим сервис изучения РЖЯ с использованием этой же модели.

Краткое описание идеи

В нашем сервисе будет 3 основных раздела — «Обучение», «Практика» и «Словарь».

«Обучение» — пользователь смотрит гифки с жестами, читает само слово/предложение текстом, запоминает, а потом решает небольшие задания, которые генерируются случайным образом. Т.е. сначала идет теория, а потом задания на запоминание.

Макеты раздела «Обучение»
Слайд теории, пользователь смотрит гифку с жестом и запоминает

Слайд теории, пользователь смотрит гифку с жестом и запоминает
Слайд практики, пользователь выполняет небольшое задание, по ранее просмотренным гифкам с жестами

Слайд практики, пользователь выполняет небольшое задание, по ранее просмотренным гифкам с жестами
Слайд практики, пользователь выполняет небольшое задание, по ранее просмотренным гифкам с жестами

Слайд практики, пользователь выполняет небольшое задание, по ранее просмотренным гифкам с жестами

«Практика» — тут как раз и используется модель распознавания РЖЯ. Пользователь читает слово/предложение текстом, а потом должен показать его на жестовом языке. Модель отрабатывает и в случае правильно показанного жеста, отмечает слово зеленым и даёт пройти далее.

Макеты раздела «Практика»
Пользователь показывает на камеру какие-либо жесты, система распознает их

Пользователь показывает на камеру какие-либо жесты, система распознает их
В случае показа нужного жеста, система выделяет это слово зеленым цветом и дает пройти далее :)

В случае показа нужного жеста, система выделяет это слово зеленым цветом и дает пройти далее 🙂

«Словарь» — пользователь сможет не только просматривать гифки с жестовым языком, но и потренироваться в показывании жестов.

Макеты раздела «Словарь»
Просмотр всех слов по разделу и темам

Просмотр всех слов по разделу и темам
Просмотр конкретного слова: гифка, мб картинка, ну и само слово текстом :)

Просмотр конкретного слова: гифка, мб картинка, ну и само слово текстом 🙂
Извините, но тут пока есть только старый макет :)

Тренировка показа выбранного слова, без сохранения какого-либо прогресса

Конечно, на всё это сверху накручиваем небольшую геймификацию: уровень, достижения, растущее дерево в разделе «Обучение» (которое будет увеличиваться от уровня).

По итогу получаем сервис для изучения русского жестового языка.
(Ждём критики в комментариях ?)

Что под «капотом»?

  1. Модель распознавания от команды Центра развития ИИ во благо общества Sber AI — её зарелизили в опенсорс буквально на прошлой неделе, велком пробовать свои силы 🙂

    Распознавание русского жестового языка: распознаём до 3+ жестов в секунду на обычном ПК без видеокарты

    https://github.com/ai-forever/easy_sign

  2. Python API на вебсокетах для передачи видео из браузера в модель распознавания (flask-socketio) — его мы написали в рамках хакатона, а потом постоянно дорабатывали (даже сегодня)

  3. Фронт на TS React — раньше писали на JS, в этом полугодии решили пересесть на что-то новенькое.

  4. Мощненький сервер от яндекс.клауд и nginx на нём — чтоб API где-то крутилось и работало 🙂

    На этом стэк демо версии заканчивается, но в полном сервисе еще присутствуют:

  5. Бэк на С# .Net, Docker, Postgress….

Что готово сейчас?

Мы успели подготовить интерфейс тренажера РЖЯ, чтобы показать возможности модели распознавания жестов и задумку нашего сервиса.
Сейчас этот тренажер доступен всем, нужно только иметь веб-камеру и интернет соединение.

Сервер с моделью распознавания будет включен до 6.12.2023, но чуть ниже есть гайд, как запустить всё на своём ПК.

Велком тестить и давать обратную связь 🙂

https://pincode-project.ru/ *корректно отображается только на ноутбуке/ПК, модель распознавания может работать с задержками из-за высокой нагрузки.

Что делать, если увидели статью после 6.12.2023, но потестить хочется?
  1. Скачать все файлы из данного репозитория

  2. Попробовать запустить SLT_API.exe

  3. В случае блокировки приложения антивирусом — отключить защиту (переживать не стоит, просто это единственный способ завернуть python в исполняемый файл)

  4. Открыть сайт для тестирования

  5. Протестировать сам сервис и распознавание жестов

  6. Оставить обратную связь в тг нашего менеджера 🙂

Распознавание работает только тогда, когда включен .exe файл
Требования к ПК для использования API приложения — процессор от 8 ядер 🙂

Наша команда

Роман Ахидов — проджект менеджер,
Константин Голунов — техлид бэка,
Данил Мухаметшин — бэк,
Максим Рожков — техлид фронта,
Ирина Туманова — фронт,
Любовь Крашенинникова — дизайнер.

Мой контакт — https://t.me/roma_cheby, буду рад критике и предложениям как в комментариях, так и в ЛС!


ссылка на оригинал статьи https://habr.com/ru/articles/777700/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *