Видео с искусственным интеллектом для создания вашей личной видеотеки о теннисе!

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

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

Для этого мы будем использовать модели Auto ML Video Intelligence в Vertex AI. Vertex AI — это унифицированная платформа искусственного интеллекта GCP. Решение для этого, как описано ниже,

Чтобы продемонстрировать это решение, я искал общедоступные видеоролики с пометкой Tennis Videos :-) К сожалению, я не смог найти их. В итоге я нашел помеченные видео с драками и без боев по этой ссылке. В нем более 150 видеороликов с драками и без боев, снятых из любых отелей, баров и торговых центров. Решение должно работать точно так же для варианта использования видеотеки тенниса, если бы мы пометили видео ударов справа, слева или дроп-шотов в теннисе.

Мы будем использовать эти видео для демонстрации. Обучение Auto ML, используемое в этой демонстрации, оплачивается за час обучения. Таким образом, общая стоимость этой демонстрации составит около 20 долларов США.

  1. В качестве первого шага нам нужно будет загрузить все эти видео в корзину GCS. При необходимости вы можете хранить видео с драками и без боев в разных папках.

2. Мы будем использовать классификацию видео Auto ML в Vertex AI.

3. Создайте набор данных в Vertex AI, чтобы загрузить наборы видеоданных.

4. Видеофайлы, которые будут загружены, не будут напрямую перечислены как есть. Скорее, URL-адреса каждого из видео должны быть помещены в файл .csv. CSV-файл должен содержать следующие поля:

URL файла, метка видео в нашем случае (бой, без боя), время начала события (в нашем случае бой, без боя), время окончания события.

Итак, в пути к файлу импорта мы выберем этот файл .csv. Мы оставим разделение по умолчанию.

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

6. После завершения импорта мы приступим к обучению модели Auto ML.

7. На обучение моей модели ушло почти 5 часов.

8. Мы можем видеть Модель, параметры оценки. Это дает вам хорошую точность и показатели отзыва для более чем 100 образцов.

9. Теперь пришло время протестировать модель с помощью доступных видео для прогнозирования. Модели Auto ML Video допускают только пакетное прогнозирование.

10. Нам нужно передать тестовые ролики так же, как мы передавали входные файлы. Формат файла в этом случае должен быть в формате jsonl.

11. Образец входного формата jsonl для пакетного прогнозирования показан ниже:

{'content': 'gs://sourcebucket/datasets/videos/source_video.mp4', 'mimeType': 'video/mp4', 'timeSegmentStart': '0.0s', 'timeSegmentEnd': '2.366667s'}

12. Теперь мы загрузим файл jsonl с экземплярами для тестовых видео и укажем выходной путь, где будут храниться прогнозы,

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

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

15. Затем мы можем объединить все фрагменты видео боев в один файл, используя скрипт на Python, подобный тому, что находится здесь. Точно так же мы сможем объединить все теннисные видеосегменты ударов справа, слева или дроп-шотов в одно видео для каждого.

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