(57)【要約】【課題】関節位置の推定時間を短縮することが可能な関節位置推定装置を提供する。【解決手段】関節位置推定装置は、動画像取得部と、動画像に基づいて、画像内で人を含む人候補領域を検出する人候補領域検出部と、人候補領域検出部により検出された人候補領域に基づいて前記人の関節位置を推定する関節位置推定部と、関節位置推定部により推定された関節位置と、人候補領域検出部により検出された人候補領域とに基づいて、画像内における人候補領域の占有率が最適であるか否かについて判定する人候補領域判定部と、人候補領域判定部により人候補領域の占有率が最適でないと判定された場合、人候補領域のサイズを変更する人候補領域サイズ変更部と、人候補領域サイズ変更部により人候補領域のサイズが変更された場合、サイズが変更された後の人候補領域に対して、人の関節位置を再び推定する再帰関節位置推定部と、を備える。【選択図】図１
2018057596.tif 000002
【特許請求の範囲】
【請求項１】
動画像を取得する動画像取得部と、
前記動画像取得部により取得された前記動画像に基づく画像内で人を含む人候補領域を検出する人候補領域検出部と、
前記人候補領域検出部により検出された前記人候補領域に基づいて前記人の関節位置を推定する関節位置推定部と、
前記関節位置推定部により推定された関節位置と、前記人候補領域検出部により検出された前記人候補領域とに基づいて、前記画像内における前記人候補領域の占有率が最適であるか否かについて判定する人候補領域判定部と、
前記人候補領域判定部により前記人候補領域の占有率が最適でないと判定された場合、前記人候補領域のサイズを変更する人候補領域サイズ変更部と、
前記人候補領域サイズ変更部により前記人候補領域のサイズが変更された場合、サイズが変更された後の前記人候補領域に対して、前記人の前記関節位置を再び推定する再帰関節位置推定部と、
を備える関節位置推定装置。
【請求項２】
前記人候補領域判定部は、前記再帰関節位置推定部により推定された前記関節位置と、前記人候補領域サイズ変更部により変更された前記人候補領域とに基づいて、前記画像内における前記人候補領域の占有率が最適であるか否かを判定する、
請求項１に記載の関節位置推定装置。
【請求項３】
前記再帰関節位置推定部は、前記人候補領域判定部により前記人候補領域の占有率が最適と判定されるまで、前記人候補領域サイズ変更部によりサイズが変更された人候補領域における前記人の前記関節位置の推定を繰り返し行う、
請求項２に記載の関節位置推定装置。
【請求項４】
前記人候補領域サイズ変更部は、前記人候補領域判定部により前記人候補領域の画像サイズが小さいために前記人候補領域の占有率が最適でないと判定された場合、前記人候補領域の画像サイズを所定画像サイズになるように大きくする一方、前記人候補領域判定部により前記人候補領域の画像サイズが大きいために前記人候補領域の占有率が最適でないと判定された場合、前記人候補領域の画像サイズを所定画像サイズになるように小さくする、
請求項１〜３の何れか１項に記載の関節位置推定装置。
【請求項５】
前記人候補領域サイズ変更部は、前記人候補領域判定部により判定された後の前記関節位置に基づいて前記人候補領域のサイズを変更する、
請求項４に記載の関節位置推定装置。
【請求項６】
前記人候補領域サイズ変更部は、過去の前記画像から得られたサイズに基づいて、前記人候補領域のサイズを変更する、
請求項１〜５の何れか１項に記載の関節位置推定装置。
【請求項７】
前記関節位置推定部は、複数の前記関節位置を推定し、
前記人候補領域の占有率は、前記画像の大きさと、複数の関節位置間の距離との比である、
請求項１〜６の何れか１項に記載の関節位置推定装置。
【請求項８】
前記関節位置推定部は、前記複数の関節位置間の距離における水平成分および垂直成分のそれぞれを１つ以上算出し、
前記人候補領域の占有率は、前記画像の水平方向の長さと、前記関節位置推定部により推定された前記複数の関節位置間の距離の水平成分との比、および、前記画像の垂直方向の長さと、前記複数の関節位置間の距離の垂直成分との比である、
請求項７に記載の関節位置推定装置。
【請求項９】
前記複数の関節位置間の距離は、前記関節位置推定部により推定された前記関節位置に対し、部位としての関連性がある関節位置間の距離であり、
前記関連性がある関節位置間の距離は、左右における一方側の下肢、大腿、下腿、上肢、前腕および上腕の少なくとも１つである、
請求項７または請求項８に記載の関節位置推定装置。
【請求項１０】
前記複数の関節位置間の距離は、前記関節位置推定部により推定された前記関節位置に対し、左右対象となる関節位置間の距離であり、
前記左右対称となる関節位置間は、左右の手首の間、左右の肘の間、左右の肩の間、左右の足首の間、左右の膝の間および左右の腰の間の少なくとも１つである、
請求項７または請求項８に記載の関節位置推定装置。
【請求項１１】
前記複数の関節位置間の距離は、前記関節位置推定部により推定された前記関節位置に対し、頭頂部から末端関節位置までの距離であり、
前記末端関節位置は、左右の手首、左右の足首、左右の手首の中点、および左右の足首の中点の少なくとも１つである、
請求項７または請求項８に記載の関節位置推定装置。
【請求項１２】
前記関節位置推定部は、推定した複数の前記関節位置のうち、前記画像上において隠れていない前記関節位置を、隠れている前記関節位置よりも優先して選択して前記複数の関節位置間の距離を算出する、
請求項７〜１１の何れか１項に記載の関節位置推定装置。
【請求項１３】
前記関節位置推定部は、複数の前記関節位置を推定し、
前記人候補領域判定部は、複数の前記関節位置に基づいて前記人に対応する外接矩形を形成し、
前記人候補領域の占有率は、前記画像の面積と、前記外接矩形の面積との比である、
請求項１〜６の何れか１項に記載の関節位置推定装置。
【請求項１４】
前記関節位置推定部は、複数の前記関節位置を推定し、
前記人候補領域判定部は、複数の前記関節位置に基づいて前記人に対応する外接矩形を形成し、
前記人候補領域の占有率は、前記画像のアスペクト比を基準に、前記外接矩形のアスペクト比を正規化した結果である、
請求項１〜６の何れか１項に記載の関節位置推定装置。
【請求項１５】
前記人候補領域判定部は、前記人候補領域の占有率と閾値とを比較することにより、前記人候補領域の占有率が最適であるか否かを判定する、
請求項１〜１４の何れか１項に記載の関節位置推定装置。
【請求項１６】
前記人候補領域判定部は、前記関節位置の尤度を算出し、算出した前記尤度に基づいて前記人候補領域の占有率が最適であるか否かについて判定する、
請求項１〜６の何れか１項に記載の関節位置推定装置。
【請求項１７】
前記人候補領域判定部は、予め記憶した人形状モデルと、前記関節位置とに基づいて、前記人候補領域の占有率が最適であるか否かについて判定する、
請求項１〜６の何れか１項に記載の関節位置推定装置。
【請求項１８】
関節位置推定装置の関節位置推定プログラムにおいて、
コンピューターに、
動画像を取得する動画像取得処理と、
取得した前記動画像に基づく画像内で人を含む人候補領域を検出する人候補領域検出処理と、
検出した前記人候補領域に基づいて前記人の関節位置を推定する関節位置推定処理と、
推定した関節位置と、検出した前記人候補領域とに基づいて、前記画像内における前記人候補領域の占有率が最適であるか否かについて判定する人候補領域判定処理と、
前記人候補領域の占有率が最適でないと判定した場合、前記人候補領域のサイズを変更する人候補領域サイズ変更処理と、
前記人候補領域のサイズが変更された場合、サイズが変更された後の前記人候補領域に対して、前記人の前記関節位置を再び推定する再帰関節位置推定処理と、
を実行させる関節位置推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、関節位置推定装置および関節位置推定プログラムに関する。
【背景技術】
【０００２】
従来、取得した画像から人の行動を認識する技術が知られている。人の行動を認識する対象としては、例えば、高齢者介護見守りの現場において、高齢者の生活状況や自己を認識する仕組みを考慮すると、高齢者やその介助者が挙げられる。具体的には、人の行動を認識する対象としては、例えば、高齢者の場合、就寝、起床、離床、座る、しゃがむ、歩行、食事、トイレ、外出、ものを取る、等のような日常生活における基本的な行動や、転倒、転落等の事故時に起こる行動が挙げられる。
【０００３】
これらの行動のうち、多くの行動は人の姿勢の変化を捉えることで認識することが可能である。例えば、就寝の行動としては、人がベッドに歩いて近づき、一旦座ってから横たわることが考えられる。この際においては、立位、座位、臥位の順に人の姿勢が変動する。このような行動を認識するためには、正確な姿勢を認識することが重要である。
【０００４】
行動を認識する技術の一例としては、取得した画像から人の関節位置を推定する技術が考えられる。当該技術においては、推定した関節位置の関係から人の姿勢を推定し、推定した人の姿勢及び位置の変化から人の行動を認識する。
【０００５】
例えば、非特許文献１には、ニュートラルネットワークを用いたディープラーニングによる機械学習を行うことにより人の姿勢を推定する技術が開示されている。具体的に非特許文献１に記載の技術では、以下のようにして人の姿勢を推定する。
【０００６】
まず、人の領域が含まれる画像を取得して、当該画像から人の関節位置を推定する。人の関節位置を推定すると、推定した各関節位置の周辺を元の画像から再取得し、再取得後の画像を用いて再度、関節位置を推定する。そして、さらに詳細に関節位置の推定を繰り返し行っていく。このような推定を関節位置毎に行うことにより、関節位置の推定が位置ずれしても、その位置ずれを吸収し、高精度な関節位置の推定を行うことが可能となる。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】Alexander Toshev and Christian Szegedy, "DeepPose:Human Pose Estimation via Deep Neural Netwworks",in CVPR,2014.
【非特許文献２】Graves, Alan, Abdel-rahman Mohamed, and Geoffrey Hinton. "Speech recognition with deep recurrent neural networks." Acoustics, Speech and Signal Processing (ICASSP), 2013 IEEE International Conference on. IEEE, 2013.
【非特許文献３】Hochreiter, Sepp, and Jurgen Schmidhuber. "Long short-term memory." Neural computation 9.8 (1997): 1735-1780.
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、非特許文献１に記載の技術では、関節位置毎に当該関節位置の周辺を元の画像から再取得し、再取得後の画像を用いて再度、関節位置を推定する処理を繰り返し行う必要があるため、関節位置の推定時間が増大してしまうという問題があった。
【０００９】
本発明の目的は、関節位置の推定時間を短縮することが可能な関節位置推定装置および関節位置推定プログラムを提供することである。
【課題を解決するための手段】
【００１０】
本発明に係る関節位置推定装置は、
動画像を取得する動画像取得部と、
前記動画像取得部により取得された前記動画像に基づく画像内で人を含む人候補領域を検出する人候補領域検出部と、
前記人候補領域検出部により検出された前記人候補領域に基づいて前記人の関節位置を推定する関節位置推定部と、
前記関節位置推定部により推定された関節位置と、前記人候補領域検出部により検出された前記人候補領域とに基づいて、前記画像内における前記人候補領域の占有率が最適であるか否かについて判定する人候補領域判定部と、
前記人候補領域判定部により前記人候補領域の占有率が最適でないと判定された場合、前記人候補領域のサイズを変更する人候補領域サイズ変更部と、
前記人候補領域サイズ変更部により前記人候補領域のサイズが変更された場合、サイズが変更された後の前記人候補領域に対して、前記人の前記関節位置を再び推定する再帰関節位置推定部と、
を備える。
【００１１】
本発明に係る関節位置推定プログラムは、
関節位置推定装置の関節位置推定プログラムにおいて、
コンピューターに、
動画像を取得する動画像取得処理と、
取得した前記動画像に基づく画像内で人を含む人候補領域を検出する人候補領域検出処理と、
検出した前記人候補領域に基づいて前記人の関節位置を推定する関節位置推定処理と、
推定した関節位置と、検出した前記人候補領域とに基づいて、前記画像内における前記人候補領域の占有率が最適であるか否かについて判定する人候補領域判定処理と、
前記人候補領域の占有率が最適でないと判定した場合、前記人候補領域のサイズを変更する人候補領域サイズ変更処理と、
前記人候補領域のサイズが変更された場合、サイズが変更された後の前記人候補領域に対して、前記人の前記関節位置を再び推定する再帰関節位置推定処理と、
を実行させる関節位置推定プログラム。
【発明の効果】
【００１２】
本発明によれば、関節位置の推定時間を短縮することができる。
【図面の簡単な説明】
【００１３】
【図１】関節位置推定装置が含まれる行動認識システムを示す図である。
【図２】画像内における人候補領域を示す図である。
【図３】人候補領域のサイズ変更を説明するための図である。
【図４】行動認識システムにおける関節位置推定制御の動作例の一例を示すフローチャートである。
【図５】画像内において外接矩形が形成されたときを示す図である。
【図６】外接矩形の変形例を示す図である。
【図７】外接矩形の変形例を示す図である。
【発明を実施するための形態】
【００１４】
以下、本実施の形態を図面に基づいて詳細に説明する。図１は、関節位置推定装置１２０が含まれる行動認識システム１００を示す図である。
【００１５】
図１に示すように、行動認識システム１００は、入力された画像データから人の関節位置を推定することで人の行動を認識するシステムであり、撮像部１１０と、関節位置推定装置１２０と、行動認識部１３０とを備えている。
【００１６】
撮像部１１０は、例えば一般的なカメラや広角カメラであり、行動認識システム１００が設けられる部屋内における動画像を撮像する。撮像部１１０は、行動認識システム１００が設けられる部屋内の適宜な位置に設置される。なお、撮像部１１０は、設置位置の規定は特にないが、行動認識システム１００により人の行動の学習を行うときと、実際に人の行動を認識するときとで、見え方が同じになるように設置される。
【００１７】
関節位置推定装置１２０は、入力された画像データを学習することにより、人の関節位置を推定する装置であり、動画像取得部１２１と、人候補領域検出部１２２と、関節位置推定部１２３と、人候補領域判定部１２４と、人候補領域サイズ変更部１２５と、再帰関節位置推定部１２６とを有している。
【００１８】
動画像取得部１２１は、撮像部１１０から動画像を取得する部分であり、取得した動画像の情報を人候補領域検出部１２２に出力する。動画像取得部１２１が取得する動画像のうち、１フレーム分に相当する画像は、例えば図２に示す画像１２１Ａのような画像である。なお、本実施の形態では、動画像取得部１２１と撮像部１１０が別体であるが、動画像取得部１２１が撮像部１１０の機能を有していても良い。
【００１９】
図１および図２に示すように、人候補領域検出部１２２は、動画像取得部１２１から取得した動画像情報を画像処理して、画像処理後の画像内において人を含む人候補領域１２２Ａ（図２参照）を検出する。人候補領域検出部１２２は、検出した人候補領域の情報を関節位置推定部１２３に出力する。
【００２０】
人候補領域１２２Ａの検出方法としては、例えば、前後のフレーム間の差分を抽出するフレーム間差分や、予め用意しておいた、撮像部１１０による撮像領域の背景画像との差を抽出する背景差分等を用いることができる。また、人候補領域１２２Ａの検出方法としては、予め正解人領域を学習させた辞書を作成し、その辞書を基に人候補領域を見つける機械学習を用いても良い。機械学習としては、例えばランダムフォレスト（Random Forest）又はＳＶＭ（サポートベクターマシン）を用いた人検出や、ディープラーニング（Deep Learning）を用いた一般物体認識（例えば、Faster R-CNN）等が挙げられる。人候補領域検出部１２２は、動画像取得部１２１により取得された動画像から、例えば画像１２１Ａにおける差分画像を検出し、当該差分画像から人候補領域１２２Ａを検出する（図２参照）。図２に示す人候補領域１２２Ａ内の人は手前側を向いている。
【００２１】
関節位置推定部１２３は、取得した人候補領域内の人の関節位置を推定する部分である。具体的には、関節位置推定部１２３は、予め人の関節位置の学習を行い、その学習結果、つまり、各関節位置０〜ｎ−１の特徴量を特徴量列１２３Ｂとして記憶部１２３Ａ等に記憶する。なお、ｎは自然数であり、推定する関節位置の数に応じて変動する。本実施の形態では、推定する関節位置の数が１４個であるので、ｎは１４となる。また、ｎは、実施の形態に応じて適宜変更しても良い。
【００２２】
関節位置推定部１２３は、記憶部１２３Ａに記憶された特徴量列１２３Ｂと、取得した人候補領域の情報とに基づいて人の関節位置を推定し、関節位置の情報を人候補領域判定部１２４に出力する。
【００２３】
具体的には、図２に示すように、関節位置推定部１２３は、人候補領域検出部１２２により検出された人候補領域１２２Ａから、複数の関節位置を推定する。図２に示す例では、関節位置推定部１２３は、関節位置０（右足首）、関節位置１（右膝）、関節位置２（右腰）、関節位置３（左腰）、関節位置４（左膝）、関節位置５（左足首）、関節位置６（右手首）、関節位置７（右肘）、関節位置８（右肩）、関節位置９（左肩）、関節位置１０（左肘）、関節位置１１（左手首）、関節位置１２（首）、関節位置１３（頭頂部）を推定する。
【００２４】
関節位置推定部１２３による学習としては、ニュートラルネットワーク（Neutral Network）を用いた、人工知能技術の総称であるディープラーニング（Deep Learning）が用いられる。
【００２５】
ところで、関節位置推定部１２３により人の関節位置の学習をするときにおいて差分画像を切り出した際、前後のフレームで人以外の物体を抽出した場合、差分画像が人に相当する部分よりも大幅に大きくなる。また、その場で人が静止していたりする場合、前後のフレームでの差分が少なくなるので、差分画像が小さくなる。このように差分画像の大きさに差が出る可能性があるため、差分画像の大きさの変動に応じて、関節位置推定部１２３による学習を行うことが望ましいが、全ての状況を把握した上で学習することは困難である。また、人を検出する際には、学習時に与えた正解人矩形と同じ縦横比、サイズとなるように検出するが、人ぎりぎりのサイズで学習する場合、人が正解人矩形からはみ出てしまい、また、人に対して大きめのサイズで学習する場合、人に対して正解人矩形が大きくなってしまう。
【００２６】
そこで、本実施の形態では、図２に二点鎖線で示す矩形枠１２３Ｃにより、関節位置推定部１２３による学習を行う。この矩形枠１２３Ｃのサイズとなった場合、関節位置推定部１２３は最も関節位置の推定精度が高くなるようにして学習を行う。
【００２７】
矩形枠１２３Ｃは、例えばユーザーが手入力することにより決定されるが、学習する際の人の姿勢によりアスペクト比（横の長さ：縦の長さ）が異なるようにして決定される。例えば、人の姿勢が立位の場合、アスペクト比が１：０．６となるように矩形枠１２３Ｃが決定され、人の姿勢が座位の場合、アスペクト比が１：０．８となるように矩形枠１２３Ｃが決定される。
【００２８】
図１および図２に示すように、人候補領域判定部１２４は、関節位置推定部１２３により推定された関節位置と、人候補領域検出部１２２により検出された人候補領域１２２Ａの情報とに基づいて、画像１２１Ａ内における人候補領域１２２Ａの占有率が最適であるか否かを判定する。
【００２９】
画像１２１Ａ内における人候補領域１２２Ａの占有率は、例えば画像１２１Ａの大きさと、各関節位置間の距離との比である。具体的には、画像１２１Ａ内における人候補領域１２２Ａの占有率は、画像１２１Ａの水平方向の長さＷと、各関節位置間の距離の水平成分との比、および、画像１２１Ａの垂直方向の長さＨと、各関節位置間の距離の垂直成分との比である。
【００３０】
各関節位置間の距離は、例えば、頭頂部に相当する関節位置１３から、末端関節位置までの距離である。末端関節位置は、例えば、左右の何れか一方の手首（関節位置６または関節位置１１）、左右の何れか一方の足首（関節位置０または関節位置５）、左右の手首の中点（関節位置６と関節位置１１との間の中点）、および、左右の足首の中点（関節位置０と関節位置５との間の中点）の少なくとも１つである。
【００３１】
例えば、末端関節位置が右手首に相当する関節位置６である場合、人候補領域判定部１２４は、関節位置１３と関節位置６との距離における水平成分Ｄ１および垂直成分Ｄ２のそれぞれを算出する。
【００３２】
なお、人候補領域判定部１２４は、関節位置６以外の末端関節位置と、関節位置１３との距離における水平成分および垂直成分のそれぞれについても算出しても良い。つまり、人候補領域判定部１２４は、末端関節位置と関節位置１３との距離における水平成分および垂直成分のそれぞれを１つ以上算出しても良い。
【００３３】
人候補領域判定部１２４は、水平成分Ｄ１および垂直成分Ｄ２を算出したら、水平方向の占有率Ｏ１であるＤ１／Ｗ、および、垂直方向の占有率Ｏ２であるＤ２／Ｈを算出する。人候補領域判定部１２４は、算出した占有率Ｏ１，Ｏ２と、閾値を比較することにより人候補領域１２２Ａの占有率Ｏ１，Ｏ２が最適であるか否かを判定する。
【００３４】
閾値は、関節位置を学習したときの人候補領域のサイズにより適宜な値に設定して良い。また、閾値は、占有率Ｏ１，Ｏ２のそれぞれにおいて設定される。
【００３５】
人候補領域判定部１２４は、人候補領域１２２Ａのサイズの占有率Ｏ１，Ｏ２が最適な場合、その判定結果を行動認識部１３０に出力する一方、人候補領域１２２Ａのサイズの占有率Ｏ１，Ｏ２が最適でない場合、その判定結果を人候補領域サイズ変更部１２５に出力する。
【００３６】
また、人候補領域判定部１２４は、関節位置推定部１２３により推定された複数の関節位置のうち、画像１２１Ａ上において隠れていない関節位置を優先して選択して関節位置間距離を算出する。関節位置間距離を算出するにあたっては、遮蔽されることにより画像１２１Ａ上に写っていない状態となっている関節位置については、正確に関節位置間距離を算出できず、関節位置の推定精度が低下してしまうためである。関節位置が隠れているか否かの判定は、例えば各関節位置間を結んだ位置間の重なりの程度によって行うことができる。
【００３７】
人候補領域サイズ変更部１２５は、人候補領域判定部１２４による判定結果に基づいて、人候補領域１２２Ａのサイズを変更するか否かを決定する。人候補領域サイズ変更部１２５は、人候補領域１２２Ａのサイズを変更する場合、人候補領域判定部１２４により判定された後の関節位置に基づいて人候補領域１２２Ａのサイズを変更する。その際、人候補領域サイズ変更部１２５は、水平方向および垂直方向において別々にサイズの変更を行う。
【００３８】
具体的には、人候補領域サイズ変更部１２５は、人候補領域判定部１２４により人候補領域のサイズが小さいと判定された場合、人候補領域のサイズが所定サイズになるように大きくする。人候補領域サイズ変更部１２５は、人候補領域判定部１２４により人候補領域のサイズが大きいと判定された場合、人候補領域のサイズが所定サイズになるように小さくする。
【００３９】
所定サイズは関節位置推定部１２３における学習結果に応じて予め決められたサイズである。また、所定サイズは、水平方向および垂直方向の比率により立位・座位を判定し、姿勢に応じて学習時の縦横比となるようなサイズと共通比率になるようなサイズであっても良い。
【００４０】
人候補領域サイズ変更部１２５は、人候補領域のサイズを変更した場合、その変更結果を再帰関節位置推定部１２６に出力する。
【００４１】
人候補領域サイズ変更部１２５によるサイズ変更の一例について説明する。例えば、図３Ａに示すように、人候補領域検出部１２２により検出された人候補領域１２２Ａに基づいて、関節位置推定部１２３により各関節位置（黒のドット）が推定される。図３Ａでは、占有率Ｏ１，Ｏ２がともに閾値より大きく、人候補領域のサイズが大きいと判定される例を示している。
【００４２】
この場合において、人候補領域判定部１２４は、人候補領域１２２Ａのサイズが大きいと判定する。そのため、人候補領域サイズ変更部１２５は、所定サイズである変更後の人候補領域１２２Ｂになるように人候補領域１２２Ａのサイズを小さくする。関節位置推定部１２３により推定される関節位置は、人候補領域検出部１２２により検出された人候補領域１２２Ａを基準に推定されるため、人候補領域１２２Ａが当該領域に含まれる人に対して最適なサイズでない場合、関節位置の推定を正確に行うことができない。
【００４３】
しかし、本実施の形態では、人候補領域サイズ変更部１２５により推定された関節位置にとって最適なサイズになるように人候補領域が変更されるので、後述する再帰関節位置推定部１２６による推定処理により、関節位置を正確に推定することができる。
【００４４】
再帰関節位置推定部１２６は、人候補領域サイズ変更部１２５により人候補領域のサイズの変更結果を取得し、変更された人候補領域に含まれる人に対して再び関節位置の推定を行う。そして、再帰関節位置推定部１２６は、関節位置の推定結果を人候補領域判定部１２４に出力する。関節位置の推定方法は、関節位置推定部１２３における関節位置の推定方法と同様である。
【００４５】
人候補領域判定部１２４は、再帰関節位置推定部１２６により再び推定された関節位置に基づいて、再び水平方向の占有率Ｏ１と、垂直方向の占有率Ｏ２とを算出する。そして、人候補領域判定部１２４は、再び算出した占有率Ｏ１，Ｏ２と、所定の閾値を比較することにより人候補領域１２２Ａの占有率Ｏ１，Ｏ２が最適であるか否かを判定する。そして、人候補領域判定部１２４により、人候補領域１２２Ａの占有率Ｏ１，Ｏ２が最適でないと判定された場合、再び人候補領域サイズ変更部１２５により、人候補領域１２２Ａのサイズが変更される。人候補領域１２２Ａのサイズが変更されると、再帰関節位置推定部１２６により、サイズが変更された人候補領域１２２Ａから再び関節位置が推定される。
【００４６】
つまり、再帰関節位置推定部１２６は、人候補領域判定部１２４により人候補領域の占有率Ｏ１，Ｏ２が最適と判定されるまで、人候補領域サイズ変更部１２５によりサイズが変更された人候補領域における人の関節位置の推定を繰り返し行う。言い換えると、関節位置推定装置１２０は、人候補領域１２２Ａの占有率Ｏ１，Ｏ２が最適となるまで、人候補領域判定部１２４、人候補領域サイズ変更部１２５および再帰関節位置推定部１２６による一連の処理を繰り返す。
【００４７】
例えば、図３Ｂにおいて、人候補領域１２２Ｂのサイズを小さくし過ぎてしまった場合、再び人候補領域サイズ変更部１２５により人候補領域１２２Ｂのサイズが大きくなるように変更され、再帰関節位置推定部１２６による関節位置推定が行われるような処理が、人候補領域が最適となるまで繰り返される。
【００４８】
行動認識部１３０は、関節位置推定装置１２０により学習された結果を時系列で記憶部１３０Ａに記憶しており、記憶部１３０Ａに記憶されたデータに基づいて人の行動を認識する。記憶部１３０Ａには、人の特徴量が時系列で記憶された特徴量列１３０Ｂが記憶されている。特徴量列１３０Ｂには、人の行動の特徴量がｍ枚のフレームのそれぞれに記憶されている。なお、ｍは、自然数であり、フレームの数に応じて変動する。
【００４９】
特徴量は、学習、認識対象のフレームを起点として過去１０フレーム分の特徴量がまとめて与えられるような固定長の値か、過去の情報から切れ目なく全フレーム分の値が与えられても良い。また、特徴量は、同じ行動が連続したフレームは常に同じ行動をしているとして、学習・認識対象のフレームの行動を起点とした所定の行動数Ｎ分のフレームの値が与えられても良い。
【００５０】
特徴量を用いてどのように行動を認識するかについては、例えば、機械学習手法の一種である、リカレントニュートラルネットワーク（Recurrent Neutral Network、非特許文献２参照）にロングショートタームメモリー（Long-Short Term Memory、非特許文献３参照）を組み合わせて用いることで人の行動を認識する。
【００５１】
従来、ディープラーニングによる機械学習を行うことにより人の姿勢を推定する技術としては例えば、非特許文献１に記載の技術が知られている。非特許文献１に記載の技術では、以下のようにして人の姿勢を推定する。
【００５２】
まず、人の領域が含まれた画像を取得して、当該画像から人の関節位置を推定する。人の関節位置を推定すると、推定した各関節位置の周辺を元の画像から再取得し、再取得後の画像を用いて再度、関節位置を推定する。そして、さらに詳細に関節位置の推定を繰り返し行っていく。このような推定を関節位置毎に行うことにより、関節位置の推定が位置ずれしても、その位置ずれを吸収し、高精度な関節位置の推定を行うことが可能となる。
【００５３】
しかしながら、非特許文献１に記載の技術では、関節位置毎に詳細に位置推定を行うので、処理時間がかかり過ぎてしまうおそれがあった。例えば、１４個の関節位置を推定した場合、１４個の関節位置のそれぞれにおいて詳細な推定を行うことから、リアルタイムで行動を認識する場合のアルゴリズムとして好ましくない。
【００５４】
それに対して、本実施の形態では、人候補領域が最適でないと判断した場合、人候補領域サイズ変更部１２５により、推定した関節位置に応じて人候補領域のサイズを変更し、変更した人候補領域にて再び関節位置を推定する。この推定においては、関節位置毎に詳細な推定を行わず、比較的精度の粗い推定を行う。そして、人候補領域のサイズを変更し、再び関節位置を推定する場合でも精度の粗い推定しか行わない。すなわち、本実施の形態では、精度の粗い推定、つまり、汎用的な関節位置の推定しか行わないので、１フレームにつき各関節位置において詳細な推定を行う従来の構成と比較して、関節位置の推定時間を大幅に短縮することができる。
【００５５】
また、推定した関節位置に応じて人候補領域のサイズを最適なサイズになるように変更するので、汎用的な関節位置の推定のみであっても、比較的精度の高い推定を実現することができる。
【００５６】
以上のように構成された行動認識システム１００における関節位置推定制御の動作の一例について説明する。図４は、行動認識システム１００における関節位置推定制御の動作例の一例を示すフローチャートである。図４における処理は、行動認識システム１００における行動認識をする際において適宜実行される。また、図４における処理は、関節位置の学習が既に行われた後の処理を示している。
【００５７】
図４に示すように、まず、動画像取得部１２１は、動画像を取得する（ステップＳ１０１）。次に、人候補領域検出部１２２は、動画像における差分画像から人候補領域を検出する（ステップＳ１０２）。
【００５８】
次に、関節位置推定部１２３は、ステップＳ１０２により検出された人候補領域から関節位置を推定する（ステップＳ１０３）。次に、人候補領域判定部１２４は、関節位置の推定結果と、関節位置が推定された人候補領域とに基づいて人候補領域が最適であるか否かについて判定する（ステップＳ１０４）。
【００５９】
判定の結果、人候補領域が最適でないと判定された場合（ステップＳ１０４、ＮＯ）、人候補領域サイズ変更部１２５は、人候補領域のサイズを変更する（ステップＳ１０５）。次に、再帰関節位置推定部１２６は、変更した人候補領域から再び関節位置を推定する（ステップＳ１０６）。その後、処理はステップＳ１０４の処理に戻る。
【００６０】
ステップＳ１０４の判定に戻って、人候補領域が最適であると判定された場合（ステップＳ１０４、ＹＥＳ）、行動認識部１３０は、動画像に含まれる人の行動を認識する（ステップＳ１０７）。その後、本制御は終了する。
【００６１】
以上のように構成された本実施の形態によれば、関節位置の推定において、精度の粗い推定しか行わないので、１フレームに付き各関節位置において詳細な推定を行う構成と比較して、大幅に処理時間を短縮することができる。
【００６２】
また、推定した関節位置に応じて人候補領域のサイズを最適なサイズになるように変更するので、汎用的な関節位置の推定のみで、比較的精度の高い関節位置の推定を実現することができる。
【００６３】
また、再帰関節位置推定部１２６により、人候補領域の占有率が最適となるまで、繰り返し関節位置を推定するので、関節位置の推定の精度を高めることができる。
【００６４】
また、人候補領域サイズ変更部１２５により、人候補領域を最適なサイズに変更するので、関節位置の推定の精度を高めることができる。
【００６５】
また、関節位置の推定における処理時間を短縮することができるので、リアルタイムで人の行動を認識するためのアルゴリズムに本実施の形態に係る関節位置推定を適用することができ、ひいては精度の高い行動認識の実施を行うことができる。
【００６６】
なお、上記実施の形態では、各関節位置間の距離を、頭頂部に相当する関節位置１３から、末端関節位置までの距離としていたが、本発明はこれに限定されない。例えば、各関節位置間の距離を、部位として関連性がある関節位置間の距離としても良い。
【００６７】
具体的には、左右における一方側の下肢（右足首０と右腰２との距離、又は、左足首５と左腰３との距離）、大腿（右膝１と右腰２との距離、又は、左膝４と左腰３との距離）、下腿（右足首０と右膝１との距離、又は、左足首５と左膝４との距離）、上肢（右手首６と右肩８との距離、又は、左手首１１と左肩９との距離）、前腕（右手首６と右肘７との距離、又は、左手首１１と左肘１０との距離）、および、上腕（右肘７と右肩８との距離、又は、左肘１０と左肩９との距離）の少なくとも１つを、関連性がある関節位置間の距離とすることができる（図２参照）。
【００６８】
また、各関節位置間の距離を、左右対称となる関節位置間の距離としても良い。具体的には、左右の手首の間の距離、左右の手首の間の距離、左右の肘の間の距離、左右の肩の間の距離、左右の足首の間の距離、左右の膝の間の距離、および、左右の腰の間の距離の少なくとも１つを、左右対称となる関節位置間の距離とすることができる。
【００６９】
また、上記実施の形態では、画像内における人候補領域の占有率を画像の水平方向の長さと、各関節位置間の距離の水平成分との比、および、画像の垂直方向の長さと、各関節位置間の距離の垂直成分との比としていたが、本発明はこれに限定されない。例えば、画像内における人候補領域の占有率を、人候補領域内における人に対応する部分の外接矩形と、画像の面積との比としても良い。
【００７０】
具体的に、図５に示すように、外接矩形１２２Ｃは、推定された間接位置における最も上に位置する上関節位置Ｃ１と、最も右に位置する右関節位置Ｃ２と、最も下に位置する下関節位置Ｃ３と、最も左に位置する左関節位置Ｃ４とを通る矩形である。外接矩形１２２Ｃは、人の姿勢に関わらず、検出された上関節位置Ｃ１、右関節位置Ｃ２、下関節位置Ｃ３および左関節位置Ｃ４に基づいた矩形となる。例えば、図５の例では、頭頂部が上関節位置Ｃ１に該当し、左手首が右関節位置Ｃ２に該当し、左足首が下関節位置Ｃ３に該当し、右手首が左関節位置Ｃ４に該当する。
【００７１】
また、図６の例では、頭頂部が上関節位置Ｃ１に該当し、左手首が右関節位置Ｃ２に該当し、左足首が下関節位置Ｃ３に該当し、右足首が左関節位置Ｃ４に該当する。また、図７の例では、右手首が上関節位置Ｃ１に該当し、頭頂部が右関節位置Ｃ２に該当し、左手首が下関節位置Ｃ３に該当し、右足首が左関節位置Ｃ４に該当する。
【００７２】
なお、図５〜７に示す外接矩形１２２Ｃは、各関節位置Ｃ１，Ｃ２，Ｃ３，Ｃ４を通っていたが、各関節位置Ｃ１，Ｃ２，Ｃ３，Ｃ４よりも外側に位置するようにしても良い。また、外接矩形１２２Ｃは、予め決められた関節位置（例えば頭頂部、左右の手首の何れか、左右の足首の何れか等）に基づいた矩形であっても良い。
【００７３】
また、外接矩形１２２Ｃを決定する際、推定された関節位置に対して、人の姿勢認識を行い、認識した姿勢により外接矩形１２２Ｃに用いる関節位置を指定しても良い。人の姿勢認識としては、例えば、予め決められた姿勢モデルと各関節位置との距離が最小となるものをその姿勢とする方法、姿勢を特徴量として学習し、当該学習結果を用いて姿勢認識する方法、単純な関節位置の関係性を用いて姿勢認識する方法などが挙げられる。
【００７４】
外接矩形１２２Ｃを用いた人候補領域の判定は、例えば、画像１２１Ａの面積Ｓ１と、外接矩形１２２Ｃの面積Ｓ２との比であるＳ２／Ｓ１を人候補領域の占有率として行うことができる。また、画像１２１Ａのアスペクト比ＡＳ１と、外接矩形１２２Ｃのアスペクト比ＡＳ２との比であるＡＳ２／ＡＳ１を人候補領域の占有率として行っても良い。また、ＡＳ２／ＡＳ１を、外接矩形１２２Ｃの面積Ｓ２および画像１２１Ａの面積Ｓ１を考慮して、正規化した結果である（ＡＳ２／ＡＳ１）×（Ｓ２／Ｓ１）を占有率としても良い。
【００７５】
また、外接矩形１２２Ｃを用いた人候補領域の判定は、上記実施の形態と同様に算出した占有率と閾値とを比較することにより行う。このように人候補領域の占有率を算出することによっても、関節位置推定を行うことができる。
【００７６】
また、人候補領域の占有率は、推定された関節位置の尤度としても良い。尤度の推定は、最尤推定など、一般的な推定方法により行えば良い。例えば、入力される画像のサイズおよびアスペクト比に基づいて推定される関節位置の矩形の尤度を推定し、当該尤度に対して閾値の比較を行う。これによっても、関節位置推定を行うことができる。
【００７７】
また、人候補領域の占有率は、予め記憶された人形状モデルと、関節位置とに基づいて算出した人らしさ度としても良い。人形状モデルは、入力画像のサイズおよび位置に関連付けられており、各関節位置との距離の差のそれぞれの総和又は平均値により人らしさ度が算出される。
【００７８】
また、上記実施の形態では、人候補領域サイズ変更部１２５が、人候補領域判定部１２４により判定された後の関節位置に基づいて人候補領域のサイズを変更していたが、本発明はこれに限定されない。例えば、人候補領域サイズ変更部１２５は、過去の画像から得られたサイズに基づいて、人候補領域のサイズを変更するようにしても良い。
【００７９】
その他、上記実施の形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【００８０】
１２０  関節位置推定装置
１２１  動画像取得部
１２２  人候補領域検出部
１２３  関節位置推定部
１２４  人候補領域判定部
１２５  人候補領域サイズ変更部
１２６  再帰関節位置推定部
【図１】
2018057596.tif 000003
【図２】
2018057596.tif 000004
【図３】
2018057596.tif 000005
【図４】
2018057596.tif 000006
【図５】
2018057596.tif 000007
【図６】
2018057596.tif 000008
【図７】
2018057596.tif 000009