【誤訳訂正書】
【提出日】平成22年7月26日(2010.7.26)
【誤訳訂正１】
【訂正対象書類名】特許請求の範囲
【訂正対象項目名】全文
【訂正方法】変更
【訂正の内容】
【特許請求の範囲】
【請求項１】
計算により位置を求めることが可能な位置コード化パターンの一部を構成する部分領域からセンサによって記録された画像に基づいて、前記部分領域の前記位置コード化パターンにおける位置を復号するための方法であって、
前記位置コード化パターンにおける少なくとも一つの参照位置を特定することと、
前記位置コード化パターンにおいて前記参照位置と所定の空間的な関係を有するパターン参照領域であって、復号されるべき位置に対応する部分領域が含まれる前記パターン参照領域を特定することと、
前記センサによって記録された画像から得られる情報を前記パターン参照領域についての既知の情報とマッチングすることにより、復号されるべき位置を該位置についての前記計算を行わずに求めることと、
を含むことを特徴とする方法。
【請求項２】
前記センサによって記録された複数の画像の並びから、複数の位置の並びが復号される場合に、前記パターン参照領域内において前記情報が前記既知の情報とマッチした相対位置を求め、前記相対位置によって前記空間的な関係を調整することにより、復号されるべき各位置が求められる、請求項１に記載の方法。
【請求項３】
前記センサによって記録された複数の画像の並びから、複数の位置の並びが復号される場合に、前記複数の画像の並びに含まれる各画像についてそれぞれ前記パターン参照領域を生成することを含む、請求項１または２に記載の方法。
【請求項４】
前記センサによって記録された複数の画像の並びから、複数の位置の並びが復号される場合に、前記複数の画像の並びに含まれる二つ以上の画像について同じ前記パターン参照領域を使用することを含む、請求項１または２に記載の方法。
【請求項５】
前記空間的な関係が予測位置によって与えられ、
前記方法は、前記少なくとも一つの参照位置に基づいて前記予測位置を推定することを含む、請求項１〜４のいずれかに記載の方法。
【請求項６】
前記パターン参照領域は、前記予測位置に対して所定の位置関係をもって生成される、請求項５に記載の方法。
【請求項７】
前記予測位置は、前記パターン参照領域に含まれる、請求項６に記載の方法。
【請求項８】
前記センサによって記録された複数の画像の並びから、複数の位置の並びが復号される場合に、前記複数の画像の並びに含まれる各画像について前記予測位置の推定が行われ、複数の予測位置の並びが生成される、請求項５〜７のいずれかに記載の方法。
【請求項９】
前記複数の予測位置の並びが、前記マッチングによって前記複数の位置の並びに変換される、請求項８に記載の方法。
【請求項１０】
前記センサによって記録された複数の画像の並びから、複数の位置の並びが復号される場合に、前記予測位置の推定は、前記複数の位置の並びおよび／または前記少なくとも一つの参照位置から選択される少なくとも二つの先行する位置に基づいて行われる、請求項５〜９のいずれかに記載の方法。
【請求項１１】
前記予測位置の推定は、前記少なくとも二つの先行する位置の多項式補外によって行われる、請求項１０に記載の方法。
【請求項１２】
前記参照位置は、該参照位置についての前記位置コード化パターンが可能とする前記計算を行うことによって特定される、請求項１〜１１のいずれかに記載の方法。
【請求項１３】
前記参照位置についての計算は、
前記復号されるべき位置に対応する画像に先行する別の画像からシンボルデータを取得することと、
前記位置コード化パターンが可能とする前記計算のための数式に前記シンボルデータを入力することと、
を含む、請求項１２に記載の方法。
【請求項１４】
前記参照位置についての計算は、
前記復号されるべき位置に対応する画像に先行する別の画像からシンボルデータを取得することと、
前記位置コード化パターンが可能とする前記計算のための基本的なコード化データを含む一つまたは複数のデータ構造内で、前記シンボルデータを用いて一つまたは複数のルックアップ動作を行うことによって、位置データを取得することと、
を含む、請求項１２に記載の方法。
【請求項１５】
前記参照位置についての計算は、さらに、
前記位置コード化パターンが可能とする前記計算のための数式に、前記位置データを入力することと、
を含む、請求項１４に記載の方法。
【請求項１６】
前記センサによって記録された複数の画像の並びから、複数の位置の並びが復号される場合に、前記少なくとも一つの参照位置を前記複数の位置の並びとマージすることを含む、請求項１〜１５のいずれかに記載の方法。
【請求項１７】
前記センサによって記録された複数の画像の並びから、複数の位置の並びが復号される場合に、前記参照位置の特定が間欠的に行われて、前記少なくとも一つの参照位置が更新または置換され、更新または置換された前記参照位置が、以後の画像についての以後のマッチングのために用いられる、請求項１〜１６のいずれかに記載の方法。
【請求項１８】
前記パターン参照領域は複数の部分領域を含み、前記複数の部分領域のそれぞれが前記復号されるべき位置に対応する候補を定めるものである、請求項１〜１７のいずれかに記載の方法。
【請求項１９】
前記マッチングは、前記画像から得られる情報を、前記パターン参照領域に含まれる前記複数の部分領域のそれぞれと比較することを含む、請求項１８に記載の方法。
【請求項２０】
前記マッチングは、前記センサによって記録された画像について、前記複数の候補のうちの一つを選択することを含み、
前記選択される候補は、前記比較において、前記画像から得られる情報と前記複数の部分領域との間で一致が見られたものである、請求項１９に記載の方法。
【請求項２１】
前記位置コード化パターンは、複数のマークを備え、
各マークは、少なくとも二つの異なる値の一方をコード化する、請求項１〜２０のいずれかに記載の方法。
【請求項２２】
前記マッチングは、確率行列を生成することによって、前記センサによって記録された画像から前記情報を取得することを含み、
前記確率行列は、前記画像の中に含まれる位置コード化パターンのサブ領域を表すものであって、前記サブ領域内の各マークについての行列要素を含むものであり、
各行列要素は、そのマークの最も可能性のある推定値を表す値、または、そのマークについて推定値が得られないことを表す値のどちらかを持つように適合されている、請求項２１に記載の方法。
【請求項２３】
前記最も可能性のある推定値を表す値は整数値である、請求項２２に記載の方法。
【請求項２４】
各マークは、第一の次元で二進値をコード化するとともに、第二の次元で二進値をコード化し、
第一の確率行列は、前記第一の次元での前記マークの値について生成され、第二の確率行列は、前記第二の次元でのマークの値について生成される、請求項２２または２３に記載の方法。
【請求項２５】
前記パターン参照領域は複数の部分領域を含み、前記複数の部分領域のそれぞれが前記復号されるべき位置に対する候補を定めるものであり、
前記マッチングは、前記確率行列を、前記パターン参照領域に含まれる前記複数の部分領域のそれぞれと比較することを含む、請求項２２〜２４のいずれかに記載の方法。
【請求項２６】
前記位置コード化パターンは、循環主数列のシフトに基づいており、
前記循環主数列に含まれる部分数列であって第一の所定の長さ以上の長さを有する第一の部分数列は、曖昧さなしに決定される前記循環主数列における位置を有し、
前記位置コード化パターンにおける前記循環主数列のペアの間のシフトの差分を表す差分数が並んだ差分数列に含まれる部分数列であって第二の所定の長さ以上の長さを有する第二の部分数列は、曖昧さなしに決定される前記差分数列における位置を有し、
前記マッチングは、
前記パターン参照領域について第一の集合の差分数の集合を取得することと、
前記確率行列から第二の集合の差分数の集合を取得することと、
前記第二の差分数の集合を前記第一の差分数の集合とマッチングすることと、
前記マッチングの結果から、前記復号されるべき位置を求めることと、
を含む、請求項２２〜２４のいずれかに記載の方法。
【請求項２７】
前記第二の差分数の集合の取得は、
前記確率行列のそれぞれの行または列を前記循環主数列とマッチングして、前記行または前記列についての主数列位置を推定することと、
前記確率行列の行のペアまたは列のペアについて、推定された主数列位置を差し引くことによって、前記第二の差分数の集合を求めることと、
を含む、請求項２６に記載の方法。
【請求項２８】
前記復号されるべき位置の並びが、電子手書きツールを用いて実行される手書きストロークの少なくとも一部を表す、請求項１〜２７のいずれかに記載の方法。
【請求項２９】
前記復号されるべき位置に対応する画像は、電子手書きツールを用いて記録され、
前記予測位置は、前記少なくとも一つの参照位置と、前記手書きツールの所定のまたは検出された移動方向または速度または加速度の少なくとも一つと、に基づいて推定される、請求項５〜１１のいずれかに記載の方法。
【請求項３０】
プログラムコードを備え、コンピュータで実行されるコンピュータプログラムであって、
前記コンピュータに、請求項１〜２９のいずれかに記載の方法を実行させることを特徴とするコンピュータプログラム。
【請求項３１】
コンピュータで実行されるコンピュータプログラムが記憶されるコンピュータ読み取り可能記憶媒体であって、
前記コンピュータプログラムは、前記コンピュータに、請求項１〜２９のいずれかに記載の方法を実行させることを特徴とするコンピュータ読み取り可能記憶媒体。
【請求項３２】
計算により位置を求めることが可能な位置コード化パターンの一部を構成する部分領域からセンサによって記録された画像に基づいて、前記部分領域の前記位置コード化パターンにおける位置を復号するための装置であって、
前記位置コード化パターンにおける少なくとも一つの参照位置を特定する手段と、
前記位置コード化パターンにおいて前記参照位置と所定の空間的な関係を有するパターン参照領域であって、復号されるべき位置に対応する部分領域が含まれる前記パターン参照領域を特定する手段と、
前記センサによって記録された画像から得られる情報を前記パターン参照領域についての既知の情報とマッチングすることにより、復号されるべき位置を該位置についての前記計算を行わずに求める手段と、
を備えることを特徴とする装置。
【誤訳訂正２】
【訂正対象書類名】明細書
【訂正対象項目名】全文
【訂正方法】変更
【訂正の内容】
【書類名】  明細書
【発明の名称】  位置復号のための方法、装置、コンピュータプログラム及び記憶媒体
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概して位置コード化パターンの復号（デコード）に関し、さらに詳細には、センサにより記録が行われたときに位置コード化パターンの画像の並びから位置の並びが求められる位置復号のための方法に関する。
【０００２】
本発明は、位置コード化パターンを復号するために使用できる装置、コンピュータプログラム及び記憶媒体にも関する。
【背景技術】
【０００３】
次のような特性を有する位置コード化パターンが知られている。その特性とは、所定の最小サイズの位置コード化パターンの部分領域について、位置コード化パターンにおける絶対位置が、その部分領域に含まれる情報及び所定のアルゴリズムによって計算できるというものである。このような位置コード化パターンの例は、それぞれの位置がシンボルによってコード化される米国第５,４７７,０１２号（Ｏ．Ｓｅｋｅｎｄｕｒ）、及びそれぞれの位置が複数のシンボルによってコード化される、国際公開第９２／１７８５９号パンフレット（ヒューレットパッカード社）、米国第６,５７０,１０４号（Ａｎｏｔｏ ＡＢ）、米国第６,６７４,４２７号（Ａｎｏｔｏ ＡＢ）、米国第６,６６７,６９５号（Ａｎｏｔｏ ＡＢ），米国第２００３／００１２４５５号（Ａｎｏｔｏ ＡＢ）及び米国第５,９７３,１１０号（ゼロックス社）に開示されている。
【０００４】
この種の位置コード化パターンは、例えば、情報のデジタル記録のために使用できる。この情報は、位置コード化パターンが設けられたベース上で、ユーザ装置を用いて手で作成される、及び／または描画される。ユーザ装置を動かす間、位置コード化パターンの複数の画像がユーザ装置の先端で局所的に連続記録される。各画像に含まれる一つまたは複数のシンボルが位置に復号される。復号された位置は、複数の位置が一緒になって、ユーザ装置のベース上での動きのデジタル記述を構成する。
【０００５】
記録された画像の中の位置コード化パターンは、さまざまな方法で復号できる。例えば、前述の米国第２００３／００１２４５５号は、位置コード化パターンの記録された領域内で特定されるシンボルが、複数の異なる取り得る値（復号値）を取る確率を計算することを含む復号方法を開示している。これらの確率は、確率行列において実数（浮動的な精度の実数）として記憶され、特定されたシンボルを位置コード化パターンにおける位置の座標に復号するために、異なる取り得る値（復号値）とともに使用される。
【０００６】
前述された米国第６,６７４,４２７号及び米国第６,６６７,６９５号は、位置コード化パターンの記録された画像から位置を復号するまたは位置を求める他の方法を開示する。
【０００７】
既知の位置復号方法は、次のような共通の特徴を有していると見なすことができる。その特徴とは、「シンボルデータが、復号される複数の画像の並びの中の一つの画像から取得されること」、「位置データが、位置コード化パターンの基本的なコード化データを含む一つまたは複数のデータ構造内で、シンボルデータを用いて一つまたは複数のルックアップ動作を行うことによって取得されること」及び／または「シンボルデータまたは位置データが、絶対位置の計算のための数式に対する入力データとして使用されること」である。
【０００８】
本出願人が出願中の米国出願番号第１０／２８２,００１号（本願の出願日にはまだ公に入手できなかったが、後に米国第２００３／０１２８１９４号として公開された）は、位置コード化パターンの記録された領域についての位置が既知の方法（例えば、前述の米国第２００３／００１２４５５号の方法など）で計算される位置復号のための方法を開示している。しかしながら、その位置について復号エラーが検出された場合、その位置について全体として、または、その位置の座標のうちの一つについて、追加の演算が「最後の手段」として実行される。つまり、記録された領域から得られる情報が、無事に復号された位置の周辺のマッチング領域において位置コード化パターンがどのように構成されているのかの情報と、比較またはマッチングされる。既知のマッチング領域の最良のマッチング部分が選択され、対応する位置が復号された位置として決定される。このように、要約すれば、米国第２００３／０１２８１９４号は、記録された領域からの位置の計算による復号を必ず用いること、そして、復号が失敗した場合には追加のマッチングの演算が続けて行われることを開示している。
【特許文献１】米国第５,４７７,０１２号
【発明の開示】
【発明が解決しようとする課題】
【０００９】
本発明の目的は、位置コード化パターンの記録された画像から位置復号する既知の方法に代替策を提供することである。
【００１０】
さらに具体的には、本発明の目的は、位置コード化パターンの高速で効率的かつ堅牢な復号を可能にすることである。
【００１１】
一般的には、本発明の目的は、少なくとも部分的に、独立クレームによる方法、装置、コンピュータプログラム及び記憶媒体によって達成され、好適な実施形態は、従属クレームにより定められる。
【００１２】
本発明の第一の態様は、位置符号化のための方法である。この方法では、センサによって記録が行われたときに、位置コード化パターンの画像の並びから位置の並びが取得される。この方法は、少なくとも一つの参照位置を取得するステップと、位置コード化パターンの複数の画像の各々から得られる情報を、対応するパターン参照領域とマッチングすることのみによって、複数の位置の並びを求めるステップとを含む。対応するパターン参照領域は、参照位置と所定の空間的な関係のある位置コード化パターンの既知の部分集合（サブセット）を表す。
【００１３】
複数の画像の各々からの情報を対応するパターン参照領域とマッチングすることのみによって位置の並びが求められるとは、この方法が、マッチング以外の別の方法で位置を計算する試みがなされるステップ（先行して行われるステップ）に基づかないことを意味する。
【００１４】
複数の位置の並びの中の各位置を求めることは、パターン参照領域内において、前記情報と前記パターン参照領域のマッチした相対位置（ロケーション）を求めることと、前記相対位置によって前記空間な関係を調整することにより位置を求めることと、によって行うことができる。このようにして、複数の位置の並びを、高速且つ効率的な方法で求めることができる。
【００１５】
パターン参照領域は、位置コード化パターンの既知の部分集合を表すものである。このパターン参照領域は、復号されるべき各画像について生成されてもよい。代わりに、パターン参照領域は、間欠的に生成されてもよく、複数の画像の並びに含まれるいくつかの連続する画像の復号に使用されてもよい。
【００１６】
少なくとも一つの参照位置に対するパターン参照領域の既定の空間的な関係は、直接的（すなわち、各パターン参照領域の空間的なロケーションが、一つまたは複数の参照位置から直接的に定められるまたは計算される）であってもよく、あるいは、間接的（すなわち、空間的なロケーションが、一つまたは複数の先行する位置から定められるまたは計算される）であってよい。先行する位置とは、先行するマッチングのステップにより求められたという意味で、先行している。それぞれの先行する位置は、また、一つまたは複数の参照位置に関して、直接的にまたは間接的に、定められた空間的なロケーションを有する。
【００１７】
空間的な関係は、少なくとも一つの参照位置に基づいて推定される予測位置によって与えられてよく、予測位置に対して所定の位置関係をもって生成されるパターン参照領域によって与えられてよい。好ましくは、予測位置は、パターン参照領域によって表されるような位置コード化パターンの既知の部分集合に含まれる。これにより、マッチングが、予測位置の周辺で行われてよい。
【００１８】
予測位置を推定するステップは、各画像について行われて、予測位置の並びを生成してもよく、この予測位置の並びは、次にマッチングのステップによって複数の位置の並びに変換されてよい。この変換は、予測位置のグループについて行われてもよく、あるいは、予測位置（以後の予測位置の推定の前にマッチングによって復号位置へ変換される）ごとに順に行われてもよい。
【００１９】
各予測位置は、少なくとも二つの先行する位置に基づいて推定される。これらの少なくとも二つの先行する位置は、少なくとも一つの参照位置、及び／または、位置の並びから選択される。さらに、各予測位置は、少なくとも二つの先行する位置の多項式補外（例えば一次関数による補外など）によって推定される。
【００２０】
参照位置は、位置復号または位置計算の従来の方法に従って、位置コード化パターンの画像に基づいて位置を計算することによって、求められる。この計算は、通常、画像の並びに先行する画像（離れた画像）からシンボルデータを取得することと、位置コード化パターンの根本的なコード化データを含む一つまたは複数のデータ構造の中で、シンボルデータを使用して一つまたは複数のルックアップ動作を行うことによって、位置データを取得することと、及び／または、絶対位置の計算のための数式にシンボルデータまたは位置データを入力すること、とを含む。
【００２１】
参照位置を求めるステップは、間欠的に行われて、少なくとも一つの参照位置を更新または置換してもよい。このようにして求められた一つまたは複数の参照位置は、以後の画像の並びについての以後のマッチングのステップで使用される。参照位置を求めることは、決められたサンプリング間隔で行われてよく、あるいは、参照位置を求めることの必要性や機会が検出されるたびに行われてよい。位置コード化されたベース上での書き込み道具の動きをデジタル化する際、一つの手書きストロークは、マッチングにより取得される複数の位置の連続する並びによって表現されてよい。この方法は、適切には、書き込み道具の動きの真の表現を形成できるように、一つまたは複数の位置の並びと少なくとも一つの参照位置をマージするステップを含んでよい。
【００２２】
ある実施形態では、複数の画像の並びに含まれる個々の画像についての対応するパターン参照領域は、その個々の画像において位置コード化パターンにより表現される位置に対する複数の候補を定める複数の部分領域を含む。この実施形態では、マッチングのステップは、個々の画像から取得される情報を、対応するパターン参照領域に含まれる複数の部分領域のそれぞれと比較することを含んでよい。マッチングのステップは、一つの候補を選択することをさらに含んでもよい。選択される候補は、比較するステップにおいて、個々の画像から取得される情報と複数の部分領域のどれかとの間で一致が見られたものである。
【００２３】
位置の復号について前述された方法は、Ａｎｏｔｏ ＡＢによって開発され、例えば米国第６,６７４,４２７号または米国第６，６６７,６９５号に説明される位置コード化パターンのいずれかとともに有利に使用可能である。したがって、位置コード化パターンは、複数のマークを備えてよい。各マークが、少なくとも一つの次元で、少なくとも二つの異なる値の内の一方をコード化する。
【００２４】
前記のような種類の位置コード化パターンとともに使用することに適応される一つの実施形態では、マッチングのステップは、確率行列を生成することによって、複数の画像の並びに含まれる個々の画像から情報を取得することを含む。確率行列は、個々の画像内に含まれる位置コード化パターンのサブ領域を表すものであって、そのサブ領域内の各マークについての行列要素を含んでいる。各行列要素は、それのマークの最も可能性のある推定値を表す値、または、そのマークについて推定値が得られないことを表す値のどちらかを持つように適応される。最も可能性のある推定値を表す値は、好ましくは、整数値である。確率行列で整数値（二進数など）を使用すると、パターン参照領域との高速且つ効率的なマッチングが可能になる。整数で実行される行列演算は、例えば実数より実行するのが速い。
【００２５】
前記のような種類の位置コード化パターンでは、各マークが、第一の次元での二進値（バイナリ値）をコード化するとともに、第二の次元での二進値（バイナリ値）をコード化する。その場合、第一の確率行列は、第一の次元でのマークの値について生成されてよく、第二の確率行列は、第二の次元でのマークの値について生成されてよい。
【００２６】
ある実施形態では、マッチングのステップは、確率行列を、対応するパターン参照領域に含まれる複数の部分領域のそれぞれと比較することを含む。この比較は、確率行列の一つの次元での内容と、等しいサイズの部分領域の同じ次元での内容との間でのビット単位の相関により、行われる。
【００２７】
別の実施形態は、特に位置コード化パターンとともに使用することに適応されている。その位置コード化パターンの各次元は、循環主数列のシフトに基づいている。循環主数列に含まれる部分数列であって、第一の所定の長さ以上の長さを有する部分数列は、曖昧さなしに決定される循環主数列における位置を有する。差分数列は、位置コード化パターンにおける循環主数列のペアの間のシフトの差分を表す差分数が並んだものであるが、この差分数列に含まれる部分数列であって、第二の所定の長さ以上の長さを有する部分数列は、曖昧さなしに決定される差分数列における位置を有する。このパターンは、上記で参照された種類のものであってよい。この実施形態では、マッチングのステップは、パターン参照領域について第一の集合の差分数の集合を取得することと、確率行列から第二の集合の差分数の集合を取得することと、第二の差分数の集合を第一の差分数の集合とマッチングすることと、その次元において、マッチングの結果から、位置コード化パターンの位置を求めることと、を含む。
【００２８】
第二の差分数の集合の取得は、確率行列のそれぞれの行または列を循環主数列とマッチングして、その行またはその列についての主数列位置を推定することと、確率行列の行のペアまたは列のペアについて、推定された主数列位置を差し引くことによって、第二の差分数の集合を求めることと、によって行われる。
【００２９】
本発明の第二の態様は、センサによって記録された位置コード化パターンの部分領域から取得される情報に基づいて位置を求めることにより、位置を復号する方法である。位置コード化パターンは、複数のマークを備えており、各マークは、少なくとも一つの次元で、少なくとも二つの異なる値のうちの一方をコード化するものである。この方法は、部分領域内の各マークについて行列要素を含む確率行列を生成することを含む。各行列要素は、そのマークの最も可能性のある推定値を表す値、または、そのマークについて推定値が得られないことを表す値のどちらかを持つように適合されている。また、この方法は、位置コード化パターンのパターン参照領域内で位置コード化パターンがどのように構成されるかについての情報と、確率行列とをマッチングすることを含む。パターン参照領域は、部分領域より広く、部分領域を含むものである。また、この方法は、マッチングが確率行列とパターン参照領域との間で一致が見られた位置であって、パターン参照領域により定められる複数の位置のうちの一つの位置を、復号されるべき位置として選択することを含む。
【００３０】
前述された方法は、ハードウェアまたはソフトウェアにおいて実行できる。本発明の第三の態様は、コンピュータプログラムであり、コンピュータ内で実行されると、コンピュータに第一の態様または第二の態様による方法を実行させるプログラムコードを備えている。
【００３１】
コンピュータプログラムは、復号されるべき位置についての部分領域を撮影するセンサと同じ装置の中に、あるいは別の装置の中に、配置されるプロセッサによって実行され得る。
【００３２】
コンピュータプログラムは、ＲＡＭ、ＳＲＡＭ、ＤＲＡＭ、ＳＤＲＡＭ、ＲＯＭ、ＰＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ等、光ディスク、磁気ディスク、またはテープの記憶媒体あるいは市販されている他の記憶媒体の形で、記憶されて配布され得る。記憶媒体は、伝搬信号である場合もある。
【００３３】
第四の態様によれば、本発明は、第一あるいは第二の態様に従った方法を実行するように適応された信号処理装置を備える装置に関する。
【００３４】
信号処理装置は、ＡＳＩＣ（特定用途向け集積回路）またはＦＰＧＡ（フィールドプログラマブルゲートアレイ）などの、特に適応されたハードウェアによって、デジタル回路またはアナログ回路によって、あるいはその任意の組み合わせによって適切にプログラミングされたプロセッサによって実現されてよい。
【００３５】
本発明の他の目的、特徴及び優位点は、本発明の以下の詳細な説明から、添付された請求項から、及び図面から明らかである。
【００３６】
本発明のさまざまな実施形態の特徴が一つの同じ実施形態で結合されてよいことは言うまでもない。
【００３７】
一般的に、請求項で使用されるすべての用語は、ここに明示的に別段に定められる場合を除き、技術分野におけるそれらの通常の意味に従って解釈されるべきである。一つの／前記［要素、装置、構成要素、手段、ステップ等］に対する言及はすべて、特にそれ以外に明白に述べられない限り、要素、装置、構成要素、手段、ステップ等の少なくとも一つの例を指していると解釈されるべきである。ここに開示される任意の方法のステップは、明示的に別段に定められる場合を除き、開示されている正確な順序で実行される必要はない。
【実施例】
【００３８】
図１は、本発明を使用できる情報管理のためのシステムを示している。このシステムは、用紙の形をとるベース１と、ユーザ装置２と、外部装置３を備えている。用紙には、位置コード化パターンが備えられる。図１では、その小さい部分４だけが大きな縮尺で概略表示されている。ユーザ装置２は、通常のペンと同様に用紙１の上に書くために使用することができ、同時に、書かれている内容をデジタル形式で記録するために使用され得る。デジタルで記録された情報は、ユーザ装置２及び／または外部装置３で処理され得る。これらの装置には、自動的に（オンラインで）あるいはユーザによって命令されると、デジタルで記録された情報が送られる。デジタルで記録される情報が用紙上の情報を正確に反映するためには、位置復号が可能な限り正確に且つ完全に行われることが重要である。
【００３９】
位置コード化パターン（後でより詳細に説明される）は、グラフィカルなシンボルで構成されている。これらのシンボルは、所定の規則に従って構成または設計されている。すなわち、位置コード化パターンの部分領域（所定の最小サイズを有する部分領域）が正確に撮影されると、位置コード化パターンにおける部分領域の位置が、撮影された部分領域内の一つまたは複数のシンボル及び所定の復号アルゴリズムによって、曖昧さなしに求められる。位置は、直交座標系または別の座標系の一組の座標として取得できる。
【００４０】
ユーザが、用紙１の上でユーザ装置２によって書き込みを行うと、ユーザ装置は、ユーザ装置の先端の位置コード化パターンの部分領域の画像を連続的に記録する。各画像は位置に復号される。その結果、このような復号された位置の並びが、用紙上のユーザ装置２の動きのデジタル表現、ひいては用紙上に書かれているもののデジタル表現を構成する。
【００４１】
位置コード化パターンの復号は、ユーザ装置２で、外部装置３で、あるいは多少処理された形で位置コード化パターンの画像が送信される他の装置で、行われ得る。
【００４２】
前述したように、部分領域の情報は、所定の復号アルゴリズムによって復号される。これは、部分領域が正しく撮影される限りうまく機能する。しかしながら、実際の条件下では、ユーザ装置は、多くの場合、部分領域を完全に正確に撮影することができない。例えば、不十分な照明状態のために、部分領域を完全に正確に撮影することができないことがある。あるいは、部分領域を斜めに撮影させるような傾いた位置でユーザがペンを保持するときに、部分領域を完全に正確に撮影することができないことがある。あるいは、記録された画像が撮影機構または信号雑音などの他の外乱によって変形する場合に、部分領域を完全に正確に撮影することができないことがある。復号アルゴリズムがシンボルを誤って解釈したり、あるいはシンボルを見失う場合があるが、それによって位置を正確に復号するのがさらに困難になる。また、位置コード化パターンが用紙上にあまり正確に複製されず、用紙に適用されるときにある程度変形してしまった場合に、エラーが発生することもある。一定の条件下では、エラーを発見することができる。例えば、位置コード化パターンがエラー検出を可能にする冗長な情報を含んでいる場合、あるいは、復号された位置が過去に復号された位置または以後に復号される位置に関して適切でない場合などである。
【００４３】
図２及び図３は、位置コード化パターンの部分領域の画像を復号することによって位置を求める、本発明の一般的な方法を示す。この方法は、位置コード化パターンの部分領域の中のすべてのシンボルを無事に記録、解釈することがたとえ可能でなかったとしても、高速で効率的、かつ信頼できる復号を可能にする。用紙１は、位置コード化パターンＰ（明確化のために、図２では図示されない）を備える。しかしながら、位置コード化パターンＰの小さな部分は、図４に符号２０で示されている。以下でさらに詳細に説明されるように、位置コード化パターンは、複数のマーク２２を備える。これらのマーク２２は、位置コード化パターンのコードシンボルを部分的に構成する。
【００４４】
図２に示すように、位置コード化パターンＰのコード位置Ｐ１とＰ１’の二つの部分領域ＰＡ１とＰＡ１’が、それぞれ位置Ｐ１とＰ１’をコード化する。図２では、位置Ｐ１とＰ１’が、任意の適用可能な復号方法を用いて、部分領域ＰＡ１とＰＡ１’の記録された画像から無事に復号されたと仮定される。次に、図３のステップ３１０では、対応する位置Ｐ２を復号することが所望される新しい部分領域ＰＡ２の画像（図２には明示的に図示されていない）が記録される。記録された画像は、続くステップ３３０について適切な入力を形成するために、ステップ３２０で事前に処理される。ステップ３２０では、マーク２２が特定され、仮想ラスタ２１がそのマークにフィットされる。ステップ３２０と３３０は、公知の技術を用いて実行されてよい。この公知の技術とは、例えば、フィルタリング、二値化、または閾値化、及び、様々なドットのペアの間の距離の利用、または、フーリエ変換の利用などである（例えば、米国第６,５４８,７６８号及び米国第２００２／００４４１３８号に説明されている）。
【００４５】
ステップ３２０と３３０に続いて、実際の復号が、ステップ３４０と３５０で行われる。まず、一組の行列（以下でｘ−ＢＯＰＭとｙ−ＢＯＰＭと呼ばれる）が、ｘ次元とｙ次元の部分領域ＰＡ２のマーク２２によって表される値を推定することにより生成される。これらの行列により保持される情報は、次に、マッチング（マッチング領域ＭＡにおいて位置コード化パターンＰがどのように構成されるのかについての情報とのマッチング）のために使用される。マッチング領域ＭＡの情報は、マッチングによるただ一つの位置の復号専用に生成されてよい。図２に見られるように、また、さらに詳細に後述されるように、マッチング領域ＭＡは、部分領域ＰＡ２より大きく、部分領域ＰＡ２の予測ＰＡ２predictedに対して既定の位置関係を有する。予測ＰＡ２predictedは、前に復号された部分領域ＰＡ１とＰＡ１’の位置Ｐ１とＰ１’から求められる予測位置Ｐ２predictedに対応する。ここで、位置Ｐ１とＰ１’は、発明の概要で述べた「少なくとも一つの参照位置」の例であり、マッチング領域ＭＡは、「パターン参照領域」の例である。
【００４６】
マッチング領域ＭＡのサイズは、通常の手書き速度またはデフォルトの手書き速度を反映する定数値である。例えば、マッチング領域ＭＡは、３２×３２のコードシンボルを含んでよい。代わりに、マッチング領域ＭＡのサイズは、現在の手書き速度などの適切な入力データに応じて動的に調整されてよい。部分領域ＰＡ２のサイズは、マッチング領域ＭＡのサイズを考慮して、また、記録された画像のサイズに応じて選ばれてよい。部分領域ＰＡ２は、記録される画像の全体を占有する必要はない。部分領域は、曖昧でない位置決定のために、前述された最小サイズを有する必要もない。一般的に、復号プロセスの堅牢性は、部分領域のサイズが拡大するにつれて強まるのに対し、復号プロセスの速度及び効率は、部分領域のサイズが縮小するにつれて高まる。現在、部分領域ＰＡ２に、１６×１６のコードシンボルのサイズが使用される。
【００４７】
ステップ３４０と３５０の結果は、マッチング領域ＭＡのサブ領域（均等なサイズにされたサブ領域）に最も良くマッチする部分領域ＰＡ２matchedと、マッチング領域ＭＡに関するＰＡ２matchedの相対的なロケーション（つまり、予測位置Ｐ２predictedに関するＰＡ２matchedの相対的なロケーション）である。位置Ｐ２matchedは、結果として生じる部分領域ＰＡ２matchedにより定められ、この相対的なロケーションを予測位置Ｐ２predictedに単に加えることのみによって求められてもよい。図２に示されるように、実際には、予測された部分領域ＰＡ２predictedは、記録された部分領域ＰＡ２と正確に一致しないであろう。しかし、マッチした部分領域ＰＡ２matchedは、記録された部分領域ＰＡ２と正確に一致するであろう。したがって、この復号方法の結果は、求めていた位置Ｐ２と同一の位置Ｐ２matchedとなるであろう。求められた位置は、ステップ３６０で検証されてよい。
【００４８】
図６と図７には、本発明による位置復号が実行され得る装置（電子ペンの形をとる）の簡略な説明が示される。
【００４９】
図６と図７の装置は、図１のユーザ装置２を構成できる。この装置は、ペンとほぼ同じ形状を有するケーシング２０１１を備える。ケーシングの一つの短辺には、開口部２０１２がある。この短辺は、位置決定が行われる表面に当接する、または、表面から短い距離で離れて位置されることを目的とする。
【００５０】
ケーシングは、本来、光学部品、電子回路部品及び電源を含む。
【００５１】
光学部品は、撮影されるべき表面を照明するための発光ダイオード２０１３と、二次元画像を記録するためのＣＣＤ（電荷結合素子）またはＣＭＯＳ（相補型金属酸化膜半導体）センサなどのセンサ２０１４を備える。装置は、鏡及び／またはレンズ系等の光学システムも備えてよい。発光ダイオードは、赤外線発光ダイオードである場合があり、センサは、赤外線に感度がある場合がある。
【００５２】
一般的に言えば、画像センサ２０１４は、マークの画像が白黒、グレースケール、あるいはカラーで取得されるように位置コード化パターンを撮影するのに適した任意の種類のセンサによって置換されてよい。このようなセンサは、任意の適切な波長範囲における電磁放射に感度があるソリッドステートのシングルチップデバイスまたはマルチチップデバイスである場合がある。例えば、センサは、ＣＣＤ素子、ＣＭＯＳ素子、またはＣＩＤ素子（電荷注入装置）を含んでよい。代わりに、センサは、マークの磁気特性の検出のために磁気センサアレイを含んでよい。なおさらに、センサは、マークの化学的性質、音響特性、容量特性、または誘導特性の画像を形成するように設計されてよい。
【００５３】
装置の電源は、ケーシングの分離した区画に取り付けられる電池２０１５から得られる。電源は、外部電源（不図示）からケーブルを介して得ることもできる。
【００５４】
電子回路部品２０１６は、作業メモリとプログラムメモリだけではなく、センサから画像を読み取り、これらの画像に基づいて位置計算、マッチング、及び検証を実行するためにプログラムされてよいプロセッサ付きのプロセッサ装置も備える。
【００５５】
さらに、図示されている実施形態では、装置は、ペンポイント２０１７を備えることができ、そのペンポイント２０１７を用いて、位置決定が実行されることになる表面上に通常の染料をベースにしたインクを書き込むことができる。ペンポイント２０１７は、延長可能且つ格納可能であり、その結果、ユーザはそれが使用されるべきかどうかを制御できる。特定の用途では、装置は、まったくペンポイントを有する必要がない。
【００５６】
マークは、赤外線を吸収するが、染料をベースにしたインクは、赤外線に対して透明である種類であるのが適切である。赤外線を発する発光ダイオード及び赤外線に感度があるセンサを使用することにより、前述された書き込みと位置コード化パターンの間で干渉を受けずにパターンの検出が行われる。
【００５７】
さらに、装置は、ユーザがそれによって装置を起動、制御するボタン２０１８を備えてもよい。また、装置は、例えばケーブル、赤外光、電波、または超音波を使用する装置への、及び、装置からの情報の有線伝送または無線伝送のためにトランシーバ２０１９を備える。また、装置は、位置、記録される情報または他の情報をユーザに示すためのディスプレイ２０２０を備えることができる。
【００５８】
装置は、異なる物理的なケーシングに分割できる。位置復号を実行するために必要である信号処理装置及び他の構成部品は、第二のケーシングに配置されてよい。一方、位置コード化パターンの画像を捕捉するため、及びそれらを送信するために必要であるセンサ及び他の構成要素は、第一のケーシングに配置されてよい。
【００５９】
図７は、図６に図示される装置の電子回路部品２０１６及び画像センサ２０１４の概略ブロック図である。ＡＳＩＣ７００は、電子回路部品２０１６を実装し、電子回路のメインコントローラとしてＣＰＵ７２０を含む。ＣＰＵ７２０は、オンチップデータバス７６０を通してメモリ７３０にアクセスできる。画像センサ２０１４は、ＡＳＩＣ７００のデータバス７６０に接続され、約１００Ｈｚの周波数で９６×９６ピクセル、２５６レベルのグレイスケールのデジタル画像を生成できるＣＭＯＳ領域センサ７５０として実装される。ＡＳＩＣ７００上の画像プリプロセッサ７１０は、図３のステップ３２０に従って画像センサ７５０から受信された画像を操作し、メモリ７３０に前処理された画像を記憶する。ＣＰＵ７２０は、ｘ−ＢＯＰＭ行列とｙ−ＢＯＰＭ行列を生成し、部分領域の位置への復号も実行するであろう。マッチングユニット７４０は、これらのタスクでＣＰＵ７２０を補助する。代替実施形態では、ＡＳＩＣ７００は、前処理された画像を中間記憶することなく動作するように設計されてよい。
【００６０】
以下では、位置の復号が、特定の位置コード化パターン（出願人によって開発され、とりわけ米国第６，６６７，６９５号に完全に説明される）を参照して、さらに詳しく説明されるであろう。これと類似する種類の位置コード化パターンは、国際公開第０１／１６６９１号パンフレット、米国第６,６６３,００８号、及び米国第６,６７４,４２７号に詳細に説明される。代替の位置コード化パターンは、米国第６,５７０,１０４号に示されている。
【００６１】
位置の符号化は、以下で差分数列と呼ばれる数列に基づいている。この差分数列は、所定の長さの任意の部分数列（例えば、五個の差分数で構成される部分数列）を一つ取ると、この部分数列が、曖昧さなしに決定される差分数列における位置（ロケーション）を有する、という特性を有している。言い換えると、その部分数列は、差分数列においてただ一回だけ現れ、したがって位置決定に使用できる。さらに具体的には、差分数列は、位置コード化パターンのｙ軸に沿って「延びている」だけではなく、ｘ軸に沿っても「延びている」。
【００６２】
実際の位置コード化パターンは、簡略なグラフィカルなシンボル２２から構成される。これらのグラフィカルなシンボル２２は、四個の異なる値（０から３）を取ることができる。図４と図５に示すように、各シンボル２２は、一つのマークを含んでいる。マークは、例えばドットの形状を有することができ、距離２４がノミナル位置２３またはラスタポイントを基準にして異なる四つの方向の内の一つの方向に変位され得る。ノミナル位置２３は、グリッド内のラスタ線２１（エリアセンサにとって完全にまたは部分的に可視である）の交点に位置し、仮想のものであってよい（すなわち、ペンの中のエリアセンサにとって、あるいは、実際に不可視であってよい）。シンボルの値（シンボル値）は、変位の方向で求められる。各シンボル値（０から３）は、ｘ座標をコード化するために使用される１ビットとｙ座標をコード化するために使用される１ビット、つまりビットの組、（０，０）、（０，１）、（１，０）、及び（１，１）に変換できる。このようにして、位置の符号化は、ｘ方向とｙ方向で別々に行われるが、グラフィカルには、ｘビットとｙビットに共通であるシンボルで行われる。
【００６３】
距離２４は、適切には、二本の隣接するラスタ線２１の間の距離の約１／８以上、約１／４以下であり、好ましくは、約１／６である。距離は、例えば約３００ミクロンまたは約２５４ミクロンであり得る。後者の距離は、多くの場合１００ｄｐｉ（１インチあたりドット）の倍数である解像度を有するプリンタとスキャナに特に適している。
【００６４】
各位置は、６＊６個のシンボルによってコード化される。６＊６個のシンボルは、位置のｘ座標についての６＊６のビット行列と、ｙ座標についての６＊６のビット行列に変換できる。ｘ座標についてのビット行列について考えると、そのビット行列（ｘビット行列）は、それぞれが６ビットから成る六つの縦列に分割できる。一つの縦列内のビットの並びは、６３ビット長の循環主数列に含まれる部分数列を構成する。この循環主数列は、長さ６ビットの部分数列が選択されると、その部分数列が曖昧さなしに決定される循環主数列における場所を有する、という特性を有している。したがって、六つの縦列は、六個の位置番号（つまり、循環主数列における六つの位置に相当する値の並び）に変換され得る。これらの六個の位置番号の間では、ペアで五個の差分数を形成することができる。これら五個の差分数が、差分数列の部分数列を構成し、曖昧さなしに決定される差分数列における場所を有する。したがって、これらの五個の差分数は、ｘ軸に沿った方向で、曖昧さなしに決定される場所を有する。あるｘ座標について、位置番号は、ｙ座標に応じて変化するであろう。しかし、位置番号は、全体的な位置コード化パターンの中の縦列で循環して繰り返される主数列に従って常に変化するため、差分数は、ｙ座標に無関係に同じになるであろう。
【００６５】
同様に、ｙビット行列内の六つの横行は、循環主数列内の六個の位置番号を定める。これら六個の位置番号は、五個の差分数を定める。これらの五個の差分数は、差分数列の部分数列を構成し、ｙ軸に沿った方向で、曖昧さなしに決定される場所を有する。
【００６６】
位置コード化パターンが使用されると、位置コード化パターンのさまざまな部分の画像が、前述されたように記録される。通常、画像は、６＊６個のシンボルよりかなり多くのシンボルを含む。したがって、復号は、画像内の最良のｎ＊ｍ個のシンボルに基づいてよく、ｎとｍは、６以上の任意のシンボルの数である。例えば、復号は、最良の８＊８個のシンボルまたは１６＊１６個のシンボルに基づいてよい。とりわけエラー検出及び／または補正のために余分なシンボルが使用される。
【００６７】
以下において、前述した位置コード化パターンに基づいた位置の復号が、図面を参照して説明される。位置の復号は、好ましくはプロセッサ及び図１のユーザ装置２または外部装置３または他の装置内で使用できる適切なプログラムコードによって実行される。
【００６８】
位置コード化パターンは、必ずしも完全に表面で複製されるわけではなく、ユーザ装置が撮影中に位置コード化パターンを変形することがあるため、ドットの変位（すなわち、シンボルの値）をきわめて安全に求めることは困難である可能性がある。代わりに、各シンボルについて、シンボルが四つの異なる可能な値のどれを取るか、という確率が求められてよい。本発明の実施形態によれば、撮影された部分領域ＰＡについて、図３のステップ３４０で、前述の二つの行列が生成される（一つは縦列（ｘ座標の符号化）について、一つは横行（ｙ座標の符号化）について）。これらの二つの行列の各行列要素は、それぞれ整数の値を含んでよく、この整数の値は、ｘ方向とｙ方向のシンボルの推定された二進値（バイナリ値）を表す。これは、例えば、各行列要素がそれぞれシンボル値「０」と「１」の確率を表す二個の実数の値（浮動的な精度の値）を含んでいた従来の技術（前述された米国第２００３／００１２４５５号）と対照的である。これら二つの行列は、バイナリオフセット確率行列（ＢＯＰＭ）と呼ばれてよく、図中では「ｘ−ＢＯＰＭ」と「ｙ−ＢＯＰＭ」として示される。
【００６９】
さらに、ｘ−ＢＯＰＭ行列とｙ−ＢＯＰＭ行列の各行列要素は、そのシンボルに二進値が推定されなかったことを示してもよい。例えば、四つの取り得る変位の位置（図５）のうちのどれを問題のマーク２２が取っているのかを、ある程度の確実性のレベルで決定することが可能でなかった場合などである。
【００７０】
したがって、ｘ−ＢＯＰＭ行列とｙ−ＢＯＰＭ行列の各行列要素は、値「０」、「１」または「−」のどれかを含み、ここで、値「−」は、そのシンボルに二進値が推定されなかったことを表している。
【００７１】
記録され前処理された画像を分析して、可能な場合には（マーク２２の変位によって示されるような）ｘ方向とｙ方向のシンボルの二進値を推定し、それ以外の場合には不確実性値「−」によってシンボルを表すときには、多様な方法が利用されてよい。
【００７２】
例えば、特定されたマークごとに、それが図５に示される理想的な四つの変位位置のいずれかの周辺の、特定の「安全な」ゾーン内にあるのかどうかが調べられてよい。このような「安全な」ゾーンは、例えば、四つの理想的な変位位置の内の代表的な位置にその中心を有し、所定の半径を有する円形の領域によって画定されてよい。したがって、マークがこのような「安全な」ゾーン内にあることが判明すると、シンボルは「安全な」ゾーンの中心を形成する理想的な変位位置によって表される値を有することになる。
【００７３】
代わりに、フルスケールの実数の確率行列は、理想的な変位位置からマークの変位に基づいた実数の確率値を出力する距離関数に基づいて計算されてよい。このような計算の例は、前述の米国第２００３／００１２４５５号に示されている。次に、確率閾値が実数の確率行列に適用されてよく、その結果、例えばこのような確率行列が、特定のマークが、閾値である０．８を超える確率で「０」または「１」を符号化することを示す場合に、ｘ−ＢＯＰＭ行列またはｙ−ＢＯＰＭ行列の中の対応する行列要素が「０」または「１」に設定され、それ以外の場合は、行列要素が「−」に設定される。
【００７４】
さらに代替策として、マークの符号化が、ラスタポイント２３を通る対角線より上にある二つの理想的な位置（例えば、図５の位置ｂとｃ）だけではなく、このような対角線の下にある他の二つ（例えば図５の位置ａとｄ）にも、同じｘ値（ｙ値）が使用される場合、特定されるマークのロケーションと、このような対角線に対するそれの距離が、問題のシンボルの二進値を推定するために使用されてよい。
【００７５】
このようにして生成されたｘ−ＢＯＰＭ行列とｙ−ＢＯＰＭ行列は、開示される実施形態に従って、図３のステップ３５０で二つの異なる方法で使用され、記録された画像の部分領域ＰＡに含まれる位置コード化パターンによって符号化された位置が復号される。
【００７６】
図８から図１０を参照して説明される第一の実施形態では、パターン近傍マッチング（ＰＮＭ）と呼ばれる方法が使用される。この方法は、（ｘ−ＢＯＰＭ行列とｙ−ＢＯＰＭ行列によって表されるような）記録された部分領域ＰＡを、位置コード化パターンにおいて予測位置の周辺で生成される位置コード化パターンのより大きなマッチング領域ＭＡとマッチングするためのものである。予測位置は、位置コード化パターンの先行する部分領域によって画定された先行する位置から生成される。ここでは、記録された部分領域ＰＡと生成されたマッチング領域ＭＡの間の完全なビット単位の相関がとられる。したがって、この方法は、記録された部分領域ＰＡがいくつかの不確実なシンボルまたは不正確に推定されたシンボルを含む場合にも、無事に復号できるであろう。
【００７７】
図１１から図１３を参照して説明される第二の実施形態は、パターン数列マッチング（ＰＳＭ）と呼ばれる方法に関する。ここでは、記録された部分領域ＰＡとマッチング領域ＭＡの間の完全なビット単位の相関はとらない。代わりに、記録された部分領域ＰＡにおいて見出される差分数列と、位置コード化パターンの予測位置の周辺で再び生成されるより大きなマッチング領域ＭＡのための差分数列との間でマッチングが行われる。この方法は、実行されるマッチの数がＰＮＭ方法の場合より少ないため、より高速となる（理想的には、実行時間は、辺長の積と比較してマッチング領域の辺長の合計に比例するであろう）。しかしながら、多くの不確実なシンボルまたは不正確に推定されたシンボルのある部分領域を復号する能力は低い。
【００７８】
＜パターン近傍マッチング＞
前述したように、位置コード化パターンは、ｘ符号化とｙ符号化の組み合わせである。したがって、復号は、二つの次元に別々に処理されてよい。図８は、部分領域８００を概略的に示す図である。部分領域８００は、１０×１０のラスタの交点と、それぞれの交点からさまざまな変位に配置されるドットとから構成される。各縦列（及び各横行）について、ドットが四つの取り得る理想的な変位（例えばラスタのセルサイズの１／６だけ「右」、「上方」、「左」または「下方」への変位）の内の一つに十分近くに位置することを識別することによって、符号化されたｘ（及びｙ、それぞれ）の値のいくつかが求められてよい。例えば、ドット８４０は、「左」への変位を表すと決定されてよい。これにより、符号化の凡例８３０に従って、（ｘ，ｙ）＝（１，０）が生じることになる。他方、いくつかのラスタの交点では、近傍のドットが何を符号化するのかを決定することができないこともあるであろう。例えば、ドット８５０は、そのラスタの交点に近くに位置しすぎているし、また、交点８６０では、ドットがまったく存在していない。これらのケースでは、ｘの値もｙの値も推定することができない。したがって、ｘ次元及び／またはｙ次元で、特定のラスタ交点での値についての不確実性を表すことの必要性がある。
【００７９】
前述したように、図３のステップ３４０に従って、記録された部分領域の縦列と横行を詳しく検討することにより、縦列の符号化（例えば図８の８２０）と横行の符号化（例えば図８の８１０）の解釈を表すために三つの文字、つまり値「０」、「１」、及び「−」が使用されてよく、値「−」はドット変位についての不確実性を表す。
【００８０】
すでに言及されたように、このプロセスは、縦列のために一つ（ｘ座標符号化）と横行のために一つ（ｙ座標符号化）の二つの行列（すなわち、バイナリオフセット確率行列ｘ−ＢＯＰＭとｙ−ＢＯＰＭ）を生じさせる。ｙ−ＢＯＰＭの例は、図１０の１０１０で示される。ある意味では、ｘ−ＢＯＰＭとｙ−ＢＯＰＭは、二進値（バイナリ値）に加えて、不確実性を表す一つの値も有するため、それらは二つの部分からなるというよりは三つの部分からなる。
【００８１】
ｘ−ＢＯＰＭとｙ−ＢＯＰＭは、メモリ７３０に記憶されてよい。さらに詳細には、行列の各横行は、「特定」された値である「０」と「１」を表す第一のｎビットデータレジスタ（ｎは一つの次元での行列のサイズである）と、不確実性が第一のｎビットデータレジスタ内の対応する値に適用されるかどうかに関するビットフラグを表す第二のｎビットデータレジスタとに記憶されてよい。ビットフラグが第二のデータレジスタにセットされると、これは、対応するビット値が使用されるべきではないこと、及び、問題の行列セルが「−」値を有することを意味する。
【００８２】
図９は、本実施形態のために復号ステップ３５０と検証ステップ３６０を実現するパターン近傍マッチング方法９００を示した図である。この方法のための入力データは、図２の二つの先行する位置Ｐ１とＰ１’だけではない。図３のステップ３４０で生成されるような前述された二つのバイナリオフセット確率行列ｘ−ＢＯＰＭとｙ−ＢＯＰＭも、この方法のための入力データである。
【００８３】
ステップ９１０では、この二つの先行する位置Ｐ１とＰ１’に基づいて、次の位置Ｐ２predictedが、位置Ｐ１とＰ１’から一次関数による補外によって求められる。代替策として、二つより多い先行する位置が、次の位置を予測するために使用されてよく、多項式補外などの任意の既知の運動予測モデルが使用されてよい。さらなる代替策として、ただ一つの先行する位置が使用されてもよい。その場合、予測は、運動データ（例えば、ユーザ装置２の移動方向、速度または加速度などに関する運動データ）の入力、あるいは、他の有用な情報（手書き速度に関するデフォルトの情報または予測される情報など）と結びつけられる。ただ一つの先行する位置は、マッチング領域ＭＡのサイズが後続の位置を含むほど十分に大きく設定される場合に、使用されてもよい。このようなマッチング領域は、先行する位置を中心に置くのが適切である。前記の代替策は、例えば、復号プロセスのさまざまなステップで使用されるさまざまな数の先行する位置と結びつけられてもよい。
【００８４】
先行する位置Ｐ１、Ｐ１’は、さまざまな方法で求められてよい。例えば、ペンストロークのまさに始まりでは、Ｐ１，Ｐ１’は、任意の従来の方法（例えば、すべてがここで参照することにより組み込まれる、前述された米国第６,６６７,６９５号、米国第２００３／００１２４５５号、及び米国第６,６７４,４２７号などの方法）に従って計算されてよい。新しい位置は、本発明によるマッチングによって復号されるので、それらの復号された位置は、次の新しい位置Ｐ２の予測の基礎を形成するために先行する位置Ｐ１、Ｐ１’として使用されてよい。
【００８５】
ステップ９２０では、位置コード化パターンのマッチング領域ＭＡ（図２参照）が、予測位置を中心に生成される。生成されたマッチング領域の例は、図１０の１０００に示される。例えば、前述の米国第６,６６７,６９５号は、位置コード化パターンの領域が既定の位置からどのようにして生成されてよいのかを、１１段５７行目から１５段１４行目において、及びその図６において詳細に説明している。
【００８６】
ステップ９３０では、バイナリオフセット確率行列の一つ（例えばｙ−ＢＯＰＭ）が、対応する次元（例えばｙ次元）で生成されたマッチング領域の内容とマッチングされる。そのために、マッチングユニット７４０が、ｙ−ＢＯＰＭと、マッチング領域のそれぞれの等しいサイズにされた複数の部分領域との間で、ビット単位の相関をとるであろう。このようなビット単位の相関ごとに、マッチングユニット７４０は、ｙ−ＢＯＰＭと部分領域の中の対応するビットの数をカウントするであろう。ビットがｙ−ＢＯＰＭにおいて不確実性の値「−」に設定されると、この位置は単に免除され、言うまでもなくこの位置に対応するビットは認められないであろう。
【００８７】
ｙ−ＢＯＰＭがマッチング領域全体とマッチングされると、ＣＰＵ７２０は、複数の部分領域の内から、ｙ−ＢＯＰＭと最良の一致が見られた一つの部分領域を決定するであろう（図２のＰＡ２matched参照）。図１０では、マッチング領域１０００の最良のマッチングの部分領域が、符号１０２０で示されている。
【００８８】
ステップ９４０では、結果として得られる位置（図２のＰ２matched参照）が、最良のマッチングの部分領域から計算される。位置コード化パターンのマッチング領域ＭＡの絶対開始位置はすでに既知である（予測位置Ｐ２predictedによって指定さている）ため、この位置は容易に求められる。したがって、結果として得られる位置が、相対位置としてマッチング領域ＭＡの既知の絶対開始位置に加えられて、予測位置の絶対値の座標が得られる。
【００８９】
この実施形態では、ｙ−ＢＯＰＭのマッチングの横行のパターンから完全に復号された位置（ｘ座標とｙ座標の両方）が得られることが理解されるべきである。しかし、それにも関わらず、ステップ９５０と９６０において、マッチング領域とｘ−ＢＯＰＭのマッチングを実行することによって、ステップ９３０と９４０の結果が検証され、堅牢性を獲得してもよい。つまり、最良の相関が両方の座標で一致するときに限り、その結果がステップ９７０で受け入れられる。したがって、ステップ９５０と９６０は、図３の検証ステップ３６０を実現してよい。
【００９０】
ステップ９５０と９６０のこのような別々の検証動作に対する代替策として、二つの一致行列（すなわち、ｙ−ＢＯＰＭのマッチングについての一つと、ｘ−ＢＯＰＭマッチングについての一つ）が、ステップ９３０と９４０で平行して生成されてよい。これらの一致行列のそれぞれの行列要素は、マッチング領域ＭＡにおいてその行列要素の位置で開始する部分領域ＰＡについて、マッチしているｘビット／ｙビットの値を表すであろう。これら二つの一致行列（マッチ行列）を要素ごとに加算することによって、ＣＰＵ７２０は、結果として得られる最大の合計値を有する特定の要素位置を、求められているマッチング済み位置Ｐ２matchedとして選択してよい。したがって、このケースでは、検証は、マッチング動作に固有である。
【００９１】
前記の検証方法の代わりに、またはそれに加えて、マッチングの基準が満たされる場合には、位置決定のためにｘ−ＢＰＯＭ及び／またはｙ−ＢＯＰＭとの最良の相関のある一つまたは複数の部分領域だけが使用されてよい。マッチングの基準は、一致（すなわち、ビットが対応すること）の数が所定の閾値を超えること、及び／または、一致の数の比率（取り得る一致の数に対する比率）が所定の閾値を超えることを含んでよい。取り得る一致の数は、ｘ−ＢＯＰＭとｙ−ＢＯＰＭの「確実」な値（つまり、不確実性値「−」に設定されない）の個数によって示されてよい。
【００９２】
＜パターン数列マッチング＞
この方法は、二つの一次元の差分数列に基づいて、位置が位置コード化パターンで符号化されている、という事実を利用する。したがって、このマッチングは、一つの二次元の問題というよりむしろ二つの一次元の問題として取り扱われてよい。このことは、マッチングに必要とされる検索時間が、二次（ｏｒｄｏ（ｎ＊ｍ））ではなく、一次（ｏｒｄｏ（ｎ＋ｍ））であることを意味する（ｎとｍは、マッチング領域の辺長である）。
【００９３】
図１３を参照すると、パターン数列マッチング（ＰＳＭ）方法１３００は、次の位置Ｐ２predictedを予測するステップ１３１０で開始する。ステップ１３１０は、図９のステップ９１０について前述されたのと同じように実行されてよい。
【００９４】
ステップ１３２０では、マッチング差分数列の部分数列ＭＳｘとＭＳｙ（図１２の符号１２２０参照）が、予測位置Ｐ２predictedの周辺のマッチング領域ＭＡ（図１２の符号１２００参照）について生成される。しかしながら、第一の実施形態とは対照的に、実際のマッチング領域自体は生成されない。前述の米国第６,６６７,６９５号は、１１段５７行目から１５段１４行目において、及び、図６において、差分数列が既定の位置からどのようにして計算できるのかを説明している。
【００９５】
ステップ１３３０は、記録された部分領域ＰＡ２について差分数ＳｘとSｙの集合を取得する。これらの差分数ＳｘとＳｙは、ステップ１３２０で得られた予測のマッチング差分数列の部分数列ＭＳｘとＭＳｙとマッチングされる。まず、図１１を参照すると、ｙ−ＢＯＰＭ／ｘ−ＢＯＰＭの各横行／縦列１１１０について、主数列１１００の中の最良のマッチング部分数列１１２０が決定される。この部分数列は、高速なマッチングアルゴリズムによって実行されてよい。この高速なマッチングアルゴリズムは、六個の連続する正確なビット値（推定値「０」または「１」を有するが、「−」は有さない）がＢＯＰＭ内で検出されると、その六個の値の組み合わせは、本質的に主数列内において一つの位置（一意の主数列位置）しか有さないであろう、という事実に基づくものである。この一意の主数列位置は、主数列１１００の六十三通りの異なる循環シフトから構成されるルックアップテーブルから直接的に得られてもよい。このルックアップテーブルは、便利にはメモリ７３０に記憶される。次に、ｙ−ＢＯＰＭ／ｘ−ＢＯＰＭの特定の横行／縦列１１１０の他の正確な位置が、ルックアップテーブルから得られる特定の主数列シフトに突き合わされ、これらも一致（マッチ）すると判明すると、得られた主数列位置は正しいと考えられる。一致（マッチ）しない場合には、ｙ−ＢＯＰＭ／ｘ−ＢＯＰＭの特定の横行／縦列１１１０とルックアップテーブルの中の六十三通りのすべての主数列シフトとの間で完全ビット単位マッチングが行われ、最良の一致が見られた位置が、その横行／縦列１１１０についての主数列位置として選択される。同時に、主数列一致の割合（主数列一致レート）が、ｙ−ＢＯＰＭ／ｘ−ＢＯＰＭの特定の横行／縦列１１１０について、マッチしたビット値の総数の形で登録される。
【００９６】
次に、ステップ１３３０は、隣接する横行／縦列について、得られた主数列位置を差し引くことにより差分数ＳｘとＳｙ（図１２の符号１２３０）の集合を取得することによって続行される。また、各差分数には、差分数一致レートが割り当てられる。例えば、関連する横行／縦列の主数列一致レートを重み付け（例えば合計または平均）することによって、あるいは、その最小値を選択することによって、差分数一致レートが割り当てられる。
【００９７】
ここで、ステップ１３４０では、このようにして取得された（検出された）差分数ＳｘとＳｙの集合が、予測される部分数列ＭＳｘとＭＳｙ（図１２では符号１２２０で示される）とマッチングされる。部分数列ＭＳｘとＭＳｙにおける最良の一致（マッチ）は、差分数の連続の組み合わせとして選択されてよい。この最良の一致は、任意には、差分数一致レートの最大の合計値を有する組み合わせを選択することにより、さらに区別されてもよい。代わりに、最良の一致は、一致の数とは関係なく、差分数一致レートの最大の合計値を生じさせるマッチング差分数の組み合わせとして選択されてよい。
【００９８】
ステップ１３５０では、結果として得られる位置Ｐ２matchedが、ステップ１３４０の結果として得られる最良の一致から求められる。図９のステップ９４０についての前述の理由と同様の理由により、この結果として得られる位置は、容易に計算される。
【００９９】
ステップ１３６０では、結果として得られる位置Ｐ２matchedが検証される。例えば、位置Ｐ２matchedを中心とする位置コード化パターンの局所的な検証領域を生成し、このビット単位をｘ−ＢＯＰＭとｙ−ＢＯＰＭとの相関をとることによって検証される。この検証は、マッチングの基準を含んでもよい。前述したパターン近傍マッチングの場合と同様に、一致の基準は、一致（すなわち、ビットが対応すること）の数が所定の閾値を超えること、及び／または、一致の数の比率（取り得る一致の数に対する比率）が所定の閾値を超えることを含んでよい。Ｐ２matchedを中心とした完全な局所的な検証領域を生成する代わりに、ステップ１３３０で実行される計算が利用されてよい。選択された結果として得られる位置Ｐ２matchedが最良の一致のある位置であるため、取得された差分数の多くは、予測されたものと一致する可能性が高い。最良のマッチング主数列についての一致の数（対応する差分数が根底にある）は、前述の主数列一致レートを通して既知である。したがって、局所的な検証領域は、一致しない差分数についてだけ生成される必要がある。
【０１００】
＜パターン数列マッチングとパターン近傍マッチングの組み合わせ＞
上述の二つの実施形態は、例えば、図１４を参照して説明されるように結合されてよい。
【０１０１】
符号１４００で示されるように、マッチングは、生成されたｘ−ＢＯＰＭおよびｙ−ＢＯＰＭと、予測位置を用いて取得されるマッチング領域情報とに基づいて、実行される。まず、パターン数列マッチング１４０２が実行される。復号が無事に行われると、１４１０で検証が実行される。他方、パターン数列マッチング１４０２が失敗すると、次にパターン近傍マッチング１４０４が実行される。これが成功すると、１４１０で検証が行われる。しかしながら、パターン近傍マッチング１４０４も失敗した場合、他の既知の方法により位置を解決する試みが１４２０で行われる。このような方法は、前述した米国第６,６６７,６９５号、米国第２００３／００１２４５５号、及び米国第６,６７４,４２７号に記述されたもののいずれかを必要とする可能性がある。本発明によるマッチング方法が失敗した場合にも、このような方法が成功することを期待する状況がある。一つの例は、マッチング領域ＭＡのサイズが小さすぎて、高速で書くユーザに「追いつく」ことができない場合である。別の例は、例えばペンストロークが、ある位置コード化ベースから別の位置コード化ベースへ描画されるときなど、ペンが、位置コード化パターンの位置の切れ目の上で移動されるときである。位置が１４２０で無事に解号されると、結果は１４１０で検証される。
【０１０２】
マッチング１４００の結果の検証が失敗すると、１４２０で位置を解号するための追加の試みがなされてよい。この試みも失敗した場合には、すべての使用可能な方法が試されるまで別の既存の位置解号方法が１４２０で試されてよい。
【０１０３】
本発明はおもにいくつかの実施形態に関して前述されてきた。しかしながら、当業者により容易に理解されるように、前記に開示された実施形態以外の他の実施形態は、添付の請求項により定義されるように、本発明の範囲内で等しく可能である。
【図面の簡単な説明】
【０１０４】
本発明はここで添付図面に関してさらに詳細に説明される。
【図１】
本発明を使用できるシステムの概略図である。
【図２】
位置コード化パターンの部分領域の復号及びマッチングの概略図である。
【図３】
位置コード化パターンの部分領域の画像を復号することにより位置を求める、本発明による一般的な方法を示すフロー図である。
【図４】
本発明に従って復号されてよい位置コード化パターンの概略図である。
【図５】
位置コード化パターンにおけるマークの四つの理想的なロケーションを示す図である。
【図６】
本発明による位置復号が実施されてよい電子ペンの形の装置の概略図である。
【図７】
図６に示される装置内の電子回路部品と画像センサの概略ブロック図である。
【図８】
バイナリオフセット確率行列が生成される方法を示す概略図である。
【図９】
本発明による復号方法の第一の実施形態のフロー図である。
【図１０】
第一の実施形態の動作原理を説明するために、生成された局所的な位置コード化パターン及びバイナリオフセット確率行列を示す図である。
【図１１】
第二の実施形態の説明をサポートするための概略図である。
【図１２】
第二の実施形態の説明をサポートするための概略図である。
【図１３】
第二の実施形態の説明をサポートするための概略図である。
【図１４】
第一の実施形態及び第二の実施形態の両方ともが利用される代替実施形態を示す図である。
【誤訳訂正３】
【訂正対象書類名】図面
【訂正対象項目名】図３
【訂正方法】変更
【訂正の内容】
【図３】
2006525593.tif 000001
【誤訳訂正４】
【訂正対象書類名】図面
【訂正対象項目名】図９
【訂正方法】変更
【訂正の内容】
【図９】
2006525593.tif 000002
【誤訳訂正５】
【訂正対象書類名】図面
【訂正対象項目名】図１２
【訂正方法】変更
【訂正の内容】
【図１２】
2006525593.tif 000003
【誤訳訂正６】
【訂正対象書類名】図面
【訂正対象項目名】図１３
【訂正方法】変更
【訂正の内容】
【図１３】
2006525593.tif 000004