(57)【特許請求の範囲】
【請求項１】
ビデオデータをエンコードする方法であって、
複数のピクチャを備えるビデオシーケンスに関する最小コーディングユニットサイズを決定することであって、前記最小コーディングユニットサイズが、複数の可能コーディングユニットサイズから選択される、ことと、
前記ビデオシーケンスに関連づけられたピクチャサイズを決定することであって、前記ビデオシーケンスに関連づけられたピクチャサイズが前記最小コーディングユニットサイズの倍数として決定される、ことと、
シーケンスレベルのシンタックス情報内で、前記最小コーディングユニットサイズをシグナリングすること、およびシーケンスレベルのシンタックス情報内で前記最小コーディングユニットサイズの倍数として前記ピクチャサイズをシグナリングすることと、
前記最小コーディングユニットサイズ及び前記ピクチャサイズを使用して前記ビデオシーケンスをエンコードすることと、
を備える、方法。
【請求項２】
前記複数の可能コーディングユニットサイズが、６４×６４ピクセルのマキシマムコーディングユニットサイズを含む、請求項１に記載の方法。
【請求項３】
前記ビデオシーケンスの最小コーディングユニットサイズを決定することが、第１のピクチャの第１の最小コーディングユニットサイズを決定することと、第２のピクチャの第２の最小コーディングユニットサイズを決定することとを含み、前記第１の最小コーディングユニットサイズが前記第２の最小コーディングユニットサイズより小さく、前記ビデオシーケンスの前記最小コーディングユニットサイズが前記第１の最小コーディングユニットサイズである、請求項１に記載の方法。
【請求項４】
前記ピクチャサイズが、前記最小コーディングユニットサイズの倍数として決定されたピクチャ幅と、前記最小コーディングユニットサイズの倍数として決定されたピクチャ高さとを含む、請求項１に記載の方法。
【請求項５】
前記ピクチャサイズが、デコーデッドピクチャバッファ内に記憶されるデコードされたピクチャのピクチャサイズを指定する、請求項１に記載の方法。
【請求項６】
ビデオデータをエンコードするように構成されたデバイスであって、
複数のピクチャを備えるビデオシーケンスの最小コーディングユニットサイズを決定するための手段であって、前記最小コーディングユニットサイズが、複数の可能コーディングユニットサイズから選択される、手段と、
前記ビデオシーケンスに関連づけられたピクチャサイズを決定するための手段であって、前記ビデオシーケンスに関連づけられたピクチャサイズが前記最小コーディングユニットサイズとして決定される、手段と、
シーケンスレベルのシンタックス情報内で、前記最小コーディングユニットサイズをシグナリングするための手段、およびシーケンスレベルのシンタックス情報内で最小コーディングユニットサイズの倍数として前記ピクチャサイズをシグナリングするための手段と、
前記最小コーディングユニットサイズ及び前記ピクチャサイズを使用して前記ビデオシーケンスをエンコードするための手段と、
を備える、デバイス。
【請求項７】
前記複数の可能コーディングユニットサイズが、６４×６４ピクセルのマキシマムコーディングユニットサイズを含む、請求項６に記載のデバイス。
【請求項８】
前記ビデオシーケンスの最小コーディングユニットサイズを決定するための前記手段が、第１のピクチャの第１の最小コーディングユニットサイズを決定し、第２のピクチャの第２の最小コーディングユニットサイズを決定するための手段を含み、前記第１の最小コーディングユニットサイズが前記第２の最小コーディングユニットサイズより小さく、前記ビデオシーケンスの前記最小コーディングユニットサイズが前記第１の最小コーディングユニットサイズである、請求項６に記載のデバイス。
【請求項９】
前記ピクチャサイズが、前記最小コーディングユニットサイズの倍数として決定されたピクチャ幅と、前記最小コーディングユニットサイズの倍数として決定されたピクチャ高さとを含む、請求項６に記載のデバイス。
【請求項１０】
前記ピクチャサイズが、デコーデッドピクチャバッファ内に記憶されるデコードされたピクチャのピクチャサイズを指定する、請求項６に記載のデバイス。
【請求項１１】
ビデオエンコーダを備えるデバイスであって、前記ビデオエンコーダが、
複数のピクチャを備えるビデオシーケンスの最小コーディングユニットサイズを決定することであって、前記最小コーディングユニットサイズが、複数の可能コーディングユニットサイズから選択される、ことと、
前記ビデオシーケンスに関連づけられたピクチャサイズを決定することであって、前記ビデオシーケンスに関連づけられたピクチャサイズが前記最小コーディングユニットサイズの倍数として決定される、ことと、
シーケンスレベルのシンタックス情報内で、前記最小コーディングユニットサイズをシグナリングすること、およびシーケンスレベルのシンタックス情報内で最小コーディングユニットサイズの倍数として前記ピクチャサイズをシグナルすることと、
前記最小コーディングユニットサイズ及び前記ピクチャサイズを使用して前記ビデオシーケンスをエンコードすることと、
を行うように構成される、デバイス。
【請求項１２】
前記複数の可能コーディングユニットサイズが、６４×６４ピクセルのマキシマムコーディングユニットサイズを含む、請求項１１に記載のデバイス。
【請求項１３】
前記ビデオシーケンスの最小コーディングユニットサイズを決定することが、第１のピクチャの第１の最小コーディングユニットサイズを決定することと、第２のピクチャの第２の最小コーディングユニットサイズを決定することとを含み、前記第１の最小コーディングユニットサイズが前記第２の最小コーディングユニットサイズより小さく、前記ビデオシーケンスの前記最小コーディングユニットサイズが前記第１の最小コーディングユニットサイズである、請求項１１に記載のデバイス。
【請求項１４】
前記ピクチャサイズが、前記最小コーディングユニットサイズの倍数として決定されたピクチャ幅と、前記最小コーディングユニットサイズの倍数として決定されたピクチャ高さとを含む、請求項１１に記載のデバイス。
【請求項１５】
前記ピクチャサイズが、デコーデッドピクチャバッファ内に記憶されるデコードされたピクチャのピクチャサイズを指定する、請求項１１に記載のデバイス。
【請求項１６】
ビデオデータをエンコードするための命令を記憶したコンピュータ可読記憶媒体であって、前記命令が実行されると、プロセッサに、
複数のピクチャを備えるビデオシーケンスの最小コーディングユニットサイズを決定することであって、前記最小コーディングユニットサイズが、複数の可能コーディングユニットサイズから選択される、ことと、
前記ビデオシーケンスに関連づけられたピクチャサイズを決定することであって、前記ビデオシーケンスに関連づけられたピクチャサイズが前記最小コーディングユニットサイズの倍数として決定される、ことと、
シーケンスレベルのシンタックス情報内で、前記最小コーディングユニットサイズをシグナリングすること、およびシーケンスレベルのシンタックス情報内で最小コーディングユニットサイズの倍数として前記ピクチャサイズをシグナリングすることと、
前記最小コーディングユニットサイズ及び前記ピクチャサイズを使用して前記ビデオシーケンスをエンコードすることと、
を行わせる、コンピュータ可読記憶媒体。
【請求項１７】
前記複数の可能コーディングユニットサイズが、６４×６４ピクセルのマキシマムコーディングユニットサイズを含む、請求項１６に記載のコンピュータ可読記憶媒体。
【請求項１８】
前記ビデオシーケンスの最小コーディングユニットサイズを決定することが、第１のピクチャの第１の最小コーディングユニットサイズを決定することと、第２のピクチャの第２の最小コーディングユニットサイズを決定することとを含み、前記第１の最小コーディングユニットサイズが前記第２の最小コーディングユニットサイズより小さく、前記ビデオシーケンスの前記最小コーディングユニットサイズが前記第１の最小コーディングユニットサイズである、請求項１６に記載のコンピュータ可読記憶媒体。
【請求項１９】
前記ピクチャサイズが、前記最小コーディングユニットサイズの倍数として決定されたピクチャ幅と、前記最小コーディングユニットサイズの倍数として決定されたピクチャ高さとを含む、請求項１６に記載のコンピュータ可読記憶媒体。
【請求項２０】
前記ピクチャサイズが、デコーデッドピクチャバッファ内に記憶されるデコードされたピクチャのピクチャサイズを指定する、請求項１６に記載のコンピュータ可読記憶媒体。
【請求項２１】
ビデオデータをデコードする方法であって、
複数のコード化されたピクチャを含むコード化されたビデオシーケンスを取得することと、
前記ビデオシーケンスの最小コーディングユニットサイズを示すシーケンスレベルのシンタックス情報を取得することであって、前記最小コーディングユニットサイズが、前記ビデオシーケンスのエンコード処理において複数の可能コーディングユニットサイズから選択される、ことと、
最小コーディングユニットサイズの倍数としてシグナルされた、前記ビデオシーケンスに関連づけられたピクチャサイズを示すシーケンスレベルの情報を取得することであって、前記ピクチャサイズが、前記エンコード処理において前記最小コーディングユニットサイズの倍数として決定される、ことと、
前記最小コーディングユニットサイズ及び前記ピクチャサイズを使用して前記ピクチャをデコードすることと、
デコーデッドピクチャバッファ内に前記デコードされたピクチャを記憶することと、
を備える、方法。
【請求項２２】
前記ビデオシーケンスの第１のピクチャが第１の最小コーディングユニットサイズを有し、前記ビデオシーケンスの第２のピクチャが第２の最小コーディングユニットサイズを有し、前記第１の最小コーディングユニットサイズが前記第２の最小コーディングユニットサイズより小さく、前記最小コーディングユニットサイズが前記第１の最小コーディングユニットサイズであり、前記ピクチャサイズが前記第１の最小コーディングユニットサイズの倍数である、請求項２１に記載の方法。
【請求項２３】
前記ピクチャサイズが、前記最小コーディングユニットサイズの倍数として決定されたピクチャ幅と、前記最小コーディングユニットサイズの倍数として決定されたピクチャ高さとを含む、請求項２１に記載の方法。
【請求項２４】
前記複数の可能コーディングユニットサイズが６４×６４ピクセルのマキシマムコーディングユニットサイズを含む、請求項２１に記載の方法。
【請求項２５】
ビデオデータをデコードするように構成されたデバイスであって、
複数のコード化されたピクチャを含むコード化されたビデオシーケンスを取得するための手段と、
前記ビデオシーケンスの最小コーディングユニットサイズを示すシーケンスレベルのシンタックス情報を取得するための手段であって、前記最小コーディングユニットサイズが、前記ビデオシーケンスのエンコード処理において複数の可能コーディングユニットサイズから選択される、手段と、
最小コーディングユニットサイズの倍数としてシグナルされた、前記ビデオシーケンスに関連づけられたピクチャサイズを示すシーケンスレベルの情報を取得するための手段であって、前記ピクチャサイズが、前記エンコード処理において前記最小コーディングユニットサイズの倍数として決定される、手段と、
前記最小コーディングユニットサイズ及び前記ピクチャサイズを使用して前記ピクチャをデコードするための手段と、
デコーデッドピクチャバッファ内に前記デコードされたピクチャを記憶するための手段と、
を備える、デバイス。
【請求項２６】
前記ビデオシーケンスの第１のピクチャが、第１の最小コーディングユニットサイズを有し、前記ビデオシーケンスの第２のピクチャが第２の最小コーディングユニットサイズを有し、前記第１の最小コーディングユニットサイズが前記第２の最小コーディングユニットサイズより小さく、前記最小コーディングユニットサイズが前記第１の最小コーディングユニットサイズであり、前記ピクチャサイズが前記第１の最小コーディングユニットサイズの倍数である、請求項２５に記載のデバイス。
【請求項２７】
前記ピクチャサイズが、前記最小コーディングユニットサイズの倍数として決定されたピクチャ幅と、前記最小コーディングユニットサイズの倍数として決定されたピクチャ高さとを含む、請求項２５に記載のデバイス。
【請求項２８】
前記複数の可能コーディングユニットサイズが６４×６４ピクセルのマキシマムコーディングユニットサイズを含む、請求項２５に記載のデバイス。
【請求項２９】
ビデオデコーダを備えるデバイスであって、前記ビデオデコーダが、
複数のコード化されたピクチャを含むコード化されたビデオシーケンスを取得することと、
前記ビデオシーケンスの最小コーディングユニットサイズを示すシーケンスレベルのシンタックス情報を取得することであって、前記最小コーディングユニットサイズが、前記ビデオシーケンスのエンコード処理において複数の可能コーディングユニットサイズから選択される、ことと、
最小コーディングユニットサイズの倍数としてシグナルされた、前記ビデオシーケンスに関連づけられたピクチャサイズを示すシーケンスレベルの情報を取得することであって、前記ピクチャサイズが、前記エンコード処理において前記最小コーディングユニットサイズの倍数として決定される、ことと、
前記最小コーディングユニットサイズ及び前記ピクチャサイズを使用して前記ピクチャをデコードすることと、
デコーデッドピクチャバッファ内に前記デコードされたピクチャを記憶することと、
を行うように構成される、デバイス。
【請求項３０】
前記ビデオシーケンスの第１のピクチャが第１の最小コーディングユニットサイズを有し、前記ビデオシーケンスの第２のピクチャが第２の最小コーディングユニットサイズを有し、前記第１の最小コーディングユニットサイズが前記第２の最小コーディングユニットサイズより小さく、前記最小コーディングユニットサイズが前記第１の最小コーディングユニットサイズであり、前記ピクチャサイズが前記第１の最小コーディングユニットサイズの倍数である、請求項２９に記載のデバイス。
【請求項３１】
前記ピクチャサイズが、前記最小コーディングユニットサイズの倍数として決定されたピクチャ幅と、前記最小コーディングユニットサイズの倍数として決定されたピクチャ高さとを含む、請求項２９に記載のデバイス。
【請求項３２】
前記複数の可能コーディングユニットサイズが６４×６４ピクセルのマキシマムコーディングユニットサイズを含む、請求項２９に記載のデバイス。
【請求項３３】
命令を記憶したコンピュータ可読記憶媒体であって、前記命令が実行されると、プロセッサに、
複数のコード化されたピクチャを含むコード化されたビデオシーケンスを取得することと、
前記ビデオシーケンスの最小コーディングユニットサイズを示すシーケンスレベルのシンタックス情報を取得することであって、前記最小コーディングユニットサイズが、前記ビデオシーケンスのエンコード処理において複数の可能コーディングユニットサイズから選択される、ことと、
最小コーディングユニットサイズの倍数としてシグナリングされた、前記ビデオシーケンスに関連づけられたピクチャサイズを示すシーケンスレベルの情報を取得することであって、前記ピクチャサイズが、前記エンコード処理において前記最小コーディングユニットサイズの倍数として決定される、ことと、
前記最小コーディングユニットサイズ及び前記ピクチャサイズを使用して前記ピクチャをデコードすることと、
デコーデッドピクチャバッファ内に前記デコードされたピクチャを記憶することと、
を行わせる、コンピュータ可読記憶媒体。
【請求項３４】
前記ビデオシーケンスの第１のピクチャが第１の最小コーディングユニットサイズを有し、前記ビデオシーケンスの第２のピクチャが第２の最小コーディングユニットサイズを有し、前記第１の最小コーディングユニットサイズが前記第２の最小コーディングユニットサイズより小さく、前記最小コーディングユニットサイズが前記第１の最小コーディングユニットサイズであり、前記ピクチャサイズが前記第１の最小コーディングユニットサイズの倍数である、請求項３３に記載のコンピュータ可読記憶媒体。
【請求項３５】
前記ピクチャサイズが、前記最小コーディングユニットサイズの倍数として決定されたピクチャ幅と、前記最小コーディングユニットサイズの倍数として決定されたピクチャ高さとを含む、請求項３３に記載のコンピュータ可読記憶媒体。
【請求項３６】
前記複数の可能コーディングユニットサイズが６４×６４ピクセルのマキシマムコーディングユニットサイズを含む、請求項３３に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、参照によりその各々の全体が本明細書に組み込まれる、
２０１１年７月１７日に出願した米国仮出願第６１／５０８，６５９号、
２０１１年９月２日に出願した米国仮出願第６１／５３０，８１９号、および
２０１１年１０月２０日に出願した米国仮出願第６１／５４９，４８０号の利益を主張する。
【０００２】
本開示は、ビデオコーディングの分野に関する。
【背景技術】
【０００３】
デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップまたはデスクトップコンピュータ、タブレットコンピュータ、電子ブックリーダ、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラーまたは衛星無線電話、いわゆる「スマートフォン」、ビデオ遠隔会議デバイス、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスに組み込まれ得る。デジタルビデオデバイスは、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４、Ｐａｒｔ  １０、アドバンストビデオコーディング（ＡＶＣ：Advanced Video Coding）、現在開発中の高効率ビデオコーディング（ＨＥＶＣ）規格によって定義された規格、およびそのような規格の拡張に記載されているビデオ圧縮技法など、ビデオ圧縮技法を実装する。ビデオデバイスは、そのようなビデオ圧縮技法を実装することによって、デジタルビデオ情報をより効率的に送信、受信、エンコード、デコード、および／または記憶し得る。
【０００４】
ビデオ圧縮技法は、ビデオシーケンスに固有の冗長性を低減または除去するために空間的（イントラ−ピクチャintra-picture）予測および／または時間的（イントラ−ピクチャ）予測を実行する。ブロックベースのビデオコーディングでは、ビデオスライス（すなわち、ビデオフレームまたはビデオフレームの一部）はビデオブロックに区分され得、これらのビデオブロックは、ツリーブロック、コーディングユニット（ＣＵ：coding unit）および／またはコーディングノードとも呼ばれることがある。ピクチャのイントラコード化された（intra-coded）（Ｉ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック内の参照サンプルに対する空間的予測を使用してエンコードされる。ピクチャのインターコード化された（ＰまたはＢ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック中の参照サンプルに対する空間的予測、または他の参照ピクチャ中の参照サンプルに対する時間的予測を使用し得る。ピクチャはフレームと呼ばれることがあり、参照ピクチャは参照フレームと呼ばれることがある。
【０００５】
空間的予測または時間的予測は、コード化される（coded）べきブロックに関する予測ブロックを生じる。残差データ(Residual data)は、コード化されるべき元のブロックと予測ブロックとの間のピクセル差分(pixel differences)を表す。インターコード化されたブロックは、予測ブロックを形成する参照サンプルのブロックをポイントする動きベクトル（motion vector）と、コード化されたブロックと予測ブロックとの間の差分を示す残差データとに従ってエンコードされる。イントラコード化されたブロックは、イントラコーディングモードと残差データとに従ってエンコードされる。さらなる圧縮のために、残差データは、ピクセル領域から変換領域に変換されて、残差変換係数(residual transform coefficients)が得られ得、その残差変換係数は、次いで量子化され得る。量子化変換係数(quantized transform coefficients)は、最初は２次元アレイで構成され、変換係数の１次元ベクトルを生成するために走査され得、なお一層の圧縮を達成するためにエントロピーコーディング(entropy coding)が適用され得る。
【発明の概要】
【０００６】
概して、本開示は、ビデオシーケンスのピクチャまたはフレーム内に含まれるビデオデータをコーディングするための技法を説明する。具体的には、本開示は、ビデオシーケンス内のピクチャのグループに対するピクチャサイズが、ビデオシーケンスに対してアラインされた(aligned)コーディングユニットサイズに基づいてコード化され(coded)得る。ビデオシーケンスに対してアラインされたコーディングユニットサイズは、ビデオコーディング方式によってサポートされるいくつかの可能コーディングユニットサイズから選択され得る。本開示の技法は、ビデオシーケンス内のピクチャのうちの１つまたは複数に対してアラインされたコーディングユニットサイズをシグナルリングすることと、最小コーディングユニット（smallest coding unit）の倍数として１つまたは複数のピクチャのサイズをコーディングすることとを含む。
【０００７】
本開示の一例では、ビデオデータをエンコードするための方法は、ビデオシーケンスを定義する複数のピクチャのそれぞれに対する最小コーディングユニットサイズを決定することであって、最小コーディングユニットサイズが、マキシマム可能コーディングユニットサイズ（maximum possible coding unit size）を含む複数の可能コーディングユニットサイズから選択されることと、複数の可能コーディングユニットサイズに基づいてビデオシーケンスに対してアラインされたコーディングユニットサイズを決定することと、アラインされたコーディングユニットサイズの倍数である、ビデオシーケンスに関連づけられたピクチャサイズを決定することと、シーケンスレベルのシンタックス情報（syntax information）内で、アラインされたコーディングユニットサイズ値をシグナルリングすることとを含む。
【０００８】
別の例では、ビデオデータをデコードする方法は、第１の最小コーディングユニットサイズを使用してコード化された第１のピクチャと、第２の最小コーディングユニットサイズを使用してコード化された第２のピクチャとを含むコード化されたビデオシーケンスを取得することと、第１のコーディングユニットサイズ、第２のコーディングユニットサイズ、またはマキシマムコーディングユニットサイズのうちの１つのサイズの倍数である、デコーデッドピクチャバッファ（decoded picture buffer）内に記憶されるデコードされたピクチャのピクチャサイズを取得することと、デコーデッドピクチャバッファ内にデコードされたピクチャを記憶することとを含む。
【０００９】
別の例では、ビデオデータをエンコードするための装置は、ビデオシーケンスを定義する複数のピクチャのそれぞれに対する最小コーディングユニットサイズを決定することであって、最小コーディングユニットサイズが、マキシマム可能コーディングユニットサイズを含む複数の可能コーディングユニットサイズから選択されることと、複数の可能コーディングユニットサイズに基づいてビデオシーケンスに対してアラインされたコーディングユニットサイズを決定することと、アラインされたコーディングユニットサイズの倍数である、ビデオシーケンスに関連づけられたピクチャサイズを決定することと、シーケンスレベルのシンタックス情報内で、アラインされたコーディングユニットサイズ値をシグナルする（signal）こととを行うように構成されたビデオエンコーディングデバイスを備える。
【００１０】
別の例では、ビデオデータをデコードするための装置は、第１の最小コーディングユニットサイズを使用してコード化された第１のピクチャと、第２の最小コーディングユニットサイズを使用してコード化された第２のピクチャとを含むコード化されたビデオシーケンスを取得し、第１のコーディングユニットサイズ、第２のコーディングユニットサイズ、またはマキシマムコーディングユニットサイズのうちの１つのサイズの倍数である、デコーデッドピクチャバッファ内に記憶されるデコードされたピクチャのピクチャサイズを取得し、デコーデッドピクチャバッファ内にデコードされたピクチャを記憶するように構成されたビデオデコーディングデバイスを備える。
【００１１】
別の例では、ビデオデータをエンコードするためのデバイスは、ビデオシーケンスを定義する複数のピクチャのそれぞれに対する最小コーディングユニットサイズを決定するための手段であって、最小コーディングユニットサイズが、マキシマム可能コーディングユニットサイズを含む複数の可能コーディングユニットサイズから選択される、手段と、複数の可能コーディングユニットサイズに基づいてビデオシーケンスに対してアラインされたコーディングユニットサイズを決定するための手段と、アラインされたコーディングユニットサイズの倍数である、ビデオシーケンスに関連づけられたピクチャサイズを決定するための手段と、シーケンスレベルのシンタックス情報内で、アラインされたコーディングユニットサイズ値をシグナルリングするための手段とを含む。
【００１２】
別の例では、ビデオデータをデコードするためのデバイスは、第１の最小コーディングユニットサイズを使用してコード化された第１のピクチャと、第２の最小コーディングユニットサイズを使用してコード化された第２のピクチャとを含むコード化されたビデオシーケンスを取得するための手段と、第１のコーディングユニットサイズ、第２のコーディングユニットサイズ、またはマキシマムコーディングユニットサイズのうちの１つのサイズの倍数である、デコーデッドピクチャバッファ内に記憶されるデコードされたピクチャのピクチャサイズを取得するための手段と、デコーデッドピクチャバッファ内にデコードされたピクチャを記憶するための手段とを含む。
【００１３】
別の例では、コンピュータ可読記憶媒体が記憶された命令を含み、その命令が実行されると、ビデオデータをエンコードするためのデバイスのプロセッサに、ビデオシーケンスを定義する複数のピクチャのそれぞれに対する最小コーディングユニットサイズを決定することであって、最小コーディングユニットサイズが、マキシマム可能コーディングユニットサイズを含む複数の可能コーディングユニットサイズから選択されることと、複数の可能コーディングユニットサイズに基づいてビデオシーケンスに対してアラインされたコーディングユニットサイズを決定することと、アラインされたコーディングユニットサイズの倍数である、ビデオシーケンスに関連づけられた、ピクチャサイズを決定することと、シーケンスレベルのシンタックス情報内で、アラインされたコーディングユニットサイズ値をシグナルすることとを行わせる。
【００１４】
別の例では、コンピュータ可読記憶媒体が記憶された命令を含み、その命令が実行されると、ビデオデータをデコードするためのデバイスのプロセッサに、第１の最小コーディングユニットサイズを使用してコード化された第１のピクチャと、第２の最小コーディングユニットサイズを使用してコード化された第２のピクチャとを含むコード化されたビデオシーケンスを取得させ、第１のコーディングユニットサイズ、第２のコーディングユニットサイズ、またはマキシマムコーディングユニットサイズのうちの１つのサイズの倍数である、デコーデッドピクチャバッファ内に記憶されるデコードされたピクチャのピクチャサイズを取得させ、デコーデッドピクチャバッファ内にデコードされたピクチャを記憶させる。
【００１５】
１つまたは複数の例の詳細は、添付の図面および以下の説明に記載されている。他の特徴、目的、および利点は、その説明および図面、ならびに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１６】
【図１】例示的なビデオエンコーディングおよびデコーディングシステムを示すブロック図。
【図２】本開示で説明する技法を実装し得る例示的なビデオエンコーダを示すブロック図。
【図３】本開示の技法によるビデオデータをエンコードするための例示的な技法を示すフローチャート。
【図４】本開示で説明する技法を実装し得る例示的なビデオデコーダを示すブロック図。
【図５】本開示の技法によるビデオデータをデコードするための例示的な技法を示すフローチャート。
【発明を実施するための形態】
【００１７】
ビデオシーケンスは、ピクチャのグループを含むことができる。ピクチャのグループ内の各ピクチャは、最小コーディングユニットサイズを有することができる。一例では、最小コーディングユニットサイズは、以下のピクセルまたはサンプル寸法：４ピクセル、８ピクセル、１６ピクセル、３２ピクセル、および６４ピクセルのうちの１つを有する長方形または正方形であってよい。ビデオシーケンスのコーディング効率を向上させるために、ビデオシーケンスの最小コーディングユニットサイズを決定し、ピクチャのグループに対するピクチャサイズを指定することが有用であり得、ここで、ピクチャサイズは、ビデオシーケンスの最小コーディングユニットサイズのうちのミニマムサイズの倍数である。
【００１８】
図１は、本開示の技法を実装し得るビデオエンコーディングおよびデコーディングシステム１０の一例を示すブロック図である。図１に示すように、システム１０は、通信チャネル１５を介してエンコードされたビデオを宛先デバイス１６に送信するソースデバイス１２を含む。ソースデバイス１２および宛先デバイス１６は、広範囲のデバイスのいずれかを備えることができる。場合によっては、ソースデバイス１２および宛先デバイス１６は、いわゆるセルラーまたは衛星無線電話など、ワイヤレス通信デバイスハンドセットを備えることができる。しかしながら、一般にエンコーディングおよびデコーディングに適用される、本開示の技法は、ビデオエンコーディングおよび／またはデコーディング能力を含む非ワイヤレスデバイスに適用され得る。ソースデバイス１２および宛先デバイス１６は、本明細で説明する技法をサポートし得るコーディングデバイスの単なる例にすぎない。
【００１９】
図１の例では、ソースデバイス１２は、ビデオソース２０と、ビデオエンコーダ２２と、変調器／復調器（モデム）２３と、送信機２４とを含むことができる。宛先デバイス１６は、受信機２６と、モデム２７と、ビデオデコーダ２８と、ディスプレイデバイス３０とを含むことができる。
【００２０】
ビデオソース２０は、ビデオカメラなどのビデオキャプチャデバイスと、前にキャプチャされたビデオを含むビデオアーカイブと、ビデオコンテンツプロバイダまたは別のビデオのソースから供給されるビデオとを備えることができる。さらなる代替として、ビデオソース２０は、ソースビデオとしてのコンピュータグラフィックスベースのデータ、またはライブビデオとアーカイブビデオとコンピュータ生成ビデオとの組合せを生成することができる。場合によっては、ビデオソース２０がビデオカメラである場合、ソースデバイス１２および宛先デバイス１６は、いわゆるカメラ付き携帯電話またはビデオ電話を形成することができる。各場合において、キャプチャされたビデオ、プリキャプチャされたビデオ、またはコンピュータ生成されたビデオは、ビデオエンコーダ２２によってエンコードされ得る。
【００２１】
（すべての場合でないが）いくつかの例では、ビデオデータがビデオエンコーダ２２によってエンコードされると、エンコードされたビデオ情報は、次いで、たとえば、符号分割多元接続（ＣＤＭＡ）、直交周波数分割多重化（ＯＦＤＭ）あるいは他の通信規格または技法などの通信規格に従ってモデム２３によって変調され得る。次いで、エンコードされ変調されたデータは、送信機２４を介して宛先デバイス１６に送信され得る。モデム２３は、信号変調のために設計された様々なミキサ、フィルタ、増幅器または他の構成要素を含むことができる。送信機２４は、増幅器、フィルタ、および１つまたは複数のアンテナを含む、データを送信するために設計された回路を含むことができる。宛先デバイス１６の受信機２６はチャネル１５を介して情報を受信し、モデム２７は情報を復調する。ビデオデコーダ２８によって実行されるビデオデコーディングプロセスは、ビデオエンコーダ２２によって実行されるエンコーディング技法とはレシプロカル技法を含むことができる。
【００２２】
通信チャネル１５は、無線周波数（ＲＦ）スペクトルまたは１つまたは複数の物理伝送線路など、任意のワイヤレスまたはワイヤード通信媒体、あるいはワイヤレス媒体とワイヤード媒体との任意の組合せを備えることができる。通信チャネル１５は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースのネットワークの一部を形成することができる。通信チャネル１５は、一般に、ビデオデータをソースデバイス１２から宛先デバイス１６に送信するのに好適な任意の通信媒体、または様々な通信媒体の集合体を表す。この場合も、図１は例にすぎず、本開示の技法は、エンコーディングデバイスとデコーディングデバイスとの間のデータ通信を必ずしも含むとは限らないビデオコーディング設定（たとえば、ビデオエンコーディングまたはビデオデコーディング）に適用され得る。他の例では、データがローカルメモリから取り出されること、ネットワークを介してストリーミングされることなどが行われ得る。エンコーディングデバイスがデータをエンコードしてメモリに記憶し、および／またはデコーディングデバイスがメモリからデータを取り出し、デコードすることができる。多くの場合、エンコーディングおよびデコーディングは、互いに通信しないが、メモリにデータをエンコードし、および／またはメモリからデータを取り出してデコードするだけである無関係なデバイスによって実行される。たとえば、ビデオデータがエンコードされた後、ビデオデータは送信または記憶のためにパケット化され得る。ビデオデータは、国際標準化機構（ＩＳＯ）ベースメディアファイルフォーマット、およびＡＶＣなど、それの拡張など、様々な規格のいずれかに準拠するビデオファイルにアセンブルされ得る。
【００２３】
場合によっては、ビデオエンコーダ２２およびビデオデコーダ２８は、新生のＨＥＶＣ規格などのビデオ圧縮規格に実質的に従って動作することができる。しかしながら、本開示の技法はまた、いくつかの古い規格、あるいは新しいまたは新生の規格を含む、様々な他のビデオコーディング規格のコンテキストにおいて適用され得る。図１には示されていないが、場合によっては、ビデオエンコーダ２２およびビデオデコーダ２８は、それぞれオーディオエンコーダおよびデコーダと統合され得、適切なＭＵＸ−ＤＥＭＵＸユニット、または他のハードウェアおよびソフトウェアを含んで、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方のエンコーディングを処理することができる。適用可能な場合、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、またはユーザデータグラムプロトコル（ＵＤＰ）などの他のプロトコルに準拠し得る。
【００２４】
ビデオエンコーダ２２およびビデオデコーダ２８はそれぞれ、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェア、あるいはそれらの組合せとして実装され得る。ビデオエンコーダ２２およびビデオデコーダ２８の各々は１つまたは複数のエンコーダまたはデコーダ中に含まれてよく、そのいずれもが、組み合わされたエンコーダ／デコーダ（CODEC：コーデック）の一部として、それぞれのモバイルデバイス、加入者デバイス、ブロードキャストデバイス、サーバなどに統合されてよい。本開示では、コーダという用語はエンコーダ、デコーダ、またはコーデックを指し、コーダ、エンコーダ、デコーダ、およびコーデックという用語はすべて、本開示に一致するビデオデータのコーディング（エンコーディングおよび／またはデコーディング）のために設計された特定の機械を指す。本開示では、「コーディング」という用語は、エンコーディングおよび／またはデコーディングのいずれかまたはその両方を指すことができる。
【００２５】
場合によっては、ソースデバイス１２および宛先デバイス１６は、ほぼ対称に動作することができる。たとえば、ソースデバイス１２および宛先デバイス１６のそれぞれは、ビデオエンコーディングおよびデコーディング構成要素を含むことができる。したがって、システム１０は、たとえば、ビデオストリーミング、ビデオ再生、ビデオブロードキャスト、またはビデオテレフォニーのために、ソースデバイス１２と宛先デバイス１６との間の一方向または双方向のビデオ送信をサポートすることができる。
【００２６】
ビデオエンコーダ２２およびビデオデコーダ２８は、予測ブロックを識別するために、コード化されているビデオブロックが１つまたは複数の予測候補と比較される予測コーディングを実行することができる。ビデオブロックは、個別のビデオフレームまたはピクチャ（またはスライスなど、他の単独で定義されたビデオのユニット）内に存在することができる。フレーム、スライス、フレームの部分、ピクチャのグループ、または他のデータ構造は、ビデオブロックを含むビデオ情報のユニットとして定義され得る。予測コーディングのプロセスは、イントラ（その場合、予測データは、同じビデオフレームまたはスライス内の近隣のイントラデータに基づいて生成される）、またはインター（その場合、予測データは、前または後続のフレームまたはスライス中のビデオデータに基づいて生成される）であり得る。ビデオエンコーダ２２およびビデオデコーダ２８は、いくつかの異なる予測コーディングモードをサポートすることができる。ビデオエンコーダ２２は、望ましいビデオコーディングモードを選択することができる。予測コーディングにおいて、予測ブロックが識別された後に、コード化されている現在のビデオブロックと予測ブロックとの間の差が残差ブロックとしてコード化され、予測ブロックを識別するために（インターコーディングの場合は動きベクトル、またはイントラコーディングの場合は予測モードなどの）予測シンタックスが使用される。場合によっては、残差ブロックは、変換され、量子化され得る。変換技法は、ＤＣＴプロセスもしくは概念的に同様のプロセス、整数変換、ウェーブレット変換、または他のタイプの変換を含むことができる。ＤＣＴプロセスでは、一例として、変換プロセスは、ピクセル値（たとえば、残差ピクセル値（residual pixel values））のセットを、周波数領域におけるピクセル値のエネルギーを表し得る変換係数に変換する。ビデオエンコーダ２２およびビデオデコーダ２８は、量子化を変換係数に適用することができる。量子化は、一般に、任意の所与の変換係数に関連するビット数を制限するプロセスを必要とする。
【００２７】
変換および量子化に続いて、ビデオエンコーダ２２およびビデオデコーダ２８は、量子化され変換された残差ビデオブロックに対してエントロピーコーディング（entropy coding）を実行することができる。ビデオエンコーダ２２は、デコーディングプロセス内でビデオデコーダ２８によって使用されるエンコーディングプロセスの一部として、シンタックス要素（syntax elements）を生成することができる。ビデオエンコーダ２２はまた、シンタックス要素をエントロピーエンコードし、エンコードされたビットストリーム内にシンタックス要素を含むことができる。概して、エントロピーコーディングは、量子化変換係数のシーケンスおよび／または他のシンタックス情報をまとめて圧縮する、１つまたは複数のプロセスを備える。ビデオエンコーダ２２およびビデオデコーダ２８は、２次元ビデオブロックから係数の１つまたは複数のシリアル化１次元ベクトルを定義するために、量子化された変換係数に対して走査技法を実行することができる。走査された係数は、次いで、たとえば、コンテンツ適応型可変長コーディング（ＣＡＶＬＣ：content adaptive variable length coding）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ：context adaptive binary arithmetic coding）、または別のエントロピーコーディングプロセスによって、シンタックス情報とともにエントロピーコード化され得る。
【００２８】
いくつかの例では、エンコーディングプロセスの一部としてビデオエンコーダ２２は、後続のビデオブロックの後続の予測ベースコーディングのために使用されるビデオデータを生成するために、エンコードされたビデオブロックをデコードすることができる。これは、しばしば、エンコーディングプロセスのデコーディングループと呼ばれ、概して、デコーダデバイスによって実行されるデコーディングを模倣する。エンコーダまたはデコーダのデコーディングループでは、ビデオ品質を改善するため、たとえば、ピクセル境界を平滑化し、場合によっては、デコードされたビデオからアーティファクトを除去するために、フィルタ処理技法が使用され得る。このフィルタ処理はインループでもポストループでもよい。ループ内フィルタ処理の場合、コーディングループ中で再構成ビデオデータのフィルタ処理が行われ、これは、フィルタ処理されたデータが、後続の画像データの予測において後で使用するためにエンコーダまたはデコーダによって記憶されることを意味する。対照的に、ループ後フィルタ処理の場合、コーディングループの外で再構成ビデオデータのフィルタ処理が行われ、これは、データのフィルタ処理されていないバージョンが、後続の画像データの予測において後で使用するためにエンコーダまたはデコーダによって記憶されることを意味する。ループフィルタ処理は、しばしば、ビデオブロック境界に現れるブロッキネスアーティファクトを除去するために、一般に、隣接するビデオブロックの境界上にまたはその近くにあるピクセルにフィルタ処理を適用する別のデブロックフィルタ処理プロセスに続く。
【００２９】
高効率ビデオコーディング（ＨＥＶＣ）と現在呼ばれる、新しいビデオコーディング規格を開発するための取り組みが現在進行中である。この今度の規格はＨ．２６５とも呼ばれる。「ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ３」または「ＷＤ３」と呼ばれるＨＥＶＣ規格の最近のドラフトは、文書ＪＣＴＶＣ−Ｅ６０３、Ｗｉｅｇａｎｄら、「High efficiency video coding (HEVC) text specification draft 3」、ＩＴＵ−Ｔ  ＳＧ１６  ＷＰ３とＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９／ＷＧ１１のＪｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｖｅ  Ｔｅａｍ  ｏｎ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  （ＪＣＴ−ＶＣ）、第５回会合：スイス  ジュネーブ、２０１１年３月１６〜２３日に記載されおり、この文書は、参照によりその全体が本明細書に組み込まれる。この規格化の取り組みは、ＨＥＶＣテストモデル（ＨＭ：HEVC Test Model）と呼ばれるビデオコーディングデバイスのモデルに基づく。ＨＭは、ＩＴＵ−Ｔ  Ｈ．２６４／ＡＶＣによるビデオデータをコード化する（code）ように構成されたデバイスより上のビデオコーディングデバイスのいくつかの能力を仮定する。たとえば、Ｈ．２６４は９つのイントラ予測エンコーディングモードを提供するが、ＨＭは３４個ものイントラ予測エンコーディングモードを提供する。ビデオエンコーダ２２は、ＨＥＶＣ規格およびＨＥＶＣテストモデルに整合するビデオデータのブロックに対して動作することができる。
【００３０】
ＨＥＶＣ規格は、ビデオデータのブロックに対する特定の項とブロックサイズとを含む。具体的には、ＨＥＶＣは、ラージストコーディングユニット（ＬＣＵ）、コーディングユニット（ＣＵ）、予測ユニット（ＰＵ）、および変換ユニット（ＴＵ）の項を含む。ＬＣＵ、ＣＵ、ＰＵ、およびＴＵは、すべて、本開示の意味におけるビデオブロックである。本開示ではまた、ＬＣＵ、ＣＵ、ＰＵ、またはＴＵのいずれかを指すために、ブロックという用語を使用する。ＨＥＶＣでは、シンタックス要素は、ＬＣＵレベル、ＣＵレベル、ＰＵレベルおよびＴＵレベルにおいて定義され得る。ＨＥＶＣでは、ＬＣＵは、所与の状況においてサポートされるピクセルの数に関してラージストコーディングユニットである、ラージストサイズのコーディングユニットを指す。概して、ＨＥＶＣでは、ＣＵは、ＣＵがサイズの差異を有しないことを除いて、Ｈ．２６４のマクロブロックと同様の目的を有する。したがって、ＣＵはサブＣＵに分割され得、ＬＣＵはより小さいＣＵに区分され得る。さらに、ＣＵは、予測のために予測ユニット（ＰＵ）に区分され得る。ＰＵは、対応するＣＵの全部または一部分を表し得、そのＰＵの参照サンプルを取り出すためのデータを含むことができる。ＰＵは、正方形または長方形の形状を有することができる。ＴＵは、量子化され得る変換係数を生成するように変換され得る、ピクセル差分値またはピクセル残差のセットを表す。変換は、ＨＥＶＣ規格において固定されていないが、所与のＣＵと同じサイズであるか、または場合によってはより小さくなり得る変換ユニット（ＴＵ）サイズに応じて定義される。
【００３１】
ＨＥＶＣでは、ＬＣＵは４分木データ構造に関連づけられ得る。さらに、いくつかの例では、ＣＵに対応する残差サンプルは、「残差４分木」（ＲＱＴ：residual quad tree）として知られる４分木構造を含む４分木区分方式を使用してより小さいユニットに再分割され得る。概して、４分木データ構造はＣＵごとに１つのノードを含み、ルートノードはＬＣＵに対応することができる。たとえば、ＣＵ0はＬＣＵを指すことができ、ＣＵ1〜ＣＵ4はＬＣＵのサブＣＵを備えることができる。ＣＵが４つのサブＣＵに分割された場合、ＣＵに対応するノードは４つのリーフノードを含み、リーフノードの各々はサブＣＵのうちの１つに対応する。４分木データ構造の各ノードは、対応するＣＵのシンタックスデータを与えることができる。たとえば、４分木中のノードは、ノードに対応するＣＵがサブＣＵに分割されるかどうかを示す、ＣＵレベルシンタックス内の分割フラグを含むことができる。ＣＵのシンタックス要素は、再帰的に定義され得、ＣＵがサブＣＵに分割されるかどうかに依存し得る。ＣＵがさらに分割されない場合、そのＣＵはリーフＣＵと呼ばれる。本開示では、元のリーフＣＵの明示的分割が存在しなくても、リーフＣＵの４つのサブＣＵもまた、リーフＣＵと呼ぶことができる。たとえば、１６×１６サイズのＣＵがさらに分割されない場合、この１６×１６ＣＵが決して分割されなくても、４つの８×８サブＣＵをリーフＣＵとも呼ぶ。
【００３２】
ＲＱＴのリーフノードまたはリーフＣＵは、ＴＵに対応することができる。すなわち、リーフＣＵは、リーフＣＵがどのようにＴＵに区分されるかを示す４分木を含み得る。リーフＣＵは、１つまたは複数の変換ユニット（ＴＵ）を含み得る。本開示では、ＬＣＵがどのように区分されるかを示す４分木をＣＵ４分木と呼び、リーフＣＵがどのようにＴＵに区分されるかを示す４分木をＴＵ４分木と呼ぶことがある。ＴＵ４分木のルートノードは概してリーフＣＵに対応し、ＣＵ４分木のルートノードは概してＬＣＵに対応する。分割されないＴＵ４分木のＴＵはリーフＴＵと呼ばれる。分割フラグは、リーフＣＵが４つの変換ユニットに分割されるかどうかを示すことができる。次いで、各変換ユニットはさらに４つのサブＴＵに分割され得る。ＴＵがさらに分割されないとき、そのＴＵはリーフＴＵと呼ばれることがある。
【００３３】
さらに、リーフノードまたはリーフＣＵは、１つまたは複数の予測ユニット（ＰＵ）を含むことができる。たとえば、ＰＵがインターモードエンコードされるとき、ＰＵは、ＰＵのための動きベクトルを定義するデータを含むことができる。動きベクトルを定義するデータは、たとえば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルの解像度（たとえば、１／４ピクセル精度もしくは１／８ピクセル精度）、動きベクトルがポイントする参照フレーム、および／または動きベクトルの参照リスト（たとえば、リスト０もしくはリスト１）を記述し得る。（１つまたは複数の）ＰＵを定義するリーフＣＵのデータはまた、たとえば、ＣＵを１つまたは複数のＰＵに区分することを記述し得る。区分モードは、ＣＵがコード化されないか、イントラ予測モードエンコードされるか、またはインター予測モードエンコードされるかに応じて異なり得る。イントラコーディングの場合、ＰＵは、以下で説明するリーフ変換ユニットと同じように扱われ得る。
【００３４】
概して、ＨＥＶＣにおけるイントラコーディングの場合、リーフＣＵに属するすべてのリーフＴＵは同じイントラ予測モードを共有する。すなわち、概して、リーフＣＵのすべてのＴＵに関する予測値を計算するために同じイントラ予測モードが適用される。イントラコーディングの場合、ビデオエンコーダ２２は、イントラ予測モードを使用して各リーフＴＵの残差値を、ＴＵに対応する予測値の一部と元のブロックとの間の差として計算することができる。残差値は変換され、量子化され、走査され得る。ＨＥＶＣにおけるインターコーディングの場合、ビデオエンコーダ２２は、ＰＵレベルで予測を実行し、各ＰＵの残差を計算することができる。リーフＣＵに対応する残差値は変換され、量子化され、走査され得る。インターコーディングの場合、リーフＴＵはＰＵよりも大きくまたは小さくなり得る。イントラコーディングの場合、ＰＵは、対応するリーフＴＵとコロケートされ（collocated）得る。いくつかの例では、リーフＴＵのマキシマムサイズは、対応するリーフＣＵのサイズであり得る。
【００３５】
上記で説明したように、ＨＥＶＣ規格は、ＣＵごとに異なり得る変換ユニット（ＴＵ）に従う変換を可能にする。ＴＵは、一般に、区分されたＬＣＵについて定義された所与のＣＵ内のＰＵのサイズに基づいてサイズ決定されるが、常にそうであるとは限らない。ＴＵは、一般にＰＵと同じサイズであるかまたはＰＵよりも小さい。ＴＵに関連するピクセル差分値は、変換されて変換係数が生成され得、その変換係数は量子化され得る。さらに、量子化は、ＬＣＵレベルで定義される量子化パラメータ（ＱＰ）に従って適用され得る。したがって、同じレベルの量子化が、ＬＣＵ内のＣＵの異なるＰＵに関連するＴＵ中のすべての変換係数に適用され得る。ただし、ＱＰ自体をシグナルするのではなく、前のＬＣＵの変化に対するＱＰの変化を示すために、ＱＰの変化または差（すなわち、デルタ：delta）がＬＣＵとともにシグナルされ得る。
【００３６】
ビデオエンコーダ２２は、ビデオコーディング情報のユニットとしてＨＥＶＣ規格に従って定義されたＬＣＵ、ＣＵ、ＰＵ、およびＴＵを使用することによって、ピクチャ、フレーム、スライス、フレームの部分、ピクチャのグループ、または他のビデオデータのビデオコーディングを実行することができる。
【００３７】
たとえば、ビデオエンコーダ２２は、ラージストコーディングユニット（ＬＣＵ）を含むビデオデータの１つまたは複数のピクチャをエンコードすることができ、ＬＣＵは、４分木区分方式に従ってブロックサイズのコード化されたユニット（ＣＵ）のセットに区分される。ビデオエンコーダ２２およびビデオデコーダ２８は、ＨＥＶＣ規格に整合する、変化するサイズを有するＣＵを使用することができる。たとえば、ビデオエンコーダ２２は、６４×６４、３２×３２、１６×１６、８×８、および４×４ピクセルのうちの可能なＣＵサイズを使用することができる。所与のビデオシーケンスに対して、ビデオエンコーダ２２は、ビデオシーケンス内のすべてのピクチャに対して６４×６４ピクセルのマキシマムＣＵサイズを使用することができ、一方、ビデオシーケンス内のいくつかのピクチャは、４×４ピクセルの最小可能ＣＵサイズ（smallest possible CU size）を使用してエンコードされ得、ビデオシーケンス内の他のピクチャは、８×８ピクセルの最小ＣＵサイズを使用してエンコードされ得る。
【００３８】
上記で説明したように、本開示におけるＣＵへの言及は、ピクチャのラージストコーディングユニットまたはＬＣＵのサブＣＵを指すことがある。ビデオエンコーダ２２は、ＬＣＵをサブＣＵに分割し得、各サブＣＵはさらにサブＣＵに分割され得る。ビデオエンコーダ２２は、ＬＣＵが分割されるマキシマム回数を示すように定義されたビットストリームに関するシンタックスデータを含むことができる。ＬＣＵが分割される回数は、ＣＵ深さと呼ばれることがある。
【００３９】
さらに、ビデオエンコーダ２２はまた、ビデオシーケンス内の各ピクチャに対して最小コーディングユニット（ＳＣＵ）を定義することができる。ＳＣＵは、いくつかの可能なＣＵサイズが利用可能なときに、ピクチャをコード化する（code）ために使用される最小コーディングユニットサイズを指すことができる。たとえば、ビデオエンコーダ２２は、ビデオシーケンス内のピクチャをエンコードするために、可能なＣＵサイズ６４×６４、３２×３２、１６×１６、８×８、および４×４ピクセルのうちの１つを使用するように構成され得る。一例では、ビデオシーケンス内のすべてのピクチャが、同じＳＣＵサイズ、たとえば４×４ピクセルまたは８×８ピクセルを使用してエンコードされ得る。他の例では、ビデオシーケンス内のいくつかのピクチャは、４×４ピクセルのＳＣＵサイズを使用してエンコードされ得、ビデオシーケンス内の他のピクチャは、８×８ピクセルのＳＣＵサイズを使用してエンコードされ得る。したがって、この例では、ビデオシーケンス内のピクチャは、４×４ピクセルおよび８×８ピクセルのそれぞれのＳＣＵを有することができ、すなわち、ＳＣＵサイズはフレーム間で変化することができる。ビデオエンコーダ２２は、ビデオシーケンスに対してミニマムＳＣＵまたはマキシマムＳＣＵを決定することができる。この例では、ミニマムＳＣＵは４×４であり、一方、マキシマムＳＣＵは８×８である。
【００４０】
ビデオエンコーダ２２は、ＬＣＵ、ＣＵ、ＰＵ、ＴＵ、およびＳＣＵのサイズを定義するビットストリーム内に、様々なレベルのシンタックスデータを含むことができる。たとえば、ビデオエンコーダ２２は、シーケンスレベルのシンタックスを使用してＬＣＵのサイズをシグナルすることができる。
【００４１】
ビデオシーケンス内のピクチャをエンコードするために使用されるＣＵのサイズをシグナルリングすることに加えて、ビデオエンコーダ２２は、ビデオシーケンス内のピクチャのサイズをシグナルするために、様々な技法を使用することができる。ビデオシーケンスに関連づけられたピクチャのサイズは、デコーデッドピクチャバッファ（ＤＰＢ）内に記憶された、デコードされたピクチャのピクチャサイズに等しいことがある。ピクチャは、選択された高さと幅のブロックなど、ユニットサイズを有することができる。ピクチャサイズは、ＨＥＶＣまたは別のビデオ規格によってサポートされるピクチャサイズであってよく、たとえば、ピクチャサイズは、３２０×２４０、１９２０×１０８０、および７６８０×４３２０を含むことができる。さらに、ビデオエンコーダ２２は、スライスヘッダ内のテクスチャビュー構成要素をコーディングするためのシンタックス要素をシグナルすることができる。したがって、ビデオエンコーダ２２は、様々なシンタックス要素を使用して、ビデオシーケンスに関連づけられたピクチャのサイズ、および／またはビデオシーケンスに関連づけられたミニマムスモーレストコーディングユニットサイズ（minimum smallest coding unit size）をシグナルすることができる。同様に、ビデオデコーダ２８は、コード化されたビデオシーケンスに関連づけられたピクチャのサイズおよび／またはコード化されたビデオシーケンスに関連づけられたミニマムスモーレストコーディングユニットサイズを示す様々なシンタックス要素を取得して、そのようなシンタックス要素をコード化されたビデオシーケンスのデコーディングに使用することができる。一例では、ビデオエンコーダ２２は、シーケンスレベルのシンタックス情報内で、ミニマムスモーレストコーディングユニットサイズと、ビデオシーケンスに関連づけられたピクチャのサイズとをシグナルすることができ、ピクチャサイズは、ミニマムスモーレストコーディングユニットサイズの倍数である。一例では、ビデオデコーダ２８は、シーケンスレベルのシンタックス情報内で、ビデオシーケンスのためミニマムスモーレストコーディングユニットと１つまたは複数のコード化されたピクチャを含むコード化されたビデオシーケンスを取得することができる。ビデオデコーダ２８は、コード化されたビデオシーケンス内のコード化されたピクチャをデコードし、デコードされたピクチャをデコーデッドピクチャバッファ内に、ミニマムスモーレストコーディングユニットサイズの倍数に等しいピクチャサイズとともに記憶することができる。
【００４２】
固定サイズのマクロブロック（たとえば、１６×１６）を使用するいくつかのビデオ圧縮技法では、ピクチャのサイズは、マクロブロックのユニットでシグナリングされ得る。幅または高さが固定サイズのマクロブロックの倍数に等しくないとき、クロッピングウィンドウが使用され得る。たとえば、１９２０×１０８０のピクチャは、ビットストリーム内で１９２０×１０８８としてコード化され得るが、クロッピングウィンドウは、実際のウィンドウに、ピクチャを１９２０×１０８０として表示するようにシグナルする。他の技法では、ピクチャのサイズは、ピクセルの単位でシグナリングされ得る。ピクセルの単位でピクチャのサイズをシグナルリングする一例が、ＨＥＶＣ規格によって提供されている。
【００４３】
一例では、ビデオエンコーダ２２およびビデオデコーダ２８は、ビデオデータをコード化することができ、そこでは、ピクチャシーケンス内のコード化されたピクチャのサイズが、特定のタイプのコード化されたユニット（ＣＵ）に関して定義される。特定のタイプのコード化されたブロックは、上記で説明したように、ピクチャのシーケンス内の各ピクチャのＬＣＵ、ＳＣＵ、ミニマムスモーレストＣＵ、またはマキシマム最小ＣＵであってよい。より具体的には、ビデオエンコーダ２２は、ピクチャのコーディングユニット（ＣＵ）のサイズに対するピクチャのサイズをシグナルするために使用されるユニットを示すことができる。一例では、ユニットは、コード化されたビデオシーケンス内で許容される最小ＣＵサイズのサイズに等しいことがある。場合によっては、最小ＣＵサイズは、ビデオシーケンス内のすべてのピクチャに対して同じである。他の場合には、ビデオシーケンス内の各ピクチャの最小ＣＵサイズは異なることがある。その場合、ビデオシーケンス内の各ピクチャの最小ＣＵサイズは、ビデオシーケンスの最小可能ＣＵサイズより小さくないことがある。別の例では、ビデオエンコーダ２２によって示されるユニットは、ピクチャのグループに対するラージストコーディングユニット（ＬＣＵ）のサイズに等しいことがある。いくつかの例では、ピクチャのサイズを低減するために、クロッピングウィンドウが、ビデオエンコーダ２２またはビデオデコーダ２８によってピクチャに適用され得る。クロッピングウィンドウは、たとえば、ピクチャの右側または下側のうちの少なくとも一方をクロップする（crop）ことができる。
【００４４】
別の例では、ビデオエンコーダ２２は、アラインされたＣＵ（ＡＣＵ）サイズに対するピクチャサイズをシグナルすることができる。アラインされたＣＵサイズは、デコーデッドピクチャバッファ（ＤＰＢ）内に記憶されたデコードされたピクチャのピクチャサイズを指定するために使用されるＣＵサイズであってよい。そのようなピクチャサイズは、アラインされたＣＵサイズの幅と高さを乗じたもの（ｍｕｌｔｉｐｌｉｃａｔｉｏｎ）として、幅と高さの両方を有することができる。同様に、ピクチャの高さは、アラインされたＣＵの高さを乗じたものであってよい。アラインされたＣＵのサイズ（幅および高さ）は、他の代替におけるのと同様の方法でシグナルされ得る。たとえば、ビデオエンコーダ２２は、様々なレベルのシンタックスにおいてアラインされたＣＵをシグナルすることができる。
【００４５】
ＡＣＵサイズは、以下の例に従って定義され得る：ビデオシーケンス内のすべてのピクチャが同じＳＣＵサイズを有する場合、ＡＣＵがＳＣＵサイズとして定義され得る。一方、ビデオシーケンス内のピクチャが異なるＳＣＵサイズを有する場合、ＡＣＵは、すべてのピクチャの中のマキシマムまたはミニマムＳＣＵサイズとして定義され得る。ＡＣＵがどのように定義されるかにかかわらず、ＡＣＵサイズは、ビデオシーケンスに関連づけられたシーケンスパラメータセット（ＳＰＳ）またはピクチャパラメータセット（ＰＰＳ）において、ビデオエンコーダ２２によって明示的にシグナルされ得る。場合によっては、ＡＣＵサイズは、ビデオシーケンスに対してＬＣＵサイズ以下になるように、かつビデオシーケンスに対してＳＣＵサイズ以上になるように制限され得る。
【００４６】
さらに、いくつかの例では、ビデオエンコーダ２２は、ＬＣＵのユニットでまたはＳＣＵのユニットでピクチャサイズをシグナルすることができる。いくつかの例では、コード化されたピクチャのサイズをシグナルするために使用されるユニットは、ＳＰＳでシグナルされ得る。このユニットは、コード化されたビデオシーケンスに対して許容される最小ＣＵサイズのサイズに等しいことがある。ＰＰＳでは、このＰＰＳに関してピクチャの最小ＣＵサイズの相対サイズが、ビデオエンコーダ２２によってシグナルされ得る。ビデオシーケンス内のすべてのピクチャが同じＳＣＵサイズを有する場合、最小ＣＵの相対サイズの追加のシグナルリングは、必ずしもＰＰＳにおけるとは限らない。最小ＣＵサイズがビデオシーケンス内のピクチャ間で変わる場合、ビデオシーケンス内のピクチャの一部分に対する相対的最小ＣＵサイズは、ＰＰＳでシグナルされ得、ここで、相対的最小ＣＵサイズは、ビデオシーケンスのミニマムスモーレストＣＵより大きい。相対的最小ＣＵサイズは、ピクチャの一部分に対する相対的最小ＣＵサイズとビデオシーケンスのミニマムスモーレストＣＵサイズとの間の差として、ＰＰＳでシグナルされ得る。
【００４７】
代替として、ピクチャサイズは、ＳＰＳにおけるＬＣＵのユニットでビデオエンコーダ２２によってシグナルされ得る。しかしながら、クロッピングウィンドウは、さらに、ビデオエンコーダ２２によってシグナルされ得るので、ＡＣＵサイズが知られている限り、クロッピングウィンドウを使用することは、ビデオデコーダがピクチャサイズを識別するのに役立つ。
【００４８】
代替として、ＳＣＵサイズがビデオシーケンス内のピクチャに対して変わるとき、ユニットは、コード化されたビデオシーケンス内のピクチャ内で許容されるマキシマム最小ＣＵサイズのサイズに等しいことがある。マキシマムＣＵサイズが６４×６４ピクセルで、いくつかのピクチャが４×４ピクセルのＣＵサイズを有し、他のピクチャが８×８ピクセルの最小ＣＵサイズを有する一例では、ピクチャサイズのユニットは８×８ピクセルであってよい。この例では、ピクチャが６４×６５ピクセルのサイズを有する場合、ピクチャサイズは、８ピクセルの８倍バイ８ピクセルの９倍として(as 8 times 8 pixels by 9 times 8 pixels)ビデオエンコーダ２２によってシグナルされる。６４×６５ピクセルサイズを超えるピクチャ内のピクセルは、フレームクロッピングシンタックス要素を使用してクロップされ得る。
【００４９】
いくつかの例では、マキシマムＣＵサイズは６４×６４ピクセルであり、いくつかのピクチャは４×４ピクセルの最小可能ＣＵサイズを有し、一方、他のピクチャは８×８ピクセルの最小ＣＵサイズを有する。この例では、特定のタイプのＣＵがミニマム可能最小ＣＵである場合、ピクチャサイズに対するユニットは４×４ピクセルである。この例を続けると、特定のタイプのＣＵがマキシマム可能最小ＣＵである場合、ピクチャサイズに対するユニットは８×８ピクセルである。
【００５０】
以下の表１〜表７は、本明細書で説明する技法を実行するために、ビデオエンコーダ２２およびビデオデコーダ２８によって実装され得る例示的なシンタックスを与える。例示的なシンタックスは、ハードウェア、ソフトウェア、ファームウェア、またはそれらの組合せを使用してビデオエンコーダ２２およびビデオデコーダ２８によって実装され得る。
【００５１】
上記で説明したように、ビデオエンコーダ２２は、ＳＰＳ（シーケンスパラメータセット）内のコード化されたピクチャのサイズをシグナルするために使用されるユニットをシグナルすることができる。一例では、このユニットは、コード化されたビデオシーケンス内で許容される最小ＣＵサイズのサイズに等しいことがある。この例では、最小ＣＵサイズがピクチャのグループ内のピクチャ間で、コード化されたビットストリームにおいて変化し得る場合、最小ＣＵサイズは、このユニットのサイズより小さくはない。以下の表１は、ビデオシーケンス内のコード化されたピクチャのミニマムスモーレストＣＵサイズをシグナルするために使用されるＳＰＳローバイトシーケンスペイロード（ＲＢＳＰ：raw byte sequence payload）シンタックスの一例を与える。ピクチャパラメータセット（ＰＰＳ）では、このＰＰＳに関してピクチャの最小ＣＵサイズの相対サイズがシグナルされ得る。
【表１】
0005792388.tif 000002
【００５２】
0005792388.tif 000003
【００５３】
表１において、シンタックス要素ｌｏｇ２＿ｍａｘ＿ｃｏｄｉｎｇ＿ｂｌｏｃｋ＿ｓｉｚｅ＿ｍｉｎｕｓ３は、コーディングブロックのマキシマムサイズを指定することができる。変数Ｌｏｇ２ＭａｘＣＵＳｉｚｅは、
【数１】
0005792388.tif 000004
【００５４】
に等しく設定され得る。
【００５５】
表１において、シンタックス要素ｌｏｇ２＿ｄｉｆｆ＿ｍａｘ＿ｐｉｃ＿ａｌｌｉｇｎｅｄ＿ｍｉｎ＿ｃｏｄｉｎｇ＿ｂｌｏｃｋ＿ｓｉｚｅは、コード化されたビデオシーケンス全体の中のコーディングブロックのミニマムサイズとコーディングブロックのマキシマムサイズとの間の差を指定することができる。場合によっては、ピクチャのグループは、ピクチャのグループ内のピクチャが、差分値より小さい最小コーディングＣＵサイズを有することのないように定義され得る。
【００５６】
変数Ｌｏｇ２ＳｅｑＭｉｎＣＵＳｉｚｅは、
【数２】
0005792388.tif 000005
【００５７】
に等しく設定され得る。
【００５８】
この値は、０〜ｌｏｇ２＿ｍａｘ＿ｃｏｄｉｎｇ＿ｂｌｏｃｋ＿ｓｉｚｅ＿ｍｉｎｕｓ３の範囲内で変動することができる。変数Ｌｏｇ２ＭａｘＣＵＳｉｚｅおよびＬｏｇ２ＳｅｑＭｉｎＣＵＳｉｚｅは、ビデオコーディングを処理するためにビデオエンコーダ２２およびビデオデコーダ２８によって使用され得る。
【００５９】
表１は、シンタックス要素ｐｉｃ＿ｗｉｄｔｈ＿ｉｎ＿ｌｕｍａ＿ｓａｍｐｌｅｓ、ｐｉｃ＿ｈｅｉｇｈｔ＿ｉｎ＿ｌｕｍａ＿ｓａｍｐｌｅｓ、およびｌｏｇ２＿ｍｉｎ＿ｃｏｄｉｎｇ＿ｂｌｏｃｋ＿ｓｉｚｅ＿ｍｉｎｕｓ３を含んでおり、それらの要素は、抹消線を伴って表１に表されていることに留意されたい。これらのシンタックス要素は、ピクチャのサイズがピクセルの単位でビデオエンコーダ２２によってシグナルされ得る代替例を表す。一例では、上記で説明したように、ピクチャサイズが、ＡＣＵサイズの幅と高さを乗じたものとして、幅と高さの両方を有する場合、ＡＣＵサイズがビデオシーケンスのミニマムＳＣＵに等しい場合、ビデオデコーダ２８は、ｐｉｃ＿ｗｉｄｔｈ＿ｉｎ＿ｌｕｍａ＿ｓａｍｐｌｅｓ、ｐｉｃ＿ｈｅｉｇｈｔ＿ｉｎ＿ｌｕｍａ＿ｓａｍｐｌｅｓの値が、ｌｏｇ２＿ｍｉｎ＿ｃｏｄｉｎｇ＿ｂｌｏｃｋ＿ｓｉｚｅ＿ｍｉｎｕｓ３の整数の倍数であるかどうかという条件に基づいて、ビットストリームが適合しているかどうかを判断することができる。
【００６０】
以下の表２は、ビデオエンコーダ２２およびビデオデコーダ２８によって実行され得る技法に従って、ＳＰＳ  ＲＢＳＰシンタックスの別の例を与える。
【表２】
0005792388.tif 000006
【００６１】
0005792388.tif 000007
【００６２】
表２によれば、ピクチャの幅および高さが、アラインされたＣＵの幅および高さに対して、ビデオエンコーダ２２によって示され得る。上記で説明したように、アラインされたＣＵは、ピクチャサイズを指定するためにビデオエンコーダ２２およびビデオデコーダ２８によって使用されるＣＵであってよい。すなわち、ピクチャの幅は、アラインされたＣＵの幅を乗じたものであってよい。上記で説明したように、アラインされたＣＵサイズは、デコーデッドピクチャバッファ（ＤＰＢ）内に記憶されたデコードされたピクチャのピクチャサイズを指定するために使用されるサイズであってよい。いくつかの例では、ピクチャは、１つまたは複数の完全なアラインされたＣＵを含むことができる。いくつかの例では、アラインされたＣＵは、アラインされた最小ＣＵ（ＳＣＵ）である。
【００６３】
表２は、ｐｉｃ＿ｈｅｉｇｈｔ＿ｉｎ＿ａｌｌｉｇｎｅｄ＿ｓｃｕとしてピクチャの高さを指定し、ｐｉｃ＿ｗｉｄｔｈ＿ｉｎ＿ａｌｌｉｇｎｅｄ＿ｓｃｕとしてピクチャの幅を指定する。ｐｉｃ＿ｗｉｄｔｈ＿ｉｎ＿ａｌｌｉｇｎｅｄ＿ｃｕは、アラインされたＣＵのユニットで、コード化されたビデオシーケンス内のピクチャの幅を指定することができる。ｐｉｃ＿ｈｅｉｇｈｔ＿ｉｎ＿ａｌｌｉｇｎｅｄ＿ｃｕは、アラインされたＣＵのユニットで、コード化されたビデオシーケンス内のピクチャの高さを指定することができる。
【００６４】
ｌｏｇ２＿ｍａｘ＿ｃｏｄｉｎｇ＿ｂｌｏｃｋ＿ｓｉｚｅ＿ｍｉｎｕｓ３は、コーディングブロックのマキシマムサイズを指定することができる。変数Ｌｏｇ２ＭａｘＣＵＳｉｚｅは、ｌｏｇ２＿ｍａｘ＿ｃｏｄｉｎｇ＿ｂｌｏｃｋ＿ｓｉｚｅ＿ｍｉｎｕｓ３＋３に等しく設定され得る。
【００６５】
ｌｏｇ２＿ｄｉｆｆ＿ｍａｘ＿ｐｉｃ＿ａｌｌｉｇｎｅｄ＿ｍｉｎ＿ｃｏｄｉｎｇ＿ｂｌｏｃｋ＿ｓｉｚｅは、コード化されたビデオシーケンス全体の中のコーディングブロックのミニマムサイズとコーディングブロックのマキシマムサイズとの間の差を指定することができる。いくつかの例では、いずれのピクチャも、それより小さい最小コーディングＣＵサイズを有することはできない。
【００６６】
以下の表３は、表１または表２のいずれかの中で与えられるＳＰＳ  ＲＢＳＰと併せてビデオエンコーダ２２およびビデオデコーダ２８によって実装され得る、ＰＰＳ  ＲＢＳＰに対する追加のシンタックス要素を与える。
【表３】
0005792388.tif 000008
【００６７】
表３において、ｐｉｃ＿ｓｃｕ＿ｓｉｚｅ＿ｄｅｌｔａは、このピクチャパラメータセットに関連するピクチャのコーディングユニットのミニマムサイズを指定することができる。この値は、０〜ｌｏｇ２＿ｄｉｆｆ＿ｍａｘ＿ｐｉｃ＿ａｌｌｉｇｎｅｄ＿ｍｉｎ＿ｃｏｄｉｎｇ＿ｂｌｏｃｋ＿ｓｉｚｅの範囲内で変動することができる。
【００６８】
変数Ｌｏｇ２ＭｉｎＣＵＳｉｚｅは、ｌｏｇ２ＳｅｑＭｉｎＣＵＳｉｚｅ＋ｐｉｃ＿ｓｃｕ＿ｓｉｚｅ＿ｄｅｌｔａに等しく設定され得る。代替として、アラインされたＣＵのサイズが、すべてのピクチャの最小ＣＵサイズのマキシマムである場合、変数Ｌｏｇ２ＭｉｎＣＵＳｉｚｅは、ｌｏｇ２ＳｅｑＭｉｎＣＵＳｉｚｅ−ｐｉｃ＿ｓｃｕ＿ｓｉｚｅ＿ｄｅｌｔａに等しく設定され得る。代替として、アラインされたＣＵサイズが任意の可能なＣＵサイズであるならば、この場合は、ｐｉｃ＿ｓｃｕ＿ｓｉｚｅ＿ｄｅｌｔａは符号付き値（ｓｅ（ｖ））であってよく、変数Ｌｏｇ２ＭｉｎＣＵＳｉｚｅは、ｌｏｇ２ＳｅｑＭｉｎＣＵＳｉｚｅ−ｐｉｃ＿ｓｃｕ＿ｓｉｚｅ＿ｄｅｌｔａに等しく設定され得る。
【００６９】
上記で説明した例に加えて、一例では、ビデオシーケンスのＬＣＵサイズはＮ×Ｎとして定義され得、上記で説明した例のうちの１つに従って選択されるＡＣＵサイズは、Ｍ×Ｍとして定義され得る。この場合、ピクチャサイズはＬＣＵサイズのユニットでビデオエンコーダ２２によってシグナルされ得、サイズはＷＬ×ＨＬとして定義され得る。したがって、アラインされたＣＵサイズに関するピクチャサイズは、以下の式：
（ＷＬ*Ｎ−ｃｒｏｐ＿ｒｉｇｈｔ＿ｏｆｆｓｅｔ＋Ｍ−１）／Ｍ*Ｍ×（ＨＬ*Ｎ−ｃｒｏｐ＿ｂｏｔｔｏｍ＿ｏｆｆｓｅｔ＋Ｍ−１）／Ｍ*Ｍ、に従ってビデオデコーダ２８によって導出され得る。ここで、ｃｒｏｐ＿ｒｉｇｈｔ＿ｏｆｆｓｅｔおよびｃｒｏｐ＿ｂｏｔｔｏｍ＿ｏｆｆｓｅｔは、クロッピングウィンドウ内でビデオエンコーダ２２によってシグナルされ、右の境界および下の境界からそれぞれクロップされるピクセルの数である。以下の表５において、ＷＬはｐｉｃ＿ｗｉｄｔｈ＿ｉｎ＿ＬＣＵの値であってよく、ＷＨはｐｉｃ＿ｈｅｉｇｈｔ＿ｉｎ＿ＬＣＵの値であることに留意されたい。上の式における演算（たとえば、除算）は、整数計算であってよいことにも留意されたい。
【００７０】
以下の表４は、ｓｅｑ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｒｂｓｐ（）に対する追加のシンタックス要素の別の例を与える。この例では、１つまたは複数のピクチャのサイズは、ラージストコーディングユニット（ＬＣＵ）のサイズに対してビデオエンコーダ２２によってシグナルされ得る。１つまたは複数ピクチャのサイズは、たとえば、シーケンスパラメータセットでビデオエンコーダ２２によってシグナルされ得る。
【００７１】
ピクチャサイズはまた、ｎｕｍ＿ｒｉｇｈｔ＿ｏｆｆｓｅｔ＿ＡＣＵおよびｎｕｍ＿ｂｏｔｔｏｍ＿ｏｆｆｓｅｔ＿ＡＣＵでビデオエンコーダ２２によってシグナルされ得、したがって、ピクチャサイズは、（ＷＬ*Ｎ−Ｍ*ｎｕｍ＿ｒｉｇｈｔ＿ｏｆｆｓｅｔ＿ＡＣＵ）×（ＨＬ*Ｎ−Ｍ*ｎｕｍ＿ｂｏｔｔｏｍ＿ｏｆｆｓｅｔ＿ＡＣＵ）である。これらの２つのパラメータは、ＳＰＳまたはＰＰＳでシグナルされ得る。デコードされたピクチャは、（ＷＬ*Ｎ−ｎｕｍ＿ｃｒｏｐ＿ａｃｕ＿ｒｉｇｈｔ*Ｍ）×（ＨＬ*Ｎ−ｎｕｍ＿ｃｒｏｐ＿ａｃｕ＿ｒｉｇｈｔ*Ｍ）であるアラインされたＣＵに関するピクチャとともにデコーデッドピクチャバッファ内に記憶される。
【００７２】
いくつかの例では、クロッピングウィンドウは、ビデオエンコーダ２２によってさらにシグナルされ得る。クロッピングウィンドウは、ピクチャの少なくとも右側もしくは下側、またはクロップされるべきその他の側を定義することができる。しかしながら、クロッピングウィンドウはさらにシグナルされ得るので、クロッピングウィンドウは、アラインされるＣＵサイズが知られているときに、ピクチャサイズを識別するために使用され得る。
【表４】
0005792388.tif 000009
【００７３】
0005792388.tif 000010
【００７４】
表４に示す例では、幅と高さに関するピクチャのサイズは、ラージストコーディングユニット（ＬＣＵ）に関して与えられる。すなわち、ｐｉｃ＿ｗｉｄｔｈ＿ｉｎ＿ＬＣＵは、ＬＣＵに対する１つまたは複数ピクチャのピクセルにおけるサイズを指定することができる。同様に、ｐｉｃ＿ｈｅｉｇｈｔ＿ｉｎ＿ＬＣＵは、ＬＣＵに対する１つまたは複数ピクチャのピクセルにおけるサイズを指定することができる。シンタックス要素ｎｕｍ＿ｃｒｏｐ＿ａｃｕ＿ｒｉｇｈｔは、クロッピングウィンドウ内でシグナルされ得、ピクチャの右側または他のビデオブロックをクロップされるピクセルの数を定義することができる。同様に、シンタックス要素ｎｕｍ＿ｃｒｏｐ＿ａｃｕ＿ｂｏｔｔｏｍは、クロッピングウィンドウ内でシグナルされ得、ピクチャの下側または他のビデオブロックをクロップされるピクセルの数を定義することができる。他の例では、クロッピングウィンドウの他の側がシグナルされる。
【００７５】
一例を、単なる例示の目的で提供する。この例では、ＬＣＵサイズはＮ×Ｎであり、アラインされたＣＵサイズはＭ×Ｍである。ピクチャサイズは、ＬＣＵのユニットに関してシグナルされ、サイズはＷＬ×ＨＬとして与えられる。この例では、ＷＬはｐｉｃ＿ｗｉｄｔｈ＿ｉｎ＿ＬＣＵの値であり、ＨＬはｐｉｃ＿ｈｅｉｇｈｔ＿ｉｎ＿ＬＣＵの値である。ｃｒｏｐ＿ｒｉｇｈｔ＿ｏｆｆｓｅｔは、右側をクロップするためのピクセルの数を定義し得、ｎｕｍ＿ｃｒｏｐ＿ａｃｕ＿ｒｉｇｈｔに等しいことがある。ｃｒｏｐ＿ｂｏｔｔｏｍ＿ｏｆｆｓｅｔは、下側をクロップするためのピクセルの数を定義し得、ｎｕｍ＿ｃｒｏｐ＿ａｃｕ＿ｂｏｔｔｏｍに等しいことがある。
【００７６】
ＬＣＵサイズおよびアラインされたＣＵサイズに対するピクチャサイズから、アラインされたＣＵ（ＡＣＵ）サイズに関するピクチャサイズは、以下の式、
【数３】
0005792388.tif 000011
【数４】
0005792388.tif 000012
【００７７】
によって決定され得る。式１および式２における演算は、整数計算であってよいことに留意されたい。
【００７８】
表５は、ｐｉｃ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｒｂｓｐ（）に対する追加のシンタックス要素のさらに別の例を与える。この例では、ｎｕｍ＿ｒｉｇｈｔ＿ｏｆｆｓｅｔ＿ＡＣＵおよびｎｕｍ＿ｂｏｔｔｏｍ＿ｏｆｆｓｅｔ＿ＡＣＵの少なくとも一方がシグナルされ得る。表６は、ＳＰＳでシグナルされるｎｕｍ＿ｒｉｇｈｔ＿ｏｆｆｓｅｔ＿ＡＣＵおよびｎｕｍ＿ｂｏｔｔｏｍ＿ｏｆｆｓｅｔ＿ＡＣＵを示すが、これらの値は、他の場所でシグナルされてもよい。たとえば、ｎｕｍ＿ｒｉｇｈｔ＿ｏｆｆｓｅｔ＿ＡＣＵおよびｎｕｍ＿ｂｏｔｔｏｍ＿ｏｆｆｓｅｔ＿ＡＣＵの少なくとも一方が、ＰＰＳでシグナルされてもよい。
【表５】
0005792388.tif 000013
【００７９】
0005792388.tif 000014
【００８０】
表５の値ｎｕｍ＿ｃｒｏｐ＿ａｃｕ＿ｒｉｇｈｔは、右側からそのＬＣＵアラインドピクチャからクロップされる（be cropped from the LCU aligned picture from the right）、アラインされたＣＵサイズの数を指定することができる。クロップされたピクチャは、ＤＰＢ内に記憶され得る。値ｎｕｍ＿ｃｒｏｐ＿ａｃｕ＿ｂｏｔｔｏｍは、ＬＣＵでアラインされたピクチャから、下からクロップされ、そのピクチャがＤＰＢ内に記憶される、アラインされたＣＵサイズの数を指定することができる。
【００８１】
表５に対応する例では、ピクチャサイズはまた、ｎｕｍ＿ｒｉｇｈｔ＿ｏｆｆｓｅｔ＿ＡＣＵおよびｎｕｍ＿ｂｏｔｔｏｍ＿ｏｆｆｓｅｔ＿ＡＣＵでシグナルされ得る。ピクチャサイズは、
【数５】
0005792388.tif 000015
【数６】
0005792388.tif 000016
【００８２】
として決定され得る。
【００８３】
アラインされたＣＵに関するピクチャサイズとともにデコーデッドピクチャバッファ内に記憶され得るデコードされたピクチャは、次のように、
【数７】
0005792388.tif 000017
【００８４】
として与えられ得る。
【００８５】
したがって、アラインされたＣＵのサイズ（ピクセルにおける高さおよび幅）は、ピクチャサイズに関して上記の本例と同じ方法でシグナルされ得る。たとえば、すべてのピクチャが同じ最小ＣＵ（ＳＣＵ）サイズを有する場合、アラインされたＣＵのサイズは、ＳＣＵサイズであってよい。別の例として、ピクチャが異なるＳＣＵサイズを有する場合、アラインされたＣＵサイズは、すべてのピクチャの中のマキシマムまたはミニマムＳＣＵサイズであってよい。アラインされたＣＵサイズは、ＰＰＳもしくはSＰＳの内の少なくとも一つで明示的にシグナルされ得る。アラインされたＣＵサイズは、ＬＣＵのサイズ以下であってよく、かつＳＣＵのサイズ以上であってよい。
【００８６】
以下の表６は、上記で説明した例示的な実施形態のいずれかと併せて使用され得るフレームクロッピングシンタックスの一例を提供する。一例では、クロッピングウィンドウは、シーケンスパラメータセットであってよく、Ｈ．２６４／ＡＶＣにおけるのと同じセマンティクスに従うことができる。
【表６】
0005792388.tif 000018
【００８７】
図２は、本開示で説明する技法を実行するように構成され得る例示的なビデオエンコーダを示すブロック図である。ビデオエンコーダ５０は、ビデオシーケンスを定義する複数のピクチャのそれぞれに対する、複数の可能コーディングユニットサイズから選択される、最小コーディングユニットサイズを決定するように構成され得る。さらに、ビデオエンコーダ５０は、ビデオシーケンスを定義する複数のピクチャのそれぞれに対して決定された最小コーディングユニットに基づいて、ビデオシーケンスのミニマムコーディングユニットサイズを決定するように構成され得る。加えて、ビデオエンコーダ５０は、複数のミニマムコーディングユニットサイズ値である、ビデオシーケンスに関連づけられたピクチャサイズを決定するように構成され得る。その上、ビデオエンコーダ５０は、シーケンスレベルのシンタックス情報内で、ミニマムコーディングユニットサイズ値をシグナルするように構成され得る。
【００８８】
ビデオエンコーダ５０は、デバイス２０のビデオエンコーダ２２、または異なるデバイスのビデオエンコーダに対応することができる。図２に示すように、ビデオエンコーダ５０は、予測エンコーディングユニット３２と、４分木区分モジュール３１と、加算器４８および５１と、メモリ３４とを含むことができる。ビデオエンコーダ５０はまた、変換モジュール３８および量子化モジュール４０、ならびに逆量子化モジュール４２および逆変換モジュール４４を含むことができる。ビデオエンコーダ５０はまた、エントロピーエンコーディングモジュールユニット４６とフィルタモジュール４７とを含み得、フィルタモジュール４７は、デブロックフィルタと、ループ後フィルタおよび／またはループ内フィルタとを含むことができる。エンコーディングの方法を定義するエンコードされたビデオデータおよびシンタックス情報は、ビットストリームに対してエントロピーエンコーディングを実行する、エントロピーエンコーディングモジュール４６に通信され得る。
【００８９】
図２に示すように、予測エンコーディングモジュール３２は、ビデオブロックのエンコーディングにおいて使用される複数の異なるコーディングモード（coding modes）３５をサポートすることができる。予測エンコーディングモジュール３２はまた、動き推定（ＭＥ）モジュール３６と、動き補償（ＭＣ）モジュール３７とを含むことができる。
【００９０】
エンコーディングプロセス中に、ビデオエンコーダ５０は、入力ビデオデータを受信する。４分木区分モジュール３１は、ビデオデータのユニットをより小さいユニットに区分することができる。たとえば、４分木区分モジュール３１は、上記で説明したＨＥＶＣ区分に従ってＬＣＵをより小さいＣＵおよびＰＵに分けることができる。予測エンコーディングモジュール３２は、ビデオブロック（たとえば、ＣＵおよびＰＵ）に対して予測コーディング技法を実行する。インターコーディングの場合、予測エンコーディングモジュール３２は、予測ブロックを定義するために、ＣＵまたはＰＵを、１つまたは複数のビデオ参照フレームまたはスライス（たとえば、参照データの１つまたは複数の「リスト」）中の様々な予測候補と比較する。イントラコーディングの場合、予測エンコーディングモジュール３２は、同じビデオフレームまたはスライス内の近隣のデータに基づいて予測ブロックを生成する。予測エンコーディングモジュール３２は予測ブロックを出力し、加算器４８は、残差ブロック（residual block）を生成するために、コード化されているＣＵまたはＰＵから予測ブロックを減算する。少なくともいくつかのビデオブロックは、ＨＥＶＣに記載される高度な動きベクトル予測（advanced motion vector prediction）（ＡＭＶＰ）を使用してコード化され得る。
【００９１】
場合によっては、予測エンコーディングモジュールは、異なるモードでビデオブロック（たとえば、ＣＵまたはＰＵ）のコーディング結果を比較するレートひずみ（Ｒ−Ｄ）モジュールを含むことができる。この場合、予測エンコーディングモジュール３２はまた、ビデオブロックのためのモード選択を行うために、コーディングレート（すなわち、ブロックに必要なコーディングビット）と、（たとえば、元のブロックに対するコード化されたブロックのビデオ品質を表す）ひずみとに関してコーディング結果を分析するためのモード選択モジュールを含むことができる。このようにして、Ｒ−Ｄモジュールは、モード選択モジュールが、異なるビデオブロックのための所望のモードを選択することを可能にするために、異なるモードの結果の分析を行うことができる。
【００９２】
再び図２を参照すると、予測エンコーディングモジュール３２が予測ブロックを出力し、加算器４８が、残差ピクセル値（residual pixel values）の残差ブロックを生成するために、コード化されているビデオブロックから予測ブロックを減算した後に、変換モジュール３８が残差ブロックに変換を適用する。変換は、離散コサイン変換（discrete cosine transform）（ＤＣＴ）、あるいはＩＴＵ  Ｈ．２６４規格またはＨＥＶＣ規格によって定義された変換など、概念的に同様の変換を備え得る。変換を実行するために、いわゆる「バタフライ」（butterfly）構造が定義され得るか、または行列ベースの乗算も使用され得る。いくつかの例では、ＨＥＶＣ規格に従って、変換のサイズは、たとえば、所与のＬＣＵに関して行われる区分のレベルに応じて、異なるＣＵに対して変動し得る。変換ユニット（ＴＵ）は、変換モジュール３８によって適用される変換サイズを設定するために定義され得る。ウェーブレット変換、整数変換、サブバンド変換または他のタイプの変換をも使用することができる。いずれの場合も、変換モジュール３８は、変換を残差ブロックに適用し、残差変換係数のブロックを生成する。変換は、概して、残差情報（residual information）をピクセル領域から周波数領域に変換し得る。
【００９３】
次いで、量子化モジュール４０は、ビットレートをさらに低減するために残差変換係数を量子化する。量子化モジュール４０は、たとえば、係数の各々をコード化するために使用されるビット数を制限することができる。特に、量子化ユニット４０は、（デルタＱＰを、前のＬＣＵのＱＰまたは何らかの他の知られているＱＰと組み合わせることなどによって）適用すべき量子化レベルを定義するために、ＬＣＵについて定義されたデルタＱＰを適用し得る。残差サンプルに対して量子化が実行された後に、エントロピーエンコーディングモジュール４６は、データを走査し、エントロピーエンコードすることができる。
【００９４】
ＣＡＶＬＣは、エントロピーエンコーディングモジュール４６によってベクトル化ベースで適用され得る、ＩＴＵ  Ｈ．２６４規格と新生のＨＥＶＣ規格とによってサポートされるエントロピーコーディング技法の１つのタイプである。ＣＡＶＬＣは、係数および／またはシンタックス要素のシリアル化「ラン」を効果的に圧縮するように可変長コーディング（ＶＬＣ）テーブルを使用する。ＣＡＢＡＣは、エントロピーエンコーディングモジュール４６によってベクトル化ベースで適用され得る、ＩＴＵ  Ｈ．２６４規格またはＨＥＶＣ規格によってサポートされる別のタイプのエントロピーコーディング技法である。ＣＡＢＡＣは、２値化、コンテキストモデル選択、およびバイナリ算術コーディングを含むいくつかの段を必要とし得る。この場合、エントロピーエンコーディングモジュール４６は、ＣＡＢＡＣに従って係数およびシンタックス要素をコーディングする。多くの他のタイプのエントロピーコーディング技法も存在し、新しいエントロピーコーディング技法が将来出現する可能性がある。本開示は、いかなる特定のエントロピーコーディング技法にも限定されない。
【００９５】
エントロピーエンコーディングモジュール４６によるエントロピーエンコーディングの後、エンコードされたビデオは、別のデバイスに送信されるか、あるいは後で送信または検索するためにアーカイブされ得る。エンコードされたビデオは、エントロピーエンコード化されたベクトルおよび様々なシンタックス情報を含むことができる。そのような情報は、デコーディングプロセスを適切に構成するためにデコーダによって使用され得る。逆量子化モジュール４２および逆変換モジュール４４は、それぞれ逆量子化および逆変換を適用して、ピクセル領域中の残差ブロックを再構成する。加算器５１は、再構成された残差ブロックを、予測コーディングモジュール３２によって生成された予測ブロックに加算して、メモリ３４に記憶するための再構成されたビデオブロックを生成する。メモリ３４はデコーデッドピクチャバッファを含み得、再構成されたビデオブロックはデコードされたピクチャを形成することができる。しかしながら、そのような記憶より前に、フィルタモジュール４７は、ビデオ品質を改善するためにビデオブロックにフィルタ処理を適用することができる。フィルタモジュール４７によって適用されるフィルタ処理は、アーティファクト（artifacts）を低減し、ピクセル境界を平滑化することができる。さらに、フィルタ処理は、エンコード化されているビデオブロックへの緊密な一致を含む予測ビデオブロックを生成することによって、圧縮を改善することができる。
【００９６】
図３は、ビデオエンコーダ２２またはビデオエンコーダ５０によって実行され得るビデオデータをエンコードするための例示的な技法を示すフローチャートである。ビデオエンコーダ２２またはビデオエンコーダ５０は、ビデオシーケンスを定義する複数のピクチャのそれぞれに対する最小コーディングユニットサイズを決定することができる（３０２）。場合によっては、最小コーディングユニットサイズは、複数の可能コーディングユニットサイズから選択され得る。たとえば、最小コーディングユニットは、４×４、８×８、１６×１６、３２×３２、または６４×６４のうちの１つであってよく、ここで、６４×６４は、マキシマム可能コーディングユニットサイズである。ビデオエンコーダ２２またはビデオエンコーダ５０は、決定された最小コーディングユニットから、ビデオシーケンスのためにアラインされたコーディングユニットサイズを決定することができる（３０４）。ビデオエンコーダ２５またはビデオエンコーダ５０は、上記で説明した技法に基づいてアラインされたコーディングサイズを決定することができる。ビデオエンコーダ２２またはビデオエンコーダ５０は、アラインされたコーディングユニットサイズ値の倍数である、ビデオシーケンスに関連づけられたピクチャサイズを決定する（３０６）。場合によっては、ビデオシーケンスに関連づけられたピクチャサイズは、デコーデッドピクチャバッファ内に記憶された、デコードされたピクチャのピクチャサイズであってよい。ビデオエンコーダ２２またはビデオエンコーダ５０は、シーケンスレベルのシンタックス情報内でアラインされたコーディングユニットサイズ値をシグナルすることができる（３０８）。
【００９７】
図４は、本明細書で説明する方法でエンコードされるビデオシーケンスをデコードするビデオデコーダ６０の一例を示すブロック図である。本開示の技法は、いくつかの例ではビデオデコーダ６０によって実行され得る。ビデオデコーダ６０は、第１の最小コーディングユニットサイズを使用してコード化された第１のピクチャと、第２の最小コーディングユニットサイズを使用してコード化された第２のピクチャとを含む、コード化されたビデオシーケンスを取得するように構成され得る。さらに、ビデオデコーダ６０は、デコーデッドピクチャバッファ内に記憶されるデコードされたピクチャのピクチャサイズを取得するように構成され得、ピクチャサイズは、第１のコーディングユニットサイズおよび第２のコーディングユニットサイズの一方の倍数である。加えて、ビデオデコーダ６０は、デコーデッドピクチャバッファ内にデコードされたピクチャを記憶するように構成され得る。
【００９８】
ビデオデコーダ６０は、図２のエントロピーエンコーディングモジュール４６によって実行されるエンコーディングと逆のデコーディング機能を実行するエントロピーデコーディングモジュール５２を含む。特に、エントロピーデコーディングモジュール５２は、ＣＡＶＬＣまたはＣＡＢＡＣデコーディング、あるいはビデオエンコーダ５０によって使用される他のタイプのエントロピーデコーディングを実行することができる。ビデオデコーダ６０はまた、予測デコーディングモジュール５４と、逆量子化モジュール５６と、逆変換モジュール５８と、メモリ６２と、加算器６４とを含む。特に、ビデオエンコーダ５０と同様に、ビデオデコーダ６０は、予測デコーディングモジュール５４とフィルタモジュール５７とを含む。ビデオデコーダ６０の予測デコーディングモジュール５４は、インターコード化されたブロックをデコードし、場合によっては、動き補償プロセスにおけるサブピクセル補間のための１つまたは複数の補間フィルタを含む、動き補償モジュール８６を含むことができる。予測デコーディングモジュール５４はまた、イントラモードをデコードするためのイントラ予測モジュール８８を含むことができる。予測デコーディングモジュール５４は、複数のモード５５をサポートすることができる。フィルタモジュール５７は、加算器６４の出力をフィルタ処理し、ループフィルタ処理において適用されるフィルタ係数を定義するために、エントロピーデコードされたフィルタ情報を受信することができる。
【００９９】
エンコードされたビデオデータを受信すると、エントロピーデコーディングモジュール５２は、（図２のエンコーダ５０の）エントロピーエンコーディングモジュール４６によって実行されるエンコーディングに対して逆のデコーディングを実行する。デコーダにおいて、エントロピーデコーディングモジュール５２は、ＬＣＵと、ＬＣＵに関連づけられた、対応する区分とを決定するためにビットストリームをパースする（parse）。いくつかの例では、ＬＣＵまたはＬＣＵのＣＵは、使用されたコーディングモードを定義し得、これらのコーディングモードは、両方向予測マージモードを含むことができる。したがって、エントロピーデコーディングモジュール５２は、シンタックス情報を、両方向予測マージモードを識別する予測ユニットに転送することができる。メモリ６２は、デコーデッドピクチャバッファを含むことができる。デコーデッドピクチャバッファは、デコードされたピクチャを記憶することができる。デコードされたピクチャは、予測デコーディングの間に参照されるように、ビデオシーケンスに関連づけられ得る。シンタックス情報は、本明細書で説明する技法に従って、デコーデッドピクチャバッファ内に記憶されるデコードされたピクチャのサイズを決定するために、ビデオデコーダ６０によって使用され得る。
【０１００】
図５は、ビデオデコーダ２８またはビデオデコーダ６０によって実行され得る、ビデオデータをデコードするための例示的な技法を示すフローチャートである。ビデオデコーダ２８またはビデオデコーダ６０は、第１の最小コーディングユニットサイズを使用してコード化された第１のピクチャと、第２の最小コーディングユニットサイズを使用してコード化された第２のピクチャとを含むコード化されたビデオシーケンスを取得することができる（５０２）。一例では、第１のピクチャは、４×４の最小コーディングユニットサイズを使用してコード化され得、第２のピクチャは、８×８の最小コーディングユニットサイズを使用してコード化され得る。ビデオデコーダ２８またはビデオデコーダ６０は、第１のコーディングユニットサイズ、第２のコーディングユニットサイズ、またはマキシマムコーディングユニットサイズのうちの１つのサイズの倍数である、デコーデッドピクチャバッファ内に記憶されるデコードされたピクチャのピクチャサイズを取得することができる（５０４）。一例では、ピクチャサイズは１９２０×１０８０であってよい。ビデオデコーダ２８またはビデオデコーダ６０は、デコーデッドピクチャバッファ内にデコードされたピクチャを記憶することができる（５０６）。さらに、ビデオデコーダ２８またはビデオデコーダ６０は、取得されたピクチャサイズが、アラインされたコーディングユニットサイズの倍数であるかどうかに基づいて、ビデオシーケンスを含むビットストリームが、適合するビットストリームであるかどうかを判断することができる。
【０１０１】
１つまたは複数の例では、説明した機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、１つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、たとえば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含むデータ記憶媒体または通信媒体などの有形媒体に対応するコンピュータ可読記憶媒体を含み得る。このようにして、コンピュータ可読媒体は、概して、（１）非一時的である有形コンピュータ可読記憶媒体、あるいは（２）信号または搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明した技法の実装のための命令、コードおよび／またはデータ構造を取り出すために１つまたは複数のコンピュータあるいは１つまたは複数のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品は、コンピュータ可読媒体を含み得る。
【０１０２】
限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭまたは他の光ディスクストレージ、磁気ディスクストレージ、または他の磁気ストレージデバイス、フラッシュメモリ、あるいは命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。同様に、いかなる接続も適切にコンピュータ可読媒体と称される。たとえば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。ただし、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時的媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザディスク（登録商標）（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）およびブルーレイディスク（disc）を含み、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含めるべきである。
【０１０３】
命令は、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）などの１つまたは複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、あるいは他の等価な集積回路またはディスクリート論理回路によって実行され得る。したがって、本明細書で使用する「プロセッサ」という用語は、前述の構造、または本明細書で説明する技法の実装に好適な他の構造のいずれかを指す。さらに、いくつかの態様では、本明細書で説明した機能は、エンコードおよびデコードするために構成された専用のハードウェアおよび／またはソフトウェアモジュール内に与えられ得、あるいは複合コーデックに組み込まれ得る。また、本技法は、１つまたは複数の回路または論理要素中に十分に実装され得る。
【０１０４】
本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）、またはＩＣのセット（たとえば、チップセット）を含む、多種多様なデバイスまたは装置において実装され得る。本開示では、開示する技法を実行するように構成されたデバイスの機能的態様を強調するために様々な構成要素、モジュール、またはユニットについて説明したが、それらの構成要素、モジュール、またはユニットを、必ずしも異なるハードウェアユニットによって実現する必要があるとは限らない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェアおよび／またはファームウェアとともに、上記で説明した１つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作ハードウェアユニットの集合によって与えられ得る。
【０１０５】
本開示の様々な態様について説明した。これらおよび他の態様は以下の特許請求の範囲内に入る。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[Ｃ１]
ビデオデータをエンコードする方法であって、
ビデオシーケンスを定義する複数のピクチャのそれぞれに対する最小コーディングユニットサイズを決定することであって、最小コーディングユニットサイズが、マキシマム可能コーディングユニットサイズを含む複数の可能コーディングユニットサイズから選択されることと、
前記複数の可能コーディングユニットサイズに基づいて前記ビデオシーケンスに対してアラインされたコーディングユニットサイズを決定することと、
前記ビデオシーケンスに関連づけられたピクチャサイズを決定することであって、前記ビデオシーケンスに関連づけられたピクチャサイズが前記アラインされたコーディングユニットサイズの倍数であることと、
シーケンスレベルのシンタックス情報内で、前記アラインされたコーディングユニットサイズの値をシグナルリングすることとを含む、方法。
[Ｃ２]
前記アラインされたコーディングユニットサイズが、前記マキシマム可能コーディングユニットサイズである、請求項１に記載の方法。
[Ｃ３]
前記複数の可能コーディングユニットサイズが、６４×６４ピクセルのマキシマムコーディングユニットサイズを含む、請求項２に記載の方法。
[Ｃ４]
前記複数のピクチャのそれぞれに対する最小コーディングユニットサイズを決定することが、第１のピクチャに対して４×４ピクセルの第１の最小コーディングユニットサイズを決定することと、第２のピクチャに対して８×８ピクセルの第２の最小コーディングユニットサイズを決定することとを含み、前記ビデオシーケンスの前記アラインされたコーディングユニットサイズが４×４ピクセルである、請求項１に記載の方法。
[Ｃ５]
前記複数のピクチャのそれぞれに対する最小コーディングユニットサイズを決定することが、第１のピクチャに対して４×４ピクセルの第１の最小コーディングユニットサイズを決定することと、第２のピクチャに対して８×８ピクセルの第２の最小コーディングユニットサイズを決定することとを含み、前記ビデオシーケンスの前記アラインされたコーディングユニットサイズが８×８ピクセルである、請求項１に記載の方法。
[Ｃ６]
前記ピクチャサイズが、デコーデッドピクチャバッファ内に記憶されるデコードされたピクチャのピクチャサイズを指定する、請求項１に記載の方法。
[Ｃ７]
ビデオデータをエンコードするように構成されたデバイスであって、
ビデオシーケンスを定義する複数のピクチャのそれぞれに対する最小コーディングユニットサイズを決定するための手段であって、最小コーディングユニットサイズが、マキシマム可能コーディングユニットサイズを含む複数の可能コーディングユニットサイズから選択される、手段と、
前記複数の可能コーディングユニットサイズに基づいて前記ビデオシーケンスに対してアラインされたコーディングユニットサイズを決定するための手段と、
前記ビデオシーケンスに関連づけられたピクチャサイズを決定するための手段であって、前記ビデオシーケンスに関連づけられたピクチャサイズが前記アラインされたコーディングユニットサイズの倍数である、手段と、
シーケンスレベルのシンタックス情報内で、前記アラインされたコーディングユニットサイズの値をシグナルリングするための手段とを含む、デバイス。
[Ｃ８]
前記アラインされたコーディングユニットサイズが、前記マキシマム可能コーディングユニットサイズである、請求項７に記載のデバイス。
[Ｃ９]
前記複数の可能コーディングユニットサイズが、６４×６４ピクセルのマキシマムコーディングユニットサイズを含む、請求項７に記載のデバイス。
[Ｃ１０]
複数のピクチャのそれぞれに対する最小コーディングユニットサイズを決定することが、第１のピクチャに対して４×４ピクセルの第１の最小コーディングユニットサイズを決定することと、第２のピクチャに対して８×８ピクセルの第２の最小コーディングユニットサイズを決定することとを含み、前記ビデオシーケンスの前記アラインされコーディングユニットサイズが４×４ピクセルである、請求項７に記載のデバイス。
[Ｃ１１]
複数のピクチャのそれぞれに対する最小コーディングユニットサイズを決定することが、第１のピクチャに対して４×４ピクセルの第１の最小コーディングユニットサイズを決定することと、第２のピクチャに対して８×８ピクセルの第２の最小コーディングユニットサイズを決定することとを含み、前記ビデオシーケンスの前記アラインされたコーディングユニットサイズが８×８ピクセルである、請求項７に記載のデバイス。
[Ｃ１２]
前記ピクチャサイズが、デコーデッドピクチャバッファ内に記憶されるデコードされたピクチャのピクチャサイズを指定する、請求項７に記載のデバイス。
[Ｃ１３]
ビデオエンコーダを備えるデバイスであって、前記ビデオエンコーダが、
ビデオシーケンスを定義する複数のピクチャのそれぞれに対する最小コーディングユニットサイズを決定することであって、最小コーディングユニットサイズが、マキシマム可能コーディングユニットサイズを含む複数の可能コーディングユニットサイズから選択されることと、
前記複数の可能コーディングユニットサイズに基づいて前記ビデオシーケンスに対してアラインされたコーディングユニットサイズを決定することと、
前記ビデオシーケンスに関連づけられたピクチャサイズを決定することであって、前記ビデオシーケンスに関連づけられたピクチャサイズが前記アラインされたコーディングユニットサイズの倍数であることと、
シーケンスレベルのシンタックス情報内で、前記アラインされたコーディングユニットサイズの値をシグナルすることとを行うように構成される、デバイス。
[Ｃ１４]
前記アラインされたコーディングユニットサイズが、前記マキシマム可能コーディングユニットサイズである、請求項１３に記載のデバイス。
[Ｃ１５]
前記複数の可能コーディングユニットサイズが、６４×６４ピクセルのマキシマムコーディングユニットサイズを含む、請求項１４に記載のデバイス。
[Ｃ１６]
複数のピクチャのそれぞれに対する最小コーディングユニットサイズを決定することが、第１のピクチャに対して４×４ピクセルの第１の最小コーディングユニットサイズを決定することと、第２のピクチャに対して８×８ピクセルの第２の最小コーディングユニットサイズを決定することとを含み、前記ビデオシーケンスの前記アラインされたコーディングユニットサイズが４×４ピクセルである、請求項１３に記載のデバイス。
[Ｃ１７]
複数のピクチャのそれぞれに対する最小コーディングユニットサイズを決定することが、第１のピクチャに対して４×４ピクセルの第１の最小コーディングユニットサイズを決定することと、第２のピクチャに対して８×８ピクセルの第２の最小コーディングユニットサイズを決定することとを含み、前記ビデオシーケンスの前記アラインされたコーディングユニットサイズが８×８ピクセルである、請求項１３に記載のデバイス。
[Ｃ１８]
前記ピクチャサイズが、デコーデッドピクチャバッファ内に記憶されるデコードされたピクチャのピクチャサイズを指定する、請求項１３に記載のデバイス。
[Ｃ１９]
命令を記憶したコンピュータ可読媒体であって、前記命令が実行されると、プロセッサに、
ビデオシーケンスを定義する複数のピクチャのそれぞれに対する最小コーディングユニットサイズを決定することであって、最小コーディングユニットサイズが、マキシマム可能コーディングユニットサイズを含む複数の可能コーディングユニットサイズから選択されることと、
前記複数の可能コーディングユニットサイズに基づいて前記ビデオシーケンスに対してアラインされたコーディングユニットサイズを決定することと、
前記ビデオシーケンスに関連づけられたピクチャサイズを決定することであって、前記ビデオシーケンスに関連づけられたピクチャサイズが前記アラインされたコーディングユニットサイズの倍数であることと、
シーケンスレベルのシンタックス情報内で、前記アラインされたコーディングユニットサイズの値をシグナルすることとを行わせる、コンピュータ可読媒体。
[Ｃ２０]
前記アラインされたコーディングユニットサイズが、前記マキシマム可能コーディングユニットサイズである、請求項１９に記載のコンピュータ可読媒体。
[Ｃ２１]
前記複数の可能コーディングユニットサイズが、６４×６４ピクセルのマキシマムコーディングユニットサイズを含む、請求項２０に記載のコンピュータ可読媒体。
[Ｃ２２]
複数のピクチャのそれぞれに対する最小コーディングユニットサイズを決定することが、第１のピクチャに対して４×４ピクセルの第１の最小コーディングユニットサイズを決定することと、第２のピクチャに対して８×８ピクセルの第２の最小コーディングユニットサイズを決定することとを含み、前記ビデオシーケンスの前記ミニマムコーディングユニットサイズが４×４ピクセルである、請求項１９に記載のコンピュータ可読媒体。
[Ｃ２３]
複数のピクチャのそれぞれに対する最小コーディングユニットサイズを決定することが、第１のピクチャに対して４×４ピクセルの第１の最小コーディングユニットサイズを決定することと、第２のピクチャに対して８×８ピクセルの第２の最小コーディングユニットサイズを決定することとを含み、前記ビデオシーケンスの前記ミニマムコーディングユニットサイズが８×８ピクセルである、請求項１９に記載のコンピュータ可読媒体。
[Ｃ２４]
前記ピクチャサイズが、デコーデッドピクチャバッファ内に記憶されるデコードされたピクチャのピクチャサイズを指定する、請求項１９に記載のコンピュータ可読媒体。
[Ｃ２５]
ビデオデータをデコードする方法であって、
第１の最小コーディングユニットサイズを使用してコード化された第１のピクチャと、第２の最小コーディングユニットサイズを使用してコード化された第２のピクチャとを含むコード化されたビデオシーケンスを取得することと、
第１のコーディングユニットサイズ、第２のコーディングユニットサイズ、またはマキシマムコーディングユニットサイズのうちの１つのサイズの倍数である、デコーデッドピクチャバッファ内に記憶されるデコードされたピクチャのピクチャサイズを取得することと、
デコーデッドピクチャバッファ内に前記デコードされたピクチャを記憶することとを含む、方法。
[Ｃ２６]
前記第１の最小コーディングユニットサイズが４×４ピクセルであり、前記第２のコーディングユニットサイズが８×８ピクセルであり、前記ピクチャサイズが前記第１のコーディングユニットサイズの倍数である、請求項２５に記載の方法。
[Ｃ２７]
前記第１の最小コーディングユニットサイズが４×４ピクセルであり、前記第２のコーディングユニットサイズが８×８ピクセルであり、前記ピクチャサイズが前記第２のコーディングユニットサイズの倍数である、請求項２５に記載の方法。
[Ｃ２８]
前記マキシマムコーディングユニットサイズが６４×６４ピクセルであり、前記ピクチャサイズが前記マキシマムコーディングユニットサイズの倍数である、請求項２５に記載の方法。
[Ｃ２９]
ビデオデータをデコードするように構成されたデバイスであって、
第１の最小コーディングユニットサイズを使用してコード化された第１のピクチャと、第２の最小コーディングユニットサイズを使用してコード化された第２のピクチャとを含むコード化されたビデオシーケンスを取得するための手段と、
第１のコーディングユニットサイズ、第２のコーディングユニットサイズ、またはマキシマムコーディングユニットサイズのうちの１つのサイズの倍数である、デコーデッドピクチャバッファ内に記憶されるデコードされたピクチャのピクチャサイズを取得するための手段と、
デコーデッドピクチャバッファ内に前記デコードされたピクチャを記憶するための手段とを含む、デバイス。
[Ｃ３０]
前記第１の最小コーディングユニットサイズが４×４ピクセルであり、前記第２のコーディングユニットサイズが８×８ピクセルであり、前記ピクチャサイズが前記第１のコーディングユニットサイズの倍数である、請求項２９に記載のデバイス。
[Ｃ３１]
前記第１の最小コーディングユニットサイズが４×４ピクセルであり、前記第２のコーディングユニットサイズが８×８ピクセルであり、前記ピクチャサイズが前記第２のコーディングユニットサイズの倍数である、請求項２９に記載のデバイス。
[Ｃ３２]
前記マキシマムコーディングユニットサイズが６４×６４ピクセルであり、前記ピクチャサイズが前記マキシマムコーディングユニットサイズの倍数である、請求項２９に記載のデバイス。
[Ｃ３３]
ビデオデコーダを備えるデバイスであって、前記ビデオデコーダが、
第１の最小コーディングユニットサイズを使用してコード化された第１のピクチャと、第２の最小コーディングユニットサイズを使用してコード化された第２のピクチャとを含むコード化されたビデオシーケンスを取得し、
第１のコーディングユニットサイズ、第２のコーディングユニットサイズ、またはマキシマムコーディングユニットサイズのうちの１つのサイズの倍数である、デコーデッドピクチャバッファ内に記憶されるデコードされたピクチャのピクチャサイズを取得し、
デコーデッドピクチャバッファ内に前記デコードされたピクチャを記憶するように構成される、デバイス。
[Ｃ３４]
前記第１の最小コーディングユニットサイズが４×４ピクセルであり、前記第２のコーディングユニットサイズが８×８ピクセルであり、前記ピクチャサイズが前記第１のコーディングユニットサイズの倍数である、請求項３３に記載のデバイス。
[Ｃ３５]
前記第１の最小コーディングユニットサイズが４×４ピクセルであり、前記第２のコーディングユニットサイズが８×８ピクセルであり、前記ピクチャサイズが前記第２のコーディングユニットサイズの倍数である、請求項３３に記載のデバイス。
[Ｃ３６]
前記マキシマムコーディングユニットサイズが６４×６４ピクセルであり、前記ピクチャサイズが前記マキシマムコーディングユニットサイズの倍数である、請求項３３に記載のデバイス。
[Ｃ３７]
命令を記憶したコンピュータ可読媒体であって、前記命令が実行されると、プロセッサに、
第１の最小コーディングユニットサイズを使用してコード化された第１のピクチャと、第２の最小コーディングユニットサイズを使用してコード化された第２のピクチャとを含むコード化されたビデオシーケンスを取得させ、
第１のコーディングユニットサイズ、第２のコーディングユニットサイズ、またはマキシマムコーディングユニットサイズのうちの１つのサイズの倍数である、デコーデッドピクチャバッファ内に記憶されるデコードされたピクチャのピクチャサイズを取得させ、
デコーデッドピクチャバッファ内に前記デコードされたピクチャを記憶させる、コンピュータ可読媒体。
[Ｃ３８]
前記第１の最小コーディングユニットサイズが４×４ピクセルであり、前記第２のコーディングユニットサイズが８×８ピクセルであり、前記ピクチャサイズが前記第１のコーディングユニットサイズの倍数である、請求項３７に記載のコンピュータ可読媒体。
[Ｃ３９]
前記第１の最小コーディングユニットサイズが４×４ピクセルであり、前記第２のコーディングユニットサイズが８×８ピクセルであり、前記ピクチャサイズが前記第１のコーディングユニットサイズの倍数である、請求項３７に記載のコンピュータ可読媒体。
[Ｃ４０]
前記マキシマムコーディングユニットサイズが６４×６４ピクセルであり、前記ピクチャサイズが前記マキシマムコーディングユニットサイズの倍数である、請求項３７に記載のコンピュータ可読媒体。
【図１】
0005792388.tif 000019
【図２】
0005792388.tif 000020
【図３】
0005792388.tif 000021
【図４】
0005792388.tif 000022
【図５】
0005792388.tif 000023