(57)【要約】【課題】  分類タイプ検出器および／または文脈情報を利用して、注釈ストロークを認識し、アンカーを設定して、リフロー可能なデジタル注釈を与えるシステマティックな手段を提供すること。【解決手段】  これにより、デジタル文書内の注釈のアーカイブ、共有、検索が行え、また操作も簡単に行える。本発明の一実施例では、注釈認識方法により、グループ化され、分類され、文書内の基本テキストおよび／または点へのアンカーが作成されるストロークの入力が得られる。本発明の他の実施例では、言語学的な内容、領域特有の情報、アンカーの文脈、および文書文脈を利用して、注釈を正しく認識しやすくする。【選択図】        図４
2006085695.tif 000002
【特許請求の範囲】
【請求項１】
認識を容易に行えるようにするシステムであって、
デジタルインクストロークを含む少なくとも１つの入力を受信するコンポーネントと、
前記入力からの前記デジタルインクストロークの少なくとも１つの部分集合を識別し、少なくとも１つの認識済み注釈にグループ化する認識コンポーネントとを備えることを特徴とするシステム。
【請求項２】
前記認識コンポーネントは、前記注釈をリアルタイムで認識することを特徴とする請求項１に記載のシステム。
【請求項３】
前記認識コンポーネントは、バックグラウンドプロセスを使用して前記認識済み注釈を取得することを特徴とする請求項１に記載のシステム。
【請求項４】
前記注釈を拡張可能タイプのグループの少なくとも１つのタイプに分類する分類コンポーネントをさらに備えることを特徴とする請求項１に記載のシステム。
【請求項５】
前記分類コンポーネントは、少なくとも１つのタイプ検出器を使用することを特徴とする請求項４に記載のシステム。
【請求項６】
前記注釈を前記入力の適切な部分に固定するアンカー作成コンポーネントを備えることを特徴とする請求項１に記載のシステム。
【請求項７】
注釈アンカー点を使用して、前記入力が操作されるときに注釈を自動的に、および論理的にリフローするリフローコンポーネントを備えることを特徴とする請求項６に記載のシステム。
【請求項８】
前記入力は、デジタルライティングデバイスからのデジタル情報および走査された入力からのデジタル情報からなるグループから選択された少なくとも１つの情報を備えることを特徴とする請求項１に記載のシステム。
【請求項９】
前記入力は、前記デジタルインクストロークに関係する文書文脈をさらに含むことを特徴とする請求項１に記載のシステム。
【請求項１０】
前記認識コンポーネントは、前記文書文脈を使用して少なくとも１つの注釈を認識することを容易にすることを特徴とする請求項９に記載のシステム。
【請求項１１】
前記文章文脈は、ツリー構造を備えることを特徴とする請求項９に記載のシステム。
【請求項１２】
前記認識コンポーネントは、入力が要約されるときに認識済み注釈位置を識別するための認識済み注釈用の注釈インジケータをさらに提供することを特徴とする請求項１に記載のシステム。
【請求項１３】
前記入力の言語的文脈を使用して前記認識コンポーネントが少なくとも１つの注釈の適切な認識を容易に行えるようにする言語分析コンポーネントをさらに備えることを特徴とする請求項１に記載のシステム。
【請求項１４】
前記認識コンポーネントは、領域特有の情報をさらに使用して少なくとも１つの認識済み注釈を判別することを容易にすることを特徴とする請求項１に記載のシステム。
【請求項１５】
前記領域特有の情報は、ユーザ特有の情報、専門ジャンル情報、および注釈ガイドライン情報を含むグループから選択された少なくとも１つの情報を備えることを特徴とする請求項１４に記載のシステム。
【請求項１６】
前記認識済み注釈により指示された少なくとも１つのアクションを決定するアクション決定コンポーネントをさらに備えることを特徴とする請求項１に記載のシステム。
【請求項１７】
説明されたストロークの数を最大にし、全体的信頼度を最大にし、前記入力に対する仮説の数を最小にすることにより前記認識コンポーネントを容易にする解決コンポーネントをさらに備えることを特徴とする請求項１に記載のシステム。
【請求項１８】
前記解決コンポーネントは、αおよびβを経験的に求めた重みとして、式
【数１】
2006085695.tif 000021
により与えられるエネルギー関数を使用することで注釈の認識を最適化することを特徴とする請求項１７に記載のシステム。
【請求項１９】
前記解決コンポーネントは、ダイナミックプログラムをさらに使用して、前記エネルギー関数の解の決定（ｒｅｓｏｌｕｔｉｏｎ）を容易にすることを特徴とする請求項１８に記載のシステム。
【請求項２０】
認識を容易に行えるようにする方法であって、
デジタルインクストロークを含む少なくとも１つの入力を受信することと、
前記入力からの前記デジタルインクストロークの少なくとも一つの部分集合を識別し、少なくとも１つの認識済み注釈にグループ化することとを備えることを特徴とする方法。
【請求項２１】
前記デジタルインクストロークの前記部分集合の前記識別およびグループ化は、リアルタイムで実行されて認識済み注釈を形成することを特徴とする請求項２０に記載の方法。
【請求項２２】
前記注釈を拡張可能タイプのグループの少なくとも１つのタイプに分類することをさらに備えることを特徴とする請求項２０に記載の方法。
【請求項２３】
拡張可能タイプの前記グループは、水平範囲タイプ、垂直範囲タイプ、コンテナタイプ、コネクタタイプ、記号タイプ、ライティングタイプ、およびドローイングタイプからなるグループから選択された少なくとも１つのタイプを含むことを特徴とする請求項２２に記載の方法。
【請求項２４】
少なくとも１つのタイプ検出器を使用して、前記注釈を分類することを容易にすることをさらに備えることを特徴とする請求項２２に記載の方法。
【請求項２５】
前記タイプ検出器は、水平範囲タイプ検出器、垂直範囲タイプ検出器、コンテナタイプ検出器、コネクタタイプ検出器、記号タイプ検出器、ライティングタイプ検出器、およびドローイングタイプ検出器からなるグループから選択された少なくとも１つの検出器を備えることを特徴とする請求項２４に記載の方法。
【請求項２６】
機械学習機能を使用して、前記注釈を分類することを容易にすることをさらに備えることを特徴とする請求項２２に記載の方法。
【請求項２７】
前記注釈を前記入力の適切な部分に固定することさらに備えることを特徴とする請求項２０に記載の方法。
【請求項２８】
注釈アンカー点を使用して、前記入力が操作されるときに注釈を自動的に、および論理的にリフローすることを備えること特徴とする請求項２７に記載の方法。
【請求項２９】
前記入力は、デジタルライティングデバイスからのデジタル情報およびスキャンされた入力からのデジタル情報からなるグループから選択された少なくとも１つの情報を備えることを特徴とする請求項２０に記載の方法。
【請求項３０】
前記入力は、スキャンプロセスから取得されたデジタルインクストロークを備えることを特徴とする請求項２０に記載の方法。
【請求項３１】
前記入力は、前記デジタルインクストロークに関係する文書文脈をさらに備えることを特徴とする請求項２０に記載の方法。
【請求項３２】
前記文書文脈を使用して、少なくとも１つの注釈を認識しやすくすることをさらに備えることを特徴とする請求項３１に記載の方法。
【請求項３３】
前記文脈は、ツリー構造を含むことを特徴とする請求項３１に記載の方法。
【請求項３４】
前記入力が要約されるときに認識済み注釈位置を識別するために前記認識済み注釈の注釈インジケータを与えることをさらに備えることを特徴とする請求項２０に記載の方法。
【請求項３５】
前記入力の言語的文脈を使用して、少なくとも１つの注釈の適切な認識を容易に行えるようにすることをさらに備えることを特徴とする請求項２０に記載の方法。
【請求項３６】
領域特有の情報を使用して、少なくとも１つの認識済み注釈を判別しやすくすることをさらに備えることを特徴とする請求項２０に記載の方法。
【請求項３７】
前記領域特有の情報は、アーキテクチャ図および地図からなるグループから選択された少なくとも１つの図を備えることを特徴とする請求項３６に記載の方法。
【請求項３８】
タイプされたテキスト、写真画像、幾何的ベクトルグラフィックス画像、デジタルインク手書き、およびデジタルインクドローイングからなるグループから選択された少なくとも１つの媒体タイプ上の注釈を認識することをさらに備えることを特徴とする請求項２０に記載の方法。
【請求項３９】
前記認識済み注釈により示される少なくとも１つのアクションを決定することをさらに備えることを特徴とする請求項２０に記載の方法。
【請求項４０】
複数の候補注釈を使用して、注釈の認識を容易に行えるようにすることをさらに備えることを特徴とする請求項２０に記載の方法。
【請求項４１】
前記デジタルインクストロークのスタイルおよび／または非スタイル特性を使用して、前記注釈の認識を容易にすることをさらに備えることを特徴とする請求項２０に記載の方法。
【請求項４２】
前記スタイル特性は、デジタルインクストロークの色、デジタルインクストロークの太さ、デジタルインクストロークを作成するために使用されるペン先スタイル、デジタルインクストロークの透明度、およびデジタルインクストロークの粘性度からなるグループから選択された少なくとも１つの特性を備えることを特徴とする請求項４１に記載の方法。
【請求項４３】
前記非スタイル特性は、デジタルインクストローク上のタイムスタンプおよびデジタルインクストロークを作成するために使用されるペン先カーソルのシリアル番号を含むグループから選択された少なくとも１つの特性を備えることを特徴とする請求項４１に記載の方法。
【請求項４４】
デジタルインクストロークに少なくとも一部は、基づいて検索可能な認識済み注釈を供給することをさらに備えることを特徴とする請求項２０に記載の方法。
【請求項４５】
協調フィルタリング手法を使用して、所望の検索結果の判別を容易にすることをさらに備えることを特徴とする請求項４４に記載の方法。
【請求項４６】
説明されたストロークの数を最大にし、全体的信頼度を最大にし、前記入力の仮説の個数を最小にすることにより前記認識済み注釈の判別を容易にする最適な解（ｒｅｓｏｌｕｔｉｏｎ）を決定することを含むことを特徴とする請求項２０に記載の方法。
【請求項４７】
エネルギー関数を使用して前記最適な解（ｒｅｓｏｌｕｔｉｏｎ）を決定することと、前記エネルギー関数は、αおよびβを経験的に求められた重みとして、式
【数２】
2006085695.tif 000022
により与えられることとをさらに備えることを特徴とする請求項４６に記載の方法。
【請求項４８】
ダイナミックプログラミングを使用して、前記エネルギー関数の解の決定（ｒｅｓｏｌｕｔｉｏｎ）を容易にすることをさらに備えることを特徴とする請求項４７に記載の方法。
【請求項４９】
認識を容易に行えるようにするシステムであって、
デジタルインクストロークを含む少なくとも１つの入力を受信する手段と、
前記入力からの前記デジタルインクストロークの少なくとも一つの部分集合を識別し、少なくとも１つの認識済み注釈にグループ化するための手段とを備えることを特徴とするシステム。
【請求項５０】
認識を容易にする、２つ以上のコンピュータコンポーネントの間で伝送されるデータパケットであって、少なくとも一部は、少なくとも１つの注釈を認識するために少なくとも一部はデジタルインクストローク入力を利用する注釈認識システムに関係する情報を備えることを特徴とするデータパケット。
【請求項５１】
請求項１に記載の前記システムのコンピュータ実行可能コンポーネントを保存していることを特徴とするコンピュータ可読媒体。
【請求項５２】
コンピュータ、サーバ、および携帯型電子デバイスからなるグループから選択された少なくとも１つのデバイスを備えることを特徴とする請求項２０に記載の方法を使用するデバイス。
【請求項５３】
コンピュータ、サーバ、および携帯型電子デバイスからなる前記グループから選択された少なくとも１つデバイスを備えることを特徴とする請求項１に記載のシステムを使用するデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、認識に関するものであり、より具体的には、テキストおよび／またはグラフィックスへのフリーフォームのデジタルインク注釈を認識するシステムおよび方法に関するものである。
【背景技術】
【０００２】
本出願は、２００４年８月２６日に出願され、番号１０／９２７，４５２を割り当てられた「ＳＰＡＴＩＡＬ  ＲＥＣＯＧＮＩＴＩＯＮ  ＡＮＤ  ＧＲＯＵＰＩＮＧ  ＯＦ  ＴＥＸＴ  ＡＮＤ  ＧＲＡＰＨＩＣＳ」という表題の同時係属および同時譲渡米国出願（整理番号ＭＳ３０８２１５．０１）、２００３年８月２１日に出願され、番号１０／６４４，９００を割り当てられた「ＥＬＥＣＴＲＯＮＩＣ  ＩＮＫ  ＰＲＯＣＥＳＳＩＮＧ」（整理番号ＭＳ３０５１５８．０１）、および２００２年５月１４日に出願され、番号１０／１４３，８６５を割り当てられた「ＨＡＮＤＷＲＩＴＩＮＧ  ＬＡＹＯＵＴ  ＡＮＡＬＹＳＩＳ  ＯＦ  ＦＲＥＥＦＯＲＭ  ＤＩＧＩＴＡＬ  ＩＮＫ  ＩＮＰＵＴ」（整理番号ＭＳ３００１５７．０１）に関する。上記の出願は、参照により本明細書に組み込まれる。
【０００３】
日々、人々は仕事および余暇活動にコンピュータを利用することに依存することが多くなってきている。しかし、コンピュータは、情報を処理するために不連続状態を識別する必要があるデジタルの領域で動作する。これは、出来事が決して完全に白または黒ではなく、常に灰色の陰影の中間にあるように思われる、はっきりとアナログな仕方で人間が機能するのとは反対である。したがって、デジタルとアナログとの間の主な違いは、デジタルでは時間に関してとびとびである不連続状態を必要とするが（例えば、異なるレベル）、アナログは時間に関して連続的であるという点である。当然のことながら人間はアナログ方式で活動しているので、コンピューティング技術は、前述の時間的違いにより生じる人間とコンピュータとのインターフェイス機能（例えば、デジタルコンピューティングインターフェイス）に関連する難しい問題を緩和する方向で発展してきている。
【０００４】
キーセットは、最初期のマンマシンインターフェイスデバイスの１つであり、従来からタイプライタで使用されてきた。しかし残念なことに、コンピュータを利用したくても、タイピング方法を誰もが知っているわけではない。これが、コンピューティング技術を十分に利用できるであろうコンピュータユーザの数を制限している。解決策の１つは、コンピューティングモニタから絵を選択して、コンピュータにタスクを実行させられるグラフィカルユーザインターフェイスの導入であった。そこで、コンピューティングシステムの制御は、「マウス」として知られる指し示して選ぶポインティング＆選択デバイスで行われるのがふつうだった。これにより、キーボードの使い方を学習しなくても、コンピューティング技術を利用できる人々の数が増えた。これらのタイプのデバイスによりコンピューティング技術の利用が容易になったとはいえ、手書きおよび手描きほど直観的でない。
【０００５】
まず最初に、タイプライターで打ち込まれた、または活字で組まれた既存の情報をコンピュータに入力する試みに技術が注ぎ込まれた。スキャナまたは光学式画像処理装置を使用し、絵の「２値化」が行われた（例えば、画像をコンピューティングシステムに入力する）。画像を２値化してコンピューティングシステム内に取り込めると、次に、印刷または活字で組まれた素材も２値化できるであろう。しかし、スキャンされたページの画像は、コンピューティングシステムに取り込まれても、テキストまたは記号として操作することができないが、それは、システムにより「認識」されない、つまり、システムはそのページを理解しないからである。文字も単語も「絵」であり、実際に編集可能なテキストでも記号でもない。テキストに関するこのような制限を克服するために、スキャンニング技術を利用してテキストを編集可能なページとして２値化する光学式文字認識（ＯＣＲ）技術が開発された。この技術は、ＯＣＲソフトウェアによりスキャンされた像を編集可能なテキストに変換できる特定のテキストフォントが使用されていた場合には十分うまく機能した。
【０００６】
その後、ＯＣＲ技術は、手書きの認識に利用してみても実用的と思われる精度レベルに到達した。このアプローチの問題は、直線状に配列された使用可能なタイプのフォントの制限された、または有限な選択部分（つまり、テキスト１行分）を認識するように既存のＯＣＲ技術をチューニングしたという点にある。したがって、既存のフォントのデータベースと比較することにより文字を「認識」することができた。フォントが理路整然としていない場合、ＯＣＲ技術は、変な、つまり「存在しない」文字を返し、テキストを認識していないことを示す。手書きは、このような問題のなおいっそう極端な場合であることが判明している。人が書く場合、その人特有のスタイルが筆跡に現れる。この独自性のゆえに、法律文書では署名が使用され、他人と区別する。したがって、まさにその本質から、手書きは、同じ文字であっても無限の形がある。明らかに、特定の１つの文字に対する手書きの考えられるあらゆる形を保存することは、不可能であることはわかるであろう。手書き認識を現実のものとするために他の手段を求める必要があった。
【０００７】
ふつうのことだが、ユーザは自分のシステムにより多くを要求し続けた。したがって、ページを認識するだけでは、最終的には、すべてのユーザを満足させるのには十分でなかった。デジタル時代になって、文書作業のある側面は簡単になったが、コンピュータシステムに入力する従来の手段を使用することを好むユーザが多い。このような理由から、携帯型デジタルライティングサーフェスデバイス（ｐｏｒｔａｂｌｅ  ｄｉｇｉｔａｌ  ｗｒｉｔｉｎｇ  ｓｕｒｆａｃｅ  ｄｅｖｉｃｅｓ）などのデバイスが作成された。これらのシステムにより、ユーザは、従来通り書くこともできるが、書き込みは専用のライティングサーフェス（ｗｒｉｔｉｎｇ  ｓｕｒｆａｃｅ）を介して自動的に２値化される。これにより、データエントリなどの作業で従来のキーボードタイピングに適応していないユーザでも、このタイプの技術を介してシステムを使用することができる。ユーザは、最終的に、それらのデバイスを使用して文書および図面の編集を始めた。これらのマーキングまたは「注釈」は、「固定」または絵形式のデジタル文書の一部となった。したがって、文書が同じままであり、操作されていない限り、注釈付きのマークは基本テキスト上に残った。しかし、予想できるように、異なるワードプロセッサまたは異なる画面解像度でデジタル文書を開くと、その文書はレイアウトとサイズが変化することになる。このため、注釈は離ればなれになり、文書の他の領域に適用するのが不適切になる。この結果、マークの意味に大きな混乱が生じ、デジタル注釈の適用性がひどく制限される。ユーザは、編集コメント、図面挿入、および他の注釈が適所に残り、誰でも文書を取り出して、コメントについて作成者が意図したのと同じ解釈を施すことができることを納得できなければならない。
【０００８】
【特許文献１】２００４年８月２６日に出願され、シリアル番号１０／９２７，４５２を割り当てられた「ＳＰＡＴＩＡＬ  ＲＥＣＯＧＮＩＴＩＯＮ  ＡＮＤ  ＧＲＯＵＰＩＮＧ  ＯＦ  ＴＥＸＴ  ＡＮＤ  ＧＲＡＰＨＩＣＳ」という表題の同時係属および同時譲渡出願（整理番号ＭＳ３０８２１５．０１）
【特許文献２】２００３年８月２１日に出願され、シリアル番号１０／６４４，９００を割り当てられた「ＥＬＥＣＴＲＯＮＩＣ  ＩＮＫ  ＰＲＯＣＥＳＳＩＮＧ」という表題の同時係属および同時譲渡特許出願（整理番号ＭＳ３０５１５８．０１）
【特許文献３】２００２年５月１４日に出願され、シリアル番号１０／１４３，８６５を割り当てられた「ＨＡＮＤＷＲＩＴＩＮＧ  ＬＡＹＯＵＴ  ＡＮＡＬＹＳＩＳ  ＯＦ  ＦＲＥＥＦＯＲＭ  ＤＩＧＩＴＡＬ  ＩＮＫ  ＩＮＰＵＴ」という表題の同時係属および同時譲渡特許出願（整理番号ＭＳ３００１５７．０１）
【非特許文献１】Ｗ．  Ｓｃｈｉｌｉｔ，  Ｇ．  Ｇｏｌｏｖｃｈｉｎｓｋｙ，  ａｎｄ  Ｍ．  Ｐｒｉｃｅ；  Ｂｅｙｏｎｄ  Ｐａｐｅｒ：  Ｓｕｐｐｏｒｔｉｎｇ  Ａｃｔｉｖｅ  Ｒｅａｄｉｎｇ  ｗｉｔｈ  Ｆｒｅｅ  Ｆｏｒｍ  Ｄｉｇｉｔａｌ  Ｉｎｋ  Ａｎｎｏｔａｔｉｏｎｓ；  Ｐｒｏｃ．  ｏｆ  ＡＣＭ  ＣＨＩ  １９９８；  ＡＣＭ  Ｐｒｅｓｓ．  ｐｐ．  ２４９−２５６
【非特許文献２】Ｇ．  Ｇｏｌｏｖｃｈｉｎｓｋｙ，  Ｌ．  Ｄｅｎｎｏｕｅ；  Ｍｏｖｉｎｇ  Ｍａｒｋｕｐ：  Ｒｅｐｏｓｉｔｉｏｎｉｎｇ  Ｆｒｅｅｆｏｒｍ  Ａｎｎｏｔａｔｉｏｎｓ；  Ｐｒｏｃ．  ｏｆ  ＡＣＭ  ＵＩＳＴ  ２００２；  ＡＣＭ  Ｐｒｅｓｓ，  ｐｐ．  ２１−３０
【非特許文献３】Ｄ．  Ｂａｒｇｅｒｏｎ  ａｎｄ  Ｔ．  Ｍｏｓｃｏｖｉｃｈ；  Ｒｅｆｌｏｗｉｎｇ  Ｄｉｇｉｔａｌ  Ｉｎｋ  Ａｎｎｏｔａｔｉｏｎｓ；  Ｐｒｏｃ．  ｏｆ  ＣＨＩ  ２００３；  ＡＣＭ  Ｐｒｅｓｓ，  ｐｐ．  ３８５−３９３
【非特許文献４】Ｕｎｉｖｅｒｓｉｔｙ  ｏｆ  Ｃｈｉｃａｇｏ  Ｐｒｅｓｓ；  Ｔｈｅ  Ｃｈｉｃａｇｏ  Ｍａｎｕａｌ  ｏｆ  Ｓｔｙｌｅ；  Ｔｈｅ  Ｕｎｉｖｅｒｓｉｔｙ  ｏｆ  Ｃｈｉｃａｇｏ  Ｐｒｅｓｓ；  Ｃｈｉｃａｇｏ，  ＩＬ，  ＵＳＡ；  １３ｔｈ  ｅｄｉｔｉｏｎ，  １９８２
【非特許文献５】Ｃ．Ｍａｒｓｈａｌｌ  ａｎｄ  Ａ．  Ｂｒｕｓｈ；  Ｆｒｏｍ  Ｐｅｒｓｏｎａｌ  ｔｏ  Ｓｈａｒｅｄ  Ａｎｎｏｔａｔｉｏｎｓ；  Ｉｎ  Ｐｒｏｃ．  ｏｆ  ＣＨＩ  ２００２；  ＡＣＭ  Ｐｒｅｓｓ；  ｐｐ．  ８１２−８１３
【発明の開示】
【発明が解決しようとする課題】
【０００９】
以下では、本発明のいくつかの態様の基本的な内容を理解できるように、発明の開示を簡単に説明する。この発明の開示は、本発明の概要を広範囲にわたって述べたものではない。この発明の開示は、本発明の鍵となる／決定的な要素を示したり、本発明の範囲を定めることを目的としていない。後で述べる詳細な説明の前置きとして、本発明のいくつかの概念を簡略化した形式で述べることのみを目的とする。
【００１０】
本発明は、一般に、認識に関するものであり、より具体的には、テキストおよび／またはグラフィックスへのフリーフォームのデジタルインク注釈を認識するシステムおよび方法に関するものである。分類タイプ検出器および／または文脈情報を利用して、注釈ストローク（ａｎｎｏｔａｔｉｏｎ  ｓｔｒｏｋｅｓ）を認識し、アンカーを設定して、リフロー可能な（ｒｅｆｌｏｗａｂｌｅ）デジタル注釈を与えるシステマティックな手段を実現する。これにより、デジタル文書内の注釈の保管（アーカイブ）、共有、検索が行え、また操作も簡単に行える。本発明の一実施例では、注釈認識方法により、グループ化され、分類され、文書内の基本テキストおよび／または点へのアンカーが作成されるストロークの入力が得られる。本発明の他の実施例では、言語学的な内容、領域特有の情報、アンカーの文脈、および文書文脈を利用して、注釈を正しく認識しやすくする。したがって、本発明では、デジタル文書注釈を認識し、操作するためのリアルタイムの正確で効率のよい方法を提供する。
【００１１】
前記の関係する目的を達成するために、本発明のいくつかの例示されている態様について、以下の説明および付属の図面に関して本明細書で説明する。ただし、これらの態様は本発明の原理を採用するさまざまな方法のうちわずかのみを示しており、本発明はこのような態様およびその等価物すべてを含むことを意図している。本発明の他の利点および新規性のある特徴は、図面を参照しつつ本発明の以下の詳細な説明を読むと明白になるであろう。
【課題を解決するための手段】
【００１２】
次に、本発明は、本明細書全体を通して類似の番号は類似の要素を示すために使用される図面を参照しつつ説明される。以下の説明では、説明を目的として、本発明を完全に理解できるようにする多数の具体的詳細を述べている。しかし、本発明は具体的詳細を知らなくても実施できることは明白であろう。他の場合には、本発明を説明しやすくするために、よく知られている構造およびデバイスがブロック図形式で示されている。
【００１３】
本出願で使用されているように、「コンポーネント」という用語は、コンピュータ関連のエンティティ、つまりハードウェア、ハードウェアとソフトウェアの組み合わせ、ソフトウェア、または実行中のソフトウェアのいずれかを指すことが意図されている。例えば、コンポーネントとして、限定はしないが、プロセッサ上で実行されているプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行のスレッド、プログラム、および／またはコンピュータなどがある。例えば、サーバ上で実行されているアプリケーションとサーバは両方ともコンピュータコンポーネントであってよい。１つまたは複数のコンポーネントを１つのプロセスおよび／または実行スレッド内に常駐させることができ、またコンポーネントを１台のコンピュータにローカルとして配置し、および／または２台またはそれ以上のコンピュータ間に分散させることができる。「スレッド」は、オペレーティングシステムのカーネルが実行に関するスケジュールを行うプロセス内のエンティティである。本技術分野ではよく知られているように、それぞれのスレッドは、スレッドの実行に関連付けられた揮発性データである関連する「コンテキスト」を持つ。スレッドのコンテキストは、システムレジスタの内容と、スレッドのプロセスに属す仮想アドレスを含む。したがって、スレッドのコンテキストを含む実際のデータは、実行時に変化する。
【００１４】
デジタルインク注釈は、紙の文書の物理的注釈を模倣し、文書処理に関するユーザの体験を改善するために使用される。本発明では、デジタルライティングサーフェス（例えば、タブレットＰＣ）などの紙に似た注釈インターフェイスを使用して作成されたフリーフォームデジタルインク注釈を認識するシステムおよび方法を提供する。本明細書で使用されている「認識済み注釈」という用語は、完全に操作可能であり、「理解される」注釈を意味する。これは、注釈が文書内のある点に固定されることを意味する場合も意味しない場合もある。しかし、認識済み注釈は、特定のアイテムを対象とすることを意味すると理解される。本発明の一実施例では、注釈認識は、デジタルインクストロークを複数の注釈にグループ化すること、複数の注釈を多数のタイプのうちの１つに分類すること、およびそれらの注釈を基本文書の該当する部分に固定することを含む。例えば、テキストの複数の単語の下に引かれた線は、下線として分類され、下線が引かれている単語に固定されるようにできる。
【００１５】
デジタル文書上の注釈は、紙の上の注釈と比べて明確な利点を有する。これらは、アーカイブ、共有、検索、および容易な操作が可能である。フリーフォームデジタルインク注釈を使用すると、ペンと紙の柔軟性と自然な表現力が加わるが、マウスおよびキーボードで作成した注釈に固有の構造の一部が犠牲になる。例えば、現在のインク注釈システムではインクを固定せず、文書のサイズ変更または編集時に論理的にリフローできる。デジタルインク注釈が注釈している文書の部分に追随するようにリフローしない場合、インクは意味のないものとなるか、または誤らせる可能性がある。本発明では、デジタルインク注釈を認識してこの構造を推論し、より構造化されたデジタル注釈の強みを好ましいフリーフォーム媒体にリストアするアプローチをとる。本発明は、新しい注釈タイプをサポートし、異なる注釈要素の間の曖昧さをリアルタイムで効率よく解決できるように簡単に拡張可能である。デジタルインクストロークは、さらに、バックグラウンドプロセスとして非リアルタイムで認識されることが可能である。
【発明を実施するための最良の形態】
【００１６】
図１では、本発明の一態様による注釈認識システム１００のブロック図が示されている。注釈認識システム１００は、入力１０４を受信し、出力１０６を供給する注釈認識コンポーネント１０２からなる。入力１０４は、例えば、文書の１ページ分を表すデジタルインクストロークからなる。文書は、多くの場合、全体がテキストからなるが、グラフィックも含む場合がある。入力１０４は、デジタルライティングサーフェスから、および／または２値化された（つまり、スキャンされた）ハードコピー文書からなどの直接２値化された入力とすることができる。注釈認識コンポーネント１０２は、入力１０４を分析し、ページのレイアウトを決定し、ページ情報から注釈関係情報を分離する。ストロークは、グループ化され処理されて、それにより、適切な注釈を決定する。処理は、リアルタイムおよび／または非リアルタイムで実行可能である。これにより、認識は、優先順位処理および／またはバックグラウンド処理として実行することができる。本発明の他の実施例は、文書文脈および／またはアンカー文脈情報などの文脈情報、およびテキストコンテンツ情報（つまり、言語情報）などの文脈情報を使用して、適切な注釈の決定を容易にできる。本発明のさらに他の実施例では、さらに、注釈の意味を解釈し、注釈に関係するアクションを実行および／または指令することができる。本発明は、さらに、文書のサイズ変更および／または他の何らかの方法による操作を行うときのリフロー機能を提供する認識済み注釈のため文書内の適切なアンカー点も決定することができる。
【００１７】
本発明の他の実施例では、入力１０４に関連付けられた色を使用して、さらに注釈を認識することを容易にできる。本発明では、例えば、重要度、注釈の経過時間、ユーザ識別、および／または注釈タイプなどの注釈関係情報を表す色の知識を使用して、注釈認識を高めることができる。同様に、本発明では、出力時に色を使用することにより、注釈のタイプおよび／または入力のソースなどを識別することを容易にすることができる。本発明では、限定はしないが、デジタルインクストロークの太さ、デジタルインクストロークを作成するために使用されるペン先タイプ、デジタルインクストロークの透明度、およびデジタルインクストロークの粘性度を含む、他のスタイル特性を採用できる。非スタイル特性も採用できる。これらは、限定はしないが、デジタルインクストローク上のタイムスタンプ、およびデジタルインクストロークを作成するために使用されるペン先カーソル上のシリアル番号を含む。
【００１８】
本発明のいくつかの実施例では、さらに、機械学習手法を使用して、注釈タイプの分類を容易にすることもできる。適用可能な手法については、例えば、特許文献１を参照。この出願では、分類器を自動的にチューニングし、デジタルインクストロークの認識を容易にする機械学習手法を説明している。本発明は、これらの手法を使用することができる。本発明のさらに他の実施例では、複数の注釈を使用して、注釈認識を容易に行えるようにできる。他の注釈を考慮することにより、候補注釈の所望のタイプおよび／または意味を複合確率の最大化を通じて解釈することができる。
【００１９】
注釈認識コンポーネント１０２の出力１０６は、限定はしないが、注釈、注釈アンカー点、注釈アクションコマンド、および／または直接注釈アクション編集を含むことができる。この出力を使用して、美化（ｂｅａｕｔｉｆｉｃａｔｉｏｎ）、色符号化、および／または言語／記号変換などの追加注釈関係機能を提供することができる。本発明は、さらに、言語領域、記号領域、および／またはユーザ特有領域かどうかに関係なく複数の領域に適用するように注釈を拡張するなどの文脈に基づく注釈拡張を実現できる。例えば、ユーザ特有の注釈をプロフェッショナルタイプセット注釈に変換することができ、および／またはアラビア語に基づくテキストを記号に基づくテキストに変換するといったことができる。本発明のいくつかの実施例は、さらに、例えば、多数の削除、追加、および変更などのアイテムをユーザが簡単に識別できるようにする検索可能な注釈グループを含むことができる。協調フィルタリング手法を使用すると、さらに、注釈を簡単に検索できるようにすることも可能である。これらの手法は、例えば、非常に大きな文書のどのようなページおよび／またはセクションがレビューアなどの大きなグループの実質的な精査の対象となったかを判別するために使用できる。
【００２０】
図２を参照すると、本発明の一態様による注釈認識システム２００の他のブロック図が示されている。注釈認識システム２００は、入力２０４を受信し、出力２０６を供給する注釈認識コンポーネント２０２からなる。注釈認識コンポーネント２０２は、セグメンテーションコンポーネント２０８、分類器コンポーネント２１０、および注釈アンカー作成コンポーネント２１２からなる。セグメンテーションコンポーネント２０８は、デジタルインクストローク入力などの入力２０４を受信して、それらのストロークをセグメント分割し、可能な注釈候補のグループを形成する。分類器コンポーネント２１０は、セグメンテーションコンポーネント２０８から注釈候補を受信して、受信した注釈候補から注釈を検出／識別（つまり、「認識」）する。注釈アンカー作成コンポーネント２１２は、認識済み注釈を受信し、それらの注釈のアンカー点を決定する。これらのアンカー点では、基本文書の変更時に注釈のリフローを可能にする。その後、注釈およびアンカー点は、出力２０６としても使用可能にされる。本発明の他の実施例では、基本文書との直接的対話操作を実行し、適切な注釈表示および／または注釈アクションのために必要に応じて更新および変更を発効させることができる。
【００２１】
図３を参照すると、本発明の一態様による注釈認識システム３００のさらに他のブロック図が示されている。注釈認識システム３００は、ストローク３０４および文書文脈３０６を受信し、構文解析ツリー出力３０８を供給する注釈認識コンポーネント３０２からなる。注釈認識コンポーネント３０２は、レイアウト分析＆分類コンポーネント３１０および注釈検出コンポーネント３１２からなる。注釈検出コンポーネント３１２は、解決コンポーネント３１４および検出器１〜Ｐ  ３１６〜３２０からなるが、ただしＰは有限な正整数を表す。レイアウト分析＆分類コンポーネント３１０は、ストローク３０４および文書文脈入力３０６を受信し、情報を処理する。本発明の一実施例では、これ（３１０）は、ライティングストロークおよびドローイングストロークをグループ化／分離し、ライティングストロークを単語、行、および段落にグループ化する。レイアウト分析＆分類コンポーネント３１０は、基本文書文脈を考慮せずにストロークの初期構造解釈を出力する。
【００２２】
その後、注釈検出コンポーネント３１２は、文書文脈入力３０６の抽象化に関して共通注釈マークアップを求め、ストロークの改訂された構造解釈を出力し、文書文脈抽象化の要素に構造をリンクする。注釈検出コンポーネント３１２は、文書ページ上のストローク入力３０４から特定の注釈タイプを識別し、そのアンカーを作成する個々のタイプ検出器１〜Ｐ  ３１６〜３２０を採用する。個々のタイプ検出器１〜Ｐ  ３１６〜３２０は、可能な注釈グループを決定するためにその注釈タイプに特有の手法を使用する。解決コンポーネント３１４は、タイプ検出器１〜Ｐ  ３１６〜３２０から出力を受信し、最も可能性の高い注釈を抽出し、衝突が存在する場合に最良の候補を選択する。当業者であれば、注釈検出コンポーネント３１２は、必要に応じて、追加タイプ検出器を追加することにより容易に拡張できることを理解するであろう。解決コンポーネント３１４は、文書文脈の中へのアンカーを持つ構文解析ツリー出力３０８を生成する。
【００２３】
図４を参照すると、本発明の一態様による注釈認識システム４００のさらに他のブロック図が示されている。注釈認識システム４００は、さまざまな入力４０４〜４１０を受信し、文書４１２に対し効力を持つ／関係する出力を生成する注釈コンポーネント４０２からなる。本発明のこの実施例は、本発明の範囲内で使用できる追加機能を示している。当業者であれば、本発明を実践するためにすべてのコンポーネントが必要なわけではないことを理解するであろう。同様に、さまざまな入力のすべてが必要なわけではない。さまざまな入力４０４〜４１０は、注釈ストローク入力４０４、文書文脈入力４０６、領域特有の情報入力４０８、およびその他の情報入力４１０からなる。他の情報入力４１０は、本発明により使用できるが、明示的に名付けられていない追加情報を表す。本発明のこの実施例では、注釈認識コンポーネント４０２は、受信コンポーネント４１４、認識コンポーネント４１６、分類コンポーネント４１８、注釈タイプ検出器４２０、アンカー作成コンポーネント４２２、リフローコンポーネント４２４、言語コンポーネント４２６、およびアクション決定コンポーネント４２８からなる。
【００２４】
受信コンポーネント４１４は、さまざまな入力４０４〜４１０を受信して、それらを認識コンポーネント４１６に中継する。認識コンポーネント４１６は、入力４０４〜４１０を処理し、文書４１２を対象とする注釈関係情報を出力する。認識コンポーネント４１６は、他の追加コンポーネントを使用して、さまざまな入力４０４〜４１０の処理を容易に行えるようにすることができる。認識コンポーネント４１６は、分類コンポーネント４１８と相互作用して、注釈の分類を行いやすくすることができる。分類コンポーネント４１８は、注釈タイプ検出器４２０と相互作用して、注釈タイプの検出を行いやすくすることができる。認識コンポーネント４１６は、言語分析コンポーネント４２６と相互作用して、注釈の決定も行いやすくすることができる。言語分析コンポーネント４２６は、文書４１２内に置かれたテキストを使用して、注釈の文脈を決定し、特定の注釈の意味について洞察することができる。言語特徴も、認識コンポーネント４１６により使用される分類器に統合することができる。異なる言語に対応するために、注釈が書かれた文脈および／または言語に応じて分類特徴を修正することができる。
【００２５】
認識コンポーネント４１６は、さらに、アンカー作成コンポーネント４２２とやり取りして、認識済み注釈に対するアンカー点を与えることができる。次に、アンカー作成コンポーネント４２２は、リフローコンポーネント４２４と相互作用して、文書４１２に対するリフロー機能を与えることができる。リフローコンポーネント４２４は、文書ウィンドウ内に認識済み注釈を正しく表示する作業を補助する。これ（４２４）は、さらに、文書４１２が要約されるときに注釈インジケータを与えることもできる。注釈インジケータは、例えば、認識済み注釈が文書内に置かれている場所を示すフラグとすることができる。これにより、ユーザは、注釈が明示的に示されていないとしてもユーザが関心を持つ文書の一セクションに関連付けられていることを知ることができる。
【００２６】
認識コンポーネント４１６は、さらに、アクション決定コンポーネント４２８と相互作用して、認識済み注釈の意味の解釈を行いやすくすることができる。アクション決定コンポーネント４２８は、注釈アクションを識別し、さらに、文書４１２と相互作用して、決定されたアクションを実行することができる。また、言語分析コンポーネント４２６を使用すると、アクション決定コンポーネント４２８による、注釈で表されるアクションの識別が容易になる。さらに、認識コンポーネント４１６では、領域特有の情報入力４０８を使用して、付加的文脈を加えて、注釈の認識とともに正しい注釈アクションの決定なども容易に行えるようにできる。領域特有の情報４０８は、限定はしないが、ユーザ特有の情報、文書トピック情報、プロフェッショナルまたは設定情報、および／または認識コンポーネント４１６が処理する選択の可能な数を制限する限界を規定する領域情報を含む。
【００２７】
上位システムの値は、認識可能な注釈の重要度を理解することによりより適切に評価される。ペーパーレスオフィスのビジョンは依然として将来の目標であるが、高解像度ディスプレイを含む多くの技術、デジタルタイポグラフィの進歩、ネットワーク接続情報システムの急増は、ユーザの電子的読み取り作業効率の向上に貢献している。イネーブリングリサーチ（ｅｎａｂｌｉｎｇ  ｒｅｓｅａｒｃｈ）の重要な分野の１つはデジタル文書注釈である。デジタル注釈はいくつもの文書バージョンにわたって持続し、紙の注釈ではできない方法で、検索、共有、および分析が容易に行える。
【００２８】
図５は、（Ａ）「正式な」注釈で注釈が付けられ編集されたデジタルテキスト５０２と、（Ｂ）非公式なフリーフォーム注釈で同等に注釈が付けられ編集されたデジタルテキスト５０４と、（Ｃ）デジタルインクを使用して文書に注釈を入れるペン付きタブレット型コンピュータ５０６の図５００である。多くのデジタル注釈システムは、図５（Ａ）５０２に示されているように、ユーザが文書の一部を選択し、付箋紙に似た注釈オブジェクトがその点に固定されるユーザインターフェイスを採用している。ユーザは、キーボードを叩いて付箋にテキストを入力する。後から、文書の編集のときに、付箋がアンカーとともにリフローする。この方法は、商用アプリケーションにおいて広く使用されているが、面倒なユーザインターフェイスである。その結果、多くのユーザは、文書をプリントアウトし、紙の上でペンを使って印を付けるため、プロセス内のデジタル注釈の利点が失われる。
【００２９】
ユーザが、タブレット型読み取りアプライアンス（図５（Ｃ）５０６）上でフリーフォームデジタルインクにより注釈をスケッチするユーザインターフェイス（図５（Ｂ）５０４）は、このような制限の一部を克服する。この方法は、コンピュータ上で紙の形態と感じを模倣することにより、ユーザインターフェイスを合理化し、ユーザが読み取り作業に集中できるようにする。例えば、Ｓｃｈｉｌｉｔらは、ｘＬｉｂｒｉｓシステムで、素材の批判的思考法、学習、および統合により文書注釈およびメモ取りが行われる読み取り形態である、タームアクティブリーディング（ｔｅｒｍ  ａｃｔｉｖｅ  ｒｅａｄｉｎｇ）を導入している。ユーザがページに直接印を付けられるようにすることにより、「便宜、文書の文脈における集中および視覚的検索（ｃｏｎｖｅｎｉｅｎｃｅ，  ｉｍｍｅｒｓｉｏｎ  ｉｎ  ｔｈｅ  ｄｏｃｕｍｅｎｔ  ｃｏｎｔｅｘｔ，ａｎｄ  ｖｉｓｕａｌ  ｓｅａｒｃｈ）」を加える（例えば、非特許文献１を参照）。
【００３０】
本発明では、タブレットＰＣなどの紙に似た注釈インターフェイスを使用して作成されたフリーフォームデジタルインク注釈を認識する手法を実現する。本発明の一実施例では、注釈認識は、デジタルインクストロークを複数の注釈にグループ化すること、複数の注釈を多数のタイプのうちの１つに分類すること、およびそれらの注釈を基本文書の該当する部分に固定することを含む。例えば、テキストの複数の単語の下に引かれた線は、下線として分類され、下線が引かれている単語に固定されるようにできる。サポートされているフルセットの注釈タイプおよびアンカー作成関係について後述する。注釈リフロー、自動美化、およびアクション実行可能な編集動作の属性をインクに付けることを含むデジタルインク注釈を認識することが望ましい理由はいくつかある。
【００３１】
図６は、リフローおよびクリーニング注釈の図６００であり、（Ａ）オリジナルのユーザ注釈６０２は（Ｂ）文書の編集時に適切にリフローされ（６０４）、その後（Ｃ）自動解釈に基づいてシステムによりクリーニングされる（６０６）。目標の１つは、図６（Ａ）６０２および（Ｂ）６０４に示されているように、デジタルインクのリフローである。物理的対応物とは異なり、デジタル文書は異なるデバイス上で編集可能であり、表示可能である。したがって、文書レイアウトは変更可能である。デジタルインク注釈が注釈している文書の部分に追随するようにリフローしない場合、インクは意味のないものとなるか、または誤らせる可能性がある。デジタルインク注釈の認識、アンカー作成、およびリフローでは、このような有害な結果を避けることができる。ＧｏｌｏｖｃｈｉｎｓｋｙおよびＤｅｎｏｕｅはまず、この問題を観察したが（例えば、非特許文献２を参照）、報告された単純な発見的手法は多数の現実世界の注釈に対しては堅牢でなく、新しいタイプの注釈を組み込むフレームワークを提案していない。
【００３２】
認識の第２の目標は、図６（Ｃ）６０６に示されているように、注釈を自動的に美化することである。フリーフォームインキング（ｆｒｅｅｆｏｒｍ  ｉｎｋｉｎｇ）は、便利な入力媒体であるが、Ｂａｒｇｅｒｏｎは、文書作成者は他人が作成したコメントを通読する場合にスタイル化された注釈を好むと報告している（例えば、非特許文献３を参照）。
【００３３】
デジタルインク注釈を認識する第３の目標は、注釈をアクション実行可能にすることである。多くの注釈は、所望の変更を文書に伝達する、つまり、「これらの語を削除する（ｄｅｌｅｔｅ  ｔｈｅｓｅ  ｗｏｒｄｓ）」または「この文章をここに挿入する（ｉｎｓｅｒｔ  ｔｈｉｓ  ｔｅｘｔ  ｈｅｒｅ）」を含む。Ｃｈｉｃａｇｏ  Ｍａｎｕａｌ  ｏｆ  Ｓｔｙｌｅ（例えば、非特許文献４を参照）では、標準の編集記号セットを定義する。注釈を自動認識することにより、本発明では、これらの動作をインクに加え、さらに、編集プロセスの合理化を進めることができる。
【００３４】
システム内でこれらの目標を達成することは、認識以外の多くの面を組み込む広範なタスクである。認識結果をいつどのように表示するか、それらの結果をどのように訂正するかなどのユーザインターフェイス問題がある。機能などを実際のテキストエディタに適切に統合する方法などのソフトウェアアーキテクチャ問題がある。インクストロークをリフローする方法などの他のアルゴリズムに関する問題もある。しかし、注釈認識プロセスをうまくカプセル化されたソフトウェアコンポーネント内に分離することは有用である。アーキテクチャ、アルゴリズム、および実施例を含む、このコンポーネントの詳細について説明する。本発明では、複数の検出器が競合する仮説を提示する認識アプローチを使用し、これらはダイナミックプログラミング最適化を介して効率よく解決される。
【００３５】
リフロー、美化、およびアクション実行を含む、上述のアプリケーション特徴をサポートするために、本発明の一実施例では、ソフトウェアコンポーネントを使用して、文書文脈内の注釈のセグメント分割、分類、およびアンカー作成を行う。この場合、問題を縮小して、注釈タイプの固定された語彙、つまり、水平範囲、垂直範囲、コンテナ、コネクタ、記号、書き込み、および描画を取り扱う。これらの注釈タイプはそれぞれ、認識を実行し、この制約されたアプローチを正当化するのに必要な文書文脈とともに定義される。
【００３６】
可能なすべての注釈の集合はたぶん際限がないが、下線およびハイライト表示などのいくつかの共通注釈はすぐに思い付く。注釈の基本集合を定義するために、ＢｒｕｓｈおよびＭａｒｓｈａｌｌの仕事が（例えば、非特許文献５を参照）引用されているが、これは、マージンノートに加えて、注釈の小さなセット（下線／ハイライト表示／コンテナ）が主に実用されることを示している。テキスト検索およびリフロー動作の目的のためにマージンノートのカテゴリをさらに書き込みおよび描画に分割することは有用である。そこで、水平範囲、垂直範囲、コンテナ、コールアウトコネクタ、記号、書き込み、および描画の注釈の分類およびアンカー作成としての注釈認識の問題が提示される。描画７は、注釈付き文書の例における共通注釈タイプ、つまり水平範囲７０２、垂直範囲７０４、コンテナ７０６、コールアウトコネクタ７０８、記号７１０、および書き込み７１２、および描画７１４の欄外書き込みの図７００である。
【００３７】
注釈は、テキスト文書、プレゼンテーションスライド、スプレッドシート、地図、間取図、およびさらにビデオ（例えば、天気予報官およびスポーツコメンテータ）も含むさまざまな文書にわたるふつうの活動である。可能なすべての文書にわたる注釈認識を構築することは不可能であるが、解決策を多数の共通文書タイプに適用できるように問題を抽象化することが望ましい。このような文書文脈の適切な抽象化を定義することは困難であり、単純な定義ではすべてのアプリケーションのニーズに応えることは不可能である。本発明では、文書文脈がそのページから始まるツリー構造として定義される構造を使用する。このページは、０個以上のテキストブロック、および０個以上のグラフィックスオブジェクトを含む（例えば、特許文献２を参照）。テキストブロックは、１つまたは複数の単語を含む、１つまたは複数の行を含む、１つまたは複数の段落を含む。図８は、単純な文書文脈の図８００である。基本的な文書文脈は、テキストの単語および行８０２、段落８０４、ブロック８０６、および画像／絵／チャート８０８を含む。これらの領域はそれぞれ、その境界ボックスにより抽象化される（図８）。この時点で、本発明のこの実施例では、文書の基本テキストは分析されない。これは、通常、不要であり、これにより解決策は言語独立になる。しかし、本発明の他の実施例では、言語学を利用して、さらに、注釈を正しく認識し、および／またはそのアクションを実行しやすくする。文脈のこの定義は、限定はしないが、文書処理文書、スライドプレゼンテーション、スプレッドシート、およびＷｅｂページを含む、さまざまな文書をサポートする上で十分情報豊富である。
【００３８】
このような実装が与えられた場合、本発明のこの実施例では、注釈認識にカプセル化されたソフトウェアコンポーネントを使用する。図９は、高水準の注釈認識アーキテクチャの図９００である。第１のステップ９０２では、書き込みおよびドローイングストロークを分離し、書き込みを単語、行、および段落にグループ分けする。第２のステップ９０４では、文書文脈に関係するインクを分析し、マークアップ要素を分類し、注釈を文書文脈に固定する。このコンポーネントは、ストロークおよび文書文脈をその入力として受信し、文書文脈内へのアンカーを持つ構文解析ツリーを出力として生成する。このような抽象化により、認識コンポーネントを異なるアプリケーションに容易に組み込むことができる。例えば、Ｗｅｂブラウザプラグインなどの製品において注釈認識器を採用することができる（例えば、非特許文献３を参照）。
【００３９】
認識コンポーネント自体は、図９に示されているように、複数の段階からなる。最初に、ストロークが、ライティングストロークをグループ分けし、ドローイングストロークから分離し、ライティングストロークを単語、行、および段落にグループ分けする手書きレイアウト分析および分類用のコンポーネントを通じて実行される（例えば、特許文献３を参照）。この段では、基本文書文脈を考慮せずにインクの初期構造解釈を生成する。ストロークが書き込みおよび描画に分割された後、マークアップ検出段階で、文書文脈の抽象化に関係する共通注釈マークアップ（水平範囲、垂直範囲、コンテナ、コネクタ、および記号）を調べ、インクの改訂された構造解釈を生成し、それらの構造を文書文脈抽象化の要素にリンクする。マークアップ検出については後述する。
【００４０】
マークアップ検出では、インクをセグメント分割し、水平範囲、垂直範囲、コンテナ、およびコネクタを含む注釈タイプの集合に分類する。マークアップ検出の可能なアプローチの１つは、ストロークの可能なすべての組み合わせを生成し、それぞれ異なるクラスに関して分類し、すべての仮説にわたって何らかの利用度または確率を最大化する。このアプローチには、いくつかの実用上の問題点がある。第１に、組み合わせ的である、つまりジェネリックな空間的刈り込み発見的手法（ｓｐａｔｉａｌ  ｐｒｕｎｉｎｇ  ｈｅｕｒｉｓｔｉｃｓ）であっても、システムをリアルタイムで稼働させるのに十分でない場合がある。第２に、妥当な分類器およびガーベッジモデルの学習のため十分なデータに依存する。
【００４１】
ユーザ注釈にリアルタイムで追随できる、利用可能な大量の学習データを持たない、効率的ステムを生成することが望ましいので、より柔軟な解決策が選択される。本発明のマークアップ検出は、検出器の集合として実装される。それぞれの検出器は、ページ上のインクストローク間で特定の注釈タイプを識別してアンカー作成する役割を持ち、その注釈タイプに特有の手法を利用して、可能な複数のグループにわたって検索空間を刈り込む。
【００４２】
検出器が特定の注釈タイプの候補を識別した場合、その結果の仮説を関連する信頼度とともに仮説マップに追加する。図１０は、仮説フレームワークプロセスの一実施例の図１０００であり、（Ａ）最初にマップは空であり１００２、（Ｂ）コネクタ検出で３つの衝突する仮説（Ｘ１、Ｘ２、Ｘ３）を入力し１００４、（Ｃ）他の検出器がコンテナ（Ｃ）、水平範囲（Ｈ）、垂直範囲（Ｖ）、およびマージンノート（Ｎ）のマップへの追加を実行し１００６、（Ｄ）解決では最も可能性の高い仮説（Ｃ、Ｘ２、およびＮ）を選択する１００８。例えば、図１０（Ｃ）１００６で、コネクタ検出器は、ストロークはそれだけでコネクタであり得る（両方とも、比較的直線的であり、その終点のそれぞれにもっともらしいアンカーを持つ）、またはいっしょにして単一のコネクタを形成できるという仮説を立てる。仮説のペアは、同じストロークを共有する場合に衝突する。
【００４３】
それぞれの注釈タイプは、他の注釈から、またページ上のランダムなストロークから区別できる特性の集合を持つ。これらの特徴は、ストローク特徴と文脈特徴の２つのカテゴリに分割できる。ストローク特徴は、インクストロークの集合と注釈の理想化されたバージョンとの間の類似性を捕捉する。例えば、下線の理想化されたバージョンは、直線であり、ストローク特徴は、下線と思われるストロークの集合とそれらのストロークを近似する最良の直線との間の距離、つまり、それらのストローク内の点の全回帰誤差を測定する。文脈特徴は、ストロークの集合の最良の理想化バージョンと文書文脈上の真の注釈との類似性を捕捉する。例えば、ストロークは、完全な直線であってよいが、線が文書内の単語の集合の下に来ていない限り下線ではない。
【００４４】
そこで、それぞれの検出器のプロシージャとして、ストローク特徴を使用してそのタイプによるストロークの最良の理想化されたバージョンを確認し、文脈特徴を使用して理想化されたバージョンが文書文脈にどれだけよく当てはまっているかを調べる。図１１は、検出器特徴の図１１００であり、（Ａ）文書のオリジナルのインク注釈１１０２、（Ｂ）インク注釈上にオーバーレイされた理想化された注釈、および文書文脈境界ボックス１１０４、（Ｃ）垂直範囲文脈特徴１１０６は、理想形とテキストの行との間の角度１１０８（θ）、理想形と行との間のギャップ１１１０（ｇ）、さらに理想形の重なり合う部分の長さの和１１１２、および重なり合わない領域の長さの和１１１４を含み、（Ｄ）水平範囲文脈特徴１１１６は、理想形とテキストの行との間の角度１１１８（θ）、理想形と行の間のギャップ１１２０（ｇ）、さらに、理想形の重なり合う部分の長さの和１１２２、および重なり合わない領域の長さの和１１２４を含み、（Ｅ）コールアウト文脈特徴１１２６は、矢印１１２８の先端の接線にそった矢尻（ａｒｒｏｗｈｅａｄ）から文脈単語までの距離ｇを含み、（Ｆ）コンテナ文脈特徴１１３０は、文脈単語と重なり合う領域１１３２および文脈単語と重なり合わない領域１１３４を含む。
【００４５】
さらに、ユーザサンプルに基づき、文書文脈に関するストロークのグループ分けの品質を判断するための特徴の集合を手動で導くことができる。いくつかの特徴は、特定のタイプの注釈としてストロークの所定の集合の特性を捕捉する「ストローク」特徴、およびストロークの集合が文書文脈にどのように関係しているかを示す特性を捕捉する「文脈」特徴に分けられる。これらの特徴は、表３にまとめられており、それぞれの特徴は正確に定義される。
【００４６】
【表１】
2006085695.tif 000003
【００４７】
水平範囲−Ｈ＝｛Ｐ1，．．．，ＰN｝を水平範囲であると仮説が立てられているストローク内の点の集合とする。Ｒfit（Ｈ）を、Ｈ上の全回帰によるＨの回転境界ボックスとする。Ｗ＝｛Ｗ1，．．．，ＷN｝を範囲の対象となると仮説を立てられている文書文脈からの単語の集合とする。
【００４８】
・  隣接単語の数。同じ親行内で隣接するＷ内の単語の最大数。
【００４９】
・  候補単語による範囲カバー率。Ｈθ,cを、Ｈが回帰直線（θ，ｃ）にそって射影されたときの終点間の範囲とする。μ（Ｈθ,c）を直線（θ，ｃ）にそったその範囲の測定とする。同様に、Ｗθ,cを、Ｗiが（θ，ｃ）に対し射影されたときの範囲の集合とする。
【００５０】
【数１】
2006085695.tif 000004
【００５１】
・  適合誤差。Ｈ内の点の全回帰誤差。
【００５２】
【数２】
2006085695.tif 000005
【００５３】
・  回転境界ボックスのアスペクト比。回転境界ボックスＲfit（Ｈ）の幅をその高さで除算した値。
【００５４】
垂直範囲−Ｖ＝｛Ｐ1，．．．，ＰN｝を水平範囲であると仮説が立てられているストローク内の点の集合とする。Ｒfit（Ｖ）を全回帰によるＶの回転境界ボックスとする。Ｌ＝｛Ｌ1，．．．，ＬM｝を範囲の対象となると仮説を立てられている文書文脈からの単語の集合とする。
【００５５】
・  隣接行の数。同じ親ブロック内で隣接するＬ内の単語の最大数。
【００５６】
・  候補行による範囲カバー率。Ｖθ,cを、Ｖが回帰直線（θ，ｃ）に対し射影されたときの終点間の範囲とする。μ（Ｖθ,c）を直線（θ，ｃ）にそったその範囲の測定とする。同様に、Ｌθ,cを、Ｌiが（θ，ｃ）に対し射影されたときの範囲の集合とする。
【００５７】
【数３】
2006085695.tif 000006
【００５８】
コンテナ−Ｃ＝｛Ｓ1，．．．，ＳN｝を、コンテナであると仮説が立てられているストロークの集合とする。Ｗ＝｛Ｗ1，．．．，ＷM｝をコンテナの対象となると仮説を立てられている文書文脈からの単語の集合とする。
【００５９】
Ｂ＝｛Ｂ1，．．．，ＢM｝をＣの重心の周りの放射状点バケットの集合とする。それぞれのバケットは、以下の式で定義される。
【００６０】
【数４】
2006085695.tif 000007
【００６１】
・  囲まれている単語の数。これは、Ｗ内の単語の個数、つまり｜Ｗ｜である。
【００６２】
・  囲まれている単語により埋められた内側面積の割合。バケット毎に、外側面積ＣBiをバケットＢi内の点の凸包とし、全面積をコンテナＣCの凸包とする。その後、内側面積ＩＡは以下の式で与えられる。
【００６３】
【数５】
2006085695.tif 000008
【００６４】
そして、単語で埋められた内側面積の割合は、以下のとおりである。
【００６５】
【数６】
2006085695.tif 000009
【００６６】
・  円形バケットカバー率。これは、点を含むバケットの割合であり、以下の式で表される。
【００６７】
【数７】
2006085695.tif 000010
【００６８】
・  内側面積対全面積の比。内側面積ＩＡと外側凸包ＣCの面積との比は、図１２の図１２００で示されている。ストローク点１２０４の重心１２０２の周りの放射状バケットＢiの集合。１つのバケットの内側面積１２０６が示され、また外側面積１２０８が示されている。バケットの全面積は、内側面積１２０６＋他の面積１２０８である。
【００６９】
コネクタ−Ｃ＝｛Ｓ1，．．．，ＳN｝を、コネクタであると仮説が立てられているストロークの集合とする。Ｗを、コネクタの一端にあると仮説が立てられている文書文脈からの単語とする。
【００７０】
・  ヘッドアンカーの有無。ＰHをコネクタの仮説の立てられているヘッドとし、（θ，ｃ）を接線とする。｛Ｑi｝をページ上の全単語Ｗのすべての端点（ｃｏｒｎｅｒ  ｐｏｉｎｔ）コーナー点とする。重み付き楕円スコアを使用して、接線からずれている単語にペナルティを付ける。
【００７１】
【数８】
2006085695.tif 000011
【００７２】
・  曲率。ストロークＳ＝（Ｐ1，．．．ＰN）の正規化された曲率は、ストロークがＳK＝（Ｑ1，．．．ＱK）として一定のＫ個の点でリサンプリングされたときの各点での曲率の総和である。
【００７３】
【数９】
2006085695.tif 000012
【００７４】
・  ストローク長。ストロークＳ＝（Ｐ1，．．．ＰN）のストローク長は、各セグメントの長さの総和である。
【００７５】
【数１０】
2006085695.tif 000013
【００７６】
・  矢尻の存在。矢尻検出の発見的手法が少しかかわる。ＣAは矢尻と仮説が立てられているストロークＡの集合の凸包を表すものとする。（θ，ｃ）は、コネクタの端での接線であるとする。
【００７７】
仮説が立てられている矢尻は以下のとおりである。
【００７８】
【数１１】
2006085695.tif 000014
【００７９】
一番左の点は以下のとおりである。
【００８０】
【数１２】
2006085695.tif 000015
【００８１】
一番右の点は以下のとおりである。
【００８２】
【数１３】
2006085695.tif 000016
【００８３】
Ａ12、Ａ23、Ａ31は、それぞれ、直線Ｐ1Ｐ2、Ｐ2Ｐ3、およびＰ3Ｐ1により切断されたＣA内の点を表す。Ａ12、Ａ23、Ａ31の回帰誤差は、矢尻検出の特徴である。手作業でチューニングしたしきい値により、コネクタのいずれかの側に矢尻があるかを判別する。
【００８４】
検出プロセスに戻ると、すべての検出器が実行された後、解の決定（ｒｅｓｏｌｕｔｉｏｎ）プロセスを通じて最も可能性の高い注釈がマップから抽出され、その結果が出力に投じられる（例えば、図１０（Ｄ）１００８を参照）。解の決定（ｒｅｓｏｌｕｔｉｏｎ）は、衝突する仮説がある場合に最良の候補を選ぶように設計される。これは、新しい注釈タイプをサポートするために検出器をモジュール式で追加できる統一フレームワークである。
【００８５】
解の決定（ｒｅｓｏｌｕｔｉｏｎ）は、説明されるストロークの数を最大にし、全体的な信頼度を最大にし、仮説の個数を最小にするように設計される。これは、以下のようにエネルギー関数の最大化として表すことができる。
【００８６】
【数１４】
2006085695.tif 000017
【００８７】
式１の中で、αおよびβは、経験的に求められた重みである。この関数は、ダイナミックプログラミングを利用して正確に最大化される。ストロークの順序付けには特別なところはないので、順序付けを任意に課して、以下の再帰関係を使用して解決される。
【００８８】
【数１５】
2006085695.tif 000018
【００８９】
式２の中で、Ｓはページ上のストロークの部分集合を表し、Ｓ’は最小ＩＤを持つ、またはそのストロークに対し説明を持たない、Ｓ内のストロークを含む仮説であり、Ｃはその説明の信頼度＋説明するストロークのα倍、または最小ストロークが未説明のまま残された場合には０である。
【００９０】
評価目標は２つあった。第１に、完全システムの正確さを把握する必要があることであった。第２に、解の決定（ｒｅｓｏｌｕｔｉｏｎ）プロセスの有効性を理解する必要があることであった。そのため、検出器のそれぞれの正確さが測定され、それらの数値と最終的なシステムの正確さとを比較した。テストセットは、２２９本の下線、２５０本の取消線、４２２個のコンテナ、２５５個のコールアウト、および３６個の垂直範囲を含む、〜１００個の注釈が大量に含まれるＷｅｂページで構成された。計算を簡単にするため、グルーピング誤差およびラベリング誤差は１つの単位にまとめられた。つまり、注釈は、適切にグループ化され、ラベル付けされた場合に正しく、そうでなければ、偽陰性になり、場合によっては、複数の偽陰性が生じる。
【００９１】
【表２】
2006085695.tif 000019
【００９２】
【表３】
2006085695.tif 000020
【００９３】
これらの結果から、システムは、問題に固有の曖昧さがあり、学習データは少量であり、システムがリアルタイムで動作可能なように手法を選択する際に妥協が行われていても十分に高い精度を持っている。さらに大きなデータセットが使用される場合には、有用な特徴を追加することもできる。それらの結果から、解の決定（ｒｅｓｏｌｕｔｉｏｎ）により、偽陰性に実質的変更を加えずに偽陽性の数を著しく減らせることがさらにわかる。これは、この問題に対する妥当な戦略であることを示している。
【００９４】
そこで、本発明では、電子文書上のフリーフォームデジタルインク注釈を実用的な実装により認識するアプローチを提示する。その結果得られる認識器を使用することにより、従来のデジタル注釈に共通であるすべてのオペレーションが容易になるが、ただし、直接デジタルインクおよび／またはスキャンされたデジタルインクの自然な、および透明な媒体を通じて可能になる。本発明では、ユーザを制約することなく、複雑な文書であっても高い精度が得られる注釈認識のための拡張可能フレームワークを採用する。これは、可能なセグメンテーションおよび分類の網羅的検索を近似したものである。これにより、リアルタイムでインクの１ページ全体を分析することが可能になり、他の多くのインク認識問題にこれを応用することができる。本発明の一実施例では、例えば、Ｗｅｂページに注釈をつけるためシステム一式に統合することができる再利用可能なソフトウェアコンポーネントを採用する。
【００９５】
さらに、ボックスおよびコネクタなどの認識される構造の多くは、流れ図および設計図などの他のタイプのスケッチにも共通のものである。本発明の効率的な推論アルゴリズムは、それらの分野にも拡張できる。さらに、ユーザが、基本セットではサポートされていない場合に、独自注釈スタイルでシステムをカスタマイズすることも可能である。
【００９６】
図に示され、上記で説明されているシステム例を参照すると、本発明により実装することができる方法は、図１３〜１５の流れ図を参照するとよりよく理解されるであろう。説明を簡単にするために、方法を図に示し、一連のブロックとして記述するが、本発明はブロックの順序によって制限されるわけではなく、本発明により、いくつかのブロックはその図に示されているここで説明している内容と異なる順序でおよび／または他のブロックと同時に実行することも可能である。さらに、本発明により、方法を実装するために例示されているすべてのブロックが必要なわけではない。
【００９７】
本発明は、１つまたは複数のコンポーネントによって実行される、プログラムモジュールなどのコンピュータ実行可能命令の一般的背景状況において説明することができる。一般に、プログラムモジュールは、特定のタスクを実行する、または特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、データ構造などを含む。通常、プログラムモジュールの機能は、本発明のさまざまな実施例で望むとおりに組み合わせるか、または分散させることができる。
【００９８】
図１３では、本発明の一態様による注釈認識を容易にする方法１３００の流れ図が示されている。方法１３００は、文書のデジタルインクストローク入力を受信する１３０４ことで開始する１３０２。入力は、紙の複写などからスキャン／２値化されたデジタルライティングサーフェスおよび／またはデジタルインクストロークの直接デジタルインクストロークとすることができる。その後、デジタルインクストロークは、可能な複数の注釈にグループ化される１３０６。検出器を使用して、それらのグループを分類タイプに分類し、注釈を「認識する」１３０８。本発明の他の実施例では、解の決定（ｒｅｓｏｌｕｔｉｏｎ）手法、注釈が複数のタイプなどに分類されると解釈される場合に衝突を解決するために使用される。その後、認識済み注釈を、流れの終点である文書内の適切な点に固定する１３１０。注釈の認識およびアンカー作成により、本発明はそのような追加特徴を美化、リフロー、およびアクション実行として用意することができる。本発明の他の実施例は、認識済み注釈が見えない場合でも認識済み注釈の場所を特定しやすくする「注釈インジケータ」を提供することを含む。これは、１ページが要約される場合などに実行できる。さらに、注釈は、限定はしないが、タイプライタで打ち込まれたテキスト、写真画像、幾何学的ベクトルグラフィックス画像、デジタルインク手書き、およびデジタルインクドローイングを含む、媒体タイプ上で本発明を介して認識することができる。
【００９９】
図１４では、本発明の一態様による注釈認識を容易にする方法１４００の他の流れ図が示されている。方法１４００は、文書のデジタルインクストローク入力を受信する１４０４ことで開始する１４０２。文書関係情報も受信する１４０６。文書関係情報（つまり、文脈）を使用することで、デジタルインクストローク入力からの注釈および／または注釈アンカー点を認識しやすくし１４０８、流れを終わらせる１４１０。本発明の一実施例では、文書関係情報は、ページから始まるツリー構造である文書文脈である。ページは、０個以上のテキストブロックおよび０個以上のグラフィックスオブジェクトを含む。テキストブロックは、１つまたは複数の単語を含む、１つまたは複数の行を含む、１つまたは複数の段落を含む。本発明の一方法ではこの特定のタイプの構造を使用して、テキストの基本的意味からその構造を分離し、言語独立の解決策を提供する。本発明の他の実施例では、テキストの基本的意味を使用して、言語依存の解決策を形成する。当業者であれば、さまざまな入力情報を使用してさまざまな種類の文書を簡単に処理できるという点で、本発明が柔軟であることを理解できるであろう。
【０１００】
図１５を参照すると、本発明の一態様による注釈認識を容易にする方法１５００のさらに他の流れ図が示されている。方法１５００は、文書のデジタルインクストローク入力を受信する１５０４ことで開始する１５０２。その後、上述のように、注釈がデジタルインクストローク入力から認識される１５０６。その後、認識済み注釈により表されるアクションが決定される１５０８。次に、任意選択のステップで、文書に対しアクションが実行され１５１０、この流れを終える。本発明の一実施例は、アクションを実行しなくても利用できる。例えば、本発明を使用して、表されているアクションを出力し、ユーザは、削除、大文字化、変更、および／または文書への追加を行う単語の個数の編集リストなど、要約などのためのアクションのリストをコンパイルすることができる。
【０１０１】
本発明のさまざまな態様を実装する他の背景状況を示すために、図１６および以下の説明は、本発明のさまざまな態様を実装できる好適なコンピューティング環境１６００の簡潔な概要説明を行うことを意図している。本発明は、ローカルコンピュータおよび／またはリモートコンピュータ上で実行されるコンピュータプログラムのコンピュータ実行可能命令の一般的な背景状況において上記で説明されているが、当業者であれば、本発明は、他のプログラムモジュールと組み合わせて実装できることも理解するであろう。一般に、プログラムモジュールは、特定のタスクを実行する、および／または特定の抽象データ型を実装するルーチン、プログラム、コンポーネント、データ構造などを含む。さらに、当業者であれば、本発明の方法は、それぞれ、１つまたは複数の関連するデバイスと動作するように通信できる、シングルプロセッサまたはマルチプロセッサコンピュータシステム、ミニコンピュータ、メインフレームコンピュータ、さらにはパーソナルコンピュータ、ハンドヘルドコンピューティングデバイス、マイクロプロセッサベースおよび／またはプログラム可能家電製品などを含む、他のコンピュータシステム構成で実施できることを理解するであろう。本発明の例示されている態様は、通信ネットワークを通じてリンクされているリモート処理デバイスによりいくつかのタスクが実行される分散コンピューティング環境で実施することもできる。しかし、本発明のすべての態様ではないとしても一部は、スタンドアロンコンピュータ上で実施できる。分散コンピューティング環境では、プログラムモジュールは、ローカルおよび／またはリモートのメモリ記憶デバイス内に配置されうる。
【０１０２】
本出願で使用されているように、「コンポーネント」という用語は、コンピュータ関連のエンティティ、つまりハードウェア、ハードウェアとソフトウェアの組み合わせ、ソフトウェア、または実行中のソフトウェアのいずれかを指すことを意図されている。例えば、コンポーネントとして、限定はしないが、プロセッサ上で実行されているプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行のスレッド、プログラム、およびコンピュータがある。例えば、サーバ上で実行されているアプリケーションおよび／またはサーバはコンポーネントであってよい。さらに、コンポーネントは１つまたは複数のサブコンポーネントを含むことができる。
【０１０３】
図１６を参照すると、本発明のさまざまな態様を実装するシステム環境例１６００は、処理ユニット１６０４、システムメモリ１６０６、およびシステムメモリを含むさまざまなシステムコンポーネントを処理ユニット１６０４に結合するシステムバス１６０８を備える、従来のコンピュータ１６０２を備える。処理ユニット１６０４は、市販または専用プロセッサとすることができる。さらに、処理ユニットは、並列接続など、複数のプロセッサで形成されたマルチプロセッサとして実装することができる。
【０１０４】
システムバス１６０８は、メモリバスまたはメモリコントローラ、周辺機器バス、および、例えば、ＰＣＩ、ＶＥＳＡ、Ｍｉｃｒｏｃｈａｎｎｅｌ、ＩＳＡ、およびＥＩＳＡなどのさまざまな従来のバスアーキテクチャを使用するローカルバスを含む数種類のバス構造のうちのいずれでもよい。システムメモリ１６０６は、読み取り専用メモリ（ＲＯＭ）１６１０およびランダムアクセスメモリ（ＲＡＭ）１６１２を含む。起動時などにコンピュータ１６０２内の要素間の情報伝送を助ける基本ルーチンを含む基本入出力システム（ＢＩＯＳ）１６１４は、ＲＯＭ  １６１０に保存される。
【０１０５】
コンピュータ１６０２は、さらに、例えば、ハードディスクドライブ１６１６、例えば取り外し可能ディスク１６２０に読み書きするための磁気ディスクドライブ１６１８、およびＣＤ−ＲＯＭディスク１６２４またはその他の光媒体に読み書きするための光ディスクドライブ１６２２を備えることもできる。ハードディスクドライブ１６１６、磁気ディスクドライブ１６１８、および光ディスクドライブ１６２２は、ハードディスクドライブインターフェイス１６２６、磁気ディスクドライブインターフェイス１６２８、および光ドライブインターフェイス１６３０によりそれぞれシステムバス１６０８に接続される。ドライブ１６１６〜１６２２およびその関連するコンピュータ可読媒体は、コンピュータ１６０２用のデータ、データ構造体、コンピュータ実行可能命令などを保存する不揮発性記憶装置を実現する。上記のコンピュータ可読媒体の説明ではハードディスク、取り外し可能磁気ディスク、およびＣＤを取り上げたが、当業者であれば、磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ベルヌーイカートリッジなどのコンピュータにより読み取り可能な他のタイプの媒体も、動作環境例１６００で使用することができること、さらにそのような媒体は、本発明の方法を実行するためのコンピュータ実行可能命令を保存できることを理解するであろう。
【０１０６】
オペレーティングシステム１６３２、１つまたは複数のアプリケーションプログラム１６３４、他のプログラムモジュール１６３６、およびプログラムデータ１６３８を含む、多くのプログラムモジュールは、ドライブ１６１６〜１６２２およびＲＡＭ  １６１２に保存することができる。オペレーティングシステム１６３２は、任意の好適なオペレーティングシステムまたはオペレーティングシステムの組み合わせとすることができる。例えば、アプリケーションプログラム１６３４およびプログラムモジュール１６３６は、本発明の一態様による注釈認識スキームを含むことができる。
【０１０７】
ユーザは、キーボード１６４０およびポインティングデバイス（例えば、マウス１６４２）などの１つまたは複数のユーザ入力デバイスを通じてコンピュータ１６０２にコマンドおよび情報を入力することができる。他の入力デバイス（図に示されていない）としては、マイク、ジョイスティック、ゲームパッド、衛星放送受信アンテナ、無線リモート、スキャナなどがある。これらの入力デバイスおよびその他の入力デバイスは、システムバス１６０８に結合されているシリアポートインターフェイス１６４４を介して処理ユニット１６０４に接続されることが多いが、パラレルポート、ゲームポート、またはユニバーサルシリアルバス（ＵＳＢ）などの他のインターフェイスにより接続されることもできる。モニタ１６４６またはその他の種類の表示デバイスも、ビデオアダプタ１６４８などのインターフェイスを介してシステムバス１６０８に接続される。コンピュータ１６０２は、通常、モニタ１６４６のほかに、スピーカおよびプリンタなど、他の周辺出力装置（図に示されていない）を備えることができる。
【０１０８】
コンピュータ１６０２は、１つまたは複数のリモートコンピュータ１６６０への論理接続を使用してネットワーク接続環境で動作可能である。リモートコンピュータ１６６０は、ワークステーション、サーバコンピュータ、ルータ、ピアデバイス、またはその他の共通ネットワークノードでもよく、通常は、コンピュータ１６０２に関係する説明されている要素の多くまたはすべてを含むが、簡潔にするため、メモリ記憶デバイス１６６２だけが図１６に例示されている。図１６で説明されている論理接続は、ローカルエリアネットワーク（ＬＡＮ）１６６４およびワイドエリアネットワーク（ＷＡＮ）１６６６を含む。このようなネットワーキング環境は、オフィス、企業全体にわたるコンピュータネットワーク、イントラネット、およびインターネットでは一般的である。
【０１０９】
例えば、ＬＡＮネットワーキング環境で使用される場合、コンピュータ１６０２はネットワークインターフェイスまたはアダプタ１６６８を介してローカルネットワーク１６６４に接続される。ＷＡＮネットワーキング環境で使用される場合、コンピュータ１６０２は、通常、モデム（例えば、電話、ＤＳＬ、ケーブルなど）１６７０を備えるか、またはＬＡＮ上で通信サーバに接続されるか、またはインターネットなどのＷＡＮ  １６６６上での通信を確立する他の手段を備える。モデム１６７０は、コンピュータ１６０２に関して内蔵でも外付けでもよいが、シリアルポートインターフェイス１６４４を介してシステムバス１６０８に接続される。ネットワーク接続環境では、プログラムモジュール（アプリケーションプログラム１６３４を含む）および／またはプログラムデータ１６３８は、リモートメモリ記憶デバイス１６６２に保存することができる。図に示されているネットワーク接続は実施例であり、本発明の一態様を実施した場合にコンピュータ１６０２と１６６０との間の通信リンクを確立する他の手段（例えば、有線または無線）が使用可能であることは理解されるであろう。
【０１１０】
コンピュータプログラム分野の当業者の実務慣例によれば、断りのない限り、本発明は、コンピュータ１６０２またはリモートコンピュータ１６６０などのコンピュータにより実行される活動およびオペレーションの記号表現を参照しつつ説明されている。このような活動およびオペレーションは、コンピュータ実行であるということがある。活動および記号表現されたオペレーションは、結果として電気信号表現の変換または縮小を引き起こすデータビットを表す電気信号の処理ユニット１６０４による操作、およびメモリシステム（システムメモリ１６０６、ハードドライブ１６１６、フロッピー（登録商標）ディスク１６２０、ＣＤ−ＲＯＭ  １６２４、およびリモートメモリ１６６２を含む）内のメモリロケーションでのデータビットの保持を含み、それによって、コンピュータシステムのオペレーションだけでなく、信号の他の処理をも再構成するか、または他の何らかの方法により変更する。そのようなデータビットが保持されるメモリロケーションは、データビットに対応する特定の電気的、磁気的、または光学的特性を持つ物理的位置である。
【０１１１】
図１７は、本発明との相互やり取りが可能なコンピューティング環境１７００の実施例を示す他のブロック図である。システム１７００は、１つまたは複数のクライアント１７０２を備えるシステムをさらに例示している。クライアント（群）１７０２は、ハードウェアおよび／またはソフトウェア（例えば、スレッド、プロセス、コンピューティングデバイス）とすることができる。システム１７００は、さらに、１つまたは複数のサーバ１７０４も備える。サーバ１７０４も、ハードウェアおよび／またはソフトウェア（例えば、スレッド、プロセス、コンピューティングデバイス）とすることができる。クライアント１７０２とサーバ１７０４との間で可能な通信の１つは、２つ以上のコンピュータプロセス間で伝送されるように適合されたデータパケットの形で実行できる。システム１７００は、クライアント（群）１７０２とサーバ（群）１７０４との間の通信を容易に行えるようにするために採用することができる通信フレームワーク１７０８を含む。クライアント（群）１７０２は、クライアント（群）１７０２にローカルで情報を保存するために使用することができる１つまたは複数のクライアントデータストア１７１０に接続される。同様に、サーバ（群）１７０４は、サーバ（群）１７０４にローカルで情報を保存するために使用することができる１つまたは複数のサーバデータストア１７０６に接続される。
【０１１２】
本発明の一実施例では、２つ以上のコンピュータコンポーネントの間で伝送されるデータパケットは、少なくとも一部は、少なくとも１つの注釈を認識するために少なくとも一部はデジタルインクストローク入力を利用する注釈認識システムに関係する情報からなる。
【０１１３】
本発明のシステムおよび／または方法は、コンピュータコンポーネントおよび非コンピュータ関係コンポーネントも同様に使いやすくする注釈認識で使用することができることは理解されるであろう。さらに、当業者であれば、本発明のシステムおよび／または方法は、限定はしないが、コンピュータ、サーバ、および／または携帯型電子デバイスなどを含む、さまざまな電子関連技術で採用することが可能であることを認識するであろう。
【０１１４】
上述した内容は、本発明の複数の実施例を含む。もちろん、本発明を説明するためにコンポーネントまたは方法の考えられるすべての組み合わせを説明することは不可能であるが、当業者であれば、本発明の他の多くの組み合わせおよび置換が可能であることを理解できるであろう。したがって、本発明は、付属の請求項の精神と範囲内に収まるすべてのそのような変更、修正、および変更形態を包含することが意図されている。さらに、「含む、備える」という言い回しを詳細な説明または請求項で使用している範囲において、このような用語は「備える、含む」という用語と似た使い方をし、これは使用した場合に請求項の中で暫定的用語と解釈する。
【図面の簡単な説明】
【０１１５】
【図１】本発明の一態様による注釈認識システムのブロック図である。
【図２】本発明の一態様による注釈認識システムの他のブロック図である。
【図３】本発明の一態様による注釈認識システムのさらに他のブロック図である。
【図４】本発明の一態様による注釈認識システムのさらに他のブロック図である。
【図５】本発明の一態様によるデジタルインクストローク入力（ｄｉｇｉｔａｌ  ｉｎｋ  ｓｔｒｏｋｅ  ｉｎｐｕｔｓ）およびデジタルサーフェスライティングデバイスの実施例の図である。
【図６】本発明の一態様による注釈リフローおよびクリーニング（ａｎｎｏｔａｔｉｏｎ  ｒｅｆｌｏｗ  ａｎｄ  ｃｌｅａｎｉｎｇ）の図である。
【図７】本発明の一態様による共通注釈タイプの他の図である。
【図８】本発明の一態様による単純な文書文脈の図である。
【図９】本発明の一態様による注釈認識アーキテクチャの一実施例の図である。
【図１０】本発明の一態様による検出器機能のいくつかの実施例の図である。
【図１１】本発明の一態様による仮説フレームワークの図である。
【図１２】本発明の一態様による放射状バケットを介して決定されるコンテナ領域の図である。
【図１３】本発明の一態様による注釈認識を容易にする方法の流れ図である。
【図１４】本発明の一態様による注釈認識を容易にする方法の他の流れ図である。
【図１５】本発明の一態様による注釈認識を容易にする方法のさらに他の流れ図である。
【図１６】本発明が機能できる動作環境例の図である。
【図１７】本発明が機能できる他の動作環境例の図である。
【符号の説明】
【０１１６】
１００  注釈認識システム
１０２  注釈認識コンポーネント
１０４  入力
１０６  出力
２００  注釈認識システム
２０２  注釈認識コンポーネント
２０４  入力
２０６  出力
２０８  セグメンテーションコンポーネント
２１０  分類器コンポーネント
２１２  注釈アンカー作成コンポーネント
３００  注釈認識システム
３０２  注釈認識コンポーネント
３０４  ストローク
３０６  文書文脈
３０８  構文解析ツリー出力
３１０  レイアウト分析＆分類器コンポーネント
３１２  注釈検出コンポーネント
３１４  解決コンポーネント
３１６  検出器「１」
３１８  検出器「２」
３２０  検出器「Ｐ」
４００  注釈認識システム
４０２  注釈コンポーネント
４０４  注釈ストローク
４０６  文書文脈
４０８  領域特有の情報
４１０  他の情報
４１２  文書
４１４  受信コンポーネント
４１６  認識コンポーネント
４１８  分類コンポーネント
４２０  注釈タイプ検出器
４２２  アンカー作成コンポーネント
４２４  リフローコンポーネント
４２６  言語分析コンポーネント
４２８  アクション決定コンポーネント
８０２  テキストの単語および行
８０６  ブロック
８０８  画像／絵／チャート
１２０２  重心
１２０４  ストローク点
１２０６  内側面積
１２０８  外側面積
１６００  コンピューティング環境
１６０２  コンピュータ
１６０４  処理装置
１６０６  システムメモリ
１６０８  バス
１６１０  ＲＯＭ
１６１４  ＢＩＯＳ
１６１６  ハードディスクドライブ
１６１８  磁気ディスクドライブ
１６２０  取り外し可能ディスク
１６２２  光ディスクドライブ
１６２４  ＣＤ−ＲＯＭ
１６２６  ハードディスクドライブインターフェイス
１６２８  磁気ディスクドライブインターフェイス
１６３０  光ドライブインターフェイス
１６３２  オペレーティングシステム
１６３４  アプリケーションプログラム
１６３６  他のプログラムモジュール
１６３８  プログラムデータ
１６４０  キーボード
１６４２  マウス
１６４４  シリアルポートインターフェイス
１６４６  モニタ
１６４８  ビデオアダプタ
１６６０  リモートコンピュータ
１６６２  リモートメモリ記憶デバイス
１６６４  ローカルエリアネットワーク
１６６６  ワイドエリアネットワーク
１６６８  ネットワークインターフェイス
１６７０  モデム
１７０２  クライアント（群）
１７０４  サーバ（群）
１７０６  サーバデータストア（群）
１７０８  通信フレームワーク（群）
１７１０  クライアントデータストア
【図１】
2006085695.tif 000023
【図２】
2006085695.tif 000024
【図３】
2006085695.tif 000025
【図４】
2006085695.tif 000026
【図５】
2006085695.tif 000027
【図６】
2006085695.tif 000028
【図７】
2006085695.tif 000029
【図８】
2006085695.tif 000030
【図９】
2006085695.tif 000031
【図１０】
2006085695.tif 000032
【図１１】
2006085695.tif 000033
【図１２】
2006085695.tif 000034
【図１３】
2006085695.tif 000035
【図１４】
2006085695.tif 000036
【図１５】
2006085695.tif 000037
【図１６】
2006085695.tif 000038
【図１７】
2006085695.tif 000039