Клиент
Группа Родина — девелопер полного цикла. Специализируется на жилых кластерах с сильной спортивной, образовательной и культурной инфраструктурой. Дом русского бильярда «Москва» — собственный проект компании. Она инициировала и профинансировала реставрацию исторического здания на Вятской, 41А. Была поставлена цель – сделать инновационный бильярдный комплекс, не только за счет самого современного оснащения, но и с помощью технологических решений. Компания Фрифлекс стала технологическим партнером группы Родина, чтобы решить эту задачу.
Задачи
Разработать аппаратно-программный комплекс для русского бильярда, который станет не только помощником в обучении игре в бильярд, но и уcилит игровой опыт за счет инновационных функций и возможностей.
- из мультикамерного видеопотока в реальном времени стабильно распознает шары и кий;
- проецирует на сукно подсказки и траектории;
- позволяет запускать тренировки и челленджи с телефона по QR;
- автоматически собирает хайлайты и рассылает результаты;
- управляется централизованно через административную панель;
- и другое.
Открытие
Открытие Дома русского бильярда с фиджитал-комплексом стало заметным городским событием, открывал клуб лично мэр Москвы Сергей Собянин.
«Сегодня здесь, на Вятской улице, начал работу большой бильярдный центр на 21 стол — с комфортной зоной отдыха, инновационным фиджитал-комплексом и семейным детским центром. Пространство рассчитано почти на 500 посетителей в день», — написал Сергей Собянин в своем телеграм-канале.
1. Административная панель. Это веб-интерфейс для операционки клуба. Он позволяет привязывать компьютеры к столам, запускать и останавливать сеансы, просматривать текущее время, статусы и итоги игр.
В административной панели доступны разделы «Видео» и «Статистика» со ссылками на записи и сводками по сессиям. Редактор тренировок фиксирует реальный расклад с камер, дает выбрать лузу и биток и включает «режим рисования» стрелок для сценариев.
2. Бэкенд на Python. Бэкенд управляет админской логикой и сессиями. Он авторизует и валидирует запросы из админки (создать стол, привязать устройство, запустить/остановить сеанс, сохранить тренировку), обновляет данные, синхронизирует их с компьютерами у столов, генерирует QR-коды и запускает пост-обработку видео.
3. Приложение для игроков на Flutter. Открывается по QR-коду у стола и подключается к сессии. В приложении игрок выбирает режим (игра, тренировка или челлендж), вызывает подсказки и завершает игру. К тренировкам есть описания и примеры с видео, во время сценария отображаются шар, который выбрал пользователь, и анимированная траектория. Можно включить трансляцию для тренера: система формирует ссылку, которую тренер открывает в браузере.
Приложение разработали с помощью Flutter. Это кроссплатформенный фреймворк, который позволяет использовать одну кодовую базу для web, iOS, Android и других платформ. На площадке развернули приложение как PWA (Progressive Web App): оно открывается в браузере по QR-коду, работает полноэкранно и не требует установки из магазина. Такой подход дает мгновенный старт для гостей и один код-бейз для всех платформ.
4. AR-отрисовка на проектор. Модуль проецирует на сукно прямую линию прицеливания в момент наведения, имена игроков, таймер и служебную графику. В тренировках он показывает крестики для расстановки шаров, подсвечивает биток и лузу, анимирует траекторию удара. Отрисовка синхронизирована с реальной сценой, чтобы разметка ложилась точно на стол.
5. Модуль машинного обучения и компьютерного зрения. Модуль обрабатывает мультикамерный поток с пяти камер и в реальном времени распознает шары и кий. Он оценивает направление кия, фиксирует моменты удара и на этой базе строит 3D-представление сцены. Эти данные используются для подсказок и расчета траекторий.
Функции фиджитал-комплекса
Классическая игра
Игрок сканирует QR-код на столе и попадает в приложение. Подтверждает состав: выбирает имена из списка или добавляет нового участника в разделе «Игроки». Задает параметры партии, например, лимит подсказок.
Когда игрок нажимает «Начать игру», система запускает игру. На стол проецируются имена игроков и таймер, статус стола меняется на «Занят», начинается запись. Если навести кий на биток, появляется прямая линия прицеливания. В любой момент можно вызвать подсказку (с учетом лимита) или завершить игру. Когда игра заканчивается, система выводит итоговую статистику и формирует ссылку на видео с хайлайтами.
Математическая подсказка лучшего удара
Разработали математическую модель для режима, который анализирует позицию на столе и выбирает, какой шар легче всего будет забить. Система рассчитывает оптимальную траекторию «биток → шар → луза» и подсвечивает на столе целевой шар, биток и линию удара. Подсказка работает поверх данных распознавания в реальном времени.
Тренировка
Игрок выбирает режим «Тренировка» и сценарий. На сукне появляются крестики, куда выставлять шары. Если расстановка правильная, подсветка становится синей, загораются биток и луза, отрисовывается анимированная траектория. В момент удара проекция гаснет, после остановки шаров система снова просит выставить позицию, цикл повторяется. В приложении отображаются название, описание, точка и видео удара, а также изображение зеленого стола с заданием тренировки.
Трансляция для тренера
В режиме тренировки игрок может поделиться трансляцией с тренером: приложение формирует ссылку на сессию. Тренер открывает ее в браузере и видит название и краткое описание упражнения, индикатор точки удара (белый круг с красной точкой), кнопку «Смотреть видео» и переключатель «Запустить трансляцию для тренера». Если включить переключатель, откроется встроенный плеер с живым видео со стола.
Челлендж
Челлендж — это набор тренировочных позиций, которые проходят по очереди с целью уложиться в минимальное число ударов. Стол показывает, за сколько ударов игрок взял позицию и тут же выводит следующую. В приложении видны название челленджа, описание заданий и процент выполнения. Режим рассчитан на одного игрока. Система считает попытки, показывает процент выполнения и формирует локальный рейтинг.
Хайлайты
В классическом режиме система пишет видео партии, а затем автоматически собирает короткую нарезку лучших моментов. Алгоритм ищет события по данным распознавания: факт удара, забития и серий. Если есть экшен, вырезает фрагменты и склеивает их в динамичный ролик.
Итоговое видео формируется после завершения игры. Ссылка появляется в разделе «Видео» административной панели и отправляется игрокам вместе со сводной статистикой по сеансу.
Результаты
- Стабильное распознавание в реальном времени: система держит точность отрисовки прямой линии ~4–5% при спецификации <10%.
- Доказанная точность распознавания в условиях турнира: на базе фиджитал-комплекса прошел первый поединок по русскому бильярду между двумя городами. Он вошел в Реестр рекордов России.
- Пилотный кейс для городских площадок: управляемая цифровая инфраструктура комплекса позволяет использовать его как готовую точку притяжения для выставок, фестивалей и спортивных хабов, встраивать в коворкинги, ЖК и общественные пространства.
- Вклад в популяризацию русского бильярда: автоматическая пост-обработка видео и сбор хайлайтов превращают каждую игру в контент. Это усиливает миссию проекта: формировать тренд на русский бильярд как на современный и динамичный вид спорта.
-
«Русский бильярд — часть нашего национального достояния. Сегодня мы видим, как традиционный спорт обретает второе дыхание. Фиджитал-модуль создан и внедрен для того, чтобы сделать игру ближе и интересней для молодежи и вовлечь в этот спорт как можно больше людей»
Другие кейсы
Виктория
Мобильное приложение для сети супермаркетов
Максидом
Мобильное приложение для сети гипермаркетов