JP4128461B2 - Image processing apparatus, image processing program, and storage medium - Google Patents
Image processing apparatus, image processing program, and storage medium Download PDFInfo
- Publication number
- JP4128461B2 JP4128461B2 JP2003018247A JP2003018247A JP4128461B2 JP 4128461 B2 JP4128461 B2 JP 4128461B2 JP 2003018247 A JP2003018247 A JP 2003018247A JP 2003018247 A JP2003018247 A JP 2003018247A JP 4128461 B2 JP4128461 B2 JP 4128461B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- code
- image
- rectangular area
- convolutional
- 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
Links
Images
Landscapes
- Television Systems (AREA)
- Editing Of Facsimile Originals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Image Processing (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、電子透かしを扱う画像処理装置、画像処理用プログラム及び記憶媒体に関する。
【0002】
【従来の技術】
デジタル画像等のデジタル情報(デジタルコンテンツ)は、コンピュータ等によって、情報を劣化させることなく、簡単にコピーすることができる。近年では、デジタル画像技術の発達に伴い、デジタルカメラ等によって取得されたデジタル画像等を、証拠写真として使用することも可能になってきている。このようなデジタルコンテンツには、著作権等が付され、許可無くコピーしたり、コピーしたデジタルコンテンツを再利用したりすることが禁じられているものがある。
【0003】
ところで、デジタルコンテンツは、簡単な修飾処理等の操作を施して書換え等を行なうことによって、容易に改ざんすることができる。このため、デジタルコンテンツは、不正にコピーされて勝手に再利用されたり、一部が改ざんされて証拠写真に使用出来ないようにされたりすることがある。
【0004】
この対策として、デジタル画像等のデジタルコンテンツ中に該デジタルコンテンツを普通に再生した場合には視覚できない情報を付加する、いわゆる、電子透かしやデータハイディング等と呼ばれる方法によって、デジタルコンテンツの不正利用を防止するようにした技術がある。これにより、デジタルコンテンツが不正に利用されているか否かを、該デジタルコンテンツ中に埋め込まれた電子透かしによって判断することができる。
【0005】
電子透かしをデジタルコンテンツに埋め込む用途には、次のようなものがある。
A.著作権情報の記録
B.違法コピー者情報の追跡
C.IPアドレスの履歴記録
D.違法コピーの防止:不可視・高耐性型
E.改ざん防止への応用:不可視・低耐性型
F.認証
G.秘密通信
H.所有権者表示のためにデジタルコンテンツの注釈やラベルを埋め込む:可視・不可逆型
I.透かし除去可能化:可視・可逆型……コンテンツ配布
【0006】
このようにデジタルコンテンツ中に電子透かしを埋め込む目的には各種あるが、このような電子透かしに関して各種の目的を網羅することが難しいことも知られている。例えば、電子透かしを用いて著作権保護を強化したい場合には、埋め込む電子透かしの耐性を強くし、当該デジタルコンテンツに圧縮、回転等の多少の変更が加えられてもその電子透かしが破壊されないようにする必要がある。一方、電子透かしを用いてデジタルコンテンツに対する改ざんを検出したい場合には、当該電子透かしの耐性を弱くして多少の変更によっても電子透かしが壊れるようにする必要があり、著作権保護用の場合とはトレードオフの関係にある。
【0007】
このような事情を考慮した文献や提案例も各種ある。
【0008】
例えば、インデクス用を目的として、耐性を維持しつつ、電子透かし埋め込み後の画質を損なわないように、ウェーブレット係数のサブバンドHL,LH或いはHHの係数に埋め込むようにしたものがある(例えば、非特許文献1,2参照)。
【0009】
また、ウェーブレット変換時のウェーブレット係数に電子透かしを埋め込み、電子透かしの埋め込み自由度を向上させることで、電子透かしの高耐性・画質の低劣化を実現するようにした提案もある(例えば、特許文献1参照)。
【0010】
また、ウェーブレット変換と誤り訂正符号とを組合せることにより、電子透かしの耐性を可変させるようにした提案例もある(例えば、特許文献2参照)。この場合、電子透かしの抽出処理系では、単純多数決方式を用いている。
【0011】
さらには、ウェーブレット係数値に単調増加に変動する強度で電子透かしを埋め込むようにした提案例もある(例えば、特許文献3参照)。
【0012】
【特許文献1】
特開2000−13587公報
【特許文献2】
特開2000−106624公報
【特許文献3】
特開2000−196856公報
【非特許文献1】
The 22nd Symposium on Information Theory and Its Applications(SITA99) Yuzawa,Niigata,Japan,Nov.30-Dec.3,1999“ウェーブレット変換の特性を利用した画像へのインデクス情報の埋め込み方法”岩田基、汐崎陽
【非特許文献2】
The 23nd Symposium on Information Theory and Its Applications(SITA2000) Aso,Kumamoto,Japan,Oct.10-13,2000“ウェーブレット係数の大小関係を利用してインデクス情報を埋め込む電子透かし法”岩田基、汐崎陽
【0013】
【発明が解決しようとする課題】
このように各種文献、提案例があるが、何れも完全なものではない。
【0014】
まず、非特許文献1,2による場合、例えばデジタルカメラにおけるインデクス情報の埋め込みに特化し、主に画質劣化の低減を考慮しているものであり、デジタルコンテンツの改ざん検出用〜著作権保護用といった幅広い目的に適用するには不十分である。
【0015】
特許文献1の場合、ウェーブレット変換時のウェーブレット係数に電子透かしを埋め込むわけであるが、画像データの自動分析等によって埋め込み箇所を自動設定するのではなく、外部からのパラメータ指定による閾値で判断するものであり、自動処理化の点で不十分な方法である。
【0016】
特許文献2の場合、ウェーブレット変換の最低域以外の係数の中で絶対値の大きい方の係数値に電子透かしを埋め込むとともに、1bit誤り訂正符号方式を組合せることにより、著作権保護と改ざん発見用との両方の機能を実現できる、とされているものであるが、著作権保護用に要求される画質の劣化の程度、改ざん検出用に要求される電子透かしの情報量の点で、必ずしも十分なものではない。
【0017】
さらに、特許文献3の場合には、知覚的に重要でない成分から順に電子透かしを埋め込むことにより、電子透かしを埋め込んでも画質を損ないにくいメリットがあるものの、電子透かしの情報量を増やす目的においては知覚的に重要な成分にも電子透かしを埋め込むので、画質を低下させない程度が必ずしも十分ではない。
【0018】
本発明の目的は、JPEG2000アルゴリズムによる高圧縮処理をベースとしつつ、改ざん発見用ないしは著作権保護用といった幅広い各々の用途・目的に適した耐性の電子透かしを埋め込み、復元できるようにすることである。
【0019】
【課題を解決するための手段】
請求項1記載の発明の画像処理装置は、画像データを複数に分割した矩形領域毎に、ウェーブレット変換係数への変換、前記変換係数の量子化、及び量子化された前記変換係数の可逆圧縮符号化の過程を含む手順で、前記画像データを符号データに圧縮符号化する画像処理装置において、電子透かしとして量子化された前記変換係数に埋め込まれるたたみ込み符号を、分割された矩形領域毎に前記画像データに関して統計計算により算出するたたみ込み符号算出手段と、前記たたみ込み符号算出手段により算出された前記たたみ込み符号のデータを、たたみ込み数値の値が1増える毎にその意味を表すビット情報が1ビットずつ変化する表現形態とするファジー処理を施すファジー処理手段と、前記ファジー処理手段によりファジー処理された前記たたみ込み符号を、量子化された前記変換係数に電子透かしとして埋め込む埋め込み手段とを備え、前記ファジー処理手段は、前記たたみ込み符号のデータを表現するビット数を可変設定自在であることを特徴とする。
【0020】
従って、2次元ウェーブレット変換係数への電子透かしの埋め込み、耐性調整が可能なたたみ込み符号−ビタビ復号の組合せに加えて、電子透かしとなるたたみ込み符号のデータ耐性のファジー化を組合せることにより、電子透かし埋め込みによる画質の劣化を回避しており、電子透かしデータの耐性を高めるために画質を変換させるのに代えて電子透かしとなるたたみ込み符号の統計処理値に基づいているので、画質劣化が少ない上に電子透かしの情報量の増大を図ることもでき、用途に応じた電子透かしとすることができる。また、電子透かしとしてのデータ耐性をファジー化する処理が、たたみ込み数値の値が1増える毎にその意味を表すビット情報が1ビットずつ変化する表現形態とする処理であるので、ビット情報の変化を滑らかにすることができ、例えば、統計計算値が非可逆圧縮により低下することを補完することが可能となる。また、ファジー処理によりたたみ込み符号のデータを表現するビット数が、例えば2ビット、3ビットの如く、可変設定自在であるので、電子透かしとしてのデータをファジー化する処理において改ざん発見レベルの調整が可能となる。
【0029】
請求項2記載の発明は、請求項1記載の画像処理装置において、分割された或る矩形領域の統計計算値に基づき算出された電子透かし用のたたみ込み符号を、当該矩形領域とは分離された別の矩形領域に復元可能な対応付けをもって割り当てる割り当て領域変更手段を備える。
【0030】
従って、電子透かし用のたたみ込み符号を取得するための供与体となる矩形領域と、当該たたみ込み符号が埋め込まれる受容体となる矩形領域とを同一とはせず分離することにより、何れの矩形領域のデータが壊されても辻褄が合わなくなるので、改ざんされたことを発見できることとなり、改ざん発見の感度を向上させることができる。
【0031】
請求項3記載の発明の画像処理装置は、請求項1又は2記載の画像処理装置においてさらに、前記符号データを復号化、逆量子化、ウェーブレット逆変換の過程を含む逆手順で画像データに伸長する伸長手段と、量子化された前記変換係数に埋め込まれた前記たたみ込み符号データを、ビタビ復号データとして前記符号データ中から抽出するビタビ復号手段と、復号された画像データの複数に分割した矩形領域毎に当該画像データに関して統計計算されたデータとその矩形領域と対応付けされた矩形領域から抽出されたビタビ復号データとを照合してデータ改ざんの有無を検証する照合手段とを備えることを特徴とする。
【0032】
従って、請求項1又は2記載の発明により埋め込まれた電子透かしに対して適正に復号、検証処理を行わせることができる。
【0049】
【発明の実施の形態】
本発明の一実施の形態を図面に基づいて説明する。
【0050】
[JPEG2000アルゴリズムの概要について]
本実施の形態は、JPEG2000アルゴリズムを利用するものであるが、JPEG2000アルゴリズム自体は各種文献、公報等により周知であるので、詳細は省略し、その概要について説明する。図1は、JPEG2000アルゴリズムの概要を説明するためのブロック図である。JPEG2000のアルゴリズムは、色空間変換・逆変換部110、2次元ウェーブレット変換・逆変換部111、量子化・逆量子化部112、エントロピー符号化・復号化部113、タグ処理部114で構成されている。JPEG2000の特徴の一つは、前述したように高圧縮領域における画質が良いという長所を持つ2次元離散ウェーブレット変換(DWT:Discrete Wavelet Transform)を用いている点である。また、もう一つの大きな特徴は、最終段に符号形成を行うために、タグ処理部114と呼ばれる機能ブロックが追加されており、コードストリームの生成や解釈が行われる。そして、コードストリームによって、JPEG2000は様々な便利な機能を実現できるようになった。例えば、図2は、デコンポジションレベル(ウェーブレット分割レベル+1)が3の場合の、各デコンポジションレベルにおけるサブバンドの一例を示す図で、図2に示したブロックベースでのDWTにおけるオクターブ分割の階層に対応した任意の階層で、静止画像の圧縮伸長処理を停止させることができる。
【0051】
また、原画像の入出力部分には、色空間変換・逆変換部110が用意されることが多い。例えば、原色系のR(赤)/G(緑)/B(青)の各コンポーネントからなるRGB表色系や、補色系のY(黄)/M(マゼンタ)/C(シアン)の各コンポーネントからなるYMC表色系から、YCrCbあるいはYUV表色系への変換又は逆の変換を行う部分がこれに相当する。
【0052】
以下、JPEG2000アルゴリズム、特にウェーブレット変換について、説明する。
【0053】
符号化時には、各コンポーネントの各タイルのデータが、色空間変換部110に入力され、色空間変換を施された後、2次元ウェーブレット変換部111で2次元ウェーブレット変換(順変換)が適用されて周波数帯に空間分割される。
【0054】
図2には、デコンポジションレベルが3の場合の、各デコンポジションレベルにおけるサブバンドを示している。即ち、原画像のタイル分割によって得られたタイル原画像(0LL)(デコンポジションレベル0(符号120))に対して、2次元ウェーブレット変換を施し、デコンポジションレベル1(符号121)に示すサブバンド(1LL,1HL,1LH,1HH)を分離する。そして引き続き、この階層における低周波成分1LLに対して、2次元ウェーブレット変換を施し、デコンポジションレベル2(符号122)に示すサブバンド(2LL,2HL,2LH,2HH)を分離する。順次同様に、低周波成分2LLに対しても、2次元ウェーブレット変換を施し、デコンポジションレベル3(符号123)に示すサブバンド(3LL,3HL,3LH,3HH)を分離する。
【0055】
さらに、図2では、各デコンポジションレベルにおいて符号化の対象となるサブバンドを、グレーで表してある。例えば、デコンポジションレベルを3とした時、グレーで示したサブバンド(3HL,3LH,3HH,2HL,2LH,2HH,1HL,1LH,1HH)が符号化対象となり、3LLサブバンドは符号化されない。
【0056】
次いで、指定した符号化の順番で符号化の対象となるビットが定められ、量子化部112で対象ビット周辺のビットからコンテキストが生成される。量子化の処理が終わったウェーブレット係数は、個々のサブバンド毎に、プレシンクトと呼ばれる重複のない矩形に分割される。ウェーブレット変換後の係数値は、そのまま量子化し符号化することも可能であるが、JPEG2000では符号化効率を上げるために、係数値を「ビットプレーン」単位に分解し、画素或いはコード・ブロック毎に「ビットプレーン」に順位付けを行うことができる。
【0057】
エントロピー符号化部113では、コンテキストと対象ビットから確率推定によって、各コンポーネントのタイルに対する符号化を行う。こうして、原画像の全てのコンポーネントについて、タイル単位で符号化処理が行われる。最後にタグ処理部114は、エントロピコーダ部からの全符号化データを1本のコードストリームに結合するとともに、それにタグを付加する処理を行う。図3に、コードストリームの構造を簡単に示している。このようなコードストリームの先頭と各タイルを構成する部分タイルの先頭には、ヘッダと呼ばれるタグ情報が付加され、その後に、各タイルの符号化データが続く。そして、コードストリームの終端には、再びタグが置かれる。
【0058】
一方、復号化時には、符号化時とは逆に、各コンポーネントの各タイルのコードストリームから画像データを生成する。この場合、タグ処理部114は、外部より入力したコードストリームに付加されたタグ情報を解釈し、コードストリームを各コンポーネントの各タイルのコードストリームに分解し、その各コンポーネントの各タイルのコードストリーム毎に復号化処理が行われる。コードストリーム内のタグ情報に基づく順番で復号化の対象となるビットの位置が定められるとともに、逆量子化部112で、その対象ビット位置の周辺ビット(既に復号化を終えている)の並びからコンテキストが生成される。エントロピー復号化部113で、このコンテキストとコードストリームから確率推定によって復号化を行い対象ビットを生成し、それを対象ビットの位置に書き込む。
【0059】
このようにして復号化されたデータは周波数帯域毎に空間分割されているため、これを2次元ウェーブレット逆変換部111で2次元ウェーブレット逆変換を行うことにより、画像データの各コンポーネントの各タイルが復元される。復元されたデータは色空間逆変換部110によって元の表色系のデータに変換される。
【0060】
以上が、「JPEG2000アルゴリズム」の概要である。
【0061】
[画像処理装置]
本発明が適用される画像処理装置の例としては、各種あるが、本実施の形態では、その一例として、画像データに各種条件で電子透かしを埋め込んで圧縮符号化して出力するケースの多い画像処理装置としてデジタルカメラに適用し、このようなデジタルカメラで撮像され圧縮符号化されて提供される符号データを復号化して出力する画像処理装置としてパーソナルコンピュータに適用する例で説明する。
【0062】
まず、図4は、本発明が適用される画像処理装置の一例としてのデジタルカメラ1のハードウエア構成を概略的に示すブロック図である。
【0063】
本実施の形態のデジタルカメラ1は、概略的には、図4に示すように、撮像部11と、信号処理部12と、メモリ制御部13と、主制御部14と、フレームメモリ15と、インタフェース16と、表示部17と、外部記憶部18と、撮影モード設定部19とを備える。そして、撮像部11はレンズ21と、絞り22と、シャッタ23と、光電変換素子24と、前処理部25とを含む。
【0064】
ここで、信号処理部12は、前処理部25とメモリ制御部13、主制御部14及びインタフェース16に接続されている。また、メモリ制御部13はさらにフレームメモリ15に接続されている。主制御部14はさらに、メモリ制御部13と撮影モード設定部19に接続されている。また、フレームメモリ15は、メモリ制御部13に接続されている。インタフェース16はさらに表示部17及び外部記憶部18に接続されている。
【0065】
一方、撮像部11においては、レンズ21と絞り22、シャッタ23、光電変換素子24が光軸上でこの順に配置され、光電変換素子24は前処理部25に接続されている。
【0066】
また、撮像部11の光電変換素子24には例えばCCDが使用されている。また、前処理部25にはプリアンプや自動利得制御回路(Auto Gain Control−AGC)等からなるアナログ信号処理部やアナログ−デジタル変換器(A/D変換器)が備えられ、光電変換素子24より出力されたアナログ映像信号に対して、増幅やクランプ等の前処理が施された後、上記アナログ映像信号がデジタル映像信号に変換される。
【0067】
また、信号処理部12はデジタル信号処理プロセッサ(DSPプロセッサ)等により構成され、前述のJPEG2000アルゴリズムによる画像圧縮機能を有し、撮像部11において得られたデジタル映像信号に対して色分解、ホワイトバランス調整、γ補正など種々の画像処理を施す。また、メモリ制御部13はこのようにして処理された画像信号をフレームメモリ15へ格納したり、逆にフレームメモリ15に格納された画像信号を読出したりする処理を行う。また、主制御部14は当該デジタルカメラの各部を集中的に制御するCPU、このCPUが使用する各種制御プログラムなどを記憶したROM、ワークエリアとなるRAMを有するマイクロコンピュータ構成のものである。なお、ROMに格納されている制御プログラムに代えて、当該制御プログラムを格納した記憶媒体(図示せず)をデジタルカメラ1に装着し、デジタルカメラ1のCPUに当該制御プログラムを実行させるようにしてもよい。また、フレームメモリ15は少なくとも2枚の画像を格納し、一般的にはVRAM,SRAM,DRAM等の半導体メモリが使用される。
【0068】
ここで、フレームメモリ15から読出された画像信号は、信号処理部12において画像圧縮等の信号処理が施された後、インタフェース16を介して外部記憶部18に保存される。この外部記憶部18はインタフェース16を介して供給される画像信号などの種々の信号を読み書きし、ICメモリカードや光磁気ディスク等により構成される。ここで外部記憶部18として、モデムカードやISDNカードが使用されれば、ネットワークを経由して画像信号を直接遠隔地の記録媒体に送信することもできる。
【0069】
また、逆に外部記憶部18に記録された画像信号の読出しは、インタフェース16を介して信号処理部12へ画像信号が送信され、信号処理部12において画像伸長が施されることによって行われる。一方、外部記憶部18及びフレームメモリ15から読出された画像信号の表示は、信号処理部12において画像信号に対してデジタル−アナログ変換(D/A変換)や増幅などの信号処理を施した後、インタフェース16を介して表示部17に送信することにより行われる。ここで、表示部17は、インタフェース16を介して供給された画像信号に応じて画像を表示し、例えばデジタルカメラ1の筐体に設置された液晶表示装置により構成される。
【0070】
図5は、復号側の画像処理装置に相当するパーソナルコンピュータ31のハードウェア構成を概略的に示すブロック図である。図5に示すように、コンピュータ31は、当該コンピュータの主要部であって各部を集中的に制御するCPU(Central Processing Unit)32を備えている。このCPU32には、BIOSなどを記憶した読出し専用メモリであるROM(Read Only Memory)33と、各種データを書換え可能に記憶するRAM(Random Access Memory)34とがバス35で接続されている。RAM34は、各種データを書換え可能に記憶する性質を有していることから、CPU32の作業エリアとして機能し、例えば入力バッファ等の役割を果たす。
【0071】
さらにバス35には、HDD(Hard Disk Drive)36と、配布されたプログラムであるコンピュータソフトウェアを読み取るための機構としてCD(Compact Disc)−ROM37を読み取るCD−ROMドライブ38と、相手方となるコンピュータとネットワーク39との通信を司る通信制御装置40と、キーボードやマウスなどの入力装置41と、CRT(Cathode Ray Tube)やLCD(Liquid Crystal Display)である表示装置42とが、図示しないI/Oを介して接続されている。
【0072】
そして、パーソナルコンピュータ31の場合であれば、ネットワーク39を介してサーバからダウンロードした圧縮符号化された符号データは、HDD36に格納されることになる。
【0073】
また、CD−ROM37は、本発明の記憶媒体を実施するものであり、OS(Operating System)や各種コンピュータソフトウェアが記憶されている。CPU6は、CD−ROM37に記憶されているコンピュータソフトウェアをCD−ROMドライブ28で読み取り、HDD36にインストールする。
【0074】
なお、記憶媒体としては、CD−ROM37のみならず、DVDなどの各種の光ディスク、各種光磁気ディスク、FDなどの各種磁気ディスク等、半導体メモリ等の各種方式のメディアを用いることができる。また、通信制御装置30を介してインターネットなどのネットワーク39からコンピュータソフトウェアをダウンロードし、HDD36にインストールするようにしてもよい。この場合に、送信側のサーバでコンピュータソフトウェアを記憶している記憶装置も、本発明の記憶媒体である。なお、コンピュータソフトウェアは、所定のOS(Operating System)上で動作するものであってもよいし、その場合に後述の各種処理の一部の実行をOSに肩代わりさせるものであってもよいし、所定のアプリケーションソフトやOSなどを構成する一群のプログラムファイルの一部として含まれているものであってもよい。
【0075】
このような構成のデジタルカメラ1、コンピュータ31には、コンピュータソフトウェアの一つとして、画像を処理する画像処理プログラムが記憶されている。この画像処理プログラムは本発明のプログラムを実施するものである。そして、この画像処理プログラムに基づいてCPUが実行する処理により、デジタルカメラ1、コンピュータ31の各部の各種機能を実現する。その一つとして、図1を参照して説明したJPEG2000アルゴリズムの各機能ブロックを備え、前述のようなJPEG2000アルゴリズムにより画像データの圧縮符号化、又は、符号データの復号化を行う。即ち、図1に示したような圧縮符号化手段及び復号化手段の機能は、HDDに記憶されているプログラムに基づいてCPUが行う処理により実行される(もっとも、論理回路等を利用したハードウェア構成により実行させてもよい)。
【0076】
[デジタルカメラにおける画像符号化処理]
本実施の形態のデジタルカメラ1は、基本的にJPEG2000アルゴリズムを利用して画像データの圧縮符号化を行うものであり、その際、ユーザの必要性・目的に応じた耐性を付与した電子透かしを埋め込むものである。
【0077】
デジタルカメラ1においてこのような画像符号化処理を行うJPEG2000アルゴリズムによる圧縮符号化手段を適宜簡略化して書き直すと、図6のように示すことができる。即ち、撮像部11から画像データの入力を受付ける入力部51、受付けた画像データに対して色空間変換等の処理を経た後、2次元ウェーブレット変換処理を行う2次元ウェーブレット変換部52(102に相当)、変換された離散ウェーブレット変換係数に対して効率のよい圧縮を行うためにそのダイナミックレンジを削減するポスト量子化等の非可逆な量子化処理を行う係数量子化部53(103に相当)、量子化された離散ウェーブレット変換係数に対して前述のエントロピー符号化(係数モデリング+算術符号化)等の可逆圧縮符号化処理を行う可逆圧縮符号化部54(104に相当)、符号化された符号データの並べ替え処理等を行い、必要箇所に出力する符号データ出力部55(105に相当)による圧縮符号化手段56を有する。ここに、可逆圧縮符号化部54の“可逆圧縮符号化”とは、変換しても完全に元に戻せる変換処理のことをいい、前述の算術符号化等の処理が該当する。
【0078】
このような通常のJPEG2000アルゴリズムによる圧縮符号化手段56の機能に加え、本実施の形態では、圧縮符号化手段56により可逆圧縮符号化される直前のデータ、ここでは、係数量子化部53により量子化された離散ウェーブレット変換係数に対して、符号化された電子透かしデータを埋め込む電子透かし埋め込み手段又は電子透かし埋め込み機能として作用する電子透かし埋め込み部57が付加されている。この電子透かし埋め込み部57による処理等についての詳細は後述するが、ここでは、たたみ込み符号化部58において元の画像データに関する分割領域=ブロック毎の画像統計値(平均値、分散値等)を種(タネ)にした乱数値により生成されたたたみ込み符号を電子透かしデータとして用いて埋め込むものである。
【0079】
[パソコンにおける符号復号化処理]
本実施の形態のパーソナルコンピュータ31は、デジタルカメラ1から直接的に、或いは、プロバイダ、サーバ等から供給されるJPEG2000アルゴリズムによる符号データをJPEG2000アルゴリズムにより復号化するものであり、このような符号復号化処理を行うJPEG2000アルゴリズムによる復号化手段を適宜簡略化して書き直すと、図7のように示すことができる。即ち、デジタルカメラ1等から配布される前述のように、電子透かしデータが埋め込まれた符号データの入力を受付ける符号データ入力手段又は符号データ入力機能として作用する入力部61に対して、受付けた符号データに対してエントロピー復号化処理等の可逆圧縮符号の復号化処理を行う可逆圧縮符号の復号化部62、2次元ウェーブレット逆変換等を行って元の画像データに復元する2次元ウェーブレット逆変換部63(103,102,101等に相当)による復号化手段64を有する。
【0080】
加えて、復号化部62と2次元ウェーブレット逆変換部63との間には、符号データ中に埋め込まれている電子透かしデータを復号するための電子透かし復号部65が付加されている。この電子透かし復号部65の処理等の詳細についても後述するが、たたみ込み方式に対して対をなす復号化方式として周知のビタビ(Viterbi)復号方式が用いられている。また、電子透かし復号部65から得られるビタビ復号信号と、復号された画像データに関する分割領域=ブロック毎の画像統計値(平均値、分散値等)とを比較照合することにより、電子透かしの改ざんの有無等をチェックする照合部66も付加されている。
【0081】
以下、埋め込み側・復号側で対応する各処理に分けて順に説明する。
【0082】
[電子透かし埋め込み処理−電子透かし抽出照合処理]
この処理は、図6にあっては、入力部51、2次元ウェーブレット変換部52、係数量子化部53、電子透かし埋め込み部57の処理であり、図7にあっては、電子透かし復号部65及び2次元ウェーブレット逆変換部63の処理である。
【0083】
この処理に関しては、基本的には、JPEG2000のウェーブレット変換の特徴及び前述の非特許文献1,2の方式を利用するものである。即ち、ウェーブレット変換によれば、画像データを周波数成分に分割した場合、サブバンドLL,LH,HL,HHの各成分に分割することができる。ここに、サブバンドLLは原画像の解像度を1/2にした画像を表現する最低周波成分であり、サブバンドLH,HL,HHは画像の横、縦、斜め方向の差分情報を表現する周波数成分であり、サブバンドHHが最高周波成分である。このうち、サブバンドLLは原画像の特徴を大きく表しているため、サブバンドLLに情報を埋め込むと、埋め込み後の画像に顕著な変化が出やすく、一方、サブバンドHHは一般的な画像変換処理や画像圧縮処理により取り除かれてしまうので、情報の埋め込みには向いていないものの、情報を埋め込んでも画像には変化が出にくいので埋め込み情報量を増やすには必要な場所である。
【0084】
そこで、一般的には、非特許文献1中にも記載されているように、サブバンドLH又はHLなる箇所のウェーブレット変換係数に情報を埋め込むことが好適といえるが、サブバンドLHは図8(a)に示すように原画像の水平方向の変化量を表しており、水平方向のウェーブレット変換中はサブバンドLLに対して垂直方向に位置するLH画像が類似し、サブバンドHLは図8(b)に示すように原画像の垂直方向の変化量を表しており、垂直方向のウェーブレット変換中はサブバンドLLに対して水平方向に位置するHL画像が類似する特性を持つ。そして、非特許文献1の場合と同様に、これらのサブバンドLHとHLとの局所的な画素の値の和の大小関係を利用して電子透かしデータを埋め込むことを基本とする。
【0085】
もっとも、非特許文献1等では、例えば撮像部11から入力されるrawデータであるRGBデータを対象としているが、本実施の形態では、色空間変換処理によりRGB→YCbCr(YUV)変換されたYUVデータのウェーブレット変換係数を対象として電子透かしデータを埋め込むように改良しているものである。より具体的には、輝度成分Y,色差成分Cb(U),Cr(V)の重要度(輝度成分Yは画質に大きく影響する)に応じた一般的な変換例である4:2:2YUVへの適用例とされている。
【0086】
そこで、例えば図9に示すように、16×16画素の色変換された原画像(Y0UY1V)の各々についてウェーブレット変換を施してサブバンドLL2,LH2,HL2,HH2(第2階層の例)に周波数分割したウェーブレット変換係数に関して、輝度成分Y0,Y1にはなるべく電子透かし情報を埋め込まないようにするため非特許文献1に準じてサブバンドLH2,HL2の何れかの領域にそれらの局所的な画素の値の和の大小関係を利用して電子透かしデータを埋め込むものとする一方、画質への影響の少ない色差成分U,Vにはより多くの電子透かし情報を埋め込むようにするため非特許文献2に準じてサブバンドHH2をも考慮してサブバンドLH2,HH2又はサブバンドHL2,HH2の一方の組合せの領域にそれらの局所的な画素の値の和の大小関係を利用して電子透かしデータを埋め込むようにしたものである。図9中に示す+,−の表記は非特許文献1中のものと同様であり、非特許文献2中のP,Qに相当し、演算処理等はこれらの非特許文献1,2の場合と同様であるので、その詳細は省略する。
【0087】
よって、ウェーブレット変換係数中に電子透かしデータを埋め込む手法として、基本的には、非特許文献1,2等の方式を利用しているものの、色分解された4:2:2YUVデータを対象とし、輝度成分Yと色差成分U,Vとで電子透かしデータ量を異ならせているので、画質を落とすことなく、電子透かしとして埋め込むデータ量を4倍に増大させることができる。よって、基本的に電子透かし量が最重視される改ざん防止用に効果的な上に、著作権保護用等であっても画質劣化が少ないことが判る。
【0088】
[たたみ込み符号−ビタビ復号方式]
本実施の形態では、電子透かしとして埋め込むデータに関して、ブロック符号化変調技術、符号理論等で周知なたたみ込み符号−ビタビ復号の組合せを利用するものであり、この処理は、図6にあっては、たたみ込み符号化部58の処理であり、図7にあっては、電子透かし復号部65の処理である。
【0089】
まず、たたみ込み符号に関しては、例えば、“符号理論入門”岩垂好裕著、昭晃堂‘97なる文献中に記載されている図10に示すような演算処理を利用することができる。図中、Ikは元の信号、Cmnは算出された信号、+は排他的論理和演算を表している。図示例は、2個のメモリを使用したたたみ込み拘束長2、符号化率1/2の例を示しており、2つの信号
C1j=Ij+Ij-2
C0j=Ij+Ij-1+Ij-2
が算出される。このようなたたみ込み符号を用いることにより、荒っぽい処理がされてもデータが残り、結果として、耐性が高いことがよく知られており(例えば、NASA宇宙技術でも利用)、信号Cijのi,jの数、Ij+Ij-2の数が多いほど、即ち、たたみ込み拘束長の値が大きいほど耐性が大きいことも知られており、このたたみ込み拘束長の値を可変させることにより耐性の程度を調整することができる。
【0090】
ここに、図10に示したたたみ込み演算方式の演算例を示すと、表1のようにまとめることができる(これは、同文献中にも記載されている)。
【0091】
【表1】
【0092】
この結果、このようなたたみ込み拘束長2、符号化率1/2の方法に関して、逆変換による画素値を算出すると(変数(独立):12変数Cm , n)、
Ij=C0,(j+1)+C1,(j+1)
Ij=C1,j +C0,(j-1) +C1,(j-1)
Ij=C1,(j+2)+C0,(j+3) +C1,(j+3)
Ij=C0,(j+1)+C0,j +C1,j +C0,(j+2) +C1,(j+2)
Ij=C0,(j+2)+C0,(j+3) +C0,(j+4) +C1,(j+4)
となる。これにより、たたみ込み拘束長2、符号化率1/2の方法に関して5票による多数決が適用でき、信頼性が向上することが裏付けられる。例えば、1信号の読取り正解率が92%以上の場合であれば、5票の多数決により99%以上を復元し得る信頼性の高いものとなる。
【0093】
ちなみに、特許文献2等で用いられている単純多数決方式と対比した結果を示すと、表2に示すようになる。
【0094】
【表2】
【0095】
即ち、多数決に3票用いる単純多数決方式の場合、情報量として元の3倍必要として98.2%の信頼性に留まるのに対して、前述のたたみ込み拘束長2の場合で情報量として元の2倍で5票による多数決、99.5%の信頼性が得られ、さらには、たたみ込み拘束長3の場合で情報量として元の2倍で7票による多数決、99.9%の信頼性が得られ、たたみ込み拘束長4以上の場合で情報量として元の2倍で9票による多数決、信頼性向上がみられたものである。従って、強い耐性が要求される著作権保護用の電子透かしの場合であれば、符号化率は1/2、たたみ込み拘束長を6の如く設定する一方、耐性がある程度低いことが要求される改ざん検出用の電子透かしの場合であれば、符号化率は1/2で一律とするものの、たたみ込み拘束長を2〜3の如く設定すれば、各々の目的に応じた耐性レベルの設定が可能となる。
【0096】
電子透かしとして埋め込まれたこのようなたたみ込み符号を復号・抽出する電子透かし復号部65での処理として行われる復元性の高いビタビ復号処理は、たたみ込み符号と対をなす復号方式として周知であり(例えば、前述の文献や特開2000−174628公報等参照)、このような一般的な技術を利用すればよいので、詳細説明は省略する。図11は前述したようにたたみ込み符号の拘束長が2、符号化率が1/2の場合のビタビ復号の基本的な一般図を示すもので(前述の文献中に記載されている)、図11(a)は電子透かし復号部65の内部状態を各時刻毎に示した格子状表現によるトレリス線図、図11(b)はその状態遷移図である。
【0097】
[電子透かしデータの供与体Donorと受容体Acceptorとの分離]
この処理は、図6にあっては、入力部51及びたたみ込み符号化部58の処理であり、図7にあっては、照合部66の処理である。即ち、分割された或る矩形領域=タイル又はブロックの統計計算値に基づき算出された電子透かし用のたたみ込み符号を、当該矩形領域とは分離された別の矩形領域に復元可能な対応付けをもって割り当てるようにしたものである(割り当て領域変更手段、割り当て領域変更機能)。基本的には、改ざんの発見を可能にするために、分割された或る矩形領域=タイル又はブロックの統計計算値(平均値でも分散値でもよい)を種(タネ)にした乱数値を電子透かしのデータ(最終的にはたたみ込み符号が用いられる)に使用するが、このようにして求めた電子透かしデータを、当該画像計算値を求めた矩形領域Donorとは異なる別の矩形領域Acceptorに埋め込むように埋め込み領域を割り当てることにより、同一の矩形領域に埋め込むセルフ方式の場合よりも改ざん発見の感度が向上するようにしたものである。例えば、8×8画素単位のタイル又はブロックを考えた場合、
の情報の信頼性が得られる。例えば、n=2の場合であれば、98%となる。即ち、図12に略図的に示すように、或る(n−1)ブロックから得られた統計データ(平均値など)を別のブロックであるnブロックへの供与情報とする一方、nブロックでは(n−1)ブロックからの供与情報に基づく電子透かしデータを受容情報として埋め込み、(n+1)ブロック以降についても同様に処理するというものである。この方式によれば、何れのブロックの情報が壊されても、辻褄が合わなくなるので、改ざんされたことを確実に発見できることとなる。この場合、元の状態に復元できるように可逆性が必要であり、かつ、DonorとAcceptorとの対応付けが必要であり、より実際的には、図13に示すように、各々ウェーブレット変換の対象となるように複数に分割された各ブロックに関して、矢印で示すように例えば1つ上のブロックをDonorとし1つ下のブロックをAcceptorとする対応関係として電子透かしを埋め込むようにすれば、改ざんされた場合の改ざんを発見しやすいものとなる。
【0098】
これに対して、自己の矩形領域に埋め込むセルフタイプの場合、1−1/22=75%の情報の信頼性に留まるものである。改ざんがあった場合、共倒れになりやすいためである。
【0099】
[電子透かしデータの耐性をファジー化する処理]
この処理は、図6にあっては、たたみ込み符号化部58において統計計算値に基づき算出されたたたみ込み符号のデータをファジー表現するためのファジー処理を施す処理であり、図7にあっては、照合部66の処理である。このファジー化処理は、例えば、前述したように電子透かしの情報の供与体(矩形領域=ブロック)と受容体(矩形領域=ブロック)とを分離する方式で用いる平均値、分散値等の統計計算値が非可逆圧縮によって低下する信頼性を補完するための技術であり、例えば、2bitの場合であれば、図14に数量表現の基本形として模式的に示すように、数量を表すbit情報の変化が滑らかとなるように、数値が1増える毎に1bitずつしか変化させない表現内容を取るようにすればよい。即ち、通常のビット表現であれば、0(意味)=00(bit)、1(意味)=01(bit)、2(意味)=10(bit)、3(意味)=11(bit)となるが、ファジー化により図14中に示すような表現内容に変更するものである(2,3の対応関係が崩れる)。
【0100】
また、3bitの場合も、図15に示すように数値が1増える毎に1bitずつ変化する表現内容を取るようにすればよい。即ち、通常のビット表現であれば、0(意味)=000(bit)、1(意味)=001(bit)、2(意味)=010(bit)、3(意味)=011(bit)、4(意味)=100(bit)、5(意味)=101(bit)、6(意味)=110(bit)、7(意味)=111(bit)となるが、ファジー化により図15中に示すような表現内容に変更するものである(2〜6の対応関係が崩れる)。この3bitの場合のファジー化によれば、上述のような非可逆圧縮に伴う画質低下、埋め込みデータの信頼性低下をハミング距離で判断することができる。即ち、ハミング距離が小さい場合には画像データの改ざんとはみなさず、ハミング距離が大きい場合のみ改ざんありと判断することができる。例えば、図15に示す例であれば、1bitの不一致があっても改ざんとはみなさないように判断することができる。
【0101】
このように、ファジー処理によりたたみ込み符号のデータを表現するビット数が、例えば2ビット、3ビットの如く、可変設定自在であるので、電子透かしとしてのデータをファジー化する処理において改ざん発見レベルの調整が可能となる。よって、改ざん検出用の電子透かしの場合であれば、そのデータ耐性のファジー化のビット数を3bitに設定すれば改ざん検出のより一層の適正化を図れる一方、著作権保護用の電子透かしの場合であれば、データ耐性のファジー化のビット数を2bitに設定すれば情報量を少しでも減らして画質劣化の抑制を図ることができる。
【0102】
結局、本実施の形態においては、2次元ウェーブレット変換係数への電子透かしの埋め込み、耐性調整が可能なたたみ込み符号−ビタビ復号の組合せに加えて、電子透かしとなるたたみ込み符号のデータ耐性のファジー化(Gray符号の類)を組合せることで、電子透かし埋め込みによる画質の劣化を回避しており、電子透かしデータの耐性を高めるために画質を変換させるのに代えて電子透かしとなるたたみ込み符号の統計処理値に基づいているので、画質劣化が少ない上に電子透かしの情報量の増大を図ることもでき、用途に応じた電子透かしとすることができる。よって、画質劣化の抑制や電子透かしの情報量の増大を図れる点で、特許文献1等に示される従来技術に対して、目的に応じた最適な電子透かしとなる。
【0103】
【発明の効果】
請求項1の発明によれば、2次元ウェーブレット変換係数への電子透かしの埋め込み、耐性調整が可能なたたみ込み符号−ビタビ復号の組合せに加えて、電子透かしとなるたたみ込み符号のデータ耐性のファジー化を組合せることにより、電子透かし埋め込みによる画質の劣化を回避しており、電子透かしデータの耐性を高めるために画質を変換させるのに代えて電子透かしとなるたたみ込み符号の統計処理値に基づいているので、画質劣化が少ない上に電子透かしの情報量の増大を図ることもでき、用途に応じた電子透かしとすることができる。また、電子透かしとしてのデータ耐性をファジー化する処理が、たたみ込み数値の値が1増える毎にその意味を表すビット情報が1ビットずつ変化する表現形態とする処理であるので、ビット情報の変化を滑らかにすることができ、例えば、統計計算値が非可逆圧縮により低下することを補完することが可能となる。また、ファジー処理によりたたみ込み符号のデータを表現するビット数が、例えば2ビット、3ビットの如く、可変設定自在であるので、電子透かしとしてのデータをファジー化する処理において改ざん発見レベルの調整が可能となる。
【0104】
請求項2記載の発明によれば、請求項1記載の発明において、電子透かし用のたたみ込み符号を取得するための供与体となる矩形領域と、当該たたみ込み符号が埋め込まれる受容体となる矩形領域とを同一とはせず分離することにより、何れの矩形領域のデータが壊されても辻褄が合わなくなるので、改ざんされたことを発見できることとなり、改ざん発見の感度を向上させることができる。
【0105】
請求項3記載の発明によれば、、請求項1又は2記載の発明により埋め込まれた電子透かしに対して適正に復号、検証処理を行わせることができる。
【図面の簡単な説明】
【図1】本発明の実施の形態の前提となるJPEG2000方式の基本となるアルゴリズムを実現するシステムの機能ブロック図である。
【図2】デコンポジションレベル数が3の場合の、各デコンポジションレベルにおけるサブバンドを示す説明図である。
【図3】コードストリームを示す説明図である。
【図4】画像処理装置としてのデジタルカメラのハードウエア構成を概略的に示すブロック図である。
【図5】パーソナルコンピュータのハードウェア構成を概略的に示すブロック図である。
【図6】デジタルカメラにおける画像圧縮符号化の処理系を書き直して示す機能的ブロック図である。
【図7】パーソナルコンピュータにおける符号復号化の処理系を書き直して示す機能的ブロック図である。
【図8】ウェーブレット変換の特徴を示す模式的な説明図である。
【図9】YUVデータに関する電子透かし埋め込み方式を示す模式的な説明図である。
【図10】文献から抽出したたたみ込み符号方式の基本を示す模式的説明図である。
【図11】文献から抽出したビタビ復号方式の基本を示す模式的説明図である。
【図12】電子透かしデータの供与体と受容体とを分離する方式を示す模式的説明図である。
【図13】ブロックへの適用例を示す全体的な模式的説明図である。
【図14】2bitの場合のデータのファジー化方式を示す説明図である。
【図15】3bitの場合のデータのファジー化方式を示す説明図である。
【符号の説明】
1,31 画像処理装置
57 埋め込み手段、埋め込み機能
58 たたみ込み符号算出手段、たたみ込み符号算出機能
65 ビタビ復号手段、ビタビ復号機能
66 照合手段、照合機能[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an image processing apparatus that handles electronic watermarks, an image processing program, and a storage medium.
[0002]
[Prior art]
Digital information (digital content) such as a digital image can be easily copied by a computer or the like without degrading the information. In recent years, with the development of digital image technology, it has become possible to use digital images obtained by digital cameras or the like as evidence photographs. Some of such digital contents are copyrighted and are prohibited from being copied without permission or from being reused.
[0003]
By the way, digital content can be easily tampered with by performing operations such as simple modification processing and rewriting. For this reason, the digital content may be illegally copied and reused without permission, or may be partially altered so that it cannot be used for evidence photographs.
[0004]
As a countermeasure against this, unauthorized use of digital content is prevented by a method called digital watermarking or data hiding, which adds information that cannot be seen when digital content is normally played back to digital content such as digital images. There is a technology to prevent it. Thereby, it is possible to determine whether or not the digital content is illegally used based on the digital watermark embedded in the digital content.
[0005]
Applications for embedding digital watermarks in digital content include the following.
A. Record copyright information
B. Tracking illegal copy information
C. Record IP address history
D. Prevention of illegal copying: Invisible and highly resistant type
E. Application to tampering prevention: Invisible and low tolerance type
F. Authentication
G. Secret communication
H. Embed digital content annotations and labels to display owners: visible and irreversible
I. Enabling watermark removal: Visible / Reversible type ... Content distribution
[0006]
As described above, there are various purposes for embedding a digital watermark in digital content, but it is also known that it is difficult to cover various purposes related to such a digital watermark. For example, when it is desired to enhance copyright protection using digital watermarks, the digital watermarks to be embedded are made more resistant, so that the digital watermarks are not destroyed even if some changes such as compression or rotation are applied to the digital contents. It is necessary to. On the other hand, when it is desired to detect tampering with digital content using digital watermarks, it is necessary to weaken the resistance of the digital watermarks so that the digital watermarks can be broken by slight changes. Are in a trade-off relationship.
[0007]
There are various literatures and proposal examples in consideration of such circumstances.
[0008]
For example, for the purpose of indexing, there is one that is embedded in subbands HL, LH, or HH of wavelet coefficients so that image quality after digital watermark embedding is not impaired while maintaining durability (for example, non-coding) (See
[0009]
There is also a proposal that realizes high tolerance of digital watermarking and low degradation of image quality by embedding digital watermarks in wavelet coefficients at the time of wavelet conversion and improving the degree of freedom of embedding of digital watermarks (for example, patent documents) 1).
[0010]
There is also a proposal example in which the resistance of digital watermark is made variable by combining wavelet transform and error correction code (see, for example, Patent Document 2). In this case, a simple majority method is used in the digital watermark extraction processing system.
[0011]
Furthermore, there is also a proposal example in which a digital watermark is embedded in a wavelet coefficient value with an intensity that fluctuates monotonously (for example, see Patent Document 3).
[0012]
[Patent Document 1]
Japanese Patent Laid-Open No. 2000-13587
[Patent Document 2]
JP 2000-106624 A
[Patent Document 3]
JP 2000-196856 A
[Non-Patent Document 1]
The 22nd Symposium on Information Theory and Its Applications (SITA99) Yuzawa, Niigata, Japan, Nov. 30-Dec. 3,1999 “Method of embedding index information in an image using characteristics of wavelet transform” Motoi Iwata, Yo Amagasaki
[Non-Patent Document 2]
The 23nd Symposium on Information Theory and Its Applications (SITA2000) Aso, Kumamoto, Japan, Oct. 10-13,2000 “Digital watermarking method for embedding index information using the magnitude relation of wavelet coefficients” Motoi Iwata, Yo Amagasaki
[0013]
[Problems to be solved by the invention]
As described above, there are various documents and proposed examples, but none of them are perfect.
[0014]
First, according to Non-Patent
[0015]
In the case of
[0016]
In the case of
[0017]
Further, in the case of
[0018]
An object of the present invention is to enable embedding and restoring a digital watermark having a resistance suitable for a wide variety of uses and purposes such as for falsification detection or for copyright protection, while being based on high compression processing by the JPEG2000 algorithm. .
[0019]
[Means for Solving the Problems]
The image processing apparatus according to the first aspect of the present invention provides:For each rectangular area obtained by dividing the image data into a plurality of regions, the image data is converted into wavelet transform coefficients, the transform coefficients are quantized, and the quantized transform coefficients are processed in a lossless compression encoding process. In an image processing apparatus that compresses and encodes code data, a convolutional code calculation that calculates a convolutional code embedded in the transform coefficient quantized as a digital watermark by statistical calculation for each of the divided rectangular areas is performed. And fuzzy processing in which the convolutional code data calculated by the convolutional code calculating means is expressed in such a manner that bit information representing the meaning changes bit by bit every time the value of the convolutional value increases by one. Fuzzy processing means to be applied, and the convolutional code fuzzy processed by the fuzzy processing means are quantized. Serial and a embedding unit embeds the transform coefficients as a digital watermark, the fuzzy processing means is characterized by a number of bits representing the data in a convolutional code wherein a freely variably set.
[0020]
Therefore, in addition to the combination of convolutional code and Viterbi decoding, which can embed a digital watermark in a two-dimensional wavelet transform coefficient and adjust the durability, by combining fuzzification of data resistance of a convolutional code that becomes a digital watermark, Image quality degradation due to digital watermark embedding is avoided, and based on statistical processing values of convolutional codes that become digital watermarks instead of converting image quality in order to increase the durability of digital watermark data, image quality degradation is In addition to the small amount of information, the amount of digital watermark information can be increased, and a digital watermark can be obtained according to the application.In addition, since the process of fuzzing data resistance as a digital watermark is a process in which the bit information representing the meaning changes bit by bit every time the value of the convolution value increases by 1, the bit information changes For example, it is possible to compensate for a decrease in the statistical calculation value due to lossy compression. In addition, since the number of bits representing the data of the convolutional code by fuzzy processing can be variably set, for example, 2 bits or 3 bits, the tampering detection level can be adjusted in the process of fuzzing the data as the digital watermark. It becomes possible.
[0029]
Claim2The described invention is claimed.1In the image processing apparatus described above, the digital watermark convolutional code calculated based on the statistical calculation value of a certain divided rectangular area can be restored to another rectangular area separated from the rectangular area. The allocation area changing means to be assigned is provided.
[0030]
Therefore, by separating the rectangular area serving as the donor for acquiring the convolutional code for the digital watermark from the rectangular area serving as the acceptor in which the convolutional code is embedded is not the same, any rectangular area is separated. Even if the data in the area is destroyed, the wrinkles do not match, so it is possible to detect that the data has been tampered with, and the sensitivity of tampering detection can be improved.
[0031]
Claim3The image processing apparatus of the described invention3. The image processing apparatus according to
[0032]
Therefore, the claims1 or 2According to the described invention, it is possible to appropriately perform decoding and verification processing on the embedded digital watermark.
[0049]
DETAILED DESCRIPTION OF THE INVENTION
An embodiment of the present invention will be described with reference to the drawings.
[0050]
[Outline of JPEG2000 algorithm]
Although this embodiment uses the JPEG2000 algorithm, the JPEG2000 algorithm itself is well known from various documents, gazettes, etc., so the details will be omitted and the outline will be described. FIG. 1 is a block diagram for explaining the outline of the JPEG2000 algorithm. The algorithm of JPEG2000 includes a color space conversion /
[0051]
In many cases, a color space conversion /
[0052]
Hereinafter, the JPEG2000 algorithm, particularly the wavelet transform will be described.
[0053]
At the time of encoding, the data of each tile of each component is input to the color
[0054]
FIG. 2 shows subbands at each decomposition level when the decomposition level is 3. FIG. That is, the tile original image (0LL) (decomposition level 0 (reference numeral 120)) obtained by the tile division of the original image is subjected to two-dimensional wavelet transform, and the subband indicated by the decomposition level 1 (reference numeral 121). (1LL, 1HL, 1LH, 1HH) are separated. Subsequently, the low-frequency component 1LL in this hierarchy is subjected to two-dimensional wavelet transform to separate subbands (2LL, 2HL, 2LH, 2HH) indicated by the decomposition level 2 (reference numeral 122). Similarly, the low-frequency component 2LL is also subjected to two-dimensional wavelet transform to separate subbands (3LL, 3HL, 3LH, 3HH) indicated by the decomposition level 3 (reference numeral 123).
[0055]
Further, in FIG. 2, subbands to be encoded at each decomposition level are represented in gray. For example, when the decomposition level is 3, the subbands shown in gray (3HL, 3LH, 3HH, 2HL, 2LH, 2HH, 1HL, 1LH, 1HH) are to be encoded, and the 3LL subband is not encoded.
[0056]
Next, the bits to be encoded are determined in the specified encoding order, and the
[0057]
The
[0058]
On the other hand, at the time of decoding, contrary to the time of encoding, image data is generated from the code stream of each tile of each component. In this case, the
[0059]
Since the data decoded in this way is spatially divided for each frequency band, the two-dimensional wavelet
[0060]
The above is the outline of the “JPEG2000 algorithm”.
[0061]
[Image processing device]
There are various examples of image processing apparatuses to which the present invention is applied. In the present embodiment, as an example, image processing in which digital watermarks are embedded in image data under various conditions, compression-coded, and output are often performed. An example will be described in which the present invention is applied to a digital camera as an apparatus, and is applied to a personal computer as an image processing apparatus that decodes and outputs code data captured and compressed and encoded by such a digital camera.
[0062]
First, FIG. 4 is a block diagram schematically showing a hardware configuration of a
[0063]
As schematically shown in FIG. 4, the
[0064]
Here, the signal processing unit 12 is connected to the
[0065]
On the other hand, in the
[0066]
For example, a CCD is used as the
[0067]
The signal processing unit 12 includes a digital signal processor (DSP processor) and the like, has an image compression function based on the above-described JPEG2000 algorithm, and performs color separation and white balance on the digital video signal obtained in the
[0068]
Here, the image signal read from the
[0069]
Conversely, reading of the image signal recorded in the
[0070]
FIG. 5 is a block diagram schematically showing a hardware configuration of the
[0071]
Further, the
[0072]
In the case of the
[0073]
The CD-
[0074]
As the storage medium, not only the CD-
[0075]
The
[0076]
[Image coding processing in digital cameras]
The
[0077]
If the compression encoding means based on the JPEG2000 algorithm for performing such image encoding processing in the
[0078]
In addition to the function of the
[0079]
[Decoding and decoding processing on a personal computer]
The
[0080]
In addition, a digital
[0081]
Hereinafter, description will be made in order on the embedding side and the decoding side, corresponding to each processing.
[0082]
[Digital watermark embedding process-Digital watermark extraction collation process]
This processing is the processing of the
[0083]
Regarding this processing, basically, the features of the wavelet transform of JPEG2000 and the methods of
[0084]
Therefore, in general, as described in
[0085]
However, in
[0086]
Therefore, as shown in FIG. 9, for example, an original image (Y0UY1V) Wavelet transform is applied to each of the subbands LL2, LH2, HL2, and HH2 (example of the second layer) so that the digital watermark information is not embedded in the luminance components Y0 and Y1 as much as possible. Therefore, in accordance with
[0087]
Therefore, as a method of embedding the digital watermark data in the wavelet transform coefficient, the method basically uses
[0088]
[Convolutional code-Viterbi decoding method]
In the present embodiment, for data to be embedded as a digital watermark, a combination of convolutional code-Viterbi decoding known in block coding modulation technology, code theory, etc. is used. This processing is shown in FIG. FIG. 7 shows the processing of the digital
[0089]
First, regarding the convolutional code, for example, an arithmetic process as shown in FIG. 10 described in the document “Introduction to Code Theory” by Yoshihiro Iwabuchi and Shosendo '97 can be used. In the figure, IkIs the original signal, CmnRepresents a calculated signal, and + represents an exclusive OR operation. The illustrated example shows an example of
C1j= Ij+ Ij-2
C0j= Ij+ Ij-1+ Ij-2
Is calculated. It is well known that by using such a convolutional code, data remains even after rough processing, and as a result, it is well known that the tolerance is high (for example, also used in NASA space technology), and the signal CijIt is also known that the greater the number of i, j and Ij + Ij-2, that is, the greater the convolution constraint length value, the greater the tolerance. By varying the convolution constraint length value, the resistance is improved. Can be adjusted.
[0090]
An example of the convolution calculation method shown in FIG. 10 can be summarized as shown in Table 1 (this is also described in the same document).
[0091]
[Table 1]
[0092]
As a result, regarding such a
Ij= C0, (j + 1)+ C1, (j + 1)
Ij= C1, j + C0, (j-1) + C1, (j-1)
Ij= C1, (j + 2)+ C0, (j + 3) + C1, (j + 3)
Ij= C0, (j + 1)+ C0, j + C1, j + C0, (j + 2) + C1, (j + 2)
Ij= C0, (j + 2)+ C0, (j + 3) + C0, (j + 4) + C1, (j + 4)
It becomes. This confirms that the majority vote with 5 votes can be applied to the method of
[0093]
By the way, the results compared with the simple majority method used in
[0094]
[Table 2]
[0095]
That is, in the case of the simple majority method using three votes for the majority vote, the information amount is three times the original amount and the reliability is 98.2%, whereas the above-described convolution constraint length of 2 is the original amount of information. 2 times the majority, 59.5 votes, 99.5% reliability is obtained. Furthermore, when the convolution constraint length is 3, the majority of the information is twice the original, with 7 votes, 99.9% reliability. In the case where the convolution constraint length is 4 or more, the majority of the information amount is doubled and the reliability is improved by 9 votes. Therefore, in the case of a digital watermark for copyright protection that requires strong resistance, the coding rate is set to 1/2 and the convolution constraint length is set to 6 while the resistance is required to be somewhat low. In the case of digital watermarking for alteration detection, the coding rate is ½ and uniform, but if the convolution constraint length is set as 2-3, the tolerance level can be set according to each purpose. It becomes possible.
[0096]
Viterbi decoding processing with high resilience performed as processing in the digital
[0097]
[Separation of Donor and Acceptor of Digital Watermark Data]
This process is a process of the
The reliability of the information can be obtained. For example, if n = 2, it is 98%. That is, as schematically shown in FIG. 12, statistical data (such as an average value) obtained from a certain (n−1) block is used as information to be provided to another block, n block, while in n block, The digital watermark data based on the donation information from the (n-1) block is embedded as acceptance information, and the same processing is performed after the (n + 1) block. According to this method, no matter which block information is destroyed, the wrinkles will not match, so that it can be surely detected that the information has been tampered with. In this case, reversibility is necessary so that the original state can be restored, and a correspondence between Donor and Acceptor is necessary. More practically, as shown in FIG. As shown by the arrows, for example, each block divided into a plurality of blocks is tampered by embedding a digital watermark as a correspondence with the upper block as Donor and the lower block as Acceptor. It will be easier to detect tampering.
[0098]
On the other hand, in the case of the self type embedded in its own rectangular area, 1-1 / 22= 75% information reliability remains. This is because if tampering occurs, it tends to fall together.
[0099]
[Process to fuzzy digital watermark data resistance]
In FIG. 6, this process is a process for performing fuzzy processing for fuzzy expression of the data of the convolutional code calculated based on the statistical calculation value in the
[0100]
Also in the case of 3 bits, as shown in FIG. 15, every time the numerical value increases by 1, the expression content that changes by 1 bit may be taken. That is, in the normal bit representation, 0 (meaning) = 000 (bit), 1 (meaning) = 001 (bit), 2 (meaning) = 010 (bit), 3 (meaning) = 011 (bit), 4 (meaning) = 100 (bit), 5 (meaning) = 101 (bit), 6 (meaning) = 110 (bit), and 7 (meaning) = 111 (bit). The contents are changed to those shown (the correspondence between 2 and 6 is broken). According to the fuzzification in the case of 3 bits, it is possible to determine the decrease in image quality and the decrease in reliability of embedded data due to the lossy compression as described above based on the Hamming distance. That is, when the hamming distance is small, it is not considered that the image data has been tampered with, and only when the hamming distance is large, it can be determined that tampering has occurred. For example, in the example shown in FIG. 15, even if there is a mismatch of 1 bit, it can be determined not to regard it as falsification.
[0101]
In this way, the number of bits representing the data of the convolutional code by fuzzy processing can be variably set, for example, 2 bits or 3 bits. Therefore, in the process of fuzzifying the data as the digital watermark, Adjustment is possible. Therefore, in the case of a digital watermark for falsification detection, if the number of bits for fuzzification of data resistance is set to 3 bits, tamper detection can be further optimized, while in the case of a digital watermark for copyright protection Then, if the number of bits for fuzzification of data tolerance is set to 2 bits, it is possible to reduce the amount of information as much as possible and to suppress image quality deterioration.
[0102]
After all, in this embodiment, in addition to the combination of convolutional code and Viterbi decoding capable of embedding a digital watermark in a two-dimensional wavelet transform coefficient and adjusting the tolerance, fuzzy data tolerance of a convolutional code that becomes a digital watermark In combination with the conversion (Gray code), image quality deterioration due to digital watermark embedding is avoided, and convolutional code that becomes a digital watermark instead of converting the image quality to increase the durability of the digital watermark data Therefore, the amount of digital watermark information can be increased, and the digital watermark according to the application can be obtained. Therefore, it is an optimal digital watermark according to the purpose with respect to the prior art disclosed in
[0103]
【The invention's effect】
According to the first aspect of the present invention, in addition to the combination of convolutional code and Viterbi decoding capable of embedding a digital watermark in a two-dimensional wavelet transform coefficient and adjusting the tolerance, fuzzy data tolerance of a convolutional code that becomes a digital watermark By combining this, the degradation of image quality due to digital watermark embedding is avoided, and instead of converting the image quality in order to increase the durability of the digital watermark data, it is based on the statistical processing value of the convolutional code that becomes the digital watermark Therefore, the image quality degradation is small and the amount of information of the digital watermark can be increased, and the digital watermark according to the application can be obtained. In addition, since the process of fuzzing data resistance as a digital watermark is a process in which the bit information representing the meaning changes bit by bit every time the value of the convolution value increases by 1, the bit information changes For example, it is possible to compensate for a decrease in the statistical calculation value due to lossy compression. In addition, since the number of bits representing the data of the convolutional code by fuzzy processing can be variably set, for example, 2 bits or 3 bits, the tampering detection level can be adjusted in the process of fuzzing the data as the digital watermark. It becomes possible.
[0104]
Claim2According to the described invention, the claims1In the described invention, by separating the rectangular region serving as a donor for obtaining a convolutional code for digital watermarking and the rectangular region serving as a receiver in which the convolutional code is embedded, without being the same, Even if the data of any rectangular area is destroyed, the wrinkles will not match, so that it is possible to detect that the data has been tampered with, and the sensitivity of tampering detection can be improved.
[0105]
Claim3According to the described invention, the claims1 or 2According to the described invention, it is possible to appropriately perform decoding and verification processing on the embedded digital watermark.
[Brief description of the drawings]
FIG. 1 is a functional block diagram of a system that implements a basic algorithm of the JPEG2000 system that is a premise of an embodiment of the present invention.
FIG. 2 is an explanatory diagram showing subbands at each decomposition level when the number of decomposition levels is 3. FIG.
FIG. 3 is an explanatory diagram showing a code stream.
FIG. 4 is a block diagram schematically showing a hardware configuration of a digital camera as an image processing apparatus.
FIG. 5 is a block diagram schematically showing a hardware configuration of a personal computer.
FIG. 6 is a functional block diagram showing a rewritten image compression encoding processing system in a digital camera.
FIG. 7 is a functional block diagram showing a rewritten coding / decoding processing system in a personal computer.
FIG. 8 is a schematic explanatory view showing characteristics of wavelet transform.
FIG. 9 is a schematic explanatory diagram illustrating a digital watermark embedding method for YUV data.
FIG. 10 is a schematic explanatory diagram showing the basics of a convolutional code method extracted from literature.
FIG. 11 is a schematic explanatory diagram showing the basics of a Viterbi decoding method extracted from literature.
FIG. 12 is a schematic explanatory diagram showing a method for separating a digital watermark data donor and acceptor.
FIG. 13 is an overall schematic explanatory view showing an application example to a block.
FIG. 14 is an explanatory diagram showing a data fuzzification method in the case of 2 bits.
FIG. 15 is an explanatory diagram showing a data fuzzification method in the case of 3 bits.
[Explanation of symbols]
1,31 Image processing device
57 Embedding means, embedding function
58 Convolutional code calculation means, convolutional code calculation function
65 Viterbi decoding means, Viterbi decoding function
66 Verification means, verification function
Claims (7)
電子透かしとして量子化された前記変換係数に埋め込まれるたたみ込み符号を、分割された矩形領域毎に前記画像データに関して統計計算により算出するたたみ込み符号算出手段と、
前記たたみ込み符号算出手段により算出された前記たたみ込み符号のデータを、たたみ込み数値の値が1増える毎にその意味を表すビット情報が1ビットずつ変化する表現形態とするファジー処理を施すファジー処理手段と、
前記ファジー処理手段によりファジー処理された前記たたみ込み符号を、量子化された前記変換係数に電子透かしとして埋め込む埋め込み手段と、
を備え、
前記ファジー処理手段は、前記たたみ込み符号のデータを表現するビット数を可変設定自在であること、
を特徴とする画像処理装置。The image data for each rectangular region is divided into a plurality of conversion to U Eburetto transform coefficients, quantization of the transform coefficients, and the procedure includes the step of lossless compression encoding of the quantized said transform coefficients, the image data In an image processing apparatus that compresses and encodes code data into
A code calculating unit convolutional calculates a convolutional code write Murrell embedded in the transform coefficients quantized by statistical calculations with respect to the image data for each divided rectangular area as an electronic watermark,
The data of convolutional code the calculated by the code calculating unit convolutional said fuzzy processing bit information value of the numerical convolution represents the meaning for each increase 1 is to perform fuzzy processing of the expression form is changed by one bit Means,
The sign said convolutional which is fuzzy processed by the fuzzy processing means, and embedding means embeds a watermark in the transform coefficients quantized,
Equipped with a,
The fuzzy processing means is capable of variably setting the number of bits representing the data of the convolutional code,
The image processing apparatus according to claim.
を備えることを特徴とする請求項1記載の画像処理装置。Convolutional codes divided certain rectangular area statistics calculated value before Symbol calculated based, providing the allocation area changing means for assigning with restorable correspondence to separate another rectangular area and the rectangular area The image processing apparatus according to claim 1.
量子化された前記変換係数に埋め込まれた前記たたみ込み符号データを、ビタビ復号データとして前記符号データ中から抽出するビタビ復号手段と、
復号された画像データの複数に分割した矩形領域毎に当該画像データに関して統計計算されたデータとその矩形領域と対応付けされた矩形領域から抽出されたビタビ復号データとを照合してデータ改ざんの有無を検証する照合手段と、
を備えることを特徴とする請求項1又は2記載の画像処理装置。And expanding means for expanding the image data in the reverse procedure including decoding the encoded data, inverse quantization, the process of wavelet inverse transform,
And Viterbi decoding means for extracting coded data said convolutional embedded in the transform coefficients quantized, from among the code data as Viterbi decoded data,
For each rectangular area of the decoded image data, whether or not the data has been altered by collating data statistically calculated for the image data and Viterbi decoded data extracted from the rectangular area associated with the rectangular area A verification means for verifying,
The image processing apparatus according to claim 1, further comprising:
電子透かしとして量子化された前記変換係数に埋め込まれるたたみ込み符号を、分割された矩形領域毎に前記画像データに関して統計計算により算出するたたみ込み符号算出機能と、
前記たたみ込み符号算出機能により算出された前記たたみ込み符号のデータを、たたみ込み数値の値が1増える毎にその意味を表すビット情報が1ビットずつ変化する表現形態とするファジー処理を施すファジー処理機能と、
前記ファジー処理機能によりファジー処理された前記たたみ込み符号を、量子化された前記変換係数に電子透かしとして埋め込む埋め込み機能と、
を実行させ、
前記ファジー処理機能は、前記たたみ込み符号のデータを表現するビット数を可変設定自在であること、
を特徴とする画像処理用プログラム。The image data for each rectangular region is divided into a plurality of conversion to U Eburetto transform coefficients, quantization of the transform coefficients, and the procedure includes the step of lossless compression encoding of the quantized said transform coefficients, the image data Is installed in a computer included in an image processing apparatus that compresses and encodes the encoded data into encoded data.
The convolutional codes write Murrell embedded into transform coefficients, and the divided code calculating function convolution is calculated by a statistical calculation with respect to the image data for each rectangular area is quantized as an electronic watermark,
The data of convolutional code the calculated by the code calculation function convolution said fuzzy processing bit information value of the numerical convolution represents the meaning for each increase 1 is to perform fuzzy processing of the expression form is changed by one bit Function and
Convolutional codes said that the fuzzy processed by the fuzzy processing function, an embedding function embedded as electronic watermark in the transform coefficients quantized,
And execute
The fuzzy processing function is capable of variably setting the number of bits representing the data of the convolutional code,
Program image processing according to claim.
を前記コンピュータに実行させることを特徴とする請求項4記載の画像処理用プログラム。Convolutional codes divided certain rectangular area statistics calculated value before Symbol calculated based, the computer allocation region change section to assign the corresponding rectangular area with a recoverable association in the separated different rectangular area 5. The image processing program according to claim 4, wherein the image processing program is executed.
量子化された前記変換係数に埋め込まれた前記たたみ込み符号データを、ビタビ復号データとして前記符号データ中から抽出するビタビ復号機能と、
復号された画像データの複数に分割した矩形領域毎に当該画像データに関して統計計算されたデータとその矩形領域と対応付けされた矩形領域から抽出されたビタビ復号データとを照合してデータ改ざんの有無を検証する照合機能と、
を前記コンピュータに実行させることを特徴とする請求項4又は5記載の画像処理用プログラム。Decoding the code data, inverse quantization, and extension function for extending the image data in the reverse procedure including the process of wavelet inverse transform,
The code data convolution said embedded in the transform coefficients quantized, and Viterbi decoding function of extracting from among the code data as Viterbi decoded data,
For each rectangular area of the decoded image data, whether or not the data has been altered by collating data statistically calculated for the image data and Viterbi decoded data extracted from the rectangular area associated with the rectangular area A verification function to verify
6. The image processing program according to claim 4, wherein the computer is executed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003018247A JP4128461B2 (en) | 2003-01-28 | 2003-01-28 | Image processing apparatus, image processing program, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003018247A JP4128461B2 (en) | 2003-01-28 | 2003-01-28 | Image processing apparatus, image processing program, and storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004235682A JP2004235682A (en) | 2004-08-19 |
JP4128461B2 true JP4128461B2 (en) | 2008-07-30 |
Family
ID=32948433
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003018247A Expired - Fee Related JP4128461B2 (en) | 2003-01-28 | 2003-01-28 | Image processing apparatus, image processing program, and storage medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4128461B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4809198B2 (en) | 2006-11-29 | 2011-11-09 | 株式会社リコー | Image processing device, article image selection method, program, and recording medium |
CN112801847A (en) * | 2021-04-06 | 2021-05-14 | 王可 | Safety method capable of realizing mass chatting of big data pictures |
-
2003
- 2003-01-28 JP JP2003018247A patent/JP4128461B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004235682A (en) | 2004-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7502488B2 (en) | Image processing apparatus, program, and storage medium that can selectively vary embedding specification of digital watermark data | |
US8032758B2 (en) | Content authentication and recovery using digital watermarks | |
US6275599B1 (en) | Compressed image authentication and verification | |
US7548633B2 (en) | Data processing apparatus and method, data processing program, and storage medium | |
Chen et al. | Mean quantization based image watermarking | |
JP3960597B2 (en) | Code generation apparatus, image processing apparatus, code generation program, image processing program, and storage medium | |
EP1388813A2 (en) | Apparatus and method for image watermarking | |
JP2002325170A (en) | Image processing unit and its method, and program code, storage medium | |
JP2009518945A (en) | Watermark encoded content | |
JPH11341268A (en) | Method for inserting watermark to digital image or compressed digital image, digital image capturing device, computer system and method for detecting alteration of digital image with watermark | |
US7409060B2 (en) | Durable and undecipherable digital watermarking technique and detection of unauthorized use | |
US7092545B2 (en) | Apparatus and method for embedding and extracting a digital watermark based on a wavelet | |
JP2000115524A (en) | Electronic watermark inserting method for digital object | |
JP2000228721A (en) | Method for inserting watermark and authenticating digital signal | |
JP4128461B2 (en) | Image processing apparatus, image processing program, and storage medium | |
Xu et al. | JPEG compression immune steganography using wavelet transform | |
Korus et al. | A scheme for censorship of sensitive image content with high-quality reconstruction ability | |
JP2010109787A (en) | Electronic watermark embedding and detecting method utilizing degraded host signal | |
Fedoseev et al. | Watermarking algorithms for JPEG 2000 lossy compressed images | |
JP3780175B2 (en) | Image processing apparatus, image processing method, and storage medium | |
Rosales-Roldan et al. | Semi-fragile watermarking-based color image authentication with recovery capability | |
JP4106311B2 (en) | Information embedding device, encoding device, falsification detection device, method thereof, and recording medium recording program for executing the method | |
Lee et al. | Reversible data embedding for tamper-proof watermarks | |
JP4166457B2 (en) | Electronic watermark embedding device and electronic watermark detection device | |
Zain et al. | Reversible watermarking surviving jpeg compression |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20041008 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051116 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20051021 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060905 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071105 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071120 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080121 |
|
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: 20080415 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080514 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110523 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120523 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120523 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130523 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130523 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |