(57)【特許請求の範囲】
【請求項１】
奥行き画像データを用いて対象の向きをコンピュータによって推定する方法であって、
前記コンピュータは、
ピクセル奥行き情報を含む連続する複数の奥行き画像であって、対象を捕捉する連続する複数の奥行き画像を、前記コンピュータのプロセッサによって受けるステップと、
一つの画像とその画像の中に捕捉された対象の向きを表す対応する向きの尺度とを対応付ける相関関係であって、前記連続する複数の奥行き画像中の、対象の向きのセットを表す画像のセットに対して、各画像と対応する向きの尺度との間の相関関係を、前記コンピュータのプロセッサによって決定するステップと、
前記対象の奥行き画像のセットと前記相関関係とを、前記コンピュータのプロセッサによって保存するステップと、
前記対象の現在の奥行き画像を、前記奥行き画像のセットの中の前記奥行き画像と、外観に基づいて比較し、前記現在の奥行き画像の中に捕捉された前記対象の現在の向きを示す対応する向きの尺度を、前記相関関係に基づいて、前記コンピュータのプロセッサによって決定するステップと
を実行し、
前記相関関係を決定するステップは、
前記画像のセット中の複数の特徴点の間のオプティカルフローを推定することによって二次元モーションフィールドを決定するステップと、
前記二次元モーションフィールドと、前記画像のセット中の複数の特徴点のピクセル奥行き情報の変化とに基づいて、前記画像のセット中の前記対象の三次元回転及び並進に関連付けられた少なくとも１つのパラメータを最適化することによって、前記画像のセットの前記対象の前記向きの尺度を推定するステップと、
を含むこと、
を特徴とする方法。
【請求項２】
前記相関関係は、既知の向きのセットと前記画像のセットとの間の写像を含むことを特徴とする請求項１の方法。
【請求項３】
前記コンピュータは、
前記対象の外観の変化を前記コンピュータのプロセッサによって決定するステップと、
前記外観の変化の値が最大変化を超過している場合に、前記対象の第２の画像のセットに対する相関関係を前記コンピュータのプロセッサによって決定するステップと、
前記相関関係を前記コンピュータのプロセッサによって保存するステップと、
前記保存された画像のセットを前記画像の第２のセットに、前記コンピュータのプロセッサによって置換するステップと
をさらに実行する請求項１の方法。
【請求項４】
前記対象は人間の頭部であり、前記向きは頭部姿勢であることを特徴とする請求項１の方法。
【請求項５】
奥行き画像データを用いて対象の向きを推定するためのコンピュータを機能させるコンピュータ命令を格納したコンピュータ可読媒体であって、
前記コンピュータ命令は、
前記コンピュータに対して、
ピクセル奥行き情報を含む連続する複数の奥行き画像であって、対象を捕捉する連続する複数の奥行き画像を、前記コンピュータのプロセッサによって受けるステップと、
一つの画像とその画像の中に捕捉された対象の向きを表す対応する向きの尺度とを対応付ける相関関係であって、前記連続する複数の奥行き画像中の、対象の向きのセットを表す画像のセットに対して、各画像と対応する向きの尺度との間の相関関係を、前記コンピュータのプロセッサによって決定するステップと、
前記対象の奥行き画像のセットと前記相関関係とを、前記コンピュータのプロセッサによって保存するステップと、
前記対象の現在の奥行き画像を、前記奥行き画像のセットの中の前記奥行き画像と、外観に基づいて比較し、前記現在の奥行き画像の中に捕捉された前記対象の現在の向きを示す対応する向きの尺度を、前記相関関係に基づいて、前記コンピュータのプロセッサによって決定するステップと、
を実行させ、
前記相関関係を決定するステップは、
前記画像のセット中の複数の特徴点の間のオプティカルフローを推定することによって二次元モーションフィールドを決定するステップと、
前記二次元モーションフィールドと、前記画像のセット中の複数の特徴点のピクセル奥行き情報の変化とに基づいて、前記画像のセット中の前記対象の三次元回転及び並進に関連付けられた少なくとも１つのパラメータを最適化することによって、前記画像のセットの前記対象の前記向きの尺度を推定するステップと、
を含むこと、
を特徴とするコンピュータ命令を格納したコンピュータ可読媒体。
【請求項６】
奥行き画像データを用いて対象の向きを推定するシステムであって、
前記システムは、
ピクセル奥行き情報を含む連続する複数の奥行き画像であって、対象を捕捉する連続する複数の奥行き画像を、コンピュータのプロセッサによって受ける手段と、
一つの画像とその画像の中に捕捉された対象の向きを表す対応する向きの尺度とを対応付ける相関関係であって、前記連続する複数の奥行き画像中の、対象の向きのセットを表す画像のセットに対して、各画像と対応する向きの尺度との間の相関関係を、前記コンピュータのプロセッサによって決定する手段と、
前記対象の奥行き画像のセットと前記相関関係とを、前記コンピュータのプロセッサによって保存する手段と、
前記対象の現在の奥行き画像を、前記奥行き画像のセットの中の前記奥行き画像と、外観に基づいて比較し、前記現在の奥行き画像の中に捕捉された前記対象の現在の向きを示す対応する向きの尺度を、前記相関関係に基づいて、前記コンピュータのプロセッサによって決定する手段と
を有し、
前記相関関係を決定する手段は、
前記画像のセット中の複数の特徴点の間のオプティカルフローを推定することによって二次元モーションフィールドを決定し、
前記二次元モーションフィールドと、前記画像のセット中の複数の特徴点のピクセル奥行き情報の変化とに基づいて、前記画像のセット中の前記対象の三次元回転及び並進に関連付けられた少なくとも１つのパラメータを最適化することによって、前記画像のセットの前記対象の前記向きの尺度を推定することによって、
前記相関関係を決定すること、
を特徴とするシステム。
【請求項７】
奥行きビデオ画像データを用いて対象のリアルタイムの向きの尺度をコンピュータによって推定する方法であって、
前記コンピュータは、
リアルタイムに対象を捕捉するとともに奥行きピクセルデータを含む連続する複数の奥行きビデオフレームを入力として、前記コンピュータのプロセッサによって受けるステップと、
初期訓練期間中に奥行きビデオフレームの対象固有の訓練セットを前記コンピュータのプロセッサによって保存するステップと、
前記奥行きビデオフレームの対象固有の訓練セットを前記コンピュータのプロセッサ内で分析することによって、主要な向きを向いた対象を捕捉する前記奥行きビデオフレームの対象固有の訓練セットのフレームを特定するステップと、
現在の奥行きビデオフレームを、前記奥行きビデオフレームの対象固有の訓練セットと、外観に基づいて、前記コンピュータのプロセッサによって比較し、前記現在の奥行きビデオフレームが前記主要な向きを向いた対象を含むか否かを判定するステップと、
部分的に、前記現在の奥行きビデオフレームに対応する奥行きデータに基づく現在の向きの尺度であって、前記奥行きビデオフレームの中に捕捉された前記対象の現在の向きに対応する現在の向きの尺度を、前記コンピュータのプロセッサによって動き推定を実行することによって、決定するステップと、
前記現在の奥行きビデオフレームが前記主要な向きを向いた対象を含むと判定する毎に、前記現在の向きの尺度を、基準となる向きの尺度に、前記コンピュータのプロセッサによって初期化するステップと
を実行する方法。
【請求項８】
前記コンピュータは、
前記奥行きビデオフレームの対象固有の訓練セットを分析する際に、Parzenウィンドウに基づくＰＤＦを実行して、そのＰＤＦのモードを判定することを特徴とする請求項７の方法。
【請求項９】
前記コンピュータは、
前記奥行きビデオフレームの対象固有の訓練セットを分析する際に、各奥行きビデオフレームを分割して、前記対象に対応する画像データを含むフレームのセグメントを決定することを特徴とする請求項７の方法。
【請求項１０】
前記コンピュータは、
前記奥行きビデオフレームの対象固有の訓練セットを分析する際に、さらに、楕円フィッティング法に基づきフレーム毎にセグメント位置を追跡することを特徴とする請求項９の方法。
【請求項１１】
前記コンピュータは、
前記奥行きビデオフレームの対象固有の訓練セットを分析する際に、さらに、平均シフトアルゴリズムに基づきフレーム毎にセグメント位置を追跡することを特徴とする請求項９の方法。
【請求項１２】
外観に基づいて比較するステップは、さらに、
前記奥行きビデオフレームの対象固有の訓練セットのＰＣＡ分析によって、射影行列および姿勢曲線を決定し、
前記射影行列に基づいて、多次元固有空間のセット上に、前記現在の奥行きビデオフレームを射影し、
前記射影された現在の奥行きビデオフレームに基づき向きを推定する
ことを特徴とする請求項７の方法。
【請求項１３】
前記向きを推定する際に、前記現在の奥行きビデオフレームの射影と前記姿勢曲線を構成する点に基づいて、最近傍を求めることを特徴とする請求項１２の方法。
【請求項１４】
前記向きを推定する際に、前記射影された現在の奥行きビデオフレームに対応する前記姿勢曲線中の点の間で線形補間を行うことを特徴とする請求項１２の方法。
【請求項１５】
前記現在の向きの尺度を決定するステップは、さらに、
先行する奥行きビデオフレームおよび前記現在の奥行きビデオフレーム中の特徴点の間のオプティカルフローを推定して、二次元モーションフィールドを決定し、
前記二次元モーションフィールドと、前記特徴点に対応する奥行きピクセルデータに基づく奥行き拘束条件とを用いて、前記先行する奥行きビデオフレームおよび前記現在の奥行きビデオフレームの間の三次元回転パラメータおよび並進パラメータを回収し、
前記先行する奥行きビデオフレームおよび前記三次元回転パラメータおよび並進パラメータに対する向きの尺度に基づいて、前記現在の向きの尺度を累積された向きの値に設定する
ことを特徴とする請求項７の方法。
【請求項１６】
前記対象は運転者の頭部であり、前記向きは頭部姿勢であることを特徴とする請求項７の方法。
【請求項１７】
奥行きビデオ画像データを用いて対象のリアルタイムの向きの尺度を推定するためのコンピュータを機能させる命令を格納したコンピュータ可読媒体であって、
前記命令は、
前記コンピュータに対して、
リアルタイムに対象を捕捉するとともに奥行きピクセルデータを含む連続する複数の奥行きビデオフレームを入力として、前記コンピュータのプロセッサによって受けるステップと、
初期訓練期間中に奥行きビデオフレームの対象固有の訓練セットを前記コンピュータのプロセッサによって保存するステップと、
前記奥行きビデオフレームの対象固有の訓練セットを分析することによって、主要な向きを向いた対象を捕捉する前記奥行きビデオフレームの対象固有の訓練セットのフレームを特定するステップと、
現在の奥行きビデオフレームを、前記奥行きビデオフレームの対象固有の訓練セットと、外観に基づいて、前記コンピュータのプロセッサによって比較し、前記現在の奥行きビデオフレームが前記主要な向きを向いた対象を含むか否かを判定するステップと、
部分的に、前記現在の奥行きビデオフレームに対応する奥行きデータに基づく現在の向きの尺度であって、前記奥行きビデオフレームの中に捕捉された前記対象の現在の向きに対応する現在の向きの尺度を、前記コンピュータのプロセッサによって動き推定を実行することによって、決定するステップと、
前記現在の奥行きビデオフレームが前記主要な向きを向いた対象を含むと判定した場合に、前記現在の向きの尺度を、基準となる向きの尺度に、前記コンピュータのプロセッサによって初期化するステップと、
を実行させること、
を特徴とする命令を格納したコンピュータ可読媒体。
【請求項１８】
奥行きビデオ画像データを用いて対象のリアルタイムの向きの尺度を推定するシステムであって、
前記システムは、
リアルタイムに対象を捕捉するとともに奥行きピクセルデータを含む連続する複数の奥行きビデオフレームを入力として、前記コンピュータのプロセッサによって受ける手段と、
初期訓練期間中に奥行きビデオフレームの対象固有の訓練セットを前記コンピュータのプロセッサによって保存するステップと、
前記奥行きビデオフレームの対象固有の訓練セットを分析することによって、主要な向きを向いた対象を捕捉する前記奥行きビデオフレームの対象固有の訓練セットのフレームを特定する手段と、
現在の奥行きビデオフレームを、前記奥行きビデオフレームの対象固有の訓練セットと、外観に基づいて、前記コンピュータのプロセッサによって比較し、前記現在の奥行きビデオフレームが前記主要な向きを向いた対象を含むか否かを判定する手段と、
部分的に、前記現在の奥行きビデオフレームに対応する奥行きデータに基づく現在の向きの尺度であって、前記奥行きビデオフレームの中に捕捉された前記対象の現在の向きに対応する現在の向きの尺度を、前記コンピュータのプロセッサによって動き推定を実行することによって、決定する手段と、
前記現在の奥行きビデオフレームが前記主要な向きを向いた対象を含むと判定した場合に、前記現在の向きの尺度を、基準となる向きの尺度、前記コンピュータのプロセッサによって初期化する手段と
を有するシステム。
【請求項１９】
対象のリアルタイムビデオを捕捉するとともに奥行きウィンドウ内で動作するよう構成されたタイムオブフライトカメラであって、そのリアルタイムビデオはフレームのストリームを含み、各フレームはピクセル毎に色と奥行きの情報を含むハイブリッド画像データを含む、タイムオブフライトカメラと、
前記タイムオブフライトカメラから、前記リアルタイムビデオストリームを受ける入出力モジュール、
前記ハイブリッド画像データ内に含まれる前記奥行きの情報に基づいて決定され、前記対象に対応する前記画像データのセグメントを提供するセグメント化及び追跡モジュール、
訓練期間中に前記タイムオブフライトカメラによって捕捉された前記対象のビデオフレームの最初の１セットから、対応する向きの尺度を有する少なくとも１つのフレームを含む対象固有の訓練画像セットを構成する適応学習モジュール、
現在のビデオフレームを前記対象固有の訓練画像セットと比較し、前記現在のフレームに最も類似したフレームに対応する向きに基づき現在の向きを推定する外観分類装置モジュール、及び、
前記現在のビデオフレームに先行するビデオフレームと比較された前記現在のビデオフレームの奥行き情報の変化に基づいて、前記対象の三次元回転及び並進に関連付けられた少なくとも１つのパラメータを最適化することによって、前記対象の向きを推定するモーション推定モジュール
を有するコンピュータ処理システムと
を含むシステム。
【請求項２０】
前記コンピュータ処理システムは、
前記適応学習モジュールと前記外観分類装置とに接続されて、前記対象固有の訓練画像セットを保存するよう構成されたメモリモジュール
をさらに含むことを特徴とする請求項１９のシステム。
【請求項２１】
前記タイムオブフライトカメラは、車両室内に搭載されて、対象となる運転者のリアルタイムビデオを捕捉するとともに、前記コンピュータ処理システムは、前記運転者の推定向きに基づいて動作するよう構成された安全機能を有する車両安全システムの一部であることを特徴とする請求項１９のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
発明の分野
［０００１］  本発明は、一般に、リアルタイムコンピュータビジョンに関し、より詳しくは、対象の向きまたは姿勢に関するコンピュータに基づく推定に関する。
【背景技術】
【０００２】
発明の背景
［０００２］  姿勢の推定は、人間とコンピュータとのインタラクションなどリアルタイムコンピュータビジョンの多くの領域における重要な要素である。例えば、運転者をモニタリングすることにより顔面に表れる多様な手がかりを用いて頭部姿勢を判定し、関連する注意力情報を導出する研究がなされている。運転者補助システムにおいて、運転者の疲労または注意力をモニタリングすることは、安全上の懸念が生じた際に運転者に注意を喚起するために有用である。他のより一般的な人間とコンピュータとのインタラクションの応用では、表示制御、オンライン命令などのような、利用者の注意力に関する情報を必要とする作業のために、頭部姿勢の推定が重要となる。さらに、対象の向きの推定は、例えば、物体同定用や、顔面認識用などの他のマシンビジョンの応用において有用である。
【０００３】
［０００３］  （静止画像または画像シーケンスから）向きを推定することに対する従来のアプローチは、一般に２つのカテゴリに大別できる。第１のカテゴリに含まれるのは外観に基づく方法であり、この方法は、対象画像から抽出された特徴ベクトルに基づくパターン分類手法を利用する。第２のカテゴリに含まれるのは動きの推定に基づくアプローチであり、この方法は、連続画像間の動き解析手法を用いる。
【０００４】
［０００４］  外観に基づく技術は、一般に、例えば、ナイーブベイジアン分類装置（Naive Bayesian Classifier）、サポートベクトルマシン（Support Vector Machines：「ＳＶＭ」）、ニューラルネットワーク、隠れマルコフモデル（Hidden Markov Model：「ＨＭＭ」）などのようなパターン分類装置の技術を用いた画像比較に基づいている。これらの分類装置は、多くの応用分野において首尾よく用いられているが、短所がないわけではない。これらの分類装置は多数の訓練事例を必要とするものである。通常これらの事例は人手によって収集され、各事例は、対象と訓練サンプル中のモデルとの間の比較に使用可能な特徴ベクトルを抽出するために、厳密に整列させる必要がある。主として外観変化に関連して、分類が失敗する場合が常にいくつか存在する。
【０００５】
［０００５］  外観に基づく分類においては、モデルと対象の間の外観の物理的相違が、問題となる。特に、人間の顔面分類装置において、フレーム間で、すべての姿勢に対して追跡することができるとともに、さまざまな対象となる人間の顔に対して追跡することができる１セットの人間の顔の特徴を選択することは、難しい課題を提示する。顔正面と比較すると、一般的に、横顔の外観は一般集団の間で共有される目立った特徴を欠いているので、側部姿勢を判定するとき、特に難問となる。すべての人に適合する「共通の外観」を定義することは困難である。外観変化は、同一の対象について作用するときでさえ問題となりうる。例えば、サングラスをかけたり、帽子をかぶったり、ヒゲをそり落としたりするかもしれない。さらに、照明条件が、分類性能に悪影響を与える。
【０００６】
［０００６］  したがって、汎用モデルデータベースに基づいて動作する外観に基づく向きの推定システムは、通常、限られた認識性能しか達成できない。モデルと対象の間、または、異なる時間における同一の対象の間ですら、その大きな外観上の変化は、不安定な結果を導く。
【０００７】
［０００７］  もう一方の一般化された手法は、動き推定技術に基づくものである。一般に、姿勢推定のための動き推定技術は、対象の視覚的に認識可能な特徴に基づいている。例えば、一般に、人間の顔面姿勢推定は、目、鼻、口などの顔面特徴の判別に基づいている。画像におけるこの特定の特徴の判別は、それ自体困難な問題である。例えば、従来システムは、皮膚の色、動きなどの多様な知覚的手がかりに基づく全数探索を通して、シーン中の顔正面を検知する。顔面が検知されると、顔面領域は、顔面の特徴、輪郭、色、奥行き、および動きなどの関連情報を用いて追跡される。例えば、実況中継ビデオのようなリアルタイムのアプリケーションでは、特に、背景にクラッターが混入するような環境である場合には、これらの方法は、期待される性能を発揮できない。
【０００８】
［０００８］  これらの技術は、いくつかの重大な問題を有する。例えば、自動的にモデル姿勢を初期化する処理は、依然として難問である。動き推定技法の他の欠点は、角度推定値が、比較的短い画像シーケンスに対してしか正確性が担保されないことであり、長いシーケンスに対しては、角度計算過程の漸増特性によるエラー蓄積が大きくなり過ぎる。最終的に、推定角度は完全に位相がずれてしまうのである。
【０００９】
［０００９］  したがって、（１）リアルタイム画像データに基づき、（２）外観変化に対してロバストであり、かつ（３）長いシーケンスに対して、ずれることなく動作しうる向きの推定方法およびシステムが必要とされている。
【発明の開示】
【００１０】
発明の要約
［００１０］  運転者などの対象の向きを推定するコンピュータに基づく方法の一実施形態は、タイムオブフライトカメラからの奥行き画像データを用いる。本実施形態によれば、対象を捕捉している奥行き画像のフィードを受ける。奥行き画像は、画像のピクセルに対するピクセル奥行き情報を含む。画像の最初の１セットに基づいて、各画像と対応する向きの尺度との間の相関関係が決定される。前記画像のセットは、特定用途に関する前記対象の１セットの向きを表している。この相関関係は、画像と、その画像の中に捕捉された対象の向きを表す対応する向きの尺度との間の対応を提供する。その後、前記対象の画像のセットと前記相関関係は保存される。前記対象の現在の奥行き画像と保存された画像のセットとの間の外観に基づく比較がなされ、現在の奥行き画像の中に捕捉された対象の現在の向きを表す対応する向きの尺度が、前記相関関係に基づいて決定される。
【００１１】
［００１１］  一実施形態では、相関関係は、１セットの既知の向きと前記画像のセットとの間の写像を含む。他の実施形態では、前記相関関係を決定することが、前記画像のセットを分析することによって主たる向きを決定し、前記主たる向きを有する対象を捕捉する画像に対して基準となる向きの尺度を割り当て、前記主たる向き以外の向きを有する対象を捕捉する前記画像のセットの中の他の画像に対して向きの尺度を決定することを含む。この向きの尺度は、前記基準となる向きの尺度に関する前記対象の画像中の特徴点のオプティカルフローに基づいて計算される。一実施形態では、前記特徴点のオプティカルフローは、部分的に、前記画像中の特徴点に対応するピクセル奥行き情報に基づいている。
【００１２】
［００１２］  他の実施形態では、対象の外観の変化を、変化値を用いて決定する。最大変化を超過している場合に、前記相関関係は、再度、第２の画像のセットに対して決定され、新たな相関関係が保存される。その後、保存されていた画像のセットを、画像の第２のセットに置換する。このように、対象の外観が著しく変化するとき、新たな訓練セットが再記録される。
【００１３】
［００１３］  リアルタイムの向きの尺度を推定するコンピュータに基づく方法の他の実施形態は、入力として奥行きビデオフレームのフィードを用いる。奥行きビデオフレームは、リアルタイムで対象を捕捉するものであり、奥行きピクセルデータを含む。奥行きビデオフレームの対象固有の訓練セットは、初期訓練期間中に保存される。これらの対象固有のフレームのセットの中から、奥行きビデオフレームのデータを解析することによって、主要な向きを有する対象を捕捉するフレームが同定される。その後、現在の奥行きビデオフレームと保存された対象固有の訓練セットとの間の外観に基づく比較を用いて、現在のフレームが、主要な向きを有する対象を捕捉する画像のフレームであるか否かを判定する。そうであるときには、現在の向きの尺度を基準となる向きの尺度に設定し、そうでないときには、現在の向きの尺度を、現在のフレームに対応する奥行きデータに基づいて決定する。現在の向きの尺度は、現在の奥行きビデオフレームで捕捉された対象の現在の向きに対応している。
【００１４】
［００１４］  一実施形態では、システムは、タイムオブフライトカメラおよびタイムオブフライトカメラと接続されたコンピュータ処理システムを具備する。タイムオブフライトカメラは、対象のリアルタイムビデオを捕捉して、かつ奥行きウィンドウ内で動作するように構成されて、リアルタイムビデオは、各ピクセルに対する色および奥行き情報を含むハイブリッド画像データをそれぞれ有するフレームのストリームを具備する。コンピュータ処理システムは、リアルタイムビデオを受信するためにカメラと接続されて、対象の推定向きを出力するように構成されている。対象の推定向きは、対象固有の訓練画像セットを用いた現在のフレームの外観分類に基づき、かつ、またビデオストリームのフレーム間の対象の特徴点の位置変化、および対応する奥行き情報によって与えられる拘束条件を用いた、動き推定計算に基づいている。
【００１５】
［００１５］  一実施形態では、コンピュータ処理システムはいくつかのモジュールを具備する。入出力モジュールは、タイムオブフライトカメラからリアルタイムビデオストリームを受信して、かつ対象の推定向きを提供する。セグメント化および追跡モジュールは、各フレームに対するハイブリッド画像データを受信するために前記入出力モジュールと接続されて、かつ対象の画像を含むピクセルのセットに対応する画像データのセグメントを提供するように構成されている。また、このモジュールは、前記ハイブリッド画像データに含まれる奥行き情報に基づいて、画像データのセグメントを決定するように構成されている。適応学習モジュールは、ハイブリッド画像データおよび対応するセグメントを受信するために前記セグメント化および追跡モジュールに接続されている。適応学習モジュールは、訓練期間の間にタイムオブフライトカメラで捕捉された対象のビデオフレームの最初の１セットから、対象固有の訓練画像セットを作るように構成されている。この対象固有の訓練画像セットは、対応する向きの尺度を有する対象のフレームを含む。最後に、外観分類装置モジュールは、対象に対応する現在のビデオフレームの画像データのセグメントを受信するために、前記セグメント化および追跡モジュールに接続されている。また、このモジュールは、現在のビデオフレームの対象の推定向きを提供するために前記入出力モジュールにも接続されている。外観分類装置モジュールは、現在のビデオフレームを対象固有の訓練画像セットと比較して、現在のフレームと最も類似するフレームに対応する向きに基づいて、現在の向きを推定するように構成されている。
【００１６】
［００１６］  他の実施形態では、前記システムは、その中に対象画像を有する現在のビデオフレームのセグメントを受信するために、前記セグメント化および追跡モジュールに接続された動き推定モジュールをさらに具備する。また、動き推定モジュールは、現在のビデオフレーム中の対象の推定向きを提供するために、前記入出力モジュールにも接続されている。さらに、このモジュールは、現在のビデオフレームが主要な向きに対応しているという判定に関する指示を受信するために、前記外観分類装置モジュールに接続されている。動き推定モジュールは、ビデオストリームのフレーム間の対象の特徴点の位置変化、および対応する奥行き情報によって与えられる拘束条件に基づいて、現在の向きの尺度を計算するように構成されている。また、このモジュールは、現在のビデオフレームが主要な向きに対応しているという指示を受信するとき、現在の向きの尺度を基準値に再設定するように構成されている。
【００１７】
［００１７］  システムの一実施形態では、タイムオブフライトカメラは、対象運転者のリアルタイムビデオを捕捉するために、車両の室内に取り付けられる。コンピュータ処理システムは、運転者の推定向きに基づいて動作するように構成された安全機能を具備する車両安全システムの一部である。
【００１８】
［００１８］  本明細書において記述された特徴と利点は、すべて包括的であるというわけではなく、特に、多くの付加的な特徴と利点は、図面、明細書、および請求の範囲を考慮すれば、当業者にとって明らかであろう。さらに、本明細書で用いられた言語は、主に読みやすさと教示的目的に照らして選択されたものであり、発明の主題を限定し、または制限するために選択されたものではない。
【発明を実施するための最良の形態】
【００１９】
発明の詳細な説明
［００３５］  図面および以下の記述は、本発明の好適な実施形態に関するものであるが、あくまで例示に過ぎない。以下の議論を考慮すれば、本明細書に開示された構造および方法の他の実施形態は、請求の範囲に記載されている本発明の原理を逸脱することなく使用しうる実行可能な代案として容易に認識されるであろう。
【００２０】
［００３６］  ここで図（"Fig."）１Ａを参照すると、向きの推定システムの構成の一実施形態が示されている。本実施形態の向きの推定システム１００は、奥行き検出技術を用いる。奥行き検出技術は、飛行時間（time-of-flight）原理に基づいている。この技術を用いるカメラは、タイムオブフライトカメラとして知られている。本実施形態では、カメラ１０２の画像捕捉方法は、タイムオブフライトカメラを用いたアクティブ検出に基づいている。アクティブ奥行き検出は、赤外線照射のパルスを用いて実行される。パルスは対象１０４の向きに投射され、検出器が対象１０４から反射されるエコー信号を読み取る。さらに、カメラ１０２は、その信号が検出器に入射できる対象の検出範囲を制御する高速シャッタを有する。遠くの物体１０６に対しては、そのエコー信号は、シャッタが閉じられた後にのみ、カメラ１０２の検出器に達することができる。したがって、その対応する物体１０６の信号は全く記録されない（その結果、背景にある物体のほとんどは、記録されるシーンから消失する）。奥行き検出カメラ１０２のこの特徴は、奥行きウィンドウ１０８で示される動作範囲［Ｄｍｉｎ，Ｄｍａｘ］を供するという点で役立つ。奥行き情報は、この動作範囲または奥行きウィンドウ１０８内の物体（例えば対象１０４）に対してのみ記録される。奥行きウィンドウ１０８を超えた他の物体１０６は、シャッタが閉じた後に、そのエコー信号がカメラに達するため、奥行きデータを生成することはない。この独特の特徴は、撮像される対象１０４のすぐ後ろにＤｍａｘを設定することによって、背景のクラッターを除去する（すなわち、奥行きＤｍａｘを超えた所に存在する物体１０８は何であれそれを無視する）。
【００２１】
［００３７］  奥行きカメラ１０２は、一般に奥行きビデオデータと呼ばれる、ハイブリッド画像データを生成する。ハイブリッド画像データまたは奥行きビデオは、奥行きおよび色情報を、リアルタイムで同一の光軸を用いて同時に捕捉することによって生成される。画像レートは変化しうるが、システム１００の一実施形態は、毎秒１４フレームのビデオストリームで作動する。図２Ａ、図２Ｂ、および図２Ｃは、奥行きカメラ１０２からの出力フレーム２００の具体例を示す。この説明の文脈において、色情報は、「白黒」（グレースケール）データ、および一般に色データと呼ばれるもの（例えば、ＲＧＢ／カラー）を含むものとする。例えば、ここで図２Ｂを参照すると、ハイブリッド画像２００ｃの色情報部分２１０は、従来のデジタル画像と同様であり、すなわち、「色」および関連情報はピクセル毎に供される。ハイブリッド画像２００ｃの奥行き情報部分２１２は、ピクセル毎の奥行き値を含み、各ピクセルは、さらに後述するように、さまざまに異なるレベルの輝度により視覚的に表現されている。
【００２２】
［００３８］  立体視システムと比較して、奥行きカメラシステム１００は、いくつかの改良された特性を有する。例えば、画像は、屋内環境において、その環境が検出器のパルスと同一の波長の光線を含まない限り、照明不変である。すなわち、奥行き誤差は、０．５〜３ｍの奥行きウィンドウ１０８に対して約５〜１５ｍｍであり、奥行き情報は、（１ピクセルあたり８ビットの）別個の奥行き画像部分２１２に記録される。この特性は、ジェスチャー認識に利用される手と身体の間の充分な分離を可能とする。すなわち、ハイブリッド検出では、奥行き画像および色画像の両方が、リアルタイムスピード（例えば、３０フレーム／秒）で捕捉され、質感のない物体（壁など）の奥行きでさえも取得できる。これらのすべての改良された特徴および他の特徴は、マルチカメラ立体視システムとは対照的に、単一のカメラシステム１００で供される。また、単一のカメラシステム１００は、従来の立体視マルチカメラシステムの２つ以上のカメラの間で必要なキャリブレーションが不要であるという追加的な利点を提供するものでもある。
【００２３】
［００３９］  上述のように、図１Ａで示された姿勢推定システム１００は、例えば、イスラエルのヨクネアムにある３ＤＶシステムズ（3DV Systems）、またはカリフォルニア州サンノゼにあるカネスタ社（Canesta, Inc.）によって製造されたカメラなどのような１つのタイムオブフライトカメラ１０２を具備する。タイムオブフライトカメラ１０２は、追跡される対象１０４が移動する領域を含む奥行きウィンドウ１０８の向きに設定される。背景物体のような非対象物体１０６は、奥行き画像情報の一部をなさない。奥行き検出カメラ１０２は、コンピュータ１１０に接続されている。一実施形態では、コンピュータ１１０は、例えば、カリフォルニア州サンタクララのインテル社（Intel Corporation）から市販されているインテルの画像処理ライブラリのような画像処理ライブラリを含んでおり、インテル社の１．２ギガヘルツＰｅｎｔｉｕｍ  ＩＩＩプロセッサ上で１４フレーム／秒（３２０×２４０ピクセル）で稼動する。他の実施形態では、奥行き検出カメラ１０２は、ロボット視覚装置の一部をなし、コンピュータ１１０は、ロボットの制御論理回路内のモジュールである。さらに他の実施形態では、例えば、運転者支援機能等の車両安全機能を制御する車両内のデータ処理制御装置のコンピュータ１１０に接続された車両室内に奥行き検出カメラ１０２を備える。このように、一般に、コンピュータ１１０は、マイクロチップコントローラ、埋め込みプロセッサなどのようなものから、ワークステーション、またはパーソナルコンピュータ型のシステムにいたる任意のデータ処理可能なシステムを含む。
【００２４】
［００４０］  コンピュータ１１０は、ハードウェア回路、メモリまたは他の何らかのコンピュータ読み込み可能媒体に保存されて、コンピュータプロセッサ（汎用プロセッサ、埋め込みプロセッサ、デジタル信号処理装置など）で実行処理されるソフトウェアコード、または、ハードウェア回路とソフトウェアコードの組み合わせを用いて実現することができる、いくつかのモジュールを具備する。図１Ｂは、向きの推定用コンピュータの一実施形態のブロック図を示す。本実施形態によれば、セグメント化および追跡モジュール１１２は、入出力ポート１１１を介して奥行き検出カメラから画像データを受信する。カメラの特定のタイプまたは型式に固有の、カメラとの接続用ドライバを具備するものとすることができる。セグメント化および追跡モジュール１１２は、画像データ内のどのピクセルが対象１０４に対応しているかを判定するためのアルゴリズムを具備している。特に、モジュールの追跡セクションは、対象１０４に対応する領域、およびその領域がフレーム毎にどのように移動するかを、画像内で視覚的に表示することができる出力を生成する（例えば、対象を囲む長円またはウィンドウ）。一実施形態では、また、セグメント化および追跡モジュール１１２は、サイズ推定モジュール１１４を具備する。サイズ推定モジュール１１４は、対象１０４の形状に固有のサイズデータを提供して、画像中の対象１０４のセグメント化および追跡を容易にする。セグメント化および追跡モジュール１１２は、適応学習モジュール１１６に接続されている。適応学習モジュール１１６は、対応する向きの値を有する訓練画像セットを捕捉するためのアルゴリズムを具備している。一実施形態では、向きの値は入力として与えられるが、他の実施形態では、向きの値は画像データから導出される。適応学習モジュール１１６は、訓練画像セットを保存するために、メモリ１１８（例えば、ビデオデータベース）に接続されている。一実施形態では、適応学習モジュール１１６は、最も出現頻度の高い姿勢に対応する画像データのフレームを決定するために、主要姿勢推定器１１９を具備する。また、適応学習モジュール１１６は、外観分類装置モジュール１２０、および動き推定モジュール１３０に接続されている。
【００２５】
［００４１］  外観分類装置モジュール１２０は、セグメント化および追跡モジュール１１２から入力を受信して、かつメモリ１１８にアクセスを有する。通常動作中、外観分類装置モジュール１２０は、入力画像を保存された訓練セット中の画像と比較して、保存された訓練セットの既知の姿勢に基づいて向きを判定する。一実施形態では、外観分類装置１２０は、動き推定モジュール１３０に接続されている。動き推定モジュール１３０は、セグメント化および追跡モジュール１１２から入力を受信して、画像間で追跡された特徴に基づいて対象１０４の向きを判定する。動き推定モジュール１３０は、適応学習モジュール１１６に接続されており、訓練画像セットに対する向きの値を堤供する。通常動作中、本実施形態では、動き推定モジュール１３０は、外観分類装置１２０から入力を受信して、さらに後述するような再設定条件を表示する。外観分類装置１２０および動き推定モジュール１３０は、入出力ポート１１１に接続されて、向きの推定システム１００内の他の構成要素に、または向きの推定システム１００と接続している他の構成要素に向きの値を提供することができる。
【００２６】
［００４２］  図３Ａは、向きの推定システムの一実施形態の動作方法のフローチャートを示す。本実施形態では、向きの推定方法３００は、奥行き検出ビデオ入力などの奥行きデータを含む１セットのハイブリッド画像またはハイブリッド画像ストリームに対して動作する。システムに奥行き画像データの入力３０１がなされる。その向きを推定する対象に対応する画像のピクセルの位置を判定するために、画像セグメント化および追跡３０３が実行される。方法３００は２つのモードで動作する。進み方を選択するために、モード決定３０５がなされる。例えば、方法３００は、最初に、一定の訓練期間の間、訓練モードで動作する。この訓練期間は、時間、フレーム数、選択可能な指標などに基づいて決定することができる。
【００２７】
［００４３］  訓練モード３１０で動作中、現在のフレームが記録または保存される３１２。前記モード決定に基づいて、方法は、現在のフレームが記録されるべき最後の訓練フレームであるか否かの判定３１４を行う。例えば、最大数のフレームの最後のフレーム、または訓練期間内の最後のフレーム、または特定数の姿勢に対して必要とされる最後のフレームなどである。その後、方法は、訓練フレームが姿勢／向き情報を含むか否かのチェック３１６を行う。向きがわかる場合、例えば、対象が各フレームに対して所定の姿勢に配置されているとき、姿勢曲線を導出するために、保存されたフレームの分析が実行される３１８。向きがわからない場合、主要姿勢が決定されて３２０、各訓練フレームに対する向きの値を決定する３２２ためにフレームが最初から最後まで繰り返される。向きが判明すると、推定プロセスの間使用される姿勢曲線を導出するため、前記同様の分析が実行される３１８。
【００２８】
［００４４］  訓練モードが完了して、例えば、姿勢曲線が計算された後に、モード変更フラグが設定されると、後続のフレームに対するモードのチェック３０５のときに、方法は推定モード３４０に進む。推定モード３４０では、分類装置に基づく姿勢を決定するために、現在のフレームが、保存された訓練セットと比較される３４２。現在のフレームに対する姿勢が出力される３４４。
【００２９】
［００４５］  ここで図３Ｂを参照すると、動きに基づくアプローチを用いた他の実施形態が示されている。分類３４２は、現在のフレームが主要姿勢に対応しているか否かを判定する３５１ために十分な情報を提供する。現在のフレームが主要姿勢に対応していないとき、現在の姿勢の累積に基づく向きが決定される３５５。現在の姿勢が主要姿勢に対応しているとき、向きの値は、基準となる向きの値に再設定される３５３。現在のフレームに対する向きの値が出力されて３４４、次のフレームが処理される。
【００３０】
セグメント化および追跡
［００４６］  対象の静止画または動画（すなわち、画像または画像ストリーム）に基づき、対象の向きまたは姿勢を推定するために、準備作業として画像内の対象の位置を判定する。運転者の頭部姿勢、例えば、運転者が前方を見ているのか横を向いているのか、を判定するために、車両室内の運転者領域について撮影された画像に基づいて、画像内の運転者の頭部を見つけるために、画像を分析する必要がある。どのピクセルが対象１０４に対応するかを判定する画像処理は、画像のセグメント化と呼ばれる。セグメント化プロセスは、対象１０４を表す画像内の「セグメント」を見つける。さらに、向きの推定が、フレームまたは画像のストリームについて実行されるとき、対象の位置はフレーム間で変化しうる。したがって、対象１０４に対応する画像内の「セグメント」は、向き変化を決定するために、フレームを跨いで追跡する必要がある。このプロセスを追跡（tracking）と呼ぶ。リアルタイムの姿勢または向きの推定システムのために、これら両プロセスが（例えば、セグメント化および追跡モジュール１１２において）迅速に実行されるため、シンプルで高速な計算が好ましい。
【００３１】
［００４７］  再び図２Ａを参照すると、異なった位置での運転者の奥行き画像が示されている。奥行き画像２００ａでは、対象２０１（例えば、運転者）は、画像２００ａの中心で頭部２０３をまっすぐにした（例えば、運転中）標準位置で示されている。奥行き画像２００ｂでは、対象２０１は、側方に傾いた、例えば、小物入れに手を伸ばした状態で示されており、頭部２０３が画像２００ｂの左側に位置している。一般に、奥行き画像２００は、上述したように動作する奥行き検出カメラによって捕捉された画像である。従来のデジタル画像情報に加えて、奥行き画像２００は、各ピクセルに対する奥行き情報を含む。奥行き情報は、奥行き値にしたがってピクセル強度または輝度を変化させることで視覚的に表現される。図２Ａ、図２Ｂ、および図２Ｃの奥行き画像２００に示すように、カメラにより近い物体に対するピクセルほど明るく見え、奥行き値が大きくなるとともに次第に暗くなり、カメラの最大作動奥行き（または距離）にある、またはそれを超えた所に位置する物体に対するピクセルは黒色で示される。
【００３２】
［００４８］  画像のセグメント化および追跡処理に関して奥行き情報を用いる利点は、カメラからの距離に基づく画像データのフィルタリングが可能となる点である。したがって、カメラから対象までのおおよその距離がわかっていれば、背景／クラッター情報を除去できるのでセグメント化および追跡処理を簡略化できる。実際に、図１Ａに関して上述したように、いくつかの奥行きカメラは、奥行き動作範囲を設定するための「奥行きウィンドウ」機能を有する。一般に、奥行きウィンドウは、カメラが奥行き情報を捕捉、または検出する特定の奥行き範囲である。例えば、図２Ａに示すように、運転者姿勢推定システム用の奥行きカメラは、例えば、バックミラーの下方、前部ダッシュボードなど、車室前部（front cabin）に取り付けることができる。ハンドル部位２０４から運転席２０５までの範囲の奥行きウィンドウにカメラを設定できる。このように設定することで、所望の対象の画像を乱すだけである無関係な情報を捕捉することを回避できる。この具体例では、後部座席の乗客に関連する画像クラッター情報は捕捉されず、その結果、画像のセグメント化および追跡処理が簡単になる。図２Ａでは、背景２０６は、黒色で表示されており、それらのピクセルは、いかなる物体の奥行き画像情報も含んでいない、すなわち、奥行きウィンドウ内に、それらのピクセルによって捕捉される物体が全く存在しなかったことを示す。
【００３３】
［００４９］  ここで図２Ｂを参照すると、対応する色および奥行きデータのビジュアル表現を有する奥行き画像が示されている。奥行き画像２００ｃは、色情報部分２１０および奥行き情報部分２１２を含む。さらに、奥行き画像２００ｃの中央の垂直な断面に沿ったピクセル−奥行き分布のプロットを表現するピクセル−奥行きグラフ２１４が示されている。一実施形態によるシンプルなセグメンテーション法は、この奥行き−ピクセルデータを用いて、画像フレーム内の対象２０１の概略的な位置を決定する。その方法は、水平走査線２１４に沿って、一定の奥行き閾値を超えるピクセル数を計数することによって、画像を分割する。対象の概略形状およびサイズがわかっている場合には、シンプルな代替方法は、対象２０１の形状を画定する１セットのピクセルを見つけるために、水平および垂直走査線の両方において計数することを含む。
【００３４】
［００５０］  他の実施形態に、フレーム中の対象２０１を位置付けし、フレーム間の対象２０１の位置変化を追跡するために、輪郭フィッティング追跡手法（contour fitting tracking technique）を用いて行うものがある。図２Ａでは、そのような追跡手法の出力を示す。運転者の頭部２０３は、運転者の頭部２０３に対応すると推定される奥行き画像２００のセクションを覆う楕円２０７に適合する楕円フィッティング関数を用いて追跡される。対象となる頭部が他人の頭部と混同されやすいような場合に、人間の頭部を追跡するために楕円フィッティングは特に適する。 
【００３５】
［００５１］  図２Ｃは、奥行き画像２００を用いた追跡機構の他の実施形態を示す。図２Ｃでは、平均シフトアルゴリズムに基づくシステムの出力が示されている。平均シフトアルゴリズムは、奥行き画像２００ｄ内の対象２０１の位置を判定するために用いられる。本実施形態では、対象２０１は人間の頭部である。開始ウィンドウ２２０は、対象２０１の近傍に無作為に設定される。その後、アルゴリズムは、第１の反復ウィンドウ２２２を対象のより近くに位置決めして、最後のウィンドウ２２４が、対象２０１を実質的に含むまでアルゴリズムを繰返す。
【００３６】
［００５２］  追跡システムのこの平均シフトに基づく実施形態では、背景２０６から検出されたノイズピクセルは、対象２０１に対応するピクセルより低いピクセル奥行き値を有する。平均シフトアルゴリズムの特性は、ウィンドウ２２４の最終位置が、重心および幾何学的中心が互いに一致する画像領域に決まるということである。平均シフトアルゴリズムの動作の詳細ついては、ComaniciuおよびMeer著「平均シフト：特徴空間解析に関するロバストアプローチ（Mean shift: a Robust Approach Toward Feature Space Analysis）」（IEEE Transactions of PAMI 24, No. 5, pp. 1-18, May 2002）に記載されている。平均シフトアルゴリズムは、出力ウィンドウ２２４の位置を移動させる奥行き画像２００に適応的に適用できる。２つの中心が一致しないとき、平均シフトアルゴリズムは、重心上にウィンドウの中心を置いて（ウィンドウ２２２）、次の反復を開始する。平均シフトアルゴリズムのオペレーションに基づく追跡システムは、顔面が前後に移動する場合の画像ストリームの顔面位置の追跡に特に適する。
【００３７】
［００５３］  他の実施形態に対して、カルマンフィルタまたはガウス混合モデル（Gaussian Mixture Model：「ＧＭＭ」）が、画像内の対象の概略的な位置に対する一般的な推定および予測ツールとして機能する他の代替方法である。
【００３８】
対象サイズ推定
［００５４］  一実施形態では、セグメント化および追跡モジュールは、特定の対象の形状に関連するサイズ情報を提供するために、サイズ推定モジュールを具備する。例えば、顔面姿勢推定システムでは、例えば、対象顔面上にウィンドウの位置を決めるために平均シフトアルゴリズムを用いて、顔面の概略的な位置が画像内に見出されると、空間統計を用いて適応的に顔面サイズを計算できる。例えば、システムの実験的な実施形態に基づく観測結果は、顔面のサイズが共分散行列の固有ベクトルの２つの直交方向の標準偏差の約４倍であることを示す。したがって、本実施形態を実現する１つのアプローチは、以下の計算からなる。
１．  顔面位置の分布：
0004546956.tif 000002
ここでｆ（ｉ，ｊ）はピクセル値である。
２．  顔面平均位置：
0004546956.tif 000003
３．  顔面位置の共分散：
0004546956.tif 000004
４．  共分散行列の固有分解：
0004546956.tif 000005
５．  顔面サイズ推定：
長さａ＝４σ1、およびｂ＝４σ2
係数値の４は、実験結果に基づいて選択されるが、合理的な選択肢である任意の係数（一般に４〜６）を用いることができる。システムの一実施形態のガウス分布に関する係数間の一般的な関係は、人間の頭部の一般的な形状による楕円関数に基づいている。他の対象形状への応用に対して、同様の関係を用いることができる。実験結果は、特定形状に適用可能な係数間の合理的な関係の範囲を提供することができる。
【００３９】
適応型対象学習
［００５５］  向き決定用システムの他の態様は、対象の姿勢または向き変化の適応学習を含む。本実施形態のシステムは、初期設定期間の間のリアルタイムで捕捉された実際の対象の訓練画像を用いる。その後、何らかの対象に依存しない一般化されたデータベースを用いる代わりに、被写体および環境固有ライブラリに基づいて動作するような分類装置が用いられる。例えば、隠れマルコフモデル（Hidden Markov Model：ＨＭＭ）に基づく顔面姿勢分類装置は、適応学習される対象固有の訓練セットを用いて、構成要素的な人間の顔面構成をモデル化するために用いられる。このアプローチの１つの利点は、データベースに保存された一般化された対象に関して、対象の外観変化または環境の相違が、性能に影響を及ぼさないことである。例えば、複数の人間についてシステムが作動するとき、同じ量の訓練データを用いた場合、人間依存型の実施形態は、一般化された対象モデルより性能が優れていることが一般的に観察される。
【００４０】
［００５６］  一実施形態では、対象の適応学習は、ビデオデータ捕捉、初期設定または訓練期間の早期に実行される。この最初のビデオは、特定の環境における特定の対象の訓練フレームのセットを収集するために用いられて、他方、ビデオの残存部分に対して、学習された対象固有の特徴が、対象の向きまたは姿勢推定のために繰り返し用いられる。このように、対象固有の状況および現場の状況（照明など）が、訓練セットに組み入れられて、外観に基づく比較における「ノイズ」の発生源として除去されうる。最小の所要時間を超えている応用に対する他の実施形態では、セッション（訓練期間）の初期の間の欠落した分類結果は、性能に不利益な影響を及ぼさない。代わりに、付加的な訓練事例が、必要に応じて動作中に、主成分還元分析（principal component reduction analysis：「ＰＣＡ」）を介して適応的に抽出される。
【００４１】
［００５７］  訓練セットを構成するために用いられる適応型対象学習システムの一実施形態は、ＰＣＡ分析に基づいている。一実施形態では、ＰＣＡに基づく対象学習システムは、人間の顔面姿勢推定システムに用いられる。片側の横顔からもう片側の横顔にいたる顔面画像は、姿勢抽出に使用できる姿勢固有空間を形成することが知られている。図４Ａおよび図４Ｂは、この顔面姿勢固有空間関係を図示する。図４Ａは、正面姿勢４０５から、左の横顔４０１を経て、右の横顔４０３までの完全な１周期の対象頭部回転を捕捉する、２００フレームのセットに対するＰＣＡ射影曲線４００を示す。図４Ｂは、頭部姿勢曲線４１０におけるＰＣＡ射影の異なった表現を示す。頭部姿勢曲線４１０は、姿勢角度によってパラメータ化されており、かつ最初の２つの固有ベクトルへの射影から形成されている。円４１２は訓練観測結果の射影であり、クロス４１４は多様な頭部姿勢を有する画像シーケンスの中の他の観測結果の射影である。円のサイズは横向きの度合を表し、より大きい円は、より大きい横回転、または、より高い度合を意味している。
【００４２】
［００５８］  以下のＰＣＡ処理手順は、本発明の一実施形態による姿勢固有空間の計算の具体例である。
・ｍ次元の列ベクトルｘを定義する。ここで、ｍ＝ｐ×ｑ、およびｐ、ｑは顔面画像サイズである。
・顔面画像の列から観測ベクトル｛ｘ1，ｘ2，…，ｘn｝を形成する。
・以下の式に基づいて、平均ｕおよび共分散行列Σを計算する。
0004546956.tif 000006
・最初の最大Ｋ個の固有値λj、および共分散行列Σの対応する固有ベクトルφj（ｊ＝１，２，…，Ｋ）を計算する。
0004546956.tif 000007
・任意の画像ベクトルｘに対して、そのＫ次元射影係数ベクトルは以下の式によって計算される。
0004546956.tif 000008
【００４３】
［００５９］  別言すれば、一実施形態において、このＰＣＡ処理手順は、訓練セットを抽出するため、射影行列および図４Ｂに示すような頭部姿勢曲線４１０を導出するために用いられる。この訓練アルゴリズムは、既知の姿勢角度（一定範囲の角度内に分布する）を有するＭ個の訓練観測値｛ｘ1，ｘ2，…，ｘM｝に基づき、ここで、各観測画像ｘiは、長さＮ＝Ｋ×Ｌを有する列ベクトルで表現される。訓練アルゴリズムは以下のステップを含む。
ａ．ステップ１：平均ベクトルおよび共分散行列を構成する。
0004546956.tif 000009
・ステップ２：ＰＣＡ分析を実行する。
0004546956.tif 000010
ここで、Ｃの最大Ｐ個の固有値に対応する最初のＰ個の固有ベクトルが、固有空間の最適線形近似値として選択される。
・ステップ３：姿勢曲線を推定する。
各観測値ｘiに対して、その各々をＰ次元の固有空間に射影することができ、すなわち、
0004546956.tif 000011
となる。したがって、頭部姿勢曲線４１０は、これらのｗi（ｉ＝１，…，ｎ）を結ぶことによって形成され、ここで、ｎは後続の推定段階において用いられるべき顔面姿勢の個数である。
【００４４】
［００６０］  上述のプロセスは、例えば、頭部姿勢曲線４１０に関連して、後続の姿勢推定で使用するために、データベースに記録されうる１セットの対象固有画像を与える。しかしながら、このプロセスは、既知の姿勢または向きを有する対象固有の画像の取得を必要とする。例えば、訓練期間中、対象は、向きの一方の端から他方の端までの完全な１周期の回転をする。一実施形態では、システムの初期設定の間にカメラ正面で、頭部を左から右まで回転するよう人に指示することによって、これを実行できるであろう。
【００４５】
［００６１］  この向きまたは姿勢の初期設定要件を回避するために、大部分の時間に対して対象が一定の姿勢を保持することを要求する応用例では、他の適応学習の実施形態が用いられている。この一定の姿勢は、主要姿勢または基準となる向きと呼ばれる。本実施形態によれば、主要姿勢は最初に判定される。主要姿勢の検出は、対象が大半の時間を特定の姿勢で過ごすという観測結果に基づいている。例えば、運転者は、通常の運転状況の間、大半の時間を、横向きよりも、前方を見る、すなわち正面姿勢で過ごす。したがって、運転者頭部姿勢判定システムでは、正面姿勢が最初に判定される。他の応用例では、主要姿勢が異なるかもしれない。
【００４６】
［００６２］  主要姿勢を判定するために、比較的長い（例えば、９００フレーム）訓練セッションが用いられる。この訓練セッションの間に記録される最も出現頻度の高い姿勢が、主要姿勢であると仮定される。運転者の頭部姿勢追跡の実施形態では、最も出現頻度の高い姿勢は、正面姿勢であると仮定される。すべての人々が前方をまっすぐ見ながら運転するというわけではなく、わずかに片側または反対側を向いた姿勢が、主要姿勢でありうる。システムは、主要な、または最も出現頻度の高い姿勢を基準とした姿勢の変化を、例えば、注意力の信号として測定するため、このわずかな変化は、システムの性能に影響を及ぼさない。記録された訓練画像セットにおいて、最も出現頻度の高い姿勢を判定する一方法は、頭部姿勢確率密度関数（probability density function：「ＰＤＦ」）に基づいている。ＰＤＦは、図４Ｃに示すようなＰａｒｚｅｎウィンドウアプローチに基づいて推定される。図４Ｃでは、関連するフレームに基づく姿勢の分布が示されている。平均４２０ａは、フレームによって形成された三次元空間の最大値である。また、対応する主要姿勢４２０ｂが示されている。Ｐａｒｚｅｎウィンドウアプローチの詳細については、Duda他著「パターン分類（Pattern Classification）」（John Wiley & Sons, Inc., 2001）に記載されている。
【００４７】
［００６３］  正面頭部姿勢４２０ｂは、以下のように、訓練期間に無作為に撮影されたビデオ画像フレームから、顔面画像分布のＰＤＦの最頻値として検出される。
・画像フレームのＰＣＡ分析を実行する。
・Ｐａｒｚｅｎウィンドウアプローチを用いて、ＰＤＦを推定する。
・ＰＤＦの最頻値として主要な頭部姿勢を求める。
・その姿勢が、一定のフレーム数に対して主要姿勢としてあり続けるとき、正面頭部姿勢が検出される。
【００４８】
［００６４］  この処理手順は、上述したように構成された頭部姿勢曲線４１０の下端に対応する画像の選択と同様である。曲線４１０の下端に対応する画像は、運転者頭部姿勢推定システムにおける対象の正面姿勢の画像である。
【００４９】
３次元動きの復元
［００６５］  向き検出システムの他の態様には、奥行き画像データに基づく三次元の回転推定がある。二次元（「２Ｄ」）オプティカルフローから三次元（「３Ｄ」）の動きを復元することは、本質的に曖昧な作業である。図５を参照すると、一般化されたオプティカルフロー図が、この問題を説明するために示されている。説明のために、対象５０１を人間の頭部と仮定するが、それは任意の剛性物体でありうる。人間が動き回るとき、対象５０１の各点５０３は、第１の位置Ａから第２の位置Ｂまで移動する。画像シーケンスの第１のフレームは、位置Ａの点５０３に対応しており、後続のフレームは、位置Ｂの点５０３に対応している。画像データから得られる２Ｄオプティカルフロー５０５からのこのような画像シーケンスから、３Ｄ頭部動き推定を確定することは、曖昧性という問題を提示する。遠い距離における位置Ａから位置Ｂまでの対象５０１の回転は、位置Ａから位置Ｂ’までの像平面に平行な並進運動によって生じるものと同様の２次元フロー場を生じる。したがって、３Ｄ動き推定は、回転および並進の選択肢を判別することができない。この曖昧性の問題に対処するために、奥行きに基づくオプティカルフロー分析法の一実施形態は、シーケンス中の２つの奥行き画像の間の奥行き変化に基づいて、並進または回転の２つの選択肢の内の１つを除去するための奥行き情報の拘束条件を有する。
【００５０】
［００６６］  したがって、本実施形態の相対動き推定は、画像シーケンスＩtから回転角Ｅt＝｛αt，βt，γt｝での対象の向きを導出する。システムは、ｔ＝０において主要姿勢または基準となる向きで初期化される。主要姿勢は上述したように決定される。この初期時間では、初期の回転角は０（フレームＩ0における基準となる向き）に設定される。例えば、運転者頭部姿勢推定システムでは、正面姿勢は、ｔ＝０において初期の０度の向きに対応している。収集されたＭ個のフレームの各々に対応するＥtによって与えられる既知の向きを有する対象のＭ個の基準画像｛ｘ1，ｘ2，…，ｘM｝のセットを収集するために、次のプロセスが使用される。
【００５１】
［００６７］  最初に、２Ｄオプティカルフロー５０５（ｕi，ｖi）が、画像データから推定される。２つの連続したフレーム（Ｉt-1およびＩt）の間のターゲット領域（「テクスチャーウィンドウ（textured window）」）の疎らな動き場は、Ｔｏｍａｓｉ−Ｋａｎａｄｅアルゴリズムを用いて推定される。このアルゴリズムの詳細については、TomasiおよびKanade著「点特徴の検出および追跡（Detection and Tracking of Point Features）」（Carnegie Mellon University Tech. Report CMU-CS-91-132, April 1991）を参照すること。
【００５２】
［００６８］  次に、２つの連続したフレームの間の回転（Ｒt＝｛Δα，Δβ，Δγ｝）および並進パラメータが、２Ｄ動き場および奥行き画像データから導出された奥行き拘束条件を用いて推定される。この３Ｄ動き推定方法は、以下に記述する。
【００５３】
［００６９］  （Ｔｘ，Ｔｙ，Ｔｚ，α，β，γ）で定義された（ｘ，ｙ，ｚ）における３Ｄ微小動きは、像平面上に２Ｄ動きオプティカルフロー（Δｘ，Δｙ）を生じさせる。これらは以下のように関係づけられる（Ｆは、奥行きカメラ２０２の焦点長である）。
0004546956.tif 000012
既知の変数は以下の通りである。
（ｘ，ｙ）：オプティカルフロー点の位置
（ｕ，ｖ）：オプティカルフロー
Ｆ：カメラ焦点長
Ｚ：奥行き画像から得られる奥行き
未知の変数は以下の通りである。
（ＴX，ＴY,ＴZ）：３Ｄ動きの並進
（α，β，γ）：３Ｄ動きの回転角
【００５４】
［００７０］  上の等式を以下のようにしてＨｘ＝ｂと表記できる。
0004546956.tif 000013
ここで、ｂは、ある特定の特徴点に対する２Ｄ動きベクトルである。
【００５５】
［００７１］  この等式を用いて、以下のように３Ｄ頭部動きを復元するための最適基準を構成できる。
0004546956.tif 000014
ここで、Ｎは追跡される特徴点の個数である。Ｈ（ｉ）およびｂ（ｉ）は、ｉ番目の特徴点によって形成される。ｆ（ｘ）はコスト関数である。実験的に、ｆ（ｘ）＝｜ｘ｜を用いた最小絶対値法は、ｆ（ｘ）＝ｘ２を用いた最小二乗法より安定した解を与える。
【００５６】
［００７２］  最小絶対値法の非線形最適化問題に対して、ＮｅｌｄｅｒおよびＭｅａｄのシンプレックスサーチが用いられる。Ｎｅｌｄｅｒ−Ｍｅａｄのシンプレックスサーチの詳細については、NelderおよびMead著「関数最小化のためのシンプレックス法（A Simplex Method for Function Minimization）」（Computer Journal, vol. 7, pp. 308-313, 1965）を参照すること。この文献では、６次元パラメータ空間において７個の点を選択することによって、初期シンプレックスを定義する。そして鏡像、収縮、および拡張と呼ばれる３つの操作が、構成シンプレックスに基づいて初期シンプレックスに適用される。変化が十分小さいとき、反復は終了する。本実施形態は、頭部追跡システムに関して記述してきたが、同一の原理は、物体の追跡全般に適合する。
【００５７】
［００７３］  ここで図６Ａを参照すると、運転者頭部姿勢推定システムに対するサンプル画像が示されている。対象頭部は、正面姿勢で示されている。画像２００では、１０個の特徴点６０１ａ−６０１ｊ（総じて６０１）が、オプティカルフロー分析の基礎として機能しうる顔面の顕著な特徴から選択される。図６Ｂは、対象に対するハイブリッドデータ（色および奥行き）を有する奥行きカメラフィードからのフレームを示す。ハイブリッド奥行きフレーム２００ｄの両方の部分（２１０および２１２）では、Ｎ個の点６０１のセットが、オプティカルフロー分析のために表示されている。図６Ａと比較すると、図６Ｂで示された特徴点６０１の個数が多いほど、推定器の精度は高くなる。しかしながら、より高い精度は、処理時間の犠牲の上に成り立つ。したがって、時間応答と個々の用途に要求される精度の間のバランスが、特徴点６０１の最適個数を決定する。
【００５８】
［００７４］  最初の訓練期間の間に、Ｍ個のフレームが収集されるとき、対応する向きが、ｘ1に対する最初の基準となる向きＩ0≡Ｅ0＝（０，０，０）から始まる各フレームを有する回転角における単純な増分値としての回転量の増分を用いて以下のように計算される。
Ｅt＝Ｅt-1＋Ｒt
ｔ＝ｔ＋１
【００５９】
［００７５］  対応する向き｛Ｅ1，Ｅ2，…，ＥM｝を有する、Ｍ個の訓練サンプルフレーム｛ｘ1，ｘ2，…，ｘM｝のセットＳが収集されると、上述した適応型被写体学習処理手順が、対応する向きを有する姿勢画像の被写体固有のデータベースのセットを導出するために実行されうる。−７５度から７５度までの範囲で１５度毎の角度変化を有する姿勢画像が収集されたサンプル訓練セットが、図７で示されている。図８は、対象がＹ軸を中心に頭部を−７５度から＋７５度まで回転させるときの３００フレームのビデオストリームのプロットを、３つの空間次元（ｘ，ｙ，ｚ）の対応する回転角または向きと共に示す。
【００６０】
向きの推定
［００７６］  対応する向きの値を有する被写体固有の画像データベースが決定されると、いくつかのリアルタイムの向きの推定の実施形態を用いることができる。
【００６１】
［００７７］  一実施形態では、姿勢推定システムは、追跡されるｎ個の異なった姿勢を有するｎ個の訓練フレームｗi（ｉ＝１，…，ｎ）のセットに基づいている。システムの分解能はｎであり、すなわち、入力はｎ個の異なった姿勢の内の１つに分類される。３姿勢システムに対する１つのサンプル訓練データベースが、図９に示されている。このデータベースは、３つの姿勢９０２ａ〜９０２ｃの各々に対して、５つのサンプルフレーム９０１ａ〜９０１ｏを有する。フレーム９０１における、いくらかの変化を考慮に入れるために、すなわち、システム所定の姿勢９０２（すなわち、左、中央、右）各々に、観測されたさまざまな対象姿勢を提供するために、同一姿勢９０２について数個のフレーム９０１が具備される。新たなフレーム（観測結果）を受け取ると、そのフレームは訓練画像と比較されて、その結果として得られる姿勢は、候補である保存された３つの所定の姿勢（９０２ａ、９０２ｂ、または９０２ｃ）の中で、現在の画像フレーム（観測結果ｙ）の姿勢に最も近いものになる。
【００６２】
［００７８］  運転者顔面姿勢推定システムの一実施形態では、隠れマルコフモデル（Hidden Markov Model：「ＨＭＭ」）に基づく分類装置が使用される。すでに、顔認識に対してＨＭＭが用いられている。このアプローチは、人間の顔面が特有の上下構造形状を示す事実に基づいている。埋め込みＨＭＭが、人間の顔面の水平構造をモデル化するために提案されている。ＨＭＭに基づく方法は、像平面の内外における小さい回転に対する、それらの部分的不変性のために、比較的ロバストである。したがって、穏やかな顔面姿勢分類装置を有するために、ＨＭＭ分類装置に基づく以下の処理手順が、一実施形態において用いられる。
【００６３】
［００７９］  最初に、先に決定されたＰＣＡ射影係数曲線における最小点を特定する。その後、この点の周囲５つの顔面フレーム９０１ｋ〜９０１ｏが、右向き姿勢９０２ｃ訓練事例（図９の最下列）として選択される。同様に、ＰＣＡ射影係数曲線における最大点を求めて、その周囲の５つの顔面フレーム９０１ａ〜９０１ｅが、左向き姿勢９０２ａ訓練事例（図９の最上列）として選択される。ＰＣＡ射影係数曲線における値がゼロの点近傍で選択された５つの顔面フレーム９０１ｆ〜９０１ｊが、正面向き姿勢９０２ｂ訓練事例として用いられる。
【００６４】
［００８０］  訓練事例が決定されると、左向き、正面向き、および右向きの顔に対する３つのＨＭＭモデルが、独立に訓練される。新たに入力された顔面姿勢の分類は、Ｖｉｔｅｒｂｉアルゴリズムを用いた顔面の尤度に基づいている。最も高い尤度を有するモデルが、新たな顔面の姿勢である。また、観測ベクトルシーケンス抽出法を用いることもできる。
【００６５】
0004546956.tif 000015
【００６６】
［００８２］  さらに、向きの推定システムの他の実施形態は、上述の適応学習プロセスに基づいている。本実施形態は、上述した３Ｄ動き推定に基づいて回転角のセットＥt＝｛αt，βt，γt｝を提供する。このプロセスが有する１つの問題は、計算過程の増加特性によるエラー蓄積であり、すなわち、フレームの最終的角度推定が、前のフレームからの角度推定に関する小さい角度量の加算に基づいていることである。短いシーケンスまたはビデオストリームの間では、エラー蓄積は問題とならない。しかしながら、より長いシーケンス（例えば、９００フレーム）の間では、向きの推定値は、著しいずれを生じうる。このずれの問題を克服するために、主要姿勢が検出される毎に、角度が再設定される。
【００６７】
［００８３］  本実施形態によれば、現在のフレームの姿勢が、主要姿勢（すなわち、基準となる向き）に対応するか否かを決定するために、任意の上述の外観に基づく手法が、各フレームＩtに適用される。現在のフレームの姿勢が、主要姿勢であると決定されるとき、向きの推定値が、基準値、例えば、Ｅt＝｛０，０，０｝に設定される。そうでなければ、相対的な回転Ｒt＝｛Δα，Δβ，Δγ｝は、上述したように推定される。その後、向きの推定値は、Ｅt＝Ｅt-1＋Ｒtのように更新される。
【００６８】
［００８４］  一般に、本実施形態は、セッションの間、（適応学習段階後に）対象の外観は、著しく変化することはないと仮定する。上述したように、対象固有のデータベースは、奥行き画像で構成されており、照明条件変化の潜在的影響を減じる。同様に、照明条件変化に対してある程度のロバスト性を供するために、赤外線イメージングを用いてもよい。
【００６９】
［００８５］  姿勢追跡システムのさらなる実施形態は、上述した３Ｄ動きおよび外観に基づくハイブリッドの実施形態への変形を有する。本実施形態によれば、対象の外観が変化すると（例えば、運転者がメガネ、帽子などを外す）、システムの性能は低下する。この課題に対処するために、所定の最大性能低下値に達するとき、新たな対象固有の画像データベースを構成するために、適応学習段階（訓練段階）が再実行処理される。性能低下は、ＰＣＡ値の当初の学習値からの逸脱に基づいて計算されうる。あるいは、正しい顔正面が使用されていることを確認するために、適応学習訓練手順を定期的に実行することができる。
【００７０】
［００８６］  本発明の特定の実施形態および応用例を本明細書に例示し、記述してきたが、当然のことながら本発明は、本明細書に開示された厳密な構造および構成要素に制限されず、添付のクレームにおいて定義される本発明の趣旨および範囲を逸脱することなく、本発明の方法および装置の構成、動作、および細目において、多様な修正、変更、および変形を行うことができる。
【図面の簡単な説明】
【００７１】
【図１Ａ】［００１９］  図１Ａは、向きの推定システム構成の一実施形態を示す。
【図１Ｂ】［００２０］  図１Ｂは、向きの推定コンピュータの一実施形態のブロック図を示す。
【図２Ａ】［００２１］  図２Ａは、異なった位置での運転者の奥行き画像を示す。
【図２Ｂ】［００２２］  図２Ｂは、対応する色および奥行きデータのビジュアル表現を有する奥行き画像を示す。
【図２Ｃ】［００２３］  図２Ｃは、奥行き画像を用いた追跡機構の他の実施形態を示す。
【図３Ａ】［００２４］  図３Ａは、向きの推定システムの一実施形態の動作方法のフローチャートを示す。
【図３Ｂ】［００２５］  図３Ｂは、動きに基づくアプローチを用いた他の実施形態を示す。
【図４Ａ】［００２６］  図４Ａは、ＰＣＡ射影曲線を示す。
【図４Ｂ】［００２７］  図４Ｂは、頭部姿勢曲線におけるＰＣＡ射影の異なった表現を示す。
【図４Ｃ】［００２８］  図４Ｃは、一実施形態による主要姿勢決定に対するＰａｒｚｅｎウィンドウアプローチを示す。
【図５】［００２９］  図５は、一般化されたオプティカルフロー図を示す。
【図６Ａ】［００３０］  図６Ａは、運転者頭部姿勢推定システムに対するサンプル画像を示す。
【図６Ｂ】［００３１］  図６Ｂは、対象に対するハイブリッドデータ（色および奥行き）を有する奥行きカメラフィードからのフレームを示す。
【図７】［００３２］  図７は、向きの推定システムの一実施形態によるサンプルの訓練セットを示す。
【図８】［００３３］  図８は、対象がＹ軸を中心に頭部を−７５度から＋７５度まで回転させるときの３００フレームのビデオストリームのプロットを、３つの空間次元（ｘ，ｙ，ｚ）の対応する回転角または向きと共に示す。
【図９】［００３４］  図９は、分類装置に基づく３姿勢システムに対するサンプル訓練データベースの一実施形態を示す。
【図１Ａ】
0004546956.tif 000016
【図１Ｂ】
0004546956.tif 000017
【図３Ａ】
0004546956.tif 000018
【図３Ｂ】
0004546956.tif 000019
【図４Ｂ】
0004546956.tif 000020
【図５】
0004546956.tif 000021
【図２Ａ】
0004546956.tif 000022
【図２Ｂ】
0004546956.tif 000023
【図２Ｃ】
0004546956.tif 000024
【図４Ａ】
0004546956.tif 000025
【図４Ｃ】
0004546956.tif 000026
【図６Ａ】
0004546956.tif 000027
【図６Ｂ】
0004546956.tif 000028
【図７】
0004546956.tif 000029
【図８】
0004546956.tif 000030
【図９】
0004546956.tif 000031