blog

DeNAのエンジニアが考えていることや、担当しているサービスについて情報発信しています

2024.10.22 インターンレポート

バスケットボール試合映像を用いたボールトラッキングデータの作成

by Zaiying ZHAO

#ai #deep-learning #object-detection #computer-vision #cv×sport

はじめに

2024年度 DeNA AIスペシャリストサマーインターンに参加した趙在瀛です。普段はAIの公平性 (バイアス) についての研究をしています。

本インターンでは、バスケットボールのボールトラッキングデータ作成という課題に取り組み、さらにこのデータによってどのような分析・チームへのフィードバックができるようになるかの検証を行いました。

バスケットボールにおけるデータ活用

DeNAではプロバスケットボールチームである川崎ブレイブサンダースの運営を行っています。現在様々なスポーツでチーム強化のためのデータ活用が広く行われており、DeNAでも 川崎ブレイブサンダース強化のためのデータ活用 に取り組んでいます。NBAなどの海外リーグでは「トラッキングデータ」と呼ばれるデータによって幅広い分析が実現されています。

トラッキングデータとは、下のようなプレイヤー / ボール位置の時系列データです。アメリカのNBAではこのトラッキングデータの取得のため、専用の設備が試合会場に常設されており、実際にボールの掌握率やパス情報、 その他様々な分析 に役立てられています。

tracking_sample

しかし、日本のプロバスケットボールリーグ「Bリーグ」ではトラッキングデータの取得のためのシステムが現状整備されておらず、分析に使えるデータが限られていました。そこで、DeNAではより多様な分析を実現するため、試合映像からトラッキングデータを作成する試みが行われています。

インターン課題について

私は本インターンで「ボールトラッキングデータの作成」という課題に取り組みました (下図参照) 。
ここではボールトラッキングの難しさと関連研究についてご紹介します。

overview

現状の課題

トラッキングデータの作成が行われている中で、今回はボールトラッキングデータの開発を行いました。
プレイヤーのトラッキングと比べ、ボールのトラッキングには以下のような難しさが存在します。

  • プレイヤーと比べてボールは画像中のサイズが小さいため、検出が相対的に難しく遮蔽 (occlusion) が多い。
  • プレイヤーがコートに接している一方、ボールは高さの考慮が必要になる。

関連研究

Ball 3D Localization[1] という研究では、画像中のボールサイズ (pixel単位) と実ボールサイズ (約24.5cm) との対比からボールトラッキングデータの作成が理論上可能であることが示されています。しかし、この手法を実際に適用したところ、画像中のボールサイズの僅かな違いによってトラッキングが大きく揺らぐことが分かりました。下の画像ではボールサイズが1pixelずれるだけで3m以上ボール位置が変わっており、これでは実応用可能な精度でのトラッキングは困難です。

related work

提案アプローチ

ハンドラーへの注目

先述の関連研究はボール検出をベースとしています。しかし、私はボール単体ではなくボールを持つプレイヤー 「ハンドラー」に注目することで、現状の課題が解消されるのではと考えました。
ボールではなくハンドラーに注目することで、以下のようなメリットがあります。

  • オブジェクトがプレイヤーとなるため、検出が容易となります。ただし、ハンドラー検出はボールに注目する必要があるため、ボール検出と本質的なタスクは変わりません。
  • 検出対象がプレイヤーに変わることで、高さを考慮する必要がなくなります。

これらのメリットを踏まえ、今回はハンドラーをベースとしたボールトラッキングアプローチを提案しました。

フレームワーク

提案アプローチのフレームワークは以下の通りです。入力は試合映像のフレーム画像となっています。

  1. (中央上) 入力画像に対してハンドラー検出を行います。モデルはFine-tuningしたObjectDetectionモデルを使用しました。
  2. (中央下) コートのライン検出を行い、画像中のコートを実際のコートに対応させるためのホモグラフィ行列を計算します。
  3. (右) ハンドラーのBounding Box下辺は地面と接しているため、下辺中心をボール位置として座標変換することで実コート上でのボール位置 (トラッキングデータ) を取得します。

framework

ハンドラー未検出時の対応

このアプローチは検知されたハンドラーからボール位置を計算しています。しかし、これではハンドラーが未検出のとき (e.g., ボールがパスされているとき) にはボール位置が取得できません。そこで、このようなハンドラーが未検出のフレームではハンドラーが検出された前後フレームによる線形補間を行いました。

線形補間という非常にシンプルな方法を選んだのは、ボールはプレイヤーからの外的な力を受けない限りコート上で直線運動をするためです。逆に、ボールが直線運動をしない場合、ボールはプレイヤーと接触しているため、そのプレイヤーがハンドラーとして検出されることでボール位置の取得が可能です。

デモ

以上のアプローチによって作成されたボールトラッキングデータのデモがこちらです。
(プレイヤートラッキングデータと合わせた可視化を行っています)

ボールトラッキングデータを使った分析

最後に、作成したボールトラッキングデータによって今後どのような分析が実現できるか、その可能性を動画像を交えてご紹介します。

ボール移動距離 / 得点期待値の計算

(動画左下) ボールの移動距離はオフェンスのボールムーブを定量化できますが、これはボールトラッキングデータによって容易に計算が可能です。

(動画右下) ショットチャートと呼ばれる各チームのコート上でのシュート成功率データ、およびボールトラッキングデータを組み合わせることで、現在のボール位置からシュートした時の得点期待値を計算することが可能です。

得点期待値を利用した分析例

先述の得点期待値を利用することで、パスの定量的な分析も実現できます。例えば下の画像の場合、ボールを持つプレイヤー (青Bounding Box) がパスできる4人のプレイヤー (赤Bounding Box) のうち、ペイントエリア付近にいるプレイヤーが最も高い得点期待値を示しています。このような最適なパス相手の分析によって、より得点につながる「良いパス」に関してチームへのフィードバックができるようになります。

※ 時間の制約上、今回はボールトラッキングデータのみから得点期待値を計算をしています。しかし、実際にはディフェンスの位置やプレイヤー情報も重要な要素であり、プレイヤートラッキングデータとの統合によってより信頼性の高い分析に繋がると考えています。

pass_analysis

まとめ・今後の展望

今回のインターンでは、バスケットボールのボールトラッキングデータの作成という課題に取り組み、ボール単体ではなくハンドラーに注目することで従来の課題を解決しつつ、シンプルなアプローチでこれを実現しました。また、ボールトラッキングデータによってどのような分析が可能になるのかの検証についても行い、バスケットボール×データ活用の今後の可能性を示せたのではないかと思います。

今後の展望には、大きく2つあります。

  • 今回はフレームごとにObjectDetectionモデルを適用していますが、SAM2[2]などのフレーム間のAttentionを計算するモデルを使用することでより正確なハンドラー検出が可能になると考えています。
  • ボール / プレイヤートラッキングを組み合わせることで、より粒度の高い分析が実現できると確信しています。

おわりに

今回与えられたインターン課題は普段の研究とは全く違う分野だったため、はじめはとても不安だったのを覚えています。ですが、メンターの吉川さんや柳辺さんに分野のキャッチアップやアプローチの壁打ち、実験結果の議論まで密に連携いただいたおかげで、なんとかまとまった成果を出すことができました。メンターのお二人には大変お世話になりました。
また今年はイベントやオフィス勤務など出社の機会も多く、多くの社員さんと交流させていただくことができました。皆さん気さくで話しやすく、DeNAの自由な雰囲気を改めて感じることができました。

このインターンを通じて様々な経験をすることができ、とにかく刺激的であっという間の4週間でした。改めて関わって下さったメンター・社員の皆様、ありがとうございました。

参考文献

[1] Gabriel Van Zandycke, et al. “Ball 3D Localization From A Single Calibrated Image”, arXiv preprint arXiv:2204.00003, 2022.

[2] Ravi, Nikhila, et al., “SAM 2: Segment Anything in Images and Videos”, arXiv preprint arXiv:2408.00714, 2024.

最後まで読んでいただき、ありがとうございます!
この記事をシェアしていただける方はこちらからお願いします。

recruit

DeNAでは、失敗を恐れず常に挑戦し続けるエンジニアを募集しています。