(57)【特許請求の範囲】
【請求項１】
データ処理及び印刷システムにおいて実施され、印刷文書上に印刷された画像のみを用いて認証する自己認証的な印刷文書の生成方法であって、
（ａ）原稿画像を取得する工程と、
（ｂ）前記原稿画像中の特徴画像を抽出するか、又は前記原稿画像のデータ量を減らして、処理済データを生成する工程と、
（ｃ）前記工程（ｂ）で生成された前記処理済データから、当該処理済データの特徴を一意的に表すコードを計算し、当該コードをコード化してバーコードスタンプ要素を生成する工程と、
（ｄ）予め定義されたパターンに従って、前記バーコードスタンプ要素を反復することにより、階層的バーコードスタンプを生成する工程と、
（ｅ）前記処理済データをバーコード化して原稿画像認証用の２次元バーコードスタンプを生成する工程と、
（ｆ）記録媒体の表面又は裏面に前記２次元バーコードスタンプを印刷し、当該記録媒体の表面に前記階層的バーコードスタンプ及び前記原稿画像を印刷する工程と、を有し、
前記工程（ｆ）において、前記階層的バーコードスタンプはグレートーンタイルを用いて印刷され、前記原稿画像は黒色で印刷され、前記階層的バーコードスタンプと前記原稿画像は、少なくとも黒色で印刷された前記原稿画像のいくつかの内容が前記階層的バーコードスタンプのいくつかのグレートーンタイルと重なるように、互いに重なり合っていることを特徴とする方法。
【請求項２】
前記工程（ｃ）は、
前記工程（ｂ）で生成された前記処理済データからハッシュコードを生成する工程と、
前記ハッシュコードをコード化して前記バーコードスタンプ要素を生成する工程と、を有し、
前記工程（ｄ）は、
前記予め定義されたパターンに従って前記バーコードスタンプ要素を反復することにより、前記バーコードスタンプ要素から前記階層的バーコードスタンプを生成する工程を有することを特徴とする請求項１に記載の方法。
【請求項３】
前記２次元バーコードスタンプは前記印刷文書に関連するメタデータを更にコード化し、前記工程（ｄ）において、前記階層的バーコードスタンプは前記メタデータを更にコード化することを特徴とする請求項１又は２に記載の方法。
【請求項４】
前記処理済データは、抽出されたグラフィックスオブジェクト、抽出されたビットマップ画像オブジェクト、抽出されたテキスト、前記原稿画像の空間解像度がより低いバージョン、及び前記原稿画像の圧縮バージョンのうちの一以上を含むことを特徴とする請求項１〜３のいずれか一項に記載の方法。
【請求項５】
データ処理システムにおいて実施される印刷文書の認証方法であって、
前記印刷文書は、記録媒体の表面に印刷された階層的バーコードスタンプ及び文書画像と、前記同じ記録媒体の表面又は裏面に印刷された２次元バーコードスタンプと、を含み、
前記方法は、
（ａ）前記印刷文書から表面画像、又は表面画像及び裏面画像の双方の画像を取得する工程と、
（ｂ）前記表面画像から前記文書画像及び前記階層的バーコードスタンプを抽出する工程と、
（ｃ）前記工程（ｂ）で抽出した前記文書画像中の特徴画像を抽出するか、又は前記文書画像のデータ量を減らして、第１の処理済データを取得する工程と、
（ｄ）前記工程（ｂ）で抽出した前記階層的バーコードスタンプから第１のコードを抽出する工程と、
（ｅ）前記表面画像又は前記裏面画像における前記２次元バーコードスタンプを読み取り、デコードして、第２の処理済データを取得する工程と、
（ｆ）前記第２の処理済データの特徴を一意的に表す第２のコードを計算する工程と、
（ｇ）前記第１のコード及び第２のコードを比較して、前記２次元バーコードスタンプが改変されたか否かを決定する工程と、
（ｈ）前記第１の処理済データ及び第２の処理済データを比較して、前記印刷文書が改変されたか否かを決定する工程と、
を有することを特徴とする方法。
【請求項６】
前記階層的バーコードスタンプは前記文書の前記表面において背景パターンを形成し、前記文書画像は前記背景パターンに重なっていることを特徴とする請求項５に記載の方法。
【請求項７】
前記背景パターンは、グレートーンで印刷された、又は無印刷のバーコードタイルを含み、前記文書画像は、黒で印刷された２値画像であり、前記工程（ｂ）は、前記表面画像においてグレーピクセルと黒ピクセルとを識別する工程を含むことを特徴とする請求項６に記載の方法。
【請求項８】
前記工程（ｄ）は、
（ｄ１）予め定義されたパターンに従って反復されたバーコードスタンプ要素を含む前記階層的バーコードスタンプからバーコードスタンプ要素を生成する工程と、
（ｄ２）前記バーコードスタンプ要素をデコードして前記第１のコードを取得する工程と、
を有することを特徴とする請求項５〜７のいずれか一項に記載の方法。
【請求項９】
（ｉ）前記工程（ｂ）で抽出された前記階層的バーコードスタンプから第１のメタデータを抽出する工程と、
（ｊ）前記２次元バーコードスタンプにコード化された第２のメタデータを取得する工程と、
（ｋ）前記第１のメタデータ及び前記第２のメタデータを比較して、前記印刷文書が改変されたか否かを判断する工程と、
を更に有することを特徴とする請求項５〜８のいずれか一項に記載の方法。
【請求項１０】
前記第１の処理済データは、抽出されたグラフィックスオブジェクト、抽出されたビットマップ画像オブジェクト、抽出されたテキスト、前記文書画像の空間解像度がより低いバージョン、及び前記文書画像の圧縮バージョンのうちの一以上を含むことを特徴とする請求項５〜９のいずれか一項に記載の方法。
【請求項１１】
データ処理装置に、印刷文書上に印刷された画像のみを用いて認証する自己認証的な印刷文書の生成処理を実行させるためのプログラムであって、
前記処理は、
（ａ）原稿画像を受信する工程と、
（ｂ）前記原稿画像中の特徴画像を抽出するか、又は前記原稿画像のデータ量を減らして、処理済データを生成する工程と、
（ｃ）前記工程（ｂ）で生成された前記処理済データから、当該処理済データの特徴を一意的に表すコードを計算し、当該コードをコード化してバーコードスタンプ要素を生成する工程と、
（ｄ）予め定義されたパターンに従って、前記バーコードスタンプ要素を反復することにより、階層的バーコードスタンプを生成する工程と、
（ｅ）前記処理済データをバーコード化して原稿画像認証用の２次元バーコードスタンプを生成する工程と、
（ｆ）記録媒体の表面又は裏面に前記２次元バーコードスタンプを印刷し、当該記録媒体の表面に前記階層的バーコードスタンプ及び前記原稿画像を印刷するようにプリンタを制御する工程と、を有し、
前記工程（ｆ）において、前記階層的バーコードスタンプはグレートーンタイルを用いて印刷され、前記原稿画像は黒色で印刷され、前記階層的バーコードスタンプと前記原稿画像は、少なくとも黒色で印刷された前記原稿画像のいくつかの内容が前記階層的バーコードスタンプのいくつかのグレートーンタイルと重なるように、互いに重なり合っていることを特徴とするプログラム。
【請求項１２】
前記工程（ｃ）は、
前記工程（ｂ）で生成された前記処理済データからハッシュコードを生成する工程と、
前記ハッシュコードをコード化して前記バーコードスタンプ要素を生成する工程と、を有し、
前記工程（ｄ）は、
前記予め定義されたパターンに従って前記バーコードスタンプ要素を反復することにより、前記バーコードスタンプ要素から前記階層的バーコードスタンプを生成する工程を有することを特徴とする請求項１１に記載のプログラム。
【請求項１３】
前記２次元バーコードスタンプは、前記印刷文書に関連するメタデータを更にコード化し、前記工程（ｄ）において、前記階層的バーコードスタンプは前記メタデータを更にコード化することを特徴とする請求項１１又は１２に記載のプログラム。
【請求項１４】
前記処理済データは、抽出されたグラフィックスオブジェクト、抽出されたビットマップ画像オブジェクト、抽出されたテキスト、前記原稿画像の空間解像度がより低いバージョン、及び前記原稿画像の圧縮バージョンのうちの一以上を含むことを特徴とする請求項１１〜１３のいずれか一項に記載のプログラム。
【請求項１５】
データ処理装置に、記録媒体の表面に印刷された階層的バーコードスタンプ及び文書画像と、前記同じ記録媒体の表面又は裏面に印刷された２次元バーコードスタンプと、を含む印刷文書の認証処理を実行させるためのプログラムであって、
前記処理は、
（ａ）前記印刷文書から表面画像、又は表面画像及び裏面画像の双方の画像を受信する工程と、
（ｂ）前記表面画像から前記文書画像及び前記階層的バーコードスタンプを抽出する工程と、
（ｃ）前記工程（ｂ）で抽出した前記文書画像中の特徴画像を抽出するか、又は当該文書画像のデータ量を減らして、第１の処理済データを取得する工程と、
（ｄ）前記工程（ｂ）で抽出した前記階層的バーコードスタンプから第１のコードを抽出する工程と、
（ｅ）前記表面画像又は前記裏面画像における前記２次元バーコードスタンプを読み取り、デコードして、第２の処理済データを取得する工程と、
（ｆ）前記第２の処理済データの特徴を一意的に表す第２のコードを計算する工程と、
（ｇ）前記第１のコード及び第２のコードを比較して、前記２次元バーコードスタンプが改変されたか否かを決定する工程と、
（ｈ）前記第１の処理済データ及び第２の処理済データを比較して、前記印刷文書が改変されたか否かを決定する工程と、
を有することを特徴とするプログラム。
【請求項１６】
前記階層的バーコードスタンプは前記文書の前記表面において背景パターンを形成し、前記文書画像は前記背景パターンに重なっていることを特徴とする請求項１５に記載のプログラム。
【請求項１７】
前記背景パターンは、グレートーンで印刷された、又は無印刷のバーコードタイルを含み、前記文書画像は、黒で印刷された２値画像であり、前記工程（ｂ）は、前記表面画像においてグレーピクセルと黒ピクセルとを識別する工程を含むことを特徴とする請求項１６に記載のプログラム。
【請求項１８】
前記工程（ｄ）は、
（ｄ１）予め定義されたパターンに従って反復されたバーコードスタンプ要素を含む前記階層的バーコードスタンプからバーコードスタンプ要素を生成する工程と、
（ｄ２）前記バーコードスタンプ要素をデコードして前記第１のコードを取得する工程と、  を有することを特徴とする請求項１５〜１７のいずれか一項に記載のプログラム。
【請求項１９】
（ｉ）前記工程（ｂ）で抽出された前記階層的バーコードスタンプから第１のメタデータを抽出する工程と、
（ｊ）前記２次元バーコードスタンプにコード化された第２のメタデータを取得する工程と、
（ｋ）前記第１のメタデータ及び前記第２のメタデータを比較して、前記印刷文書が改変されたか否かを判断する工程と、
を更に有することを特徴とする請求項１５〜１８のいずれか一項に記載のプログラム。
【請求項２０】
前記第１の処理済データは、抽出されたグラフィックスオブジェクト、抽出されたビットマップ画像オブジェクト、抽出されたテキスト、前記文書画像の空間解像度がより低いバージョン、及び前記文書画像の圧縮バージョンのうちの一以上を含むことを特徴とする請求項１５〜１９のいずれか一項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書内容のコード化にバーコードを用いる文書認証方法に関し、特に、このような文書認証方法であって、バーコードの改変の影響を低減するために、階層的バーコードスタンプを背景パターンとして用いる方法に関する。
【背景技術】
【０００２】
バーコードは、データをコード化するための機械読み取り可能な記号表示の一種であって、様々な応用分野に広く導入されている。２次元バーコード（２ｄバーコード）は、そのような記号表示の一態様である。それは一般に、テキスト、数字、画像及び２値データストリームをコード化するために用いることが可能であり、身分証明書、出荷ラベル、証明書及び他の文書等に用いられている。一般に使用される二次元バーコード規格の例には、ＰＤＦ４１７規格及びＱＲコード（登録商標）が含まれ、このような二次元バーコードを印刷し、読み取るソフトウェア及びハードウェア製品が利用可能となっている。
【０００３】
テキスト、グラフィックス、画像等を含み得るデジタル原稿の多くは印刷され、印刷されたハードコピーは分配され、コピー等された後、多くの場合にスキャンされてデジタル形式に戻る。これを閉ループ処理という。スキャンデジタル文書の認証とは、スキャン文書がデジタル原稿の真正コピーであるか否か、すなわち、スキャン文書がハードコピー形式であった際に改変されたか否かを決定することである。改変は、意図的な試み、又は予期しない出来事によって起こりうる。印刷文書を認証するには２つの方法がある。１つ目の方法は、原稿画像を記憶するデータベースを用いて、スキャン文書画像をオリジナル画像と比較する。
【０００４】
２つ目の方法は、オリジナル画像データベースへの依存を排除する。特に、２次元（２ｄ）バーコードを用いて印刷文書を認証する方法が開発されている。通常、このような方法は、原稿の内容、又は原稿の認証に使用することができる、該原稿から抽出された他の情報（一般に認証情報と呼ばれる）を２次元バーコード（認証バーコードと呼ばれる）にコード化する。前記バーコードは、印刷文書と同じ記録媒体上、例えば、前記印刷文書の表面又は裏面上に印刷される。文書の内容は、該文書のページのビットマップ画像、該文書内に含まれるテキスト、グラフィックス若しくは画像、又はそれらの組合せであってもよい。認証バーコードを有する印刷文書を認証するために、該文書はスキャンされ、ビットマップ画像、光学式文字認識（ＯＣＲ）技術を用いて抽出されたテキスト等の文書内容を表すスキャンデータが得られる。また、認証バーコードもスキャンされ、そこに含まれるデータ（認証データ）が抽出される。その後、スキャンデータは認証データと比較され、印刷文書に当初印刷されたときから改変された部分があるか否か、すなわち、前記文書が真正であるか否かが決定される。一部の認証記述は、単に改変があったか否かを決定するものであり、また一部は、如何なる内容が改変されたか、そして改変は如何なるものかを決定することができる。認証バーコードを有する印刷文書は、その内容の認証に、印刷文書にある情報以外の如何なる情報も必要としないため、自己認証的であると考えられている。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
２次元バーコードを有する自己認証的文書において、文書が公表された後、バーコード自体は改変に対して脆弱である。したがって、本発明は、従来の技術における制限や不都合に起因する一以上の問題を大幅に除去する文書認証方法及びその関連装置を対象とする。
【課題を解決するための手段】
【０００６】
本発明の目的は、認証バーコードの如何なる改変も検知することができる印刷文書の生成方法及び認証方法を提供することである。
【０００７】
本発明の追加的な特徴及び利点は以下の記載において述べられ、その一部は当該記載から明らかであるか、本発明の実施により知るところとなる。本発明の目的及び他の利点は、明細書の記載、特許請求の範囲、及び添付図面で詳しく示された構造により実現され、取得される。
【０００８】
これらの及び／他の目的を達成するために、具現化され広く記載されているように、本発明は、データ処理及び印刷システムにおいて実施され、印刷文書上に印刷された画像のみを用いて認証する自己認証的な印刷文書の生成方法であって、（ａ）原稿画像を取得する工程と、（ｂ）前記原稿画像中の特徴画像を抽出するか、又は前記原稿画像のデータ量を減らして、処理済データを生成する工程と、（ｃ）前記工程（ｂ）で生成された前記処理済データから、当該処理済データの特徴を一意的に表すコードを計算し、当該コードをコード化してバーコードスタンプ要素を生成する工程と、（ｄ）予め定義されたパターンに従って、前記バーコードスタンプ要素を反復することにより、階層的バーコードスタンプを生成する工程と、（ｅ）前記処理済データをバーコード化して原稿画像認証用の２次元バーコードスタンプを生成する工程と、（ｆ）記録媒体の表面又は裏面に前記２次元バーコードスタンプを印刷し、当該記録媒体の表面に前記階層的バーコードスタンプ及び前記原稿画像を印刷する工程と、を有し、前記工程（ｆ）において、前記階層的バーコードスタンプはグレートーンタイルを用いて印刷され、前記原稿画像は黒色で印刷され、前記階層的バーコードスタンプと前記原稿画像は、少なくとも黒色で印刷された前記原稿画像のいくつかの内容が前記階層的バーコードスタンプのいくつかのグレートーンタイルと重なるように、互いに重なり合っていることを特徴とする方法を提供する。
【０００９】
他の側面では、本発明は、データ処理システムにおいて実施される印刷文書の認証方法であって、前記印刷文書は、記録媒体の表面に印刷された階層的バーコードスタンプ及び文書画像と、前記同じ記録媒体の表面又は裏面に印刷された２次元バーコードスタンプと、を含み、前記方法は、（ａ）前記印刷文書から表面画像、又は表面画像及び裏面画像の双方の画像を取得する工程と、（ｂ）前記表面画像から前記文書画像及び前記階層的バーコードスタンプを抽出する工程と、（ｃ）前記工程（ｂ）で抽出した前記文書画像中の特徴画像を抽出するか、又は前記文書画像のデータ量を減らして、第１の処理済データを取得する工程と、（ｄ）前記工程（ｂ）で抽出した前記階層的バーコードスタンプから第１のコードを抽出する工程と、（ｅ）前記表面画像又は前記裏面画像における前記２次元バーコードスタンプを読み取り、デコードして、第２の処理済データを取得する工程と、（ｆ）前記第２の処理済データの特徴を一意的に表す第２のコードを計算する工程と、（ｇ）前記第１のコード及び第２のコードを比較して、前記２次元バーコードスタンプが改変されたか否かを決定する工程と、（ｈ）前記第１の処理済データ及び第２の処理済データを比較して、前記印刷文書が改変されたか否かを決定する工程と、を有することを特徴とする方法を提供する。
【００１０】
他の側面では、本発明は、データ処理装置に上記の方法を実行させるプログラムを提供する。
【００１１】
上述した概要及び以下の詳細な説明は共に、例示的かつ説明的なものであって、特許請求の範囲に記載された本発明について更なる説明を提供することを意図するものである。
【図面の簡単な説明】
【００１２】
【図１】クロネッカー積の演算を用いた階層的バーコードスタンプの生成の例を示す。
【図２】本発明の実施形態による背景としてのバーコードパターンを有する印刷文書の全面を示す。
【図３】本発明の実施形態による自己認証的文書の生成方法を示す。
【図４】本発明の実施形態による印刷文書の認証の決定方法を概略的に示す。
【図５】本発明の実施形態による印刷文書の認証の決定方法を概略的に示す。
【発明を実施するための形態】
【００１３】
本発明の実施形態は、自己認証的な印刷文書を生成し、その後、印刷文書を認証する方法を提供する。自己認証的文書は、その裏面（又は表面）に、文書画像又は該文書の表面の文書内容から抽出した特徴をコード化する２次元バーコードスタンプを有する。２次元バーコードの安全性を高めるため、文書画像又は該文書の抽出された特徴は、任意に所望のメタデータと共に、適度に短いハッシュコードにハッシュされ、２次元バーコードスタンプ要素に変換される。その後、スタンプ要素は、予め定義されたパターンに従ってスタンプ要素を反復することにより、クロネッカー積の行列演算の使用によって達成しうる階層的バーコードスタンプに変換される。階層的バーコードスタンプは、印刷文書の表面に背景パターン（グレーパターン等）として印刷され、この背景パターンの上に文書画像が印刷される。表面画像及び（もしあれば）裏面画像は、記録媒体の１枚に印刷されて配布される。
【００１４】
印刷文書を認証するため、裏面（又は表面）の２次元バーコードにコード化されたデータ（抽出した特徴や圧縮画像等）は抽出され、ハッシュコードにハッシュされて、文書の表面の階層的バーコードから抽出されたハッシュコードと比較される。これは、前記文書の裏面（又は表面）の２次元バーコードが改変されたか否かを決定するのに役立つ。
【００１５】
２次元バーコードは、印刷文書の表面及び／又は裏面に印刷することができる。一般に、２次元バーコードが抽出テキスト等の比較的小さい量のデータをコード化する場合、２次元バーコードスタンプの数は比較的少なくなることから、２次元バーコードは文書の表面に印刷することができる。２次元バーコードが原稿画像をコード化する場合には、２次元バーコードスタンプの数は比較的多くなることから、2次元バーコードのすべてを表面に印刷することは実用的ではないだろう。後述の実施形態において２次元バーコードは裏面に印刷されるが、表面、又は表面及び裏面に印刷してもよいことは勿論である。
【００１６】
丸付き乗算記号で示されるクロネッカー積は、結果としてブロック行列となる２つの行列の演算である。Ａがｍ×ｎ行列、Ｂがｐ×ｑ行列の場合、クロネッカー積Ａ＊Ｂ（＊は丸付き乗算記号）は、ｍｐ×ｎｑ行列となる。図１は、スタンプ要素１１、及びスタンプ要素１１とそれ自体とのクロネッカー積（階層的バーコード）１２を示す。この例におけるクロネッカー積は、下記のような行列形式で表すことができる。
【００１７】
【数１】
0005626885.tif 000002
【００１８】
この例では、スタンプ要素はｍ×ｎ＝３×２行列であり、該スタンプ要素とそれ自体とのクロネッカー積はｍ２×ｎ２＝９×４行列である。
【００１９】
階層的バーコードは、スタンプ要素と予め定義された行列とのクロネッカー積を形成することによって生成することもできる。すなわち、このような階層的バーコードは、スタンプ要素を予め定義された方法によって反復して形成することができる。例えば、予め定義された行列は以下の行列であってもよい。
【数２】
0005626885.tif 000003
【００２０】
クロネッカー積の演算は階層的バーコードを生成するのに便宜な方法であるが、階層的バーコードは他の適切な方法によって生成することも可能である。より一般的には、階層的バーコードは、予め定義されたパターンに従ってスタンプ要素を反復することによって生成される。反復回数は整数である必要はなく、例えば、記録媒体のサイズによって、スタンプ要素の最後の反復はスタンプ要素全体の一部のみを含んでいてもよい。また、反復されるスタンプ要素の間に所望の幅の空白があってもよい。階層的バーコードは、スタンプ要素さえ反復されていれば、このようなパターンも含みうる。下記の説明では、クロネッカー積の演算が階層的バーコードの生成の例として用いられる。
【００２１】
図２は、階層的バーコード２１を背景パターンとして有する文書２０の表面を示す。階層的バーコード２１の各タイルは２進数を表す。階層的バーコードはグレートーンで印刷される。すなわち、各バーコードタイルはグレー又は白（無印刷）である。グレートーンのグレースケール値は、例えば１００である（黒を２５５とした場合）。文書内容２２（例えば、テキスト、グラフィックス、画像等）は、背景パターン２１の上に黒で印刷される（つまり両者は重ねられる）。
【００２２】
バーコードタイル２１ａのサイズは、文書認証において用いられる従来の２次元バーコードのタイルサイズより大きい。従来の２次元バーコードでは、情報密度を最大化するためにタイルサイズを最小化する必要性から、タイルサイズは５〜７ピクセル程度の小ささだった。本発明の実施形態では、階層的バーコードが背景パターンとして使用され、その上に文書内容に従ってバーコードタイル２１ａが印刷されることから、好ましくは、バーコードタイルは、大部分のタイルが印刷文書内容によって完全に覆い隠されることのないような適度なタイルサイズを有する。好ましくは、タイルサイズは、タイルの一部が印刷文書内容によって覆い隠されている場合でも、大部分のタイルの２進数が読み取れるように決定されている。一つの例では、タイルサイズは（６００ｄｐｉの解像度で）６０×６０ピクセルであり、階層的バーコードを形成するバーコードスタンプ要素は２１×２１のタイルを有し、前記バーコードスタンプ要素は、クロネッカー乗算によって５（縦）×４（横）行列と乗算され、レターサイズの用紙に一致する１０５×８４タイルの階層的バーコードを形成する。他の例では、タイル２１ａのサイズは（６００ｄｐｉの解像度で）１００×１００ピクセルであり、階層的バーコードを形成するバーコードスタンプ要素は２１×２１のタイルを有し、前記バーコードスタンプ要素は、クロネッカー乗算によって３（縦）×２（横）行列と乗算され、レターサイズの用紙に一致する６３×４２タイルの階層的バーコードを形成する。
【００２３】
図２におけるタイル２１ａのサイズ及び内容２２のサイズは、説明の便宜上、実際よりも大きく表している。図１に示す例示的な階層的バーコード１２は、図２における例示的な背景パターン２１を構成するのに用いられている（３回繰り返されている）。これは非常に簡略化した例であり、図示のみを目的としている。
【００２４】
図２における背景バーコードパターンは実質的にページ全体を覆っているが、例えば、背景パターンはページの一部のみを覆ってもよく、前記バーコードはページの空きスペースや余白、線の間の空白等に存在してもよい。
【００２５】
前述のように、階層的バーコード２１は、バーコード要素と他の行列とのクロネッカー積であり、他の行列はバーコード要素自体であってもよい（図１参照）。階層的バーコードは重複しているため、デコードをより確実かつ容易にする。そのため例えば、いくつかのバーコードタイルが印刷内容に覆い隠されて読めない場合でも、他のタイル（読めるもの）の値の使用が可能であり、階層的バーコードのデコードが可能である。
【００２６】
図３は、表面背景パターンとして階層的バーコードを有する自己認証的文書を生成するための、本発明の実施形態によるコード化及び印刷方法を概略的に示すものである。図３に示すように、ハードコピー形式又は電子的形式である原稿３０は、処理されて２値の原稿画像３１が生成される（ステップＳ３０１）。原稿３０がハードコピー形式の場合、ステップＳ３０１はスキャニング工程を含んでもよく、また、スキャンした原稿又はデジタル原稿がグレースケール画像の場合、ステップＳ３０１は閾値処理工程を含んでもよい。
【００２７】
２値の原稿画像３１は処理され、文書画像から処理済データ３２が生成される（ステップＳ３０２）。処理工程は、処理済データ３２が抽出した特徴の場合、文書画像からグラフィックス又はビットマップ画像オブジェクトを抽出する工程、ＯＣＲ技術等によってテキストを抽出する工程を含んでもよい。文書画像から特徴を抽出する工程は多くの文書認証方法において共通の工程であり、この工程の実施には適切な技術を用いることができる。処理済データ３２は、原稿画像の空間解像度がより低いバージョンであってもよい。あるいは、処理済データ３２は、原稿画像自体の圧縮バージョンであってもよい。より一般的には、処理工程Ｓ３０２では、原稿画像３１を処理してデータ容量を減らす。これには適切な処理を適用しうる。処理済データ３２は、このような処理工程によって生成されたデータであり、データの如何なる適切な種類であってもよい。
【００２８】
その後、処理済データ３２はコード化されて２次元バーコードスタンプ３４となり、印刷文書の裏面に印刷される（ステップＳ３０３）。任意に、時間情報、オペレータ情報等の印刷文書に関する所望のメタデータ３３も、処理済データと共に２次元バーコード３４にコード化されうる（ステップＳ３０３）。
【００２９】
あるいは、ステップＳ３０２が実施されない場合、２次元バーコードスタンプは、（非圧縮）原稿画像を直接コード化してもよい。しかしながら、原稿画像は一般に大量のデータを含んでおり、原稿画像を（圧縮なしで）２次元バーコードに直接コード化することは実用的でないことが多い。
【００３０】
一方で、処理済データ３２にハッシュ機能が適用され、ハッシュコード３５が生成される（ステップＳ３０４）。好ましくは、ハッシュコードは、６４，１２８，２５６ビット等の妥当な短さである。その後、ハッシュコード３５からスタンプ要素３６が生成される（ステップＳ３０５）。任意に、ハッシュコードと共にメタデータ３３もスタンプ要素にコード化される（ステップＳ３０５）。その後、クロネッカー演算がスタンプ要素３６に適用され、階層的バーコードスタンプ３７が生成される（ステップＳ３０６）。階層的バーコードスタンプ３７は、スタンプ要素３６とそれ自体とのクロネッカー積であってもよく、スタンプ要素３６と予め定義された行列とのクロネッカー積であってもよい。ここで、スタンプ要素３６及び階層的バーコードスタンプ３７は行列の形式（例えば、コンピュータに記憶されたデータ）であってもよく、必ずしもバーコードスタンプの２次元画像というわけではない。
【００３１】
階層的バーコードスタンプ３７が生成された後、それは２値の原稿画像３１と組み合わされ、スタンプ画像３８が生成されて印刷文書の表面に印刷される（ステップＳ３０７）。スタンプ画像３８は、階層的バーコードスタンプ３７を表すグレー（印刷）及び白（無印刷）タイルを含む背景パターンを有している。２値（黒及び白）の原稿画像３１は、背景パターンの上に重ねられる。スタンプ画像３８の例を図２に示す。
【００３２】
表面画像３８は記録媒体の表面に印刷され、２次元バーコードスタンプ３４は同じ記録媒体の裏面に印刷されて、印刷文書３９が作成される（ステップＳ３０８）。
【００３３】
印刷文書３９が公表され、配布された後、該文書又はそのコピーは、図４及び５に示す方法で認証することができる。図４に示すように、印刷文書４００の両面がスキャンされ（ステップＳ５０１及びＳ５０２）、表面画像４０１及び裏面画像４０２が取得される。表面画像４０１（表面画像３８と実質的に同じであると思われる）は背景パターン及び文書内容を含むスタンプ画像であり、裏面画像４０２は２次元バーコード（２次元バーコードスタンプ３４と同じであると思われる）を含む。ここで、「同じであると思われる」とは、印刷文書が改変されていなければ、印刷文書４００の関連項目は、印刷文書３９の対応項目と実質的に同じであるということを意味する（勿論、所定の人為的な影響は、印刷及びスキャニング処理の正常な現象として発生しうるが、これらは画像を実質的に変更するものではない）。
【００３４】
表面画像４０１は解析され、文書画像（文書内容）４０３が抽出されると共に（ステップＳ５０３）、階層的バーコードスタンプ４０４が抽出される（ステップＳ５０４）。ステップＳ５０３及びＳ５０４において、階層的バーコードスタンプ４０４は、前記ピクセルのグレースケール値によって文書画像４０３から区別することができる。
【００３５】
コード化及び印刷処理の間（図３）、ステップＳ３０２が原稿画像から特徴を抽出する工程又は原稿画像の解像度がより低いバージョンを生成する工程を含む場合は、同じ抽出処理が文書画像４０３に適用され、処理済データ４０５が生成される。ステップＳ３０２が原稿画像の圧縮バージョンを作成するのみであり、特徴を抽出する工程又は解像度がより低いバージョンを生成する工程を含まない場合は、ステップＳ５０５は実行されない。
【００３６】
抽出された階層的バーコードスタンプ４０４は、更に解析され、スタンプ要素４０６が抽出される（ステップＳ５０６）。ステップＳ５０４及びＳ５０６の好ましい実施において、認証アルゴリズムは、タイルサイズ、スタンプ要素の寸法（ｍ及びｎ）、及び（もしあれば）クロネッカー積に用いられる予め定義された行列等の、階層的バーコードスタンプに関する非経験的知識（priori knowledge）を有している。前述したように、階層的バーコードの多くのタイルは、文書内容によって（部分的に、更には完全に）覆い隠される。階層的バーコードスタンプの非経験的知識は、アルゴリズムが階層的バーコードの重複性を利用してスタンプ要素の値を正確に決定することを可能とする。あるいは、タイルサイズ、スタンプ要素の寸法（ｍ及びｎ）等の階層的バーコードスタンプに関する情報は、２次元バーコードスタンプ３４にコード化され、又は文書の表面若しくは裏面に印刷された別のバーコードスタンプにコード化されうる。認証アルゴリズムが階層的バーコードスタンプに関するそのような知識を（非経験的に又はバーコードスタンプから得て）有しない場合は、表面画像４０１の隠されたデータに最も適合するこれらのパラメータ（タイルサイズ、ｍ及びｎ等）の値を決定するために、より高度なマッチングアルゴリズムが必要とされる。
【００３７】
当然ながら、ステップＳ５０６の間に、背景パターンが、階層的バーコードスタンプに関する知識に合致するクロネッカー積の形式に一致しないことがわかった場合は、文書は改変されたと決定される。
【００３８】
スタンプ要素４０６が決定された後は、デコードされ、ハッシュコード４０７及び（もしあれば）そこにコード化されたメタデータ４０８が得られる（ステップＳ５０７及びＳ５０８）。デコード処理は、ステップＳ３０５のコード化処理の逆である。
【００３９】
その一方で、裏面画像の２次元バーコード４０２は読み取られ、バーコードデータ４０９（ビットストリーム）が得られる（ステップＳ５０９）。前述のように、バーコードデータ４０９は（任意に）メタデータをコード化しており、また、ステップＳ３０２で生成される、オリジナル画像から抽出した特徴、オリジナル画像の解像度が低いバージョン、又はオリジナル画像データの圧縮バージョン等の処理済データ３２をコード化している。したがって、バーコードデータ４０９がデコードされると、そこにコード化されていたメタデータ４１０及び処理済データ４１１が得られる（ステップＳ５１０及びＳ５１１）。デコード処理は、ステップＳ３０３のコード化処理の逆である。処理済データ４１１は、抽出した特徴、解像度が低いバージョン、及び圧縮画像等を含みうる。ハッシュ機能（ステップＳ３０４で用いられたハッシュ機能と同様）が処理済データ４１１に適用され、ハッシュコード４１２が計算される（ステップＳ５１２）。
【００４０】
その後、図５に示すように、比較処理が行われ、印刷文書４００の真正性が決定される。まず、ステップＳ５１３において、（前面画像からの）スタンプ要素４０６から得たハッシュコード４０７が、（裏面画像からの）２次元バーコード４０２から得た（計算された）ハッシュコード４１２と比較される。２つのハッシュコードが異なる場合（ステップＳ５１４：Ｎ）、２次元バーコードは改変されたと判明し、印刷文書４００は改変されており真正ではないと判断される（ステップＳ５１７）。
【００４１】
２つのハッシュコードが同じ場合（ステップＳ５１４：Ｙ）、（表面画像からの）スタンプ要素４０６から得られたメタデータ４０８が、（裏面画像からの）２次元バーコード４０２から得られたメタデータ４１０と比較される（ステップＳ５１５）。２つのメタデータが異なる場合（ステップＳ５１６：Ｎ）、やはり２次元バーコードは改変されたと判明し、印刷文書４００は改変されており真正ではないと判断される（ステップＳ５１７）。ステップＳ５１５及びＳ５１６は任意であり、メタデータがバーコードにコード化された場合に実行される。また、ステップＳ５１５及びＳ５１６は、ステップＳ５１３及びＳ５１４の前に行うこともできる。
【００４２】
２つのハッシュコードが同じであり（ステップＳ５１４：Ｙ）、２つのメタデータが同じ場合（ステップＳ５１６：Ｙ）、表面画像４０１から得られた文書画像４０３は、裏面画像４０２から得られた処理済データ４１１と比較される（ステップＳ５１８）。この比較工程は、処理済データ４１１が如何なる種類のデータを含むかに応じて、多くの代替実施手段を取りうる。第１に、処理済データ４１１がオリジナル画像の圧縮バージョンを含む場合は、圧縮データを解凍することにより文書画像を生成し、文書画像４０３に対するピクセル対ピクセルの画像比較を行いうる。このような実施形態では、ステップＳ５０５は不要である。第２に、処理済データ４１１が抽出された特徴又は解像度がより低い画像を含む場合は、これらの特徴は処理済データ４０５の対応する特徴と比較される。この比較において、文書画像４０３と処理済データ４１１とが互いに一致した場合は（ステップＳ５１９：Ｙ）、印刷文書４００は真正であると判断される（ステップＳ５２０）。そうでない場合は（ステップＳ５１９：Ｎ）、印刷文書４００は改変されており真正ではないと判断される（ステップＳ５２１）。
【００４３】
上述した文書認証スキームには、多くの利点がある。階層的バーコードスタンプは、その構造上の重複性及び階層的性質から、汚れに強く、温度耐性がある。また、階層的スタンプは文書の表面に背景パターンとして存在することから、改竄される可能性は低い。更に、ハッシングで情報容量を低減することにより、バーコードスタンプ要素を簡易な方法でコード化することが可能となり、階層的バーコードスタンプの可読性及び強健性を改善することができる。認証処理は、３段階の比較を必要とし、これにより認証方法の安全性が著しく改善される。
【００４４】
他の実施形態では、階層的バーコードスタンプは、文書がハードコピー形式である間、人間（肉眼）に不可視である。この場合、バーコードスタンプは、地紋（tint block）技術を用いて文書の表面に隠すことができる。特に、スタンプの各タイルを不可視の分散微小ドットによって形成することにより、ハードコピー文書がスキャンされてデジタル形式に戻る際に、バーコードスタンプが検知され又は現れるようにすることができる。
【００４５】
上述の文書認証方法は、メモリに記憶されたソフトウェア又はファームウェアによって実施することができ、コンピュータ、及びプリンタ若しくはデータ処理部を有するスキャナ等の如何なる適切なデータ処理装置によっても実施することができる。この点、コンピュータにより実施可能なソフトウェア、すなわち図３〜５の処理を実現するコードは、適切なデータ処理装置の中央処理装置（CPU）又はマイクロプロセッサ（MPU）からアクセスされるコンピュータメモリに格納される。印刷又はスキャニング工程は、プリンタ及びスキャナ、又は印刷部及びスキャニング部が１つの装置に一体化されたオールインワンデバイスによって実行することができる。これらのデバイス及び装置の構造は周知であり、本明細書では説明を省略する。
【００４６】
あるいは、スキャナの代わりに、デジタルカメラ又は他の撮像装置をステップＳ５０１及びＳ５０２に用いることができる。この点で、本願の明細書及び特許請求の範囲において用いられる「スキャン画像」という用語は、広く、スキャニング、写真撮影、又は他の適切な方法によって生成されたデジタル画像を意味する。
【００４７】
本発明の改変検出方法及び関連する装置に、本発明の要旨から逸脱することなく種々の改良及び変更を加え得ることは、当業者において明らかであろう。このように、本発明は、特許請求の範囲及びその均等物の範囲内における改良及び変更を包含することが意図されている。
【図１】
0005626885.tif 000004
【図２】
0005626885.tif 000005
【図３】
0005626885.tif 000006
【図４】
0005626885.tif 000007
【図５】
0005626885.tif 000008