(57)【要約】【課題】ディスプレイに、操作用アイコンを表示することにより、ユーザが直感的に指を動かして各種機能を選択・実行することを可能とする、新規かつ改良された情報処理装置を提供する。【解決手段】撮像部と、ディスプレイに操作用アイコンを表示させる操作用アイコン表示制御部と、撮像部により撮像された画像のうち、少なくともユーザの手の一部を含む画素領域から構成される入力操作領域画像をディスプレイに順次表示させる撮像画像表示制御部と、ユーザにより操作用アイコンが操作されたと判断するための条件であるイベント発行定義情報を、操作用アイコン毎に管理する操作用アイコン管理部と、ディスプレイに表示される入力操作領域画像およびイベント発行定義情報に基づいてユーザが操作用アイコンを操作したか否かを判断する操作判断部と、操作判断部による判断結果に応じて操作用アイコンに対応する所定の処理を実行する処理実行部と、を備える。【選択図】図２
2010045658.tif 000002
【特許請求の範囲】
【請求項１】
被写体を撮像する撮像部と、
ディスプレイに所定の処理に対応する操作用アイコンを表示させる操作用アイコン表示制御部と、
前記撮像部により撮像された画像を構成する画素領域のうち、少なくともユーザの手の一部を含む画素領域から構成される入力操作領域画像を、前記ディスプレイに順次表示させる撮像画像表示制御部と、
前記ユーザにより前記操作用アイコンが操作されたと判断するための条件であるイベント発行定義情報を、前記操作用アイコン毎に管理する操作用アイコン管理部と、
前記ディスプレイに表示される入力操作領域画像および前記イベント発行定義情報に基づいて、前記ユーザが前記操作用アイコンを操作したか否かを判断する操作判断部と、
前記操作判断部による判断結果に応じて、前記操作用アイコンに対応する所定の処理を実行する処理実行部と、
を備える情報処理装置。
【請求項２】
前記操作判断部は、前記入力操作領域画像を構成する画素領域の重心を算出し、前記ディスプレイに順次表示される前記入力操作領域画像を構成する画素領域の重心を結んで前記重心の動きベクトルを算出することにより、前記撮像部により撮像されるユーザの手の動きを認識する、請求項１に記載の情報処理装置。
【請求項３】
前記操作判断部は、前記重心および動きベクトルと、前記イベント発行定義情報とに基づいて、前記ユーザが前記操作用アイコンを操作したか否かを判断する、請求項２に記載の情報処理装置。
【請求項４】
前記操作用アイコン管理部は、前記ディスプレイに表示される操作用アイコンと、該操作用アイコンに対応する前記イベント発行定義情報と、該イベント発行定義情報に適合した場合に前記処理実行部が行う処理の内容とを、操作用アイコン毎に関連付けて管理する、請求項３に記載の情報処理装置。
【請求項５】
前記操作判断部によって前記ディスプレイに表示された表示アイコンが前記ユーザによって操作されたと判断された場合、前記処理実行部は、前記操作用アイコン管理部が管理する当該操作用アイコンに関連付けられた処理内容を実行する、請求項４に記載の情報処理装置。
【請求項６】
前記操作用アイコン表示制御部は、前記ユーザによる操作に応じて、前記ディスプレイに表示される操作用アイコンを適宜更新する、請求項５に記載の情報処理装置。
【請求項７】
前記撮像部により撮像された画像に対して、１フレーム前に撮像された画像と比較して変化のある画素領域を検出し、当該検出された画素領域のみによって構成される動き領域マスク画像を生成する動き検出部と、
前記撮像部により撮像された画像を構成する画素領域において、所定の色相を有する画素領域を検出し、当該検出された画素領域のみによって構成される肌色領域マスク画像を生成する動き検出部と、
をさらに備え、
前記入力操作領域画像は、前記動き領域マスク画像を構成する画素領域と、肌色領域マスク画像を構成する画素領域と、を論理積（ＡＮＤ）演算することにより算出される画素領域によって構成される、請求項６に記載の情報処理装置。
【請求項８】
前記撮像画像表示部は、前記入力操作領域画像を構成する画素数が、あらかじめ設定された所定の時間以上、あらかじめ設定された所定の画素数以上である場合に、前記ディスプレイに前記入力操作領域画像を表示させる、請求項７に記載の情報処理装置。
【請求項９】
前記撮像画像表示部は、前記入力操作領域画像を構成する画素数が、前記ディスプレイの表示可能画素数に対して所定の割合となるように、前記入力操作領域画像をスケーリングする、請求項８に記載の情報処理装置。
【請求項１０】
前記ディスプレイは、前記情報処理装置とは別の外部装置に備えられ、
前記情報処理装置は、前記外部装置に備えられる前記ディスプレイに前記操作用アイコンおよび前記入力操作領域画像を表示させる、請求項１に記載の情報処理装置。
【請求項１１】
放送信号に含まれる所定の映像を表示する表示部をさらに備え、
前記表示部は、前記ディスプレイを含む、請求項１に記載の情報処理装置。
【請求項１２】
ユーザが発生する音声を入力する音声入力部と、
前記音声入力部に入力される音声の種類を識別する音声認識処理部と、
をさらに備え、
前記操作用アイコン管理部は、前記音声の種類に対応して前記ディスプレイに表示する操作用アイコンの情報を、音声の種類毎に管理し、
前記操作用アイコン表示制御部は、前記音声認識処理部により識別された音声の種類に応じて、当該識別された音声の種類に対応する操作用アイコンを、前記操作用アイコン管理部が管理する情報に基づいて、前記ディスプレイに表示させる、請求項１に記載の情報処理装置。
【請求項１３】
前記操作用アイコン表示制御部は、前記操作判断部により算出される前記重心の動きベクトルに基づいて、前記重心の軌跡を前記ディスプレイに表示させる、請求項２に記載の情報処理装置。
【請求項１４】
前記ディスプレイに表示される重心の軌跡が閉曲線となった場合、
前記操作用アイコン表示部は、前記閉曲線により囲まれた表示領域に関する所定の処理に対応する操作用アイコンを前記ディスプレイに表示させる、請求項１３に記載の情報処理装置。
【請求項１５】
撮像部により被写体を撮像する撮像ステップと、
ディスプレイに所定の処理に対応する操作用アイコンを表示させる操作用アイコン表示ステップと、
前記撮像ステップにより撮像された画像を構成する画素領域のうち、少なくともユーザの手の一部を含む画素領域から構成される入力操作領域画像を、前記ディスプレイに順次表示させる撮像画像表示ステップと、
前記操作用アイコン表示ステップにより前記ディスプレイに表示された前記操作用アイコンと、前記撮像画像表示ステップにより前記ディスプレイに表示された前記入力操作領域画像と、前記操作用アイコン毎に管理される前記ユーザにより前記操作用アイコンが操作されたと判断するための条件であるイベント発行定義情報と、に基づいて、前記ユーザが前記操作用アイコンを操作したか否かを判断する操作判断ステップと、
前記操作判断ステップによる判断結果に応じて、前記操作用アイコンに対応する所定の処理を実行する処理実行ステップと、
を含む情報処理方法。
【請求項１６】
撮像部により被写体を撮像する撮像処理と、
ディスプレイに所定の処理に対応する操作用アイコンを表示させる操作用アイコン表示処理と、
前記撮像ステップにより撮像された画像を構成する画素領域のうち、少なくともユーザの手の一部を含む画素領域から構成される入力操作領域画像を、前記ディスプレイに順次表示させる撮像画像表示処理と、
前記操作用アイコン表示ステップにより前記ディスプレイに表示された前記操作用アイコンと、前記撮像画像表示ステップにより前記ディスプレイに表示された前記入力操作領域画像と、前記操作用アイコン毎に管理される前記ユーザにより前記操作用アイコンが操作されたと判断するための条件であるイベント発行定義情報と、に基づいて、前記ユーザが前記操作用アイコンを操作したか否かを判断する操作判断処理と、
前記操作判断ステップによる判断結果に応じて、前記操作用アイコンに対応する所定の処理を実行する処理実行処理と、
を、コンピュータに実行させる情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法および情報処理プログラムに関する。
【背景技術】
【０００２】
近年は、テレビの映像配信技術の発達や、録画再生機器などのネットワーク機器の機能の複雑化などに伴い、テレビには種々の機能が搭載されるようになり、ユーザはリモコンなどを介して複雑な操作が要求されるようになった。一方で、多くの操作ボタンを備えたリモコンは、ユーザにとって操作性が悪いため、シンプルなボタン構成のリモコンが主流となりつつある。しかしながら、シンプルなボタン構成のリモコンであっても、ユーザは、ディスプレイに表示される階層化されたメニューに対して、リモコンから何度も指示を送信する必要がある。結局ユーザは、リモコンに構成される多くのボタンを介した複雑な操作、または、シンプルなボタン構成のリモコンを介してディスプレイに表示される複雑なメニューの操作が必要となってしまう。
【０００３】
このような、リモコンを介した操作性の煩わしさを解消する方法として、例えば、特許文献１には、リモコンを利用することなく、撮像装置によって撮像されるユーザの手の動きにより、テレビの各種機能を実行する技術が開示されている。特許文献１に記載の方法は、テレビのディスプレイに各種機能を選択するためのメニュー表示を指のオブジェクトなどで表示させる。また、テレビには撮像装置が備えられ、ユーザを撮像することができる。さらに、この撮像部により撮像されたユーザの指の動きと、メニュー表示の指との一致を判断し、一致した場合に当該メニューに対応する機能を実行することができる。これにより、ユーザは、リモコンを利用することなく、テレビに備えられる各種機能を選択することができる。
【０００４】
【特許文献１】特開２００４−３５６８１９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１に記載の方法は、ディスプレイに表示された各種機能を選択するための指のオブジェクトなどで表現されるメニュー表示に従って、ユーザが指を動かす必要がある。したがって、ユーザはディスプレイの表示と同様の動きをする必要があり、直感的に指を動かすことにより、テレビに備えられる各種機能を選択することはできないという問題があった。
【０００６】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、ディスプレイに、操作用アイコンを表示することにより、ユーザが直感的に指を動かして各種機能を選択・実行することを可能とする、新規かつ改良された情報処理装置、情報処理方法および情報処理プログラムを提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明のある観点によれば、被写体を撮像する撮像部と、ディスプレイに所定の処理に対応する操作用アイコンを表示させる操作用アイコン表示制御部と、前記撮像部により撮像された画像を構成する画素領域のうち、少なくともユーザの手の一部を含む画素領域から構成される入力操作領域画像を、前記ディスプレイに順次表示させる撮像画像表示制御部と、前記ユーザにより前記操作用アイコンが操作されたと判断するための条件であるイベント発行定義情報を、前記操作用アイコン毎に管理する操作用アイコン管理部と、前記ディスプレイに表示される入力操作領域画像および前記イベント発行定義情報に基づいて、前記ユーザが前記操作用アイコンを操作したか否かを判断する操作判断部と、前記操作判断部による判断結果に応じて、前記操作用アイコンに対応する所定の処理を実行する処理実行部と、を備える情報処理装置が提供される。
【０００８】
係る構成により、情報処理装置は、撮像部により撮像される画像のうち、少なくともユーザの手の一部を含む画素領域から構成される入力操作領域画像を、ディスプレイに順次表示させることができる。また、情報処理装置は、所定の処理に対応する操作用アイコンをディスプレイに表示させることができる。また、情報処理装置は、ディスプレイに表示させる操作用アイコンがユーザにより操作されたと判断するための条件であるイベント発行定義情報を管理することができる。また、情報処理装置は、ディスプレイに表示される入力操作領域画像および操作用アイコンと、イベント発行定義情報とに基づいて、ユーザが操作用アイコンを操作したか否かを判断することができる。さらに、情報処理装置は、当該判断結果に投じて、操作用アイコンに対応する所定の処理を実行することができる。
【０００９】
また、前記操作判断部は、前記入力操作領域画像を構成する画素領域の重心を算出し、前記ディスプレイに順次表示される前記入力操作領域画像を構成する画素領域の重心を結んで前記重心の動きベクトルを算出することにより、前記撮像部により撮像されるユーザの手の動きを認識することもできる。
【００１０】
また、前記操作判断部は、前記重心および動きベクトルと、前記イベント発行定義情報とに基づいて、前記ユーザが前記操作用アイコンを操作したか否かを判断することもできる。
【００１１】
また、前記操作用アイコン管理部は、前記ディスプレイに表示される操作用アイコンと、該操作用アイコンに対応する前記イベント発行定義情報と、該イベント発行定義情報に適合した場合に、前記処理実行部が行う処理の内容とを、操作用アイコン毎に関連付けて管理することもできる。
【００１２】
また、前記操作判断部によって前記ディスプレイに表示された表示アイコンが前記ユーザによって操作されたと判断された場合、前記処理実行部は、前記操作用アイコン管理部が管理する当該操作用アイコンに関連付けられた処理内容を実行することもできる。
【００１３】
また、前記操作用アイコン表示制御部は、前記ユーザによる操作に応じて、前記ディスプレイに表示される操作用アイコンを適宜更新することもできる。
【００１４】
また、前記撮像部により撮像された画像に対して、１フレーム前に撮像された画像と比較して変化のある画素領域を検出し、当該検出された画素領域のみによって構成される動き領域マスク画像を生成する動き検出部と、前記撮像部により撮像された画像を構成する画素領域において、所定の色相を有する画素領域を検出し、当該検出された画素領域のみによって構成される肌色領域マスク画像を生成する動き検出部と、をさらに備えてもよい。この場合、前記入力操作領域画像は、前記動き領域マスク画像を構成する画素領域と、肌色領域マスク画像を構成する画素領域と、を論理積（ＡＮＤ）演算することにより算出される画素領域によって構成されてもよい。
【００１５】
また、前記撮像画像表示部は、前記入力操作領域画像を構成する画素数が、あらかじめ設定された所定の時間以上、あらかじめ設定された所定の画素数以上である場合に、前記ディスプレイに前記入力操作領域画像を表示させることもできる。
【００１６】
また、前記撮像画像表示部は、前記入力操作領域画像を構成する画素数が、前記ディスプレイの表示可能画素数に対して所定の割合となるように、前記入力操作領域画像をスケーリングすることもできる。
【００１７】
また、前記ディスプレイは、前記情報処理装置とは別の外部装置に備えられてもよい。この場合、前記情報処理装置は、前記外部装置に備えられる前記ディスプレイに前記操作用アイコンおよび前記入力操作領域画像を表示させることもできる。
【００１８】
また、前記情報処理装置は、放送信号に含まれる所定の映像を表示する表示部をさらに備え、前記表示部は、前記ディスプレイを含むこともできる。
【００１９】
また、前記情報処理装置は、ユーザが発生する音声を入力する音声入力部と、前記音声入力部に入力される音声の種類を識別する音声認識処理部と、をさらに備えてもよい。この場合、前記操作用アイコン管理部は、前記音声の種類に対応して前記ディスプレイに表示する操作用アイコンの情報を、音声の種類毎に管理し、前記操作用アイコン表示制御部は、前記音声認識処理部により識別された音声の種類に応じて、当該識別された音声の種類に対応する操作用アイコンを、前記操作用アイコン管理部が管理する情報に基づいて、前記ディスプレイに表示させることもできる。
【００２０】
また、前記操作用アイコン表示制御部は、前記操作判断部により算出される前記重心の動きベクトルに基づいて、前記重心の軌跡を前記ディスプレイに表示させることもできる。
【００２１】
また、前記ディスプレイに表示される重心の軌跡が閉曲線となった場合、前記操作用アイコン表示部は、前記閉曲線により囲まれた表示領域に関する所定の処理に対応する操作用アイコンを前記ディスプレイに表示させることもできる。
【００２２】
また、上記課題を解決するために、本発明の別の観点によれば、撮像部により被写体を撮像する撮像ステップと、ディスプレイに所定の操作用アイコンを表示させる操作用アイコン表示ステップと、前記撮像ステップにより撮像された画像を構成する画素領域のうち、少なくともユーザの手の一部を含む画素領域から構成される入力操作領域画像を、前記ディスプレイに順次表示させる撮像画像表示ステップと、前記操作用アイコン表示ステップにより前記ディスプレイに表示された前記操作用アイコンと、前記撮像画像表示ステップにより前記ディスプレイに表示された前記入力操作領域画像と、前記操作用アイコン毎に管理される前記ユーザにより前記操作用アイコンが操作されたと判断するための条件であるイベント発行定義情報と、に基づいて、前記ユーザが前記操作用アイコンを操作したか否かを判断する操作判断ステップと、前記操作判断ステップによる判断結果に応じて、前記操作用アイコンに対応する所定の処理を実行する処理実行ステップと、を含む情報処理方法が提供される。
【００２３】
また、上記課題を解決するために、本発明の別の観点によれば、撮像部により被写体を撮像する撮像処理と、ディスプレイに所定の操作用アイコンを表示させる操作用アイコン表示処理と、前記撮像ステップにより撮像された画像を構成する画素領域のうち、少なくともユーザの手の一部を含む画素領域から構成される入力操作領域画像を、前記ディスプレイに順次表示させる撮像画像表示処理と、前記操作用アイコン表示ステップにより前記ディスプレイに表示された前記操作用アイコンと、前記撮像画像表示ステップにより前記ディスプレイに表示された前記入力操作領域画像と、前記操作用アイコン毎に管理される前記ユーザにより前記操作用アイコンが操作されたと判断するための条件であるイベント発行定義情報と、に基づいて、前記ユーザが前記操作用アイコンを操作したか否かを判断する操作判断処理と、前記操作判断ステップによる判断結果に応じて、前記操作用アイコンに対応する所定の処理を実行する処理実行処理と、をコンピュータに実行させる情報処理プログラムが提供される。
【発明の効果】
【００２４】
以上説明したように本発明によれば、ディスプレイに、操作用アイコンを表示することにより、ユーザが直感的に指を動かして各種機能を選択・実行することを可能とする、新規かつ改良された情報処理装置、情報処理方法および情報処理プログラムが提供される。
【発明を実施するための最良の形態】
【００２５】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。また、説明は以下の順序で行うものとする。
１．本発明の実施形態の概要
２．実施形態の１つに係る情報処理装置
２−１．テレビ１００の機能構成
２−２．本実施形態の処理のフロー（撮像処理〜ＧＵＩ操作の処理）
２−３．撮像データ処理フロー
２−４．状態遷移処理フロー
２−５．撮像画像表示処理フロー
２−６．ＧＵＩ操作処理フロー
３．変形例
３−１．変形例１（音声入力機能の利用）
３−２．変形例２（カーソルＧＵＩの利用）
【００２６】
（１．本発明の実施形態の概要）
本発明の実施形態の１つに係る情報処理装置の詳細について説明する前に、まず、本発明の実施形態の概要について説明する。上述したように、従来のディスプレイを備えるテレビなどの情報処理装置は、ディスプレイ上に各種機能に対応するメニューをユーザの指のオブジェクトなどを表示することができる。これによりユーザは、ディスプレイに表示される指に合わせた動きをすることにより、テレビなどの情報処理装置が備える各種機能を選択することができた。しかしながら、ユーザは、ディスプレイに表示された指示に従って指などを動かす必要がある。したがって、ユーザは結局、直感的な指の動きにより、情報処理装置の各種機能を選択することはできなかった。
【００２７】
これに対して、本発明の実施形態に係る情報処理装置は、ユーザが直感的に指（手のひらなどの部分を含む）を動かすことにより、情報処理装置の備える各種機能を選択・実行することを可能とする。具体的には、本実施形態にかかる情報処理装置は、ユーザが操作性を容易に認識可能な操作用アイコン（ＧＵＩ：Ｇｒａｐｈｉｃ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）をディスプレイに表示させることができる。また、本実施形態に係る情報処理装置は、撮像部により撮像されるユーザの指の動きもディスプレイに表示させることができる。さらに、本実施形態に係る情報処理装置は、ユーザの指の動きを検出し、ディスプレイに表示されたＧＵＩに対してユーザがどのような操作を行ったかを認識することができる。したがって、本実施形態にかかる情報処理装置は、ディスプレイに表示されるＧＵＩと、ユーザの指の動きと、に応じて各種機能を実行することができる。この結果、ユーザは、直感的に指を動かすことにより、ディスプレイに表示される各種ＧＵＩを操作することができ、情報処理装置の備える各種機能を選択・実行することが可能となる。
【００２８】
図１は、本発明の実施形態に係る情報処理装置の使用例の概念図である。図１に示すように、ユーザは、リモコンを使用することなく、ディスプレイに表示される各種ＧＵＩをあたかも自分の指で操作するように指を動かすことで、情報処理装置の備える各種機能を選択・実行することができる。
【００２９】
このような特徴を有する本発明の実施形態に係る情報処理装置の詳細について、以下説明する。なお、以下の実施形態においては、本発明の実施形態に係る情報処理装置の一例としてテレビ１００を例に説明するが、これに限定されるものではない。例えば、パーソナルコンピュータや、各種操作用のディスプレイを備える情報処理装置であってもよい。また、ハードディスクレコーダ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）レコーダなどの各種録画再生機器や、ゲーム機器などのように、外部機器のディスプレイに操作メニューなどを表示させる情報処理装置であってもよい。また、以下の説明において、「指」と表現する場合であっても、必ずしも人間の指の部分のみを指すのではなく、手のひら、手首などを含む手全体を指す場合もある。
【００３０】
（２．実施形態の１つに係る情報処理装置）
（２−１．テレビ１００の機能構成）
まず、本発明の実施形態の１つに係る情報処理装置の一例であるテレビジョン受像機１００（以下テレビ１００という）の機能構成について説明する。図２は、本実施形態に係るテレビ１００の機能構成を示すブロック図である。
【００３１】
図２に示すように、テレビ１００は主に、撮像部１０２と、ユーザ領域検出部１０４と、状態遷移処理部１０５と、撮像画像表示処理部１０６と、ＧＵＩ表示制御部１０８と、ＧＵＩ管理部１１０と、ＧＵＩ操作判断部１１２と、ＧＵＩ操作記憶部１１４と、処理実行部１１６と、表示部１１８と、を含んで構成される。これらの各構成部は、バスで接続され、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）によって制御される。以下、テレビ１００の各構成部の詳細について説明する。
【００３２】
（撮像部１０２）
撮像部１０２は、被写体からの光を撮像面に結像させるレンズ等の光学系と、撮像面を有するＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）などの撮像素子などからなる。撮像部１０２は、レンズを通して捉えた被写体像を電気信号に変換して出力する。なお、撮像部１０２が備える撮像素子は、ＣＣＤに限定されず、例えばＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）などであってもよい。また、ユーザ操作に応じて、適切なズーム、フォーカス等で被写体が撮像されるように、撮像部１０２の駆動機構を制御して、ズームレンズ、フォーカスレンズ（図示せず）などを駆動させることなども可能である。撮像部１０２により撮像された映像信号は、ＡＤ変換機（図示せず）によりデジタル信号に変換された後に、ユーザ領域検出部１０４に伝送される。
【００３３】
（ユーザ領域検出部１０４）
ユーザ領域検出部１０４は、撮像部１０２によって撮像された映像領域に含まれるユーザの指（手）の領域を検出する。図２に示すように、ユーザ領域検出部１０４は主に、動き検出部１２０と、肌色検出部１２２と、演算処理部１２４と、を含んで構成される。以下、ユーザ領域検出部１０４を構成する各部の詳細について説明する。
【００３４】
（動き検出部１２０）
動き検出部１２０は、撮像部１０２によって撮像された所定のフレームと、当該フレームの１つ前に撮像されたフレームと、の映像差分を抽出する、いわゆるフレーム差分法に基づいて、ユーザの手の動きを検出する。例えば、動き検出部１２０は、撮像部１０２によって撮像されたフレームと、フレームメモリ（図示せず）に記録されている１つ前のフレームとの差分、すなわち両フレームの異なる部分を抽出することができる。動き検出部１２０は、このように、両フレームの差分を抽出することにより、１つ前のフレームから動きがあった部分を認識することができる。動き検出部１２０は、このようにして認識した動き部分に対応する領域のみからなる画像を動き領域マスク画像として生成し、演算処理部１２４へ伝送する。
【００３５】
なお、動き検出部１２０は、本実施形態においては、前後のフレームの差分により撮像されたオブジェクトの動きを検出するが、本発明はこれに限定されるものではない。例えば、動き検出部１２０は、より複雑な検出機能を備えることにより、より正確にユーザの動きを認識することも可能であるが、本発明はユーザの動きの検出精度を向上させることを目的としているわけではないため、詳細は省略する。すなわち、動き検出部１２０は、種々の方法によって、撮像部１０２による撮像領域内の動きを検出することができ、特定の検出方法に限定されるものではない。
【００３６】
（肌色検出部１２２）
肌色検出部１２２は、撮像部１０２によって撮像された所定のフレーム内に存在する肌色領域を検出する。上述した動き検出部１２０によって、撮像領域内の所定のオブジェクトの動きを検出することができるが、例えば、ユーザの手以外の物体が動いていた場合においても、動き検出部１２０は、当該物体の動きを検出してしまう。したがって、本実施形態に係るユーザ領域検出部１０４は、上述した動き検出部１２０に加えて、肌色検出部１２２を備えることで、より確実にユーザの手の動きを検出することができる。
【００３７】
例えば、肌色領域の検出は、撮像部１０２によって撮像された撮像画像を構成する各画素の色彩情報に基づいて、各画素の色相、彩度、明度などの情報を算出する。肌色検出部１２２は、算出された情報に基づいて、撮像画像に含まれる肌色領域を特定することができる。
【００３８】
撮像部１０２によって撮像された画像は、画素ごとに赤色(Ｒ：Ｒｅｄ)、緑色（Ｇ：Ｇｒｅｅｎ）、青色（Ｂ：Ｂｌｕｅ）からなるＲＧＢ色彩情報を有している。肌色検出部１２２は、このＲＧＢ色彩情報をＨＳＶ（Ｈｕｅ、Ｓａｔｕｒａｔｉｏｎ、Ｂｒｉｇｈｔｎｅｓ）情報に変換する。ここでＨＳＶとは、色相（Ｈｕｅ）、彩度（Ｓａｔｕｒａｔｉｏｎ）、明度（Ｂｒｉｇｈｔｎｅｓｓ）の３つの成分からなる情報である。色相とは、赤色、青色、黄色などの色の種類を意味する。彩度とは、色の鮮やかさを意味する。明度とは、色の明るさを意味する。
【００３９】
肌色検出部１２２は、撮像部１０２によって撮像された画像を構成する各画素のＲＧＢ色彩情報を、例えば以下の式によりＨＳＶ情報へと変換する。
【００４０】
【数１】
2010045658.tif 000003
・・・（１）
2010045658.tif 000004
・・・（２）
2010045658.tif 000005
・・・（３）
2010045658.tif 000006
・・・（４）
2010045658.tif 000007
・・・（５）
【００４１】
ここでＲ、Ｇ、Ｂは、撮像部１０２によって撮像された画像を構成する各画素のＲＧＢ色彩情報の値であり、例えば０〜２５５の数字で表される。また「ＭＡＸ」は、撮像部１０２によって撮像された画像を構成する各画素のＲＧＢ値の最大値であり、「ＭＩＮ」は、最小値である。式（１）からは、ある画素のＲＧＢ値の中でＲ値が最大値（ＭＡＸ）である場合に色相（Ｈ）を求めることができる。式（２）からは、ある画素のＲＧＢ値の中でＧ値が最大値（ＭＡＸ）である場合に色相（Ｈ）を求めることができる。式（３）からは、ある画素のＲＧＢ値の中でＢ値が最大値（ＭＡＸ）である場合に色相（Ｈ）を求めることができる。上記式（１）〜（５）により、Ｈは０〜３５９の範囲、Ｓは０〜２５５の範囲、Ｖは０〜２５５の範囲、の値がそれぞれ算出される。
【００４２】
上記式（１）〜（５）によって、肌色検出部１２２は、撮像部１０２によって撮像された画像を構成する各画素のＨＳＶ値を算出することができる。例えば、撮像部１０２によって撮像された画像を構成するある画素の色彩情報がＲ＝２０８、Ｇ＝１４５、Ｂ＝１３０である場合、Ｈ＝１１、Ｓ＝９５、Ｖ＝２０８と算出される。
【００４３】
このようにＨＳＶ値は色相に関する値（Ｈ）が独立しているため、肌色検出部１２２は、撮像部１０２によって撮像された画像中の所定の色相領域を特定することができる。
【００４４】
ここで、人間の肌を表す色相は経験的に約Ｈ＝６〜３８であるといわれている。したがって肌色検出部１２２は、撮像部１０２によって撮像された画像を構成する各画素のうち、Ｈ＝６〜３８を有する画素を抽出することにより、撮像画像に含まれる肌色領域を特定することができる。肌色検出部１２２は、このようにして認識した肌色領域のみからなる画像を肌色領域マスク画像として生成し、演算処理部１２４へ伝送する。
【００４５】
なお、上記のＲＧＢ値、ＨＳＶ値は本実施形態を説明する上での一例であり、本発明はこれに限定されるものではない。例えば上記例ではＲＧＢの値が０〜２５５の値で表現されているが、その他の数値、例えば０〜１、パーセンテージ表示などにより表されることも当然に可能であり、上記式（１）〜（５）もそれに応じて変更されるものであることが理解されるべきである。
【００４６】
（演算処理部１２４）
演算処理部１２４は、上述した動き検出部１２０によって生成された動き領域マスク画像と、肌色検出部１２２によって生成された肌色領域マスク画像と、に基づいて、表示部１１８に表示する入力操作領域画像を生成する。演算処理部１２４は、例えば、動き領域マスク画像を構成する画素領域と、肌色領域マスク画像を構成する画素領域と、を論理積（ＡＮＤ）演算により合成することにより、入力操作領域画像を生成することができる。このように、動き領域マスク画像と肌色領域マスク画像とをＡＮＤ演算で合成することにより、ユーザの手が動いた領域のみを抽出して入力操作領域画像として生成することができる。
【００４７】
このようにして生成された入力操作領域画像は、後述する状態遷移処理部１０５および撮像画像表示処理部１０６による各種処理を経た後、表示部１１８に表示される。したがって、撮像部１０２によって撮像された映像のうち、ユーザの手が動いている部分の映像のみが表示部１１８に表示されることとなる。
【００４８】
なお、本実施形態においては、ユーザ領域検出部１０４は、動き検出および肌色検出を併用することによりユーザの手が動いている領域を特定したが、本発明は必ずしもこれに限定されるものではない。例えば、撮像部１０２が赤外線センサなどをそなえることにより、温度分布画像を生成することにより、ユーザの手の動く領域を検出する精度をさらに向上させることなども当然に可能である。また、上述した肌色検出ではユーザの顔に相当する領域も抽出してしまうおそれがある。したがって、顔センシング技術を用いることにより、撮像画像領域内のユーザの顔に相当する部分を特定し、ＮＯＴ演算により入力操作領域画像からユーザの顔に相当する領域を除外することも可能である。顔センシング技術としては、例えば、サポートベクターマシン（ＳＶＭ：Ｓｕｐｐｏｒｔ  Ｖｅｃｔｏｒ  Ｍａｃｈｉｎｅ）、ブースティング（Ｂｏｏｓｔｉｎｇ）、ニューラルネットワーク、固有顔法（Ｅｉｇｅｎ−Ｆａｃｅｓ）などを用いることができる。
【００４９】
（状態遷移処理部１０５）
次に、ユーザ領域検出部１０４によって生成された入力操作領域画像に基づいて、表示部１１８に各種ＧＵＩや撮像画像を表示するか否かを判断する状態遷移処理部１０５について説明する。ユーザは、手を動かすことにより、表示部１１８に表示される各種ＧＵＩを操作することができる。したがって、撮像部１０２によって撮像された映像にユーザの手が映っていない場合や、映っていても動きがほとんどないような場合などは、表示部１１８に撮像画像を表示させる必要はない。すなわち、ユーザが所定の操作を希望して手を動かしたときのみ表示部１１８に撮像画像を表示させればよい。したがって、本実施形態においては、状態遷移処理部１０５は、ユーザ領域検出部１０４によって生成された入力操作領域画像に基づいて、表示部１１８に撮像画像を表示するか否かを判断する。
【００５０】
状態遷移処理部１０５は、例えば、あらかじめ設定された所定の時間以上継続して、入力操作領域画像を構成する画素数が、あらかじめ設定された所定の閾値以上であるか否かを判断する。所定時間以上、入力操作領域画像を構成する画素数が、閾値以上である場合は、状態遷移処理部１０５は、ユーザが表示部１１８に表示されるＧＵＩの操作を希望していると判断し、入力操作領域画像を撮像画像表示処理部１０６へ伝送する。その後、入力操作領域画像は、撮像画像表示処理部１０６によるスケーリング処理および座標変換処理などを経た後、表示部１１８に表示される。
【００５１】
なお、このように、表示部１１８に、ユーザの動く手を含む入力操作領域画像が表示されることにより、ユーザが表示部１１８に表示される各種ＧＵＩを操作することができる状態を、以下「ＧＵＩ操作状態」という。これに対して、ユーザが表示部１１８に表示される各種ＧＵＩを操作しないため、表示部１１８に撮像画像を表示しない状態を、以下「操作待機状態」という。
【００５２】
また、ＧＵＩ操作状態に遷移するか否かを判断するための、所定の時間や画素数の所定の閾値は任意に設定されるものであり、特定の値に限定されるものではない。また、以下の説明においては、操作待機状態からＧＵＩ操作状態に遷移するために設定された所定の時間を「操作状態遷移設定時間」という。
【００５３】
上述したように、状態遷移処理部１０５は、操作状態遷移設定時間以上継続して、入力操作領域画像を構成する画素数が、あらかじめ設定された所定の閾値以上である場合には、操作待機状態からＧＵＩ操作状態へと遷移させる。一方、状態遷移処理部１０５は、操作状態遷移設定時間以上継続して、入力操作領域画像を構成する画素数が、あらかじめ設定された所定の閾値以上でない場合には、操作待機状態を維持する。また、ＧＵＩ操作状態において、状態遷移処理部１０５は、例えば、あらかじめ設定された所定の時間以上継続して、入力操作領域画像を構成する画素数が、あらかじめ設定された所定の閾値以下である場合には、ＧＵＩ操作状態から操作待機状態へと遷移させる。なお、以下の説明においては、このようにＧＵＩ操作状態から操作待機状態に遷移するために設定された所定の時間を「待機状態遷移設定時間」という。
【００５４】
このように、状態遷移処理部１０５が、ＧＵＩ操作状態と操作待機状態との遷移を制御することにより、本実施形態に係るテレビ１００は、ユーザがＧＵＩの操作を所望するときにのみ、表示部１１８に入力操作領域画像を表示させることができる。したがって、ユーザが所定の番組を楽しんでいる場合などのように、ＧＵＩの操作を希望しない場合においては、表示部１１８には入力操作領域画像を表示させないことができる。
【００５５】
（撮像画像表示処理部１０６）
次に、ユーザ領域検出部１０４によって生成された入力操作領域画像に対して、表示部１１８に表示するために所定の処理を実行する撮像画像表示処理部１０６について説明する。撮像画像表示処理部１０６は、上述した状態遷移処理部１０５によって、操作待機状態からＧＵＩ操作状態へと遷移された場合に、入力操作領域画像に所定の処理を実行する。図２に示すように、撮像画像表示処理部１０６は主に、スケーリング処理部１２６と、座標変換処理部１２８と、を含んで構成される。以下、撮像画像表示処理部１０６を構成する各部の詳細について説明する。
【００５６】
（スケーリング処理部１２６）
スケーリング処理部１２６は、表示部１１８の有効画素数に基づいて、入力操作領域画像をスケーリングする。入力操作領域画像は、上述したように、基本的にユーザの動く手のみを含む画像である。したがって、テレビ１００からユーザまでの距離や、撮像部１０２の撮像性能などによって、入力操作領域画像においてユーザの手が含まれる領域の画素数は異なる。したがって、一定の大きさの入力操作領域画像を常に表示部１１８に表示させるように、スケーリング処理部１２６は、入力操作領域画像に対してスケーリング処理を行う。
【００５７】
スケーリング処理部１２６は、例えば、状態遷移処理部１０５によりＧＵＩ操作状態に遷移された後、数フレーム前までの入力操作領域画像の平均画素数および画素領域の重心を算出する。その後、スケーリング処理部１２６は、算出された平均画素数が、表示部１１８の有効画素数の所定の割合となるように、スケーリングの比率を算出する。スケーリング処理部１２６は、例えば、表示部１１８の有効画素数の１０％となるように入力操作領域画像をスケーリングすることができる。このときスケーリング処理部１２６は、例えば、算出された重心を中心として、入力操作領域画像をスケーリングすることができる。
【００５８】
これにより、撮像部１０２の撮像性能や、ユーザまでの距離などに関わらず、表示部１１８に常に一定の大きさの入力操作領域画像が表示されることとなる。
【００５９】
なお、上記のスケーリング比率は、例えば初期設定などで所定の値に設定することができ、ユーザにより適宜変更されることも当然に可能である。
【００６０】
（座標変換処理部１２８）
上述したようにしてスケーリング処理が施された入力操作領域画像は、その後、座標変換処理部１２８により座標変換処理が施されることもできる。座標変換処理部１２８は、スケーリング処理が施された入力操作領域画像に対して、表示部１１８に対応する画面座標に座標変換を行う。
【００６１】
撮像部１０２の仕様や表示部１１８のディスプレイ仕様などによっては、撮像画像から生成された入力操作領域画像の座標系と、表示部１１８の画面座標と、が異なる形式の場合がある。このような場合に、座標変換処理部１２８は、入力操作領域画像に対して座標変換処理を行い、表示部１１８の画面座標に合わせた座標系に変換する。これにより座標変換処理が施された入力操作領域画像は、表示部１１８に正確に表示されることとなる。
【００６２】
図３は、座標変換処理部１２８による座標変換の処理の一例を示す概念図である。図３に示す例は、スケーリング処理が施された入力操作領域画像の座標系が、中心を原点とした座標系で、表示部１１８の画面座標が、左上を原点として横１９２０×縦１０８０である場合である。このような場合、座標変換処理部１２８は、表示部１１８のスクリーン座標をＸｓ、Ｙｓとし、入力操作領域画像の座標をＸｃ、Ｙｃとすると、以下の式により座標変換を行うことができる。
【００６３】
Ｘｓ＝スクリーン幅（１９２０）×（Ｘｃ＋１．０）／２
Ｙｓ＝スクリーン高さ（１０８０）×（２．０−（Ｙｃ＋１．０））／２
【００６４】
なお、上記式は、アスペクト比を考慮しない座標変換であるが、撮像部１０２により撮像される画像および表示部１１８のディスプレイのアスペクト比を考慮して座標変換をすることも当然に可能である。アスペクト比を考慮した座標変換については、通常行われるクリッピング処理などを利用することができ、詳細の処理については省略する。また、上記例では、座標変換処理部１２８は、撮像部１０２により撮像される画像の座標系を表示部１１８の画面座標に適合するように、座標変換処理を行う例について説明したが、これに限定されるものではない。例えば、座標変換処理部１２８は、表示部１１８の画面座標を撮像部１０２により撮像される画像の座標系に適合するように、座標変換処理を行うこともできる。
【００６５】
このようにして、撮像画像表示処理部１０６によって各種処理が施された入力操作領域画像は、表示部１１８に伝送されて表示されることとなる。
【００６６】
（表示部１１８）
表示部１１８は、例えば、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ；液晶ディスプレイ）、有機ＥＬディスプレイ（ｏｒｇａｎｉｃ  ＥｌｅｃｔｒｏＬｕｍｉｎｅｓｃｅｎｃｅ  ｄｉｓｐｌａｙ）などからなる表示装置である。表示部１１８は、アンテナ（図示せず）などにより放送局から受信した所定の番組や、撮像画像表示処理部１０６から伝送された入力操作領域画像や、各種ＧＵＩなどを表示することができる。ユーザは、表示部１１８に表示される各種ＧＵＩと、入力操作領域画像に含まれる自己の手の映像に基づいて、テレビ１００の各種機能を選択・実行することができる。
【００６７】
（ＧＵＩ表示制御部１０８）
次に、テレビ１０８が備える各種機能に対応するＧＵＩの表示部１０８への表示を制御する、ＧＵＩ表示制御部１０８について説明する。なお、ＧＵＩ表示制御部１０８は、本発明の操作用アイコン表示制御部として機能するものである。
【００６８】
ＧＵＩ表示制御部１０８は、上述した状態遷移処理部１０５によりＧＵＩ操作状態に遷移された場合や、後述するＧＵＩ操作判断部１１２によってユーザが何らかの機能を選択した場合などに、表示部１１８への各種ＧＵＩの表示切替などを制御する。ＧＵＩ表示制御部１０８は、例えば、ＧＵＩ管理部１１０が管理するＧＵＩの中からＧＵＩ操作判断部１１２によって指示されたＧＵＩを表示部１１８へ表示させる。なお、ＧＵＩ表示制御部１０８による表示部１１８へのＧＵＩの表示制御の詳細については、後述する処理フローにおいて説明する。
【００６９】
（ＧＵＩ管理部１１０）
ＧＵＩ管理部１１０は、テレビ１０４が備える各種機能に対応するＧＵＩを管理する。表示部１１８に表示させるＧＵＩは、ユーザが操作を直感的に認識できるような操作用アイコンで構成される。したがって、テレビ１０４が備える各種機能に対応して異なるＧＵＩを表示部１１８に表示させる必要がある。ＧＵＩ管理部１１０は、このような異なる複数のＧＵＩを管理する。なお、ＧＵＩ管理部１１０は、本発明の操作用アイコン管理部として機能するものである。
【００７０】
ここで、ＧＵＩ管理部１１０によって管理されるＧＵＩの一例について図４を参照にして説明する。図４は、ＧＵＩ管理部１１０によって管理されるＧＵＩの一例を示す説明図である。
【００７１】
図４に示すスライドバーＧＵＩ４００は、例えば、音量調整や、ディスプレイの輝度・明度調整や、画面の上下方向へのスライドなどに利用される。すなわち、ユーザは、表示部１１８に表示されるスライドバーＧＵＩ４００に対して、自己の指を上下方向に動かすことにより、テレビ１００に対して、音量調整や、ディスプレイの輝度・明度調整や、画面の上下方向へのスライドなどを実行させることができる。
【００７２】
次に、ダイヤルＧＵＩ４０２は、例えば、音量調整や、再生画像のコマ送りや、設定画面の入力数字の切り替えなどに利用される。すなわち、ユーザは、表示部１１８に表示されるダイヤルＧＵＩ４０２に対して、円を描くように自己の指を動かすことにより、テレビ１００に対して、音量調整や、再生画像のコマ送りや、設定画面の入力数字の切り替えなどを実行させることができる。
【００７３】
次に、押しボタンＧＵＩ４０４は、例えば、チャンネル選択や、設定画面の数字入力や、メニュー選択の決定などに利用される。すなわち、ユーザは、表示部１１８に表示される押しボタンＧＵＩ４０４に対して、自己の指を例えば下方向に動かすことにより、テレビ１００に対して、チャンネル選択や、設定画面の数字入力や、メニュー選択の決定などを実行させることができる。
【００７４】
次に、ＯＮ／ＯＦＦスイッチＧＵＩ４０６は、例えば、消音モード、一時停止モード、二ヶ国語モードなどの所定のモードのＯＮ／ＯＦＦ決定などに利用される。すなわち、ユーザは、表示部１１８に表示されるＯＮ／ＯＦＦスイッチＧＵＩ４０６に対して、自己の指を例えば上方向に動かすことにより、テレビ１００に対して、消音モード、一時停止モード、二ヶ国語モードなどの所定のモードのＯＮ／ＯＦＦ決定などを実行させることができる。
【００７５】
次に、ジョグダイヤルＧＵＩ４０８は、例えば、チャンネル切り替えや、音量調整や、設定モードの切り替えや、メニュー表示の切り替えなどに利用される。すなわち、ユーザは、表示部１１８に表示されるジョグダイヤルＧＵＩ４０８に対して、自己の指を例えば上下方向に動かすことにより、テレビ１００に対して、チャンネル切り替えや、音量調整や、設定モードの切り替えや、メニュー表示の切り替えなどを実行させることができる。
【００７６】
なお、図４に示したＧＵＩは、本実施形態においてＧＵＩ管理部１１０が管理し、表示部１１８に表示させるＧＵＩの一例を示したものであり、これらに限定されるものではない。すなわち、ＧＵＩ管理部１１０は、テレビ１００が備える各種機能やモードなどに対応する種々のＧＵＩを有することができ、これらのＧＵＩはＧＵＩ表示制御部１０８によって表示部１１８に表示されることができる。
【００７７】
また、ＧＵＩ管理部１１０は、管理するＧＵＩに対応するイベント発行定義情報も管理している。上述したように、ユーザは、表示部１１８に表示される各ＧＵＩに対して、自己の指を動かすことにより各ＧＵＩに対応するテレビ１００の種々の機能を選択・実行することができる。ここで、ユーザが、表示部１１８に表示されるＧＵＩを操作したか否かは、後述するＧＵＩ操作判断１１２によって判断される。したがって、ＧＵＩ操作判断部１１２は、ユーザがどのように指を動かしたときに、ＧＵＩを操作したと判断するかを認識しておく必要がある。したがって、ＧＵＩ管理部１１０は、ＧＵＩ毎に、操作入力に必要なユーザの指の動きに関する情報、すなわちイベント発行定義情報を管理する必要がある。通常、操作入力に必要なユーザの指の動きはＧＵＩ毎に異なるものである。例えば、図４に示したスライドバーＧＵＩ４００は上下方向のみの操作に対応し、ダイヤルＧＵＩ４０２は回転方向のみの操作に対応する。また、押しボタンＧＵＩ４０４などは特に、操作入力に必要なユーザの指の動きをあらかじめ定義しておく必要がある。したがって、ＧＵＩ管理部１１０は、ＧＵＩ毎にイベント発行定義情報を管理しておく。これによりＧＵＩ操作判断部１１２は、表示部１１８に表示されるＧＵＩと、入力操作領域画像に含まれるユーザの指の動きと、ＧＵＩ管理部１１０が管理するイベント発行定義情報と、に基づいて、ユーザがＧＵＩを操作したか否かを正確に判断することができる。
【００７８】
図５は、ＧＵＩ管理部１１０が管理するＧＵＩとイベント発行定義情報の一例を示す説明図である。図５に示すように、ＧＵＩ管理部１１０は、テレビ１００の機能と、当該機能に対応するＧＵＩと、当該ＧＵＩに対応するイベント発行定義情報とを、データベースにより管理しておくことができる。
【００７９】
例えば、テレビ１００の音量調整に対しては、横方向のスライドバーＧＵＩが対応し、ＧＵＩ管理部１１０は、当該スライドバーＧＵＩに対応するイベント発行定義情報を有している。図５に示す例では、当該スライドバーＧＵＩのイベント発行定義情報は、「カーソル位置から左右方向へ５フレーム連続で移動」である。これは、例えば、ユーザの動く指を表す入力操作領域画像の画素領域の重心が、当該スライドバーＧＵＩのカーソル位置から、５フレーム連続で左または右方向へ移動した場合、当該スライドバーＧＵＩへの操作入力を受け付けることができることを意味する。すなわち、入力操作領域画像の画素領域の重心が、当該スライドバーＧＵＩのカーソル位置から、５フレーム連続で右方向に移動した場合、音量が増加し、５フレーム連続で左方向に移動した場合、音量が減少することとなる。このように、ＧＵＩ管理部１１０が、図５に示すようなデータベースを管理することにより、操作判断部１１２は、当該データベースに基づいて、ユーザからのＧＵＩ操作を正確に受け付けることができる。
【００８０】
なお、図５に示したデータベースは、本実施形態を説明する上での一例であり、これらに限定されるものではない。すなわち、図５に示したイベント発行定義情報は、例えば、初期設定などで設定されることや、ユーザにより任意に設定変更されることが当然に可能なものである。したがって、ユーザは、自己の感覚に最も適合する指の動きによってＧＵＩを操作できるように、ＧＵＩやイベント発行定義情報の設定を任意に変更することができる。
【００８１】
（ＧＵＩ操作判断部１１２）
上述したように、ＧＵＩ操作判断部１１２は、表示部１１８に表示されるＧＵＩと、入力操作領域画像の画素領域の重心と、ＧＵＩ管理部１１０が管理するイベント発行定義情報と、に基づいて、ユーザがＧＵＩを操作したか否かを判断する。なお、ＧＵＩ操作判断部１１２は、本発明の操作判断部として機能するものである。
【００８２】
ＧＵＩ操作判断部１１２は、例えば、撮像画像表示処理部１０６によって所定の処理が施された入力操作領域画像に含まれるユーザの指の画素領域の重心をフレーム毎に算出する。このようにして算出された重心は、後述するＧＵＩ操作記憶部に記憶される。これにより、ＧＵＩ操作判断部１１２は、過去のフレームの重心から現在のフレームの重心への軌跡を算出することにより、ユーザの指の動き認識することができる。ＧＵＩ操作判断部１１２は、このようにして算出された重心の軌跡と、表示部１１８に表示されるＧＵＩの位置する画素領域とを比較し、上記のイベント発行定義情報に基づいて、当該ＧＵＩの操作入力を受け付けるか否かを判断することができる。なお、ＧＵＩ操作判断部１１２によって判断される、ＧＵＩ操作の一例の詳細については、後述する処理フローにおいて説明する。
【００８３】
（ＧＵＩ操作記憶部１１４）
ＧＵＩ操作記憶部１１４は、上述したように、ＧＵＩ操作判断部１１２によって算出された重心や、重心の軌跡などを記憶する記憶領域である。ＧＵＩ操作記憶部１１４は、例えば、不揮発性のメモリやハードディスクなどによって構成されることができる。
【００８４】
（処理実行部１１６）
処理実行部１１６は、上述したＧＵＩ操作判断部１１２の判断結果に応じて、テレビ１００の備える各種機能を実行する。上述したように、表示部１１８に表示される各ＧＵＩは、テレビ１００の備える各種機能に対応している。したがって、例えば、音量調整に対応するスライドバー形式のＧＵＩがユーザによって操作されたとＧＵＩ操作判断部１１２が判断した場合、処理実行部１１６は、テレビ１００の音量調整を実行する。また、例えば、チャンネル選択に対応する押しボタン形式のＧＵＩがユーザによって操作されたとＧＵＩ操作判断部１１２が判断した場合、処理実行部１１６は、テレビ１００のチャンネル変更を実行する。
【００８５】
以上のような機能構成を有することにより、本実施形態に係るテレビ１００は、ユーザが操作を容易に認識することが可能な操作用アイコンのＧＵＩを、表示部１１８に表示させることができる。また、テレビ１００の備える撮像部１０２によって撮像されるユーザの指の動きを、正確に表示部１１８に表示させることもできる。また、表示部１１８に表示される各ＧＵＩに対応するイベント発行定義情報を、ＧＵＩ管理部１１０によって管理することもできる。これにより、本実施形態に係るテレビ１００は、表示部１１８に表示されるＧＵＩと、ユーザの指の動きと、イベント発行定義情報とに基づいて、ＧＵＩの操作入力を受け付けることができる。すなわち、本実施形態に係るテレビ１００は、ディスプレイなどの表示部１１８に、操作用アイコンであるＧＵＩを表示し、ユーザが直感的に指を動かして各種機能を選択・実行することを可能とする。
【００８６】
（２−２．撮像処理からＧＵＩ操作処理までの全体の処理フロー）
次に、上記のように構成される本実施形態のテレビ１００を利用して、ユーザによりＧＵＩ操作が行われる処理の全体的な流れについて説明する。
【００８７】
図６は、本実施形態に係るテレビ１００を利用して、ユーザによりＧＵＩ操作が行われる処理の全体的な流れを示すフロー図である。なお、図６は、全体的な処理の流れを示すフローであり、図６に示す各処理の詳細については、後述する各処理の処理フローにおいて説明する。
【００８８】
図６に示すように、ステップ７００においては、撮像データ入力処理が行われる。これは、撮像部１０２によって撮像される撮像画像に対して、ユーザの指（手）が動いている領域のみを特定して、表示部１１８に表示するための入力操作領域画像を生成する処理である。上述したように、これらの処理は、ユーザ領域検出部１０４が備える動き検出部１２０、肌色検出部１２２および演算処理部１２４などによって実行される。
【００８９】
次に、ステップ９００においては、ステップ７００によって生成された入力操作領域画像に基づいて、ＧＵＩ操作状態または操作待機状態のいずれかの状態に遷移させる処理が行われる。これは、ステップ７００によって生成された入力操作領域画像を構成する画素数と、あらかじめ設定された所定時間や閾値などに基づいて、いずれの状態に遷移するかを決定し、決定された状態に遷移する処理である。上述したように、これらの処理は、状態遷移処理部１０５によって実行される。
【００９０】
次に、ステップ９００においては、現在、ＧＵＩ操作状態であるか操作待機状態であるかを判断する。ＧＵＩ操作状態である場合には、ステップ１０００以降の処理を実行し、操作待機状態である場合には、ユーザによるＧＵＩ操作は行われない。
【００９１】
次に、ステップ１０００においては、ステップ７００によって生成された入力操作領域画像を表示部１１８に正確に表示させるために、撮像画像表示処理が行われる。これは、ステップ７００によって生成された入力操作領域画像に対して、スケーリング処理や座標変換処理などを行う処理である。上述したように、これらの処理は、撮像画像表示処理部１０６が備えるスケーリング処理部１２６および座標変換処理部１２８などによって実行される。
【００９２】
その後、ステップ１２００においては、表示部１１８に表示されるＧＵＩと、ステップ１０００によって表示部１１８に表示されたユーザの指の動きとに基づいて、各ＧＵＩに対応するテレビ１００の機能を実行する処理が行われる。これは、例えば、表示部１１８に表示されるＧＵＩと、入力操作領域画像を構成するユーザの指の画素領域の重心の軌跡と、イベント発行定義情報などに基づいて、ユーザがＧＵＩを操作したか否かを判断する処理である。さらに、当該判断結果に応じて、表示部１１８に表示されるＧＵＩを変更したり、テレビ１００の備える各種機能を実行したりする処理である。上述したように、これらの処理は、ＧＵＩ操作判断部１１２、ＧＵＩ表示制御部１０８および処理実行部１１６などによって実行される。
【００９３】
以上のような処理フローにより、本実施形態に係るテレビ１００は、ユーザが容易に理解可能な操作用アイコンのＧＵＩを表示部１１８に表示し、ユーザによる直感的な指の動きに応じて、テレビ１００の備える各種機能を実行することができる。
【００９４】
次に、図６に示した各処理の詳細の処理フローについて以下説明する。
【００９５】
（２−３．撮像データ処理フロー）
まず、図６に示した処理フローのうち、ステップ７００による撮像データ処理に関する詳細の処理フローについて説明する。図７は、図６に示したステップ７００による撮像データ処理の詳細な処理の流れを示すフロー図である。
【００９６】
撮像データ処理フローは、まずステップ７０２において、撮像部１０２によって撮像された撮像データが、ユーザ領域検出部１０４が備える動き検出部１２０および肌色検出部１２２などに入力される。
【００９７】
次に、ステップ７０４においては、動き検出部１２０は、入力された現在の撮像データと、過去の撮像データとの差分に基づいて、撮像部１０２によって撮像された画像のうち、動きのある領域のみを特定する。その後、動き検出部１２０は、このようにして特定した動き領域のみから生成される画像である、動き領域マスク画像を生成し、演算処理部１２４へ伝送する。
【００９８】
次に、ステップ７０６においては、肌色検出部１２２は、入力された現在の撮像データに対して、上述したＨＳＶ変換処理などを行う。これにより、肌色検出部１２２は、撮像部１０２によって撮像された画像のうち、肌色領域のみを特定する。その後、肌色検出部１２２は、このようにして特定した肌色領域のみから生成される画像である、肌色領域マスク画像を生成し、演算処理部１２４へ伝送する。
【００９９】
次に、ステップ７０８においては、演算処理部１２４は、ステップ７０４によって伝送された動き領域マスク画像と、ステップ７０６によって伝送された肌色領域マスク画像とに基づいて、入力操作領域画像を生成する。上述したように、演算処理部１２４は、動き領域マスク画像を構成する画素領域と、肌色領域マスク画像を構成する画素領域とに対して、ＡＮＤ演算を行うことにより、入力操作領域画像を生成する。この結果、演算処理部１２４は、可能な限り、動きのあるユーザの指のみから構成される画像を、入力操作領域画像として生成することができる。
【０１００】
次に、ステップ７１０においては、ステップ７０８によって生成された入力操作領域画像が状態遷移処理部１０５に伝送される。
【０１０１】
以上のような処理フローで構成される撮像データ処理は、撮像部１０２が所定の時間毎に撮像する撮像データ毎に実行される。
【０１０２】
（２−４．状態遷移処理フロー）
次に、図６に示した処理フローのうち、ステップ８００による状態遷移処理に関する詳細の処理フローについて説明する。図８は、図６に示したステップ８００による状態遷移処理の詳細な処理の流れを示すフロー図である。
【０１０３】
状態遷移処理フローは、まずステップ８０２において、状態遷移処理部１０５は、ユーザ領域検出部１０４から伝送された入力操作領域画像を構成する画素数が、あらかじめ設定された閾値以上か否かを決定する。撮像部１０２によって撮像された画像の中に、ユーザが動かす指（手）が映っていないような場合、すなわち、ユーザがＧＵＩの操作を希望していない場合には、撮像画像を表示部１１８に表示させる必要がない。したがって、ステップ８０２において、入力操作領域画像を構成する画素数が、あらかじめ設定された閾値以上でないと判断された場合、状態遷移処理部１０５は、ステップ８１２において、操作待機状態を維持する。すなわち、表示部１１８には、撮像部１０２によって撮像された画像が表示されない。
【０１０４】
一方、ステップ８０２において、入力操作領域画像を構成する画素数が、あらかじめ設定された閾値以上と判断された場合、状態遷移処理部１０５は、ステップ８０４の処理を行う。すなわち、状態遷移処理部１０５は、入力操作領域画像を構成する画素数が閾値以上である状態が、操作状態遷移設定時間以上継続したか否かを判断する。例えば、撮像部１０２の撮像可能領域に、一瞬だけユーザの手が入った場合に、表示部１１８に撮像画像を表示することは、ユーザにとって煩わしい結果となる。したがって、ユーザが表示部１１８に表示されるＧＵＩの操作を真に要望する場合にのみ撮像画像を表示部１１８に表示させるため、状態遷移処理部１０５は、ステップ８０４の判断処理を行う。すなわち、ステップ８０４において、操作状態遷移設定時間以上継続して、入力操作領域画像を構成する画素数が、あらかじめ設定された閾値以上であると判断された場合にのみ、状態遷移処理部１０５は、ＧＵＩ操作状態へ遷移させる。この結果、ユーザが所定時間以上、撮像部１０２の撮像可能領域で手を動かした場合にのみ、表示部１１８に、ユーザの手を含む画像が表示されることとなる。
【０１０５】
その後、ステップ８０８において、入力操作領域画像は、表示部１１８への表示に必要な処理を施されるために、撮像画像表示処理部１０６へ伝送される。
【０１０６】
また、ＧＵＩ操作状態に遷移した場合においては、ステップ８１０において、ＧＵＩ表示制御部１０８は、表示部１１８に所定のＧＵＩを表示させることもできる。ＧＵＩ表示制御部１０８は、例えば、ユーザがＧＵＩ操作を希望する場合における初期メニューなどを表示部１１８に表示させることができる。
【０１０７】
図９は、ステップ８１０において、ＧＵＩ表示制御部１０８が表示部１１８に表示させるＧＵＩの一例を示す説明図である。図９に示す例では、表示部１１８を構成するディスプレイには、音量を調整するスライドバーＧＵＩや、チャンネル選択をする押しボタンＧＵＩや、番組表に画面を切り替える押しボタンＧＵＩや、視聴中の番組を録画するＯＮ／ＯＦＦスイッチＧＵＩなどが表示されている。なお、ＧＵＩ操作状態に遷移した際に表示部１１８に表示されるこれらのＧＵＩは、デフォルト設定などで任意に設定することができるものであり、図９に示す例に限定されるものではない。例えば、ユーザは、ＧＵＩ操作状態に遷移した際に、頻繁に使用する機能に対応するＧＵＩが表示部１１８に表示されるように任意に設定することができる。また、図８に示すフローでは、ＧＵＩ操作状態に遷移した際に、ＧＵＩを表示部１１８に表示する例について説明したが、操作待機状態においても表示部１１８にこれらのＧＵＩを表示させておくことなども当然に可能である。すなわち、表示部１１８には、常に所定のＧＵＩを表示させておき、ＧＵＩ操作状態に遷移した場合にのみ、ユーザの指（手）を含む入力操作領域画像を表示させることなどもできる。このように、どのようなＧＵＩを表示部１１８のどの位置に、いつ表示させるかなどは、ユーザにより任意に設定変更することが可能である。
【０１０８】
（２−５．撮像画像表示処理フロー）
次に、図６に示した処理フローのうち、ステップ１０００による撮像画像表示処理に関する詳細の処理フローについて説明する。図１０は、図６に示したステップ１０００による撮像画像表示処理の詳細な処理の流れを示すフロー図である。
【０１０９】
撮像画像表示処理フローは、まずステップ１００２において、スケーリング処理部１２６が、入力操作領域画像に対してスケーリング処理を実行する。上述したように、スケーリング処理部１２６は、状態遷移処理部１０５から伝送された入力操作領域画像を構成する画素数が、表示部１１８の有効画素数に対して所定の割合となるようにスケーリング処理を行う。なお、スケーリング処理は、上述したように、入力操作領域画像の重心および画素数の平均値などに基づいて行われる。
【０１１０】
次に、ステップ１００４において、座標変換処理部１２８は、スケーリング処理が施された入力操作領域画像を、表示部１１８の画面座標に適合するように座標変換を行う。上述したように、当該処理は、入力操作領域画像の座標系式と、表示部１１８の画面座標とが異なる場合に行われる処理である。
【０１１１】
その後、ステップ１００６において、入力操作領域画像、すなわち、撮像部１０２により撮像された画像のうちユーザの指を含む部分の領域が表示部１１８に表示される。なお、この際、撮像画像表示処理部１０６は、入力操作領域画像を左右反転して表示部１１８に表示させることもできる。これにより、ユーザの手の動きに合わせて表示部１１８にユーザの手が表示されることとなる。この結果、ユーザは、あたかも自らの手で表示部１１８に表示されるＧＵＩを操作するように、各ＧＵＩに対応するテレビ１００の機能を選択・実行することができる。
【０１１２】
図１１は、ステップ１００６によって、入力操作領域画像が表示部１１８に表示された場合の一例を示す説明図である。図１１では、表示部１１８を構成するディスプレイには、ユーザの手を含む入力操作領域画像が表示されていることがわかる。ユーザは、ディスプレイに表示される自己の手の位置を参考にして手を動かすことにより、ディスプレイに表示される任意のＧＵＩを操作することができる。
【０１１３】
（２−６．ＧＵＩ操作処理フロー）
次に、図６に示した処理フローのうち、ステップ１２００によるＧＵＩ操作処理に関する詳細の処理フローについて説明する。なお、以下の説明においては、図１１に示した例における、番組表表示用の押しボタンＧＵＩの操作処理を例に説明する。図１２は、図６に示したステップ１２００により、押しボタンＧＵＩを操作する処理の詳細な処理の流れを示すフロー図である。
【０１１４】
ＧＵＩ操作処理フローは、まずステップ１２０２において、ＧＵＩ操作判断部１１２が、現在表示部１１８に表示される入力操作領域画像を構成する画素領域の重心を算出する。
【０１１５】
次に、ステップ１２０４においては、ＧＵＩ操作判断部１１２は、ステップ１２０２によって算出された重心が、押しボタンＧＵＩが表示される表示部１１８の画素領域に位置するか否かを判断する。表示部１１８に表示されるユーザの指が押しボタンＧＵＩに位置していない場合には、当該ＧＵＩに対応する機能を実行する必要はない。したがって、ステップ１２０４において、重心が、押しボタンＧＵＩが表示される表示部１１８の画素領域に位置していないと判断された場合には、当該ＧＵＩに対応する処理は行われない。
【０１１６】
一方、ステップ１２０４において、重心が、押しボタンＧＵＩが表示される表示部１１８の画素領域に位置していると判断された場合には、ＧＵＩ操作判断部１１２は、ステップ１２０６の処理を実行する。すなわち、ＧＵＩ操作判断部１１２は、ＧＵＩ操作記憶部１１４に記録されている過去の入力操作領域画像の重心と、現在の重心とに基づいて、重心の動きベクトルを算出する。詳細は後述するが、ＧＵＩ操作判断部１１２によって算出された重心は、ステップ１２１２において、ＧＵＩ操作記憶部１１４に記録される。したがって、ＧＵＩ操作判断部１１２は、現在の重心と、過去の所定のフレーム数の重心とに基づいて、重心の軌跡を算出することにより、重心の動きベクトルを認識することができる。このようにして算出された動きベクトルは、ユーザが指を動かした軌跡に相当するものである。
【０１１７】
次に、ステップ１２０８においては、ＧＵＩ操作判断部１１２は、ステップ１２０６によって算出された動きベクトルが、ＧＵＩ管理部１１０によって管理されるイベント発行定義情報を満足するか否かを判断する。例えば、図５に示したイベント発行定義情報を参照すると、番組表表示に対応する押しボタンＧＵＩのイベント発行定義情報は、「ボタン位置から下方向へ３フレーム連続で移動」である。したがって、ＧＵＩ操作判断部１１２は、算出された現在の重心および過去２フレームの重心に基づいて算出された動きベクトルが、表示部１１８の下方向に移動している場合は、イベント発行定義情報を満足していると判断することができる。一方、算出された現在の重心および過去２フレームの重心に基づいて算出された動きベクトルが、表示部１１８の下方向に移動していない場合は、ＧＵＩ操作判断部１１２は、イベント発行定義情報を満足していないと判断することができる。
【０１１８】
ステップ１２０８において、イベント発行定義情報を満足していると判断された場合、操作判断部１１２は、処理実行部１１６およびＧＵＩ表示制御部１０８に判断結果を伝送する。これを受けて処理実行部１１６は、ステップ１２１０において、表示部１１８に番組表を表示する。さらに、ＧＵＩ表示制御部１０８は、ステップ１２１０において、新しいＧＵＩを表示部１１８に表示する。
【０１１９】
図１３は、ステップ１２１０により表示部１１８が更新される流れの一例を示す概念図である。図１３を参照すると、ユーザが指を、押しボタンＧＵＩ上で一定時間（本実施形態では３フレーム分に相当する時間）下方向に移動させると、表示部１１８の表示が番組表に切り替わっていることがわかる。また、表示部１１８には、番組表を上下方向や左右方向にスライドさせるための新しいスライドバーＧＵＩが表示されていることがわかる。これにより、ユーザは当該スライドバーＧＵＩに相当する位置で指を動かすことにより、表示部１１８に表示される番組表をスライドさせることができる。
【０１２０】
なお、番組表表示の押しボタンＧＵＩが選択された場合に、どのようなＧＵＩを表示させるかなどは、例えば、ＧＵＩ管理部１１０が管理しておくことができる。したがって、ＧＵＩ表示制御部１０８は、ＧＵＩ操作判断部１１２からの指示を受け付けると、ＧＵＩ管理部１１０が管理する情報に基づいて新しいＧＵＩを表示部１１８に表示することができる。
【０１２１】
その後、ステップ１２１２においては、ＧＵＩ操作判断部１１２は、ステップ１２０２によって算出された重心を、ＧＵＩ操作記憶部１１４に記録する。上述したように、当該ステップにより記録された重心は、動きベクトルを算出するために利用される。
【０１２２】
このようにして、ＧＵＩ操作判断部１１２は、表示部１１８に表示される番組表表示の押しボタンＧＵＩがユーザによって操作されたか否かを判断することができる。また、判断結果に応じて、処理実行部１１６は、番組表を表示部１１８に表示し、ＧＵＩ表示制御部１０８は、新しいＧＵＩを表示部１１８に表示することができる。
【０１２３】
なお、上記の例においては、番組表表示の押しボタンＧＵＩの操作処理を例に説明したが、他のＧＵＩについても同様の処理フローにより実行されることが当然に可能である。すなわち、ＧＵＩ処理判断部１１２は、ＧＵＩ管理部１１０が管理するデータベースを参照することにより、対象となるＧＵＩのイベント発行定義情報に基づいて、ユーザによるＧＵＩ操作の有無を判断することができる。
【０１２４】
また、上記例においては、ＧＵＩ操作判断部１１２は、入力操作領域画像を構成する画素領域の重心に基づいて動きベクトルを算出したが、これに限定されるものではない。例えば、重心以外の値、例えば、指先に相当する画素値など、入力操作領域画像を構成する画素領域の所定の位置を、重心の代わりとなる基準値として利用することも可能である。このように、入力操作領域画像を構成する画素領域のいずれの位置を基準値として判断するかは、適宜設定変更などにより変更することができるものである。
【０１２５】
以上説明した処理フローにより、本実施形態に係る情報処理装置の一例であるテレビ１００は、ユーザがテレビ１００の所定の機能を選択・実行したい場合にのみ、ユーザが動かしている指（手）を含む入力操作領域画像を、表示部１１８に表示させることができる。また、テレビ１００は、ユーザが用意に操作性を認識することができる操作用アイコンのＧＵＩを、テレビ１００が備える各種機能に応じて、表示部１１８に表示させることができる。また、テレビ１００は、ＧＵＩ毎にイベント発行定義情報を管理することにより、ユーザが表示部１１８に表示されるＧＵＩの操作を行っているか否かを容易に判断することができる。これにより、テレビ１００は、ユーザの指の動きに応じて、テレビ１００が備える各種機能を実行したり、新しいＧＵＩを表示部１１８に表示したりすることができる。すなわち、本実施形態に係る情報処理装置の一例であるテレビ１００は、ディスプレイなどにより構成される表示部１１８に、操作用アイコンのＧＵＩを表示することにより、ユーザが直感的に指を動かして各種機能を選択・実行することを可能とする。
【０１２６】
（３．変形例）
上述したテレビ１００は、上記実施形態を説明する上での一例であり、本発明はこれらに限定されるものではなく、さらなる別の機能を追加的に備えることなども可能である。以下上述した実施形態に係る情報処理装置の変形例について説明する。
【０１２７】
（３−１．変形例１（音声入力機能の利用））
上記実施形態に係るテレビ１００の変形例１として、テレビ２００について以下説明する。なお、変形例１のテレビ２００は、上述したテレビ１００の有する各種機能に加えて、音声入力機能を備え、当該音声入力に応じて、各種ＧＵＩを表示部１１８に表示させることを可能とする。
【０１２８】
図１４は、変形例１のテレビ２００の機能構成を示すブロック図である。変形例１のテレビ２００は、上述したテレビ１００と比較して、音声入力部２０２および音声認識処理部２０４をさらに備える。また、当該音声入力部２０２から入力される音声に応じて、表示部１１８に表示されるＧＵＩの切り替えなどの処理を行うＧＵＩ表示制御部２０８と、所定の音声入力に対応するＧＵＩをデータベースとして管理するＧＵＩ管理部２１０とを有する。
【０１２９】
音声入力部２０２は、例えば、マイクロフォンなどで構成され、ユーザが発声する音声を入力し、電気信号としての音声信号に変換する。その後、ＡＤ変換機（図示せず）などによって音声信号はデジタル信号に変換され、音声認識処理部２０４へ伝送される。
【０１３０】
音声認識処理部２０４は、例えば、音声入力部２０２から供給された音声データに対して所定の時間間隔で周波数分析などを行い、スペクトルやその他の音響的特徴量（パラメータ）を抽出する。音声認識処理部２０４は、このようにして抽出したパラメータなどと、あらかじめ設定された音声パターンなどとに基づいて、音声入力部２０２に入力された音声を認識する。音声認識処理部２０４による判断結果は、ＧＵＩ表示制御部２０８へ伝送される。
【０１３１】
なお、音声認識処理部２０４による音声認識は、特定の認識方法に限定されるものではなく、音声入力部２０２に入力される音声を認識することが可能な種々の方式を用いることができる。
【０１３２】
ＧＵＩ表示制御部２０８は、音声認識処理部２０４から伝送された音声判断結果に基づいて、表示部１１８のＧＵＩの表示切り替えなどを実行する。ＧＵＩ表示制御部２０８は、例えば、ＧＵＩ管理部２１０が管理する、音声入力と、当該音声に対応するＧＵＩとを関連付けたデータベースに基づいて、表示部１１８に表示するＧＵＩを決定することができる。ＧＵＩ管理部２１０は、例えば、「音量」、「ボリューム」、「音」などの音声入力に対しては音量調整用のスライドバーＧＵＩ、「チャンネル」、「ｘｘ局」などの音声入力に対してはチャンネル切り替え用の押しボタンＧＵＩ、といったように、音声入力と、当該音声に対応するＧＵＩとを関連付けたデータベースを管理することができる。したがって、ＧＵＩ表示制御部２０８は、ＧＵＩ管理部２１０が管理するデータベースに基づいて、適切なＧＵＩを選択して表示部１１８に表示させることができる。
【０１３３】
以上の結果、変形例１のテレビ２００は、ユーザが発生した音声に応じて、ユーザが所望するテレビ２００の各種機能に対応するＧＵＩを表示部１１８に表示させることができる。この結果、ユーザは、希望するテレビ２００の機能を直感的に発声することにより、表示部１１８に当該機能に対応するＧＵＩを表示させることができ、表示されたＧＵＩに対して、直感的に指を動かすことにより各種機能を選択・実行することができる。
【０１３４】
（３−２．変形例２（カーソルＧＵＩの利用））
次に、上記実施形態に係るテレビ１００の変形例２として、テレビ３００について以下説明する。なお、変形例２のテレビ３００は、上述したテレビ１００の有する各種機能に加えて、ディスプレイに表示されるテキスト、人物や商品などの任意のオブジェクトなどを含む任意の表示領域を、ユーザが指を動かすことにより指定することを可能とする。さらに、変形例２のテレビ３００は、ユーザにより指定された任意の表示領域に対して、所定の処理を実行することができる。
【０１３５】
図１５は、変形例２のテレビ３００を利用して、ユーザがディスプレイ上の任意の表示領域を指定する概念図である。図１５に示すように、ユーザは、例えば、視聴中の番組で気になったシーン、人物、テキストなどがあると、当該人物などを囲うように直感的に指を動かす。これを受けてテレビ３００は、ユーザの指の動きを撮像部１０２により撮像し、ユーザの指の動きに合わせて、カーソルＧＵＩをディスプレイ上で移動させる。このようにしてカーソルの軌跡によって囲まれた表示領域に対して、ユーザは、例えば、拡大表示、印刷、Ｅ−Ｍａｉｌへの添付、ＷＥＢによる検索など、様々な楽しみ方をすることができる。以下、このような特徴を有する変形例２のテレビ３００の詳細について説明する。
【０１３６】
図１６は、変形例２のテレビ３００の機能構成を示すブロック図である。変形例２のテレビ３００は、上述したテレビ１００と同様の機能構成を有するが、主に、ＧＵＩ表示制御部３０８およびＧＵＩ操作判断部３１２が異なる機能をさらに有している。具体的には、ＧＵＩ表時制御部３０８は、表示部１１８に、ユーザの指の動きに合わせてカーソルＧＵＩを表示させる機能を有する。また、ＧＵＩ操作判断部３１２は、カーソルＧＵＩの動きに基づいて、ユーザにより所定の表示領域が選択されたか否かを判断する機能を有する。
【０１３７】
ＧＵＩ表示制御部３０８は、図１５に示したように、ユーザの指の動きに合わせて表示部１１８にカーソルＧＵＩを表示させる。なお、ユーザの指の動きの検出方法などの詳細については、上述した実施形態に係るテレビ１００と同様であるためここでは省略する。ＧＵＩ表示制御部３０８は、例えば、ＧＵＩ操作判断部３１２によって算出された入力操作領域画像の重心に基づいて、当該重心を中心とする所定の大きさの円形状のカーソルＧＵＩを表示部１１８に表示させることができる。上述した実施形態に係るテレビ１００と同様に、ＧＵＩ操作判断部３１２は、入力操作領域画像の重心、および当該重心の軌跡である動きベクトルを算出し、ＧＵＩ操作記憶部１１４に記録しておくことができる。したがって、ＧＵＩ表示制御部３０８は、ＧＵＩ操作判断部３１２が算出した重心の動きベクトルに合わせて、カーソルＧＵＩの軌跡を表示部１１８に表示させることができる。すなわち、ＧＵＩ表示制御部３０８は、ユーザの指の動きに合わせて、カーソルＧＵＩの軌跡を表示部１１８に表示させることができる。
【０１３８】
ＧＵＩ操作判断部３１２は、上述した実施形態に係るテレビ１００と同様に、入力操作領域画像の重心、および当該重心の軌跡である動きベクトルを算出し、ＧＵＩ操作記憶部１１４に記録する。また、ＧＵＩ操作判断部３１２は、当該動きベクトルに基づいて、表示部１１８に表示されるカーソルＧＵＩの軌跡が閉曲線を描いたか否かを判断する。すなわち、ＧＵＩ操作判断部３１２は、ユーザが指を動かして、表示部１１８の所定領域を指定したか否かを判断することができる。ＧＵＩ操作判断部３１２は、例えば、現在の動きベクトルが、過去の動きベクトルと交差したか否かなどにより、カーソルＧＵＩの軌跡が閉曲線を描いたか否かを判断することができる。また、ＧＵＩ操作判断部３１２は、動きベクトルが交差していない場合であっても、動きベクトルが所定のパターンを満たした場合には、軌跡補間処理を行うことにより、ユーザが所定の表示領域を指定したと判断することもできる。ここで、軌跡補間処理とは、実際には、重心の動きベクトルが閉曲線を描いていない場合においても、例えば、動きベクトルの始点と現在の重心とを結合するなどして、所定の表示領域を囲う閉曲線を生成することを言う。このような軌跡補間処理を行うことにより、ユーザは、正確に指を一周させなくても、容易に表示部１１８の所定の表示領域を指定することができる。
【０１３９】
ＧＵＩ操作判断部３１２は、ユーザにより所定の表示領域が指定されたと判断した場合、ＧＵＩ表示制御部３０８や、処理実行部１１６に判断結果を伝送する。これにより、ＧＵＩ表示制御部３０８は、指定された表示領域に対する所定の処理に関する操作用ＧＵＩ、例えば、拡大表示用のスライドバーＧＵＩ、ＷＥＢへのアクセス用の押しボタンＧＵＩなどの種々のＧＵＩを表示部１１８に表示させることができる。また、処理実行部１１６は、ユーザによるＧＵＩ操作に応じて、拡大表示、ＷＥＢへのアクセス、印刷、Ｅ−ＭＡＩＬへの添付などの各種処理を実行することができる。
【０１４０】
次に、このような特徴を有する変形例２のテレビ３００により行われる、任意の表示領域に対する所定の処理の流れの一例について説明する。図１７は、変形例２のテレビ３００が、ユーザの指の動きに合わせて指定される所定の表示領域を特定し、当該表示領域に対して所定の処理を実行する処理の流れの一例を示すフロー図である。なお、テレビ３００は、例えば、表示部１１８に表示される所定のボタンＧＵＩなどを選択した場合や、音声入力があった場合などのように、ユーザが所定の表示領域の指示を希望する場合に、図１７に示す処理フローを実行することができる。
【０１４１】
図１７に示すように、ＧＵＩ操作判断部３１２は、ステップ１７００においては、入力操作領域画像を構成する画素領域の重心を算出する。また、ＧＵＩ操作判断部３１２は、算出した重心をＧＵＩ操作記憶部１１４に記録する。
【０１４２】
次に、ＧＵＩ操作判断部３１２は、ステップ１７０２において、現在の重心と、ＧＵＩ操作記憶部１１４に記録されている過去の重心とを結ぶ動きベクトルを算出する。これによりＧＵＩ操作判断部３１２は、重心の軌跡を認識することができる。また、ＧＵＩ操作判断部３１２は、算出した動きベクトルをＧＵＩ操作記憶部１１４に記録する。このようにしてＧＵＩ操作記憶部１１４に記録される動きベクトルを結合することにより、ＧＵＩ操作判断部３１２は、重心の軌跡を認識することができる。図１８は、重心を結ぶことにより動きベクトルが生成される一例を示す概念図である。図１８に示すように、ＧＵＩ操作判断部３１２は、現在の重心と、１つ前の入力操作領域画像を構成する画素領域の重心とを結んで動きベクトルを算出することができる。このようにして算出された動きベクトルを結合することにより、ＧＵＩ操作判断部３１２は、表示部１１８の表示領域における、入力操作領域画像の重心の軌跡を認識することができる。
【０１４３】
このようにして算出された重心および動きベクトルは、ＧＵＩ表示制御部３０８へ伝送される。これを受けて、ＧＵＩ表示制御部３０８は、ステップ１７０４において、重心の座標位置を中心に所定の大きさのカーソルＧＵＩを表示し、動きベクトルの軌跡をカーソルＧＵＩの軌跡として表示部１１８に表示させることができる。したがって、ＧＵＩ表示制御部３０８は、ユーザの指の動きに合わせて、表示部１１８にカーソルＧＵＩの軌跡を描くことができる。
【０１４４】
次に、ＧＵＩ操作判断部３１２は、ステップ１７０６においては、重心の軌跡が閉曲線を描いたか否か、すなわち、重心の軌跡により所定の表示領域が囲われたか否かを判断する。ＧＵＩ操作判断部３１２は、例えば、ステップ１７０２により算出した動きベクトルが、過去に算出した動きベクトルと交差したか否かなどにより、重心の軌跡が閉曲線を描いたか否かを判断することができる。
【０１４５】
ステップ１７０６において、重心の軌跡が閉曲線を描いたと判断された場合、ＧＵＩ操作判断部３１２は、閉曲線で囲まれた表示領域をユーザが指定した領域と判断し、当該判断結果をＧＵＩ表示制御部３０８および処理実行部１１６へ伝送する。その後、ステップ１７０８において、ＧＵＩ表示制御部３０８は、所定の操作用アイコンＧＵＩを表示部１１８へ表示し、処理実行部１１６は、ユーザのＧＵＩ操作に応じたイベントを実行する。ユーザが所定の表示領域を指定することにより実行することができるイベント（機能）としては、例えば、当該領域の拡大表示、印刷、Ｅ−ＭＡＩＬへの添付、ＷＥＢでの検索などが想定されるが、特定の機能に限定されるものではない。このように、テレビ３００は、例えば、通信部、プリンタとの接続部などを備えることにより、ユーザが指定した表示領域に対して種々の機能を実行することができる。また、上記例では、ＧＵＩ操作判断部３１２は、閉曲線により囲まれた表示領域をユーザが指定した領域と判断したが、例えば、閉曲線の外側にある表示領域をユーザが指定した領域と判断してもよい。
【０１４６】
なお、上記説明ではステップ１７０６で閉曲線が描かれたと判断された場合、ステップ１７０８の処理を実行したが、本実施形態はこれに限定されない。例えば、閉曲線が一度描かれた場合は指定領域の仮決定であり、２度描かれた場合は指定領域の決定であり、３度描かれた場合は当該指定領域をキャンセルするなどとすることも可能である。このように、閉曲線により指定される表示領域の決定は、例えばユーザ設定などにより任意に変更されることができる。
【０１４７】
その後、ステップ１７１０において、ＧＵＩ操作判断部３１２は、表示部１１８に表示されているカーソルＧＵＩと、カーソルＧＵＩの軌跡をクリアする。また、ＧＵＩ操作判断部３１２は、ＧＵＩ操作記憶部１１４に記録されている重心の動きベクトルを消去してもよい。これにより、ユーザは指を動かすことにより、再度、別の表示領域を指定することなどもできる。
【０１４８】
一方、ステップ１７０６において、重心の軌跡が閉曲線を描いていないと判断された場合、ＧＵＩ操作判断部３１２は、ステップ１７１２において、重心の軌跡が、軌跡補間条件を満足しているか否かを判断する。ここで、軌跡補間とは、実際は重心の軌跡が閉曲線を描いていない場合であっても、閉曲線となるように重心の軌跡を結合する処理をいう。これにより、ユーザは、閉曲線を描くように正確に指を動かさなくても、ＧＵＩ操作判断部３１２が軌跡補間処理を行うことにより閉曲線が描かれたと判断することができる。
【０１４９】
また、軌跡補間条件とは、ＧＵＩ操作判断部３１２が軌跡補間処理を行うための条件である。軌跡補間条件は、任意に設定することが可能であり、特定の条件に限定されるものではない。軌跡補間条件の一例としては、例えば、動きベクトルが「＋＋」、「＋−」、「−−」、「−＋」といった時計回りのパターンを一巡し、かついずれかの同じ符号ペアが再度現れたときとすることができる。また、同様に、動きベクトルが「−−」、「＋−」、「＋＋」、「−＋」といった反時計回りのパターンを一巡し、かついずれかの同じ符号ペアが再度現れたときとすることができる。もちろんこれらの軌跡補間条件は本実施形態における一例であり、これらに限定されるものではない。
【０１５０】
ステップ１７１２において、軌跡補間条件を満足していると判断された場合、ＧＵＩ操作判断部３１２は、ステップ１７１４において、軌跡補間処理を行う。すなわち、ＧＵＩ操作判断部３１２は、現在の重心と、重心の軌跡の開始点などを結合し、擬似的な閉曲線を生成する。図１９は、軌跡補間処理により、実際には閉曲線を描いていない重心の軌跡を結合する一例を示す概念図である。図１９を参照すると、実際には、重心の軌跡は閉曲線を描いていないが、軌跡補間処理により現在の重心と、任意の過去の重心とを結合して閉曲線が生成されていることがわかる。ＧＵＩ操作判断部３１２は、このようにして生成された閉曲線を、ユーザが指定した表示領域と判断し、判断結果を、ＧＵＩ表示制御部３０８および処理実行部１１６へ伝送する。その後、上述したステップ１７０８およびステップ１７１０により、ユーザが指定した表示領域に対して所定の処理が行われる。
【０１５１】
一方、ステップ１７１２において軌跡補間条件を満足していないと判断された場合、ＧＵＩ操作判断部３１２は、ユーザによりまだ所定の表示領域が選択されていないと判断する。これにより、ＧＵＩ表示制御部３０８は、表示部１１８へのカーソルＧＵＩの表示を継続する。
【０１５２】
以上のステップを、撮像部１０２により撮像されるフレーム毎に行うことにより、変形例２のテレビ３００は、ユーザが表示部１１８の所定の表示領域を指定したか否かを判断することができる。さらに、変形例２のテレビ３００は、ユーザにより指定された所定の表示領域に対して実行可能な所定の処理に対応する操作用アイコンＧＵＩを表示部１１８に表示させることができる。このようにして表示される操作用アイコンＧＵＩがユーザにより選択等された場合に、変形例２のテレビ３００は、当該ＧＵＩに対応する各種機能を実行することができる。すなわち、変形例２のテレビ３００は、ディスプレイに表示される所定のオブジェクトやテキストなどを、ユーザが直感的に指を動かして指定することにより、当該指定されたオブジェクトやテキストなどに対して、各種機能を実行することを可能である。
【０１５３】
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【０１５４】
例えば、上記実施形態では、本発明の情報処理装置の一例としてテレビについて中心に説明したが、本発明はかかる例に限定されない。例えば、パーソナルコンピュータや、音楽プレイヤー、デジタルラジオなどの、各種操作用のディスプレイを備える情報処理装置であってもよい。また、ハードディスクレコーダ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）レコーダなどの各種録画再生機器や、ゲーム機器などのように、外部機器のディスプレイにＧＵＩを表示させる情報処理装置であってもよい。このようなディスプレイを備えない情報処理装置においては、上述したテレビ１００の実施形態における表示部１１８を備えず、外部機器が備えるディスプレイへの映像出力端子などを備えることにより、上述した本発明の効果を奏することが可能である。
【０１５５】
また、情報処理装置は、上述した実施形態や変形例の各種機能や処理を実行する情報処理プログラムを実行することにより実現することもできる。当該プログラムは、例えば、情報処理装置が備えるプログラム記憶部などに格納され、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）に読み込まれて実行されることにより、上述した各種機能や処理を情報処理装置が実行することができる。したがって、情報処理装置は、当該プログラムを更新することにより、新しい機能を追加したり、バージョンアップしたりすることもできる。また、情報処理プログラムは、情報処理装置で読み取り可能な記録媒体で提供されることもできる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリなどである。また、当該情報処理プログラムは、記録媒体を用いずに、例えばネットワークを介して配信されてもよい。
【０１５６】
また、上述した、動き検出、肌色検出、スケーリング処理、座標変換処理、軌跡補間処理などは、上記実施形態を説明する上での一例であり、上記説明の例に必ずしも限定されるものではない。例えば、上記説明とは異なる手法、条件、式などによる動き検出、肌色検出、座標変換処理、軌跡補間処理などであってもよい。
【０１５７】
また、上述した実施形態に係るテレビ１００、変形例１のテレビ２００、変形例２のテレビ３００などの有する機能を組み合わせることなども当然に可能である。例えば、変形例２のテレビ３００において、ユーザにより所定の表示領域が指定された場合において、ユーザからの音声入力に応じて、当該表示領域に関する処理に対応するＧＵＩを表示させることなども可能である。
【０１５８】
また、本明細書において、フローチャートに記述されたステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的に又は個別的に実行される処理をも含む。また時系列的に処理されるステップでも、場合によっては適宜順序を変更することが可能であることは言うまでもない。例えば、図７に示したステップ７０４による動き領域マスク画像の生成と、ステップ７０６による肌色領域マスク画像の生成とは、図７に示した順序に限らず、逆の順序、またはこれらのステップを平行して同時に行うことも当然に可能である。
【図面の簡単な説明】
【０１５９】
【図１】本発明の実施形態に係る情報処理装置の使用例の概念図である。
【図２】本発明の第１実施形態に係るテレビ１００の機能構成を示すブロック図である。
【図３】同実施形態において、座標変換処理部１２８による座標変換の処理の一例を示す概念図である。
【図４】同実施形態において、ＧＵＩ管理部１１０によって管理されるＧＵＩの一例を示す説明図である。
【図５】同実施形態において、ＧＵＩ管理部１１０が管理するＧＵＩとイベント発行定義情報の一例を示す説明図である。
【図６】同実施形態に係るテレビ１００を利用して、ユーザによりＧＵＩ操作が行われる処理の全体的な流れを示すフロー図である。
【図７】同実施形態において、図６に示したステップ７００による撮像データ処理の詳細な処理の流れを示すフロー図である。
【図８】同実施形態において、図６に示したステップ８００による状態遷移処理の詳細な処理の流れを示すフロー図である。
【図９】同実施形態において、ＧＵＩ操作状態に遷移した場合に、ＧＵＩ表示制御部１０８が表示部１１８に表示させるＧＵＩの一例を示す説明図である。
【図１０】同実施形態において、図６に示したステップ１０００による撮像画像表示処理の詳細な処理の流れを示すフロー図である。
【図１１】同実施形態において、入力操作領域画像が表示部１１８に表示された場合の一例を示す説明図である。
【図１２】同実施形態において、図６に示したステップ１２００により、押しボタンＧＵＩを操作する処理の詳細な処理の流れを示すフロー図である。
【図１３】同実施形態において、図１２に示したステップ１２１０により表示部１１８が更新される流れの一例を示す概念図である。
【図１４】変形例１のテレビ２００の機能構成を示すブロック図である。
【図１５】変形例２のテレビ３００を利用して、ユーザがディスプレイ上の任意の画像領域を選択する概念図である。
【図１６】変形例２のテレビ３００の機能構成を示すブロック図である。
【図１７】変形例２のテレビ３００が、ユーザの指の動きに合わせて、所定の表示領域に対して所定の処理を実行する処理の流れの一例を示すフロー図である。
【図１８】変形例２のテレビ３００において、重心の動きベクトルを算出する一例を示す概念図である。
【図１９】変形例２のテレビ３００において、軌跡補間処理の一例を示す概念図である。
【符号の説明】
【０１６０】
１００、２００、３００    テレビ
１０２    撮像部
１０４    ユーザ領域検出部
１０５    状態遷移処理部
１０６    撮像画像表示処理部
１０８、２０８、３０８    ＧＵＩ表示制御部
１１０、２１０    ＧＵＩ管理部
１１２、３１２    ＧＵＩ操作判断部
１１４    ＧＵＩ操作記憶部
１１６    処理実行部
１１８    表示部
１２０    動き検出部
１２２    肌色検出部
１２４    演算処理部
１２６    スケーリング処理部
１２８    座標変換処理部
２０２    音声入力部
２０４    音声認識処理部
【図１】
2010045658.tif 000008
【図２】
2010045658.tif 000009
【図３】
2010045658.tif 000010
【図４】
2010045658.tif 000011
【図５】
2010045658.tif 000012
【図６】
2010045658.tif 000013
【図７】
2010045658.tif 000014
【図８】
2010045658.tif 000015
【図９】
2010045658.tif 000016
【図１０】
2010045658.tif 000017
【図１１】
2010045658.tif 000018
【図１２】
2010045658.tif 000019
【図１３】
2010045658.tif 000020
【図１４】
2010045658.tif 000021
【図１５】
2010045658.tif 000022
【図１６】
2010045658.tif 000023
【図１７】
2010045658.tif 000024
【図１８】
2010045658.tif 000025
【図１９】
2010045658.tif 000026