(57)【特許請求の範囲】
【請求項１】
ペン先およびカメラを含むデジタルペンを較正し、前記デジタルペンのカメラで捕捉された画像の中心の位置を前記ペン先の位置にマッピングする方法であって、
前記ペン先を位置的にエンコードされた面上の固定位置Ｌｐｅｎｔｉｐに保ちながら前記ペンを異なる複数の向きに配置することによって、前記デジタルペンのカメラによって捕捉された複数の画像に基づいて較正パラメータを生成するステップであって、前記較正パラメータは前記較正パラメータの繰り返し生成された複数の推定値に基づいて生成されるステップであって、前記較正パラメータは、前記ペンのカメラで捕捉された前記画像の中心の位置を前記ペン先の位置にマッピングするために用いられるステップと、
位置的にエンコードされた面にユーザによって書かれたストロークを前記位置的にエンコードされた面の捕捉された画像内の座標で指定される位置で復元できるように、前記較正パラメータを使用して前記デジタルペンのカメラで捕捉された画像の前記中心の前記位置を前記ペン先の前記位置にマッピングするステップであって、前記捕捉された画像内の前記復元されたストロークの前記位置は前記ユーザが前記位置的にエンコードされた面に前記ストロークを書いていた間の前記ペン先の複数の位置に対応するステップと
を含むことを特徴とする方法。
【請求項２】
前記複数の捕捉画像ごとにｍ配列のデコーディングおよび画像照合を行うことによって変換Ｆｓ→ｐおよび逆変換
【数１】
0004750425.tif 000026
を算出し、次いで
【数２】
0004750425.tif 000027
ｉ＝１、２、・・・、Ｎ、および
【数３】
0004750425.tif 000028
ｉ＝１、２、・・・、Ｎを算出するステップであって、式中Ｎは前記較正パラメータの生成に使用される捕捉画像の数、およびΔＬｉはｉ番目のフレームにおける実ペン先の位置とＬｐｅｎｔｉｐとの間のオフセットであるステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項３】
【数４】
0004750425.tif 000029
を（０，０）として初期設定するステップであって、式中
【数５】
0004750425.tif 000030
はＬｖｉｒｔｕａｌ−ｐｅｎｔｉｐの推定値であるステップをさらに含むことを特徴とする請求項２に記載の方法。
【請求項４】
前記式
【数６】
0004750425.tif 000031
ｉ＝１、２、・・・、Ｎにおいて、Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐを
【数７】
0004750425.tif 000032
と設定して
【数８】
0004750425.tif 000033
ｉ＝１、２、・・・、Ｎを取得し、
【数９】
0004750425.tif 000034
を平均することによってＬｐｅｎｔｉｐを
【数１０】
0004750425.tif 000035
と推定するステップをさらに含むことを特徴とする請求項３に記載の方法。
【請求項５】
前記式
【数１１】
0004750425.tif 000036
ｉ＝１、２、・・・、Ｎにおいて、Ｌｐｅｎｔｉｐを
【数１２】
0004750425.tif 000037
と設定して
【数１３】
0004750425.tif 000038
ｉ＝１、２、・・・、Ｎを取得し、
【数１４】
0004750425.tif 000039
を平均することによってＬｖｉｒｔｕａｌ−ｐｅｎｔｉｐを
【数１５】
0004750425.tif 000040
と推定するステップをさらに含むことを特徴とする請求項４に記載の方法。
【請求項６】
前記Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐの推定値がより正確な結果
【数１６】
0004750425.tif 000041
に収束し、前記Ｌｐｅｎｔｉｐの推定値がより正確な結果
【数１７】
0004750425.tif 000042
に収束するように請求項４および請求項５のステップを複数回繰り返すステップをさらに含むことを特徴とする請求項５に記載の方法。
【請求項７】
【数１８】
0004750425.tif 000043
を較正パラメータとして使用して前記カメラで捕捉された画像の前記中心の前記位置を前記ペン先の前記位置にマッピングするステップをさらに含むことを特徴とする請求項６に記載の方法。
【請求項８】
仮想ペン先を使用して、復元されたカメラ捕捉ストロークを復元されたペン先ストロークにマッピングするステップであって、前記デジタルペンの画像感知平面上の前記仮想ペン先の位置は、前記ペン先と前記ペンのカメラとの間のあらかじめ定義されている関係によって決まり、前記あらかじめ定義されている関係は前記ペンの構成に基づくステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項９】
較正パラメータは前記較正パラメータの繰り返し生成された複数の推定値に基づいており、ペン先を位置的にエンコードされた面上の固定位置Ｌｐｅｎｔｉｐに保ちながらペンを異なる複数の向きに配置することによって、デジタルペンのカメラによって捕捉された複数の画像に基づいて前記較正パラメータを生成するステップを含むステップを行うことによって、前記ペン先および前記カメラを含む前記デジタルペンの前記較正パラメータを生成するコンピュータ実行可能命令であって、前記位置的にエンコードされた面上の前記ペン先の位置への前記カメラによって捕捉された画像の中心の位置のマッピングは前記較正パラメータによって決まり、前記較正パラメータは、前記ペンのカメラで捕捉された前記画像の中心の位置を前記ペン先の位置にマッピングするために用いられるコンピュータ実行可能命令を含むことを特徴とするコンピュータ可読媒体。
【請求項１０】
Ｎが前記較正パラメータの生成に使用される捕捉画像の数、およびΔＬｉがｉ番目のフレームにおける実ペン先の位置とＬｐｅｎｔｉｐとの間のオフセットである場合、前記複数の捕捉画像の画像ごとに画像照合を行うことによって変換Ｆｓ→ｐおよび逆変換
【数１９】
0004750425.tif 000044
を算出し、
【数２０】
0004750425.tif 000045
ｉ＝１、２、・・・、Ｎ、および
【数２１】
0004750425.tif 000046
ｉ＝１、２、・・・、Ｎを算出するコンピュータ実行可能命令をさらに含むことを特徴とする請求項９に記載のコンピュータ可読媒体。
【請求項１１】
【数２２】
0004750425.tif 000047
がＬｖｉｒｔｕａｌ−ｐｅｎｔｉｐの推定値である場合、
【数２３】
0004750425.tif 000048
を（０，０）として初期設定するコンピュータ実行可能命令をさらに含むことを特徴とする請求項１０に記載のコンピュータ可読媒体。
【請求項１２】
前記式
【数２４】
0004750425.tif 000049
ｉ＝１、２、・・・、Ｎにおいて、Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐを
【数２５】
0004750425.tif 000050
と設定して
【数２６】
0004750425.tif 000051
ｉ＝１、２、・・・、Ｎを取得し、
【数２７】
0004750425.tif 000052
を平均することによってＬｐｅｎｔｉｐを
【数２８】
0004750425.tif 000053
と推定するコンピュータ実行可能命令さらに含むことを特徴とする請求項１１に記載のコンピュータ可読媒体。
【請求項１３】
前記式
【数２９】
0004750425.tif 000054
ｉ＝１、２、・・・、Ｎにおいて、Ｌｐｅｎｔｉｐを
【数３０】
0004750425.tif 000055
と設定して
【数３１】
0004750425.tif 000056
ｉ＝１、２、・・・、Ｎを取得し、
【数３２】
0004750425.tif 000057
を平均することによってＬｖｉｒｔｕａｌ−ｐｅｎｔｉｐを
【数３３】
0004750425.tif 000058
と推定するコンピュータ実行可能命令をさらに含むことを特徴とする請求項１２に記載のコンピュータ可読媒体。
【請求項１４】
前記Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐの推定値がより正確な結果
【数３４】
0004750425.tif 000059
に収束し、前記Ｌｐｅｎｔｉｐの推定値がより正確な結果
【数３５】
0004750425.tif 000060
に収束するように請求項１２および請求項１３の演算を複数回繰り返すコンピュータ実行可能命令をさらに含むことを特徴とする請求項１３に記載のコンピュータ可読媒体。
【請求項１５】
【数３６】
0004750425.tif 000061
を較正パラメータＬｖｉｒｔｕａｌ−ｐｅｎｔｉｐとして使用して画像の前記中心の前記位置を前記ペン先の前記位置にマッピングするコンピュータ実行可能命令をさらに含むことを特徴とする請求項１４に記載のコンピュータ可読媒体。
【請求項１６】
ペン先を位置的にエンコードされた面上の固定位置Ｌｐｅｎｔｉｐに保ちながらペンを異なる複数の向きに配置することによって、デジタルペンのカメラによって捕捉された複数の画像に基づいて較正パラメータを生成するステップであって、前記較正パラメータは前記較正パラメータの繰り返し生成された複数の推定値に基づいて生成されるステップと、
位置的にエンコードされた面にユーザによって書かれたストロークを前記位置的にエンコードされた面の捕捉された画像内の座標で指定される位置で復元できるように、前記較正パラメータを使用して前記デジタルペンのカメラで捕捉された画像の前記中心の前記位置を前記ペン先の位置にマッピングするステップであって、前記捕捉された画像内の前記復元されたストロークの前記位置は前記ユーザが前記位置的にエンコードされた面に前記ストロークを書いていた間の前記ペン先の複数の位置に対応し、前記較正パラメータは、前記ペンのカメラで捕捉された前記画像の中心の位置を前記ペン先の位置にマッピングするために用いられるステップと
を含むステップを行うことによってペン先およびカメラを含むデジタルペンを較正し、前記デジタルペンのカメラで捕捉された画像の中心の位置を前記ペン先の前記位置にマッピングするコンピュータ実行可能命令を含むことを特徴とするコンピュータ可読媒体。
【請求項１７】
仮想ペン先を使用して、復元されたカメラ捕捉ストロークを復元されたペン先ストロークにマッピングするコンピュータ実行可能命令であって、前記デジタルペンの画像感知平面上の前記仮想ペン先の位置は、前記ペン先と前記ペンのカメラとの間のあらかじめ定義されている関係によって決まり、前記あらかじめ定義されている関係は前記ペンの構成に基づくコンピュータ実行可能命令をさらに含むことを特徴とする請求項１６に記載のコンピュータ可読媒体。
【請求項１８】
ペン先およびカメラを含むデジタルペンを較正し、前記デジタルペンのカメラで捕捉された画像の中心の位置を前記ペン先の位置にマッピングするシステムであって、
前記ペン先を位置的にエンコードされた面上の固定位置Ｌｐｅｎｔｉｐに保ちながら異なる複数の向きの前記ペンに関して前記デジタルペンのカメラによって捕捉された複数の画像に基づいて較正パラメータを生成する較正モジュールであって、前記較正パラメータは前記較正パラメータの繰り返し生成された複数の推定値に基づいて生成される較正モジュールと、
位置的にエンコードされた面にユーザによって書かれたストロークを前記位置的にエンコードされた面の捕捉された画像内の座標で指定される位置で復元できるように、前記較正パラメータを使用して前記デジタルペンのカメラで捕捉された画像の前記中心の前記位置を前記ペン先の前記位置にマッピングするマッピングモジュールであって、前記捕捉された画像内の前記復元されたストロークの前記位置は前記ユーザが前記位置的にエンコードされた面に前記ストロークを書いていた間の前記ペン先の複数の位置に対応し、前記較正パラメータは、前記ペンのカメラで捕捉された前記画像の中心の位置を前記ペン先の位置にマッピングするために用いられるマッピングモジュールと
を含むことを特徴とするシステム。
【請求項１９】
前記較正モジュールは、Ｎが前記較正パラメータの生成に使用される捕捉画像の数、およびΔＬｉがｉ番目のフレームにおける実ペン先の位置とＬｐｅｎｔｉｐとの間のオフセットである場合、前記複数の捕捉画像の画像ごとに画像照合を行うことによって変換Ｆｓ→ｐおよび逆変換
【数３７】
0004750425.tif 000062
を算出し、
【数３８】
0004750425.tif 000063
ｉ＝１、２、・・・、Ｎ、および
【数３９】
0004750425.tif 000064
ｉ＝１、２、・・・、Ｎを算出することを特徴とする請求項１８に記載のシステム。
【請求項２０】
前記較正モジュールは、
【数４０】
0004750425.tif 000065
がＬｖｉｒｔｕａｌ−ｐｅｎｔｉｐの推定値である場合、
【数４１】
0004750425.tif 000066
を（０，０）として初期設定することを特徴とする請求項１９に記載のシステム。
【請求項２１】
前記式
【数４２】
0004750425.tif 000067
ｉ＝１、２、・・・、Ｎにおいて、Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐは
【数４３】
0004750425.tif 000068
と設定されて
【数４４】
0004750425.tif 000069
ｉ＝１、２、・・・、Ｎを取得し、Ｌｐｅｎｔｉｐは
【数４５】
0004750425.tif 000070
を平均することによって
【数４６】
0004750425.tif 000071
と推定されることを特徴とする請求項２０に記載のシステム。
【請求項２２】
前記式
【数４７】
0004750425.tif 000072
ｉ＝１、２、・・・、Ｎにおいて、Ｌｐｅｎｔｉｐは
【数４８】
0004750425.tif 000073
と設定されて
【数４９】
0004750425.tif 000074
ｉ＝１、２、・・・、Ｎを取得し、Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐは
【数５０】
0004750425.tif 000075
を平均することによって
【数５１】
0004750425.tif 000076
と推定されることを特徴とする請求項２１に記載のシステム。
【請求項２３】
前記較正モジュールは、前記Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐの推定値がより正確な結果
【数５２】
0004750425.tif 000077
に収束し、前記Ｌｐｅｎｔｉｐの推定値がより正確な結果
【数５３】
0004750425.tif 000078
に収束するように請求項２１および請求項２２の演算を複数回繰り返すことを特徴とする請求項２２に記載のシステム。
【請求項２４】
前記較正モジュールは、前記較正モジュールから
【数５４】
0004750425.tif 000079
を、前記復元された画像中心ストロークを前記復元されたペン先ストロークにマップする前記マッピングモジュールによって使用するために前記較正パラメータとして出力することを特徴とする請求項２３に記載のシステム。
【請求項２５】
前記マッピングモジュールは、仮想ペン先を使用して、復元されたカメラ捕捉ストロークを復元されたペン先ストロークにマップし、前記デジタルペンの画像感知平面上の前記仮想ペン先の位置は前記ペン先と前記ペンのカメラとの間のあらかじめ定義されている関係によって決まり、前記あらかじめ定義されている関係は前記ペンの構成に基づくことを特徴とする請求項１８に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、位置的にエンコードされた（ｐｏｓｉｔｉｏｎａｌｌｙ  ｅｎｃｏｄｅｄ）媒体とデジタルペンとの間の対話に関する。より詳細には、本発明の実施形態は、デジタルペンを較正し、カメラで捕捉された画像からデコードされた位置をペン先の対応する位置にマッピングすることに関する。
【背景技術】
【０００２】
コンピュータユーザは、パーソナルコンピュータとの対話の一手段としていつもマウスおよびキーボードを使用している。パーソナルコンピュータは、手書きの文書よりいくつかの利点を提供するが、ほとんどのユーザは、印刷物を使用して引き続きいくつかの機能を実行する。こうした機能の一部は、書類を読み、それに注釈を付すことを含む。注釈を付す場合、ユーザによって注釈が付されるため、印刷文書はより大きい意味を帯びる。しかし、注釈付きの印刷文書を持つことに関する問題の１つは、注釈を後で電子形式の文書に入れ直す必要があることである。これは、元のユーザまたは別のユーザが注釈を苦労して読み取り、それらをパーソナルコンピュータに入力することを必要とする。場合によっては、ユーザは、注釈および元のテキストをスキャナで取り込み、それによって新しい文書を作成する。こうした複数のステップは、印刷文書と電子版の文書との間の相互作用を繰り返して扱うのを難しくする。さらに、スキャナで取り込まれた画像は変更できないことが多い。元のテキストから注釈を分離する方法はない。このことは注釈の使用を難しくする。したがって、注釈を処理する改良された方法が必要である。
【０００３】
手書きの情報を捕捉する１つの技術は、筆記中にその位置を判定できるペンを使用することによるものである。この機能を備える１つのペンは、Ａｎｏｔｏ  Ｉｎｃ．によるＡｎｏｔｏペンである。このペンは、カメラを使用して定義済みパターンでエンコードされた用紙の画像を捕捉することによって機能する。画像パターンの一例を図１５に示す。このパターンを（Ａｎｏｔｏ  Ｉｎｃ．による）Ａｎｏｔｏペンが使用して用紙上のペンの位置を判定する。しかし、Ａｎｏｔｏペンが使用しているシステムによる位置の判定がどの程度効率的かは不明瞭である。
【０００４】
【非特許文献１】Douglas W. Clark and Lih-Jyh Weng, "Maximal and Near-Maximal Shift Register Sequences: Efficient Event Counters and Easy Discrete Logarithms," IEEE Transactions on Computers 43.5 (May 1994, pp 560-568)
【発明の開示】
【発明が解決しようとする課題】
【０００５】
捕捉画像の位置の効率的な判定を提供するために、捕捉画像の効率的なデコーディングを提供するシステムが必要である。
【０００６】
書類に注釈を付すとき、ユ−ザは、文書に対してペン先を移動させることによって文書にマークを付けることができる。ペン先のパスは複数のストロークを含み、各ストロークは一連の捕捉画像に対応する。したがって、文書上の注釈を処理するためにペンの軌道（ｐａｔｈ）を効率的に識別することが望ましい。
【０００７】
さらに、捕捉画像の中心から算出されたｘ−ｙ座標は、ペン先の実際の位置を表さない可能性がある。捕捉画像の中心をペン先にマッピングするために、ペン先と、カメラによって捕捉された画像の中心との間の関係を較正する技術が望ましい。しかし、従来の較正技術は一般に、複雑な機器、および／またはややこしい較正手順が必要である。
【０００８】
ユーザによるペンのインクカートリッジの交換は比較的頻繁に行われ得るが、交換のたびに較正が行われる可能性がある。したがって較正を行う技術は、簡単で、比較的迅速で、正確なものであるべきである。また、こうした技術は、一般に従来の較正技術とともに使用されるタイプの複雑な機器を必要としないものにすべきである。
【課題を解決するための手段】
【０００９】
較正パラメータを使用して、ペンのカメラによって捕捉された画像のそれぞれの中心のｘ−ｙ座標をペン先のｘ−ｙ位置にマッピングすることによって、ペン先のｘ−ｙ位置を判定することができる。較正パラメータは、較正の推定値を繰り返し算出することによって生成することができる。
【００１０】
較正モジュールは較正入力データを受信し、較正入力データは、ユーザが、用紙など位置的にエンコードされた媒体である面の固定位置にペン先を置き、次いで様々な方向にペンを回転させ、かつ／またはペンの反対端を移動させて、較正パラメータの生成に使用する複数の画像を捕捉することによって生成することができる。ユーザは、こうした較正手順を、一般に従来の較正技術とともに使用される複雑な較正機器の必要無く行うことができる。
【００１１】
マッピングモジュールは、較正パラメータ、および復元されたカメラ捕捉位置情報を使用して、復元されたペン先位置情報を生成することができる。
【００１２】
仮想ペン先は、復元された画像中心位置を復元されたペン先位置にマッピングするために使用される。仮想ペン先の位置は、ペンの構成に基づく実際のペン先とカメラとの間のあらかじめ定義されている関係によって決まる。仮想ペン先は、デジタルペンのカメラの画像センサー平面上に投影されたペン先の点である。
【００１３】
本発明の追加の機能および利点は、以下の詳細な説明を精査することによって明らかになる。
【００１４】
本発明の上記の概要、および下記の好ましい実施形態の詳細な説明は、添付の図面と併せ読めばよりよく理解できる。添付の図面は、一例として含まれており、主張した本発明に関する限定のためのものではない。
【発明を実施するための最良の形態】
【００１５】
本発明の態様は、より大きい画像に対して捕捉画像の位置を判定することに関する。本明細書に記載した位置判定方法およびシステムを、多機能ペンとともに使用することができる。
【００１６】
下記は、読者のために副題によって区切られている。副題は、用語、汎用コンピュータ、画像捕捉ペン、配列のエンコーディング、デコーディング、エラー訂正、および位置判定を含む。
【００１７】
（Ｉ．用語）
ペン−何らかの筆記用具。インクを蓄える機能を含んでいても、含んでいなくてもよい。一部の例では、本発明の実施形態によるペンとしてインク機能のないスタイラスを使用することができる。
【００１８】
カメラ−用紙または他の任意の媒体から画像を捕捉し得る画像捕捉システム。
【００１９】
（ＩＩ．汎用コンピュータ）
図１は、本発明の様々な態様の実施に使用できる従来の汎用デジタルコンピューティング環境の例の機能ブロック図である。図１では、コンピュータ１００は、処理ユニット１１０、システムメモリ１２０、およびシステムメモリを含む様々なシステム構成要素を処理ユニット１１０に結合するシステムバス１３０を含む。システムバス１３０は、様々なバスアーキテクチャのうちの任意のものを使用するメモリバスまたはメモリコントローラ、周辺バス、およびローカルバスを含むいくつかの種類のバス構造のうちどんなものでもよい。システムメモリ１２０は、読み取り専用メモリ（ＲＯＭ）１４０およびランダムアクセスメモリ（ＲＡＭ）１５０を含む。
【００２０】
基本入出力システム１６０（ＢＩＯＳ）は、例えば起動中など、コンピュータ１００内の要素間での情報の転送を助ける基本ルーチンを含み、ＲＯＭ１４０に格納されている。コンピュータ１００は、ハードディスク（図示せず）から読み取り、そこに書き込むハードディスクドライブ１７０、着脱式磁気ディスク１９０から読み取り、あるいはそこに書き込む磁気ディスクドライブ１８０、およびＣＤ−ＲＯＭや他の光媒体など、着脱式光ディスク１９２から読み取り、あるいはそこに書き込む光ディスクドライブ１９１も含む。ハードディスクドライブ１７０、磁気ディスクドライブ１８０、および光ディスクドライブ１９１は、それぞれハードディスクドライブインタフェース１９２、磁気ディスクドライブインタフェース１９３、および光ディスクドライブインタフェース１９４によってシステムバス１３０に接続される。ドライブおよびその関連のコンピュータ可読媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、およびパーソナルコンピュータ１００の他のデータの不揮発性記憶域を提供する。磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ベルヌーイカートリッジ、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）など、コンピュータによってアクセス可能なデータを格納できる他の種類のコンピュータ可読媒体を動作環境の例で使用することもできることを当業者であれば理解されよう。
【００２１】
オペレーティングシステム１９５、１つまたは複数のアプリケーションプログラム１９６、他のプログラムモジュール１９７、およびプログラムデータ１９８を含めて、いくつかのプログラムモジュールをハードディスク１７０、磁気ディスク１９０、光ディスク１９２、ＲＯＭ１４０またはＲＡＭ１５０に格納することができる。ユーザは、コマンドおよび情報をキーボード１０１およびポインティング装置１０２などの入力装置を介してコンピュータ１００に入力することができる。他の入力装置（図示せず）には、マイクロフォン、ジョイスティック、ゲームパッド、衛星パラボラアンテナ、スキャナなどがある。これらおよび他の入力装置は、しばしばシステムバスに結合されているシリアルポートインタフェース１０６を介して処理ユニット１１０に接続されるが、パラレルポート、ゲームポート、ユニバーサルシリアルバス（ＵＳＢ）など他のインタフェースで接続してもよい。さらにこれらの装置は、適切なインタフェース（図示せず）を介してシステムバス１３０に直接結合することができる。モニタ１０７または他の種類の表示装置もまた、ビデオアダプタ１０８などのインタフェースを介してシステムバス１３０に接続される。パーソナルコンピュータは一般に、モニタに加えて、スピーカやプリンタなどの他の周辺出力装置（図示せず）を含んでいる。好ましい実施形態では、手書きの入力をデジタル捕捉するためにペンデジタイザ１６５および付属のペンまたはスタイラス１６６が設けられている。ペンデジタイザ１６５とシリアルポートとの間の直接接続が示されているが、実際には、ペンデジタイザ１６５は、当分野で知られているように、パラレルポート、または他のインタフェースおよびシステムバス１３０を介して処理ユニット１１０に直接結合することができる。さらに、デジタイザ１６５は、モニタ１０７から切り離して示しているが、デジタイザ１６５の使用可能な入力エリアは、モニタ１０７の表示エリアと同一の広がり（ｃｏ−ｅｘｔｅｎｓｉｖｅ）を持つことが好ましい。さらにデジタイザ１６５は、モニタ１０７に一体化することができ、またはモニタ１０７に重なる、そうでない場合はモニタ１０７に取り付けられた個別の装置として存在してもよい。
【００２２】
コンピュータ１００は、リモートコンピュータ１０９など１つまたは複数のリモートコンピュータへの論理接続を使用してネットワーク化された環境で動作することができる。リモートコンピュータ１０９は、サーバ、ルータ、ネットワークＰＣ、ピア装置、または他の一般のネットワークノードでよく、一般にコンピュータ１００に関連して上述した多くまたはすべての要素を含むが、図１にはメモリ記憶装置１１１のみを示している。図１に示した論理接続は、ローカルエリアネットワーク（ＬＡＮ）１１２および広域ネットワーク（ＷＡＮ）１１３を含む。こうしたネットワーキング環境は、オフィス、全社規模のコンピュータネットワーク、イントラネット、およびインターネットではごく一般的である。
【００２３】
ＬＡＮネットワーキング環境で使用する場合、コンピュータ１００は、ネットワークインタフェースまたはアダプタ１１４を介してローカルネットワーク１１２に接続される。ＷＡＮネットワーキング環境で使用する場合、パーソナルコンピュータ１００は一般に、モデム１１５、またはインターネットなど広域ネットワーク１１３を介して通信を確立する他の手段を含む。モデム１１５は、内蔵のものでも外付けのものでもよく、シリアルポートインタフェース１０６を介してシステムバス１３０に接続される。ネットワーク化された環境では、パーソナルコンピュータ１００に関連して示したプログラムモジュール、またはその一部をリモートメモリ記憶装置に格納することができる。
【００２４】
図示したネットワーク接続は例であり、コンピュータ間の通信リンクを確立する他の技術を使用できることは理解されよう。ＴＣＰ／ＩＰ、Ｅｔｈｅｒｎｅｔ（登録商標）、ＦＴＰ、ＨＴＴＰ、Ｂｌｕｅｔｏｏｔｈ、ＩＥＥＥ８０２．１１ｘなど様々なよく知られている任意のプロトコルの存在が想定され、システムは、ユーザがＷｅｂベースのサーバからＷｅｂページを取り出すことができるようにクライアント−サーバ構成で動作することができる。様々な従来のＷｅｂブラウザの任意のものを使用してＷｅｂページ上にデータを表示し、それを操作することができる。
【００２５】
（ＩＩＩ．画像捕捉ペン）
本発明の態様は、エンコードされたデータストリームを、エンコードされたデータストリームを表す表示形式にすることを含む（例えば図４Ｂで説明するように、エンコードされたデータストリームを使用してグラフィカルパターンを作成する）。表示形式は、印刷物（または他の物理的な媒体）、または別の画像または画像の組とともにエンコードされたデータストリームを投影する表示とすることができる。例えば、エンコードされたデータストリームは、用紙上の物理的なグラフィカル画像、（例えばドキュメントのテキストを表す）表示された画像上に重なるグラフィカル画像として表され得る、または表示画面上の物理的な（変更できない）グラフィカル画像とすることができる（そのため、ペンによって捕捉された任意の画像部分は、表示画面上で位置を突き止めることができる）。
【００２６】
捕捉画像のこの位置の判定を使用して、用紙、媒体、または表示画面とのユーザの対話の位置を判定することができる。本発明の一部の態様では、ペンは、用紙上に筆記するインクペンとすることができる。別の態様では、ペンは、ユーザがコンピュータディスプレイの表面上に書くスタイラスとすることができる。文書上のエンコードされた画像の知識を有する、またはコンピュータ画面上に表示された文書をサポートするシステムに、任意の対話を戻すことができる。ペンまたはスタイラスが文書を横切るときにペンまたはスタイラスのカメラで画像を繰り返し捕捉することによって、システムは、ユーザによって制御されているスタイラスの動きを追跡することができる。表示された、または印刷された画像は、空白の、または内容が豊富な用紙に関連付けられているウォーターマーク、または表示された画像に関連付けられているウォーターマーク、または画面上に重なる、または画面に組み込まれている固定コーディングに関連付けられているウォーターマークとすることができる。
【００２７】
図２Ａおよび図２Ｂは、カメラ２０３を備えるペン２０１の例を示している。ペン２０１は、インク筒を含む、または含まない先端２０２を含む。カメラ２０３は、面２０７から画像２０４を捕捉する。ペン２０１は、破線で示したボックス２０６で表すように追加のセンサーおよび／またはプロセッサをさらに含んでいてもよい。また、これらのセンサーおよび／またはプロセッサ２０６は、（例えばＢｌｕｅｔｏｏｔｈまたは他の無線プロトコルを介して）情報を別のペン２０１および／またはパーソナルコンピュータに送信する機能を含んでいてもよい。
【００２８】
図２Ｂは、カメラ２０３から見た画像を表す。一例では、カメラ２０３の視野（すなわちカメラの画像センサーの解像度）は、（Ｎ＝３２の場合）３２×３２ピクセルである。この実施形態では、捕捉画像（３２ピクセル×３２ピクセル）は、カメラ２０３によって捕捉された平面の約５ｍｍ×５ｍｍのエリアに相当する。したがって図２Ｂは、長さ３２ピクセル×幅３２ピクセルの視野を示す。Ｎのサイズは調整可能であり、したがってＮが大きくなると、画像の解像度はより高くなる。また、カメラ２０３の視野は、ここでは例示の目的で正方形として示しているが、当分野で知られているように、他の形状を含むことができる。
【００２９】
カメラ２０３によって捕捉された画像を一連の画像フレーム｛Ｉｉ｝として定義することができる。ここではＩｉは、サンプリング時ｔｉにペン２０１によって捕捉される。サンプリングレートは、システム構成およびパフォーマンス要件に応じて高い場合も低い場合もある。捕捉画像フレームのサイズは、システム構成およびパフォーマンス要件に応じて大きい場合も小さい場合もある。
【００３０】
カメラ２０３によって捕捉された画像は、処理システムによって直接使用することもプレフィルタリングにかけることもできる。このプレフィルタリングは、ペン２０１で行うこともペン２０１の外部（パーソナルコンピュータなど）で行うこともできる。
【００３１】
図２Ｂの画像サイズは３２×３２ピクセルである。各エンコーディング単位サイズが３×３ピクセルである場合、捕捉されたエンコード済み単位の数は約１００単位となる。エンコーディング単位サイズが５×５ピクセルである場合、捕捉されたエンコード済み単位の数は約３６となる。
【００３２】
図２Ａは、位置２０４からのパターンの画像２１０が形成される画像平面２０９も示している。対象平面２０７上のパターンから受信された光は、レンズ２０８によって集束される。レンズ２０８は、単レンズでもマルチパートレンズシステム（ｍｕｌｔｉ−ｐａｒｔ  ｌｅｎｓ  ｓｙｓｔｅｍ）でもよいが、ここでは簡潔にするために単レンズとして表す。画像捕捉センサー２１１は、画像２１０を捕捉する。
【００３３】
画像センサー２１１は、画像２１０を捕捉できるほど大きいものとすることができる。あるいは画像センサー２１１は、位置２１２でペン先２０２の画像を捕捉できるほど大きいものとすることができる。参照のために、位置２１２の画像を仮想ペン先と呼ぶ。ペン先、レンズ２０８、および画像センサー２１１の間の関係が一定であるため、画像センサー２１１に対する仮想ペン先の位置は固定されることに留意されたい。
【００３４】
次の変換Ｆｓ→ｐは、カメラによって捕捉された画像における位置座標を用紙上の実画像における位置座標に変換する。
【００３５】
Ｌｐａｐｅｒ＝Ｆｓ→ｐ（Ｌｓｅｎｓｏｒ）
筆記中、ペン先および用紙は同じ平面上にある。したがって、仮想ペン先から実ペン先への変換もＦｓ→ｐであり、
Ｌｐｅｎｔｉｐ＝Ｆｓ→ｐ（Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐ）
となる。
【００３６】
変換Ｆｓ→ｐは、アフィン変換として推定することができる。これは、
【００３７】
【数１】
0004750425.tif 000002
【００３８】
としてＦｓ→ｐの推定として単純化される。式中、θｘ、θｙ、ｓｘ、およびｓｙは、位置２０４で捕捉されたパターンの２つの向きの回転およびスケールである。さらに、捕捉画像を用紙上の対応する実画像と照合することによってＦ’ｓ→ｐを精密化することができる。「精密化」とは、再帰的方法と呼ばれる一種の最適化アルゴリズムによって変換Ｆｓ→ｐのより正確な推定を得ることを意味する。再帰的方法は、行列Ｆ’ｓ→ｐを初期値として扱う。精密化された推定は、ＳとＰとの間の変換をより正確に表す。
【００３９】
次に、較正によって仮想ペン先の位置を判定することができる。
【００４０】
ペン先２０２は、用紙上の固定位置Ｌｐｅｔｉｐ上に置かれる。次にペンが傾けられ、それによってカメラ２０３は、様々なペンの姿勢の一連の画像を捕捉することができる。捕捉された画像ごとに変換Ｆｓ→ｐを取得することができる。この変換から、仮想ペン先の位置Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐを取得することができる。
【００４１】
Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐ＝Ｆｐ→ｓ（Ｌｐｅｎｔｉｐ）
式中、Ｌｐｅｎｔｉｐは（０，０）として初期設定され、
Ｆｐ→ｓ＝（Ｆｓ→ｐ）−１
である。
【００４２】
各画像から取得されたＬｖｉｒｔｕａｌ−ｐｅｎｔｉｐを平均することによって、仮想ペン先の位置Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐを判定することができる。Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐによって、Ｌｐｅｎｔｉｐのより正確な推定を得ることができる。何度かの反復の後、仮想ペン先の正確な位置Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐを判定することができる。
【００４３】
ここで仮想ペン先の位置Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐはわかった。捕捉された画像から変換Ｆｓ→ｐを取得することもできる。最後に、この情報を使用して、実ペン先の位置Ｌｐｅｎｔｉｐを判定することができる。
【００４４】
Ｌｐｅｎｔｉｐ＝Ｆｓ→ｐ（Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐ）
カメラで捕捉された画像の中心を用紙の座標において対応するペン先位置にマッピングすること、および本発明の様々な実施形態に従ってこのタイプのマッピングに使用できる較正パラメータについて、セクションＶＩＩＩおよびＩＸで後述する。
【００４５】
ＩＶ．配列のエンコーディング
２次元の配列は、１次元シーケンスを折りたたむことによって構築することができる。十分多くのビット数を含む２次元配列の任意の部分を使用して、完全な２次元配列におけるその位置を判定することはできる。しかし、捕捉された１つまたはわずかの画像から位置を判定することが必要な場合がある。捕捉画像の一部分が２次元配列における２つ以上の位置に関連付けられる可能性を最低限に抑えるように、非反復シーケンスを使用して配列を作成することができる。作成されたシーケンスの１つの特性は、シーケンスが長さ（またはウィンドウ）ｎ上で反復しないことである。下記は、１次元シーケンスの作成、次いでシーケンスの配列への折りたたみ（ｆｏｌｄｉｎｇ）を説明する。
【００４６】
（ＩＶ．Ａ．シーケンスの構築）
数列をエンコーディングシステムの開始点として使用することができる。例えば、シーケンス（ｍシーケンスとも呼ぶ）を、フィールド（ｆｉｅｌｄ）Ｆｑ内のｑ要素の組として表すことができる。ここではｑ＝ｐｎであり、式中ｎ≧１、ｐは素数である。シーケンスまたはｍシーケンスは、それだけには限定されないが、多項式除算など、様々な異なる技術によって生成することができる。多項式除算を使用して、シーケンスを次のように定義することができる。
【００４７】
【数２】
0004750425.tif 000003
【００４８】
式中Ｐｎ（ｘ）は、（ｑｎ個の要素を有する）フィールドＦｑ［ｘ］における次数ｎの原始多項式である。Ｒｌ（ｘ）は、フィールドＦｑ［ｘ］における次数ｌ（ｌ＜ｎ）の非ゼロの多項式である。シーケンスは、次の２つのステップで反復手順を使用して作成することができる。第１に２つの多項式を割り（その結果フィールドＦｑの要素が得られる）、第２に剰余にｘを掛ける。この演算は、出力が反復を開始すると停止する。このプロセスは、非特許文献１による記事に記載されているように線形帰還シフトレジスタを使用して実施することができる。この環境では、シーケンスの周期的なシフトと多項式Ｒｌ（ｘ）との間の関係が確立される。つまり、Ｒｌ（ｘ）の変更によってシーケンスの周期的シフトのみが行われ、すべての周期的シフトは多項式Ｒｌ（ｘ）に対応する。結果として得られたシーケンスの特性の１つは、シーケンスはｑｎ−１の周期を有し、ある周期内に、ある幅（または長さ）ｎにわたって、どの部分も一度だけシーケンスに存在するということである。これを「ウィンドウ特性（ｗｉｎｄｏｗ  ｐｒｏｐｅｒｔｙ）」と呼ぶ。周期ｑｎ−１はシーケンスの長さ、ｎはシーケンスの次数とも呼ばれる。
【００４９】
しかし、上記のプロセスは、ウィンドウ特性を有するシーケンスの作成に使用できる様々なプロセスのうちの１つである。
【００５０】
（ＩＶ．Ｂ．配列の構築）
（一部をカメラによって捕捉できる）画像の作成に使用できる配列（またはｍ配列）は、１次元シーケンスまたはｍシーケンスの拡張である。Ａを周期（ｍ１，ｍ２）の配列、すなわちＡ（ｋ＋ｍ１，ｌ）＝Ａ（ｋ，ｌ＋ｍ２）＝Ａ（ｋ，ｌ）と仮定する。ｎ１×ｎ２ウィンドウがＡの周期をシフトするとき、Ｆｑにわたる非ゼロのｎ１×ｎ２のすべての行列がたった一度だけ現れる。この特性も各ウィンドウが一意であるという点で「ウィンドウ特性」と呼ばれる。次いでウィンドウは、周期（ｍ１，ｍ２）（ｍ１およびｍ２は配列に存在する水平および垂直のビット数）および次数（ｎ１，ｎ２）の配列として表すことができる。
【００５１】
バイナリ配列（またはｍ配列）は、シーケンスを折りたたむことによって構築することができる。１つの手法は、シーケンスを取得し、次いでそれをｍ１×ｍ２のサイズに折りたたむことである。この場合、配列の長さはＬ＝ｍ１×ｍ２＝２ｎ−１である。あるいは、（例えば１枚の用紙、３０枚の用紙、またはコンピュータモニタのサイズなど）カバーしたいあらかじめ定義されているサイズのスペースで開始し、エリア（ｍ１×ｍ２）を判定し、次いでそのサイズを使用してＬ≧ｍ１×ｍ２と仮定することができる。この場合Ｌ＝２ｎ−１である。
【００５２】
異なる様々な折りたたみ技術を使用することができる。例えば、図３Ａから図３Ｃは、異なる３つのシーケンスを示している。これらのそれぞれを図３Ｄに示すような配列に折りたたむことができる。異なる３つの折りたたみ方法は、図３Ｄのオーバーレイ、および図３Ｅおよび３Ｆのラスタパスとして示されている。図３Ｄに示す折りたたみ方法を採用する。
【００５３】
図３Ｄに示すような折りたたみ方法を作成するために、長さＬおよび次数ｎのシーケンス｛ａｉ｝を作成する。次に、配列の各ビットを式１によって示すように算出すると仮定することによって、シーケンス｛ａｉ｝からサイズｍ１×ｍ２の配列｛ｂｋｌ｝が作成される。この場合、ｇｃｄ（ｍ１，ｍ２）＝１およびＬ＝ｍ１×ｍ２である。
【００５４】
ｂｋｌ＝ａｉ                      （１）
式中、ｋ＝ｉｍｏｄ（ｍ１），ｌ＝ｉｍｏｄ（ｍ２），ｉ＝０，…，Ｌ−１である。
【００５５】
この折りたたみ手法は、代わりに、配列の対角線上にシーケンスを配置し、次いで縁に到達すると反対の縁から続くものとして表すことができる。
【００５６】
図４Ａは、図３Ｄの配列のエンコードに使用できるエンコーディング技術のサンプルを示している。他のエンコーディング技術を使用できることを理解されたい。例えば、代替のコーディング技術を図１１に示している。
【００５７】
図４Ａを参照すると、第１のビット４０１（例えば「１」）は、黒インクの列によって表されている。第２のビット４０２（例えば「０」）は、黒インクの行によって表されている。任意のカラーインクを使用して様々なビットを表すことができることを理解されたい。選択されたインクの色についての唯一の必要条件は、有意のコントラストが提供され、媒体の背景が画像捕捉システムによって区別可能であることである。図４Ａのビットは、セルの３×３行列によって表される。行列のサイズは、画像捕捉システムのサイズおよび解像度に基づく任意のサイズに変更することができる。ビット０および１の代替の表現を図４Ｃ〜４Ｅに示している。図４Ａ〜４Ｅのエンコーディングのサンプルでの１またはゼロの表現は、影響無く切り替えることができることを理解されたい。図４Ｃは、交互の配列において２つの行または列を占めるビット表現を示している。図４Ｄは、破線形の行および列のピクセルの代替配列を示している。最後に図４Ｅは、（黒い点２つの後に黒い点１つなど）不規則な間隔の形式での列および行のピクセル表現を示している。
【００５８】
図４Ａに戻って、ビットが３×３行列によって表され、イメージングシステムが３×３領域において暗い行を１つ、および白い行を２つ検出すると、ゼロ（または１）が検出される。暗い列が１つ、白い列が２つの画像が検出されると、１（または０）が検出される。
【００５９】
ここでは、１より大きいピクセルまたはドットを使用して１ビットを表す。単一のピクセル（またはビット）を使用して１ビットを表すのは脆弱である。ほこり、用紙の折り目、平らではない面などは、データ単位の単一のビット表現の読み取りの問題を作り出す。しかし、異なる手法を使用してある面における配列を図示できることを理解されたい。いくつかの手法を図４Ｃから図４Ｅに示している。他の手法を使用することもできることを理解されたい。スペースシフトされたドットのみを使用する１つの手法を図１１に示している。
【００６０】
ビットストリームを使用して、図４Ｂのグラフィカルパターン４０３を作成する。グラフィカルパターン４０３は、１２個の行および１８個の列を含む。行および列は、ビット表現４０１および４０２を使用してグラフィカル表現に変換されるビットストリームによって形成される。図４Ｂは、次のビット表現を有するものとみなすことができる。
【００６１】
【数３】
0004750425.tif 000004
【００６２】
（Ｖ．デコーディング）
図２Ａのペンで筆記する、またはエンコードされたパターンの近くにペンを移動させるとき、カメラが画像を捕捉する。例えばペン２０１は、用紙に押し付けられ、用紙上の文書を横切るときに圧力センサーを使用し得る。次いで画像は、エンコードされた画像の完全な表現に対して捕捉画像の向きを判定し、捕捉画像を構成するビットを抽出するように処理される。
【００６３】
エンコードされた全エリアに対する捕捉画像の向きの判定では、図５Ａ〜５Ｄに示す考えられる４つのすべてのコーナーがグラフィッカルパターン４０３内に存在し得るとは限らないことに気づくかもしれない。実際、適切な向きでは、図５Ａに示すコーナーのタイプは、グラフィカルパターン４０３に存在しない。したがって、図５Ａに示したコーナーのタイプが欠如している向きが正しい向きである。
【００６４】
続いて図６を参照すると、カメラによって捕捉された画像６０１が分析され、画像６０１によって実際に表される位置に関して解釈可能なようにその向きが判定される。まず、画像６０１を調べて、ピクセルが水平方向および垂直方向に並ぶように画像の回転に必要な角度θが判定される。基礎を成すグリッドの非水平、非垂直方向の配列（例えば４５度）への回転を含めて、代替のグリッド配列が考えられることに留意されたい。ユーザは、他のものより前に水平方向および垂直方向のパターンに注目する傾向があるため、非水平、非垂直方向の配列の使用は、視覚的な混乱のもと（ｖｉｓｕａｌ  ｄｉｓｔｒａｃｔｉｏｎｓ）をユーザから取り除くことのメリットの可能性を提供し得る。簡潔にするために、グリッドの向き（基礎を成すグリッドの水平方向および垂直方向、および他の任意の回転）をまとめて、定義済みグリッド向きと呼ぶ。
【００６５】
次に、画像６０１が分析されて、どのコーナーが欠如しているかを判定する。画像６０１のデコーディングの用意ができている画像６０３への回転に必要な回転量οは、ο＝（θ＋回転量｛どのコーナーが欠如しているかによって定義｝）と示される。回転量は、図７の式によって示される。図６に戻って、まず、ピクセルの水平方向および垂直方向（または他の定義済みグリッド向き）の配列に達するように、ピクセルのレイアウトによって角度θが判定され、画像が６０２に示すように回転される。次いで欠如しているコーナーを判定するために分析が行われ、画像６０２が画像６０３に回転されて、画像をデコーディングのために設定する。ここでは、画像６０３が正しい向きを有し、デコーディングに使用できるように、画像は反時計回りに９０度回転される。
【００６６】
回転角度θを画像６０１の回転の前または後に適用して欠如しているコーナーを考慮に入れることができることを理解されたい。また、捕捉画像におけるノイズを考慮に入れることによって、４つすべてのタイプのコーナーが存在し得ることも理解されたい。各タイプのコーナー数を数え、最も少ない数のタイプを欠如しているコーナータイプとして選択することができる。
【００６７】
最後に、画像６０３におけるコードが読み出され、画像４０３の作成に使用された元のビットストリームと相関させる。相関は、いくつかの方法で実行することができる。例えば、復元されたビットストリームが元のビットストリーム内の他のすべてのビットストリームの断片と比較される再帰的手法によって実行することができる。第２に、例えば、復元されたビットストリームと元のビットストリームとの間のハミング距離を使用することによって２つのビットストリーム間での統計的分析を行うことができる。様々な手法を使用して、元のビットストリーム内の復元されたビットストリームの位置を判定することができることを理解されたい。
【００６８】
復元されたビットを得ると、（例えば図４Ｂに示すものなど）元の配列内の捕捉画像の位置を突き止める必要がある。配列全体内のビットのセグメントの位置を判定するプロセスは、いくつかの項目により複雑になる。まず、捕捉すべき実際のビットが不明瞭である可能性がある（例えばカメラは手書きによる画像を捕捉する可能性があり、これは元のコードを不明瞭にする）。第２に、ほこり、折り目、反射などもまた、捕捉画像のエラーを作り出す可能性がある。これらのエラーは、位置を突き止めるプロセスをより難しくする。この点で、画像捕捉システムは、画像から抽出された非連続ビットに対して機能する必要がある場合がある。次は、画像からの非連続ビットに対して動作する方法を表す。
【００６９】
ｎがｍシーケンスの次数である場合、シーケンス（またはｍシーケンス）Ｉがべき級数Ｉ（ｘ）＝１／Ｐｎ（ｘ）に対応し、Ｋ≧ｎであり、上付き文字ｔが行列またはベクトルの転置を表す場合、捕捉画像はＩのＫ個のビットｂ＝（ｂ０  ｂ１  ｂ２・・・ｂｋ−１）ｔを含むと仮定する。Ｋビットの位置ｓは、単にｂ０がシーケンスの先頭にシフトされるようにするためのＩの周期シフト数である。次いでこのシフトされたシーケンスＲは、べき級数ｘｓ／Ｐｎ（ｘ）、すなわちＲ＝Ｔｓ（Ｉ）に対応する。式中、Ｔは周期シフト演算子である。このｓを間接的に見つける。多項式のモジュロＰｎ（ｘ）はフィールドを形成する。ｘｓ≡ｒ０＋ｒ１ｘ＋・・・ｒｎ−１ｘｎ−１ｍｏｄ（Ｐｎ（ｘ））であることが保証される。したがって、（ｒ０，ｒ１，＋・・・，ｒｎ−１）であることがわかり、次いでｓについて解くことができる。
【００７０】
この関係ｘｓ≡ｒ０＋ｒ１ｘ＋・・・ｒｎ−１ｘｎ−１ｍｏｄ（Ｐｎ（ｘ））は、Ｒ＝ｒ０＋ｒ１Ｔ（Ｉ）＋・・・ｒｎ−１Ｔｎ−１（Ｉ）であることを含意している。二元一次方程式で書くと、次のようになる。
Ｒ＝ｒｔＡ                （２）
【００７１】
式中、ｒ＝（ｒ０  ｒ１  ｒ２・・・ｒｎ−１）ｔ、およびＡ＝（Ｉ  Ｔ（Ｉ）・・・Ｔｎ−１（Ｉ））ｔであり、これは０シフトから（ｎ−１）シフトまでのＩの周期シフトから成る。ここで、ｒを解くのに、Ｒにおいて疎のＫビットのみが使用可能である。Ｒにおけるｂｉとｂ０との間の指数の差がｋｉ、ｉ＝１，２，・・・，ｋ−１であると仮定すると、ｉ＝１，２，・・・，ｋ−１の場合のＲの１番目の要素および（ｋｉ＋１）番目の要素は、ちょうどｂ０，ｂ１，・・・，ｂｋ−１となる。ｉ＝１，２，・・・，ｋ−１の場合にＡの１番目の要素および（ｋｉ＋１）番目の要素を選択することによって、次の二元一次方程式が形成される。
【００７２】
ｂｔ＝ｒｔＭ                （３）
式中、ＭはＡのｎ×Ｋ部分行列である。
【００７３】
ｂがエラー無しの場合、ｒの解は次の式で表すことができる。
【００７４】
【数４】
0004750425.tif 000005
【００７５】
式中、
【００７６】
【数５】
0004750425.tif 000006
【００７７】
は、Ｍの任意の非退化のｎ×ｎ部分行列であり、
【００７８】
【数６】
0004750425.tif 000007
【００７９】
はｂの対応する副ベクトルである。
【００８０】
既知のｒを使用して、非特許文献１に示されているようなＰｏｈｌｉｇ−Ｈｅｌｌｍａｎ−Ｓｉｌｖｅｒアルゴリズムを使用して、ｘｓ≡ｒ０＋ｒ１ｘ＋・・・ｒｎ−１ｘｎ−１ｍｏｄ（Ｐｎ（ｘ））になるようなｓを見つけることができる。
【００８１】
（Ｌ＝２ｎ−１の場合、ｎ×Ｌのサイズの）行列Ａは非常に大きい可能性があるため、行列Ａ全体を格納することは避けるべきである。実際に、上記のプロセスでわかったように、指数差ｋｉの抽出ビットが与えられた場合、Ａの１番目の列および（ｋｉ＋１）番目の列のみが計算に関連する。捕捉画像のサイズが与えられている場合、ｋｉのこうした選択はかなり限られている。したがって、計算に関与し得るこうした列のみを保存すればよい。こうした列の合計数は、Ｌよりかなり小さい（ここではＬ＝２ｎ−１はｍシーケンスの長さである）。
【００８２】
（ＶＩ．エラー訂正）
ｂにエラーが存在する場合、ｒの解はより複雑になる。エラー訂正を用いたデコーディングの従来の方法は、容易には適用できない。というのは、捕捉画像に関連付けられている行列Ｍは、捕捉されたある画像から別の画像に変わり得るからである。
【００８３】
確率的手法を採用する。ｂでのエラービット数ｎｅがＫに比べて相対的に小さいと仮定すると、ｂのＫビットから正しいｎビットを選択し、対応するＭの部分行列
【００８４】
【数７】
0004750425.tif 000008
【００８５】
が非退化である確率は高い。
【００８６】
選択されたｎビットがすべて正しい場合、ｂｔとｒｔＭとの間のハミング距離、またはｒに関連付けられているエラービット数は最小となるはずである。この場合、ｒは式（４）によって算出される。プロセスを数回繰り返すことによって、最小のエラービットをもたらす正しいｒを識別することができそうである。
【００８７】
最小のエラービット数に関連付けられているｒがたった１つである場合、それが正しい解とみなされる。そうではなく、最小のエラービット数に関連付けられているｒが複数ある場合、ｎｅがＭによって生成されたコードのエラー訂正機能を超える確率が高く、デコーディングプロセスは失敗する。次いでシステムは、次の捕捉画像の処理に進むことができる。別の実装形態では、ペンの前の位置に関する情報を考慮に入れることができる。つまり、捕捉画像ごとに、ペンが次に予想され得る宛先エリアを識別することができる。例えば、ユーザがカメラによる２つの画像の捕捉の間でペンを持ち上げていない場合、第２の画像の捕捉によって判定されるペンの位置は、第１の位置からそれほど離れていないはずである。次いで最小のエラービット数に関連付けられている各ｒをチェックして、ｒから算出された位置ｓが位置の制約を満たしているかどうか、すなわち位置が指定された宛先エリア内にあるかどうかを調べることができる。
【００８８】
位置ｓが位置の制約を満たしている場合、配列内の抽出ビットのＸ、Ｙの位置が戻される。位置の制約を満たしていない場合、デコーディングプロセスは失敗する。
【００８９】
図８は、捕捉画像のシーケンス（またはｍシーケンス）での位置を判定するために使用できるプロセスを示している。まずステップ８０１で、捕捉画像に関連するデータストリームが受信される。ステップ８０２で、対応する列がＡから抽出され、行列Ｍが構築される。
【００９０】
ステップ８０３で、ｎ個の独立した列ベクトルが行列Ｍからランダムに選択され、式（４）を解くことによってベクトルｒが判定される。このプロセスは、ステップ８０４でＱ回（例えば１００回）行われる。ループ回数の判定については、ループ回数の算出のセクションで説明する。
【００９１】
ステップ８０５で、ｒは、その関連のエラービット数に従ってソートされる。ソートは、当分野で知られている様々なソートアルゴリズムを使用して行うことができる。例えば、選択ソートアルゴリズムを使用することができる。選択ソートアルゴリズムは、回数Ｑが大きくない場合には有用である。しかし、Ｑが大きくなると、大きい項目数をより効率的に扱う他のソートアルゴリズム（マージソートなど）を使用することができる。
【００９２】
次いでシステムは、ステップ８０６で、複数のｒが最小のエラービット数に関連付けられているかどうかをチェックすることによってエラー訂正がうまく行われたかどうかを判定する。複数のｒが最小のエラービット数に関連付けられている場合、ステップ８０９でエラーが戻され、デコーディングプロセスが失敗したことを知らせる。そうでない場合、ステップ８０７で、例えばＰｏｈｉｇ−Ｈｅｌｌｍａｎ−Ｓｉｌｖｅｒアルゴリズムを使用することによってシーケンス（ｍシーケンス）内の抽出ビットの位置ｓが算出される。
【００９３】
次に、ステップ８０８で、配列内の（Ｘ，Ｙ）位置がｘ＝ｓ  ｍｏｄ  ｍ１およびｙ＝ｓ  ｍｏｄ  ｍ２として算出され、結果が戻される。
【００９４】
（ＶＩＩ．位置判定）
図９は、ペン先の位置を判定するプロセスを示している。入力は、カメラによって捕捉された画像であり、出力は、ペン先の位置座標とすることができる。また、出力は、捕捉画像の回転角度など、他の情報を含んでいても（または含んでいなくても）よい。
【００９５】
ステップ９０１で、画像がカメラから受信される。次に、明るいピクセルと暗いピクセルとの間のコントラストを調整するなど、ステップ９０２（ステップ９０２の破線の外枠によって示すように）で、受信された画像を任意選択で前処理にかけることができる。
【００９６】
次にステップ９０３で、画像が分析されて、その中のビットストリームが判定される。
【００９７】
次にステップ９０４で、ｎ個のビットがビットストリームから複数回ランダムに選択され、元のシーケンス（またはｍシーケンス）内の受信されたビットストリームの位置が判定される。
【００９８】
最後に、ステップ９０４で捕捉画像の位置が判定されると、ステップ９０５でペン先の位置を判定することができる。
【００９９】
図１０は、９０３および９０４についてより詳しく説明し、捕捉画像内のビットストリームを抽出する手法を示している。まずステップ１００１で、画像がカメラから受信される。次いで（ステップ１００２の破線の外枠によって示すように）ステップ１００２で、任意選択で画像を画像の前処理にかけることができる。ステップ１００３でパターンが抽出される。ここでは、様々な線上のピクセルを抽出して、パターンの向きおよび角度θを見つけることができる。
【０１００】
次に、受信された画像は、ステップ１００４で分析されて、基礎を成すグリッド線が判定される。ステップ１００５でグリッド線が見つかると、ステップ１００６でパターンからコードが抽出される。次いでステップ１００７でコードがデコードされ、ステップ１００８でペン先の位置が判定される。ステップ１００５でグリッド線が見つからなかった場合、ステップ１００９でエラーが戻される。
【０１０１】
（ＶＩＩＩ．カメラで捕捉された画像ストロークの対応するペン先ストロークへのマッピング）
本発明の様々な実施形態によれば、較正パラメータを使用して、ペンのカメラ２１０によって捕捉された画像のそれぞれの中心のｘ−ｙ位置をペン先のｘ−ｙ位置にマッピングすることによって、ペン先２０２のｘ−ｙ位置を判定することができる。
【０１０２】
図１１は、本発明の様々な実施形態による較正モジュール１１０２およびマッピングモジュール１１０６を示している。較正モジュール１１０２は較正入力データ１１００を受信し、較正入力データは、ユーザが、用紙など位置的にエンコードされた媒体である面２０７の固定位置にペン先２０２を置き、次いで様々な方向にペンを回転させ、かつ／またはペンの反対端を移動させて、較正パラメータ１１０４の生成に使用する複数の画像を捕捉することによって生成することができる。
【０１０３】
マッピングモジュール１１０６は、較正パラメータ１１０４、および復元されたカメラ捕捉位置情報１１１０を使用して、復元されたペン先位置情報１１０８を生成する。
【０１０４】
図１３は、位置的にエンコードされた迷路パターン上に重なるテキストを含む、位置的にエンコードされた用紙のスキャナされたコピーを示している。図１３は、ペン先２０２で用紙上に書かれた実際のインクストローク１３０１を示している。
【０１０５】
図１２は、図１３のスキャナされた画像に対応する、位置的にエンコードされた用紙の電子コピーの一部の画面写真である。図１２では、捕捉画像ストローク１２０３は、捕捉画像ストローク１２０３に沿った点の文書内の位置を判定することによってペンのカメラ２０３によって捕捉された画像のそれぞれの中心から復元された。
【０１０６】
図１２は、ペン先２０２の復元されたペン先ストローク１２０１も示している。復元されたペン先ストローク１２０１は、較正パラメータ１１０４を復元された捕捉画像ストローク１２０３に適用することによって取得することができる。
【０１０７】
本発明の様々な実施形態によれば、仮想ペン先２１２は、復元された画像中心ストローク１２０３を復元されたペン先ストローク１２０１にマッピングするために使用される。仮想ペン先の位置は、ペンの構成に基づく実ペン先２０２とカメラ２０３との間のあらかじめ定義されている関係によって決まる。仮想ペン先２１２は、画像センサー平面２０９上に投影されたペン先２０２の点である。画像センサー平面２０９上の仮想ペン先２１２の位置は不明であるが、固定されている。
【０１０８】
画像の中心の位置をペン先の位置にマッピングする１つの方法は、ペン先とペン本体との間の空間的な関係、ペン本体、レンズ、および画像センサーの間の空間的関係、レンズの焦点距離などの光学特性、画像センサーのピクセルの物理的サイズ、画像の中心とレンズの光軸との間の距離などを識別することである。これらの測定は一般に、特別な機器を必要とする。さらに、インクカートリッジが交換されたときなど、ペンの構成が変わるたびに、このプロセスを繰り返す必要がある可能性がある。仮想ペン先の概念は、これらの複雑なステップを不要にする。仮想ペン先の位置に射影変換（ｐｅｒｓｐｅｃｔｉｖｅ  ｔｒａｎｓｆｏｒｍ）が適用されてペン先の位置が取得される。すなわち、
Ｌｐｅｎｔｉｐ＝Ｆｓ→ｐ（Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐ）            （５）
である。
【０１０９】
（ＩＸ．較正）
以下の（ａ）から（ｇ）までのステップを行うことによって本発明の様々な実施形態に従って較正パラメータＬｖｉｒｔｕａｌ−ｐｅｎｔｉｐを推定することができる。
【０１１０】
（ａ）ユーザは、実ペン先２０２を面２０７上の固定位置Ｌｐｅｎｔｉｐに置く。図１４を参照すると、位置的にエンコードされた面２０７の一部１４００を示しており、面上にＬｐｅｎｔｉｐが１４０２で示されている。
【０１１１】
（ｂ）ユーザはペン先を位置Ｌｐｅｎｔｉｐに保ち、異なるペンの向きの一連の画像を捕捉する（すなわち、ペン先２０２が固定位置Ｌｐｅｎｔｉｐにある間に、様々な方向にペンを回転させ、かつ／またはペン先２０２の反対のペン端部を移動させることができる）。図１４を参照すると、Ｌｐｅｎｔｉｐ１４０２では、パス１４０４に沿った中心を持つ画像を捕捉することができる。
【０１１２】
（ｃ）
【０１１３】
【数８】
0004750425.tif 000009
【０１１４】
を（０，０）として初期設定する。式中
【０１１５】
【数９】
0004750425.tif 000010
【０１１６】
は、Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐの推定値である。
【０１１７】
（ｄ）捕捉画像ごとに、変換Ｆｓ→ｐおよび
【０１１８】
【数１０】
0004750425.tif 000011
【０１１９】
は、ｍ配列のデコーディングおよび画像照合を行うことによって算出され、次いで式６および式７が評価される。
【０１２０】
【数５５】
0004750425.tif 000012
【０１２１】
式中、Ｎは較正に使用される捕捉画像の数、およびΔＬｉはｉ番目のフレームにおける実ペン先の位置とＬｐｅｎｔｉｐとの間のオフセットである。
【０１２２】
（ｅ）式（６）で、Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐを
【０１２３】
【数１２】
0004750425.tif 000013
【０１２４】
と設定して
【０１２５】
【数１３】
0004750425.tif 000014
【０１２６】
ｉ＝１、２、・・・、Ｎが得られる。
【０１２７】
【数１４】
0004750425.tif 000015
【０１２８】
を平均することによってＬｐｅｎｔｉｐが次のように推定される。
【０１２９】
【数５６】
0004750425.tif 000016
【０１３０】
（ｆ）式（７）で、Ｌｐｅｎｔｉｐを
【０１３１】
【数１６】
0004750425.tif 000017
【０１３２】
と設定して
【０１３３】
【数１７】
0004750425.tif 000018
【０１３４】
ｉ＝１、２、・・・、Ｎが得られる。
【０１３５】
【数１８】
0004750425.tif 000019
【０１３６】
を平均することによってＬｖｉｒｔｕａｌ−ｐｅｎｔｉｐが次のように推定される。
【０１３７】
【数５７】
0004750425.tif 000020
【０１３８】
（ｇ）ステップ（ｅ）に進む。
【０１３９】
（ｅ）から（ｇ）までのステップの何度かの反復の後、Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐおよびＬｐｅｎｔｉｐは、それぞれ実質的により正確な結果に収束する。これを
【０１４０】
【数２０】
0004750425.tif 000021
【０１４１】
および
【０１４２】
【数２１】
0004750425.tif 000022
【０１４３】
と呼ぶ。
【０１４４】
次いで
【０１４５】
【数２２】
0004750425.tif 000023
【０１４６】
を式（５）で較正パラメータＬｖｉｒｔｕａｌ−ｐｅｎｔｉｐとして使用して、復元された画像中心ストローク１２０３を復元されたペン先ストローク１２０１にマッピングすることができる。
【０１４７】
次に、ペンを固定位置Ｌｐｅｎｔｉｐに配置し、４７の画像が捕捉されるようにペンを回転することに基づいて
【０１４８】
【数２３】
0004750425.tif 000024
【０１４９】
およびＬｖｉｒｔｕａｌ−ｐｅｎｔｉｐが算出される一例を示す。各画像から、変換Ｆｓ→ｐおよび
【０１５０】
【数２４】
0004750425.tif 000025
【０１５１】
を取得することができる。以下に示すように、４７回の反復後、Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐは（０．００，０．００）から最終結果（３０．８０，７．０１）に収束し、Ｌｐｅｎｔｉｐは最終結果（９７８．８７，１６１８．５５）に収束する。Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐは画像の中心を原点とする捕捉画像の座標系内にあり、Ｌｐｅｎｔｉｐは対応する文書の座標系内にあることに留意されたい。
【０１５２】
反復回数１−−［ステップｃ］−−ＶｉｒｔｕａｌＰｅｎｔｉｐ（ｘ＝０．００，ｙ＝０．００）を初期設定して、画像ごとに用紙上のペン先を算出する。
【０１５３】
［ステップｅ］：
画像０  用紙上のペン先：ｘ＝９８５．５７、ｙ＝１６４９．７０
画像１  用紙上のペン先：ｘ＝９８５．２０、ｙ＝１６４９．２５
・・・
画像４６  用紙上のペン先：ｘ＝１００６．４１、ｙ＝１６２９．３０
画像４７  用紙上のペン先：ｘ＝１００６．７６、ｙ＝１６２８．７９
平均Ｐｅｎ  Ｔｉｐ  ｏｎ  Ｐａｐｅｒ：ｘ＝９９３．３２、ｙ＝１６４３．２８
［ステップｆ］−−最後の平均Ｐｅｎ  Ｔｉｐ  ｏｎ  Ｐａｐｅｒ（ｘ＝９９３．３２、ｙ＝１６４３．２８）を使用して各画像のＶｉｒｔｕａｌＰｅｎｔｉｐを算出する。
【０１５４】
画像０  仮想ペン先：ｘ＝２．８３、ｙ＝１１．４３
画像１  仮想ペン先：ｘ＝２．４２、ｙ＝１１．６６
・・・
画像４６  仮想ペン先：ｘ＝９．４６、ｙ＝−１７．７２
画像４７  仮想ペン先：ｘ＝１０．５５、ｙ＝−１８．４５
平均ＶｉｒｔｕａｌＰｅｎｔｉｐ：ｘ＝３．６５、ｙ＝０．８８
［ステップｇ］−−ステップｅに進む。
【０１５５】
反復回数２−−［ステップｅ］−−最後の平均ＶｉｒｔｕａｌＰｅｎｔｉｐ（ｘ＝３．６５，ｙ＝０．８８）を使用して各画像の用紙上のペン先を算出する。
【０１５６】
画像０  用紙上のペン先：ｘ＝９８４．８６、ｙ＝１６４６．０７
画像１  用紙上のペン先：ｘ＝９８４．５０、ｙ＝１６４５．５８
・・・
画像４６  用紙上のペン先：ｘ＝１００３．０９、ｙ＝１６２８．０６
画像４７  用紙上のペン先：ｘ＝１００３．５３、ｙ＝１６２７．５４
平均Ｐｅｎ  Ｔｉｐ  ｏｎ  Ｐａｐｅｒ：ｘ＝９９１．６４、ｙ＝１６４０．３２
［ステップｆ］−−最後の平均Ｐｅｎ  Ｔｉｐ  ｏｎ  Ｐａｐｅｒ（ｘ＝９９１．６４、ｙ＝１６４０．３２）を使用して各画像のＶｉｒｔｕａｌＰｅｎｔｉｐを算出する。
【０１５７】
画像０  仮想ペン先：ｘ＝６．２５、ｙ＝１０．９３
画像１  仮想ペン先：ｘ＝５．７９、ｙ＝１１．１２
・・・
画像４６  仮想ペン先：ｘ＝１１．９３、ｙ＝−１４．６７
画像４７  仮想ペン先：ｘ＝１３．０１、ｙ＝−１５．４１
平均ＶｉｒｔｕａｌＰｅｎｔｉｐ：ｘ＝６．８７，ｙ＝１．６４
［ステップｇ］−−ステップｅに進む。
【０１５８】
反復回数３−−［ステップｅ］−−最後の平均ＶｉｒｔｕａｌＰｅｎｔｉｐ（ｘ＝６．８７，ｙ＝１．６４）を使用して各画像の用紙上のペン先を算出する。
【０１５９】
・・・
反復回数４３−−平均ＶｉｒｔｕａｌＰｅｎｔｉｐ：ｘ＝３０．７４、ｙ＝７．００
・・・
反復回数４４−−平均ＶｉｒｔｕａｌＰｅｎｔｉｐ：ｘ＝３０．７６、ｙ＝７．０１
・・・
反復回数４５−−平均ＶｉｒｔｕａｌＰｅｎｔｉｐ：ｘ＝３０．７７、ｙ＝７．０１
・・・
反復回数４６−−平均ＶｉｒｔｕａｌＰｅｎｔｉｐ：ｘ＝３０．７８、ｙ＝７．０１
・・・
反復回数４７−−［ステップｆ］−−最後の平均Ｐｅｎ  Ｔｉｐ  ｏｎ  Ｐａｐｅｒ（ｘ＝９７８．８７、ｙ＝１６１８．５５）を使用して各画像のＶｉｒｔｕａｌＰｅｎｔｉｐを算出する。
【０１６０】
画像０  仮想ペン先：ｘ＝３１．６１、ｙ＝６．８８
画像１  仮想ペン先：ｘ＝３０．７４、ｙ＝６．７３
・・・
画像４６  仮想ペン先：ｘ＝３０．４７、ｙ＝７．７４
画像４７  仮想ペン先：ｘ＝３１．４６、ｙ＝６．９６
したがってこの例では、平均ＶｉｒｔｕａｌＰｅｎｔｉｐの最後の値は、ｘ＝３０．８０、ｙ＝７．０１に収束する。
【０１６１】
上述してきたことは、単に本発明の原理の用途の例にすぎない。当業者は、本発明の意図および範囲から逸脱することなく、他の構成および方法を実施することができる。本発明の任意の方法は、コンピュータディスクまたは他のコンピュータ可読媒体上に格納できるソフトウェアで実施することができる。
【図面の簡単な説明】
【０１６２】
【図１】本発明の実施形態とともに使用できるコンピュータの一般的な説明を示す図である。
【図２Ａ】本発明の実施形態による画像捕捉システムおよび対応する捕捉画像を示す図である。
【図２Ｂ】本発明の実施形態による画像捕捉システムおよび対応する捕捉画像を示す図である。
【図３Ａ】本発明の実施形態による様々なシーケンスおよび折りたたみ技術を示す図である。
【図３Ｂ】本発明の実施形態による様々なシーケンスおよび折りたたみ技術を示す図である。
【図３Ｃ】本発明の実施形態による様々なシーケンスおよび折りたたみ技術を示す図である。
【図３Ｄ】本発明の実施形態による様々なシーケンスおよび折りたたみ技術を示す図である。
【図３Ｅ】本発明の実施形態による様々なシーケンスおよび折りたたみ技術を示す図である。
【図３Ｆ】本発明の実施形態による様々なシーケンスおよび折りたたみ技術を示す図である。
【図４Ａ】本発明の実施形態による様々なエンコーディングシステムを示す図である。
【図４Ｂ】本発明の実施形態による様々なエンコーディングシステムを示す図である。
【図４Ｃ】本発明の実施形態による様々なエンコーディングシステムを示す図である。
【図４Ｄ】本発明の実施形態による様々なエンコーディングシステムを示す図である。
【図４Ｅ】本発明の実施形態による様々なエンコーディングシステムを示す図である。
【図５Ａ】図４Ａおよび４Ｂによるエンコーディングシステムに関連付けられている結果として得られた４つの可能なコーナーを示す図である。
【図５Ｂ】図４Ａおよび４Ｂによるエンコーディングシステムに関連付けられている結果として得られた４つの可能なコーナーを示す図である。
【図５Ｃ】図４Ａおよび４Ｂによるエンコーディングシステムに関連付けられている結果として得られた４つの可能なコーナーを示す図である。
【図５Ｄ】図４Ａおよび４Ｂによるエンコーディングシステムに関連付けられている結果として得られた４つの可能なコーナーを示す図である。
【図６】本発明の実施形態による捕捉画像部分の回転を示す図である。
【図７】図４Ａから図４Ｅのコーディングシステムとともに使用される様々な角度の回転を示す図である。
【図８】本発明の実施形態による捕捉された配列の位置を判定するプロセスを示す図である。
【図９】本発明の実施形態による捕捉画像の位置を判定する方法を示す図である。
【図１０】本発明の実施形態による捕捉画像の位置を判定する別の方法を示す図である。
【図１１】本発明の様々な実施形態による較正モジュールおよびマッピングモジュールを示す図である。
【図１２】本発明の一実施形態による、復元されたカメラ捕捉ストローク（すなわち捕捉画像のそれぞれの中心から復元された）、および対応するマップされたペン先ストロークを示す図である。
【図１３】図１２に示す復元されたストロークに関連付けられている実際のペン先ストロークを示す図である。
【図１４】本発明の様々な実施形態による、カメラで捕捉された画像のそれぞれの中心に基づいて復元されたパス、およびパスに沿った点が較正パラメータを介してマッピングされた点を示す図である。
【図１５】従来技術による文書におけるエンコードスペースの表現を示す図である。
【符号の説明】
【０１６３】
１０１  キーボード
１０２  マウス
１０６  特殊ポートインタフェース
１０７  モニタ
１０８  ビデオアダプタ
１０９  リモートコンピュータ
１１０  処理ユニット
１１１  メモリ
１１２  ローカルエリアネットワーク
１１３  広域ネットワーク
１１４  ネットワークインタフェース
１１５  モデム
１２０  システムメモリ
１３０  システムバス
１６５  デジタイザ
１９２  ハードディスクインタフェース
１９３  磁気ディスクドライブインタフェース
１９４  光ドライブインタフェース
１９５  オペレーティングシステム
１９６  アプリケーションプログラム
１９７  他のプログラムモジュール
１９８  プログラムデータ
１１００  較正入力データ
１１０２  較正モジュール
１１０４  較正パラメータ
１１０６  マッピングモジュール
１１０８  ペン先位置情報
１１１０  カメラ捕捉位置情報
【図１】
0004750425.tif 000080
【図２Ａ】
0004750425.tif 000081
【図２Ｂ】
0004750425.tif 000082
【図３Ａ】
0004750425.tif 000083
【図３Ｂ】
0004750425.tif 000084
【図３Ｃ】
0004750425.tif 000085
【図３Ｄ】
0004750425.tif 000086
【図３Ｅ】
0004750425.tif 000087
【図３Ｆ】
0004750425.tif 000088
【図４Ａ】
0004750425.tif 000089
【図４Ｂ】
0004750425.tif 000090
【図４Ｃ】
0004750425.tif 000091
【図４Ｄ】
0004750425.tif 000092
【図４Ｅ】
0004750425.tif 000093
【図５Ａ】
0004750425.tif 000094
【図５Ｂ】
0004750425.tif 000095
【図５Ｃ】
0004750425.tif 000096
【図５Ｄ】
0004750425.tif 000097
【図６】
0004750425.tif 000098
【図７】
0004750425.tif 000099
【図８】
0004750425.tif 000100
【図９】
0004750425.tif 000101
【図１０】
0004750425.tif 000102
【図１１】
0004750425.tif 000103
【図１２】
0004750425.tif 000104
【図１３】
0004750425.tif 000105
【図１４】
0004750425.tif 000106
【図１５】
0004750425.tif 000107