(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-05-17
(45)【発行日】2024-05-27
(54)【発明の名称】ウォーターマーク埋め込み方法およびそのシステム
(51)【国際特許分類】
H04N 1/32 20060101AFI20240520BHJP
【FI】
H04N1/32 144
(21)【出願番号】P 2024008201
(22)【出願日】2024-01-23
【審査請求日】2024-01-23
(31)【優先権主張番号】10-2023-0103871
(32)【優先日】2023-08-09
(33)【優先権主張国・地域又は機関】KR
【早期審査対象出願】
(73)【特許権者】
【識別番号】524030983
【氏名又は名称】スナップタグ株式会社
【氏名又は名称原語表記】SnapTag Inc.
(74)【代理人】
【識別番号】100112737
【氏名又は名称】藤田 考晴
(74)【代理人】
【識別番号】100136168
【氏名又は名称】川上 美紀
(74)【代理人】
【識別番号】100196117
【氏名又は名称】河合 利恵
(72)【発明者】
【氏名】ファン ウン リー
(72)【発明者】
【氏名】チャン ヤン リー
【審査官】橘 高志
(56)【参考文献】
【文献】特開2006-191553(JP,A)
【文献】韓国登録特許第10-1877372(KR,B1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 1/32
(57)【特許請求の範囲】
【請求項1】
少なくとも一つのコンピューティング装置により行われる方法において、
原イメージとウォーターマークのベースパターンを取得する段階と、
前記ウォーターマークのペイロード(payload)が内在するペイロードパターンを取得する段階と、
前記原イメージに前記ベースパターンを埋め込んで中間イメージを生成する段階と、
前記中間イメージに前記ペイロードパターンを埋め込む段階とを含み、
前記ベースパターンは前記ウォーターマークのペイロード抽出に用いられる同期化信号が内在するものであり、
前記ペイロードパターンを取得する段階は、
第1乱数列に基づいて決定されたエンコーディング規則を用いて前記ペイロードをエンコードすることによって第1ペイロードパターンを生成する段階と、
前記第1乱数列と異なる第2乱数列に基づいて決定されたエンコーディング規則を用いて前記ペイロードをエンコードすることによって第2ペイロードパターンを生成する段階と、
前記第1ペイロードパターンと前記第2ペイロードパターンを結合して前記ペイロードパターンを生成する段階とを含み、
前記エンコーディング規則は前記ペイロードの値をあらかじめ定義された単位パターンでエンコードする規則である
、ウォーターマーク埋め込み方法。
【請求項2】
少なくとも一つのコンピューティング装置により行われる方法において、
原イメージとウォーターマークのベースパターンを取得する段階と、
前記ウォーターマークのペイロード(payload)が内在するペイロードパターンを取得する段階と、
前記原イメージに前記ベースパターンを埋め込んで中間イメージを生成する段階と、
前記中間イメージに前記ペイロードパターンを埋め込む段階とを含み、
前記ベースパターンは前記ウォーターマークのペイロード抽出に用いられる同期化信号が内在するものであり、
前記中間イメージを生成する段階は、
前記ベースパターンと第1加重値に基づいて前記原イメージのピクセル値を調整することによって前記中間イメージを生成する段階を含み、
前記第1加重値は前記ベースパターンによるピクセル値の調整強度を表す値であって、前記ペイロードパターンによるピクセル値の調整強度を表す第2加重値より小さい値を有する
、ウォーターマーク埋め込み方法。
【請求項3】
少なくとも一つのコンピューティング装置により行われる方法において、
原イメージとウォーターマークのベースパターンを取得する段階と、
前記ウォーターマークのペイロード(payload)が内在するペイロードパターンを取得する段階と、
前記原イメージに前記ベースパターンを埋め込んで中間イメージを生成する段階と、
前記中間イメージに前記ペイロードパターンを埋め込む段階とを含み、
前記ベースパターンは前記ウォーターマークのペイロード抽出に用いられる同期化信号が内在するものであり、
前記ベースパターンは第1加重値に基づいて前記原イメージのピクセル値を調整することによって埋め込まれ、
前記第1加重値は前記ベースパターンによるピクセル値の調整強度を表す値であり、
前記ペイロードパターンを埋め込む段階は、
加重値パラメータの値を変更しながら前記ペイロードパターンを埋め込んで前記ペイロードの抽出性能を評価する段階と、
前記評価の結果に基づいて前記ペイロードパターンに適用される第2加重値を決定する段階と、
前記ペイロードパターンと前記第2加重値に基づいて前記中間イメージのピクセル値を調整する段階とを含み、
前記加重値パラメータの値は前記ペイロードパターンによるピクセル値の調整強度を表す値である
、ウォーターマーク埋め込み方法。
【請求項4】
少なくとも一つのコンピューティング装置により行われる方法において、
原イメージとウォーターマークのベースパターンを取得する段階と、
前記ウォーターマークのペイロード(payload)が内在するペイロードパターンを取得する段階と、
前記原イメージに前記ベースパターンを埋め込んで中間イメージを生成する段階と、
前記中間イメージに前記ペイロードパターンを埋め込む段階とを含み、
前記ベースパターンは前記ウォーターマークのペイロード抽出に用いられる同期化信号が内在するものであり、
前記ペイロードパターンは複数の単位パターンを含み、
前記ペイロードパターンを埋め込む段階は、
前記中間イメージの特定単位領域のピクセル値から特定単位パターンが抽出可能であるか否かを判断する段階と、
前記特定単位パターンが抽出可能であるという判断に基づいて前記特定単位パターンの埋め込み過程をスキップするか前記ペイロードパターンに設定された加重値より小さい加重値に基づいて前記特定単位パターンを埋め込む段階とを含み、
前記特定単位領域は前記複数の単位パターンのうち前記特定単位パターンが埋め込まれる領域である
、ウォーターマーク埋め込み方法。
【請求項5】
少なくとも一つのコンピューティング装置により行われる方法において、
原イメージとウォーターマークのベースパターンを取得する段階と、
前記ウォーターマークのペイロード(payload)が内在するペイロードパターンを取得する段階と、
前記原イメージに前記ベースパターンを埋め込んで中間イメージを生成する段階と、
前記中間イメージに前記ペイロードパターンを埋め込む段階とを含み、
前記ベースパターンは前記ウォーターマークのペイロード抽出に用いられる同期化信号が内在するものであり、
前記ペイロードパターンを埋め込む段階は、
前記中間イメージの第1領域に前記ペイロードパターンの第1ブロックを第1加重値に基づいて埋め込む段階と、
前記中間イメージの第2領域に前記ペイロードパターンの第2ブロックを第2加重値に基づいて埋め込む段階とを含み、
前記第1加重値と前記第2加重値はそれぞれ前記第1ブロックと前記第2ブロックによるピクセル値の調整強度を表す値であり、
前記第1領域は前記第2領域より高周波数の領域であり、
前記第1加重値は前記第2加重値より大きい値に決定される
、ウォーターマーク埋め込み方法。
【請求項6】
少なくとも一つのコンピューティング装置により行われる方法において、
原イメージとウォーターマークのベースパターンを取得する段階と、
前記ウォーターマークのペイロード(payload)が内在するペイロードパターンを取得する段階と、
前記原イメージに前記ベースパターンを埋め込んで中間イメージを生成する段階と、
前記中間イメージに前記ペイロードパターンを埋め込む段階とを含み、
前記ベースパターンは前記ウォーターマークのペイロード抽出に用いられる同期化信号が内在するものであり、
前記ペイロードパターンを埋め込む段階は、
スケールパラメータの値に基づいて前記ペイロードパターンをスケーリングする段階と、
前記スケーリングされたペイロードパターンを前記中間イメージに埋め込む段階とを含み、
前記中間イメージは前記スケールパラメータの値に基づいてスケーリングされた前記ベースパターンを埋め込むことによって生成されたものである
、ウォーターマーク埋め込み方法。
【請求項7】
前記スケールパラメータの値は前記原イメージのサイズに基づいて決定される、請求項
6に記載のウォーターマーク埋め込み方法。
【請求項8】
前記スケーリングされたペイロードパターンは複数のスケーリングされた単位パターンを含み、
前記複数のスケーリングされた単位パターンそれぞれは複数のブロックを含み、
前記スケーリングされたペイロードパターンを前記中間イメージに埋め込む段階は、
前記複数のブロックのうち第1ブロックに対応する前記中間イメージの第1領域を決定する段階と、
前記第1ブロックの値のうち一部を抽出して前記第1領域の中央部分に埋め込む段階とを含む、請求項
6に記載のウォーターマーク埋め込み方法。
【請求項9】
前記第1ブロックに対応する前記スケーリングされたベースパターンの第2ブロックは前記第1領域の全体に埋め込まれている、請求項
8に記載のウォーターマーク埋め込み方法。
【請求項10】
前記第1ブロックに対応する前記スケーリングされたベースパターンの第2ブロックの値のうち一部も前記第1領域の前記中央部分に埋め込まれている、請求項
8に記載のウォーターマーク埋め込み方法。
【請求項11】
前記第1ブロックに対応する前記スケーリングされたベースパターンの第2ブロックの値のうち一部は前記第1領域の外郭部分に埋め込まれている、請求項
8に記載のウォーターマーク埋め込み方法。
【請求項12】
少なくとも一つのコンピューティング装置により行われる方法において、
原イメージとウォーターマークのベースパターンを取得する段階と、
前記ウォーターマークのペイロード(payload)が内在するペイロードパターンを取得する段階と、
第1加重値の値に基づいて前記原イメージの第1領域に前記ベースパターンを埋め込む段階と、
前記第1加重値の値と異なる第2加重値に基づいて前記原イメージの第2領域に前記ペイロードパターンを埋め込む段階とを含み、
前記ベースパターンは前記ウォーターマークのペイロード抽出に用いられる同期化信号が内在するものであり、
前記第1領域と前記第2領域の間には重畳領域が存在しない
、ウォーターマーク埋め込み方法。
【請求項13】
少なくとも一つのコンピューティング装置により行われる方法において、
原イメージとウォーターマークのベースパターンを取得する段階と、
前記ウォーターマークのペイロード(payload)が内在するペイロードパターンを取得する段階と、
第1加重値の値に基づいて前記原イメージの第1領域に前記ベースパターンを埋め込む段階と、
前記第1加重値の値と異なる第2加重値に基づいて前記原イメージの第2領域に前記ペイロードパターンを埋め込む段階とを含み、
前記ベースパターンは前記ウォーターマークのペイロード抽出に用いられる同期化信号が内在するものであり、
前記第1領域の形状は前記第2領域と異なる
、ウォーターマーク埋め込み方法。
【請求項14】
少なくとも一つのコンピューティング装置により行われる方法において、
原イメージとウォーターマークのベースパターンを取得する段階と、
前記ウォーターマークのペイロード(payload)が内在するペイロードパターンを取得する段階と、
第1加重値の値に基づいて前記原イメージの第1領域に前記ベースパターンを埋め込む段階と、
前記第1加重値の値と異なる第2加重値に基づいて前記原イメージの第2領域に前記ペイロードパターンを埋め込む段階とを含み、
前記ベースパターンは前記ウォーターマークのペイロード抽出に用いられる同期化信号が内在するものであり、
前記ペイロードパターンを埋め込む段階は、
スケールパラメータの値に基づいて前記ペイロードパターンをスケーリングする段階と、
前記スケーリングされたペイロードパターンを前記第2領域に埋め込む段階とを含み、
前記ベースパターンも前記スケールパラメータの値に基づいてスケーリングされた後に埋め込まれる
、ウォーターマーク埋め込み方法。
【請求項15】
前記スケーリングされたペイロードパターンは複数のスケーリングされた単位パターンを含み、
前記複数のスケーリングされた単位パターンそれぞれは複数のブロックを含み、
前記スケーリングされたペイロードパターンを前記第2領域に埋め込む段階は、
前記複数のブロックのうち第1ブロックに対応する前記原イメージの領域を決定する段階と、
前記第1ブロックの値のうち一部を抽出して前記決定された領域の中央部分に埋め込む段階とを含み、
前記中央部分は前記第2領域に属し、外郭部分は前記第1領域に属する、請求項
14に記載のウォーターマーク埋め込み方法。
【請求項16】
一つ以上のプロセッサと、
前記一つ以上のプロセッサにより実行されるコンピュータープログラムを保存するメモリとを含み、
前記コンピュータープログラムは、
原イメージとウォーターマークのベースパターンを取得する動作と、
前記ウォーターマークのペイロード(payload)が内在するペイロードパターンを取得する動作と、
前記原イメージに前記ベースパターンを埋め込んで中間イメージを生成する動作と、
前記中間イメージに前記ペイロードパターンを埋め込む動作のためのインストラクションとを含み、
前記ベースパターンは前記ウォーターマークのペイロード抽出に用いられる同期化信号が内在するものであ
り、
前記中間イメージを生成する動作は、
前記ベースパターンと第1加重値に基づいて前記原イメージのピクセル値を調整することによって前記中間イメージを生成する動作を含み、
前記第1加重値は前記ベースパターンによるピクセル値の調整強度を表す値であって、前記ペイロードパターンによるピクセル値の調整強度を表す第2加重値より小さい値を有する、ウォーターマーク埋め込みシステム。
【請求項17】
一つ以上のプロセッサと、
前記一つ以上のプロセッサにより実行されるコンピュータープログラムを保存するメモリとを含み、
前記コンピュータープログラムは、
原イメージとウォーターマークのベースパターンを取得する動作と、
前記ウォーターマークのペイロード(payload)が内在するペイロードパターンを取得する動作と、
第1加重値に基づいて前記原イメージの第1領域に前記ベースパターンを埋め込む動作と、
前記第1加重値と異なる第2加重値に基づいて前記原イメージの第2領域に前記ペイロードパターンを埋め込む動作のためのインストラクションとを含み、
前記ベースパターンは前記ウォーターマークのペイロード抽出に用いられる同期化信号が内在するものであ
り、
前記第1領域の形状は前記第2領域と異なる、ウォーターマーク埋め込みシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示はウォーターマーク(watermark)埋め込み(embedding)方法およびそのシステムに関し、より詳細には、与えられたイメージにウォーターマークを不可視的に埋め込む方法およびそのシステムに関する。
【背景技術】
【0002】
デジタル・ウォーターマーキング(digital watermarking)は写真や動画のような各種デジタルデータに特定の情報を埋め込む(挿入する)技術を意味する。このようなウォーターマーキング技術は無断複製の防止、真偽判別、情報ラベリング(labelling)などのような多様な用途に用いられている。
【0003】
最近では、人間の視覚では認知されない方式で原イメージにウォーターマークを埋め込む技術が大きな注目を集めており、これと関連する研究も活発に進められている。例えば、ウォーターマークの不可視性(invisibility)とウォーターマークの抽出性能(すなわち、認識率)を共に向上させるための研究が行われた。
【0004】
しかし、ウォーターマークの不可視性とウォーターマークの抽出性能の間にはある程度のトレードオフ(trade-off)が存在するので、この二つを共に向上させるのは非常に難しく、持続的な研究が必要な実情である。
【先行技術文献】
【特許文献】
【0005】
【文献】韓国登録特許第10-1877372号公報(2018年7月13日公告)
【発明の概要】
【発明が解決しようとする課題】
【0006】
本開示のいくつかの実施形態により解決しようとする技術的課題は、ウォーターマーク(watermark)の不可視性(invisibility)を向上させて原イメージの品質低下を最小化できるウォーターマーク埋め込み方法およびそのシステムを提供することにある。
【0007】
本開示のいくつかの実施形態により解決しようとする他の技術的課題は、ウォーターマークの抽出性能(すなわち、認識率)を向上させることができるウォーターマーク埋め込み方法およびそのシステムを提供することにある。
【0008】
本開示の技術的課題は以上で言及した技術的課題に制限されず、言及されていないまた他の技術的課題は以下の記載から本開示の技術分野における通常の技術者に明確に理解されるものである。
【課題を解決するための手段】
【0009】
前記技術的課題を解決するための本開示のいくつかの実施形態によるウォーターマーク埋め込み方法は、少なくとも一つのコンピューティング装置により行われる方法において、原イメージとウォーターマークのベースパターンを取得する段階と、前記ウォーターマークのペイロード(payload)が内在するペイロードパターンを取得する段階と、前記原イメージに前記ベースパターンを埋め込んで中間イメージを生成する段階と、前記中間イメージに前記ペイロードパターンを埋め込む段階とを含み、前記ベースパターンは前記ウォーターマークのペイロード抽出に用いられる同期化信号が内在するものである。
【0010】
前記技術的課題を解決するための本開示の他のいくつかの実施形態によるウォーターマーク埋め込み方法は、少なくとも一つのコンピューティング装置により行われる方法において、原イメージとウォーターマークのベースパターンを取得する段階と、前記ペイロードが内在するペイロードパターンを取得する段階と、第1加重値パラメータの値に基づいて前記原イメージの第1領域に前記ベースパターンを埋め込む段階と、前記第1加重値パラメータの値と異なる第2加重値に基づいて前記原イメージの第2領域に前記ペイロードパターンを埋め込む段階を含み、前記ベースパターンは前記ウォーターマークのペイロード抽出に用いられる同期化信号が内在するものである。
【0011】
前記技術的課題を解決するための本開示のいくつかの実施形態によるウォーターマーク埋め込みシステムは、一つ以上のプロセッサと、前記一つ以上のプロセッサにより実行されるコンピュータープログラムを保存するメモリとを含み、前記コンピュータープログラムは、原イメージとウォーターマークのベースパターンを取得する動作と、前記ペイロードが内在するペイロードパターンを取得する動作と、前記原イメージに前記ベースパターンを埋め込んで中間イメージを生成する動作と、前記中間イメージに前記ペイロードパターンを埋め込む動作のためのインストラクションとを含み、前記ベースパターンは前記ウォーターマークのペイロード(payload)抽出に用いられる同期化信号が内在するものである。
【0012】
前記技術的課題を解決するための本開示の他のいくつかの実施形態によるウォーターマーク埋め込みシステムは、一つ以上のプロセッサと、前記一つ以上のプロセッサにより実行されるコンピュータープログラムを保存するメモリとを含み、前記コンピュータープログラムは、原イメージとウォーターマークのベースパターンを取得する動作と、前記ウォーターマークのペイロード(payload)が内在するペイロードパターンを取得する動作、第1加重値に基づいて前記原イメージの第1領域に前記ベースパターンを埋め込む動作および前記第1加重値と異なる第2加重値に基づいて前記原イメージの第2領域に前記ペイロードパターンを埋め込む動作のためのインストラクションを含み、前記ベースパターンは前記ウォーターマークのペイロード抽出に用いられる同期化信号が内在するものである。
【0013】
前記技術的課題を解決するための本開示のいくつかの実施形態によるコンピュータープログラムは、コンピューティング装置と結合され、原イメージとウォーターマークのベースパターンを取得する段階-前記ベースパターンは前記ウォーターマークのペイロード(payload)抽出に用いられる同期化信号が内在するものである-、前記ペイロードが内在するペイロードパターンを取得する段階、前記原イメージに前記ベースパターンを埋め込んで中間イメージを生成する段階および前記中間イメージに前記ペイロードパターンを埋め込む段階を実行させるためにコンピュータで読取り可能な記録媒体に保存され得る。
【0014】
前記技術的課題を解決するための本開示の他のいくつかの実施形態によるコンピュータープログラムは、コンピューティング装置と結合され、原イメージとウォーターマークのベースパターンを取得する段階-前記ベースパターンは前記ウォーターマークのペイロード(payload)抽出に用いられる同期化信号が内在するものである-、前記ペイロードが内在するペイロードパターンを取得する段階、第1加重値パラメータの値に基づいて前記原イメージの第1領域に前記ベースパターンを埋め込む段階および前記第1加重値パラメータの値と異なる第2加重値に基づいて前記原イメージの第2領域に前記ペイロードパターンを埋め込む段階を実行させるためにコンピュータで読取り可能な記録媒体に保存され得る。
【発明の効果】
【0015】
本開示のいくつかの実施形態によれば、ウォーターマーク(watermark)のベースパターン(base pattern)とペイロードパターン(payload pattern)が個別に埋め込まれることができる。このような場合、ベースパターンとペイロードパターンに適用される加重値(すなわち、ピクセル値の調整強度を表す値)、埋め込み領域の形状などを自由に設計できるため、ウォーターマーク埋め込みアルゴリズムの設計自由度が大きく向上することができる。
【0016】
また、ベースパターンが先に埋め込まれ、後にペイロードパターンが埋め込まれることができる。このような場合、ベースパターンの埋め込みによりペイロードパターンの埋め込み結果が弱まる場合を未然に防止できるので、ウォーターマークの抽出性能が向上することができる。さらに、ベースパターンの埋め込み結果(すなわち、中間イメージ)を考慮してペイロードパターンの埋め込みの有無、埋め込み強度(すなわち、ピクセル値の調整強度)などを調整することもできるようになり、その結果、ウォーターマークの不可視性(invisibility)と抽出性能(すなわち、認識率)が共に向上することもできる。例えば、中間イメージの低周波数領域には埋め込み強度を低くしてペイロードパターンを埋め込むことによって、原イメージの品質低下を最小化すると同時にウォーターマークの不可視性が向上することもできる。または、中間イメージのピクセル値に既にペイロードパターンが反映されている場合(すなわち、中間イメージのピクセル値からペイロードパターンが抽出可能な場合)には、ペイロードパターンの埋め込み過程をスキップ(skip)するか埋め込み強度を低くすることによって、ウォーターマークの抽出性能を維持しながら不可視性が向上することもできる。または、中間イメージにペイロードパターンを相対的に強く埋め込むことによって、ウォーターマークの抽出性能が向上することもできる(なぜなら、周波数ドメインから検出されるベースパターンはその特性上弱く埋め込まれてもうまく検出されるため、ウォーターマークの抽出性能は結局ペイロードパターンの検出正確度により左右されるからである)。
【0017】
また、原イメージの単位領域(またはサブ領域)の外郭部分(または全体)にベースパターンを埋め込んで中央部分にペイロードパターンを埋め込むことによって、ウォーターマークの不可視性と抽出性能が共に向上することができる。
また、互いに異なる乱数列を用いてペイロードを繰り返してエンコードし、エンコーディング結果を結合してペイロードパターンを生成することによって、ウォーターマークの抽出性能はより一層向上することができる。
【0018】
本開示の技術的思想による効果は以上で言及した効果に制限されず、言及されていないまた他の効果は以下の記載から通常の技術者に明確に理解されるものである。
【図面の簡単な説明】
【0019】
【
図1】本開示のいくつかの実施形態によるウォーターマーク(watermark)埋め込み(embedding)システムとウォーターマーク抽出システムの動作を概略的に説明するための例示的な図である。
【
図2】本開示の多様な実施形態で参照できる原イメージとウォーターマークイメージの実例の図である。
【
図3】本開示のいくつかの実施形態によるウォーターマーク埋め込み方法を示す例示的なフローチャートである。
【
図4】本開示のいくつかの実施形態によるベースパターン(base pattern)の生成方式を説明するための例示的な図である。
【
図5】本開示のいくつかの実施形態によるペイロードパターン(payload pattern)の生成方式を説明するための例示的な図である。
【
図6】本開示の多様な実施形態で参照できるエンコーディング規則を例示する。
【
図7】本開示の他のいくつかの実施形態によるペイロードパターンの生成方式を説明するための例示的な図である。
【
図8】本開示のいくつかの実施形態による埋め込み加重値決定方式を説明するための例示的なフローチャートである。
【
図9】本開示のいくつかの実施形態によるパターン埋め込み方式を説明するための例示的な図である。
【
図10】本開示の他のいくつかの実施形態によるパターン埋め込み方式を説明するための例示的な図である。
【
図11】本開示の多様な実施形態で参照できるスケール(scale)の概念を説明するための例示的な図である。
【
図12】本開示の多様な実施形態で参照できるスケール(scale)の概念を説明するための例示的な図である。
【
図13】本開示のいくつかの実施形態による埋め込み領域の形状とそれによるパターン埋め込み方式を説明するための例示的な図である。
【
図14】本開示のいくつかの実施形態による埋め込み領域の形状とそれによるパターン埋め込み方式を説明するための例示的な図である。
【
図15】本開示の他のいくつかの実施形態による埋め込み領域の形状とそれによるパターン埋め込み方式を説明するための例示的な図である。
【
図16】本開示のまた他のいくつかの実施形態による埋め込み領域の形状とそれによるパターン埋め込み方式を説明するための例示的な図である。
【
図17】本開示のまた他のいくつかの実施形態による埋め込み領域の形状とそれによるパターン埋め込み方式を説明するための例示的な図である。
【
図18】本開示のまた他のいくつかの実施形態による埋め込み領域の形状とそれによるパターン埋め込み方式を説明するための例示的な図である。
【
図19】埋め込み領域の形状と関連する本開示の多様な実施形態によるパターン埋め込み方式の効果を説明するための例示的な図である。
【
図20】本開示の他のいくつかの実施形態によるウォーターマーク埋め込み方法を示す例示的なフローチャートである。
【
図21】本開示のいくつかの実施形態によるウォーターマークの抽出方法を示す例示的なフローチャートである。
【
図22】
図21に示すベースパターンの検出有無を判断する段階の細部過程を示す例示的なフローチャートである。
【
図23】
図21に示す撮影イメージの変換動作を説明するための例示的な図である。
【
図24】
図21に示すペイロードの抽出基準位置を決定する動作の細部過程を示す例示的なフローチャートである。
【
図25】
図21に示すペイロード抽出段階を説明するための例示的な図である。
【
図26】本開示のいくつかの実施形態によるウォーターマーク埋め込みシステムおよび/またはウォーターマーク抽出システムを実現できる例示的なコンピューティング装置を示す図である。
【発明を実施するための形態】
【0020】
以下、添付する図面を参照して本開示の多様な実施形態について詳細に説明する。本開示の利点および特徴、並びにこれらを達成する方法は添付する図面と共に詳細に後述する実施形態を参照すると明確になる。しかし、本開示の技術的思想は以下の実施形態に限定されるものではなく、互いに異なる多様な形態で実現することができ、以下の実施形態は単に本開示の技術的思想を完全にし、本開示が属する技術分野における通常の知識を有する者に本開示の範疇を完全に知らせるために提供するものであり、本開示の技術的思想は請求項の範疇によってのみ定義される。
【0021】
本開示の多様な実施形態を説明するにあたり、関連する公知構成または機能に係る具体的な説明が本開示の要旨を曖昧にすると判断される場合はその詳細な説明は省略する。
【0022】
他に定義のない限り、以下の実施形態で使用される用語(技術的および科学的用語を含む)は本開示が属する技術分野における通常の知識を有する者に共通して理解される意味で使用されるが、これは関連分野に従事する技術者の意図または判例、新技術の出現などによって変わり得る。本開示で使用された用語は実施形態を説明するためのものであり、本開示の範疇を制限しようとするものではない。
【0023】
以下の実施形態で使用される単数の表現は文脈上明白に単数であると特定されない限り、複数の概念を含む。また、複数の表現は文脈上明白に複数であると特定されない限り、単数の概念を含む。
【0024】
また、以下の実施形態で使用される第1、第2、A、B、(a)、(b)などの用語はある構成要素を他の構成要素と区別するために使用されるだけであり、該当構成要素の本質や順番または順序などはその用語によって限定されない。
【0025】
以下、添付する図面を参照して本開示の多様な実施形態について詳細に説明する。
【0026】
図1は本開示のいくつかの実施形態によるウォーターマーク埋め込みシステム10とウォーターマーク抽出システム11の動作を概略的に説明するための例示的な図である。
【0027】
図1に示すように、ウォーターマーク埋め込みシステム10はペイロード(12,payload)が内在するウォーターマーク(watermark)を原イメージ13に埋め込む(挿入する)ことができるコンピューティング装置/システムである。ここで、ウォーターマークは後述するベースパターン(base pattern)とペイロードパターン(payload pattern)を総称するか、このようなパターンに内在するデータを指す用語として理解することができる。以下では、説明の便宜上、ウォーターマーク埋め込みシステム10とウォーターマーク抽出システム11をそれぞれ「埋め込みシステム10」と「抽出システム11」と略称する。
【0028】
具体的には、埋め込みシステム10はペイロード12が内在するウォーターマークを原イメージ13に不可視的に埋め込むことによってウォーターマークイメージ14を生成することができる。たとえば、埋め込みシステム10はあらかじめ定義された埋め込み規則に従って原イメージ13のピクセル値を調整することによって原イメージ13にウォーターマークを埋め込むことができる。このようにすることによって、ウォーターマークが原イメージ13に不可視的に埋め込まれることができ、原イメージ13の品質低下は最小化することができる。
図2は原イメージ21と例示した方式で特定のペイロード22が埋め込まれたウォーターマークイメージ23を例示しているが、肉眼上では二つのイメージ21,23は殆ど差異がないことを確認することができる。
【0029】
ペイロード12は埋め込もうとする目的データ/情報を意味する。ペイロード12のフォーマット(format)は多様に定義および設計することができる。例えば、ペイロード12のフォーマットは下記の表1のように定義および設計することができる。しかし、本開示の範囲はこれに限定されるものではない。
【0030】
【0031】
表1を参照すると、ペイロード12は例えば15ビット(bits)のコントロールパラメータ(control parameter)、54ビットのボディデータ(body data)、7ビットの検証コード(例,CRC-8)および68ビットのエラー訂正コード(error correction code)を含んで構成されることができる。
【0032】
コントロールパラメータはボディデータのタイプ(例,バージョンなど)などのようなメタデータを意味する。コントロールパラメータは例えば4ビットのバージョンコード(version code)、3ビットの該当領域に対する検証コード(例,CRC-4)および8ビットのエラー訂正コードを含んで構成されることができる。
【0033】
次に、ボディデータは埋め込み対象になる実際のデータ/情報(例,原イメージ13が商品イメージである場合、商品のIDなどであり得る)を意味する。54ビットのボディデータは254の場合の数を表現できるので、ボディデータにより多様な情報が容易に埋め込まれ得る。
【0034】
次に、エラー訂正コードはペイロードの抽出エラーを訂正するためのコードを意味する。エラー訂正コードは、例えばBCH(Bose-Chaudhuri-Hocquenghem)コードであり得るが、本開示の範囲はこれに限定されるものではない。
【0035】
埋め込みシステム10がウォーターマークを埋め込む具体的な方式については
図3以下の図面を参照して詳細に後述する。
【0036】
場合によって、埋め込みシステム10は「ウォーターマーク挿入装置/システム」、「ウォーターマーキング(watermarking)装置/システム」、「ウォーターマークエンコーディング装置/システム」などのように命名されることもできる。
【0037】
次に、抽出システム11はウォーターマークイメージ14からペイロード12を抽出できるコンピューティング装置/システムである。たとえば、抽出システム11は撮影モジュールなどによりウォーターマークイメージ14を取得して埋め込み規則による演算を逆に行うことによってウォーターマークイメージ14に内在するペイロード12を抽出することができる。具体的な抽出方式については
図21以下の図面を参照して詳細に後述する。
【0038】
場合によって、抽出システム11は「ウォーターマーク検出装置/システム」、「ウォーターマーク認識装置/システム」、「ウォーターマークデコーディング装置/システム」などのように命名され得る。
【0039】
上述した埋め込みシステム10と抽出システム11は少なくとも一つのコンピューティング装置として実現することができる。例えば、埋め込みシステム10のすべての機能が一つのコンピューティング装置で実現されることもでき、埋め込みシステム10の第1機能は第1コンピューティング装置で実現され、第2機能は第2コンピューティング装置で実現されることもできる。または、埋め込みシステム10の特定機能が複数のコンピューティング装置で実現されることもできる。
【0040】
コンピューティング装置はコンピューティング機能を備えた任意の装置をすべて含み得、このような装置の一例示に関しては
図26を参照する。コンピューティング装置は多様な構成要素(例,メモリ、プロセッサなど)が相互作用する集合体であるから、場合によって「コンピューティングシステム」と命名されることもできる。もちろん、コンピューティングシステムという用語は、複数のコンピューティング装置が相互作用する集合体という概念も包括することができる。
【0041】
これまで
図1および
図2を参照して本開示のいくつかの実施形態による埋め込みシステム10と抽出システム11の動作について概略的に説明した。以下では、
図3以下の図面を参照して上述したシステム10,11で行われ得る多様な方法について詳細に説明する。
【0042】
先に、
図3ないし
図19を参照して本開示のいくつかの実施形態によるウォーターマーク埋め込み方法について説明する。
【0043】
以下では、理解を容易にするために、後述するウォーターマーク埋め込み方法のすべての段階/動作が上述した埋め込みシステム10で行われることを仮定して引き続き説明する。したがって、特定の段階/動作の主体が省略された場合、埋め込みシステム10で行われると理解されることができる。ただし、実際の環境では後述する方法の一部の段階/動作が別のコンピューティング装置で行われることもできる。
【0044】
図3は本開示のいくつかの実施形態によるウォーターマーク埋め込み方法を示す例示的なフローチャートである。ただし、これは本開示の目的を達成するための好ましい実施形態であり、必要に応じて一部の段階が追加または削除され得るのはもちろんである。
【0045】
図3に示すように、本実施形態は同期化信号が内在する周波数スペクトルを用いてウォーターマークのベースパターンを生成する段階S31から始まる。ここで、同期化信号はウォーターマークの存在の有無、ウォーターマークイメージ(すなわち、撮影により得られたウォーターマークイメージ)の歪曲の程度、ペイロード(または、ペイロードパターン)の抽出基準位置などを判断するために用いられる信号であるが、あらかじめ定義された周波数の特性(例,特定座標のマグニチュードピーク)が同期化信号として用いられる。周波数の特性を用いる理由は同期化信号がイメージの歪曲とノイズなどに強い特性を持たなければならないからであると理解されることができる。ベースパターンは埋め込みシステム10と抽出システム11の間に事前共有することができる。
【0046】
具体的な例を挙げると、
図4に示すように、埋め込みシステム10は特定座標のマグニチュードピーク(magnitude peak、図示のポイントを参照)を有する周波数スペクトル41に対して逆フーリエ変換(Inverse Fourier Transform,例,IDFT,IFFT)を行うことによってベースパターン42を生成することができる。しかし、本開示の範囲はこれに限定されるものではない。周波数スペクトル41(またはスペクトルイメージ)はマグニチュードピークに該当する領域でのみ0でないマグニチュード値を有し、マグニチュードピーク以外の領域ではすべて0のマグニチュード値を有する2Dマグニチュードスペクトルであり得るが、本開示の範囲はこれに限定されるものではない。
【0047】
参考までに、
図4に示す周波数スペクトル41はログスケール(logarithmic scale)のマグニチュード(大きさ)スペクトルであって、スペクトル41の中央が低い周波数を意味し、外郭に行くほど高い周波数を意味する。また、周波数スペクトル41で色が明るく表示されたところは該当座標の周波数のマグニチュード値が大きいことを意味する。
【0048】
ベースパターン(例,42)は例えば「128×128」ピクセルパターン(ブロック)であり得、ベースパターン(例,42)の各ピクセルは第1色(例,白色)と第2色(例,黒色)のうちいずれか一つに該当するピクセル値(例,255,0)を有することができる。しかし、本開示の範囲はこれに限定されるものではない。
【0049】
ベースパターンは場合によって「ノイズベースパターン」、「ノイズベースイメージ」、「ベースブロック」、「同期化パターン」、「同期化ブロック」などのように命名されることもできる。
【0050】
【0051】
段階S32で、原イメージとペイロードが取得される。前述したように、ペイロードは原イメージに埋め込もうとする目的データ/情報を意味する。ペイロードは例えば表1のようなフォーマットで構成できるが、本開示の範囲はこれに限定されるものではない。
【0052】
段階S33で、ペイロードをエンコードしてウォーターマークのペイロードパターンが生成される。たとえば、埋め込みシステム10はエンコーディング規則に従ってペイロードを構成する各ビット(bit)(またはバイトなど)の値を単位パターンにエンコード(変換)することでペイロードが内在するペイロードパターンを生成することができる。以下では、ペイロードが「ビット」単位でエンコードされることを仮定して引き続き説明する。
【0053】
本段階S33でペイロードパターンを生成する具体的な方式は実施形態によって変わり得る。
【0054】
いくつかの実施形態では、
図5に示すように、埋め込みシステム10があらかじめ定義された乱数列53に基づいてペイロード51の特定ビット52のエンコーディング規則55を決定し、エンコーディング規則55に基づいて該当ビット52を単位パターン56にエンコード(変換)することができる。例えば、乱数列53の長さ(すなわち、乱数個数)がペイロード51のビット長(すなわち、ビット数)と同一であると仮定する。また、
図6に示すような6種類のエンコーディング規則(例,「0」と「1」を「2×2」単位パターンにエンコードする規則)が定義されていると仮定する。このような場合、埋め込みシステム10は乱数列53でペイロード51の特定ビット52に対応する乱数(54,例,「5」)を参照して該当ビット52に適用されるエンコーディング規則(55,例,5番目のエンコーディング規則)を決定し得る。そして、埋め込みシステム10はエンコーディング規則55に従って該当ビット52を単位パターン56にエンコード(変換)し得る。このようなエンコーディング過程がペイロード51の他のビットに対しても繰り返されることによってペイロードパターン(ブロック)が生成され、ペイロード51が安全にペイロードパターンに変換されることができる(すなわち、ウォーターマーク埋め込みおよび抽出過程のセキュリティ性が向上できる)。乱数列53はペイロード51の抽出時に用いなければならないので、埋め込みシステム10と抽出システム11の間に事前に共有することができる。
【0055】
上記の実施形態で、単位パターン(例,56)はペイロード(例,51)のビット単位(すなわち、エンコーディング単位)に対応するピクセルパターンを意味する。単位パターン(例,56)は例えば第1色(例,白色)と第2色(例,黒色)で構成された「2×2」サイズのピクセルパターン(例,白色のピクセル値である「255」と黒色のピクセル値である「0」で構成された「2×2」ピクセルパターン)であり得るが、本開示の範囲はこれに限定されるものではない。ただし、以下では、理解を容易にするために、単位パターン(例,56)が
図5または
図6に例示した場合のような「2×2」ピクセルパターンである場合を仮定して説明する。
【0056】
単位パターン(例,56)はブロック形状のピクセルパターンであるから、場合によって「単位ブロックパターン」、「単位ピクセルブロック」、「単位ピクセルパターン」などのように命名されることもできる。
【0057】
他のいくつかの実施形態では、
図7に示すように、埋め込みシステム10が互いに異なる多数の乱数列(72-1~72-N)を用いてペイロード71から多数のペイロードパターン(またはブロック)(73-1~73-N)を生成することができる。たとえば、埋め込みシステム10は第1乱数列(例,72-1)に基づいて決定されたエンコーディング規則に従ってペイロード71をエンコードし、第1ペイロードパターン(例,73-1)を生成し、第1乱数列(例,72-1)と異なる第2乱数列(例,72-2)に基づいて決定されたエンコーディング規則に従ってペイロード71をエンコードして第2ペイロードパターン(例,72-2)を生成することができる。次に、埋め込みシステム10は多数のペイロードパターン(73-1~73-N)を結合して(集めて)最終のペイロードパターン74を生成することができる。すなわち、埋め込みシステム10は同じペイロード71を互いに異なる方式で複数回エンコードしてペイロードパターン74を生成することができる。このような場合、ウォーターマーク埋め込みおよび抽出過程のセキュリティ性がより向上することができ、ペイロード71の抽出性能(すなわち、認識率)も向上することができる(なぜなら、ウォーターマークイメージから多数のペイロードを抽出し、これらを比較して検証できるので)。
【0058】
上記の実施形態で、埋め込みシステム10は「25個」の乱数列(例,72-1)を用いて144ビットのペイロード71から「25個」の「24×24」ペイロードパターン(例,73-1)を生成し、これらを結合して「128×128」のペイロードパターン74を生成することができる。しかし、本開示の範囲はこれに限定されるものではない。
【0059】
【0060】
参考までに、
図3は段階S31の後に段階S32および段階S33が行われるように示しているが、段階S31は段階S32および段階S33と同時に行われることもでき、これらの後に行われることもできる。すなわち、ベースパターンとペイロードパターンはいかなる順序で生成されても構わない。
【0061】
段階S34で、原イメージにベースパターンを埋め込んで中間イメージが生成される。具体的には、埋め込みシステム10はベースパターンのピクセル値に対応する埋め込み規則に基づいて原イメージのピクセル値を調整することによってベースパターンを埋め込むことができる。この時、ベースパターンの埋め込み領域(すなわち、ベースパターンが埋め込まれる領域であり、またピクセル値が調整される領域)のサイズ(スケール)、形状などは多様に設定できるが、これについては
図11ないし
図19を参照して後述する。
【0062】
埋め込み規則は例えば所定の加重値(例,加重値パラメータの値)に基づいてイメージ(例,原イメージ)のピクセル値を調整するように定義されることができ、埋め込み規則それぞれはベースパターンのピクセル値と対応することができる。
【0063】
例えば、下記の表2に記載された通り、埋め込み規則は加重値(「W1」)と特定値(「α」)に基づいてLab色空間のaチャネルとbチャネルの値を相反するように調整するように定義されることができる。ここで、加重値(「W1」)はピクセル値の調整強度を示す(制御する)値であり、特定値(「α」)は基本調整幅を表す値を意味する。
【0064】
【0065】
他の例としては、埋め込み規則は加重値(例,W1)に基づいてRGB色空間のR、GおよびBチャネルの値を調整するように定義されることもできる。
【0066】
また他の例として、埋め込み規則は加重値(例,W1)に基づいてYCbCr色空間のY、CbおよびCrチャネルの値を調整するように定義されることもできる。
【0067】
また他の例として、埋め込み規則は上述した例示と異なる方式で定義されることもでき、上述した例示の多様な組み合わせに基づいて定義されることもできる。
【0068】
以下では、本開示を明瞭にするために、特に言及がない限り、ベースパターンに適用される埋め込み規則と加重値をそれぞれ「第1埋め込み規則」と「第1加重値」と命名し、ペイロードパターンに適用される埋め込み規則と加重値をそれぞれ「第2埋め込み規則」と「第2加重値」と命名する。
【0069】
段階S35で、中間イメージにペイロードパターンを埋め込んでウォーターマークイメージが生成される。具体的には、埋め込みシステム10はペイロードパターンのピクセル値に対応する第2埋め込み規則に基づいて中間イメージのピクセル値を調整することによってペイロードパターンを埋め込むことができる。この時、ペイロードパターンの埋め込み領域(すなわち、ペイロードパターンが埋め込まれる領域であり、またピクセル値が調整される領域)のサイズ、形状なども多様に設定できるが、これについては
図11ないし
図19を参照して後述する。
【0070】
第2埋め込み規則は、例えば所定の第2加重値に基づいてイメージ(例,中間イメージ)のピクセル値を調整するように定義されることができ、第2埋め込み規則それぞれはペイロードパターンのピクセル値と対応し得る。第2埋め込み規則を第1埋め込み規則と類似の方式で定義できるが、本開示の範囲はこれに限定されるものではない。
【0071】
ペイロードパターンを後に埋め込む理由は実際のデータ(すなわち、ペイロード)が内在するペイロードパターンをより正確に(すなわち、うまく抽出されるように)埋め込むためのであると理解されることができる。換言すれば、ベースパターンを後に埋め込む場合、ベースパターンの埋め込みによりペイロードパターンの埋め込み結果が弱くなり得るので、このような点を未然に防止するためであると理解されることができる。
【0072】
また、ベースパターンとペイロードパターンを個別に埋め込む理由は各パターンが埋め込まれる領域のサイズ、形状、埋め込み加重値(例,第1加重値、第2加重値)などを自由に設定できるという利点があるからである。このような要素を適切に設定することによってウォーターマークの不可視性と抽出性能が共に向上できるが、これについては
図9ないし
図19の説明を参照する。
【0073】
一方、第1加重値および/または第2加重値を決定する具体的な方式は実施形態によって変わり得る。
【0074】
いくつかの実施形態では、第1加重値が第2加重値より小さい値を有するように設定されることができる。これはベースパターンはその特性上弱く埋め込まれてもうまく検出される点とウォーターマークの抽出性能が普通のペイロードパターンの検出正確度によって大きく左右される点を反映したものと理解されることができる。
【0075】
他のいくつかの実施形態では、
図8に示すように、埋め込みシステム10が加重値パラメータの値を変更しながら中間イメージにペイロードパターンを埋め込んでペイロード(またはペイロードパターン)の抽出性能を評価することができる(S81)。そして、埋め込みシステム10が評価結果に基づいてペイロードパターンに適用される加重値(すなわち、第2加重値)を決定することができる(S82,S83参照)。たとえば、埋め込みシステム10は評価結果が最も優れた加重値パラメータの値を第2加重値として決定することができる。このような場合、中間イメージの特性を考慮してペイロードパターンの埋め込み強度が適切に決定することができ、その結果、ウォーターマークの不可視性と抽出性能が共に向上することができる。
【0076】
場合によっては、埋め込みシステム10が第1加重値パラメータと第2加重値パラメータの値を変更しながら原イメージにベースパターンとペイロードパターンを埋め込んでペイロードの抽出性能を評価することによってパターンそれぞれに適用される第1加重値と第2加重値の値を決定することもできる。
【0077】
また他のいくつかの実施形態では、上述した実施形態の多様な組み合わせに基づいて第1加重値および/または第2加重値の値が決定されることもできる。
【0078】
段階S35により生成されたウォーターマークイメージはデジタルイメージファイル形態で出力されることもでき、プリンティング装置により紙などのような多様なプリンティング媒体上にプリンティングされることもできる。また、ウォーターマークイメージは無断複製の防止、真偽判別、情報ラベリング(labelling)などのような多様な用途に用いることができる。
【0079】
これまで
図3ないし
図8を参照して本開示のいくつかの実施形態によるウォーターマーク埋め込み方法の全般的な流れと技術的原理について説明した。上述した内容によれば、ウォーターマークのベースパターンとペイロードパターンが個別に埋め込まれ得る。このような場合、ベースパターンとペイロードパターンに適用される加重値(すなわち、ピクセル値の調整強度を表す値)、埋め込み領域の形状などを自由に設計できるため、ウォーターマーク埋め込みアルゴリズムの設計自由度が大きく向上することができる。
【0080】
また、ベースパターンが先に埋め込まれ、後にペイロードパターンが埋め込まれ得る。このような場合、ベースパターンの埋め込みによりペイロードパターンの埋め込み結果が弱くなる場合を未然に防止できるので、ウォーターマークの抽出性能が向上することができる。さらに、ベースパターンの埋め込み結果(すなわち、中間イメージ)を考慮してペイロードパターンの埋め込みの有無、埋め込み強度(すなわち、ピクセル値の調整強度)などを調整することもできるようになり、その結果、ウォーターマークの不可視性と抽出性能(すなわち、認識率)が共に向上することもできる。
【0081】
以下では、
図9ないし
図19を参照して上述したウォーターマーク埋め込み方法に適用できる多様なパターン埋め込み方式について説明する。後述する多様なパターン埋め込み方式は、例えばベースパターンおよび/またはペイロードパターンの埋め込み段階(例,S34,S35)に適用することができる。
【0082】
図9は本開示のいくつかの実施形態によるパターン埋め込み方式を説明するための例示的な図である。
【0083】
本実施形態はイメージ領域の周波数の特性によって加重値を調整し、パターン(例,ベースパターン、ペイロードパターン)を埋め込む方式に関するものである。以下では、
図9に図示のように、中間イメージ91にペイロードパターンを埋め込む場合を仮定して引き続き説明する。
【0084】
具体的には、埋め込みシステム10は中間イメージ91の領域を周波数を基準として区分することができる。たとえば、埋め込みシステム10は中間イメージ91の領域を高周波数領域(例,92)と低周波数領域(例,93)に区分することもでき、さらに細分化された基準により区分することもできる。埋め込みシステム10はピクセル単位またはより大きい単位でこのような区分を行うことができる。ただし、領域を区分する具体的な方式は実施形態によって変わり得る。
【0085】
いくつかの実施形態では、埋め込みシステム10がピクセル値の変化程度に基づいて中間イメージ91の領域を区分することができる。たとえば、埋め込みシステム10は中間イメージ91でピクセル値の変化程度が基準値以上の領域を高周波数領域として区分し、基準値未満の領域を低周波数領域として区分することができる。または、埋め込みシステム10はピクセル値の変化程度に応じて中間イメージ91の領域をさらに細分化して区分することもできる。
【0086】
他のいくつかの実施形態では、埋め込みシステム10が境界線検出結果に基づいて中間イメージ91の領域を区分することができる。たとえば、埋め込みシステム10は境界線検出フィルタなどを用いて中間イメージ91で境界線を検出することができる。そして、埋め込みシステム10は境界線が検出された領域(例,92)を高周波数領域として区分し、残りの領域(例,93)を低周波数領域として区分することができる(なぜなら、境界線が検出された領域がピクセル値が急変する領域であるからである)。または、埋め込みシステム10は境界線の検出強度に応じて中間イメージ91の領域をさらに細分化して区分することもできる。
【0087】
また他のいくつかの実施形態では、埋め込みシステム10がフーリエ変換により中間イメージ91の領域を区分することもできる。たとえば、埋め込みシステム10は中間イメージ91の領域それぞれに対してフーリエ変換を行い、領域別の周波数特性を分析し、分析結果に基づいて中間イメージ91の領域を区分することができる。
【0088】
また他のいくつかの実施形態では、上述した実施形態の多様な組み合わせに基づいて中間イメージ91の領域を区分することもできる。
【0089】
次に、埋め込みシステム10は領域区分結果に基づいて加重値(すなわち、第2加重値)を調整してペイロードパターンを埋め込む。たとえば、埋め込みシステム10は高周波数領域に対しては第2加重値を増加(すなわち、上方調整)させて低周波数領域に対しては第2加重値を減少(すなわち、下方調整)させることができる。このようにすることによって、ペイロードパターンが効果的に埋め込まれると同時にウォーターマークの不可視性が向上することができる(なぜなら、低周波数領域にペイロードパターンが弱く埋め込まれるからである)。場合によって、第2加重値の増加幅(または、減少幅)は該当領域の周波数が高いほど(または低いほど)より大きく決定されることもできる。
【0090】
より具体的な例として、中間イメージ91の第1領域92と第2領域93がそれぞれ高周波数領域と低周波数領域に該当し、第1領域92にペイロードパターンの第1ブロックが埋め込まれ第2領域93にペイロードパターンの第2ブロックが埋め込まれると仮定する。このような場合、埋め込みシステム10は中間イメージ91の第2領域93よりも大きい加重値に基づいてペイロードパターンの第1ブロックを第1領域92に埋め込むことができる。また、埋め込みシステム10は中間イメージ91の第1領域92よりも小さい加重値に基づいてペイロードパターンの第2ブロックを第2領域93に埋め込むことができる。
【0091】
これまで
図9を参照して本開示のいくつかの実施形態によるパターン埋め込み方式について説明した。上述した内容によれば、イメージの領域別の周波数の特性に基づいてパターン(例,ベースパターン、ペイロードパターン)の埋め込み加重値を調整することによって、ウォーターマークの不可視性と抽出性能が共に向上することができる。もちろん、原イメージの品質低下も最小化することができる。
【0092】
以下では、
図10を参照して本開示の他のいくつかの実施形態によるパターン埋め込み方式を説明するための例示的な図である。
【0093】
本実施形態はイメージ領域(例,102)のピクセル値に基づいてパターンの埋め込みの有無、埋め込みの強度などを制御しながら埋め込みを行う方式に関するものである。以下では、
図10に図示のように、中間イメージ101の特定単位領域102に特定単位パターン104を埋め込む場合を仮定して引き続き説明する。
図10などの図面で単位領域(例,102)は単位パターン(例,104)に対応するイメージ領域を意味し、以下の説明でも「単位領域」を同じ意味で使用する。単位領域(例,102)は場合によって「単位ブロック」などのように命名されることもできる。
【0094】
具体的には、埋め込みシステム10は中間イメージ101の単位領域102のピクセル値(103を参照)から単位パターン(104,すなわち、該当単位領域102に埋め込まれる単位パターン)の抽出(検出)が可能か否か(すなわち、ペイロードパターンが既に反映されているかどうか)を判断することができる。たとえば、埋め込みシステム10は単位領域102のピクセル値(103を参照)を用いて埋め込み規則を逆に演算する場合、単位パターン104が抽出されるか否かを判断することができる。
【0095】
次に、埋め込みシステム10は単位パターン104が抽出可能であるという判断に基づいて単位パターン104の埋め込み過程をスキップ(skip)することができる。または、埋め込みシステム10はペイロードパターンに設定された加重値(すなわち、第2加重値)より小さい加重値に基づいて単位パターン104を埋め込むことができる。このような過程は中間イメージ101を構成する他の単位領域に対しても繰り返して行われることができる。このようにすることによって、ウォーターマークの不可視性は向上し、原イメージの品質低下を最小化することができる。
【0096】
これまで
図10を参照して本開示の他のいくつかの実施形態によるパターン埋め込み方式について説明した。以下では、
図11ないし
図19を参照してスケール(scale)と埋め込み領域の形状と関連するパターン埋め込み方式について説明する。
【0097】
先に、理解を容易にするために、
図11および
図12を参照してスケールの概念について先に説明する。
【0098】
図11に図示のように、スケールはパターン(例,ベースパターン、ペイロードパターン)のサイズ(解像度)を意味する。たとえば、スケールパラメータの値が「2」に設定された場合、「2×2」単位パターン111のサイズは「4×4」にアップスケールされることができる(112を参照)。このようなアップスケールはピクセル値を複製する方式(
図11を参照)で行われることもでき、他の方式で行われることもできる。ただし、以下では、理解の便宜のために、ピクセル値の複製方式でアップスケールが行われることを仮定して引き続き説明する。また、
図11および
図12に係る説明では、アップスケールの前と後の単位パターン111,112を区分して指称するために単位パターン111を「第1単位パターン111」と指称し、アップスケールされた単位パターン112を「第2単位パターン112」
と指称する。
【0099】
図12に図示のように、第1単位パターン111がアップスケールされることによって単位領域122のサイズもそれに合わせて大きくなることができる。たとえば、中間イメージ121上で第1単位パターン111に対応する単位領域122のサイズが「2×2」であれば、第2単位パターン112に対応する単位領域123のサイズは「4×4」となる。
【0100】
一方、スケールパラメータの値はあらかじめ設定された固定値であり得、状況によって変動する値でもあり得る。たとえば、スケールパラメータの値は原イメージの大きさ(または解像度)に基づいて決定される変動値であり得る。具体的には、原イメージのサイズが大きくなるほどスケールパラメータの値も増加し得る。これは原イメージのサイズが大きいほどウォーターマークイメージをより遠い距離で撮影する可能性が高いという点を反映したものと理解されることができる。すなわち、ウォーターマークイメージが遠い距離で撮影された場合にもウォーターマークが正確に抽出されるように、単位パターンのサイズを増加させるものと理解されることができる。他の例としては、スケールパラメータの値は原イメージの大きさと関係なく事前に固定された値に設定されることもできる。
【0101】
以下では、
図13ないし
図19を参照して埋め込み領域の形状と関連する多様なパターン埋め込み方式について説明する。
【0102】
以下では、理解の便宜のために、スケールパラメータの値が「4」に設定された場合(例,単位パターンのサイズが「8×8」であり、ベースパターンとペイロードパターンのサイズが「512×512」である場合)を仮定して引き続き説明する。ただし、本開示の範囲はこれに限定されるものではない。
【0103】
図13は本開示のいくつかの実施形態による埋め込み領域の形状とそれによるパターン埋め込み方式を説明するための例示的な図である。
【0104】
図13に図示のように、本実施形態はイメージ(131,例,原イメージ、中間イメージ)の単位領域(例,132)の中央部分(例,133)にベースパターンとペイロードパターン(134を参照)を共に埋め込む方式に関するものである。ここで、パターン(例,ベースパターン、ペイロードパターン)を中央部分(例,133)に埋め込むとは、パターン全体でなく中央部分(例,133)に対応するパターン(例,134)の一部分(例,135)を中央部分(例,133)に埋め込むことを意味する。
【0105】
具体的には、埋め込みシステム10は単位パターン(134,すなわちアップスケールされた単位パターン)の一部分(135,例,中央部分)を抽出して単位領域132の中央部分133に埋め込むことができる。たとえば、埋め込みシステム10は単位パターン134の中央ブロック135のピクセル値を抽出して単位領域132の中央部分133に埋め込むことができる。ここで、中央ブロック135のピクセル値を抽出して中央部分133に埋め込むとは、中央ブロック135のピクセル値に対応する埋め込み規則に基づいて中央部分133のピクセル値を調整することを意味する。ペイロードパターンを構成する他の単位パターンもこれと類似の方式で埋め込むことができ、ベースパターンもこれと類似の方式で埋め込むことができる。
【0106】
または、
図14に図示のように、埋め込みシステム10は単位パターン134を構成する複数のブロックそれぞれの一部分(141~144,例,中央部分)を抽出して単位領域132の中央部分133に埋め込むこともできる。ベースパターンもこれと同様の方式で埋め込むことができる。
【0107】
パターン(例,ベースパターン、ペイロードパターン)を単位領域132の中央部分133に埋め込む理由はウォーターマークの抽出性能を向上させるためのものと理解されることができる。説明を加えると、ウォーターマークの抽出時にウォーターマークイメージがリサイジング(例,縮小)される場合が多いが、多くのリサイジング技法は各領域の中央部分のピクセル値を中心に補間を行う。したがって、中央部分(例,133)のピクセル値の特性が保存される可能性が外郭部分に比べてはるかに高く、このような理由から中央部分(例,133)にパターンを埋め込めばウォーターマークの抽出性能が向上すると理解されることができる。
【0108】
一方、場合によっては、ウォーターマークの抽出性能をより向上させるためにペイロードパターン(例,134)がベースパターンよりもに強く埋め込まれ得る(例,第2加重値が第1加重値より大きい値に設定される場合)。これについては上述した説明を参照する。
【0109】
以下では、
図15を参照して本開示の他のいくつかの実施形態による埋め込み領域の形状とそれによるパターン埋め込み方式について説明する。ただし、本開示を明瞭にするために、上記の実施形態と重複する説明は省略する。
【0110】
図15に図示のように、本実施形態はイメージ(151,例,原イメージ、中間イメージ)の単位領域(例,152)を構成する複数のサブ領域(例,153)の中央部分(例,154)にベースパターンとペイロードパターン(155参照)を共に埋め込む方式に関するものである。
【0111】
具体的には、埋め込みシステム10は単位パターン155を構成するブロックの一部分(156~159,例,中央部分)を抽出して対応するサブ領域(例,153)の中央部分(例,154)に埋め込むことができる。たとえば、埋め込みシステム10は左上側ブロックの中央部分(156,例,「2×2」ブロック)を抽出して左上側サブ領域153の中央部分(154,例,「2×2」領域)に埋め込むことができる。ペイロードパターンを構成する他の単位パターンもこれと同様の方式で埋め込むことができ、ベースパターンもこれと同様の方式で埋め込むことができる(例,左上側ブロック156に対応するスケーリングされたベースパターンのブロックの一部分も中央部分154に埋め込まれる)。このような場合にも、上述した理由によってウォーターマークの抽出性能が向上することができる。
【0112】
以下では、
図16ないし
図18を参照して本開示のまた他のいくつかの実施形態による埋め込み領域の形状とそれによるパターン埋め込み方式について説明する。
図16ないし
図18に示すイメージ領域161,171,181は単位領域(例,152)またはサブ領域(例,153)を意味する。
【0113】
図16に図示のように、埋め込みシステム10はイメージ領域161の外郭部分162にベースパターン(すなわち、外郭部分162に対応するベースパターンの一部分)を埋め込んでイメージ領域161の中央部分163にペイロードパターン(すなわち、中央部分163に対応するペイロードパターンの一部分)を埋め込むことができる(例,スケーリングされた単位パターンの第1ブロックを中央部分163に埋め込んで第1ブロックに対応するスケーリングされたベースパターンの第2ブロックを外郭部分162に埋め込む場合)。この時、外郭部分162は中央部分163と重ならないように設定することができる。このような場合、ウォーターマークの抽出性能とウォーターマークの不可視性が共に向上できるが、これについては
図19の説明を参照する。
【0114】
または、
図17に図示のように、埋め込みシステム10がイメージ領域171の全体にベースパターンを埋め込んでイメージ領域171の中央部分172にペイロードパターンを埋め込むことができる(例,スケーリングされた単位パターンの第1ブロックを中央部分172に埋め込んで第1ブロックに対応するスケーリングされたベースパターンの第2ブロックを領域171全体に埋め込む場合)。このような場合にも、上述した理由によってウォーターマークの抽出性能が向上することができる。
【0115】
場合によっては、
図18に図示のように、埋め込みシステム10がイメージ領域181の全体にベースパターンとペイロードパターンを共に埋め込むこともできる。
【0116】
図19は埋め込み領域の形状と関連する多様な埋め込み方式の効果を説明するための例示的な図である。
図19は原イメージ191の特定単位領域192の左上側サブ領域193に三つの方式でベースパターンとペイロードパターンを埋め込んだ結果(195~197)を比較して示している。具体的には、
図19において、最左側のピクセル値(194,例,特定チャネルのピクセル値)はサブ領域193のピクセル値を示し、他のピクセル値(195~197)はそれぞれ
図18、
図15、
図17(または
図16で例示した形状のペイロードパターンを強く埋め込む場合)に例示した方式で生成されたウォーターマークイメージ(以下、「イメージ1」、「イメージ2」、「イメージ3」と略称する)のピクセル値を示す。
図19はベースパターンとペイロードパターンの埋め込み規則がピクセル値を「6」だけ増加させるように定義された場合を仮定している。
【0117】
図19を参照すると、「イメージ3」の場合、外郭部分のピクセル値(例,「134」)と中央部分のピクセル値(例,「140」)の差異が「イメージ2」に比べて相対的に小さいことを確認することができる。これにより「イメージ3」が相対的に原イメージ191に近い品質を有しており、ウォーターマークの不可視性も優れることが分かる。
【0118】
また、「イメージ3」の場合、中央部分のピクセル値(例,「140」)がペイロードパターンをよく示しているので、ウォーターマークの抽出性能も非常に優れることが分かる。
【0119】
結論的に、サブ領域(例,193)の全体または外郭部分にベースパターンを埋め込んで中央部分にペイロードパターンを埋め込めば、原イメージ191の品質低下が最小化され、ウォーターマークの不可視性と抽出性能は向上することが分かる。
【0120】
これまで
図3ないし
図19を参照して本開示のいくつかの実施形態によるウォーターマーク埋め込み方法について説明した。以下では、
図20を参照して本開示の他のいくつかの実施形態によるウォーターマーク埋め込み方法について説明する。ただし、本開示を明瞭にするために、上記の実施形態と重複する説明は省略する。
【0121】
図20は本開示の他のいくつかの実施形態によるウォーターマーク埋め込み方法を示す例示的なフローチャートである。ただし、これは本開示の目的を達成するための好ましい実施形態であり、必要に応じて一部の段階が追加または削除され得るのはもちろんである。
【0122】
図20に図示のように、本実施形態はベースパターンとペイロードパターンを順序に関係なく埋め込む方法に関するものである。
【0123】
本実施形態も同期化信号が内在する周波数スペクトルを用いてウォーターマークのベースパターンを生成する段階S201から始まる。これについては上述した段階S31の説明を参照する。
【0124】
段階S202で、原イメージとペイロードが取得される。これについては上述した段階S32の説明を参照する。
【0125】
段階S203で、ウォーターマークのペイロードパターンが生成される。これについては上述した段階S33の説明を参照する。
【0126】
段階S204で、原イメージの第1領域にベースパターンが埋め込まれ、第2領域にペイロードパターンが埋め込まれる。たとえば、埋め込みシステム10は第1加重値に基づいて原イメージの第1領域にベースパターンを埋め込み、第2加重値に基づいて原イメージの第2領域にペイロードパターンを埋め込むことができる。この時、第1加重値は第2加重値より小さい値を有するように設定できるが、本開示の範囲はこれに限定されるものではない。
【0127】
いくつかの実施形態では、第1領域の形状が第2領域と異なるように設定されることができる。たとえば、
図16または
図17に例示したように、原イメージの単位領域(またはサブ領域)でベースパターンが埋め込まれる領域の形状はペイロードパターンが埋め込まれる領域の形状と異なってもよい。
【0128】
また、いくつかの実施形態では、第1領域と第2領域が互いに重ならないように設定されることができる。たとえば、
図16に例示したように、原イメージの単位領域(またはサブ領域)の外郭部分にベースパターンが埋め込まれ、中央部分にペイロードパターンが埋め込まれ、中央部分と外郭部分が互いに重ならないように設定されることができる。より具体的な例としては、埋め込みシステム10はスケールパラメータの値に基づいてベースパターンとペイロードパターンそれぞれをスケーリング(すなわち、アップスケール)することができる。次に、埋め込みシステム10はスケーリングされた単位パターン(すなわち、スケーリングされたペイロードパターンを構成する単位パターン)を構成する複数のブロックそれぞれの一部分を抽出して原イメージのサブ領域の中央部分に埋め込むことができる(すなわち、サブ領域別に中央部分は第2領域に属する)。また、埋め込みシステム10は複数のブロックに対応するベースパターンのブロックそれぞれの一部分を抽出して該当サブ領域の外郭部分に埋め込むことができる(すなわち、サブ領域別に外郭部分は第1領域に属する)。これについては、
図15および
図17などの説明をさらに参照する。
【0129】
一方、第1領域と第2領域の間に重畳領域が存在する場合は、埋め込みシステム10は原イメージの第1領域にベースパターンを先に埋め込んだ後に第2領域にペイロードパターンを埋め込むことができる。このような方式は
図3を参照して説明したウォーターマーク埋め込み方法と実質的に同一または類似すると理解されることができる。
【0130】
これまで
図21を参照して本開示の他のいくつかの実施形態によるウォーターマーク埋め込み方法について説明した。以下では、上述した内容に従って埋め込まれたウォーターマークを抽出する方法について説明する。
【0131】
以下では、理解を容易にするために、後述するウォーターマーク埋め込み方法のすべての段階/動作が上述した抽出システム11で行われることを仮定して引き続き説明する。したがって、特定の段階/動作の主体が省略された場合、抽出システム11で行われるものと理解されることができる。ただし、実際の環境では後述する方法の一部の段階/動作が別のコンピューティング装置で行われることもできる。
【0132】
図21は本開示のいくつかの実施形態によるウォーターマークの抽出方法を示す例示的なフローチャートである。ただし、これは本開示の目的を達成するための好ましい実施形態であり、必要に応じて一部の段階が追加または削除され得るのはもちろんである。
【0133】
図21に図示のように、実施形態によるウォーターマークの抽出方法は撮影イメージを取得する段階S211から始まる。たとえば、抽出システム11は内蔵された撮影モジュールによりイメージ(すなわち、ウォーターマーク抽出対象イメージ)を撮影することもでき、外部装置から撮影イメージを受信することもできる。
【0134】
段階S212で、ベースパターンの検出有無が判断される。すなわち、撮影イメージにウォーターマークの存在有無が判断されることができる。たとえば、抽出システム11はベースパターンを検出するために撮影イメージで複数の領域(例,「256×256」、「512×512」のイメージ領域など)を抽出し、該当領域それぞれに対して
図22に示す動作/段階を行うことによってベースパターンを検出することができる。複数の領域の間には重畳領域が存在し得る。
図22はベースパターンが2Dマグニチュードスペクトルから生成された場合を仮定している。以下、
図22を参照して説明する。
【0135】
段階S221で、イメージ領域を周波数ドメインに変換して2Dマグニチュードスペクトル(MS2,以下「第2スペクトル」と称する)が生成される。
【0136】
段階S222で、埋め込み過程に用いられたベースパターンの2Dマグニチュードスペクトル(MS1,以下「第1スペクトル」と称する)が準備される。
【0137】
段階S223で、第1スペクトルMS1と第2スペクトルMS2それぞれに対してログポーラー(LogPolar)変換が行われる。ログポーラー変換は、2次元回転と大きさの変換に不変の特性を有するので、これを用いれば回転および大きさの側面における撮影イメージの欠陥がより正確に治癒されることができる。
【0138】
段階S224で、ログポーラー変換により得られた結果イメージそれぞれが周波数ドメインに変換される。
【0139】
段階S225で、変換結果(f_LP1,f_LP2)に対して乗算演算が行われる。
【0140】
段階S226で、乗算演算の結果(R)とイメージ領域に対する変換結果(f_LP2)のマグニチュードマトリックス(MM2)の間に除算演算が行われる。その結果、該当イメージ領域に対する第1結果マトリックスが導き出されることができる。ここで、第1結果マトリックスは該当イメージ領域内にベースパターンがどれくらい含まれているのかを示すマトリックス(例,ベースパターンが含まれた比率などを示すマトリックス)として理解されることができる。また、第1結果マトリックスは該当イメージ領域とベースパターンの間の類似度を示すマトリックスとしても理解されることができる。
【0141】
段階S227で、該当イメージ領域に対する第1結果マトリックスが空間ドメインに変換される。その結果、該当イメージ領域に対する第1参照イメージが生成されることができる。
【0142】
段階S228で、第1参照イメージを用いて該当イメージ領域に対する第1類似度などが決定されることができる。具体的には、第1参照イメージの最大ピクセル値が第1類似度として決定されることができ、最大ピクセル値を有するピクセルの「X」座標と「Y」座標がそれぞれ回転角とスケールとして決定されることができる。
【0143】
第1類似度はベースパターンの検出有無を判断するために用いられる値として理解されることができる。すなわち、抽出システム11は第1類似度が基準値未満の場合は該当イメージ領域でベースパターンが検出されないと判断することができ、逆の場合はベースパターンが検出されたと判断することができる。
【0144】
上述した段階S221~S228はあらかじめ定義された条件によって撮影イメージの他の領域に対しても行われることができる(例,ベースパターンが検出されるまで行う)。
【0145】
【0146】
段階S213で、検出されたベースパターンを用いて撮影イメージが変換され、変換された撮影イメージでペイロードの抽出位置が決定される。本段階は撮影イメージの方向を整合させ、撮影イメージのサイズ(解像度)を埋め込む時のウォーターマークイメージのサイズ(解像度)に合わせて変換する前処理過程(例,歪曲を除去する補正過程)として理解されることができる。たとえば、
図23に図示のように、抽出システム11は埋め込み過程に用いられたベースパターン231を参照して撮影イメージ232の回転値(例,「θ」)とスケール(例,「120%」)を計算し(段階S212を参照)、これらを用いて撮影イメージ232を変換させることができる(233を参照)。そのようにすることによって、ウォーターマークの抽出性能が大きく向上することができる。
【0147】
図24はペイロードの抽出基準位置を決定する細部過程を示している。
図24もベースパターンが2Dマグニチュードスペクトルから生成された場合を仮定しており、ベースパターンが検出されたイメージ領域の変換結果(以下、「変換イメージ領域」と略称する)に対して行われることができる。以下、
図24を参照して説明する。ただし、
図24に示す過程はログポーラー変換を行わないという点を除いては
図22に示す過程と同様であるので、
図22と重複する説明は省略する。
【0148】
段階S241で、変換イメージ領域を周波数ドメインに変換して周波数ドメインのマトリックス(f2,以下「第2マトリックス」と称する)が生成される。
【0149】
段階S242で、埋め込み過程に用いられたベースパターンの周波数ドメインマトリックス(f1,以下「第1マトリックス」と称する)が準備される。
【0150】
段階S243で、第1マトリックスと第2マトリックスの間に乗算演算が行われる。
【0151】
段階S244で、乗算演算の結果(R’)と変換イメージ領域のマグニチュードマトリックス(MM2’)、すなわち第2マトリックスに対するマグニチュードマトリックス)の間に除算演算が行われることができる。その結果、該当イメージ領域に対する第2結果マトリックスが導き出されることができる。
【0152】
段階S245で、変換イメージ領域に対する第2結果マトリックスが空間ドメインに変換される。その結果、変換イメージ領域に対する第2参照イメージが生成されることができる。
【0153】
段階S246で、第2参照イメージを用いて変換イメージ領域でペイロード抽出のための基準位置(例,開始位置)などが決定される。具体的には、第2参照イメージで最大ピクセル値を有するピクセルの座標が基準位置に決定され、最大ピクセル値が第2類似度に決定されることができる。
【0154】
第2類似度はペイロードの抽出有無を決定する判断をするために用いられる値として理解されることができる。すなわち、抽出システム11は第2類似度が基準値未満の場合、変換イメージ領域からペイロードを抽出できないと判断することができ、逆の場合はペイロード抽出動作を開始することができる。
【0155】
【0156】
段階S214で、決定された抽出基準位置を参照して変換された撮影イメージからペイロードが抽出される。たとえば、抽出システム11は変換イメージ領域の抽出基準位置から埋め込み演算を逆に行うことによってペイロードを抽出することができる(例,単位領域別に乱数列を参照して埋め込み演算を逆に行うことによってペイロードの各ビットを抽出する)。以下では、
図5および
図6に示す方式でペイロードが埋め込まれた場合(すなわち、単位パターンが「2×2」ピクセルパターンである場合)を仮定して本段階S214の細部過程について説明する。
【0157】
より具体的には、抽出システム11は変換イメージ領域に対してモノクローム変換を行うこともできる。
図25に図示のように、ウォーターマークイメージ253に対してモノクローム変換を行うと、調整されたピクセル値が浮き彫りになるので(251,252,254を参照)、ペイロードがより正確に抽出されることができる。
【0158】
次に、抽出システム11はモノクローム化されたイメージ領域で「2×2」ピクセル領域(すなわち、単位領域)を巡回しながら埋め込み規則を逆に演算してペイロードを構成する各ビットを抽出することができる。この時、抽出システム11は事前に共有された乱数列を参照してペイロードのビットを抽出することができる(例,単位領域のピクセル値が
図10の103のような場合は単位パターン104が抽出され、ペイロードビットが「0」に決定される)。そして、抽出システム11は抽出されたビットを連結(concatenation)してペイロードを完成させることができる。
【0159】
一方、ウォーターマーク埋め込み過程で複数の乱数列が用いられた場合は、抽出システム11は第1乱数列を用いて第1ペイロードを抽出し、第2乱数列を用いて第2ペイロードを抽出することができる。そして、抽出システム11は第1ペイロードと第2ペイロードを比較することによって抽出されたペイロードを検証することができる。このようにすることによって、ペイロード抽出正確度がより向上することができる。
これまで
図22ないし
図25を参照して本開示のいくつかの実施形態によるウォーターマークの抽出方法について説明した。以下では、
図26を参照して本開示のいくつかの実施形態による埋め込みシステム10および/または抽出システム11を実現できる例示的なコンピューティング装置260について説明する。
【0160】
図26はコンピューティング装置260を示す例示的なハードウェア構成図である。
【0161】
図26に図示のように、コンピューティング装置260は一つ以上のプロセッサ261、バス263、通信インタフェース264、プロセッサ261により実行されるコンピュータープログラムをロード(load)するメモリ262と、コンピュータープログラム266を保存するストレージ267を含むことができる。ただし、
図26には本開示の実施形態と関連する構成要素のみが示されている。したがって、本開示が属する技術分野の通常の技術者であれば、
図26に示す構成要素の以外に他の汎用的な構成要素(例,カメラのような撮影モジュールなど)がさらに含まれ得ることがわかる。すなわち、コンピューティング装置260には
図26に示す構成要素以外にも多様な構成要素がさらに含まれ得る。また、場合によって、
図26に示す構成要素のうち一部が省略された形態でコンピューティング装置260が構成されることもできる。以下、コンピューティング装置260の各構成要素について説明する。
【0162】
プロセッサ261はコンピューティング装置260の各構成の全般的な動作を制御することができる。プロセッサ261は、CPU(Central Processing Unit)、MPU(Micro Processor Unit)、MCU(Micro Controller Unit)、GPU(Graphic Processing Unit)、NPU(Neural Processing Unit)または本開示の技術分野に良く知られた任意の形態のプロセッサのうち少なくとも一つを含んで構成されることができる。また、プロセッサ261は本開示の実施形態による動作/方法を実行するための少なくとも一つのアプリケーションまたはプログラムに対する演算を行うことができる。コンピューティング装置260は一つ以上のプロセッサを備えることができる。
【0163】
次に、メモリ262は各種データ、命令および/または情報を保存する。メモリ262は本開示の実施形態による動作/方法を実行するためにストレージ267からコンピュータープログラム266をロードすることができる。メモリ262はRAMのような揮発性メモリとして実現できるが、本開示の技術的範囲はこれに限定されるものではない。
【0164】
次に、バス263はコンピューティング装置260の構成要素間の通信機能を提供する。バス263はアドレスバス(Address Bus)、データバス(Data Bus)および制御バス(Control Bus)など多様な形態のバスとして実現することができる。
【0165】
次に、通信インタフェース264はコンピューティング装置260の有無線インターネット通信を支援する。また、通信インタフェース264はインターネット通信以外の多様な通信方式を支援することもできる。このため、通信インタフェース264は本開示の技術分野に良く知られている通信モジュールを含んで構成されることができる。
【0166】
次に、ストレージ267は一つ以上のコンピュータープログラム266を非一時的に保存する。ストレージ267は、ROM(Read Only Memory)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)、フラッシュメモリなどのような不揮発性メモリ、ハードディスク、リムーバブルディスク、または本開示が属する技術分野で良く知られている任意の形態のコンピュータ可読記録媒体を含んで構成されることができる。
【0167】
次に、コンピュータープログラム266はメモリ262にロードされる時プロセッサ261が本開示の多様な実施形態による動作/方法を行うようにするインストラクションを含むことができる。すなわち、プロセッサ261はロードされたインストラクションを実行させることによって、本開示の多様な実施形態による動作/方法を行うことができる。
【0168】
例えば、コンピュータープログラム266は原イメージとウォーターマークのベースパターンを取得する動作、ペイロードが内在するペイロードパターンを取得する動作、原イメージにベースパターンを埋め込んで中間イメージを生成する動作および中間イメージにペイロードパターンを埋め込む動作を行うようにするインストラクションを含むことができる。
【0169】
他の例としては、コンピュータープログラム266は原イメージとウォーターマークのベースパターンを取得する動作、ペイロードが内在するペイロードパターンを取得する動作、第1加重値に基づいて原イメージの第1領域にベースパターンを埋め込む動作および第1加重値と異なる第2加重値に基づいて原イメージの第2領域にペイロードパターンを埋め込む動作を行うようにするインストラクションを含むことができる。
【0170】
また他の例として、コンピュータープログラム266は
図1ないし
図20を参照して説明された段階/動作の少なくとも一部を行うようにするインストラクションを含むことができる。
【0171】
例示のような場合、コンピューティング装置260により本開示のいくつかの実施形態による埋め込みシステム10が実現されることができる。
【0172】
また、例えば、コンピュータープログラム266は
図1、
図2、
図21ないし
図25を参照して説明された段階/動作の少なくとも一部を行うようにするインストラクションを含むことができる。
【0173】
例示のような場合、コンピューティング装置260により本開示のいくつかの実施形態による抽出システム11が実現されることができる。
【0174】
一方、いくつかの実施形態で、
図26に示すコンピューティング装置260はクラウド技術に基づいて実現された仮想マシンを意味するものであり得る。たとえば、コンピューティング装置260はサーバファーム(server farm)に含まれた一つ以上の物理サーバー(physical server)で動作する仮想マシンであり得る。この場合、
図26に示すプロセッサ261、メモリ262およびストレージ265のうち少なくとも一部は仮想ハードウェア(virtual hardware)であり得、通信インタフェース264もまた、仮想スイッチ(virtual switch)などのような仮想化されたネットワーキング要素として実現されたものであり得る。
【0175】
これまで
図26を参照して本開示のいくつかの実施形態による埋め込みシステム10および/または抽出システム11を実現できる例示的なコンピューティング装置260について説明した。
【0176】
これまで
図1ないし
図26を参照して本開示の多様な実施形態およびその実施形態による効果を言及した。本開示の技術的思想による効果は、以上で言及した効果に制限されず、言及されていないまた他の効果は以下の記載から通常の技術者に明確に理解されるものである。
【0177】
また、以上の実施形態で複数の構成要素が一つに結合されるか、結合されて動作するものとして説明されたが、本開示の技術的思想が必ずしもこのような実施形態に限定されるものではない。すなわち、本開示の技術的思想の目的範囲の内であれば、そのすべての構成要素は一つ以上選択的に結合して動作することもできる。
【0178】
これまで説明された本開示の技術的思想はコンピュータで読取り可能な記録媒体上にコンピュータで読取り可能なコードとして実現されることができる。コンピュータで読取り可能な記録媒体に記録されたコンピュータープログラムはインターネットなどのネットワークを通じて別のコンピューティング装置に転送されて該当コンピューティング装置に設置されることができ、これにより該当コンピューティング装置で使用することができる。
【0179】
図面では動作が特定の順序で示されているが、必ずしも動作が示された特定の順序または順次的な順序で実行されなければならないか、またはすべて示された動作が実行される場合のみ所望の結果が得られるものとして理解されるべきではない。特定の状況では、マルチタスクおよび並列処理が有利な場合もある。以上、添付する図面を参照して本開示の多様な実施形態について説明したが、本開示が属する技術分野における通常の知識を有する者は、その技術的思想や必須の特徴を変更せず本開示の技術的思想が異なる具体的な形態に実施することもできることを理解することができる。したがって、上記一実施形態はすべての面で例示的なものであり、限定的なものではないと理解しなければならない。本開示の保護範囲は以下の特許請求の範囲によって解析されるべきあり、それと同等な範囲内にあるすべての技術思想は本開示によって定義される技術的思想の権利範囲に含まれると解釈されなければならない。
【要約】
【課題】ウォーターマーク(watermark)の不可視性(invisibility)を向上させて原イメージの品質低下を最小化できるウォーターマーク埋め込み方法およびそのシステムを提供する。
【解決手段】ウォーターマーク埋め込み方法およびそのシステムが提供される。いくつかの実施形態によるウォーターマーク埋め込み方法は、原イメージとウォーターマークのベースパターンを取得する段階S31と、ペイロードが内在するペイロードパターンを取得する段階S33と、原イメージにベースパターンを埋め込んで中間イメージを生成する段階S34と、中間イメージにペイロードパターンを埋め込む段階S35とを含むことができる。このような方法によれば、ウォーターマークの不可視性(invisibility)と抽出性能が共に向上することができる。
【選択図】
図3