人工知能学会第二種研究会資料
AIチャレンジ研究会
SIG-Challenge-062-03

ロボカップサッカーにおける実況システムの提案
Proposal of the Live-Commentary Robot System in RoboCupSoccer
大橋 玲音 1 坪倉 和哉 2 小林 邦和 1 ∗Reon OHASHI1 , Kazuya TSUBOKURA2 , Kunikazu KOBAYASHI2
愛知県立大学 情報科学部
School of Information Science and Technology, Aichi Prefectural University
2
愛知県立大学 大学院 情報科学研究科
2
Graduate School of Information Science and Technology, Aichi Prefectural University
1

1Abstract: 本研究では，ロボカップサッカーの実況を行うシステムを提案する．ロボカップの試合は，人間のサッカーのルールと比べ複雑であり，競技者ではない観客にとって見どころやルールの把握が困難である．そこで，本稿ではロボカップの標準プラットフォームリーグを対象とし，観客がより試合の観戦を楽しめるように，試合の実況が可能か検討を行った．

1

はじめに

人工知能やロボット工学のためのランドマーク・プ
ロジェクトとしてロボカップが開催されている [1]．ロ
ボカップには 5 つの分野があり1 ，各分野で競技が行われている [1, 2]．中でも「ロボカップサッカー」では，ロボットは自律的に行動しサッカーをプレイする．西暦 2050 年「サッカーの世界チャンピオンチームに勝てる，自律型ロボットのチームを作る」という夢に向かって，関連する研究や技術開発が進められている．
人間同士のサッカーでは，実況者や解説者により，観客にわかりやすく試合の状況が伝えられることがある．
実況・解説により，観客は試合のルールに精通していなくとも，観戦を楽しむことができる．これは，ロボ
カップサッカーにおいても同様であると考えられる．ロ
ボカップサッカーでは人間のサッカーのルールを踏襲している部分も多い．しかし，文献 [1, 3] でも解説されているように，各リーグの特性に応じてリーグ独自のルールが定められているため，人間のサッカー以上にルールの把握が困難である．そのため，ロボカップサッカーにおいても人間のサッカーと同様に，実況や解説行うことで，観客がより観戦を楽しむことができると考える．ロボカップでは，一般の来場者が観戦することもあるため，実況・解説を行うことで観客に試合をより楽しんでもらうことは，ロボカップの活動へ∗ 連絡先：愛知県立大学 情報科学部〒 480-1342 愛知県長久手市茨ケ廻間１５２２−３E-mail: kobayashi@ist.aichi-pu.ac.jp
1 ロボカップには，「ロボカップサッカー」「，ロボカップレスキュー」，「ロボカップ＠ホーム」，「ロボカップインダストリアル」，「ロボカップジュニア」の 5 つの分野がある．

11の興味を喚起するうえでも重要である．
そこで，本研究ではロボカップサッカーの標準プラットフォームリーグにおける実況を行うシステムを提案する．標準プラットフォームは，人型のロボットを用いて 1 チーム 5 台で行われる [4]．これまで，ロボカップにおける実況システムは提案されているが [5]，シミュレーションリーグを対象としているため，各プレイヤやボールの位置情報は正確に得ることができた．しかし，標準プラットフォームリーグでは，カメラ等を用いてロボットやボールの位置を推定することから取り組む必要があるため，より複雑な課題となる．
以下，2 章ではロボカップサッカーの標準プラットフォームリーグについて述べる．3 章ではに提案する実況システムについて説明する．最後に，4 章で本稿をまとめる．

2標準プラットフォームリーグ

本章では，ロボカップサッカーの標準プラットフォームリーグ（Standard Platform League; 以下 SPL） [4] について概説する2 ．SPL では，全参加チームが同仕様のロボットを用いる．現在はロボットとして Aldebaran 社のNAO が採用されており，ハードウェアの改造は禁止されている．NAO は人型二足歩行ロボットで高さ約 58cm，1 チーム最大 5 台（ルールによっては 7 台）の NAOを用いることができる．フィールドは 10.4m×7.4m である．
2 ルールの詳細については，公式ルール [6] を参照されたい．

図 1: 実況システムの概要
人間のサッカー（あるいは，フットサル）の試合と同様に，キックオフから試合がスタートし，コーナーキックやゴールキック，キックイン，ペナルティキック等のプロセスが存在する．また，プレイヤーの違反として，相手ロボットへの強い接触（Pushing）や手を使ってボールに接触すること（Playing With Arms/Hands）なども規定されている．
SPL 特有のルールもいくつか存在する．倒れたまま起き上がれないロボット（Fallen Robot）や 10 秒間動いていないロボット（Inactive Robot）は違反となる．
また，フィールド外へ出ようとしているロボットも違反（Leaving the Field）となる3 ．なお，これらのルールを犯したロボットはフィールドから一定時間取り除かれる．
SPL の試合では，主審が上述のルールに従い試合を管理する．同時に，リーグではゲームコントローラと呼ばれる試合を管理するシステムが採用されている．ゲー
ムコントローラのオペレータは，ゲームコントローラを操作し，無線を通して主審の決定をロボットに指示する．の位置を推定し，推定結果に基づき試合のイベント（パスやシュートなど）を予測することで，試合の展開が実況可能となる．また，ゲームコントローラの情報を取得することで，試合の状況を実況できる．さらに，ロボカップに関する歴史や現状の課題等に関する知識を予め事前情報として蓄積しておき，試合の開始時や閑話として観客に有用な話題提供が可能となる．
3.1 節では画像処理による試合の状況理解について述
べ，3.2 節では実況文章生成について説明する．3.3 節では本研究で開発した実況システムのプロトタイプについて紹介する．

3.1

NAO の位置やボールの位置が分かれば，試合展開やNAO の行動を推測でき，実況を行うことができる．そこで，リアルタイムに物体検出と認識が可能な YOLOv5[7] を用いて NAO とボールの位置情報の推定を行う．

3.1.1

3

画像処理による試合状況の理解訓練する画像の準備

SPL のフィールドが全て映り込む場所に Web カメラを配置し，NAO とボールの撮影を行った（図 2）．Web
カメラには「ロジクール PRO STREAM フル HD ウェ
ブカメラ C922n」を使用した．高性能カメラではなく，Web カメラを用いることで，安価にシステムの構築が可能になると期待される．

実況システム

本章では，実況システム（図 1）について述べる．本システムでは，試合の状況に応じて実況を行う．フィー
ルドに設置された Web カメラにより，NAO やボール3 システムのバグやモーターの疲労，バッテリーの残量などの問題から，これらの事象は試合中にしばしば起こり得る．

12

図 2: 収集した画像の例（ロボット 10 台とボール 15 個を配置している）

3.2

実況文章の生成

本研究では，実況文章生成のための情報源を以下の3 つに分類する．

1. ルールに基づく情報
図 3: 訓練画像の例（左から正面，側面，背面，倒れた状態）

2. ルール以外の試合に関する情報
3. 試合以外の情報

NAO は向きと位置を撮影毎に変更させ，撮影を行った．また，SPL では NAO が倒れている場合も起こり得るため，倒れた状態の NAO の撮影もした（図 3）．
ボールも同様に，撮影毎に位置を変更させた．YOLOの訓練のため，撮影した画像に対して LabelImg [8] を用いて，NAO とボールの位置のアノテーションを行った．最終的に，NAO150 枚，ボール 217 枚の訓練データが得られた．

3.1.2

3.2.1ルールに基づく情報

ルールに基づく情報としては，以下のような情報を含む．これらの情報は，ゲームコントローラを通して取得可能であるため，実況システムではゲームコントローラからの情報を活用する．

• 試合開始／試合終了• ゴール

モデルの訓練• ファール

本研究では，試作としてモデルを 100epoch 学習させた．訓練に用いる画像とは別に撮影したテスト画像 1枚を用いてモデルを適用した結果を図 4 に示す．同図より，367 枚と少ない学習枚数にもかかわらず，構築したモデルは高精度で NAO とボールを識別できていることがわかる．NAO の認識では，10 台すべての NAOを識別できていることがわかる．しかし，1 台の NAOに対して複数の NAO ラベルが認識されている例も確認できる．一方，ボールの認識では，15 個中 5 個のボールが認識できていなかった．NAO と比較してボールは小さい物体のため認識精度が低く，特に，Web カメラから遠い場合や白線上にボールがある場合は識別が困難であることが考えられる．
本研究では，定量的なモデルの評価を行えていないため，今後，学習に用いる画像枚数を増やし，モデルの評価を行う予定である．また，実際の競技では，NAOやボールの位置を認識するだけでなく，時系列で NAOやボールの位置変化を捉える必要もある．

• フリーキック
例えば，試合開始時には「今，[チーム名] のキックオフで試合が始まりました．
」や，ゴール時には「[チーム名] がゴールし先制しました．
」といった実況が可能である．そのため，以上のようなルールに対応した実況文章を事前に用意しておき，ゲームコントローラからの情報に基づいて選択して出力することとした．

3.2.2

ルール以外の試合に関する情報ルールに基づく情報以外の情報も考慮することで，より臨場感のある実況が可能になる．ルール以外の情報
としては，以下のような例が挙げられる．

• シュート• パス• ドリブル• クリアランス13図 4: YOLOv5 による認識結果（図 2 の画像をテストに使用した結果）

図 5: 実況システムのプロトタイプ
以上のようなプレイを認識できれば，「[チーム名] のロボットがシュートを打ちました．
」や「いいパスが通りました．
」といった実況が可能になる．本システムでは，これらの情報抽出が実現できていないが，3.1 節で説明したロボットとボールの位置情報の推定をリアルタイムで行うことで実現可能性が高まると考えられるため，今後の課題である．

3.2.3

した映像を表示している．システムの右側は，ゲームコントローラの機能を再現している．システムの下部は，生成された実況文章を表示している．実況文章は，ゲームコントローラからの情報に基づき，予め用意された文章を出力している．なお，本研究では，3.2 節で挙げた 3 つの情報源のうち，「1. ルールに基づく情報」の実装のみを行った．そのため，今後は，3.1 節で説明した NAO とボールの検出を発展させ，「2. ルール以外の試合に関する情報」（シュートやパスなどの NAO の動作）の認識や「3. 試合以外の情報」を作成する必要がある．また，実際に SPL で用いられるゲームコントローラとの通信機能や実況文章を実況用のロボットに送信する機能を追加する予定である．

試合以外の情報

人間のサッカーにおいては，試合中に実況・解説者によって試合以外のサッカーに関する情報が伝えられることがある．試合の情報とは直接関係はないが，対戦チームや選手に関する情報など，閑話として伝えられる．これらの情報は，ロボカップの実況システムにおいても活用ができると考える．例えば，試合以外の情報として以下のような情報が挙げられる．

4

本研究では，ロボカップサッカーにおいて，自動で試合の実況を行うシステムを提案した．標準プラット
フォームリーグにおける実況のために必要な機能を検討し，プロトタイプを作成した．今後は，未実装の機能を実装し，システムを試合に適用してユーザ評価を行う．

• ロボカップの技術的課題や見どころ• 人間のサッカーとの相違• 別のリーグの宣伝
ハーフタイム中や試合が膠着した際などに，これらの情報を発話することで，観客が観戦から離脱してしまうことも防ぐことができると考える．

3.3

まとめ

参考文献
[1] 野田 五十樹，南方 英明，小林 邦和，杉浦 藤虎，武村 泰範，秋山 英久，岡田 浩之，ロボカップ西暦2050 年を目指して（その１），知能と情報，Vol.29，No.1，pp.2-13，2017．

プロトタイプ本研究で提案する実況システムのプロトタイプを図 5に示す．システムの画面左上に Web カメラにより取得

14[2] 奥川 雅之，伊藤 暢浩，岡田 浩之，植村 渉，高橋 友一，杉浦 孔明，ロボカップ西暦 2050 年を目指して（その２），知能と情報，Vol.29，No.2，pp.42-54，2017．
[3] 浅田 稔，ロボカップサッカーにおける科学技術
チャレンジ，日本ロボット学会誌，Vol.38，No.4，pp.323-330，2020．
[4] RoboCup Standard Platform League. https://spl.robocup.org/, (cited 2023-04-09).
[5] E. André, K. Binsted, K. Tanaka-Ishii, S. Luke,
G. Herzog and T. Rist, “Three RoboCup Simulation League Commentator Systems,” AI Magazine, Vol.21, No.1, pp.57-66, 2000.
[6] RoboCup Technical Committee, RoboCup Standard Platform League (NAO) Rule Book, 2023.
[7] ultralytics YOLOv5. https://github.com/ultralytics/yolov5, (cited 2023-04-09).
[8] LabelImg. https://github.com/heartexlabs/
labelImg, (cited 2023-04-09).

15