(57)【特許請求の範囲】
【請求項１】
第１付加情報を埋め込んだ画像であって、当該第１付加情報を分割してなる複数の第１部分情報のそれぞれが、当該画像を分割してなる複数の単位領域のいずれかに符号化して埋め込まれた画像を取得する画像取得手段と、
前記画像取得手段によって取得した画像において前記複数の単位領域のそれぞれに埋め込まれている前記第１部分情報を検出する部分情報検出手段と、
前記第１付加情報とは異なる第２付加情報を分割してなる複数の第２部分情報のそれぞれを、前記複数の単位領域のいずれかに符号化して埋め込む手段であって、前記部分情報検出手段によって検出された第１部分情報とこれから埋め込む第２部分情報との差異が少なくなるような単位領域に、前記複数の第２部分情報のそれぞれを埋め込む埋め込み手段と、
を含むことを特徴とする画像処理装置。
【請求項２】
前記埋め込み手段は、前記部分情報検出手段によって検出された第１部分情報とこれから埋め込む第２部分情報との差異が少なくなるように、前記複数の第２部分情報の少なくとも一部の埋め込み先を他の第２部分情報の埋め込み先と入れ替えて、当該複数の第２部分情報を埋め込むことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記複数の第２部分情報のそれぞれを、前記複数の単位領域のいずれかに埋め込む場合に、前記部分情報検出手段によって検出された第１部分情報とこれから埋め込む第２部分情報との差異が少なくなるように、前記複数の第２部分情報の順序を並べ替える並べ替え手段をさらに含み、
前記埋め込み手段は、前記並べ替え手段によって並べ替えられた第２部分情報のそれぞれを、対応する単位領域に符号化して埋め込むことにより、前記第２付加情報を埋め込んだ画像を生成する
を含むことを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記複数の第２部分情報のそれぞれには、当該第２部分情報の前記第２部分情報内における位置を識別する識別情報が付与されており、
前記並べ替え手段は、前記各単位領域に埋め込まれている第１部分情報と前記識別情報が付与された第２部分情報との差異が少なくなるように、前記複数の第２部分情報の順序を並べ替える
ことを特徴とする請求項１から３のいずれか一項に記載の画像処理装置。
【請求項５】
前記部分情報検出手段は、前記第１部分情報を検出する際に、当該第１部分情報に含まれる変更を制限すべき部分を特定し、
前記並べ替え手段は、前記変更を制限すべき部分であって変更対象となる部分が少なくなるように、前記複数の第２部分情報の順序を並べ替える
ことを特徴とする請求項１から４のいずれか一項に記載の画像処理装置。
【請求項６】
前記複数の第２部分情報のそれぞれには、当該第２部分情報を検出する際の誤り訂正に用いられる誤り訂正符号が含まれ、
前記並べ替え手段は、前記変更を制限すべき部分であって変更対象となる部分が、前記誤り訂正符号によって訂正可能な情報量に応じて定められる数以下となるように、前記複数の第２部分情報の順序を並べ替える
ことを特徴とする請求項５記載の画像処理装置。
【請求項７】
第１付加情報を埋め込んだ画像であって、当該第１付加情報を分割してなる複数の第１部分情報のそれぞれが、当該画像を分割してなる複数の単位領域のいずれかに符号化して埋め込まれた画像を取得する画像取得手段、
前記画像取得手段によって取得した画像において前記複数の単位領域のそれぞれに埋め込まれている前記第１部分情報を検出する部分情報検出手段、及び
前記第１付加情報とは異なる第２付加情報を分割してなる複数の第２部分情報のそれぞれを、前記複数の単位領域のいずれかに符号化して埋め込む手段であって、前記部分情報検出手段によって検出された第１部分情報とこれから埋め込む第２部分情報との差異が少なくなるような単位領域に、前記複数の第２部分情報のそれぞれを埋め込む埋め込み手段、
としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及びプログラムに関する。
【背景技術】
【０００２】
画像に関連する付加情報を当該画像に対して付加する方法の一つとして、この付加情報を表す符号画像を生成し、生成した符号画像を対象の画像内に埋め込む技術が提案されている。例えば特許文献１には、原稿画像内に埋め込まれたコードデータを検出し、原稿画像内からこのコードデータに対応するデータを削除した後、削除されたコードデータと同じコードデータを原稿画像内に埋め込む技術が示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２１５１２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、付加情報を符号化した符号画像が埋め込まれた画像に対して、これまで埋め込まれていた付加情報とは異なる付加情報を新たに埋め込む場合に、変更する符号画像の量を少なくすることのできる画像処理装置、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
請求項１記載の発明は、第１付加情報を埋め込んだ画像であって、当該第１付加情報を分割してなる複数の第１部分情報のそれぞれが、当該画像を分割してなる複数の単位領域のいずれかに符号化して埋め込まれた画像を取得する画像取得手段と、前記画像取得手段によって取得した画像において前記複数の単位領域のそれぞれに埋め込まれている前記第１部分情報を検出する部分情報検出手段と、前記第１付加情報とは異なる第２付加情報を分割してなる複数の第２部分情報のそれぞれを、前記複数の単位領域のいずれかに符号化して埋め込む手段であって、前記部分情報検出手段によって検出された第１部分情報とこれから埋め込む第２部分情報との差異が少なくなるような単位領域に、前記複数の第２部分情報のそれぞれを埋め込む埋め込み手段と、を含むことを特徴とする画像処理装置である。
【０００６】
請求項２記載の発明は、請求項１に記載の画像処理装置であって、前記埋め込み手段は、前記部分情報検出手段によって検出された第１部分情報とこれから埋め込む第２部分情報との差異が少なくなるように、前記複数の第２部分情報の少なくとも一部の埋め込み先を他の第２部分情報の埋め込み先と入れ替えて、当該複数の第２部分情報を埋め込むことを特徴とする。
【０００７】
請求項３記載の発明は、請求項１に記載の画像処理装置であって、前記複数の第２部分情報のそれぞれを、前記複数の単位領域のいずれかに埋め込む場合に、前記部分情報検出手段によって検出された第１部分情報とこれから埋め込む第２部分情報との差異が少なくなるように、前記複数の第２部分情報の順序を並べ替える並べ替え手段をさらに含み、前記埋め込み手段は、前記並べ替え手段によって並べ替えられた第２部分情報のそれぞれを、対応する単位領域に符号化して埋め込むことにより、前記第２付加情報を埋め込んだ画像を生成することを特徴とする。
【０００８】
請求項４記載の発明は、請求項１から３のいずれか一項に記載の画像処理装置であって、前記複数の第２部分情報のそれぞれには、当該第２部分情報の前記第２部分情報内における位置を識別する識別情報が付与されており、前記並べ替え手段は、前記各単位領域に埋め込まれている第１部分情報と前記識別情報が付与された第２部分情報との差異が少なくなるように、前記複数の第２部分情報の順序を並べ替えることを特徴とする。
【０００９】
請求項５記載の発明は、請求項１から４のいずれか一項に記載の画像処理装置であって、前記部分情報検出手段は、前記第１部分情報を検出する際に、当該第１部分情報に含まれる変更を制限すべき部分を特定し、前記並べ替え手段は、前記変更を制限すべき部分であって変更対象となる部分が少なくなるように、前記複数の第２部分情報の順序を並べ替えることを特徴とする。
【００１０】
請求項６記載の発明は、請求項５記載の画像処理装置であって、前記複数の第２部分情報のそれぞれには、当該第２部分情報を検出する際の誤り訂正に用いられる誤り訂正符号が含まれ、前記並べ替え手段は、前記変更を制限すべき部分であって変更対象となる部分が、前記誤り訂正符号によって訂正可能な情報量に応じて定められる数以下となるように、前記複数の第２部分情報の順序を並べ替えることを特徴とする。
【００１１】
請求項７記載の発明は、第１付加情報を埋め込んだ画像であって、当該第１付加情報を分割してなる複数の第１部分情報のそれぞれが、当該画像を分割してなる複数の単位領域のいずれかに符号化して埋め込まれた画像を取得する画像取得手段、前記画像取得手段によって取得した画像において前記複数の単位領域のそれぞれに埋め込まれている前記第１部分情報を検出する部分情報検出手段、及び前記第１付加情報とは異なる第２付加情報を分割してなる複数の第２部分情報のそれぞれを、前記複数の単位領域のいずれかに符号化して埋め込む手段であって、前記部分情報検出手段によって検出された第１部分情報とこれから埋め込む第２部分情報との差異が少なくなるような単位領域に、前記複数の第２部分情報のそれぞれを埋め込む埋め込み手段、としてコンピュータを機能させるためのプログラムである。
【発明の効果】
【００１２】
請求項１、２、３及び７記載の発明によれば、付加情報を符号化した符号画像が埋め込まれた画像に対して、これまで埋め込まれていた付加情報とは異なる付加情報を新たに埋め込む場合に、本発明を採用しない場合と比較して、変更する符号画像の量を少なくすることができる。
【００１３】
請求項４記載の発明によれば、第２付加情報が埋め込まれた画像の読み取りの際に、順序を並べ替えて埋め込まれた複数の部分情報を、識別情報によって元の順序に戻すことができる。
【００１４】
請求項５記載の発明によれば、画像に埋め込まれた第１部分情報の中に、変更を制限すべき部分が含まれる場合に、この部分を変更する量が少なくなるように第２部分情報の並べ替え順序を決定できる。
【００１５】
請求項６記載の発明によれば、変更を制限すべき部分を変更したとしても、誤り訂正符号によって訂正可能な範囲となるようにすることができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施の形態に係る画像処理装置の概略構成を示す構成図である。
【図２】第１付加情報が埋め込まれた入力画像の一例を示す図である。
【図３】入力画像内に画定される単位領域の一例を示す図である。
【図４】各単位領域に設定される同期信号領域の一例を示す図である。
【図５】本発明の実施の形態に係る画像処理装置が実現する機能を示す機能ブロック図である。
【図６】本発明の実施の形態に係る画像処理装置が実行する処理の流れの一例を示すフロー図である。
【図７Ａ】入力画像内における各第１部分情報の埋め込み先の一例を示す図である。
【図７Ｂ】並べ替えを行わない場合の、入力画像内における各第２部分情報の埋め込み先の一例を示す図である。
【図７Ｃ】並べ替えを行う場合の、入力画像内における各第２部分情報の埋め込み先の一例を示す図である。
【図８】本発明の実施の形態に係る画像処理装置が実行する処理の流れの別の例を示すフロー図である。
【発明を実施するための形態】
【００１７】
以下、本発明の実施の形態について、図面に基づき詳細に説明する。
【００１８】
図１は、本実施形態に係る画像処理装置１の概略構成を示す構成図である。本実施形態に係る画像処理装置１は、制御部１１と、記憶部１２と、入出力部１３と、を含んで構成されている。さらに、入出力部１３を介して画像読み取り装置２及び画像形成装置３と接続されている。
【００１９】
制御部１１は、ＣＰＵ等のプログラム制御デバイスであって、記憶部１２に記憶されるプログラムに従って各種の情報処理を実行する。本実施形態において制御部１１は、付加情報が埋め込まれた画像のデータを処理対象として、その中に埋め込まれた付加情報を検出し、これとは別の新たな付加情報を埋め込む処理（すなわち、画像に埋め込まれた付加情報の更新処理）を行う。なお、制御部１１が実行する処理の具体例については、後述する。
【００２０】
記憶部１２は、ＲＡＭやＲＯＭ等のメモリ素子を含んで構成され、制御部１１が実行するプログラムや各種のデータを記憶する。また、記憶部１２は制御部１１のワークメモリとしても機能する。
【００２１】
入出力部１３は、画像読み取り装置２や画像形成装置３との間でデータの送受信を行うための通信インタフェースである。画像読み取り装置２は、スキャナ等であって、紙などの記録媒体上に形成された画像を読み取って、当該読み取られた画像のデータを入出力部１３経由で画像処理装置１に対して出力する。また、画像形成装置３は、プリンタ等であって、入出力部１３を介して画像処理装置１から入力された画像を、紙などの記録媒体上に形成する。
【００２２】
本実施形態において、画像読み取り装置２は、付加情報が符号画像として埋め込まれた画像を読み取って、読み取られた画像のデータを画像処理装置１に対して出力する。ここで「付加情報」とは、画像に付加される情報をいう。以下では、画像読み取り装置２から入力されて画像処理装置１の処理対象となる画像を、入力画像Ｉ１という。また、入力画像Ｉ１に埋め込まれている付加情報を第１付加情報Ａ１という。さらに、付加情報が埋め込まれる前の画像を元画像Ｉｏという。すなわち、入力画像Ｉ１は、元画像Ｉｏに対して、第１付加情報Ａ１の内容（ビット列）を表す符号画像を合成することによって生成される。
【００２３】
画像処理装置１は、入力画像Ｉ１に埋め込まれている第１付加情報Ａ１を検出した後、元画像Ｉｏに対して新たに付加すべき付加情報（以下、第２付加情報Ａ２という）が符号画像として埋め込まれた画像を生成する。すなわち、入力画像Ｉ１に埋め込まれている第１付加情報Ａ１を表す符号画像を消去し、代わりに第２付加情報Ａ２を表す符号画像が合成された画像を生成する。以下では、この第２付加情報Ａ２が埋め込まれた画像を出力画像Ｉ２という。画像処理装置１は、出力画像Ｉ２を画像形成装置３に対して出力する。これを受けて画像形成装置３は、出力画像Ｉ２を紙などの記録媒体上に形成する。
【００２４】
本実施形態において、第２付加情報Ａ２は、第１付加情報Ａ１とは異なる内容の情報である。第２付加情報Ａ２は、入力画像Ｉ１から検出された第１付加情報Ａ１の内容に基づいて生成したものであってよい。一例として、付加情報を用いて元画像Ｉｏに対して実行された複写の回数を管理する場合、元画像Ｉｏに対して、複写回数を表す付加情報が埋め込まれる。画像処理装置１は、画像読み取り装置２が読み取った入力画像Ｉ１のデータを取得すると、その中に埋め込まれた第１付加情報Ａ１を検出する。そして、第１付加情報Ａ１が示す複写回数に１を加算した値を第２付加情報Ａ２として埋め込んだ出力画像Ｉ２を生成し、画像形成装置３に対して出力する。これにより、画像読み取り装置２によって読み取られた画像を画像形成装置３によって記録媒体上に形成する複写処理が実行される場合、複写処理が実行されるごとに、元画像Ｉｏに埋め込まれる複写回数には１が加算されていくことになる。
【００２５】
ここで、本実施形態において元画像Ｉｏに対してどのように付加情報が埋め込まれるかについて、説明する。本実施形態では、複数の画像要素を元画像Ｉｏ内に一定の規則に従って配置することにより、情報の埋め込みが行われる。ここで、「画像要素」とは、符号画像を構成する個々の要素をいい、それぞれの画像要素は１ビットに対応している。これらの画像要素は、その有無や形状、配置位置などによって１又は０のいずれかを表す。このようなビット列を表す画像要素のパターンとしては、各種のものが提案されている。例えばグリフパターンと呼ばれる方式では、右上から左下方向に延びる斜線画像が１を、逆に左上から右下方向に延びる斜線画像が０を、それぞれ表している。この０又は１を表す斜線画像を一定間隔で元画像Ｉｏ内に配置することにより、０と１からなるビット列が埋め込まれる。図２は、元画像Ｉｏである文書画像にこのような符号画像が埋め込まれた入力画像Ｉ１の一例を示している。また、元画像Ｉｏに付加情報を埋め込む方式としては、ドットの有無によって１又は０を表す方式もある。この方式では、元画像Ｉｏ内に一定間隔ごとに設定された配置位置に対して、ドット（点画像）が配置されていれば１が、配置されていなければ０が、それぞれ表される。以上説明したように、付加情報を構成する個々のビットに画像要素が対応づけられる方式によれば、元画像Ｉｏ内に配置された個々の画像要素を書き換えることで、元画像Ｉｏ内に埋め込まれた付加情報をビット単位で更新することが可能になる。
【００２６】
さらに本実施形態では、付加情報は、予め定められたサイズの複数の情報に分割され、元画像Ｉｏを分割してなる複数の領域（以下、単位領域Ｉｕという）のそれぞれに一つずつ埋め込まれている。すなわち、元画像Ｉｏ内の各単位領域Ｉｕには、第１付加情報Ａ１の一部を構成する予め定められたビット数の情報が埋め込まれる。以下、第１付加情報Ａ１を予め定められたビット数ごとに分割することによって生成される複数の情報のそれぞれを、第１部分情報Ａ１ｐという。また、第１付加情報Ａ１からｎ個の第１部分情報Ａ１ｐが生成される場合、個々の第１部分情報Ａ１ｐを、先頭から順に、第１部分情報Ａ１ｐ（１），Ａ１ｐ（２），・・・，Ａ１ｐ（ｎ）と表記する。ここで、ｎは２以上の整数である。
【００２７】
具体的に、第１付加情報Ａ１を元画像Ｉｏに埋め込む際には、まず埋め込み対象となる情報に誤り訂正符号（ＣＲＣ符号やチェックサムなど）を付加して第１付加情報Ａ１を生成する。そして、この第１付加情報Ａ１を予め定められたビット数ごとに分割する。さらに、第１付加情報Ａ１を分割して得られる個々の部分に対して、当該部分の第１付加情報Ａ１内における位置（順序）を識別するための識別番号（シーケンス番号）が付加される。最後に、この識別情報が付加された情報を誤り訂正符号化することにより、第１部分情報Ａ１ｐが生成される。なお、各第１部分情報Ａ１ｐの誤り訂正符号化に用いられる誤り訂正符号は、例えばＢＣＨ符号などであってよい。こうして生成された識別番号付きの第１部分情報Ａ１ｐは、それぞれ元画像Ｉｏ内の単位領域Ｉｐに埋め込まれる。
【００２８】
図３は、それぞれ第１部分情報Ａ１ｐが埋め込まれた複数の単位領域Ｉｕを含んだ入力画像Ｉ１を模式的に示す図である。同図の例では、元画像Ｉｏは、縦方向に延びる３本の直線及び横方向に延びる３本の直線によって格子状に分割されており、これにより４列４行で計１６個の単位領域Ｉｕ（１）〜Ｉｕ（１６）が画定されている。そして、単位領域Ｉｕ（１）には第１部分情報Ａ１ｐ（１）が、単位領域Ｉｕ（２）には第１部分情報Ａ１ｐ（２）が、・・・、単位領域Ｉｕ（ｎ）には第１部分情報Ａ１ｐ（ｎ）が、それぞれ埋め込まれている。
【００２９】
また、各単位領域Ｉｕには、元画像Ｉｏ内における単位領域Ｉｕの位置を画像処理装置１が特定するために、同期信号領域が設けられている。同期信号領域は、単位領域Ｉｕの周縁に沿って設けられており、この同期信号領域内には同期信号が埋め込まれている。図４は、このような同期信号領域の一例を示す図である。この図においては、一つの単位領域Ｉｕ内に埋め込まれている各画像要素によって表されるビットが、模式的に示されている。この図の例では、単位領域Ｉｕの上端及び左端の網がけがされた部分が同期信号領域となっており、１を示す画像要素が埋め込まれている。そして、その他の領域には、１又は０のいずれかを示す画像要素が規則的に配置されており、これによって第１部分情報Ａ１ｐの内容が示されている。画像処理装置１は、入力画像Ｉ１の中からまず同期信号領域を検出することにより、入力画像Ｉ１内に設定された各単位領域Ｉｕの位置を特定し、その内部に埋め込まれている第１部分情報Ａ１ｐを検出する。なお、入力画像Ｉ１内には、同期信号領域に代えて、その他の方法で各単位領域Ｉｕの位置を示す目印等が配置されてもよい。例えば各単位領域Ｉｕの四隅の位置に、不可視のインク等によりマーカー画像を配置することとすれば、このマーカー画像によって各単位領域Ｉｕの位置が特定される。
【００３０】
次に、画像処理装置１が実現する機能について説明する。画像処理装置１は、機能的に、図５に示すように、入力画像取得部２１と、第１部分情報検出部２２と、第２部分情報生成部２３と、並べ替え処理部２４と、付加情報埋め込み部２５と、を含んで構成されている。これらの機能は、制御部１１が記憶部１２に記憶されているプログラムを実行することにより、実現される。このプログラムは、例えば光ディスク等のコンピュータ読み取り可能な各種の情報記憶媒体に格納されて画像処理装置１に提供されてもよいし、インターネット等の通信手段を介して画像処理装置１に提供されてもよい。
【００３１】
入力画像取得部２１は、画像読み取り装置２から入力される入力画像Ｉ１のデータを取得する。取得された入力画像Ｉ１のデータは、一時的に記憶部１２内のワークメモリ領域に格納される。
【００３２】
第１部分情報検出部２２は、入力画像取得部２１が取得した入力画像Ｉ１内の各単位領域Ｉｕに埋め込まれている第１部分情報Ａ１ｐを検出する。具体的に、第１部分情報検出部２２は、入力画像Ｉ１内の各単位領域Ｉｕの位置を特定する。そして、各単位領域Ｉｕに埋め込まれている符号画像を検出し、その符号画像が表すビット列を第１部分情報Ａ１ｐとして復号化する。さらに、この第１部分情報Ａ１ｐに付加されている誤り訂正符号を用いて誤り訂正処理を実行する。各単位領域Ｉｕから検出され、誤り訂正処理がなされた複数の第１部分情報Ａ１ｐを順に連結することによって、入力画像Ｉ１内に埋め込まれていた第１付加情報Ａ１が復元される。なお、第１部分情報Ａ１ｐは、後述する第２部分情報Ａ２ｐと同様に、その順序が並べ替えられて入力画像Ｉ１に対して埋め込まれている場合もあり得る。この場合には、各第１部分情報Ａ１ｐに含まれる識別情報に従って各第１部分情報Ａ１ｐを並べ替えてから、連結処理を行うことによって、第１付加情報Ａ１が復元される。
【００３３】
第２部分情報生成部２３は、まず入力画像Ｉ１に新たに埋め込むべき第２付加情報Ａ２を生成する。例えばこの第２付加情報Ａ２は、第１部分情報検出部２２によって得られた第１付加情報Ａ１に基づいて生成され、ＣＲＣ符号等の誤り訂正符号が付加された情報であってよい。第２部分情報生成部２３は、第１付加情報Ａ１の場合と同様に、この第２付加情報Ａ２を予め定められたビット数ごとに複数の部分に分割することにより、第２部分情報Ａ２ｐを生成する。なお、この場合のビット数は、第１部分情報Ａ１ｐを生成する際に第１付加情報Ａ１を分割するビット数と同じビット数であってよい。具体的に、第２部分情報生成部２３は、第１部分情報Ａ１ｐの場合と同様に、第２付加情報Ａ２を分割して得られる各部分に、当該部分の第２付加情報Ａ２内における位置（順序）を示す識別情報を付加して、誤り訂正符号化することにより、第２部分情報Ａ２ｐを生成する。こうして生成された複数の第２部分情報Ａ２ｐが、それぞれ入力画像Ｉ１内の複数の単位領域Ｉｕのいずれかに埋め込まれることになる。なお、以下では、第２付加情報Ａ２がｍ個の第２部分情報Ａ２ｐに分割される場合に、これらの部分情報を、それぞれ先頭から順に第２部分情報Ａ２ｐ（１），Ａ２ｐ（２），・・・，Ａ２ｐ（ｍ）と表記する。ここで、ｍは２以上の整数であるが、必ずしも入力画像Ｉ１に埋め込まれていた第１部分情報Ａ１ｐの数ｎと同数でなくともよい。ただし、入力画像Ｉ１は予めｍ以上の個数の単位領域Ｉｕに分割されている必要がある。
【００３４】
並べ替え処理部２４は、第２部分情報生成部２３によって生成された複数の第２部分情報Ａ２ｐを並べ替えて、入力画像Ｉ１に埋め込むべき第２部分情報Ａ２ｐの順序を決定する。このとき並べ替え処理部２４は、入力画像Ｉ１内の各単位領域Ｉｕにこれまで埋め込まれていた情報と、これから埋め込むべき情報と、の差異が全体として少なくなるように、第２部分情報Ａ２ｐの順序を並べ替える。このような並べ替え処理の具体例については、後述する。ここで、各第２部分情報Ａ２ｐには識別情報が付加されているので、第２部分情報Ａ２ｐを元の順序と入れ替えて入力画像Ｉ１内に埋め込んだとしても、第２付加情報Ａ２を復元する際には、各単位領域Ｉｕに埋め込まれた第２部分情報Ａ２ｐを検出した後、これらの部分情報をそれぞれに付与された識別情報に従って並べ替えることにより、元の第２付加情報Ａ２が復元される。
【００３５】
付加情報埋め込み部２５は、並べ替え処理部２４によって並べ替えられた第２部分情報Ａ２ｐのそれぞれを、入力画像Ｉ１内の対応する単位領域Ｉｕに符号画像として埋め込む。このとき、既に埋め込まれていた第１部分情報Ａ１ｐについては、消去されることになる。ただし、付加情報埋め込み部２５は、第１部分情報Ａ１ｐを表す符号画像の全てを消去する必要はない。既に述べたように、符号画像はそれぞれ１ビットに対応する複数の画像要素から構成される。そのため、付加情報埋め込み部２５は、各単位領域Ｉｕに埋め込まれている第１部分情報Ａ１ｐと、これから埋め込むべき第２部分情報Ａ２ｐと、を比較して、変化のあったビットに対応する画像要素だけを更新し、変化のないビットを表す画像要素についてはそのままにしておけばよい。これにより、入力画像Ｉ１に対して修正すべき箇所が少なくなり、出力画像Ｉ２を生成する際に実行すべき画像処理の量が軽減される。さらに本実施形態では、並べ替え処理部２４によって、各単位領域Ｉｕにおいてそれまで埋め込まれていた情報とこれから埋め込むべき情報との差異が少なくなるように、第２付加情報Ａ２の並べ替えが行われている。そのため、このような並べ替えが行われずにそのままの順序で各第２部分情報Ａ２ｐが埋め込まれる場合と比較して、入力画像Ｉ１に対して必要な画像更新処理の量が軽減される。付加情報埋め込み部２５は、入力画像Ｉ１に対してこのような付加情報の更新処理を実行することによって生成した出力画像Ｉ２を、画像形成装置３に対して出力する。
【００３６】
以下、並べ替え処理部２４が実行する並べ替え処理の第１の例について、図６のフロー図に基づいて説明する。なお、以下では一例として、第１付加情報Ａ１を分割して４個の第１部分情報Ａ１ｐが生成されており、第２付加情報Ａ２を分割して同じく４個の第２部分情報Ａ２ｐが生成されるものとする。
【００３７】
まず、並べ替え処理部２４は、複数の第２部分情報Ａ２ｐを並べ替える場合の可能な順列を生成し、その各々に対して順列番号を付与する（Ｓ１）。前述したようにここでは４個の第２部分情報Ａ２ｐが第２部分情報生成部２３によって生成されているので、この４個の第２部分情報Ａ２ｐを順に並べた場合の順列の数は、４！＝２４になる。これらの順列のそれぞれに、０〜２３までの順列番号を付与することにする。
【００３８】
次に並べ替え処理部２４は、処理対象の順列番号を示す変数（ここでは変数ｉとする）を０に初期化する（Ｓ２）。そして、変数ｉの順列番号によって特定される順列に従って第２部分情報Ａ２ｐを並べ替えて構成されるビット列の全体を、第１部分情報検出部２２によって検出された複数の第１部分情報Ａ１ｐから構成されるビット列と比較し、両者の間の差異量Ｄｉを算出する（Ｓ３）。ここで差異量Ｄｉは、２つのビット列の間で互いに同じ位置にあって互いに異なるビット（差分ビット）の数（ハフマン距離）とする。
【００３９】
続いて並べ替え処理部２４は、Ｓ３で算出された差異量Ｄｉが、当該時点における最小の差異量Ｄｍｉｎよりも小さいか否かを判定する（Ｓ４）。ここで最小の差異量Ｄｍｉｎは、これまで処理の対象となった順列のうちで、最も差異量Ｄｉが小さくなる順列における差異量Ｄｉの値である。新たにＳ３で算出された差異量Ｄｉがそれまでの処理における最小の差異量Ｄｍｉｎより小さければ、新たに算出された差異量Ｄｉの値で最小の差異量Ｄｍｉｎを更新するとともに、当該時点における変数ｉの値を、差異量Ｄｉが最も小さくなる順列の順列番号として、記憶部１２に記憶する（Ｓ５）。なお、最初にＳ３の処理が実行された時点では、まだ最小の差異量Ｄｍｉｎの値は存在しないことになるので、算出された差異量Ｄｉの値をそのまま最小の差異量Ｄｍｉｎとして記録すればよい。Ｓ４において差異量Ｄｉが最小の差異量Ｄｍｉｎ以上と判定された場合には、Ｓ５の処理をスキップしてＳ６に進む。
【００４０】
さらに並べ替え処理部２４は、変数ｉの値を１増加して（Ｓ６）、Ｓ１で順列番号が付与された全ての順列について処理が実行されたかを判定する（Ｓ７）。変数ｉの値が２４になっていなければ、全ての順列についてまだ処理が完了していないので、Ｓ３に戻って次の順列について、処理が繰り返される。全ての順列について処理が完了すれば、その時点での最小の差異量Ｄｍｉｎが算出された順列を、第２部分情報Ａ２ｐを並べ替えるべき順列として決定する（Ｓ８）。
【００４１】
具体例として、各第１部分情報Ａ１ｐ及び各第２部分情報Ａ２ｐが、以下のビット列だったとする。
第１部分情報Ａ１ｐ（１）：００１１１０
第１部分情報Ａ１ｐ（２）：０１０００１
第１部分情報Ａ１ｐ（３）：１０１０１１
第１部分情報Ａ１ｐ（４）：１１１１１０
第２部分情報Ａ２ｐ（１）：００１０１０
第２部分情報Ａ２ｐ（２）：０１１１００
第２部分情報Ａ２ｐ（３）：１０００１１
第２部分情報Ａ２ｐ（４）：１１０００１
ここで、第１部分情報Ａ１ｐ及び第２部分情報Ａ２ｐは、いずれも４個ずつ存在するので、それぞれを識別するための識別情報は、２ビットあればよいことになる。上記の例では、各部分情報の先頭２ビットが識別情報を表している。図７Ａは、４個の第１部分情報Ａ１ｐ（１）〜Ａ１ｐ（４）の入力画像Ｉ内における埋め込み先の一例を示している。
【００４２】
この例において、各第２部分情報Ａ２ｐを並べ替えずにそのまま入力画像Ｉ１に埋め込むことにした場合、第１部分情報Ａ１ｐ（１）と第２部分情報Ａ２ｐ（１）との間には１個、第１部分情報Ａ１ｐ（２）と第２部分情報Ａ２ｐ（２）との間には３個、第１部分情報Ａ１ｐ（３）と第２部分情報Ａ２ｐ（３）との間には１個、第１部分情報Ａ１ｐ（４）と第２部分情報Ａ２ｐ（４）との間には４個、それぞれ差分ビットが存在する。そのため、この順列の差異量Ｄｉは９と算出され、これらの差分ビットに対応する符号画像を書き換える必要が生じる。なお、図７Ｂは、４個の第２部分情報Ａ２ｐ（１）〜Ａ２ｐ（４）を並べ替えずに入力画像Ｉ内に埋め込む場合の、各第２部分情報Ａ２ｐの入力画像Ｉ１内における埋め込み先を示している。これに対して、第２部分情報Ａ２ｐをＡ２ｐ（１），Ａ２ｐ（４），Ａ２ｐ（３），Ａ２ｐ（２）の順序に並べ替えた場合、第１部分情報Ａ１ｐ（１）と第２部分情報Ａ２ｐ（１）との間には１個、第１部分情報Ａ１ｐ（２）と第２部分情報Ａ２ｐ（４）との間には１個、第１部分情報Ａ１ｐ（３）と第２部分情報Ａ２ｐ（３）との間には１個、第１部分情報Ａ１ｐ（４）と第２部分情報Ａ２ｐ（２）との間には２個、それぞれ差分ビットが存在し、差異量Ｄｉは最小の５となる。したがって、この順序で並べ替えてから各第２部分情報Ａ２ｐを対応する単位領域Ｉｕ内に埋め込むこととすれば、書き換えるべき符号画像の量が少なくなる。図７Ｃは、このように４個の第２部分情報Ａ２ｐ（１）〜Ａ２ｐ（４）を並べ替えた場合の、各第２部分情報Ａ２ｐの入力画像Ｉ１内における埋め込み先を示している。
【００４３】
以上説明したように、図６に示した並べ替え処理の第１の例によれば、複数の第２部分情報Ａ２ｐを並べ替えて得られる全ての順列について、入力画像Ｉ１にこれまで埋め込まれていた情報とこれから埋め込もうとする情報との差異量Ｄｉが算出され、最も差異が小さくなるような順列が特定される。これにより、更新すべきビット数が最小化される。
【００４４】
なお、図６のフロー図では全ての順列について差異量Ｄｉを算出して、差異量Ｄｉが最小となる順列を選択することとしたが、並べ替え処理部２４は、必ずしも全ての順列について差異量Ｄｉを算出せずともよい。例えば図６のフローにおいて、Ｓ３の処理の後、算出された差異量Ｄｉが予め定められた基準値以下であるか否かを判定し、基準値以下の場合には、その時点で差異量Ｄｉが基準値以下となった順列に従って各第２部分情報Ａ２ｐを並べ替えることとし、処理を終了してもよい。こうすれば、必ずしも全ての順列について差異量Ｄｉを算出せずとも、差異量Ｄｉが十分小さな順列が選択される。
【００４５】
また、並べ替え処理部２４は、複数の第２部分情報Ａ２ｐのうち、一部の第２部分情報Ａ２ｐについては、順に、まだ対応する第２部分情報Ａ２ｐが決定されていない第１部分情報Ａ１ｐの中から差異が最も小さくなるような第１部分情報Ａ１ｐを選択し、残りの第２部分情報Ａ２ｐについては、図６に示したようなフローにより、並べ替えを行って差異量Ｄｉが最も小さくなる順列を特定することとしてもよい。具体的に、全部でｍ個の第２部分情報Ａ２ｐのうち、半分の（ｍ／２）個の第２部分情報Ａ２ｐについては、一つずつ順に対応する第１部分情報Ａ１ｐを選択していく。前述した各４個の部分情報の例では、まず第２部分情報Ａ２ｐ（１）については、４個の第１部分情報Ａ１ｐのうち、第１部分情報Ａ１ｐ（１）に対する差異量Ｄｉが１個で最小なので、第１部分情報Ａ１ｐ（１）が埋め込まれていた単位領域Ｉｕに第２部分情報Ａ２ｐ（１）を埋め込むこととする。次に、第２部分情報Ａ２ｐ（２）については、既に対応する第２部分情報Ａ２ｐが決定された第１部分情報Ａ１ｐ（１）を除く第１部分情報Ａ１ｐ（２），Ａ１ｐ（３）及びＡ１ｐ（４）のうち、最も差異量Ｄｉが小さくなる第１部分情報Ａ１ｐ（４）に対応させる。この後、残った第２部分情報Ａ２ｐ（３）及びＡ２ｐ（４）については、残った第１部分情報Ａ１ｐ（２）及びＡ１ｐ（３）のいずれと対応させるべきかを、図６のフローに示す手順で決定する。こうすれば、ｍ個の第２部分情報Ａ２ｐを並べ替えてなる全ての順列について差異量Ｄｉを算出せずとも、比較的差異量Ｄｉの小さな順列が選択される。
【００４６】
次に、並べ替え処理部２４が実行する並べ替え処理の第２の例について説明する。
【００４７】
この第２の例では、予め第１部分情報検出部２２が、入力画像Ｉ１内に埋め込まれている第１部分情報Ａ１ｐを検出する際に、変更を制限すべき部分を併せて検出する。ここで、変更を制限すべき部分は、当該部分を表す画像要素が、元画像Ｉｏを構成する画像要素と重なってしまっているなどの理由で、削除や変更が困難な状態になっている部分を指す。例えば図２の入力画像Ｉ１においても、付加情報を表す斜線画像と、元画像Ｉｏを構成する文字画像と、が重なっている箇所が存在しており、このような斜線画像のいくつかは、書き換えが困難な場合が考えられる。このように、変更を制限すべき部分か否かは符号画像を構成する画像要素ごとに判断されるため、変更を制限すべき部分は、第１部分情報Ａ１ｐを構成する各ビット単位で特定される。そのため、以下では変更を制限すべき１ビットの部分を変更制限ビットという。
【００４８】
具体的に、第１部分情報検出部２２は、第１付加情報Ａ１を構成する各ビットを表す画像要素について、当該画像要素の周辺領域を含む画像に対して、検出されたビット（０又は１）を別のビットに書き換える画像処理を実行する。すなわち、０を表す画像要素が検出された場合には、当該画像要素を削除して１を表す画像要素を合成する画像処理を実行し、１を表す画像要素が検出された場合には、当該画像要素を削除して０を表す画像要素を合成する画像処理を実行する。そして、新たなビットに書き換えられた画像要素が正しく検出されるか否かを判定する。その結果、変更後の画像要素が正しく検出されなかったビットについては、変更制限ビットであると判定する。
【００４９】
なお、第１付加情報Ａ１を構成する全てのビットについてこのような処理を実行することとすると、必要な画像処理の量が増加してしまう。そこで、第１部分情報検出部２２は、入力画像Ｉ１から検出された情報の誤り訂正処理を実行した結果、誤って検出されたと判定されたビット（すなわち、誤り訂正がなされたビット）についてのみ、このような変更制限ビットか否かの判定処理を実行することとしてもよい。
【００５０】
並べ替え処理部２４は、以上説明した第１部分情報検出部２２の実行結果を用いて、これまで入力画像Ｉ１内に埋め込まれていた情報とこれから埋め込むべき情報との差異が少なくなるように、かつ、変更制限ビットを変更する量が少なくなるように、第２部分情報Ａ２ｐの順序を並べ替える。特に並べ替え処理部２４は、変更対象となってしまう変更制限ビットが予め定められた量を超えないように、第２部分情報Ａ２ｐの並べ替えを行う。
【００５１】
以下、この第２の例における並べ替え処理の流れについて、図８のフロー図に基づいて説明する。
【００５２】
まず並べ替え処理部２４は、前述した図６のフローにおけるＳ１及びＳ２と同様に、第２部分情報Ａ２ｐを並べ替える複数の順列を生成し（Ｓ１１）、変数ｉを０に初期化する（Ｓ１２）。
【００５３】
次に並べ替え処理部２４は、変数ｉの順列番号によって特定される順列に従って並べ替えた場合における第２部分情報Ａ２ｐのそれぞれを、第１部分情報検出部２２によって検出された複数の第１部分情報Ａ１ｐのうち、当該第２部分情報Ａ２ｐの順序に対応する第１部分情報Ａ１ｐと比較する。そして、この両者の間で互いに異なり、かつ変更制限ビットに該当するビット（以下、変更対象ビットという）の数を計数する（Ｓ１３）。この変更対象ビットは、変更制限ビットであるにも関わらず、変更対象となってしまうビットを指している。さらに並べ替え処理部２４は、いずれかの第２部分情報Ａ２ｐにおいて、変更対象ビットの数が予め定められた閾値Ｔｈ以上になるか否かを判定し（Ｓ１４）、このような条件を満たす場合には、変数ｉによって特定される順列の採用を中止し、Ｓ１８に進む。
【００５４】
ここで、閾値Ｔｈは、各部分情報に付加される誤り訂正符号によって訂正可能な情報量（ビット数）に応じて、それ以下の値となるように定められることとする。具体的には、例えば訂正可能なビット数の１／２など、訂正可能なビット数に対して一定の割合となる値に決定されてよい。訂正可能なビット数を超えるビット数の変更制限ビットが変更されてしまうと、このようなビットで検出エラーが生じた場合に、誤り訂正処理によって誤り訂正ができなくなってしまうからである。訂正可能なビット数に対して十分小さなビット数であれば、変更対象ビットとして選択されてしまったとしても、多量のノイズ等が混入しない限り、このような変更対象ビットにおいて発生した検出エラーが誤り訂正処理によって訂正される可能性が高くなる。
【００５５】
続いて並べ替え処理部２４は、図６におけるＳ３からＳ８までの処理と同様の処理を実行する。すなわち、変数ｉの順列番号によって特定される順列で第２部分情報Ａ２ｐを並べ替えた場合の差異量Ｄｉを算出し（Ｓ１５）、その値が最小の差異量Ｄｍｉｎよりも小さいか否かを判定する（Ｓ１６）。そして、Ｓ１５で算出された差異量Ｄｉが最小の差異量Ｄｍｉｎより小さければその値で最小の差異量Ｄｍｉｎを更新する（Ｓ１７）。さらに、変数ｉの値を１インクリメントし（Ｓ１８）、全ての順列について処理が実行されたかを判定する（Ｓ１９）。全ての順列についてまだ処理が完了していなければＳ１３に戻って次の順列について処理が繰り返され、全ての順列について処理が完了すれば、その時点での最小の差異量Ｄｍｉｎが算出された順列を、第２部分情報Ａ２ｐを並べ替えるべき順列として決定する（Ｓ２０）。
【００５６】
以上説明した並べ替え処理の第２の例によれば、変更制限ビットが一定量以上変更の対象となってしまい、その結果新たに埋め込まれた第２付加情報Ａ２を復元できなくなってしまうことが回避される。
【００５７】
なお、本発明の実施の形態は以上説明したものに限られない。例えば以上の説明においては画像処理装置１、画像読み取り装置２、及び画像形成装置３は互いに分離した装置であることとしたが、これらは一体的に構成された複写機等であってもよい。また、以上の説明においては画像読み取り装置２によって読み取られた入力画像Ｉ１を処理対象としたが、入力画像Ｉ１はこのようなものに限られない。例えば入力画像Ｉ１は、カメラ等の撮像デバイスによって撮像された画像であってもよい。
【００５８】
また、符号画像の埋め込み方式や誤り訂正処理のアルゴリズムも、以上の説明で例示したものに限らず各種のものであってよい。なお、以上の説明においては部分情報を構成する各ビットが一つの画像要素に対応することとしているが、一つの画像要素が例えば２ビットなど複数ビットの情報を表す符号画像の埋め込み方式も存在する。この場合には、第１部分情報Ａ１ｐと第２部分情報Ａ２ｐとを一つの画像要素によって表されるビット数ごとに比較することによって、更新が必要な画像要素の数を差異量Ｄｉとして算出すればよい。
【００５９】
また、以上の説明においてはまず並べ替え処理部２４が第２部分情報Ａ２ｐ全体の並べ替え順序を決定することとしたが、これとは別の処理手順で各第２部分情報Ａ２ｐの埋め込み先の単位領域を決定してもよい。一例として、付加情報埋め込み部２５は、予め定められた順序で各第２部分情報Ａ２ｐを各単位領域に埋め込む場合の各第２部分情報Ａ２ｐの埋め込み先を、基準位置として仮決めする。そして、これら複数の第２部分情報Ａ２ｐの少なくとも一部の埋め込み先を、差異量Ｄｉが小さな値となるように他の第２部分情報Ａ２ｐの埋め込み先と入れ替えることによって、最終的な各第２部分情報Ａ２ｐの埋め込み先の単位領域を決定する。このような手順によっても、全体として元から埋め込まれていた第１付加情報Ａ１とこれから埋め込む第２付加情報Ａ２との差異が小さくなるような単位領域に、各第２部分情報Ａ２ｐが埋め込まれる。
【００６０】
具体例として、付加情報埋め込み部２５は、先頭の第２部分情報Ａ２ｐ（１）から順に注目第２部分情報Ａ２ｐを選択して、当該注目第２部分情報Ａ２ｐの埋め込み先の基準位置よりも差異量Ｄｉが小さくなるような埋め込み先の単位領域を検索する。そして、差異量Ｄｉが小さくなるような埋め込み先が検索されれば、この検索された埋め込み先を基準位置とする第２部分情報Ａ２ｐとの間で、埋め込み先の入れ替えを行う。このような処理を、複数の第２部分情報Ａ２ｐを順に新たな注目第２部分情報Ａ２ｐとして選択して繰り返すことによって、全体として差異量Ｄｉが小さくなるように各第２部分情報Ａ２ｐの埋め込み先の単位領域を決定する。
【符号の説明】
【００６１】
１  画像処理装置、２  画像読み取り装置、３  画像形成装置、１１  制御部、１２  記憶部、１３  入出力部、２１  入力画像取得部、２２  第１部分情報検出部、２３  第２部分情報生成部、２４  並べ替え処理部、２５  付加情報埋め込み部。
【図１】
0005471580.tif 000002
【図２】
0005471580.tif 000003
【図３】
0005471580.tif 000004
【図４】
0005471580.tif 000005
【図５】
0005471580.tif 000006
【図６】
0005471580.tif 000007
【図７Ａ】
0005471580.tif 000008
【図７Ｂ】
0005471580.tif 000009
【図７Ｃ】
0005471580.tif 000010
【図８】
0005471580.tif 000011