(57)【要約】  本発明は、ビデオ圧縮システムの変換係数のデータのエントロピー符号化／復号化に関する。本発明は、最後のノンゼロ変換係数の位置と絶対値が１を超えるか否かとを組み合わせるイベントを導入する。更に外からの情報はなく、マクロ・ブロックを用いてどのVLCを使用すべきかが、決定される。変換係数は、RUNモードで開始し、絶対値が１を超える最初の変換係数が見出された時に、LEVELモードで継続する。
2008527789.tif 000002
【特許請求の範囲】
【請求項１】
マクロ・ブロック内の差分ピクセル値のブロックを表示する量子化された変換係数のビデオ符号化において、エントロピー符号化手順を提供する方法において、
前記変換係数は、増加する順番でブロック内の位置に割り当てられ
（Ｉ）  ブロック内の最後のノンゼロ変換係数の第１位置を、前記最後のノンゼロ変換係数のモデュラスが１を超えるか否かを表す指示と組み合わせて、第１の可変長符号VLC内の複数のイベント内のイベントとして、特定するステップと、
（ＩＩ）  前記最後のノンゼロ変換係数のモデュラスが１に等しい場合には、前記最後のノンゼロ変換係数を、現在最後のノンゼロ変換係数として定義し、
（ａ）  前記ブロック内で、前記現在最後のノンゼロ変換係数の位置と次のノンゼロ変換係数の位置との間のゼロ変換係数の位置の番号（位置の順番が減少する方向に向かって）を、前記次のノンゼロ変換係数のモデュラスが１を超えるか否かを表す指示と組み合わせて、第２のＶＬＣ内の複数の可能なイベント中のイベントとして特定し、前記次のノンゼロ変換係数を現在最後のノンゼロ変換係数として定義するステップと、
（ｂ）  前記現在最後のノンゼロ変換係数のモデュラスが１に等しい場合には、前記ステップ（ａ）を繰り返すステップと、
（ＩＩＩ）  前記最後の又は現在最後のノンゼロ変換係数のモデュラスが１を超える場合には、
（ａ）  前記ステップＩとＩＩで特定されなかった各変換係数のモデュラスと対応する位置とを、前記１つあるいは複数のVLCに従って特定するステップと
を有する
ことを特徴とするエントロピー符号化方法。
【請求項２】
前記ステップＩＩＩ（ａ）は、前記ステップＩ−ＩＩで特定されなかった前記変換係数の最初又は最後の変換係数は、［２，→］の可能なモジュラスの値を有する第３のＶＬＣに従って、特定され、前記ステップＩ−ＩＩＩで特定されなかった前記変換係数の残りの変換係数は、［０，→］の可能なモジュラスの値を有する第４のＶＬＣに従って、特定される
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記第１のＶＬＣは、１個或いは複数個の近傍ブロックが、マクロブロック内にある場合には、前記ブロックに対し一定位置を有する１個或いは複数個の近傍ブロックに依存する
ことを特徴とする請求項１あるいは２に記載の方法。
【請求項４】
前記第２のＶＬＣは、ＲＵＮコードである
ことを特徴とする請求項１，２，３のいずれかに記載の方法。
【請求項５】
マクロ・ブロック内の差分ピクセル値のブロックを表示する量子化された変換係数のビデオ復号化において、エントロピー復号化手順を提供する方法において、
前記変換係数は、増加する順番でブロック内の位置に割り当てられ
（ＩＶ）  ブロック内の最後のノンゼロ変換係数の第１位置を、前記最後のノンゼロ変換係数のモデュラスが１を超えるか否かを表す指示と組み合わせて、第１の可変長符号VLC内の複数のイベント内のイベントとして、解釈するステップと、
（Ｖ）  前記最後のノンゼロ変換係数のモデュラスが１に等しい場合には、前記最後のノンゼロ変換係数を、現在最後のノンゼロ変換係数として定義し、
（ａ）  前記ブロック内で、前記現在最後のノンゼロ変換係数の位置と次のノンゼロ変換係数の位置との間のゼロ変換係数の位置の番号（位置の順番が減少する方向に向かって）を、前記次のノンゼロ変換係数のモデュラスが１を超えるか否かを表す指示と組み合わせて、第２のＶＬＣ内の複数の可能なイベント中のイベントとして解釈し、前記次のノンゼロ変換係数を現在最後のノンゼロ変換係数として定義するステップと、
（ｂ）  前記現在最後のノンゼロ変換係数のモデュラスが１に等しい場合には、前記ステップ（ａ）を繰り返すステップと、
（ＶＩ）  前記最後の又は現在最後のノンゼロ変換係数のモデュラスが１を超える場合には、
（ａ）  前記ステップＩＶとＶで解釈されなかった各変換係数のモデュラスと対応する位置とを、前記１つあるいは複数のVLCに従って、解釈するステップと
を有する
ことを特徴とするエントロピー復号化方法。
【請求項６】
前記ステップＶＩ（ａ）は、前記ステップＩＶ−Ｖで解釈されなかった前記変換係数の最初又は最後の変換係数は、［２，→］の可能なモジュラスの値を有する第３のＶＬＣに従って、解釈され、前記ステップＩ−ＩＩＩで解釈されなかった前記変換係数の残りの変換係数は、［０，→］の可能なモジュラスの値を有する第４のＶＬＣに従って、解釈される
ことを特徴とする請求項１に記載の方法。
【請求項７】
前記第１のＶＬＣは、１個或いは複数個の近傍ブロックが、マクロブロック内にある場合には、前記ブロックに対し一定位置を有する１個或いは複数個の近傍ブロックに依存する
ことを特徴とする請求項１あるいは２に記載の方法。
【請求項８】
前記第２のＶＬＣは、ＲＵＮコードである
ことを特徴とする請求項５，６，７のいずれかに記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビデオ圧縮システムの変換係数のデータのエントロピー符号化／復号化に関する。
【背景技術】
【０００２】
動画をリアルタイムで伝送することは、幾つかのアプリケーションで採用されている。例えばテレビ会議、ネットミーティング、テレビ放送、テレビ電話である。
【０００３】
動画を表すには大量の情報が必要であり、デジタルビデオは、画像内の各ピクセルを通常８ビット（１バイト）で表示することにより、記述されるからである。この様な圧縮前のビデオデータは、大量のビット容量となり、通常の通信ネットワークと伝送ライン介して、リアルタイムでは送信することはできない。バンド幅が限られているからである。
【０００４】
かくしてリアルタイムでビデオの伝送を行うには、高度のデータ圧縮技術を必要とする。データ圧縮は画質との折り合いが必要である。それ故、圧縮技術を改良し、高品質のビデオが、限られたバンド幅のデータ接続でリアルタイムで伝送できるように、更に多くの努力が傾けられている。
【０００５】
ビデオ圧縮システムにおいて、主な目的は、ビデオ情報をできるだけ少ない容量で表すことである。この容量は、一定値あるいはビット／時間の単位で、定義される。両方ともその目的は、ビット数を減らすことである。
【０００６】
最も一般的なビデオ符号化方法は、ＭＰＥＧ＊標準とＨ．２６＊標準に記載されている（＊：ワイルドカード）。ビデオデータには、伝送前に、４つの主要な処理を施さなければならない。即ち、予測プロセスと、変換プロセスと、量子化プロセスと、エントロピー符号化プロセスである。
【０００７】
予測プロセスは、伝送されるべきビデオシーケンス内の各画像に必要とされるビット数を大幅に減らす。このプロセスは、ビデオシーケンスのある部分と他の部分との類似性を利用する。予測情報の一部は、エンコーダ（符号化器）とデコーダ（復号化器）の両方に既知であるため、差分のみが伝送される。この差分は、画像を表示するためには、遙かに少ない容量しか必要としない。予測プロセスは、動きを表すベクトルに基づく。予測プロセスは、通常四角のブロックサイズ（例、１６×１６ピクセル）で行われる。ある場合には、先行する画像のピクセルではなく、同一画像（画面）内の隣接するピクセルに基づくピクセル予測が、使用される。これはイントラ予測と称し、画面間のインター予測とは対照をなす。
【０００８】
データのブロック（例、４×４ピクセル）として表示された残差部分（residual）は、インターナル相関を含む。この利点を利用する公知の方法は、２次元のブロック変換を行うことである。Ｈ．２６３では８×８の Discrete Cosine Transform (DCT)を用いる。一方Ｈ．２６４は、４×４の整数型変換を用いる。これは、４×４のピクセルを４×４の変換係数に変換する。これは、通常ピクセル表示よりも少ないビット数で表示できる。４×４のピクセルのアレイをインターナル相関で変換することは、元の４×４のピクセルブロックよりも遙かに少ないノンゼロ値を有する変換係数の４×４ブロックになる。
【０００９】
変換係数の直接表示は、多くのアプリケーションでは依然としてコスト高である。更に量子化プロセスを施して、データ表示のビット数を低減する。それ故に変換係数に量子化プロセスが施される。単純な量子化バージョンは、ある数でパラメータの値を割り算することである。これはより、変換係数は、より少ないビット数で表される。この量子化プロセスによれば、再構成されたビデオシーケンスは、圧縮前のシーケンスとは若干異なる。この現象は、lossy coding と称する。量子化プロセスを介して得られた変換係数は、「量子化変換係数」と称する。
【００１０】
エントロピー符号化は、様々なタイプのパラメータのロスの少ない表示／表現である。例えばオーバーヘッドデータ、システム技術、予測データ（通常動きベクトル）と量子化プロセスからの量子化変換係数である。後者は、最大のビット消費をする。
【００１１】
符号化は、ビデオの画像のブロックに分けられた部分に対し行われる。マクロ・ブロックは、輝度（luma）信号と色差（chroma）信号用の複数のサブブロックから構成される。色差は、通常２個の色差成分（Cr.Cb）からなり、輝度と比較すると水平方向と垂直方向の両方で、解像度が半分である。図１において、マクロ・ブロックは、１６×１６の輝度ピクセルと、それぞれ８×８のピクセルを有する２個の色差成分からなる。各色差成分は、更に４×４のブロックに分割され、これは小さな四角で表される。符号化プロセスのために、輝度（luma）と色差（chroma）の４×４のブロックが、８×８のサブブロック内で一体にグループ化されて、Y0-Y3とCr.Cbで示される。
【００１２】
Ｈ．２６３とＨ．２６４は、ビデオ圧縮プロセスの量子化された変換係数の従来のエントロピー符号化を記述する。
【００１３】
Ｈ．２６３は、可変長符号化(VLC)に基づく。一組のイベント（事象）が規定される。イベントは、１つあるいは複数のパラメータ用の一定値を表す。イベントには、独自のビット符号が割り当てられる。この符号化テーブルは、符号の長さが各イベントの統計的発生確率に合うよう、設計される。最適の効率は、Bit-number=-log2(p)の時に得られる。ここでｐは、イベントの統計的発生確率で、ｐは０−１の範囲である。ＶＬＣ符号のテーブル（表）の一例を表１に示す。
【表１】
2008527789.tif 000003
【００１４】
Ｈ．２６４では改善した方法が導入された。即ちContext Adaptivity (CA)のコンセプトである。このコンセプトは、前の符号化に基づいたダイナミックに変化するモデルを採用する。一例として、より適したＶＬＣ表が、前のイベントの発生に基づいて選択され、符号化をより効率的にしている。この様なＣＡに基づく２つの方法が、Ｈ．２６４に開示されている。
１  符号化にＶＬＣ表を用いる中程度のContext Adaptivity を有するCAVLC（コンテキスト適応型可変長符号化）
２  数学的符号化を用いたより複雑なContext Adaptivityを有するCABAC（Binary    Arithemetic Coding：コンテキスト適応型２値算術符号化）。特徴：大きな圧縮ゲインが得られるが複雑になる。
【００１５】
CAVLCは、中程度の適合性と複雑さを有すると見なされる。CABACは、より高度の適合性を使用するが、ある種のアプリケーションでは複雑すぎ、特にリアルタイムのアプリケーションでは複雑すぎると見なされる。
【発明の開示】
【発明が解決しようとする課題】
【００１６】
本発明の目的は、複雑さと性能とのバランスを取った従来方法に比較し改善したエントロピー符号化方法を提供することである。本発明は、請求項１に記載されている。
【課題を解決するための手段】
【００１７】
本発明の目的は、複雑さと性能とのバランスを取った従来方法に比較し改善したエントロピー符号化方法を提供することである。本発明は、請求項５に記載されている。
【実施例】
【００１８】
本発明は、ブロック内の量子化された変換係数（ノンゼロの変換係数を有するとして知られる）を符号化／復号化する方法を提供する。本発明の理解を容易にするために、どのブロックが変換係数を有するか否か（ゼロかノンゼロか）に関する情報を符号化すること（符号化ブロックパターン Coded Block Pattern(CBP)と称する）を以下説明する。
【００１９】
図２には、CBPで使用される様々なブロックを示す。ブロックAは、１６×１６の輝度(luma)ブロックであり、これは更に１６個の４×４のブロックに分割され、２次元の変換プロセスで処理される。Aで示す黒い線は、１６×１６のブロックを４個の８×８のブロックに分けるパーティションである。各４×４ブロックは、１６個の変換係数を有する。ノンゼロは次のように符号化される。即ち、１ビットは、１６×１６のブロック全体の中にノンゼロ変換係数があるか否かを示す。１６×１６のブロック内にノンゼロ変換係数がある場合には、８×８のブロック毎に、更に１ビットがノンゼロの変換係数があるか否かを示す。８×８のブロック内にノンゼロの変換係数がある場合には、４×４のブロック毎に更に１ビットが、ノンゼロの変換係数があるか否かを示す。
【００２０】
ブロックＢはブロックＡと同一のパーティションを有する。黒い四角は、４×４のブロック内のＤＣ変換係数を示す。ＤＣ変換係数は、２回目の４×４変換プロセスで処理され、別の４×４ブロックを形成する。この４Ｘ４ブロックは１６個の変換係数を有し、他のブロックは、１５個の変換係数を有する。その理由は、ＤＣ変換係数は、ＤＣブロックにシフトしているからである。ブロックＢは、イントラブロックの特殊な場合である。１ビットは、４×４のＤＣ変換にノンゼロの変換係数があるか否かを示す。別のビットは、１６×１６ブロックの全体にノンゼロのＡＣ変換係数があるか否かを示す。１６×１６ブロックの全体にノンゼロのＡＣ変換係数が有る場合には、更に４×４のブロック毎に１個のビットが、ノンゼロのＡＣ変換係数があるか否かを示す。
【００２１】
ブロックＣは、８×８の輝度(luma)ブロックで、更に４個の４×４ブロックに分割されて、２次元の変換プロセスで処理される。黒い四角は、４×４のブロック内のＤＣ変換係数を示す。ＤＣ変換係数は、２回目の２×２変換プロセスで処理され、別の２×２ブロックを形成する。この２Ｘ２ブロックは４個の変換係数を有し、他のブロックは１５個の変換係数を有する。その理由は、ＤＣ変換係数はＤＣのブロックにシフトしているからである。これは、２個の色差係数の１つである。ブロックのＢの１つに、類似する構成を用いることができる。これは、２個の色差成分があり、ブロック内にノンゼロの色差係数があるか否かを示す１ビットを有するのが望ましいことを考慮に入れて、行われる。
【００２２】
本発明は、従来技術のContext Adaptive Variable Length Coding(CAVLC)とのある種の類似性がある。次に、Ｈ．２６４によるCAVLC符号化の基本を説明する。
【００２３】
符号化プロセスの間、各ブロック内のピクセル値を予測する予測プロセスが行われる。予測プロセスは、符号化されるべきピクセルデータからピクセルごとに減算され、その結果得られた信号を残差信号（residual signal）と称する。
【００２４】
更なる圧縮を行うために、残差信号は、４×４の変換プロセスを受け、その結果４×４＝１６個の変換係数となる。それらは、統計的にストリング内の位置が増えるにつれて変換係数のサイズは減少するように、１６個の数のストリングとして組織化される。必要な圧縮を確保するために、変換係数は、更にエントロピー符号化プロセスの前に、量子化プロセスで処理されう。これにより、通常大部分の変換係数が０となる。量子化された変換係数の通常のストリングは、次の通りである。
６  −４  ０  ２  ０  ０  −１  ０  ０  １  ０  ０  ０  ０  ０  ０    （１）
実際のCAVLC符号化プロセスの前に、CBP８符号化が行われ、８×８のブロックのどのブロックが変換係数を有しどれが有しないかを、特定する（図３で太字で示す）。
【００２５】
CAVLC符号化を記述する際に、変換係数列（１）を有する図３のブロックＣの量子化された変換係数を、一例として用いる。
【００２６】
第１ステップは、ノンゼロ変換係数の数（Ｎ）と絶対値１を有する（端部に向かう）変換係数の数の組み合わせを表す結合パラメータを符号化することである。上記の実施例では、このパラメータは（５，２）である。全ての変換係数が０の場合には、このパラメータは（０，０）である。このパラメータは、可変長符号（VLC）の符号表で符号化される。圧縮を強めるために、別のVLC表が、上記の４×４のブロックａ，ｂ（ブロックｃの上と左にあるブロック）内のＮの値に基づいて、選択することができる。
【００２７】
この点に対し、最後の２個の変換係数は、絶対値１を有することが既に特定されている。次のステップは、残りの変換係数６，−４，２を特定することである。このプロセスにおいては、逆順走査（reverse order scanning）が用いられる。この方法では、変換係数は、２，−４，６の順番に符号化される。これが行われる理由は、VLCの表は、前に符号化された変換係数のサイズに従って、変化するからである。この実施例では、「開始」VLCを用いて、２と４を符号化する。４は所定のしきい値以上であるため、別のVLCを用いて、６を符号化する。
【００２８】
各ノンゼロの変換係数に対しては、更に１ビットが、この変換係数が、正か又は負であるかを示す。
【００２９】
次に最後のノンゼロの変換係数の前の変換係数がゼロの数（ＴＺ）が符号化される。この実施例においてはＴＺ＝５である。Ｎは、ＴＺに対する上限を示す。Nに依存する適宜のVLC表が選択される。
【００３０】
最後に、ゼロ変換係数の実際の分布が、符号化される。これは、逆順の走査で実行される。それ故に２個のゼロ変換係数が最後の１の前にあることが特定される。全部で５個のゼロ変換係数があることが分かっており、適宜のVLC表が使用される。その後、ノンゼロ変換係数である−１の前の２個のゼロ変換係数と、ノンゼロ変換係数である２の前の１個のゼロ変換係数が符号化される。その後、全てのノンゼロ変換係数の位置とゼロ変換係数の位置が、完全に特定される。
【００３１】
従来のCAVLCが、４×４のブロック内の１の数と組み合わせたノンゼロ変換係数の数を特定するので、本発明は、最後のノンゼロ変換係数の位置と絶対値が１を超えるか否かとを組み合わせるイベントを導入する。更に外からの情報はなく、マクロ・ブロックを用いてどのVLCを使用すべきかが、決定される。変換係数は、RUNモードで開始し、絶対値が１を超える最初の変換係数が見出された時に、LEVELモードで継続する。RUN とLEVELの一例を、表２，３に示す。
【表２】
2008527789.tif 000004
【表３】
2008527789.tif 000005
【００３２】
本発明の一実施例を、図３と式（１）の変換係数を例に次に説明する。符号化プロセスのみをここでは記載するが、本発明は復号化プロセスにも適応可能である。
【００３３】
ブロック内の変換係数の量子化後、変換係数は所謂LEVEL値で表される。これは、０，±１，±２  等である。LEVELの絶対値はALEVELと称し、LEVELの符号（即ち＋又は−）は、SIGNLEVELと称する。
【００３４】
上記したように、本発明は、従来のCAVLCよりもより直接的な方法で開始する。０−３，０−１４、又は０−１５の番号のついた最後の変換係数の位置（Ｐ）を決めるが、これは、ブロック内の変換係数の数に依存して行われる、即ち図２に示されるどのCBPが使用されたかに依存して行われる。組み合わされたイベントが符号化され、位置（Ｐ）と最後の変換係数のALEVELが＝１又は＞１であるかを示す。上記の式（１）の場合には、事象は、（９，＝１）である。      
【００３５】
より圧縮を行うために、VLC表は、ブロックａとブロックｂの位置Ｐの値に依存して選択されるが、これはそれらがマクロ・ブロックの中にある場合である。これにより単純化される。その理由は、符号化／復号化は、マクロ・ブロックベースで行われ、これにより、他のマクロ・ブロックに接続されるデータの読み込みを不必要なものにするからである。
【００３６】
本発明の実施例によれば、使用されるVLCは、起こりえないＰ又はALEVELの値の符号を保存するのを回避するためにブロックのサイズと、ブロックａとｂのＰの値に依存する。しかしブロックａとｂへの依存性は、それらが符号化されるべき４×４のブロックと同一のマクロ・ブロック内に有る場合に、のみ起こる。
【００３７】
従来のCAVLCに対するのと同様に、逆順走査が用いられる。最後の変換係数のALEVELが１の場合は、符号化は更にRUNモードで継続される。
【００３８】
実施例を参照すると、最後の１（Ｒ＝２）の前のゼロ変換係数の数が符号化される。これは、次の変換係数（Next）の絶対値が１又は＞１か否かを示す表示と組み合わせて符号化される。この場合、次の変換係数は１である。
【００３９】
最後に符号化された変換係数の位置に依存して、次に続くＲＵＮの値は限られる。一例として、最後に符号化された変換係数が位置４にある場合には、ＲＵＮの値は０−４の範囲内にある。値１が除かれると５個のＲＵＮの値のみが符号化されるようなＶＬＣの表が必要である。これは設計に利用できる。
【００４０】
本発明の一実施例によれば、ＡLEVELは、直接符号化される（値０を含む）。上記の実施例の場合、符号は次の通りである。
ALEVEL＝２（これは１を超えると分かっている）
ALEVEL＝０
ALEVEL＝４
ALEVEL＝６
従来のCAVLCに対するのと同様に、VLCの表は、前に符号化した変換係数の大きさに依存して変更できる。一例として、Ｈ．２６４のＬＥＶＥＬ符号化で使用される適用手順において、６個の異なるVLCの表が利用可能である。これは、VLCｎ（ｎ＝０，１，２，３，４，５）と称する。ブロックの開始時にはｎは０に設定される。各符号化された変換係数に対し、次の変換係数を符号化するのに用いられるｎは、以下のように変更される。
ALEVEL＞３＊２ｎならば、ｎは１増加するが、５を超えることはない。
【００４１】
各ノンゼロ変換係数に対しては、１ビットは、変換係数が正か負かを示す。
【００４２】
図４は、本発明の方法の実施例を表すフローチャート図である。
【００４３】
図４のフローチャートは、マクロ・ブロック内の差分ピクセル値のブロックを表す量子化された変換係数のビデオ符号化における単純化したエントロピー符号化の手順を示す。この方法においては、量子化された変換係数は、増加する順で、ブロック内の位置が割り当てられる。
【００４４】
この方法は、開始ステップ４１でスタートする。
【００４５】
次に、第１の位置特定ステップ４２が実行される。このステップ４２においては、最後のノンゼロ変換係数のモデュラス（modulus）が、［１，ｎ］内にあるか、あるいは前記最後のノンゼロ変換係数のモデュラスがｎを超えている場合には、＞ｎの指示を表すかを決定する。
【００４６】
更にステップ４２において、上記のテストが真ならば、マクロ・ブロック内の最後のノンゼロの変換係数の第１位置は、前記最後のノンゼロ変換係数のモデュラスと共に、第１の可変長符号（VLC）内の発生しうる複数のイベントの中の１つのイベントとして特定される。
【００４７】
次に決定ステップ４３において、前記最後のノンゼロ変換係数のモデュラスが［１，ｎ］内にあるか否か決定される。
【００４８】
この決定ステップ４３の結果が真ならば、最後のノンゼロ変換係数は、前記の決定ステップ４４で、現在最後のノンゼロ変換係数として定義される。
【００４９】
次に、位置の数の特定ステップ４５が実行される。このステップにおいて、ブロック内の現在最後のノンゼロ変換係数と次のノンゼロ変換係数との間のゼロの変換係数を有する位置の数が、減る位置の順番に向けられるが、前記次のノンゼロ変換係数のモデュラスと共に、前記次のノンゼロ変換係数のモデュラスが、［１，ｎ］内にあるかあるいは前記次のノンゼロ変換係数のモデュラスがｎを超える場合には＞ｎの指示で、第２のVLC内の起こりうる複数のイベントの中のイベントとして、特定される。このステップ４５は、前記次のノンゼロ変換係数を現在最後のノンゼロ変換係数と定義するステップを含む。
【００５０】
他方で、決定ステップ４３の結果が否の場合。即ち現在最後のノンゼロ変換係数のモデュラスがｎを超える場合には、変換係数のモデュラスを特定するステップ４７が実行される。
【００５１】
位置の数を特定するステップ４５の完了後、決定ステップ４６が実行される。この決定ステップ４６においては、現在最後のノンゼロ変換係数のモデュラスが［１，ｎ］中にあるか否かが決定される。
【００５２】
決定ステップ４６の結果が真の場合には、位置の数の特定ステップ４５が繰り返される。
【００５３】
或いは、決定ステップ４６の結果が否の場合、即ち現在最後のノンゼロ変換係数のモデュラスがｎを超える場合には、変換係数のモデュラスを特定するステップ４７が実行される。
【００５４】
変換係数のモデュラスを特定するステップ４７は、決定ステップ４３の結果が否、即ち現在最後のノンゼロ変換係数のモデュラスが１を超える場合にも実行される。
【００５５】
変換係数のモデュラス解釈ステップ４７において、上記のステップで特定されなかった変換係数のモデュラスと対応する位置が、１つ或いは複数のVLCで解釈される。
【００５６】
好ましいことに、変換係数のモデュラス特定ステップ４７は、前記のステップ４１−４６で特定されなかった前記変換係数の最初又は最後の変換係数が［ｎ＋１，→］の可能なモデュラスの値を有する第３のVLCに従って特定され、かつ、ステップＩ−ＩＩＩで特定されなかった前記変換係数の残りの変換係数が［０，→］のモデュラス値を有する第４のVLCに従って特定される。
【００５７】
好ましくは定数ｎは、１の値を有する。
【００５８】
第１のVLRは、前記１個或いは複数の近傍のブロックがマクロ・ブロック内に入る場合には、前記ブロックに対する固定位置を有する近傍ブロックに依存する。
【００５９】
このプロセスは、終了ステップ４８で終了する。
【００６０】
図５は、本発明による方法の第２実施例を示すフローチャートである。
【００６１】
図５のフローチャートは、マクロ・ブロック内の差分ピクセル値のブロックを表す量子化された変換係数のビデオ復号化における単純化したエントロピー復号化の手順を示す。この方法においては、変換係数は、増加する順で、ブロック内の位置が割り当てられる。
【００６２】
この方法は、開始ステップ５１でスタートする。
【００６３】
次に、第１の位置特定ステップ５２が実行される。このステップ５２においては、最後のノンゼロ変換係数のモデュラス（modulus）が、［１，ｎ］内にあるか、あるいは前記最後のノンゼロ変換係数のモデュラスがｎを超えている場合には、＞ｎの指示を表すかを決定する。
【００６４】
更にステップ５２において、上記のテストが真ならば、マクロ・ブロック内の最後のノンゼロの変換係数の第１位置は、前記最後のノンゼロ変換係数のモデュラスと共に、第１の可変長符号（VLC）内の発生しうる複数のイベントの中の１つのイベントとして解釈される。
【００６５】
次に決定ステップ５３において、前記最後のノンゼロ変換係数のモデュラスが［１，ｎ］内にあるか否か決定される。
【００６６】
この決定ステップ５３の結果が真ならば、最後のノンゼロ変換係数は、前記の決定ステップ５４で、現在最後のノンゼロ変換係数として定義される。
【００６７】
次に、位置の数の特定ステップ５５が実行される。このステップにおいて、ブロック内の現在最後のノンゼロ変換係数と次のノンゼロ変換係数との間のゼロの変換係数を有する位置の数が、減る位置の順番に向けられるが、前記次のノンゼロ変換係数のモデュラスと共に、前記次のノンゼロ変換係数のモデュラスが、［１，ｎ］内にあるかあるいは前記次のノンゼロ変換係数のモデュラスがｎを超える場合には＞ｎの指示で、第２のVLC内の起こりうる複数のイベントの中のイベントとして、解釈される。このステップ５５は、前記次のノンゼロ変換係数を現在最後のノンゼロ変換係数と定義するステップを含む。
【００６８】
他方で、決定ステップ５３の結果が否の場合。即ち現在最後のノンゼロ変換係数のモデュラスがｎを超える場合には、変換係数のモデュラスを解釈するステップ５７が実行される。
【００６９】
位置の数を解釈するステップ５５の完了後、決定ステップ５６が実行される。この決定ステップ５６においては、現在最後のノンゼロ変換係数のモデュラスが［１，ｎ］中にあるか否かが決定される。
【００７０】
決定ステップ５６の結果が真の場合には、位置の数の解釈ステップ５５が繰り返される。
【００７１】
或いは、決定ステップ５６の結果が否の場合、即ち現在最後のノンゼロ変換係数のモデュラスがｎを超える場合には、変換係数のモデュラスを解釈するステップ５７が実行される。
【００７２】
変換係数のモデュラスを解釈するステップ５７は、決定ステップ５３の結果が否、即ち現在最後のノンゼロ変換係数のモデュラスが１を超える場合にも実行される。
【００７３】
変換係数のモデュラス解釈ステップ５７において、上記のステップで特定されなかった変換係数のモデュラスと対応する位置が、１つ或いは複数のVLCで、解釈される。
【００７４】
好ましいことに、変換係数のモデュラス特定ステップ５７は、前記のステップ５１−５６で解釈されなかった前記変換係数の最初又は最後の変換係数が［ｎ＋１，→］の可能なモデュラスの値を有する第３のVLCに従って特定され、かつ、ステップＩ−ＩＩＩで解釈されなかった前記変換係数の残りの変換係数が［０，→］のモデュラス値を有する第４のVLCに従って特定される。
【００７５】
好ましくは定数ｎは、１の値を有する。
【００７６】
第１のVLRは、前記１個或いは複数の近傍のブロックがマクロ・ブロック内に入る場合には、前記ブロックに対する固定位置を有する近傍ブロックに依存する。
【００７７】
このプロセスは、終了ステップ５８で終了する。
【００７８】
以上の説明は、本発明の一実施例に関するもので、この技術分野の当業者であれば、本発明の種々の変形例を考え得るが、それらはいずれも本発明の技術的範囲に包含される。特許請求の範囲の構成要素の後に記載した括弧内の番号は、図面の部品番号に対応し、発明の容易なる理解の為に付したものであり、発明を限定的に解釈するために用いてはならない。また、同一番号でも明細書と特許請求の範囲の部品名は必ずしも同一ではない。これは上記した理由による。
【図面の簡単な説明】
【００７９】
【図１】１６×１６の輝度(luma)ピクセルと８×８のピクセルを有する２個の色差(chroma)成分から成るマクロ・ブロックを表す図。
【図２】様々な符号化ブロックパターンの一例を表す図。
【図３】符号化されるべきマクロ・ブロック内のブロックとその近傍のブロックを表す図。
【図４】本発明の方法の第１実施例を表すフローチャート図。
【図５】本発明の方法の第２実施例を表すフローチャート図。
【図１】
2008527789.tif 000006
【図２】
2008527789.tif 000007
【図３】
2008527789.tif 000008
【図４】
2008527789.tif 000009
【図５】
2008527789.tif 000010
【手続補正書】
【提出日】平成18年10月30日(2006.10.30)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
マクロ・ブロック内の差分ピクセル値のブロックを表示する量子化された変換係数のビデオ符号化において、エントロピー符号化手順を提供する方法において、
前記変換係数は、増加する順番でブロック内の位置に割り当てられ
（Ｉ）  ブロック内の最後のノンゼロ変換係数の第１位置を、前記最後のノンゼロ変換係数のモデュラスが１を超えるか否かを表す指示と組み合わせて、第１の可変長符号VLC内の複数のイベント内のイベントとして、特定するステップと、
（ＩＩ）  前記最後のノンゼロ変換係数のモデュラスが１に等しい場合には、前記最後のノンゼロ変換係数を、現在最後のノンゼロ変換係数として定義し、
（ａ）  前記ブロック内で、前記現在最後のノンゼロ変換係数の位置と次のノンゼロ変換係数の位置との間のゼロ変換係数の位置の番号（位置の順番が減少する方向に向かって）を、前記次のノンゼロ変換係数のモデュラスが１を超えるか否かを表す指示と組み合わせて、第２のＶＬＣ内の複数の可能なイベント中のイベントとして特定し、前記次のノンゼロ変換係数を現在最後のノンゼロ変換係数として定義するステップと、
（ｂ）  前記現在最後のノンゼロ変換係数のモデュラスが１に等しい場合には、前記ステップ（ａ）を繰り返すステップと、
（ＩＩＩ）  前記最後の又は現在最後のノンゼロ変換係数のモデュラスが１を超える場合には、
（ａ）  前記ステップＩとＩＩで特定されなかった各変換係数のモデュラスと対応する位置とを、前記１つあるいは複数のVLCに従って特定するステップと
を有する
ことを特徴とするエントロピー符号化方法。
【請求項２】
前記ステップＩＩＩ（ａ）は、前記ステップＩ−ＩＩで特定されなかった前記変換係数の最初又は最後の変換係数は、［２，→］の可能なモジュラスの値を有する第３のＶＬＣに従って、特定され、前記ステップＩ−ＩＩＩで特定されなかった前記変換係数の残りの変換係数は、［０，→］の可能なモジュラスの値を有する第４のＶＬＣに従って、特定される
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記第１のＶＬＣは、１個或いは複数個の近傍ブロックが、マクロブロック内にある場合には、前記ブロックに対し一定位置を有する１個或いは複数個の近傍ブロックに依存する
ことを特徴とする請求項１あるいは２に記載の方法。
【請求項４】
前記第２のＶＬＣは、ＲＵＮコードである
ことを特徴とする請求項１，２，３のいずれかに記載の方法。
【請求項５】
マクロ・ブロック内の差分ピクセル値のブロックを表示する量子化された変換係数のビデオ復号化において、エントロピー復号化手順を提供する方法において、
前記変換係数は、増加する順番でブロック内の位置に割り当てられ
（ＩＶ）  ブロック内の最後のノンゼロ変換係数の第１位置を、前記最後のノンゼロ変換係数のモデュラスが１を超えるか否かを表す指示と組み合わせて、第１の可変長符号VLC内の複数のイベント内のイベントとして、解釈するステップと、
（Ｖ）  前記最後のノンゼロ変換係数のモデュラスが１に等しい場合には、前記最後のノンゼロ変換係数を、現在最後のノンゼロ変換係数として定義し、
（ａ）  前記ブロック内で、前記現在最後のノンゼロ変換係数の位置と次のノンゼロ変換係数の位置との間のゼロ変換係数の位置の番号（位置の順番が減少する方向に向かって）を、前記次のノンゼロ変換係数のモデュラスが１を超えるか否かを表す指示と組み合わせて、第２のＶＬＣ内の複数の可能なイベント中のイベントとして解釈し、前記次のノンゼロ変換係数を現在最後のノンゼロ変換係数として定義するステップと、
（ｂ）  前記現在最後のノンゼロ変換係数のモデュラスが１に等しい場合には、前記ステップ（ａ）を繰り返すステップと、
（ＶＩ）  前記最後の又は現在最後のノンゼロ変換係数のモデュラスが１を超える場合には、
（ａ）  前記ステップＩＶとＶで解釈されなかった各変換係数のモデュラスと対応する位置とを、前記１つあるいは複数のVLCに従って、解釈するステップと
を有する
ことを特徴とするエントロピー復号化方法。
【請求項６】
前記ステップＶＩ（ａ）は、前記ステップＩＶ−Ｖで解釈されなかった前記変換係数の最初又は最後の変換係数は、［２，→］の可能なモジュラスの値を有する第３のＶＬＣに従って、解釈され、前記ステップＩ−ＩＩＩで解釈されなかった前記変換係数の残りの変換係数は、［０，→］の可能なモジュラスの値を有する第４のＶＬＣに従って、解釈される
ことを特徴とする請求項１に記載の方法。
【請求項７】
前記第１のＶＬＣは、１個或いは複数個の近傍ブロックが、マクロブロック内にある場合には、前記ブロックに対し一定位置を有する１個或いは複数個の近傍ブロックに依存する
ことを特徴とする請求項１あるいは２に記載の方法。
【請求項８】
前記第２のＶＬＣは、ＲＵＮコードである
ことを特徴とする請求項５，６，７のいずれかに記載の方法。
【国際調査報告】
2008527789.tif 000011
2008527789.tif 000012
2008527789.tif 000013