JP2001525639A - 画像信号符号化システムおよびプロセスのための適応量子化フレームワークにおける適応エントロピー符号化 - Google Patents
画像信号符号化システムおよびプロセスのための適応量子化フレームワークにおける適応エントロピー符号化Info
- Publication number
- JP2001525639A JP2001525639A JP2000523810A JP2000523810A JP2001525639A JP 2001525639 A JP2001525639 A JP 2001525639A JP 2000523810 A JP2000523810 A JP 2000523810A JP 2000523810 A JP2000523810 A JP 2000523810A JP 2001525639 A JP2001525639 A JP 2001525639A
- Authority
- JP
- Japan
- Prior art keywords
- value
- quantizer
- distortion
- quantization
- bit rate
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/124—Quantisation
- H04N19/126—Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
(57)【要約】
圧縮のシステムおよび方法であって、画像フレームまたはフレームの部分の各々について、各量子化器が予め定められた量子化値の集まりである量子化器の集合から1つの量子化器を選択するための適応量子化と、共通のエントロピー符号化テーブルまたは量子化器ごとの個別のエントロピー符号化テーブルを用いて量子化値を符号化する処理とを含むものである。エントロピー符号化テーブルは、学習手続きによって得られる。量子化器の選択は、各量子化器の歪みおよびビットレート特性を考慮した数式に基づいている。同様の、歪みおよびビットレート特性に基づいた数式は、符号化されている画像信号値の各々に対して、選ばれた量子化器の特定の量子化値を選択するのにも用いられる。
Description
【0001】 (技術分野) 本発明は、画像信号の符号化のための装置および方法に関し、より具体的には
、適応量子化と複数の量子化器および可変長符号化テーブル(VLC)を用いる
符号化に関する。このような装置およびデータ圧縮方法は、簡単に改良して、H
.263およびMPEG−4画像規格用にすることができる。
、適応量子化と複数の量子化器および可変長符号化テーブル(VLC)を用いる
符号化に関する。このような装置およびデータ圧縮方法は、簡単に改良して、H
.263およびMPEG−4画像規格用にすることができる。
【0002】 (背景技術) 画像信号は一般的に、1つまたは複数の画像フレームに対応するデータを含み
、各画像フレームは画素の配列から形成される。典型的なカラー画像フレームは
、様々な解像度になりうる。そのうちの1つは、図1に示す、4分割共通中間フ
ォーマット(QCIF)解像度であり、ここで、画像フレームは、25,000
を超える画素からなり、144画素X176画素に配列されており、8X8の画
素ブロックに分割される。各画素は色(色相)および輝度によって特徴付けられ
る必要があるので、これらのデータは、4つの輝度画素ブロックの集まり、また
は、マクロブロックとよばれる2つのクロミナンス画素ブロックによって表すこ
とができる。このようにして、画像フレームデータシーケンスを表すデジタル信
号は、通常多くの画像フレームを含んでいるが、多数のビットを含んでいる。し
かし、これら信号の送信に使用できる記憶空間および帯域幅は限られている。し
たがって、(符号化)プロセスは、画像データをより効率的に送信または記憶す
るために使われる。
、各画像フレームは画素の配列から形成される。典型的なカラー画像フレームは
、様々な解像度になりうる。そのうちの1つは、図1に示す、4分割共通中間フ
ォーマット(QCIF)解像度であり、ここで、画像フレームは、25,000
を超える画素からなり、144画素X176画素に配列されており、8X8の画
素ブロックに分割される。各画素は色(色相)および輝度によって特徴付けられ
る必要があるので、これらのデータは、4つの輝度画素ブロックの集まり、また
は、マクロブロックとよばれる2つのクロミナンス画素ブロックによって表すこ
とができる。このようにして、画像フレームデータシーケンスを表すデジタル信
号は、通常多くの画像フレームを含んでいるが、多数のビットを含んでいる。し
かし、これら信号の送信に使用できる記憶空間および帯域幅は限られている。し
たがって、(符号化)プロセスは、画像データをより効率的に送信または記憶す
るために使われる。
【0003】 デジタル画像信号の送信または記憶のための圧縮は、様々な状況で、特にテレ
ビ会議、テレビゲーム、インターネット画像送信、デジタルテレビなどのマルチ
メディア環境で広く行われてきた。符号化および復号化は符号化プロセッサで行
われる。符号化プロセッサとしては、汎用コンピュータ、特別なハードウェア、
またはマルチメディアボード他の適切な制御演算装置が考えられる。圧縮プロセ
スの規格は、テレビ電話などのリアルタイムの通信に使われる、Hシリーズの規
格の標準化を担当する国際電気通信連合(ITU)および、MPEG−1、MP
EG−2、MPEG−4、MPEG−7といったMPEGシリーズの標準化を担
当する国際標準化機構(ISO)によって、標準化されてきた。
ビ会議、テレビゲーム、インターネット画像送信、デジタルテレビなどのマルチ
メディア環境で広く行われてきた。符号化および復号化は符号化プロセッサで行
われる。符号化プロセッサとしては、汎用コンピュータ、特別なハードウェア、
またはマルチメディアボード他の適切な制御演算装置が考えられる。圧縮プロセ
スの規格は、テレビ電話などのリアルタイムの通信に使われる、Hシリーズの規
格の標準化を担当する国際電気通信連合(ITU)および、MPEG−1、MP
EG−2、MPEG−4、MPEG−7といったMPEGシリーズの標準化を担
当する国際標準化機構(ISO)によって、標準化されてきた。
【0004】 一般的に画像信号の符号化の演算は、図1の破線内に示す、4つの8X8画素
ブロックからなる16X16画素サンプルといった、画像フレームのより小さい
サンプルで行われる。一般的に圧縮プロセスは、量子化を含む。この量子化にお
いて、色および輝度といったサンプル画像信号データ値は、固定数の定義済みの
量子化値で表される、または、固定数の定義済みの量子化値にマップされる。量
子化された信号は、実際にはサンプル画像信号データ値の近似である、量子化値
からなる。したがって、画像信号データを限られた数の量子化値に符号化するこ
とによって、符号化プロセス後の信号の精度がいくぶん失われ、信号にある程度
の歪みも生じる。
ブロックからなる16X16画素サンプルといった、画像フレームのより小さい
サンプルで行われる。一般的に圧縮プロセスは、量子化を含む。この量子化にお
いて、色および輝度といったサンプル画像信号データ値は、固定数の定義済みの
量子化値で表される、または、固定数の定義済みの量子化値にマップされる。量
子化された信号は、実際にはサンプル画像信号データ値の近似である、量子化値
からなる。したがって、画像信号データを限られた数の量子化値に符号化するこ
とによって、符号化プロセス後の信号の精度がいくぶん失われ、信号にある程度
の歪みも生じる。
【0005】 選択される可能性が最も高いことが実験によって確認された量子化値を、量子
化器が含むようにすることによって、この精度を高め、歪みを減少することがで
きる。しかし一般的に、ある画像フレームの一部分において選択される可能性が
最も高い量子化値は、その画像フレームの他の一部分において選択される可能性
が最も高い量子化値にはならず、また動画においては、この値はまた、フレーム
ごとに異なる。
化器が含むようにすることによって、この精度を高め、歪みを減少することがで
きる。しかし一般的に、ある画像フレームの一部分において選択される可能性が
最も高い量子化値は、その画像フレームの他の一部分において選択される可能性
が最も高い量子化値にはならず、また動画においては、この値はまた、フレーム
ごとに異なる。
【0006】 一般的に、MPEG−4のH.263規格による入力信号Iの圧縮のプロセス
は、そのイントラブロックについては図2に、インターブロックについては図3
に示され、離散コサイン変換(DCT)ステップ12、量子化ステップ16、可
変長符号化ステップ18を含む。圧縮され、符号化された画像データは、その後
、固定帯域幅通信リンク上を、レシーバ(図示せず)へ送信される。インターブ
ロックについては、図2に示されたプロセスはさらに、DCTステップ12に先
だって行われる、動き補償ステップ11を含む。動き補償ステップ11は、加算
を含む。加算では、動き補償差分ブロックをDCTステップ12への入力として
与えるために、ブロック1つについて、動き予測からの動きベクトルを用いて1
つ前のフレームからディスプレースされたブロックが1つ、入力画像データ信号
Iから減算される 図2および図3において、各プロセシングサンプルブロックについて、輝度お
よび明度と関連付けられた信号成分にDCTステップ12が施され、ブロックの
各画素の成分をある規定範囲内の値として表した出力を、各ブロックに与える。
出力されたブロックの範囲は、例えば−2048から+2048であるが、一般
的に最も高い値は、各ブロックの左上のすみに位置し、その値は矢印14にそっ
てブロックの右下のすみに近づくにつれて小さくなる。
は、そのイントラブロックについては図2に、インターブロックについては図3
に示され、離散コサイン変換(DCT)ステップ12、量子化ステップ16、可
変長符号化ステップ18を含む。圧縮され、符号化された画像データは、その後
、固定帯域幅通信リンク上を、レシーバ(図示せず)へ送信される。インターブ
ロックについては、図2に示されたプロセスはさらに、DCTステップ12に先
だって行われる、動き補償ステップ11を含む。動き補償ステップ11は、加算
を含む。加算では、動き補償差分ブロックをDCTステップ12への入力として
与えるために、ブロック1つについて、動き予測からの動きベクトルを用いて1
つ前のフレームからディスプレースされたブロックが1つ、入力画像データ信号
Iから減算される 図2および図3において、各プロセシングサンプルブロックについて、輝度お
よび明度と関連付けられた信号成分にDCTステップ12が施され、ブロックの
各画素の成分をある規定範囲内の値として表した出力を、各ブロックに与える。
出力されたブロックの範囲は、例えば−2048から+2048であるが、一般
的に最も高い値は、各ブロックの左上のすみに位置し、その値は矢印14にそっ
てブロックの右下のすみに近づくにつれて小さくなる。
【0007】 量子化ステップ16においては、ブロック内の各DCT値は、ある量子化方式
に基づいて、固定された量子化値の範囲内のある値にマップされる。以下に詳し
く記すように、H.263およびMPEG−4画像規格に基づいた好ましい量子
化の方式には、1つのブロックの各画素の輝度および色成分のために新しい値を
計算するステップが含まれる。この計算ステップの次に、選択ステップが行われ
る。選択ステップにおいては、もとの入力信号値にに最も近い近似値が、定義済
みの量子化値から選択される。
に基づいて、固定された量子化値の範囲内のある値にマップされる。以下に詳し
く記すように、H.263およびMPEG−4画像規格に基づいた好ましい量子
化の方式には、1つのブロックの各画素の輝度および色成分のために新しい値を
計算するステップが含まれる。この計算ステップの次に、選択ステップが行われ
る。選択ステップにおいては、もとの入力信号値にに最も近い近似値が、定義済
みの量子化値から選択される。
【0008】 ほとんどの低ビットレート画像符号化方式において、量子化プロセスにおける
、新しい値Y’を計算するための計算ステップは、ブロックの各画素のYデータ
値の程度を決定するためのいくつかの計算を含む。この計算には、次の方程式が
用いられる。 level = INT[(Y+offset)/2QP] ここで、INTは方程式の整数値である。
、新しい値Y’を計算するための計算ステップは、ブロックの各画素のYデータ
値の程度を決定するためのいくつかの計算を含む。この計算には、次の方程式が
用いられる。 level = INT[(Y+offset)/2QP] ここで、INTは方程式の整数値である。
【0009】 Yは、輝度または明度になりえる。、offsetは好ましくは−QP/2で
あり、QPは量子化ステップサイズを表す量子化係数であり、好ましくは1≦Q
P≦31の範囲から選択される。QPの値は、周知のリニアビットレートコント
ロール手法を用いて決定され、その値は、システムのビット制約によって許可さ
れたビット数および所望の画質によって異なる。
あり、QPは量子化ステップサイズを表す量子化係数であり、好ましくは1≦Q
P≦31の範囲から選択される。QPの値は、周知のリニアビットレートコント
ロール手法を用いて決定され、その値は、システムのビット制約によって許可さ
れたビット数および所望の画質によって異なる。
【0010】 計算された各画素の程度から、次の方程式を用いてY’値が求められる。 Y’= (2QP x level)+QP このようにして、ブロック内の各Y値についてY’値が計算される。各Y’値
はQPの倍数で、対応するY値に基づいて計算される。 典型的な量子化システムにおいては、H.263およびMPEG−4規格に基
づいて、基準量子化器R0によって表される一組の量子化値から量子化値を1つ
選択するのにY’値が用いられる。ここで、各量子化値はQPの倍数である。基
準量子化器R0は次のようにして定義される。
はQPの倍数で、対応するY値に基づいて計算される。 典型的な量子化システムにおいては、H.263およびMPEG−4規格に基
づいて、基準量子化器R0によって表される一組の量子化値から量子化値を1つ
選択するのにY’値が用いられる。ここで、各量子化値はQPの倍数である。基
準量子化器R0は次のようにして定義される。
【0011】 R0∈{0,±3QP,±5QP,±7QP,・・・} 各Y’値はR0の組から選択された量子化値に最も近いにマップされ、Y値の
各ブロックは量子化値の対応するブロックにマップされる。 たとえば、もしある特定の画素のY値が+110であり、選択されたQP値が
20ならば、上記の方程式は次の値を与えるであろう。
各ブロックは量子化値の対応するブロックにマップされる。 たとえば、もしある特定の画素のY値が+110であり、選択されたQP値が
20ならば、上記の方程式は次の値を与えるであろう。
【0012】 offset = −QP/2 = −10 level = INT[(Y+offset)/2QP] = INT[2
.5] = 2 Y’= (2QP) x level+QP = 40x2+20=100=
5QP もしYの値が−2048≦Y≦2048の範囲内になるように選択されるなら
ば、推定されるY’の値の量子化器R0は、最高値(2048)と同様に最低値
(−2048)を表すQP倍数を含んでいなくてはならない。基準QP倍数のR
0の組を用いるならば、量子化器R0は±101QPにまで及ぶ必要があり、次
のように表される。
.5] = 2 Y’= (2QP) x level+QP = 40x2+20=100=
5QP もしYの値が−2048≦Y≦2048の範囲内になるように選択されるなら
ば、推定されるY’の値の量子化器R0は、最高値(2048)と同様に最低値
(−2048)を表すQP倍数を含んでいなくてはならない。基準QP倍数のR
0の組を用いるならば、量子化器R0は±101QPにまで及ぶ必要があり、次
のように表される。
【0013】 R0∈{0,±3QP,±5QP,±7QP,・・・±101QP,・・・±
255QP} 計算された5QPのY’値は、偶然にも{0,±3QP,±5QP,±7QP
,・・・±101QP,・・・±255QP}の組に含まれるQP倍数値に等し
い。この例では、−101から+101の範囲以外の値は使われず、画素のY値
110はY’値5QPにマップされた。しかし、Y’値100がもとのY値11
0とはY値のほぼ10%異なるという事実によって示されるように、符号化され
た情報の精度は、ある程度劣化する。
255QP} 計算された5QPのY’値は、偶然にも{0,±3QP,±5QP,±7QP
,・・・±101QP,・・・±255QP}の組に含まれるQP倍数値に等し
い。この例では、−101から+101の範囲以外の値は使われず、画素のY値
110はY’値5QPにマップされた。しかし、Y’値100がもとのY値11
0とはY値のほぼ10%異なるという事実によって示されるように、符号化され
た情報の精度は、ある程度劣化する。
【0014】 第二の例では、上記と同じY値110であるが、QP値が2である。 level = [(110−2/2)/2(2)] = [27.25]
= 27 および Y’ = 2(2)x27+2 = 110 = 55QP このようにして、第二の例では、画素のY値110がY’値55QPにマップ
され、計算されたY’値110がもとのY値に等しい。
= 27 および Y’ = 2(2)x27+2 = 110 = 55QP このようにして、第二の例では、画素のY値110がY’値55QPにマップ
され、計算されたY’値110がもとのY値に等しい。
【0015】 QP値2が比較的に低いので、予想されるQP倍数の数は第一の例よりもかな
り多い。特に−2048≦Y≦2048であり、QP=2であるので、予想され
るY’値の基準量子化器R0は、{0,±3QP,±5QP,±7QP,・・・
±255QP}のように+255QPまでの値を使う。したがって、QP値2を
用いるので、予想されるY’値は、QP値が20であった第一の例に較べると大
きくなる。よって、第二の例におけるY’値の精度は第一の例よりも高い。
り多い。特に−2048≦Y≦2048であり、QP=2であるので、予想され
るY’値の基準量子化器R0は、{0,±3QP,±5QP,±7QP,・・・
±255QP}のように+255QPまでの値を使う。したがって、QP値2を
用いるので、予想されるY’値は、QP値が20であった第一の例に較べると大
きくなる。よって、第二の例におけるY’値の精度は第一の例よりも高い。
【0016】 予想されるY’値を符号化するのに必要なビット数は、入力信号Iの絶対値の
関数であり、信号が大きくなるにつれて、予想されるY’値を表すためにより多
くのビットを使うことになる。27は2よりもかなり大きいので、第二の例で予
想されるY’値の符号化に必要なビット数は第一の例よりも大きい。したがって
、QP値は、送信チャネルを所望の画質で送信されうるビット数に基づいて選択
されるべきである。なぜなら、QP値が低いほど、より精度の高い画素値の符号
化(マッピング)がなされるからである。したがって、画像フレームの中で、他
の部分よりも高い画質が望まれる部分、例えば動きのある部分に、より低いQP
値を使うことが可能である。また、輝度ブロックとクロミナンスブロックに、異
なるQP値を使うことも可能である。
関数であり、信号が大きくなるにつれて、予想されるY’値を表すためにより多
くのビットを使うことになる。27は2よりもかなり大きいので、第二の例で予
想されるY’値の符号化に必要なビット数は第一の例よりも大きい。したがって
、QP値は、送信チャネルを所望の画質で送信されうるビット数に基づいて選択
されるべきである。なぜなら、QP値が低いほど、より精度の高い画素値の符号
化(マッピング)がなされるからである。したがって、画像フレームの中で、他
の部分よりも高い画質が望まれる部分、例えば動きのある部分に、より低いQP
値を使うことが可能である。また、輝度ブロックとクロミナンスブロックに、異
なるQP値を使うことも可能である。
【0017】 DCTステップ12の結果として、ブロックの右下のすみに近づくにつれてY
’値は小さくなる傾向があり、もしQPが十分に高いならば、右下のすみに近づ
くにつれて、図4に示すように、多くの画素のY’値はゼロになる。図4におい
て、「X」はゼロ以外の値を示し、「0」は、ゼロの値を示す。 量子化ステップ16の後、ブロックの画素値は、可変長符号化ステップ18に
おいて、ハフマン符号化のような、適切なエントロピー符号化方式を用いて符号
化される。コストが低く、精度が高く、また効率が良いので、ハフマン符号化は
望ましい。この符号化によって画素値が比較的短いバイナリコードシーケンスお
よびゼロのストリング(Runと呼ばれる)でもって符号化される。このゼロの
ストリングは、量子化されたブロックの右下のすみに近づくにつれてより多く現
れる傾向があり、また、次の画素のためのコードと共1つのバイナリストリング
に符号化される。図4の矢印20に示されるように、各画素のためのデータをジ
グザグ状の順番でコード化することによって効率はさらに高められる。
’値は小さくなる傾向があり、もしQPが十分に高いならば、右下のすみに近づ
くにつれて、図4に示すように、多くの画素のY’値はゼロになる。図4におい
て、「X」はゼロ以外の値を示し、「0」は、ゼロの値を示す。 量子化ステップ16の後、ブロックの画素値は、可変長符号化ステップ18に
おいて、ハフマン符号化のような、適切なエントロピー符号化方式を用いて符号
化される。コストが低く、精度が高く、また効率が良いので、ハフマン符号化は
望ましい。この符号化によって画素値が比較的短いバイナリコードシーケンスお
よびゼロのストリング(Runと呼ばれる)でもって符号化される。このゼロの
ストリングは、量子化されたブロックの右下のすみに近づくにつれてより多く現
れる傾向があり、また、次の画素のためのコードと共1つのバイナリストリング
に符号化される。図4の矢印20に示されるように、各画素のためのデータをジ
グザグ状の順番でコード化することによって効率はさらに高められる。
【0018】 レシーバ側で、ハフマン符号化された送信は復号化され、Y’値の符号化され
たブロックの復元された値が得られる。その後、上記の計算とは逆の計算がY’
値について行われ、もとのY値を表すものが得られる。図5aおよび図5bは、
このH.263+規格においての符号化および復号化に用いられる可変長符号化
テーブルである。
たブロックの復元された値が得られる。その後、上記の計算とは逆の計算がY’
値について行われ、もとのY値を表すものが得られる。図5aおよび図5bは、
このH.263+規格においての符号化および復号化に用いられる可変長符号化
テーブルである。
【0019】 (関連出願の相互参照) 本出願は、1997年12月1日に出願された米国特許出願番号08/980
,654、画像信号符号化方式およびプロセスのための適応量子化フレームワー
クにおける適応エントロピー符号化、の一部継続出願である。 本出願は、1997年12月1日に出願された米国特許出願番号08/980
,654、画像信号符号化システムおよびプロセスのための適応量子化フレーム
ワークにおける適応エントロピー符号化、の一部継続出願である。
,654、画像信号符号化方式およびプロセスのための適応量子化フレームワー
クにおける適応エントロピー符号化、の一部継続出願である。 本出願は、1997年12月1日に出願された米国特許出願番号08/980
,654、画像信号符号化システムおよびプロセスのための適応量子化フレーム
ワークにおける適応エントロピー符号化、の一部継続出願である。
【0020】 (発明の開示) 本発明を実施する最適な形態について、以下に詳細に記載する。しかし、以下
の記載は、発明の実施形態の基本原理を示すためのものであり、発明を何ら限定
するものではない。発明の範囲は、添付のクレームにおいて明確に定義される。 現行のH.263+及びMPEG4動画規格を用いる従来の符号化システムは、1つの量子
化器R0しか含まないため、入力信号の変化に応じて量子化値を変える機能を持た
なかった。
の記載は、発明の実施形態の基本原理を示すためのものであり、発明を何ら限定
するものではない。発明の範囲は、添付のクレームにおいて明確に定義される。 現行のH.263+及びMPEG4動画規格を用いる従来の符号化システムは、1つの量子
化器R0しか含まないため、入力信号の変化に応じて量子化値を変える機能を持た
なかった。
【0021】 本発明の実施の形態では、所定の量子化器R0−Rnからなる量子化器グループか
ら最も適した量子化器を選ぶことにより、各フレーム毎の量子化を、あるいはよ
り好適には各フレーム部分毎の量子化を、量子化ステップ16において行う方法が
提案される。この方法によると、異なる画像フレームについて、あるいはより好
適には同じフレームの異なる部分について、異なる量子化器を用いることができ
るため、より高い精度とより低いビットレートが実現できる。この方法は、同一
の発明者によって1997年2月13日に申請された同時係属米国出願「適応量子化を 用いた画像信号符号化システムとその方法」(SerialNo.08/799,995)にて、一 部記載されている。
ら最も適した量子化器を選ぶことにより、各フレーム毎の量子化を、あるいはよ
り好適には各フレーム部分毎の量子化を、量子化ステップ16において行う方法が
提案される。この方法によると、異なる画像フレームについて、あるいはより好
適には同じフレームの異なる部分について、異なる量子化器を用いることができ
るため、より高い精度とより低いビットレートが実現できる。この方法は、同一
の発明者によって1997年2月13日に申請された同時係属米国出願「適応量子化を 用いた画像信号符号化システムとその方法」(SerialNo.08/799,995)にて、一 部記載されている。
【0022】 量子化器の選択は、符号化対象の画像信号のある部分について、どの量子化器
が最適な歪み・ビットレート特性を与えることができるかという決定に基づいて
なされる。この選択には、歪みとビットレートとを双方とも考慮に入れた式が用
いられる。歪み・ビットレート特性に関する類似の式が、符号化中の各画像信号
値のために選択された量子化器の中で、特定の量子化値を選ぶのに用いられる。
が最適な歪み・ビットレート特性を与えることができるかという決定に基づいて
なされる。この選択には、歪みとビットレートとを双方とも考慮に入れた式が用
いられる。歪み・ビットレート特性に関する類似の式が、符号化中の各画像信号
値のために選択された量子化器の中で、特定の量子化値を選ぶのに用いられる。
【0023】 複数の量子化器R0−Rnはそれぞれ、実際の画像信号値を最も近接に予測す ると思われる量子化値の組を有している。これら量子化器R0−Rnは、実験に よって得られるものである。異なる量子化器は、異なるQP値から得られることに
してもよい。 一例として、米国出願No.08/799,995では、量子化ステップQPについて、以下 の量子化器R0−Rnのグループが提案されている。
してもよい。 一例として、米国出願No.08/799,995では、量子化ステップQPについて、以下 の量子化器R0−Rnのグループが提案されている。
【0024】 R0=[0,±3QP,±5QP,±7QP,...,±255QP} R1=[0,±3QP,±6QP,±7QP,...,±255QP} R2=[0,±3QP,±4QP,±7QP,...,±255QP} R3=[0,±2QP,±6QP,±7QP,...,±255QP} R4=[0,±2QP,±5QP,±7QP,...,±255QP} R5=[0,±2QP,±4QP,±7QP,...,±255QP} R6=[0,±2QP,±3QP,±7QP,...,±255QP} R7=[0,±4QP,±6QP,±7QP,...,±255QP} R8=[0,±4QP,±5QP,±7QP,...,±255QP} R9=[0,±1QP,±6QP,±7QP,...,±255QP} R10=[0,±1QP,±5QP,±7QP,...,±255QP} R11=[0,±1QP,±4QP,±7QP,...,±255QP} R12=[0,±1QP,±3QP,±7QP,...,±255QP} R13=[0,±1QP,±2QP,±7QP,...,±255QP} R14=[0,±5QP,±6QP,±7QP,...,±255QP} ここで、ゼロ以外の最も低い2つの量子化値が、15個の量子化器全てにおいて 異なっている。このように、各量子化器がゼロ以外の最も低い2つのレベルイン デックスとして異なる量子化値を有することで、大部分の入力レベルが存在する
領域において効率的な量子化が可能となる。本発明の適応量子化法によると、上
記のものとは異なる量子化器グループが、それらの有する量子化値によって定義
される。本発明では、より効率的で確実な結果が得られたことから、以下の量子
化器R0−Rnのグループを、好ましい形態として提示する。
領域において効率的な量子化が可能となる。本発明の適応量子化法によると、上
記のものとは異なる量子化器グループが、それらの有する量子化値によって定義
される。本発明では、より効率的で確実な結果が得られたことから、以下の量子
化器R0−Rnのグループを、好ましい形態として提示する。
【0025】 R0=[0,±3QP-α,±5QP-α,±7QP-α,...,±255QP-α} R1=[0,±3QP-α,±6QP-α,±7QP-α,...,±255QP-α} R2=[0,±3QP-α,±4QP-α,±7QP-α,...,±255QP-α} R3=[0,±2QP-α,±6QP-α,±7QP-α,...,±255QP-α} R4=[0,±2QP-α,±5QP-α,±7QP-α,...,±255QP-α} R5=[0,±2QP-α,±4QP-α,±7QP-α,...,±255QP-α} R6=[0,±2QP-α,±3QP-α,±7QP-α,...,±255QP-α} R7=[0,±4QP-α,±6QP-α,±7QP-α,...,±255QP-α} R8=[0,±4QP-α,±5QP-α,±7QP-α,...,±255QP-α} R9=[0,±1QP-α,±6QP-α,±7QP-α,...,±255QP-α} R10=[0,±1QP-α,±5QP-α,±7QP-α,...,±255QP-α} R11=[0,±1QP-α,±4QP-α,±7QP-α,...,±255QP-α} R12=[0,±1QP-α,±3QP-α,±7QP-α,...,±255QP-α} R13=[0,±1QP-α,±2QP-α,±7QP-α,...,±255QP-α} R14=[0,±5QP-α,±6QP-α,±7QP-α,...,±255QP-α} ここで、量子化ステップサイズQPは、1から31のうちのどの値であってもよい 。QPが偶数であれば、α=1であり、QPが奇数であれば、α=0である。各量子化器
の量子化値は、その量子化器に対応する一次元の量子化値配列の該当する要素内
に記憶されており、量子化値Levelインデックスを用いて取り出すことができる 。
の量子化値は、その量子化器に対応する一次元の量子化値配列の該当する要素内
に記憶されており、量子化値Levelインデックスを用いて取り出すことができる 。
【0026】 量子化器R0−Rnの個数はいくつであってもよいが、それら量子化器は互いに適
切な程度相違している必要がある。特に、QPの倍数の低い部分において互いに異
なる量子化器を用いれば、大幅に精度とビットレートが改善されることが判明し
た。このことから、上記の量子化器R0−R14は、ゼロ以外の2つの最も低いQP倍数
(つまり、7QP未満で-7QPより大きい)において互いに異なるよう設定されてい る。これら量子化器R0−R14は、-7QPから7QPまでの範囲で、QP倍数の全ての可能
な数列を表わす。6より大きく-6より小さいQP倍数については、上記の量子化 器は全て同一である。こうして、量子化ステップ16において、15個の量子化
器R0−R14のうちの一つが選ばれ、あるフレームやあるフレームの一部分の符号 化に用いられる。この量子化器Rxは、フレームやフレーム部分(8×8画素ブロッ
クあるいは16×16画素ブロック)に応じて変えることができる。
切な程度相違している必要がある。特に、QPの倍数の低い部分において互いに異
なる量子化器を用いれば、大幅に精度とビットレートが改善されることが判明し
た。このことから、上記の量子化器R0−R14は、ゼロ以外の2つの最も低いQP倍数
(つまり、7QP未満で-7QPより大きい)において互いに異なるよう設定されてい る。これら量子化器R0−R14は、-7QPから7QPまでの範囲で、QP倍数の全ての可能
な数列を表わす。6より大きく-6より小さいQP倍数については、上記の量子化 器は全て同一である。こうして、量子化ステップ16において、15個の量子化
器R0−R14のうちの一つが選ばれ、あるフレームやあるフレームの一部分の符号 化に用いられる。この量子化器Rxは、フレームやフレーム部分(8×8画素ブロッ
クあるいは16×16画素ブロック)に応じて変えることができる。
【0027】 さきの例は、絶対値7未満のゼロでないQP倍数において異なる全ての可能な量 子化器として15個の量子化器R0−R14が用いられたが、より高い絶対値のQP倍数 において異なる量子化値の組を生成して、量子化器の数を増やすことも可能であ
る。同様に、より低い絶対値のQP倍数において異なる量子化値の組を生成して、
量子化器の数を減らすことも可能である。さらに、実験によって、量子化器のグ
ループから選択される可能性が最も高い量子化器の組を特定して、これら特定さ
れた量子化器のみを用いてもよい。例えば、上記の量子化器R0−R14に対して以 下に述べる選択手法を行った実験から、量子化器R0、R3、R7、R14が最も頻繁に 選択されやすいことが分かった。
る。同様に、より低い絶対値のQP倍数において異なる量子化値の組を生成して、
量子化器の数を減らすことも可能である。さらに、実験によって、量子化器のグ
ループから選択される可能性が最も高い量子化器の組を特定して、これら特定さ
れた量子化器のみを用いてもよい。例えば、上記の量子化器R0−R14に対して以 下に述べる選択手法を行った実験から、量子化器R0、R3、R7、R14が最も頻繁に 選択されやすいことが分かった。
【0028】 適切な量子化器Rxの選択は、任意の適当な判断基準に基づいて行われてもよい
。本実施の形態では、歪みとビットレートとを共に考慮した式 E=D+λr を用いて、エラーEを最小にするRxが選ばれる。ここで、Dは、動画像部分の歪
み量の定量値であり、rは、符号化ステップ18において得られるビットコード長 によって定まる定量ビットレートである。歪み量とビットレートのどちらか一方
のみを基準にしたものなど、他のエラー算出式を用いてもよい。
。本実施の形態では、歪みとビットレートとを共に考慮した式 E=D+λr を用いて、エラーEを最小にするRxが選ばれる。ここで、Dは、動画像部分の歪
み量の定量値であり、rは、符号化ステップ18において得られるビットコード長 によって定まる定量ビットレートである。歪み量とビットレートのどちらか一方
のみを基準にしたものなど、他のエラー算出式を用いてもよい。
【0029】 上記の式によると、ビットレートrが全体のエラー値Eに与える影響は、λの因
数によって重み付けされる。λの値は、量子化器選択におけるビットレートの影
響の所望の割合を基にして、設計パラメータとして予め決定されたものでもいい
し、ビットレートの関数として実際に算出してもよい。あるいは、λrの値を、 異なるビットレート毎に予め計算・記憶しておいて、プロセッサがアクセスする
ようにしてもよい。こうすれば、入力サンプル毎に積λrを算出する手間が省け る。数多くの適用例においてすぐれた結果を生じたことから、λ=2が好適である
ことが分かった。
数によって重み付けされる。λの値は、量子化器選択におけるビットレートの影
響の所望の割合を基にして、設計パラメータとして予め決定されたものでもいい
し、ビットレートの関数として実際に算出してもよい。あるいは、λrの値を、 異なるビットレート毎に予め計算・記憶しておいて、プロセッサがアクセスする
ようにしてもよい。こうすれば、入力サンプル毎に積λrを算出する手間が省け る。数多くの適用例においてすぐれた結果を生じたことから、λ=2が好適である
ことが分かった。
【0030】 このように、量子化ステップ16は、量子化器グループにおける各量子化器によ
って得られる歪み量及びビットレートに基づいたエラー値Eの計算を含む。この ことは、多数の量子化器を備えるシステムでは、計算量の増大につながるため、
量子化器の個数を、選択される可能性が最も高い量子化器(さきの例では、R0、
R3、R7、R14)に限定してもよい。
って得られる歪み量及びビットレートに基づいたエラー値Eの計算を含む。この ことは、多数の量子化器を備えるシステムでは、計算量の増大につながるため、
量子化器の個数を、選択される可能性が最も高い量子化器(さきの例では、R0、
R3、R7、R14)に限定してもよい。
【0031】 各フレームあるいはフレーム部分用にどの量子化器が量子化ステップ16におい
て選択・使用されたかを示すために、選択された量子化器Rxに対応する識別コー
ドを受信機に供する必要がある。識別コードに要するビット数は、量子化器集合
に含まれる量子化器の個数によって定まる。上記例のように量子化器が15個ある
場合は、識別コードとして固定長コードワードを用いるなら、識別コードは4ビ ットとなる。量子化器がR0、R3、R7、R14の4個のみの場合は、識別コードは2ビ ットとなる。あるいは、量子化器を表わすのに可変長コードワードを用いてもい
い(例えば、頻繁に選択される量子化器を短いコードワードで表わし、あまり選
択されない量子化器を長いコードワードで表わす)。本発明の方法によると、各
符号化フレームやフレーム部分の送信シーケンスに量子化器識別コードを含めた
としても、従来の方法に比べて、高い精度が得られると共に、ビットレート全体
において改善が見られる。
て選択・使用されたかを示すために、選択された量子化器Rxに対応する識別コー
ドを受信機に供する必要がある。識別コードに要するビット数は、量子化器集合
に含まれる量子化器の個数によって定まる。上記例のように量子化器が15個ある
場合は、識別コードとして固定長コードワードを用いるなら、識別コードは4ビ ットとなる。量子化器がR0、R3、R7、R14の4個のみの場合は、識別コードは2ビ ットとなる。あるいは、量子化器を表わすのに可変長コードワードを用いてもい
い(例えば、頻繁に選択される量子化器を短いコードワードで表わし、あまり選
択されない量子化器を長いコードワードで表わす)。本発明の方法によると、各
符号化フレームやフレーム部分の送信シーケンスに量子化器識別コードを含めた
としても、従来の方法に比べて、高い精度が得られると共に、ビットレート全体
において改善が見られる。
【0032】 量子化器内の量子化値(QP倍数)の選択にエラー算出ステップを用いれば、ビ
ットレート及び精度をさらに改善することができる。特に、上記に述べたように
、算出されたY’の値に最も近いか、あるいは最も近くかつY’以下である、QP倍
数を選択する代わりに、エラー算出ステップを取り入れることによって、各QP倍
数によって与えられるエラーE’を計算して、最も低いエラーE’を有する量子化
値を予測Y’値とする。上記のエラーEと同様に、エラーE’も、歪みとビットレ ートとを共に考慮した式 E'=D'+λ'r' から求められる。ここで、D'は、歪み量の定量値であり、r'は、ビットレート
の定量値である。λ'の値は、前述のように、全体のエラー値E'に与えるビット レートの所望の影響に基づいて、設計パラメータとして予め定められたものであ
ってもいいし、ビットレートの関数として実際に計算してもいい。また、λ'r' は、前もって計算して記憶しておいてもよい。多くの適用例において優れた結果
が得られたことから、λ'=60が好適であることが分かった。
ットレート及び精度をさらに改善することができる。特に、上記に述べたように
、算出されたY’の値に最も近いか、あるいは最も近くかつY’以下である、QP倍
数を選択する代わりに、エラー算出ステップを取り入れることによって、各QP倍
数によって与えられるエラーE’を計算して、最も低いエラーE’を有する量子化
値を予測Y’値とする。上記のエラーEと同様に、エラーE’も、歪みとビットレ ートとを共に考慮した式 E'=D'+λ'r' から求められる。ここで、D'は、歪み量の定量値であり、r'は、ビットレート
の定量値である。λ'の値は、前述のように、全体のエラー値E'に与えるビット レートの所望の影響に基づいて、設計パラメータとして予め定められたものであ
ってもいいし、ビットレートの関数として実際に計算してもいい。また、λ'r' は、前もって計算して記憶しておいてもよい。多くの適用例において優れた結果
が得られたことから、λ'=60が好適であることが分かった。
【0033】 量子化器グループから、最適な歪み・ビットレート特性を示す量子化器を選択
することにより、符号化システム全体の精度及びビットレートを大幅に向上させ
ることができる。さらに、選択された量子化器において、最適な歪み・ビットレ
ート特性を示す量子化値(QP倍数)を選択することにより、符号化システム全体
の精度及びビットレートをさらに向上させることができる。
することにより、符号化システム全体の精度及びビットレートを大幅に向上させ
ることができる。さらに、選択された量子化器において、最適な歪み・ビットレ
ート特性を示す量子化値(QP倍数)を選択することにより、符号化システム全体
の精度及びビットレートをさらに向上させることができる。
【0034】 このような符号化システムの改善を、標準ITU-Tテストシーケンスを用いた以 下の例において示す。例1では、従来のH.263規格に従って、量子化器R0が使用さ
れた。例2では、さきのエラー式、さらに、λ'の値に基づいて、量子化器R0、R3
、R7、R14の組が用いられた。例3では、量子化器R0のみが用いられ、その量子化
器において、上記のエラーE'の計算に基づいて量子化値が選択された。
れた。例2では、さきのエラー式、さらに、λ'の値に基づいて、量子化器R0、R3
、R7、R14の組が用いられた。例3では、量子化器R0のみが用いられ、その量子化
器において、上記のエラーE'の計算に基づいて量子化値が選択された。
【0035】
【表1】
【0036】
【表2】
【0037】
【表3】 上の各例から明らかなように、標準の量子化器R0を用いた例1に比べて、例2、
3の方が、より優れた歪み(信号対ノイズ比)、ビットレート、フレームレート 特性が得られた。これらの例は、同じビットレートで同じ符号化品質におけるフ
レームレートの向上や、同じフレームレートで一定の量子化ステップサイズにお
ける品質の向上及びビットレートの低減といった、符号化効率の改善を示してい
る。
3の方が、より優れた歪み(信号対ノイズ比)、ビットレート、フレームレート 特性が得られた。これらの例は、同じビットレートで同じ符号化品質におけるフ
レームレートの向上や、同じフレームレートで一定の量子化ステップサイズにお
ける品質の向上及びビットレートの低減といった、符号化効率の改善を示してい
る。
【0038】 本発明は、適応量子化フレームワークの符号化ステップ18において、適応エン
トロピー符号化システムとその方法を採用する。本発明の1つの実施形態におい て、(Level、Run、Last)列で表わされる各イベントが、三次元可変長符号化(
VLC)テーブルの組を用いて適応エントロピー符号化(符号化及び復号化)され る。これらイベントは、入力シグナル中最も発生率の高い画素に対応しており、
VLCテーブルに記憶される。各三次元VLCテーブルはさらに、イベント毎に割り当
てられたビットコードとその符号とを有する。Levelは、入力信号画素置に最も 近似した量子化値に対応する量子化器のLevelインデックスに相当する。Runは、
当該イベントの前のゼロの画素の個数を示す。ゼロ以外のLastは、ブロックの最
後に位置するノンゼロの画素を示す。本実施の形態において、VLCテーブルは
、オフライン学習手順によって決定され、各量子化器Rxは各自、最適化された
VLCテーブルを有する。
トロピー符号化システムとその方法を採用する。本発明の1つの実施形態におい て、(Level、Run、Last)列で表わされる各イベントが、三次元可変長符号化(
VLC)テーブルの組を用いて適応エントロピー符号化(符号化及び復号化)され る。これらイベントは、入力シグナル中最も発生率の高い画素に対応しており、
VLCテーブルに記憶される。各三次元VLCテーブルはさらに、イベント毎に割り当
てられたビットコードとその符号とを有する。Levelは、入力信号画素置に最も 近似した量子化値に対応する量子化器のLevelインデックスに相当する。Runは、
当該イベントの前のゼロの画素の個数を示す。ゼロ以外のLastは、ブロックの最
後に位置するノンゼロの画素を示す。本実施の形態において、VLCテーブルは
、オフライン学習手順によって決定され、各量子化器Rxは各自、最適化された
VLCテーブルを有する。
【0039】 本発明に係る別の実施形態では、全ての量子化器が、1つの最適化されたVLCテ
ーブルを共有する。同実施の形態において得られた、共通のVLCテーブルに対応 するバイナリコードの長さを、ブロック内の最終イベント及びそれ以外のイベン
トについて、図6、7のテーブルに示す。 本発明に係るさらに別の実施形態では、符号化プロセッサが、適応量子化フレ
ームワークにおいて、本発明の適応エントロピー符号化方法を実施する。この符
号化プロセッサは、汎用コンピュータであってもいいし、特定の専用コンピュー
タであってもいい。これを用いて、量子化ステップ16における入力画像信号に
最も近い量子化器Rxの決定を含むマクロブロック符号化が行われる。量子化器が
決定されると、各イベントの量子化値毎のLevelインデックスが、以下の手順で 得られる。
ーブルを共有する。同実施の形態において得られた、共通のVLCテーブルに対応 するバイナリコードの長さを、ブロック内の最終イベント及びそれ以外のイベン
トについて、図6、7のテーブルに示す。 本発明に係るさらに別の実施形態では、符号化プロセッサが、適応量子化フレ
ームワークにおいて、本発明の適応エントロピー符号化方法を実施する。この符
号化プロセッサは、汎用コンピュータであってもいいし、特定の専用コンピュー
タであってもいい。これを用いて、量子化ステップ16における入力画像信号に
最も近い量子化器Rxの決定を含むマクロブロック符号化が行われる。量子化器が
決定されると、各イベントの量子化値毎のLevelインデックスが、以下の手順で 得られる。
【0040】 8×8画素のブロックに対して、実際の量子化値を得るにあたって、最も重要な
DC信号画素値を最初に注目する。DCTステップ12にて得られた、周波数領域にお いて表現される値からなるブロックでは、8×8ブロックの左上端成分が最重要と
なる。エンコーダにおいて、このDC画素のLevelを、「Level=(DC画素の実効値
)/8」の式から求める。デコーダでは、DC画素の復元信号値を、「Rec=Level*
8」として求める。その他の画像信号入力値については、符号化処理における量 子化ステップ16にて、歪み・ビットレートを考慮した上記のエラーE’算出式 E’=D’+λ’r’ を用いて、各画素のLevelインデックスが求められる。Levelインデックスは、
量子化器Rxの一次元量子化値配列に対する指標を表わし、この配列の要素は、実
効画素値に最も近い値と画素値の正負符号とを有する。例えば、画素値が45で、
選ばれた量子化器がR2の場合、QP=16及びα=1が成立し、量子化器R2は |R2|={0,(3*16-1),(4*16-1),(7*16-1),...,(255*16-1)} ={0,47,63,111,...,4079} という式によって表わされる。この場合、入力画素値45が量子化器R2における
最初のノンゼロ量子化値47に最も近いため、Level=1である。 符号化ステップ18において、Level=1が、Run及びLastと共に符号化され、VLCテ ーブルから選ばれた該当するバイナリコードが、実効画素入力値の正負符号と共
に、デコーダに送られる。さらに、マクロブロック毎に、どの量子化器がそのマ
クロブロックの復号に用いられるかを示すため、固定長のバイナリ識別コードが
デコーダに送られる。
DC信号画素値を最初に注目する。DCTステップ12にて得られた、周波数領域にお いて表現される値からなるブロックでは、8×8ブロックの左上端成分が最重要と
なる。エンコーダにおいて、このDC画素のLevelを、「Level=(DC画素の実効値
)/8」の式から求める。デコーダでは、DC画素の復元信号値を、「Rec=Level*
8」として求める。その他の画像信号入力値については、符号化処理における量 子化ステップ16にて、歪み・ビットレートを考慮した上記のエラーE’算出式 E’=D’+λ’r’ を用いて、各画素のLevelインデックスが求められる。Levelインデックスは、
量子化器Rxの一次元量子化値配列に対する指標を表わし、この配列の要素は、実
効画素値に最も近い値と画素値の正負符号とを有する。例えば、画素値が45で、
選ばれた量子化器がR2の場合、QP=16及びα=1が成立し、量子化器R2は |R2|={0,(3*16-1),(4*16-1),(7*16-1),...,(255*16-1)} ={0,47,63,111,...,4079} という式によって表わされる。この場合、入力画素値45が量子化器R2における
最初のノンゼロ量子化値47に最も近いため、Level=1である。 符号化ステップ18において、Level=1が、Run及びLastと共に符号化され、VLCテ ーブルから選ばれた該当するバイナリコードが、実効画素入力値の正負符号と共
に、デコーダに送られる。さらに、マクロブロック毎に、どの量子化器がそのマ
クロブロックの復号に用いられるかを示すため、固定長のバイナリ識別コードが
デコーダに送られる。
【0041】 デコーダでは、第1のステップで、固定長コードを復号化して、使用される量 子化器Rx(ここではR2)が特定される。その後、その量子化器に対応するエンコ
ーダが用いたものと同じ三次元VCLテーブルを用いて、各イベント(Level、Run 、Last)のバイナリコードを復号化して、各画素の実際の量子化値を復元して、
量子化器R2からLevelインデックス(ここでは1)に対応する量子化値(ここでは
47)を得る。この復元信号値は、Rec=|Rec|*sign(Level)として求められる
。|Rec|は、復元式|Rec|=R_{I}[|Level|]から求められる。ここで、
R_{I}[.]は選択された量子化器を、LevelはLevelインデックスを、|Rec|
は復元値の絶対値(ここでは量子化値47に対応する)を表わす。
ーダが用いたものと同じ三次元VCLテーブルを用いて、各イベント(Level、Run 、Last)のバイナリコードを復号化して、各画素の実際の量子化値を復元して、
量子化器R2からLevelインデックス(ここでは1)に対応する量子化値(ここでは
47)を得る。この復元信号値は、Rec=|Rec|*sign(Level)として求められる
。|Rec|は、復元式|Rec|=R_{I}[|Level|]から求められる。ここで、
R_{I}[.]は選択された量子化器を、LevelはLevelインデックスを、|Rec|
は復元値の絶対値(ここでは量子化値47に対応する)を表わす。
【0042】 本発明の別の実施形態では、オフセットγがマクロブロックの各画素に与えら
れた後、量子化ステップ16を行う。各画素値xiは、オフセットにより「ゼロ」レ
ベルへ偏ることになる。これにより、マクロブロックの歪み・ビットレート特性
と、選択される量子化器Rxとの整合がさらに高まる。オフセットγを用いて量子
化ステップ16を行う方法を、図11の動作ブロック図に示す。まずステップ100に おいて、画素値からなる特定のマクロブロックに対して、量子化器Rxがn個の量 子化器の集合から選択される。マクロブロックは、8×8画素ブロックなどの複数
の画素ブロックの集合である。ステップ102において、変数オフセットγがブロ ック毎に選択される。ここで、オフセットγは、所定範囲-t<γ<t内である。
続いて、ステップ104で、あるブロックの画素値xiがオフセットγにより修正さ れ、修正画素値(xi-γ)となる。同ブロックにおける各修正画素値は、ステッ プ106で、選択された量子化器Rxの最も近い有効量子化値yiに写像される。
れた後、量子化ステップ16を行う。各画素値xiは、オフセットにより「ゼロ」レ
ベルへ偏ることになる。これにより、マクロブロックの歪み・ビットレート特性
と、選択される量子化器Rxとの整合がさらに高まる。オフセットγを用いて量子
化ステップ16を行う方法を、図11の動作ブロック図に示す。まずステップ100に おいて、画素値からなる特定のマクロブロックに対して、量子化器Rxがn個の量 子化器の集合から選択される。マクロブロックは、8×8画素ブロックなどの複数
の画素ブロックの集合である。ステップ102において、変数オフセットγがブロ ック毎に選択される。ここで、オフセットγは、所定範囲-t<γ<t内である。
続いて、ステップ104で、あるブロックの画素値xiがオフセットγにより修正さ れ、修正画素値(xi-γ)となる。同ブロックにおける各修正画素値は、ステッ プ106で、選択された量子化器Rxの最も近い有効量子化値yiに写像される。
【0043】 ここで、z個の量子化レベルに対してRx={0,±y1,±y2,...,±yz-1}である。
ブロック全体を量子化した後、ステップ108において、選択された量子化器Rxと オフセットγを用いたブロック量子化において得られる有効ビットレートreffを
算出する。有効ビットレートreffは、公知の方法で特定することができる。例え
ば、ブロックのLevelとRunとを送信するのに用いた実効ハフマンテーブルにおけ
るテーブル探索操作により正確に算出することができる。ステップ110で、全画 素の歪みを以下のように合計して、ブロックの全体歪みDを算出する。
ブロック全体を量子化した後、ステップ108において、選択された量子化器Rxと オフセットγを用いたブロック量子化において得られる有効ビットレートreffを
算出する。有効ビットレートreffは、公知の方法で特定することができる。例え
ば、ブロックのLevelとRunとを送信するのに用いた実効ハフマンテーブルにおけ
るテーブル探索操作により正確に算出することができる。ステップ110で、全画 素の歪みを以下のように合計して、ブロックの全体歪みDを算出する。
【0044】
【数3】 ここで、nはブロックに含まれる画素数である。 ステップ112において、ブロック全体の歪みDと有効ビットレートreffとを考慮に
入れた重み付け歪みEが、選択されたオフセットγに対して、以下の式により求 められる。
入れた重み付け歪みEが、選択されたオフセットγに対して、以下の式により求 められる。
【0045】 E=D+λreff ここで、λは所定の定数である。続いて、ステップ114でオフセットγを-t< γ<tの範囲で変化させて、-t<γ<tの範囲の値毎に、同じ量子化器Rxを用いて
、同じブロックに対してステップ102からステップ112を繰り返す。ステップ116 において、ブロックの重み付け歪みEを最小にするオフセットγを、選択された 量子化器Rxに対する、そのブロックの最適オフセットに決定する。ステップ118 で、マクロブロックの残りのブロックそれぞれに対して、同じ量子化器Rxを用い
て、ステップ102からステップ116を繰り返す。ステップ120で、ブロック毎にス テップ116で得られた最小重み付け歪みEを合計することにより、マクロブロック
全体の重み付け歪みEallを算出する。ステップ122で、適応量子化法により、n個
の量子化器から異なる量子化器Rxを選び、ステップ100からステップ120を繰り返
して、その量子化器Rxについての最小重み付け歪みEallを算出する。n個の量子 化器全てについて、最小重み付け歪みEallが得られるまで、上記処理を繰り返す
。各量子化器に対して、ある特定のオフセットγが、その量子化器を用いたとき
の最小重み付け歪みEallを与える。最後に、ステップ124で、マクロブロック全 体において重み付け歪みEallを最小にする量子化器を、対応するオフセットと共
に、最適量子化器Roptとして選択する。
、同じブロックに対してステップ102からステップ112を繰り返す。ステップ116 において、ブロックの重み付け歪みEを最小にするオフセットγを、選択された 量子化器Rxに対する、そのブロックの最適オフセットに決定する。ステップ118 で、マクロブロックの残りのブロックそれぞれに対して、同じ量子化器Rxを用い
て、ステップ102からステップ116を繰り返す。ステップ120で、ブロック毎にス テップ116で得られた最小重み付け歪みEを合計することにより、マクロブロック
全体の重み付け歪みEallを算出する。ステップ122で、適応量子化法により、n個
の量子化器から異なる量子化器Rxを選び、ステップ100からステップ120を繰り返
して、その量子化器Rxについての最小重み付け歪みEallを算出する。n個の量子 化器全てについて、最小重み付け歪みEallが得られるまで、上記処理を繰り返す
。各量子化器に対して、ある特定のオフセットγが、その量子化器を用いたとき
の最小重み付け歪みEallを与える。最後に、ステップ124で、マクロブロック全 体において重み付け歪みEallを最小にする量子化器を、対応するオフセットと共
に、最適量子化器Roptとして選択する。
【0046】 本発明に係るさらに別の実施形態では、図12に示すように、レベル値yiと連続
するゼロのラン値Ziとの全ての可能な組み合わせに対応するデシジョンレベルの
トレリスをサーチすることにより、量子化ステップ16を行う。このトレリスは、
量子化されている画素の個数に等しい数のステージを含む。各画素は、該当する
デシジョンレベル、つまり、レベル値yiあるいはゼロラン値Ziに写像される。ト
レリスにおいて、あるステージのデシジョンレベルから次のステージのデシジョ
ンレベルへの遷移は、対応する歪み・ビットレートによって重み付けされる。こ
の実施例において、遷移により生じる歪みとビットレートの分析により、ブロッ
ク内の全ての画素について最適なトレリスパスが決定され、これにより、全体の
重み付け歪みが最小となり、マクロブロックの歪み・ビットレート特性と選択量
子化器Rxとの整合がさらに向上する。
するゼロのラン値Ziとの全ての可能な組み合わせに対応するデシジョンレベルの
トレリスをサーチすることにより、量子化ステップ16を行う。このトレリスは、
量子化されている画素の個数に等しい数のステージを含む。各画素は、該当する
デシジョンレベル、つまり、レベル値yiあるいはゼロラン値Ziに写像される。ト
レリスにおいて、あるステージのデシジョンレベルから次のステージのデシジョ
ンレベルへの遷移は、対応する歪み・ビットレートによって重み付けされる。こ
の実施例において、遷移により生じる歪みとビットレートの分析により、ブロッ
ク内の全ての画素について最適なトレリスパスが決定され、これにより、全体の
重み付け歪みが最小となり、マクロブロックの歪み・ビットレート特性と選択量
子化器Rxとの整合がさらに向上する。
【0047】 最適トレリスパスは、ビタビアルゴリズム、あるいは、トレリスに関する他の
同様のアルゴリズムを用いて選択される。図12に示すトレリスは、64画素からな
る8×8ブロック用であり、よって、トレリスサーチは64ステージにわたって行わ
れる。ステージ間の値を結ぶ矢印が、ステージ間の可能な遷移を示しているが、
図12では、簡略化のため、ステージ間の全ての可能な遷移を図示しておらず、少
数の可能な遷移のみを示している。可能な遷移を決定するためには、特定の基準
がある。例えば、ゼロラン状態Zi+1には、前ステージのゼロラン状態Ziからしか
到達できず、また、初期ゼロラン状態Ziには、前ステージのレベル状態yiからし
か到達できない。ゼロラン状態Ziがレベル状態yiと共に終わるか、あるいは、ト
レリスの最終ステージに達したところで、トレリスパスを逆に辿って、そのパス
に対応する歪みとビットレートを決定することができる。使用されるトレリスが
、ブロックの画素数及び分析される量子化器の量子化レベル数に応じて変わるこ
とは、当業者には自明であろう。
同様のアルゴリズムを用いて選択される。図12に示すトレリスは、64画素からな
る8×8ブロック用であり、よって、トレリスサーチは64ステージにわたって行わ
れる。ステージ間の値を結ぶ矢印が、ステージ間の可能な遷移を示しているが、
図12では、簡略化のため、ステージ間の全ての可能な遷移を図示しておらず、少
数の可能な遷移のみを示している。可能な遷移を決定するためには、特定の基準
がある。例えば、ゼロラン状態Zi+1には、前ステージのゼロラン状態Ziからしか
到達できず、また、初期ゼロラン状態Ziには、前ステージのレベル状態yiからし
か到達できない。ゼロラン状態Ziがレベル状態yiと共に終わるか、あるいは、ト
レリスの最終ステージに達したところで、トレリスパスを逆に辿って、そのパス
に対応する歪みとビットレートを決定することができる。使用されるトレリスが
、ブロックの画素数及び分析される量子化器の量子化レベル数に応じて変わるこ
とは、当業者には自明であろう。
【0048】 最適トレリスパスを用いて量子化ステップ16を行う方法を、図13の動作ブロッ
ク図に示す。まずステップ200において、あるマクロブロックについて、n個の量
子化器から量子化器Rxを選ぶ。ステップ202で、マクロブロックの各ブロックに ついて、選んだ量子化器Rxに対して、レベル値yiと連続ゼロラン値Ziの全ての可
能な組み合わせを通じてトレリスをトラバースすることにより、画素値をどのレ
ベルに写像するかを決定する。ここで、量子化器Rxのレベル値yiは、z個の量子 化レベルに対して、Rx={0,±y1,±y2,...,±yz-1}として表わされる。トレリ ス内のステージ間の遷移毎に歪み量とビットレートriを決定するために、トレリ
スが分析される。ビットレートriは、前のゼロラン長を考慮に入れた対応するレ
ベルyiのレートである。レートriは、選ばれた量子化器Rxについて、予め決定さ
れてハフマンテーブルなどに記憶されていてもよい。各遷移は、式E=D+λriによ
って求められた対応する重み付け歪み値Eを有する。ここで、Dは、あるステージ
から次のステージへのデシジョンレベル間の歪み値であり、λは、重み付け値で
ある。トレリスの重み付け歪みE’が、トレリスの全ステージを通じて重み付け 歪み値Eを合計することにより求められる。ステップ204において、全重み付け歪
みELを最小にするようなトレリスパスを選ぶことにより、あるブロックの全画素
の量子化写像が決定される。トレリスパスは、ビタビアルゴリズムあるいはその
他の動的プログラミングアルゴリズムを用いて決定することができる。この最小
重み付け歪みELによって、ブロックについて選択された量子化器の最適なレート
・歪みトレードオフが得られる。ステップ206で、ブロックについて最小重み付 け歪みELを与えるトレリスパスが、マクロブロック内の残りのブロックに適用さ
れ、マクロブロック全体の重み付け歪みEallが得られる。
ク図に示す。まずステップ200において、あるマクロブロックについて、n個の量
子化器から量子化器Rxを選ぶ。ステップ202で、マクロブロックの各ブロックに ついて、選んだ量子化器Rxに対して、レベル値yiと連続ゼロラン値Ziの全ての可
能な組み合わせを通じてトレリスをトラバースすることにより、画素値をどのレ
ベルに写像するかを決定する。ここで、量子化器Rxのレベル値yiは、z個の量子 化レベルに対して、Rx={0,±y1,±y2,...,±yz-1}として表わされる。トレリ ス内のステージ間の遷移毎に歪み量とビットレートriを決定するために、トレリ
スが分析される。ビットレートriは、前のゼロラン長を考慮に入れた対応するレ
ベルyiのレートである。レートriは、選ばれた量子化器Rxについて、予め決定さ
れてハフマンテーブルなどに記憶されていてもよい。各遷移は、式E=D+λriによ
って求められた対応する重み付け歪み値Eを有する。ここで、Dは、あるステージ
から次のステージへのデシジョンレベル間の歪み値であり、λは、重み付け値で
ある。トレリスの重み付け歪みE’が、トレリスの全ステージを通じて重み付け 歪み値Eを合計することにより求められる。ステップ204において、全重み付け歪
みELを最小にするようなトレリスパスを選ぶことにより、あるブロックの全画素
の量子化写像が決定される。トレリスパスは、ビタビアルゴリズムあるいはその
他の動的プログラミングアルゴリズムを用いて決定することができる。この最小
重み付け歪みELによって、ブロックについて選択された量子化器の最適なレート
・歪みトレードオフが得られる。ステップ206で、ブロックについて最小重み付 け歪みELを与えるトレリスパスが、マクロブロック内の残りのブロックに適用さ
れ、マクロブロック全体の重み付け歪みEallが得られる。
【0049】 ステップ208で、マクロブロック全体について最小重み付け歪みEallを与える トレリスパスが決定されることで、選択された量子化器Rxについて最適なレート
・歪みトレードオフが得られる。ステップ210で、適応量子化法を用いて、n個の
量子化器から別の量子化器Rxが選択され、ステップ200からステップ208を繰り返
すことにより、その量子化器Rxについて、マクロブロックの重み付け歪みEallを
最小にするトレリスパスが決定される。ステップ212において、全ての量子化器 に対して同様の処理を繰り返した結果、マクロブロックの全重み付け歪みEallを
最小にするような量子化器が、対応する最適トレリスパスと共に、最適量子化器
Roptとして選択される。
・歪みトレードオフが得られる。ステップ210で、適応量子化法を用いて、n個の
量子化器から別の量子化器Rxが選択され、ステップ200からステップ208を繰り返
すことにより、その量子化器Rxについて、マクロブロックの重み付け歪みEallを
最小にするトレリスパスが決定される。ステップ212において、全ての量子化器 に対して同様の処理を繰り返した結果、マクロブロックの全重み付け歪みEallを
最小にするような量子化器が、対応する最適トレリスパスと共に、最適量子化器
Roptとして選択される。
【0050】 本発明の実施の形態では、符号化システムにおいて用いる画像信号と類似した
教師信号に学習処理を施してVLCテーブルを生成し、これを後に実効画像信号に 使用する。学習手順において、適応量子化を用いて、エラーを最小にする最適な
量子化器を特定し、各イベントの発生回数のカウントを、選択された量子化器に
対応するカウンタテーブルに保持する。学習手順の最後には、教師信号における
各イベント(Level、Run、Last)の発生率が算出される。これらの発生率を用い
て、Level、Run、Lastの各組み合わせの発生率を示す確率テーブルが生成される
。この確率テーブルの情報を基に、イベント毎に、Level、Run、Lastの組み合わ
せに対するバイナリコードを定義し、それらバイナリコードをVLCテーブルに記 憶することで、最も発生率の高いイベントに、最も短いバイナリコードが割り当
てられる。量子化器毎に別々のVLCテーブルを用いる実施形態では、それら量子 化器に対応して、カウンタテーブルや確率テーブルも複数となる。
教師信号に学習処理を施してVLCテーブルを生成し、これを後に実効画像信号に 使用する。学習手順において、適応量子化を用いて、エラーを最小にする最適な
量子化器を特定し、各イベントの発生回数のカウントを、選択された量子化器に
対応するカウンタテーブルに保持する。学習手順の最後には、教師信号における
各イベント(Level、Run、Last)の発生率が算出される。これらの発生率を用い
て、Level、Run、Lastの各組み合わせの発生率を示す確率テーブルが生成される
。この確率テーブルの情報を基に、イベント毎に、Level、Run、Lastの組み合わ
せに対するバイナリコードを定義し、それらバイナリコードをVLCテーブルに記 憶することで、最も発生率の高いイベントに、最も短いバイナリコードが割り当
てられる。量子化器毎に別々のVLCテーブルを用いる実施形態では、それら量子 化器に対応して、カウンタテーブルや確率テーブルも複数となる。
【0051】 発生率は、教師信号におけるイベントの全発生回数から算出される。発生率の
低いイベントに関しては、エスケープ(Esc)コードがテーブルに入力される。 さらに発生率の低いイベントに関しては、Level、Run、Lastに対してコード値を
定義してそのコード値をVLCテーブルに記憶する代わりに、そのイベントのLevel
とRunの実効値についての固定長コードが、デコーダに送られる。これにより、V
LCテーブルのサイズが小さくなり、処理が効率化される。各Runは、0から63の間
の値を取り得るため、6ビット(26=64)で表わされる。また、各Levelは、-127 から+127の間の値を取り得るため、8ビット(28=256)で表わされる。よって、 あるイベントに関する固定長コードは14ビットとなり、これはVLCテーブルから 選ばれる平均バイナリコード長よりずっと長い。デコーダにおいて現れるEscコ ードは、別のEscコードが受信されるまで、RunとLevelの実効値として扱われる 。
低いイベントに関しては、エスケープ(Esc)コードがテーブルに入力される。 さらに発生率の低いイベントに関しては、Level、Run、Lastに対してコード値を
定義してそのコード値をVLCテーブルに記憶する代わりに、そのイベントのLevel
とRunの実効値についての固定長コードが、デコーダに送られる。これにより、V
LCテーブルのサイズが小さくなり、処理が効率化される。各Runは、0から63の間
の値を取り得るため、6ビット(26=64)で表わされる。また、各Levelは、-127 から+127の間の値を取り得るため、8ビット(28=256)で表わされる。よって、 あるイベントに関する固定長コードは14ビットとなり、これはVLCテーブルから 選ばれる平均バイナリコード長よりずっと長い。デコーダにおいて現れるEscコ ードは、別のEscコードが受信されるまで、RunとLevelの実効値として扱われる 。
【0052】 実効画像信号の符号化は、学習処理において定義されたVLCテーブルを用いて 、可変長符号化ステップ18においてなされる。ブロックの画素値は、符号化プロ
セッサにおいて、ハフマン符号化、算術符号化、構文適応算術符号化、またはZ
iv-Lempel符号化などの適切なエントロピー符号化方式により符号化される。 コスト、精度、効率面から、また、画素値が比較的短いバイナリコード列で符号
化できることから、さらに、量子化ブロックの右下端に進むにつれて発生が増え
るゼロ列の中のゼロ数が次の画素のコードに含まれるため、こういったイベント
に別々のコードが不必要なことから、ハフマン符号化が好適である。この方法の
効果は、前述のように各画素データをジグザク順に符号化することで、さらに高
めることができる。
セッサにおいて、ハフマン符号化、算術符号化、構文適応算術符号化、またはZ
iv-Lempel符号化などの適切なエントロピー符号化方式により符号化される。 コスト、精度、効率面から、また、画素値が比較的短いバイナリコード列で符号
化できることから、さらに、量子化ブロックの右下端に進むにつれて発生が増え
るゼロ列の中のゼロ数が次の画素のコードに含まれるため、こういったイベント
に別々のコードが不必要なことから、ハフマン符号化が好適である。この方法の
効果は、前述のように各画素データをジグザク順に符号化することで、さらに高
めることができる。
【0053】 本発明の方法は、イベント毎に3つのイベントパラメータLevel、Run、Lastの 結合確率分布を利用しており、これによって、各イベントのバイナリコードの平
均長が短くなるため、ビットレートがさらに低減される。あるシーケンスの全イ
ベントのバイナリコードは連結されてバイナリディジットストリームとして記憶
・送信されることから鑑み、受信機による正確な復号化には、連結コードの全組
み合わせが一義的に解読可能であることが必要となる。このための十分な条件と
しては、どのバイナリコードワードも、VLCテーブルの他のコードワードのプレ フィックスではないというプレフィックスルールを、バイナリコードが満たす必
要がある。ハフマン符号化は、このプレフィックスルールを満たすと共に、エン
トロピーの1画素あたり1ビット以内に抑えるため、非常に効率的である。しかし
ながら、本発明は、ハフマンコードの使用に限らず、異なるエントロピー符号化
方式によっても、各VLCテーブルを生成することができる。
均長が短くなるため、ビットレートがさらに低減される。あるシーケンスの全イ
ベントのバイナリコードは連結されてバイナリディジットストリームとして記憶
・送信されることから鑑み、受信機による正確な復号化には、連結コードの全組
み合わせが一義的に解読可能であることが必要となる。このための十分な条件と
しては、どのバイナリコードワードも、VLCテーブルの他のコードワードのプレ フィックスではないというプレフィックスルールを、バイナリコードが満たす必
要がある。ハフマン符号化は、このプレフィックスルールを満たすと共に、エン
トロピーの1画素あたり1ビット以内に抑えるため、非常に効率的である。しかし
ながら、本発明は、ハフマンコードの使用に限らず、異なるエントロピー符号化
方式によっても、各VLCテーブルを生成することができる。
【0054】 図6、7に示す2つのテーブルは、全ての量子化器が1つのVLCテーブルを共有す る場合に、本発明の学習方法によって得られた三次元VLCテーブルにおけるバイ ナリコード長を示す例である。各実効VLCコードには、Level、Run、Lastの組み 合わせのバイナリコードの終端に1ビットの正負符号値が添付される。図6、7の テーブル内のRunとLevelの数は限られており、この数は、イベントの発生率によ
って定められ、必要とされる精度に応じて最小限にとどめられている。よって、
図6のテーブルにおいて、最後でないイベントについては、12個のLevelインデッ
クスと27個のRunで十分であり、図7のテーブルにおいて、最後のイベントについ
ては、256個のLevelインデックスと64個のRunの代わりに、3個のLevelインデッ クスと41個のRunのみで十分である。これらテーブルは、一例として挙げられる ものであり、本発明において使用され得る全てのテーブルを表わすものではない
。 これ以外のテーブルも本発明において生成され得ることを理解されたい。 本発明の開示する方法の使用例として、図8に示すような8×8画素入力ブロック が、適応量子化方法により量子化され、15個の量子化器から量子化器R2が選択さ
れた。量子化器R2の量子化値は、以下のように定義される。
って定められ、必要とされる精度に応じて最小限にとどめられている。よって、
図6のテーブルにおいて、最後でないイベントについては、12個のLevelインデッ
クスと27個のRunで十分であり、図7のテーブルにおいて、最後のイベントについ
ては、256個のLevelインデックスと64個のRunの代わりに、3個のLevelインデッ クスと41個のRunのみで十分である。これらテーブルは、一例として挙げられる ものであり、本発明において使用され得る全てのテーブルを表わすものではない
。 これ以外のテーブルも本発明において生成され得ることを理解されたい。 本発明の開示する方法の使用例として、図8に示すような8×8画素入力ブロック が、適応量子化方法により量子化され、15個の量子化器から量子化器R2が選択さ
れた。量子化器R2の量子化値は、以下のように定義される。
【0055】 |R2|={0,3*QP-α,4*QP-α,7*QP-α,...,255*QP-α} ここで、QPが偶数の場合、α=1であり、それ以外なら、α=0である。 符号化アルゴリズムを用いるコンピュータプログラムによって決定されるよう
に、あるブロックの各部分の符号化プロセスにおいて量子化ステップサイズQPは
変わる可能性があるが、本例では、図8のブロックについては、QP=16であり、よ
ってα=1とする。従って、量子化値は |R2|={0,(3*16-1),(4*16-1),(7*16-1),...,(255*16-1) ={0,47,63,111,...,4079} となる。量子化器R2を用いて図8の入力ブロックを量子化するにあたって、各 入力画素値は、量子化器R2の最も近い量子化値に整合されて、整合された量子化
値それぞれのLevelインデックスが、図9に示すような量子化器R2に対応する量子
化ブロックに記憶される。続いて、各画素のイベント(Level、Run、Last)を得
るために、この量子化ブロックがリニアスキャン、さらに好適にはジグザクリニ
アスキャンされ、その結果図10に示すブロックが生成される。Levelを得るため のより高度な方法として、歪みとビットレートとを共に考慮したさきのエラーE ’算出式 E’=D’+λ’r’ を用いることもできる。
に、あるブロックの各部分の符号化プロセスにおいて量子化ステップサイズQPは
変わる可能性があるが、本例では、図8のブロックについては、QP=16であり、よ
ってα=1とする。従って、量子化値は |R2|={0,(3*16-1),(4*16-1),(7*16-1),...,(255*16-1) ={0,47,63,111,...,4079} となる。量子化器R2を用いて図8の入力ブロックを量子化するにあたって、各 入力画素値は、量子化器R2の最も近い量子化値に整合されて、整合された量子化
値それぞれのLevelインデックスが、図9に示すような量子化器R2に対応する量子
化ブロックに記憶される。続いて、各画素のイベント(Level、Run、Last)を得
るために、この量子化ブロックがリニアスキャン、さらに好適にはジグザクリニ
アスキャンされ、その結果図10に示すブロックが生成される。Levelを得るため のより高度な方法として、歪みとビットレートとを共に考慮したさきのエラーE ’算出式 E’=D’+λ’r’ を用いることもできる。
【0056】 図10のブロックから、ノンゼロイベントが、Event#1からEvent#5の5つしかな いことが分かる。 Event#1=[Level=3, Run=0, Last=0] Event#2=[Level=1, Run=0, Last=0] Event#3=[Level=2, Run=0, Last=0] Event#4=[Level=2, Run=1, Last=0] Event#5=[Level=1, Run=0, Last=1] Event#4におけるRun=1は、このイベントの前に1つのゼロがあることを示す。E
vent#5におけるLast=1は、これが最後のノンゼロイベントであることを示す。
vent#5におけるLast=1は、これが最後のノンゼロイベントであることを示す。
【0057】 もしこの入力ブロックが学習処理に用いられる教師ブロックであるなら、量子
化器R2についてのカウンタテーブルにおけるこれら5つのイベントのカウントは 、5つのイベントが量子化器R2によって量子化される可能性のある入力画素値を 含むことを示すために、インクリメントされる。学習処理を複数の教師シーケン
スにわたって行うことによって、教師シーケンスのブロック毎あるいはブロック
の部分毎に、異なる量子化器が選択されることになる。各ブロックについて、選
択された量子化器に応じて、各イベントの適切なカウンタテーブルが更新され、
イベント発生率の算出に用いられる。これらの発生率は、VLCテーブルのバイナ リコードに直接的に関連するため、量子化器毎に個別のVLCテーブルが生成され てもいい。各バイナリコード長が、特定のイベントがその量子化器によって量子
化可能である確率に対応することから、量子化器毎に異なるVLCテーブルを用い ることによって、最適な長さのバイナリコードが得られる。
化器R2についてのカウンタテーブルにおけるこれら5つのイベントのカウントは 、5つのイベントが量子化器R2によって量子化される可能性のある入力画素値を 含むことを示すために、インクリメントされる。学習処理を複数の教師シーケン
スにわたって行うことによって、教師シーケンスのブロック毎あるいはブロック
の部分毎に、異なる量子化器が選択されることになる。各ブロックについて、選
択された量子化器に応じて、各イベントの適切なカウンタテーブルが更新され、
イベント発生率の算出に用いられる。これらの発生率は、VLCテーブルのバイナ リコードに直接的に関連するため、量子化器毎に個別のVLCテーブルが生成され てもいい。各バイナリコード長が、特定のイベントがその量子化器によって量子
化可能である確率に対応することから、量子化器毎に異なるVLCテーブルを用い ることによって、最適な長さのバイナリコードが得られる。
【0058】 上記の例では、5つのイベントそれぞれのバイナリコードが、受信機に送信さ れ復号化される。受信機はさらに、マクロブロック全体に使われる量子化器(本
例ではR2)を示す4ビットコードを受け取る。受信機は、送信されたバイナリコ ードからLevelインデックス、Run、Lastを復号するために、エンコーダで用いた
量子化器に対応するVLCバイナリコードテーブルを選択する。
例ではR2)を示す4ビットコードを受け取る。受信機は、送信されたバイナリコ ードからLevelインデックス、Run、Lastを復号するために、エンコーダで用いた
量子化器に対応するVLCバイナリコードテーブルを選択する。
【0059】 学習処理におけるテーブルは、様々な方法によって生成することができる。学
習、発生率算出、そして最終的なVLCバイナリコードテーブル生成の方法の1つに
、学習処理全体にわたって量子化ステップサイズQPを一定値に固定して、異なる
量子化器毎に得られた個々のイベントの発生率を用いて、全量子化器についてVL
Cテーブルを生成するものがある。また、別の学習方法では、異なるQPにおける 学習によって異なる量子化器の個々のイベント毎の発生率を得て、異なるQP毎の
各イベントの発生率を平均化するものもある。よって、学習処理は、入力信号値
に応じて選択してもよい。しかしながら、如何なる学習処理であっても、学習中
の条件が十分に一般的であれば、広範な環境に適応可能な頑強なVLCテーブルを 得ることができる。
習、発生率算出、そして最終的なVLCバイナリコードテーブル生成の方法の1つに
、学習処理全体にわたって量子化ステップサイズQPを一定値に固定して、異なる
量子化器毎に得られた個々のイベントの発生率を用いて、全量子化器についてVL
Cテーブルを生成するものがある。また、別の学習方法では、異なるQPにおける 学習によって異なる量子化器の個々のイベント毎の発生率を得て、異なるQP毎の
各イベントの発生率を平均化するものもある。よって、学習処理は、入力信号値
に応じて選択してもよい。しかしながら、如何なる学習処理であっても、学習中
の条件が十分に一般的であれば、広範な環境に適応可能な頑強なVLCテーブルを 得ることができる。
【0060】 学習処理において量子化器毎にVLCテーブルが生成された後、マクロブロック 全体の重み付け歪みを最小にする量子化器が選ばれた時に用いられたものと同じ
歪み基準によって、ブロックの各画素について計算される歪み式E=D+ rを用い て、適切なVLCテーブルが選択されてもいい。しかし、量子化器の選択、さらに 量子化器に対応するVLCテーブルの選択は、別の歪み式によって行うことも可能 である。例えば、QP等の他のパラメータを取り入れて、歪み式を E=D+λ*f(QP)*r としてもよい。ここで、f(QP)は,QPの関数であり、例えば、f(QP)=K/QP となる。Kは、実験により定められる定数である。
歪み基準によって、ブロックの各画素について計算される歪み式E=D+ rを用い て、適切なVLCテーブルが選択されてもいい。しかし、量子化器の選択、さらに 量子化器に対応するVLCテーブルの選択は、別の歪み式によって行うことも可能 である。例えば、QP等の他のパラメータを取り入れて、歪み式を E=D+λ*f(QP)*r としてもよい。ここで、f(QP)は,QPの関数であり、例えば、f(QP)=K/QP となる。Kは、実験により定められる定数である。
【0061】 本発明の実施の形態では、15個の量子化器それぞれに異なるVLCテーブルが設 定される。こうすることで、符号化処理において、さらに効率的にLevelとRunと
を圧縮することができる。本発明の開示する方法によれば、ビットレートに10%-
25%の低減が見られ、これは画像符号化の分野において実質的価値があると考え られる。
を圧縮することができる。本発明の開示する方法によれば、ビットレートに10%-
25%の低減が見られ、これは画像符号化の分野において実質的価値があると考え られる。
【0062】 適応量子化符号アルゴリズムにおける適応エントロピー符号化及び本発明に係
るシステムは、特に、テレビ会議用テレビ電話、画像コーデック、セットトップ
ボックス等の低ビットレートで使用される回路に応用可能である。また、本発明
の原理は、非適応環境において使用される回路や高ビットレート画像符号化にも
応用できる。
るシステムは、特に、テレビ会議用テレビ電話、画像コーデック、セットトップ
ボックス等の低ビットレートで使用される回路に応用可能である。また、本発明
の原理は、非適応環境において使用される回路や高ビットレート画像符号化にも
応用できる。
【0063】 本発明の範囲において、上記実施例の構成の変更や応用が可能であることを、
当業者は理解されたい。よって、本発明は、クレームの範囲内において、ここで
記載されたもの以外の形態でも実施され得る。
当業者は理解されたい。よって、本発明は、クレームの範囲内において、ここで
記載されたもの以外の形態でも実施され得る。
新規であると確信するところの、本発明の目的及び特徴は、本書類に付するク
レームにおいて詳細に記載されている。本発明の構成及び操作方法は、また、他
の目的及び利点は、付随する図面を参照しつつ以下の説明を参照することによっ
て最もよく理解される。
レームにおいて詳細に記載されている。本発明の構成及び操作方法は、また、他
の目的及び利点は、付随する図面を参照しつつ以下の説明を参照することによっ
て最もよく理解される。
【図1】 典型的な画像フレームを表している。
【図2】 イントラブロックの画像信号データ符号化のための圧縮プロセスを表すブロッ
ク図である。
ク図である。
【図3】 インターブロックの画像信号データ符号化のための圧縮プロセスを表すブロッ
ク図である。
ク図である。
【図4】 図2に示すプロセスの離散コサイン変換ステップおよび量子化ステップの後の
画像フレームの8x8画素ブロックを表す。
画像フレームの8x8画素ブロックを表す。
【図5】 図5aおよび図5bは、H.263+規格に用いられる可変長符号化テーブル
を表す。
を表す。
【図6】 本発明の適応エントロピー符号化を用いて得られた、最適化された3−D可変
長符号化テーブルにおける、ノン−ラストイベントのためのバイナリコードの長
さを示すテーブルを表す。
長符号化テーブルにおける、ノン−ラストイベントのためのバイナリコードの長
さを示すテーブルを表す。
【図7】 本発明の適応エントロピー符号化を用いて得られた、最適化された3−D可変
長符号化テーブルにおける、ラストイベントのためのバイナリコードの長さを示
すテーブルを表す。
長符号化テーブルにおける、ラストイベントのためのバイナリコードの長さを示
すテーブルを表す。
【図8】 ある8x8入力ブロックの画素値を示すテーブルを表す。
【図9】 図8の入力ブロックに対応する、量子化されたブロックを示すテーブルを表す
。
。
【図10】 量子化され、スキャンされた図8のブロックに対応するブロックを示すテーブ
ルを表す。
ルを表す。
【図11】 オフセットγを用いる量子化ステップを実施するための、本発明のもう一つの
好ましい方法の動作のブロック図である。
好ましい方法の動作のブロック図である。
【図12】 連続するゼロのレベル値およびラン値のすべての可能性のある選択に対応する
デシジョンレベルの本発明のトレリスを示す。
デシジョンレベルの本発明のトレリスを示す。
【図13】 図12のトレリスをサーチする量子化ステップを実施するための、本発明のさ
らにもう一つの実施の形態の動作のブロック図である。
らにもう一つの実施の形態の動作のブロック図である。
【手続補正書】特許協力条約第34条補正の翻訳文提出書
【提出日】平成12年1月3日(2000.1.3)
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正内容】
【特許請求の範囲】
【数1】 (nは選択されたブロックにおける番号画素、χiは画素データ値、γはオフ
セット値、yiは量子化値)によって算出されること を特徴とする請求項37に記載の方法。
セット値、yiは量子化値)によって算出されること を特徴とする請求項37に記載の方法。
【数2】 (nは選択されたブロックにおける番号画素、χiは画素データ値、γはオフ
セット値、yiは量子化値)によって算出されること を特徴とする請求項41に記載の方法。
セット値、yiは量子化値)によって算出されること を特徴とする請求項41に記載の方法。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,CY, DE,DK,ES,FI,FR,GB,GR,IE,I T,LU,MC,NL,PT,SE),OA(BF,BJ ,CF,CG,CI,CM,GA,GN,GW,ML, MR,NE,SN,TD,TG),AP(GH,GM,K E,LS,MW,SD,SZ,UG,ZW),EA(AM ,AZ,BY,KG,KZ,MD,RU,TJ,TM) ,AL,AM,AT,AU,AZ,BA,BB,BG, BR,BY,CA,CH,CN,CU,CZ,DE,D K,EE,ES,FI,GB,GE,GH,GM,HR ,HU,ID,IL,IS,JP,KE,KG,KP, KR,KZ,LC,LK,LR,LS,LT,LU,L V,MD,MG,MK,MN,MW,MX,NO,NZ ,PL,PT,RO,RU,SD,SE,SG,SI, SK,SL,TJ,TM,TR,TT,UA,UG,U Z,VN,YU,ZW Fターム(参考) 5C059 MA00 MA23 MC11 MC38 ME02 ME11 ME17 PP04 PP16 SS02 SS07 SS08 TA46 TB13 TC11 TC21 TD02 TD05 UA02 UA05
Claims (63)
- 【請求項1】 画像フレームの部分の各画素(ペル:pel)に対応するデー タ値を符号化する符号化処理における適応量子化の方法であって、 画像フレームの各々の部分について、量子化器セットR0−Rnから成る集合で
あって当該集合に含まれる各量子化器セットが他の量子化器セットと互いに異な
る集合の中から、量子化値から成る1つの量子化器セットRxを選択する選択ス テップと、 各データ値を選択された量子化器セットRxからの量子化値と相関させて、画 素データ値に対応する量子化後の値のセットを提供する相関ステップと、 を有することを特徴とする。 - 【請求項2】 前記選択ステップは、 前記集合R0−Rnの量子化器セット毎に決まる歪みおよびビットレート特性を
判定するステップと、 前記集合の量子化器セット毎に決まる前記歪みおよびビットレート特性に基づ
いて量子化器セットRxを選択するステップと、 を有することを特徴とする請求項1に記載の方法。 - 【請求項3】 前記相関ステップは、 前記選択された量子化器セットRxの量子化値毎に決まる歪みおよびビットレ ート特性を判定するステップと、 前記集合の量子化器セット毎に決まる歪みおよびビットレート特性に基づいて
量子化器セットRxを選択するステップと、 を有することを特徴とする請求項1に記載の方法。 - 【請求項4】 前記相関ステップは、 選択された量子化器セットRxの量子化値毎に決まる歪みおよびビットレート 特性を判定し数量化するステップと、 各画素およびセットRxの各量子化値について、誤り値E'を、数式:E'=D +λ'r'(D'は量子化歪み値、r'は量子化ビットレート値、そして、λ'は全 体のE'上でのr'の所望の効果に基づいて選択された重み値)によって算出する
ステップと、 セットRx内の量子化値のうちで最も値の小さいE'を示す量子化値を選択する
ステップと、を有すること を特徴とする請求項1に記載の方法。 - 【請求項5】 集合R0−Rnから選択された量子化器Rxを示す識別コード を提供するステップを更に有すること、 を特徴とする請求項1に記載の方法。
- 【請求項6】 前記選択ステップは、 符号化されている画像フレームの各部分について、集合R0−Rn内の量子化器
セット毎に決まる歪みおよびビットレート特性を判定し数量化するステップと、 集合R0−Rn内の各量子化器セットについて、誤り値Eを、数式:E=D+λ
r(Dは量子化歪み値、rは量子化ビットレート値、そして、λは全体のE上で
のrの所望の効果に基づいて選択された重み値)によって算出するステップと、 集合R0−Rn内の量子化器セットのうちで最も値の小さいEを示す量子化器セ
ットRxを選択するステップと、を有すること を特徴とする請求項1に記載の方法。 - 【請求項7】 λ=2であること、 を特徴とする請求項6に記載の方法。
- 【請求項8】 前記相関ステップは、 選択された量子化器セットRxの量子化値毎に決まる歪みおよびビットレート 特性を判定するステップと、 セットRxの量子化値毎に決まる歪みおよびビットレート特性に基づいて量子 化値を選択するステップと、を有すること を特徴とする請求項6に記載の方法。
- 【請求項9】 前記相関ステップは、 選択された量子化器セットRxの量子化値毎に決まる歪みおよびビットレート 特性を判定し数量化するステップと、 セットRx内の各量子化値について、誤り値E'を、数式:E'=D'+λ'r'(
D'は量子化歪み値、r'は量子化ビットレート値、そして、λ'は全体のE'上で
のr'の所望の効果に基づいて選択された重み値)によって算出するステップと 、 セットRx内の量子化値のうちで最も値の小さいE'を示す量子化値を選択する
ステップと、を有すること を特徴とする請求項6に記載の方法。 - 【請求項10】 集合R0−Rn内の各セットの各量子化値は、量子化係数Q
Pの並びであること、 を特徴とする請求項1に記載の方法。 - 【請求項11】 集合R0−Rn内の量子化器セットは、 R0=[0,±3QP−α, ±5QP−α, ±7QP−α,...±255QP−α] R1=[0,±3QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R2=[0,±3QP−α, ±4QP−α, ±7QP−α,...±255QP−α] R3=[0,±2QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R4=[0,±2QP−α, ±5QP−α, ±7QP−α,...±255QP−α] R5=[0,±2QP−α, ±4QP−α, ±7QP−α,...±255QP−α] R6=[0,±2QP−α, ±3QP−α, ±7QP−α,...±255QP−α] R7=[0,±4QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R8=[0,±4QP−α, ±5QP−α, ±7QP−α,...±255QP−α] R9=[0,±1QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R10=[0,±1QP−α, ±5QP−α, ±7QP−α,...±255QP−α] R11=[0,±1QP−α, ±4QP−α, ±7QP−α,...±255QP−α] R12=[0,±1QP−α, ±3QP−α, ±7QP−α,...±255QP−α] R13=[0,±1QP−α, ±2QP−α, ±7QP−α,...±255QP−α] R14=[0,±5QP−α, ±6QP−α, ±7QP−α,...±255QP−α] から成る集合から選択され、 量子化ステップサイズQPは1から31までの任意の数とすることができ、Q
Pが偶数であればα=1、QPが奇数であればα=0であること、 を特徴とする請求項10に記載の方法。 - 【請求項12】 集合R0−Rn内の量子化器セットは、 R0=[0,±3QP−α, ±5QP−α, ±7QP−α,...±255QP−α] R3=[0,±2QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R7=[0,±4QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R14=[0,±5QP−α, ±6QP−α, ±7QP−α,...±255QP−α] から成る集合から選択され、 量子化ステップサイズQPは1から31までの任意の数とすることができ、Q
Pが偶数であればα=1、QPが奇数であればα=0であること、 を特徴とする請求項10に記載の方法。 - 【請求項13】 画像フレームの少なくとも一部の画素(画素)に対応する
、サンプリングされた画像信号データ値を符号化する方法であって、 サンプリングされたデータ値の各々を、量子化係数QPの並びである量子化値
の予め定義されたセットRxから選択された値に相関させることで、サンプリン グされたデータ値を適応量子化するステップであり、前記量子化器のセットは、
量子化器セットの集合R0−Rnの中から、セットRxの量子化値毎の歪みおよび ビットレート特性に基づいて選ばれることを特徴とするステップと、 出現の確率の高い画素イベントの各々に対応するエントリを有するVLCテー
ブルを少なくとも1つ選択するステップと、 当該少なくとも1つのVCLテーブルを用いた可変長適応エントロピー符号化
方法で量子化値を符号化するステップと、有すること を特徴とする。 - 【請求項14】 前記のサンプリングされたデータ値を適応量子化するステ
ップは、 符号化されている画像フレーム各部分に対応する集合R0−Rn内の量子化器セ
ット毎に決まる歪みおよびビットレート特性を判定し数量化するステップと、 集合R0−Rn内の各量子化器セットについて、誤り値Eを、数式:E=D+λ
f(QR)r(Dは画像フレームの部分に対する量子化歪み値、rは画像フレーム
の部分に対する量子化ビットレート値、λは全体のE上でのrの所望の効果に基
づいて選択された重み値、そして、f(QP)は量子化係数QPの関数)によって
算出するステップと、 集合R0−Rn内の量子化器セットのうちで最も値の小さいEを示す量子化器セ
ットRxを選択するステップと、 画像フレームの前記部分の各画素および量子化器セットRxの各量子化値につ いての誤り値E'を、数式:E'=D'+λ'r'(D'は画素の量子化歪み値、r' は画素の量子化ビットレート値、そして、λ'は全体のE'上でのr'の所望の効 果に基づいて選択された重み値)によって算出するステップと、 画素について最も値の小さいE'を示す量子化値を選択するステップと、を有 すること を特徴とする請求項13に記載の方法。 - 【請求項15】 前記可変長適応エントロピー符号化方法は、ハフマン符号
化、算術符号化、シンタックス適応算術符号化およびZiv−Lempel符号化方法か ら成る集合から選ばれ、その結果、選択されたバイナリコードが、VLCテーブ
ル内のいかなるバイナリコードワードも、他のバイナリコードワードのプレフィ
ックスとならないこと、を要するというプレフィックス規則を満たすこと、 を特徴とする請求項13に記載の方法。 - 【請求項16】 VLCテーブルの前記エントリは各々、3つのイベントパ
ラメータ、Level、Run、Lastを用いて定義され、 Levelは、選択された量子化値に対応する量子化器セットRxを指すレベルイン
デックスであり、 Runは、現在のイベントに先行するゼロの画素で、現在のイベントに対応する バイナリコードに含まれるものの数を示すものであり、 Lastは、ブロック内でゼロ以外の値を持つ最後の画素を指すこと を特徴とする請求項13に記載の方法。 - 【請求項17】 前記符号化ステップは、3つのイベントパラメータ、Leve
l、RunおよびLastをすべて同時に符号化することで各イベントの平均バイナリコ
ード長を小さくする、ジョイント確率歪みバイナリ符号化ステップを有し、 各イベントに対するバイナリコードは、VLCテーブルの実際の画素入力値の
符号とともに保存されること を特徴とする請求項16に記載の方法。 - 【請求項18】 少なくとも1つのVLCテーブルを選択するステップは、
さらに、教師信号に基づいて実行される学習ステップを有し、前記学習ステップ
は、 教師信号から各イベントの発生回数を得て少なくとも1つのカウンタテーブル
に保存するステップと、 前記の各イベントの発生確率を教師信号における当該イベントの総発生回数か
ら算出するステップと、 Level、RunおよびLastのパラメータの組合わせの各々について確率を保存し、
符号化ステップにおいて使用される確率テーブルを少なくとも1つ生成し、それ
によって、最も発生の確率が高いイベントに最も短いバイナリコードが割り当て
られるようにするステップと、 適応量子化ステップを用いて、前記の各イベントについてエラーの最も小さい
最適な量子化器を見つけるステップと を特徴とする請求項17に記載の方法。 - 【請求項19】 学習ステップとは、前記の各イベントについての確率を、
量子化係数QPが取りうる全ての値を備えた量子化器セットRxを各々使って算 出することであり、前記の各イベントの異なるQPでの確率を平均化することで
ある、ということ を特徴とする請求項18に記載の方法。 - 【請求項20】 学習ステップは、複数のVLCテーブル、複数のカウンタ
テーブルおよび複数の確率テーブルを生成し、それぞれの1つずつが各量子化器
Rxに対応すること を特徴とする請求項18に記載の方法。 - 【請求項21】 学習ステップは、全ての量子化器に対して使用される1つ
の共通最適化VLCテーブルを生成すること、 を特徴とする請求項18に記載の方法。 - 【請求項22】 集合R0−Rn内の量子化器セットは、 R0=[0,±3QP−α, ±5QP−α, ±7QP−α,...±255QP−α] R1=[0,±3QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R2=[0,±3QP−α, ±4QP−α, ±7QP−α,...±255QP−α] R3=[0,±2QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R4=[0,±2QP−α, ±5QP−α, ±7QP−α,...±255QP−α] R5=[0,±2QP−α, ±4QP−α, ±7QP−α,...±255QP−α] R6=[0,±2QP−α, ±3QP−α, ±7QP−α,...±255QP−α] R7=[0,±4QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R8=[0,±4QP−α, ±5QP−α, ±7QP−α,...±255QP−α] R9=[0,±1QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R10=[0,±1QP−α, ±5QP−α, ±7QP−α,...±255QP−α] R11=[0,±1QP−α, ±4QP−α, ±7QP−α,...±255QP−α] R12=[0,±1QP−α, ±3QP−α, ±7QP−α,...±255QP−α] R13=[0,±1QP−α, ±2QP−α, ±7QP−α,...±255QP−α] R14=[0,±5QP−α, ±6QP−α, ±7QP−α,...±255QP−α] から成る集合から選択され、 量子化係数QPは1から31までの整数であり、QPが偶数であればα=1、
QPが奇数であればα=0であること、 を特徴とする請求項13に記載の方法。 - 【請求項23】 集合R0−Rn内の量子化器セットは、 R0=[0,±3QP−α, ±5QP−α, ±7QP−α,...±255QP−α] R3=[0,±2QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R7=[0,±4QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R14=[0,±5QP, ±6QP, ±7QP,...±255QP] から成る集合から選択され、 量子化係数QPは1から31までの整数であり、QPが偶数であればα=1、
QPが奇数であればα=0であること、 を特徴とする請求項13に記載の方法。 - 【請求項24】 画像フレームの少なくとも一部の画素(ペル)に対応する
、サンプリングされた画像信号データを符号化するシステムであって、 量子化値の複数のセットR0−Rnを格納する格納手段と、 制御演算手段と、を有し、 前記制御演算手段は、 符号化されている画像フレームの各々の部分について、セットR0−Rnから成
る集合の中から、量子化係数QPの並びである量子化値の集まりである量子化器
セットRxを、選択されるセットRxの量子化歪みおよびビットレートに基づいて
選択する手段と、 符号化されている各フレーム部分に対応する各画像信号データ値を、当該フレ
ーム部分のために選択されたRxの量子化値と相関させる手段と、 出現の確率の高い画素イベントの各々に対応するエントリを有するVLCテー
ブルを少なくとも1つ選択する手段と、 当該少なくとも1つのVCLテーブルを用いる可変長適応エントロピー符号化
方法で量子化値を符号化する手段と、を有すること を特徴とする。 - 【請求項25】 前記選択手段は、 符号化されている画像フレームの各部分および集合R0−Rn内の各量子化器セ
ットについて、誤り値Eを、数式:E=D+λf(QR)r(Dは画像フレームの
部分に対する量子化歪み値、rは画像フレームの部分に対する量子化ビットレー
ト値、λは全体のE上でのrの所望の効果に基づいて選択された重み値、そして
、f(QP)は量子化係数QPの関数)によって算出する手段と、 集合R0−Rn内の量子化器セットのうちで最も小さい値のEを示す量子化器セ
ットRxを選択する手段と、を有し、 前記相関手段は、 セットRx内の各量子化値の歪みおよびビットレート特性を判定し量子化する 手段と、 セットRx内の量子化器毎に決まる歪みおよびビットレート特性に基づいて量 子化値を選択する手段と、を有すること を特徴とする請求項24に記載のシステム。 - 【請求項26】 前記可変長適応エントロピー符号化方法は、ハフマン符号
化、算術符号化、構文適応算術符号化およびZiv−Lempel符号化方法から成る集 合から選ばれ、その結果、選択されたバイナリコードが、VLCテーブル内のい
かなるバイナリコードワードも、他のバイナリコードワードのプレフィックスと
ならないこと、を要するというプレフィックス規則を満たすこと、 を特徴とする請求項24に記載のシステム。 - 【請求項27】 VLCテーブルの前記エントリは各々、3つのイベントパ
ラメータ、Level、RunおよびLastを用いて定義され、 Levelは、選択された量子化値に対応する量子化器セットRxを指すレベルイン
デックスであり、 Runは、現在のイベントに先行するゼロの画素で、現在のイベントに対するバ イナリコードに含まれるものの数を示し、 Lastは、ブロック内でゼロ以外の値を持つ最後の画素を指すこと を特徴とする請求項24に記載のシステム。 - 【請求項28】 前記可変長適応エントロピー符号化方法は、3つのイベン
トパラメータ、Level、RunおよびLastをすべて同時に符号化して各イベントの平
均バイナリコード長を小さくする、ジョイント確率歪みバイナリ符号化方法を有
し、 各イベントのバイナリコードは、VLCテーブルの実際の画素入力値の符号と
ともに保存されること を特徴とする請求項27に記載のシステム。 - 【請求項29】 少なくとも1つのVLCテーブルが、学習手続きにおいて
、教師信号を用いる制御演算手段を用いて決定され、前記制御演算手段はさらに
、 教師信号から各イベントの発生回数を得て少なくとも1つのカウンタテーブル
に保存する手段と、 前記の各イベントの発生確率を教師信号での当該イベントの総発生回数から算
出する手段と、 Level、RunおよびLastのパラメータの組合わせの各々について確率を保存し、
符号化手段によって使用される確率テーブルを少なくとも1つ生成し、それによ
って、最も発生の確率が高いイベントに最も短いバイナリコードが割り当てられ
るようにする手段と、を有すること を特徴とする請求項27に記載のシステム。 - 【請求項30】 学習手続きとは、前記の各イベントについての確率を、量
子化係数QPが取りうる全ての値を備えた量子化器セットRxを各々使って算出 することであり、前記の各イベントの異なるQPでの確率を平均化することであ
る、ということ を特徴とする請求項29に記載のシステム。 - 【請求項31】 学習手続きは、複数のVLCテーブル、複数のカウンタテ
ーブルおよび複数の確率テーブルを生成し、それぞれの1つずつが各量子化器R
xに対応すること を特徴とする請求項29に記載のシステム。 - 【請求項32】 学習手続きは、全ての量子化器に対して使用される1つの
共通最適化VLCテーブルを生成し、VLCテーブルから得られるバイナリコー
ドの長さは図6および図7の表に示すものであること、 を特徴とする請求項29に記載のシステム。 - 【請求項33】 集合R0−Rn内の量子化器セットは、 R0=[0,±3QP−α, ±5QP−α, ±7QP−α,...±255QP−α] R1=[0,±3QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R2=[0,±3QP−α, ±4QP−α, ±7QP−α,...±255QP−α] R3=[0,±2QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R4=[0,±2QP−α, ±5QP−α, ±7QP−α,...±255QP−α] R5=[0,±2QP−α, ±4QP−α, ±7QP−α,...±255QP−α] R6=[0,±2QP−α, ±3QP−α, ±7QP−α,...±255QP−α] R7=[0,±4QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R8=[0,±4QP−α, ±5QP−α, ±7QP−α,...±255QP−α] R9=[0,±1QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R10=[0,±1QP−α, ±5QP−α, ±7QP−α,...±255QP−α] R11=[0,±1QP−α, ±4QP−α, ±7QP−α,...±255QP−α] R12=[0,±1QP−α, ±3QP−α, ±7QP−α,...±255QP−α] R13=[0,±1QP−α, ±2QP−α, ±7QP−α,...±255QP−α] R14=[0,±5QP−α, ±6QP−α, ±7QP−α,...±255QP−α] から成る集合から選択され、 量子化係数QPは1から31までの整数であり、QPが偶数であればα=1、
QPが奇数であればα=0であること、 を特徴とする請求項24に記載のシステム。 - 【請求項34】 集合R0−Rn内の量子化器セットは、 R0=[0,±3QP−α, ±5QP−α, ±7QP−α,...±255QP−α] R3=[0,±2QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R7=[0,±4QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R14=[0,±5QP−α, ±6QP−α, ±7QP−α,...±255QP−α] から成る集合から選択され、 量子化係数QPは1から31までの整数であり、QPが偶数であればα=1、
QPが奇数であればα=0であること、 を特徴とする請求項24に記載のシステム。 - 【請求項35】 画像フレームの部分の各画素(ペル)に対応するデータ値
を符号化する符号化処理における適応量子化の方法であって、 画像フレームの各々の部分について、量子化器セットR0−Rnから成る集合で
あって当該集合に含まれる各量子化器セットが他の量子化器セットと異なる集合
の中から、量子化値の集まりである量子化器セットRxを選択する選択ステップ と、 各データ値を選択されたオフセット値で修飾するステップと、 各々の修飾されたデータ値を選択された量子化器セットRxの量子化値と相関 させて、画素データ値に対応する量子化後の値のセットを提供する相関ステップ
と、 を有することを特徴とする。 - 【請求項36】 前記選択ステップは、 前記集合R0−Rnの量子化器セット毎に決まる歪みおよびビットレート特性を
判定するステップと、 前記集合の量子化器セット毎に決まる前記歪みおよびビットレート特性に基づ
いて量子化器セットRxを選択するステップと、 を有することを特徴とする請求項35に記載の方法。 - 【請求項37】 オフセット値を予め定めた範囲内で変化させるステップと
、 量子化器セットR0−Rnの集合内の各量子化器セットによって、予め定めた範
囲のオフセット毎に決まる歪みおよびビットレート特性を判定するステップと、 集合内の各量子化器セットと各オフセット値との組合せによって決まる歪みお
よびビットレート特性に基づいて、量子化器セットおよび関連するオフセット値
を選択するステップと、 をさらに有することを特徴とする請求項35に記載の方法。 - 【請求項38】 前記選択ステップは、 集合R0−Rn内の各量子化器セットが符号化されている画像フレームの各部分
について提供する歪みおよびビットレート特性を判定し数量化するステップと、 集合R0−Rn内の各量子化器セットについての誤り値Eを、数式:E=D+λ
r(Dは量子化歪み値、rは量子化ビットレート値、そして、λは全体のE上で
のrの所望の効果に基づいて選択された重み値)によって算出するステップと、 集合R0−Rn内の量子化器セットのうちで最も小さい値のEを示す量子化器セ
ットRxおよびオフセット値を選択するステップと、を有すること を特徴とする請求項35に記載の方法。 - 【請求項39】 量子化歪み値は、数式 【数1】 (nは選択されたブロックにおける番号画素、χiは画素データ値、γはオフ
セット値、yiは量子化値)によって算出されること を特徴とする請求項38に記載の方法。 - 【請求項40】 画像コーダを動作させてデータ入力ブロックの効率的な量
子化を実行させる方法であって、 (1)複数のレベルを有する量子化器に係数のブロックを入力するステップと
、 (2)前記係数のブロックに対してマップのセットの中から1つのマップを選
択するステップと、 (3)オフセット値を選択し、選択したオフセット値で係数のブロックを修飾
するステップと、 (4)前記の修飾された係数を前記量子化器の少なくとも1つのレベルに対し
、前記マップのセットから選択された1つのマップを用いてマッピングするステ
ップと、 (5)前記の修飾された係数のブロックについて歪みエラー値を判定するステ
ップと、 (6)前記の修飾された係数のブロックについてスループットレートを算出す
るステップと、 (7)前記歪みエラー値および前記算出スループットレートに基づいて重み付
け歪み値を決定するステップと、 (8)前記マッピングのステップが、前記マップのセット全てが利用されるま
で前記マップのセットから異なるマップを選択することで実現されるようにステ
ップ(2)からステップ(7)までを繰り返すステップと、 (9)関連して決定された前記重み付け歪み値が最小であるマップを選択する
ステップと、を有すること を特徴とする。 - 【請求項41】 前記マップのセットから選択されたマップの各々について
、オフセット値を予め定めた範囲内で変化させるステップと、 選択されたマップの各々について、前記の予め定めた範囲のオフセット値で前
記決定された重み付け歪み値を最小とするものを判定するステップと、を更に有
し、 前記最小と判定された重み付け歪み値を有する前記選択されたマップは、前記
最小と判定された重み付け歪み値を提供するような関連オフセット値を有するこ
と を特徴とする請求項40に記載の方法。 - 【請求項42】 前記の重み付け歪み値を決定するステップは、マップのセ
ットの各々についてのエラー値Eを、数式:E=D+λr(Dは前記歪みエラー
値、rは前記スループットレート、そして、λは全体のE上でのrの所望の効果
に基づいて選択された重み値)によって算出することで実現されること を特徴とする請求項41に記載の方法。 - 【請求項43】 前記歪みエラー値は、数式 【数2】 (nは選択されたブロックにおける番号画素、χiは画素データ値、γはオフ
セット値、yiは量子化値)によって算出されること を特徴とする請求項42に記載の方法。 - 【請求項44】 前記選択されたマップは、 R0=[0,±3QP−α, ±5QP−α, ±7QP−α,...±255QP−α] R1=[0,±3QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R2=[0,±3QP−α, ±4QP−α, ±7QP−α,...±255QP−α] R3=[0,±2QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R4=[0,±2QP−α, ±5QP−α, ±7QP−α,...±255QP−α] R5=[0,±2QP−α, ±4QP−α, ±7QP−α,...±255QP−α] R6=[0,±2QP−α, ±3QP−α, ±7QP−α,...±255QP−α] R7=[0,±4QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R8=[0,±4QP−α, ±5QP−α, ±7QP−α,...±255QP−α] R9=[0,±1QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R10=[0,±1QP−α, ±5QP−α, ±7QP−α,...±255QP−α] R11=[0,±1QP−α, ±4QP−α, ±7QP−α,...±255QP−α] R12=[0,±1QP−α, ±3QP−α, ±7QP−α,...±255QP−α] R13=[0,±1QP−α, ±2QP−α, ±7QP−α,...±255QP−α] R14=[0,±5QP−α, ±6QP−α, ±7QP−α,...±255QP−α] から成るマップのセットR0−Rnから選択され、 QPは1から31までの整数である量子化係数であり、QPが偶数であればα
=1、QPが奇数であればα=0であること、 を特徴とする請求項43に記載の方法。 - 【請求項45】 前記選択されたマップは、 R0=[0,±3QP−α, ±5QP−α, ±7QP−α,...±255QP−α] R3=[0,±2QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R7=[0,±4QP−α, ±6QP−α, ±7QP−α,...±255QP−α] R14=[0,±5QP, ±6QP, ±7QP,...±255QP] から成るマップのセットR0−Rnから選択され、 QPは1から31までの整数である量子化係数であり、QPが偶数であればα
=1、QPが奇数であればα=0であること、 を特徴とする請求項40に記載の方法。 - 【請求項46】 画像フレームの部分の各画素(ペル)に対応するデータ値
の効率のよい量子化を実行する画像符号化システムであって、 量子化値の複数のセットR0−Rnを格納する格納装置と、 符号化されている画像フレームの各々の部分について、セットR0−Rnから成
る集合であって当該集合に含まれる各量子化器セットが他の量子化器セットと異
なる集合の中から、量子化値から成る1つの量子化器セットRxを選択する制御 演算装置と、を有し、 制御演算装置は、オフセット値を選択し、各データ値を選択したオフセット値
で修飾し、制御演算装置は、さらに、各々の修飾されたデータ値を選択された量
子化器セットRxの量子化値と相関させて、画素データ値に対応する量子化後の 値のセットを提供すること、 を特徴とする。 - 【請求項47】 前記制御演算装置は、集合R0−Rnの量子化器セット毎に
決まる歪みおよびビットレート特性を判定し、集合の量子化器セット毎に決まる
歪みおよびビットレート特性に基づいて量子化器セットRxを選択すること、 を特徴とする請求項46に記載のシステム。 - 【請求項48】 前記制御演算装置は、オフセット値を予め定めた範囲内で
変化させ、量子化器セットR0−Rnの集合内の各量子化器セットについて、予め
定めた範囲の各オフセット値毎に決まる歪みおよびビットレート特性を判定し、 また、制御演算装置は、集合内の各量子化器セットと各オフセット値との組合
せによって決まる歪みおよびビットレート特性に基づいて、量子化器セットおよ
び関連するオフセット値を選択すること、 を特徴とする請求項46に記載のシステム。 - 【請求項49】 前記制御演算装置は、前記量子化器セットRxを選択する ために、 集合R0−Rn内の各量子化器セットが符号化されている画像フレームの部分毎
に決まる歪みおよびビットレート特性を判定し数量化する処理と、 集合R0−Rn内の各量子化器セットについての誤り値Eを、数式:E=D+λ
r(Dは量子化歪み値、rは量子化ビットレート値、そして、λは全体のE上で
のrの所望の効果に基づいて選択された重み値)によって算出する処理と、 集合R0−Rn内の量子化器セットのうちで最も小さい値のEを示す量子化器セ
ットRxおよびオフセット値を選択する処理と、を実行すること を特徴とする請求項46に記載のシステム。 - 【請求項50】 画像フレームの部分の各画素(画素)に対応するデータ値
を符号化する符号化処理における適応量子化の方法であって、 画像フレームの各々の部分について、量子化器セットR0−Rnから成る集合で
あって当該集合に含まれる各量子化器セットが他の量子化器セットと異なる集合
の中から、量子化値の集まりである量子化器セットRxを選択する選択ステップ と、 量子化器セットRxの各々の量子化値と連続するゼロのラン長の値とに対応す るデシジョンレベルのトレリスを走査するステップと、 各データ値をトレリスのデシジョンレベルと相関させるステップと、 トレリスを通る最適経路を、デシジョンレベルによって決まる歪みおよびビッ
トレート特性に基づいて判定するステップと、を有する ことを特徴とする。 - 【請求項51】 前記トレリスは、符号化されるデータ値の数に等しい複数
のステージを含み、あるステージから次のステージへのデシジョンレベル間の移
動には、関連する歪みと関連するビットレートがあり、前記最適トレリス経路を
判定するステップは、 トレリスのステージ間の可能な移動の各々によって決まる歪みおよびビットレ
ート特性を判定するステップと、 トレリスを通る可能な移動の全ての経路を通じて最も重み付け歪みが小さいト
レリス経路を選択するステップと、を有すること を特徴とする請求項50に記載の方法。 - 【請求項52】 量子化器セットR0−Rnの集合内の各量子化器セットにつ
いて、トレリスを通る経路で最も重み付け歪みの小さい経路を提供するトレリス
経路を判定するステップと、 量子化器セットR0−Rnの集合の中から、量子化器セットおよび関連するトレ
リス経路で最も重み付け歪みの小さい経路を提供すると判定されたトレリス経路
を選択するステップと、を更に有すること を特徴とする請求項51に記載の方法。 - 【請求項53】 各々の移動について、関連する重み付け歪み値E'が、数 式:E'=D'+λr'(D'はあるステージから次へのステージのデシジョンレベ
ル間の歪み値、r'はあるステージから次のステージへのデシジョンレベル間の ビットレート値、そして、λは重み値)によって算出されること、 を特徴とする請求項51に記載の方法。 - 【請求項54】 前記最適トレリス経路を選択するステップは、トレリスの
各ステージにわたって重み付け歪み値E'を合計することで全体の重み付け歪み を得て、全体の重み付け歪みが最も小さいトレリス経路を選択すること、 を特徴とする請求項53に記載の方法。 - 【請求項55】 トレリス経路は動的なプログラミングアルゴリズムを用い
てトレリスをサーチすることで決定されること を特徴とする請求項40に記載の方法。 - 【請求項56】 前記の動的なプログラミングアルゴリズムはビタビアルゴ
リズムであること を特徴とする請求項55に記載の方法。 - 【請求項57】 画像フレームの部分の各画素(画素)に対応するデータ値
の効率的な符号化を実行する画像符号化システムであって、 量子化値を有する複数のセットR0−Rnを格納する格納装置と、 符号化されている画像フレームの各々の部分について、セットR0−Rnから成
る集合であって当該集合に含まれる各量子化器セットが他の量子化器セットと異
なる集合の中から、量子化値の集まりである量子化器セットRxを選択する制御 演算装置と、を有し、 格納装置は、さらに、各量子化器セットに関連するトレリスを格納しており、
各々のトレリスは、各量子化器セットの各々の量子化値とに対応するデシジョン
レベルを複数と、連続するゼロのラン長の値とを含むこと、 制御演算装置は、トレリスを走査して各データ値をトレリスのデシジョンレベ
ルと相関させ、制御演算装置は、さらに、トレリスを通る最適経路をデシジョン
レベルによって決まる歪みおよびビットレート特性に基づいて判定すること を特徴とする。 - 【請求項58】 前記トレリスは、符号化されるデータ値の数に等しい複数
のステージを含み、あるステージから次のステージへのデシジョンレベル間の移
動には、関連する歪みと関連するビットレートがあり、 前記制御演算装置は、トレリスのステージ間の可能な移動の各々によって決ま
る歪みおよびビットレート特性を判定して、トレリスを通る可能な移動の全ての
経路を通じて最も重み付け歪みが小さいトレリス経路を選択すること を特徴とする請求項57に記載のシステム。 - 【請求項59】 前記制御演算装置は、量子化器セットR0−Rnの集合内の
各量子化器セットについて、トレリスを通る経路で最も重み付け歪みの小さい経
路を提供するトレリス経路を判定し、量子化器セットR0−Rnの集合の中から、
量子化器セットおよび関連するトレリス経路で最も重み付け歪みの小さい経路を
提供すると判定されたトレリス経路を選択すること を特徴とする請求項58に記載のシステム。 - 【請求項60】 各々の移動について、関連する重み付け歪み値E'が、数 式:E'=D'+λr'(D'はあるステージから次へのステージのデシジョンレベ
ル間の歪み値、r'はあるステージから次のステージへのデシジョンレベル間の ビットレート値、そして、λは重み値)によって算出されること、 を特徴とする請求項57に記載のシステム。 - 【請求項61】 前記制御演算装置は、トレリスの各ステージにわたって重
み付け歪み値E'を合計することで全体の重み付け歪みを得て最適トレリス経路 を選択し、全体の重み付け歪みが最も小さいトレリス経路を選択すること、 を特徴とする請求項60に記載のシステム。 - 【請求項62】 前記制御演算装置は、動的なプログラミングアルゴリズム
を用いてトレリスをサーチすることで最適トレリス経路を判定すること を特徴とする請求項57に記載のシステム。 - 【請求項63】 前記の動的なプログラミングアルゴリズムはビタビアルゴ
リズムであること を特徴とする請求項62に記載のシステム。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/980,654 | 1997-12-01 | ||
US08/980,654 US6111914A (en) | 1997-12-01 | 1997-12-01 | Adaptive entropy coding in adaptive quantization framework for video signal coding systems and processes |
US09/198,742 | 1998-11-24 | ||
US09/198,742 US6118822A (en) | 1997-12-01 | 1998-11-24 | Adaptive entropy coding in adaptive quantization framework for video signal coding systems and processes |
PCT/US1998/025155 WO1999029115A1 (en) | 1997-12-01 | 1998-11-25 | Adaptive entropy coding in adaptive quantization framework for video signal coding systems and processes |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2001525639A true JP2001525639A (ja) | 2001-12-11 |
Family
ID=26894110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000523810A Pending JP2001525639A (ja) | 1997-12-01 | 1998-11-25 | 画像信号符号化システムおよびプロセスのための適応量子化フレームワークにおける適応エントロピー符号化 |
Country Status (7)
Country | Link |
---|---|
US (2) | US6118822A (ja) |
EP (1) | EP1033036B1 (ja) |
JP (1) | JP2001525639A (ja) |
AT (1) | ATE232672T1 (ja) |
AU (1) | AU1605299A (ja) |
DE (1) | DE69811394T2 (ja) |
WO (1) | WO1999029115A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6919828B2 (en) | 2000-05-17 | 2005-07-19 | Samsung Electronics Co., Ltd. | Variable length coding and decoding methods and apparatuses using plural mapping tables |
CN102017633A (zh) * | 2008-04-11 | 2011-04-13 | 高通股份有限公司 | 用于上下文自适应可变长度译码(cavlc)的速率-失真量化 |
Families Citing this family (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4576975A (en) * | 1983-03-03 | 1986-03-18 | Minnesota Mining And Manufacturing Company | Water soluble Michler's ketone analogs in combined photoinitiator composition and polymerizable composition |
KR100311473B1 (ko) * | 1999-01-20 | 2001-11-02 | 구자홍 | 트렐리스 기반의 적응적 양자화기에서 최적경로 추적 방법 |
US6593936B1 (en) | 1999-02-01 | 2003-07-15 | At&T Corp. | Synthetic audiovisual description scheme, method and system for MPEG-7 |
AU7859000A (en) | 1999-10-05 | 2001-05-10 | L-3 Communications Corporation | A method for improving the performance of micromachined devices |
US6738423B1 (en) * | 2000-01-21 | 2004-05-18 | Nokia Mobile Phones Ltd. | Method for encoding and decoding video information, a motion compensated video encoder and a corresponding decoder |
JP2002204449A (ja) * | 2000-12-28 | 2002-07-19 | Pioneer Electronic Corp | 量子化単位設定装置及び量子化単位設定方法、符号化装置及び符号化方法並びに情報記録媒体 |
US6677868B2 (en) | 2001-03-16 | 2004-01-13 | Sharp Laboratories Of America, Inc. | Entropy coding with adaptive syntax to replace high probability symbols with lower probabilities symbols |
US20020168010A1 (en) * | 2001-05-11 | 2002-11-14 | Koninklijke Philips Electronics N. V. | System and method for efficient automatic design and tuning of video processing systems |
MXPA03003512A (es) | 2001-08-31 | 2003-10-07 | Matsushita Electric Ind Co Ltd | Metodo de codificacion de imagenes, metodo de decodificacion de imagenes y aparatos de los mismos. |
US7123656B1 (en) * | 2001-10-01 | 2006-10-17 | Realnetworks, Inc. | Systems and methods for video compression |
AU2002343740A1 (en) * | 2001-11-16 | 2003-06-10 | California Institute Of Technology | Data compression method and system |
DE10156851C1 (de) * | 2001-11-20 | 2003-07-03 | Infineon Technologies Ag | Verfahren und Vorrichtung zur Bildkompression |
JP3898184B2 (ja) * | 2001-12-25 | 2007-03-28 | 株式会社エヌ・ティ・ティ・ドコモ | 信号符号化装置、信号符号化方法、プログラム |
US6763068B2 (en) * | 2001-12-28 | 2004-07-13 | Nokia Corporation | Method and apparatus for selecting macroblock quantization parameters in a video encoder |
US7206448B2 (en) * | 2002-02-28 | 2007-04-17 | At&T Corp. | System and method for using pattern vectors for video and image coding and decoding |
US7099387B2 (en) * | 2002-03-22 | 2006-08-29 | Realnetorks, Inc. | Context-adaptive VLC video transform coefficients encoding/decoding methods and apparatuses |
JP4368575B2 (ja) | 2002-04-19 | 2009-11-18 | パナソニック株式会社 | 可変長復号化方法、可変長復号化装置およびプログラム |
GB2393060B (en) * | 2002-09-12 | 2006-01-25 | Snell & Wilcox Ltd | Manipulation of video compression |
US7212681B1 (en) | 2003-01-15 | 2007-05-01 | Cisco Technology, Inc. | Extension of two-dimensional variable length coding for image compression |
US7403561B2 (en) * | 2003-04-04 | 2008-07-22 | Avid Technology, Inc. | Fixed bit rate, intraframe compression and decompression of video |
EP1892965A3 (en) * | 2003-04-04 | 2011-04-06 | Avid Technology, Inc. | Fixed bit rate, intraframe compression and decompression of video |
CA2639643C (en) * | 2003-04-04 | 2010-11-09 | Avid Technology, Inc. | Fixed bit rate, intraframe compression and decompression of video |
US7433519B2 (en) * | 2003-04-04 | 2008-10-07 | Avid Technology, Inc. | Bitstream format for compressed image data |
US7194137B2 (en) * | 2003-05-16 | 2007-03-20 | Cisco Technology, Inc. | Variable length coding method and apparatus for video compression |
US7499596B2 (en) | 2004-08-18 | 2009-03-03 | Cisco Technology, Inc. | Amplitude coding for clustered transform coefficients |
US7454073B2 (en) | 2004-06-15 | 2008-11-18 | Cisco Technology, Inc. | Video compression using multiple variable length coding processes for multiple classes of transform coefficient blocks |
US7499595B2 (en) * | 2004-08-18 | 2009-03-03 | Cisco Technology, Inc. | Joint amplitude and position coding for photographic image and video coding |
US7492956B2 (en) * | 2004-08-18 | 2009-02-17 | Cisco Technology, Inc. | Video coding using multi-dimensional amplitude coding and 2-D non-zero/zero cluster position coding |
US7471841B2 (en) | 2004-06-15 | 2008-12-30 | Cisco Technology, Inc. | Adaptive breakpoint for hybrid variable length coding |
US7454076B2 (en) * | 2004-06-15 | 2008-11-18 | Cisco Technology, Inc. | Hybrid variable length coding method for low bit rate video coding |
US7471840B2 (en) * | 2004-08-18 | 2008-12-30 | Cisco Technology, Inc. | Two-dimensional variable length coding of runs of zero and non-zero transform coefficients for image compression |
US20060062478A1 (en) * | 2004-08-16 | 2006-03-23 | Grandeye, Ltd., | Region-sensitive compression of digital video |
US7680349B2 (en) | 2004-08-18 | 2010-03-16 | Cisco Technology, Inc. | Variable length coding for clustered transform coefficients in video compression |
US7620258B2 (en) * | 2004-08-18 | 2009-11-17 | Cisco Technology, Inc. | Extended amplitude coding for clustered transform coefficients |
JP4856954B2 (ja) * | 2005-06-08 | 2012-01-18 | パナソニック株式会社 | 画像符号化装置 |
JP4621574B2 (ja) * | 2005-10-06 | 2011-01-26 | 株式会社東芝 | 画像符号化装置および画像符号化方法 |
US7242328B1 (en) | 2006-02-03 | 2007-07-10 | Cisco Technology, Inc. | Variable length coding for sparse coefficients |
US8189676B2 (en) * | 2007-04-05 | 2012-05-29 | Hong Kong University Of Science & Technology | Advance macro-block entropy coding for advanced video standards |
US8559742B2 (en) * | 2008-10-10 | 2013-10-15 | Accusoft Corporation | Image encoding methods and apparatus providing improved visual results |
HUE044124T2 (hu) | 2011-04-22 | 2019-09-30 | Dolby Int Ab | Eljárás és berendezés adatok veszteséges tömörítõ kódolására |
GB2492392B (en) * | 2011-06-30 | 2014-09-03 | Canon Kk | Method for encoding and decoding an image, and corresponding devices |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4716453A (en) * | 1985-06-20 | 1987-12-29 | At&T Bell Laboratories | Digital video transmission system |
US4945549A (en) * | 1986-11-13 | 1990-07-31 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Trellis coded modulation for transmission over fading mobile satellite channel |
US5297170A (en) * | 1990-08-21 | 1994-03-22 | Codex Corporation | Lattice and trellis-coded quantization |
US5233630A (en) * | 1991-05-03 | 1993-08-03 | Qualcomm Incorporated | Method and apparatus for resolving phase ambiguities in trellis coded modulated data |
US5231484A (en) * | 1991-11-08 | 1993-07-27 | International Business Machines Corporation | Motion video compression system with adaptive bit allocation and quantization |
KR0141824B1 (ko) * | 1991-12-23 | 1998-07-15 | 구자홍 | 가변길이의 적응 영상 압축 방법 및 장치 |
US5329313A (en) * | 1992-04-01 | 1994-07-12 | Intel Corporation | Method and apparatus for real time compression and decompression of a digital motion video signal using a fixed Huffman table |
KR0150955B1 (ko) * | 1992-05-27 | 1998-10-15 | 강진구 | 비트고정을 위한 영상압축방법과 신장방법 및 그 장치 |
JP2940304B2 (ja) * | 1992-06-15 | 1999-08-25 | 松下電器産業株式会社 | 高能率符号化装置および高能率符号化方法および高能率符号化装置の復号装置 |
EP0574746A1 (en) * | 1992-06-19 | 1993-12-22 | Intel Corporation | Method and apparatus for real time compression and decompression of a digital motion video signal using a fixed Huffman table |
WO1996034495A2 (en) * | 1995-04-25 | 1996-10-31 | Philips Electronics N.V. | Device and method for coding video pictures |
CN1157079A (zh) * | 1995-04-25 | 1997-08-13 | 菲利浦电子有限公司 | 用于编码视频图像的装置和方法 |
KR100207638B1 (ko) * | 1995-05-29 | 1999-07-15 | 윤종용 | 가변비트율 비디오 부호화방법 |
US5724453A (en) * | 1995-07-10 | 1998-03-03 | Wisconsin Alumni Research Foundation | Image compression system and method having optimized quantization tables |
US5778192A (en) * | 1995-10-26 | 1998-07-07 | Motorola, Inc. | Method and device for optimal bit allocation between different sources of information in digital video compression |
TW364107B (en) * | 1996-03-25 | 1999-07-11 | Trw Inc | Method and system for three-dimensional compression of digital video signals |
US5745504A (en) * | 1996-06-25 | 1998-04-28 | Telefonaktiebolaget Lm Ericsson | Bit error resilient variable length code |
US5821887A (en) * | 1996-11-12 | 1998-10-13 | Intel Corporation | Method and apparatus for decoding variable length codes |
US6272175B1 (en) * | 1997-02-13 | 2001-08-07 | Conexant Systems, Inc. | Video signal coding systems and processes using adaptive quantization |
US6043844A (en) * | 1997-02-18 | 2000-03-28 | Conexant Systems, Inc. | Perceptually motivated trellis based rate control method and apparatus for low bit rate video coding |
US5974181A (en) * | 1997-03-20 | 1999-10-26 | Motorola, Inc. | Data compression system, method, and apparatus |
-
1998
- 1998-11-24 US US09/198,742 patent/US6118822A/en not_active Expired - Lifetime
- 1998-11-25 AU AU16052/99A patent/AU1605299A/en not_active Abandoned
- 1998-11-25 WO PCT/US1998/025155 patent/WO1999029115A1/en active IP Right Grant
- 1998-11-25 JP JP2000523810A patent/JP2001525639A/ja active Pending
- 1998-11-25 DE DE69811394T patent/DE69811394T2/de not_active Expired - Fee Related
- 1998-11-25 AT AT98960467T patent/ATE232672T1/de not_active IP Right Cessation
- 1998-11-25 EP EP98960467A patent/EP1033036B1/en not_active Expired - Lifetime
-
1999
- 1999-10-25 US US09/427,145 patent/US6249546B1/en not_active Expired - Fee Related
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6919828B2 (en) | 2000-05-17 | 2005-07-19 | Samsung Electronics Co., Ltd. | Variable length coding and decoding methods and apparatuses using plural mapping tables |
CN102017633A (zh) * | 2008-04-11 | 2011-04-13 | 高通股份有限公司 | 用于上下文自适应可变长度译码(cavlc)的速率-失真量化 |
JP2011517911A (ja) * | 2008-04-11 | 2011-06-16 | クゥアルコム・インコーポレイテッド | コンテキスト適応型可変長符号化(cavlc)のためのレート歪み量子化 |
US8902972B2 (en) | 2008-04-11 | 2014-12-02 | Qualcomm Incorporated | Rate-distortion quantization for context-adaptive variable length coding (CAVLC) |
CN103179395B (zh) * | 2008-04-11 | 2016-03-09 | 高通股份有限公司 | 用于上下文自适应可变长度译码(cavlc)的速率-失真量化 |
Also Published As
Publication number | Publication date |
---|---|
ATE232672T1 (de) | 2003-02-15 |
DE69811394T2 (de) | 2003-11-20 |
DE69811394D1 (de) | 2003-03-20 |
AU1605299A (en) | 1999-06-16 |
EP1033036A1 (en) | 2000-09-06 |
WO1999029115A1 (en) | 1999-06-10 |
US6118822A (en) | 2000-09-12 |
US6249546B1 (en) | 2001-06-19 |
EP1033036B1 (en) | 2003-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2001525639A (ja) | 画像信号符号化システムおよびプロセスのための適応量子化フレームワークにおける適応エントロピー符号化 | |
US6111914A (en) | Adaptive entropy coding in adaptive quantization framework for video signal coding systems and processes | |
US10659793B2 (en) | DC coefficient signaling at small quantization step sizes | |
US5748121A (en) | Generation of huffman tables for signal encoding | |
US6744387B2 (en) | Method and system for symbol binarization | |
US5848195A (en) | Selection of huffman tables for signal encoding | |
US6091777A (en) | Continuously adaptive digital video compression system and method for a web streamer | |
EP1391121B1 (en) | Variable length coding | |
RU2354073C2 (ru) | Кодирование коэффициентов преобразования в кодерах и/или декодерах изображения и видеоданных | |
US8218624B2 (en) | Fractional quantization step sizes for high bit rates | |
EP1529401A1 (en) | System and method for rate-distortion optimized data partitioning for video coding using backward adaptation | |
JPH10243396A (ja) | 適応型量子化方法、ビデオ信号データを符号化する方法、およびサンプリングされたビデオ信号データを符号化するためのシステム | |
US11677964B2 (en) | DC coefficient signaling at small quantization step sizes | |
KR100801967B1 (ko) | 문맥 기반 적응적 가변 길이 부호화 인코더 및 디코더,문맥 기반 적응성 가변 길이 부호화하는 방법과 복호화하는방법 및 이를 이용한 동영상 전송 시스템. | |
KR0134496B1 (ko) | 적응적 주사방식을 이용한 동영상 부호화장치 | |
KR100230840B1 (ko) | 동영상 복호기의 블록화 현상 제거 방법 및 그 장치(Method of and Device for eliminating blocking effect in a motion picture decoder) | |
Aalmoes et al. | Overview of Still-picture and Video Compression Standards | |
Grecos et al. | Audiovisual Compression for Multimedia Services in Intelligent Environments | |
Kodavalla et al. | CHROMA CODING IN DISTRIBUTED VIDEO CODING |