JP2005117154A - 電子透かし埋め込み方法、電子透かし埋め込み装置、電子透かし抽出方法、電子透かし抽出装置、上記各方法を実行可能なコンピュータプログラム、及びこれを記憶した記憶媒体 - Google Patents

電子透かし埋め込み方法、電子透かし埋め込み装置、電子透かし抽出方法、電子透かし抽出装置、上記各方法を実行可能なコンピュータプログラム、及びこれを記憶した記憶媒体 Download PDF

Info

Publication number
JP2005117154A
JP2005117154A JP2003345826A JP2003345826A JP2005117154A JP 2005117154 A JP2005117154 A JP 2005117154A JP 2003345826 A JP2003345826 A JP 2003345826A JP 2003345826 A JP2003345826 A JP 2003345826A JP 2005117154 A JP2005117154 A JP 2005117154A
Authority
JP
Japan
Prior art keywords
digital watermark
embedding
information
watermark information
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2003345826A
Other languages
English (en)
Inventor
Takami Eguchi
貴巳 江口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2003345826A priority Critical patent/JP2005117154A/ja
Publication of JP2005117154A publication Critical patent/JP2005117154A/ja
Withdrawn legal-status Critical Current

Links

Images

Abstract

【課題】 電子透かし情報を埋め込むべき箇所に、所望の方法で電子透かし情報を埋め込むことが出来ない状況が発生したとしても、その状況を上記画像を用いて伝達し、この電子透かし情報を上記画像から抽出する側で正確に抽出できる様にする。
【解決手段】 画像を入力するステップ、電子透かしとして埋め込むべき電子透かし情報を入力するステップ、第1の電子透かし埋め込みアルゴリズムを用いて前記電子透かし情報を埋め込む為に変更されるべき前記画像における各部分について、該埋め込みの為の変更が可能であるか否を判定するステップ、前記各部分のうち、前記埋め込みの為の変更が可能である部分にのみ、電子透かし情報を埋め込むステップ、前記各部分のうち、前記埋め込みの為の変更が不可能である部分に、第2の電子透かし埋め込みアルゴリズムを用いて、前記第1埋め込み手段による埋め込みが成されないことを示す情報を埋め込むステップとを備える。
【選択図】 図1

Description

本発明は、文書画像等に電子透かし情報を埋め込む方法、及び電子透かし情報が埋め込まれた画像データからこの電子透かし情報を抽出する方法に関するものである。
従来、文書画像のように文字列で構成される画像に電子透かし情報を埋め込む技術として、例えば、以下の文献に記載されている。
公知技術は、隣接する文字の間の空白の長さを変更することにより電子透かし情報を埋め込む方法である。
King Mongkut大学による"Electronic document data hiding technique using inter−character space",The 1998 IEEE Asia−Pacific Conf.On Circuits and Systems,1998,pp.419−422.
次に、本出願人は、文字の間の空白の長さを変更することにより電子透かし情報を埋め込む方法の1つとして、例えば、以下の様な方法を考える。
図18では、電子透かし情報が埋め込まれる前の文書画像が示されている。
図19では、図18の文書画像の一部に電子透かし情報が埋め込まれた後の文書画像が示されている。
各図に示されている矩形は、各文字に外接する矩形である。
図18及び図19では、文字(外接矩形)が5文字、文字の間(外接矩形の間)の空白が4つある。
図18において、P、S、P、Sは、各文字の間(各外接矩形の間)の空白の長さを示す。図19においてP’、S’、P’、S’は、電子透かし情報の埋め込みにより、上記P、S、P、Sが変化した後の長さを示す。
ここでは、1ビットの電子透かし情報を埋め込むために、隣接する2つの空白の長さを調整する。よって、図18、図19に示す4つの空白長では、4つの空白が有る場合には、2ビットの電子透かし情報を埋め込むことが可能である。
例えば、P>Sが1を表し、P<Sが0を表すと定める。そこで、図18においてPとSとの間の“子”という文字を左方向に、PとSとの間の“か”という文字を右方向に移動させた場合、埋め込み後の文書画像の一部である図10では、P’<S’、P’<S’となり、「0,1」というビット列(電子透かし情報)が埋め込まれたことになる。
しかしながら、上述の電子透かし手法を実施する上においては、埋め込み対象となる文字間の位置関係によって、どうしても情報を埋め込めない場所が生じてしまうという問題が有る。
その一例を説明する。図20における各矩形は、図18や図19の様に各文字の外接矩形である。図20では、空白の長さP及びSが1画素分の長さしかない。この場合には、PとSの間の文字(2)を左右どちらに移動しても、隣接する文字(1)または(3)に接触してしまい、文書画像として不自然になってしまう。従って、この場合には文字を移動するのは不適切である。
この様な場合に生じる“電子透かし情報が埋め込めなかった場所(空白)”について、その電子透かし情報の検出/抽出側において、電子透かし情報が埋め込まれたことによってその様な空白(空白の長さ)になっているのか、それとも、電子透かし情報を埋め込むことができずにその様な空白(空白の長さ)になっているのかを知ることができない。
従って、全ての場所に電子透かし情報が埋め込まれているという前提の下に、電子透かし情報の抽出を行うので、実際の電子透かし情報とは異なる情報を誤って抽出してしまう問題がある。
本発明は上記問題点に鑑みてなされたものであり、画像へ電子透かし情報を埋め込む際に、電子透かし情報を埋め込むべき箇所に、所望の方法で電子透かし情報を埋め込むことが出来ない状況が発生したとしても、その状況を上記画像を用いて伝達し、この電子透かし情報を上記画像から抽出する側で正確に抽出できる様にすることを主な目的とする。
上記目的を達成する為に本発明の電子透かし埋め込み方法によれば、画像を入力する画像入力ステップと、電子透かしとして埋め込むべき電子透かし情報を入力する情報入力ステップと、第1の電子透かし埋め込みアルゴリズムを用いて前記電子透かし情報を埋め込む為に変更されるべき前記画像における各部分について、該埋め込みの為の変更が可能であるか否を判定する埋め込み可否判定ステップと、前記各部分のうち、前記埋め込みの為の変更が可能である部分にのみ、電子透かし情報を埋め込む第1埋め込みステップと、前記各部分のうち、前記埋め込みの為の変更が不可能である部分に、第2の電子透かし埋め込みアルゴリズムを用いて、前記第1埋め込み手段による埋め込みが成されないことを示す情報を埋め込む第2埋め込みステップとを備えたことを特徴とする。
本発明によれば、画像へ電子透かし情報を埋め込む際に、電子透かし情報を埋め込み対象として通常考えられる場所に、所望の方法で電子透かし情報を埋め込むことが出来ない状況が発生したとしても、その状況を上記画像を用いて伝達することができ、結果的に、この電子透かし情報を上記画像から抽出する側で正確に抽出することができる。
<<システム概略>>
まず最初に、各実施例で電子透かし埋め込み装置、或いは抽出装置として機能する画像処理システムの一例を図21に示す。
図21において、2101はコンピュータであり、所定のプログラムに基づいて、種々のデータを処理することが可能である。
2117は原稿を読み取り、画像データを発生するスキャナである。このコンピュータ2101は、スキャナ2117から発生した画像データを入力し、この画像データの編集や保存を行う。
2116はプリンタであり、スキャナから得た画像データを表す画像、或いはコンピュータ2101内部で処理した後の画像データを表す画像を、インクまたはトナー等を用いて紙等へ印刷する。
なお、ユーザからの各種指示は、マウス2113、キーボード2114を用いて行われる。
コンピュータ2101の内部では、バス2107により各処理部が接続されており、各処理部の間で種々のデータを送受信できる。
図21において、2102はMPU(micro processing unit)である。このMPU2102は、コンピュータ2101内部の他の各処理部の動作を制御し、或いは、内部に記憶されたプログラムを実行することができる処理部である。
主記憶装置2103は、MPU2102において行われる各種処理のために、一時的にプログラムや処理対象の画像データを格納しておく装置である。
2104は、HDD(hard disk drive)である。このHDD2104は、主記憶装置2103等に転送されるプログラムや画像データをあらかじめ格納したり、処理後の画像データを保存することのできる処理部である。
2115は、スキャナインタフェース(I/F)である。このI/F2115は、上述したスキャナ2117と接続されており、スキャナ2117から得られた画像データをコンピュータ内部へ入力する為のインターフェイスである。
2108は、プリンタインタフェース(I/F)である。I/F2108は、上述したプリンタ2116と接続されており、印刷するべき画像データをコンピュータ内部の各処理部からプリンタ2116へ送出する為のインターフェイスである。
2109はCDドライブである。このCDドライブ2109は、外部記憶媒体の一つであるCD(CD−R/CD−RW)に記憶されたデータを読み込んだり、あるいは書き出したりすることができる処理部である。
2111はフロッピー(登録商標)ディスク(FD:floppy disk)ドライブである。このFDドライブ2111は、上記CDドライブ2109と同様にFDに記憶されたデータの読み込みや、FDへの書き出しをすることができる処理部である。
2110は、DVD(Digital Versatile Disc)ドライブである。このDVDドライブ2110も、上記CDドライブ2109と同様に、DVD(DVD−RW/DVD−RAM等)からの読み込みや、DVDへの書き出しをすることができる処理部である。
なお、上記CD、FD、DVD等に画像編集用のプログラム、或いはスキャナドライバ、或いはプリンタドライバ、が記憶されている場合には、本コンピュータ2101は、これらプログラムをHDD2104上にインストールし、必要に応じて主記憶装置2103に転送されるようになっている。
インターフェイス(I/F)2112は、コンピュータ2101として、マウス2113やキーボード2114を介してユーザからの指示を受理する為のインターフェイスである。
2106はモニタである。このモニタ2106は、電子透かし情報を埋め込んだ際の処理結果、或いは電子透かし情報を抽出した際の処理結果、或いは上記各種処理の過程を表示することのできる処理部ある。
2105はビデオコントローラである。このビデオコントローラ2105は、上記モニタに表示するべき画像データをモニタ2106に送信するための処理部である。
以下で説明する実施例では、第1の埋め込み用アルゴリズムを用いて電子透かし情報を埋め込めなかった場合に、補助用のマーキングアルゴリズム(第2の埋め込み用アルゴリズム)を用いて上記電子透かし情報が埋め込めなかったことを示す付加情報を埋め込む。
一方、画像から上記電子透かし情報を抽出する時には、上記補助用のマーキングアルゴリズム(第2の埋め込み用アルゴリズム)に基づいて上記付加情報を検知し、電子透かし情報の通常の埋め込み対象である画像中の何れの部分(空白)に電子透かし情報が埋め込めなかったかを認識する。そして、この認識結果に基づいて特定される“電子透かし情報が埋め込まれている場所”のみから、第1の埋め込み用アルゴリズムに基づいて抽出を行うことができる。
以下、更に具体的な電子透かし情報の埋め込み手順と、抽出手順について説明してゆく。
<<電子透かし情報の埋め込み>>
図1は、本実施例における電子透かし埋め込み装置を説明するための概略図である。
図1において、100は、電子透かし情報を埋め込む対象である画像である。
この画像100は、画像入力部101に入力される。なお、この画像入力部101の機能は、上述した図21においては、スキャナ2117が処理できる。
次に、文書解析部102において、画像100に含まれる各文字の位置関係が解析される。
次に、透かし情報埋め込み可能性判定部103において、電子透かし情報を埋め込めるか否かの判定が行われる。この判定部103において、“電子透かしの埋め込みは不可能である”と判定した場合には、補助用マーキング埋め込み部104により、第2の電子透かし埋め込み方法を用いて、電子透かし情報が埋め込めなかった場所を示す付加情報を埋め込む。
透かし情報埋め込み部106では、本来埋め込むべき電子透かし情報105を入力し、この情報105を、画像100における“電子透かし情報を埋め込むことが可能である”と判断された場所にのみ、第1の電子透かし埋め込み方法を用いて、埋め込む。
上記、文書解析部102、判定部103、埋め込み部104、埋め込み部106の動作は、図21においては、主にMPU2102が所定プログラムに基づき、かつ主記憶装置2103等と連携して実行する。
最後に、画像出力部107により、透かし埋め込み画像108が生成される。この画像入力部101の機能は、上述した図21においては、プリンタ2116が処理できる。
また、上記処理に際し、図21のモニタ2106で実行状況を確認したり、電子透かしの埋め込み結果を確認したりすることも可能である。
図3は、本実施例における、電子透かし情報の埋め込み処理の手順を示すフローチャートである。
まず、ステップS301において、電子透かし情報の埋め込み対象となる画像100が、画像入力部101(スキャナ2117等)から入力される。なお、この画像100は、スキャナ2117からの入力する場合に限らず、コンピュータ2101内の処理部(例えばハードディスク2104)に存在する画像データを取得しても良い。また例えば、CDドライブ2109、DVDドライブ2110、FDドライブ2111等により各記憶媒体に格納された画像データを取得しても良い。
次にステップS302において、文書解析手段102は、画像100から“外接矩形”の抽出を行う。
この外接矩形とは、画像100内に存在する1つ1つの文字に外接する矩形であって、1文字に1つの矩形が対応する。この外接矩形の検出方法は、例えば、画像100内の各画素値を垂直座標軸に対して射影し、空白部分(黒色である文字のない部分)を探索して行を判別して行(文字列)への分割を行う。続いて、この行(文字列)に対して水平座標軸に対して射影し、空白部分を探索して文字単位に分割する。これによって、各文字を外接矩形で切り出すことが可能である。
次に、ステップS303において、画像100に埋め込むべき電子透かし情報105を入力する。この入力は、例えば図21のキーボード2114やマウス2113等により行うことができる。ただし、この電子透かし情報105としては、例えば、コンピュータ2101内の処理部(例えばハードディスク2104)に存在するデータを利用しても良い。また例えば、CDドライブ2109、DVDドライブ2110、FDドライブ2111等により各記憶媒体に格納されたデータを利用しても良い。
<電子透かし埋め込み方法(第1電子透かし埋め込みアルゴリズム)>
次に、上述した図1の透かし情報埋め込み部106による、電子透かし情報の埋め込みアルゴリズム(第1の電子透かし埋め込み方法)について説明する。
図10は、本実施例の埋め込み方法(第1電子透かし埋め込みアルゴリズム)を示す概略図である。
ここで示す埋め込みアルゴリズムは、水平方向に並ばない所定位置関係を持つ文字同士の距離を調節することにより電子透かし情報を埋め込むというものである。この為に、一部の外接矩形(文字)を水平方向に移動させる。
図中、(A,B)と記載されている矩形は、各文字の外接矩形である。
例えば、移動させる外接矩形は(2,2)、(2,4)である。一方、(1,1)、(1,3)、(2,1)、(2,3)はアンカーポイントとして動かさない。
そして、電子透かし情報の埋め込みは、水平方向に並ばない所定位置関係を持つ文字同士「(2,2)と(1,1)」の水平方向の距離L1と、水平方向に並ばない所定位置関係を持つ文字同士「(2,2)と(1,3)」の水平方向の距離R1との大小関係を調節することで達成される。
例えば、1ビットの情報「1」を埋め込みたいときはL1>R1となるように外接矩形の位置関係を調節し、1ビットの情報「0」を埋め込みたいときはL1<R1となるように外接矩形の位置関係を調節する。
以上が、本実施例で適用する、電子透かし情報の埋め込みアルゴリズム(第1の電子透かし埋め込み方法)である。
図3の説明に戻る。
次に、ステップS304において、電子透かし情報105として埋め込まれるべき先頭の文字(ビット情報)が選択される。
例えば、図1の電子透かし情報105として示した「01001010111・・・」を画像100に埋め込む場合には、先頭の文字とは1ビットの情報「0」である。
次に、ステップS305において、電子透かし情報105を埋め込むために位置を調整(水平方向へ移動)するべき外接矩形を選択する。上述した図10の説明においては、外接矩形(2,2)を最初に選択する。
次に、ステップS306において、位置調整(電子透かし埋め込み)の対象となる外接矩形について、“この外接矩形の位置を調整することが可能か否か”言い換えれば“この外接矩形の位置を調整することにより、電子透かし情報を埋め込むことができるか否か”を判定する。この判定は、埋め込み可能性判定部103で実行される。
<電子透かし埋め込みの可否判定>
図5は、上記ステップS306内の、埋め込み可能性判定部103による、詳細な動作手順を示すフローチャートである。
まず最初に、ステップS306aにおいて、上記ステップ306で判定対象となっている外接矩形に電子透かし情報を埋め込む場合に変化する可能性の有る距離パラメータ(例えば、外接矩形(2,2)を判定中であれば、図10のL1,R1,Sl,Srの距離パラメータ)を算出して、記憶する。
上記L1は、“注目している外接矩形(2,2)と、それと水平方向に並ばない所定位置関係を持つ文字(1,1)との水平方向の距離”である。
上記R1は、“注目している外接矩形(2,2)と、それと水平方向に並ばない所定位置関係を持つ文字(1,3)との水平方向の距離”である。
上記Slは、外接矩形(2,2)とその左隣の外接矩形(2、1)との水平方向の距離である。この距離Slは、“注目する外接矩形を左に移動させることのできる最大移動距離”であると解釈できる。
上記Srは、注目している外接矩形(2,2)とその右隣の外接矩形(2,3)との水平方向の距離である。この距離Srは、“注目する外接矩形を右に移動させることのできる最大移動距離”であると解釈できる。
これらの距離は、例えば図21の2103の主記憶装置に記憶する。
次にステップS306bにおいて、所定の判定条件に基づいて、電子透かし情報の埋め込みが可能か否かの判定を行う。
この判定条件については、「0」が埋め込めない条件と「1」が埋め込めない条件とで異なる。
また、後述するが、本実施例では、電子透かし情報(ビット情報)の「1」を埋め込みたい時には、L1>R1という大小関係となる様に、注目している外接矩形を移動させるものとする。一方、電子透かし情報(ビット情報)の「0」を埋め込みたい時には、L1<R1という大小関係となる様に、注目している外接矩形を移動させるものとする。よって、この前提に基づいて、以下の判定を行う。
本実施例において、電子透かし情報(ビット情報)の「1」を埋め込みたい時には、「注目している外接矩形を最も右方向へ移動した時の距離L1(L1の最大値)が、その時の距離R1(R1の最小値)よりも大きくなるか否か」を判定する。即ち、
L1+Sr>R1−Sr ・・・(式1)
を満たすか否かを判定する。この(式1)を満たせば、ビット情報「1」は埋め込める。
これと同様に、電子透かし情報(ビット情報)の「0」を埋め込みたい時には、「注目している外接矩形を最も左方向へ移動した時の距離R1(R1の最大値)が、その時の距離L1(L1の最小値)よりも大きくなるか否か」を判定する。即ち、
L1−Sl<R1+Sl ・・・(式2)
を満たすか否かを判定する。この(式2)を満たせば、ビット情報「0」は埋め込める。
もし、ステップS306において、“注目している外接矩形(2,2)の調整により、電子透かし情報(ビット情報)の「1」を埋め込もうとしている場合”には、ステップS306bでは、上記(式1)を参照し、この条件を満たすか否かを判定することにより、電子透かし情報の埋め込みが可能か否かを判定する。
また、ステップS306において、“注目している外接矩形(2,2)の調整により、電子透かし情報(ビット情報)の「0」を埋め込もうとしている場合”には、ステップS306bでは、上記(式2)を参照し、この条件を満たすか否かを判定することにより、電子透かし情報の埋め込みが可能か否かを判定する。
図3の説明に戻る。
もし、ステップS306において“No(埋め込み不可能)”と判定された場合には、ステップS307に進む。
ステップS307では、補助マーキング埋め込み部104は、そこで判定対象となっている外接矩形(上記説明では外接矩形(2,2))に対して、第2の電子透かし埋め込み方法を用いて、「電子透かし情報(ビット情報)を埋め込むことができなかった場所であること」を示すマーキングを行う。
以下に、ステップS307において補助マーキング埋め込み部104が行うマーキング方法を、詳しく説明する。
<マーキング方法(第2電子透かし埋め込みアルゴリズム)>
以下、図6のフローチャート、及び図11を用いて、マーキング方法について説明する。
図6は、上記ステップS307内の、補助マーキング埋め込み部104による、詳細な動作手順を示すフローチャートである。
図11は、本実施例の埋め込み方法(第2電子透かし埋め込みアルゴリズム)を示す概略図である。
まず、S307aにおいて、S306にて判定対象となっていた外接矩形(上述の例では矩形(2,2))が配置されている行(水平方向の文字列)のベースラインを算出する。
なお、図11においては、矩形(2,2)行は、上から2つ目の行に属すると考えられる。
本実施例では、このベースラインとは、この行に属する各文字(外接矩形)の底(外接矩形の下辺)の位置の平均とする。よって、S307aにおいて、この行の外接矩形の位置の平均を求め、この位置をベースラインと決める。
次に、ステップS307bにおいて、上記注目している外接矩形(この説明では矩形(2,2))の位置を、上記ベースラインよりも所定距離だけ下方向に移動させる。図11においては、注目している外接矩形(2,2)を距離H1だけ下方向に移動させている。
この移動処理が、マーキングに相当する。これにより、電子透かし情報を抽出しようとする者/装置が、多数の文字が配列された画像から、他の文字よりも所定距離だけ下にずれている文字を検出することができ、その検出の結果、「この文字(外接矩形)には電子透かし情報(ビット情報)が埋め込まれていない」と判定することが可能になる。
ただし、ある行において、全部の文字を下方向にずらしてしまった場合には、「その行の全てに電子透かし情報が埋め込まれている」と誤判定してしまう可能性が有る。従って、これを回避する為に、本実施例では、例えば、「1行中に埋め込めない文字(外接矩形)が所定割合(所定個数)の場合には、その行に属する全ての文字に電子透かし情報を埋め込まない。」といった制御を掛ける。例えば、本実施例において、80パーセント以上の文字(外接矩形)に電子透かし情報が埋め込めない場合には、その行(文字列)には電子透かし情報は埋め込まないことと決め、その行については、最後(右端)の1文字のみを所定距離だけ上方向に移動させる等により、元の文字配列を極力変化させない様にしておく。
以上説明した様なマーキング処理(S307a、S307b)が完了したら、図3ステップS305に戻る。そして、次の電子透かし情報(ビット情報)の埋め込み対象となる外接矩形(上記説明では、矩形(2,2)の次の矩形(2,4))を選択し、S306の判定を続ける。
図3の説明に戻る。もし、ステップS306において“Yes(埋め込み可能)”と判定された場合には、ステップS308に進む。ステップS308における電子透かし情報の埋め込み方法(第1電子透かし埋め込みアルゴリズム)については、上述した通りだが、本ステップS308での説明として簡単に示す。
<電子透かし情報の埋め込み(第1電子透かし埋め込みアルゴリズム)>
図7は、ステップS308における電子透かし情報の埋め込み手順を示すフローチャートである。
まず、ステップS308aにおいて、S306で判定対象となっていた文字(外接矩形)へ埋め込まれるべき電子透かし情報(ビット情報)が「1」であるか否かを判断する。
上記判定により、埋め込まれるべきビット情報が「1」であった場合(Yesの場合)には、ステップS308bへ進む。
ステップS308bでは、上述した距離LnとRnとの関係が、Ln>Rnとなるように変更する。例えば、矩形(2,2)が電子透かし情報の埋め込み対象となっている場合には、L1>R1となる様にこの矩形(2,2)の位置を変更する。同じく、矩形(2,4)が電子透かし情報の埋め込み対象となっている場合には、L2>R2となるようにこの矩形(2,4)の位置を変更する。
上記判定により、埋め込まれるべきビット情報が「0」であった場合(Noの場合)には、ステップS308cへ進む。
ステップS308cでは、上述した距離LnとRnとの関係が、Ln<Rnとなるように変更する。例えば、矩形(2,2)が電子透かし情報の埋め込み対象となっている場合には、L1<R1となる様にこの矩形(2,2)の位置を変更する。同じく、矩形(2,4)が電子透かし情報の埋め込み対象となっている場合には、L2<R2となるようにこの矩形(2,4)の位置を変更する。
なお本実施例では、注目する矩形において、予め、目的とするLnとRnとの大小関係が成り立っているならば、例えば視覚的な不自然さをできるだけ抑えることを目的として、あえて矩形を移動しなくても良い。ここで、本実施例では、以下の変形が可能である。
例えば、ビット情報「1」を埋め込みたい場合に、予めLn>Rnとなっている場合には、更に、そのLn−Rnの差を検出する。そして、この差が大きい場合には、上述した様に矩形を移動しないが、この差が余り大きくない場合には、所定量以上の差となる様に、上記矩形を左に移動する。また例えば、ビット情報「0」を埋め込みたい場合に、予めLn<Rnとなっている場合には、更に、そのLn−Rnの差を検出する。そして、この差が大きい場合には、上述した様に矩形を移動しないが、この差が余り大きくない場合には、所定量以上の差となる様に、上記矩形を左に移動する。
また、上記趣旨を更に上位概念としてまとめて、以下の条件を満たしているか否かを判定し、その条件を満たさない場合のみ、矩形の位置を下記条件を満たす様に調整することとしても良い。
条件i)埋め込まれるビット情報の基準が、LnとRnとの大小関係と合致するか。
条件ii)Ln−Rnの絶対値|Ln−Rn|の大きさが、所定量以上であるか。
以上の各種変形例によれば、「LnとRnとを検出する以前に、それらの大小関係が何らかの理由で微量に変化することによる電子透かし情報(ビット情報)誤検出」を防ぐことができる。
図3の説明に戻る。ステップ309では、S308にて処理した矩形が、最後の処理対象の矩形であるか否かを判定する。或いは、S308にて埋め込んだビット情報が、画像100に埋め込むべき電子透かし情報の最後のビット情報である否かを判定する。
上記判定により、処理対象となる最後の矩形か、或いは、最後のビット情報であった場合(Yesの場合)には、更なるステップS304〜S308の処理は不要であると判断し、ステップS310へ進む。一方、Noの場合には、ステップ304に進み、更なるステップS304〜S308の処理を行う。
ステップS310において、上記ステップS309までの処理により確定した、各文字(外接矩形)の配置に基づく画像を生成する。
なお、このステップS310では、文字(外接矩形)の相対的な配置さえ変化しなければ、幾らかの画像処理を加えても良い。例えば、他の画像の上に、S309までで得られた画像を上書きした画像(画像データ)を生成しても良い。或いは、他の画像を第1領域とし、S309までで得られた画像を第2領域として、必要なレイアウトが行うことにより新たな画像(画像データ)を生成しても良い。
ステップS311では、ステップS310で生成された画像(画像データ)を所望の媒体へ出力する。例えば、図21のコンピュータ2101におけるプリンタ2116等に可視状態の画像として、印刷出力することができる。また、不図示のネットワーク回線から、外部端末へ画像データとして出力することもできる。或いは、CD2109、DVD2110、FD2111を介して画像データとして記憶媒体へ記憶させることもできる。また、HDD2104等、内部処理部へ保存しておくこともできる。
<<電子透かし情報の抽出>>
図2は、本実施例における電子透かし抽出装置を説明するための概略図である。
図2において、200は、電子透かし情報を抽出する対象である画像である。この画像200には電子透かし情報が埋め込まれているであろうと予想して入力するものである。
この画像200は、画像入力部201に入力される。なお、この画像入力部201の機能は、上述した図21においては、スキャナ2117が処理できる。
次に、文書解析部202において、画像200に含まれる各文字の位置関係が解析される。
次に、補助用マーキング検出部203により、上述した第2の電子透かし埋め込み方法に基づいて、画像200における“電子透かし情報が埋め込めなかった”場所を検出する。
透かし情報抽出部204では、上記検出結果を参照して、画像200における“(埋め込み側で)電子透かし情報を埋め込むことが可能であった”と判断された場所からのみ、第1の電子透かし埋め込み方法を用いて、電子透かし情報(ビット情報)204を抽出する。
この電子透かし情報204は、上記抽出が成功すれば、図1の電子透かし情報105と同一のものになる。
上記、文書解析部202、補助用マーキング検出部203、透かし情報抽出部204の動作は、図21においては、主にMPU2102が所定プログラムに基づき、かつ主記憶装置2103等と連携して実行する。
図4は、本実施例における、電子透かし情報の抽出処理の手順を示すフローチャートである。
まず、ステップS401において、電子透かし情報の抽出対象となる画像200が、画像入力部201(スキャナ2117等)から入力される。
なお、この画像200は、図3のS311で出力される画像(画像データ)であるから、上述した様に、スキャナ2117からの入力する場合に限らず、コンピュータ2101内の処理部(例えばハードディスク2104)に存在する画像データを取得しても良い。また例えば、CDドライブ2109、DVDドライブ2110、FDドライブ2111等により各記憶媒体に格納された画像データを取得しても良い。
次にステップS402において、文書解析手段202は、画像200から上述した“外接矩形”の抽出を行う。
次に、ステップS403において、電子透かし情報の抽出対象となる外接矩形について、“(埋め込み側で)この外接矩形の位置を調整することが可能だったか否か”言い換えれば“(埋め込み側で)この外接矩形の位置を調整することにより、電子透かし情報を埋め込むことができたか否か”を判定する。この判定は、補助マーキング検出部203で実行される。
<電子透かし抽出の可否判定(埋め込み側での電子透かし情報の埋め込み可否判定)>
図8は、上記ステップS403内の、補助マーキング検出部203による、詳細な動作手順を示すフローチャートである。
まず、S403aにおいて、S403にて判定対象となっていた外接矩形(例えば図11の矩形(2,2))が配置されている行(水平方向の文字列)のベースラインを算出する。
なお、図11においては、矩形(2,2)行は、上から2つ目の行に属すると考えられる。本実施例では、このベースラインとは、この行に属する各文字(外接矩形)の底(外接矩形の下辺)の位置の平均とする。よって、S403aにおいて、この行の外接矩形の位置の平均を求め、この位置をベースラインと決める。
次に、ステップS403bにおいて、上記注目している外接矩形(この説明では矩形(2,2))を選択する。
次に、ステップS403cにおいて、上記注目している外接矩形(この説明では矩形(2,2))の下辺と、上記ベースラインとの位置を比較する。
このステップS403cにおいて、注目している外接矩形の下辺が、ベースラインよりも所定距離、或いは所定距離以上、下方向にズレている場合には、「この文字(外接矩形)には電子透かし情報(ビット情報)が埋め込まれていない」と判定する。この場合、ステップS403dへ進む。
一方、ステップS403cにおいて、注目している外接矩形の下辺が、ベースラインよりも所定距離、或いは所定距離以上、下方向にズレていない場合には、「この文字(外接矩形)には電子透かし情報(ビット情報)が埋め込まれている」と判定する。この場合、ステップS403eへ進む。
次に、ステップS403dにおいて、「注目している外接矩形は、電子透かし情報(ビット情報)が埋め込まれていない文字(外接矩形)である」として、図21の主記憶装置2103等に記憶する。
一方、ステップS403eにおいて、「注目している外接矩形は、電子透かし情報(ビット情報)が埋め込まれている文字(外接矩形)である」として、図21の主記憶装置2103等に記憶する。
図4の説明に戻る。
次に、ステップ404において、電子透かし抽出部204は、「注目している外接矩形は、電子透かし情報(ビット情報)が埋め込まれている文字(外接矩形)である」と判定された外接矩形のみに対して、次の電子透かし情報の抽出を行う。
<電子透かし情報の抽出(第1電子透かし埋め込みアルゴリズム)>
図9は、ステップS404における電子透かし情報の抽出手順を示すフローチャートである。
このステップ404では、上記ステップS403eにおいて、「電子透かし情報(ビット情報)が埋め込まれている文字(外接矩形)」として記憶された外接矩形のみを、以下のステップS404b〜S404eまでの処理対象として、順次処理することとする。
まず、ステップS404aにおいて、主記憶装置2103等に記憶されたステップS403の判定結果に基づいて、現在の処理対象となっている文字(外接矩形)から電子透かし情報を抽出するべきか否かを判定する。もし、このステップS404aでの処理対象となる文字(外接矩形)が「電子透かし情報(ビット情報)が埋め込まれていない文字(外接矩形)」である場合には、ステップS404bへは進まずに、ステップS405へ進む。一方、このステップS404aでの処理対象となる文字(外接矩形)が「電子透かし情報(ビット情報)が埋め込まれている文字(外接矩形)」である場合には、ステップS404bに進む。
ステップS404bでは、現在の処理対象となっている文字(外接矩形)に電子透かし情報を埋め込む場合に変化する可能性の有る距離パラメータLn、Rn(例えば、外接矩形(2,2)を判定中であれば、図10のL1、R1の距離パラメータ)を算出して、記憶する。
次に、ステップS404cにおいて、これらLn、Rnの比較を行う。
もし、Ln>Rnであれば、ステップS404dへ進む。ステップS404dでは、その文字(外接矩形)に埋め込まれている電子透かし情報(ビット情報)は「1」と判定し、これを電子透かし情報を構成するビット情報「1」として出力する。
もし、Ln<Rnであれば、ステップS404eへ進む。ステップS404eでは、その文字(外接矩形)に埋め込まれている電子透かし情報(ビット情報)は「0」と判定し、これを電子透かし情報を構成するビット情報「0」として出力する。
このステップS404d及びS404eで出力されたビット情報は、主記憶装置2103等に累積記憶される。
次に、ステップS406において、処理対象となっている文字(外接矩形)が最終の外接矩形か否かを判定する。もし、最終の文字(外接矩形)が処理済みであれば、ステップS406へ進む。一方、未処理の文字(外接矩形)が存在する場合には、ステップS403へ戻る。
ステップS406では、上記ステップS404d及びS404eにて出力され、かつ、主記憶装置210に累積記憶された全てのビット情報を、最終的な電子透かし情報として出力する。この電子透かし情報は、図21のプリンタ2116により電子透かし情報を印刷しても良いし、モニタ2106に表示しても良いし、不図示のネットワーク回線から外部端末へ出力しても良いし、CD2109、DVD2110、FD2111を介して各種記憶媒体へ記憶させても良いし、HDD2104等、内部処理部へ保存しても良い。
上記実施例1においては、第1の電子透かし埋め込みアルゴリズムとして、文字(外接矩形)を水平方向へ移動させ、文字間の空白の距離を調節し、その結果、複数個の距離の大小関係を変化させて電子透かし情報(ビット情報)を表現していた。
また上記実施例1においては、第2の電子透かし埋め込みアルゴリズムとして、文字(外接矩形)を垂直方向へ移動させ、同行の他の文字との垂直方向の位置をズラすことにより、電子透かし情報(埋め込み不可能を示す情報)を表現していた。
しかしながら、上記第1、第2の電子透かし埋め込みアルゴリズムは、上記方法に限られず、種々のアルゴリズムの組合せに適用可能である。
この実施例2では、第1の電子透かし埋め込みアルゴリズムとして、文字(外接矩形)の重心の間隔を用いた埋め込み方法を適用し、第2の電子透かし埋め込みアルゴリズム(補助用マーキングアルゴリズム)として、文字(外接矩形)の回転を用いた方法を適用する。
以下、実施例1から実施例2へ変更する際に注目するべき点についてのみ詳細に説明する。電子透かし埋め込みアルゴリズムに関らない装置構成や手順については、基本的に同様であるので、重複して説明しない。よって例えば、実施例2においても、実施例1と同様に、図1から図4等がそのまま適用可能である。
<電子透かし埋め込み方法(第1電子透かし埋め込みアルゴリズム)>
以下に、上述した図1の透かし情報埋め込み部106による、電子透かし情報の埋め込みアルゴリズム(第1の電子透かし埋め込み方法)の変形例について説明する。
図12は、本実施例の埋め込み方法(第1電子透かし埋め込みアルゴリズム)を示す概略図である。
図12に示す各文字(外接矩形)において、電子透かし情報の埋め込みの為に移動させるのは外接矩形(2)及び外接矩形(4)及び外接矩形(6)である。
外接矩形(2)を移動させる場合について、図12を用いて具体的に説明する。
ここでは、外接矩形(2)と外接矩形(1)との夫々の重心の間の水平方向の距離L1と、外接矩形(2)と外接矩形(3)との夫々の重心の間の水平方向の距離R1との大小関係を調整することにより、電子透かし情報(ビット情報)を埋め込む。
例えば、ビット情報「1」を埋め込みたいときには、L1>R1となる様に外接矩形(2)を水平方向に移動させ、ビット情報「0」を埋め込みたいときには、L1<R1となる様に外接矩形(2)を水平方向に移動させる。また、第1の実施例と同様、外接矩形(2)の位置を移動させなくても、目標とするL1とR2との大小関係が成り立っているならば、あえて移動を実行する必要はない。
<電子透かし埋め込みの可否判定>
図5のフローチャートを用いて、実施例2を説明する。
まず最初に、ステップS306aにおいて、上記ステップ306で判定対象となっている外接矩形に電子透かし情報を埋め込む場合に変化する可能性の有る距離パラメータ(例えば、外接矩形(2,2)を判定中であれば、図12のL1,R1,Sl,Srの距離パラメータ)を算出して、記憶する。
上記L1は、“注目している外接矩形(2)の重心と、それと水平方向に並ぶ所定位置関係を持つ文字(1)の重心との水平方向の距離”である。
上記R1は、“注目している外接矩形(2)の重心と、それと水平方向に並ばない所定位置関係を持つ文字(3)の重心との水平方向の距離”である。
なお、本実施例では、LnとRnは、重心同士の間の距離である点に注意して欲しい。
上記Slは、外接矩形(2)とその左隣の外接矩形(1)との水平方向の距離である。この距離Slは、“注目する外接矩形を左に移動させることのできる最大移動距離”であると解釈できる。
上記Srは、注目している外接矩形(2)とその右隣の外接矩形(3)との水平方向の距離である。この距離Srは、“注目する外接矩形を右に移動させることのできる最大移動距離”であると解釈できる。
これらの距離は、例えば図21の2103の主記憶装置に記憶する。
次にステップS306bにおいて、所定の判定条件に基づいて、電子透かし情報の埋め込みが可能か否かの判定を行う。
この判定条件については、「0」が埋め込めない条件と「1」が埋め込めない条件とで異なる。
本実施例において、電子透かし情報(ビット情報)の「1」を埋め込みたい時には、「注目している外接矩形を最も右方向へ移動した時の距離L1(L1の最大値)が、その時の距離R1(R1の最小値)よりも大きくなるか否か」を判定する。即ち、
L1+Sr>R1−Sr ・・・(式3)
を満たすか否かを判定する。この(式3)を満たせば、ビット情報「1」は埋め込める。
これと同様に、電子透かし情報(ビット情報)の「0」を埋め込みたい時には、「注目している外接矩形を最も左方向へ移動した時の距離R1(R1の最大値)が、その時の距離L1(L1の最小値)よりも大きくなるか否か」を判定する。即ち、
L1−Sl<R1+Sl ・・・(式4)
を満たすか否かを判定する。この(式4)を満たせば、ビット情報「0」は埋め込める。
もし、ステップS306において、“注目している外接矩形(2)の調整により、電子透かし情報(ビット情報)の「1」を埋め込もうとしている場合”には、ステップS306bでは、上記(式3)を参照し、この条件を満たすか否かを判定することにより、電子透かし情報の埋め込みが可能か否かを判定する。
また、ステップS306において、“注目している外接矩形(2)の調整により、電子透かし情報(ビット情報)の「0」を埋め込もうとしている場合”には、ステップS306bでは、上記(式4)を参照し、この条件を満たすか否かを判定することにより、電子透かし情報の埋め込みが可能か否かを判定する。
<マーキング方法(第2電子透かし埋め込みアルゴリズム)>
図13は、上記ステップS307内の、補助マーキング埋め込み部104による、詳細な動作手順を示すフローチャートである。
図15は、本実施例の埋め込み方法(第2電子透かし埋め込みアルゴリズム)を示す概略図である。
まず、S307−2aにおいて、S306にて判定対象となっていた外接矩形(上述の例では矩形(2))の重心を算出する。
次に、ステップS307−2bにおいて、上記注目している外接矩形(この説明では矩形(2))を、上記算出された重心を中心として、例えば図15の様に、時計回りに回転させる。
この回転処理が、マーキングに相当する。これにより、電子透かし情報を抽出しようとする者/装置が、多数の文字が配列された画像から、他の文字よりも所定角度だけ回転している文字を検出することができ、その検出の結果、「この文字(外接矩形)には電子透かし情報(ビット情報)が埋め込まれていない」と判定することが可能になる。
<電子透かし抽出の可否判定(埋め込み側での電子透かし情報の埋め込み可否判定)>
図14は、上記ステップS403内の、補助マーキング検出部203による、詳細な動作手順を示すフローチャートである。
まず、ステップS403−2aにおいて、S403にて判定対象となっていた外接矩形(例えば図12の矩形(2))が選択される。
次に、ステップS403−2bにおいて、上記注目している外接矩形の重心を算出する。
次に、ステップS403−2cにおいて、上記注目している外接矩形(この説明では矩形(2))が回転しているか否かを判定する。
このステップS403−2cにおいて、注目している外接矩形が回転している場合には、「この文字(外接矩形)には電子透かし情報(ビット情報)が埋め込まれていない」と判定する。この場合、ステップS403−2dへ進む。
一方、ステップS403cにおいて、注目している外接矩形が回転していない場合には、「この文字(外接矩形)には電子透かし情報(ビット情報)が埋め込まれている」と判定する。この場合、ステップS403−2eへ進む。
次に、ステップS403dにおいて、「注目している外接矩形は、電子透かし情報(ビット情報)が埋め込まれていない文字(外接矩形)である」として、図21の主記憶装置2103等に記憶する。
一方、ステップS403eにおいて、「注目している外接矩形は、電子透かし情報(ビット情報)が埋め込まれている文字(外接矩形)である」として、図21の主記憶装置2103等に記憶する。
<電子透かし情報の抽出(第1電子透かし埋め込みアルゴリズム)>
電子透かし情報の抽出の考え方に関しては、抽出アルゴリズムが異なる自体は同様である。即ち、「電子透かし情報(ビット情報)が埋め込まれている文字(外接矩形)」として記憶された外接矩形のみから、上述した本実施例の電子透かし埋め込みアルゴリズム(重心を用いた方法)に基づいて、電子透かし情報を抽出する。
まず、主記憶装置2103等に記憶された判定結果に基づいて、現在の処理対象となっている文字(外接矩形)から電子透かし情報を抽出するべきか否かを判定する。もし、ここでの処理対象となる文字(外接矩形)が「電子透かし情報(ビット情報)が埋め込まれていない文字(外接矩形)」である場合には、電子透かし情報の抽出処理は行わない。一方、ここでの処理対象となる文字(外接矩形)が「電子透かし情報(ビット情報)が埋め込まれている文字(外接矩形)」である場合には、電子透かし情報の抽出処理を行う。
抽出の際には、上述した様に各文字(外接矩形)の重心を算出して、記憶する。
次に、隣り合う重心同士の距離LnとRnとを算出する。
もし、Ln>Rnであれば、その文字(外接矩形)に埋め込まれている電子透かし情報(ビット情報)は「1」と判定し、これを電子透かし情報を構成するビット情報「1」として出力する。
もし、Ln<Rnであれば、その文字(外接矩形)に埋め込まれている電子透かし情報(ビット情報)は「0」と判定し、これを電子透かし情報を構成するビット情報「0」として出力する。
ここで出力されたビット情報1/0は、主記憶装置2103等に累積記憶される。
そして、主記憶装置210に累積記憶された全てのビット情報を、最終的な電子透かし情報として出力する。この電子透かし情報は、図21のプリンタ2116により電子透かし情報を印刷しても良いし、モニタ2106に表示しても良いし、不図示のネットワーク回線から外部端末へ出力しても良いし、CD2109、DVD2110、FD2111を介して各種記憶媒体へ記憶させても良いし、HDD2104等、内部処理部へ保存しても良い。
上記各実施例は、文字列で構成される画像における電子透かし技術について説明していたが、本発明はこれに限らず、カラーの多値画像における電子透かし技術としても当然に適用可能である。以下で、その変形例を簡単に説明しておく。
この実施例では、第1の電子透かし埋め込みアルゴリズムには、カラー画像を構成するRGB成分におけるB(青)成分に電子透かし情報を埋め込む方法を適用する。一方、第2の電子透かし埋め込みアルゴリズム(補助マーキングアルゴリズム)には、R(赤)成分の周波数領域の位相スペクトルを変更することにより電子透かし情報を埋め込む方法を適用する。これら埋め込みアルゴリズムは周知であるので特に詳細説明しない。
図16は、カラー多値画像に電子透かし情報を埋め込む際の処理手順を示すフローチャートである。この図16に示す処理手順は、実施例1の処理手順とほぼ同様であるので、実施例1、2と異なる部分についてのみ説明する。
まず、実施例1(図3)と異なる点は、カラー多値画像に対する電子透かし情報の埋め込みでは、文書解析部102が不要である。即ち、図16では図1のステップS302に相当するステップは不要である。
また、電子透かしの埋め込み対象が文字(外接矩形)単位ではなく画素単位となるため、ステップS305の代わりに、ステップS1604が存在し、そこでは埋め込み対象の画素を順次選択する様になっている。
ステップS1605では、本実施例の第1の電子透かし埋め込みアルゴリズムでB(青)成分に電子透かし情報が埋め込めるか否かを判定する。具体的には、透かし情報埋め込み可能性判定部103により、埋め込み対象となる画素の値が0や255等、「それ以上に濃度変化を行えない状況」である場合を判定し、その様な状況の場合には、“その画素には電子透かし情報を埋め込むことが不可能である”と判定する。
そして、ステップS1606において、その画素に対応するR(赤)成分に対して、補助マーキング埋め込み部104により、“電子透かし情報を埋め込むことが不可能な画素であること”を示す付加情報の埋め込みを行う。
一方、ステップS1607において、電子透かしの埋め込みが可能な画素に対して、第1の電子透かし埋め込みアルゴリズムを用いて、電子すかし情報の埋め込みを行う。
<マーキング方法(第2電子透かし埋め込みアルゴリズム)>
ここで、本実施例の補助マーキング(第2電子透かし埋め込みアルゴリズム)について説明する。
なお、この補助マーキングの前に、予め、R(赤)成分の周波数領域の位相部に対して前処理をしておく。例えば、各位相部において、補助マークとして置換される値(例えばπ/2)が最初から存在する場合には、予め別の値、例えば−π/180だけずらしておく。
次に、補助マーキング埋め込み部104においては、例えばB(青)成分の実空間上の位置(i,j)=(100,100)の画素値Ii,jへ電子透かし情報を埋め込むことができない場合には、(i,j)=(100,100)の位相θi,jをπ/2に変更する。
<電子透かし抽出の可否判定(埋め込み側での電子透かし情報の埋め込み可否判定)>
図17は、カラー多値画像から電子透かし情報を抽出するときの処理手順を示すフローチャートである。ステップS1701では電子透かし情報が埋め込まれている画像を入力する。
次に、ステップS1702において、補助用マーキング検出部203により上記補助マークを検出する。本実施例では、θi,j=π/2となっている(i,j)を「電子透かし情報の埋め込みができなかった画素の位置を示す情報」として記憶しておく。
<電子透かし情報の抽出(第1電子透かし埋め込みアルゴリズム)>
次に、ステップS1703において、電子透かし抽出部204により、上記ステップS1702の検出結果に基づいて、電子透かし情報が埋め込まれている画素のみから、電子透かし情報の抽出を行う。
以上、本実施例では、電子透かし情報の埋め込み対象をB(青)成分とし、補助マークを埋め込む成分をR(赤)成分の周波数領域としたが、本発明はこれに限らない。例えば、各処理対象の色成分を変更しても構わない。
(他の実施例)
なお、本発明は、上記各種実施例で説明してきた組合せの様に、補助マーキングにより埋め込まれた補助マーク(付加情報)の検出精度が、第1の電子透かし埋め込みアルゴリズムによる電子透かし情報の埋め込みによって影響を受けない様になっていれば、第1、第2の埋め込みアルゴリズムの組合せとしては、様々な変形を許容する。
また、第1、第2の埋め込みアルゴリズムを用いた各情報の埋め込み順番も、上記影響が出ないのであれば、適宜変更が可能である。
また、上記第1の実施例では、ベースラインを算出する時に、複数の外接矩形の下辺の位置の平均としたが、本発明はこれに限らず、処理中の行にアンカーポイントが存在する場合には、そのアンカーポイントのみをベースラインの算出に用いても良い。
また、第1の実施例では、第2の埋め込みアルゴリズムとして、注目する外接矩形をベースラインよりも下方向にズラす方法を用いたが、本発明はこれに限らない。例えば、注目する外接矩形が属する行の下部に余白がなく、下方向へ移動が不可能な場合には、下方向へ移動させるべき外接矩形以外の全てを上方向に移動させる等、別の対処も可能である。或いは、ズラすべき外接矩形を上方向に移動させる様に、全ての文字列に対する基準を変更しても良い。
また、上記各実施例では、電子透かし情報(ビット情報)を埋め込めなかった場合に、「その場所に電子透かしを埋め込めたこと」を示す付加情報を第2の埋め込みアルゴリズムにより埋め込む様にしたが、本発明はこれに限らず、電子透かし情報(ビット情報)を埋め込めた場合に、「その場所に電子透かしを埋め込めたこと」を示す付加情報を第2の埋め込みアルゴリズムにより埋め込む様にしても良い。この前者と後者の何れの基準を選択するかは、画像100における多数の文字列において電子透かし情報を埋め込める文字(外接矩形)の割合に応じて選択すれば良い。例えば、殆どの文字へ電子透かし情報が埋め込めるのであれば、前者の基準を選択すれば、第2の電子透かしアルゴリズムでの埋め込み箇所(不自然な画像箇所)を少なくできるであろう。一方、殆どの文字へ電子透かし情報が埋め込めないのであれば、後者の基準を選択すれば第2の電子透かしアルゴリズムでの埋め込み箇所(不自然な画像箇所)を少なくできるであろう。より具体的には、上記実施例において、前処理として、埋め込み対象の画像100を解析し、この解析結果に基づいて、上記前者か後者の何れかを選択し、更に、何れを選択したかの結果を示す基準情報を上記画像100の特定箇所に付加しておく。そうすることにより、電子透かしの抽出時には、画像100の基準情報を解読すれば、何れの基準で第2のアルゴリズムによる付加情報の埋め込みが行われたかが判るであろう。
なお、上記各実施例では、電子透かし情報(ビット情報)を第1の埋め込みアルゴリズムで埋め込めない場合に、第2の埋め込みアルゴリズムで埋め込めなかったことを示す付加情報を埋め込む技術を説明したが、上記技術を応用し、例えば、第1のアルゴリズムで電子透かし情報を埋め込めない位置に、第2のアルゴリズムでこの電子透かし情報を埋め込む様にすることも可能である。参考に、この変形例を示すフローチャートを図22と図23に示しておくが、詳細な説明は省略する。
なお、本発明は、複数の機器(例えば、ホストコンピュータ、インタフェース機器、リーダ、プリンタ等)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、ファクシミリ装置等)に適用しても良い。
また、本発明の目的は、前述した実施例の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。
この場合は、記録媒体から読み出されたプログラムコード自体が上述した実施例の機能を実現することになり、また、そのプログラムコードを記録した記録媒体も本発明に該当するであろう。
また、コンピュータが上記プログラムコードを読み出して実行することにより、上記実施例の機能を実現する場合に限らず、そのプログラムコードに基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行う場合も本発明の範疇に含まれる。
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコード基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行う場合も本発明の範疇に含まれる。
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートを実行可能なプログラムコードが格納されることになる。
電子透かし埋め込み装置を説明するための概略図 電子透かし抽出装置を説明するための概略図 電子透かし情報の埋め込み処理の手順を示すフローチャート 電子透かし情報の抽出処理の手順を示すフローチャート 埋め込み可能性判定部103の処理手順を示したフローチャート 補助用マーキング埋め込み部104の処理手順を示したフローチャート 電子透かし情報の埋め込み手順を示すフローチャート 補助用マーキング抽出部203の処理手順を示したフローチャート 電子透かし情報の抽出手順を示すフローチャート 第1電子透かし埋め込みアルゴリズムを説明する概略図 第2電子透かし埋め込みアルゴリズムを説明する概略図 第1電子透かし埋め込みアルゴリズムを説明する概略図 補助用マーキング埋め込み部104の処理手順を示したフローチャート 補助用マーキング抽出部203の処理手順を示したフローチャート 第2電子透かし埋め込みアルゴリズムを示す概略図 カラー多値画像に電子透かし情報を埋め込む処理手順を示すフローチャート カラー多値画像から電子透かし情報を抽出する処理手順を示すフローチャート 電子透かし情報が埋め込まれる前の文書画像を示す図 文書画像の一部に電子透かし情報が埋め込まれた後の文書画像が示す図 電子透かし情報を埋め込めない場所が生じてしまう場合の一例を示す図 各実施例の実施に適用可能な画像処理システムの一例を示す図 変形例における電子透かし情報の埋め込み処理の手順を示すフローチャート 変形例における電子透かし情報の抽出処理の手順を示すフローチャート
符号の説明
100 画像
101 画像入力部
102 文書解析部
103 透かし情報埋め込み可能性判定部
104 補助用マーキング埋め込み部
105 電子透かし情報
106 透かし情報埋め込み部
107 画像出力部

Claims (8)

  1. 画像を入力する画像入力ステップと、
    電子透かしとして埋め込むべき電子透かし情報を入力する情報入力ステップと、
    第1の電子透かし埋め込みアルゴリズムを用いて前記電子透かし情報を埋め込む為に変更されるべき前記画像における各部分について、該埋め込みの為の変更が可能であるか否を判定する埋め込み可否判定ステップと、
    前記各部分のうち、前記埋め込みの為の変更が可能である部分にのみ、電子透かし情報を埋め込む第1埋め込みステップと、
    前記各部分のうち、前記埋め込みの為の変更が不可能である部分に、第2の電子透かし埋め込みアルゴリズムを用いて、前記第1埋め込み手段による埋め込みが成されないことを示す情報を埋め込む第2埋め込みステップと
    を備えたことを特徴とする電子透かし埋め込み方法。
  2. 画像を入力する画像入力部と、
    電子透かしとして埋め込むべき電子透かし情報を入力する情報入力部と、
    第1の電子透かし埋め込みアルゴリズムを用いて前記電子透かし情報を埋め込む為に変更されるべき前記画像における各部分について、該埋め込みの為の変更が可能であるか否を判定する埋め込み可否判定部と、
    前記各部分のうち、前記埋め込みの為の変更が可能である部分にのみ、電子透かし情報を埋め込む第1埋め込み部と、
    前記各部分のうち、前記埋め込みの為の変更が不可能である部分に、第2の電子透かし埋め込みアルゴリズムを用いて、前記第1埋め込み手段による埋め込みが成されないことを示す情報を埋め込む第2埋め込み部と
    を備えたことを特徴とする電子透かし埋め込み装置。
  3. 画像を入力する画像入力ステップと、
    電子透かしとして埋め込むべき電子透かし情報を入力する情報入力ステップと、
    第1の電子透かし埋め込みアルゴリズムを用いて前記電子透かし情報を埋め込む為に変更されるべき前記画像における各部分について、該埋め込みの為の変更が可能であるか否を判定する埋め込み可否判定ステップと、
    前記各部分のうち、前記埋め込みの為の変更が可能である部分にのみ、電子透かし情報を埋め込む第1埋め込みステップと、
    前記各部分のうち、前記埋め込みの為の変更が不可能である部分に、第2の電子透かし埋め込みアルゴリズムを用いて、前記第1埋め込み手段による埋め込みが成されないことを示す情報を埋め込む第2埋め込みステップと
    をコンピュータに実行させる為の電子透かし埋め込みプログラム。
  4. 画像を入力する画像入力ステップと、
    電子透かしとして埋め込むべき電子透かし情報を入力する情報入力ステップと、
    第1の電子透かし埋め込みアルゴリズムを用いて前記電子透かし情報を埋め込む為に変更されるべき前記画像における各部分について、該埋め込みの為の変更が可能であるか否を判定する埋め込み可否判定ステップと、
    前記各部分のうち、前記埋め込みの為の変更が可能である部分にのみ、電子透かし情報を埋め込む第1埋め込みステップと、
    前記各部分のうち、前記埋め込みの為の変更が不可能である部分に、第2の電子透かし埋め込みアルゴリズムを用いて、前記第1埋め込み手段による埋め込みが成されないことを示す情報を埋め込む第2埋め込みステップと
    をコンピュータに実行させる為の電子透かし埋め込みプログラムを、該コンピュータから読み取り可能な状態に記憶した記憶媒体。
  5. 第1の電子透かし埋め込みアルゴリズムを用いて電子透かし情報が埋め込まれている画像を入力する画像入力ステップと、
    前記第1の電子透かし埋め込みアルゴリズムを用いて前記電子透かし情報を埋め込む為に変更されるべき前記画像における各部分について、第2の電子透かし埋め込みアルゴリズムに基づいて、前記第1の電子透かしアルゴリズムを用いて電子すかし情報の埋め込みの為の変更が不可能であったか否かを検出する検出ステップと
    前記検出結果に基づいて、前記電子透かし情報を埋め込む為の変更が可能であったと判定される前記画像の部分のみから、前記第1の電子透かし埋め込みアルゴリズムに基づいて、前記電子透かし情報を抽出する電子透かし抽出ステップと
    を備えたことを特徴とする電子透かし抽出方法。
  6. 第1の電子透かし埋め込みアルゴリズムを用いて電子透かし情報が埋め込まれている画像を入力する画像入力部と、
    前記第1の電子透かし埋め込みアルゴリズムを用いて前記電子透かし情報を埋め込む為に変更されるべき前記画像における各部分について、第2の電子透かし埋め込みアルゴリズムに基づいて、前記第1の電子透かしアルゴリズムを用いて電子すかし情報の埋め込みの為の変更が不可能であったか否かを検出する検出部と
    前記検出結果に基づいて、前記電子透かし情報を埋め込む為の変更が可能であったと判定される前記画像の部分のみから、前記第1の電子透かし埋め込みアルゴリズムに基づいて、前記電子透かし情報を抽出する電子透かし抽出部と
    を備えたことを特徴とする電子透かし抽出装置。
  7. 第1の電子透かし埋め込みアルゴリズムを用いて電子透かし情報が埋め込まれている画像を入力する画像入力ステップと、
    前記第1の電子透かし埋め込みアルゴリズムを用いて前記電子透かし情報を埋め込む為に変更されるべき前記画像における各部分について、第2の電子透かし埋め込みアルゴリズムに基づいて、前記第1の電子透かしアルゴリズムを用いて電子すかし情報の埋め込みの為の変更が不可能であったか否かを検出する検出ステップと
    前記検出結果に基づいて、前記電子透かし情報を埋め込む為の変更が可能であったと判定される前記画像の部分のみから、前記第1の電子透かし埋め込みアルゴリズムに基づいて、前記電子透かし情報を抽出する電子透かし抽出ステップと
    をコンピュータに実行させる為の電子透かし抽出プログラム。
  8. 第1の電子透かし埋め込みアルゴリズムを用いて電子透かし情報が埋め込まれている画像を入力する画像入力ステップと、
    前記第1の電子透かし埋め込みアルゴリズムを用いて前記電子透かし情報を埋め込む為に変更されるべき前記画像における各部分について、第2の電子透かし埋め込みアルゴリズムに基づいて、前記第1の電子透かしアルゴリズムを用いて電子すかし情報の埋め込みの為の変更が不可能であったか否かを検出する検出ステップと
    前記検出結果に基づいて、前記電子透かし情報を埋め込む為の変更が可能であったと判定される前記画像の部分のみから、前記第1の電子透かし埋め込みアルゴリズムに基づいて、前記電子透かし情報を抽出する電子透かし抽出ステップと
    をコンピュータに実行させる為の電子透かし抽出プログラムを、該コンピュータから読み取り可能な状態に記憶した記憶媒体。
JP2003345826A 2003-10-03 2003-10-03 電子透かし埋め込み方法、電子透かし埋め込み装置、電子透かし抽出方法、電子透かし抽出装置、上記各方法を実行可能なコンピュータプログラム、及びこれを記憶した記憶媒体 Withdrawn JP2005117154A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003345826A JP2005117154A (ja) 2003-10-03 2003-10-03 電子透かし埋め込み方法、電子透かし埋め込み装置、電子透かし抽出方法、電子透かし抽出装置、上記各方法を実行可能なコンピュータプログラム、及びこれを記憶した記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003345826A JP2005117154A (ja) 2003-10-03 2003-10-03 電子透かし埋め込み方法、電子透かし埋め込み装置、電子透かし抽出方法、電子透かし抽出装置、上記各方法を実行可能なコンピュータプログラム、及びこれを記憶した記憶媒体

Publications (1)

Publication Number Publication Date
JP2005117154A true JP2005117154A (ja) 2005-04-28

Family

ID=34538980

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003345826A Withdrawn JP2005117154A (ja) 2003-10-03 2003-10-03 電子透かし埋め込み方法、電子透かし埋め込み装置、電子透かし抽出方法、電子透かし抽出装置、上記各方法を実行可能なコンピュータプログラム、及びこれを記憶した記憶媒体

Country Status (1)

Country Link
JP (1) JP2005117154A (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006345017A (ja) * 2005-06-07 2006-12-21 Ricoh Co Ltd 画像処理方法および画像処理装置および画像処理プログラムおよび記録媒体
JP2006350650A (ja) * 2005-06-15 2006-12-28 Fuji Xerox Co Ltd 電子文書管理システム、画像形成装置、電子文書管理方法およびプログラム
EP1761033A2 (en) 2005-08-30 2007-03-07 Fujitsu Ltd. Method and apparatus for embedding information in imaged data, printed material, and computer product
JP2008172519A (ja) * 2007-01-11 2008-07-24 Fuji Xerox Co Ltd 情報埋め込み装置、埋め込み情報取得装置
US7664291B2 (en) 2005-10-26 2010-02-16 Fujitsu Limited Encoding device, decoding device, and printed matter
US7676056B2 (en) 2005-09-26 2010-03-09 Fujitsu Limited Method and apparatus for determining encoding availability, and computer product
JP2010068166A (ja) * 2008-09-10 2010-03-25 Fuji Xerox Co Ltd 画像処理装置、画像処理システム及びプログラム
KR101268830B1 (ko) 2011-09-29 2013-05-29 주식회사 마크애니 효율적인 정보전달을 위한 워터마크 중계 장치, 방법 및 시스템
CN110428357A (zh) * 2019-08-09 2019-11-08 厦门美图之家科技有限公司 图像中水印的检测方法、装置、电子设备及存储介质

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4532349B2 (ja) * 2005-06-07 2010-08-25 株式会社リコー 画像処理方法および画像処理装置および画像処理プログラムおよび記録媒体
US7660020B2 (en) 2005-06-07 2010-02-09 Ricoh Company, Ltd. Method and apparatus for controlling image processing for extraction assured embedding, and recording medium storing program product
JP2006345017A (ja) * 2005-06-07 2006-12-21 Ricoh Co Ltd 画像処理方法および画像処理装置および画像処理プログラムおよび記録媒体
JP2006350650A (ja) * 2005-06-15 2006-12-28 Fuji Xerox Co Ltd 電子文書管理システム、画像形成装置、電子文書管理方法およびプログラム
JP4569397B2 (ja) * 2005-06-15 2010-10-27 富士ゼロックス株式会社 電子文書管理システム、画像形成装置、電子文書管理方法およびプログラム
EP1761033A2 (en) 2005-08-30 2007-03-07 Fujitsu Ltd. Method and apparatus for embedding information in imaged data, printed material, and computer product
US7634105B2 (en) 2005-08-30 2009-12-15 Fujitsu Limited Method and apparatus for embedding information in imaged data, printed material, and computer product
US7676056B2 (en) 2005-09-26 2010-03-09 Fujitsu Limited Method and apparatus for determining encoding availability, and computer product
US7664291B2 (en) 2005-10-26 2010-02-16 Fujitsu Limited Encoding device, decoding device, and printed matter
JP2008172519A (ja) * 2007-01-11 2008-07-24 Fuji Xerox Co Ltd 情報埋め込み装置、埋め込み情報取得装置
JP2010068166A (ja) * 2008-09-10 2010-03-25 Fuji Xerox Co Ltd 画像処理装置、画像処理システム及びプログラム
JP4587058B2 (ja) * 2008-09-10 2010-11-24 富士ゼロックス株式会社 画像処理装置、画像処理システム及びプログラム
US8358804B2 (en) 2008-09-10 2013-01-22 Fuji Xerox Co., Ltd. Image processing apparatus, image processing system and computer readable medium storing program
KR101268830B1 (ko) 2011-09-29 2013-05-29 주식회사 마크애니 효율적인 정보전달을 위한 워터마크 중계 장치, 방법 및 시스템
CN110428357A (zh) * 2019-08-09 2019-11-08 厦门美图之家科技有限公司 图像中水印的检测方法、装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
JP4310288B2 (ja) 画像処理装置及びその方法、プログラム並びに記憶媒体
US7106884B2 (en) Digital watermark embedding apparatus for document, digital watermark extraction apparatus for document, and their control method
JP2004104494A (ja) 電子透かし埋め込み装置及びその制御方法
US7411702B2 (en) Method, apparatus, and computer program product for embedding digital watermark, and method, apparatus, and computer program product for extracting digital watermark
JP4164463B2 (ja) 情報処理装置及びその制御方法
JP4623169B2 (ja) 画像処理装置及び画像処理プログラム
JP4859237B2 (ja) 画像処理装置およびその方法
US20060002584A1 (en) Image processing apparatus, image processing method, computer program and computer readable storage medium
JPWO2007049340A1 (ja) 電子透かしの埋め込み及び検出
JP4673200B2 (ja) 印刷処理システムおよび印刷処理方法
US7209572B2 (en) Digital watermark embedding apparatus, digital watermark extraction apparatus, and methods thereof
JP2005117154A (ja) 電子透かし埋め込み方法、電子透かし埋め込み装置、電子透かし抽出方法、電子透かし抽出装置、上記各方法を実行可能なコンピュータプログラム、及びこれを記憶した記憶媒体
US7269274B2 (en) Digital watermark embedding method, digital watermark extraction method, digital watermark embedding apparatus, and digital watermark extraction apparatus
US7260238B2 (en) Digital watermark embedding method, apparatus, digital watermark extraction method and apparatus
JP2002232679A (ja) 画像処理方法及び装置及びコンピュータプログラム及び記憶媒体
JP4164458B2 (ja) 情報処理装置及び方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
JP4324058B2 (ja) 画像処理装置及びその方法
JP4006145B2 (ja) 画像処理装置、画像処理方法及び記憶媒体
JP2005234845A (ja) 画像処理装置、画像処理方法、文字認識装置、プログラムおよび記録媒体
JP2010108296A (ja) 情報処理装置、情報処理方法
JP2007312049A (ja) 情報埋込処理システム、付加情報埋込装置、付加情報復元装置
JP5062076B2 (ja) 情報処理装置及び情報処理プログラム
JP2010103862A (ja) 文書処理装置および文書処理方法
JP2004023563A (ja) 電子透かし埋め込み装置及び電子透かし抽出装置並びにそれらの方法、コンピュータプログラム、記録媒体
JP2003008877A (ja) 画像処理装置およびその方法

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20061205