(57)【要約】画像ブロック内で少なくとも２つの画素サブセットを識別する工程と、少なくとも２つの画素サブセットから複数の画素グループを形成する工程であって、その画素グループの各々は、少なくとも２つのサブセットのうちの第１のサブセットから少なくとも１つの画素を含み、少なくとも２つのサブセットのうちの第２のサブセットから少なくとも１つの画素を含むことと、複数の差値を生成する工程であって、画素グループの各々は前記差値のうちの１つを提供し、前記差値の各々は、画素グループのうちの１つに存在する画素の画素値間の差に基づくものであることと、少なくとも２つのサブセットのうちの全てではないサブセットにおける画素の画素値を修正し、それによって前記ブロックに１つのビット値を埋め込む工程とを備える方法。
2007519313.tif 000002
【特許請求の範囲】
【請求項１】
画像ブロック内で少なくとも２つの画素サブセットを識別する工程と、
前記少なくとも２つの画素サブセットから複数の画素グループを形成する工程であって、前記画素グループの各々は、前記少なくとも２つのサブセットのうちの第１のサブセットから少なくとも１つの画素を含み、前記少なくとも２つのサブセットのうちの第２のサブセットから少なくとも１つの画素を含むことと、
複数の差値を生成する工程であって、前記画素グループの各々は前記差値のうちの１つを提供し、前記差値の各々は、前記画素グループのうちの１つに存在する画素の画素値間の差に基づくものであることと、
前記少なくとも２つのサブセットのうちの全てではないサブセットにおける画素の画素値を修正し、それによって前記ブロックに１つのビット値を埋め込む工程と
を備える方法。
【請求項２】
前記全てではないサブセットはただ１つのサブセットからなる、請求項１に記載の方法。
【請求項３】
前記修正により前記ブロックに論理１ビット値が埋め込まれる、請求項１に記載の方法。
【請求項４】
前記ブロックのコントラスト状態を識別する工程と、
前記コントラスト状態に従って前記修正をカスタマイズする工程と
をさらに含む、請求項１に記載の方法。
【請求項５】
前記コントラスト状態を識別する工程は、前記ブロックのヒストグラムの状態を識別する工程を含む、請求項４に記載の方法。
【請求項６】
前記コントラスト状態を識別する工程は、前記ブロックのブロック差値を識別する工程を含み、前記ブロック差値は前記差値の算術平均に等しい、請求項５に記載の方法。
【請求項７】
前記ブロックにビット・エラーが存在する場合にはそれを訂正するためにエラー訂正符号化を使用する工程をさらに含む、請求項４に記載の方法。
【請求項８】
前記少なくとも２つのサブセットは２つのサブセットからなり、前記画素グループは全て２つの画素を含み、前記生成は、前記差値の各々を各画素グループの２つの画素間の画素値の差に等しく設定する工程を含む、請求項１に記載の方法。
【請求項９】
前記少なくとも２つのサブセットは、前記第１のサブセットおよび前記第２のサブセットのみからなり、前記ブロックは、前記第１のサブセットおよび前記第２のサブセットの画素からなるチェッカー盤状の配置パターンを有する、請求項１に記載の方法。
【請求項１０】
前記画像ブロックのブロック差値を計算する工程をさらに含み、前記ブロック差値は前記複数の差値の平均に等しい、請求項１に記載の方法。
【請求項１１】
前記ブロック差値をシフト量だけ変更する工程をさらに含む、請求項１０に記載の方法。
【請求項１２】
前記シフト量は所定の大きさを有する、請求項１１に記載の方法。
【請求項１３】
前記ブロック差値を変更する工程により前記画像ブロックに１つのビット値が埋め込まれる、請求項１１に記載の方法。
【請求項１４】
差値閾値を設定する工程をさらに含む、請求項１１に記載の方法。
【請求項１５】
前記シフト量は前記差値閾値の大きさよりも大きい、請求項１４に記載の方法。
【請求項１６】
前記ブロック差値を変更する工程は、前記画像ブロックに論理１ビット値を埋め込む工程を含む、請求項１１に記載の方法。
【請求項１７】
前記埋め込まれたビット値は復元可能である、請求項１６に記載の方法。
【請求項１８】
前記埋め込みは、前記画像ブロックに前記ビット値を隠蔽する工程を含む、請求項１６に記載の方法。
【請求項１９】
前記埋め込みは、前記画像ブロックにデジタル署名の少なくとも一部を提供する工程を含む、請求項１６に記載の方法。
【請求項２０】
前記画素値はグレースケール値である、請求項１に記載の方法。
【請求項２１】
前記画素値が色情報を含む、請求項１に記載の方法。
【請求項２２】
埋め込まれたビット値を含む画像ブロックを少なくとも２つの画素サブセットに分割する工程と、
前記少なくとも２つの画素サブセットから複数の画素グループを形成する工程であって、前記画素グループの各々は、前記少なくとも２つのサブセットのうちの第１のサブセットから少なくとも１つの画素を含み、前記少なくとも２つのサブセットのうちの第２のサブセットから少なくとも１つの画素を含むことと、
複数の差値を生成する工程であって、前記画素グループの各々は前記差値のうちの１つを提供し、前記差値の各々は、前記画素グループのうちの１つに存在する画素の画素値間の差に基づくものであることと、
前記埋め込まれたビット値を前記ブロックから抽出する工程と、
前記埋め込まれたビット値の導入前の前記画素値の状態に前記画素値を復元する工程であって、この復元は、前記サブセットのうちの少なくとも１つにおける画素の画素値を不変に維持する工程を含むことと
を備える方法。
【請求項２３】
前記抽出は、前記ブロック差値が差値閾値を超えている場合に前記ブロックから論理１ビット値を抽出する工程を含む、請求項２２に記載の方法。
【請求項２４】
前記抽出は、前記ブロック差値が差値閾値未満の場合に前記ブロックから論理０ビット値を抽出する工程を含む、請求項２２に記載の方法。
【請求項２５】
前記ブロックのコントラスト状態を識別する工程と、
前記コントラスト状態に従って前記抽出をカスタマイズする工程と
をさらに含む、請求項２２に記載の方法。
【請求項２６】
前記コントラスト状態に従って前記復元をカスタマイズする工程をさらに含む、請求項２５に記載の方法。
【請求項２７】
前記コントラスト状態を識別する工程は、前記ブロックのヒストグラムの状態を識別する工程を含む、請求項２５に記載の方法。
【請求項２８】
前記コントラスト状態を識別する工程は、前記ブロックのブロック差値を識別する工程を含む、請求項２５に記載の方法。
【請求項２９】
抽出された埋め込みビット値にエラーが存在する場合にはそれを訂正するためにエラー訂正復号化を使用する工程をさらに含む、請求項２２に記載の方法。
【請求項３０】
画像ブロック内で少なくとも２つの画素サブセットを識別する工程と、
前記少なくとも２つの画素サブセットから複数の画素グループを形成する工程であって、前記画素グループの各々は、前記少なくとも２つのサブセットのうちの第１のサブセットから少なくとも１つの画素を含み、前記少なくとも２つのサブセットのうちの第２のサブセットから少なくとも１つの画素を含むことと、
複数の差値を生成する工程であって、前記画素グループの各々は前記差値のうちの１つを提供し、前記差値の各々は、前記画素グループのうちの１つに存在する画素の画素値間の差に基づくものであることと、
前記画像ブロックについての初期ブロック差値を計算する工程であって、前記初期ブロック差値は前記複数の差値の平均に等しいことと、
前記ブロックに含めるように指示された論理０ビット値と論理１ビット値の一方に基づいて、前記画像ブロックについての最終ブロック差値を設定する工程であって、この設定は、前記サブセットのうちの少なくとも１つに存在する画素の画素値を不変に保つ工程を含むことと
を備える方法。
【請求項３１】
前記最終ブロック差値を設定する工程は、前記初期ブロック差値をシフト量だけ変更し、それによって前記画像ブロックに論理１ビット値を埋め込む工程を含む、請求項３０に記載の方法。
【請求項３２】
前記初期ブロック差値を変更する工程は、前記サブセットのうちのただ１つのサブセットに存在する画素の画素値を変更する工程を含む、請求項３１に記載の方法。
【請求項３３】
前記最終ブロック差値を設定する工程は、前記初期ブロック差値を不変に保ち、それによって前記画像ブロックに論理０ビット値を埋め込む工程を含む、請求項３０に記載の方法。
【請求項３４】
主メモリと有効に通信することが可能な少なくとも１つのプロセッサを有する演算システムと、
前記少なくとも１つのプロセッサの各々に結合されたローカル・メモリと
からなる装置であって、前記演算システムは、
画像ブロック内で少なくとも２つの画素サブセットを識別し、
前記少なくとも２つの画素サブセットから、前記少なくとも２つのサブセットのうちの第１のサブセットから少なくとも１つの画素を含み、前記少なくとも２つのサブセットのうちの第２のサブセットから少なくとも１つの画素を含む複数の画素グループを形成し、
各々が前記画素グループのうちの１つに存在する画素の画素値間の差に基づくものであり、前記画素グループの各々によってその１つが提供される複数の差値を生成し、
前記少なくとも２つのサブセットのうちの全てではないサブセットにおける画素の画素値を修正し、それによって前記ブロックに１つのビット値を埋め込む
ように動作する装置。
【請求項３５】
前記全てではないサブセットはただ１つのサブセットからなる、請求項３４に記載の装置。
【請求項３６】
前記修正動作は、論理１ビット値を前記ブロックに埋め込むように動作する、請求項３４に記載の装置。
【請求項３７】
前記演算システムは、前記ブロックのコントラスト状態を識別し、前記コントラスト状態に従って前記修正をカスタマイズするようにさらに動作する、請求項３４に記載の装置。
【請求項３８】
前記コントラスト状態を識別する動作は、前記ブロックのヒストグラムの状態を識別する動作を含む、請求項３７に記載の装置。
【請求項３９】
前記コントラスト状態を識別する動作は、前記ブロックのブロック差値を識別する動作を含み、前記ブロック差値は前記差値の算術平均に等しい、請求項３８に記載の装置。
【請求項４０】
前記演算システムは、前記ブロックにビット・エラーが存在する場合にはそれを訂正するためにエラー訂正符号化を使用するようにさらに動作する、請求項３７に記載の装置。
【請求項４１】
主メモリと有効に通信することが可能な少なくとも１つのプロセッサを有する演算システムと、
前記少なくとも１つのプロセッサの各々に結合されたローカル・メモリと
からなる装置であって、前記演算システムは、
埋め込まれたビット値を含む画像ブロックを少なくとも２つの画素サブセットに分割し、
前記少なくとも２つの画素サブセットから、前記少なくとも２つのサブセットのうちの第１のサブセットから少なくとも１つの画素を含み、前記少なくとも２つのサブセットのうちの第２のサブセットから少なくとも１つの画素を含む複数の画素グループを形成し、
各々が前記画素グループのうちの１つに存在する画素の画素値間の差に基づくものであり、前記画素グループの各々によってその１つが提供される複数の差値を生成し、
前記埋め込まれたビット値を前記ブロックから抽出し、
前記サブセットのうちの少なくとも１つにおける画素の画素値を不変に維持するとともに、前記埋め込まれたビット値の導入前の前記画素値の状態に前記画素値を復元する
ように動作する、装置。
【請求項４２】
前記抽出動作は、前記ブロック差値が差値閾値を超えている場合に前記ブロックから論理１ビット値を抽出する動作を含む、請求項４１に記載の装置。
【請求項４３】
前記抽出動作は、前記ブロック差値が差値閾値未満である場合に前記ブロックから論理０ビット値を抽出する動作を含む、請求項４１に記載の装置。
【請求項４４】
前記演算システムは、前記ブロックのコントラスト状態を識別し、前記コントラスト状態に従って前記抽出をカスタマイズするようにさらに動作する、請求項４１に記載の装置。
【請求項４５】
前記演算システムは、前記コントラスト状態に従って前記復元をカスタマイズするようにさらに動作する、請求項４４に記載の装置。
【請求項４６】
前記コントラスト状態を識別する動作は、前記ブロックのヒストグラムの状態を識別する動作を含む、請求項４４に記載の装置。
【請求項４７】
前記コントラスト状態を識別する動作は、前記ブロックのブロック差値を識別する動作を含む、請求項４４に記載の装置。
【請求項４８】
前記演算システムは、抽出された埋め込みビット値にエラーが存在する場合にはそれを訂正するためにエラー訂正復号化を使用するようにさらに動作する、請求項４１に記載の装置。
【請求項４９】
実行可能なプログラムを含む記憶媒体であって、その実行可能なプログラムは、
画像ブロック内で少なくとも２つの画素サブセットを識別する動作と、
前記少なくとも２つの画素サブセットから複数の画素グループを形成する動作であって、前記画素グループの各々は、前記少なくとも２つのサブセットのうちの第１のサブセットから少なくとも１つの画素を含み、前記少なくとも２つのサブセットのうちの第２のサブセットから少なくとも１つの画素を含むことと、
複数の差値を生成する動作であって、前記画素グループの各々は前記差値のうちの１つを提供し、前記差値の各々は、前記画素グループのうちの１つに存在する画素の画素値間の差に基づくものであることと、
前記少なくとも２つのサブセットのうちの全てではないサブセットにおける画素の画素値を修正し、それによって前記ブロックに１つのビット値を埋め込む動作と
を演算システムに実行させるように動作する、記憶媒体。
【請求項５０】
前記全てではないサブセットはただ１つのサブセットからなる、請求項４９に記載の記憶媒体。
【請求項５１】
前記修正により前記ブロックに論理１ビット値が埋め込まれる、請求項４９に記載の記憶媒体。
【請求項５２】
前記実行可能なプログラムは、
前記ブロックのコントラスト状態を識別する動作と、
前記コントラスト状態に従って前記修正をカスタマイズする動作と
を前記演算システムにさらに実行させるように動作する、請求項４９に記の記憶媒体。
【請求項５３】
前記コントラスト状態を識別する動作は、前記ブロックのヒストグラムの状態を識別する動作を含む、請求項５２に記載の記憶媒体。
【請求項５４】
前記コントラスト状態を前記識別する動作は、前記ブロックのブロック差値を識別する動作を含み、前記ブロック差値は前記差値の算術平均に等しい、請求項５３に記載の記憶媒体。
【請求項５５】
前記実行可能なプログラムは、前記ブロックにビット・エラーが存在する場合にはそれを訂正するためにエラー訂正符号化を使用する動作を前記演算システムにさらに実行させるように動作する、請求項５２に記載の記憶媒体。
【請求項５６】
実行可能なプログラムを含む記憶媒体であって、その実行可能なプログラムは、
埋め込まれたビット値を含む画像ブロックを少なくとも２つの画素サブセットに分割する動作と、
前記少なくとも２つの画素サブセットから複数の画素グループを形成する動作であって、前記画素グループの各々は、前記少なくとも２つのサブセットのうちの第１のサブセットから少なくとも１つの画素を含み、前記少なくとも２つのサブセットのうちの第２のサブセットから少なくとも１つの画素を含むことと、
複数の差値を生成する動作であって、前記画素グループの各々は前記差値のうちの１つを提供し、前記差値の各々は、前記画素グループのうちの１つに存在する画素の画素値間の差に基づくものであることと、
前記埋め込まれたビット値を前記ブロックから抽出する動作と、
前記埋め込まれたビット値の導入前の前記画素値の状態に前記画素値を復元する動作であって、この復元は、前記サブセットのうちの少なくとも１つにおける画素の画素値を不変に維持する動作を含むことと
を演算システムに実行させるように動作する、記憶媒体。
【請求項５７】
前記抽出は、前記ブロック差値が差値閾値を超えている場合に前記ブロックから論理１ビット値を抽出する動作を含む、請求項５６に記載の記憶媒体。
【請求項５８】
前記抽出は、前記ブロック差値が差値閾値未満の場合に前記ブロックから論理０ビット値を抽出する動作を含む、請求項５６に記載の記憶媒体。
【請求項５９】
前記実行可能なプログラムは、
前記ブロックのコントラスト状態を識別する動作と、
前記コントラスト状態に従って前記抽出をカスタマイズする動作と
を演算システムにさらに実行させるように動作する、請求項５６に記載の記憶媒体。
【請求項６０】
前記実行可能なプログラムは、前記コントラスト状態に従って前記復元をカスタマイズする動作を演算システムにさらに実行させるように動作する、請求項５９に記載の記憶媒体。
【請求項６１】
前記コントラスト状態を識別する動作は、前記ブロックのヒストグラムの状態を識別する動作を含む、請求項５９に記載の記憶媒体。
【請求項６２】
前記コントラスト状態を前記識別する動作は、前記ブロックのブロック差値を識別する動作を含む、請求項５９に記載の記憶媒体。
【請求項６３】
前記実行可能なプログラムは、抽出された埋め込みビット値にエラーが存在する場合にはそれを訂正するためにエラー訂正復号化を使用する動作を演算システムにさらに実行させるように動作する、請求項５６に記載の記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像中にデータを埋め込むための、また埋め込まれたデータをそこから復元するための方法および装置に関する。
【背景技術】
【０００２】
データ秘匿とも呼ばれるデータ隠蔽は、何らかの情報を表す有用なデータを画像データなどのカバー・メディアに埋め込むための方法である。データが埋め込まれたカバー・メディアのことを、本明細書では「マーク・メディア（marked media）」と呼ぶ。データ隠蔽は、識別、注釈、著作権保護、指紋法、認証などのために使用することができる。このような用途では、隠蔽データとカバー・メディアが密接に関連づけられていることもある。この種のデータ埋め込みは、透かし、あるいはより一般的には「マーキング」と呼ばれることも多い。隠蔽データは知覚的に透明であることが望ましい。言い換えれば、マーク・メディアはカバー・メディアにできる限り類似している必要がある。
【０００３】
カバー・メディアは一般に、埋め込まれたデータが存在することによりある種の歪みを受けることになる。さらに、埋め込まれたデータが除去された後でさえ、一般にカバー・メディアをそのデータが埋め込まれる前の状態に戻すことは困難である。具体的には、カバー・メディアのある種の永久歪みは、一般に隠蔽データが抽出された後でもそのまま残ることになる。歪みの原因には、丸め誤差、切捨て誤差、量子化誤差などがある。医学的診断や法の執行など、用途によっては隠蔽データが取り出された後でカバー・メディアを埋め込み前の状態に正確に復元することが重要になるので、このような歪みは問題になる。この要求を満たすマーキング技術は、無損失または無歪みと呼ばれる。このようなマーキング技術は可逆なマーキング技術とも呼ばれており、一般に元のメディア・データを正確に復元しなければならない用途に適するものである。
【０００４】
最近になって、いくつかの無損失マーキング技術が文献で報告されている。第１の方法は画像空間領域で行われるものである。シー．ダブリュ．ホンジンガー（C. W. Honsinger）、ピー．ジョーンズ（P. Jones）、エム．ラバニ（M. Rabbani）、およびジェイ．シー．ストッフェル（J. C. Stoffel）による「埋め込まれたデータを含むオリジナル画像の無損失復元（Lossless Recovery of an Original Image Containing Embedded Data）」と題する米国特許第６，２７８，７９１号（本明細書では「ホンジンガー」と呼ぶ）を参照されたい。この特許の開示は本願明細書に組み込まれる。
【０００５】
他の空間領域技術は、“ジェイ．フリードリッヒ（J. Fridrich）、エム．ゴルジャン（M. Goljan）およびアール．デュ（R. Du）、「可逆認証（Invertible authentication）」、Proc. SPIE、マルチメディア・コンテンツのセキュリティおよび透かし技術（Security and Watermarking of Multimedia Contents）、カリフォルニア州サンノゼ、２００１年１月（本明細書では「フリードリッヒ」と呼ぶ）”に報告されている。この文献の全体の開示は本願明細書に組み込まれる。変換領域での無歪みマーキング技術も存在する。ビー．マック（B. Macq）およびエフ．デューヤンド（F. Deweyand）、「医用画像のための信頼できるヘッダー（Trusted headers for medical images）」、DFG VIII-D II Watermarking Workshop、ドイツ  エルランゲン、１９９９年１０月（本明細書では「マック」と呼ぶ）。この文献の全体の開示は本願明細書に組み込まれる。
【０００６】
本発明者らの調査に基づくと、変換領域法は一般に、５１２×５１２×８の画像で約２０００ビットのデータ（２５０バイトに相当）しか埋め込むことができない。したがって、このような方法は一般に、より大量のデータを埋め込むことが必要とされる用途には向かないことになる。“シー．デ  ブリースコーワー（C. De Vleeschouwer）、ジェイ．エフ．ドレーグル（J. F. Delaigle）およびビー．マック（B. Macq）、「可逆透かしのヒストグラムの循環分析（Circular Interpretation on histogram for reversible watermarking）」、IEEE International Multimedia Signal Processing Workshop、フランス  カンヌ、３４５〜３５０ページ、２００１年１０月（本明細書では「デ  ブリースコーワー」と呼ぶ）”に報告されている方法の機能もまた、高品質ＪＰＥＧ圧縮に対して頑強性を示すことを除けば非常に限定されたものである。この文献の全体の開示は本願明細書に組み込まれる。これらの技術は、データ隠蔽よりもむしろ認証を対象としたものである。したがって、カバー・メディアに埋め込まれるデータの総量は限られている。
【０００７】
高埋め込み率のデータ隠蔽に適する最初の無損失マーキング技術は、“エム．ゴルジャン（M. Goljan）、ジェイ．フリードリッヒ（J. Fridrich）およびアール．デュ（R. Du）、「無歪みデータ埋め込み（Distortion-free data embedding）」、Proceedings of 4th Information Hiding Workshop、ペンシルベニア州ピッツバーグ、２００１年４月（本明細書では「ゴルジャン」と呼ぶ）”に示されている。この文献の全体の開示は本願明細書に組み込まれる。ゴルジャンでは、画像中の各画素は、各々がいくつかの隣接する画素からなる非オーバーラップのブロックに分割される。例えば、このブロックは４つの連続する画素を含む水平ブロックでもよい。識別機能は、各ブロックを３つの異なるカテゴリに分類するように設定される。すなわち、正規（Regular）、特異（Singular）、および使用不能（Unusable）の各カテゴリである。著者らは各グループの滑らかさ（smoothness）を捕捉するためにこの識別機能を使用した。
【０００８】
各グループに可逆操作を適用することができる。詳細には、可逆操作は、あるグレー・レベル値を他のグレー・レベル値にマップすることができる。この操作は可逆である。なぜならば、この操作をあるグレー・レベル値に２回適用すると、元のグレー・レベル値が生成されるからである。したがって、この可逆操作は「フリッピング」と呼ばれる。代表的な画像については、小さな振幅でのフリッピングにより識別機能が増し、結果として正規グループが増加し、特異グループが減少する。このバイアスによって無歪みデータ隠蔽が可能になる。このアプローチはカバー・データを歪ませることなくデータを隠蔽するが、この技術を用いて隠蔽できるデータの量は、やはり特定の用途に対しては十分ではない。ゴルジャンによると、５１２×５１２×８のグレーの画像のペイロードは、３，０００ビットから２４，０００ビットの範囲にあると推定される。この方法についての他の問題は、画像に埋め込まれるデータの量が増大するにつれて、画像の視覚品質が低下することである。例えば、ＰＳＮＲ（ピーク信号対雑音比）は３５ｄＢ（デシベル）まで低下することがあり、画像中にある種の望ましくないアーチファクトが生じる可能性がある。
【０００９】
整数ウェーブレット変換に基づいた“グオロン  シュエン（Guorong Xuan）、ジードン  チェン（Jidong Chen）、ジエン  ヂュー（Jian Zhu）、ユン  キュー．シー（Yun Q. Shi）、ヂーチョン  ニー（Zhicheng Ni）およびウェイ  スー（Wei Su）、「整数ウェーブレット変換に基づく無歪みデータ隠蔽（Distortionless Data Hiding Based on Integer Wavelet Transform）」、IEEE International Workshop on Multimedia Signal Processing、米領バージン諸島  セントトマス、２００２年１２月（本明細書では「シュエン」と呼ぶ）”の方法は、最近提案された大量のデータを埋め込むことができる可逆データ隠蔽技術である。この文献は本願明細書に組み込まれる。シュエンの主要なアイデアは以下のとおりである。元の画像に整数ウェーブレット変換を適用した後で、サブバンドＬＨ，ＨＬ，ＨＨの各ビット平面における２進の１と２進の０の間のバイアスは大幅に増加する。したがって、これらのビット平面における１と０を無損失に圧縮してデータ埋め込みのための多くの格納スペースを確保することができる。データ埋め込みの後で、マーク画像を形成するために逆整数ウェーブレット変換が適用される。この技術で得られる容量は極めて大きい。しかし、オーバーフローまたはアンダーフロー状態を避けるために適用されるヒストグラム修正のために、マーク画像のＰＳＮＲは大きくない。画像によっては、ＰＳＮＲはわずかに２８ｄＢである。
【００１０】
ヒストグラム操作に基づく一つの方法は、最近発表された無損失データ隠蔽技術である。この技術は、大部分の画像に対して（ＰＳＮＲが４８ｄＢを越えることが保証された）高い画像品質を維持しながら大量のデータ（５１２×５１２×８のグレースケール画像の場合に５Ｋ〜８０Ｋビット）を埋め込むことができる。ズィ．ニー（Z. Ni）、ワイ．キュー．シー（Y. Q. Shi）、エヌ．アンサリ（N. Ansari）、およびダブリュ．スー（W. Su）、「可逆データ隠蔽（Reversible data hiding）」、IEEE International Symposium on Circuits and Systems、２００３年５月、タイ  バンコク（本明細書では「ニー」と呼ぶ）。この文献は本願明細書に組み込まれる。この文献（ニー）は、単に本特許出願の「背景技術」部分に記載したことにより従来技術であると認めるものではない。
【００１１】
しかしながら、ただ１つの従来の無損失データ隠蔽技術（ブリースコーワー）だけがステゴ画像（埋め込みデータを含む画像）に適用された圧縮に対して頑強である。詳細には、ブリースコーワーだけが、圧縮によってステゴ・メディアが失われた後でもやはり、隠蔽データを正しく抽出することができる。他の既存の技術を用いた場合は、ステゴ・メディアの圧縮の後では、エラーなしに埋め込みデータを復元することはできない。
【００１２】
デ  ブリースコーワーの技術は圧縮に対して頑強であるが、その技術はモジュロ２５６加算を使用するので、面倒なごま塩状雑音を発生する。すなわち、画像グレースケール値が２５６（最も明るい）および／または０（最も暗い）に近づいたとき、モジュロ２５６加算は最も明るいグレー値と最も暗いグレー値の間でフリッピングを引き起こす可能性が高い。これは医用画像に関して発生することが多い。一例として、元の医用画像を図１Ａに示し、ステゴ画像を図１Ｂに示す。この種のごま塩状雑音は多くの用途で容認できないものである。したがって当技術分野では、一定量の頑強なデータを可逆な方法でカバー・メディアに埋め込む（ごま塩状雑音に悩まされることなく元のカバー・メディアを保存することを可能にする）ためのシステムおよび方法が必要とされている。
【００１３】
データの隠蔽に加えて、画像などのカバー・メディアへのデータの埋め込みは、画像認証用に使用することができる。ＤＳＡ（デジタル署名アルゴリズム）やＲＳＡ（Rivest Shamir Adleman）などの従来のデジタル署名技術は、データの完全性の保護と否認防止の両方をカバーするデータ認証のための有効で安全な解決策を提供することができる。一般に、単一のビットが改変されるだけでも保護データは本物でなくなるが、データのあらゆるビットが重要であるのでこれは都合がよい。例えば、トランザクションがオンラインで行われる場合、交換されるデータには、支払額、口座番号、または受取人の名前などが含まれることがある。このような状況では、それらの情報の単一のビットが改変されただけでも、トランザクションは失敗することになる。
【００１４】
従来のデジタル署名技術を画像データに直接適用することで画像データを確実に保護することができるが、過度に厳密な方法で保護することになる。画像データのこのような認証は、「脆弱な認証」と呼ばれている。画像は様々な媒体内部の様々なエンティティ間で交換されるので、各画像が、画像のトランスコーディング、信頼性の低いキャリアの動作、複数サイクルの符号化と復号化などによって生ずる偶発的な歪みを受けることは避けられない。偶発的な歪みは画像データを変化させるが、人間的な観点からは、画像の意味を変化させることはない。故意に破損されたものではなく、偶発的な歪みを受けた画像は、従来のデジタル署名ベースの認証方式を用いると、本物ではないと見なされることになる。したがって、従来のデジタル署名技術の持つ脆弱性のために、その技術の画像データへの適用は制限されることになる。
【特許文献１】米国特許第６，２７８，７９１号
【非特許文献１】ジェイ．フリードリッヒ（J. Fridrich）、エム．ゴルジャン（M. Goljan）およびアール．デュ（R. Du）、「可逆認証（Invertible authentication）」、Proc. SPIE、マルチメディア・コンテンツのセキュリティおよび透かし技術（Security and Watermarking of Multimedia Contents）、カリフォルニア州サンノゼ、２００１年１月
【非特許文献２】ビー．マック（B. Macq）およびエフ．デューヤンド（F. Deweyand）、「医用画像のための信頼できるヘッダー（Trusted headers for medical images）」、DFG VIII-D II Watermarking Workshop、ドイツ  エルランゲン、１９９９年１０月
【非特許文献３】シー．デ  ブリースコーワー（C. De Vleeschouwer）、ジェイ．エフ．ドレーグル（J. F. Delaigle）およびビー．マック（B. Macq）、「可逆透かしのヒストグラムの循環分析（Circular Interpretation on histogram for reversible watermarking）」、IEEE International Multimedia Signal Processing Workshop、フランス  カンヌ、３４５〜３５０ページ、２００１年１０月
【非特許文献４】エム．ゴルジャン（M. Goljan）、ジェイ．フリードリッヒ（J. Fridrich）およびアール．デュ（R. Du）、「無歪みデータ埋め込み（Distortion-free data embedding）」、Proceedings of 4th Information Hiding Workshop、ペンシルベニア州ピッツバーグ、２００１年４月
【非特許文献５】グオロン  シュエン（Guorong Xuan）、ジードン  チェン（Jidong Chen）、ジエン  ヂュー（Jian Zhu）、ユン  キュー．シー（Yun Q. Shi）、ヂーチョン  ニー（Zhicheng Ni）およびウェイ  スー（Wei Su）、「整数ウェーブレット変換に基づく無歪みデータ隠蔽（Distortionless Data Hiding Based on Integer Wavelet Transform）」、IEEE International Workshop on Multimedia Signal Processing、米領バージン諸島  セントトマス、２００２年１２月
【非特許文献６】ズィ．ニー（Z. Ni）、ワイ．キュー．シー（Y. Q. Shi）、エヌ．アンサリ（N. Ansari）、およびダブリュ．スー（W. Su）、「可逆データ隠蔽（Reversible data hiding）」、IEEE International Symposium on Circuits and Systems、２００３年５月、タイ  バンコク
【発明の開示】
【発明が解決しようとする課題】
【００１５】
したがって当技術分野では、画像などのカバー・メディアの偶発的な歪みにかかわらず、埋め込まれたデータの真性の状態を維持しながら、カバー・メディアの内部に認証データを埋め込むためのシステムおよび方法が必要とされている。
【課題を解決するための手段】
【００１６】
一態様によれば、本発明は、画像ブロック内で少なくとも２つの画素サブセットを識別する工程と、前記少なくとも２つの画素サブセットから複数の画素グループを形成する工程であって、前記画素グループの各々は、前記少なくとも２つのサブセットのうちの第１のサブセットから少なくとも１つの画素を含み、前記少なくとも２つのサブセットのうちの第２のサブセットから少なくとも１つの画素を含むことと、複数の差値を生成する工程であって、前記画素グループの各々は前記差値の１つを提供し、前記差値の各々は、前記画素グループのうちの１つに存在する画素の画素値間の差に基づくものであることと、前記少なくとも２つのサブセットのうちの全てではないサブセットにおける画素の画素値を修正し、それによって前記ブロックに１つのビット値を埋め込む工程とを備える方法を提供する。好ましくは、全てではないサブセットはただ１つのサブセットからなる。好ましくは、前記修正により前記ブロックに論理１ビット値が埋め込まれる。好ましくは、この方法は、前記ブロックのコントラスト状態を識別する工程と、前記コントラスト状態に従って前記修正をカスタマイズする工程とをさらに含む。好ましくは、前記コントラスト状態を識別する工程は、前記ブロックのヒストグラムの状態を識別する工程を含む。好ましくは、前記コントラスト状態を識別する工程は、前記ブロックのブロック差値を識別する工程を含み、前記ブロック差値は前記差値の算術平均に等しい。好ましくは、この方法は、前記ブロックにビット・エラーが存在する場合にはそれを訂正するためにエラー訂正符号化を使用する工程をさらに含む。好ましくは、少なくとも２つのサブセットは２つのサブセットからなり、前記画素グループは全て２つの画素を含み、前記生成は、前記差値の各々を各画素グループの２つの画素間の画素値の差に等しく設定する工程を含む。好ましくは、少なくとも２つのサブセットは、前記第１のサブセットおよび前記第２のサブセットのみからなり、前記ブロックは、前記第１のサブセットの画素と前記第２のサブセットの画素からなるチェッカー盤状の配置パターンを有する。好ましくは、この方法は、前記画像ブロックのブロック差値を計算する工程をさらに含み、前記ブロック差値は前記複数の差値の平均に等しい。好ましくは、この方法は、前記ブロック差値をシフト量だけ変更する工程をさらに含む。好ましくは、シフト量は所定の大きさを有する。好ましくは、前記ブロック差値を変更する工程により前記画像ブロックに１つのビット値が埋め込まれる。好ましくは、この方法は、差値閾値を設定する工程をさらに含む。好ましくは、シフト量は前記差値閾値の大きさよりも大きい。好ましくは、前記ブロック差値を変更する工程は、前記画像ブロックに論理１ビット値を埋め込む工程を含む。好ましくは、埋め込まれたビット値は復元可能である。好ましくは、前記埋め込みは、前記画像ブロックに前記ビット値を隠蔽する工程を含む。好ましくは、前記埋め込みは、前記画像ブロックにデジタル署名の少なくとも一部を提供する工程を含む。好ましくは、画素値はグレースケール値である。好ましくは、画素値は色情報を含む。
【００１７】
他の態様によれば、本発明は、埋め込まれたビット値を含む画像ブロックを少なくとも２つの画素サブセットに分割する工程と、前記少なくとも２つの画素サブセットから複数の画素グループを形成する工程であって、前記画素グループの各々は、前記少なくとも２つのサブセットのうちの第１のサブセットから少なくとも１つの画素を含み、前記少なくとも２つのサブセットのうちの第２のサブセットから少なくとも１つの画素を含むことと、複数の差値を生成する工程であって、前記画素グループの各々は前記差値のうちの１つを提供し、前記差値の各々は、前記画素グループのうちの１つに存在する画素の画素値間の差に基づくものであることと、前記埋め込まれたビット値を前記ブロックから抽出する工程と、前記埋め込まれたビット値の導入前の前記画素値の状態に前記画素値を復元する工程であって、この復元は、前記サブセットのうちの少なくとも１つにおける画素の画素値を不変に維持する工程を含むこととを備える方法を提供する。好ましくは、前記抽出は、前記ブロック差値が差値閾値を超えている場合に前記ブロックから論理１ビット値を抽出する工程を含む。好ましくは、前記抽出は、前記ブロック差値が差値閾値未満の場合に前記ブロックから論理０ビット値を抽出する工程を含む。好ましくは、この方法は、前記ブロックのコントラスト状態を識別する工程と、前記コントラスト状態に従って前記抽出をカスタマイズする工程とをさらに含む。好ましくは、この方法は、前記コントラスト状態に従って前記復元をカスタマイズする工程をさらに含む。好ましくは、前記コントラスト状態を識別する工程は、前記ブロックのヒストグラムの状態を識別する工程を含む。好ましくは、前記コントラスト状態を識別する工程は、前記ブロックのブロック差値を識別する工程を含む。好ましくは、この方法は、抽出された埋め込みビット値にエラーが存在する場合はそれを訂正するためにエラー訂正復号化を使用する工程をさらに含む。
【００１８】
さらに他の態様によれば、本発明は、画像のブロック内で少なくとも２つの画素サブセットを識別する工程と、前記少なくとも２つの画素サブセットから複数の画素グループを形成する工程であって、前記画素グループの各々は、前記少なくとも２つのサブセットのうちの第１のサブセットから少なくとも１つの画素を含み、前記少なくとも２つのサブセットのうちの第２のサブセットから少なくとも１つの画素を含むことと、複数の差値を生成する工程であって、前記画素グループの各々は前記差値のうちの１つを提供し、前記差値の各々は、前記画素グループのうちの１つに存在する画素の画素値間の差に基づくものであることと、前記画像ブロックについての初期ブロック差値を計算する工程であって、前記初期ブロック差値は前記複数の差値の平均に等しいことと、前記ブロックに含めるように指示された論理０ビット値と論理１ビット値の一方に基づいて、前記画像ブロックについての最終ブロック差値を設定する工程であって、この設定は、前記サブセットのうちの少なくとも１つに存在する画素の画素値を不変に保つ工程を含むこととを備える方法を提供する。好ましくは、前記最終ブロック差値を設定する工程は、前記初期ブロック差値をシフト量だけ変更し、それによって前記画像ブロックに論理１ビット値を埋め込む工程を含む。好ましくは、前記初期ブロック差値を変更する工程は、前記サブセットのうちのただ１つのサブセットに存在する画素の画素値を変更する工程を含む。好ましくは、前記最終ブロック差値を設定する工程は、前記初期ブロック差値を不変に保ち、それによって前記画像ブロックに論理０ビット値を埋め込む工程を含む。
【００１９】
その他の態様、特徴、利点などは、本明細書に記載の本発明の好ましい実施形態に関する説明を添付の図面と併せて読むことによって、当業者には明らかになるであろう。
【発明を実施するための最良の形態】
【００２０】
好ましい実施形態では、画像は非オーバーラップ・ブロックに分割される。好ましくは、次いで、画像の各ブロックは２つ以上のサブセットに分割される。好ましくは、各サブセットは同一の画素数を有するが、別法として、各画素サブセットは異なる画素数を有していてもよい。好ましくは、異なるサブセットからの画素の配置は図２のチェッカー盤状パターンである。ただし、他の配置パターンも可能である。したがって、好ましくは、各サブセットの特性は類似したものになる。画素値はグレー・レベル輝度値でもよい。画素値は、追加または代替として、色情報の構成要素であってもよい。例えば、画素値は、カラー画像のＲＧＢ（赤、緑、青）の３つの値の１つでもよい。
【００２１】
好ましい実施形態では、本発明の１つまたは複数の態様を実施するために、サブセット内の各画素の１つまたは複数の画素値を操作することができる。例えば、ＢＣＨ（ボーズ−チョードリ−オッカンガム）符号などによるチャネル符号化を、本明細書で開示した本発明の原理とともに使用することができる。さらに、本発明とともに、スクランブル技術を使用することもできる。
【００２２】
本発明の様々な態様を説明するために、図１８Ａの医用画像を使用する。５１２×５１２×８（ただし、「５１２」は画素数を表し、「８」はグレースケール表現のビット数を表す）の所与のグレースケール画像を対象として、本発明の１つまたは複数の態様に従って、以下の動作を実施することができる。最初に、画像は非オーバーラップ・ブロックに分割される。例えば、ブロック・サイズは、図２に示したように８×８とすることができ、それによって６４画素のブロックを提供することができる。好ましくは、ブロック２００は２つのサブセットに分割され、従って各々３２画素を有するサブセットが提供される。図２の実施形態では、一方のサブセットは「＋」でマークされた画素からなり、他方のサブセットは「−」でマークされた画素からなる。ただし、６４画素以外の画素数を有するブロックを使用できることも理解されたい。さらに、ブロックは、３つ以上のサブセットに分割することもできる。
【００２３】
図２の実施形態では、「＋」および「−」画素は「チェッカー盤状」パターンで配列される。このパターンでは、ブロック２００の任意の行または列に沿って進むとき、「＋」画素と「−」画素の交互のパターンが現れる。本明細書に開示された好ましいデータ埋め込み方法によってその画素値を変更することができる、「＋」画素からなるサブセットについてのこの微細分散は、好ましくは、画素のサブセットがブロックの全体にわたって単にランダムに分散されたときに生ずるαの値と比べて、より小さい値のαを提供するという利点を示す。ただし、本発明は、図２に示された「＋」画素と「−」画素の特定の配置に限定されるものではない。
【００２４】
一実施形態では、ブロックごとに、ブロック差値αが計算される。この実施形態では、ブロック差値αは、ブロック内の各画素ペアに対するグレースケール値間の差の算術平均である。詳細には、画素ペアは、例えば図２に示したように、上から下まで、左から右に水平に隣接する２つの画素として定義することができる。より一般的には、ブロックを画素「ペア」に分割する代わりに、各々が３つ以上の画素を含む「画素グループ」を生成することもできる。また、画素ペア、または３つ以上の画素を有する画素グループ内の各画素は、互いに隣接している必要はない。さらに、各画素グループ内の差値の計算や、ブロック全体を表すブロック差値の計算のためにグレースケール値以外の画素特性を使用することもできる。例えば、このような他の特性には、各画素の１つまたは複数の「Ｒ」、「Ｇ」、［Ｂ］値が含まれるが、これらに限定されるものではない。さらに、各画素に関する他の色情報を使用することもできる。本明細書では、「画素値」という用語は一般に、所与の画素、および画素が有する所与の特性に関する数値を意味する。
【００２５】
例えば、グレースケール値の特性を使用して、１対の画素間の比較が行われる場合を考える。この例では、画素Ａはグレースケール画素値３２を有し、画素Ｂはグレースケール画素値３４を有する。したがって、この画素ペアの差値は２である。画素Ａおよび画素Ｂを含むブロック内に、ただ１つの他のペアだけが存在し、その差値が１に等しい場合は、「１」と「２」の算術平均が１．５になるので、ブロック差値αは１．５に等しくなる。
【００２６】
別の実施形態の一部として、画素グループが奇数個の画素を含み、その奇数が３以上である例を考える。この例では、画素グループは（Ｐ１、Ｐ２、およびＰ３と番号付けされた）３つの画素を含み、それらの画素は、Ｐ１：２０、Ｐ２：３０、Ｐ３：６０の「Ｒ」（ＲＧＢの赤部分）画素値を有する。この画素グループの差値を求めるために、画素値の様々なペア間の差を加算し、グループ内の画素の数によって除算する。すなわち、差１＝１０（Ｐ２−Ｐ１）、差２＝４０（Ｐ３−Ｐ１）、差３＝３０（Ｐ３−Ｐ２）となる。したがって、この例では、画素グループの差値は（１０＋４０＋３０）／３＝８０／３＝２６．６である。３画素以上を含む画素グループの差値を計算するための前述の公式が、任意のサイズの画素グループに適用できることも理解されたい。さらに、画素グループの差値を求めるための他の公式、例えば、画素グループの画素値による平均画素値からの平均偏差なども使用することができる。さらに、画素グループの平均画素値からのこの平均偏差の倍数を使用することもできる。
【００２７】
ブロック内の各画素値は、一般に高い相関を示すので、ブロック差値αは０に非常に近くなることが予想される。実験結果はこの所見を裏付けている。図３には、画像内の各ブロックのブロック差値αの分布が示されている。図３は、αのほとんどの値がゼロに非常に近いことを示す。さらに、図３に示された分布の平均値もゼロに非常に近い値である。
【００２８】
好ましくは、ブロック差値αは各ブロック内の全ての画素に基づくものなので、この値αは、アタック（例えば、圧縮や他のわずかな変更など）に対して、一定の頑強性を有する。本発明者らは、このブロック差値αを頑強な量として選択し、それを使用してデータを埋め込む。
【００２９】
好ましい実施形態では、カバー画像を非オーバーラップ・ブロックに分割する。次いで、好ましくは、１つのビットが各ブロックに埋め込まれる。好ましくは、ビットを埋め込む際に、論理０ビットを埋め込むためには、ブロック差値αは閾値Ｋと−Ｋによって定義される範囲内に維持される。これまで実施された多くの実験においては、Ｋの値は通常５未満であった。しかし、５以外の絶対値を有するＫおよび−Ｋの値を使用することもできる。論理１ビットを埋め込むためには、好ましくは、ブロック差値αの絶対値は、Ｋと−Ｋの間の範囲からシフトされる。
【００３０】
先に論じたように、モジュロ２５６加算を使用することにより、オーバーフロー／アンダーフロー問題に有効に対処することができるが、この加算は容認できないごま塩雑音を発生させる傾向がある。本発明の一実施形態では、オーバーフロー／アンダーフロー問題は、画像ブロックを４つの異なるカテゴリに分類し、各カテゴリに適するビット埋め込み方式を使用することによって対処することができる。
【００３１】
基になる理論および得られた実験結果はどちらも、この好ましいアプローチが、オーバーフロー／アンダーフロー問題をうまく解決し、同時にごま塩雑音をうまく回避することを示している。カテゴリごとの好ましいビット埋め込み方式については、以下で論じる。このアルゴリズムでは、シフト量（「埋め込みレベル」とも呼ばれる）βは、好ましくは閾値Ｋの２倍の値である。しかし、別の実施形態では、シフト量βは、Ｋの値の２倍以外の値とすることもできる。
【００３２】
好ましい実施形態において、αを右方向にシフトすること（図５）は、ブロック中で「＋」にマークされた各画素（図２）のグレースケール画素値にシフト量βを加算することによって実行される。同様に、αを左方向にシフトすること（図５）は、好ましくは、ブロック中で「＋」にマークされた各画素（図２）のグレースケール値から固定シフト量βを減算することによって実行される。好ましい実施形態では、ブロック２００で「−」にマークされた画素のグレースケール画素値は修正されない。その結果、ビット埋め込みによって生ずる歪みが減少する。しかし、別の実施形態では、「−」の画素に対してシフト量βを加算または減算することによって、αの値を増加させることもできる。
【００３３】
ある状況下では、以下で論ずるように、論理０ビット値または論理１ビット値をブロックに埋め込むことにより、そのブロックのエラー・ビットを抽出するための、後続のビット抽出工程が生じることがある。好ましくは、エラー訂正符号化（ＥＣＣ）および対応するエラー訂正復号化を使用して、そのようなエラーを検出および／または訂正する。一実施形態では、エラー訂正符号化は、抽出されたどのビットがエラーかを判別し、それらを訂正するために、同一の画像または他の画像から他のブロックに埋め込まれたオーバーヘッド・ビットを使用する。別の実施形態では、オーバーヘッド・データを他の場所に格納することができ、それらを使用してエラーのある抽出データ・ビットを識別し訂正することもできる。例えば、エラー訂正で使用されるオーバーヘッド・データは、ブロックまたは全体の画像に関連する「副次的情報」に含めることができる。
【００３４】
以下では、データをブロックに埋め込むための様々なアプローチについて論ずる。このアプローチは、ブロックのブロック・ヒストグラムとブロック差値αに応じて決まる。本明細書では、ブロックの「コントラスト状態」という用語は、ブロックのヒストグラムの状態、またはブロックのブロック差値α、またはヒストグラムの状態とブロック差値αの両方を含むことができる。さらに、ブロックのコントラスト状態に含まれるブロックの諸態様は、上述の態様に限定されるものではない。
【００３５】
カテゴリ１：
対象としているブロックのグレースケール画素値は、アンダーフロー／オーバーフロー状態を引き起こすことなくシフト量が加算されるように、ヒストグラムの２つの境界（８ビット・グレースケール画像については０および２５５）から十分に離れている。詳細には、図４に示されるように、距離ｄ＝ｍｉｎ（ｄｌ，ｄｒ）はｄ≧βを満たす（ただし、βはシフト量である）。以下では、カテゴリ１の２つのケースについて考える。これらのケースは、ブロック差値αの値によって識別される。
【００３６】
好ましい実施形態では、論理１ビット値を埋め込むために、ブロックの「＋」画素の値が修正される。また、ブロックに論理０値を埋め込むためには、好ましくは、全ての画素の値は不変に保たれる。しかし、別の実施形態では、このビット値仕様は逆にすることができる。すなわち、論理０値を埋め込むために、選択された画素を修正し、論理１値を埋め込むために画素を不変に保つこともできる。
【００３７】
ケース１：ブロック差値αが閾値Ｋと−Ｋの間に存在する場合
ブロックに埋め込まれるビットが論理１の場合、好ましくは、ブロック差値αは、αが正の場合は右方に、αが負の場合は左方に量βだけシフトされる。図５を参照されたい。ブロックに埋め込まれるビットが論理０の場合、好ましくは、ブロックの画素値は不変に保たれ、結果としてαも不変に保たれる。
【００３８】
ケース２：αの絶対値が閾値Ｋの絶対値を超えている場合（図６参照）
本明細書中で後述するデータ抽出方法がどの画像データも破損しないことを保証するために、データ埋め込み方法は、好ましくは、埋め込み工程以前のαの値に関係なく、論理１ビット値をブロックに埋め込む。したがって、ブロックに論理１ビット値が埋め込まれることが予定されている場合には、好ましくは、ブロック差値αはシフト量βだけゼロから離れる方向にさらにシフトされる（図６参照）。この場合、論理０ビット値がブロックに埋め込まれることが予定されている場合でも、好ましくは、差値αをシフト量βだけゼロから離れる方向にシフトすることによって、論理１ビット値が埋め込まれる。上記の方法によってビット値を埋め込むと、後に抽出方法が実施されたときにエラー・ビットが生ずるような方法でブロック２００が修正される可能性がある。したがって、好ましくは、ＥＣＣおよびエラー訂正復号化（ＥＣＤ）を使用して、そのようなエラーが存在する場合には訂正する。
【００３９】
カテゴリ２：
図７を参照すると、カテゴリ２のヒストグラムでは、対象としているブロックのグレースケール画素値の一部はヒストグラムの下限（８ビット・グレースケール画像については値ゼロに相当する）に非常に接近しているが、ヒストグラムの上限に接近したグレースケール画素値は存在しない。カテゴリ２については、以下で３つのケースを考える。各ケースは、ブロック差値αの様々な値に従って定義される。
【００４０】
ケース１：ブロック差値αが閾値Ｋと−Ｋの間に存在する場合
論理１ビット値が埋め込まれる場合、ブロック差値αは、シフト量βだけ、閾値Ｋを超えて右方にシフトされる。図８を参照されたい。論理０ビット値が埋め込まれる場合は、好ましくは、ブロック差値αは不変に保たれる。
【００４１】
ケース２：ブロック差値αの値がヒストグラムの閾値Ｋを超えた右側に存在する場合（図９参照）
考慮中のブロックに、論理０ビット値が埋め込まれる予定になっているか、論理１ビット値が埋め込まれる予定になっているかにかかわらず、好ましい実施形態のシステムおよび方法は、ブロック差値αをシフト量βだけシフトすることによって論理１ビット値を埋め込む。その結果、図９に示したように、ブロック差値αはゼロ地点からさらに離れる方向に移動する。ブロックに埋め込むことが予定されているビットの値と無関係に論理１ビット値を埋め込むことにより、抽出方法は、このブロックから誤ったビット値を抽出する可能性がある。この状況では、好ましくは、エラー訂正符号化／復号化を使用してエラー・ビットを訂正する。
【００４２】
ケース３：ブロック差値αがヒストグラムの閾値−Ｋを超えた左側に存在する場合（図１０参照）
この状況は、何らかのシフト量が加算される前でさえ、ブロック差値αが閾値の絶対値を超えているという点で問題になる。また、差値αを不変に保つこと、またはそれをゼロからさらに離れる方向に移動させることはどちらも、データ埋め込み方法とデータ抽出方法の可逆性を無効にすることがあり得る。一実施形態では、この問題は、閾値Ｋの値を増加させ、その結果、Ｋと−Ｋの更新された値によって定義された範囲の内部にαの値を持ってくることによって解決することができる。特定のブロックに対してＫが変更された場合は、好ましくは、画像中の全てのブロックのデータを、この増加されたＫの値を使用して再埋め込みする必要があることに留意されたい。
【００４３】
他の実施形態では、対象となる画像へのデータの埋め込みに使用されるブロック・サイズは、増加させることができる。ブロック・サイズを増加させることは一般に、画像の様々なブロックに対するαの値を減少させるように機能する。好ましくは、ブロック・サイズは、画像中の全てのブロックに対して、αの値が閾値Ｋの値より小さくなるように選択される。Ｋの値を増加させた場合と同様に、好ましくは、このデータ埋め込み方法は、新しいブロック・サイズが決定された後で画像中の全てのブロックに対して繰り返される。
【００４４】
より大きなＫの値またはより大きなブロック・サイズを使用することによって、好ましくは、ケース３の状況を回避するとともに、様々な差値の関係を図８に示されたケース１の関係に戻す。実験結果によれば、ケース３は、ごくまれにしか生じないことが示されている。さらに、好ましい実施形態においては、Ｋの値またはブロック・サイズを適度に増加させることによって、通常、この問題は解決される。
【００４５】
カテゴリ３：
図１１を参照すると、一般に、ブロックのグレースケール画素値のカテゴリ３のヒストグラムでは、ヒストグラムの上限（すなわち、水平軸上での値＝２５５）に近いグレースケール画素値は存在するが、ヒストグラムの下限に近いグレースケール画素値は、存在したとしてもごくわずかである。
【００４６】
カテゴリ３は、グレースケール画素値の集中がヒストグラムの下限ではなく上限に近いことを除けば、カテゴリ２に類似している。したがって、好ましい実施形態の、カテゴリ３の状況に対するデータ埋め込みアルゴリズムは、好ましくは、ブロック差値αが右方向ではなく、左方向にシフトされることを除けば、カテゴリ２のデータ埋め込みアルゴリズムと同様である。
【００４７】
カテゴリ４：
図１２を参照すると、カテゴリ４の状況におけるブロックのヒストグラムでは、ヒストグラムの上限と下限の両方に近いグレースケール画素値が存在している。このカテゴリでは、ブロック差値αに応じて異なる２つのケースについてさらに考察する。
【００４８】
ケース１：値αが閾値Ｋと−Ｋの間に存在する場合
好ましい実施形態では、論理０ビット値または論理１ビット値がこのブロックに埋め込む候補に立てられるにせよ、論理０ビット値をブロックに埋め込む。論理０値を埋め込むことには、好ましくは、図１３に示したように、αの値を不変に保つことが含まれる。説明したように論理０ビット値を無条件に埋め込むことにより、抽出方法は、抽出されたビット値が、このブロックに埋め込まれることが予定されていたビット値と等しくないという意味で、このブロックに対する誤ったビット値を抽出する可能性がある。抽出方法によって誤ったビット値が抽出される場合には、好ましくは、エラー訂正符号化／復号化を使用してエラーが訂正される。
【００４９】
ケース２：絶対値αが閾値Ｋを超えている場合（図１４参照）
好ましい実施形態では、先のカテゴリ４、ケース１の場合と同様に、ブロックのグレースケール画素値は変更されない。詳細には、ブロックへの埋め込みが予定されているビット値にかかわらず、論理０ビット値がブロックに埋め込まれる。説明したように論理０ビット値を無条件に埋め込むことにより、後の抽出方法の実施中に、エラー・ビット値が抽出される可能性がある。好ましくは、エラー訂正符号化／復号化を使用して、このようなビット値抽出エラーが存在する場合には、それらを検出して訂正する。復号に際して、ブロックのグレースケール値分布が最初に調査される。カテゴリ４のケース２に相当する状況が識別された場合は、ビット「０」が抽出され、このブロックのグレースケール値は不変に保たれる。
【００５０】
本明細書で開示した好ましいデータ埋め込み方法によって処理されることになっている場合、上述の４つのカテゴリは、好ましくは、ブロックが取り得る全ての状態を説明している。記載されたカテゴリの様々なケースに対して上述のアプローチを使用することによって、好ましくは、全てのグレースケール画素値を［０，２５５］の範囲に保ち、それによってデータのオーバーフロー／アンダーフロー状況の発生を防ぎ、結果として画像データのあらゆる損失を防止する。上述のデータ埋め込み方法の使用によって生成されるエラー・ビットはいずれも、好ましくは、以下で説明するエラー訂正符号化／復号化方法によって処理される。しかし、他のエラー訂正方法を使用することもできる。
【００５１】
エラー訂正符号
一実施形態では、上述のビット埋め込み方法は、いくつかのエラー・ビット値を発生させることがある。詳細には、ブロックによっては、そのブロックに埋め込まれることが予定されていたビット値に相当しないビット値を抽出プログラムが抽出することがある。上述のように、この種のエラーは、ブロックのヒストグラムの状態とブロック差値αの値に基づいて、論理０ビット値または論理１ビット値を無条件に埋め込むことによって発生する可能性がある。このアプローチは、埋め込み処理や抽出処理によって画像が乱されることがないという利点をもたらすが、画像中の対象となるブロックが好ましいデータ抽出システムおよび方法によって処理されたとき、エラー・ビットを生成する可能性があるという欠点も有している。
【００５２】
好ましい実施形態では、元の（すなわち、画像の様々なブロックにビットを埋め込む前の）情報ビットを正確に復元するために、好ましくは、エラー訂正符号化が使用される。一実施形態では、エラー訂正符号化の使用によってエラー訂正の利点が提供されるが、それと同時に、画像中に格納することができる情報ビットの数が減少する。この実施形態では、画像の情報ビット埋め込み容量のこの減少は、情報ビットに付随して多数のオーバーヘッド・ビットを格納することが必要になることから生ずる。
【００５３】
ボーズ−チョードリ−オッカンガム（ＢＣＨ）符号は、ブロック長、コード・レート、アルファベット・サイズ、およびエラー訂正機能に関する幅広い選択肢を提供する、強力な部類の巡回符号である。ジェイ．ジー．プロアキス（J. G. Proakis）著の「デジタル・コミュニケーション（Digital Communication）」（第４版、マグローヒル株式会社、２０００年）を参照されたい。この著書の全開示は本願明細書に組み込まれる。したがって、本明細書で開示するシステムおよび方法の好ましい実施形態は、エラー検出および訂正にＢＣＨ符号を使用する。好ましい実施形態では、ＢＣＨ（１５，１１，１）、ＢＣＨ（１５，７，２）、ＢＣＨ（１５，５，３）、ＢＣＨ（３１，６，７）、およびＢＣＨ（６３，７，１５）の符号を使用することができる。一連のＢＣＨ符号が使用できることにより、好ましくは、エラー訂正符号化のコード・レート、したがってペイロードと、エラー訂正符号化のエラー訂正パワーとの間のトレードオフが容易になる。無損失データ隠蔽の頑強性の度合いは、一般にエラー訂正パワーの増大とともに増加する。
【００５４】
例えば、ＢＣＨ（６３，７，１５）符号は、エラー訂正機能に関して、上記の符号の中で最も強力な符号である。より多くの冗長ビットを含むという負担を被ることになるが、この符号は、６３ビットの符号語に存在する１５のランダムなエラー・ビットを訂正することができる。しかし、その結果として、ＢＣＨ（６３，７，１５）は、上述の符号の中で最も小さなデータ埋め込み容量を持つことになる。
【００５５】
画像によっては、誤りデータを含むブロックは、ある特定の集中領域に不均衡な数で存在することがあり、それにより、単一の符号語が、ＢＣＨ（６３，７，１５）のエラー訂正パワーさえ超える数のエラーを含むことがあり得る。この種のエラー・バーストは、開示したデータ埋め込みシステムおよび方法のいくつかの実施形態が失敗する原因になり得るが、それに対処するために、エラー符号訂正アルゴリズムは、好ましくは、置換方式（permutation scheme）と組み合わせられる。このことは、エス．ビー．ウィッカー（S. B. Wicker）著の「デジタル・コミュニケーションおよびストレージのためのエラー・コントロール・システム（Error Control System for Digital Communication and Storage）」（ニュージャージー州エングルウッド・クリッフス、プレンティス−ホール社、１９９５年）（本明細書では「ウィッカー」と呼ぶ）に記載されており、この文献は本願明細書に組み込まれる。ウィッカーに開示されているように、エラー訂正符号化と置換を組み合わせることは、ランダム・エラーとエラー・バーストの両方に効果的に対処するための有効で効率的な方策になる。セキュリティのために、メッセージ・ビットは、好ましくは、提案されたアルゴリズムの秘密鍵を用いて置換される。別の実施形態では、置換は、ジー．ヴォヤツィス（G. Voyatzis）及びアイ．ピタス（I. Pitas）による「デジタル画像のカオス的混合および透かしへの応用（Chaotic mixing of digital images and applications to watermarking）」（Proceedings of European Conference of Multimedia Applications， Services Techniques (ECMAST’ 96)、２、６８７〜６９５ページ、１９９６年５月）に記載されているカオス混合技術を使用して実施することもできる。
【００５６】
図１５は、データを画像に埋め込むための上述のシステムおよび方法に関する好ましい実施形態を示すブロック図である。データ抽出の工程は、好ましくは、データ埋め込み工程の逆である。所与のマーク画像について、好ましくは、画像は最初に非オーバーラップ・ブロックに分割される。次いで、各ブロックに対して、好ましくは、ブロック差値αが計算される。
【００５７】
データ抽出されるブロックのブロック差値αの絶対値が閾値Ｋの絶対値より大きい場合は、次に、抽出方法は、好ましくは、ブロックのグレースケール値分布を調査する。ブロックが、カテゴリ４のケース２の特性に適合すると識別された場合は、好ましくは、ブロックから論理０ビット値が抽出され、ブロックは不変に保たれる。それ以外の場合には、ブロックから論理１ビット値が抽出され、ブロック差値αは、シフト量βの値に相当する量だけゼロ点の方向にシフト・バックされる。詳細には、αが負の場合は、ゼロ方向へのシフトは、αにシフト量βを加算することに相当する。αが正の場合は、ゼロ方向へのシフトは、αからシフト量βを減算することに相当する。上記の工程を実施することにより、好ましくは、図１６に示されるように、（グレースケール値であるか、他の種類の画素値であるかにかかわらず）画素値は元の値に戻される。
【００５８】
ブロック差値αの絶対値が閾値Ｋ未満の場合は、ブロックから論理０ビット値が抽出される。この場合、好ましくは、ブロックの画素値は不変に保たれる。好ましい実施形態において、マーク画像が上述のように処理されるとき、全ての画素は、結局元の画像の画素値と同じ画素値に戻ることになる。
【００５９】
図１７を参照すると、好ましい実施形態では、データ抽出の後で、好ましくは、逆置換とＥＣＣ復号化が実施され、画像に埋め込まれた元の情報ビットが正確に復元される。さらに、元の画像もまた、好ましくは、全く歪みなしに復元することができる。抽出方法についての好ましい実施形態は、図１７に示されている。
【００６０】
本発明のシステムおよび方法の好ましい実施形態は、「レナ（Lena）」、「バブーン（Baboon）」など一般に使用されているグレースケール画像、８枚の医用画像、８つのＪＰＥＧ２０００カラー・テスト画像、コーレルドロー（CorelDraw（商標））画像データベース中の１０９６枚全ての画像などにうまく適用することができる。カラー画像の場合は、この方法は、好ましくは、各画像のうちの一つの色平面にのみ適用される。その結果としては、好ましい方法ではモジュロ２５６加算が使用されないために、ごま塩雑音が存在しないことが示される。
【００６１】
好ましい実施形態では、データ埋め込み容量（画像中に格納できるデータ量）は、認証用として５１２ビットまたは１０２４ビットよりも大きく取ることができる。また、その容量は、他の用途のためのブロック・サイズを変更することによって調整することができる。
【００６２】
本明細書中で後述するように、本発明の好ましい実施形態を使用することによって得られるＰＳＮＲは、シー．デ  ブリースコーワー（C. De Vleeschouwer）、ジェイ．エフ．ドレーグル（J. F. Delaigle）およびビー．マック（B. Macq）による「メディア資産管理のための無損失透かしにおける全単射変換の循環分析（Circular interpretation of bijective transformations in lossless watermarking for media asset management）」（IEEE Tran. Multimedia、第５巻、９７〜１０５ページ、２００３年３月）（本明細書では「デ  ブリースコーワー」と呼ぶ）に記載の方法を使用することで得られるＰＳＮＲよりはるかに大きい。
【００６３】
一般に、データ埋め込み容量とＰＳＮＲの間にはトレードオフが存在する。したがって、好ましい実施形態において、ＢＣＨ符号の選択など様々なパラメータは、ＰＳＮＲとデータ埋め込み容量の最適な組み合わせ結果が得られるように選択することができる。テスト画像は、２．０ｂｐｐ（ビット／画素）から０．２ｂｐｐの範囲の残存ビット・レートを有するＪＰＥＧ／ＪＰＥＧ２０００圧縮に耐えることができる。換言すれば、ｂｐｐを単位とする結果として得られたビット・レートが上述の残存ビット・レート以上の状態でマーク画像に画像圧縮が適用されたときには、隠蔽データはエラーなしに取り出すことができる。
【００６４】
図１８〜図２０は、元の画像と、本発明のシステムおよび方法の好ましい実施形態を使用してマークされた画像のセットを示す。マーク画像中に目に見えるアーチファクトが存在しておらず、これにより従来技術に対して大幅な性能改善が示されていることに留意されたい。
【００６５】
図２１〜図２４は、それぞれ３組の一般に使用される画像に対するテスト結果である。３組の画像は、１）３枚の一般に使用される画像、すなわち、レナ、バブーン、およびボート（Boat）、２）コーレルドロー（CorelDraw（商標））データベース中の１０９６枚の画像、３）８枚の医用画像、４）８枚のＪＰＥＧ２０００テスト画像である。以下で、「ブロック・サイズ」という用語は、正方形ブロックの１辺に沿った画素の数を表し、「埋め込みレベル」という用語は、ブロック内に論理１ビット値を埋め込む必要があるブロックにおけるグレースケール値の変化量を示す。図２３〜図２４で示された結果が、デ  ブリースコーワーで得られた結果との比較に適するものになるように、ブロック・サイズおよび埋め込みレベルの値が選択されていることに留意されたい。モジュロ２５６ベースのアルゴリズムと好ましい実施形態のアルゴリズムとの間の性能を、より正確な方法で比較するために、本発明者らは、８枚の医用画像に対して１組の実験を実施した。その包括的なテスト結果を図２５に示す。この１組の実験で、本発明者らは、ブロック・サイズおよび埋め込みレベルを変化させて、埋め込み容量、マーク画像に対する元画像のＰＳＮＲ、および画像圧縮に対する頑強性を観察した。
【００６６】
比較を正確にするために、１００の情報ビットを画像に埋め込むデ  ブリースコーワーの記述に従った。ブロックの数、ひいては埋め込み容量が大きいときには、同じ１００の情報ビットを繰り返し埋め込んだ。隠蔽データ抽出の後に、多数決方式を使用して隠蔽情報ビットを復号した。したがって、好ましい実施形態においては、所与の各ブロック・サイズに対する、好ましい実施形態の方法とデ  ブリースコーワーの方法の埋め込み容量は同一である。
【００６７】
マーク画像のＰＳＮＲと対応する元の画像のＰＳＮＲの間の差異はマーキング工程で使用される埋め込みレベルに依存する。このＰＳＮＲの差異はまた、画像中にデータを埋め込むために使用されるブロック・サイズにも依存する。その理由は、ブロック・サイズが増大するにつれて、ブロック全体を通してのブロック差値αの分散が小さくなるからである。値αのこの減少により、好ましくは、閾値Ｋおよびシフト量βに対して、より小さい値を使用することが可能になる。
【００６８】
図２５に関連して、ある方法で生成された８枚のマーク画像のＰＳＮＲ値が、ブロック・サイズと埋め込みレベルの各組み合わせに関して平均されて図２６に記載されている。最小残存ビット・レートに関する頑強性は図２５に記載されている。ブロック・サイズと埋め込みレベルの各組み合わせに対する平均ビット・レート（頑強性）は図２６に記載されている。ＰＳＮＲおよび頑強性はまた、所与のブロック・サイズに対する様々な埋め込みレベルにわたって平均され（＊印）、さらに様々なブロック・サイズにわたって平均されて（＊＊印）、やはり図２６に示されている。ブロック・サイズと埋め込みレベルの各組み合わせ、つまり指定された各データ埋め込み容量に対して、好ましい実施形態による方法を使用した８枚のマークされた医用画像の平均ＰＳＮＲの方が、デ  ブリースコーワーのアルゴリズムを使用したものよりはるかに高いことが、図２６から分かる。各組み合わせに対して、提案する方法に関する平均最小残存ビット・レートの方が、デ  ブリースコーワーのアルゴリズムに関するものよりも低いことも分かる。したがって、本明細書で開示した好ましい実施形態による方法を用いた場合の画像圧縮に対する平均頑強性は、デ  ブリースコーワーのアルゴリズムを用いた場合の平均頑強性より強力であり、その結果、従来技術で使用できる性能よりも優れた性能が提供される。
【００６９】
本明細書では、頑強で無損失な画像データ隠蔽システムおよび方法に関する新規の方式が開示される。このシステムおよび方法は、好ましくは、画像圧縮の影響や、データ埋め込み工程に関するわずかな偶発的な変更の影響を緩和するために頑強な統計量を使用する。このシステムおよび方法は、好ましくは、様々なグレースケール画素値分布を有する画素グループに対して、様々なビット埋め込み方策を使用する。このシステムおよび方法は、好ましくは、エラー訂正符号化と置換方式を組み合わせて使用することによって、個々のエラー・ビットの発生およびそのようなエラー・ビットの過度な集中にそれぞれ対応している。
【００７０】
本明細書で開示したシステムおよび方法の好ましい実施形態は、以下の利点を提供する。すなわち、１）ごま塩雑音がないこと、２）実質的にあらゆる画像に適用可能であること（このアルゴリズムは広範な画像に関するテストで好結果を示している）、３）マーク画像の平均ＰＳＮＲが３８ｄＢを超えていること、４）ＪＰＥＧ／ＪＰＥＧ２０００圧縮に対して頑強であること、５）データ埋め込み容量を５１２ビットまたは１０２４ビットよりも大きく取ることができ（認証用としては十分なことが多い）、必要に応じて埋め込み容量を調整できることである。
【００７１】
本明細書で開示したシステムおよび方法は、無損失に圧縮されたＪＰＥＧ２０００画像を認証するためのデジタル署名に関連するデータを埋め込み、続いて可能なトランスコーディングを実施するために使用することができる。統一された認証枠組により、脆弱な認証と半脆弱な認証の両方を提供することができる。前者はデータの完全性の検証用であり、後者はコンテンツの完全性の検証用である。さらに、半脆弱な認証には損失を伴うモジュールと無損失のモジュールの両方が存在することがある。本明細書で報告する頑強で無損失なデータ隠蔽方式は無損失なモジュールのために使用される。詳細には、無損失に圧縮されたＪＰＥＧ２０００画像が認証の前に変更されていない場合は、隠蔽データを正確に抽出することができる。さらに、その画像を本物であると分類することができ、元の画像を正確に復元することもできる。
【００７２】
無損失に圧縮されたＪＰＥＧ２０００画像が、損失を伴う圧縮などでさらにトランスコーディングされた場合、圧縮がそれほど厳しくなく、コンテンツが変更されていない限りは、画像は本物だと見なされる。この場合、隠蔽データは正確に抽出することができるが、一般に、元の画像を復元することは不可能である。損失を伴う圧縮が非常に厳しく、結果として得られたビット・レートが指定された最小残存ビット・レートよりも低い場合は、隠蔽データは正確に抽出されないことになり、画像は本物ではないと見なされる。
【００７３】
無損失で圧縮された画像の内容が変更されている場合には、隠蔽されたデータをエラーなしに抽出できない可能性がある。さらに、隠蔽データが正しく抽出できた場合でも、（元の画像を反映した）抽出されたデータと内容が変更された画像から導かれたデータとの間のミスマッチのために、抽出されたデータにより、画像自体が本物でないと見なされることになる。より詳細な情報は、以下の文献［１５］および［１６］に記載されている。
【００７４】
以下の文献は本願明細書に組み込まれる。
［１］ワイ．キュー．シー（Y. Q. Shi）、ズィ．ニー（Z. Ni）、ディ．ゾウ（D. Zou）、シー．リアン（C. Liang）、およびジー．シュエン（G. Xuan）、「無損失データ隠蔽：原理、アルゴリズムおよび応用（Lossless data hiding: Fundamentals, algorithms and applications）」、Proceedings of IEEE International Symposium on Circuits and Systems、第２巻、３３〜３６ページ、カナダ  バンクーバー、２００４年５月。
【００７５】
［２］シー．ダブリュ．ホンジンガー（C. W. Honsinger）、ピー．ジョーンズ（P. Jones）、エム．ラバニ（M. Rabbani）、およびジェイ．シー．ストッフェル（J. C. Stoffel）、「埋め込まれたデータを含むオリジナル画像の無損失復元（Lossless recovery of an original image containing embedded Data）」、米国特許第６２７８７９１号、２００１年。
【００７６】
［３］ジェイ．フリードリッヒ（J. Fridrich）、エム．ゴルジャン（M. Goljan）、およびアール．デュ（R. Du）、「可逆認証（Invertible authentication）」、Proc. SPIE Photonics West、マルチメディア・コンテンツのセキュリティおよび透かし技術III（Security and Watermarking of Multimedia Contents III）、第３９７巻、１９７〜２０８ページ、カリフォルニア州サンノゼ、２００１年１月。
【００７７】
［４］エム．ゴルジャン（M. Goljan）、ジェイ．フリードリッヒ（J. Fridrich）、およびアール．デュ（R. Du）、「無歪みデータ埋め込み（Distortion-free data embedding）」、Proceedings of 4th Information Hiding Workshop、２７〜４１ページ、ペンシルベニア州ピッツバーグ、２００１年４月。
【００７８】
［５］ジー．シュエン（G. Xuan）、ジェイ．ヂュー（J. Zhu）、ジェイ．チェン（J. Chen）、ワイ．キュー．シー（Y. Q. Shi）、ズィ．ニー（Z. Ni）、およびダブリュ．スー（W. Su）、「整数ウェーブレット変換に基づく無歪みデータ隠蔽（Distortionless data hiding based on integer wavelet transform）」、Proceedings of IEEE International Workshop on Multimedia Signal Processing、米領バージン諸島  セントトマス、２００２年１２月、IEEE Electronics Letters、第３８巻、第２５号、１６４６〜１６４８ページ、２００２年１２月。
【００７９】
［６］ズィ．ニー（Z. Ni）、ワイ．キュー．シー（Y. Q. Shi）、エヌ．アンサリ（N. Ansari）、およびダブリュ．スー（W. Su）、「可逆データ隠蔽（Reversible Data Hiding）」、Proceedings of IEEE International Symposium on Circuits and Systems、タイ  バンコク、２００３年５月。
【００８０】
［７］エム．チェリック（M. Celik）、ジー．シャルマ（G. Sharma）、エー．エム．テカルプ（A. M. Tekalp）、およびイー．セイバー（E. Saber）、「可逆データ隠蔽（Reversible data hiding）」、Proceedings of the International Conference on Image Process 2002、１５７〜１６０ページ、ニューヨーク州ロチェスター、２００２年９月。
【００８１】
［８］ジェイ．ティエン（J. Tian）、「差分展開を用いた可逆データ埋め込み（Reversible data embedding using a difference expansion）」、IEEE Transaction on Circuits and Systems for Video Technology、第１３巻、第８号、８９０〜８９６ページ、２００３年８月。
【００８２】
［９］シー．デ  ブリースコーワー（C. De Vleeschouwer）、ジェイ．エフ．ドレーグル（J. F. Delaigle）、およびビー．マック（B. Macq）、「メディア資産管理のための無損失透かしにおける全単射変換の循環分析（Circular interpretation of bijective transformations in lossless watermarking for media asset management）」、IEEE Tran. Multimedia、第５巻、９７〜１０５ページ、２００３年３月。
【００８３】
［１０］ダブリュ．ベンダー（W. Bender）、ディ．グルール（D. Gruhl）、エヌ．モリモト（N. Morimoto）、およびエー．ルー（A. Lu）、「データ隠蔽の技術（Techniques for data hiding）」、IBM System Journal、第３５巻、第３〜４号、３１３〜３３６ページ、１９９６年。
【００８４】
［１１］ジェイ．ジー．プロアキス（J. G. Proakis）、「デジタル・コミュニケーション（Digital Communications）」、第４版、マグローヒル株式会社、ニューヨーク、２０００年。
【００８５】
［１２］エス．ビー．ウィッカー（S. B. Wicker）、「デジタル・コミュニケーションおよびストレージのためのエラー・コントロール・システム（Error Control System for Digital Communication and Storage）」、ニュージャージー州エングルウッド・クリッフス、プレンティス−ホール社、１９９５年
［１３］ズィ．ニー（Z. Ni）、ワイ．キュー．シー（Y. Q. Shi）、エヌ．アンサリ（N. Ansari）、ダブリュ．スー（W. Su）、キュー．スン（Q. Sun）、およびエックス．リン（X. Lin）、「頑強な無損失画像データ隠蔽（Robust lossless image data hiding）」、Proceedings of IEEE International Conference on Multimedia and Expo、台湾  タイペイ、２００４年６月。
【００８６】
［１４］ジー．ヴォヤツィス（G. Voyatzis）およびアイ．ピタス（I. Pitas）、「デジタル画像のカオス的混合および透かしへの応用（Chaotic mixing of digital images and applications to watermarking）」、proceedings of European Conference of Multimedia Applications、Services Techniques (ECMAST ’96)、２、６８７〜６９５ページ、１９９６年５月。
【００８７】
［１５］ズィ．ヂャン（Z. Zhang）、キュー．スン（Q. Sun）、エックス．リン（X. Lin）、ワイ．キュー．シー（Y. Q. Shi）、およびズィ．ニー（Z. Ni）、「ＪＰＥＧ２００画像のための統一された認証枠組（A unified authentication framework for JPEG2000 images）」、Proceedings of IEEE International Conference on Multimedia and Expo、台湾  タイペイ、２００４年６月。
【００８８】
［１６］情報技術（Information Technology）、ＪＰＳＥＣ委員会草案  バージョン２．０（JPSEC Commission Draft Version 2.0)、ISO/IEC JTC1/SC29/WG1 N3397、２００４年９月。
【００８９】
認証
ＪＰＥＧ２０００（Joint Photographic Experts Group 2000）が備える多くの先進機能の中には、損失を伴う圧縮から無損失圧縮までへの対応、改良された圧縮比、解像度拡張容易性、品質拡張容易性、ＲＯＩ（特定領域圧縮機能、Regions of Interest）などがある。したがって、ＪＰＥＧ２０００画像とともに使用することが意図された認証システムを設計するときは、これらの要因について認識しておく必要がある。本明細書で論じる本発明の原理はＪＰＥＧ２０００以外の画像データ格納形式とも併せて使用できることを理解されたい。
【００９０】
認証システムおよび方法は、好ましくは、ＪＰＥＧ２０００の先進機能を有効に活用することができる。例えば、このシステムおよび方法は、拡張可能な方法でＪＰＥＧ２０００画像を保護できるだろう。ＪＰＥＧ２０００と整合するために、このシステムおよび方法は、任意の１つまたは複数のコンポーネント、タイル、解像度、品質レイヤ、ＲＯＩ、プレシンクト、またはコード・ブロックを保護できるだろう。認証枠組は、好ましくは、データの偶発的な歪みが生じたときでさえ埋め込まれたデータの真正の状態を失うことがないほど十分に頑強でありながら、ＪＰＥＧ２０００画像のための有効でかつ安全な保護を提供することができる。認証枠組は、好ましくは、ＪＰＥＧ２０００の先進の機能を損なうことがなく、またその代表的な用途を制限することがない方法で得られる。例えば、解決手段はＪＰＥＧ２０００画像の無損失圧縮機能を維持しなければならない。認証枠組は、Ｘ．５０９などの最新の情報セキュリティ標準に対応している必要がある。
【００９１】
認証とは、データの完全性を保護して複製を防止するための方法である。一般に、認証は、署名工程と検証工程を含む。デジタル署名は、データ認証のためのツールである。一般的に言えば、デジタル署名は、特定のメッセージが送信されたこと、および署名者がその送信元であることの証拠として受信者が使用することができる、ある種のデータ（すなわち、署名）を含む必要がある。署名とは、保護されるデータのための署名を作成する工程のことである。検証とは、保護されたデータの破損を検出するか、またはデータが正しいことを確認する工程である。一般に、ハッシュは、暗号化では一方向関数を意味する。代表的なハッシュ関数は、ＭＤ−５およびＳＨＡ−１である。
【００９２】
Ｌ．Ａ．Ｂ．Ｒ．（最低認証ビット・レート）とは、ズィ．ヂャン（Z. Zhang）、キュー．スン（Q. Sun）、エックス．リン（X. Lin）、ワイ．キュー．シー（Y. Q. Shi）、およびズィ．ニー（Z. Ni）による「ＪＰＥＧ２００画像のための統一された認証枠組（A unified authentication framework for JPEG2000 images）」（Proceedings of IEEE International Conference on Multimedia and Expo、台湾  タイペイ、２００４年６月）においては認証強度を意味する。この文献は本願明細書に組み込まれる。再符号化またはトランスコードされたＪＰＥＧ２０００のビット・レートがＬＡＢＲより大きい限り、その内容の真正性は、本明細書によって開示されたシステムおよび方法によって保証される。
【００９３】
脆弱な認証の場合は、保護は画像内容ではなく画像データに基づいて実施される。保護された画像データ内の１ビットの改変であり、その意味内容が変更されていない場合でさえ、その画像は本物でなくなる。損失を伴う認証の場合は、保護は画像内容に基づいて実施される。損失を伴う認証は、損失を伴う方法でコンテンツに透かしを入れることによって、規定された偶発歪みに対して頑強になる。無損失認証の場合は、保護はやはり画像内容に基づいて実施され、この認証もやはり規定された偶発歪みに対して頑強である。ただい、この認証は、トランスコーディングが適用されていない場合には、透かし抽出の後で元の画像を復元することができる。
【００９４】
偶発的な歪みは一般に、通常の画像処理や信頼性の低いネットワーク転送によって発生する。通常、偶発歪みは画像の意味は変更しないが、画像品質は低下させる。意図的な歪みは一般に、ある種の悪意のある攻撃によって生じ、画像内容の意味を変化させる。意図的な歪みは一般に、ある種の悪意のある攻撃によって生じ、画像内容の意味を変化させる。損失を伴う透かしは、一般に感知できないものであるが、永久的な画像品質の低下を生じさせる。
【００９５】
無損失透かしは、一般に感知できないものであるが、画像品質の低下を招く。ただし、透かしを入れたＪＰＥＧ２０００画像にトランスコーディングが適用されていない場合は、透かしを抽出した後で、元の内容を正確に復元することができる。
【００９６】
パリティ・チェック・ビット（ＰＣＢ）とは、エラーを検出し訂正するために、データ記憶装置および／またはデータ送信に含まれる冗長ビットのことである。「アタック」という用語は一般に、（（損失を伴うまたは無損失の）頑強な認証において）意味内容の変更をもたらす何らかの内容改変に相当する。脆弱な認証においては一般に、いかなる１ビットの変更もアタックだと見なされる。この用語は上述の内容に限定されるものではない。
【００９７】
機能
提案のシステムは、脆弱な認証、損失を伴う認証、および無損失認証を、ＪＰＥＧ２０００画像のための単一の統一された枠組に統合する。ただし、本明細書で開示した原理は、他の画像データ格納形式とともに使用することもできる。圧縮ビット・レートによって量的に制御されるＪＰＥＧ２０００圧縮強度と同様に、認証強度もまた「最低認証ビット・レート（ＬＡＢＲ）」と呼ばれるパラメータによって量的に指定することができる。このことは、ＬＡＢＲを超えるＪＰＥＧ２０００画像についての全てのデータ／内容が保護されることを意味しており、そのようなシステムのユーザにとっては非常に好都合なものである。
【００９８】
脆弱な認証は、好ましくは、コードストリームの１つまたは複数の部分、あるいはメイン・ヘッダからＥＯＣ（エンド・オブ・コンテキスト）マーカまでの全体のコードストリームを保護するためにも使用することができる。この認証は脆弱なので、保護部分のいかなる１ビットの改変によっても、その画像は偽物だと見なされることになる。損失を伴う認証を使用して、ＪＰＥＧ２０００画像を、偶発的な歪みに対してはるかに頑強な半脆弱な方法で保護することができる。損失を伴う認証の後での画像品質は、透かしの埋め込みのために目には感知できない程度に低下する。同様に、無損失認証もまたＪＰＥＧ２０００画像を半脆弱な方法で保護するが、トランスコーディングが適用されていないと想定すると、透かしを抽出した後で元の画像を復元することができる。提案のシステムの代表的な機能を以下に記述する。
【００９９】
脆弱な認証
脆弱な認証モードでは、ＪＰＥＧ２０００画像は、下記のような様々な粒度で保護することができる。すなわち、全体のコードストリームの保護、１つまたは複数のタイルに関連するコードストリームの一部の保護、１つまたは複数のコンポーネントに関連するコードストリームの一部の保護、１つまたは複数の解像度レベルに関連するコードストリームの一部の保護、ＬＡＢＲによって規定された１つまたは複数の品質レイヤに関連するコードストリームの一部の保護、１つまたは複数のプレシンクトに関連するコードストリームの一部の保護、１つまたは複数のコード・ブロックに関連するコードストリームの一部の保護、あるＲＯＩに関連するコードストリームの一部の保護などである。
【０１００】
損失を伴う認証
損失を伴う認証の場合、デジタル署名は、トランスコーディングや、ＪＰＥＧ２０００符号化と復号化の複数回のサイクルなどの動作から生じる偶発的な歪みに対しても耐えることができる。しかし、画像内容が意図的に改変された場合、すなわち意味内容が変更された場合は、検証工程を通過できないことになる。その名前によって示されるように、この認証は、透かし埋め込みの後で、感知できない程度に画像品質が低下するという意味で損失を伴う。
【０１０１】
同様に、画像には以下のような粒度での保護を提供することができる。すなわち、全体の画像内容、ＬＡＢＲによって定義された１つまたは複数の品質レイヤについての画像内容、１つまたは複数のタイルについての画像内容、１つまたは複数のコンポーネントについての画像内容、１つまたは複数のＲＯＩについての画像内容、１つまたは複数のプレシンクトについての画像内容、１つまたは複数のコード・ブロックについての画像内容などである。
【０１０２】
さらに、損失を伴う認証の場合、画像が悪意を持って操作される場合には、アタック領域を割り振る（特定の領域に限定する）ことも可能である。
好ましくは、無損失認証はさらに一歩進めることができる。無損失認証は、（トランスコーディングが適用されていない場合は、）透かし抽出の後で元の画像を復元することができる。トランスコーディングが適用されている場合は、一般に元の画像が復元されないことがある。ただし、トランスコードされた画像は、そのトランスコードされた画像のビット・レートがＬＡＢＲを超えている限りは、やはり本物であると検証することができる。無損失認証はまた、偶発的歪みに対する頑強性も提供する。無損失認証の場合も、アタック領域を割り振ることができる。
【０１０３】
画像は以下の粒度で保護することができる。すなわち、全体の画像内容、ＬＡＢＲによって定義された１つまたは複数の品質レイヤについての画像内容、１つまたは複数のタイルについての画像内容、１つまたは複数のコンポーネントについての画像内容、１つまたは複数のＲＯＩについての画像内容、１つまたは複数の解像度についての画像内容、１つまたは複数のプレシンクトについての画像内容、１つまたは複数のコード・ブロックの画像内容などである。
【０１０４】
概要
図２７は、本発明の１つまたは複数の態様によるＪＰＥＧ２０００画像認証のための提案のシステムを示す。左側の部分が符号化器であり、右側の部分が復号化器である。符号化器は、（ＣＢＲ、５／３フィルタ、または９／７フィルタなどの）符号化パラメータ、符号化される元の画像、および（ＬＡＢＲ、保護された場所、認証モードなどの）認証パラメータという３組のパラメータを受け取る。
【０１０５】
画像が符号化される間に、指定された認証モードに応じて異なる認証モジュールが呼び出される。脆弱な認証が指定された場合は、デジタル署名を生成するために「脆弱な署名」モジュールが呼び出される。この認証は、従来の暗号署名を用いた簡単な解決策である。損失を伴う認証が指定された場合は、画像に透かしを埋め込み、デジタル署名を生成するために「損失を伴う署名」モジュールが呼び出される。この認証は、好ましくは偶発的な歪みに対してより頑強である。無損失認証が指定された場合は、画像に透かしを埋め込み、デジタル署名を生成するために「無損失署名」モジュールが呼び出される。透かしは、トランスコーディングが適用されていない場合は、署名検証の後で画像内容が正確に復元できるような方法で埋め込まれる。画像にトランスコーディングが適用されている場合は、やはりＪＰＥＧ２０００画像を検証することはできるが、正確には復元することはできない。この場合、このシステムおよび方法の最終出力は、（脆弱な認証のためには透かしなしの、損失を伴う認証と無損失認証のためには透かしの入った）ＪＰＥＧ２０００画像とそれに関連するデジタル署名である。
【０１０６】
逆方向の場合、復号化器は、４つの入力、すなわち復号されるＪＰＥＧ２０００画像、デジタル署名、公開鍵、および認証パラメータを受け取る。図２７の符号化器に関連して上述したのと同様の方法で、好ましくは、指定された認証モードにより、画像が復号される間にどの検証モジュール（脆弱な検証、損失を伴う検証、または無損失検証）が呼び出されるのかが決定される。復号化器の最終出力は、復号された画像、検証状態、および（画像が悪意を持って操作された）アタック領域に関する情報である。無損失検証の後で、復号された画像が元の画像と全く同一になることに留意されたい。
【０１０７】
脆弱な認証
脆弱な認証は、コードストリーム・レベルでＪＰＥＧ２０００画像を保護するために選択される。脆弱な署名および検証動作は、図２８と図２９に示されているように、極めて単純明快である。署名動作（図２８）の間に、元の画像は従来の手順に従って符号化される。コードストリームが構成される間に、ＬＡＢＲや他のパラメータによって指定された、そのコードストリームの保護部分が抽出され、従来のハッシュおよび署名動作部に送られる。その結果、好ましくは、デジタル署名が生成される。検証動作（図２９）中は、復号の間にコードストリームが解析され、ＬＡＢＲや他のパラメータによって指定された、そのコードストリームの保護部分が抽出され、従来のハッシュおよび署名動作部に送られ、検証結果が「本物」または「偽物」として戻される。保護部分が１ビット変更しているだけでも、復元データは偽物と見なされる。
【０１０８】
損失を伴う認証
損失を伴う認証は一般に、無線通信など頑強性を非常に必要とする用途のために選択される。図３０は、本発明の１つまたは複数の態様による、損失を伴う署名動作を示す。最初に、元の画像３００２は、好ましくは、カラー変換およびウェーブレット変換ならびに量子化３００４され、算術符号化３００６され、さらにEBCOT（最適化切捨てによる埋め込みブロック符号化）３００８される。これらは全てＪＰＥＧ２０００符号化の基本手順である。ＥＢＣＯＴ３００８工程は、好ましくは、コード・ブロックごとにＬＡＢＲを超える（すなわち、ＬＡＢＲまでのトランスコーディング動作で存続する）ビット平面を求める。次に、ヒューマン・ビジョン・システム（ＨＶＳ）に基づいて、特徴抽出３０１０のためにどの解像度レベル（Ｘ）が適切か、また透かし埋め込みのためにどの解像度レベル（Ｙ）が適切かを決定する。次に、選択されたエラー訂正符号化（ＥＣＣ）方式を用いてブロックベースの特徴Ｆｉを符号化し、符号語ＣＷｉを生成する。ＣＷｉのパリティ・チェック・ビットであるＰＣＢｉをシード（seed）として使用してブロックベースの透かしＷｉを構成する。次いで、透かしＷｉは、ＹのＬＨまたはＬＬサブバンドの対応するブロックに埋め込まれる。
【０１０９】
さらに、全てのブロックからの特徴が連結され、好ましくは、結果として得られたビット・シーケンスは、ＭＤ５またはＳＨＡ−１などの暗号化ハッシュ関数によってハッシュされる。次に、生成されたハッシュ値は、好ましくは、内容送信者の秘密鍵を用いて署名３０１２され、暗号化署名３０１４が形成される。
【０１１０】
図３１は、本発明の１つまたは複数の態様による、損失を伴う検証動作を示す。コードストリーム解析器は、好ましくは、ブロックごとに、ＬＡＢＲを超えるビット平面を決定する。この決定に基づいて、特徴抽出のための解像度レベルＸと、透かし抽出のための解像度Ｙを決定することができる。ブロックベースの特徴抽出は、好ましくは、図３０の損失を伴う署名動作で使用されたものと同一である。ブロックベースの透かしは、解像度Ｙで各ブロックから抽出される。入力画像がＪＰＥＧ２０００形式でない場合は、透かしおよび特徴は、署名動作で使用された動作と同一の動作を使用して求めるのが好ましいことに留意されたい。
【０１１１】
次に、各ブロックからの特徴とＰＣＢ（パリティ・チェック・ビット）を組み合わせることで符号語が形成され、全体の検証判定を正しく実施することができる。最初に、いずれかのブロックが訂正不能かどうかを調べるために、ブロックごとの符号語のシンドロームが計算される。訂正不能なブロックが存在する場合は、画像は偽物と見なされ、訂正不能な符号語を含むブロックはアタックを受けた領域と見なされる。ただし、全ての符号語が訂正可能な場合（すなわち、特徴符号のどのエラーも、そのＰＣＢによって訂正可能である場合）は、全ての訂正された符号語がビット・シーケンスの形に連結され、次いで暗号化ハッシュされる。最終検証結果は、提供された署名と公開鍵を用いた暗号検証操作によって判定される。
【０１１２】
無損失認証
無損失モードは、好ましくは、透かしが入った画像の無損失復元が必要な、医用またはリモート画像関連の用途のために選択される。無損失署名動作は、損失を伴う署名動作（図３０）と非常に類似している。その違いは、透かし埋め込みモジュールだけに存在する。パッチと呼ばれる８×８のブロックに分割された６４×６４画素のコード・ブロックについて考える。パッチ内の画素値は２つのサブセットに分割される。次に、２つの各々のサブセット内での画素値の差の算術平均として定義された、パッチのブロック差値αを計算する。パッチ内では、各係数は強く相関しているので、パッチ差値αは非常にゼロに近いことが予想される。さらに、αはパッチ内の全ての画素値に基づくものなので、パッチ差値αは偶発的な歪みに対して一定の頑強性を有する。図３２に示されるように、好ましくは、各パッチには１つのビットが埋め込まれる。論理１ビットが埋め込まれる場合には、１つのサブセット内部で、各画素値に一定の数値（シフト量）を加算するか、または各画素値から一定の数値を減算することによって、ブロック差値αを閾値を超えて右側に、または左側にシフトする。論理０ビットが埋め込まれる場合は、パッチは不変に保たれる。あるパッチのブロック差値αが、シフト量の加算の前に閾値を超えており、そのために論理０ビットが埋め込まれることがある。この場合、本発明者らは閾値を超えてさらに向こう側にブロック差値αをシフトし、結果として生じたビット・エラーを訂正するためにエラー訂正符号化を利用する。透かしビットは、埋め込まれる前にやはりＥＣＣ符号化されることに留意されたい。
【０１１３】
署名動作と同様に、無損失検証動作もまた、透かしの抽出を除いて、損失を伴う検証動作と類似している。コード・ブロックはパッチに分割され、各パッチのブロック差値αが、無損失署名動作と同様の方法で計算される。パッチごとに、ブロック差値αが閾値を超えている場合は、「１」のビットが抽出され、ブロック差値αは元の位置にシフト・バックされる。このことは、元の画素値が復元されたことを意味する。ブロック差値αが閾値未満の場合は、「０」のビットが抽出され、ブロック差値αは不変に保たれる。最後に、正確な透かしビットを得るために、好ましくは、抽出されたビット・シーケンスにエラー符号訂正が適用される。
【０１１４】
デジタル署名
一実施形態では、画像に埋め込まれるデータはデジタル署名である。このデジタル署名は画像内の内容特質から生成することができる。好ましくは、最初に画像から内容特徴が抽出され、次いで、画像内容特徴からデジタル署名を生成するために、好ましくは、１方向ハッシュ関数および秘密／公開鍵暗号化が使用される。デジタル署名は、５１２ビット長または１０２４ビット長とすることができる。しかし、他の実施形態では、デジタル署名は、５１２ビットより短いかまたは長い、様々な長さのビット長を有することができる。この方法の好ましい実施形態が図３３に示されている。好ましい実施形態では、デジタル署名は、上述の、無損失データ隠蔽アルゴリズムに従って元の画像に埋め込まれ、透かしの入った画像が得られる。
【０１１５】
図３４は、本発明の１つまたは複数の態様によるデジタル署名の認証方法を示すブロック図である。好ましくは、抽出されたマークおよび再構築された画像は、本明細書の他の場所で説明した抽出技術に従って、透かしの入った画像から得られる。好ましくは、画像が変更されている場合は、この認証方法を使用して、画像のどの特定の部分が変更されているのかをチェックすることができる。ローカルに抽出されたビットが、生成された署名ビットとマッチしない場合は、この方法は、好ましくは、ブロックが変更されたと判定する。
【０１１６】
好ましくは、本明細書で開示した、新規で頑強な無歪みの画像データ隠蔽技術は、ＪＰＥＧおよびＪＰＥＧ２０００圧縮に対して一定の頑強性を有する。本明細書で開示したデータ埋め込みシステムおよび方法についての１つまたは複数の態様には、好ましくは、既存の頑強な無歪みデータ埋め込み技術に対する明白な利点が存在する。これらの利点には、従来技術におけるモジュロ２５６加算のせいで生じる、ごま塩雑音がないことが含まれる。本明細書で開示したシステムおよび方法の１つまたは複数の態様は、一般に良く使用される広範な画像（例えば、医用画像、コーレルドロー（CorelDRAW（商標））データベースの１０００を超える画像、ＪＰＥＧ２０００の全てのテスト画像など）に適用可能である。
【０１１７】
本明細書で開示したシステムおよび方法の１つまたは複数の実施形態は、３７ｄＢを超えるマーク画像の平均ＰＳＮＲを提供するものであり、ＪＰＥＧ２０００またはＪＰＥＧ圧縮に対して一定の頑強性を示す。本明細書で開示したシステムおよび方法の１つまたは複数の実施形態は、ＪＰＥＧ２０００テスト画像に対して１０２４ビットまたは５１２ビットのデータ埋め込み容量を提供することができる。本明細書で開示したシステムおよび方法の１つまたは複数の実施形態は、画像認証および半頑強な完全性検証に使用することができる。
【０１１８】
システム解析
このセクションでは、本明細書で開示したデータ埋め込みおよび復元のためのシステムおよび方法の１つまたは複数の実施形態についての、アルゴリズムの複雑性、格納オーバーヘッド、データ拡張、送信エラーの影響およびセキュリティ解析についてより詳細に説明する。
【０１１９】
複雑性
脆弱な署名および検証動作については、処理オーバーヘッドは、標準のＪＰＥＧ２０００符号化／復号化時間の約５％を使用する。この計算負荷の大部分は、コードストリームからＬＡＢＲおよび位置パラメータによって指定された保護セグメントを検出すること、ならびにコードストリームからその保護セグメントを抽出することによって生じる。これらの諸ステップは、好ましくは、コードストリームが構成される間に実施することができ、その結果、これらのステップの処理オーバーヘッドを最小にすることができる。この処理オーバーヘッドには、コードストリームの抽出された部分に対する、１回のハッシュ（ＭＤ５／ＳＨＡ−１）動作の実施、および１回のＲＳＡ／ＤＳＡ署名または検証動作の実施が含まれることがある。
【０１２０】
損失を伴う動作および無損失の動作については、処理オーバーヘッドは、標準のＪＰＥＧ２０００符号化／復号化処理時間の約２０％になる。この処理オーバーヘッドには、例えば以下の動作、すなわち、どこから特徴を抽出するか、またどこに透かしを埋め込み、どこから透かしを抽出するかを決定するために、ＬＡＢＲを超える全てのビット平面を識別することが含まれる。処理オーバーヘッドにはさらに、各保護コード・ブロックからの特徴抽出、各保護コード・ブロックに対するＥＣＣ符号化または訂正、透かしの埋め込みまたは抽出、１回のハッシュ動作、１回のＲＳＡ／ＤＳＡ署名または検証動作、記憶オーバーヘッドなどが含まれることもある。
【０１２１】
好ましい実施形態では、脆弱な署名および検証動作についての唯一のオーバーヘッドは、署名および検証のためにコードストリームの保護部分をメモリ中に一時的に格納しておく必要があるという事実のみから生ずる。例えば、５００ＫＢの画像の場合、最大メモリ・オーバーヘッドは５００ＫＢである。
【０１２２】
損失を伴う認証動作および無損失認証動作について、現在のタイル中の量子化された各係数は、好ましくは、ウェーブレットおよび量子化工程の繰り返しを回避しないために、一時的にメモリに格納される。この場合、オーバーヘッド要件は一般に、タイルのサイズに応じて決まる。例えば、タイル・サイズが２５６×２５６の場合のオーバーヘッドは、ほぼ１ＭＢになる。
【０１２３】
データ拡張
脆弱な認証については、オーバーヘッドは、デジタル署名データ、保護位置情報、公開鍵情報などの副次的情報だけである。一実施形態では、前述のものに必要な空間は約３００バイトである。結果として得られるコードストリームは、好ましくは、通常の符号化に関するものと同一である。損失を伴う認証および無損失の認証の場合は、副次的情報に必要なオーバーヘッド空間は、好ましくは、脆弱な認証のためのものと同一である。結果として得られたコードストリーム・サイズは、通常の符号化されたコードストリームのサイズに対して、０から２００バイト程度の差になる。
【０１２４】
送信エラーの影響
一実施形態において、脆弱な認証については、従来の暗号署名の性質から、送信エラーはいずれも検証の失敗に帰着する。一実施形態では、損失を伴う認証および無損失認証については、エラー・ビットの数が多くない限りは、本発明者らの解決策の頑強性のために、本明細書に開示のシステムおよび方法はやはり画像を認証することができる。
【０１２５】
セキュリティ解析
一実施形態では、脆弱な認証に対するセキュリティ強度は、基になるハッシュ（ＭＤ５またはＳＨＡ−１）および署名（ＲＳＡまたはＤＳＡ）アルゴリズムのセキュリティ強度と同一になる。しかし、損失を伴う認証および無損失の認証については、コンテンツベースの特徴抽出およびエラー訂正符号化（ＥＣＣ）のためにセキュリティ強度が低下する可能性がある。なぜならば、修正によっては抽出された特徴に影響を与えないこともあるが、修正された特徴の一部がＥＣＣによって変更される可能性があるからである。しかし、このセキュリティ・リスクは、画像コンテキストの特性を用いて補償することができる。
【０１２６】
本明細書で開示したシステムおよび方法の好ましい実施形態は、コンテンツを認証ビット・レートの点からみてより優れた表現に割り当てることによって、マルチメディア・コンテンツ認証のための体系的で定量的な方法を提供する。このことにより、認証アプリケーションは、ユーザが、１つのパラメータ、詳細にはコンテンツを保護するための認証ビット・レートを単にキー入力するだけでコンテンツを保護することができる、より使い易いものになる。
【０１２７】
本明細書で開示したシステムおよび方法の好ましい実施形態は、様々なＪＰＥＧ２０００符号化設定に適合する様々な署名モジュール（脆弱、無損失、および損失を伴う）を使用することによって、実際のアプリケーションからの様々な認証要件に対応するための枠組を提供する。好ましいシステムおよび方法は、好ましくは、ＪＰＥＧ２０００符号化および従来の暗号方式と完全に互換である。さらに、好ましいシステムおよび方法は、好ましくは、ＪＰＳＥＣツールに良く適合し、そのツールによって必要とされるものである。
【０１２８】
以下の文献は本願明細書に組み込まれる。
［１］ズィ．ヂャン（Z. Zhang）、キュー．スン（Q. Sun）、エックス．リン（X. Lin）、ワイ．キュー．シー（Y. Q. Shi）、およびズィ．ニー（Z. Ni）、「ＪＰＥＧ２００画像のための統一された認証枠組（A unified authentication framework for JPEG2000 images）」、Proceedings of IEEE International Conference on Multimedia and Expo、台湾  タイペイ、２００４年６月。
【０１２９】
［２］情報技術（Information Technology）、ＪＰＳＥＣ委員会草案  バージョン２．０（JPSEC Commission Draft Version 2.0)、ISO/IEC JTC1/SC29/WG1 N3397、２００４年９月。
【０１３０】
［３］ヂーショウ  ヂャン（Zhishou Zhang）、ガン  チウ（Gang Qiu）、チービン  スン（Qibin Sun）、シアオ  リン（Xiao. Lin）、ヂーチョン  ニー（Zhicheng Ni）、およびユン−チン  シー（Yun-Qing Shi）、WG1N3074、「ＪＰＥＧ２００画像のための統一された認証枠組：システム記述及び実験結果（A Unified Authentication Framework for JPEG2000 images: System Description and Experiment Results）」
［４］チービン  スン（Qibin Sun）、シアオ  リン（Xiao. Lin）、およびユン−チン  シー（Yun-Qing Shi）、WG1N2496、「ＪＰＥＧ２００画像のための統一された認証枠組（A Unified Authentication Framework for JPEG2000 images」
［５］  トゥラジ  エブラヒミ（Touradj Ebrahimi）およびクロード  ローリン（Claude Rollin）、WG1N30555、「ＪＰＳＥＣ作業草案−バージョン２．０（JPSEC Working Draft - Version 2.0）」
本明細書では、特定の実施形態を参照しながら本発明について説明してきたが、これらの実施形態が本発明の原理および用途についての単なる例示に過ぎないことを理解されたい。したがって、添付の特許請求の範囲によって規定された本発明の趣旨および範囲を逸脱することなく、例示の実施形態に対する多くの修正を実施し得ること、および他の構成を考案し得ることを理解されたい。
【図面の簡単な説明】
【０１３１】
【図１Ａ】元の医用画像を示す図。
【図１Ｂ】従来技術の方法に従って生成された、図１Ａに示された画像のステゴ画像（埋め込みデータを組み込んだマーク画像）を示す図。
【図２】本発明の１つまたは複数の態様による、２つのサブセットに分割された画素を有する８×８のブロックを示す図。
【図３】本発明の１つまたは複数の態様による、ブロック差値の大きさの範囲に関するブロック差値の分布を示すグラフ。
【図４】本発明の１つまたは複数の態様によるデータ埋め込みに適したカテゴリ１画像に対するグレースケール画素値のヒストグラムを示すグラフ。
【図５】本発明の１つまたは複数の態様に従って、カテゴリ１のブロック中に、ケース１の状況でビットを埋め込んだ結果生じるブロック差値の大きさの変化を示すグラフ。
【図６】本発明の１つまたは複数の態様に従って、カテゴリ１のブロック中に、ケース２の状況でビットを埋め込んだ結果生じるブロック差値の大きさの変化を示すグラフ。
【図７】本発明の１つまたは複数の態様によるデータの埋め込みに適したカテゴリ２画像に対するグレースケール画素値のヒストグラムを示すグラフ。
【図８】本発明の１つまたは複数の態様に従って、カテゴリ２のブロック中に、ケース１の状況でビットを埋め込んだ結果生じるブロック差値の大きさの変化を示すグラフ。
【図９】本発明の１つまたは複数の態様に従って、カテゴリ２のブロック中に、ケース２の状況でビットを埋め込んだ結果生じるブロック差値の大きさの変化を示すグラフ。
【図１０】本発明の１つまたは複数の態様に従って、カテゴリ２のブロック中に、ケース３の状況でビットを埋め込んだ結果生じるブロック差値の大きさの変化を示すグラフ。
【図１１】本発明の１つまたは複数の態様によるデータの埋め込みに適したカテゴリ３画像に対するグレースケール画素値のヒストグラムを示すグラフ。
【図１２】本発明の１つまたは複数の態様によるデータの埋め込みに適したカテゴリ４画像に対するグレースケール画素値のヒストグラムを示すグラフ。
【図１３】本発明の１つまたは複数の態様に従って、カテゴリ４のブロック中に、ケース１の状況でビットを埋め込んだ結果生じるブロック差値の大きさの変化を示すグラフ。
【図１４】本発明の１つまたは複数の態様に従って、カテゴリ４のブロック中に、ケース２の状況でビットを埋め込んだ結果生じるブロック差値の大きさの変化を示すグラフ。
【図１５】本発明の１つまたは複数の態様による、画像中にデータを埋め込む方法を示すブロック図。
【図１６】本発明の１つまたは複数の態様に従って、ブロック差値の絶対値αが閾値の絶対値Ｋより大きい状況で、ブロックから１つのビットを抽出した結果生じるブロック差値の大きさの変化を示すグラフ。
【図１７】本発明の１つまたは複数の態様による、画像からデータを抽出する方法を示すブロック図。
【図１８Ａ】元のバージョンの画像を示す図。
【図１８Ｂ】本発明の１つまたは複数の態様による方法を使用してマークされた、図１８Ａに示す元の画像のマーク・バージョンの画像を示す図。
【図１９Ａ】元のバージョンの画像を示す図。
【図１９Ｂ】本発明の１つまたは複数の態様による方法を使用してマークされた、図１９Ａに示す元の画像のマーク・バージョンの画像を示す図。
【図２０Ａ】元のバージョンの画像を示す図。
【図２０Ｂ】本発明の１つまたは複数の態様による方法を使用してマークされた、図２０Ａに示す元の画像のマーク・バージョンの画像を示す図。
【図２１】本発明の１つまたは複数の態様による方法を使用してマークされた、一般に使用される５１２×５１２×８のグレースケール画像に対するテスト結果を示すデータ・テーブル。
【図２２】本発明の１つまたは複数の態様による方法を使用してマークされた、コーレルドロー（ＣｏｒｅｌＤｒａｗ（商標））のデータベース中の画像に対するテスト結果を示すデータ・テーブル。
【図２３】一辺８画素のブロック・サイズと埋め込みレベル６を使用し、本発明の１つまたは複数の態様による方法を使用してマークされた８枚の医用画像に対するテスト結果を示すデータ・テーブル。
【図２４】一辺２０画素のブロック・サイズと埋め込みレベル８を使用し、本発明の１つまたは複数の態様による方法を使用してマークされた、８枚のＪＰＥＧ２０００カラー・テスト画像に対するテスト結果を示すデータ・テーブル。
【図２５】８枚の医用画像に関して、従来技術の方法および好ましい実施形態による方法を使用した、ブロック・サイズと埋め込みレベルの様々な組み合わせに対するテスト結果を示すデータ・テーブル。図中、リストアップされた画像圧縮に対する「頑強性」は、ビット／画素（ｂｐｐ）によって示された最小残存ビット・レートである。
【図２６】本明細書で開示した好ましい実施形態による方法と従来技術による方法の間の、マーク画像と元の画像の圧縮に対するＰＳＮＲ（ピーク信号対雑音比）と平均頑強性に関する性能比較を示すデータ・テーブル。
【図２７】本発明の１つまたは複数の態様による、画像認証のためのシステムおよび方法を示すブロック図。
【図２８】本発明の１つまたは複数の態様による、脆弱な認証モードを使用してデジタル署名を生成するための方法を示すブロック図。
【図２９】本発明の１つまたは複数の態様による、脆弱な認証モードを使用してデジタル署名を検証するための方法を示すブロック図。
【図３０】本発明の１つまたは複数の態様による、損失を伴う認証モードを使用してデジタル署名を生成するための方法を示すブロック図。
【図３１】本発明の１つまたは複数の態様による、損失を伴う認証モードを使用してデジタル署名を検証するための方法を示すブロック図。
【図３２】本発明の１つまたは複数の態様による、画像ブロックに１つのビットを埋め込んだ結果生じるブロック差値の大きさの変化を示すグラフ。
【図３３】本発明の１つまたは複数の態様による、画像の内容特質（ｃｏｎｔｅｎｔ  ｆｅａｔｕｒｅ）から生成されたデジタル署名を表すデータを埋め込むための方法を示すブロック図。
【図３４】本発明の１つまたは複数の態様による、デジタル署名を認証するための方法を示すブロック図。
【図１Ａ】
2007519313.tif 000003
【図１Ｂ】
2007519313.tif 000004
【図２】
2007519313.tif 000005
【図３】
2007519313.tif 000006
【図４】
2007519313.tif 000007
【図５】
2007519313.tif 000008
【図６】
2007519313.tif 000009
【図７】
2007519313.tif 000010
【図８】
2007519313.tif 000011
【図９】
2007519313.tif 000012
【図１０】
2007519313.tif 000013
【図１１】
2007519313.tif 000014
【図１２】
2007519313.tif 000015
【図１３】
2007519313.tif 000016
【図１４】
2007519313.tif 000017
【図１５】
2007519313.tif 000018
【図１６】
2007519313.tif 000019
【図１７】
2007519313.tif 000020
【図１８Ａ】
2007519313.tif 000021
【図１８Ｂ】
2007519313.tif 000022
【図１９Ａ】
2007519313.tif 000023
【図１９Ｂ】
2007519313.tif 000024
【図２０Ａ】
2007519313.tif 000025
【図２０Ｂ】
2007519313.tif 000026
【図２１】
2007519313.tif 000027
【図２２】
2007519313.tif 000028
【図２３】
2007519313.tif 000029
【図２４】
2007519313.tif 000030
【図２５】
2007519313.tif 000031
【図２６】
2007519313.tif 000032
【図２７】
2007519313.tif 000033
【図２８】
2007519313.tif 000034
【図２９】
2007519313.tif 000035
【図３０】
2007519313.tif 000036
【図３１】
2007519313.tif 000037
【図３２】
2007519313.tif 000038
【図３３】
2007519313.tif 000039
【図３４】
2007519313.tif 000040