JP4265638B2 - 量子化装置及び量子化方法 - Google Patents

量子化装置及び量子化方法 Download PDF

Info

Publication number
JP4265638B2
JP4265638B2 JP2006259727A JP2006259727A JP4265638B2 JP 4265638 B2 JP4265638 B2 JP 4265638B2 JP 2006259727 A JP2006259727 A JP 2006259727A JP 2006259727 A JP2006259727 A JP 2006259727A JP 4265638 B2 JP4265638 B2 JP 4265638B2
Authority
JP
Japan
Prior art keywords
quantization
target
quantization index
index
code length
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006259727A
Other languages
English (en)
Other versions
JP2007037184A (ja
Inventor
敦雄 矢田
卓也 北村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2006259727A priority Critical patent/JP4265638B2/ja
Publication of JP2007037184A publication Critical patent/JP2007037184A/ja
Application granted granted Critical
Publication of JP4265638B2 publication Critical patent/JP4265638B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

この発明は、動き補償とDCTとを組み合わせた符号化に対して適用できる画像信号の符号化方法及びその装置に関する。
MPEG(Moving PicturesExpert Group)規格に代表される動き補償とDCT(Discrete Cosine Transform)を組み合わせる画像圧縮方式では、伝送路に送出されるビットストリームが所望のレートになるように、符号量制御を行なっている。従来の符号量制御は、以前の量子化ステップと符号量の関係と現在の平均レートに基づいて、量子化ステップをフィードバック制御するものである。
図7は、動き補償とDCTを組み合わせた画像圧縮符号化装置の一例を示す。ディジタル入力映像信号が入力端子T1を介して走査変換回路1に供給され、1フレームの画像が多数のマクロブロックに分割される。MPEGでは、輝度信号に関して、4個のDCTブロックから構成される(16×16)のサイズのブロックが構成される。色差信号Cr、Cbに関して、(4:2:2)の場合、2個のDCTブロックから構成される(8×8)のサイズのブロックが夫々構成される。これらの合計8個のDCTブロックをまとめて一つのマクロブロックが構成される。
走査変換回路1でマクロブロック化されたデータは、減算回路2と動きベクトルを求めるための動き検出部3に供給される。動き検出部3では、現マクロブロックに対する参照画像からの動きベクトルを算出する。この動きベクトルが動き補償部4に供給され、動きベクトルを用いた動き補償がなされる。動き補償では、デコーダ側と同じ動き補償を行なうために、参照画像として後述のように、ローカルコードしたものを用いる。
減算回路2において、マクロブロックのデータがイントラ処理の場合では、減算処理がされずに、そのままDCT処理部5に供給される。一方、インター処理の場合では、動き補償部4からの画像データとの差分が算出され、この差分がDCT処理部5に供給される。
DCT処理部5では、(8×8)のDCTブロック毎にDCTが施され、DCT係数データが発生する。この係数データが量子化器6において量子化ステップにより量子化される。量子化器6によって量子化されたデータ(量子化レベルと称する)が可変長符号のエンコーダ7で可変長符号化される。可変長符号のエンコーダ7の出力がバッファ8に供給される。バッファ8からのビットストリームが出力端子T2を介して伝送路に送出される。バッファ8の出力のビットレートを伝送路のビットレートに応じて一定のものとするために、量子化器6の量子化ステップが制御される。
量子化器6の出力が逆量子化器9にも供給される。逆量子化器9の出力(代表値)が逆DCT処理部10に供給され、サンプル面の復号画像データが得られる。この画像データは、イントラ画像のときは、そのままローカル復号画像となる。一方、インター画像のときは、差分信号が復号されるので、動き補償部4からの動き補償された画像と加算回路11で加算されることによって、復号画像データが得られる。
符号量制御は、量子化器5における量子化ステップを表す量子化インデックスを制御することでなされる。MPEG2でテストモデルとして提案されている符号量制御では、仮想バッファの残量と、以前エンコーダした際の量子化インデックスと発生符号量の関係を用いてフィードバック制御することによって、符号量制御を行なっている。
上述の従来の符号量制御は、以下のような問題点を有する。
第1に、フィードバック制御であるため、ダンピングを小さくすると反応は速いが振動的となり、ダンピングを大きくすると振動が減少するが、反応が遅くなってしまう。
第2にシーンチェンジのような箇所では瞬間的にレートが大きくなり、アプリケーションによっては再生画像に破綻を来したり、極端な画質劣化が生じる。
第3にある決められた枚数のフレームをある決められたビットレートに押さえ込むように制御するのが困難である。
この問題を解決するために、フィードフォワード方式で符号量を制御する方式が考えられている。これは、等長化単位において発生する符号量を、複数の量子化ステップについて予め計算し、発生符号量が目標符号量を超えない範囲で、適切な量子化ステップを決定するものである。
このようなフィードフォワード方式の符号量制御において、等長化単位としては、GOP(Group Of Picture)、フレーム、マクロブロック等が考えられる。GOPは、1フレーム以上の画像データであり、MPEG2の場合では、GOP単位で符号量を制御することが考えられる。
上述のように、符号量を制御する時に、複数の量子化ステップが互いに異なる固定値であり、その中の一つの量子化ステップがGOPに対して選択されるために、マクロブロック毎に復号画像の画質の良否が異なる問題を生じる。例えば細かい絵柄のマクロブロックについては、画質が劣化し、逆に、平坦な絵柄のマクロブロックについては、画質が良好となる。隣接するマクロブロック間で、このような画質の差が大きい場合には、ブロック歪が生じる。
従って、この発明の目的は、フィードフォワード方式の符号量制御を採用し、画質信号の局所的性質に適応した制御を可能とすることによって、復号画像の画質を向上できる画質信号の符号化方法及びその装置を提供することになる。
本発明は、画像信号を量子化する量子化装置であって、
複数の量子化ステップを用いて発生符号量をそれぞれ算出し、該複数の量子化ステップの中から、目標符号量に最も近い2つの発生符号量を得られた2つの量子化ステップをそれぞれ示す量子化インデックスを取得する量子化インデックス取得手段と、
上記量子化インデックス取得手段により取得された2つの量子化インデックスに示される量子化ステップの間で上記目標符号量以下となる最小の目標量子化ステップを探索し、探索して得られた目標量子化ステップを示す目標量子化インデックスを決定する目標量子化インデックス決定手段と、
上記目標量子化インデックス決定手段により決定された目標量子化インデックスに示される目標量子化ステップで上記画像信号を量子化する量子化手段と、
を有する量子化装置としたものである。
また本発明は、画像信号を量子化する量子化方法であって、
複数の量子化ステップを用いて発生符号量をそれぞれ算出し、該複数の量子化ステップの中から、目標符号量に最も近い2つの発生符号量を得られた2つの量子化ステップをそれぞれ示す量子化インデックスを取得する量子化インデックス取得ステップと、
上記量子化インデックス取得ステップにより取得された2つの量子化インデックスに示される量子化ステップの間で上記目標符号量以下となる最小の目標量子化ステップを探索し、探索して得られた目標量子化ステップを示す目標量子化インデックスを決定する目標量子化インデックス決定ステップと、
上記目標量子化インデックスステップ手段により決定された目標量子化インデックスに示される目標量子化ステップで上記画像信号を量子化する量子化ステップと、
を有する量子化方法としたものである。
本発明によれば、復号画像の画質を向上できる。また、構成を簡略化することができる。
以下、この発明を実施するための最良の形態について図面を参照して説明する。図1は、一形態としてのエンコーダの構成を示す。上述した図7のエンコーダの構成と同様に、図1に示すエンコーダは、動き補償およびDCTを組み合わせて画像データを圧縮するものである。図7と対応する部分には、同一符号を付して示す。
処理される順に並べられた入力画像データが走査変換回路1においてマクロブロックに分割される。マクロブロック化されたデータが本線系と、動きベクトルを求めるための動き検出部3に向かう。動き検出部3では、現マクロブロックに対する、参照画像からの動きベクトルを算出する。この動きベクトルを用いて動き補償部21が動き補償を行なう。この動き補償部21は、入力画像データそのものを使用する。
本線系に向かったマクロブロックデータは、FIFO(First In First Out)メモリ22を介して減算回路2に供給される。イントラ処理の場合では、減算処理がされず、インター処理の場合では、動き補償部4からの予測画像を使用した減算処理がされる。減算回路2に対してDCT処理部5が接続される。この減算回路2およびDCT処理部5を含む本線系の符号化処理は、図7に示す構成と同様である。
図7の構成と異なるのは、動き補償部4に対して動きベクトルがFIFO23を介して供給されること、また、量子化器6の量子化ステップが後述するように決定された量子化ステップ(あるいは目標符号長)によりDCT係数データを量子化することである。
符号量制御は、複数の量子化ステップによって量子化を行い、その符号量をもとに実際の処理時の符号量を見積り、目標符号量を超えない範囲で最適な量子化ステップを決定することによって行われる。
動き補償部21からの出力画像データが減算回路24に供給される。減算回路24では、イントラ処理の場合に減算処理が行なわれず、インター処理の場合に減算処理が行なわれる。減算回路24の出力がDCT処理部25に供給される。
DCT処理部25は、DCT処理部5と同様に、DCTブロック毎にDCTを施す。DCT処理部25からの係数データが複数の量子化器26−1〜26−nに供給され、異なる量子化インデックスが夫々示す量子化ステップで係数データが量子化される。量子化器26−1〜26−nからの量子化レベルが変換回路27−1〜27−nに供給される。量子化器26−1〜26−nの量子化インデックスは、マクロブロック毎に検出回路29の出力によって制御される。この場合における量子化インデックスは、n個の量子化器を識別するためのコード信号であり、一つの量子化インデックスによって、GOP内のマクロブロック毎に決定された量子化ステップが指示される。
検出回路29は、マクロブロックのアクティビティーを検出し、検出結果に応じて量子化ステップを変更するものである。ここで、アクティビティーは、画像の情報の複雑さを意味する。
DCT処理部25からのDCT係数データが検出回路29に供給され、DCT係数に基づいてマクロブロックのアクティビティーが検出される。一例として、DCT係数の低域成分とその高域成分の分布を調べて、マクロブロックの画像が細かいものか、平坦なものかを検出する。
他の例として、色の飽和度をマクロブロック毎に調べ、飽和度が高い場合には、アクティビディーが高いと検出する。さらに、他の例として、マクロブロックの画像とチェッカーフラッグのパターンとのマッチングをとることによって、どの程度そのマクロブロックの画像が細かいかを調べるものがある。この場合では、係数データを使用しないで、画像データ自身でアクティビティーが検出される。検出回路29によって、マクロブロックのアクティビティーが高いと検出されると、量子化器26−1〜26−nで使用する量子化ステップの全体をより小さいものとし、アクティビティーが低いと検出されると、量子化ステップの全体をより大きいものとする。
変換回路27−1〜27−nは、可変長符号化のエンコーダ7でなされる可変長符号化を行なった時に、符号化出力の符号長を示すデータを発生する。この符号長のデータが量子化インデックス決定回路28に供給される。量子化インデックス決定回路28によって決定された量子化インデックスが本線系の量子化器6に供給される。この決定された量子化インデックスによって、本線系の量子化器6が係数データを量子化する。この量子化インデックスには、マクロブロック毎に決定された量子化インデックスが含まれ、この量子化インデックスも量子化インデックス決定回路28から出力され、ビットストリーム出力とともに伝送される。量子化インデックスを決定するのに必要な時間分、データおよび動きベクトルを遅らせる必要がある。FIFO22及び23は、この遅延用のものである。
次に、符号量制御について、より詳細に説明する。この形態では、GOP単位で等長化し(すなわち、発生符号量を目標符号量M以下に制御し)、また、マクロブロック毎に量子化ステップを制御する。このGOP内のマクロブロックの個数をmとする。
DCT処理部25において、マクロブロックの各DCTブロックのDCT係数F(i)(i=1〜m)が計算される。次に、n個の量子化器26−1〜26−n(j=1〜n)によって量子化レベルQF(i、j)が求められる。
QF(i、j)=F(i)/Δ(j)
但し、Δ(j)は、量子化器26−1〜26−nのそれぞれの量子化ステップであり、マクロブロック毎に検出回路29によって制御される、可変の値である。例えば検出回路29により検出されたマクロブロックのアクティビティーに応じた重み係数がn個の固定の量子化ステップに乗算されることによって、Δ(j)が形成される。また、i<jならば、Δ(i)>Δ(j)を満たすように、Δ(j)が設定されている。
変換回路27−1〜27−nでは、量子化レベルQF(i、j)のそれぞれが符号長へ変換され、マクロブロックiの符号長L(i、j)が求められる。この符号長L(i、j)とGOPの目標符号量Mから量子化インデックスを量子化インデックス決定回路28が決定する。
まず、n個の量子化インデックス(j=1〜n)毎にGOP単位の総符号長を計算する。
SUM(j)=Σ L(i、j)
Σは、iを1からmまで変化させたときの合計を意味する。
次に、M>SUM(k)’(k=1〜n)を満たす最小のk値MINKを求める。MINKが求める量子化インデックスである。この量子化インデックスMINKによって、そのGOPのm個の量子化ステップΔ(1)〜Δ(n)が指示される。量子化器の個数nは、ハードウエアの規模からそれほど多くすることができないので、M−SUM(MINK)の符号量のロスが発生する。
上述の形態では、入力画像を動き補償して減算回路24において差分を形成し、この差分を量子化し、量子化レベルを符号長に変換している。一方、本線系の信号処理では、減算回路2に対してローカルデコードした予測画像を供給し、減算回路2からの差分値をDCT処理部5において処理している。このように、符号量を見積もる時に、入力画像を使用するので、ローカルデコードのために必要とされる構成(逆量子化器、逆DCT処理部)をn個ではなく1個設ければ良い。すなわち、ハードウエアの簡略化を図ることができる。
一般的に、原画像を使用する動き補償の方がローカルデコードした画像を使用する動き補償と比して、発生符号量が少なくなる。この符号量の相違を考慮することによって、符号量制御での発生符号量の計算の精度を向上することができる。すなわち、マクロブロックの修正符号長L′を L′(i、j)=L(i、j)×α(αは、α>1の固定値)
とする。この修正のための係数αを伝送する必要がある。
さらに、量子化ステップを決定するのではなく、各マクロブロックの目標符号長T(i)(i=1〜m)を決定し、GOPの符号量を制御するようにしても良い。図2は、マクロブロックの目標符号長の計算を説明するものである。図2において、横軸がGOP内のm個のマクロブロックの番号を示し、縦軸がマクロブロックの符号長L(i、j)を示す。n個の量子化器26−1〜26−nのそれぞれと対応して、n個の変化(一部省略)が図2に示されている。
各マクロブロックの目標符号長T(i)を下記のように求める。
M>SUM(k)(k=1〜n)を満たす最小のkの値をAとし、
M<SUM(k)(k=1〜n)を満たす最大のkの値をBとすると、
T(i)={(SUM(B)−M)×(i、A)+(M−SUM(A)×L(i、B)}/(SUM(B)−SUM(A))
上述のように、各マクロブロックの符号長を定めると、
Σ T(i、j)=M
(但し、Σは、i=1からi=mまでのT(i、j)の合計を意味する。)
となり、基本的に符号量の損が発生しない効率の良い符号量制御が可能である。
上述のように目標符号長を決定する処理は、図1中の量子化インデックス決定回路28に代わるブロックによりなされる。そして、目標符号長が量子化器6に供給される。量子化器6では、マクロブロックの発生符号長が目標符号長に収まるように、量子化ステップが決定される。この方法としては、先に特願平4−110858号により提案した方法を採用できる。すなわち、量子化ステップ数が2のn乗としたときに、発生符号長が量子化ステップの増大に対して単調減少なことを利用して、二分木探索法によって量子化ステップを決定する。この決定された量子化ステップによって量子化器6における量子化がなされる。従って、量子化インデックスは、この場合、量子化器6から出力される。
なお、変換符号化としてDCTに限られず、ウェーブレット変換、Haar変換、K−L変換等に対しても、この発明を適用することができる。
また、この発明は、圧縮符号化されたデータを磁気テープに記録したり、ハードディスク、光磁気ディスクに記録する場合に対して適用できる。
さらに、マクロブロックの構造としては、(4:2:2)に限らず、(4:2:0)、(4:4:4)、(4:1:1)等の構造であっても良い。マクロブロック内に含まれるDCTブロックの個数も限定されるものではない。
以上説明した形態における効果としては次のような効果がある。即ち、フィードフォワード制御であるので、フィードバック制御における問題を回避することができる。すなわち、シーンチェンジ時のデータ量の急変による再生画像の破綻を来すことなく、ある決められた枚数のフレームをある決められたビットレートに押さえ込むように制御することができる。
また、量子化ステップが画像の局所的性質により可変されるので、復号画像の画質を向上することができる。
〔他の形態〕
ところで、図1に示したエンコーダの量子化インデックス決定回路28において、2分探索法を用いた場合においては、量子化インデックスのビット数に等しい数のバイナリサーチ回路が必要となる。例えば量子化インデックスのビット数が5ビットの場合には、5個のバイナリサーチ回路が必要となる。そこで、このバイナリサーチ回路の個数を減らすことにより、ハードの規模を小とすることを検討する。
説明を分かりやすくするために、図1に示したエンコーダで2分探索法を採用した場合のより詳しい構成を図3に示す。図1に示した量子化インデックス決定回路28は、この図3に示されているところの、積算回路51−1〜51−n、FIFO52−1〜52−n、目標符号長決定回路54並びに二分探索回路53からなる。以下、図3に示す積算回路51−1〜51−n、FIFO52−1〜52−n、目標符号長決定回路54並びに二分探索回路53により、通常の2分探索法で目標符号長を決定する場合について説明する。一例として、直線近似を用いて割り当てる場合について説明する。ここで、積算回路51−1〜51−nは、夫々変換回路27−1〜27−nからの各符号長データを、例えば1フレーム分だけ積算する。FIFO52−1〜52−nは、夫々上記積算回路51−1〜51−nで費やされる処理時間分だけ、各量子化インデックスに対応する符号長データを遅延させるためのものである。
条件は、量子化ステップの総数は“0”〜“31”まで合計で32個あり、図3において、量子化器26−1〜26−n、変換回路27−1〜27−n、積算回路51−1〜51−n並びにFIFO52−1〜52−nの各符号の“n”が、夫々“5”、即ち、上記各要素が夫々5個ずつあるものとする。
上記条件を設定した場合においては、各量子化器51−j(j=1、2、3、4、5)の量子化インデックスq[j]を、表1に示される通りとする。
[表1]
量子化器j 量子化インデックスq[j]
1 0
2 7
3 15
4 23
5 31 ・・・(表1)
そして、量子化器jによるi番目のマクロブロックの符号長を、ll(i、q[j])とする。そして、Σill(i、q[j])をプロットすると、量子化器jによる1フレーム分の符号長の積算値は、図4に示すようになる。図4において、縦軸は符号長を示し、横軸は量子化器jを示す。また、tgtは、目標とする符号長を示し、入力端子54aを介して外部から入力される。
この図4から分かるように、DCT処理部25からの係数データは、図3に示されている量子化器26−1〜26−5においては、各固定の量子化インデックスにより量子化される。各量子化器26−1〜26−5で量子化された結果得られる符号長は、図4から分かるように、夫々、Σill(i、q[1])〜Σill(i、q[5])となる。そして、目標符号長tgtは、量子化器26−3により量子化されたときの符号長であるところの符号長Σill(i、q[3])と、量子化器26−4により量子化されたときの符号長であるところの符号長Σill(i、q[4])の間にあることは、図4から容易に分かる。
尚、上記[]内の数値は、表1における量子化器の番号を示すものとする。
つまり、目標符号長tgtを得ることのできる量子化インデックスq[j]は、量子化器26−3の持つ量子化インデックスq[15]と、量子化器26−4の持つ量子化インデックスq[23]との間にあることが分かる。よって、図4において、符号長Σill(i、q[3])及び符号長Σill(i、q[4])間を直線近似すれば、上記目標符号長tgtを満足するマクロブロック毎の目標符号長を求めることができることは明かである。
ここで、マクロブロックjの目標符号長データをll(i)とすると、この目標符号長ll(i)は、次に示す式1で求めることができる。
ll(i)={(Σkll(k、q[3])−tgt)・ll(i、q[4])+(tgt−Σkll(k、q[4]))・ll(i、q[3])}/{Σkll(k、q[3])−Σkll(k、q[4])}
・・・(式1)
ここで、(Σkll(k、q[3])−tgt)は、量子化器26−3によるk番目のマクロブロックの符号長−ターゲットの符号長を意味し、 ll(i、q[4])は、量子化器26−4による1番目のマクロブロックの符号長を意味し、 (tgt−Σkll(k、q[4])は、ターゲットの符号長−量子化器26−4によるk番目のマクロブロックの符号長を意味し、 ll(i、q[3])は、量子化器26−3によるi番目のマクロブロックの符号長を意味し、 Σkll(k、q[3])は、量子化器26−3によるk番目のマクロブロックの符号長を意味し、 Σkll(k、q[4])は、量子化器26−4によるk番目のマクロブロックの符号長を意味する。
上記式1で示されるように、マクロブロックjの目標符号長データll(i)は、図3に示した目標符号長決定回路54により決定される。この目標符号長データll(i)は、図3に示した二分探索回路53に供給される。一方、目標符号長決定回路54は、目標符号長tgtを得ることのできる量子化インデックスは、量子化器26−3の持つ量子化インデックスq[15]と、量子化器26−4の持つ量子化インデックスq[23]との間にあることが分かっている。
即ち、目標符号長決定回路54は、minj(ll(i、q[j])≦ll(i))を満足する量子化インデックスq[j]が、q[15]とq[23]であることを検出している。
そして、上記目標符号長決定回路54からの目標符号長データll(i)を満足する最小の量子化インデックスを決定する。
ここで、図5を参照して、二分探索法について詳しく説明する。図5において、横軸は量子化インデックスを、縦軸は符号長を夫々示す。この図5に示すグラフは、q0〜q31までの32個の量子化インデックスによりマクロブロックiを量子化し、更にこれを可変長符号化したときの符号長をプロットしたものである。ここで、目標符号長データll(i)を満足する最小の量子化インデックスデータq、即ち、qi=minj(ll(i、q[j])≦ll(i))の解を求めることについて検討する。
この場合、量子化インデックスのビット数が5ビットであるから、5ビットの最上位ビットから最下位ビットまでの各ビットを、順次、5つのステップで求めることになる。この5つのステップにおいて量子化インデックスの上位から下位までの各ビットを求める処理は、次の通りである。
〔ステップ1:最上位ビットの検出処理〕
最初のステップであるところのステップ1では、解がq0〜q31までの範囲内に存在することしか分からない。そこで、その解の範囲を二分する点、即ち、量子化インデックスq15における符号長データであるところのll(i、q15)を求める。この符号長データll(i、q15)の値は、図5を見ると分かるように、目標符号長データll(i)の値よりも大きい。即ち、ll(i、q15)>ll(i)である。従って、解の存在範囲は、q16〜q31の範囲内に存在することが分かる。よって、ステップ1においては、量子化インデックスの最上位ビットが、“1”とされる。“16”〜“31”を5ビットで表す場合、最上位ビットは“1”であることから容易に理解できよう。ステップ1における上記結果であるところの“1xxxx”(“x”は分かっていないことを示す)は、次のステップ2で用いられる。
〔ステップ2:2番目のビットの検出処理〕
2番目のステップであるところのステップ2では、上記ステップ1の処理により、解がq16〜q31までの範囲内に存在することが分かっている。そこで、ステップ2では、その解の範囲を二分する点、即ち、量子化インデックスq23における符号長データであるところのll(i、q23)が求められる。この符号長データll(i、q23)の値は、図5を見ると分かるように、目標符号長データll(i)の値よりも小さい。即ち、ll(i、q23)<ll(i)である。従って、解の存在範囲は、q16〜q23の範囲内に存在することが分かる。よって、ステップ2では、量子化インデックスの2番目のビットが、“0”とされる。“16”〜“23”を5ビットで表す場合、上位から2番目のビットは“0”であることから容易に理解できよう。ステップ2における上記結果であるところの“10xxx”(“x”は分かっていないことを示す)は、ステップ3で用いられる。
〔ステップ3:3番目のビットの検出処理〕
3番目のステップであるところのステップ3では、上記ステップ2の処理により、解がq16〜q23までの範囲内に存在することが分かっている。そこで、その解の範囲を二分する点、即ち、量子化インデックスq19における符号長データであるところのll(i、q19)を求める。この符号長データll(i、q19)の値は、図5を見ると分かるように、目標符号長データll(i)の値以下である。即ち、ll(i、q19)≦ll(i)である。より正確にいえば、符号長データll(i、q19)の値は、図5を見ると分かるように、目標符号長データll(i)の値と同じである。即ち、ll(i、q19)=ll(i)である。従って、解の存在範囲は、q16〜q19の範囲内に存在することが分かる。よって、ステップ3では、量子化インデックスの3番目のビットが、“0”とされる。“16”〜“19”を5ビットで表す場合、上位から3番目のビットは“0”であることから容易に理解できよう。ステップ3における上記結果であるところの“100xx”(“x”は分かっていないことを示す)は、ステップ4において用いられる。
〔ステップ4:4番目のビットの検出処理〕
4番目のステップであるところのステップ4では、上記ステップ3の処理により、解がq16〜q19までの範囲内に存在することが分かっている。そこで、その解の範囲を二分する点、即ち、量子化インデックスq17における符号長データであるところのll(i、q17)を求める。この符号長データll(i、q17)の値は、図5を見ると分かるように、目標符号長データll(i)の値より大きい。即ち、ll(i、q17)>ll(i)である。従って、解の存在範囲は、q18〜q19の範囲内に存在することが分かる。よって、ステップ4においては、量子化インデックスの4番目のビットが、“1”とされる。“18”〜“19”を5ビットで表す場合、上位から4番目のビットは“1”であることから容易に理解できよう。ステップ4における上記結果であるところの“1000x”(“x”は分かっていないことを示す)は、ステップ5において用いられる。
〔ステップ5:第5バイナリサーチ回路による5番目のビットの検出処理〕
5番目のステップであるところのステップ5では、上記ステップ4の処理により、解がq18〜q19までの範囲内に存在することが分かっている。そこで、その解の範囲を二分する点、即ち、量子化インデックスq18における符号長データであるところのll(i、q18)を求める。この符号長データll(i、q18)の値は、図5を見ると分かるように、目標符号長データll(i)の値以下である。即ち、ll(i、q18)≦ll(i)である。より正確にいえば、符号長データll(i、q18)の値は、図5を見ると分かるように、目標符号長データll(i)の値と同じである。即ち、ll(i、q18)=ll(i)である。従って、解の存在範囲は、q18〜q18の範囲内に存在すること、即ち、解がq18であることが分かる。よって、ステップ5では、量子化インデックスの最下位ビットが、“0”とされる。“18”を5ビットで表す場合、最下位ビットは“0”であることから容易に理解できよう。ステップ5における上記結果であるところの“10010”は、量子化器6における量子化インデックスとして用いられる。
以上説明したように、二分探索法を用いた場合には、5つの処理ステップを用いることにより、確実に量子化インデックスを求めることができる。しかしながら、5つの処理ステップを用いなければならないので、図3に示した二分探索回路53を、5つのバイナリサーチ回路で構成しなければならなくなり、ハード規模が大となる。そこで、本形態においては、バイナリサーチ回路の数を最小限にすることを検討する。
既に説明したように、目標符号長決定回路54は、目標符号長tgtを得ることのできる量子化インデックスは、量子化器26−3の持つ量子化インデックスq[15]と、量子化器26−4の持つ量子化インデックスq[23]との間にあることが分かっている。即ち、目標符号長決定回路54は、minj(ll(i、q[j])≦ll(i))を満足する量子化インデックスq[j]が、q[15]とq[23]であることを検出している。そこで、本形態においては、目標符号長決定回路54が、上記量子化インデックスq[15]とq[23]を、二分探索回路53に供給するようにすると共に、目標符号長tgtを得ることのできる量子化インデックスq[J]が、上記量子化インデックスq[15]とq[23]の間にあるという情報を、積極的に利用するようにする。
即ち、目標符号長決定回路54において、マクロブロックiの目標符号長ll(i)と、minj(ll(i、q[j]≦ll(i))であるところの量子化インデックスq[j]が求められているので、この情報を積極的に用いることにより、解の範囲が、q[j−1]からq[j]であることが最初から分かるのである。上記表1の例から言えば、解の範囲は、通常の二分探索法では“0”〜“31”までの32個の範囲だったのが、本形態においては、“15”〜“23”までの8個の範囲とすることができる。つまり、この例では、解の範囲は、q[3](=q15)より大きくq[4](=q23)以下の範囲にあることになる。よって、本形態によれば、従来の二分探索法のステップ3から処理を行えば良いことになる。
つまり、目標符号長決定回路54において、既に解の範囲が、q[3](=q15)からq[4](=q23)の範囲内にあることが分かっているのであるから、二分探索回路53においては、ステップ1とステップ2の処理を省略し、ステップ3から二分探索を開始すれば良いことになる。そして、このことは、図3に示した二分探索回路53を構成するバイナリサーチ回路を5つから3つにすることができることを意味する。二分探索のステップ数は、次の式2で表すことができる。
二分探索のステップ数 =log2量子化器の量子化インデックスの差分 ・・・(式2)
実際には、検出回路50によって求められたアクティビティデータにより、量子化器26−1〜26−nに与えられる量子化インデックスを変化させることができる。しかしながら、この場合においても、量子化器26−1〜26−nの量子化インデックスの差分の最大値を、上記式2に代入したときに得ることのできる二分探索のステップ数により、二分探索を行うことができる。
次に、図6を参照して、図3に示したエンコーダの動作について説明する。
図6Aは、アクティビティーの検出出力を示し、図6Bは、DCT出力を示し、図6Cは、量子化出力を示し、図6Dは、変換出力を示し、図6Eは、積算出力を示し、図6Fは、FIFO出力を示し、図6Gは、目標符号長決定出力を示し、図6Hは、FIFO出力を示し、図6Iは、二分探索出力を示し、図6Jは、量子化出力を示し、図6Kは、可変長符号化出力を示す。また、図6A〜図6Kの各括弧内には、フレーム番号と、そのフレーム番号におけるマクロブロックの番号を夫々示す。例えば、“(n+1、1439)”は、“n+1”フレームの、“1439”番のマクロブロックであることを意味する。この例においては、1フレーム分の全マクロブロックの個数は、0番〜1439番までの合計1440個の場合を想定している。
図3に示す入力端子T1に映像信号が入力される。この映像信号は、走査変換回路1においてフレーム単位にされた後にブロック化される。ブロック化された映像信号は、検出回路50に供給され、ここでアクティビティーが検出される。
また、ブロック化された映像信号は、DCT処理部25において直流成分から高次交流成分までの係数データに変換される。図6Aに示されるアクティビティー検出出力は、量子化器26−1〜26−nに夫々供給される。一方、図6Bに示されるDCT処理部25からのDCT出力は、量子化器26−1〜26−nに夫々供給され、夫々量子化される。
図6Cに示す各量子化器26−1〜26−nの量子化出力は、変換回路27−1〜27−nに夫々供給される。各変換回路27−1〜27−nにおいては、量子化器26−1〜26−nからの量子化出力が、符号長データに変換される。
図6Dに示す変換出力は、積算回路51−1〜51−n並びにFIFO52−1〜52−nに夫々供給される。積算回路51−1〜51−nにおいては、図6Eに示されるように、フレーム毎の符号長データの積算が行われる。図6Eに示す積算出力と、図6Fに示すFIFO出力は、目標符号長決定回路54に夫々供給される。
目標符号長決定回路54においては、既に説明したように、目標符号長データll(i)と、これを得ることのできる量子化インデックスに最も近い量子化インデックスが求められる。図6Gに示す目標符号長決定回路54からの目標符号長決定出力は、二分探索回路53に供給される。一方、DCT処理部25からのDCT出力は、FIFO22に供給され、ここで一旦遅延される。二分探索回路53においては、既に説明したように、目標符号長決定回路54からの情報により、目標符号長を得ることのできる量子化インデックスに最もその値の近い2つの量子化インデックス間でのみ二分探索処理を行う。図6Hに示すFIFO出力は、二分探索が終了して量子化インデックスが求められた時点に合わせられて出力される。従って、図6Hに示すFIFO出力と、図6Iに示す二分探索出力は、共に量子化器6に供給される。
量子化器6に供給されたFIFO出力は、図6Iに示す二分探索出力であるところの量子化インデックスにより量子化される。図6Jに示す量子化出力は、可変長符号化回路7に供給され、符号化される。図6Kに示す可変長符号化出力は、バッファ8を介して出力端子T3からビットストリーム出力として出力される。
〔変形例〕
1.上記形態では、変換符号化としてDCTを用いた場合について説明したが、ウエーブレット変換、Haar変換、K−L変換等を用いても良い。
2.上記形態では、VTRを用いた場合について説明したが、記録媒体としてはテープである必要はなく、光磁気記録ディスクやハードディスクでも良い。また、記録メディアを用いないもの、例えば通信系のようなものでも良い。
3.上記形態では、4:2:2フォーマットのマクロブロック構造を採用した場合について説明したが、4:2:0、4:4:4、4:4:1フォーマットのマクロブロックの構造を採用しても良い。また、マクロブロックを構成するDCTブロックの個数に制限はない。
4.上記形態では、1フレームでビットレートを維持するように制御した場合について説明したが、これよりも大きい単位、或いは小さい単位であっても良い。
5.上記形態では、静止画のビットリダクションについで説明したが、図3に示したDCT25を、動き検出回路とDCTとで構成し、動画のビットリダクションに応用することもできる。
6.上記形態では、量子化器(固定量子化器)に符号量からマクロブロック毎の目標符号長の予測方法として、直線近似による補間を用いる場合について説明したが、より多くの点を用いる高次関数による近似を行っても良い。
7.上記形態では、アクティビティーを求める方法としてDCTを行う前のデータを用いた場合について説明したが、DCTを行った後のデータを用いてアクティビティーを求めるようにしても良い。
〔実施の形態における効果〕
以上説明したように、本形態においては、目標符号長決定回路54で求められた、2つの量子化インデックスの間に限って二分探索処理を行うようにしたので、従来の方法と比較して、二分探索回路53を構成するバイナリサーチ回路の数を少なくすることができるといった絶大なる効果がある。しかも、画像信号の局所的な性質を考慮しつつ、VTRのようなアプリケーションでも画像の破綻を招くことがないフィードフォワード方式の符号画制御を達成することができるといった効果をも維持できる。
本発明による画像信号の符号化方法及びその装置は、例えばVTR、光磁気ディスクドライブ、ハードディスクドライブ、シリコンディスクドライブ、データ伝送装置、通信システム等に適しており、マクロブロックの絵柄の細かさのような画像の局所的性質に応じて量子化ステップを変更することによって、復号画像の画質を向上できる。また、符号量を見積もる時に、入力画像信号に対して動き補償を行なうことによって、複数の量子化ステップに対応してローカルデコードのための構成を設ける必要がなく、また、符号量制御における処理ステップを減らすことにより、構成を簡略化することができるものである。
符号化のエンコーダの一形態を示すブロック図である。 マクロブロック符号長とマクロブロック番号との関係を示すグラフである。 符号化のエンコーダの他の形態を示すブロック図である。 各量子化器(固定量子化器)の1フレーム分の積算値を示すグラフである。 二分探索法を説明するためのグラフである。 図3に示した符号化のエンコーダの動作を説明するためのタイミングチャートである。 図6Aは、アクティビティーの検出出力を示すタイミングチャートである。 図6Bは、DCT出力を示すタイミングチャートである。 図6Cは、量子化出力を示すタイミングチャートである。 図6Dは、変換出力を示すタイミングチャートである。 図6Eは、積算出力を示すタイミングチャートである。 図6Fは、FIFO出力を示すタイミングチャートである。 図6Gは、目標符号長決定出力を示すタイミングチャートである。 図6Hは、FIFO出力を示すタイミングチャートである。 図6Iは、二分探索出力を示すタイミングチャートである。 図6Jは、量子化出力を示すタイミングチャートである。 図6Kは、可変長符号化出力を示すタイミングチャートである。 従来の符号化のエンコーダの一例のブロック図である。
符号の説明
1…走査変換回路、2,11,24…加算回路、3…動き補償回路、5,21…動き検出回路、25…DCT処理部、25−1〜26−n…量子化器、7…可変長符号化回路、8…バッファ、9…逆量子化器、10…IDCT処理部、22,23,52−1〜52−n…FIFO、27−1〜27−n…変換回路、28…量子化インデックス決定回路、29,50…検出回路、51−1〜51−n…積算回路、53…二分探索回路、54…目標符号長決定回路

Claims (5)

  1. 画像信号を量子化する量子化装置であって、
    複数の量子化ステップを用いて発生符号量をそれぞれ算出し、該複数の量子化ステップの中から、目標符号量に最も近い2つの発生符号量を得られた2つの量子化ステップをそれぞれ示す量子化インデックスを取得する量子化インデックス取得手段と、
    上記量子化インデックス取得手段により取得された2つの量子化インデックスに示される量子化ステップの間で上記目標符号量以下となる最小の目標量子化ステップを探索し、探索して得られた目標量子化ステップを示す目標量子化インデックスを決定する目標量子化インデックス決定手段と、
    上記目標量子化インデックス決定手段により決定された目標量子化インデックスに示される目標量子化ステップで上記画像信号を量子化する量子化手段と、
    を有する量子化装置。
  2. 上記目標量子化インデックス決定手段は、上記量子化インデックス取得手段により取得された2つの量子化インデックスに示される量子化ステップを用いて直線近似によるバイナリサーチを行うことにより、上記目標量子化ステップを決定する
    請求項1に記載の量子化装置。
  3. 上記目標量子化インデックスを決定するのに必要な時間分、上記画像信号を遅延させる遅延手段を更に有し、
    上記量子化手段は、上記遅延手段により遅延された画像信号を量子化する
    請求項1に記載の量子化装置。
  4. 上記量子化ステップ及び上記目標量子化ステップは、マクロブロック単位の量子化ステップである
    請求項1に記載の量子化装置。
  5. 画像信号を量子化する量子化方法であって、
    複数の量子化ステップを用いて発生符号量をそれぞれ算出し、該複数の量子化ステップの中から、目標符号量に最も近い2つの発生符号量を得られた2つの量子化ステップをそれぞれ示す量子化インデックスを取得する量子化インデックス取得ステップと、
    上記量子化インデックス取得ステップにより取得された2つの量子化インデックスに示される量子化ステップの間で上記目標符号量以下となる最小の目標量子化ステップを探索し、探索して得られた目標量子化ステップを示す目標量子化インデックスを決定する目標量子化インデックス決定ステップと、
    上記目標量子化インデックスステップ手段により決定された目標量子化インデックスに示される目標量子化ステップで上記画像信号を量子化する量子化ステップと、
    を有する量子化方法。
JP2006259727A 1995-03-09 2006-09-25 量子化装置及び量子化方法 Expired - Fee Related JP4265638B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006259727A JP4265638B2 (ja) 1995-03-09 2006-09-25 量子化装置及び量子化方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP7828095 1995-03-09
JP2006259727A JP4265638B2 (ja) 1995-03-09 2006-09-25 量子化装置及び量子化方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP52746496A Division JP3890606B2 (ja) 1995-03-09 1996-03-11 画像信号符号化装置及び画像信号符号化方法

Publications (2)

Publication Number Publication Date
JP2007037184A JP2007037184A (ja) 2007-02-08
JP4265638B2 true JP4265638B2 (ja) 2009-05-20

Family

ID=37795763

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006259727A Expired - Fee Related JP4265638B2 (ja) 1995-03-09 2006-09-25 量子化装置及び量子化方法

Country Status (1)

Country Link
JP (1) JP4265638B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5257215B2 (ja) * 2009-04-16 2013-08-07 ソニー株式会社 画像符号化装置と画像符号化方法

Also Published As

Publication number Publication date
JP2007037184A (ja) 2007-02-08

Similar Documents

Publication Publication Date Title
JP3890606B2 (ja) 画像信号符号化装置及び画像信号符号化方法
JP4361613B2 (ja) 可変ビットレートビデオ符号化方法及び対応するビデオ符号化装置
US6925126B2 (en) Dynamic complexity prediction and regulation of MPEG2 decoding in a media processor
US6037987A (en) Apparatus and method for selecting a rate and distortion based coding mode for a coding system
US7050495B2 (en) Video data compression apparatus and method of same
US6084636A (en) Video signal encoding method and apparatus employing an adaptive quantization technique
CN102271257B (zh) 图像处理设备
US7925108B2 (en) Encoding device and dynamic image recording system having the encoding device
US20090097546A1 (en) System and method for enhanced video communication using real-time scene-change detection for control of moving-picture encoding data rate
US20050169547A1 (en) Encoding apparatus and method
JPH11262018A (ja) 動き補償符号化装置、動き補償符号化方法、及び動き補償符号記録媒体
JP3846424B2 (ja) 画像信号量子化装置およびその方法
JPH10108184A (ja) 画像データ処理装置およびその方法
US5508745A (en) Apparatus for controlling a quantization level to be modified by a motion vector
EP1579701A2 (en) Elastic storage
JP4265638B2 (ja) 量子化装置及び量子化方法
US20080025401A1 (en) Method for measuring real-time image complexity
JPH11275577A (ja) 映像信号符号化方法及び装置
WO2004070950A2 (en) Device for encoding a video data stream
KR101490521B1 (ko) 동영상 부호화 데이터율 제어를 위한 실시간 장면 전환검출 방법, 이를 이용한 영상통화 품질 향상 방법, 및영상통화 시스템
JPH10108197A (ja) 画像符号化装置、画像符号化制御方法および画像符号化制御用プログラムを記録した媒体
JP2002315006A (ja) 動き補償予測特異値展開符号化装置
KR100595144B1 (ko) 적응형 양자화 제어 방법.
JP4404232B2 (ja) 量子化方法、量子化装置、量子化ステツプ決定方法及び量子化ステツプ決定装置
JPH07131789A (ja) 画像符号化方式

Legal Events

Date Code Title Description
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: 20090127

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

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

Free format text: PAYMENT UNTIL: 20120227

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130227

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees