(57)【特許請求の範囲】
【請求項１】
原稿をオン状態またはオフ状態である複数の画素により表す画像データを入力する入力手段と、
前記入力手段により入力された画像データの各画素の状態から当該画像データの特徴量を算出する特徴量算出手段と、
前記特徴量算出手段により算出された特徴量に基づいて、前記画像データの総画素数より少ない複数の前記画素により表される透かしパターンを生成する特徴量パターン生成手段と、
前記入力手段により入力された画像データからそれぞれ異なる属性を有する複数の領域を特定する領域特定手段と、
前記領域特定手段により特定された領域を表すとともに、画像データを構成する各画素について、透かしパターンを埋め込む領域に含まれる画素と透かしパターンを埋め込まない領域に含まれる画素の数に基づいて算出される数値である領域情報を生成する領域情報生成手段と、
前記領域情報生成手段により生成された領域情報に基づいて前記画像データの総画素数より少ない複数の画素の状態により表される透かしパターンを生成する領域情報パターン生成手段と、
前記入力手段により入力された画像データのうちの前記領域特定手段で特定された領域の画素の所定の一部または全部に、前記特徴量パターン生成手段により生成された透かしパターンと前記領域情報パターン生成手段により生成された透かしパターンとを繰り返し埋め込む埋込手段と、
前記埋込手段により透かしパターンが埋め込まれた画像データを出力する出力手段であって、前記画像データおよび前記透かしパターンの少なくとも一方がオン状態である画素をオン状態とし、その他の画素をオフ状態とする画素の集合を透かし付画像データとして出力する出力手段と
を備えることを特徴とする画像処理装置。
【請求項２】
原稿を表す画像データを取得する取得手段と、
画像データから透かしパターンを抽出する抽出手段と、
前記抽出手段による抽出結果に基づいて前記取得手段により取得された画像データに透かしパターンが含まれるか否かを判断する第１の判断手段と、
前記第１の判断手段により前記画像データに透かしパターンが含まれると判断された場合に、当該透かしパターンが抽出された領域の中に透かしパターンを埋め込む領域を特定する情報である領域情報を表す領域情報パターンが存在するか否かを判断する第２の判断手段と、
前記第２の判断手段により前記領域情報パターンが存在すると判断された場合に、前記領域情報パターンから前記領域情報を特定し、当該領域情報により特定される領域と前記透かしパターンが抽出された領域との一致の度合いを比較する比較手段と、
前記比較手段により比較された一致の度合いが所定の割合に満たない場合に、前記領域情報により特定される領域と前記透かしパターンが抽出された領域との不一致領域を塗り潰した画像を形成する画像形成手段と
を備えることを特徴とする画像形成装置。
【請求項３】
原稿をオン状態またはオフ状態である複数の画素により表す画像データに透かしパターンを埋め込むためのプログラムであって、
コンピュータに、
入力された前記画像データの各画素の状態から当該画像データの特徴量を算出する第１の処理と、
前記第１の処理により算出された特徴量に基づいて、前記画像データの総画素数より少ない複数の前記画素により表される透かしパターンを生成する第２の処理と、
前記画像データからそれぞれ異なる属性を有する複数の領域を特定する第３の処理と、
前記第３の処理により特定された領域を表すとともに、画像データを構成する各画素について、透かしパターンを埋め込む領域に含まれる画素と透かしパターンを埋め込まない領域に含まれる画素の数に基づいて算出される数値である領域情報を生成する第４の処理と、
前記第４の処理により生成された領域情報に基づいて前記画像データの総画素数より少ない複数の画素の状態により表される透かしパターンを生成する第５の処理と、
前記画像データのうちの前記第３の処理で特定された領域の画素の所定の一部または全部に、前記第２の処理により生成された透かしパターンと前記第５の処理により生成された透かしパターンとを繰り返し埋め込む第６の処理と、
前記第６の処理により透かしパターンが埋め込まれた画像データを出力する処理であって、前記画像データおよび前記透かしパターンの少なくとも一方がオン状態である画素をオン状態とし、その他の画素をオフ状態とする画素の集合を透かし付画像データとして出力する第７の処理と
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書の改竄を防止するための技術に関する。
【背景技術】
【０００２】
近年、情報セキュリティの必要性はいや増すばかりであり、文書等の改竄を防止する技術が求められている。例えば、特許文献１には、文書（印刷物）を読み取って得られた電子情報からその文書に固有の依存情報をハッシュ関数等により作成し、これをバーコード形式で余白部分に付加した複写物を生成する技術が開示されている。この技術によれば、文書の内容が変更されると依存情報も変化するため、文書の改竄を容易に検知することができると記載されている。
【特許文献１】特開平８−２９７７４３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、このようなバーコードを消去することは、極めて容易である。そのため、特許文献１に記載の技術を用いて複写物を作成したとしても、修正液等でバーコードを消去してしまえば依存情報の算出はできなくなるので、改竄も自由に行えるようになってしまう。それゆえ、特許文献１に記載の技術は、改竄の検知や防止のための現実的な解決手段とは言い難いのが実際のところである。
【０００４】
本発明はかかる事情に鑑みてなされたものであり、その目的は、改竄の隠蔽を困難にし、文書の改竄を抑制することを可能にする技術を提供することにある。
【課題を解決するための手段】
【０００５】
上述の目的を達成するために、本発明は、原稿をオン状態またはオフ状態である複数の画素により表す画像データを入力する入力手段と、前記入力手段により入力された画像データの各画素の状態から当該画像データの特徴量を算出する特徴量算出手段と、前記特徴量算出手段により算出された特徴量に基づいて、前記画像データの総画素数より少ない複数の前記画素により表される透かしパターンを生成する特徴量パターン生成手段と、前記入力手段により入力された画像データからそれぞれ異なる属性を有する複数の領域を特定する領域特定手段と、前記領域特定手段により特定された領域を表すとともに、画像データを構成する各画素について、透かしパターンを埋め込む領域に含まれる画素と透かしパターンを埋め込まない領域に含まれる画素の数に基づいて算出される数値である領域情報を生成する領域情報生成手段と、前記領域情報生成手段により生成された領域情報に基づいて前記画像データの総画素数より少ない複数の画素の状態により表される透かしパターンを生成する領域情報パターン生成手段と、前記入力手段により入力された画像データのうちの前記領域特定手段で特定された領域の画素の所定の一部または全部に、前記特徴量パターン生成手段により生成された透かしパターンと前記領域情報パターン生成手段により生成された透かしパターンとを繰り返し埋め込む埋込手段と、前記埋込手段により透かしパターンが埋め込まれた画像データを出力する出力手段であって、前記画像データおよび前記透かしパターンの少なくとも一方がオン状態である画素をオン状態とし、その他の画素をオフ状態とする画素の集合を透かし付画像データとして出力する出力手段とを備える画像処理装置を提供する。
このような画像処理装置によれば、画像データの各画素の状態を表す特徴量に基づいて生成される透かしパターンが、原稿の一部または全部に埋め込まれた複写物が形成される。この透かしパターンは、画像データの特徴量に応じて変化するため、文書の改竄を容易に検出することが可能である。また、例えば写真等のイメージ領域には透かしパターンを埋め込まないようにすることができ、画質の著しい低下を抑制することが可能となる。さらに、透かしパターンが埋め込まれた領域とそうでない領域の判別を容易に行うことが可能となる。
【０００９】
また、本発明は、原稿を表す画像データを取得する取得手段と、画像データから透かしパターンを抽出する抽出手段と、前記抽出手段による抽出結果に基づいて前記取得手段により取得された画像データに透かしパターンが含まれるか否かを判断する第１の判断手段と、前記第１の判断手段により前記画像データに透かしパターンが含まれると判断された場合に、当該透かしパターンが抽出された領域の中に透かしパターンを埋め込む領域を特定する情報である領域情報を表す領域情報パターンが存在するか否かを判断する第２の判断手段と、前記第２の判断手段により前記領域情報パターンが存在すると判断された場合に、前記領域情報パターンから前記領域情報を特定し、当該領域情報により特定される領域と前記透かしパターンが抽出された領域との一致の度合いを比較する比較手段と、前記比較手段により比較された一致の度合いが所定の割合に満たない場合に、前記領域情報により特定される領域と前記透かしパターンが抽出された領域との不一致領域を塗り潰した画像を形成する画像形成手段とを備える画像形成装置を提供する。
【００１０】
また、本発明は、上述の画像処理装置が実行する画像処理方法や、この方法を実現するプログラムとしても特定され得るものである。例えば、そのプログラムとは、原稿をオン状態またはオフ状態である複数の画素により表す画像データに透かしパターンを埋め込むためのプログラムであって、コンピュータに、入力された前記画像データの各画素の状態から当該画像データの特徴量を算出する第１の処理と、前記第１の処理により算出された特徴量に基づいて、前記画像データの総画素数より少ない複数の前記画素により表される透かしパターンを生成する第２の処理と、前記画像データからそれぞれ異なる属性を有する複数の領域を特定する第３の処理と、前記第３の処理により特定された領域を表すとともに、画像データを構成する各画素について、透かしパターンを埋め込む領域に含まれる画素と透かしパターンを埋め込まない領域に含まれる画素の数に基づいて算出される数値である領域情報を生成する第４の処理と、前記第４の処理により生成された領域情報に基づいて前記画像データの総画素数より少ない複数の画素の状態により表される透かしパターンを生成する第５の処理と、前記画像データのうちの前記第３の処理で特定された領域の画素の所定の一部または全部に、前記第２の処理により生成された透かしパターンと前記第５の処理により生成された透かしパターンとを繰り返し埋め込む第６の処理と、前記第６の処理により透かしパターンが埋め込まれた画像データを出力する処理であって、前記画像データおよび前記透かしパターンの少なくとも一方がオン状態である画素をオン状態とし、その他の画素をオフ状態とする画素の集合を透かし付画像データとして出力する第７の処理とを実行させるプログラムである。
【発明の効果】
【００１１】
以上のように、本発明によれば、改竄の隠蔽を困難にし、文書の改竄を抑制することが可能となる。
【発明を実施するための最良の形態】
【００１２】
以下、図面を参照しながら本発明の実施の形態を説明する。以下に示す実施形態においては、コピー機能とプリント機能を兼備するいわゆる複合機に本発明を適用した場合を例示して説明する。なお、説明の便宜上、以下に示す実施形態においては、原稿に形成された画像はモノクロの２値画像を前提とする。
【００１３】
［実施形態の構成］
図１は、本発明の一実施形態である複合機ＭＦＰの構成を示したブロック図である。同図に示すように、この複合機ＭＦＰの構成は、画像処理装置１０と、画像読取装置２０と、画像形成装置３０と、入出力装置４０とに大別される。画像読取装置２０はいわゆるスキャナであり、原稿を光学的に読み取って画像データを生成する。画像読取装置２０が生成する画像データは、主走査方向および副走査方向に配列された複数の画素からなるビットマップデータである。画像形成装置３０はいわゆるプリンタであり、画像処理装置１０から供給された画像データに応じた画像を用紙等のシート状物に形成する。ここでは、画像形成装置３０はモノクロのプリンタであるとする。入出力装置４０はタッチパネルや各種ボタンなどからなり、操作者からの指示を受け付けるとともに各種指示を表示する。
【００１４】
画像処理装置１０は、入力された画像データに改竄を防止するための画像処理を施し、画像形成装置３０に供給する。画像処理装置１０は、制御部１０１と、記憶部１０２と、ネットワークインタフェース部１０３と、スキャナインタフェース部１０４と、プリンタインタフェース部１０５と、ユーザインタフェース部１０６とを備えている。
【００１５】
制御部１０１はＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）およびＲＡＭ（Random Access Memory）を備えた演算装置であり、ＣＰＵがＲＡＭをワークエリアとして用いてＲＯＭあるいは記憶部１０２に記憶されたプログラムを実行することにより、画像処理装置１０の各部の動作を制御する。また、制御部１０１は画像データに対して画像処理を実行する。記憶部１０２はＨＤＤ（Hard Disk Drive）等の不揮発性の記憶装置であり、制御部１０１が実行するプログラムや画像処理の際に必要なデータ等を記憶している。
【００１６】
ネットワークインタフェース部１０３はＬＡＮ（Local Area Network）等のネットワークＮＷに接続するためのインタフェースであり、このネットワークＮＷを介してパーソナルコンピュータＰＣと画像データ等のやりとりを行う。パーソナルコンピュータＰＣは、ページ記述言語（ＰＤＬ）で記述されたデータ（以下「ＰＤＬデータ」という。）を画像データとして出力するものとする。スキャナインタフェース部１０４、プリンタインタフェース部１０５およびユーザインタフェース部１０６は、それぞれ、画像読取装置２０、画像形成装置３０および入出力装置４０に接続するためのインタフェースである。
【００１７】
［動作］
以上の構成のもと、複合機ＭＦＰにおいては、ネットワークＮＷや画像読取装置２０を介して原稿となる画像データの入力を受け付け、画像データに応じた画像を用紙に形成する複写処理が実行される。この複写処理の実行に際して、複合機ＭＦＰは、画像データに透かし画像を重ね合わせて出力する処理や、画像データから透かし画像を読み取って改竄を検出する処理を併せて実行する。以下では、これらの処理の具体的な内容を説明する。
【００１８】
なお、複合機ＭＦＰは、画像データの全体に透かし画像を重ね合わせる第１のモードと、画像データの一部の領域に透かし画像を重ね合わせる第２のモードとを選択的に実行可能に構成されており、それぞれのモードに応じて処理内容が変化する。そこで、以下では、第１のモードを動作例１、第２のモードを動作例２として説明する。なお、第１のモードは、文書の改竄をより困難にするために適したモードであり、第２のモードは、文書の判読性をより良好に維持するために適したモードである。
【００１９】
また、説明の便宜上、画像読取装置２０が生成する画像データは２値のビットマップデータであるとする。すなわち、この画像データは、印字することを意味する画素と印字しないことを意味する画素とにより構成されている。以下では、印字することを意味する画素の状態を「オン状態」といい、オン状態の画素を「オン画素」という。また、印字しないことを意味する画素の状態を「オフ状態」といい、オフ状態の画素を「オフ画素」という。
【００２０】
［動作例１］
図２は、第１のモードにおいて、複合機ＭＦＰの画像処理装置１０が透かし画像付きの画像データを生成する処理を示したフローチャートである。同図に沿って説明すると、まず、画像処理装置１０の制御部１０１は、画像データをネットワークインタフェース部１０３またはスキャナインタフェース部１０４を介して受信（すなわち入力）する（Ｓ１１０１）。次に、制御部１０１は、入力された画像データがビットマップデータとＰＤＬデータのいずれであるかを判断する（Ｓ１１０２）。画像データがＰＤＬデータであれば、制御部１０１は画像データにラスタライズ処理を実行し、ＰＤＬデータに対応する２値のビットマップデータを生成する（Ｓ１１０３）。なお、画像データがビットマップデータである場合には、制御部１０１はステップＳ１１０３の処理をスキップする。
【００２１】
続いて制御部１０１は、ビットマップデータ全体を所定の画素数のブロック単位で分割する（Ｓ１１０４）。ブロックのサイズは任意であるが、例えば９画素（３×３画素）や１６画素（４×４画素）などが好適である。ビットマップデータを分割したら、制御部１０１は各ブロックの状態を「オン状態」または「オフ状態」のいずれかとする判定を行う（Ｓ１１０５）。
【００２２】
ここで、制御部１０１が行う判定の方法の一例を具体的に説明する。制御部１０１は、判定の対象となるブロックに含まれる画素を参照し、オン状態の画素とオフ状態の画素の数を計数する。そして制御部１０１は、オン状態の画素が全体の半数以上であれば当該ブロックをオン状態であると判定し、オン状態の画素が全体の半数未満であれば当該ブロックをオフ状態であると判定する。制御部１０１はこのような判定をビットマップデータに含まれる全てのブロックについて実行し、各ブロックの状態を特定する。
【００２３】
なお、判定の方法は上述の例に限らず、一意的な結果が得られるあらかじめ決められた手順であれば、いかなる方法でもよい。例えば、オン状態の画素が全体の２／３以上である場合にオン状態であると判定してもよいし、オフ状態の画素の数に基づいて状態を判定するようにしてもよい。
【００２４】
各ブロックについて判定を行ったら、制御部１０１はこの判定結果に基づいてビットマップデータの特徴量を算出する（Ｓ１１０６）。ビットマップデータの特徴量は、例えばハッシュ関数やチェックサムのような方法を用いて算出してもよいし、ビットマップデータを周波数分解して得た周波数成分を用いて算出してもよい。ビットマップデータの特徴量は、ビットマップデータを構成するブロックの状態（オン・オフ）が変化したときに変化するが、画素の状態が変化しただけでは必ずしも変化しない。このようにすることで、ノイズのような画素のわずかな変化による特徴量の変動を抑制することができ、特徴量をノイズに強くすることができる。
【００２５】
ビットマップデータの特徴量を算出したら、制御部１０１はこの特徴量を用いて透かしパターンを生成する（Ｓ１１０７）。ここで透かしパターンとは、ビットマップデータの画素数よりもはるかに少ない所定の画素数のブロックからなる２値画像であり、画素のオン・オフにより表される。以下、この透かしパターンのことを、後述する他の透かしパターンと区別すべく、「特徴量パターン」という。
【００２６】
図３は、特徴量パターンの一例を示した図であり、主走査方向および副走査方向に２つずつの特徴量パターンＷＭを並べて配置した図である。同図に示す特徴量パターンＷＭは、６４画素（８×８画素）により表されており、このうち、左上の２×２画素分のオン画素を除く６０画素が特徴量を表している。特徴量は、２値化処理などにより６０ビットのデータに変換され、オン・オフにより表される画素のパターンとなる。
【００２７】
なお、左上の２×２画素分のオン画素は、特徴量パターンの位置を特定するための画素であり、これらは特徴量の如何によらずオン状態となる。図３のように特徴量パターンを繰り返し配置すると、２×２画素分のオン画素が規則的に出現するので、原稿からの特徴量パターンの抽出を容易に行えるようになる。特徴量パターンの位置を特定するこれらの画素が表す画像を、以下では「シンボル画像」という。なお、シンボル画像の画素数や形状は任意であるが、原稿からの抽出が容易であり、かつ、原稿の判読性を低下させない程度であることが望ましい。
【００２８】
図２の説明に戻る。上述のような特徴量パターンを生成したら、制御部１０１はこの特徴量パターンをビットマップデータに埋め込む（Ｓ１１０８）。本動作例においては、制御部１０１はビットマップデータの全面に特徴量パターンを繰り返し配置する。その後、制御部１０１は、特徴量パターンが埋め込まれたビットマップデータをプリンタインタフェース部１０５を介して画像形成装置３０に出力し（Ｓ１１０９）、透かし画像付きの画像データを生成する処理を終了させる。
【００２９】
続いて、以上の処理を図解して説明する。図４は、あるビットマップデータの一部に上述の処理を実行する場合を示した図である。ここで、図４（ａ）は、入力された原稿を表すビットマップデータの一部を示している。このようなビットマップデータを例えば４×４画素のブロックで分割すると、１６個のブロックに分割される。これらのブロックに対してそれぞれオン・オフの判定を行うと、図４（ｂ）のようになる。なお、同図においては、オン状態の画素が半数以上であるブロックを「オン状態（１）」、それ以外のブロックを「オフ状態（０）」であると判定した場合を示している。このようにして判定された０／１のパターンを用いて、制御部１０１は特徴量を算出している。
【００３０】
ここで、算出された特徴量に基づく特徴量パターンが図３に示した特徴量パターンＷＭであるとした場合、特徴量パターンが埋め込まれたビットマップデータは図４（ｃ）のようになる。同図からも明らかなように、画像形成装置３０に出力されるビットマップデータは、入力された原稿を表すビットマップデータ（図４（ａ））と比較した場合に、オフ状態からオン状態に変化する画素は存在するものの、オン状態からオフ状態に変化する画素は存在しない。これは、特徴量パターンを埋め込む処理がもとのビットマップデータと特徴量パターンとの論理和を算出するような処理だからである。すなわち、特徴量パターンを埋め込む処理は、もとのビットマップデータに特徴量パターンを繰り返し配置した場合に、もとのビットマップデータと特徴量パターンの少なくとも一方がオン状態である画素をオン状態とし、その他の画素をオフ状態とする画素の集合を出力する処理であると言える。
【００３１】
続いて、このようにして出力されたビットマップデータに基づいて作成された複写物を原稿として用いた場合における、この原稿の改竄の有無を検出する処理を説明する。図５は、第１のモードにおいて、複合機ＭＦＰの画像処理装置１０が原稿の改竄の有無を検出する処理を示したフローチャートである。同図に沿って説明すると、まず、画像処理装置１０の制御部１０１は、操作者の指示に応じて原稿を画像読取装置２０に読み取らせて原稿を表すビットマップデータを取得し（Ｓ１２０１）、取得したビットマップデータから特徴量パターンの抽出を試みる（Ｓ１２０２）。このとき制御部１０１は、上述のシンボル画像を特定することにより特徴量パターンを抽出する。
【００３２】
なお、制御部１０１が抽出する特徴量パターンは、例えば文字等の他の画像が重なっていたり、あるいはノイズが混入したりといった理由により、一部の特徴量パターンは本来の形状とは異なる形状として抽出される。そのため、制御部１０１は、例えば最も多く抽出された形状を特徴量パターンであるとしたり、あるいはビットマップデータを上述のブロック単位で分割した上で各ブロックの画素の状態を求め、所定の頻度以上でオン状態となった画素から特徴量パターンの形状を特定してもよい。
【００３３】
続いて、制御部１０１は原稿に透かしパターンが含まれているか否かを判断する（Ｓ１２０３）。この判断は、例えば、ステップＳ１２０２において抽出された特徴量パターンの数に基づいて行われる。この場合、抽出された特徴量パターンの数が所定の値以上であれば、制御部１０１は原稿に透かしパターンが含まれていると判断する。そして、原稿に透かしパターンが含まれていないと判断された場合には、制御部１０１はビットマップデータに応じた画像を画像形成装置３０に形成させる（Ｓ１２１０）。
【００３４】
一方、原稿に透かしパターンが含まれていると判断された場合には、制御部１０１は抽出した特徴量パターンから特徴量を算出する（Ｓ１２０４）。この処理は、特徴量パターンを生成するステップＳ１１０７の処理の逆の手順で行われる。そして、制御部１０１は、ビットマップデータから透かしパターンの除去を行う（Ｓ１２０５）。このとき制御部１０１が行う処理は、ビットマップデータ全体から透かしパターンのオン画素に相当する画素をオフ画素に置換する処理である。
【００３５】
このようにして透かしパターンを除去した場合、透かしパターンを埋め込む前からオン状態であった画素もオフ状態に変化してしまうため、本来の画像の一部が失われる。そこで、制御部１０１は、透かしパターンを除去した結果失われてしまった本来の画像を推測し、ビットマップデータを補正する処理を実行する（Ｓ１２０６）。そして、制御部１０１は、上述の補正処理を行ったビットマップデータから特徴量を算出する（Ｓ１２０７）。特徴量の算出は、上述のステップＳ１１０６と同様の要領で行われる。
【００３６】
この補正処理の具体的な内容を図解して説明する。図６は、この補正処理を図４を例にして説明するための図である。例えば、図６（ａ）に示したビットマップデータが生成された場合に、図３に示した特徴量パターンＷＭを除去すると、図６（ｂ）に示すような状態となる。このとき、オフ状態となった各画素について、“透かしパターンを除去する前において、自画素の上下左右にある４画素の全てがオン状態であった”という条件を満たすか否かを判断し、この条件を満たす画素については、透かしパターンを埋め込む前からオン状態であったとみなす。制御部１０１はこのような条件を満たすオフ画素をオン画素に変換することでビットマップデータを補正する。すると、補正後のビットマップデータは、図６（ｃ）のようになる。
【００３７】
なお、図６（ｃ）に示したビットマップデータを図４（ａ）に示したビットマップデータと比較してもわかるように、このような処理を実行したとしても、本来の原稿と完全に同一のビットマップデータが得られるとは限らず、多少の画素には変動が起こり得る。しかしながら、図６（ｃ）に示したビットマップデータから特徴量を算出すると、その結果は図４（ｂ）と一致する。
【００３８】
図５の説明に戻る。続いて、制御部１０１は、ステップＳ１２０７において算出された特徴量（すなわち、補正処理を行ったビットマップデータから算出された特徴量）とステップＳ１２０４において算出された特徴量（すなわち、抽出した特徴量パターンから算出された特徴量）とを比較し、両者の一致度を判断する（Ｓ１２０８）。ここで、両者が一致していると判断された場合には、制御部１０１は透かしパターンを埋め込んだ状態のビットマップデータを画像形成装置３０に出力し（Ｓ１２１０）、画像を形成させる一方、両者が一致していないと判断された場合には、原稿が改竄されているものとみなし、所定のエラー処理を実行する（Ｓ１２０９）。ここでエラー処理とは、例えば、改竄の旨を入出力装置４０を介して表示するなどの処理でもよいし、改竄が行われたことを示すマーク等を含む画像を形成する処理でもよい。あるいは、画像形成そのものを中止する処理でもよい。
【００３９】
以上の処理を実行することにより、本実施形態の複合機ＭＦＰは、原稿の改竄を困難にするとともに、原稿の改竄の有無を精度良く検出することが可能となる。まず、本実施形態の複合機ＭＦＰによれば、原稿の全面に透かしパターンが埋め込まれているため、文字等の消去や書き換えを容易に特定することが可能である。このため、原稿の改竄の検出が容易となるばかりでなく、悪意ある第三者による不正行為を心理的に抑制させる効果も得られる。また、本実施形態の複合機ＭＦＰは、原稿そのものから算出される特徴量により改竄の有無を判断するため、仮に巧妙な改竄を行ったとしても、特徴量自体に変化が生じ、改竄を検出することが可能である。
【００４０】
加えて、本実施形態の複合機ＭＦＰは、所定数の画素の集合からなるブロックに基づいて特徴量を算出する。これは、換言すれば、解像度が擬似的に低下させられた状態で特徴量が算出されるということである。このようにすることで、本実施形態の複合機ＭＦＰは、原稿を実質的には変化させない微小な変動によっては特徴量を変化させないことができるため、ノイズに対する強度を高めることが可能となっている。
【００４１】
［動作例２］
続いて、上述した第２のモードにおける複合機ＭＦＰの動作を説明する。ここでも、上述した第１のモードの場合と同様に、透かし画像付きの画像データを生成する処理と改竄の有無を検出する処理とに分けて説明する。なお、第２のモードにおける複合機ＭＦＰの動作には、第１のモードにおける動作と共通する部分も含まれる。このような部分については、第１のモードにおいて共通する処理を行うステップを示すなどし、説明を適宜省略する。
【００４２】
図７は、第２のモードにおいて、複合機ＭＦＰの画像処理装置１０が透かし画像付きの画像データを生成する処理を示したフローチャートである。同図に沿って説明すると、まず、画像処理装置１０の制御部１０１は、画像データをネットワークインタフェース部１０３またはスキャナインタフェース部１０４を介して受信（すなわち入力）する（Ｓ２１０１）。次に、制御部１０１は、入力された画像データがビットマップデータとＰＤＬデータのいずれであるかを判断する（Ｓ２１０２）。画像データがＰＤＬデータであれば、制御部１０１は画像データにラスタライズ処理を実行し、ＰＤＬデータに対応する２値のビットマップデータを生成する（Ｓ２１０３）。
【００４３】
一方、画像データがビットマップデータである場合には、制御部１０１はこのビットマップデータの属性を判断し、テキスト領域とイメージ領域を認識する処理を行う（Ｓ２１０４）。なお、テキスト領域とは、文字や細線により画像が形成されている領域であり、イメージ領域とは、写真等の自然画像やイラスト等のグラフィクスにより画像が形成されている領域である。なお、テキスト領域とイメージ領域を認識して区別する処理は、いわゆるＴＩ分離等の周知の手法によるものであってよい。これらの領域には、周波数成分等に異なる特徴（属性）があることが知られている。
【００４４】
続いて制御部１０１は、ビットマップデータ全体から透かしパターンを埋め込む領域と埋め込まない領域とを特定する処理を行う（Ｓ２１０５）。制御部１０１が透かしパターンを埋め込む領域とは、例えば背景領域や上述のテキスト領域であり、制御部１０１が透かしパターンを埋め込まない領域とは、例えば上述のイメージ領域である。なお、ここで背景領域とは、上述のテキスト領域とイメージ領域のいずれにも属さない領域であり、実質的にオン画素を含まない領域である。
【００４５】
上述のテキスト領域、イメージ領域および背景領域は、それぞれ異なる属性を有するものである。これらのいずれの領域に透かしパターンを埋め込むかは任意であり、適当に定めてよいが、イメージ領域には透かしパターンを埋め込まない方が望ましい。イメージ領域に透かしパターンを埋め込むと、画像の判読性が低下するだけでなく、ここから透かしパターンを抽出することも困難であるからである。なお、テキスト領域については、透かしパターンを埋め込んでもよいし、埋め込まなくてもよい。
【００４６】
次に、制御部１０１は透かしパターンを埋め込む領域を特定する情報を生成する（Ｓ２１０６）。この情報のことを、以下では「領域情報」という。領域情報としては、例えば、ビットマップデータを構成する各画素について、透かしパターンを埋め込む領域に含まれる画素に「１」、透かしパターンを埋め込まない領域に含まれる画素に「０」を割り当てた場合に、この０／１のパターンにより表されるビット列をランレングス法により符号化した数値を用いることができる。領域情報を生成したら、制御部１０１はこの領域情報を用いて上述の特徴量パターンの場合と同様の要領で透かしパターンを生成する（Ｓ２１０７）。このとき生成される透かしパターンのことを、特徴量パターンと区別するために、「領域情報パターン」という。
【００４７】
続いて、制御部１０１は、ビットマップデータ全体を所定の画素数のブロック単位で分割し（Ｓ２１０８）、各ブロックの状態を「オン状態」または「オフ状態」のいずれかとする判定を行う（Ｓ２１０９）。そして、各ブロックについて判定を行ったら、制御部１０１はこの判定結果に基づいてビットマップデータの特徴量を算出し（Ｓ２１１０）、この特徴量を用いて透かしパターン、すなわち特徴量パターンを生成する（Ｓ２１１１）。これらの処理は、上述の第１のモードにおけるステップＳ１１０３〜Ｓ１１０６における処理と同様である。
【００４８】
上述のように特徴量パターンと領域情報パターンを生成したら、制御部１０１はこのこれらの透かしパターンをビットマップデータに埋め込む（Ｓ２１１２）。本動作例においては、制御部１０１はビットマップデータのうち、ステップＳ２１０５において透かしパターンを埋め込むと特定された領域にのみ透かしパターンを埋め込む。具体的には、ステップＳ２１０５において透かしパターンを埋め込むと特定された領域をさらに２つの領域に分割し、第１の領域には領域情報パターンを埋め込み、第２の領域には特徴量パターンを埋め込む、という処理を行う。第１の領域は、例えばビットマップデータの上端部などのあらかじめ決められた領域の一部とするのが望ましい。その後、制御部１０１は、透かしパターンが埋め込まれたビットマップデータをプリンタインタフェース部１０５を介して画像形成装置３０に出力し（Ｓ２１１３）、透かし画像付きの画像データを生成する処理を終了させる。
【００４９】
続いて、このようにして出力されたビットマップデータに基づいて作成された複写物を原稿として用いた場合における、この原稿の改竄の有無を検出する処理を説明する。図８は、第２のモードにおいて、複合機ＭＦＰの画像処理装置１０が原稿の改竄の有無を検出する処理を示したフローチャートである。同図に沿って説明すると、まず、画像処理装置１０の制御部１０１は、操作者の指示に応じて原稿を画像読取装置２０に読み取らせて原稿を表すビットマップデータを取得し（Ｓ２２０１）、取得したビットマップデータから透かしパターンの抽出を試みる（Ｓ２２０２）。このとき制御部１０１は、上述のシンボル画像を特定することにより透かしパターンを抽出する。
【００５０】
続いて、制御部１０１は原稿に透かしパターンが含まれているか否かを判断する（Ｓ２２０３）。この判断は、例えば、ステップＳ２２０２において抽出された透かしパターンの数に基づいて行われる。この場合、抽出された透かしパターンの数が所定の値以上であれば、制御部１０１は原稿に透かしパターンが含まれていると判断する。そして、原稿に透かしパターンが含まれていないと判断された場合には、制御部１０１はビットマップデータに応じた画像を画像形成装置３０に形成させる（Ｓ２２１１）。
【００５１】
一方、原稿に透かしパターンが含まれていると判断された場合には、制御部１０１は上述の第１の領域に領域情報パターンが存在するか否かを判断する（Ｓ２２０４）。なお、領域情報パターンが存在しないと判断された場合の処理、すなわちステップＳ２２０５〜Ｓ２２１１の処理は、第１のモードにおけるＳ１２０４〜Ｓ１２１０の処理と同様であるため、説明を省略する。
【００５２】
領域情報パターンが存在すると判断された場合には、制御部１０１は領域情報パターンから領域情報を特定する（Ｓ２２１２）。領域情報は、上述したステップＳ２１０６の処理を逆の手順で行うことにより特定される。領域情報を特定したら、制御部１０１は領域情報により特定される領域とステップＳ２２０２において実際に透かしパターンが抽出された領域とを参照し、その一致の度合いを比較する（Ｓ２２１３）。
【００５３】
ここで、制御部１０１は、上述の一致の度合いが所定の割合以上であるか否かを判断する（Ｓ２２１４）。領域情報により特定される領域と実際に透かしパターンが抽出された領域とが所定の割合以上に一致する場合には、制御部１０１は領域情報により特定される領域と実際に透かしパターンが抽出された領域とが一致しているとみなし、ステップＳ２２０５以降の処理を行う。一方、両者の一致の度合いが所定の割合に満たない場合には、制御部１０１は原稿が改竄されているものとみなし、所定のエラー処理を実行する（Ｓ２２１５）。このエラー処理は、ステップＳ２２１０と同様の処理であってもよいし、領域情報により特定される領域と実際に透かしパターンが抽出された領域との不一致領域を黒く塗り潰して画像を形成する処理であってもよい。
【００５４】
以上の処理を実行することにより、本実施形態の複合機ＭＦＰは、原稿の一部の領域に透かし画像を埋め込むことが可能となる。このようにすれば、写真等の画像の見やすさを損なうことなく十分な安全性を確保することが可能となる。また、本実施形態の複合機ＭＦＰは、第２のモードによる動作を行った場合には、領域情報によって透かし画像が存在する領域と存在しない領域とを判別することが可能となるため、透かしパターンがあるべき領域に透かしパターンがない場合などには、改竄の箇所を具体的に特定することが可能となる。
【００５５】
［変形例］
以上の説明においては、一の好適な実施形態を例示して本発明を説明したが、本発明は上述した実施形態に限定されるものではなく、その他の種々の態様にて実施することも可能である。本発明においては、例えば、上述した実施形態に対して以下のような変形を適用することができる。なお、これらの変形は、各々を適宜に組み合わせることも可能である。
【００５６】
上述の実施形態においては、説明の便宜上、原稿に形成された画像はモノクロの２値画像であるとしたが、本発明はもちろん、カラー画像を含む原稿や、ハーフトーン画像を含む原稿についても適用可能である。例えば、ハーフトーン画像については、入力された画像データに２値化処理を行ったり、あるいは、所定の閾値より階調値が大である画素をオン状態であると判定すればよい。また、例えばレッド、グリーンおよびブルーの各色の色成分からなる画像データが入力される場合には、いずれかの色成分に基づいて透かしパターンを生成したり、あるいは、３色の色成分から輝度成分を算出し、輝度成分に基づいて透かしパターンを生成すればよい。
【００５７】
また、上述のエラー処理においては、制御部は入力された原稿が改竄されていることを示す情報を出力すれば十分である。このような場合には、上述のエラー処理に係る動作、すなわち、改竄の旨の表示や改竄が行われたことを示すマーク等を含む画像の形成は、上述の情報の出力を契機に行われればよい。
【００５８】
また、上述の実施形態の複合機ＭＦＰの場合、原稿が斜めの状態で読み取られたときには、透かしデータを正確に読み取れないおそれがある。そこで、原稿が斜めの状態で読み取られた場合には、画像形成を中止したり、あるいは原稿の再セットを促すメッセージを表示させるなどしてもよい。
【図面の簡単な説明】
【００５９】
【図１】本発明の一実施形態である複合機の構成を示したブロック図である。
【図２】複写機の画像処理装置が透かし画像付きの画像データを生成する処理を示したフローチャート（第１のモード）である。
【図３】特徴量パターンの一例を示した図である。
【図４】複写機の画像処理装置が特徴量パターンを埋め込む処理を例示した図である。
【図５】複写機の画像処理装置が原稿の改竄の有無を検出する処理を示したフローチャート（第１のモード）である。
【図６】ビットマップデータを補正する処理を説明するための図である。
【図７】複写機の画像処理装置が透かし画像付きの画像データを生成する処理を示したフローチャート（第２のモード）である。
【図８】複写機の画像処理装置が原稿の改竄の有無を検出する処理を示したフローチャート（第２のモード）である。
【符号の説明】
【００６０】
ＭＦＰ…複合機、１０…画像処理装置、１０１…制御部、１０２…記憶部、１０３…ネットワークインタフェース部、１０４…スキャナインタフェース部、１０５…プリンタインタフェース部、１０６…ユーザインタフェース部、２０…画像読取装置、３０…画像形成装置、４０…入出力装置
【図１】
0004626565.tif 000002
【図２】
0004626565.tif 000003
【図３】
0004626565.tif 000004
【図４】
0004626565.tif 000005
【図５】
0004626565.tif 000006
【図６】
0004626565.tif 000007
【図７】
0004626565.tif 000008
【図８】
0004626565.tif 000009