(57)【特許請求の範囲】
【請求項１】
所定の情報が埋め込まれた画像を像形成した記録物を読み取って該記録物に応じた画像を入力する画像入力手段と、
前記記録物に対する像形成状況に関する関連情報を入力する関連情報入力手段と、
前記入力された画像から前記所定の情報を抽出する抽出手段と、
前記入力された関連情報に基づいて前記抽出手段による抽出精度を切り替える切替手段とを有することを特徴とする画像処理装置。
【請求項２】
前記関連情報とは、記録物が作成された作成日時であることを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記切替手段は、前記作成日時と、前記記録物から該所定の情報を抽出する抽出日時に基づいて該記録物の経過時間を推定し、該推定された経過時間に基づいて前記抽出手段による抽出精度を切り替えることを特徴とする請求項２記載の画像処理装置。
【請求項４】
前記関連情報とは、記録物作成環境情報であることを特徴とする請求項１記載の画像処理装置。
【請求項５】
前記環境情報とは、記録物作成時の温度情報であることを特徴とする請求項４記載の画像処理装置。
【請求項６】
前記環境情報とは、記録物作成時の湿度情報であることを特徴とする請求項４記載の画像処理装置。
【請求項７】
前記環境情報とは、記録物作成時の気圧情報であることを特徴とする請求項４記載の画像処理装置。
【請求項８】
前記切替手段は、各々抽出精度が異なる複数の抽出方法から最適な抽出方法を選択し、該選択された抽出手段により抽出を行うことにより前記抽出精度を切り替えることを特徴とする請求項１記載の画像処理装置。
【請求項９】
所定の情報が埋め込まれた画像を像形成した記録物を読み取って該記録物に応じた画像を入力する画像入力工程と、
前記記録物に対する像形成状況に関する関連情報を入力する関連情報入力工程と、
前記入力された画像から前記所定の情報を抽出する抽出工程と、
前記入力された関連情報に基づいて前記抽出工程による抽出精度を切り替える切替工程とを有することを特徴とする画像処理方法。
【請求項１０】
コンピュータ上で実行されることによって、請求項９に記載の画像処理方法を実現するプログラム。
【請求項１１】
請求項１０記載のプログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像処理装置及び画像処理方法に関し、特に、画像情報中に、該画像情報とは別の情報、例えば音声情報や、テキスト文書情報、画像に関する諸情報、全く別の画像情報等を付加情報として、視覚的に目立たぬように埋め込む画像処理に関する。
【０００２】
【従来の技術】
従来より、画像情報中に、画像に関連のある他の情報を多重化する研究が盛んに行われている。近年では、電子透かし技術と称し、写真、絵画等の画像情報中に、その著作者名や、使用許可の可否等の付加情報を視覚的に判別しづらい様に多重化して、インターネット等のネットワークを通じて流通する技術が標準化されつつある。
【０００３】
また、他の応用分野としては、複写機、プリンタ等の画像出力装置の高画質化に伴い、紙幣、印紙、有価証券等の不正な偽造を防止する目的で、紙上に出力された画像から出力機器、及び、その機体番号を特定する為に、画像中に付加情報を埋め込む技術がある。
【０００４】
例えば、特開平7-123244では、視覚的に感度の低い色差成分、及び彩度成分の高周波域に付加情報を埋め込むことにより情報の多重化を行う技術を提案している。
【０００５】
しかし、前述した技術は以下の問題点がある。図１４は、電子透かし技術の一般的な付加情報の埋め込みを示した図である。画像情報Aと付加情報Bが加算器１４０１を介して多重化され、Cという多重化情報に変化する。図１４は画像情報の実空間領域で付加情報を多重化する例である。この多重化情報Cを各種フィルタリング等の画像処理や、非可逆圧縮等の符号化をせずに流通することが可能であれば、多重化情報Cから付加情報Bを復号することは従来技術でも容易である。インターネット上で流通する画像情報では、多少のノイズ耐性があれば、エッジ強調、平滑化等の画質向上のデジタルフィルタを通しても復号が可能になる。
【０００６】
しかし、今、多重化した画像をプリンタ等の出力装置により印字し、その印字物から付加情報を取り出す場合を想定する。しかも、使用するプリンタが単色あたり２階調から数階調程度の表現能力しか有していないプリンタ出力を想定する。近年、インクジェットプリンタは、染料濃度を薄くしたインクを有したり、出力するドット径を可変に制御したりして、単色あたり数階調表現できる装置が上市されているが、それでも疑似階調処理を用いない限り、写真調の画像の階調性は表現できない。
【０００７】
すなわち、図１４の電子透かし技術を用いた多重化方法をプリンタに出力するという前述の想定では、図１５に示すように、疑似階調処理１５０１により多重化情報CはDという量子化情報に変化し、その後、プリンタ出力１５０２にて紙上に印字されることにより、非常に劣化したEという紙上情報（印字物）に変化する。従って、前述した偽造防止の目的の為に紙上の情報から付加情報を復号するということは、図１５の一連の処理後の紙上情報Eから付加情報Bを復号することになるわけである。この１５０１、１５０２の両処理による情報の変化量は非常に大きく、視覚的に判別できないように付加情報を多重化し、かつ、多重化した付加情報を紙上から正しく復号することは非常に困難なことになる。
【０００８】
また、図１６は、実空間領域ではなく、画像情報をフーリエ変換等を用い、周波数領域に変換してから高周波域等に合成する従来の電子透かし技術の例を示している。図１６において、画像情報を直交変換処理１６０１により周波数領域に変換し、加算器１６０２により、視覚的に判別しづらい特定の周波数に付加情報が加算される。１６０３逆直交変換処理により再び実空間領域に戻された後に、図１５の例と同様に、疑似階調処理、プリンタ出力という大きな変化を伴うフィルタを通ることに相当する。
【０００９】
図１７では、紙上からの付加情報の分離の手順を示している。すなわち、印字物をスキャナ等の画像読み取り装置１７０１を介して、印字物の情報を入力する。入力された情報は、疑似階調処理により階調表現されている画像である為に、逆疑似階調処理である復元処理１７０２を施す。復元処理は、ＬＰＦ（ローパスフィルタ）を用いるのが一般的である。復元後の情報を１７０３により直交変換処理させた後に、１７０４の分離処理において、特定の周波数の電力から埋め込んだ付加情報の分離を行う。
【００１０】
以上の図１６、図１７から明らかなように、付加情報を多重化してから分離するまでに、複雑な多数の処理工程を通過することがわかる。カラー画像の場合には、この一連の処理工程の中にプリンタ特有の色に変換する色変換処理も含まれることになる。このような複雑な処理工程でも良好な分離を実現するためには、非常に耐性の強い信号を入れなくてはならない。良好な画質を維持しつつ、耐性の強い信号を入れるのは困難である。また、処理工程が多数、複雑ということは、多重化、及び分離に要する処理時間が非常に長くなってしまう。
【００１１】
また、前述した特開平7-123244では、高周波域に情報を付加させているが、後段の疑似階調処理で、誤差拡散法を実施した場合には、誤差拡散法特有のハイパスフィルタの特性により、付加情報の帯域が誤差拡散で発生するテクスチャの帯域に埋没してしまい、復号に失敗する恐れが多分にある。また、復号には非常に精度の高いスキャナ装置が必要になる。
【００１２】
すなわち、疑似階調処理が前提である場合には、図１５、図１６の方式は適さないことがわかる。言い換えると、疑似階調処理の特性を大きく活かした付加情報の多重化方式が必要になる。
【００１３】
付加情報の多重化と疑似階調処理の冗長性とを結び付けた例として、特登録2640939、特登録2777800がある。
【００１４】
前者は、組織的ディザ法にて2値化する際に、同一階調を表すディザマトリクスの中からいづれか一つを選定することによって、画像信号中にデータを混入するものである。
【００１５】
しかし、組織的ディザ法では、高解像の、しかも機械的精度の非常に優れたプリンタで無い限り、写真調の高画質の出力は困難である。多少の機械的精度のずれが、横筋等の低周波のノイズとして発生し、紙上では容易に視覚されてくるからである。また、ディザマトリクスを周期的に変化させると、規則的に配列されていたディザにより発生する特定周波数の帯域が乱され、画質的に悪影響を及ぼす。また、ディザマトリクスの種類により階調表現能力が大きく異なる。特に紙上においては、ドットの重なり等における面積率の変化がディザマトリクスによって異なる為、たとえ信号上では均一濃度である領域でもディザマトリクスの切り替えで濃度の変化を引き起こすことも考えられる。
【００１６】
また、復号（分離）側にとって、原信号である画像情報の画素値が不明な状態で、いかなるディザマトリクスで2値化されたかを推測する復号方法では、誤った復号をしてしまう可能性が非常に大きい。
【００１７】
また、後者は、カラーのディザパターン法を用いて、その配列により付加情報を多重化する方法である。この方法でも前者と同様、切り換えにより画質劣化は避けられない。また、前者と比べて、より多くの付加情報を多重化できる代わりに、色成分の配列を変化させることによる色見の変化をもたらし、特に平坦部において画質劣化が大きくなる。また、紙上での復号も更に困難になることが予想される。
【００１８】
いずれにしても、ディザマトリクスを変化させる両者の方法では、画質劣化が大きい割に、復号が困難という問題点を有している。
【００１９】
そこで、本発明の出願人は、先に、誤差拡散法によって生じるテクスチャを利用し、通常の疑似階調処理では発生し得ない量子化値の組み合わせを人工的に作成することにより符号の埋め込みにする方法を提案した。
【００２０】
この方法は、テクスチャの形状が微視的に多少変化するだけなので、視覚的には画質が劣化するものではない。また、誤差拡散法の量子化閾値を変更する方法を用いれば、視覚的に面積階調の濃度値も保たれる為、極めて容易に異種信号の多重化が実現できる。
【００２１】
しかし、前述の提案によると、復号側では、テクスチャが人工的であるか否かを判別しなくてはならない。紙上に出力した印字物では、ドットのよれ等の所望の着弾点位置からのずれにより、テクスチャが良好に再現できない場合がある。
【００２２】
また、カラー画像においては、最も視覚的に感度の低い色成分に多重化する方法が主流であるが、実空間領域でのテクスチャの判別は、他の色成分の影響を受けやすく、多重化情報の分離が困難なものになってしまう。
【００２３】
また、本出願人は、前述した問題点を解決する為に、誤差拡散法の量子化閾値自身を所定の周期性で振幅変調し、この閾値変調の周期性を領域単位に複数種類制御することによって、擬似階調処理の量子化値の発生確率を制御し、この周期性に基づき符号を埋め込む方法を提案した。この方法は、前述したテクスチャの位置や形状を判別する方法に比べ、符号を形成している位相情報よりも、複数の所定周波数帯域での相対的な電力情報が重要な復号因子になる為、紙上においても良好な復号が実現できる。
【００２４】
【発明が解決しようとする課題】
しかし、前述した提案には以下のような問題点がある。
【００２５】
すなわち、印字物からの付加情報の分離となる復号手段を考えた場合に、経時変化による印字物の劣化が大きな問題となる。電子的なファイルであれば、デジタルデータの永年性により、そのような劣化因子は全く考慮する必要がないが、印字物、特にインクジェットプリンタによる紙への出力では、印字直後と、印字してから数日後、数ヶ月後、数年後では、インク、及び記録した印字媒体の特質、堅牢性能により退色、変色が発生し、その変化の度合いも異なってくる。
【００２６】
今までは、復号方式が単独であり、印字した状況がわかり得なかった為、印字直後の印字物においても数年後の退色後の印字物においても、同一の復号方法を用いるしか方法がなかった。また、印字物の作成日時のみならず、作成時の温湿度等の環境を知る手段がなかった為、いかなる環境で印字された印字物でも同様に同一の復号方法を用いるしかなかった。
【００２７】
すなわち、復号における検出精度、復号処理時間の最適設計が実現できる復号システムが提案できなかった。
【００２８】
本発明は、上記課題を解決するためになされたものであり、画像から所定の情報を抽出する際の抽出精度、抽出時間の最適化を実現することができる画像処理装置及び画像処理方法を提供することを目的とする。
【００２９】
【課題を解決するための手段】
上記目的を達成するために、本発明の画像処理装置は、所定の情報が埋め込まれた画像を像形成した記録物を読み取って該記録物に応じた画像を入力する画像入力手段と、前記記録物に対する像形成状況に関する関連情報を入力する関連情報入力手段と、前記入力された画像から前記所定の情報を抽出する抽出手段と、前記入力された関連情報に基づいて前記抽出手段による抽出精度を切り替える切替手段とを有することを特徴とする。
【００３０】
また、本発明の画像処理方法は、所定の情報が埋め込まれた画像を像形成した記録物を読み取って該記録物に応じた画像を入力する画像入力工程と、前記記録物に対する像形成状況に関する関連情報を入力する関連情報入力工程と、前記入力された画像から前記所定の情報を抽出する抽出工程と、前記入力された関連情報に基づいて前記抽出工程による抽出精度を切り替える切替工程とを有することを特徴とする。
【００３１】
【発明の実施の形態】
以下、本発明に係る一実施形態について、図面を参照して詳細に説明する。尚、本実施形態における画像処理装置は、主として、プリンタエンジンへ出力すべき画像情報を作成するコンピュータ内のプリンタドライバソフト、もしくは、アプリケーションソフトとして内蔵することが効率的であるが、複写機、ファクシミリ、プリンタ本体等にハードウエア、及びソフトウエアとして内蔵することも効果がある。
【００３２】
（第１の実施形態）
図１は、第１の実施形態の画像処理システムの構成を表すブロック図である。
【００３３】
１００、１０１、１０２はともに入力端子を示し、１００からは多階調の画像情報を、１０１からは、画像情報の中に埋め込むべき必要な付加情報が入力される。この付加情報は、入力端子１００にて入力される画像情報とは別の情報、例えば音声情報や、テキスト文書情報、入力端子１００にて入力される画像に関する著作権、撮影日時、撮影場所、撮影者等の諸情報、また、全く別の画像情報等、様々な応用が考えられる。
【００３４】
１０２からは、プリンタから印字物が作成される日時に関する情報が入力される。本実施形態では、前述した付加情報に加え、印字日時をヘッダ情報として画像情報に埋め込む。この印字日時は、使用者によるキーボード、もしくはマウス等による入力でも良いし、接続しているコンピュータ、及び、その他のシステム上で管理している時計中の日時でも良い。
【００３５】
１０３は、埋め込み情報多重化装置を示し、視覚的に判別しづらいように、画像情報中に日時情報と付加情報（以下、この２種を合わせて埋め込み情報と称す）を埋め込ませる装置である。この埋め込み情報多重化装置１０３は、埋め込み情報の多重化とともに、入力した多階調の画像情報の量子化をも司る。
【００３６】
１０４はプリンタを示し、埋め込み情報多重化装置１０３で作成された情報をプリンタエンジンにて出力する。プリンタは、インクジェットプリンタ、レーザープリンタ等、疑似階調処理を用いることにより階調表現を実現するプリンタを想定する。
【００３７】
出力された印字物は、スキャナ１０５を用いて印字物上の情報を読み取り、埋め込み情報分離装置１０６によって、印字物中に埋め込まれた埋め込み情報を分離（抽出）し、出力端子１０７に出力する。
【００３８】
図２は、図１の埋め込み情報多重化装置１０３の構成を示すブロック図である。
【００３９】
２００は誤差拡散処理部を示し、入力された画像情報を誤差拡散法を用いた疑似階調処理することによって、入力階調数よりも少ない量子化レベルに変換し、複数画素の量子化値によって面積的に階調性を表現する。誤差拡散処理についての詳細は後述する。
【００４０】
２０１はブロック化部を示し、入力された画像情報を所定領域単位に区分する。このブロック化は矩形でも良いし、矩形以外の領域に区分しても良い。
【００４１】
２０２は量子化条件制御部を示し、ブロック化部２０１にてブロック化した領域単位で量子化条件を変更、制御する。量子化条件制御部２０２は、入力端子１０１で入力された埋め込み情報に基づき、ブロック単位で量子化条件が制御される。
【００４２】
２１０は、ＣＰＵ２１１、ＲＯＭ２１２、ＲＡＭ２１３などからなる制御部である。ＣＰＵ２１１は、ＲＯＭ２１２に保持された制御プログラムに従って、上述した各構成の動作、及び処理を制御する。ＲＡＭ２１３は、ＣＰＵ２１１の作業領域として使用される。
【００４３】
図３は、誤差拡散処理部２００の詳細を表すブロック図である。一般的な誤差拡散処理は、文献R.Floyd & L.Steinberg: “An Adaptive Alogorithm for Spatial Grayscale”, SID Symposium Digest of Paper  pp.36〜37 (1975)に詳細が記載されている。
いま、量子化値が2値である誤差拡散処理を例にして説明する。尚、量子化値は２値に限らず、多値、例えば３値、４値でもよい。
【００４４】
３００は加算器を示し、入力された画像情報の注目画素値と既に2値化された周辺画素の分配された量子化誤差が加算される。量子化条件制御部２０２からの量子化閾値と誤差の加算された加算結果とを比較部３０１にて比較し、所定の閾値よりも大きい場合には“１”を、それ以外では“０”を出力する。例えば、８ビットの精度で画素の階調を表現する場合には、最大値である“２５５”と最小値である“０”で表現するのが一般的である。いま、量子化値が“１”の時に、紙上にドット（インク、トナー等）が印字されると仮定する。
【００４５】
３０２は減算器を示し、量子化結果と前述した加算結果との誤差を算出し、誤差配分演算部３０３に基づいて、今後の量子化処理が施される周辺画素に誤差を配分する。誤差の配分割合は注目画素との相対的な距離に基づいて実験的に設定された誤差の配分テーブル３０４を予め所有しておき、配分テーブルに記された配分割合に基づいて誤差を分配する。
【００４６】
図３の配分テーブル３０４は、周囲４画素分の配分テーブルを示しているが、これに限るものではない。
【００４７】
次に量子化条件制御部２０２を含む全体の動作手順について、図４のフローチャートを基に説明する。いま、量子化値は2値である例について述べる。尚、量子化値は２値に限らず、多値、例えば３値、４値でもよい。
【００４８】
Ｓ４０１は、変数iの初期化を示す。変数iは垂直方向のアドレスをカウントする変数である。
【００４９】
Ｓ４０２は、変数ｊの初期化を示す。変数ｊは水平方向のアドレスをカウントする変数である。
【００５０】
続いてＳ４０３は、i、ｊのアドレス値による判定工程であり、現在の処理アドレスであるi、ｊの座標が多重化処理を実行すべき領域に属しているか否かを判定している。
【００５１】
図５を基に多重化領域について説明する。図５は、水平画素数がWIDTH、垂直画素数がHEIGHTから成る、ひとつの画像イメージを示している。
【００５２】
いま、この画像イメージ中に埋め込み情報を多重化すると仮定する。画像イメージの左上を原点とし、横Ｎ画素、縦Ｍ画素でブロック化をする。本実施形態では、原点を基準点としてブロック化を行なうが、原点から離れた点を基準点として設定しても良い。この画像イメージ中に最大限の情報を多重化する場合に、Ｎ×Ｍのブロックを基準点から配置していく。すなわち、水平方向に配置可能なブロック数をＷ、垂直方向に配置可能なブロック数をＨとすると、以下の関係になる。
W ＝ INT(WIDTH / N)      ・・・式１
H ＝ INT(HEIGHT / M)     ・・・式２
但し、INT( )は( )内の整数部分を示す。
【００５３】
式１、式２において割り切れない剰余画素数が、Ｎ×Ｍのブロックを複数配置した時の端部に相当し、符号多重化領域外となる。
【００５４】
図４中、Ｓ４０３にて、現在処理している注目画素が多重化領域外と判定された場合には、Ｓ４０４にて量子化条件Ｃが設定される。
【００５５】
一方、多重化領域内と判定された場合には、多重化すべき埋め込み情報を読み込む。いま、説明を容易にする為に、埋め込み情報をcode[ ]という配列を用いて、各１ビットづつ表現するものとする。例えば印字日時関連情報を３２ビット分、付加情報を２００ビット分の情報と仮定すると、埋め込み情報は２種が加算された２３２ビット分となり、配列code[ ]はcode[0]からcode[231]まで、各１ビットづつが格納されていることになる。
【００５６】
Ｓ４０５において、変数bitは、以下のように配列code[ ]内の情報を代入する。
bit ＝ code[INT(i / M)×W + INT(j / N)]・・・式３
続いて、Ｓ４０６にて代入した変数bitが“１”か否かを判定する。前述したように、配列code[ ]内の情報は各１ビットずつ格納されている為、変数bitの値も“０”か“１”かの何れかを示すことになる。
【００５７】
Ｓ４０６にて、“０”と判定された場合には、Ｓ４０７にて量子化条件Ａを、“１”と判定された場合には、Ｓ４０８にて量子化条件Ｂを設定する。
【００５８】
続いてＳ４０９では、設定された量子化条件に基づいて量子化処理を行う。この量子化処理は、図３にて説明している誤差拡散法に相当する。
【００５９】
続いて、Ｓ４１０では水平方向変数ｊをカウントアップし、Ｓ４１１にて画像の水平画素数であるWIDTH未満か否かを判定し、 処理画素数がWIDTHになるまで前述の処理を繰り返す。また、水平方向の処理がWIDTH画素数分終了すると、Ｓ４１２にて垂直方向変数ｉをカウントアップし、Ｓ４１３にて画像の垂直画素数であるHEIGHT未満か否かを判定し、 処理画素数がHEIGHTになるまで前述の処理を繰り返す。以上の動作手順により、Ｎ×Ｍ画素よりなるブロック単位で、量子化条件を変更することが可能になる。
【００６０】
続いて、量子化条件A、Ｂ、Ｃの例について説明する。
【００６１】
誤差拡散法における量子化条件は様々な因子があるが、本実施形態では量子化条件は、量子化閾値とする。量子化条件Ｃの使用は、多重化領域外である為に、量子化閾値は何でも良い。前述したように、１画素が８ビットによる階調表現で、量子化レベルが２値の場合には、最大値である“２５５”、及び、最小値である“０”が量子化代表値となるが、その中間値となる“１２８”を量子化閾値として設定することが多い。すなわち、
量子化条件Ｃでは、量子化閾値を“１２８”固定とする条件にする。
【００６２】
量子化条件Ａ、量子化条件Ｂの使用は多重化領域内のブロックである為、量子化条件の違いによる画質の違いを生じさせなければならない。但し、画質の違いは視覚的には判別しにくいように表現し、かつ、紙上から容易に識別できなくてはならない。
【００６３】
図６は、量子化条件Ａ、Ｂを表した例である。図６（ａ）は、量子化条件Ａにおける量子化閾値の変化の周期を示した図である。図中、ひとつのマスを１画素分と想定し、白いマスは固定閾値、灰色のマスを変動閾値とする。
【００６４】
すなわち、図６（ａ）の例では、横８画素、縦４画素のマトリクスを組み、灰色のマスの閾値のみ突出した値を閾値として設定する。
【００６５】
図６（ｂ）は、同様に、量子化条件Ｂにおける量子化閾値の変化の周期を示した図である。図６（ｂ）の例では、図６（ａ）とは異なり、横４画素、縦８画素のマトリクスを組み、灰色のマスの閾値のみ突出した値を閾値として設定する。
【００６６】
いま、前述したように１画素が８ビットの階調値の場合に、一例として、固定閾値として“１２８”、突出した閾値を“４８”と設定する。量子化閾値が低くなると、注目画素の量子化値が“１”（量子化代表値“２５５”）になりやすくなる。すなわち、図６（ａ）、（ｂ）ともに、図中の灰色のマスの並びで量子化値“１”が発生しやすくなる。言い換えると、Ｎ×Ｍ画素のブロック毎に、図６（ａ）の灰色のマスの並びでドットが発生するブロックと、図６（ｂ）の灰色のマスの並びでドットが発生するブロックとが混在することになる。当然、Ｎ×Ｍ画素の同一ブロック内では、図６（a）、もしくは図６（ｂ）のマトリクスを繰り返すことになる。
【００６７】
誤差拡散法における量子化閾値の多少の変更は、画質的には大きな影響を及ぼさない。組織的ディザ法においては、使用するディザパターンによって、階調表現の画質が大きく左右する。しかし、前述したような、規則的に量子化閾値の変化を与えた誤差拡散法では、あくまでも画質を決定する階調表現は誤差拡散法であるため、ドットの並びが多少変化したり、テクスチャの発生が変化したり等、階調表現の画質にはほとんど影響を与えないことになる。
【００６８】
それは、量子化閾値が変化した場合でも、あくまでも信号値と量子化値との差分となる誤差は周囲画素に拡散される為、入力された信号値はマクロ的に保存される。すなわち、誤差拡散法におけるドットの並び、テクスチャの発生に関しては冗長性が非常に大きいことになる。
【００６９】
また、前述した例は、単純に変数bitの値が“０”の時には量子化条件A、“１”の時には量子化条件Bとして切り替えていたが、これに限るものではない。量子化条件の組み合わせによって変数bitを表現することも可能である。例えば、図７に示した様に、N×M画素のブロックを更に４つの小ブロックに分割し、変数bitの値が“０”の時には図７（a）の配置を、“１”の時には、図７（a）の配置を使用して量子化することで違いを出すことも可能である。
【００７０】
次に、埋め込み情報分離装置１０６について説明する。
【００７１】
図８は、埋め込み情報分離装置１０６の構成を示すブロック図である。
【００７２】
８００は、入力端子を示し、スキャナで読み込まれた画像情報が入力される。使用するスキャナの解像度は、印字物を作成するプリンタ解像度と同等以上が好ましい。当然、正確に印字物のドットの点在情報を読み込む為には、サンプリング定理により、スキャナ側はプリンタ側よりも２倍以上の解像度が必要になる。しかし、同等以上であれば、正確でなくとも、ある程度ドットが点在しているのを判別することは可能である。
【００７３】
本実施形態では、説明を容易にするためにプリンタ解像度とスキャナ解像度が同一解像度と想定する。
【００７４】
８０１は、印字物作成関連情報復号部を示し、埋め込まれた付加情報のうち、まずは、ヘッダ情報である印字日時情報を復号する。この印字物作成関連情報復号部８０１は、後述する付加情報復号部Bを使用するのが好ましいが、ここでは限定しない。まずはヘッダ情報から復号するわけである。
【００７５】
８０２は選択部を示し、復号された印字日時情報から、以下の変数Dの計算をする。
D  ＝（復号日時）−（印字日時）  ・・・式４
すなわち、変数Dは、印字物を作成してから、どの程度の時間が経ているかを計算するものである。この場合の復号日時は、印字日時と同様に、使用者によるキーボード、もしくはマウス等による入力でも良いし、接続しているコンピュータ、及び、その他のシステム上で管理している時計中の日時でも良い。
【００７６】
８０３、８０４は、それぞれ、付加情報復号部A、付加情報復号部Bを示し、選択部８０２で算出したDの値に基づいて、一方が選択される。
【００７７】
８０５は、スイッチを示し、以下の選択がなされる。
１） D  ＜  TH  の場合  ・・・  付加情報復号部Aを選択
２）    それ以外の場合  ・・・  付加情報復号部Bを選択
ここで、THは予め実験的、経験的に求めた閾値である。すなわち、余り印字してから月日が経っていないと判断した場合には、付加情報復号部Aを、それ以外では、復号部Bを選択する。
【００７８】
図９は、復号部Aの構成を示すブロック図である。
【００７９】
９０１は、ブロック化部を示し、Ｐ×Ｑ画素単位にブロック化をする。このブロックは、多重化時にブロック化したＮ×Ｍ画素よりも小さくなければならない。すなわち、
Ｐ≦Ｎ、かつ  Ｑ≦Ｍ    ・・・式５
の関係が成り立つ。
【００８０】
また、 Ｐ×Ｑ画素単位のブロック化は、ある一定間隔毎スキップしてブロック化を行う。すなわち、多重化時のＮ×Ｍ画素よりなるブロックと想定される領域内に、Ｐ×Ｑ画素単位のブロックがひとつ内包するようにブロック化する。スキップ画素数は、水平Ｎ画素分、垂直Ｍ画素分が基本となる。
【００８１】
９０２、９０３は、それぞれ特性の異なる空間フィルタＡ、Ｂを示し、９０４は、周辺画素との積和を演算するディジタルフィルタリング部を示している。この空間フィルタの各係数は、多重化時の量子化条件の変動閾値の周期に適応して作成する。
【００８２】
いま、埋め込み情報多重化装置１０６における量子化条件の変更を図６（ａ）、図６（ｂ）の２種の周期性を用いることにより付加情報を多重化したと仮定する。
【００８３】
その時の埋め込み情報分離装置１０６に使用する空間フィルタＡ９０２、空間フィルタＢ９０３の例を、図１０（ａ）、図１０（ｂ）に示す。図中、５×５画素の中央部が注目画素になり、それ以外の２４画素分が周辺画素になる。図中、空白部の画素は、フィルタ係数が“０”であることを表している。図から明らかな様に、図１０（ａ）、（ｂ）はエッジ強調のフィルタになっている。しかも、その強調するエッジの方向性と多重化した時の変動閾値の方向性とが一致している。つまり、図１０（ａ）は図６（ａ）に、また、図１０（ｂ）は図６（ｂ）に一致するように作成する。
【００８４】
９０５は、特徴量検出部を示し、空間フィルタＡ９０２、及び、空間フィルタＢ９０３によるフィルタリング部９０４からのフィルタ後の変換値を基に、なんらかの特徴量を検出する。検出する特徴量の例として、以下のものが考えられる。
１．デジタルフィルタ後のブロック内の変換値の最大値
２．デジタルフィルタ後のブロック内の変換値の最大値と最小値の差分
３．デジタルフィルタ後のブロック内の変換値の分散値
本実施形態では、上記３に示した分散値を特徴量とする。
【００８５】
９０６は、判定部を示し、それぞれの分散値の大小比較をして、分散値が大きい方を符号と判断する。すなわち、空間フィルタAによるフィルタリングの分散値が大きければ、印字時に量子化条件Aで量子化されたものと推測し、反対に空間フィルタBによるフィルタリングの分散値が大きければ、印字時に量子化条件Bで量子化されたものと推測する。
【００８６】
量子化条件は、付加情報の符号（式３のbit）に連動している為、量子化条件が識別できるということは、多重化された符号が特定できることに相当する。すなわち、量子化条件Ａと推測された場合には、bit＝０、量子化条件Ｂと推測された場合には、bit＝１と判断できる。
【００８７】
図１１は、付加情報復号部Bを示すブロック図である。
【００８８】
図１１０１は、ブロック化部を示し、図９の９０２と同じでＰ×Ｑ画素単位にブロック化する。
【００８９】
１１０２は、直交変換部を示し、ブロック化したＰ×Ｑ画素を直交変換する。ただ、２次元の直交変換を行う時には、Ｑ＝Ｐの正方ブロックでブロック化する必要がある。本実施形態では、ＤＣＴ（離散コサイン変換）を例にする。
【００９０】
Ｐ×Ｐ画素よりなるブロックの二次元ＤＣＴの変換係数は、
但し、Ｃ（ｘ）＝１／√２    （ｘ＝０），
Ｃ（ｘ）＝１          （ｘ≠０）  ・・・式６
で与えられる。
【００９１】
１１０３は、クラス分類部を示し、直交変換係数の帯域毎にクラス分類する。
【００９２】
図１２は、Ｐ＝Ｑ＝１６の時のクラス分類の一例を示している。図１２は、１ブロック内の直交変換係数F(u,v)を表していて、左上がＤＣ成分、残りの２５５成分がＡＣ成分となる。
【００９３】
いま、F(4,8)を中心とするクラスＡと、F(8,4)を中心とするクラスＢの２クラスを作成する。２クラスを図中、太線で示す。このクラス分類部１１０３は、全２５６成分をクラス分類する必要はなく、所望の成分を中心とした複数のクラスに分類するだけで良い。この必要なクラス数は、多重化時に量子化制御した条件数に対応する。すなわち、量子化制御した条件数よりもクラス数は多くなることはない。
【００９４】
１１０４は、電力比較部を示し、各クラスの電力の総和を比較する。演算を高速にする為に、発生した変換係数の絶対値を電力の代用としても良い。各クラスの電力の総和を比較することで、付加情報の信号を判断する。
【００９５】
いま、多重化時に図６（ａ）、（ｂ）の量子化条件Ａ、Ｂを施した例について説明する。前述したように、量子化条件Ａ、Ｂを用いた量子化では、各々角度の異なる斜め方向にドットが並ぶテクスチャが発生しやすい。すなわち、量子化条件Ａにおいて量子化したブロックでは、直交変換処理を行うと、図１２のクラスＡに大きな電力が発生する。
【００９６】
一方、量子化条件Ｂにおいて量子化したブロックでは、直交変換処理を行うと、図１２のクラスＢに大きな電力が発生する。
【００９７】
すなわち、クラスＡとクラスＢの電力の大小関係を相対的に比較することにより、該当するブロックの多重化時の量子化条件が、量子化条件Ａ、量子化条件Ｂの何れであるかが判断できる。量子化条件は、付加情報の符号（式３のbit）に連動している為、量子化条件が識別できるということは、多重化された符号が特定できることに相当する。
【００９８】
図４に示したフローチャートの例では、bit＝０を量子化条件Ａ、bit＝１を量子化条件Ｂに設定している為、クラスＡの電力の方が大きい場合には、bit＝０、クラスＢの電力の方が大きい場合には、bit＝１と判断できる。
【００９９】
以上、２種の復号部を説明したが、本実施形態の復号部の切り替えは、復号検出率と復号時間との最適設計に必要である。
【０１００】
すなわち、印字から余り時間の経ていない印字物に関しては、変色、退色が進行していないと判断し、復号時間の速い復号部Ａにて復号する。一方、印字からかなり時間の経過したものに関しては、変色、退色が進行していると判断し、復号時間よりも復号検出率を優先にして、より精度の高い復号方法を用いる。
【０１０１】
このように、印字日時からの経過時間を評価因子にすることにより、変色、退色が予測することができ、より最適な復号部を選択することができる。
【０１０２】
本実施形態では、復号部をＡ、Ｂの２種にて説明したが、当然これ以上でも構わない。また、復号部もこれに限定するものではない。
【０１０３】
また、復号部を同一にして、その検出精度だけを変化させる方法も考えられる。すなわち、より精度が求められる復号部においては、冗長性の高い、繰り返しによる復号が有効である。
【０１０４】
例えば、前述のＰ×Ｑ画素による直交変換を用いる方法（復号部Ｂ）では、Ｐ×Ｑ画素のブロックを空間的に数画素ずらして複数回の直交変換を行い、複数回のクラス比較を通して判断の精度を高める方法が考えられる。その際に、印字日時からの経過時間を評価因子にして、繰り返しの回数を経過時間と共に徐々に増やす様に制御することも有効な方法である。
【０１０５】
当然、複数回の直交変換を用いて判断した方が、復号精度は向上するが、処理時間は余計にかかってしまう。その最適化は経験的に設計するのが好ましい。
【０１０６】
また、退色の程度を予測して補正する方法も考えられる。すなわち、退色により印字物の濃度が薄くなる為、印字日時からの経過時間を評価因子にして、経験的な補正値を算出して、濃度補正をも含めた復号方法も考えられる。
【０１０７】
その際には、経過時間に依存した濃度補正カーブなるものを複数種テーブルとして予め用意しておいて、復号時に補正するものである。
【０１０８】
また、色材（インク）により退色の程度が異なる場合には、復号処理に使用する色を変化する方法も考えられる。例えば、仮にマゼンタが他の色（シアン、イエロー、ブラック）よりも退色しやすい傾向があれば、経過時間を評価因子にして、ＲＧＢのうち、マゼンタの補色となるＧ成分からの復号影響度合いを変化させることも有効である。
【０１０９】
すなわち、経過時間が経っていない場合には、Ｇ成分の復号を中心に判断して、経過時間が経つほどにＧ成分の復号の影響を減らして判断する方法である。
【０１１０】
以上説明したように、上記第１の実施形態によれば、印字日時からの経過時間に基づいて画像に埋め込まれた所定の情報を抽出する抽出方法を切り替えることにより、抽出時の抽出精度、抽出時間の最適化を実現することができる。
【０１１１】
（第２の実施形態）
図１３に、第２の実施形態の画像処理システムの構成を示す。
【０１１２】
図１３は、図１に示した構成と一部異なっているので、異なる点のみ説明する。すなわち、本実施形態では、前述した第１の実施形態の印字日時情報の代わりに、端子１３０１から印字環境情報をヘッダ情報として埋め込むものである。
【０１１３】
印字環境情報とは、印字物を作成した時の温度、湿度、気圧（高度）等が考えられるが、本実施形態では温度のみを対象とする。印字時の温度は、使用者によるキーボード、もしくはマウス等による入力でも良いし、プリンタ内蔵の温度検知部からの信号によるものでも良い。今、例えば、温度情報を１６ビット分、付加情報を２００ビットとすると、合計２１６ビットの埋め込み情報を多重化することになる。
【０１１４】
復号部は前述した第１の実施形態と同様である。本実施形態では、前述した第１の実施形態の変数Dの換わりに、温度情報を変数Tとして、復号部の切り替え、もしくは復号精度の制御を行うことを特徴とする。
【０１１５】
印字時の温度は、インクジェットプリンタや電子写真系のプリンタにとって、ドット径が変化する要因となる。すなわち、高温時に印字したものは、ドット径が大きくなり、常温時よりも復号がより困難になる恐れがある。逆に低温時に印字したものは、ドット径が小さくなり、同様に常温時よりも復号が困難になる恐れがある。そこで、変数Tは、常温時を中心にして、高温、もしくは、低温に変化するにつれ、復号精度を向上させるような制御をすることが必要だ。復号精度の向上は、前述したように、復号時間とのトレードオフになる為に、実験的に最適な方法を設定する必要がある。
【０１１６】
以上、印字環境を温度を例にして説明したが、前述した他の環境情報でも同様の制御が実現できる。
【０１１７】
また、印字日時情報、各種印字環境情報を合わせてヘッダにして埋め込み情報にして多重化する方法も考えられる。
【０１１８】
また、多重化方法、付加情報の分離方法は限定しない。いかなる、多重化方法、分離方法においても、印字日時からの経過時間、もしくは、印字時の環境情報に基づいて分離方法を制御する構成は有効である。
【０１１９】
以上説明したように、上記第２の実施形態によれば、印字時の環境情報基づいて画像に埋め込まれた所定の情報を抽出する抽出方法を切り替えることにより、抽出時の抽出精度、抽出時間の最適化を実現することができる。
【０１２０】
（他の実施形態）
また、本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタ等）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置等）に適用しても良い。
【０１２１】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１２２】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１２３】
【発明の効果】
以上説明したように、本発明によれば、印字日時からの経過時間、もしくは、印字時の環境情報に基づいて画像に埋め込まれた所定の情報を抽出する抽出方法を切り替えることにより、抽出時の抽出精度、抽出時間の最適化を実現することができる。
【０１２４】
また、本発明により、容易に画像情報への付加情報の多重化が実現できる為、画像情報中に音声情報や秘匿情報を埋め込むサービス、アプリケーションが提供できる。また、紙幣、印紙、有価証券等の不正な偽造行為を抑制したり、画像情報の著作権侵害を防止したりすることができる。
【図面の簡単な説明】
【図１】本実施形態の画像処理システムを示す要部ブロック図
【図２】図１の埋め込み情報多重化装置を示す要部ブロック図
【図３】図２の誤差拡散処理部を示す要部ブロック図
【図４】量子化制御部を含む多重化処理の動作手順を示すフローチャート
【図５】ブロック化の一例
【図６】量子化条件における量子化閾値変化の一例
【図７】量子化条件の組み合わせの配置例
【図８】図１の埋め込み情報分離装置を示す要部ブロック図
【図９】図８の付加情報復号部Ａの構成を示すブロック図
【図１０】空間フィルタの一例
【図１１】図８の付加情報復号部Ｂの構成を示すブロック図
【図１２】二次元周波数領域での周波数ベクトルの説明図
【図１３】第２の実施形態の埋め込み情報分離装置を示す要部ブロック図
【図１４】従来法の多重化の一例を示すブロック図
【図１５】従来法の多重化の一例を示すブロック図
【図１６】従来法の多重化の一例を示すブロック図
【図１７】従来法の分離の一例を示すブロック図
【図１】
0003684178.tif 000002
【図２】
0003684178.tif 000003
【図３】
0003684178.tif 000004
【図４】
0003684178.tif 000005
【図５】
0003684178.tif 000006
【図６】
0003684178.tif 000007
【図７】
0003684178.tif 000008
【図８】
0003684178.tif 000009
【図９】
0003684178.tif 000010
【図１０】
0003684178.tif 000011
【図１１】
0003684178.tif 000012
【図１２】
0003684178.tif 000013
【図１３】
0003684178.tif 000014
【図１４】
0003684178.tif 000015
【図１５】
0003684178.tif 000016
【図１６】
0003684178.tif 000017
【図１７】
0003684178.tif 000018