JP2017531372A - キーボード入力の曖昧性除去 - Google Patents

キーボード入力の曖昧性除去 Download PDF

Info

Publication number
JP2017531372A
JP2017531372A JP2017511271A JP2017511271A JP2017531372A JP 2017531372 A JP2017531372 A JP 2017531372A JP 2017511271 A JP2017511271 A JP 2017511271A JP 2017511271 A JP2017511271 A JP 2017511271A JP 2017531372 A JP2017531372 A JP 2017531372A
Authority
JP
Japan
Prior art keywords
input
keyboard
radial
gesture
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017511271A
Other languages
English (en)
Other versions
JP2017531372A5 (ja
JP6655064B2 (ja
Inventor
エー.エス. バクストン,ウィリアム
エー.エス. バクストン,ウィリアム
エル. ヒューズ,リチャード
エル. ヒューズ,リチャード
ピー. ヒンクリー,ケネス
ピー. ヒンクリー,ケネス
パユ,ミシェル
スピリドーノヴァ,イリナ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2017531372A publication Critical patent/JP2017531372A/ja
Publication of JP2017531372A5 publication Critical patent/JP2017531372A5/ja
Application granted granted Critical
Publication of JP6655064B2 publication Critical patent/JP6655064B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • G06F3/0234Character input methods using switches operable in different directions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • G06F3/0236Character input methods using selection techniques to select from displayed items
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • G06F3/0237Character input methods using prediction or retrieval techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures

Abstract

装置は、シェイプライティング入力およびラジアルエントリ入力を受け付けるキーボードを動作させるキーボードエンジンを備える。キーボード入力モジュールは、キーボードの少なくとも1つの入力センサから入力データを取得する。意図曖昧性除去エンジンは、キーボードのユーザのために、シェイプライティング入力およびラジアルエントリ入力の受け付けの同時使用を可能にする。

Description

[0001] 電子機器のユーザは、ますますモバイル機器およびタブレットを使用するようになっており、グラフィカルなタッチスクリーンキーボードおよび他のタッチセンサ式キーボードの使用が増えるとともに、これに対応して、ユーザは、効率的なテキスト入力技術を求めるようになっている。研究者は、非QWERTYキー配列から、1回のストロークでの全ワードシェイプライティング、キーを大幅に多重化するとともに言語モデルを介した曖昧な入力を解決する手法まで、タッチスクリーンタイピングを改善する多くの方策を追及してきた。
[0002] このような技術は、相当な性能優位性をもたらし得るものの、技能習得の相当な投資をユーザが行った後に初めて、性能向上を実現可能となる場合が多くなり得る。このため、ユーザは、性能向上を実現するのに十分長くは、このような新しい技術への関心を保たない可能性がある。
[0003] 一般的な一態様によれば、装置は、シェイプライティング入力およびラジアルエントリ入力を受け付けるキーボードを動作させるキーボードエンジンを備える。キーボード入力モジュールは、キーボードの少なくとも1つの入力センサから入力データを取得する。意図曖昧性除去エンジンは、キーボードのユーザのために、シェイプライティング入力およびラジアルエントリ入力の受け付けの同時使用を可能にする。
[0004] 別の態様によれば、入力データは、シェイプライティング入力およびラジアルエントリ入力を受け付けるキーボードから取得されるようになっていてもよい。シェイプライティング入力およびラジアルエントリ入力の受け付けの同時使用は、入力データの曖昧性除去によってシェイプライティング入力とラジアルエントリ入力とを識別することにより、キーボードのユーザに対して提供されるようになっていてもよい。
[0005] 別の態様によれば、コンピュータプログラム製品は、シェイプライティング入力およびラジアルエントリ入力を受け付けるキーボードから入力データを取得することと、入力データの曖昧性除去によってシェイプライティング入力とラジアルエントリ入力とを識別することにより、キーボードのユーザのために、シェイプライティング入力およびラジアルエントリ入力の受け付けの同時使用を提供することと、を少なくとも1つのデバイスプロセッサに行わせ得る実行可能コードを格納したコンピュータ可読記憶媒体を備えていてもよい。
[0006] この発明の概要は、以下の発明を実施するための形態において詳述する簡易形態のさまざまな概念の選択を導入するためのものである。この発明の概要は、特許請求の範囲に係る主題の重要な特徴または本質的な特徴を特定するものでもなければ、特許請求の範囲に係る主題の範囲の制限に用いることを意図したものでもない。1つまたは複数の実施態様の詳細については、添付の図面および以下の説明に示す。他の特徴についても、当該説明および図面、ならびに特許請求の範囲から明らかとなるであろう。
[0007]例示的な仮想キーボードを示した図である。 例示的な仮想キーボードを示した図である。 [0008]横方向ラジアルエントリジェスチャの一例を示した図である。 [0009]斜め方向ラジアルエントリジェスチャの一例を示した図である。 [0010]縦方向ラジアルエントリジェスチャの一例を示した図である。 [0011]例示的なラジアルメニューを示した図である。 例示的なラジアルメニューを示した図である。 [0012]例示的なワード予測を示した図である。 例示的なワード予測を示した図である。 [0013]例示的なシェイプライティングを示した図である。 例示的なシェイプライティングを示した図である。 例示的なシェイプライティングを示した図である。 [0014]ラジアルジェスチャ機能と関連付けられた例示的なラジアルジェスチャヘルプメニューを示した図である。 [0015]例示的なキーボードが取り付けられた例示的な機器を示した図である。 [0016]例示的な意図曖昧性除去エンジンが使用可能な例示的な状態機械を示した図である。 例示的な意図曖昧性除去エンジンが使用可能な例示的な状態機械を示した図である。 [0017]例示的なキーボードエンジンの例示的な論理を示した図である。 [0018]キーボードエントリモードの曖昧性除去のための例示的な汎用システムを示したブロック図である。 [0019]図12のシステムの例示的な動作を示したフローチャートである。 図12のシステムの例示的な動作を示したフローチャートである。 図12のシステムの例示的な動作を示したフローチャートである。
I.序論
[0020] スレート、タブレット、携帯電話、およびマルチタッチ電子白板上でのテキストエントリに用いるソフトキーボードの増強および革新は現在、研究およびイノベーションの盛んな分野である。
[0021] テキストエントリ性能の向上または画面の同一箇所へのより多くのキー機能の適合を図る技術として、シングルまたはマルチタッチスワイプジェスチャによるタッチスクリーンキーボードの拡張がある。たとえば、このようにして、Space、Backspace、Enter、およびShift等のキーのストロークショートカットがラジアルジェスチャ(すなわち、仮想キーボードのキー上、キー近傍、もしくはキー間、またはいくつかの実施態様において、テキスト自体の直上のさまざまな位置を起点とする方向性ストローク)として、特定のキー(たとえば、Shift)上で呼び出し可能なラジアルメニューを介して、またはキーボードのほとんどのエリア(たとえば、Space、Backspace、およびEnter)上で採用されるようになっていてもよい。特に、この手法によれば、ジェスチャにより冗長となった対応するキーの潜在的な削除または省略も可能であるため、第2および第3の潜在的な仮想キーボードからの別の文字に対して、キーボードの空間が解放される。一例としては、2012年10月30日に出願された本願の所有者が所有する米国仮特許出願第61/720,335号(代理人整理番号第336986.01号)「Graphical Keyboard with Radial Menus」および2012年12月19日に出願され、米国特許出願公開第2014/0123049号として公開された「Keyboard with Gesture−Redundant Keys Removed」という名称の米国特許出願第13/720,527号(代理人整理番号第336986.02号)において、ラジアルメニューを備えるとともにジェスチャ冗長キーが省略されたストロークキーボードを提供するいくつかの技術が論じられている。
[0022] さらに、このようなキー機能は、例示的なストロークまたは短ストロークジェスチャにより実装されていてもよい。一例としては、2012年12月12日に出願され、米国特許出願公開第2014/0078063号として公開された「Gesture−Initiated Keyboard Functions」という名称の本願の所有者が所有する米国特許出願第13/712,111号(代理人整理番号第337229.02号)において、このようなキー機能を提供するいくつかの技術が論じられている。
[0023] 本明細書に記載の例示的な技術によれば、キーボードは、ラジアルストローク、ラジアルエントリモードジェスチャ、またはラジアルメニュージェスチャ等の直線状の短ストロークジェスチャとシェイプライティングとを組み合わせ可能である。本明細書に記載の例示的な技術によれば、キーボード上の任意の場所において、許可されたエントリモードのいずれも使用可能であり、また、ユーザからの入力を受け付けるように構成されたキーボード上の任意の位置において、モード間の曖昧性除去をシームレスにオンザフライで実現可能である。
[0024] この背景において、「ジェスチャ」は、キーボード機器のタッチセンサ式表面に接する、またはそこからの指または他のキーボードエントリ物体(または、これらの任意の組み合わせもしくは副組み合わせ)の任意のタッチ、スライド、ホールド、またはリリースを表す可能性がある。さらに、「ジェスチャ」は、(たとえば、物理キーボードであれソフトキーボードであれ、キーボード上の中空あるいは仮想キーボードに対する)タッチを伴わないキーボード上で生じる指、手、または他のキーボードエントリ物体(または、これらの任意の組み合わせもしくは副組み合わせ)の任意の移動を表す可能性がある。さらに、「ジェスチャ」は、ディスプレイ上で始まり、入力物体の移動によってディスプレイ上を上昇する指、手、または他のキーボードエントリ物体の任意の移動を表す可能性がある(たとえば、デプスセンサ式ディスプレイによって、ラジアルメニュージェスチャは、ディスプレイ上で始まって、指によるジェスチャの実行により、ディスプレイ上を上昇可能であるため、指がディスプレイと接触し続ける同じ方向のジェスチャと識別可能である)。
[0025] この背景での使用として、キーボード上の「シェイプライティング」は、キーボード上のストロークによって、指を持ち上げずにワードをスペリングすることを含む可能性がある。たとえば、シェイプライティングは、ストロークの形状およびストロークの屈曲点に基づいて、ジェスチャに近接するさまざまなキーを決定することにより(たとえば、「近接性」という所定の閾値に基づいて、屈曲点に十分近いキーを決定することにより、この「十分に近い」キーが入力としてエントリを意図されたものと判定することにより)解釈されるようになっていてもよい。たとえば、このようなジェスチャは、シェイプライティングにおいて、ワード全体のエントリに用いられるようになっていてもよい。たとえば、言語モデルの使用により、ストローク経路が対象ワードに対して一致するようになっていてもよい。
[0026] たとえば、シェイプジェスチャは、使用頻度の高いワード(たとえば、「the」、「of」、または特定のユーザが高い頻度で使用する他のワード)に用いられるようになっていてもよく、ユーザがシェイプジェスチャを学習した場合には、テキストエントリにおいてより高い速度および効率性を提供できて都合が良い。たとえば、シェイプジェスチャは、低頻度のワード(すなわち、辞書中の任意のワード)にも同様に用いられるようになっていてもよい。たとえば、ユーザは、シェイプライティング技術を経験すると、発生頻度の低いワードのシェイプライティングをますます行う傾向を示し得る。
[0027] この背景での使用として、「ラジアルストローク」または「ラジアルエントリ」ジェスチャは一般的に、最初のタッチに続く特定方向(たとえば、機器がその通常の使用位置に保持されている場合の上方、下方、左方、右方等)の移動により実行される相当短い直線状(すなわち、実質的に屈曲点がない実質的な直線状またはジェスチャに非直線状の角度が含まれる実質的な直線状)のストロークまたはジェスチャを表す可能性がある。
[0028] また、この背景での使用として、「ラジアルストローク」または「ラジアルエントリ」ジェスチャは、より長いストロークを表す可能性がある。たとえば、このような長いストロークは、ラジアルメニューで用いられるようになっていてもよい(たとえば、反復バックスペースジェスチャとして解釈される長くて直線状の縦ストローク)。
[0029] また、この背景での使用として、「ラジアルストローク」または「ラジアルエントリ」ジェスチャは、1つの屈曲点を伴う(たとえば、階層的な(ネストされた)ラジアルメニューを可能とする)ストロークを表す可能性がある。
[0030] この背景での使用として、「意図(intent)」は、キーボードエントリにおけるユーザの意図を表す可能性がある。たとえば、ユーザは、キーボード上で「w」キーから「e」キーまで連続したジェスチャを使う場合、ワード「we」のエントリを意図している可能性がある。この背景での使用として、「意図曖昧性除去(intention disambiguation)」は、キーボード上のエントリおよびキーボードエントリ入力を与えるエンティティ(たとえば、ユーザ)による意図としての入力の潜在的な意図的表現の曖昧性除去を表す可能性がある。
[0031] 本明細書に記載の例示的な技術によれば、キーボードは、例示的なキー(たとえば、ストロークショートカットと冗長であるため、ストロークショートカットに対応するキーボードから省略されている可能性があるキー)の単純なストロークショートカットおよび/または上述の機能、ならびに他のジェスチャを統合することを含むと同時に、「シェイプライティング」技術に対応していてもよい。たとえば、この統合により、例示的なストロークジェスチャの単純な性能優位性を完全なシェイプライティングスキルのより長期取得と組み合わせる混成手法が可能となり、(性能の天井が高くなる一方)ユーザの練習および学習に対するより大規模な投資によって、十分な利益を享受し得る。
[0032] 図1Aは、Space、Backspace、Shift、およびEnterキーが省略された例示的なタッププラスジェスチャQWERTYグラフィカルまたはプリントキーボード100Aを示している。たとえば、実際の完全な省略/除去の代替として、サイズの大幅な縮小および/または単一のキーへの統合すなわち実質的な省略を行った1つまたは複数のキーを有する。同様に、これは、タブまたはオプション上のように利用可能な(すべてのキーを備える)標準キーボードおよびユーザの選好により省略されたキーの一部または全部が別のタブまたはオプションであるキーボードを表していてもよい。この背景において、「削除(remove)」およびその変形である「省略(omit)」、「削除(removal)」、または「削除(removing)」等は、実際の省略(または、実質的な省略)を表す。
[0033] 図示のように、省略によって、数字/特殊文字が置き換えられていてもよく、たとえば、標準QWERTYキーボードの最上行(1から9および0といった数字のほか、それぞれのシフト文字)は、冗長キーの省略により解放された空間に設けられる。たとえば、「7」キー102は、それぞれ左上方、上方、および右上方のラジアルストロークによって利用可能なラジアルエントリ選択肢「\」、「&」、および「/」を有するものとして示している。たとえば、「7」キー102をタップすると、ユーザが「7」のエントリを意図しているものと推論される。ただし、「7」キー102をタッチした後、上方および左移動方向(ユーザ視点から上方かつ左方)の短ストローク(実質的に直線状の相当短いジェスチャ)があれば、ラジアルエントリジェスチャ(すなわち、ラジアルエントリストローク)として、ユーザが「\」のエントリを意図しているものと推論される可能性がある。たとえば、キーごとのこれら付加的な文字は、対応するジェスチャを自然に直感で理解できる(たとえば、「\」入力がユーザ視点から上方かつ左方のジェスチャを伴い、「/」入力がユーザ視点から上方かつ右方のジェスチャを伴う)ように、キー上に位置付けられていてもよい。また、「9」キーおよび「0」キーはそれぞれ、(「9」キー上の)開くストロークが(「0」キー上の)反対のタイプの閉じるストロークまたはジェスチャと直感的につながって、ラジアルエントリ入力が直感的に容易となるように、中括弧、括弧、および角括弧を含む。
[0034] 図1Aに示すように、例示的なキーボード100Aにおいては、1つではなくて最大3つの補助文字(記号およびコマンド等を含む)がキーボードの基本キーに追加されることにより、ラジアルメニュージェスチャまたはストロークとして、キーごとの文字が最大4つとなっていてもよい。このため、たとえば、左上方、上方、および右上方という3つの上方ストロークの使用により、3つの補助文字の選択が識別されるようになっていてもよい。上方の文字(たとえば、アスタリスク「*」)は、通常、標準QWERTYキーボード上の関連する第1の文字(たとえば、文字の場合の小文字)と結合された文字であってもよく、他の2つのストローク選択文字の間に位置決めされて表示される。したがって、上方ストロークの一般的な方向は、選択した文字の位置に対応する(「8」キー106の場合は、左上方ストロークで左側のストロークシフト文字であるプラス「+」を選択し、右上方ストロークで右側のストロークシフト文字であるマイナス「-」を選択する)。他の実施態様においては、キー当たりのジェスチャ数が多く(または、少なく)なること(これにより、キー当たりの文字数および/またはコマンド数が多く(少なく)なる)および/またはキーボード上の任意の場所で開始可能なジェスチャ数が多くなることも考えられる。このため、第2のキーボードに切り替えてこれら別の入力を可能にすることが実質的に抑えられる(または、除去される)。
[0035] たとえば、キーごとの付加的な文字は、視覚的に灰色として(または、他の視覚的支援により、付加的な文字を視覚的に目立たなくして)、タイプするユーザがより容易に可読性を認識できるようにしてもよい。たとえば、視認可能なキーボードでは、黒色(または、類似の暗さ)の背景色に、白色(または、類似の明るさ)の文字がキーに記されていてもよい。これにより、付加的な文字が「基本」キーの文字よりも目立たなく表示キーボード上に現れるようにして、ユーザの視覚的「分離」に役立つようにしてもよい。
[0036] たとえば、追加キー(図示)の補助および第1の記号を採用すると、文字が第2のキーボードから第1のキーボードに移動する。たとえば、通常のQWERTYキーボード上に現れる他の文字についても、右上部および右下部に現れるようになっていてもよい。Space、Enter、Shift、およびBackspaceキーを省略することによって、このキーボードは、たとえば文字数がはるかに少ない他のキーボードのように、同じタッチセンサ式表面積かつ同じキーサイズ(または、キーごとに異なるサイズ)で、はるかに多くの文字を提供可能である。このメカニズムが提供するこれら共通文字への即時アクセスによって、テキストエントリ速度が大幅に向上するとともに、複雑性が抑えられる。
[0037] 図1Aに示すように、キーボード100A上でのユーザ入力のエントリに際しては、選択肢提案リスト104の表示エリアの提供によって、状況に応じた選択肢(たとえば、ワードの選択肢、ジェスチャの選択肢等)の表示が行われるようになっていてもよい。たとえば、提案は、ユーザが入力をエントリする際に提供されるようになっていてもよい。たとえば、ユーザは、リストから選択肢を選択するようにしてもよく、これはさらに、選択可能な「取り消し」オプションを含んでいてもよい。たとえば、エディタにエントリされた受け付けワードは、選択肢提案リスト104において(たとえば、緑色に)色付けされて表示されることにより、他の選択肢提案から視覚的に識別されるようになっていてもよい。図示してはいないが、選択肢提案リスト104は、キーボード100Aの追加または代替として、別個のディスプレイに表示されるようになっていてもよい。たとえば、選択肢提案リスト104は、表示(たとえば、エントリ)テキストに近接して位置決めされた別個のウィンドウに表示されるようになっていてもよい。
[0038] 図1Bは、Space110、Backspace112、Shift114、およびEnter116入力のキーを具備した例示的なQWERTYグラフィカルまたはプリントキーボード100Bを示している。たとえば、数字キーは通常、一般的な従来のキーボード上に設けられていてもよいが、キーボードの別の層に設けられ、キーボード層の切り替えによる数字キーへのアクセスを伴っていてもよい。
[0039] 図2は、例示的なタッププラスジェスチャグラフィカルまたはプリントキーボード100上の例示的なジェスチャを示しており、ユーザの短いジェスチャのいくつかの例を矢印が表している。コンピュータ機器の当業者には当然のことながら、より複雑なジェスチャが検出・使用されるようになっていてもよいが、説明の簡素化のため、単純なストロークの形態のジェスチャを示している。たとえば、短ストロークであれば、ユーザは、一度学習したことを直感的かつ容易に思い出せる。いくつかの実施態様においては、ストロークまたはジェスチャの長さを考慮するようにしてもよい。たとえば、非常に短いストロークは、タップとして処理されるようになっていてもよい。別の例としては、このような推論にタップの力プロファイルが用いられるようになっていてもよい。たとえば、鋭い力開始プロファイルでのタッチは、タップを意図するものとして推論されるようになっていてもよく、より柔らかい開始プロファイルは、(たとえば、1kHz前後の高いサンプリングレートを用いて、この圧力開始曲線を確実に検知することにより)意図的なスワイプ動作を示すものとして推論されるようになっていてもよい。
[0040] たとえば、左方への直線状の短ストローク202は、Backspaceとして処理されるようになっていてもよく、左方への直線状の長ストロークは、Delete Previous Word(前のワードを削除)またはSelect Previous Word(前のワードを選択)コマンドとして処理されるようになっていてもよい。たとえば、右方への直線状の短ストローク204は、Spaceとして処理されるようになっていてもよい。また、いくつかの実施態様においては、ストロークまたはジェスチャの速度、加速度、および/または動的性質を考慮するようにしてもよい。
[0041] 図2においては、タップ(たとえば、接触および離昇)された任意のキーが他のタッチキーボード上のキーと同様に振る舞うようになっていてもよい。このため、タップによって、タップされたキーの文字または機能(表示キー上に表された記号による指定)が推論されるようになっていてもよい。これにより、例示的なキーボード100において、「a」キーがタップされた場合は、小文字の「a」がユーザの意図するキーボード入力として推論される。
[0042] 本明細書に記載のいくつかの例示的な技術によれば、ジェスチャの使用により、動作を開始するようにしてもよく、たとえば、開始後のホールド動作によって、制御状態に入る。たとえば、左方ストローク202の離昇の場合は、Backspaceと認識されるようになっていてもよく、同じストロークで、離昇の代わりにストローク終端点をホールドする場合は、オートリピートBackspaceが開始するようになっていてもよい。たとえば、この点から左方への移動を使用し、オートリピートを高速化することができる。たとえば、右方への移動を使用し、オートリピートを低速にし、潜在的にオートリピートを無効にし、削除された文字を元に戻すことができる。たとえば、オートリピートBackspaceは、特定のキーのみに限られることで(たとえば、ワードが通常、本文に数字を含まないことから、数字キーのみに限られることで)、他のシェイプライティングジェスチャとの実質的な曖昧性を回避するようにしてもよい。たとえば、多くのユーザは、Backspace機能を使用する頻度が高いため、このような制限は、曖昧性除去において大いに役立つ可能性がある。
[0043] 本明細書に記載の例示的な技術によれば、ユーザがキーボード上のほぼ任意の場所をタッチして右方へのストロークを実行した場合は、ジェスチャ204に示すように、Space文字が推論されるようになっていてもよい。本明細書に記載の例示的な技術によれば、左方ストロークがBackspaceを表していてもよい。したがって、たとえば、ユーザは、キーボード上の(ほぼ)任意の場所をタッチして左方へのストロークを実行した場合、Backspaceを示している可能性があり、1つまたは複数の前のエントリ文字が削除されるようになっていてもよい。これをジェスチャ202に示している。たとえば、これらのジェスチャに対して、特定のキーが応答しないようになっていてもよい(たとえば、Ctrlキー等の画面縁部のキーは、それ自体のカスタムメニューを有していてもよい)。たとえば、これらのジェスチャは、通常のワードのタイプ時にユーザが自然にタッチする実質的に任意の場所で用いられるようになっていてもよいが、特定のゾーン(たとえば、縁部近傍または特定の制御物体上)は、他の目的のために確保されていてもよい。
[0044] 本明細書に記載の例示的な技術によれば、図3に示すように、左下方ストローク302によってEnter(または、Return)エントリが与えられるようになっていてもよい。このため、ユーザがキーボード上の任意の場所をタッチして左下方へのストロークを実行した場合は、「Enter」キーが推論されるようになっていてもよい。たとえば、所定の閾値角度によって、ユーザの意図を識別するようにしてもよく、たとえば、左方かつわずかに下方のストロークがBackspaceまたはEnterストロークのいずれにより近いかを識別するようにしてもよい。一実施態様においては、ジェスチャの一部または全部に関して、ジェスチャがキーボードの内側で開始されている限り、ユーザが表示キーボードの外側を解放可能である。図3に示すように、右上方ストローク304は、Escapeエントリを与えるようにしてもよい。このため、ユーザがキーボード上の任意の場所をタッチして右上方へのストロークを実行した場合は、「Escape」キーが推論されるようになっていてもよい。
[0045] コンピュータ機器の当業者であれば、大きな対象であるキーボード上の任意の場所でSpace、Backspace、およびEnterストロークが開始可能であり、それぞれの方向が容易に指定可能であるとともに強力なニーモニック値を有することから、これらは、閉ループの入念なキー押しではなく、開ループの弾道型動作(たとえば、弾道型ジェスチャは、微細な運動制御を要しない)を用いて指定されてもよいことが了解されるであろう。その結果、テキストエントリ速度を大幅に向上させる学習の容易な方法が提供可能であって都合が良い。
[0046] 図4において、直線状の上方ストロークジェスチャ402は、上方ストロークジェスチャが処理されて文字のシフト変換となる様子を示す。これにより、ユーザは、タップの代わりに上方ストロークを実行した場合、その文字のシフト変換が得られる。図4の例において、「p」キーに接触した後、ジェスチャ402で示すように(指またはスタイラスをすぐに持ち上げる代わりに)上方ストローク402を行った場合は、(選択肢リストエリア102に示すように)大文字の「P」が得られる。たとえば、ジェスチャがキーのエリアの内側で開始されている限り、シフト動作の指は、キーの外側で解放されるようになっていてもよい(たとえば、指は、キーのエリア上で解放されてもよい)。図4は、選択肢リストエリア102の大文字「P」を示しているが、エントリ(たとえば、大文字)が選択肢リストエリア102に現れないようにすることも可能である。
[0047] 別の例としては、キーボード上の所定の開始エリアからの全体的な上方ジェスチャの使用により、(対象ジェスチャによって、特定文字のシフト文字を生成するのではなく)キーボード全体のシフト状態を確保するようにしてもよい。たとえば、これは、(他の機能を不用意に呼び出す可能性がある)最下行のキーからのジェスチャをユーザが要する場合、縁部でのジェスチャ検出に役立つ可能性がある。別の例として、1つではなく2つの指での(キーボード上の任意の場所を起点とする)上方ジェスチャは、ShiftではなくCaps Lockとして推論されるようになっていてもよい。さらに、2つの指を用いた下方ジェスチャは、初期状態を復元するものであってもよい。別の例として、2本指のジェスチャの代わりに、別の指をキーボードに接触させた状態の1本指ジェスチャは、類似の1本指ジェスチャと異なる意味を有するものと解釈されるようになっていてもよい。
[0048] 別の例としては、ラジアルメニューおよび/またはラジアルストロークにより、キーボード100上のさまざまなキーに関して、より多くの選択肢が提供されるようになっていてもよい。たとえば、ユーザは、「E」キーをタップしてホールドするとともに、短い方向性ストロークまたはジェスチャにより利用可能な複数の文字を選択可能であってもよい。たとえば、図5Aおよび図5Bに示すように、ラジアルメニュー502および/または504によって、「E」キーの短い方向性ストロークによるオプションを与えるようにしてもよい。たとえば、ラジアルメニュー502または504は、タッチ入力(または、ペン入力もしくは他の入力物体による入力)およびジェスチャそれぞれに対応するキーボード機能により認識できるさまざまなジェスチャのメニューを提供するようにしてもよい。これにより、ユーザは、入力に利用可能なキーボード機能を認識可能であり、ジェスチャによって、ユーザの潜在的な混乱を抑えつつ、さまざまな用途および/またはさまざまなキーでの実行において、異なるキーボード機能に対応可能である。図5Aおよび図5Bに示すように、ラジアルメニュー502または504により、たとえば特定のキーに基づいて、メニューをユーザに提示可能であるが、ラジアルメニュー502または504は、入力の位置とは無関係に提示されるようになっていてもよい。たとえば、ラジアルメニュー502または504は、キーボードとの重畳表示、異なる表示機器への表示、および/またはキーボードを外した同じディスプレイへの表示等が可能である。たとえば、ラジアルメニュー502または504は、キーボード上の関連するキーに近接して(たとえば、キーを囲んで)表示されるようになっていてもよい。たとえば、ラジアルメニューは、ユーザにより理解され、必要に応じて、キーボード入力中は表示されないようになっていてもよい。
[0049] ラジアルメニューの使用に際しては、視覚的支援を示す前のタイミングを含むようにキーボードエンジンが構成されていてもよい。たとえば、キーボードエンジンは、所定の閾値時間が経過するまで、ラジアルメニューの表示を開始しないようにしてもよい。
[0050] また、キーボードエンジンは、(ユーザが依然として異なる動作を選択している可能性があるため)例示的なコマンドの結果の実行前にユーザが「解放」するまで待つように構成されていてもよい。たとえば、ユーザは、文字「e」にタッチして上方へのストロークを行っているものの、これを解放しておらず、異なるものの選択を決定している場合、自身の軌跡を修正して、解放(および、実行)前に別の方向に向かって移動可能である。
[0051] 本明細書に記載の例示的な技術によれば、ストロークショートカットおよびシェイプライティングと一体的または独立的に、ワード予測が例示的なキーボードエンジンに組み込まれていてもよい。たとえば、潜在的に曖昧なシェイプライティングジェスチャの場合は、ストロークショートカットジェスチャが予測の選択肢として提供されていてもよい。たとえば、図6Aおよび図6Bに示すように、右方への水平なストローク602としてワード「to」がエントリされるようになっていてもよいが、ユーザが描くジェスチャの長さによっては、Spaceの例示的なストロークショートカットと潜在的に混乱しやすい。たとえば、ワード予測エンジンが辞書を用いることにより、対象ワードの最も高い確率に従って、1つまたは複数のワード予測を決定するようにしてもよい。たとえば、ワード予測エンジンは、nグラム言語モデルを用いて、シェイプライティングジェスチャの解釈を補助するようにしてもよい。予測修正スペリングとして別個に、または、最高確率のワード予測と組み合わせて、別のスペリング修正が用いられるようになっていてもよい。さらに、ワード予測は、ユーザごとの個別化により、過去の使用および/または選択ワードのユーザプロファイル履歴を用いて、特定の履歴の最高確率ワード予測結果を予測するようにしてもよい。たとえば、辞書の使用により、入力シェイプライティングの意味を解釈するようにしてもよい。これにより、キーボードエンジンが使用する辞書にないワードのエントリのバックアップとして、離散テキストエントリが用いられるようになっていてもよい。
[0052] この例においては、シェイプライティング認識装置が「to」を対象ワードと推理するようにしてもよいが、選択肢提案リスト104における予測選択肢として曖昧性除去エンジンが(その他任意のワード予測選択肢と併せて)「(Space)」を提示することにより、ユーザが容易かつ都合良く、ジェスチャを所望の予測と主張して、ジェスチャの曖昧性を除去できるようにしてもよい。たとえば、ユーザは、リスト104から「to」オプションを選択するようにしてもよい。図6Bに示すように、ジェスチャ602の経路およびタイミングを一時的に示す「彗星痕」を痕跡矢印604が示すようにしてもよい。たとえば、このような「彗星痕」は、キーボードエンジンにより入力として受け付けられるキーボード100上のジェスチャの経路をユーザが視覚化するのに役立つ。
[0053] 別の例として、QWERTYキーボード上でユーザが「w」キーから「e」キーまでストロークを行った場合、このストロークは、「Space」キーのストロークショートカットジェスチャまたはワード「we」のシェイプライティングストロークとして曖昧に解釈される可能性がある。本明細書に記載の例示的な技術によれば、ユーザが曖昧性を解決できるように、「we」および「(Space)」の両者を含む予測選択肢を曖昧性除去エンジンが提供するようにしてもよい。
[0054] 本明細書に記載の例示的な技術によれば、選択肢提案リスト104は、ジェスチャの曖昧性を解決するのに役立つ可能性がある。たとえば、通常のワード代替リストは、代替ワードを提供可能であるが、本明細書に記載の例示的な技術は、ジェスチャを選択肢として明確に提供し得る。
[0055] 図7A〜図7Cに示すように、シェイプライティングは、例示的なキーボード100との併用により、ワード全体を1回のジェスチャでエントリするようにしてもよい。図7Aの例に示すように、ユーザは、「r」キーにタッチし、「e」キーに向かって水平に左方ストロークすることでジェスチャ702を開始するようにしてもよい。この点でタッチが終了した場合は、(たとえば、上述の左方への直線状の短ストローク202で示したように)左方への水平な短いジェスチャまたはストロークがユーザの「Backspace」エントリの意図として(曖昧に)解釈される可能性があることから、選択肢提案リスト104がこの点で「re」および「(Backspace)」を表示することも可能である。図7Bに示すように、ジェスチャ702は、移動し続け、「e」キーに達したら左下方に曲がり、「w」キーのジェスチャ屈曲点を介して、「a」キーに向かう。この点でタッチが終了した場合は、(たとえば、上述の左下方ストローク302のように)短く、左下方への斜め方向の角度付きジェスチャまたはストロークがユーザの「Enter」エントリの意図として(曖昧に)解釈される可能性があることから、選択肢提案リスト104がこの点で「rea」および「(Enter)」を表示することも考えられる。また、この点でタッチが終了した場合、選択肢提案リスト104は、現行のジェスチャに関して、(前の推論から)「rew」、「ra」、「re」、および「(Backspace)」等の他の潜在的な選択肢を表示する可能性もある。たとえば、この点でタッチが終了した場合は、ジェスチャがこの時点で異なる方向に曲がっていることから、「Backspace」が意図されたわけではないと曖昧性除去エンジンが推論することも可能である。
[0056] 図7Cに示すように、ジェスチャ702は、移動し続け、「a」キーに達したら水平方向右方に曲がり、「a」キーのジェスチャ屈曲点を介して、「d」キーに向かう。図7Cに示すように、(たとえば、上述の右方への直線状の短ストローク204で示したように)右方への水平な短い角度付きジェスチャまたはストロークがユーザの「Space」エントリの意図として(曖昧に)解釈される可能性があることから、選択肢提案リスト104は、この点で「read」および「(Space)」を表示するようにしてもよい。また、図示のように、選択肢提案リスト104は、現行のジェスチャに関して、「rad」、「reading」、「reader」、「ready」、および「ras」等の他の潜在的な選択肢を表示するようにしてもよい。たとえば、ここでは、ジェスチャがこの時点で異なる方向に曲がっていることから、「Enter」が意図されたわけではないと曖昧性除去エンジンが推論するようにしてもよい。
[0057] たとえば、曖昧性除去エンジンは、シェイプライティングと関連付けられた辞書中の辞書検索を介して、ユーザの意図を推論するようにしてもよい。たとえば、このような辞書を用いることにより、文字「r」、「e」、「a」、「d」の順にキーを一時的に横切るシェイプライティングジェスチャの可能性の高い対象ワードとして、「read」、「rad」、「reading」、「reader」、および「ready」等のオプションをワード予測エンジンが提供するようにしてもよい。
[0058] たとえば、キーボードのユーザに対するフィードバックとして、入力されたストロークのさまざまな態様を示し得る視覚的指標が提供されるようになっていてもよい。たとえば、ストロークの実行中の「彗星痕」の表示(たとえば、キーボード上の重畳表示)によって、実行時のキーボード上のストロークの開始点および一時的経路を視覚的かつグラフィカルに示すようにしてもよい。たとえば、このようなフィードバックは、ストロークの実行後も表示を継続することにより、別の入力を与える機会(たとえば、表示選択肢の選択、1つもしくは複数の現行表示選択肢の破棄、またはジェスチャ/ストローク入力の「取り消し」)をユーザに提供するようにしてもよい。たとえば、彗星痕は、ストロークの実行中、より新しいキーボード上のタッチ(または、「ヒット」)表示点でより濃く(および、より明るく)見えていてもよく、最近タッチされていなかったキーボード上の表示点(たとえば、完了へと向かうストロークのグラフィカルな一時的履歴を提供)ではより薄く(および、より暗く)見えていてもよい。たとえば、矢印式のストローク痕跡の使用により、(たとえば、実行中のストロークの方向を一時的に示す)ストロークのグラフィカルな一時的履歴を提供するようにしてもよい。たとえば、色も使って、ジェスチャが明確に解釈されたことを示すようにしてもよい(たとえば、ジェスチャが完了したら、彗星痕が緑色に変わることで「了解」を示し、赤色で「了解していないこと」を示す)。このように、ユーザには、例示的な曖昧性除去技術の一部として、ストローク/ジェスチャエントリにおける意図を確認するためのグラフィカル出力が与えられるようになっていてもよい。
[0059] また、図面には明示していないが、色および陰影の使用により(たとえば、シフト文字を中灰色、数字自体をほぼ純白にする)、キーボード入力の現行状態を視覚的に容易に理解できるようにしてもよい。また、他の視覚的指標も同様に使用可能であり、たとえば、キーボードがシェイプライティングモードである場合は、キーがつながったものとして表示されるようになっていてもよい。コンピュータ機器の当業者であれば、任意の種類のグラフィカル技術の使用によって、キーボード入力の現行状態を視覚的に容易に理解できるようにしてもよいことが了解されるであろう。たとえば、ユーザがモードを感じられるように触覚を使用することおよび/またはユーザの指を案内するために触覚を使用することが可能である(たとえば、ラジアルメニューエントリとは対照的に、シェイプライティングエントリにおいて、指または入力物体がキーの境界と交差している場合に触感および/または別の触覚フィードバックを使用可能である)。さらには、触覚と併せて音声指示が用いられるようになっていてもよいし、触覚を用いずに音声指示が用いられるようになっていてもよい。
[0060] 本明細書に記載の例示的な技術によれば、上述のワード(または、他の記号)予測は、予測結果としてラジアルエントリストロークおよび/またはストロークショートカットを明示できる潜在的なシェイプライティング候補および短ストローク(または、ラジアルエントリ)選択肢の両者を含み得る予測選択肢のリストを提供するようにしてもよい。たとえば、このリストには、短ストローク(または、ラジアルエントリ)選択肢(たとえば、選択肢として挙げられたテキスト「(Space)」)を表す明示的なテキスト名および/またはグラフィカルオブジェクトを含んでいてもよい。たとえば、このような選択肢のリストは、予測選択肢のリストからの選択の形態の曖昧性除去入力を提供する機会をユーザに与えるようにしてもよい。本明細書に記載の例示的な技術によれば、予測結果は、ジェスチャがエントリされている場合に、キーボード上(キーボードの最上部)に表示されるようになっていてもよいし、キーボードに関連して表示されるようになっていてもよい。本明細書に記載の例示的な技術によれば、予測結果は、選択可能な「取り消し」選択と併せて(たとえば、グラフィカルで選択可能な「取り消し」記号および/または選択可能なテキストオプションとして)、キーボード上に表示されるようになっていてもよい。
[0061] 本明細書に記載の例示的な技術によれば、ユーザは、ラジアルエントリストロークを介して、選択肢の選択を選択肢提案リスト104に示すようにしてもよい。たとえば、ユーザは、(キー上またはキー外で)真っ直ぐな下方ストロークを与えることにより、キーボードの最上部でワード/ジェスチャ予測結果(存在する場合)を選択するようにしてもよい。これは、予測結果が存在しない場合、非操作として推論されるようになっていてもよい。たとえば、真っ直ぐな下方ストロークによって、リスト中の初期(第1)の選択肢を選択する。たとえば、右方に45°屈曲した真っ直ぐな下方ストロークは、第2の選択肢の選択として推論されるようになっていてもよい。たとえば、右方に90°屈曲した真っ直ぐな下方ストロークは、第3の選択肢の選択として推論されるようになっていてもよい。あるいは、ユーザは、表示されている選択肢提案上でのタップにより、これを選択するようにしてもよい。
[0062] 本明細書に記載の例示的な技術によれば、シェイプライティングによる予測選択の別の例示的な実施態様には、利用可能となってユーザが指または他の入力物体の速度を落とした場合(たとえば、ジェスチャの完了の可能性が最も高いことを意味する)にすぐ、ラジアルメニューを表示することを含む。たとえば、指の速度が低下した場合に、ラジアルメニューが指の位置に直接現れるようになっていてもよい。たとえば、(ワード全体の動作が実際には完了していないために)ここでユーザが再び加速した場合には、ラジアルメニュー中の中間提案がフェードアウトして、ユーザには、指が再び減速した場合の提案を含む別のラジアルメニューの表示が与えられるようになっていてもよい。たとえば、下方選択は、初期の予測結果であってもよい。この例示的なシナリオにおいては、下方への短ストロークによって、初期の予測結果を選択するようにしてもよい。
[0063] 本明細書に記載の例示的な技術によれば、一般的にエントリされるストロークショートカットとの潜在的な混乱を考慮して、特定の低頻度ワードがワード辞書から省略または削除されていてもよい。たとえば、ワード「igg」は、英語の辞書に(無視(ignore)または冷遇(snub)の俗語として)現れるが、現在は滅多に使用されないため、例示的な「Enter」ジェスチャ(たとえば、左下方へのストローク)との考え得る衝突を無視するため、例示的なシェイプライティング辞書から省略されていてもよいが、「i」キーの近傍での開始が指定された場合は、このワードの形状認識を開始可能である。たとえば、ワード辞書は、直線状のラジアルメニューストロークと(低頻度の)シェイプライティングワードとの衝突を生じ得る低頻度用語を除外するようにしてもよい。たとえば、低頻度ワードについても極めて完全な辞書を有することが一般的には望ましいと考えられるが、これらのワードが錯認ストロークジェスチャとなる可能性が実質的に高い(たとえば、90%前後の確率またはそれ以上)ものと判定された場合は、これらを省略するのがより望ましいことがある。
[0064] 本明細書に記載の例示的な技術によれば、キーボード上においては、タッチおよびペン入力の両方が用いられるようになっていてもよい。たとえば、タッチまたはペン様式の選択を使用し、シェイプライティング機能をストロークジェスチャ機能から分離してもよい。例示的な一技術によれば、ストロークジェスチャがタッチのみによって指定され、シェイプライティングジェスチャがペンのみによって指定されるようになっていてもよい。あるいは、ペンおよびタッチ入力が同等に処理されるようになっていてもよい。さらには、マウス入力の使用により、シェイプライティング入力をストロークジェスチャ入力から識別するようにしてもよい。また、コンピュータ機器の当業者には当然のことながら、(他の入力物体による)他の形態の入力も使用可能である。
[0065] 例示的な一技術によれば、指によるシェイプライティングを明示的に許可するため、タッチ限定モードが呼び出されるようになっていてもよい。
[0066] 図8は、ラジアルジェスチャ機能と関連付けられた例示的なラジアルジェスチャヘルプメニュー802を示した図である。たとえば、ユーザは、ラジアルジェスチャメニュー802の表示を開始するように指定された制御入力のエントリによって、ラジアルジェスチャメニュー802にアクセス可能である。たとえば、ラジアルジェスチャメニュー802は、ラジアルジェスチャメニュー802と関連付けられた少なくとも所定の時間閾値にわたって「タッチ・ホールド」エントリをユーザが実行した後、キーボード位置(たとえば、キー位置)からの「スライドアップ」メニューとして表示されるようになっていてもよい。図8に示すように、ユーザが「e」キー上でこのような「タッチ・ホールド」エントリを実行した場合は、押下されたキー(たとえば、図8に示すように「e」キー)上のエリアでユーザが視認し得る「スライドアップ」表示メニューとしてラジアルジェスチャメニュー802が提供されるようになっていてもよいため、ユーザは、指(または、キーボード入力に用いられる他の物体)によるオプションの妨げなく、ラジアルメニューオプションを視認可能である。さらに、たとえば、ラジアルジェスチャメニュー802は、半透明に表示されることにより、その表示下のキーの少なくとも一部を視認可能であってもよい。図8に示すように、ラジアルメニューは、左方ストロークがBackspaceを表し、右方ストロークがSpaceを表し、上方ストロークが大文字を表し、左下方ストロークがEnterを表すのに役立つ可能性がある。したがって、たとえば、ユーザは、キーボード上の任意の場所をタッチしてこれらストロークのうちの1つを実行した場合、ラジアルジェスチャヘルプメニュー802に示すように、それぞれのキーボード入力を示している可能性がある。
[0067] 図9は、キーボード100が取り付けられ、選択肢提案リスト104からユーザが「hello」選択肢を選択した後にワード「hello」をディスプレイ902(タッチディスプレイであってもよいし、非タッチディスプレイであってもよい)上に示す例示的な機器902を示している。図9に示すように、機器には、入出力構成要素904が備えられ、たとえばキーボード100Aから入力を取得するとともに、キーボード100Aに対して出力を与えるようになっていてもよい。図示してはいないが、選択肢提案リスト104は、キーボード100A上の追加または代替として、ディスプレイ902に表示されるようになっていてもよい。
[0068] 本明細書に記載の例示的な技術によれば、さまざまな入力ジェスチャの曖昧性除去の一部として、状態機械が用いられるようになっていてもよい。たとえば、ストロークデータまたはジェスチャデータのエントリを示すキーボード入力データを曖昧性除去エンジンが取得するようにしてもよい。たとえば、所定の閾値の使用により、ストロークデータがラジアルエントリ(たとえば、ストロークショートカット)に対応するかシェイプライティングストロークに対応するかを判定するようにしてもよい。たとえば、入力データ解釈モジュールによって、ストロークの長さのほか、ストロークの開始点および方向を決定するようにしてもよい。たとえば、ユーザが(現時点で)「タップ」モードにある場合は、キーのタッチ後、この最初にタッチしたキーから複数のキーだけ離れた別のキーへと向かう移動の後、エントリモードからシェイプライティングモードへの遷移がシームレスに提供されるようになっていてもよい。
[0069] たとえば、ストロークの圧力プロファイル、結果的な運動プロファイルに基づいてタッチの種類、位置、および性質を推論するための3軸加速度計およびジャイロスコープ運動センサの痕跡、ならびに/または加速度計、ジャイロスコープ、および磁力計センサの測定値のセンサフュージョンに由来するごく一瞬の3次元(3D)配向等の他の基準も可能である。コンピュータ機器の当業者に当然のことながら、このようなセンサ信号に基づいてタッチ入力を精緻化する多くの方法または動作信号およびタッチ信号の組み合わせによりタッチの種類(たとえば、親指対人差し指入力)を推論してタッチ処理を調整もしくは改善する多くの方法が存在する。たとえば、これらの手段により、たとえば入力の曖昧性を除去する機械学習手法に使用できる付加的な特徴として、入力の種類を決定するようにしてもよい。
[0070] たとえば、1つもしくは複数の屈曲点ならびに決定された各屈曲点におけるストロークの方向の変化と関連付けられた角度がストロークに含まれるかを入力データ解釈モジュールが判定するようにしてもよい。たとえば、屈曲点を有するストロークは、このストロークがシェイプライティングストロークとして意図されている旨の推定を引き起こすものであってもよい。この背景において、「屈曲点」は、ストロークがそのエントリ中に実質的な方向の変化を含む点を表す可能性がある。たとえば、屈曲点には、上に凹の円弧を下に凹の円弧から分離する曲線上の点を含んでいてもよく、この逆も可能である。ただし、シェイプライティングにおいては、屈曲点を含まず、移動が1方向のみのワードが存在する(たとえば、「we」、「to」、「all」、「rip」)。主としてシェイプライティング検出の入力と考えられるのは、移動経路における一連の画面点である。たとえば、状態機械は、現在(および、過去)のキーボードエントリモードを状態図中の状態として追跡するのに用いられるようになっていてもよい。たとえば、現在の状態が「シェイプライティング」モードを示している場合は、「シェイプライティング」モードにおいて次のキーボード入力が継続する可能性が高いと考えられる。このため、入力モードの履歴の使用により、後続(すなわち、次回)の入力におけるユーザの意図を推論するようにしてもよい。
[0071] たとえば、モードは、次の入力で変更となってもよいし、キーに対するより大きな圧力の実質的な印加等の明確な入力で変更となってもよく、これは、キーボードエントリモードを変更しようとするユーザの意図としてキーボードエンジンにより解釈されるようになっていてもよい。別の例として、実質的に柔らかいタッチは、シェイプライティングモードの使用を意図しているものと解釈され、実質的に強い圧力のタッチは、シェイプライティングモード以外のジェスチャモードの使用を意図しているものと解釈されるようになっていてもよい。たとえば、(たとえば、感圧式キーボード上での)圧力の決定によって、入力の曖昧性を除去するようにしてもよい。
[0072] たとえば、所定の閾値長さに対して観測長さを比較することにより、長さが長いほど実行されたストロークがシェイプライティングストロークとして意図されている可能性が高いものと判定されるようになっていてもよい。
[0073] たとえば、入力データ解釈モジュールは、ストロークの実行の速度および/または加速度(たとえば、エントリの速度および/または加速度)を決定するようにしてもよい。たとえば、所定の閾値速度および/または加速度に対して観測速度および/または加速度を比較することにより、大きな速度および/または加速度で(たとえば、迅速、高速に)実行されたストロークが、ユーザが高頻度に使用するストロークショートカットまたはシェイプライティングジェスチャを示し得るものと判定されるようになっていてもよい。
[0074] たとえば、キーボード上のタッチに対応する入力をキーボードエンジン入力モジュールが受け付けるようにしてもよい。また、キーボード上の位置、タッチで囲われたキーボード上の表面積等、タッチのさまざまな特性が決定されるようになっていてもよい。たとえば、キーボードエンジンは、最初のタッチをジェスチャの開始入力として解釈するようにしてもよい。たとえば、最初のタッチがジェスチャの最終動作である場合、このタッチは、キーボードの当該位置をユーザが「タップ」しようとする意図として解釈されるようになっていてもよく、入力は、たとえば「タップ」モードにおけるタッチ位置において実質的に位置付けられたキーの対象エントリとして解釈されるようになっていてもよい。
[0075] たとえば、「タップ」もしくは「タイプ」モード、「シェイプライティング」モード、ならびに/または「ラジアルエントリ」入力エントリ等の状態を意図曖昧性除去エンジンが(たとえば、ユーザがキーボード入力をエントリする場合のキーボードエントリモードに対応する状態を追跡する状態機械と協働して)追跡するようにしてもよい。たとえば、現行のエントリ前の最終状態が「タップ」モードまたは「タイプ」モードであった場合、一時的な方向性ジェスチャが受け付けられなければ、次のキーボード入力も「タップ」モードまたは「タイプ」モードにあることが意図される可能性が高く、上記時点では、モードが異なる入力モード(たとえば、「シェイプライティング」モード)に変化する場合があり、これは、異なる状態(たとえば、「シェイプライティング」状態)への移動を決定する状態機械への入力と考え得る。たとえば、最終(現在)の状態が「シェイプライティング」モードの状態であった場合は、次のキーボード入力も「シェイプライティング」モードにあることが意図される可能性が高いと考えられる。たとえば、現在の入力モードは、キーボードエントリを続けるキーボードのユーザに(たとえば、キーボードもしくは機器ディスプレイ上のキーボードモード指標またはキーボードの色変更、キーボード上の1つもしくは複数のキーの異なる外見等の視覚的指標として)示されるようになっていてもよい。
[0076] たとえば、最初のタッチに対して、この最初のタッチ位置と異なるキーボード上の位置へのキーボード上のジェスチャ移動が続く場合、キーボードエンジンは、ジェスチャを入力しようとするユーザの意図としてこのような移動を解釈するようにしてもよい。たとえば、移動が所定の閾値移動長さ(たとえば、20画素)を超えた場合、キーボードエンジンは、シェイプライティングジェスチャを入力しようとするユーザの意図としてこのような移動を解釈するようにしてもよい。たとえば、所定の閾値移動長さは、キーボードのサイズ、ディスプレイのサイズおよび解像度によって決まる値ならびに/またはディスプレイが垂直、傾斜、または水平等のいずれであるかによって決まる値として決定されるようになっていてもよい。たとえば、キーボードの入力モジュールにより受け付けられた入力データは、移動の進行時に格納されていてもよいため、キーボードエンジンは、入力ジェスチャと関連付けられた一時的な移動に伴う一時的状態として入力を解釈するようにしてもよい。
[0077] たとえば、キーボードエンジンは、最初の入力である「指の載置」から、「指の移動」という各段階を通って、「指の離昇」という最終入力までの入力ジェスチャ経路を解析するようにしてもよい。キーボードエンジンは、このような経路を用いてジェスチャを解釈するとともに、ユーザの1つまたは複数の潜在的な意図を決定するようにしてもよい。たとえば、キーボードエンジンは、入力の潜在的な曖昧性除去を決定することにより、ユーザの意図が短ストロークまたはラジアル入力の提供であったかシェイプライティング入力の提供であったかを判定するようにしてもよい。
[0078] たとえば、意図曖昧性除去エンジンは、入力のさまざまな特性を利用して、さまざまなタッチおよび移動を特性化するようにしてもよい。たとえば、特性としては、移動の長さ(たとえば、「ユーザ入力はどれほど移動したか?」、「移動でどれほど多くの画素またはキーを通ったか?」)、移動の経路(たとえば、「ユーザ入力はどんな文字またはキーを通ったか?」、「ユーザ移動は1つまたは複数のどの方向を通ったか?」、「移動はどこを始点としてどこを終点としているか(どの経路をたどったか)?」、「経路の長さはどれほどか?」)、および特定の入力ジェスチャの完了に要した時間(たとえば、より多くの時間を使った場合は、シェイプライティングジェスチャの入力を意図している可能性がある)が挙げられる。さらに、意図曖昧性除去エンジンは、ストロークの動態(たとえば、加速、減速、加速等)を含む特性を利用するようにしてもよい。
[0079] また、特性としては、ジェスチャ入力時の入力速度の加速度、メニューの確認に費やされたユーザの時間履歴、またはさまざまな種類の入力のエントリと関連付けられたユーザ履歴が挙げられる。たとえば、閾値に対する観測値の比較によって、曖昧性除去に役立つ可能性がある。たとえば、ユーザプロファイルの使用により、さまざまな種類のキーボード入力におけるユーザの過去の意図に関する情報を提供するようにしてもよい。さらに、特定の機能の短ストロークジェスチャが特定のキーに限られる可能性がある(たとえば、オートリピートBackspaceは、数字キーにのみ限られる可能性がある)ことから、特性としては、タッチによりジェスチャ入力を開始させたキーの決定が挙げられる。
[0080] たとえば、所定の長さ閾値より小さいものとして移動の長さが決定された場合は、短いジェスチャを与えようとするユーザの意図として特定の移動が解釈されるようになっていてもよく、これは、ラジアル入力またはラジアルメニュー入力として解釈されるようになっていてもよい。別の例として、移動は、キーのラジアルエリアにおいて開始となった場合、ラジアルエリアの外側を通り、所定の閾値時間よりも長い時間にわたって継続した後、ユーザがシェイプライティングモードの使用を意図した(ラジアルエントリ入力でもタップモードでもない)ものとの推論がなされるようになっていてもよい。
[0081] 図10Aおよび図10Bは、例示的な意図曖昧性除去エンジンが使用可能な例示的な状態機械を示している。図10Aに示すように、状態図の使用によって、例示的な状態機械の状態および遷移を示し得る。
[0082] 図10Aに示すように、ユーザは、タッチ開始状態1002においてキーボードへの入力を始めるようにしてもよく、この時点においては、キーの記録(開始キー)1004でキーが記録されるようになっていてもよい。ユーザは、タッチ移動1006において指または他の入力物体を移動させてもよいが、この時点においては、得られた位置が(ジェスチャ経路への位置追加1008で)ジェスチャ経路に追加されるようになっていてもよい、
[0083] 1010においては、開始キーが数字キーであるか、および経路が(たとえば、所定の閾値ジェスチャ経路長よりも)「十分に長い」かが判定される。ともに満たされる場合は、1012において「反復」キーが発せられる。
[0084] 1014においては、経路がキー幅の2倍(2×)よりも長いかが判定される。これが満たされる場合は、1016においてシェイプライティングモードが確保される。
[0085] タッチ移動1006は、タッチ終了1018に達して現行のタッチ動作が終端するまで繰り返される。
[0086] 図10B(図10Aのタッチ終了1018から開始)に示すように、(たとえば、1016におけるシェイプライティングモードの確保による)シェイプライティングモード1020またはタップモード1022で処理が進む。
[0087] タップモード1022において、1024では、経路に一致するラジアルジェスチャが存在するかが判定される。存在する場合は、ラジアルジェスチャのキーが1026で発せられる。経路に一致するラジアルジェスチャが存在しない場合は、タップされたキーが1028で発せられる。この背景において、「発する」は、キーボードエンジンからの情報の出力(たとえば、表示装置への情報の表示、記憶媒体への情報の格納、情報の印刷等)を表す可能性がある。
[0088] システムがシェイプライティングモード1020である場合は、経路が空であるかが1030で判定される。1030において経路が空である場合は、1032にタップモードが確保され、タップされたキーが1028で発せられる。
[0089] 1030において経路が空でない場合は、一致するワードが存在するかが1034で判定される。存在する場合は、一致するワードが1036で発せられる。
[0090] 1034において一致するワードが存在する場合は、経路が直線状で長過ぎないか(たとえば、所定の閾値未満であるか)が1038で判定される。1038において「いいえ」の場合は、一致する「ベスト推測」ワードが存在するかが1040で判定される。1040において、一致する「ベスト推測」ワードが存在する場合は、そのワードが1042で提案される。1040において、一致する「ベスト推測」ワードが存在しない場合は、1044で失敗が推論される。この背景において、「失敗」は、供給された入力からユーザの意図を検出できなかったことを表す。
[0091] 1038において、経路が直線状で長過ぎないと判定された場合は、1046において、経路に一致するラジアルジェスチャが存在するかが判定される。存在する場合は、ラジアルジェスチャのキーが1026で発せられる。1046において、経路に一致するラジアルジェスチャが存在しないと判定された場合は、1044で失敗が推論される。この背景において、「失敗」は、供給された入力からユーザの意図を検出できなかったことを表す。
[0092] 本明細書に記載の例示的な技術によれば、特定のキー上での「タッチ・ホールド」入力によるラジアルメニューの要求によって、タッチされた「基本」文字と異なるさまざまな文字(または、機能)を取得するためにエントリ可能な方向性短ストロークを示すキー回りのグラフィカル表示を与えるようにしてもよい(たとえば、大文字、異なる言語、句読記号等であって、指定方向の短ストロークにより取得可能である)。本明細書に記載の例示的な技術によれば、ラジアルメニューは、最初は選択キーを囲むものとして表示されるが、その後、キーボード上を(たとえば、所定の時間閾値後に)上方にスライドして、ディスプレイがユーザの指(または、他のキーボードエントリ物体)により妨げられないようにしてもよい。グラフィカル表示がキーを囲んでいようと上方にスライドしていようと、指(または、他の入力物体)が解放されたら直ちに、その先がどうなるかをユーザが理解できるように、現在選択されている方向および文字の指標が表示されるようになっていてもよい。本明細書に記載の例示的な技術によれば、ユーザは、ラジアルメニューを要することなくストロークするラジアルメニュージェスチャをエントリするようにしてもよく、(たとえば、曖昧性除去エンジンによる)曖昧性除去技術の使用によって、ユーザのジェスチャの曖昧性を除去することにより、ラジアルジェスチャエントリとシェイプライティングジェスチャとを識別するようにしてもよい。
[0093] 図11は、(本明細書において読みやすさを目的とした)キーボード100への入力をたどる一般化セグメントを表し得るセグメント1104、1108、および1116としてのキーボードエンジン1102の単純化した一般化論理の一例を示しており、キーボードエンジンによる使用により、入力を解釈可能である。たとえば、図11に示すように、「タッチ」という初期入力1106は、キーボード100からの「タッチ」入力の受け付けの結果として決定され、「持ち上げ」移動の入力が続くようになっていてもよい。その後、「持ち上げ」という最終決定1107が推論されるようになっていてもよいが、この時点においては、ユーザがキーボード上の特定のキーを「タップ」することにより、論理セグメント1104に対応する入力としてこれを与える意図があったという解釈が推論されるようになっていてもよい。
[0094] たとえば、「タッチ」という初期入力1110は、キーボード100からの「タッチ」入力の受け付けの結果として決定され、1方向移動の入力が続くようになっていてもよい。その後、「選択肢」の推論1112がエントリされ、これに「持ち上げ」移動の入力が続くようになっていてもよい。たとえば、「選択肢」1112は、最初のキーとそれに続くストロークまたは最初のキーとそれに続く別のキーという連続を含んでいてもよい。その後、「持ち上げ」という最終決定1114が推論されるようになっていてもよいが、この時点においては、上述するとともにセグメント1108に対応する通り、ユーザが「ラジアルエントリ」または「シェイプライティング」エントリを提供する意図があったという解釈が推論されるようになっていてもよい。たとえば、本明細書において詳述する通り、例示的な曖昧性除去技術がその後利用されるようになっていてもよい。
[0095] たとえば、「タッチ」という初期入力1118は、キーボード100からの「タッチ」入力の受け付けの結果として決定され、1方向移動の入力が続くようになっていてもよい。その後、「選択肢」の推論1120がエントリされ、これに「方向変更」移動の入力が続くようになっていてもよい。たとえば、「選択肢」1120は、最初のキーとそれに続くストロークまたは最初のキーとそれに続く別のキーという連続を含んでいてもよい。シェイプライティングにおいては、屈曲点を含まず、移動が1方向のみのいくつかのワードが存在する。主としてシェイプライティング検出の入力と考えられるのは、移動経路における一連の画面点である。任意選択により、「屈曲点」の推論1122がエントリされ、これにさまざまな他の入力が続くようになっていてもよい。たとえば、屈曲点の解析により、入力ジェスチャの移動の方向変更の角度のほか、移動の速度および/もしくは加速度ならびにジェスチャ移動の他の属性を決定するようにしてもよい。最終的には、「持ち上げ」移動の入力が受け付けられるようになっていてもよい。その後、「持ち上げ」という最終決定1124がエントリされるようになっていてもよいが、この時点においては、上述するとともに論路セグメント1116に対応する通り、ユーザが「シェイプライティング」エントリを提供する意図があったという解釈が推論されるようになっていてもよい。
[0096] ただし、移動が1方向のみのラジアルメニューのストロークは存在しない。たとえば、ラジアルメニューにおいて、ユーザは、上方にストロークした後、解放せずに左方への移動を決定して、Shiftの代わりにBackspaceをエントリするようにしてもよい。また、シェイプライティングにおいては、屈曲点を含まず、移動が1方向のみのワードが存在する(たとえば、「we」、「to」、「all」、「rip」)。主としてシェイプライティング検出の入力と考えられるのは、移動経路における一連の画面点である。
[0097] 本明細書に記載の例示的な技術によれば、入力のさまざまな属性によって、シェイプライティングジェスチャがラジアルエントリ入力から識別されるようになっていてもよい。たとえば、ラジアルエントリ入力から識別されるように、シェイプライティングジェスチャの入力にユーザが用いる異なる圧力(たとえば、シェイプライティング用の柔らかいタッチ/ホバリング、ラジアルエントリ入力用のより強いタッチ/ホバリング)を曖昧性除去エンジンが決定するようにしてもよい。たとえば、タッチ圧力検知および/またはディスプレイ上の検知によって、このような異なる圧力を検出することにより、その入力がシェイプライティング入力またはラジアルエントリ入力のいずれを意図したものであるかを判定するようにしてもよい。
[0098] たとえば、ペン検知およびタッチ検知に対応したキーボードの場合は、入力がシェイプライティング入力として意図されることをペン入力が示す一方、入力がストロークジェスチャとして意図されることをタッチ入力が示していてもよい。
[0099] たとえば、マルチタッチ検知に対応したキーボードの場合は、入力に用いられる指の数によって、入力が識別されるようになっていてもよい。たとえば、2本指入力は、入力がシェイプライティング入力として意図されることを示すものと解釈される一方、1本指入力は、入力がストロークジェスチャとして意図されることを示すもの解釈されるようになっていてもよい。
[0100] たとえば、曖昧性除去エンジンは、ユーザの技能レベルにも基づいて、シェイプライティングジェスチャとラジアルエントリ入力とを識別するようにしてもよい(たとえば、経験豊富なユーザは、入力物体または指を右方に移動させた後に下方に移動させて「Enter」ジェスチャを意図することはしないが、初心者は、このような入力に上記意図を持たせる可能性がある)。
[0101] たとえば、曖昧性除去エンジンは、ユーザの好適な言語に基づいて、シェイプライティングジェスチャとラジアルエントリ入力とを識別するようにしてもよい。
[0102] たとえば、曖昧性除去エンジンは、ストロークの動態(たとえば、加速度、速度、曲線等)に基づいて、シェイプライティングジェスチャとラジアルエントリ入力とを識別するようにしてもよい。たとえば、機械学習の使用により、これらの種類の入力特性の曖昧性除去に関して、曖昧性除去エンジンをトレーニングするようにしてもよい。
[0103] たとえば、ユーザの把持を(たとえば、把持センサにより)検知する機器の場合、曖昧性除去エンジンは、ユーザによる機器の把持(たとえば、スレートケースの把持)に基づいて、シェイプライティングジェスチャとラジアルエントリ入力とを識別するようにしてもよい。
[0104] 本明細書に記載の例示的な技術によれば、「彗星痕」等のグラフィカル指標の表示によって、ユーザに対する一時的なジェスチャ経路のグラフィカル指標を提供するようにしてもよい。このため、本明細書に記載の例示的な技術によれば、右方へのフリックがSpaceのエントリ意図を示しており、右方へのより長いストロークがTabのエントリ意図を示していてもよい。あるいは、(たとえば、長いストロークの代わりに)フリックによって、(たとえば、任意のストローク方向の)シェイプライティングモードを開始するようにしてもよい。
[0105] 本明細書に記載の例示的な技術によれば、カーソル制御または挿入点移動モードへの遷移の意図として低速の閉ループ動作が推論される一方、直線状のストロークジェスチャおよび/またはシェイプライティングジェスチャを含み得る入力ジェスチャへの意図として高速の開ループ弾道型動作が推論されるようになっていてもよい。
[0106] 本明細書に記載の例示的な技術によれば、閉ループ微細位置決めモードにおいては、さまざまなカーソル(または、挿入点)配置制御機能が採用されるようになっていてもよく、以下のようなものが挙げられるが、これらに限定されない。
(1)移動距離に基づく絶対(ただし、間接的)配置。
(2)利得係数×移動距離に基づく比例(相対)配置。
(3)固定移動距離閾値までの比例または絶対制御。ただし、その移動閾値後は、異なる制御機能となる。たとえば、タイミングに基づくオートリピートを用いたタップ・ホールドがそのような機能の1つである。たとえば、別の機能としては、感圧式のオートリピートを用いたタップ・ホールドがある。オートリピートは、圧力の関数である。
(4)たとえばWindows XP上のマウスポインタ動作に関して実現された弾道型制御と類似の様態での、指の移動距離および速度に基づく伝達関数を用いた比例制御。
(5)指の移動に基づく比例および絶対制御の混合。たとえば、このような制御の例示的な実施態様に関する記載は、ともに「Manual controlled scrolling」という名称の本願の所有者が所有する米国特許第7,202,857号および米国特許第6,707,449号に見られる。たとえば、この手法の(タッチスクリーンに関する)基礎は、Hinckleyら、「New Applications for the Touchscreen in 2D and 3D Medical Imaging Workstations」、In Proc.1995 SPIE Conference on Medical Imaging:Image Display(SPIE Proceedings),Vol.2431,April 27,1995,pp.561−570に概要が記載されている。
(6)たとえば画面上のキー押下または間接的な圧力もしくはタッチセンサ式キーボード上で感じられるキー押下によりもたらされる物理的な戻り止めに全部または一部がリンクした挿入点離散移動を基礎とする上記のいずれか(たとえば、Microsoft Surfaceのタッチカバー)。
[0107] 米国特許第6,707,449号に記載の通り、キーボード上の移動(または、近接認知式キーボードの場合のキーボード上のジェスチャ)の検出における当該特許に記載のスクロールに関連しては、特定の状況における非常に小さな指(または、他の入力物体)の移動を無視するのが望ましいと考えられる。たとえば、キーボードのタッチセンサ式表面上のユーザの指(または、キーボードに近接するジェスチャ入力物体)による意図せぬわずかな移動は無視するのが望ましいと考えられる。これは、たとえばユーザがタッチセンサ式表面上(または、近接認知式キーボード上)のある場所に指をホールドする場合に指が絶対的に静止するように制御することが不可能な場合に好都合となり得る。また、これにより、センサ測定値のわずかな変動および/またはユーザの指の収縮に起因して表示画面上で文書が「浮遊」したりわずかに動いているように見えたりするのを防止可能である。ユーザの指がキーボードの表面に接触している場合(または、近接認知式キーボードにごく接近している場合)、システムは、ユーザがさまざまな移動閾値の組み合わせを用いて指を意図的に移動させているか否かを推論するようにしてもよい。ユーザが意図的に指を移動させているかに関する決定は、スクロールならびに/またはいくつかの状況における自動スクロールモードの開始および/もしくはユーザのデータに依存した自動スクロールモードの開始を凍結可能なジェスチャ等、複数の他の特性または認識ジェスチャの構成要素として用いられるようになっていてもよい。たとえば、この決定は、環境等の他のパラメータに依存していてもよい(たとえば、システムは、すべてのものが動くバスにユーザが乗っているために閾値が異なる可能性があることを検知してもよいし、スレートが平らなこと、ユーザの膝上から識別されること、または保持されていることなどを検知してもよい)。
[0108] ユーザが初めてキーボードのタッチセンサ式表面にタッチした場合(または、入力物体を近接認知式キーボードに対してごく近接させた場合)は、検出時に、ユーザの指の位置がキーボード上で動いていないものと見なされる可能性がある。この移動していない状態は、初期状態と考えられる。移動している状態または移動していない状態は、フラグとして格納されるようになっていてもよいし、「移動」または「非移動」状態を生じるその他任意の方法で格納されるようになっていてもよい。任意選択による第1のタイムアウト期間において、指の移動が第1の閾値距離(たとえば、最初のタッチ点からの距離)および/または速度(および/または加速度)を超えていないものと判定された場合、指は依然として、キーボード上で動いていないものと見なされ、第1の閾値の継続か判定される。一方、第1のタイムアウト期間において、指の運動が第1の閾値を超えた場合、指は、動いている(「移動」状態)と見なされ、これに応じてフラグが設定されるようになっていてもよい。このフラグは、格納されるようになっていてもよい。第1の閾値は、距離として規定された場合、設定長さ(たとえば、ミリメートルまたはインチ、画素)、設定速度(たとえば、1秒当たりのミリメートル、1秒当たりの画素)、スクロール領域長の設定百分率、またはこれらの任意の組み合わせまたは副組み合わせとして規定されていてもよい。たとえば、第1の閾値は、キーボード入力エリアのスクロール領域長の約1%に設定されていてもよい。システムは、指の総移動が第2の閾値距離および/または速度未満となる第2のタイムアウトが過ぎるまで、指が動いているものと見なし続ける。
[0109] たとえば、第1および第2のタイムアウトは、同じであってもよいし、異なっていてもよい。たとえば、第2のタイムアウトは、第1のタイムアウトの約2倍であってもよい(たとえば、第1のタイムアウトが約200ミリ秒であってもよく、第2のタイムアウトが約400ミリ秒であってもよい)。さらに、第2の閾値は、スクロール機器の長さの約0.5%であってもよい。第2の閾値は、第1の閾値よりも小さいが、第1の閾値と同じであってもよいし、第1の閾値より大きくてもよい。指の移動が第2の閾値未満である場合、指は同様に、動いていない(「非移動」状態)と見なされ、これに応じてフラグが設定されるようになっていてもよい。指の移動が第2の閾値を超えている場合、指は依然として、動いているものと見なされてもよく、別の遅延時間が決定された状態でプロセスが継続する。これらのステップの一部または全部は、順次の実行もしくは並列の実行、単一のステップとしての組み合わせ、ならびに/または別のサブステップへの別途細分化が可能である。以上では、2つの閾値を含んでいるが、コンピュータ機器の当業者であれば、任意数の閾値(たとえば、所望または必要に応じた数の閾値)を使用可能であることが了解されるであろう。
[0110] ユーザがキーボードのタッチセンサ式表面から指を外す(あるいは、本明細書において「離昇」または「解放」と称する)場合、ユーザの指は無意識に、現在の位置に影響を及ぼしたり、現在の位置を妨害したりする可能性がある。この影響は、指の新しい位置のFIFO(先入れ先出し)キューを維持することによって抑えられる。FIFOキューは、システムによって、記憶装置および/またはメモリに格納されるようになっていてもよい。ユーザがキーボードのタッチセンサ式表面との接触を中断した場合、システムは、キューを逆方向に検索して、運動が厳密に(または、略)停止に至ったサンプルを探索するようにしてもよい。このようなサンプルが見つかった場合は、停止点で生じるように現在の位置が調整されるようになっていてもよい。これにより、ユーザの意図が停止と思われる場合は、このユーザの見掛けの意図に従って、位置が調整されることになる。
[0111] 一方、対象となる停止を示すキューにこのようなサンプルが見つからない場合または修正の量(距離)が(長さの距離および/または百分率で測定される)閾値量よりも大きい場合は、位置が調整されなくてもよい。大掛かりな修正を拒絶する理由として、ユーザがキーボードのタッチセンサ式表面から離れる場合は、指を比較的速く動かしている可能性が高いことが挙げられる。これは、珍しい現象ではない。指の妨害または障害は、離昇プロセスにおいて自然に抑えられるものと予想され得るためである。したがって、このような状況において位置を変えないのは、ユーザが素早い動作を意図しているために好都合となる可能性があり、当該動作を行わないのは、ユーザの意図に反する可能性がある。
[0112] 「スクロール」に関連して、米国特許第6,707,449号は、以下のように、指の圧力または接触面積等に基づく自動スクロールの速度決定を論じている。
[0113] ユーザの入力に対するスクロール速度のマッピングに関しては、多くのさまざまな機能が可能である。たとえば、システムは、指の速度、指の圧力/接触面積、ホールド長、タップ数、および/またはタップ頻度等のさまざまな因子に基づいて、固定スクロール速度および/または可変スクロール速度を用いるようにしてもよい。固定スクロール速度の使用の場合、この固定速度は、初期値を有すること、ユーザが選択すること、および/または文書を操作/編集するソフトウェアアプリケーションにより選択することが可能である。可変スクロール速度によれば、ユーザは、文書の走査時にスクロール速度を連続して調整することができる。スクロール速度を連続して調整可能であることから、より制御可能かつ予測可能なスクロールインターフェースが得られる。
[0114] たとえば、可変スクロール速度の使用は、スクロール機器のタッチセンサ式表面に対する指の圧力に基づいていてもよい。指の圧力は、直接的な測定および/または機器のタッチセンサ式表面上で測定される指の接触面積の関数とすることが可能である。このような実施態様においては、現行のスクロール動作に対する指の接触量の正規化および/または指の接触面積の指数変換を実行するアルゴリズムの使用により、低速および高速スクロール間で制御可能な範囲のスクロール速度を提供するようにしてもよい。たとえば、ユーザの指は異なるサイズを有し得るため、システムは、ユーザがディスプレイをタップする際に、タッチする指のサイズを自動的に測定するようにしてもよい。そして、スクロール速度は、2つのステップで計算されるようになっていてもよい。たとえば、機器のタッチセンサ式表面に対する指の圧力の各サンプルに関して、以下の可変Pが最初に計算されるようになっていてもよい。
P=K((p/p)−1) (1)
ここで、Pは接触面積に基づく正規化圧力推定値、Kは利得係数、pは現在の圧力測定値、pは後述の最低速度点として選定される圧力である。
[0115] 次に、式(1)の結果を用いて、現行サンプルの指の圧力に対するスクロール速度を計算するようにしてもよい。
dy/dt=K(e(p+1)−e+1) (2)
ここで、Kは利得係数、dy/dtは結果として計算されるスクロール速度である(tは時間を表す)。このような式を用いることにより、文書のスクロール速度は、指の接触面積および/または圧力の非線形関数である。dy/dtは、ゼロ未満の場合、ゼロに設定されるようになっていてもよい。さらに、dy/dtは、閾値よりも大きい場合、当該閾値に設定されるようになっていてもよい。スクロール速度dy/dtが文書のスクロールに適用される場合、(たとえば)スクロールダウンにはdy/dtの正の値が用いられ、スクロールアップに関してはdt/dtに負の値を乗じるようにしてもよい。
[0116] たとえば、システムは、機器のどの領域がタッチされているかを決定するようにしてもよく、タッチするアクティブ領域に応じて、異なる値の利得係数Kおよび/またはKが反対方向の自動スクロールに用いられるようになっていてもよい。たとえば、自動スクロールアップおよび自動スクロールダウン領域は、異なる利得係数Kおよび/またはKと関連付けられていてもよい。タッチセンサ式表面の特定の形状、スクロール領域を自動スクロール領域から分離し得る任意のベゼル等の仕切りの形状、およびスクロール領域から物理的に分離した領域で自動スクロールが生じるかに応じて、自動スクロールダウン領域と異なるユーザの指と自動スクロールアップ領域との間の接触量が決まるようになっていてもよい。たとえば、スクロールするストリップの通常の使用において、ユーザの指は、スクロールアップでアクティブ領域に接触する場合に、スクロールダウンでアクティブ領域に接触する場合とわずかに異なる角度となることが予想されるため、指を丸める場合よりも指を延ばす場合に、表面接触量が大きくなる可能性がある。したがって、利得係数Kおよび/またはKの値は、この相違を補償するように設定されることで、自動スクロールアップと自動スクロールダウンとを互いに比較した場合に、同様の感覚および応答が得られるようにしてもよい。利得係数Kは、1秒当たりの画素数、1秒当たりのセンチメートル、または1秒当たりのテキスト行数等、スクロール速度の単位である。また、値dy/dtは、Kと同じ単位であってもよい。
[0117] pの最低速度点の適当な値の選定については、p値の決定方法が複数可能であるため、後述する。たとえば、現行のユーザジェスチャ自体の動態の使用により、ユーザがスクロール速度を指定しようとする実時間でpの値を決定するようにしてもよい。たとえば、最低速度点での機器のタッチセンサ式表面に対する指の圧力は、最初の接触後の任意選択による遅延に続いてサンプリングされるようになっていてもよい。この遅延は、およそ200ミリ秒等、ユーザがタッチセンサ式表面と十分な初期接触を確立するのに十分な長さであってもよい。この遅延においては、指の圧力の現在値が継続的に測定され、pの予備推定値として用いられるようになっていてもよいため、ユーザは、最低限の知覚遅延でスクロールを開始することができる。
[0118] 上記の代替または追加として、スクロール速度の最高閾値が与えられていてもよい。また、1つまたは複数の過去の圧力値pに基づき得る将来の予想圧力値pの範囲を表すスライディングウィンドウが用いられるようになっていてもよい。上述のdy/dtの演算の結果、速度が最高閾値よりも大きくなった場合は、現在の圧力値pが最高スクロール速度閾値となるように、圧力値の上方にウィンドウをスライドさせてpの値を再度演算するようにしてもよい。一方、指の圧力がウィンドウの底部を下回った場合は、下方にウィンドウをスライドさせてpの値を再度演算するようにしてもよい。機器が検知可能な圧力値の既知の範囲は、ウィンドウの初期最小および最大圧力の選定の基礎として用いられるようになっていてもよい。このようなスライディングウィンドウ法においては、後述の速度制限および/または圧力最大基準が用いられるようになっていてもよい。たとえば、このようなスライディングウィンドウ技術によれば、システムは、柔らかいタッチまたは小さな指の他のユーザと比較した場合の荒いタッチまたは大きな指のユーザ等のさまざまなユーザについて、自動的に自己校正可能である。
[0119] たとえば、速度制限は、pの最低速度点の選択の改善に利用可能である。上の式においては、速度制限を超えた場合に、制限を満たすべくpの最低速度点が再計算されるように、最高および/または最低移動速度が与えられていてもよい。これには、ユーザのジェスチャおよび通常の読む速度に対して検知圧力を適応させる効果がある。また、多くのタッチセンサ式パッドでは、指の接触面積を実際に検知して指の圧力を決定するため、どれだけの「圧力」を印加可能かには実用上の制限があることが多い。このような通常の最大圧力値を把握することで、pの最低速度点の選定に役立てることができる。たとえば、ユーザが開始時に機器のタッチセンサ式表面を強く押した場合は、文書が直ちに高速でスクロールするようになっていてもよく、この場合、システムは、ユーザが接触面積をこれ以上増やせないことを把握している。
[0120] たとえば、異なる位置における異なる領域とのユーザの指の通常の接触面積は、変動することが予想されるため、圧力最大値または上の式のパラメータは、異なるアクティブ領域に対して異なり得る。言い換えると、異なる方向のスクロール速度は、機器のタッチセンサ式表面に印加される指の圧力の単位ごとに異なり得る。また、機器のタッチセンサ式表面上のタッチエリアに応じたパラメータの調整によって、圧力応答がより一貫して見えるようになる可能性がある。
[0121] コンピュータ機器の当業者には当然のことながら、スクロールに関して上述したような技術は、他の目的のジェスチャ等、他の背景でも適用可能である。
[0122] コンピュータ機器の当業者には当然のことながら、本明細書の記載の主旨から逸脱することなく、その他多くの種類のデータ入力特性を曖昧性除去に利用可能である。
[0123] コンピュータ機器の当業者には当然のことながら、本明細書の記載の主旨から逸脱することなく、本明細書に記載のキーボード入力の曖昧性除去を実現する多くの方法が存在し得る。
II.例示的な動作環境
[0124] 本明細書に記載の特徴は、本明細書の記載の主旨から逸脱することなく、コンピュータ機器の当業者が理解し得る多くのさまざまな方法で実現できる例示的な実施形態として提供される。このような特徴は、例示的な実施形態の特徴としてのみ解釈されるべきであり、上記の発明を実施するための形態にのみ限定されると解釈されるものではない。
[0125] 本明細書において詳述する通り、図12は、キーボードエントリモードの曖昧性除去のための汎用システム1200のブロック図である。図示の汎用システム1200は、本明細書に記載の例示的なシステムに備え得る種々例示的な機能を示すことを意図しているに過ぎず、さまざまなハードウェアおよび/またはソフトウェア構成における実施態様に関して何ら限定的なものではない。
[0126] たとえば、システム1200は、少なくとも1つのプロセッサが実行する命令を格納したコンピュータ可読記憶媒体を備えたキーボードエンジン1206を含む装置を具備していてもよい。図12に示すように、システム1200は、少なくとも1つのプロセッサ1204を含む機器1202を具備していてもよい。
[0127] 機器1202は、シェイプライティング入力およびラジアルエントリ入力を受け付けるキーボード1208を動作可能なキーボードエンジン1206を具備していてもよい。たとえば、図12では機器1202の外部に示しているが、機器1202がキーボード1208を具備(たとえば、収容)していてもよい。キーボードエンジン1206は、シェイプライティング入力およびラジアルエントリ入力を同時に受け付けて、ユーザが(たとえば、切り替えキーまたは機能によって)モードを明確に切り替えることなく、いずれの種類のエントリ(および、タップモード)もシームレスに利用できるようにキーボード1208を動作させるようにしてもよい。たとえば、キーボードエンジン1206は、タップモードまたはシェイプライティングモードにおいて、ラジアルジェスチャ入力に対応していてもよい。
[0128] たとえば、ユーザ入力の容易化のため、グラフィカルまたはプリントキーボード1208が与えられていてもよい。たとえば、キーボード1208は、タッチセンサ式表面(または、ジェスチャセンサ式エリア)全体のすべてまたはほぼすべてを占有していてもよく、このため、図示または本明細書に記載のキーボード描写はいずれも、そのさまざまな構成要素の如何なる物理的縮尺、サイズ、または配向を表すことも意図したものではない。タッチセンサ式エリア(または、ジェスチャセンサ式エリア)は、マルチタッチおよび/またはペンタッチ等、如何なる種類であってもよい。タッチセンサ式エリアは、プリントキーボードまたは近接認知式キーボード(物理的および/または仮想的)の下のタッチセンサ式画面または圧力/容量性センサ等であってもよい。さらに、キーボード1208と併せてマウス入力が用いられるようになっていてもよい。
[0129] コンピュータ機器の当業者であれば、本明細書の記載の主旨から逸脱することなく、多くの形態のキーボードが存在することが了解されるであろう。
[0130] 例示的な一実施形態によれば、キーボードエンジン1206またはその1つもしくは複数の部分は、後述の通り、有形のコンピュータ可読記憶媒体に格納し得る実行可能命令を含んでいてもよい。例示的な一実施形態によれば、コンピュータ可読記憶媒体は、分散機器等、任意数の記憶装置および任意数の記憶媒体種を含んでいてもよい。
[0131] この背景において、「プロセッサ」には、処理システムと関連付けられた命令を処理するように構成された1つまたは複数のプロセッサを含む可能性がある。したがって、プロセッサには、命令を並列および/または分散して処理する1つまたは複数のプロセッサを含んでいてもよい。図12においては、キーボードエンジン1206の外部にデバイスプロセッサ1204を図示しているが、コンピュータ機器の当業者には当然のことながら、デバイスプロセッサ1204は、単一の構成要素としての実装、キーボードエンジン1206の内部もしくは外部に位置付け可能な分散ユニットとしての実装、ならびに/またはその要素のいずれかとしての実装が可能である。
[0132] たとえば、システム120は、1つまたは複数のプロセッサ1204を具備していてもよい。たとえば、システム1200は、1つまたは複数のプロセッサ1204により実行可能な命令であって、本明細書に記載のシステム1200に含まれる種々例示的な構成要素と関連付けられた動作を少なくとも1つのコンピュータ装置(たとえば、コンピュータ機器)に行わせるように構成された、実行可能命令を格納した少なくとも1つの有形のコンピュータ可読記憶媒体を具備していてもよい。たとえば、1つまたは複数のプロセッサ1204は、少なくとも1つのコンピュータ装置(たとえば、コンピュータ機器)に備えられていてもよい。コンピュータ機器の当業者であれば、このような記載の主旨から逸脱することなく、本明細書の記載に従って構成可能なプロセッサおよびコンピュータ装置の多くの構成が存在することが了解されるであろう。
[0133] この背景において、「構成要素」または「エンジン」は、ハードウェアの支援により特定の動作を実行するように構成可能な実行可能命令またはハードウェアを表す可能性がある。このような命令は、命令のコンポーネント群に含まれていてもよいし、2つ以上の群に分散していてもよい。たとえば、第1の構成要素の動作と関連付けられたいくつかの命令は、第2の構成要素(または、より多くの構成要素)の動作と関連付けられた命令群に含まれていてもよい。たとえば、本明細書において、「構成要素」または「エンジン」は、単一のエンティティでの位置付けまたは複数のエンティティにわたる拡散もしくは分散が可能であるとともに、他の構成要素と関連付けられた命令および/またはハードウェアと重複し得る実行可能命令により実装可能な機能を構成した一種の演算エンティティを表す可能性がある。この背景において、「実行可能」命令は、1つまたは複数のハードウェア機器による実行に対して具体的に構成された命令を表し、本質的にはソフトウェアを表さない。
[0134] 例示的な一実施形態によれば、キーボードエンジン1206は、1つまたは複数のユーザ機器との関連で実装されていてもよい。たとえば、キーボードエンジン1206は、以下に詳述する通り、1つまたは複数のサーバと通信するものであってもよい。
[0135] たとえば、エンティティリポジトリ1216が1つまたは複数のデータベースを具備し、データベースインターフェース構成要素1218を介してアクセスされるようになっていてもよい。コンピュータ機器の当業者には当然のことながら、さまざまな種類のデータベース構成(たとえば、関係型データベース、階層型データベース、分散型データベース)および非データベース構成等、本明細書に記載のリポジトリ情報を格納する多くの技術が存在する。
[0136] 例示的な一実施形態によれば、キーボードエンジン1206は、たとえば当該キーボードエンジン1206の中間データを格納可能なメモリ1220を具備していてもよい。この背景において、「メモリ」には、データおよび/または命令を格納するように構成された1つまたは複数のメモリデバイスを含んでいてもよい。さらに、メモリ1220は、複数の分散型記憶装置に拡がっていてもよい。
[0137] 例示的な一実施形態によれば、ユーザ1224とキーボードエンジン1206との間のやり取りをユーザインターフェース構成要素1222が管理するようにしてもよい。ユーザ1224は、ディスプレイ1228および他の入出力機器と関連付け可能な受信機1226と関連付けられていてもよい。たとえば、ディスプレイ1228は、内部機器バス通信または少なくとも1つのネットワーク接続を介して受信機1226と通信するように構成されていてもよい。たとえば、ディスプレイ1228は、受信機1226に直接接続されていてもよい。
[0138] 例示的な一実施形態によれば、ディスプレイ1228は、平面型ディスプレイ、印刷型ディスプレイ、2次元ディスプレイ、3次元ディスプレイ、固定ディスプレイ、移動ディスプレイ、ユーザ(たとえば、ユーザ1224)とのやり取りのための触覚出力、音声出力、およびその他任意の形態の出力等の知覚型ディスプレイとして実装されていてもよい。
[0139] 例示的な一実施形態によれば、キーボードエンジン1206は、キーボードエンジン1206と、少なくとも1つのネットワーク1232を介してキーボードエンジン1206と通信可能な他のエンティティとの間のネットワーク通信を管理可能なネットワーク通信構成要素1230を具備していてもよい。たとえば、ネットワーク1232としては、インターネット、少なくとも1つの無線ネットワーク、または少なくとも1つの有線ネットワークのうちの少なくとも1つが挙げられる。たとえば、ネットワーク1232としては、セルラーネットワーク、無線ネットワーク、またはキーボードエンジン1206に対するデータの送信に対応可能な任意の種類のネットワークが挙げられる。たとえば、ネットワーク通信構成要素1230は、キーボードエンジン1206と受信機1226との間のネットワーク通信を管理するようにしてもよい。たとえば、ネットワーク通信構成要素1230は、ユーザインターフェース構成要素1222と受信機1226との間のネットワーク通信を管理するようにしてもよい。たとえば、機器1202は、自己完結型であって、プロセッサ、ディスプレイ、ストレージ等のすべてが単一のハードウェアエンティティ(たとえば、タブレット、スレート等)に含まれていてもよい。たとえば、機器1202は、自己完結型のタッチスクリーン機器であってもよい。
[0140] キーボードエンジン1206は、キーボード1208の少なくとも1つの入力センサから入力データ1242を取得するキーボード入力モジュール1240を具備していてもよい。
[0141] 意図曖昧性除去エンジン1244は、キーボード1208のユーザのために、シェイプライティング入力およびラジアルエントリ入力の受け付けの同時使用を可能にする。
[0142] たとえば、入力データ解釈モジュール1246が入力データ1242を解析して、シェイプライティング入力結果候補またはラジアルエントリ入力結果候補のうちの1つまたは複数を含む1つまたは複数の処理値候補1248を提供するようにしてもよい。
[0143] たとえば、意図曖昧性除去エンジン1244は、1つまたは複数の処理値候補1248に基づいて、複数の提案値1250を提供するようにしてもよい。
[0144] たとえば、複数の提案値1250がシェイプライティング入力結果候補およびラジアルエントリ入力結果候補を含んでいてもよく、キーボードエンジン1206は、提案値の表示を提供するキーボード出力モジュール1252であり、ラジアルエントリ入力結果候補の表示が、ラジアルエントリ入力結果候補と関連付けられたラジアルエントリ入力の推論を明確に示すグラフィカル指標を提供する、キーボード出力モジュール1252をさらに具備していてもよい。
[0145] たとえば、入力データ解釈モジュール1246は、入力データ1242を解析して、入力データがキーボードのラジアルエリアにおける短ストローク入力を示すキーボード入力を含むかを判定することにより、ラジアルエントリ入力結果候補を決定するようにしてもよい。
[0146] たとえば、低頻度で発生する用語と判定された低頻度用語のエントリを辞書1254が省略するようにしてもよく、入力データ解釈モジュール1246は、入力データを解析することにより、辞書1254を用いて、1つまたは複数の処理値候補1248を提供するようにしてもよい。
[0147] たとえば、シェイプライティングインタプリタ1256が入力データ1242を解析するとともに、入力データ1242を用いて、1つまたは複数のシェイプライティング結果候補1258を提供するようにしてもよい。
[0148] たとえば、ラジアルエントリインタプリタ1260が入力データ1242を解析するとともに、入力データを用いて、1つまたは複数のラジアルエントリ結果候補1262を提供するようにしてもよい。たとえば、ラジアルエントリインタプリタ1260は、ラジアルエントリ結果および/またはネスト化(たとえば、階層型、マルチレベル)ラジアルエントリ結果を提供するようにしてもよい(たとえば、ラジアルメニュー項目のうちの1つまたは複数がサブメニューを有していてもよい)。
[0149] たとえば、キーボードエンジン1206への入力のモードを状態機械1264が追跡するようにしてもよい。
[0150] たとえば、キーボード1208としては、圧力センサ式キーボード、タッチセンサ式キーボード、または近接認知式キーボードが挙げられる。
[0151] たとえば、キーボード1208としては、仮想キーボードが挙げられる。
[0152] たとえば、キーボード1208としては、タッチセンサ式キーを備えた低移動の機械式キーボードまたは純粋にタッチセンサ式のキーボードが挙げられる。
[0153] たとえば、キーボード1208としては、複数のキーが実質的に省略され、短ストローク入力機能で置き換えられたキーボードが挙げられる。
[0154] たとえば、グラフィカルまたはプリントキーボードが感圧式またはタッチセンサ式表面に設けられ、タップ入力およびジェスチャ入力を受け付けるようにしてもよい。たとえば、キーボード1208は、少なくとも1つのキーが省略または実質的に省略された削除または省略キー集合で構成されていてもよく、省略キー集合の各キーは、ジェスチャによりエントリ可能な文字、動作、またはコマンドコードに対応する。
[0155] たとえば、キーボード1208は、半透明であって、キーボード表示下の画面を十分に視認できるようにしたものであってもよい。
[0156] たとえば、キーボード1208は、アルファベットキーを含むが数字キーは含まない別のキーボードに対して、同サイズまたは実質的の同サイズのタッチセンサ式エリアにアルファベットキーおよび数字キーを具備していてもよい。また、キーボードおよび別のキーボードは、同サイズまたは実質的の同サイズのアルファベットキーを有する。キーボード1208は、ジェスチャ入力により冗長となる1つまたは複数のキーを省略して提供されていてもよい。また、キーボード1208は、その右側または左側に配置された通常の数字キーパッド配置の数字キーを具備していてもよい。このような配置は、キーボードが横長の画面配向で表示される場合(縦長配向の可能性は低い)に望ましいと考えられ、都合が良い。たとえば、キーボード1208のサイズは、表示装置のサイズおよび横長/縦長配向に応じて調整可能であってもよい。
[0157] たとえば、キーボード1208のキーとの相互作用に対応するデータが受け付けられるようになっていてもよく、少なくとも1つのキーが複数の文字(文字、数字、特殊文字、および/またはコマンドを含む)を表すようになっていてもよい。データにより、相互作用が第1のジェスチャを表すことが示されている場合は、第1の文字値が推論される。データにより、相互作用が(第1のジェスチャと異なる)第2のジェスチャを表すことが示されている場合は、第2の文字値が推論される。データにより、相互作用がタップを表すことが示されている場合は、キーにより表されるタップ関連の文字値が推論される。
[0158] 本明細書に記載の種々例示的な技術は一般的に、キーボード上の特定のキーをジェスチャが置き換えるタッチセンサ式のグラフィカルまたはプリントキーボードを含んでいてもよい。たとえば、置き換えられたキーは、ジェスチャによって不要(あるいは、冗長)となる可能性がある。たとえば、別途冗長なキーの省略または削除によって、キーボード上の同じタッチセンサ式エリアにより多くのキーを提供すること、同じタッチセンサ式エリアにより大きなキーを提供すること、および/またはキーボードが占有するタッチセンサ式エリアの量を低減することが可能となり得る。
[0159] 一例として、キーボード1208の任意のアルファベットキーをタップすることにより、キーと関連付けられた小文字が出力される一方、同じキーを起点とする上方ストロークによって、出力されている関連文字のシフト値(たとえば、大文字)が出力されることで、Shiftキーを別途タップする必要がなくなる。たとえば、キーボード1208上の任意の場所を起点とする右方へのストロークによって、Spaceが出力されるようになっていてもよい。同様に、キーボード上の任意の場所を起点とする左方へのストロークによってBackspaceが出力される一方、(たとえば、キーボード上の任意の場所を起点とする)左下方への傾斜によってEnterが出力されるようになっていてもよい。たとえば、ストロークジェスチャは、英数字の中心クラスタ上で可能であってもよい。一方、1つまたは複数の周辺キー(たとえば、BackspaceもしくはCtrl等の特定キーまたはカーソル制御のための数字キーパッドもしくはタッチパッドエリア等の特定領域(存在する場合))には、たとえばタッチパッド開始領域からのカーソル制御の場合のようにジェスチャが一切ないことを含めて、異なるストロークジェスチャまたは一部のみ重複するストロークジェスチャが割り当てられていてもよい。これにより、ストロークメニューが空間的に多重化されていてもよい(たとえば、一部のキー、特定のキー集合、またはすべてのキーについて潜在的に異なっていてもよい)。また、キーボード1208の縁部近くのキーに関しては、空間不足で特定方向のジェスチャ(たとえば、右側がベゼルにごく接近して配置されたキーボードの場合の表面の右縁のキーからの右方ストローク)が不可能となり得るため、ユーザは、入力のエントリのため、より多くのジェスチャを中心(または、縁部の遠く)から開始するようにしてもよい。
[0160] さらに、いくつかの例示的な実施態様においては、上述のSpace、Backspace、Shift、およびEnterストロークの追加または代替として、キーボードまたは個別のキーと関連付けられたラジアルメニュー上のシングルまたはマルチタッチストロークジェスチャにより、付加的なキー修飾子(Ctrl、Alt、Windowsキー(Startキー)、Right-Menuキー等)が利用可能であってもよい。
[0161] コンピュータ機器の当業者には当然のことながら、ソフトキーボード上で表されることがある一般的なユーザインターフェースコマンド(たとえば、フォーム入力のPrev/Nextフィールド、Goコマンド、Searchコマンド)等、他の非文字動作(Backspaceに限らず)の入力にも、ジェスチャを利用可能である。さらに、より豊富または多数の一般コマンド(Cut/Copy/Paste等)がジェスチャによりエントリされるようになっていてもよいし、マクロがジェスチャにより呼び出されるようになっていてもよい。本明細書に記載の通り、直感的なジェスチャ(たとえば、Spaceの場合の右ストローク)によって、ジェスチャの学習および記憶が容易となり得るため都合が良い。
[0162] 本明細書に記載の通り、ジェスチャは一般的に、表示キーボードの上下左右(たとえば、東西南北またはN-S-E-W)方向に基づいていてもよい。ただし、方向軸は、特に親指を用いたジェスチャの場合、(反対の鏡像方向に)ある量だけ回転していてもよい。右手の親指で上方ジェスチャを意図しているユーザは、より右上方(たとえば、機器の現在の配向に応じてNE方向)または上方寄りの右上方(たとえば、北北東方向)へのジェスチャとなりがちなためである。同様に、左手の親指は、より左上方(たとえば、NW方向)または上方寄りの左上方(たとえば、北北西方向)へのジェスチャとなりがちである。さらに、機器の配向が補償されるようになっていてもよい。たとえば、ユーザが少し側方に機器を保持している場合、機器上ではその配向に応じて左上方または右上方のジェスチャとなるものの、シフトの実行継続の信号として、上方ジェスチャが用いられるようになっていてもよい。このような配向調整の決定では、1つまたは複数の慣性センサ(たとえば、加速度計、ジャイロスコープ、および/または磁力計を含む)および/または他の種類のセンサ(たとえば、視覚に基づくセンサ等)により決まるタブレットの配向を考慮するようにしてもよい。
[0163] この背景において、「グラフィカルな」キーボードは、たとえばタッチセンサ式表示面または近接認知式表面等の視認可能な「表面」に表示されることでその外見をプログラムにより変更可能なキーボードを表す可能性がある。この背景において、「プリント」キーボードは、たとえばテンプレートとして印刷、エンボス加工、物理的重畳がなされたキーボードもしくは貼付されたキーボードまたは感圧式表面もしくは近接認知式表面の一部等、外見をプログラムにより変更できない(たとえば、スレートまたはタブレットコンピュータ機器のカバーに組み付けられた)圧力センサ式等の表面と関連付けられたキーボードを表す可能性がある。当然のことながら、本明細書に記載のキーボードは一般的に、グラフィカルキーボードもしくはプリントキーボード、混成キーボード(たとえば、1つまたは複数のディスプレイおよび/またはタッチスクリーンが搭載されたプリントキーボード)、ならびに/または仮想キーボードを含んでいてもよい。
[0164] 本明細書に記載の例示的な技術によれば、付加的なジェスチャにより、単一の表示キーで3つまたは4つ(または、それ以上)等の複数の文字を表すことが可能であってもより。この背景において、「文字」は、アルファベット、数字、記号、特殊文字、およびコマンド等、キーによってシステムにエントリ可能な任意の物を表す可能性がある。たとえば、「タップ」入力の場合は、1つのキーで1つの文字の入力が可能であってもよし、大略左上方のジェスチャ、大略真っ直ぐ上方のジェスチャ、および大略右上方のジェスチャ等の3つの識別された上方ジェスチャの場合は、3つの文字の入力が可能であってもよい。
[0165] たとえば、キー回りのラジアルエリアを有効にすることによって、ラジアルエリアに入力できるさまざまなジェスチャに応じて、さまざまな種類の入力を提供するようにしてもよい。一例として、キーを囲む(または、ごく近接する)エリアが幾何学的に配置された部分(たとえば、8つの部分)に分割されることで、これらさまざまな部分に対するジェスチャがさまざまに識別された意味(たとえば、さまざまなキーボード入力の提供)を有するものと理解されるようにしてもよい。さらに、キーを囲むエリアは、非常に大きくてもよい。
[0166] たとえば、ジェスチャが既存の別のジェスチャと同じであってもよく、これら2つの類似/同一ジェスチャがキーボード上の開始位置または表面境界(ベゼル)と交差するジェスチャ等によって識別されていてもよい。
[0167] また、本明細書に記載のジェスチャのうちの1つもしくは複数以外および/または追加の別のジェスチャが用いられるようになっていてもよい。また、ジェスチャは、必ずしもタッチセンサ式表面上ではなく、KJNECT機器、赤外線近接センサ、非接触容量性センサ、またはその他類似の機器等で検知される「エア」ジェスチャであってもよい。たとえば、このような「エア」ジェスチャは、仮想キーボードと併用可能である。また、ユーザがディスプレイをタッチして(たとえば、ラジアルメニューの方向のうちの1つへと)ストロークすることによって始まるが、空中へも進行するジェスチャが存在していてもよく、これは、ディスプレイと接触し続ける同じジェスチャから識別可能である。別の例として、マウス入力が用いられるようになっていてもよい。
[0168] 別の例として、本明細書においては指での入力を論じているが、プラスチックスティック/スタイラスもしくは容量性ペン等の機械的手段、またはバッテリ駆動もしくは誘導結合スタイラスが使用可能ないくつかの選択肢として考えられる。別の例として、他の物体を用いることにより、このような「エア」ジェスチャを与えるようにしてもよい。さらには、入力の精緻化(たとえば、キーに重ね合わされたジェスチャコマンドに対してホバリングフィードバックが受け付けられるようになっていてもよい)ならびに/またはペンもしくは指による相互作用(接触面積、ペンおよびタッチ用の異なるデジタイザの使用、デプスカメラを用いたペンとタッチとの識別、ならびに/またはペンとタッチとを識別可能な他の技術の使用により検出可能)が把握されているかに応じたストロークジェスチャへのさまざまな長さおよび/または精度の制約の適用が可能である。したがって、コンピュータ機器の当業者には当然のことながら、本明細書の記述は、本明細書に記載の如何なる特定の実施形態、態様、概念、構造、機能、または実施例にも制限されない。むしろ、本明細書に記載の実施形態、態様、概念、構造、機能、または実施例はいずれも、何ら限定的なものではなく、本発明は、一般的にコンピュータ、キーボード、およびジェスチャ技術において利益および利点をもたらし得るさまざまな方法で使用可能である。
[0169] コンピュータ機器の当業者には当然のことながら、本明細書の記載の主旨から逸脱することなく、多くのさまざまな技術を用いることによって、キーボードジェスチャ入力の曖昧性を除去するようにしてもよい。
III.フローチャートの説明
[0170] 本明細書に記載の特徴は、本明細書の記載の主旨から逸脱することなく、コンピュータ機器の当業者が理解し得る多くのさまざまな方法で実現できる例示的な実施形態として提供される。このような特徴は、例示的な実施形態の特徴としてのみ解釈されるべきであり、上記の発明を実施するための形態にのみ限定されると解釈されるものではない。
[0171] 図13A〜図13Cは、例示的な実施形態に係る、図12のシステムの例示的な動作を示したフローチャートである。図13Aの例においては、シェイプライティング入力およびラジアルエントリ入力を受け付けるようにキーボードを動作させてもよい(1302)。
[0172] キーボードの少なくとも1つの入力センサから入力データを取得するようにしてもよい(1304)。
[0173] キーボードのユーザのために、シェイプライティング入力およびラジアルエントリ入力の受け付けの同時使用を可能にしてもよい(1306)。
[0174] たとえば、図13Bの例においては、入力データを解析し、入力データを用いて、1つまたは複数のシェイプライティング入力結果候補を提供するようにしてもよい(1308)。
[0175] たとえば、入力データを解析し、入力データを用いて、ラジアルエントリ入力結果候補またはネスト化ラジアルエントリ入力結果のうちの1つまたは複数を提供するようにしてもよい(1310)。
[0176] たとえば、状態機械を介して、入力のモードを追跡するようにしてもよい(1312)。
[0177] たとえば、キーボードが、感圧式キーボードを含んでいてもよい(1314)。
[0178] たとえば、キーボードが、仮想キーボードを含んでいてもよい(1316)。
[0179] たとえば、キーボードが、当該キーボードから省略された従来キーボードのキーに対応する特定のテキストエントリ動作の短ストローク入力機能を含んでいてもよい(1318)。
[0180] たとえば、図13Cの例においては、タッチ・ホールド入力に応答して、ラジアルジェスチャメニューの表示をキー位置からのスライドアップメニューとして開始するようにしてもよい(1320)。
[0181] たとえば、入力データを解析して、シェイプライティング入力結果候補またはラジアルエントリ入力結果候補のうちの1つまたは複数を含む1つまたは複数の処理値候補を提供するようにしてもよい(1322)。
[0182] たとえば、1つまたは複数の処理値候補に基づいて、複数の提案値を提供するようにしてもよい(1324)。
[0183] たとえば、複数の提案値が、シェイプライティング入力結果候補およびラジアルエントリ入力結果候補を含んでいてもよい(1326)。
[0184] たとえば、提案値の表示を提供し、ラジアルエントリ入力結果候補の表示が、ラジアルエントリ入力結果候補と関連付けられたラジアルエントリ入力の推論を明確に示すグラフィカル指標を提供するようにしてもよい(1328)。
[0185] たとえば、入力データを解析して、入力データが、キーボードのラジアルエリアにおいて短ストローク入力を示すキーボード入力ラジアルエントリ結果候補を判定することによって決定するようにしてもよい(1330)。
[0186] たとえば、入力データを解析して、低頻度で発生するとともに直線ラジアルメニューストロークとシェイプライティングワードとの間の相当な衝突確率で発生する用語と判定された低頻度用語のエントリを省略する辞書を用いることにより、1つまたは複数の処理値候補を提供するようにしてもよい(1332)。
[0187] コンピュータ機器の当業者であれば、本明細書の記載の主旨から逸脱することなく、入力キーボードジェスチャの曖昧性を除去する多くの方法が存在し得ることを了解されるであろう。
IV.特定の実施形態の態様
[0188] 本明細書に記載の特徴は、本明細書の記載の主旨から逸脱することなく、コンピュータ機器の当業者が理解し得る多くのさまざまな方法で実現できる例示的な実施形態として提供される。このような特徴は、例示的な実施形態の特徴としてのみ解釈されるべきであり、上記の詳細な説明にのみ限定されると解釈されるものではない。
[0189] たとえば、システムは、少なくとも1つのデバイスプロセッサと、少なくとも1つのデバイスプロセッサのうちの少なくとも1つを介して、シェイプライティング入力およびラジアルエントリ入力を受け付けるキーボードを動作させるキーボードエンジンとを含む装置を具備する。キーボードエンジンは、キーボードの少なくとも1つの入力センサから入力データを取得するキーボード入力モジュールと、キーボードのユーザのために、シェイプライティング入力およびラジアルエントリ入力の受け付けの同時使用を可能にする意図曖昧性除去エンジンとを具備する。
[0190] キーボードエンジンは、入力データを解析するとともに、シェイプライティング入力結果候補またはラジアルエントリ入力結果候補のうちの1つまたは複数を含む1つまたは複数の処理値候補を提供する入力データ解釈モジュールをさらに具備しており、意図曖昧性除去エンジンが、1つまたは複数の処理値候補に基づいて、複数の提案値を提供する。
[0191] 複数の提案値は、シェイプライティング入力結果候補およびラジアルエントリ入力結果候補を含んでいてもよい。
[0192] キーボードエンジンは、提案値の表示を提供するキーボード出力モジュールであり、ラジアルエントリ入力結果候補の表示が、ラジアルエントリ入力結果候補と関連付けられたラジアルエントリ入力の推論を明確に示すグラフィカル指標を提供する、キーボード出力モジュールをさらに具備する。
[0193] 入力データ解釈モジュールは、入力データを解析して、入力データがキーボードのラジアルエリアにおける短ストローク入力を示すキーボード入力を含むかを判定することにより、ラジアルエントリ入力結果候補を決定する。
[0194] この装置は、低頻度で発生するとともに直線ラジアルメニューストロークとシェイプライティングワードとの間の相当な衝突確率で発生する用語と判定された低頻度用語のエントリを省略する辞書であって、入力データ解釈モジュールが、入力データを解析することにより、当該辞書を用いて、1つまたは複数の処理値候補を提供する、辞書をさらに備える。
[0195] キーボードエンジンは、入力データを解析するとともに、入力データを用いて、1つまたは複数のシェイプライティング入力結果候補を提供するシェイプライティングインタプリタをさらに具備する。
[0196] キーボードエンジンは、入力データを解析するとともに、入力データを用いて、ラジアルエントリ入力結果候補またはネスト化ラジアルエントリ入力結果のうちの1つまたは複数を提供するラジアルエントリインタプリタをさらに具備する。
[0197] キーボードエンジンは、当該キーボードエンジンへの入力のモードを追跡する状態機械をさらに具備する。
[0198] キーボードは、圧力センサ式キーボードを含む。
[0199] キーボードは、仮想キーボードを含む。
[0200] キーボードは、当該キーボードから省略された従来キーボードのキーに対応する特定のテキストエントリ動作の短ストローク入力機能を含む。
[0201] シェイプライティング入力およびラジアルエントリ入力を受け付けるキーボードからの入力データが取得される。
[0202] シェイプライティング入力およびラジアルエントリ入力の受け付けの同時使用は、入力データの曖昧性除去によってシェイプライティング入力とラジアルエントリ入力とを識別することにより、デバイスプロセッサを介して、キーボードのユーザに提供される。
[0203] 入力データの解析により、シェイプライティング入力結果候補またはラジアルエントリ入力結果候補のうちの1つまたは複数を含む1つまたは複数の処理値候補を提供する。
[0204] 1つまたは複数の処理値候補に基づいて、複数の提案値が提供される。
[0205] 複数の提案値は、シェイプライティング入力結果候補およびラジアルエントリ入力結果候補を含んでいてもよい。
[0206] 提案値の表示が開始され、ラジアルエントリ入力結果候補の表示が、ラジアルエントリ入力結果候補と関連付けられたラジアルエントリ入力の推論を明確に示すグラフィカル指標を提供する。
[0207] 入力データの解析には、入力データを解析して、入力データがキーボードのラジアルエリアにおける短ストローク入力を示すキーボード入力を含むかを判定することにより、ラジアルエントリ入力結果候補を決定することを含む。
[0208] タッチ・ホールド入力に応答して、ラジアルジェスチャメニューの表示がキー位置からのスライドアップメニューとして開始される。
[0209] コンピュータプログラム製品は、シェイプライティング入力およびラジアルエントリ入力を受け付けるキーボードから入力データを取得することと、入力データの曖昧性除去によってシェイプライティング入力とラジアルエントリ入力とを識別することにより、キーボードのユーザのために、シェイプライティング入力およびラジアルエントリ入力の受け付けの同時使用を提供することと、を少なくとも1つのコンピューティング機器に行わせる実行可能コードを格納したコンピュータ可読記憶媒体を備える。
[0210] 実行可能コードは、入力データを解析して、シェイプライティング入力結果候補またはラジアルエントリ入力結果候補のうちの1つまたは複数を含む1つまたは複数の処理値候補を提供することと、1つまたは複数の処理値候補に基づいて、複数の提案値を提供することと、を少なくとも1つのコンピュータ機器に行わせる。
[0211] 長年にわたって、顧客のプライバシおよび機密性がコンピュータ環境における継続的な検討事項となっている。このため、入力キーボードジェスチャの曖昧性を除去する例示的な技術においては、このような技術と関連付けられた関連するアプリケーションまたはサービスに関する1つまたは複数の購買契約(たとえば、「利用規約」(TOS)契約)によって許可を得たユーザが提供するユーザ入力および/またはデータを使用するようにしてもよい。たとえば、ユーザは、自身の入力/データが送信されて機器に格納されることに同意するようにしてもよいが、送信および/または格納の行い方および維持可能な格納のレベルまたは期間(格納する場合)を各当事者が管理可能であることが(たとえば、ユーザが受け入れた契約により)明示されるようになっていてもよい。さらに、実際のユーザ情報のハッシュ化等によって、ユーザが使用する機器の識別に使用可能な識別子が難読化されていてもよい。任意の関連法域プライバシ法および規制に従って、任意のユーザ入力/データを取得可能であることが了解されるものとする。
[0212] 本明細書の記載のさまざまな技術の実施態様は、デジタル電子回路またはコンピュータハードウェア、ファームウェア、ソフトウェア、もしくはこれらの組み合わせにて実装されていてもよい(たとえば、さまざまな機能を行う命令を実行するように構成された装置)。
[0213] 実施態様は、信号(たとえば、純粋な伝搬信号等の純粋な信号)にて具現化されたコンピュータプログラムとして実装されていてもよい。本明細書において、このような実施態様は、後述の通り、本明細書において制限しない「コンピュータ可読伝達媒体」、「コンピュータ可読記憶媒体」、または「コンピュータ可読記憶装置」により実装と称する。
[0214] あるいは、実施態様は、コンピュータ装置(たとえば、データ処理装置、コンピュータ機器、プログラマブルプロセッサ、専用プロセッサもしくは機器、コンピュータ、または複数のコンピュータ)による実行またはコンピュータ装置の動作の制御を行う機械使用可能または機械可読記憶装置(たとえば、ユニバーサルシリアルバス(USB)記憶装置、テープ、ハードディスクドライブ、コンパクトディスク、デジタルビデオディスク(DVD)等の磁気媒体またはデジタル媒体)に具現化されたコンピュータプログラムによって実装されていてもよい。本明細書において、このような実施態様は、「コンピュータ可読記憶媒体」または「コンピュータ可読記憶装置」による実装と称する可能性があるため、純粋な伝搬信号等の純粋な信号の実施態様とは異なる(したがって、本明細書においては、上述の「コンピュータ可読伝達媒体」として制限することはない)。これにより、本明細書における「コンピュータ可読記憶媒体」または「コンピュータ可読記憶装置」の引用では、本質的に信号を表さない。
[0215] 上述のコンピュータプログラム等のコンピュータプログラムは、コンパイラ型、インタプリタ型の言語、または機械言語等、任意の形態のプログラミング言語にて記述することができ、独立したプログラムまたはモジュール、コンポーネント、サブルーチン、もしくはコンピュータ環境での使用に適した他のユニット等、任意の形態で展開可能である。コンピュータプログラムは、機械使用可能または機械可読記憶装置(たとえば、コンピュータ可読媒体)上で実行可能コード(たとえば、実行可能命令)として具体的に具現化されていてもよい。上述の技術を実装可能なコンピュータプログラムは、1つのサイトまたは通信ネットワークにより相互接続された複数の分散サイトにおいて、1つまたは複数のコンピュータ上で実行されるように展開されていてもよい。
[0216] 方法ステップは、コンピュータプログラムの実行によって入力データに対する動作および出力の生成を行う機能を実行する1つまたは複数のプログラマブルプロセッサにより実行されるようになっていてもよい。1つまたは複数のプログラマブルプロセッサは、命令の並列実行および/または分散構成配置による分散処理が可能である。また、本明細書に記載の例示的な機能は、1つまたは複数のハードウェア論理構成要素により実行されるようになっていてもよく、装置の少なくとも一部が1つまたは複数のハードウェア論理構成要素として実装されていてもよい。たとえば、使用できる例示的な種類のハードウェア論理構成要素としては、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、特定プログラム向け標準製品(ASSP)、システムオンチップシステム(SOC)、コンプレックスプログラマブルロジックデバイス(CPLD)等が挙げられるが、これらに限定されない。
[0217] コンピュータプログラムの実行に適したプロセッサとしては、一例として、汎用マイクロプロセッサおよび専用マイクロプロセッサの両方ならびに/または任意の種類のデジタルコンピュータの1つもしくは複数のプロセッサが挙げられる。一般的に、プロセッサは、リードオンリーメモリ、ランダムアクセスメモリ、または両方から命令およびデータを受け取る。コンピュータの要素としては、命令を実行する少なくとも1つのプロセッサと、命令およびデータを格納する1つまたは複数のメモリデバイスとが挙げられる。一般的に、コンピュータは、データの受信、送信、または両方のため、たとえば磁気ディスク、光磁気ディスク、または光ディスク等、データを格納する1つまたは複数の大容量記憶装置を具備していてもよいし、動作可能に結合されていてもよい。コンピュータプログラム命令およびデータの具現化に適した情報担体としては、一例として、EPROM、EEPROM、およびフラッシュメモリデバイス等の半導体メモリデバイス、内部ハードディスクもしくはリムーバブルディスク等の磁気ディスク、光磁気ディスク、ならびにCD−ROMおよびDVD−ROMディスク等、あらゆる形態の不揮発性メモリが挙げられる。プロセッサおよびメモリは、専用論路回路で補完されていてもよいし、専用論路回路に組み込まれていてもよい。
[0218] ユーザとの相互作用を可能にするため、実施形態は、たとえば陰極線管(CRT)、液晶ディスプレイ(LCD)、発光ダイオード(LED)モニタ、またはプラスマモニタ等、ユーザに情報を表示する表示装置ならびにユーザがコンピュータに入力を与えられるキーボードおよびマウスもしくはトラックボール等のポインティングデバイスを有するコンピュータ上に実装されていてもよい。本明細書に記載の通り、タブレット、タッチスクリーン、スレート等が入力および表示に用いられるようになっていてもよい。同様に、ユーザとの相互作用を可能にする他の種類の機器も使用可能である。たとえば、ユーザに与えられるフィードバックとしては、たとえば視覚的フィードバック、聴覚的フィードバック、および/または触覚的フィードバック等、任意の形態の感知型フィードバックが可能である。たとえば、任意の形態の感知型出力によって出力が与えられるようになっていてもよく、視覚的出力(たとえば、視覚的ジェスチャ、ビデオ出力)、音声出力(たとえば、音声、機器サウンド)、触覚的出力(たとえば、タッチ、機器の移動)、温度、および/または匂い等が挙げられる(ただし、これらに限定されない)。
[0219] さらに、ユーザからの入力は、音響、発話、および/または触覚的入力等、任意の形態で受け付け可能である。本明細書に記載の通り、ペンまたは他の入力物体からの入力が受け付けられるようになっていてもよい。たとえば、任意の形態の感知型入力によって入力がユーザから受け付けられようになっていてもよく、視覚的入力(たとえば、ジェスチャ、ビデオ入力)、音声入力(たとえば、音声、機器サウンド)、触覚的入力(たとえば、タッチ、機器の移動)、温度、および/または匂い等が挙げられる(ただし、これらに限定されない)。
[0220] さらに、ユーザとのインターフェースにナチュラルユーザインターフェース(NUI)が用いられるようになっていてもよい。この背景において、「NUI」は、マウス、キーボード、リモコン等の入力装置によって人工的な制約が与えられることなく、ユーザの機器との「自然」な相互作用を可能にする任意のインターフェース技術を表す可能性がある。
[0221] NUI技術の例としては、音声認識、タッチおよびスタイラス認識、画面上および画面近くでジェスチャ認識、エアジェスチャ、頭部および眼の追跡、音声、視覚、タッチ、ジェスチャ、および人工知能に依拠したものが挙げられる。例示的なNUI技術としては、より自然なインターフェースを提供可能なタッチセンサ式ディスプレイ、音声認識、意図・目的理解、デプスカメラ(たとえば、KINECT、立体カメラシステム、赤外線カメラシステム、RGB(赤色、緑色、青色)カメラシステム、およびこれらの組み合わせ)を用いたモーションジェスチャ検出、加速度計/ジャイロスコープを用いたモーションジェスチャ検出、磁力計、顔認識、3Dディスプレイ、頭部・眼・視線追跡、没入型拡張仮想現実システム、ならびに電界検知電極を用いて脳の活動を検知する技術(たとえば、脳波記録法(EEG)および関連技術)等が挙げられるが、これらに限定されない。
[0222] 実施態様は、たとえばデータサーバ等のバックエンド構成要素、アプリケーションサーバ等のミドルウェア構成要素、ユーザが実施態様と相互作用可能なグラフィカルユーザインターフェースもしくはウェブブラウザを有するクライアントコンピュータ等のフロントエンド構成要素、またはこのようなバックエンド構成要素、ミドルウェア構成要素、もしくはフロントエンド構成要素の任意の組み合わせを含むコンピュータシステムにて実装されていてもよい。構成要素は、たとえば通信ネットワーク等、任意の形態のデジタルデータ通信媒体によって相互接続されていてもよい。通信ネットワークの例としては、ローカルエリアネットワーク(LAN)およびインターネット等のワイドエリアネットワーク(WAN)が挙げられる。
[0223] 以上、構造的特徴および/または方法論的動作に言語固有の表現で主題を説明したが、添付の特許請求の範囲に規定の主題は、必ずしも上記固有の特徴または動作に限定されないことが了解されるものとする。むしろ、上記固有の特徴および動作は、特許請求の範囲を実施する例示的な形態として開示している。本明細書に記載の通り、上記実施態様の特定の特徴を示したが、当業者であれば、多くの改良、置換、変更、および同等物が想到されよう。したがって、上記実施形態の範囲に含まれるこのようなすべての改良および変更を添付の特許請求の範囲が網羅するものと了解されるべきである。

Claims (15)

  1. 少なくとも1つのデバイスプロセッサと、
    前記少なくとも1つのデバイスプロセッサのうちの少なくとも1つを介して、シェイプライティング入力およびラジアルエントリ入力を受け付けるキーボードを制御するキーボードエンジンであって、
    前記キーボードの少なくとも1つの入力センサから入力データを取得するキーボード入力モジュールと、
    前記キーボードのユーザのために、前記シェイプライティング入力および前記ラジアルエントリ入力の受け付けの同時使用を制御する意図曖昧性除去エンジンと、
    を具備した、キーボードエンジンと、
    を備えた、装置。
  2. 前記キーボードエンジンが、前記入力データを解析するとともに、
    シェイプライティング入力結果候補、または
    ラジアルエントリ入力結果候補、
    のうちの1つまたは複数を含む1つまたは複数の処理値候補を提供する入力データ解釈モジュールをさらに具備しており、
    前記意図曖昧性除去エンジンが、前記1つまたは複数の処理値候補に基づいて、複数の提案値を提供する、請求項1に記載の装置。
  3. 前記複数の提案値が、シェイプライティング入力結果候補およびラジアルエントリ入力結果候補を含んでおり、
    前記キーボードエンジンが、前記提案値の表示を提供するキーボード出力モジュールであり、前記ラジアルエントリ入力結果候補の前記表示が、前記ラジアルエントリ入力結果候補と関連付けられたラジアルエントリ入力の推論を明確に示すグラフィカル指標を提供する、キーボード出力モジュールをさらに具備した、請求項2に記載の装置。
  4. 前記入力データ解釈モジュールが、前記入力データを解析して、前記入力データが前記キーボードのラジアルエリアにおける短ストローク入力を示すキーボード入力を含むかを判定することにより、前記ラジアルエントリ入力結果候補を決定する、請求項2に記載の装置。
  5. 低頻度で発生するとともに直線ラジアルメニューストロークとシェイプライティングワードとの間の相当な衝突確率で発生する用語と判定された低頻度用語のエントリを省略する辞書であって、前記入力データ解釈モジュールが、前記入力データを解析することにより、前記辞書を用いて、前記1つまたは複数の処理値候補を提供する、辞書をさらに備えた、請求項2に記載の装置。
  6. 前記キーボードエンジンが、前記入力データを解析するとともに、前記入力データを用いて、1つまたは複数のシェイプライティング入力結果候補を提供するシェイプライティングインタプリタをさらに具備した、請求項1に記載の装置。
  7. 前記キーボードエンジンが、前記入力データを解析するとともに、前記入力データを用いて、
    ラジアルエントリ入力結果候補、または
    ネスト化ラジアルエントリ入力結果、
    のうちの1つまたは複数を提供するラジアルエントリインタプリタをさらに具備した、請求項1に記載の装置。
  8. 前記キーボードエンジンが、前記キーボードエンジンへの入力のモードを追跡する状態機械をさらに具備した、請求項1に記載の装置。
  9. 前記キーボードが、前記キーボードから省略された従来キーボードのキーに対応する特定のテキストエントリ動作の短ストローク入力機能を含む、請求項1に記載の装置。
  10. シェイプライティング入力およびラジアルエントリ入力を受け付けるキーボードから入力データを取得するステップと、
    デバイスプロセッサを介して、前記入力データの曖昧性除去によって前記シェイプライティング入力と前記ラジアルエントリ入力とを識別することにより、前記キーボードのユーザのために、前記シェイプライティング入力および前記ラジアルエントリ入力の受け付けの同時使用を制御するステップと、
    を含む、方法。
  11. 前記入力データを解析して、
    シェイプライティング入力結果候補、または
    ラジアルエントリ入力結果候補、
    のうちの1つまたは複数を含む1つまたは複数の処理値候補を提供するステップと、
    前記1つまたは複数の処理値候補に基づいて、複数の提案値を提供するステップと、
    をさらに含む、請求項10に記載の方法。
  12. 前記複数の提案値が、シェイプライティング入力結果候補およびラジアルエントリ入力結果候補を含んでおり、
    前記提案値の表示を開始するステップであって、前記ラジアルエントリ入力結果候補の前記表示が、前記ラジアルエントリ入力結果候補と関連付けられたラジアルエントリ入力の推論を明確に示すグラフィカル指標を提供する、ステップを含む、請求項11に記載の方法。
  13. 前記入力データを解析するステップが、前記入力データを解析して、前記入力データが前記キーボードのラジアルエリアにおける短ストローク入力を示すキーボード入力を含むかを判定することにより、前記ラジアルエントリ入力結果候補を決定するステップを含む、請求項11に記載の方法。
  14. タッチ・ホールド入力に応答して、ラジアルジェスチャメニューの表示をキー位置からのスライドアップメニューとして開始するステップをさらに含む、請求項10に記載の方法。
  15. シェイプライティング入力およびラジアルエントリ入力を受け付けるキーボードから入力データを取得することと、
    前記入力データの曖昧性除去によって前記シェイプライティング入力と前記ラジアルエントリ入力とを識別することにより、前記キーボードのユーザのために、前記シェイプライティング入力および前記ラジアルエントリ入力の受け付けの同時使用を制御することと、
    を少なくとも1つのコンピュータ機器に行わせる実行可能コードを格納したコンピュータ可読記憶媒体を備えたコンピュータプログラム。
JP2017511271A 2014-09-13 2015-09-09 キーボード入力の曖昧性除去 Active JP6655064B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/485,720 US9940016B2 (en) 2014-09-13 2014-09-13 Disambiguation of keyboard input
US14/485,720 2014-09-13
PCT/US2015/049056 WO2016040405A1 (en) 2014-09-13 2015-09-09 Disambiguation of keyboard input

Publications (3)

Publication Number Publication Date
JP2017531372A true JP2017531372A (ja) 2017-10-19
JP2017531372A5 JP2017531372A5 (ja) 2018-09-27
JP6655064B2 JP6655064B2 (ja) 2020-02-26

Family

ID=54148639

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017511271A Active JP6655064B2 (ja) 2014-09-13 2015-09-09 キーボード入力の曖昧性除去

Country Status (11)

Country Link
US (2) US9940016B2 (ja)
EP (2) EP3191929B1 (ja)
JP (1) JP6655064B2 (ja)
KR (2) KR102415851B1 (ja)
CN (2) CN111708478B (ja)
AU (1) AU2015315248B2 (ja)
BR (1) BR112017003650A2 (ja)
CA (1) CA2959715C (ja)
MX (1) MX2017003316A (ja)
RU (1) RU2707148C2 (ja)
WO (1) WO2016040405A1 (ja)

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8572513B2 (en) 2009-03-16 2013-10-29 Apple Inc. Device, method, and graphical user interface for moving a current position in content at a variable scrubbing rate
US10191654B2 (en) * 2009-03-30 2019-01-29 Touchtype Limited System and method for inputting text into electronic devices
US9424246B2 (en) 2009-03-30 2016-08-23 Touchtype Ltd. System and method for inputting text into electronic devices
GB0905457D0 (en) 2009-03-30 2009-05-13 Touchtype Ltd System and method for inputting text into electronic devices
US10706096B2 (en) 2011-08-18 2020-07-07 Apple Inc. Management of local and remote media items
US9002322B2 (en) 2011-09-29 2015-04-07 Apple Inc. Authentication with secondary approver
JP5844707B2 (ja) * 2012-09-28 2016-01-20 富士フイルム株式会社 画像表示制御装置、画像表示装置、プログラム及び画像表示方法
WO2014143776A2 (en) 2013-03-15 2014-09-18 Bodhi Technology Ventures Llc Providing remote interactions with host device using a wireless device
US9898187B2 (en) 2013-06-09 2018-02-20 Apple Inc. Managing real-time handwriting recognition
JP6328797B2 (ja) 2014-05-30 2018-05-23 アップル インコーポレイテッド 1つのデバイスの使用から別のデバイスの使用への移行
CN105450583B (zh) 2014-07-03 2019-07-05 阿里巴巴集团控股有限公司 一种信息认证的方法及装置
CN105446992A (zh) 2014-07-08 2016-03-30 阿里巴巴集团控股有限公司 建立商品对象回收信息数据库、确定价值信息方法及装置
CN105450411B (zh) 2014-08-14 2019-01-08 阿里巴巴集团控股有限公司 利用卡片特征进行身份验证的方法、装置及系统
CN105447378B (zh) * 2014-08-27 2018-07-13 阿里巴巴集团控股有限公司 一种密码生成方法和装置
CN113824998A (zh) 2014-09-02 2021-12-21 苹果公司 音乐用户界面
US9940016B2 (en) 2014-09-13 2018-04-10 Microsoft Technology Licensing, Llc Disambiguation of keyboard input
US20160077735A1 (en) * 2014-09-17 2016-03-17 Kabushiki Kaisha Toshiba Character input apparatus and character input method
EP3201737B1 (en) * 2014-09-29 2021-10-27 Hewlett-Packard Development Company, L.P. Virtual keyboard
CN105719183A (zh) 2014-12-03 2016-06-29 阿里巴巴集团控股有限公司 定向转账方法及其装置
CN104571585B (zh) * 2014-12-30 2017-07-28 北京奇虎科技有限公司 输入法光标操作方法和装置
CN105869043A (zh) 2015-01-19 2016-08-17 阿里巴巴集团控股有限公司 分散热点的数据库账户转入、转出的记账方法及装置
CN105989467A (zh) 2015-02-03 2016-10-05 阿里巴巴集团控股有限公司 无线支付方法与装置及交通工具乘坐费检验方法与系统
EP3249513B1 (en) * 2015-02-16 2020-10-21 Huawei Technologies Co. Ltd. Keyboard display method and device
US9996258B2 (en) * 2015-03-12 2018-06-12 Google Llc Suggestion selection during continuous gesture input
US10503264B1 (en) * 2015-06-16 2019-12-10 Snap Inc. Radial gesture navigation
US10282090B2 (en) * 2015-09-30 2019-05-07 Apple Inc. Systems and methods for disambiguating intended user input at an onscreen keyboard using dual strike zones
CN106570009B (zh) 2015-10-09 2020-07-28 阿里巴巴集团控股有限公司 导航类目更新方法及装置
US9939921B2 (en) * 2015-12-30 2018-04-10 Synaptics Incorporated Electronic device keyboard spacebar with visual feedback associated with location sensing
US10528186B2 (en) * 2016-03-31 2020-01-07 Rovi Guides, Inc. Systems and methods for controlling playback of a media asset using a touch screen
DK179186B1 (en) 2016-05-19 2018-01-15 Apple Inc REMOTE AUTHORIZATION TO CONTINUE WITH AN ACTION
DK179329B1 (en) 2016-06-12 2018-05-07 Apple Inc Handwriting keyboard for monitors
DK201670622A1 (en) 2016-06-12 2018-02-12 Apple Inc User interfaces for transactions
WO2017221516A1 (ja) * 2016-06-21 2017-12-28 ソニー株式会社 情報処理装置及び情報処理方法
US20180018086A1 (en) * 2016-07-14 2018-01-18 Google Inc. Pressure-based gesture typing for a graphical keyboard
JP6162299B1 (ja) * 2016-07-28 2017-07-12 レノボ・シンガポール・プライベート・リミテッド 情報処理装置、入力切替方法、及びプログラム
US20180090027A1 (en) * 2016-09-23 2018-03-29 Apple Inc. Interactive tutorial support for input options at computing devices
US10739990B1 (en) * 2016-12-18 2020-08-11 Leonid Despotuli Gesture-based mobile device user interface
US11609692B2 (en) * 2017-04-07 2023-03-21 Hewlett-Packard Development Company, L.P. Cursor adjustments
US11431836B2 (en) 2017-05-02 2022-08-30 Apple Inc. Methods and interfaces for initiating media playback
US10992795B2 (en) 2017-05-16 2021-04-27 Apple Inc. Methods and interfaces for home media control
US20200270871A1 (en) 2019-02-27 2020-08-27 Louisiana-Pacific Corporation Fire-resistant manufactured-wood based siding
CN111343060B (zh) 2017-05-16 2022-02-11 苹果公司 用于家庭媒体控制的方法和界面
US20220279063A1 (en) 2017-05-16 2022-09-01 Apple Inc. Methods and interfaces for home media control
US11455094B2 (en) 2017-07-11 2022-09-27 Thumba Inc. Interactive virtual keyboard configured for gesture based word selection and having a plurality of keys arranged approximately radially about at least one center point
US11061556B2 (en) * 2018-01-12 2021-07-13 Microsoft Technology Licensing, Llc Computer device having variable display output based on user input with variable time and/or pressure patterns
CN108734371A (zh) 2018-02-12 2018-11-02 阿里巴巴集团控股有限公司 一种针对风控指令的处理方法、装置及设备
JP7106890B2 (ja) * 2018-03-05 2022-07-27 オムロン株式会社 文字入力装置、文字入力方法、及び、文字入力プログラム
CN108632348B (zh) 2018-03-19 2020-02-18 阿里巴巴集团控股有限公司 一种业务校验方法和装置
DK201970533A1 (en) 2019-05-31 2021-02-15 Apple Inc Methods and user interfaces for sharing audio
KR20240049648A (ko) 2019-05-31 2024-04-16 애플 인크. 오디오 미디어 제어를 위한 사용자 인터페이스
US11010121B2 (en) 2019-05-31 2021-05-18 Apple Inc. User interfaces for audio media control
US10904029B2 (en) 2019-05-31 2021-01-26 Apple Inc. User interfaces for managing controllable external devices
US11194467B2 (en) 2019-06-01 2021-12-07 Apple Inc. Keyboard management user interfaces
US11009969B1 (en) 2019-12-03 2021-05-18 International Business Machines Corporation Interactive data input
CN111552429B (zh) * 2020-04-29 2021-07-23 杭州海康威视数字技术股份有限公司 一种图形选中方法、装置及电子设备
US11079913B1 (en) 2020-05-11 2021-08-03 Apple Inc. User interface for status indicators
US11392291B2 (en) 2020-09-25 2022-07-19 Apple Inc. Methods and interfaces for media control with dynamic feedback
US11797173B2 (en) * 2020-12-28 2023-10-24 Microsoft Technology Licensing, Llc System and method of providing digital ink optimized user interface elements
US11847378B2 (en) 2021-06-06 2023-12-19 Apple Inc. User interfaces for audio routing
KR20230020711A (ko) * 2021-08-04 2023-02-13 한국전자통신연구원 음성인식성능 향상을 위한 영어 문자 입력 장치 및 이를 이용한 방법
US20230324997A1 (en) * 2022-04-11 2023-10-12 Meta Platforms Technologies, Llc Virtual Keyboard Selections Using Multiple Input Modalities

Family Cites Families (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3546337B2 (ja) * 1993-12-21 2004-07-28 ゼロックス コーポレイション 計算システム用ユーザ・インタフェース装置及びグラフィック・キーボード使用方法
US6317128B1 (en) 1996-04-18 2001-11-13 Silicon Graphics, Inc. Graphical user interface with anti-interference outlines for enhanced variably-transparent applications
US5953541A (en) 1997-01-24 1999-09-14 Tegic Communications, Inc. Disambiguating system for disambiguating ambiguous input sequences by displaying objects associated with the generated input sequences in the order of decreasing frequency of use
US6160555A (en) 1997-11-17 2000-12-12 Hewlett Packard Company Method for providing a cue in a computer system
US6424338B1 (en) 1999-09-30 2002-07-23 Gateway, Inc. Speed zone touchpad
EP1184414A3 (en) 2000-08-30 2003-08-06 JSR Corporation Conjugated diene-based rubber and method of producing the same, oil extended rubber and rubber composition containing the same
US20030014239A1 (en) 2001-06-08 2003-01-16 Ichbiah Jean D. Method and system for entering accented and other extended characters
US7202857B2 (en) 2001-08-29 2007-04-10 Microsoft Corporation Manual controlled scrolling
US7075520B2 (en) 2001-12-12 2006-07-11 Zi Technology Corporation Ltd Key press disambiguation using a keypad of multidirectional keys
US20070005685A1 (en) * 2002-09-16 2007-01-04 Wunchun Chau Browser-based payment system
US7453439B1 (en) 2003-01-16 2008-11-18 Forward Input Inc. System and method for continuous stroke word-based text input
US7382358B2 (en) * 2003-01-16 2008-06-03 Forword Input, Inc. System and method for continuous stroke word-based text input
SG135918A1 (en) 2003-03-03 2007-10-29 Xrgomics Pte Ltd Unambiguous text input method for touch screens and reduced keyboard systems
US9047047B2 (en) 2010-10-01 2015-06-02 Z124 Allowing multiple orientations in dual screen view
US7706616B2 (en) * 2004-02-27 2010-04-27 International Business Machines Corporation System and method for recognizing word patterns in a very large vocabulary based on a virtual keyboard layout
US20080010055A1 (en) * 2005-03-08 2008-01-10 Pathiyal Krishna K Handheld Electronic Device and Associated Method Employing a Multiple-Axis Input Device and Providing a Prior Variant List When Employing a Disambiguation Routine and Reinitiating a Text Entry Session on a Word
US7487461B2 (en) * 2005-05-04 2009-02-03 International Business Machines Corporation System and method for issuing commands based on pen motions on a graphical keyboard
US7895518B2 (en) * 2007-04-27 2011-02-22 Shapewriter Inc. System and method for preview and selection of words
US8059101B2 (en) 2007-06-22 2011-11-15 Apple Inc. Swipe gestures for touch screen keyboards
WO2010018579A2 (en) 2008-08-12 2010-02-18 Benjamin Firooz Ghassabian Improved data entry system
US9041660B2 (en) * 2008-12-09 2015-05-26 Microsoft Technology Licensing, Llc Soft keyboard control
GB0905457D0 (en) 2009-03-30 2009-05-13 Touchtype Ltd System and method for inputting text into electronic devices
US20100259482A1 (en) 2009-04-10 2010-10-14 Microsoft Corporation Keyboard gesturing
US20120030607A1 (en) 2009-04-29 2012-02-02 Alexandra Michel Controlling a keyboard
US8549432B2 (en) 2009-05-29 2013-10-01 Apple Inc. Radial menus
US8884872B2 (en) 2009-11-20 2014-11-11 Nuance Communications, Inc. Gesture-based repetition of key activations on a virtual keyboard
CN102081490B (zh) * 2009-11-27 2013-01-30 沈阳格微软件有限责任公司 面向触屏设备的点划式汉字声韵输入系统
EP2513755A2 (en) 2009-12-20 2012-10-24 Keyless Systems Ltd Features of a data entry system
US8381119B2 (en) 2010-01-11 2013-02-19 Ideographix, Inc. Input device for pictographic languages
KR101477530B1 (ko) * 2010-03-12 2014-12-30 뉘앙스 커뮤니케이션즈, 인코포레이티드 이동 전화의 터치 스크린과 함께 사용하기 위한 다중 모드 문자 입력 시스템
US20110242138A1 (en) 2010-03-31 2011-10-06 Tribble Guy L Device, Method, and Graphical User Interface with Concurrent Virtual Keyboards
JP5615583B2 (ja) 2010-04-08 2014-10-29 京セラ株式会社 文字入力装置、文字入力方法および文字入力プログラム
US20110302518A1 (en) 2010-06-07 2011-12-08 Google Inc. Selecting alternate keyboard characters via motion input
CN102117175A (zh) * 2010-09-29 2011-07-06 北京搜狗科技发展有限公司 一种滑行输入中文的方法、装置和触摸屏输入法系统
US20120081297A1 (en) 2010-10-01 2012-04-05 Google Inc. Touch keyboard with phonetic character shortcuts
JP5705499B2 (ja) 2010-10-15 2015-04-22 シャープ株式会社 情報処理装置および情報処理装置の制御方法
EP2641145A4 (en) 2010-11-20 2017-05-03 Nuance Communications, Inc. Systems and methods for using entered text to access and process contextual information
KR20120069484A (ko) 2010-12-20 2012-06-28 삼성전자주식회사 키 입력 방법 및 장치
US20130067420A1 (en) 2011-09-09 2013-03-14 Theresa B. Pittappilly Semantic Zoom Gestures
US8856674B2 (en) 2011-09-28 2014-10-07 Blackberry Limited Electronic device and method for character deletion
US8890808B2 (en) 2012-01-06 2014-11-18 Microsoft Corporation Repositioning gestures for chromeless regions
US9141262B2 (en) 2012-01-06 2015-09-22 Microsoft Technology Licensing, Llc Edge-based hooking gestures for invoking user interfaces
US8902181B2 (en) 2012-02-07 2014-12-02 Microsoft Corporation Multi-touch-movement gestures for tablet computing devices
US20130271385A1 (en) 2012-04-16 2013-10-17 Research In Motion Limited Method of Changing Input States
CN102841752B (zh) * 2012-08-21 2015-10-07 刘炳林 一种人机交互设备的字符输入方法和装置
US20140078063A1 (en) 2012-09-18 2014-03-20 Microsoft Corporation Gesture-initiated keyboard functions
US9304683B2 (en) * 2012-10-10 2016-04-05 Microsoft Technology Licensing, Llc Arced or slanted soft input panels
US20140123049A1 (en) 2012-10-30 2014-05-01 Microsoft Corporation Keyboard with gesture-redundant keys removed
US9940016B2 (en) 2014-09-13 2018-04-10 Microsoft Technology Licensing, Llc Disambiguation of keyboard input

Also Published As

Publication number Publication date
KR102415851B1 (ko) 2022-06-30
KR102345039B1 (ko) 2021-12-29
CN107077288B (zh) 2020-07-07
CN111708478A (zh) 2020-09-25
AU2015315248B2 (en) 2020-07-09
CN107077288A (zh) 2017-08-18
US20160077734A1 (en) 2016-03-17
CN111708478B (zh) 2023-11-07
US9940016B2 (en) 2018-04-10
US10983694B2 (en) 2021-04-20
BR112017003650A2 (pt) 2017-12-05
RU2017107513A3 (ja) 2019-04-25
JP6655064B2 (ja) 2020-02-26
AU2015315248A1 (en) 2017-03-09
RU2017107513A (ru) 2018-09-10
EP3191929A1 (en) 2017-07-19
KR20170054503A (ko) 2017-05-17
MX2017003316A (es) 2017-06-21
CA2959715C (en) 2023-01-17
KR20220005592A (ko) 2022-01-13
CA2959715A1 (en) 2016-03-17
WO2016040405A1 (en) 2016-03-17
EP3191929B1 (en) 2020-04-22
US20180300056A1 (en) 2018-10-18
RU2707148C2 (ru) 2019-11-22
EP3686727A1 (en) 2020-07-29

Similar Documents

Publication Publication Date Title
US10983694B2 (en) Disambiguation of keyboard input
US10908815B2 (en) Systems and methods for distinguishing between a gesture tracing out a word and a wiping motion on a touch-sensitive keyboard
JP5730667B2 (ja) デュアルスクリーン上のユーザジェスチャのための方法及びデュアルスクリーンデバイス
US9740399B2 (en) Text entry using shapewriting on a touch-sensitive input panel
US9201510B2 (en) Method and device having touchscreen keyboard with visual cues
KR101636705B1 (ko) 터치스크린을 구비한 휴대 단말의 문자 입력 방법 및 장치
US20100259482A1 (en) Keyboard gesturing
EP2653955B1 (en) Method and device having touchscreen keyboard with visual cues
JP2011530937A (ja) データ入力システム
JP2006520024A (ja) 接触エリアの移動させられた表現を用いたユーザインタフェース
US9983785B2 (en) Input mode of a device
WO2013071198A2 (en) Finger-mapped character entry systems
KR102090443B1 (ko) 터치 제어 방법, 장치, 프로그램 및 컴퓨터 판독가능 기록매체
US20170185282A1 (en) Gesture recognition method for a touchpad

Legal Events

Date Code Title Description
A529 Written submission of copy of amendment under article 34 pct

Free format text: JAPANESE INTERMEDIATE CODE: A529

Effective date: 20170419

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180814

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180814

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190515

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190607

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190821

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200110

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200131

R150 Certificate of patent or registration of utility model

Ref document number: 6655064

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250