Комментарии 4
Я пробовал решать подобную задачу для большого тенниса, и сразу пошел по такому пути: CNN распознает мяч, игроков и их позу. Далее маленькая LSTM модель быстро определяет, что они делают. В теннисе мяч маленький, поэтому требуется работа в HD-разрешении (и то при ширкоугольной любительской съемке мяч в дальней точке занимает пару пикселей). CNN достаточно нагружена и требуется максимальная оптимизации. Я пробовал добавлять LSTM слои напрямую в CNN (которая работает с последовательностями кадров и может понимать время), но они плохо ложатся на конвейеры NPU и о риалтайме можно забыть. А распознавание позы - тот же компактный Yolo решает отлично, так что потом маленькая нейросеть быстро обрабатывает последовательности из 10-20 кадров и неплохо понимает, что происходит. Самое сложное это разметка: нудная работа, так как нужно собрать много ракурсов, задом-передом, правши-левши.
С мячем хорошо справляется https://github.com/VKorpelshoek/GridTrackNet.
С позой мои попытки оказались неудачными - модели плохо работают на маленьких игроках и плохо знакомы с позициями руки вверх (Блок/атака/передача сверху)
Думаю для поз проблему можно решить дообучением - но разметка 1000 кадров с позами это сверх трудоемко для хобби проекта
GridTrackNet да, хорошо справляется, но она очень тяжелая. При первом запуске на ноуте без GPU c 16 Gb оперативки она даже не запустилась. Я пробовал разные архитектуры вроде U-net и разные оптимизации, чтобы получить сравнимые результаты, но с меньшим количеством фильтров и слоев, чтобы уложиться в мобильный NPU.
С позами плюс в том, что много хорошо оптимизированных архитектур именно под эту задачу. Если цель распознать только несколько характерных движений, где их можно узнать по одному кадру - то да, можно и напрямую в одной сети.
Я облегчал grid для работы на CPU https://github.com/asigatchov/vball-net-pytorch/blob/main/src/model/vballnet_grid_v3.py если есть данные можно попробовать обучить под теннисны мяч точность на моих задачах давала до 0,80
Лишнии всплески и прыжки филтруются по траектории
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Анализ волейбольного видео: фиксируем и классифицируем игровые действия