(57)【要約】【課題】  背景画像として埋め込んだ符号パターンの濃度むらの発生を防止することができる同定機能付き印刷物を提供する。【解決手段】  画像を識別するため、用紙上に繰り返し形成される画像識別情報を符号化したパターンを表す識別情報ブロック５３と、用紙上での座標値を符号化したパターンを表すＸ座標値ブロック５１とＹ座標値ブロック５２とを背景画像として記録した印刷物であって、画像識別情報を符号化したパターンは、画像識別情報を符号化して得られる第１パターン値に、座標値を符号化して得られるパターン値を加算した値を基に得られる第２パターン値を表すパターンとしている。従って、背景画像として画像を記録した際に濃度むらの発生を低減させることができる。【選択図】        図２２
2007226678.tif 000002
【特許請求の範囲】
【請求項１】
記録材上に形成される画像を識別するため、該記録材上に繰り返し形成される画像識別情報を符号化したパターンと、前記記録材上での座標値を符号化したパターンとを背景画像として記録した印刷物であって、
前記画像識別情報を符号化したパターンは、前記画像識別情報を符号化して得られる第１パターン値に、前記座標値を符号化して得られるパターン値を加算した値を基に得られる第２パターン値を表すパターンであることを特徴とする同定機能付き印刷物。
【請求項２】
前記座標値を符号化したパターンは、前記座標値を符号化して得られるパターン値に、所定値を選択的に加算した値を表すのパターンであることを特徴とする請求項１記載の同定機能付き印刷物。
【請求項３】
前記座標値は、Ｍ系列符号で符号化されていることを特徴とする請求項１又は２記載の同定機能付き印刷物。
【請求項４】
前記画像識別情報を符号化したパターンと前記座標値を符号化したパターンは、所定サイズのブロック単位で形成され、
前記所定サイズのブロックは、複数個連続的に設定されていることを特徴とする請求項１から３のいずれか一項記載の同定機能付き印刷物。
【請求項５】
符号化したパターンを特定する際の基準となる同期符号を符号化したパターンを有し、
前記同期符号を符号化したパターンは、回転しても他のパターンとドット配置が一致しないパターンであることを特徴とする請求項１から４のいずれか一項記載の同定機能付き印刷物。
【請求項６】
前記背景画像は、所定領域内に一定数の複数ドットを選択的に配置した符号パターンとして形成されることを特徴とする請求項１から５のいずれか一項記載の同定機能付き印刷物。
【請求項７】
記録材上に形成される画像を識別するための画像識別情報と、前記記録材上での座標値情報とを符号化する第１符号化手段と、
前記画像識別情報を符号化して得られる第１パターン値に、前記座標値を符号化して得られるパターン値を加算した値を基に得られる第２パターン値のパターンを求める第２符号化手段と、
前記画像識別情報と前記座標値情報とのパターンを背景画像として形成する画像形成手段と、
を有することを特徴とする画像生成装置。
【請求項８】
記録材上に形成される画像を識別するための画像識別情報を表すパターンと、前記記録材上での座標値情報を表すパターンとが背景画像として埋め込まれた画像を読み込む読み込み手段と、
前記読み込んだ画像から前記画像識別情報を表すパターンと、前記座標値情報を表すパターンとを検出する検出手段と、
前記座標値情報を表すパターンから前記座標値情報のパターン値を取り出し、前記パターン値を復号する第１復号手段と、
前記画像識別情報を表すパターンから前記画像識別情報のパターン値を取り出し、前記画像識別情報のパターン値と、前記前記座標値情報のパターン値とを用いて前記画像識別情報のパターン値を復号する第２復号手段と、を有することを特徴とする画像処理装置。
【請求項９】
記録材上に形成される画像を識別するための画像識別情報と、前記記録材上での座標値情報とを符号化するステップと、
前記画像識別情報を符号化して得られる第１パターン値に、前記座標値を符号化して得られるパターン値を加算した値を基に得られる第２パターン値のパターンを求めるステップと、
前記画像識別情報と前記座標値情報とのパターンを背景画像として形成するステップと、
を有することを特徴とする画像生成方法。
【請求項１０】
記録材上に形成される画像を識別するための画像識別情報を表すパターンと、前記記録材上での座標値情報を表すパターンとが背景画像として埋め込まれた画像を読み込むステップと、
前記読み込んだ画像から前記画像識別情報を表すパターンと、前記座標値情報を表すパターンとを検出するステップと、
前記座標値情報を表すパターンから前記座標値情報のパターン値を取り出し、前記パターン値を復号するステップと、
前記画像識別情報を表すパターンから前記画像識別情報のパターン値を取り出して、前記画像識別情報のパターン値と、前記前記座標値情報のパターン値とを用いて前記画像識別情報のパターン値を復号するステップと、
を有することを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、２次元表面上に一様に配置されたコードパターンの一部を読み込み、２次元表面上の読み込み位置を同定する技術に関する。
【背景技術】
【０００２】
近年、２次元表面上にコードパターンを一様に配置し、このシンボルを読み込むことで２次元表面上の位置を同定する技術が提案されている。例えば、紙等に印刷されたテスト問題上に、赤外や紫外に吸収特性を持つ不可視のインクやトナーで一様にシンボルを印刷しておき、解答者が、選択した解答位置をスキャナ等でなぞると、選択された解答が通信事業者などに送られるといったシステムが提案されている（図１参照）。また、不可視のインクに限らず、可視のインクによるシンボルの印刷も可能である。
【０００３】
このコードパターンには、種々のものが提案されている。例えば特許文献１では、図２（Ａ）に示すように仮想的な格子枠を配置し、この格子の交差点で区切られる４つの領域のいずれか１つにドットを配置する。これにより４種類のパターンを表現することが可能となり、２ビットを表現することができる。なお、以下ではこのコードパターンをベンチマークと呼ぶ。
【０００４】
また、特許文献２では、図２（Ｂ）に示すようにグリフコードと呼ばれる右斜めと左斜めの直線で１ビットを表現している。
【０００５】
さらに特許文献３では、図２（Ｃ）に示すように直線と鍵型のグラフィックパターンの組み合わせによって情報を表現している。また特許文献４では、図２（Ｄ）に示すようにドットのオンオフによって情報を表現している。
【０００６】
【特許文献１】特表２００３−５１１７６２号公報
【特許文献２】特開平９−１８５６６９号公報
【特許文献３】特開２００４−１５２２７３号公報
【特許文献４】特許番号２８３３９７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、コードパターンは、表現する情報によっては同じパターンが繰り返され、用紙に印刷したときに濃度むらとなって表れる。濃度むらがあると、コードパターン上に重ねた画像の一部が見にくくなり、画像の見た目にもよくない。これらの技術課題については、特許文献１から４には開示されていない。
【０００８】
また、特許文献１〜４には、以下に示す課題を有している。特許文献１では、表現できる情報量も、コードパターンの濃度もある程度満たされているが、より多くの情報を表現できるようにさらなる改良が求められている。また、コードパターン読み込み時の画像ゆがみの影響を受けやすく、コードパターンを正確に判定できない問題点もある。
【０００９】
特許文献２及び３では、コードパターンによる画像濃度が高くなり、情報密度も低いという課題がある。また、特許文献４で利用するドットのオンオフで情報を表現する方法は従来より知られている。さらにこのパターンでは、情報単位の境界位置と、コードパターンの向きを検出するために図２（Ｄ）に示すパターンの他に特殊なパターンを必要とする。このため、コードパターンを配置した画像が均一に見えないという課題がある。
【００１０】
本発明は上記事情に鑑みてなされたものであり、印刷時の濃度むらの発生を防止した同定機能付き印刷物、画像生成装置、画像処理装置及びその方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
かかる目的を達成するために本発明の同定機能付き印刷物は、記録材上に形成される画像を識別するため、該記録材上に繰り返し形成される画像識別情報を符号化したパターンと、前記記録材上での座標値を符号化したパターンとを背景画像として記録した印刷物であって、前記画像識別情報を符号化したパターンは、前記画像識別情報を符号化して得られる第１パターン値に、前記座標値を符号化して得られるパターン値を加算した値を基に得られる第２パターン値を表すパターンであることを特徴としている。
このように本発明は、画像識別情報を符号化して得られる第１パターン値に、座標値を符号化して得られるパターン値を加算して画像識別情報の符号化をしているので、同一のパターン値が連続することがない。従って、背景画像として画像を記録した際に濃度むらの発生を低減させることができる。
【００１２】
上記同定機能付き印刷物において、前記座標値を符号化したパターンは、前記座標値を符号化して得られるパターン値に、所定値を選択的に加算した値を表すのパターンであるとよい。
従って、座標値を符号化して得られるパターン値も同一のパターン値が連続することがなく、濃度むらの発生を低減させることができる。
【００１３】
上記同定機能付き印刷物において、前記座標値は、Ｍ系列符号で符号化されているとよい。
Ｍ系列符号は、疑似ランダム性を有しているので、パターン値を適度に分散させることができる。
【００１４】
上記同定機能付き印刷物において、前記画像識別情報を符号化したパターンと前記座標値を符号化したパターンは、所定サイズのブロック単位で形成され、前記所定サイズのブロックは、複数個連続的に設定されているとよい。
従って、座標値情報や画像識別情報の検出が容易になる。
【００１５】
上記同定機能付き印刷物において、符号化したパターンを特定する際の基準となる同期符号を符号化したパターンを有し、前記同期符号を符号化したパターンは、回転しても他のパターンとドット配置が一致しないパターンであるとよい。
従って、符号パターンを正確に判別して、情報を再現することができる。
【００１６】
上記同定機能付き印刷物において、前記背景画像は、所定領域内に一定数の複数ドットを選択的に配置した符号パターンとして形成されるとよい。
従って、符号パターンによって表現できる情報量を多くすることができ、符号パターンの濃度をできるだけ低くすることができる。
【００１７】
本発明の画像生成装置は、記録材上に形成される画像を識別するための画像識別情報と、前記記録材上での座標値情報とを符号化する第１符号化手段と、前記画像識別情報を符号化して得られる第１パターン値に、前記座標値を符号化して得られるパターン値を加算した値を基に得られる第２パターン値のパターンを求める第２符号化手段と、前記画像識別情報と前記座標値情報とのパターンを背景画像として形成する画像形成手段と、を有している。また本発明の画像生成方法は、記録材上に形成される画像を識別するための画像識別情報と、前記記録材上での座標値情報とを符号化するステップと、前記画像識別情報を符号化して得られる第１パターン値に、前記座標値を符号化して得られるパターン値を加算した値を基に得られる第２パターン値のパターンを求めるステップと、前記画像識別情報と前記座標値情報とのパターンを背景画像として形成するステップと、を有している。
従って、符号化された画像識別情報が同一のパターン値が連続することがなく、濃度むらの発生を低減させた画像を生成することができる。
【００１８】
本発明の画像処理装置は、記録材上に形成される画像を識別するための画像識別情報を表すパターンと、前記記録材上での座標値情報を表すパターンとが背景画像として埋め込まれた画像を読み込む読み込み手段と、前記読み込んだ画像から前記画像識別情報を表すパターンと、前記座標値情報を表すパターンとを検出する検出手段と、前記座標値情報を表すパターンから前記座標値情報のパターン値を取り出し、前記パターン値を復号する第１復号手段と、前記画像識別情報を表すパターンから前記画像識別情報のパターン値を取り出し、前記画像識別情報のパターン値と、前記前記座標値情報のパターン値とを用いて前記画像識別情報のパターン値を復号する第２復号手段と、を有している。また本発明の画像処理方法は、記録材上に形成される画像を識別するための画像識別情報を表すパターンと、前記記録材上での座標値情報を表すパターンとが背景画像として埋め込まれた画像を読み込むステップと、前記読み込んだ画像から前記画像識別情報を表すパターンと、前記座標値情報を表すパターンとを検出するステップと、前記座標値情報を表すパターンから前記座標値情報のパターン値を取り出し、前記パターン値を復号するステップと、前記画像識別情報を表すパターンから前記画像識別情報のパターン値を取り出して、前記画像識別情報のパターン値と、前記前記座標値情報のパターン値とを用いて前記画像識別情報のパターン値を復号するステップと、を有している。
従って、画像識別情報と座標値情報を背景画像から取り出して、再生することができる。
【発明の効果】
【００１９】
本発明は、背景画像として埋め込んだ符号パターンの濃度むらの発生を防止することができる。
【発明を実施するための最良の形態】
【００２０】
添付図面を参照しながら本発明の好適な実施例を説明する。
【実施例】
【００２１】
［符号パターン］
まず、符号パターンの構成について説明する。符号パターンは、用紙上に背景画像として記録され、可視のインクやトナーの他に、赤外や紫外に吸収を持つ不可視のインクやトナーで形成されている。
本実施例の符号パターンは、図３（Ａ）に示すようにサイズが１２×１２ピクセルのブロック内に９つのドット印字領域を設けている。この９つのドット印字領域の中からいずれか２つを選択して情報を表示する。なお、９つの中から２つを選ぶ組み合わせは３６通りなので、２を底とするログを取ると、約５．１７ビットとなる。すなわち、１つの符号パターン（シンボル）で約５．１７ビットを表現することができる。
【数１】
2007226678.tif 000003
印字領域と印字領域の間には２ピクセルの間隔が置かれている。１２００ＤＰＩのプリンタで印刷する場合、各ドットは、２ピクセル×２ピクセルで構成されるのが適当である。以下、このドットサイズで説明するが、もちろん、このほかのドットサイズで表現しても良い。この符号パターンは、１２×１２ピクセル＝１４４ピクセル中に、２×２＝４ピクセルを２個埋め込むので、１ブロックの濃度は５．５６％となる。また、情報量は、５．１７／１４４で、０．０３６ビット／ピクセルとなる。図４には、９つのドット印字領域から２つを選択する組み合わせの符号パターンを示す。ブロックの下の示す数字は、そのパターンが示すパターン値を示している。なお、図４では、図３に示す余白の部分を省略して示している。また、９つの中から２つを選ぶ組み合わせの数は数学記号では、９Ｃ２と記されることから、以下ではこの符号パターンを９Ｃ２パターンと呼ぶ。また、図５には、９Ｃ２パターンの実際のレイアウトを示す。
【００２２】
このように本実施例の符号パターンは、複数ドットで1つの情報を表現することで、目立たず、かつ高情報量の符号パターンを実現することができる。また、図３に示すようにドットとドットの間に間隔を設けているので、エラーを少なくし、符号パターンをできるだけ正確に読み取ることができる。
【００２３】
符号パターンの他の形態として、図３（Ｂ）に示すように、９つのドット印字領域からいずれか３つを選択してドット印字領域としてもよい。以下、この方式を９Ｃ３方式と呼ぶ。この場合、濃度は８．３３％となるが、情報量は０．０７１ビット／ピクセルとなり、１ピクセル当たりの情報量を多くすることができる。図６には、９Ｃ３方式の符号パターンを示す。９Ｃ３方式では、図６に示す８４パターンを表すことができる。
【００２４】
ここで９Ｃ２方式の符号パターンと、特許文献１に開示されたベンチマークとを比較する。
図７に示す曲線Ａは、上述したブロックのサイズを変更していったときの９Ｃ２方式の符号パターンの濃度の変化を示す。また曲線Ｂは、上述したブロックのサイズを変更していったときに９Ｃ２方式の符号パターンで表現できる情報量の変化を示す。また、曲線Ｃは、ブロックサイズを変更していったときのベンチマークの濃度の変化を示す。さらに、曲線Ｄは、ブロックサイズを変更していったときのベンチマークの表現できる情報量の変化を示す。図７に示すように１ブロックのサイズが（１０×１０）〜（１１×１１）に設定することで、ベンチマークよりも情報量や濃度において上回ることができる。しかしながら、ブロックサイズを（１０×１０）や（１１×１１）とすると、ドットとドットの間隔が狭く、ドットの判定にエラーが生じる可能性もある。図８には、１１×１１ピクセルのブロックに、２ドットを１ピクセルの間隔をおいて印字する場合を示す。また、図９には、１１×１１ピクセルのブロックに、２ドットを間隔を開けずに印字する場合を示す。
そこで、本実施例のように１２×１２ピクセルのブロックとし、ドットとドットの間に２ピクセルをおくことで、表現できる情報量や濃度を維持しつつ、ドットの判定も正確に行うことができる。しかしながら、１２×１２ピクセルのブロックとすると、すべてのドットとドットの間の間隔が２ピクセルになり、ブロックの区切りが判定できなくなってしまうが、この判定は、ドット検出の段階でなく、ドット検出後に行うことができる。このブロック区切りを判定する方法は後述する。
【００２５】
符号パターンは上述したものだけに限るのではなく、以下に示すパターンであってもよい。図１０には、領域（ブロック）サイズと、全ドット印字領域数及び実際に打つドット数との関係を調べた結果を示す。図１０（Ａ）は濃度の関係を示し、図１０（Ｂ）は情報量の関係を示す。図１０（Ａ）と図１０（Ｂ）とを比較すると、濃度でベンチマークと同等かそれ以下となり、情報量でベンチマークと同等かそれ以上となる領域が図１１に示す候補１から５である。候補１から５の符号パターンを図１２に示す。また、候補６と７のパターンは、先に述べた図３（Ａ）と（Ｂ）のパターンである。
【００２６】
図１２（Ａ）にはベンチマークのパターンと、濃度及び情報量を示す。また、（Ｂ）には、候補１のパターンを示す。このパターンは、７×７ピクセルのブロックに１ドットを印字するものであり、濃度でベンチマークと同等となり、情報量ではベンチマークを上回ることができる。
また、（Ｃ）には、候補２のパターンを示す。このパターンは、７×７ピクセルのブロックに１ドットを印字するものであり、濃度でベンチマークと同等となり、情報量でベンチマークを上回ることができる。
また、（Ｄ）には候補３のパターンを示す。このパターンは、８×８ピクセルのブロックに１ドットを印字するものであり、濃度でベンチマークよも低くなり、情報量でもベンチマークを上回ることができる。
また、（Ｅ）には候補４のパターンを示す。このパターンは、１０×１０ピクセルのブロックに２ドットを印字するものであり、濃度でベンチマークよりも低くなり、情報量でもベンチマークを上回ることができる。
また、（Ｆ）には候補５のパターンを示す。このパターンは１１×１１ピクセルのブロックに２ドットを印字するものであり、濃度でベンチマークよりも低くなり、情報量でもベンチマークを上回ることができる。
【００２７】
次に、所定情報を表示するための印刷物上での符号パターンの配置について説明する。本実施例では所定情報として、印刷する画像を識別するための画像識別情報と、印刷物上での位置を示す座標値情報（Ｘ座標、Ｙ座標）と、符号パターンの向きや、情報を復号する際の基準点となる同期符号とを含ませている。
なお、以下の説明では、印刷物を複数ページからなる印刷物とし、画像識別情報として、印刷物の各ページを識別するページ番号を例に説明する。
【００２８】
図１３には５×５ブロック内での画像識別情報と、座標情報と、同期符号との配置の一例を示す。本実施例は、５×５のブロックを符号化の単位としている。この５×５ブロックの左上ブロックには、同期符号を表すブロック（以下、同期符号ブロック５０と呼ぶ）を配置している。また、同期符号ブロック５０と同一行のブロックには、Ｘ座標の座標値を表す符号パターンが配置される。以下、このブロックをＸ座標値ブロック５１と呼ぶ。同期符号ブロック５０と同一列のブロックには、Ｙ座標の座標値を表す符号パターンが配置されている。以下、このブロックをＹ座標値ブロック５２と呼ぶ。さらに、同期符号ブロック５０、Ｘ，Ｙ座標値ブロック５１、５２を除く４×４のブロックには、画像識別情報を表す符号パターンが配置される。以下、このブロックを識別情報ブロック５３と呼ぶ。
【００２９】
１ブロック内には、図３〜図６、及び図８、９に示す符号パターンが配置される。図１４には、１ブロック内に９Ｃ２の符号パターンを配置した５×５ブロックのパターンレイアウトを示す。また図１５には、５×５ブロックを複数個連続配置した状態を示す。Ｘ座標値ブロック５１と、Ｙ座標値ブロック５２は、そのブロックの座標値を示すブロックであり、識別情報ブロック５３には、同じ情報が繰り返し挿入される。
例えば、座標情報を４ビット表現可能な符号パターンで表せば、４ブロック全体で１６ビットを表現することができる。また、ページ番号を表すブロックを５ビットを表現可能な符号パターンで表せば、５ビット×１６で８０ビットを表現することができる。このうちの６ブロックを誤り訂正用とすれば、５ビット×１０ブロックで２５０ビットを表現することができる。すなわち、２５０＝１．１２６×１０１５であるので、１，１２６兆枚のページ番号を表現することができる。また、８０ビットを８×１０のブロックに分け、それぞれの行と列にパリティチェックビットを挿入すると考えると、
２７×９＝９．２２３×１０１８であるので、９２２．３京枚のページ番号を表現することができる。
【００３０】
次に同期符号について説明する。同期符号は、符号パターンの向きや、ブロック内で情報を復号する際の基準点を表す。
同期符号には、図４に示す符号パターンのうち、パターン値３２〜３５のパターンが使用される。パターン値３２〜３５の符号パターンは、図１６に示すように、どれか１つのパターンを選択したとき、他の３つのパターンは、それぞれ、９０度、１８０度、２７０度回転したパターンと一致している。
同期符号としては、これらのパターンのほかに、パターン値４〜７、８〜１１、１２〜１５、１６〜１９、２０〜２３、２４〜２７、２８〜３１のパターンの組も利用可能である。これらはそれぞれ回転して一致するパターンの組となっている。
例えば、図１７に示すように上述した５×５ブロックの決められた位置に３２〜３５のパターンの同期符号を１つ入れておく。ここでは、３２番のパターンを５×５ブロックの左上に挿入しているものとする。そして、画像を読み込むと、パターン値３２〜３５のパターンを探す。ここで、例えば図１７に示すように３５番のパターンを検出したとする。この場合、３５番のパターンを３２番のパターンに変換するために、画像を右方向に９０度回転させる。パターン値３５のパターンは、図１６に示すように３２のパターンを右方向に２７０度回転させた画像である。これによって正しい方向で情報を復元することが可能となる。
【００３１】
次に、Ｘ座標、Ｙ座標の符号パターンについて説明する。Ｘ座標、Ｙ座標の座標値は、Ｍ系列符号によって符号化されている。Ｍ系列符号は、ある長さの周期を持つ数列であり、その部分数列を取ると他の部分数列と一致することがないという性質を備えている。
本実施例では座標値の符号化にＭ系列符号を使用している。図１９には、Ｍ系列符号を４ビット表現可能な符号パターンで表した例を示す。Ｍ系列は、その部分系列が、他の部分系列とは一致することがないという性質を持つ。この性質を利用すると、部分系列から、Ｍ系列上の位置が特定でき、位置決めに利用できる。先に述べたように、座標情報は、４ビット表現可能な符号パターンで、４ブロックを使ってあらわすので、１６ビットを表現している。したがって、１６次以下のＭ系列を使うと位置の特定が可能である。本実施例では、１１次のＭ系列を利用するが、ほかの次数であっても利用できる。１１次のＭ系列符号の場合、符号長は２０４７ビットであり、Ｍ系列符号から取り出した長さ１１ビットの部分系列は他の長さ１１ビットの部分系列と値が決して一致することがない。
また、本実施例では、図１８に示すように１１次のＭ系列符号を４周期分つなげて座標値の符号化に使用している。１１次のＭ系列符号の１周期は２０４７ビットで、１つの符号パターンで４ビットを表現するとすると、１周期目のＭ系列符号は１ビットの余りが生じる。この余った１ビットと、２周期目のＭ系列符号の先頭３ビットを使用して次の座標値を表現する。従って、１周期目のＭ系列符号と、２周期目のＭ系列符号とで、１ビット分のずれが生じるので、符号パターンで使用するＭ系列符号が同じになることがない。同様にして、２周期目のＭ系列符号は２ビットの余りが生じる。この余った２ビットと、３周期目のＭ系列符号の先頭２ビットを使用して次の座標値を表現する。さらに３周期目のＭ系列符号では、３ビットの余りが生じる。この余った３ビットと、４周期目のＭ系列符号の先頭１ビットを使用して次の座標値を表現する。
【００３２】
また、座標値の符号化にＭ系列符号を使用しているので、座標値を表す４ブロックのうちの１ブロックで誤りが生じても、Ｍ系列符号の性質を利用して誤りを訂正することができる。
【００３３】
次に、画像識別情報の符号化方式を図２０に示す。
本実施例では、図２０（Ａ）に示す入力情報を（Ｂ）に示す２値情報に変換し、これをＲＳ（リードソロモン）符号のパターン値に変換する（Ｃ）。これを図４に示す符号パターンで表現したものが（Ｅ）の符号パターンとなる。このとき（Ａ）に示す入力情報は、（Ｄ）の多値表現に変換してもよい。なお、（Ｃ）のＲＳ符号のパターン値は、符号に利用するガロア体のべき表現を表している。すなわち、パターン値１０とは、ガロア体の単位元の１０乗を表している。
【００３４】
次に濃度むらの低減技術について説明する。
まず、濃度むらの発生原因について図２１を参照しながら説明する。上述した所定情報を表す符号パターンを用紙に背景画像として印刷すると、表現する情報によっては同じパターンが連続して並んでしまうこともある。同じパターンの繰り返しは、濃度むらの発生につながる。例えば、画像識別情報がページ番号を表し、そのページ番号が小さい番号であった場合、画像識別情報の上位ビットには０が連続する。これが５×５のブロックの識別情報ブロック５３に繰り返し配置されるので、０の連続を表す符号が複数表れる。
さらに、Ｘ座標のパターン値は、同じ行の他のブロックのＸ座標のパターン値と同じ値になる。同様にＹ座標のパターン値は、同じ列の他のブロックのＹ座標のパターン値と同じ値になる。このような同一パターン値の周期的な配置によって、符号パターンを用紙に印刷したときに濃度むらとなって表れる。
【００３５】
そこで、本実施例では、座標値の符号化に使用しているＭ系列符号の性質を利用して、同じパターンが連続して並ぶのを防止している。Ｍ系列符号は、疑似乱数の性質を備えているので、図２２に示すようにＸ座標のパターン値とＹ座標のパターン値とを画像識別符号のパターン値に加え、これを３２で割った余りの番号を新たな画像識別情報のパターン番号とする。なお、画像識別符号のパターン値が本発明の第１パターン値に該当し、Ｘ座標のパターン値とＹ座標のパターン値とを画像識別符号のパターン値に加え、これを３２で割った余りの番号が第２パターン値に該当する。
Ｘ座標とＹ座標のパターン値が両方とも一致する５×５ブロックは存在しない。識別情報ブロックでは、画像識別情報を表すパターン値に同一列のＸ座標ブロック５１のパターン値と同一行のＹ座標値ブロック５２のパターン値とを加算する。そして、加算値を３２で除算し、除算した余りを画像識別情報を表す新たなパターン値とする。なお、除算する値３２は、画像識別情報の表現に、図４に示す０〜３１番までの３２個の符号を用いているからであって、使用する符号数に応じて除算数は変更するとよい。図２３には、変換後のパターン値を示す。図２１と図２３を比較すると明らかなように、変換後の識別情報ブロック５３には、同じパターン値が連続していない。
【００３６】
また、図２１に示すようにＸ座標のパターン値は、同じ行の他のブロックのＸ座標のパターン値と同じ値になり、Ｙ座標のパターン値は、同じ列の他のブロックのＹ座標のパターン値と同じ値になる。そこで、本実施例では、座標を表す符号パターンに、０又は所定値を加算した値を新たなパターン値としている。例えば、変換前の座標値の符号パターンは、図４に示す０〜１５番の符号パターンを使用しているので、図２４に示すように０又は１６をランダムに選択し、パターン番号に加算する。この符号パターンを復号する時には１６で除算した余りを変換後のパターン値として使用することができる。図２５には、Ｘ座標値ブロック５１のパターン値を上述した手順で変換したブロックを示す。図２５に示すようにＹ座標値ブロック５２には、同一のパターン値が繰り返し表れるが、Ｘ座標値ブロック５１では同じパターン値が繰り返されていない。
【００３７】
上述した実施例以外の濃度むらの低減方法として、ランダム表を用意しておいて、このランダム表に従って並べ替えを行ってもよい。復号時には、符号化時に使用したランダム表と逆に変換するランダム表を用意して復号する。
【００３８】
次に、このようにして形成された符号パターンを検出し、情報を取り出す方法について説明する。
まず、ペンデバイス等の入力デバイスによって、予め設定された大きさの領域の符号パターンを読み込む。次に、図２６に示すように読み込んだ画像にブロックフレームを重ね合わせ、ブロックの区切りを検出する。ブロックフレームは、埋め込まれた情報を復号する際に必要となる最小の単位であり、本実施例では５×５ブロックのフレームが使用される。
図２６に示すように、ブロックフレームを移動させて、各ブロック内に印字されたドット数が２となる位置を探索する。図２７に示すようにブロックフレームを検出開始位置から１ラインずつ右、下に移動させていき、ブロック内のドット数が２となる位置を検出する。
また、画像の読み込みサイズは、５×５ブロックよりも大きなサイズであれば復号可能である。ページ番号を示す符号パターンは、図１５に示すようにページ全体にわたって複製されている。このため図１５に点線で示すブロックフレームのように読み込み位置がずれても、ページ番号を示す符号は繰り返し複製されているので、補間してページ番号を復号することができる。
図２２を参照しながらページ番号、座標値検出の処理をより詳細に説明する。図２２（Ａ）が同期符号ブロック５０が５×５ブロックの左上に位置する正しい位置で読み込まれたブロックで、読み込み位置がずれた場合を図２２（Ｂ）に示す。図２２（Ｂ）に示す場合、同期符号が、左から３番目、上から２番目のブロックに出現している。Ｘ座標とＹ座標はどの位置で読み込んでも、全数列の部分数列であるので座標を復号することができる。ページ番号の読み込みでは、同期符号の右下ブロックを１番目のブロックとして、図２２（Ｃ）に示すようにその右隣りを２番目のブロックとする。さらに、右隣のブロックがない場合には、左端のブロックを使用する。次に右隣から右方向に順に読み込み、Ｙ座標パターンまで来たら、１番目の下のブロックを読み込み、これを順に繰り返す。また、Ｙ軸方向の最終ラインまで下がると、図２２（Ｃ）に示すように一番上のラインに帰って、読み出しの最上段のブロックから使用する。この順番に復号することで、ページ番号を取り出すことができる。
また、Ｘ座標の読み込みでは、同期符号を含む行のブロックを、同期符号をスキップして読み出す。また、Ｙ座標の読み込みでは、同期符号を含む列のブロックを、同期符号をスキップして読み出す。この順番に読み出すことで、座標の複合が可能となる。
［画像生成装置の構成］
【００３９】
次に、このような符号化パターンを生成する画像生成装置１の構成を図２９を参照しながら説明する。図２９に示すように画像生成装置１は、ページ・座標情報入力部２、ページ番号符号化部３、Ｘ座標符号化部４、Ｙ座標符号化部５、ページ番号符号パターン化部６、座標符号パターン化部７、同期符号パターン化部８、パターン合成部９、文書画像生成部１０、画像合成部１１、画像生成部１２を備えている。
【００４０】
ページ・座標情報入力部２は、各ページごとのページ番号をページ番号符号化部３に出力する。また各ページ上でのＸ軸の座標情報をＸ座標符号化部４に、Ｙ軸の座標情報をＹ座標符号化部５に出力する。
【００４１】
ページ番号符号化部３は、ページ・座標情報入力部２から入力されたページ情報を符号化する。さらにページ番号符号化部３は、符号化したページ番号に、符号化されたＸ座標値とＹ座標値とを加算し、加算値を３２で除算する。除算によって得られた余りを符号化されたページ番号のパターン値とする。本実施例では、図４に示す０から３１のパターン値を座標値の符号化に使用するので、３２で除算した余りを座標値を表すパターン値とする。符号化されたページ情報はページ番号符号パターン化部６に出力される。
【００４２】
Ｘ座標符号化部４は、Ｘ座標情報をＭ系列符号等を用いて符号化する。さらにＸ座標符号化部４は、符号化したＸ座標値に０又は１６をランダムに選択して加算する。加算した値を符号化されたＸ座標のパターン値とする。Ｙ座標符号化部５は、Ｙ座標情報をＭ系列符号等を用いて符号化する。さらにＹ座標符号化部５は、符号化したＹ座標値に０又は１６をランダムに選択して加算する。加算した値を符号化されたＹ座標のパターン値とする。Ｘ座標とＹ座標の符号化情報は、座標符号パターン化部７に出力される。
【００４３】
ページ番号符号パターン化部６は、符号化されたページ番号の符号パターンを生成し、パターン合成部９に出力する。座標符号パターン化部７は、符号化されたＸ座標とＹ座標の符号パターンを生成し、パターン合成部９に出力する。
【００４４】
パターン合成部９には、さらに同期符号パターン化部８から符号パターン化された同期符号が出力される。パターン合成部９は、ページ番号、Ｘ座標、Ｙ座標、同期符号のパターン画像を合成し、ページ上の所定位置に配置されるように１ページ分の背景画像データを生成する。
【００４５】
画像合成部１１は、パターン合成部９から出力されるページ番号、Ｘ座標、Ｙ座標、同期符号の符号パターンに、文書画像生成部１０から出力される文書画像を重畳した画像を生成する。この画像データを画像生成部１２に出力することで、符号パターン上に文書画像が形成された画像が用紙上に印刷される。
【００４６】
図３０に示すフローチャートを参照しながら画像生成装置１の処理手順を説明する。
まず、ページ座標情報入力部２から出力されるページ番号をページ番号符号化部３に、Ｘ座標情報をＸ座標符号化部４に、Ｙ座標情報をＹ座標符号化部５に入力する（ステップＴ１）。
Ｘ座標符号化部４は、入力されたＸ座標値をＭ系列符号等を用いて符号化する。同様に、Ｙ座標符号化部５は、入力されたＹ座標値をＭ系列符号等を用いて符号化する。符号化されたＸ座標値，Ｙ座標値はページ番号符号化部３に出力される（ステップＴ２）。
さらにＸ座標値符号化部４は、符号化したＸ座標値に０又は１６をランダムに選んで加算する。加算値を新たなＸ座標値を表すパターン値とする。同様にＹ座標値符号化部５は、符号化したＹ座標値に０又は１６をランダムに選んで加算する。加算値を新たなＹ座標値を表すパターン値とする（ステップＴ３）。
【００４７】
次に、ページ番号符号化部３は、ページ番号を符号化する。この符号化したページ番号に、符号化されたＸ座標値とＹ座標値とを加算し、加算値を３２で除算する。除算の結果得られる余りを符号化されたページ番号のパターン値とする（ステップＴ４）。
【００４８】
次に、符号化されたページ番号、Ｘ座標値、Ｙ座標値を各ブロックで画像パターン化する。図３（Ａ）又は図３（Ｂ）に示すパターン画像に変換される（ステップＴ５）。そして、ページ番号、Ｘ座標、Ｙ座標、同期符号の各パターン画像を合成し、ページ上の所定領域に配置されるように１ページ分の背景画像を作成する（ステップＴ６）。この背景画像に文書やイメージ等の画像を重ね合わせて、画像を合成する（ステップＴ７）。重ね合わせた画像を画像生成部１２で生成する（ステップＴ８）。
［画像処理装置］
【００４９】
次に、図３１を参照しながら符号パターン付き画像を読み取って画像を処理する画像処理装置２０の構成を説明する。
図３１に示すように画像処理装置２０は、画像読取装置２１、ドット配列検出部２２、ブロックフレーム検出部２３、画像回転判定部２４、同期符号検出部２５、ビット情報回転変換部２６、ページ符号検出部２７、ページ符号復元部２８、ページ符号復号部２９、ページ符号誤り検出部３０、ページ符号誤り訂正部３１、Ｘ座標符号検出部３２、Ｘ座標復号部３３、Ｘ座標符号誤り検出部３４、Ｘ座標符号誤り訂正部３５、Ｙ座標符号検出部３６、Ｙ座標復号部３７、Ｙ座標符号誤り検出部３８、Ｙ座標符号誤り訂正部３９、ページ座標情報出力部４０を備えている。
【００５０】
画像読取装置２１は、例えば、ペン型のスキャンデバイス等の入力デバイスからなり、読み込んだ画像データをドット配列検出部２２に出力する。ドット配列検出部２２は、読み込んだ画像データからドットを検出し、ドットの座標値をメモリに記録する。メモリには、ドットの配置情報であるドット配列が記録される。
【００５１】
ブロックフレーム検出部２３は、メモリに展開されたドット配列にブロックフレームを重ね合わせ、各ブロック内のドット数が２となるようにブロックフレームの位置を調整する。
【００５２】
同期符号検出部２５は、同期符号を検出する。画像回転判定部２４は、画像の回転を判定する。ビット情報回転変換部２６は、画像回転判定部２４で検出された回転角度だけ符号パターンを回転させて、符号パターンを正しい向きに設定する。
【００５３】
Ｘ座標符号検出部３２は、Ｘ座標を表す符号パターンを検出する。Ｘ座標復号部３３は、検出した符号パターンからＸ座標のパターン値を求め、これを１６で除算する。除算した余り符号化されたＸ座標値として復号する。Ｘ座標符号誤り検出部３４は、復号されたＸ座標符号の誤りを検出する。Ｘ座標符号誤り訂正部３５は、Ｘ座標符号の誤りを訂正する。訂正されたＸ座標符号は、ページ符号復元部２８に送られる。
【００５４】
Ｙ座標符号検出部３６は、Ｙ座標を表す符号パターンを検出する。Ｙ座標復号部３７は、検出した符号パターンからＹ座標のパターン値を求め、これを１６で除算する。除算した余りを符号化されたＹ座標値として復号する。Ｙ座標符号誤り検出部３８は、復号された座標符号の誤りを検出する。Ｙ座標符号誤り訂正部３９は、Ｙ座標符号の誤りを訂正する。訂正されたＹ座標符号は、ページ符号復元部の送られる。
【００５５】
ページ符号検出部２７は、ブロックフレーム内の符号パターンからページの符号パターンを検出する。ページ符号復元部２８は、訂正されたＸ座標符号とＹ座標符号を使って取り出したページの符号パターン番号を付け替え、さらにページを表す符号順に並び替える。ページ符号復号部２９は、ページの符号パターンを復号する。ページ符号誤り検出部３０は、復号化されたページ符号の誤りを検出する。ページ符号誤り訂正部３１は、検出したページ符号の誤りが訂正可能な誤りであった場合には、その誤りを訂正する。訂正したページ符号は、ページ符号復号部２８に出力される。
【００５６】
次に、図３２に示すフローチャートを参照しながらドット配列検出部２２と、ブロックフレーム検出部２３の処理手順を説明する。
まず、ページと座標を同定すべき領域の画像を画像読取装置２１で読み取る（ステップＳ１）。次に、ドット配列検出部２２で、画像からドットを検出し、ドットを検出した位置の座標情報をメモリのドット配列記憶部に格納する（ステップＳ２）。このドット配列の大きさは、複合に必要なブロック数に加えて、ブロックの1辺のドット数から1引いたドット数を加えた大きさが必要である。したがって、本実施例では、復号に必要なブロック数は１５×１５であり、さらに、ブロックの1辺が3ドットであるので、１７×１７のドット配列を格納することが必要である。
【００５７】
次に、検出したドットの位置を示すドット配列に、ブロックフレームを重ね合わせる（ステップＳ３）。図１５に示すように復号の単位となるブロックフレームをドット位置を示すデータ上に重ね合わせる。本実施例では、５×５のブロックフレームが用いられる。そして、カウンタＩ，Ｊに初期値０をセットし、ＭａｘＢＮにも０をセットする（ステップＳ４）。Ｉ，Ｊは、ブロックフレームを初期位置から移動させたステップ数をカウントするものである。画像の１ラインごとにブロックフレームを移動させ、そのとき移動させたライン数をカウンタＩ，Ｊでカウントする。なお、データ上に重ね合わせるブロックフレームの位置は、任意の位置でよい。読み込み位置がずれても、ページ番号を示す符号は繰り返し複製されているので、補間してページ番号を復号することができる。また、１ブロックフレームの中には、Ｘ軸とＹ軸方向の座標値を表すブロックが必ず含まれている。
ＭａｘＢＮは、ブロック内で検出されるドット数が２となるブロック数をブロックフレームを移動させながらカウントしていったときに、最大となるカウント値を記録するものである。
【００５８】
次に、ブロックフレームをＸ軸方向にＩ，Ｙ軸方向にＪ移動させる（ステップＳ５）。初期値ではＩ，Ｊは０にセットされているので、ブロックフレームの移動は行わない。そして、ブロックフレームの各ブロックに含まれるドット数をカウントして、ドット数が２となるブロックの数をカウントする。カウントしたブロック数はＩＢ［Ｉ］［Ｊ］のレジスタに格納される（ステップＳ６）。ＩＢ［Ｉ］［Ｊ］の［Ｉ］、［Ｊ］には、ブロックフレームの移動量を示すＩとＪの値がそれぞれ記録される。
【００５９】
次に、ＩＢ［Ｉ］［Ｊ］とＭａｘＢＮとを比較する（ステップＳ７）。ＭａｘＢＮは初期値に０がセットされているので、最初の比較では、ＩＢ［Ｉ］［Ｊ］はＭａｘＢＮよりも大きくなる（ステップＳ７／ＹＥＳ）。ＩＢ［Ｉ］［Ｊ］がＭａｘＢＮよりも大きい場合（ステップＳ７／ＹＥＳ）、ＭａｘＢＮとしてＩＢ［Ｉ］［Ｊ］の値を登録する。またそのＩの値をＭＸ、Ｊの値をＭＹとする（ステップＳ８）。
【００６０】
次に、Ｉ＝２となっているか否かを判定し（ステップＳ９）、Ｉ＝２ではない場合には（ステップＳ９／ＮＯ）、Ｉの値を１加算する（ステップＳ１０）。そして、ステップＳ５、Ｓ６の処理を繰り返し行い、ＩＢ［Ｉ］［Ｊ］とＭａｘＢＮとを比較していく（ステップＳ７）。
ＩＢ［Ｉ］［Ｊ］が前回までのＩＢ［Ｉ］［Ｊ］であるＭａｘＢＮよりも大きいと（ステップＳ７／ＹＥＳ）、ＭａｘＢＮとしてＩＢ［Ｉ］［Ｊ］を登録し、そのときのＩの値をＭＸ、Ｊの値をＭＹとする（ステップＳ８）。また、ＭａｘＢＮのほうがＩＢ［Ｉ］［Ｊ］よりも大きい場合には（ステップＳ７／ＮＯ）、Ｉの値が２となっているか否かを判定する（ステップＳ９）。Ｉ＝２となると（ステップＳ９／ＹＥＳ）、次にＪの値が２となっているか否かを判定する（ステップＳ１１）。Ｊ＝２ではない場合には（ステップＳ１１／ＮＯ）、Ｉの値を０にリセットし、Ｊの値を１加算する（ステップＳ１２）。このような手順を繰り返し行い、（Ｉ＝０，Ｊ＝０）から（Ｉ＝２，Ｊ＝２）までで、ＩＢ［Ｉ］［Ｊ］が最大のものを検出する。
【００６１】
Ｉ＝２，Ｊ＝２までの処理が終了すると（ステップＳ１１／ＹＥＳ）、保存しているＭａｘＢＮと判定しきい値ＴＢとを比較する（ステップＳ１３）。判定しきい値ＴＢは、ドット数が２のブロックの数が予め設定されたしきい値よりも大きいか否かを判定するしきい値である。ＭａｘＢＮの値が判定しきい値よりも小さい場合には、画像のノイズが大きく復号は不可能と判定し、復号不能を出力する（ステップＳ１５）。また、ＭａｘＢＮが判定しきい値を上回ると（ステップＳ１３／ＹＥＳ）、ブロックフレームをＭＸ，ＭＹの位置に固定し、その位置で各ブロックの符号パターンを検出して、対応するパターン値に変換する。パターン値は、各ブロックを識別する変数Ｘ，Ｙと共にＰ［Ｘ］［Ｙ］としてメモリに記録される。なお、検出した符号パターンから対応するパターン値に変換することができない場合には、パターン値の代わりに［−１］を記録する（ステップＳ１４）。
【００６２】
次に、図３３に示すフローチャートを参照しながら、同期符号を検出して画像を正しい向きに回転させる補正処理について説明する。この処理は、画像回転半部２４とビット情報回転変換部２６とで行われる。
まず、Ｋ，Ｌの値を１に設定する（ステップＳ２１）。なお、ＫはＸ軸方向のブロック数を示す変数であり、ＬはＹ軸方向のブロック数を示す変数である。
次に、Ｐ［Ｉ］［Ｊ］のパターン値が３２であるか否かを判定する（ステップＳ２２）。本実施例では、同期符号としてパターン値３２の符号パターンを使用しているので、このブロックを検出対象とする。
【００６３】
Ｐ［Ｉ］［Ｊ］がパターン値３２のブロックを検出すると（ステップＳ２２／ＹＥＳ）、符号パターンの回転は必要ないと判定し、同期符号のあるブロックのＸ座標をＫ，Ｙ座標をＬとする。また、ブロックフレームの移動量（ＳｈｉｆｔＸ，ＳｈｉｆｔＹ）を示すライン数を（ＭＸ，ＭＹ）とする（ステップＳ２３）。
【００６４】
次に、Ｐ［Ｉ］［Ｊ］がパターン値３３のブロックを検出すると（ステップＳ２４／ＹＥＳ）、符号パターンを左方向に９０度回転させる（ステップＳ２５）。図１６に示すようにパターン値３３の符号パターンは、パターン値３２の符号パターンを右方向に９０度回転させた画像であるので、逆方向に９０度回転させる（ステップＳ２５）。
また、この回転に伴って、同期符号のあるブロックのＸ座標をＬ，Ｙ座標を５−Ｋとする。また、ブロックフレームの移動量（ＳｈｉｆｔＸ，ＳｈｉｆｔＹ）を示すライン数を（ＭＹ，３−ＭＸ）とする（ステップＳ２６）。
【００６５】
次に、Ｐ［Ｉ］［Ｊ］がパターン値３４のブロックを検出すると（ステップＳ２７／ＹＥＳ）、符号パターンを左方向に１８０度回転させる（ステップＳ２８）。図１６に示すようにパターン値３４の符号パターンは、パターン値３２の符号パターンを１８０度回転させた画像であるので、パターン値３４の符号パターンを１８０度回転させる（ステップＳ２８）。
また、この回転に伴って、同期符号のあるブロックのＸ座標をＬ，Ｙ座標をＫとする。また、ブロックフレームの移動量（ＳｈｉｆｔＸ，ＳｈｉｆｔＹ）を示すライン数を（ＭＹ，ＭＸ）とする（ステップＳ２９）。
【００６６】
次に、Ｐ［Ｉ］［Ｊ］がパターン値３５のブロックを検出すると（ステップＳ３０／ＹＥＳ）、符号パターンを左方向に２７０度回転させる（ステップＳ３１）。図１６に示すようにパターン値３５の符号パターンは、パターン値３２の符号パターンを右に２７０度回転させた画像であるので、パターン値３５の符号パターンを左方向に２７０度回転させる（ステップＳ３１）。
また、この回転に伴って、同期符号のあるブロックのＸ座標を５−Ｌ，Ｙ座標をＬとする。また、ブロックフレームの移動量（ＳｈｉｆｔＸ，ＳｈｉｆｔＹ）を示すライン数を（３−ＭＹ，ＭＸ）とする（ステップＳ３２）。
【００６７】
この処理を、パターン値３２〜３５のブロックを検出するまでＫ，Ｌの値を変更（ステップＳ３４、Ｓ３６）しながら繰り返し行う。また、Ｋ＝５，Ｌ＝５になっても（ステップＳ３３／ＹＥＳ，Ｓ３５／ＹＥＳ）、パターン値３２〜３５のブロックを検出することができなかった場合には、復号不能の判定信号を出力する（ステップＳ３７）。
【００６８】
次に、図３４に示すフローチャートを参照しながらＸ座標符号の検出と、復号の処理手順を説明する。この処理は、Ｘ座標符号検出部３２と、Ｘ座標復号部３３とで行われる。
まず、ブロックフレームのＸ軸方向のブロック数をカウントする変数Ｕを０にセットし、ページ番号を示すブロックの中で、エラーと判定されたブロック数をカウントするカウンタＥＭを０にセットする（ステップＳ４１）。
【００６９】
次に、メモリの符号パターン格納部から該当する符号パターンを取り出す。
ここでは、Ｐ［Ｕ］［ＳｙｎｃＹ］を満たす番号の符号パターンが取り出され、これをＸＡ［Ｕ］と設定する（ステップＳ４２）。なお、ここでも同期符号ＳｙｎｃＹは、０、１、２、３、４の４つの値を取る変数であり、Ｙ軸方向の左端のブロックを０番のブロックとし、Ｙ軸方向の右端のブロックを４番のブロックとする。
図１３に示すようにＸ座標を示すブロックは、同期符号のブロックとＹ座標方向で同一の値を取るブロックとなる。そこで、メモリからＰ［Ｕ］［ＳｙｎｃＹ］のパターン値を取り出して、これをＸＡ［Ｕ］と設定する。
【００７０】
Ｐ［Ｕ］［ＳｙｎｃＹ］のパターン値を取り出すと（ステップＳ４２）、これをＸＡ［Ｕ］番目のパターン値とし、パターン値が０より大きいか否かを判定する（ステップＳ４３）。メモリから読み出したＸＡ［Ｕ］のパターン値を０と比較することで、正常にパターン判定された符号パターンであるか否かを判定する。パターン値が０よりも小さい場合には（ステップＳ４３／ＹＥＳ）、エラーと判定されたブロック数をカウントするカウンタＥＭを１インクリメントする（ステップＳ４４）。一方、パターン値が０より小さくなければ（ステップＳ４３／ＮＯ）、Ｐ［Ｕ］［ＳｙｎｃＹ］を１６で割った余りを、ＸＡ［Ｕ］番目のパターン値として格納する（ステップＳ４５）。次に、Ｕの値がＳｙｎｃＸとイコールになったか否かを判定する（ステップＳ４６）。同期符号を示すブロックのパターンを、Ｘ座標値を示すパターンから省くため、この処理を行う。Ｕの値とＳｙｎｃＸとがイコールではない場合には（ステップＳ４６／ＮＯ）、Ｕの値を１インクリーズして（ステップＳ４７）、ステップＳ４２〜Ｓ４６の処理を繰り返す。またＵの値がＳｙｎｃＸと等しくなると（ステップＳ４６／ＹＥＳ）、同期符号のブロックを飛ばすため、ＵにＳｙｎｃＸ＋１をセットする（ステップＳ４８）。
【００７１】
次に、Ｐ［ＳｙｎｃＸ＋１］［ＳｙｎｃＹ］のパターン値をメモリから取り出し、ＸＡ［Ｕ］と設定する（ステップＳ４９）。その後、上述した手順と同様に、メモリから読み出したＸＡ［Ｕ］のパターン値を０と比較することで、正常にパターン判定された符号パターンであるか否かを判定する（ステップＳ５０）。パターン値が０よりも小さい場合には（ステップＳ５０／ＹＥＳ）、エラーと判定されたブロック数をカウントするカウンタＥＭを１インクリメントする（ステップＳ５１）。一方、パターン値が０より小さくなければ（ステップＳ５０／ＮＯ）、Ｐ［Ｕ］［ＳｙｎｃＹ］を１６で割った余りを、ＸＡ［Ｕ］番目のパターン値として格納する（ステップＳ５２）。その後、Ｕの値が「５」となったか否かを判定する（ステップＳ５３）。Ｕの値が５ではない場合には（ステップＳ５３／ＮＯ）、Ｕの値を１インクリーズして（ステップＳ５４）、ステップＳ４９〜Ｓ５４の処理を繰り返し行う。またＵの値が５となると（ステップＳ５３／ＹＥＳ）、ＥＭの値が１よりも大きくなっているか否かを判定する（ステップＳ５５）。
本実施例では、Ｘ座標の復号に許容されるエラー数を１に設定しているが、これだけに限定されるものではなく、符号化の方法に応じて、エラー数を任意に設定可能である。エラー数が１よりも大きい場合には（ステップＳ５５／ＹＥＳ）、エラーの発生頻度が高く、正常な復号ができないと判定し、ページ番号にＮ／Ａ（not applicable）を出力する（ステップＳ５６）。また、カウンタＥＮの値が１よりも小さい場合には（ステップＳ５５／ＮＯ）、ＸＡ［Ｕ］とＳｉｆｔＸとからＸ座標の復号を行う（ステップＳ５７）。
このとき、エラー数が1であれば、残りの３つのブロックから復号でき、エラーであった１ブロックも訂正できる。この訂正値は、Ｐ［Ｘ］［Ｙ］の該当する場所に格納される。
【００７２】
なお、Ｙ座標の復号手順もＸ座標と同様の手順で行われるため、詳細な説明は省略する。
【００７３】
次に、図３５に示すフローチャートを参照しながら、ページ番号を示す符号パターンを検出して、番号を示す順番に並び替え、符号パターンを復号する処理手順を説明する。この処理は、符号検出部２７と、ページ符号復元部２８と、ページ番号復号部２９とで行われる。
まず、５×５のブロックフレームの各ブロックを識別するための変数Ｉ，Ｊを１にセットし、ページ番号を示すブロックの中で、エラーと判定されたブロック数をカウントするカウンタＥＮを０にセットする（ステップＳ６１）。ここで、Ｉは、Ｘ軸方向のブロック数をカウントする変数であり、Ｊは、Ｙ軸方向のブロック数をカウントする変数とする。
【００７４】
次に、メモリの符号パターン格納部から該当する符号パターンを取り出す。
ここでは、Ｐ［（ＳｙｎｃＸ＋Ｉ）（ｍｏｄ５）］［（ＳｙｎｃＹ＋Ｊ）（ｍｏｄ５）］を満たす番号の符号パターンを取り出し、これをＩＤ［Ｉ］［Ｊ］と設定する（ステップＳ４２）。なお、ここでは、同期符号ＳｙｎｃＸは、０、１、２、３、４の４つの値を取る変数であり、Ｘ軸方向の左端のブロックを０番のブロックとし、Ｘ軸方向の右端のブロックを４番のブロックとする。
例えば、図２８（Ｃ）に示すように、ブロックフレーム内で同期符号がＸ軸方向で左から３番目、Ｙ軸方向で上から２番目のブロックにある場合を例に説明する。ページ番号を示す符号パターンは、同期符号の右下のブロックから始まるので、Ｘ軸方向で左から４番目、Ｙ軸方向で上から３番目にあるブロックがページ番号を表す１番目のブロックとなる。
そこで、同期符号のあるブロック（ＳｙｎｃＸ）にＩを加算して、これを５で除算した余りがＸ軸方向のブロックを示す値となる。同様に、同期符号のあるブロック（ＳｙｎｃＹ）にＪを加算して、これを５で除算した余りがＹ軸方向のブロックを示す値となる。
【００７５】
Ｐ［（ＳｙｎｃＸ＋Ｓ）（ｍｏｄ５）］［（ＳｙｎｃＹ＋Ｌ）（ｍｏｄ５）］のパターン値を取り出すと（ステップＳ４２）、これをＩＤ［Ｉ］［Ｊ］番目のパターン値とし、パターン値が０より大きいか否かを判定する（ステップＳ４３）。
図３１に示すフローチャートのＳ１４において、検出した符号パターンから対応するパターン値に変換することができない場合には、［−１］を記録している。そこで、メモリから読み出したＩＤ［Ｉ］［Ｊ］のパターン値を０と比較することで、正常にパターン判定された符号パターンであるか否かを判定する。パターン値が０よりも小さい場合には（ステップＳ６３／ＹＥＳ）、エラーと判定されたブロック数をカウントするカウンタＥＮを１インクリメントする（ステップＳ６４）。一方、パターン値が０より小さくなければ（ステップＳ６３／ＮＯ）、Ｐ［（ＳｙｎｃＸ＋Ｉ）（ｍｏｄ５）］［（ＳｙｎｃＹ＋Ｊ）（ｍｏｄ５）］から、Ｐ［ＳｙｎｃＸ］［（ＳｙｎｃＹ＋Ｊ）（ｍｏｄ５）］とＰ［（ＳｙｎｃＸ＋Ｉ）（ｍｏｄ５）］［ＳｙｎｃＹ］を引き、３２で割った余りをＩＤ［Ｉ］［Ｊ］番目のパターン値とする（ステップＳ６５）。
【００７６】
次に、Ｉの値が５であるか否かを判定する（ステップＳ６６）。Ｉの値が５ではなかった場合には（ステップＳ６５５／ＮＯ）、Ｉの値を１インクリメントして（ステップＳ６７）、ステップＳ６２〜６５の処理をＩの値が５になるまで繰り返す。また、Ｉの値が５になると（ステップＳ６６／ＹＥＳ）、Ｊの値が５となったか否かを判定する（ステップＳ６８）。Ｊの値が５ではなかった場合には（ステップＳ６８／ＮＯ）、Ｉに１にセットし、Ｊの値を１インクリメントして（ステップＳ６９）、ステップＳ６２〜Ｓ６５の処理を繰り返し行う。以上の処理（Ｓ６２〜Ｓ６９の処理をＩ，Ｊが５になるまで繰り返し行う。Ｉ，Ｊが５になると（ステップＳ６８／ＹＥＳ）、エラー数をカウントするカウンタＥＮの値が３よりも大きくなっているか否かを判定する（ステップＳ７０）。
本実施例では、ページの復号に許容されるエラー数を３に設定しているが、これだけに限定されるものではなく、符号化の方式に応じて、エラー数を任意に設定可能である。エラー数が３よりも大きい場合には（ステップＳ７０／ＹＥＳ）、エラーの発生頻度が高く、正常な復号ができないと判定し、ページ番号にＮ／Ａ（not applicable）を出力する（ステップＳ７１）。また、カウンタＥＮの値が３よりも小さい場合には（ステップＳ７０９／ＮＯ）、配列ＩＤ［Ｉ］［Ｊ］（Ｉ，Ｊ＝０〜４）から順にページ番号の復号を行う（ステップＳ７２）。
【００７７】
上述した実施例は本発明の好適な実施例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において、種々変形実施可能である。例えば、上述した実施例では、１つのブロックを四角形で設定しているが、円形や多角形の形状であってもよい。
【図面の簡単な説明】
【００７８】
【図１】２次元表面上の読み込み位置を同定する技術の利用例を示す図である。
【図２】従来の符号パターンを示す図である。
【図３】本発明の符号パターンを示す図である。
【図４】９Ｃ２方式の符号パターンとパターン値とを示す図である。
【図５】９Ｃ２方式の符号パターンを配置した様子を示す図である。
【図６】９Ｃ３方式の符号パターンを示す図である。
【図７】ベンチマークと９Ｃ２方式の情報量、濃度を比較した図である。
【図８】９Ｃ２方式の符号パターンの配置例である。
【図９】９Ｃ２方式の符号パターンの配置例である。
【図１０】領域サイズ、ドット数を変更したときの濃度、情報量の変化を示す図である。
【図１１】ベンチマークと同等かそれ以上の情報量を持ち、濃度がベンチマークよりも薄い符号パターンの候補を示す図である。
【図１２】本発明の符号パターンを示す図である。
【図１３】５×５ブロックのパターンレイアウトを示す図である。
【図１４】５×５ブロック内に９Ｃ２の符号パターンを配置した例を示す図である。
【図１５】５×５ブロックを複数個連続に配置した状態を示す図である。
【図１６】同期符号パターンを示す図である。
【図１７】同期符号から符号パターンを正しい向きに回転する方法を説明するための図である。
【図１８】Ｍ系列符号を用いて座標値を符号化する方法を説明するための図である。
【図１９】Ｍ系列符号を用いて座標値を４ビットずつ符号化する様子を示す図である。
【図２０】画像識別情報の符号化の手順を示す図である。
【図２１】濃度むらの発生原因を説明するための図である。
【図２２】画像識別情報を表す符号パターンの濃度むらを低減する方法を示す図である。
【図２３】濃度むらの低減方法を施した後の画像識別情報のパターン値を示す図である。
【図２４】座標値情報を表す符号パターンの濃度むらを低減する方法を示す図である。
【図２５】濃度むらの低減方法を施した後の画像識別情報と座標値のパターン値を示す図である。
【図２６】ドットパターン上にブロックフレームを重ね合わせた状態を示す図である。
【図２７】ブロックフレームを移動させて、ブロックの区切りを検出する手順を示す図である。
【図２８】ページ番号の復号方法を説明するための図である。
【図２９】画像生成装置の構成を示す図である。
【図３０】画像生成装置の処理手順を示すフローチャートである。
【図３１】画像処理装置の構成を示す図である。
【図３２】符号パターンの配列を検出する手順を示すフローチャートである。
【図３３】同期符号の検出と、符号パターンの回転の手順を示すフローチャートである。
【図３４】ページ番号の復号の手順を示すフローチャートである。
【図３５】Ｘ座標の復号の手順を示すフローチャートである。
【符号の説明】
【００７９】
１  画像生成装置
２  ページ・座標情報入力部
３  ページ番号符号化部
４  Ｘ座標符号化部
５  Ｙ座標符号化部
６  ページ番号符号化部
７  座標符号パターン化部
８  同期符号パターン化部
９  パターン合成部
１０  文書画像生成部
１１  画像合成部
１２  画像生成部
２１  画像読取装置
２２  ドット配列検出部
２３  ブロックフレーム検出部
２４  画像回転判定部
２５  同期符号検出部
２６  ビット情報回転変換部
２７  ページ符号検出部
２８  ページ符号復元部
２９  ページ符号復号部
３０  ページ符号誤り検出部
３１  ページ符号誤り訂正部
３２  Ｘ座標符号検出部
３３  Ｘ座標復号部
３４  Ｘ座標符号誤り検出部
３５  Ｘ座標符号山誤り訂正部
３６  Ｙ座標符号検出部
３７  Ｙ座標復号部
３８  Ｙ座標符号誤り検出部
３９  Ｙ座標符号誤り訂正部
４０  ページ座標情報出力部
５０  同期符号ブロック
５１  Ｘ座標値ブロック
５２  Ｙ座標値ブロック
５３  情報識別ブロック
【図１】
2007226678.tif 000004
【図２】
2007226678.tif 000005
【図３】
2007226678.tif 000006
【図４】
2007226678.tif 000007
【図５】
2007226678.tif 000008
【図６】
2007226678.tif 000009
【図７】
2007226678.tif 000010
【図８】
2007226678.tif 000011
【図９】
2007226678.tif 000012
【図１０】
2007226678.tif 000013
【図１１】
2007226678.tif 000014
【図１２】
2007226678.tif 000015
【図１３】
2007226678.tif 000016
【図１４】
2007226678.tif 000017
【図１５】
2007226678.tif 000018
【図１６】
2007226678.tif 000019
【図１７】
2007226678.tif 000020
【図１８】
2007226678.tif 000021
【図１９】
2007226678.tif 000022
【図２０】
2007226678.tif 000023
【図２１】
2007226678.tif 000024
【図２２】
2007226678.tif 000025
【図２３】
2007226678.tif 000026
【図２４】
2007226678.tif 000027
【図２５】
2007226678.tif 000028
【図２６】
2007226678.tif 000029
【図２７】
2007226678.tif 000030
【図２８】
2007226678.tif 000031
【図２９】
2007226678.tif 000032
【図３０】
2007226678.tif 000033
【図３１】
2007226678.tif 000034
【図３２】
2007226678.tif 000035
【図３３】
2007226678.tif 000036
【図３４】
2007226678.tif 000037
【図３５】
2007226678.tif 000038