(57)【特許請求の範囲】
【請求項１】
ビデオデータをコーディングする方法であって、前記方法は、
深度ルックアップテーブル（ＤＬＴ）の第１の深度値を決定することと、ここにおいて、前記第１の深度値が前記ビデオデータの第１のピクセルに関連する、
前記ＤＬＴの第２の深度値を決定することと、ここにおいて、前記第２の深度値が前記ビデオデータの第２のピクセルに関連する、
前記第１の深度値に対して前記第２の深度値をコーディングすることを含む、前記ＤＬＴをコーディングすることと
を備え、
ここにおいて、前記第２の深度値が前記ＤＬＴ中の前記第１の深度値に連続的に続き、前記第２の深度値をコーディングすることが、前記第２の深度値と前記第１の深度値との間の差分を決定することと、前記差分値をコーディングすることとを備える、方法。
【請求項２】
前記第２の深度値が前記ＤＬＴ中の前記第１の深度値に連続的に続き、前記方法は、
前記ビデオデータの第３のピクセルに関連する前記ＤＬＴの第３の深度値を決定することと、ここにおいて、前記第３の深度値が前記ＤＬＴ中の前記第２の深度値に連続的に続く、
前記第３の深度値と前記第２の深度値との間の差分値をコーディングすることと
をさらに備える、請求項１に記載の方法。
【請求項３】
前記ＤＬＴが、前記第１の深度値と前記第２の深度値とを含む複数の深度値を含み、前記方法が、
前記複数の深度値のうちの連続する深度値間の差分値を決定することと、
前記差分値のうちの最大差分値に基づいて前記ＤＬＴの前記差分値の範囲を決定することと
をさらに備え、
ここにおいて、前記第２の深度値のコーディングすることが、前記差分値の範囲に基づいて前記第２の深度値をコーディングすることを備える、請求項１に記載の方法。
【請求項４】
前記ＤＬＴが、前記第１の深度値と前記第２の深度値とを含む複数の深度値を含み、前記方法は、
前記複数の深度値のうちの連続する深度値間の差分値を決定することと、
前記差分値のすべてが等しいときに、前記差分値のすべてが等しいという指示をコーディングすることと
をさらに備え、
ここにおいて、前記第１の深度値に対して前記第２の深度値をコーディングすることが、前記差分値をコーディングすることを備える、請求項１に記載の方法。
【請求項５】
前記ＤＬＴをコーディングすることが、前記ＤＬＴを符号化することを備え、前記ＤＬＴを符号化することが、符号化ビットストリーム中の前記ＤＬＴを表すデータを符号化することを備える、請求項１に記載の方法。
【請求項６】
前記ＤＬＴをコーディングすることが、前記ＤＬＴを復号することを備え、前記ＤＬＴを復号することが、符号化ビットストリームからの前記ＤＬＴを表すデータを復号することを備える、請求項１に記載の方法。
【請求項７】
ビデオデータをコーディングするための装置であって、前記装置は、
深度ルックアップテーブル（ＤＬＴ）の第１の深度値を決定するための手段と、ここにおいて、前記第１の深度値が前記ビデオデータの第１のピクセルに関連する、
前記ＤＬＴの第２の深度値を決定するための手段と、ここにおいて、前記第２の深度値が、前記ビデオデータの第２のピクセルに関連する、
前記第１の深度値に対して前記第２の深度値をコーディングすることを含む、前記ＤＬＴをコーディングするための手段と
を備え、
ここにおいて、前記第２の深度値が前記ＤＬＴ中の前記第１の深度値に連続的に続き、前記第２の深度値をコーディングための手段が、前記第２の深度値と前記第１の深度値との間の差分を決定するための手段と、前記差分値をコーディングするための手段とを備える、装置。
【請求項８】
前記第２の深度値が前記ＤＬＴ中の前記第１の深度値に連続的に続き、前記装置が、
前記ビデオデータの第３のピクセルに関連する前記ＤＬＴの第３の深度値を決定するための手段と、ここにおいて、前記第３の深度値が前記ＤＬＴ中の前記第２の深度値に連続的に続く、
前記第３の深度値と前記第２の深度値との間の差分値をコーディングするための手段と
をさらに備える、請求項７に記載の装置。
【請求項９】
前記ＤＬＴが、前記第１の深度値と前記第２の深度値とを含む複数の深度値を含み、前記装置が、
前記複数の深度値のうちの連続する深度値間の差分値を決定するための手段と、
前記差分値のうちの最大差分値に基づいて前記ＤＬＴの前記差分値の範囲を決定するための手段と、
をさらに備え、
前記第２の深度値をコーディングするための手段が、前記差分値の範囲に基づいて前記第２の深度値をコーディングするための手段を備える、
請求項７に記載の装置。
【請求項１０】
前記ＤＬＴが、前記第１の深度値と前記第２の深度値とを含む複数の深度値を含み、前記装置が、
前記複数の深度値のうちの連続する深度値間の差分値を決定するための手段と、
前記差分値のすべてが等しいとき、前記差分値のすべてが等しいという指示をコーディングするための手段と、
前記差分値をコーディングすることによって、前記第１の深度値に対して前記第２の深度値をコーディングするための手段と
をさらに備える、請求項７に記載の装置。
【請求項１１】
前記ＤＬＴをコーディングするために、固定長コードを用いて前記第１の深度値と前記第２の深度値とをコーディングするための手段をさらに備える、請求項７に記載の装置。
【請求項１２】
前記ＤＬＴをコーディングするために、前記第１の深度値と前記第２の深度値とが同じビット長を有するように、前記第１の深度値と前記第２の深度値とをコーディングするための手段をさらに備える、請求項７に記載の装置。
【請求項１３】
前記ＤＬＴをコーディングするために、符号化ビットストリーム中の前記ＤＬＴを表すデータを符号化することによって、前記ＤＬＴを符号化するための手段をさらに備える、請求項７に記載の装置。
【請求項１４】
前記ＤＬＴをコーディングするために、符号化ビットストリームからの前記ＤＬＴを表すデータを復号することによって、前記ＤＬＴを復号するための手段をさらに備える、請求項７に記載の装置。
【請求項１５】
命令を記憶した非一時的コンピュータ可読記憶媒体であって、前記命令は、実行されたとき、１つまたは複数のプロセッサに、請求項１乃至６のうちのいずれか１項に記載の方法を行うことを行わせる、非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]本出願は、各々の内容全体が参照により本明細書に組み込まれる、２０１３年３月５日に出願された米国仮特許出願第６１／７７３，０８９号、２０１３年３月２７日に出願された米国仮出願第６１／８０５，７７１号、および２０１３年４月１２日に出願された米国仮特許出願第６１／８１１，３４１号の利益を主張する。
【０００２】
[0002]本開示は、ビデオコーディングに関する。
【背景技術】
【０００３】
[0003]デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップまたはデスクトップコンピュータ、タブレットコンピュータ、電子ブックリーダー、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラーまたは衛星無線電話、いわゆる「スマートフォン」、ビデオ遠隔会議デバイス、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスに組み込まれ得る。デジタルビデオデバイスは、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４、Ｐａｒｔ１０、アドバンストビデオコーディング（ＡＶＣ：Advanced Video Coding）、高効率ビデオコーディング（ＨＥＶＣ：High Efficiency Video Coding）規格によって定義された規格、および現在開発中のそのような規格の拡張に記載されているビデオ圧縮技法など、ビデオ圧縮技法を実装する。ビデオデバイスは、そのようなビデオ圧縮技法を実装することによって、デジタルビデオ情報をより効率的に送信、受信、符号化、復号、および／または記憶し得る。
【０００４】
[0004]ビデオ圧縮技法は、ビデオシーケンスに固有の冗長性を低減または除去するために空間的（イントラピクチャ）予測および／または時間的（インターピクチャ）予測を実行する。ブロックベースのビデオコーディングの場合、ビデオスライス（すなわち、ピクチャまたはピクチャの一部分）は、ツリーブロック、コーディングユニット（ＣＵ）および／またはコーディングノードと呼ばれることもあるビデオブロックに区分され得る。ピクチャのイントラコード化（Ｉ）スライス中のビデオブロックは、同じピクチャの中の隣接ブロック内の参照サンプルに対する空間予測を使用して符号化される。ピクチャのインターコード化（ＰまたはＢ）スライス中のビデオブロックは、同じピクチャの中の隣接ブロック中の参照サンプルに対する空間予測、または他の参照ピクチャ中の参照サンプルに対する時間予測を使用し得る。
【０００５】
[0005]空間的予測または時間的予測は、コーディングされるべきブロックのための予測ブロックを生じる。残差データは、コーディングされるべき元のブロックと予測ブロックとの間のピクセル差分を表す。インターコード化ブロックは、予測ブロックを形成する参照サンプルのブロックを指す動きベクトルと、コード化ブロックと予測ブロックとの間の差分を示す残差データとに従って符号化される。イントラコード化ブロックは、イントラコーディングモードと残差データとに従って符号化される。さらなる圧縮のために、残差データは空間領域から変換領域に変換されて、残差変換係数が得られ得、その残差変換係数は、次いで量子化され得る。最初は２次元アレイに構成される量子化変換係数は、変換係数の１次元ベクトルを生成するために走査され得、なお一層の圧縮を達成するためにエントロピーコーディングが適用され得る。
【発明の概要】
【０００６】
[0006]本開示の技法は、深度ルックアップテーブル（ＤＬＴ：depth lookup table）のシグナリングおよび予測に関連する技法を含む。たとえば、３次元（３Ｄ）ビデオコーディングのいくつかの事例では、ピクチャのピクセルに関連する深度値を表すために深度マップが使用され得る。深度値はＤＬＴ中に編成され得、ＤＬＴの各深度値は関連するインデックス値を有する。本開示の態様によれば、ＤＬＴの１つまたは複数の値がＤＬＴの１つまたは複数の他の深度値に対してコーディングされ得、それによって、実際の深度値をコーディングすることに対してビット節約を達成する。追加または代替として、本開示の態様によれば、２つ以上のビューのＤＬＴ中に現れる深度値の冗長性を低減するために、ビュー間ＤＬＴ予測が実行され得る。
【０００７】
[0007]一例では、本開示では、ビデオデータをコーディングする方法について説明し、本方法は、深度ルックアップテーブル（ＤＬＴ）の第１の深度値を決定することと、ここにおいて、第１の深度値がビデオデータの第１のピクセルに関連する、ＤＬＴの第２の深度値を決定することと、ここにおいて、第２の深度値がビデオデータの第２のピクセルに関連する、第１の深度値に対して第２の深度値をコーディングすることを含むＤＬＴをコーディングすることとを備える。
【０００８】
[0008]別の例では、本開示では、ビデオデータを記憶するメモリと、深度ルックアップテーブル（ＤＬＴ）の第１の深度値を決定することと、ここにおいて、第１の深度値がビデオデータの第１のピクセルに関連する、ＤＬＴの第２の深度値を決定することと、ここにおいて、第２の深度値がビデオデータの第２のピクセルに関連する、第１の深度値に対して第２の深度値をコーディングすることを含むＤＬＴをコーディングすることとを行うように構成された１つまたは複数のプロセッサとを含む、ビデオデータをコーディングするための装置について説明する。
【０００９】
[0009]別の例では、本開示では、深度ルックアップテーブル（ＤＬＴ）の第１の深度値を決定するための手段と、ここにおいて、第１の深度値がビデオデータの第１のピクセルに関連する、ＤＬＴの第２の深度値を決定するための手段と、ここにおいて、第２の深度値がビデオデータの第２のピクセルに関連する、第１の深度値に対して第２の深度値をコーディングすることを含むＤＬＴをコーディングするための手段とを含む、ビデオデータをコーディングするための装置について説明する。
【００１０】
[0010]別の例では、本開示では、実行されたとき、１つまたは複数のプロセッサに、深度ルックアップテーブル（ＤＬＴ）の第１の深度値を決定することと、ここにおいて、第１の深度値がビデオデータの第１のピクセルに関連する、ＤＬＴの第２の深度値を決定することと、ここにおいて、第２の深度値がビデオデータの第２のピクセルに関連する、第１の深度値に対して第２の深度値をコーディングすることを含むＤＬＴをコーディングすることとを行わせる、命令を記憶した非一時的コンピュータ可読記憶媒体について説明する。
【００１１】
[0011]本開示の１つまたは複数の例の詳細が、添付の図面および以下の説明に記載される。他の特徴、目的、および利点は、説明、図面、および特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１２】
【図１】[0012]深度コーディングのための本開示の技法を利用し得る例示的なビデオ符号化および復号システムを示すブロック図。
【図２】[0113]本開示に一致する深度コーディングのための技法を実装し得るビデオエンコーダの一例を示すブロック図。
【図３】[0014]本開示に一致する深度コーディングのための技法を実装し得るビデオデコーダの一例を示すブロック図。
【図４】[0015]方向性イントラ予測モードに関連する予測方向を概して示す図。
【図５Ａ】[0016]深度モデリングモード（ＤＭＭ：depth modeling mode）の例を示す概念図。
【図５Ｂ】深度モデリングモード（ＤＭＭ）の例を示す概念図。
【図６】[0017]領域境界チェーンコーディング（region boundary chain coding）モードを示す概念図。
【図７】[0018]簡略深度コーディング（ＳＤＣ：simplified depth coding）を使用したイントラコーディング深度情報を示すブロック図。
【図８】[0019]本開示の態様による、深度ルックアップテーブル（ＤＬＴ）を符号化するためのプロセスを示す流れ図。
【図９】[0020]本開示の態様による、ＤＬＴを復号するためのプロセスを示す流れ図。
【発明を実施するための形態】
【００１３】
[0021]一般に、本開示の技法は３次元（３Ｄ）ビデオコーディングに関する。すなわち、これらの技法を使用してコーディングされたビデオデータは、３次元効果を生成するためにレンダリングされ、表示され得る。たとえば、異なるビューの２つの画像（すなわち、わずかに異なる水平位置を有する２つのカメラパースペクティブに対応する）は、一方の画像が閲覧者の左眼によって見られ、他方の画像が閲覧者の右眼によって見られるように、実質的に同時に表示され得る。
【００１４】
[0022]３Ｄ効果は、たとえば、立体視（stereoscopic）ディスプレイまたは自動立体視（autostereoscopic）ディスプレイを使用して達成され得る。立体視ディスプレイは、２つの画像を相応にフィルタ処理するアイウェア（eyewear）とともに使用され得る。たとえば、パッシブ眼鏡は、正しい眼が正しい画像を閲覧することを保証するために偏光レンズまたは異なるカラーレンズを使用して画像をフィルタ処理し得る。アクティブ眼鏡は、別の例として、立体視ディスプレイと協調して交互のレンズを迅速に閉じ得、それにより、左眼画像を表示することと右眼画像を表示することとを交互に行い得る。自動立体視ディスプレイは、眼鏡が必要とされないような方法で２つの画像を表示する。たとえば、自動立体視ディスプレイは、各画像が閲覧者の適切な眼に投影されるように構成されたミラーまたはプリズムを含み得る。
【００１５】
[0023]本開示の技法は、テクスチャデータと深度データとをコーディングすることによって３Ｄビデオデータをコーディングすることに関する。概して、「テクスチャ」という用語は、画像のルミナンス（すなわち、輝度または「ルーマ」）値と画像のクロミナンス（すなわち、色または「クロマ」）値とを説明するために使用される。いくつかの例では、テクスチャ画像は、１セットのルミナンスデータと、青色相（Ｃｂ）および赤色相（Ｃｒ）のための２セットのクロミナンスデータとを含み得る。４：２：２または４：２：０などの特定のクロマフォーマットでは、クロマデータは、ルーマデータに関してダウンサンプリングされる。すなわち、クロミナンスピクセルの空間解像度は、対応するルミナンスピクセルの空間解像度よりも低く、たとえば、ルミナンス解像度の１／２または１／４であり得る。
【００１６】
[0024]深度データは、概して、対応するテクスチャデータの深度値を表す。たとえば、深度画像は、各々が対応するテクスチャデータの深度を表す深度ピクセルのセットを含み得る。深度データは、対応するテクスチャデータの水平ディスパリティを決定するために使用され得る。したがって、テクスチャデータと深度データとを受信するデバイスは、一方のビュー（たとえば、左眼ビュー）のための第１のテクスチャ画像を表示し、深度値に基づいて決定された水平ディスパリティ値だけ第１の画像のピクセル値をオフセットすることによって、他方のビュー（たとえば、右眼ビュー）のための第２のテクスチャ画像を生成するように第１のテクスチャ画像を変更するために深度データを使用し得る。概して、水平視差（または単に「視差」）は、右ビュー中の対応するピクセルに対する第１のビュー中のピクセルの水平空間オフセットを表し、２つのピクセルは、２つのビュー中で表される同じオブジェクトの同じ部分に対応する。
【００１７】
[0025]さらに他の例では、画像について定義されたゼロディスパリティ平面に対して所与のピクセルに関連する深度が定義されるように、画像平面に直交するｚ次元におけるピクセルについて深度データが定義され得る。そのような深度は、ピクセルを表示するための水平視差を作成するために使用され得、その結果として、ピクセルは、０視差平面に対するピクセルのｚ次元深度値に応じて、左眼と右眼とで異なるように表示される。
【００１８】
[0026]ゼロディスパリティ平面は、ビデオシーケンスの異なる部分に対して変化し得、ゼロディスパリティ平面に対する深度の量も変化し得る。ゼロディスパリティ平面上に位置するピクセルは、左眼と右眼とに対して同様に定義され得る。ゼロディスパリティ平面の前に位置するピクセルは、ピクセルが画像平面に直交するｚ方向の画像から出てくるように見える知覚を作成するように、（たとえば、水平ディスパリティを用いて）左眼と右眼とに対して異なるロケーションで表示され得る。０視差平面の後に位置するピクセルは、深度のわずかな知覚まで、わずかなぼかしとともに表示され得るか、または（たとえば、０視差平面の前に位置するピクセルの水平視差とは反対の水平視差を用いて）左眼と右眼とに対して異なるロケーションで表示され得る。他の多くの技法も、画像の深度データを伝達または定義するために使用され得る。
【００１９】
[0027]２次元ビデオデータは、概して、その各々が特定の時間インスタンスに対応する、個別ピクチャのシーケンスとしてコーディングされる。すなわち、各ピクチャは、シーケンス中の他の画像の再生時間に対する関連する再生時間を有する。これらのピクチャはテクスチャピクチャまたはテクスチャ画像と考えられ得る。深度ベースの３Ｄビデオコーディングでは、シーケンス中の各テクスチャピクチャは深度マップにも対応し得る。すなわち、テクスチャピクチャに対応する深度マップは、対応するテクスチャピクチャのための深度データを表す。マルチビュービデオデータは、様々な異なるビューのためのデータを含み得、各ビューは、テクスチャピクチャと、対応する深度ピクチャとのそれぞれのシーケンスを含み得る。
【００２０】
[0028]上述したように、画像は特定の時間インスタンスに対応し得る。ビデオデータは、アクセスユニットのシーケンスを使用して表され得、各アクセスユニットは、特定の時間インスタンスに対応するすべてのデータを含む。したがって、たとえば、マルチビュービデオデータ＋深度の場合、共通時間インスタンスについての各ビューからのテクスチャ画像＋テクスチャ画像の各々についての深度マップはすべて、特定のアクセスユニット内に含まれ得る。アクセスユニットは、テクスチャ画像に対応するテクスチャコンポーネントのためのデータと、深度マップに対応する深度コンポーネントのためのデータとを含み得る。
【００２１】
[0029]このようにして、３Ｄビデオデータは、キャプチャまたは生成されたビュー（テクスチャ）が対応する深度マップに関連する、マルチビュービデオ＋深度フォーマットを使用して表され得る。その上、３Ｄビデオコーディングでは、テクスチャと深度マップとはコーディングされ、３Ｄビデオビットストリーム中に多重化され得る。深度マップはグレースケール画像としてコーディングされ得、深度マップの「ルーマ」サンプル（すなわち、ピクセル）は深度値を表す。従来のイントラコーディング方法およびインターコーディング方法は深度マップコーディングのために適用され得る。
【００２２】
[0030]深度マップは、通常、シャープエッジと一定のエリアとを含み、深度マップ中のエッジは、一般に、対応するテクスチャデータとの強い相関を提示する。テクスチャと対応する深度との間の異なる統計値および相関により、異なるコーディング方式が、２Ｄビデオコーデックに基づく深度マップのために設計されており、設計され続ける。
【００２３】
[0031]深度マップコーディングに特有であるいくつかのコーディング方式は、以下でより詳細に説明するように、深度マップのブロックを様々な予測領域に区分することに関する。たとえば、深度マップのブロックは、以下でより詳細に説明するように、ウェッジレット（Wedgelet）パターンまたは輪郭（Contour）パターンを使用して区分され得る。概して、ウェッジレットパターンは、深度マップデータのブロックを通して描画される任意のラインによって画定されるが、輪郭区分では、深度ブロックが２つの不規則形状領域に区分され得る。
【００２４】
[0032]本開示の技法は、一般に深度情報をコーディングすることに関し、高効率ビデオコーディング（ＨＥＶＣ）規格とともに適用可能であり得る。たとえば、ジョイントビデオチーム（ＪＶＴ：Joint Video Team）は、最近、前に開発されたビデオコーディング規格よりも高い効率を与えるＨＥＶＣのベースバージョン（２Ｄ）を開発した。３Ｄビデオコーディング共同研究部会（ＪＣＴ−３Ｖ：Joint Collaboration Team on 3D Video Coding）は、現在、ＨＥＶＣへの拡張として２つの３次元ビデオ（３ＤＶ）ソリューションの研究を進めている。一例は、ＭＶ−ＨＥＶＣと呼ばれるＨＥＶＣのマルチビュー拡張を含む。別の例は深度向上３Ｄビデオ拡張（３Ｄ−ＨＥＶＣ）を含む。３Ｄ−ＨＥＶＣのための基準ソフトウェア３Ｄ−ＨＴＭバージョン５．１の一例がhttps://hevc.hhi.fraunhofer.de/svn/svn_3DVCSoftware/tags/HTM-5.1/において公的に入手可能である。ソフトウェア説明書がhttp://phenix.it-sudparis.eu/jct2/doc_end_user/documents/2_Shanghai/wg11/JCT3V-B1005-v1.zip（文書番号Ｂ１００５）から入手可能である。
【００２５】
[0033]３Ｄ−ＨＥＶＣでは、各アクセスユニットが複数のビューコンポーネントを含み、各々が、一意のビューｉｄ、またはビュー順序インデックス、またはレイヤｉｄを含んでいる。ビューコンポーネントはテクスチャビューコンポーネントならびに深度ビューコンポーネントを含んでいる。テクスチャビューコンポーネントは１つまたは複数のテクスチャスライスとしてコーディングされ得、深度ビューコンポーネントは１つまたは複数の深度スライスとしてコーディングされ得る。
【００２６】
[0034]いくつかの事例では、深度情報がイントラコーディングされ得、それは、所与のピクチャ内の空間的冗長性を低減または除去するために空間予測に依拠する。たとえば、３Ｄ−ＨＥＶＣでは、ビデオコーダ（たとえば、ビデオエンコーダまたはビデオデコーダ）は、深度スライスのイントラ予測ユニットをコーディングするためにベース（２Ｄ）ＨＥＶＣ規格からのイントラ予測モードを使用し得る。ＨＥＶＣ規格のイントラモードについて、図４に関して以下でより詳細に説明する。別の例では、ビデオコーダは、深度スライスのイントラ予測ユニットをコーディングするために深度モデリングモード（ＤＭＭ）を使用し得る。３Ｄ−ＨＥＶＣのＤＭＭについて、図５Ａおよび図５Ｂに関して以下でより詳細に説明する。別の例では、ビデオコーダは、深度スライスのイントラ予測ユニットをコーディングするために領域境界チェーンコーディングを使用し得る。領域境界チェーンコーディングについて、図６に関して以下でより詳細に説明する。ビデオコーダは、残差深度値を生成するために上記のイントラモード（たとえば、ＨＥＶＣイントラモード、ＤＭＭ、および／または領域境界チェーンコーディング）を使用し得る。ビデオコーダは、次いで、以下でより詳細に説明するように、残差深度値を変換し、量子化し得る。
【００２７】
[0035]いくつかの事例では、ビデオコーダは、深度スライスのイントラ予測ユニットをコーディングするために簡略深度コーディング（ＳＤＣ）モードを使用し得る。上記で説明したイントラモードコーディング方式とは対照的に、ＳＤＣモードを使用するとき、ビデオコーダは残差深度値を変換または量子化しない。むしろ、いくつかの例では、ビデオコーダは、各パーティションの残差深度値を直接コーディングし得る。そのような例では、ビデオコーダは、現在パーティションの平均値から（たとえば、隣接サンプルに基づいて生成された）予測子を減算することによって、残差深度値を計算し得る。
【００２８】
[0036]他の例では、残差値をコーディングする代わりに、ビデオコーダは、深度ルックアップテーブル（ＤＬＴ）からのマッピングされたインデックス差分をコーディングし得る。たとえば、ビデオエンコーダは、現在パーティションの平均値のインデックスから予測子のインデックスを減算することによって、インデックス差分を計算し得る。ビデオデコーダは、復号されたインデックス差分と予測子のインデックスとの和を計算し得、ＤＬＴに基づいて和を深度値にマッピングし得る。
【００２９】
[0037]このようにして、ＤＬＴは元の深度マップの深度値をマッピングし得る。ＤＬＴは、ピクチャのフルシーケンスを符号化する前に最初のイントラ期間のフレームを分析することによって構成され得る。いくつかの事例では、ビデオコーダは、増加するインデックスをもつＤＬＴに値を挿入する前に、すべての有効深度値を昇順で分類し得る。いくつかの事例では、予測子の値または平均値はＤＬＴ中に含まれず、値はインデックスｉにマッピングされ得、平均値−ＤＬＴ中のｉ番目のエントリの値によって除算された予測子値の絶対値は最小値である。
【００３０】
[0038]ビデオコーダは、随意のコーディングツールとしてＤＬＴを使用し得る。たとえば、ビデオエンコーダは、分析段において元の深度マップ中に０から最大深度値（たとえば、ＭＡＸ＿ＤＥＰＴＨ＿ＶＡＬＵＥ、８ビット深度サンプルの場合は２５５）までの値の１／２よりも多くが現れる場合、ＤＬＴを使用しないことがある。他の場合、ビデオエンコーダは、シーケンスまたはビデオパラメータセットなど、パラメータセット中にＤＬＴをコーディングし得る。いくつかの事例では、有効深度値の数が、最初に指数ゴロム（Ｅｘｐゴロム）コードを使用してコーディングされ得る。各有効深度値は、次いで、Ｅｘｐゴロムコードを用いてコーディングされ得る。
【００３１】
[0039]上記のバージョン５．１など、１つの例示的な３Ｄ−ＨＥＶＣ設計によれば、予測ＤＣ値を導出するとき、ビデオコーダ（たとえば、ビデオエンコーダまたはビデオデコーダ）は、深度値の上昇特性を考慮することなしに深度値を直接コーディングし得、それは効率的でないことがある。さらに、異なるビューの深度値間の関係式はバージョン５．１では利用されない。したがって、冗長な深度値をシグナリングすることに対して多くのビットが浪費され得る。その上、シーケンスパラメータセット（ＳＰＳ：sequence parameter set）またはビデオパラメータセット（ＶＰＳ：video parameter set）のいずれか中にＤＬＴをシグナリングすることは、１つのシーケンス／ビュー内にシーン変化があるときに効率的でないことがある。さらに、より短いコードをもつ深度値がより高い出現確率を有するという仮定がないので、指数ゴロムコードは、深度値をコーディングするときに非効率的であることがある。
【００３２】
[0040]本開示の態様は、一般にＤＬＴシグナリングに関し、特定のコーディング規格に限定されることなしに、上記で３Ｄ−ＨＥＶＣに関して説明した問題のうちの１つまたは複数に対処するために実装され得る。たとえば、本開示のいくつかの態様によれば、ＤＬＴの深度値がＤＬＴの別の深度値に対して予測され、コーディングされ得る。一例では、説明の目的で、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中のｊ番目のエントリである深度値がｄｌｔ＿Ｄ［ｉ］［ｊ］によって示されると仮定する。この例では、第１の有効深度値（たとえば、ｄｌｔ＿Ｄ［ｉ］［０］）がビットストリーム中に直接シグナリングされ得る。ＤＬＴの残りの深度値は、ＤＬＴ中の前の深度値に基づいて差分的にコーディングされ得る（たとえば、ｄｌｔ＿Ｄ［ｉ］［ｊ］−ｄｌｔ＿Ｄ［ｉ］［ｊ−１］）。このようにして、ＤＬＴの第２の深度値（ｄｌｔ＿Ｄ［ｉ］［ｊ−１］）はＤＬＴの第１の値（ｄｌｔ＿Ｄ［ｉ］［ｊ］）に対してコーディングされ得る。
【００３３】
[0041]別の例では、本開示の態様によれば、ＤＬＴの深度値がビュー間で予測され得る、すなわち、ビュー間ＤＬＴ予測。この例では、ビデオコーダは、あるビューのＤＬＴ値を第２の異なるビュー中のＤＬＴ値に対してコーディングし得る。たとえば、ベースビューは、深度値のセットを有する関連するＤＬＴを含み得る。第２の非ベースビューは、この例では第２のＤＬＴと呼ばれる、深度値のセットを有するそれ自体の関連するＤＬＴを含み得る。本開示の態様によれば、第２のＤＬＴの値は、ベースビューのためのＤＬＴに対してコーディングされ得る。たとえば、第２のＤＬＴの実際の値がシグナリングされる必要がないように、１つまたは複数のシンタックス要素は、第２のＤＬＴの値がベースビューＤＬＴ中に現れることを示し得る。
【００３４】
[0042]このようにして、本技法は、深度コーディングのためのビットストリーム中に含まれるデータの量を低減し得る。たとえば、本開示の技法は、ＤＬＴに関連する冗長性を低減し得、それによって、符号化ビットストリーム中に深度値をシグナリングするために必要とされるビット数を低減する。
【００３５】
[0043]図１は、深度コーディングのための本開示の技法を利用し得る例示的なビデオ符号化および復号システム１０を示すブロック図である。図１に示されているように、システム１０は、宛先デバイス１４によって後で復号されるべき符号化ビデオデータを生成するソースデバイス１２を含む。特に、ソースデバイス１２は、符号化ビデオが宛先デバイス１４によってアクセスされ得るように、符号化ビデオデータをコンピュータ可読媒体１６に記憶し得る。ソースデバイス１２および宛先デバイス１４は、デスクトップコンピュータ、ノートブック（すなわち、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスのいずれかを含み得る。場合によっては、ソースデバイス１２および宛先デバイス１４は、ワイヤレス通信のために装備され得る。
【００３６】
[0044]上述のように、宛先デバイス１４は、コンピュータ可読媒体１６に記憶された復号されるべき符号化ビデオデータにアクセスし得る。コンピュータ可読媒体１６は、符号化ビデオデータをソースデバイス１２から宛先デバイス１４に移動することが可能な任意のタイプの非一時的媒体またはデバイスを含み得る。一例では、コンピュータ可読媒体１６は、ソースデバイス１２が、符号化ビデオデータをリアルタイムで宛先デバイス１４に直接送信することを可能にするための通信媒体を備え得る。
【００３７】
[0045]符号化ビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され、宛先デバイス１４に送信され得る。通信媒体は、無線周波数（ＲＦ）スペクトルまたは１つまたは複数の物理伝送線路など、任意のワイヤレスまたはワイヤード通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信媒体は、ソースデバイス１２から宛先デバイス１４への通信を可能にするために有用であり得るルータ、スイッチ、基地局、または任意の他の機器を含み得る。
【００３８】
[0046]いくつかの例では、コンピュータ可読媒体１６がストレージデバイスを含むように、符号化データは出力インターフェース２２からストレージデバイスに出力され得る。同様に、符号化データは入力インターフェース２８によってストレージデバイスからアクセスされ得る。ストレージデバイスは、ハードドライブ、Ｂｌｕ−ｒａｙ（登録商標）ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュメモリ、揮発性または不揮発性メモリ、あるいは符号化ビデオデータを記憶するための任意の他の好適なデジタル記憶媒体など、様々な分散されたまたはローカルにアクセスされるデータ記憶媒体のいずれかを含み得る。さらなる一例では、ストレージデバイスは、ソースデバイス１２によって生成された符号化ビデオを記憶し得るファイルサーバまたは別の中間ストレージデバイスに対応し得る。
【００３９】
[0047] 宛先デバイス１４は、ストリーミングまたはダウンロードを介して、ストレージデバイスから記憶されたビデオデータにアクセスし得る。ファイルサーバは、符号化ビデオデータを記憶し、その符号化ビデオデータを宛先デバイス１４に送信することが可能な任意のタイプのサーバであり得る。例示的なファイルサーバとしては、（たとえば、ウェブサイト用の）ウェブサーバ、ＦＴＰサーバ、ネットワーク接続ストレージ（ＮＡＳ）デバイス、またはローカルディスクドライブがある。宛先デバイス１４は、インターネット接続を含む、任意の標準のデータ接続を介して符号化ビデオデータにアクセスし得る。これは、ファイルサーバに記憶された符号化ビデオデータにアクセスするのに好適であるワイヤレスチャネル（たとえば、Ｗｉ−Ｆｉ（登録商標）接続）、ワイヤード接続（たとえば、ＤＳＬ、ケーブルモデムなど）、または両方の組合せを含み得る。ストレージデバイスからの符号化ビデオデータの送信は、ストリーミング送信、ダウンロード送信、またはそれらの組合せであり得る。
【００４０】
[0048]本開示の技法は、必ずしもワイヤレス適用例または設定に限定されるとは限らない。本技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、動的適応ストリーミングオーバーＨＴＴＰ（ＤＡＳＨ）などのインターネットストリーミングビデオ送信、データ記憶媒体に符号化されたデジタルビデオ、データ記憶媒体に記憶されたデジタルビデオの復号、または他の適用例など、様々なマルチメディア適用例のいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、システム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、および／またはビデオテレフォニーなどの適用例をサポートするために、一方向または双方向のビデオ送信をサポートするように構成され得る。
【００４１】
[0049]図１の例では、ソースデバイス１２は、ビデオソース１８と、ビデオエンコーダ２０と、出力インターフェース２２とを含む。宛先デバイス１４は、入力インターフェース２８と、ビデオデコーダ３０と、ディスプレイデバイス３２とを含む。本開示によれば、ソースデバイス１２のビデオエンコーダ２０は、マルチビューコーディングにおける動きベクトル予測のための技法を適用するように構成され得る。他の例では、ソースデバイスおよび宛先デバイスは、他のコンポーネントまたは構成を含み得る。たとえば、ソースデバイス１２は、外部カメラなどの外部ビデオソース１８からビデオデータを受信し得る。同様に、宛先デバイス１４は、集積ディスプレイデバイスを含むのではなく、外部ディスプレイデバイスとインターフェースし得る。
【００４２】
[0050]図１の図示のシステム１０は一例にすぎない。深度コーディングのための技法は、任意のデジタルビデオ符号化および／または復号デバイスによって実行され得る。概して、本開示の技法はビデオ符号化デバイスによって実行されるが、本技法は、一般に「コーデック」と呼ばれるビデオエンコーダ／デコーダによっても実行され得る。その上、本開示の技法は、ビデオプリプロセッサによっても実行され得る。ソースデバイス１２および宛先デバイス１４は、ソースデバイス１２が宛先デバイス１４に送信するためのコード化ビデオデータを生成するような、コーディングデバイスの例にすぎない。いくつかの例では、デバイス１２、１４は、デバイス１２、１４の各々がビデオ符号化構成要素とビデオ復号構成要素とを含むように、実質的に対称的に動作し得る。したがって、システム１０は、たとえば、ビデオストリーミング、ビデオ再生、ビデオブロードキャスト、またはビデオテレフォニーのためのビデオデバイス１２とビデオデバイス１４の間の一方向または双方向のビデオ送信をサポートし得る。
【００４３】
[0051]ソースデバイス１２のビデオソース１８は、ビデオカメラなどのビデオキャプチャデバイス、前にキャプチャされたビデオを含んでいるビデオアーカイブ、および／またはビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェースを含み得る。さらなる代替として、ビデオソース１８は、ソースビデオとしてのコンピュータグラフィックスベースのデータ、またはライブビデオとアーカイブビデオとコンピュータ生成ビデオとの組合せを生成し得る。場合によっては、ビデオソース１８がビデオカメラである場合、ソースデバイス１２および宛先デバイス１４は、いわゆるカメラフォンまたはビデオフォンを形成し得る。ただし、上述のように、本開示で説明する技法は、概してビデオコーディングに適用可能であり得、ワイヤレスおよび／またはワイヤード適用例に適用され得る。各場合において、キャプチャされたビデオ、プリキャプチャされたビデオ、またはコンピュータ生成ビデオは、ビデオエンコーダ２０によって符号化され得る。符号化ビデオ情報は、次いで、出力インターフェース２２によってコンピュータ可読媒体１６上に出力され得る。
【００４４】
[0052]コンピュータ可読媒体１６は、ワイヤレスブロードキャストまたはワイヤードネットワーク送信などの一時媒体、あるいはハードディスク、フラッシュドライブ、コンパクトディスク、デジタルビデオディスク、Ｂｌｕ−ｒａｙディスク、または他のコンピュータ可読媒体などの記憶媒体（すなわち、非一時的記憶媒体）を含み得る。いくつかの例では、ネットワークサーバ（図示せず）は、たとえば、ネットワーク送信を介して、ソースデバイス１２から符号化されたビデオデータを受信し、宛先デバイス１４に符号化されたビデオデータを与え得る。同様に、ディスクスタンピング設備など、媒体製造設備のコンピューティングデバイスは、ソースデバイス１２から符号化されたビデオデータを受信し、その符号化ビデオデータを含んでいるディスクを生成し得る。したがって、コンピュータ可読媒体１６は、様々な例において、様々な形態の１つまたは複数のコンピュータ可読媒体を含むことが理解されよう。
【００４５】
[0053]本開示では、概して、ビデオエンコーダ２０が、ある情報をビデオデコーダ３０などの別のデバイスに「シグナリング」することに言及することがある。ただし、ビデオエンコーダ２０は、いくつかのシンタックス要素をビデオデータの様々な符号化部分に関連付けることによって情報をシグナリングし得ることを理解されたい。すなわち、ビデオエンコーダ２０は、いくつかのシンタックス要素をビデオデータの様々な符号化部分のヘッダに記憶することによってデータを「シグナリング」し得る。場合によっては、そのようなシンタックス要素は、ビデオデコーダ３０によって受信されおよび復号されるより前に、符号化されおよび記憶され（たとえば、コンピュータ可読媒体１６に記憶され）得る。したがって、「シグナリング」という用語は、通信がリアルタイムまたはほぼリアルタイムで行われるか、あるいは、符号化時にシンタックス要素を媒体に記憶し、次いで、この媒体に記憶された後の任意の時間にそのシンタックス要素が復号デバイスによって取り出され得るときなどに行われ得る、ある時間期間にわたって行われるかどうかにかかわらず、概して、圧縮ビデオデータを復号するためのシンタックスまたは他のデータの通信を指し得る。
【００４６】
[0054]宛先デバイス１４の入力インターフェース２８は、コンピュータ可読媒体１６から情報を受信する。コンピュータ可読媒体１６の情報は、ビデオエンコーダ２０によって定義され、またビデオデコーダ３０によって使用される、ブロックおよび他のコーディングされたユニット、たとえば、ＧＯＰの特性および／または処理を記述するシンタックス要素を含む、シンタックス情報を含み得る。ディスプレイデバイス３２は、復号されたビデオデータをユーザに対して表示し、陰極線管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを備え得る。
【００４７】
[0055]図１には示されていないが、いくつかの態様では、ビデオエンコーダ２０およびビデオデコーダ３０は、それぞれオーディオエンコーダおよびデコーダと統合され得、適切なＭＵＸ−ＤＥＭＵＸユニット、または他のハードウェアおよびソフトウェアを含んで、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理し得る。適用可能な場合、ＭＵＸ−ＤＥＭＵＸユニットはＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、またはユーザデータグラムプロトコル（ＵＤＰ）などの他のプロトコルに準拠し得る。
【００４８】
[0056]ビデオエンコーダ２０およびビデオデコーダ３０はそれぞれ、適用可能なとき、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理回路、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダまたはデコーダ回路のいずれか、あるいはそれらの任意の組合せとして実装され得る。ビデオエンコーダ２０およびビデオデコーダ３０の各々は１つまたは複数のエンコーダまたはデコーダ中に含まれ得、そのいずれも複合ビデオエンコーダ／デコーダ（コーデック）の一部として統合され得る。ビデオエンコーダ２０および／またはビデオデコーダ３０を含むデバイスは、集積回路、マイクロプロセッサ、および／またはセルラー電話などのワイヤレス通信デバイスを備え得る。
【００４９】
[0057]ビデオエンコーダ２０およびビデオデコーダ３０は、ジョイントビデオチーム（ＪＶＴ）として知られる共同パートナーシップの成果としてＩＳＯ／ＩＥＣムービングピクチャエキスパートグループ（ＭＰＥＧ：Moving Picture Experts Group）とともにＩＴＵ−Ｔビデオコーディングエキスパートグループ（ＶＣＥＧ：Video Coding Experts Group）によって策定された、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４（ＡＶＣ）規格など、ビデオコーディング規格に従って動作し得る。別のビデオコーディング規格は、それのスケーラブルビデオコーディング（ＳＶＣ）およびマルチビュービデオコーディング（ＭＶＣ）拡張を含む、Ｈ．２６４規格を含む。Ｈ．２６４規格は、ＩＴＵ−Ｔ研究グループによる、ＩＴＵ−Ｔ勧告Ｈ．２６４、Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  ｆｏｒ  ｇｅｎｅｒｉｃ  ａｕｄｉｏｖｉｓｕａｌ  ｓｅｒｖｉｃｅｓに記載されている。ジョイントビデオチーム（ＪＶＴ）は、Ｈ．２６４／ＭＰＥＧ−４  ＡＶＣへの拡張に取り組み続けている。ＭＶＣの最新のジョイントドラフトは、「Ａｄｖａｎｃｅｄ  ｖｉｄｅｏ  ｃｏｄｉｎｇ  ｆｏｒ  ｇｅｎｅｒｉｃ  ａｕｄｉｏｖｉｓｕａｌ  ｓｅｒｖｉｃｅｓ」、ＩＴＵ−Ｔ勧告Ｈ．２６４、２０１０年３月に記載されている。
【００５０】
[0058]代替的に、ビデオエンコーダ２０およびビデオデコーダ３０は、高効率ビデオコーディング（ＨＥＶＣ）規格に従って動作し得、ＨＥＶＣテストモデル（ＨＭ）に準拠し得る。ＨＥＶＣは、ＩＴＵ−Ｔ  ＶＣＥＧとＩＳＯ／ＩＥＣ  ＭＰＥＧとのＪＣＴ−ＶＣによって開発された。ＨＥＶＣの最新ドラフトは、http://phenix.int-evry.fr/jct/doc_end_user/documents/12_Geneva/wg11/JCTVC-L1003-v14.zipから入手可能である。ＨＥＶＣ規格化の取り組みは、ＨＥＶＣテストモデル（ＨＭ）と呼ばれるビデオコーディングデバイスの発展的モデルに基づいていた。ＨＭは、たとえば、ＩＴＵ−Ｔ  Ｈ．２６４／ＡＶＣに従う既存のデバイスに対してビデオコーディングデバイスのいくつかの追加の能力を仮定する。たとえば、Ｈ．２６４は９個のイントラ予測符号化モードを与えるが、ＨＭは３５個ものイントラ予測符号化モードを与え得る。
【００５１】
[0059]概して、ＨＭの作業モデルは、ビデオピクチャ（または「フレーム」）が、ルーマサンプルとクロマサンプルの両方を含む一連のツリーブロックまたは最大コーディングユニット（ＬＣＵ：largest coding unit）に分割され得ることを記載している。ビットストリーム内のシンタックスデータが、ピクセルの数に関して最大コーディングユニットであるＬＣＵのサイズを定義し得る。スライスは、コーディング順序でいくつかの連続するツリーブロックを含む。ピクチャは、１つまたは複数のスライスに区分され得る。各ツリーブロックは、４分木（quadtree）に従ってコーディングユニット（ＣＵ）に分割され得る。概して、４分木データ構造はＣＵごとに１つのノードを含み、ルートノードはツリーブロックに対応する。ＣＵが４つのサブＣＵに分割された場合、ＣＵに対応するノードは４つのリーフノードを含み、リーフノードの各々はサブＣＵのうちの１つに対応する。
【００５２】
[0060]４分木データ構造の各ノードは、対応するＣＵのシンタックスデータを与え得る。たとえば、４分木のノードは、そのノードに対応するＣＵがサブＣＵに分割されるかどうかを示す分割フラグを含み得る。ＣＵのシンタックス要素は、再帰的に定義され得、ＣＵがサブＣＵに分割されるかどうかに依存し得る。ＣＵがさらに分割されない場合、そのＣＵはリーフＣＵと呼ばれる。本開示では、元のリーフＣＵの明示的分割が存在しない場合でも、リーフＣＵの４つのサブＣＵをリーフＣＵとも呼ぶ。たとえば、１６×１６サイズのＣＵがさらに分割されない場合、この１６×１６ＣＵが決して分割されなくても、４つの８×８サブＣＵをリーフＣＵとも呼ぶ。
【００５３】
[0061]ＣＵは、ＣＵがサイズ差異を有しないことを除いて、Ｈ．２６４規格のマクロブロックと同様の目的を有する。たとえば、ツリーブロックは、４つの子ノード（サブＣＵとも呼ばれる）に分割され得、各子ノードは、今度は親ノードとなり、別の４つの子ノードに分割され得る。４分木のリーフノードと呼ばれる、最後の分割されていない子ノードは、リーフＣＵとも呼ばれるコーディングノードを備える。コード化ビットストリームに関連するシンタックスデータは、最大ＣＵ深さと呼ばれる、ツリーブロックが分割され得る最大回数を定義し得、また、コーディングノードの最小サイズを定義し得る。それに応じて、ビットストリームは最小コーディングユニット（ＳＣＵ：smallest coding unit）をも定義し得る。本開示では、ＨＥＶＣのコンテキストにおけるＣＵ、ＰＵ、またはＴＵ、あるいは他の規格のコンテキストにおける同様のデータ構造（たとえば、Ｈ．２６４／ＡＶＣにおけるマクロブロックおよびそれのサブブロック）のいずれかを指すために「ブロック」という用語を使用する。
【００５４】
[0062]ＣＵは、コーディングノードと、コーディングノードに関連する予測ユニット（ＰＵ：prediction unit）および変換ユニット（ＴＵ：transform unit）とを含む。ＣＵのサイズは、コーディングノードのサイズに対応し、形状が正方形でなければならない。ＣＵのサイズは、８×８ピクセルから最大６４×６４以上のピクセルを有するツリーブロックのサイズまで及び得る。各ＣＵは、１つまたは複数のＰＵと、１つまたは複数のＴＵとを含み得る。ＣＵに関連するシンタックスデータは、たとえば、ＣＵを１つまたは複数のＰＵに区分することを記述し得る。区分モードは、ＣＵが、スキップモード符号化またはダイレクトモード符号化されるか、イントラ予測モード符号化されるか、あるいはインター予測モード符号化されるかの間で異なり得る。ＰＵは、形状が非方形になるように区分され得る。ＣＵに関連するシンタックスデータは、たとえば、４分木に従って、ＣＵを１つまたは複数のＴＵに区分することも記述し得る。ＴＵは、形状が正方形または非正方形（たとえば、矩形）であり得る。
【００５５】
[0063]ＨＥＶＣ規格は、ＣＵごとに異なり得るＴＵに従う変換を可能にする。ＴＵは、一般に、区分されたＬＣＵについて定義された所与のＣＵ内のＰＵのサイズに基づいてサイズ決定されるが、常にそうであるとは限らない。ＴＵは、一般に、ＰＵと同じサイズであるかまたはＰＵよりも小さい。いくつかの例では、ＣＵに対応する残差サンプルは、「残差４分木」（ＲＱＴ：residual quad tree）として知られる４分木構造を使用してより小さいユニットに再分割され得る。ＲＱＴのリーフノードは変換ユニット（ＴＵ）と呼ばれることがある。ＴＵに関連するピクセル差分値は、変換されて変換係数が生成され得、その変換係数は量子化され得る。
【００５６】
[0064]リーフＣＵは、１つまたは複数の予測ユニット（ＰＵ）を含み得る。概して、ＰＵは、対応するＣＵの全部または一部分に対応する空間エリアを表し、そのＰＵの参照サンプルを取り出すためのデータを含み得る。その上、ＰＵは、予測に関係するデータを含む。たとえば、ＰＵがイントラモード符号化されるとき、ＰＵについてのデータは、ＰＵに対応するＴＵについてのイントラ予測モードを記述するデータを含み得る残差４分木（ＲＱＴ）中に含まれ得る。別の例として、ＰＵがインターモード符号化されるとき、ＰＵは、ＰＵのための１つまたは複数の動きベクトルを定義するデータを含み得る。ＰＵのための動きベクトルを定義するデータは、たとえば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルについての解像度（たとえば、１／４ピクセル精度または１／８ピクセル精度）、動きベクトルが指す参照ピクチャ、および／または動きベクトルの参照ピクチャリスト（たとえば、リスト０、リスト１、またはリストＣ）を記述し得る。
【００５７】
[0065]１つまたは複数のＰＵを有するリーフＣＵはまた、１つまたは複数の変換ユニット（ＴＵ）を含み得る。変換ユニットは、上記で説明したように、（ＴＵ４分木構造とも呼ばれる）ＲＱＴを使用して指定され得る。たとえば、分割フラグは、リーフＣＵが４つの変換ユニットに分割されるかどうかを示し得る。次いで、各変換ユニットは、さらなるサブＴＵにさらに分割され得る。ＴＵがさらに分割されないとき、そのＴＵはリーフＴＵと呼ばれることがある。概して、イントラコーディングの場合、リーフＣＵに属するすべてのリーフＴＵは同じイントラ予測モードを共有する。すなわち、概して、リーフＣＵのすべてのＴＵの予測値を計算するために同じイントラ予測モードが適用される。イントラコーディングの場合、ビデオエンコーダ２０は、イントラ予測モードを使用して各リーフＴＵの残差値をＴＵに対応するＣＵの一部と元のブロックとの間の差分として計算し得る。ＴＵは、必ずしもＰＵのサイズに制限されるとは限らない。したがって、ＴＵはＰＵよりも大きくまたは小さくなり得る。イントラコーディングの場合、ＰＵは、同じＣＵの対応するリーフＴＵとコロケートされ得る。いくつかの例では、リーフＴＵの最大サイズは、対応するリーフＣＵのサイズに対応し得る。
【００５８】
[0066]その上、リーフＣＵのＴＵはまた、残差４分木（ＲＱＴ）と呼ばれる、それぞれの４分木データ構造に関連付けられ得る。すなわち、リーフＣＵは、リーフＣＵがどのようにＴＵに区分されるかを示す４分木を含み得る。ＴＵ４分木のルートノードは概してリーフＣＵに対応し、ＣＵ４分木のルートノードは概してツリーブロック（またはＬＣＵ）に対応する。分割されないＲＱＴのＴＵはリーフＴＵと呼ばれる。概して、本開示では、特に明記しない限り、リーフＣＵおよびリーフＴＵに言及するためにそれぞれＣＵおよびＴＵという用語を使用する。
【００５９】
[0067]ビデオシーケンスは、一般に一連のピクチャを含む。本明細書で説明する「ピクチャ」および「フレーム」という用語は互換的に使用され得る。すなわち、ビデオデータを含んでいるピクチャは、ビデオフレームまたは単に「フレーム」と呼ばれることがある。ピクチャグループ（ＧＯＰ：group of picture）は、概して、ビデオピクチャのうちの一連の１つまたは複数を備える。ＧＯＰは、ＧＯＰ中に含まれるいくつかのピクチャを記述するシンタックスデータを、ＧＯＰのヘッダ中、ピクチャのうちの１つまたは複数のヘッダ中、または他の場所に含み得る。ピクチャの各スライスは、それぞれのスライスのための符号化モードを記述するスライスシンタックスデータを含み得る。ビデオエンコーダ２０は、一般に、ビデオデータを符号化するために個々のビデオスライス内のビデオブロックに対して動作する。ビデオブロックは、ＣＵ内のコーディングノードに対応し得る。ビデオブロックは、固定サイズまたは可変サイズを有し得、指定のコーディング規格に応じてサイズが異なり得る。
【００６０】
[0068]一例として、ＨＭは、様々なＰＵサイズでの予測をサポートする。特定のＣＵのサイズが２Ｎ×２Ｎであると仮定すると、ＨＭは、２Ｎ×２ＮまたはＮ×ＮのＰＵサイズでのイントラ予測をサポートし、２Ｎ×２Ｎ、２Ｎ×Ｎ、Ｎ×２Ｎ、またはＮ×Ｎの対称的なＰＵサイズでのインター予測をサポートする。ＨＭはまた、２Ｎ×ｎＵ、２Ｎ×ｎＤ、ｎＬ×２Ｎ、およびｎＲ×２ＮのＰＵサイズでのインター予測のための非対称区分をサポートする。非対称区分では、ＣＵの一方向は区分されないが、他の方向は２５％と７５％とに区分される。２５％の区分に対応するＣＵの部分は、「ｎ」とその後ろに付く「Ｕｐ」、「Ｄｏｗｎ」、「Ｌｅｆｔ」、または「Ｒｉｇｈｔ」という表示によって示される。したがって、たとえば、「２Ｎ×ｎＵ」は、上部の２Ｎ×０．５Ｎ  ＰＵと下部の２Ｎ×１．５Ｎ  ＰＵとで水平方向に区分された２Ｎ×２Ｎ  ＣＵを指す。
【００６１】
[0069]本開示では、「Ｎ×Ｎ（NxN）」および「Ｎ×Ｎ（N by N）」は、垂直寸法および水平寸法に関するビデオブロックのピクセル寸法、たとえば、１６×１６（16x16）ピクセルまたは１６×１６（16 by 16）ピクセルを指すために互換的に使用され得る。概して、１６×１６ブロックは、垂直方向に１６ピクセルを有し（ｙ＝１６）、水平方向に１６ピクセルを有する（ｘ＝１６）。同様に、Ｎ×Ｎブロックは、概して、垂直方向にＮピクセルを有し、水平方向にＮピクセルを有し、ただし、Ｎは非負整数値を表す。ブロック中のピクセルは行と列に構成され得る。その上、ブロックは、必ずしも、水平方向において垂直方向と同じ数のピクセルを有する必要があるとは限らない。たとえば、ブロックはＮ×Ｍピクセルを備え得、ただし、Ｍは必ずしもＮに等しいとは限らない。
【００６２】
[0070]ＣＵのＰＵを使用したイントラ予測コーディングまたはインター予測コーディングの後に、ビデオエンコーダ２０は、ＣＵのＴＵのための残差データを計算し得る。ＰＵは、（ピクセル領域とも呼ばれる）空間領域において予測ピクセルデータを生成する方法またはモードを記述するシンタックスデータを備え得、ＴＵは、変換、たとえば、残差ビデオデータへの離散コサイン変換（ＤＣＴ）、整数変換、ウェーブレット変換、または概念的に同様の変換の適用後に、変換領域において係数を備え得る。残差データは、符号化されていないピクチャのピクセルと、ＰＵに対応する予測値との間のピクセル差分に対応し得る。ビデオエンコーダ２０は、ＣＵのための残差データを含むＴＵを形成し、次いで、ＴＵを変換して、ＣＵのための変換係数を生成し得る。
【００６３】
[0071]変換係数を生成するための任意の変換に続いて、ビデオエンコーダ２０は、変換係数の量子化を実行し得る。量子化は、概して、係数を表すために使用されるデータの量をできるだけ低減するために変換係数が量子化され、さらなる圧縮を行うプロセスを指す。量子化プロセスは、係数の一部または全部に関連するビット深度を低減し得る。たとえば、量子化中にｎビット値がｍビット値に切り捨てられ得、ここで、ｎはｍよりも大きい。
【００６４】
[0072]量子化の後に、ビデオエンコーダ２０は、変換係数を走査して、量子化変換係数を含む２次元行列から１次元ベクトルを生成し得る。走査は、アレイの前部により高いエネルギー（したがって、より低い周波数）係数を配置し、アレイの後部により低いエネルギー（したがって、より高い周波数）係数を配置するように設計され得る。
【００６５】
[0073]いくつかの例では、ビデオエンコーダ２０は、エントロピー符号化され得るシリアル化ベクトルを生成するために、量子化変換係数を走査するためにあらかじめ定義された走査順序を利用し得る。他の例では、ビデオエンコーダ２０は適応走査を実施し得る。量子化変換係数を走査して１次元ベクトルを形成した後に、ビデオエンコーダ２０は、たとえば、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ：context-adaptive variable length coding）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ：context-adaptive binary arithmetic coding）、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ：syntax-based context-adaptive binary arithmetic coding）、確率間隔区分エントロピー（ＰＩＰＥ：Probability Interval Partitioning Entropy）コーディング、または別のエントロピー符号化方法に従って１次元ベクトルをエントロピー符号化し得る。ビデオエンコーダ２０はまた、ビデオデータを復号する際にビデオデコーダ３０が使用するための符号化ビデオデータに関連するシンタックス要素をエントロピー符号化し得る。
【００６６】
[0074]ビデオエンコーダ２０はさらに、ブロックベースのシンタックスデータ、ピクチャベースのシンタックスデータ、およびＧＯＰベースのシンタックスデータなどのシンタックスデータを、たとえば、ピクチャヘッダ、ブロックヘッダ、スライスヘッダ、またはＧＯＰヘッダ中でビデオデコーダ３０に送り得る。ＧＯＰシンタックスデータは、それぞれのＧＯＰ中のピクチャの数を表し得、ピクチャシンタックスデータは、対応するピクチャを符号化するために使用される符号化／予測モードを示し得る。
【００６７】
[0075]いくつかの事例では、ビデオエンコーダ２０および／またはビデオデコーダ３０は深度情報をイントラコーディングし得る。たとえば、３Ｄ−ＨＥＶＣでは、ビデオエンコーダ２０および／またはビデオデコーダ３０は、深度スライスのイントラ予測ユニットをコーディングするためにベース（２Ｄ）ＨＥＶＣ規格からのイントラ予測モードを使用し得る。別の例では、ビデオエンコーダ２０および／またはビデオデコーダ３０は、深度スライスのイントラ予測ユニットをコーディングするために深度モデリングモード（ＤＭＭ）を使用し得る。別の例では、ビデオエンコーダ２０および／またはビデオデコーダ３０は、深度スライスのイントラ予測ユニットをコーディングするために領域境界チェーンコーディングを使用し得る。さらに別の例では、ビデオエンコーダ２０および／またはビデオデコーダ３０は、深度スライスのイントラ予測ユニットをコーディングするために簡略深度コーディング（ＳＤＣ）モードを使用し得る。
【００６８】
[0076]ＳＤＣコーディングモードに関して、残差深度値をコーディングする代わりに、ビデオエンコーダ２０および／またはビデオデコーダ３０は、ＤＬＴからのマッピングされたインデックス差分をコーディングし得る。たとえば、ビデオエンコーダ２０は、現在パーティションの平均値のインデックスから予測子のインデックスを減算することによってインデックス差分を計算し得る。ビデオデコーダ３０は、復号されたインデックス差分と予測子のインデックスとの和を計算し得、ＤＬＴに基づいて和を深度値にマッピングし得る。このようにして、ＤＬＴは元の深度マップの深度値をマッピングし得る。
【００６９】
[0077]本開示の態様はＤＬＴに関する。一例では、本開示の態様によれば、ビデオエンコーダ２０および／またはビデオデコーダ３０は、深度ルックアップテーブル（ＤＬＴ）の第１の深度値を決定することと、ここにおいて、第１の深度値がビデオデータの第１のピクセルに関連する、ＤＬＴの第２の深度値を決定することと、ここにおいて、第２の深度値がビデオデータの第２のピクセルに関連する、第１の深度値に対して第２の深度値をコーディングすることを含むＤＬＴをコーディングすることとを行い得る。
【００７０】
[0078]一例では、説明の目的で、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中のｊ番目のエントリに関する深度値が、ｄｌｔ＿Ｄ［ｉ］［ｊ］によって示されると仮定する。本開示の態様によれば、以下でより詳細に説明するように、ビデオエンコーダ２０および／またはビデオデコーダ３０は、ＤＬＴの１つまたは複数の他の深度値を使用してＤＬＴ内の深度値を予測し得る。たとえば、ビデオエンコーダ２０は、符号化ビットストリーム中で第１の有効深度値（たとえば、ｄｌｔ＿Ｄ［ｉ］［０］）をシグナリングし得る。ビデオエンコーダ２０は、次いで、ＤＬＴ中の前の深度値に基づいて、ＤＬＴの残りの連続する深度値を差分的に符号化し得る（たとえば、ｄｌｔ＿Ｄ［ｉ］［ｊ］−ｄｌｔ＿Ｄ［ｉ］［ｊ−１］）。すなわち、ビデオエンコーダ２０は、ある深度値と次の連続する深度値との間の差分の指示をビットストリーム中に符号化し得る。
【００７１】
[0079]上記の例では、ビデオデコーダ３０は、ＤＬＴのための初期深度値をパースし、復号し得る。ビデオデコーダ３０は、次いで、ビデオエンコーダ２０において適用された逆プロセスを適用することによってＤＬＴの残りを再構成し得る。すなわち、ビデオデコーダ３０は、受信され、復号された差分値をＤＬＴ中の前の連続する深度値に加算し得る。以下で図７に関してより詳細に説明するように、他の例も可能である。
【００７２】
[0080]追加または代替として、本開示の態様によれば、ビデオエンコーダ２０および／またはビデオデコーダ３０は、ビュー間でＤＬＴの値を予測し、すなわち、ＤＬＴをビュー間予測し得る。この例では、ビデオエンコーダ２０および／またはビデオデコーダ３０は、あるビューに関連するＤＬＴを使用して、第２の異なるビューに関連するＤＬＴの少なくとも一部を予測し、コーディングし得る。
【００７３】
[0081]一例では、説明の目的で、第１のＤＬＴが深度値の第１のセットを含むと仮定する。さらに、第２のＤＬＴは深度値の第２のセットを含む。第１のセット中の深度値の数は第２のセット中の深度値の数に等しい。この例では、ビデオエンコーダおよび／またはビデオデコーダ３０は、第２のＤＬＴ中の深度値と同じである第１のＤＬＴ中の深度値のロケーションの指示を、第２のＤＬＴのためにコーディングするように構成され得る。いくつかの例では、指示は、第１のＤＬＴ中の開始ロケーションおよび／または終了ロケーションであり得る。第１のＤＬＴと第２のＤＬＴとの間で重複する深度値のロケーションの指示を受信すると、ビデオデコーダ３０は、第１のＤＬＴを使用して第２のＤＬＴを再構成し得る。
【００７４】
[0082]いくつかの例では、第２のＤＬＴに関連する第２のセット中の深度値の数が、第１のＤＬＴに関連する第１のセット中の深度値の数よりも大きいことがある。この例では、ビデオエンコーダ２０は、第２のＤＬＴが第１のＤＬＴの深度値のすべてを含むことをシグナリングし得る。さらに、ビデオエンコーダ２０は、第１のＤＬＴ中に含まれない第２のＤＬＴの深度値をシグナリングし得る。したがって、ビデオデコーダ３０は、上記の情報を受信すると、第１のＤＬＴをコピーし、追加のシグナリングされた深度値を第２のＤＬＴに追加することによって、第２のＤＬＴを再構成し得る。以下で図７に関して説明するように、他の例も可能である。
【００７５】
[0083]図２は、深度コーディングのための技法を実装し得るビデオエンコーダ２０の一例を示すブロック図である。ビデオエンコーダ２０は、ビデオスライス内のビデオブロックのイントラコーディングおよびインターコーディングを実行し得る。イントラコーディングは、所与のビデオフレームまたはピクチャ内のビデオの空間的冗長性を低減または除去するために空間的予測に依拠する。インターコーディングは、ビデオシーケンスの隣接フレームまたはピクチャ内のビデオの時間的冗長性を低減または除去するために時間的予測に依拠する。イントラモード（Ｉモード）は、いくつかの空間ベースのコーディングモードのいずれかを指し得る。単方向予測（Ｐモード）または双予測（Ｂモード）などのインターモードは、いくつかの時間ベースのコーディングモードのいずれかを指し得る。
【００７６】
[0084]上記のように、ビデオエンコーダ２０は、マルチビュービデオコーディングを実行するように適合され得る。いくつかの事例では、ビデオエンコーダ２０は、時間インスタンス中の各ビューがビデオデコーダ３０のなどのデコーダによって処理され得るように、マルチビューＨＥＶＣをコーディングするように構成され得る。ＨＥＶＣ−３Ｄの場合、各ビューに対するテクスチャマップ（すなわち、ルーマ値およびクロマ値）を符号化することに加えて、ビデオエンコーダ２０はさらに、各ビューに対する深度マップを符号化し得る。
【００７７】
[0085]いずれの場合も、図２に示されているように、ビデオエンコーダ２０は、符号化されるべきビデオフレーム内の現在ビデオブロックを受信する。図２の例では、ビデオエンコーダ２０は、モード選択ユニット４０と、参照ピクチャメモリ６４と、加算器５０と、変換処理ユニット５２と、量子化ユニット５４と、エントロピーエンコーディングユニット５６とを含む。モード選択ユニット４０は、今度は、動き補償ユニット４４と、動き推定ユニット４２と、イントラ予測ユニット４６と、パーティションユニット４８とを含む。ビデオブロック再構成のために、ビデオエンコーダ２０はまた、逆量子化ユニット５８と、逆変換ユニット６０と、加算器６２とを含む。再構成されたビデオからブロッキネスアーティファクトを除去するためにブロック境界をフィルタ処理するデブロッキングフィルタ（図２に図示せず）も含まれ得る。所望される場合、デブロッキングフィルタは、一般に、加算器６２の出力をフィルタ処理することになる。追加のフィルタ（ループ内またはループ後）もデブロッキングフィルタに加えて使用され得る。そのようなフィルタは、簡潔のために示されていないが、所望される場合、（ループ内フィルタとして）加算器５０の出力をフィルタ処理し得る。
【００７８】
[0086]符号化プロセス中に、ビデオエンコーダ２０はコーディングされるべきビデオフレームまたはスライスを受信する。フレームまたはスライスは複数のビデオブロックに分割され得る。動き推定ユニット４２および動き補償ユニット４４は、時間予測を行うために、１つまたは複数の参照フレーム中の１つまたは複数のブロックに対して、受信されたビデオブロックのインター予測コーディングを実行する。イントラ予測ユニット４６は、代替的に、空間予測を行うために、コーディングされるべきブロックと同じフレームまたはスライス中の１つまたは複数の隣接ブロックに対して受信されたビデオブロックのイントラ予測コーディングを実行し得る。ビデオエンコーダ２０は、たとえば、ビデオデータのブロックごとに適切なコーディングモードを選択するために、複数のコーディングパスを実行し得る。
【００７９】
[0087]その上、パーティションユニット４８は、前のコーディングパスにおける前の区分方式の評価に基づいて、ビデオデータのブロックをサブブロックに区分し得る。たとえば、パーティションユニット４８は、初めにフレームまたはスライスをＬＣＵに区分し、レートひずみ（rate-distortion）分析（たとえば、レートひずみ最適化）に基づいてＬＣＵの各々をサブＣＵに区分し得る。モード選択ユニット４０は、ＬＣＵをサブＣＵに区分することを示す４分木データ構造をさらに生成し得る。４分木のリーフノードＣＵは、１つまたは複数のＰＵと、１つまたは複数のＴＵとを含み得る。
【００８０】
[0088]モード選択ユニット４０は、たとえば、誤差結果に基づいてコーディングモード、すなわち、イントラまたはインターのうちの１つを選択し、残差ブロックデータを生成するために、得られたイントラコード化ブロックまたはインターコード化ブロックを加算器５０に与え、参照フレームとして使用するための符号化ブロックを再構成するために、得られたイントラコード化ブロックまたはインターコード化ブロックを加算器６２に与え得る。モード選択ユニット４０はまた、動きベクトル、イントラモードインジケータ、パーティション情報、および他のそのようなシンタックス情報など、シンタックス要素をエントロピー符号化ユニット５６に与える。
【００８１】
[0089]動き推定ユニット４２と動き補償ユニット４４とは、高度に統合され得るが、概念的な目的のために別々に示してある。動き推定ユニット４２によって実行される動き推定は、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、たとえば、現在フレーム（または他のコード化ユニット）内でコーディングされている現在ブロックに対する参照フレーム（または他のコード化ユニット）内の予測ブロックに対する現在ビデオフレームまたはピクチャ内のビデオブロックのＰＵの変位を示し得る。予測ブロックは、絶対値差分和（ＳＡＤ：sum of absolute difference）、２乗差分和（ＳＳＤ：sum of square difference）、または他の差分メトリックによって判断され得るピクセル差分に関して、コーディングされるべきブロックにぴったり一致することがわかるブロックである。
【００８２】
[0090]いくつかの例では、ビデオエンコーダ２０は、参照ピクチャメモリ６４に記憶された参照ピクチャのサブ整数ピクセル位置の値を計算し得る。たとえば、ビデオエンコーダ２０は、参照ピクチャの１／４ピクセル位置、１／８ピクセル位置、または他の分数ピクセル位置の値を補間し得る。したがって、動き推定ユニット４２は、フルピクセル位置と分数ピクセル位置とに関して動き探索を実行し、分数ピクセル精度で動きベクトルを出力し得る。
【００８３】
[0091]動き推定ユニット４２は、ＰＵの位置を参照ピクチャの予測ブロックの位置と比較することによって、インターコード化スライスにおけるビデオブロックのＰＵのための動きベクトルを計算する。参照ピクチャは、第１の参照ピクチャリスト（リスト０）または第２の参照ピクチャリスト（リスト１）から選択され得、それらの参照ピクチャリストの各々は、参照ピクチャメモリ６４に記憶された１つまたは複数の参照ピクチャを識別する。動き推定ユニット４２は、計算された動きベクトルをエントロピー符号化ユニット５６と動き補償ユニット４４とに送る。
【００８４】
[0092]動き補償ユニット４４によって実行される動き補償は、動き推定ユニット４２によって判断された動きベクトルに基づいて予測ブロックをフェッチまたは生成することに関与し得る。この場合も、いくつかの例では、動き推定ユニット４２と動き補償ユニット４４とは機能的に統合され得る。現在ビデオブロックのＰＵのための動きベクトルを受信すると、動き補償ユニット４４は、動きベクトルが参照ピクチャリストのうちの１つにおいて指す予測ブロックの位置を特定し得る。
【００８５】
[0093]加算器５０は、以下で説明するように、コーディングされている現在ビデオブロックのピクセル値から予測ブロックのピクセル値を減算することによって残差ビデオブロックを形成し、それによって、ピクセル差分値を形成する。概して、動き推定ユニット４２はルーマ成分に対して動き推定を実行し、動き補償ユニット４４は、クロマ成分とルーマ成分の両方のためにルーマ成分に基づいて計算された動きベクトルを使用する。モード選択ユニット４０はまた、ビデオスライスのビデオブロックを復号する際にビデオデコーダ３０が使用するためのビデオブロックとビデオスライスとに関連するシンタックス要素を生成し得る。
【００８６】
[0094] イントラ予測ユニット４６は、上記で説明したように、動き推定ユニット４２と動き補償ユニット４４とによって実施されるインター予測の代替として、現在ブロックをイントラ予測し得る。特に、イントラ予測ユニット４６は、現在ブロックを符号化するために使用すべきイントラ予測モードを判断し得る。いくつかの例では、イントラ予測ユニット４６は、たとえば、別個の符号化パス中に、様々なイントラ予測モードを使用して現在ブロックを符号化し得、イントラ予測ユニット４６（または、いくつかの例では、モード選択ユニット４０）は、テストされたモードから使用するのに適切なイントラ予測モードを選択し得る。
【００８７】
[0095]たとえば、イントラ予測ユニット４６は、様々なテストされたイントラ予測モードのためのレートひずみ分析を使用してレートひずみ値を計算し、テストされたモードの中で最良のレートひずみ特性を有するイントラ予測モードを選択し得る。レートひずみ分析は、概して、符号化ブロックと、符号化ブロックを生成するために符号化された元の符号化されていないブロックとの間のひずみ（または誤差）の量、ならびに符号化ブロックを生成するために使用されるビットレート（すなわち、ビット数）を判断する。イントラ予測ユニット４６は、どのイントラ予測モードがブロックについて最良のレートひずみ値を呈するかを判断するために、様々な符号化ブロックのひずみおよびレートから比率を計算し得る。
【００８８】
[0096]さらに、イントラ予測ユニット４６は、深度情報、たとえば、深度マップの深度ブロックをコーディングするように構成され得る。たとえば、イントラ予測ユニット４６は、深度情報をイントラ予測し、残差値を決定し得る。イントラ予測ユニット４６は、各パーティションの残差値を直接コーディングし得るか、または、残差値をコーディングする代わりに、ＤＬＴへのインデックスに基づいて深度値をコーディングし得る。たとえば、ＤＬＴは、各深度値が対応するインデックスを有する、深度値のセットを含み得る。イントラ予測ユニット４６は、１つまたは複数の他のブロックのためのインデックスを使用して現在ブロック（たとえば、パーティション）のためのインデックスを予測し得る。たとえば、イントラ予測ユニット４６は、現在ブロック（たとえば、区分）の平均深度値に関連するインデックスからインデックス予測子のインデックスを減算することによって、インデックス差分を計算し得る。
【００８９】
[0097]本開示の態様によれば、ＤＬＴをコーディングすることを担当するビデオエンコーダ２０のユニット、たとえば、エントロピー符号化ユニット５６などは、あるＤＬＴの値をＤＬＴの１つまたは複数の他の値に対して予測し得る。たとえば、ＤＬＴにおいて実際の深度値を符号化するのではなく、エントロピー符号化ユニット５６は、ＤＬＴの１つまたは複数の連続深度値間の差分を決定し得、図７に関してより詳細に説明するように、差分値を符号化し得る。そうすることにより、ビットストリーム中でＤＬＴをシグナリングすることに関連するビット数を低減し得る。いくつかの例では、エントロピー符号化ユニット５６は、連続するエントリ間の差分値が同じであることを示す１つまたは複数のシンタックス要素を生成し得る。一例では、説明の目的で、すべての深度値差分が２である場合（たとえば、０、２、４、６、以下同様のＤＬＴ中の深度値の場合）、エントロピー符号化ユニット５６は、差分値の類似度を示すフラグならびに差分値をシグナリングし得る。
【００９０】
[0098]追加または代替として、本開示の態様によれば、エントロピー符号化ユニット５６は、あるビューのＤＬＴに関連する深度値を第２の異なるビューのＤＬＴに関連する深度値に対してシグナリングし得る、すなわち、ビュー間ＤＬＴ予測。たとえば、エントロピー符号化ユニット５６は、第１のビューのＤＬＴの１つまたは複数の深度値が第２の異なるビューのＤＬＴの１つまたは複数の深度値に等しいことを示す１つまたは複数のシンタックス要素をビットストリーム中に含め得る。エントロピー符号化ユニット５６はまた、ビュー間ＤＬＴ予測が有効であることを示すもう１つのシンタックス要素を生成し得る。
【００９１】
[0099]エントロピー符号化ユニット５６は、パラメータセット中に（上記で説明した差分値を含む）１つまたは複数のＤＬＴを表すデータを符号化し得る。たとえば、エントロピー符号化ユニット５６は、ピクチャパラメータセット（ＰＰＳ）中に１つまたは複数のＤＬＴを含め得る。いくつかの例では、ＤＬＴは、ベースビューのビューコンポーネント中のスライスによって参照されるＰＰＳ中にのみ存在し得る。
【００９２】
[0100]ビデオエンコーダ２０は、コーディングされている元のビデオブロックから、モード選択ユニット４０からの予測データを減算することによって残差ビデオブロックを形成する。加算器５０は、この減算演算を実行する１つまたは複数の構成要素を表す。変換処理ユニット５２は、離散コサイン変換（ＤＣＴ）または概念的に同様の変換などの変換を残差ブロックに適用し、残差変換係数値を備えるビデオブロックを生成する。変換処理ユニット５２は、ＤＣＴと概念的に同様である他の変換を実行し得る。ウェーブレット変換、整数変換、サブバンド変換または他のタイプの変換も使用され得る。
【００９３】
[0101]いずれの場合も、変換処理ユニット５２は、変換を残差ブロックに適用し、残差変換係数のブロックを生成する。変換は、残差情報をピクセル値領域から周波数領域などの変換領域に変換し得る。変換処理ユニット５２は、得られた変換係数を量子化ユニット５４に送り得る。量子化ユニット５４は、ビットレートをさらに低減するために変換係数を量子化する。量子化プロセスは、係数の一部または全部に関連するビット深度を低減し得る。量子化の程度は、量子化パラメータを調整することによって変更され得る。いくつかの例では、量子化ユニット５４は、次いで、量子化変換係数を含む行列の走査を実行し得る。代替的に、エントロピー符号化ユニット５６が走査を実行し得る。
【００９４】
[0102]量子化に続いて、エントロピー符号化ユニット５６は、量子化変換係数をエントロピーコーディングする。たとえば、エントロピー符号化ユニット５６は、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ）、確率間隔区分エントロピー（ＰＩＰＥ）コーディングまたは別のエントロピーコーディング技法を実行し得る。コンテキストベースエントロピーコーディングの場合、コンテキストは隣接ブロックに基づき得る。エントロピー符号化ユニット５６によるエントロピーコーディングに続いて、符号化ビットストリームは、別のデバイス（たとえば、ビデオデコーダ３０）に送信されるか、あるいは後で送信するかまたは取り出すためにアーカイブされ得る。
【００９５】
[0103]逆量子化ユニット５８および逆変換ユニット６０は、それぞれ逆量子化および逆変換を適用して、たとえば参照ブロックとして後で使用するために、ピクセル領域中で残差ブロックを再構成する。動き補償ユニット４４は、残差ブロックを参照ピクチャメモリ６４のフレームのうちの１つの予測ブロックに加算することによって参照ブロックを計算し得る。動き補償ユニット４４はまた、再構成された残差ブロックに１つまたは複数の補間フィルタを適用して、動き推定において使用するためのサブ整数ピクセル値を計算し得る。加算器６２は、再構成された残差ブロックを、動き補償ユニット４４によって生成された動き補償予測ブロックに加算して、参照ピクチャメモリ６４に記憶するための再構成されたビデオブロックを生成する。再構成されたビデオブロックは、後続のビデオフレーム中のブロックをインターコーディングするために動き推定ユニット４２および動き補償ユニット４４によって参照ブロックとして使用され得る。
【００９６】
[0104]ビデオエンコーダ２０のユニットは説明のために与えられたことと、（エントロピー符号化ユニット５６などの）特定のユニットに帰される技法はビデオエンコーダ２０の１つまたは複数の他または追加のユニットによって実行され得ることとを理解されたい。
【００９７】
[0105]図３は、深度コーディングのための技法を実装し得るビデオデコーダ３０の一例を示すブロック図である。図３の例では、ビデオデコーダ３０は、エントロピー復号ユニット７０と、動き補償ユニット７２と、イントラ予測ユニット７４と、逆量子化ユニット７６と、逆変換ユニット７８と、参照ピクチャメモリ８２と、加算器８０とを含む。ビデオデコーダ３０は、いくつかの例では、ビデオエンコーダ２０（図２）に関して説明した符号化パスとは概して逆の復号パスを実行し得る。動き補償ユニット７２は、エントロピー復号ユニット７０から受信された動きベクトルに基づいて予測データを生成し得、イントラ予測ユニット７４は、エントロピー復号ユニット７０から受信されたイントラ予測モードインジケータに基づいて予測データを生成し得る。
【００９８】
[0106]復号プロセス中に、ビデオデコーダ３０は、ビデオエンコーダ２０から、符号化ビデオスライスのビデオブロックと、関連するシンタックス要素とを表す符号化ビデオビットストリームを受信する。ビデオデコーダ３０のエントロピー復号ユニット７０は、量子化係数、動きベクトルまたはイントラ予測モードインジケータ、および他のシンタックス要素を生成するためにビットストリームをエントロピー復号する。エントロピー復号ユニット７０は、動きベクトルと他の予測シンタックス要素とを動き補償ユニット７２に転送する。ビデオデコーダ３０は、ビデオスライスレベルおよび／またはビデオブロックレベルでシンタックス要素を受信し得る。
【００９９】
[0107]背景として、ビデオデコーダ３０は、ネットワークを介した送信のために、いわゆる「ネットワークアブストラクションレイヤユニット（network abstraction layer unit）」またはＮＡＬユニットに圧縮された圧縮ビデオデータを受信し得る。各ＮＡＬユニットは、ＮＡＬユニットに記憶されるデータのタイプを識別するヘッダを含み得る。一般にＮＡＬユニットに記憶されるデータの２つのタイプがある。ＮＡＬユニットに記憶される第１のタイプのデータはビデオコーディングレイヤ（ＶＣＬ）データであり、これは圧縮ビデオデータを含む。ＮＡＬユニットに記憶される第２のタイプのデータは非ＶＣＬデータと呼ばれ、これは、多数のＮＡＬユニットに共通のヘッダデータを定義するパラメータセットなどの追加の情報と、補足エンハンスメント情報（ＳＥＩ）とを含む。
【０１００】
[0108]たとえば、パラメータセットは、（たとえば、ＳＰＳまたはＶＰＳ中の）シーケンスレベルヘッダ情報と、（たとえば、ＰＰＳ中の）まれに変化するピクチャレベルヘッダ情報とを含んでいることがある。パラメータセット中に含まれている、まれに変化する情報は、シーケンスまたはピクチャごとに繰り返される必要がなく、それによりコーディング効率が改善される。さらに、パラメータセットの使用はヘッダ情報の帯域外送信を可能にし、それにより誤り耐性のための冗長送信の必要が回避される。
【０１０１】
[0109]上述のように、ビデオデコーダ３０は、マルチビュービデオコーディングを実行するように適合され得る。いくつかの例では、ビデオデコーダ３０は、マルチビューＨＥＶＣを復号するように構成され得る。ＨＥＶＣ−３Ｄの場合、各ビューに対するテクスチャマップ（すなわち、ルーマ値およびクロマ値）を復号することに加えて、ビデオデコーダ３０はさらに、各ビューに対する深度マップを復号し得る。
【０１０２】
[0110]いずれの場合も、ビデオスライスがイントラコード化（Ｉ）スライスとしてコーディングされるとき、イントラ予測ユニット７４は、シグナリングされたイントラ予測モードと、現在フレームまたはピクチャの、前に復号されたブロックからのデータとに基づいて、現在ビデオスライスのビデオブロックのための予測データを生成し得る。さらに、イントラ予測ユニット７４は、深度情報、たとえば、深度マップの深度ブロックをコーディングするように構成され得る。たとえば、イントラ予測ユニット７４は、深度情報をイントラ予測し、残差値を受信し得る。
【０１０３】
[0111]イントラ予測ユニット７４は、各パーティションの残差値を直接受信し、復号し得るか、またはＤＬＴへのインデックスに基づいて深度値を復号し得る。たとえば、上述のように、ＤＬＴは、各深度値が対応するインデックスを有する、深度値のセットを含み得る。イントラ予測ユニット７４は、インデックス予測子のインデックスと現在ブロックの平均深度値に関連するインデックスとの間の差分に基づく、インデックス差分を受信し得る。イントラ予測ユニット７４は、復号されたインデックス差分とインデックス予測子のインデックスとの和によって決定されたインデックスに基づいて、現在ブロックの深度値を決定し得る。
【０１０４】
[0112]本開示の態様によれば、ビデオデコーダ３０（たとえば、ビデオデコーダ３０のエントロピー復号ユニット７０）は、ＤＬＴの１つまたは複数の他の値に対してＤＬＴの値を予測し得る。たとえば、ＤＬＴにおいて実際の深度値を復号するのではなく、エントロピー復号ユニット７０は、図７に関してより詳細に説明するように、ＤＬＴの１つまたは複数の連続深度値間の差分をパースし、復号し得る。エントロピー復号ユニット７０は、受信された差分値をＤＬＴ中の前の深度値に加算することによって実際の深度値を再構成し得る。
【０１０５】
[0113]いくつかの例では、エントロピー復号ユニット７０は、連続するエントリ間の差分値が同じであることを示す１つまたは複数のシンタックス要素を受信し得る。一例では、説明の目的で、すべての深度値差分が２である場合（たとえば、０、２、４、６、以下同様のＤＬＴ中の深度値の場合）、ビデオデコーダ３０は、差分値の類似性を示すフラグならびに差分値を受信し得る。
【０１０６】
[0114]追加または代替として、本開示の態様によれば、エントロピー復号ユニット７０は、あるビューのＤＬＴに関連する深度値を第２の異なるビューのＤＬＴに関連する深度値に対して決定し得る、すなわち、ビュー間ＤＬＴ予測。たとえば、エントロピー復号ユニット７０は、第１のビューのＤＬＴの１つまたは複数の深度値が第２の異なるビューのＤＬＴの１つまたは複数の深度値に等しいことを示すビットストリーム中の１つまたは複数のシンタックス要素をパースし、複合し得る。エントロピー復号ユニット７０は、次いで、他のビューからのＤＬＴ値をコピーすることによってあるビューのためのＤＬＴを生成し得る。エントロピー復号ユニット７０はまた、ビュー内ＤＬＴ予測が有効であることを示すもう１つのシンタックス要素を受信し得る。
【０１０７】
[0115]エントロピー復号ユニット７０は、パラメータセット中の（上記で説明した差分値を含む）１つまたは複数のＤＬＴを表すデータを復号し得る。たとえば、エントロピー復号ユニット７０は、ＰＰＳ中の１つまたは複数のＤＬＴを受信し得る。いくつかの例では、ＤＬＴは、ベースビューのビューコンポーネント中のスライスによって参照されるＰＰＳ中にのみ存在し得る。
【０１０８】
[0116]ビデオフレームがインターコード化（すなわち、Ｂ、ＰまたはＧＰＢ）スライスとしてコーディングされるとき、動き補償ユニット７２は、エントロピー復号ユニット７０から受信された動きベクトルと他のシンタックス要素とに基づいて、現在ビデオスライスのビデオブロックのための予測ブロックを生成する。予測ブロックは、参照ピクチャリストのうちの１つ内の参照ピクチャのうちの１つから生成され得る。ビデオデコーダ３０は、参照ピクチャメモリ９２に記憶された参照ピクチャに基づいて、デフォルトの構成技法を使用して、参照フレームリスト、すなわち、リスト０およびリスト１を構成し得る。
【０１０９】
[0117]動き補償ユニット７２は、動きベクトルと他のシンタックス要素とをパースすることによって現在ビデオスライスのビデオブロックのための予測情報を判断し、その予測情報を使用して、復号されている現在ビデオブロックのための予測ブロックを生成する。たとえば、動き補償ユニット７２は、ビデオスライスのビデオブロックをコーディングするために使用される予測モード（たとえば、イントラ予測またはインター予測）と、インター予測スライスタイプ（たとえば、Ｂスライス、Ｐスライス、またはＧＰＢスライス）と、スライスの参照ピクチャリストのうちの１つまたは複数のための構成情報と、スライスの各インター符号化ビデオブロックのための動きベクトルと、スライスの各インターコーディングビデオブロックのためのインター予測ステータスと、現在ビデオスライス中のビデオブロックを復号するための他の情報とを決定するために、受信されたシンタックス要素のいくつかを使用する。
【０１１０】
[0118]動き補償ユニット７２はまた、補間フィルタに基づいて補間を実行し得る。動き補償ユニット７２は、ビデオブロックの符号化中にビデオエンコーダ２０によって使用された補間フィルタを使用して、参照ブロックのサブ整数ピクセルの補間値を計算し得る。この場合、動き補償ユニット７２は、受信されたシンタックス要素からビデオエンコーダ２０によって使用された補間フィルタを判断し、その補間フィルタを使用して予測ブロックを生成し得る。
【０１１１】
[0119]逆量子化ユニット７６は、ビットストリーム中で与えられ、エントロピー復号ユニット７０によって復号された量子化変換係数を逆量子化（inverse quantize）、すなわち、逆量子化（de-quantize）する。逆量子化プロセスは、量子化の程度を判断し、同様に、適用されるべき逆量子化の程度を判断するための、ビデオスライス中のビデオブロックごとにビデオエンコーダ３０によって計算される量子化パラメータＱＰYの使用を含み得る。
【０１１２】
[0120]逆変換ユニット７８は、ピクセル領域において残差ブロックを生成するために、逆変換、たとえば逆ＤＣＴ、逆整数変換、または概念的に同様の逆変換プロセスを変換係数に適用する。
【０１１３】
[0121]動き補償ユニット７２またはイントラ予測ユニット７４が、動きベクトルまたは他のシンタックス要素に基づいて現在ビデオブロック（たとえば、テクスチャブロックまたは深度ブロック）のための予測ブロックを生成した後、ビデオデコーダ３０は、逆変換ユニット７８からの残差ブロックを、動き補償ユニット７２またはイントラ予測ユニット７４によって生成された対応する予測ブロックと加算することによって復号ビデオブロックを形成する。加算器８０は、この加算演算を実行する１つまたは複数の構成要素を表す。
【０１１４】
[0122]所望される場合、ブロッキネスアーティファクトを除去するために、復号ブロックをフィルタ処理するためにデブロッキングフィルタも適用され得る。ピクセル遷移を平滑化するために、または場合によってはビデオ品質を改善するために、他のループフィルタも（コーディングループ中またはコーディングループ後のいずれかで）使用され得る。所与のフレームまたはピクチャ中の復号されたビデオブロックは、次いで、その後の動き補償のために使用される参照ピクチャを記憶する参照ピクチャメモリ８２に記憶される。参照ピクチャメモリ８２はまた、図１のディスプレイデバイス３２などのディスプレイデバイス上での後の提示のために、復号されたビデオを記憶する。
【０１１５】
[0123]説明のためにビデオデコーダ３０のユニットが与えられたことと、（エントロピー復号ユニット７０などの）特定のユニットに起因する技法が、ビデオデコーダ３０の１つまたは複数の他または追加のユニットによって実行され得ることとを理解されたい。
【０１１６】
[0124]図４に、方向性イントラ予測モードに関連する予測方向を概して示す。たとえば、上述のように、ＨＥＶＣ規格は、平面モード（モード０）、ＤＣモード（モード１）、および３３個の方向性予測モード（モード２〜３４）を含む、３５個のイントラ予測モードを含み得る。平面モードの場合、いわゆる「プレーン」機能を使用して予測が実行される。ＤＣモードの場合、ブロック内のピクセル値の平均化に基づいて予測が実行される。方向性予測モードの場合、（そのモードによって示される）特定の方向に沿った隣接ブロックの再構成されたピクセルに基づいて予測が実行される。概して、図４に示されている矢印の末端は、値がそこから取り出される隣接ピクセルのうちの相対的な１つを表すが、矢印のヘッドは、予測ブロックを形成するために取り出された値が伝搬される方向を表す。
【０１１７】
[0125]図４に示されているイントラモードは、深度値を予測するための使用され得る。たとえば、図４に示されている角度イントラ予測モードの各々は、図５Ａおよび図５Ｂに関して以下でより詳細に説明するように、ウェッジレットパターンのセットに関連し得る。
【０１１８】
[0126]図５Ａおよび図５Ｂは、深度モデリングモード（ＤＭＭ）の例を示す概念図である。図５Ａは、たとえば、ウェッジレット区分を使用して区分された深度ブロック１１０を示し、図５Ｂは、別の例として、輪郭区分を使用して区分された深度ブロック１３０を示す。３Ｄ−ＨＥＶＣは、深度スライスのイントラ予測ユニットをコーディングするために、イントラ予測モードとともに、ブロックを区分するための深度モデリングモード（ＤＭＭ）のための技法を含む。ＨＴＭバージョン３．１は、場合によっては深度マップ中のより鋭いエッジをより良く表し得る、深度マップのイントラコーディングのためのＤＭＭ方法を適用する。
【０１１９】
[0127]たとえば、３Ｄ−ＨＥＶＣは、４つのＤＭＭ、すなわち、モード１（明示的ウェッジレットシグナリング）と、モード２（イントラ予測ウェッジレット区分）と、モード３（コンポーネント間ウェッジレット区分）と、モード４（コンポーネント間輪郭区分）とを与える。すべての４つのモードでは、ビデオエンコーダ２０またはビデオデコーダ３０などのビデオコーダは、深度ブロックをＤＭＭパターンによって指定された２つの領域に区分し得、各領域は一定値によって表される。ＤＭＭパターンは、明示的にシグナリングされる（モード１）か、空間的に隣接するブロックによって予測される（モード２）か、またはコロケートテクスチャブロックを使用して予測される（モード３およびモード４）かのいずれかであり得る。
【０１２０】
[0128]ウェッジレット区分と輪郭区分とを含む、ＤＭＭにおいて定義されている２つの区分モデルがある。この場合も、図５Ａにウェッジレット区分の一例を示し、図５Ｂに輪郭区分の一例を示す。深度ブロック１１０および１３０内の各個々の正方形は、それぞれ、深度ブロック１１０および１３０のそれぞれの個々のピクセルを表す。正方形内の数値は、対応するピクセルが領域１１２（図５Ａの例における値「０」）に属するのか、領域１１４（図５Ａの例における値「１」）に属するのかを表す。また、図５Ａにおいて、ピクセルが領域１１２（白い正方形）に属するのか、領域１１４（灰色の影つき正方形）に属するのかを示すために陰影が使用される。
【０１２１】
[0129]各パターン（すなわち、ウェッジレットと輪郭の両方）は、対応するサンプル（すなわち、ピクセル）が領域Ｐ1に属するのかＰ2に属するのか（ただし、Ｐ1は図５Ａ中の領域１１２と図５Ｂ中の領域１３２とに対応し、Ｐ2は図５Ａ中の領域１１４と図５Ｂ中の領域１３４Ａ、１３４Ｂとに対応する）のサイズｕB×ｖB２進数字ラベリングのアレイによって画定され得、ｕBおよびｖBは、それぞれ、現在ＰＵの水平サイズおよび垂直サイズを表す。図５Ａおよび図５Ｂの例では、ＰＵは、それぞれブロック１１０および１３０に対応する。ビデオエンコーダ２０およびビデオデコーダ３０などのビデオコーダは、コーディングの開始、たとえば、符号化の開始または復号の開始時に、ウェッジレットパターンを初期化し得る。
【０１２２】
[0130]図５Ａの例に示されているように、ウェッジレット区分の場合、深度ブロック１１０は、（Ｘｓ，Ｙｓ）に位置する開始点１１８と（Ｘｅ，Ｙｅ）に位置する終了点１２０とをもつ直線１１６によって２つの領域、すなわち、領域１１２と領域１１４とに区分される。図５Ａの例では、開始点１１８は点（８，０）として定義され得、終了点１２０は点（０，８）として定義され得る。
【０１２３】
[0131]図５Ｂの例に示されているように、輪郭区分の場合、深度ブロック１３０などの深度ブロックは２つの不規則形状領域に区分され得る。図５Ｂの例では、深度ブロック１３０は領域１３２と領域１３４Ａ、１３４Ｂとに区分される。領域１３４Ａ中のピクセルは領域１３４Ｂ中のピクセルに直接隣接しないが、領域１３４Ａおよび１３４Ｂは、深度ブロック１３０のＰＵを予測する目的で１つの単一の領域を形成するように画定される。輪郭区分は、ウェッジレット区分よりもフレキシブルであるが、シグナリングすることが相対的により困難であり得る。ＤＭＭモード４では、３Ｄ−ＨＥＶＣの場合、輪郭区分パターンは、コロケートテクスチャブロックの再構成されたルーマサンプルを使用して暗黙的に導出される。
【０１２４】
[0132]このようにして、ビデオエンコーダ２０およびビデオデコーダ３０などのビデオコーダは、深度ブロック１１０のピクセルが（領域「Ｐ１」と呼ばれることもある）領域１１２に属するのか、（領域「Ｐ２」と呼ばれることもある）領域１１４に属するのかを判断するために、開始点１１８と終了点１２０とによって画定された線１１６を使用し得る。同様に、ビデオコーダは、深度ブロック１３０のピクセルが（領域「Ｐ１」と呼ばれることもある）領域１３２に属するのか、（領域「Ｐ２」と呼ばれることもある）領域１３４に属するのかを判断するために、図５Ｂの線１３６、１３８を使用し得る。領域「Ｐ１」および「Ｐ２」は、ＤＭＭに従って区分された異なる領域のためのデフォルト命名規則であり、したがって、深度ブロック１１０の領域Ｐ１は、深度ブロック１３０の領域Ｐ１と同じ領域と考えられるべきでない。
【０１２５】
[0133]上記のように、ＤＭＭの各々は、ＤＭＭがウェッジレット区分を使用するのか輪郭区分を使用するのかと、パターンが明示的にシグナリングされるのかまたは暗黙的に判断されるのかとによって定義され得る。ＤＭＭプロセスは、（図４に示された）ＨＥＶＣにおいて指定されたイントラ予測モードの代替として組み込まれ得る。ＤＭＭが適用されるのか従来のイントラ予測が適用されるのかを指定するために、１ビットフラグが各ＰＵについてシグナリングされ得る。
【０１２６】
[0134]図６は、領域境界チェーンコーディングモードを示す概念図である。たとえば、３Ｄ−ＨＥＶＣは、（たとえば、ＤＭＭに関して上記で説明した、コロケートされたテクスチャに基づく区分ではなく）パーティション境界の明示的シグナリングを可能にする領域境界チェーンコーディングモードを含む。本開示では、「領域境界チェーンコーディングモード」を「チェーンコーディング」と呼ぶことがある。
【０１２７】
[0135]概して、チェーンは、サンプルとそれの８連結性サンプルのうちの１つとの間の連結である。図６の上部に示されているように、８つの異なるチェーン方向タイプがあり、それぞれに０から７にわたる方向インデックスが割り当てられる。（ビデオエンコーダ２０などの）ビデオエンコーダは、チェーンの開始位置と、チェーン中のリンクの数の指示（たとえば、チェーンコードの数）と、チェーンコードごとに、方向インデックスとを用いて、ＰＵのためのチェーンをシグナリングし得る。
【０１２８】
[0136]チェーンコーディングプロセスの一例が図６に示されている。図６に示されている任意のパーティションパターンをシグナリングするために、ビデオエンコーダ２０は、パーティションパターンを識別し、符号化ビットストリーム中の以下の情報を符号化し得る。すなわち、チェーンが上部境界から開始することをシグナリングするために１ビット「０」が符号化され、上部境界における開始位置「３」をシグナリングするために３ビット「０１１」が符号化され、チェーンの総数を７としてシグナリングするために４ビット「０１１０」が符号化され、一連の連結チェーンインデックス「３、３、３、７、１、１、１」が符号化され、ここで、各チェーンインデックスは、図６の相対的な上部において示されている表を使用してコードワードに変換される。
【０１２９】
[0137]ビデオデコーダ３０など、ビデオデコーダは、ブロックの区分パターンを決定するために、上記で説明したシグナリングをパースし得る。ビデオデコーダ３０は、次いで、各パーティションの深度値を復号し得る。
【０１３０】
[0138]図７は、簡略深度コーディング（ＳＤＣ）を使用したイントラコーディング深度情報を示すブロック図である。図７に関して以下で説明する例は、ビデオエンコーダ２０、ビデオデコーダ３０、または様々な他のコーデックおよび／またはプロセッサによって実行され得る。
【０１３１】
[0139]図７の例では、上述のように、（ビデオエンコーダ２０またはビデオデコーダ３０などの）ビデオコーダは、深度情報をイントラ予測するために、上記で説明したイントラ予測モード（ＨＥＶＣモード、ＤＭＭ、チェーンコーディング）のいずれかを使用し得る。そのような例では、ビデオコーダは、図７の左ブランチ（たとえば、区分と、予測モードと、残差コーディングと）を実装し得る。
【０１３２】
[0140]代替的に、ビデオコーダは、深度情報がＳＤＣを使用してコーディングされることを示すために、シンタックス要素（たとえば、ｓｄｃ＿ｅｎａｂｌｅ＿ｆｌａｇ）をシグナリングし得る。ＳＤＣを実装するとき、ビデオコーダはまた、図７の右ブランチに示されているように、深度値のための予測モードとＤＣオフセットとを示し得る。現在の３Ｄ−ＨＥＶＣ（上述のバージョン５．１）では、ＳＤＣは、２Ｎ×２Ｎ  ＰＵパーティションサイズのためにのみ適用される。上述のように、量子化された変換係数をコーディングする代わりに、ＳＤＣモードは、以下の４つのタイプの情報を用いて深度ブロックを表す。
【０１３３】
１．ａ．ＤＣ（１つのパーティション）
ｂ．ＤＭＭモード１（２つのパーティション）
ｃ．ＤＭＭモード２（２つのパーティション）
ｄ．平面（１つのパーティション）
を含む、現在深度ブロックのパーティションのタイプ
２．パーティションごとに、（ピクセル領域中の）残差値がビットストリーム中でシグナリングされる。
【０１３４】
[0141]したがって、ＳＤＣにおいて定義された４つのサブモードは、それぞれ、ＤＣ、ＤＭＭモード１、ＤＭＭモード２、および平面のパーティションタイプに対応する、ＳＤＣモード１、ＳＤＣモード２、ＳＤＣモード３、およびＳＤＣモード４を含む。ＳＤＣでは、変換または量子化は適用されない。各パーティションの残差値をシグナリングするために、ビデオエンコーダ２０は２つの代替プロセスを適用し得る。第１のプロセスでは、ビデオエンコーダ２０は、現在ＰＵ中の現在パーティションの平均値（Ａｖｅｒ）から隣接サンプルの生成された予測子（Ｐｒｅｄ）を減算することによって計算され得る、各パーティションの残差値を直接コーディングし得る。
【０１３５】
[0142]第２のプロセスでは、残差値を直接コーディングする代わりに、ビデオエンコーダ２０は、ＤＬＴからのマッピングされたインデックス差分を符号化し得る。たとえば、上述のように、ＤＬＴは元の深度マップの深度値をマッピングする。ＤＬＴは、フルシーケンスを符号化する前にイントラ期間内のフレームを分析することによって構成され得る。いくつかの例では、ビデオエンコーダ２０は、すべての有効深度値を昇順で分類し、深度値がＤＬＴにおいて増加するインデックスを有するように深度値をＤＬＴに挿入する。
【０１３６】
[0143]ビデオエンコーダ２０は、現在ブロックの深度値（Ａｖｅｒ）の平均値のインデックスから予測子、たとえば、予測深度値（Ｐｒｅｄ）のインデックスを減算することによって、上述のインデックス差分を計算する。ＰｒｅｄまたはＡｖｅｒの値がＤＬＴ中に含まれないとき、ビデオエンコーダ２０は、値を実際のＰｒｅｄ値またはＡｖｅｒ値に相対的に最も近い値を有するＤＬＴのインデックスｉ（たとえば、Ｐｒｅｄ／Ａｖｅｒの絶対値−ＤＬＴ中のｉ番目のエントリの値が最小値にある深度値に対応するインデックス）にマッピングし得る。
【０１３７】
[0144]ビデオデコーダ３０は、インデックス値を受信し、ビデオエンコーダ２０と同じ様式で予測子のインデックスを決定し得る。ビデオデコーダ３０は、次いで、現在復号されている深度値のためのインデックスを決定するために、予測子のインデックスとインデックス差分とを組み合わせ得る。ビデオデコーダ３０は、決定されたインデックスと受信されたＤＬＴとを使用して深度値を決定し得る。
【０１３８】
[0145]いくつかの事例では、ＤＬＴを使用することは、随意であり得、分析段において元の深度マップ中に０からＭＡＸ＿ＤＥＰＴＨ＿ＶＡＬＵＥ（たとえば、８ビット深度サンプルの場合は２５５）までの値の１／２よりも多くが現れる場合、使用されないことがある。ＤＬＴを使用するとき、概して、ＤＬＴはシーケンスおよび／またはビデオパラメータセット中にコーディングされ得る。ＤＬＴをコーディングするために、（ビデオエンコーダ２０またはビデオデコーダ３０などの）ビデオコーダは、最初にＥｘｐゴロムコードを用いてＤＬＴ中の有効深度値の数をコーディングし得る。ビデオコーダは、次いで、Ｅｘｐゴロムコードを用いて各有効深度値をコーディングし得る。ＤＬＴをシグナリングするための関係するシンタックス要素とセマンティクスとの一例を以下の表１に示す。
【表１】
0006698351.tif 000002
【０１３９】
[0146]上記の表１の例において、１に等しいｄｌｔ＿ｆｌａｇ［ｉ］は、ＤＬＴが使用されることと、簡略深度コード化コーディングユニットのための残差値が、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴのインデックスとして解釈されるべきであることとを指定する。さらに、０に等しいｄｌｔ＿ｆｌａｇ［ｉ］は、ＤＬＴが使用されないことと、簡略深度コード化コーディングユニットのための残差値が、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのインデックスとして解釈されるべきでないこととを指定する。ｄｌｔ＿ｆｌａｔ［ｉ］が存在しないとき、０に等しいと推論され得る。
【０１４０】
[0147]さらに、上記の表１の例において、ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］は、ｉに等しいｌａｙｅｒ＿ｉｄをもつ現在レイヤの深度ビューコンポーネントのためのＤＬＴ中の異なる深度値の数と要素の数とを指定する。さらに、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［ｉ］［ｊ］は、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中のｊ番目のエントリを指定する。現在３ＤＨＴＭ（上述のバージョン５．１）では、ＤＬＴは、上記で定義したＶＰＳの代わりにＳＰＳ中にシグナリングされ得る。
【０１４１】
[0148]上記で説明したＤＬＴ方式は、コーディング効率に影響を及ぼし得る、様々な冗長性を含むことがある。潜在的冗長性を示すために、例示的なテストシーケンスを以下に与える。
【０１４２】
シーケンス名：ｂａｌｌｏｏｎｓ
【数１】
0006698351.tif 000003
【０１４３】
[0149]上記のテストシーケンスに示されているように、２つ以上のビュー中に現れる多くの冗長な（同じ）深度値（上記の太字およびイタリック体の数字）がある。さらに、ＤＬＴの深度値の範囲が比較的大きい（たとえば、５８〜２５５の最小範囲をもつ）。別の例示的なテストシーケンスを以下に与える。
【０１４４】
シーケンス名：ＰｏｚｎａｎＨａｌｌ２
【数２】
0006698351.tif 000004
【０１４５】
[0150]この場合も、上記のテストシーケンスに示されているように、２つ以上のビュー中に現れる多くの冗長な（同じ）深度値（上記の太字およびイタリック体の数字）がある。さらに、ＤＬＴの深度値の範囲が比較的大きい（たとえば、３〜８８の最小範囲をもつ）。
【０１４６】
[0151]上述のように、深度値の上昇特性を考慮することなしに直接深度値を直接コーディングすることは、非効率的であることがある。さらに、異なるビュー間の関係式が現在の設計（上述のバージョン５．１）では利用されない。したがって、冗長な深度値をシグナリングすることに対して比較的大きいビット数が浪費され得る。その上、ＳＰＳまたはＶＰＳのいずれか中にＤＬＴをシグナリングすることは、１つのシーケンス／ビュー内にシーン変化があるときに効率的でないことがある。さらに、より短いコードをもつ深度値がより高い出現確率を有するという仮定がないので、指数ゴロムコードは、深度値をコーディングするときに非効率的であることがある。
【０１４７】
[0152]本開示の態様は、一般にＤＬＴシグナリングに関し、特定の規格に限定されることなしに、３Ｄ−ＨＥＶＣにおいて使用され得る。本開示の態様によれば、ＤＬＴの１つまたは複数の深度値がＤＬＴの１つまたは複数の他の深度値に対してコーディングされ得る。たとえば、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中のｊ番目のエントリに関する深度値が、ｄｌｔ＿Ｄ［ｉ］［ｊ］によって示されると仮定する。一例では、ビデオエンコーダ２０は、第１の有効深度値（たとえば、ｄｌｔ＿Ｄ［ｉ］［０］）を直接シグナリングし得、コーディングされている深度値をＤＬＴ中の前の深度値と比較することによって差分コーディングを後続の深度値に適用し得る（たとえば、ｄｌｔ＿Ｄ［ｉ］［ｊ］−ｄｌｔ＿Ｄ［ｉ］［ｊ−１］）。ビデオデコーダ３０は、第１の深度値を受信し得、たとえば、復号されている深度値の差分値をＤＬＴの前の深度値に加算することによって、受信された差分値を使用してＤＬＴを再構成し得る。
【０１４８】
[0153]一例では、ビデオエンコーダ２０は、同様の方法で異なるビューのためのＤＬＴシグナリングを実行し得る。すなわち、この例では、ビデオエンコーダ２０およびビデオデコーダ３０は、ＤＬＴに対してビュー間予測を適用しない。また、ビデオエンコーダ２０およびビデオデコーダ３０はＤＬＴ間でスライス／フレームレベル予測を実行しない。この例のための例示的なＶＰＳシンタックスを以下の表２に示す。
【表２】
0006698351.tif 000005
【０１４９】
[0154]上記の表２の例において、イタリック体の要素は、表１に関して上記で説明した現在シンタックスからの逸脱を示す（および［ｒｅｍｏｖｅｄ：  “…”］は材料の除去を示す）。表２の例において、ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］は、ｉに等しいｌａｙｅｒ＿ｉｄをもつ現在レイヤの深度ビューコンポーネントのためのＤＬＴ中の異なる深度値の数と要素の数とを指定する。さらに、ｄｌｔ＿ｄｅｐｔｈ＿ｓｔａｒｔ＿ｖａｌｕｅ［ｉ］は、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中の０番目のエントリを指定する。
【０１５０】
[0155]表２の例は、ｕ（ｖ）を用いてコーディングされているｄｌｔ＿ｄｅｐｔｈ＿ｓｔａｒｔ＿ｖａｌｕｅ［ｉ］を示すが、いくつかの例では、シンタックス要素は、固定長としてシグナリングされる得、たとえば、ｕ（７）または０から２５５までの範囲をもつｕ（ｖ）としてシグナリングされるか、または０から（２５５−ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］）までの範囲をもつｕ（ｖ）としてシグナリングされ得る。別の例では、ｄｌｔ＿ｄｅｐｔｈ＿ｓｔａｒｔ＿ｖａｌｕｅ［ｉ］の代わりにｄｌｔ＿ｄｅｐｔｈ＿ｓｔａｒｔ＿ｖａｌｕｅ＿ｍｉｎｕｓ１［ｉ］がシグナリングされ得、ここで、ｄｌｔ＿ｄｅｐｔｈ＿ｓｔａｒｔ＿ｖａｌｕｅ＿ｍｉｎｕｓ１［ｉ］＋１は、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中の０番目のエントリを指定する。
【０１５１】
[0156]さらに、本開示の態様によれば、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｄｉｆｆ［ｉ］［ｊ］は、ｉに等しいｌａｙｅｒ＿ｉｄと０よりも大きいｊとをもつ深度ビューコンポーネントのためのＤＬＴ中のｊ番目のエントリと（ｊ−１）番目のエントリとの間の深度値の差分を指定する。ｄｌｔＤｅｐｔｈＶａｌｕｅ［ｉ］［ｊ］は、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中のｊ番目のエントリを示し、次のように導出される。ｊが０に等しい場合、ｄｌｔＤｅｐｔｈＶａｌｕｅ［ｉ］［ｊ］はｄｌｔ＿ｄｅｐｔｈ＿ｓｔａｒｔ＿ｖａｌｕｅ［ｉ］に等しく設定され、他の場合、ｄｌｔＤｅｐｔｈＶａｌｕｅ［ｉ］［ｊ］は、ｄｌｔＤｅｐｔｈＶａｌｕｅ［ｉ］［ｊ−１］＋ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｄｉｆｆ［ｉ］［ｊ］に等しく設定される。
【０１５２】
[0157]別の例では、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｄｉｆｆ［ｉ］［ｊ］の代わりにｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］［ｊ］が、シグナリングされ得、ここで、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］［ｊ］＋１は、ｉに等しいｌａｙｅｒ＿ｉｄと０よりも大きいｊとをもつ深度ビューコンポーネントのためのＤＬＴ中のｊ番目のエントリと（ｊ−１）番目のエントリとの間の深度値の差分を指定する。
【０１５３】
[0158]いくつかの例では、本開示の態様によれば、ＤＬＴの２つの連続するエントリ間の差分値の範囲がシグナリングされ得、差分値は、範囲に応じて固定長でシグナリングされる。すなわち、ＤＬＴ差分は、最大差分値または最小差分値に基づいてシグナリングされ得る。
【０１５４】
[0159]いくつかの例では、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｄｉｆｆ［ｉ］［ｊ］またはｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］［ｊ］は、ｕｅ（ｖ）の代わりにｕ（ｖ）を用いてシグナリングされ得、このシンタックス要素の範囲がシグナリングされ得る。この例のための例示的なＶＰＳシンタックスを以下の表３に示す。
【表３】
0006698351.tif 000006
【０１５５】
[0160]上記の表３の例において、イタリック体の要素は、表１に関して上記で説明した現在シンタックスからの逸脱を示す（および［ｒｅｍｏｖｅｄ：  “…”］は材料の除去を示す）。表３の例において、ｍａｘ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］は、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］［ｊ］の範囲を指定する。すなわち、ｍａｘ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］は、ＤＬＴ中の２つの連続する深度値間の最大数値差分の指示を与える。さらに、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］［ｊ］＋１は、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中のｊ番目のエントリと（ｊ−１）番目のエントリとの間の深度値の差分を指定する。ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｄｉｆｆ＿ｍｉｎｕｓ１は、両端値を含む、０〜ｍａｘ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］の範囲内にある。他の例では、ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］およびｄｌｔ＿ｄｅｐｔｈ＿ｓｔａｒｔ＿ｖａｌｕｅ［ｉ］は、ｕｅ（ｖ）としてコーディングされ得、または、両方とも、ｕ（８）または異なる所与の範囲をもつｕ（ｖ）としてコーディングされ得る。
【０１５６】
[0161]いくつかの例では、差分コーディングが２つの連続する深度値の差分に適用され、すなわち、２次差分がシグナリングされる。すなわち、ｊが１よりも大きいとき、（ｄｌｔ＿Ｄ［ｉ］［ｊ］−ｄｌｔ＿Ｄ［ｉ］［ｊ−１］）−（ｄｌｔ＿Ｄ［ｉ］［ｊ−１］−ｄｌｔ＿Ｄ［ｉ］［ｊ−２］）がシグナリングされる。ｊが１に等しいとき、（ｄｌｔ＿Ｄ［ｉ］［ｊ］−ｄｌｔ＿Ｄ［ｉ］［ｊ−１］）がシグナリングされる。この例のための例示的なＶＰＳシンタックスを以下の表４に示す。
【表４】
0006698351.tif 000007
【０１５７】
[0162]上記の表４の例において、イタリック体の要素は、表１に関して上記で説明した現在シンタックスからの逸脱を示す（および［ｒｅｍｏｖｅｄ：  “…”］は材料の除去を示す）。表４の例において、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ［ｉ］［ｊ］は、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中の深度値の差分からのｊ番目のエントリと、（ｊ−１）番目のエントリとの２次差分を指定する。ｌｔＤｅｐｔｈＶａｌｕｅＤｉｆｆ［ｉ］［ｊ］は、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中のｊ番目のエントリと（ｊ−１）番目のエントリとの間の深度値の差分を示し、次のように導出される。ｊが１に等しいとき、ｄｌｔＤｅｐｔｈＶａｌｕｅＤｉｆｆ［ｉ］［ｊ］は、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ［ｉ］［１］に設定され、他の場合（ｊが、１よりも大きく、ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］よりも小さいとき）、ｄｌｔＤｅｐｔｈＶａｌｕｅＤｉｆｆ［ｉ］［ｊ］は、ｄｌｔＤｅｐｔｈＶａｌｕｅＤｉｆｆ［ｉ］［ｊ−１］＋ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ［ｉ］［ｊ］に設定される。
【０１５８】
[0163]さらに、ｄｌｔＤｅｐｔｈＶａｌｕｅ［ｉ］［ｊ］は、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中のｊ番目のエントリを示し、次のように導出される。ｊが０に等しい場合、ｄｌｔＤｅｐｔｈＶａｌｕｅ［ｉ］［ｊ］はｄｌｔ＿ｄｅｐｔｈ＿ｓｔａｒｔ＿ｖａｌｕｅ［ｉ］に等しく設定され、他の場合、ｄｌｔＤｅｐｔｈＶａｌｕｅ［ｉ］［ｊ］は、ｄｌｔＤｅｐｔｈＶａｌｕｅ［ｉ］［ｊ−１］＋ｄｌｔＤｅｐｔｈＶａｌｕｅＤｉｆｆ［ｉ］［ｊ］に等しく設定される。
【０１５９】
[0164]いくつかの例では、ｊが１よりも大きいとき、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ［ｉ］［ｊ］の範囲は明示的にシグナリングされ得る。この例のための例示的なＶＰＳシンタックスを以下の表５に示す。
【表５】
0006698351.tif 000008
【０１６０】
[0165]上記の表５の例において、イタリック体の要素は、表１に関して上記で説明した現在シンタックスからの逸脱を示す（および［ｒｅｍｏｖｅｄ：  “…”］は材料の除去を示す）。表５の例において、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｄｉｆｆ［ｉ］［ｊ］は、ｉに等しいｌａｙｅｒ＿ｉｄと１に等しいｊとをもつ深度ビューコンポーネントのためのＤＬＴ中のｊ番目のエントリと（ｊ−１）番目のエントリとの間の深度値の差分を指定する。さらに、ｄｌｔ＿ｄｅｐｔｈ＿ｓｔａｒｔ＿ｖａｌｕｅ＿ｄｉｆｆ［ｉ］は、両端値を含む、０〜（２５６−ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］−ｄｌｔ＿ｄｅｐｔｈ＿ｓｔａｒｔ＿ｖａｌｕｅ［ｉ］）の範囲内にある。
【０１６１】
[0166]さらに、ｍａｘ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］＋１は、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ＿ａｂｓ［ｉ］［ｊ］の範囲を指定する。ｍａｘ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］は、両端値を含む、０〜（２５６−ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］−ｄｌｔ＿ｄｅｐｔｈ＿ｓｔａｒｔ＿ｖａｌｕｅ［ｉ］）の範囲内にある。
【０１６２】
[0167]さらに、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ＿ａｂｓ［ｉ］［ｊ］は、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中の深度値の差分からのｊ番目のエントリと、（ｊ−１）番目のエントリとの２次差分の絶対値を指定する。さらに、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ＿ａｂｓは、両端値を含む、０〜（ｍａｘ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］＋１）の範囲内にある。
【０１６３】
[0168]いくつかの例では、ｍａｘ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］＋１のシンタックス要素の代わりにｍａｘ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ［ｉ］シンタックス要素が使用され得る。そのような例において、ｍａｘ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ［ｉ］は、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ＿ａｂｓ［ｉ］［ｊ］の範囲を指定する。いくつかの事例では、ｍａｘ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ［ｉ］は、両端値を含む、０〜（２５６−ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］−ｄｌｔ＿ｄｅｐｔｈ＿ｓｔａｒｔ＿ｖａｌｕｅ［ｉ］）の範囲内にあり得る。さらに、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ＿ａｂｓは、両端値を含む、０〜ｍａｘ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ［ｉ］の範囲内にあり得る。さらに、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ＿ｓｉｇｎ［ｉ］［ｊ］は、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ＿ａｂｓ［ｉ］［ｊ］が０に等しくないとき、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中の深度値の差分からのｊ番目のエントリと、（ｊ−１）番目のエントリとの２次差分の絶対値を指定する。
【０１６４】
[0169]さらに、ｌｔＤｅｐｔｈＶａｌｕｅＤｉｆｆ［ｉ］［ｊ］は、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中のｊ番目のエントリと（ｊ−１）番目のエントリとの間の深度値の差分を示し、次のように導出され得る。ｊが１に等しいとき、ｄｌｔＤｅｐｔｈＶａｌｕｅＤｉｆｆ［ｉ］［ｊ］はｄｌｔ＿ｄｅｐｔｈ＿ｓｔａｒｔ＿ｖａｌｕｅ＿ｄｉｆｆ［ｉ］に設定され、他の場合（ｊが１よりも大きく、ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］よりも小さいとき）、ｄｌｔＤｅｐｔｈＶａｌｕｅＤｉｆｆ［ｉ］［ｊ］は、ｄｌｔＤｅｐｔｈＶａｌｕｅＤｉｆｆ［ｉ］［ｊ−１］＋（１−２*ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ＿ｓｉｇｎ［ｉ］［ｊ］）*ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｃｏｎｓｅｃｕｔｉｖｅ＿ｄｉｆｆ＿ａｂｓ［ｉ］［ｊ］に設定される。
【０１６５】
[0170]さらに、ｄｌｔＤｅｐｔｈＶａｌｕｅ［ｉ］［ｊ］は、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中のｊ番目のエントリを示し、次のように導出され得る。ｊが０に等しい場合、ｄｌｔＤｅｐｔｈＶａｌｕｅ［ｉ］［ｊ］はｄｌｔ＿ｄｅｐｔｈ＿ｓｔａｒｔ＿ｖａｌｕｅ［ｉ］に等しく設定され、他の場合、ｄｌｔＤｅｐｔｈＶａｌｕｅ［ｉ］［ｊ］は、ｄｌｔＤｅｐｔｈＶａｌｕｅ［ｉ］［ｊ−１］＋ｄｌｔＤｅｐｔｈＶａｌｕｅＤｉｆｆ［ｉ］［ｊ］に等しく設定される。
【０１６６】
[0171]本開示の態様によれば、個々の深度値差分をシグナリングするのではなく、上述のように、ＤＬＴの連続するエントリ間のすべての差分が同じであるかどうかを示すために、１つまたは複数のシンタックス要素（たとえば、フラグ）が導入され得る。たとえば、ＤＬＴの連続する深度値間の差分のすべてが同じ（たとえば、１、２、３などの差分）である場合、差分が一定であることを示すためにフラグが使用され得、深度値間で適用されるべき差分値がシグナリングされる。このようにして、すべて同じである深度差分値のセットをシグナリングするのではなく、シグナリングコストを低減するためにこの技法が実装され得る。
【０１６７】
[0172]ｊ番目のエントリと（ｊ−１）番目のエントリとの間のすべての差分が同じであるかどうかを示すフラグの一例、ならびに差分の値を以下の表６に示す。
【表６】
0006698351.tif 000009
【０１６８】
[0173]上記の表６の例において、イタリック体の要素は、表１に関して上記で説明した現在シンタックスからの逸脱を示す（および［ｒｅｍｏｖｅｄ：  “…”］は材料の除去を示す）。イタリック体の要素は、上記で説明した現在シンタックスからの逸脱を示す。表６の例において、１に等しいｄｌｔ＿ｄｅｐｔｈ＿ｄｅｌｔａ＿ｅｑｕａｌ＿ｆｌａｇ［ｉ］は、（ｊ＋１）番目のエントリにおける深度値とｊ番目のエントリにおける深度値との間のすべての差分が同じであることを示す。さらに、０に等しいｄｌｔ＿ｄｅｐｔｈ＿ｄｅｌｔａ＿ｅｑｕａｌ＿ｆｌａｇ［ｉ］は、（ｊ＋１）番目のエントリにおける深度値とｊ番目のエントリにおける深度値との間のすべての差分が同じであるとは限らないことを示す。
【０１６９】
[0174]さらに、ｄｌｔ＿ｄｅｐｔｈ＿ｄｅｔｌａ＿ｖａｌｕｅ［ｉ］は、連続するエントリ、すなわち、（ｊ＋１）番目のエントリとｊ番目のエントリとに関する２つの深度値間の差分を示す。ｄｌｔ＿ｄｅｐｔｈ＿ｄｅｔｌａ＿ｖａｌｕｅ［ｉ］は、両端値を含む、０〜（２５６−ｄｌｔ＿ｄｅｐｔｈ＿ｓｔａｒｔ＿ｖａｌｕｅ［ｉ］）／ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］）の範囲内にある。ｄｌｔ＿ｄｅｐｔｈ＿ｄｅｌｔａ＿ｅｑｕａｌ＿ｆｌａｇ［ｉ］が１に等しいとき、ｄｌｔ＿ｄｅｐｔｈ＿ｄｅｔｌａ＿ｖａｌｕｅ［ｉ］が存在する。他の例では、ｄｌｔ＿ｄｅｐｔｈ＿ｄｅｔｌａ＿ｖａｌｕｅ［ｉ］は、ｕ（７）またはｕ（８）としてシグナリングされる。
【０１７０】
[0175]さらに、ｄｌｔＤｅｐｔｈＶａｌｕｅ［ｉ］［ｊ］は、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中のｊ番目のエントリを示し、次のように導出される。ｊが０に等しい場合、ｄｌｔＤｅｐｔｈＶａｌｕｅ［ｉ］［ｊ］はｄｌｔ＿ｄｅｐｔｈ＿ｓｔａｒｔ＿ｖａｌｕｅ［ｉ］に等しく設定され、他の場合、ｄｌｔＤｅｐｔｈＶａｌｕｅ［ｉ］［ｊ］は、ｄｌｔ＿ｄｅｐｔｈ＿ｄｅｌｔａ＿ｅｑｕａｌ＿ｆｌａｇ［ｉ］が０に等しいとき、ｄｌｔＤｅｐｔｈＶａｌｕｅ［ｉ］［ｊ−１］＋ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｄｉｆｆ［ｉ］［ｊ］に等しく設定され、ｄｌｔ＿ｄｅｐｔｈ＿ｄｅｌｔａ＿ｅｑｕａｌ＿ｆｌａｇ［ｉ］が１に等しいとき、ｄｌｔＤｅｐｔｈＶａｌｕｅ［ｉ］［０］＋ｄｌｔ＿ｄｅｐｔｈ＿ｄｅｔｌａ＿ｖａｌｕｅ［ｉ］*ｊに等しく設定される。
【０１７１】
[0176]上記の表２〜表６に関して図示および説明する例は、概して、同じＤＬＴ内の深度値の予測に関する。ＤＬＴの１つまたは複数の値を予測することによって、ＤＬＴに関連する値の範囲（および、そのような値をシグナリングするために必要とされるビット）が低減され得る。すなわち、たとえば、０〜２５５の深度値の範囲をシグナリングするのではなく、比較的小さい深度差分値がシグナリングされ得る。
【０１７２】
[0177]本開示の他の態様によれば、あるビューのＤＬＴは他のビューを予測するために使用され得、本明細書ではビュー間ＤＬＴ予測と呼ぶ。一例では、ビデオエンコーダ２０は、参照ビューのＤＬＴのどの連続するエントリが、ＤＬＴ別のビューの連続するエントリと同じであるか（シフトが可能性であるか）の指示を符号化し得（ビデオデコーダ３０は復号し得る）。すなわち、等しい深度値のロケーションが、１つまたは複数のシンタックス要素を使用して示され得る。
【０１７３】
[0178]一例では、別のＤＬＴと同じであるＤＬＴの最初のエントリの開始位置を示すために、フラグがシグナリングされ得る。いくつかの例では、デフォルト開始位置は、０に等しいか、またはベースビューのＤＬＴの最大エントリに等しくなり得る。たとえば、ベースビューがＤＬＴ中の深度値の第１のセットを有することと、非ベースビューがベースビューの深度値のすべて、ならびにベースビューの深度値よりも小さい追加の値を有することとを仮定する。すべての新たに追加された深度値がベースビュー中のＤＬＴの最初のエントリよりも小さい場合、０に等しいフラグを設定することによって開始位置がシグナリングされ得る。
【０１７４】
[0179]別の例では、ベースビューがＤＬＴ中の深度値の第１のセットを有することと、非ベースビューがベースビューの深度値のすべて、ならびにベースビューの深度値よりも大きい追加の値を有することとを仮定する。すべての新たに追加された深度値がベースビューのＤＬＴの最後のエントリよりも大きい場合、１に等しいフラグが開始位置としてシグナリングされる。
【０１７５】
[0180]他の例では、ビュー間で重複する深度値を示すために１つまたは複数のシンタックス要素ペアが使用され得る。たとえば、そのようなシンタックス要素は、重複する深度値の開始位置と、挿入されるべき深度値の数（重複する深度値の数）とを示し得る。ＤＬＴのための深度値のすべてがシグナリングされた（たとえば、すべてのペア中でシグナリングされた深度値の数の和が、非ベースとベースビューとの間の深度値の差分に等しくなった）後に、シグナリングプロセスは終了され得る。
【０１７６】
[0181]さらに他の例では、新たに追加された深度値のすべてが最小（または最大）深度値よりも小さいか（またはより大きい）かどうかを示すために、１つまたは複数のシンタックス要素（たとえば、フラグ）が最初にシグナリングされ得る。追加の深度値がすべて、予測のために使用されているＤＬＴからの深度値よりも小さいかまたはそれよりも大きいとは限らない場合、（重複する深度値の開始／終了を示す）シンタックス要素のペアの数の指示が最初にシグナリングされ得る。いくつかの例では、シンタックス要素のペアの数がシグナリングされるとき、最後のペア中の深度値の数はシグナリングされない。
【０１７７】
[0182]上記の例のいずれにおいても、重複しない深度値（すなわち、２つ以上のＤＬＴ中に現れない深度値）は、上記の差分ＤＬＴシグナリングを使用してシグナリングされ得る。
【０１７８】
[0183]上述のように、ベースビューおよび非ベースビューは、それらのそれぞれのＤＬＴ中に異なる数の深度値を有し得る。たとえば、深度値ベースビューの数が非ベースビュー中の深度値の数よりも小さいことがある。非ベースビュー中の異なる深度値の数がベースビュー中のそれよりも小さいとき、非ベースビュー中の第１の有効深度値の位置を示すためにベースビューのＤＬＴのデフォルト開始位置がシグナリングされる。いくつかの例では、上述のように、（たとえば、現在の開始位置に関連するコピーされるべき深度値の開始位置と数とを示す）１つまたは複数のシンタックス要素ペアがシグナリングされ得る。すべてのペア中でシグナリングされた深度値の数の和が非ベースおよびベースビュー中の深度値に等しくなった後に、シグナリングプロセスは終了され得る。
【０１７９】
[0184]いくつかの例では、すべての深度値がベースビューのＤＬＴの連続するエントリからコピーされることが可能であるどうかを示すために、１つまたは複数のシンタックス要素（たとえば、フラグ）が最初にシグナリングされ得る。ベースビューＤＬＴの深度値のすべてが非ベースビューにコピーされ得るとは限らない場合、シンタックス要素ペアの数が最初にシグナリングされ得る。いくつかの例では、シンタックス要素のペアの数がシグナリングされるとき、最後のペアにコピーされるべき深度値の数はシグナリングされない。いくつかの例では、非ベースビューとベースビューとの間の異なる深度値の数（たとえば、ＤＬＴ中の要素の数）の差分がシグナリングされる。
【０１８０】
[0185]したがって、本開示の態様によれば、１つのビューのＤＬＴをシグナリングするために必要とされるデータの量を低減するために、イントラＤＬＴ予測が使用され得、他のビューのＤＬＴをシグナリングするために必要とされるデータの量を低減するために、追加または代替として、ビュー間ＤＬＴ予測が使用され得る。
【０１８１】
[0186]いくつかの例では、ビュー間ＤＬＴ予測の場合、非ベースビューの有効深度値の数がベースビューのそれよりも大きいとき、すべての新たに追加された深度値が、ベースビュー中のＤＬＴの最初のエントリの前または最後のエントリの後に挿入される。他の例では、非ベースビューの有効深度値の数がベースビューの有効深度値の数よりも小さいとき、ベースビュー中のＤＬＴからコピーされるすべての深度値は、ベースビュー中のＤＬＴの連続するエントリを有する。
【０１８２】
[0187]例示的なビュー間ＤＬＴ予測のための例示的なＶＰＳシンタックスを以下の表７に示す。
【表７】
0006698351.tif 000010
【０１８３】
[0188]上記の表７の例において、イタリック体の要素は、表１に関して上記で説明した現在シンタックスからの逸脱を示す。表７の例において、１に等しいｉｎｔｅｒ＿ｖｉｅｗ＿ｄｌｔ＿ｐｒｅｄ＿ｅｎａｂｌｅ＿ｆｌａｇ［ｉ］は、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューが、現在ビュー中のＤＬＴをシグナリングするためにビュー間ＤＬＴ予測方法を使用することを示す。さらに、０に等しいｉｎｔｅｒ＿ｖｉｅｗ＿ＤＬＴ＿ｐｒｅｄ＿ｅｎａｂｌｅ＿ｆｌａｇ［ｉ］は、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューが、現在ビュー中のＤＬＴをシグナリングするためにビュー間ＤＬＴ予測方法を使用せず、代わりに、ベースビューと同様にＤＬＴがシグナリングされること示す。
【０１８４】
[0189]さらに、１に等しいｌｅｆｔ＿ｓｉｄｅ＿ｃｒｏｐ＿ｏｒ＿ｅｘｔｅｎｄ＿ｆｌａｇ［ｉ］は、ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］がｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］よりも大きいとき、すべての新たに追加された深度値がベースビュー中のＤＬＴの最初のエントリの前に挿入され、ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］がｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］よりも小さいかそれに等しいとき、ベースビュー中のＤＬＴの第１のｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］エントリが、ｉに等しいｌａｙｅｒ＿ｉｄをもつビュー中のＤＬＴに直接コピーされることを示す。
【０１８５】
[0190]さらに、０に等しいｌｅｆｔ＿ｓｉｄｅ＿ｃｒｏｐ＿ｏｒ＿ｅｘｔｅｎｄ＿ｆｌａｇ［ｉ］は、ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］がｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］よりも大きいとき、すべての新たに追加された深度値がベースビュー中のＤＬＴの最後のエントリの後に挿入され、ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］がｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］よりも小さいかそれに等しいとき、ベースビュー中のＤＬＴの最後のｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］エントリが、ｉに等しいｌａｙｅｒ＿ｉｄをもつビュー中のＤＬＴに直接コピーされることを示す。
【０１８６】
[0191]さらに、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］［ｊ］＋１は、ｌｅｆｔ＿ｓｉｄｅ＿ｃｒｏｐ＿ｏｒ＿ｅｘｔｅｎｄ＿ｆｌａｇ［ｉ］が１に等しく、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］［−１］が０であると推論されるとき、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中の（（ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］−ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］）−ｊ−１）番目のエントリにおける差分値と比較される（（ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］−ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］）−ｊ）番目のエントリにおける２つの深度値の差分を指定する。ｌｅｆｔ＿ｓｉｄｅ＿ｃｒｏｐ＿ｏｒ＿ｅｘｔｅｎｄ＿ｆｌａｇ［ｉ］が０に等しいとき、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］［ｊ］＋１は、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中の（ｊ−１＋ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］）番目のエントリにおける深度値と比較される（ｊ＋ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］）番目のエントリにおける２つの深度値の差分を指定する。
【０１８７】
[0192]さらに、ｄｌｔＤｅｐｔｈＶａｌｕｅ［ｉ］［ｊ］は、ｉに等しい（ｉは１に等しくない）ｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中のｊ番目のエントリと、ｉｎｔｅｒ＿ｖｉｅｗ＿ｄｌｔ＿ｐｒｅｄ＿ｅｎａｂｌｅ＿ｆｌａｇ［ｉ］が１に等しいこととを示し、次のように導出される。
【数３】
0006698351.tif 000011
【数４】
0006698351.tif 000012
【数５】
0006698351.tif 000013
【数６】
0006698351.tif 000014
【数７】
0006698351.tif 000015
【０１８８】
ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ＿ｖｉｅｗ＿ｄｉｆｆ［ｉ］が０よりも大きく、ｌｅｆｔ＿ｓｉｄｅ＿ｃｒｏｐ＿ｏｒ＿ｅｘｔｅｎｄ＿ｆｌａｇ［ｉ］が０に等しいとき、以下が適用される。
【数８】
0006698351.tif 000016
【０１８９】
ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ＿ｖｉｅｗ＿ｄｉｆｆ［ｉ］が０よりも大きく、ｌｅｆｔ＿ｓｉｄｅ＿ｃｒｏｐ＿ｏｒ＿ｅｘｔｅｎｄ＿ｆｌａｇ［ｉ］が１に等しいとき、以下が適用される。
【数９】
0006698351.tif 000017
【０１９０】
[0193]別の例では、ビュー間ＤＬＴ予測のためのプロセスは、上記で説明した例と同様であり得るが、非ベースビュー中の有効深度値の数がベースビューのそれよりも大きいとき、１つまたは複数のシンタックス要素および関連するセマンティクスが、ビュー間ＤＬＴ予測をサポートするように変更され得る。新たに追加された深度値の一部がベースビュー中の最初のエントリの前に挿入され、新たに追加された深度値の一部がベースビュー中のＤＬＴの最後のエントリの後に挿入される。この例のための例示的なＶＰＳシンタックスを以下の表８に示す。
【表８】
0006698351.tif 000018
【０１９１】
[0194]上記の表８の例において、イタリック体の要素は、表１に関して上記で説明した現在シンタックスからの逸脱を示す。表８の例において、ｍａｘ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］は、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］［ｊ］の範囲を指定する。シンタックス要素ｍａｘ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］は、Ｃｅｉｌ（Ｌｏｇ２（２BitDepthY−ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］））ビットによって表される。さらに、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］［ｊ］＋１は、ｉに等しいｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中のｊ番目のエントリと（ｊ−１）番目のエントリとの間の深度値の差分を指定する。シンタックス要素ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］［ｊ］は、Ｃｅｉｌ（Ｌｏｇ２（ｍａｘ＿ｄｉｆｆ＿ｍｉｎｕｓ１［ｉ］＋１））ビットによって表される。
【０１９２】
[0195]さらに、ｄｅｐｔｈ＿ｏｖｅｒｌａｐ＿ｉｄｃ［ｉ］は、ｉに等しいｌａｙｅｒ＿ｉｄをもつビューの深度値とベースビューの深度値との重複ステータスを指定する。存在しないとき、ｄｅｐｔｈ＿ｏｖｅｒｌａｐ＿ｉｄｃ［ｉ］は０に等しいと推測され得る。０に等しいｄｅｐｔｈ＿ｏｖｅｒｌａｐ＿ｉｄｃ［ｉ］は、両方のビューの深度値が重複しないことがあることを示し、この値は、１回ｄｅｐｔｈ＿ｏｖｅｒｌａｐ＿ｉｄｃ［ｉ］が存在するために現在予約済みである。０よりも大きいｄｅｐｔｈ＿ｏｖｅｒｌａｐ＿ｉｄｃ［ｉ］は、ｉに等しいｌａｙｅｒ＿ｉｄをもつビューの深度値と、ベースビューの深度値とが重複することを示し、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［ｉ］［ｊ＋ｋ］がｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［１］［ｊ］に等しく設定されるか、または、ｋが０に等しいかまたはそれよりも大きい場合、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［ｉ］［ｊ］がｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［１］［ｊ＋ｋ］に等しく設定され、連続する等しい深度値の数は、ｍｉｍ（ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］，ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］）に等しいｎｕｍＯｖｅｒｌａｐＶａｌｕｅｓに等しい。
【０１９３】
[0196]０よりも大きいｄｅｐｔｈ＿ｏｖｅｒｌａｐ＿ｉｄｃ［ｉ］の値は、次の場合に対応する。１に等しいｄｅｐｔｈ＿ｏｖｅｒｌａｐ＿ｉｄｃ［ｉ］は、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［ｉ］［ｊ＋ｋ］がｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［１］［ｊ］に等しく設定されることを示し、ここにおいて、ｊは、両端値を含む、０からｎｕｍＯｖｅｒｌａｐＶａｌｕｅｓ−１までであり、ｋはｍａｘ（ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］−ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］，０）に等しい。２に等しいｄｅｐｔｈ＿ｏｖｅｒｌａｐ＿ｉｄｃ［ｉ］は、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［ｉ］［ｊ］がｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［１］［［ｊ＋ｋ］に等しく設定されることを示し、ここにおいて、ｊは、両端値を含む、０からｎｕｍＯｖｅｒｌａｐＶａｌｕｅｓ−１までであり、ｋはｍａｘ（ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］−ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］，０）に等しい。３に等しいｄｅｐｔｈ＿ｏｖｅｒｌａｐ＿ｉｄｃ［ｉ］は、ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］がｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］よりも大きいとき、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［ｉ］［ｊ＋ｋ］がｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［１］［ｊ］に等しく設定され、または、ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］がｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］よりも小さいとき、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［ｉ］［ｊ］がｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［１］［ｊ＋ｋ］に等しく設定されることを示し、ここにおいて、ｊは、両端値を含む、０からｎｕｍＯｖｅｒｌａｐＶａｌｕｅｓ−１までであり、ｋはｎｕｍｂｅｒ＿ｌｅｆｔ＿ｎｏｎｏｖｅｒｌａｐ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ［ｉ］に等しい。
【０１９４】
[0197]加えて、さらに表８に示された例を参照すると、ｎｕｍｂｅｒ＿ｌｅｆｔ＿ｎｏｎｏｖｅｒｌａｐ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ［ｉ］は、重複深度値領域の左側に、ｉまたは１に等しいｌａｙｅｒ＿ｉｄをもつビューの非重複深度値の数を指定する。いくつかの例では、ｎｕｍｂｅｒ＿ｌｅｆｔ＿ｎｏｎｏｖｅｒｌａｐ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ［ｉ］は、両端値を含む、０〜Ａｂｓ（ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］―ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］）の範囲内にある。存在しないとき、ｎｕｍｂｅｒ＿ｌｅｆｔ＿ｎｏｎｏｖｅｒｌａｐ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ［ｉ］は０に等しいと推論され得る。ｄｅｐｔｈ＿ｏｖｅｒｌａｐ＿ｉｄｃ［ｉ］が０よりも大きく、ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］がｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］よりも大きいとき、ｉに等しいｌａｙｅｒ＿ｉｄをもつビューの非重複深度値は、次のように導出される。
【数１０】
0006698351.tif 000019
【数１１】
0006698351.tif 000020
【数１２】
0006698351.tif 000021
【０１９５】
以下が適用される。
【数１３】
0006698351.tif 000022
【０１９６】
[0198]さらに別の例では、ビュー間ＤＬＴ予測の場合、非ベースビューの有効深度値の数がベースビューのそれよりも大きいときでも、新たに追加された深度値の一部分が最初のエントリの前に挿入され得、新たに追加された深度値の一部分がベースビュー中のＤＬＴの最後のエントリの後に挿入され得る。この例では、ビュー間ＤＬＴ予測方法が依然として使用され得、すなわち、ｉｎｔｅｒ＿ｖｉｅｗ＿ｄｌｔ＿ｐｒｅｄ＿ｅｎａｂｌｅ＿ｆｌａｇは１に等しい。この例のための例示的なＶＰＳシンタックスを以下の表９に示す。
【表９】
0006698351.tif 000023
【０１９７】
[0199]上記の表９の例において、イタリック体の要素は、表１に関して上記で説明した現在シンタックスからの逸脱を示す。この例において、１に等しいｃｒｏｐ＿ｅｘｔｅｎｄ＿ｂｏｔｈ＿ｓｉｄｅ＿ｆｌａｇ［ｉ］は、非重複深度値の一部分がベースビュー中のＤＬＴの最初のエントリの前に挿入され、残りの深度値がベースビュー中のＤＬＴの最後のエントリの後に挿入されること、または、ベースビューのＤＬＴの中間のｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］深度値が、ｉに等しいｌａｙｅｒ＿ｉｄをもつビューによって重複されることを示し得る。さらに、０に等しいｃｒｏｐ＿ｅｘｔｅｎｄ＿ｂｏｔｈ＿ｓｉｄｅ＿ｆｌａｇ［ｉ］は、非重複深度値のすべてがベースビュー中のＤＬＴの最初のエントリの前または最後のエントリの後に挿入されること、または、ベースビュー中のＤＬＴの最初または最後のｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］深度値が、ｉに等しいｌａｙｅｒ＿ｉｄをもつビューによって重複されることを示し得る。
【０１９８】
[0200]さらに、１に等しいｃｒｏｐ＿ｅｘｔｅｎｄ＿ｂｏｔｈ＿ｓｉｄｅ＿ｆｌａｇ［ｉ］は、ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］がｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］よりも大きいとき、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［ｉ］［ｊ＋ｋ］＝ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［１］［ｊ］であり、または、ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］がｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］よりも小さいとき、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［ｉ］［ｊ］＝ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［０］［ｊ＋ｋ］であることを示し、ここで、ｊは、両端値を含む、０〜ｎｕｍＯｖｅｒｌａｐＶａｌｕｅｓ−１であり、ｋはｎｕｍｂｅｒ＿ｌｅｆｔ＿ｎｏｎｏｖｅｒｌａｐ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ［ｉ］に等しい。さらに、０に等しいｃｒｏｐ＿ｅｘｔｅｎｄ＿ｂｏｔｈ＿ｓｉｄｅ＿ｆｌａｇ［ｉ］および１に等しいｌｅｆｔ＿ｓｉｄｅ＿ｃｒｏｐ＿ｏｒ＿ｅｘｔｅｎｄ＿ｆｌａｇ［ｉ］は、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［ｉ］［ｊ＋ｋ］＝ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［１］［ｊ］であることを示し、ここにおいて、ｊは、両端値を含む、０からｎｕｍＯｖｅｒｌａｐＶａｌｕｅｓ−１までであり、ｋはｍａｘ（ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］−ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］，０）に等しい。さらに、０に等しいｃｒｏｐ＿ｅｘｔｅｎｄ＿ｂｏｔｈ＿ｓｉｄｅ＿ｆｌａｇ［ｉ］および０に等しいｌｅｆｔ＿ｓｉｄｅ＿ｃｒｏｐ＿ｏｒ＿ｅｘｔｅｎｄ＿ｆｌａｇ［ｉ］は、ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［ｉ］［ｊ］＝ｄｌｔ＿ｄｅｐｔｈ＿ｖａｌｕｅ［１］［ｊ＋ｋ］であることを示し、ここにおいて、ｊは、両端値を含む、０からｎｕｍＯｖｅｒｌａｐＶａｌｕｅｓ−１までであり、ｋはｍａｘ（ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］−ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］，０）に等しい。
【０１９９】
[0201]上記の例において、ｎｕｍｂｅｒ＿ｌｅｆｔ＿ｎｏｎｏｖｅｒｌａｐ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ［ｉ］は、重複深度値領域の左側に、ｉまたは１に等しいｌａｙｅｒ＿ｉｄをもつビューの非重複深度値の数を指定する。ｎｕｍｂｅｒ＿ｌｅｆｔ＿ｎｏｎｏｖｅｒｌａｐ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ［ｉ］は、両端値を含む、０〜ａｂｓ（ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］−ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］）の範囲を有し得る。存在しないとき、ｎｕｍｂｅｒ＿ｌｅｆｔ＿ｎｏｎｏｖｅｒｌａｐ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ［ｉ］は０に等しいと推論され得る。
【０２００】
[0202]さらに、ｄｌｔＤｅｐｔｈＶａｌｕｅ［ｉ］［ｊ］は、ｉに等しい（ｉは１に等しくない）ｌａｙｅｒ＿ｉｄをもつ深度ビューコンポーネントのためのＤＬＴ中のｊ番目のエントリを指示し、ｉｎｔｅｒ＿ｖｉｅｗ＿ｄｌｔ＿ｐｒｅｄ＿ｅｎａｂｌｅ＿ｆｌａｇ［ｉ］は１に等しく、次のように導出され得る。ｉｎｔｅｒ＿ｖｉｅｗ＿ｄｌｔ＿ｐｒｅｄ＿ｅｎａｂｌｅ＿ｆｌａｇ［ｉ］が１に等しいとき、ｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［ｉ］はｎｕｍ＿ｄｅｐｔｈ＿ｖａｌｕｅｓ＿ｉｎ＿ｄｌｔ［１］よりも大きく、ｉに等しいｌａｙｅｒ＿ｉｄをもつビューの非重複深度値は次のように導出される。
【数１４】
0006698351.tif 000024
【数１５】
0006698351.tif 000025
【数１６】
0006698351.tif 000026
【０２０１】
ｃｒｏｐ＿ｅｘｔｅｎｄ＿ｂｏｔｈ＿ｓｉｄｅ＿ｆｌａｇ［ｉ］が１に等しいか、またはｌｅｆｔ＿ｓｉｄｅ＿ｃｒｏｐ＿ｏｒ＿ｅｘｔｅｎｄ＿ｆｌａｇ［ｉ］が０に等しいとき、以下が適用される。
【数１７】
0006698351.tif 000027
【数１８】
0006698351.tif 000028
【０２０２】
ｃｒｏｐ＿ｅｘｔｅｎｄ＿ｂｏｔｈ＿ｓｉｄｅ＿ｆｌａｇ［ｉ］が１に等しいか、またはｌｅｆｔ＿ｓｉｄｅ＿ｃｒｏｐ＿ｏｒ＿ｅｘｔｅｎｄ＿ｆｌａｇ［ｉ］が１に等しいとき、以下が適用される。
【数１９】
0006698351.tif 000029
【０２０３】
[0203]本開示の態様はまた、ＤＬＴ予測のシグナリングに関する。たとえば、表２〜表９の例についてＶＰＳに関して説明するが、いくつかの例では、そのようなシグナリングは、ＰＰＳなど、別のパラメータセット中で実行され得る。
【０２０４】
[0204]一例では、ＤＬＴは、ＤＬＴがシーケンスレベルで必要とされる場合にのみ、ＶＰＳまたはＳＰＳ中でシグナリングされ得る。ただし、ピクチャレベルで必要なときは、たとえば、ベースビューのスライスヘッダ拡張の一部として複数のビューのＤＬＴがシグナリングされ得る。追加または代替として、ＤＬＴは、フラグがＤＬＴの存在を示すとき、現在スライスがランダムアクセススライスであるとき、現在スライスがイントラのスライスタイプを有するときという状況のうちの１つでのみシグナリングされ得る。
【０２０５】
[0205]いくつかの例では、複数のビューのＤＬＴのビュー間予測が有効でないことがあり、ＤＬＴの存在を示すフラグがある場合、または、スライスがランダムなアクセスピクチャに属することを示すＮＡＬユニットタイプをスライスが有するとき、各ＤＬＴがスライスヘッダ中でシグナリングされ得る。他の例では、ＨＥＶＣに記載されているように、ＤＬＴが適応パラメータセット中でシグナリングされ得る。
【０２０６】
[0206]スライスレベルＤＬＴ予測の場合、一例では、ＤＬＴがスライスヘッダ中でシグナリングされ得、１つのピクチャ内の２つのスライス間の深度値の数（たとえば、ＤＬＴ中の要素の数）間の差分がシグナリングされ得る。この例では、スライス間ＤＬＴ予測が、ビュー間ＤＬＴ予測に関して本明細書で説明する技法の任意の組合せを使用して達成され得る。
【０２０７】
[0207]さらに他の例では、ＤＬＴがＰＰＳ中でシグナリングされ得、１つのビュー中の２つの異なるピクチャ間の深度値の数（すなわち、ＤＬＴ中の要素の数）間の差分がシグナリングされ得る。再び、この例では、ピクチャ間ＤＬＴ予測が、ビュー間ＤＬＴ予測に関して本明細書で説明する技法の任意の組合せを使用して達成され得る。
【０２０８】
[0208]一例では、ＰＰＳ中のｓｌｉｃｅ＿ｓｅｇｍｅｎｔ＿ｈｅａｄｅｒ＿ｅｘｔｅｎｓｉｏｎ＿ｐｒｅｓｅｎｔ＿ｆｌａｇを１になるように設定することと、ｓｌｉｃｅ＿ｓｅｇｍｅｎｔ＿ｈｅａｄｅｒ＿ｅｘｔｅｎｓｉｏｎ＿ｌｅｎｇｔｈのシンタックス要素の後のバイトを用いて情報を搬送することとによってピクチャレベルＤＬＴシグナリングをサポートするために、ＤＬＴはスライスヘッダ中に存在する。この場合、ＤＬＴは、ベースビュー構成要素に関連するスライスヘッダ中にのみ存在し得る。
【０２０９】
[0209]別の例では、ＤＬＴは１つのスライスヘッダ（たとえば、スライスヘッダ「Ａ」）中でシグナリングされ得、スライスヘッダ予測を通して別のＤＬＴのビュー間予測が有効になり得る。たとえば、（たとえば、同じアクセスユニット内のビューコンポーネントのための）１つまたは複数のスライスヘッダが、ＤＬＴを含んでいるスライスヘッダ「Ａ」によって予測され得る。
【０２１０】
[0210]別の例では、ＤＬＴは、たとえば、ｐｐｓ＿ｅｘｔｅｎｓｉｏｎ＿ｆｌａｇを１に設定することによってＰＰＳ中に存在し得る。さらに、ＤＬＴは、ベースビューのビューコンポーネント中のスライスによって参照されるＰＰＳ中にのみ存在することがある。この場合、ＰＰＳは、非ベースビューのビューコンポーネントによって依然として参照され得る。１つのＰＰＳが、複数のビューのためのすべてのＤＬＴを含んでいることがある。他の例では、ビューコンポーネントのＤＬＴが、ＰＰＳ中に存在し、同じビューに属するビューコンポーネントによってのみ参照され得る。
【０２１１】
[0211]図８は、ビュー合成予測に関係する情報をコーディングするための例示的な方法を示すフローチャートである。図８の方法について、ビデオエンコーダ２０（図１および図２）に関して説明する。ただし、他のビデオコーディングデバイスが、同様の方法を実行するように構成され得ることを理解されたい。その上、本方法におけるいくつかのステップは、異なる順序で、または並行して実行され得る。同様に、様々な例では、いくつかのステップが省略され得、他のステップが追加され得る。
【０２１２】
[0212]図８の例において、ビデオエンコーダ２０は、いくつかのピクチャおよび／またはスライスのための１つまたは複数の深度マップを決定する（１６０）。いくつかの事例では、ビデオエンコーダ２０は、複数のビューを符号化し得、ビューのうちの１つまたは複数の深度マップを符号化し得る。ビデオエンコーダ２０は、深度マップのためのＤＬＴを生成し、たとえば、昇順で深度マップの深度値を分類する（１６２）。ビデオエンコーダ２０が複数のビューを符号化する事例では、ビデオエンコーダ２０は、ビューのうちの１つまたは複数のためのＤＬＴを生成し得る。
【０２１３】
[0213]本開示のいくつかの態様によれば、ビデオエンコーダ２０は、第１のＤＬＴのための第１の深度値を決定する（１６４）。さらに、ビデオエンコーダ２０は、第１のＤＬＴの残りの深度値のための差分値を決定する（１６６）。たとえば、ビデオエンコーダは、第１のＤＬＴの１つまたは複数の他の値に対して第１のＤＬＴの１つまたは複数の深度値を符号化し得る。いくつかの例では、ビデオエンコーダ２０は、第１のＤＬＴの連続する値間の差分を決定し、差分値を符号化し得る。他の例では、上述のように、ビデオエンコーダ２０は、たとえば、３つ以上の連続する値間の２次差分を決定し得る。いくつかの例では、ビデオエンコーダ２０は、差分値をコーディングするとき、深度値差分の範囲（たとえば、最大差分または最小差分）を考慮し得る。
【０２１４】
[0214]ビデオエンコーダ２０は、関連するＤＬＴをもつ２つ以上のビューがあるかどうかを決定し得る（１６８）。いくつかの例では、関連するＤＬＴをもつ２つ以上のビューがある場合、ビデオエンコーダ２０は、他のビューのＤＬＴのための差分深度値を決定する（１７０）。たとえば、ビデオエンコーダ２０は、あるＤＬＴの１つまたは複数の深度値が別のビューの別のＤＬＴの１つまたは複数の深度値と同様であることを示す、１つまたは複数のシンタックス要素を符号化し得る。いくつかの例では、上述のように、シンタックス要素は重複する深度値（たとえば、２つ以上のＤＬＴ中に現れる深度値）のロケーションを示し得る。
【０２１５】
[0215]ビデオエンコーダ２０は、次いで、ビットストリーム中のＤＬＴを符号化する（１７２）。たとえば、ビデオエンコーダ２０は、本明細書で説明したシンタックス要素を表すデータを符号化し得、いくつかの例では、ＰＰＳなど、パラメータセット中にそのようなデータを含め得る。
【０２１６】
[0216]図９は、ビュー合成予測に関係する情報をコーディングするための例示的な方法を示すフローチャートである。図９の方法について、ビデオデコーダ３０（図１および図３）に関して説明する。ただし、他のビデオコーディングデバイスが、同様の方法を実行するように構成され得ることを理解されたい。その上、本方法におけるいくつかのステップは、異なる順序で、または並行して実行され得る。同様に、様々な例では、いくつかのステップが省略され得、他のステップが追加され得る。
【０２１７】
[0217]図９の例において、ビデオデコーダ３０は、符号化ビットストリームからの圧縮されたＤＬＴを復号する（１８０）。たとえば、ビデオデコーダ３０は、１つまたは複数の他の深度値の値に対して１つまたは複数の深度値の値を示し得る、深度差分値のセットを復号し得る。さらに、ビデオデコーダ３０は、ＤＬＴを再構成する際にビデオデコーダ３０を支援するための様々な他の情報（たとえば、表２〜表９に関して上記で説明した他のシンタックスなど）を復号し得る。
【０２１８】
[0218]本開示のいくつかの態様によれば、ビデオデコーダ３０は、第１のＤＬＴのための第１の深度値を決定する（１８２）。たとえば、ビデオデコーダ３０は、第１のＤＬＴの相対的な第１の深度値の値を示す１つまたは複数のシンタックス要素を受信し、シンタックスに基づいて第１の深度値を決定し得る。
【０２１９】
[0219]さらに、ビデオデコーダ３０は、第１のＤＬＴの残りの深度値のために受信された差分値を使用して残りの深度値を再構成する（１８４）。たとえば、ビデオデコーダ３０は、第１のＤＬＴの１つまたは複数の他の深度値に対して１つまたは複数の深度値の値を示す１つまたは複数のシンタックス要素を受信し得る。いくつかの例では、ビデオデコーダ３０は、第１のＤＬＴの連続する値間の差分を示す１つまたは複数のシンタックス要素を復号し得る。他の例では、上述のように、ビデオデコーダ３０は、たとえば、３つ以上の連続する値間の２次差分を示すシンタックス要素を受信し得る。いくつかの例では、ビデオデコーダ３０は、差分値を復号するときに深度値差分の範囲（たとえば、最大差分または最小差分）を考慮し得る。いずれの場合も、ビデオデコーダ３０は、たとえば、差分値を適切な前に再構成された深度値に加算することによって、受信された値に基づいて第１のＤＬＴを再構成し得る。
【０２２０】
[0220]いくつかの事例では、ビデオデコーダ３０は、複数のビューを復号し得、ビューのうちの１つまたは複数のＤＬＴおよび深度マップを復号し得る。したがって、ビデオデコーダ３０は、関連するＤＬＴをもつ２つ以上のビューがあるかどうかを決定し得る（１８６）。いくつかの例では、関連するＤＬＴをもつ２つ以上のビューがある場合、ビデオデコーダ３０は、他のビューのＤＬＴのための受信された差分値を使用して他のビューのＤＬＴを再構成する（１８８）。たとえば、ビデオデコーダ３０は、あるＤＬＴの１つまたは複数の深度値が別のビューの別のＤＬＴの１つまたは複数の深度値と同じであることを示す、１つまたは複数のシンタックス要素を復号し得る。いくつかの例では、上述のように、シンタックス要素は重複する深度値（たとえば、２つ以上のＤＬＴ中に現れる深度値）のロケーションを示し得る。
【０２２１】
[0221]ビデオデコーダ３０は、次いで、復号されたＤＬＴを使用してピクチャのための深度マップを決定する（１９０）。たとえば、上述のように、ビデオデコーダ３０は、（たとえば、インデックス差分値と予測子との組合せに基づいて）ピクチャの深度値のためのＤＬＴへのインデックスを決定し得る。
【０２２２】
[0222]上記で説明した技法は、その両方が一般にビデオコーダと呼ばれることがある、ビデオエンコーダ２０（図１および図２）および／またはビデオデコーダ３０（図１および図３）によって実行され得る。さらに、ビデオコーディングは、概して、適用可能な場合、ビデオ符号化またはビデオ復号を指し得る。
【０２２３】
[0223]本開示の技法について概して３Ｄ−ＨＥＶＣに関して説明するが、本技法はこのように限定されない。上記で説明した技法はまた、他の現在の規格またはまだ開発されていない将来の規格に適用可能であり得る。たとえば、深度コーディングのための技法はまた、ＨＥＶＣのマルチビュー拡張（たとえば、いわゆるＭＶ−ＨＥＶＣ）、ＨＥＶＣに対するスケーラブル拡張、または深度コンポーネントを有する他の現在または将来の規格に適用可能であり得る。
【０２２４】
[0224]例に応じて、本明細書で説明した方法のうちのいずれかのいくつかの行為またはイベントは、異なるシーケンスで実行され得、互いに付加、マージ、または除外され得る（たとえば、すべての説明した行為またはイベントが、方法の実施のために必要であるとは限らない）ことを理解されたい。その上、いくつかの例では、行為またはイベントは、連続的にではなく、同時に、たとえば、マルチスレッド処理、割込み処理、または複数のプロセッサを通じて実行され得る。さらに、本開示のいくつかの態様について、明快のために単一のモジュールまたはユニットによって実行されるものとして説明したが、本開示の技法は、ビデオコーダに関連するユニットまたはモジュールの組合せによって実行され得ることを理解されたい。
【０２２５】
[0225]技法の様々な態様の特定の組合せについて上記で説明したが、これらの組合せは、本開示で説明する技法の例を単に示すために与えられる。したがって、本開示の技法は、これらの例示的な組合せに限定されるべきではなく、本開示で説明される技法の様々な態様の任意の想起可能な組合せを包含し得る。
【０２２６】
[0226]１つまたは複数の例では、説明した機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、１つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、データ記憶媒体などの有形媒体に対応するコンピュータ可読記憶媒体、または、たとえば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含む通信媒体を含み得る。
【０２２７】
[0227]このようにして、コンピュータ可読媒体は、概して、（１）非一時的である有形コンピュータ可読記憶媒体、あるいは（２）信号または搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明する技法の実装のための命令、コードおよび／またはデータ構造を取り出すために、１つまたは複数のコンピュータあるいは１つまたは複数のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品は、コンピュータ可読記憶媒体とパッケージング材料とを含み得る。
【０２２８】
[0228]限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（登録商標）、ＣＤ−ＲＯＭまたは他の光ディスクストレージ、磁気ディスクストレージ、または他の磁気ストレージデバイス、フラッシュメモリ、あるいは命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。
【０２２９】
[0229]ただし、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用されるディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザーディスク（登録商標）（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）およびｂｌｕ−ｒａｙ（登録商標）ディスク（disc）を含み、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザーで光学的に再生する。上記の組合せも、コンピュータ可読媒体の範囲内に含まれるべきである。
【０２３０】
[0230]命令は、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、あるいは他の等価な集積回路またはディスクリート論理回路など、１つまたは複数のプロセッサによって実行され得る。したがって、本明細書で使用する「プロセッサ」という用語は、前述の構造、または本明細書で説明する技法の実装に好適な他の構造のいずれかを指すことがある。さらに、いくつかの態様では、本明細書で説明した機能は、符号化および復号のために構成された専用のハードウェアおよび／またはソフトウェアモジュール内に与えられるか、あるいは複合コーデックに組み込まれ得る。また、本技法は、１つまたは複数の回路または論理要素中に十分に実装され得る。
【０２３１】
[0231]本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）またはＩＣのセット（たとえば、チップセット）を含む、多種多様なデバイスまたは装置において実装され得る。本開示では、開示する技法を実行するように構成されたデバイスの機能的態様を強調するために様々な構成要素、モジュール、またはユニットについて説明したが、それらの構成要素、モジュール、またはユニットを、必ずしも異なるハードウェアユニットによって実現する必要があるとは限らない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェアおよび／またはファームウェアとともに、上記で説明した１つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作ハードウェアユニットの集合によって与えられ得る。
【０２３２】
[0232]本開示の様々な態様について説明した。これらおよび他の態様は以下の特許請求の範囲内に入る。
以下に、出願当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
ビデオデータをコーディングする方法であって、前記方法は、
深度ルックアップテーブル（ＤＬＴ）の第１の深度値を決定することと、ここにおいて、前記第１の深度値が前記ビデオデータの第１のピクセルに関連する、
前記ＤＬＴの第２の深度値を決定することと、ここにおいて、前記第２の深度値が前記ビデオデータの第２のピクセルに関連する、
前記第１の深度値に対して前記第２の深度値をコーディングすることを含む、前記ＤＬＴをコーディングすることと
を備える、方法。
［Ｃ２］
前記第２の深度値が前記ＤＬＴ中の前記第１の深度値に連続的に続き、前記第２の深度値をコーディングすることが、前記第２の深度値と前記第１の深度値との間の差分を決定することと、前記差分値をコーディングすることとを備える、Ｃ１に記載の方法。
［Ｃ３］
前記第２の深度値が前記ＤＬＴ中の前記第１の深度値に連続的に続き、前記方法は、
前記ビデオデータの第３のピクセルに関連する前記ＤＬＴの第３の深度値を決定することと、ここにおいて、前記第３の深度値が前記ＤＬＴ中の前記第２の深度値に連続的に続く、
前記第３の深度値と前記第２の深度値との間の差分値をコーディングすることと
をさらに備える、Ｃ２に記載の方法。
［Ｃ４］
前記ＤＬＴが、前記第１の深度値と前記第２の深度値とを含む複数の深度値を含み、前記方法が、
前記複数の連続する深度値間の差分値を決定することと、
前記差分値のうちの最大差分値に基づいて前記ＤＬＴの前記差分値の範囲を決定することと
をさらに備え、
ここにおいて、前記第２の深度値をコーディングすることが、前記範囲に基づいて前記第２の深度値をコーディングすることを備える、
Ｃ１に記載の方法。
［Ｃ５］
前記ＤＬＴが、前記第１の深度値と前記第２の深度値とを含む複数の深度値を含み、前記方法は、
前記複数の連続する深度値間の差分値を決定することと、
前記差分値のすべてが等しいときに、前記深度値のすべてが等しいという指示をコーディングすることと
をさらに備え、
ここにおいて、前記第１の深度値に対して前記第２の深度値をコーディングすることが、前記差分値をコーディングすることを備える、
Ｃ１に記載の方法。
［Ｃ６］
前記ＤＬＴをコーディングすることが、固定長コードを用いて前記第１の深度値と前記第２の深度値とをコーディングすることを備える、Ｃ１に記載の方法。
［Ｃ７］
前記ＤＬＴをコーディングすることは、前記第１の深度値と前記第２の深度値とが同じビット長を有するように、前記第１の深度値と前記第２の深度値とをコーディングすることを備える、前記Ｃ１に記載の方法。
［Ｃ８］
前記ＤＬＴが、第１のビューに関連する第１のＤＬＴであり、前記方法は、
第２のＤＬＴの少なくとも１つの深度値を決定することと、ここにおいて、第２のＤＬＴが第２の異なるビューに関連する、
前記第１のビューに関連する前記第１のＤＬＴ中の深度値に基づいて、前記第２のＤＬＴの前記少なくとも１つの深度値をコーディングすることと、
ビュー間ＤＬＴ予測が有効であるという指示をコーディングすることと
をさらに備える、Ｃ１に記載の方法。
［Ｃ９］
前記第２のＤＬＴが、前記第１のＤＬＴ中に含まれる複数の連続する深度値を含み、前記第２のＤＬＴの前記少なくとも１つの深度値をコーディングすることが、前記第２のＤＬＴの前記複数の連続する深度値の前記第１のＤＬＴ中のロケーションの指示をコーディングすることを備える、Ｃ８に記載の方法。
［Ｃ１０］
前記ビュー間ＤＬＴ予測が有効であるという前記指示をコーディングすることが、ピクチャパラメータセット、シーケンスパラメータセット、またはスライスヘッダのうちの少なくとも１つ中に前記指示をコーディングすることを備える、Ｃ８に記載の方法。
［Ｃ１１］
前記ＤＬＴをコーディングすることが、前記ＤＬＴを符号化することを備え、前記ＤＬＴを符号化することが、符号化ビットストリーム中の前記ＤＬＴを表すデータを符号化することを備える、Ｃ１に記載の方法。
［Ｃ１２］
前記ＤＬＴをコーディングすることが、前記ＤＬＴを復号することを備え、前記ＤＬＴを復号することが、符号化ビットストリームからの前記ＤＬＴを表すデータを復号することを備える、Ｃ１に記載の方法。
［Ｃ１３］
ビデオデータをコーディングするための装置であって、前記装置は、
ビデオデータを記憶するメモリと、
深度ルックアップテーブル（ＤＬＴ）の第１の深度値を決定することと、ここにおいて、前記第１の深度値が前記ビデオデータの第１のピクセルに関連する、
前記ＤＬＴの第２の深度値を決定することと、ここにおいて、前記第２の深度値が前記ビデオデータの第２のピクセルに関連する、
前記第１の深度値に対して前記第２の深度値をコーディングすることを含む、前記ＤＬＴをコーディングすることと
を行うように構成された、１つまたは複数のプロセッサと
を備える、装置。
［Ｃ１４］
前記第２の深度値が前記ＤＬＴ中の前記第１の深度値に連続的に続き、前記第２の深度値をコーディングするために、前記１つまたは複数のプロセッサが、前記第２の深度値と前記第１の深度値との間の差分を決定することと、前記差分値をコーディングすることとを行うように構成された、Ｃ１３に記載の装置。
［Ｃ１５］
前記第２の深度値が前記ＤＬＴ中の前記第１の深度値に連続的に続き、前記１つまたは複数のプロセッサは、
前記ビデオデータの第３のピクセルに関連する前記ＤＬＴの第３の深度値を決定することと、ここにおいて、前記第３の深度値が前記ＤＬＴ中の前記第２の深度値に連続的に続く、
前記第３の深度値と前記第２の深度値との間の差分値をコーディングすることと
を行うようにさらに構成された、Ｃ１４に記載の装置。
［Ｃ１６］
前記ＤＬＴが、前記第１の深度値と前記第２の深度値とを含む複数の深度値を含み、前記１つまたは複数のプロセッサが、
前記複数の連続する深度値間の差分値を決定することと、
前記差分値のうちの最大差分値に基づいて前記ＤＬＴの前記差分値の範囲を決定することと
を行うようにさらに構成され、
ここにおいて、前記第２の深度値をコーディングするために、前記１つまたは複数のプロセッサが、前記範囲に基づいて前記第２の深度値をコーディングするように構成された、
Ｃ１３に記載の装置。
［Ｃ１７］
前記ＤＬＴが、前記第１の深度値と前記第２の深度値とを含む複数の深度値を含み、前記１つまたは複数のプロセッサは、
前記複数の連続する深度値間の差分値を決定することと、
前記差分値のすべてが等しいとき、前記深度値のすべてが等しいという指示をコーディングすることと
を行うようにさらに構成され、
ここにおいて、前記第１の深度値に対して前記第２の深度値をコーディングするために、前記１つまたは複数のプロセッサが、前記差分値をコーディングするように構成された、
Ｃ１３に記載の装置。
［Ｃ１８］
前記ＤＬＴをコーディングするために、前記１つまたは複数のプロセッサが、固定長コードを用いて前記第１の深度値と前記第２の深度値とをコーディングするように構成された、Ｃ１３に記載の装置。
［Ｃ１９］
前記ＤＬＴをコーディングするために、前記１つまたは複数のプロセッサは、前記第１の深度値と前記第２の深度値とが同じビット長を有するように、前記第１の深度値と前記第２の深度値とをコーディングするように構成された、Ｃ１３に記載の装置。
［Ｃ２０］
前記ＤＬＴが、第１のビューに関連する第１のＤＬＴであり、前記１つまたは複数の前記プロセッサは、
第２のＤＬＴの少なくとも１つの深度値を決定することと、ここにおいて、第２のＤＬＴが第２の異なるビューに関連する、
前記第１のビューに関連する前記第１のＤＬＴ中の深度値に基づいて、前記第２のＤＬＴの前記少なくとも１つの深度値をコーディングすることと、
ビュー間ＤＬＴ予測が有効であるという指示をコーディングすることと
を行うようにさらに構成された、Ｃ１３に記載の装置。
［Ｃ２１］
前記第２のＤＬＴが、前記第１のＤＬＴ中に含まれる複数の連続する深度値を含み、前記第２のＤＬＴの前記少なくとも１つの深度値をコーディングするために、前記１つまたは複数の前記プロセッサが、前記第２のＤＬＴの前記複数の連続する深度値の前記第１のＤＬＴ中のロケーションの指示をコーディングするように構成された、Ｃ２０に記載の装置。
［Ｃ２２］
ビュー間ＤＬＴ予測が有効であるという前記指示をコーディングするために、前記１つまたは複数の前記プロセッサが、ピクチャパラメータセット、シーケンスパラメータセット、またはスライスヘッダのうちの少なくとも１つ中に前記指示をコーディングするように構成された、Ｃ２０に記載の装置。
［Ｃ２３］
前記ＤＬＴをコーディングするために、前記１つまたは複数のプロセッサが、前記ＤＬＴを符号化するように構成され、前記ＤＬＴを符号化するために、前記１つまたは複数のプロセッサが、符号化ビットストリーム中の前記ＤＬＴを表すデータを符号化するように構成された、Ｃ１３に記載の装置。
［Ｃ２４］
前記ＤＬＴをコーディングするために、前記１つまたは複数のプロセッサが、前記ＤＬＴを復号するように構成され、前記ＤＬＴを符号化するために、前記１つまたは複数のプロセッサが、符号化ビットストリームからの前記ＤＬＴを表すデータを復号するように構成された、Ｃ１３に記載の装置。
［Ｃ２５］
ビデオデータをコーディングするための装置であって、前記装置は、
深度ルックアップテーブル（ＤＬＴ）の第１の深度値を決定するための手段と、ここにおいて、前記第１の深度値が前記ビデオデータの第１のピクセルに関連する、
前記ＤＬＴの第２の深度値を決定するための手段と、ここにおいて、前記第２の深度値が、前記ビデオデータの第２のピクセルに関連する、
前記第１の深度値に対して前記第２の深度値をコーディングすることを含む、前記ＤＬＴをコーディングするための手段と
を備える、装置。
［Ｃ２６］
前記第２の深度値が前記ＤＬＴ中の前記第１の深度値に連続的に続き、前記第２の深度値をコーディングための手段が、前記第２の深度値と前記第１の深度値との間の差分を決定するための手段と、前記差分値をコーディングするための手段とを備える、Ｃ２５に記載の装置。
［Ｃ２７］
前記ＤＬＴが、第１のビューに関連する第１のＤＬＴであり、前記装置は、
第２のＤＬＴの少なくとも１つの深度値を決定するための手段と、ここにおいて、第２のＤＬＴが第２の異なるビューに関連する、
前記第１のビューに関連する前記第１のＤＬＴ中の深度値に基づいて、前記第２のＤＬＴの前記少なくとも１つの深度値をコーディングするための手段と、
ビュー間ＤＬＴ予測が有効であるという指示をコーディングするための手段と
をさらに備える、Ｃ２５に記載の装置。
［Ｃ２８］
命令を記憶した非一時的コンピュータ可読記憶媒体であって、前記命令は、実行されたとき、前記１つまたは複数のプロセッサに、
深度ルックアップテーブル（ＤＬＴ）の第１の深度値を決定することと、ここにおいて、前記第１の深度値が前記ビデオデータの第１のピクセルに関連する、
前記ＤＬＴの第２の深度値を決定することと、ここにおいて、前記第２の深度値が前記ビデオデータの第２のピクセルに関連する、
前記第１の深度値に対して前記第２の深度値をコーディングすることを含む、前記ＤＬＴをコーディングすることと
を行わせる、非一時的コンピュータ可読記憶媒体。
［Ｃ２９］
前記第２の深度値が前記ＤＬＴ中の前記第１の深度値に連続的に続き、ここにおいて、前記第２の深度値をコーディングするために、前記命令が、前記第２の深度値と前記第１の深度値との間の差分を決定することと、前記差分値をコーディングすることとを行わせる、Ｃ２８に記載の非一時的コンピュータ可読記憶媒体。
［Ｃ３０］
前記ＤＬＴが、第１のビューに関連する第１のＤＬＴであり、前記１つまたは複数のプロセッサに、
第２のＤＬＴの少なくとも１つの深度値を決定することと、ここにおいて、第２のＤＬＴが第２の異なるビューに関連する、
前記第１のビューに関連する前記第１のＤＬＴ中の深度値に基づいて、前記第２のＤＬＴの前記少なくとも１つの深度値をコーディングすることと、
ビュー間ＤＬＴ予測が有効であるという指示をコーディングすることと
を行わせる命令をさらに備える、Ｃ２８に記載の非一時的コンピュータ可読記憶媒体。
【図１】
0006698351.tif 000030
【図２】
0006698351.tif 000031
【図３】
0006698351.tif 000032
【図４】
0006698351.tif 000033
【図５Ａ】
0006698351.tif 000034
【図５Ｂ】
0006698351.tif 000035
【図６】
0006698351.tif 000036
【図７】
0006698351.tif 000037
【図８】
0006698351.tif 000038
【図９】
0006698351.tif 000039