(57)【要約】【課題】使い勝手を向上させることができるようにする。【解決手段】情報処理システムは、複数のカメラにより撮影された撮影画像に基づいてユーザの視線方向を検出し、その視線方向から求まるユーザの注視位置に応じた処理を実行する。また、情報処理システムは、ユーザの視線方向の検出精度を算出するとともに、その視線方向の検出精度に応じて、表示させる操作画面の表示形態を切り替える。本技術は情報処理システムに適用することができる。【選択図】図７
2016151798.tif 000002
【特許請求の範囲】
【請求項１】
複数の撮影部によりユーザを被写体として撮影して得られた撮影画像に基づいて、前記ユーザの視線方向を検出する視線方向検出部と、
前記ユーザの前記視線方向の検出精度を算出する検出精度算出部と
を備える情報処理装置。
【請求項２】
前記検出精度算出部は、前記撮影部と前記ユーザとの位置関係に関する情報、前記撮影部に関する情報、前記撮影画像に関する情報、および前記ユーザの注視時間の少なくとも何れかに基づいて、前記検出精度を算出する
請求項１に記載の情報処理装置。
【請求項３】
前記検出精度に応じた処理を実行する第１の処理部をさらに備える
請求項１に記載の情報処理装置。
【請求項４】
前記第１の処理部は、前記ユーザの視線による操作が行われる操作画面を、前記検出精度に応じた表示形態で表示させる
請求項３に記載の情報処理装置。
【請求項５】
前記第１の処理部は、前記検出精度に応じて、前記操作画面における操作対象を異なる大きさで表示させる
請求項４に記載の情報処理装置。
【請求項６】
前記第１の処理部は、前記検出精度に応じて、前記操作画面上に異なる数の操作対象を表示させる
請求項４に記載の情報処理装置。
【請求項７】
前記視線方向から求められた、前記ユーザの前記操作画面上の注視位置に応じた処理を実行する第２の処理部をさらに備える
請求項４に記載の情報処理装置。
【請求項８】
前記第１の処理部は、前記検出精度が閾値未満である場合、前記注視位置近傍にあるいくつかの操作対象が、前記注視位置に対応する操作対象の候補として表示される前記操作画面を表示させる
請求項７に記載の情報処理装置。
【請求項９】
前記第１の処理部は、複数の前記ユーザのそれぞれについて算出された前記視線方向の前記検出精度と、予め定められた閾値とを比較し、その比較結果に応じた処理を実行する
請求項３に記載の情報処理装置。
【請求項１０】
複数の撮影部によりユーザを被写体として撮影して得られた撮影画像に基づいて、前記ユーザの視線方向を検出し、
前記ユーザの前記視線方向の検出精度を算出する
ステップを含む情報処理方法。
【請求項１１】
複数の撮影部によりユーザを被写体として撮影して得られた撮影画像に基づいて、前記ユーザの視線方向を検出し、
前記ユーザの前記視線方向の検出精度を算出する
ステップを含む処理をコンピュータに実行させるプログラム。
【請求項１２】
複数の撮影部によりユーザを被写体として撮影して得られた撮影画像のうちの少なくとも１つの前記撮影画像に基づいて、前記ユーザの視線方向を検出する視線方向検出部と、
前記複数の前記撮影部で得られた前記撮影画像のうちの少なくとも２つの前記撮影画像について、前記撮影画像から前記ユーザの頭部を検出することで、前記ユーザの頭部位置を求め、前記撮影画像から前記ユーザの頭部が検出されなかった場合、前記撮影画像から検出された前記ユーザの一部分から推定により前記頭部位置を求める頭部検出部と、
前記ユーザの前記視線方向と、少なくとも２つの前記撮影画像について得られた前記ユーザの前記頭部位置とに基づいて、前記ユーザの注視位置を算出する注視位置算出部と
を備える情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は情報処理装置および方法、並びにプログラムに関し、特に、使い勝手を向上させることができるようにした情報処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
近年、カメラを利用してユーザの視線方向を検出し、その検出結果を利用して乗用車の安全運転のための評価やフィードバックを行なったり、UI（User Interface）上のアイコン選択やカーソル移動を行なったりすることが提案されている。
【０００３】
このようにユーザの視線方向の検出結果を利用して何らかの処理を行う場合には、ユーザの視線方向を高精度に検出することが必要となる。そこで、複数のカメラを利用して視線方向の検出精度を向上させる技術が提案されている（例えば、特許文献１参照）。
【０００４】
この技術では、複数のカメラのなかから、視線方向の検出に用いる１つまたは２つのカメラが選択される。そして、１つのカメラが選択された場合にはそのカメラの方向が視線方向とされ、２つのカメラが選択された場合には、それらの２つのカメラで得られた画像に基づいて視線方向が検出される。
【０００５】
また、例えば複数のカメラでユーザの視線方向を検出するにあたり、ユーザの眼の開閉の状態を検出することで、視線方向検出のエラーを回避する技術（例えば、特許文献２参照）や、テンプレートマッチングによりユーザの顔向きと特徴点を検出し、その検出結果から視線方向を検出する技術も提案されている（例えば、特許文献３参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１２−２２６４６号公報
【特許文献２】特開２００３−１５８１６号公報
【特許文献３】特開２００２−２８８６７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、ユーザの視線方向を検出する際に、ユーザの顔の位置や顔の方向など、ユーザとカメラとの位置関係によっては、ユーザの視線方向を高精度に検出することが困難な場合もある。
【０００８】
このように視線方向の検出精度が低下してしまう状況では、視線方向の検出結果に応じた処理を実行するときに、ユーザやシステムの管理者等が意図しない処理が行われてしまうこともある。そのため、どのような状況であっても、なるべくユーザやシステムの管理者等の意図に沿った処理が行われるように、視線方向の検出結果を利用して処理を行うシステムの使い勝手の向上が望まれている。
【０００９】
本技術は、このような状況に鑑みてなされたものであり、使い勝手を向上させることができるようにするものである。
【課題を解決するための手段】
【００１０】
本技術の第１の側面の情報処理装置は、複数の撮影部によりユーザを被写体として撮影して得られた撮影画像に基づいて、前記ユーザの視線方向を検出する視線方向検出部と、前記ユーザの前記視線方向の検出精度を算出する検出精度算出部とを備える。
【００１１】
前記検出精度算出部には、前記撮影部と前記ユーザとの位置関係に関する情報、前記撮影部に関する情報、前記撮影画像に関する情報、および前記ユーザの注視時間の少なくとも何れかに基づいて、前記検出精度を算出させることができる。
【００１２】
情報処理装置には、前記検出精度に応じた処理を実行する第１の処理部をさらに設けることができる。
【００１３】
前記第１の処理部には、前記ユーザの視線による操作が行われる操作画面を、前記検出精度に応じた表示形態で表示させることができる。
【００１４】
前記第１の処理部には、前記検出精度に応じて、前記操作画面における操作対象を異なる大きさで表示させることができる。
【００１５】
前記第１の処理部には、前記検出精度に応じて、前記操作画面上に異なる数の操作対象を表示させることができる。
【００１６】
情報処理装置には、前記視線方向から求められた、前記ユーザの前記操作画面上の注視位置に応じた処理を実行する第２の処理部をさらに設けることができる。
【００１７】
前記第１の処理部には、前記検出精度が閾値未満である場合、前記注視位置近傍にあるいくつかの操作対象が、前記注視位置に対応する操作対象の候補として表示される前記操作画面を表示させることができる。
【００１８】
前記第１の処理部には、複数の前記ユーザのそれぞれについて算出された前記視線方向の前記検出精度と、予め定められた閾値とを比較させ、その比較結果に応じた処理を実行させることができる。
【００１９】
本技術の第１の側面の情報処理方法またはプログラムは、複数の撮影部によりユーザを被写体として撮影して得られた撮影画像に基づいて、前記ユーザの視線方向を検出し、前記ユーザの前記視線方向の検出精度を算出するステップを含む。
【００２０】
本技術の第１の側面においては、複数の撮影部によりユーザを被写体として撮影して得られた撮影画像に基づいて、前記ユーザの視線方向が検出され、前記ユーザの前記視線方向の検出精度が算出される。
【００２１】
本技術の第２の側面の情報処理装置は、複数の撮影部によりユーザを被写体として撮影して得られた撮影画像のうちの少なくとも１つの前記撮影画像に基づいて、前記ユーザの視線方向を検出する視線方向検出部と、前記複数の前記撮影部で得られた前記撮影画像のうちの少なくとも２つの前記撮影画像について、前記撮影画像から前記ユーザの頭部を検出することで、前記ユーザの頭部位置を求め、前記撮影画像から前記ユーザの頭部が検出されなかった場合、前記撮影画像から検出された前記ユーザの一部分から推定により前記頭部位置を求める頭部検出部と、前記ユーザの前記視線方向と、少なくとも２つの前記撮影画像について得られた前記ユーザの前記頭部位置とに基づいて、前記ユーザの注視位置を算出する注視位置算出部とを備える。
【００２２】
本技術の第２の側面においては、複数の撮影部によりユーザを被写体として撮影して得られた撮影画像のうちの少なくとも１つの前記撮影画像に基づいて、前記ユーザの視線方向が検出され、前記複数の前記撮影部で得られた前記撮影画像のうちの少なくとも２つの前記撮影画像について、前記撮影画像から前記ユーザの頭部を検出することで、前記ユーザの頭部位置が求められ、前記撮影画像から前記ユーザの頭部が検出されなかった場合、前記撮影画像から検出された前記ユーザの一部分から推定により前記頭部位置が求められ、前記ユーザの前記視線方向と、少なくとも２つの前記撮影画像について得られた前記ユーザの前記頭部位置とに基づいて、前記ユーザの注視位置が算出される。
【発明の効果】
【００２３】
本技術の第１の側面によれば、使い勝手を向上させることができる。また、本技術の第２の側面によれば、より堅強にユーザの注視位置を検出することができる。
【図面の簡単な説明】
【００２４】
【図１】視線方向の検出について説明する図である。
【図２】視線方向の検出精度に応じたUI表示について説明する図である。
【図３】情報処理システムの構成例を示す図である。
【図４】ユーザの顔の向きおよび眼の向きについて説明する図である。
【図５】情報処理システムのより詳細な構成例を示す図である。
【図６】UI表示処理を説明するフローチャートである。
【図７】視線方向の検出精度に応じたUI表示について説明する図である。
【図８】UI表示処理を説明するフローチャートである。
【図９】情報処理システムの構成例を示す図である。
【図１０】情報処理システムの構成例を示す図である。
【図１１】コンピュータの構成例を示す図である。
【発明を実施するための形態】
【００２５】
以下、図面を参照して、本技術を適用した実施の形態について説明する。
【００２６】
〈第１の実施の形態〉
〈本技術の概要について〉
まず、本技術の概要について説明する。本技術は、１または複数のユーザの視線方向を検出し、その検出結果に応じた処理を実行する情報処理システムに関するものである。
【００２７】
本技術を適用した情報処理システムは、主に、複数のカメラを利用してロバストに視線方向を検出すること、および視線方向の検出精度を算出し、検出精度に応じた処理を実行することを特徴とする。
【００２８】
例えば図１に示すように、本技術を適用した情報処理システムは、所定の領域R11内にいる１または複数のユーザを視線検出対象者として、各ユーザの視線方向を検出し、その検出結果に応じた処理を実行する。
【００２９】
すなわち、情報処理システムはカメラCA11-1乃至カメラCA11-6を有する構成とされており、情報処理システムは、それらのカメラCA11-1乃至カメラCA11-6を利用して、領域R11内にいるユーザU11乃至ユーザU13の視線方向を検出する。
【００３０】
例えば、カメラCA11-1は領域R11のある空間の天井に設けられ、領域R11内の特定領域を撮影可能なカメラとされ、カメラCA11-2は領域R11のある空間の天井に設けられ、領域R11全体を撮影可能な広角カメラとされている。
【００３１】
また、カメラCA11-3乃至カメラCA11-5は、領域R11内の任意の位置に固定されたカメラとされ、カメラCA11-6はユーザU11が頭部に装着しているウェアラブルカメラとされる。
【００３２】
なお、以下、カメラCA11-1乃至カメラCA11-6を特に区別する必要のない場合、単にカメラCA11とも称することとする。
【００３３】
このように情報処理システムは、天井等の空間内に固定されているカメラCA11だけでなく、ユーザが装着しているカメラCA11なども利用し、複数のカメラCA11でユーザU11乃至ユーザU13を被写体として撮影する。そして、情報処理システムは、撮影の結果得られた撮影画像に基づいてユーザU11乃至ユーザU13の視線方向を検出する。
【００３４】
このように複数のカメラCA11で得られた撮影画像を用いることで、ロバストに各ユーザの視線方向を検出することができる。
【００３５】
なお、ユーザが視線方向検出機能を有する頭部装着型デバイスを装着している場合には、その頭部装着型デバイスで得られた視線方向の検出結果も用いるようにしてもよい。
【００３６】
ここで、視線方向検出機能を有する頭部装着型デバイスは、視線方向検出機能のみを有するデバイスであってもよいし、視線方向検出機能を有する表示デバイスや、カメラCA11-6等のウェアラブルカメラなどであってもよい。
【００３７】
例えばカメラCA11-6に視線方向検出機能が搭載されている場合には、情報処理システムは、カメラCA11-6により検出されたユーザU11の視線方向を、そのままユーザU11の視線方向の検出結果として利用する。
【００３８】
また、情報処理システムでは、ユーザの視線方向を検出する際に、その視線方向の検出精度も算出し、得られた検出精度に応じた処理を実行することで、情報処理システムの使い勝手を向上させている。
【００３９】
例えばユーザの視線方向を検出する場合、視線方向検出に用いるカメラの組み合わせ、カメラとユーザの位置関係、解像度等のカメラの性能、明るさ等の撮影条件、被写体のぼけ具合等の撮影画像の状態などによって、ユーザの視線方向の検出精度が変化する。
【００４０】
そこで、情報処理システムは、カメラの性能や、カメラの組み合わせ、撮影条件、撮影画像の状態などから視線方向の検出精度を算出する。そして、情報処理システムは、得られた検出精度に応じた処理を実行する。
【００４１】
例えば、情報処理システムが所定の表示部にユーザの視線により操作が行われる操作画面をUIとして表示させるとする。より具体的には、例えば表示部にUIとしての操作画面が表示され、ユーザが操作画面上のアイコンを自身の視線により指定し、そのアイコンに対して定められている処理を実行させるものとする。
【００４２】
また、ここでは視線方向の検出精度は、視線方向の検出を行うカメラとユーザとの距離のみにより定まり、カメラとユーザとの距離が近いほど検出精度が高いものとする。
【００４３】
このような場合、例えば情報処理システムは、視線方向の検出精度に応じて図２に示すように操作画面の表示を切り替える。
【００４４】
すなわち、情報処理システムは、カメラとユーザとの距離が近く、視線方向の検出精度が高い場合には、矢印Q11に示す操作画面IF11を表示させる。逆に、情報処理システムは、カメラとユーザとの距離が遠く、視線方向の検出精度が低い場合には、矢印Q12に示す操作画面IF12を表示させる。
【００４５】
矢印Q11に示す操作画面IF11には、画面上に操作対象である合計15個のアイコンAC11-1乃至アイコンAC11-15が並べられている。なお、以下、アイコンAC11-1乃至アイコンAC11-15を特に区別する必要のない場合、単にアイコンAC11とも称する。
【００４６】
この場合、視線方向の検出精度が十分に高いので、ユーザの視線方向から求まる操作画面IF11上のユーザの注視位置（注視点）も高精度に求めることができる。そのため、操作画面IF11上にある程度多くのアイコンAC11を表示しても、ユーザの視線方向の検出結果から、ユーザがどのアイコンAC11を注視しているか、つまりユーザがどのアイコンAC11を選択しているかを正確に特定することができる。
【００４７】
これに対して、視線方向の検出精度が低い場合には、ユーザの注視位置の検出精度も低くなるので、情報処理システムは、矢印Q12に示すようにアイコンの数が少ない操作画面IF12を表示させる。
【００４８】
この例では、操作画面IF12には、操作対象である3つのアイコンAC12-1乃至アイコンAC12-3のみが表示されている。なお、以下、アイコンAC12-1乃至アイコンAC12-3を特に区別する必要のない場合、単にアイコンAC12とも称することとする。
【００４９】
矢印Q12に示す操作画面IF12と、矢印Q11に示す操作画面IF11とを比較すると、操作画面IF12には、操作画面IF11よりも、より少ない数のアイコンAC12が、より大きいサイズで表示されている。したがって、ある程度、視線方向の検出精度が低くてもユーザが指定（選択）したアイコンAC12を正しく検出できるようになっている。
【００５０】
このように視線方向の検出精度に応じて、操作画面に表示されるアイコンの数や大きさ（サイズ）を変化させることで、ユーザが選択したアイコンの誤検出を防止し、ユーザに誤検出等に起因するストレスを感じさせないUIを提供することができる。換言すれば、操作画面上のアイコンを選択するときの操作性、つまり使い勝手を向上させることができる。
【００５１】
なお、ここでは視線方向の検出精度に応じて、２通りの表示パターンの何れか、つまり操作画面IF11と操作画面IF12の何れかを表示させる例について説明したが、検出精度に応じて３以上の表示パターンのうちの何れかが選択されるようにしてもよい。つまり、視線方向の検出精度に応じて、段階的に操作画面の表示形態が変化してもよい。
【００５２】
また、ここでは視線方向の検出精度に応じてアイコンの数と大きさを変化させる例について説明したが、視線方向の検出精度に応じて操作画面の一部が拡大表示されるようにしてもよい。具体的には、例えば視線方向の検出精度が十分高いときには、操作画面全体が表示され、視線方向の検出精度が低いときには、操作画面全体のうちの一部分が拡大表示される。
【００５３】
このとき、操作画面のどの部分を拡大表示するかは、ユーザの注視位置に基づいて定めればよい。つまり、ユーザの注視位置近傍の領域を視線方向の検出精度により定まる倍率で拡大表示すればよい。
【００５４】
その他、視線方向の検出精度に応じて、操作画面上に並べられて表示される複数のアイコン間の距離、つまりアイコンの間隔を変化させてもよい。また、視線方向の検出精度に応じて、ユーザの視線により操作されるカーソルの移動速度を変化させたり、ユーザが情報入力に使用する入力デバイスや情報の入力方法を変化させたりしてもよい。
【００５５】
また、複数の表示領域がある場合には、視線方向の検出精度が高いときには１つの表示領域に全情報を表示させ、視線方向の検出精度が低いときには複数の表示領域に分けて情報を表示させるようにしてもよい。
【００５６】
この場合、全情報をいくつかの表示領域に分けて表示させれば、視線方向の検出精度が低いときでも、より正確にユーザの注視位置、つまりユーザが注視している情報を特定することができるようになる。
【００５７】
さらに、説明を簡単にするため、カメラとユーザとの距離のみから視線方向の検出精度が求められる例について説明したが、検出精度は複数のパラメータを重み付き加算するなど、どのようにして求めてもよい。
【００５８】
例えば図１に示した例において、カメラCA11-6に視線方向検出機能が搭載されている場合には、カメラCA11-6によりユーザU11の視線方向を高精度に検出することができる。
【００５９】
そこで、例えば視線方向の検出に用いるカメラのなかに視線方向検出機能を有するカメラ、つまり視線方向検出機能を有する頭部装着型デバイス（以下、頭部装着型視線検出デバイスとも称する）がある場合に、検出精度が高いとされ、視線方向の検出に用いるカメラのなかに、そのような頭部装着型視線検出デバイスがない場合に検出精度が低いとされるようにしてもよい。
【００６０】
この場合、頭部装着型視線検出デバイスがあり、視線方向の検出精度が高いとされたときには、例えば上述した操作画面IF11が表示される。これに対して、視線方向の検出に用いるカメラが全て環境設置カメラのみである、つまり頭部装着型視線検出デバイスがなく、視線方向の検出精度が低いときには、操作画面IF12が表示される。
【００６１】
〈情報処理システムの例〉
続いて、以上において説明した情報処理システムのより具体的な実施形態について説明する。図３は、本技術を適用した情報処理システムの具体的な実施形態を示す図である。
【００６２】
この例では、情報処理システムは、各種の画像を表示する表示部１１、およびユーザの視線方向検出のための撮影画像を撮影するカメラ１２−１乃至カメラ１２−３を有している。なお、以下、カメラ１２−１乃至カメラ１２−３を特に区別する必要のない場合、単にカメラ１２とも称することとする。
【００６３】
空間内にいるユーザU21-1乃至ユーザU21-3は、それぞれ注視対象物である表示部１１の表示画面を見ながら、表示部１１に表示される操作対象であるアイコン等を視線により指定して、指定したアイコンに応じた処理を実行させる。以下、ユーザU21-1乃至ユーザU21-3を特に区別する必要のない場合、単にユーザU21とも称する。
【００６４】
この情報処理システムでは、３つのカメラ１２が用いられて視線方向検出の対象者である各ユーザU21の視線方向と、その視線方向の検出精度が求められ、それらの視線方向や検出精度に応じた処理が実行される。
【００６５】
具体的には、情報処理システムは、カメラ１２により撮影された各撮影画像に基づいて、各ユーザU21の視線方向と、その視線方向の検出精度を求め、得られた検出精度に応じて表示部１１に表示させる操作画面を変化させる。表示部１１に表示される操作画面は、上述したようにユーザU21の視線により操作が行われるUIである。
【００６６】
そして、情報処理システムは、求めた視線方向から、表示部１１上におけるユーザU21の注視位置（注視点）を求め、その注視位置にあるアイコンに応じた処理を実行する。例えば、この例ではユーザU21-1の注視位置は、位置P11となっており、情報処理システムは、求められた位置P11に表示されているアイコンに応じた処理を実行する。
【００６７】
アイコンに応じた処理は、例えばテレビジョン受像機等の操作対象とする機器の選択決定操作、ゲームの操作、画像や音声の再生処理の決定操作など、どのようなものであってもよい。
【００６８】
次に、このような情報処理システムにおける視線方向や注視位置の検出、視線方向の検出精度の算出、およびその検出精度に応じた処理について、より具体的に説明する。なお、以下では、図３に示した情報処理システムについて説明するときに、ユーザU21を単にユーザとも称することとする。
【００６９】
（カメラの位置と姿勢の認識について）
図３に示す情報処理システムでは、表示部１１や各ユーザU21が存在する空間（以下、検出対象空間とも称する）において、その検出対象空間上にグローバル座標系が設定される。
【００７０】
図３の例では、グローバル座標系は原点をOとし、互いに垂直なx軸、y軸、およびz軸を軸とする３次元直交座標系とされており、グローバル座標系の原点Oは、グローバル座標系における位置が既知である表示部１１の表示画面中心の位置となっている。
【００７１】
情報処理システムでは、ユーザの視線方向の検出や、その検出結果に応じた処理等の各種の処理を開始する前に、グローバル座標系における全カメラ１２の位置と姿勢が予め設定される。
【００７２】
ここで、カメラ１２の位置および姿勢とは、グローバル座標系におけるカメラ１２の配置位置と、そのカメラ１２の撮影方向である。具体的には、例えば各カメラ１２では、それらのカメラ１２を基準とするカメラ座標系がカメラ１２ごとに設定されている。
【００７３】
図３に示す例では、カメラ１２−２に対して、そのカメラ１２−２の位置を原点O’とし、互いに垂直なx’軸、y’軸、およびz’軸を軸とする３次元直交座標系がカメラ１２−２のカメラ座標系として予め定められている。
【００７４】
以下では、特にカメラ１２−２に限定せずに、任意のカメラのカメラ座標系の原点と軸を、原点O’、x’軸、y’軸、およびz’軸と称することとする。
【００７５】
例えばカメラ１２の位置と姿勢の設定時には、カメラ１２について定められているカメラ座標系の原点O’の位置が、グローバル座標系におけるカメラ１２の位置として設定される。また、カメラ１２について定められているカメラ座標系のロール角、ピッチ角、およびヨー角のそれぞれの角度から定まる撮影方向がカメラ１２の姿勢として設定される。
【００７６】
ここで、カメラ座標系のx’軸、y’軸、およびz’軸のそれぞれの方向が、グローバル座標系のx軸、y軸、およびz軸のそれぞれの方向と同じである状態を、カメラ１２の撮影方向が基準方向である状態とする。
【００７７】
このとき、カメラ座標系のロール角とは、カメラ１２のカメラ座標系（撮影方向）が、基準方向である状態から、z軸を回転軸としてどれだけ傾いているか、つまりz軸を回転軸としてどれだけ回転した状態となっているかを示す回転角度である。
【００７８】
また、カメラ座標系のピッチ角とは、カメラ１２のカメラ座標系（撮影方向）が、基準方向である状態から、x軸を回転軸としてどれだけ回転した状態となっているかを示す回転角度である。
【００７９】
同様に、カメラ座標系のヨー角とは、カメラ１２のカメラ座標系（撮影方向）が、基準方向である状態から、y軸を回転軸としてどれだけ回転した状態となっているかを示す回転角度である。
【００８０】
なお、各カメラ１２の位置と姿勢は、管理者等の入力によって設定されるようにしてもよいし、予め記録されている各カメラ１２の位置と姿勢を示す情報を読み込むことで設定されるようにしてもよい。
【００８１】
さらに、カメラ１２のうちの一部または全部については、自動認識によりカメラ１２の位置と姿勢が設定されるようにしてもよい。
【００８２】
自動認識の方法としては、例えばカメラ１２で予めグローバル座標系における位置が既知である背景等の複数の目標物が含まれる撮影画像が撮影され、得られた撮影画像からカメラ１２の位置および姿勢が求められる。
【００８３】
すなわち、撮影画像から特徴量を抽出して、撮影画像におけるそれらの目標物の位置と方向を特定すれば、撮影画像を撮影したカメラ１２のグローバル座標系における位置と姿勢を求めることができる。
【００８４】
また、自動認識の方法として、予めグローバル座標系における自身の位置と姿勢が既知である複数のカメラ１２により他のカメラ１２が含まれる撮影画像を撮影し、それらの撮影画像から、他のカメラ１２のグローバル座標系上の位置と姿勢を求めてもよい。
【００８５】
（ユーザの視線方向の検出について）
また、情報処理システムではユーザの視線方向を検出するにあたり、まず顔認識処理により、撮影画像から視線検出対象者となる各ユーザの顔が検出されるとともに、それらの各ユーザの顔の向きと、ユーザの眼の向きが検出される。
【００８６】
ここで、撮影画像からの顔の検出は、肌色領域の検出や特徴点の検出、テンプレートマッチングなど、どのようにして行われてもよい。このようにして撮影画像から検出されたユーザの顔の位置、つまり撮影画像内におけるユーザの顔領域から、検出対象空間上におけるカメラ１２から見たユーザの顔がある方向が分かる。
【００８７】
また、撮影画像内におけるユーザの顔の向きは、例えば顔から検出された左右の眼の顔内での位置や撮影画像内での傾き、撮影画像における顔の輪郭の傾きなどにより検出される。さらにユーザの眼の向きは、撮影画像内で検出されたユーザの眼全体の領域における黒目の位置等により特定することができる。
【００８８】
具体的には、例えば撮影画像内におけるユーザの顔の向きおよび眼の向きとして、図４に示す情報が検出される。
【００８９】
この例では、撮影画像からは１人のユーザFC11が検出されており、このユーザFC11の顔の向きとして、撮影画像に対する、つまりカメラ座標系に対するロール角、ピッチ角、およびヨー角が求められる。これらのロール角、ピッチ角、およびヨー角は、例えばユーザFC11がカメラ１２に対して正面を向いている状態を基準とした回転角度である。
【００９０】
すなわち、ロール角はカメラ座標系のz’軸を回転軸としたユーザFC11の顔の回転角度であり、ピッチ角はカメラ座標系のx’軸を回転軸としたユーザFC11の顔の回転角度であり、ヨー角はカメラ座標系のy’軸を回転軸としたユーザFC11の顔の回転角度である。また、ユーザFC11の眼の向きは、例えばユーザFC11の顔を基準とした黒目の向きとされる。
【００９１】
したがって、これらのユーザFC11の顔の向きと眼の向きとから図中、矢印DR11に示す、撮影画像上、つまりカメラ座標系におけるユーザFC11の視線方向が求まる。
【００９２】
さらに、このようにして求めたカメラ座標系におけるユーザFC11の視線方向と、カメラ１２の位置および姿勢、つまりカメラ座標系およびグローバル座標系の関係とから、グローバル座標系におけるユーザFC11の視線方向が求まる。
【００９３】
なお、顔認識処理により撮影画像からユーザの顔を検出することができない場合には、人検出等の技術により撮影画像からユーザの頭部が検出される。このようにして検出された撮影画像上のユーザの頭部の位置（方向）は、グローバル座標系におけるユーザの頭部位置を求めるために用いられる。
【００９４】
これに対して、顔認識処理により撮影画像からユーザの顔が検出された場合には、グローバル座標系におけるユーザの頭部位置を求める際には、そのユーザの顔の位置が撮影画像におけるユーザの頭部位置として用いられる。
【００９５】
また、顔認識等において撮影画像上のユーザが予め登録されたどのユーザであるかを特定することができ、かつ予め登録されたユーザ個人の視線キャリブレーションデータがある場合には、その視線キャリブレーションデータを用いて視線方向を求めてもよい。
【００９６】
ユーザの視線方向を検出する場合、各ユーザ個人によって、検出された顔の向きおよび眼の向きから求める視線方向と、実際のユーザの視線方向とにはずれが生じる。そこで、そのようなずれを補正するための視線キャリブレーションデータが予め用意されている場合には、視線キャリブレーションデータを用いてユーザの視線方向を補正することで、より高精度にユーザの視線方向を検出することができるようになる。
【００９７】
さらに、ユーザが眼鏡型等の頭部装着型視線検出デバイスを装着している場合には、その頭部装着型視線検出デバイスにおいて検出されたユーザの視線方向を用いてもよい。
【００９８】
この場合、頭部装着型視線検出デバイスがカメラ１２として機能しないときでも、カメラ１２と同様にグローバル座標系における頭部装着型視線検出デバイスの位置および姿勢が設定される。そうすることで、頭部装着型視線検出デバイスで検出されたユーザの視線方向と、頭部装着型視線検出デバイスの位置および姿勢とから、グローバル座標系におけるユーザの視線方向を求めることができる。
【００９９】
特に、この場合、頭部装着型視線検出デバイスでは高精度に視線方向を検出可能であるから、グローバル座標系におけるユーザの視線方向として精度の高い情報を得ることができる。
【０１００】
（ユーザの注視位置の検出について）
以上のようにしてグローバル座標系におけるユーザの視線方向が求められると、さらにグローバル座標系におけるユーザの注視位置が求められる。
【０１０１】
ユーザの注視位置を求めるためには、ユーザの視線方向に加え、さらにグローバル座標系における注視対象物とユーザの頭部（顔）との位置関係を検出する必要がある。
【０１０２】
例えば図３に示した例では、撮影により同一のユーザU21の頭部が含まれる撮影画像が得られたカメラ１２が少なくとも２つあれば、そのユーザU21の注視位置を求めることができる。
【０１０３】
例えば、カメラ１２−２とカメラ１２−３とで得られた撮影画像から、カメラ１２−２について検出したユーザU21-1の注視位置P11を求めるとする。
【０１０４】
ここで、上述したように注視対象物である表示部１１のグローバル座標系における位置は既知である。また、カメラ１２−２およびカメラ１２−３のそれぞれについて、それらのカメラ１２の位置および姿勢が設定されている。
【０１０５】
さらに、カメラ１２−２とカメラ１２−３とで、撮影画像内におけるユーザU21-1の頭部の位置、つまりカメラ１２から見たユーザU21-1の頭部（顔）がある方向が求められているとする。
【０１０６】
このような場合、カメラ１２−２とカメラ１２−３について得られている、カメラ１２の位置および姿勢と、カメラ１２から見たユーザU21-1の頭部の方向とから、三角測量の原理によりグローバル座標系におけるユーザU21-1の頭部の位置を特定することができる。
【０１０７】
このようにしてユーザU21-1の頭部の位置が求まると、グローバル座標系におけるユーザU21-1の頭部の位置と、注視対象物である表示部１１の位置との関係が求まったことになる。すると、これらのユーザU21-1の頭部と表示部１１の位置関係、およびカメラ１２−２について求められたグローバル座標系におけるユーザU21-1の視線方向から、表示部１１上におけるユーザU21-1の注視位置P11が求まる。
【０１０８】
同様にしてカメラ１２−３についても、ユーザU21-1の頭部および表示部１１の位置関係と、カメラ１２−３について求められたグローバル座標系におけるユーザU21-1の視線方向とから、ユーザU21-1の注視位置を求めることができる。
【０１０９】
以上のように、複数のカメラ１２のうち、少なくとも２つのカメラ１２でユーザの頭部位置が検出可能であり、かつ少なくとも１つのカメラ１２でユーザの視線方向、つまりユーザの顔が検出可能であれば、ユーザの注視位置を求めることができる。
【０１１０】
（注視位置検出のロバスト性向上について）
なお、ユーザの注視位置の検出にあたり、その検出のロバスト性を向上させるために、必要に応じて撮影画像からユーザの頭部位置を推定するようにしてもよい。
【０１１１】
上述したように、グローバル座標系におけるユーザの注視位置を求めるには、少なくとも２つのカメラ１２でユーザの頭部位置を検出する必要がある。しかし、場合によっては例えば１つのカメラ１２でしかユーザの頭部位置を検出することができないこともある。
【０１１２】
そこで、そのような場合には、ユーザの頭部位置を検出できなかった少なくとも１つのカメラ１２について、カメラ１２で得られた撮影画像から、人（ユーザ）の領域を検出し、その検出結果から、さらにそのカメラ１２から見たユーザの頭部位置（頭部の方向）を推定するようにしてもよい。
【０１１３】
この場合、ユーザの頭部があるであろうおおよその位置を推定可能とする、ユーザの体の一部分を撮影画像から検出することができれば、１つのカメラ１２でしかユーザの頭部位置を検出することができないときであっても、グローバル座標系におけるユーザの頭部位置を求めることができる。これにより、より堅強にユーザの注視位置を検出することができる。
【０１１４】
特に、時間的に継続してユーザの注視位置を検出する場合、カメラ１２で得られた異なる時刻の撮影画像を用いてユーザの顔領域や体の領域をトラッキングすれば、処理対象の現フレーム（時刻）の撮影画像からユーザの顔（頭部）を検出できなくても、トラッキングによってカメラ座標系におけるユーザの頭部位置を推定することができる。
【０１１５】
また、ユーザの顔が検出された撮影画像が複数ある場合には、それらの複数の撮影画像や、何れか１つの撮影画像からユーザの視線方向を求めるようにするなど、どのようにして最終的な１つの視線方向を求めてもよい。
【０１１６】
例えばユーザの顔が検出された撮影画像が複数ある場合、撮影画像におけるユーザの顔の向きが最も正面に近い撮影画像を用いてユーザの視線方向を求めるようにしてもよい。これは、撮影画像上においてユーザの顔の向きが横向きであるよりも、より正面に近い向きである方が高精度に眼の向き、つまり視線方向を検出できるからである。
【０１１７】
この場合、撮影画像から得られたユーザの顔の向きを示す情報であるロール角、ヨー角、およびピッチ角に基づいて、それらの角度が最も小さい撮影画像が選択され、その撮影画像からユーザの視線方向が求められる。また、ユーザの顔の向きが最も正面に近い撮影画像として、撮影画像におけるユーザの眼の領域の面積が最も大きいものが選択されるようにしてもよい。
【０１１８】
また、複数のカメラ１２について、同一ユーザの視線方向が検出された場合には、それらの複数のカメラ１２について求めた、グローバル座標系におけるユーザの視線方向の平均値を、最終的なユーザの視線方向として用いるようにしてもよい。
【０１１９】
さらに、１つのカメラ１２のみでユーザの顔が検出され、他のカメラ１２ではユーザの顔や頭部を検出できなかったり、ユーザの頭部位置の推定もできなかったりする場合には、ユーザの顔が検出された１つのカメラ１２の撮影画像から、ユーザの注視位置を求めてもよい。そのような場合、ユーザの視線方向は上述した方法と同様にして求められるが、ユーザの頭部位置は、単眼カメラの距離測定方法により求められる。
【０１２０】
すなわち、単眼カメラの距離測定方法では、例えば撮影画像上におけるユーザの両眼間の距離（間隔）や、顔の特徴点間の距離などから、検出対象空間におけるカメラ１２からユーザの頭部までの距離が求められる。
【０１２１】
そして、このようにして求められた距離、撮影画像上におけるユーザの顔の位置（方向）、およびカメラ１２の位置と姿勢から、グローバル座標系におけるユーザの頭部位置が求められる。このようにすることで、２以上のカメラ１２を用いる場合よりもユーザの頭部位置の検出精度は低くなるが、継続して各時刻におけるユーザの注視位置を求めることができる。
【０１２２】
（視線方向の検出精度について）
また、以上のようにしてユーザの注視位置が求められると、そのユーザの注視位置の検出精度、つまりユーザの視線方向の検出精度が算出される。
【０１２３】
例えば視線方向の検出精度は、カメラ１２に関する情報、カメラ１２とユーザとの位置関係に関する情報、撮影画像に関する情報など、１または複数の情報に基づいて算出される。
【０１２４】
具体的には、例えば距離情報W11、顔向き情報W12、解像度情報W13、明るさ情報W14、合焦度情報W15、検出デバイス情報W16、および注視時間情報W17の少なくとも何れか１つ、つまりこれらの距離情報W11乃至注視時間情報W17の一部または全部に基づいて、視線方向の検出精度が算出される。
【０１２５】
ここで、距離情報W11は、検出対象空間におけるカメラ１２からユーザまでの距離を示す情報であり、距離情報W11により示される距離が短いほど、視線方向の検出精度は高くなる。カメラ１２とユーザとの距離は、グローバル座標系におけるカメラ１２の位置とユーザの頭部位置から算出されてもよいし、撮影画像におけるユーザの眼の領域の大きさなどに基づいて算出されてもよい。
【０１２６】
また、顔向き情報W12はカメラ１２に対するユーザの顔の向きを示す情報、より詳細には、ユーザの顔向きの正面方向らしさの度合いを示す情報である。例えば顔向き情報W12の値は、ユーザの顔の向きを示すロール角、ピッチ角、およびヨー角などから算出され、カメラ１２に対するユーザの顔の向きがより正面に近いほど大きくなる。したがって、顔向き情報W12の値が大きいほど、視線方向の検出精度は高くなる。
【０１２７】
解像度情報W13はカメラ１２の解像度、つまり撮影画像の解像度を示す情報であり、解像度情報W13の値は、カメラ１２の解像度が高いほど大きくなる。カメラ１２の解像度が高いほど、撮影画像からユーザの眼の向きや顔の向きなどをより高精度に検出できることから、解像度情報W13が大きいほど視線方向の検出精度は高くなる。
【０１２８】
明るさ情報W14は、撮影画像の撮影環境の明るさ、つまり撮影画像の明るさを示す情報である。明るさ情報W14の値は、例えば撮影画像の全画素の平均輝度などから求められ、撮影画像が明るいほど明るさ情報W14の値は大きくなる。撮影画像が明るいほど、撮影画像から精度よくユーザの眼の向きなどを検出できることから、明るさ情報W14が大きいほど視線方向の検出精度は高くなる。
【０１２９】
また、合焦度情報W15は、撮影画像におけるユーザの顔領域のぼけ具合を示す情報である。合焦度情報W15の値は、例えば撮影画像に対してエッジ検出を行うことで算出され、ユーザの顔領域のエッジ強度が弱く、その顔領域がぼけているほど小さくなる。ユーザの顔領域のぼけ具合が小さいほど、ユーザの眼の向きや顔の向きなどをより高精度に検出できることから、合焦度情報W15が大きいほど視線方向の検出精度は高くなる。
【０１３０】
検出デバイス情報W16はカメラ１２に起因する視線方向検出精度の信頼性を示す情報であり、検出デバイス情報W16の値は、カメラ１２が頭部装着型視線検出デバイスであるか否かにより定められる。
【０１３１】
例えばカメラ１２が頭部装着型視線検出デバイスである場合、つまりカメラ１２としての頭部装着型視線検出デバイスで検出されたユーザの視線方向が、カメラ１２から見たユーザの視線方向として用いられる場合、検出デバイス情報W16の値は所定の値とされる。
【０１３２】
これに対して、カメラ１２が頭部装着型視線検出デバイスでない場合、検出デバイス情報W16の値は、カメラ１２が頭部装着型視線検出デバイスである場合における検出デバイス情報W16の値よりも小さい値とされる。
【０１３３】
カメラ１２が頭部装着型視線検出デバイスである場合、より高精度にユーザの視線方向を検出可能であるから、検出デバイス情報W16の値が大きいほど視線方向の検出精度は高くなる。
【０１３４】
さらに、注視時間情報W17は、ユーザが同じ注視位置を注視している時間（注視時間）を示す情報である。例えば、注視時間情報W17は時間方向における同一ユーザの注視位置の変動量（変化量）、または視線方向の変動量に基づいて算出され、注視位置や視線方向の変動量が閾値以下である時間が長いほど、つまり注視時間が長いほど注視時間情報W17の値は大きくなる。
【０１３５】
例えばユーザが視線によりUI上のカーソルを移動させる場合などにおいては、ユーザが意図した位置にカーソルがあるときには、ユーザはカーソルを移動させないので、ユーザによる特定位置の注視時間は長くなる。そのような場合、ユーザの注視位置、つまり視線方向は正しく検出されているはずであるから、注視時間情報W17の値が大きいほど視線方向の検出精度は高くなるようにされる。
【０１３６】
情報処理システムでは、距離情報W11乃至注視時間情報W17の少なくとも何れか１つを用いて、ユーザごとに視線方向の検出精度を算出する。例えば視線方向の検出精度は、距離情報W11乃至注視時間情報W17を重み付き加算することにより算出される。この場合、例えば視線方向を検出する際に、より影響が大きい距離情報W11の重みを他の情報の重みよりも大きくすることなどが考えられる。なお、視線方向の検出精度の算出は、距離情報W11乃至注視時間情報W17を用いる例に限らず、他のどのような情報を用いて行うようにしてもよい。
【０１３７】
（視線方向の検出精度に応じた処理について）
さらに、各ユーザの視線方向の検出精度が算出されると、情報処理システムは、それらの検出精度に応じて表示部１１に表示させるUIの表示形態（表示パターン）を変化させる。
【０１３８】
例えば情報処理システムにおいて、表示部１１にUIとしての操作画面が表示されている状態で、ユーザの注視位置にあるアイコンが選択され、そのアイコンに応じた処理が実行されるとする。
【０１３９】
このとき、情報処理システムは、例えばユーザの視線方向（注視位置）の検出精度が予め定めた閾値th以上である場合には図２に示した操作画面IF11を表示し、視線方向の検出精度が予め定めた閾値th未満である場合には図２に示した操作画面IF12を表示する。そして、検出されたユーザの注視位置に基づいて、その注視位置に表示されているアイコンを選択したり、注視位置に応じた他の処理を実行したりする。
【０１４０】
なお、視線検出対象者としてのユーザが複数いる場合には、例えば以下のようにして表示部１１の操作画面の表示形態を変化させることができる。
【０１４１】
すなわち、複数の全ユーザの視線方向の検出精度が閾値th以上である場合には図２に示した操作画面IF11が表示される。また、複数の全ユーザの視線方向の検出精度が閾値th未満である場合には図２に示した操作画面IF12が表示される。
【０１４２】
そして、視線方向の検出精度が閾値th以上であるユーザと、視線方向の検出精度が閾値th未満であるユーザとがいる場合には、最初に表示部１１を注視したユーザの検出精度に応じて操作画面の表示形態が定められる。
【０１４３】
すなわち、最初に表示部１１を注視したユーザの検出精度が閾値th以上である場合には操作画面IF11が表示され、最初に表示部１１を注視したユーザの検出精度が閾値th未満である場合には操作画面IF12が表示される。
【０１４４】
その他、視線方向の検出精度が閾値th以上であるユーザと、視線方向の検出精度が閾値th未満であるユーザとがいる場合には、最も注視時間が長いユーザの検出精度に応じて操作画面の表示形態が定められたり、最も表示部１１に近い位置にいるユーザの検出精度に応じて操作画面の表示形態が定められたり、全ユーザの視線方向の検出精度の平均値や重み付き加算値に応じて操作画面の表示形態が定められたりしてもよい。
【０１４５】
また、視線方向の検出精度が閾値th以上であるユーザの数と、視線方向の検出精度が閾値th未満であるユーザの数とのうち、より数が多い方についての検出精度と閾値thとの比較結果に応じて操作画面の表示形態が定められてもよい。
【０１４６】
さらに、ユーザの注視位置に応じた処理を実行するにあたっては、何れか１人のユーザが処理対象のユーザとして選択され、そのユーザの注視位置に応じた処理が実行されるようにしてもよい。
【０１４７】
その際、どのユーザが処理対象のユーザであるかが表示部１１に表示されるようにしてもよい。また、最も注視時間が長いユーザが処理対象のユーザとして選択されるようにしたり、表示部１１に表示される画像と同じ画像が表示される、表示機能を有するウェアラブルデバイスを装着していないユーザが優先的に処理対象のユーザとして選択されるようにしたりしてもよい。
【０１４８】
また、ユーザごとに、それらのユーザが操作するカーソル等が表示部１１に表示され、各ユーザの視線（注視位置）による選択操作に応じて処理が実行されるようにしてもよい。そのような場合、例えば各ユーザによりカーソルが移動され、カーソルによりアイコンが選択された場合、そのアイコンが表示されている領域で、選択されたアイコンに応じた動画像が再生されるなどの処理が行われるようにすることができる。
【０１４９】
〈情報処理システムのより詳細な構成例〉
次に、以上において説明した情報処理システムのより詳細な構成例について説明する。
【０１５０】
図５は、本技術を適用した情報処理システムのより詳細な構成例を示す図である。図５に示す情報処理システムは、カメラ５１−１乃至カメラ５１−Ｎ、および情報処理装置５２から構成される。
【０１５１】
カメラ５１−１乃至カメラ５１−Ｎは、図３に示したカメラ１２に対応し、検出対象空間にいるユーザを被写体として撮影し、その結果得られた撮影画像を、有線または無線により接続されている情報処理装置５２に供給する。
【０１５２】
なお、以下、カメラ５１−１乃至カメラ５１−Ｎを特に区別する必要のない場合には、単にカメラ５１とも称することとする。
【０１５３】
カメラ５１は、上述したように検出対象空間の床や天井などに固定されていてもよいし、必要に応じて移動するものであってもよい。また、例えばカメラ５１は検出対象空間にいるユーザが装着しているウェアラブルカメラや、装着しているユーザを撮影して、そのユーザの視線方向を検出する頭部装着型視線検出デバイスであってもよい。
【０１５４】
情報処理装置５２は、カメラ５１から供給された撮影画像に基づいてユーザの視線方向を検出するとともに、その視線方向の検出精度やユーザの注視位置を算出する。また、情報処理装置５２は、ユーザの視線方向の検出精度に応じてUIの表示形態を変化させるとともに、ユーザの注視位置に応じた処理を実行する。
【０１５５】
情報処理装置５２は、取得部６１、制御部６２、入力部６３、表示部６４、および出力部６５を有している。
【０１５６】
取得部６１は、有線または無線により各カメラ５１から撮影画像を取得して制御部６２に供給する。また、取得部６１は、カメラ５１が視線方向検出機能を有する頭部装着型視線検出デバイスである場合には、そのカメラ５１からユーザの視線方向の検出結果を取得して、制御部６２に供給する。
【０１５７】
制御部６２は、情報処理装置５２全体の動作を制御する。例えば制御部６２は、取得部６１から供給された撮影画像に基づいて、ユーザの視線方向や注視位置を検出したり、撮影画像等に基づいて視線方向の検出精度を算出したりする。また、制御部６２は、入力部６３からの情報や注視位置の検出結果、視線方向の検出精度などに応じて処理を実行したりする。
【０１５８】
制御部６２は、カメラ認識部７１、顔検出部７２、視線方向検出部７３、注視位置算出部７４、検出精度算出部７５、およびUI処理部７６を有している。
【０１５９】
カメラ認識部７１は、入力部６３から供給された情報や取得部６１から供給された撮影画像に基づいて、各カメラ５１の位置と姿勢を認識する。
【０１６０】
顔検出部７２は、各カメラ５１で得られた撮影画像から視線検出対象者であるユーザの顔や頭部を検出したり、撮影画像から検出されたユーザの体の一部分の領域から、ユーザの頭部の位置を推定により求めたりする。
【０１６１】
視線方向検出部７３は、各カメラ５１の位置と姿勢、取得部６１から供給された撮影画像、および顔検出部７２による顔検出結果に基づいて、各カメラ５１について、視線検出対象者であるユーザごとに視線方向を検出する。
【０１６２】
なお、取得部６１が、視線方向検出機能を有するカメラ５１からユーザの視線方向の検出結果を取得する場合には、そのカメラ５１を構成する視線方向検出ブロックも視線方向検出部７３として機能することになる。
【０１６３】
注視位置算出部７４は、各カメラ５１の位置および姿勢と、ユーザの視線方向の検出結果とに基づいて、各ユーザの注視位置を算出する。
【０１６４】
検出精度算出部７５は、ユーザごとの視線方向の検出結果について、カメラ５１の位置および姿勢や、ユーザの視線方向の検出時に得られた情報、取得部６１から供給された撮影画像などに基づいて、視線方向の検出精度を算出する。
【０１６５】
UI処理部７６は、ユーザの視線方向の検出精度に応じて表示部６４を制御し、表示部６４にUI等の画像を表示させる。
【０１６６】
入力部６３は、例えばマウスやキーボード、無線により制御部６２に接続されたコントローラなどからなり、視線検出対象者や情報処理システムの管理者などの操作に応じた信号を制御部６２に供給する。
【０１６７】
また、入力部６３がマイクロフォンなどから構成されるようにし、視線検出対象者等の音声を収音して、その結果得られた音声信号を制御部６２に供給するようにしてもよい。この場合、制御部６２は、入力部６３から供給された音声信号に対して、音声認識処理を行い、その結果に応じて処理を実行する。
【０１６８】
表示部６４は、例えば液晶表示デバイスなどからなり、制御部６２の制御に従ってUI等の画像を表示する。この表示部６４は、図３に示した表示部１１に対応する。出力部６５は、例えばスピーカなどからなり、制御部６２の制御に従って音声を出力する。
【０１６９】
〈UI表示処理の説明〉
続いて、図５に示した情報処理システムの動作について説明する。
【０１７０】
情報処理システムは、管理者等によりユーザの注視位置に応じた処理の実行が指示されると、カメラ５１でのユーザの撮影を開始する。そして、各カメラ５１は、撮影により得られた撮影画像を情報処理装置５２へと順次、供給する。また、情報処理装置５２は、UI表示処理を行い、ユーザの視線方向の検出精度に応じてUIの表示形態を切り替えるとともに、ユーザの注視位置に応じた処理を実行する。
【０１７１】
以下、図６のフローチャートを参照して、情報処理システムを構成する情報処理装置５２により行われるUI表示処理について説明する。
【０１７２】
ステップＳ１１において、カメラ認識部７１は、各カメラ５１の位置と姿勢を認識し、その認識結果を、カメラ５１の位置および姿勢として設定する。
【０１７３】
例えば情報処理システムの管理者が入力部６３を操作し、各カメラ５１の位置および姿勢として、グローバル座標系におけるカメラ５１の位置と、カメラ５１ごとのカメラ座標系のロール角、ピッチ角、およびヨー角とを入力したとする。
【０１７４】
この場合、カメラ認識部７１は、入力部６３から供給されたグローバル座標系におけるカメラ５１の位置と、カメラ５１ごとのカメラ座標系のロール角、ピッチ角、およびヨー角とを、カメラ５１の位置および姿勢として設定する。
【０１７５】
また、その他、カメラ認識部７１が図示せぬメモリから各カメラ５１の位置および姿勢を読み出すことで、カメラ５１の位置および姿勢を設定してもよい。さらに、上述した自動認識方法として説明したように、カメラ認識部７１が取得部６１から供給された撮影画像から、予め位置が既知である目標物の位置（方向）を検出し、その検出結果からカメラ５１の位置および姿勢を認識するようにしてもよい。
【０１７６】
また、位置と姿勢が既知である複数のカメラ５１で得られた撮影画像から、他のカメラ５１の位置と姿勢を認識してもよい。
【０１７７】
ステップＳ１２において、視線方向検出部７３は、取得部６１から供給された撮影画像に基づいて、視線検出対象者のなかに、視線方向の検出、より詳細には注視位置の検出が可能なユーザがいるか否かを判定する。
【０１７８】
例えば所定ユーザについて、カメラ５１のなかに所定ユーザの頭部位置の検出に使用可能なカメラ５１が２以上あり、かつその所定ユーザの眼の向き（視線方向）を検出可能なカメラ５１が１以上ある場合、この所定ユーザの視線方向の検出は可能であるとされる。
【０１７９】
ここで、ユーザの頭部位置の検出に使用可能なカメラ５１とは、ユーザの頭部が含まれているか、またはユーザの頭部位置を推定可能とするユーザの体の一部が含まれている撮影画像が撮影により得られたカメラ５１である。
【０１８０】
また、ユーザの眼の向き（視線方向）を検出可能なカメラ５１とは、ユーザの顔が含まれている撮影画像が撮影で得られたカメラ５１、または視線方向検出機能を有するカメラ５１である。
【０１８１】
したがって、より詳細には視線方向の検出が可能なユーザがいるかの判定には、撮影画像からのユーザの頭部や顔領域の検出結果が必要となるので、実際には後述するステップＳ１３の処理の一部と並行してステップＳ１２の処理が行われることになる。
【０１８２】
なお、所定のカメラ５１によりユーザの顔が含まれている撮影画像が得られた場合には、その所定のカメラ５１は、ユーザの眼の向きの検出だけでなく、頭部（顔）位置の検出にも使用可能である。そのため、この場合には、他の１つのカメラ５１でユーザの頭部位置を検出可能であれば、そのユーザの視線方向の検出が可能となる。
【０１８３】
また、視線方向検出機能を有するカメラ５１や頭部装着型視線検出デバイスから、カメラ５１または頭部装着型視線検出デバイスから見たユーザの視線方向が取得された場合には、それらのカメラ５１や頭部装着型視線検出デバイスの位置および姿勢が設定されているので、グローバル座標系におけるユーザの視線方向の検出が可能となる。
【０１８４】
ステップＳ１２において、視線方向の検出が可能なユーザがいると判定されなかった場合、つまりどのユーザの視線方向も検出できない場合、処理はステップＳ１２に戻り、上述した処理が繰り返し行われる。
【０１８５】
これに対して、ステップＳ１２において視線方向の検出が可能なユーザがいると判定された場合、ステップＳ１３において、視線方向検出部７３は、視線方向の検出が可能とされた各ユーザについて、カメラ５１ごとにユーザの視線方向を検出する。なお、より詳細には、撮影画像からユーザの顔領域が検出された各カメラ５１について、ユーザの視線方向が検出される。
【０１８６】
すなわち、顔検出部７２は、取得部６１から供給された撮影画像に対して顔認識処理を行って、その撮影画像からユーザの顔領域を検出する。また、視線方向検出部７３は、顔検出部７２による顔領域の検出結果に基づいて、撮影画像におけるユーザの顔の向きと、ユーザの眼の向きを検出する。
【０１８７】
そして、視線方向検出部７３は、それらのユーザの顔の向きと、ユーザの眼の向きとから、カメラ座標系におけるユーザの視線方向を求める。さらに視線方向検出部７３は、カメラ座標系におけるユーザの視線方向と、カメラ５１の位置および姿勢とから、グローバル座標系におけるユーザの視線方向を算出する。
【０１８８】
なお、ここではカメラ５１ごとにユーザの視線方向を算出すると説明したが、上述したようにユーザの顔の向きが最も正面に近い撮影画像が得られたカメラ５１についてのみユーザの視線方向を算出するようにしてもよい。
【０１８９】
また、例えば視線方向検出機能を有するカメラ５１（または頭部装着型視線検出デバイス）から、そのカメラ５１（または頭部装着型視線検出デバイス）から見たユーザの視線方向が取得されたとする。そのような場合には、視線方向検出部７３は、取得されたユーザの視線方向と、そのカメラ５１（または頭部装着型視線検出デバイス）の位置および姿勢とから、グローバル座標系におけるユーザの視線方向を算出する。
【０１９０】
撮影画像からユーザの顔領域が検出されなかったカメラ５１については、顔検出部７２において、そのカメラ５１で得られた撮影画像からユーザの頭部が検出されて、撮影画像上におけるユーザの頭部位置、つまりカメラ座標系におけるユーザの頭部の方向が求められる。
【０１９１】
さらに、このとき撮影画像からユーザの頭部が検出されなかった場合には、顔検出部７２において、撮影画像からユーザの体の一部分が検出され、その検出結果からユーザの頭部位置（カメラ座標系におけるユーザの頭部の方向）が推定により求められる。
【０１９２】
ステップＳ１４において、注視位置算出部７４は、視線方向の検出が可能とされた各ユーザについて、検出対象空間におけるユーザの頭部位置、つまりグローバル座標系におけるユーザの頭部位置を算出する。
【０１９３】
例えば注視位置算出部７４は、２以上の撮影画像のそれぞれから検出または推定により得られたユーザの頭部位置（顔位置）、つまりカメラ座標系における頭部の方向と、それらの撮影画像を撮影したカメラ５１の位置および姿勢とから、三角測量の原理によりグローバル座標系におけるユーザの頭部の位置を算出する。
【０１９４】
ステップＳ１５において注視位置算出部７４は、視線方向の検出が可能とされた各ユーザについて、ユーザの視線方向の検出結果、ユーザの頭部位置の算出結果、および注視対象物である表示部６４の検出対象空間上の位置に基づいて、ユーザの注視位置を算出する。
【０１９５】
ここで、ユーザの視線方向として、ステップＳ１３で得られたユーザの視線方向のうちのどの視線方向を用いてもよい。例えば上述したように、同一ユーザについてカメラ５１ごとに求められたユーザの視線方向の平均値を、最終的なユーザの視線方向として用いてもよい。また、検出精度が最も高い視線方向を、最終的なユーザの視線方向として用いるようにしてもよい。
【０１９６】
ステップＳ１６において検出精度算出部７５は、各ユーザの視線方向について、カメラ５１の位置および姿勢や、１または複数のカメラ５１についてのユーザの視線方向の検出時に得られた情報、取得部６１からの撮影画像などに基づいて、視線方向の検出精度を算出する。
【０１９７】
具体的には、例えば検出精度算出部７５は、距離情報W11乃至注視時間情報W17の何れか１つを視線方向の検出精度として算出したり、距離情報W11乃至注視時間情報W17のうちのいくつかを重み付き加算して得られる値を視線方向の検出精度として算出したりする。
【０１９８】
なお、複数のカメラ５１について求めたユーザの視線方向の平均値を最終的なユーザの視線方向として用いた場合には、それらの各カメラ５１についての視線方向ごとに、視線方向の検出精度を求め、それらの検出精度の平均値を最終的な視線方向の検出精度としてもよい。
【０１９９】
ステップＳ１７においてUI処理部７６は、各ユーザについて求めた視線方向の検出精度に基づいて、それらの検出精度に応じたUI表示を行う。
【０２００】
例えばUI処理部７６は、上述したように各ユーザについて求めた視線方向の検出精度と、閾値thとを比較し、その比較結果に応じて表示部６４を制御し、図２に示した操作画面IF11を表示させたり、図２に示した操作画面IF12を表示させたりする。このように、視線方向の検出精度に応じて、より操作しやすい操作画面を表示させることで、使い勝手を向上させることができる。
【０２０１】
ステップＳ１８において、制御部６２は、各ユーザの注視位置に応じた処理を実行する。
【０２０２】
例えば制御部６２は、表示部６４に表示されている操作画面における、ユーザの注視位置にあるアイコンやボタンに応じて、表示部６４に画像を表示させたり、出力部６５から音声を出力させたりする。その他、ユーザの注視位置に応じた処理は、音声や動画像の再生開始や再生停止、早送りなど、どのような処理であってもよい。
【０２０３】
ここで、複数のユーザについて注視位置が求められている場合、それらの全ユーザの注視位置ごとに処理が実行されてもよいし、全ユーザの注視位置のうちのいくつかの注視位置について、注視位置に応じた処理が実行されてもよい。
【０２０４】
例えば複数のユーザの注視位置のなかから１つの注視位置を選択する場合、予め定められた特定ユーザの注視位置や、最も注視時間が長いユーザの注視位置、表示機能を有するウェアラブルデバイスを装着していないユーザの注視位置などを優先的に選択してもよい。さらに、いくつかのユーザの注視位置が同じ位置である場合には、同じ位置を注視しているユーザの数が最も多い位置を、対応する処理を実行する注視位置として選択してもよい。
【０２０５】
このようにしてユーザの注視位置に応じた処理が実行されると、処理はステップＳ１２に戻り、上述した処理が繰り返し行われる。そして、ユーザの注視位置に応じた処理の実行停止が指示されると、UI表示処理は終了する。
【０２０６】
以上のようにして、情報処理装置５２は、撮影画像からユーザの視線方向を検出するとともに、その視線方向の検出精度を算出し、視線方向の検出精度に応じた処理を実行する。このように、視線方向の検出精度に応じてUIの表示形態を切り替えるなどすることで、使い勝手を向上させることができる。
【０２０７】
〈第２の実施の形態〉
〈視線方向の検出精度に応じたUI表示について〉
なお、以上においては視線方向の検出精度に応じたUI表示として、例えば図２に示したようにアイコン等の操作対象の数や大きさが異なる操作画面を表示させる例について説明したが、他のどのようなUI表示を行うようにしてもよい。
【０２０８】
例えば、視線方向の検出精度が十分に高い場合には、予め定められた所定の表示形態でUI表示を行い、視線方向の検出精度が所定の閾値未満となったときには、ユーザの注視位置近傍にあるいくつかのアイコン等の操作対象のみを表示させるようにしてもよい。
【０２０９】
そのような場合、例えば図７に示すようにUIとしての操作画面の表示形態が切り替えられる。すなわち、ユーザの視線方向の検出精度が所定の閾値th以上である状態では、表示部６４には矢印Q21に示す操作画面IF21が表示される。
【０２１０】
この操作画面IF21には、操作対象である16個のアイコンAC21-1乃至アイコンAC21-16が並べられて表示されている。
【０２１１】
なお、以下、アイコンAC21-1乃至アイコンAC21-16を特に区別する必要のない場合、単にアイコンAC21とも称することとする。
【０２１２】
この例では、ユーザの注視位置にアイコンAC21がある場合には、ユーザの視線によって、そのアイコンAC21が指定されたとされ、注視位置にあるアイコンAC21に応じた処理が実行される。
【０２１３】
ユーザの視線方向の検出精度、つまりユーザの注視位置の検出精度が閾値th以上であり、十分に高いときには操作画面IF21に多くのアイコンAC21を表示しても、ユーザがどのアイコンAC21を注視しているかを正確に特定することができる。
【０２１４】
しかし、ユーザの視線方向の検出精度が低くなると、検出されたユーザの注視位置と実際にユーザが注視している位置とにずれが生じる。そうすると、例えばアイコンAC21の誤検出が生じることもある。
【０２１５】
そこで、情報処理システムは、ユーザの視線方向の検出精度が閾値th未満となったときには、ユーザの注視位置近傍を拡大して表示させる。
【０２１６】
例えば、操作画面IF21が表示されている状態で、ユーザの注視位置がアイコンAC21-1近傍にあったとする。この状態で、次の時刻においてユーザの注視位置はアイコンAC21-1近傍にあるが、ユーザの視線方向の検出精度が閾値th未満となったとする。
【０２１７】
そのような場合、視線方向の検出精度が十分でないため、ユーザが視線によりアイコンAC21-1を指定（選択）しているのか、または他のアイコンAC21を指定しているのかを正確に特定することができない。
【０２１８】
そこで情報処理システムは、例えば矢印Q22に示すように、アイコンAC21-1近傍にあるアイコンAC21のみが大きく拡大表示された操作画面IF22を表示部６４に表示させる。この操作画面IF22には、4つのアイコンAC21-1、アイコンAC21-2、アイコンAC21-5、およびアイコンAC21-6が、操作画面IF21における場合よりも広い間隔で、かつより大きく表示されている。
【０２１９】
このようにして表示された4つのアイコンAC21は、ユーザの注視位置近傍にあるアイコンAC21であるため、ユーザが操作（指定）しようとしていたアイコンAC21である可能性が高い。換言すれば、ユーザの注視位置に対応するアイコンAC21の候補であるということができる。
【０２２０】
このように、ユーザの視線方向の検出精度が十分でない場合には、複数の操作対象としてのアイコンAC21が表示されている状態から、注視位置近傍にあるいくつかのアイコンAC21のみを操作候補として表示することで、誤検出を防止し、使い勝手を向上させることができる。
【０２２１】
〈UI表示処理の説明〉
次に、図８のフローチャートを参照して、図７に示したUI表示が行われる場合に情報処理装置５２により行われるUI表示処理について説明する。
【０２２２】
なお、ステップＳ５１乃至ステップＳ５６の処理は、図６のステップＳ１１乃至ステップＳ１６の処理と同様であるので、その説明は省略する。
【０２２３】
ステップＳ５７において、UI処理部７６は、各ユーザについて求めた視線方向の検出精度に基づいて、検出精度が予め定めた閾値th以上であるか否かを判定する。
【０２２４】
例えば、情報処理装置５２において、１人のユーザの注視位置を選択し、その選択した注視位置に応じた処理が実行される場合には、注視位置が選択されるユーザの視線方向の検出精度が閾値th以上であるか否かが判定されるようにすればよい。
【０２２５】
また、例えば全ユーザについて求めた視線方向の検出精度や、全ユーザの視線方向の検出精度の平均値や重み付き加算値、全ユーザの視線方向の検出精度のうちの半分以上のユーザの視線方向の検出精度などが閾値th以上である場合に、ステップＳ５７において検出精度が閾値th以上であると判定されるようにしてもよい。
【０２２６】
ステップＳ５７において視線方向の検出精度が閾値th以上であると判定された場合、ステップＳ５８において、UI処理部７６は予め定められた表示形態でUI表示を行う。
【０２２７】
すなわち、例えばUI処理部７６は表示部６４を制御し、図７に示した操作画面IF21をUIとして表示させる。
【０２２８】
ステップＳ５８で予め定められた表示形態でのUI表示が行われると、その後、処理はステップＳ６０へと進む。
【０２２９】
これに対して、ステップＳ５７において視線方向の検出精度が閾値th未満であると判定された場合、ステップＳ５９において、UI処理部７６はユーザの注視位置に対応する操作対象の候補を表示させる。
【０２３０】
例えば、UI処理部７６は表示部６４を制御して、所定の１人のユーザの注視位置近傍にある操作対象のみが表示されるように、表示部６４におけるUI表示を切り替える。これにより、例えば図７の操作画面IF21が表示されている状態から、操作画面IF22が表示されている状態へと表示が切り替えられる。
【０２３１】
なお、ここでは１人のユーザの注視位置近傍にあるアイコンAC21が候補として表示される例について説明したが、操作対象の候補として、より少ない数のアイコンAC21が、より大きく表示されるようにすれば、どのようにして表示されるアイコンAC21が選択されてもよい。例えば、より多くのユーザが注視している領域近傍、つまりユーザの注視位置がより多くある領域近傍にあるアイコンAC21が候補として表示されてもよい。
【０２３２】
また、例えば注目するユーザの注視位置が図７に示した操作画面IF21のアイコンAC21-1近傍にあるときに、ステップＳ５９において、UI処理部７６が、ユーザの意図する操作対象はアイコンAC21-1であるかを確認するための確認画面を表示部６４に表示させるなどしてもよい。
【０２３３】
この場合、例えばユーザの操作により、ユーザの意図する操作対象がアイコンAC21-1であると確認されたときにはアイコンAC21-1に応じた処理が実行される。これに対して、ユーザの操作により、ユーザの意図する操作対象がアイコンAC21-1でないとされたときには、例えば図７に示した操作画面IF22へと表示が切り替えられる。
【０２３４】
ステップＳ５９でUI表示の切り替えが行われると、その後、処理はステップＳ６０へと進む。
【０２３５】
ステップＳ５８またはステップＳ５９でUI表示が行われると、その後、ステップＳ６０の処理が行われるが、ステップＳ６０の処理は図６のステップＳ１８の処理と同様であるので、その説明は省略する。
【０２３６】
また、ステップＳ６０の処理が行われると、処理はステップＳ５２に戻り、ユーザの注視位置に応じた処理の実行停止が指示されるまで、継続して上述した処理が繰り返し行われる。そして、ユーザの注視位置に応じた処理の実行停止が指示されると、UI表示処理は終了する。
【０２３７】
以上のようにして、情報処理装置５２は、撮影画像からユーザの視線方向を検出するとともに、その視線方向の検出精度を算出し、視線方向の検出精度が十分ではないときには、注視位置近傍にある操作対象のみが候補として表示されるようにUI表示の表示形態を切り替える。このように、視線方向の検出精度に応じてUI表示の表示形態を切り替えることで、誤検出等を防止し、使い勝手を向上させることができる。
【０２３８】
〈第３の実施の形態〉
〈カメラの位置と姿勢の認識について〉
また、上述したようにカメラの位置と姿勢を認識（設定）するときに、グローバル座標系における位置と姿勢が既知であるカメラを用いて、他のカメラの位置と姿勢を認識するようにしてもよい。
【０２３９】
そのような場合、例えば図９に示すようにカメラが配置される。なお、図９において図３における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
【０２４０】
図９に示す例では、図３のカメラ１２に代えてカメラ１０１−１乃至カメラ１０１−４が撮影画像を撮影するためのカメラとして配置されている。なお、以下、カメラ１０１−１乃至カメラ１０１−４を特に区別する必要のない場合、単にカメラ１０１とも称することとする。
【０２４１】
この例では、カメラ１０１−１およびカメラ１０１−２は、検出対象空間の床に固定されており、カメラ１０１−３は、ユーザU21-1の頭部に装着された視線方向検出機能を有するウェアラブルカメラとなっている。そのため、カメラ１０１−３は、ユーザU21-1とは異なる他のユーザU21-2やユーザU21-3などを被写体として撮影画像を撮影する。
【０２４２】
また、カメラ１０１−４は、検出対象空間の天井に固定された広角カメラとなっている。このカメラ１０１−４は、位置および姿勢が既知であり、検出対象空間全体を撮影可能なカメラである。また、例えばカメラ１０１−１も位置および姿勢が既知であり、検出対象空間全体を撮影可能なカメラであるとする。
【０２４３】
したがって、カメラ１０１−１およびカメラ１０１−４により撮影された撮影画像には、必ず他のカメラ１０１−２およびカメラ１０１−３が被写体として含まれることになる。
【０２４４】
情報処理装置５２のカメラ認識部７１では、図６のステップＳ１１や図８のステップＳ５１において、カメラ１０１−１およびカメラ１０１−４により撮影された撮影画像と、予め既知であるカメラ１０１−１およびカメラ１０１−４の位置と姿勢から、カメラ１０１−２およびカメラ１０１−３の位置と姿勢が認識されることになる。
【０２４５】
このようにグローバル座標系における位置と姿勢が既知であるカメラ１０１を用いて、他のカメラ１０１のグローバル座標系における位置と姿勢を認識するようにすれば、カメラ１０１の位置等が変化する場合でも、正確に各カメラ１０１の位置と姿勢を認識することができる。
【０２４６】
〈第４の実施の形態〉
〈情報処理システムの他の例について〉
また、以上においては注視対象物である表示部でUI表示を行い、ユーザの注視位置に応じた処理を実行する例について説明したが、その他、例えば図１０に示すように、情報処理システムの管理者がユーザが注視するものを調査する場合などにも本技術は適用可能である。なお、図１０において、図３における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
【０２４７】
図１０に示す例では、検出対象空間には、２つのカメラ１３１−１およびカメラ１３１−２が撮影画像を撮影するためのカメラとして配置されており、これらのカメラ１３１−１およびカメラ１３１−２が図３のカメラ１２に対応する。また、図示はされていないが、これらのカメラ１３１−１およびカメラ１３１−２は、有線または無線により情報処理装置５２に接続されている。
【０２４８】
この例では、検出対象空間には、グローバル座標系における位置が既知である注視対象物１３２が配置されている。情報処理装置５２では、各ユーザU21の視線方向を検出することで、ユーザU21が注視対象物１３２に注目しているかを特定することができる。
【０２４９】
また、例えば検出対象空間に注視対象物１３２を複数配置すれば、情報処理装置５２においてユーザU21がどの注視対象物１３２に注目しているかを特定することができる。その他、情報処理装置５２が、ユーザU21が注視している注視対象物１３２を発光させたり駆動させたりするなど、注視位置に応じた処理を実行させることもできるし、ユーザの視線方向の検出精度に応じて注視対象物１３２の発光パターンや駆動方法を変化させたりすることもできる。
【０２５０】
さらに、例えば複数の注視対象物１３２のうち、ユーザU21により注目されている注視対象物１３２に画像や文字が表示されるときなどには、ユーザU21の視線方向の検出精度に応じて、画像や文字を表示させる注視対象物１３２の個数を変化させるなどしてもよい。
【０２５１】
図１０に示す情報処理システムは、例えば検出対象空間における各ユーザU21の立ち位置を限定することが困難である、店や美術館、街頭などにおいて注目されているものを調査する場合などに特に有効である。
【０２５２】
また、以上において説明した情報処理システムは、例えばユーザが体を大きく動かすスポーツや格闘系のゲームでユーザの視線検出結果を利用する場合、家のエアコンディショナやテレビジョン受像機等のいわゆる家電機器について、ユーザが視線で家電機器を選択した後、音声等で家電機器の制御を行う場合などに適用可能である。
【０２５３】
ところで、上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
【０２５４】
図１１は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【０２５５】
コンピュータにおいて、CPU（Central Processing Unit）５０１，ROM（Read Only Memory）５０２，RAM（Random Access Memory）５０３は、バス５０４により相互に接続されている。
【０２５６】
バス５０４には、さらに、入出力インターフェース５０５が接続されている。入出力インターフェース５０５には、入力部５０６、出力部５０７、記録部５０８、通信部５０９、及びドライブ５１０が接続されている。
【０２５７】
入力部５０６は、キーボード、マウス、マイクロフォン、撮像素子などよりなる。出力部５０７は、ディスプレイ、スピーカなどよりなる。記録部５０８は、ハードディスクや不揮発性のメモリなどよりなる。通信部５０９は、ネットワークインターフェースなどよりなる。ドライブ５１０は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア５１１を駆動する。
【０２５８】
以上のように構成されるコンピュータでは、CPU５０１が、例えば、記録部５０８に記録されているプログラムを、入出力インターフェース５０５及びバス５０４を介して、RAM５０３にロードして実行することにより、上述した一連の処理が行われる。
【０２５９】
コンピュータ（CPU５０１）が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア５１１に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
【０２６０】
コンピュータでは、プログラムは、リムーバブルメディア５１１をドライブ５１０に装着することにより、入出力インターフェース５０５を介して、記録部５０８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部５０９で受信し、記録部５０８にインストールすることができる。その他、プログラムは、ROM５０２や記録部５０８に、あらかじめインストールしておくことができる。
【０２６１】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０２６２】
また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【０２６３】
例えば、本技術は、１つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
【０２６４】
また、上述のフローチャートで説明した各ステップは、１つの装置で実行する他、複数の装置で分担して実行することができる。
【０２６５】
さらに、１つのステップに複数の処理が含まれる場合には、その１つのステップに含まれる複数の処理は、１つの装置で実行する他、複数の装置で分担して実行することができる。
【０２６６】
さらに、本技術は、以下の構成とすることも可能である。
【０２６７】
［１］
複数の撮影部によりユーザを被写体として撮影して得られた撮影画像に基づいて、前記ユーザの視線方向を検出する視線方向検出部と、
前記ユーザの前記視線方向の検出精度を算出する検出精度算出部と
を備える情報処理装置。
［２］
前記検出精度算出部は、前記撮影部と前記ユーザとの位置関係に関する情報、前記撮影部に関する情報、前記撮影画像に関する情報、および前記ユーザの注視時間の少なくとも何れかに基づいて、前記検出精度を算出する
［１］に記載の情報処理装置。
［３］
前記検出精度に応じた処理を実行する第１の処理部をさらに備える
［１］または［２］に記載の情報処理装置。
［４］
前記第１の処理部は、前記ユーザの視線による操作が行われる操作画面を、前記検出精度に応じた表示形態で表示させる
［３］に記載の情報処理装置。
［５］
前記第１の処理部は、前記検出精度に応じて、前記操作画面における操作対象を異なる大きさで表示させる
［４］に記載の情報処理装置。
［６］
前記第１の処理部は、前記検出精度に応じて、前記操作画面上に異なる数の操作対象を表示させる
［４］または［５］に記載の情報処理装置。
［７］
前記視線方向から求められた、前記ユーザの前記操作画面上の注視位置に応じた処理を実行する第２の処理部をさらに備える
［４］乃至［６］の何れか一項に記載の情報処理装置。
［８］
前記第１の処理部は、前記検出精度が閾値未満である場合、前記注視位置近傍にあるいくつかの操作対象が、前記注視位置に対応する操作対象の候補として表示される前記操作画面を表示させる
［７］に記載の情報処理装置。
［９］
前記第１の処理部は、複数の前記ユーザのそれぞれについて算出された前記視線方向の前記検出精度と、予め定められた閾値とを比較し、その比較結果に応じた処理を実行する
［３］乃至［８］の何れか一項に記載の情報処理装置。
［１０］
複数の撮影部によりユーザを被写体として撮影して得られた撮影画像に基づいて、前記ユーザの視線方向を検出し、
前記ユーザの前記視線方向の検出精度を算出する
ステップを含む情報処理方法。
［１１］
複数の撮影部によりユーザを被写体として撮影して得られた撮影画像に基づいて、前記ユーザの視線方向を検出し、
前記ユーザの前記視線方向の検出精度を算出する
ステップを含む処理をコンピュータに実行させるプログラム。
［１２］
複数の撮影部によりユーザを被写体として撮影して得られた撮影画像のうちの少なくとも１つの前記撮影画像に基づいて、前記ユーザの視線方向を検出する視線方向検出部と、
前記複数の前記撮影部で得られた前記撮影画像のうちの少なくとも２つの前記撮影画像について、前記撮影画像から前記ユーザの頭部を検出することで、前記ユーザの頭部位置を求め、前記撮影画像から前記ユーザの頭部が検出されなかった場合、前記撮影画像から検出された前記ユーザの一部分から推定により前記頭部位置を求める頭部検出部と、
前記ユーザの前記視線方向と、少なくとも２つの前記撮影画像について得られた前記ユーザの前記頭部位置とに基づいて、前記ユーザの注視位置を算出する注視位置算出部と
を備える情報処理装置。
【符号の説明】
【０２６８】
５１−１乃至５１−Ｎ，５１  カメラ，  ５２  情報処理装置，  ６１  取得部，  ６２  制御部，  ６４  表示部，  ７１  カメラ認識部，  ７２  顔検出部，  ７３  視線方向検出部，  ７４  注視位置算出部，  ７５  検出精度算出部，  ７６  UI処理部
【図１】
2016151798.tif 000003
【図２】
2016151798.tif 000004
【図３】
2016151798.tif 000005
【図４】
2016151798.tif 000006
【図５】
2016151798.tif 000007
【図６】
2016151798.tif 000008
【図７】
2016151798.tif 000009
【図８】
2016151798.tif 000010
【図９】
2016151798.tif 000011
【図１０】
2016151798.tif 000012
【図１１】
2016151798.tif 000013