(57)【特許請求の範囲】
【請求項１】
画像に透かし情報を埋め込む方法であって、前記画像上において注目画素を頂点とし、前記注目画素と同一色の画素からなる第１の正三角形を検出し、前記頂点を共通とし前記注目画素と同一色の画素からなる第２の正三角形を検出し、前記検出された第１の正三角形と第２の正三角形とのなす角度を埋め込み情報とすることを特徴とする画像への透かし情報の埋め込み方法。
【請求項２】
前記画像に対して前記埋め込み情報を繰り返し埋め込むことを特徴とする請求項１記載の画像への透かし情報の埋め込み方法。
【請求項３】
透かし情報が埋め込まれた画像から透かし情報を抽出する透かし情報の復号方法であって、前記画像から、注目画素を頂点とし、前記注目画素と同一色の画素からなる第１の正三角形と、前記頂点を共通とし前記注目画素と同一色の画素からなる第２の正三角形を検出し、前記検出された第１の正三角形と第２の正三角形とのなす角度を基に前記透かし情報を抽出することを特徴とする透かし情報の復号方法。
【請求項４】
画像に透かし情報を埋め込む方法であって、請求項１に記載の画像空間への透かし情報の埋め込み方法と、周波数空間への透かし情報の埋め込み方法を併用して前記画像に２重に透かし情報を埋め込むことを特徴とする画像への透かし情報の埋め込み方法。
【請求項５】
請求項４記載の方法によって２重に透かし情報が埋め込まれた画像から透かし情報を抽出する透かし情報の復号方法であって、復号処理時に、何れか一方の透かし情報を抽出することを特徴とする透かし情報の復号方法。
【請求項６】
画像に透かし情報を埋め込む機能をコンピュータに実現させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、前記画像上において注目画素を頂点とし、前記注目画素と同一色の画素からなる第１の正三角形を検出する機能と、前記頂点を共通とし前記注目画素と同一色の画素からなる第２の正三角形を検出する機能と、前記第１の正三角形と第２の正三角形との間のなす角度に対して埋め込み情報を割り当てる機能をコンピュータに実現させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項７】
透かし情報が埋め込まれた画像から透かし情報を抽出する機能をコンピュータに実現させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、前記画像から、注目画素を頂点とし、前記注目画素と同一色の画素からなる第１の正三角形と、前記頂点を共通とし前記注目画素と同一色の画素からなる第２の正三角形を検出する機能と、前記検出された第１の正三角形と第２の正三角形とのなす角度を基に前記透かし情報を抽出する機能をコンピュータに実現させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像への透し情報の埋め込み方法、埋め込まれた透かし情報を抽出する透かし情報の復号方法および記録媒体に関し、例えば画像の著作権管理などに適用される技術である。
【０００２】
【従来の技術】
電子メディアの発展に伴い、コンテンツの違法コピー、偽造、改ざんなど著作権に係る問題が深刻化する恐れがある。コンテンツを侵害から守るために法的、技術的な面から種々の対策が考えられているが、技術的な対策の一つとして、コンテンツ中に透し情報（例えば、著作者名など）を埋め込むものがある。
【０００３】
透かし情報の埋め込み方法として、Ｗａｖｅｌｅｔ変換の出力係数（最低周波数帯域）に情報を埋め込む方法が提案されている（画像電子学会第１６２回研究会「セキュリティ機能を実現する静止画符合化方式」予稿  ９７−０６−０２）。その他の例として、画像をＦＦＴなどによって周波数領域に変換し、周波数分解されたデータに透かし信号を埋め込む方法もある（特開平９−１９１３９４号公報を参照）。
【０００４】
【発明が解決しようとする課題】
上記した従来技術では周波数変換したデータの係数（特に低周波成分）に情報を埋め込むことにより、画像の平滑化等に対して耐性を得ることができる。しかし画像のコントラストを調整するγ変換に対しては弱い（つまり、透かしが崩れる）という欠点がある。
【０００５】
本発明は上記した問題を解決するためになされたもので
本発明の目的は、γ変換に対しても強い、画像への透し情報の埋め込み方法、透かし情報の復号方法および記録媒体を提供することにある。
【０００６】
【課題を解決するための手段】
前記目的を達成するために、請求項１記載の発明では、画像に透かし情報を埋め込む方法であって、前記画像上において注目画素を頂点とし、前記注目画素と同一色の画素からなる第１の正三角形を検出し、前記頂点を共通とし前記注目画素と同一色の画素からなる第２の正三角形を検出し、前記検出された第１の正三角形と第２の正三角形とのなす角度を埋め込み情報とすることを特徴としている。
【０００７】
請求項２記載の発明では、前記画像に対して前記埋め込み情報を繰り返し埋め込むことを特徴としている。
【０００８】
請求項３記載の発明では、透かし情報が埋め込まれた画像から透かし情報を抽出する透かし情報の復号方法であって、前記画像から、注目画素を頂点とし、前記注目画素と同一色の画素からなる第１の正三角形と、前記頂点を共通とし前記注目画素と同一色の画素からなる第２の正三角形を検出し、前記検出された第１の正三角形と第２の正三角形とのなす角度を基に前記透かし情報を抽出することを特徴としている。
【０００９】
請求項４記載の発明では、画像に透かし情報を埋め込む方法であって、請求項１に記載の画像空間への透かし情報の埋め込み方法と、周波数空間への透かし情報の埋め込み方法を併用して前記画像に２重に透かし情報を埋め込むことを特徴としている。
【００１０】
請求項５記載の発明では、請求項４記載の方法によって２重に透かし情報が埋め込まれた画像から透かし情報を抽出する透かし情報の復号方法であって、復号処理時に、何れか一方の透かし情報を抽出することを特徴としている。
【００１１】
請求項６記載の発明では、画像に透かし情報を埋め込む機能をコンピュータに実現させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、前記画像上において注目画素を頂点とし、前記注目画素と同一色の画素からなる第１の正三角形を検出する機能と、前記頂点を共通とし前記注目画素と同一色の画素からなる第２の正三角形を検出する機能と、前記第１の正三角形と第２の正三角形との間のなす角度に対して埋め込み情報を割り当てる機能をコンピュータに実現させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であることを特徴としている。
【００１２】
請求項７記載の発明では、透かし情報が埋め込まれた画像から透かし情報を抽出する機能をコンピュータに実現させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、前記画像から、注目画素を頂点とし、前記注目画素と同一色の画素からなる第１の正三角形と、前記頂点を共通とし前記注目画素と同一色の画素からなる第２の正三角形を検出する機能と、前記検出された第１の正三角形と第２の正三角形とのなす角度を基に前記透かし情報を抽出する機能をコンピュータに実現させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であることを特徴としている。
【００１３】
【発明の実施の形態】
以下、本発明の一実施例を図面を用いて具体的に説明する。
【００１４】
図１は、本発明の実施例の構成を示す。図において、１は画像データを順次走査して入力する画像データ入力部、２は画像データに埋め込む情報を入力する埋め込み情報入力部、３は埋め込み情報に従って画像データに情報を埋め込む情報埋め込み処理部、４は埋め込み処理された透し入りの画像データを格納する透し入り画像データ格納部、５はγ変換などの処理が施された透し入りの画像データを格納する透し入り画像データ格納部、６は復号処理部、７は復号された埋め込み情報である。
【００１５】
図２は、本発明の情報埋め込みの処理フローチャートを示す。まず、本発明の情報埋め込みの方法について説明する。図３から図７は、本発明の情報埋め込み方法を説明する図である。
【００１６】
画像データ入力部１は、対象画像データを上から順にスキャンして行く（ステップ１０１）。情報埋め込み処理部３は、注目点（画素）を一頂点として（ステップ１０２）、同一色情報を持つ正三角形の位置関係をつくる他の２点を見つけ出す（ステップ１０３、図３）。このとき、同一色情報として、ＲＧＢのいずれかまたは全ての軸の輝度情報でもよいし、他の色表現軸（例えば、ＹＣｒＣｂ）における値でもよい。また正三角形の辺の長さ（Ｌ）はあらかじめ決めた範囲内（Ｌ１≦Ｌ≦Ｌ２）のものに限定してもよい。
【００１７】
該当する正三角形は複数検出される（ステップ１０４）。図４は、該当する正三角形が複数検出されたときの図である。もし画像上のどの点についても正三角形が複数検出されない場合には、画素の色情報を小さく変化させて、注目点において複数の正三角形が検出されるようにする。
【００１８】
複数の正三角形が検出された場合、それらの中から、注目点（画素）と対称位置にある点も同一色情報を持つ正三角形を検出する（ステップ１０５、図５）。もし、そのような正三角形が存在しないような場合には、対称位置の色情報を小さく変化させて、該当するような４点関係を作り出す。
【００１９】
上記４点関係を特定したら、この４点関係をつくる正三角形（基準となる正三角形）と、他の正三角形のなす角度を調べ、埋め込みたい情報２に対応する角度をなす正三角形を一つ特定する（ステップ１０６、図６）。
【００２０】
埋め込みたい情報２と角度の対応は例えば以下のように行う。埋め込みたい情報が２ビットの列「００」の場合は１度〜２０度または８１度〜１００度を選択し、「０１」の場合は２１度〜４０度または１０１度〜１２０度、「１０」の場合は４１度〜６０度または１２１度〜１４０度、「１１」の場合は６１度〜８０度または１４１度〜１６０度を選択する。
【００２１】
ここで、例えば埋め込みたい情報が「０１」であって、基準となる正三角形とのなす角度がそれぞれ１２度、３０度、３５度、１３０度の正三角形があったとする。この場合、３０度と３５度の２つの正三角形の何れかが上記したコード「０１」に該当する。従って、何れか１つの正三角形（たとえば３０度の正三角形）を選択し、その三角形の対称位置の点も同一色となるようにする。
【００２２】
そして、残りの三角形（１２度、３５度、１３０度）については、復号時に選択されないようにするために、対称位置の点が同一色とならないようにするか、三角形をつくる点の色を変化させて、同一色の正三角形とならないように設定する。図７は、残りの三角形の対称位置の点の色が、注目点の色と同一色とならないように設定した例を示す。
【００２３】
上記した方法では同一色の４点関係が２つ存在（基準と３０度の三角形）することになる。画像の状態によっては、上記した例である３０度の角度をなす正三角形の対称位置の画素の色が注目点と大きく相違していて、無理に注目点と同一色にした場合には画像の品質を大きく低下させることにもなる。
【００２４】
そこで、そのような画像においては、無理に該対称位置の画素値を変化させるのではなく、残りの正三角形（上記した例では、１２度、３５度、１３０度）の画素値を変化させることにより、同一色の正三角形が２つだけ（つまり、最初に特定された基準の三角形と、３０度の角度をなす三角形）になるようにする方法を採用してもよい。
【００２５】
このビット埋め込み処理を上記した走査に従って順次、行い、透かし入り画像データ４が作成される（ステップ１０７）。例えば、埋め込みたいビット列が１００ビットの場合、上記の方法では一度に２ビットまでしか埋め込めないので、５０回処理を行う必要がある。所望のビット列を全て埋め込んだら処理を終了してもよいし、また再び同じビット列の埋め込みを行ってもよい。埋め込みを繰り返す場合は、埋め込みビット列の最初に開始位置を表すサブビット列（例えば、０００００）を入れておく必要がある。埋め込みを繰り返した方が、改ざんや消去に対してより頑健になる。
【００２６】
上記した情報埋め込み方法では画素値の変更が行われる。埋め込み処理を順次行っていく際に、先に処理した画素の値を再度変更しないように、既に情報埋め込みに利用した画素の位置と、そこでの画素値を記録しておき、同じ画素を利用しないようにする。
【００２７】
さらに同じ画素値を利用しないようにしてもよいが、そのようにすると埋め込める情報量が少なくなる恐れがあるため、近傍では異なる画素値で情報埋め込みを行えばよい。
【００２８】
次に、復号は以下のように行う。復号処理部６は、γ変換などの処理が施された透かし入り画像データ５を順次走査し、注目点と同一色をなす正三角形を検出する。該正三角形が２組しか存在しない場合は、該三角形のなす角度を求め、これを所定の対応に従ってビット列に復号し、埋め込み情報７を得る。
【００２９】
該三角形が複数存在した場合は、対称位置の点も同一色である三角形を検出する。そのような三角形が２組存在した場合は、それら三角形のなす角度を所定の対応にしたがってビット列に復号する。上記した三角形が一つまたは３つ以上存在した場合は、処理を次の注目点に移す。上記処理を繰り返すことにより、連続するビット列を得る。
【００３０】
γ変換では、ある色が変換後にどのような色になるかは変換係数によるので、あらかじめ特定しておくことは難しい。しかし同じ色は変換後も同じ色となるので、上記の正三角形の関係は崩れることなく、埋め込んだ情報は復号が可能である。
【００３１】
また、画像に対する通常の処理操作として回転がある。上記した方法では、画像の上から順に、走査にしたがって情報の埋め込みと復号を行っている。従って、上記した方法では、エンコードされた画像が回転処理された場合には正しく復号できない。そこで、回転処理に対しては、以下のように対処すればよい。
【００３２】
まず、エンコードする点（上記の「注目点」）を直線上に並べておく。そして、この直線の並びが、オリジナル座標系でのエンコード方向において最も強く出るようにしておく（図８）。回転操作によっても前述した正三角形の関係は保たれるので、エンコード点の位置およびその点におけるビット情報（先の例では２ビット相当）は検出できる。そして、検出されたエンコード点が最も直線的に並ぶ方向を検出する（図９）。これが復号する際にビット列を並べていく順序となる。この場合、直線の角度は判明しても向きはわからないので、ビット列としては順序が逆となる２種類が得られる。どちらが正しいかはビット列を誤り訂正符合化するなどの方法で判定可能である。
【００３３】
上記した方法で情報の埋め込みをした場合、画像の平滑化処理によって情報が失われてしまうことがある。これに対応するには、以下のようにすればよい。
【００３４】
まず、第１の方法としては、情報の埋め込みは前述したように行い、復号時に、正三角形の検出を同一色だけでなく、多少の色の相違を許容するようにするものである。このとき、色の相違の許容度を大きくすると、情報の埋め込みを行っていない領域にまで擬似的に正三角形が多数検出されることにもなるので、標準的な平滑化フィル夕の特性を考慮して、近傍画素との関係から許容する色の相違をおさえておく。
【００３５】
第２の方法は、情報の埋め込みをする際に、平滑化によって色情報が大きく変わる可能性がある領域を除く方法である。これによって、復号時の色の相違の許容度を第１の方法よりも厳しくしても復号が可能となる。
【００３６】
第３の方法は、第１の方法と第２の方法を併用する方法である。
【００３７】
第４の方法は、ＤＣＴ、ウェーブレット変換などの周波数変換を利用する方法を併用する方法である。周波数変換を利用する方法はγ変換に対しては弱いが、平滑化などの高周波成分の変化には強い。そこで、上記した三角形の角度を利用する本発明の方法と併用し、両者の方法によって情報を２重に埋め込むことによって、直流成分に影響を与えるγ補正でも、高周波成分に影響を与える平滑化処理でも、何れにも強い情報の埋め込み方式が実現できる。
【００３８】
なお、上記した実施例における三角形は一例であって、本発明はこのような形状に限定されず、画素間の位置が所定の配置関係にあればよい。
【００３９】
また、本発明はソフトウェアよっても実現できる。図１０は、本発明をソフトウェアよって実現する場合のシステム構成例を示す。ＣＤ−ＲＯＭなどの記録媒体には、本発明の透かし情報埋め込み処理プログラム、透かし情報抽出処理プログラムが記録されていて、これをシステムにインストールする。スキャナから読み込まれた画像あるいはシステム内に蓄積されている画像に対して、透かし情報を埋め込み、透かし入り画像データを他の媒体に出力したり、あるいはネットワークを介して他の装置に伝送する。また、システムに取り込まれた透かし入り画像データから、正しく透かし情報を復元する。
【００４０】
【発明の効果】
以上、説明したように、本発明によれば、γ変換などの画像処理に対しても、電子透かしが崩れることなく強い透かし埋め込み方法および復号方法を実現することができる。
【００４１】
本発明によれば、γ変換や平滑化などの画像処理に対しても強い電子透かし埋め込み方法および復号方法を実現することができる。
【図面の簡単な説明】
【図１】  本発明の実施例の構成を示す。
【図２】  本発明の情報埋め込みの処理フローチャートを示す
【図３】  同一色情報の正三角形をつくる他の２点を検出する図である。
【図４】  該当する正三角形が複数検出される図である。
【図５】  正三角形群の中で、対称位置の画素の色情報が等しいものを検出または作成する図である。
【図６】  図５で検出された正三角形群の中から、埋め込む情報に該当する角度をつくる三角形を選択し、選択された三角形の対称位置にある点の色情報を同一にする図である。
【図７】  残りの正三角形の対称位置にある点が同一色情報にならないように設定する図である。
【図８】  エンコードされた画像を示す。
【図９】  回転操作を受けた画像を示す。
【図１０】  本発明をソフトウェアよって実現する場合のシステム構成例を示す。
【符号の説明】
１  画像データ入力部
２  埋め込み情報入力部
３  情報埋め込み処理部
４、５  透かし入り画像データ格納部
６  復号処理部
７  埋め込み情報
【図１】
0003664594.tif 000002
【図２】
0003664594.tif 000003
【図３】
0003664594.tif 000004
【図４】
0003664594.tif 000005
【図５】
0003664594.tif 000006
【図６】
0003664594.tif 000007
【図７】
0003664594.tif 000008
【図８】
0003664594.tif 000009
【図９】
0003664594.tif 000010
【図１０】
0003664594.tif 000011