以下、本発明の複数の実施形態について、図面を参照して説明する。
[第1実施形態]
図1は、第1実施形態に係る、姿勢推定システムのシステム構成例を示す図である。姿勢推定システムは、1台以上の距離画像カメラ1と、1台の姿勢推定装置2とを含む。各距離画像カメラ1と姿勢推定装置2は、ネットワークNを介して接続され、互いに通信することができる。ネットワークNは、例えば、有線LAN(Local Area Network)、無線LAN、WAN(Wide Area Network)、モバイル通信網、インターネット等の電気通信網であり、これらの2つ以上を組み合わせてもよい。
距離画像カメラ1は、人等の被写体が存在する対象空間の距離画像を撮像する撮像装置である。距離画像(「深度画像」ともいう)とは、画像中の各画素に、その階調情報(例えば、RGB)に加え深さ方向の距離情報が所定のスケーリングで記録された画像である。距離画像カメラ1は、例えばTOF(Time of Flight)方式のカメラであるが、距離画像を出力できれば、例えば可視光により撮像する2つの光学系を備えたステレオカメラ等の他の方式のカメラであってもよい。距離画像カメラは、距離画像センサと呼んでもよい。
本実施形態の距離画像カメラ1は、背景画素の階調情報及び距離情報に所定値(例えば「1」)を設定することにより、撮像した距離画像から背景を消去し、前景画素を含む距離画像を姿勢推定装置2に送信する。前景画素とは、人や当該人が持つ道具等の動作する被写体に対応する画素群である。背景画素とは、前景画素以外の画素であり、背景に対応する画素群である。
また、本実施形態の距離画像カメラ1は、対象空間に光を照射する光源と、光源から出射される光の出射方向を調節する方向調節部とを備える。これにより、距離画像カメラ1は、撮像される撮像範囲全体に均一に光が照射されるように出射方向を調節するだけでなく、撮像範囲のうち所望の領域(例えば前景画素を含む領域)に光が集中するように出射方向を調節することができる。
姿勢推定装置2は、距離画像に含まれる前景画素から人等の被写体の姿勢を推定する装置である。姿勢推定装置2は、例えば、後述するようにサーバ等のコンピュータ装置で実現される。姿勢推定装置2は、複数台のコンピュータで実現されてもよい。
本実施形態の姿勢推定装置2は、距離画像に含まれる前景画素の距離情報に基づいて、対象を構成する部位(例えば、頭、腕、手、胴体などの体のパーツ、関節は含まない)を識別し、各部位に対して関節位置を識別し、識別した関節位置に基づいて対象の姿勢を推定する。
本実施形態では、距離画像カメラ1によって距離画像から背景が消去され、この距離画像が姿勢推定装置2に送信されて処理される。これにより、背景画素と前景画素の両方を含む一般的な距離画像を送信する場合と比べ、ネットワークNの通信負荷を低減することができる。また、姿勢推定装置2は前景画素に対して処理を実行すればよいため、一般的な距離画像を処理する場合と比べ、姿勢推定装置2の処理負荷を低減することができる。距離画像カメラ1の台数あるいは距離画像カメラ1の撮像レートが増加するほど、効果が大きくなる。さらに、姿勢推定装置2は、前景画素に対して計算リソースを集中的に使用することができるため、姿勢推定の推定精度を向上することができる。
また、本実施形態の距離画像カメラ1は、撮像範囲のうち所望の領域(例えば前景画素を含む領域)に光を集中させることができる。これにより、距離画像カメラ1は、被写体(前景画素)を含む領域がその他の領域よりも明るく照らされた距離画像を生成することができる。その結果、姿勢推定装置2は、撮像範囲全体に均一に光が照射された距離画像に対して姿勢推定処理を施す場合と比べ、より明るい前景画素に対して姿勢推定処理を実行できるため、姿勢推定の推定精度を向上することができる。
図2は、第1実施形態に係る、距離画像カメラ及び姿勢推定装置の機能構成例を示す図である。距離画像カメラ1は、制御部11と、光源部12と、距離画像センサ13と、距離画像生成部14と、通信部15とを含む。姿勢推定装置2は、通信部21と、距離画像受信部22と、姿勢推定部23と、出力部27とを含む。姿勢推定部23は、特徴量算出部24と、部位識別部25と、関節識別部26とを含む。
制御部11は、光源部12、距離画像センサ13、距離画像生成部14、及び通信部15を制御する。例えば、制御部11は、光源部12に光の照射を指示し、距離画像センサ13に照射光と反射光の位相差情報の生成を指示し、距離画像生成部14に距離画像の生成を指示し、通信部15に距離画像の送信を指示する。また例えば、制御部11は、後述するように、光源部12から照射される光の出射方向が変更されるように、光源部12を制御することができる。制御部11は、例えば、CPU(Central Processing Unit)、RAM(Random Access Memory)等を含むマイクロコンピュータや、専用ハードウェア回路により実現することができる。
光源部12は、人等の被写体が存在する対象空間に対して光を照射する。また、光源部12は、光源から出射される光の出射方向を制御することができる。
図3は、第1実施形態に係る、光が照射される撮像範囲を模式的に説明する図である。通常、距離画像カメラ1から照射された光は、撮像範囲A全体を均一に照らす。ここで、人等の被写体Fが撮像範囲Aのうち一部の領域a(図の例では、破線で分割した6つの領域aのうち左下の領域a)のみに存在する場合を考える。この場合、被写体F(前景画素)が存在する領域a(前景画素領域)以外の5つの領域aに照射された光は、被写体Fが存在しない背景に照射されることになり、距離画像から姿勢推定を行う際には無駄となってしまう。そこで、本実施形態の距離画像カメラ1は、被写体が存在しない領域へ照射される光の少なくとも一部を、被写体が存在する領域に照射するための機構を有する。
図4は、第1実施形態に係る、光源部の構成例を模式的に示す図である。本図では、説明を分かり易くするため、出射される光の光路のうち代表的な光路を示している。
光源部12は、光源Lと、複数の回折格子G(「方向調節部」ともいう)とを備える。本図の例では、光源部12は、3個の回折格子G1〜G3を備える。
光源Lは、例えば、2次元アレイ状に配置された複数の発光ダイオードを備える。もちろん、光源Lは、発光ダイオードに限らず、例えば半導体レーザ等のデバイスにより実現してもよい。光源Lのオン又はオフは、制御部11によって制御される。光源Lの一部の領域をオン又はオフできてもよい。
複数の回折格子Gは、それぞれ面状に構成され、光源Lと向かい合うように光の出射方向に配置される。複数の回折格子Gは、2次元アレイ状に配列されてもよいし、1次元リニア状に配列されてもよい。図4では、説明を分かり易くするため、1次元リニア状の場合を示している。
各回折格子Gは、それぞれ個別に電気的にオン又はオフを切り替え可能である。各回折格子Gのオン又はオフは、制御部11によって制御される。オフされた回折格子Gは、光源Lから出射された光の光路を回折によって曲げることなく、真っすぐ通過させる。オンされた回折格子Gは、光源Lから出射された光の光路を回折によって曲げる。もちろん、各回折格子Gは、オフのときに光を曲げるように構成してもよい。
全ての回折格子Gがオフされている場合の光の照射範囲は、所定の画角(撮像範囲A)の全体をできる限り均一にかつ十分な光量で照射できるように設定される。
図4(B)〜(D)に示すように、各回折格子G1〜G3は、領域a1〜a3それぞれに対応するように配置されており、光源Lから出射された光は、各回折格子G1〜G3を通過して領域a1〜a3に照射される。
図4(B)は、回折格子G1〜G3の全てがオフされた状態を示している。この場合、光源Lのうち回折格子G1に対応する部分から出射された光は、回折格子G1を真っすぐ通過して、対応する領域a1に照射される。同様に、光源Lのうち回折格子G2及びG3に対応する部分から出射された光は、回折格子G2及びG3を真っすぐ通過して、対応する領域a2及びa3に照射される。その結果、領域a1〜a3は、均一な光量で照射される。
図4(C)は、回折格子G2がオフされ、かつ、回折格子G1及びG3がオンされた状態を示している。この場合、光源Lのうち回折格子G1に対応する部分から出射された光の一部は、回折格子G1で曲げられ、対応する領域a1に隣接する領域a2にも照射される。同様に、光源Lのうち回折格子G3に対応する部分から出射された光の一部は、回折格子G3で曲げられ、対応する領域a3に隣接する領域a2にも照射される。その結果、領域a2は、領域a1及びa3と比べて、回折格子G1とG3からの光も照射されるために光を集中させることができ、より多い光量で照射される。
図4(D)は、回折格子G2がオンされ、かつ、回折格子G1及びG3がオフされた状態を示している。この場合、光源Lのうち回折格子G2に対応する部分から出射された光の一部は、回折格子G2で曲げられ、対応する領域a2に隣接する領域a1及びa3にも照射される。その結果、領域a1及びa3は、領域a2と比べて、回折格子G2からの光も照射されるために光を集中させることができ、より多い光量で照射される。
このように、制御部11は、撮像範囲内のある対象領域の光量を増加させる場合、当該対象領域に隣接する1つ以上の領域に対応する1つ以上の回折格子Gをオンにすればよい。本実施形態では、制御部11は、後述する距離画像生成部14により距離画像から特定された前景画素を含む対象領域(前景画素領域)の光量が増加するように、各回折格子Gのオン又はオフを制御する。
なお、前景画素が1つの対象領域aに含まれる場合は、制御部11は、当該対象領域aに隣接する1つ以上の領域aに対応する1つ以上の回折格子Gをオンにすればよい。また、前景画素が複数の対象領域aに含まれる場合は、制御部11は、当該複数の対象領域aに隣接する1つ以上の領域aに対応する1つ以上の回折格子Gをオンにすればよい。
図2の説明に戻る。距離画像センサ13は、対象空間からの反射光を、結像レンズ(図示せず)を介して受光し、画素毎に、照射時と受光時の位相差情報と、階調情報とを生成して、所定の撮像範囲の画像情報として出力する。距離画像センサ13は、例えば、照射時と受光時の位相差情報と階調情報とを生成する複数の受光素子を、面状に配列することで構成することができる。
距離画像生成部14は、距離画像センサ13から出力される画像情報に含まれる画素毎の位相差情報を用いて、画素毎にその距離情報を算出する。そして、画素毎に距離情報と階調情報を含む入力距離画像を生成する。
また、距離画像生成部14は、入力距離画像から前景画素を抽出するとともに、背景を消去し、抽出された前景画素と消去された背景を含む出力距離画像を生成し、通信部15を介して姿勢推定装置2に送信する。例えば、距離画像生成部14は、対象が存在しないときに取得した対象空間の距離画像(背景のみを含む)と入力距離画像との、対応する画素の距離の差分を取り、差分がある部分を前景画素として抽出することができる。前景画素の抽出方法はこれに限定されない。例えば、距離が所定値未満の画素を前景画素として抽出してもよい。例えば、距離画像生成部14は、背景画素の階調情報及び距離情報を所定値(例えば「1」)に設定することにより、入力距離画像のサイズ(縦横の画素数を指す、以下同様)を変更することなく、背景を消去する。
図5は、第1実施形態に係る、前景画素を抽出する方法の例を説明する図である。距離画像生成部14は、入力距離画像(A)のうち、事前に取得した対象空間の背景画素(B)に所定値を設定し(所定値に置換し)、出力距離画像(C)を生成する。入力距離画像(A)と出力距離画像(C)は、同じ座標系及びサイズを有する。
なお、距離画像生成部14は、出力距離画像に対して所定の圧縮処理を施してデータ量を削減してもよい。上記の例では、背景画素が同じ値に設定されるため、背景画素が連続する領域では圧縮率を高めることができる。距離画像生成部14は、例えば、CPU、RAM等を含むマイクロコンピュータや、専用ハードウェア回路により実現することができる。
制御部11は、あるフレームの距離画像から抽出された前景画素が、撮像範囲A内のいずれの領域aに含まれるかを判定する。そして、制御部11は、次フレームの撮像行われる前に、前景画素が含まれる1つ以上の対象領域aの光量が増加するように、当該対象領域aに隣接する1つ以上の領域aに対応する1つ以上の回折格子Gをオンにする。例えば図3に示すように、前景画素が左下の対象領域aに含まれる場合、制御部11は、当該対象領域aの上及び右の領域aに対応する2つの回折格子Gをオンにする。このようにすることで、前景画素が含まれる領域の光量が増加し、次フレームの撮像において当該前景画素領域が他の領域よりも明るく撮像される。
通信部15は、ネットワークNに接続され、距離画像生成部14から出力された距離画像を、姿勢推定装置2に送信する。通信部15は、例えば、LAN等の規格のネットワークインターフェイスにより実現することができる。
通信部21は、ネットワークNに接続され、各距離画像カメラ1から送信された距離画像を受信する。
距離画像受信部22は、距離画像を、通信部21を介して受信し、姿勢推定部23に出力する。なお、距離画像受信部22は、受信した距離画像に所定の圧縮処理が施されている場合、当該距離画像に対して所定の伸長処理を施してもよい。
姿勢推定部23は、距離画像受信部22から出力された距離画像を用いて、当該距離画像に含まれる人等の被写体の姿勢を推定する。姿勢推定処理を行うため、姿勢推定部23は、特徴量算出部24、部位識別部25、及び関節識別部26を含むことができる。
特徴量算出部24は、距離画像を構成する各画素の距離情報を取得する。また、特徴量算出部24は、前景画素を構成する画素(注目画素)毎に、特徴量を算出する。上述のように背景画素には所定値が設定されているため、前景画素は背景画素から区別することができる。特徴量の算出方法は、既存の技術を用いることができ、限定されない。例えば、注目画素とその周囲画素の距離の差を特徴量とすればよい。具体例としては、注目画素を中心とする縦9画素×横9画素の矩形領域から、注目画素とその周囲の80画素それぞれとの距離の差を有する80次元(2次元配列)の特徴量ベクトルを用いることができる。
部位識別部25は、各注目画素が含まれる部位(例えば、頭、腕、手、胴体などの体のパーツ、関節は含まない)を識別する。部位の識別方法は、既存の技術を用いることができ、限定されない。例えば、特徴量閾値と部位ラベルを関連付けた決定木(識別器)に対して、注目画素の特徴量を入力することで、当該注目画素の部位ラベルを取得すればよい。部位ラベルとは、各部位の種類を示す情報などの、部位の識別子である。識別器には、例えば、ランダムフォレスト等の複数の決定木を用いることができ、予め学習したものを姿勢推定装置2の備える記憶装置に記憶しておけばよい。
関節識別部26は、識別された各注目画素の部位ラベルを用いて、対象の関節位置を識別する。関節位置の識別方法は、既存の技術を用いることができ、限定されない。例えば、同一部位ラベルが付与された注目画素群である部位毎に、その重心位置(関節位置候補)を取得すればよい。重心位置の取得には、例えば、mean-shift法を用いることができる。また、例えば、直線距離や角度などの関節間の関係を定義した人体の関節モデルを用いて、各重心位置の関節モデルに対する整合性を評価し、最終的な各関節位置を決定すればよい。また、各関節位置の関節ラベルを決定してもよい。関節ラベルとは、例えば、首関節、手首関節、肩関節など関節の種類を示す情報などの、関節の識別子である。
出力部27は、関節識別部26により識別された関節位置を含む推定姿勢情報を出力する。関節位置は、例えば、距離画像と同じ座標系の位置座標情報である。推定姿勢情報は、各関節位置の距離情報、各関節位置の関節ラベル、関節同士を結ぶ線分情報等を含んでもよい。例えば、出力部27は、通信部21を介して推定姿勢情報を外部のコンピュータやストレージに送信してもよいし、各関節位置を示す画像情報を姿勢推定装置2の備えるディスプレイに表示させてもよい。出力部27は、距離画像を出力してもよい。
図6は、第1実施形態に係る、姿勢推定装置を実現するコンピュータのハードウェア構成例を示す図である。姿勢推定装置2は、例えば図6に示すようなコンピュータ90により実現することができる。コンピュータ90は、例えば、サーバーコンピュータであるが、パーソナルコンピュータ、スマートフォン、タブレットコンピュータ等のコンピュータ機器であってもよい。また、姿勢推定装置2は、複数のコンピュータ90により構成されてもよい。
コンピュータ90は、演算装置91と、主記憶装置92と、外部記憶装置93と、通信装置94と、読み書き装置95と、入力装置96と、出力装置97とを含む。
演算装置91は、例えば、CPUなどの演算ユニットである。主記憶装置92は、例えば、RAMなどの記憶装置である。外部記憶装置93は、例えば、ハードディスクやSSD(Solid State Drive)、あるいはフラッシュROM(Read Only Memory)などの記憶装置である。通信装置94は、ネットワークケーブルを介して有線通信を行う通信装置、アンテナを介して無線通信を行う通信装置を含む、情報を送受信する装置である。読み書き装置95は、DVD(Digital Versatile Disk)、USB(Universal Serial Bus)メモリー等の記録媒体に情報を読み書きする装置である。入力装置96は、キーボードやマウスなどのポインティングデバイス、タッチパネル、マイクロフォンなどを含む、入力情報を受け付ける装置である。出力装置97は、ディスプレイ、プリンター、スピーカーなどを含む、出力情報を出力する装置である。主記憶装置92及び外部記憶装置93の少なくとも一部は、例えば、通信装置94を介して接続されるネットワークN上のストレージにより実現されてもよい。
距離画像受信部22、姿勢推定部23、及び出力部27(これらを「制御部」と呼んでもよい)は、例えば、演算装置91が所定のアプリケーションプログラムを実行することによって実現することができる。このアプリケーションプログラムは、例えば、外部記憶装置93内に記憶され、実行にあたって主記憶装置92上にロードされ、演算装置91によって実行される。通信部21は、例えば、通信装置94によって実現される。
図7は、第1実施形態に係る、姿勢推定システムの処理例を示すフローチャートである。本図のフローチャートのステップS2〜S5、S11〜S13は、1フレームの距離画像毎に実行される。
まず、光源部12は、撮像範囲Aの全領域に光を均一に照射する(ステップS1)。具体的には、制御部11は、光源部12の複数の回折格子Gの全てをオフに設定することにより、撮像範囲Aの全領域を均一な光量で照射する。
それから、距離画像生成部14は、距離画像センサ13から出力される画素毎の情報を用いて、画素毎に距離情報と階調情報を含む入力距離画像を生成する(ステップS2)。それから、距離画像生成部14は、ステップS2で生成した入力距離画像から前景画素を抽出するとともに、背景を消去し、抽出された前景画素と消去された背景を含む出力距離画像を生成する(ステップS3)。それから、距離画像生成部14は、ステップS3で生成した出力距離画像を、通信部15を介して姿勢推定装置2に送信する(ステップS4)。
それから、制御部11は、ステップS3において入力距離画像から前景画素が抽出されたか否かを判定する(ステップS5)。前景画素が抽出されていないと判定する場合(ステップS5:NO)、制御部11は、処理をステップS1に戻す。
前景画素が抽出されたと判定する場合(ステップS5:YES)、光源部12は、前景画素領域に光を集中させる(ステップS6)。具体的には、制御部11は、ステップS3において入力距離画像から抽出された前景画素が、撮像範囲A内のいずれの領域aに含まれるかを判定する。また、制御部11は、前景画素が含まれる1つ以上の対象領域aの光量が増加するように、当該対象領域aに隣接する1つ以上の領域aに対応する1つ以上の回折格子Gをオンにする。そして、制御部11は、処理をステップS2に戻す。
距離画像受信部22は、ステップS4で距離画像カメラ1から送信された距離画像を、通信部21を介して受信する(ステップS11)。それから、姿勢推定部23は、ステップS11で受信された距離画像を用いて、当該距離画像に含まれる人等の被写体の姿勢を推定する(ステップS12)。それから、出力部27は、ステップS12で姿勢推定部23から出力された関節位置を含む推定姿勢情報を出力し(ステップS13)、処理をステップS11に戻す。
図8は、第1実施形態に係る、姿勢推定装置の姿勢推定処理の一例を示すフローチャートである。図8のフローチャートは、図7のステップS12の詳細を示している。
まず、特徴量算出部24は、前景画素から注目画素を1つ選択し(ステップS121)、選択した注目画素と1つ以上の周囲画素の距離情報を用いて、当該注目画素の特徴量を算出する(S122)。それから、部位識別部25は、算出された注目画素の特徴量を、予め用意した識別器に入力することで、当該注目画素の部位ラベルを取得する(ステップS123)。
それから、姿勢推定部23は、前景画素を構成する全ての注目画素を選択したかどうかを判定する(ステップS124)。全画素を選択していないと判定した場合(ステップS124:NO)、姿勢推定部23は、処理をステップS121に戻す。全画素を選択したと判定した場合(ステップS124:YES)、姿勢推定部23は、処理をステップS125に進める。
関節識別部26は、ステップS123で識別された各注目画素の部位ラベルを用いて、部位毎に、その重心位置(関節位置候補)を取得する(ステップS125)。最後に、関節識別部26は、取得した各部位の重心位置に基づいて、最終的な1つ以上の関節位置を決定する(ステップS126)。
以上、本発明の第1実施形態について説明した。第1実施形態の姿勢推定システムは、撮像範囲の被写体(前景画素)が存在する領域の光量を増加させたうえで撮像を行う。これにより、距離画像上の前景画素領域は周囲の領域よりも明るく写るため、被写体の姿勢推定処理の推定精度を向上することができる。例えば人等の被写体が存在する場所が特定の場所に偏っている場合でも、推定精度を向上することができる。
また、第1実施形態の姿勢推定システムは、被写体(前景画素)が撮像範囲内で移動する場合であっても、移動した被写体が存在する領域の光量を増加させる。これにより、例えば人等の被写体が存在する場所が状況によって変化する場合でも、推定精度を向上することができる。
[第2実施形態]
第2実施形態は、光源部12の構成が第1実施形態と異なる。以下、第1実施形態と異なる構成を中心に説明し、第1実施形態と同様の構成の説明を省略する。
図9は、第2実施形態に係る、光源部の構成例を模式的に示す図である。本図では、説明を分かり易くするため、出射される光の光路のうち代表的な光路を示している。
光源部12Aは、光源Lと、複数のミラーM(「方向調節部」ともいう)とを備える。本図の例では、光源部12Aは、3個のミラーM1〜M3を備える。
光源Lは、第1実施形態と同様である。光源Lから出射された光は、光源Lに向かい合うように配置された複数のミラーMに反射され、対象空間に照射される。
複数のミラーMは、それぞれ面状に構成され、光源Lと向かい合うように光の出射方向に配置される。複数のミラーMは、2次元アレイ状に配列されてもよいし、1次元リニア状に配列されてもよい。図9では、説明を分かり易くするため、1次元リニア状の場合を示している。
各ミラーMは、入射された光の反射方向を選択可能に構成され、例えば、MEMS(Micro Electro Mechanical Systems)ミラーにより実現することができる。各ミラーMは、それぞれ個別に電気的にオン又はオフを切り替え可能である。ミラーMのオン又はオフは、制御部11によって制御される。オフされたミラーMは、対応する領域aの方向に光を反射する。オンされたミラーMは、対応する領域aに隣接する他の領域aの方向に光を反射する。もちろん、各ミラーMは、オフのときに対応する領域aに隣接する他の領域aの方向に光を反射する構成としてもよい。
全てのミラーMがオフされている場合の光の照射範囲は、所定の画角(撮像範囲A)の全体をできる限り均一にかつ十分な光量で照射できるように設定される。
図9(B)〜(D)に示すように、各ミラーM1〜M3は、領域a1〜a3それぞれに対応するように配置されており、光源Lから出射された光は、各ミラーM1〜M3で反射されて領域a1〜a3に照射される。
図9(B)は、ミラーM1〜M3の全てがオフされた状態を示している。この場合、光源LのうちミラーM1に対応する部分から出射された光は、ミラーM1で第1の方向に反射されて、対応する領域a1に照射される。同様に、光源LのうちミラーM2及びM3に対応する部分から出射された光は、ミラーM2及びM3で第1の方向に反射されて、対応する領域a2及びa3に照射される。その結果、領域a1〜a3は、均一な光量で照射される。
図9(C)は、ミラーM1がオンされ、かつ、ミラーM2及びM3がオフされた状態を示している。この場合、光源LのうちミラーM1に対応する部分から出射された光は、ミラーM1で第2の方向に反射され、対応する領域a1に隣接する領域a2に照射される。その結果、領域a2は、領域a1及びa3と比べて、光を集中させることができ、より多い光量で照射される。
図9(D)は、ミラーM2がオンされ、かつ、ミラーM1及びM3がオフされた状態を示している。この場合、光源LのうちミラーM2に対応する部分から出射された光は、ミラーM2で第2の方向に反射され、対応する領域a2に隣接する領域a3に照射される。その結果、領域a3は、領域a1及びa2と比べて、光を集中させることができ、より多い光量で照射される。
このように、制御部11は、撮像範囲内のある対象領域の光量を増加させる場合、当該対象領域に隣接する1つ以上の領域に対応する1つ以上のミラーMをオンにすればよい。本実施形態では、制御部11は、距離画像から特定された前景画素を含む対象領域(前景画素領域)の光量が増加するように、各ミラーMのオン又はオフを制御する。
なお、前景画素が1つの対象領域aに含まれる場合は、制御部11は、当該対象領域aに隣接する1つ以上の領域aに対応する1つ以上のミラーMをオンにすればよい。また、前景画素が複数の対象領域aに含まれる場合は、制御部11は、当該複数の対象領域aに隣接する1つ以上の領域aに対応する1つ以上のミラーMをオンにすればよい。
図7のフローチャートのステップS1では、制御部11は、光源部12Aの複数のミラーMの全てをオフに設定することにより、撮像範囲Aの全領域を均一な光量で照射する。ステップS6では、制御部11は、前景画素が含まれる1つ以上の対象領域aの光量が増加するように、当該対象領域aに隣接する1つ以上の領域aに対応する1つ以上のミラーMをオンにする。
以上、本発明の第2実施形態について説明した。第2実施形態によっても、第1実施形態と同様の効果を得ることができる。
[第3実施形態]
第3実施形態は、光源部12の構成が第1実施形態と異なる。以下、第1実施形態と異なる構成を中心に説明し、第1実施形態と同様の構成の説明を省略する。
図10は、第3実施形態に係る、光源部の構成例を模式的に示す図である。本図では、説明を分かり易くするため、出射される光の光路のうち代表的な光路を示している。
光源部12Bは、光源Lと、ハーフミラーHと、ズームレンズZ(「方向調節部」ともいう)とを備える。
光源Lは、第1実施形態と同様である。光源Lからの出射光は、光源Lの前に設置されたハーフミラーHを通過して、ズームレンズZに入射され、対象空間に照射される。
ハーフミラーHは、光源LとズームレンズZの間に設置される。ハーフミラーHは、光源Lから入射された光を、ズームレンズZへ出射する。また、ハーフミラーHは、ズームレンズから入射された光を、距離画像センサ13(図示せず)の方向へ反射する。
ズームレンズZは、ハーフミラーHから入射された光を、対象空間へ出射する。また、ズームレンズZは、対象空間から入射された光を、ハーフミラーHへと出射する。ズームレンズZは、電気的及び機械的に焦点距離を変更可能に構成され、撮像範囲A全体をカバーする第1の画角と、撮像範囲Aの1つ以上の領域a(撮像範囲Aよりも小さい範囲)をカバーする第2の画角とを選択可能に構成される。ズームレンズZの画角の切り替えは、制御部11によって制御される。
ズームレンズZが第1の画角に設定されている場合の光の照射範囲は、所定の画角(撮像範囲A)の全体をできる限り均一にかつ十分な光量で照射できるように設定される。
また、ズームレンズZは、撮像範囲A内の光を集光する1つ以上の対象領域aを第2の画角内に収めるため、その位置を移動可能に光源部12Bに設けられる。例えば、ズームレンズZを撮像面に平行に移動可能に保持する保持機構(図示せず)を設ければよい。あるいは例えば、ズームレンズZの撮像面に対する向きを変更可能に保持する保持機構(図示せず)を設ければよい。当該保持機構は、制御部11によって制御される。
図10(B)〜(C)に示すように、ズームレンズZは、領域a1〜a3に対応するように配置されており、光源Lから出射された光は、ハーフミラーH及びズームレンズZを通過して、領域a1〜a3に照射される。
図10(B)は、ズームレンズZが第1の画角に設定された状態を示している。この場合、光源Lから出射された光は、ズームレンズZを通過して、領域a1〜a3に照射される。その結果、領域a1〜a3は、均一な光量で照射される。なお、距離画像センサ13では、撮像範囲A全体に対応する画像情報が生成される。
図10(C)は、ズームレンズZが1つの領域a2をカバーする第2の画角に設定され、かつ、領域a2が当該第2の画角内に入るように保持機構により移動された状態を示している。この場合、光源Lから出射された光は、ズームレンズZを通過して、領域a2に照射される。その結果、領域a2は、領域a1及びa3と比べて、光を集中させることができ、より多い光量で照射される。なお、距離画像センサ13では、領域a2を撮像範囲Aのサイズまで拡大した画像情報が生成される。
このように、制御部11は、撮像範囲内のある対象領域の光量を増加させる場合、ズームレンズZを第2の画角に設定し、かつ、当該対象領域が当該画角内に入るようにズームレンズZの位置を移動させればよい。本実施形態では、制御部11は、距離画像から特定された前景画素を含む対象領域(前景画素領域)の光量が増加するように、ズームレンズZ及び保持機構を制御する。
なお、前景画素が複数の領域aに含まれる場合は、制御部11は、ズームレンズZを当該複数の領域aをカバーする第2の画角に設定し、かつ、当該複数の領域aが当該画角内に入るようにズームレンズZの位置を移動させればよい。
図7のフローチャートのステップS1では、制御部11は、光源部12BのズームレンズZを第1の画角に設定することにより、撮像範囲Aの全領域を均一な光量で照射する。ステップS6では、制御部11は、前景画素が含まれる1つ以上の対象領域aの光量が増加するように、ズームレンズZを当該1つの対象領域aをカバーする第2の画角に設定し、かつ、当該1つ以上対象領域aが当該画角内に入るようにズームレンズZの位置を移動させればよい。
以上、本発明の第3実施形態について説明した。第3実施形態によっても、第1実施形態と同様の効果を得ることができる。また、第3実施形態では、前景画素が含まれる領域を、拡大及び高解像度化した画像情報として取得することができるため、姿勢推定処理の推定精度を向上することができる。
[第4実施形態]
第4実施形態は、制御部11、距離画像生成部14、及び姿勢推定部23の処理が、第1実施形態と異なる。以下、第1実施形態と異なる構成を中心に説明し、第1実施形態と同様の構成の説明を省略する。
図11は、第4実施形態に係る、距離画像カメラ及び姿勢推定装置の機能構成例を示す図である。
距離画像生成部14Cは、入力距離画像から前景画素を抽出せずに、出力距離画像を生成し、通信部15を介して姿勢推定装置2に送信する。
制御部11Cは、前景画素を含む領域を示す領域情報を、通信部15を介して姿勢推定装置2から受信する。領域情報は、例えば、撮像範囲Aの1つ又は複数の領域aの識別子を含むか、又は前景画素が存在しないことを示す識別子を含むことができる。制御部11Cは、領域情報が示す1つ以上の領域aの光量が増加するように、当該1つ以上の領域aに隣接する1つ以上の領域aに対応する1つ以上の回折格子Gをオンにする。
姿勢推定部23Cは、姿勢推定処理の前段に、受信した距離画像から前景画素を抽出するとともに、背景を消去し、抽出された前景画素と消去された背景を含む距離画像を生成する。前景画素を抽出する方法は、第1実施形態と同様である。また、姿勢推定部23Cは、抽出した前景画素を含む領域を示す領域情報を生成し、通信部21を介して距離画像カメラ1に送信する。
図12は、第4実施形態に係る、姿勢推定システムの処理例を示すフローチャートである。本図のフローチャートのステップS22〜S24、S31〜S34は、1フレームの距離画像毎に実行される。
まず、光源部12は、撮像範囲Aの全領域に光を均一に照射する(ステップS21)。具体的には、制御部11Cは、光源部12の複数の回折格子Gの全てをオフに設定することにより、撮像範囲Aの全領域を均一な光量で照射する。
それから、距離画像生成部14Cは、距離画像センサ13から出力される画素毎の情報を用いて、画素毎に距離情報と階調情報を含む入力距離画像を生成する(ステップS22)。それから、距離画像生成部14Cは、ステップS22で生成した入力距離画像から出力距離画像を生成し、通信部15を介して姿勢推定装置2に送信する(ステップS23)。
それから、制御部11Cは、姿勢推定装置2から領域情報を受信したか否かを判定する(ステップS24)。領域情報を受信していないと判定する場合(ステップS24:NO)、制御部11Cは、処理をステップS21に戻す。
領域情報を受信したと判定する場合(ステップS24:YES)、光源部12は、前景画素領域に光を集中させる(ステップS25)。具体的には、制御部11Cは、ステップS24で受信した領域情報が示す1つ以上の対象領域aの光量が増加するように、当該対象領域aに隣接する1つ以上の領域aに対応する1つ以上の回折格子Gをオンにする。なお、領域情報が前景画素が存在しないことを示す場合、制御部11Cは、全ての回折格子Gをオフにする。そして、制御部11Cは、処理をステップS22に戻す。
一方、距離画像受信部22は、ステップS23で距離画像カメラ1から送信された距離画像を、通信部21を介して受信する(ステップS31)。それから、姿勢推定部23Cは、ステップS31で受信された距離画像を用いて、当該距離画像に含まれる人等の被写体の姿勢を推定する(ステップS32)。ステップS32の詳細は、図8と同様である。ただし、姿勢推定部23Cは、姿勢推定処理の前段に、ステップS31で受信した距離画像から前景画素を抽出するとともに、背景を消去し、抽出された前景画素と消去された背景を含む距離画像を生成する。
それから、姿勢推定部23Cは、ステップS32で抽出した前景画素領域を示す領域情報を生成し、通信部21を介して距離画像カメラ1に送信する(ステップS33)。それから、出力部27は、ステップS32で姿勢推定部23から出力された関節位置を含む推定姿勢情報を出力し(ステップS34)、処理をステップS31に戻す。
以上、本発明の第4実施形態について説明した。第4実施形態によっても、第1実施形態と同様の効果を得ることができる。また、第4実施形態では、前景領域の抽出処理は、姿勢推定装置2で実行される。これにより、距離画像カメラ1の処理負荷を低減することができる。
[第5実施形態]
第5実施形態は、光源部12の構成が第1実施形態と異なる。以下、第1実施形態と異なる構成を中心に説明し、第1実施形態と同様の構成の説明を省略する。
図13および図14は、第5実施形態に係る、光源部の構成例を模式的に示す図である。本図では、説明を分かり易くするため、出射される光の光路のうち代表的な光路を示している。2つの圧電素子により光ファイバをX方向とY方向のそれぞれに独立して振動させることで、二次元平面をスキャンすることが可能であるが、説明を分かり易くするため、XとY方向のうちの一方のみを図示する。
光源部12Dは、光源Lと、光ファイバ121と、光ファイバ122と、積層型圧電素子123とを備える。光ファイバ121及び122と積層型圧電素子123とは、「方向調節部」とも言える。光源Lは、第1実施形態と同様である。
光ファイバ121は、一端が光源Lに面し、他端が対象空間に面するように配置される。光ファイバ122は、光ファイバ121に隣接して接着されており、一端が距離画像センサ13に面し、他端が対象空間に面するよう配置される。光ファイバ121及122は、光源L及び距離画像センサ13に面する側が固定され、反対側が自由端となった片持ち梁状態で、光源部12Dに設けられる。光源Lからの出射光は、光ファイバ121に入射され、光ファイバ121を通過して対象空間に照射される。被写体で反射された光は、光ファイバ122に入射され、光ファイバ122を通過して距離画像センサ13に照射される。距離画像センサ13はXY方向に画素が配置された二次元センサ(エリア型センサ)でもよいが、光ファイバ122からセンサ面に照射される領域と同等の大きさ(つまり、光ファイバの太さ程度)であれば十分であり、また対象領域の二次元スキャンは圧電素子により実現されるため、距離画像センサ13は一次元センサ(ライン型センサ、リニア型センサ)でもよく、その場合、より低画素数のため低コストで低消費電力で省実装面積という効果がある。
積層型圧電素子123は、光ファイバ121及び122の少なくとも一方に接する(あるいは中間部材を介して接する)ように設置される。本図の例では、積層型圧電素子123は、光ファイバ121に接している。積層型圧電素子123に印加する電圧を制御することで、光ファイバ121及び122を片持ち梁モードでたわみ振動させることができる。積層型圧電素子123への電圧の印加は、制御部11によって制御される。
光ファイバ121及び122は、電圧が印加された積層型圧電素子123によって振動の振幅(図中の左右方向の矢印S)の大きさを変更可能に構成される。光ファイバ121及び122の振幅は、撮像範囲A全体をカバーする第1の画角と、撮像範囲Aの1つ以上の領域a(撮像範囲Aよりも小さい範囲)をカバーする第2の画角とを選択可能に構成される。光ファイバ121及び122の振幅による画角の切り替えは、制御部11によって制御される積層型圧電素子123の動作によって制御される。
光ファイバ121及び122の振幅が第1の画角に設定されている場合の光の照射範囲は、所定の画角(撮像範囲A)の全体をできる限り均一にかつ十分な光量で照射できるように設定される。
撮像範囲A全体を均一に照射する場合には、光ファイバ121及び122の振幅は、第1の画角に設定され、光源Lは、常にオンされる。一方、撮像範囲Aのうち前景画素が含まれる対象領域aを照射する場合には、光ファイバ121及び122の振幅は、第1の画角あるいは第2の画角に設定され、光源Lは、光ファイバ121及び122の先端部が対象領域aを向いている間に光が照射されるようにオンされる。前景画素が複数の対象領域aに含まれる場合は、光源Lは、光ファイバ121及び122が各対象領域aを向いている間に光が照射されるようにオンされる。
図13は、光ファイバ121及び122の振幅が1つの対象領域a3をカバーする第2の画角に設定された状態を示している。この場合、光源Lは、光ファイバ121及び122が対象領域a3を向いている間オンされ、光源Lから出射された光は、光ファイバ121を通過して領域a2に照射される。その結果、領域a3は、領域a1、a2、a4、及びa5と比べて、光を集中させることができ、より多い光量で照射される。また、第1の画角で照射する場合と比べて、光ファイバ121及び122の振幅が小さいため、領域a3に照射される単位時間当たりの光量が増加する。なお、距離画像センサ13では、領域a3を撮像範囲Aのサイズまで拡大した画像情報が生成されてもよい。
図14は、光ファイバ121及び122の振幅が1つの対象領域a4をカバーする第2の画角に設定された状態を示している。この場合、光源Lは、光ファイバ121及び122が対象領域a4を向いている間オンされ、光源Lから出射された光は、光ファイバ121を通過して領域a4に照射される。光源Lは、光ファイバ121及び122が領域a1、a2、a3、及びa5を向いている間オフされる。その結果、領域a4は、領域a1、a2、a3、及びa5と比べて、光を集中させることができ、より多い光量で照射される。また、第1の画角で照射する場合と比べて、光ファイバ121及び122の振幅が小さいため、領域a4に照射される単位時間当たりの光量が増加する。なお、距離画像センサ13では、領域a4を撮像範囲Aのサイズまで拡大した画像情報が生成されてもよい。
なお、光ファイバ121及び122の振幅が全領域a1〜a5をカバーする第1の画角に設定された場合、光源Lは、常にオンされる。光源Lから出射された光は、光ファイバ121及び122の周期的な振幅により、各領域a1〜a5に順次照射される。その結果、領域a1〜a5は、均一な光量で照射される。なお、距離画像センサ13では、撮像範囲A全体に対応する画像情報が生成される。
このように、制御部11は、撮像範囲内のある対象領域の光量を増加させる場合、光ファイバ121及び122の振幅を、対象領域をカバーする最小限の第2の画角(最小限の第2の画角が第1の画角と等しい場合もある)に設定し、光ファイバ121及び122が対象領域を向いている間に光源Lをオンする。また、制御部11は、撮像範囲内の全領域を均一に照らす場合、光ファイバ121及び122の振幅を、全領域をカバーする第1の画角に設定し、光源Lを常にオンする。
図7のフローチャートのステップS1では、制御部11は、光源部12Dの光ファイバ121及び122の振幅を第1の画角に設定し、光源Lを常にオンすることにより、撮像範囲Aの全領域を均一な光量で照射する。ステップS6では、制御部11は、前景画素が含まれる1つ以上の対象領域aの光量が増加するように、光ファイバ121及び122の振幅を第2の画角に設定し、光ファイバ121及び122が各対象領域aを向いている間に光源Lをオンすればよい。
なお、ある変形例では、制御部11は、光ファイバ121及び122の振幅を第2の画角に設定した場合、光源Lを常にオンしてもよい。このようにしても、第1の画角で照射する場合と比べて、光ファイバ121及び122の振幅が小さいため、対象領域aに照射される単位時間当たりの光量が増加する。また、他の変形例では、光を伝送できれば光ファイバに限らず他の光伝送部材を用いてもよいし、光伝送部材を振幅させることができれば積層型圧電素子に限らず他の駆動部を用いてもよい。
以上、本発明の第5実施形態について説明した。第5実施形態によっても、第1実施形態と同様の効果を得ることができる。また、第5実施形態では、前景画素が含まれる領域を、拡大及び高解像度化した画像情報として取得することができるため、姿勢推定処理の推定精度を向上することができる。
本発明は、上述の複数の実施形態に限定されず、本発明の要旨の範囲内で種々の変形実施が可能である。各実施形態および各変形例の2つ以上を適宜組み合わせることもできる。
例えば、第2実施形態、第3実施形態、又は第5実施形態についても、第4実施形態と同様に、姿勢推定装置2が領域情報を送信し、距離画像カメラ1が受信した領域情報に基づいて光源部12を制御するように構成してもよい。
また例えば、第1〜第3実施形態、及び第5実施形態の距離画像生成部14は、入力距離画像から背景を消去せずに、前景画素を含む領域を切り出してもよい。このようにすれば、さらに距離画像のデータ量を減らすことができる。
また例えば、第4実施形態において、姿勢推定部23Cは、距離画像から推定された各関節位置の座標情報を領域情報として送信し、制御部11Cは、この座標情報を用いて各関節位置が含まれる撮像範囲内の領域aを特定するようにしてもよい。
また例えば、第3実施形態において、光源部12BのハーフミラーHを省略し、距離画像センサ13はズームレンズZを介さない別のルートで対象空間からの光を受光してもよい。この場合、距離画像センサ13では、撮像範囲A全体に対応する画像情報が生成される。
また例えば、第1〜第5実施形態において、距離画像を蓄積するデータベースをネットワークNに接続し、各距離画像カメラは距離画像を当該データベースに送信して蓄積し、姿勢推定装置は当該データベースから距離画像を取得するようにしてもよい。
なお、図2、及び図11で示した距離画像カメラ及び姿勢推定装置の構成は、これらのデバイスの構成を理解容易にするために、主な処理内容に応じて分類したものである。構成要素の分類の仕方や名称によって、本発明が制限されることはない。距離画像カメラ及び姿勢推定装置の構成は、処理内容に応じて、さらに多くの構成要素に分類することもできる。また、1つの構成要素がさらに多くの処理を実行するように分類することもできる。また、各構成要素の処理は、1つのハードウェアで実行されてもよいし、複数のハードウェアで実行されてもよい。また、各構成要素の処理又は機能の分担は、本発明の目的及び効果を達成できるのであれば、図示したものに限られない。
また、図7〜8、及び図12で示したフローチャートの処理単位は、距離画像カメラ及び姿勢推定装置の処理を理解容易にするために、主な処理内容に応じて分割したものである。処理単位の分割の仕方や名称によって、本発明が制限されることはない。距離画像カメラ及び姿勢推定装置の処理は、処理内容に応じて、さらに多くの処理単位に分割することもできる。また、1つの処理単位がさらに多くの処理を含むように分割することもできる。さらに、本発明の目的及び効果を達成できるのであれば、上記のフローチャートの処理順序も、図示した例に限られるものではない。
本発明は、上記した実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、上記した各実施形態は、本発明を分かりやすく説明するために詳細に説明したものであり、本発明が、必ずしも説明した全ての構成要素を備えるものに限定されるものではない。また、ある実施形態の構成の一部を、他の実施形態の構成に置き換えることが可能であり、ある実施形態の構成に、他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部または全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現されてもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリーや、ハードディスク、SSD等の記憶装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
本発明は、姿勢推定システム、姿勢推定装置、及び距離画像カメラだけでなく、姿勢推定装置や距離画像カメラで実行されるコンピュータ読み取り可能なプログラム、姿勢推定システム、姿勢推定装置、又は距離画像カメラにおける方法、などの様々な態様で提供することができる。