(57)【特許請求の範囲】
【請求項１】
計算機を用いて、情報を埋め込む前の原画像に、前記情報を表す潜像メッセージ画像を潜像として重畳した潜像埋め込み画像を生成する潜像埋め込み方法であって，前記潜像埋め込み画像を画像処理したときに、前記潜像メッセージ画像が顕像化されるよう、前記潜像メッセージ画像を加工する画像処理特性設定ステップを備えた潜像埋め込み方法において，
潜像メッセージ画像の大きさに基づいて原画像を小領域に分割するステップ；
周波数解析に基づいて前記小領域ごとに潜像適合性評価値を判定するステップ；
前記潜像適合性評価値に基づいて潜像を埋め込む強度を調整するステップ；
を備えたことを特徴とする潜像埋め込み方法。
【請求項２】
計算機を用いて、情報を埋め込む前の原画像に、前記情報を表す潜像メッセージ画像を潜像として重畳した潜像埋め込み画像を生成する潜像埋め込み方法であって，前記潜像埋め込み画像を縮小したときに、前記潜像メッセージ画像が顕像化されるよう、前記潜像メッセージ画像を加工する幾何変形特性設定ステップを備えた潜像埋め込み方法において，
前記原画像に画像処理フィルタを施したフィルタ画像を生成するステップ；
前記フィルタ画像と前記原画像の差分画像を生成するステップ；
前記潜像メッセージ画像の大きさに基づいて差分画像を小領域に分割するステップ；
前記小領域ごとの画素値の最大値を前記小領域内の画素の潜像適合性評価値と設定するステップ；
隣接する複数の前記小領域において，前記潜像適合性評価値が異なるとき，前記小領域の境界箇所にある境界画素の潜像適合性評価値が連続的に変化するよう，前記境界画素の前記潜像適合性評価値を修正するステップ；
前記潜像埋め込み画像を縮小したときに、前記潜像メッセージ画像が顕像化されるよう潜像パターンを作成するステップ；
前記潜像適合性評価値に基づいて潜像強度を調整するステップ；
前記潜像強度に基づいて前記潜像パターンを埋め込むステップ；
を備えたことを特徴とする潜像埋め込み方法。
【請求項３】
計算機を用いて、情報を埋め込む前の原画像に、前記情報を表す潜像メッセージ画像を潜像として重畳した潜像埋め込み画像を生成する潜像埋め込み方法であって，前記潜像埋め込み画像を縮小したときに、前記潜像メッセージ画像が顕像化されるよう、前記潜像メッセージ画像を加工する幾何変形特性設定ステップを備えた潜像埋め込み方法において，
出力スクリーンは１つ以上のウィンドウから構成し，前記ウィンドウの１つ以上に前記潜像を埋め込む方法であって，
潜像の大きさと位置を，前記潜像を埋め込もうとする前記ウィンドウの位置に依存せず，前記出力スクリーンに対する相対位置に基づいて設定するステップ；
前記ウィンドウ境界部分の潜像埋め込み強度を抑制あるいは強調するステップ；
前記ウィンドウに出力される画像に潜像を埋め込むステップ；
を備えたことを特徴とする潜像埋め込み方法。
【請求項４】
計算機を用いて、情報Ｂを埋め込む前の原画像に、前記情報Ｂを表す潜像メッセージ画像を潜像として重畳した潜像埋め込み画像を生成する潜像埋め込み方法であって，前記潜像埋め込み画像を画像処理したときに、前記潜像メッセージ画像が顕像化されるよう、前記潜像メッセージ画像を加工する幾何変形特性設定ステップを備えた潜像埋め込み方法において，
画像処理後に埋め込んだ情報Ａが目視では表出しない不可視電子透かし埋め込み方法を備え，
不可視電子透かし埋め込み方法によって前記情報Ａを埋め込むステップ；
前記原画像の低周波数領域において前記潜像の埋め込み強度を強く設定するステップ；
前記原画像の高周波数領域において前記不可視電子透かしの埋め込み強度を強く設定するステップ；
前記原画像の周波数特性を分析し，前記潜像および前記不可視電子透かしの強度設定を行うステップ；
を備え，
前記潜像を埋め込んだ後に前記不可視電子透かしを埋め込むことを特徴とする潜像埋め込み方法。
【請求項５】
計算機を用いて、情報を埋め込む前の原画像に、前記情報を表す潜像メッセージ画像を潜像として重畳した潜像埋め込み画像を生成する潜像埋め込み方法であって，前記潜像埋め込み画像を画像処理したときに、前記潜像メッセージ画像が顕像化されるよう、前記潜像メッセージ画像を加工する画像処理特性設定ステップを備えた潜像埋め込み方法において，
前記潜像埋め込み画像が前記画像処理を受けた場合に生成されるコピー画像を想定し，
前記画像処理において前記原画像の画素の画素値を参照する時の重み付けの値を，前記画素ごとに集計して，前記原画像の潜像ポテンシャルを計算するステップ；
前記潜像ポテンシャルの大きさに基づいて，前記原画像の画素集合を，前記コピー画像に強く反映される画素の集合Ａと，弱く反映される画素の集合Ｂに分けるステップ；
前記集合Ａに属する複数画素および前記集合Ｂに属する複数画素を含む原画像小領域において，前記潜像メッセージ画像の模様を集合Ａの画素に重畳し，集合Ｂには前記模様と符号逆転する逆模様を重畳するステップ；
を備えたことを特徴とする潜像埋め込み方法。
【請求項６】
計算機を用いて、情報を埋め込む前の原画像に、前記情報を表す潜像メッセージ画像を潜像として重畳した潜像埋め込み画像を生成する潜像埋め込み方法であって，前記潜像埋め込み画像を縮小したときに、前記潜像メッセージ画像が顕像化されるよう、前記潜像メッセージ画像を加工する幾何変形特性設定ステップを備えた潜像埋め込み方法において，
前記原画像の画素値に応じて潜像強度を補正するステップ；
前記潜像強度に応じて前記原画像の画素値を変えるステップ；
を備えたことを特徴とする潜像埋め込み方法。
【請求項７】
特許請求項１，特許請求項２，特許請求項３，特許請求項４，特許請求項５のいずれかの潜像埋め込み方法において，
原画像小領域の潜像適合性評価値が低い場合，前記原画像小領域には潜像を埋め込まない
ことを特徴とする潜像埋め込み方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、静止画，動画などの画像に，人の目に判りにくいように情報を潜像として埋め込み，画像に何らかの処理が施された場合に，埋め込まれた情報を潜像として検知，処理する技術，および情報を埋め込む方法に関する。
【背景技術】
【０００２】
情報セキュリティ技術のひとつとして，コンテンツに情報を隠す電子透かし技術がある。電子透かし技術には，ロゴマークのように可視の電子透かし技術と，特許文献２のように，微弱なノイズとして人の目に知覚しにくい性質を持つ，不可視の電子透かし技術がある。さらに，電子透かし技術の一種として，正規の視聴時には隠した潜像に気づきにくく、不正コピーなどによって特定の画像処理が生じた時に、隠れていた潜像が現れるという、潜像技術がある。デジタルコンテンツ向けにも使える潜像技術には，特許文献１のような技術が開示されている。潜像は，著作権保護，不正者けん制，真正性証明，改ざん検知などに利用できる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】ＰＣＴ／ＪＰ２０１１／０５１７１５
【特許文献２】特開平１１−０９８４７９
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明の目的は，潜像埋め込み画像の画質を維持すること，潜像が表出した際のメッセージ可読性を向上すること，さらに，それらを両立することである。
本発明の目的には，ウィンドウ単位での潜像埋め込みに伴う課題の解決を含む。例えば，モニタのデバイスドライバでは，描画単位がウィンドウである。モニタ全面を示すウィンドウを以下ではスクリーンと呼ぶ。ＰＣ等のスクリーンは複数ウィンドウの重畳結果として構成される。従来の潜像埋め込み方法では，単に１枚の画像に埋め込む方式しか開示されていなかったため，狭域のウィンドウを重畳して広域なスクリーン全体を構成する場合に，次の３つの課題があった。
第１に，ウィンドウに対して出力イベントがあるたびに，スクリーン全体の最終出力画像を更新すると，画像サイズが大きいので計算量，使用電力が過大である。
第２に，出力イベントがあったウィンドウだけに潜像を埋め込むと，画像サイズが小さいので計算量が少ないものの，複数ウィンドウ間で潜像が不連続なため，スクリーン全体として潜像の模様が不均質化する。さらに，ウィンドウが移動ことにも対応しない。すなわち，潜像として表出した後の画像からメッセージを読み取る際の可読性が低下する。
第３に，ウィンドウ境界部分に潜像のブロックノイズが発生するため，潜像埋め込み画像の画質が劣化する。
すなわち，本発明の目的は，潜像埋め込み画像の高画質化と，潜像が表出した際のメッセージ可読性を向上するのを両立すると共に，さらに，ウィンドウ単位の潜像埋め込み方法の提供であって，高速処理，画面全体としての潜像均質化，ウィンドウ境界部分の潜像ブロックノイズの低減，が可能な方法を提供することである。
さらに，従来技術では，不可視の電子透かしを埋め込んだ後に潜像を埋め込むと，不可視の電子透かしが消失しやすくなる問題があったが，本発明によって，両者の共存が容易化する方法を提供する。
【課題を解決するための手段】
【０００５】
本明細書において開示される技術のうち，一つの観点に従う構成と作用は以下のとおりである。
【０００６】
なお、以下の説明において、画像をデータという場合がある。画像には，静止画，動画，ＣＧなどを含む。
【０００７】
潜像埋め込み装置は，演算手段，入力手段，出力手段，メモリ（一次記憶手段），ディスク（二次記憶手段）、通信を備えた計算機上で，潜像埋め込み方法を実現するプログラム（またはモジュール）をメモリ上で動作させることによって実現できる。
メモリまたはディスクに，潜像埋め込み処理，電子透かし埋め込み処理，全体統括処理を行うプログラムを備える。潜像埋め込み処理では，入力された潜像メッセージから，特定の画像処理に反応して潜像が意図的に表出／消失するよう，座標位置ごとに重み付け計算を行って，潜像パターンを生成する。特に，重み付けでは，縮小後画像のある画素に対応する原画上の参照点に注目し，その周辺画素との距離に基づく重み付けを周辺画素それぞれに対して繰り返し行い，重みの加算和を計算して，潜像ポテンシャルを得る。潜像ポテンシャルの高いところは潜像が表出しやすい。潜像メッセージの文字サイズを考慮して原画像を小領域に分割し，特徴を分析する。潜像ポテンシャルに基づいて，潜像の表出箇所に埋め込む信号と消失箇所に埋め込む信号を振り割ると共に，両者が均等な電力であって，画像の小領域ごとに電力量がゼロ近くとなるよう信号波を調整する。このようにして潜像パターンを生成する。潜像ポテンシャル，入力された原画像の特徴，ユーザ指定パラメータに基づき，潜像を埋め込む強度を総合判定する。さらに，潜像埋め込みに伴う画素値の変化量について，複数の小領域境界部分に着目し，隣の小領域の値から滑らかに連続的な変化となるよう，強度を制御する。この判定結果を潜像強度マップとして構成し，原画像に潜像パターンを強度調整しながら重畳する。
【発明の効果】
【０００８】
一つの観点に従った上記態様によって得られる効果は以下のとおりである。
本発明により、潜像埋め込み画像の画質を維持することと，前記潜像埋め込み画像が画像処理を受けて潜像が表出した際のメッセージ可読性を向上することを両立する潜像技術を提供できる。
潜像ポテンシャルの特性を利用することによって，表出する潜像の可読性が向上する。原画像の特徴を，潜像メッセージの文字サイズを考慮して画像を原小領域ごとに分析するため，分析結果が可読性に直結するようになり，表出する潜像の可読性が向上する。
潜像ポテンシャルに基づき潜像の信号電力を制御することによって，埋め込まれた信号波自体はランダムノイズとなり，潜像埋め込み画像の画質を維持することができる。さらに，複数の小領域境界部分の画素値変化量を適切に制御することによって，潜像埋め込みに伴うブロックノイズを低減できる。
さらに，本明細書が開示する潜像技術を応用する代表的なシステムによって得られる効果は、以下のとおりである。潜像強度の低いところは高周波領域など，不可視の電子透かしに適する領域となるため，不可視の電子透かしを埋め込む方法が高周波領域の画像に適する傾向があることと合わせて，両者の共存が効率よくできる。さらに，ウィンドウ単位での潜像描画において，スクリーン全体としての潜像を表現できるようになる。すなわち，ディスプレイセキュリティや，複数オブジェクトを重畳出力するＣＧ表現のような，複数ウィンドウで構成する画像の保護に寄与する。
さらに，本発明の応用システムでは，ウィンドウ単位の潜像埋め込みにおいて，高速，低負荷な方法を提供する。さらに，画面全体として潜像が均質化し，ウィンドウ境界部分のブロックノイズが低減されるため，潜像埋め込み画像の画質維持および表出した潜像のメッセージ可読性を向上する。さらに，不可視の電子透かしと潜像の共存が高効率に実現できる。
本明細書が開示する潜像技術は、画像に情報を隠し，隠した情報を検出し処理するソフトウェア，装置，サービス，システム，コンテンツ，媒体およびその応用用途に適用可能である。
【図面の簡単な説明】
【０００９】
【図１】第１の実施例で，潜像埋め込み方法を備えた計算機である。
【図２】潜像技術の概念図である。
【図３】潜像適合性分析処理の全体的な流れである。
【図４】潜像パターン生成処理の全体的な流れである。ここで，数１，数２を用いて，潜像基本パターンの生成方法の全体的な流れである。ここで，数１，数２を用いて，潜像ポテンシャルの作成方法の全体的な流れである。
【図５】ブロック境界領域補正処理の説明である。
【図６】ユーザ指定強度反映処理の処理内容である。
【図７】潜像重畳処理の流れである。
【図８】第２の実施例で，ウィンドウ単位での潜像埋め込み方法の課題とその解決イメージである。
【図９】第２の実施例で，ウィンドウ単位での潜像埋め込み方法において，ウィンドウ移動時の幾何的な位置関係を示す図である。
【図１０】第２の実施例で，モニタデバイスドライバに潜像技術を適用した応用システム構成である。
【図１１】第２の実施例で，ウィンドウ内描画における潜像パターン生成処理の処理フローである。
【図１２】第２の実施例で，ウィンドウ内描画における潜像パターン生成処理の別の例である。
【図１３】第２の実施例で，ウィンドウ単位での潜像重畳処理の処理フローである。
【発明を実施するための形態】
【００１０】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００１１】
図２に，潜像技術の概念図を示す。
特定の画像処理に反応して大きく画質劣化するような、潜像パターンを重畳する。潜像パターンをメッセージ２０３の形で埋め込んだ画像２０４をコピーすると、想定した画像処理が加わった場合には、メッセージを文字として読み取りやすくなる。すなわち、現れたメッセージによって不正行為をけん制できる。想定した画像処理と少し異なる画像処理であっても、エイリアシング効果によって、画質劣化しやすい性質の画像となるため、不正利用抑止に寄与する。さらに、いろいろな画像処理に反応するよう、それらに対応する複数の特性を持った潜像を混在させると、効果的にメッセージを表出させやすくなる。
第１の実施例について説明する。
図１に，第１の実施例の潜像埋め込み方法を備えた計算機を示す。
計算機１０２は，ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０６，ディスク１０５，メモリ１０４，入力装置１０１，出力装置１０３を備える。入力装置１０１は画像，ユーザ入力，通信入力などを受けて計算機１０２にデータを入力する。出力装置１０３は，計算機１０２から出力された画像，ユーザ出力，通信出力を受け，ディスプレイ，録画機，別システムとの連携手段などの役割を担う，メモリ１０４またはディスク１０５に，潜像埋め込み処理１０７，電子透かし埋め込み処理１０９，全体統括処理１０６を行うプログラムを備え，ＣＰＵ１０６の制御のもとで，画像に潜像を重畳して出力する計算処理を行う。
全体統括処理１０６は計算機全体を制御する。さらに，現在時刻やユーザ名などの情報を管理データ１０８として記録あるいは読み出しを行う。さらに，入力画像を潜像埋め込み処理１０７に渡し，入力装置１０１から入力されたユーザ入力あるいは管理データ１０８に基づき，潜像埋め込み処理１０７と電子透かし埋め込み処理１０９を切り替え，必要なデータを渡す。
潜像埋め込み処理１０７は，原画像入力１１０，潜像メッセージ入力１１１，潜像パターン生成１１２，潜像適合性分析１１３，潜像重畳１１４，潜像埋め込み画像出力１１５を行うそれぞれの処理方法を備える。入力あるいは自動生成された潜像メッセージ画像から，潜像パターン生成処理１１２によって，潜像パターンを生成する。計算機タイマから日付時刻や利用者ＩＤの文字列を取得し，それを画像変換することによって，潜像メッセージ画像を自動生成してもよい。入力された原画像から，潜像適合性分析処理１１３によって，どこにどの程度潜像を埋め込むべきか判定する。判定結果に基づき，潜像重畳処理１１４によって，原画像に潜像パターンを重畳する。潜像埋め込み画像出力処理１１５によって，重畳された画像を出力する。
ここで，潜像の信号を，電子透かしの信号よりも強く設定するとき，潜像を埋め込んだ後に，電子透かしを埋め込む処理を行う。さらに，画像を小領域に分割して分析し，不可視の電子透かしに適した高周波領域と，潜像に適した低周波領域を識別した上で，両者の共存を行う。
図３に，潜像適合性分析処理の全体的な流れを示す。
ステップ３０１において，原画Ｙ［ｗ，ｈ］３０７を読み込む。
ステップ３０２において，原画Ｙにフィルタ演算を施してフィルタ画像を作成し，さらに，原画Ｙとの差分から，フィルタ差分画像ｄＹ［ｗ．ｈ］を生成する。フィルタｆａ（）には，ノイズ除去用の画質維持フィルタ，平滑化フィルタなどを用いる。
ステップ３０３において，潜像で用いるメッセージ画像（サイズｐｗ×ｐｈ）の大きさに基づき，潜像埋め込み適合性について，関数ｆｂ（）を用いて大域的に判定を行う。関数ｆｂ（）の処理を示す。まず，メッセージ画像を構成する１文字の縦横半分ずつの大きさを１つのブロックとして，フィルタ差分画像を小領域に分割する。１文字をまとめて処理することにより，潜像の可読性を高める。次に，ブロック内のフィルタ差分画像の値の最大値をブロック値として，ブロック全体に適用する。最大値の逆数を用いてもよい。
前記ブロック値を，あらかじめ定めたしきい値と比較し，値の上限下限を調整する。最大値が一定値以上の小領域は，高周波領域であり，潜像埋め込みに必ずしも適さない。最大値が小さい領域は低周波領域であり，潜像に適する。高周波領域には，オブジェクトのエッジ部分を含む。潜像埋め込みにより画像のエッジ部分を変更すると，潜像埋め込み画像の画質劣化を生じやすい。ブロック値が低い場所に潜像を埋め込まないことにより，潜像埋め込み画像の画質を維持できる。すなわち，潜像を埋め込んだ小領域では，表出する潜像メッセージの１文字以上の可読性を確保すると共に，可読性が確保しにくい性質の画像小領域では，潜像埋め込み画像の画質維持ができる。このようにして，大域判定結果Ｄ［ｗ．ｈ］３１０を得る。
ステップ３０４において，大域判定データＤ［ｗ．ｈ］３１０をそのまま潜像適合性情報として利用すると，ブロックごとに潜像埋め込み強度がステップ状に分かれるため，隣接するブロック同士の境目が潜像固有のブロックノイズを生じうる。そこで，補正処理ｆｃ（）を行って，ブロック境界近くの値を隣接するブロックの値に近づけたＥ［ｗ，ｈ］を得る。例えば，ブロック境界にある複数画素について，線形補完値を利用してもよい。
ステップ３０５において，ユーザが指定する潜像強度を反映する。
ステップ３０６において，潜像強度マップＳを作成，保存（あるいは出力）する。
図４に，潜像パターン生成処理を示す。
ステップ４０１において，メモリ領域確保など，変数の初期化を行う。
ステップ４０２において，入力装置からのユーザ指定，あるいは，あらかじめ定めておいたパラメータを用いて，メッセージ画像ＭＰ［ｐｗ，ｐｈ］を生成する。前提条件が整って潜像が表出した際に，メッセージ画像を人が認知してメッセージを読み取る。
ステップ４０３において，潜像基本パターンを生成する。潜像基本パターンは，２値データ（０か１）の２次元配列であって，縦横の要素数が原画像と同じ大きさであるような擬似乱数列である。多値でもよいし，負号があってもよい。縦横の要素数が原画像より少なくても，縦長でも横長でも，繰り返し利用すればよい。
ステップ４０４において，潜像パターンＰ［ｗ，ｈ］の中に，メッセージ画像ＭＰ［ｐｗ，ｐｈ］を複数回繰り返し配置する。水平方向ｉ，垂直方向ｊは，何番目のメッセージ画像を処理するか，ＸＹ座標での位置（ｉ，ｊ）を示す。ｉ，ｊの最大値は，それぞれ，水平あるいは垂直方向に潜像パターンＰの中に配置可能なメッセージ画像の数であり，最大，ｗ／ｐｗ，ｈ／ｐｈである。座標（ｘ，ｙ）は，メッセージ画像内の座標系の元で，メッセージ画像内の注目画素の座標を示し，それぞれ最大値はｐｗ，ｐｈである。繰り返し処理パラメータｉ，ｊ，ｘ，ｙの値を順次変えながら，次の処理を繰り返し行う。
ステップ４０５において，座標（Ｘｐ，Ｙｐ）は，潜像パターンＰ［ｗ，ｈ］における処理対象画素の座標を示し，ｉ，ｊ，ｘ，ｙの値によって定まる座標である。また，同時に，潜像基本パターン［ｗ，ｈ］における処理対象画素の座標を示す。
ステップ４０６において，潜像パターンの特定画素の値Ｐ’（Ｘｐ，Ｙｐ）は，対応する画素の潜像基本パターンＰ（Ｘｐ，Ｙｐ）と，メッセージ画像ＭＰ（ｘ，ｙ）の積の値を用いて，α，βをパラメータとする１次線形変換した値として得る。
ステップ４０７において，生成した潜像パターンＰ’［ｗ，ｈ］を出力する。すなわち，潜像としての画像処理特性を備えたメッセージ画像がタイル状にならぶ。複数メッセージ画像の一部が反転してもよい。
ここで，数１，数２を用いて，潜像ポテンシャルの作成方法を示す。
【００１２】
【数１】
0005988596.tif 000002
【００１３】
【数２】
0005988596.tif 000003
【００１４】
数１（ａ）を用いて，原画ｓ（縦ｈｓ，横ｗｓ）をコピー画ｔに縮小率αで縮小する想定にて，変数を初期化する。コピー画ｔ座標系上の注目画素Ｐｔ（ｐ，ｑ）について，次の処理を繰り返す。
数１（ｂ）を用いて，注目画素Ｐｔ（ｐ，ｑ）に対応する原画座標系上の参照点Ｒｓ（Ｒｘ，Ｒｙ）座標を計算する。
数１（ｃ）を用いて，原画座標系にて，参照点Ｒｓ（Ｒｘ，Ｒｙ）の左上最近傍にある原画ｓの画素の座標（ＮＮｘ，ＮＮｙ），および，その画素と参照点Ｒｓとの距離ｄｘ，ｄｙを計算する。
数２（ａ）を用いて，原画座標系にて，ある画素と参照点との距離ｄに応じた重み値を算出する関数ｆｗ（）を定義する。バイキュービック法の重み付け例などが利用できる。
数２（ｂ）を用いて，原画座標系にて，参照点Ｒｓの周辺１６点について，それぞれの重み値Ｗを計算する。
数２（ｃ）を用いて，原画座標系の対応画素（ｘ，ｙ）の重み値Ｓｗ（ｘ，ｙ）に重み値Ｗを加算する。Ｗの絶対値を加算してもよいし，変換テーブルを介して重み付け加算してもよい。
以上の繰り返し処理によって，原画座標系における重み値Ｓｗ（ｘ，ｙ）を得る。これを潜像ポテンシャルと呼ぶ。上記潜像ポテンシャルＳｗは，縮小率αに固有の周波数特性を備えて，値の強弱の分布が格子模様状の２次元配列となる。潜像ポテンシャルは原画画素の位置が持つ属性であって，潜像適合性の判定要素のひとつである。潜像ポテンシャルの計算においては，想定する画像処理を，バイキュービック縮小処理以外の信号処理，例えば，拡大，圧縮符号化などとして演算してもよい。
潜像の表出箇所に埋め込む信号と消失箇所に埋め込む信号とが，均等な電力であって，画像の小領域ごとに電力量がゼロ近くとなるよう信号波を調整するために，潜像ポテンシャルを補整しながら利用する。潜像メッセージの模様を潜像ポテンシャルの大きな画素に重畳し，潜像ポテンシャルの小さな画素には，潜像メッセージと逆の模様を重畳することにより，小領域における潜像信号の信号電力総和を小さくすることができる。逆の模様とは，例えば，潜像メッセージが（０，２，５，−２）とあるとき，符号反転して（０，−２，−５，２）とする。もし，小領域において，潜像ポテンシャルの大きな画素が多すぎる場合には，信号電力総和を小さくするよう，重み付けをして模様を描いても良い。
さらに，潜像ポテンシャル計算結果を利用して潜像基本パターンを生成する方法を示す。
潜像ポテンシャルを示す２次元配列Ｓｗ［ｘ］［ｙ］を用いて，潜像基本パターンを得る方法は次の通りである。
潜像の強度をＶ，乱数をＲ（乱数の範囲は０〜１，０．５〜１，−１〜１など），２値形式であって，前景１，背景−１の値を取る潜像メッセージをＭ［ｉ］［ｊ］｛＝−１，１｜０≦ｉ≦ｗ，０≦ｊ≦ｈ｝，潜像メッセージを原画上にタイル状に並べて埋め込む時，原画座標系（ｘ．ｙ）に相当する潜像メッセージ上の座標系の画素の座標を（ｘ’，ｙ’），と定義する。（ｘ’，ｙ’）は，ｘ／ｗ，ｙ／ｈの剰余として計算する。このとき，これらの積の計算，すなわち，Ｓｗ［ｘ］［ｙ］×Ｖ×Ｍ［ｘ’］［ｙ’］×Ｒによって，潜像基本パターンを得る。あるいは，Ｓｗ［ｘ］［ｙ］の平均値によってしきい値を設定し，Ｓｗ［ｘ］［ｙ］を２値化して潜像基本パターンとしてもよい。
潜像基本パターン，潜像パターン，潜像メッセージ画像を横長の形で図示したが，これらの形状が横長であってもよいし，縦長であってもよい。さらに，３次元投影変換などを想定した球形などの任意の形状を利用してもよい。例えば，初期設定の潜像メッセージ画像を縦方向に２倍拡大してから利用することができる。このとき，縦長矩形領域に表現した潜像は，インタレースプログレッシブ変換処理やダウンコンバーション処理など，垂直方向固有の画像処理を受ける場合に特に有効であり，潜像埋め込み画像を画像処理した後の潜像可読性を向上させる，
図５にブロック境界領域補正処理の概要を示す。
メッセージ画像（ｐｗ×ｐｈ）５０２を構成する１文字５０３の大きさを示す領域に対して，その半分程度の大きさ（ｂｗ×ｂｈ）をブロックサイズとして利用する。さらに，隣接する複数ブロックとして，あるブロック（ｉ．ｊ）と（ｉ−１，ｊ）に注目する。大域判定データの１要素Ｄ［ｉ，ｊ］の値が，大域判定データの隣の要素Ｄ［ｉ−１，ｈ］と異なる場合には，隣接する複数ブロック５０４の境界部分の補正幅ｃｗの範囲において，隣のブロックの大域判定データＤ［ｉ−１，ｈ］の値を参照した補正処理を行う。メッセージ画像を構成する１文字の縦横半分ずつの大きさを補正幅ｃｗとしてもよい。ブロック境界領域補正処理によって，ブロック境界領域補正データＥ［ｗ，ｈ］５０５を得る。この補正により，潜像固有のブロックノイズを軽減する。
図６に，ユーザ指定強度反映処理の処理内容を示す。
ブロック境界領域補正データＥ［ｗ，ｈ］５０５と，原画３０７を用いる。入力装置を用いた入力，あるいは，ディスクにあらかじめ保存しておいた情報等によって，潜像強度を定める。潜像強度は，潜像によって変更する画素値の量とそれに関連するパラメータ郡である。絵柄に依存する部分を考慮し，ユーザが指定する強度を反映させる。ユーザ指定強度反映処理６０３では，原画の輝度成分を参照し，画像の明るいところに潜像を強く入れる判断を行う。原画の特徴を反映させる他のルールを利用してもよい。その際に，ユーザが指定する強度を反映する倍率関数ｂ（）について，図６に示すように，関数入力と関数出力について，それぞれの上限と下限（Ｉｍａｘ，Ｉｍｉｎ，Ｂｍａｘ，Ｂｍｉｎ）をステップ状関数で指定する。すなわち，これらがユーザ指定パラメータである。
図７に，潜像重畳処理の流れを示す。
ステップ７０１において，原画Ｙ［ｗ．ｈ］，ステップ７０２において，潜像パターンＰ’［ｗ．ｈ］，ステップ７０３において，潜像強度マップＳ［ｗ．ｈ］をそれぞれ読み込む。
ステップ７０４において，潜像パターンと潜像強度マップの積を原画に加算，すなわち，Ｙ’＝Ｙ＋Ｓ＊Ｐの計算により，潜像埋め込み画像Ｙ’７０６を作成する。複数画像の重畳表示機能を備える計算機などでは，加算処理部分を別の処理ブロックが担ってもよい。
ステップ７０５において，潜像埋め込み画像Ｙ’を出力する。
本発明の第２の実施例として，ディスプレイセキュリティへの応用システム例を示す。本実施例ではウィンドウ単位での潜像埋め込み方法を示す。ＰＣモニタのデバイスドライバ等に潜像技術を装備することにより，重要情報が表示されたＰＣ画面を携帯電話等で撮影した際に，撮影画像上あるいは保存写真から撮影者に対して警告メッセージを示すことができる。また，ネットワーク透過性を備えたウィンドウシステムでは，サーバ機器での処理結果はサーバ機器から描画要求，あるいは描画結果送信として出力され，クライアント機器で再度描画されて出力する。クライアントＰＣモニタのデバイスドライバでなくとも，ウィンドウ単位のサーバ処理において潜像重畳することができる。データセンタの管理オフィス内など，重要情報を管理する機器におけるディスプレイセキュリティに寄与する。
図８は，第２の実施例で，ウィンドウ単位での潜像埋め込み方法の課題とその解決イメージを示す。
潜像は，特殊な画像処理を加えない限りは可視化しない性質を持つ。しかし，図８では説明のために，潜像が可視化した場合の見え方を示している。
スクリーン８０１は，背景としてスクリーン全体に潜像を重畳した状態を示す。いわばＰＣのウィンドウシステム起動直後である。
スクリーン８０２は，前景となるウィンドウが生成され，そのウィンドウだけに潜像を単純に埋め込み，スクリーン８０１の背景と重畳描画した結果である。潜像の位置が全体として不均質となる。
スクリーン８０３は，前景のウィンドウが移動して再描画された状態を示す。不均質な状態は継続し，ウィンドウ位置などによっては，さらに，潜像の模様に起因したブロックノイズが生じうる。
スクリーン８０４は，本実施例における潜像の埋め込み方法を用いて，前景となるウィンドウが生成され，そのウィンドウだけに潜像を単純に埋め込んだ結果を示す。
スクリーン８０５は，本実施例における潜像の埋め込み方法を用いて，前景のウィンドウが移動して再描画された状態を示す。
図９は，第２の実施例で，ウィンドウ単位での潜像埋め込み方法において，ウィンドウ移動時の幾何的な位置関係を示す図である。
スクリーン９０１の原点に対して潜像９０４の重畳位置を固定させるものとする。スクリーン座標系において，あるウィンドウ９０３の左上の点９０２（ＡＸｓ，ＡＹｓ）が，別の点９１０（ＡＸｓ’，ＡＹｓ’）に移動するという，（Ｘ，Ｙ）ベクトル移動するイベントが発生したと考える。この時，移動前のウィンドウ９０３の中の座標系における注目画素９０５の位置（ｘａ，ｙａ）に重畳する潜像の画素は，スクリーン原点から見て移動しないよう，ウィンドウ９０７の中の座標系においては，潜像が（−Ｘ，−Ｙ）移動したとみなすのが基本的なアプローチとなる。さらに，ウィンドウ単位の逐次高速描画，画面全体としての潜像均質化，ウィンドウ境界部分のブロックノイズ低減のために，以下の方法を用いる。
図１０は，第２の実施例で，モニタデバイスドライバにおいて潜像技術を適用した応用システム構成例である。
計算機１００１は，入力機器１００２，出力機器１００３を備え，ＣＰＵ１００９，タイマ１０１０，ディスク１００８，通信制御手段１００７，入力制御手段１００６，メインメモリ１００４，グラフィックカード１００５を備える。
メインメモリ１００４上に，複数のアプリ（ソフトウェアプログラム）１０１１と，計算機１００１を統括するＯＳカーネル１０１２と，実モニタデバイスドライバ１０１４，仮想モニタデバイスドライバ１０１３を読み込み，ＣＰＵ１００９の制御のもとで，利用者の入力指示に従って，あるいは，アプリの動作に従って，計算機は計算処理を行う。仮想モニタデバイスドライバ１０１３は，潜像パターン作成処理１０１５，潜像重畳処理１０１６を行う方法を備える。
グラフィックカード１００５は，グラフィックメモリ１０１８とＧＰＵ（Ｇｒａｐｈｉｃ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０１７を備える。グラフィックメモリ１０１８上に，潜像パターンデータ１０１９，重畳方法１０２０，描画方法１０２１を読み込み，ＧＰＵ１０１７の制御のもとで，実モニタデバイスドライバ１０１６，仮想モニタデバイスドライバ１０１４の要求に沿った連携動作を行う。
潜像を埋め込まない場合には，仮想モニタデバイスドライバ１０１３を通った描画要求は，実モニタデバイスドライバ１０１４に送られ，グラフィックカード１００５にて，描画方法１０２１によって描画した出力データを，出力バッファ１０２３に格納する。出力バッファ１０２３に格納された描画内容は，信号出力方法１０２４によって，最新の内容を逐次読み出し，モニタ信号として出力機器（モニタなど）１００３に対して信号出力する。
潜像を埋め込む場合には，仮想モニタデバイスドライバ１０１３上に搭載した，潜像パターン作成処理方法１０１５によって，潜像パターンデータ１０１９を作成し，これをグラフィックカード１００５のグラフィックメモリ１０１９に格納する。潜像パターンデータ１０１９はインストール時や起動時など，あらかじめ作成したものを繰り返し用いてもよい。潜像重畳処理方法１０１６によって，描画結果に潜像を重畳するよう，グラフィックカードに指示を送る。アプリ１０１１，ＯＳカーネル１０１２から送られた描画要求は，実モニタデバイスドライバ１０１５の処理を経て，グラフィックカード１００５に送られ，描画方法１０２１によって，画面を描画する。
描画方法１０２１によって作成された出力データに対して，潜像パターンデータ１０１９に基づいて潜像を重畳した後に出力バッファに送る。
ネットワーク接続された２台の計算機，クライアント機とサーバ機において，実モニタデバイスドライバ１０１４をクライアント機に備え，仮想モニタデバイスドライバ１０１６，潜像パターンデータ１０１９，重畳方法１０２０，描画方法１０２１をサーバ機に備えて，サーバ出力画面をクライアント機で表示してもよい。これらの機能モジュールをサーバ，クライアントどちらの機器内に装備しても，ネットワーク透過性を持ったウィンドウへの潜像重畳ができる。
図１１に，第２の実施例で，ウィンドウ内描画における潜像パターン生成処理の処理フローを示す。スクリーン座標系において，ウィンドウ左上の点の座標がＰｓ（ＡＸｓ，ＡＹｓ）とする。潜像基本パターンおよびメッセージ画像は，スクリーン座標系においてタイル状に敷き詰める位置に配置する。
ステップ１１０１において，潜像として表出させたいメッセージ画像の二次元配列ＭＰ［０〜ｐｗｓ］［０〜ｐｈｓ］を読み込む。
ステップ１１０２において，特定条件の画像処理を受けると反応する特性を備えた潜像基本パターンをあらかじめ作成しておき，その二次元配列データＰ［０〜ｗｂ］［０〜ｈｂ］を読み込む。
ステップ１１０３において，ウィンドウ内座標系における注目点（ｘａ，ｙａ）について，以降の繰り返し処理を行う。
ステップ１１０４において，スクリーン座標系における注目点の座標（ｘｓ，ｙｓ）を計算する。
ステップ１１０５において，注目点が含まれるメッセージ画像内座標系における注目点の座標（ｐｘ，ｐｙ）を計算する。ＡをＢで割った余りを求める関数をＲｅｍｉｎｄｅｒ（Ａ，Ｂ）と表す。メッセージ画像がスクリーンにタイル状に並ぶとき，スクリーン座標系の座標値を，メッセージ画像のサイズで割った余りが，求める座標値となり，Ｒｅｍｉｎｄｅｒ関数で得ることができる。
ステップ１１０６において，注目点が含まれる潜像基本パターン内座標系における注目点の座標（ｂｘ，ｂｙ）を計算する。
ステップ１１０７において，潜像パターンを示す二次元配列の１要素Ｐｗ［ｘａ］［ｙａ］は，積算ＭＰ［ｐｘ］［ｐｙ］×Ｐ［ｂｘ］［ｂｙ］によって得る。
スクリーン全体（画面の背景）も１つのウィンドウであり，スクリーン全体の潜像パターンＰｗをこの処理によって計算し，潜像パターンデータとして，グラフィックメモリに格納する。メッセージ画像もグラフィックメモリに格納する。
図１２に，第２の実施例で，ウィンドウ内描画における潜像パターン生成処理の別の例を示す。
ステップ１２０１において，グラフィックメモリ１０１８にスクリーン全体の潜像パターンをあらかじめ格納しておき，これを再利用すると，あるウィンドウＴ’における潜像パターンは，図１１に示した処理によらず，より高速な方法によって，潜像パターンを計算できる。なお，潜像パターン作成処理１０１５をグラフィックカード上メモリ１０１８に搭載し，ＧＰＵを用いて処理を行ってもよい。スクリーン座標系において，ウィンドウＴ’の左上の点の座標がＰｓ（ＡＸｓ，ＡＹｓ）であるとする。
ステップ１２０１において，メッセージ画像の二次元配列ＭＰ［０〜ｐｗｓ］［０〜ｐｈｓ］を読み込む。
ステップ１２０２において，潜像パターンの二次元配列データＰ’［０〜ｗｓ］［０〜ｈｓ］を読み込む。
ステップ１２０３において，ウィンドウ内座標系における注目点（ｘａ，ｙａ）について，以降の繰り返し処理を行う。
ステップ１２０４において，潜像パターンを示す二次元配列の要素Ｐｔ［ｘａ］［ｙａ］  は，Ｐ’［ＡＸｓ＋ｘａ］［ＡＹｓ＋ｙａ］によって得る。
ステップ１２０５において，ウィンドウＴ’の潜像パターンを示す二次元配列Ｐｔを得る。
なお，モニタデバイスドライバの扱うウィンドウは大小様々である。ボタンひとつひとつに潜像を重畳しなくとも，ある特性（例えば一定大きさ以下）のウィンドウに対しては，潜像作成処理，潜像重畳処理を行わずに，実モニタデバイスドライバを用いて普通に描画してもよい。そのためのウィンドウ判定処理を仮想モニタデバイスドライバに備える。
図１３に，第２の実施例で，ウィンドウ単位での潜像重畳処理の処理フローを示す。
ステップ１３０１において，描画処理によって，ウィンドウ描画画像Ｙ［０〜ｗｗ］［０〜ｈｗ］１３０６を生成する。ウィンドウに文字列を表示するイベントがあった場合を想定する。
ステップ１３０２において，仮想モニタデバイスドライバの指示によって，潜像パターン生成処理を行い，潜像パターンＰ’［０〜ｗｗ］［０〜ｈｗ］１３０７を生成する。
ステップ１３０３において，潜像強度マップＳ［０〜ｗｗ］［０〜ｈｗ］１３０８を生成する。
ステップ１３０４において，潜像埋め込み画像Ｙ’１３０９を作成する。ウィンドウ描画画像１３０１を原画として，潜像強度マップＳ１３０８と潜像パターンＰ’１３０７の積を原画に加算（Ｙ’＝Ｙ＋Ｓ×Ｐ）することによって，Ｙ’を計算する。
ステップ１３０５において，潜像埋め込み画像Ｙ’［０〜ｗｗ］［０〜ｈｗ］１３０９を出力バッファに書き込む。
潜像強度マップ１３０８は，例えば，ウィンドウ描画画像Ｙ１３０６に対してローパスフィルタを施したフィルタ値を用いてもよいし，任意の画像処理フィルタ出力値を利用できる。あらかじめ定めたパラメータを用いてもよい。ローパスフィルタを施した場合，ウィンドウ描画画像Ｙの高周波成分，すなわち，エッジ界隈への潜像埋め込みが抑制され，潜像埋め込み画像Ｙ’１３０９の画質維持に寄与する。また，ウィンドウ周辺部分への埋め込みを抑制するドーナツ型（あるいは矩形状）のフィルタをお用いてもよいし，その逆に強調してもよい。ドーナツ型のフィルタ例は，ウィンドウサイズが３ｘ３のとき，［０，０，０］［０，１，０］［０，０，０］である。図１３の潜像強度マップ１３０８では，中央値の潜像が残り，周辺部の潜像は消失，あるいは，ウィンドウ周辺方向に向けて連続的に弱体化する。適切なフィルタの適用により，ウィンドウ境界部分でのブロックノイズが弱まって，スクリーン全体の画質が維持される。潜像を埋め込む代わりに，電子透かしを埋め込んでもよい。
また，ゲームやＣＧ（コンピュータグラフィックス）の描画処理では，複数オブジェクトを１スクリーンに重畳表示させて１枚のユーザ画面を構成する。ＣＧは，複数のユーザ画面を連続生成した結果が動きとなりうる点で動画でもある。潜像を個々のオブジェクト画像に重畳する場合には，ウィンドウシステムの描画処理と技術的に同等であり，ユーザ画面に潜像を重畳する上で，本実施例が適用できる。
【符号の説明】
【００１５】
１０２：計算機，１１２：潜像パターン生成処理，１１３：潜像適合性分析処理，５０５：ブロック境界領域補正データ
【図１】
0005988596.tif 000004
【図２】
0005988596.tif 000005
【図３】
0005988596.tif 000006
【図４】
0005988596.tif 000007
【図５】
0005988596.tif 000008
【図６】
0005988596.tif 000009
【図７】
0005988596.tif 000010
【図８】
0005988596.tif 000011
【図９】
0005988596.tif 000012
【図１０】
0005988596.tif 000013
【図１１】
0005988596.tif 000014
【図１２】
0005988596.tif 000015
【図１３】
0005988596.tif 000016