Реализация основана на идеях из GridTrackNet и TrackNetV4.
На мобильных устройствах я эти модели пока не запускал. Один из возможных вариантов оптимизации — обучить модель обрабатывать каждый второй кадр при частоте видео 30 FPS, фактически выполняя детекцию на 15 FPS, а положение мяча на промежуточных кадрах интерполировать по соседним результатам.
Это хобби-проект, поэтому скорость его развития сильно отстаёт от моих планов. В дальнейшем хотелось бы повторить функциональность зарубежных аналогов.
TAPe — Theory of Active Perception — скорее стало катализатором моего интереса к этой задаче и отправной точкой для поиска новых архитектурных решений. Однако в процессе экспериментов реализация действительно сместилась в сторону CNN, как вы верно заметили. Основной целью было сначала получить рабочую модель, а затем, решая возникающие проблемы, глубже разобраться в устройстве подобных систем.
В итоге я остановился на идее усиливать признаки игроков и мяча за счёт информации из соседних кадров. Поэтому модель получает на вход последовательность кадров, а не одно изображение.
Что касается YOLO: в сравнительной таблице есть результаты замеров, и YOLO действительно отлично справляется с детекцией игроков. Основная проблема возникает с мячом. Её выраженность сильно зависит от камеры, выдержки и качества видео: на некоторых кадрах мяч выглядит не как круглый объект, а как размытый овал, короткая полоса или вообще почти не виден.
В своей модели я пытаюсь объединить детекцию игроков и мяча, сохранив при этом приемлемую производительность на CPU.
И главный ответ на вопрос «зачем создавать свою модель, если уже есть YOLO?» — мне хотелось собрать систему по кирпичикам с нуля и глубже понять, как работают детекция, временные признаки, выбор областей внимания и оптимизация инференса на CPU.
Мы выкинули цвет и для 30fps передали информцию за 0,1 сек. Для наших условий - статическая камера визуально стали видны объекты в движение. На текущий момент мы на этапе разметки данных. По завершению проведем замеры точности
Ранее я писал статью об облегчённых вариантах TrackNet/GridTackNet для запуска на CPU:
https://github.com/asigatchov/fast-volleyball-tracking-inference
Код для обучения моделей находится в отдельном репозитории:
https://github.com/asigatchov/vball-net-pytorch
Реализация основана на идеях из GridTrackNet и TrackNetV4.
На мобильных устройствах я эти модели пока не запускал. Один из возможных вариантов оптимизации — обучить модель обрабатывать каждый второй кадр при частоте видео 30 FPS, фактически выполняя детекцию на 15 FPS, а положение мяча на промежуточных кадрах интерполировать по соседним результатам.
Это хобби-проект, поэтому скорость его развития сильно отстаёт от моих планов. В дальнейшем хотелось бы повторить функциональность зарубежных аналогов.
TAPe — Theory of Active Perception — скорее стало катализатором моего интереса к этой задаче и отправной точкой для поиска новых архитектурных решений. Однако в процессе экспериментов реализация действительно сместилась в сторону CNN, как вы верно заметили. Основной целью было сначала получить рабочую модель, а затем, решая возникающие проблемы, глубже разобраться в устройстве подобных систем.
В итоге я остановился на идее усиливать признаки игроков и мяча за счёт информации из соседних кадров. Поэтому модель получает на вход последовательность кадров, а не одно изображение.
Что касается YOLO: в сравнительной таблице есть результаты замеров, и YOLO действительно отлично справляется с детекцией игроков. Основная проблема возникает с мячом. Её выраженность сильно зависит от камеры, выдержки и качества видео: на некоторых кадрах мяч выглядит не как круглый объект, а как размытый овал, короткая полоса или вообще почти не виден.
В своей модели я пытаюсь объединить детекцию игроков и мяча, сохранив при этом приемлемую производительность на CPU.
И главный ответ на вопрос «зачем создавать свою модель, если уже есть YOLO?» — мне хотелось собрать систему по кирпичикам с нуля и глубже понять, как работают детекция, временные признаки, выбор областей внимания и оптимизация инференса на CPU.
Сейчас используем для нарезки розыгрышей без пауз и формирования вертикальных видео с фокусом на мяч.
Мы выкинули цвет и для 30fps передали информцию за 0,1 сек. Для наших условий - статическая камера визуально стали видны объекты в движение. На текущий момент мы на этапе разметки данных. По завершению проведем замеры точности