(57)【特許請求の範囲】
【請求項１】
プロセッサがスポーツ映像中に存在する選手の姿勢を推定する方法であって、
前記プロセッサは、
推定対象の試合のスポーツ映像中に存在する特定選手の関節位置を指定する情報である参照姿勢情報を受け取り、
前記参照姿勢情報を用いて、推定対象のスポーツ映像中に存在する前記特定選手以外の選手である推定対象選手の姿勢を推定する、
姿勢推定方法。
【請求項２】
前記プロセッサは、
前記参照姿勢情報と、推定対象の試合のスポーツ映像中に存在する前記推定対象選手の色に関する情報と、前記特定選手の関節位置の色に関する情報とを用いて前記推定対象選手の姿勢を推定する、
請求項１に記載の姿勢推定方法。
【請求項３】
前記スポーツはチーム対抗スポーツであって、
前記参照姿勢情報は少なくとも相対する２チームそれぞれの選手について入力された情報である、
請求項１に記載の姿勢推定方法。
【請求項４】
前記プロセッサは、チーム毎に入力された前記参照姿勢情報を用いて、該チームの内の前記推定対象選手の姿勢を推定する、
請求項３に記載の姿勢推定方法。
【請求項５】
前記スポーツは前記特定選手と前記推定対象選手とがチーム毎に規定のユニフォームを着用するスポーツである、
請求項１に記載の姿勢推定方法。
【請求項６】
前記プロセッサは、前記推定対象選手を、ユーザから入力された情報によって特定する、
請求項１に記載の姿勢推定方法。
【請求項７】
前記特定選手の関節位置を指定する情報は、少なくとも複数箇所の関節について個別になされるユーザの入力に基づいて生成され、
前記推定対象選手を特定する情報は、前記複数箇所の関節の個数よりも少ない箇所について個別になされるユーザの入力に基づいて生成される、
請求項６に記載の姿勢推定方法。
【請求項８】
プロセッサを備え、
前記プロセッサは、推定対象のスポーツ映像中に存在する特定選手の関節位置を指定する情報である参照姿勢情報を受け取り、
前記参照姿勢情報を用いて、推定対象のスポーツ映像中に存在する前記特定選手以外の選手である推定対象選手の姿勢を推定する、
姿勢推定装置。
【請求項９】
前記プロセッサは、
前記参照姿勢情報と、推定対象のスポーツ映像中に存在する前記推定対象選手の色に関する情報と、前記特定選手の関節位置の色に関する情報とを用いて前記推定対象選手の姿勢を推定する、
請求項８に記載の姿勢推定装置。
【請求項１０】
前記スポーツはチーム対抗スポーツであって、
前記参照姿勢情報は少なくとも相対する２チームそれぞれの選手について入力された情報である、
請求項８に記載の姿勢推定装置。
【請求項１１】
前記プロセッサは、チーム毎に入力された前記参照姿勢情報を用いて、同チーム内の前記推定対象選手の姿勢を推定する、
請求項１０に記載の姿勢推定装置。
【請求項１２】
前記スポーツは前記特定選手と前記推定対象選手とがチーム毎に規定のチームユニフォームを着用するスポーツである、
請求項８に記載の姿勢推定装置。
【請求項１３】
前記プロセッサは、前記推定対象選手を、ユーザから入力部を介して入力された情報によって特定する、
請求項８に記載の姿勢推定装置。
【請求項１４】
前記特定選手の関節位置を指定する情報は、少なくとも複数箇所の関節について個別に前記入力部に対してなされるユーザの入力に基づいて生成され、
前記推定対象選手を特定する情報は、前記複数箇所の関節の個数よりも少ない箇所について個別に前記入力部に対してなされるユーザの入力に基づいて生成される、
請求項１３に記載の姿勢推定装置。
【請求項１５】
前記関節位置には、選手の頭、胸、腰、膝上、膝下の位置のいずれかが含まれる、
請求項１に記載の姿勢推定方法。
【請求項１６】
前記関節位置には、選手の頭、胸、腰、膝上、膝下の位置のいずれかが含まれる、
請求項８に記載の姿勢推定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、スポーツ映像中に存在する選手の姿勢推定方法および姿勢推定装置に関する。
【背景技術】
【０００２】
非特許文献１はスポーツ映像中に存在する選手の姿勢推定方法を開示する。この姿勢推定方法は基幹部位情報を用いて姿勢推定を行う。これにより、精度良く人物の姿勢を推定することができる。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】橋本潔、外６名、「姿勢変動に伴う身体的特徴変化の統計的モデリングによる遮蔽に頑健な人物追跡」、ＶＩＥＷ２０１１、２０１１年１２月、ｐ．６０−６７
【発明の概要】
【０００４】
本開示は、スポーツ映像中に存在する選手の姿勢を効率よく推定する姿勢推定方法および姿勢推定装置を提供する。
【０００５】
本開示における姿勢推定装置のプロセッサはスポーツ映像中に存在する選手の姿勢を推定する方法として、ユーザによって入力された情報に基づいて得られる情報であって、推定対象の試合のスポーツ映像中に存在する特定選手の関節位置を指定する情報である参照姿勢情報を受け取る。そしてプロセッサは、参照姿勢情報を用いて、推定対象のスポーツ映像中に存在する特定選手以外の選手である推定対象選手の姿勢を推定する。
【０００６】
本開示における姿勢推定方法および装置は、スポーツ映像中に存在する選手の姿勢を効率よく推定するのに有効である。
【図面の簡単な説明】
【０００７】
【図１】図１は実施の形態１における姿勢推定装置の構成を示す図である。
【図２】図２は実施の形態１における関節ラベル識別器の学習の概念を説明する図である。
【図３】図３は実施の形態１における姿勢推定処理を説明するフローチャートである。
【図４】図４は実施の形態１における特定選手の参照姿勢情報を説明する図である。
【図５】図５は実施の形態１における推定対象選手を特定する概念を示す図である。
【図６】図６は実施の形態１における参照姿勢情報を用いて推定対象選手の姿勢を推定する処理を説明するフローチャートである。
【図７】図７は実施の形態１における参照姿勢情報を用いて推定対象選手に関節ラベルを付与した概念を表す図である。
【図８】図８は実施の形態１における参照姿勢情報を用いて関節尤度を算出した概念を表す図である。
【図９】図９は実施の形態１における動的計画法を用いて関節ラベルの組を特定する概念を説明する為の図である。
【図１０】図１０は実施の形態１における特定された関節ラベルの組に基づいて推定対象選手の姿勢の意味づけをする概念を説明する図である。
【図１１】図１１は他の実施の形態における参照姿勢情報を用いて推定対象選手の姿勢を推定する処理を説明するフローチャートである。
【発明を実施するための形態】
【０００８】
以下、適宜図面を参照しながら、実施の形態を詳細に説明する。但し、必要以上に詳細な説明は省略する場合がある。例えば、既によく知られた事項の詳細説明や実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になるのを避け、当業者の理解を容易にするためである。
【０００９】
なお、発明者らは、当業者が本開示を十分に理解するために添付図面および以下の説明を提供するのであって、これらによって請求の範囲に記載の主題を限定することを意図するものではない。
【００１０】
（実施の形態１）
以下、図１〜１０を参照しながら、実施の形態１を説明する。
【００１１】
［１−１．構成］
図１は実施の形態１における姿勢推定装置の構成の一例を示す図である。
【００１２】
姿勢推定装置１００はプロセッサ１０１と、記憶部１０２と、入力部１０３と、表示部１０４と、バス１０５とを有する。
【００１３】
プロセッサ１０１は演算を行うことで姿勢推定装置の他の構成要素を制御する。
【００１４】
記憶部１０２は情報を一時的に、あるいは恒久的に記憶する。記憶部１０２は姿勢推定装置のＲＯＭ（ＲｅａｄＯｎｌｙ Ｍｅｍｏｒｙ）やＲＡＭ（ＲａｎｄｏｍＡｃｃｅｓｓ Ｍｅｍｏｒｙ）などに相当する。姿勢推定装置１００は用途やアクセススピードの必要性に応じて記憶部１０２を複数有していてもよい。ＨＤＤ（ＨａｒｄＤｉｓｋ Ｄｒｉｖｅ）やＳＤＲＡＭ（ＳｙｎｃｈｒｏｎｏｕｓＤｙｎａｍｉｃ Ｒａｎｄｏｍ Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などを適用することで記憶部１０２を構成することができる。
【００１５】
入力部１０３は外部からの信号を受け付ける。入力部１０３は姿勢推定装置１００の入力装置や入力インターフェースなどに相当する。マウスやキーボードなどの入力装置、通信ポートや無線通信デバイスなどの入力インターフェースを適用することで入力部１０３を構成することができる。
【００１６】
表示部１０４は外部へ情報を表示する。液晶ディスプレイなどを適用することで表示部１０４を構成することができる。
【００１７】
バス１０５は姿勢推定装置１００を構成する各要素を、接続する経路である。プロセッサ１０１にバス１０５を統合することでプロセッサ１０１の内部にバス１０５を構成することもできる。バス１０５は各要素を有線で接続してもよいし、各要素を無線で接続してもよい。
【００１８】
以上に述べた姿勢推定装置１００の構成は一例である。したがって以上に述べた構成に別の構成要素を追加することで姿勢推定装置１００を構成してもよい。また、以上に述べた構成から構成要素の一部を必要に応じて削除することで姿勢推定装置１００を構成してもよい。また、以上に述べた構成要素を互いに統合することで姿勢推定装置１００を構成してもよい。また、上述の構成要素の一部で姿勢推定装置１００を構成してもよい。
【００１９】
［１−２．動作］
以上に述べた姿勢推定装置１００の動作を説明する。なお、姿勢推定装置１００は主としてプロセッサ１０１が姿勢推定装置１００の各要素と協業することで動作するものである。
【００２０】
姿勢推定装置１００は入力部１０３から入力されたスポーツ映像中に存在する推定対象選手の姿勢を推定する。姿勢推定装置１００は以下に述べる順で選手の姿勢を推定する。
【００２１】
［１−２−２．事前学習］
姿勢推定装置１００は選手の姿勢を推定する前に予め機械学習を行う。機械学習とは装置に属性付きデータを大量に入力することで、装置が所定のアルゴリズムに従って当該データから判別（識別）規則を生成することである。装置は生成した判別規則を用いることで、新規に与えられたデータがどの属性であるかを判別することができる。
【００２２】
姿勢推定装置１００は２種類の機械学習を行う。２種類の機械学習とは姿勢推定装置１００が関節ラベル識別器として振舞うための機械学習と、姿勢推定装置１００が関節尤度分布識別器として振舞うための機械学習である。この２種類の機械学習の間では判別の目的と手法とが異なる。
【００２３】
［１−２−２−１．関節ラベル識別器の学習］
図２を参照することで、姿勢推定装置１００が関節ラベル識別器として振舞うための機械学習について説明を行う。関節ラベル識別器の目的は、画像中の１点と参照画像情報（後述される）を入力として受け取った際に、当該１点が人体の関節のうちのどの箇所の周辺に存在するかを出力することである。
【００２４】
図２は実施の形態１における関節ラベル識別器の学習の概念を説明する図である。
【００２５】
学習選手画像２００はアメリカンフットボールの試合中の映像から得られた選手の画像である。姿勢推定装置１００はアメリカンフットボールの試合中の映像から１枚のフレームを取得することで学習選手画像２００を得ることができる。また、姿勢推定装置１００はアメリカンフットボールの試合中の写真を取得することで学習選手画像２００を得ることもできる。
【００２６】
姿勢推定装置１００はそれぞれ姿勢が異なる学習選手画像２００を大量に読み込む。姿勢推定装置１００は記憶部１０２に学習選手画像２００を記録することで、学習選手画像２００を読み込むことができる。
【００２７】
姿勢推定装置１００は読み込んだ学習選手画像２００から関節ラベルの学習を行う。姿勢推定装置１００は（１）学習選手画像２００のうち任意の１点が人体の関節のうちどの関節の周辺に存在するか（２）学習選手画像２００のうち任意の１点の特徴量はいくつか、という２つの要素を所定のアルゴリズムに適用することで、関節ラベルの学習を行う。
【００２８】
姿勢推定装置１００は（１）学習選手画像２００のうち任意の１点が人体の関節のうちどの関節の周辺に存在するかをいう要素を取得する。学習選手画像２００の各点は、自身が人体の関節のうちどの関節の周辺に存在するかという情報を持っている。本実施の形態において関節の種類は頭、胸、腰、膝上、膝下の５種類である。姿勢推定装置１００は学習選手画像２００の保持する当該関節の種類に関する情報を参照することで（１）学習選手画像２００のうち任意の１点が人体の関節のうちどの関節の周辺に存在するかという要素を取得する。
【００２９】
姿勢推定装置１００はパッチという概念を用いることで（２）学習選手画像２００のうち任意の１点の特徴量はいくつか、という計算を行う。パッチとは学習選手画像２００のうちの任意の１点について、当該１点を中心として定義される矩形の領域である。
【００３０】
図２に示されるパッチ２０１を参照することで特徴量の計算について説明を行う。姿勢推定装置１００は、（Ａ）頭部からパッチの中心部までの距離、（Ｂ）パッチ内の２点に基づいて計算される特徴量、（Ｃ）パッチ内の１点と参照姿勢情報とのＲＧＢ色ベクトルの角度、という３種類の特徴量を計算する。
【００３１】
姿勢推定装置１００のプロセッサ１０１は図２に示されるように頭部２０２からパッチ２０１の中心までの距離を計算することで（Ａ）頭部からパッチの中心部までの距離を得る。頭部からパッチの中心までの距離は（ｘ、ｙ）の二次元座標の形式とする。なお、プロセッサ１０１は、学習選手画像２００において予め定義されている頭部２０２の座標を用いることで、当該距離の計算を行う。プロセッサ１０１は以上のようにして得られた（Ａ）頭部からパッチの中心部までの距離を記憶部１０２に記録する。
【００３２】
姿勢推定装置１００のプロセッサ１０１は図２に示されるようにパッチ２０１の点２０３、点２０４に基づいて特徴量を計算することで（Ｂ）パッチ内の２点に基づいて計算される特徴量を求める。点２０３、点２０４はパッチ２０１の中で定義されるランダムな２画素のペアである。プロセッサ１０１は点２０３、点２０４に基づいて３種類の特徴量を計算する。３種類の特徴量とは、（Ｉ）輝度値、（ＩＩ）ＲＧＢ色ベクトルの角度、（ＩＩＩ）ＨＯＧ（Ｈｉｓｔｏｇｒａｍ  ｏｆ  Ｏｒｉｅｎｔｅｄ  Ｇｒａｄｉｅｎｔｓ）特徴量の差分値、の３種類である。
【００３３】
プロセッサ１０１は点２０３、点２０４の（Ｉ）輝度値を計算する。学習選手画像２００の画素はそれぞれ定義された輝度値を保持している。プロセッサ１０１は学習選手画像２００を参照することで点２０３、点２０４輝度値を計算する。
【００３４】
プロセッサ１０１は点２０３、点２０４の（ＩＩ）ＲＧＢ色ベクトルの角度を計算する。ＲＧＢ色ベクトルとはＲ（Ｒｅｄ）、Ｇ（Ｇｒｅｅｎ）、Ｂ（Ｂｌｕｅ）を軸とする３次元空間上で定義されるベクトルである。学習選手画像２００の画素はそれぞれ定義されたＲＧＢの値を保持している。点２０３、点２０４のＲＧＢ値をＲ、Ｇ、Ｂ、を軸とする３次元空間上にプロットすることで２つのＲＧＢ色ベクトルを得ることができる。プロセッサ１０１は当該２つのＲＧＢ色ベクトルの角度を計算することで、点２０３、点２０４の（ＩＩ）ＲＧＢ色ベクトルの角度を計算することができる。
【００３５】
プロセッサ１０１は点２０３、点２０４について（ＩＩＩ）ＨＯＧ特徴量の差分値を計算する。ＨＯＧ特徴量とは画像内の点の近傍における輝度の勾配をヒストグラム化したものである。本実施の形態では、プロセッサ１０１は各点の近傍を３×３に分割することで、９つのセルを定義する。プロセッサ１０１は定義された９つのセルにおける輝度の勾配をヒストグラム化することで、点２０３、点２０４におけるＨＯＧ特徴量を得る。プロセッサ１０１は点２０３、点２０４のＨＯＧ特徴量においてヒストグラム間の減算を行うことでＨＯＧ特徴量の差分値を得る。このようにしてプロセッサ１０１は点２０３、点２０４について（ＩＩＩ）ＨＯＧ特徴量の差分値を計算することができる。
【００３６】
プロセッサ１０１は以上のようにして得られた（Ｉ）輝度値、（ＩＩ）ＲＧＢ色ベクトルの角度、（ＩＩＩ）ＨＯＧ特徴量の差分値のそれぞれを（Ｂ）パッチ内の２点に基づいて計算される特徴量として記憶部１０２に記録する。
【００３７】
姿勢推定装置１００のプロセッサ１０１は（Ｃ）パッチ内の１点と参照姿勢とのＲＧＢ色ベクトルの角度を計算する。
【００３８】
学習用参照姿勢２１０はアメリカンフットボールの試合中の映像から得られた、予め定義された選手の画像の画像である。姿勢推定装置１００はアメリカンフットボールの試合中の映像から１枚のフレームを取得することで学習用参照姿勢２１０を得ることができる。また、姿勢推定装置１００はアメリカンフットボールの試合中の写真を取得することで学習用参照姿勢２１０を得ることもできる。学習用参照姿勢２１０は学習選手画像２００に対する基準（ものさし）として機能する。学習用参照姿勢２１０の選手は学習選手画像２００の選手と類似した環境に存在する選手であることが望ましい。具体的には学習用参照姿勢２１０の選手は学習選手画像２００の選手と同一チームであって同一の試合映像から得られた選手であることが望ましい。
【００３９】
学習用参照姿勢２１０の各点は、自身が人体の関節のうちどの関節の周辺に存在するかという情報を持っている。本実施の形態では関節の種類は頭、胸、腰、膝上、膝下の５種類である。
【００４０】
プロセッサ１０１は学習選手画像２００のパッチ２０１内の点２０３又は点２０４と、学習用参照姿勢２１０の各関節近傍の点である学習用参照姿勢情報２１１〜学習用参照姿勢情報２１５とのＲＧＢ色ベクトルの角度を計算する。ＲＧＢ色ベクトルは、点２０３、点２０４のＲＧＢ色ベクトルの角度を計算する際に説明したものと同様のものである。学習用参照姿勢情報２１１、学習用参照姿勢情報２１２、学習用参照姿勢情報２１３、学習用参照姿勢情報２１４、学習用参照姿勢情報２１５はそれぞれ頭、胸、腰、膝上、膝下の周辺に存在する点である。プロセッサ１０１は学習用参照姿勢情報２１１〜学習用参照姿勢情報２１５を各関節近傍内でランダムに選ぶことで学習用参照姿勢情報２１１〜学習用参照姿勢情報２１５を求めることができる。プロセッサ１０１は以上のように求めた学習用参照姿勢情報２１１〜学習用参照姿勢情報２１５を用いることで、学習選手画像２００のパッチ２０１内の点２０３又は点２０４と、学習用参照姿勢２１０の各関節近傍の学習用参照姿勢情報２１１〜学習用参照姿勢情報２１５とのＲＧＢ色ベクトルの角度を計算する。プロセッサ１０１は以上のようにして計算された（Ｃ）パッチ内の１点と参照姿勢とのＲＧＢ色ベクトルの角度を記憶部１０２に記録する。
【００４１】
プロセッサ１０１は以上の処理を各学習選手画像２００の各点（各パッチ）について繰り返すことで各点の特徴量を記憶部１０２に記録する。このようにして、（１）学習選手画像２００のうち任意の１点が人体の関節のうちどの関節の周辺に存在するか、（２）学習選手画像２００のうち任意の１点の特徴量はいくつか、という要素が記憶部１０２に記録される。この要素の対を正解データと呼ぶ。
【００４２】
また、プロセッサ１０１は以上の処理を各学習選手画像２００以外であって各学習選手画像２００の周囲のグラウンドの各点についても繰り返すことで各点の特徴量を記憶部１０２に記録する。このようにして（１）学習選手画像２００に含まれない任意の１点であって、（２）当該任意の１点の特徴量はいくつか、という要素が記憶部１０２に記録される。この要素の対を不正解データと呼ぶ。
【００４３】
姿勢推定装置１００のプロセッサ１０１は、このようにして記録された正解データ、不正解データを所定のアルゴリズムに適用することで、スポーツ画像上の未知の点が人体の関節のうちどの関節の周辺に存在するかを判別することができる。具体的にはプロセッサ１０１はスポーツ画像上の未知の点が参照画像情報との関係で所定の特徴量を有すると分かった際に、当該点が関節（頭、胸、腰、膝上、膝下）のうちのどの箇所の周辺にいるか、または関節以外（グラウンドなど）に属するのか、を判別することができる。なぜならばプロセッサ１０１は人体の関節のうちどの関節の周辺に存在する点が参照画像情報との関係でどのような特徴量を持つかを学習しており、更に学習選手画像２００に含まれない任意の１点が参照画像情報との関係でどのような特徴量を持つかを学習したからである。このようにして判別された結果の出力を関節ラベルと呼ぶ。このようにして姿勢推定装置１００のプロセッサ１０１は関節ラベル識別器として振舞うことができる。プロセッサ１０１は、関節ラベル識別器として振舞うことで、画像上の未知の点と参照画像情報が与えられた際に関節ラベルを出力することができる。
【００４４】
プロセッサ１０１は所定のアルゴリズムとして例えば決定木を用いたアルゴリズムを採用することで、判別を行う。特に本実施の形態で述べたようにランダムに選択した要素を用いて決定木を作成するアルゴリズムはＲａｎｄｏｍ−ｆｏｒｅｓｔ法と呼ばれる。また、本実施の形態で述べたように、データ判別のために正解データ、不正解データを用いて学習を行う概念は機械学習と呼ばれる。
【００４５】
本実施の形態ではＲａｎｄｏｍ−ｆｏｒｅｓｔ法を用いることで、関節ラベル識別器を構成した。しかし、姿勢推定装置１００に適用する具体的なアルゴリズムは、Ｒａｎｄｏｍ−ｆｏｒｅｓｔ法に限られない。例えば姿勢推定装置１００に適用する具体的なアルゴリズムは、機械学習に用いられる既知のアルゴリズムから選択することができる。また、姿勢推定装置１００が実際に機械学習を行う必要はない。姿勢推定装置１００のプロセッサ１０１は、他の装置が機械学習を行うことで得られた判別式を利用することで、関節ラベル識別器として振舞うことができる。
【００４６】
［１−２−２−２．関節尤度分布識別器の学習］
姿勢推定装置１００が関節尤度分布識別器として振舞うための機械学習について説明を行う。関節尤度分布識別器の目的は、関節ラベルが付された画像中の１点と、参照姿勢情報を入力として受け取った際に当該関節ラベルが付されたことが正解であることの尤度を出力することである。
【００４７】
プロセッサ１０１は関節ラベル識別器の学習で説明した特徴量を用いて機械学習を行うことで、関節尤度分布識別器として振舞う。プロセッサ１０１は関節ラベル識別器の学習ではＲａｎｄｏｍ−ｆｏｒｅｓｔ法を用いることで機械学習を行ったが、関節尤度分布識別器の学習においてはＲｅｇｒｅｓｓｉｏｎ−ｆｏｒｅｓｔ法を用いることで機械学習を行う。Ｒｅｇｒｅｓｓｉｏｎ−ｆｏｒｅｓｔ法とは、Ｒａｎｄｏｍ−ｆｏｒｅｓｔ法を応用することで得られるアルゴリズムである。Ｒｅｇｒｅｓｓｉｏｎ−ｆｏｒｅｓｔ法は尤度を出力できる点がＲａｎｄｏｍ−ｆｏｒｅｓｔ法と異なる。具体的にはＲａｎｄｏｍ−ｆｏｒｅｓｔ法において特定の関節ラベルならば１、それ以外の部位ならば０というデータを用いて学習を行うことで、Ｒｅｇｒｅｓｓｉｏｎ−ｆｏｒｅｓｔ法を利用することができる。Ｒｅｇｒｅｓｓｉｏｎ−ｆｏｒｅｓｔ法によって機械学習を行ったプロセッサ１０１は関節ラベルが付された画像中の１点に対して０から１の間で尤度を出力することができる（尤度は１に近ければ、付された関節ラベルが正解として確からしいことを示す）。
【００４８】
本実施の形態ではＲｅｇｒｅｓｓｉｏｎ−ｆｏｒｅｓｔ法を用いることで、関節尤度分布識別器を構成した。しかし、姿勢推定装置１００に適用する具体的なアルゴリズムは、Ｒｅｇｒｅｓｓｉｏｎ−ｆｏｒｅｓｔ法に限られない。例えば姿勢推定装置１００に適用する具体的なアルゴリズムは、機械学習に用いられる既知のアルゴリズムから選択することができる。また、姿勢推定装置１００が実際に機械学習を行う必要はない。姿勢推定装置１００のプロセッサ１０１は、他の装置が機械学習を行うことで得られた尤度出力アルゴリズムを利用することで、関節尤度分布識別器として振舞うことができる。
【００４９】
［１−２−３．動作の概要］
図３は実施の形態１における姿勢推定処理を説明するフローチャートである。図３を用いることで、関節ラベル識別器および関節尤度分布識別器として振舞うプロセッサ１０１を有する姿勢推定装置１００が行う姿勢推定処理を説明する。
【００５０】
プロセッサ１０１は、姿勢推定処理を開始する（ステップＳ３００）。プロセッサ１０１は、特定のアプリケーションを実行することで、姿勢推定処理を開始する。プロセッサ１０１は姿勢推定処理を開始すると、姿勢推定用映像のうちの１フレームを表示部１０４に表示する。姿勢推定用映像とはアメリカンフットボールの試合中の映像である。プロセッサ１０１は入力部を介して姿勢推定用映像を受け取って表示部１０４に表示してもよいし、記憶部１０２に記録されている姿勢推定用映像を読み出して表示部１０４に表示してもよい。
【００５１】
プロセッサ１０１は特定選手の参照姿勢情報を受け取る（ステップＳ３１０）。特定選手とはステップＳ３００で表示されたフレーム中の選手である。特定選手は各チームにつき最低一人が特定されることが望ましいが、どちらかのチームの選手の一人のみが特定されてもよい。本実施の形態では参照姿勢情報は相対する２チームのそれぞれの選手一人ずつについて入力される。参照姿勢情報とは特定選手の関節位置を指定する情報である。参照姿勢情報を用いることで姿勢推定処理の基準（ものさし）となる参照姿勢を定義することができる。
【００５２】
図４は実施の形態１における特定選手の参照姿勢情報を説明する図である。
【００５３】
特定選手４００はステップＳ３００で表示部１０４に表示されたフレーム内に存在する選手である（図４では便宜上、フレーム内における特定選手４００の周囲のみを拡大している）。プロセッサ１０１は入力部１０３を介して姿勢推定装置１００のユーザから点４０１〜点４０４の入力を受け付ける。ユーザは例えば入力部１０３としてのマウスやタッチパネルを用いることで点４０１〜４０４の入力を行うことができる。特定選手４００は後述する推定対象選手５００と類似した環境に存在する選手であることが望ましい。具体的には特定選手４００は推定対象選手５００の選手と同一チームであって同一の試合映像から得られた選手であることが望ましい。
【００５４】
点４０１〜点４０４は姿勢推定装置１００のユーザによって入力された情報である。ユーザは特定選手の身体における特定の部位の近傍として点４０１〜点４０４を入力する。点４０１は特定選手の頭を指定するものである。点４０２は特定選手の腰を指定するものである。点４０３は特定選手の膝上を指定するものである。点４０４は特定選手の膝下を指定するものである。
【００５５】
プロセッサ１０１は点４０１〜点４０４が入力されると点４０１〜点４０４に基づいて参照姿勢情報４１１〜参照姿勢情報４１５を算出する。プロセッサ１０１は点４０１の座標を算出することで参照姿勢情報４１１を算出する。プロセッサ１０１は点４０１と点４０２の中間の座標を算出することで参照姿勢情報４１２を算出する。プロセッサ１０１は点４０２の座標を算出することで参照姿勢情報４１３を算出する。プロセッサ１０１は点４０３の座標を算出することで参照姿勢情報４１４を算出する。プロセッサ１０１は点４０４の座標を算出することで参照姿勢情報４１５を算出する。このようにして得られる参照姿勢情報４１１〜参照姿勢情報４１５はそれぞれ特定選手の頭、胸、腰、膝上、膝下という関節位置を指定する情報である。以上のようにしてプロセッサ１０１はユーザの入力に基づいて特定選手の参照姿勢情報を得る。
【００５６】
プロセッサ１０１は特定選手の参照姿勢情報を受け取ると、続いて推定対象選手を特定する（ステップＳ３２０）。推定対象選手とは特定対象選手以外の選手であって、ステップＳ３００で表示されたフレーム中の選手である。
【００５７】
図５は実施の形態１における推定対象選手を特定する概念を示す図である。
【００５８】
推定対象選手５００はステップＳ３００で表示部１０４に表示されたフレーム内に存在する選手であって特定選手４００以外の選手（図５では推定対象選手５００の周囲のみを拡大している）である。プロセッサ１０１は入力部１０３を介して姿勢推定装置１００のユーザから点５０１の入力を受け付ける。なお、特定選手４００と推定対象選手５００とは必ずしも同一のフレーム内に存在する必要はない。
【００５９】
点５０１は姿勢推定装置１００のユーザによって入力された情報である。点５０１は例えば姿勢推定装置１００の入力部１０３としてのマウスやタッチパネルから入力される情報である。ユーザは推定対象選手５００の頭を指定するものとして点５０１を入力する。プロセッサ１０１はユーザから入力された情報である点５０１を認識することで、推定対象選手をフレーム内から切り出す。プロセッサ１０１は推定対象選手をフレーム内から切り出す処理を、点５０１を所定の位置とする矩形領域をフレーム内から切り出すことで行う。プロセッサ１０１はフレーム内から切り出された矩形領域に対してエッジ検出等の処理を行うことで、背景画像と人物画像の領域を分ける。プロセッサ１０１は人物画像として分けられた領域を推定対象選手５００として扱う。なお、ここで推定対象選手５００と、特定選手４００とが同じ画角で撮影されたフレーム内に存在すると矩形領域の切り出しを好適に行うことができる。なぜならば、そのようにするとプロセッサ１０１が、特定選手４００の大きさに基づいて推定対象選手５００の大きさを推定することができるからである。プロセッサ１０１は特定選手４００の参照姿勢情報４１１〜４１５に基づいて特定選手４００の大きさを推定する。プロセッサ１０１が当該推定された大きさに基づいて矩形領域の長辺、短辺の長さを決定することで、適切な範囲に矩形領域を設定することができるので、矩形領域の切り出しを好適に行うことができる。
【００６０】
なお、点５０１は姿勢推定装置１００のユーザによって入力された情報に限られない。点５０１はプロセッサ１０１がフレーム内に存在する人間の頭部又は上半身の形を自律的に検出することで特定されてもよい。プロセッサ１０１は頭検出器又は上半身検出器として振舞うことで、フレーム内に存在する頭部の形を自律的に検出することができる。プロセッサ１０１は機械学習を用いて人間の頭部のパターン又は上半身のパターンを学習することで、頭検出器又は上半身検出器として振舞うことができる。プロセッサ１０１は頭検出器として頭部の形を検出した場合は当該頭部に含まれる任意の点を点５０１に設定する。プロセッサ１０１は上半身検出器として上半身の形を検出した場合は、当該上半身において比較的上部に存在する領域内の任意の点を点５０１に設定する。点５０１がユーザによって入力された場合は、点５０１がプロセッサ１０１によって検出される場合に比べて点５０１の信頼度が高いという利点がある。点５０１がプロセッサ１０１によって検出された場合は点５０１がユーザによって入力され場合に比べてユーザの負担が軽減されるという利点がある。また、プロセッサ１０１は点５０１を自律的に検出した後に、ユーザに対して表示部１０４を介して確認を促してもよい。プロセッサ１０１はユーザに対して確認を促した後に、入力部１０３を介して点５０１の入力を受け付けることで、点５０１の追加および修正を受け付けてもよい。
【００６１】
プロセッサ１０１は推定対象選手５００が特定されると、続いて参照姿勢情報を用いて推定対象選手の姿勢を推定する（ステップＳ３３０）。参照姿勢情報はステップＳ３１０でプロセッサ１０１が得た参照姿勢情報４１１〜参照姿勢情報４１５である。推定対象選手はステップＳ３２０で特定された推定対象選手５００である。なお、本実施の形態のように参照姿勢情報が相対する２チームのそれぞれの選手について入力された場合は推定対象選手と参照姿勢情報の基となった特定選手とのチームを合わせることが望ましい。よって、本実施の形態では入力された参照姿勢情報を用いて、チーム毎に当該チーム内の推定対象選手の姿勢を推定する（説明の簡略化のため本実施の形態では片方のチームのみで姿勢を推定する例を示すが、チームが増えてもプロセッサ１０１が行う処理は特定選手と推定対象選手以外は同様である）。
【００６２】
図６を用いることでステップＳ３３０を詳細に説明する。図６は実施の形態１における参照姿勢情報を用いて推定対象選手の姿勢を推定する処理を説明するフローチャートである。
【００６３】
プロセッサ１０１はステップＳ３３０に処理が進むことで参照姿勢情報を用いて推定対象選手の姿勢を推定する処理を開始する（ステップＳ６００）。
【００６４】
プロセッサ１０１は参照姿勢情報を用いて推定対象選手に関節ラベルを付与する（ステップＳ６１０）。プロセッサ１０１は上述したように関節ラベル識別器として振舞うことができる。関節識別器としてのプロセッサ１０１は画像中の１点と参照姿勢情報を入力として受け取った際に当該１点が人体の関節のうちのどの箇所の周辺に存在するかを出力する。具体的には、関節ラベル識別器の学習の項で説明したように、プロセッサ１０１は推定対象選手５００の任意の１点についてパッチを定義し、（Ａ）頭部からパッチの中心部までの距離、（Ｂ）パッチ内の２点に基づいて計算される特徴量、（Ｃ）パッチ内の１点と参照姿勢情報４１１〜参照姿勢情報４１５との、色に関する情報としての、ＲＧＢ色ベクトルの角度、という３種類の特徴量を計算する。（Ａ）頭部からパッチの中心部までの距離は、関節ラベル識別器の学習の項の説明とは異なり、点５０１の座標を頭部の位置として用いる。（Ｃ）パッチ内の１点と参照姿勢とのＲＧＢ色ベクトルの角度については、学習データの参照姿勢ではなくステップＳ３１０で得た参照姿勢情報を用いる。プロセッサ１０１は以上のように得られた特徴量に基づいて、推定対象選手の各点について関節ラベルを付与する。
【００６５】
図７は実施の形態１における参照姿勢情報を用いて推定対象選手に関節ラベルを付与した概念を表す図である。図７は、図面の簡略化の為、推定対象選手の各点ではなく代表的な点に付された関節ラベル７００のみを示している。図７に示されるように、関節ラベル識別器が頭と判別した箇所には四角のラベルが付されている。その他胸（三角）、腰（丸）、膝上（星）、膝下（十字）も同様である。なお、関節ラベルはあくまで概念上のものであってよく、実際にプロセッサ１０１が表示部１０４上に関節ラベルを表示する必要はない。ただしプロセッサ１０１が表示部１０４上に関節ラベルを表示した場合には、姿勢推定が正常に動作しているか否かがユーザにとって分かりやすいという利点がある。
【００６６】
プロセッサ１０１は推定対象選手に関節ラベルを付与すると、続いて関節ラベル毎に参照姿勢情報を用いて関節尤度を算出する（ステップＳ６２０）。プロセッサ１０１は上述したように関節尤度分布識別器として振舞うことができる。関節尤度分布識別器としてのプロセッサ１０１は関節ラベルが付された画像中の１点と、参照姿勢情報を入力として受け取った際に当該関節ラベルが付されたことが正解であることの尤度を出力する。具体的には、関節尤度分布識別器の学習の項で説明したように、プロセッサ１０１は推定対象選手５００の任意の１点についてパッチを定義し、（Ａ）頭部からパッチの中心部までの距離、（Ｂ）パッチ内の２点に基づいて計算される特徴量、（Ｃ）パッチ内の１点と参照姿勢情報４１１〜参照姿勢情報４１５との、色に関する情報としての、ＲＧＢ色ベクトルの角度、という３種類の特徴量を計算する。（Ａ）頭部からパッチの中心部までの距離は、関節尤度分布識別器の学習の項の説明とは異なり、点５０１の座標を頭部の位置として用いる。（Ｃ）パッチ内の１点と参照姿勢とのＲＧＢ色ベクトルの角度については、学習データの参照姿勢ではなくステップＳ３１０で得た参照姿勢情報を用いる。プロセッサ１０１は以上のように得られた特徴量に基づいて推定対象選手の各点について付された関節ラベルが正解であることの尤度を出力する。
【００６７】
図８は実施の形態１における参照姿勢情報を用いて関節尤度を算出した概念を表す図である。関節尤度分布８１０は胸（三角）の関節ラベルが付与されたことが正解であることの尤度の分布である。関節尤度分布識別器としてのプロセッサ１０１は、胸の関節ラベルが付された箇所について胸の関節ラベルが付与されたことが正解であることの尤度を算出することで関節尤度分布８１０を算出する。関節尤度分布８１０はグレースケールで表現されている。関節尤度分布８１０において尤度の高い箇所は白に近い色で表されている。関節尤度分布８１０において尤度の低い箇所は黒に近い色で表す代わりに、図面の理解を容易にするために、ハッチングで示されている。
【００６８】
関節尤度分布８２０は腰（丸）の関節ラベルが付与されたことが正解であることの尤度の分布である。関節尤度分布８２０において尤度の高い箇所は白に近い色で表されている。関節尤度分布８２０において尤度の低い箇所は黒に近い色で表す代わりに、図面の理解を容易にするために、ハッチングで示されている。
【００６９】
プロセッサ１０１は、同様に、頭（四角）、膝上（星）、膝下（十字）についても関節尤度分布を算出する。なお、関節尤度分布はあくまで概念上のものであってよく、実際にプロセッサ１０１が表示部１０４上に関節尤度分布を表示する必要はない。ただしプロセッサ１０１が表示部１０４上に関節尤度分布を表示した場合には、姿勢推定が正常に動作しているか否かがユーザにとって分かりやすいという利点がある。
【００７０】
プロセッサ１０１は関節尤度を算出すると、続いて関節ラベルの数を適切な数に削減する（ステップＳ６３０）。プロセッサ１０１が関節ラベルの数を適切な数に削減する目的は計算処理の向上のためであって、プロセッサ１０１はステップＳ６３０を行わなくてもよい。プロセッサ１０１は、関節ラベル毎にｋ−Ｍｅａｎｓ法などの既知のクラスタリング手法を用いることで、関節ラベルの数を適切な数に削減する。
【００７１】
プロセッサ１０１は動的計画法を用いて関節ラベルの組を特定する（ステップＳ６４０）。動的計画法とは最適化問題を解くアルゴリズムの一種の総称である。本実施の形態における最適化問題は各関節ラベルから最も確からしい（最適な）組み合わせを選ぶことである。
【００７２】
図９は実施の形態１における動的計画法を用いて関節ラベルの組を特定する概念を説明する為の図である。本実施の形態においては各関節ラベルの対についてコストと呼ばれる関数を３種類定義する。プロセッサ１０１は動的計画法を用いて当該コストの総和を最大化する関節ラベルの組を選ぶ。図９に概念的に示されるように、プロセッサ１０１は各関節ラベルから任意の組み合わせを選ぶと当該組み合わせのコストを計算する（Ｃ１…Ｃｎ）。
【００７３】
本実施の形態においてプロセッサ１０１はコストを（Ｃａ）関節の尤度、（Ｃｂ）関節間距離の尤度、（Ｃｃ）関節間角度の尤度の３種類に定義する。
【００７４】
関節の尤度（Ｃａ）はステップＳ６２０で算出された関節ラベル毎に定義される尤度である。プロセッサ１０１は関節ラベルの組み合わせの一候補として任意の関節ラベル（関節ラベル候補と呼ぶ）を選んだ場合、当該関節ラベルの尤度をコストとして計上する。なお、プロセッサ１０１はステップＳ６３０において関節ラベルの数を削減していた場合は、関節ラベル候補周囲の関節ラベル（ステップＳ６３０で削減された関節ラベルを含む）の尤度の合計をコストとして計上する。このようにすることで、プロセッサ１０１が部位としての確からしさが低い関節ラベルの組み合わせを姿勢として推定する可能性が減少する。
【００７５】
関節間距離の尤度（Ｃｂ）は関節ラベル候補間の距離の尤度である。プロセッサ１０１は、関節ラベル候補間の距離の尤度を事前学習の学習データにおける関節間距離を用いることで得ることができる。具体的にはプロセッサ１０１は、学習データにおける関節間距離の平均および分散を求めることで所定の分布として扱うことを可能とすることで、関節ラベル候補間の距離が与えられた際に尤度を出力することができる。プロセッサ１０１は関節ラベル候補の対毎に関節ラベル候補間の距離の尤度を加算することで、関節ラベルの組のコストを計上する。このようにすることで、プロセッサ１０１が人体の関節間の長さとしては異常に長いまたは短い関節ラベルの組み合わせを姿勢として推定する可能性が減少する。
【００７６】
間接間角度の尤度（Ｃｃ）は関節ラベル候補の角度の尤度である。プロセッサ１０１は、関節ラベル候補間の角度の尤度を事前学習の学習データにおける関節間距離を用いることで得ることができる。具体的にはプロセッサ１０１は、学習データにおける関節間角度の平均および分散を求めることで所定の分布として扱うことを可能とすることで、関節ラベル候補間の角度が与えられた際に尤度を出力することができる。プロセッサ１０１は関節ラベル候補の対毎に関節ラベル候補間の角度の尤度を加算することで、関節ラベルの組のコストを計上する。このようにすることで、プロセッサ１０１が人体の関節間の角度としては異常な方向に曲がっている関節ラベルの組み合わせを姿勢として推定する可能性が減少する。なお、スポーツを行っている人体は関節間の角度が通常の人体と異なる場合が多い。本実施の形態でプロセッサ１０１は学習データを用いることでスポーツを行っている人体特有の関節間角度を学習しているので、通常としては異常な角度であるがスポーツとしては通常の角度であるような関節ラベルの組み合わせを姿勢として推定することができる。
【００７７】
以上に述べたようにプロセッサ１０１は各関節ラベルの組について、関節の尤度（Ｃａ）、関節間距離の尤度（Ｃｂ）、間接間角度の尤度（Ｃｃ）の総和をコストとして計上し、コストが最大の関節ラベルの組み合わせを算出することで、関節ラベルの組を特定する。
【００７８】
プロセッサ１０１は関節ラベルの組が特定されると、特定された関節ラベルの組に基づいて推定対象選手の姿勢を推定する（ステップＳ６５０）。本開示において推定対象選手の姿勢を推定するとはステップＳ６４０においてプロセッサ１０１が行ったような選手の身体の部位の対を少なくとも特定することで足りる。よってステップＳ６５０においてプロセッサ１０１がステップＳ６４０で特定した関節ラベルの組を記憶部１０２に記録することは推定対象選手の姿勢を推定することに含まれる。
【００７９】
プロセッサ１０１が推定対象選手の姿勢を推定すると、姿勢推定処理が終了する（ステップＳ３４０、ステップＳ６６０）。
【００８０】
本実施の形態においてプロセッサ１０１が更にステップＳ６４０で特定した関節ラベルの組に基づいて当該関節ラベルの組に具体的な姿勢の意味づけをする方法を説明する。
【００８１】
図１０は実施の形態１における特定された関節ラベルの組に基づいて推定対象選手の姿勢の意味づけをする概念を説明する図である。プロセッサ１０１は事前に間接間角度と学習データの選手の姿勢の意味づけとの関係を学習することにより、関節ラベルの組が与えられた際に、当該関節ラベルを有する推定対象選手の姿勢の意味づけを出力することができる。関節間角度とは上述した間接間角度の尤度（Ｃｃ）における関節間角度である。姿勢の意味づけとは姿勢の分類のことであり、姿勢の分類とは人間に知覚できる分類としての「しゃがみ」「立ち」「倒れ」などを含む。図１０に示すように、プロセッサ１０１は関節ラベルの組１０１０が与えられると「構え」という分類を出力する。プロセッサ１０１は関節ラベルの組１０２０が与えられると「反り」という分類を出力する。プロセッサ１０１は関節ラベルの組１０３０が与えられると「スクリメージラインの構え」という分類を出力する。姿勢の意味づけは上述のものに限られずスポーツ映像の関するスポーツによって様々なものがある。例えば姿勢の意味づけは、サッカー映像においては「シュート」という分類を含むことが有り得る。
【００８２】
［１−３．効果等］
以上のように、本実施の形態において、姿勢推定装置１００のプロセッサ１０１はスポーツ映像中に存在する選手の姿勢を推定する方法を行う。プロセッサ１０１は、ユーザによって入力された情報に基づいて得られる情報であって、推定対象の試合のスポーツ映像中に存在する特定選手の関節位置を指定する情報である参照姿勢情報を受け取り、参照姿勢情報を用いて、推定対象のスポーツ映像中に存在する特定選手以外の選手である推定対象選手の姿勢を推定する。
【００８３】
これにより、スポーツ映像中の特定選手の情報を用いて特定選手以外の推定対象選手の姿勢を推定することができる。そのため、スポーツ映像中に存在する選手の姿勢を効率よく推定することができる。
【００８４】
また、本実施の形態において、プロセッサ１０１は、参照姿勢情報を用いて、推定対象の試合のスポーツ映像中に存在する推定対象選手の色に関する情報と、特定選手の関節位置の色に関する情報とを用いて特定選手以外の選手の姿勢を推定する。
【００８５】
これにより、スポーツ映像中の特定選手の色に関する情報を頼りに特定選手以外の推定対象選手の姿勢を推定することができる。一般的にスポーツ映像においては選手がルールに則ったユニフォームを着用するため、ある選手と他の選手との色に関する情報が似通うことが多く、その他ユニフォームの形状による光の反射具合も似通うことが多い。そのため、スポーツ映像中に存在する選手の姿勢をより効率よく推定することができる。
【００８６】
また、本実施の形態においてスポーツはチーム対抗スポーツであって、参照姿勢情報は少なくとも相対する２チームそれぞれの選手について入力された情報である。
【００８７】
これにより、スポーツ映像がチーム対抗スポーツに関するものであっても、推定対象選手または特定選手の所属するチームの属性（チーム独自のユニフォーム形状、色、陣地の方向による光の当たり具合）が姿勢推定結果に負のバイアスを与える可能性を低減させることができる。そのため、スポーツ映像中に存在する選手の姿勢をより効率よく推定することができる。
【００８８】
また、本実施の形態においてスポーツは、特定選手と推定対象選手とがチーム毎に規定のユニフォームを着用するスポーツである。これにより、特定選手と推定対象選手とが類似するユニフォームを着用する可能性が高くなるため、特定選手と推定対象選手との光学的な差の要素が姿勢の要素に限定される可能性が高くなる。そのため、スポーツ映像中に存在する選手の姿勢をより効率よく推定することができる。
【００８９】
また、本実施の形態においてプロセッサ１０１は、推定対象選手を、ユーザから入力された情報によって特定する。
【００９０】
これにより、プロセッサ１０１は多数の物体が存在するスポーツ映像中から推定対象の選手を明確に特定することができる。そのため、スポーツ映像中に存在する選手の姿勢をより効率よく推定することができる。
【００９１】
また、本実施の形態のように、ユーザの入力が推定対象選手の特定の部位を指定するものであれば、参照姿勢情報を用いた姿勢推定に特定の部位の情報を用いることができるのでより好ましい。
【００９２】
なお、プロセッサ１０１はユーザの入力によらずに推定対象選手を特定してもよい。たとえば、スポーツ映像の選手が有する特徴量に基づいてスポーツ映像中から自動で推定対象選手を特定してもよい。
【００９３】
また、本実施の形態においてプロセッサ１０１は、チーム毎に入力された参照姿勢情報を用いて、該チーム内の推定対象選手の姿勢を推定する。
【００９４】
これにより、スポーツ映像がチーム対抗スポーツに関するものであっても、推定対象選手または特定選手の所属するチームの属性（チーム独自のユニフォーム形状、色、陣地の方向による光の当たり具合）が姿勢推定結果に正のバイアスを与える可能性を増加させることができる。そのため、スポーツ映像中に存在する選手の姿勢をより効率よく推定することができる。
【００９５】
また、本実施の形態において、特定選手の関節位置を指定する情報は、少なくとも複数箇所の関節について個別になされるユーザの入力に基づいて生成され、推定対象選手を特定する情報は、複数箇所の関節の個数よりも少ない箇所について個別になされるユーザの入力に基づいて生成される。本開示において特定選手は少数となり、推定選手は特定選手以外の選手のため多数となる。よってこのようにすると、小数の選手については比較的多数の入力が必要となるが、多数の選手については比較的少数の入力で姿勢推定を行うことができる。そのため、ユーザが行う合計の入力回数は比較的少数となる。よって、スポーツ映像中に存在する選手の姿勢をより効率よく推定することができる。
【００９６】
（他の実施の形態）
以上のように、本出願において開示する技術の例示として、実施の形態１を説明した。しかしながら、本開示における技術は、これに限定されず、適宜、変更、置き換え、付加、省略などを行った実施の形態にも適用可能である。また、上記実施の形態１で説明した各構成要素を組み合わせて、新たな実施の形態とすることも可能である。
【００９７】
そこで、以下、他の実施の形態を例示する。
【００９８】
実施の形態１ではプロセッサ１０１はステップＳ３３０において、図６に示すように関節ラベル識別器および関節尤度分布識別器を用いて推定対象選手の姿勢を推定した。推定対象選手の姿勢を推定する処理の他の一例を、図１１を用いて説明する。
【００９９】
図１１は他の実施の形態における参照姿勢情報を用いて推定対象選手の姿勢を推定する処理を説明するフローチャートである。
【０１００】
プロセッサ１０１はステップＳ３３０に処理が進むことで参照姿勢情報を用いて推定対象選手の姿勢を推定する処理を開始する（ステップＳ１１００）。
【０１０１】
プロセッサ１０１は参照姿勢情報を用いて推定対象選手の関節ラベル尤度を算出する（ステップ１１１０）。関節ラベル尤度とは、画像上のある１点について定義される尤度であり、当該１点が任意の関節ラベルであることの確からしさを示すものである。実施の形態１においては、プロセッサ１０１は画像上の各点について関節ラベルを付与し、付与した関節ラベルに対応する尤度を出力した。本実施の形態においては、プロセッサ１０１は任意の１点について、任意の１点が関節ラベルの候補（頭、胸、腰、膝上、膝下）のそれぞれに属する尤度を関節ラベル尤度として出力する。プロセッサ１０１は、関節尤度分布識別器を用いることで関節ラベル尤度を出力することができる。本実施の形態においては、関節ラベルの候補それぞれを関節ラベルとして付した画像中の１点と、参照姿勢情報を関節分布識別器に入力として与えることで、プロセッサ１０１は関節ラベル尤度を算出することができる。具体的な出力の例を挙げれば、プロセッサ１０１は推定対象選手５００の１点について（０．８（関節ラベル＝頭の尤度），０．１（関節ラベル＝胸の尤度），０．０５（関節ラベル＝腰の尤度），０．０１（関節ラベル＝膝上の尤度），０．０４（関節ラベル＝膝下の尤度））という形式で関節ラベル尤度を算出する。
【０１０２】
プロセッサ１０１は算出した関節ラベル尤度を参照することで、関節位置候補を求める（ステップＳ１１２０）。関節位置候補とは、画像上の任意の１点について定義される関節ラベルと尤度の対であって、ステップＳ１１１０で付与された関節ラベル尤度のうち、尤度の高い関節ラベル上位２候補および当該上位２候補の関節ラベルに対応する尤度の対である。関節位置候補は同一地点に存在する２つの関節ラベルと言い換えることもできる。上記の例においては（０．８（関節ラベル＝頭の尤度），０．１（関節ラベル＝胸の尤度）が関節位置候補である。関節ラベル尤度に基づいて関節位置候補をこのように求めることで、本実施の形態においては実施の形態１に比べて関節ラベルの数が２倍になる。プロセッサ１０１は付与する関節ラベルの数を増やすことで、実施の形態１に比べて、誤った関節ラベルを付与された場合の誤推定リスクを低減することができる。実施の形態１において、誤った関節ラベルを付与される画素は、複数の関節ラベルに対して確からしい特徴量をもつ画素である。本実施の形態においてプロセッサ１０１は付与する関節ラベルの種類を１つに限定しないため、複数の関節ラベルに対しても確からしい特徴量をもつ画素については、複数の関節ラベルを付与することになる。このようにすると、処理の複雑さは増えるが、実施の形態１においては捨象されていた関節ラベル（および尤度）を姿勢推定処理に用いることができる。
【０１０３】
プロセッサ１０１は関節位置候補を算出すると、続いて関節位置候補を適切な数に削減する（ステップＳ１１３０）。ステップＳ１１３０の概略はステップＳ６３０で述べたので省略する。他の実施の形態においては実施の形態１の関節ラベルに比べて２倍の量の関節位置候補が存在する。よって、関節位置候補の数を適切な数に削減することが望ましい。本実施の形態においては関節位置候補の数を各関節（頭、胸、腰、膝上、膝下）についてｋ個に削減するものとする。
【０１０４】
プロセッサ１０１は、関節位置識別器を用いて関節位置の組を推定する。関節位置識別器とは、所定の機械学習を行ったプロセッサ１０１が振舞うことで実現される識別器のひとつである。機械学習の概要は上述したので省略する。
【０１０５】
関節位置識別器を構成するために用いられる特徴量の説明を行う。関節位置識別器はプロセッサ１０１が大量の正解データ、不正解データについて下記の特徴量Ｖを学習することで構成することができる。
【０１０６】
【数１】
0006589144.tif 000002
【０１０７】
上記数式においてＰは、ｊ種類の各関節（頭、胸、腰、膝上、膝下が１〜ｊに対応する）の関節ラベルが付されたｎ個目（ｎ＝１〜ｋ）の関節位置候補の尤度である。ｘ、ｙはｊ種類の各関節（頭、胸、腰、膝上、膝下が１〜ｊに対応する）の関節ラベルが付されたｎ個目（ｎ＝１〜ｋ）の関節位置候補のｘ座標、ｙ座標である。Ｖは３（Ｐ、ｘ、ｙ）×ｊ×ｋ次元の特徴量である。プロセッサ１０１は大量の正解データ（どのような姿勢をしているかが判明している画像）、不正解データ（ランダムな画像）について上記の特徴量Ｖを学習することで、未知の画像について得られたＶが与えられた際に、未知の画像が特定の姿勢に属する尤度を出力することができる。
【０１０８】
本実施の形態において、プロセッサ１０１はステップＳ１１１０で得られた関節位置候補を用いてＶを算出する。プロセッサ１０１は算出したＶを用いて尤度の高い姿勢を算出することで、その姿勢を推定選手の姿勢と推定する。
【０１０９】
実施の形態１および上記他の実施の形態では色に関する情報の一例としてＲＧＢベクトルを説明した。色に関する情報は、白黒、ＲＧＢを問わず色に関する情報であればよい。したがって、色に関する情報は、ＲＧＢベクトルに限定されない。例えば、ＨＳＶ（Ｈｕｅ  Ｓａｔｕｒａｔｉｏｎ  Ｖａｌｕｅ）色空間ベクトルを色に関する情報として用いてもよい。
【０１１０】
実施の形態１および上記他の実施の形態ではスポーツの一例としてアメリカンフットボールを説明した。スポーツは、姿勢を推定する用途があるものであればよい。ただし、スポーツとしてチーム対抗スポーツに本開示を適用した場合は、上述したように一般的にスポーツ映像においては選手がルールに則ったユニフォームを着用するため、スポーツ映像中に存在する選手の姿勢をより効率よく推定することができるというメリットがある。また、スポーツとして特定選手と推定対象選手とがチーム毎に規定のユニフォームを着用するスポーツに本開示を適用した場合は、上述したように特定選手と推定対象選手との光学的な差の要素が姿勢の要素に限定される可能性が高くなるため、スポーツ映像中に存在する選手の姿勢をより効率よく推定することができる。
【０１１１】
実施の形態１および上記他の実施の形態では、姿勢推定装置１００は尤度に基づいて最終的な姿勢を推定した。ここで、姿勢推定装置１００は最終的に推定した姿勢の尤度が所定の値に満たない場合は表示部１０４に推定の精度が所定の水準に満たない旨を表示させる。このようにすると、姿勢推定装置１００の使用者に、推定の精度の低さを自覚させ、使用者に参照姿勢の再入力や学習用データの再収集を促させることができるという利点がある。
【０１１２】
以上のように、本開示における技術の例示として、実施の形態を説明した。そのために、添付図面および詳細な説明を提供した。
【０１１３】
したがって、添付図面および詳細な説明に記載された構成要素の中には、課題解決のために必須な構成要素だけでなく、上記技術を例示するために、課題解決のためには必須でない構成要素も含まれ得る。そのため、それらの必須ではない構成要素が添付図面や詳細な説明に記載されていることをもって、直ちに、それらの必須ではない構成要素が必須であるとの認定をするべきではない。
【０１１４】
また、上述の実施の形態は、本開示における技術を例示するためのものであるから、請求の範囲またはその均等の範囲において種々の変更、置き換え、付加、省略などを行うことができる。
【産業上の利用可能性】
【０１１５】
本開示は、スポーツ映像中の選手の姿勢を推定する方法または装置に適用可能である。具体的にはスポーツ映像を取り扱うアプリケーションソフトをインストールしたコンピュータに適用可能である。
【符号の説明】
【０１１６】
１００    姿勢推定装置
１０１    プロセッサ
１０２    記憶部
１０３    入力部
１０４    表示部
１０５    バス
２０１    パッチ
２０２    頭部
２０３，２０４，４０１，４０２，４０３，４０４    点
２１０    学習用参照姿勢
２１１，２１２，２１３，２１４，２１５    学習用参照姿勢情報
４００    特定選手
４１１，４１２，４１３，４１４，４１５    参照姿勢情報
５００    推定対象選手
５０１    点
７００    関節ラベル
８１０    関節尤度分布
８２０    関節尤度分布
１０１０，１０２０，１０３０    関節ラベルの組
【図１】
0006589144.tif 000003
【図２】
0006589144.tif 000004
【図３】
0006589144.tif 000005
【図４】
0006589144.tif 000006
【図５】
0006589144.tif 000007
【図６】
0006589144.tif 000008
【図７】
0006589144.tif 000009
【図８】
0006589144.tif 000010
【図９】
0006589144.tif 000011
【図１０】
0006589144.tif 000012
【図１１】
0006589144.tif 000013