Японские программисты научили нейросеть в реальном времени предсказывать место падения мяча в настольном теннисе по положению тела игрока, в том числе еще до того, как ракетка коснулась мяча. Эксперименты с профессиональными игроками и любителями показали, что предсказанная точка падения в 75 процентах случаев корректно укладывается в диаметр мяча, рассказывают авторы статьи, представленной на конференции CHI 2020.
Один из основных навыков, необходимых в играх с мячом, заключается в предсказании поведения соперника и траектории, по которой он будет посылать мяч. Инженеры уже давно пытаются создать роботов, способных делать такие предсказания и играть не хуже людей. Например, несколько лет назад японская компания Omron представила большого робота для игры в настольный теннис, способного быстро отслеживать траекторию мяча и игрока. Как и почти во всех аналогичных разработках, для расчета траектории мяча используются только его предыдущие положения, причем расчеты начинаются после удара ракеткой. Но поскольку при подаче профессиональный игрок уже знает, куда он будет посылать мяч, его соперник-профессионал, как правило, старается еще во время замаха по положению тела подающего примерно спрогнозировать направление удара и приготовиться.
Эрвин У (Erwin Wu) и Хидэки Коикэ (Hideki Koike) из Токийского технологического института решили использовать при компьютерном прогнозировании траектории мяча такой же подход. В основе их алгоритма лежат две нейросети с разными задачами и архитектурой. Сначала данные с веб-камеры, установленной сверху со стороны принимающего игрока попадают на сверточную нейросеть ResNet50, которая размечает на каждом кадре положение основных сегментов тела подающего игрока.
Затем десять последних кадров с размеченными положениями тела подаются на нейросеть с долгой краткосрочной памятью (LSTM), которая отвечает за расчет места падения мяча. Вместе с ними этой нейросети даются данные о положении игрового стола, благодаря чему происходит калибровка. Полученная точка падения при необходимости в реальном времени выводится на стол с помощью проектора.
Авторы сами собрали данные для обучения, отслеживая полет мяча с помощью высокоскоростной камеры, но уменьшали частоту с 240 до 30 кадров в секунду, чтобы привести в соответствие с веб-камерой, используемой вне обучения. Кроме того, они записывали звук во время игры, чтобы точно определить момент касания мяча о стол. Для предварительного обучения разработчики также применяли записи теннисных подач из интернета. Сопоставив точные данные о траектории с положениями тел игроков во время множества подач, они обучили алгоритм достаточно точной работе.
После обучения алгоритма разработчики проверили его на успешных подачах восьми человек, из которых четверо были часто играющими игроками, а еще четверо были любителями. Результаты показали, что предсказания алгоритма корректно укладываются в круг с диаметром четыре сантиметра (размер мяча) в 81,25 процента случаев при подаче профессионала и в 68,75 процента при подаче любителя (в среднем 75 процентов).
В еще одном исследовании они проверили применимость системы для обучения, пригласив шесть человек, почти не игравших в настольный теннис. Они должны были принимать подачу опытного игрока в двух условиях: с проекцией рассчитанной точки падения на стол или без нее. Выяснилось, что с проекцией они успешно отбивали мяч на сторону соперника почти на 11 процентов чаще.
В прошлом году американские разработчики научили нейросеть создавать по ролику с началом движения человека анимированную трехмерную модель, достаточно точно предсказывающую дальнейшее движение.
Григорий Копиев