サーブの検出力に依存せずプレーの開始点を見つける

鈴木碩人氏(以下、鈴木):自己紹介です。鈴木碩人といいます。2021年4月から、IT系の企業の研究開発職に入っていて、スポーツ歴は、テニスを10年くらいしています。『ベイビーステップ』みたいな頭脳戦ができたらおもしろいかなと最近思っています。

目次です。背景、着想、実験、結果、宣伝という構成で発表したいと思います。

まず背景について説明します。

試合は下の図のように、階層構造をもっているので、分析する時にポイントごとに集計する必要があります。なので、ショットの検出だけではなくて、何のゲームで何ポイント目かも分析においては必要になります。

プレーの切れ目はどう判断するのか、単純にサーブの検出ができればいいのかというと、そうではありません。実際に自分で録画して、画像認識をしてみると、撮影条件が悪かったり、フォームにばらつきがあったりして、けっこうサーブの検出漏れが発生するからです。

そこで、サーブの検出力に依存しすぎずに、プレーの開始点を見つけたいなと思いました。

着想です。サーブを打つ場合は、プレーヤーの位置関係や動作関係に制約があるので、そういうものを利用するとよりロバストに、プレーの開始点を見つけられるんじゃないかなと思いました。

実験について、説明します。

概要です。最初はCenterNetを使って、最後は決定木を使っています。

順々に説明します。まず、CenterNetでプレーヤーの動作認識と、コート検出をします。動作は、サーブ、ストローク、何もしていないの3種類としています。また、時系列入力にはしていません。

次に、CenterNetを使って検出したプレーヤーの矩形から、プレーヤーのコート状の座標を計算します。お馴染みのHomography変換を使っています。

最後にプレーヤーのコート座標と、動作の確率を使って、プレー中かどうかを2値分類します。

野良試合では画像認識に限界がある

実験の結果です。

まずサーブの認識精度ですが、手前側のプレーヤーはけっこう精度が良いのですが、奥側のプレーヤーは、けっこう精度が悪いです。これは余談ですが、ラケットを含めると精度が上昇するというTipsがあります。

さきほど、精度が良かったと言った手前側のプレーヤーも、誤検知がある程度は発生しています。

それを踏まえたうえで、プレー分割をプレーヤーのコート座標も含めるとどうなるかというと、一応精度が向上していることがわかりました。重要度を見ても、座標の情報が効いてることがわかりました。

まとめです。野良試合では、画像認識にけっこう限界があるので、ちょっとしたルールや、工夫を利用することで、それを補うことが重要なんじゃないかなと思いました。

最後は、宣伝なのですが、戦術分析をするWebアプリを作っているので、なにか知見があったら教えていただきたいですし、興味のある方がいらっしゃったらご連絡ください。

ご清聴ありがとうございました。

(司会者拍手)

司会者:おもしろい観点でいろいろ分析をされていて、素敵だと思いました。この野良試合と言ってるのは、ご自身の試合を動画で撮って、アノテーションを自分でやったということですか?

鈴木:そうですね。

司会者:なるほど。どのぐらいアノテーションはかかったんですか?

鈴木:6ゲーム分くらいやりました。何時間必要だったんだろう。覚えてないぐらい、けっこう時間が必要でした(笑)。

司会者:そうですよね。なかなか、こういうデータは、一般の試合のやつを取ってくるのはちょっと難しいですよね。

鈴木:そうですね、なかなか大変です。こんな感じで、けっこうフェンスで3メートルくらいにくっつけても、後ろのほうのコートはあんまり見えなくて。一般人が映そうと思うと、これぐらいが限界なのかなという感じです。

司会者:そうですよね。中継ではよっぽどいいカメラを使っていますしね(笑)。1個、質問が来ています。テニスプレーヤーさんによってサーブ前のクセがいろいろとあるというところで「ボールをバウンドさせるのとかが、特徴量として使えたりしないんでしょうか?」と来ていますが、このあたりどうでしょうか?

鈴木:確かに。そういうのは使えそうだと思います。ボールのバウンド動作ですね。

司会者:プレー中にはなかなか発生し得ない動作ですからね。

鈴木:そうですね、確かに。

司会者:おもしろいですね、いいアイデアな気がします。

鈴木:そうだと思います。ありがとうございます。

司会者:もう1個質問が来ていますね。「CenterNetで取ったデータをどうLightGBMに入れたか」

鈴木:この表を見てもらうといいと思います。奥側と手前側のプレーヤー、コート座標、CenterNetを使って出力した動作のパーセンテージを入力にしています。

司会者:このコート座標はそれぞれ分解して、別のカラムにしてということですかね。ありがとうございます。それではこれで発表を終了としたいと思います。