JPH1083245A - コンピュータでジェスチャと手書き文字を区別する方法及びシステム - Google Patents
コンピュータでジェスチャと手書き文字を区別する方法及びシステムInfo
- Publication number
- JPH1083245A JPH1083245A JP14496297A JP14496297A JPH1083245A JP H1083245 A JPH1083245 A JP H1083245A JP 14496297 A JP14496297 A JP 14496297A JP 14496297 A JP14496297 A JP 14496297A JP H1083245 A JPH1083245 A JP H1083245A
- Authority
- JP
- Japan
- Prior art keywords
- gesture
- strokes
- user
- input
- size
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction 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/0488—Interaction 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/04883—Interaction 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 for inputting data by handwriting, e.g. gesture or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/32—Digital ink
- G06V30/333—Preprocessing; Feature extraction
- G06V30/347—Sampling; Contour coding; Stroke extraction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
- Character Discrimination (AREA)
Abstract
手書き文字とジェスチャとを区別する。 【解決手段】 ジェスチャと手書き文字とを区別するた
めに、ペン・サブシステムはユーザの書込みのサイズを
調べる。ユーザは、自分の手書き入力スタイルに応じて
ジェスチャ対テキストのサイズを設定することができ
る。このようにして、ユーザは、ジェスチャをどの程度
大きくするかを正確に把握する。ユーザが設定のカスト
マイズを辞退した場合、ペン・サブシステムは、ユーザ
の手書き文字の近似サイズを示す、他のユーザ設定を問
い合わせることができる。システムが使用可能な第3の
選択肢は、手書き文字のサイズを動的に決定し追跡する
ことである。これにより、複数のユーザは、設定を変更
する必要なしにコンピュータを順次使用できる。
Description
システムに関する。本発明は、ユーザがスタイラスを使
用してテキスト及びジェスチャ・コマンドとして解釈す
べき手書き文字及び記号を入力するような、マルチタス
ク処理ペン・コンピュータ・システムにおいて具体的に
応用されるものである。
スタイラス及びセンサを使用するコンピュータの1種で
ある。ペン・ソフトウェア・サブシステムは、オペレー
ティング・システムに統合するかまたはオペレーティン
グ・システムの付属物にすることができるが、スタイラ
ス入力をマウス入力コマンド、手書き文字(テキス
ト)、またはジェスチャと呼ばれる手書き記号として認
識するために、ペン入力を処理するものである。通常、
ジェスチャは、ウィンドウを開くまたは閉じるなどの機
能を呼び出すために使用する。
グ・システムのペン・サブシステムであるPen for OS/2
は、ユーザがグラフィカル・ユーザ・インタフェース
(GUI)ウィンドウに文字を直接書き込めるようにす
るものであり、その文字はその後、認識のためにジェス
チャ/手書き文字認識エンジンに送られる。ジェスチャ
と手書き文字とを区別するデフォルト方法の1つは、そ
のウィンドウが編集フィールドまたはテキスト入力ウィ
ンドウなど、テキストを受け入れるものではない場合
に、手書き形状をジェスチャとして扱うことにより、シ
ステムが使用するものである。
・サブシステムは、コンピュータ・システムによって実
行されているすべてのアプリケーションへのペン入力を
促進することになり、そのうちのほとんどはスタイラス
入力を「認識しない」。現在、典型的なアプリケーショ
ン・プログラムは、マウス入力とキーボード入力だけを
受け入れるように作成されており、ペン入力によって可
能になる機能豊富なプログラミング・インタフェースを
認識していない。使いやすさを改善し、良好なヒューマ
ン・ファクタを提供するためには、ペン・サブシステム
によってこのようなペン非認識アプリケーションが、ユ
ーザ・インタフェースの観点から、ペンを認識しペンの
機能性を利用するアプリケーションのように見え、感じ
られることは、非常に好ましいことである。
記号としてまたは文字(テキスト)として認識するため
のものである。ペンコンピューティングの出現以来、設
計者はジェスチャとテキストの両方を正確に認識する認
識エンジンの開発に奮闘してきた。数々の改良が実現さ
れてきたが、最新の認識エンジンでも依然としてジェス
チャとテキストを区別する際に問題が発生する。これ
は、一部のジェスチャと英字との形状が似ていることに
よる。実際には、システムが使用するジェスチャが非常
に複雑でユーザフレンドリではないものでない限り、英
字及び数字のストロークや形状の範囲のために、有用な
ジェスチャの多くは既存の英字との類似性をある程度備
えることになる。
ング・システムも、その有用性のために円のジェスチャ
をサポートしている。しかし、ワード・プロセッサのウ
ィンドウ上に円を描く場合、システムは、ユーザが1)
円のジェスチャを描くのか、2)ゼロを書くのか、3)
大文字のOを書くのか、または4)小文字のoを書くの
かを判断しなければならない。これと同じ曖昧さは、
「フリック・ダウン」ジェスチャと呼ばれる単一のダウ
ン・ストロークにも当てはまる。すなわち、フリック・
ダウン・ジェスチャは、英字のlか、英字のIか、また
は数字の1かということになる。これ以外にも例はある
が、ジェスチャとテキストとを区別する際の難しさを実
証するにはこの2つで十分である。
字が書かれたコンテキストを調べることによって解決す
ることができる。事実、適切に作成されたペン・アプリ
ケーションは、所与のウィンドウの入力を数字、英字、
英数字、またはジェスチャのみに制限することによっ
て、それを解決する場合が多い。認識制約と呼ばれるよ
うに、認識エンジンから出力可能な結果を制限すると、
認識の正確さが大幅に上昇する。ペン設計者が使用する
もう1つの一般的な手法は、英字または数字のどの文字
とも似ていないジェスチャ形状のライブラリを構築する
方法である。残念ながら、これは、円、ダウン・フリッ
ク、脱字記号、左下、X、疑問符などの重要なジェスチ
ャを除去してしまう。このようなジェスチャはいずれも
直観的で覚えやすく容易に描けるものなので、これらを
除去してしまうと使いやすさが損なわれる恐れがある。
Pen For OS/2のユーザは、ヘルプ・ウィンドウを起動す
るためにどのウィンドウでも疑問符ジェスチャを書き込
むことができる。問題は、メモを編集するときに発生す
る。すなわち、ヘルプ・ポップアップがなくてもユーザ
がピリオドを疑問符に変更できるかどうかである。Pen
for OS/2では、キーボード入力を受け入れるすべてのウ
ィンドウが、ジェスチャとテキストの両方の認識用とし
て使用可能になっている。ペン・サブシステムはたいて
いアプリケーション環境を認識しないので、コンテキス
トによってジェスチャとテキストを区別することは非常
に難しい。ペン認識アプリケーションでテキストを受け
入れないウィンドウではこのような問題は発生しない。
というのは、このようなウィンドウはジェスチャ専用認
識に制限されているからである。
「タップ」を付けることにより英字ジェスチャを描くよ
うな26通りの英字ジェスチャをPen For OS/2がサポー
トしていることも銘記するに値する。このタップは、英
字ジェスチャと通常の英字とを区別する特徴である。し
かし、場合によっては、このタップが曖昧さを持ち込む
こともある。すなわち、それが大文字/小文字とピリオ
ドであるかどうか、ということになる。
の問題の1つは、正確に同じ文字であると思われるもの
を書いた後でユーザが別の結果を得ることもあるという
点である。このようにユーザが認識結果を予測または制
御できないことによって、フラストレーションのレベル
は高くなり、生産性は低下する。残念ながら、より小さ
いサブセットの文字と記号に厳重に認識を制限するよう
な先行技術の技法は、所与の状況、すなわち、ペン認識
アプリケーションになるように適切に設計された場合の
み有効である。ペン認識ではない、一般に使用される汎
用アプリケーションでは、先行技術がジェスチャと手書
き文字とを予測的に区別できないことはユーザの妨げに
なっている。
入力を区別するための先行技術の改良策である。
一目的は、ユーザの手書き文字の平均サイズを使用して
手書き文字とジェスチャとを区別することにある。
コンピュータが多くのユーザによって活発に共用されて
いる場合に検出されるような手書き文字の変化を迅速に
調整することにある。
ユーザの作業を妨げず、オペレーティング・システムま
たはアプリケーションの応答性に関して認識できるほど
のパフォーマンスの劣化を発生しないように、サイズを
決定することにある。
とを区別するために、ペン・サブシステムはユーザの書
込みのサイズを調べる。
力スタイルに応じてジェスチャ対テキストのサイズ、ジ
ェスチャしきい値を設定することができる。このように
して、ユーザは、ジェスチャをどの程度大きくするかを
正確に把握する。ユーザが設定のカストマイズを辞退し
た場合、ペン・サブシステムは、ユーザの手書き文字の
近似サイズを示す、他のユーザ設定を問い合わせること
ができる。システムが使用可能な第3の選択肢は、手書
き文字のサイズを動的に決定し追跡することである。こ
れにより、複数のユーザは、設定を変更する必要なしに
コンピュータを順次使用できるはずである。認識結果が
本当に曖昧である場合、システムは、ユーザの通常の手
書き入力スタイルより大きく描かれていない限り、その
手書き文字をテキストとして扱う。認識プロセスに対す
る制御権が強化されると、ユーザは、よりリラックスし
て自然にスタイラスを使用しながら、自由に手元の作業
に集中することができる。
的は、添付図面ならびに以下の説明を参照することによ
り、より適切に理解されるだろう。
ブシステムを備えた各種のオペレーティング・システム
下の様々なコンピュータまたはコンピュータの集合で実
行することができる。このコンピュータは、たとえば、
パーソナル・コンピュータ、ミニ・コンピュータ、メイ
ンフレーム・コンピュータ、またはその他のコンピュー
タからなる分散ネットワークで動作するコンピュータな
どにすることができる。具体的なコンピュータの選択は
必要なディスク及びディスク記憶容量によってのみ制限
されるが、IBMのPCシリーズのコンピュータは本発
明で使用できる可能性が高い。IBMのPCシリーズの
コンピュータのさらに詳細については、IBM PC 300/700
Series Hardware Maintenance(資料番号No. S83G-778
9-03)及びUser'sHandbook IBM PC Series 300 and 700
(資料番号No. S83G-9822-00)を参照されたい。IBM
では、ペン入力用に自由スタイラスを備えたThinkPad 7
50Pを売り出している。また、IBMのパーソナル・コ
ンピュータが動作可能なオペレーティング・システムの
1つは、IBMのOS/2 Warp 3.0である。IBMのオペ
レーティング・システムOS/2 Warp 3.0の詳細について
は、OS/2 Warp V3 Technical Library(資料番号No. GB
OF-7116-00)を参照されたい。前述のように、OS/2
は、ペン・サブシステムとしてPen for OS/2 Warp、バ
ージョン1.03、部品番号No. 25H7380を提供してい
るが、これはIBMから取り寄せることができる。
と、本発明を実施することができるパーソナル・コンピ
ュータ・システムのハードウェア・ブロック図の全体が
参照番号10によって示されている。システム10は、
中央演算処理装置(CPU)15とランダム・アクセス
・メモリ13とを含むプロセッサ11を含む。システム
10は、ハード・ディスク記憶装置17とフロッピー・
ディスク装置19という形式の追加メモリも含むことが
好ましい。フロッピー・ディスク装置19は、本発明の
ソフトウェア実施態様を含む、プログラム用のソフトウ
ェアを記録可能なディスケット21を受け入れられるよ
うになっている。また、システム10は、ディスプレイ
23、キーボード25、マウス27、ペンまたはスタイ
ラス29を含む、ユーザ・インタフェース・ハードウェ
ア装置も含む。システム10はプリンタ31を含むこと
が好ましい。
は指の位置の実際の検出は、本発明の範囲に含まれな
い。本発明を実施するために使用可能なスタイラスの位
置を感知するために圧力、赤外線または可視光、音、電
磁力または静電力を使用する、当技術分野で既知のタッ
チ検知装置はいくつかある。さらに、スタイラス及びス
タイラス感知装置の動作に関する情報については、本出
願人に譲渡され、参照により本明細書に組み込まれる、
アラン・タネンバウム(Alan Tannenbaum)他による「G
raphical User Interface with Gesture Recognition i
n a Multi-Application Environment」という名称の米
国特許第5252951号を参照されたい。また、スタ
イラスの動きの感知に関する情報については、本出願人
に譲渡され、参照により本明細書に組み込まれる、ジョ
ン・エム・ゼッツ(John M. Zetts)による「Recognizi
ng the Cessation of Motion of a Pointing Device on
aDisplay By Comparing a Group of Signals to an An
chor Point」という名称の米国特許第5404458号
を参照されたい。
のように一般的に構成されたコンピュータ・システムの
ランダム・アクセス・メモリ内に常駐する複数組の命令
セットである。コンピュータ・システムが要求するま
で、この命令セットは、別のコンピュータ・メモリ、た
とえば、ハード・ディスク・ドライブや、最終的にCD
−ROM内で使用するための光ディスクなどの取外し可
能メモリ、または最終的にフロッピー・ディスク・ドラ
イブ内で使用するためのフロッピー・ディスクに格納す
ることができる。当業者であれば、複数組の命令セット
の物理的な格納によって、その上に電気的、磁気的、ま
たは化学的にそれが格納される媒体がコンピュータで読
取り可能な情報を伝達するようにその媒体が物理的に変
化することに留意されたい。命令、記号、文字などに関
して本発明を記述する方が便利であるが、これらの用語
及び同様の用語はいずれも適切な物理要素に関連するは
ずであることに留意されたい。さらに、本発明は、区別
または判定、あるいはオペレータに関連する可能性のあ
るその他の用語に関して記述される場合が多い。本発明
の一部を形成するような本明細書に記載する動作では、
オペレータによるアクションはいずれも望ましいもので
はない。動作とは、電気信号を処理して他の電気信号を
生成するようなマシン動作のことである。
のペンベース・システムの主要ソフトウェア・システム
構成要素の高レベル図が示されている。図2の下部で
は、ペン29、マウス27、キーボード25からの出力
信号がデバイス・ドライバ33に接続されているが、こ
のデバイス・ドライバはそれぞれの装置に低レベルの入
出力サポートを提供するモジュールである。デバイス・
ドライバ33は事象をシステム待ち行列35に入れる。
システム待ち行列35内の事象は、その後、プレゼンテ
ーション・マネージャ37によって処理され、プレゼン
テーション・マネージャ37は次にペン事象及びマウス
事象を処理のためにペン拡張部39に経路指定する。
ータ・システムでは、ペン認識アプリケーション41と
ペン非認識アプリケーション43の両方が動作する。ペ
ン認識アプリケーションは、ペン入力を認識して処理す
るための固有の能力を備えている。すなわち、その開発
者は、ペン入力をサポートするようにアプリケーション
を設計している。ペン非認識アプリケーションは、ペン
入力を認識するための固有の能力を備えていないもので
あり、通常、キーボードまたはマウスあるいはその両方
の入力を認識して処理するだけである。したがって、オ
ペレーティング・システムのペン拡張部39は、ペン事
象をペン認識アプリケーション41に直接経路指定す
る。しかし、ペン非認識アプリケーション43はペン入
力を理解することができないので、システムは互換モジ
ュール45を含む。
ケーションのためにペン機能を提供するものである。た
とえば、ユーザがペン非認識アプリケーションに手書き
文字事象を入力した場合、ペン拡張部39はこの事象を
互換モジュール45に経路指定し、次に互換モジュール
45がすべてのペン・ストロークをジェスチャ手書き文
字認識エンジン47に経路指定する。ジェスチャ手書き
文字認識エンジン47は、ペン・ストローク事象を処理
し、認識結果を互換モジュール45に返す。
ジュール45はそれを認識事象送達サブシステム49に
経路指定し、そのサブシステムは、特定のジェスチャに
応答してペン非認識アプリケーションでどのアクション
を実行すべきかをユーザが判定できるようにセットアッ
プしたプロファイル51にアクセスする。任意で一部の
ツール53を呼び出して、ペン非認識アプリケーション
43上で何らかのアクションを実行することもできる。
たとえば、ポップアップ・キーボードと手書き入力パッ
ドは、ペン非認識アプリケーション上で何らかのアクシ
ョンを実行するかまたはペン非認識アプリケーションに
入力を提供するようなツールの例である。互換モジュー
ル45に返された認識結果が手書き文字であると認識さ
れた場合、その結果のテキスト・ストリングは適切なペ
ン非認識アプリケーション43に直接経路指定される。
のジェスチャ・セットを列挙したものである。記号ジェ
スチャ300、325、335のストローク・カウント
は一定であるが、英字ジェスチャ342、353、36
5、370のストローク・カウントは、どのようにして
ユーザがその特定の大文字を書いたかに応じて、いくら
か変化する。いずれの記号ジェスチャも4ストローク以
上で構成されることはなく、英字ジェスチャは最小で2
ストローク、最大で5ストロークを必要とすることが分
かるだろう。このようなストローク・カウントの特性
は、テキストとジェスチャとを区別する際に考慮されて
いる。「なぐり書き」という用語は、ストローク入力の
モーダル期間中にユーザが描いたストロークの集合を意
味する。このモーダリティは、3秒間入力を止めるかま
たはスタイラスをセンサから持ち上げることによって終
了する。好ましい実施例ではいずれのジェスチャも5ス
トロークを超えないので、なぐり書きが5ストロークを
上回る場合、認識結果は必ずテキストになる。当業者で
あれば、異なる1組のなぐり書きごとに別々の事前認識
規則を使用することが容易に分かるだろう。
記号を列挙したものである。本発明の一実施例では、ジ
ェスチャとテキスト両方の認識モードを有するウィンド
ウでこれらのジェスチャを描いた場合、ユーザの通常の
手書き文字サイズより大きいジェスチャをユーザが描か
ない限り、テキスト認識が行われることになる。
す。オブジェクト400、405、410、415は、
大文字のHとピリオドの書き順を示している。ユーザが
各ストロークを描くにつれて、各ストロークに関連する
境界ボックスの「分離」が検査される。あるストローク
が別のストロークから規定の距離以上離れている場合、
そのストロークは「分離」されている。複数のストロー
クが互いに接触すると、それらの境界ボックスは、オブ
ジェクト420、425、436、430の順に示すよ
うに組み合わされる。各ストロークが完了すると、ジェ
スチャまたはテキストとして、ストローク・カウント、
ストローク・サイズ、ストローク分離、ストローク・タ
イプに基づいて現行のなぐり書きを分類するスコアが与
えられる。分類が不確定の場合、「不明」というスコア
を与えることができる。図5のH.は、不明401とし
て始まり、テキスト402及び403に移行する。最終
ストロークでは、タップ408によって英字ジェスチャ
の可能性がなくなるので、不明404としてスコアが付
けられる。
というスコアを与えると、そのなぐり書きは認識のため
にジェスチャ認識エンジンとテキスト認識エンジンの両
方に送られる。認識エンジンは、最良テキスト一致用に
1つと最良一致ジェスチャ用に1つという2つの結果を
生成し、テキスト結果を1次認識結果にする。1次とし
てのジェスチャ結果を備えたHタップ・ジェスチャをユ
ーザが作成するためには、Hを含むストロークをジェス
チャしきい値より大きく描く必要がある。ジェスチャし
きい値の設定は別の発明なので、ジェスチャしきい値の
項で後述する。
480を超える大きいストロークで「lbs」と書かれ
ているので、最初の2つのストローク450及び456
はジェスチャ451及び452としてスコアが付けられ
る。しかし、最後のストローク462はジェスチャしき
い値を超えないので、スコアはテキスト453に変更さ
れる。最後のストローク462はタップではないので、
このなぐり書きは英字ジェスチャにはならず、3ストロ
ーク・ジェスチャ335を検査すると、3つのストロー
クはいずれも3ストローク・ジェスチャと見なせるよう
に大きくなければならないことが分かる。これは、いず
れの場合もユーザは大きく書くことを禁じられていない
ことを実証するものである。
大きく描くことにより、ユーザが認識結果を制御する方
法をさらに示すものである。ウィンドウ481内の疑問
符482は、ピリオドを置き換えることにより、この疑
問文の句読点エラーを訂正するためのものである。これ
は小さく書かれているので、疑問符文字485が生成さ
れる。より大きいストローク487を使用して後で描き
直すと、本発明はそれにジェスチャとしてのスコアを付
けるが、これは実行され、その結果、アプリケーション
のヘルプ・ウィンドウ489内に表示される。
を設定するためのエンドユーザ・インタフェースを示し
ている。フォント・サイズを設定することにより、ユー
ザは行手書き入力ウィンドウで使用する行間隔を設定す
る。ユーザが設定する間隔は、ユーザの通常の手書き文
字サイズを適切に示すものである。高さと幅は50%と
25%までそれぞれ拡大される。というのは、罫線なし
ウィンドウに書き込む場合、ユーザの手書き文字を制限
する線が一切ないので、手書き文字が通常より大きくな
る場合が多いからである。ジェスチャしきい値を設定す
る際の線ありフォント・サイズの使い方については、ジ
ェスチャしきい値の項で以下に詳述する。
にペン・サブシステムによって構築され、ターゲット・
アプリケーションに送られる、認識結果データ構造を示
している。認識処理手順については図16に詳しく示
す。このデータ構造は1次結果600と代替結果610
のセクションに分割され、アプリケーションはいずれの
認識結果でも自由に機能することができるが、推奨され
るアクションは、アプリケーションが1次結果を使用す
ることである。というのは、システムがその結果の方が
高いと評価したからである。1次及び代替認識結果タイ
プ・データ・フィールドは、事前認識プロセスの結果に
応じて、ジェスチャと手書き文字かまたは手書き文字と
ジェスチャでそれぞれ記入される。テキスト・ストリン
グまたはジェスチャ認識データ・フィールドは、そのセ
クションの結果タイプに応じて各セクションで記入され
る。なぐり書きポインタは、そのなぐり書きを構成する
1組のストロークに関するハンドルである。
つの直角座標(x左、y下)と(x右、y上)を調整す
ることにより、矩形を拡大する方法を理解するのに役立
つものである。この場合、(x左、y下)は、上方スト
ローク用の矩形の起点でもある。図14に関連して以下
に詳述するように、ストロークを受け取ると、そのスト
ロークの上下の左端及び右端の範囲の境界を示すために
境界ボックスが作成される。図24〜27に関連して以
下に詳述するように、この境界ボックスは、ストローク
の「分離」をテストするために使用する。境界ボックス
は、合計0.04インチになるようにボックスの両側に
0.02インチずつ加えることによって「拡大」され
る。2つのストロークの境界ボックスが交差する場合、
これらは分離ストロークではないので、手書き文字では
なくジェスチャを示すものである。テキストは水平に書
かれる傾向があるので、分離ストロークは手書き文字を
示すことになる。
タップ・ストロークのサイズを縮小した。先行技術のタ
ップ・サイズ810を図12に示す。ペン・タップは、
マウス・ボタンのクリックに似ており、選択やウィンド
ウ・ナビゲーション中に頻繁に使用される。大きいタッ
プ・サイズを定義することにより、ユーザは、タップ中
に少量の間違った動きをしても許される。タップ・サイ
ズを拡大すると、ユーザは少々雑にタップを行えるよう
になり、迅速にタップすることも容易になる(迅速タッ
プは小さいストロークを発生する傾向がある)。しか
し、タップ・サイズを大きくすると、コンマ、引用符、
アポストロフィなどの小さい文字はいずれもタップのよ
うに見え始めるという副作用がある。ユーザによって
は、「o」や「e」などの小文字にタップ・ストローク
としてのタグが付けられるほど、手書き文字が小さいユ
ーザもいる。タップを正確に区別することは本発明の要
件の1つなので、本発明では、認識モードがテキストを
含む場合にタップ・サイズを縮小する方法を取り入れて
いる。タップ・サイズの縮小によって、ユーザはもっと
注意深くタップしなければならなくなるが、その結果、
iの点を打ち、ピリオド、コロン、セミコロンを入力す
る際に注意するので、テキスト認識を向上させる効果が
ある。
たはジェスチャしきい値は、通常、0.156インチで
あり、非常に小さいストロークをシステムがジェスチャ
として解釈しないようにするためにシステムが必要とす
るものである。選択などのためにスタイラスでタップす
る場合、ユーザは、持ち上げる前にわずかにペンの先を
スライドさせることが非常に多い。ペンのスリップは故
意ではなかったものの、結果的にストロークがタップよ
り大きくなることが多く、その場合、システムはそれを
タップとして解釈せず、むしろジェスチャ及びテキスト
認識エンジンに送られる小さいストロークとして解釈す
る。この問題は、ディジタイザ上に滑りやすい表面を備
えたペン・コンピュータでは特に一般的なものである。
このようないわゆる「マイクロ・ジェスチャ」は問題が
多いので、最小ジェスチャ・サイズが課せられている。
とをペン・サブシステムが検出したときに呼び出される
論理の詳細を示している。ステップ900では、システ
ムがすでに書込みモードに入っているかどうかを確認す
るために検査が行われる。書込みモードに入っていない
場合、ステップ905で着地メッセージがアプリケーシ
ョンに送られ、着地事象をそれに通知し、どのようにそ
の事象を処理すべきかをアプリケーションが指定できる
ようにする。このメッセージの処理中、アプリケーショ
ンは認識のモードを指定することができる。メッセージ
の送信後、ステップ910では、アプリケーションが認
識モードを設定したかどうかを確認するためのテストが
行われる。設定していない場合、ステップ915では、
着地ウィンドウ用の適切な認識モードを決定するための
ルーチンが呼び出される。次にプロセスは、図15に詳
細を示す一連のテストに移行し、ウィンドウがテキスト
入力専用か、ジェスチャ入力専用か、またはテキスト入
力とジェスチャ入力が可能かを判定する。図13に示す
プロセスに戻ると、ステップ930では、着地ウィンド
ウですべての認識が不能になっているかどうかを確認す
るためのテストが行われる。不能になっている場合、シ
ステムは、ステップ940で単に着地事象をマウス・ボ
タン事象として処理し、ステップ950で終了する。
935でストローク・カウントをクリアし、ステップ9
60で第1のストロークの第1の点として着地座標を保
管し、ステップ970及び980でストローク境界ボッ
クスを初期設定することにより、入力ストロークの準備
を行う。次にルーチンはステップ990で終了し、その
後のスタイラス入力を待つ。
サと接触している間にスタイラスの動きが検出されるた
びに呼び出されるペン運動ルーチンを示している。新し
い各座標を受け取ると、その座標は、現行のストローク
境界ボックス外にあるかどうかを確認するために検査さ
れる。ステップ1000〜1070に示す動作は、座標
のX値をボックスの左端及び右端の値と比較し、座標の
Y値をボックスの一番上及び一番下の値と比較するプロ
セスの詳細を示している。ストロークがその外側にずれ
続けると、境界ボックスが調整される。
クスの左境界の外側にあるかどうかを判定するためにテ
ストが行われる。システムが書込みモード1002にな
っていない場合、ユーザが書込み1003を開始したか
どうかを判定するために、スタイラスの動きが初期着地
点から監視される。その動きが十分な長さ、通常は0.
060インチのものである場合、ユーザは書込みを開始
したと見なされ、システムは書込みモード1004に入
る。その場合、ステップ1010で境界が座標のX値に
設定される。ステップ1020では、座標のX値がボッ
クスの右境界の外側にあるかどうかを判定するためにテ
ストが行われる。外側にある場合、ステップ1030で
境界が座標のX値に設定される。ステップ1040のテ
ストは、座標のY値がボックスの下境界の外側にあるか
どうかを判定するものである。外側にある場合、ステッ
プ1050で境界が座標のY値に設定される。座標のY
値がボックスの上境界の外側にあるかどうかというテス
トは、ステップ1060で行われる。これが真である場
合、ステップ1070で境界が座標のY値に設定され
る。このプロセスはステップ1080で終了する。
キスト専用か(ステップ1115)、ジェスチャとテキ
ストか(ステップ1130)、ジェスチャ専用か(ステ
ップ1155)のいずれにするべきかを判定し、ウィン
ドウの認識モードを設定する一連のテストが示されてい
る。ウィンドウがテキスト入力またはジェスチャ入力あ
るいはその両方のいずれを受け入れるかを判定するため
に使用可能な基準の1つは、ユーザがエンドユーザ・イ
ンタフェースを介して所与の認識モードを規定したかど
うかである。実際の入力に使用するウィンドウは、すべ
て認識が不能になっている。これは、流れ図にプロセス
・ステップ1160として示されているが、代替実施例
では判断ブロックにすることもできる。次に、ステップ
1110、ステップ1135、またはステップ1150
で認識モードが適切に設定される。しかし、タップによ
って区別される英字ジェスチャを使用可能な好ましい実
施例でテキスト認識が可能になっている場合、ステップ
1125または1145で許容タップ・サイズも縮小さ
れる。タップのサイズを縮小すると、システムはより容
易にタップと小さい小文字とを区別できるようになる
と、本出願人は判断している。プロセスはステップ11
70で復帰する。
ている。ステップ1200でテストするようにジェスチ
ャ認識とテキスト認識の両方が行われ、ステップ120
5でテストするように境界ボックス・ストアがジェスチ
ャである場合、ステップ1210で1次結果がジェスチ
ャに設定される。代替結果はステップ1220でテキス
トに設定される。これに対して、境界ボックス・スコア
が手書き文字である、すなわち、ジェスチャではない場
合、ステップ1215で1次結果がテキストに設定さ
れ、ステップ1225で代替結果がジェスチャに設定さ
れる。図10に関連して前述したように、認識結果デー
タ構造がターゲット・アプリケーションに送られる。ス
テップ1230で認識結果がジェスチャ専用である場
合、ステップ1235で1次結果がジェスチャになり、
ステップ1240で代替結果がヌルになる。そうではな
い場合、ステップ1245で1次結果がテキストに設定
され、ステップ1250で代替結果がヌルに設定され
る。ステップ1255では、新たに構築した認識結果ブ
ロックを含むWM_RESULTメッセージがアプリケーション
に送られ、その後、ステップ1265でアプリケーショ
ン応答が処理される。プロセスはステップ1270で復
帰する。
を処理するためのプロセスは図17に示す。ステップ1
310では、アプリケーションが認識結果を処理したか
どうかを確認するためのテストが行われる。処理してい
ない場合、ステップ1320で、ペン・サブシステムに
よる1次結果または代替結果の処理をアプリケーション
が必要としているかどうかを判定するためにアプリケー
ション応答が検査される。デフォルトでは、ステップ1
330で1次結果が処理されるが、その現行環境にとっ
て代替結果の方が適しているとアプリケーションが判定
した場合、アプリケーションはデフォルト挙動を指定変
更し、ステップ1340で代替結果を処理するように指
定することもできる。ステップ1350で結果がテキス
トである場合、キーボードによって生成された場合と同
様に文字が現れるように、ステップ1360でテキスト
・ストリングがターゲット・アプリケーションに送られ
る。そうではない場合、ステップ1370でジェスチャ
・コマンドが実行される。ステップ1310のテストに
応じてプロセスが結果を処理できた場合、システムはス
テップ1380で復帰し、それ以上のアクションは一切
行われない。
るためのプロセスが示されている。背景としては、ユー
ザが書込み入力を完了したときにシステムがそれを検出
できるように、ユーザが1つのストロークを完了するた
びに書込みタイマが始動する。書込みを続行するために
ユーザがスタイラスでもう一度着地した場合、書込みタ
イマは取り消され、システムは現行のストロークの集合
に新しいストロークを付加する。タイマが時間切れにな
ると、それは、ユーザが休止し、したがって、書込み入
力を完了したことを示す。書込みタイムアウトには3.
0秒という値を使用する。というのは、大量のテキスト
を入力するときにユーザがウィンドウの一方の側から反
対側に移動するのに2.5秒かかることがあることがテ
ストによって分かっているからである。1つまたは2つ
のストローク・ジェスチャが認識され実行されるまで待
つには3秒の書込みタイムアウトでは長すぎるので、別
のジェスチャ・タイムアウト値が維持されている。この
ジェスチャ・タイムアウトは0.9秒である。通常、認
識モードがジェスチャとテキストである場合、システム
はそれより長い待機期間を使用しなければならない。と
いうのは、ユーザがジェスチャ入力中なのかまたは手書
き入力中なのかが明白ではないからである。
ウト値とジェスチャ・タイムアウト値の両方について、
ステップ1400とステップ1402でそれぞれ問合せ
が行われる。ステップ1404でテストしたように、ス
トローク・カウントが6未満である場合、書込みタイム
アウトは認識モードに応じて設定される。ステップ14
05でモードがジェスチャである場合、ステップ141
0でジェスチャ・タイムアウト値が使用される。ステッ
プ1415でモードがテキストである場合、ステップ1
420で書込みタイムアウトが使用される。ステップ1
425は、認識モードがテキストとジェスチャの混合で
あるかどうかを判定する。混合ではない場合、ステップ
1430で書込みタイムアウトが使用される。ステップ
1425で判定したように、モードが混合である場合、
境界ボックス・スコアに基づいて判断が行われる。ステ
ップ1435で境界ボックス・スコアがジェスチャであ
る場合、ステップ1440でジェスチャ・タイムアウト
が使用される。ステップ1445で境界ボックス・スコ
アが不明である場合、ステップ1450でジェスチャ・
タイムアウトに500ミリ秒を加えた値に等しいタイマ
値が使用される。この余分な0.5秒により、ユーザ
は、テキストを書き込んでいる場合に別の単語を開始す
るのに十分な時間が与えられる。ユーザがテキストを書
き込んでいない場合、この余分な時間は、わずかなジェ
スチャ認識遅延を追加するだけである。そうではない場
合、スコアはテキストになり、ステップ1455で書込
みタイムアウトが使用される。ステップ1404で判定
したように、ストローク・カウントが5を上回る場合、
デフォルトとして完全な3.0秒値を使用するような書
込みタイムアウトにするための調整は一切行われれな
い。このように境界ボックス・スコアに基づいて書込み
タイムアウトを動的に設定する方法により、ユーザ・イ
ンタフェースの応答性は高くなり、ユーザは一連のジェ
スチャ・コマンドを迅速に連続して実行することができ
る。
ザは、タッチ画面からスタイラスを持ち上げる。離昇事
象の検出時に行われるプロセスについては図19に詳細
に示す。離昇後、ステップ1500でストローク・カウ
ントが増分される。ステップ1501では、着地時に設
定したタップ・サイズを使用して、それがタップである
かどうかを確認するためにストロークが検査される。次
にステップ1502で現行の境界ボックスが処理され、
ストロークの集合を進行中のテキストまたはジェスチャ
として分類する。
ロークであるかどうかを判定するためにテストが行われ
る。ステップ1505で判定したように、このストロー
クがタップである場合、ユーザはステップ1530でマ
ウス・エミュレーションを必要とし、システムはステッ
プ1555で復帰する。第1のストロークがタップでは
ない場合、ステップ1510で最小ジェスチャ・サイズ
と照らし合わせてストロークの長さが検査される。この
最小ジェスチャ・サイズについては、図12に関連して
前述した通りである。好ましい一実施例の最小ジェスチ
ャ・サイズは、通常、0.156インチ程度であり、ペ
ン・サブシステムでは、非常に小さいストロークがシス
テムによってジェスチャとして解釈されないようにする
ことが必要である。第1のストロークがジェスチャしき
い値未満であり、ステップ1515で現行の認識モード
がジェスチャである場合、ステップ1530でマウス・
エミュレーション・プロセスが行われる。そうではない
場合、ステップ1520で認識モードがテキストとジェ
スチャの両方であれば、ステップ1525で認識モード
がテキスト専用に変更される。というのは、最小サイズ
未満のストロークでジェスチャを開始することができな
いからである。次に、ステップ1540でストロークの
集合に現行ストロークが追加されるが、これは、この場
合、第1のストロークである。ステップ1545では、
図18に関連して前述したように書込みタイムアウトを
調整するためのサブルーチンが呼び出される。書込みタ
イムアウトの調整後、ステップ1550でシステムは書
込みタイムアウトを設定し監視する。次に、ステップ1
555でプロセスが終了する。
いている。ユーザがもう一度スタイラスで着地する場
合、図13に戻ると、ステップ900でシステムはすで
に書込みモードになっているので、ステップ960で新
しい着地点がもう一度保管され、ステップ970及び9
80で境界ボックスが再初期設定される。新しい点が受
け取られると境界ボックスが更新され、最終的に離昇が
行われる。図19に示すように、離昇処理中は、ステッ
プ1500でタップの有無が検査され、ステップ150
2で境界ボックスが処理される。
スについては、図21、図22、図23に詳細に示し、
後で説明する。図19は、ステップ1540で「なぐり
書き」の集合に各ストロークが追加されたときの各スト
ロークごとのプロセスを示している。5つのストローク
を受け取った後、その結果は、好ましい実施例で1組の
ジェスチャが与えられた場合にジェスチャにはなりえ
ず、境界ボックスの処理と書込みタイムアウトの調整が
終了する。最終的に、ユーザは書込みを停止するので、
書込み事象の終了を処理しなければならない。
ては、図20に関連して以下に説明する。まず、ステッ
プ1600でストロークの集合のすべてについて「イン
キ抜き」を行う。これは、スタイラスの経路が表示され
なくなることを意味する。ステップ1605では、シス
テムが書込みモードから抜け出し、ストロークの集合を
終了する。
40で現行の認識モードが、ジェスチャか、テキスト
か、ジェスチャとテキストかがそれぞれテストされる。
現行の認識モードに応じて、ステップ1620またはス
テップ1650でジェスチャまたはテキスト認識エンジ
ンが呼び出され、関連の認識を実行する。
スチャとテキスト両方の認識モードである場合、ステッ
プ1655で描かれたストロークが5ストロークを上回
るかどうかを確認するために、まずストローク・カウン
トが検査される。上回る場合、このストロークはテキス
トに違いないので、ジェスチャ認識エンジンは迂回さ
れ、ステップ1670でテキスト専用認識が行われる。
ステップ1655でカウントが5以下である場合、境界
ボックス・スコアがテストされる。ステップ1660で
スコアがジェスチャでも不明でもない場合、もう一度ジ
ェスチャ認識が迂回され、ステップ1670でテキスト
専用認識が行われる。このような場合、境界ボックス・
スコアは、コンピュータの使用上集中的なジェスチャ認
識プロセスを除去することにより、認識プロセスの速度
を上げる働きをする。ステップ1660で境界ボックス
・スコアがジェスチャまたは不明である場合、ステップ
1665及び1670のジェスチャ認識とテキスト認識
の両方がそれぞれ行われる。当業者であれば、境界ボッ
クス・スコアがジェスチャである場合、手書き文字認識
を回避できることが分かるだろうが、本出願人の経験に
よれば、速度の上昇は代替としてテキスト入力を廃棄す
る可能性に値しないものである。ステップ1680では
認識エンジンからの結果が処理される。プロセスはステ
ップ1690で復帰する。
き」またはストロークの集合のうちの最初の5ストロー
クのそれぞれを処理する論理の流れを示す図である。好
ましい実施例では、6ストローク以上で構成されるジェ
スチャ形状がないので、ステップ1700でテストした
6ストロークの収集後、境界ボックス処理は一切行われ
ない。プロセスはステップ1705で復帰する。次に、
1710でx右からx左を引き、1715でy上からy
下を引くことにより、それぞれ境界ボックスの幅と高さ
の計算が行われる。境界ボックスの幅と高さの両方は、
1720でジェスチャしきい値の幅及び高さと照らし合
わせて検査される。幅と高さの両方は、ステップ172
0でジェスチャしきい値のX値及びY値と照らし合わせ
て検査される。このプロセスについては、図28に関連
して以下に詳述する。
を超える場合、ステップ1725及び1727でテスト
したように、現行ストロークがなぐり書きの第1のスト
ロークであるかどうかに応じて、大ストローク・カウン
トはステップ1735で1に設定されるか、またはステ
ップ1730で増分される。1720で境界ボックスが
ジェスチャしきい値より小さく、1727で現行ストロ
ークがなぐり書きの第1のストロークである場合、大ス
トローク・カウントは1733で0に設定される。
ステップ1740でそれが手書き文字を示す分離ストロ
ークであるかどうかを判定するためにさらに分析が行わ
れる。分離ルーチンの説明については、図24、図2
5、図26に関連して以下に示す。この分離ルーチン
は、なぐり書きの後続ストロークが処理された後に続
く。第1のストロークの場合、ステップ1745のテス
トは真になる。というのは、これが第1のストロークで
あり、図22に示すプロセス・ステップに移行するから
である。
クスのサイズがジェスチャのX/Yしきい値と比較さ
れ、そのサイズがしきい値を超える場合、ステップ17
30で大ストローク・カウンタが増分される。ステップ
1740では、第2のストロークが第1のストロークか
ら分離しているかどうかを判定するために、分離ルーチ
ンの検査が呼び出される。分離テスト・プロセスを理解
するためには、図24、図25、図26に関する説明を
参照されたい。
ップ1745に復帰し、そこで現行ストロークが第1の
ストロークであるかどうかを判定するための検査が行わ
れる。第1のストロークである場合、プロセスは図22
のAに移行する。好ましい実施例では、ステップ175
0でストローク2〜5について境界ボックス・スコアが
必ずテキストに事前設定される。これは、故意ではない
一部のジェスチャ・コマンドの結果から回復するより、
ウィンドウに文字を挿入したことから回復する方がずっ
と容易であるからである。また、ユーザには、ストロー
クをジェスチャとして認識されたことを確認する、すな
わち、ジェスチャしきい値より大きいストロークを描く
確実な方法がある。テスト1755では、ストローク・
カウントが2であるかどうかが判定される。2である場
合、プロセスは図22のBに移行する。テスト1765
では、ストローク・カウントが3であるかどうかが判定
される。3である場合、プロセスは図23のCに移行す
る。3ではない場合、プロセスは図23のDに移行す
る。
は大ストローク・カウントが検査される。第1のストロ
ークが大きい場合、ステップ1815で境界ボックスに
はジェスチャとしてのスコアが付けられる。そうではな
い場合、ステップ1820で不明としてのスコアが付け
られる。小さいサイズまたは平均サイズの単一ストロー
クのみの場合、ユーザが意図していたのがジェスチャで
あるかまたは手書き文字であるかは、同程度の可能性に
なる。次にステップ1830でこのサブルーチンは離昇
ルーチンに復帰する。
たように第2のストロークの場合、ステップ1860で
それがタップであるかどうかを判定するためにそのスト
ロークがテストされる。英字ジェスチャを使用する好ま
しい実施例では、最後のストロークとしてのタップはジ
ェスチャの特徴の1つである。26通りの英字ジェスチ
ャに加え、チェックマーク・タップ、上向き脱字記号タ
ップ、疑問符がある。ストロークがタップではない場
合、ステップ1875で境界ボックス・スコアがテキス
トに設定される。ステップ1885では、両方のストロ
ークがジェスチャしきい値より大きいかどうかを立証す
るためのテストが行われる。大きい場合、そのなぐり書
きは2ストローク・ジェスチャであり、境界ボックス・
スコアはジェスチャに設定される。これは、第2のスト
ロークがタップではない場合は2つのストロークがほぼ
同じ長さでなければならないという2ストローク・ジェ
スチャ要件を前提とする。ステップ1860で現行スト
ロークがタップである場合、ステップ1870で大スト
ローク・カウントが非ゼロ値であるかどうかがテストさ
れる。第1のストロークが大きい場合、ステップ188
0でジェスチャというスコアが付けられる。プロセスは
ステップ1895で呼出しルーチンに復帰する。
界ボックス処理については図23に示す。分離矩形カウ
ントが考慮されているので、この処理はより複雑になっ
ている。図3には、3ストローク・ジェスチャが列挙さ
れている。好ましい実施例では、英字ジェスチャではな
い3ストローク・ジェスチャが6通り存在するが、シス
テムでは、このような6通りのジェスチャを作成する場
合に3つのストロークがいずれも大きくなければならな
い。第3のストロークがタップである場合、分離を検査
する必要性が効力を発揮する。というのは、26通りの
英字ジェスチャのうちの13通りは2つのストロークと
1つのタップで描くことができ、英字ジェスチャとテキ
ストとが曖昧であるからである。2ストローク処理と同
様に、ステップ1910でストロークがタップであるか
どうかが検査され、現行ストロークがタップではない場
合、ステップ1905で境界ボックス・スコアがテキス
トに設定される。ステップ1925では、3つのストロ
ークがいずれも大きいかどうかを判定するために大スト
ローク・カウントがテストされる。いずれも大きい場
合、ステップ1935でスコアがジェスチャに設定され
る。ステップ1910で現行ストロークがタップである
場合、ステップ1920で分離ボックス・カウントの値
が2またはそれ以上であるかどうかがテストされる。カ
ウントが2またはそれ以上である場合、ステップ191
5でスコアがテキストに設定される。そうではない場
合、曖昧さのため、ステップ1930で境界ボックス・
スコアが不明に設定される。ステップ1940における
大ストローク・カウントの後続テストは、曖昧さを解決
するために役立つものである。少なくとも1つの大スト
ロークがある場合、ステップ1935で境界ボックス・
スコアがジェスチャに変更される。プロセスは離昇ルー
チンに復帰する。
ークの場合を処理するものである。好ましい実施例で
は、6通りの4ストローク・ジェスチャが考えられ、い
ずれもタップ・ストロークで終了する。したがって、こ
の実施例では、ステップ1960で判定したように第4
のストロークがタップではない場合、ステップ1955
でテキストという最終スコアが与えられる。ステップ1
970で第4のストロークがタップであり、2つ以上の
分離矩形が存在する場合、このストロークは確実にテキ
ストなので、ステップ1965でそのようにスコアが付
けられる。そうではない場合、ステップ1980で境界
ボックス・スコアが不明に設定される。第4のストロー
クの場合、大ストロークについて通常行われるテスト
は、ステップ1975で曖昧さが存在し、境界ボックス
・スコアが不明である場合のみ行われる。少なくとも1
つの大ストロークが存在する場合、ステップ1985で
境界ボックス・スコアがジェスチャに変更される。ただ
し、ユーザが非常に大きく書いても、第4のストローク
がタップでなければ、そのストロークはテキストとして
のスコアが付けられることに留意されたい。第5のスト
ロークについても同じことが当てはまる。好ましい実施
例では、5ストローク・ジェスチャは1つだけであり、
それはE.(Eタップ)ジェスチャである。プロセス
は、図19に関連して前述した離昇プロセスに復帰す
る。
プロセスの詳細を示している。分離テストは、なぐり書
きの最初の4ストロークについて行われることが好まし
い。ストローク・カウントが4を上回る場合、ステップ
2000のテストにより、ユーザはステップ2005で
離昇プロセスに復帰する。好ましい実施例で定義されて
いる5ストローク・ジェスチャは1つだけ、すなわち、
E.(Eタップ)ジェスチャだけなので、それをテキス
トと区別するために第5のストロークの境界ボックスを
処理する必要はない。以下に詳述する分離テスト・プロ
セスを要約すると、最初の4ストロークは、水平寸法に
ついてのみ、分離または間隔が検査される。これは、英
語や多くの言語が水平に書かれるからである。テキスト
は水平に広がる特徴を備えているが、ジェスチャにはな
い。この規則のあまり重要ではない例外としてはアップ
及びダウン・フリック・ジェスチャがあり、これらはわ
ずかな水平変位で描くこともできるが、この技法に対し
て悪い影響は一切及ぼさない。分離または水平間隔のテ
ストを行う場合、分離とは、ディスプレイの垂直軸全体
に沿って少なくとも0.040インチだけ分離したスト
ロークであると定義される。0.040インチの距離は
ディスプレイ上での2〜4ペルと同等である。現在、売
り出されているペン・ディジタイザは、通常、200〜
150ドット/インチの解像度を有し、ストローク間の
空間距離を非常に正確に決定することができる。間隔が
0.04未満のストロークが接触していると見なされる
理由は、ユーザの手書き文字の粗雑さに対処するためで
ある。「t」または「H」に横線を入れる場合、その横
棒は垂直ストロークの前から始まり、H.(Hタップ)
ジェスチャが「lt.」または「It.」になる場合が
多い。
離矩形によって表された別々のエンティティに分割され
る。新しいストロークを1つずつ処理するごとに、その
ストロークの境界ボックスは、それが接触している他の
ストロークの境界ボックスと結合される。4つのストロ
ークを描いた場合、分離矩形の最小数は1になるはずで
あり、4つの境界ボックスがいずれも接触していない場
合には最大数が4になるはずである。新しいストローク
がそれと接触する他のストロークと結合された後、それ
らが依然として分離しているかどうかを確認するために
分離矩形がテストされる。分離矩形が拡大して他の分離
矩形と接触すると、それらは結合され、分離矩形の数が
低減される。
ップ2010でストローク間隔値または0.040イン
チと等しい量だけ境界ボックスを水平に拡大することか
ら始まる。この拡大プロセスについては、図11に関連
して前述した通りである。この矩形は、矩形の対向する
隅に位置する2つの直角座標(x左、y下)と(x右、
y上)を調整することにより、拡大される。好ましい一
実施例の(x左、y下)は矩形の起点でもある。
け取ると、それはステップ2030で分離矩形として保
管される。分離矩形のカウントはステップ2050で1
に設定される。次にステップ2020で第2の境界ボッ
クスが処理され、ステップ2035でそれらが交差する
かどうかを確認するために境界ボックスと第1の分離矩
形がテストされる。交差する場合、ステップ2055で
2つの矩形を合体または結合するために共通システム機
能を呼び出すことにより、それらが結合される。第2の
境界ボックスが分離している場合、ステップ2040で
第2の分離矩形が形成され、ステップ2045で分離矩
形の数が増分される。
き第3のストロークがあるかどうかを判定するものであ
る。ある場合、図25で第3の境界ボックスが処理され
る。既存の分離矩形が1つだけ存在する場合、ステップ
2105で2つが交差するかどうかを確認するためにテ
ストが行われる。交差する場合、それらはステップ21
25で結合される。そうではない場合、ステップ211
5で第2の分離矩形が形成される。ステップ2135で
は分離矩形の数が増分される。
し、ステップ2110で第3の境界ボックスがいずれか
1つと交差していない場合、ステップ2120で第3の
分離矩形が形成される。ステップ2130では分離矩形
のカウントが増分される。ステップ2140で第3の矩
形が既存の矩形の1つと交差する場合、それらが接触し
ていれば、ステップ2145で第3の矩形が第1の分離
矩形と結合される。また、ステップ2150でそれらが
接触していれば、ステップ2155で第3の矩形が第2
の分離矩形と結合される。次に、第3の境界ボックスの
処理後、ステップ2160でそれらが接触しているかど
うかを確認するために、残りの2つの分離矩形がテスト
される。ステップ2160でそれらの分離矩形が接触し
ていると判定された場合、ステップ2165でそれらが
結合される。分離矩形のカウントはステップ2170で
減分される。
同様の方法を使用する。図26では、3つの分離矩形が
存在する場合に多数のテストを行わなければならないの
で、個別ステップの代わりにソフトウェア・ループを使
用して、この処理を示している。図26では、ステップ
2200で第4の境界ボックスが既存の分離矩形のいず
れかと交差しない場合、ステップ2220で境界ボック
スが新しい分離矩形として保管され、ステップ2230
で分離矩形のカウントが増分される。ステップ2200
で第4の境界ボックスが1つまたは複数の分離矩形と交
差する場合、ステップ2210からステップ2240ま
でのループに入り、ステップ2240で現行の境界ボッ
クスはステップ2235でそれが接触する各分離矩形と
結合される。すべての既存分離矩形と照らし合わせて境
界ボックスをテストした後、別のループに入り、各分離
矩形が他の分離矩形の1つと接触しているかどうかを確
認するために、ステップ2260で各分離矩形が検査さ
れる。接触している場合、ステップ2265で2つの接
触矩形が結合される。ステップ2265で2つの分離矩
形が1つに結合されるたびに、ステップ2270で分離
矩形のカウントが減分される。ルーチンはステップ22
75で復帰する。
大するためのプロセスが示されている。これは、ステッ
プ2310で境界ボックスの左側から値の半分を引き、
ステップ2320で右側に半分を加えることによって実
施される。境界ボックスを拡大すると、それらが0.0
40インチというストローク空間値より大きい距離だけ
分離されているかどうかをテストすることが容易にな
る。境界ボックスを同等に拡大するために、2320で
ストローク空間の半分、すなわち、0.020インチが
境界ボックスのx右値に加えられる。境界ボックスの左
側を拡大するためには、2310で境界ボックスのx左
値から0.020を引けるように負の方向に移動するこ
とが必要である。両側を0.020インチずつ拡大する
ことにより、2つの隣接境界ボックスが接触しない場
合、それらは元々0.040インチを上回る距離だけ分
離されていたことを意味する。ステップ2330で境界
ボックスが依然としてディスプレイの境界内にあること
を確認するためにx左値が検査される。ステップ234
0でそれが負になる場合、境界ボックスの左境界が0に
設定される。次に、ステップ2350でy下値が0に設
定され、ステップ2360でy上が最大センサ高に設定
され、矩形の交差及び合体を行うのがより容易になる。
ただし、好ましい実施例では、垂直間隔は検査されず、
重要ではないことに留意されたい。これは、ユーザが水
平方向にのみ書くことを想定しているからである。
ため、また認識プロセスに対するユーザの制御権を強化
するため、なぐり書きが6ストローク未満のストローク
を含む場合でしかもストロークが大きく描かれた場合、
本発明により、そのなぐり書きは強制的にジェスチャと
して認識される。本発明は、ジェスチャ認識結果を強制
するのに十分な大きさのものとしてストロークを分類す
るのに使用するジェスチャしきいサイズを設定するため
の手段をユーザに提供するものである。ユーザがこのし
きいサイズを設定し、それに対する認識を維持すること
を覚えると、ジェスチャ/テキスト誤認識の発生数は大
幅に減少する。
ついてジェスチャしきい値をカストマイズしないことを
選んだ場合、システムは、線ありまたは罫線付き手書き
入力パッドの設定がユーザの手書き文字のサイズを正確
に反映すると想定して、その設定を取り出すことができ
る。
に設定した場合、ジェスチャしきい値はこのサイズの1
50%または3/4インチとして計算されるはずであ
る。ジェスチャしきい値を正確に設定することは重要な
ことである。というのは、しきい値がユーザの実際の手
書き文字サイズに近すぎる場合、テキスト文字がジェス
チャ・コマンドとして認識される可能性があるからであ
る。
使用中の現行アプリケーション上で不要かつ有害なアク
ションが実行される恐れがある。テキストの編集中また
は作成中に擬似ジェスチャ・コマンドが発生することは
非常にいらだたしいことである。これに対して、ジェス
チャしきい値が大きすぎる場合、ユーザは、アプリケー
ションの特定のタスクに集中しようとする際に不自然か
つ破壊的なほどジェスチャ記号を誇張して描かざるを得
ない。ジェスチャを必要以上にかなり大きく描かなけれ
ばならないことによる欠点の1つは、各ジェスチャに関
連してホット・スポットが発生することであり、ジェス
チャを入力する場合、ジェスチャ・コマンドのターゲッ
トになる予定のオブジェクトの上にホット・スポットを
正確に配置することが必要になることが多い。不自然に
大きいジェスチャを描くと、ホット・スポットの配置精
度が低下し、ジェスチャ・コマンドのターゲットミスが
発生する。過剰に長いストロークも、ストロークの処理
と認識プロセス中の両方で追加の計算負荷を発生する。
ユーザが迅速かつ正確にジェスチャを入力できることが
理想的である。
結果から平均手書き文字サイズを計算することにより、
ジェスチャしきい値のサイズ決定を自動化しようとする
ものである。このプロセスを自動化すると、ユーザはそ
れを調整する義務から解放され、ユーザが自然にしかも
一貫して書くことを覚えると、自動化した方法によりよ
り厳重なしきい値が使用可能になる。
ャしきい値を設定する方法を示している。ステップ24
00でユーザがしきいサイズを手作業で設定する場合、
幅と高さはユーザ・プロファイルから問い合わせ、それ
らが格納されている測定単位であるインチからセンサ・
ドットに変換される。ジェスチャしきい値のサイズは、
手書き文字のサイズが人によって変動することを考慮す
るためにユーザが設定可能なものである。ジェスチャし
きい値のサイズはインチで指定され、システム・ブート
時及びいつでもユーザはジェスチャしきいサイズを変更
できる。センサ・ドットではなくインチを使用してしき
いサイズを指定すると、センサ・タイプまたはサイズと
は無関係に、確実にジェスチャしきい値が同じサイズに
なる。
介してジェスチャしきいサイズを設定しなかった場合、
ステップ2405で線あり手書き入力に使用するフォン
トの幅と高さに関する問合せを行う。ステップ2415
及び2425では、フォントの幅と高さに小さい係数
1.5と1.25を掛け、それらを拡大する。図8及び
図9は、線ありフォント・サイズを設定するために使用
可能なエンドユーザ・インタフェースの1つを示してい
る。フォント・サイズを設定することにより、ユーザは
行手書き入力ウィンドウで使用する行間隔を設定する。
ユーザが設定した間隔は、ユーザの通常の手書き文字サ
イズを適切に示すものである。高さと幅はそれぞれ50
%と25%分だけ拡大する。というのは、罫線なしウィ
ンドウに書き込む場合、ユーザの手書き文字を制限する
線がまったくないので、手書き文字が通常より大きくな
ることが多いからである。しきいサイズが得られると、
ステップ2430でそれがセンサ・ドットの単位で保管
される。次に、ユーザがジェスチャしきい値の自動設定
を可能にしたかどうかを確認するために、ステップ24
35のテストが行われる。可能にした場合、システム
は、ステップ2440でユーザの手書き文字サイズを動
的に決定するための環境をセットアップする。ただし、
上下のループによる書込み高さの特徴的な変動を反映す
るためにジェスチャしきい値を垂直方向により大きく設
定することは有用であることに留意されたい。
字の平均高さは、認識された各単語の周囲に描かれた境
界ボックスの高さを測定することによって計算される。
ペン・サブシステムがなぐり書きを認識エンジンに渡す
場合、それは単にストロークの集合であり、そのそれぞ
れに専用の境界ボックスが付いている。認識プロセス中
に、ストロークは英字にグループ化され、次に英字は単
語にグループ化される。認識エンジンは、認識したテキ
スト・ストリングと各認識単語用の境界ボックス構造と
を含む結果バッファを返す。本発明が結果構造内の各境
界ボックスを処理する際に、各単語の英字と大文字/小
文字の区別が検査される。小文字ループまたはアポスト
ロフィまたは引用符などの句読点マークによって曲解さ
れた単語はフィルタで除去され、残りの単語境界ボック
スが平均化されるが、まだ検証されていない。本発明
は、ユーザがその認識の正確さに満足しているかどうか
を確認するためにテキスト・ストリングがアプリケーシ
ョンに送達されるまで待つ。ユーザが自分が書いたもの
を確実に把握した後、テキスト・ストリングに認識エラ
ーがある場合、本発明はどの単語が誤認識されたのかを
判定し、その単語に関連する境界ボックスが廃棄され
る。誤認識された単語は、ユーザが訂正対話または直接
編集によって訂正したときに本発明に把握される。変更
されたものを把握するために、テキストに対して訂正前
後の比較が行われる。本発明では訂正後の単語を得るこ
とができるが、以下の3つの理由によりそれを無視する
ことにしている。第1に、多くの訂正は単語ごとではな
く文字ごとに行われるからである。第2に、統計データ
収集には無効と見なされている正確さ向上のために、訂
正対話は通常、枠付きまたは線あり認識モードを使用し
て行われるからである。第3に、ユーザは、テキストの
編集または訂正時に自分の書込みサイズを変更すること
が多いからである。最良の統計データは、適切に句読点
が付けられた長く完全な文章から得られる。
モードの複数の手書き入力パッド2500、2510、
2520を含む。枠付きモードと線ありモードは枠付き
パッド2500と線ありパッド2510に示されたユー
ザの手書き文字を制限するので、枠付きモードと線あり
モードの文字認識結果はすべて無視される。好ましい実
施例の本発明は、パッド2520に示す罫線なし入力の
認識結果のみに依存する。
である。手書き文字は大幅に変動するが、2600、2
610、2620に描いた文字の形状は一般的な母集団
を表している。小文字は、上ループ2610を含むか下
ループ2620を含むかによってカテゴリ化される。本
発明は、ジェスチャをテキスト入力から区別するために
任意の人の平均手書き文字を厳密に決定しようとするも
のである。これは、なぐり書きのストローク・パターン
がテキストまたはジェスチャの特性を有するかどうかを
判定することによって行われる。この区別プロセスは、
各ストロークがペン・サブシステムによって処理される
たびにリアルタイムで行われるので、システムは認識を
行おうという試みを一切行わない。主な要件は、必ずし
も文字の平均高さではなく、文字内の任意のストローク
の平均高さを確認することである。このため、発明者ら
は、下ループ2620から構成される小文字を無視する
ことにした。
識の正確さは影響を受けない。基線は非常に傾斜してい
るが、文字認識の前に認識エンジンによって正規化され
る。しかし、図36に示すように、本発明は平均書込み
サイズを決定するために単語の周囲に描いた境界ボック
スに依存しているので、傾斜手書き文字は廃棄するかま
たは個別に処理する必要がある。というのは、それによ
って境界ボックスの見かけサイズがゆがむからである。
図37に示すように、境界ボックス3370は、水平線
から30度傾斜して書くことによって発生したゆがみの
典型である。水平線から11.5度のときに引き起こさ
れるエラーの量は2パーセントなので、本発明では有効
な基線用のカットオフとして11.5度を使用する。
ための方法を示している。各単語境界ボックス343
0、3440、3450、3460の近似起点を通って
1本の線が描かれ、その中のテキストは明確にするため
削除されているが、次にこの基線3410の角度が計算
される。好ましい一実施例では、11.5度を上回る傾
斜は一切考慮しない。
て、認識エンジンから低レベルの文字境界ボックスを取
り出すことにより、平均サイズを計算することができ
る。文字境界ボックス3611、3612、3613、
3614は、関連の単語境界ボックス3604よりかな
り正確な結果をもたらす。本実施例ではこの技法を考慮
していないが、多数の境界ボックスを取り出し、適切な
フィルタを適用し、統計データを計算する際に過剰な量
の処理が消費される恐れがあるからである。
棄される一連の事象を示している。ユーザは編集ウィン
ドウ3500に手書き文字入力3502を入力した。手
書き文字は認識されて編集ウィンドウ3506に表示さ
れ、ユーザは認識したテキスト3508を確認できるよ
うになる。単語「moon」3510は単語「noo
n」のスペルミスなので、ユーザは間違った文字の上に
「n」を書き、編集ウィンドウ3541は訂正した英字
3542を取り戻す。ユーザがOKボタン1145を押
すと、テキスト3560がアプリケーションに送られ
る。ただし、テキストをアプリケーションに経路指定す
る前に、本発明はスペルミスした単語の境界ボックスを
無効にし、それを廃棄している。
い実施例の論理の流れを詳細に検討することができる。
このプログラム論理は、Pen For OS/2の認識エンジンが
ストロークの集合について認識プロセスを完了するたび
に制御を受け取る。ステップ2700では、文字認識の
タイプの問合せが行われる。本発明は線なし手書き文字
を処理する際に最も効果的であり、認識タイプが線なし
ではない場合、このルーチンはステップ2735で終了
する。次に、ステップ2705でシステムがテキストの
訂正中であるかどうかを判定するためにテストが行われ
る。訂正シーケンス中に入力した手書き文字はユーザの
通常の手書き文字を表していない場合が多いので、その
ような入力も廃棄される。ステップ2710で認識エン
ジンからの結果がジェスチャとテキストの両方を含む場
合、平均化に適していない5ストローク以下のストロー
クが収集されたことを意味し、ステップ2735でルー
チンが終了する。平均高を計算できるように、上記のフ
ィルタを通過するテキストはステップ2715で処理さ
れる。
部ループ2800と外部ループ2814とから構成さ
れ、そのループが1行の各単語及びテキストの各行をそ
れぞれ順に処理する。ステップ2805では、テキスト
のその行の第1の境界ボックスと最後の境界ボックスの
起点の問合せが行われる。次にステップ2808では、
共通三角法ライブラリ・ルーチンを呼び出すことによっ
て実行されるが、2つの直角座標が極座標に変換され
る。その結果得られるベクトルは、ラジアンから水平線
からの度数に変換される。ステップ2810でこの特定
の行の基線が傾斜パラメータの範囲内である場合、ステ
ップ2815で内部ループに入り、不適当な単語及び記
号をフィルタで除去するために3つのテストが行われ
る。ステップ2820では下ループを備えた小文字を含
む単語がテストされ、ステップ2825では引用符また
はアポストロフィを含む単語がテストされ、ステップ2
830では感嘆符または疑問符が分離される。これらの
条件のいずれかによって特定の境界ボックスが拒否さ
れ、ステップ2815でループが反復する。1つの単語
が3つのテストすべてに合格した場合、ステップ283
5でy上からy下を引くことにより、境界ボックスの高
さが測定される。各単語が処理されるまで、1行分のテ
キスト全体にわたって内部ループが反復する。ステップ
2840では、すべての有効な境界ボックスの高さがま
とめて平均化され、ステップ2805で次の行のテキス
トまで外部ループが反復する。最後の行のテキストが処
理されると、ループはステップ2845に移行し、そこ
ですべての行の高さがまとめて平均化される。2850
でテストしたように有効な単語または境界ボックスの総
数が4を上回る場合、ジェスチャしきい値が更新された
ときに後で結果に重みを付けるためにフラグが設定され
る。手書き入力のコンテキストが明確ではないために単
語が3つ未満である場合、ステップ2855で結果に重
みが付けられない。ルーチンはステップ2870で復帰
する。
手書き文字高を計算するために認識したテキストを処理
した後、ステップ2730でその結果がターゲット・ア
プリケーションに送られる。そのアプリケーション用に
編集ウィンドウが使用可能になっている場合、アプリケ
ーションがテキスト・ストリングを検出する前にそのウ
ィンドウが表示され、ステップ2725のテストは真に
なる。認識したテキストがエラーを含んでいる可能性が
あるので、測定した境界ボックスを検証することはでき
ず、ステップ2730でジェスチャしきい値を更新する
ための呼出しは迂回される。プロセスはステップ273
5で終了する。
3に示すようにジェスチャしきい値を更新するためのサ
ブルーチンが呼び出される。本発明では10個の項目を
含むサイズ決定テーブル2975を使用するが、それぞ
れの項目は、なぐり書きまたはストロークの集合の計算
済み平均高である。ステップ2900で最新のサンプル
に重みを付ける場合、そのプロセスはテーブル内の最も
古い2つの項目を置き換える。そうではない場合、それ
は最も古い項目を置き換えるだけである。このプロセス
は、小さい方の手書き文字サンプルに大きい方のサンプ
ルの重みの半分を与える。次にステップ2915でテー
ブル内のすべての項目が平均化され、ステップ2920
でその結果に1.5を掛けることにより、ジェスチャ高
さが計算される。次に、ステップ2925でその高さに
0.8または80%を掛けることにより、Xまたはジェ
スチャの幅値が計算される。この新しい値は、次の書込
みモーダリティでただちに使用される。次に更新ルーチ
ンはステップ2930で呼出し側に復帰し、呼出し側が
現行プロセスを終了する。
る間に編集ウィンドウが作成された場合、訂正対話の活
動化という図34のルーチンは、ウィンドウ作成の一部
として呼び出されているはずである。その時点でプログ
ラムはステップ3000でシステム・フラグを設定して
訂正対話の開始を通知し、ステップ3005で入力テキ
スト・ストリングを保管し、ステップ3010で結果の
一部として認識エンジン用に受け取った境界ボックスの
アレイを保管しているはずである。これは、ユーザが認
識したテキストに対してどのような変更を行ったのかを
本発明が判定できるようにするために行われる。
ると、本発明はもう一度制御権を獲得し、訂正モーダリ
ティを通知するシステム・フラグがステップ3050で
リセットされる。ステップ3055でユーザがテキスト
に対して一切変更を行っていない場合、ルーチンは終了
し、ストリングをアプリケーション1140に渡すこと
ができるようになる。そうではない場合、ステップ30
60で出力ストリングが入力ストリングと比較され、比
較ミスごとに関連の境界ボックスが無効になる。ストリ
ングの完全性比較が完了した後、ステップ3070で元
のテキストのいずれかがそのまま存続しているかどうか
を確認するために残りのテキストが比較される。存続し
ていない場合、プロセスはステップ3090で終了す
る。ステップ3075でそれが4未満になるかどうかを
確認するために合計カウントがテストされ、4未満にな
る場合、ステップ3080で重みフラグがなしに設定さ
れる。次にステップ3085でジェスチャしきい値ルー
チンが呼び出され、ステップ3090でプロセスが終了
する。
35に示す。これらのプロセスは、システムが最初にブ
ート・アップしたときと、新しいユーザが自分のジェス
チャしきい値のロードを要求するたびに制御権を獲得す
る。ブート時には、ステップ3100でユーザのしきい
値がプロファイルから取り出される。ステップ3105
でそれが検出された場合、ステップ3115でサイズ決
定テーブルのすべての項目にそれが入っている。ジェス
チャしきい値が検出されなかった場合、3110でシス
テム・デフォルト・ジェスチャしきい値が使用される。
ステップ3115でサイズ決定テーブルの項目に入れ
る。プロセスはステップ3120で終了する。
ドを要求すると、システムはまずステップ3150で、
現行ユーザのプロファイル下で現行のものを保管すべき
かどうかを問い合わせる。保管すべき場合、ステップ3
155でそれが保管され、ステップ3160で新しいユ
ーザのジェスチャしきい値がプロファイルから取り出さ
れる。ステップ3165のテストでジェスチャしきい値
が検出されない場合、もう一度、ステップ3170でシ
ステム・デフォルトが使用され、ステップ3175でそ
れに応じてサイズ決定テーブルが初期設定される。
発明の精神及び範囲を逸脱せずにこのような特定の実施
例に対して変更を加えることができることは、当業者で
あれば分かるだろう。さらに、このような実施例は、例
示のみを目的とするものであり、本発明の範囲を制限し
たり、特許請求の範囲を狭めるためのものであると解釈
してはならない。
の事項を開示する。
チャと手書き文字入力とを区別するために方法におい
て、コンピュータへのペン入力装置から1組のストロー
クを検出するステップと、各ストロークのサイズを計算
するステップと、所定の数のストロークがジェスチャし
きいサイズを超える場合に1組のストロークをジェスチ
ャ入力としてカテゴリ化するステップとを含むことを特
徴とする方法。 (2)ユーザがジェスチャしきいサイズを手作業で設定
できるようにするステップをさらに含むことを特徴とす
る、上記(1)に記載の方法。 (3)ユーザがジェスチャしきいサイズを手作業で設定
していない場合にデフォルト・ジェスチャしきいサイズ
を使用するステップをさらに含むことを特徴とする、上
記(2)に記載の方法。 (4)手書き文字入力設定に関する情報を求めて、コン
ピュータ内に常駐するアプリケーションに対して問合せ
を行うステップと、ユーザがジェスチャしきいサイズを
手作業で設定していない場合に手書き文字入力設定に基
づいてデフォルト・ジェスチャしきいサイズを計算する
ステップとをさらに含むことを特徴とする、上記(2)
に記載の方法。 (5)手書き文字入力の平均サイズを求めて、コンピュ
ータ・システムのユーザのために手書き文字入力を分析
するステップと、手書き文字入力の平均サイズに基づい
てデフォルト・ジェスチャしきいサイズを計算するステ
ップとをさらに含むことを特徴とする、上記(2)に記
載の方法。 (6)計算したデフォルト・ジェスチャしきいサイズと
ともにユーザIDを格納するステップと、複数のユーザ
が個々の計算したデフォルト・ジェスチャしきいサイズ
を有するように、第2のユーザのために前記分析ステッ
プ、計算ステップ、格納ステップを繰り返すステップと
をさらに含むことを特徴とする、上記(5)に記載の方
法。 (7)前記分析ステップが、テキスト文字として認識さ
れた各組のストロークの周囲に境界ボックスを描くステ
ップと、所与の単語内の各テキスト文字の境界ボックス
を単一の単語境界ボックスに結合するステップと、複数
の単語境界ボックスの高さを測定するステップと、平均
手書き文字高さを求めて、単語境界ボックスの高さを平
均化するステップとをさらに含むことを特徴とする、上
記(5)に記載の方法。 (8)ユーザが斜線に沿って手書き文字を入力すること
を特徴とする、上記(7)に記載の方法。 (9)前記分析ステップから無関係なストロークが省略
されることを特徴とする、上記(5)に記載の方法。 (10)1組のストロークがジェスチャ入力としてカテ
ゴリ化されるように、すべてのストロークがジェスチャ
しきいサイズを超えていなければならないことを特徴と
する、上記(1)に記載の方法。 (11)1組のストロークがジェスチャ入力としてカテ
ゴリ化されるように、1組のストロークのうちの最後の
入力ストロークがタップしきいサイズより小さくなけれ
ばならないことを特徴とする、上記(1)に記載の方
法。 (12)プロセッサと、メモリと、ディスプレイと、ペ
ン入力装置とを含み、ジェスチャと手書き文字入力とを
区別するためのシステムにおいて、コンピュータへのペ
ン入力装置から1組のストロークを検出する手段と、各
ストロークのサイズを計算する手段と、所定の数のスト
ロークがジェスチャしきいサイズを超える場合に1組の
ストロークをジェスチャ入力としてカテゴリ化する手段
とをさらに含むことを特徴とするシステム。 (13)ユーザがジェスチャしきいサイズを手作業で設
定できるようにする手段と、ユーザがジェスチャしきい
サイズを手作業で設定していない場合にデフォルト・ジ
ェスチャしきいサイズを使用する手段をさらに含むこと
を特徴とする、上記(12)に記載のシステム。 (14)手書き文字入力設定に関する情報を求めて、コ
ンピュータ内に常駐するアプリケーションに対して問合
せを行う手段と、ユーザがジェスチャしきいサイズを手
作業で設定していない場合に手書き文字入力設定に基づ
いてデフォルト・ジェスチャしきいサイズを計算する手
段とをさらに含むことを特徴とする、上記(13)に記
載のシステム。 (15)手書き文字入力の平均サイズを求めて、コンピ
ュータ・システムのユーザのために手書き文字入力を分
析する手段と、手書き文字入力の平均サイズに基づいて
デフォルト・ジェスチャしきいサイズを計算する手段と
をさらに含むことを特徴とする、上記(13)に記載の
システム。 (16)計算したデフォルト・ジェスチャしきいサイズ
とともにユーザIDを格納する手段をさらに含み、複数
のユーザが個々の計算したデフォルト・ジェスチャしき
いサイズを有するように、前記分析手段、計算手段、格
納手段によって第2のユーザの手書き文字が処理される
ことを特徴とする、上記(15)に記載のシステム。 (17)前記分析手段が、テキスト文字として認識され
た各組のストロークの周囲に境界ボックスを描く手段
と、所与の単語内の各テキスト文字の境界ボックスを単
一の単語境界ボックスに結合する手段と、複数の単語境
界ボックスの高さを測定する手段と、平均手書き文字高
さを求めて、単語境界ボックスの高さを平均化する手段
とをさらに含むことを特徴とする、上記(15)に記載
のシステム。 (18)ユーザが斜線に沿って手書き文字を入力するこ
とを特徴とする、上記(17)に記載のシステム。 (19)前記分析ステップから無関係なストロークが省
略されることを特徴とする、上記(15)に記載のシス
テム。 (20)1組のストロークがジェスチャ入力としてカテ
ゴリ化されるように、すべてのストロークがジェスチャ
しきいサイズを超えていなければならないことを特徴と
する、上記(12)に記載のシステム。 (21)コンピュータで読取り可能な媒体上にあって、
コンピュータへのジェスチャと手書き文字入力とを区別
するためのコンピュータ・プログラム製品において、コ
ンピュータへのペン入力装置から1組のストロークを検
出する手段と、各ストロークのサイズを計算する手段
と、所定の数のストロークがジェスチャしきいサイズを
超える場合に1組のストロークをジェスチャ入力として
カテゴリ化する手段とをさらに含むことを特徴とするコ
ンピュータ・プログラム製品。 (22)ユーザがジェスチャしきいサイズを手作業で設
定できるようにする手段と、ユーザがジェスチャしきい
サイズを手作業で設定していない場合にデフォルト・ジ
ェスチャしきいサイズを使用する手段をさらに含むこと
を特徴とする、上記(21)に記載の製品。 (23)手書き文字入力設定に関する情報を求めて、コ
ンピュータ内に常駐するアプリケーションに対して問合
せを行う手段と、ユーザがジェスチャしきいサイズを手
作業で設定していない場合に手書き文字入力設定に基づ
いてデフォルト・ジェスチャしきいサイズを計算する手
段とをさらに含むことを特徴とする、上記(22)に記
載の製品。 (24)手書き文字入力の平均サイズを求めて、コンピ
ュータ・システムのユーザのために手書き文字入力を分
析する手段と、手書き文字入力の平均サイズに基づいて
デフォルト・ジェスチャしきいサイズを計算する手段と
をさらに含むことを特徴とする、上記(22)に記載の
製品。 (25)計算したデフォルト・ジェスチャしきいサイズ
とともにユーザIDを格納する手段をさらに含み、複数
のユーザが個々の計算したデフォルト・ジェスチャしき
いサイズを有するように、前記分析手段、計算手段、格
納手段によって第2のユーザの手書き文字が処理される
ことを特徴とする、上記(24)に記載の製品。 (26)前記分析手段が、テキスト文字として認識され
た各組のストロークの周囲に境界ボックスを描く手段
と、所与の単語内の各テキスト文字の境界ボックスを単
一の単語境界ボックスに結合する手段と、複数の単語境
界ボックスの高さを測定する手段と、平均手書き文字高
さを求めて、単語境界ボックスの高さを平均化する手段
とをさらに含むことを特徴とする、上記(24)に記載
の製品。 (27)ユーザが斜線に沿って手書き文字を入力するこ
とを特徴とする、上記(26)に記載の製品。 (28)前記分析ステップから無関係なストロークが省
略されることを特徴とする、上記(27)に記載の製
品。 (29)1組のストロークがジェスチャ入力としてカテ
ゴリ化されるように、すべてのストロークがジェスチャ
しきいサイズを超えていなければならないことを特徴と
する、上記(21)に記載の製品。 (30)1組のストロークがジェスチャ入力としてカテ
ゴリ化されるように、1組のストロークのうちの最後の
入力ストロークがタップしきいサイズより小さくなけれ
ばならないことを特徴とする、上記(21)に記載の製
品。
ウェア・ブロック図である。
クチャ・ブロック図である。
力装置が使用可能な記号及び英字ジェスチャの一部を示
す図である。
性のあるジェスチャの一部を示す図である。
界ボックス・スコアの概念を示す図である。
界ボックス・スコアの概念を示す図である。
界ボックス・スコアの概念を示す図である。
きるようにするために可能なユーザ・インタフェースの
1つを示す図である。
きるようにするために可能なユーザ・インタフェースの
1つを示す図である。
プリケーションに送られる認識結果のデータ構造を示す
図である。
用する境界ボックスの矩形を示す図である。
別するために使用可能なタップと、許容タップ・サイズ
と、最小ジェスチャ・サイズとを示す図である。
れ図である。
図である。
字またはジェスチャを処理するためのプロセスを示す図
である。
を調整するための手順を示す図である。
る。
用する分離プロセス用の検査を示す図である。
用する分離プロセス用の検査を示す図である。
用する分離プロセス用の検査を示す図である。
ロセスを示す図である。
めの流れ図である。
の手書き入力パッドを示す図である。
る手書き文字を含む編集ウィンドウを示す図である。
ンドウを示す図である。
ある。
ある。
よって訂正される手書き文字入力を示す一連のウィンド
ウを示す図である。
よって訂正される手書き文字入力を示す一連のウィンド
ウを示す図である。
よって訂正される手書き文字入力を示す一連のウィンド
ウを示す図である。
入力パッドを示す図であり、基線が傾斜しているので、
単語内の各文字の境界ボックスを使用することによって
平均文字高が計算される。
Claims (30)
- 【請求項1】ペンベース・コンピュータでジェスチャと
手書き文字入力とを区別するために方法において、 コンピュータへのペン入力装置から1組のストロークを
検出するステップと、 各ストロークのサイズを計算するステップと、 所定の数のストロークがジェスチャしきいサイズを超え
る場合に1組のストロークをジェスチャ入力としてカテ
ゴリ化するステップとを含むことを特徴とする方法。 - 【請求項2】ユーザがジェスチャしきいサイズを手作業
で設定できるようにするステップをさらに含むことを特
徴とする、請求項1に記載の方法。 - 【請求項3】ユーザがジェスチャしきいサイズを手作業
で設定していない場合にデフォルト・ジェスチャしきい
サイズを使用するステップをさらに含むことを特徴とす
る、請求項2に記載の方法。 - 【請求項4】手書き文字入力設定に関する情報を求め
て、コンピュータ内に常駐するアプリケーションに対し
て問合せを行うステップと、 ユーザがジェスチャしきいサイズを手作業で設定してい
ない場合に手書き文字入力設定に基づいてデフォルト・
ジェスチャしきいサイズを計算するステップとをさらに
含むことを特徴とする、請求項2に記載の方法。 - 【請求項5】手書き文字入力の平均サイズを求めて、コ
ンピュータ・システムのユーザのために手書き文字入力
を分析するステップと、 手書き文字入力の平均サイズに基づいてデフォルト・ジ
ェスチャしきいサイズを計算するステップとをさらに含
むことを特徴とする、請求項2に記載の方法。 - 【請求項6】計算したデフォルト・ジェスチャしきいサ
イズとともにユーザIDを格納するステップと、 複数のユーザが個々の計算したデフォルト・ジェスチャ
しきいサイズを有するように、第2のユーザのために前
記分析ステップ、計算ステップ、格納ステップを繰り返
すステップとをさらに含むことを特徴とする、請求項5
に記載の方法。 - 【請求項7】前記分析ステップが、 テキスト文字として認識された各組のストロークの周囲
に境界ボックスを描くステップと、 所与の単語内の各テキスト文字の境界ボックスを単一の
単語境界ボックスに結合するステップと、 複数の単語境界ボックスの高さを測定するステップと、 平均手書き文字高さを求めて、単語境界ボックスの高さ
を平均化するステップとをさらに含むことを特徴とす
る、請求項5に記載の方法。 - 【請求項8】ユーザが斜線に沿って手書き文字を入力す
ることを特徴とする、請求項7に記載の方法。 - 【請求項9】前記分析ステップから無関係なストローク
が省略されることを特徴とする、請求項5に記載の方
法。 - 【請求項10】1組のストロークがジェスチャ入力とし
てカテゴリ化されるように、すべてのストロークがジェ
スチャしきいサイズを超えていなければならないことを
特徴とする、請求項1に記載の方法。 - 【請求項11】1組のストロークがジェスチャ入力とし
てカテゴリ化されるように、1組のストロークのうちの
最後の入力ストロークがタップしきいサイズより小さく
なければならないことを特徴とする、請求項1に記載の
方法。 - 【請求項12】プロセッサと、メモリと、ディスプレイ
と、ペン入力装置とを含み、ジェスチャと手書き文字入
力とを区別するためのシステムにおいて、 コンピュータへのペン入力装置から1組のストロークを
検出する手段と、 各ストロークのサイズを計算する手段と、 所定の数のストロークがジェスチャしきいサイズを超え
る場合に1組のストロークをジェスチャ入力としてカテ
ゴリ化する手段とをさらに含むことを特徴とするシステ
ム。 - 【請求項13】ユーザがジェスチャしきいサイズを手作
業で設定できるようにする手段と、 ユーザがジェスチャしきいサイズを手作業で設定してい
ない場合にデフォルト・ジェスチャしきいサイズを使用
する手段をさらに含むことを特徴とする、請求項12に
記載のシステム。 - 【請求項14】手書き文字入力設定に関する情報を求め
て、コンピュータ内に常駐するアプリケーションに対し
て問合せを行う手段と、 ユーザがジェスチャしきいサイズを手作業で設定してい
ない場合に手書き文字入力設定に基づいてデフォルト・
ジェスチャしきいサイズを計算する手段とをさらに含む
ことを特徴とする、請求項13に記載のシステム。 - 【請求項15】手書き文字入力の平均サイズを求めて、
コンピュータ・システムのユーザのために手書き文字入
力を分析する手段と、 手書き文字入力の平均サイズに基づいてデフォルト・ジ
ェスチャしきいサイズを計算する手段とをさらに含むこ
とを特徴とする、請求項13に記載のシステム。 - 【請求項16】計算したデフォルト・ジェスチャしきい
サイズとともにユーザIDを格納する手段をさらに含
み、 複数のユーザが個々の計算したデフォルト・ジェスチャ
しきいサイズを有するように、前記分析手段、計算手
段、格納手段によって第2のユーザの手書き文字が処理
されることを特徴とする、請求項15に記載のシステ
ム。 - 【請求項17】前記分析手段が、 テキスト文字として認識された各組のストロークの周囲
に境界ボックスを描く手段と、 所与の単語内の各テキスト文字の境界ボックスを単一の
単語境界ボックスに結合する手段と、 複数の単語境界ボックスの高さを測定する手段と、 平均手書き文字高さを求めて、単語境界ボックスの高さ
を平均化する手段とをさらに含むことを特徴とする、請
求項15に記載のシステム。 - 【請求項18】ユーザが斜線に沿って手書き文字を入力
することを特徴とする、請求項17に記載のシステム。 - 【請求項19】前記分析ステップから無関係なストロー
クが省略されることを特徴とする、請求項15に記載の
システム。 - 【請求項20】1組のストロークがジェスチャ入力とし
てカテゴリ化されるように、すべてのストロークがジェ
スチャしきいサイズを超えていなければならないことを
特徴とする、請求項12に記載のシステム。 - 【請求項21】コンピュータで読取り可能な媒体上にあ
って、コンピュータへのジェスチャと手書き文字入力と
を区別するためのコンピュータ・プログラム製品におい
て、 コンピュータへのペン入力装置から1組のストロークを
検出する手段と、 各ストロークのサイズを計算する手段と、 所定の数のストロークがジェスチャしきいサイズを超え
る場合に1組のストロークをジェスチャ入力としてカテ
ゴリ化する手段とをさらに含むことを特徴とするコンピ
ュータ・プログラム製品。 - 【請求項22】ユーザがジェスチャしきいサイズを手作
業で設定できるようにする手段と、 ユーザがジェスチャしきいサイズを手作業で設定してい
ない場合にデフォルト・ジェスチャしきいサイズを使用
する手段をさらに含むことを特徴とする、請求項21に
記載の製品。 - 【請求項23】手書き文字入力設定に関する情報を求め
て、コンピュータ内に常駐するアプリケーションに対し
て問合せを行う手段と、 ユーザがジェスチャしきいサイズを手作業で設定してい
ない場合に手書き文字入力設定に基づいてデフォルト・
ジェスチャしきいサイズを計算する手段とをさらに含む
ことを特徴とする、請求項22に記載の製品。 - 【請求項24】手書き文字入力の平均サイズを求めて、
コンピュータ・システムのユーザのために手書き文字入
力を分析する手段と、 手書き文字入力の平均サイズに基づいてデフォルト・ジ
ェスチャしきいサイズを計算する手段とをさらに含むこ
とを特徴とする、請求項22に記載の製品。 - 【請求項25】計算したデフォルト・ジェスチャしきい
サイズとともにユーザIDを格納する手段をさらに含
み、 複数のユーザが個々の計算したデフォルト・ジェスチャ
しきいサイズを有するように、前記分析手段、計算手
段、格納手段によって第2のユーザの手書き文字が処理
されることを特徴とする、請求項24に記載の製品。 - 【請求項26】前記分析手段が、 テキスト文字として認識された各組のストロークの周囲
に境界ボックスを描く手段と、 所与の単語内の各テキスト文字の境界ボックスを単一の
単語境界ボックスに結合する手段と、 複数の単語境界ボックスの高さを測定する手段と、 平均手書き文字高さを求めて、単語境界ボックスの高さ
を平均化する手段とをさらに含むことを特徴とする、請
求項24に記載の製品。 - 【請求項27】ユーザが斜線に沿って手書き文字を入力
することを特徴とする、請求項26に記載の製品。 - 【請求項28】前記分析ステップから無関係なストロー
クが省略されることを特徴とする、請求項27に記載の
製品。 - 【請求項29】1組のストロークがジェスチャ入力とし
てカテゴリ化されるように、すべてのストロークがジェ
スチャしきいサイズを超えていなければならないことを
特徴とする、請求項21に記載の製品。 - 【請求項30】1組のストロークがジェスチャ入力とし
てカテゴリ化されるように、1組のストロークのうちの
最後の入力ストロークがタップしきいサイズより小さく
なければならないことを特徴とする、請求項21に記載
の製品。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/665,129 US5862256A (en) | 1996-06-14 | 1996-06-14 | Distinguishing gestures from handwriting in a pen based computer by size discrimination |
US08/665129 | 1996-06-14 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH1083245A true JPH1083245A (ja) | 1998-03-31 |
JP3762818B2 JP3762818B2 (ja) | 2006-04-05 |
Family
ID=24668836
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP14496297A Expired - Lifetime JP3762818B2 (ja) | 1996-06-14 | 1997-06-03 | コンピュータでジェスチャと手書き文字を区別する方法及びシステム |
Country Status (2)
Country | Link |
---|---|
US (1) | US5862256A (ja) |
JP (1) | JP3762818B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006085703A (ja) * | 2004-09-13 | 2006-03-30 | Microsoft Corp | フリックジェスチャ |
JP2010009426A (ja) * | 2008-06-27 | 2010-01-14 | Canon Inc | 情報処理装置及び情報処理方法 |
KR20140107135A (ko) * | 2013-02-27 | 2014-09-04 | 가시오게산키 가부시키가이샤 | 제스처 조작을 검출하는 데이터 처리 장치 |
Families Citing this family (107)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8352400B2 (en) | 1991-12-23 | 2013-01-08 | Hoffberg Steven M | Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore |
EP1717677B1 (en) * | 1998-01-26 | 2015-06-17 | Apple Inc. | Method and apparatus for integrating manual input |
US6337698B1 (en) * | 1998-11-20 | 2002-01-08 | Microsoft Corporation | Pen-based interface for a notepad computer |
US6333995B1 (en) * | 1999-01-29 | 2001-12-25 | International Business Machines Corporation | System and methods for providing robust keyword selection in a personal digital notepad |
US7904187B2 (en) | 1999-02-01 | 2011-03-08 | Hoffberg Steven M | Internet appliance system and method |
US6384815B1 (en) * | 1999-02-24 | 2002-05-07 | Hewlett-Packard Company | Automatic highlighting tool for document composing and editing software |
US6396523B1 (en) | 1999-07-29 | 2002-05-28 | Interlink Electronics, Inc. | Home entertainment device remote control |
US6765557B1 (en) | 2000-04-10 | 2004-07-20 | Interlink Electronics, Inc. | Remote control having touch pad to screen mapping |
US6903730B2 (en) * | 2000-11-10 | 2005-06-07 | Microsoft Corporation | In-air gestures for electromagnetic coordinate digitizers |
US6990639B2 (en) | 2002-02-07 | 2006-01-24 | Microsoft Corporation | System and process for controlling electronic components in a ubiquitous computing environment using multimodal integration |
US7925987B2 (en) * | 2002-05-14 | 2011-04-12 | Microsoft Corporation | Entry and editing of electronic ink |
US20030214531A1 (en) * | 2002-05-14 | 2003-11-20 | Microsoft Corporation | Ink input mechanisms |
US8166388B2 (en) | 2002-05-14 | 2012-04-24 | Microsoft Corporation | Overlaying electronic ink |
US7096432B2 (en) * | 2002-05-14 | 2006-08-22 | Microsoft Corporation | Write anywhere tool |
US20030214553A1 (en) * | 2002-05-14 | 2003-11-20 | Microsoft Corporation | Ink regions in an overlay control |
US7158675B2 (en) * | 2002-05-14 | 2007-01-02 | Microsoft Corporation | Interfacing with ink |
US7072514B1 (en) * | 2003-02-06 | 2006-07-04 | The United States Of America As Represented By The National Security Agency | Method of distinguishing handwritten and machine-printed images |
US20040240739A1 (en) * | 2003-05-30 | 2004-12-02 | Lu Chang | Pen gesture-based user interface |
US7424154B2 (en) * | 2003-11-10 | 2008-09-09 | Microsoft Corporation | Boxed and lined input panel |
US8442331B2 (en) * | 2004-02-15 | 2013-05-14 | Google Inc. | Capturing text from rendered documents using supplemental information |
US7707039B2 (en) | 2004-02-15 | 2010-04-27 | Exbiblio B.V. | Automatic modification of web pages |
US20060053097A1 (en) * | 2004-04-01 | 2006-03-09 | King Martin T | Searching and accessing documents on private networks for use with captures from rendered documents |
US7812860B2 (en) * | 2004-04-01 | 2010-10-12 | Exbiblio B.V. | Handheld device for capturing text from both a document printed on paper and a document displayed on a dynamic display device |
US20060041484A1 (en) * | 2004-04-01 | 2006-02-23 | King Martin T | Methods and systems for initiating application processes by data capture from rendered documents |
US10635723B2 (en) | 2004-02-15 | 2020-04-28 | Google Llc | Search engines and systems with handheld document data capture devices |
US20060122983A1 (en) * | 2004-12-03 | 2006-06-08 | King Martin T | Locating electronic instances of documents based on rendered instances, document fragment digest generation, and digest based document fragment determination |
US20060041605A1 (en) * | 2004-04-01 | 2006-02-23 | King Martin T | Determining actions involving captured information and electronic content associated with rendered documents |
US9143638B2 (en) | 2004-04-01 | 2015-09-22 | Google Inc. | Data capture from rendered documents using handheld device |
US20060098900A1 (en) | 2004-09-27 | 2006-05-11 | King Martin T | Secure data gathering from rendered documents |
US7990556B2 (en) * | 2004-12-03 | 2011-08-02 | Google Inc. | Association of a portable scanner with input/output and storage devices |
US20080313172A1 (en) * | 2004-12-03 | 2008-12-18 | King Martin T | Determining actions involving captured information and electronic content associated with rendered documents |
US20060081714A1 (en) * | 2004-08-23 | 2006-04-20 | King Martin T | Portable scanning device |
WO2008028674A2 (en) * | 2006-09-08 | 2008-03-13 | Exbiblio B.V. | Optical scanners, such as hand-held optical scanners |
US7894670B2 (en) | 2004-04-01 | 2011-02-22 | Exbiblio B.V. | Triggering actions in response to optically or acoustically capturing keywords from a rendered document |
US8081849B2 (en) * | 2004-12-03 | 2011-12-20 | Google Inc. | Portable scanning and memory device |
US20070300142A1 (en) * | 2005-04-01 | 2007-12-27 | King Martin T | Contextual dynamic advertising based upon captured rendered text |
US8146156B2 (en) | 2004-04-01 | 2012-03-27 | Google Inc. | Archive of text captures from rendered documents |
US9008447B2 (en) * | 2004-04-01 | 2015-04-14 | Google Inc. | Method and system for character recognition |
US9116890B2 (en) | 2004-04-01 | 2015-08-25 | Google Inc. | Triggering actions in response to optically or acoustically capturing keywords from a rendered document |
US8713418B2 (en) * | 2004-04-12 | 2014-04-29 | Google Inc. | Adding value to a rendered document |
US8620083B2 (en) | 2004-12-03 | 2013-12-31 | Google Inc. | Method and system for character recognition |
US8874504B2 (en) * | 2004-12-03 | 2014-10-28 | Google Inc. | Processing techniques for visual capture data from a rendered document |
US8489624B2 (en) | 2004-05-17 | 2013-07-16 | Google, Inc. | Processing techniques for text capture from a rendered document |
US8346620B2 (en) * | 2004-07-19 | 2013-01-01 | Google Inc. | Automatic modification of web pages |
US7577925B2 (en) * | 2005-04-08 | 2009-08-18 | Microsoft Corporation | Processing for distinguishing pen gestures and dynamic self-calibration of pen-based computing systems |
US20070064004A1 (en) * | 2005-09-21 | 2007-03-22 | Hewlett-Packard Development Company, L.P. | Moving a graphic element |
CN103778635B (zh) * | 2006-05-11 | 2016-09-28 | 苹果公司 | 用于处理数据的方法和装置 |
CN101765840B (zh) * | 2006-09-15 | 2013-01-23 | 谷歌公司 | 纸质与电子文档中的注释的捕获及显示 |
US7855718B2 (en) * | 2007-01-03 | 2010-12-21 | Apple Inc. | Multi-touch input discrimination |
US8130203B2 (en) | 2007-01-03 | 2012-03-06 | Apple Inc. | Multi-touch input discrimination |
US8269727B2 (en) | 2007-01-03 | 2012-09-18 | Apple Inc. | Irregular input identification |
US20110035662A1 (en) * | 2009-02-18 | 2011-02-10 | King Martin T | Interacting with rendered documents using a multi-function mobile device, such as a mobile phone |
US20110145068A1 (en) * | 2007-09-17 | 2011-06-16 | King Martin T | Associating rendered advertisements with digital content |
TWI343544B (en) * | 2007-09-26 | 2011-06-11 | Inventec Appliances Corp | A handwriting record device |
US7502017B1 (en) | 2007-11-20 | 2009-03-10 | International Business Machines Corporation | Handwriting recognizer user interface methods |
US8166421B2 (en) * | 2008-01-14 | 2012-04-24 | Primesense Ltd. | Three-dimensional user interface |
US8933876B2 (en) | 2010-12-13 | 2015-01-13 | Apple Inc. | Three dimensional user interface session control |
US9035876B2 (en) | 2008-01-14 | 2015-05-19 | Apple Inc. | Three-dimensional user interface session control |
US20100095250A1 (en) * | 2008-10-15 | 2010-04-15 | Raytheon Company | Facilitating Interaction With An Application |
US20100100854A1 (en) * | 2008-10-16 | 2010-04-22 | Dell Products L.P. | Gesture operation input system |
US8447066B2 (en) | 2009-03-12 | 2013-05-21 | Google Inc. | Performing actions based on capturing information from rendered documents, such as documents under copyright |
US8990235B2 (en) * | 2009-03-12 | 2015-03-24 | Google Inc. | Automatically providing content associated with captured information, such as information captured in real-time |
WO2010103482A2 (en) * | 2009-03-13 | 2010-09-16 | Primesense Ltd. | Enhanced 3d interfacing for remote devices |
KR101522375B1 (ko) * | 2009-03-19 | 2015-05-21 | 구글 인코포레이티드 | 입력 방법 편집기 |
WO2010105428A1 (en) | 2009-03-19 | 2010-09-23 | Google Inc. | Input method editor |
US8565479B2 (en) * | 2009-08-13 | 2013-10-22 | Primesense Ltd. | Extraction of skeletons from 3D maps |
US9081799B2 (en) * | 2009-12-04 | 2015-07-14 | Google Inc. | Using gestalt information to identify locations in printed information |
US9323784B2 (en) * | 2009-12-09 | 2016-04-26 | Google Inc. | Image search using text-based elements within the contents of images |
US20110164032A1 (en) * | 2010-01-07 | 2011-07-07 | Prime Sense Ltd. | Three-Dimensional User Interface |
US9268404B2 (en) * | 2010-01-08 | 2016-02-23 | Microsoft Technology Licensing, Llc | Application gesture interpretation |
US8787663B2 (en) * | 2010-03-01 | 2014-07-22 | Primesense Ltd. | Tracking body parts by combined color image and depth processing |
US8594425B2 (en) | 2010-05-31 | 2013-11-26 | Primesense Ltd. | Analysis of three-dimensional scenes |
JP5791131B2 (ja) | 2010-07-20 | 2015-10-07 | アップル インコーポレイテッド | 自然な相互作用のための相互作用的現実拡張 |
US9201501B2 (en) | 2010-07-20 | 2015-12-01 | Apple Inc. | Adaptive projector |
US8582867B2 (en) | 2010-09-16 | 2013-11-12 | Primesense Ltd | Learning-based pose estimation from depth maps |
US8959013B2 (en) | 2010-09-27 | 2015-02-17 | Apple Inc. | Virtual keyboard for a non-tactile three dimensional user interface |
KR20120040970A (ko) * | 2010-10-20 | 2012-04-30 | 삼성전자주식회사 | 디스플레이에서 제스쳐를 인식하는 방법 및 그 장치 |
US8872762B2 (en) | 2010-12-08 | 2014-10-28 | Primesense Ltd. | Three dimensional user interface cursor control |
CN106125921B (zh) | 2011-02-09 | 2019-01-15 | 苹果公司 | 3d映射环境中的凝视检测 |
US9377865B2 (en) | 2011-07-05 | 2016-06-28 | Apple Inc. | Zoom-based gesture user interface |
US9459758B2 (en) | 2011-07-05 | 2016-10-04 | Apple Inc. | Gesture-based interface with enhanced features |
US8881051B2 (en) | 2011-07-05 | 2014-11-04 | Primesense Ltd | Zoom-based gesture user interface |
US9030498B2 (en) | 2011-08-15 | 2015-05-12 | Apple Inc. | Combining explicit select gestures and timeclick in a non-tactile three dimensional user interface |
US9122311B2 (en) | 2011-08-24 | 2015-09-01 | Apple Inc. | Visual feedback for tactile and non-tactile user interfaces |
US9218063B2 (en) | 2011-08-24 | 2015-12-22 | Apple Inc. | Sessionless pointing user interface |
US9002099B2 (en) | 2011-09-11 | 2015-04-07 | Apple Inc. | Learning-based estimation of hand and finger pose |
US9229534B2 (en) | 2012-02-28 | 2016-01-05 | Apple Inc. | Asymmetric mapping for tactile and non-tactile user interfaces |
US11169611B2 (en) | 2012-03-26 | 2021-11-09 | Apple Inc. | Enhanced virtual touchpad |
US9047507B2 (en) | 2012-05-02 | 2015-06-02 | Apple Inc. | Upper-body skeleton extraction from depth maps |
US9619036B2 (en) | 2012-05-11 | 2017-04-11 | Comcast Cable Communications, Llc | System and methods for controlling a user experience |
KR20140014510A (ko) * | 2012-07-24 | 2014-02-06 | 삼성전자주식회사 | 음성 인식에 의하여 형성된 문자의 편집 방법 및 그 단말 |
US9019267B2 (en) | 2012-10-30 | 2015-04-28 | Apple Inc. | Depth mapping with enhanced resolution |
JP2014115894A (ja) * | 2012-12-11 | 2014-06-26 | Canon Inc | 表示装置 |
TWI563397B (en) * | 2012-12-20 | 2016-12-21 | Chiun Mai Comm Systems Inc | Method and system for inserting image objects to a note software |
US9836154B2 (en) * | 2013-01-24 | 2017-12-05 | Nook Digital, Llc | Selective touch scan area and reporting techniques |
US9256798B2 (en) * | 2013-01-31 | 2016-02-09 | Aurasma Limited | Document alteration based on native text analysis and OCR |
KR101337872B1 (ko) * | 2013-04-04 | 2013-12-06 | 주식회사 디오텍 | 잉크 텍스트 데이터 편집장치 및 잉크 텍스트 데이터 편집방법 |
US9898187B2 (en) * | 2013-06-09 | 2018-02-20 | Apple Inc. | Managing real-time handwriting recognition |
US20160154555A1 (en) * | 2014-12-02 | 2016-06-02 | Lenovo (Singapore) Pte. Ltd. | Initiating application and performing function based on input |
US10043279B1 (en) | 2015-12-07 | 2018-08-07 | Apple Inc. | Robust detection and classification of body parts in a depth map |
US10248880B1 (en) * | 2016-06-06 | 2019-04-02 | Boston Inventions, LLC | Method of processing and recognizing hand-written characters |
DK179374B1 (en) | 2016-06-12 | 2018-05-28 | Apple Inc | Handwriting keyboard for monitors |
US10366278B2 (en) | 2016-09-20 | 2019-07-30 | Apple Inc. | Curvature-based face detector |
US10719230B2 (en) * | 2018-09-27 | 2020-07-21 | Atlassian Pty Ltd | Recognition and processing of gestures in a graphical user interface using machine learning |
US11194467B2 (en) | 2019-06-01 | 2021-12-07 | Apple Inc. | Keyboard management user interfaces |
US11341569B2 (en) * | 2019-10-25 | 2022-05-24 | 7-Eleven, Inc. | System and method for populating a virtual shopping cart based on video of a customer's shopping session at a physical store |
CN111475234B (zh) * | 2020-04-10 | 2023-01-10 | 苏州浪潮智能科技有限公司 | 一种字符串传递方法、装置、计算机及可读存储介质 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5252951A (en) * | 1989-04-28 | 1993-10-12 | International Business Machines Corporation | Graphical user interface with gesture recognition in a multiapplication environment |
US5361310A (en) * | 1990-01-19 | 1994-11-01 | Fujitsu Limited | Handwriting entry processing system using keyboard and mouse interfaces requiring no modification of an application program |
EP0450196B1 (en) * | 1990-04-02 | 1998-09-09 | Koninklijke Philips Electronics N.V. | Data processing system using gesture-based input data |
JPH0736142B2 (ja) * | 1991-10-10 | 1995-04-19 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 移動指示手段の運動停止を認識する方法および情報処理装置 |
US5455901A (en) * | 1991-11-12 | 1995-10-03 | Compaq Computer Corporation | Input device with deferred translation |
US5398310A (en) * | 1992-04-13 | 1995-03-14 | Apple Computer, Incorporated | Pointing gesture based computer note pad paging and scrolling interface |
US5583542A (en) * | 1992-05-26 | 1996-12-10 | Apple Computer, Incorporated | Method for deleting objects on a computer display |
US5390281A (en) * | 1992-05-27 | 1995-02-14 | Apple Computer, Inc. | Method and apparatus for deducing user intent and providing computer implemented services |
US5592566A (en) * | 1992-05-27 | 1997-01-07 | Apple Computer, Incorporated | Method and apparatus for computerized recognition |
US5463696A (en) * | 1992-05-27 | 1995-10-31 | Apple Computer, Inc. | Recognition system and method for user inputs to a computer system |
US5566248A (en) * | 1993-05-10 | 1996-10-15 | Apple Computer, Inc. | Method and apparatus for a recognition editor and routine interface for a computer system |
US5517578A (en) * | 1993-05-20 | 1996-05-14 | Aha! Software Corporation | Method and apparatus for grouping and manipulating electronic representations of handwriting, printing and drawings |
US5583946A (en) * | 1993-09-30 | 1996-12-10 | Apple Computer, Inc. | Method and apparatus for recognizing gestures on a computer system |
US5682439A (en) * | 1995-08-07 | 1997-10-28 | Apple Computer, Inc. | Boxed input correction system and method for pen based computer systems |
-
1996
- 1996-06-14 US US08/665,129 patent/US5862256A/en not_active Expired - Lifetime
-
1997
- 1997-06-03 JP JP14496297A patent/JP3762818B2/ja not_active Expired - Lifetime
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006085703A (ja) * | 2004-09-13 | 2006-03-30 | Microsoft Corp | フリックジェスチャ |
US9417701B2 (en) | 2004-09-13 | 2016-08-16 | Microsoft Technology Licensing, Llc | Flick gesture |
JP2010009426A (ja) * | 2008-06-27 | 2010-01-14 | Canon Inc | 情報処理装置及び情報処理方法 |
KR20140107135A (ko) * | 2013-02-27 | 2014-09-04 | 가시오게산키 가부시키가이샤 | 제스처 조작을 검출하는 데이터 처리 장치 |
JP2014164695A (ja) * | 2013-02-27 | 2014-09-08 | Casio Comput Co Ltd | データ処理装置及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
JP3762818B2 (ja) | 2006-04-05 |
US5862256A (en) | 1999-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3762818B2 (ja) | コンピュータでジェスチャと手書き文字を区別する方法及びシステム | |
JP3664571B2 (ja) | コンピュータでジェスチャと手書き文字を区別する方法及びシステム | |
US9911052B2 (en) | System and method for superimposed handwriting recognition technology | |
US5768418A (en) | Unintended results detection in a pen-based computer system | |
JP2006260573A (ja) | 単語または文字の境界ベースのスクラッチアウトジェスチャ認識 | |
KR101061317B1 (ko) | 알파벳 텍스트 입력 방법 및 장치 | |
US10007859B2 (en) | System and method for superimposed handwriting recognition technology | |
US6292857B1 (en) | Method and mechanism for coordinating input of asynchronous data | |
JP2018515817A (ja) | 視線追跡と音声認識とを組み合わせることにより制御を改善する方法 | |
KR20180119647A (ko) | 문자열에 문자를 삽입하기 위한 방법 및 대응하는 디지털 디바이스 | |
US7142715B2 (en) | Arabic handwriting recognition using feature matching | |
Zhang et al. | Gestkeyboard: enabling gesture-based interaction on ordinary physical keyboard | |
US20190196712A1 (en) | Systems and Methods for Facilitating Data Entry into Small Screen Electronic Devices | |
JP6735775B2 (ja) | 重畳手書き入力認識技術のためのシステム及び方法 | |
JP2023043910A (ja) | 文字列抽出装置、文字列抽出方法、および文字列抽出プログラム | |
JP7285018B2 (ja) | プログラム、誤り文字検出装置及び誤り文字検出方法 | |
JP2991909B2 (ja) | 文書処理装置および文書処理方法 | |
JPH0684019A (ja) | 手書き入力文字処理装置における句点認識装置 | |
JPH07239915A (ja) | オンライン手書き文字列切り出し認識装置 | |
JPH05165817A (ja) | 文書処理装置 | |
JPH06208655A (ja) | オンライン文字認識装置 | |
JP2001344566A (ja) | 手書き文字認識システム、手書き文字認識における異サイズ文字認識方法および記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051202 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060116 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090120 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100120 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100120 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110120 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120120 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120120 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120120 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120120 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120120 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130120 Year of fee payment: 7 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
S202 | Request for registration of non-exclusive licence |
Free format text: JAPANESE INTERMEDIATE CODE: R315201 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130120 Year of fee payment: 7 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140120 Year of fee payment: 8 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |