以下、本発明の一実施形態に係る電子機器について、図面を参照しながら詳細に説明する。以下に示す実施形態は本発明の実施形態の一例であって、本発明はこれらの実施形態に限定されるものではない。なお、本実施形態で参照する図面において、同一部分または同様な機能を有する部分には同一の符号または類似の符号(数字の後にA、Bなどを付しただけの符号)を付し、その繰り返しの説明は省略する場合がある。また、図面の寸法比率は説明の都合上実際の比率とは異なったり、構成の一部が図面から省略されたりする場合がある。
<第1実施形態>
本発明の第1実施形態に係る電子機器について、図面を参照しながら詳細に説明する。
[全体構成]
図1は、本発明の第1実施形態における電子機器1の構成を示す概略図である。電子機器1は、この例では、パーソナルコンピュータである。この電子機器1は、ユーザからの電子機器1に対する指示の入力を、キーボード13aまたはマウス13bによって受け付けるだけでなく、ユーザのジェスチャ(主に指を用いたジェスチャ)により受け付けることができるナチュラルインターフェイスを有する装置である。なお、電子機器1は、スマートフォン、携帯電話、テレビ、ゲーム機、セキュリティ装置など、ユーザの指示の入力を受け付けて、指示に応じた処理を実行する装置であればよい。
電子機器1は、情報処理装置10を有する。また、電子機器1は、操作部13(この例では、キーボード13aおよびマウス13b)、表示装置14、物体検知装置20、視線測定装置30および入力装置50を有する。これらの各構成は、情報処理装置10に有線または無線で接続されている。なお、これらの各構成の少なくとも一部の構成が一体の装置として構成されていてもよいし、全体の構成が一体の装置として構成されていてもよい。また、この例では視線測定装置30および入力装置50がなくてもよい。
情報処理装置10は、CPU(Central Processing Unit)11およびメモリ等の記憶部12を有する。CPU11は、記憶部12に記憶されているプログラムを実行することにより、入力解析機能など、様々な機能を実現する。入力解析機能とは、表示装置14に表示された画面を用いて複数の選択対象から一つの選択対象を確定する際に、ユーザの指の動きを解析して、少なくとも1つの選択対象を確定するための機能である。入力解析機能の詳細については後述する。この入力解析機能の他、CPU11によって実現される様々な機能により、電子機器1の各構成が制御される。
情報処理装置10において実行されるプログラムは、磁気記録媒体、光記録媒体、光磁気記録媒体、半導体メモリなどのコンピュータ読み取り可能な記録媒体に記憶した状態で提供されてもよい。また、各プログラムは、ネットワーク経由でダウンロードされてもよい。
操作部13は、ユーザによる操作を受け付けて、受け付けられた操作に応じた信号をCPU11に出力する。表示装置14は、CPU11の制御により画面の表示態様が制御される。入力解析機能によっては、例えば、図4に示す画面が表示装置14に表示される。
物体検知装置20は、パターン投影方式により、物体を検知して、その物体の形状を3次元で測定し、測定した結果を示す測定信号を出力する。物体検知装置20は、所定の検知範囲に存在する物体を検知する検知センサ21を有する。この例では、検知センサ21は、所定のパターン(ドットパターン、メッシュパターン等)で赤外光を照射する発光素子と、物体で反射することにより歪んだパターンの赤外光を受光して受光信号を出力する赤外光用イメージセンサとを有する深度センサである。物体検知装置20は、赤外光用イメージセンサから出力される受光信号を用いて、測定信号を出力する。したがって、測定信号は、検知センサ21から見た場合の物体の形状を反映している。
この例では、物体検知装置20における物体の検知にはパターン投影方式を用いていたが、レーザ干渉計等で用いられるTOF(Time of Flight)方式を用いてもよいし、赤外線等可視光以外を検出するイメージセンサまたは可視光用イメージセンサ等を1つ又は複数用いて撮影した結果得られる画像データを解析して検出する方式を用いてもよく、様々な公知の技術を用いることができる。また、複数の方式を組み合わせて用いてもよい。いずれの方式であっても、物体検知装置20は、検知範囲に存在する物体の形状を3次元座標で測定した結果を示す測定信号を出力する。
なお、この例では、物体検知装置20は、図1に示すように、電子機器1を使用するユーザからみて表示装置14の左側に設置され、矢印A1方向に検出センサ21が向けられている。そのため、ユーザの左側から右側(例えば、図1の左奥側から右手前側)に向けて赤外光が照射されて、電子機器1を使用するユーザと表示装置14との間の空間およびその周辺の空間が検知範囲となる。そのため、物体検知装置20の位置および検知センサ21の向きは、ユーザの右手を物体として検知するのに適した配置となっている。なお、この物体検知装置20の配置は一例であって、この配置に限定されるものではなく、検知すべき物体および後述するようにして座標が算出される物体の位置に応じて決められればよい。
視線測定装置30は、ユーザの視線方向を測定するための撮影をする装置である。視線測定装置30は、プルキニエ像を取得するためにユーザの眼に向けて赤外光を照射する発光素子と、ユーザの眼を含む領域を撮影するイメージセンサとを有する視線センサ31を有し、イメージセンサによる撮影結果を示す撮影信号を情報処理装置10に出力する。この撮影信号は、情報処理装置10において、ユーザの視線方向を測定するために用いられる。この例では、視線測定装置30は、図1に示すように表示装置14の上部に取り付けられている。
なお、視線方向の測定には、この例では、プルキニエ像を用いる角膜反射法により視線方向を測定する公知の方法を用いるが、強膜トラッカー法、EOG(Electro-oculography)法、サーチコイル法など他の公知の方法を用いてもよい。他の方法を用いる場合、視線測定装置30においては、視線方向の測定に用いる方法に応じた構成で、ユーザの視線の情報を取得するようにすればよい。
[情報処理装置10の機能構成]
図2は、本発明の第1実施形態における指示入力機能100の構成を示すブロック図である。指示入力機能100は、検知部110、座標算出部120、予測範囲算出部130および制御部200の各構成により実現される。
検知部110は、物体検知装置20から出力される測定信号に基づいて、検知対象となる物体に応じた検知データを出力する。検知データは、測定信号から検知範囲において検知された物体の形状(例えば輪郭)を認識可能なデータであれば、どのようなデータであってもよい。なお、検知部110は、物体検知装置20に含まれていてもよい。
座標算出部120は、検知部110から出力される検知データに基づいて、検知対象の物体の少なくとも一箇所の座標を算出する。この例では、座標算出部120は、手の少なくとも1本の指(人差し指)の先端部(指先)の3次元空間における座標(図3の座標Pf)を算出する。なお、座標が算出される指は、1本の指でなく、複数の指であってもよい。
予測範囲算出部130は、座標算出部120で算出された座標の変化に基づいて、以後にこの座標が変化すると予測される予測範囲を算出する。すなわち、予測範囲算出部130は、直前の所定の時間内において人差し指の指先が移動してきた軌跡の少なくとも一部を参照し、所定の演算を施して、今後に移動すると予測される範囲(図3の予測範囲ER)を算出する。
図3は、本発明の第1実施形態における情報処理装置10にユーザの指示を入力する方法の概要を説明する図である。図3に示すように、ユーザは、人差し指を立てた状態で手1000を動かす。手1000は、物体検知装置20により検知される。その結果、手1000の人差し指の指先の座標Pfが座標算出部120によって算出される。
手1000の移動により、図3に示すように、座標Pfが直前の所定時間内において軌跡TLのとおり変化した場合、この後に座標Pfが変化すると予測される予測範囲ERが予測範囲算出部130によって算出される。具体的には、予測範囲算出部130は、まず、軌跡TLを用いた所定の演算(例えば、最小二乗法等により得られる軌跡TLに近似した関数を算出し、その関数を用いた演算)により、以後に座標PFが移動する可能性の高い軌跡(予測軌跡)を算出する。そして、予測範囲算出部130は、予測軌跡から所定の距離までの範囲内を、予測範囲ERとして算出する。
この例では、予測範囲算出部130は、座標算出部120によって座標Pfが算出される度に予測範囲ERを算出するのではなく、座標Pfが複数回算出される時間が経過する度に予測範囲ERを算出する。
制御部200は、座標算出部120によって算出された座標Pfと、予測範囲算出部130によって算出された予測範囲ERとに基づいて、ユーザによる装置に対する指示の内容(以下、単にユーザ指示という場合がある)を判断し、その指示に応じた処理を実行する。なお、この例では、制御部200は、操作部13から出力された信号(ユーザによる操作部13の操作)、および視線測定装置30から出力された信号(ユーザの視線)に基づいて、ユーザ指示を判断してもよい。
また、制御部200は、記憶部12から各種情報を読み出して、各種処理を実行する。さらに、制御部200は、表示装置14に表示される画面をユーザ指示に基づいて決定する。ユーザは、表示装置14に表示される画面を見ながらユーザ指示を入力することができる。
図4は、本発明の第1実施形態における情報処理装置10にユーザの指示を入力する方法の概要を説明する図である。表示装置14には、選択すべき複数の項目のうち、少なくとも1つの項目が選択対象であることを示す画面が表示される。図4に示す例では、ウインドウW1、W2が表示されている。ウインドウW1には、複数の項目のうち、「2.BBB」が選択対象として中心に表示され、上下方向にスクロールして選択対象が変更される。ウインドウW2には、複数の項目のうち、「ABC」が選択対象として表示され、ラジオボタンにより選択対象が変更される。また、選択対象の項目が表示されるこれらのウインドウの組は、タブTabにより分類されて切り替えられるようになっている。この例では、タブTabは、様々なウインドウの組がT1〜T4で分類されて、ユーザ指示に基づいて切り替えられる。
また、VPは、視線測定装置30から出力された信号に基づいて得られるユーザの視線が向いている表示装置14上の位置(以下、視線位置VPという)を示している。この視線位置VPは表示装置14に表示されてもよいし、表示されなくてもよい。
制御部200は、座標Pfの変化に基づいて、選択対象を所定の順番に従って変更し、座標Pfが予測範囲ERから外れた場合に、そのときの選択対象の項目をユーザが指示したものとして確定し、確定した項目に応じた処理を実行する。このように、制御部200は、ユーザの人差し指によるジェスチャ入力を解析して、選択対象の項目を変更したり確定したりするようなユーザ指示を判断する。この例では、制御部200は、視線位置VPに最も近いウインドウ、図4の例ではウインドウW1において、ユーザ指示に基づいて選択対象の項目を変更したり確定したりする。なお、操作部13へのユーザの操作によってウインドウを変更するようにしてもよい。
図5は、本発明の第1実施形態におけるユーザの指示が入力されるときのジェスチャ入力解析例を説明する図である。制御部200が、図3において説明した状態の後の座標Pfの軌跡によってユーザ指示を判断する例を説明する。図5に示す座標Pf1に向かう軌跡TL1に示すように、座標Pfが次に予測範囲ERが算出するまでの間において現在の予測範囲ERの内側を移動し続けた場合、所定の移動量を超えて座標Pfが移動すると、選択対象の項目が変更される。一方、座標Pf2に向かう軌跡TL2に示すように座標Pfが移動した場合、予測範囲ERから外れたことが制御部200によって判定されると、そのときに選択対象として表示されていた項目が確定され、その項目に応じた処理が実行される。
図6は、本発明の第1実施形態における情報処理装置10へのユーザの指示に基づき選択対象が変更されるときの例を説明する図である。図4に示すウインドウW1の表示例が図6(a)に対応する。この状態で、ユーザの人差し指を動かして、座標Pfが予測範囲ERの内側を移動し続けると、所定の移動量を超えると、各項目が上側にスクロールして図6(b)の表示に切り替わり、選択対象の項目が「3.CCC」に変更される。なお、選択対象の項目が変更されるときには、この例で説明したとおり、座標Pfが所定の移動量を超えてから項目のスクロールが開始するようになっていたが、座標Pfの移動と共に徐々にスクロールが実行されるようにしてもよい。
さらに、座標Pfが予測範囲ERの内側を移動し続けると、所定の移動量を超えると、各項目がさらに上側にスクロールして図6(c)の表示に切り替わり、選択対象の項目が「4.DDD」に変更される。この状態で、座標Pfが予測範囲ERから外れると、選択対象の「4.DDD」が確定され、この「4.DDD」に応じた処理が実行される。
この処理には、別の機能を実現するために別のプログラムを実行する処理、別の複数の項目から選択対象を確定するための画面に遷移する処理など、様々な処理が含まれる。なお、別の複数の項目から選択対象を確定するための画面に遷移する場合には、これまでに選択対象として確定した項目と、この画面において確定した項目との関係に応じた処理が実行されるようにしてもよい。
[情報処理装置10の動作]
続いて、制御部200における上述した各処理(以下、入力解析処理という)の具体的な動作の一例について、図7を用いて説明する。
図7は、本発明の第1実施形態における入力解析処理を示すフローチャートである。ユーザ指示により複数の項目から一の項目を選択するためのウインドウが指定されると、入力解析処理が開始される。まず、制御部200は、複数の項目から、最初に選択対象となる項目を特定する(ステップS101)。例えば、図4に示すウインドウW1を例とすると、「2.BBB」が選択対象として特定されている。
制御部200は、座標算出部120によって算出された座標Pf(以下の説明において、算出座標という場合がある)を取得する(ステップS103)。制御部200は、予測範囲を算出させて取得した後、かつ、算出座標が、その予測範囲から外れたか否かを判定する(ステップS105)。処理が開始された最初の段階では、予測範囲が算出される前(ステップS105;No)であるから、予測カウントを増加させる(ステップS107)。また、予測範囲が算出されて取得した後であれば、算出座標がその予測範囲内である場合(ステップS105;No)には、ステップS107に進む。予測カウントとは、予測範囲を算出させる間隔を規定するためのカウントであり、しきい値を超えると、予測範囲算出部130により新たな予測範囲が算出される。
制御部200は、前の算出座標から今回の算出座標が所定量以上移動しているときには移動量カウントを増加させる(ステップS109)。「前の算出座標」とは、直前に移動量カウントを増加させたときに取得していた算出座標である。移動量カウントは、選択対象の項目を変更するためのカウントであり、しきい値を超えると、すなわち、算出座標の移動量が特定の移動量を越えると、選択対象の項目が次の順番の項目に変更される。
制御部200は、予測カウントがしきい値を超えたか否か判定する(ステップS111)。予測カウントがしきい値を超えた場合(ステップS111;Yes)、制御部200は、予測範囲算出部130に新たな予測範囲を算出させ、算出して得られた予測範囲を取得する(ステップS113)。そして、これまで増加してきた予測カウントは、リセットされ(ステップS115)、初期値に戻る。一方、予測カウントがしきい値を超えていない場合(ステップS111;No)、ステップS113、S115の処理は行われない。
続いて、制御部200は、移動量カウントがしきい値を超えたか否か判定する(ステップS117)。予測カウントがしきい値を超えていない場合(ステップS117;No)、ステップS103に戻る。一方、移動量カウントがしきい値を超えた場合(ステップS117;Yes)、制御部200は、選択対象の項目を変更する(ステップS119)。例えば、図6に示す例のように、変更前が図6(a)であれば、変更後は図6(b)に示すように選択対象の項目が変更される。そして、これまで増加してきた移動量カウントは、リセットされ(ステップS121)、初期値に戻る。なお、上述した移動量カウントの増加量によっては、最初に予測範囲が算出される前までの期間に、選択対象の項目が変更される場合もある。
一方、上記ステップS105において、算出座標が予測範囲から外れた場合(ステップS105;Yes)、制御部200は、そのときの選択対象の項目を確定し(ステップS131)、確定した項目に応じた処理を実行する(ステップS133)。
以上、本発明の第1実施形態における入力解析処理によれば、ユーザが人差し指を特定の図形、曲線等に沿って動かすことにより、複数の項目から選択対象の項目を所定の順番で変更することができる。例えば、円を描くように、人差し指を動かすと、選択対象の項目を所定の順番で変更し、例えば、図6に示すように項目を変更することができる。このとき、円など始点と終点が明確でない閉曲線等の図形を描くようにした場合、人差し指を動かすことで、同じ図形を繰り返し描きながら、選択対象の項目を続けて変更していくこともできる。
そして、人差し指の動きを今までの動きから急に変化させることで、選択対象の項目を確定することができる。例えば、円を描いていた人差し指を、急に円の径方向に移動させることにより、そのときの選択対象の項目を確定することができる。
なお、第1実施形態における別の例として、人差し指を例えば円を描くように動かして選択対象の項目を変更するときに、別の指をさらに立てて、同じ動きをすることにより、項目を変更する速さが変化するようにしてもよい。
図8は、本発明の第1実施形態におけるユーザの指示の入力方法について、別の例を説明する図である。図8に示す例では、さらに中指を立てて動かす場合を示している。この場合には、算出される座標には、人差し指の座標Pfだけでなく中指の座標Psも含まれる。そして、座標Pfと座標Psとの相対位置関係が所定の変速条件を満たす場合に、選択対象の項目を変更する速度を異ならせる。所定の変速条件とは、例えば、座標Pfと座標Psとが所定の距離より近い状態を維持して移動するという条件にすればよい。
具体的には、2本の指を立てた状態で動かすことで2倍の速度で項目が変更され、3本の指を立てた状態で動かすことにより3倍の速度で項目が変更されるようにしてもよい。2v倍の速度で項目が変更される例としては、上述した移動量カウントのしきい値が半分になる場合であってもよいし、移動量カウントのしきい値は変わらずに変更量が2倍、すなわち図6(a)から図6(b)ではなく図6(c)に変更される場合であってもよい。
これとは逆に、2本の指を立てた状態で動かすことで1/2倍の速度で項目が変更されるようにしてもよい。すなわち、立てている指の本数により、項目を変更する速度が変化するようにすればよい。
このようにすれば、指を立てる本数を変化させて、目的とする項目に近づくまでは速く項目を変更しおおざっぱな制御し、目的とする項目に近づいた後にはゆっくりと項目を変更して精度の高い制御が可能となる。
上述した例では、選択対象の項目を確定するのは、算出座標が予測範囲ERから外れた場合であったが、予測範囲ERから外れた後、再び予測範囲ERに戻った場合であってもよい。このとき、予測範囲ERから外れた後、再び戻るまでの時間が所定時間以下である場合に限ってもよい。
なお、座標Pfの移動方向が逆方向になり、これまでに描いてきた軌跡TLから所定範囲内を移動した場合、選択対象の項目を変更する向きを逆方向にしてもよい。また、移動するときの指を立てる本数を変化させることで、例えば2本の指を立てた状態で移動させた場合には、選択対象の項目を変更する向きを、1本の指を立てて移動した状態とは逆の方向にしてもよい。
<第2実施形態>
第1実施形態における入力解析処理では予測範囲ERを順次算出して更新していたが、第2実施形態における入力解析処理では予測範囲ERを更新しない場合について説明する。
図9は、本発明の第2実施形態におけるユーザの指示が入力されるときのジェスチャ入力解析例を説明する図である。図9に示す例では、座標Pfの軌跡TLに基づき軌跡TLを多く含む面が算出され、その面からの所定の距離までの範囲内が予測範囲ERとして算出される。座標Pf1に向かう軌跡TL1に示すように、座標Pfが予測範囲ERの内側を移動し続けた場合、所定の移動量を超えて座標Pfが移動すると、選択対象の項目が変更される。一方、座標Pf2に向かう軌跡TL2に示すように座標Pfが移動した場合、予測範囲ERから外れたと判定されると、そのときに選択対象として表示されていた項目が確定され、その項目に応じた処理が実行される。
続いて、制御部200における上述した入力解析処理の具体的な動作の一例について、図10を用いて説明する。なお、図7に示す第1実施形態におけるフローチャートにおいて、同じ処理を行うステップについては、同じ符号を付して、詳細な説明を省略する。
図10は、本発明の第2実施形態における入力解析処理を示すフローチャートである。制御部200は、複数の項目から、最初に選択対象となる項目を特定する(ステップS101)と、座標算出部120によって算出された座標Pf(算出座標)を取得する(ステップS201)。制御部200は、所定期間に取得した算出座標に基づいて、予測範囲を算出させ、算出して得られた予測範囲を取得する(ステップS203)。なお、予測範囲を算出させるまでの算出座標の移動量によっては、選択対象の項目が変更されるようにしてもよい。
制御部200は、算出座標を取得し(ステップS103)、算出座標が予測範囲内である場合(ステップS205;No)、前の算出座標から今回の算出座標が所定量以上移動しているときには移動量カウントを増加させる(ステップS109)。制御部200は、移動量カウントがしきい値を超えたか否か判定する(ステップS117)。予測カウントがしきい値を超えていない場合(ステップS117;No)、ステップS103に戻る。一方、移動量カウントがしきい値を超えた場合(ステップS117;Yes)、制御部200は、選択対象の項目を変更する(ステップS119)。そして、これまで増加してきた移動量カウントは、リセットされ(ステップS121)、初期値に戻る。
上記ステップS205において、算出座標が予測範囲から外れた場合(ステップS205;Yes)、制御部200は、そのときに選択対象の項目を確定し(ステップS131)、確定した項目に応じた処理を実行する(ステップS133)。
以上、本発明の第2実施形態における入力解析処理によれば、ユーザが人差し指で描く図形が単純なものである場合、予測範囲ERの算出を最初に行うだけにすることもできる。例えば、人差し指で描く図形が円である場合には、手首または指の付け根が固定された状態で円を描くように人差し指を動かす場合が多く、予想範囲ERの基準となる面が大きく変化する可能性は小さいため、予測範囲ERを途中で変更しなくてもよい。一方、指を曲げる等の動きにより座標Pfが予測範囲ERから外れることになる。このような入力解析処理によっても、ユーザによるジェスチャが簡易なものであっても、精度のよい制御が可能である。
<第3実施形態>
第1、2実施形態においては予測範囲ERから算出座標が外れた場合に選択対象の項目を確定していたが、第3実施形態においては、複数の指の動き(複数の指の相対位置関係)により項目を確定する。
図11は、本発明の第3実施形態におけるユーザの指示が入力されるときのジェスチャ入力解析例を説明する図である。この例における入力解析処理においては、座標Pfの移動量に応じて選択対象の項目を変更する点については、上述した実施形態と同様である。一方、予測範囲ERは算出されず、親指の座標Ptと座標Pfとの相対位置関係が所定の関係、例えば、座標Ptと座標Pfとの距離が所定の距離以下になると、選択対象の項目が確定される。この場合、図11(a)に示す状態で座標Pfが移動すると、選択対象の項目を変更し、図11(b)に示すように親指を動かすと、項目を確定する。
この例における指示入力機能100Aについて、図12を用いて説明する。なお、第1実施形態と同様な構成については同じ符号を付し、その説明を省略する。
図12は、本発明の第3実施形態における指示入力機能100Aの構成を示すブロック図である。指示入力機能100Aにおける座標算出部120Aは、手1000の人差し指の座標Pfに加え、親指の座標Ptを算出する。制御部200Aは、座標Pfの変化に基づいて、選択対象を所定の順番に従って変更し、座標Pfと座標Ptとの相対位置関係に基づいて、そのときの選択対象の項目をユーザが指示したものとして確定し、確定した項目に応じた処理を実行する。
続いて、制御部200Aにおける上述した入力解析処理の具体的な動作の一例について、図13を用いて説明する。なお、図7に示す第1実施形態におけるフローチャートにおいて、同じ処理を行うステップについては、同じ符号を付して、詳細な説明を省略する。
図13は、本発明の第3実施形態における入力解析処理を示すフローチャートである。制御部200Aは、複数の項目から、最初に選択対象となる項目を特定する(ステップS101)と、座標算出部120Aによって算出された座標Pfおよび座標Ptを取得する(ステップS301)。
制御部200は、座標Pfと座標Ptとの距離が所定距離以上である場合(ステップS303;Yes)、前の算出座標(例えば、座標Pf、以下この例において同じ)から今回の算出座標が所定量以上移動している場合に移動量カウントを増加させる(ステップS109)。制御部200は、移動量カウントがしきい値を超えたか否か判定する(ステップS117)。予測カウントがしきい値を超えていない場合(ステップS117;No)、ステップS103に戻る。一方、移動量カウントがしきい値を超えた場合(ステップS117;Yes)、制御部200は、選択対象の項目を変更する(ステップS119)。そして、これまで増加してきた移動量カウントは、リセットされ(ステップS121)、初期値に戻る。
上記ステップS303において、座標Pfと座標Ptとの距離が所定距離以上でない場合(ステップS303;No)、制御部200は、そのときの選択対象の項目を確定し(ステップS131)、確定した項目に応じた処理を実行する(ステップS133)。
なお、この例では、親指の座標Ptと人差し指の座標Pfとの相対位置関係により、選択対象の項目を変更したり、確定したりしていたが、他の指の座標との相対位置関係により選択対象の項目の変更または確定をするようにしてもよい。
以上、本発明の第3実施形態における入力解析処理によれば、選択対象の項目を変更する際の人差し指の動きに自由度を持たせることができる。
<第4実施形態>
第1、2実施形態においては予測範囲ERから算出座標が外れた場合に選択対象の項目を確定していたが、第4実施形態では、指の動きが特定の方向に動いた後に戻ってきた場合に選択対象の項目を確定するようにしてもよい。以下、この例における入力解析処理を説明する。
図14は、本発明の第4実施形態におけるユーザの指示が入力されるときのジェスチャ入力解析例を説明する図である。図14(a)は選択対象の項目を確定する場合の座標Pf(人差し指)の動きの例を示し、図14(b)、(c)は選択対象の項目を確定しない場合の座標Pfの動きの例を示している。また、第4実施形態の説明において、特定方向という場合には、図14におけるVaが指し示す方向、すなわち図の上方向を示す。この特定方向は、予め決められた方向であってもよいし、軌跡TLに基づいて決められた方向であってもよい。
図14に示すように座標Pfの軌跡TLは、所定の方法で決められた開始点Sから終了点Eまでの所定期間Twにおいて、選択対象の項目を確定するか否かが判定される。開始点Sにおける軌跡TLの点を座標TLs、所定期間Twにおいて最も特定方向に移動した点を座標TLp、終了点Eにおける軌跡TLの点を座標TLeとする。座標TLeは、所定期間Twにおいて最も特定方向とは逆に移動した点であってもよい。
まず、選択対象の項目を確定する場合の例について説明する。図14(a)に示すように、座標TLsから座標TLpまでの変化のうち、特定方向のベクトルの長さVaが第1しきい値Vth以上であること、および座標PLpから座標PLeまでの変化のうち特定方向とは逆方向のベクトルの長さVbが第2しきい値Vd以上であることを条件として、選択対象の項目が確定される。
第1しきい値Vthは予め決められていてもよいし、所定期間Twの前における座標Pfの移動速度に応じて決められてもよい。例えば、所定期間Twの前における座標Pfの移動速度が速いほど、第1しきい値Vthが大きくなるようにしてもよい。また、第2しきい値Vdは、予め決められていてもよいし、Vaに応じて変化する値、例えば、Va−α、またはVa/βというように決められてもよい。Vd=Va−αとすれば、長さVaとVbとの差が所定範囲内であるときに選択対象の項目が確定される。一方、Vd=Va/βとすれば、長さVaとVbとの比が所定範囲内であるときに選択対象の項目が確定される。
なお、座標PLpを越えた後、座標PLpから座標Pfまでの特定方向とは逆方向のベクトルの長さを長さVdとしてもよく、その場合には、長さVaが第1しきい値Vth以上であること、および長さVdが所定期間Tw内で第2しきい値Vd以上になったことを条件として、選択対象の項目を確定してもよい。
続いて、選択対象の項目を確定しない場合の例について説明する。図14(b)に示すように、所定期間Twのうちに、長さVbが第2しきい値Vd以上にならなかった場合には、選択対象の項目が確定されない。また、図14(c)に示すように、長さVaが所定期間Twにおいて第1しきい値Vth以上にならなかった場合にも、選択対象の項目が確定されない。
図14(a)に示すように座標Pfが移動した場合には、選択対象の項目が確定される一方、それ以外の場合には、座標Pfの移動量に応じて選択対象の項目が変更される。そのときの変更方法は、上述した各実施形態と同様である。
ここで、開始点Sおよび終了点Eの決定方法について説明する。上記の例では、最新の算出座標が終了点Eであるものとして、所定時間前の開始点Sとの間として所定期間Twが決めらる。この場合、最新の算出座標が算出される度に所定期間Twとして指定される軌跡TLの範囲が順次移動していく。
座標Pfの移動速度が第1の速度未満から第1の速度以上に変化したときの座標Pfを開始点Sとしてもよい。そして、その後に所定時間が経過した時の座標を終了点Eとしてその間を所定期間Twとしてもよい。また、開始点Sはこのままとし、座標Pfの移動速度が第1の速度以上になった後、第1の速度より低い第2の速度以下に所定時間維持されたときの座標Pfを終了点Eとしてもよい。
なお、開始点Sと終了点Eとを含み特定方向を面内に含まないような面(以下、境界面という)を定義し、所定期間Twの軌跡TL(座標Pf)が境界面の一方側に存在する場合という条件をさらに満たした場合に、選択対象の項目が確定されるようにしてもよい。
また、所定期間Twにおける座標Pfの移動量のうち、特定方向を法線方向とする面内に含まれる所定方向の成分の移動量が、所定量以上になっている場合という条件を更に満たした場合に、選択対象の項目が確定されるようにしてもよい。この所定量は、所定期間Twにおける特定方向への座標Pfの移動量に基づいて決められてもよいし、予め決められていてもよい。
第4実施形態における指示入力機能は、上述した図12に示す機能構成に類似した構成で実現可能であって、例えば、座標算出部120Aが座標Pfを算出し、制御部200Aが上記の入力解析処理を行うように、処理内容を変更すればよい。
<入力装置50の構成>
続いて、本発明の第1、2、4実施形態において使用可能な入力装置50について説明する。この入力装置50は、ユーザの指の動きをサポートするための装置であり、この例では、選択対象の項目を変更する場合の指の動きを滑らかに行うための構造、および選択対象の項目を決定する場合の指の動きにクリック感を与えるための構造が設けられている。
図15は、本発明の第1、2、4実施形態において使用可能な入力装置50の全体の外観を説明する図である。入力装置50は、板状部材505の表面に形成された円状入力部500、および複数の直線状入力部600を備える。円状入力部500は、それぞれ径の異なる複数の凹部が、同心円状に形成されている。なお、複数の凹部は円でなくてもよく、楕円、曲線で囲まれた閉曲線等が相似形で形成されたであってもよく、それぞれの凹部は線状に形成されている。
[円状入力部500の形状]
図16は、本発明の第1、2、4実施形態において使用可能な円状入力部500の形状を説明する図である。図16(a)は、円状入力部500を上方からみた図である。図16(b)は、図16(a)におけるA−A方向にみた断面図である。
円状入力部500は、凹部515の周囲において、同心円状に凹部511、512、513、514が形成されている。凸部521は、隣接する凹部511と凹部512との間の境界部分を示す。同様に、凸部522は隣接する凹部512と凹部513との間の境界部分を示し、凸部523は隣接する凹部513と凹部514との間の境界部分を示し、凸部523は隣接する凹部513と凹部514との間の境界部分を示し、凸部524は隣接する凹部514と凹部515との間の境界部分を示す。
入力装置50を上述の第1、2、4実施形態において使用する場合には、ユーザは、例えば、人差し指を凹部511に沿って移動(P1、P2、P3の順に移動)させて、選択対象の項目を変更していく。このとき、例えば、順方向Fに沿って移動させると選択対象の項目が進むように変更していき、逆方向Rに沿って移動させると選択対象の項目が戻るように変更していく。
図17は、本発明の第1、2、4実施形態において使用可能な円状入力部500の使用例を説明する図である。図17に示すように、この例においては、ユーザの人差し指が凹部511に沿って移動している間は、指先端部csと指腹部chとが凹部511の内壁に接触し、その間の部分は内壁に接触していない。
凹部と人差し指とがこのような接触をするように凹部が形成されていると、ユーザは、凹部511の内壁に人差し指を接触させながら移動させることで、凹部形状にガイドされながら、円周方向へ移動させることができ、ガイドされるときの接触抵抗が少なくなり滑らかに移動させることもできる。
そして、ユーザは、凸部521を乗り越えて隣接する凹部512に人差し指を移動(図16:P3からP4に移動)させることにより、選択対象の項目が確定される。このとき、ユーザの指には凸部を乗り越えるというクリック感が与えられる。なお、図16に示すように、その部分からさらに凹部512に沿って人差し指が移動(P4、P5、P6の順に移動)することによって、別のウインドウ等において、選択対象の項目が変更される。
ここで、入力装置50を用いて、上述のように人差し指を動かすことで、選択対象の項目が変更、確定されることについて、各実施形態に対応してその原理を説明する。
まず、第1実施形態において入力装置50を用いた場合について説明する。第1実施形態において入力装置50を用いると、人差し指が円周方向に沿ってガイドされて移動するため、今後移動すると予測される範囲である予測範囲ERは、凹部が形成されている円周に沿った範囲として算出される。したがって、例えば、凹部511に沿って人差し指が移動すると選択対象の項目が変更される。そして、凹部511から凹部512に人差し指が移動すると、座標Pfが予測範囲ERから外れることとなり、選択対象の項目が確定されることになる。
続いて、第2実施形態において入力装置50を用いた場合について説明する。第2実施形態において入力装置50を用いると、人差し指が円周方向に沿ってガイドされて移動するため、予測範囲ERは、例えば、凹部が形成されている平面に沿って形成され、高さ方向には、例えば少なくとも各凹部の底を含み、凸部の頂点を含まない範囲として算出される。したがって、例えば、凹部511に沿って人差し指が移動すると選択対象の項目が変更される。そして、凹部511から凹部512に人差し指が移動すると、人差し指が凸部の頂点を越えることにより、座標Pfが予測範囲ERから外れることとなり、選択対象の項目が確定されることになる。この場合には、座標Pfが予測範囲ERから外れてから再び予測範囲ERに戻る、すなわち、凹部511から凸部521を越えて凹部512に移動したときに、選択対象の項目が確定されるようにしてもよい。
続いて、第4実施形態において入力装置50を用いた例について説明する。第4実施形態において入力装置50を用いると、例えば、凹部511に沿って人差し指が移動すると選択対象の項目が変更され、人差し指が凸部521を乗り越えて隣接する凹部512に移動すると、選択対象の項目が確定される。このとき、第4実施形態で説明した特定方向は、凹部が形成された面(板状部材505の表面)の法線方向に対応している。したがって、人差し指が凸部を乗り越える動作は、座標Pfが特定方向に動いた後に戻ってきた場合に相当し、選択対象の項目が確定される条件を満たすことになる。
いずれの場合も、図16(a)に示すP1、P2、P3、P4、P5、P6の順に人差し指を移動させると、以下の通りに動作する。人差し指がP1からP2に移動したときに選択対象の項目が次の項目に変更され、P3まで移動したときにさらに次の項目に変更される。人差し指がP3からP4に移動するとその選択対象の項目で確定され、別のウインドウでの選択対象の項目の変更、確定に移る。人差し指がP4からP5、P6に移動していくと、そのウインドウの選択対象の項目が順に次の項目に変更されていく。この状態から、凹部512に隣接する凹部511または凹部513に人差し指を移動させることにより、変更後の選択対象の項目が確定される。
このように、ユーザは、人差し指を凹部に沿って移動させて選択対象の項目を変更する場合と、凸部を乗り越えて選択対象の項目を確定する場合とで、異なる触覚を得ることができる。すなわち、ユーザには、選択対象の項目を変更しているときには指を滑らせている感覚が与えられ、確定するときには指に対して滑らせる感覚に加えて凸部を乗り越えるという抵抗感(クリック感)が与えられる。
[直線状入力部600の形状]
続いて、直線状入力部600について説明する。上記の第4実施形態において入力装置50を用いるときに、直線状入力部600が使用可能である。
図18は、本発明の第4実施形態において使用可能な直線状入力部600の形状を説明する図である。図18(a)は、直線状入力部600を上方からみた図である。図18(b)は、図18(a)におけるB−B方向にみた断面図である。図18(c)は、図18(a)におけるC−C方向にみた断面図である。
直線状入力部600は、凹部611、612、613、614が直線状に並んで形成されている。凸部621は、隣接する凹部611と凸部612との間の境界部分を示す。同様に、凸部622は隣接する凹部612と凸部613との間の境界部分を示し、凸部623は隣接する凹部613と凸部614との間の境界部分を示す。
また凸部621、622、623の頂点部分は、板状部材505の表面よりも下がって形成されている。また、凹部611、612、613、614が並ぶ方向に沿った内壁(図18(a)のける上辺と下辺)のうち、少なくとも一方(この例では下辺)側の内壁630は、曲面に形成されている。曲面に形成される内壁は、ユーザが使用する際のユーザに近い側の内壁であることが望ましい。
入力装置50を上述の第4実施形態において使用する場合には、ユーザは、例えば、人差し指を凹部611から凹部612、凹部613、凹部614というように、凸部を乗り越えながらスライドさせて移動させる。これにより、順次、確定する処理が行われることになるが、直線状入力部600を用いる場合においては、例えば、図4に示すタブTabの切り替えに用いられる。例えば、人差し指を凹部613から凹部614にスライドさせると、タブT2が選択された状態からタブT3が選択された状態に変更される。一方、人差し指を凹部613から凹部612にスライドさせると、タブT2が選択された状態からタブT1が選択された状態に変更される。
図19は、本発明の第4実施形態において使用可能な直線状入力部600の使用例を説明する図である。図19に示すように、この例においては、ユーザの人差し指が凹部613にあるときには、指先端部csが凹部613の底面に接触し、指腹部chが内壁630に接触し、その間の部分は内壁に接触していない。
凹部と人差し指とがこのような接触をするように内壁630が形成されていると、内壁630に凹部形状にガイドされながら、凹部が並ぶ方向へ移動させることができ、ガイドされるときの接触抵抗が少なくなり、また、角ではなく面で接触するため滑らかに移動させることもできる。
<第5実施形態>
第5実施形態においては、上述した入力装置50を使用した場合において、第1、第2実施形態における予測範囲ERに相当する範囲を、円状入力部500の形状に基づいて算出する。
図20は、本発明の第5実施形態における指示入力機能100Bの構成を示すブロック図である。指示入力機能100Bの説明においては、第1実施形態における指示入力機能100と異なる構成について詳細に説明し、同様な動作をする構成については、説明を省略する。
指示入力機能100Bは、物体検知装置20Bから測定信号が入力される。この測定信号は、第1実施形態においては検知範囲に存在する物体、具体的には手の形状を3次元座標で測定した結果を示していたが、この例では、さらに入力装置50の形状について測定された結果も含んでいる。
移動範囲算出部140は、物体検知装置20Bから出力される測定信号に基づいて、入力装置50の形状を解析し、特に円状入力部500の形状を解析する。そして、移動範囲算出部140は、円状入力部500の形状に基づいて、各凹部の形状に沿った移動予定範囲を算出する。その結果、上記の入力装置50を第2実施形態において使用した場合の例で説明した予測範囲ERと同様な範囲が、移動予定範囲として算出される。この移動予定範囲は、選択対象の項目を変更させるときの座標Pfの移動範囲を規定するものである。したがって、この移動予定範囲は、入力装置50を第2実施形態において使用した場合の例における予測範囲ERと類似した範囲になる。すなわち、移動予定範囲は、各凹部により形成される空間であり、高さ方向には少なくとも凹部の底を含み、凸部の頂点を含まない範囲として算出される。
また、移動範囲算出部140は、直線状入力部600についても、その形状に基づいて移動予定範囲を算出する。移動予定範囲は、円状入力部500に対応して算出された移動予定範囲と同様に、各凹部により形成される空間であり、高さ方向には少なくとも凹部の底を含み、凸部の頂点を含まない範囲として算出される。
制御部200Bは、座標算出部120によって算出された座標Pfと、移動範囲算出部140によって算出された移動予定範囲に基づいてユーザ指示を判断し、その指示に応じた処理を実行する。例えば、上述の入力装置50を第2実施形態において利用した場合の例と同様に、凹部511に沿って人差し指が移動すると選択対象の項目が変更される。そして、凹部511から凹部512に人差し指が移動すると、人差し指が凸部の頂点を越えることにより、座標Pfが移動予定範囲から外れることとなり、選択対象の項目が確定されることになる。この場合には、座標Pfが移動予定範囲から外れてから再び移動予定範囲に戻る、すなわち、凹部511から凸部521を越えて凹部512に移動したときに、選択対象の項目が確定されるようにしてもよい。
なお、この例では、移動範囲算出部140は、物体検知装置20Bからの測定信号に基づいて円状入力部500の形状を解析して、この形状に基づいて移動予定範囲を算出していた。一方、移動範囲算出部140は、入力装置50の種類別に移動予定範囲を定めたテンプレートを記憶する記憶手段からテンプレートを読み出し、テンプレートに基づいて移動予定範囲を算出するようにしてもよい。
この場合には、移動範囲算出部140は、物体検知装置20Bからの測定信号に基づいて、入力装置50の種類を判定し、この種類に対応するテンプレートを読み出す。また、移動範囲算出部140は、入力装置50の位置を算出する。入力装置50の位置は、入力装置50の外形から算出されてもよいし、入力装置50に設けられたマーカ等から算出されてもよい。そして、移動範囲算出部140は、算出した入力装置50の位置と、読み出したテンプレートとを用いて、移動予定範囲を算出する。
また、テンプレートを読み出して用いる場合には、選択対象の項目が確定されるのは、座標Pfが移動予定範囲から外れた場合ではなく、凸部の形状に沿って座標Pfが移動したことが検知された場合としてもよい。例えば、所定の範囲内の曲率の円弧に沿って、座標Pfが所定量の移動をした場合に、選択対象の項目が確定されるようにしてもよい。
<第6実施形態>
上記の実施形態においては、物体検知装置20により指先の位置が検知され、その指先の位置の変化に基づいてユーザ指示が判断されていた。第6実施形態では、指先の位置を検出するためのセンサが設けられている入力装置において指先の位置を検知する例について説明する。
図21は、本発明の第6実施形態における入力装置50Aの円状入力部500Aの構成を説明する図である。図21(a)は、円状入力部500Aを上方からみた図である。図21(b)は、図21(a)におけるD−D方向にみた断面図である。
入力装置50Aは、上述した入力装置50に加えて、指先の接触を検知するセンサ550が円状入力部500Aおよび直線状入力部600Aが設けられている。この例では、円状入力部500Aには、各凹部(凹部511等)の底部においてそれぞれ同数のセンサ550が設けられている。これらのセンサ550は放射状に配置されている。そして、放射状に配置されたセンサ550は、直線状に並んでいる。すなわち、あるセンサ550から凸部を乗り越えて隣の凹部に移動すると、移動先の凹部にもセンサ550が設けられているようになっている。
センサ550は、指の接触を検知できればよいため、電気抵抗の変化、温度変化、静電容量変化等、様々な方法での検知が可能であればよい。なお、センサ550は指の接触を検知するものでなくてもよく、指がセンサ550に所定の距離まで近づいたことを検知するものであってもよい。センサ550は、このようにしてセンサ550への接触を検知すると、検知したセンサ550を識別する情報および検知したことを示す検知信号を含む測定信号が入力装置50Aから出力される。
図22は、本発明の第6実施形態における指示入力機能100Cの構成を示すブロック図である。指示入力機能100Cは、信号受付部150および制御部200Cの各構成により実現される。この例では、指示入力機能100Cは、上述した各実施形態における物体検知装置20からの測定信号を用いる代わりに、入力装置50Aからの測定信号を用いる。
信号受付部150は、入力装置50Aからの測定信号を受け付けて、入力装置50Aに対してユーザの指示が入力されたことを認識する。
制御部200Cは、信号受付部150に入力された測定信号に基づいて、ユーザ指示を判断し、その指示に応じた処理を実行する。なお、制御部200Cは、操作部13から出力された信号、および視線測定装置30から出力された信号に基づいて、ユーザ指示を判断してもよい。
また、制御部200Cは、記憶部12から各種情報を読み出して、各種処理を実行する。さらに、制御部200Cは、表示装置14に表示される画面をユーザ指示に基づいて決定する。ユーザは、表示装置14に表示される画面を見ながらユーザ指示を入力することができる。
制御部200Cにおいては、ユーザの指示を判断するために、上述したように信号受付部150に入力された測定信号に基づいて入力解析処理を行う。
図23は、本発明の第6実施形態における入力解析処理を示すフローチャートである。まず、制御部200Cは、複数の項目から、最初に選択対象となる項目を特定する(ステップS101)。例えば、図4に示すウインドウW1を例とすると、「2.BBB」が選択対象として特定されている。
制御部200Cは、入力受付部150に受け付けられた測定信号に基づいて、どのセンサ550において指の接触を検知したかを特定する。制御部200Cは、検知されたセンサ550の位置の変化が、順方向F、逆方向Rまたは放射方向のいずれであるかを判定する(ステップS401)。ここで、放射方向の移動とは、同心円の径に沿った移動を示し、内側方向であるか外側方向であるかは問わない。
順方向Fであった場合(ステップS401;順方向)、制御部200Cは、選択対象の項目を進める方向(正方向)に変更(ステップS403)して、ステップS401に戻る。逆方向Rであった場合(ステップS401;逆方向)、制御部200Cは、選択対象の項目を戻す方向(負方向)に変更(ステップS405)して、ステップS401に戻る。一方、放射方向であった場合(ステップS401;放射方向)、制御部200Cは、そのときの選択対象の項目を確定し(ステップS131)、確定した項目に応じた処理を実行する(ステップS133)。そして、ステップS401に戻る。
この動作例を、図21を用いて具体的に説明する。まず、ユーザの指がセンサ550−1aに接触し、凹部511に沿って順方向Fにセンサ550−b1まで移動する。これにより、図23のステップS401において、2度、順方向に移動したと判定され、選択対象の項目が正方向に2つ移動する。図6に示すの例では、図6(a)から図6(b)、図6(c)へと選択対象の項目が変更される。そして、ユーザの指がセンサ550−2aに移動すると、ステップS401において、放射方向に移動したと判定され、その選択対象の項目が確定される。そして、選択対象の項目を変更するウインドウが別のウインドウに変更される。
ユーザの指がセンサ550−2aから凹部512に沿ってセンサ550−2bまで移動する。これにより、図23のステップS401において、3度逆方向に移動したと判定され、選択対象の項目が負方向に3つ移動する。そして、ユーザの指がセンサ550−3aに移動すると、ステップS401において、放射方向に移動したと判定され、その選択対象の項目が確定される。そして、選択対象の項目を変更するウインドウが別のウインドウに変更される。
続いて、入力装置50Aに設けられている直線状入力部600Aについて説明する。
図24は、本発明の第6実施形態における入力装置50Aの直線状入力部600Aの構成を説明する図である。図24(a)は、直線状入力部600Aを上方からみた図である。図24(b)は、図24(a)におけるE−E方向にみた断面図である。図24(c)は、図24(a)におけるF−F方向にみた断面図である。
直線状入力部600Aには、円状入力部500Aと同様に、各凹部(凹部611等)の底部において、それぞれセンサ550が設けられている。上述した入力装置50での直線状入力部を用いた例と同様に、ユーザは、例えば、人差し指を凹部611から凹部612、凹部613、凹部614というように、凸部を乗り越えながらスライドさせて移動させると、円状入力部500Aにおける操作のステップS401(図23)において、放射方向に移動した場合に相当する。これにより、順次、確定する処理が行われることになるが、直線状入力部600Aを用いる場合においては、例えば、図4に示すタブTabの切り替えに用いられる。
第6実施形態における入力装置50Aを用いると、上述した入力装置50と同様に、ユーザは、指を凹部に沿って移動させて選択対象の項目を変更する場合と、凸部を乗り越えて選択対象の項目を確定する場合とで、異なる触覚を得ることができる。すなわち、ユーザには、選択対象の項目を変更しているときには指を滑らせている感覚が与えられ、確定するときには指に対して滑らせる感覚に加えて凸部を乗り越えるという抵抗感が与えられる。また、センサ550を用いているため、物体検知装置20を用いなくても、指の動きを検知することができる。
<第7実施形態>
上述した円状入力部500、500Aは、同心円状に形成された凹部により、指の動きがガイドされるようになっていた。第7実施形態においては、複数の凹部が同心円に形成されているのではなく、凹部がらせん状に形成されているらせん状入力部500Bが入力装置に備えられている例を説明する。
図25は、本発明の第7実施形態におけるらせん状入力部500Bの構成を説明する図である。図25に示すように、らせん状入力部500Bには、らせん状の凹部510が形成されている。らせん状の凹部において隣接する境界部分には凸部520が形成されている。凸部520も凹部510と同様にらせん状に形成されることになる。
らせん状入力部500Bに設けられているセンサ550は、円状入力部500Aに設けられたセンサ550と同様に、放射状に配置されている。すなわち、あるセンサ550に接触した状態から凸部520を乗り越えると、その先にもセンサ550があるように、各センサ550が配置されている。
図25に示すように、ユーザの指がセンサ550aからセンサ550bへ、続いてセンサ550cに進んだ場合、選択対象の項目が2つ進むように変更され、その後に確定される。さらに、ユーザの指がセンサ550cからセンサ550dへ、続いてセンサ550eに進んだ場合、別のウインドウの選択対象の項目が2つ進むように変更され、その後に確定される。
<第8実施形態>
上述した実施形態において入力装置は、円状入力部500を備えていたが、円状でなく、矩形の入力部が備えられていてもよい。第8実施形態では、矩形状入力部700が備えられた入力装置50Dについて説明する。
図26は、本発明の第8実施形態における入力装置50Dの全体の外観を説明する図である。入力装置50Dは、板状部材505の表面に矩形状入力部700が備えられている。
図27は、本発明の第8実施形態における入力装置50Dの矩形状入力部700の構成を説明する図である。図27(a)は、矩形状入力部700を上方からみた図である。図27(b)は、図27(a)におけるG−G方向にみた断面図である。
矩形状入力部700は、直線状の凹部711、712、713、714、715、716が並んで配置されている。それぞれの凹部の境界部分には、直線状の凸部721、722、723、724、725が設けられている。センサ550は、各凹部(凹部711等)の底部に設けられている。各凹部には、複数のセンサ550が一定間隔で並べて配置されている。なお、同じ凹部に配置されたセンサ550間のそれぞれの距離は、一定でなくてもよく、場所によって異なっていてもよい。
また、各センサ550は、凹部が並ぶ方向に沿って、直線状に並べられている。すなわち、あるセンサ550に接触した状態から凸部を乗り越えると、その先にもセンサ550があるように、各センサ550が配置されている。
図27に示すように、ユーザの指がセンサ550−1aからセンサ550−1bへ、続いてセンサ550−2aに進んだ場合、選択対象の項目が3つ進むように変更され、その後に確定される。さらに、ユーザの指がセンサ550−2aからセンサ550−2bへ、続いてセンサ550−3aに進んだ場合、別のウインドウの選択対象の項目が2つ戻るように変更され、その後に確定される。
<隣接する凹部間の凸部の形状>
上述した入力装置において、凹部および凸部の形状について説明する。なお、いかに説明する例は、形状の一例である。したがって、この形状に限られるわけではない。
図28は、本発明の実施形態における入力装置の2つの凹部に挟まれた凸部の形状の例を説明する図である。図28においては、凹部512の両側の凸部521、522の断面形状を示している。この断面形状は、複数のパラメータで表される。この例では、表面形状S1、S2、S3は、所定の剛性を有する伸縮部材の表面を想定している。
図28(a)は、凹部の底を結ぶ基準面Bから長さh1の軸Lが基準面Bに対して垂直に伸び、その先端を中心とした半径r1の円Cが取り付けられた状態を示している。この円Cによって表面S1が基準面Bから持ち上げられている状態を想定し、この表面形状S1が上記の断面形状に相当する。なお、凸部間の距離dごとに軸Lが想定されている。
図28(b)は、図28(a)の状態から一部のパラメータを変更したものであり、軸Lの長さがh1より長いh2、円Cの半径がr1からr2に長くなっている場合を示している。このようにすると、凸部521を乗り越える際に指に与える抵抗力が大きくなる。
図28(c)は、図28(a)の状態から一部のパラメータを変更したものであり、基準面Bに対して垂直な軸Lを角度θだけ傾けた場合を示している。この例では、便宜上、図28(c)に示す傾きのときに、角度θが正であるものとする。このように傾けると、凸部521を凹部511側から乗り越える方が、凹部512側から乗り越えるよりも、指に与える抵抗力が強くなる。
ここで、これらのパラメータを場所によって変化させることにより、凹凸形状が入力装置の位置によって異なるようになっていてもよい。例えば、センサ550が設けられた近傍において、凸部の高さが低くなっていてもよい。
図29は、本発明の実施形態における入力装置のセンサ550近傍の凸部の形状の例を説明する図である。図29は、図21におけるH−H方向にみた入力装置500Aの断面を示している。このように、センサ550の近傍において凸部522は、それ以外の部分より高さが低くなっている。上記のパラメータでいうと、センサ550の近傍において軸Lの長さが短くなっている。
このようにセンサ550の近傍において凸部522の高さを低くしておくことで、ユーザは、凹部に沿って指を移動させているときに凸部522が指に与える感触が変化する部分が、センサ550の存在する位置であることを認識できる。また、センサ550以外の部分では凸部522の指に対する抵抗力が大きくなり、センサ550の近傍では指に対する抵抗力が小さくなるため、放射方向の指の移動が容易となる。
その他にも、ユーザが使用するときの円状入力部500Aの奥側(図21の場合には図上方)において角度θが最も大きく、円状入力部500Aの手前側(図21の場合には図下方)において角度θが最も小さくなるようにしてもよい。このときの角度θは、例えば、最も大きい角度θが45度、最も小さい角度θが−45度となるようにすればよい。すなわち、円状入力部500Aの奥側では、凸部521の凹部511側の傾斜が急になり、円状入力部500Aの手前側では凸部521の凹部512側の傾斜が急になる。
このようにすると、ユーザが用いるときに手前側に指を移動させるときには指の移動の抵抗力が大きくなり、奥側に移動させるときには指の移動の抵抗力が小さくなる。一般的にユーザが手前側に指を移動させる方が奥側に移動させる場合よりも移動させやすい。したがって、手前側に移動させるときに指の移動の抵抗力が大きくなるようにすることが望ましい。
このように、第6実施形態以降におけるセンサ550が設けられた入力装置は、以下のように概念できる。入力装置は、線状に延在する複数の凹部がそれぞれ並んで配置された表面と、前記凹部に沿って設けられ、物体の接触を検知して検知信号を出力するセンサと、を備える。
また、第6実施形態以降における入力装置を用いた情報処理装置は、以下のように概念できる。情報処理装置は、線状に延在する複数の凹部がそれぞれ並んで配置された表面、および前記凹部に沿って設けられ、物体の接触を検知して検知信号を出力するセンサを含む入力装置から検知信号を受け付ける信号受付手段と、所定の順番が規定された複数の項目から少なくとも1つの項目が選択対象であることを表示手段に表示させ、前記検出信号が前記凹部に沿った前記物体の移動を示す場合、当該移動に基づいて前記選択対象の項目を前記所定の順番に従って変更し、前記検知信号が前記凹部から別の前記凹部への前記物体の移動を示す場合、前記選択対象の項目に応じた処理を実行する制御手段と、を有する。
<変形例>
以上、本発明の実施形態およびその実施例について説明したが、本発明は以下のように、様々な態様で実施可能である。
[変形例1]
上述した入力装置は、板状部材505の一方の表面に円状入力部等が形成されていたが、一方の表面に円状入力部、他方の表面にらせん状入力部等、板状部材505の両面にそれぞれ異なる形状の入力部を設けるようにしてもよい。
[変形例2]
上述した入力装置の板状部材505の表面のうち、円状入力部および直線状入力部以外の面については、いわゆるトラックパッドなど、指の接触による操作手段として用いられるようにしてもよい。また、このトラックパッドの機能をオンまたはオフにできるようにしてもよい。オン、オフの切替については、切替スイッチを入力装置に設けてもよいし、所定の操作を円状入力部または直線状入力部に対して行うことによって、切り替えられるようにしてもよい。
[変形例3]
上述した入力装置においてユーザの指が順方向Fまたは逆方向Rに移動すると、選択対象の項目を次に進める変更、または戻す変更をしていたが、選択対象の項目を確定後に最初に指を動かした方向を順方向として定めるようにしてもよい。
この場合には、例えば上述の第8実施形態の説明では、図27に示す例において指がセンサ550−2aからセンサ550−2bに移動するときには、逆方向の移動として説明した。一方、選択対象の項目を確定した後に最初に移動した方向を順方向とすれば、センサ550−2aからセンサ550−2bの移動が、逆方向の移動ではなく順方向の移動として制御される。
[変形例4]
第6実施形態における円状入力部500Aであれば、凹部は閉曲線を形成しているため、一方向に指を動かし続けることができる。一方、第8実施形態における矩形状入力部700のように、凹部が閉曲線ではない場合には、一方向に指を動かし続けることができない。例えば、図27に示す矩形状入力部700の場合には、一つの凹部には8個のセンサ550のみが存在するため、選択対象の項目は8回までしか変更できない。
そのため、複数のセンサ550を通過するように指を動かした後に、凹部から指を離して元の位置に戻り、再び複数のセンサ550を通過するように指を動かすなどして、何度も繰り返すことで、選択対象の項目を8回より多く変更できるようにしてもよい。
例えば、図27に示す例において、センサ550−1aから指を移動させてセンサ550−1bまで移動させると、選択対象の項目が3回進むように変更されるが、その後、再びセンサ550−1aから順方向に指を移動させることにより、さらに選択対象の項目の変更が進むようにしてもよい。
[変形例5]
第6実施形態以降において説明した入力装置においては、指が凸部を乗り越えたことの判定は、隣接する凹部に設けられたセンサ550での検知することであったが、その途中における凸部の頂点近傍においてセンサ550が設けられるようにしてもよい。この場合には、凸部の頂点近傍におけるセンサ550が指の接触を検知した場合に、選択対象の項目が確定されるようにしてもよい。
[変形例6]
第6実施形態以降において説明したセンサ550を用いた入力装置において、センサ550において指が検知される位置では、ユーザに対して何らかの感覚を与えるようになっていてもよい。例えば、センサ550を凹部の底面から露出させて、センサ550以外の部分との境界部分に段差が形成されるようにしてもよい。また、センサ550を凹部の底面から露出させなくとも、その底面に凹凸等の段差を設けることにより、ユーザの指がセンサ550を通過したことをユーザに対して知覚させるようにしてもよい。
[変形例7]
上述した第3実施形態において人差し指を動かすと、選択対象の項目を変更するようになっていたが、指を動かさなくても選択項目の変更は自動的に行われるようにし、指を何本立てるかによって、その項目の変更スピードが変化するようにしてもよい。そして、確定させたい選択対象の項目が表示されているときに、図11(b)のように指を動かしたり、立てている指を曲げたり、立てている指を所定量以上移動させたりして、その選択対象の項目が確定するようにしてもよい。このような指の動作の検出は、上述したとおり、指の座標の算出によればよい。
[変形例8]
上述した実施形態において、電子機器1をスマートフォンに適用した場合の例について説明する。
図30は、本発明の変形例8に係る電気機器1Aの構成を示す概略図である。スマートフォンのような電子機器1Aにおいては、物体検知装置の検知センサ21は、表示装置14A側に設けられ、電子機器1Aの表示装置14A側のユーザの手1000を検知するようになっている。このような構成により、例えば、ユーザが一方の手で電子機器1Aを持ち、もう一方の手1000において、電子機器1Aに対して接触しない状態で、ユーザ指示の入力等をすることも可能である。