(57)【要約】【課題】一般に文書画像にはノイズや追記などが付加されることが多く、また、１行の文字数が少ない箇所も存在する。このような文書画像に対して文字列矩形を求め、行間隔を取得した場合、行間透かし情報を抽出するのに適切な行間隔が得られるとは限らないため、行間透かし情報を誤抽出してしまう場合もある。【解決手段】  文書画像における文字列情報として文字列の高さと行間隔値を取得し（Ｓ５０４）、文字列の高さと前記行間隔値のばらつきとして分散をそれぞれ算出する（Ｓ５０５）。そして、算出された分散の値が閾値以下であれば（Ｓ５０６）、当該文字列情報は行間透かしを抽出するのに適切であるとみなし、該文字列情報から行間透かし情報を抽出する（Ｓ５０７）。【選択図】  図５
2010103862.tif 000002
【特許請求の範囲】
【請求項１】
文書画像から、行間隔を利用して埋め込まれた行間透かし情報を抽出する文書処理装置であって、
文書画像を入力する入力手段と、
前記文書画像における文字列情報として、文字列の高さと行間隔値を取得する文字列情報取得手段と、
前記文字列の高さと前記行間隔値のばらつきをそれぞれ算出するばらつき算出手段と、
前記ばらつき算出手段で算出されたばらつきの値に応じて、前記文字列情報が行間透かし情報を抽出するのに適切であるか否かを判定する文字列情報判定手段と、
前記文字列情報判定手段で前記文字列情報が適切であると判定された場合に、該文字列情報から行間透かし情報を抽出する透かし情報抽出手段と、
を有することを特徴とする文書処理装置。
【請求項２】
前記文字列情報判定手段は、前記ばらつき算出手段で算出した文字列の高さのばらつき及び行間隔値のばらつきの値を、予め設定された閾値と比較することによって、当該文字列情報が適切であるか否かを判定することを特徴とする請求項１に記載の文書処理装置。
【請求項３】
前記文字列情報取得手段は、前記文字列情報判定手段において前記文字列情報が適切でないと判定された場合に、前記文書画像における次の文字列情報取得箇所の開始位置を設定することを特徴とする請求項１または２に記載の文書処理装置。
【請求項４】
前記文字列情報取得手段は、前記文書画像の複数箇所から前記文字列情報を取得し、
前記文字列情報判定手段は、前記ばらつき算出手段で算出された前記複数の文字列情報におけるばらつきの値に応じて、該複数の文字列情報から行間透かし情報を抽出するのに適切な文字列情報を選択する
ことを特徴とする請求項１乃至３のいずれか１項に記載の文書処理装置。
【請求項５】
前記文字列情報取得手段は、前記文書画像の副走査方向に対する複数の走査によって、複数箇所の前記文字列情報を取得することを特徴とする請求項４に記載の文書処理装置。
【請求項６】
前記文字列情報取得手段は、前記文書画像の副走査方向に対する走査を、予め定められた抽出単位幅に分割し、該抽出単位幅ごとに前記文字列情報を取得することを特徴とする請求項４に記載の文書処理装置。
【請求項７】
前記文字列情報判定手段は、前記文字列情報取得手段で取得された前記抽出単位幅ごとの前記文字列情報が適切であるか否かを判定して、適切であると判定された前記抽出単位幅の文字列情報同士を結合し、
前記透かし情報抽出手段は、前記文字列情報判定手段で結合された文字列情報から行間透かし情報を抽出する
ことを特徴とする請求項６に記載の文書処理装置。
【請求項８】
前記文字列情報取得手段は、予め定められた数の文字列の高さと行間隔値からなる範囲を前記抽出単位幅として、前記文字列情報を取得することを特徴とする請求項６または７に記載の文書処理装置。
【請求項９】
前記文字列情報取得手段は、前記文書画像を主走査方向へ縮小した画像から、前記文字列情報を取得することを特徴とする請求項１乃至８のいずれか１項に記載の文書処理装置。
【請求項１０】
前記文字列情報取得手段は、前記文書画像に対する文字列矩形画像を作成し、該文字列矩形画像に基づいて、文字列の高さおよび行間隔値を前記文字列情報として取得することを特徴とする請求項１乃至９のいずれか１項に記載の文書処理装置。
【請求項１１】
前記ばらつき算出手段は、ばらつきとして分散を算出することを特徴とする請求項１乃至１０のいずれか１項に記載の文書処理装置。
【請求項１２】
前記ばらつき算出手段は、ばらつきとして偏差もしくは標準偏差を算出することを特徴とする請求項１乃至１０のいずれか１項に記載の文書処理装置。
【請求項１３】
文書画像から、行間隔を利用して埋め込まれた行間透かし情報を抽出する文書処理方法であって、
文書画像を入力する入力ステップと、
前記文書画像における文字列情報として、文字列の高さと行間隔値を取得する文字列情報取得ステップと、
前記文字列の高さと前記行間隔値のばらつきをそれぞれ算出するばらつき算出ステップと、
前記ばらつき算出ステップにおいて算出されたばらつきの値に応じて、前記文字列情報が行間透かし情報を抽出するのに適切であるか否かを判定する文字列情報判定ステップと、
前記文字列情報判定ステップにおいて前記文字列情報が適切であると判定された場合に、該文字列情報から行間透かし情報を抽出する透かし情報抽出ステップと、
を有することを特徴とする文書処理方法。
【請求項１４】
コンピュータを請求項１乃至１２のいずれか１項に記載の文書処理装置における各手段として機能させるためのプログラム。
【請求項１５】
請求項１４に記載のプログラムを記憶したコンピュータ可読な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は文書処理装置および文書処理方法に関し、特に、文書画像に対して行間隔を利用して埋め込まれている透かし情報を抽出する文書処理装置および文書処理方法に関する。
【背景技術】
【０００２】
文書画像に著作権や複写制御等の情報を非可視な状態で持たせるため、行間隔を微小に変更して情報を埋め込む方法が知られている（例えば、非特許文献１参照）。以下、このように行間隔を利用して埋め込まれた情報を行間透かしと称する。
【０００３】
ここで図２を用いて、一般的な行間透かしの概念について説明する。文書画像から行間透かしとして埋め込まれた情報を抽出する場合には、まず当該文書画像内の文字列間の行間隔を求める必要がある。行間隔を求めるために、一般的には文書画像に対して黒画素連結矩形つまり文字列矩形を求め、当該文字列矩形から行間隔を導出する。そして、導出された行間隔と埋め込み時に使用した規則とに従って、情報を抽出する。ここで埋め込み時に使用した規則とは例えば図２に示すように、「０」／「１」の２値情報のうち「０」を埋め込みたい場合は、行間隔ＬＳ(i)，ＬＳ(i+1)に対し、ＬＳ(i)＞ＬＳ(i+1)となるよう設定する。一方、「１」を埋め込みたい場合には、行間隔ＬＳ(i)，ＬＳ(i+1)に対し、ＬＳ(i)＜ＬＳ(i+1)となるよう設定する。
【非特許文献１】「電子透かしの基礎 - マルチメディアのニュープロテクト技術 -」森北出版株式会社    松井甲子雄  著 p198-p199
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、一般的な文書画像には図３に示すように、ノイズや追記などが付加されることが多く、また、１行の文字数が少ない箇所も存在する。このような文書画像に対して、文字列矩形を求め、行間隔を取得した場合、取得箇所によって行間隔が大きく異なることがある。
【０００５】
ここで、図３に示す文書画像を例として、文字列矩形が取得箇所によって異なる様子を示す。図３に示す文書画像においては、行間透かしが埋め込まれている文字列群において、１行の文字数が少ない箇所があり、さらに、追記が付加されたりノイズが発生している例を示す。図４は、図３に示す文書画像に対して文字列矩形を求めたものである。なお、図４では行間隔と区別するため、文字列矩形内を黒く塗潰して表現している。図４に示す文書画像において、縦方向の矢印で示される走査Ａ，Ｂ，Ｃでは、取得される行間隔が走査箇所、すなわち取得箇所によって明らかに異なってくることが分かる。
【０００６】
図４に示す文字列矩形によれば、取得された行間隔の情報だけでは、対応する取得箇所がノイズや追記がある、または文字数が少ない箇所がある等、行間隔取得には不適当な箇所（以下、抽出不適箇所）であったのか否かを判断することは困難であった。また、これらの取得箇所から透かし情報を抽出した場合、行間隔が異なっているため透かし情報が誤って抽出される可能性があった。
【０００７】
本発明は上述した問題を解決するためになされたものであり、文書画像に埋め込まれた行間透かし情報を高精度に抽出可能とする文書処理装置および画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するための一手段として、本発明の文書処理装置は以下の構成を備える。
【０００９】
すなわち、文書画像から、行間隔を利用して埋め込まれた行間透かし情報を抽出する文書処理装置であって、文書画像を入力する入力手段と、前記文書画像における文字列情報として、文字列の高さと行間隔値を取得する文字列情報取得手段と、前記文字列の高さと前記行間隔値のばらつきをそれぞれ算出するばらつき算出手段と、前記ばらつき算出手段で算出されたばらつきの値に応じて、前記文字列情報が行間透かし情報を抽出するのに適切であるか否かを判定する文字列情報判定手段と、前記文字列情報判定手段で前記文字列情報が適切であると判定された場合に、該文字列情報から行間透かし情報を抽出する透かし情報抽出手段と、を有することを特徴とする。
【発明の効果】
【００１０】
上記構成からなる発明によれば、文書画像に埋め込まれた行間透かし情報を高精度に抽出することができる。
【発明を実施するための最良の形態】
【００１１】
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【００１２】
＜第１実施形態＞
本実施形態においては、文書画像に対し、行間隔を利用して埋め込まれた行間透かし情報を高精度に抽出することを特徴とする。図１は、本実施形態における文書処理装置の主要な機能構成を示すブロック図である。図１に示すように、本実施形態における文書処理装置１１は、画像入力部１０１、文字列情報取得部１０２、文字列情報判定部１０３、透かし情報抽出部１０４、制御部１０５、操作部１０６から構成され、各部は以下のような機能を有する。すなわち、画像入力部１０１は、行間透かしが埋め込まれた文書画像の電子データである画像データの読み取り、または生成を行う。文字列情報取得部１０２は、画像データから文字列矩形を導出し、行間隔と文字列の高さを含む文字列情報を取得する。文字列情報判定部１０３は、取得した文字列情報から行間隔と文字列の高さのばらつきを算出し、該文字列情報がノイズや追記がある、または文字数が少ない等の抽出不適箇所に相当するものであるか否かを判定する。透かし情報抽出部１０４は、文字列情報判定部１０３の判定結果に応じて、透かし情報を抽出する。また制御部１０５は、上述した各機能部が連係して動作するよう、統括的な制御を行い、操作部１０６は、ユーザからの指示を受け付ける。
【００１３】
以下、本実施形態における行間透かし情報の抽出処理について、図５のフローチャートを用いて説明する。なお、図５のフローチャートに示す処理は、例えばユーザによる操作部１０６を介した画像読取指示をトリガとして実行される。
【００１４】
まずステップＳ５０１において、文書処理装置１１に対して行間透かし入り画像が入力されると、画像入力部１０１が該行間透かし入り画像を読み取り、画像データＩとして文字列情報取得部１０２に供給する。
【００１５】
ここで、行間透かし入り画像とは、例えば図２を用いて上述したように行間隔ＬＳ(i)，ＬＳ(i+1)に対し、「０」／「１」の２値情報のうち「０」を埋め込みたい場合は、ＬＳ(i)＞ＬＳ(i+1)となるように、行間隔が制御されている。一方、「１」を埋め込みたい場合には、ＬＳ(i)＜ＬＳ(i+1)となるよう制御されている。
【００１６】
なお、行間透かし入り画像が紙原稿であるとすると、画像入力部１０１は電荷結合素子ＣＣＤまたは光学センサを有し、画像入力指示に応じて文書画像の撮影、電気信号処理、デジタル信号処理等を行って、画像データＩを生成する。また、文書処理装置１１内において画像データＩをＰＤＦ等のデータ形式で処理する場合は、画像入力部１０１はその形式に従う。
【００１７】
そしてステップＳ５０２において文字列情報取得部１０２が、画像データＩから矩形画像ＩＲを作成する。詳細には、画像データＩを上端部より順次走査して黒画素と白画素の境界部分を特定し、黒画素が存在する領域を黒画素で塗潰すことによって、矩形画像ＩＲが生成される。ここで、上述した図４は、図３に示した画像データＩから生成した矩形画像ＩＲの例を示したものであるが、図４によれば、ノイズや追記も文字列矩形として含まれていることが分かる。
【００１８】
なお、矩形画像ＩＲの作成方法はこの例に限らず、例えば、単位面積あたりの黒画素の濃度から文字列領域を特定し文字列矩形を生成する方法等、一般に文字認識技術において周知である文字領域分割技術を適用することができる。
【００１９】
次にステップＳ５０３において文字列情報取得部１０２は、矩形画像ＩＲに対して文字列情報取得箇所の開始位置Ｘを決定する。そしてステップＳ５０４で該開始位置Ｘに従って、矩形画像ＩＲから文字列情報ＬＩを取得し、該ＬＩを文字列情報判定部１０３へ供給する。
【００２０】
ここで文字列情報ＬＩとは、文字列矩形画像ＩＲにおける文字列の高さＬＴ（図４の黒画素部分に対応）と行間隔ＬＳ（図４の白画素部分に対応）が順次格納されているデータ配列である。この文字列情報ＬＩはすなわち、図４に示す走査Ａ，Ｂ，Ｃのように、開始位置Ｘ（図４のＸ1，Ｘ2，Ｘ3）から文字列方向と直交する方向への走査によって得られる。例えば図４に示す走査Ａによれば、ＬＴは84，75，85，86，86，85、ＬＳは2，3，70，71，81、として得られる。なお、ここでＬＴおよびＬＳの単位はピクセルである。
【００２１】
なお、矩形画像ＩＲに対して文字列情報を取得する箇所、つまり図４に示す走査Ａ，Ｂ，Ｃの主走査の座標となる開始位置Ｘの決定方法については特に限定されない。例えば、抽出時に予め定めた一定間隔毎に順次走査しても良いし、矩形画像ＩＲの右部、中央部、左部の３箇所を走査するものとしても良いし、またはランダムに選択した走査を行っても良い。
【００２２】
次にステップＳ５０５において文字列情報判定部１０３は、文字列情報取得部１０２より供給された文字列情報ＬＩから、文字列の高さＬＴと行間隔ＬＳのばらつきを別々に求める。
【００２３】
これは、本実施形態が以下の特性に着目してなされているためである。すなわち、文字数が少ない箇所がなく、かつ埋め込み時と同じ文字列と行間隔のみで構成された箇所から文字列情報を取得した場合には、文字列の高さＬＴ（図４の黒画素部分）と行間隔ＬＳ（図４の白画素部分）のばらつきが低くなる。一方、ノイズや追記がある、または文字数が少ない箇所がある等、行間透かし情報の誤抽出の要因となり得る抽出不適箇所から文字列情報を取得した場合には、文字列の高さＬＴと行間隔ＬＳのばらつきが大きくなる。
【００２４】
したがって本実施形態では、文字列情報を取得した走査が、ノイズや追記、文字数が少ない箇所等、行間透かし情報の誤認識の要因となり得る抽出不適箇所を含んでいるか否かを判断する。そして、抽出不適箇所を含まない走査によって、すなわち抽出対象箇所より得られた文字列情報から、行間透かし情報の抽出を行うことにより、行間透かし情報の抽出精度を向上させることが可能となる。
【００２５】
以下、本実施形態では、上記文字列の高さＬＴと行間隔ＬＳのばらつきを分散を用いて求める例を示すが、分散以外にも標準偏差を用いても良い。
【００２６】
例えば、ｎ個のデータｘi（i=1〜ｎ）があるとすると、その分散σ2は、それらデータの平均ｘaveを用いて以下のように表される。
【００２７】
【数１】
2010103862.tif 000003
【００２８】
ステップＳ５０５では上記式(1)を用いて、文字列の高さＬＴと行間隔ＬＳの分散を算出する。そしてステップＳ５０６において文字列情報判定部１０３は、ステップＳ５０５で算出した分散の結果に基づいて、抽出不適箇所であるか否かの判定を行う。この判定方法としては例えば、予め所定の閾値Ｔを設けておき、分散を該閾値Ｔと比較することによって行う。すなわち、分散の値が閾値Ｔ以上ならば抽出不適箇所であると判定し、閾値Ｔ以下ならば抽出不適箇所でない、すなわち抽出対象箇所であると判定する。なお、閾値Ｔの値としては、予め指定した固定値であっても良いし、透かし情報埋め込み時に抽出不適箇所から分散を算出しておき、該算出結果を閾値Ｔとして抽出側で利用しても良い。
【００２９】
ここで、文字列情報判定部１０３における分散の算出および該分散による抽出不適箇所の判定処理（ステップＳ５０５，Ｓ５０６）について、具体例を示して説明する。
【００３０】
例えば文字列情報取得部１０２において図４に示すように、走査Ａ（開始位置Ｘ1）における文字列情報ＬＩとして、文字列の高さＬＴおよび行間隔ＬＳが以下のように得られたとする。なお、ＬＴ，ＬＳの単位はピクセルである。
【００３１】
ＬＴ(1)=84，ＬＴ(2)=75，ＬＴ(3)=85，ＬＴ(4)=86，ＬＴ(5)=86，ＬＴ(6)=85
ＬＳ(1)=2，ＬＳ(2)=3，ＬＳ(3)=70，ＬＳ(4)=71，ＬＳ(5)=81
この場合、式(1)から、文字列の高さＬＴの分散は14.9、行間隔ＬＳの分散は1241.8として算出される。ここで閾値Ｔ＝30とすると、ＬＴの分散はＴよりも小さいが行間隔ＬＳの分散がＴより大きいため、走査Ａは抽出不適箇所を走査したものと判断する。そして、該判定結果を文字列情報取得部１０２へ送信する。図４によれば、走査Ａには追記の箇所が含まれていることが分かる。
【００３２】
すると文字列情報取得部１０２は、文字列情報判定部１０３からの判定結果を受信すると、新たに走査開始位置を決定し、該開始位置から文字列情報ＬＩを取得して文字列情報判定部１０３へ供給する。
【００３３】
次に、図４における走査Ｂ（開始位置Ｘ2）の文字列情報ＬＩとして、文字列の高さＬＴおよび行間隔ＬＳが以下のように得られたとする。
【００３４】
ＬＴ(1)＝84，ＬＴ(2)＝30，ＬＴ(3)＝85，ＬＴ(4)＝86，ＬＴ(5)＝85，
ＬＳ(1)＝40，ＬＳ(2)＝10，ＬＳ(3)＝227，ＬＳ(4)＝81
すると式(1)から、文字列の高さＬＴの分散は484.4、行間隔ＬＳの分散は6937.3として算出される。すると閾値Ｔ＝30であるから、ＬＴ，ＬＳはいずれもＴより大きいため、走査Ａの場合と同様に、走査Ｂは抽出不適箇所を走査したものと判断され、該判定結果が文字列情報取得部１０２へ送信される。図４によれば、走査Ｂには文字数が少ない箇所が含まれていることが分かる。
【００３５】
そして同様に、図４における走査Ｃ（開始位置Ｘ3）の文字列情報ＬＩとして、文字列の高さＬＴおよび行間隔ＬＳが以下のように得られたとする。
【００３６】
ＬＴ(1)＝84，ＬＴ(2)＝85，ＬＴ(3)＝86，ＬＴ(4)＝86，ＬＴ(5)＝85，
ＬＳ(1)＝80，ＬＳ(2)＝70，ＬＳ(3)＝71，ＬＳ(4)＝81
すると式(1)から、文字列の高さＬＴの分散は0.6、行間隔ＬＳの分散は25.3として算出される。すると閾値Ｔ＝30であるから、ＬＴ，ＬＳはいずれもＴより小さいため、走査Ｃは抽出不適箇所を含まない、すなわち抽出対象箇所であると判断され、文字列情報ＬＩが透かし情報抽出部１０４へ供給される。
【００３７】
以上のように、ステップＳ５０６でばらつきが大きい、すなわち抽出不適箇所である場合はステップＳ５０３に戻って新たな開始位置による走査を行うが、ばらつきが小さい、すなわち抽出対象箇所である場合にはステップＳ５０７に進む。
【００３８】
ステップＳ５０７では透かし情報抽出部１０４が、文字列情報判定部１０３より供給された文字列情報ＬＩの行間隔ＬＳを用いて、埋め込まれている行間透かし情報を抽出する。
【００３９】
なお、ステップＳ５０７における行間透かし情報の抽出は、埋め込み時に使用した規則を用いて行う。例えば上述したように、行間隔をＬＳ(i)，ＬＳ(i+1)  （但し、i=1，3，5，・・・，N-1）とし、２値情報の「０」がＬＳ(i)＞ＬＳ(i+1)、「１」がＬＳ(i)＜ＬＳ(i+1)となるように、行間隔を制御して埋め込むとする。このとき、行間隔ＬＳ(i)，ＬＳ(i+1)がそれぞれ以下のような値であったとする。
【００４０】
ＬＳ(1)＝80，ＬＳ(2)＝70，ＬＳ(3)＝71，ＬＳ(4)＝81
この場合、抽出される行間透かし情報は以下のようになる。
【００４１】
ＬＳ(1)＞ＬＳ(2)なので「０」，ＬＳ(3)＜ＬＳ(4)なので「１」
以上説明したように本実施形態によれば、文書画像内の文字矩形列における文字高さＬＴおよび行間隔ＬＳのばらつき（分散）に基づいて、行間透かしを抽出するのに適切な走査位置を判定するため、行間透かしの誤抽出が回避され、高精度な抽出が可能となる。
【００４２】
なお本実施形態においては、１つの走査線上の文字列情報ＬＩに対してばらつきを算出し、行間透かし情報の誤抽出を引き起こす要因を持つ抽出不適箇所であるか否かの判定を行う例を示したが、本発明の判定方法はこれに限定されない。例えば、複数の走査線上の文字列情報ＬＩを同時に取得して、該複数の走査線に対する判定処理を同時に行っても良い。また、１つの走査線上の文字列情報ＬＩを、透かし情報抽出に最低限必要な範囲ごとに分割し、範囲ごとの判定を行っても良い。
【００４３】
また本実施形態では図４に示すように、文書画像における文字矩形列を黒画素、行間隔を白画素として説明したが、本発明はこれに限定されない。例えば、文書画像がネガポジ反転した場合や、黒・白画素以外の有色画素で構成されている場合においても、本発明は適用可能である。
【００４４】
また本実施形態では、図２に示すような、２つの行間隔の大小関係によって透かし情報が埋め込まれた文書画像を処理対象として説明した。しかしながら本発明において処理対象となりうる文書画像における行間透かしは、他の方法によって埋め込まれていても良い。例えば、最初の行間隔を基準行間隔として、この基準行間隔との他の行間隔との差分によって順次情報を埋め込む等、行間隔を操作して透かし情報を埋め込む方法であれば本発明は適用可能である。
【００４５】
また本実施形態では、説明を簡単化するために図３に示すような文字のみで構成された文書画像を処理対象として説明したが、本発明は、例えば図や表、グラフ等が含まれた文書画像に対しても有効である。
【００４６】
＜第２実施形態＞
以下、本発明に係る第２実施形態について説明する。
【００４７】
上述した第１実施形態では、文書の副走査方向に１箇所を走査した文字列情報に対して分散を算出し、該走査箇所が抽出不適箇所であるか否かを判定する例を示した。しかしながらこのような判定を行うと、走査内に１箇所でも抽出不適箇所があった場合には、透かし情報が抽出できないことになってしまう。そこで第２実施形態では、文書の副走査方向に複数箇所を走査するものとし、さらに各走査を所定単位に分割して、該分割された走査範囲（以下、抽出単位幅）ごとに文字列情報を取得する。すなわち、分散を算出する範囲を小さくして、抽出不適箇所を含まない抽出対象箇所を特定し、該抽出対象箇所の文字列情報同士を結合していくことによって、行間透かし情報を正確に抽出する。
【００４８】
なお、第２実施形態における文書処理装置の構成は、上述した第１実施形態で示した図１と同様であるが、文字列情報取得部１０２と文字列情報判定部１０３の動作が異なる。したがって、以下では第２実施形態の文字列情報取得部１０２と文字列情報判定部１０３における特徴的な動作のみを説明し、その他の構成における処理については説明を省略する。
【００４９】
以下、第２実施形態においては、１つの走査から、文字列の高さＬＴを３つと、行間隔ＬＳの２つからなる範囲を、上記抽出単位幅として抽出するものとする。また、少なくとも２箇所の走査を行うものとし、各走査においてそれぞれ、上記抽出単位幅を取得する。
【００５０】
なお、第２実施形態において抽出単位幅を構成する文字列情報の数は、該抽出単位幅のサイズに依存する。例えば、透かし情報が図２に示すように２組の行間隔の大小関係によって埋め込まれている場合、抽出単位幅は上述したように、文字列の高さＬＴが３つと行間隔ＬＳが２つとなる。しかしながら本発明はこの例に限定されず、例えば抽出単位幅の倍数からなる範囲を単位として、抽出不適箇所の検出処理を行うことも可能である。
【００５１】
ここで図６に、第２実施形態における文字列情報取得の概念を示す。図６は、上述した第１実施形態における図４と同様に、ある文書画像における文字列矩形の例を示し、文字列矩形を黒画素で、行間隔を白画素で表現した例を示しており、該文字矩形画像に対して開始位置Ｘ1，Ｘ3による２つの走査を行うとする。すなわち、開始位置Ｘ1には走査Ａと走査Ｃが対応し、開始位置Ｘ3には走査Ｂと走査Ｄが対応する。これら各走査Ａ，Ｂ，Ｃ，Ｄは第２実施形態における抽出単位幅に相当し、その副走査方向の長さが異なるものの、それぞれは３つのＬＴと２つのＬＳによって構成されている。
【００５２】
図６に示す例によれば文字列情報取得部１０２においてまず第１の抽出単位幅として、走査Ａと走査Ｂによって、文字列情報ＬＩとして、文字列の高さＬＴおよび行間隔ＬＳが以下のように得られる。なお、ＬＴ，ＬＳの単位はピクセルである。
【００５３】
走査Ａ：ＬＴ(1)=84，ＬＴ(2)=85，ＬＴ(3)=86
ＬＳ(1)=80，ＬＳ(2)=70，
走査Ｂ：ＬＴ(1)=84，ＬＴ(2)=50，ＬＴ(3)=85
ＬＳ(1)=17，ＬＳ(2)=13
すると文字列情報判定部１０３では第１実施形態と同様に、各走査に対して式(1)より分散を算出して、抽出不適箇所であるか否かの判定を行う。この場合、走査Ａに対するＬＴ，ＬＳの分散はそれぞれ0.7，25.0、走査Ｂに対するＬＴ，ＬＳの分散はそれぞれ264.7，4.0として算出される。ここで閾値Ｔ＝30とすると、走査Ａは抽出不適箇所を含まない走査であり、また走査Ｂは抽出不適箇所（図中網掛け領域）を含む走査であると判断される。すると文字列情報判定部１０３は、該判定結果と、走査ＡにおけるＬＴとＬＳの値の総計ＳＵＭを、文字列情報取得部１０２へ送信する。なお、ＳＵＭは次の抽出単位幅の捜査開始位置設定に利用される値であるため、現在の抽出単位幅における最終のＬＴ（走査ＡであればＬＴ(3)）については総計対象から除外する。すなわち図６によれば、走査ＡにおけるＳＵＭは、ＬＴ(1)=84，ＬＴ(2)=85，ＬＳ(1)=80，ＬＳ(2)=70の合計値として求められ、ＳＵＭ＝319となる。
【００５４】
次に文字列情報取得部１０２は、文字列情報判定部１０３から判定結果とＳＵＭを受信すると、第２の抽出単位幅として次の走査開始位置を設定する。図６の例では、主走査方向がＸ1とＸ3で、かつ副走査方向がＳＵＭ（319）以降の位置、すなわち走査Ｃ，Ｄの開始位置に設定する。そして、走査Ｃ，Ｄによって文字列情報ＬＩを取得し、これを文字列情報判定部１０３へ供給する。なお、主走査方向における開始位置としては前回の走査と同様のＸ1，Ｘ3に限らず、例えば図６に示すＸ2，Ｘ4のように、開始位置を変更しても良い。
【００５５】
文字列情報判定部１０３は走査Ｃ，Ｄについても走査Ａ，Ｂと同様に、取得した文字列情報ＬＩに基づき、各走査が抽出不適箇所を含んでいるか否かを判定する。
【００５６】
図６に示す例によれば、主走査開始位置がＸ1，Ｘ3、総計ＳＵＭ＝319であるから、各走査による文字列情報ＬＩとして、ＬＴおよびＬＳが以下のように得られる。
【００５７】
走査Ｃ：ＬＴ(1)=86，ＬＴ(2)=50，ＬＴ(3)=86
ＬＳ(1)=15，ＬＳ(2)=5
走査Ｄ：ＬＴ(1)＝86，ＬＴ(2)＝86，ＬＴ(3)＝85
ＬＳ(1)＝70，ＬＳ(2)＝80
この場合、式(1)より、走査Ｃに対するＬＴ，ＬＳの分散はそれぞれ288.0，25、走査Ｄに対するＬＴ，ＬＳの分散はそれぞれ0.2，25として算出される。すると閾値Ｔ=30であるから、走査Ｃは抽出不適箇所（図中網掛け領域）を含む走査であり、走査Ｄは抽出不適箇所を含まない走査であると判断される。
【００５８】
図６に示す例では、以上の第１の抽出単位幅に対応する走査Ａ，Ｂ、および第２の抽出単位幅に対応する走査Ｃ，Ｄによって、全ての走査が終了したものとする。すると文字列情報判定部１０３は次に、分散が閾値よりも小さい走査、つまり抽出対象箇所の走査によって得られた文字列情報を結合する。この場合、走査Ａと走査Ｄが該当するため、これらの文字列情報ＬＩの結合結果は以下のようになる。
【００５９】
ＬＴ(1)＝84，ＬＴ(2)＝85，ＬＴ(3)＝86，ＬＴ(4)＝86，ＬＴ(5)＝85
ＬＳ(1)＝80，ＬＳ(2)＝70，ＬＳ(3)＝70，ＬＳ(4)＝80
以上のように結合された文字列情報ＬＩは、透かし情報抽出部１０４へ供給され、以降は上述した第１実施形態と同様に、行間透かし情報が抽出される。
【００６０】
なお第２実施形態では、ある抽出単位幅において分散が閾値よりも小さくなるような走査が無かった場合、すなわち全ての走査が抽出不適箇所を含んでいると判定された場合には、該抽出単位幅において走査開始位置の変更や走査箇所を増やす等の対策を行う。それでも当該抽出単位幅において抽出対象箇所が検出されない場合には、その抽出単位幅からの透かし情報抽出は不可能であると判断する。その場合、予め定められた値をＳＵＭに設定して、該ＳＵＭ以降の新たな抽出単位幅について、抽出不適箇所の有無を検証していく。
【００６１】
一方、ある抽出単位幅において分散が閾値よりも小さくなるような走査が複数あった場合には、その何れか１つを選択すれば良い。例えば、分散値が最も小さい走査を選択する等が考えられる。
【００６２】
以上説明した様に第２実施形態によれば、文書において分散を算出する範囲を、抽出単位幅として分割して設定する。これにより、抽出単位幅ごとに抽出対象箇所を特定してこれらを結合することができるため、行間透かし情報を第１実施形態よりもさらに正確に抽出することが可能となる。
【００６３】
＜第３実施形態＞
以下、本発明に係る第３実施形態について説明する。
【００６４】
上述した第１および第２実施形態では、矩形画像ＩＲを作成する際に、画像データＩを上端部より順次走査していき、黒画素と白画素の境界部分を特定することによって文字列矩形を生成していた。しかしながらこの方法では画像データＩに対して全走査を行う必要があるため、処理時間がかかってしまう。例えば、画像データＩに埋め込まれている情報が複写制御情報である場合、複写機内で全走査を行って該情報を抽出し、該抽出した情報から複写可能か否かの判断を行い、その後、複写処理を行うため、一枚の文書の複写処理にかなりの時間を要してしまう。
【００６５】
そこで第３実施形態においては、矩形画像ＩＲの作成時間を短縮するために、画像データＩを主走査方向に縮小することによって、１行を１オブジェクトとした矩形画像ＩＲを生成することを特徴とする。
【００６６】
なお、第３実施形態における文書処理装置の構成は、上述した第１実施形態で示した図１と同様であるが、文字列情報取得部１０２の動作が異なる。したがって、以下では第３実施形態の文字列情報取得部１０２における特徴的な動作のみを説明し、その他の構成における処理については説明を省略する。
【００６７】
文字列情報取得部１０２は、画像入力部１０１より供給された画像データＩを水平方向と垂直方向へ縮小し、水平方向の縮小データである縮小画像データＩshと、垂直方向の縮小データである縮小画像データＩsvを生成する。ここで図７に、図３に示した画像データＩを水平または垂直方向へ縮小した画像縮小データＩsh，Ｉsvの例を示す。
【００６８】
なお、画像データＩの縮小を水平・垂直方向ともに行う理由としては、例えば９０度傾きのある画像等、画像データＩの入力方向が不定であるため、すなわち主走査方向が不定であって行間隔がどの方向に存在するかが分からないためである。もちろん、画像データＩの入力方向が特定できるのであれば、水平方向または垂直方向のいずれか１方向のみの縮小を行うようにしても良い。
【００６９】
図７に示す例では、水平方向へ縮小されたＩshが有効である。すなわち第３実施形態では画像データＩを縮小することにより、図７に示すＩshのように、１行が縮小されて１つのオブジェクトとして得られ、すなわち行単位に１つの文字列矩形として認識できるため、行間透かしの抽出を高速に行うことが可能となる。なお、第３実施形態における画像データＩの縮小は、文字列矩形が認識できる程度に行うものとする。
【００７０】
なお、図７に示すＩshとＩsvのいずれの縮小画像データを有効とすべきか、すなわちどちらの縮小画像データに対して透かし情報の抽出を行うかは、例えば両方に対して一旦テスト走査を行って、行間隔値等が得られる方を選択することができる。
【００７１】
ここで、縮小方法として例えば、画像データＩのある点の画素値を、周囲の４つの格子点の画素値から算出して縮小するバイリニア法を適用した場合、その縮小画像には図８に示すように、白画素でも黒画素でもない中間調部分（図中グレーで表現）が生じる。このような場合、当該部分を黒画素に変換する。なお、第３実施形態における縮小方法はバイリニア法に限らず、ニアレストレイバー、バイキュービック等、種々の縮小方法が適用可能である。
【００７２】
第３実施形態では、以上のように生成された画像縮小データＩshまたはＩsvから、文字列情報ＬＩを取得する。なお、文字列情報ＬＩの取得方法については上述した第１および第２実施形態と同様であるため、説明を省略する。
【００７３】
なお、画像データＩの縮小により生成された矩形画像ＩＲ（この場合Ｉsh）においては、図９に示すように、行間隔が微小に異なっている箇所が存在する。そのため、より抽出精度を向上させるためには、文字列情報の取得を複数走査によって行えば良い。そして、複数の走査において適切な文字列情報が取得できた場合には、走査ごとに行間透かし情報を抽出して多数決を行って、最も多く抽出された行間透かし情報を検出するようにしても良い。
【００７４】
以上説明した様に第３実施形態によれば、画像データＩを縮小して矩形画像ＩＲを生成することによって、行間透かし情報の抽出にかかる時間を短縮することができる。
【００７５】
＜第４実施形態＞
以下、本発明に係る第４実施形態について説明する。第４実施形態においては、上述した第１乃至第３実施形態に係る処理を、コンピュータシステムにおいて行なうことを特徴とする。
【００７６】
図１０は、第４実施形態におけるコンピュータシステムの基本構成を示すブロック図である。このコンピュータシステムにおいて、上述した各実施形態における全ての機能を実行させるには、各機能構成をプログラムにより表現し、このコンピュータシステムに読み込ませることになる。
【００７７】
図１０において、１００１はＣＰＵであり、ＲＡＭ１００２やＲＯＭ１００３に格納されているプログラムやデータを用いて、システム全体の制御を行うと共に、上述した各実施形態で説明した各処理を行なう。１００２はＲＡＭであり、外部記憶装置１００８からロードされたプログラムやデータ、他のコンピュータシステム１０１４からＩ／Ｆ（インターフェース）１０１５を介してダウンロードしたプログラムやデータを一時的に記憶するエリアを備える。ＲＡＭ１００２はまた、ＣＰＵ１００１が各種の処理を行なうために必要とする作業用エリアを備える。１００３はＲＯＭであり、コンピュータシステムにおける機能プログラムや設定データ等を記憶する。
【００７８】
１００４はディスプレイ制御装置であり、画像や文字等をディスプレイ１００５に表示させるための制御を行なう。１００５はディスプレイであり、画像や文字などを表示する。なお、ディスプレイ１００５としてはＣＲＴや液晶画面などが適用可能である。１００６は操作入力デバイスであり、キーボードやマウス等、ＣＰＵ１００１に各種のユーザ指示を入力可能なデバイスにより構成される。１００７は、操作入力デバイス１００６を介して入力された各種の指示等を、ＣＰＵ１００１に通知するためのＩ／Ｏである。１００８は、ハードディスク等の大容量情報記憶装置として機能する外部記憶装置であり、ＯＳ（オペレーティングシステム）や上記各実施形態に係る処理をＣＰＵ１００１に実行させるためのプログラム、入出力原稿画像、等を記憶する。外部記憶装置１００８への情報の書き込みや、外部記憶装置１００８からの情報の読み出しは、Ｉ／Ｏ１００９を介して行われる。
【００７９】
１０１０は文書や画像を印刷出力するためのプリンタであり、出力データはＩ／Ｏ１０１１を介してＲＡＭ１００２、もしくは外部記憶装置１００８から送られる。なお、プリンタ１０１０としては、例えばインクジェットプリンタ、レーザビームプリンタ、熱転写型プリンタ、ドットインパクトプリンタなどが挙げられる。１０１２は文書や画像を読み取るためのスキャナであり、入力データはＩ／Ｏ１０１３を介してＲＡＭ１００２、もしくは外部記憶装置１００８に送られる。そして１０１６は、ＣＰＵ１００１、ＲＯＭ１００３、ＲＡＭ１００２、Ｉ／Ｏ１０１１、Ｉ／Ｏ１００９、ディスプレイ制御装置１００４、Ｉ／Ｆ１０１５、Ｉ／Ｏ１００７、Ｉ／Ｏ１０１３を繋ぐバスである。
【００８０】
以上説明したように第４実施形態によれば、上述した第１乃至第３実施形態で示した行間透かし情報の検出処理を、コンピュータシステムにおいて実現することが可能となる。  なお第４実施形態では、上記第１乃至第３実施形態の機能を実現するためのプログラムを用意し、これをＣＰＵ１００１の制御の下に実行する例を示したが、その一部を専用のハードウェア回路等によって実現するようにしても良い。この専用ハードウェア回路としては、スキャナ１０１２やプリンタ１０１０等の外部装置内に備えられたものを適用することも可能である。
【００８１】
なお、上記各実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【００８２】
＜他の実施形態＞
本発明は例えば、システム、装置、方法、プログラム若しくは記憶媒体(記録媒体)等としての実施態様をとることが可能である。具体的には、複数の機器（例えば、ホストコンピュータ、インタフェース機器、スキャナ、webアプリケーション等）から構成されるシステムに適用しても良いし、また、１つの機器からなる装置に適用しても良い。
【００８３】
本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される。なお、この場合のプログラムとは、実施形態において図に示したフローチャートに対応したコンピュータ可読のプログラムである。
【００８４】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【００８５】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
【００８６】
プログラムを供給するための記録媒体としては、以下に示す媒体がある。例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD-ROM、CD-R、CD-RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD-ROM，DVD-R)などである。
【００８７】
プログラムの供給方法としては、以下に示す方法も可能である。すなわち、クライアントコンピュータのブラウザからインターネットのホームページに接続し、そこから本発明のコンピュータプログラムそのもの(又は圧縮され自動インストール機能を含むファイル)をハードディスク等の記録媒体にダウンロードする。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
【００８８】
また、本発明のプログラムを暗号化してCD-ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせることも可能である。すなわち該ユーザは、その鍵情報を使用することによって暗号化されたプログラムを実行し、コンピュータにインストールさせることができる。
【００８９】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。さらに、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【００９０】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、実行されることによっても、前述した実施形態の機能が実現される。すなわち、該プログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行うことが可能である。
【図面の簡単な説明】
【００９１】
【図１】本発明に係る第１実施形態における文書処理装置の主要な機能構成を示すブロック図である。
【図２】行間透かし情報が埋め込まれた文書原稿例を示す図である。
【図３】本実施形態における処理対象となる文書の画像データＩを例示する図である。
【図４】画像データＩに対する矩形画像ＩＲを例示する図である。
【図５】本実施形態における本実施形態における行間透かし情報の抽出処理を示すフローチャートである。
【図６】第２実施形態における文字列情報取得の概念を示す図である。
【図７】第３実施形態において画像データを水平および垂直方向に縮小した縮小画像データ例を示す図である。
【図８】第３実施形態において中間調として算出された画素を黒画素へ変換する例を示す図である。
【図９】第３実施形態における縮小画像データの走査概念を示す図である。
【図１０】第４実施形態におけるコンピュータシステムの基本構成を示すブロック図である。
【図１】
2010103862.tif 000004
【図２】
2010103862.tif 000005
【図３】
2010103862.tif 000006
【図４】
2010103862.tif 000007
【図５】
2010103862.tif 000008
【図６】
2010103862.tif 000009
【図７】
2010103862.tif 000010
【図８】
2010103862.tif 000011
【図９】
2010103862.tif 000012
【図１０】
2010103862.tif 000013