JP5173690B2 - 情報処理装置及び情報処理方法、並びに、コンピュータプログラム及びコンピュータ可読記録媒体 - Google Patents

情報処理装置及び情報処理方法、並びに、コンピュータプログラム及びコンピュータ可読記録媒体 Download PDF

Info

Publication number
JP5173690B2
JP5173690B2 JP2008237188A JP2008237188A JP5173690B2 JP 5173690 B2 JP5173690 B2 JP 5173690B2 JP 2008237188 A JP2008237188 A JP 2008237188A JP 2008237188 A JP2008237188 A JP 2008237188A JP 5173690 B2 JP5173690 B2 JP 5173690B2
Authority
JP
Japan
Prior art keywords
information
character
electronic document
image
document data
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.)
Expired - Fee Related
Application number
JP2008237188A
Other languages
English (en)
Other versions
JP2009111984A (ja
JP2009111984A5 (ja
Inventor
健一 沖原
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 JP2008237188A priority Critical patent/JP5173690B2/ja
Priority to US12/243,480 priority patent/US8125691B2/en
Publication of JP2009111984A publication Critical patent/JP2009111984A/ja
Publication of JP2009111984A5 publication Critical patent/JP2009111984A5/ja
Application granted granted Critical
Publication of JP5173690B2 publication Critical patent/JP5173690B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)
  • Document Processing Apparatus (AREA)
  • Editing Of Facsimile Originals (AREA)

Description

本発明は、文書へ情報を埋め込む技術に関する。
文書に情報を埋め込み、埋め込んだ情報(一般に、透かし情報と呼ばれる。)を抽出する技術は、文書のセキュリティを向上させるために有用である。
例えば、文字画像の配置位置を調整することで文書画像に透かし情報を埋め込み、その文書画像を印刷文書として出力する。その出力された印刷文書をスキャナ等で取り込むことで文書画像として、その文書画像から透かし情報を抽出するものである(特許文献1)。この技術では、複写によって文字画像の配置位置が変化しにくいため、複写耐性を持つ。
一方、ページ記述によって記述されたテキストを含む電子文書データの配置情報を変更して透かし情報を埋め込んだ後、その電子文書データから透かし情報を抽出するものである(特許文献2)。ここで、ページ記述された電子文書データはプリンタに対して出力を指示するための言語である。文字や図形等を各プリンタに応じた最適な文字質や画質で印刷することができ、一般的なレーザープリンタで利用されている。特許文献1の技術では文書画像に対して透かし情報の埋め込みを行うため、最適な文字質や画質で印刷できない。従って、ページ記述された電子文書データに対しての埋め込みが必要と考えられる。
特開2005−253004号公報 特開2000−99501号公報
しかしながら、特許文献1の技術は、文書画像上で透かし情報を埋め込むものであり、電子文書データとして出力するには文書画像から電子文書データへの変換が必要である。この変換を行う際、ブロックセレクションや光学文字認識(以下、OCR)等を行うが、OCRによる誤差又はアウトラインフォントの描画処理時に文字質を向上させるヒンティング処理の影響等で文字間隔が変化してしまうことがある。そのため、文書画像上で透かし情報を埋め込み、埋め込み後に電子データを変換したものから、埋め込まれていた透かし情報が正しく抽出できない場合があった。また、上記の変換の処理量が多い。
一方、特許文献2の技術は、電子文書データ上で透かし情報を埋め込むものであるため、それを印刷文書として出力した場合に、文書画像上で電子文書データに埋め込まれた透かし情報と同一の透かし情報を抽出することができない場合が多い。
従って、本発明の目的は、電子文書データに対して、構成画像の配置を操作する透かし情報の埋め込み及び、その印刷文書から埋め込まれた透かし情報を抽出可能である情報の埋め込み技術を提供することにある。
上記課題を解決するため、本発明に係る情報処理装置は、入力された電子文書データに情報を埋め込む情報処理装置であって、前記電子文書データから文書画像を生成する画像生成手段と、前記生成された文書画像中の各文字画像のレイアウト情報を検出する検出手段と、前記文書画像の行を選択する選択手段と、前記選択された行に対応する文字で構成される行が前記電子文書データに存在するかどうかを、前記レイアウト情報を用いて判定する判定手段と、前記判定手段で、前記選択された行に対応する文字で構成される行が前記電子文書データに存在すると判定された場合に、前記検出されたレイアウト情報に基づいて、前記選択された行の文字画像の配置を正規化するための正規化情報を算出する算出手段と、前記算出された正規化情報に基づいて、前記電子文書データを変更し、変更された電子文書データに情報を埋め込む埋め込み手段と、を備える。
また、本発明に係る情報処理方法は、入力された電子文書データに情報を埋め込む情報処理方法であって、前記電子文書データから文書画像を生成する画像生成工程と、前記生成された文書画像中の各構成画像のレイアウト情報を検出する検出工程と、前記検出されたレイアウト情報に基づいて、各構成画像の正規化するための正規化情報を算出する算出工程と、前記算出された正規化情報に基づいて、前記電子文書データを変更し、変更された電子文書データに情報を埋め込む埋め込み工程と、を有する。
本発明によれば、電子文書データに対して、構成画像の配置を操作する透かし情報の埋め込み、その印刷文書から、埋め込まれた透かし情報を抽出可能である情報の埋め込み技術を提供することができる。
以下、添付図面に従って、本発明に係る実施形態を詳細に説明する。
<第1の実施形態>
図1は、本発明の第1の実施形態及び第2の実施形態に係る透かし情報埋め込み装置100の概念的な構成図である。
透かし情報埋め込み装置(情報処理装置)100は、入力された電子文書データAから文書画像を生成し、文書画像に基づいて、電子文書データAを変更し、電子文書データAに透かし情報Bを埋め込む装置である。なお、文書画像は文字を含んだ画像データ(例えば、ビットマップ形式データ)とし、電子文書データはそれ以外のテキストデータとする。また、透かし情報埋め込み装置100は、ページ記述された電子文書データ(以下、ページ記述データ)Aを入力する電子文書データ入力部101を有する。また、電子文書データ入力部101によって入力されたページ記述データAから文書画像を生成する文書画像生成部102を有する。また、文書画像生成部102によって生成された文書画像中の各文字画像の外接矩形に関するレイアウト情報を検出する文書解析部103を有する。文書画像生成部102は、文書解析部103がレイアウト情報を検出可能である解像度で文書画像を生成する。また、文書解析部103で検出されたレイアウト情報に基づいて、注目する外接矩形(以下、注目矩形と言う。)と、この注目矩形に隣接する外接矩形との間における間隔を正規化するための正規化情報を算出する正規化情報算出部104を有する。
さらに、電子文書データ入力部101で入力された電子文書データを変更部105で正規化情報に基づいて変更する。さらに、透かし情報Bを入力する透かし情報入力部106と、透かし情報入力部106から入力された透かし情報Bに基づいて、電子文書データ上の正規化された間隔を調整することにより、透かし情報Bを埋め込む埋め込み部107を有する。さらに、透かし情報Bが埋め込まれた埋め込み文書印刷物Cとして出力する出力部108を有する。
図2は、第1の実施形態及び第2の実施形態に係る透かし情報埋め込み装置100の動作手順を示すフローチャートであり、図3は、文字間隔の組の例を示す図である。
まず、ステップS201において、ページ記述データAが電子文書データ入力部101に入力される。ページ記述データAは、プリンタに描画を指示したり、モニタに表示させたりするためのデータである。例えば、PS(Post Script)、XPS(XML Paper Specification)、及びPDF(Portable Document Format)が挙げられる。なお、ここでは、ページ記述データの例を示すが、ページ記述データ以外の電子文書データ、例えば、テキストファイルにも適用可能である。
ステップS202において、文書画像生成部102でページ記述データAから文書画像を生成する。なお、文書画像の解像度は正規化情報を誤りなく算出可能であるならば、生成時の規定の解像度よりも低くして良い。これによって、処理の高速化や画像を記憶する領域の削減が図れる。例えば、生成時の解像度create_dpiは次のように設定できる。まず、いくつかのページ記述データから文書画像を生成し、以下で説明する文字間隔の最小値space_minを求めておく。そして、規定の解像度order_dpiをspace_minを割った値以上で設定できる一番低い解像度を生成時の解像度create_dpiとする。つまり、order_dpiが600、space_minが4とすると、create_dpiは600/4=150dpiとなる。この方法では、最小の文字間隔が縮小によって消滅し把握できなくなることはない。従って、正規化情報を誤りなく算出できる。
ステップS203において、生成された文書画像から外接矩形(文字領域)が検出される。外接矩形は、図3で示すように、文字に外接する矩形である。また、外接矩形は、本来、文字認識を行う領域を示すものであるが、透かし情報技術においては、埋め込み操作の対象となる文字領域を示すものである。
外接矩形を検出する際には、まず、文書画像の各画素値を垂直座標軸に対して射影し、空白部分(黒色である文字のない部分)を探索して行を判別して行分割を行う。その後、行単位で文書画像を水平座標軸に対して射影し、空白部分を探索して文字単位に分割する。これにより、各文字を外接矩形で切り出すことが可能となり、外接矩形を検出することができる。
このようにして、外接矩形が検出された場合には、ステップS204において、外接矩形から文書画像の文字間隔が算出される。なお、文字間隔は、例えば、図3のP又はSで示すように、注目矩形と、注目矩形に隣接する外接矩形と、の間の間隔のことである。その後、ステップS204で算出された文字間隔に基づいて、ステップS205において、文字間隔を正規化するための正規化情報を算出する。なお、ステップS205の詳細については後述する。
ステップS206において、ステップ205で算出された正規化情報に基づいて、ページ記述データを変更する。なお、ステップS206の詳細については後述する。次に、ステップS207において、埋め込むべき透かし情報Bが透かし情報入力部106から入力され、変更されたページ記述データ上の文字間隔を調整することによって、透かし情報Bが埋め込まれる。なお、ステップS207の詳細については後述する。
最後に、ステップS208において、透かし情報Bが埋め込まれた埋め込み文書印刷物Cが出力される。
[正規化情報算出部104(ステップS205)]
図4は、第1の実施形態に係る正規化情報算出部104の動作手順を示すフローチャートである。正規化情報算出部104での処理は、注目矩形と、注目矩形の前に隣接する外接矩形(以下、前矩形と言う。)及び注目矩形の後ろに隣接する外接矩形(以下、後矩形と言う。)と、の間の文字間隔を調整する。なお、図3で示すように、注目矩形と前矩形との間の文字間隔をP、注目矩形と後矩形との間の文字間隔をSとする。
まず、ステップS205aにおいて、注目矩形に隣接する前後の文字間隔の組P、Sを選択する。P、Sは、例えば、ある行の外接矩形の数が30である場合(但し、文字数が30であるとは限らない。)には、その行の両端の外接矩形は除外し、偶数番目の外接矩形に着目する。
電子文書データ入力部101から入力されたページ記述データAにおいて、前述の文字間隔P、Sに対応し、ページ記述データ上の文字間隔を操作できる値である次の文字までの距離をA0、B0とする。なお、A0、B0は、例えば、図6で示すように、ページ記述データ601内で数値化されて表現される。また、文字とA0、B0との対応関係を図14に示す。図14のように、例えば、A0は「デ」の描画開始位置から「ジ」の描画開始位置までの距離を示しており、その距離は44pixelである。なお、ページ記述データの種類によっては次の文字までの距離ではなく、ページ記述データ上の文字間隔そのものであったりするが、文字間隔を操作できる値であれば、本発明が適用できるのはいうまでもない。
次に、ステップS205bにおいて、PとSとの値が等しいか否かが判断される。ステップS205bで、PとSとの値が等しいと判断された場合には、ステップS205cに進み、PとSとの値が等しくないと判断された場合には、ステップS205dに進む。
ステップS205cにおいて、ページ記述データ上の値であるA0、B0のそれぞれに対応する正規化情報であるX、Yの値を0とする。
ステップS205dにおいて、文字間隔P及びSの値の平均値Z=(P+S)/2を算出する。なお、ページ記述データAの文字間隔において、小数点以下を使用しない場合には、Zは小数点以下の切り捨て、切り上げ等の処理が行われる。
ステップS205eにおいて、P及びSの値とZを用いて、X及びYをそれぞれX=Z−P、Y=Z−Sとして算出する。
最後に、ステップS205fにおいて、注目矩形が文書画像の最終の外接矩形であるか否かを判断する。注目矩形が最終の外接矩形であると判断された場合には、ステップS205を終了し、注目矩形が最終の外接矩形ではないと判断された場合には、ステップS205aに戻る。
[変更部105(ステップS206)]
図5は、第1の実施形態に係る変更部105の動作手順を示すフローチャートである。変更部105は、上述の算出した正規化情報に基づいて、次の文字までの距離を変更する。その結果としてページ記述データ上の文字間隔が正規化される。
まず、ステップS206aにおいて、隣接する前後の文字間隔の組P、Sに対応した文字情報である次の文字までの距離A0、B0を選択する。
次に、ステップS206bにおいて、変更後の次の文字までの距離A1、B1をA1=A0+α×X、B1=B0+α×Yとして算出し、データ内容を変更する。ここで、αは文書画像をページ記述データに対応させる係数である、予め設定した値でもよいし、新たに入力した値でもよい。
最後に、ステップS206cにおいて、P、Sに対応した文字情報が最後であるか否かを判断する。ステップS206cで、文字情報が最後であると判断された場合には、ステップS206が終了し、文字情報が最後でないと判断された場合には、ステップS206aに戻る。
以上より、文字間隔が正規化されるため、ページ記述データから文字間隔の情報を得られなくとも埋め込みが可能になる。
[埋め込み部107(ステップS207)]
図15は、第1の実施形態に係る埋め込み部107の動作手順を示すフローチャートである。埋め込み部107は、ページ記述データ上の隣接する前後の文字間隔の大小関係を次の文字までの距離を用いて操作し、ページ記述データAに透かし情報Bを挿入する。
まず、ステップS207aにおいて、次の文字までの距離A1、B1を選択する。ステップS207bにおいて、透かし情報入力部106より入力された透かし情報Bのビット列の中から埋め込むべき透かしビットを選択する。本実施形態では、透かし情報Bは、0又は1のビット列として構成される。
次に、ステップS207cにおいて、ステップS207bで選択され、埋め込まれた透かしビットが1であるか否かを判断する。ステップS207cで、埋め込まれた透かしビットが1であると判断された場合には、ステップS207dにおいて、B1に対応した文字間隔よりもA1に対応した文字間隔の方が大きくなるように、透かし情報の埋め込みを行う。すなわち、埋め込み後の次の文字までの距離A2、B2をA2=A1+γ、B2=B2−γとして算出し、透かし情報の埋め込みを行う。ここで、γは任意の正の値である。
一方、ステップS207cで、埋め込まれた透かしビットが1ではない、すなわち、埋め込まれた透かしビットが0であると判断された場合には、ステップS207eに進む。ここでは、B1に対応した文字間隔よりもA1に対応した文字間隔の方が小さくなるように、透かし情報の埋め込みを行う。すわなち、埋め込み後の次の文字までの距離A2、B2をA2=A1−γ、B2=B2+γとして算出し、透かし情報の埋め込みを行う。なお、ステップS207d及びステップS207eにおいて、次の文字までの距離の増減を任意の正の値であるγで操作した。この結果、文書画像中における注目矩形を移動する操作と同様の効果が得られる。
これにより、ページ記述データ上の隣接する前後の文字間隔の大小関係を調整することによって、文字間隔の1組毎に1ビットの透かし情報(0又は1)が挿入される。例えば、1行に文字が30ある場合には、14ビット(=30/2−1)の透かし情報Bを埋め込むことができる。
なお、本実施形態では、偶数番目の文字の位置を調整することでページ記述データに透かし情報Bを埋め込んだが、隣接する文字で位置を調整しなければよいため、奇数番目の文字の位置を調整することでページ記述データに透かし情報Bを埋め込んでもよい。
また、本実施形態では、文字の1つ置きに透かし情報Bを埋め込んだ。すなわち、埋め込み対象の文字の間に埋め込み対象外の文字を1つ設けた。これは、連続する文字に順番に透かし情報Bを埋め込んだ場合には、1つの文字間隔が隣接する文字同士で共有する状態となり、また、制御できるのが常に一つの次の文字までの距離となるためである。このため、徐々に誤差が累積されてしまい、レイアウト(配置情報)に大きく影響してしまうことによるものである。ただし、本発明は、文字間隔を用いて情報を埋め込む手法であれば、説明した手順に限定されるものではない。
最後に、ステップS207fにおいて、ページ記述データ上の文字情報が最後であるか否かを判断する。ステップS207fで、ページ記述データ上の文字情報が最後であると判断された場合には、ステップS207が終了し、ページ記述データ上の文字情報が最後でないと判断された場合には、ステップS207aに戻る。
図6は、本実施形態におけるページ記述データの変化例を示す図である。まず、電子文書データ入力部101に入力された電子文書データが入力される。ここで、入力される電子文書データの一例が、ページ記述データ601である。また、ページ記述データ601中で、前述の文字間隔P及びSを操作できる値である次の文字までの距離を示す部分が次の文字までの距離データ601a、601bで示す部分である。ここでは、次の文字までの距離データ601a、601bの内で任意に選定した次の文字までの距離A0、B0に着目して説明する。
次に、変更部105において、文書画像中の文字間隔を正規化するための正規化情報に基づいて、電子文書データが変更される。ここで、変更された電子文書データの一例が、ページ記述データ602である。また、ページ記述データ602中で、次の文字までの距離データ601a、601bに対応する部分が次の文字までの距離データ602a、602bである。また、次の文字までの距離A0、B0に対応する部分が次の文字までの距離A1、B1であり、次の文字までの距離は、A0からA1、及びB0からB1に変更されたことがわかる。
次に、埋め込み部107において、変更部105において変更された電子文書データに透かし情報Bが埋め込まれる。ここで、透かし情報埋め込み後の電子文書データの一例が、ページ記述データ603である。また、ページ記述データ602中で、次の文字までの距離データ602a、602bに対応する部分が603a、603bである。また、次の文字までの距離A1、B1に対応する部分が次の文字までの距離A2、B2であり、次の文字までの距離は、A1からA2、及びB1からB2に変更されたことがわかる。
図7は、第1の実施形態に係る透かし情報抽出装置(情報処理装置)700の構成図である。画像入力部701には、埋め込み文書印刷物Cが入力される。検出部702は、画像入力部701に入力された文書画像から文字の位置関係を解析する。透かし情報抽出部703は、文字の位置関係(文字間隔の大小関係)に埋め込まれた透かし情報Dを抽出して出力する。
図8は、透かし情報抽出部703の動作手順を示すフローチャートである。まず、ステップS801において、透かし情報が埋め込まれた文書画像を入力する。スキャナ等の画像入力部701から埋め込み文書印刷物Cの文書画像が読込まれる。
ステップS802において、検出部702で文書画像から外接矩形を検出する。次に、ステップS803において、検出部702で文字間隔を外接矩形から算出する。なお、算出手順は、透かし情報を埋め込む処理と同様に行うことができる。最後に、ステップS804において、透かし情報抽出部703で透かし情報を抽出する。この抽出処理は、注目矩形に隣接する前後の文字間隔の組P1、S1の大小関係によって、1組毎に1ビット(0又は1)の情報が抽出される。
本実施形態によれば、文書画像の文字間隔の情報を電子文書データに反映させた後で、電子文書データ上で透かし情報を埋め込む。したがって、電子文書データに対して文字間隔を操作することで透かし情報を埋め込み、その印刷文書から透かし情報を抽出できる。また、文書画像上で埋め込み、ブロックセレクションやOCR等の処理を行ない、処理後の文書画像を電子文書データに変換するよりも文字間隔の誤差が発生しにくく、処理量が少ない。
なお、本実施形態では、正規化情報を用いて電子文書データを変更した後に、透かし情報の埋め込みを行なった。しかしながら、文書画像の文字間隔の関係から正規化せずに透かし情報の埋め込みを直接行なっても良い。
なお、本実施形態では、正規化情報算出から透かし情報の埋め込みまでの各処理を文書全体で行った。しかしながら、文書の行毎に前述の各処理を行っても良い。これによって、処理結果を記憶する領域の削減が図れる。
なお、本実施形態では、文字間隔を調整することによって透かし情報を埋め込む手法を説明したが、本発明は、行間隔を調整することによって透かし情報を埋め込む手法にも適用することができる。その場合は、本実施形態において、文字の外接矩形を処理対象である構成画像としたが、一行分の文字が含まれる外接矩形を、処理対象である構成画像とすればよい。
また、本発明は、文字間隔や行間隔を調整するだけでなく、図形と文字との間の間隔や、図形と図形との間の間隔を調整する場合にも適用することができる。また、本発明は、間隔を調整して情報を埋め込むだけでなく、図形や文字のサイズを変化させたり、これらの位置を調整することによって、透かし情報を埋め込む方式にも適用することができる。
[第1の実施形態の変形例]
上述の第1の実施形態では、正規化情報算出部104において、文書画像から順々に文字間隔の組PとSを選択して正規化情報を算出した。しかしながら、図17に示すようにページ記述データ(1701)が認識する文字領域(1701a、1701b)と文書画像(1702)が認識する文字領域(1702a、1702b)とが異なる場合がある。この原因としては、例えば、1702cのようにブロックセレクションの結果、図の一部が文字として誤って認識する場合等が挙げられる。このような場合、ページ記述データに存在しない文字間隔を用いて正規化してしまう。その結果、透かし情報を埋め込むことができない。
そこで、ページ記述データにおいて文字コードが存在する行の座標と一致する座標を持つ行のみに対して、正規化情報を算出する。従って、ページ記述データの各行に透かし情報を埋め込むことができる確率が高くなる。
図16は、第1の実施形態の変形例に係る正規化情報算出部104の動作手順を示すフローチャートである。なお、ステップS206jからステップS206mの各処理はそれぞれステップS205bからステップS205eまでの各処理と同様であるため、説明を省略する。
まず、ステップS206gにおいて、文書画像の行を選択する。例えば文書画像の右上に近い行から順々に選択する。
ステップS206hにおいて、S206gで選択した行の始めの座標と一致する座標を持つ行がページ記述データに存在するか否かを判定する。文書画像における行の始めの座標は例えば、図17の1702dのような行の最初の文字の座標(水平座標=「741」、垂直座標=「5585」等)である。一方、ページ記述データにおける行の始めの座標は例えば、図17の1701dのように文字コードが存在する行の最初の数字(水平座標=「729」、垂直座標=「5584」等)で示される。ここで、座標の単位は文書画像及びページ記述データともにpixelである。なお、文字コードは存在しない図17の1701cのような絵に相当する部分の座標は除外する。これによって、文字部分のみに透かし情報の埋め込みが可能になる。ただし、ページ記述データの種類によっては文字部分のみに座標が割り当てられている場合も考えられる。その場合は、ページ記述データの全ての座標を判定対象とすればよい。
座標が一致するか否かの判定において、ページ記述データの座標と文書画像の座標には文書画像の生成方法によって、多少の誤差が生じると考えられる。従って、誤差を考慮して、例えば、座標差が20以下なら同じ行と判定する。誤差を考慮して図17では、文書画像1702の水平座標=「741」、垂直座標=「5585」とページ記述データ1701の水平座標=「729」、垂直座標=「5584」が一致すると判定できるため、行が存在することが分かる。
また、ページ記述データの各行の座標データは、例えばステップS201のページ記述データ読み込み時に全て取得しメモリ等に予め保持される。ただし、ステップS206hの処理で逐次座標データを探索してもよい。
ステップS206hにおいて、行が存在する場合は、ステップS206iにおいて、行の始めから順々に文字間隔の組PとSを選択し、ステップS206jからステップS206mまでの各処理を場合に応じて行なう。そして、ステップS206nにおいて、行の終わりか否かを判定し、行の終わりまで処理を行ない、ステップS206oに進む。ステップS206oにおいて文書の終わりか否かを判定する。文書の終わりではないなら、ステップS206gに進み、文書の終わりなら、ステップS206を終了する。一方、S206hにおいて、行が存在しない場合は、ステップS206oに進む。
<第2の実施形態>
上述の第1の実施形態では、変更部105において、ページ記述データ中の文字がどんな文字であっても、文字間隔を無条件に文書画像からの正規化情報によって変更した。そのため、ページ記述データ中に句読点が混在する場合には、句読点前後の文字間隔も変更されるため、文書として不自然になる場合がある。
図9は、句読点前後における文字間隔の組の例を示す図である。本実施形態では、第1の実施形態と異なり、句読点の直後の文字間隔を含む文字間隔の組を変更せず、かつ、この文字間隔の組には透かし情報を埋め込まない。
例えば、注目矩形904の直後の文字間隔Sを含む文字間隔P、Sの組とそれに対応する次の文字までの距離A0、B0の組は、901、902が該当する。これらの文字間隔の組には、透かし情報を埋め込まないこととなる。また、透かし情報を抽出する際には、埋め込み対象としない外接矩形の前後の文字間隔の組は除外して行う。
第2の実施形態に係る透かし情報埋め込み装置は、上述した第1の実施形態と同様の構成であるが、変更部105(ステップS206)及び埋め込み部107(ステップS207)での処理は、下記の点で異なる。
[変更部105(ステップS206)]
図10は、第2の実施形態に係る変更部105の動作手順を示すフローチャートである。まず、ステップS206dにおいて、隣接する前後の文字間隔の組P、Sに対応した文字情報である次の文字までの距離A0、B0を選択する。
次に、ステップS206eにおいて、ページ記述データAの句読点位置情報に基づいて、A0又はB0が句読点の直後の文字間隔に対応する次の文字までの距離であるか否かが判断される。なお、句読点位置情報は、例えば、文字コードで示される。ステップS206eにおいて、A0又はB0が句読点の直後の文字間隔に対応する次の文字までの距離であると判断されない場合には、ステップS206fに進む。そして、ステップS206eにおいて、A0又はB0が句読点の直後の文字間隔に対応する次の文字までの距離であると判断された場合には、ステップS206gに進む。
ステップS206fにおいて、変更後の次の文字までの距離A1、B1をA1=A0+α×X、B1=B0+α×Yとして算出し、データ内容を変更する。
一方、ステップS206gにおいて、A1=A0、B1=B0とする。すなわち、データ内容は変更されない。
最後に、ステップS206hにおいて、P、Sに対応した文字情報が最後であるか否かを判断する。ステップS206hで、文字情報が最後であると判断された場合には、ステップS206が終了し、文字情報が最後でないと判断された場合には、ステップS206dに戻る。
[埋め込み部107(ステップS207)]
図11は、第2の実施形態に係る埋め込み部107の動作手順を示すフローチャートである。まず、ステップS207gにおいて、次の文字までの距離A1、B1を選択する。
ステップS207hにおいて、ページ記述データAの句読点位置情報に基づいて、A1又はB1が句読点の直後の文字間隔に対応する次の文字までの距離であるか否かが判断される。ステップS207hにおいて、A1又はB1が句読点の直後の文字間隔に対応する次の文字までの距離であると判断されない場合には、ステップS207iに進む。そして、ステップS207hにおいて、A1又はB1が句読点の直後の文字間隔に対応する次の文字までの距離であると判断された場合には、ステップS206mに進む。
ステップS207iにおいて、埋め込むべき透かしビットを選択する。次に、ステップS207jにおいて、埋め込んだ透かしビットが1であるか否かを判断する。ステップS207jで埋め込んだ透かしビットが1であると判断された場合には、ステップS207kに進み、埋め込んだ透かしビットが1ではないと判断された場合には、ステップS207lに進む。
ステップS207kにおいて、B1に対応した文字間隔よりもA1に対応した文字間隔の方が大きくなるように、埋め込み後の次の文字までの距離A2、B2をA2=A1+γ、B2=B2−γとして算出し、透かし情報の埋め込みを行う。一方、ステップS207lにおいて、B1に対応した文字間隔よりもA1に対応した文字間隔の方が小さくなるように、埋め込み後の次の文字までの距離A2、B2をA2=A1−γ、B2=B2+γとして算出し、透かし情報の埋め込みを行う。
一方、ステップS207mにおいて、A2=A1、B2=B1とする。すなわち、透かし情報の埋め込みは行なわれない。
最後に、ステップS207nにおいて、ページ記述データ上の文字情報が最後であるか否かを判断する。ステップS207nで、ページ記述データ上の文字情報が最後であると判断された場合には、ステップS207が終了し、ページ記述データ上の文字情報が最後でないと判断された場合には、ステップS207gに戻る。
図12は、第2の実施形態に係る透かし情報抽出部703の動作手順を示すフローチャートである。透かし情報抽出装置700は、第1実施形態と同様であるが、抽出処理において、句読点に関する処理を追加する。
まず、ステップS1201において、透かし情報が埋め込まれた文書画像を読込む。スキャナ等の画像入力部701から入力される。
ステップS1202において、文書画像から外接矩形を検出する。ステップS1203において、外接矩形のサイズ等に基づいて、句読点を検出する。ステップS1202及びステップS1203の処理は、検出部702で行われる。
ステップS1204において、前述した句読点の直後の文字間隔を含む文字間隔の組を除いた文字間隔を検出部702で算出する。算出方法は、埋め込み部107の処理と同様である。
ステップS1205において、透かし情報抽出部703で透かし情報を抽出する。この抽出処理は、隣接する前後の文字間隔の組P1、S1の大小関係によって、1組毎に1ビット(0又は1)の情報が抽出される。
なお、上述の第1、第2の実施形態では、隣接する前後の文字間隔の大小関係を調整することで透かし情報を埋め込んだ。しかし、各文字間隔を閾値と比較することにより透かし情報を挿入するか否かを判定する場合には、各々の対応する文書画像内の文字間隔の情報のみを付加するだけで本発明を適用することができる。
<第3の実施形態>
本実施形態では、第1の実施形態に係る種々の処理をコンピュータに実行させる。図13は、第3の実施形態に係るコンピュータの基本的な構成図である。例えば、コンピュータにおいて、全ての機能を実行する場合には、各機能構成をコンピュータプログラムで表現し、コンピュータに読込ませることによって、コンピュータで第1の実施形態の全ての機能を実現することができる。
CPU1301は、RAM1302やROM1303に格納されているコンピュータプログラムやデータを用いて、コンピュータ全体を制御する。また、CPU1301は、上記の第1実施形態及び第2実施形態で説明した各処理を行う。
RAM1302は、外部記憶装置1308から読込まれたコンピュータプログラムやデータ、他のコンピュータシステム1314からI/F(インターフェース)1315を介して、ダウンロードしたプログラムやデータを一時的に記憶する記憶領域を備える。また、RAM1302は、CPU1301が各種の処理を行うために必要な処理領域を備える。
ROM1303は、コンピュータの機能プログラムや設定データ等を記憶する。ディスプレイ制御装置1304は、画像や文字等をディスプレイ1305に表示させるための制御処理を行う。ディスプレイ1305は、CRTや液晶画面等の表示装置であり、画像や文字等を表示する。
操作入力デバイス1306は、キーボードやマウス等、CPU1301に各種の指示を入力することのできるデバイスにより構成される。I/O1307は、操作入力デバイス1306を介して入力された各種の指示等をCPU1301に通知する。
外部記憶装置1308は、ハードディスク等の大容量情報記憶装置として機能し、OS(オペレーティングシステム)や上記各実施形態に係る処理をCPU1301に実行させるためのコンピュータプログラム、入出力原稿画像等を記憶する。外部記憶装置1308への情報の書き込みや外部記憶装置1308からの情報の読み出しは、I/O1309を介して行われる。
プリンタ1310は、文書や画像を出力する。出力データは、I/O1313を介してRAM1302、もしくは外部記憶装置1308から送信される。なお、プリンタとしては、例えば、インクジェットプリンタ、レーザビームプリンタ、熱転写型プリンタ、ドットインパクトプリンタ等が挙げられる。
スキャナ1312は、文書や画像を読み取る。入力データは、I/O1313を介してRAM1302、もしくは外部記憶装置1308に送信される。
バス1316は、CPU1301、ROM1303、RAM1302、I/O1311、I/O1309、ディスプレイ制御装置1304、I/F1315、I/O1307、I/O1313をつないでネットワークを形成する。
なお、本実施形態では、コンピュータが、スキャナやプリンタでの処理を除く処理を行っているが、スキャナやプリンタが、内部に設けられた専用のハードウェア回路を用いて、コンピュータで行う処理を代わりに行ってもよい。
なお、上記第1乃至第3実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならない。すなわち、本発明は、その技術思想、又はその主要な特徴から逸脱することなく、様々な形態で実施することができる。
<その他の実施形態>
なお、本実施形態は、複数の機器(例えば、ホストコンピュータ、インターフェース機器、リーダ、プリンタ等)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、複合機、ファクシミリ装置等)に適用してもよい。
また、前述の実施形態では、これらの機能を実現するソフトウェアのプログラムコードを記録したコンピュータ可読記録媒体(又は記憶媒体)をシステム又は装置に供給する。この場合に、そのシステム又は装置のコンピュータ(又はCPUやMPU)が記録媒体に格納されたプログラムコードを読込み実行することによっても達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本実施形態を構成することになる。
また、本発明はこれだけでなく、そのプログラムコードの指示に基づいて、コンピュータ上で稼働しているオペレーティングシステム(OS)等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づいて、その機能拡張カードや機能拡張ユニットに備わるCPU等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本実施形態を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートや機能構成に対応するプログラムコードが格納されることになる。
第1の実施形態及び第2の実施形態に係る透かし情報埋め込み装置100の機能構成図である。 第1の実施形態及び第2の実施形態に係る透かし情報埋め込み装置100の動作手順を示すフローチャートである。 文字間隔の組の例を示す図である。 第1の実施形態に係る正規化情報算出部104の動作手順を示すフローチャートである。 第1の実施形態に係る変更部105の動作手順を示すフローチャートである。 第1の実施形態におけるページ記述データの変化例を示す図である。 第1の実施形態及び第2の実施形態に係る透かし情報抽出装置700の機能構成図である。 第1の実施形態に係る透かし情報抽出部704の動作手順を示すフローチャートである。 句読点前後における文字間隔の組の例を示す図である。 第2の実施形態に係る変更部105の動作手順を示すフローチャートである。 第2の実施形態に係る埋め込み部107の動作手順を示すフローチャートである。 第2の実施形態に係る透かし情報抽出部704の動作手順を示すフローチャートである。 第3の実施形態に係るコンピュータの基本的な構成図である。 第1の実施形態におけるページ記述データの文字と次の文字までの距離の関係を示す図である。 第1の実施形態に係る埋め込み部107の動作手順を示すフローチャートである。 第1の実施形態の変形例に係る正規化情報算出部104の動作手順を示すフローチャートである。 ページ記述データと文書画像における各行の座標を示す図である。

Claims (11)

  1. 入力された電子文書データに情報を埋め込む情報処理装置であって、
    前記電子文書データから文書画像を生成する画像生成手段と、
    前記生成された文書画像中の各文字画像のレイアウト情報を検出する検出手段と、
    前記文書画像の行を選択する選択手段と、
    前記選択された行に対応する文字で構成される行が前記電子文書データに存在するかどうかを、前記レイアウト情報を用いて判定する判定手段と、
    前記判定手段で、前記選択された行に対応する文字で構成される行が前記電子文書データに存在すると判定された場合に、前記検出されたレイアウト情報に基づいて、前記選択された行の文字画像の配置を正規化するための正規化情報を算出する算出手段と、
    前記算出された正規化情報に基づいて、前記電子文書データを変更し、変更された電子文書データに情報を埋め込む埋め込み手段と、
    を備えることを特徴とする情報処理装置。
  2. 前記画像生成手段は、前記検出手段が前記レイアウト情報を検出可能である解像度で前記文書画像を生成することを特徴とする請求項1に記載の情報処理装置。
  3. 前記レイアウト情報は、前記各文字画像の位置及びサイズに関する情報を含んでおり、
    前記算出手段は、前記レイアウト情報に基づいて、前記各文字画像の間隔を算出することを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記各文字画像は各文字画像の外接矩形であり、
    前記検出手段は、前記レイアウト情報に基づいて、前記各文字画像の外接矩形の間隔を算出することを特徴とする請求項3に記載の情報処理装置。
  5. 前記算出手段は、前記検出手段によって算出された文字間隔に基づいて、注目する外接矩形である注目矩形と、該注目矩形に隣接する外接矩形と、の間における文字間隔の平均値を算出し、前記各文字間隔が該平均値を得るために必要な正規化情報を算出することを特徴とする請求項4に記載の情報処理装置。
  6. 前記埋め込み手段は、前記電子文書データを変更する際に、前記外接矩形の位置又はサイズの少なくとも一方に対応する情報を変更することを特徴とする請求項5に記載の情報処理装置。
  7. 更に、文書画像上で算出された正規化情報に対応するように、前記電子文書データを変更する手段を備えることを特徴とする請求項1乃至6のいずれか1項に記載の情報処理装置。
  8. 前記埋め込み手段は、前記電子文書データにおける各文字の文字間隔を予め定められた情報に基づいて調整することにより、情報を埋め込むことを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。
  9. 入力された電子文書データに情報を埋め込む情報処理方法であって、
    画像生成手段が、前記電子文書データから文書画像を生成する画像生成工程と、
    検出手段が、前記生成された文書画像中の各文字画像のレイアウト情報を検出する検出工程と、
    選択手段が、前記文書画像の行を選択する選択工程と、
    判定手段が、前記選択された行に対応する文字で構成される行が前記電子文書データに存在するかどうかを、前記レイアウト情報を用いて判定する判定工程と、
    前記判定工程において、前記選択された行に対応する文字で構成される行が前記電子文書データに存在すると判定された場合に、算出手段が、前記検出されたレイアウト情報に基づいて、前記選択された行の文字画像の配置を正規化するための正規化情報を算出する算出工程と、
    埋め込み手段が、前記算出された正規化情報に基づいて、前記電子文書データを変更し、変更された電子文書データに情報を埋め込む埋め込み工程と、
    を有することを特徴とする情報処理方法。
  10. コンピュータが読込み実行することで、前記コンピュータに請求項1乃至8のいずれか1項に記載の情報処理装置として機能させることを特徴とするコンピュータプログラム。
  11. 請求項10に記載のコンピュータプログラムを格納したことを特徴とするコンピュータ可読記録媒体。
