(57)【要約】【課題】  取り込まれた画像の位置をより大きい画像から決定するためのシステムおよび方法を提供すること。【解決手段】  非反復的な系列を、所定のサイズのサブウィンドウ毎に固有とされた非反復的な配列に折り畳み、その取り込まれた位置を非反復的な配列内のサブウィンドウ毎に決定することによって、取り込まれた画像の位置を、より大きいブウィンドウの画像から決定する。【選択図】  図３Ｄ
2004152273.tif 000002
【特許請求の範囲】
【請求項１】
ラップされた非反復的な系列を、配列内に生成する方法であって、
非反復的な系列を生み出すステップと、
前記非反復的な系列を、配列内にラップするステップと
を具え、
前記配列内では、少なくともｎ個の要素を有する各サブウィンドウが固有であり、前記配列のサイズが２ｎ−１以下であることを特徴とする方法。
【請求項２】
前記ラップするステップは、前記非反復的な系列を、前記配列の対角線に沿ってラップすることを特徴とする請求項１記載の方法。
【請求項３】
前記ラップするステップは、前記配列（ｍ１，ｍ２）の各要素ｂｋｌを、前記系列の要素ａｉによって表すことを含み、
ｋ＝ｉ  ｍｏｄ（ｍ１）であり、ｌ＝ｉ  ｍｏｄ（ｍ２）であり、ｉ＝０，．．．，Ｌ−１であり、Ｌ＝２ｎ−１であることを特徴とする請求項２記載の方法。
【請求項４】
取り込まれた配列の位置を決定する方法であって、
前記取り込まれた配列から列を抽出するステップと、
前記列から抽出した符号を距離によってソートするステップと、
前記列から行列を構築し、前記符号からより大きい配列中の符号へのベクトルを決定するステップと、
前記抽出した符号の位置を決定するステップと
を具えたことを特徴とする方法。
【請求項５】
少なくとも１つの別の行列を前記列から構築し、少なくとも第２のベクトルを決定するステップをさらに具えたことを特徴とする請求項４記載の方法。
【請求項６】
前記符号に対してエラー訂正を行うステップをさらに具えたことを特徴とする請求項４記載の方法。
【請求項７】
ラップされた非反復的な系列を、配列内に生成するためのプログラムが記憶されたコンピュータ可読媒体であって、前記プログラムは、
非反復的な系列を生成するステップと、
前記非反復的な系列を、配列内にラップするステップと
を具え、
前記配列内では、少なくともｎ個の要素を有する各サブウィンドウが固有であり、前記配列のサイズが２ｎ−１以下であることを特徴とするコンピュータ可読媒体。
【請求項８】
前記ラップするステップは、前記非反復的な系列を前記配列の対角線に沿ってラップすることを特徴とする請求項７記載のコンピュータ可読媒体。
【請求項９】
前記ラップするステップは、前記配列（ｍ１，ｍ２）の各要素ｂｋｌを、前記系列の要素ａｉによって表すことを含み、
ｋ＝ｉ  ｍｏｄ（ｍ１）であり、ｌ＝ｉ  ｍｏｄ（ｍ２）であり、ｉ＝０，．．．，Ｌ−１であり、Ｌ＝２ｎ−１であることを特徴とする請求項８記載のコンピュータ可読媒体。
【請求項１０】
取り込まれた配列の位置を決定するためのプログラムが記憶されたコンピュータ可読媒体であって、前記プログラムは、
前記取り込まれた配列から列を抽出するステップと、
前記列から抽出した符号を距離によってソートするステップと、
前記列から行列を構築し、前記符号からより大きい配列中の符号へのベクトルを決定するステップと、
前記抽出した符号の位置を決定するステップと
を具えたことを特徴とするコンピュータ可読媒体。
【請求項１１】
少なくとも１つの別の行列を前記列から構築し、少なくとも第２のベクトルを決定するステップをさらに具えたことを特徴とする請求項１０記載のコンピュータ可読媒体。
【請求項１２】
前記符号に対してエラー訂正を行うステップをさらに具えたことを特徴とする請求項１０記載のコンピュータ可読媒体。
【請求項１３】
取り込まれた配列の位置をより大きい配列中で決定するためのシステムであって、
前記より大きい配列に関する情報を記憶する記憶装置と、
前記取り込まれた配列を受け取るための入力と、
前記取り込まれた配列の連続的なバージョンの、前記より大きい配列からのシフトを決定することにより、前記取り込まれた配列と前記より大きい配列との間の距離を決定するためのプロセッサと
を具えたことを特徴とするシステム。
【請求項１４】
前記より大きい配列中における前記取り込まれた配列の位置を提供するベクトルは、
【数１】
2004152273.tif 000010
によって得られることを特徴とする請求項１３記載のシステム。
【請求項１５】
取り込まれた画像情報を復号する方法であって、
前記画像情報を取り込むステップと、
前記画像情報を復号するステップと、
前記画像情報をエラー訂正するステップと、
前記取り込まれた画像情報に関連する位置を決定するステップと
を具えたことを特徴とする方法。
【請求項１６】
前記復号するステップは、前記画像情報を取り込むカメラにローカルに関連する処理デバイス中で行われることを特徴とする請求項１５記載の方法。
【請求項１７】
前記復号するステップは、前記画像情報を取り込むカメラから離れて行われることを特徴とする請求項１５記載の方法。
【請求項１８】
前記エラー訂正するステップは、前記画像情報を取り込むカメラにローカルに関連する処理デバイス中で行われることを特徴とする請求項１５記載の方法。
【請求項１９】
前記エラー訂正するステップは、前記画像情報を取り込むカメラから離れて行われることを特徴とする請求項１５記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタルペンを使用して媒体と対話することに関し、より詳細には、１つまたは複数の表面との対話中にデジタルペンの位置を決定することに関し、取り込まれた画像の位置を、より大きなサイズのサブウィンドウの画像との関係で決定することが可能な、２次元配列における復号およびエラー訂正の方法に関する。
【背景技術】
【０００２】
コンピュータユーザは、パーソナルコンピュータと対話する方法としてマウスおよびキーボードを使用することを習慣としている。パーソナルコンピュータは、書かれた文書に勝るいくつかの利点をもたらすが、ほとんどのユーザは、引き続き印刷された紙を使用して、いくつかの仕事をしている。これらの仕事のいくつかには、書かれた文書を読むことや書かれた文書に注釈を付けることが含まれる。注釈の場合、印刷文書は、ユーザによって注釈が付けられたことでより一層重要な意味を帯びる。
【０００３】
【非特許文献１】Douglas W. Clark, 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)
【非特許文献２】Ilya Dumer, Daniele Micciancio, Madhu Sudan, "Hardness of Approximating the Minimal Distance of a Linear Code", IEEE Symposium on Foundations of Computer Science. 1999, pp.475-485
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、注釈付きの印刷文書を有することに伴う難点の１つは、後で電子形式のこの文書の中に注釈を再入力する必要があることである。これには、元のユーザまたは別のユーザが注釈に目を通し、それらをパーソナルコンピュータに入力することが必要とされる。場合によっては、ユーザは注釈および元のテキストをスキャンして読み込み、それによって新しい文書を作成することになる。これらの複数のステップのために、印刷文書とこの文書の電子バージョンとの間の対話を繰り返すのが困難になる。さらに、読み込んだ画像は修正できないことが多い。元のテキストから注釈を分離する方法がない場合もある。これにより、注釈を使用するのが困難になる。したがって、注釈を処理するための改良された方法が必要とされている。
【０００５】
また、手書き情報を取り込む技法の１つは、筆記中にその位置を決定することのできるペンを使用することによるものがある。この機能を備えるペンの１つは、アノト社（Ａｎｏｔｏ  Ｉｎｃ．）製のアノト（Ａｎｏｔｏ）ペンである。このペンは、カメラを使用して、事前定義済みのパターンで符号化された紙の画像を取り込むことによって機能する。画像パターンの例を図１１に示す。このパターンがアノトペン（アノト社製）によって使用され、紙の上におけるペンの位置を決定する。
【０００６】
しかし、アノトペンで使用されるシステムでは、位置の決定がどれだけ効率的かがはっきりしない。取り込んだ画像の位置を効率的に決定するには、取り込んだ画像を効率的に復号するシステムが必要である。
【０００７】
そこで、本発明の目的は、取り込まれた画像の位置を、より大きなサイズのサブウィンドウの画像との関係で決定することにより、その取り込んだ画像を効率的に復号させ、その画像の位置を効率的に決定することが可能な、２次元配列における復号およびエラー訂正の方法を提供することにある。
【課題を解決するための手段】
【０００８】
本発明は、前述の問題の少なくとも１つに対する解決法を提供するものであり、見た画像上で１つまたは複数の位置を突き止めることを可能とする。その見た画像とは、印刷された画像上にあってもよく、表示されたコンピュータ画像上のグラフィカル表現であってもよい。なお、本発明の実施の形態には、取り込まれた画像を効率的に復号できるようにして、画像の位置の効率的な決定を可能とする復号プロセスを含む。本発明のこれらおよび他の態様は、後続の図面および関連する記述を通して理解できる。
【０００９】
以上の本発明の概要、ならびに以下の好ましい実施形態の詳細な説明は、添付の図面と併せて読むことによって一段とよく理解されるものである。図面は、特許請求する本発明に関する限定としてではなく、例として含める。
【発明の効果】
【００１０】
本発明によれば、画像の非反復的な系列を、所定のサイズのサブウィンドウ毎に固有とされた非反復的な配列に折り畳み、その折り畳まれて取り込まれた位置を非反復的な配列内のサブウィンドウ毎に決定するようにしたので、取り込まれた画像の位置を、より大きなサイズのサブウィンドウの画像から決定することができ、これにより、その取り込んだ画像を効率的に復号させ、その画像の位置を効率的に決定することができる。
【発明を実施するための最良の形態】
【００１１】
本発明の態様は、取り込まれた画像の位置を、より大きな画像との関係で決定することに関する。本明細書で述べる位置決定方法およびシステムは、多機能ペンと共に使用することができる。
【００１２】
以下は、読者のために小見出しで分けてある。小見出しには、用語、汎用コンピュータ、画像取込みペン、配列の符号化、復号、エラー訂正、位置決定が含まれる。
【００１３】
＜用語＞
ペン  −−−  インクを蓄積する能力を含むことも含まないこともある任意の筆記具。いくつかの例では、インク機能なしのスタイラスを本発明の実施形態によるペンとして使用することができる。
【００１４】
カメラ  −−−  紙または他の任意の媒体から画像を取り込むことのできる画像取込みシステム。
【００１５】
＜汎用コンピュータ＞
図１は、本発明の様々な態様を実現するのに使用できる従来型の汎用デジタルコンピューティング環境の例に関する機能ブロック図である。
【００１６】
図１において、コンピュータ１００は、処理ユニット１１０と、システムメモリ１２０と、システムメモリを含めた様々なシステム構成要素を処理ユニット１１０に結合するシステムバス１３０とを備える。システムバス１３０は、様々なバスアーキテクチャのいずれかを用いたメモリバスまたはメモリコントローラ、周辺バス、およびローカルバスを含めた、いくつかのタイプのバス構造のいずれかとすることができる。システムメモリ１２０は、読取り専用メモリ（ＲＯＭ）１４０およびランダムアクセスメモリ（ＲＡＭ）１５０を含む。
【００１７】
ＲＯＭ１４０には、起動中などにコンピュータ１００内の要素間の情報転送を助ける基本ルーチンを含むＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）１６０が記憶されている。コンピュータ１００は、ハードディスク（図示せず）に対して読み書きするためのハードディスクドライブ１７０と、取外し可能磁気ディスク１９０に対して読み書きするための磁気ディスクドライブ１８０と、ＣＤ  ＲＯＭやその他の光媒体などの取外し可能光ディスク１９２に対して読み書きするための光ディスクドライブ１９１も含む。ハードディスクドライブ１７０、磁気ディスクドライブ１８０、および光ディスクドライブ１９１は、それぞれハードディスクドライブインタフェース１９２、磁気ディスクドライブインタフェース１９３、および光ドライブインタフェース１９４によってシステムバス１３０に接続される。ドライブおよびそれらに関連するコンピュータ可読媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、およびその他のデータなどの情報の不揮発性記憶域をパーソナルコンピュータ１００に提供する。この例示的な動作環境では、磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ベルヌーイカートリッジ、ランダムアクセスメモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）など、コンピュータからアクセス可能なデータを記憶することのできる他のタイプのコンピュータ可読媒体も使用できることは、当業者には理解される。
【００１８】
ハードディスクドライブ１７０、磁気ディスク１９０、光ディスク１９２、ＲＯＭ１４０、またはＲＡＭ１５０には、オペレーティングシステム１９５、１つまたは複数のアプリケーションプログラム１９６、その他のプログラムモジュール１９７、およびプログラムデータ１９８を含めて、いくつかのプログラムモジュールを記憶することができる。ユーザは、キーボード１０１やポインティングデバイス１０２などの入力デバイスを介して、コンピュータ１００にコマンドおよび情報を入力することができる。
【００１９】
その他の入力デバイス（図示せず）には、マイクロホン、ジョイスティック、ゲームパッド、衛生受信アンテナ、スキャナなどを含めることができる。これらおよび他の入力デバイスは、システムバスに結合されたシリアルポートインタフェース１０６を介して処理ユニット１１０に接続されることが多いが、パラレルポート、ゲームポート、ユニバーサルシリアルバス（「ＵＳＢ」）など、他のインタフェースによって接続されてもよい。さらに、これらのデバイスは、適切なインタフェース（図示せず）を介してシステムバス１３０に直接に接続されてもよい。モニタ１０７または他のタイプの表示デバイスもまた、ビデオアダプタ１０８などのインタフェースを介してシステムバス１３０に接続される。モニタに加えて、パーソナルコンピュータは通常、スピーカやプリンタなど他の周辺出力デバイス（図示せず）も備える。
【００２０】
好ましい一実施形態としては、フリーハンド入力をデジタルで取り込むために、ペンディジタイザ１６５および付属のペンまたはスタイラス１６６が備わる。ペンディジタイザ１６５とシリアルポートの間に直接接続が示してあるが、実際には、ペンディジタイザ１６５は、当技術分野で周知のようにパラレルポートまたは他のインタフェースおよびシステムバス１３０を介して処理ユニット１１０に直接に結合してもよい。さらに、図ではディジタイザ１６５がモニタ１０７から離れているが、ディジタイザ１６５の使用可能入力領域がモニタ１０７の表示領域と共存することが好ましい。さらに、ディジタイザ１６５は、モニタ１０７に一体化させてもよく、モニタ１０７に重なるか他の方法でモニタ１０７に付属する別個のデバイスとして存在してもよい。
【００２１】
コンピュータ１００は、リモートコンピュータ１０９など１つまたは複数のリモートコンピュータへの論理接続を用いて、ネットワーク化された環境で動作することができる。リモートコンピュータ１０９は、サーバ、ルータ、ネットワークＰＣ、ピアデバイス、またはその他の一般的なネットワークノードとすることができ、図１にはメモリ記憶デバイス１１１しか示していないが、通常はコンピュータ１００に関して上述した要素の多くまたはすべてを含む。図１に示す論理接続は、ローカルエリアネットワーク（ＬＡＮ）１１２および広域ネットワーク（ＷＡＮ）１１３を含む。このようなネットワーキング環境は、オフィス、企業全体のコンピュータネットワーク、イントラネット、およびインターネットでよく見られるものである。
【００２２】
コンピュータ１００は、ＬＡＮネットワーキング環境で使用されるときは、ネットワークインタフェースまたはアダプタ１１４を介してローカルネットワーク１１２に接続される。また、コンピュータ１００は、ＷＡＮネットワーキング環境で使用されるときは通常、インターネットなどの広域ネットワーク１１３を介して通信を確立するためのモデム１１５または他の手段を備える。モデム１１５は内蔵でも外付けでもよく、シリアルポートインタフェース１０６を介してシステムバス１３０に接続される。ネットワーク化された環境では、コンピュータ１００に関して示したプログラムモジュールまたはその一部を、リモートのメモリ記憶デバイスに記憶することができる。
【００２３】
図示のネットワーク接続は例示的なものであり、コンピュータ間の通信リンクを確立する他の手段も使用できることは理解されるであろう。ＴＣＰ／ＩＰ、イーサネット（登録商標）、ＦＴＰ、ＨＴＴＰ、ブルートゥース、ＩＥＥＥ８０２．１１ｘなど、様々な周知のプロトコルのいずれかが存在することを想定しており、システムは、ユーザがウェブベースのサーバからウェブページを取り出すことができるようにクライアント−サーバ構成で操作することができる。様々な従来型のウェブブラウザのいずれかを使用して、ウェブページ上のデータを表示および操作することができる。
【００２４】
＜画像取込みペン＞
本発明の実施の形態には、符号化済みデータストリームを表示形式中で位置付けることが含まれる。表示形式は、印刷された紙（または他の物理媒体）でもよく、符号化済みデータストリームを別の画像または画像セットと共に投影する表示装置でもよい。例えば、符号化済みデータストリームは、紙の上の物理的なグラフィカル画像として、または表示画像に重なるグラフィカル画像として表すこともでき、あるいは表示画面上の物理的な（修正不可能な）グラフィカル画像とすることもできる（したがって、ペンで取り込んだどんな画像部分も表示画面上で位置決めすることが可能である）。
【００２５】
取り込んだ画像の位置をこのように決定することを用いて、紙、媒体、または表示画面とのユーザの対話の位置を決定することができる。本発明の実施の形態では、ペンは、紙の上に筆記するインクペンとすることができる。また、他の実施の形態では、ペンは、ユーザがコンピュータ表示装置の表面上に筆記するスタイラスとすることができる。どんな対話も、文書上の符号化済み画像に関する知識、またはコンピュータ画面上に表示された文書をサポートする知識と共に、システムに返すことができる。カメラの位置を繰り返し取り込むことにより、システムは、ユーザによって制御されているスタイラスの動きを追跡することができる。表示画像または印刷画像は、白紙または内容の詰まった紙に関連する透かしとすることもでき、あるいは、表示画像に関連する透かし、または画面に重なっているか画面中に構築された固定のコーディングとすることもできる。
【００２６】
図２Ａおよび図２Ｂに、カメラ２０３を有するペン２０１を説明する例を示す。ペン２０１は、インク筒を含む場合とそうでない場合のあるチップ２０２を含む。カメラ２０３は、表面２０７から画像２０４を取り込む。ペン２０１はさらに、破線ボックス２０６中に表すように追加のセンサおよび／またはプロセッサも備えることができる。これらのセンサおよび／またはプロセッサ２０６はまた、別のペン２０１および／またはパーソナルコンピュータに情報を送信する機能（例えばブルートゥースや他の無線プロトコルを介して）を備えることができる。
【００２７】
図２Ｂは、カメラ２０３によって見た画像を表す。説明的な一例では、カメラ２０３の視野は３２×３２ピクセルである（Ｎ＝３２）。したがって図２Ｂは、縦３２ピクセル×横３２ピクセルの視野を示す。Ｎのサイズは、所望の画像解像度の程度に基づいて調節可能である。また、ここでは説明のためにカメラ２０３の視野を正方形として示しているが、視野には、当技術分野で知られている他の形状を含めることができる。
【００２８】
カメラ２０３からペン２０１への入力は、画像フレームの系列｛Ｉｉ｝、ｉ＝１，２，．．．，Ａと定義することができ、Ｉｉはサンプリング時間ｔｉでペン２０１によって取り込まれる。サンプリングレートは、固定でもよく、文書のサイズに基づいて可変としてもよい。取り込まれる画像フレームのサイズは、文書のサイズおよび必要とされる正確さの程度に応じて大きくても小さくてもよい。また、カメラ画像サイズも、探索される文書のサイズに基づいて決定することができる。
【００２９】
カメラ２０３で取り込んだ画像は、処理システムによって直接に使用することもでき、事前フィルタリングを施すこともできる。この事前フィルタリングは、ペン２０１中で行ってもよく、ペン２０１の外部（例えばパーソナルコンピュータ）で行ってもよい。
【００３０】
図２Ｂの画像サイズは３２×３２ピクセルである。各符号化ユニットサイズが３×３ピクセルの場合は、取り込まれる符号化ユニットの数は約１００ユニットになる。符号化ユニットサイズが５×５の場合は、取り込まれる符号化ユニットの数は約３６になる。
【００３１】
図２Ａには、位置２０４からのパターンの画像２１０が形成される画像面２０９も示してある。対象面２０７上のパターンから受け取られた光が、レンズ２０８によって集束される。レンズ２０８は単一レンズでも複部構成レンズシステムでもよいが、ここでは、わかりやすくするために単一レンズとして表してある。画像取込みセンサ２１１が画像２１０を取り込む。
【００３２】
画像センサ２１１は、画像２１０を取り込めるよう十分に大きいものとすることができる。あるいは画像センサ２１１は、位置２１２でペンチップ２０２の画像を取り込めるよう十分に大きいものとすることができる。参照のために、位置２１２における画像を仮想ペンチップと呼ぶ。ペンチップとレンズ２０８と画像センサ２１１との関係は一定なので、画像センサ２１１に対する仮想ペンチップの位置は固定されていることに留意されたい。仮想ペンチップ２１２の位置（Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐで表す）から実際のペンチップ２０２の位置（Ｌｐｅｎｔｉｐで表す）への変換により、取り込まれた画像２１０との関係で実際のペンチップの位置を決定することができる。
【００３３】
以下の変換ＦＳ→Ｐが、カメラで取り込んだ画像を紙の上における実際の画像に変換する。
Ｌｐａｐｅｒ＝ＦＳ→Ｐ（ＬＳｅｎｓｏｒ）
【００３４】
筆記中、ペンチップと紙は同じ面上にある。したがって、仮想ペンチップから実際のペンチップへの変換もまたＦＳ→Ｐであり、以下のとおりである。
Ｌｐｅｎｔｉｐ＝ＦＳ→Ｐ（Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐ）
【００３５】
変換ＦＳ→Ｐは、透視変換と呼ぶことができる。これは、ＦＳ→Ｐの推定として以下のように単純化される。
【００３６】
【数１】
2004152273.tif 000003
【００３７】
上式で、θ、ｓｘ、ｓｙは、位置２０４で取り込まれたパターンの２つの配向の回転およびスケールである。さらに、取り込まれた画像を紙の上の対応する背景画像と照合することにより、Ｆ’Ｓ→Ｐをさらに正確にしてＦＳ→Ｐにすることができる。「さらに正確にする」とは、再帰法と呼ばれる一種の最適化アルゴリズムによって、より正確な透視行列ＦＳ→Ｐ（８つのパラメータ）を得ることを意味する。再帰法では、行列Ｆ’Ｓ→Ｐを初期値として扱う。ＦＳ→Ｐは、ＳとＰの間の変換をＦ’Ｓ→Ｐよりも正確に表す。
【００３８】
次に、仮想ペンチップの位置を較正によって決定することができる。
【００３９】
ペンチップ２０２を、紙の上の既知の位置Ｌｐｅｎｔｉｐに配置する。次に、ペンを傾けて、カメラ２０３が種々のペン姿勢で一連の画像を取り込めるようにする。各画像を取り込むごとに、変換ＦＳ→Ｐを受け取ることができる。この変換から、以下のようにペンチップの仮想画像の位置Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐを得ることができる。
Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐ＝ＦＰ→Ｓ（Ｌｐｅｎｔｉｐ）
および
ＦＰ→Ｓ＝１／ＦＳ→Ｐ
【００４０】
画像ごとに受け取ったＬｖｉｒｔｕａｌ−ｐｅｎｔｉｐを平均することにより、仮想ペンチップの正確な位置Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐを決定することができる。
【００４１】
仮想ペンチップの位置Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐがすでにわかった。また、取り込まれた画像から変換ＦＳ→Ｐも得ることができる。最後に、この情報を用いて、以下のように実際のペンチップの位置Ｌｐｅｎｔｉｐを決定することができる。
Ｌｐｅｎｔｉｐ＝ＦＳ→Ｐ（Ｌｖｉｒｔｕａｌ−ｐｅｎｔｉｐ）
【００４２】
＜配列の符号化＞
１次元系列を折り畳むことにより、２次元配列を構築することができる。２次元配列の任意の部分を使用して、全２次元配列中におけるその位置を決定することができる。懸念の１つは、カメラで取り込まれる画像部分のサイズが限られていることである。したがって、取り込まれた１つまたは少数の画像から位置を決定できることが必要である。取り込まれた画像中にあるエラーが、取り込まれた画像中のいくつかの箇所を利用不可能にする場合があることから、厄介な問題がさらに生じる。取り込まれた画像部分が２次元配列中の２つ以上の位置に関連する可能性を最小限に抑えるために、非反復的な系列を使用して配列を生み出すことができる。生み出される系列の特性の１つは、系列が長さ（またはウィンドウ）ｎにわたって反復しないことである。以下に、１次元系列の生成について述べ、次いで系列を配列に折り畳むことについて述べる。
【００４３】
＜系列の構築＞
符号化システムの開始点として、数の系列を使用することができる。例えば、系列（ｍ系列とも呼ぶ）は、体Ｆｑ中のｑ個の要素の集合として表すことができる。ここで、ｑ＝ｐｎであり、ｎ≧１で、ｐは素数である。系列またはｍ系列は、異なる様々な技法によって生成することができ、限定しないがこれらの技法には多項式除法が含まれる。多項式除法を用いると、系列は次のように定義することができる。
【００４４】
【数２】
2004152273.tif 000004
【００４５】
上式で、Ｐｎ（ｘ）は、体Ｆｑ［ｘ］（ｑ個の要素を有する）中のｎ次の原始多項式である。Ｒｌ（ｘ）は、体Ｆｑ［ｘ］中のｌ次（ｌ＜ｎ）の０でない多項式である。系列は、２つのステップを用いた反復的な手順によって生み出すことができる。
【００４６】
第１に、２つの多項式を割り（体Ｆｑの要素が得られる）、第２に、残りにｘを掛ける。出力が繰り返し始めたときに計算を停止する。このプロセスは、論文に述べられているように線形帰還シフトレジスタを使用して実施することができる（例えば、非特許文献１参照）。この環境では、系列の周期的シフトと多項式Ｒｌ（ｘ）との間に関係が確立される。すなわち、Ｒｌ（ｘ）を変更しても系列が周期的にシフトされるだけであり、あらゆる周期的シフトは多項式Ｒｌ（ｘ）に対応する。得られる系列の特性の１つは、幅（または長さ）ｎにわたってどんな部分も系列中で１度存在することである。
【００４７】
前述のプロセスは、非反復的な系列を生み出すのに使用することのできる様々なプロセスの１つにすぎない。
【００４８】
＜配列の構築＞
画像（その一部をカメラで取り込むことができる）を生み出すのに使用できる配列（またはｍ配列）は、１次元系列またはｍ系列の拡大である。周期（ｍ１，ｍ２）の配列をＡとする。すなわちＡ（ｋ＋ｍ１，ｌ）＝Ａ（ｋ，ｌ＋ｍ２）＝Ａ（ｋ，ｌ）とする。ｎ１×ｎ２ウィンドウがＡの周期を通してシフトする場合、Ｆｑにわたる０でないすべてのｎ１×ｎ２行列は、１度だけ現れる。この特性は、各ウィンドウが固有であるという点で「ウィンドウ特性」と呼ぶことができる。この場合、Ａは周期（ｍ１，ｍ２）および次数（ｎ１，ｎ２）の配列として表現することができる（ｍ１およびｍ２は、配列中にある水平および垂直のビット数）。
【００４９】
系列を折り畳むことによって、２進数配列（またはｍ配列）を構築することができる。ある手法は、系列を得てからこれをサイズｍ１×ｍ２に折り畳むものであり、配列の長さはＬ＝ｍ１×ｍ２＝２ｎ−１である。あるいは、カバーしたい所定サイズの空間から開始し（例えば１枚の紙、３０枚の紙、またはコンピュータモニタのサイズ）、領域を決定し（ｍ１×ｍ２）、次いでＬ≧ｍ１ｍ２を可能にするサイズを使用する（Ｌ＝２ｎ−１）。
【００５０】
異なる様々な折畳み技法を用いることができる。例えば図３Ａから図３Ｃに、異なる３つの系列を示す。これらはそれぞれ、図３Ｄとして示す配列に折り畳むことができる。この異なる３つの折畳み方法は、図３Ｄではオーバーレイとして示されており、図３Ｅおよび３Ｆではラスタパスとして示されている。図３Ｄに示す折畳み方法は、ｇｃｄ（ｍ１，ｍ２）＝１のときとして表現することができる（Ｌ＝２ｎ−１）。
【００５１】
図３Ｄに示すような折畳み方法を生み出すには、長さＬおよび次数ｎの系列｛ａｉ｝を生み出す。次に、以下の式１で示すように配列の各ビットが計算されるようにすることによって、系列｛ａｉ｝からサイズｍ１×ｍ２の配列｛ｂｋｌ｝を生み出す。
ｂｋｌ＝ａｉ  この式で、ｋ＝ｉ  ｍｏｄ（ｍ１）であり、ｌ＝ｉ  ｍｏｄ（ｍ２）であり、ｉ＝０，．．．，Ｌ−１である。                              （１）
【００５２】
この折畳み手法は、別法として、配列の対角線上に系列を置き、次いで端に達したら反対側から継続することとして表現することもできる。
【００５３】
図４Ａに、図３Ｄの配列で使用することのできる第１ビットおよび第２ビットについてのサンプル符号化技法を示す。他の符号化技法を用いてもよいことを理解されたい。例えば、図１１に代替コーディング技法を示す。
【００５４】
図４Ａを参照すると、第１ビット４０１（例えば「１」）が、濃いインクの列で表されている。第２ビット４０２（例えば「０」）が、濃いインクの行で表されている。任意の色のインクを使用して様々なビットを表すことができることを理解されたい。選択されるインク色の要件は、画像取込みシステムによって区別可能なように媒体の背景と強い対比をなすことだけである。図４Ａのビットは、３×３のセル行列で表されている。行列のサイズは、画像取込みシステムのサイズおよび解像度に基づいて、任意のサイズに修正することができる。図４Ｃ〜図４Ｅに、ビット０および１の代替表現を示す。図４Ａ〜図４Ｅのサンプル符号化に関する１または０の表現は、影響なく交換できることを理解されたい。図４Ｃには、インタリーブ構成になっている２つの行または列を占めるビット表現を示す。図４Ｄには、断続形式になっている行および列の代替ピクセル構成を示す。最後に、図４Ｅには、不規則な間隔のフォーマットになっている列および行のピクセル表現を示す（例えば２つの濃いブロックの後に１つの明るいブロックが続く）。
【００５５】
再び図４Ａを参照するが、ビットが３×３行列で表され、撮像システムがこの３×３行列中で１つの濃い行と２つの白い行を検出した場合は、０（または１）が表されている。１つの濃い列と２つの白い列を検出した場合は、１（または０）が表されている。
【００５６】
この場合、１ビットを、複数のブロックまたはピクセルまたはドットを使用して表している。単一のピクセル（またはブロックまたはビット）を使用して１ビットを表すのは脆弱である。埃、紙の折り目、平らでない表面などにより、データユニットの単一ビット表現を読み取る際に困難が生じる。ただし、配列を表面上にグラフィカルに表すには様々な手法を用いることができることを理解されたい。いくつかの手法は、図４Ｃから図４Ｅに示したものである。他の手法を用いてもよいことを理解されたい。図１０に、空間シフトされたドットだけを使用する一手法を示す。
【００５７】
ビットストリームを使用して、図４Ｂのグラフィカルパターン４０３を生み出す。グラフィカルパターン４０３は、１２行と１８列を含む。これらの行と列は、ビット表現４０１および４０２を使用してビットストリームをグラフィカル表現に変換することによって形成される。図４Ｂは、以下のビット表現を有するものと見なすことができる。
【００５８】
【数３】
2004152273.tif 000005
【００５９】
＜復号＞
図２Ａのペンで筆記するとき、または符号化済みパターンの近くでペンを動かすとき、カメラが画像を取り込む。次いで、画像を処理して、符号化済み画像の完全な表現に関する取り込まれた画像の配向を決定し、符号化済み画像を構成するビットを抽出する。
【００６０】
図４Ｂは、画像４０３からのピクセルブロックの表現を含む。表示画像４０４〜４１１は、５×５ピクセルブロックを示す。ピクセルブロック４０４は、白い行の間に１つの濃い行があるのを示す。ピクセルブロック４０５は、白い列の間に１つの濃い列があるのを示す。ピクセルブロック４０６は、左下向きの角を示す。ピクセルブロック４０７は、右上向きの角を示す。ピクセルブロック４０８は、左側に半分の濃い行が付いている濃い列を示す。ピクセルブロック４０９は、上に半分の濃い列が付いている濃い行を示す。ピクセルブロック４１０は、半分の濃い行を示す。ピクセルブロック４１１は、半分の濃い列を示す。ピクセルブロックの組合せを分析すると、ピクセルのすべての組合せは、ピクセルブロック４０４〜４１１に見られる画像セグメントで形成できることが理解される。
【００６１】
さらに、より小さいピクセルブロックセットで、あり得るすべてのピクセルの組合せを表そうと試みることもできる。単純に、図５Ａ〜図５Ｄに示す４つの各ブロック５０１〜５０４が画像４０３中に見出されると予想されるであろう。しかし、８つのピクセルブロック４０４〜４１１には、３つのタイプの角しかない。この例では、図５Ａとして表されるピクセルブロックはない。画像セグメント４０１および４０２を選択して、あるタイプの角を除去することができるので、それにより、取り込んだ画像の配向を不足の角タイプに基づいて決定する機会がもたらされる。
【００６２】
図６では、カメラで取り込んだ画像６０１が分析され、その配向は、画像６０１で実際に表される位置について解釈可能なように決定される。まず、画像６０１をよく調べ、ピクセルが水平および垂直に整列するように画像を回転させるのに必要な角度θを決定する。下にあるグリッドを水平および垂直でない構成（例えば４５度）に回転させることを含めて、代替のグリッド整列も可能である。ユーザは、他のパターンよりも先に水平および垂直のパターンに気付く傾向があるので、水平および垂直でない構成を用いることで、ユーザの視覚的混乱をなくすという利点をおそらくもたらすことができる。話を簡単にするために、グリッドの配向（下にあるグリッドの水平と垂直の回転ならびに他の任意の回転）を、事前定義済みグリッド配向と総称する。
【００６３】
次に、画像６０１を分析して、どの角が不足しているかを決定する。画像６０１を復号の準備のできた画像６０３まで回転させるのに必要な回転量ｏを、ｏ＝（θ＋回転量｛どの角が不足しているかによって定義される｝）として示す。この回転量を図７の式で示す。再び図６を参照するが、まず、水平および垂直（または他の事前定義済みグリッド配向）の構成のピクセルに達するためのピクセル配置によって角度θを決定し、６０２に示すように画像を回転させる。次いで、分析を行って不足の角度を決定し、画像６０２を回転させて６０３のような画像を提示して、画像を復号に向けて準備する。ここでは、画像を反時計回りに９０度回転させ、それにより画像６０３の位置を回復することができる。
【００６４】
回転角度θは、不足の角を反映するよう画像６０１を回転させる前に適用しても後に適用してもよいことを理解されたい。
【００６５】
最後に、画像６０３中の符号を読み出し、画像４０３を生み出すのに使用された元のビットストリームと相関させる。相関はいくつかの方法で行うことができる。例えば再帰的手法で行うことができ、その場合、回復されたビットストリームを、元のビットストリーム内にある他のすべてのビットストリームフラグメントと比較する。第２に、回復されたビットストリームと元のビットストリームとの間で、例えばこの２つのビットストリーム間のハミング距離を用いて統計分析を行うこともできる。様々な手法を用いて、回復されたビットストリームの位置を元のビットストリーム内で決定できる。
【００６６】
回復されたビットが得られた後は、取り込んだ画像を元の配列（例えば図４Ｂに示した配列）内で位置決めする必要がある。ビットのセグメントの位置を配列全体のうちで決定するプロセスは、いくつかの事項によって複雑になる。第１に、取り込むべき実際のビットが、カメラによる理想の取込みからみて不明瞭な場合がある（例えば、カメラは元の符号を不明瞭なものにする手書きの画像を取り込む場合がある）。第２に、埃、折り目、反射なども、取り込まれた画像中にエラーを生じることがある。これらのエラーにより、局所化プロセスはより困難になる。これに関し、画像取込みシステムは、画像から抽出された非連続的なビットと共に機能することが必要な場合がある。以下に、画像からの非連続的なビットと共に動作する方法を提示する。
【００６７】
まず系列だけを見るが、系列（またはｍ系列）Ｉが冪級数Ｉ（ｘ）＝１／Ｐｎ（ｘ）に対応するものとする。また、Ｒ（ｘ）＝ｒ０＋ｒ１ｘ＋ｒ２ｘ２＋．．．＋ｒｎ−１ｘｎ−１は、次数がｎ未満である任意の０でない多項式である。系列Ｒは、Ｒ（ｘ）／Ｐｎ（ｘ）に対応する。前述のように、Ｒは、Ｉをシフトしたバージョンである。ＩとＲの間の距離を、距離Ｄと定義する。ＲがＩのｓ番目のシフトである場合、これは、Ｄ（Ｒ）＝ｓと表すことができる。この距離Ｄは、いくつかの様々な技法を用いて計算することができる。ある技法は、２つの間のハミング距離を決定することによるものである。別の方法は、言及されているように、Ｐｏｈｌｉｇ−Ｈｅｌｌｍａｎ−Ｓｉｌｖｅｒアルゴリズムを使用することによるものである（例えば、非特許文献１参照）。当技術分野で知られているその他の距離決定技法を用いることもできる。Ｐｏｈｌｉｇ−Ｈｅｌｌｍａｎ−Ｓｉｌｖｅｒアルゴリズムを使用すると、Ｒ（ｘ）≡ｘｓｍｏｄ（Ｐｎ（ｘ））である。
【００６８】
しかし、折り畳まれた系列を使用して距離を計算しようとすることは、より複雑である。というのは、抽出された符号が非連続的でエラーをさらに含む場合があるからである。以上の系列分析から開始して、画像から位置を決定することができる。以下の関係から開始することができる。
Ｒ＝ｒｔＡ                    （２）
【００６９】
上式で、ｒ＝（ｒ０  ｒ１  ｒ２  ．．．ｒｎ−１）ｔであり、Ａ＝（Ｉ  Ｔ（Ｉ）．．．Ｔｎ−１（Ｉ））ｔは、Ｉの周期的シフトからなる。したがって、Ｉのどんな周期的シフトも、ｒｔとＡの積である。ペンがＩのｋ個のビットを読み取る場合（ｂ＝（ｂ０  ｂ１  ｂ２  ．．．ｂｋ−１）ｔ（ｋ≧ｎ））、Ｒ（ｘ）を用いてｂ０を系列（またはｍ系列）の始まりに周期的にシフトすることができる。このシフトは、次いでＡの列を調節して、Ａのｎ×ｋのサブ行列Ｍを生み出す。したがって以下のとおりである。
【００７０】
ｒＴＭ＝ｂＴ                      （３）
上式で、Ｔは行列またはベクトルの変換を表す。
【００７１】
Ｍのすべての行が独立している場合、ｒを決定することができ、式（１）の１次元位置を調整することによって、Ｄ（Ｒ）は結果としてＩにおけるｂ０の絶対位置が得られる。このことは、ｂ０ビットの２次元位置を決定できることを意味する。この位置情報により、ペンチップの位置を決定することができる。
【００７２】
次に、Ａの全ての調整を決定してチェックすることができる。
【００７３】
別法としては、行列Ａが大きいので、Ａのすべての調整を保持する必要はない。実際、実装形態によっては、関係があるのは列の間の相対位置だけである。したがって、保存できる列（ｂ０を系列（またはｍ系列）の始まりにシフトした後で）は、ペン（したがってカメラ）が回転するときに対応する２次元位置がカメラの受像視野内にある列である。これらの列を、２次元位置情報（例えば行列）と共に配列に記憶することができる。一例は以下を含む。
「element−typeCoreVector [rowsize][column−size]」
【００７４】
このような列の総数は、Ｌよりもずっと少ない（Ｌ＝２ｎ−１）。ｂにエラーがない場合、ｒの解は以下のように表現することができる。
【００７５】
【数４】
2004152273.tif 000006
【００７６】
上式で、
【００７７】
【数５】
2004152273.tif 000007
【００７８】
はＭの任意の非退化ｎ×ｎサブ行列であり、
【００７９】
【数６】
2004152273.tif 000008
【００８０】
はｂの対応するサブベクトルである。
【００８１】
＜エラー訂正＞
ｂにエラーがある場合は、ｒの解はより複雑になる。ｂ中のエラーの数（ｎｅとして表す）がｄ／２未満の場合（ｄはＭによって生成される符号の最小ハミング距離）は、ｂを訂正することができる。残念ながら、行列Ｍが種々のペン姿勢で変化し、行列Ｍの構造が規則的ではないので、エラー訂正を用いた従来の復号方法は容易に適用することができない。場合によっては、エラーがあるときにｄを正確に決定するのは不可能であるとされてきた。（例えば、非特許文献２参照）。
【００８２】
しかし、確率的手法を用いて肯定的な結果が得られた。ｎｅがｋに比べて相対的に少ないと仮定すると、独立した対応する列をＭ中に有するｎ個のビットをランダムに選択するとき、ｂのｋ個のビットから正しいｎ個のビットを選択する確率は高い。
【００８３】
システムは、画像中のランダムなビットを繰り返し選択することができる。システムがこの選択および分析を何回か繰り返した場合、一般に、系列中の適切な距離を分離することができる。言い換えれば、正しいビットが選択されたとき、ｂｔとｒｔＭの間のハミング距離は最小になる（ｒは式（４）によって計算される）。数回繰り返すと、正しいｒは他の距離よりも現れる回数が多く、したがって容易に識別することができる。この結果を、単独で、または前の位置情報と組み合わせて用いることができる。例えば、カメラが、ページの上部に近い線上に位置決めすることのできる画像のストリングを取り込み、カメラからの現在の画像が、例えば前のストリングから一方は非常に近く他方は非常に遠い２つの距離を提供している場合は、ユーザがごく短時間にペンを大きく動かした可能性よりもわずかだけ動かした可能性の方が高い。前の画像取込みと現在の画像取込みとの間で、他のタイプの分析を用いることもできる。
【００８４】
種々のｒがあり、それによりｂｔとｒｔＭの間のハミング距離がすべて最小である場合は、ｎｅがＭによって生成された符号のエラー訂正能力を超えている可能性が高く、復号プロセスは失敗する。システムはこの場合、カメラからの次の取り込まれた画像に移ることができる。
【００８５】
最後に、様々な技法（限定しないがＰｏｈｌｉｇ−Ｈｅｌｌｍａｎ−Ｓｉｌｖｅｒアルゴリズムを含む）により、正しいｂを決定することができ、系列（ｍ系列）Ｉにおけるｒの局所化を計算することができる。次いで、ペンチップを位置決めすることができる。
【００８６】
図８は、系列（またはｍ系列）における取り込まれた画像の位置を決定するのに用いることのできるプロセスを反映している。まずステップ８０１で、取り込まれた画像に関係するデータストリームを受け取る。ステップ８０２で、取り込まれた画像から列を抽出し、取り込まれた画像中の情報で行列を構築する。ステップ８０３で、符号を距離にしたがってソートする。符号は、当技術分野で知られている様々なソートアルゴリズムを使用してソートすることができる。例えば、選択ソートアルゴリズムを使用することができる。選択ソートアルゴリズムは、ｍが大きくないときに有益である。ただしｍが大きくなる場合は、より多くの項目をより効率的に処理する他のソートアルゴリズム（例えばマージソート）を使用することができる。
【００８７】
ステップ８０４で、ステップ８０２で構築した行列からＭ個の行ベクトルを選択し、８０２の行列から配列（またはｍ配列）の始まりへの距離ベクトルｒを決定する。
【００８８】
取り込まれた画像は、行列Ｍの位置を決定するのに必要とされるよりも多くの情報を含む場合がある。例えば、各ビットが９個のピクセルで表され、カメラ撮像システムが３２×３２ビット行列を含む場合、約１００ビットを得ることができる（１０×１０）。撮像されたこれらのビットのうちｎ個を使用して、位置を決定することができる。したがって例えば、配列ｍ１，ｍ２のサイズが２５５×２５５（６５０２５）の場合、取り込まれた画像を位置決めするのに必要なビットの数はｎ個（ｍ１×ｍ２≦Ｌ＝２ｎ−１）になる。この場合、ｎ＝１６である。したがって、取り込まれた画像を位置決めできるようにするために画像が生成する必要のあるビット数はｎである。エラーを補償するために異なる様々な選択肢を提供するには、ｎビットよりも多くのビットを画像から抽出する必要がある。例えば、必要なｎの数が１６の場合、カメラは１８個以上のビットを生成する必要がある。
【００８９】
ステップ８０５で、この分析をＫ回（例えば１０回から１００回、５００回）にわたって実施する。繰り返された結果の数が最大であって、そのエラービット数が所定の値（例えば３）未満である位置を決定することを試みる。次いでシステムは、ステップ８０６で、エラー訂正がうまく行われたかどうかを決定する。うまくいかなかった場合は、ステップ８０９でエラーを返す。うまくいった場合は、ステップ８０７で、系列（ｍ系列）における抽出された符号の位置を計算する（例えばＰｏｈｌｉｇ−Ｈｅｌｌｍａｎ−Ｓｉｌｖｅｒアルゴリズムで）。このステップはまた、ｙｉ＝ｙｎ／ｍＩを計算し、グループテーブル中で因数を調べて、Ｒｉの残余値を得るサブステップを含むこともできる。これは以下のように表現することができる。
【００９０】
【数７】
2004152273.tif 000009
【００９１】
Ｌは、系列における位置を表す。次にステップ８０８で、配列中の（Ｘ，Ｙ）位置をｘ＝Ｌ  ｍｏｄ  ｎ１およびｙ＝Ｌ  ｍｏｄ  ｎ２として表現し、この結果を返す。
【００９２】
＜位置決定＞
図９に、ペンチップの位置を決定するプロセスを示す。入力は、カメラによって取り込まれた画像であり、出力は、全体的な画像と比較した場合の画像の位置座標とすることができる。また、出力は、取り込まれた画像の回転角度を含む場合がある（そうでない場合もある）。
【００９３】
ステップ９０１で、カメラから画像を受け取る。次にステップ９０２で、受け取った画像を任意選択で前処理して（ステップ９０２の破線の輪郭で示すように）、明るいピクセルと暗いピクセルの間のコントラストを調節し、取り込まれた画像の回転角度の決定などを試みる。
【００９４】
次にステップ９０３で、画像を分析して、画像内のビットストリームを決定する。
【００９５】
次にステップ９０４で、ビットストリームを元のビットストリームと比較し、元のビットストリーム内における受け取ったビットストリームの位置を決定する。この比較は、元のビットストリームがどのようにラップされて画像４０３が生み出されているかをシステムが認識しているときに行うことができる。最後に、取り込まれた画像の位置をステップ９０４で決定すると、ステップ９０５でペンチップの位置を決定することができる。
【００９６】
図１０に、ペンチップの位置を決定するための代替手法を示す。まずステップ１００１で、カメラから画像を受け取る。次いでステップ１００２で、任意選択で画像に画像前処理を施すことができる（ステップ１００２の破線の輪郭で示すように）。ステップ１００３でパターンを抽出する。ここで、様々な線上のピクセルを抽出してパターンの配向を見つけ、角度θを決定することができる。
【００９７】
次にステップ１００４で、受け取った画像を分析して、基礎をなすピクセル分散およびグリッド線を決定する。ステップ１００５でグリッド線が見つかった場合は、ステップ１００６でパターンから符号を抽出する。次いでステップ１００７で符号を復号し、ステップ１００８でペンチップの位置を決定する。ステップ１００５でグリッド線が見つからなかった場合は、ステップ１００９でエラーを返す。
【００９８】
添付の特許請求の範囲を用いて本発明を定義したが、本発明は、本明細書で述べた要素およびステップの任意の組合せまたは下位の組合せを含むものとし、したがってこれらの特許請求の範囲は例示的なものである。したがって、本発明を定義するための代替の組合せには任意の数があり、これらの組合せは、説明と特許請求の範囲と図面とを含めた本明細書からの１つまたは複数の要素の、様々な組合せまたは下位の組合せを組み込む。本発明の態様の代替の組合せを、単独で、あるいは本明細書に定義した１つまたは複数の要素またはステップとの組合せで、本発明の修正または改変としてあるいは本発明の一部として利用できることは、本明細書に鑑みて関連技術の当業者には明らかであろう。本明細書に含まれる本発明についての書面記述は、このような修正および改変をすべてカバーするものとする。
【産業上の利用可能性】
【００９９】
本発明は、取り込まれた画像の位置を、より大きなサイズのサブウィンドウの画像との関係で決定することが可能な、２次元配列における復号およびエラー訂正の方法に関する。
【図面の簡単な説明】
【０１００】
【図１】本発明の実施形態と共に使用することのできるコンピュータの一般的な記述を示す図である。
【図２Ａ】本発明の実施形態による画像取込みシステムを示す図である。
【図２Ｂ】本発明の実施形態による、画像取込みシステムに対応する取り込まれた画像を示す図である。
【図３Ａ】本発明の実施形態による様々な系列の１つを示す図である。
【図３Ｂ】本発明の実施形態による様々な系列の１つを示す図である。
【図３Ｃ】本発明の実施形態による様々な系列の１つを示す図である。
【図３Ｄ】本発明の実施形態による様々な折畳み技法の１つを示す図である。
【図３Ｅ】本発明の実施形態による様々な折畳み技法の１つを示す図である。
【図３Ｆ】本発明の実施形態による様々な折畳み技法の１つを示す図である。
【図４Ａ】本発明の実施形態による様々な符号化システムの１つを示す図である。
【図４Ｂ】本発明の実施形態による様々な符号化システムの１つを示す図である。
【図４Ｃ】本発明の実施形態による様々な符号化システムの１つを示す図である。
【図４Ｄ】本発明の実施形態による様々な符号化システムの１つを示す図である。
【図４Ｅ】本発明の実施形態による様々な符号化システムの１つを示す図である。
【図５Ａ】図４Ａおよび４Ｂによる符号化システムに関連する、結果として得られる可能性のある４つの角の１つを示す図である。
【図５Ｂ】図４Ａおよび４Ｂによる符号化システムに関連する、結果として得られる可能性のある４つの角の１つを示す図である。
【図５Ｃ】図４Ａおよび４Ｂによる符号化システムに関連する、結果として得られる可能性のある４つの角の１つを示す図である。
【図５Ｄ】図４Ａおよび４Ｂによる符号化システムに関連する、結果として得られる可能性のある４つの角の１つを示す図である。
【図６】本発明の実施形態による、取り込まれた画像部分の回転を示す図である。
【図７】図４Ａから４Ｅの符号化システムと共に用いられる様々な回転角度を示す図である。
【図８】本発明の実施形態による、取り込まれた配列の位置を決定するプロセスを示す図である。
【図９】本発明の実施形態による、取り込まれた画像の位置を決定する方法を示す図である。
【図１０】本発明の実施形態による、取り込まれた画像の位置を決定する別の方法を示す図である。
【図１１】文書中の符号化空間に関する従来の表現を示す図である。
【符号の説明】
【０１０１】
１００  コンピュータ
１０１  キーボード
１０２  マウス
１０６  シリアルポートインタフェース
１０７  モニタ
１０８  ビデオアダプタ
１０９  リモートコンピュータ
１１０  処理ユニット
１１１  メモリ記憶デバイス
１１２  ローカルエリアネットワーク
１１３  広域ネットワーク
１１４  ネットワークインタフェース
１１５  モデム
１２０  システムメモリ
１３０  システムバス
１４０  ＲＯＭ
１５０  ＲＡＭ
１６０  ＢＩＯＳ
１６５  ディジタイザ
１６６  ペンまたはスタイラス
１７０  ハードディスクドライブ
１８０  磁気ディスクドライブ
１９０  取外し可能磁気ディスク
１９１  光ディスクドライブ
１９２  取外し可能光ディスク
１９２  ハードディスクインタフェース
１９３  磁気ディスクドライブインタフェース
１９４  光ドライブインタフェース
１９５  オペレーティングシステム
１９６  アプリケーションプログラム
１９７  その他のプログラムモジュール
１９８  プログラムデータ
２０１  ペン
２０２  ペンチップ
２０３  カメラ
２０４  画像
２０６  センサおよび／またはプロセッサ
２０７  対象面
２０８  レンズ
２０９  画像面
２１０  画像
２１１  画像取込みセンサ
２１２  仮想ペンチップ
【図１】
2004152273.tif 000011
【図２Ａ】
2004152273.tif 000012
【図２Ｂ】
2004152273.tif 000013
【図３Ａ】
2004152273.tif 000014
【図３Ｂ】
2004152273.tif 000015
【図３Ｃ】
2004152273.tif 000016
【図３Ｄ】
2004152273.tif 000017
【図３Ｅ】
2004152273.tif 000018
【図３Ｆ】
2004152273.tif 000019
【図４Ａ】
2004152273.tif 000020
【図４Ｂ】
2004152273.tif 000021
【図４Ｃ】
2004152273.tif 000022
【図４Ｄ】
2004152273.tif 000023
【図４Ｅ】
2004152273.tif 000024
【図５Ａ】
2004152273.tif 000025
【図５Ｂ】
2004152273.tif 000026
【図５Ｃ】
2004152273.tif 000027
【図５Ｄ】
2004152273.tif 000028
【図６】
2004152273.tif 000029
【図７】
2004152273.tif 000030
【図８】
2004152273.tif 000031
【図９】
2004152273.tif 000032
【図１０】
2004152273.tif 000033
【図１１】
2004152273.tif 000034