JP5046047B2 - 画像処理装置、及び画像処理プログラム - Google Patents

画像処理装置、及び画像処理プログラム Download PDF

Info

Publication number
JP5046047B2
JP5046047B2 JP2008277304A JP2008277304A JP5046047B2 JP 5046047 B2 JP5046047 B2 JP 5046047B2 JP 2008277304 A JP2008277304 A JP 2008277304A JP 2008277304 A JP2008277304 A JP 2008277304A JP 5046047 B2 JP5046047 B2 JP 5046047B2
Authority
JP
Japan
Prior art keywords
data
divided
image data
watermark
region
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008277304A
Other languages
English (en)
Other versions
JP2010109486A (ja
Inventor
彰 川中
弘和 小林
隆明 鈴木
宏一 守屋
和夫 谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Instruments Inc
Original Assignee
Seiko Instruments Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Instruments Inc filed Critical Seiko Instruments Inc
Priority to JP2008277304A priority Critical patent/JP5046047B2/ja
Priority to US12/589,595 priority patent/US20100119105A1/en
Publication of JP2010109486A publication Critical patent/JP2010109486A/ja
Application granted granted Critical
Publication of JP5046047B2 publication Critical patent/JP5046047B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0052Embedding of the watermark in the frequency domain

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

本発明は、画像処理装置、及び画像処理プログラムに関し、例えば、ウェーブレット変換によって、画像を周波数帯域に分割するものに関する。
近年、画像データ(デジタル画像)に透かしデータを埋め込む電子透かしの研究が盛んになされている。
透かしデータは、画像に目立たないように埋め込まれ、画像の視認性に与える影響を極力低くしながら、画像に付加的な情報を付与することができる。
透かしデータの利用法は各種あるが、例えば、画像に所定のウェブサイトへのURL(Uniform Resource Locators)と対応付けられた情報を透かしデータとして埋め込んでおき、ユーザがカメラ付き携帯電話で画像を撮影すると、携帯電話が透かしデータを検出して携帯電話を当該ウェブサイトに接続するといったようなものがある。
画像に透かしデータを埋め込む方式は各種あるが、例えば、次の特許文献1の「画像処理装置、プログラムおよび記憶媒体」のようにウェーブレット変換を用いたものがある。
ウェーブレット変換は、JPEG2000でも採用され、近年その重要さが増している変換方法である。
特開2004−221950公報
この技術では、画像を矩形の複数領域に分割し、各矩形領域ごとにウェーブレット変換による変換係数を抽出する。
そして、高周波成分の多い矩形領域は、透かしが目立ちにくいので、透かしの強度を「強」とし、高周波成分の多くない矩形領域は、透かしが目立ちやすいので、透かしの強度を「弱」とする。
特許文献1の技術のように、矩形の領域にウェーブレット変換を用いて透かしデータを埋め込む技術は提案されていたが、任意形状の領域にウェーブレット変換を用いて透かしデータを埋め込む方法は提案されていなかった。
任意形状の領域をウェーブレット変換して透かしデータを埋め込むことができれば、画像内の透かしが目立たない任意形状領域だけ透かしデータを埋め込んだり、任意形状の画像の全体を埋込対象領域とすることにより、任意形状の画像に透かしデータを埋め込んだりすることができるようになる。
そこで、本発明は、任意形状の領域にウェーブレット変換を適用して透かしデータを埋め込むことを目的とする。
前記目的を達成するために、請求項1に記載の発明では、透かしデータを埋め込む対象となる画像データをウェーブレット変換によって周波数帯域に分割した分割画像データを取得する分割画像データ取得手段と、前記画像データに透かしデータを埋め込む領域を規定する領域データを周波数帯域に分割した分割領域データを取得する分割領域データ取得手段と、前記取得した分割領域データで規定される領域に対応する前記分割画像データに透かしデータを埋め込む埋込手段と、を具備したことを特徴とする画像処理装置を提供する。
請求項2に記載の発明では、前記分割画像データ取得手段は、前記画像データの前記領域データで規定される領域に対して分割された前記分割画像データを取得し、前記埋込手段は、前記取得した分割画像データに透かしデータを埋め込むことを特徴とする請求項1に記載の画像処理装置。
請求項3に記載の発明では、前記分割画像データ取得手段は、前記画像データの全体に対して分割された分割画像データを取得し、前記埋込手段は、前記分割画像データにおいて、前記取得した分割領域データで規定される領域に透かしデータを埋め込むことを特徴とする請求項1に記載の画像処理装置を提供する。
請求項4に記載の発明では、前記取得した分割領域データを用いて、前記分割画像データにおいて透かしデータを埋め込む領域の境界を特定する境界特定手段を具備し、前記埋込手段は、前記特定した境界よりも内側を優先して透かしデータを埋め込むことを特徴とする請求項1、請求項2、又は請求項3に記載の画像処理装置を提供する。
請求項5に記載の発明では、前記分割領域データ取得手段は、前記領域データを周波数帯域に分割することにより前記分割領域データを取得することを特徴とする請求項1から請求項4までのうちの何れか1の請求項に記載の画像処理装置を提供する。
請求項6に記載の発明では、前記埋込手段は、所定の周波数帯域に前記透かしデータを埋め込むことを特徴とする請求項1から請求項5までのうちの何れか1の請求項に記載の画像処理装置を提供する。
ここで、所定の周波数帯域とは、例えば、最も周波数の高い周波数帯域を除いた周波数帯域や、指定の周波数帯域、及びそれより低い周波数帯域などとすることができる。
請求項7に記載の発明では、前記埋込手段によって透かしデータが埋め込まれた分割画像データを合成して透かし入り画像データを生成する透かし入り画像データ生成手段を具備したことを特徴とする請求項1から請求項6までのうちの何れか1の請求項に記載の画像処理装置を提供する。
請求項8に記載の発明では、透かしデータが埋め込まれた透かし入り画像データを取得する透かし入り画像データ取得手段と、前記取得した透かし入り画像データをウェーブレット変換によって周波数帯域に分割して分割透かし入り画像データを取得する分割透かし入り画像データ取得手段と、前記透かし入り画像データで透かしデータが埋め込まれた領域を規定する領域データを周波数帯域に分割した分割領域データを取得する分割領域データ取得手段と、前記取得した分割領域データで規定される領域に対応する前記分割透かし入り画像データから透かしデータを読み出す読出手段と、を具備したことを特徴とする画像処理装置を提供する。
請求項9に記載の発明では、前記分割透かし入り画像データ取得手段は、前記取得した透かし入り画像データの前記領域データで規定される領域に対して分割された分割透かし入り画像データを取得し、前記読出手段は、前記取得した分割透かし入り画像データから透かしデータを読み出すことを特徴とする請求項8に記載の画像処理装置を提供する。
請求項10に記載の発明では、前記分割透かし入り画像データ取得手段は、前記透かし入り画像データの全体に対して分割された分割透かし入り画像データを取得し、前記読出手段は、前記分割透かし入り画像データにおいて、前記取得した分割領域データで規定される領域から透かしデータを読み出すことを特徴とする請求項8に記載の画像処理装置を提供する。
請求項11に記載の発明では、前記取得した分割領域データを用いて、前記分割透かし入り画像データにおいて透かしデータが埋め込まれた領域の境界を特定する境界特定手段を具備し、前記読出手段は、前記特定した境界の内側から透かしデータを読み出すことを特徴とする請求項8、請求項9、又は請求項10に記載の画像処理装置を提供する。
請求項12に記載の発明では、前記分割領域データ取得手段は、前記領域データを周波数帯域に分割することにより前記分割領域データを取得することを特徴とする請求項8から請求項11までのうちの何れか1の請求項に記載の画像処理装置を提供する。
請求項13に記載の発明では、透かしデータを埋め込む対象となる画像データを周波数帯域に分割した分割画像データを取得する分割画像データ取得機能と、前記画像データで透かしデータを埋め込む領域を規定する領域データを周波数帯域に分割した分割領域データを取得する分割領域データ取得機能と、前記取得した分割領域データで規定される領域に対応する前記分割画像データに透かしデータを埋め込む埋込機能と、をコンピュータで実現する画像処理プログラムを提供する。
請求項14に記載の発明では、透かしデータが埋め込まれた透かし入り画像データを取得する透かし入り画像データ取得機能と、前記取得した透かし入り画像データを周波数帯域に分割して分割透かし入り画像データを取得する分割透かし入り画像データ取得機能と、前記透かし入り画像データで透かしデータが埋め込まれた領域を規定する領域データを周波数帯域に分割した分割領域データを取得する分割領域データ取得機能と、前記取得した分割領域データで規定される領域に対応する前記分割透かし入り画像データから透かしデータを読み出す読出機能と、をコンピュータで実現する画像処理プログラムを提供する。
本発明によれば、任意形状を規定する形状マップを用いることにより、任意形状の領域にウェーブレット変換を適用して透かしデータを埋め込むことができる。
(1)実施の形態の概要
図3(a)に示したように、透かしデータを埋め込む対象となる画像データと、画像データにおいて透かしデータを埋め込む対象となる任意形状領域を規定する形状マップと、透かしデータを用意する。
SA−DWT処理部21は、形状マップを用いて画像データの任意形状領域に含まれる領域を認識し、当該領域の画像データを(任意形状)ウェーブレット変換する。
ウェーブレット変換により、任意形状領域の画像データは周波数帯域に分割され、透かし情報埋込部22が分割によって生成された画像データの周波数空間に透かしデータを埋め込む。
これをSA−IDWT処理部23が逆ウェーブレット変換し、透かし入り画像データが生成される。
透かしデータの読出は、図3(b)に示したように、SA−DWT処理部24が形状マップを用いて透かし入り画像データで透かしデータが埋め込まれた任意形状領域を認識し、当該任意形状領域をウェーブレット変換して周波数帯域に分割する。
そして、透かしデータ読出部25が分割によって生成された画像データの周波数空間から透かしデータを読み出す。
(2)実施の形態の詳細
図1は、本実施の形態に係る画像処理装置1のハードウェア的な構成を説明するための図である。
画像処理装置1は、CPU(Central Processing Unit)2、RAM(Random Access Memory)7、ROM(Read Only Memory)13、入力装置3、表示装置4、印刷装置5、通信制御装置6、記憶装置8、記憶媒体駆動装置9、入出力I/F(インターフェース)10などの各機能部がバスラインで接続されて構成されている。
CPU2は、所定のプログラムに従って、各種の演算処理、及び情報処理や画像処理装置1の各部を制御したりする中央処理装置である。
CPU2は、例えば、プログラム格納部11に記憶されている透かし埋込プログラムを実行し、画像データの任意形状領域をウェーブレット変換して透かしデータを埋め込んだり、また、透かし読出プログラムを実行して、画像データの任意形状領域を逆ウェーブレット変換して透かしデータを読み出したりする。
ROM13は、画像処理装置1を動作させるための基本的なプログラムやデータなどを記憶した読み出し専用のメモリである。
RAM7は、CPU2が動作するためのワーキングメモリを提供する読み書きが可能なメモリであり、CPU2が画像データに透かしデータを埋め込んだり、あるいは、埋め込んだ透かしデータを読み出したりする際のワーキングメモリを提供する。
入力装置3は、例えば、キーボードやマウスなどの操作デバイスを有しており、ユーザが画像処理装置1を操作する際に使用する。
表示装置4は、例えば、液晶ディスプレイなどの表示デバイスを備えており、例えば、画像データに透かしデータを埋め込む際の操作画面や、透かしデータを読み出す際の操作画面など、画像処理装置1を操作する際の各種画面を表示する。
通信制御装置6は、画像処理装置1をインターネットなどの通信ネットワークに接続する装置である。画像処理装置1は、通信制御装置6を介して、各種サーバ装置や端末装置と通信することができ、外部から透かしデータを埋め込む対象の画像データや透かしデータを受信したり、あるいは、透かしデータを埋め込んだ画像データを送信したりすることができる。
印刷装置5は、例えば、レーザプリンタ、インクジェットプリンタ、熱転写プリンタなどのプリンタを備えており、透かしデータを埋め込んだ画像データなどを印刷することができる。
入出力I/F10は、各種の外部装置と接続するためのインターフェースであって、例えば、スキャナやデジタル式カメラを画像処理装置1に接続し、これらを用いて透かしデータ埋め込み対象の画像データを画像処理装置1に取り込むように構成することができる。
記憶媒体駆動装置9は、装着された着脱可能な記憶媒体を駆動し、データの読み書きを行う機能部である。
画像処理装置1は、記憶媒体駆動装置9を用いて、記憶媒体から、透かしデータ埋め込み対象の画像データや透かしデータを読み込んだり、透かしデータを埋め込んだ画像データを記憶媒体に書き出したりすることができる。
読み書き可能な記憶媒体としては、例えば、光ディスク、光磁気ディスク、磁気ディスクなどがあり、これらから画像データを読み取ったり、書き込み可能な記憶媒体の場合には、画像データやその他のデータを書き込むことができる。
記憶装置8は、例えば、ハードディスクなどで構成された大容量で読み書き可能な記憶装置である。
記憶装置8には、プログラム類を格納したプログラム格納部11とデータ類を記憶したデータ格納部12が形成されている。
プログラム格納部11には、画像処理装置1を動作させるための基本的なソフトウェアであるOS(Operating System)、透かし埋込プログラム、及び透かし読出プログラムなどが格納されている。
一方、データ格納部12には、透かしデータを埋め込む対象である画像データ、透かしデータを埋め込む任意形状領域を規定する形状マップ、及び透かしデータなどが格納されている。
次に、画像データと形状マップについて説明する。
図2(a)は、形状マップの一例を示した図である。
画像処理装置1は、画像の任意形状領域をウェーブレット変換して透かしデータを埋め込むが、形状マップは、画像処理装置1が任意形状領域を認識するために用いられる情報である。
図に示した形状マップ60は、横方向をi軸、縦方向をj軸とし、画素α(i,j)の値が、透かしデータを埋め込む任意形状領域61では1となり、それ以外の任意形状外領域62では0となるように設定されている。
形状マップ60は、例えば、透かしデータを埋め込むユーザが作成して用意する。
図2(b)は、透かしデータを埋め込む対象の画像の一例を示した図である。
画像50の画素f(i,j)は、形状マップ60のα(i,j)に対応しており、形状マップ60で任意形状領域61に対応する任意形状領域51がウェーブレット変換して透かしデータを埋め込む領域となる。
f(i,j)の値は、例えば、輝度であったり、画像データがRGBにより構成されている場合には、これらRなどの値となる。
画像処理装置1は、形状マップ60と画像50を対比することにより、画像50において透かしデータを埋め込む任意形状領域51と透かしデータを埋め込まない任意形状外領域52を認識することができる。
なお、この例では、図2(b)の画像に示された人物の全体が任意形状領域51となっているが、例えば、人物の顔の部分が任意形状領域となるように形状マップ60を設定すると、画像処理装置1は、人物の顔の部分をウェーブレット変換して透かしデータを埋め込む。
このように、本実施の形態では、任意形状の領域をウェーブレット変換して透かしデータを埋め込むことができるため、画像中の一部領域を任意形状領域として透かしデータを埋め込むこともできるし、画像の形状全体を任意形状とすることにより、任意形状の画像全体に透かしデータを埋め込むこともできる。
一般に、画像中の高周波成分の多い領域では透かしデータが目立ちにくいという特性があり、そのため、画像中の透かしデータが目立ちにくい領域を任意形状領域として設定すると、より効果が発揮される。
この場合、画像処理装置1が、画像中の高周波成分の多い領域を解析して、当該領域を自動的に任意形状領域とするように構成することができる。
また、画像処理装置1が画像のエッジを認識してエッジにより閉じた領域を任意形状領域とするように構成したりすることもできる。
次に、透かしデータの埋込処理と読出処理について説明する。
図3(a)は、透かしデータの埋込処理を説明するための図である。
予め、形状マップ、画像データ、及び透かしデータを用意しておく。
SA−DWT処理部21、透かしデータ埋込部22、及びSA−IDWT処理部23は、CPU2が透かし埋込プログラムを実行することにより形成される機能部である。
ここで、SA−DWTは、shape−adaptive discrete wavelet transformの略であり任意形状離散ウェーブレット変換を意味し、SA−IDWTは、shape−adaptive inverse discrete wavelet transformの略であり任意形状逆離散ウェーブレット変換を意味する。
以下では、これらを単にウェーブレット変換、及び逆ウェーブレット変換と呼ぶことにする。
まず、SA−DWT処理部21が、形状マップをウェーブレット変換し、画像データの分割レベル(後述のオクターブ分割の回数)に対応する分割形状マップを作成する。
なお、形状マップの場合は、α(i,j)が1の部分を分割すればよく、このため、後述のフィルタリングをせずにα(i,j)の領域をダウンサンプリングするだけで得ることができる。
次に、SA−DWT処理部21は、形状マップを用いて画像データ中の任意形状領域を認識し、当該領域をウェーブレット変換する。
これによって、任意形状領域の画像データは、周波数帯域(サブバンド)に分割された周波数空間内の変換係数となる。この分割は、オクターブ分割であって、詳細は後ほど説明する。
周波数空間の変換係数に分割された画像データを更にオクターブ分割する場合、SA−DWT処理部21は、対応する分割形状マップを用いて周波数空間における任意形状領域を認識してウェーブレット変換を行い分割する。
分割形状マップの任意形状領域は、周波数空間と対応して分割されるため、透かしデータ埋込部22は、分割形状マップの任意形状領域を参照して、周波数空間での任意形状領域を認識することができ、これによって、周波数空間での任意形状領域の変換係数を更に分割することができる。
以上のようにして画像データの任意形状領域の分割が完了すると、次は、透かしデータ埋込部22が、分割形状マップを用いて周波数空間に透かしデータを埋め込んでいく。
例えば、分割レベル2の周波数空間に透かしデータを埋め込む場合、透かしデータ埋込部22は、分割レベル2の分割形状マップを参照し、分割レベル2の周波数空間での任意形状領域を認識して、当該領域に透かしデータを埋め込んでいく。
このように、周波数空間に透かしデータを埋め込んだ後、SA−IDWT処理部23が周波数空間の変換係数を逆ウェーブレット変換することにより、透かしデータが埋め込まれた透かし入り画像データを生成する。
以上のようにして、所定の周波数帯域に透かしデータが埋め込まれた画像データを得ることができ、これを用いて画像を印刷又は表示すると、所定の周波数帯域に透かしデータが埋め込まれた画像が形成される。
図3(b)は、透かしデータの読出処理を説明するための図である。
予め、透かし入り画像データと形状マップを用意しておく。
SA−DWT処理部24と透かしデータ読出部25は、CPU2が透かし読出プログラムを実行することにより形成される機能部である。
なお、SA−DWT処理部21とSA−DWT処理部24は機能が同じであるので、当該処理を行うモジュールを透かし埋込プログラムと透かし読出プログラムで共用してもよい。
まず、SA−DWT処理部24が画像データを分割する分割レベルだけ分割し、分割形状マップを生成する。
なお、この分割形状マップは、透かしデータ埋込処理で用いたものと同じであるため、透かしデータ埋込処理で用いた分割形状マップを用いて、形状マップの分割処理を省略するように構成することもできる。
次に、SA−DWT処理部24が、形状マップを用いて透かし入り画像データ中の任意形状領域を認識し、当該領域をウェーブレット変換する。
更に分割する場合、SA−DWT処理部24は、分割形状マップを用いて周波数空間での任意形状領域を認識し、必要な分割レベルだけ分割を繰り返す。
これによって、透かしデータが埋め込まれた任意形状領域の画像データが分割され、周波数空間での変換係数が得られる。この変換係数には透かしデータが埋め込まれている。
そして、透かしデータ読出部25が、分割形状マップを参照することにより周波数空間で任意形状領域を認識し、当該領域から透かしデータを読み出す。
以上のようにして、画像データの任意形状領域への透かしデータの埋め込み、及び透かしデータの読み出しを行うことができる。
また、上の例では、画像処理装置1が透かしデータの埋め込みと読み出しの両方を行ったが、これは、一例であり、透かしデータの埋込処理と透かしデータの読出処理を別の情報処理装置が行うように構成することができる。
次に、図4を用いて任意形状領域をウェーブレット変換する方法について説明する。
まず、図に示したように、α(i,j)が横方向に(0011111100)となっている形状マップがあったとする。
画像処理装置1は、α(i,j)=1となっている画素に対応する画像データの画素を透かしデータを埋め込む任意形状領域として認識し、図に示したように、その画素値が(abcdef)であったとする。
画像処理装置1は、当該認識した画像データf(i,j)をウェーブレット変換対象とし、まず、両端に対して折返し処理する。これにより、両端に(dcb)なる値と(edc)なる値が追加される。
ここで、折返し処理するのは、両端で画素の値が極端に変わると高周波成分が発生するので、これを防ぐためである。
画像処理装置1は、折返し処理した画素の行を低域通過フィルタによって低域通過フィルタリングすると共に高域通過フィルタによって高域通過フィルタリングする。
すると、その変換係数として、低域側の周波数空間での変換係数(a’b’c’d’e’f’)と、高域側の周波数空間での変換係数(a’’b’’c’’d’’e’’f’’)が得られる。
そして、画像処理装置1は、低域側に関しては(0から始まる)偶数番目の値を間引きすることによりダウンサンプリングし、高域側に関しては奇数番目の値を間引きすることによりダウンサンプリングする。これは、ダウンサンプリングしても逆ウェーブレット変換で元の画像データが生成できるからである。
これによって、画像データ(abcdef)が、低周波成分(a’c’e’)と高周波成分(b’’d’’f’’)に分割される。
即ち、任意形状領域内の画像データの低周波成分が低周波側の周波数空間での変換係数として得られ、高周波成分が高周波側での周波数空間の変換係数として得られる。
以上は、iを一定にしてj方向(即ち横方向)に分割したが、これを全てのiについて行えば、画像データの任意形状領域が横方向に分割される。
同様に、jを一定にしてi方向(即ち縦方向)に分割すると、画像データの任意形状領域が縦方向に分割される。
画像処理装置1は、次に説明するように、画像データの任意形状領域を縦方向と横方向に分割して、当該領域をオクターブ分割する。
なお、図2(b)の透かしデータを埋め込まない任意形状外領域52の画素の値は、例えば、0に設定するなど、適当に設定することができる。
次に、ウェーブレット変換によるオクターブ分割について説明する。
図5は、フィルタを組み合わせたフィルタバンクの一例を示しており、当該フィルタバンクで画像データの任意形状領域をフィルタリングすることにより画像データの任意形状領域がウェーブレット変換によりオクターブ分割される。
図中のH0は、低域通過フィルタを示しており、H1は高域通過フィルタを示している。また、Dは、ダウンサンプリングを行うことを示している。
ウェーブレット変換前の任意形状領域内の画像データをf00(i,j)(以下、単にf00などと記す)とする。ここでfに続く最初の数字は、分割レベル(オクターブ分割した回数、分解レベルともいう)を表し、周波数帯域を識別する番号として用いることができる。
それに続く数字は周波数空間を識別する番号である。
例えば、1番の周波数帯域には、4つの周波数空間での変換係数f10、f11、f12、f13が含まれている。
分割レベル1では、画像処理装置1は、画像データf00を垂直方向(即ち、jを一定としてi方向)に折り返した後、H0で低域通過フィルタリングしてダウンサンプリングする。
そして、画像処理装置1は、低域通過フィルタリングした画像データを、水平方向(即ち、iを一定としてj方向)に折り返した後、H0で低域通過フィルタリングしてダウンサンプリングすると共に、折返し処理の後、H1で高域通過フィルタリングしてダウンサンプリングする。
これによって、垂直方向及び水平方向が低域フィルタリングされた周波数空間での変換係数f10と、垂直方向に低域通過フィルタリングされ、水平方向に高域通過フィルタリングされた周波数空間での変換係数f11が得られる。
更に、画像処理装置1は、画像データf00を折り返した後、垂直方向にH1で高域通過フィルタリングしてダウンサンプリングする。
そして、画像処理装置1は、高域通過フィルタリングした画像データを、水平方向に折返し処理した後、H0で低域通過フィルタリングしてダウンサンプリングすると共に、折返し処理の後、H1で高域通過フィルタリングしてダウンサンプリングする。
これによって、垂直方向に高域通過フィルタリングされ、水平方向に低域通過フィルタリングされた周波数空間での変換係数f12と、垂直方向及び水平方向が高域フィルタリングされた周波数空間での変換係数f13が得られる。
以上のようにして、画像データf00は、4つの周波数空間での変換係数f10、f11、f12、f13に分割されるが、このように、画像データを4分の1に分割する方式はオクターブ分割と呼ばれている。
画像の周波数成分は主に低周波側に存在するため、画像データの主な信号はf10に含まれている。
このため、ウェーブレット変換では、一般的に、fn0(nは自然数)の変換係数に対して更にオクターブ分割を繰り返していく。
そこで、f10を同様にフィルタリングして、分割レベル2の周波数空間f20、f21、f22、f23が生成される。
図示しないが、更に、f20を分割することにより、分割レベル3のf30、f31、f32、f33が生成され、このように分割を繰り返して、より高い分割レベルの周波数帯域に分割することができる。
次に、画像のオクターブ分割例について説明する。
図6(a)は、分割前の任意形状領域内の画像データf00による画像を示した図である。
図6(b)は、分割レベル1の変換係数f10、f11、f12、f13による画像を示した図である。
分割レベル1の各周波数空間の変換係数は、画像データf00をオクターブ分割することにより得られる。
画像データf00の主要な信号成分は低周波側のf10に存在するため、変換係数f10による画像は実線で示し、他の周波数空間では画像を破線で示してある。
図6(c)は、分割レベル2の変換係数f20、f21、f22、f23による画像を示した図である。
分割レベル2の画像データは、変換係数f10をオクターブ分割することにより得られる。
画像の主要な信号成分は低周波側に存在するため、変換係数f20では画像を実線で示し、他の周波数空間では画像を破線で示してある。
図示しないが、更に、変換係数f20をオクターブ分割すると、レベル3の周波数空間f30、f31、f32、f33が得られる。
次に、形状マップのオクターブ分割例について説明する。
図7(a)は、分割前の形状マップα00を示した図である。
値が1の領域によってウェーブレット変換を行う任意形状領域が規定されている。
α00をオクターブ分割すると、図7(b)に示したように、分割レベル1の分割形状マップα10、α11、α12、α13が得られる。
それぞれの分割形状マップでは、対応する周波数空間での任意形状領域が値1の領域によって規定されている。
例えば、分割形状マップα10の値が1の領域は、f10の周波数空間での任意形状領域を規定し、分割形状マップα11の値が1の領域は、f11の周波数空間での任意形状領域を規定している。
このため、画像処理装置1は、例えば、f10の周波数空間と分割形状マップα10を対比することにより、当該周波数空間での任意形状領域を認識することができる。
更に、分割形状マップα10をオクターブ分割すると図7(c)に示したように、分割レベル2の分割形状マップα20、α21、α22、α23が得られる。
分割形状マップα20、α21、α22、α23の値が1の領域は、それぞれ、f20、f21、f22、f23の周波数空間における任意形状領域を規定している。
更に、分割形状マップα20をオクターブ分割すると、レベル3の分割形状マップが得られ、これは、分割レベル3の周波数空間の任意形状領域を規定している。
以上の説明で、周波数空間の変換係数は、透かしデータを埋め込む対象となる画像データをウェーブレット変換によって周波数帯域に分割した分割画像データとし機能しており、形状マップは、画像データに透かしデータを埋め込む領域を規定する領域データとして機能しており、分割形状マップは、領域データを周波数帯域に分割した分割領域データとして機能している。
このように、画像処理装置1は、分割画像データ取得手段と、分割領域データ取得手段を備えている。
そして、画像処理装置1は、領域データ(形状マップ)を周波数帯域に分割することにより分割領域データ(分割形状マップ)を取得している。
次に、図8を用いて任意形状領域を逆ウェーブレット変換する方法について説明する。
ここでは、図4で生成した低周波成分と高周波成分を逆変換する場合について説明する。
まず、周波数空間での変換係数(低周波成分と高周波成分)と、これに対応して分割された分割形状マップを用意する。
画像処理装置1は、分割形状マップの値が1となる画素に対応する周波数空間の成分を抽出する。
これにより、先のウェーブレット変換による低周波成分の変換係数(a’c’e’)と、高周波成分の変換係数(b’’d’’f’’)が得られる。
次に、画像処理装置1は、得られた低周波成分の変換係数の奇数番目の位置に0を挿入してアップサンプリングし、更に、高周波成分の変換係数についても偶数番目の位置に0を挿入してアップサンプリングする。
そして、画像処理装置1は、アップサンプリングした低周波成分と高周波成分を折返し処理した後、低周波成分を低域通過フィルタにて低域通過フィルタリングし、高周波成分を高域通過フィルタにて高域通過フィルタリングする。
そして、画像処理装置1は、これらフィルタリングした値を合成して、その合成係数(abcdef)を演算する。
演算された合成係数は元の画像データf(i,j)となり、これによって原画像データが復元される。
以上は、iを一定にしてj方向(即ち横方向)に合成したが、これを全てのiについて行えば、画像データの任意形状領域が横方向に合成される。
同様に、jを一定にしてi方向(即ち縦方向)に合成すると、画像データの任意形状領域が縦方向に合成される。
この処理を図6(c)で示した周波数空間に適用すると、まず、f20、f21、f22、f23が合成されて、図6(b)の周波数空間が得られる。
更に、この処理を図6(b)の周波数空間に適用すると、f10、f11、f12、f13が合成されて図6(a)の画像データf00が復元される。
次に、周波数空間において透かしデータを埋め込むのに好ましい分割レベルについて説明する。
図9は、画像データf00を分割レベル3まで分割したところを示した図である。ただし、図の煩雑化を避けるため、画像(変換係数)は省略してある。
図に示したようにオクターブ分割を3回繰り返すとf30〜f33、f21〜f23、f11〜f13に対応する周波数空間が得られる。
透かしデータは、何れの周波数空間の変換係数に埋め込んでもよいが、高周波側では透かしデータの位置ずれが生じると透かしデータの読み出しが困難になるため、最も高周波側にあるf11〜f13を避けて透かしデータを埋め込むのが望ましい。
一方、低周波側の周波数空間に透かしデータを埋め込むと、透かしデータが目立ち易いため、例えば、高周波側と低周波側の間にあるf21〜f23(図中太線で示してある)に透かしデータを埋め込むと、画像の視認性を損なわず、また、安定して透かしデータを読み出すことができる。
そのため、透かしデータを埋め込む周波数空間としては、中程の分割レベルか、それよりも若干低周波側の分割レベルが望ましい。
このように、画像処理装置1は、所定の周波数帯域に透かしデータを埋め込むように構成することができ、ここでは、所定の周波数帯域として、最も周波数の高い周波数帯域を除いた周波数帯域に透かしデータを埋め込んでいる。
また、例えばの分割レベル2の周波数帯域に透かしデータを埋め込むといったように、指定された周波数帯域に透かしデータを埋め込むように構成したり、あるいは、分割レベル4未満の周波数帯域に透かしデータを埋め込むといったように、指定された周波数帯域より低い周波数帯域に透かしデータを埋め込むように構成することもできる。
次に、図10のフローチャートを用いて画像処理装置1が行う透かし埋込処理について説明する。
以下の処理は、CPU2(図1)が透かし埋込プログラムに従って行うものである。
まず、画像処理装置1は、必要な分割レベルまで分割した画像データと形状マップ、及び透かしデータをデータ格納部12(図1)に記憶して用意しておく。
透かしデータは、例えば、(101001)とか、(0110011010)など、01の列によるデジタルデータとする。ここでは、透かしデータをam(m=0、1、2、・・・)で表すことにする。例えば、透かしデータが(101)であった場合、a0=1、a1=0、a2=1となる。
次に、画像処理装置1は、透かしを埋め込む周波数帯域を特定するため、分割レベルnの初期値を設定する(ステップ5)。
画像処理装置1は、初期値で設定されたnの周波数帯域に透かしデータを埋め込み、透かしデータが入りきらない場合には、低周波側の周波数帯域に順次透かしデータを埋め込んでいく。
例えば、図9に示したように分割レベル2の周波数帯域に透かしデータを埋め込む場合はn=2とすると、分割レベル2の周波数帯域に透かしデータが入りきらない場合、画像処理装置1は、分割レベル3の周波数空間にも透かしデータを埋め込む。
nの初期値は、例えば、透かしデータを埋め込むユーザが画像処理装置1に設定したり、あるいは、デフォルト値として予め設定しておくなどする。
次に、画像処理装置1は、tαを3に設定し、iとjを0に設定し、mを0に設定し、kを1に設定する(ステップ10)。
ここで、tαは、周波数空間内の位置(画素)が任意形状領域の内側にあるか、あるいは境界にあるかを判断するためのパラメータである。透かしデータは、読み出しエラーを避けるべく、なるべく境界を避けて埋め込むのが望ましいため、tαはその判断に用いられる。判断方法は後述する。
i、jは、分割形状マップや周波数空間などでの座標を表すパラメータである。
mは、透かしデータamを表すパラメータである。
kは、周波数帯域において3つある周波数空間を識別するためのパラメータである。
次に、画像処理装置1は、全ての透かしデータを埋め込んだか否かを判断する(ステップ15)。
全ての透かしデータを埋め込んだ場合(ステップ15;Y)、画像処理装置1は、透かし埋込処理を終了する。
一方、まだ埋め込んでいない透かしデータが存在する場合(ステップ15;N)、画像処理装置1は、分割形状マップでαn1(i,j)+αn2(i,j)+αn3(i,j)=tαか否かを判断する(ステップ20)。ただし、図では(i,j)を省略してある。
例えば、ここで、tαを初期値の3とし、i、j=0とすると、画像処理装置1は、αn1(0,0)+αn2(0,0)+αn3(0,0)=3であるか否かを判断している。
これは、分割形状マップαn1の座標値(0,0)の値と、分割形状マップαn2の座標値(0,0)の値と、分割形状マップαn3の座標値(0,0)の値を加算した値が3であるか否かを判断していることになる。
座標値(0,0)の位置が任意形状領域内にある場合、それぞれの分割形状マップでの値は1であるため加算値は3となり、任意形状領域外にある場合は、それぞれの分割形状マップでの値が0となるため加算値は0となる。
また、座標の位置が任意形状領域の境界にある場合、ある分割形状マップでは0となり他の分割形状マップでは1となることが考えられるため、加算値は1又は2などとなる。
即ち、画像処理装置1は、ステップ20で、加算値が3である場合、座標(i,j)の位置が任意形状領域内であり、加算値が0の場合は、任意形状領域外であり、加算値が1又は2の場合には、任意形状領域の境界にあると判断する。
そして、画像処理装置1は、任意形状の境界よりも内側を優先して透かしデータを埋め込んでいく。
このように、画像処理装置1は、分割領域データ(分割形状マップ)を用いて、分割画像データ(周波数空間での変換係数)において透かしデータを埋め込む領域の境界を特定する境界特定手段を備え、当該特定した境界よりも内側を優先して透かしデータを埋め込んでいく。
形状マップでαn1(i,j)+αn2(i,j)+αn3(i,j)=tαの場合(ステップ20;Y)、画像処理装置1は、αnk(i,j)が1であるか否かを判断する(ステップ60)。
αnk(i,j)が1でない場合(ステップ60;N)、画像処理装置1は、kをkmod3+1とし(ステップ90)、ステップ60に戻って、αnk=1であるか否かを判断する(ステップ60)。
ここで、kmod3は、kを3で割ったときの余りを意味し、画像処理装置1は、ステップ60とステップ90で、αn1=1でないなら、αn2=1であるか判断し、αn2=1でないなら、更にαn3=1であるか判断するという動作を行う。
例えば、初期値のtα=3の場合、αn1=αn2=αn3=1であるので、ステップ60は、αn1=1となる。
αnk(i,j)が1であった場合(ステップ60;Y)、画像処理装置1は、am=1か否かを判断する(ステップ65)。
amが1でなかった場合(ステップ65;N)、即ち、amが0であった場合、画像処理装置1は、fnk(i,j)の値を0とする(ステップ70)。
一方、amが1であった場合(ステップ65;Y)、画像処理装置1は、fnk(i,j)の値をsgn(fnk(i,j))・Tとする(ステップ75)。
ここで、sgn(fnk(i,j))は、fnk(i,j)の変換係数の符号であり、正又は負である。
そして、Tは、透かしデータの振幅である。Tは、ノイズに埋もれてしまう場合よりも大きく、また、画像で目立たない程度に小さい適度な大きさとする。これは、実験などにより決められる。
このように、画像処理装置1は、透かしデータが0の場合は、対応するfnk(i,j)を0とし、透かしデータが1の場合には、対応するfnk(i,j)を1とすることにより透かしデータを周波数空間に埋め込む。
このように、画像処理装置1は、画像データの領域データ(形状マップ)で規定される領域(任意形状領域)に対して分割された分割画像データ(周波数空間の変換係数)を取得し、当該分割画像データに透かしデータを埋め込んでおり、分割領域データ(分割形状マップ)で規定される領域に対応する分割画像データ(周波数空間の変換係数)に透かしデータを埋め込む埋込手段を備えている。
画像処理装置1は、このようにして透かしデータamを埋め込んだ後、mを1だけインクリメント(増加)し(ステップ80)、更に、kを1だけインクリメントし(ステップ85)、ステップ25に移行する。
ステップ20においてαn1(i,j)+αn2(i,j)+αn3(i,j)=tαでなかった場合(ステップ20;N)、又はステップ85を終えた後、画像処理装置1は、i、jの値を更新する(ステップ25)。
この更新は、例えば、jを一定としてiを更新していき、iが上限に達すると、jを1だけインクリメントして、更にiを更新していくというように、α(i,j)を網羅するように所定量ずつ更新する。
次に、画像処理装置1は、i、jがα(i,j)の配列内にあるか否か、即ち、座標(i,j)が分割形状マップ内にあるか否かを判断する(ステップ30)。
i、jが配列内にある場合(ステップ30;Y)、画像処理装置1は、ステップ15に戻り、更に、同じtαで透かしデータの埋込を続行する。
一方、i、jが配列内にない場合(ステップ30;N)、画像処理装置1は、tαを1だけデクリメント(減少)する(ステップ35)。
更に、画像処理装置1は、デクリメント後のtαが正であるか判断し(ステップ40)、正である場合には(ステップ40;Y)、i,jを0に初期化してステップ15に戻り、透かしデータの埋込処理を行う。
tαを1デクリメントして(ただし、tα≠0)透かしデータの埋込を行うことは、任意形状領域の境界に透かしデータを埋め込むことを意味する。
このように、画像処理装置1は、まず、透かしデータが安定して読み出せる任意形状領域の内側に透かしデータを埋め込んだ後、それでも足りない場合には、任意形状領域の境界に透かしデータを埋め込む。
一方、tαが正でない場合(ステップ40;N)、即ち、tα=0の場合、任意形状領域の内側、及び境界の全てに透かしデータを埋め込んでしまったため、画像処理装置1は、nを1インクリメントして(ステップ45)、tαを初期値の3に設定し(ステップ50)、i、jを0に初期化して(ステップ55)、ステップ15に戻る。
即ち、画像処理装置1は、分割レベルnの周波数帯域に透かしを埋め終わると、分割レベルn+1の低周波側の周波数帯域に移行して、透かしデータの埋込処理を行う。
以上のようにして、画像処理装置1は、画像データの任意形状領域の周波数空間に透かしデータを埋め込むことができる。
そして、画像処理装置1は、透かしデータを埋め込んだ変換係数を逆ウェーブレット変換することにより、周波数空間に透かしデータが埋め込まれた画像データを生成することができる。
このように、画像処理装置1は、透かしデータが埋め込まれた分割画像データ(周波数空間での変換係数)を合成して透かし入り画像データを生成する透かし入り画像データ生成手段を備えている。
なお、上の例では、画像処理装置1は、画像データの任意形状領域をウェーブレット変換して、当該領域に透かしデータを埋め込んだが、任意形状領域を一部に含む画像データ全体をウェーブレット変換するように構成することもできる。
この場合、画像処理装置1は、分割形状マップを用いることにより周波数空間での任意形状領域を認識して、当該領域に透かしデータを埋め込む。
この場合、画像処理装置1は、画像データの全体に対して分割された分割画像データ(周波数空間における変換係数)を取得し、当該分割画像データにおいて、分割領域データ(分割形状マップ)で規定される領域に透かしデータを埋め込む。
この例では、任意形状領域の背景となっている任意形状以外の部分の画像データもウェーブレット変換、及び逆ウェーブレット変換されて復元される。
一方、任意形状領域をウェーブレット変換する例では、画像データの一部を任意形状領域として透かしデータを埋め込む場合、背景となる画像データは省略されるため、透かしデータを埋め込んだ任意形状画像を、元の画像の任意形状領域の位置に貼り付けるように構成することができる。
次に、図11のフローチャートを用いて画像処理装置1が行う透かし読出処理について説明する。
以下の処理は、CPU2(図1)が透かし埋込プログラムに従って行うものである。
まず、画像処理装置1は、透かしデータが埋め込まれた画像データを取得し、これをオクターブ分割した各周波数空間での変換係数、分割形状マップを用意しておく。
このように、画像処理装置1は、透かしデータが埋め込まれた透かし入り画像データを取得する透かし入り画像データ取得手段と、当該透かし入り画像データをウェーブレット変換によって周波数帯域に分割して分割透かし入り画像データ(周波数空間の変換係数)を取得する分割透かし入り画像データ取得手段と、当該透かし入り画像データで透かしデータが埋め込まれた領域を規定する領域データ(形状マップ)を周波数帯域に分割した分割領域データ(分割形状マップ)を取得する分割領域データ取得手段を備えている。
また、分割形状マップは、形状マップを分割して生成するように構成してもよく、この場合、画像処理装置1は、領域データ(形状マップ)を周波数帯域に分割することにより分割領域データ(分割形状マップ)を取得する。
以下、図10と同じ処理には同じステップ番号を付し、説明を簡略化又は省略することにする。
まず、画像処理装置1は、nを初期値に設定する(ステップ5)。nの値は、透かしデータの埋込で用いた値を入手して画像処理装置1に設定しておく。
そして、画像処理装置1は、tα、i、j、m、kの値を初期値に設定する(ステップ10)。
また、図示しないが、埋め込んだ透かしデータのビット数と、透かしデータの振幅Tも入手して画像処理装置1に設定してあるものとする。
次に、画像処理装置1は、全ての透かしデータを読み出し済みか否かを判断する(ステップ16)。
画像処理装置1は、この判断を、読み出した透かしデータのビット数が、先に設定されたビット数に達したか否かにより行う。
全ての透かしデータを読み出した場合(ステップ16;Y)、画像処理装置1は、透かし読出処理を終了する。
まだ、読み出していない透かしデータがある場合(ステップ16;N)、画像処理装置1は、形状マップでαn1(i,j)+αn2(i,j)+αn3(i,j)=tαか否かを判断する(ステップ20)。
このように、画像処理装置1は、分割領域データ(分割形状マップ)を用いて、分割透かし入り画像データ(周波数空間での変換係数)において透かしデータが埋め込まれた領域の境界を特定する境界特定手段を備え、透かしデータの埋込処理と同様に、当該特定した境界の内側から透かしデータを読み出す。
ステップ20で加算値がtαである場合、|fn(i,j)|、即ち、fn(i,j)の絶対値がT/2以上であるか否かを判断する(ステップ100)。
そして、T/2より小さい場合(ステップ100;N)、画像処理装置1は、am=0とし(ステップ105)、T/2以上である場合(ステップ100;Y)、画像処理装置1は、am=1とする(ステップ120)。
ここで、ビットの01を判断するための閾値をT/2としたが、これは、一例であって、実験などにより、より適当な値とすることができる。
このように、画像処理装置1は、透かし入り画像データの領域データ(形状マップ)で規定される領域に対して分割された分割透かし入り画像データ(周波数空間での変換係数)を取得し、分割透かし入り画像データから透かしデータを読み出しており、分割領域データ(分割形状マップ)で規定される領域に対応する分割透かし入り画像データ(周波数空間の変換係数)から透かしデータを読み出す読出手段を備えている。
画像処理装置1は、このようにして、透かしデータamを読み出した後、mを1だけインクリメントし(ステップ110)、更に、kを1だけインクリメントして(ステップ115)、ステップ25に移行する。
後のステップは、図10と同様である。
以上によって、画像データに埋め込まれた透かしデータam(m=0、1、・・・)を読み出すことができる。
なお、上の例では、画像処理装置1は、透かし入り画像データの任意形状領域をウェーブレット変換して、当該領域から透かしデータを読み出したが、透かしデータが埋め込まれた任意形状領域を一部に含む画像データ全体をウェーブレット変換するように構成することもできる。
この場合、画像処理装置1は、分割形状マップを用いることにより周波数空間での任意形状領域を認識して、当該領域から透かしデータを読み出す。
この場合、画像処理装置1は、透かしデータが埋め込まれた任意形状領域を一部に含む透かし入り画像データの全体に対して分割された分割透かし入り画像データを取得し、当該分割透かし入り画像データにおいて、分割領域データ(分割形状マップ)で規定される領域から透かしデータを読み出す。
次に、透かしデータが埋め込まれた画像データの利用例について説明する。
図12(a)は、携帯電話103で透かしデータの埋め込まれたポスタ102を撮影し、携帯電話103をサービスサーバ104が開設するウェブサイトに接続させる情報処理システムの一例を示した図である。以下、図の括弧に示した番号に従って説明する。
(1)まず、画像処理装置1は、透かしデータとサービスサーバ104のウェブサイトのURL(Uniform Resource Locators)を対応付けて記憶しておく。
そして、画像処理装置1は、任意形状の画像データに透かしデータを埋め込み、透かし入り画像データを店舗101の端末に送信する。
店舗101は、端末で透かし入り画像データを受信し、これを用いて任意形状画像106を印刷する。そして、店舗101は、任意形状画像106をポスタ102に貼り付け、ポスタ102を完成させる。
(2)ユーザは、店舗101を訪れカメラ機能、及びネットワーク接続機能を有する携帯電話103でポスタ102を撮影する。
(3)携帯電話103には、透かし読出プログラムがインストールしてあり、また、nの初期値や形状マップなど、透かしデータの読出に必要なデータを記憶している。
そして、携帯電話103は、形状マップを用いてポスタ102から任意形状画像106の領域を抽出し、これをウェーブレット変換して透かしデータを読み出す。
そして、携帯電話103は、読み出した透かしデータを画像処理装置1に送信する。
(4)画像処理装置1は、携帯電話103から透かしデータを受信し、これに対応付けられているURLを検索して携帯電話103に送信する。
(5)携帯電話103は、画像処理装置1からURLを受信し、これを用いてサービスサーバ104のウェブサイトに接続する。
このようにして、本情報処理システムでは、透かし入り画像データを用いてユーザを所定のウェブサイトに誘導することができる。
このシステムにより、例えば、食品会社が画像処理装置1の事業者にURLとポスタ102に印刷する画像を提供し、店舗101でのポスタ102の掲示を依頼する。
そして、食品会社は、携帯電話103を接続してきたユーザに対し、自社が運営するサービスサーバ104のウェブサイトにてユーザに自社製品の広告やキャンペーンなどを提供することができる。
次に、ウェーブレット変換の特性を利用したサービス提供例について説明する。
ウェーブレット変換では、画像データを周波数帯域に分割するが、合成する周波数帯域を選択することにより画像の解像度を調節することができる。
例えば、図9に示した変換係数では、主な信号成分は、最も低周波側のf30に含まれており、f30を印刷すると、解像度の低い画像が印刷される。
そして、f30に、f31、f32、f33を合成して印刷すると、解像度が向上する。
更に、f21、f22、f23を合成して印刷すると、より解像度が向上する。
このように、ウェーブレット変換では、低周波側の変換係数に高周波側の変換係数を合成していくごとに解像度が向上する。
そこで、図12(b)の画像処理装置1は、画像データに透かしデータを埋め込んだ後、これを逆ウェーブレット変換せずに、周波数帯域に分割された状態で画像データを保持する。
例えば、画像データは分割レベル3の周波数帯域に分割され、透かしデータが分割レベル2の周波数帯域に埋め込まれているとする。
そして、店舗101aが、低解像度の画像でよい旨を画像処理装置1に通知する。すると、画像処理装置1は、分割レベル3、2の変換係数を店舗101aの端末に送信する。
店舗101aの端末は、画像処理装置1から変換係数を受信して逆ウェーブレット変換し、低解像度の透かし入り画像データを復元する。そして、低解像度のポスタ102aを印刷する。
また、店舗101bは高解像度の画像を必要とし、その旨を画像処理装置1に通知する。すると、画像処理装置1は、分割レベル3、2、1の変換係数を店舗101bの端末に送信する。
店舗101bの端末は、画像処理装置1から変換係数を受信して逆ウェーブレット変換し、高解像度の透かし入り画像データを復元する。そして、高解像度のポスタ102bを印刷する。
この例では、逆ウェーブレット変換を店舗の端末で行ったが、画像処理装置1が逆ウェーブレット変換によって必要な解像度の透かし入り画像データを生成し、店舗101aや店舗101bに送信するように構成してもよい。
このように、必要とされる解像度に応じてデータを送信するように構成すると、データ通信量や通信時間を節約することができ、コストの低減を図ることができる。
ただし、透かし入り画像が印刷されるように、画像処理装置1は、透かしデータが埋め込まれた周波数帯域以上のデータを送信する。
また、透かし入り画像は、オフセット印刷などで印刷できるほか、各種プリンタ(サーマルプリンタ、インクジェットプリンタ、電子写真方式)から出力することもできる。
更に、透かし入り画像をスキャナーで読み込んで、これをネットワーク経由で送信したり、印刷したりできるほか、透かし入り画像を複写機で複写して複製することも可能である。
また、デジタルサイネージによって透かし入り画像を表示することも可能である。ここで、デジタルサイネージとは、デジタル通信を用いた広告媒体によって、広告を表示する技術であって、例えば、平面ディスプレイやプロジェクタなどで広告用の映像を表示したりし、従来の印刷ポスターなどに代わる広告技術として注目されている。
更に、印刷と印字の混在する媒体によって透かしデータをユーザに提供することも可能である。この場合、例えば、透かしデータを埋め込んだ店のロゴマークを印刷した用紙をレシート用紙として用意し、当該用紙上に清算内容などをサーマルプリンタで印字してレシートを出力するように構成することができる。このように、印刷された画像に電子透かしを埋め込むように構成するほか、電子透かしが埋め込まれた画像を印字によって形成するように構成することもできる。
以上に説明した本実施の形態により、次のような効果を得ることができる。
(1)画像の任意形状領域にウェーブレット変換によって透かしデータを埋め込むことができる。
(2)画像の任意形状領域にウェーブレット変換によって埋め込まれた透かしデータを読み出すことができる。
(3)形状マップを用いることにより、画像データの周波数空間において透かしデータを埋め込む任意形状領域を規定することができる。
(4)形状マップを用いることにより、画像データの周波数空間において透かしデータが埋め込まれた任意形状領域を規定することができる。
(5)分割形状マップを確認することにより、画像データの周波数空間において任意形状領域の内側か境界かを判断することができ、任意形状の内側を優先して透かしデータを埋め込むことができる。
(6)透かしデータを埋め込む周波数帯域を設定することができ、読み取りエラーの発生しやすい高域側の周波数帯域を用いずに透かしデータを埋め込むことができる。
(7)埋め込み対象となる画像の視認性を損なわずに、透かしデータの埋め込み及び抽出を行うことが可能になる。
(8)画像を矩形ブロック形状に分割する必要がないため、画像本来の意匠性を保つと共に、周波数空間に透かしデータを埋め込むため、質感を保つことができ、画像のデザイン性を損なわずに済む。
(9)任意形状の画像に透かしデータを埋め込むと共に、高周波帯域を避けて透かしデータを埋め込むなどし、高精度の透かしデータ検出を行うことができる。
画像処理装置のハードウェア的な構成を説明するための図である。 形状マップやこれに対応する画像の一例を示した図である。 透かしデータの埋め込み処理や読出処理を説明するための図である。 任意形状領域をウェーブレット変換する方法を説明するための図である。 オクターブ分割を説明するための図である。 画像のオクターブ分割例について説明するための図である。 形状マップのオクターブ分割例について説明するための図である。 任意形状領域を逆ウェーブレット変換する方法を説明するための図である。 透かしデータを埋め込むのに好ましい分割レベルを説明するための図である。 透かし埋込処理を説明するためのフローチャートである。 透かし読出処理を説明するためのフローチャートである。 透かしデータが埋め込まれた画像データの利用例を説明するための図である。
符号の説明
1 画像処理装置
2 CPU
3 入力装置
4 表示装置
5 印刷装置
6 通信制御装置
7 RAM
8 記憶装置
9 記憶媒体駆動装置
10 入出力I/F
11 プログラム格納部
12 データ格納部
13 ROM
21 SA−DWT処理部
22 透かしデータ埋込部
23 SA−IDWT処理部
24 SA−DWT処理部
25 透かしデータ読出部
50 画像
51 任意形状領域
52 任意形状外領域
60 形状マップ
61 任意形状領域
62 任意形状外領域
101 店舗
102 ポスタ
103 携帯電話
104 サービスサーバ
106 任意形状画像

Claims (14)

  1. 透かしデータを埋め込む対象となる画像データをウェーブレット変換によって周波数帯域に分割した分割画像データを取得する分割画像データ取得手段と、
    前記画像データに透かしデータを埋め込む領域を規定する領域データを周波数帯域に分割した分割領域データを取得する分割領域データ取得手段と、
    前記取得した分割領域データで規定される領域に対応する前記分割画像データに透かしデータを埋め込む埋込手段と、
    を具備したことを特徴とする画像処理装置。
  2. 前記分割画像データ取得手段は、前記画像データの前記領域データで規定される領域に対して分割された前記分割画像データを取得し、
    前記埋込手段は、前記取得した分割画像データに透かしデータを埋め込むことを特徴とする請求項1に記載の画像処理装置。
  3. 前記分割画像データ取得手段は、前記画像データの全体に対して分割された分割画像データを取得し、
    前記埋込手段は、前記分割画像データにおいて、前記取得した分割領域データで規定される領域に透かしデータを埋め込むことを特徴とする請求項1に記載の画像処理装置。
  4. 前記取得した分割領域データを用いて、前記分割画像データにおいて透かしデータを埋め込む領域の境界を特定する境界特定手段を具備し、
    前記埋込手段は、前記特定した境界よりも内側を優先して透かしデータを埋め込むことを特徴とする請求項1、請求項2、又は請求項3に記載の画像処理装置。
  5. 前記分割領域データ取得手段は、前記領域データを周波数帯域に分割することにより前記分割領域データを取得することを特徴とする請求項1から請求項4までのうちの何れか1の請求項に記載の画像処理装置。
  6. 前記埋込手段は、所定の周波数帯域に前記透かしデータを埋め込むことを特徴とする請求項1から請求項5までのうちの何れか1の請求項に記載の画像処理装置。
  7. 前記埋込手段によって透かしデータが埋め込まれた分割画像データを合成して透かし入り画像データを生成する透かし入り画像データ生成手段を具備したことを特徴とする請求項1から請求項6までのうちの何れか1の請求項に記載の画像処理装置。
  8. 透かしデータが埋め込まれた透かし入り画像データを取得する透かし入り画像データ取得手段と、
    前記取得した透かし入り画像データをウェーブレット変換によって周波数帯域に分割して分割透かし入り画像データを取得する分割透かし入り画像データ取得手段と、
    前記透かし入り画像データで透かしデータが埋め込まれた領域を規定する領域データを周波数帯域に分割した分割領域データを取得する分割領域データ取得手段と、
    前記取得した分割領域データで規定される領域に対応する前記分割透かし入り画像データから透かしデータを読み出す読出手段と、
    を具備したことを特徴とする画像処理装置。
  9. 前記分割透かし入り画像データ取得手段は、前記取得した透かし入り画像データの前記領域データで規定される領域に対して分割された分割透かし入り画像データを取得し、
    前記読出手段は、前記取得した分割透かし入り画像データから透かしデータを読み出すことを特徴とする請求項8に記載の画像処理装置。
  10. 前記分割透かし入り画像データ取得手段は、前記透かし入り画像データの全体に対して分割された分割透かし入り画像データを取得し、
    前記読出手段は、前記分割透かし入り画像データにおいて、前記取得した分割領域データで規定される領域から透かしデータを読み出すことを特徴とする請求項8に記載の画像処理装置。
  11. 前記取得した分割領域データを用いて、前記分割透かし入り画像データにおいて透かしデータが埋め込まれた領域の境界を特定する境界特定手段を具備し、
    前記読出手段は、前記特定した境界の内側から透かしデータを読み出すことを特徴とする請求項8、請求項9、又は請求項10に記載の画像処理装置。
  12. 前記分割領域データ取得手段は、前記領域データを周波数帯域に分割することにより前記分割領域データを取得することを特徴とする請求項8から請求項11までのうちの何れか1の請求項に記載の画像処理装置。
  13. 透かしデータを埋め込む対象となる画像データを周波数帯域に分割した分割画像データを取得する分割画像データ取得機能と、
    前記画像データで透かしデータを埋め込む領域を規定する領域データを周波数帯域に分割した分割領域データを取得する分割領域データ取得機能と、
    前記取得した分割領域データで規定される領域に対応する前記分割画像データに透かしデータを埋め込む埋込機能と、
    をコンピュータで実現する画像処理プログラム。
  14. 透かしデータが埋め込まれた透かし入り画像データを取得する透かし入り画像データ取得機能と、
    前記取得した透かし入り画像データを周波数帯域に分割して分割透かし入り画像データを取得する分割透かし入り画像データ取得機能と、
    前記透かし入り画像データで透かしデータが埋め込まれた領域を規定する領域データを周波数帯域に分割した分割領域データを取得する分割領域データ取得機能と、
    前記取得した分割領域データで規定される領域に対応する前記分割透かし入り画像データから透かしデータを読み出す読出機能と、
    をコンピュータで実現する画像処理プログラム。
JP2008277304A 2008-10-28 2008-10-28 画像処理装置、及び画像処理プログラム Expired - Fee Related JP5046047B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008277304A JP5046047B2 (ja) 2008-10-28 2008-10-28 画像処理装置、及び画像処理プログラム
US12/589,595 US20100119105A1 (en) 2008-10-28 2009-10-26 Image processing device and image processing progam

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008277304A JP5046047B2 (ja) 2008-10-28 2008-10-28 画像処理装置、及び画像処理プログラム

Publications (2)

Publication Number Publication Date
JP2010109486A JP2010109486A (ja) 2010-05-13
JP5046047B2 true JP5046047B2 (ja) 2012-10-10

Family

ID=42165242

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008277304A Expired - Fee Related JP5046047B2 (ja) 2008-10-28 2008-10-28 画像処理装置、及び画像処理プログラム

Country Status (2)

Country Link
US (1) US20100119105A1 (ja)
JP (1) JP5046047B2 (ja)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7707224B2 (en) 2006-11-03 2010-04-27 Google Inc. Blocking of unlicensed audio content in video files on a video hosting website
AU2007316477A1 (en) * 2006-11-03 2008-05-15 Google Inc. Content management system
WO2008137880A2 (en) * 2007-05-03 2008-11-13 Google Inc. Monetization of digital content contributions
US8094872B1 (en) * 2007-05-09 2012-01-10 Google Inc. Three-dimensional wavelet based video fingerprinting
US8611422B1 (en) 2007-06-19 2013-12-17 Google Inc. Endpoint based video fingerprinting
CN102129660B (zh) * 2011-03-24 2012-07-18 浙江工商大学 一种基于栅格地图特征的小波域零水印方法
US9451162B2 (en) 2013-08-21 2016-09-20 Jaunt Inc. Camera array including camera modules
US11019258B2 (en) 2013-08-21 2021-05-25 Verizon Patent And Licensing Inc. Aggregating images and audio data to generate content
CN103942745B (zh) * 2014-04-02 2017-06-13 深圳大学 图像添加水印的方法及***
US9911454B2 (en) 2014-05-29 2018-03-06 Jaunt Inc. Camera array including camera modules
US10368011B2 (en) 2014-07-25 2019-07-30 Jaunt Inc. Camera array removing lens distortion
US11108971B2 (en) 2014-07-25 2021-08-31 Verzon Patent and Licensing Ine. Camera array removing lens distortion
US10186301B1 (en) * 2014-07-28 2019-01-22 Jaunt Inc. Camera array including camera modules
US10701426B1 (en) 2014-07-28 2020-06-30 Verizon Patent And Licensing Inc. Virtual reality system including social graph
US10440398B2 (en) 2014-07-28 2019-10-08 Jaunt, Inc. Probabilistic model to compress images for three-dimensional video
US9363569B1 (en) 2014-07-28 2016-06-07 Jaunt Inc. Virtual reality system including social graph
US9774887B1 (en) 2016-09-19 2017-09-26 Jaunt Inc. Behavioral directional encoding of three-dimensional video
US10681341B2 (en) 2016-09-19 2020-06-09 Verizon Patent And Licensing Inc. Using a sphere to reorient a location of a user in a three-dimensional virtual reality video
US11032536B2 (en) 2016-09-19 2021-06-08 Verizon Patent And Licensing Inc. Generating a three-dimensional preview from a two-dimensional selectable icon of a three-dimensional reality video
US11032535B2 (en) 2016-09-19 2021-06-08 Verizon Patent And Licensing Inc. Generating a three-dimensional preview of a three-dimensional video
CN107622469B (zh) * 2017-07-21 2021-02-19 南京信息工程大学 基于四元数小波变换的图像无载体信息隐藏方法
US10694167B1 (en) 2018-12-12 2020-06-23 Verizon Patent And Licensing Inc. Camera array including camera modules
CN111062853A (zh) * 2019-12-20 2020-04-24 中国科学院自动化研究所 自适应图像水印嵌入方法及***、提取方法及***
CN111192190B (zh) * 2019-12-31 2023-05-12 北京金山云网络技术有限公司 消除图像水印的方法、装置及电子设备
CN115564634B (zh) * 2022-12-05 2023-05-02 杭州海康威视数字技术股份有限公司 视频对抗水印嵌入方法、装置、电子设备及存储介质

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3213222B2 (ja) * 1995-11-02 2001-10-02 株式会社リコー 符号化方法
JP4026933B2 (ja) * 1998-06-24 2007-12-26 キヤノン株式会社 情報処理装置及び方法並びに記録媒体
US6501861B1 (en) * 1998-09-17 2002-12-31 Samsung Electronics Co., Ltd. Scalable coding/decoding methods and apparatus for producing still image using wavelet transformation
EP1022895A3 (en) * 1999-01-22 2001-04-04 Matsushita Electric Industrial Co., Ltd. Apparatus for and method of embedding and extracting digital information, and medium having program for carrying out the method recorded thereon
JP2002064709A (ja) * 2000-06-06 2002-02-28 Canon Inc 画像処理装置及びその方法とそのコンピュータプログラム及び記憶媒体
JP2003134330A (ja) * 2001-10-30 2003-05-09 Sony Corp 電子透かし埋め込み処理装置、および電子透かし埋め込み処理方法、並びにコンピュータ・プログラム
KR100456629B1 (ko) * 2001-11-20 2004-11-10 한국전자통신연구원 웨이블릿 기반에서 디지털 워터마크 삽입/추출장치 및 방법
JP2003198830A (ja) * 2001-12-26 2003-07-11 Konica Corp 電子透かし挿入方法、電子透かし挿入装置、電子透かし挿入プログラム及び電子透かし挿入プログラムを記憶したプログラム記憶媒体
JP3919613B2 (ja) * 2002-06-28 2007-05-30 キヤノン株式会社 画像処理装置及び方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
KR100523978B1 (ko) * 2002-09-06 2005-10-27 한국전자통신연구원 웨이블릿 기반의 디지털 워터마크 삽입/추출장치 및 방법
JP2004221950A (ja) * 2003-01-15 2004-08-05 Ricoh Co Ltd 画像処理装置、プログラムおよび記憶媒体
KR100624751B1 (ko) * 2003-04-25 2006-09-19 (주)마크텍 영상에 워터마크를 삽입하는 방법 및 상기 방법을 이용한디지털 비디오 저장장치
JP4144469B2 (ja) * 2003-07-25 2008-09-03 沖電気工業株式会社 電子透かし検証装置および電子透かし検証方法
KR100506661B1 (ko) * 2003-10-02 2005-08-10 한국전자통신연구원 웨이블릿 최저주파수 대역에서의 디지털 워터마크 삽입 및추출 방법
KR20050078767A (ko) * 2004-02-02 2005-08-08 삼성전자주식회사 디지털 영상 워터마킹 장치 및 그 방법
JP2006013651A (ja) * 2004-06-23 2006-01-12 Sanyo Electric Co Ltd 特徴点検出装置、特徴点検出方法、及び、特徴点検出プログラム
US7529417B2 (en) * 2004-07-09 2009-05-05 Canon Kabushiki Kaisha Apparatus, method and storage medium for image encoding/decoding using shape-based coefficient interpolation
JP4603446B2 (ja) * 2004-09-29 2010-12-22 株式会社リコー 画像処理装置、画像処理方法および画像処理プログラム
JP4098313B2 (ja) * 2005-06-02 2008-06-11 富士通株式会社 画像処理装置
JP4836052B2 (ja) * 2007-02-21 2011-12-14 富士ゼロックス株式会社 画像処理装置、画像処理システムおよび画像処理プログラム
JP2009088614A (ja) * 2007-09-27 2009-04-23 Toshiba Corp 画像処理方法および画像処理装置
KR100898329B1 (ko) * 2007-10-05 2009-05-20 한국과학기술원 정수 웨이블릿 변환에 기초한 워터 마크 삽입 방법

Also Published As

Publication number Publication date
JP2010109486A (ja) 2010-05-13
US20100119105A1 (en) 2010-05-13

Similar Documents

Publication Publication Date Title
JP5046047B2 (ja) 画像処理装置、及び画像処理プログラム
TWI542223B (zh) 利用全彩影像之雜訊減低彩色影像
JP4742175B2 (ja) 透かし情報埋込装置、透かし情報処理システム、透かし情報埋込方法、及びプログラム
US20030179935A1 (en) Image processing apparatus, image processing method, image processing program, and computer-readable record medium storing image processing program
JP5795724B2 (ja) 注釈付き文書の画像からクリーンな文書を再構築するためのシステムと方法
JP2000115539A (ja) 画像処理方法、画像処理装置及び記録媒体
JP4631900B2 (ja) 情報処理装置、情報処理システム、および情報処理プログラム
JP2008278232A (ja) 画像処理装置および画像処理プログラム
JP4882680B2 (ja) 画像処理システムおよび画像処理プログラム
JP5181350B2 (ja) 画像処理装置、及び画像処理プログラム
EP2600604B1 (en) Reducing moiré patterns
US8938088B2 (en) Method and apparatus for classifying sections of an image into a plurality of embedded areas
JP4922965B2 (ja) 電子透かし生成装置、電子透かし生成方法、電子透かし生成プログラム、電子透かし検出装置、及び電子透かし検出プログラム
JP2004193957A (ja) 画像処理装置、画像処理方法、画像処理プログラムおよび画像記録装置
JP2000115526A (ja) 画像処理装置およびエッジ処理方法
WO1999053441A1 (fr) Dispositif et procede d'interpolation de donnees d'images, et support sur lequel le programme d'interpolation de donnees d'images est enregistre
JP2006237858A (ja) 画像処理装置、画像処理方法、その方法をコンピュータに実行させるプログラム、および記録媒体
JP5202263B2 (ja) 画像処理装置、画像処理方法、及びコンピュータプログラム
JP2007312049A (ja) 情報埋込処理システム、付加情報埋込装置、付加情報復元装置
JP2000312294A (ja) 画像処理装置
JP6157234B2 (ja) 画像処理装置、画像処理方法およびプログラム
JP4526867B2 (ja) 電子透かし埋込装置、及び電子透かし読出装置
JP4337386B2 (ja) 画像処理方法、画像処理装置、画像処理プログラム及び画像記録装置
JP2004215163A (ja) 画像補間装置、画像補間方法および画像補間プログラム
JP2007087066A (ja) 印刷情報処理装置、印刷情報処理方法、及び印刷情報処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110803

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120529

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120614

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20120704

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120704

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150727

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5046047

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees