(57)【要約】  移動体の大きさが位置によって変化する場合に、大きさの変化にかかわらず正確かつユーザの手間を掛けずに移動体を追跡するために、本開示は、各フレームの画像における移動体の大きさを推定し、推定した移動体の大きさに基づいて、テンプレートデータを更新し、各フレームの画像において移動体が存在する領域の候補である候補領域と、テンプレートデータとを比較し、比較結果に基づいて候補領域に移動体が位置するか否かを判定する。
2017081839.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサが、スポーツ競技の試合を撮影したスポーツ映像を構成する複数フレームの画像の各々における移動体の位置を追跡する移動体追跡方法であって、
前記各フレームの画像における前記移動体の大きさを推定し、
前記推定した移動体の大きさに基づいて、テンプレートデータを更新し、
前記各フレームの画像において前記移動体が存在する領域の候補である候補領域と、前記テンプレートデータとを比較し、比較結果に基づいて前記候補領域に前記移動体が位置するか否かを判定する、
移動体追跡方法。
【請求項２】
前記テンプレートデータは、前記推定した移動体の大きさに基づいて更新されるテンプレート特徴量を含み、
前記候補領域と前記テンプレートデータとの比較は、前記候補領域の色ヒストグラムと前記テンプレート特徴量の色ヒストグラムとの距離を算出することによって行う、
請求項１に記載の移動体追跡方法。
【請求項３】
前記テンプレートデータは、前記推定した移動体の大きさに基づいて更新されるパラメータを含み、
前記パラメータは、少なくとも前記移動体の検出のための所定のしきい値、あるいは追跡のための所定のしきい値を含む、
請求項１に記載の移動体追跡方法。
【請求項４】
前記推定した移動体の大きさが、複数の段階のいずれに属するかに応じて、前記比較に用いる前記テンプレートデータを変更する、
請求項１に記載の移動体追跡方法。
【請求項５】
前記推定した移動体の大きさが、前記複数の段階のうちの異なる段階へ変化したとき、前記移動体の周辺の画像を用いて、前記テンプレート特徴量を生成する、
請求項２に記載の移動体追跡方法。
【請求項６】
前記条件を満たす候補領域が存在しない場合に、前記フレームの画像内の矩形領域を、逐次前記テンプレートデータと比較することで走査し、比較結果に基づいて前記矩形領域に前記移動体が存在するか否かを判定し、
前記移動体が存在すると判定された前記矩形領域の周辺の画像を用いて、前記テンプレート特徴量を生成する、
請求項２に記載の移動体追跡方法。
【請求項７】
前記テンプレート特徴量の初期値は、前記スポーツ競技の試合開始前に予め生成される、
請求項２に記載の移動体追跡方法。
【請求項８】
前記複数の各フレームの画像に基づいて、軌跡検出用画像を生成し、
前記軌跡検出用画像に基づいて、前記移動体の軌跡を検出する、
請求項１に記載の移動体追跡方法。
【請求項９】
前記テンプレート画像を表示部に表示するとともに、予め設定されているテンプレート特徴量を消去する操作を受け付けるための表示を行う、
請求項２に記載の移動体追跡方法。
【請求項１０】
スポーツ競技の試合を撮影したスポーツ映像を構成する複数フレームの画像の各々における移動体の位置を追跡する移動体追跡装置であって、
前記各フレームの画像における前記移動体の大きさを推定し、
前記推定した移動体の大きさに基づいて、テンプレートデータを更新し、
前記各フレームの画像において前記移動体が存在する領域の候補である候補領域と、前記テンプレートデータとを比較し、比較結果に基づいて前記候補領域に前記移動体が位置するか否かを判定する、
移動体追跡装置。
【請求項１１】
前記テンプレートデータは、前記推定した移動体の大きさに基づいて更新されるテンプレート特徴量を含み、
前記候補領域と前記テンプレート特徴量との比較は、前記候補領域の色ヒストグラムと前記テンプレート画像の色ヒストグラムとの距離を算出することによって行う、
請求項１０に記載の移動体追跡装置。
【請求項１２】
前記テンプレートデータは、前記推定した移動体の大きさに基づいて更新されるパラメータを含み、
前記パラメータは、少なくとも前記移動体の検出のための所定のしきい値、あるいは追跡のための所定のしきい値を含む、
請求項１０に記載の移動体追跡装置。
【請求項１３】
前記推定した移動体の大きさが、複数の段階のいずれに属するかに応じて、前記比較に用いる前記テンプレートデータを変更する、
請求項１０に記載の移動体追跡装置。
【請求項１４】
前記推定した移動体の大きさが、前記複数の段階のうちの異なる段階へ変化したとき、前記移動体の周辺の画像を用いて、前記テンプレート特徴量を生成する、
請求項１１に記載の移動体追跡装置。
【請求項１５】
前記条件を満たす候補領域が存在しない場合に、前記フレームの画像内の矩形領域を、逐次前記テンプレートデータと比較することで走査し、比較結果に基づいて前記矩形領域に前記移動体が存在するか否かを判定し、
前記移動体が存在すると判定された前記矩形領域の周辺の画像を用いて、前記テンプレート特徴量を生成する、
請求項１１に記載の移動体追跡装置。
【請求項１６】
前記テンプレート特徴量の初期値は、前記スポーツ競技の試合開始前に予め生成される、
請求項１１に記載の移動体追跡装置。
【請求項１７】
前記複数の各フレームの画像に基づいて、軌跡検出用画像を生成し、
前記軌跡検出用画像に基づいて、前記移動体の軌跡を検出する、
請求項１０に記載の移動体追跡装置。
【請求項１８】
前記テンプレート画像を表示部に表示するとともに、予め設定されているテンプレート特徴量を消去する操作を受け付けるための表示を行う、
請求項１１に記載の移動体追跡装置。
【請求項１９】
プロセッサに、スポーツ競技の試合を撮影したスポーツ映像を構成する複数フレームの画像の各々における移動体の位置を追跡する処理を実行させるプログラムであって、
前記各フレームの画像における前記移動体の大きさを推定し、
前記推定した移動体の大きさに基づいて、テンプレートデータを更新し、
前記各フレームの画像において前記移動体が存在する領域の候補である候補領域と、前記テンプレートデータとを比較し、比較結果に基づいて前記候補領域に前記移動体が位置するか否かを判定する、
手順を前記プロセッサに実行させる、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、スポーツ競技を撮影したスポーツ映像におけるボール等の移動体の位置を追跡する移動体追跡方法、移動体追跡装置、およびプログラムに関する。
【背景技術】
【０００２】
従来、映像において移動体を追跡する移動体追跡装置が知られている。例えば、特許文献１に開示された技術では、過去のフレームにおける移動体の位置情報に基づいて、今回のフレームにおける移動体の予測位置が求められる。そして、今回のフレームにおける画像データから移動体に特有の所定の特徴を持つ候補物体が抽出され、抽出された候補物体のうち予測位置により近い候補物体が移動体として特定される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−４６６４７号公報
【発明の概要】
【０００４】
しかしながら、上記特許文献１に開示された技術では、移動体の大きさが変化した場合、その変化に対応できず、移動体を見失ってしまうという問題があった。例えばサッカーのような、移動体としてボールが用いられるスポーツ競技において、競技フィールド全体を一度に撮影できるカメラが開発されている。このようなカメラで撮影した映像において、フィールドの奥側に位置した場合のボールの大きさと、フィールドの手前側に位置したボールの大きさには明確な差異が生じる。このような場合、特許文献１に開示された技術では、同一の移動体（ボール）でも、フィールドの奥側に位置する場合と手前側に位置する場合とではその大きさの相違に起因して、同一の特徴を有するとは限らず、検出精度が低下する可能性がある。
【０００５】
検出精度を向上させるためには、例えばユーザが、候補物体を抽出するための特徴量をボールの大きさに応じて逐次手動で設定すればよい。しかしながら、その場合ユーザはボールの大きさに変化が生じたか否かを常に監視する必要があるとともに、大きさが変化する度に特徴量を変更するための操作を行う必要があり、ユーザの負担が非常に大きい。
【０００６】
本開示の目的は、移動体の大きさが位置によって変化する場合に、大きさの変化にかかわらず正確かつユーザの手間を掛けずに移動体を追跡することができる移動体追跡方法、移動体追跡装置、およびプログラムを提供することである。
【０００７】
本開示の移動体追跡方法は、スポーツ競技の試合を撮影したスポーツ映像を構成する複数フレームの画像の各々における移動体の位置を追跡する移動体追跡方法であって、前記各フレームの画像における前記移動体の大きさを推定し、前記推定した移動体の大きさに基づいて、テンプレートデータを更新し、前記各フレームの画像において前記移動体が存在する領域の候補である候補領域と、前記テンプレートデータとを比較し、比較結果に基づいて前記候補領域に前記移動体が位置するか否かを判定する。
【０００８】
本開示の移動体追跡装置は、スポーツ競技の試合を撮影したスポーツ映像を構成する複数フレームの画像の各々における移動体の位置を追跡する移動体追跡装置であって、前記各フレームの画像における前記移動体の大きさを推定し、前記推定した移動体の大きさに基づいて、テンプレートデータを更新し、前記各フレームの画像において前記移動体が存在する領域の候補である候補領域と、前記テンプレートデータとを比較し、比較結果に基づいて前記候補領域に前記移動体が位置するか否かを判定する。
【０００９】
本開示のプログラムは、プロセッサに、スポーツ競技の試合を撮影したスポーツ映像を構成する複数フレームの画像の各々における移動体の位置を追跡する処理を実行させるプログラムであって、前記各フレームの画像における前記移動体の大きさを推定し、前記推定した移動体の大きさに基づいて、テンプレートデータを更新し、前記各フレームの画像において前記移動体が存在する領域の候補である候補領域と、前記テンプレートデータとを比較し、比較結果に基づいて前記候補領域に前記移動体が位置するか否かを判定する、手順を前記プロセッサに実行させる。
【００１０】
本開示によれば、移動体の大きさが位置によって変化する場合に、大きさの変化にかかわらず正確かつユーザの手間を掛けずに移動体を追跡することができる。
【図面の簡単な説明】
【００１１】
【図１】図１は、本開示の実施の形態に係る移動体追跡装置の構成の一例を示す図である。
【図２】図２は、１フレーム目の映像に対する移動体追跡装置の動作の一例を示すフローチャートである。
【図３】図３は、ボール候補抽出処理の動作の一例を説明するためのフローチャートである。
【図４】図４は、２フレーム目以降の画像に対する移動体追跡装置の動作の一例について説明するためのフローチャートである。
【図５】図５は、テンプレートデータの設定処理の動作例を説明するためのフローチャートである。
【図６】図６は、ボールサイズグループの分割方法について説明するための図である。
【図７】図７は、ボールサイズグループに対応するパラメータの取得方法を説明するための図である。
【図８】図８は、追跡処理の動作の一例を説明するためのフローチャートである。
【図９】図９は、検出処理の動作の一例を説明するためのフローチャートである。
【図１０】図１０は、変形例１における移動体追跡装置１００の動作の一例を説明するためのフローチャートである。
【図１１】図１１は、ボール軌跡検出用画像生成処理の動作の一例を説明するためのフローチャートである。
【図１２】図１２は、ボール軌跡検出処理の動作の一例を説明するためのフローチャートである。
【図１３Ａ】図１３Ａは、ラベリング数が１である場合のボール軌跡検出用画像の例を示す図である。
【図１３Ｂ】図１３Ｂは、ラベリング数が３である場合のボール軌跡検出用画像の例を示す図である。
【図１４】図１４は、表示部に表示されるテンプレート画像設定画面の例を示す図である。
【発明を実施するための形態】
【００１２】
以下、本開示の各実施の形態について図面を参照して詳細に説明する。図１は、本開示の実施の形態に係る移動体追跡装置１００の構成の一例を示す図である。移動体追跡装置１００は、図示しない外部のカメラ等によって撮影された映像を取得し、取得した映像内における移動体を追跡する装置である。本実施の形態では、移動体追跡装置１００は、スポーツ競技の一つであるサッカーの試合が撮影されたスポーツ映像内において、当該サッカーの試合で使用されるボール等を移動体として追跡する例について説明する。なお、スポーツ映像とは、スポーツ競技の試合を録画した映像を意味する。
【００１３】
移動体追跡装置１００は、ＣＰＵ（Central Processing Unit）等のプロセッサ１０１、制御プログラムを格納したＲＯＭ（Read Only Memory）や、ＲＡＭ（Random Access Memory）等の作業用メモリ、映像データ等を格納するＨＤＤ（Hard Disk Drive）等を含む記憶部１０２、および外部のカメラ等との通信を行う通信回路１０３、例えばマウスやトラックボール等、ユーザの入力を受け付ける入力部１０４、画像等の表示を行う例えば液晶ディスプレイ等の表示部１０５、これらの構成を互いに接続し、各構成間のデータ通信を行う経路としてのバス１０６を有する。以下説明する移動体追跡装置１００の動作は、プロセッサ１０１が記憶部１０２から読み出した制御プログラムを実行することにより実現される。
【００１４】
次に、移動体追跡装置１００の動作について、図２を参照して説明する。図２は、１フレーム目の映像に対する移動体追跡装置１００の動作の一例を示すフローチャートである。なお、１フレーム目の画像とは、例えば、映像の先頭のフレームの他、移動体追跡装置１００が再起動した後に取得した映像の先頭のフレームの画像、または、移動体追跡装置１００がボールの追跡および検出に失敗した（ロストした）場合に、ボールをロストしたフレームの次のフレームの画像、あるいは移動体追跡装置１００の使用者によってボール位置が誤っているとして指示されたフレームの画像を意味している。
【００１５】
ステップＳ２０１において、プロセッサ１０１は、通信回路１０３を介して、外部のカメラ等によって撮影された映像を取得する。ここで、映像とは、複数フレームの画像によって構成される、いわゆる動画像である。この映像は、上述したようにサッカー等のスポーツ競技の試合が撮影されたものであるため、当該映像を構成する各フレームの多くにはボールが写っている。外部のカメラ等によって撮影された映像は、プロセッサ１０１が通信回路１０３を介してカメラから直接取得してもよいし、通信回路１０３を介して送信された映像を例えば記憶部１０２に記憶し、記憶部１０２に記憶された映像を使用時に改めて読み出すようにしてもよい。なお、本ステップＳ２０１では、プロセッサ１０１は、取得した映像のうち、１フレーム目の画像のみを抽出し、これに対して以下のステップ２０２からＳ２０５を実行する。
【００１６】
ステップＳ２０２において、プロセッサ１０１は、ステップＳ２０１において抽出された１フレーム目の画像に対して、ボール候補領域を抽出する。ボール候補領域とは、画像内において、ボールが存在する可能性の高い領域を意味する。図３は、ボール候補抽出処理の動作の一例を説明するためのフローチャートである。
【００１７】
ステップＳ３０１において、プロセッサ１０１は、ステップＳ２０１において取得した１フレーム目の画像から、その前景画像を生成する。ここで、前景画像とは、背景部分を構成する画素の画素値を０（黒）に設定し、前景部分を構成する画素の画素値を２５５（白）に設定した二値化画像である。前景画像の生成方法としては、公知の背景差分法、フレーム間差分法等を採用すればよい。
【００１８】
次に、ステップＳ３０２において、プロセッサ１０１は、前景画像の各画素に対してラベリング処理を実行する。ラベリング処理とは、同じ画素値を有する画素に同じラベルを付与することで、画素のグループ化を行う処理である。
【００１９】
最後に、ステップＳ３０３において、プロセッサ１０１は、ラベリング処理の実行結果から、同じラベルが付与されている画素領域のサイズ（例えば、領域幅、領域高さ、縦横比率または領域内の前景比率等）を取得し、その取得したサイズが所定の条件を満たす画素領域をボール候補領域として検出する。なお、本実施の形態において、ボール候補領域は同じラベルが付与されている画素領域に外接する矩形、つまりボールの外接矩形とする。所定の条件とは、例えば領域幅および領域高さの上限下限、縦横比率の上限下限または領域内の前景比率の下限等であり、ボール候補領域は、ボール相当のサイズの前景画像の領域である。
【００２０】
なお、ボール相当のサイズは、プロセッサ１０１が、予め設定され記憶部１０２等に記憶された、ボールに相当する領域の最低サイズと最高サイズとを読み出して指定するか、あるいは、ボール候補領域抽出処理の制御プログラム内に設定された値に基づいて指定する。ここで、最低サイズについては、画像上でのｙ軸方向の位置に応じて変更するようにしてもよい。これは、ボールが画像上で上部、すなわち競技場の奥側に位置している場合には、カメラからボールまでの位置が遠いため、ボールは小さく映る性質があり、反対に、ボールが画像上で下部、すなわち競技場の手前側に位置している場合には、カメラからボールまでの位置が近いため、ボールは大きく映る性質があるからである。なお、最大サイズについては、カメラに近い距離で、ロングパス等により、ボールが地上から離れて滞空しているような場合には、画像上では上部に位置していてもボールは大きく映るため、位置に応じた値の変更は行わない。
【００２１】
ここで、プロセッサ１０１は、抽出したボール候補領域を表示部１０５に表示させ、ユーザにボール候補領域の確認を行わせてもよい。すなわち、プロセッサ１０１は、１フレーム目の画像を表示部１０５に表示し、当該画像を見たユーザにボールが存在する領域を入力部１０４を介して指定させることにより、ボール領域の設定を行う。この際、表示部１０５には、抽出されたボール候補領域が表示され、ユーザは複数のボール候補領域の中からボールが存在する領域を指定するようにしてもよい。
【００２２】
プロセッサ１０１は、抽出したボール候補領域の画像における位置、領域幅、領域高さ、および、当該画像に関する情報を生成する。ステップＳ３０３の処理が完了すると、プロセッサ１０１は、図３に示すボール領域抽出処理を終了する。
【００２３】
図２の説明に戻る。ステップＳ２０３において、プロセッサ１０１は、１フレーム目の画像におけるボール領域を設定する。ボール領域とはステップＳ２０３において設定されたボール候補領域のうちの一領域を示す情報をいう。プロセッサ１０１によるボール領域の設定は、上述したように、ボール候補領域を含めて表示した１フレーム目の画像におけるボールが存在する位置をユーザに指定させることにより行われる。
【００２４】
ステップＳ２０４において、プロセッサ１０１は、設定したボール領域に関するボール位置に関する情報を取得する。ボール位置に関する情報は、画像における、ボール領域の例えば左上の画素の画像における座標、あるいはボール領域の中心の座標を含む。また、ボール位置に関する情報には、ボール領域の幅および高さに対応する画素数等の情報（以後ボールサイズ情報とする）を含む。
【００２５】
ステップＳ２０５において、プロセッサ１０１は、ステップＳ２０４にて取得したボール位置に関する情報を記憶部１０２に記憶させるとともに出力する。
【００２６】
以上、１フレーム目の画像に対する移動体追跡装置１００の動作の一例について説明した。次に、２フレーム目以降の画像に対する移動体追跡装置１００の動作について説明する。図４は、２フレーム目以降の画像に対する移動体追跡装置１００の動作の一例について説明するためのフローチャートである。なお、２フレーム目以降の画像とは、移動体追跡装置１００が取得する映像のうち、上記説明した１フレーム目の画像以外の画像を意味している。以下では、処理の対象とするフレームを現フレームと称する。
【００２７】
ステップＳ４０１において、プロセッサ１０１は外部のカメラ等から映像を取得する。本ステップＳ４０１において、プロセッサ１０１は、取得した映像のうち、１フレーム目の画像以外の画像である２フレーム目以降の画像を抽出する。以下の各ステップは、抽出された２フレーム目以降の現フレームの画像に対して、実行される。
【００２８】
ステップＳ４０２において、プロセッサ１０１は、ステップＳ４０１において抽出された現フレームの画像に対して、ボール候補領域を抽出する。ボール候補領域抽出処理に関しては、対象となるフレームが２フレーム目以降の画像であることを除いて、図３にて説明した処理と同様であるため、ここでは説明を省略する。
【００２９】
ステップＳ４０３において、プロセッサ１０１は、現フレームにおけるボール位置を推定する。ボール位置の推定方法は、例えば以下のような方法がある。
【００３０】
１つ目の方法として、１フレーム前の画像におけるボール位置に関する情報を記憶部１０２から読み出し、その位置を現フレームにおける推定位置とする方法がある。
【００３１】
また、２つ目の方法として、１フレーム間でボールが移動する移動量を推定し、１フレーム前の画像におけるボール位置に移動量を加味して現フレームにおける位置を推定位置とする方法がある。１フレーム間での移動量は、例えば過去のｎフレーム前の画像とｎ＋１フレーム前の画像との間での移動量を算出し、過去ｎ＋１フレーム分の移動量の平均を１フレーム間での移動量として設定すればよい。ここで、ｎは正の整数である。あるいは、１フレーム間での移動量の設定方法として、より過去のフレーム間における移動量の重みが小さく、より現フレームに近いフレーム間における移動量の重みが大きくなるように、重み付き平均を設定するようにしてもよい。
【００３２】
なお、ここで例示したボール位置の推定方法は一例であって、本開示はこれに限定されない。プロセッサ１０１は、過去のフレームにおけるボール位置から、何らかの方法で現フレームにおける推定位置を算出するようにすればよい。
【００３３】
ステップＳ４０４において、プロセッサ１０１は、現フレームにおけるボールサイズを推定する。ボールサイズの推定方法としては、例えば以下のような方法がある。すなわち、過去のフレームのボールサイズに関する情報を記憶部１０２から読み出し、これに基づいて現フレームの推定サイズとする方法である。
【００３４】
具体的には、例えば、過去のフレームのボールサイズを、そのまま現フレームの推定サイズとする方法がある。また、過去の数フレーム分のボールサイズの平均を、現フレームの推定サイズとする方法がある。この平均値は、より現在に近いフレームの重みを大きくした重み付け平均値としてもよい。
【００３５】
なお、ステップＳ４０３およびＳ４０４においては、過去のフレームのボール位置やボールサイズの情報を利用して現フレームの推定位置や推定サイズを算出している。しかしながら、過去のフレームにおけるボール位置やボールサイズの情報は必ずしも全て取得できるとは限らないので、そのような場合は、残存している過去のフレームの情報のみを用いて現フレームの推定位置や推定サイズを設定するようにすればよい。
【００３６】
また、ステップＳ４０３における推定位置の算出と、ステップＳ４０４における推定サイズの算出は、必ずしもこの順番で実行される必要はなく、順番が入れ替わってもよいし、同時に行われてもよい。
【００３７】
次に、ステップＳ４０５において、プロセッサ１０１は、パラメータの設定を行う。また、ステップＳ４０５において、プロセッサ１０１は、ボールが存在する領域に関する情報、ボールの推定位置に関する情報、および、ボールサイズに関する情報に基づいて、ボールの追跡を行うためのテンプレート特徴量およびテンプレート画像を生成する。また、ステップＳ４０５において、プロセッサ１０１は、後述するステップＳ４０６における追跡処理、あるいはステップＳ４０８における検出処理からのフィードバックに基づいて、パラメータおよびテンプレート特徴量、テンプレート画像を更新する。
【００３８】
パラメータおよびテンプレート特徴量、テンプレート画像の生成方法の具体的な処理の詳細について以下図５を用いて説明する。なお、本実施の形態において、パラメータおよびテンプレート特徴量、テンプレート画像のひとつを少なくとも含む語の総称としてテンプレートデータという語を使用する。
【００３９】
図５は、テンプレートデータの設定処理の動作例を説明するためのフローチャートである。
【００４０】
ステップＳ５０１において、プロセッサ１０１は、ボールサイズ推定部１５０が設定した現フレームにおけるボールサイズを用いて、そのボールサイズが含まれるボールサイズグループＩＤを取得する。
【００４１】
ボールサイズグループＩＤについて説明する。まず、ボールサイズグループとは、ボールサイズの値に応じて分割されたグループである。本実施の形態においては、ボールサイズ小、ボールサイズ中、ボールサイズ大の３つのボールサイズグループが設定されている。図６は、ボールサイズグループの分割方法について説明するための図である。図６に示すように、各グループにはそれぞれ最小サイズと最大サイズとが設定されている。最小サイズとは、そのグループに属するボールサイズの最小値（ピクセル）であり、最大サイズとは、そのグループに属するボールサイズの最大値（ピクセル）である。
【００４２】
なお、ボールサイズは、画面上でのボール領域の幅と高さを合算したピクセル数によって決定され、例えばボール領域の幅が４ピクセル、高さが４ピクセルである場合、ボールサイズは８ピクセルであり、例えばボール領域の幅が１０ピクセル、高さが６ピクセルである場合、ボールサイズは１６ピクセルである。このように、画像上でのボール領域の幅と高さは正の整数であるため、ボールサイズも正の整数である。また、各グループの最小サイズは、１つ下のグループの最大サイズに１を加えた数値である。
【００４３】
ボールサイズグループＩＤは、ボールサイズグループ毎に予め付与されたＩＤであり、本実施の形態では、図６に示すように、ボールサイズ小をグループＩＤ「Ｇ０１」、ボールサイズ中をグループＩＤ「Ｇ０２」、ボールサイズ大をグループＩＤ「Ｇ０３」としている。
【００４４】
図５の説明に戻る。次に、ステップＳ５０２において、プロセッサ１０１は、ボールサイズグループＩＤに対応するパラメータを取得する。図７は、ボールサイズグループに対応するパラメータの取得方法を説明するための図である。図７に示すように、ボールサイズグループＩＤに対応したパラメータが予め設定され、記憶部１０２に記憶されている。プロセッサ１０１は、これを読み出してステップＳ５０１に対応するパラメータを取得する。
【００４５】
図７に示すように、パラメータは、ボール幅変化量、ボール高さ変化量、移動距離、追跡しきい値、および、検出しきい値を含む。ボール幅変化量およびボール高さ変化量とは、１フレーム当たりのボールの幅および高さの変化量である。移動距離とは、１フレーム当たりのボールの最大移動距離である。追跡しきい値は、後述するステップＳ４０６におけるボール追跡処理に使用される、現フレームでのボールの内接矩形領域の画像を元に生成された色ヒストグラムデータとテンプレート特徴量との色ヒストグラム間距離のしきい値である。また、検出しきい値は、後述するステップＳ４０８におけるボール位置検出処理に使用される、現フレームでのボールの内接矩形領域の画像を元に生成された色ヒストグラムデータとテンプレート特徴量との色ヒストグラム間距離のしきい値である。
【００４６】
図５の説明に戻る。ステップＳ５０３において、プロセッサ１０１は、ボールサイズグループＩＤに対応するテンプレート画像およびテンプレート特徴量を取得する。テンプレート画像とは、ボールサイズグループＩＤに対応して設定された、ボールの外接矩形領域の画像である。テンプレート特徴量とは、ボールサイズグループＩＤに対応して設定された、色ヒストグラムデータである。すなわち、テンプレート特徴量とは画像上のボールの大きさに応じたボールの色の頻度分布を示すデータとする。
【００４７】
テンプレート特徴量の生成に用いるヒストグラムデータは、例えばステップＳ４０４において推定されたボールサイズに基づいて、ビン数を変更するようにしてもよい。具体的には、ボールサイズが大きい場合、すなわちボール領域の画素数が多い場合はビン数を大きく、ボールサイズが小さい場合、すなわち、ボール領域の画素数が小さい場合はビン数を１／２や１／４等に削減してもよい。なお、このようにビン数を変更する場合は、テンプレート特徴量を作成するタイミングで利用する可能性のあるビン数のヒストグラムを全て準備しておくことが望ましい。
【００４８】
テンプレート特徴量は、現フレームでのボールの内接矩形領域の画像を元に生成された色ヒストグラムデータとの比較に用いられる。テンプレート特徴量にボールの内接矩形領域を用いる理由は、ボール周辺の芝領域や芝の色の影響を強く受けている輪郭周辺の情報を除外するためである。本実施の形態において、テンプレート画像とテンプレート特徴量はそれぞれ独立に生成されてもよいし、テンプレート特徴量が更新された際に、当該テンプレート特徴量を生成した画像からテンプレート画像を生成してもよい。すなわち、テンプレート特徴量の生成に使用したボール画像（内接矩形領域画像）に対応するボール画像（外接矩形領域画像）をテンプレート画像としても良い。なお、テンプレート特徴量は画像分野における特徴量であればよく、ヒストグラムデータ以外のデータを用いても良い。
【００４９】
ボールの検出精度を向上させるために、テンプレート特徴量は、その日の競技場の天気や時間帯、すなわち競技場の明るさ、照明の有無や降雨の有無等、競技場の環境条件に応じて設定されることが望ましい。このため、テンプレート特徴量は、例えば試合の開始前等に予め作成されるとともに、試合中における競技場の明るさや天気の変化に応じて新たに作成されることが望ましい。
【００５０】
テンプレート特徴量の設定方法の具体例について説明する。本実施の形態において、テンプレート特徴量の設定方法として、以下の３種類の方法が想定されている。１つ目の方法は、試合の開始前等に、予め競技場内のボールが映った映像を取得し、当該映像におけるボールの画像を元にテンプレート特徴量を作成する方法である。
【００５１】
すなわち、プロセッサ１０１は、予め試合の開始前に、試合中と同じような競技場の条件下において、競技場内のボールが映った映像を外部のカメラ等から取得してテンプレート特徴量を生成する。ここで、ボールサイズグループにつき１つ以上のテンプレート特徴量が作成されることが望ましい。よって、例えば競技場の奥側にボールがある場合の映像と、競技場の中央付近にボールがある場合の映像と、競技場の手前側にボールがある場合の映像とに基づいて、プロセッサ１０１は、それぞれのボールサイズに対応するテンプレート特徴量を生成する。
【００５２】
競技場の奥側にボールがある場合に生成されるテンプレート特徴量は、ボールサイズグループ小（ボールサイズグループＩＤがＧ０１）に対応するテンプレート特徴量である、また、競技場の中央付近にボールがある場合に生成されるテンプレート特徴量は、ボールサイズグループ中（ボールサイズグループＩＤがＧ０２）に対応するテンプレート特徴量である。また、競技場の手前側にボールがある場合に生成されるテンプレート特徴量は、ボールサイズグループ大（ボールサイズグループＩＤがＧ０３）に対応するテンプレート特徴量である。このように生成されたテンプレート特徴量は、自由に読み出すことができるように、ボールサイズグループに対応付けられて記憶部１０２に記憶される。
【００５３】
なお、各ボールサイズグループ毎に１つの画像からテンプレート特徴量を生成してもよいが、複数の画像におけるボールに対応する画素の画素値の平均からテンプレート画像を生成した方が、後述する追跡処理や検出処理の精度が高くなるため、より好ましい。これは、１枚の画像からでは、その画像環境（照明条件、背景の映り込み具合、ボールのテクスチャ等）の影響が大きいためである。このため、プロセッサ１０１は、同じボールサイズグループの画像を複数枚取得して、これらの画素値の平均を使用してテンプレート特徴量を生成してもよい。また、テンプレート特徴量には、複数枚取得したすべての画像の画素値を元に生成された色ヒストグラムを用いてもよいし、複数枚取得した一部の画像の画素値を元に生成した色ヒストグラムを用いてもよい。これは、あまり多くの画像を用いると、テンプレート特徴量として算出される色ヒストグラムが鈍り、誤検出が増える可能性があるため、適宜誤検出の増加度合いとの兼ね合いで決定すればよい。
【００５４】
上述した１つ目の方法では、試合の開始前にテンプレート特徴量を生成するとしたが、例えば開始直前のウォーミングアップ中等にテンプレート特徴量の生成を行うようにすればよい。また、試合毎にテンプレート特徴量を生成するのではなく、例えば競技場毎に、天候条件や照明条件、試合ボールの種類に応じたテンプレート特徴量を予め生成し、記憶部１０２に記憶しておいてもよい。
【００５５】
２つ目の方法は、テンプレート特徴量を随時生成する方法である。図４に示すように、外部のカメラ等から取得した映像のうち、２フレーム目以降の画像では、後述するステップＳ４０６における追跡処理、あるいは、ステップＳ４０８における検出処理が実行される。この追跡処理または検出処理において、画像内におけるボールが大きくまたは小さくなって、それまでとは異なるボールサイズグループに属するサイズのボール位置に関する情報が取得された場合に、プロセッサ１０１は、新たなボールサイズグループのテンプレート特徴量の有無を確認し、テンプレート特徴量がない場合に、そのタイミングでボールを含む画像を取得し、テンプレート特徴量の生成を行う。
【００５６】
この２つ目の方法では、、プロセッサ１０１が自動的にテンプレート特徴量を生成するため、ユーザの手間を省略できるという利点がある。また、新たなテンプレート特徴量の生成は、新たなボールサイズグループに属するサイズのボール情報が取得された際以外に、任意のタイミングで行ってもよい、例えば、テンプレート特徴量を生成すべきボールサイズを予め設定しておき、ボールサイズがその大きさになったタイミングでテンプレート特徴量の生成を行うようにしてもよい。一例として、ボールサイズグループにおける最小サイズと最大サイズとの中間のサイズになったときに初めて当該ボールサイズグループに属するテンプレート特徴量を生成するようにすると、ボールサイズグループの変動が起きた際にテンプレート特徴量を生成する場合と比較して、当該ボールサイズグループの平均的大きさに近いボールのテンプレート特徴量を生成することができるので、ボールの追跡性能が向上する。
【００５７】
３つ目の方法として、ボールをロストしたタイミングで新たにテンプレート特徴量を生成し直す方法がある。２フレーム目以降の画像において、追跡および検出処理の結果、ボールがロストした場合には、再度図２に示す１フレーム目に対する処理が行われる。３つ目の方法では、その際、ステップＳ２０３においてユーザがボール位置の設定を行う（ボール位置を修正する）と、プロセッサ１０１は、そのタイミングの画像を用いてテンプレート特徴量を生成する。
【００５８】
なお、２つ目および３つ目の方法において、テンプレート特徴量の初期値は１フレーム目の画像においてユーザの操作によりボール領域が設定されたタイミングで、プロセッサ１０１が生成すればよい。また、２つ目および３つ目の方法に、１つ目の方法を併用してもよい。すなわち、プロセッサ１０１は、試合開始時には、試合開始前に生成したテンプレート特徴量を用いてボールの追跡および検出処理を行い、その後は随時２つ目あるいは３つ目の方法によるテンプレート特徴量の生成を行うようにしてもよい。また、テンプレート特徴量の生成は、ステップＳ４０５において行われる他、例えば、図２のステップ２０３において、ユーザによってボール領域が設定されたタイミングで行われてもよい。
【００５９】
なお、上述した説明では、ステップＳ４０５にて実行されるパラメータ・テンプレート設定処理において、パラメータの設定を行ってからテンプレート画像およびテンプレート特徴量の設定を行うとしたが、本開示はこれに限定されない。パラメータの設定処理とテンプレート画像およびテンプレート特徴量の設定処理とは互いに独立しており、同時に行われてもよいし、どちらかが先に行われてもよい。また、パラメータの設定処理とテンプレート画像およびテンプレート特徴量の設定処理のどちらかだけが行われてもよい。
【００６０】
図４の説明に戻る。ステップＳ４０６において、プロセッサ１０１は、ステップＳ４０５において設定されたパラメータおよび／またはテンプレート特徴量を用いて、ボールの追跡処理を行う。図８は、追跡処理の動作の一例を説明するためのフローチャートである。
【００６１】
ステップＳ８０１において、プロセッサ１０１は、スポーツ映像を外部のカメラ等から取得し、現フレームの画像を抽出する。そして、ステップＳ８０２において、プロセッサ１０１は、ステップＳ４０３において算出された推定位置、ステップＳ４０４において算出された推定サイズ、および、ステップＳ３０５において設定されたパラメータおよびテンプレート特徴量をテンプレートデータとして取得する。また、ステップＳ８０３において、プロセッサ１０１は、ステップＳ２０２またはステップＳ４０２において抽出されたボール候補領域に関する情報を取得する。
【００６２】
そして、ステップＳ８０４において、プロセッサ１０１は、ボール候補領域の特徴量（ボール候補領域特徴量）と、テンプレートデータに基づいて追跡尤度を算出する。ボール候補領域特徴量は、ボール候補領域の画像における位置、領域幅、領域高さ、および色情報（本実施の形態では色ヒストグラムとする）を含む。追跡尤度は、（１）ボール候補領域特徴量における色ヒストグラムとテンプレート特徴量における色ヒストグラム間の距離に基づく尤度と（２）ボール候補特徴量におけるボール幅変化量・ボール高さ変化量・移動距離とボールサイズに基づいて設定されたパラメータ（ボール幅変化量・ボール高さ変化量・移動距離）をそれぞれ比較することで求められる尤度の重み付き平均を取ることで求められる。
【００６３】
なお、ヒストグラム間距離は、例えばバタチャリヤ（Bhattacharyya）距離を用いて算出される。この場合、各ヒストグラムが完全一致の場合にヒストグラム間距離は０に、完全不一致の場合は１になる。したがって、ヒストグラム間距離に基づく尤度は１−（Bhattacharyya）で算出される。
【００６４】
ステップＳ８０５において、プロセッサ１０１は、算出した追跡尤度が所定のしきい値以上、かつ最も追跡尤度が高いボール候補領域をボール位置として決定し、決定したボール位置を記憶部１０２に記憶するとともに出力する。なお、所定のしきい値としては、ステップＳ４０５にて設定されたパラメータに含まれる追跡しきい値を使用すればよい。
【００６５】
図４の説明に戻る。ステップＳ４０７において、プロセッサ１０１は、ステップＳ４０６の追跡処理でボール位置を決定することができたか否かを判定する。本ステップＳ４０７においては、図８に示すステップＳ８０４にて算出された追跡尤度が追跡しきい値以上のボール候補領域が存在した場合、最も追跡尤度が高いボール候補領域をボール位置を決定することができたと判定される。ボール位置を決定することができた場合、処理はステップＳ４０９に進む。一方、本ステップＳ４０７においては、ステップＳ８０４において算出された追跡尤度が追跡しきい値以上のボール候補領域が存在しなかった場合、ボール位置を決定することができなかったと判定される。ボール位置を決定することができなかったと判定された場合、処理はステップＳ４０８に進む。
【００６６】
ステップＳ４０８において、プロセッサ１０１は、追跡に失敗した場合に、ボールを検出するための検出処理を実行する。図９は、検出処理の動作の一例を説明するためのフローチャートである。
【００６７】
ステップＳ９０１において、プロセッサ１０１は、現フレームの画像を取得する。そして、ステップＳ９０２において、プロセッサ１０１は、ステップＳ４０３において算出された推定位置、ステップＳ４０４において算出された推定サイズ、および、ステップＳ４０５において設定されたパラメータおよびテンプレート画像をテンプレートデータとして取得する。
【００６８】
ステップＳ９０３において、プロセッサ１０１は、推定位置に基づいて、検出処理を行うための検出領域を設定する。検出領域は、推定位置を含み、推定位置より大きい領域である。検出領域の大きさは、予め制御プログラム内において設定されていてもよいし、予め設定され記憶された値を記憶部１０２から読み込んでもよい。また、プロセッサ１０１は、推定サイズに基づいて、推定位置の大きさを変更するようにしてもよい。例えば、ボールサイズが大である場合には、１フレーム当たりのボールの移動量が大きいため、検出領域を大きくすることが望ましい。一方、ボールサイズが小である場合は、検出領域は小さくてよい。
【００６９】
ステップＳ９０４において、プロセッサ１０１は、検出領域内を推定サイズの矩形でラスタスキャンし、検出領域を推定サイズの矩形で分割した場合の各小領域毎に検出尤度を算出する。検出尤度は、上述した追跡尤度と同様に算出してもよい。なお、検出尤度を算出する際は、ボール幅変化量およびボール高さ変化量の値については推定サイズと同じ値をとることが既知（ラスタスキャンを行っている領域であるので）であるため尤度の判定から除外すると、精度を落とさず、より高速に検出を行うことができるので好ましい。
【００７０】
ステップＳ９０５において、プロセッサ１０１は、検出尤度が所定のしきい値以上であり、かつ最も尤度が高い小領域を、ボール位置として決定し、決定したボール位置を出力する。このしきい値としては、例えばステップＳ４０５にて設定されたパラメータに含まれる検出しきい値を使用すればよい。
【００７１】
ステップＳ９０６において、プロセッサ１０１は、ステップＳ９０５にて決定されたボール位置が正しいか否か、すなわち誤検出であるか否かの判定を行う。この誤検出判定は、ステップＳ９０５にて決定されたボール位置の周辺領域の色情報と、テンプレート画像におけるボール周辺領域の色情報とを比較し、その類似度が検出しきい値以上である場合に誤検出であると判定し、そうでない場合、検出結果が正しいと判定する。この誤検出判定は、例えばボールサイズが小さい場合等、競技場奥の看板部分等のボールとよく似た色かつ大きさの領域がボール位置として検出されてしまう誤検出を防止するために行われる。ボール周辺の色情報とは、例えば競技場の芝の色に関する情報等である。
【００７２】
誤検出判定の具体的な方法の例としては、例えば、ボールの外接矩形からボールの内接矩形を除いた領域を誤検出判定領域として設定し、テンプレート画像における誤検出判定領域から算出した色ヒストグラムと、上記検出処理にて検出されたボール位置に対応する誤検出判定領域から算出した色ヒストグラムとの間のヒストグラム間距離を算出することで、誤検出判定尤度をバタチャリヤ距離で算出する。その結果、ボール位置が完全一致している場合、すなわち誤検出がない場合、誤検出判定尤度は０になり、ボール位置が全く一致していない場合、すなわち誤検出である場合、誤検出判定尤度は１となる。実際には誤検出判定尤度は０から１までの間の値を取り、誤検出判定尤度が所定のしきい値以上である場合、プロセッサ１０１は、上記検出処理にて得られたボール位置は誤検出であると判定する。このような誤検出は、ボールがカメラから遠く、画像上でのサイズが小さい場合等に、ボール以外の例えば競技場奥の看板等のボールに似た色の領域等をボール位置と判定してしまうことによって生じうる。すなわち、ステップＳ９０６におけるボール位置が誤検出であるか否かの判定において、ボール周辺に位置する芝等の領域の色情報等も利用することで、精度よく誤検出であるか否かを判定することができる。
【００７３】
ステップＳ９０７において、ステップＳ９０６での誤検出判定の結果、誤検出であると判定された場合、処理はステップＳ９０１に戻り、検出処理をやり直す。なお、検出処理をやり直す場合は検出しきい値を前回用いた値より小さいものとしてやり直すことが好ましい。所定の回数、検出処理をやり直しても検出ができない場合は、ボールの位置を再検出できなかったとして処理を終了する。一方、誤検出であると判定されなかった場合、プロセッサ１０１は、検出結果のボール位置を出力して検出処理を終了する。
【００７４】
なお、上記説明した検出処理によって、ボールの位置を再検出できなかった場合、プロセッサ１０１は、図２に示す１フレーム目の処理を再度行い、ユーザによるボール位置の修正を受け付けてもよい。その他に、ボールの位置を検出できなかった場合、プロセッサ１０１は現在対象となっているフレームでのボール位置が得られなかったという情報と、前のフレームでのボール位置を一旦保持しておき、次のフレーム以降の追跡処理あるいは検出処理においてボール位置が得られたタイミングで、ボール位置を得られなかった間のボール位置を当該ボール位置が検出できなかったフレームに補間してまとめて出力するようにしても良い。
【００７５】
図４の説明に戻る。ステップＳ４０９において、プロセッサ１０１は、ステップＳ４０６の追跡処理で得られたボール位置、あるいは、ステップＳ４０８の検出処理で検出し直したボール位置を記憶部１０２に記憶させるとともに出力する。
【００７６】
次にステップＳ４１０において、プロセッサ１０１は、ボール位置の修正があったか否かを判定する。図４に示す処理では、例えば、ステップＳ４０６の追跡処理あるいはステップＳ４０８の検出処理によって得られたボール位置がユーザに表示され、ユーザが目視確認を行い、表示されたボール位置が正しい場合には修正はなく、表示されたボール位置にボールが位置しない場合にはユーザによるボール位置の修正がある。修正があると判定された場合、処理はステップＳ４１１に進み、そうでない場合、ステップＳ４１２に進む。
【００７７】
ステップＳ４１１において、プロセッサ１０１は、ステップＳ４０６の追跡処理において、ボールサイズが新たなボールサイズグループに属するサイズとなった場合に、当該ボールサイズの画像を用いて新たなテンプレート画像を自動的に生成して設定する。本ステップＳ４１１は、上記説明したテンプレート画像設定方法の２つ目の方法に対応している。
【００７８】
一方、ステップＳ４１２において、プロセッサ１０１は新たなテンプレート特徴量を設定する。本ステップＳ４１０は、上記説明したテンプレート特徴量設定方法の３つ目の方法に対応している。
【００７９】
ステップＳ４１１あるいはステップＳ４１２におけるテンプレート特徴量の更新が終了すると、移動体追跡装置１００は、現在対象となっているフレームの画像に対する処理は終了し、次のフレームの画像に対する処理を、ステップＳ４０１から新たに開始する。そして、外部のカメラ等が取得した映像に含まれる全てのフレームの画像に対する処理が終了すると、移動体追跡装置１００は全ての処理を終了して待機状態となる。
【００８０】
以上、本実施の形態の移動体追跡装置１００の動作例について説明した。上記説明したように、本実施の形態の移動体追跡装置１００による移動体（ボール）追跡方法は、各フレームの画像における移動体の大きさを推定し、推定した移動体の大きさに基づいて、テンプレートデータを更新し、各フレームの画像において移動体が存在する領域の候補である候補領域と、テンプレートデータとを比較し、比較結果に基づいて候補領域に移動体が位置するか否かを判定する。
【００８１】
このような構成により、本実施の形態の移動体追跡装置１００によれば、ボールの大きさに対応して設定されるテンプレート画像とパラメータとを用いて移動体（ボール）の位置の決定が行われる。このため、例えば画像の手前側と奥側でボールの大きさが大きく異なる場合でも、精度よくボールの位置を決定することができる。また、テンプレート画像やパラメータはボールの大きさに応じて変更されるので、ユーザがボールの大きさに合わせて手動でテンプレートやパラメータを設定する必要がなく、ユーザの手間を省略することができる。
【００８２】
また、本実施の形態の移動体追跡装置１００による移動体（ボール）追跡方法において、テンプレートデータは、推定した移動体の大きさに基づいて更新されるパラメータを含み、パラメータは、少なくともボールの検出のための所定のしきい値、あるいは追跡のための所定のしきい値を含む。
【００８３】
このような構成により、ボールの大きさに応じて変更されるパラメータを用いてボールの位置が決定されるので、例えば画像の手前側と奥側でボールの大きさが大きく異なる場合でも、精度よくボールの位置を決定することができる。
【００８４】
また、本実施の形態の移動体追跡装置１００による移動体（ボール）追跡方法において、前記推定した移動体の大きさが、複数の段階のいずれに属するかに応じて、前記比較に用いる前記テンプレートデータを変更する。
【００８５】
また、本実施の形態の移動体追跡装置１００による移動体（ボール）追跡方法は、推定したボールの大きさが、複数の段階のうちの異なる段階へ変化したとき、推定された位置の周辺の画像を用いて、変化した段階の大きさに対応するテンプレート特徴量を生成する。
【００８６】
このような構成により、ボールの大きさに応じてテンプレート画像とパラメータとを好適に設定することができる。
【００８７】
また、本実施の形態の移動体追跡装置１００による移動体（ボール）追跡方法は、条件を満たす候補領域が存在しない場合に、フレームの画像内の矩形領域を、逐次テンプレートデータと比較することで走査し、比較結果に基づいて矩形領域に移動体が存在するか否かを判定し、移動体が存在すると判定された矩形領域の周辺の画像を用いて、テンプレート画像を生成する。
【００８８】
このような構成により、ボールを見失ってしまった場合でも、再度ボールを検出することができるとともに、ボールの検出においてもボールの大きさに応じたテンプレート特徴量とパラメータとを用いるので、ボールの大きさにかかわらず好適にボールの位置を検出することができる。
【００８９】
なお、上記説明した実施の形態は、本開示の一例であって、本開示はこれに限定されない。以下では、本開示の変形例について説明する。
【００９０】
＜変形例１＞
上述した実施の形態では、上述したボールの推定位置および推定サイズに対応するテンプレートデータ（パラメータおよびテンプレート特徴量）を用いて追跡処理および検出処理を行っていたが、本変形例１では、これらの処理に加えて、ボールの軌跡を検出する軌跡検出処理を並列的に行う。
【００９１】
図１０は、変形例１における移動体追跡装置１００の動作の一例を説明するためのフローチャートである。図１０におけるステップＳ１００１からＳ１００８、Ｓ１０１０からＳ１０１２では、上記説明した、図４におけるステップＳ４０１からＳ４０８、Ｓ４１０からＳ４１２と同様の処理が行われる。このため、図１０に示す以下の変形例１の動作例の説明では、ステップＳ１００１からＳ１００８、Ｓ１０１０からＳ１０１２の説明を省略し、図１０で新たに加わったステップＳ１０１３からＳ１０１６について説明する。
【００９２】
ステップＳ１０１３において、外部のカメラ等から２フレーム目以降の画像を取得すると、プロセッサ１０１は、ボール軌跡検出用画像生成処理を実行する。図１１は、ボール軌跡検出用画像生成処理の動作の一例を説明するためのフローチャートである。
【００９３】
ステップＳ１１０１において、プロセッサ１０１は、現フレームの画像を取得する。そして、ステップＳ７０２において、プロセッサ１０１は、１フレーム前のボール軌跡検出用画像を記憶部１０２から取得する。
【００９４】
ステップＳ１１０３において、プロセッサ１０１は、ステップＳ１１０１において取得した現フレームの画像と、ステップＳ１１０２にて取得した、現フレームの１フレーム前の画像とを用いて、オプティカルフローを算出する。具体的には、プロセッサ１０１は、１フレーム前の画像の各画素が現フレームの画像のどの画素に移動したのか、すなわちフローベクトルを求める。
【００９５】
次に、ステップＳ１１０４において、プロセッサ１０１は、ステップＳ１１０３にて算出したオプティカルフローを用いて、全てのフローベクトルの中から移動量が最大であるフローベクトルを検出する。
【００９６】
ステップＳ１１０５において、プロセッサ１０１は、ステップＳ１１０４にて検出した移動量が最大のフローベクトルに対応する画素の位置（箇所）を示す画像を、ステップＳ１１０２にて取得した１フレーム前のボール軌跡検出用画像に重畳する。具体的には、プロセッサ１０１は、ボール軌跡検出用画像において、ステップＳ１１０４にて検出したフローベクトルに対応する画素の位置周辺の画素値を２５５（白）に設定する。例えば、フローベクトルに対応する画素の位置周辺に５×５ピクセルの矩形領域や、直径５ピクセルの円領域を設定し、それらの領域を構成する画素の値を２５５に設定する。これにより、生成されるボール軌跡検出用画像には、現フレームまでのボールの軌跡が含まれることになる。
【００９７】
そして、ステップＳ１１０６において、プロセッサ１０１は、ステップＳ１１０５にて生成したボール軌跡検出用画像を出力し、ボール軌跡検出用画像の重畳フレーム数をカウントアップする。なお、出力されたボール軌跡検出用画像は、図１０に示すステップＳ１０１５におけるボール軌跡検出処理にて使用されるとともに、記憶部１０２に入力されて格納され、次フレームのボール軌跡検出用画像の生成に使用される。
【００９８】
図１０の説明に戻る。ステップＳ１０１４において、プロセッサ１０１は、ボール軌跡検出用画像の重畳フレーム数が所定の値、例えば１０と一致するか判定する。一致しない場合は、軌跡検出処理を終了する。一方、ボール軌跡検出用画像の重畳フレーム数が所定の値と一致する場合、プロセッサ１０１は、ステップＳ１０１４において、ステップＳ１０１３にて生成されたボール軌跡検出用画像を用いて、ボール軌跡検出処理を行う。図１２は、ボール軌跡検出部２１０によるボール軌跡検出処理の動作の一例を説明するためのフローチャートである。
【００９９】
ステップＳ１２０１において、プロセッサ１０１は、ステップＳ１０１３において生成されたボール軌跡検出用画像に対してラベリング処理を実施する。本ステップＳ１２０１では、ラベリング処理として、画素値が２５５（白）である部分が連続した画素に同じ番号を割り振る。
【０１００】
ステップＳ１２０２において、プロセッサ１０１は、ラベリング処理を実施した結果、ラベリング数が１であるか否かについて判定する。図１３Ａは、ラベリング数が１である場合のボール軌跡検出用画像の例を示す図である。図１３Ａに示すように、ラベリング数が１である場合には、ボール軌跡検出用画像上において、白い部分、すなわち移動量が最大となる画素の位置が連結されたように表される。この連結部分は、当該画像上におけるボールの軌跡を示すものである。一方、図１３Ｂは、ラベリング数が３である場合のボール軌跡検出用画像の例を示す図である。図１３Ｂに示すように、ラベリング数が１でない場合は、ボールの軌跡候補が複数に分かれてしまい、どれがボールの軌跡かを特定することができない。
【０１０１】
ステップＳ１２０２において、ラベリング数が１であると判定された場合、処理はステップＳ１２０３に進む。そうでない場合、ボール軌跡検出処理は終了する。
【０１０２】
ステップＳ１２０３において、プロセッサ１０１は、ボール軌跡検出用画像上のフローベクトルの位置を第２ボール位置として記憶部１０２に記憶させるとともに出力する。
【０１０３】
なお、図１２にて説明したボール軌跡検出処理において、例えば選手に対応する画素領域である選手領域を検出し、ボール軌跡検出用画像上のフローベクトルの位置が選手領域に含まれるか否かの判定を行ってもよい。これにより、ボールの軌跡と選手の軌跡とが混同されてしまうことが無くなり、ボールの軌跡の検出精度が向上する。選手領域の検出方法としては、上述したボールの検出方法と同様に、予め選手に対応する画素の特徴量を取得しておき、当該特徴量と現フレームの画像の各領域の特徴量とを比較して選手尤度を算出し、選手尤度が所定値以上である領域を選手領域とする方法がある。
【０１０４】
図１０の説明に戻る。ステップＳ１０１６において、プロセッサ１０１は、ボール軌跡検出用画像をクリア（具体的には、黒（０）で塗りつぶす）し、さらに、ボール軌跡検出用画像の重畳フレーム数をクリアして０にする。
【０１０５】
ステップＳ１０１７において、プロセッサ１０１は、ステップＳ１００６の追跡処理にて生成されたボール位置、あるいは、ステップＳ１００８の検出処理にて生成されたボール位置と、ステップＳ１０１５のボール軌跡検出処理にて生成されたボール位置と、を合成し、最終的なボール位置を算出する。
【０１０６】
具体的には、プロセッサ１０１は、追跡処理にて生成されたボール位置、あるいは検出処理にて生成されたボール位置を第１ボール位置とし、ボール軌跡検出処理にて生成された第２ボール位置とを用いて、以下のような方法で最終的なボール位置（最終ボール位置）を算出する。プロセッサ１０１は、第１ボール位置と第２ボール位置との距離を算出し、距離が所定のしきい値以上であった場合には第２ボール位置を最終ボール位置とし、しきい値より小さかった場合には第１ボール位置を最終ボール位置とする。
【０１０７】
最終ボール位置の算出に使用される所定のしきい値は、例えば、固定値でもよいし、他ボール長辺の数倍（例えば１．５倍）等の値としてもよい。あるいは、ボールサイズグループに対応したパラメータの１つとして予めしきい値を設定しておいてもよい。
【０１０８】
そして、プロセッサ１０１は、第１ボール位置しか得られなかった場合には、第１ボール位置を最終ボール位置とし、第２ボール位置しか得られなかった場合には、第２ボール位置を最終ボール位置とする。プロセッサ１０１は、第１ボール位置も第２ボール位置も得られなかった場合には、どちらかのボール位置が得られるフレームまで処理を行い、どちらかのボール位置が得られたタイミングで、ボール位置を得られなかった間のボール位置を補間してまとめて出力するようにすればよい。
【０１０９】
ステップＳ１０１８において、プロセッサ１０１は、ステップＳ１０１７にて算出された最終ボール位置を記憶部１０２に記憶させるとともに出力する。
【０１１０】
なお、ステップＳ１０１５におけるボール軌跡検出処理は、フレーム毎のボールの位置を前フレームまでの軌跡に重畳していくという処理の性質上、毎フレーム行われるのではなく、所定フレームに１回行われることが望ましい。
【０１１１】
以上説明したように、変形例１では、追跡処理あるいは検出処理によってボール位置を算出するとともに、所定フレームに１回、ボールの軌跡を検出し、追跡処理あるいは検出処理によって得られたボール位置（第１ボール位置）と、ボール軌跡検出処理によって得られたボール位置（第２ボール位置）と、の両方を参照してボール位置を決定することができる。このため、ボール位置の検出精度が向上する。
【０１１２】
＜変形例２＞
本変形例２では、テンプレート生成し使用されるテンプレート画像をユーザが視認できるように表示するとともに、ユーザが複数のテンプレート画像のうち、いずれかを選択したり、いずれか（あるいは全て）を消去したりする操作を受け付ける。これにより、ユーザによる選択に応じたテンプレート画像を生成することができるので、より周期の状況に合わせたテンプレート画像を用意することができるようになる。
【０１１３】
本変形例２において、プロセッサ１０１は、テンプレートの生成に使用するテンプレート画像を随時表示部１０２に表示させる。図１４は、表示部１０２に表示されるテンプレート画像設定画面３００の例を示す図である。
【０１１４】
図１４に示すように、テンプレート画像設定画面３００は、フィールド画面３０１およびテンプレート確認パネル３０２を有する。フィールド画面３０１は、外部のカメラ等から取得された映像が表示されており、ユーザはフィールド画面３０１を参照することで、ボールが現在どこにあるかを確認することができる。
【０１１５】
テンプレート確認パネル３０２は、テンプレート画像が表示される欄である。テンプレート確認パネル３０２は、ボールサイズグループ小に対応するパネル３０２Ａと、ボールサイズグループ中に対応するパネル３０２Ｂと、ボールサイズグループ大に対応するパネル３０２Ｃとを有する。
【０１１６】
図１４に示す例では、ボールサイズグループ小である場合のテンプレートは、まだ登録されておらず、未登録である。ボールサイズグループ中および大である場合のテンプレートは登録されており、そのテンプレートの生成に使用されたテンプレート画像がテンプレート画像表示欄３０３および３０４に表示されている。
【０１１７】
テンプレート確認パネル３０２のそれぞれのボールサイズグループに対応する欄のうち、テンプレートが登録されているパネル３０２Ｂとパネル３０２Ｃとには、クリアボタン３０５が表示されている。クリアボタン３０５は、入力部１０４を介したユーザの操作により選択されることができ、クリアボタン３０５が操作された場合、プロセッサ１０１は、操作されたクリアボタン３０５が存在するパネルのボールサイズグループに対応するテンプレート画像およびテンプレート特徴量を消去する。これにより、例えば天気や照明条件の変化により、追跡処理や検出処理に追跡漏れや誤検出が増加してきた場合に、ユーザはクリアボタン３０５を操作することにより、現在のテンプレート画像およびテンプレート特徴量を消去することができる。現在のテンプレート画像およびテンプレート特徴量が消去されると、プロセッサ１０１は、現在の天気や照明条件に合致したテンプレート画像およびテンプレート特徴量を生成し直す。
【０１１８】
以上説明したように、変形例２では、テンプレート画像を表示部に表示し、ユーザにテンプレート画像の選択を行わせることができる。これにより、より競技場の天気や照明条件に合致したテンプレート画像を生成することができる。
【産業上の利用可能性】
【０１１９】
本開示は、スポーツ競技を撮影したスポーツ映像における移動体の検出を行う移動体追跡装置に適用することができる。
【符号の説明】
【０１２０】
１００  移動体追跡装置
１０１  プロセッサ
１０２  記憶部
１０３  通信回路
１０４  入力部
１０５  表示部
１０６  バス
３００  テンプレート画像設定画面
３０１  フィールド画面
３０２  テンプレート確認パネル
３０２Ａ，３０２Ｂ，３０２Ｃ  パネル
３０３，３０４  テンプレート画像表示欄
３０５  クリアボタン
【図１】
2017081839.tif 000003
【図２】
2017081839.tif 000004
【図３】
2017081839.tif 000005
【図４】
2017081839.tif 000006
【図５】
2017081839.tif 000007
【図６】
2017081839.tif 000008
【図７】
2017081839.tif 000009
【図８】
2017081839.tif 000010
【図９】
2017081839.tif 000011
【図１０】
2017081839.tif 000012
【図１１】
2017081839.tif 000013
【図１２】
2017081839.tif 000014
【図１３Ａ】
2017081839.tif 000015
【図１３Ｂ】
2017081839.tif 000016
【図１４】
2017081839.tif 000017
【手続補正書】
【提出日】平成30年3月23日(2018.3.23)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０１１２
【補正方法】変更
【補正の内容】
【０１１２】
＜変形例２＞
本変形例２では、テンプレート生成し使用されるテンプレート画像をユーザが視認できるように表示するとともに、ユーザが複数のテンプレート画像のうち、いずれかを選択したり、いずれか（あるいは全て）を消去したりする操作を受け付ける。これにより、ユーザによる選択に応じたテンプレート画像を生成することができるので、より周囲の状況に合わせたテンプレート画像を用意することができるようになる。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０１１３
【補正方法】変更
【補正の内容】
【０１１３】
本変形例２において、プロセッサ１０１は、テンプレートの生成に使用するテンプレート画像を随時表示部１０５に表示させる。図１４は、表示部１０５に表示されるテンプレート画像設定画面３００の例を示す図である。
【手続補正３】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
プロセッサが、スポーツ競技の試合を撮影したスポーツ映像を構成する複数フレームの画像の各々における移動体の位置を追跡する移動体追跡方法であって、
前記各フレームの画像における前記移動体の大きさを推定し、
前記推定した移動体の大きさに基づいて、テンプレート特徴量を前記推定した移動体の大きさに対応するテンプレート画像から生成される特徴量に更新し、
前記各フレームの画像において前記移動体が存在する領域の候補である候補領域の特徴量と、前記推定した移動体の大きさに対応する前記テンプレート特徴量とを比較し、比較結果に基づいて前記候補領域に前記移動体が位置するか否かを判定する、
移動体追跡方法。
【請求項２】
前記候補領域の特徴量と前記テンプレート特徴量との比較は、前記候補領域の色ヒストグラムと前記テンプレート特徴量の色ヒストグラムとの距離を算出することによって行う、
請求項１に記載の移動体追跡方法。
【請求項３】
前記プロセッサは、更に、
前記推定した移動体の大きさに基づいて、少なくとも前記移動体の検出のための所定のしきい値、あるいは追跡のための所定のしきい値を含むパラメータを更新する、
請求項１に記載の移動体追跡方法。
【請求項４】
前記推定した移動体の大きさが、複数の段階のいずれに属するかに応じて、前記比較に用いる前記テンプレート特徴量を変更する、
請求項１に記載の移動体追跡方法。
【請求項５】
前記推定した移動体の大きさが、前記複数の段階のうちの異なる段階へ変化したとき、前記移動体の周辺の画像を用いて、前記テンプレート特徴量を生成する、
請求項４に記載の移動体追跡方法。
【請求項６】
前記候補領域が存在しない場合に、前記フレームの画像内の矩形領域を、逐次前記テンプレートデータと比較することで走査し、比較結果に基づいて前記矩形領域に前記移動体が存在するか否かを判定し、
前記移動体が存在すると判定された前記矩形領域の周辺の画像を用いて、前記テンプレート特徴量を生成する、
請求項１に記載の移動体追跡方法。
【請求項７】
前記テンプレート特徴量の初期値は、前記スポーツ競技の試合開始前に予め生成される、
請求項１に記載の移動体追跡方法。
【請求項８】
前記複数の各フレームの画像に基づいて、軌跡検出用画像を生成し、
前記軌跡検出用画像に基づいて、前記移動体の軌跡を検出する、
請求項１に記載の移動体追跡方法。
【請求項９】
前記テンプレートデータに含まれる、前記移動体に関する画像であるテンプレート画像を表示部に表示するとともに、予め設定されているテンプレート特徴量を消去する操作を受け付けるための表示を行う、
請求項１に記載の移動体追跡方法。
【請求項１０】
スポーツ競技の試合を撮影したスポーツ映像を構成する複数フレームの画像の各々における移動体の位置を追跡する移動体追跡装置であって、
前記各フレームの画像における前記移動体の大きさを推定し、
前記推定した移動体の大きさに基づいて、テンプレート特徴量を前記推定した移動体の大きさに対応するテンプレート画像から生成される特徴量に更新し、
前記各フレームの画像において前記移動体が存在する領域の候補である候補領域特徴量と、前記推定した移動体の大きさに対応する前記テンプレート特徴量とを比較し、比較結果に基づいて前記候補領域に前記移動体が位置するか否かを判定する、
移動体追跡装置。
【請求項１１】
前記候補領域の特徴量と前記テンプレート特徴量との比較は、前記候補領域の色ヒストグラムと前記テンプレート特徴量の色ヒストグラムとの距離を算出することによって行う、
請求項１０に記載の移動体追跡装置。
【請求項１２】
前記推定した移動体の大きさに基づいて、少なくとも前記移動体の検出のための所定のしきい値、あるいは追跡のための所定のしきい値を含むパラメータを更新する、
請求項１０に記載の移動体追跡装置。
【請求項１３】
前記推定した移動体の大きさが、複数の段階のいずれに属するかに応じて、前記比較に用いる前記テンプレートデータを変更する、
請求項１０に記載の移動体追跡装置。
【請求項１４】
前記推定した移動体の大きさが、前記複数の段階のうちの異なる段階へ変化したとき、前記移動体の周辺の画像を用いて、前記テンプレート特徴量を生成する、
請求項１３に記載の移動体追跡装置。
【請求項１５】
前記候補領域が存在しない場合に、前記フレームの画像内の矩形領域を、逐次前記テンプレートデータと比較することで走査し、比較結果に基づいて前記矩形領域に前記移動体が存在するか否かを判定し、
前記移動体が存在すると判定された前記矩形領域の周辺の画像を用いて、前記テンプレート特徴量を生成する、
請求項１０に記載の移動体追跡装置。
【請求項１６】
前記テンプレート特徴量の初期値は、前記スポーツ競技の試合開始前に予め生成される、
請求項１０に記載の移動体追跡装置。
【請求項１７】
前記複数の各フレームの画像に基づいて、軌跡検出用画像を生成し、
前記軌跡検出用画像に基づいて、前記移動体の軌跡を検出する、
請求項１０に記載の移動体追跡装置。
【請求項１８】
前記テンプレートデータに含まれる、前記移動体に関する画像であるテンプレート画像を表示部に表示するとともに、予め設定されているテンプレート特徴量を消去する操作を受け付けるための表示を行う、
請求項１０に記載の移動体追跡装置。
【請求項１９】
プロセッサに、スポーツ競技の試合を撮影したスポーツ映像を構成する複数フレームの画像の各々における移動体の位置を追跡する処理を実行させるプログラムであって、
前記各フレームの画像における前記移動体の大きさを推定し、
前記推定した移動体の大きさに基づいて、テンプレート特徴量を前記推定した移動体の大きさに対応するテンプレート画像から生成される特徴量に更新し、
前記各フレームの画像において前記移動体が存在する領域の候補である候補領域の特徴量と、前記推定した移動体の大きさに対応する前記テンプレート特徴量とを比較し、比較結果に基づいて前記候補領域に前記移動体が位置するか否かを判定する、
手順を前記プロセッサに実行させる、プログラム。
【国際調査報告】
2017081839.tif 000018
2017081839.tif 000019
2017081839.tif 000020
2017081839.tif 000021