(57)【要約】【課題】本や書類、葉書等の文書を複写する時に、所望の文書が正しくセットされているか否かを検出する。【解決手段】画像読取装置にセットされた、規定の位置に情報が付加された文書のうち、画像読取装置の読取範囲内の部分を画像読取装置が読み取ることで得られる文書画像を取得する。文書画像中の規定の位置における情報を抽出する。文書画像中において、文書に記された情報が欠損しているか否かを、抽出手段が抽出した情報に基づいて判断する。欠損があると判断した場合には、文書画像を印刷装置に出力せず、欠損がないと判断した場合には、文書画像を印刷装置に出力する。【選択図】  図４
2010171736.tif 000002
【特許請求の範囲】
【請求項１】
印刷装置と接続された画像処理装置であって、
画像読取装置にセットされた、規定の位置に情報が付加された文書のうち、当該画像読取装置の読取範囲内の部分を当該画像読取装置が読み取ることで得られる文書画像を取得する手段と、
前記文書画像中の規定の位置における情報を抽出する抽出手段と、
前記文書画像中において、前記文書に記された情報が欠損しているか否かを、前記抽出手段が抽出した情報に基づいて判断する判断手段と、
前記判断手段が欠損があると判断した場合には、前記文書画像を前記印刷装置に出力せず、前記判断手段が欠損がないと判断した場合には、前記文書画像を前記印刷装置に出力する出力手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記文書には、前記文書を構成するオブジェクト領域内で前記文書の４隅のそれぞれに最も近い部分に、埋め込み情報が埋め込まれており、
前記抽出手段は、前記文書画像から検出したオブジェクト領域内で前記文書画像の４隅のそれぞれに最も近い部分から情報を抽出し、
前記判断手段は、前記文書画像の４隅のそれぞれに最も近い部分について、前記抽出手段による情報の抽出が成功したか否かを判断し、
前記出力手段は、前記判断手段が失敗したと判断した場合には、前記文書画像を印刷装置に出力せず、前記判断手段が成功したと判断した場合には、前記文書画像を印刷装置に出力する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記文書の４隅のそれぞれに最も近い文字を一端とする文字列に対して前記埋め込み情報が埋め込まれており、
前記抽出手段は、前記文書画像の４隅のそれぞれに最も近い文字を一端とする文字列から前記情報を抽出する
ことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記文書を構成するオブジェクト領域内で前記文書の４隅の１つに最も近い部分が文字オブジェクトに属する場合には、当該４隅の１つに最も近い文字を一端とする文字列に対して前記埋め込み情報が埋め込まれており、前記文書を構成するオブジェクト領域内で前記文書の４隅の１つに最も近い部分が画像オブジェクトに属する場合には、当該画像オブジェクト内で当該４隅の１つに最も近い画素を一端とする画素群に対して前記埋め込み情報が埋め込まれており、
前記抽出手段は、前記文書画像から検出したオブジェクト領域内で前記文書画像の４隅の１つに最も近い部分が文字オブジェクトに属する場合には、当該４隅の１つに最も近い文字を一端とする文字列から前記情報を抽出し、前記文書画像から検出したオブジェクト領域内で前記文書画像の４隅の１つに最も近い部分が画像オブジェクトに属する場合には、当該画像オブジェクト内で当該４隅の１つに最も近い画素を一端とする画素群から前記情報を抽出する
ことを特徴とする請求項２に記載の画像処理装置。
【請求項５】
前記文字列に対する埋め込み情報は、文字列の文字間隔の大小を変化させることにより埋め込まれており、
前記抽出手段は、文字列の文字間隔の大小を判別することにより、当該文字列から前記情報を抽出することを特徴とする、請求項３又は４に記載の画像処理装置。
【請求項６】
前記文書には、当該文書の４隅の１つに最も近い文字が属する文字列に埋め込み可能な情報量に応じた埋め込み方法により、当該４隅の１つに最も近い文字を一端とする文字列に対して前記埋め込み情報が埋め込まれており、
前記抽出手段は、前記埋め込み情報の情報量と、前記４隅の１つに最も近い文字が属する文字列に埋め込み可能な情報量とを比較して、抽出方法を選択することを特徴とする、請求項３又は４に記載の画像処理装置。
【請求項７】
前記埋め込み方法は、文字列の文字間隔を操作する方法と、文字にパターンを重畳する方法の何れかであり、
前記抽出方法は、文字列の文字間隔の大小を判別する方法と、文字からパターンを読み取る方法の何れかであることを特徴とする、請求項６に記載の画像処理装置。
【請求項８】
前記判断手段は、前記抽出手段が抽出した情報と、前記埋め込み情報とを比較し、一致した場合に情報の抽出が成功したと判断することを特徴とする、請求項３乃至７の何れか１項に記載の画像処理装置。
【請求項９】
前記埋め込み情報は、当該埋め込み情報の埋め込み位置に関係なく同じであることを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
前記埋め込み情報は、当該埋め込み情報の埋め込み位置を示す情報であることを特徴とする請求項８に記載の画像処理装置。
【請求項１１】
前記埋め込み情報は、当該埋め込み情報の埋め込み位置が属するオブジェクトの一角の座標値であり、
前記判断手段は、情報を抽出する位置の座標と、当該情報を抽出する位置から前記抽出手段が抽出した情報とを比較し、差分が閾値以内である場合に情報の抽出が成功したと判断することを特徴とする請求項３乃至５の何れか１項に記載の画像処理装置。
【請求項１２】
前記文書には、前記文書の４隅のそれぞれについて、４隅の１つから所定の距離内にある画素を含むオブジェクトに対して、当該４隅の１つから最も近い部分に埋め込み情報が埋め込まれており、
前記抽出手段は、前記文書画像の４隅のそれぞれについて、４隅の１つから所定の距離内にある画素を含むオブジェクトの、当該４隅の１つから最も近い部分から情報を抽出し、
前記判断手段は、前記文書画像のそれぞれの部分について、前記抽出手段による情報の抽出が成功したか否かを判断し、
前記出力手段は、前記判断手段が失敗したと判断した場合には、前記文書画像を印刷装置に出力せず、前記判断手段が成功したと判断した場合には、前記文書画像を印刷装置に出力する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項１３】
前記埋め込み情報は、埋め込み情報の埋め込み位置の数であることを特徴とする、請求項１２に記載の画像処理装置。
【請求項１４】
前記文書中の１以上の文字列に対して、前記文書に記されている文字に係る情報が埋め込まれており、
前記文書画像から、当該文書画像中の文字に係る情報を取得する手段をさらに備え、
前記抽出手段は、前記文書画像から前記埋め込まれている情報を抽出し、
前記判断手段は、前記抽出手段が抽出した情報が、前記文書画像中の文字に係る情報と合致するか否かを判断し、
前記出力手段は、前記判断手段が合致しないと判断した場合には、前記文書画像を印刷装置に出力せず、前記判断手段が合致したと判断した場合には、前記文書画像を印刷装置に出力する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項１５】
前記文書には、前記文書の４隅のそれぞれから、それぞれの所定の方向に所定の距離離れた部分に、マークが埋め込まれており、
前記抽出手段は、前記文書画像の４隅のそれぞれから、それぞれの所定の方向に所定の距離離れた部分に埋め込まれているマークを発見した場合には抽出し、
前記判断手段は、前記抽出手段がマークを抽出できたかどうかを調べ、また前記抽出手段が抽出したマークと埋め込んだマークとが一致するかどうかを調べることで、前記文書画像の４つのマークが正しく抽出されたか否かを判断する
ことを特徴とする、請求項１に記載の画像処理装置。
【請求項１６】
前記判断手段は、前記判断をユーザに通知することを特徴とする、請求項１乃至１５の何れか１項に記載の画像処理装置。
【請求項１７】
セットされた紙文書を排紙可能であるとともに、排紙する際に当該紙文書上に画像を形成してから排紙可能な画像処理装置であって、
規定の位置に情報が付加された紙文書を文書画像として読み取る読み取り手段と、
前記文書画像中の前記規定の位置における情報を抽出する抽出手段と、
前記文書画像中における、前記紙文書上に記された情報の欠損の有無を、前記抽出手段が抽出した情報に基づいて判断する判断手段と、
前記紙文書上に画像形成する為の出力文書を取得する手段と、
前記判断手段が欠損があると判断した場合には、前記出力文書を前記紙文書上に画像形成させることなく、前記紙文書を排紙し、前記判断手段が欠損がないと判断した場合には、前記出力文書を前記紙文書上に画像形成してから排紙する排紙制御手段と
を備えることを特徴とする画像処理装置。
【請求項１８】
印刷装置と接続された画像処理装置が行う方法であって、
画像読取装置にセットされた、規定の位置に情報が付加された文書のうち、当該画像読取装置の読取範囲内の部分を当該画像読取装置が読み取ることで得られる文書画像を取得する工程と、
前記文書画像中の規定の位置における情報を抽出する抽出工程と、
前記文書画像中において、前記文書に記された情報が欠損しているか否かを、前記抽出工程で抽出した情報に基づいて判断する判断工程と、
前記判断工程で欠損があると判断した場合には、前記文書画像を前記印刷装置に出力せず、前記判断工程で欠損がないと判断した場合には、前記文書画像を前記印刷装置に出力する出力工程と
を備えることを特徴とする画像処理方法。
【請求項１９】
セットされた紙文書を排紙可能であるとともに、排紙する際に当該紙文書上に画像を形成してから排紙可能な画像処理装置が行う方法であって、
規定の位置に情報が付加された紙文書を文書画像として読み取る読み取り工程と、
前記文書画像中の前記規定の位置における情報を抽出する抽出工程と、
前記文書画像中における、前記紙文書上に記された情報の欠損の有無を、前記抽出工程で抽出した情報に基づいて判断する判断工程と、
前記紙文書上に画像形成する為の出力文書を取得する工程と、
前記判断工程で欠損があると判断した場合には、前記出力文書を前記紙文書上に画像形成させることなく、前記紙文書を排紙し、前記判断工程で欠損がないと判断した場合には、前記出力文書を前記紙文書上に画像形成してから排紙する排紙制御工程と
を備えることを特徴とする画像処理方法。
【請求項２０】
コンピュータを、請求項１乃至１７の何れか１項に記載の画像処理装置が有する各手段として機能させるための、コンピュータプログラム。
【請求項２１】
請求項２０に記載のコンピュータプログラムを格納した、コンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、本や書類、葉書等の文書を複写する時に、所望の文書が正しくセットされているか否かを検出するための技術に関する。
【背景技術】
【０００２】
複写機の普及により、原稿や本の複写が可能になった。一般的な使用方法として、まずユーザは、スキャナ部に直接手で文書をセットするか、ＡＤＦ（Ａｕｔｏ  Ｄｏｃｕｍｅｎｔ  Ｆｅｅｄｅｒ）に文書をセットする。次に、スキャナ部は、セットした文書を読み込む。最後に読み込んだ文書情報が、出力側にセットされた複写用の紙に印刷されることで複写が完了する。
【０００３】
この時に文書が、スキャナ部で読み込みが行われる範囲からずれていたり、文書の裏表自体が逆であると、不完全な複写が行なわれてしまう。また、スキャナ部で所望どおりの文書情報が読み込まれても、出力側にセットされた複写用の紙のサイズが読み込んだ文書情報の複写する範囲と合っていない場合にも不完全な複写が行なわれてしまう。
【０００４】
以上の問題を解決するために、いくつかの技術が開発されている。例えば、特許文献１に記載の複写機は、ページ番号を認識する認識装置を有する。文書の表裏が逆である時等、認識装置がページ番号を認識できなかった時には、警告装置は警告を発する。
【０００５】
また、特許文献２に記載の複写機は、原稿サイズセンサで原稿サイズを検知し、検知した原稿サイズに応じて原稿上の領域を予め定められた複数領域に分割する。各分割された各領域内毎に算出した画像占有率が予め定められた数値に達しているかを判断し、原稿が白紙の場合等、予め定められた数値に達している領域が存在しない場合には警告を行う。
【特許文献１】特開平６−１８１５１６号公報
【特許文献２】特開２００６−２４６２１４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載の複写機は、付加されたページ番号周辺の部位が読み込まれない場合は検出できても、ページ番号から離れた部位が読み込まれない場合を検出できない可能性がある。また、特許文献２に記載の複写機は、原稿や本等のサイズがセンサによって誤って認識される可能性がある。例えば、本を複写する時に、スキャナ面に対する本の押し付けが不十分な場合が該当する。さらに、年賀状、葉書、コーティング紙等を複写する場合には、原稿の内容とともに印刷用紙の裏表や上下も考慮しなければ、複写が不完全になってしまう。
【０００７】
本発明は、本や書類、葉書等の文書を複写する時に、所望の文書が正しくセットされているか否かを検出する技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。
【０００９】
すなわち、
印刷装置と接続された画像処理装置であって、
画像読取装置にセットされた、規定の位置に情報が付加された文書のうち、当該画像読取装置の読取範囲内の部分を当該画像読取装置が読み取ることで得られる文書画像を取得する手段と、
前記文書画像中の規定の位置における情報を抽出する抽出手段と、
前記文書画像中において、前記文書に記された情報が欠損しているか否かを、前記抽出手段が抽出した情報に基づいて判断する判断手段と、
前記判断手段が欠損があると判断した場合には、前記文書画像を前記印刷装置に出力せず、前記判断手段が欠損がないと判断した場合には、前記文書画像を前記印刷装置に出力する出力手段と
を備えることを特徴とする。
【００１０】
他の形態として、本発明の画像処理装置は以下の構成を備える。すなわち、
セットされた紙文書を排紙可能であるとともに、排紙する際に当該紙文書上に画像を形成してから排紙可能な画像処理装置であって、
規定の位置に情報が付加された紙文書を文書画像として読み取る読み取り手段と、
前記文書画像中の前記規定の位置における情報を抽出する抽出手段と、
前記文書画像中における、前記紙文書上に記された情報の欠損の有無を、前記抽出手段が抽出した情報に基づいて判断する判断手段と、
前記紙文書上に画像形成する為の出力文書を取得する手段と、
前記判断手段が欠損があると判断した場合には、前記出力文書を前記紙文書上に画像形成させることなく、前記紙文書を排紙し、前記判断手段が欠損がないと判断した場合には、前記出力文書を前記紙文書上に画像形成してから排紙する排紙制御手段と
を備えることを特徴とする。
【００１１】
本発明の目的を達成するために、例えば、本発明の画像処理方法は以下の構成を備える。
【００１２】
すなわち、
印刷装置と接続された画像処理装置が行う方法であって、
画像読取装置にセットされた、規定の位置に情報が付加された文書のうち、当該画像読取装置の読取範囲内の部分を当該画像読取装置が読み取ることで得られる文書画像を取得する工程と、
前記文書画像中の規定の位置における情報を抽出する抽出工程と、
前記文書画像中において、前記文書に記された情報が欠損しているか否かを、前記抽出工程で抽出した情報に基づいて判断する判断工程と、
前記判断工程で欠損があると判断した場合には、前記文書画像を前記印刷装置に出力せず、前記判断工程で欠損がないと判断した場合には、前記文書画像を前記印刷装置に出力する出力工程と
を備えることを特徴とする。
【００１３】
他の形態として、本発明の画像処理方法は以下の構成を備える。すなわち、
セットされた紙文書を排紙可能であるとともに、排紙する際に当該紙文書上に画像を形成してから排紙可能な画像処理装置が行う方法であって、
規定の位置に情報が付加された紙文書を文書画像として読み取る読み取り工程と、
前記文書画像中の前記規定の位置における情報を抽出する抽出工程と、
前記文書画像中における、前記紙文書上に記された情報の欠損の有無を、前記抽出工程で抽出した情報に基づいて判断する判断工程と、
前記紙文書上に画像形成する為の出力文書を取得する工程と、
前記判断工程で欠損があると判断した場合には、前記出力文書を前記紙文書上に画像形成させることなく、前記紙文書を排紙し、前記判断工程で欠損がないと判断した場合には、前記出力文書を前記紙文書上に画像形成してから排紙する排紙制御工程と
を備えることを特徴とする。
【発明の効果】
【００１４】
本や書類、葉書等の文書を複写する時に、所望の文書が正しくセットされているか否かを検出することができる。
【発明を実施するための最良の形態】
【００１５】
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【００１６】
［第１の実施形態］
＜＜透かし情報埋め込み方法＞＞
図１は、第１の実施形態における透かし情報埋め込み装置（画像処理装置）の構成概念図である。第１の実施形態に係る透かし情報埋め込み装置は、以下の構成を備える。すなわち、透かし情報（埋め込み情報）の埋め込み対象である文書１００を取得する文書取得部１０１。文書内の各オブジェクトを検出する文書解析部１０２。検出した各オブジェクト及び文書の撮像範囲の４隅の座標を用いて、透かし情報の埋め込み位置を決定する埋め込み位置決定部１０３。透かし情報取得部１０５が取得した透かし情報１０４を文書１００に埋め込む埋め込み部１０６。埋め込み部１０６が生成した情報付与文書１０８を出力する出力部１０７。以上の各部を備える。後述の透かし情報抽出装置は、出力部１０７が出力した情報付与文書１０８を複写する装置である。この時透かし情報抽出装置は、埋め込まれている透かし情報を参照して、情報付与文書１０８が透かし情報抽出装置に正しく読み込まれているかを判断し、複写の可否を決定する。以下、透かし情報を埋め込む方法について具体的に述べる。
【００１７】
図２は、第１の実施形態における透かし情報埋め込み装置の動作手順を説明するためのフローチャートである。
【００１８】
まず、ステップＳ２０１において、文書取得部１０１は文書１００を入力文書として取得する。文書１００のフォーマットは、テキストファイルやＰＳ（Ｐｏｓｔ  Ｓｃｒｉｐｔ）等の電子文書ファイルであればよい。ただし、文書１００中の文字及び画像を含む構成要素が出力される座標が決定されている必要がある。例えばテキストファイルは様々なフォーマットで出力しうるが、出力フォーマットが固定されていなければならず、テキストファイル中のある文字がどの座標に出力されるかが決定されていなければならない。文書取得部１０１が文書１００はまた、既に印刷された文書を、スキャナ等の読み取り装置で読み取って画像化した文書画像ファイルでもよい。文書画像ファイルのフォーマットはＢＭＰ（Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）  Ｂｉｔｍａｐ  Ｉｍａｇｅ）やＴＩＦＦ（Ｔａｇｇｅｄ  Ｉｍａｇｅ  Ｆｉｌｅ  Ｆｏｒｍａｔ）を含むが、これらに限定されない。ただし、本実施形態においては文書画像ファイルの画像に電子透かしを埋め込んで情報付与文書として出力し、この情報付与文書を複写するわけであるから、読み取り装置での画像化は、ずれなく正確に行われることが望まれる。
【００１９】
ステップＳ２０２において、文書解析部１０２は、文書取得部１０１が取得した文書１００からオブジェクトを検出する。オブジェクトとは、本実施形態では文や図のまとまった部分を示す。文書解析部１０２がオブジェクトを検出する方法の例として、ＯＣＲ（光学文字認識技術）で一般に使われているブロックセレクションの技術を用いる方法がある。このブロックセレクション技術は、例えば特許３２７８４７１号公報に詳しく開示されている。
【００２０】
図３に示す文書３０１を文書解析部１０２が解析した場合、３０２に示されるように、各オブジェクト３０２ａ〜３０２ｄが検出される。この時、周知のオブジェクト検出技術により、３０２ａ、３０２ｂ、３０２ｃは文字オブジェクト、３０２ｄは画像オブジェクトと判断される。ただし、オブジェクトの抽出方法は以上に示す又は図３に示す方法に限定されるわけではなく、例えば単語を１つのオブジェクトとしてみなしてもよい。
【００２１】
ステップＳ２０３において、埋め込み位置決定部１０３は、文書１００における透かし情報埋め込み位置を決定する。埋め込み位置は、文書１００に対して一意に定まる規定の位置である。埋め込み位置は、文書解析部１０２が検出した、文書を構成するオブジェクト領域内であって、文書の４隅のそれぞれに最も近い位置であればよい。本実施形態では特に、文字オブジェクト領域内であって、文書の４隅のそれぞれに最も近い位置を埋め込み位置とする。ステップＳ２０３の詳細については＜埋め込み位置決定部＞の項で後述する。
【００２２】
ステップＳ２０４において、透かし情報取得部１０５は埋め込むことを所望する透かし情報１０４を取得する。そして、埋め込み部１０６は取得した透かし情報１０４を文書１００の透かし情報埋め込み位置に付加し、情報付与文書１０８とする。本実施形態では、埋め込み位置に最も近い文字を一端とする文字列、すなわち文書の４隅のそれぞれに最も近い文字を一端とする文字列に対して、透かし情報を埋め込む。また本実施形態では、文字列の文字間隔の大小を変化させることにより透かし情報を埋め込む。ステップＳ２０４の詳細については＜埋め込み部＞の項で後述する。
【００２３】
最後にステップＳ２０５において、出力部１０７は情報付与文書１０８を出力する。
【００２４】
＜埋め込み位置決定部＞
図５は、本実施形態において透かし情報の埋め込み位置を決定する工程である、ステップＳ２０３の詳細を説明するためのフローチャートである。ステップＳ２０３の処理は、全て埋め込み位置決定部１０３が行う。
【００２５】
まず、ステップＳ２０３において用いる変数について説明する。文書１００中の特定の選択オブジェクトを構成する画素のうち、４隅の１つであるＡとの間の距離が最短である画素の座標を格納するＸａ及びＹａ。座標が（Ｘａ，Ｙａ）である画素と、４隅の１つであるＡとの間の距離を格納する、Ｒａ。文書１００中の何れかのオブジェクトを構成する全ての画素のうち、４隅の１つであるＡとの間の距離が最短である画素の座標を格納するＸａ＿ｍｉｎ及びＹａ＿ｍｉｎ。座標が（Ｘａ＿ｍｉｎ，Ｙａ＿ｍｉｎ）である画素と、４隅の１つであるＡとの間の距離を格納する、Ｒａ＿ｍｉｎ。ステップＳ２０３を開始する際に、Ｒａ＿ｍｉｎには初期値としてｎｕｌｌが設定される。
【００２６】
同様に、他の４隅の１つであるＢについても同様に設定する。すなわち、文書１００中の特定の選択オブジェクトを構成する画素のうち、４隅の１つであるＢとの間の距離が最短である画素の座標を格納するＸｂ及びＹｂ。座標が（Ｘｂ，Ｙｂ）である画素と、４隅の１つであるＢとの間の距離を格納する、Ｒｂ。文書１００中の何れかのオブジェクトを構成する全ての画素のうち、４隅の１つであるＢとの間の距離が最短である画素の座標を格納するＸｂ＿ｍｉｎ及びＹｂ＿ｍｉｎ。座標が（Ｘｂ＿ｍｉｎ，Ｙｂ＿ｍｉｎ）である画素と、４隅の１つであるＢとの間の距離を格納する、Ｒｂ＿ｍｉｎ。ステップＳ２０３を開始する際に、Ｒｂ＿ｍｉｎには初期値としてｎｕｌｌが設定される。
【００２７】
Ｃ、Ｄについても同様に設定する。また、（Ｘａ〜Ｘｄ、Ｙａ〜Ｙｄ、Ｒａ〜Ｒｄ、Ｘａ＿ｍｉｎ〜Ｘｄ＿ｍｉｎ、Ｙａ＿ｍｉｎ〜Ｙｄ＿ｍｉｎ、Ｒａ＿ｍｉｎ〜Ｒｄ＿ｍｉｎ）を、まとめて（Ｘｓ、Ｙｓ、Ｒｓ、Ｘｓ＿ｍｉｎ、Ｙｓ＿ｍｉｎ、Ｒｓ＿ｍｉｎ）と呼ぶ。
【００２８】
次に、ステップＳ２０３の詳細のステップを説明する。次にまず、ステップＳ２０３ａで、ステップＳ２０２で検出したオブジェクトのうち１つを選択する。例えば、文書の左上に一番近いオブジェクトから、順次選択すればよい。
【００２９】
次にステップＳ２０３ｂにおいて、ステップＳ２０３ａで選択したオブジェクトが文字オブジェクトであるか否かを判断する。
【００３０】
ステップＳ２０３ａで選択したオブジェクトが文字オブジェクトであると判断した場合（ＹＥＳ）は、ステップＳ２０３ｃに進む。ステップＳ２０３ａで選択したオブジェクトが文字オブジェクトではないと判断した場合（ＮＯ）は、Ｓ２０３ａに戻り、次のオブジェクトを選択する。
【００３１】
ステップＳ２０３ｃにおいて、文書１００の４隅のうち１つを選択する。以下、説明は図４に示すＡを選択したものとして続けるが、Ｂ、Ｃ、又はＤを選択した場合でも同様である。
【００３２】
ステップＳ２０３ｄにおいて、ステップＳ２０３ｃで選択した４隅の１つＡと、ステップＳ２０３ａで選択したオブジェクトとの間の最短距離Ｒａを求める。一般に、二点間の距離Ｒは、式１により求めることができる。
【００３３】
【数１】
2010171736.tif 000003
【００３４】
ここで、ＸおよびＹは一方の点の水平座標と垂直座標である。また、xおよびyはもう一方の点の水平座標と垂直座標である。
【００３５】
すなわち、ステップＳ２０３ａで選択したオブジェクトを構成する画素のそれぞれについてと、４隅の１つＡとの距離Ｒを求め、Ｒが最小になる画素座標を（Ｘａ、Ｙａ）とし、最小のＲを距離Ｒａとして算出する。図４に、文書３０１を用いる例における、Ａに対するＲａを示す。
【００３６】
ステップＳ２０３ｅにおいて、Ｓ２０３ｄで算出したＲａと、最小のＲａを格納するＲａ＿ｍｉｎとを比較する。ステップＳ２０３ｅで、Ｒａ＿ｍｉｎよりもＲａの方が小さいと判断した場合、又はＲａ＿ｍｉｎがｎｕｌｌの場合（ＹＥＳ）はステップＳ２０３ｆに進む。Ｒａ＿ｍｉｎよりもＲａの方が大きいか等しい場合（ＮＯ）はステップＳ２０３ｇに進む。
【００３７】
ステップＳ２０３ｆで、Ｒａ＿ｍｉｎ、Ｘａ＿ｍｉｎ、及びＹａ＿ｍｉｎを、Ｒａ、Ｘａ、及びＹａの値に更新する。すなわち、（Ｘａ＿ｍｉｎ、Ｙａ＿ｍｉｎ）は、ここまでに調査したオブジェクトを構成する画素の中で最もＡに距離が近い画素の座標を示す。
【００３８】
ステップＳ２０３ｇで、４隅Ａ〜Ｄの全てについて、座標（Ｘｓ＿ｍｉｎ、Ｙｓ＿ｍｉｎ）を求めたか否かを判断する。ステップＳ２０３ｇで、４隅全てについて（Ｘｓ＿ｍｉｎ、Ｙｓ＿ｍｉｎ）を求めていると判断した場合（ＹＥＳ）、ステップＳ２０３ｈに進む。４隅全てについて（Ｘｓ＿ｍｉｎ、Ｙｓ＿ｍｉｎ）を求めてはいないと判断した場合（ＮＯ）、ステップＳ２０３ｃに戻り、選択していない４隅の１つを選択する。
【００３９】
最後のステップＳ２０３ｈでは、全てのオブジェクトについてステップＳ２０３ａ〜Ｓ２０３ｇの処理を行ったかを判断する。全てのオブジェクトについてステップＳ２０３ａ〜Ｓ２０３ｇの処理を行っている場合（ＹＥＳ）には、Ｓ２０３を終了する。全てのオブジェクトについてステップＳ２０３ａ〜Ｓ２０３ｇの処理を行っていない場合（ＮＯ）には、Ｓ２０３ａに戻り、次のオブジェクトを選択する。
【００４０】
以上のステップＳ２０３を行うことで、図４のように４隅のそれぞれに対して座標（Ｘａ＿ｍｉｎ、Ｙａ＿ｍｉｎ）、（Ｘｂ＿ｍｉｎ、Ｙｂ＿ｍｉｎ）、（Ｘｃ＿ｍｉｎ、Ｙｃ＿ｍｉｎ）、（Ｘｄ＿ｍｉｎ、Ｙｄ＿ｍｉｎ）を求める。これらの座標は図４の４０２ａ〜４０２ｄで示され、ステップＳ２０４の処理で埋め込み位置として用いられる。
【００４１】
なお、本実施形態ではステップＳ２０３ａ及びステップＳ２０３ｂの処理の結果、埋め込み位置決定部１０３は文字オブジェクトのみを選択する。しかし、ステップＳ２０２において文書解析部１０２が文字オブジェクトのみを検出することで、ステップＳ２０３ｂを行わない構成とすることも可能であり、本実施形態の処理と同じ結果が得られる。
【００４２】
＜埋め込み部＞
図６は、本実施形態における透かし情報の埋め込みの一例を説明するためのフローチャートである。この例では、上述のステップＳ２０３で決定した、図４の４０２ａ〜４０２ｄで示される埋め込み位置に対して透かし情報を埋め込む。ステップＳ２０４の処理は、特に言及されない場合は全て埋め込み部１０６が行う。
【００４３】
まずステップＳ２０４ａ−１で、ステップＳ２０３で決定した埋め込み位置の中から１つを選択する。例えば、文書の左上に近い埋め込み位置から順に選択する。
【００４４】
次にステップＳ２０４ａ−２で、透かし情報取得部１０５から、ステップＳ２０４ａ−１で選択した埋め込み位置に埋め込む透かし情報１０４を取得する。ここで、透かし情報とは複写を制御するための情報であって、本実施形態においては埋め込み位置に関係なく同じ透かし情報を埋め込む。透かし情報は、具体的には”０１０１”等の所定のビット列であればよい。複写時に透かし情報が埋め込み位置に存在するかどうかを確認することで、文書の一部が欠けていないことを確認できる。
【００４５】
ステップＳ２０４ｂで、図７に示すような文字に対して外接矩形を算出した時に得られる文字間隔の組Ｐ、Ｓを選択する。この際、埋め込み位置に一番近い文字間隔から順に選択すればよい。選択順序はオブジェクトと埋め込み位置とが決まっている場合に一意に定められるものであれば何でもよい。例えば、図４３に示すように、「＊社員旅行のお知らせ＊」という横書きの文字オブジェクトに透かし情報を埋め込むものとする。埋め込み位置が図に示す埋め込み位置１にある場合は、まず埋め込み位置から右下に進むと最初に接触するオブジェクト内の文字矩形（「＊」）を選択する。選択した「＊」から右に進み、「＊」と「社」との間隔をＰ、「社」と「員」との間隔をＳとする。次の文字間隔を選択する場合には、「員」と「旅」との間隔をＰ、「旅」と「行」との間隔をＳとすればよい。文字オブジェクトが複数行で構成され、先頭行だけでは透かし情報を埋め込めない場合には、さらに次行の文字間隔を選択すればよい。
【００４６】
また、図４の４０２ｄで示すように、オブジェクトの右下が埋め込み位置となる場合がある。この場合は図４３の埋め込み位置２に示すように、埋め込み位置から右下に進んでもオブジェクト内の文字矩形には接触しない。よって、埋め込み位置から左上に進むこととし、最初に接触するオブジェクト内の文字矩形「＊」を選択する。続けて選択した「＊」から左に進み、まず「＊」と「せ」との間隔をＰ、「せ」と「ら」との間隔をＳとすればよい。次の文字間隔を選択する場合には、「ら」と「知」との間隔をＰ、「知」と「お」との間隔をＳとすればよい。ＰとＳを逆に指定することも可能である。また、埋め込み位置のどちら側に文字があるのかを判断するのではなく、埋め込み位置が４隅のうちいずれに最も近いのかを記憶しておいてもよい。左上に近い埋め込み位置については右下の文字に透かし情報を埋め込み、右下に近い埋め込み位置については左上の文字に透かし情報を埋め込むようにしてもよい。
【００４７】
このように埋め込み位置を選択することで、埋め込み位置の文字を一端とする文字列に対して透かし情報を埋め込むことができる。ここで、文字列には複数行の文字列も含まれる。すなわち、埋め込み位置の文字を端点とする複数行の文字列に対して透かし情報を埋め込んでもよい。
【００４８】
ステップＳ２０４ｃで、ステップＳ２０４ａ−２で取得した透かし情報１０４の先頭から順番に、１ビットを選択する。
【００４９】
ステップＳ２０４ｄでは、ステップＳ２０４ｃで取得したビットが１であるかどうかを判断し、１である場合は（ＹＥＳ）ステップＳ２０４ｅに進む。ステップＳ２０４ｅでは、間隔Ｐが間隔Ｓよりも短くなるように、ＰとＳの間にある文字を移動させる。
【００５０】
ステップＳ２０４ｄで、ステップＳ２０４ｃで取得したビットが１ではないと判断した場合（ＮＯ）はステップＳ２０４ｆに進む。ステップＳ２０４ｆでは、間隔Ｐが間隔Ｓよりも長くなるように、ＰとＳの間にある文字を移動させる。
【００５１】
ステップＳ２０４ｅ、ステップＳ２０４ｆのどちらにおいても、１ビットの情報を透かし情報として埋め込む。ただし、文字移動の前後において、ＰとＳとの総和は一定とする。このため、透かし埋め込み前後で１行の文字間の総和は変化せず、１行の横幅（横書きの場合）も変化しない。
【００５２】
ステップＳ２０４ｇでは、１つの埋め込み位置に対して透かし情報１０４の全てのビットを埋め込んだか否かを判断する。すなわち、透かし情報１０４に、ステップＳ２０４ｃで選択したビットの次ビットがあるかどうかを判断する。ステップＳ２０４ｇで、全てのビットを埋め込んだと判断した場合（ＹＥＳ）は、ステップＳ２０４ｈに進む。全て埋め込んでいないと判断した場合（ＮＯ）は、ステップＳ２０４ｂに戻り、次の文字間隔Ｐ、Ｓを選択する。
【００５３】
最後のステップＳ２０４ｈでは、全ての埋め込み位置に透かし情報を埋め込んだか否かを判断する。すなわち、ステップＳ２０４ａ−１で選択していない埋め込み位置がまだ残っているかどうかを判断する。ステップＳ２０４ｈで、全ての埋め込み位置に透かし情報を埋め込んだと判断した場合（ＹＥＳ）は、ステップＳ２０４を終了する。全ての埋め込み位置に透かし情報を埋め込んでいないと判断した場合（ＮＯ）は、ステップＳ２０４ａ−１に戻り、次の埋め込み位置を選択する。
【００５４】
ここでは埋め込み位置に対して複写を容易に行うための透かし情報を埋め込む処理について述べた。しかし、決定した埋め込み位置以外の位置において、本実施形態の目的である複写を正しく行なうこと以外を目的として、ＩＤ等の異なる透かし情報を埋め込んでもよい。
【００５５】
＜＜透かし情報抽出方法＞＞
図８は、第１の実施形態における透かし情報抽出装置（画像処理装置）の構成図である。図８に示すように、透かし情報を抽出する対象である情報付与文書１０８は、文書取得部８０１が撮像文書（文書画像）として取得する。文書解析部８０２は、撮像文書中（文書画像中）に含まれるオブジェクトを検出する。抽出位置決定部８０３は、検出した各オブジェクトと撮像範囲の４隅の位置から、透かし情報の抽出位置を決定する。確認情報取得部８０８は、撮像文書が正しく取得されていれば抽出される情報を示す、確認情報８０９を取得する。本実施形態では、確認情報８０９は、透かし情報埋め込み装置が埋め込んだ透かし情報１０４である。透かし情報抽出部８０４は、抽出位置決定部８０３が決定した抽出位置から透かし情報を抽出する。本実施形態では透かし情報抽出部８０４は、抽出位置の文字列の文字間隔の大小を判別することにより、透かし情報を抽出する。この時、透かし情報抽出部８０４は確認情報８０９のビット数を参照する。透かし情報判断部８０５は、透かし情報抽出部８０４が抽出した透かし情報と確認情報８０９とを比較する。透かし情報判断部８０５が透かし情報は正しいと判断した場合は、出力部８０６に複写文書８０７を出力させる。また、透かし情報判断部８０５が透かし情報は正しくないと判断した場合は、複写を行わない。この時、透かし情報判断部８０５は正しくない原因をユーザに対して画面表示及び音声で通知してもよい。以下、透かし情報抽出方法の具体的な実現方法について述べる。
【００５６】
図９は、本実施形態における透かし情報抽出装置の動作手順を説明するためのフローチャートである。
【００５７】
まず、ステップＳ９０１において、文書取得部８０１は情報付与文書１０８を取得する。文書取得部８０１は、前述の透かし情報埋め込み装置が出力した情報付与文書１０８を撮像することにより、撮像文書として取得する。文書取得部８０１は一般的にはスキャナ等の画像読取装置であって、セットされた文書のうち、読取範囲内の部分を文書画像（撮像文書）として取得する。情報付与文書１０８のうち、文書取得部８０１が取得した撮像文書に相当する部分を撮像範囲と呼ぶ。一般的には撮像範囲とは文書を複写や印刷する時の紙のサイズであり、Ａ４等に代表される。図３に示される文書３０１を取得した時の撮像範囲を４０１として、４隅を４０１ａ〜４０１ｄとして、図４に示す。以下、４０１ａ〜４０１ｄに位置する４隅をそれぞれＡ、Ｂ、Ｃ、Ｄとする。ここで、撮像範囲のＸ方向の画素数をＷ、Ｙ方向の画素数をＨとし、撮像範囲の左上を原点とすると、撮像範囲の４隅の座標はそれぞれＡ＝（０，０）、Ｂ＝（０，Ｈ）、Ｃ＝（Ｗ，０）、Ｄ＝（Ｗ、Ｈ）となる。
【００５８】
ステップＳ９０２において、文書解析部８０２は撮像文書からオブジェクトを検出する。オブジェクトの検出は、透かし情報埋め込み処理におけるステップＳ２０２と同様に行う。
【００５９】
ステップＳ９０３−１において、抽出位置決定部８０３は透かし情報を抽出する抽出位置を決定する。抽出位置は、１つの撮像文書に対して一意に定まる、規定の位置である。抽出位置の決定は、透かし情報埋め込み処理におけるステップＳ２０３と同様に行う。情報付与文書１０８が文書取得部８０１に正確にセットされていれば、撮像文書は情報付与文書１０８と同一となる。本実施形態では文書１００の透かし情報埋め込み位置に最も近い文字は透かし情報埋め込み処理において移動しない。よって、情報付与文書１０８が文書取得部８０１に正確にセットされている場合、透かし情報埋め込み位置と抽出位置とは同じ位置となる。
【００６０】
ステップＳ９０３−２において、確認情報取得部８０８は確認情報８０９を取得する。確認情報８０９は、予め透かし情報抽出装置内に記憶されていてもよいし、ユーザから取得してもよい。また、確認情報８０９を、前述の透かし情報埋め込み装置が埋め込んだ透かし情報を抽出する以外の方法で、情報付与文書１０８から読み取ってもよい。例えば、確認情報８０９が情報付与文書１０８の右下に数字として記載されており、確認情報取得部８０８はこの数字を確認情報として取得してもよい。本実施形態において確認情報８０９は、透かし情報埋め込み装置が埋め込んだ透かし情報１０４と同一である。
【００６１】
ステップＳ９０４において、透かし情報抽出部８０４は、抽出位置から透かし情報を抽出する。ステップＳ９０４の詳細については＜抽出部＞の項で後述する。
【００６２】
ステップＳ９０５において、透かし情報判断部８０５は情報の抽出が成功したか、すなわち透かし情報抽出部８０４が抽出した透かし情報が正しいかどうかを判断し、複写の是非を決定する。透かし情報判断部８０５は、透かし情報が正しくない場合に、情報が欠損しているものと判断し、ステップＳ９０６の処理を開始しないため、文書画像は出力されない。ステップＳ９０５の詳細については＜透かし情報判断部＞の項で後述する。
【００６３】
最後に、ステップＳ９０６において、印刷装置である出力部８０６は複写文書８０７を出力する。
【００６４】
＜抽出部＞
図１０は、本実施形態における透かし情報の抽出の一例を説明するためのフローチャートであり、図９のステップＳ９０４を詳細に説明する。ステップＳ９０４の処理は、全て透かし情報抽出部８０４が行う。
【００６５】
まず、ステップＳ９０４ａでステップＳ９０３−１にて決定した抽出位置の中から１つを順に選択する。例えば、文書の左上に近い抽出位置から順に選択する。
【００６６】
ステップＳ９０４ｂで、透かし情報埋め込み時と同様に文字間隔の組Ｐ、Ｓを選択する。
【００６７】
ステップＳ９０４ｃで、間隔Ｐ＜間隔Ｓであるか否かを判断する。間隔Ｐ＜間隔Ｓであると判断した場合（ＹＥＳ）は、埋め込まれた透かしビットは「１」であると判定する（ステップＳ９０４ｄ）。また、間隔Ｐ＜間隔Ｓではないと判断した場合（ＮＯ）は、埋め込まれた透かしビットは「０」であると判定する（ステップＳ９０４ｅ）。
【００６８】
ステップＳ９０４ｆでは、ステップＳ９０４ａで選択した抽出位置から、透かし情報を全て抽出したか否かを判断する。具体的には、確認情報取得部８０８から取得した確認情報８０９のビット数と、ステップＳ９０４ｂからステップＳ９０４ｆまでの繰り返しで取得したビット数とが等しければ、透かし情報を全て抽出したとすればよい。ステップＳ９０４ｆで、透かし情報を全て抽出したと判断した場合（ＹＥＳ）は、ステップＳ９０４ｇに進み、全て抽出していないと判断した場合（ＮＯ）は、Ｓ９０４ｂに戻り、次の文字間隔Ｐ、Ｓを選択する。
【００６９】
最後のステップＳ９０４ｇでは、全ての抽出位置から透かし情報を抽出したか否かを判断する。全ての抽出位置から透かし情報を抽出したと判断した場合（ＹＥＳ）はステップＳ９０４を終了する。全ての抽出位置から透かし情報を抽出していないと判断した場合（ＮＯ）はステップＳ９０４ａに戻り、次の抽出位置を選択する。
【００７０】
＜透かし情報判断部＞
図１１は、本実施形態における透かし情報の判断の一例を説明するためのフローチャートであり、図９のステップＳ９０５を詳細に説明するものである。ステップＳ９０５の処理は、全て透かし情報判断部８０５が行う。
【００７１】
まず、ステップＳ９０５ａでステップＳ９０４にて抽出した透かし情報の中から１つを選択する。例えば、文書の左上に近い抽出位置の透かし情報から順に選択する。
【００７２】
ステップＳ９０５ｂで、透かし情報が正しいか否かを判断する。本実施形態では、確認情報８０９と選択した透かし情報とを比較し、同一である場合に透かし情報が正しいと判断する。透かし情報が正しいと判断した場合（ＹＥＳ）は、ステップＳ９０５ｄに進み、透かし情報が正しくないと判断した場合（ＮＯ）は、ステップＳ９０５ｃに進む。
【００７３】
ステップＳ９０５ｃで、消失位置数Ｄをインクリメントする。なお、ステップＳ９０５を開始する際の消失位置数Ｄの初期値は０である。消失位置数Ｄは、正しい透かし情報を抽出できなかった抽出位置の数を示す。
【００７４】
ステップＳ９０５ｄで、全ての抽出位置の透かし情報について正しいかどうかを判断している場合（ＹＥＳ）は、ステップＳ９０５ｅに進む。全ての透かし情報について正しいかどうかを判断していない場合（ＮＯ）、Ｓ９０５ａに戻り、次の透かし情報を選択する。
【００７５】
ステップＳ９０５ｅで、消失位置数Ｄが０であるか否かを判断する。消失位置数Ｄが０である場合（ＹＥＳ）は、全ての透かし情報を正しく抽出したと判断してＳ９０５を終了し、ステップＳ９０６に進む。Ｄ＝０でない場合（ＮＯ）は、ステップＳ９０５ｆに進む。
【００７６】
ステップＳ９０５ｆに進んだ場合は、ステップＳ９０６に進むことなく、すなわち複写処理を行なわない。正しい透かし情報を取得できなかった原因を消失位置数Ｄを参考にして割り出し、例えば画面表示又は音声等の通知手段で、ユーザに通知する。
【００７７】
例えば図３２に示すように、撮像文書の４隅であるＣ及びＤに対応する透かし情報が正しくない場合は、文書３２０２の右半分が撮像範囲３２０１からはみ出している可能性が考えられる。文書３２０２には、図４の４０２ａから４０２ｄに示される位置に透かし情報を埋め込まれている。しかし、文書３２０２の位置が撮像範囲３２０１とはずれていることにより、抽出位置決定部が決定する抽出位置は、３２０２ａから３２０２ｄに示される位置になる。４０２ｃと３２０２ｃ、及び４０２ｄと３２０２ｄが文書の異なる位置を示すため、透かし情報抽出部８０４は正しい透かし情報を抽出できない。よって、正しく文書３２０２がセットされていないことを本実施形態に係る透かし情報抽出装置は検出できる。また、図１２に示す１２０１及び１２０２のように文字が斜めになっていて、透かし情報が抽出できなかった場合は、文書が斜めに置かれている可能性が考えられる。
【００７８】
ただし、ここで挙げた原因は一例であり、他の原因を割り出すことも可能である。ステップＳ９０５にて複写が行なわれなかった場合でも、透かし情報判断部８０５が割り出し通知した原因に基づいて、ユーザは情報付与文書１０８の文書取得部８０１へのセット位置の修正を容易に行なうことができる。
【００７９】
上記の説明した方法に限らず、埋め込んだ透かし情報と抽出した透かし情報とが一致するかどうかを判断できるようなやり方で、文字の間隔を使って情報を埋め込む他の方法のいずれにも本実施形態を適用することができる。また、本実施形態では文字間隔を使用して透かし情報を埋め込んだが、文字に対して透かし情報を埋め込む他の方法いずれにも本実施形態を適用するができる。例えば、文字を回転したり、文字に対してドットパターンを施すことにより透かし情報を埋め込むことが可能である。
【００８０】
本実施形態は、機密文書の不正複写防止を強化することを目的として用いてもよい。例えば、複写時に機密文書が撮像範囲からずれてしまうことで、機密文書内に埋め込まれている複写禁止情報が読み込まれず、複写されてしまうことを防止するために用いることが可能である。また、埋め込める情報の長さに余裕があるならば、誤り訂正符号を導入してもよい。
【００８１】
［第２の実施形態］
上記第１の実施形態では、文書の撮像範囲の４隅に近い文字オブジェクトに対して、文字の間隔を操作することで透かし情報を埋め込んだ。つまり、画像オブジェクトには埋め込みを行なっていない。しかし、画像オブジェクトに対して画像用の電子透かし技術を用いて透かし情報を埋め込んでもよい。
【００８２】
また、文字オブジェクトにおいても、文字数が少ない場合には、埋め込むことを所望する透かし情報を埋め込めないことがある。そこで、文字オブジェクトに埋め込み可能な情報量、例えば文字数、に応じて埋め込み方法を切り替えてもよい。すなわち、文字数が少ない場合には文字間隔を操作するよりも多くの情報を埋め込むことができる埋め込み方法を用いるようにしてもよい。
【００８３】
本実施形態では、画像オブジェクトには画像用の電子透かし技術を用いて透かし情報を埋め込み、加えて文字オブジェクトに対しては、文字数に応じて埋め込み方法を切り替える。例として本実施形態では、文字列の文字間隔を操作する方法と、文字にパターンを重畳する方法の何れかを用いる。これらの手法により、撮像範囲の４隅に近いどのオブジェクトに対しても、透かし情報を埋め込むことができる。以下、本実施形態を詳細に説明する。もっとも、画像オブジェクトに対して透かし情報を埋め込む方法と、文字数に応じて埋め込み方法を切り替える方法とは、独立に用いられてもよい。本実施形態では文字オブジェクトの文字数に応じて埋め込み方法を切り替える。しかし実際には、埋め込み情報を埋め込むことを所望する、埋め込み位置を端点とする複数行の文字列の文字数に応じて埋め込み方法を切り替え、その複数行の文字列に対して埋め込み情報を埋め込めばよい。もちろん、埋め込み情報を埋め込むことを所望する１行の文字列の文字数に応じて埋め込み方法を切り替え、その１行の文字列に対して埋め込み情報を埋め込んでもよい。
【００８４】
＜＜透かし情報埋め込み方法＞＞
本実施形態に係る透かし情報埋め込み装置の構成は、図１に示される第１の実施形態での構成と同様のものであり、図２に示される第１の実施形態に係る処理手順に従って処理を行う。但し、本実施形態では、図２のステップＳ２０３及びＳ２０４での処理を図１３〜図１６及び図１８のように行う。これらの処理について、以下で詳細に説明する。
【００８５】
＜埋め込み位置決定部＞
図１３は、本実施形態における透かし情報の埋め込み位置を決定するステップＳ２０３の詳細を説明するためのフローチャートである。図５に示す第１の実施形態の処理とは、ステップＳ２０３ｂを行わないことを除いて共通である。
【００８６】
まず、ステップＳ２０３ｉでオブジェクトのうち１つを順次選択する。次に、ステップＳ２０３ｊで、４隅Ａ、Ｂ、Ｃ、Ｄの１つを順次選択する。
【００８７】
ステップＳ２０３ｋで、ステップＳ２０３ｉで選択したオブジェクトを構成する画素のうち、ステップＳ２０３ｊで選択した４隅の１つからの距離が最も短い画素の座標（Ｘｓ、Ｙｓ）とその距離Ｒｓとを算出する。
【００８８】
ステップＳ２０３ｌで、Ｓ２０３ｋで算出したＲｓと、Ｒｓ＿ｍｉｎとを比較する。第１の実施形態と同様、Ｒｓ＿ｍｉｎの初期値はｎｕｌｌである。
【００８９】
ステップＳ２０３ｌで、Ｒｓ＿ｍｉｎよりもＲｓの方が小さい場合又はＲｓ＿ｍｉｎがｎｕｌｌの場合（ＹＥＳ）は、ステップＳ２０３ｍに進む。Ｒｓ＿ｍｉｎよりもＲｓの方が大きいか等しい場合（ＮＯ）は、ステップＳ２０３ｎに進む。
【００９０】
ステップＳ２０３ｍで、Ｒｓ＿ｍｉｎ、Ｘｓ＿ｍｉｎ、及びＹｓ＿ｍｉｎを、Ｒｓ、Ｘｓ、及びＹｓの値に更新する。
【００９１】
ステップＳ２０３ｎで、ステップＳ２０３ｉで選択した１つのオブジェクトに対し、ステップＳ２０３ｋ〜Ｓ２０３ｌの処理を４隅の全てについて行ったかどうかを判断する。４隅全てについて処理をした場合（ＹＥＳ）、ステップＳ２０３ｏに進む。４隅全てについて処理をしていない場合（ＮＯ）、Ｓ２０３ｊに戻り、まだ選択していない４隅の１つを選択する。
【００９２】
最後のステップＳ２０３ｏでは、全てのオブジェクトについて処理を行ったか否かを判断する。全てのオブジェクトについて処理を行った場合（ＹＥＳ）、ステップＳ２０３を終了する。全てのオブジェクトについて処理を行っていない場合（ＮＯ）、ステップＳ２０３ｉに戻り、次のオブジェクトを選択する。
【００９３】
本実施形態では、埋め込み位置決定処理において、決定する埋め込み位置を文字オブジェクトに限定しない。そのため、画像オブジェクトを構成する画素を埋め込み位置として決定する場合もある。すなわち、画像オブジェクトが文書の４隅近辺にある場合に、第１の実施形態に係る処理よりも、さらに４隅に近い位置を埋め込み位置として決定することができる。
【００９４】
＜埋め込み部＞
図１４は、本実施形態において透かし情報の埋め込み処理を行うステップＳ２０４における、処理の一例を説明するためのフローチャートである。ステップＳ２０４における処理は、特に示されない限りは埋め込み部１０６が行う。
【００９５】
まずステップＳ２０４ｉで、ステップＳ２０３にて埋め込み位置決定部１０３が決定した埋め込み位置の中から１つを選択する。
【００９６】
次にステップＳ２０４ｊで、ステップ２０４ｉで選択した埋め込み位置が、文字オブジェクトに含まれるか、それとも画像オブジェクト中に含まれるかを判断する。ステップＳ２０４ｉで選択した埋め込み位置が、文字オブジェクト中に含まれる場合（ＹＥＳ）はステップＳ２０４ｋに進み、画像オブジェクト中に含まれる場合（ＮＯ）は、ステップＳ２０４ｏに進む。
【００９７】
ステップＳ２０４ｋで、ステップ２０４ｉで選択した埋め込み位置が含まれる文字オブジェクト内の、埋め込み可能データ量Ｕｐを算出する。埋め込み可能データ量Ｕｐは、文字オブジェクト内の２つの文字間隔（Ｐ、Ｓ）からなる組を１ビットとしてカウントし、何組の文字間隔が存在するかを求めることで得られる。
【００９８】
ステップＳ２０４ｌで、ステップＳ２０４ｋにおいて算出した埋め込み可能データ量Ｕｐが、埋め込む予定である透かし情報１０４のデータ量Ｚ以上であるか否かを判断する。Ｕｐ≧Ｚの場合（ＹＥＳ）は文字間隔を操作した埋め込みを行なうため、ステップＳ２０４ｍに進む。Ｕｐ≧Ｚではない場合（ＮＯ）は文字に対するドットパターンを用いた埋め込みを行なうため、ステップＳ２０４ｎに進む。
【００９９】
まず、文字間隔を操作して透かし情報を埋め込む、ステップＳ２０４ｍの処理を図１５のフローチャートに従って説明する。
【０１００】
まず、ステップＳ２０４ｍ−１で、文字間隔の組Ｐ、Ｓを順次選択する。この処理は、第１の実施形態に係る図６のステップＳ２０４ｂと同様に行えばよい。
【０１０１】
ステップＳ２０４ｍ−２で、透かし情報取得部１０５が取得した透かし情報１０４の先頭から順次、１ビットずつ選択する。
【０１０２】
ステップＳ２０４ｍ−３では、ステップＳ２０４ｍ−２で選択したビットが１であるか１ではないかを判断する。ステップＳ２０４ｍ−２で選択したビットが１である場合（ＹＥＳ）、ステップＳ２０４ｍ−４に進む。選択したビットが１ではない場合（ＮＯ）はステップＳ２０４ｍ−５に進む。
【０１０３】
ステップＳ２０４ｍ−４では、文字間隔がＰ＜Ｓとなるように、間隔Ｐと間隔Ｓの間の文字を移動させてＰ及びＳの値を変化させる。
【０１０４】
ステップＳ２０４ｍ−５では、文字間隔がＰ＞Ｓとなるように、間隔Ｐと間隔Ｓの間の文字を移動させてＰ及びＳの値を変化させる。
【０１０５】
最後のステップＳ２０４ｍ−６では、埋め込み位置に対して、透かし情報の全てのビットを埋め込んだか否かを判断する。すなわち、ステップＳ２０４ｍ−２で選択するビットがまだ残っているか否かを判断する。全てのビットを埋め込んだと判断した場合（ＹＥＳ）、ステップＳ２０４ｍを終了する。全てのビットを埋め込んではいないと判断した場合（ＮＯ）、Ｓ２０４ｍ−１に戻り、次の文字間隔の組を選択する。
【０１０６】
次に、ドットパターンを用いて透かし情報を埋め込む、ステップＳ２０４ｎの処理を、図１６のフローチャートを参照して説明する。ドットパターンを用いた埋め込みは、例えば図１７のパターンＩ（１７０１）及びパターンＪ（１７０２）として示される２つのパターンのどちらかを埋め込むことにより行う。
【０１０７】
まず、ステップＳ２０４ｎ−１で、文字を順次選択する。例えば、埋め込み位置から一番近い文字から順に選択すればよい。選択方法はステップＳ２０４ｍ−１と同様にして、文字間隔の代わりに文字を選択すればよい。
【０１０８】
ステップＳ２０４ｎ−２では、透かし情報取得部１０５が取得した透かし情報１０４の先頭から順次、１ビットを選択する。
【０１０９】
ステップＳ２０４ｎ−３では、ステップＳ２０４ｎ−２で選択したビットが１であるか１ではないかを判断する。選択したビットが１である場合（ＹＥＳ）、ステップＳ２０４ｎ−４に進み、選択したビットが１ではない場合（ＮＯ）はステップＳ２０４ｎ−５に進む。
【０１１０】
ステップＳ２０４ｎ−４では、ステップＳ２０４ｎ−１で選択した文字に対してパターンＩを重畳する。同様に、ステップＳ２０４ｎ−５では、ステップＳ２０４ｎ−１で選択した文字に対してパターンＪを重畳する。
【０１１１】
最後のステップＳ２０４ｎ−６では、埋め込み位置に対して透かし情報の全てのビットを埋め込んだか否かを判断する。全てのビットを埋め込んだと判断した場合（ＹＥＳ）は、ステップＳ２０４ｎを終了する。全てのビットを埋め込んではいないと判断した場合（ＮＯ）は、ステップＳ２０４ｎ−１に戻り、次の文字を選択する。
【０１１２】
上記のドットパターンを使って透かし情報を埋め込む方法に限らず、埋め込んだ透かし情報と抽出した透かし情報とが一致するかどうかを判断できるようなやり方で、文字に対して情報を埋め込む他の方法のいずれにも本実施形態を適用することができる。例えば、文字を回転して透かし情報を埋め込むことも可能である。
【０１１３】
本実施形態では、文字オブジェクト中の文字間隔の数に応じて、透かし情報埋め込み方法を文字間隔の操作による埋め込み方法とドットパターンによる埋め込み方法に切り替える。しかしながら、文字数に応じて埋め込み方法を切り替える方法を含む、他の方法のいずれを用いることも可能である。
【０１１４】
続いて、ステップＳ２０４ｏにおける、画像オブジェクトに透かし情報を埋め込む方法について説明する。ステップＳ２０４ｏでは、画像オブジェクト内で４隅の１つに最も近い画素を一端とする画素群に対して、透かし情報を埋め込む。具体的には、画素群の各画素の画素値を変化させて、透かし情報を１ビットずつ挿入する。ステップＳ２０４ｏの具体的な処理は、図１８のフローチャートを参照して説明する。
【０１１５】
まず、ステップＳ２０４ｏ−１で、画像オブジェクトを構成する画素を選択する。選択する順序はステップＳ２０４ｍ−１と同様でよく、文字間隔の代わりに画素を選択すればよい。例えば、図４４に示すように、埋め込み位置１からラスタスキャンを行い、埋め込み位置に一番近い画素から順に選択すればよい。図４４の埋め込み位置２からは、図４４に示すように、右から左に、左端までたどり着いたら上の行の右から左に、と画素を選択していけばよい。文字間隔を操作する処理と同様、埋め込み位置が４隅のうち何れに最も近いかを記憶しておき、最も近い４隅の１つの位置に基づいて選択順序を変更してもよい。
【０１１６】
ステップＳ２０４ｏ−２で、透かし情報取得部１０５が取得した透かし情報１０４の先頭から順次、１ビットを選択する。ステップＳ２０４ｏ−３で、選択したビットが１であるか否かを判断する。１である場合（ＹＥＳ）、ステップＳ２０４ｏ−４に進み、１ではない場合（ＮＯ）、ステップＳ２０４ｏ−５に進む。
【０１１７】
ステップＳ２０４ｏ−４では、選択した画素の画素値を調べ、画素値が偶数である場合にはインクリメントすることで奇数にする。同様にステップＳ２０４ｏ−５では、画素の画素値を調べ、画素値が奇数である場合にはインクリメントすることで偶数にする。ステップＳ２０４ｏ−４又はステップＳ２０４ｏ−５の処理では、インクリメントする代わりにデクリメントしてもよい。画素値が複数ある場合はそのうちの１つを使えばよく、例えばＲＧＢのＲの画素値であればよい。
【０１１８】
最後のステップＳ２０４ｏ−６は、埋め込み位置に対して透かし情報の全てのビットが埋め込まれたか否かを判断する。全てのビットを埋め込んだ場合（ＹＥＳ）、ステップＳ２０４ｏを終了する。全てのビットを埋め込んでいない場合（ＮＯ）、Ｓ２０４ｏ−１に戻り、次の画素を選択する。
【０１１９】
上記の方法は一例に過ぎず、埋め込んだ透かし情報と抽出した透かし情報とが一致するかどうかを判断できるようなやり方で、画像オブジェクトに対して情報を埋め込む他の方法のいずれを用いることも可能である。例えば、画像オブジェクトに対してブロック分割を行い、各ブロックを周波数変換したのち、透かし情報を埋め込む方法をとることも可能である。具体的には、各ブロックを周波数変換した後、特定の周波数領域（例：ノイズなどの影響を受けにくい直流成分以外の低周波領域の値）の値に透かし情報（例：「０」なら奇数に、「１」なら偶数にする）を変更することによって透かし情報を埋め込む。その後、逆変換して実空間画像に戻せめばよい。画像オブジェクトに対して情報を埋め込む方法としては、耐性が高い埋め込み方法を用いることがさらに好ましい。画素値を偶数又は奇数にすることで情報を埋め込むのではなく、例えば画素値を１６の倍数又は（１６の倍数＋８）のどちらかに離散化することで情報を埋め込む方法等の、公知の方法が利用可能である。
【０１２０】
最後のステップＳ２０４ｐでは、全ての埋め込み位置に透かし情報を埋め込んだか否かを判断する。全ての埋め込み位置に透かし情報を埋め込んだと判断した場合（ＹＥＳ）、Ｓ２０４を終了する。全ての埋め込み位置に透かし情報を埋め込んでいないと判断した場合（ＮＯ）、Ｓ２０４ｉに戻り、次の埋め込み位置を選択する。
【０１２１】
＜＜透かし情報抽出方法＞＞
第２の実施形態に係る透かし情報抽出装置は、図８に示す第１の実施形態に係る透かし情報抽出装置と同様のものであり、基本的には図９に示す第１の実施形態に係る処理手順と同様に処理を行う。但し、図９に示すステップのＳ９０３−１及びＳ９０４での処理内容は、本実施形態では異なる。ステップＳ９０３−１では透かし情報を抽出する抽出位置を決定する。決定方法は本実施形態の透かし情報埋め込み時の埋め込み位置決定方法（ステップＳ２０３）と同様であり、文字オブジェクトであるか画像オブジェクトであるかに関わらず、４隅に一番近いオブジェクトを抽出位置とする。また、ステップＳ９０４では図１９〜２２に示す処理を行う。以下で、ステップＳ９０５の処理を詳述する。
【０１２２】
＜抽出部＞
図１９に、本実施形態における透かし情報の抽出の一例を説明するためのフローチャートを示す。
【０１２３】
まず、ステップＳ９０４ｈで、ステップＳ９０３−１で抽出位置決定部８０３が決定した抽出位置の中から１つを選択する。
【０１２４】
次に、ステップＳ９０４ｉで、ステップＳ９０４ｈで選択した抽出位置の画素を含むオブジェクトが、文字オブジェクトであるか否かを判断する。文字オブジェクトであると判断した場合（ＹＥＳ）はステップＳ９０４ｊに進み、文字オブジェクトではないと判断した場合（ＮＯ）はステップＳ９０４ｎへと進む。
【０１２５】
ステップＳ９０４ｊで、選択した抽出位置の画素を含む文字オブジェクト内の、埋め込み可能データ量Ｕｓを算出する。Ｕｓは透かし情報埋め込み装置がステップＳ２０４で埋め込み可能データ量Ｕｐを算出するのと同様に算出する。
【０１２６】
ステップＳ９０４ｋでは、ステップＳ９０４ｊにて算出したＵｓが、抽出すべき透かし情報量Ｚ以上であるか否かを判断する。Ｕｓ≧Ｚの場合（ＹＥＳ）は文字間隔から透かし情報の抽出を行なうため、ステップＳ９０４ｌに進む。Ｕｓ≧Ｚでない場合（ＮＯ）は文字に重畳したドットパターンから透かし情報の抽出を行なうため、ステップＳ９０４ｍに進む。ここで、抽出すべき透かし情報量Ｚとは、確認情報取得部８０８が取得した確認情報８０９の情報量のことである。
【０１２７】
まず、文字間隔から透かし情報の抽出を行うステップＳ９０４ｌの処理を、図２０のフローチャートを参照して説明する。
【０１２８】
ステップＳ９０４ｌ−１で、ステップＳ２０４ｍ−１と同様に、文字間隔の組Ｐ、Ｓを順次選択する。
【０１２９】
ステップＳ９０４ｌ−２で、間隔Ｐ＜間隔Ｓであると判断した場合（ＹＥＳ）は、埋め込まれたビットが「１」であると判定する（ステップＳ９０４ｌ−３）。また、Ｐ＜Ｓではないと判断した場合（ＮＯ）は、埋め込まれたビットは「０」であると判定する（ステップＳ９０４ｌ−４）。
【０１３０】
ステップＳ９０４ｌ−５では、ステップＳ９０４ｈで選択した抽出位置の透かし情報を全て抽出したか否かを判断する。具体的には、第１の実施形態と同様、確認情報取得部８０８から取得した確認情報８０９のビット数と、ステップＳ９０４ｌ−１からステップＳ９０４ｌ−５までの繰り返しで取得したビット数とが等しければ、透かし情報を全て抽出したとすればよい。透かし情報を全て抽出したと判断した場合（ＹＥＳ）はステップＳ９０４ｌを終了する。透かし情報が全て抽出されていないと判断した場合（ＮＯ）は、Ｓ９０４ｌ−１に戻り、次の文字間隔の組を選択する。
【０１３１】
次に、文字に重畳したドットパターンから透かし情報の抽出を行うステップＳ９０４ｍの処理を、図２１のフローチャートを参照して説明する。
【０１３２】
まず、ステップＳ９０４ｍ−１で、文字を透かし情報埋め込み時（ステップＳ２０４ｎ−１）と同様に選択する。
【０１３３】
次に、ステップＳ９０４ｍ−２で、文字からドットパターンを抽出する。
【０１３４】
ステップＳ９０４ｍ−３では、ステップＳ９０４ｍ−２で抽出したドットパターンから、埋め込まれたビットを判定する。ドットパターンがパターンＩである場合（ＹＥＳ）には、埋め込まれたビットは「１」であると判定する（ステップＳ９０４ｍ−４）。また、パターンＩではない場合（ＮＯ）は、埋め込まれた透かしビットは「０」であると判定する（ステップＳ９０４ｍ−５）。
【０１３５】
最後のステップＳ９０４ｍ−６は、選択した抽出位置の画素を含む文字オブジェクトから、全ての透かし情報を抽出したか否かを判断する。具体的には、文字間隔から透かし情報を抽出する場合と同様に判断すればよい。すなわち、確認情報取得部８０８から取得した確認情報８０９のビット数と、ステップＳ９０４ｍ−１からステップＳ９０４ｍ−６までの繰り返しで取得したビット数とが等しければ、透かし情報を全て抽出したとすればよい。全ての透かし情報を抽出したと判断した場合（ＹＥＳ）には、ステップＳ９０４ｍを終了する。全ての透かし情報が抽出されてはいないと判断した場合（ＮＯ）には、Ｓ９０４ｍ−１に戻り、次の文字を選択する。
【０１３６】
最後に、選択した抽出位置の画素を含むオブジェクトが画像オブジェクトである場合のステップＳ９０４ｎの処理を、図２２のフローチャートを参照して説明する。ステップＳ９０４ｎでは、４隅の１つに最も近い画素を一端とする画素群から、透かし情報を抽出する。
【０１３７】
まず、ステップＳ９０４ｎ−１で、画素を選択する。この時の画素の選択方法は透かし情報埋め込み時、すなわち図１８に示すステップＳ２０４ｏ−１と同様である。
【０１３８】
ステップＳ９０４ｎ−２で、ステップＳ９０４ｎ−１で選択した画素の画素値から、透かし情報として埋め込まれたビットを判定する。選択した画素の画素値が奇数である場合（ＹＥＳ）には、埋め込まれたビットは「１」であると判定する（ステップＳ９０４ｎ−３）。また、選択した画素の画素値が奇数ではない場合（ＮＯ）には、埋め込まれたビットは「０」であると判定する（ステップＳ９０４ｎ−４）。
【０１３９】
最後のステップＳ９０４ｎ−５では、ステップＳ９０４ｈで選択した抽出位置から、全ての透かし情報を抽出したか否かを判断する。具体的には、文字間隔から透かし情報を抽出する場合と同様に判断すればよい。すなわち、確認情報取得部８０８から取得した確認情報８０９のビット数と、ステップＳ９０４ｎ−１からステップＳ９０４ｎ−５までの繰り返しで取得したビット数とが等しければ、透かし情報を全て抽出したとすればよい。透かし情報を全て抽出したと判断した場合（ＹＥＳ）は、ステップＳ９０４ｎを終了する。透かし情報を全て抽出していないと判断した場合（ＮＯ）は、ステップＳ９０４ｎ−１に戻り、次の画素を選択する。
【０１４０】
最後のステップＳ９０４ｏでは、全ての抽出位置から透かし情報を抽出したか否かを判断する。全ての抽出位置から透かし情報を抽出したと判断した場合（ＹＥＳ）は、ステップＳ９０４を終了する。全ての抽出位置から透かし情報を抽出していないと判断した場合（ＮＯ）は、ステップＳ９０４ｈに戻り、次の抽出位置を選択する。
【０１４１】
本実施形態では、文書中のオブジェクトの種類及び埋め込み可能なデータ量によって透かし情報の埋め込み方法を切り替える。この方法により、４隅に近いオブジェクトが大きな文字オブジェクトではない場合でも、透かし情報を埋め込むことを可能にした。
【０１４２】
［第３の実施形態］
第２の実施形態では、文書の撮像範囲の４隅に近いオブジェクトに対して透かし情報を埋め込んだ。しかしながら、図３７のように文書３７０２が撮像範囲３７０１からずれてしまって文書の内容の一部「Ｔｉｔｌｅ」が消失しても、４隅に近い各抽出位置から正しい透かし情報を読み込める場合がある。この場合、透かし情報抽出装置は、文書が正しく読み込めていると判断し、ずれた文書を複写してしまう。
【０１４３】
そこで本実施形態では、埋め込み位置が属するオブジェクトの一角の座標値を透かし情報とする。すなわち、各埋め込み位置の座標（Ｘｓ＿ｍｉｎ、Ｙｓ＿ｍｉｎ）から透かし情報を生成し、生成した透かし情報を各埋め込み位置に埋め込めばよい。抽出時に抽出位置の座標（Ｘｔ、Ｙｔ）（すなわち抽出時に抽出位置決定部８０３が決定した座標（Ｘａ＿ｍｉｎ、Ｙａ＿ｍｉｎ）〜（Ｘｄ＿ｍｉｎ、Ｙｄ＿ｍｉｎ））と抽出した透かし情報とを比較することで、所望の内容を複写するか否かを判断する。
【０１４４】
＜＜透かし情報埋め込み方法＞＞
図３８は第３の実施形態における透かし情報の埋め込み装置の構成概念図である。既に説明した第２の実施形態の処理と異なるのは、埋め込み位置決定部３８０３が、埋め込み位置の座標に基づいて、透かし情報３８０４を生成するところであり、それ以外の処理は第２の実施形態と同様である。以下、透かし情報埋め込み方法の具体的な実現方法について述べる。
【０１４５】
図３９は、実施形態３における透かし情報埋め込み装置の動作手順を説明するためのフローチャートである。まず、文書取得部３８０１はステップＳ３９０１において文書３８００を取得する。
【０１４６】
ステップＳ３９０２において、文書解析部３８０２は取得した文書中のオブジェクトを検出する。ステップＳ３９０３において、埋め込み位置決定部３８０３は透かし情報を埋め込む位置を決定する。また、ステップＳ３９０４において、埋め込み位置決定部は、ステップＳ３８０３で決定した埋め込み位置の座標（Ｘｓ＿ｍｉｎ、Ｙｓ＿ｍｉｎ）を示す透かし情報３８０４を生成する。例えば、単純にＸｓ＿ｍｉｎとＹｓ＿ｍｉｎを連結したビット列であればよい。また、適宜符号化して情報量を減らしてもよい。
【０１４７】
ステップＳ３９０５において、透かし情報取得部３８０５は透かし情報３８０４を取得し、埋め込み部３８０６が透かし情報３８０４を文書３８００に埋め込む。透かし情報は埋め込み位置によって異なるため、埋め込み部３８０６は、着目埋め込み位置に対する透かし情報を選択し、着目埋め込み位置に対して埋め込む。最後に、ステップＳ３９０６において、出力部３８０７は情報付与文書１０８を出力する。
【０１４８】
＜＜透かし情報抽出方法＞＞
本実施形態に係る透かし情報抽出装置の構成は、図８に示される第２の実施形態における構成と同様のものであり、図９に示される第２の実施形態の手順に従って処理を行う。但し、確認情報として抽出位置を用いるため、確認情報取得部８０８は、抽出位置決定部８０３が決定した抽出位置の座標を確認情報８０９として取得する。各抽出位置毎に座標は異なり、それぞれの抽出位置に対して異なる値を確認情報とする。また、透かし情報判断部８０５の処理（ステップＳ９０５）は第２の実施形態とは異なる。以下、ステップＳ９０５での処理内容を図４０を参照して説明する。座標としては、情報付与文書１０８上での実際の長さ、例えばミリメートル単位の長さを用いるのがよい。データとしての入力文書及び撮像文書における画素単位の座標を用いることもできるが、出力部３８０７の出力解像度と文書取得部８０１の撮像解像度とを合わせるか、座標を解像度に応じて変換する必要がある。
【０１４９】
＜透かし情報判断部＞
図４０は、本実施形態における透かし情報の判断の一例を説明するためのフローチャートを示す図である。
【０１５０】
まず、ステップＳ９０５ｇでステップＳ９０４にて抽出した透かし情報の中から１つを選択する。例えば、文書の左上に近い抽出位置の透かし情報から順に選択する。
【０１５１】
ステップＳ９０５ｈで、ステップＳ９０５ｇで選択した透かし情報から、透かし情報が示す座標（Ｘｅ、Ｙｅ）を算出する。例えば、透かし情報がＸｓ＿ｍｉｎとＹｓ＿ｍｉｎとを単純に連結したものであれば分割すればよいし、符号化したものであれば伸張すればよい。
【０１５２】
ステップＳ９０５ｉで、確認情報取得部８０８が取得した確認情報８０９、すなわち抽出位置の座標と、ステップＳ９０５ｈで算出した座標とが等しいかを、誤差を考慮して判定する。具体的には、以下の式（２）をともに満たすか否かを判断すればよい。
【０１５３】
｜Ｘｅ−Ｘｔ｜  ＜  ＸＹ＿ｔｈ
｜Ｙｅ−Ｙｔ｜  ＜  ＸＹ＿ｔｈ  …（２）
ここで（Ｘｔ、Ｙｔ）は抽出位置の座標、ＸＹ＿ｔｈは埋め込み位置と抽出位置の座標の誤差許容範囲を示す任意の閾値である。抽出位置の座標と、ステップＳ９０５ｈで算出した座標との差分が閾値以内である場合に、情報の抽出が成功したと判断する。ＸＹ＿ｔｈは、ユーザが設定してもよいし、例えば撮像範囲の横幅の１／３、撮像面積の平方根等を、透かし情報抽出装置が算出してＸＹ＿ｔｈとしてもよい。ステップＳ９０５ｉの処理を行うことで、透かし情報を埋め込んだオブジェクトが、撮像文書において、情報付与文書と同じ座標にあることを確認できる。文書がずれている場合にはオブジェクトの情報付与文書における座標と撮像文書における座標が異なることから、文書のずれを検出して警告でき、よって複写の失敗を防止できる。透かし情報が埋め込み位置の座標を符号化したものである場合は、ステップＳ９０５ｈ及びＳ９０５ｉの処理の代わりに、抽出位置の座標（確認情報８０９）を同様の方法で符号化し、ステップＳ９０５ｇで選択した透かし情報と比較するようにしてもよい。
【０１５４】
ステップＳ９０５ｉで、式（２）を満たす場合（ＹＥＳ）は、ステップＳ９０５ｋに進み、式（２）を満たさない場合（ＮＯ）は、ステップＳ９０５ｊに進む。
【０１５５】
ステップＳ９０５ｊでは、正しい透かし情報を抽出できなかった抽出位置数を消失位置数Ｄとして、消失位置数Ｄをインクリメントする。なお、ステップＳ９０５開始時における消失位置数Ｄの初期値は０である。
【０１５６】
ステップＳ９０５ｋでは、全ての透かし情報についてステップＳ９０５ｉの判定を行っていると判断した場合（ＹＥＳ）、ステップＳ９０５ｌに進む。全ての透かし情報についてステップＳ９０５ｈの判定を行っていないと判断した場合（ＮＯ）、ステップＳ９０５ａに戻り、次の透かし情報を選択する。
【０１５７】
ステップＳ９０５ｌでは、消失位置数Ｄが０であるか否かを判断する。消失位置数Ｄが０である場合（ＹＥＳ）は、Ｓ９０５を終了し、ステップＳ９０６に進む。消失位置数Ｄが０でない場合（ＮＯ）は、ステップＳ９０５ｍに進む。
【０１５８】
ステップＳ９０５ｍに進んだ場合は、ステップＳ９０６に進むことなく、複写処理を行なわない。消失位置から複写できない原因を割り出し、例えば画面表示又は音声等の通知手段により、ユーザに通知する。透かし情報３８０４は、埋め込み位置の座標（Ｘｓ＿ｍｉｎ、Ｙｓ＿ｍｉｎ）に基づいて生成される情報なら何でもよい。もよいし、Ｘｓ＿ｍｉｎとＹｓ＿ｍｉｎとの和を１００で割った値の整数部分でもよい。
【０１５９】
第１の実施形態及び第２の実施形態では所定の固定されたビット列を透かし情報として埋め込んだ。しかし、本実施形態では埋め込み位置毎に異なる透かし情報を埋め込む。埋め込む透かし情報は、埋め込み位置の座標に限られない。例えば埋め込み位置がある位置が文書の上か下かを示す情報、若しくは文書の表面か裏面かを示す情報、又はその双方を含む情報を埋め込んでもよい。この場合埋め込み位置決定部３８０３は、埋め込み位置の座標を透かし情報３８０４として生成するのではなく、例えば上下、表裏を示す透かし情報を非図示のメモリから選択して透かし情報３８０４とすればよい。
【０１６０】
透かし情報が上下表裏を示す情報である場合、確認情報取得部８０８が取得する確認情報８０９も上下表裏を示す情報となる。例えば、透かし情報が上下を示す情報である場合、確認情報取得部８０８は、埋め込み位置の座標が撮像文書の上半分であれば上を示す確認情報を、埋め込み位置の座標が撮像文書の下半分であれば下を示す確認情報を、例えばユーザから、取得すればよい。また、例えば透かし情報が裏表を示す情報である場合、ユーザが複写することを所望する面が表であるか裏であるかを示す確認情報を取得すればよい。ユーザが表面のみを複写することを所望する場合、裏面であることを示す透かし情報を取得した場合に警告を発することができる。ユーザが表面と裏面とを交互に複写することを所望する場合も同様である。このように、透かし情報判断部８０５は、文書の上下、表裏を間違えて複写を行う場合に警告を発することができ、複数ページの文書を正確に複写できる。
【０１６１】
また、本実施形態に係る方法は、出力部８０６が撮像文書を出力するのではなく、情報付与文書に対して非図示の出力文書を重畳して出力する場合にも適用できる。この情報付与文書に対して非図示の出力文書を重畳して出力するための画像処理装置は、上記の透かし情報抽出装置が備える各部に加え、排紙制御部を備える。この画像処理装置は、セットされた紙文書を撮像文書として読み取り、本実施形態の方法で、撮像文書中における、紙文書上に記された情報の欠損の有無を判断する。排紙制御部は、セットされた紙文書を出力部を通して排紙可能である。排紙制御部は、欠損があると判断した場合には、出力を行わずに紙文書を排紙する。排紙制御部は、欠損がないと判断した場合には、別途取得した出力文書を紙文書上に画像形成してから紙文書を排紙する。
【０１６２】
情報付与文書に対して出力文書を重畳出力するこの方法は、例えば、葉書やコーティング紙の紙の上下や裏表が決まっている特殊な紙フォーマットに文書を印刷する場合に有効である。この構成においては、例えば撮像文書、すなわち印刷用紙の上半分から抽出した透かし情報が上を示す確認情報と一致しない場合は、撮像文書の上下が間違っていると判断できる。すなわち情報付与文書（印刷用紙）の上下が間違っているということであり、この場合に警告を発することができる。また、出力文書に、例えば表裏のどちらかに印刷されるべきであるかを示す情報を含むことにより、表裏を正しく出力することができる。例えば葉書の宛名のような、表面に印刷するべき出力文書を出力する場合、確認情報取得部８０８は確認情報として表面を示す確認情報を取得する。撮像文書から抽出した透かし情報が表面を示す確認情報と一致しない場合には、表裏が間違っていると判断し、警告を発することができる。
【０１６３】
［第４の実施形態］
上記第３の実施形態では、第２の実施形態で生じる、文書の内容の一部が消失してしまう場合を検出できないことがあるという問題に対処するために、各埋め込み位置の座標を透かし情報として生成して各埋め込み位置に埋め込んだ。本実施形態では、４隅のそれぞれからの距離が最も短いオブジェクト１つずつに透かし情報を埋め込むのではなく、４隅のそれぞれから所定の距離にある画素を含む全てのオブジェクトに対して透かし情報を埋め込む。例えば、図４のように埋め込み位置ではない「Ｔｉｔｌｅ」４０３にも透かし情報を埋め込むため、「Ｔｉｔｌｅ」４０３が撮像範囲を外れている場合を検出でき、ユーザに通知できる。
【０１６４】
透かし情報としては上述の実施形態で説明した情報を用いることができるが、文書内の透かし情報埋め込み位置の総数Ｎｐを透かし情報として各埋め込み位置に対して埋め込むこともできる。以下では、４隅のそれぞれから所定の距離内にある画素を含む全てのオブジェクトに対して透かし情報埋め込み位置の総数Ｎｐを埋め込む方法を詳細に説明する。
【０１６５】
＜＜透かし情報埋め込み方法＞＞
本実施形態に係る透かし情報埋め込み装置の構成は、図３８に示される第３の実施形態に係る構成と同様であり、図３９に示される第３の実施形態の処理手順に従って処理を行う。但し、図３９のステップのＳ３９０３及びステップＳ３９０４の処理内容は、第３の実施形態とは異なる。ステップＳ３９０３及びステップＳ３９０４の処理について、以下で詳述する。
【０１６６】
＜埋め込み位置決定部＞
図４１は、本実施形態における透かし情報の埋め込み位置を決定するステップＳ３９０３の詳細を説明するためのフローチャートを示す。ステップＳ３９０３の処理は、全て埋め込み位置決定部３８０３が行う。ステップＳ３９０３ａ、ｂ、ｃ、ｇ、ｈの処理は、第１の実施形態に係る図５のステップＳ２０３ａ、ｃ、ｄ、ｇ、ｈとほぼ同様である。
【０１６７】
まず、ステップＳ３９０３ａでオブジェクトを順次選択する。次に、ステップＳ３９０３ｂで、４隅Ａ、Ｂ、Ｃ、Ｄの１つを選択する。
【０１６８】
ステップＳ３９０３ｃで、ステップＳ３９０３ａで選択したオブジェクトに含まれる画素のうち、ステップＳ３９０３ｂで選択した４隅の１つと最も近い距離にある画素の座標（Ｘｓ、Ｙｓ）とその距離Ｒｓとを算出する。
【０１６９】
ステップＳ３９０３ｄで、ステップＳ３９０３ｃで算出したＲｓと４隅距離閾値Ｒｓ＿ｔｈとを比較する。ここで、４隅距離閾値Ｒｓ＿ｔｈは任意の値であり、ユーザが設定してもよいし、例えば撮像範囲の横画素数の１／３、撮像総画素数の平方根を１０で除した数等に、透かし情報埋め込み装置が自動的に設定してもよい。
【０１７０】
ステップＳ３９０３ｄで、Ｒｓ＿ｔｈよりもＲｓの方が小さいと判断した場合（ＹＥＳ）は、ステップＳ３９０３ｅに進む。Ｒｓ＿ｔｈよりもＲｓの方が小さい場合は、ステップＳ３９０３ａで選択したオブジェクトと、ステップＳ３９０３ｂで選択した４隅の１つとの距離が、閾値以下である場合に対応する。Ｒｓ＿ｔｈよりもＲｓの方が大きいか等しいと判断した場合（ＮＯ）は、ステップＳ３９０３ｇに進む。
【０１７１】
ステップＳ３９０３ｅでは、文書全体の総埋め込み位置数Ｎｐをインクリメントする。なお、ステップＳ３９０３を開始する時点でのＮｐの初期値は０とする。ステップＳ３９０３ｆでは、Ｎｐ番目の埋め込み位置の位置座標（Ｘ＿ｅｍ（Ｎｐ）、Ｙ＿ｅｍ（Ｎｐ））として（Ｘｓ、Ｙｓ）の値を格納する。
【０１７２】
ステップＳ３９０３ｇでは、ステップＳ３９０３ａで選択した１つのオブジェクトに対して、４隅全てについてステップＳ３９０３ｂ〜ｇの処理を行ったか否かを判断する。ステップＳ３９０３ｇでは、４隅全てについて処理を行っている場合（ＹＥＳ）は、ステップＳ３９０３ｈに進む。４隅全てについて処理を行っていない場合（ＮＯ）は、Ｓ３９０３ｂに戻り、選択していない４隅を選択する。
【０１７３】
最後のステップＳ３９０３ｈは、ステップＳ３９０３ａで文書３８００中の全てのオブジェクトを選択したか否かを判断する。ステップＳ３９０３ｈで、全てのオブジェクトを選択した場合（ＹＥＳ）、Ｓ３９０３を終了する。全てのオブジェクトを選択していない場合（ＮＯ）、Ｓ３９０３ａｂに戻り、次のオブジェクトを選択する。
【０１７４】
ステップＳ３９０４では、埋め込み位置決定部３８０３は、ステップＳ３９０３で求めた文書全体の総埋め込み位置数Ｎｐに基づいて、透かし情報３８０４を生成する。透かし情報３８０４は、総埋め込み位置数Ｎｐから計算される値であればよい。具体的には、総埋め込み位置数Ｎｐをそのまま透かし情報３８０４としてもよいし、総埋め込み位置数Ｎｐを４で割った余りを透かし情報３８０４にしてもよい。
【０１７５】
＜＜透かし情報抽出方法＞＞
本実施形態に係る透かし情報抽出装置の構成は、図８に示される第３の実施形態と同様のものであり、図９に示される第３の実施形態に係る処理手順に従って処理を行う。但し第３の実施形態とは、ステップＳ９０３−１からステップＳ９０５までの処理が異なる。ステップＳ９０３−１では、図４１に示すステップＳ３９０３における埋め込み位置決定部３８０３が行う処理と同様に、抽出位置決定部８０３が各抽出位置及び総抽出位置数Ｎｓを求める。ステップＳ９０３−２で、確認情報取得部８０８は総抽出位置数Ｎｓを確認情報８０９として取得する。ステップＳ９０４で、透かし情報抽出部８０４は透かし情報を抽出する。ステップＳ９０４では、第３の実施形態と同様に全ての抽出位置から透かし情報を抽出してもよい。しかし、総埋め込み位置数Ｎｐを全ての抽出位置に埋め込む本実施形態では、１か所の抽出位置から透かし情報を抽出すれば十分である。例えば、ステップＳ９０３−１が決定した抽出位置の１つ、（Ｘ＿ｅｍ（１）、Ｙ＿ｅｍ（１））だけから透かし情報を抽出すればよい。以下、透かし情報は１か所の抽出位置だけから抽出したものとして説明する。
【０１７６】
そしてステップＳ９０５において、透かし情報判断部８０５は総抽出位置数ＮｓとステップＳ９０４で抽出した透かし情報とを比較し、複写するか否かを判断する。すなわち、本実施形態に係る透かし情報埋め込み装置が判断した総埋め込み位置数Ｎｐと、本実施形態に係る透かし情報抽出装置が判断した総抽出位置数Ｎｓとを比較することにより、図３７に代表される原稿のずれを検出する。例えば図３７の場合、埋め込み位置の存在する「Ｔｉｔｌｅ」は、撮像範囲を外れているため、抽出装置には抽出位置として認識されない。このため、ＮｓはＮｐ未満となり、本実施形態に係る抽出装置は警告を発する。ステップＳ９０５における透かし情報判断部８０５の具体的な処理内容を、図４２を参照して以下で説明する。
【０１７７】
＜透かし情報判断部＞
図４２は、本実施形態における、透かし情報判断部８０５による透かし情報の判断の一例を説明するためのフローチャートを示す。
【０１７８】
まず、ステップＳ９０５ｎにおいて、ステップＳ９０３で取得した総抽出位置数Ｎｓと、ステップＳ９０４で取得した透かし情報とが等しいか否かを判断する。透かし情報をＮｐ’とし、Ｎｓ＝Ｎｐ’であると判断した場合（ＹＥＳ）は、ステップＳ９０５を終了し、ステップＳ９０６に進む。Ｎｓ＝Ｎｐ’ではないと判断した場合（ＮＯ）は、ステップＳ９０５ｏに進む。
【０１７９】
ステップＳ９０５ｏに進んだ場合は、ステップＳ９０６に進むことなく、よって複写処理を行なわない。ステップＳ９０５ｏでは、消失位置数Ｄを式３により算出する。
【０１８０】
Ｄ＝｜Ｎｐ’−Ｎｓ｜  …（３）
ここで、式（３）の算出値が絶対値なのは、所望の文書が正しくセットされていない場合に文書の４隅付近ではない複数のオブジェクトを抽出位置と判断することにより、Ｎｓの値がＮｐ’の値より大きくなる場合を考慮しているからである。
【０１８１】
最後に、ステップＳ９０５ｐにおいて、ステップＳ９０３で取得した総抽出位置数Ｎｓと、ステップＳ９０４で取得した透かし情報とが等しくない原因を割り出し、例えば画面表示又は音声等の通知手段で、ユーザに原因を通知する。これは、第１の実施形態に係る図１１のステップＳ９０５ｆの処理と同様である。
【０１８２】
［第５の実施形態］
本実施形態において透かし情報埋め込み装置は、文書中に記されている文字に係る情報を、１以上の文字列の文字間隔を操作することにより透かし情報として埋め込む。本実施形態では例として、文書全体の文字列の間隔を操作する。文字に係る情報として、例えば文書中に埋め込み可能な情報量である総埋め込み量Ｔｐを用いることができ、この場合Ｔｐ自身を透かし情報として文書に埋め込む。Ｔｐは、より具体的には文書中の文字間隔数、あるいは文字数から求めることが可能である。透かし情報抽出装置は、透かし情報を抽出してＴｐを取得するとともに、撮像文書全体の総抽出量Ｔｓを、総埋め込み量Ｔｐと同様に算出する。総抽出量Ｔｓは、撮像文書中の文字に係る情報といえる。ＴｐとＴｓとを比較することで、透かし情報抽出装置は、文書を正しく取得できているかを判断でき、もって複写を許可するか否かを決定できる。
【０１８３】
また、第１実施形態から第４の実施形態までとは異なり、文書の４隅の位置情報を使用せずに透かし情報等を埋め込む。総埋め込み量Ｔｐを埋め込む方法と４隅の位置情報を使用せずに透かし情報を埋め込む方法は独立に行うことができるが、本実施形態ではこの２つの方法を併用する。
【０１８４】
＜＜透かし情報埋め込み方法＞＞
図２７は、第６の実施形態における透かし情報埋め込み装置の構成図を示す。第６の実施形態による透かし情報埋め込み装置は、次の構成を備える。文書２７００を取得する文書取得部２７０１。文書２７００の文字間隔数から総埋め込み量Ｔｐを算出し、総埋め込み量Ｔｐから透かし情報２７０３を生成する文書解析部２７０２。透かし情報取得部２７０４が取得した透かし情報２７０３を用いて、透かし情報の埋め込みを行なう埋め込み部２７０５。情報付与文書２７０７を出力する出力部２７０６。以下、透かし情報の埋め込み方法の具体的な実現方法について述べる。
【０１８５】
図２８は、第６の実施形態６における透かし埋め込み装置の動作手順を説明するためのフローチャートを示す。
【０１８６】
まず、ステップＳ２８０１において、文書取得部２７０１は文書２７００を入力文書として取得する。ステップＳ２８０２において、文書解析部２７０２は総埋め込み量Ｔｐを算出する。総埋め込み量ＴｐはＴｐは文書全体の文字列が含む２つの文字間隔Ｐ、Ｓの１組を１ビットとしてカウントすることで得られる。文書解析部２７０２は文書２７００中の文字オブジェクトを検出し、第１の実施形態に係る埋め込み部１０６が行うのと同じように、文字間隔Ｐ、Ｓの組を順次選択しながら、文字間隔Ｐ、Ｓの組の数を調べ、総埋め込み量Ｔｐを求める。あるいは、もっと単純に文書２７００に含まれる文字オブジェクトの各行の文字数を２で割ったものの合計をＴｐとしてもよい。図３５の例では、撮像範囲３５０１に存在する文書３５０２のＴｐは１００ビットであるとする。ステップＳ２８０３において、文書解析部２７０２は、ステップＳ２８０２で算出したＴｐから透かし情報を生成する。本実施形態ではＴｐをそのまま透かし情報として用いるが、Ｔｐに何らかの操作を加えて透かし情報としてもよい。
【０１８７】
ステップＳ２８０４において、透かし情報２７０３を透かし情報取得部２７０４が取得し、埋め込み部２７０５は透かし情報２７０３を入力文書に埋め込み、情報付与文書２７０７を生成する。透かし情報の埋め込みは、入力文書全体の文字間隔を操作することで行う。例えば、第１の実施形態と同様の方法で、文字間隔の組Ｐ、Ｓを順次選択して透かし情報２７０３を埋め込む。第１の実施形態では１つの埋め込み位置について１つの透かし情報しか埋め込まなかったが、本実施形態では１つの文字オブジェクトに対して同じ透かし情報を連続して埋め込む。すなわち、文字オブジェクトの１つに着目し、着目文書オブジェクトの先頭から文字間隔の組Ｐ、Ｓを順次選択して透かし情報２７０３を埋め込む。１つの透かし情報２７０３を埋め込んだら、さらに続けて文字間隔の組Ｐ、Ｓを順次選択し、同じ透かし情報２７０３を埋め込むことを繰り返す。連続して埋め込む場合には、埋め込まれた１つの透かし情報の途中から抽出を開始した場合にも正しく透かし情報を解読できる方法、例えば開始ビット及び終了ビットを用いる方法、を使用することが好ましい。文字オブジェクトの選択と透かし情報の埋め込みを繰り返し、文書中の全てのオブジェクトに対して透かし情報２７０３を埋め込む。
【０１８８】
最後に、ステップＳ２８０５において、出力部２７０６は情報付与文書２７０７を出力する。
【０１８９】
＜＜透かし情報抽出方法＞＞
図２９は、第５の実施形態に係る透かし情報抽出装置の構成図を示す。図２９に示すように、文書取得部２９０１は情報付与文書２７０７を撮像して撮像文書として取得する。文書解析部２９０２は、文書の撮像範囲に含まれる文字間隔数から総抽出量Ｔｓを算出する。透かし情報抽出部２９０３は、透かし情報の抽出を行う。最後に透かし情報判断部２９０４は、抽出した透かし情報からＴｐを算出し、ＴｓとＴｐが等しいならば出力部２９０５は複写文書２９０６を出力する。以下、透かし情報抽出方法の具体的な実現方法について述べる。
【０１９０】
図３０は、第６の実施形態における透かし情報抽出装置の動作手順を説明するためのフローチャートを示す。
【０１９１】
まず、ステップＳ３００１において、文書取得部２９０１は情報付与文書２７０７を撮像し、撮像文書として取得する。ステップＳ３００２において、文書解析部２９０２は総抽出量Ｔｓを算出する。算出方法は透かし情報埋め込み時にＴｐを算出したのと同様である。ステップＳ３００３において、透かし情報抽出部２９０３は撮像範囲全体の文字列の文字間隔から透かし情報を抽出する。文字間隔からの透かし情報の抽出は、第１の実施形態と同様に実現できるが、本実施形態では文書中の文字オブジェクトの何れか１つから透かし情報を抽出すれば十分である。
【０１９２】
ステップＳ３００４において、透かし情報抽出部２９０３はステップＳ３００３で抽出した透かし情報からＴｐを算出する。本実施形態では、ステップＳ３００３で抽出した透かし情報をそのままＴｐとすればよい。以下のからステップＳ３００５において、透かし情報判断部２９０４はＴｓとＴｐが合致するか否かを判断する。Ｔｓ＝Ｔｐである場合（ＹＥＳ）は、ステップＳ３００６に進み、Ｔｓ＝Ｔｐでない場合（ＮＯ）は、ステップＳ３００７に進む。ステップＳ３００４及びＳ３００５の代わりに、総抽出量Ｔｓに対してステップＳ２８０３と同じ操作を行って得た値が、ステップＳ３００３で抽出した透かし情報と合致するかどうかを判断してもよい。
【０１９３】
ステップＳ３００６に進んだ場合は出力部２９０５が撮像文書を複写文書２９０６として出力する。ステップＳ３００７に進んだ場合は出力処理を行なわない。また、第１の実施形態と同様に、ユーザに複写できないことを通知する。出力処理を行なわない例として、図３６のように文書３６０２が撮像範囲３６０１に収まっていない場合が挙げられる。この場合は、文字が欠けることによりＴｓはＴｐよりも少なくなり（この例では８０ビット）Ｔｐ＝１００ビットと等しくならず、文書が欠けていることを検出できる。
【０１９４】
なお、本実施形態では、文字間に埋め込み可能な情報量を透かし情報として、文字間隔を操作して透かし情報を埋め込む方法を用いて埋め込んだ。しかしながら、埋め込み可能な情報量を透かし情報として埋め込み、抽出時に透かし情報と総抽出量とが適合するかを比較できるならば、他の透かし情報埋め込み方法にも本実施形態の方法は適用できる。
【０１９５】
［第６の実施形態］
次に、文書にオブジェクトに透かし情報を埋め込むのではなく、文書の４隅に近い位置にマークを付加する（埋め込む）方法を説明する。マークを文書に埋め込んだ例を図２４に示す。図２４に示すように文書３０１を取得すると、本実施形態に係るマーク埋め込み装置は、文書２４０１のように、４隅に近い位置（２４０１ａ〜２４０１ｄ）にマークを埋め込んだ文書を生成する。マークは、文書の４隅のそれぞれから、それぞれの所定の方向に所定の距離離れた部分に埋め込めばよい。
【０１９６】
＜＜マーク埋め込み方法＞＞
図３３は、本実施形態におけるマーク埋め込み装置の構成概念図である。第５の実施形態に係るマーク埋め込み装置は、以下の構成を備える。すなわち、文書３３００を取得する文書取得部３３０１。埋め込み位置を決定する埋め込み位置決定部３３０２。マークの埋め込みを行なうマーク埋め込み部３３０３。情報付与文書３３０５を出力する出力部３３０４。以下、マーク埋め込み方法の具体的な実現方法について述べる。
【０１９７】
図２３は、本実施形態に係るマーク埋め込み装置の動作手順を説明するためのフローチャートである。
【０１９８】
まずステップＳ２３０１において、文書取得部３３０１は文書３３００を取得する。ステップＳ２３０２において、埋め込み位置決定部３３０２はマークを埋め込む位置を決定する。埋め込み位置は４隅である点Ａ〜Ｄからそれぞれの所定の方向に所定の距離離れた位置として決定すればよい。例えば、図４の点Ａに対しては、点Ａから右に１ｃｍ、下に１ｃｍ離れた点をマーク位置とし、点Ｄに対しては、点Ｄから左に１ｃｍ、上に１ｃｍ離れた点をマーク位置すればよい。点Ｂ、Ｃについても同様である。
【０１９９】
ステップＳ２３０３において、マーク埋め込み部３３０３はマークの埋め込みを行う。マークは任意の物で良く、例えばドットであればよい。入力された文書の特徴によって、マークの種類を変更することも可能である。例えば、図２５に示すように、文書に裏表がある場合（２５０１）は、表面には横に２つ並べたドットを用い、裏面には縦に２つ並べたドットを用いることで、裏表を区別してマークすることができる。また、情報付与文書を本にして、これを複写することを所望する場合（２５０２）もある。この場合には、文書２５０２に示されるように３つのドットをマークとして用いると、綴じ部付近が抜け落ちることなく複写されるかどうかを判断することができる。
【０２００】
最後に、ステップＳ２３０４において、出力部３３０４は情報付与文書３３０５を出力する。
【０２０１】
＜＜マーク抽出方法＞＞
図３４は、本実施形態に係るマーク抽出装置の構成図を示す。図３４に示すように、第５の実施形態に係るマーク埋め込み装置が出力した情報付与文書３３０５は、文書取得部３４０１が撮像文書として取得する。抽出位置決定部３４０２は、撮像範囲の４隅の位置に基づいて抽出位置を決定する。マーク抽出部３４０３は、マークの抽出を行う。最後にマーク判断部３４０４は、抽出されたマークが正しいかどうかを判断し、複写の是非を決定する。マーク判断部３４０４が複写を許可すると、出力部３４０５は撮像文書を複写文書３４０６として出力する。以下、マーク抽出装置の具体的な実現方法について述べる。
【０２０２】
図２６は、第５の実施形態５に係るマーク抽出装置の動作手順を説明するためのフローチャートを示す。
【０２０３】
まず、ステップＳ２６０１において、文書取得部３４０１は、情報付与文書３３０５を撮像し、撮像文書として取得する。ステップＳ２６０２において、抽出位置決定部３４０２は、マークを抽出する抽出位置を決定する。決定方法はマーク埋め込み時の埋め込み位置決定方法と同様である。ステップＳ２６０３において、マーク抽出部３４０３は、ステップＳ２６０２で決定したマーク抽出位置からマークの発見できるか否かを判断し、発見した場合には抽出を行う。発見及び抽出は、公知のパターンマッチングにより、各抽出位置のマークを判断することにより行う。
【０２０４】
ステップＳ２６０４において、マーク判断部３４０４は、各抽出位置のマークを全て正しく抽出できたか否かを判断する。すなわち、マークを発見できたかを判断し、抽出したマークが埋め込んだマークと同じか、あるいは抽出したマークが所望の位置（上下、裏表等）を示すマークであるかを判断する。全て正しく抽出できたと判断した場合（ＹＥＳ）は、ステップＳ２６０５に進み、正しく抽出できなかったと判断した場合（ＮＯ）は、ステップＳ２６０６に進む。
【０２０５】
ステップＳ２６０５に進んだ場合は、出力部３４０５が撮像文書を複写文書３４０６として出力する。ステップＳ２６０６に進んだ場合は複写処理を行なわない。マーク判断部３４０４は、第１の実施形態と同様に、マークが抽出できなかった原因を割り出し、ユーザに複写できないことを通知する。
【０２０６】
［第７の実施形態］
第７の実施形態では、上述の各実施形態に係る夫々の処理をコンピュータ３１００により行なわせる。図３１はコンピュータ３１００の基本構成を示す図である。例えばこのコンピュータ３１００において、全ての機能を実行する場合、各機能構成をコンピュータプログラムにより表現し、このコンピュータ３１００に読み込ませることで、このコンピュータで上述の実施形態の全ての機能を実現することができる。
【０２０７】
同図において、３１０１はＣＰＵで、ＲＡＭ３１０２やＲＯＭ３１０３に格納されているプログラムやデータを用いて、コンピュータ３１００内の各ブロック制御を行う。また、ＣＰＵ３１０１は、上述の各実施形態に係る、本コンピュータ３１００を適用した装置が行う各処理を実行する。
【０２０８】
３１０２はＲＡＭで、外部記憶装置３１０８からロードされたプログラムやデータ、他のコンピュータシステム３１１４からＩ／Ｆ（インターフェース）３１１５を介してダウンロードしたプログラムやデータを一時的に記憶するエリアを備える。また、ＲＡＭ３１０２は、ＣＰＵ３１０１が各種の処理を行なうために必要とするエリアを備える。
【０２０９】
３１０３はＲＯＭで、コンピュータ３１００の機能プログラムや設定データ等を記憶する。３１０４はディスプレイ制御装置で、画像や文字等をディスプレイ３１０５に表示させるための制御処理を行なう。３１０５はディスプレイで、画像や文字等を表示する。なお、ディスプレイとしてはＣＲＴや液晶画面等が適用可能である。
【０２１０】
３１０６は操作入力デバイスで、キーボードやマウス等、ＣＰＵ３１０１に各種の指示を入力することのできるデバイスにより構成されている。３１０７は操作入力デバイス３１０６を介して入力された各種の指示等をＣＰＵ３１０１に通知するためのＩ／Ｏである。
【０２１１】
３１０８はハードディスク等の大容量情報記憶装置として機能する外部記憶装置で、ＯＳ（オペレーティングシステム）や上述の各実施形態に係る処理をＣＰＵ３１０１に実行させるためのプログラム、入出力原稿画像等を記憶する。外部記憶装置３１０８に保存されているプログラムやデータは、ＣＰＵ３１０１による制御に従って適宜ＲＡＭ３１０２にロードされ、ＣＰＵ３１０１による処理対象となる。なお、ＲＡＭ３１０２に記憶するものとして説明した情報の幾つかについては外部記憶装置３１０８に保存するようにしてもよい。外部記憶装置３１０８への情報の書き込みや外部記憶装置３１０８からの情報の読み出しはＩ／Ｏ３１０９を介して行われる。
【０２１２】
３１１０は文書や画像を出力する為のプリンタで、出力データはＩ／Ｏ３１１１を介してＲＡＭ３１０２、若しくは外部記憶装置３１０８から送られる。なお、文書や画像を出力する為のプリンタとしては、例えばインクジェットプリンタ、レーザビームプリンタ、熱転写型プリンタ、ドットインパクトプリンタ等が挙げられる。
【０２１３】
３１１２は文書や画像を読み取るためのスキャナで、入力データはＩ／Ｏ３１１３を介してＲＡＭ３１０２、若しくは外部記憶装置３１０８に送られる。
【０２１４】
３１１６は、ＣＰＵ３１０１、ＲＯＭ３１０３、ＲＡＭ３１０２、Ｉ／Ｏ３１１１、Ｉ／Ｏ３１０９、ディスプレイ制御装置３１０４、Ｉ／Ｆ３１１５、Ｉ／Ｏ３１０７、Ｉ／Ｏ３１１３を繋ぐバスである。
【０２１５】
なお本実施形態では、スキャンやプリントを除く処理をコンピュータ３１００により行っているが、スキャナやプリンタ内部の専用のハードウェア回路を用いて、コンピュータ３１００で行なう処理を代行してもよい。
【０２１６】
［その他の実施形態］
なお、本実施形態は、複数の機器（例えば、ホストコンピュータ、インターフェース機器、リーダ、プリンタ等）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、複合機、ファクシミリ装置等）に適用してもよい。
【０２１７】
また、以下のようにしても前述の各実施形態の目的は達成される。すなわち、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体（又は記憶媒体）を、システムあるいは装置に供給する。そのシステムあるいは装置のコンピュータ（又はＣＰＵやＭＰＵ）は、記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本実施形態を構成することになる。また、読み出したプログラムコードを利用する場合、コンピュータがそのプログラムコードを実行することによってのみ、前述した実施形態の機能が実現されるわけではない。そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も、各実施形態に含まれることは言うまでもない。
【０２１８】
さらに、以下の処理によって前述した実施形態の機能が実現される場合も、各実施形態に含まれることは言うまでもない。すなわち、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行ってもよい。
【０２１９】
本実施形態を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートや機能構成に対応するプログラムコードが格納されることになる。
【０２２０】
なお、上記各実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【図面の簡単な説明】
【０２２１】
【図１】第１の実施形態及び第２の実施形態に係る透かし情報埋め込み装置の構成概念図である。
【図２】第１の実施形態及び第２の実施形態に係る透かし情報の埋め込み手順を示すフローチャートである。
【図３】文書におけるオブジェクトの構成例を示す図である。
【図４】第１の実施形態及び第２の実施形態における文書の撮像範囲の４隅及び文書の埋め込み位置の例を示す図である。
【図５】第１の実施形態における埋め込み位置を決定する手順を示すフローチャートである。
【図６】第１の実施形態における、文字間隔を操作して透かし情報を埋め込む手順を示すフローチャートである。
【図７】文字間隔の組の例を示す図である。
【図８】第１〜第４の実施形態に係る透かし情報抽出装置の構成概念図である。
【図９】第１〜第４の実施形態に係る透かし抽出手順を示すフローチャートである。
【図１０】第１の実施形態における各抽出位置において文字間隔の大小から透かし情報を抽出する手順を示すフローチャートである。
【図１１】第１及び第２の実施形態における抽出された透かし情報が正しいかどうかを判断する手順を示すフローチャートである。
【図１２】複写時の文書のセットミスにより、文字が斜めになってしまった例を示す図である。
【図１３】第２の実施形態における埋め込み位置を決定する手順を示すフローチャートである。
【図１４】第２の実施形態における、透かし情報の埋め込み手順を示すフローチャートである。
【図１５】第２の実施形態における、文字間隔を操作して透かし情報を埋め込む手順を示すフローチャートである。
【図１６】第２の実施形態における、文字に対してドットパターンを施すことにより透かし情報を埋め込む手順を示すフローチャートである。
【図１７】文字に対してドットパターンを施した例を示す図である。
【図１８】第２の実施形態における、画像オブジェクトに対して透かし情報を埋め込む手順を示すフローチャートである。
【図１９】第２の実施形態における、各種抽出方法を用いた抽出手順を示すフローチャートである。
【図２０】第２の実施形態における文字間隔の大小関係から透かし情報を抽出する手順を示すフローチャートである。
【図２１】第２の実施形態における文字に施されたドットパターンから透かし情報を抽出する手順を示すフローチャートである。
【図２２】第２の実施形態における画像オブジェクトから透かし情報を抽出する手順を示すフローチャートである。
【図２３】第６の実施形態におけるマーク埋め込み手順を示すフローチャートである。
【図２４】第６の実施形態における文書に対するマークの埋め込み例を示した図である。
【図２５】第６の実施形態における、文書に裏表がある場合や文書が本である場合の埋め込み例を示した図である。
【図２６】第６の実施形態におけるマーク抽出手順を示すフローチャートである。
【図２７】第５の実施形態に係る透かし情報埋め込み装置の構成概念図である。
【図２８】第５の実施形態における透かし情報埋め込み手順を示すフローチャートである。
【図２９】第５の実施形態に係る透かし情報抽出装置の構成概念図である。
【図３０】第５の実施形態における透かし情報抽出手順を示すフローチャートである。
【図３１】第７の実施形態に係るコンピュータの基本構成を示す図である。
【図３２】第１及び第２の実施形態における、透かし情報抽出時に文書が読取範囲から外れてセットされた例を示す図である。
【図３３】第６の実施形態に係るマーク埋め込み装置の構成概念図である。
【図３４】第６の実施形態に係るマーク抽出装置の構成概念図である。
【図３５】第５の実施形態における総埋め込み量Ｔｐ及び総抽出量Ｔｓの計算例を示す図である。
【図３６】第５の実施形態における総抽出量Ｔｓが総埋め込み量Ｔｐと等しくない場合の例を示す図である。
【図３７】文書のセットミスにより、文書の表題の部分が撮像範囲からはみ出した例を示す図である。
【図３８】第３及び第４の実施形態に係る透かし情報埋め込み装置の構成概念図である。
【図３９】第３及び第４の実施形態における透かし情報の埋め込み手順を示すフローチャートである。
【図４０】第３の実施形態における透かし情報に基づく判断の手順を示すフローチャートである。
【図４１】第４の実施形態における埋め込み位置を決定する手順を示すフローチャートである。
【図４２】第４の実施形態における透かし情報に基づく判断の手順を示すフローチャートである。
【図４３】文字間隔を操作して透かし情報を埋め込む際に文字間隔の組を選択する順序を説明する図である。
【図４４】画素値を操作して透かし情報を埋め込む際に画素を選択する順序を説明する図である。
【図１】
2010171736.tif 000004
【図２】
2010171736.tif 000005
【図３】
2010171736.tif 000006
【図４】
2010171736.tif 000007
【図５】
2010171736.tif 000008
【図６】
2010171736.tif 000009
【図７】
2010171736.tif 000010
【図８】
2010171736.tif 000011
【図９】
2010171736.tif 000012
【図１０】
2010171736.tif 000013
【図１１】
2010171736.tif 000014
【図１２】
2010171736.tif 000015
【図１３】
2010171736.tif 000016
【図１４】
2010171736.tif 000017
【図１５】
2010171736.tif 000018
【図１６】
2010171736.tif 000019
【図１７】
2010171736.tif 000020
【図１８】
2010171736.tif 000021
【図１９】
2010171736.tif 000022
【図２０】
2010171736.tif 000023
【図２１】
2010171736.tif 000024
【図２２】
2010171736.tif 000025
【図２３】
2010171736.tif 000026
【図２４】
2010171736.tif 000027
【図２５】
2010171736.tif 000028
【図２６】
2010171736.tif 000029
【図２７】
2010171736.tif 000030
【図２８】
2010171736.tif 000031
【図２９】
2010171736.tif 000032
【図３０】
2010171736.tif 000033
【図３１】
2010171736.tif 000034
【図３２】
2010171736.tif 000035
【図３３】
2010171736.tif 000036
【図３４】
2010171736.tif 000037
【図３５】
2010171736.tif 000038
【図３６】
2010171736.tif 000039
【図３７】
2010171736.tif 000040
【図３８】
2010171736.tif 000041
【図３９】
2010171736.tif 000042
【図４０】
2010171736.tif 000043
【図４１】
2010171736.tif 000044
【図４２】
2010171736.tif 000045
【図４３】
2010171736.tif 000046
【図４４】
2010171736.tif 000047