JP2008237188A 2007-10-11 2008-09-16 情報処理装置及び情報処理方法、並びに、コンピュータプログラム及びコンピュータ可読記録媒体 Expired - Fee Related JP5173690B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008237188A JP5173690B2 (ja) 2007-10-11 2008-09-16 情報処理装置及び情報処理方法、並びに、コンピュータプログラム及びコンピュータ可読記録媒体
US12/243,480 US8125691B2 (en) 2007-10-11 2008-10-01 Information processing apparatus and method, computer program and computer-readable recording medium for embedding watermark information

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2007265826 2007-10-11
JP2007265826 2007-10-11
JP2008237188A JP5173690B2 (ja) 2007-10-11 2008-09-16 情報処理装置及び情報処理方法、並びに、コンピュータプログラム及びコンピュータ可読記録媒体

Publications (3)

Publication Number Publication Date
JP2009111984A JP2009111984A (ja) 2009-05-21
JP2009111984A5 JP2009111984A5 (ja) 2011-10-27
JP5173690B2 true JP5173690B2 (ja) 2013-04-03

Family

ID=40779922

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008237188A Expired - Fee Related JP5173690B2 (ja) 2007-10-11 2008-09-16 情報処理装置及び情報処理方法、並びに、コンピュータプログラム及びコンピュータ可読記録媒体

