(57)【特許請求の範囲】
【請求項１】
ビデオデータのルーマ成分について変換係数の複数のサブアレイを取得することと、
前記ビデオデータのクロマ成分についての変換係数の複数のより小さいサブアレイを、前記複数のより小さいサブアレイの各々が前記ルーマ成分の前記サブアレイの各々と同じアスペクト比を有するように、かつ、前記複数のより小さいサブアレイの各々が前記ルーマ成分についての前記複数のサブアレイの各々の次元数をよりも小さい次元数を有するように、取得することと、
前記ルーマ成分についての変換係数の前記複数のサブアレイの各々に逆変換を実行して、前記ルーマ成分について複数の残差サンプル値を生成することと、
前記クロマ成分についての変換係数の前記複数のより小さいサブアレイの各々に前記逆変換を実行して、前記クロマ成分について複数の残差サンプル値を生成することと、
前記ルーマ成分についての前記複数の残差サンプル値を結合して、前記ビデオデータの前記ルーマ成分についての残差サンプル値のＮ×Ｎアレイを取得することと、
前記クロマ成分についての前記複数の残差サンプル値を結合して、前記クロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成することと
を備える、ビデオデータを復号するための方法。
【請求項２】
前記ルーマ成分についての変換係数の前記複数のサブアレイに含まれる各サブアレイが、前記ルーマ成分についての変換係数のそれぞれのＮ／２×Ｎ／２サブアレイを備え、
前記クロマ成分についての変換係数の前記より小さいサブアレイの各々が、前記クロマ成分についての変換係数のそれぞれのＮ／４×Ｎ／４アレイを備える、請求項１に記載の方法。
【請求項３】
Ｎが１６に等しく、ビデオデータの前記ルーマ成分についての変換係数の前記複数のＮ／２×Ｎ／２サブアレイが４個のサブアレイを含み、前記クロマ成分の変換係数の前記複数の対応するＮ／４×Ｎ／４サブアレイが８個のサブアレイを含む、請求項２に記載の方法。
【請求項４】
前記ルーマ成分について変換係数の前記複数のサブアレイを取得することは、前記ルーマ成分について変換係数の４個のＮ×Ｎ／４サブアレイを取得することを含み、
前記クロマ成分について変換係数の前記複数のより小さいサブアレイを取得することは、前記クロマ成分について変換係数の８個の対応するＮ／２×Ｎ／８サブアレイを取得することを含む、請求項１に記載の方法。
【請求項５】
Ｎが３２に等しい、請求項４に記載の方法。
【請求項６】
ビデオ復号デバイスであって、
ビデオデータを記憶するように構成されたメモリと、
１つまたは複数のプロセッサと、
を備え、前記１つまたは複数のプロセッサは、
前記ビデオデータのルーマ成分について変換係数の複数のサブアレイを取得することと、
前記ビデオデータのクロマ成分についての変換係数の複数のより小さいサブアレイを、前記複数のより小さいサブアレイの各々が前記ルーマ成分の前記サブアレイの各々と同じアスペクト比を有するように、かつ、前記複数のより小さいサブアレイの各々が前記ルーマ成分についての前記複数のサブアレイの各々の次元数をよりも小さい次元数を有するように、取得することと、
前記ルーマ成分についての変換係数の前記複数のサブアレイの各々に逆変換を実行して、前記ルーマ成分について複数の残差サンプル値を生成することと、
前記クロマ成分についての変換係数の前記複数のより小さいサブアレイの各々に前記逆変換を実行して、前記クロマ成分について複数の残差サンプル値を生成することと、
前記ルーマ成分についての前記複数の残差サンプル値を結合して、前記ビデオデータの前記ルーマ成分について残差サンプル値のＮ×Ｎアレイを取得することと、
前記クロマ成分についての前記複数の残差サンプル値を結合して、前記クロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成することと、
を行うように構成された、ビデオ復号デバイス。
【請求項７】
前記ルーマ成分についての変換係数の前記複数のサブアレイに含まれる各サブアレイが前記ルーマ成分についての変換係数のそれぞれのＮ／２×Ｎ／２サブアレイを備え、
前記クロマ成分についての変換係数の前記より小さいサブアレイの各々は、前記クロマ成分についての変換係数のそれぞれのＮ／４×Ｎ／４アレイを備える、請求項６に記載のビデオ復号デバイス。
【請求項８】
Ｎが１６に等しく、ビデオデータの前記ルーマ成分についての変換係数の前記複数のＮ／２×Ｎ／２サブアレイが４個のサブアレイを含み、前記クロマ成分の変換係数の前記複数の対応するＮ／４×Ｎ／４サブアレイが８個のサブアレイを含む、請求項７に記載のビデオ復号デバイス。
【請求項９】
前記ルーマ成分について変換係数の前記複数のサブアレイを取得するために、前記１つまたは複数のプロセッサは、前記ルーマ成分について変換係数の４個のＮ×Ｎ／４サブアレイを取得するように構成され、
前記クロマ成分について変換係数の前記複数のより小さいサブアレイを取得するために、前記１つまたは複数のプロセッサは、前記クロマ成分について変換係数の８個の対応するＮ／２×Ｎ／８サブアレイを取得するように構成される、請求項６に記載のビデオ復号デバイス。
【請求項１０】
Ｎが３２に等しい、請求項９に記載のビデオ復号デバイス。
【請求項１１】
ビデオデータのルーマ成分について残差値のＮ×Ｎアレイを取得することと、
ビデオデータのクロマ成分について残差値の対応するＮ／２×Ｎアレイを取得することと、
前記クロマ成分についての残差値の前記Ｎ／２×Ｎアレイを、クロマ残差値の２個のＮ／２×Ｎ／２サブアレイにパーティショニングすることと、
前記ルーマ成分についての残差値の前記Ｎ×Ｎアレイを複数のサブアレイにパーティショニングすることと、
前記クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々を、前記ルーマ成分についての対応するサブアレイと同じアスペクト比を有するように、複数のより小さなサブアレイにさらにパーティショニングすることと、
前記クロマ残差値の前記複数のより小さなサブアレイの各々に変換を実行して、前記クロマ成分について変換係数を生成することと
を備える、ビデオデータを符号化するための方法。
【請求項１２】
前記ルーマ成分について残差値の前記Ｎ×Ｎアレイをルーマ残差値の４個のサブアレイにパーティショニングすることと、前記ルーマ成分についての残差値の前記Ｎ×Ｎアレイに適用された前記パーティショニングに少なくとも部分的に基づいて、クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々をクロマ残差値の４個のサブアレイにさらにパーティショニングすることとをさらに備える、請求項１１に記載の方法。
【請求項１３】
前記ルーマ成分についての残差値の前記Ｎ×Ｎアレイをルーマ残差値の４個のサブアレイにパーティショニングすることが、ルーマ残差値の４個の８×８サブアレイをもたらし、クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々をクロマ残差値の４個のサブアレイにさらにパーティショニングすることが、クロマ残差値の８個の４×４サブアレイをもたらす、請求項１２に記載の方法。
【請求項１４】
前記ルーマ成分についての残差値の前記Ｎ×Ｎアレイをルーマ残差値の４個のサブアレイにパーティショニングすることが、４対１のアスペクト比を有するルーマ残差値の４個のサブアレイをもたらし、前記ルーマ成分についての残差値の前記Ｎ×Ｎアレイに適用された前記パーティショニングに少なくとも部分的に基づいて、クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々をクロマ残差値の４個のサブアレイにさらにパーティショニングすることが、４対１のアスペクト比を有するクロマ残差値の８個のサブアレイをもたらす、請求項１２に記載の方法。
【請求項１５】
前記クロマ成分についての残差値の前記Ｎ／２×Ｎアレイをクロマ残差値の２個のＮ／２×Ｎ／２サブアレイにパーティショニングすることが、前記２個のＮ／２×Ｎ／２サブアレイが最小変換ユニットサイズ未満である場合、残差値の前記Ｎ／２×Ｎアレイをクロマ残差値の２個のＮ／２×Ｎ／２サブアレイにパーティショニングしないと決定することを含む、請求項１１に記載の方法。
【請求項１６】
ビデオデータのルーマ成分について残差値のＮ×Ｎアレイを取得することと、
ビデオデータのクロマ成分について残差値の対応するＮ／２×Ｎアレイを取得することと、
前記クロマ成分についての残差値の前記Ｎ／２×Ｎアレイを、クロマ残差値の２個のＮ／２×Ｎ／２サブアレイにパーティショニングすることと、
前記ルーマ成分についての残差値の前記Ｎ×Ｎアレイを複数のサブアレイにパーティショニングすることと、
前記クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々を、前記ルーマ成分についての対応するサブアレイと同じアスペクト比を有するように、複数のより小さなサブアレイにさらにパーティショニングすることと、
前記クロマ残差値の前記複数のより小さなサブアレイの各々に変換を実行して、前記クロマ成分について変換係数を生成することと
を行うように構成された１つまたは複数のプロセッサを備える、ビデオ符号化デバイス。
【請求項１７】
前記１つまたは複数のプロセッサが、前記ルーマ成分についての残差値の前記Ｎ×Ｎアレイをルーマ残差値の４個のサブアレイにパーティショニングすることと、前記ルーマ成分についての残差値の前記Ｎ×Ｎアレイに適用された前記パーティショニングに少なくとも部分的に基づいて、クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々をクロマ残差値の４個のサブアレイにさらにパーティショニングすることとを行うようにさらに構成された、請求項１６に記載のデバイス。
【請求項１８】
前記ルーマ成分について残差値の前記Ｎ×Ｎアレイをルーマ残差値の４個のサブアレイにパーティショニングすることが、ルーマ残差値の４個の８×８サブアレイをもたらし、クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々をクロマ残差値の４個のサブアレイにさらにパーティショニングすることが、クロマ残差値の８個の４×４サブアレイをもたらす、請求項１７に記載のデバイス。
【請求項１９】
前記ルーマ成分について残差値の前記Ｎ×Ｎアレイをルーマ残差値の４個のサブアレイにパーティショニングすることが、４対１のアスペクト比を有するルーマ残差値の４個のサブアレイをもたらし、前記ルーマ成分について残差値の前記Ｎ×Ｎアレイに適用された前記パーティショニングに少なくとも部分的に基づいて、クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々をクロマ残差値の４個のサブアレイにさらにパーティショニングすることが、４対１のアスペクト比を有するクロマ残差値の８個のサブアレイをもたらす、請求項１７に記載のデバイス。
【請求項２０】
前記クロマ成分について残差値の前記Ｎ／２×Ｎアレイをクロマ残差値の２個のＮ／２×Ｎ／２サブアレイにパーティショニングすることが、前記２個のＮ／２×Ｎ／２サブアレイが最小変換ユニットサイズ未満である場合、残差値の前記Ｎ／２×Ｎアレイをクロマ残差値の２個のＮ／２×Ｎ／２サブアレイにパーティショニングしないと決定することを含む、請求項１６に記載のデバイス。
【請求項２１】
実行されたとき１つまたは複数のプロセッサに、
ビデオデータのルーマ成分について残差値のＮ×Ｎアレイを取得することと、
ビデオデータのクロマ成分について残差値の対応するＮ／２×Ｎアレイを取得することと、
前記クロマ成分について残差値の前記Ｎ／２×Ｎアレイを、クロマ残差値の２個のＮ／２×Ｎ／２サブアレイにパーティショニングすることと、
前記ルーマ成分についての残差値の前記Ｎ×Ｎアレイを複数のサブアレイにパーティショニングすることと、
前記クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々を、前記ルーマ成分についての対応するサブアレイと同じアスペクト比を有するように、複数のより小さなサブアレイにさらにパーティショニングすることと、
前記クロマ残差値の前記複数のより小さなサブアレイの各々に変換を実行して、前記クロマ成分について変換係数を生成することと
を行わせる命令を記憶した、非一時的コンピュータ可読記憶媒体。
【請求項２２】
前記命令が、１つまたは複数のプロセッサに、前記ルーマ成分について残差値の前記Ｎ×Ｎアレイをルーマ残差値の４個のサブアレイにパーティショニングすることと、前記ルーマ成分について残差値の前記Ｎ×Ｎアレイに適用された前記パーティショニングに少なくとも部分的に基づいて、クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々をクロマ残差値の４個のサブアレイにさらにパーティショニングすることとをさらに行わせる、請求項２１に記載の非一時的コンピュータ可読記憶媒体。
【請求項２３】
前記ルーマ成分について残差値の前記Ｎ×Ｎアレイをルーマ残差値の４個のサブアレイにパーティショニングすることが、ルーマ残差値の４個の８×８サブアレイをもたらし、クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々をクロマ残差値の４個のサブアレイにさらにパーティショニングすることが、クロマ残差値の８個の４×４サブアレイをもたらす、請求項２２に記載の非一時的コンピュータ可読記憶媒体。
【請求項２４】
前記ルーマ成分について残差値の前記Ｎ×Ｎアレイをルーマ残差値の４個のサブアレイにパーティショニングすることが、４対１のアスペクト比を有するルーマ残差値の４個のサブアレイをもたらし、前記ルーマ成分について残差値の前記Ｎ×Ｎアレイに適用された前記パーティショニングに少なくとも部分的に基づいて、クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々をクロマ残差値の４個のサブアレイにさらにパーティショニングすることが、４対１のアスペクト比を有するクロマ残差値の８個のサブアレイをもたらす、請求項２２に記載の非一時的コンピュータ可読記憶媒体。
【請求項２５】
前記クロマ成分について残差値の前記Ｎ／２×Ｎアレイをクロマ残差値の２個のＮ／２×Ｎ／２サブアレイにパーティショニングすることが、前記２個のＮ／２×Ｎ／２サブアレイが最小変換ユニットサイズ未満である場合、残差値の前記Ｎ／２×Ｎアレイをクロマ残差値の２個のＮ／２×Ｎ／２サブアレイにパーティショニングしないと決定することを含む、請求項２１に記載の非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願
本出願は、その内容全体が参照により本明細書に組み込まれる、２０１１年１１月１日に出願した米国仮出願第６１／５５４，２７３号の利益を主張する。
【０００２】
本開示は、ビデオコーディングに関し、より詳細には、変換ユニットパーティショニング（transform unit partitioning）に関する。
【背景技術】
【０００３】
デジタルビデオ機能は、デジタルテレビ、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップコンピュータまたはデスクトップコンピュータ、タブレットコンピュータ、電子ブックリーダ、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、携帯電話または衛星無線電話、いわゆる「スマートフォン」、ビデオ遠隔会議デバイス、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスに組み込むことができる。デジタルビデオデバイスは、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４、Ｐａｒｔ  １０、アドバンストビデオコーディング（ＡＶＣ）、現在開発中の高効率ビデオコーディング（ＨＥＶＣ）規格によって定義された規格、およびそのような規格の拡張に記述されているビデオ圧縮技法などのビデオ圧縮技法を実装する。ビデオデバイスは、そのようなビデオ圧縮技法を実装することによって、デジタルビデオ情報をより効率的に送信、受信、符号化（encode）、復号（decode）、および／または記憶することができる。
【０００４】
ビデオ圧縮技法は、ビデオシーケンスに固有の冗長性を低減または除去するために空間的（イントラピクチャ）予測および／または時間的（インターピクチャ）予測を実行する。ブロックベースのビデオコーディングの場合、ビデオスライス（すなわち、ビデオフレームまたはビデオフレームの一部）はビデオブロックにパーティショニングされ、これらのビデオブロックは、ツリーブロック、コーディングユニット（ＣＵ：coding unit）および／またはコーディングノードとも呼ばれる場合がある。ピクチャのイントラコード化（Ｉ）スライス内のビデオブロックは、同じピクチャの中の隣接ブロック内の参照サンプルに対する空間的予測を使用して符号化される。ピクチャのインターコード化（ＰまたはＢ）スライス内のビデオブロックは、同じピクチャの中の隣接ブロック内の参照サンプルに対する空間的予測、または他の参照ピクチャの中の参照サンプルに対する時間的予測を使用して符号化することができる。ピクチャはフレームと呼ばれる場合があり、参照ピクチャは参照フレームと呼ばれる場合がある。
【０００５】
空間的予測または時間的予測は、コーディングされるべきブロックのための予測ブロックをもたらす。残差データは、コーディングされるべきオリジナルブロックと予測ブロックとの間のピクセル差分を表す。インターコード化ブロックは、予測ブロックを形成する参照サンプルのブロックを指す動きベクトルと、コード化ブロックと予測ブロックとの間の差分を示す残差データとに従って符号化される。イントラコード化ブロックは、イントラコーディングモードと残差データとに従って符号化される。さらなる圧縮のために、残差データはピクセル領域から変換領域に変換され、残差変換係数をもたらし、次いで、それらが量子化され得る。量子化された変換係数は、最初は２次元アレイで構成され、変換係数の１次元ベクトルを生成するために走査されることができ、さらなる圧縮を達成するためにエントロピーコーディングが変換係数に適用されることができる。
【発明の概要】
【０００６】
概して、一態様では、本開示は、４：２：２サンプリングフォーマットが適用されるときにルーマ成分とクロマ成分との間で変換ユニット（ＴＵ：transform unit）パーティショニングを同期するための技法を記載する。一例として、ビデオデータが４：２：２サンプリングフォーマットに従ってフォーマットされるときに、本技法は、変換目的で、各クロマ成分のブロックを第１のクロマサブブロックと第２のクロマサブブロックとにパーティショニングすることを含むことができる。第１のクロマサブブロックおよび第２のクロマサブブロックは、たとえば、それぞれ上部（top）クロマサブブロックおよび下部（bottom）クロマサブブロックであり得る。ルーマ成分の変換ユニットパーティショニングは、２つのクロマサブブロックの両方におけるさらなるパーティションと同期され得る。このようにして、４：２：２サンプリングフォーマットで、これらの技法に従ってパーティショニングされたクロマ成分の変換ユニットは、有用な、または望ましいサイズおよび形状の変換をもたらし得る。場合によっては、本明細書に記載された技法は、クロマ変換ユニットがルーマ成分の対応する変換ユニットと同じアスペクト比を有するように適用され得る。
【０００７】
概して、本開示の別の態様は、変換ユニットをパーティショニングするときのコード化ブロックフラグ（ＣＢＦ：coded block flag）コーディングのための技法を記載する。一例として、４：２：２フォーマットに対応するクロマ成分ごとに、クロマ成分（ＵまたはＶ）の変換ユニットについてコード化ブロックフラグをコーディングする際に、ジョイントコード化ブロックフラグが、クロマ成分の第１および第２（たとえば、上部および下部）のクロマ変換ユニットのペアごとに、最初にシグナリングされ得る。ジョイントコード化ブロックフラグが、クロマ変換ユニットのペア内に、すなわちペア内のクロマ変換ユニットの少なくとも１つの内部に、少なくとも１つの非ゼロ係数が存在することを示す場合、１つまたは複数のさらなるコード化ブロックフラグが、２つの変換ユニットの各々が任意の非ゼロ変換係数を有するかどうかをシグナリングするために送られ得る。そうではなく、ジョイントコード化ブロックフラグが、クロマ変換ユニットのペア内に少なくとも１つの非ゼロ係数が存在しないことを示す場合、コード化ブロックフラグのさらなるシグナリングは、クロマ成分のペアのための変換ユニットには必要とされない。
【０００８】
一例では、本開示は、ビデオデータのルーマ成分について変換係数のＮ×Ｎアレイを取得することと、ビデオデータのクロマ成分について変換係数の複数の対応するＮ／２×Ｎ／２サブアレイを取得することと、クロマ変換係数のＮ／２×Ｎ／２サブアレイの各々に逆変換を実行して残差サンプル値の複数のＮ／２×Ｎ／２サブアレイを生成することと、残差サンプル値のＮ／２×Ｎ／２サブアレイの各々を結合してクロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成することとを含む、ビデオデータを復号するための方法を記載する。
【０００９】
一例では、本開示は、ビデオデータのルーマ成分について変換係数の複数のＮ／２×Ｎ／２サブアレイを取得することと、ビデオデータのクロマ成分について変換係数の複数の対応するＮ／４×Ｎ／４サブアレイを取得することと、クロマ変換係数の複数のＮ／４×Ｎ／４サブアレイの各々に逆変換を実行して残差サンプル値の複数のＮ／４×Ｎ／４サブアレイを生成することと、残差サンプル値のＮ／４×Ｎ／４サブアレイの各々を結合してクロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成することとを含む、ビデオデータを復号するための方法を記載する。
【００１０】
一例では、本開示は、ビデオデータのルーマ成分について変換係数の４個のＮ×Ｎ／４サブアレイを取得することと、ビデオデータのクロマ成分について変換係数の８個の対応するＮ／２×Ｎ／８サブアレイを取得することと、クロマ変換係数のＮ／２×Ｎ／８サブアレイの各々に逆変換を実行して残差サンプル値の８個のＮ／２×Ｎ／８サブアレイを生成することと、残差サンプル値のＮ／２×Ｎ／８サブアレイの各々を結合してクロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成することとを含む、ビデオデータを復号するための方法を記載する。
【００１１】
別の例では、本開示は、ビデオデータのルーマ成分について変換係数のＮ×Ｎアレイを取得することと、ビデオデータのクロマ成分について変換係数の複数の対応するＮ／２×Ｎ／２サブアレイを取得することと、クロマ変換係数のＮ／２×Ｎ／２サブアレイの各々に逆変換を実行して残差サンプル値の複数のＮ／２×Ｎ／２サブアレイを生成することと、残差サンプル値のＮ／２×Ｎ／２サブアレイの各々を結合してクロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成することとを行うように構成された１つまたは複数のプロセッサを備える、ビデオ復号デバイスを記載する。
【００１２】
別の例では、本開示は、ビデオデータのルーマ成分について変換係数の複数のＮ／２×Ｎ／２サブアレイを取得することと、ビデオデータのクロマ成分について変換係数の複数の対応するＮ／４×Ｎ／４サブアレイを取得することと、クロマ変換係数の複数のＮ／４×Ｎ／４サブアレイの各々に逆変換を実行して残差サンプル値の複数のＮ／４×Ｎ／４サブアレイを生成することと、残差サンプル値のＮ／４×Ｎ／４サブアレイの各々を結合してクロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成することとを行うように構成された１つまたは複数のプロセッサを備える、ビデオ復号デバイスを記載する。
【００１３】
別の例では、本開示は、ビデオデータのルーマ成分について変換係数の４個のＮ×Ｎ／４サブアレイを取得することと、ビデオデータのクロマ成分について変換係数の８個の対応するＮ／２×Ｎ／８サブアレイを取得することと、クロマ変換係数のＮ／２×Ｎ／８サブアレイの各々に逆変換を実行して残差サンプル値の８個のＮ／２×Ｎ／８サブアレイを生成することと、残差サンプル値のＮ／２×Ｎ／８サブアレイの各々を結合してクロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成することとを行うように構成された１つまたは複数のプロセッサを備える、ビデオ復号デバイスを記載する。
【００１４】
別の例では、本開示は、実行されたとき１つまたは複数のプロセッサに、ビデオデータのルーマ成分について変換係数のＮ×Ｎアレイを取得することと、ビデオデータのクロマ成分について変換係数の複数の対応するＮ／２×Ｎ／２サブアレイを取得することと、クロマ変換係数のＮ／２×Ｎ／２サブアレイの各々に逆変換を実行して残差サンプル値の複数のＮ／２×Ｎ／２サブアレイを生成することと、残差サンプル値のＮ／２×Ｎ／２サブアレイの各々を結合してクロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成することとを行わせる命令を記憶した、非一時的コンピュータ可読媒体を記載する。
【００１５】
別の例では、本開示は、実行されたとき１つまたは複数のプロセッサに、ビデオデータのルーマ成分について変換係数の複数のＮ／２×Ｎ／２サブアレイを取得することと、ビデオデータのクロマ成分について変換係数の複数の対応するＮ／４×Ｎ／４サブアレイを取得することと、クロマ変換係数の複数のＮ／４×Ｎ／４サブアレイの各々に逆変換を実行して残差サンプル値の複数のＮ／４×Ｎ／４サブアレイを生成することと、残差サンプル値のＮ／４×Ｎ／４サブアレイの各々を結合してクロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成することとを行わせる命令を記憶した、非一時的コンピュータ可読媒体を記載する。
【００１６】
別の例では、本開示は、実行されたとき１つまたは複数のプロセッサに、ビデオデータのルーマ成分について変換係数の４個のＮ×Ｎ／４サブアレイを取得することと、ビデオデータのクロマ成分について変換係数の８個の対応するＮ／２×Ｎ／８サブアレイを取得することと、クロマ変換係数のＮ／２×Ｎ／８サブアレイの各々に逆変換を実行して残差サンプル値の８個のＮ／２×Ｎ／８サブアレイを生成することと、残差サンプル値のＮ／２×Ｎ／８サブアレイの各々を結合してクロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成することとを行わせる命令を記憶した、非一時的コンピュータ可読媒体を記載する。
【００１７】
別の例では、本開示は、ビデオデータのルーマ成分について変換係数のＮ×Ｎアレイを取得するための手段と、ビデオデータのクロマ成分について変換係数の複数の対応するＮ／２×Ｎ／２サブアレイを取得するための手段と、クロマ変換係数のＮ／２×Ｎ／２サブアレイの各々に逆変換を実行して残差サンプル値の複数のＮ／２×Ｎ／２サブアレイを生成するための手段と、残差サンプル値のＮ／２×Ｎ／２サブアレイの各々を結合してクロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成するための手段とを備える、ビデオデータを復号するための装置を記載する。
【００１８】
別の例では、本開示は、ビデオデータのルーマ成分について変換係数の複数のＮ／２×Ｎ／２サブアレイを取得するための手段と、ビデオデータのクロマ成分について変換係数の複数の対応するＮ／４×Ｎ／４サブアレイを取得するための手段と、クロマ変換係数の複数のＮ／４×Ｎ／４サブアレイの各々に逆変換を実行して残差サンプル値の複数のＮ／４×Ｎ／４サブアレイを生成するための手段と、残差サンプル値のＮ／４×Ｎ／４サブアレイの各々を結合してクロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成するための手段とを備える、ビデオデータを復号するための装置を記載する。
【００１９】
別の例では、本開示は、ビデオデータのルーマ成分について変換係数の４個のＮ×Ｎ／４サブアレイを取得するための手段と、ビデオデータのクロマ成分について変換係数の８個の対応するＮ／２×Ｎ／８サブアレイを取得するための手段と、クロマ変換係数のＮ／２×Ｎ／８サブアレイの各々に逆変換を実行して残差サンプル値の８個のＮ／２×Ｎ／８サブアレイを生成するための手段と、残差サンプル値のＮ／２×Ｎ／８サブアレイの各々を結合してクロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成するための手段とを備える、ビデオデータを復号するための装置を記載する。
【００２０】
一例では、本開示は、ビデオデータのルーマ成分について残差値のＮ×Ｎアレイを取得することと、ビデオデータのクロマ成分について残差値の対応するＮ／２×Ｎアレイを取得することと、クロマ成分についての残差値のＮ／２×Ｎアレイをクロマ残差値の２つのＮ／２×Ｎ／２サブアレイにパーティショニングすることと、クロマ残差値のサブアレイの各々に変換を実行することによってクロマ成分について変換係数を生成することとを含む、ビデオデータを符号化するための方法を記載する。
【００２１】
別の例では、本開示は、ビデオデータのルーマ成分について残差値のＮ×Ｎアレイを取得するための手段と、ビデオデータのクロマ成分について残差値の対応するＮ／２×Ｎアレイを取得するための手段と、クロマ成分についての残差値のＮ／２×Ｎアレイをクロマ残差値の２つのＮ／２×Ｎ／２サブアレイにパーティショニングするための手段と、クロマ残差値のサブアレイの各々に変換を実行することによってクロマ成分について変換係数を生成するための手段とを含む、ビデオデータを符号化するための装置を記載する。
【００２２】
別の例では、本開示は、ビデオデータのルーマ成分について残差値のＮ×Ｎアレイを取得することと、ビデオデータのクロマ成分について残差値の対応するＮ／２×Ｎアレイを取得することと、クロマ成分についての残差値のＮ／２×Ｎアレイをクロマ残差値の２つのＮ／２×Ｎ／２サブアレイにパーティショニングすることと、クロマ残差値のサブアレイの各々に変換を実行することによってクロマ成分について変換係数を生成することとを行うように構成された１つまたは複数のプロセッサを備える、ビデオ符号化デバイスを記載する。
【００２３】
別の例では、本開示は、実行されたとき１つまたは複数のプロセッサに、ビデオデータのルーマ成分について残差値のＮ×Ｎアレイを取得することと、ビデオデータのクロマ成分について残差値の対応するＮ／２×Ｎアレイを取得することと、クロマ成分についての残差値のＮ／２×Ｎアレイをクロマ残差値の２つのＮ／２×Ｎ／２サブアレイにパーティショニングすることと、クロマ残差値のサブアレイの各々に変換を実行することによってクロマ成分について変換係数を生成することとを行わせる命令を記憶した、非一時的コンピュータ可読媒体を記載する。
【００２４】
一例では、本開示は、クロマ成分に関連付けられた第１の変換ユニットが少なくとも１つの非ゼロ変換係数を含むかどうかを判定することと、クロマ成分に関連付けられた第２の変換ユニットが少なくとも１つの非ゼロ変換係数を含むかどうかを判定することと、第１の変換ユニットおよび第２の変換ユニットについてジョイントコード化ブロックフラグを生成することとを含む、ビデオデータを符号化するための方法であって、ジョイントコード化ブロックフラグは、第１の変換ユニットまたは第２の変換ユニットのいずれかが少なくとも１つの非ゼロ変換係数を含むかどうかを示す、方法を記載する。
【００２５】
別の例では、本開示は、クロマ成分に関連付けられた第１の変換ユニットが少なくとも１つの非ゼロ変換係数を含むかどうかを判定するための手段と、クロマ成分に関連付けられた第２の変換ユニットが少なくとも１つの非ゼロ変換係数を含むかどうかを判定し、第１の変換ユニットおよび第２の変換ユニットについてジョイントコード化ブロックフラグを生成するための手段とを備える、ビデオデータを符号化するための装置であって、ジョイントコード化ブロックフラグは、第１の変換ユニットまたは第２の変換ユニットのいずれかが少なくとも１つの非ゼロ変換係数を含むかどうかを示す、装置を記載する。
【００２６】
別の例では、本開示は、クロマ成分に関連付けられた第１の変換ユニットが少なくとも１つの非ゼロ変換係数を含むかどうかを判定することと、クロマ成分に関連付けられた第２の変換ユニットが少なくとも１つの非ゼロ変換係数を含むかどうかを判定し、第１の変換ユニットおよび第２の変換ユニットについてジョイントコード化ブロックフラグを生成することとを行うように構成された１つまたは複数のプロセッサを備える、ビデオ符号化デバイスであって、ジョイントコード化ブロックフラグは、第１の変換ユニットまたは第２の変換ユニットのいずれかが少なくとも１つの非ゼロ変換係数を含むかどうかを示す、ビデオ符号化デバイスを記載する。
【００２７】
別の例では、本開示は、実行されたとき１つまたは複数のプロセッサに、クロマ成分に関連付けられた第１の変換ユニットが少なくとも１つの非ゼロ変換係数を含むかどうかを判定することと、クロマ成分に関連付けられた第２の変換ユニットが少なくとも１つの非ゼロ変換係数を含むかどうかを判定し、第１の変換ユニットおよび第２の変換ユニットについてジョイントコード化ブロックフラグを生成することとを行わせる命令を記憶した、非一時的コンピュータ可読媒体であって、ジョイントコード化ブロックフラグは、第１の変換ユニットまたは第２の変換ユニットのいずれかが少なくとも１つの非ゼロ変換係数を含むかどうかを示す、非一時的コンピュータ可読媒体を記載する。
【００２８】
１つまたは複数の例の詳細は、添付の図面および以下の説明に示されている。他の特徴、目的、および利点は、説明および図面、ならびに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００２９】
【図１Ａ】コーディングユニットのルーマ成分およびクロマ成分についてのサンプルフォーマットを示す概念図。
【図１Ｂ】コーディングユニットのルーマ成分およびクロマ成分についての別のサンプルフォーマットを示す概念図。
【図１Ｃ】コーディングユニットのルーマ成分およびクロマ成分についての別のサンプルフォーマットを示す概念図。
【図２】４：２：２サンプルフォーマットに従ってフォーマットされた１６×１６コーディングユニットを示す概念図。
【図３】変換ユニットの４分木分解構造を示す概念図。
【図４Ａ】変換ユニットの４分木分解構造を示す概念図。
【図４Ｂ】変換ユニットの４分木分解構造を示す概念図。
【図５】４分木分解レベルを示す概念図。
【図６】４：２：２サンプルフォーマットに従ってフォーマットされた１６×１６コーディングユニットに適用されたＴＵの４分木分解を示す概念図。
【図７】本開示に記載された技法を利用できる、例示的なビデオ符号化および復号システムを示すブロック図。
【図８Ａ】ビデオブロックのための変換ユニットパーティショニングのための技法を示す概念図。
【図８Ｂ】ビデオブロックのための変換ユニットパーティショニングのための技法を示す概念図。
【図８Ｃ】ビデオブロックのための変換ユニットパーティショニングのための技法を示す概念図。
【図８Ｄ】ビデオブロックのための変換ユニットパーティショニングのための技法を示す概念図。
【図９】４：２：２サンプルフォーマットに従ってフォーマットされた１６×１６ビデオブロックのための変換ユニットパーティショニングのための技法を示す概念図。
【図１０Ａ】コード化ブロックフラグコーディングについてのブロック関連付けのための技法を示す概念図。
【図１０Ｂ】コード化ブロックフラグのコーディングについてのブロック関連付けのための技法を示す概念図。
【図１０Ｃ】コード化ブロックフラグのコーディングについてのブロック関連付けのための技法を示す概念図。
【図１０Ｄ】コード化ブロックフラグのコーディングについてのブロック関連付けのための技法を示す概念図。
【図１１】クロマブロックのための、変換ユニットパーティショニングおよびコード化ブロックフラグコーディングについてのブロック関連付けのための例示的な方法を示すフローチャート。
【図１２】本開示に記載された技法を実装できる、例示的なビデオエンコーダを示すブロック図。
【図１３】クロマブロックのための、残差値のパーティショニングおよび変換ユニットの生成のための例示的な方法を示すフローチャート。
【図１４】本開示に記載された技法を実装できる、例示的なビデオデコーダを示すブロック図。
【図１５】変換係数から残差値を生成するための例示的な方法を示すフローチャート。
【詳細な説明】
【００３０】
いくつかのビデオコーディング規格によれば、コーディングユニット（ＣＵ：coding unit）、そのルーマ成分、およびそのクロマ成分は、変換ユニット（ＴＵ：transform unit）パーティショニングのための同じ４分木分解構造を共有することができる。異なるカラーサンプリングフォーマットの下では、対応するクロマ成分ブロックは、ルーマブロックとは異なるサイズおよび形状を有する場合がある。さらに、ＨＥＶＣの現行バージョンによれば、ＴＵパーティショニングから生じ得る異なるサイズおよび形状の変換の必ずしもすべてが、定義され、クロマ成分ブロックのための使用に利用可能であるとは限らない。したがって、クロマ成分の変換ユニットパーティショニングのための他の技法が、より有用な形状およびサイズのＴＵをもたらす場合がある。本明細書に記載された例示的な技法のうちのいくつかによれば、４：２：２フォーマットの下で、クロマ成分の変換ユニットのパーティションは、ルーマ成分についてのその対応する変換ユニットと同じアスペクト比を有する場合がある。
【００３１】
デジタルビデオデバイスは、デジタルビデオ情報をより効率的に符号化および復号するために、ビデオ圧縮技法を実装する。ビデオ圧縮技法は、ビデオコーディング規格に従って定義され得る。ビデオコーディング規格の例には、ＩＴＵ−Ｔ  Ｈ．２６１、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−１  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６２またはＩＳＯ／ＩＥＣ  ＭＰＥＧ−２  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  Ｖｉｓｕａｌ、ならびに、そのスケーラブルビデオコーディング（ＳＶＣ）およびマルチビュービデオコーディング（ＭＶＣ）拡張を含む（ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  ＡＶＣとしても知られている）ＩＴＵ−Ｔ  Ｈ．２６４が含まれる。加えて、ＩＴＵ−Ｔ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ（ＶＣＥＧ）およびＩＳＯ／ＩＥＣ  Ｍｏｔｉｏｎ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ（ＭＰＥＧ）のＪｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｏｎ  Ｔｅａｍ  ｏｎ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＪＣＴ−ＶＣ）によって開発されている新しいビデオコーディング規格、すなわち高効率ビデオコーディング（ＨＥＶＣ）が存在する。
【００３２】
ＨＥＶＣの規格化の取り組みは、ＨＥＶＣテストモデル（ＨＭ）と呼ばれるビデオコーディングデバイスのモデルに基づく。ＨＭは、他の従前のビデオコーディング規格、たとえばＩＴＵ−Ｔ  Ｈ．２６４／ＡＶＣの開発中に利用可能なビデオコーディングデバイスに対して、現在のビデオコーディングデバイスの能力が向上していると仮定する。たとえば、Ｈ．２６４は９個のイントラ予測符号化モードを提供するが、ＨＥＶＣは３５個ものイントラ予測符号化モードを提供する。「ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ４」または「ＷＤ４」と呼ばれるＨＥＶＣの最近のワーキングドラフト（ＷＤ）は、文書ＪＣＴＶＣ−Ｆ８０３＿ｄ２、Ｂｒｏｓｓら、「WD4: Working Draft 4 of High-Efficiency Video Coding(HEVC)」、ＩＴＵ−Ｔ  ＳＧ１６  ＷＰ３およびＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９／ＷＧ１１のＪｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｖｅ  Ｔｅａｍ  ｏｎ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＪＣＴ−ＶＣ）、第６回会議：イタリア  トリノ、２０１１年７月、に記載されている。さらに、「ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ８」または「ＷＤ８」と呼ばれるＨＥＶＣの最近の他のワーキングドラフトは、文書ＨＣＴＶＣ−Ｊ１００３＿ｄ７、Ｂｒｏｓｓら、「High Efficiency Video Coding (HEVC) Text Specification Draft 8」、ＩＴＵ−Ｔ  ＳＧ１６  ＷＰ３およびＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９／ＷＧ１１のＪｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｖｅ  Ｔｅａｍ  ｏｎ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＪＣＴ−ＶＣ）、第１０回会議：スウェーデン  ストックホルム、２０１２年７月１１〜２０日、に記載されている。ＨＥＶＣ規格は、また、ＨＥＶＣの配信バージョンのための規格番号であることを意図した、ＩＳＯ／ＩＥＣ  ２３００８−ＨＥＶＣと呼ばれる場合もある。本出願では、説明のために、開発中のＨＥＶＣ規格の現在提案されている態様のうちのいくつかに従うコーディングが記載される。ただし、本開示に記載された技法は、また、ＩＴＵ−Ｔ  Ｈ．２６４または他の規格に従って定義されるビデオコーディングプロセス、またはプロプライエタリなビデオコーディングプロセスなどの他のビデオコーディングプロセスのためにも有用であり、適用され得る。
【００３３】
ＨＥＶＣ  ＷＤ４などのビデオコーディング規格に従って動作する典型的なビデオエンコーダは、オリジナルビデオシーケンスの各フレーム（すなわち、ピクチャ）を、「ブロック」または「コーディングユニット」と呼ばれる、隣接する矩形領域にパーティショニングする。これらのブロックは、ビデオシーケンスに固有の冗長性を低減または除去するために、空間的（フレーム内（intra-frame））予測技法および／または時間的（フレーム間（inter-frame））予測技法を適用することによって、符号化され得る。空間的予測は「イントラモード」（Ｉモード（登録商標））と呼ばれる場合があり、時間的予測は「インターモード」（ＰモードまたはＢモード）と呼ばれる場合がある。予測技法は、参照サンプルのブロックと呼ばれる場合もある、ビデオデータの予測ブロックを生成する。コード化されるべきオリジナルビデオデータのブロックは、予測ブロックと比較される。ビデオデータのオリジナルブロックと予測ブロックとの間の差分は、残差データと呼ばれる場合がある。残差データは、通常、予測ブロックのピクセル値とビデオデータのオリジナルブロックのピクセル値との間の差分のアレイである。変換、たとえば、離散コサイン変換（ＤＣＴ）、整数変換、ウェーブレット変換、または概念上類似の変換は、対応する変換係数のセットを生成するために、コーディングプロセス中に残差データに適用され得る。したがって、ビデオのオリジナルブロックは、変換係数に逆変換を実行し、残差データを予測ブロックに追加することによって、再構成されることができる。変換係数はまた、量子化され得る。すなわち、変換係数の値は、定義されたビット深度にしたがってビットストリングとして表され得る。場合によっては、量子化は、低い値の変換係数をゼロとして表すことになり得る。量子化された変換係数は、変換係数レベルと呼ばれる場合がある。
【００３４】
ＨＥＶＣに従うビデオコーディングの場合、一例として、ビデオフレームはコーディングユニットにパーティショニングされ得る。コーディングユニット（ＣＵ）は、一般に、ビデオ圧縮のために様々なコーディングツールがそれに適用される基本ユニットの役割を果たす矩形の画像領域を指す。ＣＵは、通常正方形であり、たとえば、ＩＴＵ−Ｔ  Ｈ．２６４などの他のビデオコーディング規格において記述されるいわゆる「マクロブロック」と同様であると見なすことができる。ＣＵは、ビデオサンプル値のアレイと見なすことができる。ビデオサンプル値は、画素、ピクセル、またはペルと呼ばれる場合もある。ＣＵのサイズは、水平および垂直のサンプルの数によって定義され得る。したがって、ＣＵはＮ×ＮまたはＮ×ＭのＣＵと記述され得る。
【００３５】
本開示では、「Ｎ×Ｎ」および「ＮｂｙＮ」は、垂直寸法および水平寸法に関するビデオブロックのピクセル寸法、たとえば、１６×１６ピクセルまたは１６ｂｙ１６ピクセルを指すように互換的に使用される。一般に、１６×１６ブロックは、垂直方向に１６ピクセル（ｙ＝１６）、水平方向に１６ピクセル（ｘ＝１６）を有する。同様に、Ｎ×Ｎブロックは、一般に、垂直方向にＮピクセル、水平方向にＮピクセルを有し、ここでＮは非負の整数値を表す。ブロック内のピクセルは行および列で構成され得る。さらに、ブロックは、必ずしも水平方向と垂直方向に同数のピクセルを有する必要はない。たとえば、ブロックはＮ×Ｍピクセルを備える場合があり、ここでＭは必ずしもＮに等しいとは限らない。
【００３６】
良好なコーディング効率を達成するために、ＣＵはビデオコンテンツに応じて可変サイズを有することができる。ＣＵは、通常、Ｙと表記される輝度（luminance）成分、ならびに、ＵおよびＶと表記される２つのクロマ成分を有する。２つのクロマ成分ＵおよびＶは、それぞれＣbおよびＣrと表記される場合もある。さらに、ＨＥＶＣによれば、ビットストリーム内のシンタックスデータは、サンプルの数に関してフレームまたはピクチャのための最大のＣＵである、最大コーディングユニット（ＬＣＵ）を定義することができる。ＣＵのサイズは、通常、水平および垂直のルーマ（luma）サンプルの数にしたがって定義される。通常、ＬＣＵは６４×６４のルーマサンプルを含む。他の寸法のＣＵは、ＬＣＵをサブＣＵに再帰的にパーティショニングすることによって生成されうる。ビットストリームに関するシンタックスデータは、ＣＵ深度と呼ばれる、ＬＣＵが分割され得る最大回数を定義することができる。したがって、ビットストリームは、また、最小コーディングユニット（ＳＣＵ）を定義することもできる。通常、ＳＣＵは８×８のルーマサンプルを含む。したがって、一例では、４個の３２×３２ＣＵが、６４×６４ＬＣＵを４個のサブＣＵにパーティショニングすることによって生成されることができ、３２×３２ＣＵの各々は、さらに１６個の８×８ＣＵにパーティショニングされることができる。
【００３７】
クロマフォーマットと呼ばれる場合もあるビデオサンプリングフォーマットは、ＣＵに含まれるルーマサンプルの数に対して、ＣＵに含まれるクロマサンプルの数を定義することができる。クロマ成分に関するビデオサンプリングフォーマットに応じて、Ｕ成分およびＶ成分の、サンプルの数に関するサイズは、Ｙ成分のサイズと同じか、またはＹ成分のサイズとは異なるものであり得る。Ｈ．２６４／ＡＶＣおよびＨＥＶＣ  ＷＤ４ビデオコーディング規格では、ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃと呼ばれる値は、ルーマ成分に対して、クロマ成分の異なるサンプリングフォーマットを示すために定義される。表１は、ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃの値と関連するクロマフォーマットとの間の関係を示す。  
【表１】
0005932050.tif 000002
【００３８】
表１では、変数ＳｕｂＷｉｄｔｈＣおよびＳｕｂＨｅｉｇｈｔＣは、ルーマ成分に関するサンプルの数と各クロマ成分に関するサンプルの数との間の、水平および垂直のサンプリングレートの比を示すために使用され得る。表１に記載されたクロマフォーマットでは、２つのクロマ成分は同じサンプリングレートを有する。
【００３９】
表１の例では、４：２：０フォーマットの場合、水平方向と垂直方向の両方について、ルーマ成分のサンプリングレートは、クロマ成分のサンプリングレートの２倍である。結果として、４：２：０フォーマットに従ってフォーマットされたコーディングユニットの場合、ルーマ成分に関するサンプルのアレイの幅および高さは、クロマ成分に関するサンプルの各アレイの幅および高さの２倍である。同様に、４：２：２フォーマットに従ってフォーマットされたコーディングユニットの場合、ルーマ成分に関するサンプルのアレイの幅は、各クロマ成分に関するサンプルのアレイの幅の２倍であるが、ルーマ成分に関するサンプルのアレイの高さは、各クロマ成分に関するサンプルのアレイの高さに等しい。４：４：４フォーマットに従ってフォーマットされたコーディングユニットの場合、ルーマ成分に関するサンプルのアレイは、各クロマ成分に関するサンプルのアレイと同じ幅および高さを有する。
【００４０】
図１Ａ〜図１Ｃは、コーディングユニットのルーマ成分およびクロマ成分に関する様々なサンプルフォーマットを示す概念図である。図１Ａは、４：２：０サンプルフォーマットを示す概念図である。図１Ａに示されたように、４：２：０サンプルフォーマットの場合、クロマ成分はルーマ成分の４分の１のサイズである。したがって、４：２：０サンプルフォーマットに従ってフォーマットされたＣＵの場合、クロマ成分のサンプルごとに４個のルーマサンプルが存在する。図１Ｂは、４：２：２サンプルフォーマットを示す概念図である。図１Ｂに示されたように、４：２：２サンプルフォーマットの場合、クロマ成分はルーマ成分の２分の１のサイズである。したがって、４：２：２サンプルフォーマットに従ってフォーマットされたＣＵの場合、クロマ成分のサンプルごとに２個のルーマサンプルが存在する。図１Ｃは、４：４：４サンプルフォーマットを示す概念図である。図１Ｃに示されたように、４：４：４サンプルフォーマットの場合、クロマ成分はルーマ成分と同じサイズである。したがって、４：４：４サンプルフォーマットに従ってフォーマットされたＣＵの場合、クロマ成分のサンプルごとに１個のルーマサンプルが存在する。
【００４１】
図２は、４：２：２サンプルフォーマットに従ってフォーマットされた１６×１６コーディングユニットの一例を示す概念図である。図２は、ＣＵ内のルーマサンプルに対するクロマサンプルの相対位置を示す。上述されたように、ＣＵは、通常、水平方向および垂直方向のルーマサンプルの数によって定義される。したがって、図２に示されたように、４：２：２サンプルフォーマットに従ってフォーマットされた１６×１６ＣＵは、ルーマ成分の１６×１６サンプルと、各クロマ成分について８×１６サンプルとを含む。さらに、上述されたように、ＣＵはより小さいＣＵにパーティショニングされうる。たとえば、図２に示されたＣＵは、４個の８×８ＣＵにパーティショニングされ、各ＣＵは、ルーマ成分について８×８サンプルと、各クロマ成分について４×８サンプルとを含む。
【００４２】
さらに、いくつかのビデオコーディング規格では、コーディングユニットは、予測または変換の目的でより小さいユニットにパーティショニングされ得る。ＨＥＶＣによれば、ＣＵは、１つまたは複数の予測ユニット（ＰＵ）および／または１つまたは複数の変換ユニット（ＴＵ）を含むことができる。本開示はまた、「ブロック」、「パーティション」または「部分」という用語を使用して、ＣＵ、ＰＵ、またはＴＵのいずれかを指す。一般に、「部分」は、ビデオフレームの任意のサブセットを指し得る。さらに、本開示は、通常、「ビデオブロック」という用語を使用して、ＣＵのコーディングノードを指す。いくつかの特定の場合では、本開示はまた、「ビデオブロック」という用語を使用して、コーディングノードならびにＰＵおよびＴＵを含むツリーブロック、すなわち、ＬＣＵまたはＣＵを指す場合がある。したがって、ビデオブロックはＣＵ内部のコーディングノードに対応する場合があり、ビデオブロックは固定または可変のサイズを有する場合があり、指定されたコーディング規格にしたがってサイズが異なる場合がある。
【００４３】
ＰＵは、対応するＣＵの全部または一部を表す場合があり、ＰＵのための参照サンプルを取り出すためのデータを含む場合がある。ＰＵは、正方形または長方形の形状を有する場合がある。たとえば、図２のＣＵがインター予測を使用してコード化された場合、それは４個の長方形ＰＵに分割され得、各ＰＵは、時間的に隣接するフレーム内の参照サンプルのセットを識別する情報を含む。参照サンプルのセットは、結合されて予測ビデオブロックを形成し得る。上述されたように、予測ビデオブロックは、ＣＵから減算されて残差データを形成し得る。
【００４４】
上述されたように、残差データをピクセル領域から変換領域に変換するために、変換が残差データに適用され得る。変換ブロックまたはＴＵは、変換が適用される残差データのセットに対応し得る。ＴＵは、変換を実行し、変換係数の対応するセットを生成する目的のためのピクセル差分値のセットのサイズを表す。ＴＵのサイズはＣＵのサイズと同じであり得、またはＣＵは複数のＴＵにパーティショニングされ得る。たとえば、図２に示されたＣＵでは、ルーマサンプルの１６×１６アレイに関連付けられた残差値に対して変換が実行されることができ、または、ルーマサンプルの４個の８×８アレイの各々に対して変換が実行されることができる。より大きいＴＵは、一般に、再構成された画像内のより知覚可能な「ブロッキネス」を伴うより大きい圧縮を提供し、より小さいＴＵは、一般に、より知覚可能でない「ブロッキネス」を伴うより小さい圧縮を提供する。ＴＵサイズの選択は、レートひずみ最適化分析に基づき得る。
【００４５】
ＬＣＵと同様に、ＴＵはより小さいＴＵに再帰的にパーティショニングされ得る。ＴＵをより小さいＴＵにパーティショニングすることによって得られるＴＵは、変換ブロック構造と呼ばれる場合がある。変換ブロック構造の一例は、いわゆるツリー構造である。ツリー構造は、ＴＵ全体として、またはいくつかのより小さいＴＵに分割されるものとして、変換ブロックをコード化することができる。このプロセスは、あらゆる異なる分解レベルでブロックごとに再帰的に行うことができる。
【００４６】
図３は４分木分解構造を示す概念図であり、そこでは、ＴＵは連続するレベルで４個の４分の１サイズのブロックに分割されるか、または分割されないかのいずれかである。図３では、実線の全ブロックが、オリジナルＣＵに対応し得るオリジナルＴＵである。破線は、４分木構造に従った変換ブロックの分解の１つの結果を示す。図３に示された分解は、いくつかの可能な分解結果のうちの１つであることに留意されたい。図３に示されたように、３つのレベルの変換分解が存在する。第１のレベル（すなわち、レベル１の分解）において、変換ブロック全体が４個の４分の１サイズのブロックに分割される。次いで、第２のレベル（すなわち、レベル２）において、第２の４分の１サイズの変換ブロックが、４個の１６分の１サイズの変換ブロックにさらに分割される。次いで、第３のレベル（すなわち、レベル３）において、第４の１６分の１サイズの変換ブロックが、４個のさらに小さい変換ブロックへとさらに分割される。符号化プロセスの間、ビデオエンコーダは、レートひずみ最適化分析に基づいて、変換ブロックがさらに分割されるべきかどうかを判定することができる。
【００４７】
図３に示された分解技法は４分木分解構造と呼ばれ、その場合、ブロックは、４個の４分の１サイズのブロックに分割されるか、または分割されないかのいずれかである。図３では、ブロックは正方形のサブブロックにしか分割されない。しかしながら、ＨＥＶＣ  ＷＤ４に記述された分解技法などの他の分解技法では、ブロックはまた、変換目的で長方形のサブブロックに分割されることもできる。
【００４８】
図４Ａおよび図４Ｂは４分木分解構造を示す概念図であり、そこでは、ＴＵは、４個の非正方形ブロックに分割されるか、または分割されないかのいずれかである。図４Ａに示されたように、ＴＵは、変換目的で４個のより小さい非正方形ブロックにパーティショニングされることができる。さらに、図４Ｂに示されたように、非正方形分解構造も再帰的であり得る。たとえば、図４Ｂに示されたように、第１のサブブロックは、オリジナルブロックの１６分の１のサイズを有する４個のさらに小さい非正方形ブロックに、さらにパーティショニングされることができる。
【００４９】
符号化されたビデオビットストリーム内でツリー分解構造をシグナリングするために、変換分割フラグが使用され得る。各ブロックについて、ブロックがさらに分割されるべきかどうかを示すために、変換分割フラグがビデオエンコーダによってコード化され得る。図５は、４分木分解を示すレベル図である。図５は、図３に示された４分木分解をシグナリングするために使用され得るレベル図の一例を示す。このように、図５は、分解構造を表す代替方法を提供する。図５に示されたように、様々な分解レベルにおいて、変換分割フラグは以下のようにシグナリングされることができる。  
レベル０：  １
レベル１：  ０，１，０，０
レベル２：  ０，０，０，１
レベル３：  ０，０，０，０
コーディングユニットレベルであるレベル０において、変換がさらに分割されるので、１のフラグがシグナリングされる。レベル１では、２番目の４分の１サイズのブロックだけがさらに分割されるので、０，１，０，０のフラグが、符号化されたビットストリーム内でビデオエンコーダによって送られる。レベル２において、他のブロックはこれ以上分割されないので、２番目の４分の１サイズのブロックだけがビデオエンコーダによってさらにシグナリングされる必要がある。２番目の４分の１サイズのブロックでは、第４のブロックだけがさらに分割されるので、０，０，０，１のフラグがレベル２でビデオエンコーダによって送られる。レベル３で、さらに分割されるべきブロックがないので、０，０，０，０のフラグが送られる。明確にするために、本開示では、より小さいレベル値は分解構造内のより高いレベル（すなわち、ルートレベルにより近いレベル）を意味することに言及されるべきである。図３および図５に示されたように、レベル０はルートレベルまたはトップレベルである。
【００５０】
分割フラグに加えて、ＨＥＶＣ  ＷＤ４は、変換係数のブロックまたは変換係数レベルが任意の非ゼロ変換係数を含むかどうかを示す、コード化ブロックフラグ（ＣＢＦ）シンタックス要素を含む。コード化ブロックフラグのシグナリングは、変換ブロック構造に密接に関連付けられ、トップダウン階層方式でビデオエンコーダによってシグナリングされる。たとえば、より高い分解レベルにあるコード化ブロックフラグが０であるときには、そのビデオ成分についてより低いレベルにあるコード化ブロックフラグのこれ以上のシグナリングはない。この場合、対応するより低いレベルのコード化ブロックフラグは、すべて０であると推論される。言い換えれば、コード化ブロックフラグが分解のあるレベルでコード化されるときには、より低いレベルにあるコード化ブロックフラグは、現在の分解レベルにあるコード化ブロックフラグがゼロでないときのみ必要とされる。
【００５１】
ＨＥＶＣ  ＷＤ４によれば、ＣＵの場合、そのルーマ成分Ｙ、ならびにそのクロマ成分ＵおよびＶは、ＴＵパーティショニングについて同じ４分木分解構造を共有する。これにより、ただ１つの変換分割フラグが変換ブロックごとにシグナリングされることが可能になり、そのフラグはＹ、ＵおよびＶの成分の間で共有される。しかしながら、上述されたように、様々なカラーフォーマットの下では、クロマ成分は、ルーマ成分とは異なるサイズおよび形状を有する場合がある。ＨＥＶＣ  ＷＤ４は、異なる形状およびサイズの変換を定義する。しかしながら、必ずしもすべてのサイズおよび形状の変換が、ＨＥＶＣ  ＷＤ４におけるコーディングのために定義され、利用可能であるとは限らない。ＨＥＶＣ  ＷＤ４では、以下のサイズの正方形変換が、コーディングに利用可能であると定義される：４×４、８×８、１６×１６および３２×３２。非正方形変換の場合、利用可能な変換サイズには、３２×８、８×３２、１６×４および４×１６が含まれる。これらの変換は、正方形、または、高さが幅の４倍である、もしくは幅が高さの４倍である長方形のいずれかの形状を有する。言い換えれば、長方形の変換サイズのアスペクト比は、１対４または４対１のいずれかである。
【００５２】
図６は、４：２：２サンプルフォーマットに従ってフォーマットされた１６×１６ＣＵに適用された例示的な４分木分解を示す概念図である。図６に示されたように、分解は、ルーマ成分についてサイズ８×８および４×４のＴＵ、ならびに各クロマ成分について４×８、２×４の対応するＴＵをもたらす。ＨＥＶＣ  ＷＤ４は、８×８および４×４のサイズのための変換を定義するが、ＨＥＶＣは４×８および２×４のための変換を定義しない。さらに、図１Ｂおよび図２に示されたように、４：２：２サンプルフォーマットに従ってフォーマットされたビデオの場合、クロマブロックは、その高さがその幅の２倍の長さをもつ、長方形を有する。ＨＥＶＣ  ＷＤ４によれば、必要なブロック形状を有する、すなわち１：２または２：１のアスペクト比を有する、利用可能な変換は存在しない。したがって、ＨＥＶＣ  ＷＤ４は、４：２：２サンプルフォーマットに従ってフォーマットされたクロマブロックの形状およびサイズに対応する、ＴＵの形状およびサイズを提供することができない。ＨＥＶＣワーキングドラフトは、ソースビデオデータのサンプルフォーマットが４：２：０サンプルフォーマットであるビデオコーディングに関するメインプロファイルを記述しており、４：２：２または４：４：４のサンプルフォーマットに従ってフォーマットされたソースビデオをコード化するための詳細を提供しないことに留意されたい。
【００５３】
ＨＥＶＣ  ＷＤ４に記述されたＴＵパーティショニング技法の特性に鑑みて、本開示は、４：２：２サンプルフォーマットの場合のルーマ成分とクロマ成分のサンプル間でのＴＵパーティショニングの同期のための技法について説明する。いくつかの例では、本明細書に記載されたクロマ成分に関するＴＵパーティショニング技法は、ＨＥＶＣ  ＷＤ４において定義された現在利用可能な変換を使用することができる。したがって、本明細書に記載されたパーティショニング技法のいくつかは、ＨＥＶＣ規格のコーディングプロセスに追加の変換形状およびサイズを追加する必要なしに、ＨＥＶＣ規格のコーディングプロセスに組み込まれることができる。本明細書に記載される一例では、４：２：２サンプルフォーマットにしたがってフォーマットされたＣＵの場合、クロマ成分に関するＴＵは、それらがルーマ成分に関する対応するＴＵと同じアスペクト比を有するように、パーティショニングされ得る。さらに、本開示は、４：２：２サンプルフォーマットの場合のコード化されたブロックフラグコーディングのための技法を提供する。本開示による変換ユニットパーティショニング技法の例については、以下でさらに詳細に説明する。
【００５４】
図７は、本開示に記載された技法を利用できる、例示的なビデオ符号化および復号システム１０を示すブロック図である。具体的には、ビデオコーディングシステム１０は、４：２：２サンプルフォーマットが利用されるときに、ルーマ成分とクロマ成分とのサンプル間でＴＵパーティショニングを同期するための技法を実行するように構成され得る。図７に示されたように、システム１０は、宛先デバイス１４によって後で復号されるべき符号化されたビデオデータを生成するソースデバイス１２を含む。ソースデバイス１２および宛先デバイス１４は、デスクトップコンピュータ、ノートブック（すなわち、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスのいずれかを備えることができる。場合によっては、ソースデバイス１２および宛先デバイス１４は、ワイヤレス通信に対応することができる。
【００５５】
宛先デバイス１４は、リンク１６を介して復号されるべき符号化されたビデオデータを受信することができる。リンク１６は、ソースデバイス１２から宛先デバイス１４に符号化されたビデオデータを移動することが可能な、任意のタイプの媒体またはデバイスを備えることができる。一例では、リンク１６は、ソースデバイス１２が符号化されたビデオデータをリアルタイムで宛先デバイス１４に直接送信することを可能にするために、通信媒体を備えることができる。符号化されたビデオデータは、ワイヤレス通信プロトコルなどの通信規格にしたがって変調され、宛先デバイス１４に送信され得る。通信媒体は、無線周波数（ＲＦ）スペクトルまたは１つもしくは複数の物理伝送線などの任意のワイヤレスまたは有線の通信媒体を含むことができる。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースのネットワークの一部を形成し得る。通信媒体は、ソースデバイス１２から宛先デバイス１４への通信を容易にするために有用であり得る、ルータ、スイッチ、基地局、または任意の他の機器を含むことができる。
【００５６】
代替的に、符号化されたデータは、出力インターフェース２２からストレージデバイス３２に出力され得る。同様に、符号化されたデータは、入力インターフェースによってストレージデバイス３２からアクセスされ得る。ストレージデバイス３２は、ハードドライブ、ブルーレイ（登録商標）ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュメモリ、揮発性もしくは不揮発性メモリ、または符号化されたビデオデータを記憶するための任意の他の適切なデジタル記憶媒体など、様々な分散型のまたはローカルでアクセスされるデータ記憶媒体のいずれかを含み得る。さらなる一例では、ストレージデバイス３２は、ソースデバイス１２によって生成された符号化ビデオを保持できるファイルサーバまたは別の中間ストレージデバイスに対応し得る。宛先デバイス１４は、ストリーミングまたはダウンロードを通じて、ストレージデバイス３２から、記憶されたビデオデータにアクセスし得る。ファイルサーバは、符号化されたビデオデータを記憶し、その符号化されたビデオデータを宛先デバイス１４に送信することが可能な、任意のタイプのサーバであり得る。例示的なファイルサーバには、ウェブサーバ（たとえば、ウェブサイト用の）、ＦＴＰサーバ、ネットワーク接続ストレージ（ＮＡＳ）デバイス、またはローカルディスクドライブが含まれる。宛先デバイス１４は、インターネット接続を含む、任意の標準のデータ接続を通じて、符号化されたビデオデータにアクセスし得る。これには、ファイルサーバに記憶された符号化されたビデオデータにアクセスするのに適した、ワイヤレスチャネル（たとえば、Ｗｉ−Ｆｉ（登録商標）接続）、有線接続（たとえば、ＤＳＬ、ケーブルモデムなど）、または両方の組合せが含まれる。ストレージデバイス３２からの符号化されたビデオデータの送信は、ストリーミング送信、ダウンロード送信、または両方の組合せであり得る。
【００５７】
本開示の技法は、必ずしもワイヤレスの用途または設定に限定されない。本技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、たとえばインターネットを介したストリーミングビデオ送信、データ記憶媒体に記憶するためのデジタルビデオの符号化、データ記憶媒体に記憶されたデジタルビデオの復号、または他の用途など、様々なマルチメディア用途のいずれかのサポートで、ビデオコーディングに適用され得る。いくつかの例では、システム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、および／またはビデオテレフォニーなどの用途をサポートするために、一方向または双方向のビデオ送信をサポートするように構成され得る。
【００５８】
図７の例では、ソースデバイス１２は、ビデオソース１８と、ビデオエンコーダ２０と、出力インターフェース２２とを含む。場合によっては、出力インターフェース２２は、変調器／復調器（モデム）および／または送信機を含み得る。ビデオソース１８は、ビデオキャプチャデバイス、たとえばビデオカメラ、プリキャプチャされたビデオを含んでいるビデオアーカイブ、ビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェース、および／もしくはソースビデオとしてコンピュータグラフィックスデータを生成するためのコンピュータグラフィックスシステムなどのソース、またはそのようなソースの組合せを含み得る。一例として、ビデオソース１８がビデオカメラである場合、ソースデバイス１２および宛先デバイス１４は、いわゆるカメラフォンまたはビデオフォンを形成し得る。しかしながら、本開示に記載された技法は、概してビデオコーディングに適用可能であり、ワイヤレスおよび／または有線の用途に適用され得る。
【００５９】
ビデオエンコーダ２０は、ビデオソース１８から受信された、キャプチャされた、プリキャプチャされた、またはコンピュータ生成されたビデオを符号化する。キャプチャされた、プリキャプチャされた、またはコンピュータ生成されたビデオは、４：２：０、４：２：２または４：４：４のサンプルフォーマットを含む、上述されたサンプルフォーマットのいずれかにしたがってフォーマットされ得る。ビデオエンコーダ２０は、４：２：０、４：２：２または４：４：４のサンプルフォーマットのいずれかにしたがってフォーマットされたビデオに、ビデオコーディングを実行し得る。場合によっては、ビデオエンコーダ２０は、コーディングプロセスの一部として、キャプチャされた、プリキャプチャされた、またはコンピュータ生成されたビデオをアップサンプリングまたはダウンサンプリングすることができる。たとえば、キャプチャされたビデオは、４：４：４サンプルフォーマットにしたがってフォーマットされることができ、ビデオエンコーダ２０は、キャプチャされたビデオを４：２：２フォーマットにダウンサンプリングし、ダウンサンプリングされたビデオにビデオ符号化を実行することができる。符号化されたビデオデータは、ソースデバイス２０の出力インターフェース２２を介して、宛先デバイス１４に直接送信され得る。符号化されたビデオデータは、さらに（または代替として）、復号および／または再生のため、宛先デバイス１４または他のデバイスによる後のアクセスのためにストレージデバイス３２上に記憶され得る。
【００６０】
宛先デバイス１４は、入力インターフェース２８と、ビデオデコーダ３０と、ディスプレイデバイス３２とを含む。場合によっては、入力インターフェース２８は、受信機および／またはモデムを含み得る。宛先デバイス１４の入力インターフェース２８は、リンク１６を通じて、符号化されたビデオデータを受信する。リンク１６を通じて通信された、またはストレージデバイス３２上で提供された、符号化されたビデオデータは、ビデオデータを復号する際に、ビデオデコーダ３０などのビデオデコーダが使用するための、ビデオエンコーダ２０によって生成された様々なシンタックス要素を含み得る。そのようなシンタックス要素は、ファイルサーバに記憶され、記憶媒体上に記憶され、または通信媒体上で送信された符号化された、ビデオデータとともに含まれる場合がある。
【００６１】
ディスプレイデバイス３２は、宛先デバイス１４と一体化されるか、またはその外部にあり得る。いくつかの例では、宛先デバイス１４は、一体型ディスプレイデバイスを含み、また、外部ディスプレイデバイスとインターフェースするように構成され得る。他の例では、宛先デバイス１４はディスプレイデバイスであり得る。概して、ディスプレイデバイス３２は、復号されたビデオデータをユーザに表示し、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを含むことができる。
【００６２】
ビデオエンコーダ２０およびビデオデコーダ３０は、現在開発中の高効率ビデオコーディング（ＨＥＶＣ）規格などのビデオ圧縮規格にしたがって動作することができ、概して現在のＨＥＶＣテストモデル（ＨＭ）または将来のＨＭに準拠し得る。代替として、ビデオエンコーダ２０およびビデオデコーダ３０は、代替的にＭＰＥＧ−４、Ｐａｒｔ  １０、アドバンストビデオコーディング（ＡＶＣ）と呼ばれるＩＴＵ−Ｔ  Ｈ．２６４規格などの他のプロプライエタリ規格もしくは業界規格、またはそのような規格の改訂もしくは拡張にしたがって動作し得る。しかしながら、本開示の技法は、いずれか特定のコーディング規格に限定されない。ビデオ圧縮規格の他の例には、ＭＰＥＧ−２およびＩＴＵ−Ｔ  Ｈ．２６３が含まれる。
【００６３】
図７には示されていないが、いくつかの態様では、ビデオエンコーダ２０およびビデオデコーダ３０は、各々オーディオエンコーダおよびデコーダと一体化されることができ、共通のデータストリームまたは個別のデータストリーム内のオーディオとビデオの両方の符号化を処理するために、適切なＭＵＸ−ＤＥＭＵＸユニット、または他のハードウェアおよびソフトウェアを含むことができる。適用可能な場合、いくつかの例では、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、またはユーザデータグラムプロトコル（ＵＤＰ）などの他のプロトコルに準拠し得る。
【００６４】
ビデオエンコーダ２０およびビデオデコーダ３０は、各々、１つもしくは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアまたはそれらの任意の組合せなど、様々な適切なエンコーダ回路のいずれかとして実装され得る。本技法が部分的にソフトウェアにおいて実装されるときには、デバイスは、適切な非一時的コンピュータ可読媒体にソフトウェアのための命令を記憶し、１つまたは複数のプロセッサを使用してその命令をハードウェアで実行して、本開示の技法を実行することができる。ビデオエンコーダ２０およびビデオデコーダ３０の各々は、１つまたは複数のエンコーダまたはデコーダ内に含まれ得、そのいずれも、それぞれのデバイスにおいて複合エンコーダ／デコーダ（コーデック）の一部として一体化され得る。
【００６５】
上述されたように、ＨＥＶＣ  ＷＤ４では、ビデオフレームまたはピクチャは、ルーマサンプルとクロマサンプルの両方を含む一連のツリーブロックまたは最大コーディングユニット（ＬＣＵ：largest coding unit）に分割され得る。ＬＣＵは、関連付けられたＰＵおよびＴＵを含むＣＵへと再帰的に分割され得る。いくつかの例では、ＣＵのサイズは、８×８サンプルから、最大６４×６４サンプル以上を有するツリーブロックのサイズまで及ぶ場合がある。さらに、ＨＥＶＣ  ＷＤ４では、ビデオフレームまたはピクチャは、１つまたは複数のスライスにパーティショニングされ得、ここでスライスは、コーディング順序で連続するいくつかのＬＣＵを含む。ビデオフレームは、スライスに含まれるＣＵに関連付けられたコーディングモードに基づいて、スライスにパーティショニングされ得る。たとえば、スライスは、スライスに含まれるすべてのＣＵが、スキップモード、直接モード、イントラ予測モード、またはインター予測モードなど、共通コーディングモードを共有するように定義され得る。
【００６６】
一連のビデオフレームまたはピクチャは、ピクチャグループのコード化ビデオシーケンスの一部としてコード化され得る。ピクチャグループ（ＧＯＰ）は、概して、ビデオピクチャのうちの一連の１つまたは複数を含む。ＧＯＰは、ＧＯＰに含まれるいくつかのピクチャを記述するシンタックスデータを、ＧＯＰのヘッダ内、ピクチャのうちの１つもしくは複数のヘッダ内、または他の場所に含み得る。ピクチャの各スライスは、それぞれのスライスについて符号化モードを記述するスライスシンタックスデータを含み得る。本明細書に記載されたように、ビデオエンコーダ２０は、通常、ビデオデータを符号化するために個々のビデオスライス内のビデオブロックに対して動作する。しかしながら、ビデオエンコーダ２０はまた、ビデオフレームをスライスにパーティショニングすること、および／またはＧＯＰレベルもしくはスライスレベルのシンタックスを生成することなどの、高レベルのビデオコーディングプロセスも実行し得る。
【００６７】
上述されたように、ＣＵに関連付けられたシンタックスデータは、ＣＵの１つまたは複数のＰＵへのパーティショニングを記述し得る。ＣＵに関連付けられたシンタックスデータは、また、たとえば、４分木にしたがってＣＵを１つまたは複数のＴＵにパーティショニングすることも記述し得る。いくつかの例では、ＰＵまたはＴＵは、正方形または非正方形の形状であり得る。概して、ＰＵは、予測プロセスに関係するデータを含む。たとえば、ＰＵがイントラモード符号化されるときには、ＰＵは、ＰＵに関するイントラ予測モードを記述するデータを含み得る。別の例として、ＰＵがインターモード符号化されるときには、ＰＵは、ＰＵに関する動き情報を定義するデータを含み得る。ＰＵに関する動き情報を定義するデータは、たとえば、水平成分と垂直成分とを有する動きベクトル、解像度（たとえば、４分の１ピクセル精度または８分の１ピクセル精度）、動きベクトルに関する参照ピクチャリスト（たとえば、リスト０、リスト１、またはリストＣ）を示す予測方向、動きベクトルが参照ピクチャリスト内で指す参照ピクチャを示す参照ピクチャインデックスを記述し得る。したがって、ＰＵは、予測プロセスに関する情報を搬送する基本ユニットと考えることができる。一例では、ビデオエンコーダ２０は、ＨＥＶＣテストモデル（ＨＭ）によってサポートされるＰＵ構造にしたがってビデオデータを符号化するように構成され得る。
【００６８】
一例として、ＨＭは、様々なＰＵサイズでの予測をサポートする。特定のＣＵのサイズが２Ｎ×２Ｎであると仮定すると、ＨＭは、２Ｎ×２ＮまたはＮ×ＮのＰＵサイズでのイントラ予測と、２Ｎ×２Ｎ、２Ｎ×Ｎ、Ｎ×２Ｎ、またはＮ×Ｎの対称的なＰＵサイズでのインター予測とをサポートする。ＨＭはまた、２Ｎ×ｎＵ、２Ｎ×ｎＤ、ｎＬ×２Ｎ、およびｎＲ×２ＮのＰＵサイズでのインター予測のための非対称パーティショニングをサポートする。非対称パーティショニングでは、ＣＵの一方向はパーティショニングされず、他の方向は２５％と７５％とにパーティショニングされる。２５％パーティションに対応するＣＵの部分は、「ｎ」と、その後に続く「Ｕｐ」、「Ｄｏｗｎ」、「Ｌｅｆｔ」、または「Ｒｉｇｈｔ」のインジケーションとによって示される。したがって、たとえば、「２Ｎ×ｎＵ」は、上部の２Ｎ×０．５Ｎ  ＰＵおよび下部の２Ｎ×１．５Ｎ  ＰＵで水平方向にパーティショニングされた２Ｎ×２Ｎ  ＣＵを指す。
【００６９】
上述したように、ＴＵは、変換プロセスおよび量子化プロセスに使用される基本ユニットである。１つまたは複数のＰＵを有する所与のＣＵは、また、１つまたは複数の変換ユニット（ＴＵ）も含み得る。さらに、ＨＥＶＣ  ＷＤ４では、ＴＵは、パーティショニングされたＬＣＵについて定義された所与のＣＵ内のＰＵのサイズに基づいてサイズ決定され得るが、常にそうであるとは限らない。ＴＵは、ＰＵと同じサイズ、またはＰＵよりも小さいサイズであり得る。いくつかの例では、ＣＵに対応する残差サンプルは、「残差４分木」（ＲＱＴ：residual quad tree）として知られる４分木構造を使用して、より小さいユニットにさらに細分され得る。ＲＱＴのリーフノードは、変換ユニット（ＴＵ）と呼ばれる場合がある。
【００７０】
イントラ予測またはインター予測に続いて、ビデオエンコーダ２０は、ＰＵに対応する残差ビデオデータを計算し得る。残差値は、コード化されるべきオリジナルブロックのピクセル値と、イントラ予測またはインター予測によって形成された予測ブロックのピクセル値との間の差分を表すピクセル差分値を含む。予測ユニット内の残差ビデオデータ、すなわち残差ピクセル差分値は、変換係数を生成するために、ＴＵ構造にしたがって変換係数に変換され得る。したがって、残差データは、ピクセル領域から変換領域に変換され得る。
【００７１】
変換係数を生成するための任意の変換に続いて、ビデオエンコーダ２０は、変換係数の量子化を実行し得る。量子化は、概して、係数を表すために使用されるデータの量をできるだけ低減するために変換係数が量子化されるプロセスを指し、さらなる圧縮をもたらす。量子化プロセスは、係数の一部またはすべてに関連するビット深度を低減し得る。たとえば、量子化中にｎビット値がｍビット値に切り捨てられる場合があり、ここでｎはｍよりも大きい。
【００７２】
いくつかの例では、ビデオエンコーダ２０は、エントロピー符号化され得る直列化ベクトルを生成するために、あらかじめ定義された走査順序を利用して量子化変換係数を走査することができる。他の例では、ビデオエンコーダ２０は、適応走査を実行することができる。量子化変換係数を走査して１次元ベクトルを形成した後に、ビデオエンコーダ２０は、たとえば、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ）、確率間隔パーティショニングエントロピー（ＰＩＰＥ）コーディング、または別のエントロピー符号化方法にしたがって、１次元ベクトルをエントロピー符号化し得る。ビデオエンコーダ２０はまた、ビデオデータを復号する際にビデオデコーダ３０が使用するための符号化ビデオデータに関連するシンタックス要素をエントロピー符号化し得る。
【００７３】
ＣＡＢＡＣを実行するために、ビデオエンコーダ２０は、送信されるべきシンボルにコンテキストモデル内のコンテキストを割り当てることができる。コンテキストは、たとえば、シンボルの隣接値が非ゼロであるか否かに関係し得る。ＣＡＶＬＣを実行するために、ビデオエンコーダ２０は、送信されるべきシンボルに関して可変長コードを選択し得る。ＶＬＣ内のコードワードは、比較的短いコードが優勢シンボル（more probable symbols）に対応し、より長いコードが劣勢シンボル（less probable symbols）に対応するように構成され得る。このようにして、ＶＬＣを使用すると、たとえば、送信されるべき各シンボルについて等長コードワードを使用するよりも、ビット節約を達成し得る。確率決定は、シンボルに割り当てられたコンテキストに基づき得る。
【００７４】
上述されたように、ＨＥＶＣのメインプロファイルに記述されたＴＵ分解構造は、４：２：２サンプルフォーマットにしたがってフォーマットされたビデオデータに適用されるときに、様々な欠点を有する。ＨＥＶＣのメインプロファイルに記述されたＴＵ分解構造にしたがってビデオデータをコード化するように構成されることに加えて、ビデオエンコーダ２０およびビデオデコーダ３０は、本明細書に記載されたＴＵパーティショニング技法を使用して、ビデオデータをコード化するように構成され得る。
【００７５】
一例では、ビデオエンコーダ２０およびビデオデコーダ３０は、４：２：２サンプルフォーマットにしたがってフォーマットされたビデオに含まれる各クロマ成分のブロックを、上部クロマサブブロックと下部クロマサブブロックとにパーティショニングするように構成され得る。一例では、所与のクロマ成分の上部サブブロックおよび下部サブブロックの各々は、正方形であり得る。さらに、２つのクロマサブブロックの両方の変換ユニットパーティショニングは、ルーマ成分のパーティショニングと同期され得る。このようにして、場合によっては、ビデオデータが４：２：２サンプルフォーマットにしたがってフォーマットされるときに、クロマ成分の変換ユニットは、それがルーマ成分の対応する変換ユニットと同じアスペクト比を有するようにパーティショニングされ得る。
【００７６】
図８Ａ〜図８Ｄは、４：２：２サンプルフォーマットにしたがってフォーマットされたビデオブロックについて変換ユニットパーティショニングの様々なケースを示す。図８Ａ〜図８Ｄの各々では、クロマ成分は、最初に、ルーマ成分に基づく任意のパーティショニングの前に上部サブブロックと下部サブブロックとにパーティショニングされ得る。クロマ成分を上部サブブロックと下部サブブロックとにパーティショニングすることによって、クロマ成分が最初に上部サブブロックと下部サブブロックとにパーティショニングされない場合と比較して、代替的なＴＵの形状およびサイズが、クロマ成分のために生成され得る。
【００７７】
図８Ａ〜図８Ｄのビデオブロックは、以下のサイズ４×４、８×８、１６×１６、３２×３２、および６４×６４のいずれかのビデオブロックまたはＣＵに対応し得る。一般に、クロマ成分を上部サブブロックと下部サブブロックとにパーティショニングすることにより、クロマ成分が上部サブブロックと下部サブブロックとにパーティショニングされない場合と比較して、２倍多くのＴＵがクロマ成分に関して生成される。さらに、クロマ成分を上部サブブロックと下部サブブロックとにパーティショニングすることにより、クロマ成分が上部サブブロックと下部サブブロックとにパーティショニングされない場合と比較して、ＴＵは、ＴＵの垂直または水平寸法が２で除される場合に生成され得る。クロマ成分が上部サブブロックと下部サブブロックとにパーティショニングされるときの、ＣＵをＴＵにパーティショニングするいくつかの特定のケースについて、以下で詳細に説明する。しかしながら、簡潔にするために、クロマ成分を上部サブブロックと下部サブブロックとにパーティショニングすることから導出され得るすべての可能なＴＵパーティショニングの組合せが詳細に記載されているわけではないが、図８Ａ〜図８Ｄに関して記載されたパーティショニング技法は、様々なレベルの分解において適用され得ることに留意されたい。
【００７８】
図８Ａは、クロマ成分が上部サブブロックと下部サブブロックとにパーティショニングされ、ルーマ成分に基づくさらなるパーティショニングが適用されない場合のパーティショニング構造に基づく、例示的な変換ユニットを示す。図８Ａに示されたように、ルーマブロックはこれ以上分割されず、対応するクロマブロックの各々は、上部サブブロックと下部サブブロックとにパーティショニングされる。図８Ａに示された例では、クロマブロックが上部サブブロックと下部サブブロックとにパーティショニングされた後にクロマ成分をさらにパーティショニングする判定は、ルーマ成分のパーティショニングに基づき得る。したがって、図８Ａに示された例では、ルーマブロックがこれ以上分割されないので、クロマ成分の各々はこれ以上分割されない場合がある。
【００７９】
一例では、図８Ａに示されたＴＵパーティショニングに関連するＣＵは、８×８ＣＵであり得る。この場合、クロマ成分を上部サブブロックと下部サブブロックとにパーティショニングすると、ルーマ成分について８×８ＴＵおよびクロマ成分について２つの４×４ＴＵがもたらされる。このケースは、ルーマ成分について８×８ＴＵとクロマ成分について４×８ＴＵとをもたらす、クロマ成分が上部サブブロックと下部サブブロックとにパーティショニングされないケースと対比することができる。上述されたように、４×４ＴＵはＨＥＶＣのために定義され得るのに対し、４×８ＴＵは定義されずまたは利用可能でない。したがって、クロマ成分を上部サブブロックと下部サブブロックとにパーティショニングすると、より有用なＴＵの形状およびサイズがもたらされ得る。
【００８０】
概して、図８Ａに示されたＴＵパーティションに関連するＣＵは、Ｎ×ＮのＣＵとして記載することができる。クロマ成分を上部サブブロックと下部サブブロックとにパーティショニングすると、クロマ成分が上部サブブロックと下部サブブロックとにパーティショニングされない場合の１つのＮ／２×Ｎ  ＴＵとは対照的に、２つのＮ／２×Ｎ／２  ＴＵがもたらされる。したがって、クロマ成分を上部サブブロックと下部サブブロックとにパーティショニングすると、クロマ成分が上部サブブロックと下部サブブロックとに分割されない場合の、１対２のアスペクト比を有する１つの長方形ＴＵと比較して、２つの正方形ＴＵがもたらされる。上記で指摘されたように、この例では、クロマサブブロックの各々は、ルーマブロックと同じアスペクト比を有する。他の例では、図８Ａに関して記載された技法は、４×４、１６×１６、３２×３２、または６４×６４のＣＵに適用され得ることに留意されたい。簡潔にするために、可能なＣＵサイズに関する対応するルーマおよびクロマのＴＵサイズは、詳細には記載されない。
【００８１】
図８Ｂは、クロマ成分が上部サブブロックと下部サブブロックとにパーティショニングされ、さらなる４分木パーティショニングが適用される場合のパーティショニング構造に基づく、例示的な変換ユニットを示す。図８Ｂに示されたように、ルーマブロックは、変換目的で４個の正方形サブブロックに分割される。対応するクロマブロックは、各々、両方とも正方形である上部サブブロックと下部サブブロックとにパーティショニングされ、次いで、上部サブブロックと下部サブブロックの各々は、さらに小さいサイズを有する４個の正方形ブロックにさらにパーティショニングされる。一般に、図８ＢのＣＵは、Ｎ×ＮのＣＵとして記述することができる。ルーマ成分をパーティショニングすると、４個のＮ／２×Ｎ／２のＴＵがもたらされる。クロマ成分を上部サブブロックと下部サブブロックとにパーティショニングすると、クロマ成分が上部サブブロックと下部サブブロックとにパーティショニングされない場合の４個のＮ／４×Ｎ／２のＴＵとは対照的に、８個のＮ／４×Ｎ／４のＴＵがもたらされる。したがって、クロマ成分を上部サブブロックと下部サブブロックとにパーティショニングすると、ＴＵが上部サブブロックと下部サブブロックとに分割されない場合の、１対２のアスペクト比を有する４個の長方形ＴＵと比較して、８個の正方形ＴＵがもたらされる。図８ＢのＣＵは、４×４、８×８、１６×１６、３２×３２、または６４×６４のＣＵであり得ることに留意されたい。
【００８２】
図９は、ＣＵが１６×１６ＣＵである場合の、図８Ｂに関して記載された例示的なクロマＴＵパーティショニング技法についての、クロマ成分のＴＵパーティショニングを示す。図９に示された例では、実線がルーマ成分のパーティショニングを表し、実線および破線がクロマ成分のパーティショニングを表す。したがって、図９に示されたように、パーティショニング技法により、クロマ成分の各々について８個の４×４ＴＵ、およびルーマ成分について４個の８×８ＴＵがもたらされる。図９に示された例は、クロマ成分について４個の４×８ＴＵをもたらす、クロマ成分が上部サブブロックと下部サブブロックとにパーティショニングされないケースと対比することができる。上述されたように、４×４ＴＵはＨＥＶＣのために定義され得るが、４×８ＴＵは定義されない。したがって、クロマ成分を上部サブブロックと下部サブブロックとにパーティショニングすると、より有用なＴＵの形状およびサイズを可能にし得る。別の例では、図８Ｂに関して記載されたパーティショニング技法は、３２×３２ＣＵに適用され得、ルーマについて４個の１６×１６ＴＵとクロマについて８個の８×８ＴＵとをもたらし得る。別の例では、図８Ｂに関して記載されたパーティショニング技法は、６４×６４ＣＵに適用され得、ルーマについて４個の３２×３２ＴＵとクロマについて８個の１６×１６ＴＵとをもたらし得る。
【００８３】
さらに、いくつかのＣＵサイズの場合、図８Ａ〜図８Ｂに関して記載されたパーティショニング技法により、ＨＥＶＣで定義されないＴＵサイズがもたらされる場合があることに留意されたい。そのような場合、クロマ成分の上部サブブロックと下部サブブロックへの分割は、分割によりＨＥＶＣで定義されるＴＵがもたらされるように、選択的に適用され得る。たとえば、クロマ成分を上部サブブロックと下部サブブロックとに分割することにより、最小ＴＵサイズよりも小さい場合のある２×２ＴＵがもたらされる場合、この特定のＣＵサイズについてクロマ成分を上部サブブロックと下部サブブロックとに分割しない決定がなされ得る。
【００８４】
たとえば、８×８ルーマブロックの場合、対応するクロマブロックは、４：２：２フォーマットにしたがう４×８のサイズを有し得る。８×８ルーマブロックが４個の４×４ブロックに分割される場合、各クロマブロックは、４×４上部サブブロックと４×４下部サブブロックとにパーティショニングされ得る。しかしながら、この場合、ＨＥＶＣで定義された４×４よりも小さいサイズの正方形変換が存在しないので、クロマ成分のサブブロックのこれ以上の分割はない。したがって、クロマ成分の上部サブブロックと下部サブブロックへの分割は、最小正方形変換サイズによって制限され得る。このようにして、ルーマ成分およびクロマ成分の各々のパーティショニングは、利用可能な変換がそれに適用され得る変換ユニットをもたらすように、選択的に適用され得る。一例では、以下の正方形変換のサイズ：４×４、８×８、１６×１６および３２×３２が定義され、コーディングに利用可能であり、以下の非正方形変換のサイズ：３２×８、８×３２、１６×４および４×１６が定義され、コーディングに利用可能である。
【００８５】
上述されたように、ＣＵは、非正方形の矩形ＴＵにパーティショニングされ得る。図８Ｃおよび図８Ｄは、クロマ成分が上部サブブロックと下部サブブロックとにパーティショニングされ、さらなる非正方形の矩形パーティショニングが適用される場合のパーティショニング構造に基づく、例示的な変換ユニットを示す。図８Ｃは、クロマ成分が上部サブブロックと下部サブブロックとにパーティショニングされ、さらなる水平方向の非正方形の矩形パーティショニングが適用される場合のパーティショニング構造に基づく、例示的な変換ユニットを示す。
【００８６】
図８Ｃに示されたように、ルーマブロックは、４個の水平方向を向いた非正方形の矩形サブブロックに分割される。対応するクロマブロックは、各々、両方とも正方形である上部サブブロックと下部サブブロックとにパーティショニングされ、次いで、２つの上部サブブロックおよび下部サブブロックの各々は、さらに小さいサイズを有する４個の水平方向を向いた非正方形の矩形ブロックへとさらにパーティショニングされる。一般に、図８ＣのＣＵは、Ｎ×ＮのＣＵとして記述され得る。ルーマ成分を非正方形の矩形ＣＵにパーティショニングすると、４個のＮ×Ｎ／４のＴＵがもたらされる。クロマ成分を上部サブブロックと下部サブブロックとにパーティショニングすると、クロマ成分が上部サブブロックと下部サブブロックとにパーティショニングされない場合の４個のＮ／２×Ｎ／４のＴＵとは対照的に、８個のＮ／２×Ｎ／８のＴＵがもたらされる。したがって、クロマ成分を上部サブブロックと下部サブブロックとにパーティショニングすると、ＴＵが上部サブブロックと下部サブブロックとに分割されない場合の２対１のアスペクト比を有する４個の非正方形の矩形ＴＵと比較して、４対１のアスペクト比を有する８個の非正方形の矩形ＴＵがもたらされる。
【００８７】
一例では、図８Ｃに示されたＴＵパーティショニングに関連するＣＵは、３２×３２ＣＵであり得る。したがって、図８Ｃに関して記載されたパーティショニング技法により、ルーマ成分について４個の３２×８ＴＵと、クロマ成分について８個の１６×４ＴＵとがもたらされ得る。この例は、クロマ成分について４個の１６×８ＴＵをもたらす、クロマ成分が上部サブブロックと下部サブブロックとにパーティショニングされないケースと対比される。上述されたように、１６×４ＴＵはＨＥＶＣについて定義され、１６×８ＴＵは定義されない場合がある。したがって、クロマ成分の上部サブブロックおよび下部サブブロックへのパーティショニングは、より有用なＴＵの形状およびサイズを可能にし得る。他の例では、図８ＣのＣＵは、４×４、８×８、１６×１６、または６４×６４のＣＵであり得ることに留意されたい。
【００８８】
図８Ｄは、クロマ成分が上部サブブロックと下部サブブロックとにパーティショニングされ、さらなる垂直方向の非正方形の矩形パーティショニングが適用される場合のパーティショニング構造に基づく、例示的な変換ユニットを示す。図８Ｄに示されたように、ルーマブロックは、変換の目的で４個の垂直方向を向いた非正方形の矩形サブブロックに分割される。対応するクロマブロックは、各々、両方とも正方形である上部サブブロックと下部サブブロックとにパーティショニングされ、次いで、２つの上部サブブロックおよび下部サブブロックの各々は、さらに小さいサイズを有する４個の垂直方向を向いた非正方形の矩形ブロックにさらにパーティショニングされる。一般に、図８ＤのＣＵは、Ｎ×ＮのＣＵとして記述され得る。非正方形の矩形ＣＵへのルーマ成分のパーティショニングは、４個のＮ／４×ＮのＴＵをもたらし得る。クロマ成分の上部サブブロックおよび下部サブブロックへのパーティショニングは、クロマ成分が上部サブブロックと下部サブブロックとにパーティショニングされない場合の４個のＮ／８×ＮのＴＵとは対照的に、８個のＮ／８×Ｎ／２のＴＵをもたらし得る。したがって、クロマ成分を上部サブブロックと下部サブブロックとにパーティショニングすると、ＴＵが上部サブブロックと下部サブブロックとに分割されない場合の１対８のアスペクト比を有する４個の非正方形の矩形ＴＵと比較して、１対４のアスペクト比を有する８個の非正方形の矩形ＴＵがもたらされる。
【００８９】
一例では、図８Ｄに示されたＴＵパーティショニングに関連するＣＵは、３２×３２ＣＵであり得る。したがって、図８Ｄに関して記載されたパーティショニング技法は、ルーマ成分について４個の８×３２ＴＵとクロマ成分について８個の４×１６ＴＵとをもたらし得る。この例は、クロマ成分について４個の４×３２ＴＵをもたらす、クロマ成分が上部サブブロックと下部サブブロックとにパーティショニングされないケースと対比され得る。上述されたように、４×１６ＴＵはＨＥＶＣについて定義され、４×３２ＴＵは定義されない場合がある。したがって、クロマ成分の上部サブブロックおよび下部サブブロックへのパーティショニングは、より有用なＴＵの形状およびサイズを可能にし得る。他の例では、図８ＤのＣＵは、４×４、８×８、１６×１６、または６４×６４のＣＵであり得ることに留意されたい。
【００９０】
さらに、図８Ａ〜図８Ｂに関して上述されたように、いくつかのＣＵサイズの場合、図８Ｃ〜図８Ｄに関して記載されたパーティショニング技法は、ＨＥＶＣにおいて定義されないＴＵサイズをもたらし得ることに留意されたい。したがって、そのような場合、クロマ成分を上部サブブロックと下部サブブロックとに分割することは、その分割により、ＨＥＶＣにおいて、または他の利用可能なビデオコーディング規格もしくはプロセスにおいて定義されたＴＵがもたらされるように、選択的に適用され得る。一例では、定義された非正方形の矩形ＴＵには、３２×８、８×３２、１６×４、および４×１６のＴＵが含まれ得る。
【００９１】
さらに、図８Ａ〜図８Ｄに関して記載された例の各々について、クロマ成分が上部サブブロックと下部サブブロックとに分割され、４：２：２フォーマットの下の非分割ルーマ変換ユニットごとに、さらなる変換ユニットパーティショニングがルーマ成分と同期されるときには、一般に、各クロマ成分から利用可能な２つの非分割クロマＴＵが存在する。しかしながら、場合によっては、ルーマブロックはさらに分割され得るが、クロマブロックを分割することにより、利用可能でないＴＵ、または、ＨＥＶＣなどの適用可能なビデオコーディング規格もしくはプロセスのための最小変換ユニットサイズ未満のＴＵがもたらされる場合、対応するクロマブロックはそれ以上分割されない。
【００９２】
したがって、図８Ａ〜図８Ｄの各々は、４：２：２サンプルフォーマットにしたがってフォーマットされたビデオブロックについて、ルーマブロックに対応するクロマブロックが上部と下部の正方形サブブロックにパーティショニングされ得、ルーマブロックがさらにパーティショニングされる場合には上部サブブロックと下部サブブロックが同様の方式でパーティショニングされ得るケースを示す。たとえば、これらの技法は、正方形ルーマブロックパーティショニングの場合の正方形サブブロックパーティション、水平方向に向いたルーマブロックパーティショニングの場合の水平方向に向いたサブブロックパーティション、または垂直方向に向いたルーマブロックパーティショニングの場合の垂直方向に向いたサブブロックパーティションに適用され得る。さらに、場合によっては、例外として、ルーマブロックはパーティショニングされるが、対応するクロマブロックが上部サブブロックと下部サブブロックとに分割された後にすでに変換の最小サイズに達している場合、各クロマ成分の２つのサブブロックは、これ以上分割されない。したがって、４：２：２フォーマットの下の図８Ａ〜図８Ｄに関して記載された技法によれば、いくつかの例では、クロマ成分に関する変換ユニットは、ルーマ成分のその対応する変換ユニットと同じアスペクト比を有し得る。結果として、ＨＥＶＣ  ＷＤ４またはＷＤ８において定義された変換は、図８Ａ〜図８Ｄに関して記載された技法を使用して形成された、得られたＴＵに対して変換を実行するのに十分であり得る。したがって、いくつかの例では、図８Ａ〜図８Ｄに関して記載された技法は、追加的な変換の形状およびサイズを定義することなしに、ＨＥＶＣに組み込まれ得る。
【００９３】
このようにして、ビデオエンコーダ２０は、ビデオデータのルーマ成分について値のＮ×Ｎアレイを受信し、ビデオデータのクロマ成分について値の対応するＮ／２×Ｎアレイを受信し、クロマ成分についての値のＮ／２×Ｎアレイを２つのＮ／２×Ｎ／２サブアレイにパーティショニングし、クロマ値のサブアレイの各々に変換操作を実行するように構成することができる。ビデオデコーダ３０は、ビデオエンコーダによって生成されたアレイおよびサブアレイを受信し、逆変換操作を実行するように構成され得る。
【００９４】
さらに、上述されたように、ＨＥＶＣ  ＷＤ４は、変換係数レベルまたは変換係数のブロックが任意の非ゼロ変換係数を含むかどうかを示す、コード化ブロックフラグシンタックス要素を含む。一例では、ビデオエンコーダ２０およびビデオデコーダ３０は、本明細書に記載されたコード化ブロックフラグコーディングのための技法を使用してビデオデータをコード化するようにさらに構成され得る。いくつかの例では、コード化ブロックフラグコーディングは、インター予測モードのためだけに使用され得る。これは、イントラ予測モードがビデオブロックのための非ゼロ変換係数をもたらす可能性が高いという事実に起因し得る。
【００９５】
一例では、ビデオエンコーダ２０およびビデオデコーダ３０は、ジョイントコード化ブロックフラグを使用するように構成され得る。たとえば、クロマ成分の変換ユニットについてコード化ブロックフラグをコーディングする際、クロマ成分ごとに、ジョイントコード化ブロックフラグは、最初にクロマ成分のクロマ変換ユニットの各ペアについてシグナリングされ得る。ジョイントコード化ブロックフラグが、クロマ変換ユニットのペア内に少なくとも１つの非ゼロ係数が存在することを示す場合、１つまたは複数の追加のコード化ブロックフラグは、２つの変換ユニットの各々が任意の非ゼロ変換係数を有するかどうかをシグナリングするために送られ得る。そうではなく、ジョイントコード化ブロックフラグが、クロマ変換ユニットのペア内に少なくとも１つの非ゼロ係数が存在しないことを示す場合、クロマ成分のペアについての変換ユニットのためにさらなるシグナリングは必要とされない。一例では、クロマ成分は、４：２：２サンプルフォーマットにしたがってフォーマットされたビデオデータのクロマ成分に対応し得る。
【００９６】
図１０Ａ〜図１０Ｄは、コード化ブロックフラグコーディングについてブロック関連付けのための技法を示す概念図である。図１０Ａ〜図１０Ｄでは、図８Ａ〜図８Ｄに示されたそれぞれの変換ユニットパーティション構造が、ジョイントコード化ブロックフラグを共有し得るビデオ成分のインジケーションとともに示される。図１０Ａ〜図１０Ｄ内の例は、図８Ａ〜図８Ｄに示された変換ユニットに対応するが、ジョイントコード化ブロックフラグコーディングは、他の変換ユニットパーティショニング構造とともに利用され得ることに留意されたい。さらに、本明細書に記載されたジョイントコード化ブロックフラグコーディング技法は、４：２：２サンプルフォーマットにしたがってフォーマットされたビデオデータに特に有用であり得るが、そのような技法は、４：２：０または４：４：４のサンプルフォーマットにしたがってフォーマットされたビデオデータに適用することもできる。
【００９７】
図１０Ａ〜図１０Ｄに示されたように、ルーマ成分に関するＴＵが網掛けされ、クロマ成分の各々について２つの対応するＴＵが網掛けされる。網掛けされたＴＵは、コード化ブロックフラグに関連付けられたＴＵを表すことができる。図１０Ａ〜図１０Ｄに示されたように、クロマ成分の各々について２つのＴＵが網掛けされる。このようにして、ジョイントコード化ブロックフラグは、クロマ成分の２つの網掛けされたＴＵに関連付けられ得る。さらに、図１０Ｂ、図１０Ｃおよび図１０Ｄでは、第１の非分割ルーマブロックおよびその関連クロマブロックのみが網掛けされた領域で示されることに留意されたい。しかしながら、これらの場合、他の３つの非分割ルーマブロックの各々は、クロマ成分ごとにジョイントコード化ブロックフラグに関連付けられた２つのそれぞれのクロマブロックを有することもできることは明白である。たとえば、図１０Ｃでは、第２の水平方向のルーマＴＵは、クロマ成分の第３および第４の水平方向ＴＵに関連付けられ得る。さらに、いくつかの例では、成分のうちのいずれかが任意の非ゼロ係数を含むかどうかを示す高レベルコード化ブロックフラグは、任意の追加的なコード化コードブロックフラグがシグナリングされるべきかどうかを判定するために使用され得る。
【００９８】
一例によれば、ジョイントコード化ブロックフラグは、最初にクロマ成分のクロマ変換ユニットの各ペアについてシグナリングされ得る。ジョイントコード化ブロックフラグが、クロマ変換ユニットのペア内に少なくとも１つの非ゼロ係数が存在することを示す値（たとえば、１）を有する場合、１つまたは複数の追加のコード化ブロックフラグは、２つの変換ユニットの各々が任意の非ゼロ係数を有するかどうかをシグナリングするために送られ得る。そうではなく、ジョイントコード化ブロックフラグが、少なくとも１つの非ゼロ係数が存在しないことを示す値（たとえば、０）を有する場合、クロマ成分のクロマ変換ユニットのペアのためにさらなるシグナリングは必要とされない。たとえば、図１０Ｂでは、Ｕ成分に関して、ジョイントコード化ブロックフラグは、クロマ変換ユニットのペア、すなわち、Ｕ成分について、網掛け領域で示された、上部サブブロックおよび下部サブブロック内に任意の非ゼロ係数が存在するかどうかを示すために、符号化されたビットストリーム内でビデオエンコーダ２０によって最初にシグナリングされ得る。上述されたように、クロマ変換ユニットはサブブロックと呼ばれる場合もあり、ここでサブブロックは変換ユニットに対応する。ジョイントコード化ブロックフラグが、非ゼロ係数が存在しないことを示す値（たとえば、０）を有する場合、Ｕ成分のこれら２つの変換ユニットのためにさらなるシグナリングは必要とされない。そうでない場合、１つまたは複数の追加のコード化ブロックフラグは、各変換ユニット内に任意の非ゼロ係数が存在することを示すために、Ｕ成分内の２つの変換ユニットの各々についてシグナリングされることができる。したがって、ジョイントコード化ブロックフラグが、上部変換ユニットまたは下部変換ユニットのいずれにも非ゼロ係数が存在しないことを示す場合、変換ユニットのこのペアに対応する変換ユニットのためにさらなるシグナリングは必要とされない。
【００９９】
しかしながら、クロマ成分についてのジョイントコード化ブロックフラグが、上部変換ユニットまたは下部変換ユニット内に少なくとも１つの非ゼロ係数が存在することを示す場合、ビデオエンコーダ２０は、上部変換ユニット内に少なくとも１つの非ゼロ係数が存在するかどうかを示す上部変換ユニットのためのコード化ブロックフラグを生成し、下部変換ユニット内に少なくとも１つの非ゼロ係数が存在するかどうかを示す下部変換ユニットのための別のコード化ブロックフラグを生成し得る。一例では、コード化ブロックフラグのシグナリングは、Ｕ成分およびＶ成分の各々について同じ方法で実施され得る。
【０１００】
一例では、クロマ変換ユニットのペアについてのジョイントコード化ブロックフラグが、クロマ変換ユニットのペア内に少なくとも１つの非ゼロ係数が存在することを示す値（たとえば、１）を有し、このペアの第１の変換ユニットについてシグナリングされた追加のコード化ブロックフラグが、非ゼロ係数が存在しないことを示す値（たとえば、０）を有する場合、このケースでは、第２の変換ユニットは、少なくとも１つの非ゼロ変換係数を有していなければならず、そのコード化ブロックフラグの値は（たとえば、１と）推測され得る。この場合、上部変換ユニットまたは下部変換ユニットのいずれかが非ゼロ変換係数を含むことを示すジョイントコード化ブロックフラグを所与とし、上部変換ユニットが非ゼロ変換係数を含まないことを示す、上部変換ユニットについて送られた第１のコード化ブロックフラグを所与として、第２の変換ユニットが非ゼロ係数を含まなければならないことが知られているので、このペアの第２の変換ユニットについてコード化ブロックフラグをシグナリングする必要はない。
【０１０１】
図１１は、本開示に記載されたクロマ成分についての、変換ユニットパーティショニング、およびコード化ブロックフラグコーディングのためのブロック関連付けのための方法の一例を示すフローチャートである。図１１に示された方法は、ビデオエンコーダ２０によって実行されるものとして記載される。しかしながら、そのような記載は説明を目的としたものであり、図１１に示された方法は、ビデオエンコーダに含まれる構成要素の任意の組合せによって実行することができる。ビデオエンコーダの構成要素の例は、図１２に記載されたビデオエンコーダ２０に関して以下でさらに詳細に記載される。さらに、図１１に示された方法とは逆の方法が、ビデオデコーダ３０によって、またはビデオデコーダに含まれる構成要素の任意の組合せによって実施され得ることに留意されたい。ビデオデコーダの構成要素の例は、図１４に関して、以下でさらに詳細に記載される。逆プロセスでは、ビデオデコーダは符号化ビットストリームからビデオブロックとシンタックス要素とを受信または取得し得ることに留意されたい。
【０１０２】
図１１に示された例示的な方法に示されたように、ビデオエンコーダ２０は、ビデオデータの４：２：２サンプルフォーマットを選択する（１１０２）。他の例では、ビデオエンコーダ２０は、上述された４：２：０および４：４：４のサンプルフォーマットなどの他のサンプルフォーマットを選択し得る。ビデオエンコーダ２０は、ルーマブロックについて、クロマ成分Ｕのための対応する上部サブブロックおよび下部サブブロックと、クロマ成分Ｖのための対応する上部サブブロックおよび下部サブブロックとを生成する（１１０４）。対応するクロマサブブロックは、上述されたように、最小変換ユニットサイズに制約される、ルーマサブパーティションごとの連続分解レベルで生成されることができる。ビデオエンコーダ２０は、サブブロックのペアのいずれかが、少なくとも１つの非ゼロ係数を含むかどうかを判定し、ジョイントコード化ブロックフラグ（ＣＢＦ）を生成する（１１０６）。一例では、ジョイントＣＢＦは、サブブロックの両方に非ゼロ係数が存在しない場合の値ゼロと、それぞれのクロマ成分（ＵまたはＶ）のサブブロックのいずれかに非ゼロ係数が存在する場合の値１とを有し得る。非ゼロ係数が存在せず、ジョイントＣＢＦがゼロに等しい場合、クロマ成分のためにさらなるシグナリングは必要とされず、次いで、ビデオエンコーダ２０は次のルーマブロックの処理に進むことができる（１１１６）。
【０１０３】
しかしながら、ジョイントＣＢＦが１に等しい場合（１１０８）、ビデオエンコーダ２０は、上部クロマサブブロックが任意の非ゼロ変換係数を含むかどうかを示すために、上部サブブロックについてコード化ブロックフラグを生成する（１１１０）。ビデオエンコーダ２０は、上部クロマサブブロックについてのＣＢＦがゼロに等しいかどうかを判定する（１１１２）。上部クロマサブブロックについてのＣＢＦがゼロに等しい場合、いくつかの例では、下部サブブロックが非ゼロ変換係数を含まなければならないことが推測され得る。この場合、下部サブブロックについてのコード化ブロックフラグを生成する必要はなく、ビデオエンコーダ２０は次のルーマブロックの処理に進むことができる（１１１６）。
【０１０４】
しかしながら、上部クロマサブブロックについてのＣＢＦが１に等しい場合、上部サブブロックが少なくとも１つの非ゼロ変換係数を含むことは明らかであるが、下部サブブロックが少なくとも１つの非ゼロ変換係数を含む場合があることも考えられる。したがって、この場合、ビデオエンコーダ２０は、下部クロマサブブロックが非ゼロ変換係数を含まない場合のゼロの値と、下部クロマサブブロックが少なくとも１つの非ゼロ変換係数を含む場合の１の値とを有する、下部サブブロックについてのＣＢＦを生成する（１１１４）。ビデオエンコーダ２０は次いで、次のルーマブロックの処理に進む（１１１６）。いくつかの例では、次のルーマブロックは、異なるルーマブロック、またはルーマブロックのさらなるパーティショニングによって生成されたルーマブロックであり得る。
【０１０５】
図１１を参照して記載されたプロセスは、所与のルーマ成分に対応するＵとＶの両方のクロマ成分について、同じ方式で実行することができる。加えて、ビデオデコーダ３０は、逆の（reciprocal）または反対の（inverse）方式でビットストリームを解析および復号して、４：２：２サンプルフォーマットを有するルーマブロックおよびクロマブロックについて変換係数を取得することができる。
【０１０６】
このようにして、ビデオエンコーダ２０およびビデオデコーダ３０は、クロマサブブロックについてジョイントコード化ブロックフラグをコード化するように構成されたビデオコーダの例を表し、ジョイントコード化ブロックフラグは、クロマサブブロックが少なくとも１つの非ゼロ変換係数を含むかどうかを示す。加えて、方法は、クロマサブブロックが１つの非ゼロ変換係数を含むことをジョイントコード化ブロックフラグが示すときに、クロマサブブロックのうちの第１のものについてコード化ブロックフラグをコード化することをさらに備えることができ、コード化ブロックフラグは、クロマサブブロックのうちの第１のものが少なくとも１つの非ゼロ係数を含むかどうかを示す。
【０１０７】
さらに、方法は、クロマサブブロックのうちの第１のものが少なくとも１つの非ゼロ係数を含まないことをコード化ブロックフラグが示すときには、クロマサブブロックのうちの第２のものについてコード化ブロックフラグをコード化しないことと、クロマサブブロックのうちの第１のものが少なくとも１つの非ゼロ係数を含むことをコード化ブロックフラグが示すときには、クロマサブブロックのうちの第２のものについてコード化ブロックフラグをコード化することとを備えることができ、クロマサブブロックのうちの第２のものについてコード化ブロックフラグは、クロマサブブロックのうちの第２のものが少なくとも１つの非ゼロ変換係数を含むかどうかを示す。
【０１０８】
上述されたように、コーディング操作は、符号化操作としてビデオエンコーダによって、または復号操作としてビデオデコーダによって実行される。本開示に記載された技法を使用して、ビデオエンコーダ２０またはビデオデコーダ３０は、ＨＥＶＣ規格に矛盾しないサイズおよび形状の変換をブロックおよびサブブロックに適用するように構成され得る。
【０１０９】
ＨＥＶＣのＨＭにしたがったＣＵ、ＰＵおよびＴＵの処理および構成の説明が例示のために提供されたが、そのような説明は、本明細書に広く例示および記載された本開示の技法を限定するものと考えられるべきではない。本開示に記載された変換ユニットパーティショニングおよびコード化ブロックフラグシグナリングの技法、ならびに他の技法は、ＨＥＶＣ規格に準拠するように公式化されたビデオコーディングプロセスを無条件に含む、様々な既存または将来のビデオコーディングプロセスのいずれかに広く適用可能であり得る。
【０１１０】
ビデオエンコーダ２０は、変換係数をコーディングするための本開示の技法のいずれかまたはすべてを実装することができる。同様に、ビデオデコーダ３０は、変換係数をコーディングするためのこれらの技法のいずれかまたはすべての逆バージョンを実装することができる。本開示に記載されたビデオコーダは、ビデオエンコーダまたはビデオデコーダを指す場合がある。同様に、ビデオコーディングユニットは、ビデオエンコーダまたはビデオデコーダを指す場合がある。同様に、ビデオコーディングはビデオ符号化（video encoding）またはビデオ復号（video decoding）を指す場合がある。
【０１１１】
図１２は、本開示に記載された技法を実装できる、例示的なビデオエンコーダ２０を示すブロック図である。ビデオエンコーダ２０は、ビデオスライス内のビデオブロックのイントラコーディングおよびインターコーディングを実行することができる。イントラコーディングは、所与のビデオフレームまたはピクチャ内のビデオの空間的冗長性を低減または除去するために、空間的予測に依拠する。インターコーディングは、ビデオシーケンスの隣接するフレームまたはピクチャ内のビデオの時間的冗長性を低減または除去するために、時間的予測に依拠する。イントラモード（Ｉモード）は、いくつかの空間ベース圧縮モードのうちのいずれかを指す場合がある。単方向予測（Ｐモード）または双予測（Ｂモード）などのインターモードは、いくつかの時間ベース圧縮モードのうちのいずれかを指す場合がある。
【０１１２】
図１２の例では、ビデオエンコーダ２０は、パーティショニングモジュール３５と、予測モジュール４１と、参照ピクチャメモリ６４と、加算器５０と、変換モジュール５２と、量子化モジュール５４と、エントロピー符号化モジュール５６とを含む。予測モジュール４１は、動き推定モジュール４２と、動き補償モジュール４４と、イントラ予測モジュール４６とを含む。ビデオブロック再構成のために、ビデオエンコーダ２０はまた、逆量子化モジュール５８と、逆変換モジュール６０と、加算器６２とを含む。再構成されたビデオからブロッキネスアーティファクトを除去するために、ブロック境界をフィルタ処理するデブロッキングフィルタ（図１２には図示せず）も含まれる場合がある。望まれる場合、デブロッキングフィルタは、通常、加算器６２の出力をフィルタ処理する。デブロッキングフィルタに加えて、さらなるループフィルタ（ループ内またはループ後）が使用されることもできる。
【０１１３】
図１２に示されたように、ビデオエンコーダ２０はビデオデータを受信し、パーティショニングモジュール３５はデータをビデオブロックへとパーティショニングする。パーティショニングモジュール３５は、予測モジュール４１と連携して動作して、ビデオデータをどのようにパーティショニングするかを決定することができる。場合によっては、パーティショニングモジュールおよび／または予測モジュール４１は、レートひずみ分析に基づいてビデオデータをパーティショニングすることができる。受信されたビデオデータは、上述されたサンプルフォーマットのいずれかにしたがってフォーマットされ得る。たとえば、ビデオデータは、４：２：２サンプルフォーマットにしたがってフォーマットされ得る。パーティショニングには、たとえば、ＬＣＵおよびＣＵの４分木構造にしたがって、スライス、タイル、または他のより大きいユニットへとビデオデータをパーティショニングすること、ならびにビデオブロックパーティショニングが含まれる。ビデオエンコーダ２０は、一般に、符号化されるべきビデオスライス内のビデオブロックを符号化する構成要素を示す。スライスは、複数のビデオブロックへと（場合によっては、タイルと呼ばれるビデオブロックのセットへと）分割され得る。いくつかの例では、パーティショニングモジュール３５は、図８Ａ〜図８Ｄおよび図９に関して上述された技法により、ビデオデータをパーティショニングすることができる。たとえば、パーティショニングモジュール３５は、ビデオデータのルーマ成分については残差値のＮ×Ｎアレイ、およびクロマ成分については残差値の２つの対応するＮ／２×Ｎ／２サブアレイが、予測コーディングプロセスの結果として生成されるように、ビデオデータをパーティショニングすることができる。
【０１１４】
予測モジュール４１は、誤り結果（たとえば、コーディングレートおよびひずみレベル）に基づいて、現在ビデオブロックについて、複数のイントラコーディングモードのうちの１つ、または複数のインターコーディングモードのうちの１つなどの、複数の可能なコーディングモードのうちの１つを選択することができる。予測モジュール４１は、得られたイントラコード化ブロックまたはインターコード化ブロックを加算器５０に供給して残差ブロックデータを生成し、加算器６２に供給して参照ピクチャとして使用するための符号化ブロックを再構成することができる。
【０１１５】
予測モジュール４１内のイントラ予測モジュール４６は、空間圧縮を行うためにコーディングされるべき現在ブロックと同じフレームまたはスライス内の１つまたは複数の隣接ブロックに対する現在ビデオブロックのイントラ予測コーディングを実行することができる。予測モジュール４１内の動き推定モジュール４２および動き補償モジュール４４は、時間圧縮を行うために、１つまたは複数の参照ピクチャ内の１つまたは複数の予測ブロックに対する現在ビデオブロックのインター予測コーディングを実行する。
【０１１６】
動き推定モジュール４２は、ビデオシーケンスのための所定のパターンにしたがって、ビデオスライスのためのインター予測モードを決定するように構成することができる。所定のパターンは、シーケンス内のビデオスライスを、Ｐスライス、Ｂスライスまたは一般化されたＰ／Ｂ（ＧＰＢ）スライスとして指定することができる。動き推定モジュール４２および動き補償モジュール４４は、高度に統合され得るが、概念的な目的のために別々に示されている。動き推定モジュール４２によって実行される動き推定は、ビデオブロックに関する動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、たとえば、参照ピクチャ内の予測ブロックに対する現在ビデオフレームまたはピクチャ内のビデオブロックのＰＵの変位を示し得る。
【０１１７】
インターコーディングの場合の予測ブロックは、絶対差の和（ＳＡＤ）、２乗差の和（ＳＳＤ）、または他の差分メトリックによって決定され得るピクセル差分に関して、コード化されるべきビデオブロックのＰＵに厳密に一致することがわかっているブロックであり得る。代替として、イントラコーディングの場合の予測ブロックは、１つまたは複数の隣接ブロックからのピクセル値に関する空間予測に基づいて形成されたブロックであり得る。いくつかの例では、インター予測の場合、ビデオエンコーダ２０は、参照ピクチャメモリ６４に記憶された参照ピクチャのサブ整数ピクセル位置に関する値を計算することができる。たとえば、ビデオエンコーダ２０は、参照ピクチャの１／４ピクセル位置、１／８ピクセル位置、または他の分数ピクセル位置の値を補間することができる。したがって、動き推定モジュール４２は、フルピクセル位置と分数ピクセル位置とに対する動き探索を実行し、分数ピクセル精度で動きベクトルを出力することができる。
【０１１８】
動き推定モジュール４２は、ＰＵの位置を参照ピクチャの予測ブロックの位置と比較することによって、インターコード化スライス内のビデオブロックのＰＵのための動きベクトルを計算する。参照ピクチャは、第１の参照ピクチャリスト（リスト０）または第２の参照ピクチャリスト（リスト１）から選択でき、それらの各々は、参照ピクチャメモリ６４に記憶された１つまたは複数の参照ピクチャを識別する。動き推定モジュール４２は、計算された動きベクトルをエントロピー符号化モジュール５６と動き補償モジュール４４とに送る。
【０１１９】
動き補償モジュール４４によって実行される動き補償は、動き推定によって決定された動きベクトルに基づいて予測ブロックをフェッチするまたは生成すること、場合によってはサブピクセル精度まで補間を実行することを含む。現在ビデオブロックのＰＵのための動きベクトルを受信すると、動き補償モジュール４４は、動きベクトルが参照ピクチャリストのうちの１つの中で指す予測ブロックの位置を特定することができる。
【０１２０】
ビデオエンコーダ２０は、コード化されている現在ビデオブロックのピクセル値から予測ブロックのピクセル値を減算し、ピクセル差分値を形成することによって、インターコーディングまたはイントラコーディングについて、残差ビデオブロックを形成する。ピクセル差分値は、ブロックに関する残差データを形成し、ルーマ差分成分とクロマ差分成分の両方を含み得る。加算器５０は、この減算操作を実行する１つまたは複数の構成要素を表す。動き補償モジュール４４はまた、ビデオスライスのビデオブロックを復号する際にビデオデコーダ３０が使用するためのビデオブロックおよびビデオスライスに関連するシンタックス要素を生成することができる。
【０１２１】
イントラ予測モジュール４６は、上述されたように、動き推定モジュール４２および動き補償モジュール４４によって実行されるインター予測の代替として、現在ブロックをイントラ予測することができる。詳細には、イントラ予測モジュール４６は、現在ブロックを符号化するために使用すべきイントラ予測モードを決定することができる。いくつかの例では、イントラ予測モジュール４６は、たとえば別々の符号化パス中に、様々なイントラ予測モードを使用して現在ブロックを符号化でき、イントラ予測モジュール４６（または、いくつかの例では、モード選択モジュール４０）は、テストされたモードから使用すべき適切なイントラ予測モードを選択することができる。
【０１２２】
たとえば、イントラ予測モジュール４６は、様々なテストされたイントラ予測モードについてレートひずみ分析を使用してレートひずみ値を計算し、テストされたモードの中で最良のレートひずみ特性を有するイントラ予測モードを選択することができる。レートひずみ分析は、一般に、符号化ブロックと、符号化ブロックを生成するために符号化された、オリジナルの符号化されていないブロックとの間のひずみ（または誤差）の量、ならびに符号化ブロックを生成するために使用されるビットレート（すなわち、ビット数）を決定する。イントラ予測モジュール４６は、様々な符号化ブロックについてひずみおよびレートから比率を計算して、どのイントラ予測モードがブロックについて最良のレートひずみ値を示すかを決定することができる。レートひずみ分析は、色成分の組合せに対して実行され得ることに留意されたい。
【０１２３】
いずれの場合も、あるブロックについてイントラ予測モードを選択した後、イントラ予測モジュール４６は、エントロピーコーディングモジュール５６にブロックについて選択されたイントラ予測モードを示す情報を提供することができる。エントロピーコーディングモジュール５６は、本開示の技法による、選択されたイントラ予測モードを示す情報を符号化することができる。ビデオエンコーダ２０は、送信ビットストリーム内に、複数のイントラ予測モードインデックステーブルおよび複数の変更された（コードワードマッピングテーブルとも呼ばれる）イントラ予測モードインデックステーブルを含み得る構成データ、様々なブロックに関する符号化コンテキストの定義、コンテキストの各々に使用すべき、最も可能性の高いイントラ予測モード、イントラ予測モードインデックステーブル、および修正イントラ予測モードインデックステーブルの指示を含み得る。
【０１２４】
予測モジュール４１が、インター予測またはイントラ予測のいずれかを介して、現在ビデオブロックのための予測ブロックを生成した後、ビデオエンコーダ２０は、現在ビデオブロックから予測ブロックを減算することによって残差ビデオブロックを形成する。残差ブロック内の残差ビデオデータは、１つまたは複数のＴＵに含まれ、変換モジュール５２に適用され得る。変換モジュール５２は、ビデオエンコーダ２０の構成要素、モジュールまたは機能ユニットを指し、変換プロセスおよび量子化プロセスのためのデータの基本ユニットであるＴＵと混同されるべきではないことに留意されたい。変換モジュール５２は、離散コサイン変換（ＤＣＴ）または概念的に類似の変換などの変換を使用して、残差ビデオデータを残差変換係数に変換する。変換モジュール５２は、残差ビデオデータをピクセル領域から周波数領域などの変換領域に変換することができる。変換モジュール５２は、得られた変換係数を量子化モジュール５４に送ることができる。
【０１２５】
上述されたように、いくつかの例では、パーティションモジュール３５は、図８Ａ〜図８Ｄおよび図９に関して上述された技法により、ビデオデータをパーティショニングすることができる。変換モジュール５２も、上述された技法により、ビデオデータをパーティショニングすることができる。一例では、変換モジュール５２は、ビデオデータのルーマ成分について残差値のＮ×Ｎアレイを受信し、ビデオデータのクロマ成分について残差値の対応するＮ／２×Ｎアレイを受信し、クロマ成分についての残差値のＮ／２×Ｎアレイをクロマ残差値の２つのＮ／２×Ｎ／２サブアレイにパーティショニングし、クロマ残差値のサブアレイの各々に変換を実行することによってクロマ成分について変換係数を生成するように構成することができる。
【０１２６】
本明細書に記載された技法は、概してビデオエンコーダ２０によって実行されることができ、ビデオエンコーダに含まれる構成要素は、本明細書に記載された技法の様々な態様を実行することができる。たとえば、本明細書に記載された技法によれば、パーティショニングモジュール３５は、最初に残差値を生成する目的でビデオデータをパーティショニングすることができ、変換モジュール５２は、変換係数を生成する目的でビデオデータをさらにパーティショニングすることができる。
【０１２７】
量子化モジュール５４は、変換係数を量子化してビットレートをさらに低減する。量子化プロセスは、係数の一部または全部に関連するビット深度を低減することができる。量子化の程度は、量子化パラメータを調整することによって変更され得る。いくつかの例では、次いで、量子化モジュール５４は、量子化変換係数を含む行列の走査を実行することができる。代替として、エントロピー符号化モジュール５６が走査を実行することもできる。
【０１２８】
量子化に続いて、エントロピー符号化モジュール５６は、量子化変換係数をエントロピー符号化する。たとえば、エントロピー符号化モジュール５６は、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ）、確率間隔パーティショニングエントロピー（ＰＩＰＥ）コーディング、または別のエントロピー符号化の方法もしくは技法を実行することができる。エントロピー符号化モジュール５６によるエントロピー符号化の後、符号化ビットストリームは、ビデオデコーダ３０に送信され、または、ビデオデコーダ３０による後の送信もしくは取出しのためにアーカイブされることができる。エントロピー符号化モジュール５６はまた、コード化されている現在ビデオスライスについて動きベクトルと他のシンタックス要素とをエントロピー符号化することができる。
【０１２９】
逆量子化モジュール５８および逆変換モジュール６０は、それぞれ、参照ピクチャの参照ブロックとして後で使用するためのピクセル領域内の残差ブロックを再構成するために、逆量子化および逆変換を適用する。動き補償モジュール４４は、参照ピクチャリストのうちの１つの中の参照ピクチャのうちの１つの予測ブロックに残差ブロックを加算することによって、参照ブロックを計算することができる。動き補償モジュール４４はまた、再構成された残差ブロックに１つまたは複数の補間フィルタを適用して、動き推定において使用するためのサブ整数ピクセル値を計算することができる。加算器６２は、動き補償モジュール４４によって生成された動き補償された予測ブロックに、再構成された残差ブロックを加算して、参照ピクチャメモリ６４内に記憶するための参照ブロックを生成する。参照ブロックは、後続のビデオフレームまたはピクチャ内のブロックをインター予測するために、動き推定モジュール４２および動き補償モジュール４４よって参照ブロックとして使用されることができる。
【０１３０】
このようにして、図１２のビデオエンコーダ２０は、本開示に記載された技法にしたがって、ビデオデータのルーマ成分について残差値のＮ×Ｎアレイを受信し、ビデオデータのクロマ成分について残差値の対応するＮ／２×Ｎアレイを受信し、クロマ成分についての残差値のＮ／２×Ｎアレイをクロマ残差値の２つのＮ／２×Ｎ／２サブアレイにパーティショニングし、クロマ残差値のサブアレイの各々に対して変換を実行することによってクロマ成分について変換係数を生成するように構成された、ビデオエンコーダの一例を表す。ビデオエンコーダ２０は、ルーマ成分に対応するクロマ成分ごとに変換係数の２つのＮ／２×Ｎ／２サブアレイを生成することができる。
【０１３１】
図１３は、クロマブロックについて残差値をパーティショニングし、変換ユニットを生成する、例示的な方法を示すフローチャートである。以下では、図１３のプロセスについてビデオエンコーダに関して説明するが、本プロセスは、ビデオエンコーダ２０、パーティショニングモジュール３５、変換モジュール５２および／またはビデオエンコーダ２０の他の構成要素の任意の組合せによって実行されることができる。
【０１３２】
図１３に示されたように、ビデオエンコーダ２０は、ビデオデータのルーマ成分について残差値のＮ×Ｎアレイを取得する（１３０２）。ビデオエンコーダ２０は、ビデオデータのクロマ成分について残差値の対応するＮ／２×Ｎアレイを取得する（１３０４）。残差値のアレイを取得することは、残差値のアレイを生成するためにビデオエンコーダが使用するプロセス、または残差値のアレイを受信することを指す場合があることに留意されたい。クロマ成分は、本明細書に記載された、ＵおよびＶ、またはＣrおよびＣbのクロマ成分のうちのいずれかを含み得る。残差値は、本明細書に記載された予測コーディング技法の一部として、ビデオエンコーダ２０によって生成され得る。クロマ成分についての残差値のＮ／２×Ｎアレイが、ルーマ成分についての残差値のＮ×Ｎアレイに対応するときには、アレイは、上述されたビデオデータの４：２：２フォーマットにしたがってフォーマットされたビデオデータのＣＵに関連付けられ得ることに留意されたい。ビデオエンコーダ２０は、クロマ成分についての残差値のＮ／２×Ｎアレイを、クロマ残差値の２つのＮ／２×Ｎ／２サブアレイにパーティショニングする（１３０６）。ビデオエンコーダ２０は、クロマ残差値のサブアレイの各々に対して変換を実行することによって、クロマ成分について変換係数を生成する（１３０８）。上述されたように、２つのＮ／２×Ｎ／２サブアレイの各々に対して変換を実行することは、Ｎ／２×Ｎアレイに対して変換を実行することと比較したときに、ブロッキネスの主体的な出現を低減できることに留意されたい。ビデオエンコーダ２０は、変換係数を出力する（１３１０）。一例では、ビデオエンコーダ２０は、符号化されたビットストリームの一部として、ビデオデコーダに変換係数を出力することができる。他の例では、変換係数を出力することは、エントロピーエンコーダに変換係数を出力することを含み得ることに留意されたい。次いで、エントロピーコーダは、符号化されたビットストリームの一部として、ビデオデコーダにエントロピー符号化された変換係数を出力することができる。図１３に示された方法は、単一のクロマ成分について変換係数を生成することを記載するが、ビデオエンコーダ２０は、同様の方式で他の成分についても変換係数を生成できることに留意されたい。すなわち、ビデオエンコーダ２０は、残差値のアレイおよびサブアレイを取得し、ルーマ成分とクロマ成分の各々についてアレイに対して変換を実行することができる。
【０１３３】
図１４は、本開示に記載された技法を実装できる、例示的なビデオデコーダ３０を示すブロック図である。図１４の例では、ビデオデコーダ３０は、エントロピー復号モジュール８０と、予測モジュール８１と、逆量子化モジュール８６と、逆変換モジュール８８と、加算器９０と、参照ピクチャメモリ９２とを含む。予測モジュール８１は、動き補償モジュール８２と、イントラ予測モジュール８４とを含む。いくつかの例では、ビデオデコーダ３０は、図１２からのビデオエンコーダ２０に関して記載された符号化パスとは全体的に逆の復号パスを実行することができる。
【０１３４】
復号プロセス中に、ビデオデコーダ３０は、ビデオエンコーダ２０から、符号化されたビデオスライスのビデオブロックと、関連するシンタックス要素とを表す、符号化ビデオビットストリームを受信する。ビデオデコーダ３０のエントロピー復号モジュール８０は、ビットストリームをエントロピー復号して、量子化係数と、動きベクトルと、他のシンタックス要素とを生成する。エントロピー復号モジュール８０は、予測モジュール８１に動きベクトルと他のシンタックス要素とを送る。ビデオデコーダ３０は、ビデオスライスレベルおよび／またはビデオブロックレベルでシンタックス要素を受信することができる。
【０１３５】
ビデオスライスがイントラコード化（Ｉ）スライスとしてコード化されるときには、予測モジュール８１のイントラ予測モジュール８４は、シグナリングされたイントラ予測モードと、現在フレームまたはピクチャの、前に復号されたブロックからのデータとに基づいて、現在ビデオスライスのビデオブロックについての予測データを生成することができる。ビデオフレームがインターコード化（すなわち、Ｂ、ＰまたはＧＰＢ）スライスとしてコード化されるときには、予測モジュール８１の動き補償モジュール８２は、エントロピー復号モジュール８０から受信された動きベクトルと他のシンタックス要素とに基づいて、現在ビデオスライスのビデオブロックについての予測ブロックを生成する。予測ブロックは、参照ピクチャリストのうちの１つの中の参照ピクチャのうちの１つから生成され得る。ビデオデコーダ３０は、参照ピクチャメモリ９２に記憶された参照ピクチャに基づいて、デフォルトの構成技法を使用して、参照フレームリスト、リスト０およびリスト１を構成することができる。
【０１３６】
動き補償モジュール８２は、動きベクトルと他のシンタックス要素とを解析することによって、現在ビデオスライスのビデオブロックについての予測情報を決定し、その予測情報を使用して、復号されている現在ビデオブロックについての予測ブロックを生成する。たとえば、動き補償モジュール８２は、受信されたシンタックス要素のいくつかを使用して、ビデオスライスのビデオブロックをコード化するために使用される予測モード（たとえば、イントラ予測またはインター予測）と、インター予測スライスタイプ（たとえば、Ｂスライス、Ｐスライス、またはＧＰＢスライス）と、スライスのための参照ピクチャリストのうちの１つまたは複数に関する構成情報と、スライスの各インター符号化ビデオブロックについての動きベクトルと、スライスの各インターコード化ビデオブロックについてのインター予測ステータスと、現在ビデオスライス内のビデオブロックを復号するための他の情報とを決定する。
【０１３７】
動き補償モジュール８２はまた、補間フィルタに基づいて補間を実行することができる。動き補償モジュール８２は、ビデオブロックの符号化中にビデオエンコーダ２０によって使用された補間フィルタを使用して、参照ブロックのサブ整数ピクセルについて補間された値を計算することができる。この場合、動き補償モジュール８２は、受信されたシンタックス要素からビデオエンコーダ２０によって使用された補間フィルタを決定し、その補間フィルタを使用して予測ブロックを生成することができる。
【０１３８】
逆量子化モジュール８６は、ビットストリーム内で供給され、エントロピー復号モジュール８０によって復号された、量子化された変換係数を反対に量子化、すなわち逆量子化する。逆量子化プロセスは、量子化の程度と、また同様に、適用されるべき逆量子化の程度とを決定するために、ビデオスライス内のビデオブロックごとにビデオエンコーダ２０によって計算される量子化パラメータの使用を含む場合がある。
【０１３９】
逆変換モジュール８８は、変換係数を受信し、ピクセル領域内の残差ブロックを生成するために変換係数に逆変換、たとえば逆ＤＣＴ、逆整数変換、または概念的に類似の逆変換プロセスを適用する。いくつかの例では、逆変換モジュールは、図８Ａ〜図８Ｂおよび図９に関して上述された変換ユニットパーティショニング技法に基づいてビデオエンコーダによって生成された変換係数を受信することができる。一例では、逆変換モジュール８８は、ビデオデータのルーマ成分について変換係数のＮ×Ｎアレイを受信し、ビデオデータのクロマ成分について変換係数の複数の対応するＮ／２×Ｎ／２サブアレイを受信し、クロマ変換係数のＮ／２×Ｎ／２サブアレイの各々に逆変換を実行して残差サンプル値の複数のＮ／２×Ｎ／２サブアレイを生成し、残差サンプル値のＮ／２×Ｎ／２サブアレイの各々を結合してクロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成するように構成され得る。
【０１４０】
動き補償モジュール８２またはイントラ予測モジュール８４が、動きベクトルと他のシンタックス要素とに基づいて現在ビデオブロックのための予測ブロックを生成した後、ビデオデコーダ３０は、逆変換モジュール８８からの残差ブロックを動き補償モジュール８２によって生成された対応する予測ブロックと加算することによって、復号されたビデオブロックを形成する。加算器９０は、この加算操作を実行する１つまたは複数の構成要素を表す。
【０１４１】
望むなら、ブロッキネスアーティファクトを除去するために、デブロッキングフィルタがまた、復号されたブロックをフィルタ処理するために適用されることができる。ピクセル遷移を滑らかにし、または他の何らかの形でビデオ品質を改善するために、（コーディングループ内でまたはコーディングループ後に）他のループフィルタがまた使用されることができる。所与のフレームまたはピクチャ内の復号されたビデオブロックは、次いで、後続の動き補償のために使用される参照ピクチャを記憶する参照ピクチャメモリ９２に記憶される。参照ピクチャメモリ９２はまた、図１のディスプレイデバイス３２などのディスプレイデバイスに後で表示するために、復号されたビデオを記憶する。
【０１４２】
図１４のビデオエンコーダ３０は、本開示に記載された技法にしたがって、ビデオデータのルーマ成分について変換係数のＮ×Ｎアレイを受信し、ビデオデータのクロマ成分について変換係数の複数の対応するＮ／２×Ｎ／２サブアレイを受信し、クロマ変換係数のＮ／２×Ｎ／２サブアレイの各々に対して逆変換を実行して残差サンプル値の複数のＮ／２×Ｎ／２サブアレイを生成し、残差サンプル値のＮ／２×Ｎ／２サブアレイの各々を結合してクロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成するように構成された、ビデオデコーダの一例を表す。
【０１４３】
図１５は、変換係数からクロマブロックについての残差値を生成するための例示的な方法を示すフローチャートである。図１５のプロセスについて以下でビデオデコーダ３０に関して説明するが、本プロセスは、ビデオデコーダ３０、エントロピー復号モジュール８０、逆量子化モジュール８６、逆変換モジュール８８、および／またはビデオエンコーダ３０の他の構成要素の任意の組合せによって実行されることができる。
【０１４４】
図１５に示されたように、ビデオデコーダ３０は、ビデオデータのルーマ成分について変換係数のＮ×Ｎアレイを取得する（１５０２）。ビデオデコーダ３０は、ビデオデータのクロマ成分について変換係数の対応するＮ／２×Ｎ／２アレイを取得する（１５０４）。クロマ成分は、本明細書に記載された、ＵおよびＶまたはＣrおよびＣbのクロマ成分のうちのいずれかを含み得る。変換係数は、本明細書に記載された予測コーディング技法の一部としてビデオエンコーダによって生成され得る。クロマ成分についての変換係数のＮ／２×Ｎ／２サブアレイが、ルーマ成分についての係数のＮ×Ｎアレイに対応するときには、アレイは、上述されたビデオデータの４：２：２フォーマットにしたがってフォーマットされたビデオデータのＣＵに関連付けられ得ることに留意されたい。ビデオデコーダ３０は、クロマ成分について変換係数のＮ／２×Ｎ／２サブアレイの各々に対して逆変換を実行する（１５０６）。ビデオデコーダ３０は、クロマ変換係数のサブアレイの各々から得られた残差値を結合することによって、クロマ成分について残差値のアレイを生成する（１５０８）。ビデオデコーダ３０は残差値を出力する（１５１０）。一例では、ビデオデコーダ３０は、ビデオ再構成プロセスの一部として残差値を出力することができる。
【０１４５】
１つまたは複数の例では、記載された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せに実装することができる。ソフトウェアに実装される場合、機能は、１つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、またはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、たとえば、通信プロトコルにしたがって、ある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む、データ記憶媒体または通信媒体などの有形媒体に対応するコンピュータ可読記憶媒体を含み得る。このように、コンピュータ可読媒体は、概して、（１）非一時的である有形コンピュータ可読記憶媒体、または（２）信号もしくは搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示に記載された技法を実装するための命令、コードおよび／またはデータ構造を取り出すために、１つもしくは複数のコンピュータまたは１つもしくは複数のプロセッサによってアクセスできる任意の利用可能な媒体であり得る。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。
【０１４６】
限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭもしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、フラッシュメモリ、または、命令もしくはデータ構造の形態の所望のプログラムコードを記憶するために使用され、コンピュータによってアクセスできる、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。しかしながら、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザディスク（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）およびブルーレイディスク（disc）を含み、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
【０１４７】
命令は、１つもしくは複数のデジタル信号プロセッサ（ＤＳＰ）などの１つもしくは複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、または他の均等な集積回路もしくはディスクリート論理回路によって実行することができる。したがって、本明細書で使用する「プロセッサ」という用語は、前述の構造、または本明細書に記載された技法の実装に適した任意の他の構造のいずれかを指す場合がある。加えて、いくつかの態様では、本明細書に記載された機能は、符号化および復号のために構成された専用のハードウェアおよび／もしくはソフトウェアモジュール内に提供されるか、または複合コーデックに組み込まれる場合がある。また、本技法は、１つまたは複数の回路または論理要素内に完全に実装することができる。
【０１４８】
本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）、またはＩＣのセット（たとえば、チップセット）を含む、多種多様なデバイスまたは装置に実装することができる。開示された技法を実行するように構成されたデバイスの機能的態様を強調するために、様々な構成要素、モジュール、またはユニットが本開示に記載されたが、それらの構成要素、モジュール、またはユニットは、必ずしも異なるハードウェアユニットによって実現する必要があるとは限らない。むしろ、上述されたように、様々なユニットが、適切なソフトウェアおよび／またはファームウェアとともに、上述された１つまたは複数のプロセッサを含む、コーデックハードウェアユニットに組み合わせられるか、または相互動作ハードウェアユニットの集合によって提供される場合がある。
【０１４９】
様々な例が記載された。これらおよび他の例は、特許請求の範囲内に入る。
以下に本願発明の当初の特許請求の範囲に記載された発明を付記する。
［書類名］特許請求の範囲
［Ｃ１］
ビデオデータのルーマ成分について変換係数のＮ×Ｎアレイを取得することと、
ビデオデータのクロマ成分について変換係数の複数の対応するＮ／２×Ｎ／２サブアレイを取得することと、
クロマ変換係数の前記Ｎ／２×Ｎ／２サブアレイの各々に逆変換を実行して、残差サンプル値の複数のＮ／２×Ｎ／２サブアレイを生成することと、
残差サンプル値の前記Ｎ／２×Ｎ／２サブアレイの各々を結合して、前記クロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成することと
を備える、ビデオデータを復号するための方法。
［Ｃ２］
ビデオデータのルーマ成分について変換係数の複数のＮ／２×Ｎ／２サブアレイを取得することと、
ビデオデータのクロマ成分について変換係数の複数の対応するＮ／４×Ｎ／４サブアレイを取得することと、
クロマ変換係数の前記複数のＮ／４×Ｎ／４サブアレイの各々に逆変換を実行して、残差サンプル値の複数のＮ／４×Ｎ／４サブアレイを生成することと、
残差サンプル値の前記Ｎ／４×Ｎ／４サブアレイの各々を結合して、前記クロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成することと
を備える、ビデオデータを復号するための方法。
［Ｃ３］
Ｎが１６に等しく、ビデオデータの前記ルーマ成分について変換係数の前記複数のＮ／２×Ｎ／２サブアレイが４個のサブアレイを含み、前記クロマ成分の変換係数の前記複数の対応するＮ／４×Ｎ／４サブアレイが８個のサブアレイを含む、Ｃ２に記載の方法。
［Ｃ４］
ビデオデータのルーマ成分について変換係数の４個のＮ×Ｎ／４サブアレイを取得することと、
ビデオデータのクロマ成分について変換係数の８個の対応するＮ／２×Ｎ／８サブアレイを取得することと、
クロマ変換係数の前記Ｎ／２×Ｎ／８サブアレイの各々に逆変換を実行して、残差サンプル値の８個のＮ／２×Ｎ／８サブアレイを生成することと、
残差サンプル値の前記Ｎ／２×Ｎ／８サブアレイの各々を結合して、前記クロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成することと
を備える、ビデオデータを復号するための方法。
［Ｃ５］
Ｎが３２に等しい、Ｃ４に記載の方法。
［Ｃ６］
ビデオデータのルーマ成分について変換係数のＮ×Ｎアレイを取得することと、
ビデオデータのクロマ成分について変換係数の複数の対応するＮ／２×Ｎ／２サブアレイを取得することと、
クロマ変換係数の前記Ｎ／２×Ｎ／２サブアレイの各々に逆変換を実行して、残差サンプル値の複数のＮ／２×Ｎ／２サブアレイを生成することと、
残差サンプル値の前記Ｎ／２×Ｎ／２サブアレイの各々を結合して、前記クロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成することと
を行うように構成された１つまたは複数のプロセッサを備える、ビデオ復号デバイス。
［Ｃ７］
ビデオデータのルーマ成分について変換係数の複数のＮ／２×Ｎ／２サブアレイを取得することと、
ビデオデータのクロマ成分について変換係数の複数の対応するＮ／４×Ｎ／４サブアレイを取得することと、
クロマ変換係数の前記複数のＮ／４×Ｎ／４サブアレイの各々に逆変換を実行して、残差サンプル値の複数のＮ／４×Ｎ／４サブアレイを生成することと、
残差サンプル値の前記Ｎ／４×Ｎ／４サブアレイの各々を結合して、前記クロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成することと
を行うように構成された１つまたは複数のプロセッサを備える、ビデオ復号デバイス。
［Ｃ８］
Ｎが１６に等しく、ビデオデータの前記ルーマ成分について変換係数の前記複数のＮ／２×Ｎ／２サブアレイが４個のサブアレイを含み、前記クロマ成分の変換係数の前記複数の対応するＮ／４×Ｎ／４サブアレイが８個のサブアレイを含む、Ｃ７に記載のビデオ復号デバイス。
［Ｃ９］
ビデオデータのルーマ成分について変換係数の４個のＮ×Ｎ／４サブアレイを取得することと、
ビデオデータのクロマ成分について変換係数の８個の対応するＮ／２×Ｎ／８サブアレイを取得することと、
クロマ変換係数の前記Ｎ／２×Ｎ／８サブアレイの各々に逆変換を実行して、残差サンプル値の８個のＮ／２×Ｎ／８サブアレイを生成することと、
残差サンプル値の前記Ｎ／２×Ｎ／８サブアレイの各々を結合して、前記クロマ成分について残差サンプル値のＮ／２×Ｎアレイを形成することと
を行うように構成された１つまたは複数のプロセッサを備える、ビデオ復号デバイス。
［Ｃ１０］
Ｎが３２に等しい、Ｃ９に記載のビデオ復号デバイス。
［Ｃ１１］
ビデオデータのルーマ成分について残差値のＮ×Ｎアレイを取得することと、
ビデオデータのクロマ成分について残差値の対応するＮ／２×Ｎアレイを取得することと、
前記クロマ成分についての残差値の前記Ｎ／２×Ｎアレイを、クロマ残差値の２個のＮ／２×Ｎ／２サブアレイにパーティショニングすることと、
クロマ残差値の前記サブアレイの各々に変換を実行して、前記クロマ成分について変換係数を生成することと
を備える、ビデオデータを符号化するための方法。
［Ｃ１２］
前記ルーマ成分について残差値の前記Ｎ×Ｎアレイをルーマ残差値の４個のサブアレイにパーティショニングすることと、前記ルーマ成分についての残差値の前記Ｎ×Ｎアレイに適用された前記パーティショニングに少なくとも部分的に基づいて、クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々をクロマ残差値の４個のサブアレイにさらにパーティショニングすることとをさらに備える、Ｃ１１に記載の方法。
［Ｃ１３］
前記ルーマ成分についての残差値の前記Ｎ×Ｎアレイをルーマ残差値の４個のサブアレイにパーティショニングすることが、ルーマ残差値の４個の８×８サブアレイをもたらし、クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々をクロマ残差値の４個のサブアレイにさらにパーティショニングすることが、クロマ残差値の８個の４×４サブアレイをもたらす、Ｃ１２に記載の方法。
［Ｃ１４］
前記ルーマ成分についての残差値の前記Ｎ×Ｎアレイをルーマ残差値の４個のサブアレイにパーティショニングすることが、４対１のアスペクト比を有するルーマ残差値の４個のサブアレイをもたらし、前記ルーマ成分についての残差値の前記Ｎ×Ｎアレイに適用された前記パーティショニングに少なくとも部分的に基づいて、クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々をクロマ残差値の４個のサブアレイにさらにパーティショニングすることが、４対１のアスペクト比を有するクロマ残差値の８個のサブアレイをもたらす、Ｃ１２に記載の方法。
［Ｃ１５］
前記クロマ成分についての残差値の前記Ｎ／２×Ｎアレイをクロマ残差値の２個のＮ／２×Ｎ／２サブアレイにパーティショニングすることが、前記２個のＮ／２×Ｎ／２サブアレイが最小変換ユニットサイズ未満である場合、残差値の前記Ｎ／２×Ｎアレイをクロマ残差値の２個のＮ／２×Ｎ／２サブアレイにパーティショニングしないと決定することを含む、Ｃ１１に記載の方法。
［Ｃ１６］
ビデオデータのルーマ成分について残差値のＮ×Ｎアレイを取得することと、
ビデオデータのクロマ成分について残差値の対応するＮ／２×Ｎアレイを取得することと、
前記クロマ成分についての残差値の前記Ｎ／２×Ｎアレイを、クロマ残差値の２個のＮ／２×Ｎ／２サブアレイにパーティショニングすることと、
クロマ残差値の前記サブアレイの各々に変換を実行して、前記クロマ成分について変換係数を生成することと
を行うように構成された１つまたは複数のプロセッサを備える、ビデオ符号化デバイス。
［Ｃ１７］
前記１つまたは複数のプロセッサが、前記ルーマ成分についての残差値の前記Ｎ×Ｎアレイをルーマ残差値の４個のサブアレイにパーティショニングすることと、前記ルーマ成分についての残差値の前記Ｎ×Ｎアレイに適用された前記パーティショニングに少なくとも部分的に基づいて、クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々をクロマ残差値の４個のサブアレイにさらにパーティショニングすることとを行うようにさらに構成された、Ｃ１６に記載のデバイス。
［Ｃ１８］
前記ルーマ成分について残差値の前記Ｎ×Ｎアレイをルーマ残差値の４個のサブアレイにパーティショニングすることが、ルーマ残差値の４個の８×８サブアレイをもたらし、クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々をクロマ残差値の４個のサブアレイにさらにパーティショニングすることが、クロマ残差値の８個の４×４サブアレイをもたらす、Ｃ１７に記載のデバイス。
［Ｃ１９］
前記ルーマ成分について残差値の前記Ｎ×Ｎアレイをルーマ残差値の４個のサブアレイにパーティショニングすることが、４対１のアスペクト比を有するルーマ残差値の４個のサブアレイをもたらし、前記ルーマ成分について残差値の前記Ｎ×Ｎアレイに適用された前記パーティショニングに少なくとも部分的に基づいて、クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々をクロマ残差値の４個のサブアレイにさらにパーティショニングすることが、４対１のアスペクト比を有するクロマ残差値の８個のサブアレイをもたらす、Ｃ１７に記載のデバイス。
［Ｃ２０］
前記クロマ成分について残差値の前記Ｎ／２×Ｎアレイをクロマ残差値の２個のＮ／２×Ｎ／２サブアレイにパーティショニングすることが、前記２個のＮ／２×Ｎ／２サブアレイが最小変換ユニットサイズ未満である場合、残差値の前記Ｎ／２×Ｎアレイをクロマ残差値の２個のＮ／２×Ｎ／２サブアレイにパーティショニングしないと決定することを含む、Ｃ１６に記載のデバイス。
［Ｃ２１］
実行されたとき１つまたは複数のプロセッサに、
ビデオデータのルーマ成分について残差値のＮ×Ｎアレイを取得することと、
ビデオデータのクロマ成分について残差値の対応するＮ／２×Ｎアレイを取得することと、
前記クロマ成分について残差値の前記Ｎ／２×Ｎアレイを、クロマ残差値の２個のＮ／２×Ｎ／２サブアレイにパーティショニングすることと、
クロマ残差値の前記サブアレイの各々に変換を実行して、前記クロマ成分について変換係数を生成することと
を行わせる命令を記憶した、非一時的コンピュータ可読媒体。
［Ｃ２２］
前記命令が、１つまたは複数のプロセッサに、前記ルーマ成分について残差値の前記Ｎ×Ｎアレイをルーマ残差値の４個のサブアレイにパーティショニングすることと、前記ルーマ成分について残差値の前記Ｎ×Ｎアレイに適用された前記パーティショニングに少なくとも部分的に基づいて、クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々をクロマ残差値の４個のサブアレイにさらにパーティショニングすることとをさらに行わせる、Ｃ２１に記載の非一時的コンピュータ可読媒体。
［Ｃ２３］
前記ルーマ成分について残差値の前記Ｎ×Ｎアレイをルーマ残差値の４個のサブアレイにパーティショニングすることが、ルーマ残差値の４個の８×８サブアレイをもたらし、クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々をクロマ残差値の４個のサブアレイにさらにパーティショニングすることが、クロマ残差値の８個の４×４サブアレイをもたらす、Ｃ２２に記載の非一時的コンピュータ可読媒体。
［Ｃ２４］
前記ルーマ成分について残差値の前記Ｎ×Ｎアレイをルーマ残差値の４個のサブアレイにパーティショニングすることが、４対１のアスペクト比を有するルーマ残差値の４個のサブアレイをもたらし、前記ルーマ成分について残差値の前記Ｎ×Ｎアレイに適用された前記パーティショニングに少なくとも部分的に基づいて、クロマ残差値の前記２個のＮ／２×Ｎ／２サブアレイの各々をクロマ残差値の４個のサブアレイにさらにパーティショニングすることが、４対１のアスペクト比を有するクロマ残差値の８個のサブアレイをもたらす、Ｃ２２に記載の非一時的コンピュータ可読媒体。
［Ｃ２５］
前記クロマ成分について残差値の前記Ｎ／２×Ｎアレイをクロマ残差値の２個のＮ／２×Ｎ／２サブアレイにパーティショニングすることが、前記２個のＮ／２×Ｎ／２サブアレイが最小変換ユニットサイズ未満である場合、残差値の前記Ｎ／２×Ｎアレイをクロマ残差値の２個のＮ／２×Ｎ／２サブアレイにパーティショニングしないと決定することを含む、Ｃ２１に記載の非一時的コンピュータ可読媒体。
［Ｃ２６］
クロマ成分に関連付けられた第１の変換ユニットが、少なくとも１つの非ゼロ変換係数を含むかどうかを判定することと、
前記クロマ成分に関連付けられた第２の変換ユニットが、少なくとも１つの非ゼロ変換係数を含むかどうかを判定することと、
前記第１の変換ユニットおよび前記第２の変換ユニットについてジョイントコード化ブロックフラグを生成することと
を備え、前記ジョイントコード化ブロックフラグが、前記第１の変換ユニットまたは前記第２の変換ユニットのいずれかが少なくとも１つの非ゼロ変換係数を含むかどうかを示す、ビデオデータを符号化する方法。
［Ｃ２７］
前記ジョイントコード化ブロックフラグが、前記第１の変換ユニットまたは前記第２の変換ユニットのいずれかが少なくとも１つの非ゼロ変換係数を含むことを示すとき、前記第１の変換ユニットが少なくとも１つの非ゼロ係数を含むかどうかを示すコード化ブロックフラグを生成することをさらに備える、Ｃ２６に記載の方法。
［Ｃ２８］
前記コード化ブロックフラグが、前記第１の変換ユニットが少なくとも１つの非ゼロ係数を含むことを示すとき、前記第２の変換ユニットが少なくとも１つの非ゼロ変換係数を含むかどうかを示す前記第２の変換ユニットについてのコード化ブロックフラグを生成することをさらに備える、Ｃ２７に記載の方法。
【図１Ａ】
0005932050.tif 000003
【図１Ｂ】
0005932050.tif 000004
【図１Ｃ】
0005932050.tif 000005
【図２】
0005932050.tif 000006
【図３】
0005932050.tif 000007
【図４Ａ】
0005932050.tif 000008
【図４Ｂ】
0005932050.tif 000009
【図５】
0005932050.tif 000010
【図６】
0005932050.tif 000011
【図７】
0005932050.tif 000012
【図８Ａ】
0005932050.tif 000013
【図８Ｂ】
0005932050.tif 000014
【図８Ｃ】
0005932050.tif 000015
【図８Ｄ】
0005932050.tif 000016
【図９】
0005932050.tif 000017
【図１０Ａ】
0005932050.tif 000018
【図１０Ｂ】
0005932050.tif 000019
【図１０Ｃ】
0005932050.tif 000020
【図１０Ｄ】
0005932050.tif 000021
【図１１】
0005932050.tif 000022
【図１２】
0005932050.tif 000023
【図１３】
0005932050.tif 000024
【図１４】
0005932050.tif 000025
【図１５】
0005932050.tif 000026