(57)【要約】【課題】  ユーザの顔と頭部の姿勢を効果的に査定し、コンピュータまたは同様のデバイスが表示装置に対するユーザの注目を追跡することができる改良を提供すること。【解決手段】  ユーザが顔を向けているディスプレイまたはグラフィカルユーザインターフェースの領域を、ユーザがさらなる入力を提供する必要なく、自動的に選択することができる。正面向きの顔の検出器を適用し、ユーザの正面向きの顔を検出し、左／右の目の中心、左／右の口の端、鼻の先端などの顔の要点を部位検出器によって検出する。システムは次いで、画像トラッカによってユーザの頭部を追跡し、顔の要点および／または姿勢推定器からの信頼度の出力に従って、粗密方式のプロセスを通じてユーザ頭部のヨー角、傾斜角、およびロール角、その他の姿勢情報を判定する。【選択図】  図４
2004362569.tif 000002
【特許請求の範囲】
【請求項１】
コンピューティングデバイスとともに使用する方法であって、
第１の時間に前記コンピューティングデバイスのユーザの第１の頭部姿勢を判定することと、
前記第１の時間より後の第２の時間に前記ユーザの少なくとも第２の頭部姿勢を判定することと、
前記第１の頭部姿勢と少なくとも前記第２の頭部姿勢との少なくとも１つの差に基づいて、前記コンピューティングデバイスの少なくとも１つの表示装置の少なくとも２つの選択可能領域を自動的に動作可能なように切り替えることと
を備えることを特徴とする方法。
【請求項２】
前記第１の頭部姿勢を判定することは、
前記ユーザの顔の少なくとも第１の部分を示す第１の画像を前記第１の時間に生成することと、
前記第１の画像内で前記顔の少なくとも前記第１の部分を検出することと、
前記顔の前記検出された第１の部分内で少なくとも１つの点を検出し、前記少なくとも１つの点に関連する第１の追跡情報を記憶することと
をさらに含み、
前記第２の頭部姿勢を判定することは、
前記ユーザの前記顔の少なくとも第２の部分を示す第２の画像を前記第２の時間に生成することと、
前記第２の画像内で前記顔の少なくとも前記第２の部分を検出することと、
前記顔の前記検出された第２の部分内で前記少なくとも１つの点を検出し、前記少なくとも１つの点に関連する第２の追跡情報を記憶することと
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記少なくとも２つの選択可能領域の間を自動的に動作可能なように切り替えることは、
少なくとも前記第１の追跡情報と前記第２の追跡情報を比較して、前記ユーザに関連する査定された表示装置ビューが前記第１の時間から前記第２の時間までに変化したかどうかを判定することと、
前記ユーザに関連する前記査定された表示装置ビューが前記第１の時間から前記第２の時間までに変化した場合、前記表示装置に提示されたユーザ入力インターフェースのフォーカスを、前記査定された表示装置ビューに関連する選択可能領域に選択的に動作可能なように切り替えることと
をさらに含むことを特徴とする請求項２に記載の方法。
【請求項４】
前記第１の画像を生成することは、少なくとも１つのカメラデバイスに前記第１の画像を出力させることをさらに含むことを特徴とする請求項２に記載の方法。
【請求項５】
前記少なくとも１つのカメラデバイスは、少なくとも１つのビデオカメラデバイスを含み、前記第１の画像は、前記ビデオカメラデバイスによってキャプチャされたビデオのフレームを含むことを特徴とする請求項４に記載の方法。
【請求項６】
前記少なくとも１つのカメラデバイスは、少なくとも１つのデジタル静止画像カメラデバイスを含み、前記第１の画像は、前記デジタル静止画像カメラデバイスによってキャプチャされたデジタル静止画像を含むことを特徴とする請求項４に記載の方法。
【請求項７】
前記第１の画像内で前記顔の前記第１の部分を検出することは、
少なくとも１つの分類パラメータに基づいて前記第１の画像に関連する画像データの複数の部分それぞれを分類して、前記顔の前記第１の部分に関連する少なくとも１つの顔領域を判定することと
をさらに含むことを特徴とする請求項２に記載の方法。
【請求項８】
前記顔の前記第１の部分に関連する前記顔領域を前記第２の画像の対応する部分において画像パッチ追跡して、少なくとも１つの検出された顔エリアを識別すること
をさらに備えることを特徴とする請求項７に記載の方法。
【請求項９】
画像パッチ追跡することは、
ＳＳＤ画像パッチトラッカを使用して前記少なくとも１つの検出された顔エリアを識別すること
をさらに含むことを特徴とする請求項８に記載の方法。
【請求項１０】
画像パッチ追跡することは、
結果として検出された前記顔エリアの少なくとも一部分を少なくとも１つのアラート閾値パラメータと比較して、関連するシステム初期化プロセスが必要であるかどうかを判定すること
をさらに含むことを特徴とする請求項８に記載の方法。
【請求項１１】
前記顔の前記検出された第２の部分内で前記少なくとも１つの点を検出することは、
少なくとも１つの前記検出された顔エリア内で少なくとも１つの主要な顔の部位を検出すること
をさらに含むことを特徴とする請求項８に記載の方法。
【請求項１２】
少なくとも３つの前記検出された主要な顔の部位に基づいて前記ユーザの精密な頭部姿勢を判定すること
をさらに備えることを特徴とする請求項１１に記載の方法。
【請求項１３】
少なくとも１つの前記検出された顔エリア内で少なくとも１つの前記主要な顔の部位を検出することに関連する信頼度情報に基づいて、前記ユーザの大まかな頭部姿勢を判定すること
をさらに備えることを特徴とする請求項１１に記載の方法。
【請求項１４】
前記検出された主要な顔の部位と前記信頼度情報とに基づいて前記ユーザの精密な頭部姿勢を判定すること
をさらに備えることを特徴とする請求項１３に記載の方法。
【請求項１５】
前記大まかな頭部姿勢は、ヨー角、傾斜角、ロール角、ｘ方向の平行移動、ｙ方向の平行移動、およびスケールファクタからなる一群の頭部姿勢パラメータから選択された少なくとも１つの頭部姿勢パラメータに関連することを特徴とする請求項１３に記載の方法。
【請求項１６】
前記精密な頭部姿勢を判定することは、
楕円推定器手法および反復推定器手法からなる一群の推定手法から選択された少なくとも１つの推定器手法を使用して前記精密な頭部姿勢を判定すること
をさらに含むことを特徴とする請求項１２に記載の方法。
【請求項１７】
前記精密な頭部姿勢を判定することは、
少なくとも１つのビューベースの姿勢推定手法を使用して前記精密な頭部姿勢を判定すること
をさらに含むことを特徴とする請求項１２に記載の方法。
【請求項１８】
前記少なくとも１つの表示装置の前記少なくとも２つの選択可能領域の少なくとも１つは、グラフィカルユーザインターフェース（ＧＵＩ）内の少なくとも１つの動作可能なように選択可能な領域を含むことを特徴とする請求項１に記載の方法。
【請求項１９】
前記少なくとも２つの選択可能領域のそれぞれは、異なるコンピュータロジックまたは異なるコンピュータデータに関連付けられることを特徴とする請求項１に記載の方法。
【請求項２０】
前記少なくとも１つの表示装置の前記少なくとも２つの選択可能領域の間を自動的に動作可能なように切り替えることは、
グラフィカルポインティングデバイスを前記表示装置上で選択的に移動させること
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項２１】
前記少なくとも１つの表示装置の前記少なくとも２つの選択可能領域の間を自動的に動作可能なように切り替えることは、
前記少なくとも１つの表示装置の前記少なくとも２つの選択可能領域を自動的に動作可能なように切り替えることを選択的に遅らせること
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項２２】
コンピュータ可読媒体であって、
第１の時間にコンピューティングデバイスのユーザの第１の頭部姿勢を査定し、前記第１の時間より後の第２の時間に前記ユーザの少なくとも第２の頭部姿勢を査定することと、
前記第１の頭部姿勢と少なくとも前記第２の頭部姿勢との間の少なくとも１つの差に基づいて、前記コンピューティングデバイスの少なくとも１つの表示装置の少なくとも２つの選択可能領域の間を自動的に動作可能なように切り替えることと
を備えた動作を少なくとも１つのプロセッサに実行させるためのコンピュータ実施可能命令を有することを特徴とするコンピュータ可読媒体。
【請求項２３】
前記第１の頭部姿勢を査定することは、前記ユーザの顔の少なくとも第１の部分を示す第１の画像を生成することと、前記第１の画像内で前記顔の少なくとも第１の部分を検出することと、前記顔の前記検出された第１の部分内で少なくとも１つの点を検出し、前記少なくとも１つの点それぞれに関連する第１の追跡情報を記憶することとをさらに含み、
前記第２の頭部姿勢を査定することは、前記ユーザの前記顔の少なくとも第２の部分を示す第２の画像を生成することと、前記第２の画像内で前記顔の少なくとも前記第２の部分を追跡／検出することと、前記顔の前記検出された第２の部分内で前記少なくとも１つの点を検出し、前記少なくとも１つの点のそれぞれに関連する第２の追跡情報を記憶することとをさらに含むことを特徴とする請求項２２に記載のコンピュータ可読媒体。
【請求項２４】
前記少なくとも２つの選択可能領域の間を自動的に動作可能なように切り替えることは、
少なくとも前記第１の追跡情報と前記第２の追跡情報とを比較して、前記ユーザに関連する査定された表示装置ビューが前記第１の時間から前記第２の時間までに変化したかどうかを判定し、前記ユーザに関連する前記査定された表示装置ビューが前記第１の時間から前記第２の時間までに変化した場合は、前記表示装置に提示されたユーザ入力インターフェースのフォーカスを前記査定された表示装置ビューに関連する選択可能領域に選択的に動作可能なように切り替えること
をさらに含むことを特徴とする請求項２３に記載のコンピュータ可読媒体。
【請求項２５】
前記第１の画像を生成することは、少なくとも１つのカメラデバイスに前記第１の画像を出力させることをさらに含むことを特徴とする請求項２３に記載のコンピュータ可読媒体。
【請求項２６】
前記少なくとも１つのカメラデバイスは、少なくとも１つのビデオカメラデバイスを含み、前記第１の画像は、前記ビデオカメラデバイスによってキャプチャされたビデオのフレームを含むことを特徴とする請求項２５に記載のコンピュータ可読媒体。
【請求項２７】
前記第１の画像内で前記顔の前記第１の部分を検出することは、
少なくとも１つの分類パラメータに基づいて前記第１の画像に関連する画像データの複数の部分のそれぞれを分類して、前記顔の前記第１の部分に関連する少なくとも１つの顔領域を判定すること
をさらに含むことを特徴とする請求項２３に記載のコンピュータ可読媒体。
【請求項２８】
前記顔の前記第１の部分に関連する前記顔領域を前記第２の画像の対応する部分において画像パッチ追跡して、少なくとも１つの検出された顔エリアを識別すること
をさらに備えたことを特徴とする請求項２７に記載のコンピュータ可読媒体。
【請求項２９】
画像パッチ追跡することは、
ＳＳＤ画像パッチトラッカを使用して前記少なくとも１つの検出された顔エリアを識別すること
をさらに含むことを特徴とする請求項２８に記載のコンピュータ可読媒体。
【請求項３０】
画像パッチ追跡することは、
結果として検出された前記顔エリアの少なくとも一部分を少なくとも１つのアラート閾値パラメータと比較して、関連するシステム初期化プロセスが必要であるかどうかを判定すること
をさらに含むことを特徴とする請求項２８に記載のコンピュータ可読媒体。
【請求項３１】
前記顔の前記検出された第２の部分内で前記少なくとも１つの点を検出することは、
少なくとも１つの前記検出された顔エリア内で少なくとも１つの主要な顔の部位を検出すること
をさらに含むことを特徴とする請求項２８に記載のコンピュータ可読媒体。
【請求項３２】
前記検出された主要な顔の部位に基づいて前記ユーザの精密な頭部姿勢を判定すること
をさらに備えたことを特徴とする請求項３１に記載のコンピュータ可読媒体。
【請求項３３】
前記少なくとも１つの検出された顔エリア内で前記少なくとも１つの顔の部位を検出することに関連する信頼度情報に基づいて、前記ユーザの大まかな頭部姿勢を判定すること
をさらに備えたことを特徴とする請求項３１に記載のコンピュータ可読媒体。
【請求項３４】
前記検出された主要な顔の部位と前記信頼度情報とに基づいて前記ユーザの精密な頭部姿勢を判定すること
をさらに備えたことを特徴とする請求項３３に記載のコンピュータ可読媒体。
【請求項３５】
前記大まかな頭部姿勢は、ヨー角、傾斜角、ロール角、ｘ方向の平行移動、ｙ方向の平行移動、およびスケールファクタからなる一群の頭部姿勢パラメータから選択された少なくとも１つの頭部姿勢パラメータに関連付けられることを特徴とする請求項３３に記載のコンピュータ可読媒体。
【請求項３６】
前記精密な頭部姿勢を判定することは、
楕円推定器手法および反復推定器手法からなる一群の推定手法から選択された少なくとも１つの推定器手法を使用して前記精密な頭部姿勢を判定すること
をさらに含むことを特徴とする請求項３２に記載のコンピュータ可読媒体。
【請求項３７】
前記精密な頭部姿勢を判定することは、
少なくとも１つのビューベースの姿勢推定手法を使用して前記精密な頭部姿勢を判定すること
をさらに含むことを特徴とする請求項３２に記載のコンピュータ可読媒体。
【請求項３８】
前記少なくとも１つの表示装置の前記少なくとも２つの選択可能領域の少なくとも１つは、グラフィカルユーザインターフェース（ＧＵＩ）内の少なくとも１つの動作可能なように選択可能な領域を含むことを特徴とする請求項２２に記載のコンピュータ可読媒体。
【請求項３９】
前記少なくとも２つの選択可能領域のそれぞれは、異なるコンピュータロジックまたは異なるコンピュータデータに関連付けられることを特徴とする請求項２２に記載のコンピュータ可読媒体。
【請求項４０】
前記少なくとも１つの表示装置の前記少なくとも２つの選択可能領域の間を自動的に動作可能なように切り替えることは、
グラフィカルポインティングデバイスを前記表示装置上で選択的に移動させること
をさらに含むことを特徴とする請求項２２に記載のコンピュータ可読媒体。
【請求項４１】
前記少なくとも１つの表示装置の前記少なくとも２つの選択可能領域の間を自動的に動作可能なように切り替えることは、
前記少なくとも１つの表示装置の前記少なくとも２つの選択可能領域の間を自動的に動作可能なように切り替えることを選択的に遅らせること
をさらに含むことを特徴とする請求項２２に記載のコンピュータ可読媒体。
【請求項４２】
少なくとも１つの表示装置と少なくとも１つの画像キャプチャリングデバイスとともに使用するための装置であって、
表示装置に少なくとも２つの異なる選択可能領域を表示させるのに適した少なくとも１つの信号を出力するように構成可能なディスプレイロジックと、
画像キャプチャリングデバイスから画像データを受け取るように構成可能なインターフェースロジックと、
前記ディスプレイロジックおよび前記インターフェースロジックに動作可能なように結合され、第１の画像に基づいて第１の頭部姿勢を判定し、時間的に前記第１の画像より後の第２の画像に基づいて少なくとも第２の頭部姿勢を判定し、前記第１の頭部姿勢と少なくとも前記第２の頭部姿勢との少なくとも１つの差に基づいて前記少なくとも２つの選択可能領域の間で動作上のユーザ入力フォーカスを自動的に動作可能なように切り替えるように構成された姿勢推定ロジックと
を備えたことを特徴とする装置。
【請求項４３】
少なくとも前記姿勢推定ロジックに動作可能なように結合されたメモリであって、前記第１の画像と前記第２の画像を記憶するように構成可能なメモリをさらに備え、前記第１の画像は、第１の時間にユーザの顔の少なくとも第１の部分をキャプチャし、前記第２の画像は、第２の後の時間に前記ユーザの前記顔の少なくとも第２の部分をキャプチャし、
前記姿勢推定ロジックは、
前記第１の画像にアクセスし、前記第１の画像内で前記顔の少なくとも前記第１の部分を検出し、前記顔の前記検出された第１の部分内で少なくとも１つの点を検出し、前記検出された第１の部分内の前記少なくとも１つの点のそれぞれに関連する第１の追跡情報を前記メモリに記憶し、
前記第２の画像にアクセスし、前記第２の画像内で前記顔の少なくとも前記第２の部分を追跡し、前記顔の前記検出された第２の部分内で前記少なくとも１つの点を検出し、前記検出された第２の部分内の前記少なくとも１つの点のそれぞれに関連する第２の追跡情報を前記メモリに記憶するように
さらに構成されたことを特徴とする請求項４２に記載の装置。
【請求項４４】
前記姿勢推定ロジックは、少なくとも前記第１の追跡情報と前記第２の追跡情報とを比較して、前記ユーザに関連する査定された表示装置ビューが前記第１の時間から前記第２の時間までに変化したかどうかを判定し、前記ユーザに関連する前記査定された表示装置ビューが前記第１の時間から前記第２の時間までに変化した場合は、前記動作上のユーザ入力フォーカスを切り替えるようにさらに構成されたことを特徴とする請求項４３に記載の装置。
【請求項４５】
前記姿勢推定ロジックは、少なくとも１つの分類パラメータに基づいて前記第１の画像に関連する画像データの複数の部分のそれぞれを分類して、前記顔の前記第１の部分に関連する少なくとも１つの顔領域を判定するようにさらに構成されたことを特徴とする請求項４３に記載の装置。
【請求項４６】
前記姿勢推定ロジックは、前記顔の前記第１の部分に関連する前記顔領域を前記第２の画像の対応する部分において画像パッチ追跡して、少なくとも１つの検出された顔エリアを識別するようにさらに構成されたことを特徴とする請求項４５に記載の装置。
【請求項４７】
前記姿勢推定ロジックは、前記少なくとも１つの検出された顔エリアを識別するためにＳＳＤ画像パッチトラッカを含むことを特徴とする請求項４６に記載の装置。
【請求項４８】
前記画像パッチトラッカは、結果として検出された前記顔エリアの少なくとも一部分を少なくとも１つのアラート閾値パラメータと比較して、関連するシステム初期化プロセスが必要であるかどうかを判定することを特徴とする請求項４７に記載の装置。
【請求項４９】
前記姿勢推定ロジックは、前記少なくとも１つの検出された顔エリア内で少なくとも１つの主要な顔の部位を検出して、前記大まかな姿勢推定を行うことを特徴とする請求項４５に記載の装置。
【請求項５０】
前記姿勢推定ロジックは、前記検出された主要な顔の部位に基づいて前記ユーザの精密な頭部姿勢を判定するように構成されたことを特徴とする請求項４９に記載の装置。
【請求項５１】
前記姿勢推定ロジックは、前記少なくとも１つの検出された顔エリア内で前記少なくとも１つの顔の部位を検出することに関連する信頼度情報に基づいて、前記ユーザの大まかな頭部姿勢を判定することを特徴とする請求項４９に記載の装置。
【請求項５２】
前記姿勢推定ロジックは、前記検出された主要な顔の部位と前記信頼度情報とに基づいて前記ユーザの精密な頭部姿勢を判定するように構成されたことを特徴とする請求項５１に記載の装置。
【請求項５３】
前記大まかな頭部姿勢は、ヨー角、傾斜角、ロール角、ｘ方向の平行移動、ｙ方向の平行移動、およびスケールファクタからなる一群の頭部姿勢パラメータから選択された少なくとも１つの頭部姿勢パラメータに関連付けられることを特徴とする請求項５１に記載の装置。
【請求項５４】
前記姿勢推定ロジックは、楕円推定器手法および反復推定器手法からなる一群の推定手法から選択された少なくとも１つの推定器手法の結果を組み合わせることにより、前記精密な頭部姿勢を判定するように構成されたことを特徴とする請求項５０に記載の装置。
【請求項５５】
前記姿勢推定ロジックは、少なくとも１つのビューベースの姿勢推定手法の結果を組み合わせることにより、前記精密な頭部姿勢を判定するように構成されたことを特徴とする請求項５０に記載の装置。
【請求項５６】
少なくとも１つの表示装置と、
少なくとも１つの画像キャプチャリングデバイスと、
前記表示装置および前記画像キャプチャリングデバイスに動作可能なように結合されたコンピューティングデバイスであって、
表示装置に少なくとも２つの異なる選択可能領域を表示させるのに適した少なくとも１つの信号を出力するように構成されたディスプレイロジックと、
画像キャプチャリングデバイスから画像データを受け取るように構成されたインターフェースロジックと、
第１の画像に基づいて第１の頭部姿勢と、時間的に前記第１の画像より後の第２の画像に基づいて少なくとも第２の頭部姿勢とを判定し、前記第１の頭部姿勢と少なくとも前記第２の頭部姿勢との間の少なくとも１つの差に基づいて前記少なくとも２つの選択可能領域の間で動作上のユーザ入力フォーカスを自動的に動作可能なように切り替えるように構成された姿勢推定ロジックと
を有するコンピューティングデバイスと
を備えたことを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータおよびソフトウェアに関し、より詳細には、ユーザの頭部の位置を査定し、そのような査定に基づいて適用されるコンピュータ操作に影響を与える方法およびシステムに関する。
【背景技術】
【０００２】
コンピュータおよびその他同類のデバイスは、ほぼあらゆる産業および環境において計り知れないほど重要なツールとなっている。こうしたデバイスおよび機器は各種の形態で供給され、汎用ツールまたは専用ツールとして設計されるものがある。こうしたデバイスの大半に共通することは、ユーザとのインターフェースの必要性である。一般的な汎用コンピュータには、例えば表示機構と少なくとも１つの入力機構が含まれる。
【０００３】
例えばＣＲＴベースのモニタ、フラットパネルディスプレイなどの表示機構は、情報をユーザに視覚的に伝達するために使用される。この伝達は、多くの場合、例えばグラフィカルユーザインターフェース（ＧＵＩ）ソフトウェアプログラムなどを用いて実現される。一般に、ユーザは、ユーザ入力をコンピュータに提供し、その入力が何らかの形で１つまたは複数のコンピュータプログラムおよび／またはＧＵＩによって認識され、コンピュータの操作／データに特定の変化を引き起こすことにより、ＧＵＩに関連付けられた１つまたは複数のコントロールプログラムとインターフェースをとる。例えば、ユーザは、コンピュータロジックに信号を送るように構成され、その信号に応じてＧＵＩ内でグラフィカルポインタを動かすようにするマウスなどのポインティングデバイスを物理的に動かすことができる。そして、このようなユーザ入力装置で、ユーザは、表示されたＧＵＩ内の特定の領域にグラフィカルポインタを移動し、例えばマウス上に備えられたボタンなどをアクティブ化し、コンピュータハードウェアに選択信号を入力することによって、特定のプログラム／ＧＵＩ機能を選択することができる。このような操作は一般的であり、よく理解されている。
【０００４】
演算能力が増大しつづけるのに伴い、多くのオペレーティングシステム、プログラム、ＧＵＩなどは、複数のタスクをサポート／実行できるようになっている。これは、複数の異なるプログラムのＧＵＩを提示するのに十分に大きな表示装置を有するコンピュータの場合に特に有用である。例えば、ユーザは、ワードプロセッシングアプリケーションのＧＵＩと表計算アプリケーションのＧＵＩを１つまたは複数の表示装置に同時に表示するようにコンピュータを構成することができる。複数のタスクが表示されている時には、ユーザが現在対話しているＧＵＩ、したがってプログラム／アプリケーションをコンピュータロジックに対して識別する必要もある。
【０００５】
このように、上記の例では、コンピュータロジックのフォーカスをアプリケーションの１つに切り替えるには、ユーザは通例ＧＵＩ領域の１つを「クリック」するか、またはその他の形で選択する。この選択により、コンピュータロジック（例えばオペレーティングシステム）は、その後のユーザ入力が選択されたプログラムに関連付けられるであろうことを認識することになる。それゆえ、上記の例でユーザがワードプロセッシングアプリケーションから表計算アプリケーションに切り替えたい時は、表計算アプリケーションに関連付けられたＧＵＩの一部分にグラフィカルポインタを合わせ、マウスボタンを押すことができる。
【０００６】
別の例示的な構成では、ユーザは、１つまたは複数のキーボードストロークを入力することにより、ＧＵＩ内の各種の潜在的に選択可能な領域間のフォーカスを切り替えることができる。このようなキーボード技術は、ＧＵＩ内に選択可能な領域が多数あり、所望の選択可能な領域がアクティブ状態でフォーカスするまでユーザが入力シーケンスを数回繰り返す必要がある場合には、効率が低くなることがある。
【０００７】
マウスまたは他の同様のユーザポインティングデバイスを用いる技術は、ユーザが数個の選択可能な領域から選択する場合にはより容易であるかもしれないが、表示装置が大きなＧＵＩインターフェースを提示する場合には煩瑣になる可能性がある。そのような構成では、ユーザはマウスを長い距離にわたって動かし、ＧＵＩ内で所望のグラフィカルポインタ移動を完遂するためにマウスを持ち上げ、移動してきたデスクトップ／表面上の別の位置に置き直さなければならない場合がある。同様の動作がタッチパッドのポインティングデバイスでも必要となる場合がある。さらなる例として、ユーザは、画面上のカーソルを所望の選択可能な領域に移動するために、長い時間にわたってトラックボールや同様のポインティングデバイスを回転させる必要がある場合がある。
【０００８】
【特許文献１】米国特許出願公開第２００２０１０２０２４号明細書
【非特許文献１】P.  Viola  and  M.  Jones,  "Robust  Real-time  Object  Detection",  Cambridge  Research  Laboratory  Technical  Report  Series,  February  2001
【非特許文献２】G.  D.  Hager  and  P.  N.  Belhumeur,  "Real-Time  Tracking  of  Image  Regions  with  Changes  in  Geometry  and  Illumination",  IEEE  CVPR  Proceedings,  pages  403-410
【非特許文献３】T.  Huang  et  al.,  "Uniqueness  of  3D  Pose  Under  Weak  Perspective:  A  Geometrical  Proof",  IEEE  Transactions  on  Pattern  Analysis  and  Machine  Intelligence,  1995
【発明の開示】
【発明が解決しようとする課題】
【０００９】
このため、これら各種の技術および同様の他の技術は、ある状況ではマルチタスクのユーザインターフェース環境の有効性の妨げとなるか、そうでなければ有効性を低減させる傾向がある。その結果、ユーザ入力をコンピュータまたは他の同様のデバイスに提供するための新規および／または改良された方法、装置、およびシステムに対する必要性がある。
【課題を解決するための手段】
【００１０】
コンピュータあるいは同様のデバイスが推定された頭部姿勢に基づいてユーザの注目領域を追跡することができるようにユーザの顔部および頭部の姿勢を効果的に査定するための方法、装置、およびシステムが提供される。そして、ユーザが見ているディスプレイの領域またはグラフィカルユーザインターフェースの領域を、ユーザがさらなる入力を提供する必要なく、自動的に選択することができる。
【００１１】
例えば、ある実施例では、正面の顔部検出器を適用して、ユーザの正面の顔部を検出し、次に左／右の目の中心、左／右の口角、鼻の先端などの顔部の要点を部位検出器によって検出する。システムは、反復ＳＳＤ（ｓｕｍ  ｏｆ  ｓｑｕａｒｅｓ  ｄｉｆｆｅｒｅｎｃｅ）トラッカなどの推定器によって、時間的に後続のフレーム／画像中のユーザの頭部を追跡する。次いで、最終的なヨー角（ｙａｗ  ａｎｇｌｅ）および傾斜角（ｔｉｌｔ  ａｎｇｌｅ）の結果が、例えば適切なアプリケーション／文書を選択するためにマウスインターフェースなどに提供される。閾値およびプログラム可能な遅延を設定することにより、開かれている各種のアプリケーション／文書の選択をより適切に制御することもできる。
【００１２】
さらなる例として、上記の必要性およびその他の必要性は、コンピューティングデバイスとともに使用する方法によって満たされる。この方法は、第１の時間にコンピューティングデバイスのユーザの第１の頭部姿勢と、第１の時間の後の第２の時間に少なくともユーザの第２の頭部姿勢とを判定することを含む。例えば、異なるビデオフレームを使用することができる。この方法は次いで、第１の頭部姿勢と少なくとも第２の頭部姿勢との少なくとも１つの差に基づいて、コンピューティングデバイスの少なくとも１つの表示装置の少なくとも２つの選択可能領域を動作可能なように自動的に切り替えることを含む。このようにして、例えば、ユーザが頭の向きを変えて（回転および／または傾けて）コンピュータディスプレイの異なる選択可能領域を見ると、コンピューティングデバイスは、そのことを認識し、ユーザの入力フォーカスなどを見ている領域に切り替えることになる。
【００１３】
ある実施例では、第１の頭部姿勢を判定することはさらに、第１の時間にユーザの顔の少なくとも第１の部分を示す第１の画像を生成することと、第１の画像内で顔の少なくとも第１の部分を検出することと、検出された顔の第１の部分内の少なくとも２つの異なる点を検出し、それら異なる点それぞれに関連する第１の追跡情報を格納することを含む。
【００１４】
同様に、第２の頭部姿勢を判定することはさらに、第２の時間にユーザの顔の少なくとも第２の部分を示す第２の画像を生成することと、第２の画像内で顔の少なくとも第２の部分を検出することと、検出された顔の第２の部分内で少なくとも同じ２つの異なる点を検出し、それら異なる点それぞれに関連する第２の追跡情報を格納することを含む。
【００１５】
さらなる例示的な実施例では、方法は、少なくとも第１の追跡情報と第２の追跡情報を比較して、ユーザに関連する査定された表示装置のビューが第１の時間から第２の時間までの間に変化したかどうかを判定することも含む。ユーザに関連する査定された表示装置のビューが第１の時間から第２の時間までに変化している場合は、方法は、表示装置に提示されたユーザ入力インターフェースのフォーカスを、査定された表示装置ビューに関連する選択可能領域に選択的に動作可能なように切り替えることを含む。
【００１６】
この方法は、少なくとも１つの分類パラメータに基づいて第１の画像に関連する画像データの複数の部分のそれぞれを分類して、顔の第１の部分に関連する少なくとも１つの顔領域を判定することと、対応する第２の画像の部分で第１の顔の部分に関連する顔領域を画像パッチ追跡して（ｉｍａｇｅ  ｐａｔｃｈ  ｔｒａｃｋｉｎｇ）、少なくとも１つの検出された顔のエリア範囲を識別することを含むこともできる。例えば、画像パッチ追跡では、ＳＳＤ（ｓｕｍ−ｏｆ−ｓｑｕａｒｅ  ｄｉｆｆｅｒｅｎｃｅ）の画像パッチトラッカを用いて検出された顔のエリアを識別することができる。画像パッチ追跡では、結果として検出された顔のエリアの少なくとも一部を少なくとも１つのアラート閾値パラメータと比較して、関連するシステム初期化プロセスが必要かどうかを判定することを含むこともできる。
【００１７】
ある実施例では、この方法はさらに、検出された顔のエリア内で少なくとも１つの顔の主要な部位を検出し、検出された顔の主要な部位に基づいて精密なユーザの頭部姿勢を判定することを含む。
【００１８】
この方法は、検出された顔のエリア内の異なる顔の主要な部位を検出することに関連する信頼度情報（ｃｏｎｆｉｄｅｎｃｅ  ｉｎｆｏｒｍａｔｉｏｎ）に基づいて大まかなユーザの頭部姿勢を判定し、検出された顔の主要な部位と信頼度情報とに基づいて精密なユーザの頭部姿勢を判定することを含むことができる。ここで、例えば、大まかな頭部姿勢は、ユーザ頭部のヨー角および／または傾斜角に関連付けることができる。
【００１９】
ある実施例では、精密な頭部姿勢を判定することはさらに、例えば楕円推定器手法（ｅｌｌｉｐｓｅ  ｅｓｔｉｍａｔｏｒ  ｔｅｃｈｎｉｑｕｅ）および／または反復推定器手法（ｉｔｅｒａｔｅｄ  ｅｓｔｉｍａｔｏｒ  ｔｅｃｈｎｉｑｕｅ）などの少なくとも１つの推定器手法を使用することを含む。
【００２０】
本発明の各種の方法および装置については、付随する図面と併せて以下の詳細な説明を参照することにより、より完全に理解することができる。
【発明を実施するための最良の形態】
【００２１】
（例示的コンピューティング環境）
図１に、以下で説明する方法および構成を実施することができる適切なコンピューティング環境１２０の一例を示す。
【００２２】
例示的コンピューティング環境１２０は、適切なコンピューティング環境の一例に過ぎず、ここに記載する改良された方法および構成の使用または機能の範囲について何らの限定を示唆するものではない。またコンピューティング環境１２０は、コンピューティング環境１２０に例示した構成要素のいずれか１つまたは組合せに関連する何らの依存性または必要性を有するものとも解釈されるべきではない。
【００２３】
本発明の改良された方法および構成は、数多くの他の汎用または専用のコンピューティングシステム環境または構成で動作することができる。
【００２４】
図１に示すように、コンピューティング環境１２０は、コンピュータ１３０の形態の汎用コンピューティングデバイスを含む。コンピュータ１３０の構成要素には、１つまたは複数のプロセッサあるいは処理装置１３２、システムメモリ１３４、およびシステムメモリ１３４を含む各種のシステム構成要素をプロセッサ１３２に結合するバス１３６を含むことができる。
【００２５】
バス１３６は、各種のバスアーキテクチャの任意のものを使用したメモリバスまたはメモリコントローラ、ペリフェラルバス、アクセラレーテッドグラフィックポート、およびプロセッサバスまたはローカルバスを含む数タイプのバス構造の任意の１つまたは複数を表す。限定ではなく、例として、そのようなアーキテクチャには、ＩＳＡ（Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、ＭＣＡ（Ｍｉｃｒｏ  Ｃｈａｎｎｅｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、ＥＩＳＡ（Ｅｎｈａｎｃｅｄ  ＩＳＡ）バス、ＶＥＳＡ（Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ）バス、およびメザニンバスとも称されるＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔｓ）バスがある。
【００２６】
コンピュータ１３０は通例各種のコンピュータ可読媒体を含む。このような媒体は、コンピュータ１３０によってアクセスが可能な任意の利用可能な媒体でよく、揮発性および不揮発性の媒体、取り外し可および取り外し不可の媒体が含まれる。
【００２７】
図１で、システムメモリ１３４は、ランダムアクセスメモリ（ＲＡＭ）１４０などの揮発性メモリ、および／または読み取り専用メモリ（ＲＯＭ）１３８などの揮発性メモリの形態のコンピュータ可読媒体を含む。起動時などにコンピュータ１３０内の要素間の情報転送を助ける基本ルーチンが入っている基本入出力システム（ＢＩＯＳ）１４２は、ＲＯＭ１３８に格納される。ＲＡＭ１４０は通例、プロセッサ１３２によって即座にアクセス可能、および／または現在プロセッサ１３２によって操作中のデータおよび／またはプログラムモジュールを収容する。
【００２８】
コンピュータ１３０はさらに、その他の取り外し可／取り外し不可、揮発性／不揮発性のコンピュータ記憶媒体を含むことができる。例えば図１には、取り外し不可の不揮発性の磁気媒体（図示せず。通例は「ハードディスク」と呼ばれる）の読み書きを行うハードディスクドライブ１４４、取り外し可の不揮発性の磁気ディスク１４８（「フロッピー（登録商標）ディスク」など）の読み書きを行う磁気ディスクドライブ１４６、およびＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、あるいは他の光学媒体などの取り外し可の不揮発性の光ディスク１５２の読み書きを行う光ディスクドライブ１５０を示す。ハードディスクドライブ１４４、磁気ディスクドライブ１４６、および光ディスクドライブ１５０はそれぞれ、１つまたは複数のインターフェース１５４によってバス１３６に接続される。
【００２９】
これらのドライブとそれらに関連するコンピュータ可読媒体は、コンピュータ１３０のコンピュータ可読命令、データ構造、プログラムモジュール、およびその他のデータの不揮発性の記憶機能を提供する。ここで説明する例示的環境ではハードディスク、取り外し可の磁気ディスク１４８、および取り外し可の光ディスク１５２を用いるが、当業者には、磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）など、コンピュータによってアクセスが可能なデータを格納することができる他のタイプのコンピュータ可読媒体もこの例示的動作環境にて使用できることが理解されよう。
【００３０】
ハードディスク、磁気ディスク１４８、光ディスク１５２、ＲＯＭ１３８、またはＲＡＭ１４０には複数のプログラムモジュールを格納することができ、これらには、例えばオペレーティングシステム１５８、１つまたは複数のアプリケーションプログラム１６０、他のプログラムモジュール１６２、およびプログラムデータ１６４が含まれる。
【００３１】
本明細書に記載する改良された方法および構成は、オペレーティングシステム１５８、１つまたは複数のアプリケーションプログラム１６０、他のプログラムモジュール１６２、および／またはプログラムデータ１６４内に実施することができる。
【００３２】
ユーザは、キーボード１６６およびポインティングデバイス１６８（「マウス」など）といった入力装置を通じてコンピュータ１３０にコマンドと情報を提供することができる。他の入力装置（図示せず）には、マイクロフォン、ジョイスティック、ゲームパッド、衛星アンテナ、シリアルポート、スキャナ、カメラなどがある。これらおよびその他の入力装置は、バス１３６に結合されたユーザ入力インターフェース１７０を通じて処理装置１３２に接続されるが、パラレルポート、ゲームポート、あるいはユニバーサルシリアルバス（ＵＳＢ）などの他のインターフェースおよびバス構造により接続してもよい。
【００３３】
モニタ１７２または他のタイプの表示装置も、ビデオアダプタ１７４などのインターフェースを介してバス１３６に接続される。モニタ１７２に加えて、パーソナルコンピュータは通例、スピーカやプリンタなどの他の周辺出力装置（図示せず）を含み、これらは出力周辺インターフェース１７５を通じて接続することができる。
【００３４】
コンピュータ１３０は、リモートコンピュータ１８２など１つまたは複数のリモートコンピュータとの論理接続を使用するネットワーク環境で動作することができる。リモートコンピュータ１８２は、ここにコンピュータ１３０との関連で述べた要素および機能の多くまたはすべてを含むことができる。
【００３５】
図１に示した論理接続は、ローカルエリアネットワーク（ＬＡＮ）１７７と一般的なワイドエリアネットワーク（ＷＡＮ）１７９である。このようなネットワーキング環境は、オフィス、企業内のコンピュータネットワーク、イントラネット、およびインターネットに一般的に見られる。
【００３６】
ＬＡＮネットワーキング環境で使用される場合、コンピュータ１３０は、ネットワークインターフェースあるいはアダプタ１８６を介してＬＡＮ１７７に接続される。ＷＡＮネットワーキング環境で使用される場合、コンピュータは通例、ＷＡＮ１７９を介して通信を確立するためのモデム１７８または他の手段を含む。モデム１７８は、内蔵型でも外付型でもよく、ユーザ入力インターフェース１７０または他の適切な機構を介してシステムバス１３６に接続することができる。
【００３７】
図１に示すのは、インターネットを介したＷＡＮの具体的な実施例である。この場合、コンピュータ１３０は、モデム１７８を用いてインターネット１８０を介して少なくとも１つのリモートコンピュータ１８２との通信を確立する。
【００３８】
ネットワーク環境では、コンピュータ１３０との関係で図に示すプログラムモジュール、またはその一部を遠隔のメモリ記憶装置に格納することができる。このように、例えば図１に示すように、リモートアプリケーションプログラム１８９がリモートコンピュータ１８２のメモリ装置に存在することができる。図に示し、説明したネットワーク接続は例示的なものであり、コンピュータ間の通信リンクを確立する他の手段を用いることができることは理解されよう。
【００３９】
（姿勢査定ロジック）
本明細書で使用する用語「ロジック」とは、ここに記載および／または図示した各種の例示的方法、装置、およびシステムに関連付けられる特定の機能を行うように構成することが可能な１つまたは複数の形態のロジックおよび／または他のタイプの回路を表すものとする。そのようなロジックとしては、ハードウェア、ファームウェア、ソフトウェア、および／またはそれらの組合せが可能である。ロジックは、少なくとも１つの形態のコンピュータ可読媒体を通じて格納、伝送、またはその他の方法で提供されるコンピュータに実施可能ば命令の形を取ってもよい。
【００４０】
このことを理解して図２を参照すると、本発明の特定の例示的な実施例に従って、人（例えばユーザ）の頭部姿勢を査定する際に使用するシステム２００のブロック図を示す。システム２００は、コンピュータ１３０および表示装置１７２を含む。また、少なくとも１つのカメラ２１６と、線２１８で表すコンピュータ１３０との適切な動作インターフェースが含まれる。カメラ２１６およびインターフェース２１８は、少なくともその一部がコンピュータ１３０内に構成されたロジック２２０に画像データを提供するように構成される。カメラ２１６は、特定の時に個別の画像をキャプチャするように構成された静止画像カメラ、および／または一連のビデオフレーム／画像をキャプチャするビデオカメラとすることができる。カメラ２１６は、カラーでもモノクロでもよい。得られた画像データまたはその少なくとも一部は、最終的には何らかのデジタルフォーマットでロジック２２０に利用可能となる。当業者は、各種の構成がカメラ２１６、インターフェース２１８、コンピュータ１３０、および／またはロジック２２０内に提供されて、必要に応じて画像データを適切に転送し、処理し、変換し、そして記憶することができることを認識されよう。
【００４１】
１つまたは複数の表示装置を表す表示装置１７２には、複数の例示的な選択可能領域２０４、２０６、および２０８を有する表示域２０２がある。これらの選択可能な領域は、異なるアプリケーション、ドキュメント、描画、機能、コントロール、ボックスなどについて表示されるＧＵＩなどを表す。また、表示域２０２には、ユーザ入力によって制御されるカーソルまたはポインタ２１０も示す。この図では、例えば、ポインタ２１０は選択可能な領域２０６内にある。
【００４２】
システム２００では、ロジック２２０は、カメラ２１６からの画像データに基づいてユーザの顔を検出し、表示域２０２内のどこにユーザの顔が向けられているかを判定し、それにより、カメラ２１６によって画像がキャプチャされた時にユーザが恐らく見ていた選択可能な領域の１つを推定するように構成される。ロジック２２０は、この例では、すべての実際的な目的について、結果として得られる推定頭部姿勢がほぼリアルタイムになるのに十分な速さで画像データを処理するように構成される。このようにして、ロジック２２０は、基本的に、ユーザの頭部の位置を追跡し、ユーザが特定の選択可能な領域を見ている時を判定することができる。ロジック２２０は次いで、例えばユーザインターフェースロジックなどコンピュータ１３０内の他のロジックにその特定の選択可能な領域を選択させ、その後のユーザ入力／コマンドが、その基礎となる正しいプログラムまたはアプリケーションに動作可能なように関連付けられるようにする。
【００４３】
このように、例えば、ロジック２２０では、推定されたユーザの頭部姿勢に基づき、ユーザが恐らく注目しているエリアに最も近い選択可能な領域が自動的にアクティブ化され、ＧＵＩのその部分がフォーカスを失うと、ポインタ２１０とフォーカスは元／以前の位置に戻る。すなわち、例えばユーザが頭の向きを変えてワードプロセッシングの文書を見ると、例えばそのワードプロセッシング文書が自動的に選択／アクティブ化され、ポインタ／フォーカスが最後の編集点から再開する。こうしたことが自動的に行われるので、ユーザは、切り替え動作を行うために他の入力をコンピュータ１３０に提供せずに済む。
【００４４】
特定の実施例では、ロジック２２０はまた、ある時間だけ待ってから上記のような各種の選択可能な領域間のフォーカスの切り替えを行うように構成される。例えばプログラム可能な遅延を導入して、ユーザの頭の急速な動き、あるいはフォーカスの切り替えを行うに値しない他の様態の動きを考慮する助けとすることができる。
【００４５】
特定の実施例では、ロジック２２０を、推定される頭部の動きや動作を１つまたは複数のパラメータまたは閾値／レベルに照らしてテストするようにも構成し、取るに足らないユーザの頭部の動作および／または処理エラーによって不慮の／根拠のないフォーカスの切り替えが行われないようにする。
【００４６】
当業者は、図２から、システム２００を、複数のレンズ／カメラからの画像データを使用してさらに高度な顔の検出および／または追跡を提供するように構成できることも理解されよう。
【００４７】
次いで図３（ａ〜ｄ）に目を向けると、これらの図には、本発明の特定の態様に従って、３次元のユーザの頭部のある例示的な顔の特徴部位と、その例示的な顔の特徴部位間の幾何学的位置が観察者（カメラの視点）にどのように見えるかと、その２次元の顔の画像内でどのように異なって見えるかを表現している。
【００４８】
図３（ａ）は、ユーザの頭部の顔部分３００を示す。顔部分３００は、２つの目、すなわち左目３０２Ａと右目３０２Ｂを含んでいる。この図では、例えば、右目３０２Ｂには、中心３０４、左端３０６、および右端３０８があるように描かれている。また、２つの眉、すなわち左の眉３１０Ａと右の眉３１０Ｂもある。ここでは、例えば右の眉３１０Ｂには、左端３１２と右端３１４があるように描かれている。顔部分３００は、先端部３１８を有する鼻３１６と、左端３２２および右端３２４を有する口３２０も含んでいる。
【００４９】
これらの例示的な顔の特徴部位と点の少なくとも一部分に基づいて、ロジック２２０は、画像中のユーザの顔を識別し、２つ以上の時間的に関係づけられた画像中で検出される動作に基づいてユーザの頭部姿勢を推定するように構成される。この推定は、現在のフレーム中の情報を考慮することもできる。
【００５０】
図３（ｂ）に、一続きの画像中に現れることがあるないくつかの異なる頭部姿勢３００Ａ〜Ｈおよび３００Ｊを示す。この図で、頭部姿勢３００Ａにおいてユーザは基本的にビューア／カメラをまっすぐに見ているものと考えられ、この説明では参照のためにこの初期位置をｘ，ｙ面の中心とする。ユーザが頭を左（正のｘ軸方向）に向けると、その結果得られる画像は頭部姿勢３００Ｂになる。逆にユーザが頭を右（負のｘ軸方向）に向けた場合は、得られる頭部姿勢は３００Ｃになるであろう。頭部姿勢３００Ａ、Ｂ、およびＣでは、ユーザの頭部の動きは、ｙ軸に沿った頭部の回転を含むだけであることに留意されたい。
【００５１】
頭部姿勢３００Ｄ、Ｅ、およびＦでは、ユーザの頭部は上方（正のｙ軸方向）に傾けられた状態で前方（Ｄ）を向き、左および右に（それぞれＥとＦ）回転している。同様に、頭部姿勢３００Ｇ、Ｈ、およびＪは、それぞれユーザの頭部が下方（負のｙ軸方向）に傾けられた状態で前向き、左回転、および右回転を示している。
【００５２】
これらの簡略化した例示的な頭部姿勢３００Ａ〜ＨおよびＪから、特定の検出可能な顔の特徴部位間の予想される幾何学的配置は、ユーザ頭部の回転および／または傾きに応じて変化することに気付かれよう。このように、例えば、ロジック２２０は、これらの顔の特徴部位の２つ以上を識別し、相互にそれら顔の特徴部位の位置の変化を監視するように構成することができる。
【００５３】
例として、図３（ｃ）に、異なる顔の特徴部位または点をどのように組み合わせて、ユーザの頭部が図３（ｂ）に示す回転および／または傾きの動きに伴って変化することになる幾何学的パターンを確定するかを示す。図３（ｃ）の第１の頭部姿勢３００Ａでは、ユーザの鼻の先端、ユーザの口の左端、および右端の間に例示的な三角形３２６が形成されている。図３（ｃ）の第２の頭部姿勢３００Ａでは、ユーザの鼻の先端、ユーザの左目の中心、右目の中心間に例示的な三角形３２８が形成されている。図３（ｃ）に示す第３の頭部姿勢３００Ａでは、ユーザの右目の左端、ユーザの左目の右端、ユーザの口の左端の間に例示的な三角形３３０が形成されている。これらは数例に過ぎない。
【００５４】
図３（ｄ）に示すように、頭部姿勢３００Ｋは１つの点を使用できることを表し、頭部姿勢３００Ｌは２つの点を使用できることを表し、頭部姿勢３００Ｍは３つの点を使用できることを表し、頭部姿勢３００Ｎは４つの点を使用できることを表す。このように、１つまたは複数の点を使用することができる。
【００５５】
次に図４に移ると、同図には、カメラ２１６が、フレームキャプチャ機能４０２を通じてロジック２２０に動作可能なように結合されているビデオカメラを含むシステム４００をさらに示している。フレームキャプチャ技術はよく知られている。ロジック２２０内には、フレームキャプチャ機能４０２によって出力される画像データを受け取るか、その他の形で画像データにアクセスする姿勢推定ロジック４０４がある。ここで、本例では、姿勢推定ロジック４０４はさらに、ユーザインターフェースロジック４０６に動作可能なように結合されている。姿勢推定ロジック４０４は、例えば上述の顔部の複数の点を使用してユーザの頭部の姿勢を査定し、ユーザの現在の頭部姿勢に基づいてユーザの推定注目エリアに対応する情報をユーザインターフェースロジック４０６に出力するように構成される。
【００５６】
姿勢推定ロジック４０４のより詳細な例示的な実施例を図５のシステム５００に示す。ここでは、姿勢推定ロジックは、キャプチャされた画像内で顔の領域を識別する顔部検出器５０２を含む。顔部検出器５０２からの出力は、例えばＳＳＤトラッカ５０４などのトラッカに提供される。ＳＳＤトラッカ５０４は、少なくとも１つの検出されたエリアを出力し、そのエリアは次に１つまたは複数の部位検出器５０６に提供され、部位検出器５０６は、顔部の点を検出し、何らかの（適切な）信頼度（ｃｏｎｆｉｄｅｎｃｅ）の目安とともに出力する。この例では、信頼度の情報は、信頼度の出力を例えばバイリニア抽出（ｂｉｌｉｎｅａｒ  ｅｘｔｒａｃｔｉｏｎ）または何らかの他の技術を通して対応する大まかな情報にマッピングすることにより大まかな姿勢位置を生成するように構成された少なくとも１つの信頼度姿勢推定器５１０に提供される。大まかな姿勢情報は、検出された顔部の要点とともに、統合姿勢推定器５１２に提供され、この推定器は推定頭部姿勢の情報をユーザインターフェースロジック４０６に出力する。ここで、例えば、統合姿勢推定器５１２は、楕円推定器５１２Ａと反復推定器５１２Ｂを含み、ユーザインターフェースロジック４０６内のポインティングデバイスコントローラ５１４によって使用することができる推定頭部姿勢情報を出力する。
【００５７】
従来の顔部の検出技術を顔部検出器５０２に実施して、顔の可能性のある画像内の領域を見つけることができる。特定の例示的な実施例では、顔部検出器５０２は、ＡｄａＢｏｏｓｔトレーニング技術（特許文献１に記載）と併せて従来のＡｄａＢｏｏｓｔクラシファイア技術（非特許文献１に記載）を含む。
【００５８】
これらおよびその他のタイプのクラシファイアは、例えば各種の顔部および非顔部のサンプルの画像サンプルを使用してトレーニングすることができる。このトレーニングは、例えばオフラインの機械学習で行うことができる。次いで顔部検出器５０２を使用して、すべての潜在的な顔部の領域を走査し、それが顔であるかどうかを判定することにより、初期化ビデオフレーム／画像において顔の領域を見つける。顔の位置と大きさの他に、顔部検出器５０２は、例えば顔部チャネル（ｆａｃｅ  ｃｈａｎｎｅｌ）と称することもある顔の大まかな姿勢推定を行うための情報を出力することもできる。顔部チャネルが正面向きである場合、ＳＳＤトラッカ５０４は下記のように初期化することができる。
【００５９】
この例示的な実施例では、ＳＳＤトラッカ５０４は、追跡されたパッチ（例えば顔領域）の以前に記憶された画像と、その現在の画像との平方和の差を最小にすることに基づく画像パッチトラッカ（ｉｍａｇｅ  ｐａｔｃｈ  ｔｒａｃｋｅｒ）である。画像パッチ（テンプレート画像）を、繰り返し更新して、例えば姿勢と照明によって生じる顔領域の見かけ上の変動を克服する。ＳＳＤトラッカ５０４は、例えば、顔の要点が位置する可能性のあるおよそのエリアを提供するためにユーザの顔の鼻から口にかけての領域を追跡するように構成することができる。ここで、追跡する領域の大きさは、システム５００の信頼性、堅牢性、および速度のバランスをとるように慎重に選択することができる。
【００６０】
ＳＳＤ追跡技術はよく知られている。例えば非特許文献２に発表された記事が参照される。
【００６１】
本発明の特定のさらなる態様によれば、ＳＳＤトラッカ５０４は、少なくとも１つのプログラム可能な、あるいはその他の形で定義されたアラート閾値（例えば潜在的な追跡エラーを示す）を満たすか、または超える差を見つけると、他のロジックに新しい初期化プロセスをトリガするように知らせる。
【００６２】
当業者は、例示的なＳＳＤトラッカ５０４の代わりに、あるいはＳＳＤトラッカ５０４に加えて他のトラッカ技術を用いることができることを認識されよう。
【００６３】
部位検出器５０６は、この例では、例えば左／右の目の中心、鼻の先端、および左／右の口の端など顔領域内の選択された顔の要点を特定するように構成された一群の検出器である。特定の実施例では、部位検出器５０６は、顔部検出器５０２と同様の設計である。しかし、部位検出器のそれぞれは、後に信頼度姿勢推定器５１０で使用される結果として特定された顔の要点についての信頼度情報を出力するように構成することができる。図５の例示的な実施例では、部位検出器５０６は、目に関連する特定の特徴を検出するように構成された目検出器５０６（Ａ）、鼻に関連する特定の特徴を検出するように構成された鼻検出器５０６Ｂ、および／または口に関連する特定の特徴を検出するように構成された口検出器５０６Ｃを含む。部位検出器５０６内には他の特徴検出器５０６Ｚも提供することができ、例えば眉検出器を提供することができる。
【００６４】
信頼度姿勢推定器５１０は、部位検出の信頼度出力に基づいて大まかな姿勢の位置を相関付け、判定する。例えば、左／右の目の中心、鼻の先端、および左／右の口の端の信頼度出力が、図３（ａ〜ｄ）に示すユーザの頭部姿勢と相関する。各信頼度の出力は、特定の関数に従う。ユーザの顔が正面を向いている時（３００Ａ）、左と右の目の端の信頼度は基本的に等しい。しかし、ユーザの頭部が左または右を向くと、左と右の目の端の信頼度に差が生じ、その差はヨー角によって決まる。ユーザの頭部が上または下に傾くと、鼻の信頼度もその基本値と異なる。
【００６５】
結果的に、顔部の要点の連続する信頼度出力に基づいて、信頼度姿勢推定器は、姿勢推定のための特定の点を動的に選択することができる。このように、あるフレーム中の様々な顔部の要点の信頼度出力と、別のフレーム中の同じ顔部の要点とを比較することにより、信頼度姿勢推定器５１０は、頭部姿勢の大まかな推定を生成することができる。特定の実施例では、ヨー角に対する少なくとも１つの信頼度姿勢推定器と、傾斜角に対する少なくとも１つの信頼度姿勢推定器がある。システムによっては、ヨー角の変化、または傾斜角度の変化のどちらかを考慮すればよいことが解る。
【００６６】
特定の実験上の実施例では、信頼度姿勢推定器５１０の精度は約１５度であった。そのため、あるシステムでは、この大まかな頭部姿勢の推定は、ユーザインターフェースロジック４０６に直接渡すのに十分正確である場合がある。例えば、それぞれ異なる選択可能な領域を持つ３つのモニタを備えたシステムでは、この大まかな推定は、それらのモニタ間の自動的な切り替えを行わせるのに十分である可能性がある。頭部姿勢の推定がより正確である必要のある場合は、統合姿勢推定器５１２を用いる。無論、統合姿勢推定器５１２は、信頼度姿勢推定器５１０よりも多くの計算時間／リソースを必要とすることになると考えられる。
【００６７】
例示的なストラテジの１つでは、統合姿勢推定器５１２は、ユーザの頭部がある位置である時間（例えばｎ×２個のフレーム）にわたって留まったと考えられるまでは使用されない。使用されるときには、統合姿勢推定器５１２は、ある時間にわたって実行されるか、および／または選択された部位検出器５０６が収束するまで実行される。
【００６８】
さらに他の例示的な実施例では、信頼度姿勢推定器を統合姿勢推定器５１２と組み合わせることができる。
【００６９】
例示的な統合姿勢推定器５１２内では、より正確な姿勢推定のために異なる方法が組み合わせられる。ここで、例えば、楕円姿勢推定器５１２Ａを、ある数（例えば３つ以上）の顔部の要点を取り扱い、それらの点を楕円にフィットさせるように構成することができる。長径と短径の長さの比に従って、公称の顔部の平面と公称のカメラ平面との間の二面角が導出される。次いで短径の方向に従って顔部の平面の法線方向を求めることができる。
【００７０】
楕円姿勢推定技術についてのさらに詳細な情報については、非特許文献３の記事を参照されたい。
【００７１】
反復姿勢推定器５１２Ｂは、この例では、数個の顔部の要点（２個以上など）を取り扱い、対応する顔部の要点の実際の構成の予測と推定される構成との距離を最小にするという目的に従ってヨー角、傾斜角、ロール角、および／またはスケールなどの特定の姿勢パラメータを反復的に最適化するように構成される。
【００７２】
楕円推定器５１２Ａおよび反復推定器５１２Ｂはともに、顔部の要点の検出誤差を考慮するように構成することができ、出力頭部姿勢を安定させることを試みることができる。このように、例えば、統合姿勢推定器５１２は、フィルタリングおよび平滑化の技術を用いることができる。
【００７３】
ポインティングデバイスコントローラ５１４は、基本的に、すべての注目エリア（ビューと称することもある）におけるユーザの作業ステータスを記憶／復元するインターフェースロジックである。作業ステータスには、例えば、アクティブ化された選択可能な領域、ポインタの位置、挿入カーソルなどが含まれる。非常に大型のディスプレイを使用するシステムでは、ビューは、画面上の特定のエリアを表すことができるのに対し、複数のモニタを備えるシステムでは、ビューは単一のモニタに対応する場合がある。
【００７４】
ユーザが頭部の姿勢を変えて表示画面の別のエリアにフォーカスすると、姿勢推定ロジック４０４は、新しい姿勢についてポインティングデバイスコントローラ５１４に通知する。次いで、ポインティングデバイスコントローラ５１４は、現在の注目エリアにおける作業ステータスを記憶し、例えば元の文書をアクティブ化するなど注意力が向けられた注目エリアの作業ステータスを復元し、ポインタを前にあった位置に戻し、ウィンドウに挿入カーソルがある場合には挿入カーソルを表示する。
【００７５】
例示的な姿勢推定ロジック４０４は、大型ディスプレイシステムまたは複数モニタシステムと互換性を持つように設計されている。これにより、ユーザが、ビューの数を設定することにより維持されることになる注目エリアの数をカスタマイズすることも可能になる。
【００７６】
次いで図６に移ると、方法６００を示す流れ図であり、ここに提供した改良された技術をさらに例示し、説明している。
【００７７】
動作６０２で画像をキャプチャする。これには、単一の画像を含む場合も、複数の画像（例えばステレオ画像システムの場合など）を含む場合もある。画像は、キャプチャされたビデオデータの１フレームでもよい。次に動作６０４で、動作６０２の画像を分析するか、その他の形で画像内の顔を検出するよう処理する。動作６０６で少なくとも１つの顔の正面部分が検出されたかどうかを判定し、検出された場合は、この方法は動作６０８に進む。動作６０６で、正面向きの顔が検出されなかった場合は、この方法は動作６０２に戻り、新しい画像をキャプチャする。
【００７８】
動作６０８で初期化プロセスを行い、このプロセスで、例えば左／右の目の中心、左／右の口の端、および鼻の先端などの顔の要点を少なくとも２つの部位検出器によって検出し、点の位置の構成と顔の要点の基本となる信頼度を今後の姿勢推定のために記憶する。通例このような部位検出器は十分に高速で動作し、初期化プロセスは１秒未満で行われるようにする。動作６１０で初期化が正常に完了した場合、方法は動作６１２に進み、初期化が正常に完了しなかった場合、この方法は動作６０８に戻り、初期化プロセスを再度行う。図６には示していないが、繰り返しの／より詳細な試みをある回数行っても初期化に成功することができない場合は、この方法は動作６０２に戻ってもよい。
【００７９】
動作６１２で、成功した初期化に続いて、例えばＳＳＤトラッカなどを使用して、選択された顔領域を追跡する。ここで、例えば、システムは、あらゆるフレームで反復ＳＳＤトラッカを使用してユーザの頭部を追跡するように構成することができる。例えば特定の実施例では、追跡される領域には鼻および口の端が含まれる。追跡される顔の要点に従って他の顔の要点を判定することができる。これらすべての部位検出器は、ユーザの頭部の姿勢に関連する信頼度を出力する。
【００８０】
動作６１４で、追跡された顔領域によって適切なアラート閾値を満たしたかどうかを判定し、満たしている場合動作６１６に進み、満たしていない場合動作６０４に戻る。
【００８１】
動作６１６で顔の要点を検出する。ここでは、例えば、鼻の先端や口の端など追跡される領域内の特定の顔の要点が対応する部位検出器によって検出され、精密化される。他の顔の要点は、追跡される顔の要点と以前のフレームからの姿勢情報に従って判定することができる。これらすべての部位検出器は、ユーザの頭部姿勢に関連する信頼度を出力する。信頼度姿勢推定器は、動的な顔の要点の選択戦略と信頼度出力の組合せに基づいて、ユーザの頭部姿勢の大まかな推定を生成することになる。動作６１８で、動作６１６の検出が成功したかどうかを判定する。成功した場合方法は動作６２０に進み、そうでなければ、方法は動作６２８に進む。
【００８２】
動作６２０で、ユーザの頭部姿勢についてより精密な推定が生成される。このように、例えば、ユーザが画面上のいずれかの場所に注意力を向けることができるようにユーザの頭部が動きを止めて、顔の要点の検出が成功し、高い信頼度レベルに最適化されると、顔の要点の位置が統合姿勢推定器に送られて姿勢推定の結果を精密化する。最終的なヨー角と傾斜角の結果は、例えば、上述の２つの姿勢推定器の出力を組み合わせることによって得られる。
【００８３】
動作６２２で、前回の判定以降ユーザの注目／フォーカス領域が変化したかどうかを判定する。変化があった場合、方法は動作６２４に進み、そうでなければ、方法は動作６２８に進む。
【００８４】
動作６２４で、これまでの（ｏｕｔｇｏｉｎｇ）選択可能領域についての現在のビューの作業ステータスを記憶する。動作６２６で、以前の作業ステータスまたは元の作業ステータスをこれからの（ｉｎｃｏｍｉｎｇ）選択可能な領域中に復元する。これで、ユーザの推定頭部姿勢からユーザが別の選択可能領域を見ていると考えられるときを推定することに基づく自動的なフォーカスの切り替えが完了する。
【００８５】
動作６２２には、例えば、フォーカスの切り替えができるようになる前に、プログラム可能な、またはその他の形で定義される遅延機構を組み込むことも可能である。ユーザの動きとインターフェースの反応の間にそのような遅延を導入する１つの理由は、この遅延により、特定の実施例ではロジックが姿勢出力をフィルタし、本質的に姿勢出力を安定化することができるようになることである。ここで、本方法は、例えば、先行するフレームの姿勢と現在のフレームの姿勢出力の線形結合を使用する。しかし、時間的により近いフレームがより重要なので、時間的に近いフレームをより重要とみなすか、または異なる形で論理的に重み付けすることができる。これにより、検出ノイズがあってもより平滑な姿勢出力曲線を生成する傾向になる。先に述べたような遅延を導入する別の理由は、ある状況では、ユーザは急に頭を別のビューに向け、また前のビューに戻る場合があるためである。時として、例えばユーザは別の選択可能領域を見て、現在選択されている領域に入力を続ける場合がある。フォーカス切り替えの決定を助けるために、ロジック２２０は、現在アクティブな領域におけるユーザ入力を監視するように構成し、ある時間内にそれ以上入力が行われないと、ユーザが新しいビューにフォーカスを切り替える状態であると判断することもできる。
【００８６】
特定の実施例では、顔部検出器は、画像内で２つ以上の顔を検出してもよいことが認められる。そのため、ロジック２２０は、検出された複数の顔の中から選択するように構成することもできる。例えば、多くの状況ではデバイスのユーザは通例表示画面と恐らくカメラ配置の最も近くにいるので、検出された顔の中で最も大きいサイズがそのユーザであると考えられる。特定の実施例では、顔認識機能を追加して検出された異なる顔をさらに判別することができる。
【００８７】
当業者には、カメラ、表示装置、およびユーザがデフォルトのシステムレイアウトに従ってそれぞれ配置される場合、システムの較正プロセスは必要でない場合があることを認めるであろう。デフォルトのシステムレイアウトでない場合は、システムの初期化中にそのレイアウトについて較正を行う必要があることがある。
【００８８】
ここで説明し、図面に示すように、本発明の特定の例示的態様によれば、顔部／部位検出器の信頼度出力に基づく例示的な姿勢推定プロセスを提示した。例示的な反復姿勢推定器は、オブジェクトの主要な点に基づくことができる。このシステムは、例えば粗密方式（ｃｏａｒｓｅ  ｔｏ  ｆｉｎｅ）の姿勢推定を含むことができ、その場合は、例えば全フレームについて大まかな姿勢を推定し、検出されたユーザの顔が十分に長い時間にわたって動きを止めた時に精密化することができる。例示的なユーザシナリオには、例えばユーザが大型ディスプレイ、単一ディスプレイ、複数のディスプレイ、および／または複数のユーザ注目エリアで作業するシステムを挙げることができる。複数の注目エリアの自動切り替えは、ユーザの現在の姿勢の推定と、対応するビューに基づく。
【００８９】
例示的な追跡方法ではＳＳＤについて説明した。しかし用いることができる他の従来の追跡方法がある。例示的なＳＳＤトラッカでは、ユーザの口と鼻の先端を含む領域を選択することで十分な結果が得られることが分かった。明らかに、システムが適切な精度および／または効率性の要件を前提に、ここで他の領域を使用することもできる。
【００９０】
本発明の特定の態様によれば、姿勢推定器によって使用される顔部の要点の数は変えることができる。例えば、検出の信頼度に基づく特定の大まかな姿勢推定器は、単一の要点に基づいて顔の大まかな姿勢を判定することができる。それにより得られる大まかな頭部姿勢は、例えばヨー角、傾斜角、ロール角、ｘ方向の平行移動、ｙ方向の平行移動、スケールファクタなど、少なくとも１つの頭部姿勢パラメータを含む。例示的な楕円姿勢推定器と反復姿勢推定器は、少なくとも３つの要点を使用して精密な姿勢推定を生成する。一般には、そのような推定器が利用できる要点の数が多いほど、結果として得られる推定の精度が高くなる。
【００９１】
（まとめ）
本発明について、構造的特徴および／または方法論的動作に固有の言葉で説明したが、添付の特許請求の範囲に定義される本発明は、記載した具体的な特徴またはステップに必ずしも限定されないことを理解されたい。
【図面の簡単な説明】
【００９２】
【図１】例示的なコンピュータシステムを表現したブロック図である。
【図２】本発明の特定の例示的な実施例による人の頭部の姿勢を査定する際に使用するためのシステムを表現したブロック図である。
【図３ａ】本発明の特定の態様による、３次元のユーザ頭部の例示的な顔の特徴と、それら顔の特徴の間の幾何学的配置が観察者に対して、顔の２次元画像内でどのように異なって見えるかを表現した説明図である。
【図３ｂ】本発明の特定の態様による、３次元のユーザ頭部の例示的な顔の特徴と、それら顔の特徴の間の幾何学的配置が観察者に対して、顔の２次元画像内でどのように異なって見えるかを表現した説明図である。
【図３ｃ】本発明の特定の態様による、３次元のユーザ頭部の例示的な顔の特徴と、それら顔の特徴の間の幾何学的配置が観察者に対して、顔の２次元画像内でどのように異なって見えるかを表現した説明図である。
【図３ｄ】本発明の特定の態様による、３次元のユーザ頭部の例示的な顔の特徴と、それら顔の特徴の間の幾何学的配置が観察者に対して、顔の２次元画像内でどのように異なって見えるかを表現した説明図である。
【図４】本発明の特定の例示的な実施例による、人の頭部の姿勢を査定するように構成された姿勢推定ロジックを有するシステムを表現した別のブロック図である。
【図５】本発明のさらなる特定の実施例による、例えば図４のような例示的な姿勢推定ロジックと特定のユーザインターフェース機能／ロジック内の機能を表現したブロック図である。
【図６】本発明の特定の例示的な実施例による姿勢推定プロセスを表現した流れ図である。
【符号の説明】
【００９３】
１２０  コンピューティング環境
１３０  コンピュータ
１３２  処理装置
１３４  システムメモリ
１３６  バス
１３８  ＲＯＭ
１４０  ＲＡＭ
１４２  ＢＩＯＳ
１４４  ハードディスクドライブ
１４６  磁気ディスクドライブ
１４８  磁気ディスク
１５０  光ディスクドライブ
１５２  光ディスク
１５８  オペレーティングシステム
１６０、１８９  アプリケーションプログラム
１６２  プログラムモジュール
１６４  プログラムデータ
１６６  キーボード
１６８  ポインティングデバイス
１７０  ユーザ入力インターフェース
１７２  モニタ
１７４  ビデオアダプタ
１７５  出力周辺インターフェース
１７７  ＬＡＮ
１７８  モデム
１７９  ＷＡＮ
１８０  インターネット
１８２  リモートコンピュータ
１８６  アダプタ
２００、４００、５００  システム
２１６  カメラ
２１８  インターフェース
２０２  表示域
２０４、２０６、２０８  選択可能領域
２１０  ポインタ
２２０  ロジック
３００  顔部分
３００Ａ〜Ｈ、３００Ｊ  頭部姿勢
３０２Ａ  左目
３０２Ｂ  右目
３０４  目の中心
３０６  目の左端
３０８  目の右端
３１０Ａ  左の眉
３１０Ｂ  右の眉
３１２  眉の左端
３１４  眉の右端
３１６  鼻
３１８  鼻の先端
３２０  口
３２２  口の左端
３２４  口の右端
４０２  フレームキャプチャ機能
４０４  姿勢推定ロジック
４０６  ユーザインターフェースロジック
５０２  顔部検出器
５０４  ＳＳＤトラッカ
５０６  部位検出器
５１０  信頼度姿勢推定器
５１２  統合姿勢推定器
５１２Ａ  楕円推定器
５１２Ｂ  反復推定器
５１４  ポインティングデバイスコントローラ
【図１】
2004362569.tif 000003
【図２】
2004362569.tif 000004
【図３ａ】
2004362569.tif 000005
【図３ｂ】
2004362569.tif 000006
【図３ｃ】
2004362569.tif 000007
【図３ｄ】
2004362569.tif 000008
【図４】
2004362569.tif 000009
【図５】
2004362569.tif 000010
【図６】
2004362569.tif 000011