(57)【要約】      （修正有）【課題】操作者の手の形状が変化した場合の操作性の低下を抑制する表示装置、表示制御方法及び表示制御プログラムを提供する。【解決手段】表示制御装置２００は、操作者の操作に基づくカーソルを表示装置３００の画面に表示させる。操作者の手の形状及び位置に基づく操作の種別を特定する操作特定部２１０と、操作者の第１形状の手による第１操作に基づいて、第１形状の手が示す第１位置に対応する画面内位置にカーソルを表示させた後に、第１位置と異なる第２位置を示す第２形状の手による、第１操作と所定の関係を有する第２操作が検出された場合に、第１位置と第２位置との差分に基づいて、第１位置に対応する画面内位置にカーソルを継続して表示させる表示制御部２０３と、を有する。【選択図】図３
2017041002.tif 000002
【特許請求の範囲】
【請求項１】
操作者の操作に基づく指示用画像を表示装置の画面に表示させる表示制御装置であって、
前記操作者の手の形状及び位置に基づく操作の種別を特定する操作特定手段と、
前記操作者の第１形状の手による第１操作に基づいて、前記第１形状の手が示す第１位置に対応する画面内位置に指示用画像を表示させた後に、前記第１位置と異なる第２位置を示す第２形状の手による、前記第１操作と所定の関係を有する第２操作が検出された場合に、前記第１位置と前記第２位置との差分に基づいて、前記第１位置に対応する前記表示装置の画面内位置に前記指示用画像を継続して表示させる表示制御手段と、
を有することを特徴とする表示制御装置。
【請求項２】
前記表示制御手段は、前記操作特定手段が特定した第１形状の手による第１操作に基づいて、前記第１形状の手が示す第１位置に対応する画面内位置に指示用画像を表示させた後に、前記第１操作と前記所定の関係を有しない操作が検出された場合に、当該操作を示す手の位置に対応する画面内位置に前記指示用画像を表示させることを特徴とする、
請求項１に記載の表示制御装置。
【請求項３】
前記表示制御手段は、前記操作者が特定の指を伸ばしていない前記第１形状の手のいずれかの位置である前記第１位置と、前記操作者が前記特定の指を伸ばしている前記第２形状の手における前記指の位置である前記第２位置との差分に基づいて、前記指示用画像を表示させることを特徴とする、
請求項１又は２に記載の表示制御装置。
【請求項４】
前記表示制御手段は、前記第２操作が検出された場合に、前記第２位置に対応する画面内位置を前記第１位置と前記第２位置との差分に基づいて補正した画面内位置に前記指示用画像を表示させることにより、前記第１位置に対応する画面内位置に前記指示用画像を継続して表示させることを特徴とする、
請求項１から３のいずれか１項に記載の表示制御装置。
【請求項５】
前記表示制御手段は、前記操作者の手が撮像された撮像画像における前記操作者が手を操作する範囲として設定された操作範囲の画素数と前記画面の画素数との比に基づいて決定される、前記差分に対応する画面内差分により、前記第２位置に対応する画面内位置を補正することにより、前記第１位置に対応する画面内位置に前記指示用画像を継続して表示させることを特徴とする、
請求項１から４のいずれか１項に記載の表示制御装置。
【請求項６】
前記表示制御手段は、前記操作範囲に第２の手が含まれている場合に、前記第２の手の位置を前記差分に基づいて補正した位置に対応する画面内位置に、前記第２の手に対応する第２の指示用画像を表示させることを特徴とする、
請求項５に記載の表示制御装置。
【請求項７】
前記表示制御手段は、前記第２操作が検出された後に、前記第２形状の手が移動した場合に、前記第２形状の手の位置を前記差分に基づいて補正した位置に対応する画面内位置に前記指示用画像を表示させることを特徴とする、
請求項１から６のいずれか１項に記載の表示制御装置。
【請求項８】
前記表示制御手段は、前記第２操作に基づいて前記指示用画像を表示させた後に、前記第１位置と異なる第３位置における前記第１操作が検出された場合、前記第３位置に対応する画面内位置に前記指示用画像を表示させることを特徴とする、
請求項１から７のいずれか１項に記載の表示制御装置。
【請求項９】
前記操作特定手段は、前記操作者の複数の指それぞれの開閉状態に基づいて、前記手の形状を特定することを特徴とする、
請求項１から８のいずれか１項に記載の表示制御装置。
【請求項１０】
前記表示制御手段は、前記第２操作が検出された場合に、前記指示用画像が表示された位置及び前記第２操作の内容に対応する表示画像を前記画面に表示させることを特徴とする、
請求項１から９のいずれか１項に記載の表示制御装置。
【請求項１１】
操作者の操作に基づく指示用画像を表示装置の画面に表示させる表示制御方法であって、
前記操作者の手の形状及び位置に基づく操作の種別を特定する操作特定ステップと、
前記操作者の第１形状の手による第１操作に基づいて、前記第１形状の手が示す第１位置に対応する画面内位置に指示用画像を表示させる第１表示ステップと、
前記第１表示ステップの後に、前記第１位置と異なる第２位置を示す第２形状の手による、前記第１操作と所定の関係を有する第２操作が検出された場合に、前記第１位置と前記第２位置との差分に基づいて、前記第１位置に対応する前記表示装置の画面内位置に前記指示用画像を継続して表示させる第２表示ステップと、
を有することを特徴とする表示制御方法。
【請求項１２】
前記第２表示ステップにおいて、前記第１操作と前記所定の関係を有しない操作が検出された場合に、当該操作を示す手の位置に対応する画面内位置に前記指示用画像を表示させることを特徴とする、
請求項１１に記載の表示制御方法。
【請求項１３】
前記操作者が特定の指を伸ばしていない前記第１形状の手のいずれかの位置を前記第１位置として特定するステップと、
前記操作者が前記特定の指を伸ばしている前記第２形状の手における前記指の位置を前記第２位置として特定するステップと、
をさらに有することを特徴とする、
請求項１１又は１２に記載の表示制御方法。
【請求項１４】
前記第２表示ステップにおいて、前記第２操作が検出された場合に、前記第２位置に対応する画面内位置を、前記第１位置と前記第２位置との差分に基づいて補正した画面内位置に前記指示用画像を表示させることにより、前記第１位置に対応する画面内位置に前記指示用画像を継続して表示させることを特徴とする、
請求項１１から１３のいずれか１項に記載の表示制御方法。
【請求項１５】
前記第２表示ステップにおいて、前記操作者の手が撮像された撮像画像における前記操作者が手を操作する範囲として設定された操作範囲の画素数と前記画面の画素数との比に基づいて決定される、前記差分に対応する画面内差分により、前記第２位置に対応する画面内位置を補正することにより、前記第１位置に対応する画面内位置に前記指示用画像を継続して表示させることを特徴とする、
請求項１１から１４のいずれか１項に記載の表示制御方法。
【請求項１６】
前記操作範囲に第２の手が含まれている場合に、前記第２の手の位置を前記差分に基づいて補正した位置に対応する画面内位置に、前記第２の手に対応する第２の指示用画像を表示させるステップをさらに有することを特徴とする、
請求項１５に記載の表示制御方法。
【請求項１７】
前記第２表示ステップの後に、前記第２形状の手が移動した場合に、前記第２形状の手の位置を前記差分に基づいて補正した位置に対応する画面内位置に前記指示用画像を表示させるステップをさらに有することを特徴とする、
請求項１１から１６のいずれか１項に記載の表示制御方法。
【請求項１８】
前記第２表示ステップの後に、前記第１位置と異なる第３位置における前記第１操作が検出された場合、前記第３位置に対応する画面内位置に前記指示用画像を表示させるステップをさらに有することを特徴とする、
請求項１１から１７のいずれか１項に記載の表示制御方法。
【請求項１９】
前記第２表示ステップの後に、前記指示用画像が表示された位置及び前記第２操作の内容に対応する処理を実行する表示画像を前記画面に表示させることを特徴とする、
請求項１１から１８のいずれか１項に記載の表示制御方法。
【請求項２０】
コンピュータに、操作者の操作に基づく指示用画像を表示装置の画面に表示させるための表示制御用プログラムであって、
前記操作者の手の形状及び位置に基づく操作の種別を特定する操作特定ステップと、
前記操作者の第１形状の手による第１操作に基づいて、前記第１形状の手が示す第１位置に対応する画面内位置に指示用画像を表示させる第１表示ステップと、
前記第１表示ステップの後に、前記第１位置と異なる第２位置を示す第２形状の手による、前記第１操作と所定の関係を有する第２操作が検出された場合に、前記第１位置と前記第２位置との差分に基づいて、前記第１位置に対応する前記表示装置の画面内位置に前記指示用画像を継続して表示させる第２表示ステップと、
を実行させることを特徴とする表示制御用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、操作者の操作に基づく指示用画像の表示位置を制御する表示制御装置、表示制御方法及び表示制御用プログラムに関するものである。
【背景技術】
【０００２】
機器を操作する操作者が、ディスプレイに表示された操作画面を見ながら、ディスプレイの近くで特定の動作（以下、「ジェスチャ」という）をすることにより、操作者が機器を操作できるようにする方法が提案されている。特許文献１には、操作者の手の動きを検出し、検出した手の動きに応じてディスプレイに表示されたカーソルを動かす表示制御装置が開示されている。また、特許文献２には、操作者の手の形状及び動きを検出し、操作者の手の形状及び動きに対応する処理を実行するコンピュータが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−２００６５４号公報
【特許文献２】特開２０１４−９９１８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来は、手の中心位置が手の位置として特定されていたので、手の形状を変化させることにより、手の位置が変化したと認識される場合があった。その結果、操作者が手の形状を変化させたことに伴ってカーソルの表示位置が変化してしまうことにより、操作性が低下してしまうという問題があった。例えば、手を握った状態で操作する第１操作から、人差し指だけを伸ばした状態で人差し指の先端で操作する第２操作に切り替えた場合に、操作者の意図に反してカーソルの表示位置が変化してしまうと、ユーザが操作をしづらくなるという問題が生じてしまう。
【０００５】
そこで、本発明は上述した点に鑑みてなされたものであり、操作者の手の形状が変化した場合の操作性の低下を抑制できる表示制御装置、表示制御方法及び表示制御用プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記の課題を解決するために、本発明の表示制御装置は、操作者の操作に基づく指示用画像を表示装置の画面に表示させる表示制御装置であって、前記操作者の手の形状及び位置に基づく操作の種別を特定する操作特定手段と、前記操作者の第１形状の手による第１操作に基づいて、前記第１形状の手が示す第１位置に対応する画面内位置に指示用画像を表示させた後に、前記第１位置と異なる第２位置を示す第２形状の手による、前記第１操作と所定の関係を有する第２操作が検出された場合に、前記第１位置と前記第２位置との差分に基づいて、前記第１位置に対応する画面内位置に前記指示用画像を継続して表示させる表示制御手段と、を有することを特徴とする。
【０００７】
本発明の表示制御方法は、操作者の操作に基づく指示用画像を表示装置の画面に表示させる表示制御方法であって、前記操作者の手の形状及び位置に基づく操作の種別を特定する操作特定ステップと、前記操作者の第１形状の手による第１操作に基づいて、前記第１形状の手が示す第１位置に対応する画面内位置に指示用画像を表示させる第１表示ステップと、前記第１表示ステップの後に、前記第１位置と異なる第２位置を示す第２形状の手による、前記第１操作と所定の関係を有する第２操作が検出された場合に、前記第１位置と前記第２位置との差分に基づいて、前記第１位置に対応する画面内位置に前記指示用画像を継続して表示させる第２表示ステップと、を有することを特徴とする。
【０００８】
本発明の表示制御用プログラムは、コンピュータに、操作者の操作に基づく指示用画像を表示装置の画面に表示させるための表示制御用プログラムであって、前記操作者の手の形状及び位置に基づく操作の種別を特定する操作特定ステップと、前記操作者の第１形状の手による第１操作に基づいて、前記第１形状の手が示す第１位置に対応する画面内位置に指示用画像を表示させる第１表示ステップと、前記第１表示ステップの後に、前記第１位置と異なる第２位置を示す第２形状の手による、前記第１操作と所定の関係を有する第２操作が検出された場合に、前記第１位置と前記第２位置との差分に基づいて、前記第１位置に対応する画面内位置に前記指示用画像を継続して表示させる第２表示ステップと、を実行させることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、操作者の手の形状が変化した場合の操作性の低下を抑制できるという効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態に係る表示システムＳの構成の概要を示す第１の図である。
【図２】第１の実施形態に係る表示システムＳの構成の概要を示す第２の図である。
【図３】第１の実施形態に係る表示制御装置２００の構成を示すブロック図である。
【図４】手の形状を示す図である。
【図５】手の位置情報及び指の位置情報について説明するための図である。
【図６】手形状ジェスチャ対応テーブルの一例である。
【図７】カーソル位置補正情報の算出方法について説明するための図である。
【図８】ジェスチャ操作変換テーブルの一例である。
【図９】表示システムＳの動作手順を示すフローチャートである。
【図１０】表示画像取得部２０２が取得した静止画像を示す図である。
【図１１】撮像装置１００が撮像を開始してからの動作手順を示すフローチャートである。
【図１２】描画部２１２が表示装置３００に表示される画像を描画する動作手順を示すフローチャートである。
【図１３】表示画面３０１に表示される画像が遷移する動作について説明するための図である。
【図１４】表示画面３０１に表示される画像が遷移する動作について説明するための図である。
【図１５】第２の実施形態のカーソル位置補正部２０９が用いるジェスチャオフセット対応テーブルである。
【図１６】第２の実施形態のカーソル位置補正部２０９が用いるマッピング式テーブルである。
【図１７】第２の実施形態における動作手順を示すフローチャートである。
【発明を実施するための形態】
【００１１】
＜第１の実施形態＞
［表示システムＳの概要］
図１は、第１の実施形態に係る表示システムＳの構成の概要を示す第１の図である。表示システムＳは、撮像装置１００、表示制御装置２００及び表示装置３００を備える。
撮像装置１００は、例えばカメラであり、撮像範囲１０１の撮像データを表示制御装置２００に出力する。
【００１２】
表示制御装置２００は、撮像装置１００から取得した撮像データに基づいて、表示装置３００から離れた位置における操作者１０２のジェスチャを検出し、表示装置３００の表示画面３０１におけるジェスチャに対応する位置に、指示用画像を表示させる。指示用画像は、操作者１０２の操作に基づいて表示画面３０１に表示されるグラフィック画像であり、例えばカーソル３０２である。
【００１３】
表示制御装置２００は、撮像データに操作者１０２が含まれるか否かを判定し、操作者１０２が含まれると判定した場合、操作者１０２の身体の輪郭を示す人物情報に基づいて、操作範囲１０３を決定する。表示制御装置２００は、例えばパターンマッチングにより、操作者１０２の肩、腕及び手の位置を特定し、特定した位置に基づいて、操作者１０２が手を動かせる範囲以下の大きさの操作範囲１０３を決定する。この際、表示制御装置２００は、操作範囲１０３の形状を、表示画面３０１の形状と相似する長方形であり、かつ各辺が表示画面３０１の各辺と平行になるように決定する。
【００１４】
表示制御装置２００は、身体の所定の部位（例えば、図１（ａ）における手１０４及び図１（ｂ）における手１０５）の動き及び形状を検出し、検出した動き及び形状の変化に基づいて、ジェスチャの種別を判定することで、操作者１０２の操作内容を特定する。そして、表示制御装置２００は、操作内容に応じて、表示装置３００の表示画面３０１の表示内容を制御する。
【００１５】
具体的には、表示制御装置２００は、図１（ａ）に示すように、操作者１０２が握った状態の手１０４を操作範囲１０３の外から操作範囲１０３内に移動させると、操作範囲１０３における手１０４の位置に対応する表示画面３０１内の位置に、カーソル３０２を表示させる。この状態で、表示画面３０１の範囲とカーソル３０２の位置との関係は、操作範囲１０３と手１０４の位置との関係に等しい。操作者１０２が、操作範囲１０３内で手１０４を左から右に動かした場合、表示制御装置２００は、表示画面３０１上に表示されるカーソル３０２が左から右に動くようにカーソル３０２の表示状態を制御する。
【００１６】
また、図１（ｂ）に示すように、表示制御装置２００は、操作者１０２が指１０６を伸ばしたポイント状態の手１０５を操作範囲１０３の外から操作範囲１０３内に移動させると、操作範囲１０３における指１０６の位置に対応する表示画面３０１の位置に、カーソル３０２を表示させる。操作者１０２が、操作範囲１０３内で指１０６を左から右に動かした場合、表示制御装置２００は、表示画面３０１上に表示されるカーソル３０２が左から右に動くようにカーソル３０２の表示状態を制御する。
【００１７】
図２は、第１の実施形態に係る表示システムＳの構成の概要を示す第２の図である。図２（ａ）は、図１（ａ）と同一の状態を示している。すなわち、操作者１０２が、握った状態の手１０４を操作範囲１０３の外から操作範囲１０３内に移動させた状態を示している。
【００１８】
図２（ｂ）は、操作者１０２が、図２（ａ）に示した状態で、指１０６を伸ばして指差し状態の手１０５に手の形状を変化させた場合のカーソル３０２の表示状態を示している。この場合、操作範囲１０３における指１０６の位置は、図１（ｂ）に示した位置と同一であるにもかかわらず、表示画面３０１におけるカーソル３０２の位置は、図１（ｂ）に示した位置ではなく、図２（ａ）に示した位置と同一になっている。このように、本実施形態に係る表示制御装置２００は、操作者１０２が、握った状態の手１０４によりカーソル３０２の位置を決定した状態で指１０６を伸ばした場合のように、手１０４の形状を変化させる所定の操作をした場合に、カーソル３０２の位置を移動させないようにすることで、操作性を向上させることができる。
【００１９】
［表示制御装置２００の構成］
以下、表示制御装置２００の構成について詳細に説明する。
図３は、第１の実施形態に係る表示制御装置２００の構成を示すブロック図である。表示制御装置２００は、データ保存部２０１、表示画像取得部２０２、表示制御部２０３、撮像画像取得部２０４、操作範囲特定部２０５、手・指特定部２０６、手・指情報決定部２０７、ジェスチャ特定部２０８、カーソル位置補正部２０９及び操作特定部２１０を有する。
【００２０】
また、表示制御装置２００は、不図示のＣＰＵ、ＲＯＭ、及びＲＡＭを有する。ＲＯＭには、ＣＰＵが実行する表示制御用プログラムが記憶されている。ＣＰＵは、ＲＯＭに格納された表示制御用プログラムを実行することにより、ＲＡＭをワークメモリとして用いて、表示制御装置２００の動作を制御する。また、ＲＯＭには、ＣＰＵが表示制御装置２００の制御に用いる各種のテーブルが記憶されている。
【００２１】
データ保存部２０１は、表示画面３０１上に表示する静止画像を保存する。データ保存部２０１は、例えばハードディスクである。
表示画像取得部２０２は、データ保存部２０１から複数の静止画像を取得し、画像の順番等を示すインデックス情報を静止画像に付加した静止画像データを生成し、表示制御部２０３に静止画像データを出力する。
【００２２】
表示制御部２０３は、表示画像取得部２０２から入力された静止画像データに基づいて、表示装置３００に画像を表示させる。表示制御部２０３は、画像を切替えるための操作に用いられるボタン及びカーソル３０２を静止画像と合成して描画した上で、表示画像データを生成し、表示画像データを表示装置３００に出力することにより画像を表示させる。表示制御部２０３の詳細については、後述する。
【００２３】
撮像画像取得部２０４は、撮像装置１００から、操作者１０２の手１０４が撮像された撮像画像を含む撮像データを取得し、取得した撮像データを操作範囲特定部２０５に出力する。
操作範囲特定部２０５は、撮像画像取得部２０４から入力された撮像データに基づいて操作範囲１０３を特定し、撮像データから操作範囲１０３を切り出した画像データを含む操作範囲情報ｏｐｒを生成する。そして、操作範囲特定部２０５は、操作範囲情報ｏｐｒを手・指特定部２０６に出力する。
【００２４】
例えば、操作範囲特定部２０５は、例えば、予めＲＯＭに記憶した多数の人の身体形状情報、輪郭情報、又はシルエット情報等に基づいて、撮像画像取得部２０４から入力された撮像データに含まれている操作者１０２の肩の位置ｓｐ（ｘｓ、ｙｓ）及び腕の長さｌａを特定し、肩の位置及び腕の位置を示す情報である人物情報を生成する。
【００２５】
次に、操作範囲特定部２０５は、人物情報に含まれる肩の位置ｓｐ（ｘｓ、ｙｓ）及び腕の長さｌａに基づいて操作範囲１０３を決定する。具体的には、操作範囲特定部２０５は、操作範囲１０３の四隅の座標（左上ｏｐ＿ｌｕ、左下ｏｐ＿ｌｄ、右上ｏｐ＿ｒｕ、右下ｏｐ＿ｒｄ）を、以下の式により算出する。
ｏｐ＿ｌｕ（ｘ、ｙ）＝（ｘｓ−ｌａ、ｙｓ＋ｌａ×０．５）
ｏｐ＿ｌｄ（ｘ、ｙ）＝（ｘｓ−ｌａ、ｙｓ−ｌａ×０．５）
ｏｐ＿ｒｕ（ｘ、ｙ）＝（ｘｓ＋ｌａ、ｙｓ＋ｌａ×０．５）
ｏｐ＿ｒｄ（ｘ、ｙ）＝（ｘｓ＋ｌａ、ｙｓ−ｌａ×０．５）
【００２６】
操作範囲特定部２０５は、算出した座標に基づいて、撮像データから操作範囲１０３の画像データを切り出すことにより、操作範囲情報ｏｐｒを生成する。操作範囲特定部２０５は、生成した操作範囲情報ｏｐｒを手・指特定部２０６に出力する。なお、本実施形態においては、操作範囲特定部２０５が生成した操作範囲情報ｏｐｒに含まれる画像データが、横１６０画素×縦９０画素の長方形の画像に対応するものとする。
【００２７】
手・指特定部２０６は、操作者１０２の複数の指それぞれの開閉状態に基づいて、手の形状を特定する。具体的には、手・指特定部２０６は、例えば、操作範囲情報ｏｐｒと、予めＲＯＭに記憶した多数の手の形状情報、輪郭情報、又はシルエット等とを比較することにより、手及び指の輪郭を特定する。手・指特定部２０６は、特定した手及び指の輪郭に基づいて、それぞれの指が伸びているかどうかを判定することにより、手情報ｈａｎｄを生成する。
【００２８】
手情報ｈａｎｄは、例えば、手、親指、人差し指、中指、薬指、小指の有無を示す情報からなる構造体である。手の状態が、図４（ａ）に示した手１０４のように指が伸びていない「クローズ状態」である場合、手情報ｈａｎｄは、手１、親指０、人差し指０、中指０、薬指０、小指０となる。手の状態が、図４（ｂ）に示した手１０４及び指１０６のように人差し指が伸びた「ポイント状態」である場合、手情報ｈａｎｄは、手１、親指０、人差し指１、中指０、薬指０、小指０となる。このように、手情報ｈａｎｄにおいては、伸びている指に対応する情報が１となり、伸びていない指に対応する情報が０となっている。手・指特定部２０６は、生成した手情報ｈａｎｄを操作範囲情報ｏｐｒとともに手・指情報決定部２０７に出力する。
【００２９】
手・指情報決定部２０７は、操作者１０２が特定の指を伸ばしていない第１形状の手１０４のいずれかの位置を第１位置として特定し、操作者１０２が特定の指（例えば、指１０６）を伸ばしている第２形状の手１０５における指１０６の位置を第２位置として特定する。手・指情報決定部２０７は、例えば、操作範囲情報ｏｐｒ及び手情報ｈａｎｄに基づいて、操作範囲情報ｏｐｒ内の手の位置情報、及び指の位置情報を決定する。図５は、手・指情報決定部２０７が決定する手の位置情報及び指の位置情報について説明するための図である。
【００３０】
手・指情報決定部２０７は、手情報ｈａｎｄが、指が伸びていないことを示している場合、図５（ａ）に示すように、手の位置情報ｈｐ（ｘｐ、ｙｐ）のみを決定する。手の位置情報ｈｐ（ｘｐ、ｙｐ）は、手１０４のいずれかの部位の位置であり、例えば手１０４の中心位置である。
【００３１】
手・指情報決定部２０７は、手情報ｈａｎｄが、いずれかの指が伸びていることを示している場合、図５（ｂ）に示すように、手の位置情報ｈｐ（ｘｐ、ｙｐ）、及び指の位置情報ｆｐ（ｘｉ、ｙｉ）を決定する。図５（ｂ）に示す例においては、人差し指が伸びているので、手・指情報決定部２０７は、人差し指の先端の位置に基づいて、指の位置情報ｆｐ（ｘｉ、ｙｉ）を決定する。手・指情報決定部２０７は、手の位置情報ｈｐ及び指の位置情報ｆｐを表示制御部２０３に出力する。また、手・指情報決定部２０７は、手情報ｈａｎｄ、手の位置情報ｈｐ及び指の位置情報ｆｐをジェスチャ特定部２０８に出力する。
【００３２】
ジェスチャ特定部２０８は、撮像画像における操作者１０２の手の形状及び手の位置に基づくジェスチャの種別を特定する。ジェスチャ特定部２０８は、手・指情報決定部２０７から入力された手情報ｈａｎｄ、及びＲＯＭに記憶された手形状ジェスチャ対応テーブルに基づいて、手の形状に対応するジェスチャの種別を特定する。図６は、手形状ジェスチャ対応テーブルの一例である。
【００３３】
図６に示す手形状ジェスチャ対応テーブルにおいては、操作者１０２の手が操作範囲１０３に含まれているか否かを示す情報及びそれぞれの指が伸びているか否かを示す情報と、ジェスチャの内容とが関連付けられている。手形状ジェスチャ対応テーブルにおけるジェスチャ「ｎｏｎｅ」は、操作範囲１０３内に手がない状態を示している。ジェスチャ「ｃｌｏｓｅ」は、手が握られた状態であることを示している。ジェスチャ「ｏｐｅｎ」は、全ての指が伸びて手が開いた状態であることを示している。ジェスチャ「ｐｏｉｎｔ」は、人差し指だけが伸びており、人差し指の指先で処理を実行する状態であることを示している。
【００３４】
ジェスチャ特定部２０８は、所定の時間ごとに、手の形状に対応するジェスチャを示すジェスチャ情報ｇｅｓ（ｎ）を特定し、特定したジェスチャ情報ｇｅｓ（ｎ）と、その時点での手の形状を示す手情報ｈａｎｄ（ｎ）とを関連付けてＲＡＭに記憶させる。そして、ジェスチャ特定部２０８は、表示制御部２０３にジェスチャ情報ｇｅｓ（ｎ）を出力する。なお、ジェスチャ情報ｇｅｓ（ｎ）及びｈａｎｄ（ｎ）は、配列データとしてＲＡＭに記憶され、ｎは、配列データにおける位置を示す整数である。
【００３５】
ジェスチャ特定部２０８は、直前のジェスチャ情報ｇｅｓ（ｔ−１）と最新のジェスチャ情報ｇｅｓ（ｔ）とが所定の関係にある場合、ジェスチャが変化したと判定し、ジェスチャ判定結果「ｄｅｔｅｃｔ」を、手の位置情報ｈｐ及び指の位置情報ｆｐとともに、カーソル位置補正部２０９に出力する。ここで、ｔは整数であり、ジェスチャ特定部２０８がジェスチャ情報ｇｅｓを特定する時間を示す。
【００３６】
ジェスチャ特定部２０８は、例えば、直前のジェスチャ情報ｇｅｓ（ｔ−１）が、「ｃｌｏｓｅ」であり、最新のジェスチャ情報ｇｅｓ（ｔ）が「ｐｏｉｎｔ」である場合、ジェスチャが「ｃｌｏｓｅ」から「ｐｏｉｎｔ」に変化したことを示すジェスチャ変化結果「ｄｅｔｅｃｔ」をカーソル位置補正部２０９に通知する。ジェスチャ特定部２０８は、ジェスチャが変化していないと判定した場合、ジェスチャ判定結果「ｎｏｎｅ」を出力する。ジェスチャ特定部２０８は、直前のジェスチャ情報ｇｅｓ（ｔ−１）が、「ｃｌｏｓｅ」であり、最新のジェスチャ情報ｇｅｓ（ｔ）が「ｏｐｅｎ」である場合、中心位置が変化しないので、ジェスチャ判定結果「ｎｏｎｅ」を出力してもよい。
【００３７】
カーソル位置補正部２０９は、ジェスチャ特定部２０８から入力されたジェスチャ変化結果、手の位置情報ｈｐ及び指の位置情報ｆｐに基づいて、カーソル位置補正情報を算出する。図７は、カーソル位置補正情報の算出方法について説明するための図である。
【００３８】
図７（ａ）に示すように、ジェスチャ「ｃｌｏｓｅ」に対応する手１０４の操作範囲１０３における位置が（ｘｐ、ｙｐ）であるとする。この状態において、表示画面３０１におけるカーソル３０２の位置は（ｘｃ、ｙｃ）となっている。ここで、ｘｃ及びｙｃは、以下の式により算出される。
ｘｃ＝ｘｐ×表示画面３０１の横画素数÷ｏｐｒの横画素数
ｙｃ＝ｙｐ×表示画面３０１の縦画素数÷ｏｐｒの縦画素数
【００３９】
手の位置情報ｈｐ（ｘｐ、ｙｐ）＝（４０、１５）であり、表示画面３０１の横画素数が１９２０、表示画面３０１の縦画素数が１０８０、ｏｐｒの横画素数が１６０、ｏｐｒの縦画素数が９０である場合、ｘｃ＝４０×１９２０÷１６０＝４８０、ｙｃ＝１５×１０８０÷９０＝１８０となる。
【００４０】
操作者が図７（ａ）の状態から人差し指を伸ばして図７（ｂ）の状態になったとする。人差し指の先端位置情報（ｘｉ、ｙｉ）＝（６０、５０）であるとすると、人差し指の先端位置に対応する表示画面３０１における位置（ｘｃ’、ｙｃ’）＝（７２０、６００）となり、カーソル３０２の位置が７（ａ）の位置から移動することになる。
【００４１】
ここで、カーソル位置補正部２０９は、ジェスチャ特定部２０８から入力したジェスチャ変化結果が「ｄｅｔｅｃｔ」である場合、手の位置情報ｈｐおよび指の位置情報ｆｐに基づいて、カーソル位置補正情報ｃｐｃ（ｏｆｆｓｅｔ＿ｘ、ｏｆｆｓｅｔ＿ｙ）を以下の式により算出する。
ｏｆｆｓｅｔ＿ｘ＝（ｘｉ−ｘｐ）×表示画面３０１の横画素数÷ｏｐｒの横画素数
ｏｆｆｓｅｔ＿ｙ＝（ｙｉ−ｙｐ）×表示画面３０１の縦画素数÷ｏｐｒの縦画素数
【００４２】
上記のとおり、（ｘｐ、ｙｐ）＝（４０、１５）、（ｘｉ、ｙｉ）＝（６０、５０）である場合、カーソル位置補正部２０９は、ｏｆｆｓｅｔ＿ｘ＝２４０、ｏｆｆｓｅｔ＿ｙ＝４２０と算出する。カーソル位置補正部２０９は、このようにして算出したカーソル位置補正情報ｃｐｃをカーソル制御部２１１に出力する。
【００４３】
操作特定部２１０は、操作者１０２の手の形状及び位置に基づく操作の種別を特定する。具体的には、操作特定部２１０は、ジェスチャ特定部２０８から入力された、操作者１０２の手の形状に基づいて特定されたジェスチャ情報ｇｅｓ、手の位置情報ｈｐ、及びジェスチャ操作変換テーブルに基づいて、ジェスチャに対応する操作内容を特定する。操作特定部２１０は、特定した操作内容を示す操作情報ｏｐｅを表示制御部２０３に通知する。
【００４４】
図８は、ジェスチャ操作変換テーブルの一例である。ジェスチャ操作変換テーブルにおいては、ジェスチャ情報ｇｅｓと操作内容とが関連付けられている。図８においては、ジェスチャ「ｃｌｏｓｅ」が、カーソルを移動する操作であり、ジェスチャ「ｐｏｉｎｔ」が、手の位置に対応する位置のボタンを押下する操作であり、ジェスチャ「ｏｐｅｎ」が、画像表示位置を移動する操作であることを示している。
【００４５】
表示制御部２０３は、カーソル制御部２１１、描画部２１２及び画像出力部２１３を有する。表示制御部２０３は、操作特定部２１０が特定した第１形状の手１０４による第１操作に基づいて、撮像画像における第１形状の手１０４が示す第１位置（ｘｐ、ｙｐ）に対応する画面内位置（ｘｃ、ｙｃ）にカーソル３０２を表示させる。その後、表示制御部２０３は、第１位置と異なる第２位置（ｘｉ、ｙｉ）を示す第２形状の手１０５による、第１操作と所定の関係を有する第２操作が検出された場合に、第１位置と第２位置との差分に基づいて、第１位置に対応する画面内位置（ｘｃ、ｙｃ）にカーソル３０２を継続して表示させる。第１位置（ｘｐ、ｙｐ）は、例えば、手１０４の中心位置であり、第２位置（ｘｉ、ｙｉ）は、例えば、手１０５における指１０６の先端の位置である。
【００４６】
他方で、表示制御部２０３は、操作特定部２１０が特定した第１形状の手１０４による第１操作に基づいて、第１位置（ｘｐ、ｙｐ）に対応する画面内位置（ｘｃ、ｙｃ）にカーソル３０２を表示させた後に、第１操作と所定の関係を有しない操作が検出された場合に、当該操作を示す手の位置に対応する画面内位置にカーソル３０２を表示させる。例えば、表示制御部２０３は、握った状態の手１０４による操作が行われた後に、操作者１０２が手を開いた場合、開いた手の位置に対応する画面内位置にカーソル３０２を移動させる。
【００４７】
以下、表示制御部２０３の各部の動作について説明する。
カーソル制御部２１１は、操作範囲１０３の画素数と表示画面３０１の画素数との比に基づいて決定される、操作範囲１０３における手１０４の位置（ｘｐ、ｙｐ）と指１０６の位置（ｘｉ、ｙｉ）との差分に対応する画面内差分を用いて、第２位置に対応する画面内位置を補正することにより、補正した位置を示すカーソル位置情報ｃｐを生成する。そして、カーソル制御部２１１は、カーソル位置情報ｃｐを表示制御部２０３に通知することにより、手１０４の位置に対応する表示画面３０１内の位置（ｘｃ、ｙｃ）にカーソル３０２を継続して表示させる。
【００４８】
カーソル制御部２１１は、手・指情報決定部２０７から入力された手の位置情報ｈｐ及び指の位置情報ｆｐ、並びにカーソル位置補正部２０９から入力されたカーソル位置補正情報ｃｐｃに基づいて、カーソル位置情報ｃｐを算出する。カーソル制御部２１１は、まず、手の位置情報ｈｐ（ｘｐ、ｙｐ）、指の位置情報ｆｐ（ｘｉ、ｙｉ）に基づいて、以下の式により補正前の指の位置（ｘｃ’、ｙｃ’）を算出する。
ｘｃ’＝ｘｉ×表示画面３０１の横画素数÷ｏｐｒの横画素数
ｙｃ’＝ｙｉ×表示画面３０１の縦画素数÷ｏｐｒの縦画素数
【００４９】
次に、カーソル制御部２１１は、カーソル位置補正情報ｃｐｃ（ｏｆｆｓｅｔ＿ｘ、ｏｆｆｓｅｔ＿ｙ）により、指の位置（ｘｃ’、ｙｃ’）を補正することにより、カーソル位置情報ｃｐ（ｘｃ、ｙｃ）を算出する。
ｘｃ＝ｘｃ’−ｏｆｆｓｅｔ＿ｘ
ｙｃ＝ｙｃ’−ｏｆｆｓｅｔ＿ｙ
【００５０】
ここで、図７（ｂ）に示すように、（ｘｐ、ｙｐ）＝（４０、１５）、（ｘｉ、ｙｉ）＝（６０、５０）、（ｏｆｆｓｅｔ＿ｘ、ｏｆｆｓｅｔ＿ｙ）＝（２４０、４２０）である場合、（ｘｃ’、ｙｃ’）＝（７２０、６００）となり、カーソル位置情報ｃｐ（ｘｃ、ｙｃ）＝（４８０、１８０）となる。すなわち、カーソル３０２の位置は、図７（ａ）に示したカーソル３０２の位置と同じ位置になる。
【００５１】
描画部２１２は、静止画像データ、操作情報ｏｐｅ及びカーソル位置情報ｃｐに基づいて、表示画像データを生成する。具体的には、描画部２１２は、静止画像データに基づく画像と、操作情報ｏｐｅが示す操作内容に対応する操作画像と、カーソル位置情報ｃｐが示す位置にカーソル３０２に対応する指示用画像とを合成する。また、描画部２１２は、操作情報ｏｐｅとカーソル位置情報ｃｐとに基づいて、操作者１０２が意図している操作内容を特定する。描画部２１２は、特定した操作内容に応じて、画像を切り替える。描画部２１２は、このように合成して生成した表示画像データを、画像出力部２１３に出力する。
【００５２】
画像出力部２１３は、例えば、ＨＤＭＩ（登録商標）インターフェイスを含んでいる。画像出力部２１３は、描画部２１２から入力された表示画像データを表示装置３００に出力する。
以上の通り、表示制御部２０３は、操作者１０２が指１０６を伸ばしたことによる第２操作「ボタン押下」が検出された場合に、指１０６の位置に対応する画面内位置（ｘｃ’、ｙｃ’）を、第１位置（手１０４の位置）と第２位置との差分（ｏｆｆｓｅｔ＿ｘ、ｏｆｆｓｅｔ＿ｙ）に基づいて補正した画面内位置（ｘｃ、ｙｃ）にカーソル３０２を表示させる。その結果、操作者１０２が指１０６を伸ばした状態においても、第１位置（ｘｐ、ｙｐ）に対応する画面内位置（ｘｃ、ｙｃ）にカーソル３０２を継続して表示させることができる。
【００５３】
［表示システムＳの動作フローチャート］
図９は、表示システムＳの動作手順を示すフローチャートである。図９は、撮像装置１００、表示制御装置２００及び表示装置３００の電源がオンされてから、撮像装置１００が撮像を開始するまでの動作手順を示している。
【００５４】
表示制御装置２００は、電源がオンになったかどうかを監視し（Ｓ１１）、電源がオンになったことをトリガとして、表示画像取得部２０２が、データ保存部２０１に保存された静止画像データを取得する（Ｓ１２）。図１０（ａ）〜図１０（ｃ）は、表示画像取得部２０２が取得した３枚の静止画像データに対応する静止画像を示す図である。表示画像取得部２０２は、取得した順にインデックス情報を付して、描画部２１２へ静止画像データを出力する。
【００５５】
続いて、描画部２１２は、インデックス情報が０の静止画像を描画し、図１０（ｄ）に示すように、静止画像に操作画像を合成する（Ｓ１３）。描画部２１２は、合成した画像に基づいて縦１９２０×横１０８０画素からなる表示画像データを生成し、画像出力部２１３に出力する。画像出力部２１３は、入力された表示画像データを表示装置３００に表示させる（Ｓ１４）。図１０（ｄ）においては、次の画像に切り替えるための操作を受け付けるための「次の画像」という操作画像、及び前の画像に切り替えるための操作を受け付けるための「前の画像」という操作画像が合成されている。
【００５６】
続いて、撮像装置１００は、ステップＳ１３において表示画像データの表示が完了したことをトリガとして、撮像を開始する（Ｓ１５）。撮像装置１００が撮像を開始した後に、操作者１０２は、操作範囲１０３内で手１０４を動かすことで操作をすることができる。
【００５７】
次に、図１１及び図１２を参照しながら、撮像装置１００が撮像を開始してから表示制御装置２００がカーソル３０２の表示位置を制御する動作について説明する。図１１は、撮像装置１００が撮像を開始してからの動作手順を示すフローチャートである。図１２は、描画部２１２が表示装置３００に表示される画像を描画する動作手順を示すフローチャートである。
【００５８】
以下、表示画面３０１に表示される画像が遷移する動作について説明するための図１３及び図１４も参照しながら、表示制御装置２００の動作について説明する。図１３（ａ）に示すように、操作者１０２が握った手を操作範囲１０３に移動した状態（以下、「第１状態」という）、図１３（ｂ）に示すように、第１状態の後で、操作者１０２が人差し指を伸ばした状態（以下、「第２状態」という）、及び、第２状態の後で、操作者１０２が人差し指を伸ばした状態で移動させた状態（以下、「第３状態」という）における動作について、順次説明する。
【００５９】
［第１状態の動作］
撮像画像取得部２０４は、撮像画像データを取得すると（Ｓ２１）、操作範囲特定部２０５に撮像画像データを出力する。ここで、操作者１０２は、図１３（ａ）に示すように、手を閉じた状態にしているものとする。
【００６０】
続いて、操作範囲特定部２０５は、入力された撮像データにおける人物の位置を特定することにより、操作範囲１０３を決定し、撮像データから操作範囲１０３の画像を切り出した操作範囲情報ｏｐｒを生成し、手・指特定部２０６に出力する（Ｓ２２）。手・指特定部２０６は、入力された操作範囲情報に基づいて手及び指の輪郭を特定し、手情報ｈａｎｄを生成する（Ｓ２３）。図１３（ａ）に示すように手が閉じた状態である場合、手・指特定部２０６は、手１、親指０、人差し指０、中指０、薬指０、小指０の手情報ｈａｎｄを生成する。
【００６１】
続いて、手・指情報決定部２０７は、手情報ｈａｎｄに基づいて、操作範囲情報ｏｐｒ内の手の位置情報ｈｐ（ｘｐ、ｙｐ）及び指の位置情報ｆｐを生成する（Ｓ２４）。ここで、図１３（ａ）に示すように、手が閉じた状態である場合、指の位置情報ｆｐは値を持たない。
【００６２】
続いて、ジェスチャ特定部２０８は、手・指特定部２０６から入力された手情報ｈａｎｄと手形状ジェスチャ対応テーブルとに基づいて、ジェスチャの種別を特定する（Ｓ２５）。ここで、手が閉じた状態では、入力された手情報ｈａｎｄが、手１、親指０、人差し指０、中指０、薬指０、小指０であるため、ジェスチャ情報ｇｅｓはｃｌｏｓｅとなる。また、ジェスチャ特定部２０８は、ジェスチャの種別をジェスチャ情報ｇｅｓ（ｎ１）に設定し、手情報ｈａｎｄを手情報ｈａｎｄ（ｎ１）に設定し、ＲＡＭに記憶させる。そして、ジェスチャ特定部２０８は、ジェスチャ情報ｇｅｓを操作特定部２１０に出力する。
【００６３】
操作特定部２１０は、ジェスチャ特定部２０８から入力されたジェスチャ情報ｇｅｓとジェスチャ操作変換テーブルとに基づいて、操作情報ｏｐｅを特定することにより、操作内容を決定する（Ｓ２６）。ここでは、ジェスチャ情報ｇｅｓがｃｌｏｓｅであるため、操作特定部２１０は、操作情報ｏｐｅが「カーソル移動」であると特定する。
【００６４】
続いて、ジェスチャ特定部２０８は、直前に入力されたジェスチャ情報ｇｅｓ（ｔ−１）と、最新のジェスチャ情報ｇｅｓ（ｔ）との関係が、所定のジェスチャ変化を示しているかどうかを判定する（Ｓ２７）。ここで、所定のジェスチャ変化を示す情報はＲＯＭに保存されている。所定のジェスチャ変化の例として、ジェスチャ情報ｇｅｓ（ｔ−１）がｃｌｏｓｅであり、ジェスチャ情報ｇｅｓ（ｔ）がｐｏｉｎｔとなる場合が挙げられる。
【００６５】
ジェスチャ特定部２０８は、ジェスチャ情報ｇｅｓがｃｌｏｓｅからｐｏｉｎｔに変化した場合に、ジェスチャ変化結果をｄｅｔｅｃｔとして、補正情報を生成するステップＳ２８に進む。また、ジェスチャ情報ｇｅｓ（ｔ−１）及びジェスチャ情報（ｔ）がｐｏｉｎｔである場合、ジェスチャ変化結果がｃｏｎｔｉｎｕｅとなり、補正情報を生成するステップＳ２８に進む。他方で、ジェスチャ情報（ｔ）がｎｏｎｅである場合は、所定のジェスチャ変化に含まれず、補正情報を生成しないでステップＳ２９に進む。
【００６６】
ここで、第１状態の動作においては、ジェスチャ情報ｇｅｓの初期値であるジェスチャ情報ｇｅｓ（ｎ０）は値を持たず、初期値としてｎｏｎｅが設定されている。ジェスチャ情報ｇｅｓがｎｏｎｅからｃｌｏｓｅに変化した場合は、カーソル位置の補正が不要なので、図１３（ａ）の状態におけるジェスチャ変化結果はｎｏｎｅとなり、ジェスチャ特定部２０８は、所定のジェスチャ変化が発生していないと判定する（Ｓ２７におけるＮｏ）。
【００６７】
続いて、カーソル制御部２１１は、手・指情報決定部２０７から入力された手の位置情報ｈｐに基づいて、カーソル位置情報ｃｐ（ｘｃ、ｙｃ）を算出して、カーソル位置を決定する（Ｓ２９）。
【００６８】
次に、図１２のフローチャートを参照しながら、描画部２１２の動作について説明する。
描画部２１２は、操作特定部２１０から入力された操作情報ｏｐｅ及びカーソル制御部２１１から入力されたカーソル位置情報ｃｐに基づいて、操作者１０２の操作内容を示すコマンドを特定する（Ｓ３１）。続いて、描画部２１２は、コマンドが、画像切替コマンドであるか否かを判定する（Ｓ３２）。
【００６９】
操作情報ｏｐｅが「カーソル移動」を示している場合、描画部２１２は、画像切替コマンドが発生していないと判定し（Ｓ３２におけるＮｏ）、Ｓ３４に進み、静止画像を表示する（Ｓ３４）。描画部２１２は、例えば、図１３（ａ）に示すように、図１０（ａ）に示した第１の静止画像における、手１０４の位置に対応する画面内位置に、カーソル移動の操作時に表示する、画像を切り替えるための操作画像を合成して表示画面３０１に描画する（Ｓ３５）。また、描画部２１２は、第１の静止画像にカーソル３０２を合成して表示画面３０１に描画する（Ｓ３６）。続いて、描画部２１２が、静止画像、操作画像及びカーソル３０２を合成した画像を画像出力部２１３に出力する（Ｓ３７）。表示制御装置２００は、表示制御装置２００の電源がオフされるまで、Ｓ１１からＳ３７までの処理を繰り返す。
【００７０】
［第２状態の動作］
続いて、図１３（ｂ）に示すように、操作者１０２が人差し指を伸ばした場合の処理について説明する。図１２のステップＳ３８において、電源がオフでないと判定されると、図１１のＳ２１に処理が戻る。ステップＳ２１及びステップＳ２２の処理は、操作者１０２が手を握っている第１状態の場合の処理と同様である。
【００７１】
ステップＳ２２の後に、手・指特定部２０６は、手１、親指０、人差し指１、中指０、薬指０、小指０の手情報ｈａｎｄを生成する（Ｓ２３）。続いて、手・指情報決定部２０７は、手情報ｈａｎｄに基づいて、操作範囲情報ｏｐｒ内の手１０４の位置情報ｈｐ（ｘｐ、ｙｐ）及び指の位置情報ｆｐを生成する（Ｓ２４）。
【００７２】
続いて、ジェスチャ特定部２０８は、手・指特定部２０６から入力された手情報ｈａｎｄと手形状ジェスチャ対応テーブルとに基づいて、ジェスチャ情報ｇｅｓがｐｏｉｎｔであると判定する（Ｓ２５）。操作特定部２１０は、ジェスチャ特定部２０８から入力されたジェスチャ情報ｇｅｓとジェスチャ操作変換テーブルとに基づいて、操作情報ｏｐｅが「ボタン押下」であると特定する。
【００７３】
続いて、ジェスチャ特定部２０８は、直前に入力されたジェスチャ情報ｇｅｓ（ｎ１）がｃｌｏｓｅであり、最新のジェスチャ情報ｇｅｓ（ｎ２）がｐｏｉｎｔであるので、所定のジェスチャ変化が発生したと判定して、ジェスチャ変化結果ｄｅｔｅｃｔを出力する（Ｓ２７におけるＹｅｓ）。ジェスチャ特定部２０８は、ジェスチャ変化結果、手の位置情報ｈｐ及び指の位置情報ｆｐを、カーソル位置補正部２０９に出力する。
【００７４】
カーソル位置補正部２０９は、ジェスチャ特定部２０８から入力されたジェスチャ変化結果がｄｅｔｅｃｔである場合、手の位置情報ｈｐ及び指の位置情報ｆｐに基づいて、カーソル位置補正情報ｃｐｃを算出する（Ｓ２８）。カーソル位置補正部２０９は、算出したカーソル位置補正情報ｃｐｃをカーソル制御部２１１に通知する。カーソル制御部２１１は、人差し指の位置情報ｆｐとカーソル位置補正情報ｃｐｃとに基づいて、カーソル位置情報ｃｐ（ｘｃ、ｙｃ）を算出することにより、カーソル位置を決定する（Ｓ２９）。
【００７５】
続いて、図１２に処理が移る。描画部２１２は、画像を切り替えるための操作画像が表示された状態で、指１０６を伸ばすことによるボタン押下操作が検出された場合に、カーソル３０２の位置及びボタン押下操作に対応して、表示画面３０１に表示する表示画像を描画する。この際、描画部２１２は、表示画面３０１に表示されている操作画像（例えば、「次の画像」ボタン）が選択された場合に遷移する表示画像を表示画面３０１に表示させるように描画する。
【００７６】
具体的には、描画部２１２は、操作情報ｏｐｅに基づいて、「ボタン押下」の操作が行われたことを特定する（Ｓ３１）。また、描画部２１２は、カーソル位置情報ｃｐに基づいて、カーソル３０２が、「次の画像」ボタンにあることを特定する。これらの結果から、描画部２１２は、画像切替コマンドが発生したと判定し（Ｓ３２におけるＹｅｓ）、表示している画像のインデックスを変更することにより、表示する対象となる静止画像を切り替える（Ｓ３３）。
【００７７】
続いて、描画部２１２は、切り替えた後の静止画像、操作画像及びカーソルを描画し（Ｓ３４〜Ｓ３６）、描画した画像を画像出力部２１３に出力する（Ｓ３７）。このようにして、図１３（ｂ）の画像が表示される。このように、カーソル移動操作から画像切替操作まで、カーソル３０２の表示位置が変化しないので、操作者１０２が違和感なく操作をすることができる。
【００７８】
［第３状態の動作］
続いて、図１３（ｂ）に示した状態から、操作者１０２が指１０６を伸ばしたままで手１０５を右に移動して、図１４に示す状態に遷移する場合の処理について説明する。図１２のステップＳ３８において、電源がオフでないと判定されると、図１１のＳ２１に処理が戻る。ステップＳ２１からステップＳ２５までの処理は、第２状態の場合の処理と同様である。
【００７９】
ステップＳ２５の後に、ジェスチャ特定部２０８は、直前に入力されたジェスチャ情報ｇｅｓ（ｎ２）がｐｏｉｎｔであり、最新のジェスチャ情報ｇｅｓ（ｎ３）がｐｏｉｎｔであるので、ジェスチャ変化が発生しておらず、ジェスチャが継続していると判定する（Ｓ２７におけるＮｏ）。
【００８０】
カーソル位置補正部２０９は、ジェスチャ特定部２０８から入力されたジェスチャ変化結果が、ジェスチャが継続していることを示すｃｏｎｔｉｎｕｅである場合、ステップＳ２８において、第２状態のカーソル位置補正情報ｃｐｃを流用する。カーソル位置補正部２０９は、このカーソル位置補正情報ｃｐｃをカーソル制御部２１１に通知する。カーソル制御部２１１は、人差し指の位置情報ｆｐとカーソル位置補正情報ｃｐｃとに基づいて、カーソル位置情報ｃｐ（ｘｃ、ｙｃ）を算出することにより、カーソル位置を決定する（Ｓ２９）。
【００８１】
続いて、図１２に処理が移り、描画部２１２は、第２状態において指１０６を伸ばしたことによるボタン押下の第２操作が検出された後に、指１０６を伸ばした状態の手１０５が移動した場合に、操作範囲１０３における手１０４の位置と指１０６の位置との差分に基づいて手１０５の位置を補正した位置に対応する画面内位置に、カーソル３０２を描画する。また、描画部２１２は、操作情報ｏｐｅに基づいて、「ボタン押下」の操作が行われたことを特定する（Ｓ３１）。さらに、描画部２１２は、カーソル位置情報ｃｐに基づいて、カーソル３０２が、図１４に示すように「前の画像」ボタンにあることを特定する。これらの結果から、描画部２１２は、画像切替コマンドが発生したと判定し（Ｓ３２におけるＹｅｓ）、表示している画像のインデックスを変更することにより、表示する対象となる静止画像を切り替える（Ｓ３３）。
【００８２】
続いて、描画部２１２は、切り替えた後の静止画像、操作画像及びカーソル３０２を描画し（Ｓ３４〜Ｓ３６）、描画した画像を画像出力部２１３に出力する（Ｓ３７）。このようにして、図１４に示す画像が表示される。このように、本実施形態における表示制御装置２００によれば、操作者１０２が、人差し指を伸ばした状態で手１０４を移動させた場合に、操作者１０２の手１０５の向き又は指１０６の角度が変化しても、操作者１０２にとって違和感がない位置にカーソル３０２が継続して表示される。
【００８３】
なお、表示制御部２０３は、図１４に示した状態で、操作者１０２が手１０４を開いたり、手１０４を操作範囲１０３の外に出したりすると、カーソル位置の補正を終了する。例えば、表示制御部２０３は、指１０６を伸ばした手１０５による操作に基づいて、第１位置にカーソル３０２を表示させた後に、第１位置と異なる第３位置における、握った手１０４による操作が検出された場合、第３位置に対応する画面内位置に指示用画像を表示させる。
【００８４】
（変形例）
以上の説明において、操作範囲特定部２０５が、操作者１０２の肩の位置と腕の長さから、操作範囲１０３を決定するものとしたが、操作範囲１０３を特定の空間座標位置に固定してもよい。また、操作範囲特定部２０５は、操作範囲１０３を決定した後に、操作者１０２の動きに伴って、操作範囲１０３を移動させてもよい。
【００８５】
また、以上の説明において、操作範囲特定部２０５は、操作者１０２が含まれる撮像データにおいて操作者１０２を検出したことをトリガとして操作範囲１０３を特定したが、誤動作を防ぐために、操作者１０２による特定のジェスチャを検出したことをトリガとして、操作範囲１０３を特定してもよい。
【００８６】
また、以上の説明においては、操作者が１人の場合について説明したが、表示制御装置２００は、複数の操作者１０２を特定した場合、最初に特定した操作者１０２の手１０４に操作権を与えて、最初に特定した操作者１０２の手１０４の形状に基づいてジェスチャを特定してもよい。
【００８７】
また、表示制御装置２００は、複数の操作者１０２の複数の手、又は一人の操作者１０２の複数の手に対応する複数のカーソル３０２を表示させ、複数の手を用いた操作を可能にしてもよい。例えば、表示制御部２０３は、操作範囲１０３に第２の手が含まれている場合に、第２の手の位置を、手１０４と指１０６との差分に基づいて補正した位置に対応する画面内位置に、第２の手に対応する第２のカーソル３０２を表示させる。その際、表示制御装置２００は、例えば、最初に操作範囲１０３内において特定された手に操作権を与え、他方の手を補助操作のためのものとしてもよい。
【００８８】
この場合、ジェスチャ特定部２０８が、右手がｐｏｉｎｔ状態のジェスチャから、両手がｐｏｉｎｔ状態のジェスチャに変化する特定のジェスチャ変化を検出したときには、カーソル位置補正部２０９は、左手の指の位置情報と、右手の指の位置情報との差分値をオフセットとして、左手に対応するカーソル３０２の位置を補正してもよい。このようにすることで、複数の手を用いたジェスチャにおいても、カーソル３０２を適切な位置に表示できる。
【００８９】
また、以上の説明においては、カーソル３０２の形状を矢印としたが、例えばカーソル３０２を５本の指の開閉具合がわかる手形状にしてもよい。その際、手形状のカーソル３０２における人差し指の先端位置が、操作者１０２の手１０５に対応する画面内位置になり、操作者１０２が更に直観的に操作できるよう、カーソル制御部２１１は、カーソル３０２の人差し指の先端位置と手の平の位置の差分値に基づいて、更にカーソル位置を補正してもよい。
【００９０】
また、以上の説明においては、撮像装置１００がＸ−Ｙ平面で操作者１０２を撮像できるものとしたが、例えば、撮像装置１００が操作者１０２の下方に設けられており、Ｘ−Ｚ平面で操作者１０２の手１０４を撮像できるようにしてもよい。その際、Ｚ座標を測定するため、撮像装置１００としてステレオカメラを用いて、操作範囲特定部２０５は、三角測定により得られた距離画像に基づいて、三次元空間上において操作範囲１０３を特定してもよい。また、操作範囲特定部２０５は、距離センサーを用いてＺ座標を測定した結果を用いてもよい。
【００９１】
また、以上の説明においては、操作特定部２１０が、図８に示したジェスチャ操作変換テーブルに基づいて操作内容を特定したが、ジェスチャと操作内容との対応は任意である。例えば、ｏｐｅｎ状態でカーソル移動、ｏｐｅｎ状態からｃｌｏｓｅ状態への遷移で画像のドラッグ、ｃｌｏｓｅ状態で画像移動と画像拡大縮小、ｐｏｉｎｔ状態で画像へのお絵かきとなるようにしてもよい。また、表示制御装置２００は、対応付けを動的に変更してもよい。
【００９２】
また、以上の説明において、カーソル位置を補正したカーソル位置補正情報ｃｐｃ分だけ、カーソルが移動できない領域が発生する場合がある。その際、操作範囲特定部２０５は、例えばカーソル位置補正情報ｃｐｃに相当する大きさだけ操作者の手及び指の位置を特定する範囲を操作範囲１０３よりも広げることで、カーソル３０２が移動できない領域が生じないようにしてもよい。
【００９３】
また、以上の説明においては、表示制御装置２００が静止画像を表示装置３００に表示させる場合について説明したが、表示制御装置２００が動画像を表示装置３００に表示させてもよい。また、以上の説明においては、カーソル３０２の表示をジェスチャでのみ制御したが、マウス及びキーボードを併用してカーソル３０２を制御できるものとしてもよい。
【００９４】
また、以上の説明においては、表示制御装置２００がデータ保存部２０１を有する場合について説明したが、データ保存部２０１は、表示制御装置２００の外に配置されていてもよい。例えば、表示画像取得部２０２は、ＵＳＢメモリから画像を取得したり、ネットワークを介して接続されたサーバーから画像を取得したりしてもよい。
【００９５】
［第１の実施形態における効果］
以上説明したように、第１の実施形態における表示制御装置２００においては、ジェスチャ特定部２０８が、撮像画像における前記操作者の手の形状及び手の位置に基づくジェスチャの種別を特定し、操作特定部２１０が、ジェスチャの種別に対応する操作の内容を特定する。そして、表示制御部２０３が、手１０４の位置に対応する画面内位置にカーソル３０２を表示させた後に、指１０６を伸ばすことによる所定の操作が検出された場合に、手１０４の位置に対応して表示されたカーソル３０２の位置を移動させることなく、カーソル３０２を継続して表示させる。このようにすることで、操作者１０２が、カーソル３０２の位置を移動させる意思を持たないで操作した場合に、カーソル３０２の位置が移動しない。その結果、操作者１０２が違和感なく操作することができ、操作者の手の形状が変化した場合の操作性の低下が抑制される。
【００９６】
＜第２の実施形態＞
第１の実施形態においては、カーソル位置補正部２０９が、カーソル位置補正情報ｃｐｃ（ｏｆｆｓｅｔ＿ｘ、ｏｆｆｓｅｔ＿ｙ）を算出し、カーソル制御部２１１が、表示画面３０１の座標系におけるカーソル位置補正情報ｃｐｃに基づいてカーソル３０２の位置を補正した。これに対して、第２の実施形態においては、カーソル制御部２１１が、操作範囲１０３の座標系における補正位置を算出するマッピング式ｍｊを用いてカーソル位置を補正する点で、第１の実施形態と異なる。以下、第１の実施形態と相違する点について説明する。
【００９７】
図１５は、第２の実施形態のカーソル位置補正部２０９が用いるジェスチャオフセット対応テーブルである。図１６は、第２の実施形態のカーソル位置補正部２０９が用いるマッピング式テーブルである。カーソル位置補正部２０９は、手の位置情報ｈｐ及び指の位置情報ｆｐに基づいて、操作範囲１０３の座標系における指１０６の位置の補正量を示すカーソル位置補正情報ｃｐｃを算出する。そして、カーソル位置補正部２０９は、マッピング式テーブルに含まれる、ジェスチャ情報ｇｅｓに対応するマッピング式ｍｊに基づいて、操作範囲１０３の座標系における補正後の指１０６の位置を算出して、算出した位置をカーソル制御部２１１に通知する。
【００９８】
カーソル制御部２１１は、カーソル位置補正部２０９から通知された、操作範囲１０３の座標系における補正後の指１０６の位置と、操作範囲１０３の画素数と表示画面３０１の画素数との比とに基づいて、カーソル位置情報ｃｐを算出する。そして、カーソル制御部２１１は、カーソル位置情報ｃｐを描画部２１２に出力する。
【００９９】
図１７は、第２の実施形態における図１１に対応する動作手順を示すフローチャートである。図１７において、ステップＳ２１からＳ２６までは、図１１に示したフローチャートと同一である。
【０１００】
ステップＳ２６において、操作特定部２１０が操作内容を決定した後に、カーソル位置補正部２０９は、手の位置情報ｈｐ、指の位置情報ｆｐ、及びジェスチャオフセット対応テーブルに基づいて、以下の式により、操作範囲１０３の座標系におけるカーソル位置補正情報ｃｐｃ（ｏｆｆｓｅｔ＿ｘ、ｏｆｆｓｅｔ＿ｙ）を生成する（Ｓ４１）。
ｏｆｆｓｅｔ＿ｘ＝ｘｉ−ｘｐ
ｏｆｆｓｅｔ＿ｙ＝ｙｉ−ｙｐ
例えば、手の位置情報ｈｐが（４０、１５）、人差し指の先端位置情報が（６０、５０）である場合、ｏｆｆｓｅｔ＿ｘ＝２０、ｏｆｆｓｅｔ＿ｙ＝３５となる。
【０１０１】
次に、カーソル位置補正部２０９は、マッピング式テーブルにおける、ジェスチャ特定部２０８が特定したジェスチャ情報ｇｅｓに対応するマッピング式を用いて、操作範囲１０３の座標系における補正位置ｍｐｏｉｎｔを算出する（Ｓ４２）。
ｍｐｏｉｎｔ＿ｘ＝ｘｉ×（１−ｏｆｆｓｅｔ＿ｘ÷ｘｉ）
ｍｐｏｉｎｔ＿ｙ＝ｙｉ×（１−ｏｆｆｓｅｔ＿ｙ÷ｙｉ）
ここで、ｘｉ＝６０、ｏｆｆｓｅｔ＿ｘ＝２０である場合、ｍｐｏｉｎｔ＿ｘ＝４０となり、ｙｉ＝５０、ｏｆｆｓｅｔ＿ｙ＝３５である場合、ｍｐｏｉｎｔ＿ｙ＝１５となる。
【０１０２】
カーソル位置補正部２０９は、算出したｍｐｏｉｎｔの値をカーソル制御部２１１に通知する。カーソル制御部２１１は、通知されたｍｐｏｉｎｔの値に基づいて、以下の式により、カーソル位置情報ｃｐ（ｘｃ、ｙｃ）を算出することにより、カーソル位置を決定する（Ｓ４３）。
ｘｃ＝ｍｐｏｉｎｔ＿ｘ×表示画面３０１の横画素数÷ｏｐｒの横画素数
ｙｃ＝ｍｐｏｉｎｔ＿ｙ×表示画面３０１の縦画素数÷ｏｐｒの縦画素数
【０１０３】
ｍｐｏｉｎｔ＿ｘ＝４０、ｍｐｏｉｎｔ＿ｙ＝１５であり、表示画面３０１の横画素数が１９２０、表示画面３０１の縦画素数が１０８０、ｏｐｒの横画素数が１６０、ｏｐｒの縦画素数が９０である場合、ｘｃ＝４８０、ｙｃ＝１８０となり、カーソル位置情報ｃｐは、（４８０、１８０）となる。したがって、この場合も、第１の実施形態と同様に、操作者１０２が指１０６を伸ばした後のカーソル３０２の位置が、操作者１０２が指１０６を伸ばす前のカーソル３０２の位置から変化しない。
【０１０４】
なお、カーソル制御部２１１は、カーソル位置情報ｃｐ（ｘｃ、ｙｃ）を算出する際に、表示画面３０１の画素数と操作領域１０３の画素数との比ではなく、他の係数を乗算することにより、操作範囲１０３における位置を表示画面３０１における位置にマッピングしてもよい。例えば、カーソル制御部２１１は、補正位置ｍｐｏｉｎｔが操作範囲１０３における外側に近づけば近づくほど値が小さくなる係数をｍｐｏｉｎｔに乗算してカーソル位置情報ｃｐ（ｘｃ、ｙｃ）を算出することにより、操作者１０２の手が操作範囲１０３の境界に近づいた場合であっても、カーソル３０２を表示画面３０１内で移動させることが可能になる。
【０１０５】
［第２の実施形態における効果］
以上説明したように、第２の実施形態においても、第１の実施形態と同様に、所定の手の形状の変化による操作が行われた場合にカーソル３０２の位置が移動しないので、表示制御装置２００は、操作者１０２が違和感なく操作することができ、操作者の手の形状が変化した場合の操作性の低下が抑制される。そして、第２の実施形態のように、操作範囲１０３の座標系における補正位置ｍｐｏｉｎｔを所定の式を用いて表示画面３０１内の位置にマッピングすることにより、表示制御装置２００は、操作者１０２の手の位置とカーソル３０２の位置との関係を柔軟に制御することができる。
【０１０６】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
例えば、上記の説明においては、ＣＰＵが表示制御用プログラムを実行することにより、撮像画像に基づいて手の形状及び位置を特定するものとして説明したが、これに限らない。ＣＰＵが表示制御用プログラムを実行することにより、他のプログラムを実行することにより特定された手の形状及び位置を示す情報を取得することにより、手の形状及び位置を特定してもよい。また、表示制御装置２００が、撮像画像取得部２０４及び手・指特定部２０６を有さず、外部の装置から手の形状及び位置を示す情報を取得してもよい。
【符号の説明】
【０１０７】
２００  表示制御装置
２０３  表示制御部
２１０  操作特定部
３００  表示装置
【図１】
2017041002.tif 000003
【図２】
2017041002.tif 000004
【図３】
2017041002.tif 000005
【図４】
2017041002.tif 000006
【図５】
2017041002.tif 000007
【図６】
2017041002.tif 000008
【図７】
2017041002.tif 000009
【図８】
2017041002.tif 000010
【図９】
2017041002.tif 000011
【図１０】
2017041002.tif 000012
【図１１】
2017041002.tif 000013
【図１２】
2017041002.tif 000014
【図１３】
2017041002.tif 000015
【図１４】
2017041002.tif 000016
【図１５】
2017041002.tif 000017
【図１６】
2017041002.tif 000018
【図１７】
2017041002.tif 000019