(57)【特許請求の範囲】
【請求項１】
第１デジタル画像と第２デジタル画像とを１つの複合デジタル画像へと複合する方法であって、
ａ）前記複合デジタル画像の出力画素を形成するために、該出力画素と対応する位置にある前記第１デジタル画像の第１画素の少なくとも１つの上位ビットを該出力画素の上位ビットとし、該出力画素と対応する位置にある前記第２デジタル画像の第２画素の少なくとも１つの上位ビットのビット順を逆転して該出力画素の下位ビットとするステップと、
ｂ）前記第１デジタル画像の前記第１画素付近に位置する複数の画素に前記第１画素の値と前記出力画素の値との差異の値を配分するステップと、
ｃ）再配列済出力画素を形成するために前記出力画素のビット順を逆転するステップと、
ｄ）前記第２デジタル画像の前記第２画素付近に位置する複数の画素に前記第２画素の値と前記再配列済出力画素の値との差異の値を配分するステップと、
ｅ）前記第１デジタル画像の各画素についてａ）からｄ）のステップを繰り返すステップと、
を含む、
第１デジタル画像と第２デジタル画像とを１つの複合デジタル画像へと複合する方法。
【請求項２】
更に、
ｆ）ステップｅ）の後、前記第１デジタル画像を見るために前記複合デジタル画像を表示するステップと、
ｇ）前記複合デジタル画像の各出力画素のビット順を逆転するステップと、
ｈ）前記第２デジタル画像を見るために前記複合デジタル画像を表示するステップと、
を含む、請求項１に記載の方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はデジタルイメージング技術に関する。本発明は、特に、デジタル透かし又はロゴのような少なくとも１つのデジタル画像を別のデジタル画像内に埋め込むことに関連して適用され、特にそれを参照して述べる。しかしながら、本発明は、デジタル画像内に隠された情報を埋め込むことが望ましい他のタイプのデジタルイメージングシステム及びアプリケーションに関連して適用されてもよいことを認識されたい。
【０００２】
【従来の技術及び発明が解決しようとする課題】
ほとんどのデジタル通信チャネルの帯域幅は有限であることから、可能な限り多くの情報又はデータをデジタル画像内に組込むことが望ましい。さらに、個人、企業、及び政府の、情報スーパーハイウェー（即ちインターネットやワールドワイドウェブ等）に対するの関心は指数的に高まっており、デジタル画像として埋め込まれた、著作権を有する材料の保護が強く必要とされている。特に、著作権法の下に所有者に与えられる利益を守るために、デジタル画像内に所有権を示すある種の印を埋め込むことが必要である。従って、デジタル画像が電子的にコピー又は転写される頻度に関わりなく、各デジタルコピーがデジタル画像の所有権を示すある種の印を埋め込まれるべきである。
【０００３】
また、画像編集ソフトウェアの出現に伴い、デジタル画像を一画素ずつ操作又は変更する能力が簡単に入手可能である。従って、あるデジタル画像が実際に何らかの変更を加えられたものであるか否かを決定するために、そのデジタル画像を認証できることが強く必要とされる。
【０００４】
【課題を解決するための手段】
本発明の第１の態様に従い、ビデオモニタに表示されるデジタル画像の認証方法が開示され、このデジタル画像はその中に埋め込まれた認証印を含む。この方法は、a）デジタル画像を定める各画素のビットを再配列するステップと、b）認証印が変更されていないときにはデジタル画像は真正品であり、認証印が変更されているときにはデジタル画像は真正品ではない、認証印を見るために、デジタル画像を表示するステップと、を含む。
【０００５】
本発明の別の態様に従い、第１デジタル画像と第２デジタル画像とを１つの複合デジタル画像へと複合する方法が開示される。この方法は、a）複合デジタル画像の対応する出力画素を形成するために、第１デジタル画像と関連する第１画素の少なくとも１つのビットを第２デジタル画像に関連する対応する第２画素の少なくとも１つの第２ビットと複合するステップと、b）第１画素付近に位置する複数の画素に第１画素と出力画素との差異の値を配分するステップと、c）再配列済出力画素を形成するために出力画素のビット順を再配列するステップと、d）第２画素付近に位置する複数の画素に第２画素と再配列済出力画素との差異の値を配分するステップと、e）第１デジタル画像の各画素についてa)からd）のステップを繰り返すステップと、を含む。本発明の第２の態様は、更に、f）ステップe）の後、第１デジタル画像を見るために複合デジタル画像を表示するステップと、g）複合デジタル画像の各出力画素のビット順を再配列するステップと、h）第２デジタル画像を見るために複合デジタル画像を表示するステップと、を含む。
【０００６】
【発明の実施の形態】
図１及び２を参照すると、第１の連続トーンデジタル画像Ａは第１画像バッファ即ちレジスタ１０に記憶され、第２の連続トーンデジタル画像Ｂは第２画像バッファ即ちレジスタ１２に記憶されている。デジタル画像Ａ及びＢは、従来の方法で２進数の２次元アレイとして、画像バッファ１０及び１２内に記憶されている。記憶されている２進数は、グレースケール強度、輝度、色差等の異なる情報に対応することができる。画像Ａ及びＢは、スキャナ、デジタルカメラ、フレームグラバー(frame grabber)、又は他のデジタル化装置を用いてサンプリング及びデジタル化でき、ＲＡＭ、ＲＯＭ、ハードドライブ、磁気テープ、フロッピーディスク、ＣＤ、ＤＶＤ等のような記録媒体上に記憶されることができる。
【０００７】
デジタル画像Ａ及びＢは、画像要素（即ち画素）ごとに任意のビット数で表わされることができる。一般的に、グレースケール画像は１バイト（８ビット）/画素で表わされる。これにより、各画素は0（黒）から255（白）までの範囲に渡ることができる。各画像要素を定めるビットは、最も重要なビットB7から最も重要でないビットB0まで順位づけされ（８ビット画素を前提とする）、より重要なビットは典型的にキャプチャされた画像情報を表わし、より重要でないビットは本質的にランダムノイズを表わす。以降、“上位順位ビット”という用語は、ある画素の上位即ち最も重要な半分を形成する１つ以上のビットのことをいい、一方、“下位順位ビット”という用語は、ある画素の下位即ち最も重要でない半分を形成する１つ以上のビットのことをいう。例えば、８ビット画素の上位順位ビットはB7からB4のビットであり、一方、８ビット画素の下位順位ビットはB3からB0のビットである。
【０００８】
さらに、グレースケール画像は、多くの画像要素即ち画素を有するビットマップ画像ファイル又はラスタ画像ファイルとして記憶されることができる。例えば、512×512の画像は262,144個の画像要素を有することになる。トゥルーカラー画像は3バイト（24ビット）/画素で表わされることができ、各バイトがそれぞれカラー画像の１つの色成分（赤、緑、青）のグレースケール強度を表わす。色マップ即ちルックアップテーブルを用いて、カラー画像を１画素につき１バイトか２バイトで表わしてもよい。
【０００９】
上述のように記憶された両方のデジタル画像に関して、次に、両方のデジタル入力画像Ａ及びＢを、各デジタル画像の左上の画素１６及び１８で開始して１画素ずつ解析することによって、それらの画像を単一のデジタル出力画像に複合することができる。詳細には、図３及び４のフロー図に示されるように、画像Ａの左上の画素１６の強度を表わすデータは（以下に詳しく述べるように）0から255までの範囲にクリップされ、単一のバイトに縮小され、入力画素バッファ２０に記憶される（ブロック１００）。次に、バッファ２０内のデータの４つの最も重要なビット（ＭＳＢ：Most Significant Bits）（B7からB4）が出力画素バッファ２２の４つの最も重要なビットに、同じビット順でコピーされる（ブロック１１０）。つまり、バッファ２０内のビットB7がバッファ２２内のビットB7になり、バッファ２０内のビットB4がバッファ２２内のビットB4になる。
【００１０】
同様に、画像Ｂの左上の画素１８の強度を表わすデータが0から255の範囲にクリップされ、単一のバイトに縮小され、入力画素バッファ２４に記憶される（ブロック１２０）。次に、バッファ２４からのデータの４つの最も重要なビット（B7からB4）が、出力画素バッファ２２の４つの最も重要でないビット（ＬＳＢ：Least Significant Bits）に逆のビット順でコピーされる（ブロック１３０）。つまり、バッファ２４内のビットB7がバッファ２２内のビットB0になり、バッファ２４内のビットB4がバッファ２２内のビットB3になる。実際は、画像Ｂについての4ビットの画素強度情報が、画像Ａについての画素強度情報のノイズビット内に隠されている。
【００１１】
このように、画素１６及び１８それぞれからの４つの最も重要なビット（ＭＳＢ）が、それぞれの画像からコピーされ、複合されて、画素１６からの４つの最も重要なビットが出力画素２６の４つの最も重要なビットをなし、画素１８の４つの最も重要なビットが順位を逆転されて出力画素２６の４つの最も重要でないビットをなす、８ビットの出力画素２６を形成する。複合された出力画素２６は、次に、出力画像バッファ２８にコピーされる（ブロック１４０）。この複合出力画素２６は、以下に述べる後続の処理のために、テンポラリバッファ３０（図２）にもコピーされ（ブロック１５０）、逆ビット順で記憶される（ブロック１６０）。
【００１２】
出力画素２６の生成によって誤差が生じている。即ち、出力画素２６の値が入力画素１６の値とも入力画素１８の値とも等しくない。従って、次に、標準多重レベル誤差拡散処理が行われる。つまり、バッファ２２に記憶されている出力画素２６の強度値とバッファ１０に記憶されている“クリップされていない”入力画素１６の強度値との差異が決定される（ブロック１７０）。次に、得られた差異の値が、画像Ａ内の画素１６に近在及び/又は隣接する画素に配分される（ブロック１８０）。
【００１３】
図５は、入力画素１６と出力画素２６との差異の値の配分に用いることができる複数の従来の誤差拡散フィルタを示している。詳細には、図５（Ａ）はフロイド及びスタインバーグ(Floyd and Steinberg)式誤差フィルターを示しており、このフィルターは差異の値を16等分し、示されるように、差異を画像Ａの４つの隣接する画素の間で重み付けして配分する。図５（Ｂ）はジャービス、ジュディス及びニンク(Jarvis, Judice, and Ninke)式誤差フィルタを示しており、このフィルターは差異の値を48等分し、示されるように、差異を画像Ａの12個の隣接及び近在する画素の間で重み付けして配分する。図５（Ｃ）はスタッキ(Stucki)式誤差フィルタを示しており、このフィルターは差異の値を42等分し、示されるように、差異を画像Ａの12個の隣接及び近在する画素の間で重み付けして配分する。調整された画像画素は、その後、第１画素１６に関して述べられたのと同じ方法で、複合出力画像を生成するのに用いられる。
【００１４】
上述の誤差拡散アルゴリズムを用いて差異の値を隣接及び近在する画素間に拡散することに加えて、エッジ強調のための公知のものを含む他の誤差拡散アルゴリズムを用いてもよい。
【００１５】
ブロック１８０で重み付けされた差異の値が配分される際、隣接/近在画素の値は255という上限値を越えて増加することがあり、又は0という下限値を下回って減少することがある。いずれの場合も、複合入力画素及び配分された誤差を記憶するには１バイト（８ビット）を越える記憶容量が必要である。配分された誤差を、画素が最終的に処理される際の後続の使用のために、二次的なデータバッファ（図示せず）に記憶させるか、又は単にデータバッファ１０に、各画素につき１バイト（８ビット）を越えるデータを記憶するための容量を備えることが可能である。
【００１６】
255を越える値を有する画素がその後処理される際、その画素値は、入力画素バッファ２０にコピーされる（ブロック１００）前に、まずクリップされるか又は255に設定される。同様に、0を下回る値を有する画素が処理される際には、その画素は、バッファ２０にコピーされる（ブロック１００）際、まずクリップされるか又は0に設定される。
【００１７】
画像Ｂについても、バッファ１２に記憶されている“クリップされていない”入力画素１８とバッファ３０に記憶されているビット逆転出力画素２６との差異の値に基づいて、標準多重レベル誤差拡散処理が行われる。つまり、バッファ３０に記憶されているビット逆転出力画素２６の強度値とバッファ１２に記憶されている入力画素１８の強度値との差異が決定される（ブロック１９０）。次に、得られた差異の値が、公知の誤差拡散ルーチンを用いて、第２画像Ｂ内の画素１８に対して近在及び/又は隣接する画素に配分される（ブロック２００）。画像Ａの画素のように、誤差拡散プロセスの結果生成された差異の誤差は、二次的なデータバッファに記憶されるか、又は入力画素と共にデータバッファ１２に含まれる。さらに、画像Ｂの画素は、画像バッファ２４に記憶される際、先の誤差拡散（ブロック２００）の結果それらの値が0から255の範囲外である場合は、0又は255にクリップされる（ブロック１２０）。
【００１８】
２つの誤差拡散の計算は、入力画像Ａ及びＢの両方に渡って同時に実行され、両方の入力画像としての複合出力画像が画素ごとに、左から右、上から下のパターンで解析される（ブロック２１０）。最終結果はバッファ２８に記憶された複合出力画像であり、それは直接見ると（即ちビデオモニターに表示すると）第１画像Ａのように見え（図１）、複合出力画像を形成する各画素が図６に示されているビット逆転のように再配列されたものを見ると、第２画像Ｂのように見える（図２）。画像Ａ、Ｂを見る前の出力バッファ２８内の複合画像の個々の画素のビット逆転に、簡単なユーティリティプログラムを用いることもできよう。
【００１９】
入力画像Ａ及びＢがカラー画像である場合は、個々のカラーセパレーションが個別に上述したものと同じ方法で処理される。つまり、画像Ａ及びＢからの赤のカラーセパレーションが複合されて赤の出力カラーセパレーションを生成し、画像Ａ及びＢからの青のカラーセパレーションが複合されて青の出力カラーセパレーションを生成し、画像Ａ及びＢからの緑のカラーセパレーションが複合されて緑の出力カラーセパレーションを生成することができる。また、異なるカラーセパレーションを複合することもできよう。例えば、第１画像の赤のカラーセパレーションを第２画像の緑のカラーセパレーションと複合するなどといったことが可能である。
【００２０】
複合された出力画像は、埋め込まれている隠された画像を壊すことなく、電子的にコピー及び転写可能である。従って、複合画像の電子的コピーのビットを逆転するか、又は１画素ずつ操作して、例えば、複合画像の所有権又は著作権情報（デジタル透かしやロゴのようなもの）、ユーザへの指示、又は任意の他のビジュアル情報又は文字情報を見ることが考えられる。
【００２１】
【発明の効果】
上述のプロセスの１つの重要な適用例は、オリジナルデジタル画像（即ち画像Ａ）が、上述の方法で埋め込まれた認証マーク又はパターン（即ち画像Ｂ）を含む、画像の認証である。ユーザが、例えば画像編集ソフトウェア（ＪＡＳＣ製ペイントショッププロ(Paint Shop Pro)、アドビ(Adobe)製フォトショップ(Photo Shop)等）を用いて、デジタル画像に変更を加えた場合、埋め込まれた認証マークも変更されるので、オリジナル画像が真正品ではなく、事実上改ざんされたものであることを示す。
【００２２】
例えば、人物のオリジナルデジタル画像（即ち画像Ａ）に、上述の方法で認証マーク又はパターン（即ち画像Ｂ）が埋め込まれているとする。そして、画像編集ソフトウェアを用いて、オリジナル画像を、例えば、人物の体を電子的に切り抜いて、他の人物の体をその場所に挿入することによって、変更することができる。第２の人物の体を表わす画素には、認証マークの画素の高位順位のビットが埋め込まれていない。従って、ユーティリティプログラムを用いてそのデジタル画像の画素のビットを再配列すると、その結果、変更された認証マークとなり、オリジナル画像がもはや真正品ではないことを示す。
【図面の簡単な説明】
【図１】複合画像内に埋め込まれた第１デジタル画像を見るために、どのように複合デジタル画像の画像要素をアセンブル及び操作するかを示す図である。
【図２】複合画像内に埋め込まれた第２デジタル画像を見るために、どのように図１の複合デジタル画像を操作するかを示す図である。
【図３】第１デジタル画像及び第２デジタル画像を図１の複合デジタル画像へと複合するためのフロー図である。
【図４】第１デジタル画像及び第２デジタル画像を図１の複合デジタル画像へと複合するためのフロー図である。
【図５】第１デジタル画像及び第２デジタル画像の図１の複合デジタル画像への複合ステップの一部として二元的誤差拡散処理を行うための例示的な誤差フィルタを示す図である。
【図６】第１又は第２の埋め込みデジタル画像を見るために、図１の複合デジタル画像の各画像要素のビット順がどのように逆転されるかを示す図である。
【符号の説明】
１０    第１画像バッファ（レジスタ）
１２    第２画像バッファ（レジスタ）
１６    第１画素
１８    第２画素
２０    入力画素バッファ
２２    出力画素バッファ
２４    入力画素バッファ
２６    複合出力画素
２８    出力画像バッファ
３０    テンポラリバッファ
【図１】
0003946909.tif 000002
【図２】
0003946909.tif 000003
【図３】
0003946909.tif 000004
【図４】
0003946909.tif 000005
【図５】
0003946909.tif 000006
【図６】
0003946909.tif 000007