(57)【要約】【課題】コントローラに対する操作をさせることなくユーザーの動きを効率的に検出できる頭部装着装置を提供する。【解決手段】ユーザーの頭部に装着される筐体を有し、当該筐体に取り付けられ、互いに異なる画角の画像を撮像する、第１及び第２の撮像手段と、第１の撮像手段により撮像された画像を受け入れて、当該画像から、ユーザーの身体部分に対応する画像部分を検出し、当該検出された画像部分を表す情報に基づいて、第２の撮像手段が撮像する画像内での前記ユーザーの身体の所定部位の存在可能範囲を推定する頭部装着装置である。【選択図】図１
2019113882.tif 000002
【特許請求の範囲】
【請求項１】
ユーザーの頭部に装着される筐体を有し、
当該筐体に取り付けられ、互いに異なる画角の画像を撮像する、第１の撮像手段及び第２の撮像手段と、
前記第１の撮像手段により撮像された画像を受け入れて、当該画像から、ユーザーの身体部分に対応する画像部分を検出する検出手段と、
前記検出された画像部分を表す情報に基づいて、前記第２の撮像手段が撮像する画像内での前記ユーザーの身体の所定部位の存在可能範囲を推定する推定手段と、を含み、
前記第２の撮像手段が撮像する画像の、前記推定された存在可能範囲内から前記ユーザーの身体の所定部位に対応する画像部分を検出する頭部装着装置。
【請求項２】
ユーザーの頭部に装着される筐体を有し、
当該筐体に取り付けられ、互いに異なる画角の画像を撮像する、第１の撮像手段及び第２の撮像手段と、
前記第１の撮像手段により撮像された画像を受け入れて、当該画像から、ユーザーの身体部分に対応する画像部分の時間変化を検出する検出手段と、
前記画像部分の時間変化を表す情報に基づいて、前記第２の撮像手段が撮像する画像内での前記ユーザーの身体の所定部位の存在可能範囲を推定する推定手段と、を含み、
前記第２の撮像手段が撮像する画像の、前記推定された存在可能範囲内から前記ユーザーの身体の所定部位に対応する画像部分を検出する頭部装着装置。
【請求項３】
請求項１または２に記載の頭部装着装置において、
前記検出手段における所定部位の検出方法と、前記第２の撮像手段が撮像した画像から所定部位を検出する際の検出方法とは、互いに異なる検出方法である頭部装着装置。
【請求項４】
ユーザーの頭部に装着される筐体と、当該筐体に取り付けられ、互いに異なる画角の画像を撮像する、第１の撮像手段及び第２の撮像手段と、を有する頭部装着装置と接続されるコンピュータを、
前記第１の撮像手段により撮像された画像を受け入れて、当該画像から、ユーザーの身体部分に対応する画像部分を検出する検出手段と、
前記検出された画像部分を表す情報に基づいて、前記第２の撮像手段が撮像する画像内でのユーザーの身体の所定部位の存在可能範囲を推定する推定手段と、として機能させるプログラム。
【請求項５】
ユーザーの頭部に装着される筐体と、当該筐体に取り付けられ、互いに異なる画角の画像を撮像する、第１の撮像手段及び第２の撮像手段と、を有する頭部装着装置と接続されるコンピュータを、
前記第１の撮像手段により撮像された画像を受け入れて、当該画像から、ユーザーの身体部分に対応する画像部分を検出する検出手段と、
前記検出された画像部分に基づいて、前記第２の撮像手段が撮像する画像内での前記ユーザーの身体の所定部位の存在可能範囲を推定する推定手段と、として機能させるためのプログラムを記憶した、コンピュータ読み取り可能な情報記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザーが頭部に装着して使用する頭部装着装置に関する。
【背景技術】
【０００２】
ヘッドマウントディスプレイやスマートグラスなどと呼ばれる、ユーザーが頭部に装着して使用するタイプの装置（頭部装着装置）が知られている。このような頭部装着装置は、ユーザーの目の前に画像を結像させることで、その画像をユーザーに提示する。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
こうしたヘッドマウントディスプレイ等の頭部装着装置をゲームの映像表示に用いる場合等において、着用したユーザーの手などの動きを検出したい要望があるが、従来、ユーザーの動きは別途コントローラ等からの入力に基づいてしか検出できていなかった。
【０００４】
本発明は上記実情を考慮してなされたものであって、その目的の一つは、コントローラに対する操作をさせることなくユーザーの動きを効率的に検出できる頭部装着装置を提供することにある。
【課題を解決するための手段】
【０００５】
本発明に係る頭部装着装置は、ユーザーの頭部に装着される筐体を有し、当該筐体に取り付けられ、互いに異なる画角の画像を撮像する、第１の撮像手段及び第２の撮像手段と、前記第１の撮像手段により撮像された画像を受け入れて、当該画像から、ユーザーの身体部分に対応する画像部分を検出する検出手段と、前記検出された画像部分を表す情報に基づいて、前記第２の撮像手段が撮像する画像内での前記ユーザーの身体の所定部位の存在可能範囲を推定する推定手段と、を含み、前記第２の撮像手段が撮像する画像の、前記推定された存在可能範囲内から前記ユーザーの身体の所定部位に対応する画像部分を検出することとしたものである。
【図面の簡単な説明】
【０００６】
【図１】本発明の実施の形態に係る映像表示システムの全体概要図である。
【図２】本発明の実施の形態に係る頭部装着装置の機能的構成例を示すブロック図である。
【図３】本発明の実施の形態に係る頭部装着装置における首の方向を検出する動作例を表す説明図である。
【図４】本発明の実施の形態に係る頭部装着装置の第１検出部の機能的構成例を示すブロック図である。
【図５】本発明の実施の形態に係る頭部装着装置の領域検出部の動作例を表すフローチャート図である。
【図６】本発明の実施の形態に係る頭部装着装置の動作概要を示す説明図である。
【発明を実施するための形態】
【０００７】
以下、本発明の実施形態について、図面に基づき詳細に説明する。ここでは本発明の実施の形態に係る頭部装着装置は、ヘッドマウントディスプレイであるものとして説明する。もっとも、本実施の形態の頭部装着装置は、ヘッドマウントディスプレイである必要は必ずしもなく、ヘッドフォンや、ヘッドバンド等、ユーザーの頭部に装着されるものであればいかなるものであってもよい。
【０００８】
図１は、本発明の一実施形態に係る頭部装着装置１０を含む情報処理システム１の全体概要図である。本実施の形態の情報処理システム１は、頭部装着装置１０と、映像供給装置２０と、中継装置３０とを含んで構成されている。
【０００９】
本実施の形態の一例において、頭部装着装置１０は、ユーザーが頭部に装着して使用する映像表示装置であって、後に説明する中継装置３０から入力される映像信号に応じた映像を表示してユーザーに提示する。本実施形態では、頭部装着装置１０は両目での映像の閲覧に対応しており、ユーザーの右目及び左目それぞれの目の前に互いに独立に映像を表示するものとしてもよい。
【００１０】
この頭部装着装置１０は、映像表示ユニット３１、映像表示処理部３２を収納し、ユーザーの頭部に装着される筐体１１と、この筐体１１の前面（装着時にユーザーの視線方向に相当する方向にある面）に取り付けられた前面カメラ１２と、筐体１１の左右側面にそれぞれ取り付けられた検出カメラ１３Ｌ，１３Ｒと、制御部１４と、通信処理部１５とを含む。
【００１１】
映像表示ユニット３１は例えば左目用映像を表示する表示素子と、右目用映像を表示する表示素子とを含む。この表示素子は例えば液晶ディスプレイや、有機ＥＬ表示パネルでよい。ユーザーは、頭部装着装置１０を装着した状態で、左目用映像を左目で、右目用映像を右目で、それぞれ見ることになる。
【００１２】
この映像表示ユニット３１は、映像表示処理部３２から供給される信号に従って左目用の表示素子と、右目用の表示素子とにそれぞれ独立に映像を表示する。
【００１３】
映像表示処理部３２は、通信処理部１５を介して中継装置３０から入力される映像信号に基づいて、映像表示ユニット３１に対して映像の信号を出力する回路を有している。
【００１４】
前面カメラ１２は、頭部装着装置１０の筐体１１前面（装着時にユーザーの視線方向に相当する方向にある面）に配され、ユーザーの前方の画像を撮像し、撮像して得られた画像を制御部１４に出力する。本実施の形態では、この前面カメラ１２が第２の撮像手段を実現する。
【００１５】
検出カメラ１３Ｌ，１３Ｒ（以下、区別の必要がない場合はそれぞれを検出カメラ１３と表記する）は、前面カメラ１２とは異なる画角の映像を撮像する。この検出カメラ１３は、例えば筐体１１の左右側面にそれぞれ取り付けられる。また、これら検出カメラ１３Ｌ，１３Ｒは、被写体までの距離や、被写体表面の法線を検出可能な画像を撮像するため、それぞれ複数（例えば一対）の撮像素子を含んでもよい。この場合、これら複数の撮像素子は互いに距離を置いて配される。検出カメラ１３は、それぞれの撮像素子によりユーザーの側方かつ下方の視野範囲の画像を撮像し、撮像して得られた各画像データを制御部１４に出力する。本実施の形態のある例では、この検出カメラ１３は、撮像と画像データの出力とを、所定のタイミングごとに（例えば定期的に）繰り返し行う。本実施の形態の例では、この検出カメラ１３が本発明の第１の撮像手段を実現する。
【００１６】
制御部１４は、ＣＰＵ等のプログラム制御デバイスと、プログラムを保持する記憶デバイスとを含んで構成される。このプログラムは、コンピュータ可読かつ非一時的な媒体（ＤＶＤ−ＲＯＭ等）に格納されて提供され、この記憶デバイスに格納されたものであってもよい。この制御部１４は、当該プログラムを実行することで、次のように動作する。
【００１７】
制御部１４は、検出カメラ１３により撮像された画像データを受け入れて、当該画像データから、ユーザーの肩や腕など、ユーザーの身体部分に対応する画像部分を検出する。制御部１４は、当該検出された画像部分を表す情報に基づいて、前面カメラ１２が撮像する画像データ内での上記ユーザーの手など、ユーザーの身体の所定部位の存在可能範囲を推定する。
【００１８】
また制御部１４は、上記推定を行うにあたり、検出カメラ１３により撮像された画像データを受け入れて、当該画像データから、ユーザーの手など、ユーザーの身体部分に対応する画像部分の時間変化を検出してもよい。この場合、制御部１４は、当該検出された画像部分の時間変化を特定する情報に基づいて、前面カメラ１２が撮像する画像データ内での上記ユーザーの身体の所定部位の存在可能範囲を推定する。
【００１９】
さらに制御部１４は、前面カメラ１２が撮像する画像データ内で、上記推定された存在可能範囲内から、ユーザーの身体の所定部位に対応する画像部分を検出してもよい。これらの制御部１４の詳しい動作は後に説明する。
【００２０】
通信処理部１５は、中継装置３０との間で種々のデータの通信を行うためのインタフェースである。具体的には頭部装着装置１０は、中継装置３０との間で無線ＬＡＮやＢｌｕｅｔｏｏｔｈ（登録商標）などの無線通信によりデータの送受信を行う。この場合、通信処理部１５は通信用のアンテナ、及び通信モジュールを含み、制御部１４から入力される指示に従って、前方カメラ１２で撮像された画像のデータや、制御部１４が出力するデータ等を中継装置３０宛に送出する。またこの通信処理部１５は中継装置３０から映像信号のデータ等を受信すると、当該データを制御部１４に出力する等の処理を行っている。この例では、制御部１４が、映像表示処理部３２に対して中継装置３０から受信した映像信号を出力することで、映像がユーザーに提示されることとなる。
【００２１】
映像供給装置２０は、頭部装着装置１０がユーザーに提示する映像を供給する情報処理装置であって、例えば家庭用ゲーム機、携帯型ゲーム機、パーソナルコンピューター、スマートフォン、タブレット等であってよい。本実施の形態の一例では、この映像供給装置２０は、中継装置３０を介して頭部装着装置１０からユーザーの身体の第２の部位の位置を特定するデータを受けて、当該データに基づく処理を行う。一例として第２の部位がユーザーの手の位置である場合、映像供給装置２０は、ユーザーの手が頭部装着装置１０に出力している映像のどの部分に対応する位置にあるかを判断し、映像中の物体に触れたかのような映像を生成して頭部装着装置１０に出力するなど、仮想現実を演出する処理等を実行する。
【００２２】
中継装置３０は、映像供給装置２０から供給される映像のデータを受け付けて、受け付けたデータに応じた映像信号を頭部装着装置１０に対して出力する。中継装置３０は、有線又は無線のいずれかにより頭部装着装置１０と接続される。本実施の形態の一例では、この中継装置３０は、映像供給装置２０が供給する映像データを、頭部装着装置１０で表示可能な映像信号に変換して出力するビデオプロセッサを備えており、当該変換後の映像信号を頭部装着装置１０に出力する。また本実施の形態の例に係る中継装置３０は、頭部装着装置１０から受信したデータを映像供給装置２０に出力する。
【００２３】
次に、本実施の形態の頭部装着装置１０の制御部１４による動作について説明する。本実施の形態の一例では、この制御部１４は、機能的には、図２に例示するように、第１検出部４１と、推定部４２と、第２検出部４３とを含んで構成される。
【００２４】
第１検出部４１は、検出カメラ１３により撮像された画像データを受け入れて、当該画像データから、ユーザーの肩や腕、あるいは手など、ユーザーの身体部分に対応する画像部分を検出する。第１検出部４１は、この動作を、検出カメラが画像データを出力するごとに行う。なお、以下の例では説明のため、前面カメラ１２が撮像する画像データからユーザーの身体の所定部位として、ユーザーの手を検出することを目的とする例について述べる。もっとも本実施の形態においてユーザーの身体の所定部位とする部分はユーザーの手だけに限られない。この第１検出部４１の動作例については後に述べる。
【００２５】
本実施の形態の一例では、この第１検出部４１は、頭部装着装置１０の筐体１１の左右方向でそれぞれ撮像された画像データから検出した、手の画像部分の領域を特定する情報（所定部位領域情報）を出力する。この手の画像部分の領域を特定する情報は、検出カメラ１３の画像データ内で手が撮像されている範囲を表す二次元の領域を特定する情報である。
【００２６】
また、検出カメラ１３がそれぞれ複数の撮像素子を備えてなり、被写体までの距離を検出可能である場合、第１検出部４１は、検出カメラ１３の画像データに含まれる各画素について、当該画素に撮像されている対象物までの距離を表す情報（デプス情報）をさらに出力してもよい。このデプス情報は、第１検出部４１が出力する画像データと同じサイズのデータであって、画像データの各画素に対応する位置の値を対応する画素に撮像されている対象物までの距離の値に応じて設定したもの（いわゆるデプス・マップ）として出力されてもよい。
【００２７】
推定部４２は、第１検出部４１により検出された画像部分を表す情報に基づいて、前面カメラ１２が撮像する画像データの座標内で、ユーザーの身体の所定部位であるユーザーの手の存在可能範囲を推定する。
【００２８】
具体的に、この推定部４２は、検出カメラ１３のカメラパラメータを取得する。この検出カメラ１３のカメラパラメータには、前面カメラ１２と検出カメラ１３との相対的位置を表す座標情報、及び前面カメラ１２と検出カメラ１３との視線方向の相対的関係を表すベクトル情報（前面カメラ１２の視線方向ベクトルと、検出カメラ１３の視線方向ベクトルとの差でよい）を含む。
【００２９】
推定部４２は、第１検出部４１から、検出カメラ１３における所定部位領域情報の入力を受ける。そして推定部４２は、当該検出カメラ１３のカメラパラメータを用いて、第１検出部４１から入力された所定部位領域情報（検出カメラ１３の座標系で表されている）を、前面カメラ１２の撮像する画像データの座標系での所定部位領域情報に変換する。ここで、前面カメラ１２の撮像する画像データの座標系は例えば、前面カメラ１２の撮像する画像データの横軸方向をＸ軸、縦軸方向をＹ軸としたＸＹ直交座標系である。また、このような２つのカメラ間での座標系の変換処理は広く知られた方法を採用できるので、ここでの詳しい説明は省略する。
【００３０】
本実施の形態において、前面カメラ１２の撮像する画像データの座標系での所定部位領域情報で表される領域は、必ずしも前面カメラ１２の撮像する画角の範囲に含まれなくてもよい。
【００３１】
また、検出カメラ１３が複数ある場合は、推定部４２は、第１検出部４１から、各検出カメラ１３における所定部位領域情報の入力を受け、各検出カメラ１３のカメラパラメータを用いて、第１検出部４１から入力された所定部位領域情報（各検出カメラ１３の座標系で表されている）を、それぞれ前面カメラ１２の撮像する画像データの座標系での所定部位領域情報に変換する。
【００３２】
一例として、第１検出部４１が、頭部装着装置１０の筐体１１の左右方向に配された検出カメラ１３Ｌ，１３Ｒにてそれぞれ撮像された画像データから検出した、手の画像部分の領域を特定する所定部位領域情報を出力しているとする。なお、ここでの例では、所定部位領域情報は、検出した手の領域に外接する円を表す情報（当該円の検出カメラ１３の撮像した画像データ内での中心座標及び半径）とする。
【００３３】
推定部４２は、各検出カメラ１３Ｌ，１３Ｒの画像データ内から得られたユーザーの手の領域を表す円を表す情報に基づいて、各検出カメラ１３の視線方向を回転対称軸とし、上記円を底面とする切頭円錐（円錐台）形状の三次元領域ＲL，ＲRを仮想的に生成する。なお、第１検出部４１がデプス情報を出力している場合、上記ユーザーの手の領域を表す円までの距離に基づいて、三次元領域ＲL，ＲRを設定してもよい。この場合、三次元領域ＲL，ＲRは、実質的に円盤状の領域となる。
【００３４】
そして推定部４２は、この仮想的に生成した三次元領域ＲL，ＲRが、前面カメラ１２の撮像する画像データの座標内に占める二次元領域ＡL，ＡRを求め、この二次元領域ＡL，ＡRを特定する情報を出力する。この二次元領域の演算は、広く知られたカメラ間での座標系の変換処理により行われる。なお、このとき二次元領域ＡL，ＡRは必ずしも前面カメラ１２の画角内に含まれる必要はない。
【００３５】
第２検出部４３は、推定部４２が出力する二次元領域ＡL，ＡRを特定する情報を参照し、当該情報で特定される二次元領域ＡL，ＡR内から、ユーザーの身体の所定部位であるユーザーの手を検出する。この第２検出部４３による所定部位の検出方法は、第１検出部４１における所定部位の検出方法とは異なるものとしてもよい。一例としては、第２検出部４３は、肌色の領域を検出する方法等、広く知られた手の検出方法を採用してよい。
【００３６】
本実施の形態では、このように推定部４２により推定され、限定された領域から所定部位の検出を試みるので、手など、所定部位の検出効率が向上する。
【００３７】
また、ここまでの説明において推定部４２が出力する情報で特定される二次元領域ＡL，ＡRの少なくとも一方が、前面カメラ１２の画角外にある場合は、第２検出部４３は、画角外にある二次元領域中からの所定部位の検出処理を実行しないようにしてもよい。
【００３８】
第２検出部４３は、前面カメラ１２が撮像する画像データから検出したユーザーの手の範囲を表す情報を、中継装置３０を介して映像供給装置２０へと出力する。
【００３９】
映像供給装置２０は、頭部装着装置１０の位置や向きのデータを取得し、当該取得したデータに基づいて頭部装着装置１０の前面カメラ１２のカメラパラメータ（前面カメラ１２の視線方向ベクトルや画角の情報）を得る。そして当該得られた前面カメラ１２のカメラパラメータと、頭部装着装置１０から入力された、前面カメラ１２の撮像する画像データ内におけるユーザーの手の範囲を表す情報とを用いて、ユーザーの手の三次元的な位置情報を求める。この三次元的な位置情報は、例えばユーザーの頭部を座標の中心として、ユーザーの身体の左右方向（冠状面と横断面とが交差してできる線分の方向）をξ軸、上下方向（冠状面と矢状面とが交差してできる線分の方向）をη軸、奥行方向（矢状面と横断面とが交差してできる線分の方向）をζ軸とした座標系（ワールド座標系）での値として表すことができる。
【００４０】
また本実施の形態のある例では、上記頭部装着装置１０の位置や向きを測定するため、頭部装着装置１０がモーションセンサーを備えて、頭部装着装置１０の位置や向き、動きに関する各種の情報を測定することとしてもよい。このような測定を行うためのモーションセンサーとしては、３軸の加速度センサー、３軸のジャイロスコープ、３軸の地磁気センサー、気圧センサー等を含むものを用いることができる。この測定結果を用いることで、頭部装着装置１０の動きや向きの変化が特定される。すなわち、加速度センサーの検出結果を用いることで、頭部装着装置１０の鉛直方向に対する傾きや平行移動を検出できる。また、ジャイロスコープや地磁気センサーを用いることで、頭部装着装置１０の回転運動を検出してもよい。さらに、気圧センサーを用いることで、頭部装着装置１０の鉛直方向に沿った動きを検出してもよい。
【００４１】
［首の向きの考慮］
また頭部装着装置１０の位置や向きを測定する方法は、モーションセンサーを用いる例に限られない。例えば、図３に例示するように、正中線を軸とした首の回転角を、冠状面Ｃ（左右の肩を結ぶ線分を含む面）に対するユーザーの鼻の方向（まっすぐ前を見ているときの視線方向）の角度θとすると、検出カメラ１３によって撮像された画像データから肩の部分に相当する領域を検出して用いて、この角度θを得ることができる。
【００４２】
具体的に頭部装着装置１０は、検出カメラ１３が撮像した画像データから、ユーザーの身体の第１の部位として肩の画像部分を検出する。そして当該画像部分を楕円フィッティングし、この楕円の長軸方向を冠状面内の直線の方向として、画像データの横軸に対するこの長軸方向のなす角を、正中線を軸とした首の回転角θ（ただし０≦θ≦９０度）とする。
【００４３】
図３では、ユーザーの首が冠状面の法線方向を向いている場合（正面を向いている場合）に回転角が９０度と判断され（Ａ）、ユーザーの首が冠状面に対して角度θだけ傾いているときに、検出カメラ１３の画像データから回転角がθと判断される例（Ｂ）を示している。
【００４４】
なお、首の向きによっては、左右の検出カメラ１３Ｌ，１３Ｒのいずれか一方の視野にはユーザーの肩が含まれない場合があるが、冠状面はユーザーの左右方向に対称であるので、左右の検出カメラ１３Ｌ，１３Ｒのいずれか一方が得た画像データから上記首の回転角θが得られれば、他方の画像データから得られる首の回転角も同じとなる。
【００４５】
頭部装着装置１０は、このように首の回転角θの情報を得て、映像供給装置２０に送出することで、映像供給装置２０が頭部装着装置１０の位置や向きの情報（より具体的には検出カメラ１３の位置の情報）を演算できる。そして映像供給装置２０は、ユーザーの手や腕の位置等、頭部装着装置１０が、検出カメラ１３の画像データに基づいて検出したユーザーの身体の部位の位置の情報を演算できることとなる。
【００４６】
［第１検出部の動作例］
ここで第１検出部４１の動作の例について説明する。この第１検出部４１は、例えば、図４に例示するように特徴量演算部５１と、初期検出部５２と、領域検出部５３と、部位検出部５４と、位置データ生成部５５とを含んで構成される。
【００４７】
特徴量演算部５１は、画像データの入力を受けて、当該画像データの各部分（例えば画像データを構成する各画素）ごとに、所定の特徴量を演算する。本実施の形態の一例では、この特徴量は、上記画像データの部分ごとに、当該部分内に撮像されている対象物と、撮像手段である検出カメラ１３との距離に応じて変化する特徴量である。
【００４８】
この場合、特徴量演算部５１は、例えば検出カメラ１３が出力する各画像データについて、当該画像データと同じサイズのマップ画像データであって、元の画像データ内の各部分に対応する位置の画素の値を、元の画像データ内の当該部分に撮像された対象物までの距離に基づいて定めた、いわゆるデプス・マップを生成して出力するものとする。このような２つ以上の画像データから深度マップを作成する処理の具体的方法は既に知られているので、ここでの詳しい説明を省略する。
【００４９】
初期検出部５２は、検出カメラ１３Ｌ，１３Ｒにてそれぞれ撮像された画像データを受け入れ、各画像データのうちから、ユーザーの身体の第１の部位に対応する第１の画像部分を検出する。具体的に、第１の部位は、検出カメラ１３から最も近いユーザーの身体部分、例えば肩とする。
【００５０】
この例では初期検出部５２は、検出カメラ１３Ｌ，１３Ｒから得られた各画像データを特徴量演算部５１に出力して、検出カメラ１３Ｌ，１３Ｒのそれぞれが撮像した画像データについて、それぞれ対応するデプス・マップデータを得る。
【００５１】
そして初期検出部５２は、当該デプス・マップデータを用いて、検出カメラ１３Ｌ，１３Ｒのそれぞれが撮像した画像データ内で最も近接した位置にある所定形状の部分（肩であれば外接形状が実質的にＵ字状となる舌片状部分）をユーザーの身体の一部を、初期検出部位として検出する。
【００５２】
また初期検出部５２は、検出カメラ１３Ｌ，１３Ｒから得られた各画像データのうち、当該検出した初期検出部位に相当する画素部分を第１の画像部分として、当該第１の画像部分に含まれる画素を特定する情報のセットを出力する。
【００５３】
領域検出部５３は、特徴量演算部５１が出力したデプス・マップを参照して、初期検出部５２が出力した情報で特定される画素を含み、上記所定の特徴量が連続的に変化する領域を特定する。
【００５４】
具体的に領域検出部５３は、図５に例示する処理を実行する。すなわち領域検出部５３は、特徴量演算部５１が出力したデプス・マップ上で、初期検出部５２が出力した情報で特定される画素に対応する部分を注目部分として特定する（Ｓ１１）。領域検出部４３は、この注目部分に含まれる画素の特徴量（ここでは検出カメラ１３からの距離の情報）を参照し、注目部分に隣接する画素のうち、過去に注目部分として特定された部分に含まれた画素ではなく、かつ、当該画素に係る特徴量と注目部分に含まれるいずれかの画素の特徴量との差が予め定めたしきい値を下回る画素を検索する（Ｓ１２）。
【００５５】
領域検出部５３は、処理Ｓ１２における検索により見出された画素があるか否かを調べ（Ｓ１３）、見出された画素があれば（Ｓ１３：Yes）、当該見出された画素（複数ある場合は見出されたすべての画素）からなる部分を注目部分として（Ｓ１４）、処理Ｓ１１に戻って処理を続ける。つまり領域検出部５３は、注目部分に隣接し、特徴量が連続的に変化していると評価できる画素を新たな注目部分として選択する処理を繰り返す。これにより、当初注目部分として選択された画素部分（第１の領域に相当する部分）を含み、特徴量が連続的変化している領域を拡大しつつ特定していく。
【００５６】
また、処理Ｓ１３において、検索の結果、見出された画素がないと判断されると（Ｓ１３：No）、領域検出部５３は、処理Ｓ１１，Ｓ１４にてこれまでに注目部分として選択された画像部分の領域を、特徴量が連続的に変化する領域として特定し、当該特定した領域を表す情報を出力する（Ｓ１５）。ここで領域を表す情報は、領域内に含まれる画素を特定する情報（各画素の座標情報）でよい。
【００５７】
部位検出部５４は、領域検出部５３が出力する情報で特定される領域内の画像部分から、初期検出部位とは異なるユーザーの身体の所定部位に対応する第２の画像部分を検出する。
【００５８】
例えばこの部位検出部５４は、領域検出部５３が出力する情報で特定された領域の長さ方向の端部を、第２の部位に相当する第２の画像部分として検出する。具体的に、部位検出部５４は、領域検出部５３が出力する情報で特定された領域に外接する矩形を検出し、検出した矩形の横軸方向長さと、縦軸方向長さを比較する。部位検出部５４は比較の結果、横軸と縦軸とのうち長い側の軸方向を長手方向として、その両端部（長手方向に直行する辺）のうち、初期検出部５２にて検出した初期検出部位の重心から離れている側の辺上に接する、上記領域内の画素を注目画素として選択する。ここで初期検出部位の重心は初期検出部位に相当する画像部分内の画素群の重心を意味し、具体的には画素群の座標が（ｘi，ｙi）（ｉ＝１，２…，Ｎ）であるときには、その平均Σ（ｘi，ｙi）／Ｎとして求めればよい。
【００５９】
あるいは、部位検出部５４は、領域検出部５３が出力する情報で特定される領域内の画像部分のうち、第１の領域に相当する画像部分の重心から最も遠い位置にある画素を注目画素として選択する。
【００６０】
そして部位検出部５４は、当該注目画素を中心とし、半径を所定の方法で定めた仮想的な円を設定する。ここで半径は、例えば予め定められた半径であってもよいし、デプス・マップの情報から、選択した注目画素の、検出カメラ１３からの距離に応じて定められた半径（例えば検出カメラ１３から遠いほど半径を小さくする）であってもよい。
【００６１】
部位検出部５４は、当該仮想的な円に含まれる画素であって、かつ、領域検出部５３が出力する情報で特定される領域内にある画素を、第２部位に対応する第２の画像部分として検出する。
【００６２】
位置データ生成部５５は、部位検出部５４が検出した第２の画像部分を特定するデータを生成して出力する。具体的にこの位置データ生成部５５は、部位検出部５４が検出した第２の画像部分に含まれる画素群を特定する情報（各画素の座標情報）のセットを出力する。
【００６３】
［肩の検出］
さらに本実施の形態の頭部装着装置１０は、筐体１１の左右にそれぞれ赤外線発光装置や、ＬＥＤフラッシュ等の発光手段を有してもよい。この場合、初期検出部５２は、ユーザーの身体の初期検出部位（ユーザーの肩の位置等）を検出するにあたり、これらを点灯させて検出カメラ１３にて撮像を行ってもよい。
【００６４】
この例では、ユーザーの肩部のように、発光手段に近接しているユーザーの身体の部位が、過露光の状態で（いわゆる白飛びした状態で）撮像される。そこで、初期検出部５２は、検出カメラ１３にて撮像された画像データから過露光の領域を検出することで、ユーザーの身体の初期検出部位に相当する第１の領域を検出してもよい。
【００６５】
さらに本実施の形態において初期検出部５２は、ユーザーの身体の初期検出部位については、毎回、最も近接した部分を検出したり、過露光の部分を検出したりするのではなく、一度検出がなされた後は、検出カメラ１３が撮像した画像データから、その動きを追跡して、初期検出部位が撮像されている第１の領域を特定することとしてもよい。
【００６６】
［第１検出部と推定部との動作の別の例］
また、ここまでの説明においては、制御部１４が推定部４２としての動作する際に、各検出カメラ１３Ｌ，１３Ｒの画像データ内で特定されたユーザーの手の領域を表す円を表す情報に基づいて三次元領域ＲL，ＲRを仮想的に生成していたが、ユーザーの手が必ずしも検出カメラ１３の画角内にあるとは限られない。
【００６７】
このように、ユーザーの手が検出カメラ１３の撮像した画像データに含まれない場合を考慮して、第１検出部４１と推定部４２とは、次のように動作してもよい。
【００６８】
すなわち第１検出部４１は、検出カメラ１３により撮像された画像データを受け入れて、当該画像データから、ユーザーの腕部を検出する。第１検出部４１は、この動作を、検出カメラが画像データを出力するごとに行う。具体的には、第１検出部４１は、領域検出部５３の動作において注目部分に隣接し、注目部分に含まれるいずれかの画素と特徴量の差が所定値を下回る画素（複数あってよい）を選択したとき、その時点で注目部分となっている画素群の重心と、新たに選択した画素群の重心とを結ぶ線分の方向を表す情報を演算する。
【００６９】
第１検出部４１は、当初は（第１の部位に相当する領域が注目部分となっている段階では）、演算した線分の方向を表す情報を記録するとともに、ラベル情報を発行する（ここではラベル情報を所定の初期値、例えば数値の「１」とする）。そして第１検出部４１は、新たに選択した画素群を特定する情報を、当該ラベル情報に関連付けて記憶する。
【００７０】
以下、第１検出部４１は、上記線分の方向を表す情報を演算するごとに、前回記録した情報と、当該演算した情報とを比較し、その差（これらはベクトルであるので各線分の方向の交差角度を差として、内積を各ベクトルの大きさの積で除して求めればよい）が予め定めた角度しきい値を下回る場合には、今回演算した情報を記録するとともに、前回発行したラベル情報に関連付けられた情報に追加して、今回新たに選択した画素群を特定する情報を記憶していく。
【００７１】
また、上記差が予め定めた角度しきい値を上回る場合は、第１検出部４１は、今回演算した、線分の方向を表す情報を記録するとともに、新たなラベル情報を発行し（例えばその時点でのラベル情報である数値を「１」だけインクリメントして新たなラベル情報とする）、当該発行したラベル情報に関連付けて今回新たに選択した画素群を特定する情報を記憶する。
【００７２】
この処理を、画素が選択されなくなるまで繰り返すことで、第１検出部４１は、特徴量が連続的に変化する領域を特定するとともに、当該領域内で直線的に変化する部位ごとにラベリングを施すことができる。この例では、ユーザーが肘や手首を曲げていない場合は腕部として手を含む腕全体の部位に相当する画素にラベルを付することができ、また、ユーザーが肘や手首を曲げていれば、上腕、下腕等のそれぞれの部位に相当する画素に互いに異なるラベルが付されることとなる。
【００７３】
推定部４２は、この場合、第１検出部４１にて検出された腕部（上腕・下腕にそれぞれ互いに異なるラベルが付されている場合は下腕の領域、そうでない場合は腕全体の領域）の末端側近傍の予め定めた三次元領域を手があるべき領域として設定する。具体的に推定部４２は、腕部の末端側に接し（あるいは末端部分を内包し）、所定半径を有する仮想的な球状領域Ｓを手があるべき三次元領域として生成する。ここで所定半径は、予め定めた一定の値としてもよいし、検出した腕部末端の画素に対応するデプス・マップ上の画素の値（検出カメラ１３から腕部末端までの距離に応じて変化する）に基づいて定めてもよい。一例としてデプス・マップから得られる、検出カメラ１３から腕部末端までの距離が大きくなるほど、小さくなる半径としてもよい。
【００７４】
そして推定部４２は、この仮想的に生成した三次元領域が、前面カメラ１２の撮像する画像データの座標内に占める二次元領域ＡL，ＡRを求め、この二次元領域ＡL，ＡRを特定する情報を出力する。この二次元領域の演算は、広く知られたカメラ間での座標系の変換処理により行われる。なお、このとき二次元領域ＡL，ＡRは必ずしも前面カメラ１２の画角内に含まれる必要はない。
【００７５】
この例によると、検出カメラ１３の画角内に手が撮像されていない場合や、腕の方向により手が腕によって隠蔽されている場合であっても、腕が撮像されていれば手の範囲を推定できる。
【００７６】
また腕部を特定する方法は、以上の例に限られるものではなく、次のようにしてもよい。すなわち、制御部１４が首の回転角θを、肩の画像から検出している場合、一般に冠状面はユーザーの左右方向に対称であるので、左右の検出カメラ１３Ｌ，１３Ｒのいずれか一方が得た画像データから上記首の回転角θが得られれば、他方の画像データから得られるべき首の回転角も同じとなる。そこで、推定部４２は、各検出カメラ１３Ｌ，１３Ｒのカメラパラメータと、一方の検出カメラ１３（ここでは一例として検出カメラ１３Ｌとする）にて検出された左肩が撮像された領域を特定する情報と、首の回転角θとに基づいて他方の検出カメラ１３Ｒの撮像する画像データの座標系で、右肩があるべき領域を特定する情報（検出カメラ１３Ｒのその時点での画角内に右肩が撮像されているか否かは問われない）を得る。そしてこの場合、右手の存在可能な範囲は右肩を中心として、腕の長さを半径とする仮想的な球内（あるいは肩関節・肘関節の、ゲーム等で用いられる一般的な姿勢における可動範囲を考慮して、冠状面で球を切って身体の前面側だけとった半球内としてもよい）であるので、この仮想的な球（ないし半球）を仮想的な三次元領域として、当該仮想的な三次元領域が前面カメラ１２の撮像する画像データの座標内に占める二次元領域ＡL，ＡRを求め、この二次元領域ＡL，ＡRを特定する情報を出力することとしてもよい。
【００７７】
さらに、この例において、他方側の検出カメラ１３Ｒに腕や肩が写り込んでいるか否かにより、さらに仮想的な三次元領域の形状を変更してもよい。具体的には、他方側の検出カメラ１３Ｒに腕や肩が写り込んでいる場合には、当該検出カメラ１３Ｒよりも上部に右腕の肘関節があり、右手首があると推定される。そこで推定部４２は、右肩を中心として、腕の長さを半径とする仮想的な球（あるいはそのうち冠状面で切った身体の前面側だけの半球）を、さらに検出カメラ１３Ｒの位置より上方の部分（上方部分領域と呼ぶ）と下方の部分（下方部分領域と呼ぶ）とに分割し、検出カメラ１３Ｒに腕や肩が写り込んでいる場合には、分割して得た部分のうち、下方部分領域を、仮想的な三次元領域として、当該仮想的な三次元領域が前面カメラ１２の撮像する画像データの座標内に占める二次元領域ＡL，ＡRを求め、この二次元領域ＡL，ＡRを特定する情報を出力する。
【００７８】
また推定部４２は、検出カメラ１３Ｒに腕や肩が写り込んでいない場合には、分割して得た部分のうち、上方部分領域を、仮想的な三次元領域として、当該仮想的な三次元領域が前面カメラ１２の撮像する画像データの座標内に占める二次元領域ＡL，ＡRを求め、この二次元領域ＡL，ＡRを特定する情報を出力する。
【００７９】
［時間的変化］
また推定部４２は、第１検出部４１からユーザーの所定部位の検出結果の情報を逐次的に受け入れて、受け入れた各情報に基づいて逐次的に、前面カメラ１２の撮像する画像データの座標内において所定部位が占める二次元領域を求める。そして推定部４２は、この二次元領域の時間変化を表す情報を得る。具体的にここで時間変化を表す情報は、逐次的に求めた二次元領域に対してオプティカルフロー等の広く知られた処理を適用することで得られる。
【００８０】
推定部４２は、求められた二次元領域の情報と、その時間変換の情報とに基づいて、将来の所定時点（例えば前面カメラ１２のフレームレートで数フレームだけ後の時点）における二次元領域の情報を推定する。この推定は、移動体の将来位置を推定する、広く知られた方法を用いて行うことができるので、ここでの詳しい説明は省略する。推定部４２は、ここで得られた将来の所定時点における二次元領域の推定結果を表す情報を出力する。
【００８１】
第２検出部４３は、推定部４２が推定して得た、将来の所定時点における二次元領域の情報に基づいて、当該情報で特定される二次元領域内から、ユーザーの身体の所定部位であるユーザーの手を検出する。この例では、現在、手があるとされる領域が、前面カメラ１２の画角外であっても、将来の所定の時点で画角内に移動するのであれば、当該移動後の範囲からユーザーの手などの所定部位の検出を試みる。これより、前面カメラ１２の画角内に所定部位が移動して写り込んだときに、その写り込み始めの位置を予め推定しているので、前面カメラ１２が撮像した画像データ中における所定部位の位置を迅速に特定可能となる。
【００８２】
［動作例］
本実施の形態の一例に係る頭部装着装置１０は、上記の構成を備えており、次のように動作する。頭部装着装置１０は、所定のタイミングごと（例えば定期的）に、検出カメラ１３により頭部装着装置１０を装着しているユーザーの側方から、下方向の映像を、複数の撮像素子により撮像する。
【００８３】
頭部装着装置１０は、得られた画像データの各画素ごとに、当該画素に撮像されている対象物と、検出カメラ１３との距離を表す情報を、特徴量として演算し、デプス・マップを生成する。そして頭部装着装置１０は、当該画像データとデプス・マップとを用いて、画像データ内からユーザーの手の存在する画像部分を検出する。
【００８４】
頭部装着装置１０は、検出された画像部分を表す情報に基づいて、前面カメラ１２が撮像する画像データの座標内で、ユーザーの身体の所定部位であるユーザーの手の存在可能範囲を推定する。
【００８５】
そして頭部装着装置１０は、ここで推定された手の存在可能範囲を表す情報を参照し、前面カメラ１２が撮像する画像データ中の当該情報で特定される二次元領域内から、ユーザーの身体の所定部位であるユーザーの手を検出する。頭部装着装置１０は、前面カメラ１２が撮像する画像データと、当該画像データから検出したユーザーの手の範囲を表す情報とを中継装置３０を介して映像供給装置２０へと出力する。
【００８６】
具体的にユーザーが図６（Ａ）に例示する姿勢をとっている場合（コンピュータのキーボードを触っているような姿勢の場合）、検出カメラ１３Ｌの視野範囲Ｘに撮像される画像データは、図６（Ｘ）に例示するような状態となる。
【００８７】
頭部装着装置１０は、この画像データからデプス・マップ等を用いて腕の画像部分を検出し、その端部から手の画像部分（Ｃ）を検出する。そして頭部装着装置１０は、検出カメラ１３Ｌが撮像した画像データ上の画像部分（Ｃ）を、前面カメラ１２の座標での画像部分（Ｃ′）に変換する。頭部装着装置１０は、前面カメラ１２が撮像する画像データのうち、この画像部分（Ｃ′）内からユーザーの手の検出を試みることとなる。
【００８８】
また、ユーザーが図６（Ｂ）に例示する姿勢をとっている場合（右手で弓を握って身体の前へ突き出している姿勢の場合）であって、左腕がユーザーの身体の後方へ伸ばされているとき（Ｉ）と、弓の弦を引くために前方へ伸ばされているとき（ＩＩ）との頭部装着装置１０の動作例について説明する。
【００８９】
まず、左腕がユーザーの身体の後方へ伸ばされているとき（Ｉ）には、検出カメラ１３Ｌが出力する画像データＸ（Ｉ）には、肩Ｒのみが撮像された状態となっている。ここで頭部装着装置１０は例えば、肩Ｒの画像部分への楕円フィッティングとその長軸方向の検出とを行って、首の回転角（左右の肩を結ぶ線と、頭部中心と鼻を結ぶ線との相対的角度）θを求める。ここで図６Ｘ（Ｉ）で示す角度θが鈍角であることから、頭部装着装置１０は、左腕がユーザーの身体の後方へ向けられている（手が前方にはない）として、検出カメラ１３Ｌが出力する画像データＸ（Ｉ）における手の画像部分の検出を行わない。つまり、この図６（Ｂ）の（Ｉ）の例では、検出カメラ１３Ｌが出力する画像データＸ（Ｉ）からユーザーの手の画像部分が検出されない。
【００９０】
この場合頭部装着装置１０は、検出カメラ１３Ｌが出力する画像データＸ（Ｉ）から検出したユーザーの手の画像部分に対応する、前面カメラ１２の座標での画像部分が得られないので、検出カメラ１３Ｌ側のユーザーの手（左手）の検出を行わない（図６Ｙ（Ｉ））。
【００９１】
また、ユーザーの左腕が弓の弦を引くために前方へ伸ばされているとき（ＩＩ）には、検出カメラ１３Ｌが出力する画像データＸ（ＩＩ）には、腕が写り込むので、腕の端部から手の画像部分（Ｃ）を検出する。そして頭部装着装置１０は、検出カメラ１３Ｌが撮像した画像データ上の画像部分（Ｃ）を、前面カメラ１２の座標での画像部分（Ｃ′）に変換する。頭部装着装置１０は、前面カメラ１２が撮像する画像データのうち、この画像部分（Ｃ′）内からユーザーの手の検出を試みることとなる（図６Ｙ（ＩＩ））。
【００９２】
映像供給装置２０は、頭部装着装置１０の前面カメラ１２が撮像した画像データと、この画像データから検出した、手の画像部分を特定する情報との入力を受けるとともに、頭部装着装置１０の位置や向きのデータを別途得て、これらのデータからユーザーの手の位置を三次元的な位置情報を求める。この三次元的な位置情報は、例えばユーザーの頭部を座標の中心として、ユーザーの身体の左右方向（冠状面と横断面とが交差してできる線分の方向）をＸ軸、上下方向（冠状面と矢状面とが交差してできる線分の方向）をＹ軸、奥行方向（矢状面と横断面とが交差してできる線分の方向）をＺ軸とした座標系での値として表すことができる。
【００９３】
この映像供給装置２０での処理は、頭部装着装置１０が備える前面カメラ１２のカメラパラメータと、頭部装着装置１０の位置や向きのデータとに基づき、カメラ座標系からワールド座標系への変換を行う広く知られた処理を用いて行うことができる。
【００９４】
［変形例］
ここまでの説明では、制御部１４の特徴量演算部５１が演算する特徴量が、検出カメラ１３から撮像された対象までの距離を表すものとしていたが、本実施の形態はこれに限られない。例えば、特徴量は、画像部分に撮像された対象物の法線方向を表す情報であってもよい。この場合、頭部装着装置１０の筐体１１に例えばモアレ法を用いるもの等、構造光を投影する装置（不図示）を設け、検出カメラ１３にて画像データを撮像する際に、ユーザーの身体に構造光を投影して撮像を行うようにしてもよい。構造光を投影する手段を備えれば、法線方向の情報は構造光投影法による三次元計測の方法で取得できる。また法線方向の情報は、これ以外の広く知られた三次元計測の方法で取得してもよい。
【００９５】
このように法線の情報を用いる場合も、検出カメラ１３からの距離を用いる方法と同様に、肩が検出できれば、肩から上腕、下腕、手までは法線方向が連続的に変化している（互いに隣接する画素において計測された法線方向の情報の差が所定のしきい値を下回る）こととなるため、法線方向が連続する領域を検出することで、検出カメラ１３が撮像した画像データにおいて手が撮像されている範囲を検出できる。
【００９６】
またこのように法線方向が連続する領域を検出することとすれば、手が机等の面に置かれていた場合にも、手の側面の法線と机等の面の法線とが連続しないこととなるため、手の領域を面と区別して検出できる。
【００９７】
［カメラの配置］
また本実施の形態のここまでの例では、検出カメラ１３は、筐体１１の左右側方に配されることとしていたが、ユーザーの肩等、第１の部位に相当する箇所が撮像できれば、この配置は必ずしも筐体１１の左右側方でなくてもよい。例えば、検出カメラ１３Ｌは、筐体１１の下部の左端側に配されてもよい。また、検出カメラ１３Ｒは、筐体１１下部の右端側に配されてもよい。
【００９８】
本実施の形態によると、検出カメラ１３によって撮像された画像データに基づいてユーザーの手の位置等を特定するので、コントローラに対する操作をさせることなくユーザーの動きを検出できる。
【符号の説明】
【００９９】
１  情報処理システム、１０  頭部装着装置、１１  筐体、１２  前面カメラ、１３  検出カメラ、１４  制御部、１５  通信処理部、２０  映像供給装置、３０  中継装置、３１  映像表示ユニット、３２  映像表示処理部、４１  第１検出部、４２  推定部、４３  第２検出部、５１  特徴量演算部、５２  初期検出部、５３  領域検出部、５４  部位検出部、５５  位置データ生成部。
【図１】
2019113882.tif 000003
【図２】
2019113882.tif 000004
【図３】
2019113882.tif 000005
【図４】
2019113882.tif 000006
【図５】
2019113882.tif 000007
【図６】
2019113882.tif 000008