特許第5988596号(P5988596)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社日立ソリューションズの特許一覧

<>
  • 特許5988596-潜像埋め込み処理の画質維持方法 図000004
  • 特許5988596-潜像埋め込み処理の画質維持方法 図000005
  • 特許5988596-潜像埋め込み処理の画質維持方法 図000006
  • 特許5988596-潜像埋め込み処理の画質維持方法 図000007
  • 特許5988596-潜像埋め込み処理の画質維持方法 図000008
  • 特許5988596-潜像埋め込み処理の画質維持方法 図000009
  • 特許5988596-潜像埋め込み処理の画質維持方法 図000010
  • 特許5988596-潜像埋め込み処理の画質維持方法 図000011
  • 特許5988596-潜像埋め込み処理の画質維持方法 図000012
  • 特許5988596-潜像埋め込み処理の画質維持方法 図000013
  • 特許5988596-潜像埋め込み処理の画質維持方法 図000014
  • 特許5988596-潜像埋め込み処理の画質維持方法 図000015
  • 特許5988596-潜像埋め込み処理の画質維持方法 図000016
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5988596
(24)【登録日】2016年8月19日
(45)【発行日】2016年9月7日
(54)【発明の名称】潜像埋め込み処理の画質維持方法
(51)【国際特許分類】
   H04N 1/387 20060101AFI20160825BHJP
   G06T 5/50 20060101ALI20160825BHJP
   H04N 1/40 20060101ALI20160825BHJP
【FI】
   H04N1/387
   G06T5/50
   H04N1/40 Z
【請求項の数】7
【全頁数】18
(21)【出願番号】特願2012-12618(P2012-12618)
(22)【出願日】2012年1月25日
(65)【公開番号】特開2013-153297(P2013-153297A)
(43)【公開日】2013年8月8日
【審査請求日】2015年1月9日
(73)【特許権者】
【識別番号】000233055
【氏名又は名称】株式会社日立ソリューションズ
(74)【代理人】
【識別番号】100100310
【弁理士】
【氏名又は名称】井上 学
(74)【代理人】
【識別番号】100098660
【弁理士】
【氏名又は名称】戸田 裕二
(74)【代理人】
【識別番号】100091720
【弁理士】
【氏名又は名称】岩崎 重美
(72)【発明者】
【氏名】山田 隆亮
(72)【発明者】
【氏名】田中 由泰
【審査官】 鈴木 明
(56)【参考文献】
【文献】 特開2011−176385(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 1/387
G06T 5/50
H04N 1/40
(57)【特許請求の範囲】
【請求項1】
計算機を用いて、情報を埋め込む前の原画像に、前記情報を表す潜像メッセージ画像を潜像として重畳した潜像埋め込み画像を生成する潜像埋め込み方法であって,前記潜像埋め込み画像を画像処理したときに、前記潜像メッセージ画像が顕像化されるよう、前記潜像メッセージ画像を加工する画像処理特性設定ステップを備えた潜像埋め込み方法において,
潜像メッセージ画像の大きさに基づいて原画像を小領域に分割するステップ;
周波数解析に基づいて前記小領域ごとに潜像適合性評価値を判定するステップ;
前記潜像適合性評価値に基づいて潜像を埋め込む強度を調整するステップ;
を備えたことを特徴とする潜像埋め込み方法。
【請求項2】
計算機を用いて、情報を埋め込む前の原画像に、前記情報を表す潜像メッセージ画像を潜像として重畳した潜像埋め込み画像を生成する潜像埋め込み方法であって,前記潜像埋め込み画像を縮小したときに、前記潜像メッセージ画像が顕像化されるよう、前記潜像メッセージ画像を加工する幾何変形特性設定ステップを備えた潜像埋め込み方法において,
前記原画像に画像処理フィルタを施したフィルタ画像を生成するステップ;
前記フィルタ画像と前記原画像の差分画像を生成するステップ;
前記潜像メッセージ画像の大きさに基づいて差分画像を小領域に分割するステップ;
前記小領域ごとの画素値の最大値を前記小領域内の画素の潜像適合性評価値と設定するステップ;
隣接する複数の前記小領域において,前記潜像適合性評価値が異なるとき,前記小領域の境界箇所にある境界画素の潜像適合性評価値が連続的に変化するよう,前記境界画素の前記潜像適合性評価値を修正するステップ;
前記潜像埋め込み画像を縮小したときに、前記潜像メッセージ画像が顕像化されるよう潜像パターンを作成するステップ;
前記潜像適合性評価値に基づいて潜像強度を調整するステップ;
前記潜像強度に基づいて前記潜像パターンを埋め込むステップ;
を備えたことを特徴とする潜像埋め込み方法。
【請求項3】
計算機を用いて、情報を埋め込む前の原画像に、前記情報を表す潜像メッセージ画像を潜像として重畳した潜像埋め込み画像を生成する潜像埋め込み方法であって,前記潜像埋め込み画像を縮小したときに、前記潜像メッセージ画像が顕像化されるよう、前記潜像メッセージ画像を加工する幾何変形特性設定ステップを備えた潜像埋め込み方法において,
出力スクリーンは1つ以上のウィンドウから構成し,前記ウィンドウの1つ以上に前記潜像を埋め込む方法であって,
潜像の大きさと位置を,前記潜像を埋め込もうとする前記ウィンドウの位置に依存せず,前記出力スクリーンに対する相対位置に基づいて設定するステップ;
前記ウィンドウ境界部分の潜像埋め込み強度を抑制あるいは強調するステップ;
前記ウィンドウに出力される画像に潜像を埋め込むステップ;
を備えたことを特徴とする潜像埋め込み方法。
【請求項4】
計算機を用いて、情報Bを埋め込む前の原画像に、前記情報Bを表す潜像メッセージ画像を潜像として重畳した潜像埋め込み画像を生成する潜像埋め込み方法であって,前記潜像埋め込み画像を画像処理したときに、前記潜像メッセージ画像が顕像化されるよう、前記潜像メッセージ画像を加工する幾何変形特性設定ステップを備えた潜像埋め込み方法において,
画像処理後に埋め込んだ情報Aが目視では表出しない不可視電子透かし埋め込み方法を備え,
不可視電子透かし埋め込み方法によって前記情報Aを埋め込むステップ;
前記原画像の低周波数領域において前記潜像の埋め込み強度を強く設定するステップ;
前記原画像の高周波数領域において前記不可視電子透かしの埋め込み強度を強く設定するステップ;
前記原画像の周波数特性を分析し,前記潜像および前記不可視電子透かしの強度設定を行うステップ;
を備え,
前記潜像を埋め込んだ後に前記不可視電子透かしを埋め込むことを特徴とする潜像埋め込み方法。
【請求項5】
計算機を用いて、情報を埋め込む前の原画像に、前記情報を表す潜像メッセージ画像を潜像として重畳した潜像埋め込み画像を生成する潜像埋め込み方法であって,前記潜像埋め込み画像を画像処理したときに、前記潜像メッセージ画像が顕像化されるよう、前記潜像メッセージ画像を加工する画像処理特性設定ステップを備えた潜像埋め込み方法において,
前記潜像埋め込み画像が前記画像処理を受けた場合に生成されるコピー画像を想定し,
前記画像処理において前記原画像の画素の画素値を参照する時の重み付けの値を,前記画素ごとに集計して,前記原画像の潜像ポテンシャルを計算するステップ;
前記潜像ポテンシャルの大きさに基づいて,前記原画像の画素集合を,前記コピー画像に強く反映される画素の集合Aと,弱く反映される画素の集合Bに分けるステップ;
前記集合Aに属する複数画素および前記集合Bに属する複数画素を含む原画像小領域において,前記潜像メッセージ画像の模様を集合Aの画素に重畳し,集合Bには前記模様と符号逆転する逆模様を重畳するステップ;
を備えたことを特徴とする潜像埋め込み方法。
【請求項6】
計算機を用いて、情報を埋め込む前の原画像に、前記情報を表す潜像メッセージ画像を潜像として重畳した潜像埋め込み画像を生成する潜像埋め込み方法であって,前記潜像埋め込み画像を縮小したときに、前記潜像メッセージ画像が顕像化されるよう、前記潜像メッセージ画像を加工する幾何変形特性設定ステップを備えた潜像埋め込み方法において,
前記原画像の画素値に応じて潜像強度を補正するステップ;
前記潜像強度に応じて前記原画像の画素値を変えるステップ;
を備えたことを特徴とする潜像埋め込み方法。
【請求項7】
特許請求項1,特許請求項2,特許請求項3,特許請求項4,特許請求項5のいずれかの潜像埋め込み方法において,
原画像小領域の潜像適合性評価値が低い場合,前記原画像小領域には潜像を埋め込まない
ことを特徴とする潜像埋め込み方法
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、静止画,動画などの画像に,人の目に判りにくいように情報を潜像として埋め込み,画像に何らかの処理が施された場合に,埋め込まれた情報を潜像として検知,処理する技術,および情報を埋め込む方法に関する。
【背景技術】
【0002】
情報セキュリティ技術のひとつとして,コンテンツに情報を隠す電子透かし技術がある。電子透かし技術には,ロゴマークのように可視の電子透かし技術と,特許文献2のように,微弱なノイズとして人の目に知覚しにくい性質を持つ,不可視の電子透かし技術がある。さらに,電子透かし技術の一種として,正規の視聴時には隠した潜像に気づきにくく、不正コピーなどによって特定の画像処理が生じた時に、隠れていた潜像が現れるという、潜像技術がある。デジタルコンテンツ向けにも使える潜像技術には,特許文献1のような技術が開示されている。潜像は,著作権保護,不正者けん制,真正性証明,改ざん検知などに利用できる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】PCT/JP2011/051715
【特許文献2】特開平11−098479
【発明の開示】
【発明が解決しようとする課題】
【0004】
本発明の目的は,潜像埋め込み画像の画質を維持すること,潜像が表出した際のメッセージ可読性を向上すること,さらに,それらを両立することである。
本発明の目的には,ウィンドウ単位での潜像埋め込みに伴う課題の解決を含む。例えば,モニタのデバイスドライバでは,描画単位がウィンドウである。モニタ全面を示すウィンドウを以下ではスクリーンと呼ぶ。PC等のスクリーンは複数ウィンドウの重畳結果として構成される。従来の潜像埋め込み方法では,単に1枚の画像に埋め込む方式しか開示されていなかったため,狭域のウィンドウを重畳して広域なスクリーン全体を構成する場合に,次の3つの課題があった。
第1に,ウィンドウに対して出力イベントがあるたびに,スクリーン全体の最終出力画像を更新すると,画像サイズが大きいので計算量,使用電力が過大である。
第2に,出力イベントがあったウィンドウだけに潜像を埋め込むと,画像サイズが小さいので計算量が少ないものの,複数ウィンドウ間で潜像が不連続なため,スクリーン全体として潜像の模様が不均質化する。さらに,ウィンドウが移動ことにも対応しない。すなわち,潜像として表出した後の画像からメッセージを読み取る際の可読性が低下する。
第3に,ウィンドウ境界部分に潜像のブロックノイズが発生するため,潜像埋め込み画像の画質が劣化する。
すなわち,本発明の目的は,潜像埋め込み画像の高画質化と,潜像が表出した際のメッセージ可読性を向上するのを両立すると共に,さらに,ウィンドウ単位の潜像埋め込み方法の提供であって,高速処理,画面全体としての潜像均質化,ウィンドウ境界部分の潜像ブロックノイズの低減,が可能な方法を提供することである。
さらに,従来技術では,不可視の電子透かしを埋め込んだ後に潜像を埋め込むと,不可視の電子透かしが消失しやすくなる問題があったが,本発明によって,両者の共存が容易化する方法を提供する。
【課題を解決するための手段】
【0005】
本明細書において開示される技術のうち,一つの観点に従う構成と作用は以下のとおりである。
【0006】
なお、以下の説明において、画像をデータという場合がある。画像には,静止画,動画,CGなどを含む。
【0007】
潜像埋め込み装置は,演算手段,入力手段,出力手段,メモリ(一次記憶手段),ディスク(二次記憶手段)、通信を備えた計算機上で,潜像埋め込み方法を実現するプログラム(またはモジュール)をメモリ上で動作させることによって実現できる。
メモリまたはディスクに,潜像埋め込み処理,電子透かし埋め込み処理,全体統括処理を行うプログラムを備える。潜像埋め込み処理では,入力された潜像メッセージから,特定の画像処理に反応して潜像が意図的に表出/消失するよう,座標位置ごとに重み付け計算を行って,潜像パターンを生成する。特に,重み付けでは,縮小後画像のある画素に対応する原画上の参照点に注目し,その周辺画素との距離に基づく重み付けを周辺画素それぞれに対して繰り返し行い,重みの加算和を計算して,潜像ポテンシャルを得る。潜像ポテンシャルの高いところは潜像が表出しやすい。潜像メッセージの文字サイズを考慮して原画像を小領域に分割し,特徴を分析する。潜像ポテンシャルに基づいて,潜像の表出箇所に埋め込む信号と消失箇所に埋め込む信号を振り割ると共に,両者が均等な電力であって,画像の小領域ごとに電力量がゼロ近くとなるよう信号波を調整する。このようにして潜像パターンを生成する。潜像ポテンシャル,入力された原画像の特徴,ユーザ指定パラメータに基づき,潜像を埋め込む強度を総合判定する。さらに,潜像埋め込みに伴う画素値の変化量について,複数の小領域境界部分に着目し,隣の小領域の値から滑らかに連続的な変化となるよう,強度を制御する。この判定結果を潜像強度マップとして構成し,原画像に潜像パターンを強度調整しながら重畳する。
【発明の効果】
【0008】
一つの観点に従った上記態様によって得られる効果は以下のとおりである。
本発明により、潜像埋め込み画像の画質を維持することと,前記潜像埋め込み画像が画像処理を受けて潜像が表出した際のメッセージ可読性を向上することを両立する潜像技術を提供できる。
潜像ポテンシャルの特性を利用することによって,表出する潜像の可読性が向上する。原画像の特徴を,潜像メッセージの文字サイズを考慮して画像を原小領域ごとに分析するため,分析結果が可読性に直結するようになり,表出する潜像の可読性が向上する。
潜像ポテンシャルに基づき潜像の信号電力を制御することによって,埋め込まれた信号波自体はランダムノイズとなり,潜像埋め込み画像の画質を維持することができる。さらに,複数の小領域境界部分の画素値変化量を適切に制御することによって,潜像埋め込みに伴うブロックノイズを低減できる。
さらに,本明細書が開示する潜像技術を応用する代表的なシステムによって得られる効果は、以下のとおりである。潜像強度の低いところは高周波領域など,不可視の電子透かしに適する領域となるため,不可視の電子透かしを埋め込む方法が高周波領域の画像に適する傾向があることと合わせて,両者の共存が効率よくできる。さらに,ウィンドウ単位での潜像描画において,スクリーン全体としての潜像を表現できるようになる。すなわち,ディスプレイセキュリティや,複数オブジェクトを重畳出力するCG表現のような,複数ウィンドウで構成する画像の保護に寄与する。
さらに,本発明の応用システムでは,ウィンドウ単位の潜像埋め込みにおいて,高速,低負荷な方法を提供する。さらに,画面全体として潜像が均質化し,ウィンドウ境界部分のブロックノイズが低減されるため,潜像埋め込み画像の画質維持および表出した潜像のメッセージ可読性を向上する。さらに,不可視の電子透かしと潜像の共存が高効率に実現できる。
本明細書が開示する潜像技術は、画像に情報を隠し,隠した情報を検出し処理するソフトウェア,装置,サービス,システム,コンテンツ,媒体およびその応用用途に適用可能である。
【図面の簡単な説明】
【0009】
図1】第1の実施例で,潜像埋め込み方法を備えた計算機である。
図2】潜像技術の概念図である。
図3】潜像適合性分析処理の全体的な流れである。
図4】潜像パターン生成処理の全体的な流れである。ここで,数1,数2を用いて,潜像基本パターンの生成方法の全体的な流れである。ここで,数1,数2を用いて,潜像ポテンシャルの作成方法の全体的な流れである。
図5】ブロック境界領域補正処理の説明である。
図6】ユーザ指定強度反映処理の処理内容である。
図7】潜像重畳処理の流れである。
図8】第2の実施例で,ウィンドウ単位での潜像埋め込み方法の課題とその解決イメージである。
図9】第2の実施例で,ウィンドウ単位での潜像埋め込み方法において,ウィンドウ移動時の幾何的な位置関係を示す図である。
図10】第2の実施例で,モニタデバイスドライバに潜像技術を適用した応用システム構成である。
図11】第2の実施例で,ウィンドウ内描画における潜像パターン生成処理の処理フローである。
図12】第2の実施例で,ウィンドウ内描画における潜像パターン生成処理の別の例である。
図13】第2の実施例で,ウィンドウ単位での潜像重畳処理の処理フローである。
【発明を実施するための形態】
【0010】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【0011】
図2に,潜像技術の概念図を示す。
特定の画像処理に反応して大きく画質劣化するような、潜像パターンを重畳する。潜像パターンをメッセージ203の形で埋め込んだ画像204をコピーすると、想定した画像処理が加わった場合には、メッセージを文字として読み取りやすくなる。すなわち、現れたメッセージによって不正行為をけん制できる。想定した画像処理と少し異なる画像処理であっても、エイリアシング効果によって、画質劣化しやすい性質の画像となるため、不正利用抑止に寄与する。さらに、いろいろな画像処理に反応するよう、それらに対応する複数の特性を持った潜像を混在させると、効果的にメッセージを表出させやすくなる。
第1の実施例について説明する。
図1に,第1の実施例の潜像埋め込み方法を備えた計算機を示す。
計算機102は,CPU(Central Processing Unit)106,ディスク105,メモリ104,入力装置101,出力装置103を備える。入力装置101は画像,ユーザ入力,通信入力などを受けて計算機102にデータを入力する。出力装置103は,計算機102から出力された画像,ユーザ出力,通信出力を受け,ディスプレイ,録画機,別システムとの連携手段などの役割を担う,メモリ104またはディスク105に,潜像埋め込み処理107,電子透かし埋め込み処理109,全体統括処理106を行うプログラムを備え,CPU106の制御のもとで,画像に潜像を重畳して出力する計算処理を行う。
全体統括処理106は計算機全体を制御する。さらに,現在時刻やユーザ名などの情報を管理データ108として記録あるいは読み出しを行う。さらに,入力画像を潜像埋め込み処理107に渡し,入力装置101から入力されたユーザ入力あるいは管理データ108に基づき,潜像埋め込み処理107と電子透かし埋め込み処理109を切り替え,必要なデータを渡す。
潜像埋め込み処理107は,原画像入力110,潜像メッセージ入力111,潜像パターン生成112,潜像適合性分析113,潜像重畳114,潜像埋め込み画像出力115を行うそれぞれの処理方法を備える。入力あるいは自動生成された潜像メッセージ画像から,潜像パターン生成処理112によって,潜像パターンを生成する。計算機タイマから日付時刻や利用者IDの文字列を取得し,それを画像変換することによって,潜像メッセージ画像を自動生成してもよい。入力された原画像から,潜像適合性分析処理113によって,どこにどの程度潜像を埋め込むべきか判定する。判定結果に基づき,潜像重畳処理114によって,原画像に潜像パターンを重畳する。潜像埋め込み画像出力処理115によって,重畳された画像を出力する。
ここで,潜像の信号を,電子透かしの信号よりも強く設定するとき,潜像を埋め込んだ後に,電子透かしを埋め込む処理を行う。さらに,画像を小領域に分割して分析し,不可視の電子透かしに適した高周波領域と,潜像に適した低周波領域を識別した上で,両者の共存を行う。
図3に,潜像適合性分析処理の全体的な流れを示す。
ステップ301において,原画Y[w,h]307を読み込む。
ステップ302において,原画Yにフィルタ演算を施してフィルタ画像を作成し,さらに,原画Yとの差分から,フィルタ差分画像dY[w.h]を生成する。フィルタfa()には,ノイズ除去用の画質維持フィルタ,平滑化フィルタなどを用いる。
ステップ303において,潜像で用いるメッセージ画像(サイズpw×ph)の大きさに基づき,潜像埋め込み適合性について,関数fb()を用いて大域的に判定を行う。関数fb()の処理を示す。まず,メッセージ画像を構成する1文字の縦横半分ずつの大きさを1つのブロックとして,フィルタ差分画像を小領域に分割する。1文字をまとめて処理することにより,潜像の可読性を高める。次に,ブロック内のフィルタ差分画像の値の最大値をブロック値として,ブロック全体に適用する。最大値の逆数を用いてもよい。
前記ブロック値を,あらかじめ定めたしきい値と比較し,値の上限下限を調整する。最大値が一定値以上の小領域は,高周波領域であり,潜像埋め込みに必ずしも適さない。最大値が小さい領域は低周波領域であり,潜像に適する。高周波領域には,オブジェクトのエッジ部分を含む。潜像埋め込みにより画像のエッジ部分を変更すると,潜像埋め込み画像の画質劣化を生じやすい。ブロック値が低い場所に潜像を埋め込まないことにより,潜像埋め込み画像の画質を維持できる。すなわち,潜像を埋め込んだ小領域では,表出する潜像メッセージの1文字以上の可読性を確保すると共に,可読性が確保しにくい性質の画像小領域では,潜像埋め込み画像の画質維持ができる。このようにして,大域判定結果D[w.h]310を得る。
ステップ304において,大域判定データD[w.h]310をそのまま潜像適合性情報として利用すると,ブロックごとに潜像埋め込み強度がステップ状に分かれるため,隣接するブロック同士の境目が潜像固有のブロックノイズを生じうる。そこで,補正処理fc()を行って,ブロック境界近くの値を隣接するブロックの値に近づけたE[w,h]を得る。例えば,ブロック境界にある複数画素について,線形補完値を利用してもよい。
ステップ305において,ユーザが指定する潜像強度を反映する。
ステップ306において,潜像強度マップSを作成,保存(あるいは出力)する。
図4に,潜像パターン生成処理を示す。
ステップ401において,メモリ領域確保など,変数の初期化を行う。
ステップ402において,入力装置からのユーザ指定,あるいは,あらかじめ定めておいたパラメータを用いて,メッセージ画像MP[pw,ph]を生成する。前提条件が整って潜像が表出した際に,メッセージ画像を人が認知してメッセージを読み取る。
ステップ403において,潜像基本パターンを生成する。潜像基本パターンは,2値データ(0か1)の2次元配列であって,縦横の要素数が原画像と同じ大きさであるような擬似乱数列である。多値でもよいし,負号があってもよい。縦横の要素数が原画像より少なくても,縦長でも横長でも,繰り返し利用すればよい。
ステップ404において,潜像パターンP[w,h]の中に,メッセージ画像MP[pw,ph]を複数回繰り返し配置する。水平方向i,垂直方向jは,何番目のメッセージ画像を処理するか,XY座標での位置(i,j)を示す。i,jの最大値は,それぞれ,水平あるいは垂直方向に潜像パターンPの中に配置可能なメッセージ画像の数であり,最大,w/pw,h/phである。座標(x,y)は,メッセージ画像内の座標系の元で,メッセージ画像内の注目画素の座標を示し,それぞれ最大値はpw,phである。繰り返し処理パラメータi,j,x,yの値を順次変えながら,次の処理を繰り返し行う。
ステップ405において,座標(Xp,Yp)は,潜像パターンP[w,h]における処理対象画素の座標を示し,i,j,x,yの値によって定まる座標である。また,同時に,潜像基本パターン[w,h]における処理対象画素の座標を示す。
ステップ406において,潜像パターンの特定画素の値P’(Xp,Yp)は,対応する画素の潜像基本パターンP(Xp,Yp)と,メッセージ画像MP(x,y)の積の値を用いて,α,βをパラメータとする1次線形変換した値として得る。
ステップ407において,生成した潜像パターンP’[w,h]を出力する。すなわち,潜像としての画像処理特性を備えたメッセージ画像がタイル状にならぶ。複数メッセージ画像の一部が反転してもよい。
ここで,数1,数2を用いて,潜像ポテンシャルの作成方法を示す。
【0012】
【数1】
【0013】
【数2】
【0014】
数1(a)を用いて,原画s(縦hs,横ws)をコピー画tに縮小率αで縮小する想定にて,変数を初期化する。コピー画t座標系上の注目画素Pt(p,q)について,次の処理を繰り返す。
数1(b)を用いて,注目画素Pt(p,q)に対応する原画座標系上の参照点Rs(Rx,Ry)座標を計算する。
数1(c)を用いて,原画座標系にて,参照点Rs(Rx,Ry)の左上最近傍にある原画sの画素の座標(NNx,NNy),および,その画素と参照点Rsとの距離dx,dyを計算する。
数2(a)を用いて,原画座標系にて,ある画素と参照点との距離dに応じた重み値を算出する関数fw()を定義する。バイキュービック法の重み付け例などが利用できる。
数2(b)を用いて,原画座標系にて,参照点Rsの周辺16点について,それぞれの重み値Wを計算する。
数2(c)を用いて,原画座標系の対応画素(x,y)の重み値Sw(x,y)に重み値Wを加算する。Wの絶対値を加算してもよいし,変換テーブルを介して重み付け加算してもよい。
以上の繰り返し処理によって,原画座標系における重み値Sw(x,y)を得る。これを潜像ポテンシャルと呼ぶ。上記潜像ポテンシャルSwは,縮小率αに固有の周波数特性を備えて,値の強弱の分布が格子模様状の2次元配列となる。潜像ポテンシャルは原画画素の位置が持つ属性であって,潜像適合性の判定要素のひとつである。潜像ポテンシャルの計算においては,想定する画像処理を,バイキュービック縮小処理以外の信号処理,例えば,拡大,圧縮符号化などとして演算してもよい。
潜像の表出箇所に埋め込む信号と消失箇所に埋め込む信号とが,均等な電力であって,画像の小領域ごとに電力量がゼロ近くとなるよう信号波を調整するために,潜像ポテンシャルを補整しながら利用する。潜像メッセージの模様を潜像ポテンシャルの大きな画素に重畳し,潜像ポテンシャルの小さな画素には,潜像メッセージと逆の模様を重畳することにより,小領域における潜像信号の信号電力総和を小さくすることができる。逆の模様とは,例えば,潜像メッセージが(0,2,5,−2)とあるとき,符号反転して(0,−2,−5,2)とする。もし,小領域において,潜像ポテンシャルの大きな画素が多すぎる場合には,信号電力総和を小さくするよう,重み付けをして模様を描いても良い。
さらに,潜像ポテンシャル計算結果を利用して潜像基本パターンを生成する方法を示す。
潜像ポテンシャルを示す2次元配列Sw[x][y]を用いて,潜像基本パターンを得る方法は次の通りである。
潜像の強度をV,乱数をR(乱数の範囲は0〜1,0.5〜1,−1〜1など),2値形式であって,前景1,背景−1の値を取る潜像メッセージをM[i][j]{=−1,1|0≦i≦w,0≦j≦h},潜像メッセージを原画上にタイル状に並べて埋め込む時,原画座標系(x.y)に相当する潜像メッセージ上の座標系の画素の座標を(x’,y’),と定義する。(x’,y’)は,x/w,y/hの剰余として計算する。このとき,これらの積の計算,すなわち,Sw[x][y]×V×M[x’][y’]×Rによって,潜像基本パターンを得る。あるいは,Sw[x][y]の平均値によってしきい値を設定し,Sw[x][y]を2値化して潜像基本パターンとしてもよい。
潜像基本パターン,潜像パターン,潜像メッセージ画像を横長の形で図示したが,これらの形状が横長であってもよいし,縦長であってもよい。さらに,3次元投影変換などを想定した球形などの任意の形状を利用してもよい。例えば,初期設定の潜像メッセージ画像を縦方向に2倍拡大してから利用することができる。このとき,縦長矩形領域に表現した潜像は,インタレースプログレッシブ変換処理やダウンコンバーション処理など,垂直方向固有の画像処理を受ける場合に特に有効であり,潜像埋め込み画像を画像処理した後の潜像可読性を向上させる,
図5にブロック境界領域補正処理の概要を示す。
メッセージ画像(pw×ph)502を構成する1文字503の大きさを示す領域に対して,その半分程度の大きさ(bw×bh)をブロックサイズとして利用する。さらに,隣接する複数ブロックとして,あるブロック(i.j)と(i−1,j)に注目する。大域判定データの1要素D[i,j]の値が,大域判定データの隣の要素D[i−1,h]と異なる場合には,隣接する複数ブロック504の境界部分の補正幅cwの範囲において,隣のブロックの大域判定データD[i−1,h]の値を参照した補正処理を行う。メッセージ画像を構成する1文字の縦横半分ずつの大きさを補正幅cwとしてもよい。ブロック境界領域補正処理によって,ブロック境界領域補正データE[w,h]505を得る。この補正により,潜像固有のブロックノイズを軽減する。
図6に,ユーザ指定強度反映処理の処理内容を示す。
ブロック境界領域補正データE[w,h]505と,原画307を用いる。入力装置を用いた入力,あるいは,ディスクにあらかじめ保存しておいた情報等によって,潜像強度を定める。潜像強度は,潜像によって変更する画素値の量とそれに関連するパラメータ郡である。絵柄に依存する部分を考慮し,ユーザが指定する強度を反映させる。ユーザ指定強度反映処理603では,原画の輝度成分を参照し,画像の明るいところに潜像を強く入れる判断を行う。原画の特徴を反映させる他のルールを利用してもよい。その際に,ユーザが指定する強度を反映する倍率関数b()について,図6に示すように,関数入力と関数出力について,それぞれの上限と下限(Imax,Imin,Bmax,Bmin)をステップ状関数で指定する。すなわち,これらがユーザ指定パラメータである。
図7に,潜像重畳処理の流れを示す。
ステップ701において,原画Y[w.h],ステップ702において,潜像パターンP’[w.h],ステップ703において,潜像強度マップS[w.h]をそれぞれ読み込む。
ステップ704において,潜像パターンと潜像強度マップの積を原画に加算,すなわち,Y’=Y+S*Pの計算により,潜像埋め込み画像Y’706を作成する。複数画像の重畳表示機能を備える計算機などでは,加算処理部分を別の処理ブロックが担ってもよい。
ステップ705において,潜像埋め込み画像Y’を出力する。
本発明の第2の実施例として,ディスプレイセキュリティへの応用システム例を示す。本実施例ではウィンドウ単位での潜像埋め込み方法を示す。PCモニタのデバイスドライバ等に潜像技術を装備することにより,重要情報が表示されたPC画面を携帯電話等で撮影した際に,撮影画像上あるいは保存写真から撮影者に対して警告メッセージを示すことができる。また,ネットワーク透過性を備えたウィンドウシステムでは,サーバ機器での処理結果はサーバ機器から描画要求,あるいは描画結果送信として出力され,クライアント機器で再度描画されて出力する。クライアントPCモニタのデバイスドライバでなくとも,ウィンドウ単位のサーバ処理において潜像重畳することができる。データセンタの管理オフィス内など,重要情報を管理する機器におけるディスプレイセキュリティに寄与する。
図8は,第2の実施例で,ウィンドウ単位での潜像埋め込み方法の課題とその解決イメージを示す。
潜像は,特殊な画像処理を加えない限りは可視化しない性質を持つ。しかし,図8では説明のために,潜像が可視化した場合の見え方を示している。
スクリーン801は,背景としてスクリーン全体に潜像を重畳した状態を示す。いわばPCのウィンドウシステム起動直後である。
スクリーン802は,前景となるウィンドウが生成され,そのウィンドウだけに潜像を単純に埋め込み,スクリーン801の背景と重畳描画した結果である。潜像の位置が全体として不均質となる。
スクリーン803は,前景のウィンドウが移動して再描画された状態を示す。不均質な状態は継続し,ウィンドウ位置などによっては,さらに,潜像の模様に起因したブロックノイズが生じうる。
スクリーン804は,本実施例における潜像の埋め込み方法を用いて,前景となるウィンドウが生成され,そのウィンドウだけに潜像を単純に埋め込んだ結果を示す。
スクリーン805は,本実施例における潜像の埋め込み方法を用いて,前景のウィンドウが移動して再描画された状態を示す。
図9は,第2の実施例で,ウィンドウ単位での潜像埋め込み方法において,ウィンドウ移動時の幾何的な位置関係を示す図である。
スクリーン901の原点に対して潜像904の重畳位置を固定させるものとする。スクリーン座標系において,あるウィンドウ903の左上の点902(AXs,AYs)が,別の点910(AXs’,AYs’)に移動するという,(X,Y)ベクトル移動するイベントが発生したと考える。この時,移動前のウィンドウ903の中の座標系における注目画素905の位置(xa,ya)に重畳する潜像の画素は,スクリーン原点から見て移動しないよう,ウィンドウ907の中の座標系においては,潜像が(−X,−Y)移動したとみなすのが基本的なアプローチとなる。さらに,ウィンドウ単位の逐次高速描画,画面全体としての潜像均質化,ウィンドウ境界部分のブロックノイズ低減のために,以下の方法を用いる。
図10は,第2の実施例で,モニタデバイスドライバにおいて潜像技術を適用した応用システム構成例である。
計算機1001は,入力機器1002,出力機器1003を備え,CPU1009,タイマ1010,ディスク1008,通信制御手段1007,入力制御手段1006,メインメモリ1004,グラフィックカード1005を備える。
メインメモリ1004上に,複数のアプリ(ソフトウェアプログラム)1011と,計算機1001を統括するOSカーネル1012と,実モニタデバイスドライバ1014,仮想モニタデバイスドライバ1013を読み込み,CPU1009の制御のもとで,利用者の入力指示に従って,あるいは,アプリの動作に従って,計算機は計算処理を行う。仮想モニタデバイスドライバ1013は,潜像パターン作成処理1015,潜像重畳処理1016を行う方法を備える。
グラフィックカード1005は,グラフィックメモリ1018とGPU(Graphic Processing Unit)1017を備える。グラフィックメモリ1018上に,潜像パターンデータ1019,重畳方法1020,描画方法1021を読み込み,GPU1017の制御のもとで,実モニタデバイスドライバ1016,仮想モニタデバイスドライバ1014の要求に沿った連携動作を行う。
潜像を埋め込まない場合には,仮想モニタデバイスドライバ1013を通った描画要求は,実モニタデバイスドライバ1014に送られ,グラフィックカード1005にて,描画方法1021によって描画した出力データを,出力バッファ1023に格納する。出力バッファ1023に格納された描画内容は,信号出力方法1024によって,最新の内容を逐次読み出し,モニタ信号として出力機器(モニタなど)1003に対して信号出力する。
潜像を埋め込む場合には,仮想モニタデバイスドライバ1013上に搭載した,潜像パターン作成処理方法1015によって,潜像パターンデータ1019を作成し,これをグラフィックカード1005のグラフィックメモリ1019に格納する。潜像パターンデータ1019はインストール時や起動時など,あらかじめ作成したものを繰り返し用いてもよい。潜像重畳処理方法1016によって,描画結果に潜像を重畳するよう,グラフィックカードに指示を送る。アプリ1011,OSカーネル1012から送られた描画要求は,実モニタデバイスドライバ1015の処理を経て,グラフィックカード1005に送られ,描画方法1021によって,画面を描画する。
描画方法1021によって作成された出力データに対して,潜像パターンデータ1019に基づいて潜像を重畳した後に出力バッファに送る。
ネットワーク接続された2台の計算機,クライアント機とサーバ機において,実モニタデバイスドライバ1014をクライアント機に備え,仮想モニタデバイスドライバ1016,潜像パターンデータ1019,重畳方法1020,描画方法1021をサーバ機に備えて,サーバ出力画面をクライアント機で表示してもよい。これらの機能モジュールをサーバ,クライアントどちらの機器内に装備しても,ネットワーク透過性を持ったウィンドウへの潜像重畳ができる。
図11に,第2の実施例で,ウィンドウ内描画における潜像パターン生成処理の処理フローを示す。スクリーン座標系において,ウィンドウ左上の点の座標がPs(AXs,AYs)とする。潜像基本パターンおよびメッセージ画像は,スクリーン座標系においてタイル状に敷き詰める位置に配置する。
ステップ1101において,潜像として表出させたいメッセージ画像の二次元配列MP[0〜pws][0〜phs]を読み込む。
ステップ1102において,特定条件の画像処理を受けると反応する特性を備えた潜像基本パターンをあらかじめ作成しておき,その二次元配列データP[0〜wb][0〜hb]を読み込む。
ステップ1103において,ウィンドウ内座標系における注目点(xa,ya)について,以降の繰り返し処理を行う。
ステップ1104において,スクリーン座標系における注目点の座標(xs,ys)を計算する。
ステップ1105において,注目点が含まれるメッセージ画像内座標系における注目点の座標(px,py)を計算する。AをBで割った余りを求める関数をReminder(A,B)と表す。メッセージ画像がスクリーンにタイル状に並ぶとき,スクリーン座標系の座標値を,メッセージ画像のサイズで割った余りが,求める座標値となり,Reminder関数で得ることができる。
ステップ1106において,注目点が含まれる潜像基本パターン内座標系における注目点の座標(bx,by)を計算する。
ステップ1107において,潜像パターンを示す二次元配列の1要素Pw[xa][ya]は,積算MP[px][py]×P[bx][by]によって得る。
スクリーン全体(画面の背景)も1つのウィンドウであり,スクリーン全体の潜像パターンPwをこの処理によって計算し,潜像パターンデータとして,グラフィックメモリに格納する。メッセージ画像もグラフィックメモリに格納する。
図12に,第2の実施例で,ウィンドウ内描画における潜像パターン生成処理の別の例を示す。
ステップ1201において,グラフィックメモリ1018にスクリーン全体の潜像パターンをあらかじめ格納しておき,これを再利用すると,あるウィンドウT’における潜像パターンは,図11に示した処理によらず,より高速な方法によって,潜像パターンを計算できる。なお,潜像パターン作成処理1015をグラフィックカード上メモリ1018に搭載し,GPUを用いて処理を行ってもよい。スクリーン座標系において,ウィンドウT’の左上の点の座標がPs(AXs,AYs)であるとする。
ステップ1201において,メッセージ画像の二次元配列MP[0〜pws][0〜phs]を読み込む。
ステップ1202において,潜像パターンの二次元配列データP’[0〜ws][0〜hs]を読み込む。
ステップ1203において,ウィンドウ内座標系における注目点(xa,ya)について,以降の繰り返し処理を行う。
ステップ1204において,潜像パターンを示す二次元配列の要素Pt[xa][ya] は,P’[AXs+xa][AYs+ya]によって得る。
ステップ1205において,ウィンドウT’の潜像パターンを示す二次元配列Ptを得る。
なお,モニタデバイスドライバの扱うウィンドウは大小様々である。ボタンひとつひとつに潜像を重畳しなくとも,ある特性(例えば一定大きさ以下)のウィンドウに対しては,潜像作成処理,潜像重畳処理を行わずに,実モニタデバイスドライバを用いて普通に描画してもよい。そのためのウィンドウ判定処理を仮想モニタデバイスドライバに備える。
図13に,第2の実施例で,ウィンドウ単位での潜像重畳処理の処理フローを示す。
ステップ1301において,描画処理によって,ウィンドウ描画画像Y[0〜ww][0〜hw]1306を生成する。ウィンドウに文字列を表示するイベントがあった場合を想定する。
ステップ1302において,仮想モニタデバイスドライバの指示によって,潜像パターン生成処理を行い,潜像パターンP’[0〜ww][0〜hw]1307を生成する。
ステップ1303において,潜像強度マップS[0〜ww][0〜hw]1308を生成する。
ステップ1304において,潜像埋め込み画像Y’1309を作成する。ウィンドウ描画画像1301を原画として,潜像強度マップS1308と潜像パターンP’1307の積を原画に加算(Y’=Y+S×P)することによって,Y’を計算する。
ステップ1305において,潜像埋め込み画像Y’[0〜ww][0〜hw]1309を出力バッファに書き込む。
潜像強度マップ1308は,例えば,ウィンドウ描画画像Y1306に対してローパスフィルタを施したフィルタ値を用いてもよいし,任意の画像処理フィルタ出力値を利用できる。あらかじめ定めたパラメータを用いてもよい。ローパスフィルタを施した場合,ウィンドウ描画画像Yの高周波成分,すなわち,エッジ界隈への潜像埋め込みが抑制され,潜像埋め込み画像Y’1309の画質維持に寄与する。また,ウィンドウ周辺部分への埋め込みを抑制するドーナツ型(あるいは矩形状)のフィルタをお用いてもよいし,その逆に強調してもよい。ドーナツ型のフィルタ例は,ウィンドウサイズが3x3のとき,[0,0,0][0,1,0][0,0,0]である。図13の潜像強度マップ1308では,中央値の潜像が残り,周辺部の潜像は消失,あるいは,ウィンドウ周辺方向に向けて連続的に弱体化する。適切なフィルタの適用により,ウィンドウ境界部分でのブロックノイズが弱まって,スクリーン全体の画質が維持される。潜像を埋め込む代わりに,電子透かしを埋め込んでもよい。
また,ゲームやCG(コンピュータグラフィックス)の描画処理では,複数オブジェクトを1スクリーンに重畳表示させて1枚のユーザ画面を構成する。CGは,複数のユーザ画面を連続生成した結果が動きとなりうる点で動画でもある。潜像を個々のオブジェクト画像に重畳する場合には,ウィンドウシステムの描画処理と技術的に同等であり,ユーザ画面に潜像を重畳する上で,本実施例が適用できる。
【符号の説明】
【0015】
102:計算機,112:潜像パターン生成処理,113:潜像適合性分析処理,505:ブロック境界領域補正データ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13