Поза отслеживания данных для бейсбольных кувшинов
Readme.md - краткий обзор данных и того, как их использовать
Example_script.r - сценарий с примерами того, как использовать данные
Данные можно найти по следующей ссылке Dropbox: https://www.dropbox.com/sh/gxxxnqu9c1v0d6w/aaa8ilsel7yb3_uyn03_k7vba?dl=0
Основным файлом является Pitcher_motion_data.csv. Это файл CSV около 500 МБ.
Существует также компаньон CSV -файл, который содержит данные StatCast, соответствующие высотам, которые включены в этот набор данных.
Данные были взяты для кувшинов/типов шага, которые были брошены не менее 5 раз на поле Tropicana в регулярном сезоне 2021 года. 5 образцов видео использовались для каждого шага, в каждом случае они были последними брошенными конкретным кувшином.
Поле Tropicana использовалось, потому что у него есть угол камеры центрального поля, с которым легко работать. Только ограниченные данные включены из -за объема вычислений, необходимого для измерения позиций кувшина.
Каждый отдельный шаг может быть уникально идентифицирован с помощью трех столбцов:
Столбец "rablised_frame" содержит временную переменную для шага, измеренная в видео кадрах (видео составляет 60 кадров в секунду). Это обнуляется при подъеме кувшина и простирается как в положительных, так и в отрицательных направлениях.
Обнаружение кувшина было выполнено автоматически на основе их положения в кадре, синхронизация высот выполнялась автоматически с помощью подъема ноги кувшина. Могут быть случаи, когда этот процесс потерпел неудачу, потому что алгоритм отслеживания позы не идентифицировал кувшин, или какая -то часть движения кувшина не была замечена в видео выделения. Я включил два флага надежности, чтобы показать, когда этот процесс не удался.
«NO_MISSING_FRAMES» = 1 Когда кувшин можно непрерывно наблюдать от нормализованного_фраме = от -20 до +120, в противном случае могут быть кадры в этот период времени, когда кувшин не был обнаружен и поэтому отсутствует в наборе набора. «Smooth_com_flag» = 1 Когда позиция торса кувшина не варьируется более чем на 100 пикселей между последовательными кадрами, это удаляет случаи, когда различные игроки могут быть обнаружены в качестве кувшина. Фильтрация по обоим этим столбцам дает наиболее надежный набор данных движения.
Столбцы с V1 до V51 описывают положения частей тела кувшина в пикселях. Каждая часть тела описывается тремя столбцами, горизонтальные и вертикальные координаты являются первыми двумя, я не уверен, что такое третье, но я оставил его в наборе данных. Порядок всегда остается сначала, затем направо, двигаясь вдоль тела
V1-V15-точки на голове
V16-V21-плечи
V22-V27-локтя
V28-V33-это руки
V34-V39-это бедра
V40-V45-колени
V46-V51-ноги
Вертикальные компоненты - это количество пикселей из верхней части изображения, поэтому вам нужно взять (720 - переменная), чтобы получить правильную позицию на изображении.
Существуют также некоторые другие переменные, которые остаются от идентификации кувшина, а также переменная, содержащая элементарную попытку измерить отделение тазобедренного/плеча от этих двухмерных данных, это не является надежным измерением!
Благодаря Baseballsavant и MLB за то, что видео модели легко доступны в Интернете, что было важно для сбора данных в этом масштабе.
Также благодаря Уиллу МакНалли за Капао все обнаружение позы было сделано с использованием этого алгоритма, реализованного в Python.
https://github.com/wmcnally/kapao
Это тип набора данных, который не был общедоступным ранее, я надеюсь, что некоторые использование можно найти для него.
Если у вас есть какие -либо предложения в Twitter @pitching_bot или найдите мою контактную информацию на моем сайте
Кэмерон Гроув - 24/12/21