Country Status (1)

Country Link
JP (1) JP5173690B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001313819A (ja) * 2000-04-27 2001-11-09 Fuji Xerox Co Ltd 画像処理装置、記憶媒体
JP4164458B2 (ja) * 2004-03-08 2008-10-15 キヤノン株式会社 情報処理装置及び方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
JP2006166091A (ja) * 2004-12-08 2006-06-22 Canon Inc 文書処理装置、文書処理方法

Also Published As

Publication number Publication date
JP2009111984A (ja) 2009-05-21

Similar Documents

Publication Publication Date Title
US7054485B2 (en) Image processing method, apparatus and system
JP5132438B2 (ja) 画像処理装置および画像処理方法
JP5934762B2 (ja) 文字の形状特徴を使用した文字比較による文書改変検知方法、コンピュータプログラム、記録媒体および情報処理装置
US8225200B2 (en) Extracting a character string from a document and partitioning the character string into words by inserting space characters where appropriate
US7528986B2 (en) Image forming apparatus, image forming method, program therefor, and storage medium
JP4555212B2 (ja) 透かし情報埋め込み装置,透かし情報埋め込み方法,およびコンピュータプログラム
JP2006295606A (ja) 画像処理装置及びその方法、プログラム並びに記憶媒体
JP2002352191A (ja) 手書き判別能力を持つプリンティング制御インターフェースシステムとその方法
US8391607B2 (en) Image processor and computer readable medium
JP2010009509A (ja) 画像処理装置、画像処理方法およびそのプログラムならびに記憶媒体
JP2006050551A (ja) 画像処理装置及びその方法、並びにプログラム及び記憶媒体
JP2009100232A (ja) 画像処理装置
JP4673200B2 (ja) 印刷処理システムおよび印刷処理方法
JP5094869B2 (ja) コード化パターンの印刷方法
US8600175B2 (en) Apparatus and method of processing image including character string
JP2002015280A (ja) 画像認識装置、画像認識方法および画像認識プログラムを記録したコンピュータ読取可能な記録媒体
JP2021044803A (ja) 画像処理装置、画像処理方法、及びプログラム
JP3728209B2 (ja) 画像処理方法及び装置及びコンピュータプログラム及び記憶媒体
JP5173690B2 (ja) 情報処理装置及び情報処理方法、並びに、コンピュータプログラム及びコンピュータ可読記録媒体
US8125691B2 (en) Information processing apparatus and method, computer program and computer-readable recording medium for embedding watermark information
US20080304700A1 (en) Image forming apparatus and method of image forming
US20160088185A1 (en) Image processing apparatus, image processing method, and storage medium
JP4164458B2 (ja) 情報処理装置及び方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
JP2010105191A (ja) 画像処理装置
JP2019195117A (ja) 情報処理装置、情報処理方法、及びプログラム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110912

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110912

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120629

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120809

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121203

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121227

R151 Written notification of patent or utility model registration

Ref document number: 5173690

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160111

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees