(57)【要約】タッチセンサを有する情報処理装置の入力装置であって、タッチセンサが検出した指がタッチしたことを検出し指の位置情報を認識する認識手段と、その位置情報に基づいて仮想キーボードを設定する制御手段を有する。
2012070682.tif 000002
【特許請求の範囲】
【請求項１】
タッチセンサを有する情報処理装置の入力装置であって、前記タッチセンサが検出した検出対象がタッチしたことを検出し前記検出対象の位置情報を認識する認識手段と、前記位置情報に基づいた位置に仮想キーボードを設定する制御手段を有する入力装置。
【請求項２】
前記検出対象のタッチが終了する直前の位置を前記位置情報として認識する認識手段と、仮想キーボードを前記タッチセンサに設定する制御手段とを有する、請求項１記載の入力装置。
【請求項３】
前記検出対象のタッチが継続している間に更新されるタッチの位置を前記位置情報として認識する認識手段と、仮想キーボードを前記タッチセンサに設定する制御手段とを有する、請求項１記載の入力装置。
【請求項４】
第２のタッチセンサと、前記検出対象のタッチが継続している間に更新されるタッチの位置を前記位置情報として認識する認識手段と、仮想キーボードを第２のタッチセンサに設定する制御手段とを有する、請求項１記載の入力装置。
【請求項５】
前記検出対象が予め定められた指であると前提して仮想キーボードを設定する制御手段を有する、請求項１記載の入力装置。
【請求項６】
利用者毎に複数の指の位置関係情報を格納し、前記仮想キーボードを設定する際に前記位置関係情報に基づいた形状で設定する制御手段を有する、請求項１記載の入力装置。
【請求項７】
前記仮想キーボードの使用中に、前記検出対象のタッチ時間が所定時間以上であることを認識し、かつそのタッチの位置が移動した場合に、前記移動のベクトルに対応して仮想キーボードの位置を移動させる制御手段を有する、請求項１記載の入力装置。
【請求項８】
加速度センサと、前記加速度センサが検出した加速度情報を認識する認識手段と、前記加速度情報に基づいて仮想キーボードを設定するモードに切り替える制御手段とを有する、請求項１記載の入力装置。
【請求項９】
照度センサと、前記照度センサが検出した照度情報を認識する認識手段と、前記照度情報に基づいて仮想キーボードを設定するモードに切り替える制御手段とを有する、請求項１記載の入力装置。
【請求項１０】
タッチセンサを有する情報処理装置の入力装置の制御方法であって、前記タッチセンサが検出した検出対象がタッチしたことを検出する検出工程と、前記検出対象の位置情報を認識する認識工程と、前記位置情報に基づいて仮想キーボードを設定する設定工程とを有することを特徴とした、入力装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置の入力装置及びその制御方法に関し、特にタッチセンサを用いた入力装置及びその制御方法に関する。
【背景技術】
【０００２】
情報処理装置においては、入力装置として物体の接触を検出するタッチセンサが使用される。タッチセンサによっては近接を検出できるものもある。さらに、タッチセンサと表示装置を組み合わせたタッチパネルは、入力位置を視覚的に確認しながら入力操作を行えること、その制御をコンピュータのプログラムで設定できるため、入力の位置や入力の方法（距離情報を伴わないボタンなど０次元情報入力，スライダなど１次元情報入力，文字や図形の手書きなど２次元情報入力）の設定を柔軟に変更できること、入力の位置や入力の方法等に関する情報を表示し、入力操作を容易にできること、等から、情報端末で広く利用されている。
一方、従来から使用されているキーボードは、長年にわたる改良によりその操作性は洗練されており、またその操作法を習熟している利用者も多い。そこでそれらの長所を組み合わせて、タッチパネル上に仮想的なキーボードを設定（仮想キーボード）して、従来からのキーボードに準じた操作性を実現している。
例えば、特許文献１（特表２００８−５０８６０１）には図１に示すようにタッチパネル上に仮想的なキーボード（仮想キーボード）を表示させ、キー入力することが開示されている。
しかしながら、この特許文献１に開示された仮想キーボードにはいくつかの問題がある。
最大の問題（第一の問題点）は、キー位置を把握するため触覚を利用できず、タッチパネル上の表示を視覚的に確認しながらでないと、操作できないことである。
特許文献１の仮想キーボードは、指がタッチセンサに触れることをトリガーとし、所定位置に、所定の大きさの仮想キーボードを表示する構成となっている。
操作者はまず、この表示を見て、最初に操作すべきキーの位置を認識する。しかし小型の端末等では、視覚的に表示を確認できない条件、例えば端末をポケットに入れたままキー操作を行う等の場合がある。従来の個々のキーが機械的に実装されたキーボード（従来キーボード）では、キーボードの形状を触覚で認識することで、最初に操作すべきキーの位置を把握することができた。しかし、タッチパネルでは触覚によるキー位置の把握は困難である。
最初に操作したキーに続き複数のキー操作を行う場合も、タッチパネルでは操作すべき複数のキーの位置を視認する必要がある。最初に操作したキー同様に触覚を用いて続いて操作すべきキーの位置を確認したり、他のキーとは触感を変えたホームポジションキーを設けることで、キーボードと操作者の手の相対的な位置関係を操作者が把握し易くするなど、従来キーボードで実現されていた仕組みを利用することができない。
また、従来キーボードではキートップを窪ませる等キー形状を変化させることで、操作者がキーを叩いたときに触覚を用いてキーの押下位置、例えばキーの中央を叩いているか否かを検出し、もし中央からずれていると判定した場合には次回以降の叩く位置を補正することができた。しかし仮想キーボードではこの補正が不可能である。
次に、第二の問題点は、仮想キーボードを端末の操作者から視認できない位置に設置することができないことである。
既に述べたとおり、仮想キーボードは利用者から視認されることを前提としている。一方、端末筐体の操作者に向かっている面に表示器を配置したとき、表示器の視認性を優先してキーボードを端末筐体の背面に設置したい場合がある。ここでタッチセンサを用いた仮想キーボードを用いる場合、操作者からはタッチセンサを視認できないことから、操作者が視覚に頼らずに仮想キーボード上のキーの位置やキーの押下位置を認識するための方法が必要となる。
さらに、第三の問題点は、例えばテンキーなどの小型のキーボードの場合、タッチパネル上には表示できる場所が広く存在するのに、位置が固定されており、操作者の意志に基づく任意の位置に表示することができない点である。特許文献１の場合は、指がタッチセンサに触れることにより所定の位置にキーボードが表示されてしまい、タッチパネル上の操作者の望む任意の位置に表示することができない。
本発明は、このような問題を解決するために提案されたものであり、タッチセンサ上に構成されるキーボードの操作性が優れた入力装置の提供を目的とする。
【発明の開示】
【０００３】
本発明のタッチセンサを有する情報処理装置の入力装置は、タッチセンサが検出した検出対象がタッチしたことを検出し検出対象の位置情報を認識する認識手段と、位置情報に基づいた位置に仮想キーボードを設定する制御手段とを有する。
【図面の簡単な説明】
【０００４】
【図１】特許文献１に示されているタッチパネル上に仮想キーボードを表示させてキー入力することを示す図である。
【図２】本発明による入力装置のブロック図である。
【図３】本発明の第一の実施形態を説明するための図である。
【図４】本発明の実施形態の動作を説明するための図である。
【図５】本発明の第二の実施形態を説明するための図である。
【図６】本発明の第三の実施形態を説明するための図である。
【図７】本発明の実施形態の動作を説明するための図である。
【図８】本発明の実施形態を説明するための図である。
【図９】本発明の実施形態の動作を説明するための図である。
【図１０】本発明の実施形態の動作を説明するための図である。
【図１１】本発明の実施形態の動作を説明するための図である。
【図１２】本発明の実施形態の動作を説明するための図である。
【図１３】本発明の実施形態の動作を説明するための図である。
【図１４】本発明の実施形態の動作を説明するための図である。
【図１５】本発明の実施形態の動作を説明するための図である。
【図１６】本発明の実施形態の動作を説明するための図である。
【０００５】
発明を実施するための最良の形態  又は  発明を実施するための形態
（第一の実施の形態）図１
図２乃至図４を用いて本発明の第一の形態としての入力装置を説明する。
図２のブロック図に示すように、タッチパネル２１は、タッチセンサ２２と表示器２３から構成されている。タッチセンサ２２はタッチ（人間の指先やスタイラスなどの物体が接触または近接するイベント）に基づいたタッチ信号を出力し、プロセッサ２４へ入力する。タッチ信号は、人体や物体の接触または近接が発生している空間上の位置に関連づけられたタッチセンサ２２上の２次元座標情報を含む。接触の場合、一般的にはタッチセンサ２２上の接触された点の、２次元座標情報がタッチ信号として出力されるが、予め定められた距離と方向のズレ（オフセット）を加えた２次元座標情報であってもよい。近接の場合、一般的には近接する物体に最も近いタッチセンサ２２上の点（例えば、物体からタッチセンサ２２上の２次元座標面に下ろした垂線と同面の交点）の２次元座標情報が、タッチ信号として出力される。接触の場合と同様に、２次元座標情報にはオフセットが加えられていてもよい。タッチ信号に含まれ出力される２次元座標情報を、位置情報とする。
タッチセンサ２２におけるタッチ信号の検出（サンプリング）は予め定められた時間間隔にて繰り返し行われ、その結果タッチ信号は、離散したサンプリング時刻に関する、離散時系列値として得られる。タッチ信号検出の時間間隔を狭めることで、タッチを検出したことを示すタッチ信号に対応する時刻を、近似的にタッチ発生の時刻情報（時刻情報）として取り扱うことができる。タッチ信号はこの時刻情報を含むこととする。
タッチセンサ２２は、タッチを検出していない状態（タッチ非検出状態）では、タッチ非検出を示す信号を出力している。タッチ非検出状態からタッチを検出する状態（タッチ検出状態）になったとき、最初のタッチ信号をタッチ開始信号、そこに含まれる位置情報と時刻情報を、各々タッチ開始位置情報、タッチ開始時刻情報とする。タッチ検出状態からタッチ非検出状態になったとき、最後のタッチ信号をタッチ終了信号、その位置情報と時刻情報を、各々タッチ終了位置情報、タッチ終了時刻情報とする。
表示器２３は、プロセッサ２４から出力された表示信号を入力する。
メモリ２５は、保存情報として、制御プログラム２６、設定パラメータ２７，画像データ２８、アプリケーションプログラム２９を有していて、プロセッサ２４から保存情報を入力し、プロセッサ２４へ保存情報を出力する。
記憶装置３０は、記憶情報を有し、プロセッサ２４から記憶情報を入力し、プロセッサ２４へ記憶情報を出力する。メモリカードやハードディスクなどが使用され、一般にメモリ２５に保存できない大容量の情報が記憶される。ネットワーク（図示しない）を介してつながっている場合もある。
タイマー３１は、プロセッサ２４からの設定信号、トリガ信号を入力し、プロセッサ２４へ計時信号、割り込み信号を出力する。
位置センサ３２は、プロセッサ２４へ位置信号を出力する。
プロセッサ２４は、タッチセンサ２２からのタッチ信号を入力し、表示器２３へ表示信号を出力すると共に、メモリ２５から保存情報を入力し、メモリ２５へ保存情報を出力する。また、記憶装置３０から記憶情報を入力し、記憶装置３０へ記憶情報を出力する。さらに、タイマー３１からの計時信号、割り込み信号を入力し、タイマー３１へ設定信号、トリガ信号を出力し、位置センサ３２からの位置信号を入力する。
次に図３を用いて入力装置の動作を説明する。
第一の形態では、タッチセンサ２２上に仮想的なキーの配列を目視できない条件においても、第２のタッチ以降は従来のブラインドタッチ同様の操作を行うことで、キー入力操作が可能となる。
図３に示すように、タッチセンサ２２上に、仮想キーボードが構築される。仮想キーボードでは、タッチセンサ２２のタッチを検出する検出面が、破線で示すように複数のキー領域に分割される。この例では、従来のキーボードのキー配置と同じ形状に分割配置されている。各々のキー領域へのタッチは、各々のキー領域に対応する位置の、従来のキーボードのキーを押下したことと等価であると見なされ、キーが押下されたことを示す信号を出力するものである。仮想キーボードは、実線で示すようにキー領域毎に仮想的なキーであることを示す画像が表示されると利便性が向上するが、表示されない場合もある。
第一の形態では仮想キーボードとして、テンキーを一例に説明する。しかし、本発明ではキーの数、形状、配置はこれに限定されることは無く、通常のＱＷＥＲＴＹ配列のキーボードはもちろん、右手操作用と左手操作用にキーがグループ化され配置されたキーボードなどを含め、複数のキーを有するキーボードであれば全てに適用できる。もちろん新たなキー配列を定義しても構わない。
図４、図１０、図１１、図１２、図１３を参照して、タッチセンサ２２上の任意の位置に仮想キーボードを配置し、操作者の指によって入力処理を行う動作について詳細に説明する。
まず、仮想キーボードを用いた入力モード（仮想キーボード入力モード）が設定される。（図４のＳｔｅｐ１、図１０）
仮想キーボード入力モードが設定される場合として、電源を入れた直後の初期設定で設定される場合や、モード切替要求信号により入力モードを含む他の動作モードから切り替えられる場合がある。動作モードによっては、入力に関与しないアプリケーション等が動作している場合も想定される。
初期設定で設定される場合は、初期設定終了後、プロセッサ２４は仮想キーボード入力処理を行う制御プログラム２６を実行する。他の動作モードから切り替えられる場合は、プロセッサ２４はモード切替要求信号を検出すると制御プログラム２６を実行する。
モード切替要求信号は、タッチセンサ２２からの入力で仮想キーボード入力モードを選択したときに生成される場合の他、その他のセンサや入力デバイスが出力した信号を元に生成されることができる。
例えば、タッチパネル２１やタッチセンサ２２の周囲の額縁部や、端末の側面、背面等（図８）に、触覚で位置を認識できるようなスイッチ３３（小さなタッチセンサや、キーであってもよい）を設け、例えば親指操作でモード切替要求信号を切り替えるように設定すると、モード切替操作に加えタッチパネル２１やタッチセンサ２２に対する操作者の手の位置決めが容易となる。
また、加速度センサ３４（振動センサ、重力センサも含まれる）を備え、その出力を用いてモード切替要求信号を生成することができる。
例えば、操作者が通常タッチパネル２１を水平に配置し見下ろして操作することを好む場合で、かつタッチパネル２１が水平面に対して大きな角度を有している（例えば６０度以上）と重力方向の検出結果から判定した場合に、操作者は端末を鞄やポケットに入れたまま目視せず操作して可能性が高いと推定し、入力モードを切り替えるよう設定できる。同様に重力の検出結果からタッチパネル２１やタッチセンサ２２が下を向いている（上から見下ろす操作者に対し、端末の背面にタッチパネル２１やタッチセンサ２２が配置されている）とき、操作者は仮想キーボードを目視せず操作していると推定し、入力モードを切り替えるよう設定できる。更に端末を手でもって歩いているときの揺れや自動車に乗っているときの揺れを検出し、操作者は仮想キーボードに視線を向けることのできない状態で操作している、または揺れにて視認が困難であると推定し、入力モードを切り替えるよう設定できる。
また、照度センサ３５（カメラの受光素子も含まれる）を備え、その出力を用いてモード切替要求信号を生成することができる。
映画館等周囲が暗い場合、端末の照明を利用できない条件下にあり手探り状態での仮想キーボード操作が求められると推定し、入力モードを切り替えるよう設定できる。
プロセッサ２４はモード切替要求信号の入力をマスクする機能を有し、仮想キーボード入力モードが不要な、または禁止される場合に動作モード切替を行わないようにする設定が可能である。
タッチセンサ２２が仮想キーボード入力モードとなると、プロセッサ２４は、制御プログラム２６を実行し、以下の処理を行う。このとき設定情報（設定パラメータ２７に含まれる）がメモリ２５からプロセッサ２４へ伝達され、参照される。以下、タッチとして接触の場合を示すが、近接の場合も同様である。
まず最初に、仮想キーボード初期位置決定処理が行われる。（図４のＳｔｅｐ２，図１１）
プロセッサ２４は、仮想キーボード入力モードの初期状態ではタッチセンサ２２からの第１のタッチ信号を待っている。検出対象としての操作者の指がタッチセンサ２２に触れると、タッチセンサ２２は指の接触（タッチ）を検出し、第１のタッチ信号をプロセッサ２４へ出力する。第１のタッチ信号には、接触（タッチ）の時刻情報（第１の時刻情報）と、接触（タッチ）の位置情報（第１の位置情報）が含まれている。指がタッチセンサ２２に接触（タッチ）し続けている間、タッチセンサ２２は指の接触（タッチ）を継続して捕捉し、第１のタッチ信号として出力し続ける。
操作者の指がタッチセンサ２２から離れたことをタッチセンサ２２が探知すると、プロセッサ２４は第１のタッチ信号に関するタッチ終了位置情報を第１の位置情報として取得する。なお、第１の位置情報はタッチ終了位置情報に限定されるものではない。例えば、タッチ開始位置情報を利用することも可能であるが、ここではタッチ終了位置情報を用いた場合について説明する。
プロセッサ２４は、第１の位置情報に基づいて、仮想キーボード設定処理を実行する。（図４のＳｔｅｐ３、図１２）
プロセッサ２４は、第１の位置情報に基づき、タッチセンサ２２の接触検出面を複数の領域に分割する。例えば、位置がＸＹ２次元座標形で示される場合、Ｘ方向、Ｙ方向の各々にしきい値を設け、マトリックス状に分割する。（図３では例として、各々の方向のしきい値を表す破線がｘ０〜ｘ４，ｙ０〜ｙ５で示されている。）設定パラメータ２７には、基本しきい値が保存されている。基本しきい値は、マトリックスの相対的な配置や大きさの情報が含まれている。プロセッサ２４は、基本しきい値に第１のタッチ信号に関するタッチ終了位置情報（第１の位置情報）をオフセットとして加算することで、しきい値情報を生成する。なお、第１のタッチを行う指は予め決められていて、それを前提に基本しきい値は設定される。他の指を第１のタッチに使用する場合は、その指に応じた基本しきい値が選択される。
また、プロセッサ２４はマトリックスの各領域に、設定パラメータ２７に保存されている仮想キーボードとしての入力情報を対応付ける。
仮想キーボードとしての入力情報の例としては、Ａ，Ｂ，・・・１，２，・・・などの文字コードや、リターンキーやエスケープキーなどの制御コードが挙げられる。これらは例えばテーブル形式で設定パラメータ２７に保存される。文字コードのように予め順序が決まっている情報などは、演算によって対応付けを行っても良い。この場合、演算式に関する情報（例えば係数や定数）が設定パラメータ２７に保存される。
続いて、仮想キーボード動作処理が実行される。（図４のＳｔｅｐ４、図１３）
プロセッサ２４は、タッチセンサ２２からの第２のタッチ信号を待つ。２回目の接触（タッチ）として再び操作者の指がタッチセンサ２２に触れ、タッチセンサ２２が第２のタッチ信号をプロセッサ２４へ出力すると、プロセッサ２４は第２のタッチ信号に含まれる位置情報としきい値情報を比較演算し、２回目の接触（タッチ）が前記マトリックスのどの領域で発生したかを検出する。そして、検出された領域に対応する仮想キーボードとしての入力情報を、文書作成や表計算、ゲームなどとして実行されているアプリケーションプログラム２９の処理へ引き渡す。
プロセッサ２４は、上記第２のタッチ信号を待つ状態から入力情報の引き渡しまでの処理を仮想キーボード動作処理時が実行されている間繰り返す。なお、第２以降のタッチ信号を待つ状態で、次のタッチ信号の入力が無く予め定められた上限時間を経過した場合、仮想キーボード動作処理は終了する。設定パラメータ２７に格納された上限時間の情報は、プロセッサ２４にてタイマー３１に設定される。タッチ信号待ちの状態になるときに、プロセッサ２４はタイマー３１へ計時開始のトリガ信号を出力し、タイマー３１は計時を開始する。タイマー３１は上限時間を超える時間を計時するとプロセッサ２４へ割り込み信号を出力し、プロセッサ２４は仮想キーボード動作処理を終了する。プロセッサ２４は、タイマー３１からの割り込み信号を受信する前にタッチ信号を検出するとタイマー３１へ計時停止の設定信号を出し、タイマー３１は計時を停止する。そして入力情報の引き渡しが完了すると、再びタッチ信号待ちの状態に戻る。
以上の説明より、第一の形態では、操作者の手（ここでは、相対的な位置関係が予め決まっている複数の指も群として含まれることを意味する）の位置を示す第１の位置情報を有する第１のタッチ信号に基づいて、第２以降のタッチが行われるべき仮想キーボードが構築される（仮想キーボード初期位置決定処理、仮想キーボード設定処理）。したがって、タッチセンサ２２上に仮想的なキーの配列を表示できない、または表示を目視できない条件においても、第２のタッチ以降は従来のブラインドタッチ同様の操作を行うことで、キー入力操作が可能となる。
応用として、仮想キーボードが端末の背面に構築されている場合の操作概念図を図８に示す。端末の背面に設置されたタッチセンサ２２に、しきい値情報ｘ１、ｘ２、ｙ１、ｙ２が設定されている。
一方、仮想キーボード操作中にタッチセンサ２２の上の仮想キーボードの位置を変更したい場合がある。仮想キーボードの位置を変更するために新たなモードへの変更や、移動のためのキーを押して変更することは可能だが、そのための操作時間が必要となり、操作性に難がある。また、仮想キーボード操作中に第１のタッチにて当初設定された位置から操作者の手（相対的な位置関係が予め決まっている複数の指を群として含む）が移動してしまう場合がある。
そこで第一の形態では、特別な操作をすることなく、操作中の操作者の手（指の群）の移動に合わせて仮想キーボードの位置を変更できる構成としている。
すなわち、以下に示す第１の仮想キーボード移動処理を行う。（図１４）
指がタッチセンサ２２に接触（タッチ）中は、接触（タッチ）の位置情報が予め定められた時間間隔にて繰り返し検出され、離散時系列値としてプロセッサ２４に入力されている。プロセッサ２４は位置情報を監視し、前記時間間隔毎に、ある時刻の位置情報を始点、次の検出時刻の位置情報を終点とする移動ベクトルを演算により求め、仮想キーボードを移動ベクトルの方向、距離だけ移動させる処理を行う。（第１の仮想キーボード移動処理）
上記の処理においてプロセッサ２４は、予め定められたサンプル間隔で間引かれた位置情報を基に、移動ベクトルの演算以降の処理を行うこともできる。つまりタッチの検出頻度に対し移動ベクトルの演算頻度を下げることができる。この結果、演算量を削減することができる。
他の方法として、第２の仮想キーボード移動処理を示す。（図１５）
プロセッサ２４は位置情報を監視し、タッチを継続する時間（タッチ時間）が所定の上限値以上になり、かつ操作者の指がタッチセンサ２２上を接触（タッチ）したまま移動したと判断した場合は、タッチ開始位置情報を始点、タッチ終了位置情報を終点とする移動ベクトルを求め、仮想キーボードを移動ベクトルの方向、距離だけ移動させる処理を行う。
タッチ時間を計測する処理として、プロセッサ２４は、タッチ開始時刻情報が入力されると、タイマー３１へ計時開始を指示するトリガ信号を出力する。タイマー３１は、プロセッサ２４からのトリガ信号が入力されると、プロセッサ２４からの設定情報として予め与えられた時間を計時し、その時間が経過したときに割り込み信号をプロセッサ２４へ出力する。プロセッサ２４は、割り込み信号を受信すると、内部の割り込みフラグ（図示しない）をセットする。（初期設定では、割り込みフラグはクリアされている。）その後、タッチ終了時刻情報が入力されると、タッチ開始位置情報を始点、タッチ終了位置情報を終点とする移動ベクトルを演算で求める。移動ベクトルの大きさが予め定められた下限値よりも小さいときは、プロセッサ２４は同一のキーが継続して押下されていたと判定する。一方、前記下限値以上であった場合は接触（タッチ）したまま移動したと判断し、仮想キーボードを移動ベクトルの方向、大きさ（距離）だけ移動させる処理を行う。プロセッサ２４はタッチ終了時刻情報を入力すると、割り込みフラグをクリアする。なお、プロセッサ２４は、タッチ終了時刻情報が入力されたときに割り込みフラグがセットされていなければ、移動ベクトルの演算以降の処理は行わない。
以上より、第一の実施の形態によると、第１のタッチ信号の位置情報（第１の位置情報）に基づいて第２以降のタッチが行われるべき仮想キーボードが構築される。したがって、仮想的なキーの配列を目視できない条件においても、第２のタッチ以降は従来のブラインドタッチ同様の操作を行うことで、キー入力操作が可能となる。
また、特別な操作をすることなくキーボードの位置を変更可能となる。
更に、仮想キーボード操作中に第１のタッチにて当初設定された位置から操作者の（複数の指が群として含まれる）手が動いてしまった場合でも、その動きに仮想キーボードが追随するので、次のタッチ入力の誤操作発生確率を下げることができ、操作性を改善することができる。
なお、プロセッサ２４は、タッチセンサ２２に替えてタッチパネル２１が使用されている場合、上記マトリックスの個々の領域を操作者が視覚的に識別するための画像を、表示器２３に表示することができる。図３では、テンキーの形状を模した場合を示している。各キーを示す矩形のイメージが、個々の領域を示している。この他、色つきのタイルや、文字などのキャラクタやアイコンなどを用いても良い。
（第二の実施の形態）
次に、図５を用いて、本発明の第二の実施の形態と動作を説明する。
本実施の形態は、仮想キーボードが操作者の手の位置を継続して認識するため、基準となる第１の指のタッチ位置を継続して検出しつつ第２の指による入力操作を行うことを特徴としている。
実施の形態として、図５により、親指によるタッチ位置を基に仮想キーボードが設定され、人差し指で仮想キーボードの入力操作が行われる入力装置を示す。図４、図１０、図１６、図１２、図１３を参照して、タッチセンサ２２上の任意の位置に仮想キーボードを配置し、操作者の指によって入力処理を行う動作について詳細に説明する。
この入力装置においては、第一の実施の形態と同様の手順で仮想キーボード入力モードが設定されている。（図４のＳｔｅｐ１、図１０）
まず、仮想キーボード初期位置決定処理が実行される。（図４のＳｔｅｐ２、図１６）その動作を説明する。
図５において、プロセッサ２４は、初期状態では、タッチセンサ２２からの第１のタッチ信号を待っている。操作者の指がタッチセンサ２２に触れると、タッチセンサ２２は第１のタッチ信号をプロセッサ２４へ出力する。第１のタッチ信号には、接触（タッチ）の位置情報（第１の位置情報）と時刻情報（第１の時刻情報）が含まれている。これらの情報は、繰り返し検出され、更新されている。
次に、プロセッサ２４は、第１のタッチ信号（図５では親指による）が入力されると、その第１の位置情報に基づいて、仮想キーボード設定処理を実行する。（図４のＳｔｅｐ３、図１２）以下、その動作を示す。
なお、以下の動作は、第１のタッチ信号の起源である操作者の指が接触（タッチ）解除する（この例ではタッチセンサ２２から離れる）と終了される。
プロセッサ２４は、第１のタッチ信号の位置情報（第１の位置情報）に基づき、タッチセンサ２２の接触検出面を複数の領域に分割する。例えば、位置がＸＹ２次元座標形で示される場合、Ｘ方向、Ｙ方向の各々にしきい値を設け、マトリックス状に分割する。設定パラメータ２７には、基本しきい値が保存されている。基本しきい値は、マトリックスの相対的な配置や大きさの情報が含まれている。プロセッサ２４は、基本しきい値に第１のタッチ信号の位置情報（第１の位置情報）をオフセットとして加算することで、しきい値情報を生成する。また、プロセッサ２４はマトリックスの各領域に、設定パラメータ２７に保存されている仮想キーボードとしての入力情報を対応付ける。図５では、親指を第１のタッチ信号の生成に用いている。このとき基本しきい値は親指を用いる場合の値が使用される。なお、第１のタッチを行う指は予め決められていて、それを前提に基本しきい値は設定される。他の指を第１のタッチ信号の生成に使用する場合は、その指に応じた基本しきい値が選択される。
続いて、仮想キーボード動作処理が実行される。（図４のＳｔｅｐ４、図１３）
プロセッサ２４は、タッチセンサ２２からの第１のタッチ信号（図５では親指による）を入力しつつ、第２のタッチ信号（図５では人差し指による）を待つ。第２の接触（タッチ）として操作者の指がタッチセンサ２２に触れ、タッチセンサ２２が第２のタッチ信号をプロセッサ２４へ出力すると、プロセッサ２４は第２のタッチ信号に含まれる位置情報としきい値情報を比較演算し、２回目の接触（タッチ）が前記マトリックスのどの領域で発生したかを検出する。そして、検出された領域に対応する仮想キーボードとしての入力情報を、文書作成や表計算、ゲームなどとして実行されているアプリケーションプログラム２９の処理へ引き渡す。
プロセッサ２４は、仮想キーボード動作処理が実行されている間、上記第２のタッチ信号待ちから入力情報の引き渡しまでの処理を繰り返す。
仮想キーボード動作処理は、第１のタッチ信号の起源である操作者の指が接触（タッチ）解除されると終了する。この動作は、第２以降のタッチ信号の有無に依らない。
なお、第１のタッチ信号が継続している場合であっても、第一の実施の形態と同様に、第２以降のタッチ信号を待つ状態で、かつ予め定められた時間を経過しても次のタッチ信号の入力が無い場合には、仮想キーボード動作処理は終了する。
仮想キーボード初期位置決定処理を再開するために、全ての接触（タッチ）が一旦解除される。
一方、第１の接触（タッチ）点が接触（タッチ）を維持したまま移動した場合、それに合わせて仮想キーボードの位置が更新される。
すなわち、以下に示す仮想キーボード移動処理を行う。（図１４）
親指がタッチセンサ２２に接触（タッチ）中は、第１の位置情報が予め定められた時間間隔にて繰り返し検出され、離散時系列値としてプロセッサ２４に入力されている。プロセッサ２４は第１の位置情報を監視し、前記時間間隔毎に、ある検出時刻の第１の位置情報を始点、次の検出時刻の第１の位置情報を終点とする移動ベクトルを演算により求め、仮想キーボードを移動ベクトルの方向、距離だけ移動させる処理を行う。（仮想キーボード移動処理）
上記の処理においてプロセッサ２４は、予め定められたサンプル間隔で間引かれた第１の位置情報を基に、移動ベクトルの演算以降の処理を行うこともできる。つまりタッチの検出頻度に対し移動ベクトルの演算頻度を下げることができる。この結果、演算量を削減することができる。
仮想キーボード動作処理または仮想キーボード移動処理が終了し全ての接触（タッチ）が解除された後、親指が再び接触（タッチ）したことをタッチセンサ２２が検出すると、再び仮想キーボード初期位置決定処理が開始される。
上記第二の実施の形態の説明では、位置基準となる第１のタッチに親指を用いる場合を示したが、もちろん他の指を用いても構わない。その場合、使用される指に応じた基本しきい値が使用される。
以上より、第二の実施の形態によると、基準となる第１の指による第１のタッチの位置情報（第１の位置情報）をもとに、操作者の手の位置が継続して認識される。そして、第２以降のタッチに用いられ第１の指と同じ手にあるが異なる指と、第１の指との相対的な位置関係が限定されていることを応用し、仮想キーボードが構築される。この結果、仮想的なキーの配列を目視できない条件においても入力操作を容易に行うことができる。
応用として、仮想キーボードが端末の背面に構築されている場合の操作概念図を図８に示す。ここでは、基準となる第１のタッチを行う指が小指である場合が示されている。
また、第１の接触（タッチ）以降に操作者の手や指が動いてしまった場合、特にタッチとタッチの間に発生した操作者の手の動きについても仮想キーボードが追従するので、タッチ入力の誤操作発生確率を下げることができ、入力操作が更に改善される、という効果が得られる。
（第三の実施の形態）
本発明の第三の実施の形態として、上記実施の形態では、基準となる指の検出を仮想キーボードを構成するタッチセンサ２２で行ったが、図６のように第２の位置センサ３２を設けて検出しても良い。図６では額縁部下辺にが配置されているが、図６のように親指が左側に出る右手操作の人には左辺、右側に出る左手操作の人には右辺に配置することもできる。位置センサ３２はタッチセンサ２２に比べて小さいため、第二の実施の形態と比べると基準となる指の位置が限定される。よって、位置情報量の削減にともなってプロセッサ２４による演算量を削減することができる。特にタッチパネル２１を用いた場合、第１のタッチのために表示面を塞ぐ必要が無く、視認性が改善される。
以上説明した実施の形態において、個々の操作者に適したサイズの仮想キーボードを設定するための操作（初期キャリブレーション）について図２、図７、図９を用いて説明する。
初期キャリブレーションにて、利用者毎に手の大きさ（指と指の位置関係）情報を入力しメモリ２５や記憶装置３０等に登録（格納）しておくことで、利用者に応じて最適なキー配置、大きさの仮想キーボードを選択して構成することができる。
まず、図７（ａ）に示すように手を開いて指を伸ばしタッチセンサ２２に触れ、指の先端が接触する位置（親指，人差し指，中指，薬指，小指について、各々点Ｏ，点Ａ，点Ｂ，点Ｃ，点Ｄとする）を読みとりメモリ２５に保存する。（図９のＳｔｅｐ１）
取得した点Ｏ，点Ａ，点Ｂ，点Ｃ，点Ｄの座標から各々の点の距離が求まる。これらは様々な操作者の手が相似の関係にあると仮定すると、操作者の手の大きさに対応する。そこで、例えば各々の点間距離の平均値や、更に点間距離がどの指に関する値かで重み付けを行った重み付け平均値を、手の大きさ情報として設定パラメータ２７に保存する。設定パラメータ２７にはテンキーやＱＷＥＲＴＹキーボードなどの標準的な仮想キーボードの形状データが登録されている。そして、形状データを手の大きさ情報とかけ合わせるなどの演算を行って、操作者の手の大きさに適した仮想キーボードの基本しきい値を求めることができる。（図９のＳｔｅｐ２）基本しきい値は設定パラメータ２７に保存される。（図９のＳｔｅｐ３）
次に、仮想キーボードの形状について更なる工夫を示す。
前述の図７（ａ）に示す点Ｏ，点Ａ，点Ｂ，点Ｃ，点Ｄを読みとりメモリ２５に保存する。次に、図７（ｂ）に示すように親指の位置や曲げ具合はそのままに、その他の指は曲げてタッチセンサ２２に触れ、指の先端が接触する位置（人差し指，中指，薬指，小指について、各々点Ａ’，点Ｂ’，点Ｃ’，点Ｄ’とする）を読みとりメモリ２５に保存する。このとき腕がタッチセンサ２２と並行で、曲げた指の末節（指先と第一関節の間）はタッチセンサ２２に垂直、第２間接が直角となることを目安とするとよい。（図９のＳｔｅｐ１）
図７（ｃ）にて、タッチセンサ２２上でのこれらの点の例を示す。このとき、点Ａ，点Ｂ，点Ｃ，点Ｄは、親指の位置Ｏを基準としたときに操作者から最も遠い位置に配置可能な仮想キーの位置を、各々人差し指，中指，薬指，小指について示している。同様に、点Ａ’，点Ｂ’，点Ｃ’，点Ｄ’は、親指の位置Ｏを基準としたときに操作者に最も近い位置に配置可能な仮想キーの位置を、各々人差し指，中指，薬指，小指について示している。したがって、人差し指，中指，薬指，小指の指先は各々概ね直線ＡＡ’，直線ＢＢ’，直線ＣＣ’，直線ＤＤ’上を動くことができ、仮想キーボードの仮想キーは点Ａ，点Ｂ，点Ｃ，点Ｄを結ぶ線と点Ａ’，点Ｂ’，点Ｃ’，点Ｄ’を結ぶ線の間に配置されることが望ましい。特に、これら直線ＡＡ’，直線ＢＢ’，直線ＣＣ’，直線ＤＤ’上に配置されることが望ましい。また、図７（ｃ）に破線で示すように、直線ＡＡ’，直線ＢＢ’，直線ＣＣ’，直線ＤＤ’の中で隣接するものの中間（例えば中線）を仮想キーの境界とすることで、仮想キーボード使用時に隣接する仮想キーを誤操作する可能性を削減することができる。また、線分ＡＡ’，線分ＢＢ’，線分ＣＣ’，線分ＤＤ’各々を等間隔に分割する点を中心として操作者に対して遠近方向に仮想キーを配置することで、同様に隣接する仮想キーを誤操作する可能性を削減することができる。（領域の分割）
これら仮想キーの位置や境界の情報は、メモリ２５に保存された点Ａ，点Ｂ，点Ｃ，点Ｄ，点Ａ’，点Ｂ’，点Ｃ’，点Ｄ’の座標を基に演算により求められ（図９のＳｔｅｐ２）、基本しきい値として設定パラメータ２７に保存される。（図９のＳｔｅｐ３）
上記は、親指の位置Ｏを基準とする、第二の実施の形態について示したが、第一の実施の形態にも利用できる。
例えば、第１のタッチは「伸ばした中指」で行うと予め決めておく。そして第１のタッチ信号が検出されるとその位置情報が点Ｂに対応すると仮定し、仮想キーボードが設定される。（この場合、親指についても予め、伸ばしたときと曲げたときの位置情報が取得されている。）
更に、第一の実施の形態の変形例として、第１のタッチは「伸ばした中指」、第２のタッチを「伸ばした親指」、仮想キーボード入力は第３のタッチ以降で行うと決めておけば、第１のタッチ（中指）を中心とする回転方向のズレを補正することができる。
この出願は、２０１０年１１月２４日に出願された日本出願特願２０１０−２６１０６０を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【０００６】
本発明は、タッチセンサを用いた入力装置及びその制御方法に関する。
【符号の説明】
【０００７】
２１    タッチパネル
２２    タッチセンサ
２３    表示器
２４    プロセッサ
２５    メモリ
２６    制御プログラム
２７    設定パラメータ
２８    画像データ
２９    アプリケーションプログラム
３０    記憶装置
３１      タイマー
３２    位置センサ
３３    スイッチ
３４    加速度センサ
３５    照度センサ
【図１】
2012070682.tif 000003
【図２】
2012070682.tif 000004
【図３】
2012070682.tif 000005
【図４】
2012070682.tif 000006
【図５】
2012070682.tif 000007
【図６】
2012070682.tif 000008
【図７Ａ】
2012070682.tif 000009
【図７Ｂ】
2012070682.tif 000010
【図７Ｃ】
2012070682.tif 000011
【図８】
2012070682.tif 000012
【図９】
2012070682.tif 000013
【図１０】
2012070682.tif 000014
【図１１】
2012070682.tif 000015
【図１２】
2012070682.tif 000016
【図１３】
2012070682.tif 000017
【図１４】
2012070682.tif 000018
【図１５】
2012070682.tif 000019
【図１６】
2012070682.tif 000020
【国際調査報告】
2012070682.tif 000021
2012070682.tif 000022
2012070682.tif 000023
2012070682.tif 000024