(57)【特許請求の範囲】
【請求項１】
複数の言語を含むテキストをマトリクスコードシンボルに効率的に符号化するためにデータを低減させるコンピュータ実行方法であって、
各言語は、１バイト文字の組または２バイト文字の組によって表わされ、
前記方法は、
前記複数の言語を含むテキストを受信するステップと、
前記複数の言語の各文字について所定の符号化値を決定するステップとを備え、
前記所定の符号化値は、１バイト文字および２バイト文字の混合体を含み、
前記方法は、
各１バイト文字および各２バイト文字を、１バイトのものを用いて符号化するステップをさらに備え、当該ステップは、
前記テキスト内の言語間の各移行の間に、１バイトの移行コード値を挿入するステップと、
２バイト文字の組によって表わされる各言語について、各２バイト文字の最初のバイトを切捨てるステップと、
少なくとも１つの移行コード値、各１バイト文字についての１バイト、および各２バイト文字についての１バイトを含むテキストを表わすストリングを前記マトリクスコードシンボルに符号化するステップとを含む、コンピュータ実行方法。
【請求項２】
前記複数の言語の各文字は、少なくとも１つのアラビア語または少なくとも１つの英語である、請求項１に記載のコンピュータ実行方法。
【請求項３】
前記テキストを符号化する前に、前記複数の言語から少なくとも１つの特殊文字を除去するステップと、
前記複数の言語の各文字のうちの１文字に関連付けられた所定の符号化値の前または後に、前記少なくとも１つの特殊文字に関連付けられた移行コード値を付けるステップとをさらに備え、前記移行コード値は、前記テキスト内の２つの文字間の言語の移行を示し、
前記マトリクスコードシンボルに符号化するステップは、前記移行コード値を前記マトリクスコードシンボルに符号化するステップを含む、請求項１に記載のコンピュータ実行方法。
【請求項４】
前記複数の言語の各文字のうちの１文字に関連付けられた所定の符号化値の前に移行コード値を付けるステップをさらに備え、前記移行コード値は、前記複数の言語の各文字に関連付けられた第１の所定の符号化値の前の第２の所定の符号化値に関連付けられた文字に対応する言語が、前記第１の所定の符号化値に関連付けられた前記複数の言語の各文字に対応する言語とは異なることを示し、前記方法はさらに、
前記移行コード値を前記マトリクスコードシンボルに符号化するステップを備える、請求項１に記載のコンピュータ実行方法。
【請求項５】
前記複数の言語の各文字のうちの１文字に関連付けられた所定の符号化値の後に移行コード値を付けるステップをさらに備え、前記移行コード値は、前記複数の言語の各文字に関連付けられた第１の所定の符号化値の後の第２の所定の符号化値に関連付けられた文字に対応する言語が、前記第１の所定の符号化値に関連付けられた前記複数の言語の各文字に対応する言語とは異なることを示し、前記方法はさらに、
前記移行コード値を前記マトリクスコードシンボルに符号化するステップを備える、請求項１に記載のコンピュータ実行方法。
【請求項６】
前記所定の符号化値は、ユニコード値またはＡＳＣＩＩ値に対応する、請求項１に記載のコンピュータ実行方法。
【請求項７】
前記切捨てるステップは、前記所定の符号化値を切捨てて修正後符号化値を得るように構成される、請求項１に記載のコンピュータ実行方法。
【請求項８】
マトリクスコードシンボルを復号化するコンピュータ実行方法であって、
画像取得装置を介してストリングを前記マトリクスコードシンボルから取出すステップと、
異なる言語を指定する移行コード値を決定するとともに、前記異なる言語に１バイト文字および２バイト文字に対応する単一バイトを決定するために、前記ストリングを走査するステップと、
２バイト文字を表わす各単一バイトについて、前記移行コード値に基づいて、前記２バイト文字を取得するために前記単一バイトに第１のバイトを付加するステップとを備え、
前記取出すステップ、前記走査するステップ、および前記付加するステップは、１つ以上のハードウェア実行処理装置を用いて実行される、コンピュータ実行方法。
【請求項９】
前記ストリングに含まれる少なくとも１つの修正後符号化値はある言語に関連しており、前記言語はアラビア語または英語であり、
前記マトリクスコードシンボルは、アラビア文字に関連した少なくとも１つの修正符号化値および英文字に関連した少なくとも１つの修正後符号化値を含む、請求項８に記載のコンピュータ実行方法。
【請求項１０】
前記ストリングに含まれる少なくとも１つの符号化値の中の少なくとも１つの移行コード値を識別するステップをさらに備え、
前記移行コード値は、前記ストリングに含まれる２つの修正後符号化値に関連付けられた２文字間における言語の変化を示す、請求項８に記載のコンピュータ実行方法。
【請求項１１】
前記少なくとも１つの修正後符号化値の各々は、前記少なくとも１つの移行コード値のうちの１つの移行コード値に基づいて、対応の所定の符号化値とマッピングされる、請求項１０に記載のコンピュータ実行方法。
【請求項１２】
前記付加するステップは、
所定の符号化表を用いて、前記ストリングに含まれる少なくとも１つの修正後符号化値の各々に関連付けられた対応の所定の符号化値を求めるステップ、および
前記対応の所定の符号化値を得るために、前記少なくとも１つの修正後符号化値の各々に少なくとも１桁を加えるステップの少なくとも一方を含む、請求項８に記載のコンピュータ実行方法。
【請求項１３】
前記所定の符号化表は、ユニコード表またはＡＳＣＩＩ表に対応する、請求項１２に記載のコンピュータ実行方法。
【発明の詳細な説明】
【技術分野】
【０００１】
発明の分野
本発明は概してテキストの符号化および復号化に関し、特に、テキストをマトリクスコードシンボルに符号化し、復号化する方法に関する。
【背景技術】
【０００２】
発明の背景
データマトリクスバーコードなどの従来のマトリクスコードシンボルが周知であり、テキストまたはデータを格納するために用いられる。データマトリクスバーコードの例は、二次元データマトリクス、および三次元データマトリクスを含む。二次元データマトリクスバーコードは、２値の“０”および“１”を表わす白黒画素のグリッドまたはマトリクスを含む。テキストまたはデータは、さまざまな符号化技術を用いて二次元データマトリクスに符号化される。１つのそのような符号化技術は、英語アルファベットの順序に基づいた情報交換用米国標準コード（ＡＳＣＩＩ）である。ＡＳＣＩＩは７ビット符号化スキームを使用し、１２８文字の定義を含む。英語のＡＳＣＩＩ値は０００から２５５であり、英語のＡＳＣＩＩ値を表わすのに１バイトを使用する。理論上は、二次元データマトリクスは、最大で１５５８個の保持可能な英文字を含む。すべての文字が数字に対応する場合、二次元データマトリクスは最大で３１１６文字を保持する。
【０００３】
しかし、他の言語を表わすことはできなかったため、ＡＳＣＩＩは１度に１つのスクリプトに限られていた。したがって、１２８文字のセットを用いて表わすのが困難であった他の言語を表わすためにユニコードが導入された。ユニコードは２バイトを使用して文字を表わし、多言語コンピュータ処理をサポートする。ユニコードは１文字を表わすのに２バイトを使用するため、二次元データマトリクスバーコードでテキストを表わすのに多くのスペースを消費する。また、複数の文字が複数の言語からの文字および数字を含む場合、二次元データマトリクスが保持する情報量は減少する。
【０００４】
したがって、テキストをマトリクスコードシンボルに表わすのに必要なスペースが削減された、テキストをマトリクスコードシンボルに符号化し、復号化する方法が必要である。
【０００５】
別個の図面に亘って同様の参照番号は同一または機能的に同様の要素を指し、以下の詳細な説明と共に本明細書に組込まれるか本明細書の一部を形成する添付の図面は、さまざまな実施例をさらに図示し、すべて本発明に係るさまざまな原理および利点を説明する。
【０００６】
当業者であれば、図中の要素は簡単および明確にするために描かれており、必ずしも同じ割合で描かれていないことを認識するであろう。たとえば、図中のいくつかの要素の寸法は、本発明の実施例の理解を容易にするために、他の要素と比べて拡大して描かれていることがある。
【図面の簡単な説明】
【０００７】
【図１】本発明のさまざまな実施例が機能し得る例示的な環境を示す図である。
【図２】本発明の実施例に係るテキストをマトリクスコードシンボルに符号化するための方法のフローチャートを示す図である。
【図３】本発明の実施例に係る１つ以上の文字のうちの１文字に関連付けられた所定の符号化値の前または後に移行コード値を付けるための方法のフローチャートを示す図である。
【図４】本発明の実施例に係る１つ以上の所定の符号化値を含む符号化表を示す図である。
【図５】本発明の実施例に係る１つ以上の修正後符号化値を含む符号化表を示す図である。
【図６】本発明の実施例に係るマトリクスコードシンボルを復号化する方法のフローチャートを示す図である。
【図７】本発明の実施例に係る１つ以上の符号化値の中の１つ以上の移行コード値を識別する方法のフローチャートを示す図である。
【図８】本発明の実施例に係る１つ以上の修正後符号化値の各々に関連付けられた対応の所定の符号化値を得る方法のフローチャートを示す図である。
【図９】本発明の実施例に係るテキストをマトリクスコードシンボルに符号化するためのエンコーダを示す図である。
【図１０】本発明の実施例に係るマトリクスコードシンボルを復号化するためのデコーダを示す図である。
【発明を実施するための形態】
【０００８】
発明の詳細な説明
本発明に係る実施例を詳細に説明する前に、当該実施例は、テキストをマトリクスコードシンボルに符号化し、復号化する方法に関連する方法ステップおよび装置構成部品の組合せに主に属することに注目すべきである。したがって、装置構成部品および方法ステップは、図中で従来の記号によって適宜表わされており、本明細書中の説明の恩恵を受ける当業者にとって容易に明らかとなる詳細で開示内容を曖昧にすることを避けるために、本発明の実施例の理解に関連する特定の詳細のみが示されている。
【０００９】
詳細な説明の段落で与えられる説明は、コンピュータメモリ内のデータビットに対する演算の手順、ステップ、論理ブロック、処理、および他の記号表現を含む。手順、コンピュータ実行ステップ、論理ブロック、プロセス等は、ここでは概して、所望の結果をもたらすステップまたは命令の自己一致シーケンスであると考えられる。本明細書中に記載のステップは、物理量の物理的操作を必要とする。通常、必ずしもそうではないが、これらの量は、コンピュータシステムにおいて格納、転送、結合、比較、または他の方法で操作可能な電気または磁気信号の形態をとる。さらに説明を容易にするために、これらの信号は、ビット、値、要素、記号、文字、用語、数などと称される。
【００１０】
しかし、これらおよび同様の用語はすべて適切な物理量に関連付けられることになっており、説明を簡単にするためにこれらの量に適用されるラベルに過ぎないことに留意すべきである。特に記載しない限り、または以下の説明から明らかでない限り、本発明全体にわたって、「修正する」、「切捨てる」、「計算する」、「選択する」、「受取る」、「除去する」、「符号化する」、「前に置く」、「後に置く」、「取出す」、「マッピングする」、「復号化する」などの用語を用いる説明は、コンピュータシステムのレジスタおよびメモリ内の物理（電子）量として表わされるデータを、コンピュータシステムメモリまたはレジスタまたは他のそのような情報記憶、送信もしくは表示装置内の物理量として同様に表わされる他のデータに操作および変換するコンピュータシステム、または同様の電子計算装置によって実行される動作およびプロセスを指すことが認識される。
【００１１】
一例として、限定されずに、コンピュータ使用可能媒体は、コンピュータ記憶媒体および通信媒体を含み得る。コンピュータ記憶媒体は、コンピュータ読取可能命令、データ構造、プログラムモジュールまたは他のデータなどの情報を記憶するための任意の方法または技術で実現される揮発性および不揮発性の、取外し可能および不可能な媒体を含む。
【００１２】
本発明のさまざまな実施例は、テキストをマトリクスコードシンボルに符号化し、復号化するコンピュータ実行方法を提供する。本発明の第１の局面は、テキストをマトリクスコードシンボルに符号化するコンピュータ実行方法を提供することである。テキストは複数の文字を含む。当該方法は、複数の文字のうちの１つ以上の文字の各々に関連付けられた所定の符号化値を受取ることを含む。当該方法はさらに、１つ以上の文字の各々に関連付けられた所定の符号化値を修正して、修正後符号化値が対応の所定の符号化値よりも長さが短いように、対応の修正後符号化値を得ることを含む。その後、対応の修正後符号化値を用いて、１つ以上の文字をマトリクスコードシンボルに符号化する。
【００１３】
本発明の第２の局面は、マトリクスコードシンボルを復号化するコンピュータ実行方法を提供することである。当該方法は、マトリクスコードシンボルから１つ以上の符号化値を取出すことを含む。１つ以上の符号化値は、１つ以上の修正後符号化値を含み得る。当該方法はさらに、１つ以上の修正後符号化値の各々を、対応の所定の符号化値とマッピングすることを含み、修正後符号化値は、対応の所定の符号化値よりも長さが短い。その後、対応の所定の符号化値を復号化して対応文字を求める。
【００１４】
図１は、本発明のさまざまな実施例が機能し得る例示的な環境１００を示す。環境１００は、エンコーダ１０２、マトリクスコードシンボル１０４、およびデコーダ１０６を含む。エンコーダ１０２の例は、装置、回路、ソフトウェアプログラム、およびアルゴリズムを含み得るが、これらに限定されない。エンコーダ１０２は、テキストを受取り、テキストを符号化した後、それをマトリクスコードシンボル１０４に格納するように構成される。ある実施例では、マトリクスコードシンボル１０４は、正方形または矩形のいずれか一方のパターンに配列された白黒セルを含むデータマトリクスバーコードであり得る。黒色セルはビット０を表わし、白色セルはビット１を表わし得る。代替的に、黒色セルがビット１を表わし、白色セルがビット０を表わしてもよい。マトリクスコードシンボル１０４が保持するデータ量は、マトリクスコードシンボル１０４の寸法に依存する。マトリクスコードシンボル１０４の例は、一次元データマトリクス、二次元データマトリクス、および三次元データマトリクスを含み得るが、これらに限定されない。
【００１５】
テキストを符号化するために、エンコーダ１０２は１つ以上の文字符号化スキームを使用し得る。１つ以上の文字符号化スキームの例は、情報交換用米国標準コード（ＡＳＣＩＩ）、ユニコード、モールスコード、ＥＣＣ２００  ＡＳＣＩＩ符号化、およびＩＳＯ−８８５９−１スキームを含むが、これらに限定されない。したがって、エンコーダ１０２は、１つ以上の文字符号化スキームを用いてテキストを符号化し、それをマトリクスコードシンボル１０４に格納する。符号化テキストをマトリクスコードシンボル１０４に格納するために、符号化テキストは、マトリクスコードシンボル１０４に図式化して符号化可能なフォーマットに変換され得る。たとえば、符号化テキストは“０”および“１”に変換されて、マトリクスコードシンボル１０４に格納される。
【００１６】
デコーダ１０６は、マトリクスコードシンボル１０４に格納された符号化テキストを復号化することによってテキストを受取るように構成される。デコーダ１０６の例は、装置、回路、ソフトウェアプログラム、スキャナ、データマトリクス読取装置、およびアルゴリズムを含み得るが、これらに限定されない。デコーダ１０６は、エンコーダ１０２が使用する１つ以上の文字符号化スキームに関連付けられた対応の文字復号化スキームを使用してテキストを取出す。
【００１７】
図２は、本発明の実施例に係るテキストをマトリクスコードシンボルに符号化するためのコンピュータ実行方法のフローチャートを示す。マトリクスコードシンボルは、正方形または矩形のいずれか一方のパターンに配列された白黒セルを含むデータマトリクスバーコードである。各黒色セルはビット“０”に対応し、各白色セルはビット“１”に対応し得る。代替的に、各黒色セルがビット“１”に対応し、各白色セルがビット“０”に対応してもよい。ある実施例では、マトリクスコードシンボルに符号化するテキストを、テキストを収容するように構成されたテキストボックスを介して受取る。テキストは複数の文字を含み、複数の文字のうちの各文字が１つ以上の言語に対応する。たとえば、複数の文字のうちの各文字がアラビア文字または英文字に対応し得る。アラビア文字および英文字は、ランダムなシーケンスおよび所定のシーケンスのいずれか一方でテキストに現れ得る。たとえば、アラビア文字はテキスト内で常に英文字の後に続き得る。同様に、アラビア文字および英文字は、ランダムな順序でテキストに現れ得る。ある実施例では、複数の文字はアラビア語などの言語に対応し得る。
【００１８】
さらに、複数の文字は、１つ以上の空白、１本以上の線、１つ以上のタブ、１つ以上のパッド文字、および１つ以上の特殊文字のうちの１つ以上も含み得る。１つ以上のパッド文字のうちの１つのパッド文字は、空間を埋めるのに用いる文字に対応する。たとえば、フィールドの長さが７文字であり、当該フィールドに３文字しか割当てられていない場合、パッド文字を用いてフィールド内の残りの空間を埋める。一方、１つ以上の特殊文字のうちの１つの特殊文字は、記号、数学の記号、および非英語言語の文字に対応し得る。
【００１９】
テキストをマトリクスコードシンボルに符号化する前に、テキストが前処理されて改良テキストが得られ得る。前処理の際、１つ以上の特殊文字がテキストから除去され得る。たとえば、以下のテキスト“HE*|LLO WORL^D”は、特殊文字“*”、特殊文字“|”、および特殊文字“^”を含む。前処理の際、テキストから特殊文字が除去されて、改良テキストが得られる。したがって、特殊文字の除去後に、改良テキスト“HELLO WORLD”が得られる。さらに、テキストが分析されて、マトリクスコードシンボルに符号化すべき複数の文字が識別され得る。分析に基づいて、テキスト内に存在する複数の文字についての統計が作成され得る。統計は、テキスト内の言語に関連付けられた文字の数、テキスト内の桁の数、テキスト内の連続桁の数、空白の数、新たな線の数、タブの数、パッド文字の数、特殊文字の数、まだ追加されていない文字の数、ある言語から別の言語への移行の数に関する情報を含み得る。たとえば、テキストが１つ以上のアラビア文字、１つ以上の英文字、および１つ以上の桁を含む場合、テキストが分析されてテキストについての統計が作成される。統計は、アラビア文字の数、英文字の数、英語からアラビア語への移行の数、およびアラビア語から英語への移行の数に関連付けられた情報を提供し得る。さらに、前処理の際、マトリクスコードシンボルに関連付けられた情報も求めることができる。当該情報は、マトリクスコードシンボルのサイズおよび寸法を含み得る。
【００２０】
テキストを前処理した後、文字符号化スキームを用いて、複数の文字がマトリクスコードシンボルに符号化される。文字符号化スキームの例はＡＳＣＩＩ符号化スキームを含み得るが、これに限定されない。ステップＳ２０２において、複数の文字のうちの１つ以上の文字の各々に関連付けられた所定の符号化値が、ＡＳＣＩＩ表およびユニコード表の一方から文字符号化スキームによって取出される。文字に関連付けられた取出された所定の符号化値は、同等のＡＳＣＩＩ数および同等のユニコード数の一方に対応し得る。ＡＳＣＩＩ表は０００から２５５の値を含み、各文字を表わすのに１バイトを使用する。ユニコード表は、１６進法の００００からＦＦＦＦの値を含む。ユニコードは、各文字を表わすのに１６ビットまたは２バイトを使用する。したがって、ユニコードはＡＳＣＩＩと比べて２倍のデータビットが必要である。さらに、アラビア語のユニコード文字は１５６３から１６１８である。
【００２１】
１つ以上の文字の各々に関連付けられた言語に基づいて、所定の符号化値を受取る。たとえば、文字がアラビア語であると判断された場合、ユニコード表の１５６３から１６１８の範囲内から、アラビア文字に対応する所定の符号化値が取出される。
【００２２】
同様に、文字が英語であると判断された場合、英文字に対応する所定の符号化値を受取る。したがって、１つ以上の文字の各々に関連付けられた言語に基づいて、所定の符号化値を受取る。
【００２３】
１つ以上の文字の各々に関連付けられた所定の符号化値を受取った後、１つ以上の文字のうちの１文字に関連付けられた所定の符号化値の前に、移行コード値が置かれる。移行コード値は、上記所定の符号化値の前の所定の符号化値に関連付けられた文字に対応する言語が、上記所定の符号化値に関連付けられた文字に対応する言語とは異なることを示すために用いられる。したがって、移行コード値は、テキスト内のある言語から別の言語への移行に関する情報を提供する。たとえば、移行コード値は、テキスト内のアラビア語から英語への移行を示し得る。同様に、移行コード値は、英語からアラビア語への移行に関する情報を提供する。これは、図３を参照してさらに説明する。
【００２４】
代替的に、１つ以上の文字の各々に関連付けられた所定の符号化値を受取った後、１つ以上の文字のうちの１文字に関連付けられた所定の符号化値の後に、移行コード値が置かれる。移行コード値は、上記所定の符号化値の後の所定の符号化値に関連付けられた文字に対応する言語が、上記所定の符号化値に関連付けられた文字に対応する言語とは異なることを示すために用いられる。これは、図３を参照してさらに説明する。
【００２５】
その後、ステップＳ２０４において、１つ以上の文字の各々に関連付けられた所定の符号化値が修正されて、対応の修正後符号化値が得られる。ある実施例では、１つ以上の文字は、テキスト内に存在するアラビア文字に対応し得る。修正後符号化値は、対応の所定の符号化値よりも長さが短い。ある実施例では、対応の所定の符号化値を切捨てることによって修正後符号化値が得られる。切捨ては、所定の符号化値から１桁以上を除去することを含み得る。たとえば、アラビア文字に関連付けられた所定の符号化値“１５６３”を、“１５６３”から１および５の桁を除去することによって切捨てて、修正後符号化値“６３”を得る。同様に、所定の符号化値“１５６３”を、“１５６３”から１の桁を除去することによって切捨てて、修正後符号化値“５６３”を得る。修正後符号化値は対応の所定の符号化値よりも長さが短いため、修正後符号化値を表わすのに１バイトしか使用せずに済む。
【００２６】
対応の修正後符号化値を得た後、ステップ２０６において、対応の修正後符号化値を用いて、１つ以上の文字がマトリクスコードシンボルに符号化される。ある実施例では、１つ以上の修正後符号化値に１つ以上のエラー訂正コードが加えられた後、１つ以上の文字がマトリクスコードシンボルに符号化され得る。同様に、１つ以上の修正後符号化値に１つ以上のパッド文字が加えられた後、マトリクスコードシンボルに符号化され得る。１つ以上のパッド文字の例は、スペース、ビット０、ビット１、およびパッド文字として確保しておいたユニコード表からの文字を含み得る。１つ以上のパッド文字は、パディング動作時に１つ以上の修正後符号化値に加えられるダミーデータに対応する。パディング動作の例は、ビットパディング動作、バイトパディング動作、およびゼロパディング動作を含み得るが、これらに限定されない。パディング動作は、予め定められた値と等しいマトリクスコードシンボル内の符号化値の長さをもたらすように行なわれる。たとえば、予め定められた値が長さ５に対応し、修正後符号化値の数が２に等しい場合は、３つのパッド文字が加えられる。その後、１つ以上のパッド文字が、１つ以上の修正後符号化値と共に、マトリクスコードシンボルに符号化される。
【００２７】
図３は、本発明の実施例に係る１つ以上の文字のうちの１文字に関連付けられた所定の符号化値の前または後に移行コード値を付けるためのコンピュータ実行方法のフローチャートを示す。移行コード値は、ある言語においてあまり用いられない文字に関連付けられる。ある実施例では、移行コード値は、複数の文字内に存在する１つ以上の特殊文字に対応し得る移行文字に関連付けられる。移行文字の例は、“|”、“*”、“^”、および“&”を含み得るが、これらに限定されない。任意の他の文字も移行文字として用いられ得ることが当業者にとって明白であろう。ステップ３０２において、１つ以上の文字の各々に関連付けられた所定の符号化値が受取られる。所定の符号化値を受取った後、ステップ３０４ａにおいて、１つ以上の文字のうちの１文字に関連付けられた所定の符号化値の前に移行コード値が付けられる。ある実施例では、移行コード値は、移行文字のＡＳＣＩＩ値に対応し得る。ＡＳＣＩＩ値はＡＳＣＩＩ表から取出される。そして、移行文字に対応する取出されたＡＳＣＩＩ値が、所定の符号化値の前に付けられる。たとえば、ある実施例では、“|”が移行文字であり得る。“|”のＡＳＣＩＩ値は、ＡＳＣＩＩ表の中の１２４である。このＡＳＣＩＩ値が取出され、所定の符号化値の前に付けられる。
【００２８】
移行コード値は、ある文字に関連付けられたある所定の符号化値の前の当該所定の符号化値に関連付けられた当該文字に対応する言語が、当該文字に対応する言語とは異なることを示す。たとえば、ＡＳＣＩＩ値１２４は、ある文字に関連付けられたある所定の符号化値の前の当該所定の符号化値に関連付けられた当該文字に対応する言語が、当該文字に対応する言語とは異なることを示す。
【００２９】
代替的に、１つ以上の文字の各々に関連付けられた所定の符号化値を受取ったことに応答して、ステップ３０４ｂにおいて、１つ以上の文字のうちの１文字に関連付けられた所定の符号化値の後に移行コード値が付けられる。この場合、移行コード値は、ある文字に関連付けられたある所定の符号化値の後の当該所定の符号化値に関連付けられた当該文字に対応する言語が、当該所定の符号化値に関連付けられた当該文字に対応する言語とは異なることを示す。
【００３０】
移行コード値は言語移行を示すために用いられるため、移行コード値に関連付けられた移行文字はこの目的のために特別に確保される。したがって、テキスト内の移行文字のすべての出現が、前処理の段階でテキストから削除される。符号化の際、および文字の前または後に移行コード値を付ける際にテキストに移行文字がないことを確実にするように、テキストから移行文字が削除される。テキストから移行文字を削除した後、テキスト内の言語の移行を示すために移行コード値が加えられる。たとえば、表１は、前処理の際にテキストから移行文字を除去する例を示す。
【００３１】
【表１】
0005551660.tif 000002
【００３２】
表１の第１行第１欄のエントリに示されるように、テキストは、移行文字“|”の４つのインスタンスを含む。“英語１”と名付けられたバーコードにテキストを符号化する前に、表１に示されるテキスト“Hello| This is a b |arc || ode”から移行文字の各インスタンスが除去される。表１の第１行第２欄のテキストは、当該テキストから移行文字の各インスタンスを除去した後に得られる。同様に、表１の第２行第１欄は、移行文字“|”の２つのインスタンスを含むテキストを示し、表１の第２行第２欄は、テキストから移行文字の各インスタンスを除去した後のテキストを示す。
【００３３】
ステップ３０４ａにおける移行コード値を前に置くステップ、およびステップ３０４ｂにおける移行コード値を後に置くステップの１つ以上を実行した後、ステップ３０６において、移行コード値がマトリクスコードシンボルに符号化される。移行文字は、１つ以上の文字と共にマトリクスコードシンボルに符号化される。ある実施例では、二言語テキストがアラビア文字で終了し得る。そのような場合、二言語テキスト内のアラビア文字の始まりを示すために移行コード値が加えられ得る。しかし、移行コード値は、二言語テキストの末尾に存在するアラビア文字の末尾では省略され、マトリクスコードシンボルに符号化されない。アラビア文字の後には英文字が続いていないため、移行コード値は不要である。
【００３４】
表２に示されるように、２つの二言語テキストをマトリクスコードシンボルに符号化する本明細書中に記載の例示的な実施例を考えてみる。第１の二言語テキストは表１の第１行第１欄に示され、第２の二言語テキストは表２の第２行第１欄に示される。各二言語テキストは、表２に示されるような複数の文字を含む。複数の文字のうちの各文字は、英語またはアラビア語である言語に関連付けられる。
【００３５】
【表２】
0005551660.tif 000003
【００３６】
第１の二言語テキストおよび第２の二言語テキストを符号化する前に、各二言語テキストは前処理されて特殊文字のすべてのインスタンスが除去される。表２に示されるように、第１の二言語テキストおよび第２の二言語テキストは、特殊文字を全く含んでいない。したがって、前処理の際、各二言語テキストは分析されて、二言語テキストについての統計が作成される。統計は、アラビア文字の数、空白の数、線の数、タブの数、英文字の数、アラビア語から英語への移行の数、および英語からアラビア語への移行の数のうちの１つ以上を含む。統計に基づいて、ＡＳＣＩＩ符号化スキームを用いて、複数の文字のうちの１つ以上の文字の各々に関連付けられた所定の符号化値が受取られる。１つ以上の文字は、各二言語テキスト内のアラビア文字に対応する。したがって、１つ以上のアラビア文字のうちの各アラビア文字に関連付けられた所定の符号化値が受取られる。所定の符号化値は、図４に示されるユニコード表から受取られる。図４は、各アラビア文字に関連付けられた所定の符号化値を含む。また、図４に示されるように、所定の符号化値は１５６３から１６１８である。
【００３７】
所定の符号化値を受取った後、１つ以上のアラビア文字のうちの１つのアラビア文字に関連付けられた所定の符号化値の前に移行文字が付けられる。表２の第１行第２欄に示されるように、第１の二言語テキスト内に移行文字“|”が加えられる。移行文字は、１つ以上のアラビア文字の各々に関連付けられたある所定の符号化値の前の当該所定の符号化値に関連付けられた文字に対応する言語が英語であることを示す。代替的に、所定の符号化値を受取った後、１つ以上のアラビア文字のうちの１つのアラビア文字に関連付けられた所定の符号化値の後に移行文字が付けられる。表２の第２行第２欄に示されるように、第２の二言語テキスト内に移行文字“|”が加えられる。移行文字は、１つ以上のアラビア文字の各々に関連付けられたある所定の符号化値の後の当該所定の符号化値に関連付けられた文字に対応する言語が英語であることを示す。ある実施例では、１つ以上のアラビア文字のうちの１つのアラビア文字に関連付けられた所定の符号化値の後に付けられる移行文字は、符号化の際に省略され得る。移行文字は、１つ以上のアラビア文字の後に英文字がなければ省略される。たとえば、表２の第１行第２欄に示されるように、移行文字は“Hello|71070475”の末尾で省略されている。
【００３８】
その後、１つ以上のアラビア文字の各々に関連付けられた所定の符号化値が修正されて、対応の修正後符号化値が得られる。対応の修正後符号化値を得るために、所定の符号化値が切捨てられる。ある実施例では、所定の符号化値の切捨てを実行するために、所定の符号化値から１桁以上が除去される。図４に見られるように、１つ以上のアラビア文字の各々に関連付けられた所定の符号化値の長さは４桁である。符号化の際、所定の符号化値に関連付けられた４桁を表わすのに２バイトを使用することになる。しかし、１つ以上のアラビア文字に関連付けられた所定の符号化値は“１”の桁で始まることに注目することができる。ここで、１つ以上のアラビア文字の所定の符号化値から“１”の桁を除去しても、所定の符号化値の表現に違いはない。しかし、所定の符号化値の長さは４桁から３桁に減る。したがって、１つ以上のアラビア文字の所定の符号化値から“１”の桁を除去する。
【００３９】
同様に、所定の符号化値から“１”の桁を除去した後、各所定の符号化値は“５”の桁または“６”の桁のいずれか一方で始まる。また、“５”の桁または“６”の桁の後の最後の２桁は一意的であり、非反復的である。したがって、“５”の桁および“６”の桁を除去しても、１つのアラビア文字に関連付けられた各所定の符号化値は一意的であるため、所定の符号化値同士の間で衝突は起こらない。図４に示されるように、６３から９４の所定の符号化値の前は常に５の桁であり、００から１８の所定の符号化値の前は常に６の桁である。したがって、所定の符号化値の長さを３桁から２桁に減らすことができる。所定の符号化値を２桁に減らすことによって、１つ以上のアラビア文字の各アラビア文字を表わすのに必要なのは１バイトで済む。したがって、１つ以上のアラビア文字の各々に関連付けられた所定の符号化値の切捨てに応答して、対応の修正後符号化値が得られる。１つ以上のアラビア文字の各々に関連付けられた対応の修正後符号化値が図５に示される。
【００４０】
対応の修正後符号化値を得た後、対応の修正後符号化値を用いて、１つ以上のアラビア文字が符号化される。対応の修正後符号化値を用いて符号化された、第１の二言語テキストに関連付けられた１つ以上のアラビア文字が表２の第１行第２欄に示される。同様に、対応の修正後符号化値を用いて符号化された、第２の二言語テキストに関連付けられた１つ以上のアラビア文字が表２の第２行第２欄に示される。
【００４１】
図６は、本発明の実施例に係るマトリクスコードシンボルを復号化するコンピュータ実行方法のフローチャートを示す。マトリクスコードシンボルは、複数の符号化値を含む。複数の符号化値のうちの１つの符号化値は、１文字に対応する。当該文字は、ある言語に関連付けられる。ある実施例では、当該言語はアラビア語および英語の一方であり得る。ステップ６０２において、マトリクスコードシンボルから１つ以上の符号化値が取出される。１つ以上の符号化値は、１つ以上の修正後符号化値を含む。１つ以上の修正後符号化値のうちの１つの修正後符号化値は、１つのアラビア文字に関連付けられる。１つ以上の符号化値を取出した後、ステップ６０４において、１つ以上の修正後符号化値の各々が対応の所定の符号化値とマッピングされる。修正後符号化値は、対応の所定の符号化値よりも長さが短い。これは、図２を参照して既に説明した。
【００４２】
１つ以上の修正後符号化値の各々を対応の所定の符号化値とマッピングするために、１つ以上の移行コード値が１つ以上の符号化値の中で識別される。１つ以上の移行コード値は、１つ以上の修正後符号化値の出現も示す。たとえば、符号化値のストリングが１つ以上の所定の符号化値および１つ以上の修正後符号化値を含む場合、１つ以上の移行コード値を用いて、ストリング内の１つ以上の修正後符号化値の出現を示す。これは、図７を参照してさらに説明する。１つ以上の移行コード値を識別した後、１つ以上の修正後符号化値の各々が対応の所定の符号化値とマッピングされる。マッピングは、所定の符号化表を用いて、１つ以上の符号化値の各々に関連付けられた対応の所定の符号化値を求めることによって実行され得る。所定の符号化表の例は、ＡＳＣＩＩ表およびユニコード表を含み得るが、これらに限定されない。これは、図８を参照してさらに説明する。代替的に、マッピングは、対応の所定の符号化値を得るために、１つ以上の修正後符号化値の各修正後符号化値に１桁以上を追加することによって実行され得る。これは、図８を参照してさらに説明する。その後、ステップ６０６において、対応の所定の符号化値を復号化して対応文字を求める。
【００４３】
図７は、本発明の実施例に係る１つ以上の移行コード値を１つ以上の符号化値の中で識別するコンピュータ実行方法のフローチャートを示す。ステップ７０２において、マトリクスコードシンボルから１つ以上の符号化値が取出される。１つ以上の符号化値は、データマトリクス読取装置、スキャナ、およびレーザのうちの１つ以上を用いて取出され得る。その後、ステップ７０４において、１つ以上の移行コード値が１つ以上の符号化値の中で識別される。１つ以上の移行コード値のうちの１つの移行コード値は、移行文字に関連付けられた符号化値に対応する。移行文字の例は、“|”、“*”、“^”、および“&”を含み得るが、これらに限定されない。ある実施例では、移行コード値は、移行文字“|”に関連付けられたＡＳＣＩＩ値１２４に対応し得る。移行コード値１２４を用いて、１つ以上の符号化値のうちの対応文字に関連付けられた言語が識別され得る。
【００４４】
１つ以上の識別された移行コード値に基づいて、１つ以上の修正後符号化値が１つ以上の符号化値の中で識別される。たとえば、移行コード値が、英文字に対応する１つ以上の符号化値の後に識別された場合、当該移行コード値の後の符号化値は、アラビア文字に関連付けられた修正後符号化値に対応すると推測され得る。同様に、移行コード値が、１つ以上のアラビア語符号化値の後に識別された場合、当該移行コード値の後の符号化値は英文字に対応すると推測され得る。
【００４５】
図８は、本発明の実施例に係る１つ以上の修正後符号化値の各々に関連付けられた対応の所定の符号化値を得るコンピュータ実行方法のフローチャートを示す。ステップ８０２において、マトリクスコードシンボルから１つ以上の符号化値が取出される。１つ以上の符号化値は、１つ以上の修正後符号化値を含む。１つ以上の修正後符号化値は、１つ以上の移行コード値を用いて１つ以上の符号化値の中で識別される。これは図７を参照して説明した。１つ以上の符号化値を取出した後、ステップ８０４ａにおいて、１つ以上の修正後符号化値の各々に関連付けられた対応の所定の符号化値が求められる。対応の所定の符号化値は、所定の符号化表を用いて求められる。所定の符号化表の例は、ＡＳＣＩＩ表およびユニコード表を含み得るが、これらに限定されない。所定の符号化表を用いて、１つ以上の修正後符号化値の各々が対応の所定の符号化値とマッピングされる。マッピングは、探索動作、および１つ以上の修正後符号化値内に存在する１桁以上の整合の一方によって実行され得る。たとえば、アラビア文字の修正後符号化値“６６”に関連付けられた桁が、ユニコード表内のアラビア文字に関連付けられた“１５６３から１６１８”の範囲内の検索のクエリとして用いられ得る。これに応答して、修正後符号化値を最後の２桁として含む整合値“１５６６”が所定の符号化表から取出される。
【００４６】
代替的に、ステップ８０４ｂにおいて、対応の所定の符号化値を得るために、１つ以上の修正後符号化値の各々に１桁以上が加えられ得る。１つ以上の修正後符号化値の各々に加えるべき桁数は、予め定義され得る。たとえば、対応の所定の符号化値を得るために、１つ以上の修正後符号化値の各々に２桁が加えられ得る。図５の表に示されるアラビア文字の修正後符号化値を再び参照して、修正後符号化値の各々の長さは２に等しい。対応の所定の符号化値を得るために、６３から９４の修正後符号化値に１５の桁を加え、００から１８の修正後符号化値に１６の桁を加える。１５および１６の桁を加えることによって得られる対応の所定の符号化値は、図４の表に示される。
【００４７】
マトリクスコードシンボルを復号化して当該マトリクスコードシンボル内に存在する情報を取出す、本明細書中に記載の例示的な実施例を考えてみる。マトリクスコードシンボルは、表３に示される第１の二言語テキストおよび第２の二言語テキストに関連付けられた情報を含む。
【００４８】
【表３】
0005551660.tif 000004
【００４９】
マトリクスコードシンボルから取出すべき第１の二言語テキストが表３の第１行第３欄に表わされ、マトリクスコードシンボルから取出すべき第２の二言語テキストが表３の第２行第３欄に表わされる。第１の二言語テキストおよび第２の二言語テキストは、マトリクスコードシンボルを復号化することによって取出される。マトリクスコードシンボルを復号化するために、マトリクスコードシンボルから１つ以上の符号化値が取出される。第１の二言語テキストに関連付けられた１つ以上の符号化値が表３の第１行第２欄に表わされ、第２の二言語テキストに関連付けられた１つ以上の符号化値が表３の第２行第２欄に表わされる。１つ以上の符号化値は、１つ以上の修正後符号化値を含む。１つ以上の修正後符号化値は、第１の二言語テキストおよび第２の二言語テキスト内に存在するアラビア文字に対応する。１つ以上の修正後符号化値は、表３の第１行第２欄および第２行第２欄に示される。
【００５０】
１つ以上の修正後符号化値を取出した後、１つ以上の修正後符号化値の各々が、対応の所定の符号化値とマッピングされる。アラビア文字に関連付けられた修正後符号化値は、当該アラビア文字に関連付けられた対応の所定の符号化値よりも長さが短い。たとえば、表３の第１行第２欄のアラビア文字に関連付けられた、取出された修正後符号化値“７１”は、当該アラビア文字に関連付けられた対応の所定の符号化値“１５７１”よりも長さが短い。１つ以上の修正後符号化値を識別するために、１つ以上の移行コード値が１つ以上の符号化値の中で識別される。１つ以上の移行コード値のうちの１つの移行コード値を用いて、アラビア語に関連付けられた１つ以上の修正後符号化値が識別される。
【００５１】
表３では、移行コード値は、移行文字“|”に関連付けられた符号化値に対応する。移行文字“|”の移行コード値は１２４である（表３には図示せず）。表３に示されるように、第１の二言語テキストに関連付けられた第１行第２欄は、移行コード値の１つのインスタンスを含む。同様に、第２の二言語テキストに関連付けられた第２行第２欄は、移行コード値の２つのインスタンスを含む。
【００５２】
１つ以上の修正後符号化値を識別した後、１つ以上の修正後符号化値の各々が、対応の所定の符号化値とマッピングされる。ある実施例では、マッピングは、所定の符号化表を用いて、１つ以上の修正後符号化値の各々に関連付けられた対応の所定の符号化値を求めることによって実行され得る。所定の符号化表は、図４を参照して既に説明した。たとえば、第１行第２欄に存在する修正後符号化値“７１”を所定の符号化表の中で探索して、対応の符号化値が求められる。図４に示されるように、修正後符号化値“７１”に関連付けられた対応の所定の符号化値は“１５７１”であると判断される。同様に、第１の二言語テキストおよび第２の二言語テキストに関連付けられた各修正後符号化値を所定の符号化表の中で探索して、対応の所定の符号化値が取出される。
【００５３】
別の実施例では、対応の所定の符号化値を得るために、１つ以上の修正後符号化値の各々に１桁以上が加えられ得る。各修正後符号化値に加えるべき１桁以上は、予め定義され得る。たとえば、１つ以上の修正後符号化値が６３から９４の範囲内に存在する場合、１５が加えられる。したがって、修正後符号化値７１に１５が加えられて、７１に関連付けられた対応の所定の符号化値を表わす１５７１が得られる。同様に、１つ以上の修正後符号化値が００から１８の範囲内に存在する場合、１６の桁が加えられる。
【００５４】
その後、対応の所定の符号化値を復号化して対応文字を求める。対応文字は、図４に示される所定の符号化表を用いて求められる。対応の所定の符号化値の各々を復号化した後、第１の二言語テキストおよび第２の二言語テキストがオリジナルフォーマットで得られる。対応の所定の符号化値の各々を復号化した後に得られる、取出された第１の二言語テキストおよび第２の二言語テキストは、表３の第１行第３欄および第２行第３欄にそれぞれ示される。
【００５５】
図９は、本発明の実施例に係るテキストをマトリクスコードシンボルに符号化するためのエンコーダ９００を示す。マトリクスコードシンボルは、正方形または矩形のいずれか一方のパターンに配列された白黒セルを含むデータマトリクスバーコードである。これは、図２を参照して既に説明した。エンコーダ９００は、メモリ９０２、およびメモリ９０２に結合されたプロセッサ９０４を含む。マトリクスコードシンボルに符号化すべきテキストは、エンコーダ９００に関連付けられたインターフェイス（図９には図示せず）を介して受取られる。ある実施例では、インターフェイスは、テキストを収容するように構成されたテキストボックスに対応し得る。テキストは複数の文字を含み、複数の文字のうちの各文字は１つ以上の言語に対応する。さらに、複数の文字は、１つ以上の空白、１本以上の線、１つ以上のタブ、１つ以上のパッド文字、および１つ以上の特殊文字のうちの１つ以上も含む。符号化すべきテキストをインターフェイスを介して受取った後、テキストはメモリ９０２に保管される。
【００５６】
テキストをマトリクスコードシンボルに符号化する前に、テキストはプロセッサ９０４によって処理され得る。プロセッサ９０４はメモリ９０２からテキストを取出し、テキストを前処理して、テキスト内に存在する１つ以上の特殊文字を除去する。さらに、プロセッサ９０４はテキストを分析して、マトリクスコードシンボルに符号化すべき複数の文字を識別する。分析に基づいて、プロセッサ９０４はテキスト内に存在する複数の文字についての統計を作成し、統計をメモリ９０２に格納する。統計は、テキスト内の言語に関連付けられた文字の数、テキスト内の桁の数、テキスト内の連続桁の数、空白の数、新たな線の数、タブの数、パッド文字の数、特殊文字の数、まだ追加されていない文字の数、ある言語から別の言語への移行の数に関する情報を含み得る。
【００５７】
その後、プロセッサ９０４は、文字符号化スキームを用いて統計に基づいて、テキストをマトリクスコードシンボルに符号化する。文字符号化スキームの例はＡＳＣＩＩ符号化スキームを含み得るが、これに限定されない。プロセッサ９０４は、ＡＳＣＩＩ表およびユニコード表などの所定の符号化表から、テキスト内の複数の文字のうちの１つ以上の文字の各々に関連付けられた所定の符号化値を取出す。ある実施例では、所定の符号化表はメモリ９０２に格納され得る。取出された所定の符号化値は、１つ以上の文字の各々に関連付けられた同等のＡＳＣＩＩ数および同等のユニコード数の一方に対応する。プロセッサ９０４は、１つ以上の文字の各々に関連付けられた言語に基づいて、所定の符号化値を取出す。これは図２で既に説明した。
【００５８】
所定の符号化値を取出した後、プロセッサ９０４は、１つ以上の文字のうちの１文字に関連付けられた所定の符号化値の前に移行コード値を付ける。移行コード値は、ある文字に関連付けられたある所定の符号化値の前の当該所定の符号化値に関連付けられた当該文字に対応する言語が、当該文字に対応する言語とは異なることを示す。代替的に、プロセッサ９０４は、１つ以上の文字のうちの１文字に関連付けられた所定の符号化値の後に移行コード値を付ける。移行コード値は、ある文字に関連付けられたある所定の符号化値の後の当該所定の符号化値に関連付けられた当該文字に対応する言語が、当該所定の符号化値に関連付けられた当該文字に対応する言語とは異なることを示すために用いられる。これは、図３を参照して既に説明した。
【００５９】
その後、プロセッサ９０４は、１つ以上の文字の各々に関連付けられた所定の符号化値を修正して、対応の修正後符号化値を得る。所定の符号化値を修正するために、プロセッサ９０４は所定の符号化値を切捨て得る。プロセッサ９０４は、所定の符号化値から１桁以上を除去することによって所定の符号化値を切捨てて、対応の修正後符号化値を得ることができる。これは、図２を参照して既に説明した。対応の修正後符号化値を得た後、プロセッサ９０４は、対応の修正後符号化値を用いて、１つ以上の文字をマトリクスコードシンボルに符号化する。
【００６０】
図１０は、本発明の実施例に係るマトリクスコードシンボルを復号化するためのデコーダ１０００を示す。マトリクスコードシンボルは、複数の符号化値を含む。複数の符号化値のうちの１つの符号化値は１文字に対応し、当該文字はある言語に関連付けられる。デコーダ１０００は、メモリ１００２、およびメモリ１００２に結合されたプロセッサ１００４を含む。複数の符号化値がマトリクスコードシンボルから取出され、メモリ１００２に格納される。複数の符号化値は、データマトリクス読取装置、データマトリクススキャナ、およびレーザのうちの１つ以上を用いて取出され得る。複数の符号化値をメモリ１００２に格納した後、プロセッサ１００４は、複数の符号化値から１つ以上の修正後符号化値を取出す。プロセッサ１００４は、複数の符号化値のうちの１つ以上の符号化値内に存在する１つ以上の移行コード値を識別することによって、１つ以上の修正後符号化値を識別する。１つ以上の移行コード値は、１つ以上の符号化値の文字に関連付けられた言語を識別する。
【００６１】
１つ以上の修正後符号化値を識別した後、プロセッサ１００４は、１つ以上の修正後符号化値の各々を、対応の所定の符号化値とマッピングする。プロセッサ１００４は、所定の符号化表を用いて、１つ以上の修正後符号化値の各々をマッピングする。所定の符号化表の例は、ＡＳＣＩＩ表およびユニコード表を含み得るが、これらに限定されない。代替的に、プロセッサ１００４は、対応の所定の符号化値を得るために、１つ以上の修正後符号化値の各々に１桁以上を加え得る。これは、図８を参照して既に説明した。その後、プロセッサ１００４は対応の所定の符号化値を復号化して対応文字を求める。
【００６２】
本明細書中に記載の方法のさまざまな実施例によって、テキストのマトリクスコードシンボルへの符号化および復号化が容易になる。当該方法は、複数の文字のうちの１つ以上の文字の各々に関連付けられた所定の符号化値を受取り、１つ以上の文字の各々に関連付けられた所定の符号化値を修正して、対応の修正後符号化値を得る。対応の修正後符号化値は、対応の所定の符号化値よりも長さが短い。これによって、テキストをマトリクスコードシンボルに格納する容量が容易に増加する。さらに、当該方法は、マトリクスコードシンボルから１つ以上の符号化値を取出し、１つ以上の符号化値内の１つ以上の修正後符号化値の各々を、対応の所定の符号化値とマッピングする。
【００６３】
当業者であれば、本明細書中に記載の上記の認識された利点および他の利点は例示的なものに過ぎず、本発明のさまざまな実施例のすべての利点を完全に表わしているわけではないことを認識するであろう。
【００６４】
上記の明細書では、本発明の特定的な実施例を説明した。しかし、当業者であれば、以下の請求項に記載されるような本発明の範囲から逸脱することなくさまざまな修正および変更がなされ得ることを認識するであろう。したがって、明細書および図面は限定的ではなく例示的なものであると見なされ、すべてのそのような修正は本発明の範囲内にあると意図される。いずれかの長所、利点、または解決策をもたらし得るか、より顕著にし得る長所、利点、問題の解決策、およびいずれの要素も、すべての請求項の重要で必須または不可欠な特徴または要素であると解釈されるべきではない。本発明は、本願の係属中になされるすべての補正、および発行されたそれらの請求項のすべての同等物を含む添付の請求項によってのみ規定される。
【符号の説明】
【００６５】
１０２  エンコーダ、１０４  マトリクスコードシンボル、１０６  デコーダ、９００  エンコーダ、９０２  メモリ、９０４  プロセッサ、１０００  デコーダ、１００２  メモリ、１００４  プロセッサ。
【図１】
0005551660.tif 000005
【図２】
0005551660.tif 000006
【図３】
0005551660.tif 000007
【図４】
0005551660.tif 000008
【図５】
0005551660.tif 000009
【図６】
0005551660.tif 000010
【図７】
0005551660.tif 000011
【図８】
0005551660.tif 000012
【図９】
0005551660.tif 000013
【図１０】
0005551660.tif 000014