Баннер мобильный (3) Пройти тест

Как студенты Skillfactory разработали систему распознавания действий для KION

Асинхронные триггеры, графовые сети и MLOps-подход в реальном кейсе от индустриального партнера

Кейс

28 апреля 2026

Поделиться

Скопировано
Как студенты Skillfactory разработали систему распознавания действий для KION

Содержание

    Skillfactory совместно с KION провели хакатон, где студентам предложили разработать инструмент видеоаналитики для распознавания действий в кино. Рассказываем, как команда из трех студентов разработала систему с событийной логикой, оптимизировала производительность и превратила прототип в полноценный инженерный продукт.

    Распознать действие по «точкам и палочкам»: с каким брифом пришли партнеры

    Онлайн-кинотеатр KION поставил перед участниками хакатона задачу разработать прототип системы, которая умеет распознавать действия персонажей на видео не по изображению целиком, а по скелетным данным — ключевым точкам человеческого тела.

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

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

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

    Елизавета Большова,
    тимлид команды,
    студентка Skillfactory

    Партнеры задали и конкретные технические ориентиры:

    • использование Python и современных CV/ML-инструментов (PyTorch или TensorFlow, OpenCV);
    • детекция поз с помощью YOLO-pose или аналогов;
    • оценка качества по метрикам Accuracy, Precision, Recall и FPS;
    • требование к производительности — обработка одного часа FullHD-видео не более чем за 20 минут.

    Архитектурно команды не ограничивали: можно было использовать графовые нейронные сети (например, ST-GCN), трансформеры или гибридные подходы. Важнее было не строгое следование конкретной технологии, а способность предложить работающее и масштабируемое решение.

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

    Сергей Барышев,
    руководитель направления искусственного интеллекта
    On-Media (KION)

    «Мы постоянно были на созвонах»: как студенты построили разработку

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

    Тимлид команды Елизавета Большова координировала процесс и параллельно участвовала в разработке. Несмотря на небольшой состав, команда покрывала все ключевые направления: Computer Vision (детекция поз и графовые модели), ML-инжиниринг (интеграция мультимодальной модели) и backend — для сборки решения в единый сервис.

    Skillfactory и KION

    Работу выстроили в несколько этапов:

    • анализ предметной области и изучение референсных архитектур (включая датасеты уровня NTU);
    • параллельная разработка, в которую входят, с одной стороны, настройка детекции поз и графовых моделей, а с другой — разворачивание мультимодальной модели;
    • интеграция компонентов через API и сборка единого пайплайна;
    • тестирование на реальных видео, оценка метрик и производительности;
    • подготовка финальной демонстрации и документации.

    Технически решение собрали на Python с использованием PyTorch и OpenCV. Для детекции поз применяли YOLO-pose, для анализа последовательностей — графовую архитектуру ST-GCN++, а для сложных случаев — мультимодальную модель Qwen2-VL, развернутую в Docker-контейнере с доступом через REST API.

    Основная сложность была в развертывании и стабилизации работы мультимодальной модели в контейнеризированной среде. Нужно было обеспечить корректный проброс GPU, совместимость версий CUDA и библиотек, а также предотвратить переполнение видеопамяти при инференсе. Также важно было разработать эффективный механизм вызова VLM: модель активировалась только при низкой уверенности базового классификатора и не чаще одного раза в несколько кадров. Это позволило сохранить высокую общую производительность пайплайна. Интересно было преобразовывать сложную модель с высокими аппаратными требованиями в доступный микросервис. После настройки контейнера и API участники команды могли взаимодействовать с VLM простым HTTP-запросом, не вникая в особенности конфигурации окружения. Это классический пример MLOps-подхода, где инженерная работа делает передовые модели практически применимыми в рамках общей систем.

    Даниил Шайдуров,
    ML-разработчик,
    студент Skillfactory

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

    Когда вас мало, пропадает всякая бюрократия: мы постоянно были на созвонах, брейнштормили и подхватывали идеи друг друга буквально на лету. Я живу в часовом поясе плюс четыре часа к Москве. Часто бывало так, что ребята только пришли с основной работы, а я сижу глубокой ночью, гоняю пайплайны, чтобы к их утру были результаты. Анализирую ошибки, пытаюсь понять, почему графы не видят движение или математика выдает странный результат, и скидываю анализ в чат. У ребят как раз начинается вечер, они подхватывают работу. Я просыпаюсь и на свежую голову продумываю следующие шаги по их коду. Это было очень драйвовое и веселое время.

    Елизавета Большова,
    тимлид команды,
    студентка Skillfactory

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

    Каким получился итоговый продукт

    В результате команда разработала гибридный пайплайн видеоаналитики, который сочетает высокую скорость обработки и точечное использование тяжелых моделей. Базовая система работает в реальном времени и обрабатывает до 200 кадров в секунду, а при обнаружении сложных или неоднозначных сцен подключает мультимодальную модель для дополнительной проверки.

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

    Модуль VLM функционирует стабильно, контейнер корректно обрабатывает запросы и возвращает результаты анализа сцены. Интеграция с основным пайплайном выполнена успешно. В целом система распознает все одиннадцать целевых классов действий, формирует структурированный JSON-отчет с таймкодами и метками. Требование по производительности перевыполнено — час видео обрабатывается примерно за пятнадцать минут благодаря стратегии выборочного вызова тяжелой модели. К ограничениям прототипа можно отнести зависимость точности распознавания от качества исходного видеоматериала и необходимость дообучения на расширенном датасете для промышленного применения.

    Даниил Шайдуров,
    ML-разработчик,
    студент Skillfactory

    На выходе система формирует структурированный JSON-отчет с таймкодами, персонажами и классификацией действий, что делает решение пригодным для интеграции в реальные продукты.

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

    Елизавета Большова,
    тимлид команды,
    студентка Skillfactory

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

    Сергей Барышев
    руководитель направления искусственного интеллекта On-Media (KION)

    «Мы не первый год работаем со студентами, и в этот раз результат превзошел ожидания по глубине проработки. Участники продемонстрировали понимание фундаментальных ограничений чисто скелетного подхода и предложили элегантные инженерные решения. Например, гибридные пайплайны с триггерной активацией визуально-языковых моделей позволили сохранить высокую производительность, а математический анализ групповых сцен — распознавать сложные взаимодействия без использования GPU. При этом команды честно задокументировали ограничения системы и предложили конкретные пути их устранения, что говорит о зрелом системном мышлении.
    Мы рассматриваем эти прототипы как доказательный концепт для промышленной системы видеоаналитики и планируем использовать отдельные компоненты в наших внутренних разработках».

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

    Кейс

    Поделиться

    Скопировано
    0 комментариев
    Комментарии