JP2007142823A - 復号化装置、逆量子化方法及びこれらのプログラム - Google Patents

復号化装置、逆量子化方法及びこれらのプログラム Download PDF

Info

Publication number
JP2007142823A
JP2007142823A JP2005334086A JP2005334086A JP2007142823A JP 2007142823 A JP2007142823 A JP 2007142823A JP 2005334086 A JP2005334086 A JP 2005334086A JP 2005334086 A JP2005334086 A JP 2005334086A JP 2007142823 A JP2007142823 A JP 2007142823A
Authority
JP
Japan
Prior art keywords
quantization
distribution information
value
quantization index
inverse
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.)
Granted
Application number
JP2005334086A
Other languages
English (en)
Other versions
JP4784281B2 (ja
Inventor
Shunichi Kimura
俊一 木村
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2005334086A priority Critical patent/JP4784281B2/ja
Priority to US11/500,946 priority patent/US8005306B2/en
Priority to KR20060092257A priority patent/KR100809409B1/ko
Priority to CNB2006101484892A priority patent/CN100551062C/zh
Publication of JP2007142823A publication Critical patent/JP2007142823A/ja
Application granted granted Critical
Publication of JP4784281B2 publication Critical patent/JP4784281B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/149Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder

Abstract

【課題】 有効ビット数が異なる複数の量子化インデクスから、より適切な逆量子化値を算出する復号化装置を提供する。
【解決手段】 復号化装置2は、量子化インデクスを示すビット列のビット打切り位置に関する情報に基づいて、量子化インデクスを複数のグループに分類し、それぞれのグループ毎に量子化インデクスの頻度分布を生成し、生成された量子化インデクスの頻度分布に基づいて、変換係数の頻度分布を推定し、推定された頻度分布と合致する分布で、逆量子化値を生成する。
【選択図】図8

Description

本発明は、符号化処理により生成された符号データを復号化する復号化装置に関する。特に、本発明は、データの量子化を伴う符号化処理により生成された符号データを、逆量子化を行うことにより復号化する復号化装置に関する。
例えば、非特許文献1は、JPEG2000標準を開示する。
ITU−T勧告 T.800
本発明は、上述した背景からなされたものであり、符号データをより適切に復号化する復号化装置を提供することを目的とする。
[復号化装置]
上記目的を達成するために、本発明にかかる復号化装置は、符号データに含まれる量子化インデクスを、複数のグループに分類する分類手段と、前記分類手段により分類された量子化インデクスに基づいて、それぞれのグループについて量子化インデクスの分布情報を生成する分布情報生成手段と、前記分布情報生成手段により生成された分布情報に基づいて、それぞれの量子化インデクスに対応する逆量子化値を生成する逆量子化値生成手段とを有する。
好適には、前記分類手段は、量子化インデクスを示すビット列の有効ビット長に基づいて、量子化インデクスを分類し、前記分布情報生成種段は、前記グループ毎に、量子化インデクスの分布情報を生成する。
好適には、前記分布情報生成手段は、前記分類手段により分類された量子化インデクス値に基づいて、グループ毎に量子化インデクス値の頻度分布情報を生成し、前記逆量子化値生成手段は、グループ毎に生成された頻度分布情報に基づいて、逆量子化値を生成する。
好適には、前記分布情報生成手段によりグループ毎に生成された複数の頻度分布情報に基づいて、1つの頻度分布情報を生成する分布情報合成手段をさらに有し、前記逆量子化値生成手段は、前記分布情報合成手段により生成された頻度分布情報に基づいて、逆量子化値を生成する。
好適には、前記分布情報合成手段は、それぞれのグループに属する量子化インデクスの量子化間隔に基づいて、グループ毎に生成された複数の頻度分布情報を統合して、1つの頻度分布情報を生成する。
好適には、前記分布情報合成手段は、それぞれのグループに対応する量子化間隔のうち、最も細かい量子化間隔に合わせるよう頻度分布情報を統合する。
好適には、入力される符号データはJPEG2000方式で符号化されたデータであり、前記分類手段は、符号データに含まれる量子化インデクスを、コードブロック毎に分類し、前記分布情報生成種段は、コードブロック毎に、量子化インデクスの分布情報を生成する。
好適には、前記分布情報生成手段によりグループ毎に生成された頻度分布情報の中から、処理対象となる量子化インデクスが属するグループの頻度分布情報を選択する分布情報選択手段をさらに有し、前記逆量子化値生成手段は、前記分布情報選択手段により選択された頻度分布情報を用いて、前記処理対象の量子化インデクスに対応する逆量子化値を生成する。
好適には、前記分類手段は、それぞれの量子化インデクスに対応する量子化間隔に基づいて、量子化インデクス値を分類し、前記分布情報生成種段は、前記グループ毎に、量子化インデクスの分布情報を生成する。
また、本発明にかかる復号化装置は、符号データに含まれる量子化インデクスの有効ビット数を判定する判定手段と、複数の量子化インデクスと、これらの量子化インデクスについて前記判定手段により判定された有効ビット数とに基づいて、それぞれの量子化インデクスに対応する逆量子化値を生成する逆量子化値生成手段とを有する。
[逆量子化方法]
また、本発明にかかる逆量子化方法は、符号データに含まれる量子化インデクスを、複数のグループに分類し、分類された量子化インデクスに基づいて、それぞれのグループについて量子化インデクスの分布情報を生成し、生成された分布情報に基づいて、それぞれの量子化インデクスに対応する逆量子化値を生成する。
[プログラム]
また、本発明にかかるプログラムは、符号データに含まれる量子化インデクスを、複数のグループに分類するステップと、分類された量子化インデクスに基づいて、それぞれのグループについて量子化インデクスの分布情報を生成するステップと、生成された分布情報に基づいて、それぞれの量子化インデクスに対応する逆量子化値を生成するステップとをコンピュータに実行させる。
本発明の復号化装置によれば、符号データをより適切に復号化することができる。
まず、本発明の理解を助けるために、その背景及び概略を説明する。
画像データ及び音声データなどは、データ量が膨大であるため、圧縮してデータ量を削減して保持、伝送等を行うことが一般的である。例えば、カラー原稿や写真を画像スキャナで電子化した場合に生成される多値画像データ、あるいは、ディジタルカメラで風景等の写真を撮った場合に生成される多値画像データは、JPEG2000等の非可逆符号化方式で圧縮することにより、より小さなデータ量とすることができる。
これらの非可逆符号化を行った場合、符号化歪が発生することが問題となっている。
そこで、非可逆符号化の符号化歪がどのようなメカニズムで発生するかを説明する。
図1は、JPEG2000方式などの変換符号化方式の概略を説明する図であり、図1(A)は、符号化処理の概略を示し、図1(B)は、復号化処理の概略を示す。
図2は、変換符号化方式における量子化処理を説明する図である。なお、図2に示された変換係数T(c,i,j)及び量子化インデクスQ(c,i,j)は、変数c,i,jの関数である。また、変数cは、変換係数の種類を示すインデクスであり、例えば、ウェーブレット変換であれば、1HH成分、1LH成分、1HL成分、2HH成分、2LH成分、2HL成分、・・・、NLL成分のいずれかを示す値である。また、変数i,jは、各変換係数の位置を示す変数であり、例えば、ウェーブレット変換であれば、c番目の変換係数の、上からi番目、左からj番目のデータがT(c,i,j)と表される。
図1(A)に示すように、変換符号化方式の符号化処理では、入力画像Gに対してウェーブレット変換などの変換処理が施されて、入力画像Gの変換係数Tが生成され、この変換係数Tは、さらに量子化されて、量子化インデクスQとなる。量子化インデクスQは、エントロピ符号化(可逆符号化)されて、圧縮符号Fとなる。
ここで、量子化インデクスとは、量子化値を識別するための情報である。また、量子化値とは、一定の範囲(量子化区間)にある数値群が縮退する値であり、図2に例示するように、量子化区間「A−2」〜「A2」それぞれを代表する離散的な値(本例では、「−2.5×D(c)」〜「2.5×D(c)」)である。
このように生成された符号データ(圧縮符号F)は、図1(B)に示すように、エントロピ復号されて、量子化インデクスQとなる。この量子化インデクスQは、符号化時の量子化インデクスQと同じものである。
さらに、量子化インデクスQは、逆量子化され、変換係数(すなわち、逆量子化値)Rとなり、この変換係数Rが逆変換され、復号画像Hが生成される。
ここで、逆量子化値とは、量子化インデクス又は量子化値に基づいて生成され、復号データの復号化に用いられる値であり、例えば、JPEG2000方式の変換係数(量子化インデクスに対応付けられた変換係数)である。
以上のプロセスにおいて、符号化歪が発生するのは、量子化を行う時である。元画像の変換係数Tと、量子化インデクスQとの精度を比較すると、一般に変換係数Tの精度が量子化インデクスQよりも高い。そのため、量子化インデクスQを用いて再現した変換係数Rは、もともとの変換係数Tとは異なったものとなる。これが符号化歪の原因である。
次に、図2を参照して、量子化及び逆量子化をより詳細に説明する。
量子化は、各変換係数c毎に用意された量子化ステップ幅D(c)を用いて行う。量子化ステップ幅Dは、変換係数の種類cの関数である。例えば、JPEG2000方式であれば、以下の式により、量子化インデクスQ及び逆量子化値Rを算出する。
Q(c,i,j)=sign(T(c,i,j))×floor(|T(c,i,j)|/D(c))
Q(c,i,j)>0である場合に、R(c,i,j)=(Q(c,i,j)+r)×D(c)
Q(c,i,j)<0である場合に、R(c,i,j)=(Q(c,i,j)-r)×D(c)
Q(c,i,j)=0である場合に、R(c,i,j)=0
ここで、sign()は、正負の符号を出力する関数、floorは、小数点以下を0とする関数、||は、絶対値を示す記号である。
また、rは、0から1までの範囲にある数値であり、図2では、典型的な値であるr=0.5を用いた場合を例示している。
なお、JPEG2000方式では下位ビットを符号化しない場合があるが、図2では、最下位ビットまで全て符号化する場合を具体例として説明する。
図2(A)に示すように、JPEG2000方法の符号化処理において、入力画像Gに対して変換処理を施して生成された変換係数T(量子化前)は、数直線x軸上に分布する。
変換係数Tが量子化区間A0に存在している場合には、量子化処理により、量子化インデクスQは、0となる。同様に、変換係数Tが量子化区間Aqに存在している場合には、量子化インデクスQは、qとなる。
そして、これを逆量子化する場合には、量子化インデクスQが0である場合には、逆量子化処理により、逆量子化値R=0が生成され、量子化インデクスQが1である場合には、逆量子化値R=1.5×D(c)が生成される。
このように、逆量子化処理がなされると、量子化インデクスQに1対1で対応する逆量子化値が生成される。
ここで、問題を単純化するために、量子化インデクスQがqとなる量子化区間Aq内のみに関して考察する。
変換係数Tは、量子化区間Aq内に存在しているとする。
図2(B)に例示するように、量子化区間Aqは、d1〜d2の範囲であるとする。このとき、元の変換係数Tは、d1〜d2の範囲に含まれる。また、この変換係数Tの逆量子化値はRであるとする。
この状況において、復号画像を生成するための変換係数は、逆量子化値Rである。しかしながら、原画像の変換係数Tは、d1〜d2の範囲のいずれかの値であり、逆量子化値Rであるとは限らない。このとき、元の変換係数Tと逆量子化値Rとの差分が生じる。この差分が符号化歪の原因である。
このように、非可逆符号化方式では、複数のデータ値(それぞれの量子化区間に存在する元データ値)を、1つの量子化値(それぞれの量子化区間に対応する量子化値)に縮退させることにより、非可逆なデータ圧縮を実現しているが、同時に、この量子化により符号化歪が生ずる。
このような符号化歪を小さくするためには、符号化時に圧縮効率を低くするようなパラメータを選択すればよい。
しかしながら、この場合には、符号化効率が低下し、データ量が多くなってしまうという問題点がある。
また、既に符号化されたデータを高画質化しようとする場合には、この圧縮効率を低下させるという方式を採用することはできない。
そこで、本実施形態における復号化装置2は、逆量子化値Rの頻度分布を、入力画像の変換係数Tの頻度分布にできるだけ近づけることによって、できるだけ入力画像に近い復号画像を生成する。
すなわち、JPEG2000方式等の標準技術では、逆量子化値の頻度分布が値Rの一点にのみ分布させていることになる。しかしながら、逆量子化値の頻度分布を、原画像の変換係数の頻度分布にできるだけ近づけることにより、よりよい復号化が実現される。
なぜなら、頻度分布が一致している場合に、原画像と復号画像が一致するとは限らないが、原画像と頻度分布が異なる復号画像と、原画像と頻度分布が近い復号画像とでは、頻度分布が近い復号画像のほうが原画像により近いと考えられるからである。実際に、文献(D. Heeger and J. Bergen, "Pyramid based texture analysis/synthesis," Computer Graphics, pp. 229-238, SIGGRAPH 95, 1995.)には、変換係数の頻度分布を合わせることによって、よく似たテクスチャを持つ画像を合成する手法が述べられている。
本実施形態における復号化装置2は、原画像と頻度分布が近い復号画像を生成することによって、より原画像に近いテクスチャを持つ復号画像を生成する。
例えば、以下に示す3通りの方法を用いて、元の変換係数の頻度分布に近い逆量子化値を生成する。
第1の方法では、復号化装置2は、量子化インデクス(又は、これに1対1で対応する逆量子化値)の頻度分布に基づいて変換係数の頻度分布を推定し、推定された頻度分布に基づいて、量子化インデクスに対応する逆量子化値を補正する。
量子化インデクス(又は、これに1対1で対応する逆量子化値)の頻度分布は、元の変換係数Tの頻度分布と近似していると考えられるため、量子化インデクス(又は、これに1対1で対応する逆量子化値)の頻度分布と、量子化インデクスの値に応じて生成された複数の逆量子化値の頻度分布とをできるだけ一致させることにより、より再現性の高い復号データが得られる。
第2の方法では、復号化装置2は、上記と同様に、量子化インデクス(又は、これに1対1で対応する逆量子化値)の頻度分布に基づいて変換係数の頻度分布を推定し、推定された頻度分布に対応する乱数を生成し、生成された乱数を用いて量子化インデクスに対応する逆量子化値を生成する。
この場合も、量子化インデクス(又は、これに1対1で対応する逆量子化値)の頻度分布と、量子化インデクスの値に応じて生成された複数の逆量子化値の頻度分布とをできるだけ一致させることができる。
第3の方法では、復号化装置2は、周囲にある量子化インデクス(又は、これに1対1で対応する逆量子化値)を参照して、処理対象である量子化インデクスに対応する逆量子化値を補正する。
互いに近接する量子化インデクス間では高い相関関係が見られるため、周囲の量子化インデクスを参照して注目量子化インデクスの逆量子化値を補正することにより、より再現性の高い復号データが得られる。
このように、上記3つの方法の少なくとも1つを適用することにより、より再現性の高い復号データを生成することが可能になる。
しかしながら、図2に示した例は、最下位ビットまで全て符号化する場合に相当するが、下位ビットを符号化しない場合もある。下位ビットが符号化されない場合、又は、下位ビットに相当する符号が切り捨てられた場合(以下、これらの場合を「打ち切り」と総称)、実質的な量子化間隔が異なってくる。
図3は、打切り位置が異なる場合の量子化間隔を例示する図であり、図3(A)は、最下位ビットまで存在する場合の量子化間隔を例示し、図3(B)は、最下位ビットのみを除外した場合の量子化間隔を例示する。
図3に例示するように、ビットの打切り位置が異なると、実質的な量子化間隔が異なる。
このように、下位ビットが打ち切られる場合もあるため、変換係数の頻度分布を推定する場合(上記第1及び第2の方法など)、又は、周囲画素の量子化インデクスを参照する場合(上記第3の方向など)には、量子化インデクスに対応する量子化間隔が異なりうる点に留意する必要がある。
そこで、本実施形態における復号化装置2は、打切り位置に関する情報に基づいて、量子化インデクスを複数のグループに分類し、それぞれのグループ毎に量子化インデクスの頻度分布を生成し、生成された量子化インデクスの頻度分布に基づいて、変換係数の頻度分布を推定する。
[打切り位置に応じた処理]
次に、打切り位置に応じた処理をより具体的に説明する。
本実施形態では、コードブロック毎に処理を独立させる点(要素1)と、打切り位置が異なる頻度分布を合成する点(要素2)と、周囲画素の量子化インデクスを適切に評価して注目画素の予備的な逆量子化値を算出する点(要素3)とが含まれている。なお、これらの要素1〜3は、それぞれ単独で適用されてもよく、また、任意の組合せで適用されてもよい。
まず、要素1について説明する。
JPEG2000方式の符号データにおいて、同一のコードブロックにおける同一種類の変換係数の量子化間隔が近似している。具体的には、打切り位置の差は、同一のコードブロック内であれば高々1ビットである。
そこで、本実施形態の復号化装置2は、コードブロック毎に処理を独立させる。具体的には、復号化装置2は、コードブロック毎に、量子化インデクスの頻度分布を生成する。また、量子化インデクスに対応する逆量子化値の算出も、コードブロック毎になされてもよい。
このように、コードブロック毎に処理を独立させると、打ち切られた下位ビット数Sの種類は、高々2となり、頻度分布の統合処理(後述)などが容易になる。
また、JPEG2000方式の復号処理は、コードブロック毎に行われるため、メモリ効率、復号化処理速度、実装の容易さの観点で都合がよい。特に、頻度分布(ヒストグラム)をコードブロック毎に作成すればよいため、符号全体のヒストグラムを取る必要がない点がよい。
また、コードブロック毎に統計(頻度分布)を取るため、画像の局所的な性質の変化に追従できる。
なお、本実施形態では、コードブロック内に打切り位置の異なる量子化インデクスが混在する場合(具体的には2種類)には、要素2によって量子化インデクスの頻度分布を統合するが、これに限定されるものではなく、例えば、2種類ある量子化間隔のうち、より大きなほうを採用してもよい。より具体的には、打切りビット数S及びS(S<S)である場合に、量子化インデクス全てをSビットだけ右シフトして全ての量子化インデクスの量子化間隔を統一し頻度分布を生成する。
次に、要素2について説明する。
量子化インデクスの量子化間隔が異なると、単純に量子化インデクスの出現頻度をカウントして頻度分布を作成することができない。また、上記のように、擬似的に量子化間隔を統一すると、頻度分布の精度が低下する。
そこで、本実施形態における復号化装置2は、量子化インデクスの打切り位置(又は、量子化間隔)に基づいて、量子化インデクスを複数のグループに分類し、分類されたグループ毎に、量子化インデクスの頻度分布を作成し、作成された複数の頻度分布を統合する。
本例では、コードブロック毎に処理を独立させるため、打切りビット数は2種類(S及びSとする)となる。そこで、本復号化装置2は、打切りビット数の種類(すなわち、有効ビット数の種類)に基づいて、コードブロックに含まれる量子化インデクスを2つに分類し、打切りビット数Sに対応するヒストグラムhと、打切りビット数Sに対応するヒストグラムhとを作成する。次に、復号化装置2は、ヒストグラムhとヒストグラムhとを、より狭い量子化間隔を基準として統合して、統合ヒストグラムhを生成する。具体的には、復号化装置2は、量子化間隔が大きい方のヒストグラムの各頻度値を、より量子化間隔の小さいヒストグラムの各量子化区間に振り分ける。頻度値の振分けは、振分け先の頻度値の比に応じてなされる。なお、振分け先の頻度値が0である場合には、振分け先の量子化区間の幅に応じた比で振分けがなされる。
次に、要素3について説明する。
上記第3の方法は、注目量子化インデクスに対応する逆量子化値と、この注目量子化インデクスの周囲にある量子化インデクスに対応する逆量子化値との差分を算出する必要がある。
しかしながら、図3に例示したように、打切り位置が異なると、同一の量子化インデクスに対応する逆量子化値が異なってくる。例えば、図3(A)の量子化インデクス「2」に対応する標準的な逆量子化値Rは、2.5×D(C)である。一方、図3(B)の量子化インデクス「2」に対応する逆量子化値Rは、3.0×D(c)である。
そこで、本実施形態における復号化装置2は、周囲にある量子化インデクスそのものを参照して、注目量子化インデクスに対応する逆量子化値を算出するのではなく、周囲量子化インデクスに対応する逆量子化値を参照して、注目量子化インデクスに対応する逆量子化値を算出する。
[実施形態]
以下、本発明の実施形態を説明する。
本実施形態では、JPEG2000方式により符号化された符号データを復号化する場合を具体例として説明する。なお、本実施形態で説明する復号化処理は、概略において、ITU-T勧告T.800に記載されているものと同様であるが、本発明にかかる逆量子化処理を適用する点で異なる。
[ハードウェア構成]
まず、本実施形態における復号化装置2のハードウェア構成を説明する。
図4は、本発明にかかる逆量子化方法が適応される復号化装置2のハードウェア構成を、制御装置20を中心に例示する図である。
図4に例示するように、復号化装置2は、CPU202及びメモリ204などを含む制御装置20、通信装置22、HDD・CD装置などの記録装置24、並びに、LCD表示装置あるいはCRT表示装置及びキーボード・タッチパネルなどを含むユーザインターフェース装置(UI装置)26から構成される。
復号化装置2は、例えば、復号化プログラム5(後述)がインストールされた汎用コンピュータであり、通信装置22又は記録装置24などを介して符号データを取得し、取得された符号データを復号化して出力する。
[復号化プログラム]
図5は、制御装置20(図4)により実行され、本発明にかかる逆量子化方法を実現する復号化プログラム5の機能構成を例示する図である。
図5に例示するように、復号化プログラム5は、エントロピ復号部40、逆量子化部50及び逆変換部60を有する。
また、逆量子化部50は、逆量子化値推定部500、分布推定部520、期待値推定部540、乱数発生部560、補正部580及び逆量子化値出力部590を含む。
復号化プログラム5において、エントロピ復号部40は、入力された符号データを、エントロピ復号化して、逆量子化部50に出力する。
本例のエントロピ復号部40は、入力された符号データを復号化して、量子化インデクスQを生成し、生成された量子化インデクスを逆量子化部50に出力する。
逆量子化部50は、エントロピ復号部40から入力された量子化インデスクに基づいて、逆量子化値を生成し、生成された逆量子化値を逆変換部60に出力する。
本例の逆量子化部50は、JPEG2000方式におけるコードブロック毎に、変換係数の分布を推定し、推定された分布に応じて、量子化インデクスに対応する逆量子化値を生成する。
逆変換部60は、逆量子化部50から入力された逆量子化値に基づいて、逆変換処理(離散ウェーブレット逆変換処理)を行い、復号画像を生成する。
逆量子化部50において、逆量子化値推定部500は、エントロピ復号部40から入力された量子化インデクスに基づいて、逆量子化値を推定し、推定した逆量子化値を補正部580に出力する。すなわち、逆量子化値推定部500は、1つの量子化インデクスに対して、常に単一の逆量子化値を生成するのではなく、1つの量子化インデクスに対して、互いに異なる複数の逆量子化値を生成しうる。換言すると、逆量子化値推定部500は、それぞれの量子化インデクスに対して、1つの逆量子化値を生成するが、入力される量子化インデクスの値が同一であったとしても、必ずしも同一の逆量子化値を生成するわけではない。
本例の逆量子化値推定部500は、注目ブロックの量子化インデクスと、注目ブロックの周囲にあるブロックの量子化インデクス(同じ変換係数種類cのものに限る)とに基づいて、注目ブロックの量子化インデクスに対応する逆量子化値Rの補正係数αを算出し、算出された補正係数αを補正部580に出力する。
なお、以下の説明において、各変換係数種類c及び各量子化インデクスqに対応する補正係数αを、αycqと記述する。また、変換係数種類c、かつ、各量子化インデクスがqとなる信号の数をKとし、それぞれの補正係数をαycq(k)として表す(ただし、k=1,2,...,K)。
分布推定部520は、エントロピ復号部40から入力される複数の量子化インデクス(又は、これらに対応付けられた逆量子化値)に基づいて、変換係数(元データ)の分布を推定し、推定された変換係数の分布を示す分布データを期待値推定部540及び乱数発生部560に出力する。
本例の分布推定部520は、変換係数種類c毎に、量子化インデクス値の頻度分布を算出し、算出された頻度分布に基づいて、変換係数種類c毎の分布データを生成する。
期待値推定部540は、分布推定部520から入力された分布データに基づいて、逆量子化値の期待値を算出し、算出された期待値と分布データとを補正部580に出力する。
より具体的には、期待値推定部540は、変換係数種類c毎に生成された分布データに基づいて、元データの確率密度関数の期待値を、量子化区間毎に算出する。
変換係数種類がcであり、かつ、量子化インデクスQ(c,i,j)=qである場合の期待値は、期待値をE(αTcq)とする。すなわち、期待値E(αTcq)は、量子化インデクスに1対1で対応付けられた逆量子化値Rと、この量子化インデクスに対応する元の変換係数Tとの差分の推定期待値である。
乱数発生部560は、分布推定部520から入力された分布データに応じて、乱数を生成し、生成された乱数を逆量子化値出力部590に出力する。
補正部580は、期待値推定部540から入力された分布データ又は期待値に応じて、逆量子化値推定部500から入力された逆量子化値(本例では、逆量子化値の補正係数α)を補正する。
また、補正部580は、逆量子化値推定部500から入力された逆量子化値(本例では、逆量子化値の補正係数α)を、既定の範囲(例えば、逆量子化値の場合に、量子化インデクスに対応する量子化区間)におさまるように補正し、補正された逆量子化値(補正係数α)を逆量子化値出力部590に出力する。
本例の補正部580は、期待値推定部540から入力された期待値に基づいて、分布推定部520により算出された量子化インデクスの頻度分布と、逆量子化値推定部500により算出された逆量子化値の頻度分布とを、変換係数種類c毎、及び、量子化区間毎に略一致するよう、逆量子化値推定部500から入力された補正係数αを補正し、補正された補正係数αを、さらに、JPEG2000方式において、Q(c,i,j)>0の時に、0≦r+α≦1を満たす範囲、Q(c,i,j)<0の時に、-1≦-r+α≦0を満たす範囲、Q(c,i,j)=0の時に、-1≦α≦1を満たす範囲に入るように線形補正する。
補正部580による線形補正は、例えば、同一の量子化インデクスに対応する補正係数αの中から、最大値αmax及び最小値αminを選択し、選択された最大値αmax及び最小値αminが既定の範囲におさまるように、これらの補正係数α全体を線形変換することにより実現される。
逆量子化値出力部590は、補正部580から入力された逆量子化値(本例では、逆量子化値の補正係数α)、又は、乱数発生部560から入力された乱数を用いて、適用すべき逆量子化値を決定し、決定された逆量子化値を逆変換部60に出力する。
本例の逆量子化値出力部590は、補正部580又は乱数発生部560から入力された補正係数αと、量子化インデクス(又はこれに対応付けられた逆量子化値)とに基づいて、逆量子化値を算出する。より具体的には、以下の式により、逆量子化値出力部590は、適用すべき逆量子化値Ry(c,i,j)を算出する。
Ry(c,i,j)={Q(c,i,j)+α(c,i,j)}×D(c)
すなわち、本例の復号化プログラム5は、乱数発生部560により発生させた乱数を逆量子化値そのものとして適用するのではなく、乱数発生部560により発生させた乱数を逆量子化値の補正係数αとして適用する。
[逆量子化値推定部]
図6は、逆量子化値推定部500(図5)をより詳細に説明する図である。
図6に例示するように、逆量子化値推定部500は、周辺信号抽出部502、差分演算部504、非相関信号除去部506及びフィルタ処理部508を含む。
逆量子化値推定部500において、周辺信号抽出部502は、処理対象である量子化インデクスQ(c,i,j)の周囲量子化インデクスQ(c,i+m,j+n)を抽出する(ただし、-M≦m≦M,-N≦n≦N)。なお、ここで抽出された周囲量子化インデクスは、(2M+1)×(2N+1)の行列となる。
差分演算部502は、周辺信号抽出部502により抽出されたそれぞれの周囲量子化インデクスQ(c,i+m,j+n)に対応する逆量子化値R(c,i+m,j+n)と、処理対象である量子化インデクスQ(c,i,j)に対応する逆量子化値R(c,i,j)との差分を算出する。量子化インデクスによって量子化間隔が異なる場合には、量子化インデクスの差分よりも逆量子化値の差分のほうが適切だからである。
本例の差分演算部502は、以下の演算を行って、差分値P(m,n)で構成された(2M+1)×(2N+1)の差分行列を作成する。
R(c,i,j)=(Q(c,i,j)+α×2S(c,i,j))×D(c,i,j)
P(m,n)={R(c,i+m,j+n)-R(c,i,j)}/D(c,i,j)
なお、S(c,i,j)は打切りビット数であり、D(c,i,j)は量子化間隔である。
非相関信号除去部504は、既定の閾値THを用いて、処理対象である量子化インデクスQ(c,i,j)との相関が少ない周囲量子化インデクスQ(c,i+m,j+n)を除去する。
より具体的には、非相関信号除去部504は、差分演算部502により周囲量子化インデクスQ(c,i+m,j+n)それぞれについて算出された差分が、閾値THよりも大きい場合には、相関が少ないものと判定して、この周囲量子化インデクスQ(c,i+m,j+n)を除去する。
本例の非相関信号除去部504は、差分演算部502により作成された差分行列において、差分値の絶対値|P(m,n)|が閾値THよりも大きい場合に、このP(m,n)=0とする。
閾値THは、例えば、1である。
フィルタ処理部508は、周辺信号抽出部502により抽出された周囲量子化インデクスQ(c,i+m,j+n)(ただし、非相関信号除去部504により除去された周囲量子化インデクスを除く)に基づいて、処理対象である量子化インデクスQ(c,i,j)の補正係数αを算出する。
より具体的には、フィルタ処理部508は、差分演算部504により算出された差分(非相関信号除去部504により除去されたものを除く)に基づいて、補正係数αを算出する。
本例のフィルタ処理部508は、(2M+1)×(2N+1)のフィルタカーネルK(m,n)を用意する。このフィルタカーネルKは、2次元の低域通過特性を持つフィルタであることが望ましい。
例えば、閾値TH=1、かつ、フィルタKの係数(中心を除く)が正の値である場合の演算結果を考察すると、正となる周囲量子化インデクスが多いときには、α値は、正の値を取る。また、正となる周囲量子化インデクスが多ければ多いほど、α値が大きな値を取る。負となる周囲量子化インデクスが多い場合も同様にα値が負となる。正負同数の場合には、α値の推定値は0となる。また、周囲量子化インデクスの値が注目量子化インデクスとかけ離れている場合には、α値の推定にその値を用いないことができる。
[分布推定部]
図7は、分布推定部520(図5)をより詳細に説明する図である。
図7に例示するように、分布推定部520は、ゼロ判定部522、非ゼロ変換係数分布推定部524及びゼロ変換係数分布推定部526を含む。また、非ゼロ変換係数分布推定部524は、分布判定部530を含む。
分布推定部520において、ゼロ判定部522は、エントロピ復号部40から入力された量子化インデクスを、この量子化インデスクに対応する元データの属性(例えば、変換係数の種類)に応じて分類し、それぞれの属性に分類された量子化インデクス群のみで元データの頻度分布が推定可能であるか否か(換言すると、他の属性に分類された量子化インデクス群との相関を利用して頻度分布を推定する必要があるか否か)を判定する。
本例のゼロ判定部522は、エントロピ復号部40から入力される量子化インデクスが、ゼロ変換係数に相当するか非ゼロ変換係数に相当するかを判定し、非ゼロ変換係数に相当すると判定された量子化インデクスを非ゼロ変換係数分布推定部524に出力し、ゼロ変換係数に相当すると判定された量子化インデクスについては、非ゼロ変換係数の分布を用いた分布推定処理を行うようゼロ変換係数分布推定部526に指示する。
ここで、非ゼロ変換係数とは、ある変換係数種類cの量子化インデクスのいずれかが0ではない変換係数である。また、ゼロ変換係数とは、ある変換係数種類cの全ての量子化インデクスが0である変換係数である。換言すると、ゼロ変換係数ではない変換係数が、非ゼロ変換係数である。
非ゼロ変換係数分布推定部524は、ゼロ判定部522から入力された量子化インデクスに基づいて、元データ(本例では、変換係数)の頻度分布を推定する。
より具体的には、非ゼロ変換係数分布推定部524は、同一の属性を有する量子化インデクス群(本例では、同一の変換係数cに対応する複数の量子化インデクス)の頻度分布を有効ビット長(打切り位置)毎に生成し、生成された量子化インデクスの頻度分布に基づいて、量子化インデクスの確率密度関数を作成する。この確率密度関数は、変換係数の確率密度関数と近似するものとして適用される。
本例では、分布判定部530が、ゼロ判定部522から入力された量子化インデクス(非ゼロ変換係数に対応する量子化インデクス)Q(c,i,j)のヒストグラムhc(q)を、コードブロック、変換係数種類c、及び打切り位置ごとに作成する。
例えば、分布判定部530は、量子化インデクスQ(c,i,j)の値がqである場合に、ht(c,q,i,j)=1、上記以外の場合に、ht(c,q,i,j)=0となる関数を定義して、以下の式によりヒストグラムhc(q)を作成する。
Figure 2007142823
次に、本例の非ゼロ変換係数分布推定部524は、分布判定部530により作成されたヒストグラムhc(q)をラプラス分布で近似し、このラプラス関数を変換係数Tの分布関数とする。
ラプラス分布の式は以下で表すことができる。
Figure 2007142823
非ゼロ変換係数分布推定部524は、上式のσを算出することにより、変換係数Tの分布関数を得ることができる。
まず、非ゼロ変換係数分布推定部524は、作成されたヒストグラムhc(q)を量子化区間の幅D(c)及び量子化インデクスの総数で正規化して、確率密度関数fhc(x)に変換する。具体的には、以下の式により、非ゼロ変換係数分布推定部524は、ヒストグラムhc(q)を確率密度関数fhc(x)に変換する。
Figure 2007142823
ただし、(q-0.5)×D(c)<;x≦(q+0.5)×D(c)
次に、非ゼロ変換係数分布推定部524は、ヒストグラムhc(q)を近似するラプラス関数を算出する。
なお、乱数発生部560は、量子化インデクスが0の場合に、この標準偏差σのラプラス分布の乱数を発生させて、逆量子化値とする。
ゼロ変換係数分布推定部526は、ゼロ判定部522からの指示に応じて、非ゼロ変換係数分布推定部524により推定された他の変換係数(非ゼロ変換係数)の頻度分布に基づいて、ゼロ変換係数の頻度分布を推定する。
すなわち、非ゼロ変換係数分布推定部524は、ヒストグラムが意味のある形状を持つ場合にのみ分布の推定が可能であるが、全ての頻度値が0となるヒストグラムが作成される場合には、分布の形状を推定することができない。
そこで、ゼロ変換係数分布推定部526は、既に求めた他の分布データ(本例では、σ値)を用いて、変換係数種類cの全ての量子化インデクスが0となる場合のラプラス分布の形状を推定する。
具体的には、ゼロ変換係数分布推定部526は、非ゼロ変換係数分布推定部524により算出された標準偏差σ(x,y)を、2次元の指数関数で近似する。すなわち、σ(x,y)=Cexp(-ax-by)とする。
ゼロ変換係数分布推定部526は、σ(x,y)=Cexp(-ax-by)におけるパラメータC,a,bを算出して、近似関数σ(x,y)を決定し、決定された近似関数σ(x,y)を用いて、ゼロ変換係数に相当するσ値を算出する。
図8は、分布判定部530(図7)をより詳細に説明する図である。
図8に例示するように、分布判定部530は、有効桁判定部532、頻度情報生成部534、及び頻度情報統合部536を含む。
分布判定部530において、有効桁判定部532は、量子化インデクスを示すビット列の有効ビット長を判定し、判定された有効ビット長に基づいて、入力される量子化インデクスを分類する。
本例では、コードブロック毎に量子化インデクスが入力されるため、有効桁判定部532は、2種類の有効ビット長(打切り位置)のうち、いずれの量子化インデクスであるかを判定し、判定結果に基づいて、コードブロックに含まれる量子化インデクスを、打切りビット数Sのグループと、打切りビット数Sのグループとに分類する。
頻度情報生成部534は、有効桁判定部532により分類された量子化インデクスに基づいて、分類毎に、量子化インデクス値の頻度分布情報を生成する。
本例の頻度情報生成部534は、打切りビット数Sのグループと、打切りビット数Sのグループとについて、それぞれヒストグラム(頻度分布情報)を作成する。
頻度情報統合部536は、頻度情報生成部534により生成された頻度分布情報を統合する。
本例の頻度情報統合部536は、打切りビット数Sのヒストグラムと、打切りビット数Sのヒストグラムとを、最も細かい量子化間隔に合わせるように統合する。なお、以下の説明において、SがSよりも小さい場合(すなわち、Sのグループの量子化間隔が、Sのグループよりも狭い場合)を具体例として説明する。
図9は、頻度情報統合部536によるヒストグラムの統合方法を例示する図である。
図9(A)に例示するように、打切りビット数Sのヒストグラムhが、打切りビット数Sのヒストグラムhよりも狭い量子化間隔を有する場合には、頻度情報統合部536は、より広い量子化間隔を有するSの頻度値hを分割して、最も量子化間隔が狭いSのヒストグラムhに分配する。以下、このように分配される頻度値を分配値とよぶ。
本例の頻度情報統合部536は、図9(B)に例示するように、分配先の頻度値(本例では、Sの各量子化区間の頻度値)に比例するように、Sの頻度値hを分割して、各分配値を決定する。
なお、分配先の頻度値が全て0である場合には、頻度情報統合部536は、分配先の量子化区間の幅(量子化間隔)に比例するように、分配元(S)の頻度値hを分割して、分配値を算出する。
そして、頻度情報統合部536は、図9(C)に例示するように、各分配値を、分配先のヒストグラムhに加算して、統合されたヒストグラムhを作成する。
[補正部]
図10は、補正部580(図5)をより詳細に説明する図である。
図10に例示するように、補正部580は、分布情報特定部582、期待値シフト部584及び期待値補正部586を含む。
補正部580において、分布情報特定部582は、逆量子化値推定部500から入力された逆量子化値(本例では、補正係数α)の平均値、最小値及び最大値を、変換係数種類毎及び量子化インデクス値毎に算出し、算出された平均値、最小値及び最大値を、入力された逆量子化値と共に期待値シフト部584に出力する。
以下、分布情報特定部582により算出された平均値、最小値、及び、最大値は、平均値αycqMean、最大値αycqMin、及び、最小値αycqMaxとして表す。これらの値は、変換係数種類c及び量子化インデクス値qのそれぞれの組合せついて算出され、以下に説明する期待値シフト部584及び期待値補正部586の処理も、変換係数種類c及び量子化インデクス値qの組合せそれぞれについてなされる。
期待値シフト部584は、分布情報特定部582から入力された補正係数αycq(k)及び補正係数の平均値αycqMeanと、期待値推定部540から入力された期待値E(αTcq)とを用いて、以下の演算を行って、シフト補正後の補正係数αxcq1(k)を算出する。
αxcq1(k)=αycq(k)+E(αTcq)-αycqMean
上記の処理は、k=1,2,...,Kに対して行われる。
また、期待値シフト部584は、同様に、最大値及び最小値もシフトする。
すなわち、期待値シフト部584は、以下の演算を行って、シフト補正後の最小値αycqMin1及び最大値αycqMax1を算出する。
αycqMin1=αxcqMin + E(αTcq) -αycqMean
αycqMax1=αxcqMax + E(αTcq) -αycqMean
期待値補正部586は、シフト補正後の補正係数αxcq1(k)が全て既定の範囲におさまるように範囲補正を行う。ここで、範囲補正とは、数値群を一定の範囲に収める補正をいう。
具体的には、期待値補正部586は、シフト補正後の補正係数αxcq1の平均値を変化させずに、これらの補正係数の範囲を一定の範囲(αmin〜αmax)とする。
以上の範囲補正により、期待値補正部586は、範囲補正後の補正係数αxcq2(k)を得る。
図11は、期待値シフト部584及び期待値補正部586による補正を模式的に説明する図である。
図11(A)に示すように、期待値シフト部584は、変換係数Tの推定期待値(a1)と、逆量子化値の期待値(a2)とが一致するように、逆量子化値の分布をシフトする(a3)。
また、図11(B)に示すように、逆量子化値(本例では、補正係数α)の分布が、量子化区間d1〜d2(本例では、αの範囲αmin〜αmax)から外れる場合(b1)に、期待値補正部586は、逆量子化値(補正係数α)の期待値を動かさないように、分布を期待値に向かって小さくする(b2)。
なお、本例では、期待値シフト部584及び期待値補正部586が別々に補正処理を行っているが、これらの補正処理を1つの補正処理に統合してもよい。
[全体動作]
次に、復号化装置2(復号化プログラム5)の全体動作を説明する。
図12は、復号化プログラム5(図5)による復号化処理(S10)のフローチャートである。なお、本例では、画像データの符号データ(JPEG2000方式)が入力される場合を具体例として説明する。
図12に示すように、ステップ100(S100)において、エントロピ復号部40(図5)は、入力された符号データを復号化して、量子化インデクスを生成し、生成された各ブロックの量子化インデクスを逆量子化部50に出力する。
ステップ105(S105)において、逆量子化部50は、エントロピ復号部40から入力された量子化インデクスをコードブロック毎に分割し、処理対象とすべき注目コードブロックを設定する。
逆量子化部50は、設定された注目コードブロックについてS110〜S155の処理を行う。
ステップ110(S110)において、分布推定部520は、注目コードブロックに含まれる複数の量子化インデクスに基づいて、変換係数Tの分布を、変換係数種類及び打切りビット位置毎に推定する。
具体的には、有効桁判定部532は、注目コードブロックに含まれる量子化インデクスを、打切りビット数Sの量子化インデクスと、打切りビット数Sの量子化インデクスとに分類する。
頻度情報生成部534は、打切りビット数Sの量子化インデクスと、打切りビット数Sの量子化インデクスとについて、それぞれヒストグラムを作成する。
頻度情報統合部538は、作成された2つのヒストグラムを、図9に例示するように統合してヒストグラムhを作成する。
非ゼロ変換係数分布推定部524は、分布推定部520により作成されたヒストグラムhを近似するラプラス関数L(すなわち、σ値)を算出する。
また、ゼロ変換係数分布推定部526は、非ゼロ変換係数分布推定部524により算出された頻度分布を指数関数で近似し、この指数関数を用いて、ゼロ変換係数の頻度分布(すなわち、σ値)を推定する。
ステップ115(S115)において、逆量子化部50(図5)は、注目コードブロックに含まれる量子化インデクスを順に、注目量子化インデクスに設定する。
逆量子化値推定部500(図5)は、注目量子化インデクスQ(c,i,j)の周囲量子化インデクスQ(c,i+m,j+n)を抽出する(本例では、-1≦m≦1,-1≦n≦1)。なお、抽出される周囲量子化インデクスは、注目ブロックを中心とした3×3個のブロックにおける、同一の変換係数種類cに対応する量子化インデクス値であり、3×3の行列となる。
ステップ120(S120)において、逆量子化値推定部500は、抽出された周囲量子化インデクスと、注目量子化インデクスとを用いて、差分行列Pを作成する。
次に、逆量子化値推定部500は、差分行列Pに含まれる各差分値の絶対値|P(m,n)|と、閾値TH(例えば、1)とを比較して、閾値THよりも大きな差分値P(m,n)を0にする(閾値処理)。すなわち、逆量子化値推定部500は、注目量子化インデクス値との差分が閾値よりも大きい周囲量子化インデクス値を非相関信号として除去する。
ステップ125(S125)において、逆量子化部50(図5)は、注目量子化インデクスについて、逆量子化値の推定が可能であるか否かを判定する。
具体的には、逆量子化部50は、注目量子化インデクスと、閾値処理が施された差分行列Pの全成分が0である場合(例えば、全ての差分値Pが非相関信号として除去された場合など)に、逆量子化値の推定が不可能であると判定し、これ以外の場合に、逆量子化値の推定が可能であると判定する。
逆量子化部50は、逆量子化値の推定(本例では、補正係数αの推定)が可能であると判定された場合に、S130の処理に移行し、上記推定が不可能であると判定された場合に、S135の処理に移行する。
ステップ130(S130)において、逆量子化値推定部500は、低域通過特性を有する3×3のフィルタカーネルK(m,n)を用いて、閾値処理がなされた差分行列Pに対してコンボリューション演算を行い、補正係数αycqを算出する。したがって、注目量子化インデクスの値が同一であっても、その周囲に存在する周囲量子化インデスクが異なれば、算出される補正係数αycqは、互いに異なった値をとる。
ステップ135(S135)において、乱数発生部560は、注目量子化インデクスについて、分布推定部520から入力された分布データに応じた乱数を生成し、生成された乱数を補正係数αとして逆量子化値出力部590に出力する。
具体的には、乱数発生部560は、非ゼロ変換係数分布推定部524及びゼロ変換係数分布推定部526により推定された分布のうち、注目量子化インデクスに対応する分布を選択し、選択された分布に合致した乱数を発生させて、この乱数を補正係数αとして逆量子化値出力部590に出力する。
ステップ140(S140)において、逆量子化部50は、注目コードブロックに含まれる全ての量子化インデクスについて、補正係数αが生成されたか否かを判定し、全ての量子化インデクスについて補正係数αが生成された場合に、S145の処理に移行し、これ以外の場合に、S115の処理に戻って、次の量子化インデクスを注目量子化インデクスとして処理する。
ステップ145(S145)において、期待値推定部540は、分布推定部520から入力された分布データに基づいて、変換係数種類及び量子化インデクスの組合せ毎に、確率密度関数の期待値E(αTcq)を算出し、算出された期待値E(αTcq)を補正部580に出力する。
ステップ150(S150)において、補正部580は、逆量子化値推定部500により算出された補正係数αを、変換係数種類毎及び量子化インデクス毎に分類し、分類された補正係数αの最小値、最大値及び平均値を算出する。
補正部580は、次に、期待値推定部540から入力された期待値E(αTcq)と、算出された平均値とを、変換係数種類と量子化インデクスとの組合せ毎に比較して、これらが一致するように、変換係数種類及び量子化インデクスの組合せで分類された補正係数αycq群をシフトする(シフト補正)。
さらに、補正部580は、シフト補正がなされた補正係数α群が既定の範囲におさまっているか否かを判定し、おさまっていない場合に、補正係数αycq群の平均値を変更せずに、補正係数αycq群の範囲を既定の範囲におさめる範囲補正を行う。
ステップ155(S155)において、逆量子化値出力部590(図5)は、注目量子化インデクスQと、補正部580から入力された補正係数α又は乱数発生部560から入力された補正係数αとに基づいて、適用すべき逆量子化値Ryを算出し、算出された逆量子化値Ryを逆変換部60に出力する。
具体的には、本例の逆量子化値出力部590は、以下の演算を行って逆量子化値Ryを算出する。
Ry(c,i,j)={Q(c,i,j)+α(c,i,j)}×D(c)
ステップ160(S160)において、逆量子化部50は、符号データに含まれる全てのコードブロックについて、逆量子化値が算出されたか否かを判定し、全てのコードブロックについて逆量子化値が算出された場合に、S165の処理に移行し、これ以外の場合に、S105の処理に戻って、次のコードブロックを注目コードブロックに設定する。
ステップ165(S165)において、逆変換部60(図5)は、逆量子化部50から入力された逆量子化値(近似的な変換係数)を用いて、逆変換処理(本例では逆ウェーブレット変換)を行って、復号画像Hを生成する。
以上説明したように、本実施形態における復号化装置2は、量子化インデクスに基づいて、変換係数の分布を推定し、推定された分布に合致した乱数を発生させて、この乱数に基づいて逆量子化値を生成する。
これにより、逆量子化値の頻度分布が、変換係数の頻度分布とより近くなるため、より再現性の高い復号画像が期待できる。
[変形例1]
上記実施形態では、量子化間隔が広い方の量子化区間の境界が他方の量子化区間の境界と一致する場合を具体例として説明したが、図13(A)に例示するように、一致しない場合もある。
そこで、第1の変形例では、量子化区間の境界が一致しない場合の頻度値の分配方法を説明する。
本変形例の頻度情報統合部536は、図13(A)に例示するように量子化区間の境界が一致しない場合に、量子化区間の重なり度合いに応じて、頻度値(ヒストグラムh)を分配する。
具体的には、頻度情報統合部536は、量子化区間の重なり率r(例えば、r(m)=(量子化区間D1と量子化区間D2との重なり合う区間長)/(量子化区間D1の区間長)、r(m+1)=1)に応じて、図13(B)に例示する式によって、重なりあった領域(本図ではD2)における統合後のヒストグラムを作成する。
[変形例2]
上記実施形態では、量子化インデクスの有効ビット長(打切り位置)毎にヒストグラムが作成され、これらのヒストグラムが統合されているが、これに限定されるものではなく、第2の変形例における頻度情報統合部536(分布情報選択手段)は、量子化インデクスの有効ビット長(打切り位置)毎に作成された複数のヒストグラム(頻度分布情報)のうち、処理対象となる量子化インデクスの有効ビット長に対応するヒストグラムを選択して適用する。
[変形例3]
上記実施形態では、逆量子化値が量子化間隔によって異なるため、逆量子化値推定部500は、周囲の量子化インデクスに対応する逆量子化値を算出してから、算出された周囲の逆量子化値を用いて、注目量子化インデクスに対応する逆量子化値を算出している、そのため、演算負荷が大きくなる。
そこで、第3の変形例における逆量子化値推定部500は、量子化間隔を最も広いものに揃えて、周囲の量子化インデクスそのものを用いて、注目量子化インデクスに対応する逆量子化値(又は、補正係数α)を算出する。
具体的には、逆量子化値推定部500は、打ち切られたビット数のうち、最大のビット数だけ、コードブロックに含まれる全量子化インデクスを右にビットシフトして、コードブロックに含まれる量子化インデクスに対応する量子化間隔を統一する。
次に、逆量子化値推定部500は、以下の演算を行って、差分値P(m,n)で構成された(2M+1)×(2N+1)の差分行列を作成する。
P(m,n)=Q(c,i+m,j+n)-Q(c,i,j)
そして、逆量子化値推定部500は、非相関信号除去部504による非相関信号の除去等を行った後に、フィルタカーネルkを用いて、注目量子化インデクスQ(c,i,j)の補正係数αを算出する。
このように、第3の変形例では、周囲量子化インデクスに対応する逆量子化値を算出する必要がないため、高速な処理が可能になる。
[その他の変形例]
また、上記実施形態では、コードブロック毎に逆量子化処理を独立させているため、量子化インデクスの有効ビット数は高々2種類であったが、3種類以上の有効ビット数が存在する場合にも同様にヒストグラムの統合などを行うことができる。この場合にも、上記実施形態と同様に、いずれかの量子化間隔を基準として、この基準となるヒストグラムに対して、他のヒストグラムの頻度値を分配することにより、ヒストグラムの統合を行う。 また、上記実施形態では、複数種類の有効ビット数が存在する場合には、最も量子化間隔の狭いヒストグラムを基準としているが、最も量子化間隔の広いヒストグラムを基準としてもよい。この場合には、最大の打切りビット数だけ、量子化インデクスを右ビットシフトすることにより、量子化間隔を統一することができるため、ヒストグラムの統合が容易になる。
JPEG2000方式などの変換符号化方式の概略を説明する図である。 変換符号化方式における量子化処理を説明する図である。 打切り位置が異なる場合の量子化間隔を例示する図であり、(A)は、最下位ビットまで存在する場合の量子化間隔を例示し、(B)は、最下位ビットのみを除外した場合の量子化間隔を例示する。 本発明にかかる逆量子化方法が適応される復号化装置2のハードウェア構成を、制御装置20を中心に例示する図である。 制御装置20(図4)により実行され、本発明にかかる逆量子化方法を実現する復号化プログラム5の機能構成を例示する図である。 逆量子化値推定部500(図5)をより詳細に説明する図である。 分布推定部520(図5)をより詳細に説明する図である。 分布判定部530(図7)をより詳細に説明する図である。 頻度情報統合部536によるヒストグラムの統合方法を例示する図である。 補正部580(図5)をより詳細に説明する図である。 期待値シフト部584及び期待値補正部586による補正を模式的に説明する図である。 復号化プログラム5(図5)による復号化処理(S10)のフローチャートである。 量子化区間の境界が一致しない場合の頻度値分配方法を説明する図である。
符号の説明
2・・・復号化装置
5・・・復号化プログラム
40・・・エントロピ復号部
50・・・逆量子化部
500・・・逆量子化値推定部
520・・・分布推定部
522・・・ゼロ判定部
524・・・非ゼロ変換係数分布推定部
526・・・ゼロ変換係数分布推定部
530・・・分布判定部
532・・・有効桁判定部
534・・・頻度情報生成部
536・・・頻度情報統合部
540・・・期待値推定部
560・・・乱数発生部
580・・・補正部
590・・・逆量子化値出力部
60・・・逆変換部

Claims (12)

  1. 符号データに含まれる量子化インデクスを、複数のグループに分類する分類手段と、
    前記分類手段により分類された量子化インデクスに基づいて、それぞれのグループについて量子化インデクスの分布情報を生成する分布情報生成手段と、
    前記分布情報生成手段により生成された分布情報に基づいて、それぞれの量子化インデクスに対応する逆量子化値を生成する逆量子化値生成手段と
    を有する復号化装置。
  2. 前記分類手段は、量子化インデクスを示すビット列の有効ビット長に基づいて、量子化インデクスを分類し、
    前記分布情報生成種段は、前記グループ毎に、量子化インデクスの分布情報を生成する
    請求項1に記載の復号化装置。
  3. 前記分布情報生成手段は、前記分類手段により分類された量子化インデクス値に基づいて、グループ毎に量子化インデクス値の頻度分布情報を生成し、
    前記逆量子化値生成手段は、グループ毎に生成された頻度分布情報に基づいて、逆量子化値を生成する
    請求項2に記載の復号化装置。
  4. 前記分布情報生成手段によりグループ毎に生成された複数の頻度分布情報に基づいて、1つの頻度分布情報を生成する分布情報合成手段
    をさらに有し、
    前記逆量子化値生成手段は、前記分布情報合成手段により生成された頻度分布情報に基づいて、逆量子化値を生成する
    請求項3に記載の復号化装置。
  5. 前記分布情報合成手段は、それぞれのグループに属する量子化インデクスの量子化間隔に基づいて、グループ毎に生成された複数の頻度分布情報を統合して、1つの頻度分布情報を生成する
    請求項4に記載の復号化装置。
  6. 前記分布情報合成手段は、それぞれのグループに対応する量子化間隔のうち、最も細かい量子化間隔に合わせるよう頻度分布情報を統合する
    請求項5に記載の復号化装置。
  7. 入力される符号データはJPEG2000方式で符号化されたデータであり、
    前記分類手段は、符号データに含まれる量子化インデクスを、コードブロック毎に分類し、
    前記分布情報生成種段は、コードブロック毎に、量子化インデクスの分布情報を生成する
    請求項1に記載の復号化装置。
  8. 前記分布情報生成手段によりグループ毎に生成された頻度分布情報の中から、処理対象となる量子化インデクスが属するグループの頻度分布情報を選択する分布情報選択手段
    をさらに有し、
    前記逆量子化値生成手段は、前記分布情報選択手段により選択された頻度分布情報を用いて、前記処理対象の量子化インデクスに対応する逆量子化値を生成する
    請求項3に記載の復号化装置。
  9. 前記分類手段は、それぞれの量子化インデクスに対応する量子化間隔に基づいて、量子化インデクス値を分類し、
    前記分布情報生成種段は、前記グループ毎に、量子化インデクスの分布情報を生成する
    請求項1に記載の復号化装置。
  10. 符号データに含まれる量子化インデクスの有効ビット数を判定する判定手段と、
    複数の量子化インデクスと、これらの量子化インデクスについて前記判定手段により判定された有効ビット数とに基づいて、それぞれの量子化インデクスに対応する逆量子化値を生成する逆量子化値生成手段と
    を有する復号化装置。
  11. 符号データに含まれる量子化インデクスを、複数のグループに分類し、
    分類された量子化インデクスに基づいて、それぞれのグループについて量子化インデクスの分布情報を生成し、
    生成された分布情報に基づいて、それぞれの量子化インデクスに対応する逆量子化値を生成する
    逆量子化方法。
  12. 符号データに含まれる量子化インデクスを、複数のグループに分類するステップと、
    分類された量子化インデクスに基づいて、それぞれのグループについて量子化インデクスの分布情報を生成するステップと、
    生成された分布情報に基づいて、それぞれの量子化インデクスに対応する逆量子化値を生成するステップと
    をコンピュータに実行させるプログラム。
JP2005334086A 2005-11-18 2005-11-18 復号化装置、逆量子化方法及びこれらのプログラム Expired - Fee Related JP4784281B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2005334086A JP4784281B2 (ja) 2005-11-18 2005-11-18 復号化装置、逆量子化方法及びこれらのプログラム
US11/500,946 US8005306B2 (en) 2005-11-18 2006-08-09 Decoding apparatus, inverse quantization method, and computer readable medium
KR20060092257A KR100809409B1 (ko) 2005-11-18 2006-09-22 복호화 장치, 역양자화 방법 및 이들의 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체
CNB2006101484892A CN100551062C (zh) 2005-11-18 2006-11-17 解码装置、逆量化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005334086A JP4784281B2 (ja) 2005-11-18 2005-11-18 復号化装置、逆量子化方法及びこれらのプログラム

Publications (2)

Publication Number Publication Date
JP2007142823A true JP2007142823A (ja) 2007-06-07
JP4784281B2 JP4784281B2 (ja) 2011-10-05

Family

ID=38053613

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005334086A Expired - Fee Related JP4784281B2 (ja) 2005-11-18 2005-11-18 復号化装置、逆量子化方法及びこれらのプログラム

Country Status (4)

Country Link
US (1) US8005306B2 (ja)
JP (1) JP4784281B2 (ja)
KR (1) KR100809409B1 (ja)
CN (1) CN100551062C (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010074068A1 (ja) * 2008-12-26 2010-07-01 日本電気株式会社 逆量子化方法、逆量子化装置及びプログラム
US20210144381A1 (en) * 2018-05-10 2021-05-13 Sharp Kabushiki Kaisha Systems and methods for performing binary arithmetic coding in video coding
US20230024560A1 (en) * 2018-05-10 2023-01-26 Sharp Kabushiki Kaisha Systems and methods for performing binary arithmetic coding in video coding

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8170101B2 (en) * 2006-10-27 2012-05-01 Sharp Laboratories Of America, Inc. Methods and systems for low-complexity data compression
US8150187B1 (en) * 2007-11-29 2012-04-03 Lsi Corporation Baseband signal quantizer estimation
KR101518237B1 (ko) * 2008-09-01 2015-05-15 삼성전자주식회사 영상의 역양자화 방법 및 장치, 복호화 방법 및 장치
CN107018424B (zh) * 2011-05-20 2020-06-09 索尼公司 图像处理装置和图像处理方法
JP2013029953A (ja) * 2011-07-28 2013-02-07 Sony Corp 画像処理装置および方法
US8938041B2 (en) * 2012-12-18 2015-01-20 Intel Corporation Techniques for managing interference in multiple channel communications system
US11475600B2 (en) * 2017-07-10 2022-10-18 Intopix S.A. Method and device for digital data compression

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0818961A (ja) * 1994-06-28 1996-01-19 Sony Corp ディジタル画像信号の受信/再生装置
JPH09200760A (ja) * 1995-11-01 1997-07-31 Samsung Electron Co Ltd 映像符号化装置における量子化間隔決定方法及び回路
JP2000137820A (ja) * 1998-10-30 2000-05-16 Sony Corp 画像処理装置および方法、並びに提供媒体
JP2001136526A (ja) * 1999-11-05 2001-05-18 Canon Inc 画像処理方法及びその装置及び記憶媒体

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5778102A (en) * 1995-05-17 1998-07-07 The Regents Of The University Of California, Office Of Technology Transfer Compression embedding
AUPP248498A0 (en) * 1998-03-20 1998-04-23 Canon Kabushiki Kaisha A method and apparatus for encoding and decoding an image
WO2000021298A1 (en) * 1998-10-06 2000-04-13 Sony Corporation Encoding device and method, decoding device and method, and recording medium
US6301368B1 (en) * 1999-01-29 2001-10-09 International Business Machines Corporation System and method for data hiding in compressed fingerprint images
US6778709B1 (en) * 1999-03-12 2004-08-17 Hewlett-Packard Development Company, L.P. Embedded block coding with optimized truncation
EP1164543B1 (en) * 2000-06-14 2017-08-09 Panasonic Intellectual Property Corporation of America Digital information embedding/extracting
JP4002502B2 (ja) * 2001-11-27 2007-11-07 三星電子株式会社 座標インタポレータの符号化/復号化装置及びその方法
JP3932110B2 (ja) * 2002-04-23 2007-06-20 シャープ株式会社 画像処理装置、画像処理システム、電子情報機器、画像処理方法、制御プログラムおよび可読記録媒体
US7760950B2 (en) * 2002-09-26 2010-07-20 Ntt Docomo, Inc. Low complexity and unified transforms for video coding
AU2003301737A1 (en) * 2002-10-31 2004-05-25 Electronics And Telecommunications Research Institute Non-linear quantization and similarity matching methods for retrieving video sequence having a set of image frames
KR101037931B1 (ko) * 2004-05-13 2011-05-30 삼성전자주식회사 2차원 데이터 처리를 이용한 음성 신호 압축 및 복원장치와 그 방법
RU2372660C2 (ru) * 2004-11-24 2009-11-10 Томсон Лайсенсинг Способ имитации зернистости пленки для использования в медиа устройствах воспроизведения
JP4645948B2 (ja) * 2005-03-18 2011-03-09 富士ゼロックス株式会社 復号化装置及びプログラム
KR100622305B1 (ko) * 2005-09-28 2006-09-14 삼성전자주식회사 동영상 복호화 방법과 그 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0818961A (ja) * 1994-06-28 1996-01-19 Sony Corp ディジタル画像信号の受信/再生装置
JPH09200760A (ja) * 1995-11-01 1997-07-31 Samsung Electron Co Ltd 映像符号化装置における量子化間隔決定方法及び回路
JP2000137820A (ja) * 1998-10-30 2000-05-16 Sony Corp 画像処理装置および方法、並びに提供媒体
JP2001136526A (ja) * 1999-11-05 2001-05-18 Canon Inc 画像処理方法及びその装置及び記憶媒体

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010074068A1 (ja) * 2008-12-26 2010-07-01 日本電気株式会社 逆量子化方法、逆量子化装置及びプログラム
US9240802B2 (en) 2008-12-26 2016-01-19 Nec Corporation Inverse quantization method, inverse quantization device, and program
US20210144381A1 (en) * 2018-05-10 2021-05-13 Sharp Kabushiki Kaisha Systems and methods for performing binary arithmetic coding in video coding
US11503299B2 (en) * 2018-05-10 2022-11-15 Sharp Kabushiki Kaisha Systems and methods for performing binary arithmetic coding in video coding
US20230024560A1 (en) * 2018-05-10 2023-01-26 Sharp Kabushiki Kaisha Systems and methods for performing binary arithmetic coding in video coding

Also Published As

Publication number Publication date
KR20070053098A (ko) 2007-05-23
JP4784281B2 (ja) 2011-10-05
CN100551062C (zh) 2009-10-14
US20070116371A1 (en) 2007-05-24
CN1968417A (zh) 2007-05-23
KR100809409B1 (ko) 2008-03-05
US8005306B2 (en) 2011-08-23

Similar Documents

Publication Publication Date Title
JP4784281B2 (ja) 復号化装置、逆量子化方法及びこれらのプログラム
JP4737711B2 (ja) 復号化装置、逆量子化方法、分布決定方法及びこのプログラム
JP3800551B2 (ja) データ処理装置及び方法
CN108028941B (zh) 用于通过超像素编码和解码数字图像的方法和装置
US11074723B2 (en) Lossless compression of fragmented image data
JP4775756B2 (ja) 復号化装置及びそのプログラム
US10382789B2 (en) Systems and methods for digital media compression and recompression
JPH11168633A (ja) 再構成実行方法、再構成実行装置、記録媒体、逆変換実行方法、逆変換実行装置、好適再構成生成方法、好適再構成生成装置、符号化データ処理方法、符号化データ処理装置、データ処理方法、データ処理装置、符号化データのタイル処理方法、符号化データのタイル処理装置、データ復号化方法、データ復号化装置、再構成方法、及び、2値データモデル化方法
US6697529B2 (en) Data compression method and recording medium with data compression program recorded therein
US8805107B2 (en) Image data coding apparatus, method of controlling operation of same, and program therefor
JP2006502604A (ja) 任意形状オブジェクトの画像圧縮方法
US20070064275A1 (en) Apparatus and method for compressing images
US7778468B2 (en) Decoding apparatus, dequantizing method, and program thereof
JP4645948B2 (ja) 復号化装置及びプログラム
US20080095473A1 (en) Wavelet transformation-based image encoder, decoder and method for generating thumbnail image
JP2006270737A (ja) 復号化装置、分布推定方法、復号化方法及びこれらのプログラム
Poolakkachalil et al. Comparative analysis of lossless compression techniques in efficient DCT-based image compression system based on Laplacian Transparent Composite Model and An Innovative Lossless Compression Method for Discrete-Color Images
Naaz et al. Implementation of hybrid algorithm for image compression and decompression
JP4730144B2 (ja) 復号化装置、逆量子化方法及びこれらのプログラム
Iwasokun Lossless JPEG-Huffman model for digital image compression
JP4114144B2 (ja) 画像符号化装置、画像符号化プログラム、及び画像復号化プログラム
Kumar et al. Aggrandize Bit Plane Coding using Gray Code Method
JP2007300454A (ja) 復号化装置、逆量子化方法及びプログラム
CA2358857C (en) Data compression using adaptive bit allocation and hybrid lossless entropy encoding
Galan-Hernandez et al. Advances in Image and Video Compression Using Wavelet Transforms and Fovea Centralis

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081022

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110324

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110330

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110530

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: 20110614

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: 20110627

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: 20140722

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees