JP2004023565A - 電子透かし埋め込み装置、電子透かし抽出装置、及びそれらの方法 - Google Patents
電子透かし埋め込み装置、電子透かし抽出装置、及びそれらの方法 Download PDFInfo
- Publication number
- JP2004023565A JP2004023565A JP2002177645A JP2002177645A JP2004023565A JP 2004023565 A JP2004023565 A JP 2004023565A JP 2002177645 A JP2002177645 A JP 2002177645A JP 2002177645 A JP2002177645 A JP 2002177645A JP 2004023565 A JP2004023565 A JP 2004023565A
- Authority
- JP
- Japan
- Prior art keywords
- distance
- digital watermark
- circumscribed
- embedding
- document 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/0021—Image watermarking
- G06T1/0028—Adaptive watermarking, e.g. Human Visual System [HVS]-based watermarking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2201/00—General purpose image data processing
- G06T2201/005—Image watermarking
- G06T2201/0051—Embedding of the watermark in the spatial domain
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2201/00—General purpose image data processing
- G06T2201/005—Image watermarking
- G06T2201/0062—Embedding of the watermark in text images, e.g. watermarking text documents using letter skew, letter distance or row distance
Abstract
【課題】文書画像に電子透かしのデータ列を埋め込んでも、文書画像の画質の劣化を軽減し、人間に目に認識しがたく電子透かしの埋め込みを行うこと。
【解決手段】文書画像に対して文書解析を行い、各文字の外接矩形を求め(S601)、文書の先頭から2つの、隣接していない外接矩形間の距離を求め、夫々をd1,d2とする(S603)。そして埋め込むデータが1である場合、d1>d2となるように、外接矩形のサイズに関するパラメータの変更、外接矩形の位置に関するパラメータの変更の変更処理のいずれか、もしくはその組み合わせによる処理を行う(S605)。埋め込むデータが0である場合、d1<d2となるように、上記2つのパラメータの変更処理のいずれか、もしくはその組み合わせによる処理を行う(S606)。
【選択図】 図6
【解決手段】文書画像に対して文書解析を行い、各文字の外接矩形を求め(S601)、文書の先頭から2つの、隣接していない外接矩形間の距離を求め、夫々をd1,d2とする(S603)。そして埋め込むデータが1である場合、d1>d2となるように、外接矩形のサイズに関するパラメータの変更、外接矩形の位置に関するパラメータの変更の変更処理のいずれか、もしくはその組み合わせによる処理を行う(S605)。埋め込むデータが0である場合、d1<d2となるように、上記2つのパラメータの変更処理のいずれか、もしくはその組み合わせによる処理を行う(S606)。
【選択図】 図6
Description
【0001】
【発明の属する技術分野】
本発明は、文書画像に電子透かしを埋め込む電子透かし埋め込み装置、及び電子透かしが埋め込まされた文書画像から電子透かしを抽出する電子透かし抽出装置、及びそれらの方法に関するものである。
【0002】
【従来の技術】
インターネット上で画像や音声などのディジタルデータを流通させる際の著作権保護の方法として、電子透かしが注目されている。電子透かしは、画像や音声などのディジタルデータに対して、人間が知覚できないように透かし情報を埋め込む技術である。例えば、多値画像に対する電子透かし技術としては、多値画素の濃度の冗長性を利用する種々の方法が知られている。
【0003】
一方、文書画像のような二値画像は冗長度が少なく、電子透かし技術を実現するのが難しい。しかしながら、文書画像特有の特徴を利用した電子透かし方式がいくつか知られている。例えば、行のベースラインを動かす方法(特許第3136061)、単語間空白長を操作する方法(米国特許第6086706、特開平9−186603号公報)、文字間の空白長を操作する方法(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.)、中村康弘,松井甲子雄, “和文書へのシール画像による電子透かし”,情報処理学会論文誌 Vol.38 No.11 Nov. 1997.で述べられているような文字を回転して傾斜を変化させるなどが挙げられる。
【0004】
【発明が解決しようとする課題】
しかし文書画像は冗長度が少なく、今まで提案された従来手法は行のベースラインや、語間スペースや文字の回転という2変数の変更によって、情報を埋め込むために変更点が目立つ、すなわち画質劣化が大きいと言う欠点があった。
【0005】
本発明は以上問題に鑑みてなされたものであり、電子透かしのデータ列を埋め込んだ文書画像の画質劣化を軽減する電子透かしの埋め込み装置及びその方法を提供することを目的とする。
【0006】
【課題を解決するための手段】
本発明の目的を達成するために、例えば本発明の電子透かし埋め込み装置は以下の構成を備える。
【0007】
すなわち、文書画像に対して電子透かしのデータ列を埋め込む電子透かし埋め込み装置であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算手段と、
隣接していない2つの外接矩形による組である第1の組と、当該第1の組とは異なる第2の組において、前記第1の組の夫々の外接矩形間の第1の距離と、前記第2の組の夫々の外接矩形間の第2の距離とを求める距離計算手段と、
埋め込むデータ列に応じて前記第1の距離と第2の距離の大小関係が変化するように、前記第1の組、もしくは前記第2の組を構成する各文字のいずれかを制御する制御手段と
を備えることを特徴とする。
【0008】
本発明の目的を達成するために、例えば本発明の電子透かし抽出装置は以下の構成を備える。
【0009】
すなわち、上記電子透かし埋め込み装置により電子透かしのデータ列が埋め込まれた文書画像から当該電子透かしのデータ列を抽出する電子透かし抽出装置であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算手段と、
隣接していない2つの外接矩形による組において、第1の組の夫々の外接矩形間の第1の距離と、第1の組とは異なる第2の組の夫々の外接矩形間の第2の距離とを求める距離計算手段と、
前記第1の距離と第2の距離との大小関係を所定の値で表現することで、当該値を電子透かしのデータとして得る抽出手段と
を備えることを特徴とする。
【0010】
本発明の目的を達成するために、例えば本発明の電子透かし埋め込み装置は以下の構成を備える。
【0011】
すなわち、文書画像に対して電子透かしのデータ列を埋め込む電子透かし埋め込み装置であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算手段と、
隣接していない2つの外接矩形間の距離の平均値を求める平均値計算手段と、
埋め込むデータに応じて、前記平均値に対して隣接していない2つの外接矩形の距離が変化するように、各文字を制御する制御手段と
を備えることを特徴とする。
【0012】
本発明の目的を達成するために、例えば本発明の電子透かし抽出装置は以下の構成を備える。
【0013】
すなわち、上記電子透かし埋め込み装置により電子透かしのデータ列が埋め込まれた文書画像から当該電子透かしのデータ列を抽出する電子透かし抽出装置であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算手段と、
隣接していない2つの外接矩形間の距離と、隣接していない2つの外接矩形間の距離の平均値との大小関係を所定の値で表現することで、当該値を電子透かしのデータとして得る抽出手段と
を備えることを特徴とする。
【0014】
本発明の目的を達成するために、例えば本発明の電子透かし埋め込み装置は以下の構成を備える。
【0015】
すなわち、文書画像に対して電子透かしのデータ列を埋め込む電子透かし埋め込み装置であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算手段と、
隣接していない2つの外接矩形間の距離を用いて電子透かしのデータ列を埋め込むと共に、埋め込むことで変化する所定個数分の外接矩形間の距離の変化を修正する埋め込み手段と
を備えることを特徴とする。
【0016】
本発明の目的を達成するために、例えば本発明の電子透かし埋め込み方法は以下の構成を備える。
【0017】
すなわち、文書画像に対して電子透かしのデータ列を埋め込む電子透かし埋め込み方法であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算工程と、
隣接していない2つの外接矩形による組である第1の組と、当該第1の組とは異なる第2の組において、前記第1の組の夫々の外接矩形間の第1の距離と、前記第2の組の夫々の外接矩形間の第2の距離とを求める距離計算工程と、
埋め込むデータ列に応じて前記第1の距離と第2の距離の大小関係が変化するように、前記第1の組、もしくは前記第2の組を構成する各文字のいずれかを制御する制御工程と
を備えることを特徴とする。
【0018】
本発明の目的を達成するために、例えば本発明の電子透かし抽出方法は以下の構成を備える。
【0019】
すなわち、上記電子透かし埋め込み方法により電子透かしのデータ列が埋め込まれた文書画像から当該電子透かしのデータ列を抽出する電子透かし抽出方法であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算工程と、
隣接していない2つの外接矩形による組において、第1の組の夫々の外接矩形間の第1の距離と、第1の組とは異なる第2の組の夫々の外接矩形間の第2の距離とを求める距離計算工程と、
前記第1の距離と第2の距離との大小関係を所定の値で表現することで、当該値を電子透かしのデータとして得る抽出工程と
を備えることを特徴とする。
【0020】
本発明の目的を達成するために、例えば本発明の電子透かし埋め込み方法は以下の構成を備える。
【0021】
すなわち、文書画像に対して電子透かしのデータ列を埋め込む電子透かし埋め込み方法であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算工程と、
隣接していない2つの外接矩形間の距離の平均値を求める平均値計算工程と、埋め込むデータに応じて、前記平均値に対して隣接していない2つの外接矩形の距離が変化するように、各文字を制御する制御工程と
を備えることを特徴とする。
【0022】
本発明の目的を達成するために、例えば本発明の電子透かし抽出方法は以下の構成を備える。
【0023】
すなわち、上記電子透かし埋め込み方法により電子透かしのデータ列が埋め込まれた文書画像から当該電子透かしのデータ列を抽出する電子透かし抽出方法であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算工程と、
隣接していない2つの外接矩形間の距離と、隣接していない2つの外接矩形間の距離の平均値との大小関係を所定の値で表現することで、当該値を電子透かしのデータとして得る抽出工程と
を備えることを特徴とする。
【0024】
本発明の目的を達成するために、例えば本発明の電子透かし埋め込み方法は以下の構成を備える。
【0025】
すなわち、文書画像に対して電子透かしのデータ列を埋め込む電子透かし埋め込み方法であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算工程と、
隣接していない2つの外接矩形間の距離を用いて電子透かしのデータ列を埋め込むと共に、埋め込むことで変化する所定個数分の外接矩形間の距離の変化を修正する埋め込み工程と
を備えることを特徴とする。
【0026】
【発明の実施の形態】
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
【0027】
[第1の実施形態]
本実施形態に係る電子透かしのデータ列を埋め込む方法について図2を用いて説明する。図2は文書画像において、各文字の隣接していない外接矩形間の距離を用いた本実施形態に係る電子透かしのデータ列を埋め込む方法を説明するための図である。
【0028】
A〜Gの矩形は文書画像において各文字の外接矩形を示すものであり、文書解析技術を用いて抽出されるものである。各文字の外接矩形とは、文字に外接する矩形であって、文字認識を行う領域を指す情報である。各文字の外接矩形を求める方法としては、まず文書画像の各画素値を垂直座標軸に対して射影し、空白部分(黒色である文字のない部分)を探索して行を判別して行分割を行う。その後、行単位で文書画像を水平座標軸に対して射影し、空白部分を探索して文字単位に分割する。これによって、各文字を外接矩形で切り出すことが可能となる。この方法として例えば特開平6−68301号公報に開示されている方法を挙げることができる。
【0029】
また同図において201は外接矩形A、C間の距離を示し、202は外接矩形B、D間の距離を示し、203は外接矩形D、F間の距離を示し、204は外接矩形E、G間の距離を示す。上述の通り、本実施形態に係る電子透かしのデータ列の埋め込み方法では、これらの距離を、埋め込むデータに応じて変化させる。
【0030】
以下、上述の電子透かしのデータ列の埋め込み方法について説明する。図3に本実施形態に係る電子透かし埋め込み装置として、及び電子透かしのデータ列が埋め込まれた文書画像から電子透かしのデータ列を抽出する電子透かし抽出装置としてのコンピュータの基本構成を示す。なお、上記埋め込み方法、及び抽出方法を実現するために図3に示した各部全てを使用することは必須ではない。
【0031】
同図において、コンピュータ301は一般に普及しているパーソナルコンピュータやワークステーションなどであって、スキャナ317から読み取られた画像を入力し、編集や保管を行うことが可能である。また、スキャナ317から得られた画像をプリンタ316から紙やOHP等の記録媒体に印刷させることができる。尚、ユーザからの各種指示等は、マウス313、キーボード314を用いて入力することができる。
【0032】
コンピュータ301の内部では、バス307により後述する各ブロックが接続され、夫々のブロック間で種々のデータの受け渡しが可能である。MPU302は、コンピュータ301内部の各ブロックの動作を制御すると共に、RAMとしての主記憶装置303に記憶されたプログラムを実行することで後述の電子透かしのデータ列の埋め込みに関する一連の処理、及びこの埋め込み処理により文書画像に埋め込まれた電子透かしのデータ列を抽出する一連の処理を実行する。
【0033】
主記憶装置303は、HDD304,CD−ROMドライブ装置309、DVD−ROMドライブ装置310、FDドライブ装置311等からロードされたプログラムやデータを一時的に記憶するエリアを備えると共に、MPU302が各種の処理を実行するために一時的に処理対象のデータなどを記憶するワークエリアを備える。
【0034】
ハードディスクドライブ(HDD)装置304は、主記憶装置303にロードされるプログラムや文書画像データを予め保存しておいたり、処理後の文書画像データを保存することができる。インタフェース(I/F)315は、原稿やフィルム等に記録された情報を読み取って、画像データを生成するスキャナ317と接続され、スキャナ317で得られた画像データを入力するためのI/Fである。I/F308は、画像データを印刷するプリンタ316と接続され、印刷する画像データをプリンタ316に送信するためのI/Fである。
【0035】
CD−ROMドライブ装置309は、外部記憶媒体の一つであるCD−ROM(CD−R/CD−RW)に記憶されたデータを読み込んだり、あるいは書き出すことができる装置である。FD(フロッピー(登録商標)ディスク)ドライブ装置311はCD−ROMドライブ装置309と同様にFDからデータを読み出したり、FDへデータを書き込んだりすることができる装置である。DVD−ROMドライブ装置310は、FDドライブ装置311と同様に、DVDからデータを読み出したり、DVDへデータを書き込んだりすることができる装置である。尚、上記CD−ROM、FD、DVD−ROM等にプログラム、あるいはプリンタドライバが記憶されている場合には、これらプログラムをHDD304にインストールし、必要に応じて主記憶装置303にロードされるようになっている。
【0036】
I/F312は、マウス313やキーボード314からの入力指示を受け付けるために、これらと接続されるI/Fである。また、モニタ306は、電子透かしのデータ列の抽出処理結果や処理過程を表示することのできる表示装置である。さらに、ビデオコントローラ305は、表示データをモニタ306に送信するための装置である。
【0037】
以上の構成を備えるコンピュータが行う電子透かしのデータ列の埋め込み処理について、同処理のフローチャートを示す図6を参照して説明する。なお、以下の説明では1つ置きの外接矩形間の距離(図2を例に取ると、201と202,203と204)を用いる。また、以下の処理の経過などは適宜モニタ306上に表示しても良い。
【0038】
まず、マウス313もしくはキーボード314を用いたユーザからの指示入力に応じて、電子透かし埋め込みを行う文書画像を主記憶装置303にロードする(ステップS600)。この文書画像は、文書が記録された紙などの記録媒体をスキャナ317により読みとり、読みとった結果をビットマップ化したものとする。
【0039】
しかし文書画像を得る方法はこれに限定されるものではなく、他にも例えば、一般の文書エディタで作成された文書、もしくは上記CD−ROMドライブ装置309,もしくはDVD−ROMドライブ装置310、もしくはFDドライブ装置311から主記憶装置303にロードされた文書のデータを用いてビットマップ化し、文書画像を作成しても良い。また、LANやインターネットなどのネットワークに接続可能なネットワークI/Fを上記装置に備え、ネットワークを介して外部から文書画像を受信し、得ても良い。しかし上記いずれの場合でも、文書画像はビットマップ化されたものである。
【0040】
次に、ビットマップ化された文書画像に対し前述の文書解析を行い、各文字の外接矩形を求める(ステップS601)。次に、ユーザは1,もしくは0からなる電子透かしのデータ列をキーボード314,もしくはマウス313を用いて入力すると、このデータ列はI/F312を介して主記憶装置303に出力され、主記憶装置303に格納される(ステップS602)。
【0041】
次に、文書の先頭から2つの、隣接していない外接矩形間の距離を求め、夫々をd1,d2とする(ステップS603)。図2の例では、上記201の距離を求め、これをd1、202の距離を求め、これをd2とする(ステップS603)。そして埋め込むデータが1である場合、処理をステップS605に進め、d1>d2となるように、以下の2つのパラメータの変更処理のいずれか、もしくはその組み合わせによる処理を行う(ステップS605)。
【0042】
・ 外接矩形Bの列方向の大きさを大きくする、もしくは外接矩形Cの列方向の大きさを小さくする(サイズに関するパラメータの変更)
・ 外接矩形Cの位置を外接矩形D側に移動させる、もしくは外接矩形Bの位置を外接矩形D側に移動させる(位置に関するパラメータの変更)
この2つのパラメータの変更処理のいずれか、もしくはその組み合わせによる処理のどちらを行うかの指示は予め決めていても良いし、ユーザにより入力させても良い。
【0043】
一方、埋め込むデータが0である場合、処理をステップS606に進め、d1<d2となるように、以下の2つのパラメータの変更処理のいずれか、もしくはその組み合わせによる処理を行う(ステップS606)。
【0044】
・ 外接矩形Bの列方向の大きさを小さくする、もしくは外接矩形Cの列方向の大きさを大きくする(サイズに関するパラメータの変更)
・ 外接矩形Cの位置を外接矩形A側に移動させる、もしくは外接矩形Bの位置を外接矩形A側に移動させる(位置に関するパラメータの変更)
この2つのパラメータの変更処理のいずれか、もしくはその組み合わせによる処理のどちらを行うかの指示は予め決めていても良いし、ユーザにより入力させても良い。また、外接矩形の位置、サイズを変更する制御処理に伴って、外接矩形で囲まれている文字の位置、サイズも同様に変更されるものとする。
【0045】
またステップS605、S606による処理は、その変更部分が最も目立たないように、すなわち画質劣化が小さくなるように上記各パラメータを予め調節しておく。
【0046】
特に図2の例では3つおきの外接矩形(図2では外接矩形A、D、G)の位置は変化しないので、3個の外接矩形を単位としてその中のバランスで最も画質劣化のないように、データの埋め込み処理を行う。これにより、外接矩形間のスペース“のみ”を変更する場合に対して人間の視覚的に違和感の無い埋め込みが実現できる。
【0047】
図6に戻って、更に埋め込むデータがある場合には処理をステップS603に戻し、上記処理を繰り返す。例えば埋め込むデータがまだある場合、図2の例では外接矩形D、F間の距離を求め、これをd1とし、更に外接矩形E、G間の距離を求め、これをd2とし、以上の埋め込み処理の説明で、外接矩形A,B,C,Dを夫々外接矩形D,E,F,Gと読み替えて以上の処理を繰り返す。
【0048】
以上の処理により、文書画像に対して電子透かしのデータ列の埋め込みを行うことができる。
【0049】
次に、上記処理により埋め込んだ電子透かしのデータ列の抽出方法について説明する。上述の通り、電子透かしのデータ列を抽出する処理も図3に示したコンピュータにより行われる。図7に上記コンピュータが行う、上記処理により埋め込んだ電子透かしのデータ列の抽出処理のフローチャートを示す。
【0050】
まず、マウス313もしくはキーボード314を用いたユーザからの指示入力に応じて、電子透かしのデータ列が埋め込まれた文書画像(以下、埋め込み画像)を主記憶装置303にロードする(ステップS700)。この埋め込み画像は、上記埋め込み処理による埋め込み画像をプリンタ316によりプリントした紙やOHPなどの記録媒体をスキャナ317により読みとり、読みとった結果をビットマップ化したものとする。しかし、埋め込み画像を得る方法はこれに限定されるものではなく、上記HDD304、もしくはCD−ROMドライブ装置309,もしくはDVD−ROMドライブ装置310、もしくはFDドライブ装置311から主記憶装置303にロードされたものであってもよい。また、LANやインターネットなどのネットワークに接続可能なネットワークI/Fを上記装置に備え、ネットワークを介して外部から受信し、得ても良い。
【0051】
次に、埋め込み画像に対し前述の文書解析を行い、各文字の外接矩形を求める(ステップS701)。本ステップにおける処理は、上記ステップS601における処理内容と同じである。
【0052】
次に、上記201の距離d1と202の距離d2とを求める(ステップS702)。d1>d2の場合(ステップS703)、処理をステップS704に進め、埋め込まれたデータを1として主記憶装置303に記録する(ステップS704)。一方、d1<d2の場合、処理をステップS705に進め、埋め込まれたデータを0として主記憶装置303に記録する(ステップS705)。
【0053】
そして処理対象の外接矩形がまだ残っているかを判断する(ステップS706)。図2の例では外接矩形A,B,C,D以降にまだE,F,Gが残っているので、処理をステップS702に戻し、外接矩形D、F間の距離を求め、これをd1とし、更に外接矩形E、G間の距離を求め、これをd2とし、以上の抽出処理の説明で、外接矩形A,B,C,Dを夫々外接矩形D,E,F,Gと読み替えて以上の処理を繰り返す。また予め電子透かしのデータの個数がわかっている場合には、その個数分のデータが主記憶装置303に記録されたか否かを判断すればよい。
【0054】
そして処理対象の外接矩形が残っていないとステップS706で判断された場合、ステップS704,ステップS705で主記憶装置303に記録されたデータ列を電子透かしのデータ列として得ることができる。以上の処理により、上記方法により電子透かしのデータ列が埋め込まれた文書画像から、このデータ列を抽出することができる。
【0055】
なお、以上の説明では外接矩形A,C間の距離と外接矩形B,D間の距離との大小関係に応じて電子透かしのデータを埋め込んだ後、次に外接矩形D,F間の距離と外接矩形E,G間の距離との大小関係に応じて電子透かしのデータを埋め込んだが、大小関係の比較対象はこれに限定されるものではない。すなわち、例えば、外接矩形A,C間の距離と外接矩形D,F間の距離との大小関係に応じて電子透かしのデータを埋め込んだ後、次に外接矩形B,D間の距離と外接矩形E,G間の距離との大小関係に応じて電子透かしのデータを埋め込んでも良い。
【0056】
また、ある値を初期値として擬似乱数を発生させ、その乱数の値に応じて大小関係の比較対象を選択しても良い。例えば乱数の値が1の場合、外接矩形A,C間の距離と外接矩形B,D間の距離との大小関係に応じて電子透かしのデータを埋め込んだ後、次に外接矩形D,F間の距離と外接矩形E,G間の距離との大小関係に応じて電子透かしのデータを埋め込み処理を行い、乱数の値が2の場合、外接矩形A,C間の距離と外接矩形D,F間の距離との大小関係に応じて電子透かしのデータを埋め込んだ後、次に外接矩形B,D間の距離と外接矩形E,G間の距離との大小関係に応じて電子透かしのデータを埋め込む処理を行うとしてもよい。
【0057】
またここでは4つの距離の組み合わせの一例を用いた電子透かしのデータ列の埋め込み方法について説明したが、外接矩形の数が更に増えると、どの外接矩形間の距離同士の大小関係を用いるかの組み合わせ数は膨大なものとなるため、上記乱数を用いた大小関係の比較対象の選択方法を用いると、上記初期値を鍵として埋め込み側と抽出側で共有すれば、その鍵を知らない第3者はアルゴリズムが公開されても、埋め込まれた情報を抽出することはできなくなり、秘匿性が向上する。
【0058】
また、上記説明では簡単のために隣接しない外接矩形として1つおきの外接矩形を用いて説明したが、上記の電子透かしの埋め込み方法、及び抽出方法が1つおきの外接矩形に限定されないことは明らかである。
【0059】
また上記説明において、埋め込むデータが1の場合、d1>d2となるように、0の場合、d1<d2となるように上記パラメータ処理を行ったが、これに限定されるものではなく、不等号の向きは逆でも良い。すなわち、埋め込むデータが1の場合、d1<d2となるように、0の場合、d1>d2となるように上記パラメータ処理を行っても良い。その場合、当然抽出処理もこれに対応させる必要があり、d1>d2の場合、埋め込まれたデータを0として主記憶装置303に記録し、d1<d2の場合、埋め込まれたデータを1として主記憶装置303に記録する。
【0060】
[第2の実施形態]
本実施形態では、第1の実施形態に係る電子透かしのデータ列の埋め込み方法とは異なる方法で電子透かしのデータ列を文書画像に埋め込む。以下、本実施形態に係る電子透かしのデータ列を文書画像に埋め込む方法及び、この文書画像から電子透かしのデータ列を抽出する方法について説明する。なお、これらの埋め込み方法、抽出方法を実行するコンピュータの基本構成、及び各部の機能については第1の実施形態と同じとする。
【0061】
本実施形態に係る電子透かしのデータ列を埋め込む方法について図1を用いて説明する。図1は文書画像において各文字の隣接していない外接矩形間の距離を用いた本実施形態に係る電子透かしのデータ列を埋め込む方法を説明するための図である。
【0062】
A〜Gの矩形は文書画像において1行を構成する各文字の外接矩形を示すものであり、第1の実施形態で説明した処理により得られるものである。また同図において101は外接矩形A、C間の距離を示し、102は外接矩形B、D間の距離を示し、103は外接矩形C、E間の距離を示し、104は外接矩形D、F間の距離を示し、105は外接矩形E、G間の距離を示す。上述の通り、本実施形態に係る電子透かしのデータ列の埋め込み方法では、これらの距離を、埋め込むデータに応じて変化させる。
【0063】
次に、コンピュータが行う本実施形態に係る電子透かしのデータ列の埋め込み処理について、同処理のフローチャートを示す図4を参照して説明する。なお、以下の説明では1つ置きの外接矩形間の距離(図1では101乃至105)を用いる。また、以下の処理の経過などは適宜モニタ306上に表示しても良い。
【0064】
なお、ステップS400からステップS402までの各ステップにおける処理は、ステップS600からステップS602までの各ステップにおける処理と同じであるために、その説明を省略する。
【0065】
次に、1行文の各外接矩形間の距離、すなわち、101乃至105の距離の総和を計算し、その平均値pを求める(ステップS403)。具体的には、101乃至105の夫々の距離をx1,x2,x3,x4、x5とすると、その平均値pは
p=(x1+x2+x3+x4+x5)/5
として求める。そして埋め込むデータが1の場合、外接矩形間の距離が平均値よりも長くなるように、外接矩形のサイズに関するパラメータの変更及び/又は位置に関するパラメータの変更を行う(ステップS405)。例えば101の距離を制御対象とする場合、埋め込むデータが1の場合、
・ 外接矩形Cの列方向の大きさを小さくする(サイズに関するパラメータの変更)
・ 外接矩形Cの位置を外接矩形D側に移動させる(位置に関するパラメータの変更)
のいずれか、もしくはその組み合わせによる処理を行う。なお、どちらを行うかの指示は予め決めていても良いし、ユーザにより入力させても良い。
【0066】
一方、埋め込むデータが0の場合、外接矩形間の距離が平均値よりも短くなるように、外接矩形のサイズに関するパラメータの変更及び/又は位置に関するパラメータの変更を行う(ステップS406)。例えば101の距離を制御対象とする場合、埋め込むデータが0の場合、
・ 外接矩形Cの列方向の大きさを大きくする(サイズに関するパラメータの変更)
・ 外接矩形Cの位置を外接矩形B側に移動させる(位置に関するパラメータの変更)
のいずれか、もしくはその組み合わせによる処理を行う。なお、どちらを行うかの指示は予め決めていても良いし、ユーザにより入力させても良い。また、外接矩形の位置、サイズを変更する制御処理に伴って、外接矩形で囲まれている文字の位置、サイズも同様に変更されるものとする。またステップS405,S406による処理は、その変更部分が最も目立たないように、すなわち画質劣化が小さくなるように上記各パラメータを予め調節しておく。
【0067】
そして更に埋め込むデータがある場合には処理をステップS404に戻し、上記処理を繰り返す。例えば埋め込むデータがまだある場合、図1の例では102の距離を制御対象として上記処理を行う。
【0068】
以上の処理により、文書画像に対して電子透かしのデータ列の埋め込みを行うことができる。なお、埋め込むデータ列が1行分の埋め込みで収まらない場合、次の行において同じ処理を繰り返す。
【0069】
そして最後に、上記平均値を鍵としてHDD304に保存する(ステップS408)。ただし、埋め込み処理が複数の行にわたる場合、埋め込み対象となる行すべて、または段落毎など、複数の行に対する隣接しない外接矩形間の長さの平均値を鍵として用いれば、鍵として保存する数を減少させることができる。
【0070】
次に、上記処理により埋め込んだ電子透かしのデータ列の抽出方法について説明する。上述の通り、電子透かしのデータ列を抽出する処理も図3に示したコンピュータにより行われる。図5に上記コンピュータが行う、上記処理により埋め込んだ電子透かしのデータ列の抽出処理のフローチャートを示す。
【0071】
ステップS500,S501の各ステップにおける処理は上記ステップS700,S701の各ステップにおける処理と同じであるために、その説明を省略する。そしてステップS502では、上記ステップS408で鍵としてHDD304に保存された平均値Dを主記憶装置303にロードする(ステップS502)。そして隣接していない外接矩形間の距離dを求める(ステップS503)。この距離dとして最初は図1の例では、d=101の距離とする。
【0072】
そしてd>Dの場合、処理をステップS505に進め、埋め込まれたデータを1として主記憶装置303に記録する(ステップS505)。一方、d<Dの場合、処理をステップS506に進め、埋め込まれたデータを0として主記憶装置303に記録する(ステップS506)。
【0073】
そして処理対象の外接矩形間がまだ残っているかを判断する(ステップS507)。図1の例では101の距離以降にまだ102の距離、103の距離、104の距離、105の距離が残っているので、処理をステップS503に戻し、d=102の距離とし、以上の処理を繰り返す。また予め電子透かしのデータの個数がわかっている場合には、その個数分のデータが主記憶装置303に記録されたか否かを判断すればよい。
【0074】
そして処理対象の外接矩形が残っていないとステップS507で判断された場合、ステップS506,ステップS507で主記憶装置303に記録されたデータ列を電子透かしのデータ列として得ることができる。以上の処理により、上記方法により電子透かしのデータ列が埋め込まれた文書画像から、このデータ列を抽出することができる。
【0075】
本実施形態に係る上記の電子透かしのデータ列の埋め込み方法は、第1の実施形態に係る電子透かしのデータ列の埋め込み方法に対して、同じ文字数が含まれた文書画像に電子透かしのデータ列の埋め込む場合に、より多くの情報量を埋め込むことができる。これは第1の実施形態に係る方法が4つの外接矩形を用いて1つの情報(上記説明では1ビットの情報)を埋め込むに対し、第2の実施形態の方法では2つの外接矩形を用いて1つの情報を埋め込むことができることに起因するものである。
【0076】
しかし文書画像全体が拡大や縮小されている場合、本実施形態に係る上記埋め込み方法は、第1の実施形態に係る埋め込み方法の様な長さの相対的な比較ではなく、平均値という固定値との比較であるため、情報の抽出が困難になる場合が考えられる。しかし、埋め込み時における情報系列がランダムである、すなわち1と0の出現確率が同等である場合、埋め込み時の平均値と、抽出時の平均値は同じであるので、上記ステップS408で、埋め込み時に用いた平均値を鍵として保存せずに、ステップS502では、再度、ステップS403と同様の処理を行い、平均値を計算し直しても良い。
【0077】
情報系列のランダム化は埋め込む情報の暗号処理などにより容易に実現できる。また、埋め込む情報系列の1と0の出現確率の偏りを吸収するために、1行中の全ての外接矩形を用いず、行末の数個分はその偏りの修正用として用いることができる。これは、例えば1行中に埋め込むデータ列に1を示すデータが著しく多い場合、この行の長さが全ての行の長さの平均値に比べて著しく長くなってしまい、明らかに目立ってしまう。
【0078】
そこでこの場合、この1行中のすべての外接矩形間に1を埋め込むのではなく、予め定めた個数(1行中に1を埋め込んだ場合に、上記平均値と比べて著しく長くなったと認識し難いレベルまでの1のデータの個数)分1を埋め込み、残りの外接矩形間には0を埋め込む。0を埋め込むのは、1を多く埋め込むことで上記平均値よりも長くなった1行の長さを短く修正するためである。
【0079】
例えば8個の1からなるデータ列を6個の外接矩形間に埋め込む場合、先頭から4個の外接矩形間に1を埋め込み、最後の2個の外接矩形間に0を埋め込む。そして残りの2個の1は次の行に埋め込む。このようにすることで、1の多いデータ列を埋め込む場合、1行が著しく長くなることはない。
【0080】
また逆に、1行に埋め込むデータ列に0を示すデータが著しく場合、この行の長さが上記平均値よりも著しく短くなってしまい、明らかに目立ってしまう。そこで、上記処理の説明において、1を0,0を1と読み替えた処理を行うことで、0の多いデータ列を埋め込む場合、1行が著しく短くなることはない。
【0081】
なおこの場合、修正用の外接矩形間の個数を埋め込み側と抽出側とで共有しておく必要があり、抽出側では最後の数個の外接矩形から情報を抽出しない。
【0082】
また、上記説明では簡単のために隣接しない外接矩形として1つおきの外接矩形を用いて説明したが、上記の電子透かしの埋め込み方法、及び抽出方法が1つおきの外接矩形に限定されないことは明らかである。
【0083】
また上記説明において、埋め込むデータが1の場合、d>Dとなるように、0の場合、d<Dとなるように上記パラメータ処理を行ったが、これに限定されるものではなく、不等号の向きは逆でも良い。すなわち、埋め込むデータが1の場合、d<Dとなるように、0の場合、d>Dとなるように上記パラメータ処理を行っても良い。その場合、当然抽出処理もこれに対応させる必要があり、d>Dの場合、埋め込まれたデータを0として主記憶装置303に記録し、d<Dの場合、埋め込まれたデータを1として主記憶装置303に記録する。
【0084】
[第3の実施形態]
本実施形態では、上記実施形態に係る電子透かしのデータ列の埋め込み方法とは異なる方法で電子透かしのデータ列を文書画像に埋め込む。以下、本実施形態に係る電子透かしのデータ列を文書画像に埋め込む方法及び、この文書画像から電子透かしのデータ列を抽出する方法について説明する。なお、これらの埋め込み方法、抽出方法を実行するコンピュータの基本構成、及び各部の機能については第1の実施形態と同じとする。
【0085】
本実施形態に係る電子透かしのデータ列を埋め込む方法について図8を用いて説明する。図8は文書画像において隣接した2個ずつの外接矩形において、一方の外接矩形の高さと、両方の外接矩形間の距離とで定義される面積を用いた本実施形態に係る電子透かしのデータ列を埋め込む方法を説明するための図である。
【0086】
同図で、801は外接矩形Aの左端と外接矩形Bの右端との距離、802は外接矩形Bの左端と外接矩形Cの右端との距離、803は外接矩形Cの左端と外接矩形Dの右端との距離、804は外接矩形Dの左端と外接矩形Eの右端との距離、805は外接矩形Eの左端と外接矩形Fの右端との距離、806は外接矩形Fの左端と外接矩形Gの右端との距離を示す。また同図においてbは外接矩形Bの高さ、cは外接矩形Cの高さ、dは外接矩形Dの高さ、eは外接矩形Eの高さ、fは外接矩形Fの高さ、gは外接矩形Gの高さを示す。
【0087】
本実施形態に係る電子透かしのデータ列の埋め込み方法は、夫々の外接矩形の組(図8の例では、外接矩形A、Bの組、外接矩形B、Cの組、外接矩形C、Dの組、外接矩形D、Eの組、外接矩形E、Fの組、外接矩形F、Gの組)において、一方の外接矩形の高さと、両方の外接矩形間の距離とで定義される矩形の面積(図8の例では、801の距離×bで示される面積、802の距離×cで示される面積、803の距離×dで示される面積、804の距離×eで示される面積、805の距離×fで示される面積、806の距離×gで示される面積)を埋め込むデータに応じて変化させる。なお、各組の面積の計算に用いる高さはその組に含まれるどちらの外接矩形の高さを用いても良い。また本実施形態は、1組に含まれる外接矩形の数が2つに限定されるものではない。
【0088】
次に、コンピュータが行う本実施形態に係る電子透かしのデータ列の埋め込み処理について、同処理のフローチャートを示す図9を参照して説明する。また、以下の処理の経過などは適宜モニタ306上に表示しても良い。
【0089】
なお、ステップS900からステップS902までの各ステップにおける処理は、ステップS600からステップS602までの各ステップにおける処理と同じであるために、その説明を省略する。
【0090】
次に、文書の先頭から2つの組の面積を求め、夫々をS1,S2とする(ステップS903)。図8の例では、801の距離×bを求め、これをS1、距離802×cを求め、これをS2とする。そして埋め込むデータが1である場合、処理をステップS905に進め、S1<S2となるように、面積S1を定義する幅と高さ、面積S2を定義する幅と高さの4つのパラメータを変更する(ステップS905)。図8の例では、高さb、距離801,高さc、距離802の4つのパラメータのうち1つ以上を変更して、S1<S2となるようにする。
【0091】
一方、埋め込むデータが0である場合、処理をステップS906に進め、S1>S2となるように、面積S1を定義する幅と高さ、面積S2を定義する幅と高さの4つのパラメータを変更する(ステップS906)。図8の例では、高さb、距離801,高さc、距離802の4つのパラメータのうち1つ以上を変更して、S1<S2となるようにする。また、外接矩形の位置、サイズを変更する制御処理に伴って、外接矩形で囲まれている文字の位置、サイズも同様に変更されるものとする。
【0092】
またステップS905、S906による処理は、その変更部分が最も目立たないように、すなわち画質劣化が小さくなるように上記各パラメータを予め調節しておく。
【0093】
そして更に埋め込むデータがある場合には処理をステップS903に戻し、上記処理を繰り返す。例えば埋め込むデータがまだある場合、図8の例では距離803×dを求め、これを面積S1とし、距離804×eを求め、これをS2として以上の処理を繰り返す。
【0094】
以上の処理により、文書画像に対して電子透かしのデータ列の埋め込みを行うことができる。
【0095】
次に、上記処理により埋め込んだ電子透かしのデータ列の抽出方法について説明する。上述の通り、電子透かしのデータ列を抽出する処理も図3に示したコンピュータにより行われる。図10に上記コンピュータが行う、上記処理により埋め込んだ電子透かしのデータ列の抽出処理のフローチャートを示す。
【0096】
ステップS1000,S1001、S1002の各ステップの処理は、ステップS700,S701、S903の各ステップの処理と同じであるために、その説明を省略する。
【0097】
そしてまず初めはS1は距離801×b、S2は距離802×cとして求め、S1<S2の場合(ステップS1003)、処理をステップS1004に進め、埋め込まれたデータを1として主記憶装置303に記録する(ステップS1004)。一方、S1>S2の場合、処理をステップS1005に進め、埋め込まれたデータを0として主記憶装置303に記録する(ステップS1005)。
【0098】
そして処理対象の外接矩形がまだ残っているかを判断する(ステップS1006)。図8の例では次にS1を距離803×d、S2を距離804×eとし、以上の処理を繰り返す。また予め電子透かしのデータの個数がわかっている場合には、その個数分のデータが主記憶装置303に記録されたか否かを判断すればよい。
【0099】
そして処理対象の外接矩形が残っていないとステップS1006で判断された場合、ステップS1004,ステップS1005で主記憶装置303に記録されたデータ列を電子透かしのデータ列として得ることができる。以上の処理により、上記方法により電子透かしのデータ列が埋め込まれた文書画像から、このデータ列を抽出することができる。
【0100】
なお、本実施形態ではS1,S2として2つの外接矩形による矩形の面積を用いたが、これ以外にも、外接矩形を定義する複数の独立したパラメータを用いて定式化したものを用いても良い。
【0101】
例えば、距離801+bをS1,距離802+cをS2としても良いし、距離801+(b×0.1)をS1,距離802+(c×0.1)をS2としても良い。また801乃至806を左側の外接矩形の左端から右側の外接矩形の右端までの距離とせずに、第1の実施形態と同様に、左側の外接矩形の右端から右側の外接矩形の左端までの距離としてもよい。また、上記面積の比較対象は鍵により指定しても良い。また、各面積に対して情報を埋め込む方法として他にも、第2の実施形態と同様にして、全部の面積の平均値を求め、埋め込む情報が1の場合には埋め込む対象の面積を大きくし、埋め込む情報が0の場合には埋め込む対象の面積を小さくしても良い。
【0102】
また上記説明において、埋め込むデータが1の場合、S1<S2となるように、0の場合、S1>S2となるように上記パラメータ処理を行ったが、これに限定されるものではなく、不等号の向きは逆でも良い。すなわち、埋め込むデータが1の場合、S1>S2となるように、0の場合、S1<S2となるように上記パラメータ処理を行っても良い。その場合、当然抽出処理もこれに対応させる必要があり、S1<S2の場合、埋め込まれたデータを0として主記憶装置303に記録し、S1>S2の場合、埋め込まれたデータを1として主記憶装置303に記録する。
【0103】
[第4の実施形態]
また、上記各実施形態に係る電子透かしのデータ列の埋め込み方法、抽出方法を実行するプログラムをプリンタドライバに適用してもよい。
【0104】
[そのほかの実施形態]
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【0105】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0106】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0107】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【0108】
【発明の効果】
以上説明した通り、本発明により、文書画像に電子透かしのデータ列を埋め込んでも、文書画像の画質の劣化を軽減することができ、人間に目に認識しがたく電子透かしの埋め込みを行うことができる。
【図面の簡単な説明】
【図1】文書画像において各文字の隣接していない外接矩形間の距離を用いた本発明の第2の実施形態に係る電子透かしのデータ列を埋め込む方法を説明するための図である。
【図2】文書画像において、各文字の隣接していない外接矩形間の距離を用いた本発明の第1の実施形態に係る電子透かしのデータ列を埋め込む方法を説明するための図である。
【図3】本発明の実施形態に係る電子透かし埋め込み装置、電子透かし抽出装置としてのコンピュータの基本構成を示すブロック図である。
【図4】本発明の第2の実施形態に係る電子透かしのデータ列の埋め込み処理のフローチャートを示す図である。
【図5】本発明の第2の実施形態に係る電子透かしのデータ列の抽出処理のフローチャートを示す図である。
【図6】本発明の第1の実施形態に係る電子透かしのデータ列の埋め込み処理のフローチャートを示す図である。
【図7】本発明の第1の実施形態に係る電子透かしのデータ列の抽出処理のフローチャートを示す図である。
【図8】文書画像において隣接した2個ずつの外接矩形において、一方の外接矩形の高さと、両方の外接矩形間の距離とで定義される面積を用いた本発明の第3の実施形態に係る電子透かしのデータ列を埋め込む方法を説明するための図である。
【図9】本発明の第3の実施形態に係る電子透かしのデータ列の埋め込み処理のフローチャートを示す図である。
【図10】本発明の第3の実施形態に係る電子透かしのデータ列の抽出処理のフローチャートを示す図である。
【発明の属する技術分野】
本発明は、文書画像に電子透かしを埋め込む電子透かし埋め込み装置、及び電子透かしが埋め込まされた文書画像から電子透かしを抽出する電子透かし抽出装置、及びそれらの方法に関するものである。
【0002】
【従来の技術】
インターネット上で画像や音声などのディジタルデータを流通させる際の著作権保護の方法として、電子透かしが注目されている。電子透かしは、画像や音声などのディジタルデータに対して、人間が知覚できないように透かし情報を埋め込む技術である。例えば、多値画像に対する電子透かし技術としては、多値画素の濃度の冗長性を利用する種々の方法が知られている。
【0003】
一方、文書画像のような二値画像は冗長度が少なく、電子透かし技術を実現するのが難しい。しかしながら、文書画像特有の特徴を利用した電子透かし方式がいくつか知られている。例えば、行のベースラインを動かす方法(特許第3136061)、単語間空白長を操作する方法(米国特許第6086706、特開平9−186603号公報)、文字間の空白長を操作する方法(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.)、中村康弘,松井甲子雄, “和文書へのシール画像による電子透かし”,情報処理学会論文誌 Vol.38 No.11 Nov. 1997.で述べられているような文字を回転して傾斜を変化させるなどが挙げられる。
【0004】
【発明が解決しようとする課題】
しかし文書画像は冗長度が少なく、今まで提案された従来手法は行のベースラインや、語間スペースや文字の回転という2変数の変更によって、情報を埋め込むために変更点が目立つ、すなわち画質劣化が大きいと言う欠点があった。
【0005】
本発明は以上問題に鑑みてなされたものであり、電子透かしのデータ列を埋め込んだ文書画像の画質劣化を軽減する電子透かしの埋め込み装置及びその方法を提供することを目的とする。
【0006】
【課題を解決するための手段】
本発明の目的を達成するために、例えば本発明の電子透かし埋め込み装置は以下の構成を備える。
【0007】
すなわち、文書画像に対して電子透かしのデータ列を埋め込む電子透かし埋め込み装置であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算手段と、
隣接していない2つの外接矩形による組である第1の組と、当該第1の組とは異なる第2の組において、前記第1の組の夫々の外接矩形間の第1の距離と、前記第2の組の夫々の外接矩形間の第2の距離とを求める距離計算手段と、
埋め込むデータ列に応じて前記第1の距離と第2の距離の大小関係が変化するように、前記第1の組、もしくは前記第2の組を構成する各文字のいずれかを制御する制御手段と
を備えることを特徴とする。
【0008】
本発明の目的を達成するために、例えば本発明の電子透かし抽出装置は以下の構成を備える。
【0009】
すなわち、上記電子透かし埋め込み装置により電子透かしのデータ列が埋め込まれた文書画像から当該電子透かしのデータ列を抽出する電子透かし抽出装置であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算手段と、
隣接していない2つの外接矩形による組において、第1の組の夫々の外接矩形間の第1の距離と、第1の組とは異なる第2の組の夫々の外接矩形間の第2の距離とを求める距離計算手段と、
前記第1の距離と第2の距離との大小関係を所定の値で表現することで、当該値を電子透かしのデータとして得る抽出手段と
を備えることを特徴とする。
【0010】
本発明の目的を達成するために、例えば本発明の電子透かし埋め込み装置は以下の構成を備える。
【0011】
すなわち、文書画像に対して電子透かしのデータ列を埋め込む電子透かし埋め込み装置であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算手段と、
隣接していない2つの外接矩形間の距離の平均値を求める平均値計算手段と、
埋め込むデータに応じて、前記平均値に対して隣接していない2つの外接矩形の距離が変化するように、各文字を制御する制御手段と
を備えることを特徴とする。
【0012】
本発明の目的を達成するために、例えば本発明の電子透かし抽出装置は以下の構成を備える。
【0013】
すなわち、上記電子透かし埋め込み装置により電子透かしのデータ列が埋め込まれた文書画像から当該電子透かしのデータ列を抽出する電子透かし抽出装置であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算手段と、
隣接していない2つの外接矩形間の距離と、隣接していない2つの外接矩形間の距離の平均値との大小関係を所定の値で表現することで、当該値を電子透かしのデータとして得る抽出手段と
を備えることを特徴とする。
【0014】
本発明の目的を達成するために、例えば本発明の電子透かし埋め込み装置は以下の構成を備える。
【0015】
すなわち、文書画像に対して電子透かしのデータ列を埋め込む電子透かし埋め込み装置であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算手段と、
隣接していない2つの外接矩形間の距離を用いて電子透かしのデータ列を埋め込むと共に、埋め込むことで変化する所定個数分の外接矩形間の距離の変化を修正する埋め込み手段と
を備えることを特徴とする。
【0016】
本発明の目的を達成するために、例えば本発明の電子透かし埋め込み方法は以下の構成を備える。
【0017】
すなわち、文書画像に対して電子透かしのデータ列を埋め込む電子透かし埋め込み方法であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算工程と、
隣接していない2つの外接矩形による組である第1の組と、当該第1の組とは異なる第2の組において、前記第1の組の夫々の外接矩形間の第1の距離と、前記第2の組の夫々の外接矩形間の第2の距離とを求める距離計算工程と、
埋め込むデータ列に応じて前記第1の距離と第2の距離の大小関係が変化するように、前記第1の組、もしくは前記第2の組を構成する各文字のいずれかを制御する制御工程と
を備えることを特徴とする。
【0018】
本発明の目的を達成するために、例えば本発明の電子透かし抽出方法は以下の構成を備える。
【0019】
すなわち、上記電子透かし埋め込み方法により電子透かしのデータ列が埋め込まれた文書画像から当該電子透かしのデータ列を抽出する電子透かし抽出方法であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算工程と、
隣接していない2つの外接矩形による組において、第1の組の夫々の外接矩形間の第1の距離と、第1の組とは異なる第2の組の夫々の外接矩形間の第2の距離とを求める距離計算工程と、
前記第1の距離と第2の距離との大小関係を所定の値で表現することで、当該値を電子透かしのデータとして得る抽出工程と
を備えることを特徴とする。
【0020】
本発明の目的を達成するために、例えば本発明の電子透かし埋め込み方法は以下の構成を備える。
【0021】
すなわち、文書画像に対して電子透かしのデータ列を埋め込む電子透かし埋め込み方法であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算工程と、
隣接していない2つの外接矩形間の距離の平均値を求める平均値計算工程と、埋め込むデータに応じて、前記平均値に対して隣接していない2つの外接矩形の距離が変化するように、各文字を制御する制御工程と
を備えることを特徴とする。
【0022】
本発明の目的を達成するために、例えば本発明の電子透かし抽出方法は以下の構成を備える。
【0023】
すなわち、上記電子透かし埋め込み方法により電子透かしのデータ列が埋め込まれた文書画像から当該電子透かしのデータ列を抽出する電子透かし抽出方法であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算工程と、
隣接していない2つの外接矩形間の距離と、隣接していない2つの外接矩形間の距離の平均値との大小関係を所定の値で表現することで、当該値を電子透かしのデータとして得る抽出工程と
を備えることを特徴とする。
【0024】
本発明の目的を達成するために、例えば本発明の電子透かし埋め込み方法は以下の構成を備える。
【0025】
すなわち、文書画像に対して電子透かしのデータ列を埋め込む電子透かし埋め込み方法であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算工程と、
隣接していない2つの外接矩形間の距離を用いて電子透かしのデータ列を埋め込むと共に、埋め込むことで変化する所定個数分の外接矩形間の距離の変化を修正する埋め込み工程と
を備えることを特徴とする。
【0026】
【発明の実施の形態】
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
【0027】
[第1の実施形態]
本実施形態に係る電子透かしのデータ列を埋め込む方法について図2を用いて説明する。図2は文書画像において、各文字の隣接していない外接矩形間の距離を用いた本実施形態に係る電子透かしのデータ列を埋め込む方法を説明するための図である。
【0028】
A〜Gの矩形は文書画像において各文字の外接矩形を示すものであり、文書解析技術を用いて抽出されるものである。各文字の外接矩形とは、文字に外接する矩形であって、文字認識を行う領域を指す情報である。各文字の外接矩形を求める方法としては、まず文書画像の各画素値を垂直座標軸に対して射影し、空白部分(黒色である文字のない部分)を探索して行を判別して行分割を行う。その後、行単位で文書画像を水平座標軸に対して射影し、空白部分を探索して文字単位に分割する。これによって、各文字を外接矩形で切り出すことが可能となる。この方法として例えば特開平6−68301号公報に開示されている方法を挙げることができる。
【0029】
また同図において201は外接矩形A、C間の距離を示し、202は外接矩形B、D間の距離を示し、203は外接矩形D、F間の距離を示し、204は外接矩形E、G間の距離を示す。上述の通り、本実施形態に係る電子透かしのデータ列の埋め込み方法では、これらの距離を、埋め込むデータに応じて変化させる。
【0030】
以下、上述の電子透かしのデータ列の埋め込み方法について説明する。図3に本実施形態に係る電子透かし埋め込み装置として、及び電子透かしのデータ列が埋め込まれた文書画像から電子透かしのデータ列を抽出する電子透かし抽出装置としてのコンピュータの基本構成を示す。なお、上記埋め込み方法、及び抽出方法を実現するために図3に示した各部全てを使用することは必須ではない。
【0031】
同図において、コンピュータ301は一般に普及しているパーソナルコンピュータやワークステーションなどであって、スキャナ317から読み取られた画像を入力し、編集や保管を行うことが可能である。また、スキャナ317から得られた画像をプリンタ316から紙やOHP等の記録媒体に印刷させることができる。尚、ユーザからの各種指示等は、マウス313、キーボード314を用いて入力することができる。
【0032】
コンピュータ301の内部では、バス307により後述する各ブロックが接続され、夫々のブロック間で種々のデータの受け渡しが可能である。MPU302は、コンピュータ301内部の各ブロックの動作を制御すると共に、RAMとしての主記憶装置303に記憶されたプログラムを実行することで後述の電子透かしのデータ列の埋め込みに関する一連の処理、及びこの埋め込み処理により文書画像に埋め込まれた電子透かしのデータ列を抽出する一連の処理を実行する。
【0033】
主記憶装置303は、HDD304,CD−ROMドライブ装置309、DVD−ROMドライブ装置310、FDドライブ装置311等からロードされたプログラムやデータを一時的に記憶するエリアを備えると共に、MPU302が各種の処理を実行するために一時的に処理対象のデータなどを記憶するワークエリアを備える。
【0034】
ハードディスクドライブ(HDD)装置304は、主記憶装置303にロードされるプログラムや文書画像データを予め保存しておいたり、処理後の文書画像データを保存することができる。インタフェース(I/F)315は、原稿やフィルム等に記録された情報を読み取って、画像データを生成するスキャナ317と接続され、スキャナ317で得られた画像データを入力するためのI/Fである。I/F308は、画像データを印刷するプリンタ316と接続され、印刷する画像データをプリンタ316に送信するためのI/Fである。
【0035】
CD−ROMドライブ装置309は、外部記憶媒体の一つであるCD−ROM(CD−R/CD−RW)に記憶されたデータを読み込んだり、あるいは書き出すことができる装置である。FD(フロッピー(登録商標)ディスク)ドライブ装置311はCD−ROMドライブ装置309と同様にFDからデータを読み出したり、FDへデータを書き込んだりすることができる装置である。DVD−ROMドライブ装置310は、FDドライブ装置311と同様に、DVDからデータを読み出したり、DVDへデータを書き込んだりすることができる装置である。尚、上記CD−ROM、FD、DVD−ROM等にプログラム、あるいはプリンタドライバが記憶されている場合には、これらプログラムをHDD304にインストールし、必要に応じて主記憶装置303にロードされるようになっている。
【0036】
I/F312は、マウス313やキーボード314からの入力指示を受け付けるために、これらと接続されるI/Fである。また、モニタ306は、電子透かしのデータ列の抽出処理結果や処理過程を表示することのできる表示装置である。さらに、ビデオコントローラ305は、表示データをモニタ306に送信するための装置である。
【0037】
以上の構成を備えるコンピュータが行う電子透かしのデータ列の埋め込み処理について、同処理のフローチャートを示す図6を参照して説明する。なお、以下の説明では1つ置きの外接矩形間の距離(図2を例に取ると、201と202,203と204)を用いる。また、以下の処理の経過などは適宜モニタ306上に表示しても良い。
【0038】
まず、マウス313もしくはキーボード314を用いたユーザからの指示入力に応じて、電子透かし埋め込みを行う文書画像を主記憶装置303にロードする(ステップS600)。この文書画像は、文書が記録された紙などの記録媒体をスキャナ317により読みとり、読みとった結果をビットマップ化したものとする。
【0039】
しかし文書画像を得る方法はこれに限定されるものではなく、他にも例えば、一般の文書エディタで作成された文書、もしくは上記CD−ROMドライブ装置309,もしくはDVD−ROMドライブ装置310、もしくはFDドライブ装置311から主記憶装置303にロードされた文書のデータを用いてビットマップ化し、文書画像を作成しても良い。また、LANやインターネットなどのネットワークに接続可能なネットワークI/Fを上記装置に備え、ネットワークを介して外部から文書画像を受信し、得ても良い。しかし上記いずれの場合でも、文書画像はビットマップ化されたものである。
【0040】
次に、ビットマップ化された文書画像に対し前述の文書解析を行い、各文字の外接矩形を求める(ステップS601)。次に、ユーザは1,もしくは0からなる電子透かしのデータ列をキーボード314,もしくはマウス313を用いて入力すると、このデータ列はI/F312を介して主記憶装置303に出力され、主記憶装置303に格納される(ステップS602)。
【0041】
次に、文書の先頭から2つの、隣接していない外接矩形間の距離を求め、夫々をd1,d2とする(ステップS603)。図2の例では、上記201の距離を求め、これをd1、202の距離を求め、これをd2とする(ステップS603)。そして埋め込むデータが1である場合、処理をステップS605に進め、d1>d2となるように、以下の2つのパラメータの変更処理のいずれか、もしくはその組み合わせによる処理を行う(ステップS605)。
【0042】
・ 外接矩形Bの列方向の大きさを大きくする、もしくは外接矩形Cの列方向の大きさを小さくする(サイズに関するパラメータの変更)
・ 外接矩形Cの位置を外接矩形D側に移動させる、もしくは外接矩形Bの位置を外接矩形D側に移動させる(位置に関するパラメータの変更)
この2つのパラメータの変更処理のいずれか、もしくはその組み合わせによる処理のどちらを行うかの指示は予め決めていても良いし、ユーザにより入力させても良い。
【0043】
一方、埋め込むデータが0である場合、処理をステップS606に進め、d1<d2となるように、以下の2つのパラメータの変更処理のいずれか、もしくはその組み合わせによる処理を行う(ステップS606)。
【0044】
・ 外接矩形Bの列方向の大きさを小さくする、もしくは外接矩形Cの列方向の大きさを大きくする(サイズに関するパラメータの変更)
・ 外接矩形Cの位置を外接矩形A側に移動させる、もしくは外接矩形Bの位置を外接矩形A側に移動させる(位置に関するパラメータの変更)
この2つのパラメータの変更処理のいずれか、もしくはその組み合わせによる処理のどちらを行うかの指示は予め決めていても良いし、ユーザにより入力させても良い。また、外接矩形の位置、サイズを変更する制御処理に伴って、外接矩形で囲まれている文字の位置、サイズも同様に変更されるものとする。
【0045】
またステップS605、S606による処理は、その変更部分が最も目立たないように、すなわち画質劣化が小さくなるように上記各パラメータを予め調節しておく。
【0046】
特に図2の例では3つおきの外接矩形(図2では外接矩形A、D、G)の位置は変化しないので、3個の外接矩形を単位としてその中のバランスで最も画質劣化のないように、データの埋め込み処理を行う。これにより、外接矩形間のスペース“のみ”を変更する場合に対して人間の視覚的に違和感の無い埋め込みが実現できる。
【0047】
図6に戻って、更に埋め込むデータがある場合には処理をステップS603に戻し、上記処理を繰り返す。例えば埋め込むデータがまだある場合、図2の例では外接矩形D、F間の距離を求め、これをd1とし、更に外接矩形E、G間の距離を求め、これをd2とし、以上の埋め込み処理の説明で、外接矩形A,B,C,Dを夫々外接矩形D,E,F,Gと読み替えて以上の処理を繰り返す。
【0048】
以上の処理により、文書画像に対して電子透かしのデータ列の埋め込みを行うことができる。
【0049】
次に、上記処理により埋め込んだ電子透かしのデータ列の抽出方法について説明する。上述の通り、電子透かしのデータ列を抽出する処理も図3に示したコンピュータにより行われる。図7に上記コンピュータが行う、上記処理により埋め込んだ電子透かしのデータ列の抽出処理のフローチャートを示す。
【0050】
まず、マウス313もしくはキーボード314を用いたユーザからの指示入力に応じて、電子透かしのデータ列が埋め込まれた文書画像(以下、埋め込み画像)を主記憶装置303にロードする(ステップS700)。この埋め込み画像は、上記埋め込み処理による埋め込み画像をプリンタ316によりプリントした紙やOHPなどの記録媒体をスキャナ317により読みとり、読みとった結果をビットマップ化したものとする。しかし、埋め込み画像を得る方法はこれに限定されるものではなく、上記HDD304、もしくはCD−ROMドライブ装置309,もしくはDVD−ROMドライブ装置310、もしくはFDドライブ装置311から主記憶装置303にロードされたものであってもよい。また、LANやインターネットなどのネットワークに接続可能なネットワークI/Fを上記装置に備え、ネットワークを介して外部から受信し、得ても良い。
【0051】
次に、埋め込み画像に対し前述の文書解析を行い、各文字の外接矩形を求める(ステップS701)。本ステップにおける処理は、上記ステップS601における処理内容と同じである。
【0052】
次に、上記201の距離d1と202の距離d2とを求める(ステップS702)。d1>d2の場合(ステップS703)、処理をステップS704に進め、埋め込まれたデータを1として主記憶装置303に記録する(ステップS704)。一方、d1<d2の場合、処理をステップS705に進め、埋め込まれたデータを0として主記憶装置303に記録する(ステップS705)。
【0053】
そして処理対象の外接矩形がまだ残っているかを判断する(ステップS706)。図2の例では外接矩形A,B,C,D以降にまだE,F,Gが残っているので、処理をステップS702に戻し、外接矩形D、F間の距離を求め、これをd1とし、更に外接矩形E、G間の距離を求め、これをd2とし、以上の抽出処理の説明で、外接矩形A,B,C,Dを夫々外接矩形D,E,F,Gと読み替えて以上の処理を繰り返す。また予め電子透かしのデータの個数がわかっている場合には、その個数分のデータが主記憶装置303に記録されたか否かを判断すればよい。
【0054】
そして処理対象の外接矩形が残っていないとステップS706で判断された場合、ステップS704,ステップS705で主記憶装置303に記録されたデータ列を電子透かしのデータ列として得ることができる。以上の処理により、上記方法により電子透かしのデータ列が埋め込まれた文書画像から、このデータ列を抽出することができる。
【0055】
なお、以上の説明では外接矩形A,C間の距離と外接矩形B,D間の距離との大小関係に応じて電子透かしのデータを埋め込んだ後、次に外接矩形D,F間の距離と外接矩形E,G間の距離との大小関係に応じて電子透かしのデータを埋め込んだが、大小関係の比較対象はこれに限定されるものではない。すなわち、例えば、外接矩形A,C間の距離と外接矩形D,F間の距離との大小関係に応じて電子透かしのデータを埋め込んだ後、次に外接矩形B,D間の距離と外接矩形E,G間の距離との大小関係に応じて電子透かしのデータを埋め込んでも良い。
【0056】
また、ある値を初期値として擬似乱数を発生させ、その乱数の値に応じて大小関係の比較対象を選択しても良い。例えば乱数の値が1の場合、外接矩形A,C間の距離と外接矩形B,D間の距離との大小関係に応じて電子透かしのデータを埋め込んだ後、次に外接矩形D,F間の距離と外接矩形E,G間の距離との大小関係に応じて電子透かしのデータを埋め込み処理を行い、乱数の値が2の場合、外接矩形A,C間の距離と外接矩形D,F間の距離との大小関係に応じて電子透かしのデータを埋め込んだ後、次に外接矩形B,D間の距離と外接矩形E,G間の距離との大小関係に応じて電子透かしのデータを埋め込む処理を行うとしてもよい。
【0057】
またここでは4つの距離の組み合わせの一例を用いた電子透かしのデータ列の埋め込み方法について説明したが、外接矩形の数が更に増えると、どの外接矩形間の距離同士の大小関係を用いるかの組み合わせ数は膨大なものとなるため、上記乱数を用いた大小関係の比較対象の選択方法を用いると、上記初期値を鍵として埋め込み側と抽出側で共有すれば、その鍵を知らない第3者はアルゴリズムが公開されても、埋め込まれた情報を抽出することはできなくなり、秘匿性が向上する。
【0058】
また、上記説明では簡単のために隣接しない外接矩形として1つおきの外接矩形を用いて説明したが、上記の電子透かしの埋め込み方法、及び抽出方法が1つおきの外接矩形に限定されないことは明らかである。
【0059】
また上記説明において、埋め込むデータが1の場合、d1>d2となるように、0の場合、d1<d2となるように上記パラメータ処理を行ったが、これに限定されるものではなく、不等号の向きは逆でも良い。すなわち、埋め込むデータが1の場合、d1<d2となるように、0の場合、d1>d2となるように上記パラメータ処理を行っても良い。その場合、当然抽出処理もこれに対応させる必要があり、d1>d2の場合、埋め込まれたデータを0として主記憶装置303に記録し、d1<d2の場合、埋め込まれたデータを1として主記憶装置303に記録する。
【0060】
[第2の実施形態]
本実施形態では、第1の実施形態に係る電子透かしのデータ列の埋め込み方法とは異なる方法で電子透かしのデータ列を文書画像に埋め込む。以下、本実施形態に係る電子透かしのデータ列を文書画像に埋め込む方法及び、この文書画像から電子透かしのデータ列を抽出する方法について説明する。なお、これらの埋め込み方法、抽出方法を実行するコンピュータの基本構成、及び各部の機能については第1の実施形態と同じとする。
【0061】
本実施形態に係る電子透かしのデータ列を埋め込む方法について図1を用いて説明する。図1は文書画像において各文字の隣接していない外接矩形間の距離を用いた本実施形態に係る電子透かしのデータ列を埋め込む方法を説明するための図である。
【0062】
A〜Gの矩形は文書画像において1行を構成する各文字の外接矩形を示すものであり、第1の実施形態で説明した処理により得られるものである。また同図において101は外接矩形A、C間の距離を示し、102は外接矩形B、D間の距離を示し、103は外接矩形C、E間の距離を示し、104は外接矩形D、F間の距離を示し、105は外接矩形E、G間の距離を示す。上述の通り、本実施形態に係る電子透かしのデータ列の埋め込み方法では、これらの距離を、埋め込むデータに応じて変化させる。
【0063】
次に、コンピュータが行う本実施形態に係る電子透かしのデータ列の埋め込み処理について、同処理のフローチャートを示す図4を参照して説明する。なお、以下の説明では1つ置きの外接矩形間の距離(図1では101乃至105)を用いる。また、以下の処理の経過などは適宜モニタ306上に表示しても良い。
【0064】
なお、ステップS400からステップS402までの各ステップにおける処理は、ステップS600からステップS602までの各ステップにおける処理と同じであるために、その説明を省略する。
【0065】
次に、1行文の各外接矩形間の距離、すなわち、101乃至105の距離の総和を計算し、その平均値pを求める(ステップS403)。具体的には、101乃至105の夫々の距離をx1,x2,x3,x4、x5とすると、その平均値pは
p=(x1+x2+x3+x4+x5)/5
として求める。そして埋め込むデータが1の場合、外接矩形間の距離が平均値よりも長くなるように、外接矩形のサイズに関するパラメータの変更及び/又は位置に関するパラメータの変更を行う(ステップS405)。例えば101の距離を制御対象とする場合、埋め込むデータが1の場合、
・ 外接矩形Cの列方向の大きさを小さくする(サイズに関するパラメータの変更)
・ 外接矩形Cの位置を外接矩形D側に移動させる(位置に関するパラメータの変更)
のいずれか、もしくはその組み合わせによる処理を行う。なお、どちらを行うかの指示は予め決めていても良いし、ユーザにより入力させても良い。
【0066】
一方、埋め込むデータが0の場合、外接矩形間の距離が平均値よりも短くなるように、外接矩形のサイズに関するパラメータの変更及び/又は位置に関するパラメータの変更を行う(ステップS406)。例えば101の距離を制御対象とする場合、埋め込むデータが0の場合、
・ 外接矩形Cの列方向の大きさを大きくする(サイズに関するパラメータの変更)
・ 外接矩形Cの位置を外接矩形B側に移動させる(位置に関するパラメータの変更)
のいずれか、もしくはその組み合わせによる処理を行う。なお、どちらを行うかの指示は予め決めていても良いし、ユーザにより入力させても良い。また、外接矩形の位置、サイズを変更する制御処理に伴って、外接矩形で囲まれている文字の位置、サイズも同様に変更されるものとする。またステップS405,S406による処理は、その変更部分が最も目立たないように、すなわち画質劣化が小さくなるように上記各パラメータを予め調節しておく。
【0067】
そして更に埋め込むデータがある場合には処理をステップS404に戻し、上記処理を繰り返す。例えば埋め込むデータがまだある場合、図1の例では102の距離を制御対象として上記処理を行う。
【0068】
以上の処理により、文書画像に対して電子透かしのデータ列の埋め込みを行うことができる。なお、埋め込むデータ列が1行分の埋め込みで収まらない場合、次の行において同じ処理を繰り返す。
【0069】
そして最後に、上記平均値を鍵としてHDD304に保存する(ステップS408)。ただし、埋め込み処理が複数の行にわたる場合、埋め込み対象となる行すべて、または段落毎など、複数の行に対する隣接しない外接矩形間の長さの平均値を鍵として用いれば、鍵として保存する数を減少させることができる。
【0070】
次に、上記処理により埋め込んだ電子透かしのデータ列の抽出方法について説明する。上述の通り、電子透かしのデータ列を抽出する処理も図3に示したコンピュータにより行われる。図5に上記コンピュータが行う、上記処理により埋め込んだ電子透かしのデータ列の抽出処理のフローチャートを示す。
【0071】
ステップS500,S501の各ステップにおける処理は上記ステップS700,S701の各ステップにおける処理と同じであるために、その説明を省略する。そしてステップS502では、上記ステップS408で鍵としてHDD304に保存された平均値Dを主記憶装置303にロードする(ステップS502)。そして隣接していない外接矩形間の距離dを求める(ステップS503)。この距離dとして最初は図1の例では、d=101の距離とする。
【0072】
そしてd>Dの場合、処理をステップS505に進め、埋め込まれたデータを1として主記憶装置303に記録する(ステップS505)。一方、d<Dの場合、処理をステップS506に進め、埋め込まれたデータを0として主記憶装置303に記録する(ステップS506)。
【0073】
そして処理対象の外接矩形間がまだ残っているかを判断する(ステップS507)。図1の例では101の距離以降にまだ102の距離、103の距離、104の距離、105の距離が残っているので、処理をステップS503に戻し、d=102の距離とし、以上の処理を繰り返す。また予め電子透かしのデータの個数がわかっている場合には、その個数分のデータが主記憶装置303に記録されたか否かを判断すればよい。
【0074】
そして処理対象の外接矩形が残っていないとステップS507で判断された場合、ステップS506,ステップS507で主記憶装置303に記録されたデータ列を電子透かしのデータ列として得ることができる。以上の処理により、上記方法により電子透かしのデータ列が埋め込まれた文書画像から、このデータ列を抽出することができる。
【0075】
本実施形態に係る上記の電子透かしのデータ列の埋め込み方法は、第1の実施形態に係る電子透かしのデータ列の埋め込み方法に対して、同じ文字数が含まれた文書画像に電子透かしのデータ列の埋め込む場合に、より多くの情報量を埋め込むことができる。これは第1の実施形態に係る方法が4つの外接矩形を用いて1つの情報(上記説明では1ビットの情報)を埋め込むに対し、第2の実施形態の方法では2つの外接矩形を用いて1つの情報を埋め込むことができることに起因するものである。
【0076】
しかし文書画像全体が拡大や縮小されている場合、本実施形態に係る上記埋め込み方法は、第1の実施形態に係る埋め込み方法の様な長さの相対的な比較ではなく、平均値という固定値との比較であるため、情報の抽出が困難になる場合が考えられる。しかし、埋め込み時における情報系列がランダムである、すなわち1と0の出現確率が同等である場合、埋め込み時の平均値と、抽出時の平均値は同じであるので、上記ステップS408で、埋め込み時に用いた平均値を鍵として保存せずに、ステップS502では、再度、ステップS403と同様の処理を行い、平均値を計算し直しても良い。
【0077】
情報系列のランダム化は埋め込む情報の暗号処理などにより容易に実現できる。また、埋め込む情報系列の1と0の出現確率の偏りを吸収するために、1行中の全ての外接矩形を用いず、行末の数個分はその偏りの修正用として用いることができる。これは、例えば1行中に埋め込むデータ列に1を示すデータが著しく多い場合、この行の長さが全ての行の長さの平均値に比べて著しく長くなってしまい、明らかに目立ってしまう。
【0078】
そこでこの場合、この1行中のすべての外接矩形間に1を埋め込むのではなく、予め定めた個数(1行中に1を埋め込んだ場合に、上記平均値と比べて著しく長くなったと認識し難いレベルまでの1のデータの個数)分1を埋め込み、残りの外接矩形間には0を埋め込む。0を埋め込むのは、1を多く埋め込むことで上記平均値よりも長くなった1行の長さを短く修正するためである。
【0079】
例えば8個の1からなるデータ列を6個の外接矩形間に埋め込む場合、先頭から4個の外接矩形間に1を埋め込み、最後の2個の外接矩形間に0を埋め込む。そして残りの2個の1は次の行に埋め込む。このようにすることで、1の多いデータ列を埋め込む場合、1行が著しく長くなることはない。
【0080】
また逆に、1行に埋め込むデータ列に0を示すデータが著しく場合、この行の長さが上記平均値よりも著しく短くなってしまい、明らかに目立ってしまう。そこで、上記処理の説明において、1を0,0を1と読み替えた処理を行うことで、0の多いデータ列を埋め込む場合、1行が著しく短くなることはない。
【0081】
なおこの場合、修正用の外接矩形間の個数を埋め込み側と抽出側とで共有しておく必要があり、抽出側では最後の数個の外接矩形から情報を抽出しない。
【0082】
また、上記説明では簡単のために隣接しない外接矩形として1つおきの外接矩形を用いて説明したが、上記の電子透かしの埋め込み方法、及び抽出方法が1つおきの外接矩形に限定されないことは明らかである。
【0083】
また上記説明において、埋め込むデータが1の場合、d>Dとなるように、0の場合、d<Dとなるように上記パラメータ処理を行ったが、これに限定されるものではなく、不等号の向きは逆でも良い。すなわち、埋め込むデータが1の場合、d<Dとなるように、0の場合、d>Dとなるように上記パラメータ処理を行っても良い。その場合、当然抽出処理もこれに対応させる必要があり、d>Dの場合、埋め込まれたデータを0として主記憶装置303に記録し、d<Dの場合、埋め込まれたデータを1として主記憶装置303に記録する。
【0084】
[第3の実施形態]
本実施形態では、上記実施形態に係る電子透かしのデータ列の埋め込み方法とは異なる方法で電子透かしのデータ列を文書画像に埋め込む。以下、本実施形態に係る電子透かしのデータ列を文書画像に埋め込む方法及び、この文書画像から電子透かしのデータ列を抽出する方法について説明する。なお、これらの埋め込み方法、抽出方法を実行するコンピュータの基本構成、及び各部の機能については第1の実施形態と同じとする。
【0085】
本実施形態に係る電子透かしのデータ列を埋め込む方法について図8を用いて説明する。図8は文書画像において隣接した2個ずつの外接矩形において、一方の外接矩形の高さと、両方の外接矩形間の距離とで定義される面積を用いた本実施形態に係る電子透かしのデータ列を埋め込む方法を説明するための図である。
【0086】
同図で、801は外接矩形Aの左端と外接矩形Bの右端との距離、802は外接矩形Bの左端と外接矩形Cの右端との距離、803は外接矩形Cの左端と外接矩形Dの右端との距離、804は外接矩形Dの左端と外接矩形Eの右端との距離、805は外接矩形Eの左端と外接矩形Fの右端との距離、806は外接矩形Fの左端と外接矩形Gの右端との距離を示す。また同図においてbは外接矩形Bの高さ、cは外接矩形Cの高さ、dは外接矩形Dの高さ、eは外接矩形Eの高さ、fは外接矩形Fの高さ、gは外接矩形Gの高さを示す。
【0087】
本実施形態に係る電子透かしのデータ列の埋め込み方法は、夫々の外接矩形の組(図8の例では、外接矩形A、Bの組、外接矩形B、Cの組、外接矩形C、Dの組、外接矩形D、Eの組、外接矩形E、Fの組、外接矩形F、Gの組)において、一方の外接矩形の高さと、両方の外接矩形間の距離とで定義される矩形の面積(図8の例では、801の距離×bで示される面積、802の距離×cで示される面積、803の距離×dで示される面積、804の距離×eで示される面積、805の距離×fで示される面積、806の距離×gで示される面積)を埋め込むデータに応じて変化させる。なお、各組の面積の計算に用いる高さはその組に含まれるどちらの外接矩形の高さを用いても良い。また本実施形態は、1組に含まれる外接矩形の数が2つに限定されるものではない。
【0088】
次に、コンピュータが行う本実施形態に係る電子透かしのデータ列の埋め込み処理について、同処理のフローチャートを示す図9を参照して説明する。また、以下の処理の経過などは適宜モニタ306上に表示しても良い。
【0089】
なお、ステップS900からステップS902までの各ステップにおける処理は、ステップS600からステップS602までの各ステップにおける処理と同じであるために、その説明を省略する。
【0090】
次に、文書の先頭から2つの組の面積を求め、夫々をS1,S2とする(ステップS903)。図8の例では、801の距離×bを求め、これをS1、距離802×cを求め、これをS2とする。そして埋め込むデータが1である場合、処理をステップS905に進め、S1<S2となるように、面積S1を定義する幅と高さ、面積S2を定義する幅と高さの4つのパラメータを変更する(ステップS905)。図8の例では、高さb、距離801,高さc、距離802の4つのパラメータのうち1つ以上を変更して、S1<S2となるようにする。
【0091】
一方、埋め込むデータが0である場合、処理をステップS906に進め、S1>S2となるように、面積S1を定義する幅と高さ、面積S2を定義する幅と高さの4つのパラメータを変更する(ステップS906)。図8の例では、高さb、距離801,高さc、距離802の4つのパラメータのうち1つ以上を変更して、S1<S2となるようにする。また、外接矩形の位置、サイズを変更する制御処理に伴って、外接矩形で囲まれている文字の位置、サイズも同様に変更されるものとする。
【0092】
またステップS905、S906による処理は、その変更部分が最も目立たないように、すなわち画質劣化が小さくなるように上記各パラメータを予め調節しておく。
【0093】
そして更に埋め込むデータがある場合には処理をステップS903に戻し、上記処理を繰り返す。例えば埋め込むデータがまだある場合、図8の例では距離803×dを求め、これを面積S1とし、距離804×eを求め、これをS2として以上の処理を繰り返す。
【0094】
以上の処理により、文書画像に対して電子透かしのデータ列の埋め込みを行うことができる。
【0095】
次に、上記処理により埋め込んだ電子透かしのデータ列の抽出方法について説明する。上述の通り、電子透かしのデータ列を抽出する処理も図3に示したコンピュータにより行われる。図10に上記コンピュータが行う、上記処理により埋め込んだ電子透かしのデータ列の抽出処理のフローチャートを示す。
【0096】
ステップS1000,S1001、S1002の各ステップの処理は、ステップS700,S701、S903の各ステップの処理と同じであるために、その説明を省略する。
【0097】
そしてまず初めはS1は距離801×b、S2は距離802×cとして求め、S1<S2の場合(ステップS1003)、処理をステップS1004に進め、埋め込まれたデータを1として主記憶装置303に記録する(ステップS1004)。一方、S1>S2の場合、処理をステップS1005に進め、埋め込まれたデータを0として主記憶装置303に記録する(ステップS1005)。
【0098】
そして処理対象の外接矩形がまだ残っているかを判断する(ステップS1006)。図8の例では次にS1を距離803×d、S2を距離804×eとし、以上の処理を繰り返す。また予め電子透かしのデータの個数がわかっている場合には、その個数分のデータが主記憶装置303に記録されたか否かを判断すればよい。
【0099】
そして処理対象の外接矩形が残っていないとステップS1006で判断された場合、ステップS1004,ステップS1005で主記憶装置303に記録されたデータ列を電子透かしのデータ列として得ることができる。以上の処理により、上記方法により電子透かしのデータ列が埋め込まれた文書画像から、このデータ列を抽出することができる。
【0100】
なお、本実施形態ではS1,S2として2つの外接矩形による矩形の面積を用いたが、これ以外にも、外接矩形を定義する複数の独立したパラメータを用いて定式化したものを用いても良い。
【0101】
例えば、距離801+bをS1,距離802+cをS2としても良いし、距離801+(b×0.1)をS1,距離802+(c×0.1)をS2としても良い。また801乃至806を左側の外接矩形の左端から右側の外接矩形の右端までの距離とせずに、第1の実施形態と同様に、左側の外接矩形の右端から右側の外接矩形の左端までの距離としてもよい。また、上記面積の比較対象は鍵により指定しても良い。また、各面積に対して情報を埋め込む方法として他にも、第2の実施形態と同様にして、全部の面積の平均値を求め、埋め込む情報が1の場合には埋め込む対象の面積を大きくし、埋め込む情報が0の場合には埋め込む対象の面積を小さくしても良い。
【0102】
また上記説明において、埋め込むデータが1の場合、S1<S2となるように、0の場合、S1>S2となるように上記パラメータ処理を行ったが、これに限定されるものではなく、不等号の向きは逆でも良い。すなわち、埋め込むデータが1の場合、S1>S2となるように、0の場合、S1<S2となるように上記パラメータ処理を行っても良い。その場合、当然抽出処理もこれに対応させる必要があり、S1<S2の場合、埋め込まれたデータを0として主記憶装置303に記録し、S1>S2の場合、埋め込まれたデータを1として主記憶装置303に記録する。
【0103】
[第4の実施形態]
また、上記各実施形態に係る電子透かしのデータ列の埋め込み方法、抽出方法を実行するプログラムをプリンタドライバに適用してもよい。
【0104】
[そのほかの実施形態]
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【0105】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0106】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0107】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【0108】
【発明の効果】
以上説明した通り、本発明により、文書画像に電子透かしのデータ列を埋め込んでも、文書画像の画質の劣化を軽減することができ、人間に目に認識しがたく電子透かしの埋め込みを行うことができる。
【図面の簡単な説明】
【図1】文書画像において各文字の隣接していない外接矩形間の距離を用いた本発明の第2の実施形態に係る電子透かしのデータ列を埋め込む方法を説明するための図である。
【図2】文書画像において、各文字の隣接していない外接矩形間の距離を用いた本発明の第1の実施形態に係る電子透かしのデータ列を埋め込む方法を説明するための図である。
【図3】本発明の実施形態に係る電子透かし埋め込み装置、電子透かし抽出装置としてのコンピュータの基本構成を示すブロック図である。
【図4】本発明の第2の実施形態に係る電子透かしのデータ列の埋め込み処理のフローチャートを示す図である。
【図5】本発明の第2の実施形態に係る電子透かしのデータ列の抽出処理のフローチャートを示す図である。
【図6】本発明の第1の実施形態に係る電子透かしのデータ列の埋め込み処理のフローチャートを示す図である。
【図7】本発明の第1の実施形態に係る電子透かしのデータ列の抽出処理のフローチャートを示す図である。
【図8】文書画像において隣接した2個ずつの外接矩形において、一方の外接矩形の高さと、両方の外接矩形間の距離とで定義される面積を用いた本発明の第3の実施形態に係る電子透かしのデータ列を埋め込む方法を説明するための図である。
【図9】本発明の第3の実施形態に係る電子透かしのデータ列の埋め込み処理のフローチャートを示す図である。
【図10】本発明の第3の実施形態に係る電子透かしのデータ列の抽出処理のフローチャートを示す図である。
Claims (19)
- 文書画像に対して電子透かしのデータ列を埋め込む電子透かし埋め込み装置であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算手段と、
隣接していない2つの外接矩形による組である第1の組と、当該第1の組とは異なる第2の組において、前記第1の組の夫々の外接矩形間の第1の距離と、前記第2の組の夫々の外接矩形間の第2の距離とを求める距離計算手段と、
埋め込むデータ列に応じて前記第1の距離と第2の距離の大小関係が変化するように、前記第1の組、もしくは前記第2の組を構成する各文字のいずれかを制御する制御手段と
を備えることを特徴とする電子透かし埋め込み装置。 - 前記制御手段は、前記第1の組、もしくは前記第2の組を構成する各文字のいずれかの文字のサイズ、位置のうち、少なくとも一つを制御することを特徴とする請求項1に記載の電子透かし埋め込み装置。
- 請求項1又は2に記載の電子透かし埋め込み装置により電子透かしのデータ列が埋め込まれた文書画像から当該電子透かしのデータ列を抽出する電子透かし抽出装置であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算手段と、
隣接していない2つの外接矩形による組において、第1の組の夫々の外接矩形間の第1の距離と、第1の組とは異なる第2の組の夫々の外接矩形間の第2の距離とを求める距離計算手段と、
前記第1の距離と第2の距離との大小関係を所定の値で表現することで、当該値を電子透かしのデータとして得る抽出手段と
を備えることを特徴とする電子透かし抽出装置。 - 文書画像に対して電子透かしのデータ列を埋め込む電子透かし埋め込み装置であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算手段と、
隣接していない2つの外接矩形間の距離の平均値を求める平均値計算手段と、埋め込むデータに応じて、前記平均値に対して隣接していない2つの外接矩形の距離が変化するように、各文字を制御する制御手段と
を備えることを特徴とする電子透かし埋め込み装置。 - 請求項4に記載の電子透かし埋め込み装置により電子透かしのデータ列が埋め込まれた文書画像から当該電子透かしのデータ列を抽出する電子透かし抽出装置であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算手段と、
隣接していない2つの外接矩形間の距離と、隣接していない2つの外接矩形間の距離の平均値との大小関係を所定の値で表現することで、当該値を電子透かしのデータとして得る抽出手段と
を備えることを特徴とする電子透かし抽出装置。 - 更に、前記平均値を求める平均値計算手段を備えることを特徴とする請求項5に記載の電子透かし抽出装置。
- 文書画像に対して電子透かしのデータ列を埋め込む電子透かし埋め込み装置であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算手段と、
隣接していない2つの外接矩形間の距離を用いて電子透かしのデータ列を埋め込むと共に、埋め込むことで変化する所定個数分の外接矩形間の距離の変化を修正する埋め込み手段と
を備えることを特徴とする電子透かし埋め込み装置。 - 前記埋め込み手段は、1行を構成する外接矩形間のうち、先頭から所定個数分の外接矩形間には電子透かしのデータ列を埋め込み、残りの外接矩形間には当該データ列による外接矩形間の距離の変化とは逆の変化を与えるデータ列を埋め込むことを特徴とする請求項7に記載の電子透かし埋め込み装置。
- 文書画像に対して電子透かしのデータ列を埋め込む電子透かし埋め込み方法であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算工程と、
隣接していない2つの外接矩形による組である第1の組と、当該第1の組とは異なる第2の組において、前記第1の組の夫々の外接矩形間の第1の距離と、前記第2の組の夫々の外接矩形間の第2の距離とを求める距離計算工程と、
埋め込むデータ列に応じて前記第1の距離と第2の距離の大小関係が変化するように、前記第1の組、もしくは前記第2の組を構成する各文字のいずれかを制御する制御工程と
を備えることを特徴とする電子透かし埋め込み方法。 - 請求項9に記載の電子透かし埋め込み方法により電子透かしのデータ列が埋め込まれた文書画像から当該電子透かしのデータ列を抽出する電子透かし抽出方法であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算工程と、
隣接していない2つの外接矩形による組において、第1の組の夫々の外接矩形間の第1の距離と、第1の組とは異なる第2の組の夫々の外接矩形間の第2の距離とを求める距離計算工程と、
前記第1の距離と第2の距離との大小関係を所定の値で表現することで、当該値を電子透かしのデータとして得る抽出工程と
を備えることを特徴とする電子透かし抽出方法。 - 文書画像に対して電子透かしのデータ列を埋め込む電子透かし埋め込み方法であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算工程と、
隣接していない2つの外接矩形間の距離の平均値を求める平均値計算工程と、埋め込むデータに応じて、前記平均値に対して隣接していない2つの外接矩形の距離が変化するように、各文字を制御する制御工程と
を備えることを特徴とする電子透かし埋め込み方法。 - 請求項11に記載の電子透かし埋め込み方法により電子透かしのデータ列が埋め込まれた文書画像から当該電子透かしのデータ列を抽出する電子透かし抽出方法であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算工程と、
隣接していない2つの外接矩形間の距離と、隣接していない2つの外接矩形間の距離の平均値との大小関係を所定の値で表現することで、当該値を電子透かしのデータとして得る抽出工程と
を備えることを特徴とする電子透かし抽出方法。 - 更に、前記平均値を求める平均値計算工程を備えることを特徴とする請求項12に記載の電子透かし抽出方法。
- 文書画像に対して電子透かしのデータ列を埋め込む電子透かし埋め込み方法であって、
前記文書画像を構成する各文字の外接矩形を求める外接矩形計算工程と、
隣接していない2つの外接矩形間の距離を用いて電子透かしのデータ列を埋め込むと共に、埋め込むことで変化する所定個数分の外接矩形間の距離の変化を修正する埋め込み工程と
を備えることを特徴とする電子透かし埋め込み方法。 - コンピュータを、請求項1、4、7のいずれか1項に記載の電子透かし埋め込み装置として機能させることを特徴とするプログラム。
- コンピュータを、請求項3、5のいずれか1項に記載の電子透かし抽出装置として機能させることを特徴とするプログラム。
- コンピュータに、請求項9,11,14のいずれか1項に記載の電子透かし埋め込み方法を実行させるためのプログラム。
- コンピュータに、請求項10,12のいずれか1項に記載の電子透かし抽出方法を実行させるためのプログラム。
- 請求項15乃至18のいずれか1項に記載のプログラムを格納することを特徴とするコンピュータ読みとり可能な記憶媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002177645A JP2004023565A (ja) | 2002-06-18 | 2002-06-18 | 電子透かし埋め込み装置、電子透かし抽出装置、及びそれらの方法 |
US10/456,534 US7209572B2 (en) | 2002-06-18 | 2003-06-09 | Digital watermark embedding apparatus, digital watermark extraction apparatus, and methods thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002177645A JP2004023565A (ja) | 2002-06-18 | 2002-06-18 | 電子透かし埋め込み装置、電子透かし抽出装置、及びそれらの方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004023565A true JP2004023565A (ja) | 2004-01-22 |
Family
ID=29728169
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002177645A Withdrawn JP2004023565A (ja) | 2002-06-18 | 2002-06-18 | 電子透かし埋め込み装置、電子透かし抽出装置、及びそれらの方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7209572B2 (ja) |
JP (1) | JP2004023565A (ja) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004104494A (ja) * | 2002-09-10 | 2004-04-02 | Canon Inc | 電子透かし埋め込み装置及びその制御方法 |
US8301884B2 (en) * | 2002-09-16 | 2012-10-30 | Samsung Electronics Co., Ltd. | Method of managing metadata |
JP3919656B2 (ja) * | 2002-12-09 | 2007-05-30 | キヤノン株式会社 | 電子透かし埋め込み装置、電子透かし埋め込み方法、電子透かし抽出装置、電子透かし抽出方法 |
JP2004193756A (ja) * | 2002-12-09 | 2004-07-08 | Canon Inc | 電子透かし埋め込み方法 |
JP2004297778A (ja) * | 2003-03-07 | 2004-10-21 | Canon Inc | 画像データ暗号化方法及び装置、並びにコンピュータプログラム及びコンピュータ可読記憶媒体 |
US7711140B2 (en) * | 2004-04-21 | 2010-05-04 | Canon Kabushiki Kaisha | Secure recorded documents |
US7599099B2 (en) * | 2005-05-26 | 2009-10-06 | Canon Kabushiki Kaisha | Image processing apparatus and image processing method |
JP4143655B2 (ja) * | 2005-11-24 | 2008-09-03 | キヤノン株式会社 | 画像処理装置、画像処理方法、プログラム、記憶媒体、システム |
US7756289B2 (en) * | 2006-03-22 | 2010-07-13 | Ancestry.Com Operations Inc. | Image watermarking systems and methods |
US8064636B2 (en) * | 2007-05-31 | 2011-11-22 | Canon Kabushiki Kaisha | Image processing apparatus and method of controlling the same |
US8059859B2 (en) * | 2007-05-31 | 2011-11-15 | Canon Kabushiki Kaisha | Image processing apparatus and method of controlling the same |
JP4956366B2 (ja) * | 2007-10-16 | 2012-06-20 | キヤノン株式会社 | 画像処理装置 |
US9798948B2 (en) * | 2015-07-31 | 2017-10-24 | Datalogic IP Tech, S.r.l. | Optical character recognition localization tool |
US10939013B2 (en) * | 2018-09-07 | 2021-03-02 | International Business Machines Corporation | Encoding information within features associated with a document |
CN116127916A (zh) * | 2022-11-18 | 2023-05-16 | 百望股份有限公司 | 一种动态添加水印的方法和装置 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5680479A (en) | 1992-04-24 | 1997-10-21 | Canon Kabushiki Kaisha | Method and apparatus for character recognition |
ATE252796T1 (de) * | 1993-07-20 | 2003-11-15 | Canon Kk | Verfahren und kommunikationssystem unter verwendung einer verschlüsselungseinrichtung |
US5666419A (en) * | 1993-11-30 | 1997-09-09 | Canon Kabushiki Kaisha | Encryption device and communication apparatus using same |
US6086706A (en) | 1993-12-20 | 2000-07-11 | Lucent Technologies Inc. | Document copying deterrent method |
JPH0973337A (ja) * | 1995-09-05 | 1997-03-18 | Canon Inc | 課金装置、情報受信装置及び通信システム |
JP3542678B2 (ja) * | 1995-12-28 | 2004-07-14 | 沖電気工業株式会社 | 電子文書の単語間の空白部分の長さを利用した符号化および復号化方法、電子文書への署名情報の埋め込み方法、機密文書の暗号化方法 |
US5761686A (en) * | 1996-06-27 | 1998-06-02 | Xerox Corporation | Embedding encoded information in an iconic version of a text image |
JPH10198272A (ja) * | 1996-12-27 | 1998-07-31 | Canon Inc | 階層を有する鍵管理方法及び暗号システム、分散デジタル署名システム |
US6425081B1 (en) * | 1997-08-20 | 2002-07-23 | Canon Kabushiki Kaisha | Electronic watermark system electronic information distribution system and image filing apparatus |
JPH11234264A (ja) * | 1998-02-17 | 1999-08-27 | Canon Inc | 電子透かし方式及びそれを用いた電子情報配布システム並びに記憶媒体 |
JP4026933B2 (ja) * | 1998-06-24 | 2007-12-26 | キヤノン株式会社 | 情報処理装置及び方法並びに記録媒体 |
DE60025901T2 (de) * | 2000-01-11 | 2006-08-24 | International Business Machines Corp. | Verfahren und Vorrichtung zur Markierung eines Textdokuments mit einem Muster von zusätzlichen Leerstellen zum Zweck der Authentifizierung |
JP3679671B2 (ja) * | 2000-01-31 | 2005-08-03 | キヤノン株式会社 | 画像処理装置、画像処理方法、及び、そのプログラム、記憶媒体 |
US6801636B2 (en) * | 2000-01-31 | 2004-10-05 | Canon Kabushiki Kaisha | Image processing apparatus and method, and storage medium |
US6707465B2 (en) * | 2000-02-09 | 2004-03-16 | Canon Kabushiki Kaisha | Data processing apparatus and method, and storage medium |
ATE359563T1 (de) * | 2000-03-20 | 2007-05-15 | Ibm | Verfahren und system zur reversiblen markierung eines textdokuments mit einem muster der zusätzlichen leerzeichen für beglaubigung |
JP4218920B2 (ja) * | 2000-04-07 | 2009-02-04 | キヤノン株式会社 | 画像処理装置及び画像処理方法並びに記憶媒体 |
JP4827291B2 (ja) * | 2000-10-16 | 2011-11-30 | ジーエム・グローバル・テクノロジー・オペレーションズ・インコーポレーテッド | トリポード型等速ジョイント |
JP4280439B2 (ja) * | 2000-11-17 | 2009-06-17 | キヤノン株式会社 | 画像検証システム、検証データ変換装置、プログラム及び記録媒体 |
JP2002232685A (ja) * | 2001-01-31 | 2002-08-16 | Canon Inc | 電子透かし処理装置、情報処理装置、ディジタルコンテンツ配布システム、電子透かし挿入方法、及び記憶媒体 |
JP2002335397A (ja) * | 2001-02-20 | 2002-11-22 | Canon Inc | 情報処理システム、媒体、情報処理装置、情報処理方法、それらを実施するためのプログラム、及び当該プログラムをコンピュータが読出可能に記憶した記憶媒体 |
US7072488B2 (en) * | 2001-07-11 | 2006-07-04 | Canon Kabushiki Kaisha | Data processing method and apparatus |
JP2003152989A (ja) * | 2001-09-03 | 2003-05-23 | Canon Inc | 画像処理装置、及び画像処理方法、並びにプログラム、記憶媒体 |
JP2003228631A (ja) * | 2001-11-28 | 2003-08-15 | Canon Inc | 情報処理システム、情報処理装置、情報処理方法、プログラム及び記録媒体 |
JP2003230001A (ja) * | 2002-02-01 | 2003-08-15 | Canon Inc | 文書用電子透かし埋め込み装置及び文書用電子透かし抽出装置並びにそれらの制御方法 |
JP4072448B2 (ja) * | 2002-03-14 | 2008-04-09 | キヤノン株式会社 | 電子透かし抽出方法及び装置及びプログラム及び記憶媒体 |
-
2002
- 2002-06-18 JP JP2002177645A patent/JP2004023565A/ja not_active Withdrawn
-
2003
- 2003-06-09 US US10/456,534 patent/US7209572B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20030231786A1 (en) | 2003-12-18 |
US7209572B2 (en) | 2007-04-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7106884B2 (en) | Digital watermark embedding apparatus for document, digital watermark extraction apparatus for document, and their control method | |
JP2004023565A (ja) | 電子透かし埋め込み装置、電子透かし抽出装置、及びそれらの方法 | |
US7548633B2 (en) | Data processing apparatus and method, data processing program, and storage medium | |
JP2004104494A (ja) | 電子透かし埋め込み装置及びその制御方法 | |
JP4194462B2 (ja) | 電子透かし埋め込み方法、電子透かし埋め込み装置、及びそれらを実現するプログラム並びにコンピュータ可読記憶媒体 | |
JP4164463B2 (ja) | 情報処理装置及びその制御方法 | |
JP2006295606A (ja) | 画像処理装置及びその方法、プログラム並びに記憶媒体 | |
JPWO2007049340A1 (ja) | 電子透かしの埋め込み及び検出 | |
US20060002584A1 (en) | Image processing apparatus, image processing method, computer program and computer readable storage medium | |
US20070086060A1 (en) | Encoding apparatus, decoding apparatus, encoding method, computer product, and printed material | |
JP3919656B2 (ja) | 電子透かし埋め込み装置、電子透かし埋め込み方法、電子透かし抽出装置、電子透かし抽出方法 | |
US7269274B2 (en) | Digital watermark embedding method, digital watermark extraction method, digital watermark embedding apparatus, and digital watermark extraction apparatus | |
JP3703445B2 (ja) | 電子透かし埋め込み装置、電子透かし抽出装置、及びそれらの方法 | |
JP2006222572A (ja) | 画像処理装置、画像処理方法および画像処理プログラム | |
JP4298588B2 (ja) | 情報検出装置および情報検出方法 | |
JP2006025409A (ja) | 画像処理装置及び画像処理方法 | |
JP4164458B2 (ja) | 情報処理装置及び方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体 | |
JP2002232679A (ja) | 画像処理方法及び装置及びコンピュータプログラム及び記憶媒体 | |
JP2004247883A (ja) | 画像処理方法 | |
JP4324058B2 (ja) | 画像処理装置及びその方法 | |
JP3884997B2 (ja) | 電子透かし埋め込み装置及び電子透かし抽出装置並びにそれらの方法、コンピュータプログラム、記録媒体 | |
JP4871793B2 (ja) | 情報処理装置及びその方法 | |
JPH11234502A (ja) | デジタルデータ著作物、デジタルデータ著作物処理方法、デジタルデータ著作物処理装置、デジタルデータ著作物処理プログラムを記録した記録媒体 | |
JP2003008877A (ja) | 画像処理装置およびその方法 | |
JP2006261974A (ja) | 情報埋め込み方法、情報復元方法、情報埋め込み装置及び情報復元装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20050906 |