(57)【特許請求の範囲】
【請求項１】
仮想キーパッド上でのキーストロークの曖昧性を除去する方法であって、
前記仮想キーパッドを表示するタッチスクリーン上で静止している複数の指先それぞれのタッチ位置の基準線を判定するステップと、
前記仮想キーパッドを表示するタッチスクリーン上で前記キーストロークを検出するステップと、
前記検出したキーストロークが、重複領域において生じたかどうか判定するステップと、
前記検出したキーストロークが、前記重複領域において生じた場合、前記タッチスクリーン上のすべてのタッチについて現在の位置を判定するステップと、
前記タッチ位置の基準線からずれたのは前記複数の指先のどれか判定するステップと、
前記検出したキーストロークの位置および前記タッチ位置の基準線からずれた前記判定したタッチに基づき、前記キーストロークの曖昧性を除去するステップとを含む、方法。
【請求項２】
仮想キーパッド上でのキーストロークの曖昧性を除去する方法であって、
前記仮想キーパッドを表示するタッチスクリーン上のキーストロークを検出するステップと、
前記検出したキーストロークが、重複領域において生じたかどうか判定するステップと、
前記重複領域における前記検出したキーストロークのタッチの形を判定するステップと、
前記重複領域における前記検出したキーストロークのタッチの形の向きを判定するステップと、
前記検出したキーストロークのタッチの形の前記判定した向きに基づいて、どちらの手が前記検出したキーストロークを実行したか判定するステップと、
前記検出したキーストロークの位置およびどちらの手が前記検出したキーストロークを実行したかに基づいて、文字を前記重複領域における前記検出したキーストロークに割り当てるステップとを含む、方法。
【請求項３】
仮想キーパッド上でのキーストロークの曖昧性を除去する方法であって、
前記仮想キーパッドを表示するタッチスクリーン上のキーストロークを検出するステップと、
前記検出したキーストロークが、重複領域において生じたかどうか判定するステップと、
前記重複領域における前記検出したキーストロークのタッチの形を判定するステップと、
前記重複領域における前記検出したキーストロークの前記タッチの形を、格納されたキーストローク識別特性データと比較して、合致するタッチの形を判定するステップと、
前記重複領域における前記検出したキーストロークに、前記合致したタッチの形に対応する文字を割り当てるステップとを含む、方法。
【請求項４】
前記タッチの形に基づいて、前記キーストロークの曖昧性を除去するステップが、
前記検出したキーストロークによって前記タッチスクリーンに加えられる圧力を測定するステップと、
前記重複領域における前記検出したキーストロークの前記測定した圧力を、格納されたキーストローク識別特性データと比較して、合致する圧力識別特性を判定するステップと、
前記重複領域における前記検出したキーストロークに、前記合致した圧力識別特性に対応する文字を割り当てるステップとを含む、請求項３に記載の方法。
【請求項５】
前記タッチの形に基づいて、前記キーストロークの曖昧性を除去するステップが、
前記キーストロークの曖昧性が、意図したキー値について、キーストロークのタッチの形および測定した圧力とキーストローク識別特性データとの比較に基づいて除去できるかどうか判定するステップと、
前記キーストロークの曖昧性が、キーストロークのタッチの形および測定した圧力に基づいて除去できない場合、予測テキストルーチンを実行して、可能性のある意図したキー値の間で選択するステップと、
前記重複領域における前記検出したキーストロークに、前記予測テキストルーチンによって同定した文字を割り当てるステップとを含む、請求項４に記載の方法。
【請求項６】
前記重複領域は、右手部のキーと左手部のキーとの重複領域である請求項１から３のいずれか一項に記載の方法。
【請求項７】
仮想キーパッドを有するモバイル装置であって、
前記仮想キーパッドを表示するタッチスクリーン上で静止している複数の指先それぞれのタッチ位置の基準線を判定する手段と、
前記仮想キーパッドを表示するタッチスクリーン上でキーストロークを検出する手段と、
前記検出したキーストロークが、重複領域において生じたかどうか判定する手段と、
前記検出したキーストロークが、前記重複領域において生じた場合、前記タッチスクリーン上のすべてのタッチについて現在の位置を判定する手段と、
前記タッチ位置の基準線からずれたのは前記複数の指先のどれか判定する手段と、
前記検出したキーストロークの位置および前記タッチ位置の基準線からずれた前記判定したタッチに基づき、前記キーストロークの曖昧性を除去する手段とを含む、モバイル装置。
【請求項８】
仮想キーパッドを有するモバイル装置であって、
前記仮想キーパッドを表示するタッチスクリーン上のキーストロークを検出する手段と、
前記検出したキーストロークが、重複領域において生じたかどうか判定する手段と、
前記重複領域における前記検出したキーストロークのタッチの形を判定する手段と、
前記重複領域における前記検出したキーストロークのタッチの形の向きを判定する手段と、
前記検出したキーストロークのタッチの形の前記判定した向きに基づいて、どちらの手が前記検出したキーストロークを実行したか判定する手段と、
前記検出したキーストロークの位置およびどちらの手が前記検出したキーストロークを実行したかに基づいて、文字を前記重複領域における前記検出したキーストロークに割り当てる手段とを含む、モバイル装置。
【請求項９】
仮想キーパッドを有するモバイル装置であって、
前記仮想キーパッドを表示するタッチスクリーン上のキーストロークを検出する手段と、
前記検出したキーストロークが、重複領域において生じたかどうか判定する手段と、
前記重複領域における前記検出したキーストロークのタッチの形を判定する手段と、
前記重複領域における前記検出したキーストロークの前記タッチの形を、格納されたキーストローク識別特性データと比較して、合致するタッチの形を判定する手段と、
前記重複領域における前記検出したキーストロークに、前記合致したタッチの形に対応する文字を割り当てる手段とを含む、モバイル装置。
【請求項１０】
前記タッチの形に基づいて、前記キーストロークの曖昧性を除去する前記手段が、
前記検出したキーストロークによって前記タッチスクリーンに加えられる圧力を測定する手段と、
前記重複領域における前記検出したキーストロークの前記測定した圧力を、格納されたキーストローク識別特性データと比較して、合致する圧力識別特性を判定する手段と、
前記重複領域における前記検出したキーストロークに、前記合致した圧力識別特性に対応する文字を割り当てる手段とを含む、請求項９に記載のモバイル装置。
【請求項１１】
前記タッチの形に基づいて、前記キーストロークの曖昧性を除去する前記手段が、
前記キーストロークの曖昧性が、意図したキー値について、キーストロークのタッチの形および測定した圧力とキーストローク識別特性データとの比較に基づいて除去できるかどうか判定する手段と、
前記キーストロークの曖昧性が、キーストロークのタッチの形および測定した圧力に基づいて除去できない場合、予測テキストルーチンを実行して、可能性のある意図したキー値の間で選択する手段と、
前記重複領域における前記検出したキーストロークに、前記予測テキストルーチンによって同定した文字を割り当てる手段とを含む、請求項１０に記載のモバイル装置。
【請求項１２】
前記重複領域は、右手部のキーと左手部のキーとの重複領域である請求項７から９のいずれか一項に記載のモバイル装置。
【請求項１３】
タッチスクリーンディスプレイと、
メモリユニットと、
前記メモリユニットおよび前記タッチスクリーンディスプレイに結合されたプロセッサとを含むモバイル装置であって、
前記プロセッサが、
仮想キーパッドを表示するタッチスクリーン上で静止している複数の指先それぞれのタッチ位置の基準線を判定するステップと、
前記仮想キーパッドを表示するタッチスクリーン上でキーストロークを検出するステップと、
前記検出したキーストロークが、重複領域において生じたかどうか判定するステップと、
前記検出したキーストロークが、前記重複領域において生じた場合、前記タッチスクリーン上のすべてのタッチについて現在の位置を判定するステップと、
前記タッチ位置の基準線からずれたのは前記複数の指先のどれか判定するステップと、
前記検出したキーストロークの位置および前記タッチ位置の基準線からずれた前記判定したタッチに基づき、前記キーストロークの曖昧性を除去するステップと
を含むステップを実行するようにソフトウェア命令によって構成される、モバイル装置。
【請求項１４】
タッチスクリーンディスプレイと、
メモリユニットと、
前記メモリユニットおよび前記タッチスクリーンディスプレイに結合されたプロセッサとを含むモバイル装置であって、
前記プロセッサが、
仮想キーパッドを表示するタッチスクリーン上のキーストロークを検出するステップと、
前記検出したキーストロークが、重複領域において生じたかどうか判定するステップと、
前記重複領域における前記検出したキーストロークのタッチの形を判定するステップと、
前記重複領域における前記検出したキーストロークのタッチの形の向きを判定するステップと、
前記検出したキーストロークのタッチの形の前記判定した向きに基づいて、どちらの手が前記検出したキーストロークを実行したか判定するステップと、
前記検出したキーストロークの位置およびどちらの手が前記検出したキーストロークを実行したかに基づいて、文字を前記重複領域における前記検出したキーストロークに割り当てるステップと
を含むステップを実行するようにソフトウェア命令によって構成される、モバイル装置。
【請求項１５】
タッチスクリーンディスプレイと、
メモリユニットと、
前記メモリユニットおよび前記タッチスクリーンディスプレイに結合されたプロセッサとを含むモバイル装置であって、
前記プロセッサが、
仮想キーパッドを表示するタッチスクリーン上のキーストロークを検出するステップと、
前記検出したキーストロークが、重複領域において生じたかどうか判定するステップと、
前記重複領域における前記検出したキーストロークのタッチの形を判定するステップと、
前記重複領域における前記検出したキーストロークのタッチの形を、格納されたキーストローク識別特性データと比較して、合致するタッチの形を判定するステップと、
前記重複領域における前記検出したキーストロークに、前記合致したタッチの形に対応する文字を割り当てるステップと
を含むステップを実行するようにソフトウェア命令によって構成される、モバイル装置。
【請求項１６】
前記プロセッサが、
前記検出したキーストロークによって前記タッチスクリーンに加えられる圧力を測定するステップと、
前記重複領域における前記検出したキーストロークの前記測定した圧力を、格納されたキーストローク識別特性データと比較して、合致する圧力識別特性を判定するステップと、
前記重複領域における前記検出したキーストロークに、前記合致した圧力識別特性に対応する文字を割り当てるステップと
を含むステップをさらに実行するようにソフトウェア命令によって構成される、請求項１５に記載のモバイル装置。
【請求項１７】
前記プロセッサが、
前記キーストロークの曖昧性が、意図したキー値について、キーストロークのタッチの形および測定した圧力とキーストローク識別特性データとの比較に基づいて除去できるかどうか判定するステップと、
前記キーストロークの曖昧性が、キーストロークのタッチの形および測定した圧力に基づいて除去できない場合、予測テキストルーチンを実行して、可能性のある意図したキー値の間で選択するステップと、
前記重複領域における前記検出したキーストロークに、前記予測テキストルーチンによって同定した文字を割り当てるステップと
を含むステップをさらに実行するようにソフトウェア命令によって構成される、請求項１６に記載のモバイル装置。
【請求項１８】
前記重複領域は、右手部のキーと左手部のキーとの重複領域である請求項１３から１５のいずれか一項に記載のモバイル装置。
【請求項１９】
仮想キーパッドを表示するタッチスクリーン上で静止している複数の指先それぞれのタッチ位置の基準線を判定するステップと、
前記仮想キーパッドを表示するタッチスクリーン上でキーストロークを検出するステップと、
前記検出したキーストロークが、重複領域において生じたかどうか判定するステップと、
前記検出したキーストロークが、前記重複領域において生じた場合、前記タッチスクリーン上のすべてのタッチについて現在の位置を判定するステップと、
前記タッチ位置の基準線からずれたのは前記複数の指先のどれか判定するステップと、
前記検出したキーストロークの位置および前記タッチ位置の基準線からずれた前記判定したタッチに基づき、前記キーストロークの曖昧性を除去するステップと
を含むステップをプロセッサに実行させるように構成された、プロセッサが実行可能なソフトウェア命令を記憶した、有形の記憶媒体。
【請求項２０】
仮想キーパッドを表示するタッチスクリーン上のキーストロークを検出するステップと、
前記検出したキーストロークが、重複領域において生じたかどうか判定するステップと、
前記重複領域における前記検出したキーストロークのタッチの形を判定するステップと、
前記重複領域における前記検出したキーストロークのタッチの形の向きを判定するステップと、
前記検出したキーストロークのタッチの形の前記判定した向きに基づいて、どちらの手が前記検出したキーストロークを実行したか判定するステップと、
前記検出したキーストロークの位置およびどちらの手が前記検出したキーストロークを実行したかに基づいて、文字を前記重複領域における前記検出したキーストロークに割り当てるステップと
を含むステップをプロセッサに実行させるように構成された、プロセッサが実行可能なソフトウェア命令を記憶した、記載の有形の記憶媒体。
【請求項２１】
仮想キーパッドを表示するタッチスクリーン上のキーストロークを検出するステップと、
前記検出したキーストロークが、重複領域において生じたかどうか判定するステップと、
前記重複領域における前記検出したキーストロークのタッチの形を判定するステップと、
前記重複領域における前記検出したキーストロークのタッチの形を、格納されたキーストローク識別特性データと比較して、合致するタッチの形を判定するステップと、
前記重複領域における前記検出したキーストロークに、前記合致したタッチの形に対応する文字を割り当てるステップと
を含むステップをプロセッサに実行させるように構成された、プロセッサが実行可能なソフトウェア命令を記憶した、有形の記憶媒体。
【請求項２２】
前記検出したキーストロークによって前記タッチスクリーンに加えられる圧力を測定するステップと、
前記重複領域における前記検出したキーストロークの前記測定した圧力を、格納されたキーストローク識別特性データと比較して、合致する圧力識別特性を判定するステップと、
前記重複領域における前記検出したキーストロークに、前記合致した圧力識別特性に対応する文字を割り当てるステップと
を含むステップをプロセッサにさらに実行させるように構成された、プロセッサが実行可能なソフトウェア命令を記憶した、請求項２１に記載の有形の記憶媒体。
【請求項２３】
前記キーストロークの曖昧性が、意図したキー値について、キーストロークのタッチの形および測定した圧力とキーストローク識別特性データとの比較に基づいて除去できるかどうか判定するステップと、
前記キーストロークの曖昧性が、キーストロークのタッチの形および測定した圧力に基づいて除去できない場合、予測テキストルーチンを実行して、可能性のある意図したキー値の間で選択するステップと、
前記重複領域における前記検出したキーストロークに、前記予測テキストルーチンによって同定した文字を割り当てるステップと
を含むステップをプロセッサにさらに実行させるように構成された、プロセッサが実行可能なソフトウェア命令を記憶した、請求項２２に記載の有形の記憶媒体。
【請求項２４】
前記重複領域は、右手部のキーと左手部のキーとの重複領域である請求項１９から２１のいずれか一項に記載の有形の記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般にコンピュータのユーザ入力デバイスに関し、より詳細には、感圧モバイル装置ユーザインターフェイスに関する。
【背景技術】
【０００２】
強力だがポータブルで、コンパクトだが機能は十分のコンピューティングデバイスの要求が増え続けている。この傾向は、今や、電話、ビデオキャプチャデバイスおよびオーディオキャプチャデバイス、ビデオプレーヤおよびオーディオプレーヤ、ウェブアクセス端末、ならびにコンピュータとして機能する携帯電話などのモバイル電子装置(モバイル装置)の進化において特に明らかである。
【０００３】
モバイル装置が複雑化するにつれて、アプリケーションソフトウェアの多様さおよび複雑さが増しており、それにより、モバイル装置は多目的の生産性ツールになっている。しかし、モバイル装置の有用性およびその用途は、ユーザインターフェイスに利用可能な領域が狭いことによって制限されている。従来の携帯電話は、たとえば、固定された構成の単純なキーパッドを含む。近年では、小型QWERTYキーボード、タッチセンシティブスクリーンのインターフェイス、および設定変更可能なキーを特徴とするモバイル装置が発表されている。
【０００４】
従来、キーパッドは、物理キーの押下を、モバイル装置およびそのアプリケーションソフトウェアが解釈できる電気信号に変えることによって機能している。図1は、キー押しイベントをアプリケーションソフトウェアに伝達することができる1つの方法を示す典型的なモバイル装置のハードウェア/ソフトウェアアーキテクチャを示す。従来の固定キーパッド5上のキーを押すと、回路が閉じるか、またはハードウェアドライバ4が処理できる電気信号をもたらすキャパシタンスもしくは抵抗が変わる。ハードウェアドライバ4は、特定のモバイル装置次第で、回路構成、ソフトウェア、またはハードウェアとソフトウェアの組合せであってもよい。ハードウェアドライバ4は、キーパッド5から受け取った電気信号を、モバイル装置上を走るソフトウェアアプリケーションが解釈できるフォーマットに変換する。この信号は、アプリケーションソフトウェアがアクセス可能なメモリテーブル内の割り込み値または格納値の形であってもよい。メモリ内のそのような割り込み値または格納値は、実行時環境ソフトウェア層3が受け取ることができる。実行時環境ソフトウェア層3の目的は、アプリケーションソフトウェアとモバイル装置の間の共通インターフェイスを提供することである。したがって、キー押下イベント信号は、キー押下イベントメッセージの形で、アプリケーション層2に運ばれる。アプリケーションソフトウェアは、キー押下イベントの意味を理解できなければならず、したがって、下にあるハードウェアドライバ4およびキーパッドハードウェア5に対応するように書かれなければならない。キー押下イベントは、特定のキーに関連する値を表示するために、ユーザインターフェイス層1に伝達されてもよい。
【０００５】
仮想キーパッド(すなわち、ソフトウェアによって生成された、タッチセンシティブディスプレイ面上のキーパッド)により、モバイル装置の設計者による設計の柔軟性および自由度が高まる。タッチセンシティブディスプレイ面をマルチタスク化して、必要なときだけキーパッドとして働かせることによって、モバイル装置は、キーパッドが不要なときに、より大きなディスプレイ面をユーザに提供することができる。しかし、仮想キーパッドは、従来の手法を引き続き使用している。すなわち、仮想キーパッドは、典型的には従来のキーパッドの機能および配列設計を模倣している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】米国特許出願第12/139,823号
【非特許文献】
【０００７】
【非特許文献１】http://www.stantum.com/spip.php?page=video
【発明の概要】
【課題を解決するための手段】
【０００８】
さまざまな実施形態のシステムおよび方法が、感圧ディスプレイを利用して、ユーザデータの入力スループットを向上させ、データ入力の誤りを減少させることができる代替仮想キーパッドを実現する。一実施形態の仮想キーパッドにおいて、従来どおり個々のキーとして表示されるキーのイメージを組合せて、組合せキーを形成する。組合せキーへのキーストロークは、組合せた個々のキーのうちのいずれかを入力するユーザの意図を表すことがある。組合せ仮想キーは、個々のキーを提示することになった場合よりもはるかに大きなサイズで表示することができるため、ユーザが、意図しないキーを誤って打つ可能性は低い。個々のキーのうちどれをユーザは意図したのか区別するために、さまざまなレベルの圧力を区別することができる圧力センサが使用される。さまざまなレベルの圧力で組合せキーを打つことにより、ユーザは、その意図したキーをモバイル装置に通信することができる。したがって、ユーザの意図したキーは、ユーザのキーストロークの位置およびユーザがキーストロークを実行する圧力の双方を相関させることによって判定することができる。
【０００９】
別の実施形態において、仮想キーパッド配列内の個々のキーイメージは、いくつかのキーが他のキーと重複するように配列され得る。さまざまな実施形態は、位置、形および/または圧力測定値の組合せを利用して、ユーザの意図したキーパッド入力を区別する。一実施形態において、モバイル装置は、基準線静止位置におけるユーザの指先の位置を測定し、どちらの手がキーストロークを行ったか判定することによって重複したキーイメージに対するキーストロークの曖昧性を除去することができる。別の実施形態において、モバイル装置は、重複したキーイメージ上のタッチの形および圧力の観点からユーザのキーストローク識別特性(シグネチャー)を記録し、このデータを使用して、重複したキーイメージへのキーストロークの曖昧性を除去することができる。
【００１０】
モバイル装置ディスプレイの圧力測定機能は、ある機能を起動するために他のアプリケーションとともに使用することができる。一実施形態において、モバイル装置は、連絡先アプリケーションの表示内のキーストロークにおける圧力の量を測定して、ユーザのさまざまな連絡先記録と関連付けられた異なる連絡機能(たとえば、音声電話、eメール、SMS、など)を表示するように構成することができる。別の実施形態において、モバイル装置は、タッチセンシティブディスプレイ面上にかかる圧力の量を測定し、それにしたがってハードウェア制御設定を調整するように構成することができる。たとえば、モバイル装置は、通話中(during a voice)にユーザの耳に押し当てられたタッチスクリーンに加えられる圧力の測定に応答してスピーカの音量出力を上げるように構成することができる。別の実施形態において、モバイル装置は、ズームイン/アウトの2本指のつまみタッチ/動きの間、タッチセンシティブディスプレイ面にかかる圧力の量を測定し、それにしたがって拡大率(ズーム)を調整するように構成することができる。
【００１１】
本明細書に組み込まれ、この明細書の部分を構成する添付の図面は、本発明の例示的な態様を示し、上で述べた一般的な説明および以下で述べる詳細な説明と併せて、本発明の特徴を説明するのに役立つ。
【図面の簡単な説明】
【００１２】
【図１】従来技術のモバイル装置のハードウェア/ソフトウェアアーキテクチャ図である。
【図２】従来技術の仮想キーパッドを示す図である。
【図３】タッチスクリーンディスプレイ内のいくつかのキーを同じ場所に配置する、一実施形態の仮想キーパッド配列を示す図である。
【図４】タッチ圧力を使用して、図3に示す実施形態の仮想キーパッド配列上での意図したキーストロークを特定する一実施形態の方法を示す、処理流れ図である。
【図５】一実施形態における使用に適した圧力データテーブルのデータ構造である。
【図６】左手キーを示す、一実施形態の仮想キーパッド配列を示す図である。
【図７】いくつかのキーが重複した左手キーおよび右手キーの両方を示す、実施形態の仮想キーパッド配列を示す図である。
【図８】1本の指が重複領域におけるキーストロークを実行するための動きを示す、ユーザの基準線指先静止位置の図である。
【図９】重複領域におけるキーストロークの曖昧性を除去する、一実施形態の方法の処理流れ図である。
【図１０】重複領域においてキーを打つときの、タッチスクリーン面上でのユーザのキーストロークの形を示す図である。
【図１１】重複領域におけるキーストロークの曖昧性を除去する、別の実施形態の方法を示す処理流れ図である。
【図１２】一実施形態による学習モジュールのシステム構成要素図である。
【図１３】重複領域におけるキーストローク用の、ユーザのキーストローク識別特性データを取り込むための教示ルーチンを示す処理流れ図である。
【図１４】重複領域におけるキーストロークの曖昧性を除去する、別の実施形態の方法を示す処理流れ図である。
【図１５】重複領域におけるキーストロークの曖昧性を除去する、別の実施形態の方法を示す処理流れ図である。
【図１６】重複領域におけるキーストロークの曖昧性を除去する、別の実施形態の方法を示す処理流れ図である。
【図１７】代替実施形態の仮想キーパッド配列を示す図である。
【図１８】例示的な連絡先アプリケーションのトップメニュー表示を示す図である。
【図１９】単一のキーストロークの測定した圧力に基づいて連絡機能を起動する、一実施形態の方法を示す処理流れ図である。
【図２０】音量出力を制御する一実施形態の方法を示す処理流れ図である。
【図２１】タッチスクリーン面上にかかる圧力の測定量に基づいて、つまみジェスチャにおいて表示倍率を制御する一実施形態の方法を示す処理流れ図である。
【図２２】速度ダイアル機能の実施形態において使用するのに適した圧力データテーブルのデータ構造である。
【図２３】イメージズーム機能の実施形態において使用するのに適した圧力データテーブルのデータ構造である。
【図２４】各種実施形態での使用に適したモバイル装置の例示的な構成要素を示すコンポーネント構成図である。
【発明を実施するための形態】
【００１３】
さまざまな態様を、添付の図面を参照して詳細に説明する。可能であれば、各図面を通して同じまたは類似の部品を指すために、同一の参照符号を使用する。特定の例および実施形態の参照は、例示のためであり、本発明または特許請求の範囲を制限することは意図しない。
【００１４】
本明細書では、用語「移動ハンドセット」および「モバイル装置」は互換可能に使用され、各種携帯電話、個人情報端末(PDA)、パームトップコンピュータ、ラップトップコンピュータ、無線電子メール受信機(たとえば、Blackberry(登録商標)およびTreo(登録商標)デバイス)、およびマルチメディアインターネットが可能にする携帯電話(たとえば、Blackberry Storm(登録商標))、ならびに類似のパーソナル電子デバイスのうちのいずれか1つを指す。モバイル装置は、図24を参照してより詳細に述べるプログラム可能なプロセッサおよびメモリを含むことができる。
【００１５】
本明細書では、用語「キーパッド」および「キーボード」は互換可能に使用されて、QWERTY(またはその他の)キーボード、数字キーパッド、ゲームコントローラ、および音楽キーボードといったコンピューティングデバイスに入力データを伝達するために使用されるユーザ入力デバイスの各種構成のうちのいずれか1つを一般に指す。各種態様は、「キー」が表示され得る「仮想」ユーザ入力デバイスに関わるので、用語「キーパッド」および「キーボード」は、押下できる物理キーを要することは意図せず、むしろユーザの指によるタッチ(または押し)を検知し、そのタッチを、コンピューティングデバイスに対する入力と解釈することができる任意のユーザ入力デバイスを指す。
【００１６】
本明細書では、用語「タッチセンシティブ面」は、ユーザの指によるタッチ(または押圧)を検出または検知し、そのタッチをコンピューティングデバイスへの入力として解釈するように構成された任意の面を含む。特に、タッチセンシティブ面は、ユーザの指先によるタッチの位置および/または形を判定することができる。指先による面上でのタッチの位置および/または形の検知は、多様な既知の技術のうちのいずれかを使用して達成することができる。たとえば、タッチセンシティブ面は、圧力検知面、キャパシタンス検知面、および直接的にユーザのタッチを検出する誘導検知サービスを含むことができる。別の例のタッチセンサは、音または振動測定を使用して、ユーザタッチの位置を検出および判定することができ、たとえば、カバーガラスを通過する超音波の効果に基づいてタッチを検出することができる超音波センサ、あるいはタッチの位置を、カバーガラス上のタッチから受け取った振動または音の三角測量に基づいて判定することができる音または振動センサである。
【００１７】
タッチセンシティブ面は、多様な面のうちのいずれかの上で利用することができ、したがって、特定のタイプのデバイスまたは形態に限定することは意図していない。本明細書では、「タッチセンシティブスクリーン」または「タッチスクリーン」は、ディスプレイと組合せたタッチセンシティブ面である。ディスプレイは、(Blackberry Storm(登録商標)におけるような)液晶ディスプレイなどの物理ディスプレイであってもよい。
【００１８】
本明細書では、用語「仮想キーパッド」および「仮想キーボード」は、タッチスクリーンなどのタッチセンシティブ面上に表示されるキーパッドイメージを指す。仮想キーパッドは、必ずしも数字または文字には限定されず、本明細書では、キーまたはボタンのユーザアクティベーションに関わる任意のユーザインターフェイスを含む。数字以外および文字以外の仮想キーパッドの例には、タッチセンシティブ面を有するゲームコントローラ、デバイスコントローラ(たとえば、TVリモコン)、アプリケーションインターフェイス、およびジョイスティックがある。たとえば、仮想キーパッドは、MP3またはビデオプレーヤアプリケーション用のユーザインターフェイスとして実装することができる。
【００１９】
本明細書では、用語「キーパッド配列データ」は、仮想キーパッド内のキーの位置、サイズ、形、および向きに関する情報、特に、仮想キーパッドのイメージを生成するために使用され得る情報を集合的に指す。
【００２０】
モバイル装置が、ますます強力なコンピューティングプラットフォームになるにつれて、ユーザは、ユーザのモバイル装置上でデスクトップ体験を得ることを求める。こういったユーザを満足させるために、多くのモバイル装置は、よりシンプルな12キー(0〜9、*および#)のキーパッドではなく、データ入力用に全英数字のQWERTYスタイルのキーパッドをユーザに提供している。コンピューティングデバイスのキーパッドの例示のハードウェア/ソフトウェアインターフェイスを、図1に示してある。キーパッド5上のキーを押すと、ハードウェアドライバ4が処理できる電気信号になる。ハードウェアドライバ4は、特定のコンピューティングデバイス(たとえば、モバイル装置)次第で、回路構成、ソフトウェア、またはハードウェアとソフトウェアの組合せであってもよい。ハードウェアドライバ4は、キーパッド5から受け取った電気信号を、コンピューティングデバイス上を走るソフトウェアアプリケーション2が解釈できるフォーマットに変換する。この信号は、アプリケーション2がアクセス可能なメモリテーブル内の割り込み値または格納値の形であってもよい。メモリ内のそのような割り込み値または格納値は、実行時環境またはオペレーティングシステムの部分であり得るキーパッドインターフェイス3が受け取ることができる。キーパッドインターフェイス3の目的は、アプリケーションソフトウェア2とコンピューティングデバイスキーパッド5の間の共通インターフェイスを提供することである。したがって、キー押下イベント信号は、アプリケーション2が解釈できる標準的なキー押下イベント信号またはキー押下イベントメッセージの形(たとえば、ASCII文字の値)で、アプリケーション層2に運ばれ得る。
【００２１】
図1に示すような、以前から知られているシステム/ハードウェアアーキテクチャを使用して、アプリケーション開発者は、「標準的」なキーパッド配列(たとえば、QWERTYキーボードまたは数字キーパッド)またはアプリケーションがロードされ得る各タイプのモバイル装置独自のキーパッド配列とともに動作するようにソフトウェアを適合させる必要があった。特定のキーセット(たとえばゲームまたはデバイスのリモコン)を要するアプリケーションは、固定キーパッド配列を有するデバイス上では動作可能でない場合があるか、または制限されたまたはユーザフレンドリでないやり方で動作可能な場合がある。キーパッドプロトコルを、アプリケーションソフトウェアとキーパッドの間の標準的なインターフェイス、および他のユーザインターフェイスとして提供するシステムおよび方法が、2008年6月16日に出願し、本願の権利者が所有する、「設定可能なキーパッドを提供するための標準化された方法及びシステム(Standardized Method and Systems for Providing Configurable Keypads)」と題した米国特許出願第12/139,823号に最近開示されており、その全内容はあらゆる目的で本明細書に参照として組み込まれている。
【００２２】
モバイル装置に明確な寸法制限はないが、ユーザは、自身のポケットに容易に収まらないモバイル装置を避ける可能性がある。したがって、モバイル装置設計者は、しばしば同じだけの機能をポケットサイズのデバイスに組み込もうとする。完全なQWERTYスタイルのキーボードをモバイル装置に備えつけることの欠点の1つは、キーボードが占めるデバイス占有部分(real estate)の大きさである。完全なQWERTYキーボードを容易にするために、ディスプレイサイズを縮小して、モバイル装置のポケットサイズの寸法を維持しなければならない。
【００２３】
タッチスクリーン技術の出現で、モバイル装置によっては、仮想キーボードを備えるようになった。モバイル装置面の部分を物理キーボードに割り当てるのではなく、必要なときにだけ、仮想キーボードをタッチスクリーン上に表示する。仮想キーボードを、より大きなタッチスクリーンディスプレイ(物理キーボードの取り外しにより可能になる)上に表示することによって、各キーイメージを、物理キーボードによって以前利用可能だったものより大きなサイズにできる。それにもかかわらず、ユーザは、しばしば、小さなサイズの個々のキーと結合したキーパッド上の個々のキーの輪郭を表す押し応え(tactile feedback)がなく、キーストローク誤りがよくあると不平を述べる。キーストローク誤りは、ユーザがあるキーを打とうとしたが、隣接するキーの打ち込みをモバイル装置が検知したときに起こり得る。そのような問題を克服するため、さまざまな実施形態が、ユーザデータ入力のスループットを向上させるために圧力測定またはキーストローク寸法分析と結びついた代替仮想キーボード配列を表している。
【００２４】
図2は、モバイル装置101の従来のタッチスクリーンディスプレイ102上に表示された、例示的な従来の仮想キーパッドを示している。タッチスクリーンディスプレイ102は、記録されたキーストロークをユーザに表示する表示領域104とともに、従来のQWERTYキーパッド配列を模倣する仮想キーパッド領域105を含んでもよい。各文字は、従来の仮想キーパッド配列におけるそれ自体の個々のキーを与えられる。図2に示すように、モバイル装置は、モバイル装置上の利用可能な全面積の多くを占めるタッチスクリーンディスプレイ102を備えていてもよい。仮想キーパッドが不要な例において、ディスプレイサイズの拡大によって、ユーザは、インターネットのウェブページを閲覧するなどの作業を行う際に極めて望ましい、より大きなイメージおよびより完全なスクリーンショットを見ることが可能になる。
【００２５】
従来のタッチスクリーンディスプレイ102は、ユーザが、いつ、タッチスクリーンディスプレイ面上のどこを触れたか認識する能力を有することができる。しかしながら、従来のタッチスクリーンディスプレイは、ディスプレイ面に触れるごとにかかる圧力の量を測定または判別しない。したがって、従来のタッチスクリーンディスプレイは、ユーザが、いつ、ディスプレイ面上のどこを触れたか判定できるが、ユーザが面に触れた強さは判定することができない。従来のタッチスクリーンの1つの欠点は、タッチスクリーン面にかかる任意の圧力がタッチとして登録され、意図しないキーストローク入力になる場合があることであった。結果的に、ユーザは、自身の指を従来の仮想キーボード上に置いておくことができない。むしろ、ユーザは、自身の指を、キーより上に浮かせておくことを強いられ、これはユーザの疲労およびデータ入力スループットの低下を招き得る。
【００２６】
タッチスクリーンディスプレイ102が大きくなったにもかかわらず、ユーザは、従来の仮想キーボードは使用するのが難しく、しばしば、意図しないキーを打つ結果となる(すなわち、隣接するキーが誤って入力される)と、依然として不平を述べている。これはしばしば、ユーザの苛立ちおよび仮想キーパッドの使用へのためらいを招く。いくつかの解決策は、この問題の解決を試み、さまざまな結果をもたらしてきた。たとえば、あるモバイル装置は、ある種の予測語技術に頼ってユーザデータ入力スループットを向上させている。しかしながら、そのような解決策は、処理時間の増加、ならびに予測キーストロークについてユーザの確認および受け入れを要し、それにより、データが入力され得る速度が遅くなる。さらに、現在の予測語技術は、名前およびアドレスなどの例外的な単語または数字の予測ができない。
【００２７】
タッチスクリーン技術の革新は、モバイル装置設計者に感圧ディスプレイを提供することが期待されている。まもなくタッチスクリーンディスプレイに組み込まれ得る新たな感圧技術により、モバイル装置が、ユーザが触れたタッチスクリーンディスプレイ面の場所だけでなく、強さユーザがその面を触れた強さも判定することが可能になる。例として、Stantum Inc.は、モバイル装置に組み込むための高品質抵抗性タッチスクリーンディスプレイ面を製造しており、このタッチスクリーンディスプレイ面は、ユーザがタッチスクリーンディスプレイ面を触れる場所およびユーザがタッチスクリーンディスプレイ面を触れる強さの両方を測定する。Stantumのタッチスクリーンディスプレイ機能の実演は、http://www.stantum.com/spip.php?page=videoで見ることができる。そのような圧力検知式タッチスクリーンディスプレイを採用することで、モバイル装置をそのように構成することを可能にでき、ユーザは、意図しないキーストロークとして検出されることなく自身の指を軽くタッチスクリーン上に載せることができる。さまざまな実施形態は、そのような圧力検知式タッチスクリーンディスプレイを利用して、モバイル装置に、ユーザ体験を向上させられる代替仮想キーパッド配列を提供する。
【００２８】
図3は、圧力検知式タッチスクリーンディスプレイ技術を利用する、実施形態の仮想キーパッド配列を示している。図3に示す実施形態において、モバイル装置111は、タッチスクリーン面上へのユーザのタッチによってかかる力の位置および大きさを判定させることをモバイル装置に可能にさせる圧力検知式タッチスクリーンディスプレイ112を含む。例示的な説明において、ディスプレイは、検出したキーストロークを示す表示領域114である第1の領域、および仮想キーパッド領域115である第2の領域の2つの領域に分割されている。従来の仮想キーパッドとは対照的に(たとえば、図2の105参照)、例示の実施形態における仮想キーパッド115は、単一のキーが2つの文字に使用されるQWERTYスタイルのキーパッド配列を表している。たとえば、QWキー120は、文字QおよびWの両方に使用される。2つの文字を組合せて単一のキーにすることによって、仮想キーパッドディスプレイは、間がさらに広くなったより大きなキーを提供することができ、これは、キーストローク誤りの低減に役立つはずである。キーが大きくなり、キー間のスペースが広がれば、隣接するキーの不正確なキーストロークの可能性を低減するはずである。図3に示す実施形態の仮想キーパッドにおいては、単一の組合せたキーに割り当てられる可能性のあるキー入力は2つだけだったが、3つ以上の可能性のあるキー入力を組合せて単一のキーにしてもよい。たとえば、一実施形態の仮想キーパッドは、数字0〜9を組合せる単一の数字キーを含むことができる。
【００２９】
あるキーに割り当てられた2つの文字(たとえば、QとW)を区別するために、モバイル装置は、圧力検知式タッチスクリーンディスプレイの機能を使用して、キーに加えられる圧力を測定するように構成することができる。2つの文字または数字を、異なる量の測定した圧力に相関させることによって、モバイル装置は、2つのキーのうちどちらを記録するか、キーストロークで加えられた測定した力に基づいて決定することができる。そのような機能をもつモバイル装置を使用したとき、ユーザは、異なる量の力を加えて、意図したキーストロークを指示することができる。たとえば、ユーザがQの入力を意図する場合は、ユーザは、QWキーを軽く打ち、一方、ユーザがWの入力を意図する場合、ユーザは、QWキーをより大きな力で打つことができる。モバイル装置は、組合せたキーに関連付けられた各文字または数字を、測定した圧力値の範囲と相関させることができる。10個の数字のうちどれが意図した数字か、単一の数字キーの押しから判定するために、モバイル装置は、加えられる力を測定し、測定した値を、10個の数字の値のそれぞれと相関する圧力範囲の表と比較することができる。
【００３０】
図4は、図3に示す実施形態の仮想キーパッド配列上のユーザのキーストロークを検出および解釈する、実施形態の方法を示す処理流れ図を示している。キーパッドを表示する要求がアプリケーションによって出されるごとに、モバイル装置プロセッサと通信しているタッチセンシティブ面およびデバイスドライバは、ステップ201で、図3に示すような仮想キーパッド配列を生成および表示することができる。ユーザが、仮想キーパッド上のキーイメージを打つと、圧力検知式タッチスクリーンは、ステップ205で、キーストロークの位置を取り込むとともに、キーストロークによってかかる圧力の量を測定することができる。キーストローク位置および測定圧力の両方が、ステップ305で、モバイル装置プロセッサに通信され、そこで受け取られ得る。モバイル装置プロセッサは、検出したタッチ位置座標を仮想キーパッドキー座標と比較することによって、ステップ310で、キーストロークの位置を仮想キーと相関させることができる。これは、タッチ座標が、タッチ位置と関連付けられた文字をルックアップするために使用されるデータテーブルルックアップ処理において達成することができる。たとえば、ユーザが、QWキー120が表示されている感圧タッチスクリーンに触れると、プロセッサは、タッチの位置をQおよびWの文字と相関させることができる。相関させられた文字が決定すると、モバイル装置プロセッサは、ステップ315で、ユーザによって加えられた測定した圧力を使用して、意図した文字を判定することによって、キーストロークの曖昧性を除去する(すなわち、相関させられたキーのうち、ユーザが入力を意図したキーを認識する)ことができる。この処理は、対応する文字を判定するために、測定した圧力が、圧力データテーブル内の圧力範囲と比較されるデータテーブルルックアップ操作において達成され得る。例示の圧力データテーブルを、図5に示してある。
【００３１】
図5を参照すると、圧力データテーブル501の第1の列は、特定の仮想キーと関連付けられた、可能性のある文字を同定することができる。以上説明したように、モバイル装置プロセッサは、ユーザのキーストロークの位置座標に基づいて、押されたキーを判定することができる(ステップ310参照)。触れたキーをプロセッサが判定すると、対応するキーを決定するために、測定した圧力は、圧力データテーブル501内の範囲と比較され得る。ユーザがQWキー120を打った上記の例を使用して、タッチスクリーン面上にかかる力の大きさが、10ニュートン未満の力であると測定された場合、プロセッサは、圧力データテーブル501から、ユーザは文字Qの入力を意図したと判定することができる。しかし、タッチスクリーン面上にかかる力の大きさが、10ニュートンを超えると測定された場合、プロセッサは、ユーザは文字Wの入力を意図したと判定することができる。なお、図3に示す例示の仮想キーパッド配列において、キーのいくつかは、単一の文字または機能と関連付けられていることに留意されたい。たとえば、「L」、「M」、スペース、シフト、削除、およびリターンキーは、それぞれ単一の文字または機能を表す。したがって、そのようなキーストロークは曖昧にはならないので、プロセッサは、対応するキーを決定するために圧力データテーブル501にアクセスしなくてもよくなる。それでも、圧力データテーブル501は、同じ文字を、図示したように両方の圧力範囲と相関させてもよい。
【００３２】
図4に戻って、キーストロークの曖昧性が除去される(すなわち、意図した文字が判定される)と、モバイル装置プロセッサは、ステップ320で、その文字を入力として記録し、同定した文字の表示イメージを生成するか、または認識した機能を実行することができる。適切な場合、同定した文字のイメージは、ステップ220で、タッチスクリーン上に表示され得る。ユーザが、個々のキーストロークにおいて、加える圧力量の制御に慣れてくるにつれて、実施形態の仮想キーパッド配列および検出方法により、ユーザは、データを高速で入力することが可能になり得る。
【００３３】
図6および7に示した別の実施形態において、重複キー上のキーストロークの曖昧性を除去するために圧力測定またはタッチの形の情報を使用することによってタイピング速度の向上を可能にすることができる、代替仮想キーパッド配列が実装され得る。図示したように、典型的なモバイル装置のタッチスクリーンの幅をわずかに広げることによって、多くの人間工学的な「ナチュラルスタイルのキーボード」配列に類似する仮想キーパッド配列が実装できる。生体力学的分析が、キーボードでのタイピングなどのストレスがかかる繰返し運動の中でしばしば起こる、筋肉の緊張およびストレスを最小限にすることを意図した、人間工学的なキーボードの開発に結びついた。従来のQWERTYキーボード配列のキーを2つのグループに分け、キーの2つのグループを隔てる角度を調節して、ユーザの手の自然な回内により合致させることによって、筋肉緊張およびストレスを最小限に抑えることができる。
【００３４】
図6は、モバイル装置151上に表示された仮想キーパッド配列の左手キーボード部156を示す。モバイル装置151は、表示領域154および仮想キーパッド領域155を含むディスプレイスクリーン152を有する。この実施形態において、左手部156は、表示領域154に対してほぼ垂直である。
【００３５】
図7は、左手部156および右手部157の両方を含む、モバイル装置151上に表示された完全な仮想キーパッド配列155を示す。モバイル装置の全体幅をわずかに広げることによって、タッチスクリーンディスプレイ152のサイズ、左手部156および右手部157の両方における個々の文字キーのサイズを、誤ったキーストローク(すなわち、隣接するキーへの意図しないキーストローク)の可能性を減らせるだけの大きさで表示することができる。表示領域を最大限使用するために、右手部157のキーの一番上の行が、重複領域158において、左手部156のキーの一番上の行と重複してもよい。ユーザが、重複領域158にない任意のキーを打ったとき、プロセッサは、図4のステップ310を参照して上述したような従来の処理を用いて、意図した文字を判定することができる。しかし、ユーザが、重複領域158にあるキーを打ったとき、キーストロークの曖昧性を除去するために、さらなる処理が必要になる。圧力検知式タッチスクリーンディスプレイから受け取った圧力測定情報は、そのような曖昧性除去を達成するために使用することができる。
【００３６】
重複領域158におけるキーストロークの曖昧性を除去する、一実施形態の方法において、タッチスクリーンに触れるすべての指の基準線位置の読み取り値を、ディスプレイ面上に置かれたユーザの指先の位置を判定するために得ることができる。従来のタッチスクリーンディスプレイとは異なり、圧力検知式タッチスクリーンディスプレイは、面上に置かれた指と圧力が面に加えられるキーストロークを区別することができる。そのようなユーザインターフェイスは、より使用に快適なだけでなく、静止位置情報を、どの指が重複領域158におけるキーストロークを達成するために動かされたか判定するために使用することができる。どの指先がもはやその基準線位置にないか分析することによって、モバイル装置のプロセッサは、ユーザが触れることを意図した重複キーを判定することができる。たとえば、図示の例の仮想キーボード配列において、WキーとPキーが重複する。ユーザは、通常、その左手の薬指でWキーを押し、その右手の小指でPキーを押す。したがって、重複領域158におけるキーストロークを達成するために、どの指がその静止位置から離れたかに注目することによって、プロセッサは、どちらの手がキーストロークを行ったか判定し、この情報から、2つの重複キーのうちのどちらがユーザが打つことを意図したものか判定することができる。したがって、プロセッサは、重複領域における受け取ったキーストロークを適切な文字と相関させることができる。
【００３７】
図8は、図7に示した実施形態の仮想キーパッド配列上に置かれたユーザの指先の例示的な基準線位置を示す。キーストロークが重複領域で生じたという指示をプロセッサが受け取ったとき、プロセッサは、キーストロークの曖昧性を除去して、重複キーのうちユーザが打つことを意図したキーを判定しなければならない。ディスプレイ面上に置かれた各指先の現在位置を確認することによって、プロセッサは、どの指先がもはやその基準線位置にないか判定することができる。この情報を使用して、プロセッサは、重複キーのうちのどれがユーザが意図したキーだったか判定することができる。図8に示した例において、ディスプレイ面上のユーザの指先が置かれる位置は、暗い灰色の丸によって同定している。大半のユーザにとって、左手指先は、自然に「A」、「S」、「D」、および「F」キー上または少なくとも「A、S、D、F、G」行のどこかに置かれる。左手親指は、典型的には、「V」キー上または少なくとも「Z、X、C、V、B」行のどこかに置かれ得る。右手指先は、自然に、「J」、「K」、および「L」キー上または少なくとも「H、J、K、L」行のどこかに置かれる。右手の親指は、「N」キー位置上または少なくとも「N、M、削除、リターン」行に置かれ得る。なお、図8に示した指先位置は、例示でしかないことを意図していることに留意されたい。実際のユーザの指先位置の基準線は変化し得る。
【００３８】
図示した実施形態の仮想キーパッド配列において、重複領域158は、「Q」、「W」、「E」、「R」、「T」、「Y」、「U」、「I」、「O」、および「P」キーを含む。典型的には、「Q」キー打つために、ユーザは、左手の小指を使うことができる。「W」キーを打つために、ユーザは、左手の薬指を使うことができる。「E」キーを打つために、ユーザは、左手の中指を使うことができる。「R」キーを打つために、ユーザは、左手の中指または人差し指のいずれかを使うことができる。「T」キーを打つために、ユーザは、左手の人差し指を使うことができる。「Y」キーを打つために、ユーザは、右手の人差し指を使うことができる。「U」キーを打つために、ユーザは、右手の中指または人差し指を使うことができる。「I」キーを打つために、ユーザは、右手の中指を使うことができる。「O」キーを打つために、ユーザは、右手の薬指を使うことができる。「P」キーを打つために、ユーザは、右手の小指を使うことができる。図7に示すように、重複領域において、「W」キーは、「P」キーと重複してもよい。したがって、「W」キーおよび「P」キーの両方の領域におけるキーストロークは曖昧となり、意図した文字入力を判定するために、プロセッサにさらなる処理を達成することを要求する。「T」または「U」キーの領域へのキーストロークがなされた際、左手の人差し指が基準線位置から動いた(薄い灰色の丸および矢印として示す)と判定することによって、プロセッサは、ユーザが打つことを意図したのは「T」キーであり、「U」キーではないと判定することができる。同様に、プロセッサは、どちらの手(左または右)のどの指が基準線位置から動いて重複領域におけるキーストロークを実行したか判定することによって、ユーザが打つことを意図したキーは「E」か「O」か、「R」か「I」か、または「T」か「U」か判定することができる。
【００３９】
図9は、図7に示した仮想キーパッド配列の実施形態の重複領域158における、キーストロークの曖昧性を除去する実施形態の方法を示す処理流れ図である。図4に示した処理フローと同様に、キーパッドがアプリケーションによって表示を要求されるごとに、モバイル装置プロセッサと通信しているタッチセンシティブ面およびデバイスドライバは、図7のステップ201に示した実施形態のような仮想キーパッド配列を生成および表示することができる。圧力検知式タッチスクリーンは、ステップ202で、ある圧力閾値を超えるキーストロークを検出することができる。ユーザが、指先をディスプレイ面上に載せていることがあるので、静止指先位置からのキーストロークを区別するために、キーストローク圧力は、ある閾値より大きくなければならない。圧力閾値を超えるキーストロークが検出された場合、ステップ206で、キーストロークの位置が取り込まれ得る。ステップ306で、ディスプレイ座標などの形で、キーストロークの位置がプロセッサに通信され得る。プロセッサは、キーストロークの位置が重複領域158内にあるかどうか判定することができる、判定307。キーストロークが重複領域内にない場合(すなわち、判定307=いいえ)、プロセッサは、対応する文字をさらなる処理なしでルックアップするために、ステップ320で、位置座標を使用するなどして、キーストローク位置を対応する文字に相関させ、文字入力を記録し、意図したキーの表示イメージを生成することができる。ステップ220で、表示イメージは、ユーザに表示するために、タッチスクリーンに通信することができる。
【００４０】
キーストロークが重複領域内にあるとき(すなわち、判定307=はい)、プロセッサは、ステップ308で、圧力閾値未満の、ディスプレイ面上のすべてのタッチの現在の位置を判定することができる。これは、圧力検知式タッチスクリーンに、ディスプレイ面上のすべてのタッチの位置を通報するように要求することを含んでもよい。別法として、圧力検知式タッチスクリーンは、圧力閾値未満のタッチを含むすべてのタッチの位置を連続的に通報することができ、この場合、プロセッサは、バッファメモリから、そのようなタッチ位置データに単にアクセスすればよい。プロセッサは、ステップ309で、すべての現在のタッチの受け取った位置を、格納された基準線位置と比較して、どのタッチが基準線位置からずれたか判定することができる。基準線位置データは、圧力閾値未満のすべてのタッチの位置を頻繁に取得し、その位置をメモリに格納することによって得ることができる。このように、すべての閾値未満のタッチの位置は、閾値を超えるキーストロークを受け取る直前に、メモリから得ることができる。代替実施形態において、プロセッサは、ユーザの指の平均位置を、圧力閾値未満のすべてのタッチ位置の複数回の観察に基づいて判定し、その平均を基準線位置として使用することができる。プロセッサは、ステップ311で、どの指先またはどの側(すなわち、右手元側に対する左手元側)がその基準線位置からずれたか判定することによって、上記の方法で、重複領域におけるキーストロークの曖昧性を除去することができる。プロセッサは、ユーザが打つことを意図したのはどのキーか判定すると、ステップ320で、対応する文字の入力を記録し、その文字の表示イメージを生成することができる。ステップ220で、表示イメージは、ユーザに表示するために、タッチセンシティブ面およびデバイスドライバに通信することができる。
【００４１】
別の実施形態において、重複領域158に位置するキーストロークに割り当てる適切な文字は、キーストロークタッチの形および/または向きを分析することによって判定することができる。重複領域158における、左手の指からのキーストロークは、右手の指からのキーストロークの形および/または向きとは異なる、タッチスクリーンによって検知される形および/または向きを有することができる。典型的には、ユーザが、指先をディスプレイスクリーン面上に置いているとき、タッチは、ほぼ円形に現れ得る。しかしながら、ユーザが、重複領域158におけるキーに指を伸ばすと、ディスプレイスクリーン面上のタッチの形は、長円形に現れ得る。場合によっては、長円形は、涙滴に似ていることもある。
【００４２】
図10は、ユーザが重複領域においてキーストロークを実行したときに生じ得る独自のタッチの形を示す。図10は、その基準線位置に置いてある9つの静止した指の位置と、重複領域158におけるキーストロークを実行するユーザの左手の人差し指のタッチの形を示す。人差し指の伸びおよびユーザの手の残りの自然なポジショニングによって、タッチスクリーン面上で形成されるタッチの形は、涙滴または他のなんらかの認識可能な形として現れ得る。図10に示した例において、涙滴形の尾は、手がキーストロークを実行したディスプレイの側(すなわち、図示の例における左手)を指す。重複領域におけるキーストロークのタッチの形および向きを分析することによって、プロセッサは、重複領域158における重複キー上のキーストロークの曖昧性を除去することができる。
【００４３】
一実施形態において、タッチの形の分析は、キーパッド配列の涙滴のタッチ形の尾部分が指す側を判定することを含んでいてもよい。尾部分が左を指す場合、キーストロークは左手の指で行われたと、すなわち、左手の重複キー(すなわち、W、E、RまたはTのうちの1つ)が押されたと判定することができる。同様に、尾部分が右を指す場合、キーストロークは右手の指で行われたと、すなわち、右手重複キー(すなわち、Y、U、IまたはOのうちの1つ)が押されたと判定することができる。図9を参照して記載した実施形態の方法と同様に、どちらの手が重複領域における特定のキー位置に対してキーストロークを行ったか判定することによって、プロセッサは、ユーザが打つことを意図したキーを判定することができる。
【００４４】
図11は、重複領域におけるキーストロークの曖昧性を除去する、代替実施形態の方法を示す処理流れ図である。図9に示した処理フローと同様に、圧力検知式タッチスクリーンは、ステップ201で、キーパッドがユーザまたはアプリケーションによって要求されたときは必ず、仮想キーパッド配列を表示する。圧力検知式タッチスクリーンは、ステップ202で、いつ閾値圧力を超える測定圧力でキーストロークがなされたかを検出する。圧力検知式タッチスクリーンは、ステップ212で、キーストロークの形を含むキーストロークの位置座標(すなわち、アウトライン座標)を取り込むことができる。この情報は、ステップ312で、モバイル装置プロセッサに通信される。この情報に基づいて、プロセッサは、重複領域158においてキーストロークがなされたかどうか判定することができる、判定307。図9を参照して記載したように、キーストロークが重複領域158において生じない場合(すなわち、判定307=いいえ)、プロセッサは、ステップ320で、対応する文字をさらなる処理なしで同定し、その文字入力を受け入れ、同定した文字の表示イメージを生成することができる。ステップ220で、表示イメージは、ユーザに表示するために、圧力検知式タッチスクリーンに通信することができる。
【００４５】
キーストロークが重複領域内にあると判定された場合(すなわち、判定307=はい)、プロセッサは、ステップ313で、重複領域のキーストロークの向きを判定することができる。これは、タッチの形を分析して、他の非対称特徴の長軸を同定することによって達成することができる。たとえば、涙滴のタッチ形が認識される一実施形態において、プロセッサは、キーストロークの形の残りに対する尾部分の向きを判定することができる。尾部分のこの向きは、重複領域におけるキーストロークを行う手を判定するために使用することができる。他の実施形態において、プロセッサは、重複領域のキーストロークによって形成された、検出した長円形のタッチ形の長軸の向きを判定することができる。重複キー次第で、タッチの形の長軸の角度は、左手キーストロークにおけるある方向を、また右手キーストロークにおける異なる方向を向くことがある。
【００４６】
重複領域のタッチ形の向きが判定されると、プロセッサは、図9を参照して上記で検討したのと同様の方法で、重複領域におけるキーストロークの曖昧性を除去することができる。具体的には、キーストロークを行った手およびキーストローク位置にある2つの重複キーを判定することによって、プロセッサは、2つのキーのうちのどちらが押されたか(たとえば、「T」か「U」か、「R」か「I」か、など)を判定することができる。プロセッサが、押されたキーを判定すると、プロセッサは、ステップ320で、対応する文字を入力として受け入れ、同定した文字の表示イメージを生成することができる。ステップ220で、表示イメージは、ユーザに表示するために、圧力検知式タッチスクリーンに通信することができる。
【００４７】
重複キーの領域上のキーストロークの曖昧性を除去する、別の実施形態の方法において、モバイル装置は、形および加えられた圧力などの、測定したキーストローク特徴に基づいて、異なるキー打ちを区別するようになることができる学習モジュールを利用することができる。学習モジュールを使用して、プロセッサは、特定のユーザのキーストローク識別特性に関するデータを収集することができる。そのようなキーストローク識別特性データは、ユーザが、表示されたテキストなどの、その値が学習モジュールに知られているキーをタイプする訓練セッションの中で、またはモバイル装置スピーカから発せられる聴覚コマンドに応答して集められ得る。そのようなキーストローク識別特性データは、ユーザが特定のキーを打つ独自の位置、各キー打ちの独自の形、および/または各キーを打つときにユーザがかける独自の圧力量の測定を含み得る。学習セッションの中でこのデータを収集することにより、プロセッサは、次の打つ位置、形および/または圧力読み取り値を相関させて、重複領域におけるキーストロークの曖昧性を除去することができる。より詳細に後で述べるように、さまざまな実施形態と関連付けられた学習アルゴリズムが、プロセッサ内で動作する、プロセッサが実行可能な命令のモジュールとなり得る学習モジュール内のモバイル装置プロセッサの中に実装され得る。
【００４８】
学習モジュールおよび訓練ルーチンは、QWERTYキーボード配列との関連で以下に説明するが、さまざまな態様が、数字キーパッドおよび異なるキー配列を有する英数字のキーパッドなどの他のタイプのキーパッドを規定するために適用されてもよい。たとえば、さまざまな態様が、Canadian Multilingual Standard、Canadian French、Czech、Danish、Dutch、Faroese、Irish、Italian、Norwegian、Polish、Portuguese(ポルトガル)、Portuguese(ブラジル)、Romanian(ルーマニア、モルドバ)、Slovak、Spanish(スペイン)、Spanish(ラテンアメリカ)、Swedish/Finnish、United Kingdom、United Kingdom extended、およびUS-International用に規定されたキーボード配列を含む、QWERTYキーボード配列の変形形体に適用されてもよい。さまざまな態様は、たとえば、QWERTZ(Czech、Hungary、Germany、およびAustria、Slovak、Bosnian、Croatian、Serbian(ラテン)、およびSlovene、Serbian(キリル文字)、Swiss German、Swiss French、Swiss Italian、Liechtenstein、およびLuxembourg用に規定されたものを含む)、AZERTY(FrenchおよびBelgian用に規定されたものを含む)、QZERTY、Dvorakキーボード、Colemakキーボード、Turkish、ならびにchordedキーボードを含む他のタイプのキーボード配列に十分等しく適用することができる。さらに、さまざまな態様が、たとえば、Arabic、Armenian、Greek、Hebrew、Russian、Ukrainian、Bulgarian、Devanagari、Thai、Khmer、Tibetan Script、Tibetan(中国)、Dzongkha(ブータン)、Chinese、Japanese、Hangul(韓国語用)、Dubeolshik、Sebeolsik 390、Sebeolsik Final、およびSebeolsik Noshiftを含む、ラテン文字以外およびアルファベット以外を書くことのために最適化されたキーボードに適用できる。さらに、さまざまな実施形態が、ピアノキーボードなどの音楽キーボードに適用され得る。
【００４９】
ユーザが、モバイル装置プロセッサに、ユーザ独自のキーストローク識別特性を教える前に、モバイル装置は、図7に示した配列などの仮想キーボード配列を表示することができる。仮想キーボード配列を有するユーザインターフェイスとして、学習モジュールは、重複領域においてユーザがキーストロークを実行する特定の方法を記録することができる。後続のキーストロークの特徴を、学習セッション中に記録されたキーストローク識別特性データと比較することによって、プロセッサは、重複領域158におけるキーストロークの曖昧性を除去することができる。
【００５０】
図12は、さまざまな実施形態を可能にするモバイル装置のシステム構成要素図である。モバイル装置は、仮想キーボード12が表示される圧力検知式タッチスクリーン14を含み得る。圧力検知式タッチスクリーン14は、面へのキーストロークと関連付けられた信号を受け取り、その信号を、キーパッドインターフェイス3などのコンピューティングデバイスオペレーティングシステムが解釈できるキーストロークイベント、座標および測定圧力信号に変換するハードウェアドライバ4と結合されていてもよい。説明を容易にするために、キーパッドインターフェイス3は、処理モジュールとして図示するが、コンピューティングデバイスオペレーティングシステム、またはコンピューティングデバイスのファームウェアもしくはハードウェアコンポーネントの機能の部分であってもよい。例示の実施形態において、キーパッドインターフェイス3の機能は、キーストロークイベント信号を、アプリケーションが解釈できる形式で、オペレーティングシステムに関連して動作するアプリケーション2に受け渡す。ハードウェアおよびコンピューティングデバイスの実装に応じて、キーパッドインターフェイス3と組合せた圧力検知式タッチスクリーン14用のハードウェアドライバ4は、仮想キーボード12の表示を生成することができる。さらに、ハードウェアドライバ4および/またはキーパッドインターフェイス3は、圧力検知式タッチスクリーン14上のキーストロークを、キーストロークの位置座標に基づいて、特定のキーを打つことと解釈することができる。ハードウェアドライバ4および/またはキーパッドインターフェイス3は、さらに、特定のキー上の各キーストロークの形を、タッチスクリーンディスプレイの精度および解像度に依存して判定することができる。また、ハードウェアドライバ4および/またはキーパッドインターフェイス3は、タッチスクリーン面上にかかる、各キーストロークに関連する圧力の大きさを測定することができる。ドライバ4および/またはキーパッドインターフェイス3は、重複キーの領域内または複数文字キー上のキーストロークの曖昧性を除去するために、さまざまな実施形態を実施することができる。キーパッドインターフェイス3は、次いでキー押下イベントを、押されたキーを、物理キーボードから押されたキーのように識別するアプリケーション2に通信することができる。
【００５１】
一実施形態において、キーパッドインターフェイス3は、ユーザのキーストロークからキーストローク識別特性データを集めるように構成された学習モジュール10と協働することができる。以上説明したように、学習モジュール10は、圧力検知式タッチスクリーン14上のキーストロークの位置、形および圧力に関する情報(すなわち、キーストローク識別特性データ)を、キーパッドインターフェイス3またはハードウェアドライバ4から受け取り、このキーストローク識別特性データを、特定の文字または機能と相関させることができる。したがって、各キーを打つことは、相関させられたキーストローク識別特性データを有することができる。相関させられたキーストローク識別特性データは、次いで、キーストロークの曖昧性除去に続いて使用するために、メモリに格納され得る。続く仮想キーボードの使用の間、重複領域におけるキーストロークによって生じる入力文字の曖昧性があるとき、相関させられたキーストローク識別特性データがメモリから読み出され、最も可能性が高い合致を判定するために、測定したキーストローク特徴と比較されてもよい。キーストローク特徴を、格納されたキーストローク識別特性データに合致させることによって、プロセッサは、ユーザが打つことを意図したのは2つのキーのうちのどちらか判定することができる。
【００５２】
一実施形態において、学習モジュール10は、アプリケーション2として、モバイル装置オペレーティングシステムの部分として、またはハードウェアドライバ4の部分として実施することができる、プロセッサが実行可能な処理であってもよい。学習モジュール10は、訓練アプリケーション、スペルチェックアプリケーション(文書処理アプリケーションに実装され得るものなど)、および学習モジュール10に意図したまたは予測キーストロークを知らせることができる自動修正アプリケーションなどの他のアプリケーションから情報を受け取ることもできる。学習アルゴリズム、人工知能、または他の推論処理を使用して、学習モジュール10は、集めたキーストローク識別特性データを、所望のまたは適切なキー、文字または機能と相関させることができる。学習モジュール10のキーパッド配列データ8出力は、キーパッドドライバ4、キーパッドインターフェイス3またはコンピューティングデバイスオペレーティングシステムの他の要素が、仮想キーパッド上のキーストローク識別特性データを適切な文字(たとえば、ASCII文字値)に変換するために使用することができる、メモリ内に格納された相関関係行列の形体であってもよい。
【００５３】
学習モジュール10は、推論エンジン100および命令データベース106を含むことができる。推論エンジン100は、コンピューティングデバイスプロセッサ上で実行される処理および規則の形体であってもよい。学習モジュール10はまた、最初の学習ルーチンの間にユーザに提示することができる訓練コマンドおよび学習テキストサンプルを有するメモリ内に格納することができる命令データベース106を有していてもよい。
【００５４】
図13は、ユーザのキーストローク識別特性データを学習し、そのキーストローク識別特性データを意図したキーに相関させるための、例示的な教示処理300を示す処理流れ図である。図13を参照すると、タッチセンシティブ面およびデバイスドライバが、図7に示した例のように、ステップ201で仮想キーボード配列を生成および表示する間に、学習モジュールは、ステップ325で、次の命令用の命令データベースにアクセスすることができる。アクセスされた命令は、ステップ225で、ユーザに対して圧力検知式タッチスクリーン上に表示され得る。命令は、重複領域158における各キーへ少なくとも1回のキーストロークを行うことをユーザに要求するフレーズをタイプするようにユーザに要求することができる。たとえば、ユーザは、「The quick brown fox jumped over the lazy dog.(すばしっこい茶色の狐がのろまな犬を飛び越えた。)」というフレーズをタイプするように要求され得る。このフレーズは、ローマ字アルファベット26文字のすべてが少なくとも1回出てくるように選ばれている。ユーザが各キーを打つことを実行して、フレーズ内の各文字をタイプすると、ステップ230で、圧力検知式タッチスクリーンは、ユーザのキーストローク識別特性データを取り込むことができる。キーストローク識別特性データは、ステップ330で、学習モジュールに通信され得る。学習モジュールは、ステップ335で、キーストローク識別特性データを命令フレーズの各文字に相関させることができる。学習モジュールは、次いで、ステップ340で、格納ユーザキーストローク識別特性データテーブルを、期待キー用の受け取ったキーストローク識別特性データでアップデートすることができる。キーストローク識別特性データが収集されると、プロセッサは、判定345で、フレーズを完成させるために追加のキーストロークが必要かどうか判定する。追加のキーストロークが期待される場合(すなわち、判定345=はい)、学習モジュールは、次の期待キー用のキーストローク識別特性データをステップ330で受け取りに戻る。しかしながら、最後の期待キー用のキーストローク識別特性データを受け取り、アップデートした(すなわち、判定345=いいえ)場合、学習モジュールは、判定350で、追加の命令が必要かど
うか判定する。追加の命令がある場合(すなわち、判定350=はい)、学習モジュールは、戻って、次の命令用にステップ325で命令データベースにアクセスしてもよい。追加の命令がない場合(判定350=いいえ)、タッチセンシティブ面およびデバイスドライバは、ステップ250で、学習セッションが完了したことをユーザに知らせるメッセージを表示することができる。
【００５５】
識別特性キーストロークデータテーブルにおいてユーザのキーストローク識別特性データがアップデートされて、図7に示したような仮想キーボード配列を使用して、ユーザのキーストロークを解釈するために一実施形態の方法を使用することができる。図14は、学習したキーストローク識別特性データを使用して、重複領域におけるキーストロークの曖昧性を除去するために行われるステップを示す処理流れ図である。図9および11を参照してすでに説明した処理フローと同様に、仮想キーボードが表示され(ステップ201)、閾値を超える測定圧力を有するキーストロークが検出される(ステップ202)。閾値を超える圧力のキーストロークが検出されるとき、圧力検知式タッチスクリーンは、ステップ215で、キーストローク識別特性データを取り込むことができる。そのような識別特性データは、たとえば、キーストロークの位置、キーストロークの形、キーストロークにおいてかかる測定した圧力などに関するデータを含み得る。ステップ315で、キーストローク識別特性データは、モバイル装置プロセッサに通信され得る。プロセッサは、判定307で、キーストロークが重複領域158において生じたかどうかをキーストローク識別特性データから判定することができる。キーストロークが重複領域158にない場合(すなわち、判定307=いいえ)、プロセッサは、ステップ320で、キーストローク位置を曖昧性なく文字に相関させ、同定した文字を入力として受け入れ、同定した文字の表示イメージを生成することができる。ステップ220で、表示イメージは、ユーザに表示するために、タッチセンシティブ面およびデバイスドライバに通信することができる。
【００５６】
キーストロークが重複領域内にあると判定された場合(すなわち、判定307=はい)、プロセッサは、ステップ316で、受け取ったキーストローク識別特性データを、キーストローク識別特性データテーブルに格納された、ユーザのキーストローク識別特性データと比較することができる。受け取ったキーストローク識別特性データと最も合致する格納キーストローク識別特性データを判定し、合致した格納識別特性データに対応する文字またはキーを判定することによって、プロセッサは、ステップ317で、重複領域158におけるキーストロークの曖昧性を除去することができる。キーストロークの曖昧性が除去され、対応する文字が同定されたとき、同定された文字が入力として受け入れられ、プロセッサは、ステップ320で、文字の表示イメージを生成することができる。ステップ220で、表示イメージは、ユーザに表示するために、圧力検知式タッチスクリーンに通信することができる。
【００５７】
重複領域におけるキーストロークの曖昧性を除去するための別の代替実施形態が、図15に示してある。この代替実施形態において、プロセッサは、個々のキーストローク識別特性データ値をキーストローク識別特性データテーブルと比較することによって、キーストロークの曖昧性除去を試みることができる。次いで、キーストローク曖昧性除去処理は、意図したキーが判定され次第終了してもよい。図15に示した代替実施形態において、プロセッサは、図14を参照してすでに説明したのと同じように、ステップ201、202、215および315ならびに判定307を実施する。キーストロークが重複領域にない場合(すなわち、判定307=いいえ)、プロセッサは、ステップ320で、曖昧性除去処理なしで、対応する文字を同定し、同定した文字を入力として受け入れ、文字の表示イメージを生成することができる。ステップ220で、表示イメージは、ユーザに表示するために、タッチセンシティブ面およびデバイスドライバに通信することができる。
【００５８】
キーストロークが重複領域内にある場合(すなわち、判定307=はい)、プロセッサは、ステップ355で、受け取ったタッチの形をキーストローク識別特性データテーブルに格納されたタッチの形と比較することによって、タッチの形に基づいてキーストロークの曖昧性除去を試みることができる。プロセッサが、検出したキーストロークタッチの形を、重複領域における2つ(またはそれ以上のキー)のうちの1つについてキーストローク識別特性データテーブルに格納されたタッチの形と合致させた場合、プロセッサは、合致した形に対応する文字またはキーのキーストロークとして、重複領域158におけるキーストロークの曖昧性を除去することができる。場合によっては、キーストロークの形は、キーストローク識別特性データテーブルに格納された特定の重複キーのいずれのタッチの形にも合致しないことがある。これは、ユーザによる異常なキーストロークの動きまたは場合によっては、ユーザがキーストロークを行っている間のモバイル装置151の動きによる可能性がある。十分に合致するタッチの形がない場合、プロセッサは、キーストロークの曖昧性を断定的に除去できない場合がある。したがって、検出したキーストローク形を、キーストローク識別特性データテーブルに格納されたタッチの形に合致させるように試みた後、プロセッサは、判定356で、キーストロークの曖昧性が除去されたかどうか判定してもよい。プロセッサが、キーストロークの位置にある2つの重複キーのうちの1つを、タッチの形のみに基づいて選択することができた場合(すなわち、判定356=はい)、プロセッサは、ステップ320で、同定した文字をさらなる処理なしで入力として受け入れ、同定した文字の表示イメージを生成することができる。ステップ220で、表示イメージは、ユーザに表示するために、タッチセンシティブ面およびデバイスドライバに通信することができる。
【００５９】
プロセッサが、タッチの形のみに基づいてキーストロークの曖昧性を除去できない場合(すなわち、判定356=いいえ)、プロセッサは、ステップ357で、検出したキーストローク圧力測定値を、格納キーストローク識別特性データにおける圧力測定値に合致させようと試みることができる。測定圧力のデータおよび形のデータを、格納されたキーストローク識別特性データと比較することによって、プロセッサは、多種多様な比較を行って、2つの重複キーのうちの1つを、最も可能性が高い意図したキー打ちとして選択することができる。プロセッサが、キーストロークに対応する文字を同定すると、プロセッサは、ステップ320で、同定した文字を入力として受け入れ、同定した文字の表示イメージを生成することができる。ステップ220で、表示イメージは、ユーザに表示するために、タッチセンシティブ面およびデバイスドライバと通信することができる。
【００６０】
プロセッサが、キーストロークの曖昧性を、その識別特性データを格納キーストローク識別特性データと比較することによって除去することができない場合においては、プロセッサは、予測テキストルーチンを適用して、最も可能性が高い意図したキーストロークを判定することができる。図16は、そのような代替実施形態の方法を示す処理流れ図である。図16に示した処理フローは、図15を参照してすでに説明した処理フローと同様なので、同じ番号のステップの上記の説明をやはり適用する。測定したキーストローク圧力を、キーストローク識別特性データテーブルに格納されたキーストローク識別特性圧力データと比較することによってキーストロークの曖昧性除去を試みた後、プロセッサは、判定360で、キーストロークの曖昧性が除去できたかどうか判定することができる。プロセッサが、タッチの形および圧力データに基づいて、キーストロークの曖昧性を除去することができる場合(すなわち、判定360=はい)、プロセッサは、ステップ320で、同定した文字を入力として受け入れ、その同定した文字を含む表示イメージを生成し、ステップ220で、表示を圧力検知式タッチスクリーンに通信して、イメージを表示する。しかしながら、プロセッサが、依然としてキーストロークの曖昧性を除去できない場合(すなわち判定360=いいえ)、プロセッサは、ステップ365で、いくつかのよく知られた予測テキストルーチンのうちの任意のものを実施して、2つ(以上)の重複キーの間で、すでに入力されたテキストの残りに最も合致する文字を選択することができる。次いで、ステップ270で、予測文字は、検出したキーストロークに関連付けられた入力文字として割り当てられる。次いで、ステップ320で、プロセッサは、同定した文字を含む表示イメージを生成し、この情報を圧力検知式タッチスクリーンに通信して、ステップ220で、イメージを表示することができる。
【００６１】
図17は、モバイル装置151に表示された別の実施形態の仮想キーパッド配列を示す。図17に示す仮想キーパッド配列は、左手部156と右手部157の間の角度が大きくなっていること以外は、図7に示す実施形態の仮想キーパッド配列と同様である。そのような配列は、市販の人間工学的な「自然なスタイルのキーボード」配列により近く、ユーザによってはより快適になり得る。図17に示す代替仮想キーパッド配列を実装することにより、拡大した角度がユーザの自然な手の回内角度により近くなり得るので、ユーザは、より快適なデータ入力位置を体験することができる。左手部156と右手部157の間の角度は、より快適な手の位置の実現および/またはタッチスクリーン面の表示上で互いに重複するキーの数の最小化のために、ユーザによって修正され得る。左手部156と右手部157の間の角度の結果、互いに重複するキーが少なくなる。たとえば、図7に示す実施形態の配列においては、8つのキーが重複領域158内に位置しているため、2つのキーの4組が、タッチスクリーン面の実質的に同じ座標に位置している。対照的に、図17に示した代替実施形態の配列においては、6つのキーのみが重複している。具体的には、「R」キーと「I」キーが重複し、「T」キーと「U」キーが重複し、「G」キーと「Y」キーの少なくとも一部が重複している。重複キー上の任意のキーストロークの曖昧性を除去するために、図8〜16を参照して説明した実施形態の方法のうちのいずれかを、図17に示した仮想キーパッド配列とともに使用することができる。
【００６２】
さらなる実施形態において、圧力検知式タッチスクリーンに加えられる圧力を測定するための機能がつくことで、すっきりしたユーザインターフェイスデザインを可能にすることができる。たとえば、アドレス帳または連絡先データベースは、ユーザの家族、友人、仕事上の知人などに関する連絡先情報を含むことができる。多くの場合、各連絡先には、複数の連絡先電話番号(たとえば、モバイル装置、家、会社、ファックスなど)とともにeメールアドレス、SMSアドレスなどが含まれ得る。大半のアドレス帳アプリケーションにおいて、ユーザは、連絡先名と通信するために使う連絡機能(電話をかける、eメールをタイプする、ファックスを送る、SMSをタイプする、MMSを送る、など)を選択するために、一連のキーストロークおよび/またはプルダウンメニュー選択を実行しなければならないことがある。たとえ特定の連絡先が、連絡先番号またはeメールアドレスなどを1つしか有していなくとも、ユーザは、典型的には、まず連絡先名を選択し、次いでその連絡先と通信するために、どの連絡先番号/アドレスを使用するか選択する必要がある。モバイル装置上に圧力検知式タッチスクリーンを実装することによって、単一のキーストロークにおいて連絡先および所望の連絡機能/アドレス/番号の両方の選択をユーザに可能にさせる一実施形態のユーザインターフェイスを実現することができる。
【００６３】
図18は、アドレス帳アプリケーション用の例示的なトップメニュー表示を示す。この実施形態において、加えられる圧力を測定し、異なる要素または機能を選択するために、そのデータを使用する。アドレス帳データベース内の各連絡先には、いくつかの圧力「速度ダイアル」が割り当てられ得る。圧力速度ダイアルの数は、圧力センサの感度(すなわち、圧力センサが、さまざまなレベルの加えられる圧力を区別することができる精度)およびタッチスクリーンディスプレイ面上にかかる圧力の量を制御するユーザの能力に従って変化し得る。選択した連絡先名をさまざまな程度の圧力で押すことによって、ユーザは、連絡先名を選択するだけでなく、選択した連絡先と通信するためにユーザが使用することを望む連絡機能も選択することができる。たとえば、モバイル装置アドレス帳アプリケーションは、連絡先名ごとに最大4つの圧力速度ダイアルを割り当てることをユーザに可能にさせることができる。連絡先名を軽く押すことによって、ユーザは、連絡先名のモバイル装置に電話をかけることができる。連絡先名をわずかに強く押すことによって、ユーザは、連絡先名の主要eメールアドレスにeメールメッセージを送ることができる。連絡先名をやや強く押すことによって、ユーザは、連絡先名のモバイル装置にSMSテキストメッセージを送ることができる。最後に、連絡先名を極めて強く押すことによって、ユーザは、連絡先名の職場の電話に電話をかけることができる。これらの連絡機能は、実施形態の例示を意味するものでしかない。実際には、ユーザは、連絡機能およびかかる圧力レベルに対するその相関関係をカスタマイズすることができる。
【００６４】
圧力速度ダイアル設定が確立され、圧力速度ダイアルデータテーブルに格納されると、モバイル装置は、単一のキーストロークにおいて連絡先名および連絡機能の両方をユーザが選択できるようにする、図19に示したような実施形態の方法を実施することができる。仮想キーパッド配列の生成および表示と同様に、タッチセンシティブ面およびデバイスドライバは、ステップ203で、連絡先アプリケーショントップメニューを生成し、表示することができる。ユーザが連絡先名に触れたとき、タッチセンシティブ面およびデバイスドライバは、ステップ215で、タッチと関連付けられたキーストローク識別特性データを取り込むことができる。前述のように、検出したキーストローク識別特性データは、キーストロークの位置、形、および/または圧力に関する情報を含み得る。検出したキーストローク識別特性データは、ステップ315で、モバイル装置プロセッサに通信され得る。モバイル装置プロセッサは、ステップ375で、検出したキーストローク位置を特定の連絡先記録と相関させることができる。次いで、モバイル装置プロセッサは、ステップ380で、検出したキーストローク圧力データを、圧力速度ダイアルデータテーブルに格納された圧力データと比較して、対応する連絡機能を判定することができる。圧力速度ダイアルデータテーブルの例は、図22に示してある。対応する連絡機能が特定されると、プロセッサは、ステップ385で、選択された連絡先用の連絡機能を起動することができる。プロセッサはまた、ステップ390で、連絡機能が起動されたことを示す表示イメージを生成することもできる。ステップ290で、表示イメージは、表示するために圧力検知式タッチスクリーンに通信され得る。
【００６５】
図22は、例示的な圧力速度ダイアルデータテーブルである。図22に示すように、さまざまな連絡機能が、連絡先名の上にかかる圧力を測定することに応答して起動され得る。たとえば、ユーザが、1ニュートンと10ニュートンの間の力をタッチスクリーンにかけた場合、キーストローク圧力は、音声電話機能と相関され得る。したがって、そのような圧力を測定したとき、プロセッサは、触れられた連絡先名に対する詳細連絡先情報に記載されている主要電話番号に、音声電話をかけることができる。同様に、ユーザが、10ニュートンと20ニュートンの間の力をタッチスクリーンにかけた場合、キーストローク圧力は、eメール機能と相関され得る。したがって、そのような圧力を測定したとき、プロセッサは、触れられた連絡先名に対する詳細連絡先情報に記載されている主要eメールアドレスに、eメールを送ることができる。また、ユーザが、20ニュートンと30ニュートンの間の力をタッチスクリーンにかけた場合、キーストローク圧力は、SMS機能と相関され得る。したがって、そのような圧力を測定したとき、プロセッサは、触れられた連絡先名に対する詳細連絡先情報に記載されているモバイル装置電話番号に、SMSメッセージを送ることができる。また、ユーザが、30ニュートンを超える力をタッチスクリーンにかけた場合、キーストローク圧力は、2次的な電話番号への電話の発呼と相関され得る。したがって、そのような圧力を測定したとき、プロセッサは、触れられた連絡先名に対する詳細連絡先情報に記載されている2次的な電話番号に電話をかけることができる。このように、ユーザは、さまざまな程度の圧力で、単一のキーストローク、すなわち、所望の連絡先名のタッチを行って、選択された連絡先に対する多様な連絡機能を起動することができる。
【００６６】
図22に示した圧力速度ダイアルデータテーブルは、例示でしかないことを意味する。圧力速度ダイアルデータテーブルの変形が実装できる。たとえば、いくつかの圧力速度ダイアルデータテーブルは、より多いまたは少ない連絡機能オプションを含むことができる。いくつかの圧力センサは、さまざまなレベルの圧力を正確に区別することができなくてもよい。その結果、より少ない連絡機能オプションが提供され得る。別法として、ユーザは、高度な繰返し性をもってタッチスクリーンに圧力をかけるのに苦労する可能性がある。したがって、ユーザによっては、単に強くまたは柔らかく押すだけで連絡機能オプション間を区別することができるように、加圧起動型の連絡機能オプションは少ないことを望む場合がある。他の代替実施形態において、別個の圧力速度ダイアルデータテーブルが、連絡先ごとに維持され得る。各圧力速度ダイアルデータテーブルは、異なるレベルの圧力に対する異なる連絡機能を起動するために、カスタマイズすることができる。したがって、たとえば、1〜10ニュートンの力を第1の連絡先にかけると、連絡先名のモバイル装置に電話をかけることになる一方、同じ量の力を第2の連絡先にかけると、第2の連絡先名のモバイル装置にアドレスされたSMSメッセージを送ることができる。
【００６７】
別の実施形態において、圧力検知式タッチスクリーン内の圧力センサは、直感的な音量制御ユーザインターフェイスをユーザに提供するために利用することができる。いくつかのモバイル装置は、ユーザにスピーカ機能を提供するが、ユーザが、スピーカのオーディオ出力を個人的範囲にとどめたい場合もあり得る。たとえば、公共の場で通話を行うとき、ユーザは、他人が立ち聞きできないように、スピーカフォン機能を控えたい可能性がある。そのような場合、ユーザは、典型的には、モバイル装置のスピーカを自身の耳にしっかりつける。ユーザがオーディオ出力をはっきり聞き取れないときは、ユーザの生来の本能で、モバイル装置を自身の耳に再びより強く押し当てることになる。一実施形態において、モバイル装置は、ユーザの耳および/または顔によって圧力検知式タッチスクリーンに対してかかるこの圧力を検出し、それに応答して、スピーカの音量出力を上げることができる。
【００６８】
図20は、そのような実施形態の方法を示す処理流れ図である。モバイル装置プロセッサは、いくつかのアプリケーションの起動および活動を制御および監視するメインループ301を実行することができる。メインループ301の実行の間、プロセッサは、ステップ315で、キーストローク識別特性データ(たとえば、タッチ位置、形、圧力など)を含む圧力が圧力検知式タッチスクリーン上にかかっているという割り込みを、圧力検知式タッチスクリーンから受け取ることができる。プロセッサ(または圧力検知式タッチスクリーン)は、タッチが圧力検知式タッチスクリーンを意図的に押したものであり、単に偶然触れたものでないことを確認するために、判定391で、タッチ圧力が閾値を超えるかどうか判定することができる。タッチ圧力が閾値を超えない場合(すなわち、判定391=いいえ)、タッチは偶然であるとみなされてよく、プロセッサは、メインループ301に戻る。タッチ圧力が閾値を超える場合(すなわち、判定391=はい)、プロセッサは、判定392で、オーディオドライバは使用中かどうか判定する。オーディオドライバが使用中でない場合(すなわち、判定392=いいえ)、タッチは、ステップ395で、なんらかの他のユーザインターフェイス処理を意図していてもよい。しかし、オーディオドライバが使用中であるとプロセッサが判定した場合(すなわち、判定392=はい)、プロセッサは、ステップ393で、オーディオドライバの音量設定を上げることができる。
【００６９】
別の実施形態において、圧力検知式タッチスクリーン内の圧力センサを利用して、直感的なズームイン/ズームアウトのイメージ制御ユーザインターフェイスをユーザに提供することができる。最近のユーザインターフェイスの発達により、2本の指(典型的には、親指と人差し指の組合せ)をタッチスクリーンディスプレイ面上にある距離だけ離して置き、指をつまみモーションで一緒に動かすことによって、ユーザがズームアウトさせることを可能にするつまみジェスチャをユーザは使用できるようになった。タッチスクリーンディスプレイは、表示の倍率を再調整することによって、事実上ズームアウトする。たとえば、地図をタッチスクリーン面に表示し、地図の倍率は、1インチが1マイルを表すことを示すと仮定されたい。2本の指を1インチ離して置き、その指を一緒につまんで、2本の指の離間をわずか2分の1インチにすることによって、表示された地図の倍率は、事実上2倍になり、その結果、1インチがここで2マイルを表す。同様に、ユーザは、2本の指を一緒にタッチスクリーンディスプレイ面上に置き、続いてその指を離すことによってズームインすることができる。地図の倍率は減少し、その結果、地図上の同じ距離は、ここで実空間におけるより短い距離を表すことになる。従来のつまみジェスチャに付随する問題は、ズームの量が、1)タッチスクリーンディスプレイのサイズおよび2)ユーザが自身の指を広げることができる距離の量によって制限されることである。多くの場合において、ユーザは単に、つまみジェスチャを所望のズーム量が実現されるまで繰り返し行っている。
【００７０】
一実施形態の方法において、2本指のつまみジェスチャにおいて実現されるズームの量は、ユーザが、タッチ圧力検知式タッチスクリーンにかける圧力の量によって制御することができる。さまざまな程度の圧力で同じつまみジェスチャを行うことにより、ユーザは、さまざまな量のズーム倍率(拡大率)でズームインまたはズームアウト機能の両方を起動することができる。
【００７１】
図21は、そのような実施形態の方法を示す、処理流れ図である。図20を参照してすでに説明した処理フローと同様に、プロセッサは、メインループ301を実行することができる。メインループ301の実行の間、プロセッサは、ステップ315で、キーストロークが、キーストローク識別特性データに沿って行われたという指示を受け取ることができる。プロセッサ(または圧力検知式タッチスクリーン)は、タッチが圧力検知式タッチスクリーンを意図的に押したものであり、単に偶然触れたものでないことを確認するために、判定391で、タッチ圧力が閾値を超えるかどうか判定することができる。タッチ圧力が閾値を超えない場合(すなわち、判定391=いいえ)、タッチは偶然であるとみなされてよく、プロセッサは、メインループ301に戻る。タッチ圧力が閾値を超える場合(すなわち、判定391=はい)、プロセッサは、判定394で、圧力検知式タッチスクリーンに触れている2本の指から得られる複数のタッチ位置が検出されたかどうか判定する。単一のタッチ位置のみ検出される場合(すなわち、判定394=いいえ)、タッチは、ステップ395で、なんらかの他のユーザインターフェイス処理を意図していてもよい。しかし、プロセッサが、複数のタッチが検出されたと判定した場合(すなわち、判定394=はい)、プロセッサは、ステップ396で、つまみズーム機能を起動することができる。ステップ230で起動されるつまみズーム機能は、つまみジェスチャにおける指の動きによって、ズームインするかズームアウトするか判定することができる。プロセッサは、ステップ397で、つまみジェスチャにおいて加えられる測定した圧力を、圧力ズームデータテーブルとさらに比較して、ズームイン/アウト機能に適用するための拡大率を判定することができる。圧力ズームデータテーブルの例は、図23に示してあり、図23を参照して以下により詳細に説明する。ズームインまたはズームアウト機能がプロセッサによって判定され(ステップ396)、ズーム拡大率が、キーストロークに関連した圧力の検出量と相関することによって判定されると(ステップ397)、プロセッサは、ステップ398で、ズームインまたはズームアウトの相関させられた程度に従って適切な表示を生成することができる。
【００７２】
図23は、例示的な圧力ズームデータテーブルである。図23に示されるように、さまざまなレベルの圧力が、ユーザの2本の指によって圧力検知式タッチスクリーン上にかかったとき、さまざまなレベルのズームが、ズームインまたはズームアウト機能に適用され得る。たとえば、ユーザが、1ニュートンと10ニュートンの間の力をタッチスクリーン上にかけた場合、タッチ圧力は、1.5倍のズーム(倍率)と相関することになる。ユーザが、10ニュートンと20ニュートンの間の力をタッチスクリーン上にかけた場合、タッチ圧力は、2倍ズーム(倍率)と相関することになる。ユーザが、20ニュートンと30ニュートンの間の力をタッチスクリーン上にかけた場合、タッチ圧力は、5倍のズーム(倍率)と相関することになる。ユーザが、1ニュートンと10ニュートンの間の力をタッチスクリーン上にかけた場合、タッチ圧力は、10倍のズーム(倍率)と相関することになる。
【００７３】
図23に示した圧力ズームデータテーブルは、例示でしかないことを意味する。圧力ズームダイアルデータテーブルの変形が実装できる。たとえば、いくつかの圧力ズームデータテーブルは、より多いまたは少ないレベルの倍率を含むことができる。いくつかの圧力センサは、さまざまなレベルの圧力を正確に区別することができなくてもよい。その結果、より少ない倍率レベルオプションが提示され得る。別法として、ユーザは、さまざまな程度の圧力をタッチスクリーン上に繰返し可能にかけるのに苦労する可能性がある。したがって、ユーザによっては、単に強くまたは柔らかく押すだけで倍率レベルオプションを区別することができるように、倍率レベルオプションは少ないことを望む場合がある。
【００７４】
上記のように、ユーザは、モバイル装置を含む多種多様なデバイスを使用して、圧力検知式タッチスクリーン上の仮想キーパッドと対話することができる。さまざまな態様とともに使用するのに適した典型的なモバイル装置は、図24に示した構成要素を共通して含む。たとえば、例示的なモバイル装置1300は、内部メモリ1302および圧力検知式タッチスクリーン1303に結合されたプロセッサ1301を含むことができる。さらに、モバイル装置1300は、電磁放射線送受信用のアンテナ1304を含むことができ、アンテナ1304は、無線データリンクおよび/またはプロセッサ1301に結合された携帯電話送受信機1305に接続されている。ある実施形態では、送受信機1305ならびに携帯電話通信に使用されるプロセッサ1301およびメモリ1302の部分は、集合的にエアインターフェイスと称され、これは無線データリンクを介してデータインターフェイスを提供するからである。モバイル装置1300は、ユーザ入力を受け取るための、物理キーパッド1306または小型キーボードおよびメニュー選択ボタンまたはロッカスイッチ1307を含んでいてもよい。プロセッサ1301は、さらにボコーダ1399に接続してもよく、ボコーダ1399は、次にマイクロホン1319およびスピーカ1318に接続する。
【００７５】
移動プロセッサ1301は、任意のプログラム可能なマイクロプロセッサ、マイクロコンピュータもしくはマルチプロセッサチップ、または本明細書に記載のさまざまな態様の機能を含む多種多様な機能を実行するためのソフトウェア命令(アプリケーション)によって構成可能なチップであってもよい。いくつかのモバイル装置において、無線通信機能専用の1つのプロセッサおよび他のアプリケーションの実行専用の1つのプロセッサといった、複数のプロセッサ1301が設けられ得る。典型的には、ソフトウェアアプリケーションは、アクセスされ、プロセッサ1301にロードされる前に、内部メモリ1302に格納され得る。いくつかのモバイル装置において、追加のメモリチップ(たとえば、セキュアデータ(SD)カード)が、デバイス1300に差し込まれたり、プロセッサ1301に結合されたりしてもよい。多くのモバイル装置において、内部メモリ1302は、揮発性またはフラッシュメモリなどの不揮発性メモリ、あるいはその両方の組合せであってもよい。本説明のために、メモリの一般的参照は、内部メモリ1302、モバイル装置に差し込むリムーバブルメモリ、およびプロセッサ1301自体の中にあるメモリを含む、プロセッサ1301によってアクセス可能なすべてのメモリを指す。
【００７６】
上記の方法の説明および処理流れ図は、単に説明用の例として提供するものであり、さまざまな態様のステップは、提示した順序で行われなければならないことを要求したりまたは示唆したりすることを意図したものではない。当業者には理解されるように、上記の態様におけるステップは、任意の順序で行われてよい。さらに、ステップ識別子および「その後」「次いで」、「次に」、などの単語の参照は、ステップの順序を制限することは意図しておらず、そのような識別子および単語は、単に、方法の説明を通じて読み手を導くために使用している。
【００７７】
本明細書において開示される態様に関連して記載した、さまざまな例示の論理ブロック、モジュール、回路、およびアルゴリズムステップを、電子ハードウェア、コンピュータソフトウェア、またはその両方の組合せとして実施することができる。ハードウェアとソフトウェアのこの互換性を明確に示すために、さまざまな例示の構成要素、ブロック、モジュール、回路、およびステップを、その機能性の観点からすでに一般的に述べてきた。そのような機能性がハードウェアまたはソフトウェアとして実装されるかどうかは、全体的なシステムに課せられる特定の用途およびデザイン制約次第である。当業者は、記載した機能性を特定の用途ごとにさまざまな方法で実施することができるが、そのような実施上の判断は、本発明の範囲からの逸脱を招いていると解釈されるべきではない。
【００７８】
本明細書において開示される態様に関連して記載した、さまざまな例示の論理、論理ブロック、モジュール、および回路を実装するために使用するハードウェアが、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)またはその他のプログラム可能な論理デバイス、個々のゲートまたはトランジスタ論理、個々のハードウェアコンポーネント、または本明細書に記載の機能を実施するために設計したそれらの任意の組合せによって、実装または実施され得る。汎用プロセッサは、マイクロプロセッサであってもよいが、別法として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械であってもよい。プロセッサは、コンピューティングデバイスの組合せとして実装してもよく、たとえば、DSPとマイクロプロセッサの組合せ、複数のマイクロプロセッサ、1つまたは複数のマイクロプロセッサとDSPコア、または任意の他のそのような構成である。別法として、いくつかのステップまたは方法は、所与の機能に特有の回路構成によって実行することができる。
【００７９】
1つまたは複数の例示的な態様において、記載した機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装することができる。ソフトウェアに実装する場合、機能は、コンピュータ可読媒体に格納されるか、あるいは1つまたは複数の命令またはコードとしてコンピュータ可読媒体に送信され得る。本明細書において開示される方法またはアルゴリズムのステップは、プロセッサが実行可能なソフトウェアモジュール内に実装されてもよく、この実行されるソフトウェアモジュールは、コンピュータ可読媒体上にあってもよい。コンピュータ可読媒体は、コンピュータ記憶媒体、およびある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む通信媒体の両方を含む。記憶媒体は、コンピュータがアクセス可能な、任意の利用可能な媒体であってもよい。例として、また限定ではなく、そのようなコンピュータ可読媒体は、RAM、ROM、EEPROM、CD-ROMまたは他の光ディスク記憶装置、磁気ディスク記憶装置または他の磁気記憶装置デバイス、あるいは命令またはデータ構造の形で所望のプログラムコードを伝達または格納するために使用でき、コンピュータがアクセスできる任意の他の媒体を含むことができる。また、任意の接続は、適切にコンピュータ可読媒体と称される。たとえば、ソフトウェアが、ウェブサイト、サーバ、または他のリモートソースから、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL)、または赤外線、無線、およびマイクロ波などの無線技術を使用して送られる場合、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などの無線技術が、媒体の定義に含まれる。ディスク(disk)およびディスク(disc)は、本明細書では、コンパクトディスク(CD)、レーザディスク、光ディスク、digital versatile disc(DVD)、フロッピー（登録商標）ディスク、およびブルーレイディスクを含み、ディスク(disk)は通常、データを磁気的に再生し、一方でディスク(disc)は、レーザを用いてデータを光学的に再生する。上記の組合せもまた、コンピュータ可読媒体の範囲に含まれるべきである。さらに、方法またはアルゴリズムの動作は、1つのコードおよび/または命
令あるいはコードおよび/または命令の任意の組合せまたは組として、コンピュータプログラム製品に組み込むことができるマシン可読媒体および/またはコンピュータ可読媒体上にあってもよい。
【００８０】
任意の当業者が、本発明を作成または使用することを可能にするために、開示される態様についての以上の説明を提供する。これらの態様に対する各種の変更形態は、当業者に容易に明らかとなり、本明細書で定義する包括的な原理は、本発明の範囲から逸脱することなく他の態様に適用することができる。したがって、本発明は、本明細書に示す態様に限定することは意図せず、本明細書において開示される原理および新規な特徴と矛盾しない最も広い範囲に一致するものとする。
【符号の説明】
【００８１】
2  アプリケーション
3  キーパッドインターフェイス
4  ハードウェアドライバ
8  キーパッド配列データ
10  学習モジュール
12  仮想キーボード
14  圧力検知式タッチスクリーン
100  推論エンジン
106  命令データベース
111  モバイル装置
112  圧力検知式タッチスクリーンディスプレイ
114  表示領域
115  仮想キーパッド領域
120  QWキー
151  モバイル装置
152  ディスプレイスクリーン
154  表示領域
155  完全な仮想キーパッド配列
156  左手部
157  右手部
158  重複領域
501  圧力データテーブル
1300  モバイル装置
1301  プロセッサ
1302  内部メモリ
1303  圧力検知式タッチスクリーン
1304  アンテナ
1305  送受信機
1306  物理キーパッド
1307  ロッカスイッチ
1318  スピーカ
1319  マイクロホン
1399  ボコーダ
【図１】
0005486089.tif 000002
【図２】
0005486089.tif 000003
【図３】
0005486089.tif 000004
【図４】
0005486089.tif 000005
【図６】
0005486089.tif 000006
【図７】
0005486089.tif 000007
【図９】
0005486089.tif 000008
【図１１】
0005486089.tif 000009
【図１２】
0005486089.tif 000010
【図１３】
0005486089.tif 000011
【図１４】
0005486089.tif 000012
【図１５】
0005486089.tif 000013
【図１６】
0005486089.tif 000014
【図１７】
0005486089.tif 000015
【図１９】
0005486089.tif 000016
【図２０】
0005486089.tif 000017
【図２１】
0005486089.tif 000018
【図２４】
0005486089.tif 000019
【図５】
0005486089.tif 000020
【図８】
0005486089.tif 000021
【図１０】
0005486089.tif 000022
【図１８】
0005486089.tif 000023
【図２２】
0005486089.tif 000024
【図２３】
0005486089.tif 000025