Автор: Илья Бакалец

Введение

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

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

Рис.1. Топ-5 команд, занявших денежные места

Рис.1. Топ-5 команд, занявших денежные места

Задача

Цель — определить наличие/отсутствие столкновения между двумя игроками в конкретный момент времени в конкретной игре.

В соревновании использовалась метрика корреляции Мэтьюса (MCC) для оценки качества классификации столкновений между игроками. MCC позволяет учитывать все четыре возможных исхода классификации: верно-положительный (TP), верно-отрицательный (TN), ложно-положительный (FP) и ложно-отрицательный (FN).

$$ ⁍ $$

Рис. 2. Пример видеоигры с baseline решением

Рис. 2. Пример видеоигры с baseline решением

Данные соревнования

Поскольку данных много (их особенностей еще больше), я кратко опишу самое важное. А остальное можно посмотреть тут или во вкладках (toggles) ниже.

  1. Видео данные [train/test] mp4

    Каждая игра имеет три видео с трех разных ракурсов. Видео sideline и endzone синхронизированы по времени. Для видео All29 синхронизация не гарантируется (не видел его использование, хотя его предоставляли для возможности обзора всех игроков на поле).

  2. Tracking данные

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

Также эти данные собираются с частотой 10 Гц каждые 0,1 секунды.

  1. Шлемы игроков (bboxes)

Эти данные были предоставлены с прошлого соревнования от NFL. Хоть это и предсказания модели, почти всегда шлемы были определены достаточно точно и это не было проблемой. Всего было 3 таких соревнования. Собственно, в предыдущем соревновании надо было задетектить шлема игроков.