IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ シャープ株式会社の特許一覧

特許7602977入力装置、入力方法、及び入力プログラム
<>
  • 特許-入力装置、入力方法、及び入力プログラム 図1
  • 特許-入力装置、入力方法、及び入力プログラム 図2
  • 特許-入力装置、入力方法、及び入力プログラム 図3
  • 特許-入力装置、入力方法、及び入力プログラム 図4
  • 特許-入力装置、入力方法、及び入力プログラム 図5
  • 特許-入力装置、入力方法、及び入力プログラム 図6
  • 特許-入力装置、入力方法、及び入力プログラム 図7
  • 特許-入力装置、入力方法、及び入力プログラム 図8
  • 特許-入力装置、入力方法、及び入力プログラム 図9
  • 特許-入力装置、入力方法、及び入力プログラム 図10
  • 特許-入力装置、入力方法、及び入力プログラム 図11
  • 特許-入力装置、入力方法、及び入力プログラム 図12
  • 特許-入力装置、入力方法、及び入力プログラム 図13
  • 特許-入力装置、入力方法、及び入力プログラム 図14
  • 特許-入力装置、入力方法、及び入力プログラム 図15
  • 特許-入力装置、入力方法、及び入力プログラム 図16
  • 特許-入力装置、入力方法、及び入力プログラム 図17
  • 特許-入力装置、入力方法、及び入力プログラム 図18
  • 特許-入力装置、入力方法、及び入力プログラム 図19
  • 特許-入力装置、入力方法、及び入力プログラム 図20
  • 特許-入力装置、入力方法、及び入力プログラム 図21
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-11
(45)【発行日】2024-12-19
(54)【発明の名称】入力装置、入力方法、及び入力プログラム
(51)【国際特許分類】
   G06F 3/0346 20130101AFI20241212BHJP
   G06F 3/04842 20220101ALI20241212BHJP
   G06F 3/01 20060101ALI20241212BHJP
【FI】
G06F3/0346 422
G06F3/04842
G06F3/01 570
【請求項の数】 10
(21)【出願番号】P 2021114051
(22)【出願日】2021-07-09
(65)【公開番号】P2023010138
(43)【公開日】2023-01-20
【審査請求日】2024-03-21
【新規性喪失の例外の表示】特許法第30条第2項適用 1.リテールテック JAPAN 2021 令和3年3月9日発表 2.シャープドキュメントサークル 令和3年4月22日発表
(73)【特許権者】
【識別番号】000005049
【氏名又は名称】シャープ株式会社
(74)【代理人】
【識別番号】100167302
【弁理士】
【氏名又は名称】種村 一幸
(74)【代理人】
【識別番号】100135817
【弁理士】
【氏名又は名称】華山 浩伸
(72)【発明者】
【氏名】松岡 輝彦
(72)【発明者】
【氏名】石倉 知弥
(72)【発明者】
【氏名】高島 真彦
【審査官】仲野 一秀
(56)【参考文献】
【文献】特開2017-41002(JP,A)
【文献】特開2017-33144(JP,A)
【文献】国際公開第2015/015843(WO,A1)
【文献】特開2018-5663(JP,A)
【文献】特開2012-108762(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/0346
G06F 3/04812
G06F 3/01
(57)【特許請求の範囲】
【請求項1】
ユーザーの手によるジェスチャー操作を検出して表示画面の入力位置に対して入力処理を行う入力装置であって、
前記ユーザーを撮像した撮像画像を取得する取得処理部と、
前記取得処理部により取得される前記撮像画像から前記ユーザーの手を検出する検出処理部と、
前記検出処理部により検出される前記ユーザーの手の形状を判定する判定処理部と、
前記検出処理部により検出される前記ユーザーの手を囲む特定領域の下辺の所定位置に基準点を設定する基準点設定処理部と、
前記検出処理部により検出される前記ユーザーの手の形状が所定の形状である場合に、前記基準点設定処理部により設定される前記基準点に対応する前記入力位置に対して前記入力処理を実行する入力処理部と、
を備える入力装置。
【請求項2】
前記基準点設定処理部は、前記特定領域の下辺における一方の端部から他方の端部までの間を所定の比率で分割した位置を前記基準点に設定する、
請求項1に記載の入力装置。
【請求項3】
前記基準点設定処理部は、前記特定領域の下辺の中心位置を前記基準点に設定する、
請求項2に記載の入力装置。
【請求項4】
前記基準点設定処理部は、前記特定領域の下辺における前記ユーザーの手の小指側の端部から1:2の比率の位置を前記基準点に設定する、
請求項2に記載の入力装置。
【請求項5】
前記基準点設定処理部は、前記特定領域に含まれる複数の画素のうち前記ユーザーの手の色を表示する特定画素を特定し、前記特定領域の上辺から下辺に向かう列方向の画素列ごとの前記特定画素の合計画素数を算出し、前記下辺のうち前記合計画素数が閾値を超える前記画素列の範囲に対応する部分辺の中心位置を前記基準点に設定する、
請求項2に記載の入力装置。
【請求項6】
前記表示画面の下端から所定幅だけ内側に設定された入力可能領域内において、前記基準点に対応する前記入力位置に入力操作用アイコンを表示させる表示処理部をさらに備える、
請求項1から請求項5のいずれか1項に記載の入力装置。
【請求項7】
前記入力処理部は、前記検出処理部により検出される前記ユーザーの手の形状が第1形状である場合に、前記基準点の移動に応じて、前記表示画面に表示される入力操作用アイコンを移動させる移動処理を実行し、前記検出処理部により検出される前記ユーザーの手の形状が前記第1形状から第2形状に変化した場合に、前記基準点に対応する前記入力操作用アイコンの表示位置における選択対象の選択処理を実行する、
請求項1から請求項6のいずれか1項に記載の入力装置。
【請求項8】
前記特定領域は、前記ユーザーの手を囲む矩形領域である、
請求項1から請求項7のいずれか1項に記載の入力装置。
【請求項9】
ユーザーの手によるジェスチャー操作を検出して表示画面の入力位置に対して入力処理を行う入力方法であって、
一又は複数のプロセッサーが、
前記ユーザーを撮像した撮像画像を取得する取得ステップと、
前記取得ステップにより取得される前記撮像画像から前記ユーザーの手を検出する検出ステップと、
前記検出ステップにおいて検出される前記ユーザーの手の形状を判定する判定ステップと、
前記検出ステップにおいてより検出される前記ユーザーの手を囲む特定領域の下辺の所定位置に基準点を設定する設定ステップと、
前記検出ステップにより検出される前記ユーザーの手の形状が所定の形状である場合に、前記設定ステップにより設定される前記基準点に対応する前記入力位置に対して前記入力処理を実行する入力ステップと、
を実行する入力方法。
【請求項10】
ユーザーの手によるジェスチャー操作を検出して表示画面の入力位置に対して入力処理を行う入力プログラムであって、
前記ユーザーを撮像した撮像画像を取得する取得ステップと、
前記取得ステップにより取得される前記撮像画像から前記ユーザーの手を検出する検出ステップと、
前記検出ステップにおいて検出される前記ユーザーの手の形状を判定する判定ステップと、
前記検出ステップにおいてより検出される前記ユーザーの手を囲む特定領域の下辺の所定位置に基準点を設定する設定ステップと、
前記検出ステップにより検出される前記ユーザーの手の形状が所定の形状である場合に、前記設定ステップにより設定される前記基準点に対応する前記入力位置に対して前記入力処理を実行する入力ステップと、
を一又は複数のプロセッサーに実行させるための入力プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ユーザーの手によるジェスチャー操作を検出して表示画面の入力位置に対して入力処理を行う入力装置、入力方法、及び入力プログラムに関する。
【背景技術】
【0002】
従来、表示パネルの表示画面に対してジェスチャー操作による入力(画面操作)を行なうことが可能な入力装置が知られている。例えば、特許文献1には、仮想空間内のユーザーの手を撮像した画像から手の形状、動き、及び位置の少なくともいずれかを把握して、入力情報を判定する装置が開示されている。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2000-75991号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ここで、前記入力装置は、例えばユーザーの手によるジェスチャー操作により指示された表示画面上の位置(入力位置)を、手の位置に基づいて特定する。例えば、前記入力装置は、ユーザーの指の関節の位置や、ジェスチャー操作時の手を投影した全体領域の中心(重心)位置などを入力位置として特定する。しかし、この方法では、例えばユーザーが手を開く操作(第1ジェスチャー操作)から手を閉じる(握る)操作(第2ジェスチャー操作)に変化させた場合に前記入力位置がユーザーの意図しない方向に変化する問題が生じる。
【0005】
本発明の目的は、ユーザーのジェスチャー操作を検出して表示画面の入力位置に対して入力処理を行う入力装置においてユーザーのジェスチャー操作の変化によって入力位置がユーザーの意図しない方向に変化することを防止することが可能な入力装置、入力方法、及び入力プログラムを提供することにある。
【課題を解決するための手段】
【0006】
本発明の一の態様に係る入力装置は、ユーザーの手によるジェスチャー操作を検出して表示画面の入力位置に対して入力処理を行う入力装置であって、前記ユーザーを撮像した撮像画像を取得する取得処理部と、前記取得処理部により取得される前記撮像画像から前記ユーザーの手を検出する検出処理部と、前記検出処理部により検出される前記ユーザーの手の形状を判定する判定処理部と、前記検出処理部により検出される前記ユーザーの手を囲む特定領域の下辺の所定位置に基準点を設定する基準点設定処理部と、前記検出処理部により検出される前記ユーザーの手の形状が所定の形状である場合に、前記基準点設定処理部により設定される前記基準点に対応する前記入力位置に対して前記入力処理を実行する入力処理部と、を備える装置である。
【0007】
本発明の他の態様に係る入力方法は、ユーザーの手によるジェスチャー操作を検出して表示画面の入力位置に対して入力処理を行う入力方法であって、一又は複数のプロセッサーが、前記ユーザーを撮像した撮像画像を取得する取得ステップと、前記取得ステップにより取得される前記撮像画像から前記ユーザーの手を検出する検出ステップと、前記検出ステップにおいて検出される前記ユーザーの手の形状を判定する判定ステップと、前記検出ステップにおいてより検出される前記ユーザーの手を囲む特定領域の下辺の所定位置に基準点を設定する設定ステップと、前記検出ステップにより検出される前記ユーザーの手の形状が所定の形状である場合に、前記設定ステップにより設定される前記基準点に対応する前記入力位置に対して前記入力処理を実行する入力ステップと、を実行する方法である。
【0008】
本発明の他の態様に係る入力プログラムは、前記ユーザーを撮像した撮像画像を取得する取得ステップと、前記取得ステップにより取得される前記撮像画像から前記ユーザーの手を検出する検出ステップと、前記検出ステップにおいて検出される前記ユーザーの手の形状を判定する判定ステップと、前記検出ステップにおいてより検出される前記ユーザーの手を囲む特定領域の下辺の所定位置に基準点を設定する設定ステップと、前記検出ステップにより検出される前記ユーザーの手の形状が所定の形状である場合に、前記設定ステップにより設定される前記基準点に対応する前記入力位置に対して前記入力処理を実行する入力ステップと、を一又は複数のプロセッサーに実行させるためのプログラムである。
【発明の効果】
【0009】
本発明によれば、ユーザーのジェスチャー操作を検出して表示画面の入力位置に対して入力処理を行う入力装置においてユーザーのジェスチャー操作の変化によって入力位置がユーザーの意図しない方向に変化することを防止することが可能な入力装置、入力方法、及び入力プログラムを提供することができる。
【図面の簡単な説明】
【0010】
図1図1は、本発明の実施形態に係る表示装置の構成を示すブロック図である。
図2図2は、本発明の実施形態に係る表示装置における表示画面13Aの一例を示す模式図である。
図3図3は、本発明の実施形態に係る表示装置に表示される撮像画像の一例を示す図である。
図4図4は、本発明の実施形態に係る第1設定方法による基準点の設定方法を示す図である。
図5図5は、本発明の実施形態に係る表示装置に表示される撮像画像の一例を示す図である。
図6図6は、本発明の実施形態に係る第1設定方法による基準点の設定方法を示す図である。
図7図7は、本発明の実施形態に係る第2設定方法による基準点の設定方法を示す図である。
図8図8は、本発明の実施形態に係る第3設定方法による基準点の設定方法を示す図である。
図9図9は、本発明の実施形態に係る表示装置に表示される撮像画像内の矩形領域の一例を示す図である。
図10図10は、本発明の実施形態に係る表示装置に表示される撮像画像内の操作領域の一例を示す図である。
図11図11は、本発明の実施形態に係る表示装置に表示される撮像画像内の操作領域の一例を示す図である。
図12図12は、本発明の実施形態に係る第1算出方法による入力位置の算出方法を示す図である。
図13図13は、本発明の実施形態に係る第2算出方法による入力位置の算出方法を示す図である。
図14図14は、本発明の実施形態に係る第3算出方法による入力位置の算出方法を示す図である。
図15図15は、本発明の実施形態に係る表示装置で実行される表示制御処理の手順の一例を説明するためのフローチャートである。
図16図16は、本発明の実施形態に係る第1設定方法による基準点設定処理の手順の一例を説明するためのフローチャートである。
図17図17は、本発明の実施形態に係る第2設定方法による基準点設定処理の手順の一例を説明するためのフローチャートである。
図18図18は、本発明の実施形態に係る第3設定方法による基準点設定処理の手順の一例を説明するためのフローチャートである。
図19図19は、本発明の実施形態に係る第1算出方法による入力位置算出処理の手順の一例を説明するためのフローチャートである。
図20図20は、本発明の実施形態に係る第2算出方法による入力位置算出処理の手順の一例を説明するためのフローチャートである。
図21図21は、本発明の実施形態に係る第3算出方法による入力位置算出処理の手順の一例を説明するためのフローチャートである。
【発明を実施するための形態】
【0011】
以下、添付図面を参照しながら、本発明の実施形態について説明する。なお、以下の実施形態は、本発明を具体化した一例であって、本発明の技術的範囲を限定する性格を有さない。
【0012】
図1に示すように、本発明の実施形態に係る表示装置1は、制御部11と、記憶部12と、表示パネル13と、操作部14と、カメラ15とを備えている。図2には、表示装置1の模式図を示している。カメラ15は、表示パネル13の上部に設置され、表示パネル13の前方の所定エリアを撮像する。表示装置1は、本発明の入力装置の一例である。本発明の入力装置は、表示装置に限定されず、表示パネル13及びカメラ15とデータ通信可能なサーバーなどの情報処理装置であってもよい。
【0013】
表示装置1は、表示画面13Aに対するユーザーの非接触による入力操作を受け付ける。例えば、表示装置1は、カメラ15の前方においてユーザーのジェスチャーによる入力操作(ジェスチャー操作)を検出すると、表示画面13Aに対するユーザーの前記入力操作に応じた入力処理を実行する。例えば、ユーザーがカメラ15の前方で手を閉じる操作(グーの状態)をした場合に、表示装置1は、表示画面13A上のマウスカーソルM1の位置においてタッチ入力を受け付ける。以下、表示装置1の具体的構成について説明する。
【0014】
カメラ15は、被写体の画像を撮像してデジタル画像データとして出力するデジタルカメラである。カメラ15は、所定のフレームレートで画像を撮像し、デジタル画像データを制御部11に順次出力する。カメラ15は、1台であってもよいし複数台であってもよい。具体的には、カメラ15は、表示パネル13の上部に設置され、表示パネル13の前方の所定エリアを撮像する。
【0015】
表示パネル13は、表示画面13Aに画像を表示するディスプレイであり、例えば液晶ディスプレイである。操作部14は、マウス、キーボードなどの操作機器である。なお、操作部14は、タッチパネルで構成されてもよい。
【0016】
表示パネル13は、制御部11の指示に従って各種の画像を表示する。例えば図2に示すように、表示パネル13は、ユーザーの手に追従して移動するマウスカーソルM1(本発明の入力操作用アイコンの一例)、ユーザーの手による所定のジェスチャー操作に応じてタッチ入力を受け付ける操作ボタン(ここでは「Yes」ボタン、「No」ボタン)、カメラ15が撮像した撮像画像Wp(ワイプ画面)などを表示する。図3には、撮像画像Wpの拡大図を示している。詳細は後述するが、撮像画像Wpには、ユーザーの手を囲む矩形領域A1(本発明の特定領域の一例)の外枠を表す枠画像と、表示画面13Aにおける入力可能な入力可能領域F1(図2参照)に対応する操作領域A11の外枠を表す枠画像とが表示される。ユーザーは、表示画面13Aに重ねて表示される撮像画像Wpを見ながら、マウスカーソルM1の位置を移動させたり、マウスカーソルM1により操作ボタンを選択(クリック)したりする。例えば、ユーザーは、手を開いた状態(パーの状態)(図3参照)で動かすことによりマウスカーソルM1の表示位置を移動させ、マウスカーソルM1が「Yes」ボタンに重なる位置にある場合に手を閉じた状態(グーの状態)(図5参照)にすることにより「Yes」ボタンを選択(クリック)する。手を開く操作は本発明の第1ジェスチャー操作の一例であり、手を閉じる操作は本発明の第2ジェスチャー操作の一例である。
【0017】
記憶部12は、各種の情報を記憶するHDD(Hard Disk Drive)又はSSD(Solid State Drive)などの不揮発性の記憶部である。記憶部12には、制御部11に後述の表示制御処理(図15等参照)を実行させるための表示制御プログラムなどの制御プログラムが記憶されている。例えば、前記表示制御プログラムは、CD又はDVDなどのコンピュータ読取可能な記録媒体に非一時的に記録され、表示装置1が備えるCDドライブ又はDVDドライブなどの読取装置(不図示)で読み取られて記憶部12に記憶される。なお、前記表示制御プログラムは、クラウドサーバーから配信されて記憶部12に記憶されてもよい。
【0018】
制御部11は、CPU、ROM、及びRAMなどの制御機器を有する。前記CPUは、各種の演算処理を実行するプロセッサーである。前記ROMは、前記CPUに各種の演算処理を実行させるためのBIOS及びOSなどの制御プログラムが予め記憶される不揮発性の記憶部である。前記RAMは、各種の情報を記憶する揮発性又は不揮発性の記憶部であり、前記CPUが実行する各種の処理の一時記憶メモリー(作業領域)として使用される。そして、制御部11は、前記ROM又は記憶部12に予め記憶された各種の制御プログラムを前記CPUで実行することにより表示装置1を制御する。
【0019】
ところで、従来の技術では、例えばユーザーが手を開く操作(図3参照)から手を閉じる操作(図5参照)に変化させた場合に表示画面13Aに対する入力位置がユーザーの意図しない方向に変化する問題が生じる。以下、この問題の具体例を説明する。
【0020】
図4には、手を開いた状態の拡大図を示し、図6には、手を閉じた状態の拡大図を示している。従来の技術では、ジェスチャー操作時の手を投影した全体領域(矩形領域A1)の中心位置P0を入力位置として特定しているため、手を開いた状態から閉じた状態に変化させた場合に、図6に示すように中心位置P0が矩形領域A2の中心位置P0´に移動してしまう。このため、ユーザーが手を開いた状態から閉じた状態に変化させた場合に、中心位置P0に対応するマウスカーソルM1の位置も移動してしまい、ユーザーが意図した操作、例えば「Yes」ボタンの選択操作を正しく行うことができなくなる。これに対して、本実施形態に係る表示装置1では、以下に示すように、ユーザーのジェスチャー操作の変化によって入力位置がユーザーの意図しない方向に変化することを防止することが可能である。
【0021】
具体的に、制御部11は、図1に示すように、表示処理部111、取得処理部112、検出処理部113、判定処理部114、基準点設定処理部115、操作領域設定処理部116、仮想入力可能領域設定処理部117、及び入力処理部118などの各種の処理部を含む。なお、制御部11は、前記CPUで前記表示制御プログラム及びに従った各種の処理を実行することによって各処理部として機能する。また、制御部11に含まれる一部又は全部の処理部が電子回路で構成されていてもよい。なお、前記表示制御プログラムは、複数のプロセッサーを前記各種の処理部として機能させるためのプログラムであってもよい。
【0022】
表示処理部111は、各種情報を表示パネル13に表示させる。表示処理部111は、各種アプリケーションの実行に従って各種画像を表示させる。例えば、表示処理部111は、図2に示す表示画面13Aを表示パネル13に表示させる。また、表示処理部111は、撮像画像Wpを表示画面13Aの端部(隅部)に表示させる。撮像画像Wpは、カメラ15により撮像された所定エリアの撮像画像のうち、検出されたユーザーの顔画像を含む特定の範囲の部分画像である。表示処理部111は、表示画面13Aの隅部の小画面に撮像画像Wpを表示させる。また、表示処理部111は、カメラ15から取得される撮像画像に応じて撮像画像Wpをリアルタイムで更新する。また、表示処理部111は、表示画面13Aにおいて、撮像画像Wpを表示させるとともに、操作領域A11に対応する枠画像(本発明の操作領域画像の一例)を撮像画像Wpに重ねて表示させる。なお、撮像画像Wpの表示位置は限定されない。また表示処理部111は、ユーザーの顔又は手が検出されたことを条件として撮像画像Wpを表示させてもよい。
【0023】
また、表示処理部111は、表示画面13Aの下端から所定幅だけ内側に設定された入力可能領域F1内において、基準点P1に対応する入力位置にマウスカーソルM1(入力操作用アイコン)を表示させる。前記所定幅は、例えば撮像画像Wpの縦幅に設定される。ユーザーは、入力可能領域F1内においてマウスカーソルM1を移動させることが可能である。表示処理部111は、本発明の表示処理部の一例である。
【0024】
取得処理部112は、ユーザーを撮像した撮像画像を取得する。具体的には、取得処理部112は、カメラ15が所定のフレームレートで撮像した画像のデジタル画像データをカメラ15から順次取得する。取得処理部112は、本発明の取得処理部の一例である。
【0025】
検出処理部113は、取得処理部112により取得される前記撮像画像からユーザー(例えば顔)を検出する。また、検出処理部113は、前記撮像画像からユーザーの手を検出する。ユーザーの顔及び手を検出する方法は、周知の方法を適用することができる。例えば、検出処理部113は、デジタル画像データに対してクロップ、リサイズ、反転、回転などの処理を実行し、ユーザーの顔及び手を検出する。検出処理部113は、手を検出すると、手の動きをトラッキング(追跡)する。検出処理部113は、本発明の検出処理部の一例である。
【0026】
判定処理部114は、検出処理部113により検出されるユーザーの手の形状を判定する。例えば、判定処理部114は、ユーザーの手が開いた状態(パーの状態)(図3参照)であるか、又は、閉じた状態(グーの状態)(図5参照)であるかを判定する。また、判定処理部114は、検出処理部113により検出されるユーザーの手が右手であるか、又は、左手であるかを判定する。判定処理部114は、本発明の判定処理部の一例である。
【0027】
基準点設定処理部115は、検出処理部113により検出されるユーザーの手を囲む矩形領域A1の下辺の所定位置に基準点P1を設定する。具体的には、基準点設定処理部115は、矩形領域A1の下辺における一方の端部E1から他方の端部E2までの間を所定の比率で分割した位置を基準点P1に設定する。基準点設定処理部115は、本発明の基準点設定処理部の一例である。
【0028】
基準点P1は、表示画面13Aにおける入力位置に対応する仮想空間の位置である。入力処理部118は、基準点P1に対応する入力位置に対して入力処理を実行する。具体的には、入力処理部118は、検出処理部113により検出されるユーザーの手の形状が所定の形状である場合に、基準点設定処理部115により設定される基準点P1に対応する入力位置に対して入力処理を実行する。例えば、入力処理部118は、表示画面13Aにおいて、基準点P1を表示画面13Aに対応する領域にマッピングした位置にマウスカーソルM1を表示させる。入力処理部118は、本発明の入力処理部の一例である。
【0029】
以下、基準点P1の具体的な設定方法を説明する。ここでは、前記設定方法の具体例として、第1設定方法、第2設定方法、及び第3設定方法を挙げる。
【0030】
[第1設定方法]
図4には、第1設定方法の一例を示している。図4に示すように、基準点設定処理部115は、矩形領域A1の下辺L1の中心位置を基準点P1に設定する。ここで、矩形領域A1は、手が開いた状態で手の最外端部に接する矩形の領域であり、基準点P1は手が開いた状態における矩形領域A1の下辺L1の中心位置である。このため、図6に示すように、手を閉じた状態にした場合でも、基準点P1の位置は変化しない。このように、基準点設定処理部115は、手の形状の変化に関わらず、手が開いた状態における矩形領域A1の下辺L1の中心位置を基準点P1に設定する。なお、基準点設定処理部115は、手が閉じた状態における矩形領域A1の下辺L1の中心位置を基準点P1に設定してもよい。
【0031】
第1設定方法では、入力処理部118は、矩形領域A1の下辺L1の中心位置の座標を入力位置の座標として算出する。例えば、矩形領域A1の横幅をW1、縦幅をH1、左上端部E0を原点[x,y]とした場合に、入力処理部118は、基準点P1の座標として、[x+(W1)/2,y+H1]を算出する。入力処理部118は、算出した基準点P1の座標に基づいてマウスカーソルM1の位置座標を算出する。表示処理部111は、表示画面13Aにおいて、算出された位置座標にマウスカーソルM1を表示させる。
【0032】
[第2設定方法]
図7には、第2設定方法の一例を示している。図7に示すように、基準点設定処理部115は、矩形領域A1の下辺L1におけるユーザーの手の小指側の端部から1:2の比率の位置を基準点P1に設定する。ここで、手を開いた状態(図4参照)から手を閉じた状態(図6参照)に変化させると、中心位置P0の横方向位置は小指側に移動する。この移動量は、親指の面積及び移動量の影響を受け易い。そこで、基準点設定処理部115は、矩形領域A1のうち親指側から1/3の領域を親指の領域と仮定し、親指の領域を除く掌の領域(矩形領域A1のうち小指側の2/3の領域)を抽出し、当該掌の領域の下辺L1の中心位置を基準点P1に設定する。すなわち、基準点設定処理部115は、矩形領域A1の下辺L1におけるユーザーの手の小指側の端部E1から1:2の比率の位置を基準点P1に設定する。
【0033】
第2設定方法では、入力処理部118は、矩形領域A1の下辺L1におけるユーザーの手の小指側の端部E1から1:2の比率の座標を入力位置の座標として算出する。例えば、入力処理部118は、基準点P1の座標として、[x+(W1)/3,y+H1]を算出する。入力処理部118は、算出した基準点P1の座標に基づいてマウスカーソルM1の位置座標を算出する。表示処理部111は、表示画面13Aにおいて、算出された位置座標にマウスカーソルM1を表示させる。
【0034】
[第3設定方法]
図8には、第3設定方法の一例を示している。図8に示すように、基準点設定処理部115は、矩形領域A1に含まれる複数の画素のうちユーザーの手の色を表示する特定画素を特定し、矩形領域A1の上辺から下辺L1に向かう列方向の画素列ごとの前記特定画素の合計画素数を算出し、下辺L1のうち前記合計画素数が閾値Cthを超える前記画素列の範囲に対応する部分辺の中心位置Xcを基準点P1に設定する。図8に示すグラフは、画素列ごとの前記特定画素の合計画素数を示している。基準点設定処理部115は、合計画素数が閾値Cthを超える画素列の最小位置Xmin及び最大位置Xmaxを算出し、最小位置Xminから最大位置Xmaxまでの部分辺の中心位置Xcを算出する。そして、基準点設定処理部115は、算出した中心位置Xcを基準点P1に設定する。
【0035】
第3設定方法では、入力処理部118は、下辺L1のうち前記合計画素数が閾値Cthを超える前記画素列の範囲に対応する部分辺の中心位置Xcの座標を入力位置の座標として算出する。例えば、前記最小位置の座標を[Xmin,y+H1]とした場合に、入力処理部118は、基準点P1の座標として、[Xmin+(Xmax-Xmin)/2,y+H1]を算出する。入力処理部118は、算出した基準点P1の座標に基づいてマウスカーソルM1の位置座標を算出する。表示処理部111は、表示画面13Aにおいて、算出された位置座標にマウスカーソルM1を表示させる。
【0036】
基準点設定処理部115は、上述の第1設定方法、第2設定方法、及び第3設定方法のいずれかの方法により基準点P1を設定する。
【0037】
前記各設定方法によれば、基準点P1を矩形領域A1の下辺L1上に設定することにより、縦方向の位置ズレを生じ難くすることができる。また、手を開いた状態(第1ジェスチャー操作)の形状の矩形領域A1の情報を使用することにより、手を閉じた状態(第2ジェスチャー操作)の形状の矩形領域A2(図6参照)に変化した場合であっても、マウスカーソルM1の位置ズレを防止することができる。
【0038】
また、前記第1設定方法によれば、基準点P1を下辺L1の中心に固定することができるため、入力位置の計算量を少なくすることができる。よって、CPUの処理能力が低い場合や、処理の高速化が必要とされる場合に有効である。
【0039】
また、前記第2設定方法によれば、親指の領域が手の矩形領域A1の約1/3の領域と想定することにより、領域の変化の少ない掌の領域に着目して基準点P1を設定することができる。よって、横方向の入力位置を高精度かつ安定的に算出することができる。
【0040】
また、前記第3設定方法によれば、親指の領域を除外することにより、掌の領域に絞り込んで基準点P1を設定することができる。よって、横方向の入力位置をより高精度かつ安定的に算出することができる。
【0041】
入力処理部118は、基準点設定処理部115により上述したいずれかの設定方法により設定される基準点P1に対応する入力位置に対して入力処理を実行する。具体的には、入力処理部118は、検出処理部113により検出されるユーザーの手の形状が手を開いた形状(第1形状)である場合に、基準点P1の移動に応じて、表示画面13Aに表示されるマウスカーソルM1を移動させる移動処理を実行する。また、入力処理部118は、検出処理部113により検出されるユーザーの手の形状が手を開いた形状から閉じた形状(第2形状)に変化した場合に、基準点P1に対応するマウスカーソルM1の表示位置における選択対象(例えば図2の「Yes」ボタン又は「No」ボタン)の選択処理を実行する。
【0042】
ここで、表示装置1は、例えばユーザーの手によるジェスチャー操作により指示された表示画面13A上の位置(入力位置)を、手の位置に基づいて特定する。ユーザーは、表示画面13Aに表示されるマウスカーソルM1を見ながら手を動かしたり手の形状を変化させたりすることによって入力操作を行う。しかし、従来の技術では、ユーザーは、自身の手を動かす範囲と、ユーザーの手の動きに応じて表示画面13A上で移動するマウスカーソルM1の表示画面13A内で移動可能な範囲との対応関係を把握し難い問題が生じる。例えばユーザーは、自身の手を所定距離だけ動かした場合に、表示画面13A上のマウスカーソルM1がどの程度移動するのかを把握し難い。このように、従来の技術では、ユーザーにとって操作性が低い問題がある。これに対して、本実施形態に係る表示装置1では、以下に示すように、表示装置1の操作性を向上させることが可能である。
【0043】
具体的には、操作領域設定処理部116は、検出処理部113により検出されるユーザーの手を含む領域であって、表示画面13A内のジェスチャー操作により入力可能な入力可能領域F1(図2参照)に対応するジェスチャー操作の操作領域A11を設定する。具体的には、操作領域設定処理部116は、検出処理部113がユーザーの手を検出すると手の外形を囲む矩形領域A1を設定し(図9参照)、予め設定されたマージンを用いて矩形領域A1よりも大きい操作領域A11を設定する(図10参照)。例えば、操作領域設定処理部116は、撮像画像Wpのうち前記検出された手の矩形領域A1を含む部分画像(W×3/5の領域)において、予め設定された上下左右のマージンm1~m4(図10参照)の位置に操作領域A11を設定する。また、操作領域設定処理部116は、左手又は右手を判定して、操作領域A11を設定する方向(左側又は右側)を決定する。なお、マージンm1~m4は、ユーザーが操作領域A11内の全領域において左右方向及び上下方向に手を移動させた場合に、マウスカーソルM1を入力可能領域F1(図2参照)内の全領域において左右方向及び上下方向に移動させることが可能となる値に設定される。
【0044】
また例えば、操作領域設定処理部116は、矩形領域A1の横幅W1の半分の長さ(W1)/2を矩形領域A1の小指側に加算し、矩形領域A1の縦幅H1の半分の長さ(H1)/2を矩形領域A1の上側に加算し、矩形領域A1の縦幅H1の長さを矩形領域A1の下側に加算した領域を操作領域A11に設定してもよい。操作領域設定処理部116は、本発明の第1設定処理部の一例である。
【0045】
ここで、手の矩形領域A1の下辺の位置(基準点P1)をマウスカーソルM1の位置に対応付けているため、基準点P1を基準として操作領域A11を設定するとユーザーが手を上方に動かした場合に手が操作領域A11より上側にはみ出る状態まで動かさないとマウスカーソルM1を表示画面13Aの上端まで移動させることができず、ユーザーに違和感を与えてしまう。そこで、操作領域A11を実際の位置よりも上側に表示させることにより、ユーザーが違和感なく操作領域A11内でマウスカーソルM1を移動させることを可能にする。具体的には、表示処理部111は、表示画面13Aにおいて、撮像画像Wpを表示させるとともに、操作領域A11の外枠を表す枠画像を撮像画像Wpに対して実際の位置よりも上側にずらして表示させる。例えば図11に示すように、表示処理部111は、表示画面13Aにおいて、操作領域A11の外枠を表す枠画像を撮像画像Wpに対して、矩形領域A1の上下方向の半分の幅h((H1)/2)分だけ実際の位置(図11の点線枠)よりも上側にずらして表示させる。これにより、ユーザーは、掌の中心位置がマウスカーソルM1の位置に対応する感覚で、手の動作に応じたマウスカーソルM1を移動させることが可能となる。
【0046】
仮想入力可能領域設定処理部117は、入力可能領域F1よりも大きい仮想入力可能領域F2(仮想画面)を設定する。例えば図12に示すように、表示画面13Aの横幅をW2、縦幅をH2とした場合に、仮想入力可能領域設定処理部117は、表示画面13Aの横幅W2の半分の長さ((W2)/2)を表示画面13Aの右側及び左側のそれぞれに加算し、表示画面13Aの縦幅H2の半分の長さ((H2)/2)を表示画面13Aの上側及び下側のそれぞれに加算した領域(入力可能領域F1の縦横2倍の領域)を仮想入力可能領域F2に設定する。仮想入力可能領域設定処理部117は、本発明の第2設定処理部の一例である。
【0047】
入力処理部118は、操作領域A11、入力可能領域F1、及び仮想入力可能領域F2を利用して、表示画面13Aにおける入力位置を算出して入力処理を実行する。
【0048】
以下、入力位置の具体的な算出方法を説明する。ここでは、前記算出方法の具体例として、第1算出方法、第2算出方法、及び第3算出方法を挙げる。
【0049】
[第1算出方法]
図12には、第1算出方法の一例を示している。図12に示すように、表示処理部111は、操作領域A11の外枠の枠画像を撮像画像Wp内に表示させる。また、入力処理部118は、基準点P1に対応する操作領域A11内の位置を仮想入力可能領域F2内に対応付けた位置を、前記入力位置として算出する。具体的には、入力処理部118は、操作領域A11の基準点P1を仮想入力可能領域F2にマッピングする。そして、マッピングした位置(マウスカーソルM1の位置)が入力可能領域F1内に収まっている場合は、入力処理部118は、当該位置を入力位置に決定し、当該入力位置にマウスカーソルM1を表示させる。一方、マッピングした位置(マウスカーソルM1の位置)が入力可能領域F1外にはみ出る場合には、入力処理部118は、入力可能領域F1内に再マッピングして、入力可能領域F1の端部の位置を入力位置に決定し、当該入力位置にマウスカーソルM1を表示させる。
【0050】
このように、第1算出方法では、入力処理部118は、操作領域A11と入力可能領域F1とをマッピングする際に、操作領域A11を実際の表示画面13Aの画面サイズに対して縦横2倍の仮想入力可能領域F2に対してマッピングを行い、入力可能領域F1外にマウスカーソルM1がマッピングされた場合には入力可能領域F1内に再マッピングする。
【0051】
[第2算出方法]
図13には、第2算出方法の一例を示している。図13に示すように、表示処理部111は、操作領域A11よりも大きい仮想操作領域B1の外枠の枠画像を撮像画像Wp内に表示させる。例えば、表示処理部111は、操作領域A11の横幅の半分の長さを操作領域A11の右側及び左側のそれぞれに加算し、操作領域A11の縦幅の半分の長さを操作領域A11の上側及び下側のそれぞれに加算した拡張領域(仮想操作領域B1)の枠画像を撮像画像Wp内に表示させる。すなわち、表示処理部111は、撮像画像Wpにおいて、操作領域A11の枠画像を表示させず、操作領域A11を拡張した仮想の仮想操作領域B1の枠画像を表示させる。これにより、ユーザーは、撮像画像Wp内に表示される仮想操作領域B1の枠画像を見ながら手を動かす。
【0052】
入力処理部118は、基準点P1に対応する操作領域A11内の位置を入力可能領域F1内に対応付けた位置を、前記入力位置として算出する。具体的には、入力処理部118は、操作領域A11の基準点P1を入力可能領域F1にマッピングする。そして、マッピングした位置(マウスカーソルM1の位置)が入力可能領域F1内に収まっている場合は、入力処理部118は、当該位置を入力位置に決定し、当該入力位置にマウスカーソルM1を表示させる。一方、マッピングした位置(マウスカーソルM1の位置)が入力可能領域F1外にはみ出る場合には、入力処理部118は、入力可能領域F1内に再マッピングして、入力可能領域F1の端部の位置を入力位置に決定し、当該入力位置にマウスカーソルM1を表示させる。
【0053】
このように、第2算出方法では、操作領域A11の大きさに対して縦横2倍の仮想操作領域B1の枠画像を撮像画像Wp内に表示させつつ、入力処理部118は、操作領域A11を入力可能領域F1にマッピングを行い、入力可能領域F1外にマウスカーソルM1がマッピングされた場合には入力可能領域F1内に再マッピングする。
【0054】
[第3算出方法]
図14には、第3算出方法の一例を示している。図14に示すように、表示処理部111は、前記第2算出方法と同様に、操作領域A11よりも大きい仮想操作領域B1の枠画像を撮像画像Wp内に表示させる。すなわち、表示処理部111は、撮像画像Wpにおいて、操作領域A11の枠画像を表示させず、仮想操作領域B1の枠画像を表示させる。また、入力処理部118は、基準点P1に対応する仮想操作領域B1内の位置を仮想入力可能領域F2内に対応付けた位置を、前記入力位置として算出する。具体的には、入力処理部118は、仮想操作領域B1の基準点P1を仮想入力可能領域F2にマッピングする。そして、マッピングした位置(マウスカーソルM1の位置)が入力可能領域F1内に収まっている場合は、入力処理部118は、当該位置を入力位置に決定し、当該入力位置にマウスカーソルM1を表示させる。一方、マッピングした位置(マウスカーソルM1の位置)が入力可能領域F1外にはみ出る場合には、入力処理部118は、入力可能領域F1内に再マッピングして、入力可能領域F1の端部の位置を入力位置に決定し、当該入力位置にマウスカーソルM1を表示させる。
【0055】
このように、第3算出方法では、操作領域A11の大きさに対して縦横2倍の仮想操作領域B1の枠画像を撮像画像Wp内に表示させつつ、入力処理部118は、仮想操作領域B1を仮想入力可能領域F2にマッピングを行い、入力可能領域F1外にマウスカーソルM1がマッピングされた場合には入力可能領域F1内に再マッピングする。
【0056】
入力処理部118は、上述の第1算出方法、第2算出方法、及び第3算出方法のいずれかの方法により入力位置を算出する。
【0057】
前記第1算出方法によれば、操作領域A11を入力可能領域F1に対して比較的狭く取ることになるため、ユーザーは、小さな手の動きによりマウスカーソルM1を移動させることができ、小さい領域内における手の動きにより表示画面13A全体にマウスカーソルM1を移動させることが可能となる。
【0058】
また、前記第2算出方法によれば、操作領域A11を入力可能領域F1に対して広めに取ることができるため、ユーザーは、前記第1算出方法よりも手の細かい動きをマウスカーソルM1の移動に反映させることができる。
【0059】
また、前記第3算出方法によれば、操作領域A11を入力可能領域F1に対して適度な大きさに取ることができるため、前記第1算出方法よりも手の細かい動きをマウスカーソルM1の移動に反映させることができ、かつ、前記第2算出方法ほど手や腕を動かさなくても、表示画面13A全体にマウスカーソルM1を移動させることが可能となる。
【0060】
また、前記各算出方法によれば、マウスカーソルM1が表示画面13Aからはみ出たり、表示画面13Aの下側の撮像画像Wp(ワイプ画面)にマウスカーソルM1が移動して誤動作を引き起こしたりすることを防止することができる。
【0061】
以上のように、表示装置1は、カメラ15の撮像画像からユーザーの手を検出すると、手の矩形領域A1の下辺L1上に所定の設定方法(前記第1~第3設定方法)により基準点P1を設定し、基準点P1を所定の算出方法(前記第1~第3算出方法)により入力可能領域F1における入力位置を算出して、算出した入力位置において、ユーザーのジェスチャー操作に応じた入力処理を実行する。
【0062】
[表示制御処理]
以下、図15を参照しつつ、表示装置1の制御部11によって実行される表示制御処理について説明する。
【0063】
なお、本発明は、前記表示制御処理に含まれる一又は複数のステップを実行する表示制御方法(本発明の入力方法の一例)の発明として捉えることができ、ここで説明する表示制御処理に含まれる一又は複数のステップが適宜省略されてもよい。なお、前記表示制御処理における各ステップは同様の作用効果を生じる範囲で実行順序が異なってもよい。さらに、ここでは制御部11が前記表示制御処理における各ステップを実行する場合を例に挙げて説明するが、複数のプロセッサーが当該表示制御処理における各ステップを分散して実行する表示制御方法も他の実施形態として考えられる。
【0064】
先ずステップS1において、制御部11は、カメラ15から撮像画像を取得したか否かを判定する。制御部11がカメラ15から撮像画像を取得すると(S1:Yes)、処理はステップS2に移行する。
【0065】
ステップS2において、制御部11は、ユーザーを検出したか否かを判定する。制御部11がユーザーを検出すると(S2:Yes)、処理はステップS3に移行する。
【0066】
ステップS3において、制御部11は、ユーザーの顔及び手を検出したか否かを判定する。制御部11がユーザーの顔及び手を検出すると(S3:Yes)、処理はステップS4に移行する。
【0067】
ステップS4において、制御部11は、撮像画像Wp(ワイプ画面)を表示画面13Aに表示させる。具体的には、制御部11は、カメラ15により撮像された所定エリアの撮像画像のうち、検出したユーザーの顔及び手を含む特定の範囲の部分画像(撮像画像Wp)を表示画面13Aの端部(隅部)に表示させる(図2参照)。また、制御部11は、撮像画像Wpに、ユーザーの手を囲む矩形領域A1を表す枠画像と、表示画面13Aの入力可能領域F1(図2参照)に対応する操作領域A11の枠画像(操作領域画像)とを重ねて表示させる(図3参照)。なお、表示処理部111は、操作領域A11の枠画像を撮像画像Wpに対して実際の位置よりも上側にずらして表示させてもよい(図11参照)。
【0068】
ステップS5において、制御部11は、基準点P1を設定する処理(基準点設定処理)を実行する。制御部11は、前記第1設定方法、前記第2設定方法、及び前記第3設定方法のいずれかの方法に対応する基準点設定処理を実行する。
【0069】
図16には、前記第1設定方法に対応する基準点設定処理の具体例を示している。具体的には、ステップS11において、制御部11は、カメラ15から取得した撮像画像から検出した手の検出結果を取得する。次にステップS12において、制御部11は、手の形状を判定する。例えば、制御部11が、手が開いた状態(パーの状態)の形状(第1形状)を判定した場合、処理はステップS13に移行する。一方、制御部11が、手が閉じた状態(グーの状態)の形状(第2形状)を判定した場合、処理はステップS121に移行する。
【0070】
ステップS13では、制御部11は、矩形領域A1の下辺L1の中心位置(図4参照)を基準点P1に設定する。ステップS13の後、処理はステップS6に移行する。
【0071】
ステップS121では、制御部11は、前回算出した第1形状(パーの状態)の位置(図6参照)を基準点P1に設定する。ステップS121の後、処理はステップS6に移行する。
【0072】
図17には、前記第2設定方法に対応する基準点設定処理の具体例を示している。具体的には、ステップS21において、制御部11は、カメラ15から取得した撮像画像から検出した手の検出結果を取得する。次にステップS22において、制御部11は、手の形状を判定する。例えば、制御部11が、手が開いた状態(パーの状態)の形状(第1形状)を判定した場合、処理はステップS23に移行する。一方、制御部11が、手が閉じた状態(グーの状態)の形状(第2形状)を判定した場合、処理はステップS221に移行する。
【0073】
ステップS23では、制御部11は、矩形領域A1の下辺L1におけるユーザーの手の小指側の端部から1:2の比率の位置(図7参照)を基準点P1に設定する。ステップS23の後、処理はステップS6に移行する。
【0074】
ステップS221では、制御部11は、前回算出した第1形状(パーの状態)の位置を基準点P1に設定する。ステップS221の後、処理はステップS6に移行する。
【0075】
図18には、前記第3設定方法に対応する基準点設定処理の具体例を示している。具体的には、ステップS31において、制御部11は、カメラ15から取得した撮像画像から検出した手の検出結果を取得する。次にステップS32において、制御部11は、手の形状を判定する。例えば、制御部11が、手が開いた状態(パーの状態)の形状(第1形状)を判定した場合、処理はステップS33に移行する。一方、制御部11が、手が閉じた状態(グーの状態)の形状(第2形状)を判定した場合、処理はステップS321に移行する。
【0076】
ステップS33では、制御部11は、矩形領域A1に含まれる複数の画素のうちユーザーの手の色を表示する特定画素を特定し、矩形領域A1の上辺から下辺L1に向かう列方向の画素列ごとの前記特定画素の合計画素数を算出する(図8参照)。次にステップS34において、制御部11は、下辺L1のうち前記合計画素数が閾値Cthを超える前記画素列を抽出する。次にステップS35において、制御部11は、抽出した画素列に対応する部分辺の最小位置Xmin及び最大位置Xmaxの座標を算出する。次にステップS36において、制御部11は、最小位置Xmin及び最大位置Xmaxの中心位置Xcを基準点P1に設定する。ステップS36の後、処理はステップS6に移行する。
【0077】
ステップS321では、制御部11は、前回算出した第1形状(パーの状態)の位置を基準点P1に設定する。ステップS321の後、処理はステップS6に移行する。
【0078】
ステップS6(図15参照)では、制御部11は、基準点P1に対応する入力位置を算出する処理(入力位置算出処理)を実行する。制御部11は、前記第1算出方法、前記第2算出方法、及び前記第3算出方法のいずれかの方法に対応する入力位置算出処理を実行する。
【0079】
図19には、前記第1算出方法に対応する入力位置算出処理の具体例を示している。なお、前記第1算出方法では、制御部11は、ステップS4(図15参照)において、操作領域A11の枠画像を撮像画像Wpに表示させる(図12参照)。
【0080】
ステップS41において、制御部11は、入力可能領域F1よりも大きい仮想入力可能領域F2を設定する(図12参照)。次にステップS42において、制御部11は、操作領域A11の基準点P1を仮想入力可能領域F2にマッピングする。
【0081】
次にステップS43において、制御部11は、仮想入力可能領域F2にマッピングした位置が入力可能領域F1内に収まっているか否かを判定する。仮想入力可能領域F2にマッピングした位置が入力可能領域F1内に収まっている場合(S43:Yes)、処理はステップS45に移行する。一方、仮想入力可能領域F2にマッピングした位置が入力可能領域F1内に収まっていない場合(S43:No)、処理はステップS44に移行する。
【0082】
ステップS44では、制御部11は、入力可能領域F1内に再マッピングする。その後、処理はステップS45に移行する。
【0083】
ステップS45では、制御部11は、マッピングした位置を入力位置に決定する。仮想入力可能領域F2にマッピングした位置が入力可能領域F1内に収まっている場合(S43:Yes)、制御部11は、当該位置を入力位置に決定する。仮想入力可能領域F2にマッピングした位置が入力可能領域F1内に収まっていない場合(S43:No)、制御部11は、入力可能領域F1の端部の位置を入力位置に決定する。その後、処理はステップS7に移行する。
【0084】
図20には、前記第2算出方法に対応する入力位置算出処理の具体例を示している。なお、前記第2算出方法では、制御部11は、ステップS4(図15参照)において、操作領域A11よりも大きい仮想操作領域B1の枠画像を撮像画像Wpに表示させる(図13参照)。
【0085】
ステップS51において、制御部11は、操作領域A11の基準点P1を入力可能領域F1にマッピングする。
【0086】
次にステップS52において、制御部11は、入力可能領域F1にマッピングした位置が入力可能領域F1内に収まっているか否かを判定する。入力可能領域F1にマッピングした位置が入力可能領域F1内に収まっている場合(S52:Yes)、処理はステップS54に移行する。一方、入力可能領域F1にマッピングした位置が入力可能領域F1内に収まっていない場合(S52:No)、処理はステップS53に移行する。
【0087】
ステップS53では、制御部11は、入力可能領域F1内に再マッピングする。その後、処理はステップS54に移行する。
【0088】
ステップS54では、制御部11は、マッピングした位置を入力位置に決定する。入力可能領域F1にマッピングした位置が入力可能領域F1内に収まっている場合(S52:Yes)、制御部11は、当該位置を入力位置に決定する。入力可能領域F1にマッピングした位置が入力可能領域F1内に収まっていない場合(S52:No)、制御部11は、入力可能領域F1の端部の位置を入力位置に決定する。その後、処理はステップS7に移行する。
【0089】
図21には、前記第3算出方法に対応する入力位置算出処理の具体例を示している。なお、前記第3算出方法では、制御部11は、ステップS4(図15参照)において、仮想操作領域B1の枠画像を撮像画像Wpに表示させる(図14参照)。
【0090】
ステップS61において、制御部11は、入力可能領域F1よりも大きい仮想入力可能領域F2を設定する(図14参照)。次にステップS62において、制御部11は、仮想操作領域B1の基準点P1を仮想入力可能領域F2にマッピングする。
【0091】
次にステップS63において、制御部11は、仮想入力可能領域F2にマッピングした位置が入力可能領域F1内に収まっているか否かを判定する。仮想入力可能領域F2にマッピングした位置が入力可能領域F1内に収まっている場合(S63:Yes)、処理はステップS65に移行する。一方、仮想入力可能領域F2にマッピングした位置が入力可能領域F1内に収まっていない場合(S63:No)、処理はステップS64に移行する。
【0092】
ステップS64では、制御部11は、入力可能領域F1内に再マッピングする。その後、処理はステップS65に移行する。
【0093】
ステップS65では、制御部11は、マッピングした位置を入力位置に決定する。仮想入力可能領域F2にマッピングした位置が入力可能領域F1内に収まっている場合(S63:Yes)、制御部11は、当該位置を入力位置に決定する。仮想入力可能領域F2にマッピングした位置が入力可能領域F1内に収まっていない場合(S63:No)、制御部11は、入力可能領域F1の端部の位置を入力位置に決定する。その後、処理はステップS7に移行する。
【0094】
ステップS7(図15参照)では、制御部11は、決定した入力位置に基づいて入力処理を実行する。具体的には、制御部11は、決定した入力位置にマウスカーソルM1を表示させる。また、例えば決定した入力位置が「Yes」ボタン上の位置であって、マウスカーソルM1が「Yes」ボタン上に位置する状態でユーザーが手を閉じる操作を行うと、制御部11は、「Yes」ボタン操作を受け付けて所定の処理を実行する。
【0095】
ステップS8において、制御部11は、ユーザーによる入力操作が終了したか否かを判定する。前記入力操作が終了した場合(S8:Yes)、制御部11は前記表示制御処理を終了する。前記入力操作が終了しない場合(S8:No)、制御部11はステップS1に戻る。以上のようにして、制御部11は、前記表示制御処理を実行する。
【0096】
以上説明したように、本実施形態に係る表示装置1は、ユーザーの手によるジェスチャー操作を検出して表示画面の入力位置に対して入力処理を行う。具体的には、表示装置1は、ユーザーを撮像した撮像画像を取得し、取得した前記撮像画像からユーザーの手を検出し、ユーザーの手の形状を判定する。また、表示装置1は、検出したユーザーの手を囲む特定領域(矩形領域A1)の下辺L1の所定位置に基準点P1を設定し、検出したユーザーの手の形状が所定の形状である場合に、設定した基準点P1を入力位置として入力処理を実行する。
【0097】
この構成によれば、手の形状(ジェスチャー操作)の変化(例えばパーの状態からグーの状態への変化)に関わらず、入力位置に対応する基準点P1を固定することができる。このため、ユーザーのジェスチャー操作の変化によって入力位置がユーザーの意図しない方向に変化することを防止することが可能となる。
【0098】
また、本実施形態に係る表示装置1は、ユーザーを撮像した撮像画像を取得し、取得した前記撮像画像からユーザーの手を検出し、検出したユーザーの手を含む領域であって、表示画面13A内のジェスチャー操作により入力可能な入力可能領域F1に対応するジェスチャー操作の操作領域A11を設定する。また表示装置1は、表示画面13Aにおいて、取得した撮像画像Wpを表示させるとともに、設定した操作領域A11に対応する操作領域画像(枠画像)を撮像画像Wpに重ねて表示させる。例えば、表示装置1は、操作領域A11の枠画像(図12参照)、又は、仮想操作領域B1(図13図14参照)を撮像画像Wpに表示させる。
【0099】
この構成によれば、ユーザーは、撮像画像Wpに表示される前記枠画像を確認することにより、自身の手を動かす範囲と、ユーザーの手の動きに応じて表示画面13A上で移動するマウスカーソルM1の表示画面13A内で移動可能な範囲との対応関係を把握し易くなる。よって、表示装置1の操作性を向上させることが可能となる。
【0100】
本発明は、上述した実施形態に示すように、前記第1~第3設定方法のいずれかを実行する処理と、前記第1~第3算出方法のいずれかを実行する処理とを備えた表示装置である。但し、本発明は上述の実施形態に限定されず、少なくとも前記第1~第3設定方法のいずれかを実行する処理を備えた表示装置であってもよい。また、本発明は、少なくとも前記第1~第3算出方法のいずれかを実行する処理を備えた表示装置であってもよい。
【0101】
なお、本発明の表示装置は、各請求項に記載された発明の範囲において、以上に示された各実施形態を自由に組み合わせること、或いは各実施形態を適宜、変形又は一部を省略することによって構成されることも可能である。
【符号の説明】
【0102】
1 :表示装置
11 :制御部
12 :記憶部
13 :表示パネル
13A :表示画面
14 :操作部
15 :カメラ
111 :表示処理部
112 :取得処理部
113 :検出処理部
114 :判定処理部
115 :基準点設定処理部
116 :操作領域設定処理部
117 :仮想入力可能領域設定処理部
118 :入力処理部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21