(57)【要約】【課題】  原稿品位の劣化を押さえつつ電子透かしの埋め込みを行った文書画像から、埋め込み情報を抽出するための技術を提供すること。【解決手段】  外接矩形１１０１についてスペクトラム１１０３を求める。外接矩形１１０１内の文字部分を、元の文書画像に含まれている文字部分を構成している画素の画素値を有する画素で埋めた後の外接矩形１１０２についてのスペクトラム１１０４を取得する。スペクトラム１１０３とスペクトラム１１０４との差分スペクトラム１１０５を求める。埋め込むビット値が取りうる全ての値に対応するパターンのそれぞれについてスペクトラムを求める。差分スペクトラム１１０５とそれぞれのスペクトラムとの類似度を求める。類似度が最も高いパターンに対応するビット値を出力する。【選択図】  図１０
2008098949.tif 000002
【特許請求の範囲】
【請求項１】
文書画像に含まれている文字部分を、埋め込むビット値に対応するパターンで再構成することで得られる透かし文書画像を取得する取得手段と、
前記透かし文書画像中の各文字部分について外接矩形を求める外接矩形計算手段と、
前記外接矩形計算手段が求めた注目外接矩形についてスペクトラムを求める第１の計算手段と、
前記注目外接矩形内の文字部分を、前記文書画像に含まれている文字部分を構成している画素の画素値を有する画素で埋めた後の当該注目外接矩形についてのスペクトラムを取得するスペクトラム取得手段と、
前記第１の計算手段が求めたスペクトラムと、前記スペクトラム取得手段が取得したスペクトラムとの差分を、差分スペクトラムとして求める第２の計算手段と、
前記埋め込むビット値が取りうる全ての値に対応するパターンのそれぞれについて、スペクトラムを求める第３の計算手段と、
前記差分スペクトラムと、前記第３の計算手段が求めたそれぞれのスペクトラムとの類似度を求める第４の計算手段と、
前記第４の計算手段が求めたそれぞれの類似度に基づいて、前記注目外接矩形内の文字部分を構成しているパターンを特定し、特定したパターンに対応するビット値を出力する出力手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記第３の計算手段は、
前記埋め込むビット値が取りうる全ての値に対応するそれぞれのパターンのサイズを前記注目外接矩形のサイズに拡大した後、当該それぞれのパターンについてスペクトラムを求めることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記出力手段は、
前記第４の計算手段が求めたそれぞれの類似度のうち、前記差分スペクトラムとの類似度が最も大きいパターンを特定し、特定したパターンに対応するビット値を出力することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
文書画像に含まれている文字部分を、埋め込むビット値に対応するパターンで再構成することで得られる透かし文書画像を取得する取得工程と、
前記透かし文書画像中の各文字部分について外接矩形を求める外接矩形計算工程と、
前記外接矩形計算工程で求めた注目外接矩形についてスペクトラムを求める第１の計算工程と、
前記注目外接矩形内の文字部分を、前記文書画像に含まれている文字部分を構成している画素の画素値を有する画素で埋めた後の当該注目外接矩形についてのスペクトラムを取得するスペクトラム取得工程と、
前記第１の計算工程で求めたスペクトラムと、前記スペクトラム取得工程で取得したスペクトラムとの差分を、差分スペクトラムとして求める第２の計算工程と、
前記埋め込むビット値が取りうる全ての値に対応するパターンのそれぞれについて、スペクトラムを求める第３の計算工程と、
前記差分スペクトラムと、前記第３の計算工程で求めたそれぞれのスペクトラムとの類似度を求める第４の計算工程と、
前記第４の計算工程で求めたそれぞれの類似度に基づいて、前記注目外接矩形内の文字部分を構成しているパターンを特定し、特定したパターンに対応するビット値を出力する出力工程と
を備えることを特徴とする画像処理方法。
【請求項５】
コンピュータに請求項４に記載の画像処理方法を実行させるためのプログラム。
【請求項６】
請求項５に記載のプログラムを格納したことを特徴とする、コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子透かしの抽出技術に関するものである。
【背景技術】
【０００２】
近年、プリンタ、複写機などのデジタル画像形成装置において、その画質の向上は著しく、容易に高画質の印刷物を手にすることができるようになってきている。つまり、誰もが高性能スキャナ、プリンタ、複写機、そしてコンピュータによる画像処理により、要求される印刷物を得ることが可能となってきている。そのため、文書の不正コピー、改ざん等の問題が発生し、それらを防止、あるいは抑止させるため、印刷物そのものにアクセス制御情報を透かし情報として埋め込もうという動きが近年活発になってきている。
【０００３】
このような機能としては、印刷物にアクセス制御情報を目に見えないように埋め込む不可視タイプの電子透かしがある。一般的な実現方法として、英文字列のスペースの量をコントロールすることにより情報を埋め込むタイプ（特許文献１を参照）、文字を回転することにより情報を埋め込むタイプがある。また、その他にも、文字を拡大縮小することにより情報を埋め込むタイプ、文字を変形させて情報を埋め込むタイプ等が提案されている。
【０００４】
図１２は、英文字列のスペースの量をコントロールすることにより情報を埋め込むタイプを説明する図である。同図において１２０１は電子透かしを埋め込む対象となる文章であり、１２０２は、文章１２０１に対して電子透かしを埋め込んだ結果としての文章である。
【０００５】
また、ｐは、文章１２０１において、単語「Modern」と単語「computer」との間のスペースの量を示す。また、ｓは、単語「computer」と単語「networks」との間のスペースの量を示す。
【０００６】
また、ｐ１は、文章１２０２において、単語「Modern」と単語「computer」との間のスペースの量を示す。また、ｓ１は、単語「computer」と単語「networks」との間のスペースの量を示す。
【０００７】
ここで、係る文章１２０１に対して情報ビット「０」を埋め込む場合、ｐ１、ｓ１は以下のようにして決まる。
【０００８】
ｐ１＝（１＋ｑ）（ｐ＋ｓ）／２
ｓ１＝（１−ｑ）（ｐ＋ｓ）／２
一方、文章１２０１に対して情報ビット「１」を埋め込む場合、ｐ１、ｓ１は以下のようにして決まる。
【０００９】
ｐ１＝（１−ｑ）（ｐ＋ｓ）／２
ｓ１＝（１＋ｑ）（ｐ＋ｓ）／２
ここで、ｑの範囲は０＜ｑ＜１である。
【００１０】
図１３は、文字の大きさを拡大あるいは縮小することによって情報を埋め込むタイプを説明する図である。
【００１１】
例えば、領域１３０１内の文字「像」に対して埋め込み情報「１」を埋め込んだとする。この場合、領域１３０３に示す如く、この文字のサイズは拡大される。一方、領域１３０２内の文字「再」に対して埋め込み情報「０」を埋め込んだとする。この場合、領域１３０４に示す如く、この文字のサイズは縮小される。
【００１２】
尚、埋め込みの対象となる文字は、連続する文字であっても、数文字間隔であっても、あらかじめ定められた位置の文字であってもよい。図１３では、「像」の文字が拡大され、また「再」の字が縮小されているので、「１０」という埋め込み情報が文章に対して埋め込まれていることになる。
【００１３】
図１４は、文字を回転させることによって情報を埋め込むタイプを説明する図である。  例えば、領域１４０１内の文字「像」に対して埋め込み情報「１」を埋め込んだとする。この場合、領域１４０３に示す如く、この文字は時計回りに所定角度回転される。一方、領域１４０２内の文字「構」に対して埋め込み情報「０」を埋め込んだとする。この場合、領域１４０４に示す如く、この文字は反時計回りに所定角度回転される。
【００１４】
尚、埋め込みの対象となる文字は、連続する文字であっても、数文字間隔であっても、あらかじめ定められた位置の文字であってもよい。図１４では，「像」の文字が時計回りに回転され、また「構」の字が反時計回りに回転されているので、「１０」という埋め込み情報が文章に対して埋め込まれていることになる。
【特許文献１】米国特許第６０８６７０６号明細書
【発明の開示】
【発明が解決しようとする課題】
【００１５】
しかしながら、埋め込み情報を目に見えないように埋め込むものは、特に文書画像においては、文字、スペースに違和感を生じ、原稿品位の劣化が目立ちやすくなる。
【００１６】
本発明は以上の問題に鑑みてなされたものであり、原稿品位の劣化を押さえつつ電子透かしの埋め込みを行った文書画像から、埋め込み情報を抽出するための技術を提供することを目的とする。
【課題を解決するための手段】
【００１７】
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。
【００１８】
即ち、文書画像に含まれている文字部分を、埋め込むビット値に対応するパターンで再構成することで得られる透かし文書画像を取得する取得手段と、
前記透かし文書画像中の各文字部分について外接矩形を求める外接矩形計算手段と、
前記外接矩形計算手段が求めた注目外接矩形についてスペクトラムを求める第１の計算手段と、
前記注目外接矩形内の文字部分を、前記文書画像に含まれている文字部分を構成している画素の画素値を有する画素で埋めた後の当該注目外接矩形についてのスペクトラムを取得するスペクトラム取得手段と、
前記第１の計算手段が求めたスペクトラムと、前記スペクトラム取得手段が取得したスペクトラムとの差分を、差分スペクトラムとして求める第２の計算手段と、
前記埋め込むビット値が取りうる全ての値に対応するパターンのそれぞれについて、スペクトラムを求める第３の計算手段と、
前記差分スペクトラムと、前記第３の計算手段が求めたそれぞれのスペクトラムとの類似度を求める第４の計算手段と、
前記第４の計算手段が求めたそれぞれの類似度に基づいて、前記注目外接矩形内の文字部分を構成しているパターンを特定し、特定したパターンに対応するビット値を出力する出力手段と
を備えることを特徴とする。
【００１９】
本発明の目的を達成するために、例えば、本発明の画像処理方法は以下の構成を備える。
【００２０】
即ち、文書画像に含まれている文字部分を、埋め込むビット値に対応するパターンで再構成することで得られる透かし文書画像を取得する取得工程と、
前記透かし文書画像中の各文字部分について外接矩形を求める外接矩形計算工程と、
前記外接矩形計算工程で求めた注目外接矩形についてスペクトラムを求める第１の計算工程と、
前記注目外接矩形内の文字部分を、前記文書画像に含まれている文字部分を構成している画素の画素値を有する画素で埋めた後の当該注目外接矩形についてのスペクトラムを取得するスペクトラム取得工程と、
前記第１の計算工程で求めたスペクトラムと、前記スペクトラム取得工程で取得したスペクトラムとの差分を、差分スペクトラムとして求める第２の計算工程と、
前記埋め込むビット値が取りうる全ての値に対応するパターンのそれぞれについて、スペクトラムを求める第３の計算工程と、
前記差分スペクトラムと、前記第３の計算工程で求めたそれぞれのスペクトラムとの類似度を求める第４の計算工程と、
前記第４の計算工程で求めたそれぞれの類似度に基づいて、前記注目外接矩形内の文字部分を構成しているパターンを特定し、特定したパターンに対応するビット値を出力する出力工程と
を備えることを特徴とする。
【発明の効果】
【００２１】
本発明の構成により、原稿品位の劣化を押さえつつ電子透かしの埋め込みを行った文書画像から、埋め込み情報を抽出するためことができる。
【発明を実施するための最良の形態】
【００２２】
以下添付図面を参照して、本発明をその好適な実施形態に従って詳細に説明する。
【００２３】
［第１の実施形態］
＜埋め込み情報の埋め込みついて＞
図１は、文書画像に対して電子透かしの埋め込みを行う画像処理装置の機能構成を示すブロック図である。同図に示す如く、本実施形態に係る画像処理装置１９０は、画像入力部１０１、文書解析部１０２、埋め込み判定部１０３、透かし情報入力部１０５、埋め込み部１０６、画像出力部１０７により構成されている。
【００２４】
電子透かしを埋め込む対象となる文書画像１００は、画像入力部１０１により本装置内に入力され、後段の文書解析部１０２に送出される。
【００２５】
文書解析部１０２は、文書画像１００中に含まれているそれぞれの文字について外接矩形を求める処理を行う。電子透かしの埋め込みは、この外接矩形内の文字部分に対して行われる。
【００２６】
埋め込み判定部１０３は、それぞれの外接矩形のうち、電子透かしの埋め込みを行うことができる外接矩形を判定する処理を行う。
【００２７】
透かし情報入力部１０５は、電子透かしの埋め込みに用いる透かし情報（埋め込み情報）１０４を本装置内に入力する。
【００２８】
埋め込み部１０６は、埋め込み判定部１０３が電子透かしの埋め込みが可能と判断した外接矩形内の文字部分について、透かし情報入力部１０５が入力した埋め込み情報１０４を埋め込む。
【００２９】
画像出力部１０７は、埋め込み部１０６によって埋め込み情報が埋め込まれた文書画像を、透かし埋め込み画像１０８として出力する。
【００３０】
図３は、画像処理装置１９０によって行われる、文書画像に対する電子透かしの埋め込み処理のフローチャートである。
【００３１】
先ずステップＳ３０１では、文書画像１００が画像入力部１０１によって本装置内に入力される。文書画像１００の本装置に対する入力形態については特に限定するものではない。例えば、原稿をスキャナなどで読み取ることで文書画像１００を取得しても良いし、予め作成した文書画像１００を本装置内のメモリ若しくは外部メモリから取得するようにしてもよい。また、アプリケーションソフトなどで作成したテキストデータをイメージデータに変換したものを文書画像１００として用いても良い。
【００３２】
次にステップＳ３０２では、文書解析部１０２は、画像入力部１０１によって本装置内に入力された文書画像１００中に含まれている各文字について、外接矩形を求める処理を行う。文字の外接矩形は、文字に外接する矩形であって、本来は、文字認識を行う領域を指す情報であるが、電子透かし技術においては、埋め込み操作の対象となる文字領域を示すものである。文字の外接矩形を求めるための処理には、例えば、次のようなものがある。
【００３３】
先ず、文書画像の各画素値を垂直座標軸に対して射影し、空白部分（文字のない部分）を探索して行を判別して行分割を行う。その後、行単位で文書画像を水平座標軸に対して射影し、空白部分を探索して文字単位に分割する。これにより、各文字を外接矩形で切り出すことが可能となる。
【００３４】
次にステップＳ３０３では、透かし情報入力部１０５は、ステップＳ３０１で入力した文書画像１００に対して埋め込む埋め込み情報（透かし情報）１０４を取得する。埋め込み情報１０４は、「０」若しくは「１」の値を取るビットの列により構成されている。
【００３５】
埋め込み情報１０４の取得形態については特に限定するものではない。例えば、本装置のユーザが、不図示のキーボードやマウス等を用いて入力しても良いし、予め作成された埋め込み情報１０４を本装置内のメモリ、若しくは外部メモリから取得するようにしても良い。
【００３６】
次にステップＳ３０４では、埋め込み判定部１０３は、文書画像１００中の各文字についてステップＳ３０２で作成した外接矩形から未だ選択していない外接矩形を１つを選択する。選択順については特に限定するものではないが、後述する埋め込み情報の抽出側で、文書画像からどのような選択順で外接矩形を選択したのかが分かれば如何なる選択順を用いても良い。
【００３７】
ステップＳ３０５では、埋め込み判定部１０３は、ステップＳ３０４で選択した外接矩形のサイズ（例えば外接矩形の縦の長さと横の長さ）を求め、求めたサイズが予め定めたサイズ以上であるか否かをチェックする。本実施形態では、サイズがある一定以上の外接矩形のみに対して埋め込み情報１０４を埋め込み、一定以上のサイズを有していない外接矩形については埋め込み情報１０４は埋め込まないものとする。即ち、サイズが小さい外接矩形内の文字は少しの外乱でも影響を受けやすく、そのため、この文字に埋め込んだ埋め込み情報１０４が抽出できないこともある。そこで本実施形態ではよりロバストに文字から埋め込み情報１０４を抽出すべく、ある一定以上のサイズを有する外接矩形のみを、埋め込み情報１０４を埋め込む対象として選択する。
【００３８】
係るチェックの結果、ステップＳ３０４で選択した外接矩形がある一定以上のサイズを有している場合には処理を処理をステップＳ３０６に進める。一方、ステップＳ３０４で選択した外接矩形がある一定以上のサイズを有していない場合には処理をステップＳ３０４に戻し、他の未だ選択していない外接矩形を選択する。
【００３９】
ステップＳ３０６では、埋め込み部１０６は、埋め込み情報１０４を構成する各ビットから１ビットを選択し、選択した１ビットを、ステップＳ３０４で選択した外接矩形内の文字部分に対して埋め込む処理を行う。
【００４０】
ここで、埋め込み部１０６が行う電子透かしの埋め込み処理についてより詳細に説明する。本実施形態では、埋め込み情報１０４を構成するビットが取りうる全ての値（０、１）についてそれぞれ対応するパターンを予め作成しておく。そして、埋め込み情報１０４から１ビットを選択した場合に、選択した１ビットの値に対応するパターンを選択する。そして、ステップＳ３０４で選択した外接矩形内の文字部分を、この選択したパターンで再構成する。
【００４１】
図６は、埋め込み処理を説明する図である。同図において６０４は、埋め込み情報１０４から選択した１ビットの値が「０」である場合に、選択するパターンである、６０５は、埋め込み情報１０４から選択した１ビットの値が「１」である場合に選択するパターンである。また、同図において６０１は、埋め込み情報１０４を埋め込む文字である。
【００４２】
従って、文字６０１に対してビット値「０」を埋め込む場合、ビット値「０」に対応するパターン６０４を用いて文字６０１を再構成する。すると、６０２に示す如く、文字の形としては文字６０１と同じではあるものの、その模様がパターン６０４の模様を有する文字を得ることができる。
【００４３】
一方、文字６０１に対してビット値「１」を埋め込む場合、ビット値「１」に対応するパターン６０５を用いて文字６０１を再構成する。すると、６０３に示す如く、文字の形としては文字６０１と同じではあるものの、その模様がパターン６０５の模様を有する文字を得ることができる。
【００４４】
なおここで説明したパターンの大きさや模様については一例であり、目的に応じて適宜変更しても良い。
【００４５】
図５は、ステップＳ３０６における埋め込み処理の詳細を示すフローチャートである。
【００４６】
ステップＳ３０６ａでは、埋め込み情報１０４を構成する各ビットから１ビットを選択する。選択順は特に限定するものではないが、ここでは、先頭から順に１ビットずつ選択する。
【００４７】
ステップＳ３０６ｂでは、ステップＳ３０６ａで選択した１ビットの値が「１」であるか否かをチェックする。係るチェックの結果、「１」である場合には処理をステップＳ３０６ｃに進め、「０」である場合には処理をステップＳ３０６ｄに進める。
【００４８】
ステップＳ３０６ｃでは、ステップＳ３０４で選択した外接矩形内の文字部分を、ビット値「１」に対応するパターン（パターン１）で再構成する。一方、ステップＳ３０６ｄでは、ステップＳ３０４で選択した外接矩形内の文字部分を、ビット値「０」に対応するパターン（パターン０）で再構成する。
【００４９】
そして、処理をステップＳ３０７に進める。
【００５０】
図４は、ステップＳ３０６ｃの処理の詳細を示すフローチャートである。
【００５１】
先ずステップＳ３０６ｃ１では、ステップＳ３０４で選択した外接矩形を、パターン１のサイズに分割する。分割したそれぞれを分割パターンと呼称する。
【００５２】
次にステップＳ３０６ｃ２では、未だ選択されていない分割パターンを１つ選択する。
【００５３】
次にステップＳ３０６ｃ３では、ステップＳ３０６ｃ２で選択した分割パターンと、パターン１とで位置的に対応する画素の画素値を比較する。ここで説明上、文字部分を構成している画素の画素値を「０」（黒いドット）、非文字部分を構成している画素の画素値を「２５５」（白いドット）とするが、係る画素値に限定するものではない。
【００５４】
そして、分割パターン側で参照した画素の画素値が「０」で、パターン１上でこの参照した画素に位置的に対応する画素の画素値が「２５５」である場合、分割パターン側で参照したこの画素の画素値を「２５５」とする。即ち、分割パターンとパターン１とを完全に重ね合わせた場合に、パターン１上で画素値が「２５５」の画素の位置と同じ位置の分割パターン上の画素については全て画素値「２５５」を設定する。これにより、分割パターンをパターン１で再構成することになる。
【００５５】
次にステップＳ３０６ｃ４ｃでは、全ての分割パターンを選択したか否かをチェックする。係るチェックの結果、全ての分割パターンを選択した場合にはステップＳ３０７に進める。一方、未だ選択していない分割パターンが存在する場合には処理をステップＳ３０６ｃ２に戻し、未だ選択していない分割パターンを１つ選択し、選択した分割パターンを用いて以降の処理を行う。
【００５６】
なお、図５におけるステップＳ３０６ｄの処理は、パターン１の代わりにパターン０を用いること以外はステップＳ３０６ｃと同じである為、その詳細な説明は省略する。
【００５７】
図３に戻って、全ての外接矩形をステップＳ３０４で選択している場合には処理をステップＳ３０７を介してステップＳ３０８に進む。一方、ステップＳ３０４で未だ選択していない外接矩形が存在する場合には処理をステップＳ３０７を介してステップＳ３０４に戻し、未だ選択していない外接矩形を１つ選択し、選択した外接矩形について以降の処理を行う。
【００５８】
ステップＳ３０９では、画像出力部１０７は、埋め込み部１０６により埋め込み情報１０４が埋め込まれた透かし埋め込み画像１０８を出力する。出力形態については特に限定するものではなく、本装置内若しくは外部に設けているメモリに対して透かし埋め込み画像１０８を出力しても良いし、プリンタなどの印刷機能を有する装置に対してこの透かし埋め込み画像１０８を印刷出力させても良い。また、ネットワークを介して外部に対してこの透かし埋め込み画像１０８を送信しても良い。
【００５９】
＜埋め込み情報の抽出について＞
図７は、画像処理装置１９０が上記の処理を行うことにより文書画像１００に埋め込んだ埋め込み情報１０４を抽出する画像処理装置７９０の機能構成を示すブロック図である。本実施形態では、画像処理装置１９０と画像処理装置７９０とは別個の装置とするが、同じ装置内に含めるようにしても良い。
【００６０】
図７において画像処理装置７９０は、画像入力部７０１、文書解析部７０２、埋め込み判定部７０３、透かし情報抽出部７０４により構成されている。
【００６１】
上記透かし埋め込み画像１０８としての文書画像７００は、画像入力部１０１によって本装置内に入力され、後段の文書解析部７０２に送出される。
【００６２】
文書解析部７０２は、文書画像７００中に含まれているそれぞれの文字について外接矩形を求める処理を行う。電子透かしの抽出は、この外接矩形毎に行われる。
【００６３】
埋め込み判定部７０３は、それぞれの外接矩形のうち、電子透かしが埋め込まれているであろう外接矩形を判定する処理を行う。
【００６４】
透かし情報抽出部７０４は、埋め込み判定部７０３により電子透かしが埋め込まれているであろうと判定された外接矩形から、埋め込まれた情報（ビット）を抽出する処理を行う。そして順次抽出したビットを順次繋げたものを透かし情報７０５として出力する。この透かし情報７０５は、上記透かし情報１０４と同じものである。
【００６５】
図８は、画像処理装置７９０が行う、透かし埋め込み画像１０８から透かし情報７０５を抽出する処理のフローチャートである。
【００６６】
先ずステップＳ８０１では、文書画像７００が画像入力部７０１によって本装置内に入力される。文書画像７００の本装置に対する入力形態については特に限定するものではない。例えば、原稿をスキャナなどで読み取ることで文書画像を取得しても良いし、予め作成した文書画像７００を本装置内のメモリ若しくは外部メモリから取得するようにしてもよい。
【００６７】
次にステップＳ８０２では、文書解析部７０２は、画像入力部７０１によって本装置内に入力された文書画像７００中に含まれている各文字について、外接矩形を求める処理を行う。係る処理は、上記文書解析部１０２が行う処理と同様にして行う。
【００６８】
次にステップＳ８０３では、埋め込み判定部７０３は、文書画像７００中の各文字についてステップＳ８０２で作成した外接矩形から未だ選択していない外接矩形を１つを選択する。選択順については特に限定するものではないが、上記ステップＳ３０４における選択順に合わせることが好ましい。
【００６９】
ステップＳ８０４では、埋め込み判定部７０３は、ステップＳ８０３で選択した外接矩形のサイズ（例えば外接矩形の縦の長さと横の長さ）を求め、求めたサイズが予め定めたサイズ以上であるか否かをチェックする。係るチェックの結果、ステップＳ８０３で選択した外接矩形がある一定以上のサイズを有している場合には処理をステップＳ８０５に進める。一方、ステップＳ８０３で選択した外接矩形がある一定以上のサイズを有していない場合には処理をステップＳ８０３に戻し、他の未だ選択していない外接矩形を選択する。
【００７０】
ステップＳ８０５では、透かし情報抽出部７０４は、ステップＳ８０３で選択した外接矩形に埋め込まれているビット値を抽出する処理を行う。図９は、ステップＳ８０５における処理の詳細を示すフローチャートである。
【００７１】
先ずステップＳ８０５ａでは、ステップＳ８０３で選択した外接矩形について振幅スペクトラムを求めると共に、パターン０の振幅スペクトラムを求める。そして、それぞれの振幅スペクトラム間の類似度ｇ０を求める。図１１は、ステップＳ８０５ａにおける処理の詳細を示すフローチャートである。また、図１０は、ステップＳ８０５ａにおける処理を説明する図である。以下、図１０，１１を用いて、ステップＳ８０５ａにおける処理について詳細に説明する。
【００７２】
ステップＳ８０５ａ１１では先ず、ステップＳ８０３で選択した外接矩形について振幅スペクトラム（以下、スペクトラム１と呼称）を求める。一般に２次元画像ｆに対する振幅スペクトラムは以下のようにして求める。ここで、ｘ、ｙをそれぞれ２次元画像ｆにおけるｘ座標値、ｙ座標値を示す変数とし、ｆ（ｘ、ｙ）を、画像ｆ中の座標（ｘ、ｙ）に位置する画素の画素値を示す。
【００７３】
先ず、２次元画像ｆに対する２次元フーリエ変換は以下の式に基づいて行う。
【００７４】
【数１】
2008098949.tif 000003
【００７５】
このようにして求められた
【００７６】
【数２】
2008098949.tif 000004
【００７７】
を画像ｆのスペクトラムという。スペクトラム
【００７８】
【数３】
2008098949.tif 000005
【００７９】
は一般に複素数値をとる。そこで、
【００８０】
【数４】
2008098949.tif 000006
【００８１】
の大きさと偏角を用いて極座標表現を行う。そのとき、大きさ
【００８２】
【数５】
2008098949.tif 000007
【００８３】
が振幅スペクトラムである。
【００８４】
図１０において１１０１は、ステップＳ８０３で選択した外接矩形を示し、１１０３は、係る外接矩形１１０１に対して求めた振幅スペクトラム（スペクトラム１）である。
【００８５】
次にステップＳ８０５ａ１２では、ステップＳ８０３で選択した外接矩形内の文字部分における白いドットを黒いドットに変換する。即ち、ステップＳ８０３で選択した外接矩形内の文字部分を、元の文書画像１００に含まれている文字部分を構成している画素の画素値を有する画素で埋める。係る処理は、例えば、ステップＳ８０３で選択した外接矩形内の画素を１画素ずつスキャンしながら、白いドットを検索し、白いドットがあれば黒いドットに変更する。
【００８６】
図１０において１１０２は、外接矩形１１０１内の文字部分に対してステップＳ８０５ａ１２における処理を行うことで得られる外接矩形を示す。
【００８７】
図１１に戻って、次にステップＳ８０５ａ１３では、ステップＳ８０５ａ１２における処理によって得られた外接矩形について振幅スペクトラム（以下、スペクトラム２と呼称）を求める。スペクトラムの求め方については上述の通りである。図１０において１１０４は、外接矩形１１０２について求めたスペクトラム２である。
【００８８】
なお、本ステップにおいて求めたスペクトラム２は、上記文書画像１００中における各文字について事前に求めることで得られるものである。従って、各文字について事前にスペクトラム２を求めておき、本ステップでは、ステップＳ８０３で選択した外接矩形について事前に求めたスペクトラム２を取得するようにしても良い。
【００８９】
図１１に戻って、次にステップＳ８０５ａ１４では、パターン０のサイズを、ステップＳ８０３で選択した外接矩形のサイズに拡大する処理を行う。図１０において１１０６は、サイズを拡大したパターン０である。
【００９０】
そしてステップＳ８０５ａ１５では、サイズを拡大したパターン０について振幅スペクトラム（以下、スペクトラム０と呼称）を求める。スペクトラムの求め方については上述の通りである。図１０において１１０７は、サイズを拡大したパターン０について求めたスペクトラム０である。
【００９１】
次にステップＳ８０５ａ１６では先ず、スペクトラム１からスペクトラム２を減算した結果を差分スペクトラムとして求める。図１０において１１０５は、１１０３で示すスペクトラム１から、１１０４で示すスペクトラム２を減算することで得られる差分スペクトラムである。そして更に本ステップでは、この差分スペクトラムと、スペクトラム０との相互相関ｇ０を求める。
【００９２】
次に処理を図９のステップＳ８０５ｂに進める。ステップＳ８０５ｂでは、ステップＳ８０５ａと同様にして、ステップＳ８０３で選択した外接矩形について振幅スペクトラムを求めると共に、パターン１の振幅スペクトラムを求める。そして、それぞれの振幅スペクトラム間の類似度ｇ１を求める。即ち、パターン０の代わりにパターン１を用いる以外は、ステップＳ８０５ｂにおける処理は、ステップＳ８０５ａにおける処理と同じである。図１０において１１０８は、サイズを拡大したパターン１である。また図１０において１１０９は、サイズを拡大したパターン１について求めたスペクトラムである。
【００９３】
次にステップＳ８０５ｃでは、類似度ｇ０とｇ１との大小比較を行う。係る大小比較の結果、ｇ１≧ｇ０の場合には処理をステップＳ８０５ｄに進め、ｇ１＜ｇ０の場合には処理をステップＳ８０５ｅに進める。
【００９４】
ステップＳ８０５ｄでは、ステップＳ８０３で選択した外接矩形内の文字部分を構成しているパターンはパターン１であるとし、この外接矩形に埋め込まれているビット値として「１」を出力する。
【００９５】
一方、ステップＳ８０５ｅでは、ステップＳ８０３で選択した外接矩形内の文字部分を構成しているパターンはパターン０であるとし、この外接矩形に埋め込まれているビット値として「０」を出力する。
【００９６】
ステップＳ８０５ｄ、ステップＳ８０５ｅの何れの処理の後にも、処理は図８のステップＳ８０６に進める。
【００９７】
全ての外接矩形をステップＳ８０３で選択している場合には処理をステップＳ８０６を介してステップＳ８０７に進む。一方、ステップＳ８０３で未だ選択していない外接矩形が存在する場合には処理をステップＳ８０６を介してステップＳ８０３に戻し、未だ選択していない外接矩形を１つ選択し、選択した外接矩形について以降の処理を行う。
【００９８】
ステップＳ８０７では、透かし情報抽出部７０４は、各外接矩形について抽出したビット値を、ステップＳ８０３で外接矩形を選択した順に出力する。これにより、結果として透かし情報抽出部７０４からは、透かし情報７０５が出力されることになる。なお、出力形態については特に限定するものではなく、本装置内若しくは外部に設けているメモリに対して透かし情報７０５を出力しても良いし、ネットワークを介して外部に対してこの透かし情報７０５を送信しても良い。
【００９９】
以上の説明により、本実施形態によれば、原稿品位の劣化を押さえつつ電子透かしの埋め込みを行った文書画像から、埋め込み情報を抽出することができる。
【０１００】
また、本実施形態によれば、文字の形の影響がないフーリエ面を求めることによって、文字を構成するパターンを正確に抽出できる。
【０１０１】
なお、本実施形態では、「０」、「１」という１ビットを１つ文字部分について埋め込んでいるが、「０１０」、「１１０」など、複数ビットを１つの文字領域について埋め込んでも良い。この場合、パターンはパターン０、パターン１の２種類ではなく、より多くの種類のパターンが予め用意されることになる。例えば、１つの文字領域について３ビットを埋め込む場合には、８種類のパターンのうち、埋め込むビット列に対応するパターンを用いることになる。
【０１０２】
また、抽出側では、類似度を求める際、差分スペクトラムと、それぞれのパターン（パターン０，パターン１，…，パターンｎ  （１つの文字領域について３ビットを埋め込んだ場合、ｎ＝８）との類似度ｇ０，ｇ１，…，ｇｎを求める。そして求めた全ての類似度のうち、ｇｊ  （０≦ｊ≦７）が最も大きい場合には、パターンｊが埋め込まれていたものと判断し、パターンｊに対応する値を出力する。
【０１０３】
［第２の実施形態］
図１に示した画像処理装置１９０を構成する各部、図７に示した画像処理装置７９０を構成する各部については、ハードウェアでもって実現しても良いが、ソフトウェアでもって実装するようにしても良い。この場合、このソフトウェアを一般のＰＣ（パーソナルコンピュータ）等のコンピュータにインストールさせ、このコンピュータが有するＣＰＵがこのソフトウェアを実行することで、図１，７に示した各部の機能を実現することになる。その場合、このコンピュータは、画像処理装置１９０としても機能するし、画像処理装置７９０としても機能する。
【０１０４】
図２は、画像処理装置１９０、画像処理装置７９０の機能構成をソフトウェアで実現した場合に、このソフトウェアを実行するコンピュータのハードウェア構成を示すブロック図である。
【０１０５】
２０２はＣＰＵで、主記憶装置２０３に格納されているプログラムやデータを用いて処理を実行することで、本コンピュータ全体の制御を行うと共に、上記各フローチャートに従った処理を実行する。
【０１０６】
２０３はＲＡＭに代表される主記憶装置である。主記憶装置２０３は、ＨＤＤ（ハードディスク）２０４、ＣＤ−ＲＯＭドライブ２０９、ＤＶＤ−ＲＯＭドライブ２１０、ＦＤＤ（フロッピー（登録商標）ディスクドライブ）からロードされたプログラムやデータを一時的に記憶する為のエリアを有する。また、主記憶装置２０３は、ＣＰＵ２０２が各種の処理を実行するために使用するワークエリアも有する。更に主記憶装置２０３は、Ｉ／Ｆ（インターフェース）２１５を介してスキャナ２１７から入力された文書画像のデータを一時的に記憶するためのエリアも有する。即ち主記憶装置２０３は、各種のエリアを適宜提供することができる。
【０１０７】
２０４はＨＤＤで、ここにはＯＳ（オペレーティングシステム）や、上記各フローチャートに従った処理をＣＰＵ２０２に実行させるためのプログラムやデータ、文書画像、そして予め作成しておいても良いと上記説明で述べた各種のデータが保存されている。ＨＤＤ２０４に保存されてるプログラムやデータは、ＣＰＵ２０２による制御に従って適宜主記憶装置２０３にロードされる。そしてＣＰＵ２０２はこのロードされたプログラムやデータを用いて、各種の処理を実行する。
【０１０８】
２０５はビデオコントローラで、ＣＰＵ２０２による処理の結果生成される画像データや文字データに従った画像信号、文字信号を生成し、モニタ２０６に送出するものである。モニタ２０６は、ＣＲＴや液晶画面などにより構成されており、ビデオコントローラ２０５から送出された画像信号や文字信号に基づいた画像や文字を表示する。
【０１０９】
２０８はＩ／Ｆで、プリンタ２１６を本コンピュータに接続するためのインターフェースとして機能する。係るＩ／Ｆ２０８は周知の通り、本コンピュータが印刷データをプリンタ２１６に対して送出するためのインターフェースとして機能したり、本コンピュータがプリンタ２１６の状態を取得したりするためのインターフェースとして機能するものである。
【０１１０】
ＣＤ−ＲＯＭドライブ２０９は、記憶媒体の一例としてのＣＤ−ＲＯＭに記録されているプログラムやデータを読み出し、ＨＤＤ２０４や主記憶装置２０３に送出する。
【０１１１】
ＤＶＤ−ＲＯＭドライブ２１０は、記憶媒体の一例としてのＤＶＤ−ＲＯＭに記録されているプログラムやデータを読み出し、ＨＤＤ２０４や主記憶装置２０３に送出する。
【０１１２】
ＦＤＤ２１１は、記憶媒体の一例としてのフロッピー（登録商標）ディスクに記録されているプログラムやデータを読み出し、ＨＤＤ２０４や主記憶装置２０３に送出する。
【０１１３】
なお、ＣＤ−ＲＯＭドライブ２０９、ＤＶＤ−ＲＯＭドライブ２１０、ＦＤＤ２１１については対応する記憶媒体に情報を記録するようにしても良い。
【０１１４】
Ｉ／Ｆ２１２は、マウス２１３やキーボード２１４を本コンピュータに接続するためのインターフェースとして機能するものである。本コンピュータのユーザがマウス２１３やキーボード２１４を用いて操作すると、この操作内容を示す操作信号は、このＩ／Ｆ２１２を介してＣＰＵ２０２に通知される。マウス２１３やキーボード２１４は、例えば、電子透かしを埋め込む文書画像１００を選択したり、埋め込み情報１０４を指示したり、作成したりするために使用される。
【０１１５】
Ｉ／Ｆ２１５は、スキャナ２１７を本コンピュータに接続するためのインターフェースとして機能するものであり、スキャナ２１７が読み取った結果としての画像データは、このＩ／Ｆ２１５を介してＨＤＤ２０４や主記憶装置２０３に送出される。このスキャナ２１７は、例えば、文章を読み取り、上記文書画像１００や、文書画像７００を本コンピュータ内に入力するための機器として機能する。
【０１１６】
なお、同図に示した構成は一例であり、必ずしも全ての構成を使用することに限定するものではないし、必要に応じて他の機器を付加してもよい。
【０１１７】
［その他の実施形態］
また、本発明の目的は、以下のようにすることによって達成されることはいうまでもない。即ち、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体（または記憶媒体）を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【０１１８】
また、コンピュータが読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１１９】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１２０】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【０１２１】
【図１】文書画像に対して電子透かしの埋め込みを行う画像処理装置の機能構成を示すブロック図である。
【図２】画像処理装置１９０、画像処理装置７９０の機能構成をソフトウェアで実現した場合に、このソフトウェアを実行するコンピュータのハードウェア構成を示すブロック図である。
【図３】画像処理装置１９０によって行われる、文書画像に対する電子透かしの埋め込み処理のフローチャートである。
【図４】ステップＳ３０６ｃの処理の詳細を示すフローチャートである。
【図５】ステップＳ３０６における埋め込み処理の詳細を示すフローチャートである。
【図６】埋め込み処理を説明する図である。
【図７】画像処理装置１９０が上記の処理を行うことにより文書画像１００に埋め込んだ埋め込み情報１０４を抽出する画像処理装置７９０の機能構成を示すブロック図である。
【図８】画像処理装置７９０が行う、透かし埋め込み画像１０８から透かし情報７０５を抽出する処理のフローチャートである。
【図９】ステップＳ８０５における処理の詳細を示すフローチャートである。
【図１０】ステップＳ８０５ａにおける処理を説明する図である。
【図１１】ステップＳ８０５ａにおける処理の詳細を示すフローチャートである。
【図１２】英文字列のスペースの量をコントロールすることにより情報を埋め込むタイプを説明する図である。
【図１３】文字の大きさを拡大あるいは縮小することによって情報を埋め込むタイプを説明する図である。
【図１４】文字を回転させることによって情報を埋め込むタイプを説明する図である。
【図１】
2008098949.tif 000008
【図２】
2008098949.tif 000009
【図３】
2008098949.tif 000010
【図４】
2008098949.tif 000011
【図５】
2008098949.tif 000012
【図６】
2008098949.tif 000013
【図７】
2008098949.tif 000014
【図８】
2008098949.tif 000015
【図９】
2008098949.tif 000016
【図１０】
2008098949.tif 000017
【図１１】
2008098949.tif 000018
【図１２】
2008098949.tif 000019
【図１３】
2008098949.tif 000020
【図１４】
2008098949.tif 000021