(57)【要約】【課題】高画質を実現しつつ、出力する２値画像内に効果的に情報を埋め込むことができる画像処理方式を提供する。【解決手段】画像処理部130は、メモリ部120に保持された処理対象の画像に対して所定の画像処理（例えば、情報埋め込み処理）を施すものであり、閾値マトリックス作成部131と、閾値マトリックス合成部132と、画像２値化処理部133とを備える。閾値マトリックス作成部131は、粗視化格子を有する所定の斜交格子系の各格子点を核とした複数（Ｎ個）の閾値マトリックスを作成する。閾値マトリックス合成部132は、閾値マトリックス作成部131で作成したＮ個の閾値マトリックスを、入力された埋め込み情報信号毎に所定単位で合成して、二値化処理に使用する閾値マトリックスを作成する。画像２値化処理部133は、閾値マトリックス作成部132で作成した閾値マトリックスによって、入力された画像を２値化する。【選択図】図１
2006262277.tif 000002
【特許請求の範囲】
【請求項１】
複数の閾値マトリックスを作成する閾値マトリックス作成部と、
前記閾値マトリックス作成部で作成された複数の閾値マトリックスを、埋め込み信号に応じて、所定の単位で組み合わせることによって１つの閾値マトリックスを作成する閾値マトリックス合成部と、
前記閾値マトリックス合成部によって作成された閾値マトリックスによって画像を２値化する画像２値化処理部と
を備えたことを特徴とする画像処理装置。
【請求項２】
前記閾値マトリックス作成部は、共通の斜交格子系から、前記複数の閾値マトリックスを作成する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記斜交格子系は、粗視化格子を有する
ことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記閾値マトリックス合成部は、前記粗視化格子の各平行四辺形単位に、複数の閾値マトリックスを組み合わせる
ことを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記閾値マトリックス合成部は、前記粗視化格子において単一の平行四辺形に含まれる領域を一つの単位として、各平行四辺形に埋め込み信号を与え、各平行四辺形毎に、前記埋め込み信号に対応する閾値マトリックスの閾値を採用する
ことを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記閾値マトリックス合成部は、前記粗視化格子の平行四辺形毎に閾値マトリックスを組み合わせる際に、作成する閾値マトリックスにおける注目画素がどの平行四辺形に属するかを判定する
ことを特徴とする請求項４又は５に記載の画像処理装置。
【請求項７】
前記複数の閾値マトリックスは、所定濃度を２値化した際に共通のパターンを与える
ことを特徴とする請求項１〜６のいずれか一項に記載の画像処理装置。
【請求項８】
複数の閾値マトリックスを作成し、
当該作成された複数の閾値マトリックスを、埋め込み信号に応じて、所定の単位で組み合わせることによって１つの閾値マトリックスを作成し、
当該作成された閾値マトリックスによって画像を２値化する
ことを特徴とする画像処理方法。
【請求項９】
画像の処理を行うプログラムであって、コンピュータを、
複数の閾値マトリックスを作成する閾値マトリックス作成部、
前記閾値マトリックス作成部で作成された複数の閾値マトリックスを、埋め込み信号に応じて、所定の単位で組み合わせることによって１つの閾値マトリックスを作成する閾値マトリックス合成部、及び、
前記閾値マトリックス合成部によって作成された閾値マトリックスによって画像を２値化する画像２値化処理部
として機能させることを特徴とする画像処理プログラム。
【請求項１０】
複数の閾値マトリックスを作成する閾値マトリックス作成部と、
埋め込み信号に応じて、原画像中の所定の単位毎に前記複数の閾値マトリックスを切り替えつつ、原画像を２値化する画像２値化処理部と
を備えたことを特徴とする画像処理装置。
【請求項１１】
前記閾値マトリックス作成部は、共通の斜交格子系から、前記複数の閾値マトリックスを作成する
ことを特徴とする請求項１０に記載の画像処理装置。
【請求項１２】
前記斜交格子系は、粗視化格子を有する
ことを特徴とする請求項１１に記載の画像処理装置。
【請求項１３】
前記画像２値化処理部は、前記原画像を前記粗視化格子でタイル状に覆った際に得られる全体としての粗視化格子系の各平行四辺形単位に、前記複数の閾値マトリックスを切り替える
ことを特徴とする請求項１２に記載の画像処理装置。
【請求項１４】
前記画像２値化処理部は、前記粗視化格子において単一の平行四辺形に含まれる領域を一つの単位として、各平行四辺形に埋め込み信号を与え、各平行四辺形毎に、前記埋め込み信号に対応する閾値マトリックスの閾値を採用する
ことを特徴とする請求項１３に記載の画像処理装置。
【請求項１５】
前記画像２値化処理部は、前記粗視化格子の平行四辺形毎に閾値マトリックスを切り替える際に、原画像内の２値化すべき注目画素がどの平行四辺形に属するかを判定する
ことを特徴とする請求項１３又は１４に記載の画像処理装置。
【請求項１６】
前記複数の閾値マトリックスは、所定濃度を２値化した際に共通のパターンを与える
ことを特徴とする請求項１０〜１５のいずれか一項に記載の画像処理装置。
【請求項１７】
複数の閾値マトリックスを作成し、
埋め込み信号に応じて、原画像中の所定の単位毎に前記複数の閾値マトリックスを切り替えつつ、原画像を２値化する
ことを特徴とする画像処理方法。
【請求項１８】
画像の処理を行うプログラムであって、コンピュータを、
複数の閾値マトリックスを作成する閾値マトリックス作成部、及び、
埋め込み信号に応じて、原画像中の所定の単位毎に前記複数の閾値マトリックスを切り替えつつ、原画像を２値化する画像２値化処理部
として機能させることを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理に関し、特に、画像への情報埋め込み方式に関する。
【背景技術】
【０００２】
近年、デジタル画像の広汎な流通により、情報流通の方向性を制御するための、デジタル文書、画像への情報埋め込み技術が重要となってきている。
【０００３】
情報埋め込み技術には、主に、デジタル画像が電子的に扱われ保存されることを考慮した埋め込み方式と、デジタル画像が紙文書として出力されることを考慮した埋め込み方式とがある。このうち、前者に関しては、文書や画像内に非可視的に情報を埋め込むのが一般的であり、情報秘匿型のものが多いと言える。一方、後者に関しては、デジタル画像が紙上にプリントされることを前提として、更にいくつかのタイプに分けることができる。例えば、コピー禁止のための情報をプリントしておき、出力した紙を不正にコピーした場合には特定のパターンが浮き上がるタイプの埋め込み方式が知られているが、これは情報通知型のものと言える。また、出力画像中の特定部位に情報を付加して、ユーザー情報や付加情報などを埋め込むタイプの埋め込み方式が知られており、これは情報秘匿型のものと言える。以下、本発明が主な対象とする紙文書に情報秘匿を目的として情報を埋め込む方法について、更に詳しく述べる。
【０００４】
紙文書に情報秘匿を行う場合、埋め込み対象画像の種類、すなわち、写真画像や文書画像などによって、それぞれ適切な方法が異なる。例えば、文書画像の場合には、文字のエッジ部分に情報を埋め込むという方式が知られているが、一般に文字の品質を落とさずに多くの情報を埋め込むのが難しい。一方、写真画像の場合には、通常、閾値マトリックスによる２値化処理が行われるが、多値画像中に情報を埋め込んだ場合、後段の２値化処理との間でパターンが干渉してモアレが発生し、画質劣化する場合がある。逆に、２値化処理の後に情報を埋め込む場合には、２値化した画像を書き換えることになり、同様に画質劣化を防ぎつつ効果的に情報を埋め込むのが難しい。また、２値化処理と同時に情報を埋め込む方法もあり、例えば、埋め込む信号に応じて２値化処理の方式を切り替えるという方法が知られている。以下、埋め込み信号に応じて２値化処理を切り替える従来の方式について述べる。
【０００５】
特許第２６４０９３９号公報には、閾値マトリックスにおける各要素の配置を、埋め込むべきデータに基づいて決定する方法が開示されている。この方法は、Ｎ２＋１階調を表現できるＮ×Ｎの閾値マトリックス内の閾値の配置の仕方を変える（つまりＮ×Ｎ毎に一つの情報を与える）ことで異なるパターンを発生できるようにしておき、閾値処理された画像に所望のパターンを埋め込むものである。しかしながらこの方法では、出力される画像の解像度及び階調数がＮに依存しているため、Ｎ×Ｎのサイズが視認できない程度の高解像度の出力を行わないと画質劣化が目立つ。また、この方法を用いた場合、網点形状に大きな制約があるため、自由な画質制御が難しく、プリンターなどで使用する場合には問題がある。
【０００６】
特開２００１−１４８７７８号公報には、入力画像をブロック分割し、ブロック毎に埋め込むべきデータに応じて誤差拡散処理の量子化条件を制御しながら誤差拡散処理して情報を埋め込む方法が開示されている。この方法は、閾値マトリックスによる２値化処理よりも、より解像度の高い誤差拡散処理を用いて埋め込み処理を行うことができるが、ブロック分割の単位と誤差拡散処理との間の相関性が失われるために、量子化条件の切り替えを行う境界部分において段差が現れる恐れがあり、誤差拡散本来の高画質が達成できない場合がある。
【０００７】
このように、２値化処理と同時に情報を埋め込む方式の場合、読み取りが可能な範囲で画質を高画質に保ちつつ情報を埋め込むのが困難であった。
【特許文献１】特許第２６４０９３９号公報
【特許文献２】特開２００１−１４８７７８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
本発明の目的は、高画質を実現しつつ、出力する２値画像内に効果的に情報を埋め込むことができる画像処理方式を提供することにある。
【課題を解決するための手段】
【０００９】
本発明に係る画像処理装置は、複数の閾値マトリックスを作成する閾値マトリックス作成部と、前記閾値マトリックス作成部で作成された複数の閾値マトリックスを、埋め込み信号に応じて、所定の単位で組み合わせることによって１つの閾値マトリックスを作成する閾値マトリックス合成部と、前記閾値マトリックス合成部によって作成された閾値マトリックスによって画像を２値化する画像２値化処理部とを備えたことを特徴とする。
【００１０】
この場合において、前記閾値マトリックス作成部は、共通の斜交格子系から、前記複数の閾値マトリックスを作成するようにしてもよい。更に、前記斜交格子系は、粗視化格子を有するものであってもよい。更に、前記閾値マトリックス合成部は、前記粗視化格子の各平行四辺形単位に、複数の閾値マトリックスを組み合わせるようにしてもよい。更に、前記閾値マトリックス合成部は、前記粗視化格子において単一の平行四辺形に含まれる領域を一つの単位として、各平行四辺形に埋め込み信号を与え、各平行四辺形毎に、前記埋め込み信号に対応する閾値マトリックスの閾値を採用するようにしてもよい。更に、前記閾値マトリックス合成部は、前記粗視化格子の平行四辺形毎に閾値マトリックスを組み合わせる際に、作成する閾値マトリックスにおける注目画素がどの平行四辺形に属するかを判定するようにしてもよい。
【００１１】
また、以上の場合において、前記複数の閾値マトリックスは、所定濃度を２値化した際に共通のパターンを与えるものであってもよい。
【００１２】
本発明に係る画像処理方法は、複数の閾値マトリックスを作成し、当該作成された複数の閾値マトリックスを、埋め込み信号に応じて、所定の単位で組み合わせることによって１つの閾値マトリックスを作成し、当該作成された閾値マトリックスによって画像を２値化することを特徴とする。
【００１３】
本発明に係るプログラムは、画像の処理を行うプログラムであって、コンピュータを、複数の閾値マトリックスを作成する閾値マトリックス作成部、前記閾値マトリックス作成部で作成された複数の閾値マトリックスを、埋め込み信号に応じて、所定の単位で組み合わせることによって１つの閾値マトリックスを作成する閾値マトリックス合成部、及び、前記閾値マトリックス合成部によって作成された閾値マトリックスによって画像を２値化する画像２値化処理部として機能させることを特徴とする。
【００１４】
また、本発明に係る別の画像処理装置は、複数の閾値マトリックスを作成する閾値マトリックス作成部と、埋め込み信号に応じて、原画像中の所定の単位毎に前記複数の閾値マトリックスを切り替えつつ、原画像を２値化する画像２値化処理部とを備えたことを特徴とする。
【００１５】
この場合において、前記閾値マトリックス作成部は、共通の斜交格子系から、前記複数の閾値マトリックスを作成するようにしてもよい。更に、前記斜交格子系は、粗視化格子を有するものであってもよい。更に、前記画像２値化処理部は、前記原画像を前記粗視化格子でタイル状に覆った際に得られる全体としての粗視化格子系の各平行四辺形単位に、前記複数の閾値マトリックスを切り替えるようにしてもよい。更に、前記画像２値化処理部は、前記粗視化格子において単一の平行四辺形に含まれる領域を一つの単位として、各平行四辺形に埋め込み信号を与え、各平行四辺形毎に、前記埋め込み信号に対応する閾値マトリックスの閾値を採用するようにしてもよい。更に、前記画像２値化処理部は、前記粗視化格子の平行四辺形毎に閾値マトリックスを切り替える際に、原画像内の２値化すべき注目画素がどの平行四辺形に属するかを判定するようにしてもよい。
【００１６】
また、以上の場合において、前記複数の閾値マトリックスは、所定濃度を２値化した際に共通のパターンを与えるものであってもよい。
【００１７】
本発明に係る別の画像処理方法は、複数の閾値マトリックスを作成し、埋め込み信号に応じて、原画像中の所定の単位毎に前記複数の閾値マトリックスを切り替えつつ、原画像を２値化することを特徴とする。
【００１８】
本発明に係る別のプログラムは、画像の処理を行うプログラムであって、コンピュータを、複数の閾値マトリックスを作成する閾値マトリックス作成部、及び、埋め込み信号に応じて、原画像中の所定の単位毎に前記複数の閾値マトリックスを切り替えつつ、原画像を２値化する画像２値化処理部として機能させることを特徴とする。
【００１９】
なお、前記プログラムは、ＣＤ−ＲＯＭ等の可搬記録媒体やネットワーク等の手段を介して頒布されうる。
【発明の効果】
【００２０】
本発明によれば、２値画像への情報埋め込みを行う場合に、画質劣化を抑えた高画質な出力画像を得ることができる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の実施の形態について、図面を参照しつつ詳細に説明する。
【００２２】
図１は、本発明による画像処理システムの構成を示す図である。同図に示すように、本発明による画像処理システム１００は、画像入力部１１０と、メモリ部１２０と、画像処理部１３０と、画像出力部１４０と、制御部１５０とを備える。
【００２３】
画像入力部１１０は、画像処理システム１００の外部からデジタル化された画像データを入力するためのものである。メモリ部１２０は、画像入力部１１０から入力された画像データや、画像処理部１３０による画像処理後のデータ、さらに画像処理に用いられる各種の途中演算結果や処理パラメータなどを保持するものである。
【００２４】
画像処理部１３０は、メモリ部１２０に保持された処理対象の画像に対して所定の画像処理（例えば、情報埋め込み処理）を施すものであり、閾値マトリックス作成部１３１と、閾値マトリックス合成部１３２と、画像２値化処理部１３３とを備える。閾値マトリックス作成部１３１は、粗視化格子を有する所定の斜交格子系の各格子点を核とした複数（Ｎ個）の閾値マトリックスを作成するものである。閾値マトリックス合成部１３２は、閾値マトリックス作成部１３１で作成したＮ個の閾値マトリックスを、入力された埋め込み情報信号毎に所定単位で合成して、二値化処理に使用する閾値マトリックスを作成するものである。画像２値化処理部１３３は、閾値マトリックス作成部１３２で作成した閾値マトリックスによって、入力された画像を２値化するものである。画像処理部１３０の詳細については後述する。
【００２５】
画像出力部１４０は、画像処理部１３０により処理されたデータなどを画像処理システム１００の外部に出力するためのものである。制御部１５０は、画像処理システム１００の各部の処理を制御するものである。
【００２６】
画像処理システム１００は、例えば、通常のパーソナルコンピュータその他のコンピュータを用いて実現することができ、この場合、画像処理部１３０の各構成要素等は、例えば、コンピュータが備えるＣＰＵが、メインメモリにロードされたプログラムを実行することで実現される。なお、各構成要素の一部又は全部を専用のハードウエアで構成するようにしてもよい。
【００２７】
次に、本発明が適用される画像処理部１３０の詳細について説明する。
【００２８】
≪第一実施形態≫
まず、画像処理部１３０の第一の実施形態について説明する。
【００２９】
図２は、第一の実施形態における画像処理部１３０の処理の流れを示すフローチャートである。
【００３０】
同図に示すように、画像処理部１３０は、制御部１５０から処理の開始を指示されると、まず、所定の斜交格子系Λの選択を行う（Ｓ２０１）。斜交格子系Λは、一般に、ｗ，ｈを正整数、ｘ１，ｘ２，ｙ１，ｙ２を整数とし、ｘ１ｘ２＋ｙ１ｙ２≠０を満たすときに、２次元ユークリッド平面内のｗ×ｈサイズの長方形（左下の角を原点０に合わせる）内に定義される二組の平行直線群
ｙ１ｈｘ−ｘ１ｗｙ＝ｗｈｚ１  （ｚ１∈Ｚ）
ｘ２ｈｘ＋ｙ２ｗｙ＝ｗｈｚ２  （ｚ２∈Ｚ）
によって定められる。このとき、ｗ×ｈサイズの長方形の内部には、計｜ｘ１ｘ２＋ｙ１ｙ２｜個の格子点が定められる。この斜交格子系を、Λ（（ｗ,ｈ）,（ｘ１,ｙ１）,（ｘ２,ｙ２））、あるいは略してΛと表す。斜交格子系は、平面上に繰り返しタイル状に配置したときに、平面を平行直線群が覆うという性質を持っており、そのまま２値化用閾値マトリックスの作成に応用することができる。なお、このような斜交格子系の一般的定義からも分かるように、直交格子は斜交格子の特別な場合に該当する。すなわち、
ｗｘ１ｙ２＋ｈｘ２ｙ１＝０
を満たす場合に、斜交格子は直交格子となる。斜交格子系の詳細については、特開２００２−４４４４５号公報に記載されている。
【００３１】
図３は、斜交格子系Λの例を示す図である。同図は、斜交格子系Λ（（６４,６４）,（１６,８）,（１２,８））を示しており、この斜交格子系から閾値マトリックスを作成すると、６００ｄｐｉのときに１５０線相当の出力を得ることができる。
【００３２】
斜交格子系の選択がされると、次に、選択した斜交格子系が情報埋め込みを行うのに適したものかどうかを判定するため、まず、斜交格子系Λが整数格子系かどうかを判定する（Ｓ２０２）。整数格子系とは、斜交格子系の格子をなす基本ベクトル
ｖ１＝（ｗｘ１／λ,  ｈｙ１／λ）
ｖ２＝（ｗｙ２／λ,−ｈｘ２／λ）
の各要素が整数であるものを言う（ここで、λ＝｜ｘ１ｘ２＋ｙ１ｙ２｜である）。図３に示した斜交格子系Λ（（６４,６４）,（１６,８）,（１２,８））は、この条件を満たすので、整数格子系である。整数格子系の場合には、閾値マトリックス内に格子点を正確に配置することができるが、非整数格子系の場合には、格子点が偏り、画質劣化するため、対象から除外される。
【００３３】
判定の結果、選択した斜交格子系Λが整数格子系でなければ（Ｓ２０２：Ｎｏ）、斜交格子の選択をやり直す（Ｓ２０１）。一方、整数格子系であった場合は（Ｓ２０２：Ｙｅｓ）、次に、選択した斜交格子系Λが、粗視化可能か（粗視化格子を持つか）どうかを判定する（Ｓ２０３）。粗視化格子とは、斜交格子系であって、格子点が元の斜交格子系Λの格子点に含まれるようなものを指す。数式で表現すると、
ｎが偶数であり、
Λ（（ｗ,ｈ）,（ｘ１/２ｎ／２,ｙ１/２ｎ／２）,（ｘ２/２ｎ／２,ｙ２/２ｎ／２））
が存在する場合、これがｎ回粗視化格子となる。
また、ｎが奇数であり、
Λ（（ｗ,ｈ）,（（ｘ１−ｙ２）/２（ｎ＋１）／２,（ｘ２＋ｙ１）/２（ｎ＋１）／２）,（（ｘ２−ｙ１）/２（ｎ＋１）／２,（ｘ１＋ｙ２）/２（ｎ＋１）／２））
が存在する場合、これがｎ回粗視化格子となる。ここで、存在する、というのは、４つの分数パラメータが整数値となる場合を指している。後述するように、粗視化格子が存在しないような斜交格子系は、情報埋め込みを格子単位で切り替える際に、画質の調整ができにくいため、対象から除外される。図３に示した斜交格子系Λ（（６４,６４）,（１６,８）,（１２,８））は、４回粗視化可能な斜交格子系である。
【００３４】
図４は、粗視化した斜交格子系の例を示す図である。同図は、斜交格子系Λ（（６４,６４）,（１６,８）,（１２,８））を３回粗視化した斜交格子系Λ（（６４,６４）,（２,５）,（１,６））を示している。
【００３５】
判定の結果、選択した斜交格子系Λが粗視化可能でなければ（Ｓ２０３：Ｎｏ）、斜交格子系の選択をやり直す（Ｓ２０１）。一方、粗視化可能であった場合は（Ｓ２０３：Ｙｅｓ）、次に、選択した斜交格子系Λから、２種類の閾値マトリックス（以下、閾値マトリックス０及び閾値マトリックス１と呼ぶ）を作成する（Ｓ２０４）。斜交格子系からの閾値マトリックスの作成は、以下のような工程を経て行われる。
１． ｗ×ｈマトリックス内に斜交格子点の設定（計｜ｘ１ｘ２＋ｙ１ｙ２｜個）
２． 各格子点を含むドット塊の設定
３． ドット塊内の各点について共通に、一意な番号付け（局所的番号付け）
４． 各格子点を含むドット塊に対して、一意な番号付け（大域的番号付け）
５． 上記局所的番号及び大域的番号から各ドットに一意な通し番号の割り付け
６． 上記通し番号を必要階調数分に均等割り付け
【００３６】
このような斜交格子系からの閾値マトリックスの作成法の詳細については、特開２００２−４４４４５号公報に詳述されているので、以下では主に、本実施形態に特有の事項について説明する。
【００３７】
まず、閾値マトリックス０及び閾値マトリックス１を作成する際は、どちらも同じ斜交格子系Λを使用し、設定するドット塊も共通とする。図５は、斜交格子系Λ（（６４,６４）,（１６,８）,（１２,８））から定義される斜交格子構造（一部分）を示す図である。同図において、黒いドットが格子点に相当し、ハッチング部分が１つのドット塊に相当する。
【００３８】
また、図５に示すようなドット塊内の各点について与える番号付けは、閾値マトリックス０と閾値マトリックス１とで異ならせる。更に、閾値マトリックス０と閾値マトリックス１とで異なる番号付けをする際、所定の番号Ｌにおいて、番号Ｍ（Ｍ≦Ｌ）のドットを全て点灯させたときに、二つのパターンが一致するようにする。番号付けをする際には、このような番号Ｌを最低１つ設けるようにする。一般に、このような番号Ｌの数を増やすと双方の成長順がより類似したものになる。
【００３９】
図６は、同じ斜交格子系Λ（（６４,６４）,（１６,８）,（１２,８））から作成されるドット塊内の各点についての２種類の番号付け（成長順）の例を示す図である。同図（ａ）は、０信号用の番号付け（ライン型）を示し、同図（ｂ）は、１信号用の番号付け（ドット型）を示している。同図（ａ）（ｂ）に示すように、両者は、番号付けが異なっているが、８以下となる１から８の番号のドットを全て点灯させると、同図（ｃ）に示すような共通のパターンが得られる。
【００４０】
図７は、斜交格子系Λ（（６４,６４）,（１６,８）,（１２,８））について、図６（ａ）（ｂ）に示した局所成長番号を与えた場合のドット成長パターンを示す図である。同図に示すように、それぞれ同じ格子点から、異なる順番でドットが成長してゆくが、濃度５０％（値＝１２８）において、共通のパターンを経由する。
【００４１】
以上のようにして、閾値マトリックスの作成が終了すると、次に、斜交格子系Λの粗視化格子Λ'の計算を行う（Ｓ２０５）。ここでは、与えられたｎに対して、Λのｎ回粗視化格子を計算する。前述したように、ｎが偶数であるか奇数であるかに応じて、粗視化格子は直接計算することができる。粗視化できる最大回数をｎΛとして、０≦ｎ≦ｎΛを満たす任意のｎが対象となる。例えば、斜交格子系Λ（（６４,６４）,（１６,８）,（１２,８））の３回粗視化格子Λ（（６４,６４）,（２,５）,（１,６））は、図４に示す構造となる。そこで、以下、３回粗視化した格子（ｎ＝３）を使って説明を進める。
【００４２】
斜交格子系Λの粗視化格子Λ'の計算が終了すると、次に、閾値マトリックス０及び閾値マトリックス１並びに粗視化格子を利用して、入力された０１情報（埋め込むべき情報）をもとに、新たに閾値マトリックスを作成する（Ｓ２０６）。そのため、まず、図８に示すように、粗視化格子の各平行四辺形に、０１の信号を割り付ける。このとき、粗視化格子をΛ（（ｗ,ｈ）,（ｘ１',ｙ１'）,（ｘ２',ｙ２'））で表現すると、この粗視化格子の格子点数はλ'＝|ｘ１'ｘ２'＋ｙ１'ｙ２'|であり、平行四辺形の総数も同数である。従って、割り付けできる信号の情報量はλ'となる。各平行四辺形に０１信号を割り付けるに当たっては、各格子点を一意に計算できると便利である。実際、（粗視化）斜交格子系Λ（（ｗ,ｈ）,（ｘ１',ｙ１'）,（ｘ２',ｙ２'））の各格子点は、
ａ１ｖ１＋ａ２ｖ２＋（ｗ,ｈ）    ｍｏｄ （ｗ,ｈ）
ａ１＝０,…，λ'/ｄ'−１
ａ２＝０,…，ｄ'−１
で計算できる。ここで、ｄ'は｜ｘ１'｜と｜ｙ１'｜の最大公約数である。粗視化斜交格子Λ'についても、このように格子点を計算でき、各格子点は平行四辺形の所定方向の頂点に相当していることから、平行四辺形の位置も一意に定めることができる。実際に埋め込み信号を割り当てるには、例えば、入力された埋め込み信号
Ｓ＝ｓ１ｓ２ｓ３ｓ４ｓ５ｓ６ｓ７ｓ８…  
（ここで、ｉ＝０,…,λ'−１で、ｓｉ＝０またはｓｉ＝１である）に対して、
ａ１（ｉ）＝（ｉｎｔ）ｉ／ｄ'
ａ２（ｉ）＝ｉ ｍｏｄ ｄ'
を与え、各平行四辺形のうち、
ａ１（ｉ）ｖ１＋ａ２（ｉ）ｖ２＋（ｗ,ｈ）  ｍｏｄ （ｗ,ｈ）
が指し示す格子点が所定方向の頂点となっているものに、ｓｉ信号を与えればよい。なお、ここでは各格子点の計算方法を、粗視化格子を使って説明したが、粗視化の有無を問わず、格子点の計算方法に関する部分は一般の斜交格子系で共通である。実際、上述の説明で「 '」記号を全て外せば、通常の斜交格子系の格子点を計算できる。
【００４３】
次に、ｗ×ｈの空のマトリックスを用意し、注目ピクセルについて、そのピクセルが粗視化格子Λ'のどの平行四辺形に含まれるかを見出し、その平行四辺形に割り付けられた番号が０であれば閾値マトリックス０内の注目ピクセルと同じ位置にある閾値を、注目ピクセルの閾値として採用する。一方、平行四辺形に割り付けられた番号が１であれば、閾値マトリックス１内の注目ピクセルと同じ位置にある閾値を、注目ピクセルの閾値として採用する。このようにして、全てのピクセルについて閾値を求めると、最終的に、粗視化格子において０が割り付けられた平行四辺形部分は閾値マトリックス０、１が割り付けられた平行四辺形部分は閾値マトリックス１という性質を持った閾値マトリックスを得ることができる。
【００４４】
最後に、以上のようにして作成された閾値マトリックスによって画像を２値化する（Ｓ２０７）。このとき、２値化された画像には０信号部分と１信号部分でスクリーン構造が切り替わり、情報が埋め込まれた画像を得ることができる。
【００４５】
図９は、２値化した画像の例を示す図である。同図（ａ）は、閾値マトリックス０で２値化した画像、同図（ｂ）は、閾値マトリックス１で２値化した画像、同図（ｃ）は、上述したように閾値マトリックス０と閾値マトリックス１を合成して得られた情報埋め込み済み閾値マトリックスで２値化した画像の例を示している。
【００４６】
ここで、以上のようにして得られる閾値マトリックスの性質についてまとめると、まず、斜交格子系を使うことによって、整数格子系あるいは粗視化可能という条件は付くものの、広汎な種類の格子構造に対応することができる。従って、例えば、本実施形態のように、６００ｄｐｉにて理想的な１５０線相当を実現する格子構造を採用することができ、まず格子構造を選択した時点で、画質が最も良い状態にすることができる。また、閾値マトリックス０と閾値マトリックス１の組み合わせによって目的の閾値マトリックスが作成されるが、まず、両者は同じ斜交格子系から作られているため、切り替えによる段差を極力抑えることができる。更に、粗視化格子単位で切り替えを行うため、局所的な濃度変動を抑えつつ切り替えることができる。また、このような粗視化格子単位で切り替えているので、切り替えの境界線と格子構造とが一体となり、やはり切り替え段差を抑えることができる。更に、閾値マトリックス０と閾値マトリックス１の局所的なドットの成長順の決定においては、所定の濃度で共通のパターンを経由するようにしているため、パターンが大きく異なることによる段差も防ぐことができる。以上の効果が総合され、２値化した画像の画質劣化を防ぎつつ、情報を埋め込むことができる。
【００４７】
また、本実施形態においては、局所的なドットの成長順の決定の際に、共通のパターンを経由する程度を増減させることによって、画質と埋め込み情報の視認性をコントロールすることができる。つまり、共通のパターンを少なくすることで、画質は劣化するが埋め込み情報の視認性をあげることができるし、逆に、共通のパターンを多くすることで、埋め込み情報の視認性は低下するが画質を向上させることができる。後述するように、本発明によって２値化した画像から情報を抽出する際に、プリントされた画像を電子的に読み込んで解析する工程が必要な場合、解析が行える範囲内でこのような調整をすることができる。
【００４８】
また、本実施形態においては、２値化処理の前に、閾値マトリックス０と閾値マトリックス１の作成をその都度行う構成としているが、２値化に必要なのは最終的な閾値マトリックスのみであるので、例えば、閾値マトリックス０と閾値マトリックス１を予め作成しておいて、２値化処理時に、埋め込み信号から閾値マトリックスを作成する処理（ステップＳ２０６以降）を行うようにしてもよい。つまり、入力された埋め込み用信号のみ、逐次変化するが、埋め込みに使用するパターンそのものは固定という方法でもよい。
【００４９】
また、本実施形態においては、閾値マトリックスの組み合わせを粗視化格子を単位として行っている。このようにすることで、埋め込み時の画質の制御を容易にし、従って、より高画質を実現できるようにしている。ここで、粗視化格子の深度（前述の０≦ｎ≦ｎΛを満たすｎ値）は、一般に大きすぎても小さすぎても画質が劣化する。ｎが小さすぎると、元の斜交格子系が充分に粗視化されず、従って、切り替えの単位となる平行四辺形の大きさが小さくなりすぎる。本実施形態では、閾値マトリックス０、閾値マトリックス１共に同じ斜交格子系を使用しているが、局所的なドットの成長方法を変えているため、微小部分ではパターンが異なっている。従って、最終的に作成される閾値マトリックスの閾値は、微小な領域で切り替えによるパターンの相違が発生し、画質劣化が発生する。一方、ｎが大きすぎると、元の斜交格子系は粗視化されすぎる結果となる。つまり、切り替えの単位となる平行四辺形の大きさが大きくなりすぎて、切り替えによるパターンの変化がタイル状に目立ち、やはり画質劣化が発生する。本実施形態の粗視化格子の深度３は、深すぎず浅すぎず、バランスの取れたパターンを実現することができる。一般の斜交格子系に対して粗視化格子の深度を決める際にも、粗視化格子の格子のサイズと出力機器の解像度に応じて、より適切な粗視化深度を選択するようにするとよい。
【００５０】
また、本実施形態における情報埋め込み量に関しては、上述したように、粗視化格子をΛ（（ｗ,ｈ）,（ｘ１',ｙ１'）,（ｘ２',ｙ２'））としたときに、正確に、|ｘ１'ｘ２'＋ｙ１'ｙ２'|ビットと計算することができる。従って、逆にこの情報量以上の情報を埋め込むことはできない。この場合、粗視化格子の深度を浅くする、つまり、Λをｎ回粗視化していたのをｍ（ｍ<ｎ）回の粗視化とすることによって、埋め込める情報量を増大させることができる。しかしながら、上述したように、浅い粗視化格子の使用は画質の低下に繋がる。そこで、このような場合には、元の斜交格子系Λ（（ｗ,ｈ）,（ｘ１,ｙ１）,（ｘ２,ｙ２））に対して、斜交格子系
Λ（（２ｐ１ｗ, ２ｐ２ｈ）,（２ｐ２ｘ１, ２ｐ１ｙ１）,（２ｐ１ｘ２, ２ｐ２ｙ２））
を使用するという方法がある。この斜交格子は元の斜交格子を縦横方向にそれぞれ２ｐ１個、２ｐ２個並べた構造となり、格子構造自体は元の斜交格子系と同じで、サイズが大きくなったものである。従って、粗視化格子の埋め込み情報量も２ｐ１×２ｐ２倍に増える。但し、２値化用の閾値マトリックスのサイズも同じだけ大きくなるので、メモリなどの制約を考慮する必要がある。
【００５１】
≪第二実施形態≫
次に、画像処理部１３０の第二の実施形態について説明する。
【００５２】
本実施形態は、埋め込んだ情報を取り出す際の位置情報検出のための工夫をしたものであり、情報埋め込み処理そのものは第一実施形態の方法をそのまま使用することができる。従って、第一実施形態と異なる部分についてのみ説明する。
【００５３】
前述したように、第一実施形態における情報埋め込み方法では、粗視化格子のそれぞれに埋め込み情報の０１信号を割り当てる。そして、各粗視化格子は一意に計算することができる。従って、画像を紙に出力して、読み取り装置によって紙から画像を取り込んで再び電子化した際にも、必要ならばスキュー補正やその他の既存の画像処理を行ってから、この粗視化斜交格子系に対応する各粗視化格子を特定することができる。しかしながら、粗視化格子構造を特定できたとしても、情報の埋め込み開始位置の特定を行うのは、２値化処理において閾値と比較したときの切り替わり位置を特定できない場合には難しくなる。そこで、本実施形態では、情報の埋め込み開始位置を特定する信号を更に付加するため、０１信号に対応する閾値マトリックス０及び閾値マトリックス１に加えて、新たに埋め込み開始位置を特定する「２信号」に対応する閾値マトリックス２を作成する。
【００５４】
すなわち、前述したステップＳ２０４において、閾値マトリックス０及び閾値マトリックス１に加えて、閾値マトリックス２の作成を行う。その際、第一実施形態で行ったのと同じようにして、共通のドット塊に対して、閾値マトリックス０及び閾値マトリックス１と異なる局所番号付けを行う。更に、局所番号付けを行う際、第一実施形態と同様に、特定の濃度（例えば、濃度値１２８）で共通のパターンを経由するようにする。
【００５５】
図１０（ａ）は、埋め込み開始位置に相当する２信号に対応した閾値マトリックス２の局所番号付けの例を、閾値マトリックス０及び閾値マトリックス１の局所番号付けとともに示している。また、同図（ｂ）は、特定の濃度値、すなわち、濃度値１２８でのドットパターンを示している。同図（ａ）に示すように、３つの閾値マトリックスはすべて、番号付けが異なっているが、８以下となる１から８の番号のドットを全て点灯させると、同図（ｂ）に示す共通のパターンが得られる。
【００５６】
また、前述したステップＳ２０６において、閾値マトリックス０、閾値マトリックス１及び閾値マトリックス２の３つの閾値マトリックスの合成を行う。その際、第一実施形態においては、粗視化格子の平行四辺形に、０または１からなるλ'個の埋め込み情報を与えていたが、本実施形態では、ａ１＝０、ａ２＝０に対応する格子（平行四辺形）に、強制的に２信号を与え、残りのλ'−１個の格子に埋め込み用の０１信号を順に与える。従って、埋め込み情報量としては、λ'−１ビットが使用可能となり、第一実施形態と比較して１ビット分少ない情報を埋め込むことができる。
【００５７】
図１１は、粗視化格子系Λ（（６４,６４）,（２,５）,（１,６））において、ａ１＝０、ａ２＝０に対応する格子（右下隅に位置する格子）に、２信号（開始位置特定情報）を与え、残りの格子には０１信号（埋め込み情報）を与えた例を示している。
【００５８】
このようにして０１２信号を与えたら、各０１２信号に応じて閾値マトリックス０、閾値マトリックス１、閾値マトリックス２を粗視化格子毎に切り替えた最終的な閾値マトリックスの作成を行う。
【００５９】
最後に、前述したステップＳ２０７において、以上のようにして作成された閾値マトリックスを用いて、画像を２値化すると、埋め込み用情報及び読み取り開始位置が埋め込まれた２値画像を得ることができる。
【００６０】
本実施形態によれば、読み取り開始位置を示す２信号が付加されるので、読み取り時の認識の確実性を予め上げることができる。本実施形態では、２信号に対応する閾値マトリックス２の作成において、局所番号付けの際に、０信号や１信号と異なるパターンを採用するため、２値化した画像には、２信号に対応するパターンが閾値マトリックスのサイズを周期として現れる。そのため、この２信号用の局所番号付けのパターンと、０信号、１信号用のパターンとの相違が大きいほど認識の精度が上がる反面、閾値マトリックスサイズ周期のパターンが目立つようになり画質が低下する。従って、第一実施形態と同様、局所番号付けのパターンの相違度は、画質と認識率のパラメータとなる。本実施形態でも、特定の濃度値（＝１２８）において共通のパターンを経由するようにし、残りのパターンを少しづつ変えることによって、大きなパターンの相違（画質の劣化）を防ぎつつ、認識の精度を極力保つようにしている。
【００６１】
≪第三実施形態≫
次に、画像処理部１３０の第三の実施形態について説明する。
【００６２】
本実施形態は、第二実施形態のように２信号を付加することなく、０信号と１信号のみを使用して埋め込み情報位置の特定をすることができるようにするものであり、第一実施形態との相違点は、粗視化格子に０１信号を割り当てる方法のみであるので、それに関連する処理部分についてのみ述べる。
【００６３】
まず、斜交格子系として、例えば、Λ（（１２８,１２８）,（３２,１６）,（２４,１６））を選択する。この斜交格子系は、第一実施形態において例示した斜交格子系Λ（（６４,６４）,（１６,８）,（１２,８））を２×２個並べた格子となる。この斜交格子系に対する粗視化格子は、Λ（（１２８,１２８）,（４,１０）,（２,１２））である。
【００６４】
図２に示したステップＳ２０１〜Ｓ２０５の処理は、上記の斜交格子系を用いて第一実施形態と同様に行い、ステップＳ２０６において、粗視化格子の各平行四辺形に、０１信号を割り当てる。この際に、粗視化格子Λ（（１２８,１２８）,（４,１０）,（２,１２））を更にもう１回粗視化した格子Λ（（１２８,１２８）,（−４,６）,（−４,８））を平行移動した位置にある平行四辺形全てに０を割り当て、ａ１＝０、ａ２＝０に相当する平行四辺形のみに１を割り当てる。
【００６５】
図１２は、このようにして０１信号を割り当てた粗視化斜交格子系を示している。同図に示すように、粗視化格子系Λ（（１２８,１２８）,（４,１０）,（２,１２））において、ａ１＝０、ａ２＝０に対応する格子（右下隅に位置する格子）にのみ、１信号が与えられ、格子Λ（（１２８,１２８）,（−４,６）,（−４,８））を平行移動した位置にある残りの格子には０信号が与えられる。
【００６６】
次に、番号が割り当てられていない残りの平行四辺形に対して、埋め込み信号として与えられた０１信号を与える。このようにして作成された番号付けに従って閾値マトリックス０と閾値マトリックス１を合成すれば目的の閾値マトリックスが得られる。
【００６７】
本実施形態により作成された閾値マトリックスでは、特定の粗視化格子に関して１箇所のみ１信号、残りを０信号とすることで、埋め込み開始位置を特定できるようにしている。このように本実施形態では、第二実施形態のように新たに２信号を用意する必要はなく、０１信号のみで埋め込み情報位置を特定することができる。本実施形態では、埋め込み開始位置特定のための情報を埋め込んでいるため、第一実施形態における埋め込み情報量λ'＝|ｘ１'ｘ２'＋ｙ１'ｙ２'|に対して、本実施形態で実質的に埋め込める情報量は、λ'／２ビットとなる。
【００６８】
≪第四実施形態≫
次に、画像処理部１３０の第四の実施形態について説明する。
【００６９】
本実施形態は、埋め込み信号のビット数を増大させるものであり、上記実施形態においては、いずれも０１信号を埋め込んでいたのに対して、本実施形態では、Ｎビット信号の埋め込みを行う。本実施形態も、基本的な処理は第一実施形態と同じであるので、関連する部分についてのみ述べる。
【００７０】
まず、第一実施形態と同様に、適当な斜交格子系、例えば、Λ（（６４,６４）,（１６,８）,（１２,８））を選択する（Ｓ２０１〜Ｓ２０３）。そして、Ｎ個の閾値マトリックスを作成する（Ｓ２０４）。この際には、第一実施形態と同様に、共通の斜交格子系Λ（（６４,６４）,（１６,８）,（１２,８））を使用するとともに、５０％パターンの共通化を行いながらＮ個の成長パターンを作成する。
【００７１】
図１３（ａ）は、Ｎ＝４の場合における、０信号、１信号、２信号、３信号用の成長パターンの例を示す図である。同図（ａ）に示すように、各成長パターンは、番号１〜８のドットが点灯される５０％パターン（濃度値１２８）で、同図（ｂ）に示す共通のラインパターンを経由する。
【００７２】
次に、第一実施形態と同様に、粗視化格子Λ（（６４,６４）,（２,５）,（１,６））の計算を行い（Ｓ２０５）、粗視化格子に０〜Ｎ−１の埋め込み情報を与える（Ｓ２０６）。
【００７３】
図１４は、Ｎ＝４の場合に、埋め込み情報の０〜３信号を与えた状態を示す図である。同図に示すように、粗視化格子Λ（（６４,６４）,（２,５）,（１,６））の各平行四辺形には、０〜３のいずれかの信号が与えられている。
【００７４】
残りの処理は、第一実施形態と同じである。すなわち、ステップＳ２０６で、粗視化格子の平行四辺形に与えられた０〜Ｎ−１の埋め込み情報信号毎に、ステップＳ２０４で作成した閾値マトリックス０〜Ｎ−１の閾値を、対応する平行四辺形内の閾値として採用する。これによって、最終的な閾値マトリックスを得ることができ、各粗視化格子の平行四辺形部分に０〜Ｎ−１までの情報が割り当てられる。
【００７５】
本実施形態では、Ｎ個の閾値マトリックスのパターンを用意しているので、一つの平行四辺形に対して、切り替えによってＮビットの情報を与えることができる（第一、第二及び第三実施形態ではいずれも１ビット）。従って、閾値マトリックス全体に与えられる埋め込み情報量は、Ｎλ'となる。ここで、λ'＝|ｘ１'ｘ２'＋ｙ１'ｙ２'|であり、各パラメータｘ１'、ｙ１'、ｘ２'、ｙ２'は斜交格子系Λ（（ｗ,ｈ）,（ｘ１,ｙ１）,（ｘ２,ｙ２））の粗視化格子Λ（（ｗ,ｈ）,（ｘ１',ｙ１'）,（ｘ２',ｙ２'））のパラメータである。
【００７６】
≪第五実施形態≫
次に、画像処理部１３０の第五の実施形態について説明する。
【００７７】
図１５は、本実施形態における画像処理部１３０を備えた画像処理システムの構成を示す図である。
【００７８】
同図に示す画像入力部１１０、メモリ部１２０、画像出力部１４０及び制御部１５０については、図１に示したものと同様のものであるので、説明は省略する。
【００７９】
画像処理部１３０は、メモリ部１２０に保持された処理対象の画像に対して所定の画像処理（例えば、情報埋め込み処理）を施すものであり、閾値マトリックス作成部１５３１と、画像２値化処理部１５３３とを備える。
【００８０】
閾値マトリックス作成部１５３１は、粗視化格子を有する所定の斜交格子系の各格子点を核としたＮ個の閾値マトリックスを作成するものである。画像２値化処理部１５３３は、入力された信号（埋め込み情報）に応じて、Ｎ個の閾値マトリックスと同じ斜交格子構造によって原画像中に定められた粗視化格子単位で、Ｎ個の閾値マトリックスを切り替えつつ、原画像を２値化するものである。なお、２値化する画素がどの粗視化格子単位に属するかを判定する判定部を更に設けても良い。
【００８１】
以下、本実施形態における画像処理部１３０について詳細に説明する。
【００８２】
図１６は、本実施形態における画像処理部１３０の処理の流れを示すフローチャートである。同図において、図２と同一の参照符号を付したステップ、すなわち、ステップＳ２０１〜Ｓ２０５については、図２と同じ処理が行われるので、その詳細な説明は省略する。
【００８３】
図１６に示すように、画像処理部１３０は、制御部１５０から処理の開始を指示されると、まず、所定の斜交格子系Λを選択する（Ｓ２０１）。斜交格子系の選択がされると、次に、選択した斜交格子系が情報埋め込みを行うの適したものかどうかを判定するため、まず、斜交格子系Λが整数格子系かどうかを判定する（Ｓ２０２）。判定の結果、整数格子系でなければ（Ｓ２０２：Ｎｏ）、斜交格子の選択をやり直す（Ｓ２０１）。一方、整数格子系であった場合は（Ｓ２０２：Ｙｅｓ）、次に、選択した斜交格子系Λが、粗視化可能か（粗視化格子を持つか）どうかを判定する（Ｓ２０３）。
【００８４】
判定の結果、選択した斜交格子系Λが粗視化可能でなければ（Ｓ２０３：Ｎｏ）、斜交格子系の選択をやり直す（Ｓ２０１）。一方、粗視化可能であった場合は（Ｓ２０３：Ｙｅｓ）、次に、斜交格子系Λから、２種類の閾値マトリックス（閾値マトリックス０及び閾値マトリックス１）を作成する（Ｓ２０４）。閾値マトリックスの作成が終了すると、次に、斜交格子系Λの粗視化格子Λ'の計算を行う（Ｓ２０５）。
【００８５】
次に、計算した粗視化斜交格子系Λ'を、２値化処理時の閾値マトリックス配置と同じ配置で原画像上に敷き詰めた際の斜交格子系を計算する（Ｓ１６０６）。
【００８６】
図１７は、原画像を粗視化斜交格子系で覆った様子を示す図である。同図に示すように、サイズＷ×Ｈの原画像上に、サイズｗ×ｈの粗視化斜交格子系がタイル状に配置される。
【００８７】
このとき、一般に、原画像のサイズ及び斜交格子系のサイズによっては、原画像の右端もしくは下端で斜交格子系がはみ出す場合がある。このような場合は、はみ出した斜交格子系は除外するものとする。なお、粗視化斜交格子系をΛ（（ｗ,ｈ）,（ｘ１',ｙ１'）,（ｘ２',ｙ２'））で表現すると、このようにして敷き詰めた粗視化斜交格子系全体がまた斜交格子系となり、
Λ（（ｗ＊ｐｗ,ｈ＊ｐｈ）,（ｘ１'＊ｐｈ,ｙ１'＊ｐｗ）,（ｘ２'＊ｐｗ,ｙ２'＊ｐｈ））
と表現できる。ここで、ｐｗはＷをｗで割った整数部分、ｐｈはＨをｈで割った整数部分である。本実施形態では、粗視化斜交格子系はΛ（（６４,６４）,（２,５）,（１,６））であるから、敷き詰められた粗視化斜交格子系全体を一つの斜交格子系とみれば、上式に代入して、
Λ（（６４＊ｐｗ,６４＊ｐｈ）,（２＊ｐｈ,５＊ｐｗ）,（１＊ｐｗ,６＊ｐｈ））
と表現できる。例えば、図１７に示すように敷き詰めがなされた場合、粗視化斜交格子系が縦方向にｐｈ＝５ライン、横方向にｐｗ＝５ライン、計２５個敷き詰められる。従って、この場合には、Λ（（３２０,３２０）,（１０,２５）,（５,３０））となる。
【００８８】
次に、以上のようにして計算された粗視化斜交格子系全体に含まれる平行四辺形に、埋め込み信号０または１を割り当てる（Ｓ１６０７）。前述したように、粗視化斜交格子系全体が一つの粗視化斜交格子であるから、第一実施形態において説明した一般の粗視化斜交格子系についての埋め込み信号を割り当てる方法をそのまま適用できる。本実施形態では、この方法によって、粗視化斜交格子系Λ（（３２０,３２０）,（１０,２５）,（５,３０））に番号を与える。
【００８９】
次に、原画像の各画素について、画素が属する平行四辺形に割り当てられた番号に応じて、閾値マトリックスを切り替えながら全ての画素を２値化処理する（Ｓ１６０８）。本実施形態では、図１７に示すように、原画像内の各画素のうち、敷き詰められた斜交格子系Λ（（３２０,３２０）,（１０,２５）,（５,３０））に覆われた部分にある画素は、ステップＳ１６０７で計算された平行四辺形のいずれかに含まれており、各平行四辺形に０または１の値が割り当てられている。従って、各平行四辺形に割り当てられた番号に従って、閾値マトリックスを切り替えて、当該画素を２値化処理する。例えば、注目画素が番号０が与えられた平行四辺形に属するならば、当該注目画素を閾値マトリックス０で２値化し、番号１が与えられた平行四辺形に属するならば、当該注目画素を閾値マトリックス１で２値化する。全ての画素について、２値化処理を行えば、情報埋め込みがなされた２値画像を得ることができる。
【００９０】
なお、原画像の各画素のうち、敷き詰められた斜交格子系に覆われていない部分については、閾値マトリックス０及び閾値マトリックス１のどちらを使って２値化してもよい。あるいは、この領域にある粗視化格子の平行四辺形にも同様の０か１かの番号付けを行って、閾値マトリックス０と閾値マトリックス１を切り替えながら２値化処理してもよい。なお、この領域は、埋め込み信号には無関係なので、０１の番号はランダムに与えてよい。この方が、画像全体として均一なランダム性を持つため、好ましい場合がある。
【００９１】
このようにして作成された２値画像には、全体としての粗視化斜交格子系Λ（（ｗ＊ｐｗ,ｈ＊ｐｈ）,（ｘ１'＊ｐｈ,ｙ１'＊ｐｗ）,（ｘ２'＊ｐｗ,ｙ２'＊ｐｈ））の平行四辺形の総数ｐｗｐｈ｜ｘ１'ｘ２'＋ｙ１'ｙ２'｜分の情報を埋め込むことができる。この数値は粗視化斜交格子系の格子点の総数に等しい。例えば、Λ（（３２０,３２０）,（１０,２５）,（５,３０））の場合、８００ビットの情報を埋め込むことができることになる。
【００９２】
ここで、以上のようにして得られる２値画像の性質についてまとめる。まず、本実施形態では、斜交格子系を使うことによって、整数格子系あるいは粗視化可能という条件は付くものの、広汎な種類の格子構造に対応することができる。従って、例えば、本実施形態のように、６００ｄｐｉにて理想的な１５０線相当を実現する格子構造を採用することができ、まず格子構造を選択した時点で、画質が最も良い状態にすることができる。更に、閾値マトリックス０と閾値マトリックス１を切り替えつつ２値化処理するが、両者は同じ斜交格子系から作られており、更に切り替えの単位は、各閾値マトリックスを原画像上にタイル状に敷き詰めた際に定義される全体としての粗視化斜交格子系の平行四辺形を単位としている。従って、切り替えの境界線と格子構造とが一体となるため、切り替え段差を抑えることができる。更に、閾値マトリックス０と閾値マトリックス１の局所的なドットの成長順の決定においては、所定の濃度で共通のパターンを経由するようにしているため、パターンが大きく異なることによる段差も防ぐことができる。以上の効果が総合され、２値化した画像の画質劣化を防ぎつつ、情報を埋め込むことができる。
【００９３】
また、本実施形態においては、２値化処理の前に閾値マトリックス０と閾値マトリックス１の作成をその都度行う構成としているが、２値化する毎に閾値マトリックスを計算しなくてもよく、予め計算しておいてメモリなどに保持し、２値化処理時に読み出して使ってもよい。つまり、入力された埋め込み用信号のみ逐次変化するが、埋め込みに使用するパターンそのものは固定という方法でもよい。
【００９４】
また、本実施形態における情報埋め込み量に関しては、上述したように、全体の粗視化格子系をΛ（（ｗ＊ｐｗ,ｈ＊ｐｈ）,（ｘ１'＊ｐｈ,ｙ１'＊ｐｗ）,（ｘ２'＊ｐｗ,ｙ２'＊ｐｈ））としたときに、正確に、ｐｗｐｈ｜ｘ１'ｘ２'＋ｙ１'ｙ２'｜ビットと計算することができ、原画像が大きくなるほどｐｗ，ｐｈ値が大きくなるので、多量の情報を埋め込むことができる。逆に、埋め込むべき情報量がｐｗｐｈ｜ｘ１'ｘ２'＋ｙ１'ｙ２'｜値よりも小さい場合、埋め込むべき最後の情報の後段に、終了を意味する信号を与え、残された領域には適当にランダムに信号を与えるようにしてもよい。
【００９５】
本実施形態の方法で情報埋め込みをした画像から読み取りを行い、埋め込み情報を抽出する場合、まず、必要ならば読み込んだ画像を回転して２値化処理開始地点（図１７で言えば画像の左上隅）を特定し、次に粗視化斜交格子系Λ（（ｗ＊ｐｗ,ｈ＊ｐｈ）,（ｘ１'＊ｐｈ,ｙ１'＊ｐｗ）,（ｘ２'＊ｐｗ,ｙ２'＊ｐｈ））と読み込んだ画像とを、必要ならば読み込んだ画像を拡縮しながら重ね合わせる。あとは、粗視化斜交格子系の平行四辺形に対応する読み込み画像上の領域を探索しつつ、パターンが閾値マトリックス０によるものか、閾値マトリックス１によるものかを特定してゆけばよい。本実施形態で処理する際に、原画像には特に制限はないが、読み取りのための工夫とも関連して、原画像が自然画などの濃淡が様々に変化する画像の場合には、閾値マトリックス０と閾値マトリックス１との間でパターンが共通化する部分の濃度（例えば５０％）付近を処理するときに、埋め込み情報の付与を飛ばすようにしてもよい。原画像がグラフィック画像や、文字の背景などに見られる固定濃度の場合には、本実施形態の効果が大きい。
【００９６】
≪第六実施形態≫
次に、画像処理部１３０の第六の実施形態について説明する。
【００９７】
本実施形態は、埋め込み信号のビット数を増大させるものであり、第五実施形態においては、０１信号を埋め込んでいたのに対して、本実施形態ではＮビット信号の埋め込みを行う。本実施形態は、基本的な処理は第五実施形態と同じであるため、関連する部分のみ述べる。
【００９８】
まず、第五実施形態と同様に、適当な斜交格子系、例えば、Λ（（６４,６４）,（１６,８）,（１２,８））を選択する（Ｓ２０１〜Ｓ２０３）。次に、Ｎ個の閾値マトリックスを作成する（Ｓ２０４）。この時、第五実施形態と同様に、共通の斜交格子系Λ（（６４,６４）,（１６,８）,（１２,８））を使用し、５０％パターンの共通化を行いながらＮ個の成長パターンを作成する。
【００９９】
次に、第五実施形態と同様に、粗視化格子Λ（（６４,６４）,（２,５）,（１,６））の計算を行い（Ｓ２０５）、原画像を粗視化格子で覆った際の全体としての粗視化格子Λ（（３２０,３２０）,（１０,２５）,（５,３０））の計算を行い（Ｓ１６０６）、この全体としての粗視化格子内の平行四辺形に、０〜Ｎ−１の埋め込み情報を与える（Ｓ１６０７）。
【０１００】
そして、第五実施形態と同様に、原画像の各画素について、画素が属する平行四辺形に割り当てられた番号に応じて、閾値マトリックスを切り替えながら全ての画素を２値化処理する（Ｓ１６０８）。例えば、注目画素が、番号ｎ（０≦ｎ<Ｎ）が与えられた平行四辺形に属するならば、当該注目画素をｎ番目の閾値マトリックスで２値化する。全ての画素について、２値化処理を行えば、情報埋め込みがなされた２値画像を得ることができる。
【０１０１】
本実施形態では、Ｎ個の閾値マトリックスのパターンを用意しているので、一つの平行四辺形に対して、切り替えによってＮビットの情報を与えることができる（第五実施形態では１ビット）。従って、閾値マトリックス全体に与えられる埋め込み情報量は、Ｎｐｗｐｈ｜ｘ１'ｘ２'＋ｙ１'ｙ２'｜となる。ここで、各パラメータｘ１'、ｙ１'、ｘ２'、ｙ２'は斜交格子系Λ（（ｗ,ｈ）,（ｘ１,ｙ１）,（ｘ２,ｙ２））の粗視化格子Λ（（ｗ,ｈ）,（ｘ１',ｙ１'）,（ｘ２',ｙ２'））のパラメータ、また、ｐｗ、ｐｈはそれぞれ原画像のサイズＷ×Ｈに対して、ｐｗはＷをｗで割った際の整数分、ｐｈはＨをｈで割った際の整数分である。
【０１０２】
ところで、本実施形態で埋め込める情報量Ｎｐｗｐｈ｜ｘ１'ｘ２'＋ｙ１'ｙ２'｜は、同じ斜交格子構造をとる場合には、閾値マトリックスのサイズｗ、ｈにほぼ依存しない。従って、目的の粗視化格子を含むできるだけ小さい斜交格子系を使って各閾値マトリックスを作成しても、画像全体に埋め込める情報量は変わらない（画像の右端、下端の余白が減る分、実際には埋め込める情報量が若干増える場合がある）。例えば、上記実施形態で使用した閾値マトリックス用の斜交格子系Λ（（６４,６４）,（１６,８）,（１２,８））は、同じ斜交格子構造を実現し、上記実施形態と同じく３回粗視化できる、より小さな斜交格子系Λ（（６４,３２）,（８,８）,（１２,４））を使用して作ってもよい。
【０１０３】
以上、本発明の各種実施形態について説明したが、本発明は、使用目的に応じた使い方が可能である。例えば、情報を埋め込んで紙に出力し、紙から光学的に情報を読み取って情報を取り出すような場合には、第一〜第三、第五実施形態で述べたような０１信号の切り替え方式を使うことができる。また、２値化した画像が電子的に保たれ、この画像から情報を取り込めるような場合には、第四又は第六実施形態に述べたような方法で、一つの平行四辺形に多くのビット情報を持たせることが可能である。これは、一度紙に落とされた情報を再度読み込んで情報を取り出す際の雑音を考慮する必要がなく、埋め込んだ情報をそのまま抽出できるため、異なる埋め込み情報に対応する閾値マトリックスの網点成長形態を微妙に変化させることができるためである。
【０１０４】
また、本発明をカラー画像に適用する場合は、カラー画像を構成する各プレーンに分解して、それぞれ処理するようにすることができる。この際に、各プレーン毎に異なる斜交格子系を使用するようにしてもよいし、共通の斜交格子系を使用するようにしてもよい。また、各プレーンでそれぞれ異なる情報を埋め込んでもよいし、各プレーンに共通の情報に埋め込んでおき、読み取りの際にはどれか１プレーンで読み取れればよいようにしてもよい。読み取りの観点からすると、後者の方法の方が確実性が高い。また、全プレーンに情報を埋め込まず、例えば、単一のプレーンのみに情報を埋め込むようにしてもよい。
【図面の簡単な説明】
【０１０５】
【図１】本発明による画像処理システムの構成を示す図である。
【図２】画像処理部の処理の流れを示すフローチャートである。
【図３】斜交格子系Λの例を示す図である。
【図４】粗視化した斜交格子系の例を示す図である。
【図５】斜交格子系の格子点及び格子点に対するドット塊を説明するための図である。
【図６】斜交格子系のドット塊に局所番号付けをした例を示す図である。
【図７】同じ斜交格子系から作成した２種類のドット成長パターンを示す図である。
【図８】粗視化格子の各平行四辺形（格子）に、埋め込み用信号（０１の信号）を与えた状態を示す図である。
【図９】単一の斜交格子系から得られる２種類の閾値マトリックス、及び、２種類の閾値マトリックスを組み合わせて情報を埋め込んだ閾値マトリックスそれぞれで２値化した画像の例を示す図である。
【図１０】斜交格子系のドット塊に局所番号付けをした別の例を示す図である。
【図１１】粗視化格子の各格子に埋め込み用信号と位置情報特定信号を与える例を示す図である。
【図１２】粗視化格子の各格子に埋め込み用信号と位置情報特定信号を与える別の例を示す図である。
【図１３】斜交格子系のドット塊に局所番号付けをした更に別の例を示す図である。
【図１４】粗視化格子の各格子に埋め込み用信号（０１２３の信号）を与えた状態を示す図である。
【図１５】本発明による画像処理システムの構成を示す図である。
【図１６】画像処理部の処理の流れを示すフローチャートである。
【図１７】原画像を粗視化斜交格子系で覆った様子を示す図である。
【符号の説明】
【０１０６】
１００    画像処理システム
１１０    画像入力部
１２０    メモリ部
１３０    画像処理部
１３１    閾値マトリックス作成部
１３２    閾値マトリックス合成部
１３３    画像２値化処理部
１４０    画像出力部
１５０    制御部
１５３１  閾値マトリックス作成部
１５３３  画像２値化処理部
【図２】
2006262277.tif 000003
【図１６】
2006262277.tif 000004
【図１】
2006262277.tif 000005
【図３】
2006262277.tif 000006
【図４】
2006262277.tif 000007
【図５】
2006262277.tif 000008
【図６】
2006262277.tif 000009
【図７】
2006262277.tif 000010
【図８】
2006262277.tif 000011
【図９】
2006262277.tif 000012
【図１０】
2006262277.tif 000013
【図１１】
2006262277.tif 000014
【図１２】
2006262277.tif 000015
【図１３】
2006262277.tif 000016
【図１４】
2006262277.tif 000017
【図１５】
2006262277.tif 000018
【図１７】
2006262277.tif 000019