(57)【要約】本開示では、ＳＶＣ方式でエンハンスメントレイヤをコーディングするための技法について説明する。本技法は、ＳＶＣ方式のエンハンスメントレイヤのリファインメント係数の可変長コーディングに使用できる。本開示によれば、本方法は、第１のタイプのビデオブロックに関連付けられた第１の統計値を決定することと、第２のタイプのビデオブロックに関連付けられた第２の統計値を決定することと、第１の統計値に基づいて第１のタイプのビデオブロックのコーディングに使用される複数のＶＬＣ表から第１のＶＬＣ表を選択することと、第２の統計値に基づいて第２のタイプのビデオブロックのコーディングに使用される複数のＶＬＣ表から第２のＶＬＣ表を選択することと、第１のＶＬＣ表に基づいて第１のタイプのビデオブロックをコーディングすることと、第２のＶＬＣ表に基づいて第２のタイプのビデオブロックをコーディングすることとを備えることができる。
2010516116.tif 000002
【特許請求の範囲】
【請求項１】
スケーラブルビデオコーディング（ＳＶＣ）方式のエンハンスメントレイヤをコーディングする方法であって、
第１のタイプのビデオブロックに関連付けられた第１の統計値を決定することと、
第２のタイプのビデオブロックに関連付けられた第２の統計値を決定することと、
前記第１の統計値に基づいて前記第１のタイプのビデオブロックのコーディングに使用される複数の可変長コーディング（ＶＬＣ）表から第１のＶＬＣ表を選択することと、
前記第２の統計値に基づいて前記第２のタイプのビデオブロックのコーディングに使用される前記複数のＶＬＣ表から第２のＶＬＣ表を選択することと、
前記第１のＶＬＣ表に基づいて前記第１のタイプのビデオブロックをコーディングすることと、
前記第２のＶＬＣ表に基づいて前記第２のタイプのビデオブロックをコーディングすることと
を備える方法。
【請求項２】
前記第１のＶＬＣ表に基づいて前記第１のタイプのビデオブロックをコーディングすることは、前記第１のＶＬＣ表に基づいて前記第１のタイプのビデオブロックを符号化することを備え、
前記第２のＶＬＣ表に基づいて前記第２のタイプのビデオブロックをコーディングすることは、前記第２のＶＬＣ表に基づいて前記第２のタイプのビデオブロックを符号化することを備える、
請求項１に記載の方法。
【請求項３】
前記第１のＶＬＣ表に基づいて前記第１のタイプのビデオブロックをコーディングすることは、前記第１のＶＬＣ表に基づいて前記第１のタイプのビデオブロックを復号することを備え、
前記第２のＶＬＣ表に基づいて前記第２のタイプのビデオブロックをコーディングすることは、前記第２のＶＬＣ表に基づいて前記第２のタイプのビデオブロックを復号することを備える、
請求項１に記載の方法。
【請求項４】
前記第１のＶＬＣ表に基づいて前記第１のタイプのビデオブロックをコーディングすることは、前記第１のＶＬＣ表を使用して表引きを実行することを備え、
前記第２のＶＬＣ表に基づいて前記第２のタイプのビデオブロックをコーディングすることは、前記第２のＶＬＣ表を使用して表引きを実行することを備える、
請求項１に記載の方法。
【請求項５】
前記第１のタイプのビデオブロックは、イントラコーディングされたビデオブロックを備え、前記第２のタイプのビデオブロックは、インターコーディングされたビデオブロックを備える、請求項１に記載の方法。
【請求項６】
前記ビデオブロックはフレーム中に配置され、前記方法は前記フレームの各々に対して繰り返される、請求項１に記載の方法。
【請求項７】
前記方法はエンハンスメントレイヤのリファインメント係数に対して実行され、
前記第１のＶＬＣ表に基づいて前記第１のタイプのビデオブロックをコーディングすることは、前記第１のタイプのビデオブロックに関連付けられたリファインメント係数をコーディングすることを備え、
前記第２のＶＬＣ表に基づいて前記第２のタイプのビデオブロックをコーディングすることは、前記第２のタイプのビデオブロックに関連付けられたリファインメント係数をコーディングすることを備える、
請求項１に記載の方法。
【請求項８】
前記第１のタイプのビデオブロックに対して、同符号値を有するコーディング済みリファインメント係数の、逆符号値を有するコーディング済みリファインメント係数に対する第１の比を決定することと、
前記第２のタイプのビデオブロックに対して、同符号値を有するコーディング済みリファインメント係数の、逆符号値を有するコーディング済みリファインメント係数に対する第２の比を決定することと、
前記第１の比に基づいて前記第１のＶＬＣ表を選択することと、
前記第２の比に基づいて前記第２のＶＬＣ表を選択することと
をさらに備える、請求項７に記載の方法。
【請求項９】
スケーラブルビデオコーディング（ＳＶＣ）方式のエンハンスメントレイヤをコーディングするデバイスであって、
第１のタイプのビデオブロックに関連付けられた第１の統計値を決定し、第２のタイプのビデオブロックに関連付けられた第２の統計値を決定する統計モジュールと、
前記第１の統計値に基づいて前記第１のタイプのビデオブロックのコーディングに使用される複数の可変長コーディング（ＶＬＣ）表から第１のＶＬＣ表を選択し、前記第２の統計値に基づいて前記第２のタイプのビデオブロックのコーディングに使用される複数のＶＬＣ表から第２のＶＬＣ表を選択する表選択モジュールと、
前記第１のＶＬＣ表に基づいて前記第１のタイプのビデオブロックをコーディングし、前記第２のＶＬＣ表に基づいて前記第２のタイプのビデオブロックをコーディングするコーディングモジュールと
を備えるデバイス。
【請求項１０】
前記コーディングモジュールは、前記第１のＶＬＣ表に基づいて前記第１のタイプのビデオブロックを符号化し、前記第２のＶＬＣ表に基づいて前記第２のタイプのビデオブロックを符号化する符号化モジュールを備える、請求項９に記載のデバイス。
【請求項１１】
前記コーディングモジュールは、前記第１のＶＬＣ表に基づいて前記第１のタイプのビデオブロックを復号し、前記第２のＶＬＣ表に基づいて前記第２のタイプのビデオブロックを復号する復号モジュールを備える、請求項９に記載のデバイス。
【請求項１２】
前記コーディングモジュールは、
前記第１のタイプのビデオブロックをコーディングするために前記第１のＶＬＣ表を使用して表引きを実行し、
前記第２のタイプのビデオブロックをコーディングするために前記第２のＶＬＣ表を使用して表引きを実行する、
請求項９に記載のデバイス。
【請求項１３】
前記第１のタイプのビデオブロックは、イントラコーディングされたビデオブロックを備え、前記第２のタイプのビデオブロックは、インターコーディングされたビデオブロックを備える、請求項９に記載のデバイス。
【請求項１４】
前記ビデオブロックはフレーム中に配置され、前記フレームの各々に対して、
前記統計モジュールは前記第１および第２の統計値を決定し、
前記表選択モジュールは前記第１および第２のＶＣＬ表を選択し、
前記コーディングモジュールは前記選択された第１および第２のＶＬＣ表に基づいて前記第１および第２のタイプのビデオブロックをコーディングする、
請求項９に記載のデバイス。
【請求項１５】
前記デバイスは前記エンハンスメントレイヤのリファインメント係数をコーディングし、前記コーディングモジュールは、
前記第１のＶＬＣ表に基づいて前記第１のタイプのビデオブロックに関連付けられたリファインメント係数をコーディングし、
前記第２のＶＬＣ表に基づいて前記第２のタイプのビデオブロックに関連付けられたリファインメント係数をコーディングする、
請求項９に記載のデバイス。
【請求項１６】
前記統計モジュールは、
前記第１のタイプのビデオブロックに対して、同符号値を有するコーディング済みリファインメント係数の、逆符号値を有するコーディング済みリファインメント係数に対する第１の比を決定し、
前記第２のタイプのビデオブロックに対して、同符号値を有するコーディング済みリファインメント係数の、逆符号値を有するコーディング済みリファインメント係数に対する第２の比を決定し、
前記表選択モジュールは、
前記第１の比に基づいて前記第１のＶＬＣ表を選択し、
前記第２の比に基づいて前記第２のＶＬＣ表を選択する、
請求項９に記載のデバイス。
【請求項１７】
前記デバイスは、
回路と、
無線通信デバイスと
のうちの少なくとも１つを備える、請求項９に記載のデバイス。
【請求項１８】
ビデオコーディングデバイスでの実行時に、スケーラブルビデオコーディング（ＳＶＣ）方式のエンハンスメントレイヤをコーディングすることを前記デバイスに行わせる命令を備えるコンピュータ可読媒体であって、前記命令は、
第１のタイプのビデオブロックに関連付けられた第１の統計値を決定することと、
第２のタイプのビデオブロックに関連付けられた第２の統計値を決定することと、
前記第１の統計値に基づいて前記第１のタイプのビデオブロックのコーディングに使用される複数の可変長コーディング（ＶＬＣ）表から第１のＶＬＣ表を選択することと、
前記第２の統計値に基づいて前記第２のタイプのビデオブロックのコーディングに使用される前記複数のＶＬＣ表から第２のＶＬＣ表を選択することと、
前記第１のＶＬＣ表に基づいて前記第１のタイプのビデオブロックをコーディングすることと、
前記第２のＶＬＣ表に基づいて前記第２のタイプのビデオブロックをコーディングすることと
を前記デバイスに行わせるコンピュータ可読媒体。
【請求項１９】
スケーラブルビデオコーディング（ＳＶＣ）方式のエンハンスメントレイヤをコーディングするデバイスであって、
第１のタイプのビデオブロックに関連付けられた第１の統計値を決定し、第２のタイプのビデオブロックに関連付けられた第２の統計値を決定する、統計値を決定するための手段と、
前記第１の統計値に基づいて前記第１のタイプのビデオブロックのコーディングに使用される複数の可変長コーディング（ＶＬＣ）表から第１のＶＬＣ表を選択し、前記第２の統計値に基づいて前記第２のタイプのビデオブロックのコーディングに使用される複数のＶＬＣ表から第２のＶＬＣ表を選択する、選択するための手段と、
前記第１のＶＬＣ表に基づいて前記第１のタイプのビデオブロックをコーディングし、前記第２のＶＬＣ表に基づいて前記第２のタイプのビデオブロックをコーディングする、コーディングするための手段と
を備えるデバイス。
【請求項２０】
前記コーディングするための手段は、
前記第１のＶＬＣ表に基づいて前記第１のタイプのビデオブロックを符号化し、
前記第２のＶＬＣ表に基づいて前記第２のタイプのビデオブロックを符号化する、
請求項１９に記載のデバイス。
【請求項２１】
前記コーディングするための手段は、
前記第１のＶＬＣ表に基づいて前記第１のタイプのビデオブロックを復号し、
前記第２のＶＬＣ表に基づいて前記第２のタイプのビデオブロックを復号する、
請求項１９に記載のデバイス。
【請求項２２】
前記コーディングするための手段は、前記第１のＶＬＣ表を使用して前記第１のタイプのビデオブロックに対して表引きを実行し、前記第２のＶＬＣ表を使用して前記第２のタイプのビデオブロックに対して表引きを実行する、請求項１９に記載のデバイス。
【請求項２３】
前記第１のタイプのビデオブロックは、イントラコーディングされたビデオブロックを備え、前記第２のタイプのビデオブロックは、インターコーディングされたビデオブロックを備える、請求項１９に記載のデバイス。
【請求項２４】
前記ビデオブロックはフレーム中に配置され、前記フレームの各々に対して、
前記決定するための手段は前記第１および第２の統計値を決定し、
前記選択するための手段は前記第１および第２のＶＣＬ表を選択し、
前記コーディングするための手段は前記選択された第１および第２のＶＬＣ表に基づいて前記第１および第２のタイプのビデオブロックをコーディングする、
請求項１９に記載のデバイス。
【請求項２５】
前記デバイスは前記エンハンスメントレイヤのリファインメント係数をコーディングし、前記コーディングするための手段は、
前記第１のＶＬＣ表に基づいて前記第１のタイプのビデオブロックに関連付けられたリファインメント係数をコーディングし、
前記第２のＶＬＣ表に基づいて前記第２のタイプのビデオブロックに関連付けられたリファインメント係数をコーディングし、
前記決定するための手段は、
前記第１のタイプのビデオブロックに対して、同符号値を有するコーディング済みリファインメント係数の、逆符号値を有するコーディング済みリファインメント係数に対する第１の比を決定し、
前記第２のタイプのビデオブロックに対して、同符号値を有するコーディング済みリファインメント係数の、逆符号値を有するコーディング済みリファインメント係数に対する第２の比を決定し、
前記選択するための手段は、
前記第１の比に基づいて前記第１のＶＬＣ表を選択し、
前記第２の比に基づいて前記第２のＶＬＣ表を選択する、
請求項１９に記載のデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、それぞれ内容全体が参照により本明細書に組み込まれる、２００７年１月５日に出願された米国特許仮出願第６０／８８３，７４１号の利益を主張するものである。
【０００２】
本開示は、デジタルビデオコーディングに関し、より詳細には、スケーラブルビデオコーディング（ＳＶＣ）方式のエンハンスメントレイヤにおける変換係数の可変長コーディング（ＶＬＣ）に関する。
【背景技術】
【０００３】
デジタルビデオ機能は、デジタルテレビ、デジタル直接放送システム、無線通信デバイス、無線放送システム、携帯情報端末（ＰＤＡ）、ラップトップまたはデスクトップコンピュータ、デジタルカメラ、デジタル記録デバイス、ビデオゲームデバイス、ビデオゲームコンソール、セルラまたは衛星無線電話などを含む、広範囲にわたるデバイスに組み込むことができる。デジタルビデオデバイスは、ＭＰＥＧ−２、ＭＰＥＧ−４、またはＨ．２６４／ＭＰＥＧ−４，Ｐａｒｔ１０，Advanced Video Coding（ＡＶＣ）など、ビデオ圧縮技法を実装して、デジタルビデオをより効率的に送信および受信する。ビデオ圧縮技法では、ビデオシーケンスに固有の冗長性を低減または除去するために空間的予測および時間的予測を実行する。
【０００４】
ビデオコーディングでは、ビデオ圧縮は、しばしば空間的予測、動き推定および動き補償を含む。イントラコーディングは空間的予測を利用して、所与のビデオフレーム内のビデオブロック間の空間的冗長性を低減または除去する。インターコーディングは時間的予測を利用して、ビデオシーケンスの連続するビデオフレームのビデオブロック間の時間的冗長性を低減または除去する。インターコーディングの場合、ビデオ符号器は動き推定を実行して、２つ以上の隣接フレーム間でビデオブロックを一致させる動作を追跡する。動き推定では、１つまたは複数の基準フレームにおける対応する予測ビデオブロックに対するビデオブロックの変位を示す、動きベクトルを生成する。動き補償では、動きベクトルを使用して、基準フレームから予測ビデオブロックを生成する。動き補償の後、予測ビデオブロックを元のビデオブロックから減算することによって、残差ビデオブロックを形成してコーディングする。
【０００５】
ビデオ符号器は通常、変換、量子化および変換係数コーディングプロセスを利用して、残差ブロックの通信に関連付けられたビットレートをさらに低減する。残差ブロックの変換係数のコーディングでは、可変長コードを利用して、変換および量子化演算によって生じる係数をさらに圧縮することができる。例えば、可変長コーディング（ＶＬＣ）表を使用して、コーディング効率を促進する方法で係数の異なる組を可変長符号語に一致させることができる。異なるビデオコンテンツに対して異なるＶＬＣ表を使用することができる。ビデオ復号器は逆ＶＬＣ演算を実行して係数を再構成し、次いで係数を逆変換してビデオ情報を再構成する。ビデオ復号器は、ビデオブロックに関連付けられた動き情報および残差情報に基づいてビデオ情報を復号することができる。
【０００６】
ビデオコーディングの中には、スケーラブル技法を使用するものがある。例えば、スケーラブルビデオコーディング（ＳＶＣ）は、ベースレイヤおよび１つまたは複数のスケーラブルエンハンスメントレイヤが使用されるビデオコーディングを指す。ＳＶＣの場合、ベースレイヤは一般にベースレベルの品質でビデオデータを搬送する。１つまたは複数のエンハンスメントレイヤは追加のビデオデータを搬送して、より高い空間的、時間的および／またはＳＮＲレベルをサポートする。ベースレイヤは、エンハンスメントレイヤの送信よりも信頼できる方法で送信できる。エンハンスメントレイヤは、ベースレイヤのフレームに空間解像度を追加するか、追加的フレームを追加して全体のフレームレートを高めることができる。一実施例では、変調信号の最も信頼できる部分はベースレイヤを送信するために使用でき、変調信号のあまり信頼できない部分はエンハンスメントレイヤを送信するために使用できる。エンハンスメントレイヤは、有意係数(significant coefficient)およびリファインメント係数と呼ばれる、異なるタイプの係数を定義することができる。
【発明の概要】
【０００７】
概して、本開示では、スケーラブルビデオコーディング（ＳＶＣ）方式でエンハンスメントレイヤをコーディングするための技法について説明する。本技法では符号化および復号プロセス中の可変長コーディング（ＶＬＣ）表の選択を行う。本技法は、変換係数のブロックのコーディングに使用でき、特にＳＶＣ方式のエンハンスメントレイヤのブロックのリファインメント係数のＶＬＣに有用である。リファインメント係数は、ＳＶＣ方式での以前のレイヤの対応する係数がゼロでない値を有していたエンハンスメントレイヤの係数を指す。リファインメント係数のＶＬＣは有意係数のＶＬＣとは別々に実行でき、有意係数は、ＳＶＣ方式での以前のレイヤの対応する係数がゼロの値を有していたエンハンスメントレイヤの係数を指す。
【０００８】
本開示の技法によれば、異なるタイプのビデオブロック、例えばイントラブロックおよびインターブロックに対してＶＬＣ表が選択される。表は、ビデオ情報のフレームごとに１回選択することができ、または他のタイプのコーディング単位に対して１回（ビデオ情報のスライス当たり１回、またはフレームのＦＧＳレイヤ当たり１回など）選択することもできる。異なるタイプのビデオブロックのＶＬＣ表は、コーディング済みブロックに関連付けられた統計値に基づいて選択できる。例えば、イントラブロックのＶＬＣ表は、コーディング済みイントラブロックに関連付けられた統計値に基づいて選択できる。同様に、インターブロックのＶＬＣ表は、コーディング済みインターブロックに関連付けられた統計値に基づいて選択できる。一実施例では、ビデオブロックのタイプごとの統計値は、同符号値を有していたコーディング済みブロックにおけるリファインメント係数の個数の、逆符号値を有していたコーディング済みブロックにおけるリファインメント係数の個数に対する比を備えることができる。この比に基づいて、所与のフレームのブロックに関連付けられたリファインメント係数をコーディングするためにＶＬＣ表を選択することができ、次のフレームに遭遇したとき、再び比を計算して、そのフレームに対するＶＬＣ表選択を可能にすることができる。
【０００９】
一実施例では、本開示は、ＳＶＣ方式のエンハンスメントレイヤをコーディングする方法であって、第１のタイプのビデオブロックに関連付けられた第１の統計値を決定することと、第２のタイプのビデオブロックに関連付けられた第２の統計値を決定することと、第１の統計値に基づいて第１のタイプのビデオブロックのコーディングに使用される複数のＶＬＣ表からＶＬＣ表を選択することと、第２の統計値に基づいて第２のタイプのビデオブロックのコーディングに使用される複数のＶＬＣ表から第２のＶＬＣ表を選択することと、第１のＶＬＣ表に基づいて第１のタイプのビデオブロックをコーディングすることと、第２のＶＬＣ表に基づいて第２のタイプのビデオブロックをコーディングすることとを備える方法を提供する。
【００１０】
別の実施例では、本開示は、ＳＶＣ方式のエンハンスメントレイヤをコーディングするデバイスであって、第１のタイプのビデオブロックに関連付けられた第１の統計値を決定し、第２のタイプのビデオブロックに関連付けられた第２の統計値を決定する統計モジュールと、第１の統計値に基づいて第１のタイプのビデオブロックのコーディングに使用される複数のＶＬＣ表から第１のＶＬＣ表を選択し、第２の統計値に基づいて第２のタイプのビデオブロックのコーディングに使用される複数のＶＬＣ表から第２のＶＬＣ表を選択する表選択モジュールと、第１のＶＬＣ表に基づいて第１のタイプのビデオブロックをコーディングし、第２のＶＬＣ表に基づいて第２のタイプのビデオブロックをコーディングするコーディングモジュールとを備えるデバイスを提供する。
【００１１】
別の実施例では、本開示は、ＳＶＣ方式のエンハンスメントレイヤをコーディングするデバイスであって、第１のタイプのビデオブロックに関連付けられた第１の統計値を決定し、第２のタイプのビデオブロックに関連付けられた第２の統計値を決定する、統計値を決定するための手段と、第１の統計値に基づいて第１のタイプのビデオブロックのコーディングに使用される複数のＶＬＣ表から第１のＶＬＣ表を選択し、第２の統計値に基づいて第２のタイプのビデオブロックのコーディングに使用される複数のＶＬＣ表から第２のＶＬＣ表を選択する、選択するための手段と、第１のＶＬＣ表に基づいて第１のタイプのビデオブロックをコーディングし、第２のＶＬＣ表に基づいて第２のタイプのビデオブロックをコーディングする、コーディングするための手段とを備えるデバイスを提供する。
【００１２】
本開示に記載の技法は、ハードウェア、ソフトウェア、ファームウェア、またはその任意の組み合わせで実施できる。ソフトウェアで実施する場合、ソフトウェアは、マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、またはデジタル信号プロセッサ（ＤＳＰ）など、１つまたは複数のプロセッサで実行できる。本技法を実行するソフトウェアは、初めにコンピュータ可読媒体に格納し、プロセッサにロードして実行することができる。
【００１３】
したがって、本開示はまた、ビデオコーディングデバイスでの実行時に、ＳＶＣ方式のエンハンスメントレイヤをコーディングすることをデバイスに行わせる命令を備えるコンピュータ可読媒体であって、命令が、第１のタイプのビデオブロックに関連付けられた第１の統計値を決定することと、第２のタイプのビデオブロックに関連付けられた第２の統計値を決定することと、第１の統計値に基づいて第１のタイプのビデオブロックのコーディングに使用される複数のＶＬＣ表から第１のＶＬＣ表を選択することと、第２の統計値に基づいて第２のタイプのビデオブロックのコーディングに使用される複数のＶＬＣ表から第２のＶＬＣ表を選択することと、第１のＶＬＣ表に基づいて第１のタイプのビデオブロックをコーディングすることと、第２のＶＬＣ表に基づいて第２のタイプのビデオブロックをコーディングすることとをデバイスに行わせる、コンピュータ可読媒体を企図する。
【００１４】
場合によっては、コンピュータ可読媒体は、製造業者に販売および／またはビデオコーディングデバイスで使用できるコンピュータプログラム製品の一部をなすことができる。コンピュータプログラム製品はコンピュータ可読媒体を含むことがあり、場合によってはパッケージ材料を含むこともある。
【００１５】
他の場合、本開示は、集積回路、チップセット、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、論理回路、またはそれらの様々な組み合わせなど、本明細書に記載の１つまたは複数の技法を実施するように構成された回路を対象とすることができる。
【００１６】
１つまたは複数の態様の詳細を添付の図面および以下の説明において示す。本開示に記載の技法の他の特徴、目的、および利点は、これらの説明および図面、ならびに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１７】
【図１】ビデオ符号化および復号システムを示す例示的なブロック図。
【図２】スケーラブルなビデオビットストリームのベースレイヤおよびエンハンスメントレイヤのビデオフレームを示す概念図。
【図３】本開示に合致するビデオ符号器の例を示すブロック図。
【図４】本開示に合致するビデオ復号器の例を示すブロック図。
【図５】可変長コーディング（ＶＬＣ）符号化ユニットの例示的なブロック図。
【図６】ＶＬＣ復号ユニットの例示的なブロック図。
【図７】本開示に合致する可変長コーディング用のＶＬＣ技法を示す流れ図。
【発明を実施するための形態】
【００１８】
本開示では、スケーラブルビデオコーディング（ＳＶＣ）方式でエンハンスメントレイヤをコーディングするための技法について説明する。本技法では符号器および復号器における可変長コーディング（ＶＬＣ）表の選択を行う。すなわち、ＶＬＣ表選択技法は、情報を符号化するためには符号器で、情報を復号するためには復号器で、ＶＬＣ表選択を実行する点で相補的である。本技法は、変換係数のコーディングに使用でき、特にＳＶＣ方式のエンハンスメントレイヤのリファインメント係数の可変長コーディングに有用である。リファインメント係数は、ＳＶＣ方式での以前のレイヤの対応する係数がゼロでない値を有していたエンハンスメントレイヤの係数を指す。対照的に、有意係数は、ＳＶＣ方式での以前のレイヤの対応する係数がゼロの値を有していたエンハンスメントレイヤの係数を指す。リファインメント係数の可変長コーディングは有意係数の可変長コーディングとは別々に実行できる。
【００１９】
本開示の技法によれば、異なるタイプのビデオブロック、例えばイントラブロックおよびインターブロックに対してＶＬＣ表が選択される。表は、コーディング単位当たり１回、例えばフレーム当たり１回、ビデオ情報のスライス当たり１回、フレームのＦＧＳレイヤ当たり１回選択できる。異なるタイプのビデオブロックのＶＬＣ表は、コーディング済みブロックに関連付けられた統計値に基づいて選択できる。例えば、イントラブロックのＶＬＣ表は、コーディング済みイントラブロックに関連付けられた統計値に基づいて選択でき、インターブロックのＶＬＣ表は、コーディング済みインターブロックに関連付けられた統計値に基づいて選択できる。
【００２０】
一実施例では、ビデオブロックのタイプごとの統計値は、同符号値を有していたそのブロックタイプのコーディング済みブロックにおけるリファインメント係数の個数の、逆符号値を有していたそのブロックタイプのコーディング済みブロックにおけるリファインメント係数の個数に対する比を備えることができる。ブロックのタイプ（イントラおよびインター）ごとの比に基づいて、第１のＶＬＣ表は所与のフレームのイントラブロックに関連付けられたリファインメント係数をコーディングするために選択でき、第２のＶＬＣ表は所与のフレームのインターブロックに関連付けられたリファインメント係数をコーディングするために選択できる。次のフレームに遭遇したとき、比を再び計算して、そのフレームのＶＬＣ表選択を可能にすることができる。
【００２１】
図１は、ビデオ符号化および復号システム１０を示すブロック図である。図１に示すように、システム１０は、通信チャネル１５を介して符号化ビデオを受信デバイス６に送信するソースデバイス２を含む。ソースデバイス２は、ビデオソース１１、ビデオ符号器１２および変調器／送信器１４を含むことができる。受信デバイス６は、受信器／復調器１６、ビデオ復号器１８およびディスプレイデバイス２０を含むことができる。システム１０は、ＳＶＣ方式でエンハンスメントレイヤに関連付けられたビデオ情報のＶＬＣのための技法を適用するように構成できる。
【００２２】
ＳＶＣは、ベースレイヤおよび１つまたは複数のスケーラブルなエンハンスメントレイヤが使用されるビデオコーディングを指す。ＳＶＣの場合、ベースレイヤは一般にベースレベルの品質でビデオデータを搬送する。１つまたは複数のエンハンスメントレイヤは追加のビデオデータを搬送して、より高い空間的、時間的および／または信号対雑音ＳＮＲレベルをサポートする。エンハンスメントレイヤは、以前に符号化されたレイヤに対して定義できる。エンハンスメントレイヤは、有意係数およびリファインメント係数と呼ばれる、少なくとも２つの異なるタイプの係数を定義する。リファインメント係数は、以前に符号化されたレイヤの対応する値に対して値を定義することができる。エンハンスメントレイヤのフレームは、ベースレイヤまたは以前のエンハンスメントレイヤ中のビデオブロックの総数の一部のみ、例えばエンハンスメントが実行されるそれらのブロックのみを含むことがある。
【００２３】
有意係数は、以前のレイヤ中の対応する係数がゼロの値を有していた係数を指す。リファインメント係数は、以前のレイヤ中の対応する係数が以前のレイヤ中でゼロでない値を有していた係数を指す。エンハンスメントレイヤの可変長コーディングは一般に２パス手法を含む。第１のパスは有意係数を可変長コーディングするように実行され、別のパスはリファインメント係数を可変長コーディングするように実行される。本開示の技法は、特にリファインメント係数の可変長コーディングに役立つが、本開示が必ずしもこの点に限定されるわけではない。
【００２４】
本開示の技法によれば、異なるタイプのビデオブロックに対して異なるＶＬＣ表が選択される。例えば、第１のＶＬＣ表はイントラブロックのリファインメント係数をコーディングするために選択でき、第２のＶＬＣ表はインターブロックのリファインメント係数をコーディングするために選択できる。イントラブロックは、その所与のコーディング単位内のブロックに基づいてコーディングされたブロックを指す。インターブロックは、別のコーディング単位のブロックに基づいてコーディングされたブロックを指す。
【００２５】
ＶＬＣ表の選択は、コーディング済みブロックに関連付けられた統計値に基づいてよい。例えば、イントラブロックのＶＬＣ表は、コーディング済みイントラブロックに関連付けられた統計値に基づいて選択でき、インターブロックのＶＬＣ表は、コーディング済みインターブロックに関連付けられた統計値に基づいて選択できる。ＶＬＣ表は、ビデオ情報のフレーム当たり１回、ビデオ情報のスライス当たり１回、またはフレームのＦＧＳレイヤ当たり１回など、コーディング単位当たり１回選択できる。ＦＧＳは、微細粒度信号対雑音スケーラビリティ（Fine Granularity signal-to-noise Scalability）の略であり、以下でさらに詳細に説明する。
【００２６】
ビデオブロックのタイプごとの統計値は、同符号値を有していたコーディング済みブロックにおけるリファインメント係数の個数の、逆符号値を有していたコーディング済みブロックにおけるリファインメント係数の個数に対する比を備えることができる。ブロックタイプごとの比、すなわち、イントラブロックの場合の比およびインターブロックの場合の比に基づいて、第１および第２のＶＬＣ表はそれぞれ、所与のフレーム（または他のコーディング単位）のイントラブロックおよびインターブロックに関連付けられたリファインメント係数をコーディングするために選択できる。次のフレーム（または他のコーディング単位）に遭遇したとき、比を再び計算して、更新されたＶＬＣ表選択を可能にすることができる。
【００２７】
図１の例では、通信チャネル１５は、無線周波数（ＲＦ）スペクトルまたは１つまたは複数の物理的な送信経路など、無線または有線の通信媒体、あるいは無線および有線の媒体の組み合わせを備えることができる。通信チャネル１５は、ローカルエリアネットワーク、広域ネットワークまたはインターネットなどのグローバルネットワークなど、パケットベースのネットワークの一部をなすことができる。通信チャネル１５は概して、ビデオデータをソースデバイス２から受信デバイス６に送信するのに好適な通信媒体または様々な通信媒体の集合体を表す。
【００２８】
ソースデバイス２は、受信デバイス６に送信するためのコーディングされたビデオデータを生成する。ただし場合によっては、デバイス２、デバイス６は、ほぼ対称の様式で動作することができる。例えば、デバイス２、デバイス６の各々は、ビデオ符号化および復号コンポーネントを含むことができる。したがって、システム１０は、例えばビデオストリーミング、ビデオ放送またはビデオ電話通信のためのビデオデバイス２とビデオデバイス６との間の一方向または双方向のビデオ送信をサポートすることができる。
【００２９】
ソースデバイス２のビデオソース１１は、ビデオカメラ、以前に取り込まれたビデオを含むビデオアーカイブ、またはビデオコンテンツプロバイダからのビデオフィードなど、ビデオキャプチャデバイスを含むことができる。さらなる代替のものとして、ビデオソース１１はソースビデオとしてのコンピュータグラフィックベースのデータ、またはライブビデオとコンピュータ生成ビデオとの合成を生成することができる。場合によっては、ビデオソース１１がビデオカメラの場合、ソースデバイス２および受信デバイス６はいわゆるカメラ付き携帯電話機またはテレビ電話を形成することができる。それぞれの場合で、取り込まれたビデオ、予め取り込まれたビデオ、またはコンピュータ生成ビデオは、変調器／送信器１４、通信チャネル１５および受信器／復調器１６を介して、ビデオソースデバイス２からビデオ受信デバイス６のビデオ復号器１８に送信するためにビデオ符号器１２によって符号化できる。ビデオ符号化および復号プロセスは、このプロセスを改善するために、本明細書に記載のＶＬＣ表選択技法を実装することができる。ディスプレイデバイス２０は、復号ビデオデータをユーザに対して表示し、陰極線管、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを備えることができる。
【００３０】
ビデオ符号器１２およびビデオ復号器１８は、空間的、時間的および／または信号対雑音比（ＳＮＲ）スケーラビリティのためのＳＶＣをサポートするように構成できる。一部の態様では、ビデオ符号器１２およびビデオ復号器１８は、ＳＶＣのための微細粒度ＳＮＲスケーラビリティ（ＦＧＳ）コーディングをサポートするように構成できる。符号器１２および復号器１８は、ベースレイヤおよび１つまたは複数のスケーラブルエンハンスメントレイヤの符号化、送信および復号をサポートすることによって、様々な程度のスケーラビリティをサポートすることができる。ここでも、スケーラブルビデオコーディングの場合、ベースレイヤはベースラインレベルの品質でビデオデータを搬送する。１つまたは複数のエンハンスメントレイヤは追加データを搬送して、より高い空間的、時間的および／またはＳＮＲレベルをサポートする。ベースレイヤは、エンハンスメントレイヤの送信よりも信頼できる方法で送信できる。例えば、変調信号の最も信頼できる部分はベースレイヤを送信するために使用でき、変調信号のあまり信頼できない部分はエンハンスメントレイヤを送信するために使用できる。
【００３１】
ＳＶＣをサポートするために、ビデオ符号器１２はベースレイヤ符号器２２および１つまたは複数のエンハンスメントレイヤ符号器２４を含み、それぞれベースレイヤおよび１つまたは複数のエンハンスメントレイヤの符号化を実行することができる。ＶＬＣ表選択を含む本開示の技法は、ＳＶＣでのエンハンスメントレイヤのビデオブロックのコーディングに適用可能である。より詳細には、本開示の技法はエンハンスメントレイヤのビデオブロックのリファインメント係数のＶＬＣに適用可能であるが、本開示が必ずしもこの点に限定されるわけではない。
【００３２】
ビデオ復号器１８は、ベースレイヤおよびエンハンスメントレイヤの両方に関連付けられたビデオブロックを復号する複合ベース／エンハンスメント復号器を含むことができる。ビデオ復号器１８がベースレイヤとエンハンスメントレイヤの両方に関連付けられたビデオブロックを復号し、復号ビデオを組み合わせてビデオシーケンスのフレームを再構成することができる。ディスプレイデバイス２０は、復号ビデオシーケンスを受信し、そのビデオシーケンスをユーザに提示する。
【００３３】
ビデオ符号器１２およびビデオ復号器１８は、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３またはＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４，Ｐａｒｔ１０，Advanced Video Coding（ＡＶＣ）など、ビデオ圧縮規格に従って動作することができる。図１には示されていないが、一部の態様では、ビデオ符号器１２およびビデオ復号器１８はそれぞれオーディオ符号器および復号器と統合でき、適切なＭＵＸ−ＤＥＭＵＸユニットまたは他のハードウェアおよびソフトウェアを含み、共通のデータストリームまたは別々のデータストリーム中のオーディオとビデオの両方の符号化を処理することができる。適用可能な場合、ＭＵＸ−ＤＥＭＵＸユニットはＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、またはユーザデータグラムプロトコル（ＵＤＰ）など他のプロトコルに準拠することができる。
【００３４】
Ｈ．２６４／ＭＰＥＧ−４（ＡＶＣ）規格は、合同ビデオチーム（ＪＶＴ）として知られる共同パートナーシップの成果として、ＩＳＯ／ＩＥＣのムービングピクチャエキスパーツグループ（ＭＰＥＧ）とともにＩＴＵ−Ｔのビデオコーディングエキスパーツグループ（ＶＣＥＧ）によって公式化された。一部の態様では、本開示に記載の技法は、一般にＨ．２６４規格に従うデバイスに適用することができる。Ｈ．２６４規格は、ＩＴＵ−Ｔ勧告Ｈ．２６４「Advanced Video Coding for Generic Audiovisual Services」（ＩＴＵ−Ｔ研究グループ、２００５年３月）に記載されており、本明細書ではＨ．２６４規格またはＨ．２６４仕様、あるいはＨ．２６４／ＡＶＣ規格または仕様と称することがある。
【００３５】
合同ビデオチーム（ＪＶＴ）はＨ．２６４／ＭＰＥＧ−４  ＡＶＣへのＳＶＣの拡張の取り組みを続けている。発展しているＳＶＣ拡張の仕様は合同草案（Joint Draft）（ＪＤ）の形式になっている。ＪＶＴによって作成された合同スケーラブルビデオモデル（ＪＳＶＭ）はスケーラブルビデオで使用するツールを実装しており、本開示に記載の様々なコーディングタスクのためにシステム１０内で使用することができる。微細粒度ＳＮＲスケーラビリティ（ＦＧＳ）コーディングに関する詳細情報は、合同草案文献に、特に合同草案６（ＳＶＣ  ＪＤ６）、Thomas Wiegand、Gary Sullivan、Julien Reichel、Heiko SchwarzおよびMathias Wienの「Joint Draft 6: Scalable Video Coding」（ＪＶＴ−Ｓ  ２０１、２００６年４月、ジュネーブ）、ならびに合同草案９（ＳＶＣ  ＪＤ９）、Thomas Wiegand、Gary Sullivan、Julien Reichel、Heiko SchwarzおよびMathias Wienの「Joint Draft 9 of SVC Amendment」（ＪＶＴ−Ｖ  ２０１、２００７年１月、モロッコ、マラケシュ）に出ている。
【００３６】
一部の態様では、ビデオ放送に関して、本開示に記載の技法を、フォワードリンクオンリー（Forward Link Only）（ＦＬＯ）エアインタフェース仕様、Technical Standard TIA-1099（「FLO Specification」）として発表される「Forward Link Only Air Interface Specification for Terrestrial Mobile Multimedia Multicast」を使用して、テレストリアルモバイルマルチメディアマルチキャスト（terrestrial mobile multimedia multicast）（ＴＭ３）システムでリアルタイムビデオサービスを配信するための拡張Ｈ．２６４ビデオコーディングに適用することができる。すなわち、通信チャネル１５は、ＦＬＯ仕様などに従って無線ビデオ情報を放送するために使用される無線情報チャネルを備えることができる。ＦＬＯ仕様は、ビットストリームシンタックスおよび意味を定義し、ＦＬＯエアインタフェースに適したプロセスを復号する例を含む。あるいは、ＤＶＢ−Ｈ（digital video broadcast-handheld）、ＩＳＤＢ−Ｔ（integrated services digital broadcast - terrestrial）またはＤＭＢ（digital media broadcast）など、他の規格に従ってビデオを放送することができる。したがって、ソースデバイス２は、モバイル無線端末、ビデオストリーミングサーバ、またはビデオ放送サーバでよい。しかしながら、本開示に記載の技法は、特定のタイプの放送、マルチキャスト、またはポイントツーポイントシステムに限定されない。放送の場合、ソースデバイス２はいくつかのチャネルのビデオデータを複数の受信デバイスに放送することができ、これらデバイスの各々は図１の受信デバイス６と同様でよい。
【００３７】
ビデオ符号器１２およびビデオ復号器１８はそれぞれ、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、個別ロジック、ソフトウェア、ハードウェア、ファームウェア、またはそれらの任意の組み合わせとして実装できる。ビデオ符号器１２およびビデオ復号器１８のそれぞれを１つまたは複数の符号器または復号器中に含めることができ、そのいずれも複合符号器／復号器（ＣＯＤＥＣ）の一部としてそれぞれモバイルデバイス、加入者デバイス、放送デバイス、サーバなどに統合することができる。さらに、ソースデバイス２および受信デバイス６はそれぞれ、符号化ビデオの送信および受信に適切な変調、復調、周波数変換、フィルタリングおよび増幅器コンポーネントを含むことができ、適用可能な場合は無線通信をサポートするのに十分な無線周波数（ＲＦ）無線コンポーネントおよびアンテナを含むことができる。ただし、説明を容易にするために、図１では、そのようなコンポーネントはソースデバイス２の変調器／送信器１４および受信デバイス６の受信器／復調器１６であるとして要約されている。
【００３８】
ビデオシーケンスは一連のビデオフレームを含む。ビデオ符号器１２は、ビデオデータを符号化するために個々のビデオフレーム内の画素のブロック（または変換係数のブロック）上で動作する。ビデオブロックは、サイズを固定することも変更することもでき、指定のコーディング規格に応じてサイズが異なることがある。ある場合には、各ビデオフレームはコーディング単位であり、他の場合には、各ビデオフレームは区切られて、コーディング単位を形成する一連のスライスを含む。各スライスは一連のマクロブロックを含むことができ、それらはサブブロック中に配置することができる。一例として、ＩＴＵ−Ｔ  Ｈ．２６４規格は、輝度(luma)コンポーネントでは１６×１６、８×８または４×４、および色(chroma)コンポーネントでは８×８など、様々なブロックサイズのイントラ予測、ならびに輝度コンポーネントでは１６×１６、１６×８、８×１６、８×８、８×４、４×８および４×４、および色コンポーネントでは対応するスケーリングされたサイズなど、様々なブロックサイズのインター予測をサポートする。
【００３９】
ビデオブロックは、小さいほどより良い解像度が得られ、より高い詳細レベルを含むビデオフレームの位置に使用することができる。一般に、マクロブロック（ＭＢ）および様々なサブブロックをビデオブロックと考えることができる。さらに、スライスは、ＭＢおよび／またはサブブロックなど一連のビデオブロックであると考えることができる。上述のように、各スライスはビデオフレームの単独で復号可能な単位でよい。
【００４０】
イントラまたはインターベースの予測コーディングに続いて、送信されたビットストリームに追加のコーディング技法を適用することができる。これらの追加のコーディング技法は、（Ｈ．２６４／ＡＶＣで使用される４×４または８×８整数変換または離散コサイン変換（discrete cosine transformation）ＤＣＴなどの）変換技法、および可変長コーディングを含むことができる。変換係数のブロックはビデオブロックと呼ばれることがある。言い換えれば、「ビデオブロック」という用語は、情報の領域に関係なくビデオデータのブロックを指す。したがって、ビデオブロックは画素領域または変換係数領域中にあることができる。ＶＬＣ表選択およびＶＬＣコーディングの適用については、変換係数のブロックに対して本開示で広く説明する。
【００４１】
本開示はリファインメント係数の可変長コーディングのための技法を提供する。ここでも、リファインメント係数は、以前のレイヤ中でゼロでない値を有していた係数を指し、有意係数は、以前のレイヤ中でゼロの値を有していた係数を指す。本開示によれば、符号器１２および復号器１８は、異なるタイプのビデオブロックに対して異なるＶＬＣ表を選択する。例えば、符号器１２および復号器１８は、イントラブロックのリファインメント係数をコーディングするための第１のＶＬＣを選択することができ、インターブロックのリファインメント係数をコーディングするための第２のＶＬＣ表を選択することができる。符号器１２および復号器１８によるＶＬＣ表の選択は、コーディング済みブロックに関連付けられた統計値に基づいてよい。例えば、イントラブロックのＶＬＣ表は、コーディング済みイントラブロックに関連付けられた統計値に基づいて選択でき、インターブロックのＶＬＣ表は、コーディング済みインターブロックに関連付けられた統計値に基づいて選択できる。したがって、符号器１２および復号器１８は、ＳＶＣ方式でエンハンスメントレイヤをコーディングする相補的方法を実行することができる。本明細書で使用されるように、コーディングという用語は一般に、符号化または復号プロセスのいずれかの少なくとも一部を指す。ビデオ符号器１２はデータを符号化し、ビデオ復号器１８はデータを復号する。
【００４２】
ＶＬＣ表自体は、変換係数の異なる組に符号語を割り当てることができる。ゼロの値の係数の組をゼロのランレングスによって表すことができ、表は確度がより高いランレングスをより短いＶＬＣコードに割り当てることができる。同様に、ＶＬＣ表は確度がより低いランレングスをより長いＶＬＣコードに割り当てることができる。したがって、ＶＬＣ表からのコードの選択はコーディング効率を改善することができる。代替として、コーディングされたブロックパターンなど係数の異なるパターンには、異なる可変長符号語が割り当てられることがあり、確度がより高いパターンにはより短い符号語が割り当てられ、確度がより低いパターンにはより長い符号語が割り当てられる。
【００４３】
ＶＬＣ表自体の形成は前のコーディング統計値に基づくこともできるが、たいていの場合、静的なＶＬＣ表が使用される。静的なＶＬＣ表の場合、符号器１２および復号器１８は、単に、イントラブロックのリファインメント係数をコーディングするために可能な表の組から適切なＶＬＣ表を選択し、インターブロックのリファインメント係数をコーディングするために可能な表の組から別の適切なＶＬＣ表を選択する。ＶＬＣ表が静的であるか、動的に形成されるかにかかわらず、必要に応じて、ＶＬＣ表に対する更新を行うことができる。
【００４４】
図２はスケーラブルなビデオビットストリームのベースレイヤ１７およびエンハンスメントレイヤ１８内のビデオフレームを示す図である。上記のように、本開示の技法はエンハンスメントレイヤのデータのコーディングに適用可能である。ベースレイヤ１７は、空間的、時間的またはＳＮＲスケーラビリティの第１のレベルを表す符号化ビデオデータを含むビットストリームを備えることができる。エンハンスメントレイヤ１８は、空間的、時間的および／またはＳＮＲスケーラビリティの第２のレベルを表す符号化ビデオデータを含むビットストリームを備えることができる。単一のエンハンスメントレイヤが示されているが、場合によってはエンハンスメントのいくつかのレイヤが使用できる。エンハンスメントレイヤのビットストリームはベースレイヤ（または複数のエンハンスメントレイヤが存在する場合は以前のエンハンスメントレイヤ）に関連してのみ復号可能である。エンハンスメントレイヤ１８はベースレイヤ１７中の復号ビデオデータへの基準を含む。そのような基準は、最終的な復号ビデオデータを生成するために変換領域または画素領域のいずれかで使用できる。
【００４５】
ベースレイヤ１７およびエンハンスメントレイヤ１８は、イントラフレーム（Ｉ）、インターフレーム（Ｐ）および双方向フレーム（Ｂ）を含むことができる。イントラフレームは、すべてのイントラコーディングされたビデオブロックを含むことができる。ＩフレームおよびＰフレームは、少なくともいくつかのインターコーディングされたビデオブロック（インターブロック）を含むことができるが、いくつかのイントラコーディングされたブロック（イントラブロック）も含むことができる。エンハンスメントレイヤ１７の異なるフレームは、ベースレイヤ１７中のビデオブロックのすべてを含まなくてもよい。エンハンスメントレイヤ１８中のＰフレームはベースレイヤ１７中のＰフレームに対する基準を利用する。エンハンスメントレイヤ１８およびベースレイヤ１７中のフレームを復号することによって、ビデオ復号器は復号ビデオのビデオ品質を高めることが可能である。例えば、ベースレイヤ１７は、最小のフレームレート、例えば１５フレーム毎秒で符号化されたビデオを含むことができるが、エンハンスメントレイヤ１８は、より高いフレームレート、例えば３０フレーム毎秒で符号化されたビデオを含むことができる。異なる品質レベルで符号化することをサポートするために、ベースレイヤ１７およびエンハンスメントレイヤ１８はそれぞれ、より高い量子化パラメータ（ＱＰ）およびより低いＱＰで符号化できる。さらに、ベースレイヤ１７はエンハンスメントレイヤ１８の送信よりも信頼できる方法で送信できる。一例として、変調信号の最も信頼できる部分はベースレイヤ１７を送信するために使用でき、変調信号のあまり信頼できない部分はエンハンスメントレイヤ１８を送信するために使用できる。ベースレイヤおよびエンハンスメントレイヤが多くの異なる方法で定義できるように、図２の図は例示的なものにすぎない。
【００４６】
図３は、本開示に合致するデータを符号化するＶＬＣユニット４６を含むビデオ符号器５０の例を示すブロック図である。図３のビデオ符号器５０は図１のソースデバイス２のエンハンスメントレイヤ符号器２４に対応することがある。すなわち、話を簡単にするために、図３にはベースレイヤ符号化コンポーネントは示していない。したがって、ビデオ符号器５０はエンハンスメントレイヤ符号器と考えることができる。代替として、ビデオ符号器５０の図示のコンポーネントは、例えばベースレイヤおよびエンハンスメントレイヤのスケーラブルビデオコーディングをサポートするピラミッド形の符号器設計において、ベースレイヤ符号化モジュールまたはユニットと組み合わせて実装することもできる。
【００４７】
ビデオ符号器５０はビデオフレーム内のブロックのイントラコーディングおよびインターコーディングを実行することができる。イントラコーディングは空間的予測を利用して、所与のビデオフレーム内のビデオの空間的冗長性を低減または除去する。インターコーディングは時間的予測を利用して、ビデオシーケンスの隣接フレーム内のビデオの時間的冗長性を低減または除去する。インターコーディングの場合、ビデオ符号器５０は動き推定を実行して、２つ以上の隣接フレーム間でビデオブロックを一致させる動作を追跡する。イントラコーディングの場合、空間的予測を使用して、コーディングされるブロックに最も近接して一致する、フレーム内の他のブロックを特定する。図３には、イントラコーディング、空間的予測コンポーネントは示していない。
【００４８】
図３に示すように、ビデオ符号器５０は、符号化すべきビデオフレーム内の現行ビデオブロック３１（例えば、エンハンスメントレイヤのビデオブロック）を受信する。図３の実施例では、ビデオ符号器５０は、動き推定ユニット３３、基準フレームストア３５、動き補償ユニット３７、ブロック変換ユニット３９、量子化ユニット４１、逆量子化ユニット４２、逆変換ユニット４４、およびＶＬＣユニット４６を含む。ブロック境界をフィルタリングしてブロッキネスアーチファクトを除去するために、デブロッキングフィルタ（図示せず）を含めることもできる。ビデオ符号器５０はまた、加算器４８および加算器５１を含む。図３は、ビデオブロックをインターコーディングするためのビデオ符号器５０の時間的予測コンポーネントを示す。説明を容易にするために図３には示していないが、ビデオ符号器５０は、いくつかのビデオブロックをイントラコーディングするための空間的予測コンポーネントを含むこともできる。ただし、空間的予測コンポーネントは、通常、ベースレイヤのコーディングのためにのみ使用される。
【００４９】
動き推定ユニット３３は、ビデオブロック３１を１つまたは複数の隣接ビデオフレーム中のブロックと比較して、１つまたは複数の動きベクトルを生成する。１つまたは複数の隣接フレームは基準フレームストア３５から取り出すことができ、基準フレームストアは、以前に符号化されたブロックから再構成されたビデオブロックを格納するために任意のタイプのメモリまたはデータ記憶装置を備えることができる。動き推定は、可変サイズ、例えば１６×１６、１６×８、８×１６、８×８またはより小さいブロックサイズのブロックに対して実行できる。動き推定ユニット３３は、例えばレート歪モデルに基づいて現行ビデオブロック３１に最も近接して一致する隣接フレーム中のブロックを特定し、ブロック間の変位を決定する。これに基づいて、動き推定ユニット３３は、現行ビデオブロック３１と現行ビデオブロック３１をコーディングするために使用される予測ブロックとの間の変位の大きさおよび軌道を示す１つの動きベクトル（ＭＶ）（または双方向予測の場合は複数のＭＶ）を生成する。
【００５０】
動きベクトルは２分の１または４分の１の画素精度、あるいはさらに微細な精度を有することができ、ビデオ符号器５０が整数画素位置よりも高い精度で動きを追跡し、より良好な予測ブロックを得ることを可能にする。微小な画素値をもつ動きベクトルが使用される場合、補間演算が動き補償ユニット３７で実行される。動き推定ユニット３３は、レート歪モデルを使用してビデオブロックに対する最善の動きベクトルを特定することができる。得られた動きベクトルを使用して、動き補償ユニット３７は動き補償によって予測ビデオブロックを形成する。
【００５１】
ビデオ符号器５０は、加算器４８で元の現行ビデオブロック３１から、動き補償ユニット３７によって生成された予測ビデオブロックを減算することによって残差ビデオブロックを形成する。ブロック変換ユニット３９は、残差ブロックに離散コサイン変換（ＤＣＴ）など変換を適用し、残差変換ブロック係数を生成する。量子化ユニット４１は、ビットレートをさらに低減するために残差変換ブロック係数を量子化する。加算器４９Ａは、例えばベースレイヤ符号器（図示せず）からベースレイヤ係数情報を受信し、ブロック変換ユニット３９と量子化ユニット４１との間に配置されており、このベースレイヤ係数情報をエンハンスメントレイヤのコーディングに供給する。特に、加算器４９Ａはブロック変換ユニット３９の出力からベースレイヤ係数情報を減算する。同様に、逆変換ユニット４４と逆量子化ユニット４２との間に配置されている加算器４９Ｂもベースレイヤ係数情報をベースレイヤ符号器（図示せず）から受信する。加算器４９Ｂはベースレイヤ係数情報を逆量子化ユニット４２の出力に加算し戻す。
【００５２】
空間的予測コーディングは時間的予測コーディングに非常に類似して動作する。しかしながら、時間的予測コーディングが隣接フレーム（または他のコーディング単位）のブロックを利用してコーディングを実行するのに対して、空間的予測は共通のフレーム（他のコーディング単位）内のブロックを利用してコーディングを実行する。空間的予測コーディングはイントラブロックをコーディングするが、時間的予測コーディングはインターブロックをコーディングする。ここでも、話を簡単にするために、図３には空間的予測コンポーネントは示していない。
【００５３】
ＶＬＣユニット４６は、可変長コーディング方法によって量子化された変換係数をコーディングして、送信される情報のビットレートをいっそうさらに低減する。特に、ＶＬＣユニット４６は本開示の技法を適用して、エンハンスメントレイヤのリファインメント係数をコーディングする。ＶＬＣユニット４６は、係数の組を可変長符号語にマッピングするＶＬＣ表を含むことができる。
【００５４】
ＶＬＣユニット４６によるＶＬＣ表の選択は、コーディング済みフレーム用に集められた情報に基づいて実行される。さらに、異なるタイプのビデオブロック、例えばイントラブロックおよびインターブロックに対してＶＬＣ表が選択される。ＶＬＣユニット４６は、コーディング単位当たり１回、例えばフレーム当たり１回、ビデオ情報のスライス当たり１回、またはフレームのＦＧＳレイヤ当たり１回、ＶＬＣ表を選択することができる。異なるタイプのビデオブロックのＶＬＣ表は、コーディング済みブロックに関連付けられた統計値に基づいて選択できる。例えば、ＶＬＣユニット４６は、コーディング済みイントラブロックに関連付けられた統計値に基づいてイントラブロックのＶＬＣ表を選択することができ、ＶＬＣユニット４６は、コーディング済みインターブロックに関連付けられた統計値に基づいてインターブロックのＶＬＣ表を選択することができる。この場合、コーディング済みブロックに関連付けられた統計値は、そのようなコーディング済みブロックのゼロでない係数の平均数を備えることができる。
【００５５】
可変長コーディングの後、符号化ビデオは別のデバイスに送信できる。さらに、逆量子化ユニット４２および逆変換ユニット４４はそれぞれ、逆量子化および逆変換を適用して残差ブロックを再構成する。加算器５１は、動き補償ユニット３７によって生成される動き補償された予測ブロックに再構成された残差ブロックを加算して、基準フレームストア３５に格納するための再構成されたビデオブロックを生成する。再構成されたビデオブロックは、後続のビデオフレーム中のブロックを符号化するために動き推定ユニット３３および動き補償ユニット３７によって使用される。
【００５６】
図４は、図１のビデオ復号器１８または別のデバイスの復号器に対応することができるビデオ復号器６０の例を示すブロック図である。ビデオ復号器６０はエンハンスメントレイヤ情報用のＶＬＣユニット５２Ａを含み、ＶＬＣユニット５２Ａは図３のＶＬＣユニット４６の相補的な機能を実行する。すなわち、ＶＬＣユニット４６と同様に、ＶＬＣユニット５２Ａはエンハンスメントレイヤのリファインメント係数をコーディングする。
【００５７】
ビデオ復号器６０はまた、ベースレイヤ情報用に別のＶＬＣユニット５２Ｂを含むことができる。イントラ予測ユニット５５はベースレイヤのビデオブロックの空間復号を任意で実行することができ、イントラ予測ユニット５５の出力は加算器５３に供給することができる。エンハンスメントレイヤパスは逆量子化ユニット５８Ａを含むことができ、ベースレイヤパスは逆量子化ユニット５６Ｂを含むことができる。ベースレイヤパス中およびエンハンスメントレイヤパス中の情報は加算器５７によって組み合わせることができる。
【００５８】
ビデオ復号器６０はビデオフレーム内のブロックのイントラ復号およびインター復号を実行することができる。図４の例では、ビデオ復号器６０は（上述の）ＶＬＣユニット５２Ａおよび５２Ｂ、動き補償ユニット５４、逆量子化ユニット５６Ａおよび５６Ｂ、逆変換ユニット５８、ならびに基準フレームストア６２を含む。ビデオ復号器６０は加算器６４も含む。任意で、ビデオ復号器６０は、加算器６４の出力をフィルタリングするデブロッキングフィルタ（図示せず）を含むこともできる。ここでも、加算器５７はベースレイヤパス中およびエンハンスメントレイヤパス中の情報を組み合わせ、イントラ予測ユニット５５および加算器５３はベースレイヤのビデオブロックの空間復号を可能にする。
【００５９】
本開示によれば、ＶＬＣユニット５２Ａは、符号化されたビデオビットストリームを受信し、本開示に記載のＶＬＣ技法を適用する。特に、リファインメント係数の場合、ＶＬＣユニット５２Ａは、コーディング済みフレーム用に集められた情報に基づいて、それぞれのビデオブロックのタイプに対してＶＬＣ表を選択することができる。ＶＬＣユニット５２Ａは、コーディング単位当たり１回、例えばフレーム当たり１回、ビデオ情報のスライス当たり１回、フレームのＦＧＳレイヤ当たり１回、ＶＬＣ表を選択することができる。異なるタイプのビデオブロックのＶＬＣ表は、コーディング済みブロックに関連付けられた統計値に基づいて選択できる。例えば、ＶＬＣユニット５２Ａは、コーディング済みイントラブロックに関連付けられた統計値に基づいてイントラブロックのＶＬＣ表を選択することができ、ＶＬＣユニット５２Ａは、コーディング済みインターブロックに関連付けられた統計値に基づいてインターブロックのＶＬＣ表を選択することができる。
【００６０】
ＶＬＣユニット５２Ａによって復号が実行された後、動き補償ユニット５４は、動きベクトルと、基準フレームストア６２からの１つまたは複数の再構成された基準フレームとを受信する。逆量子化ユニット５６Ａは、量子化されたブロック係数を逆量子化(inverse quantize)、すなわち逆量子化（de-quantize）する。加算器５７によるエンハンスメントレイヤ情報およびベースレイヤ情報の合成の後、逆変換ユニット５８は、残差ブロックを生成するために逆変換、例えば逆ＤＣＴを係数に適用する。動き補償ユニット５４は、復号化ブロックを形成するために加算器６４によって残差ブロックと加算される動き補償ブロックを生成する。必要に応じて、ブロッキネスアーチファクトを除去するために、デブロッキングフィルタを適用して、復号化ブロックをフィルタリングすることもできる。次いで、フィルタリングされたブロックは基準フレームストア６２中に配置され、基準フレームストア６２は動き補償からの基準ブロックを供給し、ドライブディスプレイデバイス（図１のデバイス２０など）に対して復号化ビデオも生成する。
【００６１】
図５は、図３に示すＶＬＣユニット４６に対応することができる例示的なＶＬＣユニット４６を示すブロック図である。ＶＬＣユニット４６は、符号化モジュール７２、統計モジュール７４、表選択モジュール７６およびＶＬＣ表７８を含む。ＶＬＣ表７８は一般に、任意の位置に、例えばローカルにまたはオフチップで別のメモリ位置に格納できるテーブルを指す。ＶＬＣ表７８は、必要に応じて、定期的に更新することができる。
【００６２】
符号化モジュール７２は、別々のコーディングパスにおいてリファインメント係数および有意係数を符号化する。ＶＬＣユニット４６による、異なるビデオブロックに関連付けられた係数を符号化するための表の選択は、コーディング済みフレーム用に集められた情報に基づいて実行することができる。例えば、統計モジュール７４は、以前に符号化されたフレームの統計分析を実行して、表選択モジュール７６による表選択を可能にすることができる。
【００６３】
統計モジュール７４は、第１のタイプのビデオブロック（イントラブロックなど）に関連付けられた第１の統計値を決定し、第２のタイプのビデオブロック（インターブロックなど）に関連付けられた第２の統計値を決定する。表選択モジュール７６は、第１の統計値に基づいて第１のタイプのビデオブロックのコーディングに使用される複数のＶＬＣ表７８から第１のＶＬＣ表を選択する。さらに、表選択モジュール７６は、第２の統計値に基づいて第２のタイプのビデオブロックのコーディングに使用される複数のＶＬＣ表７８から第２のＶＬＣ表を選択する。符号化モジュール７２は、第１のＶＬＣ表に基づいて第１のタイプのビデオブロックを符号化し、第２のＶＬＣ表に基づいて第２のタイプのビデオブロックを符号化する。
【００６４】
本明細書に記載の技法はリファインメント係数に対して実行することができ、リファインメント係数は有意係数とは別の符号化パスでコーディングすることができる。リファインメント係数は値を−１、０および１に制限することができ、２ビットの情報によってコーディングすることができる。第１のビットは係数が０に等しいか否かを示すことができ、第２のビットは、リファインメント係数の符号（ｓｎと示される）が以前のレイヤの対応する係数の符号（ｓｎ−１と示される）と同じ（ｃｏｅｆｆ＿ｒｅｆ＿ｄｉｒ＿ｆｌａｇ＝０）か、異なる（ｃｏｅｆｆ＿ｒｅｆ＿ｄｉｒ＿ｆｌａｇ＝１）かを示すことができる。以前のレイヤはｓｎ−１と示される。現在の係数の符号が以前のレイヤの係数の符号と同じ場合は、ｃｏｅｆｆ＿ｒｅｆ＿ｄｉｒ＿ｆｌａｇ＝０、現在の係数の符号が以前のレイヤの係数の符号と異なる場合は、ｃｏｅｆｆ＿ｒｅｆ＿ｄｉｒ＿ｆｌａｇ＝１になる。２つのリファインメントビットは、以下の表１のように３つのリファインメントシンボルのアルファベット中に組み込むことができる。
【表１】
2010516116.tif 000003
【００６５】
代替として、別の方式を使用して、本開示の技法から逸脱することなく、リファインメント係数をコーディングすることもできる。
【００６６】
ＶＬＣ表７８は係数の異なる組にマッピングされる可変長符号語を含むことができ、可変長符号語はシンボル、フラグまたは他のタイプのビットによって定義することができる。ＶＬＣ表７８は、必要に応じて、更新することができる。任意の数の表をＶＬＣ表８８に含めることができる。場合によっては、２つの表が使用されるが、より多くの表を含めることもできる。いずれの場合も、符号化モジュール７２は、異なるタイプのビデオブロックのＶＬＣ表の異なる表にアクセスすることができる。統計モジュール７４および表選択モジュール７６は、コーディングされているビデオブロックのタイプごとに、どのＶＬＣ表を使用すべきかを判定する。
【００６７】
表２は、リファインメント係数をコーディングするために使用することができるＶＬＣ表の一例を示す。
【表２】
2010516116.tif 000004
【００６８】
表２に示すように、（表１で定義したように）リファインメント係数の異なる組は、異なる可変長符号語にマッピングすることができる。表２には、異なる符号語に関連付けられたそれぞれのビット長も記載されている。異なるＶＬＣ表では、リファインメント係数の異なる組への符号語マッピングが異なる場合がある。したがって、適切な表を選択することによって、コーディング効率を達成することができる。本開示によれば、コーディング単位（例えば、各フレーム、スライスまたはＦＧＳレイヤ）ごとに、ＶＬＣユニット４６の表選択モジュール７６は、イントラブロックに対して第１のＶＬＣ表を選択し、インターブロックに対して第２のＶＬＣ表を選択する。表の選択は、コーディング済みイントラブロックおよびコーディング済みインターブロックに関連付けられた統計値に基づくことができる。次いでＶＬＣユニット４６の符号化モジュール７２は、ＶＬＣプロセスにおいてその選択された表を使用する。
【００６９】
ビデオブロックのタイプごとの統計は統計モジュール７４によって累積および分析することができる。一例として、ビデオブロックのタイプごとの統計値は、同符号値を有していたコーディング済みブロックにおけるリファインメント係数の個数の、逆符号値を有していたコーディング済みブロックにおけるリファインメント係数の個数に対する比を備えることができる。このビデオブロックのタイプごとの比に基づいて、表選択モジュール７６は、所与のフレームのブロックのそのタイプに関連付けられたリファインメント係数をコーディングするためのＶＬＣ表を選択することができる。次のフレーム（または他のコーディング単位）に遭遇したとき、ＶＬＣユニット４６は、ブロックタイプごとに比を再計算して、そのフレーム（または他のコーディング単位）に対するＶＬＣ表選択を可能にすることができる。
【００７０】
表１からのリファインメントシンボル１は、リファインメントシンボルが以前のレイヤ（またはベースレイヤ）のシンボルに対して同符号値を有するシナリオに対応する。表１からのリファインメントシンボル２は、リファインメントシンボルが以前のレイヤ（またはベースレイヤ）の記号に対して逆符号値を有するシナリオに対応する。言い換えれば、以前のレイヤの対応する係数の符号に対して、シンボル１は「同符号のままにする」ことを意味し、シンボル２は「符号を逆にする」ことを意味する。
【００７１】
ＶＬＣ表選択がｒｅｆ＿ｓｙｍｂｏｌの１および２の比に基づく場合、ＳＶＣにおけるコーディング効率を改善することができる。ｓ（１）およびｓ（２）はそれぞれ、コーディングプロセスで集められたリファインメントシンボル１および２の個数を示すものとする。ｓ（１）およびｓ（２）の値はフレームのスライディングウィンドウによって定義することができ、またはフルビデオシーケンスにわたって累積することができる。いずれの場合も、比ｒはいくつかの方法で計算することができる。例えば、比ｒ＝（ｓｍａｘ−ｓｍｉｎ）／ｓｍａｘは、ｓｍａｘ＝ｍａｘ（ｓ（１），ｓ（２））およびｓｍｉｎ＝ｍｉｎ（ｓ（１），ｓ（２））として計算することができる。代替として、比ｒ＝ｓ（１）／（ｓ（１）＋ｓ（２））を使用することもできる。これらの各場合において、ｒの量子化された値ごとに、値ＲＱはfloor（ｍ＊ｒ）に等しいと定義することができ、ただしｍは１よりも大きい数である。比ｒが値ＲＱよりも上か下かに応じて、異なるＶＬＣ表を割り当てることができる。
【００７２】
図６は、図４に示すＶＬＣユニット５２Ａに対応することができる例示的なＶＬＣユニット５２Ａを示すブロック図である。ＶＬＣユニット５２Ａは、ＶＬＣユニット４６によって実行される符号化に対して、相補的な復号化機能を実行する。したがって、ＶＬＣユニット４６は量子化された残差係数を受信し、ビットストリームを生成するが、ＶＬＣユニット５２Ａはビットストリームを受信し、量子化された残差係数を生成する。ＶＬＣユニット５２Ａは、復号モジュール８２、統計モジュール８４、表選択モジュール８６および１組のＶＬＣ表８８を含む。ユニット４６と同様に、ユニット５２ＡのＶＬＣ表８８は一般に、任意の位置に、例えばローカルにまたはオフチップで別のメモリ位置に記憶できるテーブルを指す。ＶＬＣ表８８は、必要に応じて、定期的に更新することができる。任意の数の表をＶＬＣ表８８に含めることができる。場合によっては、２つの表が使用されるが、より多くの表を含めることもできる。
【００７３】
ＶＬＣ復号ユニット８２は有意係数およびリファインメント係数に対して別々の復号パスを実行することができる。本開示の技法は、コーディングまたはリファインメント係数のみに適用できることがあり、あるいはリファインメント係数および有意係数の両方に使用することもできる。ＶＬＣユニット５２Ａによって実行される復号は、ＶＬＣユニット４６によって実行される符号化と相補的である。
【００７４】
ＶＬＣユニット５２Ａによる、異なるビデオブロックに関連付けられた係数を符号化するための表選択は、例えばコーディング済みフレームから、コーディング済みブロック用に集められた情報に基づいて実行することができる。例えば、統計モジュール８４は、以前に復号されたフレームのブロックの統計分析を実行して、表選択モジュール８６による表選択を可能にすることができる。特に、統計モジュール８４は、第１のタイプのビデオブロック（イントラブロックなど）に関連付けられた第１の統計値を決定し、第２のタイプのビデオブロック（インターブロックなど）に関連付けられた第２の統計値を決定する。表選択モジュール８６は、第１の統計値に基づいて第１のタイプのビデオブロックのコーディングに使用される複数のＶＬＣ表８８から第１のＶＬＣ表を選択する。さらに、表選択モジュール８６は、第２の統計値に基づいて第２のタイプのビデオブロックのコーディングに使用される複数のＶＬＣ表８８から第２のＶＬＣ表を選択する。復号モジュール８２は、第１のＶＬＣ表に基づいて第１のタイプのビデオブロックを復号し、第２のＶＬＣ表に基づいて第２のタイプのビデオブロックを復号する。
【００７５】
上記の表２はＶＬＣ表８８の１つと見なすこともできる。ただし、ＶＬＣ表７８（図５）は係数の組を可変長符号語にマッピングするが、ＶＬＣ表８８（図６）は逆に可変長符号語を係数の組にマッピングする。この方法では、ＶＬＣユニット５２Ａによって実行される復号は、ＶＬＣユニット４６によって実行される符号化と相補的であると見なすことができる。
【００７６】
図７は本開示に合致するエンハンスメントレイヤの係数（例えば、一般にリファインメント係数）の可変長コーディング用のコーディング技法を示す流れ図である。図７のコーディングプロセスは符号化と復号の両方に適用する。図７に示すように、統計モジュール７４、８４は、コーディング済みイントラブロックの統計値を決定する（９１）。例えば、統計モジュール７４、８４はコーディング済みイントラブロックの、逆符号値を有するリファインメントシンボルに対する同符号値を有するリファインメントシンボルの比を計算することができる。さらに、統計モジュール７４、８４は、例えばコーディング済みインターブロックの、逆符号値を有するリファインメントシンボルに対する同符号値を有するリファインメントシンボルの比を計算することによって、コーディング済みインターブロックの統計値を決定することができる（９２）。
【００７７】
表選択モジュール７６、８６は、コーディング済みイントラブロックの統計値に基づいて、イントラブロックのためのコーディング表を選択する（９３）。例えば、イントラブロックのためのコーディング表は、イントラブロックに関連付けられた比の値に基づいて選択できる。さらに、表選択モジュール７６、８６は、コーディング済みインターブロックの統計値に基づいてインターブロックのためのコーディング表を選択する（９４）。インターブロックのためのコーディング表は、インターブロックに関連付けられた比の値に基づいて選択できる。
【００７８】
コーディングモジュール８２、８４は、イントラブロックに対して選択されたコーディング表を使用してイントラブロックをコーディングし（９５）、インターブロックに対して選択されたコーディング表を使用してインターブロックをコーディングする（９６）。特に、コーディングモジュール８２、８４は、異なるブロックタイプに対して選択されたコーディング表を使用して表引きを実行する。このプロセスはコーディング単位ごとに繰り返すことができる（９７）。コーディング単位は、ビデオフレーム、ビデオフレームのスライス、ＦＧＳレイヤなどとすることができる。
【００７９】
本明細書に記載の技法は、ハードウェア、ソフトウェア、ファームウェア、またはその任意の組み合わせで実装できる。モジュールまたはコンポーネントとして説明される特徴はどれも、一体化された論理デバイスに一緒に実装でき、または個別であるが相互運用可能な論理デバイスとして別々に実装できる。ソフトウェアで実装する場合、本技法は、実行されると、上記の方法のうちの１つまたは複数を実行する命令を備えるコンピュータ可読媒体によって少なくとも一部が実現できる。コンピュータ可読媒体は、パッケージ材料を含むことがあるコンピュータプログラム製品の一部をなすことができる。コンピュータ可読媒体は、同期ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）などのランダムアクセスメモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）、電気消去可能プログラマブル読出し専用メモリ（ＥＥＰＲＯＭ）、ＦＬＡＳＨメモリ、磁気データ記憶媒体または光学データ記憶媒体などを備えることができる。本技法は、さらに、または代替的に、命令またはデータ構造の形態でコードを搬送または伝達し、コンピュータによってアクセス、読み込み、および／または実行できるコンピュータ可読通信媒体によって、少なくとも一部が実現できる。
【００８０】
コードは、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、または他の均等な集積または個別の論理回路など、１つまたは複数のプロセッサによって実行することができる。したがって、本明細書で使用される「プロセッサ」という用語は、本明細書に記載の技法の実装に好適な前述の構造または他の構造のいずれかを指すことができる。さらに、一部の態様では、本明細書に記載の機能を、符号化および復号のために構成された、または複合ビデオ符号器復号器（ＣＯＤＥＣ）に組み込まれた専用のソフトウェアモジュールまたはハードウェアモジュール内に設けることができる。
【００８１】
ハードウェアで実装する場合、本開示は、集積回路、チップセット特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、論理回路、またはそれらの様々な組み合わせなど、本明細書に記載の１つまたは複数の技法を実施するように構成された回路を対象とすることができる。
【００８２】
本発明の様々な実施形態について説明した。これらおよび他の実施形態は以下の特許請求の範囲の範囲内にある。
【図１】
2010516116.tif 000005
【図２】
2010516116.tif 000006
【図３】
2010516116.tif 000007
【図４】
2010516116.tif 000008
【図５】
2010516116.tif 000009
【図６】
2010516116.tif 000010
【図７】
2010516116.tif 000011
【国際調査報告】
2010516116.tif 000012
2010516116.tif 000013