(57)【特許請求の範囲】
【請求項１】
ビデオ復号の方法であって、
符号化されたビデオビットストリームを受信することと、
深度コーディングユニット（ＣＵ）の予測ユニット（ＰＵ）に対するデルタＤＣ残差値を表すシンタックス要素に関して前記ビットストリームから複数のビンを復号することであって、ここにおいて、復号することは、
１つまたは複数のコンテキストモデルを使用して、前記シンタックス要素に関するＮ個以下の先行ビンを復号すること、ここにおいて、Ｎは、前記シンタックス要素に関する前記複数のビンの最大可能数よりも小さい、と、
１つまたは複数のコンテキストモデルを使用して復号されなかった前記シンタックス要素に関する残存ビンをバイパス復号することと、
を備える復号することと、
前記復号されたビンに基づいて前記シンタックス要素を生成することと、
前記シンタックス要素によって表される前記デルタＤＣ残差値に少なくとも部分的に基づいて、前記ＰＵを再構築することと、
を備え、前記Ｎ個以下の先行ビンを復号することが、
０値を有する最初のビンが前記シンタックス要素の前記Ｎ個の先行ビンの中に位置する場合に、前記０値を有する前記最初のビンおよび前記０値を有する前記最初のビンの前の先行ビンだけを、１つまたは複数のコンテキストモデルを使用して復号すること、または
０値を有する最初のビンが前記シンタックス要素の前記Ｎ個の先行ビンの中に位置しない場合に、前記先行するＮ個のビンだけを、１つまたは複数のコンテキストモデルを使用して復号すること
を備える、方法。
【請求項２】
前記複数のビンを生成するために、ｃＲｉｃｅＰａｒａｍ＝０による、短縮ライス（ＴＲ）コードによりバイナリ化されたプレフィックスビン列および０次指数ゴロム（ＥＧ０）コードによりバイナリ化されたサフィックスビン列の連結を使用して、前記シンタックス要素の値がバイナリ化され、前記ＴＲコードのｃＭａｘ値がＮに等しい、請求項１に記載の方法。
【請求項３】
前記複数のビンを生成するために、ｃＲｉｃｅＰａｒａｍ＝０による、短縮ライス（ＴＲ）コードによりバイナリ化されたプレフィックスビン列およびｋ次指数ゴロム（ＥＧｋ）コードによりバイナリ化されたサフィックスビン列の連結を使用して、前記シンタックス要素の値がバイナリ化され、ｋが０ではなく、前記ＴＲコードのｃＭａｘ値がＮに等しい、請求項１に記載の方法。
【請求項４】
前記複数のビンを生成するために、ｃＲｉｃｅＰａｒａｍ＝０による、短縮ライス（ＴＲ）コードによりバイナリ化されたプレフィックスビン列および固定長コードによりバイナリ化されたサフィックスビン列の連結を使用して、前記シンタックス要素の値がバイナリ化される、請求項１に記載の方法。
【請求項５】
前記シンタックス要素の値が前記ｃＭａｘ値よりも小さい場合、前記バイナリ化によって前記サフィックスビン列が生成されない、請求項２または３に記載の方法。
【請求項６】
前記複数のビンを生成するために、ｋ次指数ゴロム（ＥＧｋ）コードを使用して、前記シンタックス要素の値がバイナリ化される、請求項１に記載の方法。
【請求項７】
ｋ＝０である、請求項６に記載の方法。
【請求項８】
前記シンタックス要素が、前記ＰＵの１つまたは複数の区分のうちの１つの区分に対する前記デルタＤＣ残差値を表す、請求項１から７のいずれかに記載の方法。
【請求項９】
前記ＰＵを再構築することが、前記デルタＤＣ残差値および予測される区分に少なくとも部分的に基づいて、前記区分を再構築することを備える、請求項８に記載の方法。
【請求項１０】
前記予測される区分がイントラ予測され、前記シンタックス要素がｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素を備える、請求項９に記載の方法。
【請求項１１】
前記予測される区分がインター予測され、前記シンタックス要素がｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素を備える、請求項９に記載の方法。
【請求項１２】
前記デルタＤＣ残差値が、前記区分の平均ピクセル値と前記予測される区分の平均ピクセル値との間の差分を示す、請求項９から１１のいずれかに記載の方法。
【請求項１３】
フラグまたは他のシンタックス情報を受信することと、
前記フラグまたは他のシンタックス情報が第１の値を有する場合に、前記１つまたは複数のコンテキストモデルを使用して、前記Ｎ個以下の先行ビンを復号することと、
前記フラグまたは他のシンタックス情報が第２の値を有する場合に、前記１つまたは複数のコンテキストモデルを使用する、前記Ｎ個よりも多い先行ビンの復号を許可することと、
をさらに備える、請求項１から１２のいずれかに記載の方法。
【請求項１４】
同じコンテキストモデルを使用して、前記シンタックス要素の前記Ｎ個以下の先行ビンを復号することをさらに備える、請求項１から１３のいずれかに記載の方法。
【請求項１５】
異なるコンテキストモデルを使用して、前記シンタックス要素の前記Ｎ個以下の先行ビンのうちの少なくともいくつかを復号することをさらに備える、請求項１から１３のいずれかに記載の方法。
【請求項１６】
前記シンタックス要素の値が、前記値の全範囲よりも小さい範囲に切取られ、前記複数のビンが、前記切取られた値のバイナリ化によって生成される、請求項１から１５のいずれかに記載の方法。
【請求項１７】
前記シンタックス要素の前記値が、バイナリ化が前記Ｎ個以下の先行ビンを生成するように切取られる、請求項１６に記載の方法。
【請求項１８】
前記Ｎ個以下の先行ビンを復号することが、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）エントロピーコーダの正規コーディングエンジンを使用して、前記Ｎ個以下の先行ビンを復号することを備え、前記残存ビンをバイパス復号することが、前記ＣＡＢＡＣエントロピーコーダのバイパスコーディングエンジンを使用して、前記残存ビンをバイパス復号することを備える、請求項１から１７のいずれかに記載の方法。
【請求項１９】
ビデオデータを符号化する方法であって、
深度コーディングユニット（ＣＵ）の予測ユニット（ＰＵ）に対するデルタＤＣ残差値を表すシンタックス要素を生成することと、
前記シンタックス要素をバイナリ化することと、
１つまたは複数のコンテキストモデルを使用して、前記バイナリ化されたシンタックス要素のＮ個以下の先行ビンを符号化すること、ここにおいて、Ｎは、前記バイナリ化されたシンタックス要素の複数のビンの最大可能数よりも小さい、と、
１つまたは複数のコンテキストモデルを使用して符号化されなかった前記バイナリ化されたシンタックス要素の残存ビンをバイパス符号化することと、
符号化されたビットストリームにおいて、前記符号化されたビンに対応するビットをシグナリングすることと、
を備え、前記Ｎ個以下の先行ビンを符号化することが、
０値を有する最初のビンが前記シンタックス要素の前記Ｎ個の先行ビンの中に位置する場合に、前記０値を有する前記最初のビンおよび前記０値を有する前記最初のビンの前の先行ビンだけを、１つまたは複数のコンテキストモデルを使用して符号化すること、または
０値を有する最初のビンが前記シンタックス要素の前記Ｎ個の先行ビンの中に位置しない場合に、前記先行するＮ個のビンだけを、１つまたは複数のコンテキストモデルを使用して符号化すること
を備える、方法。
【請求項２０】
前記複数のビンを生成するために、ｃＲｉｃｅＰａｒａｍ＝０による、短縮ライス（ＴＲ）コードによりバイナリ化されたプレフィックスビン列および０次指数ゴロム（ＥＧ０）コードによりバイナリ化されたサフィックスビン列の連結を使用して、前記シンタックス要素の値をバイナリ化することをさらに備え、前記ＴＲコードのｃＭａｘ値がＮに等しい、請求項１９に記載の方法。
【請求項２１】
前記複数のビンを生成するために、ｃＲｉｃｅＰａｒａｍ＝０による、短縮ライス（ＴＲ）コードによりバイナリ化されたプレフィックスビン列およびｋ次指数ゴロム（ＥＧｋ）コードによりバイナリ化されたサフィックスビン列の連結を使用して、前記シンタックス要素の値をバイナリ化することをさらに備え、ｋが０ではなく、前記ＴＲコードのｃＭａｘ値がＮに等しい、請求項１９に記載の方法。
【請求項２２】
前記複数のビンを生成するために、ｃＲｉｃｅＰａｒａｍ＝０による、短縮ライス（ＴＲ）コードによりバイナリ化されたプレフィックスビン列および固定長コードによりバイナリ化されたサフィックスビン列の連結を使用して、前記シンタックス要素の値をバイナリ化することをさらに備える、請求項１９に記載の方法。
【請求項２３】
前記シンタックス要素の値が前記ｃＭａｘ値よりも小さい場合、前記バイナリ化によって前記サフィックスビン列が生成されない、請求項２０または２１に記載の方法。
【請求項２４】
前記複数のビンを生成するために、ｋ次指数ゴロム（ＥＧｋ）コードを使用して、前記シンタックス要素の値がバイナリ化される、請求項１９に記載の方法。
【請求項２５】
ｋ＝０である、請求項２４に記載の方法。
【請求項２６】
前記シンタックス要素が、前記ＰＵの１つまたは複数の区分のうちの１つの区分に対する前記デルタＤＣ残差値を表す、請求項１９から２５のいずれかに記載の方法。
【請求項２７】
前記ＰＵの前記区分に対する予測される区分を生成することをさらに備え、前記デルタＤＣ残差値が、前記区分の平均ピクセル値と前記予測される区分の平均ピクセル値との間の差分を示す、請求項２６に記載の方法。
【請求項２８】
前記予測される区分がイントラ予測され、前記シンタックス要素がｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素を備える、請求項２７に記載の方法。
【請求項２９】
前記予測される区分がインター予測され、前記シンタックス要素がｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素を備える、請求項２７に記載の方法。
【請求項３０】
前記Ｎ個以下の先行ビンが前記１つまたは複数のコンテキストモデルを使用して符号化されることを示す第１の値と、前記Ｎ個よりも多い先行ビンが前記１つまたは複数のコンテキストモデルを使用して符号化されることを示す第２の値とを有するフラグまたは他のシンタックス情報を生成することをさらに備える、請求項１９から２９のいずれかに記載の方法。
【請求項３１】
同じコンテキストモデルを使用して、前記シンタックス要素の前記Ｎ個以下の先行ビンを符号化することをさらに備える、請求項１９から３０のいずれかに記載の方法。
【請求項３２】
異なるコンテキストモデルを使用して、前記シンタックス要素の前記Ｎ個以下の先行ビンのうちの少なくともいくつかを符号化することをさらに備える、請求項１９から３０のいずれかに記載の方法。
【請求項３３】
前記シンタックス要素の値を、前記値の全範囲よりも小さい範囲に切取ることをさらに備え、前記複数のビンが、前記切取られた値のバイナリ化によって生成される、請求項１９から３２のいずれかに記載の方法。
【請求項３４】
前記シンタックス要素の前記値を、バイナリ化が前記Ｎ個以下の先行ビンを生成するように切取ることをさらに備える、請求項３３に記載の方法。
【請求項３５】
前記Ｎ個以下の先行ビンを符号化することが、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）エントロピーコーダの正規コーディングエンジンを使用して、前記Ｎ個以下の先行ビンを符号化することを備え、前記残存ビンをバイパス符号化することが、前記ＣＡＢＡＣエントロピーコーダのバイパスコーディングエンジンを使用して、前記残存ビンをバイパス符号化することを備える、請求項１９から３４のいずれかに記載の方法。
【請求項３６】
ビデオコーディングデバイスであって、
コーディングされたビデオビットストリームを記憶するメモリ、ここにおいて、前記ビットストリームは、深度コーディングユニット（ＣＵ）の予測ユニット（ＰＵ）に対するデルタＤＣ残差値を表すシンタックス要素をコーディングする、と、
１つまたは複数のプロセッサであって、
１つまたは複数のコンテキストモデルを使用して、前記シンタックス要素のＮ個以下の先行ビンをコーディングし、ここにおいて、Ｎは、前記シンタックス要素に関する複数のビンの最大可能数よりも小さく、
１つまたは複数のコンテキストモデルを使用して復号されなかった前記シンタックス要素の残存ビンをバイパスコーディングし、
０値を有する最初のビンが前記シンタックス要素の前記Ｎ個の先行ビンの中に位置する場合に、前記０値を有する前記最初のビンおよび前記０値を有する前記最初のビンの前の先行ビンだけを、１つまたは複数のコンテキストモデルを使用してコーディングする、または
０値を有する最初のビンが前記シンタックス要素の前記Ｎ個の先行ビンの中に位置しない場合に、前記先行するＮ個のビンだけを、１つまたは複数のコンテキストモデルを使用してコーディングする、
ように構成された１つまたは複数のプロセッサと、
を備えるビデオコーディングデバイス。
【請求項３７】
前記デバイスがビデオデコーダであり、前記コーディングされたビンが復号され、前記１つまたは複数のプロセッサが、前記複数のビンを生成するために前記ビットストリームを復号し、前記復号されたビンに基づいて前記シンタックス要素を生成し、前記シンタックス要素によって表される前記デルタＤＣ残差値に少なくとも部分的に基づいて、前記ＰＵを再構築するようにさらに構成される、請求項３６に記載のデバイス。
【請求項３８】
前記デバイスがビデオエンコーダであり、前記コーディングされたビンが符号化され、前記１つまたは複数のプロセッサが、前記複数のビンを生成するために前記シンタックス要素をバイナリ化し、前記コーディングされたビデオビットストリームにおいて、前記符号化されたビンに対応するビットをシグナリングするようにさらに構成される、請求項３６に記載のデバイス。
【請求項３９】
前記複数のビンを生成するために、ｃＲｉｃｅＰａｒａｍ＝０による、短縮ライス（ＴＲ）コードによりバイナリ化されたプレフィックスビン列および０次指数ゴロム（ＥＧ０）コードによりバイナリ化されたサフィックスビン列の連結を使用して、前記シンタックス要素の値がバイナリ化され、前記ＴＲコードのｃＭａｘ値がＮに等しい、請求項３６から３８のいずれかに記載のデバイス。
【請求項４０】
前記複数のビンを生成するために、ｃＲｉｃｅＰａｒａｍ＝０による、短縮ライス（ＴＲ）コードによりバイナリ化されたプレフィックスビン列およびｋ次指数ゴロム（ＥＧｋ）コードによりバイナリ化されたサフィックスビン列の連結を使用して、前記シンタックス要素の値がバイナリ化され、ｋが０ではなく、前記ＴＲコードのｃＭａｘ値がＮに等しい、請求項３６から３９のいずれかに記載のデバイス。
【請求項４１】
前記複数のビンを生成するために、ｃＲｉｃｅＰａｒａｍ＝０による、短縮ライス（ＴＲ）コードによりバイナリ化されたプレフィックスビン列および固定長コードによりバイナリ化されたサフィックスビン列の連結を使用して、前記シンタックス要素の値がバイナリ化される、請求項３６から４０のいずれかに記載のデバイス。
【請求項４２】
前記シンタックス要素の値が前記ｃＭａｘ値よりも小さい場合、前記バイナリ化によって前記サフィックスビン列が生成されない、請求項３９または４０に記載のデバイス。
【請求項４３】
前記複数のビンを生成するために、ｋ次指数ゴロム（ＥＧｋ）コードを使用して、前記シンタックス要素の値がバイナリ化される、請求項３６から３８のいずれかに記載のデバイス。
【請求項４４】
ｋ＝０である、請求項４３に記載のデバイス。
【請求項４５】
前記シンタックス要素が、前記ＰＵの１つまたは複数の区分のうちの１つの区分に対する前記デルタＤＣ残差値を表し、前記１つまたは複数のプロセッサが、前記区分を予測するように構成され、前記デルタＤＣ残差値が、前記区分の平均ピクセル値と前記予測される区分の平均ピクセル値との間の差分を示す、請求項３６から４４のいずれかに記載のデバイス。
【請求項４６】
前記デバイスがビデオデコーダであり、前記１つまたは複数のプロセッサが、前記シンタックス要素によって表される前記デルタＤＣ残差値に少なくとも部分的に基づいて、前記ＰＵを再構築するようにさらに構成され、前記ＰＵの再構築が、前記デルタＤＣ残差値および前記予測される区分に少なくとも部分的に基づく前記区分の再構築を備える、請求項４５に記載のデバイス。
【請求項４７】
前記予測される区分がイントラ予測され、前記シンタックス要素がｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素を備える、請求項４５に記載のデバイス。
【請求項４８】
前記予測される区分がインター予測され、前記シンタックス要素がｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素を備える、請求項４５に記載のデバイス。
【請求項４９】
前記デルタＤＣ残差値が、前記区分の平均ピクセル値と前記予測される区分の平均ピクセル値との間の差分を示す、請求項４５から４８のいずれかに記載のデバイス。
【請求項５０】
前記１つまたは複数のプロセッサが、フラグまたは他のシンタックス情報をコーディングし、前記フラグまたは他のシンタックス情報が第１の値を有する場合に、コンテキスト適応型エントロピーデコーダにおいて、前記Ｎ個以下の先行ビンをコーディングし、前記フラグまたは他のシンタックス情報が第２の値を有する場合に、前記コンテキスト適応型エントロピーデコーダにおける前記Ｎ個よりも多い先行ビンのコーディングを許可する、ように構成される、請求項４９に記載のデバイス。
【請求項５１】
前記１つまたは複数のプロセッサが、同じコンテキストモデルを使用して、前記シンタックス要素の前記Ｎ個以下の先行ビンをコーディングするように構成される、請求項３６から５０のいずれかに記載のデバイス。
【請求項５２】
前記１つまたは複数のプロセッサが、異なるコンテキストモデルを使用して、前記シンタックス要素の前記Ｎ個以下の先行ビンのうちの少なくともいくつかをコーディングするように構成される、請求項３６から５０のいずれかに記載のデバイス。
【請求項５３】
前記シンタックス要素の値が、前記値の全範囲よりも小さい範囲に切取られ、前記複数のビンが、前記切取られた値のバイナリ化によって生成される、請求項３６から５２のいずれかに記載のデバイス。
【請求項５４】
前記シンタックス要素の前記値が、バイナリ化が９個以下のビンを生成するように切取られる、請求項５３に記載のデバイス。
【請求項５５】
前記１つまたは複数のプロセッサが、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）エントロピーコーダの正規コーディングエンジンを使用して、前記Ｎ個以下の先行ビンをコーディングし、前記ＣＡＢＡＣエントロピーコーダのバイパスコーディングエンジンを使用して、前記残存ビンをバイパスコーディングするように構成される、請求項３６から５４のいずれかに記載のデバイス。
【請求項５６】
ビデオコーディングデバイスであって、
コーディングされたビデオビットストリームを記憶するための手段、ここにおいて、前記ビットストリームは、深度コーディングユニット（ＣＵ）の予測ユニット（ＰＵ）に対するデルタＤＣ残差値を表すシンタックス要素をコーディングする、と、
１つまたは複数のコンテキストモデルを使用して、前記シンタックス要素のＮ個以下の先行ビンをコーディングするための手段、ここにおいて、Ｎは、前記シンタックス要素に関する複数のビンの最大可能数よりも小さい、と、
１つまたは複数のコンテキストモデルを使用してコーディングされなかった前記シンタックス要素の残存ビンをバイパスコーディングするための手段と、
を備え、前記Ｎ個以下の先行ビンをコーディングするための手段が、
０値を有する最初のビンが前記シンタックス要素の前記Ｎ個の先行ビンの中に位置する場合に、前記０値を有する前記最初のビンおよび前記０値を有する前記最初のビンの前の先行ビンだけを、１つまたは複数のコンテキストモデルを使用してコーディングするための手段、または
０値を有する最初のビンが前記シンタックス要素の前記Ｎ個の先行ビンの中に位置しない場合に、前記先行するＮ個のビンだけを、１つまたは複数のコンテキストモデルを使用してコーディングするための手段
を備える、ビデオコーディングデバイス。
【請求項５７】
非一時的コンピュータ可読記憶媒体であって、１つまたは複数のプロセッサに、
コーディングされたビデオビットストリームを記憶させ、ここにおいて、前記ビットストリームは、深度コーディングユニット（ＣＵ）の予測ユニット（ＰＵ）に対するデルタＤＣ残差値を表すシンタックス要素をコーディングし、
１つまたは複数のコンテキストモデルを使用して、前記シンタックス要素のＮ個以下の先行ビンをコーディングさせ、ここにおいて、Ｎは、前記シンタックス要素に関する複数のビンの最大可能数よりも小さく、
１つまたは複数のコンテキストモデルを使用してコーディングされなかった前記シンタックス要素の残存ビンをバイパスコーディングし、
０値を有する最初のビンが前記シンタックス要素の前記Ｎ個の先行ビンの中に位置する場合に、前記０値を有する前記最初のビンおよび前記０値を有する前記最初のビンの前の先行ビンだけを、１つまたは複数のコンテキストモデルを使用してコーディングさせる、または
０値を有する最初のビンが前記シンタックス要素の前記Ｎ個の先行ビンの中に位置しない場合に、前記先行するＮ個のビンだけを、１つまたは複数のコンテキストモデルを使用してコーディングさせる、
ための命令を備える、非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]本開示は、ビデオコーディングに関し、より具体的には、３次元（３Ｄ）ビデオコーディング処理におけるデルタＤＣ残差コーディングに関する。
【背景技術】
【０００２】
[0002]デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、タブレットコンピュータ、スマートフォン、携帯情報端末（ＰＤＡ）、ラップトップコンピュータまたはデスクトップコンピュータ、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、携帯電話または衛星無線電話、ビデオ遠隔会議デバイス、セットトップデバイスなどを含む、広範囲にわたるデバイスに組み込まれ得る。デジタルビデオデバイスは、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４、Ｐａｒｔ１０、Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＡＶＣ）、Ｈｉｇｈ  Ｅｆｆｉｃｉｅｎｃｙ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＨＥＶＣ）規格によって定義された規格、およびそのような規格の拡張に記述されているビデオ圧縮技法などのビデオ圧縮技法を実装する。ビデオデバイスは、デジタルビデオ情報をより効率的に送信し、受信し、記憶することができる。
【０００３】
[0003]エンコーダ−デコーダ（コーデック）は、ビデオシーケンスに固有の冗長性を低減または除去するように空間（イントラピクチャ）予測および／または時間（インターピクチャ）予測を実行するために、ビデオ圧縮技法を適用する。ブロックベースのビデオコーディングの場合、ビデオスライスが、コーディングされたツリーブロック（ＣＴＢ）、コーディングユニット（ＣＵ）および／またはコーディングノードと呼ばれることもあるビデオブロックに分割され得る。ピクチャのイントラコーディングされた（Ｉ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック中の参照サンプルに対する空間的予測を使用して符号化される。ピクチャのインターコーディングされた（ＰまたはＢ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック中の参照サンプルに対する空間的予測または他の参照ピクチャ中の参照サンプルに対する時間的予測を使用することができる。ピクチャは代替的に「フレーム」と呼ばれ得る。
【０００４】
[0004]空間予測または時間予測は、コーディングされるべきブロックのための予測ブロックをもたらす。残差データは、コーディングされるべき元のブロックと予測ブロックとの間のピクセル差分を表す。インターコーディングされるブロックは、予測ブロックを形成する参照サンプルのブロックを指す動きベクトルに従って符号化され、残差データは、コーディングされたブロックと予測ブロックとの差分を示す。イントラコーディングされるブロックは、イントラコーディングモードおよび残差データに従って符号化される。さらなる圧縮のために、残差データは空間領域から変換領域に変換されて、残差変換係数をもたらすことができ、次いで、残差変換係数は量子化され得る。最初に２次元アレイで構成される量子化された変換係数は、変換係数の１次元ベクトルを生成するために走査され得、エントロピーコーディングがさらなる圧縮を達成するために適用され得る。
【０００５】
[0005]マルチビューコーディングビットストリームは、たとえば、複数の視点からのビューを符号化することによって生成され得る。マルチビューコーディングは、デコーダが、異なるビューを選択すること、または場合によっては複数のビューをレンダリングすることを可能にし得る。加えて、開発されている、または開発中のいくつかの３次元（３Ｄ）ビデオ技法および規格は、マルチビューコーディングの態様を利用する。たとえば、いくつかの３Ｄビデオコーディング処理では、３Ｄビデオをサポートするために、異なるビューが左眼のビューと右眼のビューとを送信するために使用され得る。他の３Ｄビデオコーディング処理は、マルチビュープラス深度コーディングを使用し得る。ＨＥＶＣに対する３Ｄ−ＨＥＶＣ拡張によって定義される処理のような、マルチビュープラス深度コーディング処理では、３Ｄビデオビットストリームは、テクスチャビュー成分だけではなく深度ビュー成分も含む複数のビューを含み得る。たとえば、所与のビューは、１つのテクスチャビュー成分と１つの深度ビュー成分とを備え得る。テクスチャビュー成分および深度ビュー成分は、３Ｄビデオデータを構築するために使用され得る。
【発明の概要】
【０００６】
[0006]全般に、本開示は、３Ｄ−ＨＥＶＣのような３Ｄビデオコーディング処理におけるデルタＤＣ残差コーディングを簡易化するための技法を説明する。本技法は、デルタＤＣ残差値を表すために使用される１つまたは複数のシンタックス要素のエントロピーコーディングの複雑性を低減するための修正されたバイナリ化および／またはコンテキストモデリング処理の使用を含み得る。デルタＤＣ残差値は、３Ｄビデオコーディング処理において生成されたイントラ予測および／またはインター予測された深度ブロックのための残差データを表し得る。いくつかの例では、本技法は、シンタックス要素に関してコンテキストモデルを使用してコーディングされるビンの数を低減することができる。コンテキストモデルを使用してコーディングされるビンの数を低減することで、エントロピーエンコーダ／デコーダにおけるスループットの増大を促進することができる。
【０００７】
[0007]一例では、本開示は、ビデオ復号の方法を説明し、この方法は、符号化されたビデオビットストリームを受信することと、深度コーディングユニット（ＣＵ）の予測ユニット（ＰＵ）に対するデルタＤＣ残差値を表すシンタックス要素に関してビットストリームからビンを復号すること、ここにおいて、復号することは、１つまたは複数のコンテキストモデルを使用して、シンタックス要素に関するＮ個以下の先行ビンを復号し、Ｎは、シンタックス要素に関するビンの最大可能数よりも小さい、と、１つまたは複数のコンテキストモデルを使用して復号されなかったシンタックス要素に関する残存ビンをバイパス復号することと、復号されたビンに基づいてシンタックス要素を生成することと、シンタックス要素によって表されるデルタＤＣ残差値に少なくとも部分的に基づいてＰＵを再構築することと、を備える。
【０００８】
[0008]別の例では、本開示は、ビデオ符号化のための方法を説明し、この方法は、深度コーディングユニット（ＣＵ）の予測ユニット（ＰＵ）に対するデルタＤＣ残差値を表すシンタックス要素を生成することと、シンタックス要素をバイナリ化することと、１つまたは複数のコンテキストモデルを使用して、バイナリ化されたシンタックス要素のＮ個以下の先行ビンを符号化すること、ここにおいて、Ｎは、バイナリ化されたシンタックス要素のビンの最大可能数よりも小さい、と、１つまたは複数のコンテキストモデルを使用して符号化されなかったバイナリ化されたシンタックス要素の残存ビンをバイパス符号化することと、符号化されたビットストリームにおいて、符号化されたビンに対応するビットをシグナリングすることと、を備える。
【０００９】
[0009]別の例では、本開示は、コーディングされたビデオビットストリームを記憶するメモリ、ここにおいて、ビットストリームは、深度コーディングユニット（ＣＵ）の予測ユニット（ＰＵ）に対するデルタＤＣ残差値を表すシンタックス要素をコーディングする、と、１つまたは複数のコンテキストモデルを使用して、シンタックス要素のＮ個以下の先行ビンをコーディングし、ここにおいて、Ｎは、ビンの最大可能数よりも小さく、１つまたは複数のコンテキストモデルを使用して復号されなかったシンタックス要素の残存ビンをバイパスコーディングする、ように構成された１つまたは複数のプロセッサ、を備えるビデオコーディングデバイスを説明する。
【００１０】
[0010]本開示の１つまたは複数の態様の詳細が、添付の図面および以下の説明において記載される。本開示で説明される技法の他の特徴、目的、および利点は、これらの説明および図面から、および特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１１】
【図１】[0011]ｈｉｇｈ  ｅｆｆｉｃｉｅｎｃｙ  ｖｉｄｅｏ  ｃｏｄｉｎｇ（ＨＥＶＣ）において使用されるイントラ予測モードを示す図。
【図２】[0012]本開示の技法を利用することができる、例示的なビデオコーディングシステムを示すブロック図。
【図３】[0013]ピクセルサンプルの８×８のブロックをコーディングする際に使用するための１つのｗｅｄｇｅｌｅｔ区分パターンの例を示す図。
【図４】[0014]ピクセルサンプルの８×８のブロックをコーディングする際に使用するための１つの輪郭区分パターンの例を示す図。
【図５】[0015]本開示の技法を実装することができる、例示的なビデオエンコーダを示すブロック図。
【図６】[0016]本開示の技法を実装することができる、例示的なビデオデコーダを示すブロック図。
【図７】[0017]デルタＤＣ残差値を表すシンタックス要素を符号化するための方法を示す流れ図。
【図８】[0018]デルタＤＣ残差値を表すシンタックス要素を復号するための方法を示す流れ図。
【発明を実施するための形態】
【００１２】
[0019]本開示は、３Ｄ−ＨＥＶＣのような３Ｄビデオコーディング処理における深度コーディングのためのＤＣ残差コーディングを簡易化するための技法を説明する。ＤＣ残差コーディングは、デルタＤＣコーディングまたはデルタＤＣ残差コーディングと呼ばれることもある。いくつかの例では、本開示で説明される技法は、デルタＤＣコーディングに関係するバイナリ化および／またはコンテキストモデリング処理を改善することができる。特に、本技法は、デルタＤＣ残差値を表すために使用される１つまたは複数のシンタックス要素のエントロピーコーディングの複雑性を低減するために、バイナリ化および／またはコンテキストモデリング処理を修正し得る。本開示では、「コーディング」という用語は、たとえば、エンコーダまたはデコーダによって実行されるような符号化または復号を指し得る。したがって、エントロピーコーディングの複雑性を低減するために、本開示で説明される技法は、エントロピー符号化処理および対応するエントロピー復号処理において適用され得る。
【００１３】
[0020]デルタＤＣ残差値は、たとえば、イントラ予測および／またはインター予測された深度ブロックのための残差データを表し得る。デルタＤＣ残差値は、たとえば、３Ｄ−ＨＥＶＣのような３Ｄビデオコーディング処理において、セグメントごとのＤＣコーディング（ＳＤＣ）モードまたは深度マップモデリング（ＤＭＭ）モードによって生成され得る。ＤＣ残差値は、デルタＤＣ値と呼ばれることがある。深度コーディングユニット（ＣＵ）は、１つまたは複数の予測ユニット（ＰＵ）を有することができ、各ＰＵは、１つまたは複数の区分に区分され得る。ＰＵは、たとえば、ＨＥＶＣイントラモード、ＨＥＶＣインターモード、または深度マップモデリング（ＤＭＭ）モードを使用して、インターコーティングまたはイントラコーティングされ得る。
【００１４】
[0021]たとえば、ＳＤＣまたはＤＭＭでは、デルタＤＣ値は、深度ＣＵのＰＵの１つまたは複数の区分のうちの１つの区分のピクセル値の平均と、インター予測またはイントラ予測される区分、すなわちＰＵ区分に対してインター予測またはイントラ予測される区分の予測されるサンプルの値の平均との間の差分を表し得る。ＰＵは、モードに応じて、単一の区分または２つ以上の区分を有し得る。ＳＤＣが使用されるとき、各ＰＵまたは区分は、変換も量子化もされない単一のデルタＤＣ値を有し、残差変換木がない。ＳＤＣは、ＨＥＶＣイントラ予測およびインター予測モードとＤＭＭとに適用され得る。ＳＤＣモードによりコーディングされるＰＵまたは区分を再構築するために、ＰＵまたはＰＵ区分に対する単一のデルタＤＣ値が、ＰＵまたは区分の予測されるピクセルの各々に加算される。
【００１５】
[0022]ＤＭＭ予測モードはまた、デルタＤＣコーディングを使用することができ、ＳＤＣを伴って、または伴わずに使用され得る。ＳＤＣを伴ってＤＭＭが使用されるとき、各ＰＵまたはＰＵ区分に対してＤＣ残差値だけが使用され、残差変換木は生成されない。ＳＤＣを伴わずにＤＭＭが使用されるとき、各ＰＵまたはＰＵ区分に対して、ＰＵのために生成される通常の残差変換木に加えて、デルタＤＣ値が生成される。ＤＭＭにより、ただしＳＤＣを伴わずにコーディングされるＰＵまたは区分を再構築するために、以下の手順が実行される。まず、ＰＵまたは区分のために予測サンプルが生成される。次に、区分ごとに、区分に対するデルタＤＣ値が、区分のための予測サンプルに加算される。次いで、残差変換木から導出された残差値が、ＰＵを再構築するためにそれらの予測サンプルに加算される。ＤＭＭを伴ってＳＤＣが使用される場合、デルタＤＣ残差値だけが予測サンプルに加算される。
【００１６】
[0023]いくつかの例では、本開示の技法は、デルタＤＣ残差値を表すシンタックス要素に関してコンテキストモデルを使用してコーディングされるビンの数を低減することができる。コンテキストモデルを使用してコーディングされるビンの数を低減することで、エントロピーエンコーダ／デコーダにおけるスループットの増大を促進することができる。
【００１７】
[0024]このセクションでは、本開示に関係するビデオコーディング規格およびＨＥＶＣ技法が検討される。ビデオコーディング規格の例としては、ＩＴＵ−Ｔ  Ｈ．２６１、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−１  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６２またはＩＳＯ／ＩＥＣ  ＭＰＥＧ−２  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  Ｖｉｓｕａｌ、および、スケーラブルビデオコーディング（ＳＶＣ）拡張とマルチビュービデオコーディング（ＭＶＣ）拡張とを含む（ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  ＡＶＣとしても知られる）ＩＴＵ−Ｔ  Ｈ．２６４がある。ＭＶＣの最新のジョイントドラフトは、「Ａｄｖａｎｃｅｄ  ｖｉｄｅｏ  ｃｏｄｉｎｇ  ｆｏｒ  ｇｅｎｅｒｉｃ  ａｕｄｉｏｖｉｓｕａｌ  ｓｅｒｖｉｃｅｓ」、ＩＴＵ−Ｔ勧告Ｈ．２６４、２０１０年３月に記載されている。
【００１８】
[0025]加えて、Ｊｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｏｎ  Ｔｅａｍ  ｏｎ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＪＣＴ−ＶＣ）ｏｆ  ＩＴＵ−Ｔ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ（ＶＣＥＧ）ａｎｄ  ＩＳＯ／ＩＥＣ  Ｍｏｔｉｏｎ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ（ＭＰＥＧ）によって開発されている、新たな今後来るビデオコーディング規格、すなわち、Ｈｉｇｈ  Ｅｆｆｉｃｉｅｎｃｙ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＨＥＶＣ）がある。ＨＥＶＣ規格の最近のドラフト、ＪＣＴＶＣ−Ｌ１００３、Ｂｅｎｊａｍｉｎ  Ｂｒｏｓｓ、Ｗｏｏ−Ｊｉｎ  Ｈａｎ、Ｊｅｎｓ−Ｒａｎｉｅｒ  Ｏｈｍ、Ｇａｒｙ  Ｓｕｌｌｉｖａｎ、Ｙｅ−Ｋｕｉ  Ｗａｎｇ、Ｔｈｏｍａｓ  Ｗｉｅｇａｎｄ、「Ｈｉｇｈ  Ｅｆｆｉｃｉｅｎｃｙ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＨＥＶＣ）ｔｅｘｔ  ｓｐｅｃｉｆｉｃａｔｉｏｎ  ｄｒａｆｔ  １０（ｆｏｒ  ＦＤＩＳ＆Ｌａｓｔ  Ｃａｌｌ）」、Ｊｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｖｅ  Ｔｅａｍ  ｏｎ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＪＣＴ−ＶＣ）ｏｆ  ＩＴＵ−Ｔ  ＳＧ  １６  ＷＰ  ３  ａｎｄ  ＩＳＯ／ＩＥＣ  ＪＴＣ  １／ＳＣ  ２９／ＷＧ  １１、第１２回会合：ジュネーブ、スイス、２０１３年１月１４〜２３日（「ＨＥＶＣ  ＷＤ１０」）が、参照によって全体が本明細書に組み込まれ、以下のリンクから入手可能である。
ｈｔｔｐ：／／ｐｈｅｎｉｘ．ｉｔ−ｓｕｄｐａｒｉｓ．ｅｕ／ｊｃｔ／ｄｏｃ＿ｅｎｄ＿ｕｓｅｒ／ｄｏｃｕｍｅｎｔｓ／１２＿Ｇｅｎｅｖａ／ｗｇ１１／ＪＣＴＶＣ−Ｌ１００３−ｖ３４．ｚｉｐ
【００１９】
[0026]図１は、ＨＥＶＣにおいて使用されるイントラ予測モードを示す図である。図１は一般に、ＨＥＶＣにおけるイントラコーディングに利用可能な様々な方向性イントラ予測モードと関連付けられる予測方向を示す。現在のＨＥＶＣでは、たとえば、ＨＥＶＣ  ＷＤ１０において説明されているように、各予測ユニット（ＰＵ）のルーマ成分のために、図１に示されるように、（２から３４までインデックス付けされた）３３個の方向性（角度）予測モードと、（１とインデックス付けされた）ＤＣモードと、（０とインデックス付けされた）プレーナモードとを有するイントラ予測方法が利用される。
【００２０】
[0027]プレーナモード（０とインデックス付けされた）では、ビデオデータのブロック、たとえばＰＵ内のピクセルの各々に対する予測子の値を決定するために、いわゆる「平面」機能を使用して予測が実行される。ＤＣモード（１とインデックス付けされる）によれば、ブロック内のピクセルの各々に対する予測子の値を決定するために、ブロック内のピクセル値の平均を使用して予測が実行される。方向性予測モードによれば、（そのモードによって示される）特定の方向に沿った隣接ブロックの再構築されたピクセルに基づいて予測が実行される。一般に、図１に示されている矢印の尾部は、値がそこから取り出される隣接ピクセルのうちの相対的な１つを表し、矢印の頭部は、予測ブロックを形成するために取り出された値が伝播される方向を表す。
【００２１】
[0028]ＨＥＶＣイントラ予測モードでは、ビデオエンコーダおよび／またはビデオデコーダは、たとえば、モード２から３４に対するＰＵの隣接サンプルを使用することによって、上で論じられた様々なモードを使用してＰＵ中の各ピクセルのためのピクセル固有の予測子の値を生成する。ビデオエンコーダは、ブロックのピクセルのための実際の深度の値と予測子の値との間の差分に基づいてビデオブロックのための残差値を決定し、残差値をビデオデコーダに提供する。ＨＥＶＣ  ＷＤ１０によれば、ビデオエンコーダは、残差値を変換し、変換係数を量子化し、量子化された変換係数をエントロピー符号化することもできる。ビデオデコーダは（たとえば、エントロピー復号、逆量子化、および逆変換の後で）、残差値を予測子の値に加算することによって、ブロックのピクセルの再構築された値を決定する。ＨＥＶＣイントラ予測モードに関するさらなる詳細が、ＨＥＶＣ  ＷＤ１０において規定されている。
【００２２】
[0029]ＨＥＶＣにおいて使用されるコンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）解析処理を含む、ＨＥＶＣにおいて使用されるエントロピーコーディング処理がここで説明される。本開示は、デルタＤＣ残差値コーディングに関係するシンタックス要素のＣＡＢＡＣエントロピーコーディングにおいて使用されるバイナリ化および／またはコンテキストモデリング処理を修正し得る技法を説明する。一般に、ＣＡＢＡＣ解析処理への入力は、コーディングされたビットストリームからの残存ビット、シンタックス要素の値に対する要求、および以前復号されたインタックス要素の値であり、この処理の出力は、１つの固有のシンタックス要素の値である。
【００２３】
[0030]このコーディング処理のための主要ステップは、以下を含む。
１．  バイナリ化
２．  コンテキストモデリング
３．  バイナリ算術コーディング
【００２４】
[0031]バイナリ化のために、ＣＡＢＡＣエントロピーコーダは、非バイナリ値のシンタックス要素を、ビン列と呼ばれるバイナリシーケンスにマッピングする。シンタックス要素がすでにバイナリ値である場合、バイナリ化は必要ではなく、回避され得る。ビン列における各ビンは二者択一を表す。次いでＣＡＢＡＣエントロピーコーダは、コンテキストモデルが選択されるＣＡＢＡＣコーダの正規コーディングエンジン、またはコンテキストモデル選択が必要とされないＣＡＢＡＣコーダのバイパスコーディングエンジンのいずれかを使用して、ビン列における各ビンをコーディングする。
【００２５】
[0032]正規（すなわち、コンテキスト適応型）コーディングモードでは、ＣＡＢＡＣエントロピーコーダは、各ビンに対する算術コーディング処理の前にコンテキストモデリングを実行するコンテキストモデラを含む。ＣＡＢＡＣエントロピーコーダの正規コーディングエンジンは、コンテキストモデリングを実行し、それによって、各ビンに対して確率モデルが選択される。以前コーディングされたバイナリシンタックス要素またはシンタックス要素のビンにコンテキスト選択が依拠するように、ＣＡＢＡＣエントロピーコーダにおいて確率モデルが選択され得る。コンテキストモデル選択の後、ＣＡＢＡＣエントロピーコーダの正規コーディングエンジンは、ビンと、ビンに対して選択された確率モデルとを受信する。次いでＣＡＢＡＣ正規コーディングエンジンは、コンテキストモデルを使用して関連ビンにバイナリ算術符号化を適用し、その後、コンテキストモデルを更新する。特に、コンテキストモデルを更新するために、コンテキストモデラにビン値が返され得る。
【００２６】
[0033]代替的に、エントロピーコーダは、選択されたビンをエントロピーコーディングするためにバイパスコーディングモードを選択する。ＣＡＢＡＣエントロピーコーダのバイパスコーディングエンジンは、ビンをコーディングするために、明示的に割り当てられたコンテキストモデルを使用せずに、簡易算術コーダを使用する。バイパスコーディングエンジンは、コンテキスト適応型ではない。すなわち、バイパスコーディングエンジンでは、コンテキストモデルから取得された推定確率を使用してビンがコンテキストコーディングされることはない。代わりに、バイパスコーディングされるビンが固定確率モデルによりコーディングされ得る。たとえば、バイパスコーディングエンジンは、０．５の等しい確率を仮定することができ、コーディングのためのコンテキストの選択を必要としない。したがって、コンテキストモデルを使用する正規バイナリ算術コーディングエンジンを使用してコーディングされる（すなわち、正規コーディングエンジンにおいてコンテキストコーディングされる）ビンもあれば、コンテキストモデルを使用せずにバイパスコーディングを使用してコーディングされる（すなわち、バイパスコーディングエンジンにおいてバイパスコーディングされる）ビンもある。
【００２７】
[0034]適用可能な場合、ＣＡＢＡＣエントロピーエンコーダの正規コーディングエンジンまたはバイパスコーディングエンジンは、ビットストリームを形成するコーディングされたビットを生成するために、シンタックス要素に関するビンを算術コーディングする。適用可能な場合、ＣＡＢＡＣエントロピーデコーダの正規コーディングエンジンまたはバイパスコーディングエンジンは、ビンを生成するためにビットストリーム中のビットを復号し、シンタックス要素を生成するために１つまたは複数のビンを復号する。いくつかの例では、バイパスコーディングは、スループットの増大をもたらすことができ、同じサイクルにおいて複数のビンがコーディングされることを可能にし得る。したがって、ＣＡＢＡＣバイパスコーディングエンジンの使用は、計算スループットの増大のために望ましいものであり得、ＣＡＢＡＣ正規コーディングエンジンの使用は、高いコーディング効率のために望ましいものであり得る。
【００２８】
[0035]ＨＥＶＣ  ＣＡＢＡＣコーダのようなＣＡＢＡＣエントロピーコーダにおいて使用され得る種々のバイナリ化方法がここで説明される。ＨＥＶＣでは、基本的バイナリ化方法は、以下を含む。
１．  ＦＬ（固定長）バイナリ化処理。ＦＬバイナリ化処理は、シンタックス要素値のｆｉｘｅｄＬｅｎｇｔｈビットの符号なし整数ビン列を使用し、ｆｉｘｅｄＬｅｎｇｔｈ＝Ｃｅｉｌ（Ｌｏｇ２（ｃＭａｘ＋１））であり、ｃＭａｘはシンタックス要素値の最大値である。
【００２９】
２．ｋ次指数ゴロム（「指数ゴロム」または「ＥＧｋ」）バイナリ化処理。ＥＧｋ処理の使用では、ビン列の終わりのバイナリ値Ｘが次のように決定され得る。
ａｂｓＶ＝Ａｂｓ（ｓｙｎＶａｌ）
ｓｔｏｐＬｏｏｐ＝０
ｄｏ｛
ｉｆ（ａｂｓＶ＞＝（１＜＜ｋ））｛
ｐｕｔ（１）
ａｂｓＶ＝ａｂｓＶ−（１＜＜ｋ）
ｋ＋＋
｝ｅｌｓｅ｛
ｐｕｔ（０）
ｗｈｉｌｅ（ｋ−−）
ｐｕｔ（（ａｂｓＶ＞＞ｋ）＆１）
ｓｔｏｐＬｏｏｐ＝１
}
｝ｗｈｉｌｅ（！ｓｔｏｐＬｏｏｐ）
ＥＧ０バイナリ化処理、すなわちｋ＝０の場合の一例は、下の表１に示される。
【表１】
0006312854.tif 000002
【００３０】
３．  ＴＲ（トランケ―テッド・ライス）バイナリ化処理。ＴＲバイナリ化処理では、ＴＲビン列は、プレフィックスビン列、および存在するときのサフィックスビン列の連結である。ＴＲバイナリ化処理に関する詳細情報は、ＨＥＶＣ仕様における、たとえばＨＥＶＣ  ＷＤ１０における９．３．３．２項で確認できる。
【００３１】
４．  ｐａｒｔ＿ｍｏｄｅ、ｉｎｔｒａ＿ｃｈｒｏｍａ＿ｐｒｅｄ＿ｍｏｄｅ、ｉｎｔｅｒ＿ｐｒｅｄ＿ｉｄｃ、ｃｕ＿ｑｐ＿ｄｅｌｔａ＿ａｂｓおよびｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｒｅｍａｉｎｉｎｇなど、いくつかのシンタックス要素に関して他のバイナリ化処理が規定されている。
【００３２】
[0036]ここで、例として、ｃｕ＿ｑｐ＿ｄｅｌｔａ＿ａｂｓのバイナリ化処理が、より詳細に説明される。シンタックス要素ｃｕ＿ｑｐ＿ｄｅｌｔａ＿ａｂｓのバイナリ化は、プレフィックスビン（ＴＲによる）列、および（存在するときの）サフィックスビン列（ＥＧｋによる）の連結である。プレフィックスビン列の導出のために、以下が適用される。
−  ｃｕ＿ｑｐ＿ｄｅｌｔａ＿ａｂｓのプレフィックス値ｐｒｅｆｉｘＶａｌは、次のように導出される。
ｐｒｅｆｉｘＶａｌ＝Ｍｉｎ（ｃｕ＿ｑｐ＿ｄｅｌｔａ＿ａｂｓ，５）
−  プレフィックスビン列は、ｃＭａｘ＝５およびｃＲｉｃｅＰａｒａｍ＝０によるｐｒｅｆｉｘＶａｌのＴＲバイナリ化処理を呼び出すことによって指定される。
【００３３】
[0037]ｐｒｅｆｉｘＶａｌが４よりも大きいとき、サフィックスビン列は存在し、次のように導出される。
−  ｃｕ＿ｑｐ＿ｄｅｌｔａ＿ａｂｓのサフィックス値ｓｕｆｆｉｘＶａｌは、次のように導出される。
ｓｕｆｆｉｘＶａｌ＝ｃｕ＿ｑｐ＿ｄｅｌｔａ＿ａｂｓ−５
−  サフィックスビン列は、ＥＧ０バイナリ化処理を呼び出すことによって指定される。
【００３４】
[0038]ＨＥＶＣコーディングユニットのシンタックスコーディングの最悪解析が、表２を参照して下で論じられる。表２は、ＨＥＶＣコーディングユニットのシンタックスコーディングを示している。表２では、対応するエントリによって変数ｃｔｘＩｎｃが指定され、ｂｉｎＩｄｘに関して表２において２つ以上の値が記載されているとき、そのｂｉｎＩｄｘのためのｃｔｘＩｎｃの割当て処理が、コンテキストモデリング処理においてさらに指定される。表２から、ｌａｓｔ＿ｓｉｇ＿ｃｏｅｆｆ＿ｘ＿ｐｒｅｆｉｘおよびｌａｓｔ＿ｓｉｇ＿ｃｏｅｆｆ＿ｙ＿ｐｒｅｆｉｘが、最長のコンテキストコーディングされるビンを有するシンタックス要素であることがわかる。具体的には、ｌａｓｔ＿ｓｉｇ＿ｃｏｅｆｆ＿ｘ＿ｐｒｅｆｉｘおよびｌａｓｔ＿ｓｉｇ＿ｃｏｅｆｆ＿ｙ＿ｐｒｅｆｉｘに関するコンテキストコーディングされるビンの数は９である。
【表２−１】
0006312854.tif 000003
【表２−２】
0006312854.tif 000004
上の表２では、項への言及は、ＨＥＶＣ  ＷＤ１０における対応する項を指す。
【００３５】
[0039]ＪＣＴ−３Ｖでは、マルチビュー拡張（ＭＶ−ＨＥＶＣ）および３Ｄビデオ拡張（３Ｄ−ＨＥＶＣ）という２つのＨＥＶＣ拡張が開発されている。参照ソフトウェアの最近のバージョン、３Ｄ−ＨＥＶＣのための「３Ｄ−ＨＴＭ  ｖｅｒｓｉｏｎ９．０」の全体が参照によって本明細書に組み込まれ、以下のリンクからダウンロード可能である。
［３Ｄ−ＨＴＭ  ｖｅｒｓｉｏｎ  ９．０］：ｈｔｔｐｓ：／／ｈｅｖｃ．ｈｈｉ．ｆｒａｕｎｈｏｆｅｒ．ｄｅ／ｓｖｎ／ｓｖｎ＿３ＤＶＣＳｏｆｔｗａｒｅ／ｔａｇｓ／ＨＴＭ−９．０／
【００３６】
[0040]３Ｄ−ＨＥＶＣの最近のドラフトは、ＪＣＴＶＣ−Ｆ１００１−ｖ２、Ｇｅｒｈａｒｄ  Ｔｅｃｈ、Ｋｒｚｙｓｚｔｏｆ  Ｗｅｇｎｅｒ、Ｙｉｎｇ  Ｃｈｅｎ、およびＳｅｈｏｏｎ  Ｙｅａ、「３Ｄ−ＨＥＶＣ  Ｄｒａｆｔ  Ｔｅｘｔ  ２」、Ｊｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｖｅ  Ｔｅａｍ  ｏｎ  ３Ｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  Ｅｘｔｅｎｓｉｏｎ  Ｄｅｖｅｌｏｐｍｅｎｔ  ｏｆ  ＩＴＵ−Ｔ  ＳＧ  １６  ＷＰ  ３  ａｎｄ  ＩＳＯ／ＩＥＣ  ＪＴＣ  １／ＳＣ  ２９／ＷＧ  １１、第６回会合：ジュネーブ、スイス、２０１３年１０月２５日〜１１月１日（以下では「Ｆ１００１」または「３Ｄ−ＨＥＶＣ  ＷＤ」と呼ばれる）において提示され、参照によって全体が本明細書に組み込まれ、以下のリンクから入手可能である。
ｈｔｔｐ：／／ｐｈｅｎｉｘ．ｉｔ−ｓｕｄｐａｒｉｓ．ｅｕ／ｊｃｔ２／ｄｏｃ＿ｅｎｄ＿ｕｓｅｒ／ｄｏｃｕｍｅｎｔｓ／６＿Ｇｅｎｅｖａ／ｗｇ１１／ＪＣＴ３Ｖ−Ｆ１００１−ｖ２．ｚｉｐ
【００３７】
[0041]３Ｄ−ＨＥＶＣでは、上で参照された３Ｄ−ＨＥＶＣ  ＷＤにおいて定義されるように、各アクセスユニットは複数のピクチャを含み、各ビュー中のピクチャの各々は、固有のビュー識別情報（ｉｄ）またはビュー順序インデックスを有する。しかしながら、同じビューの深度ピクチャおよびテクスチャピクチャは、異なるレイヤｉｄを有することがある。
【００３８】
[0042]３Ｄビデオコーディングにおける深度コーディングがここで説明される。３Ｄビデオデータは、キャプチャされたビュー（テクスチャ）が対応する深度マップと関連付けられる、マルチビュービデオプラス深度フォーマットを使用して表される。３Ｄビデオコーディングでは、テクスチャおよび深度マップはコーディングされ、３Ｄビデオビットストリーム中に多重化される。深度マップはグレースケールビデオとしてコーディングされ、ここで、ルーマサンプルは深度値を表し、従来のイントラコーディングおよびインターコーディング方法が深度マップコーディングのために適用され得る。
【００３９】
[0043]深度マップは、鋭いエッジおよび一定のエリアによって特徴付けられ得る。深度マップのサンプルの異なる統計値により、様々なコーディング方式が、２Ｄビデオコーデックに基づく深度マップのために設計されている。マルチビュープラス深度コーディング処理では、ビューはテクスチャ成分と深度成分とを含み得る。深度成分における深度コーディングユニット（ＣＵ）がインターコーティングまたはイントラコーディングされ得る。深度ＣＵは、１つまたは複数のＰＵに分割され得、ＰＵは、１つまたは複数の区分に分割され得る。
【００４０】
[0044]本開示でさらに詳細に説明されるように、区分は、イントラ予測またはインター予測され得、いくつかの例では、セグメントごとのＤＣ残差コーディング（ＳＤＣ）モードまたはＤＭＭコーディングモードを使用して深度残差がコーディングされ得る。ＳＤＣまたはＤＭＭでは、コーディングされたＰＵ区分とイントラコーディングまたはインターコーディングされたＰＵ区分との間の差分を表す残差が、ＤＣ残差値としてコーディングされ得る。特に、ＳＤＣでは、ＤＣ残差値は、ＰＵ区分全体に対する単一の値であり得る。ＤＭＭは、ＳＤＣを伴って、または伴わずに使用され得る。ＳＤＣを伴ってＤＭＭが使用されるとき、ＤＣ残差値は、ＰＵ区分全体に対する単一の値であり得る。ＳＤＣを伴わずにＤＭＭが使用されるとき、ＤＣ残差値は、通常の残差変換木に加えてコーディングされ得る。いずれの場合も、デルタＤＣ値は、コーディングされたＰＵ区分のピクセル値の平均と、インター予測またはイントラ予測される区分の予測されるサンプルの平均との間の差分を表し得る。
【００４１】
[0045]図２は、３Ｄ−ＨＥＶＣのような３Ｄコーディング処理における、デルタＤＣ残差値を表すために使用される１つまたは複数のシンタックス要素のエントロピーコーディングの複雑性を低減するための修正されたバイナリ化および／またはコンテキストモデリング処理の使用など、本開示の様々な技法を利用するように構成され得る例示的なビデオ符号化および復号システム１０を示すブロック図である。いくつかの例では、システム１０のビデオエンコーダ２０および／またはビデオデコーダ３０は、コンテキストモデルを使用してコーディングされる低減された数のビンを伴うそのようなシンタックス要素のエントロピーコーディングを実行するように構成され得る。場合によっては、コンテキストモデルを使用してコーディングされるビンの数を低減することで、エントロピーエンコーダ／デコーダにおけるスループットの増大を促進することができる。
【００４２】
[0046]いくつかの例では、ビデオエンコーダ２０およびビデオデコーダ３０は、１つまたは複数のコンテキストモデルを使用して、デルタＤＣ残差値を表すシンタックス要素に関するＮ個以下の先行ビンをコーディングし、ここにおいて、Ｎは、バイナリ化されたシンタックス要素に関するビンの最大可能数よりも小さい、１つまたは複数のコンテキストモデルを使用して復号されなかったシンタックス要素に関する残存ビン（ある場合）をバイパスコーディングするように構成され得る。たとえば、ビデオエンコーダ２０およびビデオデコーダ３０は、デルタＤＣシンタックス要素に関するＮ個以下の先行ビンを符号化するためにＣＡＢＡＣエントロピーコーダの正規コーディングエンジンを使用し、デルタＤＣシンタックス要素に関する残存ビンを符号化するためにＣＡＢＡＣエントロピーコーダのバイパスコーディングエンジンを使用するように構成され得る。
【００４３】
[0047]図２に示されるように、システム１０は、宛先デバイス１４によって後で復号されるべき符号化されたビデオデータを提供するソースデバイス１２を含む。具体的には、ソースデバイス１２は、コンピュータ可読媒体１６を介して宛先デバイス１４にビデオデータを提供する。ソースデバイス１２および宛先デバイス１４は、デスクトップコンピュータ、ノートブック（すなわち、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンのような電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイスなどを含む、広範囲のデバイスのいずれかを備え得る。場合によっては、ソースデバイス１２および宛先デバイス１４はワイヤレス通信に対応し得る。
【００４４】
[0048]宛先デバイス１４は、コンピュータ可読媒体１６を介して、復号されるべき符号化されたビデオデータを受信することができる。コンピュータ可読媒体１６は、符号化されたビデオデータをソースデバイス１２から宛先デバイス１４に移動することが可能な、任意のタイプの媒体またはデバイスを備え得る。一例では、コンピュータ可読媒体１６は、符号化されたビデオデータをソースデバイス１２がリアルタイムで宛先デバイス１４に直接に送信することを可能にするための、送信チャネルのような通信媒体を備え得る。
【００４５】
[0049]符号化されたビデオデータは、ワイヤレス通信プロトコルのような通信規格に従って変調され、宛先デバイス１４に送信され得る。通信媒体は、高周波（ＲＦ）スペクトルまたは１つもしくは複数の物理伝送線路のような、任意のワイヤレスまたは有線の通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークのような、パケットベースのネットワークの一部を形成し得る。通信媒体は、ルータ、スイッチ、基地局、またはソースデバイス１２から宛先デバイス１４への通信を容易にするために有用であり得る任意の他の機器を含み得る。
【００４６】
[0050]いくつかの例では、符号化されたデータは、出力インターフェース２２から、非一時的コンピュータ可読記憶媒体のようなコンピュータ可読記憶媒体、すなわちデータ記憶デバイスへ出力され得る。同様に、符号化されたデータは、記憶デバイスから入力インターフェースによってアクセスされ得る。記憶デバイスは、ハードドライブ、ブルーレイ（登録商標）ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュメモリ、揮発性もしくは不揮発性メモリ、または符号化されたビデオデータを記憶するための任意の他の好適なデジタル記憶媒体のような、種々の分散されたまたはローカルにアクセスされる非一時的データ記憶媒体のいずれかを含み得る。さらなる例では、記憶デバイスは、ソースデバイス１２によって生成された符号化されたビデオを記憶することができるファイルサーバまたは別の中間記憶デバイスに対応し得る。
【００４７】
[0051]宛先デバイス１４は、ストリーミングまたはダウンロードを介して、記憶デバイスから記憶されたビデオデータにアクセスすることができる。ファイルサーバは、符号化されたビデオデータを記憶することができ、ビデオデータを宛先デバイス１４に送信することができる、任意のタイプのサーバであり得る。例示的なファイルサーバには、ウェブサーバ（たとえば、ウェブサイト用の）、ＦＴＰサーバ、ネットワークアタッチドストレージ（ＮＡＳ）デバイス、またはローカルディスクドライブがある。宛先デバイス１４は、インターネット接続を含む、任意の標準的なデータ接続を通じて、符号化されたビデオデータにアクセスすることができる。これは、ファイルサーバ上に記憶されている符号化されたビデオデータにアクセスするのに適した、ワイヤレスチャネル（たとえば、Ｗｉ−Ｆｉ（登録商標）接続）、有線接続（たとえば、ＤＳＬ、ケーブルモデムなど）、またはその両方の組合せを含み得る。記憶デバイスからの符号化されたビデオデータの送信は、ストリーミング送信、ダウンロード送信、またはそれらの組合せであり得る。
【００４８】
[0052]本開示の技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、Ｄｙｎａｍｉｃ  Ａｄａｐｔｉｖｅ  Ｓｔｒｅａｍｉｎｇ  ｏｖｅｒ  ＨＴＴＰ（ＤＡＳＨ）などのインターネットストリーミングビデオ送信、データ記憶媒体上に符号化されたデジタルビデオ、データ記憶媒体に記憶されたデジタルビデオの復号、または他の適用例のような、種々の有線またはワイヤレスのマルチメディア適用例のいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、システム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスト、および／またはビデオ電話などの適用例をサポートするために一方向または双方向のビデオ送信をサポートするように構成され得る。
【００４９】
[0053]図２の例では、ソースデバイス１２は、ビデオソース１８と、ビデオエンコーダ２０と、出力インターフェース２２とを含む。宛先デバイス１４は、入力インターフェース２８と、ビデオデコーダ３０と、ディスプレイデバイス３２とを含む。本開示によれば、ソースデバイス１２のビデオエンコーダ２０は、３Ｄ−ＨＥＶＣのような３Ｄビデオコーディング処理における深度コーディングのためにデルタＤＣコーディングのための技法を適用するように構成され得る。他の例では、ソースデバイスおよび宛先デバイスは、他のコンポーネントまたは配置を含み得る。たとえば、ソースデバイス１２は、外部カメラなどの外部のビデオソース１８からビデオデータを受信することができる。同様に、宛先デバイス１４は、統合されたディスプレイデバイスを含むのではなく、外部のディスプレイデバイスとインターフェースしてもよい。
【００５０】
[0054]図２の例示されたシステム１０は、一例にすぎない。本開示で説明される技法は、デジタルビデオ符号化および／または復号デバイスによって実行され得る。一般に、本開示の技法は、ビデオエンコーダ２０／ビデオデコーダ３０によって実行されるが、技法は、通常「コーデック」と呼ばれるビデオエンコーダ／デコーダによって実行されてもよい。その上、本開示の技法は、ビデオプリプロセッサによって実行されてもよい。ソースデバイス１２および宛先デバイス１４は、ソースデバイス１２が、コーディングされたビデオデータを宛先デバイス１４への送信のために生成するようなコーディングデバイスの例にすぎない。いくつかの例では、デバイス１２、１４は、デバイス１２、１４の各々がビデオ符号化コンポーネントとビデオ復号コンポーネントとを含むように実質的に対称的な方式で動作することができる。したがって、システム１０は、たとえば、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、またはビデオ電話のために、ビデオデバイス１２と１４の間の一方向または双方向のビデオ送信をサポートすることができる。
【００５１】
[0055]ソースデバイス１２のビデオソース１８は、ビデオカメラ、以前にキャプチャされたビデオを含むビデオアーカイブ、および／またはビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェースのような、ビデオキャプチャデバイスを含み得る。さらなる代替形態として、ビデオソース１８は、ソースビデオとしてコンピュータグラフィックスベースのデータを生成し、または、ライブビデオと、アーカイブされたビデオと、コンピュータで生成されたビデオとの組合せを生成することができる。場合によっては、ビデオソース１８がビデオカメラである場合、ソースデバイス１２および宛先デバイス１４は、いわゆるスマートフォン、タブレットコンピュータ、またはビデオ電話を形成し得る。しかしながら、上で言及されたように、本開示で説明される技法は、ビデオコーディング全般に適用可能であってよく、ワイヤレスの適用例および／または有線の適用例に適用され得る。各々の場合において、キャプチャされたビデオ、事前にキャプチャされたビデオ、またはコンピュータで生成されたビデオは、ビデオエンコーダ２０によって符号化され得る。符号化されたビデオ情報は次いで、出力インターフェース２２によってコンピュータ可読媒体１６上に出力され得る。
【００５２】
[0056]コンピュータ可読媒体１６は、ワイヤレスブロードキャストもしくは有線ネットワーク送信のような一時的媒体、またはデータ記憶媒体（すなわち、非一時的記憶媒体）を含み得る。いくつかの例では、ネットワークサーバ（図示されず）は、ソースデバイス１２から符号化されたビデオデータを受信し、たとえば、ネットワーク送信を介して、その符号化されたビデオデータを宛先デバイス１４に提供することができる。同様に、ディスクスタンピング設備のような、媒体製造設備のコンピューティングデバイスは、ソースデバイス１２から符号化されたビデオデータを受信し、その符号化されたビデオデータを含むディスクを生成することができる。したがって、様々な例では、コンピュータ可読媒体１６は、様々な形態の１つまたは複数のコンピュータ可読媒体を含むと理解され得る。
【００５３】
[0057]本開示は全般に、ビデオエンコーダ２０が、ある情報をビデオデコーダ３０のような別のデバイスに「シグナリング」することに言及することがある。しかしながら、ビデオエンコーダ２０は、いくつかのシンタックス要素をビデオデータの様々な符号化された部分と関連付けることによって情報をシグナリングできることを理解されたい。すなわち、ビデオエンコーダ２０は、ビデオデータの様々な符号化される部分のヘッダまたはペイロードにいくつかのシンタックス要素を格納することによって、データを「シグナリング」することができる。場合によっては、そのようなシンタックス要素は、ビデオデコーダ３０によって受信されおよび復号されるより前に、符号化されおよび記憶され（たとえば、コンピュータ可読媒体１６に記憶され）得る。したがって、「シグナリング」という用語は全般に、そのような通信がリアルタイムで発生するか、ほぼリアルタイムで発生するか、またはある期間にわたって発生するかにかかわらず、圧縮されたビデオデータを復号するためのシンタックスまたは他のデータの通信を指すことがあり、ある期間にわたる通信は、シンタックス要素を符号化の時点で媒体に記憶し、次いで、シンタックス要素がこの媒体に記憶された後の任意の時点で復号デバイスによって取り出され得るときに発生し得る。
【００５４】
[0058]宛先デバイス１４の入力インターフェース２８は、コンピュータ可読媒体１６から情報を受信する。コンピュータ可読媒体１６の情報は、ブロックおよび他のコーディングされたユニット、たとえば、ＧＯＰの特性および／または処理を記述するシンタックス要素を含む、ビデオエンコーダ２０によって定義されビデオデコーダ３０によっても使用される、シンタックス情報を含み得る。ディスプレイデバイス３２は、ユーザに復号されたビデオデータを表示し、陰極線管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、プロジェクションデバイス、または別のタイプのディスプレイデバイスのような、種々のディスプレイデバイスのいずれかを備え得る。
【００５５】
[0059]図２には示されていないが、いくつかの態様では、ビデオエンコーダ２０およびビデオデコーダ３０は各々、オーディオエンコーダおよびデコーダと統合されてよく、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理するために、適切なＭＵＸ−ＤＥＭＵＸユニット、または他のハードウェアおよびソフトウェアを含み得る。適用可能なとき、ＭＵＸ−ＤＥＭＵＸユニットは、一例としてＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、またはユーザデータグラムプロトコル（ＵＤＰ）のような他のプロトコルに準拠し得る。
【００５６】
[0060]ビデオエンコーダ２０およびビデオデコーダ３０は各々、適用可能なとき、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理回路、ソフトウェア、ハードウェア、ファームウェア、またはそれらの任意の組合せのような、種々の好適なエンコーダまたはデコーダ回路のいずれかとして実装され得る。ビデオエンコーダ２０およびビデオデコーダ３０の各々は１つまたは複数のエンコーダまたはデコーダに含まれてよく、そのいずれもが複合ビデオエンコーダ／デコーダ（コーデック）の一部として統合されてよい。ビデオエンコーダ２０および／またはビデオデコーダ３０を含むデバイスは、集積回路、マイクロプロセッサ、および／または携帯電話のようなワイヤレス通信デバイスを備え得る。
【００５７】
[0061]ビデオエンコーダ２０およびビデオデコーダ３０は、ＨＥＶＣ規格のようなビデオコーディング規格、およびより具体的には、本開示で参照されるような、たとえばｄｏｃｕｍｅｎｔ  Ｆ１００１または３Ｄ−ＨＥＶＣ  ＷＤによる、ＨＥＶＣ規格の３Ｄ−ＨＥＶＣ拡張に従って動作することができる。ＨＥＶＣは、たとえば、ＩＴＵ−Ｔ  Ｈ．２６４／ＡＶＣのような他の処理に従ってコーディングを実行するように構成されるデバイスと比較して、ビデオコーディングデバイスのいくつかの追加の能力を仮定する。たとえば、Ｈ．２６４は９個のイントラ予測符号化モードを提供するが、ＨＭは３５個ものイントラ予測符号化モードを提供することができる。
【００５８】
[0062]ＨＥＶＣのいくつかの基本的態様がここで論じられる。一般に、ＨＥＶＣは、ビデオピクチャ（または「フレーム」）が、コーディングツリーユニット（ＣＴＵ）と呼ばれる一連の最大コーディングユニット（ＬＣＵ）に分割され得ることを規定する。ＣＴＵは、対応するルーマ成分およびクロマ成分を含み、これらはコーディングされたツリーブロック（ＣＴＢ）、たとえば、それぞれ、ルーマＣＴＢおよびクロマＣＴＢと呼ばれ、ルーマサンプルおよびクロマサンプルを含む。ビットストリーム内のシンタックスデータは、ＣＴＵのサイズを定義することができ、このＣＴＵは、ピクセルの個数に関して最大のコーディングユニットである。スライスは、ピクチャのコーディングされた部分であってよく、コーディングの順序で、いくつかの連続するＣＴＢを含み得る。ピクチャは、１つまたは複数のスライスに区分され得る。各ＣＴＢは、4分木分割構造に従ってコーディングユニット（ＣＵ）に分割され得る。一般に、４分木データ構造は、１ＣＵあたり１つのノードを含み、ルートノードがＣＴＢに対応する。ＣＵが４つのサブＣＵに分割される場合、ＣＵに対応するノードは４つのリーフノードを含み、その各々はサブＣＵの１つに対応する。
【００５９】
[0063]４分木データ構造の各ノードは、対応するＣＵのためのシンタックスデータを与え得る。たとえば、４分木中のノードは、そのノードに対応するＣＵがサブＣＵに分割されるかどうかを示す分割フラグを含み得る。ＣＵのシンタックス要素は、再帰的に定義されてよく、ＣＵがサブＣＵに分割されるかどうかに依存してよい。ＣＵがさらに分割されない場合、そのＣＵはリーフＣＵと呼ばれる。元のリーフＣＵの明示的な分割がない場合でも、リーフＣＵの４つのサブＣＵはリーフＣＵと呼ばれることもある。たとえば、１６×１６サイズのＣＵがさらに分割されない場合、この１６×１６ＣＵが決して分割されなくても、４つの８×８サブＣＵはリーフＣＵとも呼ばれる。
【００６０】
[0064]ＨＥＶＣのＣＵは、ＣＵがサイズの差異を有しないことを除いて、Ｈ．２６４規格のマクロブロックと同様の目的を有する。たとえば、ＣＴＢは、（サブＣＵとも呼ばれる）４つの子ノードに分割されてよく、各子ノードは、今度は親ノードとなり、別の４つの子ノードに分割されてよい。４分木のリーフノードと呼ばれる、最後の分割されない子ノードは、リーフＣＵとも呼ばれるコーディングノードを備える。コーディングされたビットストリームと関連付けられるシンタックスデータは、最大ＣＵ深度と呼ばれる、ＣＴＢが分割され得る最大の回数を定義することができ、コーディングノードの最小サイズを定義することもできる。それに応じて、いくつかの例では、ビットストリームは最小コーディングユニットを定義することもできる。
【００６１】
[0065]ＣＵは、コーディングノードと、コーディングノードと関連付けられた予測ユニット（ＰＵ）および変換ユニット（ＴＵ）とを含む。本開示は、ＨＥＶＣの文脈においてＣＵ、予測ユニット（ＰＵ）、変換ユニット（ＴＵ）、もしくはそれらの区分のいずれか、または他の規格の文脈において類似のデータ構造を指すために、「ブロック」という用語を使用し得る。ＣＵのサイズは、コーディングノードのサイズに対応する。ＣＵのサイズは、８×８ピクセルから最大で６４×６４ピクセル以上のＣＴＢのサイズにまでわたり得る。各ＣＵは、１つまたは複数のＰＵと１つまたは複数のＴＵとを包含し得る。ＣＵと関連付けられるシンタックスデータは、たとえば、ＣＵの１つまたは複数のＰＵへの区分を記述することができる。区分モードは、ＣＵがスキップモード符号化もしくは直接モード符号化されるか、イントラ予測モード符号化されるか、またはインター予測モード符号化されるかで異なり得る。本開示で説明される深度コーディングの場合、ＰＵは、形状が非正方形となるように区分されてよく、または、形状が非方形である区分を含んでよい。ＣＵと関連付けられるシンタックスデータは、たとえば、４分木に従う１つまたは複数のＴＵへのＣＵの区分を記述することができる。ＴＵは、形状が正方形または非正方形（たとえば、長方形）であってよい。
【００６２】
[0066]ＨＥＶＣ規格は、ＴＵに従った変換を可能にし、異なるＣＵに対しては異なり得る。ＴＵは通常、区分されたＣＴＢに対して定義される所与のＣＵ内のＰＵのサイズに基づくサイズにされるが、必ずそうであるとは限らない。ＴＵは通常、ＰＵ以下のサイズである。いくつかの例では、ＣＵに対応する残差サンプルは、「残差４分木」（ＲＱＴ）として知られる４分木構造を使用して、より小さいユニットに再分割され得る。ＲＱＴのリーフノードは、変換ユニット（ＴＵ）と呼ばれ得る。ＴＵと関連付けられるピクセル差分値は、変換係数を生成するために変換されてよく、それは量子化され得る。
【００６３】
[0067]リーフＣＵは、１つまたは複数の予測ユニット（ＰＵ）を含み得る。一般に、ＰＵは、対応するＣＵのすべてまたは一部分に対応する空間エリアを表し、そのＰＵの参照サンプルを取り出すためのデータを含み得る。参照サンプルは、参照ブロックからのピクセルであり得る。いくつかの例では、参照サンプルは、たとえば、補間または他の技法によって、参照ブロックから取得され、または生成され得る。ＰＵはまた、予測に関するデータを含む。たとえば、ＰＵが、イントラモード符号化されるとき、ＰＵのデータは、残差４分木（ＲＱＴ）に含まれてよく、それは、ＰＵに対応するＴＵのイントラ予測モードを記述するデータを含み得る。
【００６４】
[0068]別の例として、ＰＵがインターモードで符号化されるとき、ＰＵは、ＰＵのための１つまたは複数の動きベクトルを定義するデータを含み得る。ＰＵのための動きベクトルを定義するデータは、たとえば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルの分解能（たとえば、１／４ピクセル精度または１／８ピクセル精度）、動きベクトルが指す参照ピクチャ、および／または動きベクトルの参照ピクチャリスト（たとえば、ＲｅｆＰｉｃＬｉｓｔ０、ＲｅｆＰｉｃＬｉｓｔ１）を記述することができる。
【００６５】
[0069]１つまたは複数のＰＵを有するリーフＣＵは、１つまたは複数の変換ユニット（ＴＵ）を含み得る。変換ユニットは、上で論じられたように、ＲＱＴ（ＴＵの４分木構造とも呼ばれる）を使用して規定され得る。たとえば、分割フラグは、リーフＣＵが４つの変換ユニットに分割されるかどうかを示し得る。次いで、各変換ユニットは、さらなるサブＴＵに、さらに分割され得る。ＴＵがこれ以上分割されないとき、そのＴＵはリーフＴＵと呼ばれ得る。一般に、イントラコーディングの場合、リーフＣＵに属するすべてのリーフＴＵは同じイントラ予測モードを共有する。すなわち、同じイントラ予測モードが一般に、リーフＣＵのすべてのＴＵに対する予測値を計算するために適用される。イントラコーディングの場合、ビデオエンコーダ２０は、イントラ予測モードを使用して各リーフＴＵの残差値を、ＴＵに対応するＣＵの部分と元のブロックとの間の差分として計算することができる。ＴＵは、必ずしもＰＵのサイズに制限されるとは限らない。したがって、ＴＵは、ＰＵよりも大きくまたは小さくなり得る。イントラコーディングの場合、ＰＵは、同じＣＵの対応するリーフＴＵと併置され得る。いくつかの例では、リーフＴＵの最大サイズは、対応するリーフＣＵのサイズに対応し得る。
【００６６】
[0070]その上、リーフＣＵのＴＵはまた、残差４分木（ＲＱＴ）と呼ばれる、それぞれの４分木データ構造と関連付けられ得る。すなわち、リーフＣＵは、そのリーフＣＵがＴＵにどのように区分されるかを示す４分木を含み得る。ＴＵ４分木のルートノードは一般に、リーフＣＵに対応し、ＣＵ４分木のルートノードは一般に、ＣＴＢに対応する。分割されないＲＱＴのＴＵはリーフＴＵと呼ばれる。一般に、本開示では、別段に明記されていない限り、リーフＣＵおよびリーフＴＵに言及するためにそれぞれＣＵおよびＴＵという用語を使用する。
【００６７】
[0071]ビデオシーケンスは通常、一連のピクチャを含む。本明細書で説明されるように、「ピクチャ」と「フレーム」は交換可能に使用され得る。すなわち、ビデオデータを含んでいるピクチャは、ビデオフレームまたは単に「フレーム」と呼ばれ得る。ピクチャグループ（ＧＯＰ）は一般に、一連の１つまたは複数のビデオピクチャを備える。ＧＯＰは、ＧＯＰのヘッダ中、ピクチャの１つまたは複数のヘッダ中、または他のところに、そのＧＯＰに含まれるピクチャの数を記述するシンタックスデータを含み得る。ピクチャの各スライスは、それぞれのスライスの符号化モードを記述するスライスシンタックスデータを含み得る。ビデオエンコーダ２０は通常、ビデオデータを符号化するために、個々のビデオスライス内のビデオブロックに対して動作する。ビデオブロックは、ＣＵ内のコーディングノードに対応し得る。ビデオブロックは、固定サイズまたは可変サイズを有し、指定されるコーディング規格に応じてサイズが異なり得る。
【００６８】
[0072]ある例として、ＨＥＶＣは、様々なＰＵサイズにおける予測をサポートする。特定のＣＵのサイズが２Ｎｘ２Ｎであると仮定すると、ＨＥＶＣは、２Ｎｘ２ＮまたはＮｘＮのＰＵサイズにおけるイントラ予測と、２Ｎｘ２Ｎ、２ＮｘＮ、Ｎｘ２Ｎ、またはＮｘＮという対称なＰＵサイズにおけるインター予測とをサポートする。２Ｎｘ２Ｎのサイズを有するＰＵは、それが存在するＣＵと同じサイズであるので、分割されないＣＵを表す。言い換えると、２Ｎｘ２ＮのＰＵは、そのＣＵと同じサイズである。ＨＥＶＣは、２ＮｘｎＵ、２ＮｘｎＤ、ｎＬｘ２Ｎ、およびｎＲｘ２ＮのＰＵサイズでのインター予測のための非対称区分をサポートする。非対称区分では、ＣＵの一方の方向は区分されず、他方の方向は２５％と７５％とに区分される。２５％の区分に対応するＣＵの部分は、「ｎ」とその後ろに付く「Ｕｐ」、「Ｄｏｗｎ」、「Ｌｅｆｔ」、または「Ｒｉｇｈｔ」という指示によって示される。したがって、たとえば、「２ＮｘｎＵ」は、上部の２Ｎｘ０．５Ｎ  ＰＵ、および下部の２Ｎｘ１．５Ｎ  ＰＵへと水平に区分される２Ｎｘ２Ｎ  ＣＵを指す。深度コーディングの場合、３Ｄ−ＨＥＶＣ  ＷＤはさらに、説明されるように、非方形区分を含む、深度モデリングモード（ＤＭＭ）に従ったＰＵの区分をサポートする。
【００６９】
[0073]本開示では、「ＮｘＮ」および「Ｎ×Ｎ（Ｎ  ｂｙ  Ｎ）」は、垂直方向の寸法および水平方向の寸法に関するビデオブロックのピクセル寸法、たとえば、１６ｘ１６ピクセルまたは１６×１６（１６  ｂｙ１６）ピクセルを指すために互換的に使用され得る。一般に、１６ｘ１６ブロックは、垂直方向に１６ピクセルを有し（ｙ＝１６）、水平方向に１６ピクセルを有する（ｘ＝１６）。同様に、ＮｘＮブロックは、一般に、垂直方向にＮピクセル、水平方向にＮピクセルを有し、Ｎは、非負の整数値を表す。ブロック内のピクセルは、行と列とに配置され得る。その上、ブロックは、必ずしも、水平方向において垂直方向と同じ数のピクセルを有するとは限らない。たとえば、ブロックはＮｘＭピクセルを備えることがあり、ここで、Ｍは必ずしもＮに等しいとは限らない。
【００７０】
[0074]ＣＵのＰＵを使用したイントラ予測コーディングまたはインター予測コーディングに続いて、ビデオエンコーダ２０は、ＣＵのＴＵのための残差データを計算することができる。ＰＵは、空間領域（ピクセル領域とも呼ばれる）において予測ピクセルデータを生成する方法またはモードを記述するシンタックスデータを備えてよく、ＴＵは、変換、たとえば、残差ビデオデータへの離散コサイン変換（ＤＣＴ）、整数変換、ウェーブレット変換、または概念的に同様の変換の適用後の、変換領域における係数を備えてよい。残差データは、符号化されていないピクチャのピクセルとＰＵに対応する予測値との間のピクセル差に対応し得る。ビデオエンコーダ２０は、ＣＵのための残差データを含むＴＵを形成し、次いで、ＣＵのための変換係数を生成するために、ＴＵを変換することができる。
【００７１】
[0075]変換係数を生成するための任意の変換の後で、ビデオエンコーダ２０は、変換係数の量子化を実行することができる。量子化は一般に、係数を表すために使用されるデータの量をできるだけ低減するために、変換係数が量子化され、さらなる圧縮を実現する処理を指す。量子化プロセスは、係数の一部またはすべてと関連付けられたビット深度を低減し得る。たとえば、ｎビット値が、量子化中にｍビット値へと切り捨てられてよく、ｎはｍより大きい。深度コーディングの場合、３Ｄ−ＨＥＶＣ  ＷＤはさらに、残差データのセグメントごとのＤＣコーディングとＤＭＭコーディングとをサポートし、デルタＤＣ値は、ＰＵ区分に対する残差値を表す。通常のＨＥＶＣ残差値とは異なり、デルタＤＣ残差値は、変換または量子化されないことがある。
【００７２】
[0076]量子化の後に、ビデオエンコーダ２０は、量子化された変換係数を走査して、量子化された変換係数を含む２次元行列から１次元ベクトルを生成することができる。走査は、アレイの前部により高いエネルギー（したがって、より低い周波数）係数を配置し、アレイの後部により低いエネルギー（したがって、より高い周波数）係数を配置するように設計され得る。
【００７３】
[0077]いくつかの例では、ビデオエンコーダ２０は、エントロピー符号化され得るシリアル化されたベクトルを生成するために、量子化された変換係数を走査するために所定の走査順序を利用することができる。他の例では、ビデオエンコーダ２０は、適応走査を実行することができる。量子化された変換係数を走査して１次元ベクトルを形成した後に、ビデオエンコーダ２０は、たとえば、ＨＥＶＣにおいて使用されるように、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ：context-adaptive binary arithmetic coding）に従って、１次元ベクトルをエントロピー符号化することができる。他のエントロピーコーディング処理の例としては、たとえば、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ：context adaptive variable length coding）、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ：syntax-based context-adaptive binary arithmetic coding）、および確率間隔区分エントロピー（ＰＩＰＥ：probability interval partitioning entropy）コーディングがある。さらに、ＨＥＶＣでは、ＣＡＢＡＣが使用される。ビデオエンコーダ２０はまた、ビデオデータを復号する際にビデオデコーダ３０が使用するための、符号化されたビデオデータと関連付けられるシンタックス要素をエントロピー符号化することができる。
【００７４】
[0078]ビデオエンコーダ２０はさらに、ブロックベースのシンタックスデータ、ピクチャベースのシンタックスデータ、およびＧＯＰベースのシンタックスデータのようなシンタックスデータを、たとえば、ピクチャヘッダ、ブロックヘッダ、スライスヘッダ、またはＧＯＰヘッダ中でビデオデコーダ３０に送ることができる。ＧＯＰシンタックスデータは、それぞれのＧＯＰ中のピクチャの数を記述することができ、ピクチャシンタックスデータは、対応するピクチャを符号化するために使用される符号化／予測モードを示すことができる。
【００７５】
[0079]ビデオエンコーダ２０および／またはビデオデコーダ３０は、深度データのイントラピクチャ予測コーディングと深度データのインター予測コーディングとを実行することができる。加えて、本開示の例によれば、ビデオエンコーダ２０および／またはビデオデコーダ３０は、説明されるように、たとえば種々の例のいずれかに従って、ビデオデータの深度イントラ予測コーディングおよび／またはビデオデータの深度インター予測コーディングに起因する残差データをコーディングするために、ＳＤＣを使用することができる。いくつかの例では、ビデオエンコーダ２０および／またはビデオデコーダ３０は、深度イントラ予測から生じる残差データを生成するために、ＳＤＣを伴って、または伴わずにＤＭＭを使用することができる。ＳＤＣまたはＤＭＭを使用して生成された残差データは、デルタＤＣ残差値を含むことができる。
【００７６】
[0080]ＨＥＶＣでは、コーディングユニット（ＣＵ）のサイズが２Ｎｘ２Ｎであると仮定すると、ビデオエンコーダ２０およびビデオデコーダ３０は、イントラ予測に対して２Ｎｘ２ＮまたはＮｘＮという様々な予測ユニット（ＰＵ）サイズをサポートすることができ、インター予測に対して２Ｎｘ２Ｎ、２ＮｘＮ、Ｎｘ２Ｎ、ＮｘＮ、または同様なサイズの対称のＰＵサイズをサポートすることができる。ビデオエンコーダおよびビデオデコーダはまた、インター予測のための２ＮｘｎＵ、２ＮｘｎＤ、ｎＬｘ２Ｎ、およびｎＲｘ２ＮのＰＵサイズに対して非対称な区分をサポートすることができる。３Ｄ−ＨＥＶＣにおいて提供されるような深度コーディングでは、ビデオエンコーダおよびビデオデコーダは、本開示で説明されるように、様々な深度モデリングモード（ＤＭＭ）を含む、イントラ予測および／またはインター予測のための種々の異なる深度コーディングモードをサポートするように構成され得る。
【００７７】
[0081]３Ｄビデオコーディング技法を使用してコーディングされたビデオデータは、３次元効果を生成するためにレンダリングされ、表示され得る。一例として、異なるビューの２つの画像（すなわち、わずかに異なる水平位置を有する２つのカメラの視点に対応する）は、一方の画像が閲覧者の左眼によって見られ、他方の画像が閲覧者の右眼によって見られるように、実質的に同時に表示され得る。
【００７８】
[0082]３Ｄ効果は、たとえば、立体視ディスプレイまたは自動立体視ディスプレイを使用して達成され得る。立体視ディスプレイは、２つの画像を相応にフィルタリングするアイウェアとともに使用され得る。たとえば、パッシブ眼鏡は、適切な眼が適切な画像を見ることを保証するために、偏光レンズ、または異なるカラーレンズ、または他の光学的フィルタリング技法を使用して、画像をフィルタリングすることができる。アクティブ眼鏡は、別の例として、立体視ディスプレイと協調して交互にレンズを高速に閉じることができ、それにより、左眼画像を表示することと右眼画像を表示することとを交互に行い得る。自動立体視ディスプレイは、眼鏡が必要とされないような方法で２つの画像を表示する。たとえば、自動立体視ディスプレイは、各画像が閲覧者の適切な眼に投影されるように構成された鏡またはプリズムを含み得る。
【００７９】
[0083]本開示の技法は、３Ｄビデオをサポートするために深度データをコーディングすることによって、３Ｄビデオデータをコーディングするための技法に関する。一般に、「テクスチャ」という用語は、画像のルミナンス（すなわち、輝度または「ルーマ」）値と画像のクロミナンス（すなわち、色または「クロマ」）値とを表すために使用される。いくつかの例では、テクスチャ画像は、１セットのルミナンスデータ（Ｙ）と、青色相（Ｃｂ）および赤色相（Ｃｒ）のための２セットのクロミナンスデータとを含み得る。４：２：２または４：２：０などの特定のクロマフォーマットでは、クロマデータは、ルーマデータに関してダウンサンプリングされる。すなわち、クロミナンスピクセルの空間解像度は、対応するルミナンスピクセルの空間解像度よりも低く、たとえば、ルミナンス解像度の１／２または１／４であり得る。
【００８０】
[0084]深度データは一般に、対応するテクスチャデータの深度値を表す。たとえば、深度画像は、たとえばビューのテクスチャ成分中の対応するテクスチャデータに対する、たとえばビューの深度成分中の深度を各々表す、深度ピクセルのセット（または深度値）を含み得る。各ピクセルは、１つまたは複数のテクスチャ値（たとえば、ルミナンスおよびクロミナンス）を有してよく、１つまたは複数の深度値も有してよい。テクスチャピクチャおよび深度マップは、同じ空間解像度を有することがあるが、そうである必要はない。たとえば、深度マップは、対応するテクスチャピクチャよりも多数または少数のピクセルを含み得る。深度データは、対応するテクスチャデータの水平視差を決定するために使用されてよく、およびいくつかの場合には、垂直視差も使用されてよい。
【００８１】
[0085]したがって、テクスチャデータと深度データとを受信するデバイスは、一方のビュー（たとえば、左眼ビュー）のための第１のテクスチャ画像を表示し、深度値に基づいて決定された水平視差値だけ第１の画像のピクセル値をオフセットすることによって、他方のビュー（たとえば、右眼ビュー）のための第２のテクスチャ画像を生成するように第１のテクスチャ画像を修正するために深度データを使用することができる。一般に、水平視差（または単に「視差」）は、右ビュー中の対応するピクセルに対する第１のビュー中のピクセルの水平空間オフセットを表し、２つのピクセルは、２つのビュー中で表される同じオブジェクトの同じ部分に対応する。
【００８２】
[0086]さらに他の例では、画像について定義されたゼロ視差平面に対して所与のピクセルと関連付けられる深度が定義されるように、画像平面に直交するｚ次元におけるピクセルに対して深度データが定義され得る。そのような深度は、ピクセルを表示するための水平視差を作成するために使用されてよく、その結果、ピクセルは、ゼロ視差平面に対するピクセルのｚ次元深度値に応じて、左眼と右眼とで異なるように表示される。ゼロ視差平面は、ビデオシーケンスの異なる部分に対して変化してよく、ゼロ視差平面に対する深度の量も変化してよい。
【００８３】
[0087]ゼロ視差平面上に位置するピクセルは、左眼と右眼とに対して同様に定義され得る。ゼロ視差平面の前に位置するピクセルは、ピクセルが画像平面に直交するｚ方向の画像から出てくるように見える知覚を生み出すために、（たとえば、水平視差とともに）左眼と右眼とに対して異なる位置に表示され得る。ゼロ視差平面の後ろに位置するピクセルは、深度のわずかな知覚まで、わずかなぼかしとともに表示されてよく、または（たとえば、ゼロ視差平面の前に位置するピクセルの水平視差とは反対の水平視差とともに）左眼と右眼とに対して異なる位置に表示され得る。他の多くの技法も、画像の深度データを伝達または定義するために使用され得る。
【００８４】
[0088]２次元ビデオデータは一般に、その各々が特定の時間インスタンスに対応する、個別ピクチャのシーケンスとしてコーディングされる。すなわち、各ピクチャは、シーケンス中の他の画像の再生時間に対して、関連付けられる再生時間を有する。これらのピクチャはテクスチャピクチャまたはテクスチャ画像と考えられ得る。深度ベースの３Ｄビデオコーディングでは、シーケンス中の各テクスチャピクチャは深度マップにも対応し得る。すなわち、テクスチャピクチャに対応する深度マップは、対応するテクスチャピクチャのための深度データを表す。マルチビュービデオデータは、様々な異なるビューのためのデータを含んでよく、各ビューは、テクスチャ成分および対応する深度成分のそれぞれのシーケンスを含み得る。
【００８５】
[0089]ピクチャは一般に、特定の時間インスタンスに対応する。ビデオデータは、アクセスユニットのシーケンスを使用して表されてよく、各アクセスユニットは、特定の時間インスタンスに対応するすべてのデータを含む。したがって、たとえば、マルチビュービデオデータプラス深度コーディングの場合、共通時間インスタンスに対する各ビューからのテクスチャ画像＋テクスチャ画像の各々に対する深度マップがすべて、特定のアクセスユニット内に含まれ得る。したがって、アクセスユニットは複数のビューを含んでよく、各ビューは、テクスチャ画像に対応するテクスチャ成分のためのデータと、深度マップに対応する深度成分のためのデータとを含み得る。
【００８６】
[0090]各アクセスユニットは、複数のビュー成分またはピクチャを含み得る。特定のビューのビュー成分は、固有のビューｉｄまたはビュー順序インデックスと関連付けられ、その結果、異なるビューのビュー成分は異なるビューｉｄまたはビュー順序インデックスと関連付けられる。ビュー成分はテクスチャビュー成分ならびに深度ビュー成分を含み得る。同じビューの中のテクスチャビュー成分および深度ビュー成分は、異なるレイヤｉｄを有し得る。テクスチャビュー成分は１つまたは複数のテクスチャスライスとしてコーディングされ得るが、深度ビュー成分は１つまたは複数の深度スライスとしてコーディングされ得る。マルチビュープラス深度は、ピクチャ内予測、ピクチャ間予測、ビュー内予測、ビュー間予測、動き予測などのような、種々のコーディングの可能性を生み出す。
【００８７】
[0091]このようにして、３Ｄビデオデータは、キャプチャまたは生成されたビューが対応する深度マップと関連付けられるテクスチャ成分を含む、マルチビュービデオプラス深度フォーマットを使用して表され得る。その上、３Ｄビデオコーディングでは、テクスチャと深度マップがコーディングされ、３Ｄビデオビットストリームの中に多重化され得る。深度マップはグレースケール画像としてコーディングされてよく、深度マップの「ルーマ」サンプル（すなわち、ピクセル）は深度値を表す。
【００８８】
[0092]一般に、深度データのブロック（たとえばピクセルに対応する、深度マップのサンプルのブロック）は深度ブロックと呼ばれ得る。深度値は、深度サンプルと関連付けられるルーマ値と呼ばれ得る。すなわち、深度マップは一般に、モノクロームテクスチャピクチャ、すなわち、ルミナンス値を含みクロミナンス値を含まないテクスチャピクチャとして扱われ得る。いずれの場合も、従来のイントラコーディングおよびインターコーディング方法が深度マップコーディングのために適用され得る。
【００８９】
[0093]３Ｄ−ＨＥＶＣでは、イントラ予測モードの、ＨＥＶＣと同じ定義が利用される。すなわち、３Ｄ−ＨＥＶＣにおいて使用されるイントラモードは、ＨＥＶＣのイントラモードを含む。また、３Ｄ−ＨＥＶＣでは、深度モデリングモード（ＤＭＭ）が、深度スライスのイントラ予測ユニットをコーディングするためにＨＥＶＣイントラ予測モードとともに導入される。
【００９０】
[0094]深度マップにおける鋭いエッジのより良好な表現のために、現在のＨＴＭ（３Ｄ−ＨＴＭバージョン９．０）は、深度マップのイントラコーディングのためにＤＭＭ方法を適用する。深度ブロックは、ＤＭＭパターンによって指定された２つの領域に区分され、各領域は一定の値によって表される。ＤＭＭパターンは、明示的にシグナリングされる（ＤＭＭモード１）か、または併置されるテクスチャブロックによって予測される（ＤＭＭモード４）かのいずれかであり得る。
【００９１】
[0095]Ｗｅｄｇｅｌｅｔ区分と輪郭区分とを含む、ＤＭＭにおいて定義されている２つのタイプの区分モデルがある。図３は、ピクセルサンプルのブロックをコーディングする際に使用するためのＷｅｄｇｅｌｅｔ区分パターンの例を示す図である。図４は、ピクセルサンプルのブロックをコーディングする際に使用するための輪郭区分パターンの例を示す図である。Ｗｅｄｇｅｌｅｔ区分では、図３に示されるように、深度ブロックが、直線によって２つの領域に区分され、２つの領域は、Ｐ０およびＰ１と標識される。輪郭区分では、図４に示されるように、深度ブロックは、２つの不規則な領域に区分され得る。
【００９２】
[0096]輪郭区分は、Ｗｅｄｇｅｌｅｔ区分よりも柔軟であるが、明示的にシグナリングするのが難しい。ＤＭＭモード４では、３Ｄ−ＨＥＶＣの場合、輪郭区分パターンは、併置されたテクスチャブロックの再構築されたルーマサンプルを使用して暗黙的に導出される。
【００９３】
[0097]一例として、図３は、８×８のブロック４０に対するＷｅｄｇｅｌｅｔパターンの例示を与える。Ｗｅｄｇｅｌｅｔ区分では、深度ブロック、たとえばＰＵは、直線４６によって２つの領域４２、４４に区分され、図３に示されるように始点４８は（Ｘｓ，Ｙｓ）に位置し、終点５０は（Ｘｅ，Ｙｅ）に位置し、２つの領域４２、４４はそれぞれＰ０およびＰ１とも標識される。ブロック４０中の各パターンは、対応するサンプルが領域Ｐ０またはＰ１に属するかどうかを標識する、サイズｕＢ×ｖＢの２進数の配列からなり、ｕＢおよびｖＢはそれぞれ、現在のＰＵの水平方向のサイズと垂直方向のサイズを表す。領域Ｐ０およびＰ１は、白い影付きサンプルによってそれぞれ図３において表されている。Ｗｅｄｇｅｌｅｔパターンは、符号化と復号の両方の最初に初期化される。
【００９４】
[0098]図４の例に示されるように、深度ブロック６０のような深度ブロックは、輪郭区分を使用して、３つの不規則な形状の領域６２、６４Ａ、および６４Ｂへと区分されてよく、ここで領域６２はＰ０と標識され、２つの領域６４Ａおよび６４ＢはそれぞれＰ１と一緒に標識される。領域６４Ａ中のピクセルは領域６４Ｂ中のピクセルに直接隣接しないが、領域６４Ａおよび６４Ｂは、深度ブロック６０のＰＵを予測する目的で１つの単一の領域を形成するように定義され得る。
【００９５】
[0099]図３および図４を参照すると、ＮｘＮ深度ブロック４０および６０内の各々の個々の正方形は、それぞれ、深度ブロック４０および６０のそれぞれの個々のピクセルを表す。正方形内の数値は、対応するピクセルが領域４２（図３の例における値「０」）に属するか、領域４４（図３の例における値「１」）に属するかを表す。また、図３において、ピクセルが領域４２（白い正方形）に属するか、領域４４（灰色の影付き正方形）に属するかを示すために陰影が使用される。
【００９６】
[0100]上で論じられたように、各パターン（すなわち、Ｗｅｄｇｅｌｅｔと輪郭の両方）は、対応するサンプル（すなわち、ピクセル）が領域Ｐ０に属するかＰ１に属するか（ただし、Ｐ０は図３中の領域４２と図４中の領域６２とに対応し、Ｐ１は図３中の領域４４と図４中の領域６４Ａ、６４Ｂとに対応する）を標識する、サイズｕＢ×ｖＢの２進数の配列によって定義されてよく、ｕＢおよびｖＢはそれぞれ、現在のＰＵの水平方向のサイズおよび垂直方向のサイズを表す。図３および図４の例では、ＰＵは、それぞれブロック４０および６０に対応する。
【００９７】
[0101]ＨＥＶＣイントラ予測モードでは、ＨＥＶＣ  ＷＤ１０の８．４．２項において規定されるように、ＰＵの隣接サンプルを使用することによって、ピクセル固有のイントラ予測子の値が、ＰＵ中の各ピクセルに対して生成される。
【００９８】
[0102]他の深度イントラモードでは、区分固有のＤＣ予測子が、ＰＵの最大で２つの隣接するサンプルを使用することによって、ＰＵ内の各区分に対して計算される。ｂＰａｔｔｅｒｎ［ｘ］［ｙ］をＰＵの区分パターンとし、ここでｘ＝０．．Ｎ−１，ｙ＝０．．Ｎ−１であり、ＮはＰＵの幅である。ｂＰａｔｔｅｒｎ［ｘ］［ｙ］はピクセル（ｘ，ｙ）がどの区分に属するかを示し、ｂＰａｔｔｅｒｎ［ｘ］［ｙ］は０または１に等しくてよい。ＢｉｔＤｅｐｔｈを深度サンプルのビット深度とし、ＲｅｃＳａｍｐｌｅ［ｘ］［ｙ］をＰＵの再構築された隣接サンプルとし、ｘ＝−１およびｙ＝０．．Ｎ−１（ＰＵの左の隣接ピクセルに対応する）であり、またはｙ＝−１，ｘ＝０．．Ｎ−１（ＰＵの上の隣接ピクセルに対応する）である。次いで、区分ＸのＤＣ予測子、すなわちｘ＝０または１であるＤＣＰｒｅｄ［Ｘ］は、次のように導出される。
ｂＴ＝（ｂＰａｔｔｅｒｎ［０］［０］！＝ｂＰａｔｔｅｒｎ［Ｎ−１］［０］）？１：０  と設定する
ｂＬ＝（ｂＰａｔｔｅｒｎ［０］［０］！＝ｂＰａｔｔｅｒｎ［０］［Ｎ−１］）？１：０  と設定する
ｂＴがｂＬに等しい場合、
ＤＣＰｒｅｄ［Ｘ］＝（ＲｅｃＳａｍｐｌｅ［−１］［０］＋ＲｅｃＳａｍｐｌｅ［０］［１］）＞＞１
ＤＣＰｒｅｄ［１−Ｘ］＝ｂＬ？（ＲｅｃＳａｍｐｌｅ［−１］［Ｎ−１］＋ＲｅｃＳａｍｐle［Ｎ−１］［−１］）＞＞１：２ＢｉｔＤｅｐｔｈ−１
それ以外の場合、
ＤＣＰｒｅｄ［Ｘ］＝ｂＬ？ＲｅｃＳａｍｐｌｅ［（Ｎ−１）＞＞１］［−１］：ＲｅｃＳａｍｐｌｅ［−１］［（Ｎ−１）＞＞１］
ＤＣＰｒｅｄ［１−Ｘ］＝ｂＬ？ＲｅｃＳａｍｐｌｅ［−１］［Ｎ−１］：ＲｅｃＳａｍｐｌｅ［Ｎ−１］［−１］
【００９９】
[0103]深度参照テーブル（ＤＬＴ：Depth Lookup Table）は、深度インデックスを深度値にマッピングする。ＤＬＴは、ビデオシーケンス全体を符号化する前に第１のイントラ期間内のフレームを分析することによって構築され得る。３Ｄ−ＨＥＶＣの現在の設計では、有効な深度値のすべてが、昇順で並べ替えられ、インデックスの増大とともにＤＬＴに挿入される。
【０１００】
[0104]ＤＬＴは任意選択のコーディングツールである。現在のＨＴＭ（３Ｄ−ＨＴＭ  ｖｅｒｓｉｏｎ９．０）では、エンコーダ２０は、分析段階において元の深度マップ中に０からＭＡＸ＿ＤＥＰＴＨ＿ＶＡＬＵＥ（たとえば、８ビット深度サンプルの場合は２５５）までの値の１／２よりも多くが現れる場合、ＤＬＴを使用しない。それ以外の場合、ＤＬＴは、シーケンスパラメータセット（ＳＰＳ）および／またはビデオパラメータセット（ＶＰＳ）においてコーディングされる。エンコーダ２０がＤＬＴをコーディングするために、有効な深度値の数が指数ゴロムコードによってまずコーディングされる。次いで、各々の有効な深度値も、指数ゴロムコードによってコーディングされ得る。
【０１０１】
[0105]ビデオエンコーダ２０は、コーディングされるべき入力ビデオシーケンスから事前に定義された数のフレームを読み取り、利用可能な深度マップ値のためにすべてのサンプルを走査する。この処理の間、エンコーダ２０は、元の圧縮されていない深度マップに基づいて深度値を有効な深度値にマッピングする、マッピングテーブルを生成する。
【０１０２】
[0106]エンコーダ２０および／またはデコーダ３０は、深度参照テーブルＩｄｘ２Ｄｅｐｔｈ（．）と、インデックス参照テーブルＤｅｐｔｈ２Ｉｄｘ（．）と、深度マッピングテーブルＭ（．）と、有効な深度値の数ｄvalidとを、深度マップＤtを分析する以下のアルゴリズムを使用して導出する。
１．  初期化
すべての深度値ｄに対して、ブーリアンベクトルＢ（ｄ）＝ＦＡＬＳＥ
インデックスカウンタｉ＝０
２．  複数の時間インスタンスｔに対してＤtの中の各ピクセル位置ｐを処理する：
有効な深度値に印を付けるためにＢ（Ｄt（ｐ））＝ＴＲＵＥと設定する
３．  Ｂ（ｄ）→ｄvalidまでのＴＲＵＥ値の数を数える
４．  Ｂ（ｄ）＝＝ＴＲＵＥである各ｄに対して、
Ｉｄｘ２Ｄｅｐｔｈ（ｉ）＝ｄと設定する
Ｍ（ｄ）＝ｄに設定する
Ｄｅｐｔｈ２Ｉｄｘ（ｄ）＝ｉと設定する
ｉ＝ｉ＋１
５．  Ｂ（ｄ）＝＝ＦＡＬＳＥである各ｄに対して、
ｄ’＝ａｒｇ  ｍｉｎ｜ｄ−ｄ’｜およびＢ（ｄ’）＝＝ＴＲＵＥであるｄ’を見つける
Ｍ（ｄ）＝ｄ’と設定する
Ｄｅｐｔｈ２Ｉｄｘ（ｄ）＝Ｄｅｐｔｈ２Ｉｄｘ（ｄ’）と設定する
【０１０３】
[0107]インデックスＩｄｘから深度値ｄへのマッピングは、次のようなもの、すなわちｄ＝Ｉｄｘ２Ｄｅｐｔｈ［Ｉｄｘ］である。深度値ｄからインデックスＩｄｘへのマッピングは、次のようなもの、すなわちＩｄｘ＝Ｄｅｐｔｈ２Ｉｄｘ［ｄ］である。
【０１０４】
[0108]イントラＳＤＣモード（すなわち、イントラセグメントごとのＤＣコーディング、またイントラ簡易深度コーディングとも呼ばれ得る）が、深度スライスのイントラＰＵをコーディングするために、ＨＥＶＣイントラ予測モード、ＤＭＭモード、およびチェーンコーディングモードとともに３Ｄ−ＨＥＶＣに導入されている。現在の３Ｄ−ＨＥＶＣでは、ＳＤＣは、２Ｎｘ２ＮのＰＵ区分サイズだけに対して適用される。量子化された変換係数をコーディングする代わりに、ＳＤＣモードは、以下の２つのタイプの情報によって深度ブロックを表す。
１．  以下のものを含む、現在の深度ブロックの区分タイプ：
ａ．ＤＭＭモード１（２つの区分）
ｂ．プレーナ（１つの区分）
２．  各区分に対して、残差値（ピクセル領域中の）がビットストリームにおいてシグナリングされる。
それぞれプレーナおよびＤＭＭモード１の区分タイプに対応するＳＤＣモード１とＳＤＣモード２とを含む、２つのサブモードがＳＤＣにおいて定義される。ＤＣ残差値は、深度ＰＵ区分のＤＣ値および深度ＰＵ区分に対する予測される区分のＤＣ値の差分を示すデルタＤＣ値として表され得る。さらに、ＤＣ値は、深度ＰＵ区分における深度ピクセルサンプルの平均ピクセル値であり得る。
【０１０５】
[0109]簡易残差コーディングがイントラＳＤＣにおいて使用される。上で説明されたような簡易残差コーディングでは、ＰＵの各区分に対して１つのＤＣ残差値がシグナリングされ、変換または量子化は適用されない。上で論じられたような、各区分のＤＣ残差値を表す情報をシグナリングするために、２つの方法が適用され得る。
１．  現在のＰＵ中の現在の区分のＤＣ値（すなわち、Ａｖｅｒによって示される平均値）から、隣接サンプルによって生成されるＰｒｅｄにより示される予測子を差し引くことによって計算される、各区分のＤＣ残差値を直接コーディングする。
２．  ＤＬＴが送信されるとき、ＤＣ残差値をコーディングする代わりに、インデックス参照テーブルからマッピングされるＡｖｅｒおよびＰｒｅｄのインデックスの差分がコーディングされる。インデックス差分は、ＡｖｅｒのインデックスからＰｒｅｄのインデックスを差し引くことによって計算される。デコーダ側において、復号されたインデックス差分とＰｒｅｄのインデックスとの合計が、ＤＬＴに基づいて深度値にマッピングし返される。
【０１０６】
[0110]３Ｄ−ＨＥＶＣにおけるインター予測のために、セグメントごとのＤＣコーディング（ＳＤＣ）も提案されている。特に、ＳＤＣの基本的な考え方がインター予測モード深度コーディングに拡張される。インターＳＤＣでは、インター予測モードにおいてコーディングされる深度ＰＵに対して、１つだけのＤＣ残差値、すなわち、デルタＤＣが符号化される。変換および量子化はスキップされ、変換木のような追加の残差がコーディングユニット（ＣＵ）に必要とされない。したがって、ＳＤＣは、それによってイントラモードまたはインターモードにおいて深度ＰＵに対する１つだけのＤＣ残差値をエンコーダ２０が符号化し、および／またはビデオデコーダ３０が復号する、代替的な残差コーディング方法を提供する。
【０１０７】
[0111]図５は、３Ｄ−ＨＥＶＣのような３Ｄコーディング処理における、デルタＤＣ残差値を表すために使用される１つまたは複数のシンタックス要素のエントロピーコーディングの複雑性を低減するための修正されたバイナリ化および／またはコンテキストモデリング処理の使用など、本開示の技法を実装するように構成され得る例示的なビデオエンコーダ２０を示すブロック図である。いくつかの例では、ビデオエンコーダ２０は、コンテキストモデルを使用してコーディングされる低減された数のビンを伴うデルタＤＣ残差値を表すシンタックス要素のエントロピー符号化を実行するように構成され得る。コンテキストモデルを使用してコーディングされるビンの数を低減することで、ビデオエンコーダ２０のエントロピーコーダにおけるスループットの増大を促進することができる。
【０１０８】
[0112]本開示は、ＨＥＶＣコーディング、より具体的には、たとえば、３Ｄ−ＨＥＶＣ  ＷＤにおいて説明され、本開示において説明されるようにさらに修正される、３Ｄ−ＨＥＶＣコーディングの文脈においてビデオエンコーダ２０を説明する。しかしながら、本開示の技法は他のコーディング規格または方法に適用可能であり得る。したがって、図５は、説明の目的で与えられており、本開示において広く例示され、説明される技法を限定するものと見なされるべきではない。
【０１０９】
[0113]図５の例において、ビデオエンコーダ２０は、予測処理ユニット１００と、残差生成ユニット１０２と、変換処理ユニット１０４と、量子化ユニット１０６と、逆量子化ユニット１０８と、逆変換処理ユニット１１０と、再構築ユニット１１２と、フィルタユニット１１４と、復号ピクチャバッファ１１６と、エントロピー符号化ユニット１１８とを含む。予測処理ユニット１００は、インター予測処理ユニット１２０と、イントラ予測処理ユニット１２６とを含む。インター予測処理ユニット１２０は、動き推定（ＭＥ）ユニット１２２と、動き補償（ＭＣ）ユニット１２４とを含む。
【０１１０】
[0114]予測処理ユニット１００のコンポーネントは、テクスチャ符号化と深度符号化の両方を実行するものとして説明されている。いくつかの例では、テクスチャ符号化および深度符号化は、予測処理ユニット１００の同じコンポーネントまたは予測処理ユニット１００内の異なるコンポーネントによって実行され得る。たとえば、いくつかの実装形態では、別々のテクスチャエンコーダおよび深度エンコーダが提供され得る。また、複数のテクスチャエンコーダおよび深度エンコーダが、たとえばマルチビュープラス深度コーディングに対して、複数のビューを符号化するために提供され得る。
【０１１１】
[0115]いずれの場合でも、予測処理ユニット１００は、３Ｄ−ＨＥＶＣ処理のような３Ｄコーディング処理の一部として、テクスチャデータと深度データとをイントラ符号化またはインター符号化するように構成され得る。特に、いくつかのモードでは、予測処理ユニット１００は、非ＳＤＣ残差コーディングまたはＳＤＣコーディングを使用することができる。ＳＤＣコーディングまたはＤＭＭコーディングの場合、予測処理ユニット１００は、イントラコーディングまたはインターコーディングされた深度ＰＵに対するデルタＤＣ残差値を生成することができ、デルタＤＣ残差値は、ＰＵまたはコーディングされたＰＵの区分におけるピクセルの平均値と、イントラ予測またはインター予測されるＰＵ区分における予測されるサンプルの平均値との間の差分を表す。ＰＵは、コーディングモードに応じて、単一の区分または複数の区分を有し得る。ＨＥＶＣイントラモード、ＨＥＶＣインターモード、ＤＭＭのモードまたは他のモードが、ＰＵをコーディングするために使用され得る。
【０１１２】
[0116]いくつかの例では、予測処理ユニット１００は、追加のコーディングモードを使用することに関するもののような、または、たとえば、ＳＤＣもしくはＤＭＭが使用されるときに、デルタＤＣ残差値を表すために使用される１つもしくは複数のシンタックス要素のエントロピーコーディングの複雑性を低減するための修正されたバイナリ化および／もしくはコンテキストモデリング処理に関するもののような、本開示で説明される修正および／または追加を受けて、たとえば、３Ｄ−ＨＥＶＣ  ＷＤに説明されているように、実質的に３Ｄ−ＨＥＶＣに従って動作することができる。いくつかの例では、ビデオエンコーダ２０は、図５に示されるものよりも多数の、少数の、または図５に示されるものとは異なる機能コンポーネントを含み得る。予測処理ユニット１００は、エントロピー符号化ユニット１１８にシンタックス情報を提供することができる。シンタックス情報は、たとえば、どの予測モードが使用されたかと、インター予測の場合の動きベクトル、予測方向、および参照ピクチャインデックスなど、そのようなモードに関係する情報とを示し得る。
【０１１３】
[0117]ビデオエンコーダ２０は符号化されるべきビデオデータを受信する。ビデオエンコーダ２０は、ビデオデータのピクチャのスライスの中の複数のコーディングツリーユニット（ＣＴＵ）の各々を符号化することができる。ＣＴＵの各々は、等しいサイズのルーマコーディングツリーブロック（ＣＴＢ）およびピクチャの対応するクロマＣＴＢと関連付けられ得る。ＣＴＵを符号化することの一部として、予測処理ユニット１００は、ＣＴＵのＣＴＢを徐々により小さくなるブロックに分割するために、4分木分割を実行することができる。より小さいブロックは、ＣＵのコーディングブロックであり得る。たとえば、予測処理ユニット１００は、ＣＴＵと関連付けられたＣＴＢを４つの等しいサイズのサブブロックに区分することができ、サブブロックの１つまたは複数を４つの等しいサイズのサブサブブロックに区分することができ、以下同様である。
【０１１４】
[0118]ビデオエンコーダ２０は、ＣＵの符号化された表現（すなわち、コーディングされたＣＵ）を生成するために、ＣＴＢのＣＵを符号化することができる。ＣＵを符号化することの一部として、予測処理ユニット１００は、ＣＵの１つまたは複数のＰＵの間で、ＣＵと関連付けられたコーディングブロックを区分することができる。したがって、各ＰＵは、ルーマ予測ブロックおよび対応するクロマ予測ブロックと関連付けられ得る。
【０１１５】
[0119]ビデオエンコーダ２０およびビデオデコーダ３０は、様々なサイズを有するＰＵをサポートすることができる。上で示されたように、ＣＵのサイズはＣＵのルーマコーディングブロックのサイズを指すことがあり、ＰＵのサイズはＰＵのルーマ予測ブロックのサイズを指すことがある。特定のＣＵのサイズを２Ｎｘ２Ｎと仮定すると、ビデオエンコーダ２０およびビデオデコーダ３０は、イントラ予測の場合は２Ｎｘ２ＮまたはＮｘＮのＰＵサイズをサポートすることができ、インター予測の場合は２Ｎｘ２Ｎ、２ＮｘＮ、Ｎｘ２Ｎ、ＮｘＮ、または同様の対称のＰＵサイズをサポートすることができる。ビデオエンコーダ２０およびビデオデコーダ３０はまた、インター予測のための２ＮｘｎＵ、２ＮｘｎＤ、ｎＬｘ２Ｎ、およびｎＲｘ２ＮのＰＵサイズについて非対称区分をサポートすることができる。本開示の態様によれば、ビデオエンコーダ２０およびビデオデコーダ３０はまた、深度インターコーディングのためのＰＵの非方形区分をサポートする。
【０１１６】
[0120]インター予測処理ユニット１２０は、ＣＵの各ＰＵに対してインター予測を実行することによって、ＰＵのための予測データを生成することができる。ＰＵの予測データは、ＰＵの予測サンプルブロックと、ＰＵの動き情報とを含み得る。インター予測処理ユニット１２０は、ＰＵがＩスライス中にあるか、Ｐスライス中にあるか、またはＢスライス中にあるかに応じて、ＣＵのＰＵに対して異なる動作を実行することができる。Ｉスライスでは、すべてのＰＵがイントラ予測される。したがって、ＰＵがＩスライス中にある場合、インター予測処理ユニット１２０はＰＵに対してインター予測を実行しない。したがって、Ｉモードで符号化されるブロックでは、予測されるブロックは、同じフレーム内の以前に符号化された隣接ブロックからの空間的予測を使用して形成される。
【０１１７】
[0121]ＰＵがＰスライス中にある場合、動き推定（ＭＥ）ユニット１２２は、ＰＵのための参照領域について参照ピクチャのリスト（たとえば、「ＲｅｆＰｉｃＬｉｓｔ０」）中の参照ピクチャを探索することができる。参照ピクチャは、復号ピクチャバッファ１１６に記憶され得る。ＰＵの参照領域は、ＰＵのサンプルブロックに最も密接に対応するサンプルブロックを含む参照ピクチャ内の領域であり得る。動き推定（ＭＥ）ユニット１２２は、ＰＵの参照領域を含む参照ピクチャのＲｅｆＰｉｃＬｉｓｔ０中の位置を示す参照インデックスを生成することができる。
【０１１８】
[0122]加えて、インターコーディングのために、動き推定（ＭＥ）ユニット１２２は、ＰＵのコーディングブロックと、参照領域と関連付けられる参照位置との間の空間変位を示す動きベクトル（ＭＶ）を生成することができる。たとえば、ＭＶは、現在の復号されたピクチャ中の座標から参照ピクチャ中の座標までのオフセットを提供する２次元ベクトルであり得る。動き推定（ＭＥ）ユニット１２２は、ＰＵの動き情報として参照インデックスとＭＶとを出力することができる。動き補償（ＭＣ）ユニット１２４は、ＰＵの動きベクトルによって示された参照位置における実際のまたは補間されたサンプルに基づいて、ＰＵの予測サンプルブロックを生成することができる。
【０１１９】
[0123]ＰＵがＢスライス中にある場合、動き推定ユニット１２２は、ＰＵのために単予測または双予測を実行することができる。ＰＵのための単予測を実行するために、動き推定ユニット１２２は、ＰＵのための参照領域についてＲｅｆＰｉｃＬｉｓｔ０または第２の参照ピクチャリスト（「ＲｅｆＰｉｃＬｉｓｔ１」）の参照ピクチャを探索することができる。動き推定（ＭＥ）ユニット１２２は、ＰＵの動き情報として、参照領域を含む参照ピクチャのＲｅｆＰｉｃＬｉｓｔ０またはＲｅｆＰｉｃＬｉｓｔ１中の位置を示す参照インデックスと、ＰＵのサンプルブロックと参照領域と関連付けられる参照位置との間の空間変位を示すＭＶと、参照ピクチャがＲｅｆＰｉｃＬｉｓｔ０中にあるかＲｅｆＰｉｃＬｉｓｔ１中にあるかを示す１つまたは複数の予測方向インジケータとを出力することができる。動き補償（ＭＣ）ユニット１２４は、ＰＵの動きベクトルによって示される参照領域における実際のサンプルまたは補間されたサンプルに少なくとも部分的に基づいて、ＰＵの予測サンプルブロックを生成することができる。
【０１２０】
[0124]ＰＵのための双方向インター予測を実行するために、動き推定ユニット１２２は、ＰＵの参照領域についてＲｅｆＰｉｃＬｉｓｔ０中の参照ピクチャを探索することができ、また、ＰＵの別の参照領域についてＲｅｆＰｉｃＬｉｓｔ１中の参照ピクチャを探索することができる。動き推定（ＭＥ）ユニット１２２は、参照領域を含む参照ピクチャのＲｅｆＰｉｃＬｉｓｔ０およびＲｅｆＰｉｃＬｉｓｔ１中での位置を示す参照ピクチャインデックスを生成することができる。加えて、動き推定（ＭＥ）ユニット１２２は、参照領域と関連付けられる参照位置とＰＵのサンプルブロックとの間の空間変位を示すＭＶを生成することができる。ＰＵの動き情報は、ＰＵの参照インデックスとＭＶとを含み得る。動き補償（ＭＣ）ユニット１２４は、ＰＵの動きベクトルによって示される参照領域における実際のサンプルまたは補間されたサンプルに少なくとも部分的に基づいて、ＰＵの予測サンプルブロックを生成することができる。
【０１２１】
[0125]イントラ予測処理ユニット１２６は、ＰＵに対してイントラ予測を実行することによって、ＰＵのための予測データを生成することができる。ＰＵのためのイントラ予測データは、ＰＵのための予測サンプルブロックと様々なシンタックス要素とを含み得る。イントラ予測処理ユニット１２６は、Ｉスライス、Ｐスライス、およびＢスライス中のＰＵに対してイントラ予測を実行することができる。ＰＵに対してイントラ予測を実行するために、イントラ予測処理ユニット１２６は、複数のイントラ予測モードを使用してＰＵのための予測データの複数のセットを生成し、次いで、たとえばレート歪み最適化技法を使用して、受け入れ可能な、または最適なコーディング性能を生み出すイントラ予測モードの１つを選択することができる。
【０１２２】
[0126]イントラ予測モードを使用してＰＵのための予測データのセットを生成するために、イントラ予測処理ユニット１２６は、そのイントラ予測モードと関連付けられた方向へ、ＰＵのサンプルブロック全体にわたって、空間的に隣接するＰＵのサンプルブロックからのサンプルを延ばすことができる。隣接ＰＵは、ＰＵ、ＣＵ、およびＣＴＵについて左から右、上から下の符号化順序を仮定すると、ＰＵの上、右上、左上、または左にあり得る。イントラ予測処理ユニット１２６は、様々な数のイントラ予測モード、たとえば、図１に示されるように、３３個の方向性イントラ予測モードを使用することができる。いくつかの例では、イントラ予測モードの数はＰＵと関連付けられた領域のサイズに依存し得る。
【０１２３】
[0127]予測処理ユニット１００は、ＰＵについてインター予測処理ユニット１２０によって生成された予測データ、またはＰＵについてイントラ予測処理ユニット１２６によって生成された予測データの中から、ＣＵのＰＵのための予測データを選択することができる。いくつかの例では、予測処理ユニット１００は、予測データのセットのレート／歪みの尺度に基づいて、ＣＵのＰＵのための予測データを選択する。選択された予測データの予測サンプルブロックは、本明細書では、選択された予測サンプルブロックと呼ばれ得る。
【０１２４】
[0128]残差生成ユニット１０２は、ＣＵのルーマコーディングブロック、Ｃｂコーディングブロック、およびＣｒコーディングブロック、ならびにＣＵのＰＵの選択されたインター予測またはイントラ予測ルーマブロック、インター予測またはイントラ予測Ｃｂブロック、およびインター予測またはイントラ予測Ｃｒブロックに基づいて、ＣＵのルーマ残差ブロックと、Ｃｂ残差ブロックと、Ｃｒ残差ブロックとを生成することができる。たとえば、残差生成ユニット１０２は、残差ブロック中の各サンプルがＣＵのコーディングブロック中のサンプルとＣＵのＰＵの対応する選択された予測サンプルブロック中の対応するサンプル（すなわち、適用可能な場合、ルーマピクセル値またはクロマピクセル値のサンプル）との間の差に等しい値を有するように、ＣＵの残差ブロックを生成することができる。
【０１２５】
[0129]変換処理ユニット１０４は、ＣＵと関連付けられる残差ブロックをＣＵのＴＵと関連付けられる変換ブロックに区分するために、4分木分割を実行することができる。したがって、ＴＵは、ルーマ変換ブロックおよび２つのクロマ変換ブロックと関連付けられ得る。ＣＵのＴＵのルーマ変換ブロックおよびクロマ変換ブロックのサイズおよび位置は、ＣＵのＰＵの予測ブロックのサイズおよび位置に基づくことも基づかないこともある。「残差４分木」（ＲＱＴ）として知られる４分木構造は、領域の各々に関連付けられたノードを含み得る。ＣＵのＴＵは、ＲＱＴのリーフノードに対応し得る。
【０１２６】
[0130]変換処理ユニット１０４は、ＴＵの変換ブロックに１つまたは複数の変換を適用することによって、ＣＵの各ＴＵに対して変換係数ブロックを生成することができる。変換処理ユニット１０４は、ＴＵと関連付けられた変換ブロックに様々な変換を適用することができる。たとえば、変換処理ユニット１０４は、離散コサイン変換（ＤＣＴ）、方向性変換、または概念的に同様の変換を変換ブロックに適用することができる。いくつかの例では、変換処理ユニット１０４は変換ブロックに変換を適用しない。そのような例では、変換ブロックは変換係数ブロックとして扱われ得る。
【０１２７】
[0131]量子化ユニット１０６は、係数ブロック中の変換係数を量子化することができる。量子化処理は、変換係数の一部またはすべてと関連付けられるビット深度を低減することができる。たとえば、量子化の間にｎビット変換係数がｍビット変換係数へと切り捨てられてよく、この場合、ｎはｍよりも大きい。量子化ユニット１０６は、ＣＵと関連付けられた量子化パラメータ（ＱＰ）値に基づいてＣＵのＴＵと関連付けられた係数ブロックを量子化することができる。ビデオエンコーダ２０は、ＣＵと関連付けられたＱＰ値を調整することによって、ＣＵと関連付けられた係数ブロックに適用される量子化の程度を調整することができる。量子化は情報の損失をもたらすことがあり、したがって、量子化された変換係数は、元の係数よりも低い精度を有することがある。
【０１２８】
[0132]逆量子化ユニット１０８および逆変換処理ユニット１１０は、係数ブロックから残差ブロックを再構築するために、それぞれ、係数ブロックに逆量子化と逆変換とを適用することができる。再構築ユニット１１２は、再構築された残差ブロックを、予測処理ユニット１００によって生成された１つまたは複数の予測サンプルブロックからの対応するサンプルに追加して、ＴＵと関連付けられる再構築された変換ブロックを生成することができる。ビデオエンコーダ２０は、このようにＣＵの各ＴＵのための変換ブロックを再構築することによって、ＣＵのコーディングブロックを再構築することができる。
【０１２９】
[0133]ＨＥＶＣイントラモード、ＨＥＶＣインターモードおよび他のモード、たとえばＤＭＭモードの場合、予測されるＰＵまたはＰＵ区分に対して、ＤＣ残差値とも呼ばれるデルタＤＣ残差値を生成するために、デルタＤＣコーディングが使用され得る。ＳＤＣの場合、またはＳＤＣを伴うＤＭＭの場合、残差生成ユニット１０２は、各深度ＰＵまたはＰＵ区分に対する単一のデルタＤＣ値を生成することができ、単一のデルタＤＣ値は、ＰＵまたはＰＵ区分におけるピクセルの平均値と、イントラ予測またはインター予測されるＰＵまたはＰＵ区分における予測されるサンプルの平均値との間の差分を表す。ＳＤＣを伴わないＤＭＭの場合、残差生成ユニット１０２は、デルタＤＣ値と通常の残差木とを生成することができる。デルタＤＣ残差値は、変換または量子化されず、線１１５によって示されるように、残差生成ユニット１０２によってエントロピーコーディングユニット１１８に提供され得る。
【０１３０】
[0134]再構築ユニット１１２は、深度ＣＵを、ＣＵのＰＵの区分およびＣＵのＰＵの対応する予測される区分に対するＤＣ残差値に基づいて再構築することができる。たとえば、各深度ＰＵ区分に対するデルタＤＣ残差値が、深度ＰＵ区分を再構築するために、対応する予測される区分のピクセル値に加算され得、ここにおいて、ＤＣ残差値は、深度ＰＵ区分のピクセルの平均値と予測される区分の予測されるサンプルの平均値との間の差分を表し得る。ＳＤＣに関して、ＳＤＣを伴うＤＭＭを含め、ＤＣ残差値だけが使用される。ＤＭＭに関して、ＳＤＣを伴わず、ＤＣ残差値および残差木が使用され得る。いくつかの例では、デルタＤＣ値を表す１つまたは複数のシンタックス要素のような、ＤＣ残差値を表す情報が、予測処理ユニット１００によって生成され、エントロピー符号化ユニット１１８によって受信され、たとえば線１１５によって示されるように、逆量子化または逆変換処理を伴わずに再構築ユニット１１２によって使用され得る。
【０１３１】
[0135]フィルタユニット１１４は、１つまたは複数のデブロッキング動作を実行して、再構築されたＣＵと関連付けられたコーディングブロック中のブロッキングアーティファクトを低減することができる。復号ピクチャバッファ１１６は、フィルタユニット１１４が、再構築されたコーディングブロックに対して１つまたは複数のデブロッキング動作を実行した後、再構築されたコーディングブロックを記憶することができる。インター予測ユニット１２０は、再構築されたコーディングブロックを含む参照ピクチャを使用して、他のピクチャのＰＵに対してインター予測を実行することができる。加えて、イントラ予測処理ユニット１２６は、ＣＵと同じピクチャ中の他のＰＵに対してイントラ予測を実行するために、復号ピクチャバッファ１１６中の再構築されたコーディングブロックを使用することができる。
【０１３２】
[0136]エントロピー符号化ユニット１１８は、ビデオエンコーダ２０の様々な機能コンポーネントからデータを受信し得る。たとえば、エントロピー符号化ユニット１１８は、量子化ユニット１０６から係数ブロックを受信し得、予測処理ユニット１００からシンタックス要素を受信し得る。加えて、エントロピー符号化ユニット１１８は、残差生成ユニット１０２からデルタＤＣ残差値を受信し得る。エントロピー符号化ユニット１１８は、エントロピー符号化されたデータを生成するために、データに対して１つまたは複数のエントロピー符号化動作を実行し得る。たとえば、エントロピー符号化ユニット１１８は、ＣＡＢＡＣ演算を実行し得る。他のエントロピーコーディング処理の例としては、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ）、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ）、および確率間隔区分エントロピー（ＰＩＰＥ）コーディングがある。ＨＥＶＣでは、ＣＡＢＡＣが使用される。ビデオエンコーダ２０は、エントロピー符号化ユニット１１８によって生成されたエントロピー符号化されたデータを含むビットストリームを出力し得る。たとえば、ビットストリームは、バイナリシンタックス要素またはバイナリ化されたシンタックス要素のビンを表すビットを含み得る。
【０１３３】
[0137]ビデオエンコーダ２０は、本開示で説明される技法のいずれかを実行するように構成されるビデオエンコーダの例である。追加の３Ｄ処理コンポーネントもビデオエンコーダ２０内に含まれ得る。本開示の１つまたは複数の技法によれば、ビデオエンコーダ２０内の１つまたは複数のユニットは、ビデオ符号化処理の一部として、本明細書で説明される技法を実行し得る。同様に、ビデオエンコーダ２０は、後でコーディングされるビデオデータの予測のための参照データとして使用されるビデオデータを再構築するために、ビデオ復号処理を実行し得る。エントロピー符号化ユニット１１８は、デルタＤＣ残差値を表すために使用される１つまたは複数のシンタックス要素のエントロピーコーディングの複雑性を低減するために、修正されたバイナリ化および／またはコンテキストモデリング処理を使用するように構成され得る。
【０１３４】
[0138]いくつかの例では、エントロピーコーディングユニット１１８は、１つまたは複数のコンテキストモデルを使用して、デルタＤＣ残差値を表すシンタックス要素に関するＮ個以下の先行ビンを符号化し、ここにおいて、Ｎは、バイナリ化されたシンタックス要素に関するビンの最大可能数よりも小さく、１つまたは複数のコンテキストモデルを使用して復号されなかったシンタックス要素に関する残存ビンをバイパス符号化するように構成され得る。たとえば、エントロピーコーディングユニット１１８は、デルタＤＣシンタックス要素に関するＮ個以下の先行ビンを符号化するためにＣＡＢＡＣエントロピーコーダの正規コーディングエンジンを使用し、デルタＤＣシンタックス要素に関する残存ビンを符号化するためにＣＡＢＡＣエントロピーコーダのバイパスコーディングエンジンを使用し得る。このようにして、エントロピー符号化ユニット１１８は、デルタＤＣシンタックス要素のエントロピーコーディングを簡易化し得る。
【０１３５】
[0139]図６は、本開示の技法を実行するように構成された例示的なビデオデコーダ３０を示すブロック図である。図６は、例示の目的で与えられており、本開示において広く例示され、説明される技法を限定するものと見なされるべきではない。本開示は、ＨＥＶＣコーディング、特に３Ｄ−ＨＥＶＣの文脈においてビデオデコーダ３０を説明する。しかしながら、本開示の技法は他の３Ｄビデオコーディング規格または方法に適用可能であり得る。ビデオデコーダ３０は、３Ｄ−ＨＥＶＣのような３Ｄコーディング処理における、デルタＤＣ残差値を表すために使用される１つまたは複数のシンタックス要素のエントロピーコーディングの複雑性を低減するために、修正されたバイナリ化および／またはコンテキストモデリング処理を使用するように構成され得る。いくつかの例では、ビデオエンコーダ２０は、コンテキストモデルを使用してコーディングされる低減された数のビンを伴うデルタＤＣ残差値を表すシンタックス要素のエントロピー復号を実行するように構成され得る。コンテキストモデルを使用してコーディングされるビンの数を低減することで、ビデオエンコーダ２０のエントロピーデコーダにおけるスループットの増大を促進し得る。
【０１３６】
[0140]図６の例では、ビデオデコーダ３０は、エントロピー復号ユニット１５０と、予測処理ユニット１５２と、逆量子化ユニット１５４と、逆変換処理ユニット１５６と、再構築ユニット１５８と、フィルタユニット１６０と、復号ピクチャバッファ１６２とを含む。予測処理ユニット１５２は、インター予測のための動き補償（ＭＣ）ユニット１６４と、イントラ予測処理ユニット１６６とを含む。例示を簡単にするために、予測処理ユニット１５２のコンポーネントは、テクスチャ復号と深度復号の両方を実行するものとして説明されている。いくつかの例では、テクスチャ復号および深度復号は、予測処理ユニット１５２の同じコンポーネントまたは予測処理ユニット１５２内の異なるコンポーネントによって実行され得る。たとえば、いくつかの実装形態では、別々のテクスチャデコーダおよび深度デコーダが提供され得る。また、複数のテクスチャデコーダおよび深度デコーダが、たとえばマルチビュープラス深度コーディングに対して、複数のビューを復号するために提供され得る。いずれの場合でも、予測処理ユニット１５２は、３Ｄ−ＨＥＶＣ処理のような３Ｄコーディング処理の一部として、テクスチャデータと深度データとをイントラ復号またはインター復号するように構成され得る。
【０１３７】
[0141]したがって、予測処理ユニット１５２は、ＳＤＣに関係するシンタックス要素のエントロピーコーディングに関するもののような、本開示で説明される修正および／または追加を受けて、実質的に３Ｄ−ＨＥＶＣに従って動作することができる。予測処理ユニット１５２は、エントロピー復号ユニット１５０を介して、ＳＤＣまたは非ＳＤＣ残差コーディング技法を使用して、イントラ復号またはインター復号された深度データのために、符号化されたビデオビットストリームから残差データを取得し、イントラ予測またはインター予測された深度データと残差データとを使用してＣＵを再構築することができる。残差データはデルタＤＣ残差値であり得、たとえば、ＳＤＣコーディングまたはＤＭＭコーディングによって生成され得る。いくつかの例では、ビデオデコーダ３０は、図６に示されるものよりも多数の、少数の、または図６に示されるものとは異なる機能コンポーネントを含み得る。
【０１３８】
[0142]ビデオデコーダ３０は、符号化されたビデオビットストリームを受信する。エントロピー復号ユニット１５０は、ビットストリームからエントロピー符号化されたシンタックス要素を復号するために、ビットストリームを解析する。いくつかの例では、エントロピー復号ユニット１１８は、１つまたは複数のコンテキストモデルを使用して、デルタＤＣ残差値を表すシンタックス要素に関するＮ個以下の先行ビンを、ビットストリーム中のビットから復号し、ここにおいて、Ｎは、バイナリ化されたシンタックス要素に関するビンの最大可能数よりも小さく、１つまたは複数のコンテキストモデルを使用して復号されなかったシンタックス要素に関する残存ビンをバイパス復号するように構成され得る。たとえば、エントロピー復号ユニット１５０は、デルタＤＣシンタックス要素に関するＮ個以下の先行ビンを復号するためにＣＡＢＡＣエントロピーコーダの正規復号エンジンを使用し、デルタＤＣシンタックス要素に関する残存ビンを復号するためにＣＡＢＡＣエントロピーコーダのバイパスコーディングエンジンを使用し得る。このようにして、エントロピー復号ユニット１５０は、デルタＤＣシンタックス要素のエントロピー復号を簡易化し得る。
【０１３９】
[0143]予測処理ユニット１５２、逆量子化ユニット１５４、逆変換処理ユニット１５６、再構築ユニット１５８、およびフィルタユニット１６０は、ビットストリームから抽出されたシンタックス要素に基づいて、復号されたビデオデータを生成することができる。ビットストリームは、一連のＮＡＬユニットを備え得る。ビットストリームのＮＡＬユニットは、コーディングされたスライスＮＡＬユニットを含み得る。ビットストリームを復号することの一部として、エントロピー復号ユニット１５０は、コーディングされたスライスＮＡＬユニットからシンタックス要素を抽出し、エントロピー復号し得る。
【０１４０】
[0144]コーディングされたスライスの各々は、スライスヘッダと、スライスデータとを含み得る。スライスヘッダは、スライスに関するシンタックス要素を含み得る。スライスヘッダ中のシンタックス要素は、スライスを含むピクチャと関連付けられたＰＰＳを特定するシンタックス要素を含み得る。ＰＰＳはＳＰＳを参照することができ、ＳＰＳは次いでＶＰＳを参照することができる。エントロピー復号ユニット１５０はまた、ＳＥＩメッセージのようなシンタックス情報を含み得る他の要素をエントロピー復号し得る。スライスヘッダ、パラメータセット、またはＳＥＩメッセージのいずれかの中の復号されたシンタックス要素は、本開示で説明される例示的な技法に従ってシグナリングされるものとして本明細書で説明される情報を含み得る。そのようなシンタックス情報はテクスチャまたは深度ブロックの復号および再構築のために、予測処理ユニット１５２に提供され得る。
【０１４１】
[0145]ビデオデコーダ３０は、区分されていないＣＵおよびＰＵに対して再構築動作を実行することができる。再構築動作を実行するために、非ＳＤＣコーディングの場合、ビデオデコーダ３０は、ＣＵの各ＴＵに対して再構築動作を実行することができる。ＣＵの各ＴＵに対して再構築動作を実行することによって、ビデオデコーダ３０は、ＣＵのブロックを再構築し得る。ＣＵのＴＵに対して再構築動作を実行することの一部として、逆量子化ユニット１５４は、ＴＵと関連付けられる係数ブロックを逆量子化（ｉｎｖｅｒｓｅ  ｑｕａｎｔｉｚｅ）、すなわち逆量子化（ｄｅ−ｑｕａｎｔｉｚｅ）し得る。逆量子化ユニット１５４は、量子化の程度と、同様に、逆量子化ユニット１５４が適用するための逆量子化の程度とを決定するために、ＴＵのＣＵと関連付けられるＱＰの値を使用し得る。すなわち、圧縮比、すなわち、元のシーケンスと圧縮されたシーケンスとを表すために使用されるビット数の比は、変換係数を量子化するときに使用されるＱＰの値を調整することによって制御され得る。圧縮比は、利用されるエントロピーコーディングの方法に依存し得る。
【０１４２】
[0146]逆量子化ユニット１５４が係数ブロックを逆量子化した後、逆変換処理ユニット１５６は、ＴＵと関連付けられる残差ブロックを生成するために、係数ブロックに１つまたは複数の逆変換を適用し得る。たとえば、逆変換処理ユニット１５６は、逆ＤＣＴ、逆整数変換、逆カルーネンレーベ変換（ＫＬＴ）、逆回転変換、逆方向性変換、または別の逆変換を、係数ブロックに適用し得る。
【０１４３】
[0147]イントラ予測を使用してＰＵが符号化される場合、イントラ予測処理ユニット１６６は、ＰＵの予測ブロックを生成するためにイントラ予測を実行し得る。イントラ予測処理ユニット１６６は、空間的に隣接するＰＵの予測ブロックに基づいて、ＰＵのための予測ルーマブロックと、予測Ｃｂブロックと、予測Ｃｒブロックとを生成するために、イントラ予測モードを使用し得る。イントラ予測処理ユニット１６６は、ビットストリームから復号された１つまたは複数のシンタックス要素に基づいて、ＰＵのためのイントラ予測モードを決定し得る。
【０１４４】
[0148]インター予測を使用してＰＵが符号化される場合、ＭＣユニット１６４は、ＰＵのインター予測ブロックを生成するためにイントラ予測を実行し得る。ＭＣユニット１６４は、他のピクチャまたはビューにおけるＰＵの予測ブロックに基づいて、ＰＵのための予測ルーマブロックと、予測Ｃｂブロックと、予測Ｃｒブロックとを生成するために、インター予測モードを使用し得る。ＭＣユニット１６４は、ビットストリームから復号された１つまたは複数のシンタックス要素に基づいて、ＰＵのためのインター予測モードを決定し得、動きベクトル、予測方向、および参照ピクチャインデックスなどの動き情報を受信し得る。
【０１４５】
[0149]インター予測に関して、ＭＣユニット１６４は、ビットストリームから抽出されたシンタックス要素に基づいて、第１の参照ピクチャリスト（ＲｅｆＰｉｃＬｉｓｔ０）と第２の参照ピクチャリスト（ＲｅｆＰｉｃＬｉｓｔ１）とを構築し得る。ＰＵがインター予測を使用して符号化される場合、エントロピー復号ユニット１５０は、ＰＵの動き情報を抽出し得る。ＭＣユニット１６４は、ＰＵの動き情報に基づいて、ＰＵのための１つまたは複数の参照ブロックを決定し得る。動き補償（ＭＣ）ユニット１６４は、ＰＵの１つまたは複数の参照ブロックにおけるブロック中のサンプルに基づいて、ＰＵの予測ルーマブロックと、予測Ｃｂブロックと、予測Ｃｒブロックとを生成し得る。
【０１４６】
[0150]再構築ユニット１５８は、ＣＵのＴＵと関連付けられたルーマ変換ブロック、Ｃｂ変換ブロック、およびＣｒ変換ブロック、ならびにＣＵのＰＵの予測ルーマブロック、予測Ｃｂブロック、および予測Ｃｒブロックを、すなわち、イントラ予測データまたはインター予測データのいずれかを適宜使用して、ＣＵのルーマコーディングブロックと、Ｃｂコーディングブロックと、Ｃｒコーディングブロックとを再構築し得る。たとえば、再構築ユニット１５８は、ルーマ変換ブロック、Ｃｂ変換ブロック、およびＣｒ変換ブロックの残差サンプルを予測ルーマブロック、予測Ｃｂブロック、および予測Ｃｒブロックの対応するサンプルに加算して、ＣＵのルーマコーディングブロックと、Ｃｂコーディングブロックと、Ｃｒコーディングブロックとを再構築し得る。
【０１４７】
[0151]フィルタユニット１６０は、デブロッキング動作を実行して、ＣＵのルーマコーディングブロック、Ｃｂコーディングブロック、およびＣｒコーディングブロックと関連付けられたブロッキングアーティファクトを低減し得る。ビデオデコーダ３０は、ＣＵのルーマコーディングブロックと、Ｃｂコーディングブロックと、Ｃｒコーディングブロックとを、復号ピクチャバッファ１６２に記憶し得る。復号ピクチャバッファ１６２は、後続の動き補償、イントラ予測、および図２のディスプレイデバイス３２のようなディスプレイデバイス上での提示のために、参照ピクチャを提供し得る。たとえば、ビデオデコーダ３０は、復号ピクチャバッファ１６２中のルーマブロック、Ｃｂブロック、およびＣｒブロックに基づいて、他のＣＵのＰＵに対してイントラ予測演算またはインター予測演算を実行し得る。
【０１４８】
[0152]ビデオデコーダ３０は、本明細書で説明されるように、デルタＤＣ残差値を表すために使用される１つまたは複数のシンタックス要素のエントロピーコーディングの複雑性を低減するために、修正されたバイナリ化および／またはコンテキストモデリング処理を使用するように構成される、ビデオデコーダの例である。本開示の１つまたは複数の技法によれば、ビデオデコーダ３０内の１つまたは複数のユニットは、ビデオ復号処理の一部として、本明細書で説明される１つまたは複数の技法を実行することができる。追加の３Ｄコーディングコンポーネントもビデオエンコーダ３０内に含まれ得る。
【０１４９】
[0153]予測処理ユニット１５２、より具体的にはイントラ予測処理ユニット１６６および動き補償（ＭＣ）ユニット１６４は適宜、３Ｄ−ＨＥＶＣのような３Ｄビデオコーディング処理の深度イントラ予測モードおよび深度インター予測モードにおいてＳＤＣまたはＤＭＭを実行するかどうかを、受信されたシンタックス情報に基づいて決定し得る。たとえば、ＳＤＣまたはＤＭＭが使用されるとき、エントロピー復号ユニット１５０は、深度ＣＵのＰＵまたはＰＵ区分に対する１つまたは複数のデルタＤＣ残差値、さらには関連付けられるシンタックス情報をエントロピー復号し得る。
【０１５０】
[0154]ＳＤＣの場合、エントロピー復号ユニット１５０は、図６において示されるように、ブロックのためのＳＤＣシンタックス情報を予測処理ユニット１５２に提供し得る。エントロピー復号ユニット１５０は、デルタＤＣ残差値を再構築ユニット１５８に提供し得る。ビデオデコーダ３０によって受信されたデルタＤＣ残差値は、変換および量子化されない。特に、デルタＤＣ残差値は、逆量子化および逆変換のために逆量子化ユニット１５４および逆変換処理ユニット１５６へ最初に提供されなくてよい。代わりに、エントロピー復号ユニット１５０は、デルタＤＣ残差値を表すシンタックス要素に関するビンを、ビットストリーム中のビットから復号し、デルタＤＣ残差値を表す情報を、コーディングされたＰＵまたは区分を再構築する際に使用するために再構築ユニット１５８に提供し得る。再構築ユニット１５８は、深度ＣＵのイントラ予測またはインター予測されるＰＵまたはＰＵ区分を予測処理ユニット１５２から受信し、コーディングされたＰＵまたはＰＵ区分を再構築するために、予測されるＰＵまたはＰＵ区分のサンプルの各々にデルタＤＣ残差値を加算し得る。
【０１５１】
[0155]このようにして、たとえば、ＳＤＣまたはＤＭＭが使用されるとき、再構築ユニット１５８は、深度ＣＵを、ＣＵのＰＵの区分およびＣＵの対応する予測されるＰＵまたはＰＵ区分に対するデルタＤＣ残差値に基づいて再構築し得る。さらに、デルタＤＣ残差値は、深度ＰＵまたはＰＵ区分のピクセルの平均値と、予測されるＰＵまたはＰＵ区分の予測されるサンプルの平均値との間の差分を表し得る。ＳＤＣを伴わずにＤＭＭが使用されるとき、デルタＤＣ値に加えて、通常の残差コーディングツリーが使用され得る。
【０１５２】
[0156]３Ｄ−ＨＥＶＣ  ＷＤに従ったインター予測およびイントラ予測のためのデルタＤＣコーディングのシンタックス要素、セマンティクスおよび解析処理が下で提示される。下の説明では、たとえばＨ．７．３．８．５などのセクション番号は、３Ｄ−ＨＥＶＣ  ＷＤにおける対応するセクション番号を指す。
シンタックス
Ｈ．７．３．８．５  コーディングユニットシンタックス
【表３】
0006312854.tif 000005
Ｈ．７．３．８．５．１  深度モードパラメータシンタックス
【表４】
0006312854.tif 000006
セマンティクス
Ｈ．７．４．９．５  コーディングユニットセマンティクス
．．．
１に等しいｉｎｔｅｒ＿ｓｄｃ＿ｆｌａｇは、残差ブロックの簡易深度コーディングが現在のコーディングユニットのために使用されることを指定する。０に等しいｉｎｔｅｒ＿ｓｄｃ＿ｆｌａｇは、残差ブロックの簡易深度コーディングが現在のコーディングユニットのために使用されないことを指定する。存在しないとき、ｉｎｔｅｒ＿ｓｄｃ＿ｆｌａｇは０に等しいと推測される。
ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１［ｘ０］［ｙ０］［ｉ］、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ｓｉｇｎ＿ｆｌａｇ［ｘ０］［ｙ０］［ｉ］は、次のようにＩｎｔｅｒＳｄｃＲｅｓｉ［ｘ０］［ｙ０］［ｉ］を導出するために使用される。
ＩｎｔｅｒＳｄｃＲｅｓｉ［ｘ０］［ｙ０］［ｉ］＝（１−２＊ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ｓｉｇｎ＿ｆｌａｇ［ｘ０］［ｙ０］［ｉ］）＊
（ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１［ｘ０］［ｙ０］［ｉ］＋１）    （Ｈ−１９）
Ｈ．７．４．９．５．１  深度モードパラメータセマンティクス
．．．
１に等しいｄｅｐｔｈ＿ｄｃ＿ｆｌａｇ［ｘ０］［ｙ０］は、ｄｅｐｔｈ＿ｄｃ＿ａｂｓ［ｘ０］［ｙ０］［ｉ］およびｄｅｐｔｈ＿ｄｃ＿ｓｉｇｎ＿ｆｌａｇ［ｘ０］［ｙ０］［ｉ］が存在することを指定する。０に等しいｄｅｐｔｈ＿ｄｃ＿ｆｌａｇ［ｘ０］［ｙ０］は、ｄｅｐｔｈ＿ｄｃ＿ａｂｓ［ｘ０］［ｙ０］［ｉ］およびｄｅｐｔｈ＿ｄｃ＿ｓｉｇｎ＿ｆｌａｇ［ｘ０］［ｙ０］［ｉ］が存在しないことを指定する。
ｄｅｐｔｈ＿ｄｃ＿ａｂｓ［ｘ０］［ｙ０］［ｉ］、ｄｅｐｔｈ＿ｄｃ＿ｓｉｇｎ＿ｆｌａｇ［ｘ０］［ｙ０］［ｉ］は、次のようにＤｃＯｆｆｓｅｔ［ｘ０］［ｙ０］［ｉ］を導出するために使用される。
ＤｃＯｆｆｓｅｔ［ｘ０］［ｙ０］［ｉ］＝
（１−２＊ｄｅｐｔｈ＿ｄｃ＿ｓｉｇｎ＿ｆｌａｇ［ｘ０］［ｙ０］［ｉ］）＊（ｄｅｐｔｈ＿ｄｃ＿ａｂｓ［ｘ０］［ｙ０］［ｉ］−ｄｃＮｕｍＳｅｇ＋２）  （Ｈ−２７）
【０１５３】
[0157]ＳＤＣモードで使用されるシンタックス要素のうちのいくつかを解析するための解析処理が、ここで説明される。３Ｄ−ＨＥＶＣでは、インターＳＤＣの場合、デルタＤＣを表すために、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１およびｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ｓｉｇｎ＿ｆｌａｇがエンコーダ２０によって符号化され、デコーダ３０によって復号される。シンタックス要素ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１は、インターＳＤＣのデルタＤＣ値を表し、シンタックス要素ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ｓｉｇｎ＿ｆｌａｇは、インターＳＤＣのデルタＤＣ値の符号を表す。
【０１５４】
[0158]イントラＳＤＣモードおよびＤＭＭモードの場合、デルタＤＣを表すために、ｄｅｐｔｈ＿ｄｃ＿ａｂｓおよびｄｅｐｔｈ＿ｄｃ＿ｓｉｇｎ＿ｆｌａｇがエンコーダ２０によって符号化され、デコーダ３０によって復号される。シンタックス要素ｄｅｐｔｈ＿ｄｃ＿ａｂｓは、イントラＳＤＣおよびＤＭＭのデルタＤＣ値を表し、シンタックス要素ｄｅｐｔｈ＿ｄｃ＿ｓｉｇｎ＿ｆｌａｇは、イントラＳＤＣおよびＤＭＭのデルタＤＣ値の符号を表す。
【０１５５】
[0159]エンコーダ２０およびデコーダ３０によって使用されるバイナリ化方法は、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素およびｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素に対して同じである。ｃｕ＿ｑｐ＿ｄｅｌｔａ＿ａｂｓのバイナリ化方法と同様に、シンタックス要素ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１およびシンタックス要素ｄｅｐｔｈ＿ｄｃ＿ａｂｓのバイナリ化は、プレフィックスビン（ＴＲによる）列、および（存在するときの）サフィックスビン列（ＥＧｋによる）の連結である。
【０１５６】
[0160]ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１およびｄｅｐｔｈ＿ｄｃ＿ａｂｓに関するプレフィックスビン列の導出のために、エントロピー符号化ユニット１１８および／またはエントロピー復号ユニット１５０は、下で説明される演算を適用し得る。この説明では、「ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１／ｄｅｐｔｈ＿ｄｃ＿ａｂｓ」という句への言及は、適用可能な場合、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１またはｄｅｐｔｈ＿ｄｃ＿ａｂｓのいずれかに対する示された演算の適用を指す。すなわち、同じバイナリ化処理がｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１およびｄｅｐｔｈ＿ｄｃ＿ａｂｓに適用される。したがって、簡潔のために、下で説明される演算は、インター予測される深度区分のためのｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素またはｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素が、イントラ予測される深度区分のためにバイナリ化されているかどうかに応じて、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素またはｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素のいずれか（すなわち、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１／ｄｅｐｔｈ＿ｄｃ＿ａｂｓ）に適用される。プレフィックス列の導出は、次のように実行され得る。
−  ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓまたはｄｅｐｔｈ＿ｄｃ＿ａｂｓ（ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１／ｄｅｐｔｈ＿ｄｃ＿ａｂｓ）のプレフィックス値ｐｒｅｆｉｘＶａｌは、次のように導出される。
ｐｒｅｆｉｘＶａｌ＝Ｍｉｎ（ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１／ｄｅｐｔｈ＿ｄｃ＿ａｂｓ，１３）
−  ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１／ｄｅｐｔｈ＿ｄｃ＿ａｂｓに関するプレフィックスビン列は、ｃＭａｘ＝１３およびｃＲｉｃｅＰａｒａｍ＝０によるｐｒｅｆｉｘＶａｌのＴＲバイナリ化処理を呼び出すことによって指定される。
【０１５７】
[0161]ｐｒｅｆｉｘＶａｌが１２よりも大きいとき、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素またはｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素に関するサフィックスビン列は存在し、次のように導出される。
−  ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１またはｄｅｐｔｈ＿ｄｃ＿ａｂｓのサフィックス値ｓｕｆｆｉｘＶａｌは、次のように導出される。
ｓｕｆｆｉｘＶａｌ＝ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１／ｄｅｐｔｈ＿ｄｃ＿ａｂｓ−１３
−  サフィックスビン列は、ＥＧ０バイナリ化処理を呼び出すことによって指定される。
【０１５８】
[0162]深度ピクセルのビット深度が８であるとき、インターＳＤＣ、イントラＳＤＣおよびＤＭＭのデルタＤＣは、−２５５から２５５の範囲にあり得る。したがって、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素またはｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素に関して、多くて２８個のビンがコーディングされる。
【０１５９】
[0163]３Ｄ−ＨＥＶＣでは、エントロピー符号化ユニット１１８および／またはエントロピー復号ユニット１５０におけるＣＡＢＡＣコーダの、正規コーディングエンジンにおいて１つのコンテキストモードにより、プレフィックスビン列におけるビンのすべてがコーディングされ、バイパスコーディングエンジンにおいてバイパスモードにより、サフィックスビン列におけるビンのすべてがコーディングされる。
【０１６０】
[0164]ＨＥＶＣでは、通常は、シンタックス要素に関してコンテキストモデルを使用して、９個以下のビンがコーディングされる。しかしながら、３Ｄ−ＨＥＶＣのデルタＤＣコーディングでは、シンタックス要素ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１およびシンタックス要素ｄｅｐｔｈ＿ｄｃ＿ａｂｓに関してコンテキストモデルを使用して、多くて１３個のビンがコーディングされる。ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１およびｄｅｐｔｈ＿ｄｃ＿ａｂｓに関してコンテキストコーディングされる１３個のビンなど、多数のビンのコンテキストコーディングは、エントロピーエントロピー符号化ユニット１１８および／またはエントロピー復号ユニット１５０の動作を減速させ得る。
【０１６１】
[0165]本開示の様々な例によれば、デルタＤＣ残差値コーディングのためのシンタックス要素のエントロピーコーディングが、エントロピー符号化ユニット１１８および／またはエントロピー復号ユニット１５０などのエントロピーコーダのパフォーマンスを高めるように修正され得る。たとえば、エントロピー符号化ユニット１１８および／またはエントロピー復号ユニット１５０によって使用されるＣＡＢＡＣコーダが、デルタＤＣコーディングのためにコンテキストモデルを使用して正規コーディングエンジンにおいてコーディングされるビンの数を低減し、それによって、３Ｄ−ＨＥＶＣのような３Ｄビデオコーディング処理におけるＤＣ残差コーディングを簡易化するように構成され得る。
【０１６２】
[0166]一般に、エントロピー符号化ユニット１１８は、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素およびｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素の値をバイナリ化し、符号化されたビットストリームを生成するために、ＣＡＢＡＣコーダにおいて、得られたバイナリ化されたシンタックス要素のビンを符号化し得る。エントロピー復号ユニット１５０は、ＣＡＢＡＣコーダにおいて、ビットストリーム中のビットからビンを復号し、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素およびｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素を生成するために、ビンを逆バイナリ化し得る。１つまたは複数のコンテキストモデルによりエントロピー符号化ユニット１１８およびエントロピー復号ユニット１５０によってコーディングされるビンは、シンタックス要素のＮ個以下の先行ビンに限定され得、Ｎは、シンタックス要素に関するビンの最大可能数よりも小さい。シンタックス要素に関するビンの最大可能数は、シンタックス要素の最大値に対応し得る。
【０１６３】
[0167]いくつかの例では、本技法は、デルタＤＣ残差値を表すために使用される１つまたは複数のシンタックス要素に関して、コンテキストコーディングされるビンの数を低減し、エントロピーコーディングの複雑性を低減するために、修正されたバイナリ化および／またはコンテキストモデリング処理を使用し得る。コンテキストコーディングされるビンは、ＣＡＢＡＣコーダの正規コーディングエンジンにおいてコンテキストモデルを使用してコーディングされるビンを指し、コンテキストコーディングされないビンは、コンテキストモデルの選択を伴わずに、ＣＡＢＡＣコーダのバイパスコーディングエンジンにおいてバイパスコーディングされ得る。コンテキストモデルを使用してコーディングされるビンの数を低減することで、ＣＡＢＡＣエンコーダ／デコーダにおけるスループットの増大を促進し得る。
【０１６４】
[0168]いくつかの例では、１つまたは複数のコンテキストモデルによりエントロピー符号化ユニット１１８およびエントロピー復号ユニット１５０によってコーディングされるビンの数は、シンタックス要素のＮ個以下の先行ビンに限定され得、Ｎは、シンタックス要素に関するビンの最大可能数よりも小さい。バイナリ化されたシンタックス要素に関するビンの数は、シンタックス要素の値に従って変わり得、Ｎよりも小さいこと、またはＮよりも大きいことがある。しかしながら、Ｎの値は、ビンの最大可能数、すなわち、シンタックス要素の最大値の場合に生成され得るビンの数よりも小さい。
【０１６５】
[0169]したがって、この例では、利用可能な範囲で、Ｎ個以下のビンが、１つまたは複数のコンテキストモデルによりコーディングされ、その結果、１つまたは複数のコンテキストモデルによりコーディングされるビンの数（ＮまたはＮ未満）は、ビンの最大可能数よりも小さくなる。異なるシンタックス要素値は異なる数のビンをもたらし得るので、コンテキストコーディングされるビンの数は、シンタックス要素の所与の値の場合に生成されるビンの実際の数に少なくとも部分的に依拠し得る。
【０１６６】
[0170]デルタＤＣ値を表すシンタックス要素に関してコンテキストモデルを使用してコーディングされるビンの数を低減するための技法の例の様々な態様が、下で詳細に説明される。様々な例は、必ずしも相互排他的とは限らず、本明細書で広く説明されるように、種々の組合せで組み合わせられ得る。
【０１６７】
１．  第１の例では、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素およびｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素の各々のバイナリ化のために使用されるバイナリ化方法に関係なく、エントロピー符号化ユニット１１８またはエントロピー復号ユニット１５０によってエントロピーコーディングされるビン列は、バイパスモードによりコーディングされない最大Ｎ個のビンを有することができる。すなわち、コンテキストモデルを使用してエントロピー符号化ユニット１１８またはエントロピー復号ユニット１５０によってコーディングされるｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素およびｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素のビンの数は、Ｎ個以下のビンに限定され得る。この例では、ＣＡＢＡＣコーダの正規コーディングエンジンにおいて、Ｎ個以下の先行ビンがコーディングされる一方、ＣＡＢＡＣコーダのバイパスコーディングエンジンにおいて、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素およびｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素の残存ビンがコーディングされる。正規コーディングエンジンでは、ビンをコーディングするためにコンテキストモデルが選択され得る。ＣＡＢＡＣコーダのバイパスコーディングエンジンでは、コーディングにコンテキストモデルが使用されないように、ビンをコーディングするために固定確率モデルが使用され得る。（バイパスモードによりコーディングされない最大Ｎ個の先行ビンの）Ｎの値は、シンタックス要素に関するビンの最大可能数よりも小さい、たとえば、シンタックス要素の最大値のバイナリ化によって生成されるビンの最大数よりも小さい。いくつかの例では、Ｎ＝９であり、その結果、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素およびｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素の各々の最大９個の先行ビンが１つまたは複数のコンテキストモデルにより、すなわちバイパスなしにコーディングされ、残存ビン（ある場合）がバイパスコーディングされる、すなわちコンテキストモデルによりコーディングされない。一例として、シンタックス要素ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１およびシンタックス要素ｄｅｐｔｈ＿ｄｃ＿ａｂｓに関して多くて１３個のビンがコーディングされる場合、コンテキストコーディングをＮ＝９個のビンに限定することで、１つまたは複数のコンテキストモデルにより正規コーディングエンジンにおいてコーディングされなければならないビンの数を低減することができる。
【０１６８】
ａ．一例では、Ｎ個以下のビンへのコンテキストコーディングの限定は、固定または選択的にアクティブ化され得る。たとえば、コンテキストモデルによりコーディングされるｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素およびｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素のビンの最大数は、Ｎ（たとえば、Ｎ＝９）個のビンに固定され、固定ベースでアクティブ化され得、それにより、たとえば、Ｎ個以下のビンがコンテキストコーディングされるような限定が常にアクティブとなる。すなわち、エントロピー符号化ユニット１１８およびエントロピー復号ユニット１５０は、固定ベースで、バイナリ化されたシンタックス要素（ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１またはｄｅｐｔｈ＿ｄｃ＿ａｂｓ）のＮ個以下の先行ビンを常にエントロピーコーディングするように構成され得る。代替的に、Ｎ個以下のビンがバイパスなしにコーディングされることになるような限定を適用することが、エンコーダ２０によって生成され、デコーダ３０によって受信されるフラグによって選択的に制御され得る。フラグは、たとえば、ビデオパラメータセット（ＶＰＳ）、シーケンスパラメータセット（ＳＰＳ）、もしくはピクチャパラメータセット（ＰＰＳ）などのパラメータセットにおいてシグナリングされ得、ならびに／またはプロファイルおよびレベルの定義の一部としてさらに制約され得る。
たとえば、エントロピー符号化ユニット１１８および／またはエントロピー復号ユニット１５０は、バイパスコーディングされないビンの数がＮ個以下の先行ビンに限定されるかどうか、またはバイパスコーディングされないビンの数が限定されない（もしくは、Ｎ個のビンを上回る数のビンに限定される）かどうかを示す、ＶＰＳ、ＳＰＳ、ＰＰＳまたは類似のデータ構造におけるフラグまたは他のシンタックス要素をコーディングする（すなわち、エントロピー符号化ユニット１１８の場合には符号化し、エントロピー復号ユニット１５０の場合には復号する）ことができる。別の例として、コンテキストモデルによるエントロピーコーディングをｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素またはｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素のＮ個以下の先行ビンに限定するフラグまたは他のシンタックス要素などの情報が、所与のビットストリームに関するプロファイルまたはレベルの情報においてコーディングされ得る。
フラグが第１の値を有する場合、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素およびｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素のビンのコンテキストコーディングは、バイナリ化されたシンタックス要素の最初のＮ個以下のビンに限定され、Ｎは、シンタックス要素に関するビンの最大可能数よりも小さく、残存ビンはバイパスコーディングされ、コンテキストコーディングされない。フラグが第２の値を有する場合、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素およびｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素のビンのコンテキストコーディングは、バイナリ化されたシンタックス要素の最初のＮ個以下のビンに限定されず、すべてのビンまたは少なくともＮ個よりも多いビンが、１つまたは複数のコンテキストモデルによりコーディングされ得る。Ｎの値は、シンタックス要素に関するビンの最大可能数よりも小さい。
シンタックス要素が、たとえば、１３個のビンを有するようにバイナリ化され、Ｎ＝９である場合、エントロピー符号化ユニット１１８およびエントロピー復号ユニット１５０は、９個、または少なくとも９個以下のビンを１つまたは複数のコンテキストモデルによりコーディングし、残存する４個のビンをバイパスコーディングにより、すなわち１つまたは複数のコンテキストモデルを使用せずにコーディングするように構成され得る。シンタックス要素が、たとえば、８個のビンを有するようにバイナリ化され、Ｎ＝９である場合、８個のビンすべてが、１つまたは複数のコンテキストモデルを使用してコーディングされ得る。バイナリ化されたシンタックス要素のビンの数は、Ｎ個よりも少ないビンまたはＮ個よりも多いビンがあり得るように、シンタックス要素の値に従って変わり得る。ただし、いくつかの例では、ビンの数に関係なく、Ｎ個以下のビンがコンテキストモデルによりコーディングされるように、この制約は適用され得る。
【０１６９】
ｂ．いくつかの例では、コンテキストコーディングを最初のＮ個以下の先行ビンに制限することの代替または追加として、バイパスコーディングされないｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素およびｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素のすべてのビン、すなわち、ＣＡＢＡＣコーダの正規コーディングエンジンにおいてコンテキストコーディングされるすべてのビンをコーディングするために１つのコンテキストモデル、すなわち、同じコンテキストモデルが使用され得る。たとえば、エントロピー符号化ユニット１１８および／またはエントロピー復号ユニット１５０は、同じコンテキストモデルによりバイパスコーディングされないすべてのビンをコーディングするように構成され得る。この場合、たとえば、同じコンテキストモデルによりバイパスコーディングされないビンをコーディングするために、ＣＡＢＡＣコーダの正規コーディングエンジンが使用される一方、ＣＡＢＡＣコーダのバイパスコーディングエンジンにおいて、他の残存ビンがバイパスコーディングされる。したがって、最初のＮ個以下のビンが１つのコンテキストモデルによりコーディングされ得、Ｎ個以下のビンの各々が同じコンテキストモデルによりコーディングされ、残存ビンはバイパスコーディングされる。この例では、最初のＮ個のビンは、同じコンテキストモデルを共有し、最初のＮ個のビンのいずれも、異なるコンテキストモデルによりコーディングされることはない。上で説明されたように、Ｎ＝９であり、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素またはｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素が１３個のビンを有する場合、エントロピー符号化ユニット１１８およびエントロピー復号ユニット１５０は、同じコンテキストモデルによりＣＡＢＡＣコーダの正規コーディングエンジンにおいて最初の９個のビンをコンテキストコーディングし、ＣＡＢＡＣコーダのバイパスコーディングエンジンにおいて残存する４個のビンをバイパスコーディングすることができる。
【０１７０】
ｃ．上の項目１ｂの代替として、コンテキストコーディングを最初のＮ個以下の先行ビンに制限することに加えて、バイパスコーディングされないＮ個以下の先行ビンのうちの少なくともいくつかをコーディングするために、別個のコンテキストモデルが使用され得る。たとえば、最初のＮ個の先行ビン（Ｎは、シンタックス要素に関するビンの最大可能数よりも小さい）の限定を受けてバイパスコーディングされない各ビンは、それ自体の別個のコンテキストモデルによりコーディングされ得る。代替的に、バイパスコーディングされないＮ個以下の先行ビンのうちの少なくともいくつかは、互いに同じコンテキストモデルによりコーディングされ得る一方、バイパスコーディングされないＮ個以下の先行ビンのうちのいくつかの他のビンは、１つまたは複数の異なるコンテキストモデルによりコーディングされ得る。一例として、Ｎ個以下の先行ビンがコンテキストモデルによりコーディングされることになる場合、バイナリ化されたシンタックス要素ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１またはｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素の最初のＮ個のビンのうちの少なくともいくつかは、同じコンテキストモデルによりエントロピー符号化ユニット１１８またはエントロピー復号ユニット１５０によってコーディングされ得る一方、最初のＮ個のビンのうちの１つまたは複数の他のビンは、１つまたは複数の異なるコンテキストモデルによりコーディングされ、最初のＮ個のビンの後の残存ビンは、コンテキストモデルを使用せずバイパスコーディングされる。その上、コーディングは、一般に、適用可能な場合、符号化または復号を指すことがあり、ビデオエンコーダ２０のエントロピー符号化ユニット１１８またはビデオデコーダ３０のエントロピー復号ユニット１５０によって実行される動作を指し得る。
【０１７１】
２．  一例では、デルタＤＣコーディングにおいて、エントロピー符号化ユニット１１８およびエントロピー復号ユニット１５０によって実行されるｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素およびｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素のバイナリ化が、３Ｄ−ＨＥＶＣ  ＷＤにおけるバイナリ化と同様であること、ただし、１つまたは複数のコンテキストモデルによりコーディングされるｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素またはｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素のビンの数が低減されることが提案される。たとえば、バイパスコーディングされないビンの数は、上で項目１において説明されたように、最初の先行するＮ個以下のビンをコンテキストコーディングすることによって低減され得、Ｎは、シンタックス要素に関するビンの最大可能数よりも小さく、３Ｄ−ＨＥＶＣ  ＷＤに従って使用される同じバイナリ化が使用され得る。この場合、バイパスコーディングされないビンの数は、３Ｄ−ＨＥＶＣ  ＷＤに対して修正され得るが、バイナリ化処理は、３Ｄ−ＨＥＶＣ  ＷＤの場合と同じであり得る。
【０１７２】
ａ．別の例では、バイナリ化は修正され得る。いくつかの例では、バイナリ化は、上の項目１、１ａ、１ｂおよび１ｃで説明されたようにバイパスコーディングされないビンの数を限定することなく、修正され得る。代替的に、他の例では、バイナリ化は、上の項目１、１ａ、１ｂおよび１ｃで説明されたようにバイパスコーディングされないビンの数を限定することと組み合わせて、修正され得る。いずれの場合も、この例では、エントロピー符号化ユニット１１８およびエントロピー復号ユニット１５０によるｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１およびｄｅｐｔｈ＿ｄｃ＿ａｂｓの各々のバイナリ化は依然として、プレフィックスビン（短縮ライス（ＴＲ）、ｃＲｉｃｅＰａｒａｍ＝０による）列および（存在するときの）サフィックスビン列（０次指数ゴロム（ＥＧ０）による）の連結である。しかしながら、プレフィックスビン列の最大値を示すためにＴＲ処理によって使用されるｃＭａｘ値は、１３からＮに変更され、Ｎは、正の整数（たとえば、上の項目１で説明されたように、Ｎ＝９）である。シンタックス要素ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１またはシンタックス要素ｄｅｐｔｈ＿ｄｃ＿ａｂｓの値が値ｃＭａｘよりも小さい場合、プレフィックスビン列だけが生成され、サフィックスビン列は存在しない。それ以外の場合、サフィックスビン列は、シンタックス要素を表すビンに存在する。バイナリ化は、エントロピー符号化ユニット１１８がシンタックス要素に基づいてビットストリーム中のビットに符号化するビンと、エントロピー復号ユニット１５０がシンタックス要素を復元するためにビットストリーム中のビットから復号するビンの数とを決定する。（ｃＭａｘがＮに等しい）バイナリ化処理の例が、下の表３に示されている。Ｎの値は、シンタックス要素に関するビンの最大可能数よりも小さくてよい。一例では、Ｎは、９に等しくなるように設定される。この例では、ｃＭａｘをＮに限定することによって、プレフィックス列におけるビンの数は、Ｎ以下に限定される。エントロピー符号化ユニット１１８およびエントロピー復号ユニット１５０は、修正されたバイナリ化によりビンをコーディングし得る。
【表５】
0006312854.tif 000007
【０１７３】
ｂ．さらに、一例では、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１／ｄｅｐｔｈ＿ｄｃ＿ａｂｓにおける（ｂｉｎＩｄｘがＭよりも小さい）最初のＭ個のビンは、互いに同じコンテキストモデルを使用してコーディングされ得、残存ビンは、バイパスコーディングされる。いくつかの例では、ビンは、上の項目２ａで説明されたようにバイナリ化を使用してコーディングされ得る。項目２ａは、例示的なバイナリ化を説明しており、本項目２ｂは、そのようなバイナリ化のうちのどのビンがコンテキストモデルによりコーディングされるべきで、どのビンがバイパスコーディングされるべきかを説明する。ここでは、最初のＭ個のビンがコンテキストモデルによりコーディングされ、残存ビンがバイパスコーディングされる。一例では、Ｍは９に等しい。代替または追加として、ＭはＮ以下であってよく、Ｎは、項目２ａを参照して上で説明されたように、プレフィックスビン列の最大値を示すためにＴＲ処理によって使用されるｃＭａｘ値を示す。ＭがＮよりも大きい場合、（たとえば、上で項目２ａにおいて説明されたバイナリ化処理において生成された）プレフィックスビンと少なくともいくつかのサフィックスビンの両方がコンテキストモデル、たとえば、この例では同じコンテキストモデルを使用してコーディングされる。そうではなく、ＭがＮ以下である場合、プレフィックスビンだけがコンテキストモデル、たとえば、この例では同じコンテキストモデルを使用してコーディングされ、残存ビンはバイパスコーディングされる。ＭがＮよりも小さい場合、（すべての可能なＮ個のプレフィックスビンよりも少ない）プレフィックスビンのサブセットだけがコンテキストモデル、たとえば、この例では同じコンテキストモデルを使用してコーディングされ、残存ビンはバイパスコーディングされる。ＭがＮ以下である場合、プレフィックスのＭ個のビンは、互いに同じコンテキストモデルによりコーディングされ、先行するＭ個のビンの後の残存ビン（ある場合）は、バイパスコーディングされる。一例として、Ｎ＝９およびＭ＝６の場合、エントロピー符号化ユニット１１８およびエントロピー復号ユニット１５０は、同じコンテキストモデルにより最初のＭ＝６個のビンをコーディングし、残存ビン（ある場合）をバイパスコーディングする。この例では、エントロピー符号化ユニット１１８およびエントロピー復号ユニット１５０は、最初のＮ個以下の先行ビンが１つまたは複数のコンテキストモデルによりコーディングされ、Ｍ個のビンが同じコンテキストモデルを使用してコーディングされ、コンテキストコーディングされない残存ビンがバイパスコーディングされるように、ビンをコーディングすることができる。
【０１７４】
ｃ．追加の特徴として、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素およびｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素はそれぞれ、シンタックス要素がＮ個以下のビン（たとえば、Ｎ＝９）にバイナリ化されるように、範囲［０，Ｎ−１］にあるように制限され得る。たとえば、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１またはｄｅｐｔｈ＿ｄｃ＿ａｂｓの値は、それにより値がＮ＝９個以下のビンにバイナリ化されるように、シンタックス要素の最大範囲よりも小さい所望の範囲に切取られ得、それは、シンタックス要素に関するビンの最大可能数、すなわち、切取られていないものに関するシンタックス要素の最大値、より小さい。この場合、シンタックス要素の値を［０，Ｎ−１］に切取ることによって、シンタックス要素に関するビン列にＮ個のビンだけが実際に存在するので、Ｎ個以下の先行ビンがコンテキストモデルによりコーディングされる。コンテキストコーディングされるビンは、バイパスコーディングされ得る。
他の例では、シンタックス要素値の範囲は［０，Ｐ−１］に設定され得、ＰはＮよりも大きい。この場合、エントロピー符号化ユニット１１８またはエントロピー復号ユニット１５０は、ＣＡＢＡＣコーダにおいて１つまたは複数のコンテキストモデルにより、Ｐ個のビンのうちのＮ個以下の先行ビンをコーディングすること、ここにおいて、Ｎは、シンタックス要素の最大値に対応するビンの最大可能数よりも小さい、と、コンテキストモデルによらずに、残存するＰ−Ｎ個のビン（利用可能な場合）をバイパスコーディングすることと、ができる。
この例では、一般に、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素またはｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素の値は、シンタックス要素に関するビンの最大可能数を下回るようにビンの数を限定するように選択された範囲に制限され得る。シンタックス要素に関するＮ個の先行ビンが、たとえば、ＣＡＢＡＣコーダの正規コーディングエンジンにおいて、１つまたは複数のコンテキストモデルを使用してコーディングされ得、ここにおいて、Ｎは、シンタックス要素の最大可能値を仮定すると、ビンの最大可能数よりも小さく、シンタックス要素の最大の切取られた値を仮定すると、ビンの実際の最大数以下である。残存ビンは、たとえば、ＣＡＢＡＣコーダのバイパスコーディングエンジンにおいて、１つまたは複数のコンテキストモデルを使用せずにバイパスコーディングされる。
【０１７５】
ｄ．代替的に、別の例では、シンタックス要素ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１およびシンタックス要素ｄｅｐｔｈ＿ｄｃ＿ａｂｓの各々のバイナリ化は依然として、プレフィックスビン（短縮ライス（ＴＲ）、ｃＲｉｃｅＰａｒａｍ＝０による）列および（存在するときの）サフィックスビン列の連結であり得るが、サフィックスビン列は、ｋ次指数ゴロム（ＥＧｋ）バイナリ化により生成され得る。この例では、ｋは０に等しくない、たとえば、ｋは３に等しい。したがって、上の項目２ａの場合のようにｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１またはｄｅｐｔｈ＿ｄｃ＿ａｂｓに０次指数ゴロム（ＥＧ０）バイナリ化を使用する代わりに、サフィックスビン列のバイナリ化にｋ次指数ゴロムバイナリ化（ＥＧｋ）（ｋは０に等しくない）が使用される。エントロピー符号化ユニット１１８およびエントロピー復号ユニット１５０は依然として、最初のＮ個以下の先行ビンを、１つまたは複数のコンテキストモデルを使用してコーディングし、シンタックス要素の残存ビンをバイパスコーディングするように構成され得る。
【０１７６】
ｅ．別の代替として、シンタックス要素ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１およびシンタックス要素ｄｅｐｔｈ＿ｄｃ＿ａｂｓの各々のバイナリ化は依然として、プレフィックスビン（短縮ライス（ＴＲ）、ｃＲｉｃｅＰａｒａｍ＝０により生成される）列および（存在するときの）サフィックスビン列の連結であり得るが、サフィックスビン列は、固定長コーディングバイナリ化により生成され得る。したがって、上の項目２ａの場合のようにｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１もしくはｄｅｐｔｈ＿ｄｃ＿ａｂｓのサフィックスビン列に０次指数ゴロム（ＥＧ０）バイナリ化を使用すること、または上の項目２ｄの場合のようにｋ次指数ゴロム（ＥＧｋ）バイナリ化（ｋは０に等しくない）を使用することの代わりに、サフィックスビン列をバイナリ化するために固定長コーディングが使用され得る。エントロピー符号化ユニット１１８およびエントロピー復号ユニット１５０は依然として、最初のＮ個以下の先行ビンを、１つまたは複数のコンテキストモデルを使用してコーディングし、シンタックス要素の残存ビンをバイパスコーディングするように構成され得る。バイナリ化のための固定長コーディングの一例が、下の表４に示されている。
【表６】
0006312854.tif 000008
【０１７７】
３．  代替的に、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素およびｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素が、ｋ次指数ゴロムコードを使用してそれぞれバイナリ化される。この例では、エントロピー符号化ユニット１１８およびエントロピー復号ユニット１５０は、シンタックス要素の最初のＮ個以下の先行ビンを、１つまたは複数のコンテキストモデルを使用してコーディングし、シンタックス要素の残存ビンをバイパスコーディングするように構成され得るが、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素およびｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素に異なるバイナリ化が使用され得る。
【０１７８】
ａ．一例では、ｋ次指数ゴロムコードの場合に、ｋが０に等しく、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１またはｄｅｐｔｈ＿ｄｃ＿ａｂｓ（ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１／ｄｅｐｔｈ＿ｄｃ＿ａｂｓ）のバイナリ化が、下の表５に示されている。
【表７】
0006312854.tif 000009
【０１７９】
ｂ．さらに、一例では、最初のＮ個のビンが１つのコンテキストモデル、すなわち、同じコンテキストモデルを最初のＮ個の先行ビンの各々のために使用してコーディングされ得、ビン列における残存ビンはバイパスコーディングされる。Ｎは、非負整数であり得る。一例では、Ｎは、９に等しくなるように設定され得る。したがって、このバイナリ化により、エントロピー符号化ユニット１１８およびエントロピー復号ユニット１５０は、最初のＮ個以下のビンをコンテキストモデルによりコーディングし、コンテキストコーディングされない残存ビンをバイパスコーディングする。その上、エントロピー符号化ユニット１１８およびエントロピー復号ユニット１５０は、Ｎ個を上限として、コンテキストコーディングされるビンのすべてを、同じコンテキストモデルによりコーディングする。いくつかの例では、Ｎ個のビンすべてが、利用可能である場合には、同じコンテキストモデルによりコーディングされる。他の例では、利用可能な範囲で、Ｎ個のビンすべてよりも少ない、Ｎ個のビンのサブセットが、同じコンテキストモデルによりコーディングされ、残存ビンがバイパスコーディングされる。
【０１８０】
ｃ．代替的に、最初の「０」のビンおよびそれの前の（すなわち、「０」のビンの前の）ビンが、コンテキストモデルを使用してコーディングされる。たとえば、最初の０値のビン（「０」のビン）までの先行するビン、および０値のビン自体は、１つまたは複数のコンテキストモデルを使用してコーディングされ、０値のビンの後の残存ビンは、バイパスコーディングされる。
【０１８１】
ｉ．この例では、先行する連続的な「１」のビンおよび後続の最初の「０」のビン（たとえば、上の表５において太字で強調された下線付きのビンなど）は、１つまたは複数のコンテキストモデルを使用してコーディングされる。最初の「０」のビンの後のビンは、バイパスコーディングされる。したがって、一例として、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１またはｄｅｐｔｈ＿ｄｃ＿ａｂｓのためのバイナリ化が１１１０００１である場合、エントロピー符号化ユニット１１８またはエントロピー復号ユニット１５０は、最初の３つの「１」のビンと最初の「０」のビンとを、１つまたは複数のコンテキストモデルを使用してエントロピーコーディングし、次いで最後の「０」、「０」および「１」のビンを、コンテキストモデルを使用せずにバイパスコーディングすることができる。
【０１８２】
ｉｉ．  加えて、一例では、エントロピーコーディングは、（最初の「０」を含む）最初の「０」の前の最初のＮ個のビンだけが１つまたは複数のコンテキストモデルによりコーディングされ、残存ビンがバイパスコーディングされるように構成され得る。この場合、最初の「０」のビンの前にＮ個よりも多い先行する「１」のビンがある場合、最初のＮ個の先行ビンだけがコンテキストモデルによりコーディングされ、残存ビンはバイパスコーディングされる。
一例として、Ｎ＝９で、最初の「０」のビンの前に８個の先行する「１」のビンがある場合、８個の先行ビンに加えて最初の「０」のビンが１つまたは複数のコンテキストモデルによりコーディングされ、残存ビンはバイパスコーディングされる。Ｎ＝９で、最初の「０」のビンの前に９個の先行する「１」のビンがある場合、最初の９個の先行する「１」のビンだけが１つまたは複数のコンテキストモデルによりコーディングされ、最初の「０」のビンを含む残存ビンはバイパスコーディングされる。さらなる例として、Ｎ＝９で、最初の「０」のビンの前に６個の先行する「１」のビンがある場合、最初の６個の先行する「１」のビンおよびその「０」のビンだけが１つまたは複数のコンテキストモデルによりコーディングされ、残存ビンはバイパスコーディングされる。
したがって、いくつかの例では、この特徴は、たとえば、項目１を参照して上で説明されたように、デルタＤＣ値のシンタックス要素に関する最初のＮ個以下の先行ビンにコンテキストコーディングを限定することとともに使用され得る。したがって、エントロピー符号化ユニット１１８およびエントロピー復号ユニット１５０は、最初のＮ個以下の先行ビンと、最初の最大「０」以下のビンの最初の先行ビンとを、１つまたは複数のコンテキストモデルを使用してコーディングし、シンタックス要素の残存ビンをバイパスコーディングするように構成され得る。
【０１８３】
ｄ．加えて、いくつかの例では、シンタックス要素ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１およびｄｅｐｔｈ＿ｄｃ＿ａｂｓの一方または両方は、Ｎ個以下のビンにバイナリ化されるように範囲［０，２＾（（Ｎ＋１）／２）−２］にあるように制限され得る。一例では、ｋは０に等しく、Ｎは９に等しく、範囲は［０，３０］である。この場合、インターＳＤＣモードでは、デルタＤＣの範囲は［−３１，−１］および［１，３１］の結合であり、イントラＳＤＣモードおよびＤＭＭモードでは、現在の予測ユニットに区分が１つだけあるときに、デルタＤＣの範囲は［−３１，３１］であり、現在の予測ユニットに区分が２つあるときに、デルタＤＣの範囲は［−３０，３０］である。このようにして、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素およびｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素の値は、バイナリ化において生成されるビンの数を限定するように切取られ得る。
【０１８４】
[0171]図７は、デルタＤＣ残差値を表すシンタックス要素を符号化するための方法を示す流れ図である。図７の方法のエントロピーコーディング態様は、ビデオエンコーダ２０のエントロピー符号化ユニット１１８によって実行され得る。図７に示されるように、ビデオエンコーダ２０は、深度ＣＵのＰＵまたはＰＵ区分のための予測を生成する（２００）ことができる。予測は、ＰＵまたは区分のピクセルのためのイントラ予測またはインター予測されるサンプルを含むことができる。ＰＵ区分は、たとえば、ｗｅｄｇｅｌｅｔ区分または輪郭区分を含むことができる。エンコーダ２０は、ＨＥＶＣイントラ予測モード、ＤＭＭ、またはインター予測を使用して予測を実行することができる。この例では、エンコーダ２０は、たとえば、予測処理ユニットにおいて、ＰＵまたはＰＵ区分に対するデルタＤＣ残差値を生成する（２０２）ために、ＳＤＣまたは（ＳＤＣを伴って、もしくは伴わずに）ＤＭＭを使用する。エンコーダ２０は、たとえば、予測処理ユニット１２０において、デルタＤＣ残差値を表すシンタックス要素、たとえば、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１またはｄｅｐｔｈ＿ｄｃ＿ａｂｓを生成する（２０４）。エントロピー符号化ユニット１１８は、たとえば、本開示で説明されるバイナリ化処理のいずれかを使用して、シンタックス要素をバイナリ化する（２０６）。
【０１８５】
[0172]エントロピー符号化ユニット１１８は、１つまたは複数のコンテキストモデルを使用して、バイナリ化されたシンタックス要素のビン列のＮ個以下の先行ビンを符号化し（２０８）、Ｎは、シンタックス要素に関するビンの最大可能数よりも小さい。特に、エントロピー符号化ユニット１１８は、ＣＡＢＡＣコーダの正規コーディングエンジンにより、Ｎ個以下の先行ビンを符号化する。加えて、エントロピー符号化ユニット１１８は、バイナリ化されたシンタックス要素の残存ビンをバイパス符号化し（２１０）、符号化されたビデオビットストリームにおいて、符号化されたビンに対応するビットをシグナリングする（２１２）。ある場合には、シンタックス要素の値によっては、または最大Ｎ個の先行ビンを条件として、コンテキストコーディングされるビンの数によっては、コンテキストコーディングされない残存ビンがない。コンテキストコーディングをＮ個以下の先行ビンに制限すること、ここにおいて、Ｎは、ビンの最大可能数よりも小さい、と、他のビンをバイパスコーディングすることと、によって、エントロピーコーディングは簡易化され得る。いくつかの例では、コンテキストコーディングをＮ個以下の先行ビンに限定することは、たとえば、上で説明されたように、コンテキストモデリング、バイナリ化処理、または両方に対する修正によって適用され得る。
【０１８６】
[0173]ビデオエンコーダ２０は、たとえば、予測処理ユニット１２０およびエントロピー符号化ユニット１１８などのコンポーネントを介して、図７に示されるように、ビデオデータを符号化する方法を実行するように構成された１つまたは複数のプロセッサを含み得る。たとえば、ビデオエンコーダ２０は、深度コーディングユニット（ＣＵ）の予測ユニット（ＰＵ）に対するデルタＤＣ残差値を表すシンタックス要素を生成し、ビンの列にシンタックス要素をバイナリ化し得る。シンタックス要素は、ＰＵの１つまたは複数の区分のうちの１つの区分に対するデルタＤＣ残差値を表し得る。
【０１８７】
[0174]シンタックス要素は、たとえば、３Ｄ−ＨＥＶＣにおいて定義されているような、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素もしくはｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素、またはデルタＤＣ残差値を表す任意の同様のシンタックス要素であり得る。ビデオエンコーダ２０は、１つまたは複数のコンテキストモデルを使用して、バイナリ化されたシンタックス要素のＮ個以下の先行ビンを符号化すること、ここにおいて、Ｎは、バイナリ化されたシンタックス要素のビンの最大可能数よりも小さい、と、１つまたは複数のコンテキストモデルを使用して符号化されなかったバイナリ化されたシンタックス要素の残存ビンをバイパス符号化することと、ができる。これらの例および他の例では、Ｎは正の整数であり得る。Ｎ個以下の先行ビンを符号化することは、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）エントロピーコーダの正規コーディングエンジンを使用して、Ｎ個以下の先行ビンを符号化することを備えることができ、残存ビンをバイパス符号化することは、ＣＡＢＡＣエントロピーコーダのバイパスコーディングエンジンを使用して、残存ビンをバイパス符号化することを備えることができる。ビデオエンコーダ２０は、符号化されたビットストリームにおいて、符号化されたビンに対応するビットをシグナリングし得る。
【０１８８】
[0175]一例では、ビデオエンコーダ２０は、ビンを生成するために、ｃＲｉｃｅＰａｒａｍ＝０による、短縮ライス（ＴＲ）コードによりバイナリ化されたプレフィックスビン列および０次指数ゴロム（ＥＧ０）コードによりバイナリ化されたサフィックスビン列の連結を使用して、シンタックス要素の値をバイナリ化し得、ＴＲコードのｃＭａｘ値はＮに等しい。別の例では、ビデオエンコーダ２０は、ビンを生成するために、ｃＲｉｃｅＰａｒａｍ＝０による、短縮ライス（ＴＲ）コードによりバイナリ化されたプレフィックスビン列およびｋ次指数ゴロム（ＥＧｋ）コードによりバイナリ化されたサフィックスビン列の連結を使用して、シンタックス要素の値をバイナリ化し得、ｋは０ではなく、ＴＲコードのｃＭａｘ値はＮに等しい。別の例では、ビデオエンコーダ２０は、ビンを生成するために、ｃＲｉｃｅＰａｒａｍ＝０による、短縮ライス（ＴＲ）コードによりバイナリ化されたプレフィックスビン列および固定長コードによりバイナリ化されたサフィックスビン列の連結を使用して、シンタックス要素の値をバイナリ化し得る。前記のバイナリ化のいずれに関しても、シンタックス要素の値がｃＭａｘ値よりも小さい場合、バイナリ化によってサフィックスビン列は生成されない。
【０１８９】
[0176]別の例では、ビデオエンコーダ２０は、ビンを生成するために、ｋ次指数ゴロム（ＥＧｋ）コードを使用してバイナリ化される、シンタックス要素の値をバイナリ化する。ｋの値は、たとえば０に等しいことがある。この例では、ビデオエンコーダ２０によってＮ個以下のビンを符号化することは、０値を有する最初のビンがシンタックス要素のＮ個の先行ビンの中に位置する場合に、０値を有する最初のビンおよび０値を有する最初のビンの前の先行ビンだけを、１つまたは複数のコンテキストモデルを使用して符号化し、０値を有する最初のビンがシンタックス要素のＮ個の先行ビンの中に位置しない場合に、先行するＮ個のビンだけを、１つまたは複数のコンテキストモデルを使用して符号化することを備え得る。
【０１９０】
[0177]いくつかの例では、ビデオエンコーダ２０は、ＰＵの区分に対する予測される区分を生成することができ、それはＰＵの単一の区分または複数の区分のうちの１つであり得る。デルタＤＣ残差値は、区分の平均ピクセル値と予測される区分の平均ピクセル値（すなわち、予測されるサンプル値）との間の差分を示す。予測される区分がイントラ予測される場合、シンタックス要素は、たとえば、イントラコーディングのためのデルタＤＣ残差値を表すために３Ｄ−ＨＥＶＣによって提供されるような、ｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素であり得る。予測される区分がインター予測される場合、シンタックス要素は、インターコーディングのためのデルタＤＣ残差値を表すために３Ｄ−ＨＥＶＣによって提供されるようなｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素であり得る。
【０１９１】
[0178]一例では、ビデオエンコーダ２０は、Ｎ個以下の先行ビンが１つまたは複数のコンテキストモデルを使用して符号化されることを示す第１の値と、Ｎ個よりも多い先行ビンが１つまたは複数のコンテキストモデルを使用して符号化され得ること、すなわち、コンテキストコーディングされるビンの数に対する制限がないことを示す第２の値とを有するフラグまたは他のシンタックス要素を生成し得る。したがって、いくつかの例では、ビデオデコーダ３０に、コンテキストコーディングをＮ個以下の先行ビンに限定させるか、またはコンテキストコーディングをＮ個の先行ビンに限定させないための情報を、ビデオエンコーダ２０はシグナリングし得る。
【０１９２】
[0179]いくつかの例では、ビデオエンコーダ２０は、同じコンテキストモデルを使用して、シンタックス要素のＮ個以下の先行ビンを符号化することができる。代替的に、ビデオエンコーダ２０は、異なるコンテキストモデルを使用して、シンタックス要素のＮ個以下の先行ビンのうちの少なくともいくつかを符号化することができる。さらなる代替として、ビデオエンコーダ３０は、同じコンテキストモデルを使用して、シンタックス要素のＮ個以下の先行ビンのうちの先行するＭ個を符号化し、ここにおいて、ＭはＮよりも小さい、バイパスコーディングを使用して、Ｍ個の先行ビンの後の残存ビン（ある場合）を符号化するように構成され得る。
【０１９３】
[0180]いくつかの例では、ビデオエンコーダ２０は、シンタックス要素（たとえば、インターコーディングのためのｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１またはイントラコーディングのためのｄｅｐｔｈ＿ｄｃ＿ａｂｓ）の値を、値の全範囲よりも小さい範囲に切取るように構成され得る。この場合、ビンは、切取られた値のバイナリ化によって生成され得る。一例として、ビデオエンコーダ２０は、バイナリ化が９個以下のビンを生成するように、シンタックス要素の値を切取り得る。
【０１９４】
[0181]図８は、デルタＤＣ残差値を表すシンタックス要素を復号するための方法を示す流れ図である。図８の方法のエントロピーコーディング態様は、ビデオデコーダ３０のエントロピー復号ユニット１５０によって実行され得る。図８に示されるように、エントロピー復号ユニット１５０は、符号化されたビデオビットストリームを受信し（２２０）、１つまたは複数のコンテキストモデルを使用して、ＰＵに対するデルタＤＣ残差値を表すシンタックス要素に関して、ビットストリームからＮ個以下の先行ビンを復号する（２２２）。Ｎの値は、シンタックス要素に関するビンの最大可能数よりも小さい。エントロピー復号ユニット１５０は、コンテキストモデルを使用せずに、シンタックス要素に関する残存ビンをバイパス復号する（２２４）。エントロピー復号ユニット１５０は、復号されたビンに基づいてシンタックス要素を生成する（２２６）。ビデオデコーダ３０は、たとえば、再構築ユニット１５８において、シンタックス要素によって表されるデルタＤＣ残差値およびＰＵまたは区分のインター予測されるサンプルまたはイントラ予測されるサンプルに基づいて、インターコーディングまたはイントラコーディングされたＰＵを再構築する（２２８）。
【０１９５】
[0182]ビデオデコーダ３０は、たとえば、エントロピー符号化ユニット１５０、予測処理ユニット１５２、および再構築ユニット１５８などのコンポーネントを介して、図８に示されるように、ビデオデータを復号する方法を実行するように構成された１つまたは複数のプロセッサを含むことができる。たとえば、ビデオデコーダ３０は、符号化されたビデオビットストリームを受信し、深度コーディングユニット（ＣＵ）の予測ユニット（ＰＵ）に対するデルタＤＣ残差値を表すシンタックス要素（たとえば、インターコーディングのためのｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１またはイントラコーディングのためのｄｅｐｔｈ＿ｄｃ＿ａｂｓ）に関してビットストリームからビンを復号するように構成され得る。
【０１９６】
[0183]ビンを復号するために、ビデオデコーダ３０は、１つまたは複数のコンテキストモデルを使用して、シンタックス要素に関するＮ個以下の先行ビンを復号することができ、Ｎは、シンタックス要素に関するビンの最大可能数よりも小さい。加えて、ビデオデコーダ３０は、１つまたは複数のコンテキストモデルを使用して復号されなかったシンタックス要素に関する残存ビンをバイパス復号し得る。Ｎ個以下の先行ビンを復号することは、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）エントロピーコーダの正規復号エンジンを使用して、Ｎ個以下の先行ビンを復号することを備えることができ、残存ビンをバイパス復号することは、ＣＡＢＡＣエントロピーコーダのバイパス復号エンジンを使用して、残存ビンをバイパス復号することを備え得る。
【０１９７】
[0184]ビデオデコーダ３０は、復号されたビンに基づいてシンタックス要素を生成し、シンタックス要素によって表されるデルタＤＣ残差値に少なくとも部分的に基づいて、ＰＵを再構築することができる。シンタックス要素（たとえば、インターコーディングのためのｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１またはイントラコーディングのためのｄｅｐｔｈ＿ｄｃ＿ａｂｓ）は、ＰＵの１つまたは複数の区分のうちの１つの区分に対するデルタＤＣ残差値を表すことができる。ＰＵは、デルタＤＣ残差値および区分の予測されるサンプルに少なくとも部分的に基づいて、再構築され得る。予測される区分がイントラ予測されるとき、シンタックス要素は、ｄｅｐｔｈ＿ｄｃ＿ａｂｓシンタックス要素を備える。予測される区分がインター予測されるとき、シンタックス要素は、ｉｎｔｅｒ＿ｓｄｃ＿ｒｅｓｉ＿ａｂｓ＿ｍｉｎｕｓ１シンタックス要素を備える。いずれの場合も、デルタＤＣ残差値は、区分の平均ピクセル値と予測される区分の平均ピクセル値との間の差分を示す。
【０１９８】
[0185]ビデオエンコーダ２０の動作を参照して上で説明されたように、ビデオデコーダ３０は、次のようにシンタックス要素のバイナリ化によって生成されるビンを復号するように構成され得る。たとえば、ビンを生成するために、ｃＲｉｃｅＰａｒａｍ＝０による、短縮ライス（ＴＲ）コードによりバイナリ化されたプレフィックスビン列および０次指数ゴロム（ＥＧ０）コードによりバイナリ化されたサフィックスビン列の連結を使用して、シンタックス要素の値がバイナリ化され得、ＴＲコードのｃＭａｘ値はＮに等しい。別の例では、ビンを生成するために、ｃＲｉｃｅＰａｒａｍ＝０による、短縮ライス（ＴＲ）コードによりバイナリ化されたプレフィックスビン列およびｋ次指数ゴロム（ＥＧｋ）コードによりバイナリ化されたサフィックスビン列の連結を使用して、シンタックス要素の値がバイナリ化され得、ｋは０ではなく、ＴＲコードのｃＭａｘ値はＮに等しい。別の例では、ビンを生成するために、ｃＲｉｃｅＰａｒａｍ＝０による、短縮ライス（ＴＲ）コードによりバイナリ化されたプレフィックスビン列および固定長コードによりバイナリ化されたサフィックスビン列の連結を使用して、シンタックス要素の値がバイナリ化され得る。シンタックス要素の値がｃＭａｘ値よりも小さい場合、バイナリ化によってサフィックスビン列は生成されない。
【０１９９】
[0186]別の例として、ビンを生成するために、ｋ次指数ゴロム（ＥＧｋ）コードを使用して、シンタックス要素の値がバイナリ化され得る。いくつかの例では、ｋ＝０である。Ｎ個以下のビンを復号する際に、ビデオデコーダ３０は、０値を有する最初のビンがシンタックス要素のＮ個の先行ビンの中に位置する場合に、０値を有する最初のビンおよび０値を有する最初のビンの前の先行ビンだけを、１つまたは複数のコンテキストモデルを使用して復号することができる。０値を有する最初のビンがシンタックス要素のＮ個の先行ビンの中に位置しない場合に、ビデオデコーダ３０は、先行するＮ個のビンだけを、１つまたは複数のコンテキストモデルを使用して復号し得る。
【０２００】
[0187]いくつかの例では、ビデオデコーダ３０は、フラグまたは他のシンタックス情報を受信し、フラグまたは他のシンタックス情報が第１の値を有するときに、１つまたは複数のコンテキストモデルを使用して、Ｎ個以下の先行ビンを復号し得る。フラグまたは他のシンタックス情報が第２の値を有するときに、ビデオデコーダ３０は、フラグが第２の値を有するとき、１つまたは複数のコンテキストモデルを使用して、Ｎ個よりも多い先行ビンを復号し得る。たとえば、フラグまたは他のシンタックス情報が第２の値を有するとき、１つまたは複数のコンテキストモデルによりコーディングされるビンの数に対する制限がない。
【０２０１】
[0188]ビデオデコーダ３０は、いくつかの例では、同じコンテキストモデルを使用して、シンタックス要素のＮ個以下の先行ビンを復号するように構成され得る。代替的に、ビデオデコーダ３０は、異なるコンテキストモデルを使用して、シンタックス要素のＮ個以下の先行ビンのうちの少なくともいくつかを復号し得る。さらなる代替として、ビデオデコーダ３０は、同じコンテキストモデルを使用して、シンタックス要素のＮ個以下の先行ビンのうちの先行するＭ個を復号すること、ここにおいて、ＭはＮよりも小さい、と、バイパスコーディングを使用して、Ｍ個の先行ビンの後の残存ビン（ある場合）を復号することと、ができる。
【０２０２】
[0189]いくつかの例では、シンタックス要素の値は、値の全範囲よりも小さい範囲に切取られ、ビンは、切取られた値のバイナリ化によって生成される。たとえば、シンタックス要素の値は、バイナリ化が９個以下のビンを生成するように切取られ得る。
【０２０３】
[0190]本開示で説明された様々な正規およびバイパスＣＡＢＡＣコーディング技法は、その両方が一般にビデオコーダと呼ばれ得る、ビデオエンコーダ２０（図１および図５）および／またはビデオデコーダ３０（図１および図６）によって実行され得る。加えて、ビデオコーディングは一般に、適用可能な場合、ビデオ符号化および／またはビデオ復号を指し得る。
【０２０４】
[0191]本開示の技法は全般に３Ｄ−ＨＥＶＣに関して説明されたが、本技法はこのように限定されない。上で説明された技法は、３Ｄビデオコーディングのための他の現在の規格または将来の規格にも適用可能であり得る。たとえば、バイナリ化を含む、エントロピーコーディングのための本開示で説明された技法は、たとえば３Ｄビデオコーディングまたは他の用途のために、深度区分のためのデルタＤＣコーディングを伴う他の現在のまたは将来の規格にも適用可能であり得る。
【０２０５】
[0192]１つまたは複数の例では、本明細書で説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、１つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、またはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行されてよい。コンピュータ可読媒体は、たとえば、データ記憶媒体などの有形媒体、または、たとえば通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む通信媒体に対応する、コンピュータ可読記憶媒体を含み得る。このようにして、コンピュータ可読媒体は、一般に、（１）非一時的である有形のコンピュータ可読記憶媒体、または（２）信号もしくは搬送波のような通信媒体に対応し得る。データ記憶媒体は、本開示で説明される技法の実施のための命令、コードおよび／またはデータ構造を取り出すために、１つもしくは複数のコンピュータまたは１つもしくは複数のプロセッサによってアクセスされ得る、任意の利用可能な媒体であり得る。コンピュータプログラム製品は、コンピュータ可読媒体を含み得る。
【０２０６】
[0193]限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（登録商標）、ＣＤ−ＲＯＭもしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、フラッシュメモリ、または、命令もしくはデータ構造の形態の所望のプログラムコードを記憶するために使用されコンピュータによってアクセスされ得る任意の他の媒体を備え得る。また、任意の接続が、コンピュータ可読媒体と適切に呼ばれる。たとえば、命令が、ウェブサイト、サーバ、または他のリモートソースから、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。ただし、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時的媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用されるディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザーディスク（登録商標）（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）、およびブルーレイディスク（disc）を含み、ここで、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザーで光学的に再生する。上記の組合せも、コンピュータ可読媒体の範囲内に含まれるべきである。
【０２０７】
[0194]命令は、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、または他の等価な集積回路もしくはディスクリート論理回路のような、１つまたは複数のプロセッサによって実施され得る。したがって、本明細書で使用される「プロセッサ」という用語は、前述の構造のいずれかまたは本明細書で説明された技法の実装に適切な任意の他の構造を指し得る。加えて、いくつかの態様では、本明細書で説明された機能は、符号化および復号のために構成されるか、または複合コーデックに組み込まれる、専用のハードウェアモジュールおよび／またはソフトウェアモジュール内で提供され得る。また、本技法は、１つまたは複数の回路または論理素子において完全に実装され得る。
【０２０８】
[0195]本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）またはＩＣのセット（たとえば、チップセット）を含む、多種多様なデバイスまたは装置で実装され得る。様々なコンポーネント、モジュール、またはユニットは、開示されている技術を実行するように構成されたデバイスの機能的態様を強調するように本開示において説明されているが、異なるハードウェアユニットによる実現を必ずしも必要としない。そうではなく、上で説明されたように、様々なユニットは、コーデックハードウェアユニット中で組み合わせられるか、または上で説明された１つまたは複数のプロセッサを含む、適切なソフトウェアおよび／またはファームウェアとともに相互動作可能なハードウェアユニットの集合体によって提供され得る。
【０２０９】
[0196]様々な例が説明されてきた。これらおよび他の例は、以下の特許請求の範囲の範囲内にある。
【図１】
0006312854.tif 000010
【図２】
0006312854.tif 000011
【図３】
0006312854.tif 000012
【図４】
0006312854.tif 000013
【図５】
0006312854.tif 000014
【図６】
0006312854.tif 000015
【図７】
0006312854.tif 000016
【図８】
0006312854.tif 000017