(57)【特許請求の範囲】
【請求項１】
深度ブロックを復号する方法であって、
深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを示すシンタックス要素を受信することと、ここにおいて、前記深度ＰＵは１つまたは複数のサブＰＵを備え、各サブＰＵは、前記シンタックス要素によって示される前記サイズに等しいサイズを有し、別個の動き情報が、各サブＰＵについて、前記それぞれのサブＰＵにコロケートされたテクスチャブロックから継承され得る、
サブＰＵ  ＭＰＩモードに基づくＭＰＩマージまたはスキップ候補が動き予測に利用され得ることを示すインデックス値を受信すると、前記サブＰＵの各々とコロケートされた対応するテクスチャブロックに少なくとも部分的に基づいて、前記深度ブロックの前記サブＰＵの各々について動き情報を継承することと、
を備える方法。
【請求項２】
深度ブロックを符号化する方法であって、
深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを決定することと、ここにおいて、前記深度ＰＵは１つまたは複数のサブＰＵを備え、各サブＰＵは等しいサイズを有し、別個の動き情報が、各サブＰＵについて、前記それぞれのサブＰＵにコロケートされたテクスチャブロックから継承され得る、
前記サブＰＵの各々とコロケートされたテクスチャブロックに対応するＭＰＩに少なくとも部分的に基づいて、前記深度ブロックの各サブＰＵを符号化することと、
前記深度ＰＵにおけるＭＰＩに関する各サブＰＵの前記サイズを示すシンタックス要素を生成することと、
を備える方法。
【請求項３】
前記シンタックス要素はシーケンスパラメータセット（ＳＰＳ）において受信される、請求項１または請求項２に記載の方法。
【請求項４】
前記深度ブロックは複数の深度ＰＵを含み、前記深度ブロックはアクセスユニットにおける複数の深度ブロックのうちの１つであり、前記シンタックス要素は、前記アクセスユニットにおける各それぞれの深度ブロックにおいて各深度ＰＵの各サブＰＵについてのＭＰＩサイズをさらに示す、請求項３に記載の方法。
【請求項５】
前記サブＰＵの各々とコロケートされた対応するテクスチャブロックに少なくとも部分的に基づいて、各サブＰＵについて動き情報を継承することは、
前記深度ＰＵが深度ＰＵの第１のセットにあると決定することと、ここにおいて、深度ＰＵの前記第１のセットにおける各深度ＰＵは、３と前記シンタックス要素の値との合計値分１をビット単位左シフトした値の２乗よりも小さいサイズを有する、
前記サブＰＵの各々とコロケートされた対応するテクスチャブロックに少なくとも部分的に基づいて、前記深度ＰＵにおける各サブＰＵについて動き情報を継承することと、  を備える、請求項１に従属するときの請求項４に記載の方法。
【請求項６】
前記サブＰＵの各々とコロケートされたテクスチャブロックに対応するＭＰＩに少なくとも部分的に基づいて、前記サブＰＵを符号化することは、
前記深度ＰＵが深度ＰＵの第１のセットにあると決定することと、ここにおいて、深度ＰＵの前記第１のセットにおける各深度ＰＵは、３と前記シンタックス要素の値との合計値分１をビット単位左シフトした値の２乗よりも小さいサイズを有する、
前記サブＰＵの各々とコロケートされたテクスチャブロックに対応するＭＰＩに少なくとも部分的に基づいて、前記深度ＰＵにおける各サブＰＵを符号化することと、
を備える、請求項２に従属するときの請求項４に記載の方法。
【請求項７】
前記深度ＰＵは第１の深度ＰＵであり、前記方法は、
第２の深度ＰＵが深度ＰＵの第２のセットにあると決定することと、ここにおいて、深度ＰＵの前記第２のセットにおける各深度ＰＵは、３と前記シンタックス要素の値との合計値分１をビット単位左シフトした値の２乗よりも大きいかまたはそれに等しいサイズを有する、
それぞれ、前記ＭＰＩサイズに基づかずに、前記第２の深度ＰＵの各サブＰＵについてＭＰＩを継承すること、または、前記ＭＰＩサイズに基づかずに、ＭＰＩを使用して前記第２の深度ＰＵの各サブＰＵを符号化することと、
をさらに備える、請求項５または請求項６に記載の方法。
【請求項８】
前記シンタックス要素の値は、１よりも大きいかまたはそれに等しく、前記方法は、
アクセスユニットにおける各テクスチャブロックをそれぞれ復号または符号化することと、ここにおいて、前記アクセスユニットは前記深度ブロックを含む、
各テクスチャブロック上の１６×１６ブロックに対して動き圧縮を実施することと、
をさらに備える、請求項１または請求項２に記載の方法。
【請求項９】
前記アクセスユニットにおける各テクスチャブロックは、前記アクセスユニットにおける対応するコロケートされた深度ブロックに対して、独立してコーディングされ、各テクスチャブロックは、前記アクセスユニットにおける前記深度ブロックのうちのいずれを復号するよりも前に復号され、前記アクセスユニットにおける前記深度ブロックの各々を復号した後、動き圧縮が実施される、請求項１に従属するときの請求項８に記載の方法。
【請求項１０】
前記シンタックス要素は、両端値を含む０〜３の範囲を有し、
前記シンタックス要素の値が０であるとき、前記方法は、
前記ＭＰＩサイズが８×８であると決定することをさらに備える、
請求項１または請求項２に記載の方法。
【請求項１１】
前記コロケートされたテクスチャブロックが２つのＰＵを含むかどうかを決定することと、
前記コロケートされたテクスチャブロックが２つのＰＵを含むと決定することに応答して、
前記コロケートされたテクスチャブロックにおける各ＰＵのサイズが４×８または８×４であるかどうかを決定することと、
各パーティションのサイズが、前記コロケートされたテクスチャブロックにおける各ＰＵの前記サイズに等しくなるように、前記サブＰＵを２つのより小さいユニットにパーティション分割することと、
前記２つのより小さいユニットの各々に対して単方向動き補償を適用することと、
をさらに備える、請求項１０に記載の方法。
【請求項１２】
前記サブＰＵを復号することは、ＲｅｆＰｉｃＬｉｓｔ０に対応する２つの動きベクトルを継承することを備える、請求項１１に記載の方法。
【請求項１３】
深度ブロックを復号するためのデバイスであって、
前記深度ブロックと関連付けられたデータを記憶するように構成されたメモリと、
１つまたは複数のプロセッサであって、
深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを示すシンタックス要素を受信することと、ここにおいて、前記深度ＰＵは１つまたは複数のサブＰＵを備え、各サブＰＵは、前記シンタックス要素によって示される前記サイズに等しいサイズを有し、別個の動き情報が、各サブＰＵについて、前記それぞれのサブＰＵにコロケートされたテクスチャブロックから継承され得る、
サブＰＵ  ＭＰＩモードに基づくＭＰＩマージまたはスキップ候補が動き予測に利用され得ることを示すインデックス値を受信すると、前記サブＰＵの各々とコロケートされた対応するテクスチャブロックに少なくとも部分的に基づいて、前記深度ブロックの前記サブＰＵの各々について動き情報を継承することと、
を行うように構成された１つまたは複数のプロセッサと、
を備えるデバイス。
【請求項１４】
深度ブロックを符号化するためのデバイスであって、
前記深度ブロックと関連付けられたデータを記憶するように構成されたメモリと、
１つまたは複数のプロセッサであって、
深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを決定することと、ここにおいて、前記深度ＰＵは１つまたは複数のサブＰＵを備え、各サブＰＵは等しいサイズを有し、別個の動き情報が、各サブＰＵについて、前記それぞれのサブＰＵにコロケートされたテクスチャブロックから継承され得る、
前記サブＰＵの各々とコロケートされたテクスチャブロックに対応するＭＰＩに少なくとも部分的に基づいて、前記深度ブロックの各サブＰＵを符号化することと、
前記深度ＰＵにおけるＭＰＩに関する各サブＰＵの前記サイズを示すシンタックス要素を生成することと、
を行うように構成された１つまたは複数のプロセッサと、
を備えるデバイス。
【請求項１５】
処理ユニットによって実行されると、請求項１〜請求項１２のいずれか一項に記載の方法を実行する命令を記憶するコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]本願は、その内容全体が参照によって本明細書に組み込まれている、２０１３年１２月１３日に出願された米国特許仮出願第６１／９１６０６８号の利益を主張するものである。
【０００２】
[0002]本開示は、ビデオコーディングおよび圧縮に関し、より詳細には、３次元（３Ｄ）ビデオをコーディングする際に使用され得るコーディング技法に関する。
【背景技術】
【０００３】
[0003]デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップまたはデスクトップコンピュータ、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、携帯電話または衛星無線電話、ビデオ遠隔会議デバイスなどを含む、広範囲にわたるデバイスに組み込まれ得る。デジタルビデオデバイスは、デジタルビデオ情報をより効率的に送信、受信および記憶するための、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４，Ｐａｒｔ  １０，アドバンストビデオコーディング（AVC:Advanced Video Coding）、最近に開発された高効率ビデオコーディング（ＨＥＶＣ：High Efficiency Video Coding）規格、およびそのような規格の拡張版によって定義された規格において記載されたものなどのビデオ圧縮技法を実装する。
【０００４】
[0004]ビデオ圧縮技法は、ビデオシーケンスに固有の冗長性を低減または除去するために、空間的（ピクチャ内）予測および／または時間的（ピクチャ間）予測を実行する。ブロックベースのビデオコーディングの場合、ビデオスライスが、ツリーブロック、コーディングユニット（ＣＵ）および／またはコーディングノードと呼ばれることもあるビデオブロックにパーティション分割（partitioned）され得る。ピクチャのイントラコーディングされた（Ｉ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック中の参照サンプルに対する空間的予測を使用して符号化される。ピクチャのインターコーディングされた（ＰまたはＢ）スライスの中のビデオブロックは、同じピクチャの中の隣接ブロック中の参照サンプルに対する空間的予測、または他の参照ピクチャ中の参照サンプルに対する時間的予測を使用し得る。ピクチャはフレームと呼ばれることがあり、参照ピクチャは参照フレームと呼ばれることがある。
【０００５】
[0005]マルチビューコーディングビットストリームは、たとえば、複数の視点からのビューを符号化することによって生成され得る。マルチビューコーディングは、デコーダが、異なるビューの中から選ぶこと、または場合によっては複数のビューをレンダリングすることを可能にし得る。さらに、開発されている、または開発中のいくつかの３次元（３Ｄ）ビデオ技法および規格は、マルチビューコーディング態様を利用する。３次元ビデオは、「３ＤＶ」と呼ばれることもある。
【０００６】
[0006]たとえば、３Ｄビデオをサポートするために、異なるビューが左目のビューと右目のビューとを送信し得る。代替的に、いくつかの３Ｄビデオコーディング処理は、いわゆるマルチビュープラス深度コーディングを適用することができる。マルチビュープラス深度コーディングでは、３Ｄビデオビットストリームは、テクスチャビュー成分だけでなく深度ビュー成分も含み得る。たとえば、各ビューは、１つのテクスチャビュー成分と１つの深度ビュー成分とを備え得る。
【０００７】
[0007]ＶＣＥＧおよびＭＰＥＧの３Ｄビデオコーディング共同研究部会（ＪＣＴ−３Ｃ）は、「高効率ビデオコーディング（ＨＥＶＣ）」と呼ばれる３Ｄビデオ規格を開発しており、そのための規格化作業の一部は、ＨＥＶＣに基づくマルチビュービデオコーデック（ＭＶ−ＨＥＶＣ）と、ＨＥＶＣに基づく３Ｄビデオコーディング（３Ｄ−ＨＥＶＣ）についての別の部分との規格化を含む。３Ｄ−ＨＥＶＣでは、コーディングユニット／予測ユニットレベルのコーディングツールを含む様々なコーディングツールが、テクスチャビューと深度ビューの両方に関して含められ、サポートされ得る。
【発明の概要】
【０００８】
[0008]概して、本開示では、ビデオデータにおいて深度ブロックを符号化および復号するための技法について説明する。ビデオコーディングデバイスは、深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを決定し得る。深度ＰＵは１つまたは複数のサブＰＵを備え得、ここにおいて、各サブＰＵは等しいサイズを有する。別個の動き情報が、それぞれのサブＰＵにコロケートされたテクスチャブロック（a texture block co-located to the respective sub-PU）から、各サブＰＵについて継承され得る。このデバイスは、サブＰＵの各々とコロケートされたテクスチャブロック（texture blocks co-located with each of the sub-PUs）に対応するＭＰＩに基づいて深度ブロックの各サブＰＵを符号化し、ＭＰＩに関する各サブＰＵのサイズを示すシンタックス要素を生成し得る。このデバイスはさらに、シンタックス要素を受信し、また、サブＰＵ  ＭＰＩモードを示すインデックス値を受信すると、サブＰＵの各々とコロケートされた対応するテクスチャブロックに基づいて、深度ブロックの各サブＰＵについてＭＰＩを継承し得る。
【０００９】
[0009]一例では、本開示は、深度ブロックを復号する方法に関し、その方法において、ビデオコーディングデバイスが、深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを示すシンタックス要素を受信する。深度ＰＵは１つまたは複数のサブＰＵを備える。各サブＰＵは、シンタックス要素によって示されたサイズに等しいサイズを有する。別個の動き情報が、それぞれのサブＰＵにコロケートされたテクスチャブロックから、各サブＰＵについて継承され得る。サブＰＵ  ＭＰＩモードを示すインデックス値を受信すると、ビデオコーディングデバイスは、サブＰＵの各々とコロケートされた対応するテクスチャブロックに少なくとも部分的に基づいて、深度ブロックのサブＰＵの各々にについてＭＰＩをさらに継承する。
【００１０】
[0010]別の例では、本開示は、深度ブロックをコーディングするためのデバイスに関し、そのデバイスは、深度ブロックと関連付けられたデータを記憶するように構成されたメモリと、１つまたは複数のプロセッサとを備える。１つまたは複数のプロセッサは、深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを示すシンタックス要素を受信するように構成される。深度ＰＵは１つまたは複数のサブＰＵを備える。各サブＰＵは、シンタックス要素によって示されたサイズに等しいサイズを有する。別個の動き情報が、それぞれのサブＰＵにコロケートされたテクスチャブロックから、各サブＰＵについて継承され得る。サブＰＵ  ＭＰＩモードを示すインデックス値を受信すると、１つまたは複数のプロセッサは、サブＰＵの各々とコロケートされた対応するテクスチャブロックに少なくとも部分的に基づいて、深度ブロックのサブＰＵの各々にについてＭＰＩを継承するようにさらに構成される。
【００１１】
[0011]別の例では、本開示は、深度ブロックを復号する方法に関し、その方法において、ビデオコーディングデバイスが、深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを決定する。深度ＰＵは１つまたは複数のサブＰＵを備える。各サブＰＵは等しいサイズを有する。別個の動き情報が、それぞれのサブＰＵにコロケートされたテクスチャブロックから、各サブＰＵについて継承され得る。ビデオコーディングデバイスは、サブＰＵの各々とコロケートされたテクスチャブロックに対応するＭＰＩに少なくも部分的に基づいて、深度ブロックの各サブＰＵを符号化する。ビデオコーディングデバイスは、その深度ＰＵにおけるＭＰＩに関する各サブＰＵのサイズを示すシンタックス要素をさらに生成する。
【００１２】
[0012]別の例では、本開示は、深度ブロックをコーディングするためのデバイスに関し、そのデバイスは、深度ブロックと関連付けられたデータを記憶するように構成されたメモリと、１つまたは複数のプロセッサとを備える。１つまたは複数のプロセッサは、深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを決定するように構成される。深度ＰＵは１つまたは複数のサブＰＵを備える。各サブＰＵは等しいサイズを有する。別個の動き情報が、それぞれのサブＰＵにコロケートされたテクスチャブロックから、各サブＰＵについて継承され得る。１つまたは複数のプロセッサは、サブＰＵの各々とコロケートされたテクスチャブロックに対応するＭＰＩに少なくも部分的に基づいて、深度ブロックの各サブＰＵを符号化するように構成される。１つまたは複数のプロセッサは、その深度ＰＵにおけるＭＰＩに関する各サブＰＵのサイズを示すシンタックス要素を生成するようにさらに構成される。
【００１３】
[0013]本開示の１つまたは複数の例の詳細は、添付図面および下記の説明に記載される。本開示の他の特徴、目的、および利点は、その説明と図面と特許請求の範囲とから明白になる。
【図面の簡単な説明】
【００１４】
【図１】[0014]ＨＥＶＣにおけるイントラ予測モードを示す概念図。
【図２】[0015]ＮＢＤＶにおける時間的隣接ブロックを示す概念図。
【図３】[0016]ＢＶＳＰ予測を実行するための参照ビューからの深度ブロック導出を示す概念図。
【図４】[0017]マージ／スキップモードのためのビュー間予測動きベクトル候補の導出を示す概念図。
【図５】[0018]深度コーディングのためのＭＶＩ候補の導出を示す概念図。
【図６】[0019]サブＰＵレベルのビュー間動き予測（ＳＰＩＶＭＰ：sub-PU level inter-view motion prediction）方法を示す概念図。
【図７】[0020]本開示の技法を実装し得る例示的なシステムを示すブロック図。
【図８】[0021]本開示の技法を実装し得る例示的なビデオエンコーダを示すブロック図。
【図９】[0022]本開示の技法を実装し得る例示的なビデオデコーダを示すブロック図。
【図１０】[0023]本開示による例示的な符号化技法を示す流れ図。
【図１１】[0024]本開示による例示的な復号技法を示す流れ図。
【発明を実施するための形態】
【００１５】
[0025]本開示は、深度コーディング技法を含む、高度コーデックに基づく３次元３Ｄビデオコーディングに関する。提案するコーディング技法は、３Ｄ−ＨＥＶＣにおいて、より具体的には深度コーディングにおいて、動き予測を制御することに関する。
【００１６】
[0026]ビデオコーディング規格は、ＩＴＵ−Ｔ  Ｈ．２６１と、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−１  Ｖｉｓｕａｌと、ＩＴＵ−Ｔ  Ｈ．２６２またはＩＳＯ／ＩＥＣ  ＭＰＥＧ−２  Ｖｉｓｕａｌと、ＩＴＵ−Ｔ  Ｈ．２６３と、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  Ｖｉｓｕａｌと、そのスケーラブルビデオコーディング（ＳＶＣ）拡張およびマルチビュービデオコーディング（ＭＶＣ）拡張を含む（ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  ＡＶＣとしても知られる）ＩＴＵ−Ｔ  Ｈ．２６４とを含む。ＭＶＣの最新のジョイントドラフトは、「Advanced video coding for generic audiovisual services」（ＩＴＵ−Ｔ勧告Ｈ．２６４、２０１０年３月）に記載されている。さらに、ＩＴＵ−Ｔビデオコーディングエキスパートグループ（ＶＣＥＧ：Video Coding Experts Group）とＩＳＯ／ＩＥＣモーションピクチャエキスパートグループ（ＭＰＥＧ：Motion Picture Experts Group）とのJoint Collaborative Team on Video Coding（ＪＣＴ−ＶＣ：Joint Collaboration Team on Video Coding）によって開発されたビデオコーディング規格、すなわち、高効率ビデオコーディング（ＨＥＶＣ）（バージョンＪＣＴＶＣ−Ｌ１００３＿ｖ１１）がある。
【００１７】
[0027]各予測ユニット（ＰＵ）のルーマ成分に関する現在のＨＥＶＣ（バージョンＪＣＴＶＣ−Ｌ１００３＿ｖ１１）では、図１に示すように、（２から３４までインデックス付けされた）３３個の角度予測モードと、（１とインデックス付けされた）ＤＣモードと、（０とインデックス付けされた）平面モードとを有するイントラ予測方法が利用される。特に、図１はＨＥＶＣにおけるイントラ予測モードを示している。
【００１８】
[0028]通常、Ｂピクチャの第１または第２の参照ピクチャリストのための参照ピクチャリスト構成は、２つのステップ、すなわち参照ピクチャリストの初期化と、参照ピクチャリストの並べ替え（すなわち、参照ピクチャリストの修正）とを含む。参照ピクチャリスト初期化は、参照ピクチャメモリ（復号ピクチャバッファとしても知られる）中に参照ピクチャを、ＰＯＣ（ピクチャの表示順で整列（aligned with）されるピクチャオーダーカウント）値の順序に基づいてリストとして入れる（すなわち、記憶する）明示的機構またはプロセスである。参照ピクチャリスト並べ替え機構は、参照ピクチャリスト初期化中に参照ピクチャリスト中に入れられたピクチャの位置を、参照ピクチャリスト内の任意の新しい位置に修正し得る。参照ピクチャリスト並べ替え機構はまた、参照ピクチャメモリ内の任意の参照ピクチャを、そのピクチャが初期化された参照ピクチャリストに属していない場合でも、参照ピクチャメモリ内の任意の他の位置に入れ得る。いくつかのピクチャは、参照ピクチャリスト並べ替え（すなわち、参照ピクチャリストの修正）後、リスト内の順次後の位置に置かれ得る。ただし、ピクチャの位置が、リストのアクティブな参照ピクチャの数を超える場合、ピクチャは、最終的な参照ピクチャリストのエントリーとは見なされない。アクティブな参照ピクチャの数は、各リストのためのスライスヘッダにおいてシグナリングされ得る。参照ピクチャリスト（すなわち、利用可能な場合、ＲｅｆＰｉｃＬｉｓｔ０およびＲｅｆＰｉｃＬｉｓｔ１）が構成された後、参照ピクチャリストに対する参照インデックスは、参照ピクチャリスト中に含まれる任意の参照ピクチャを識別するために使用され得る。
【００１９】
[0029]時間的動きベクトル予測子（ＴＭＶＰ：Temporal Motion Vector Predictor）を得る（すなわち、決定する）ために、まず、コロケートされたピクチャ（co-located picture）が識別されることになる。現在のピクチャがＢスライスである場合、コロケートピクチャがRefPicList０からのものか、またはRefPicList１からのものかを示すために、collocated_from_l0_flagがスライスヘッダにおいてシグナリングされる。参照ピクチャリストが識別された後、参照ピクチャリスト中のピクチャを識別するために、スライスヘッダ中でシグナリングされるシンタックス要素、collocated_ref_idxが使用される。次いで、コロケートされたピクチャをチェックすることによって、コロケートされた予測ユニット（ＰＵ）が識別される。このＰＵを含んでいるコーディングユニット（ＣＵ）の右下ＰＵの動き、またはこのＰＵを含んでいるＣＵの中心ＰＵ内の右下ＰＵの動きのいずれかが、参照ピクチャリスト内のピクチャとして使用される。
【００２０】
[0030]上記のプロセスによって識別される動きベクトルが、ＡＭＶＰまたはマージモードのための動き候補を生成するために使用されるときには、それらは、時間的な位置（ＰＯＣによって反映される）に基づいてスケーリングされ得る。ＴＭＶＰから導出される時間的マージ候補のためのすべての考えられる参照ピクチャリストのターゲット参照インデックスは０に設定され得るが、ＡＭＶＰの場合、ターゲット参照インデックスは、復号された参照インデックスに等しく設定されることに留意されたい。
【００２１】
[0031]ＨＥＶＣでは、ＳＰＳは、フラグsps_temporal_mvp_enable_flagを含み、スライスヘッダは、sps_temporal_mvp_enable_flagが１に等しいときには、フラグpic_temporal_mvp_enable_flagを含む。ある特定のピクチャについてpic_temporal_mvp_enable_flagとtemporal_idの両方が０に等しいときには、復号順序がその特定のピクチャの前であるピクチャからの動きベクトルは、その特定のピクチャ、または復号順序がその特定のピクチャの後であるピクチャの復号において、時間的動きベクトル予測子として使用されない。
【００２２】
[0032]現在、ＶＣＥＧおよびＭＰＥＧの３Ｄビデオコーディング共同研究部会（ＪＣＴ−３Ｃ：Joint Collaboration Team on 3D Video Coding）は、ＨＥＶＣに基づく３ＤＶ規格を開発中であり、そのために、規格化作業の一部は、ＨＥＶＣに基づくマルチビュービデオコーデック（ＭＶ−ＨＥＶＣ）と、ＨＥＶＣに基づく３Ｄビデオコーディング（３Ｄ−ＨＥＶＣ）のための別の部分との規格化を含む。ＭＶ−ＨＥＶＣでは、ＨＥＶＣ中のＣＵ／ＰＵレベルにおけるモジュールが再設計される必要がなく、ＭＶ−ＨＥＶＣのために完全には再使用されないように、ＭＶ−ＨＥＶＣにおいてハイレベルシンタックス（ＨＬＳ）の変更しかないことが保証されるべきである。３Ｄ−ＨＥＶＣでは、コーディングユニット／予測ユニットレベルのコーディングツールを含む新たなコーディングツールが、テクスチャビューと深度ビューの両方に関して含められ、サポートされ得る。次のような最新の参照ソフトウェア記述ならびに３Ｄ−ＨＥＶＣのワーキングドラフトが入手可能になる。Gerhard Tech、Krzysztof Wegner、Ying Chen、Sehoon Yea、「3D-HEVC Test Model 4」、JCT3V-F1001、ITU-T SG16 WP3とISO/IEC JTC1/SC29/WG11とのJoint Collaborative Team on 3D Video Coding Extension Development、第６回会議。
【００２３】
[0033]コーディング効率をさらに改善するために、２つの新規の技術、すなわち、「ビュー間動き予測」および「ビュー間残差予測」が、最新の参照ソフトウェアに採用されてきている。これらの２つのコーディングツールを有効にするために、第１のステップは、視差ベクトルを導出することである。ビュー間動き／残差予測のために他のビュー中の対応するブロックを位置特定するか、またはビュー間動き予測のために視差動きベクトルに変換されるかのいずれかのために、視差ベクトルが使用される。
【００２４】
[0034]暗示的視差ベクトル（ＩＤＶ）は、ＰＵがビュー間動きベクトル予測を採用するとき、すなわち、ＡＭＶＰモードまたはマージモードのための候補が、視差ベクトルの助けにより他のビュー中の対応するブロックから導出されるとき、生成される。そのような視差ベクトルが、ＩＤＶと呼ばれる。ＩＤＶは、視差ベクトル導出の目的で、ＰＵに記憶される。
【００２５】
[0035]視差ベクトルを導出するために、隣接ブロックベース視差ベクトル（ＮＢＤＶ：Neighboring Blocks based Disparity Vector）と呼ばれる方法が、現在の３Ｄ−ＨＴＭにおいて使用される。ＮＢＤＶは、空間的隣接ブロックおよび時間的隣接ブロックからの、視差動きベクトルを利用する。ＮＢＤＶでは、空間的または時間的隣接ブロックの動きベクトルは、固定されたチェック順序でチェックされる。視差動きベクトルまたはＩＤＶが識別されると、確認プロセスは終了され、識別された視差動きベクトルが返されて、ビュー間動き予測およびビュー間残差予測において使用される視差ベクトルへと変換される。すべてのあらかじめ定義された隣接ブロックをチェックした後、そのような視差ベクトルが見つからない場合、ゼロ視差ベクトルがビュー間動き予測のために使用され得るが、ビュー間残差予測は、対応する予測ユニット（ＰＵ）について無効化（disabled）され得る。
【００２６】
[0036]５つの空間的隣接ブロックが、視差ベクトル導出のために使用される。それらは、ＨＥＶＣ仕様の図８〜３３に定義されるように、Ａ0、Ａ1、Ｂ0、Ｂ1、またはＢ2によって示される、現在の予測ユニット（ＰＵ）の左下ブロック、左ブロック、右上ブロック、上ブロック、および左上ブロックである。
【００２７】
[0037]時間的ブロックのチェックのために、現在のビューからの最大で２つの参照ピクチャ、コロケートされたピクチャ、およびランダムアクセスピクチャ、または最小のＰＯＣ差分および最小の時間的ＩＤを有する参照ピクチャが考慮される。ランダムアクセスがまずチェックされ、続いてコロケートされたピクチャが確認される。各候補ピクチャについて、２つの候補ブロックがチェックされる。チェックされた第１の候補ブロックは、中心ブロック（ＣＲ）、または現在ＰＵのコロケート領域の中心の４×４ピクセルブロック（図２の「Ｐｏｓ．Ａ」参照）である。チェックされた第２の候補ブロックは右下ブロック（ＢＲ）、すなわち、現在ＰＵのコロケート領域の右下の４×４ピクセルブロック（図２の「Ｐｏｓ．Ｂ」参照）であり、これはＮＢＤＶにおける時間的隣接ブロックを示す。
【００２８】
[0038]すべての空間的／時間的隣接ブロックに関して、ＤＭＶが使用されるかどうかが最初にチェックされ、続いてＩＤＶが確認される。空間的隣接ブロックが最初にチェックされ、続いて、時間的隣接ブロックがチェックされる。５つの空間的隣接ブロックは、Ａ1、Ｂ1、Ｂ0、Ａ0、およびＢ2の順でチェックされる。隣接ブロックの１つがＤＭＶを使用する場合、チェックプロセスは終了され、対応するＤＭＶが最終視差ベクトルとして使用される。各候補ピクチャについて、２つのブロックが、第１の非ベースビューではＣＲおよびＢＲの順序で、または第２の非ベースビューではＢＲ、ＣＲの順序でチェックされる。隣接ブロックの１つがＤＭＶを使用する場合、チェックプロセスは終了され、対応するＤＭＶが最終視差ベクトルとして使用される。５つの空間的隣接ブロックは、Ａ0、Ａ1、Ｂ0、Ｂ1、およびＢ2の順でチェックされる。隣接ブロックの１つがＩＤＶを使用し、スキップ／マージモードとしてコーディングされる場合、チェックプロセスは終了され、対応するＩＤＶが最終視差ベクトルとして使用される。
【００２９】
[0039]ＮＢＤＶ方式から生成される視差ベクトルはさらに、コーディングされた深度マップ中の情報を使用して精緻化（refined）され得る。すなわち、視差ベクトルの精度は、情報をコーディングされたベースビュー深度マップを利用することによって向上され得る。精緻化（refinement）ステップは次のように説明される。第１に、ビデオコーディングデバイスは、ベースビューなど、前にコーディングされた参照深度ビュー中の導出された視差ベクトルによって対応する深度ブロックの位置を特定する。対応する深度ブロックのサイズは、現在ＰＵのサイズと同じである。次に、視差ベクトルは、コロケートされた深度ブロックから、４つのコーナーの深度値の最大値から計算される。これは、視差ベクトルの水平成分に等しいように設定されるが、視差ベクトルの垂直成分は０に設定される。
【００３０】
[0040]この新規の視差ベクトルは、「深度指向性の隣接ブロックベース視差ベクトル」（ＤｏＮＢＤＶ：depth oriented neighboring block based disparity vector）と呼ばれる。次いで、ＮＢＤＶ方式からの視差ベクトルは、ＡＭＶＰおよびマージモードのためのビュー間候補導出のためにＤｏＮＢＤＶ方式から、この新規に導出された視差ベクトルに置換される。精緻化されていない視差ベクトルがビュー間残差予測のために使用されることに留意されたい。加えて、精緻化された視差ベクトルが後方ＶＳＰモードでコーディングされる場合、精緻化された視差ベクトルは、１つのＰＵの動きベクトルとして記憶される。
【００３１】
[0041]ＪＣＴ３Ｖ−Ｃ０１５２において提案されたような後方ワーピングＶＳＰ手法が、第３回ＪＣＴ−３Ｖ会議において採用された。この後方ワーピングＶＳＰの基本的な考えは、３Ｄ−ＡＶＣにおけるブロックベースＶＳＰと同じ（または同様）である。これらの２つの技法の両方は、動きベクトル差分を送信することを避け、より正確な動きベクトルを使用するために、後方ワーピングＶＳＰとブロックベースＶＳＰとを使用する。実装の詳細は、プラットフォームの違いに起因して異なる。本開示では、ＢＶＳＰは、３Ｄ−ＨＥＶＣにおける後方ワーピングＶＳＰ手法を指す。
【００３２】
[0042]３Ｄ−ＨＴＭでは、テクスチャ優先コーディングが共通テスト条件において適用される。したがって、対応する非ベース深度ビューは、１つの非ベーステクスチャビューを復号するときには利用不可能である。したがって、深度情報は、ＢＶＳＰを実行するために推定および使用される。
【００３３】
[0043]ブロックについての深度情報を推定するために、隣接ブロックから視差ベクトルをまず導出し、次いで、導出された視差ベクトルを使用して、参照ビューから深度ブロックを取得することが提案される。
【００３４】
[0044]ＨＴＭ５．１テストモデルには、隣接ブロック視差ベクトル（ＮＢＤＶ）として知られる視差ベクトル予測子を導出するためのプロセスが存在する。（ｄｖx，ｄｖy）はＮＢＤＶ機能から識別された視差ベクトルを示し、現在ブロック位置は（ｂｌｏｃｋx，ｂｌｏｃｋy）である。参照ビューの深度画像中で（ｂｌｏｃｋx＋ｄｖx，ｂｌｏｃｋy＋ｄｖy）において深度ブロックをフェッチすることが提案される。フェッチされた深度ブロックは、現在の予測ユニット（ＰＵ）と同じサイズを有し、フェッチされた深度ブロックが次いで、現在ＰＵのための後方ワーピングを行うために使用される。図３は、どのように参照ビューからの深度ブロックが位置特定され、次いでＢＶＳＰ予測に使用されるかを説明する３つのステップのプロセスを示す。特に、図３は、ＢＶＳＰ予測を実行するための参照ビューからの深度ブロック導出を示す。
【００３５】
[0045]ＢＶＳＰがシーケンス中で有効化される場合、ビュー間動き予測用のＮＢＤＶプロセスは変更される。時間的隣接ブロックの各々について、時間的隣接ブロックが視差動きベクトルを使用する場合、視差動きベクトルは視差ベクトルとして返され、視差動きベクトルは、コーディングされた深度マップ中の情報を使用して、精緻化されたＮＢＤＶ方式に関して上記で説明した方法でさらに精緻化される。空間的隣接ブロックの各々について、また各参照ピクチャリスト０もしくは参照ピクチャリスト１について、以下のものが適用される。空間的隣接ブロックが視差動きベクトルを使用する場合、視差動きベクトルは視差ベクトルとして返され、視差動きベクトルは、コーディングされた深度マップ中の情報を使用して、精緻化されたＮＢＤＶ方式に関して上記で説明した方法でさらに精緻化される。そうではなく、空間的隣接ブロックがＢＶＳＰモードを使用する場合、関連する動きベクトルは視差ベクトルとして返される。視差動きベクトルは、精緻化されたＮＢＤＶ方式に関して上記で説明したように、コーディングされた深度マップ中の情報を使用して、同様にしてさらに精緻化される。しかしながら、最大深度値は、４つの角のピクセルではなく、対応する深度ブロックのすべてのピクセルから選択される。空間的隣接ブロックの各々について、空間的隣接ブロックがＩＤＶを使用する場合、ＩＤＶは視差ベクトルとして返され、空間的隣接ブロックは、コーディングされた深度マップ中の情報を使用して、精緻化されたＮＢＤＶ方式に関して上記で説明した方法でさらに精緻化される。
【００３６】
[0046]導入されたＢＶＳＰモードは特殊なインターコード化モードとして扱われ、ＢＶＳＰモードの使用を示すフラグが、ＰＵごとに維持されるべきである。ビットストリームにおいてフラグをシグナリングするのではなく、新たなマージ候補（すなわち、ＢＶＳＰマージ候補）がマージ候補リストに追加され、フラグは、復号されたマージ候補インデックスがＢＶＳＰマージ候補に対応するかどうかに依存する。ＢＶＳＰマージ候補は、次のように定義される。各参照ピクチャリストについての参照ピクチャインデックスは−１に等しい。さらに、各参照ピクチャリストについての動きベクトルは、精緻化された視差ベクトルである。
【００３７】
[0047]ＢＶＳＰマージ候補の挿入位置は、空間的隣接ブロックに依存する。５つの空間的隣接ブロックのいずれか（Ａ０、Ａ１、Ｂ０、Ｂ１、またはＢ２）が、ＢＶＳＰモードでコーディングされる場合、すなわち、隣接ブロックの維持されたフラグが１に等しい場合、ＢＶＳＰマージ候補は、対応する空間的マージ候補として扱われ、マージ候補リストに挿入される。ＢＶＳＰマージ候補は、マージ候補リストに一度のみ挿入されることに留意されたい。そうでない（５つの空間的隣接ブロックのいずれもがＢＶＳＰモードでコーディングされない）場合、ＢＶＳＰマージ候補は、時間的マージ候補の直前に、マージ候補リストに挿入される。
【００３８】
[0048]サイズがＮ×Ｍによって示される各ＢＶＳＰコーディングされたＰＵの場合、コーディングされたＰＵは、Ｋ×Ｋピクセル（ここでＫは４または２であり得る）に等しいサイズを有するいくつかのサブ領域（sub-regions）にさらにパーティション分割される。サブ領域ごとに、別個の視差動きベクトルが導出され、各サブ領域は、ビュー間参照ピクチャ中の導出された視差動きベクトルによって位置特定された１つのブロックから予測される。言い換えれば、ＢＶＳＰコーディングされたＰＵのための動き補償ユニットのサイズはＫ×Ｋピクセルに設定される。共通テスト条件では、Ｋは４に設定される。
【００３９】
[0049]ＢＶＳＰモードを用いてコーディングされた１つのＰＵ内の各サブ領域（４×４ピクセルブロック）の場合、対応する４×４ピクセル深度ブロックは、上述の精緻化された視差ベクトルを用いて参照深度ビューにおいて最初に位置特定される。対応する深度ブロック中の１６個の深度ピクセルの最大値が選択される。その最大値は、視差動きベクトルの水平成分に変換される。視差動きベクトルの垂直成分は、０に設定される。
【００４０】
[0050]ＤｏＮＢＤＶ方式から導出された視差ベクトルに基づいて、新たな動きベクトル候補である、ビュー間予測動きベクトル候補（ＩＰＭＶＣ）が、利用可能な場合、ＡＭＶＰおよびスキップ／マージモードに追加され得る。ビュー間予測動きベクトルは、利用可能な場合、時間的動きベクトルである。
【００４１】
[0051]スキップモードは、マージモードと同じ動きベクトル導出プロセスを有する。そのために、本開示で説明するすべての技法が、マージモードとスキップモードの両方に適用され得る。
【００４２】
[0052]マージ／スキップモードに対して、ビュー間予測動きベクトルが以下のプロセスによって導出される。同じアクセスユニットの参照ビュー中の現在ＰＵ／ＣＵの対応するブロックは、視差ベクトルによって位置特定される。対応するブロックがイントラコーディングされず、ビュー間予測されず、参照ピクチャが、現在ＰＵ／ＣＵの同じ参照ピクチャリスト中の１つのエントリーのＰＯＣ値に等しいＰＯＣ値を有する場合、動き情報（予測方向、参照ピクチャ、および動きベクトル）が、ＰＯＣに基づいて参照インデックスを変換した後で、ビュー間予測動きベクトルとなるように導出される。
【００４３】
[0053]対応するブロックは、次のように定義される。現在予測ユニットの左上ルーマサンプルのルーマロケーション（ｘＰ，ｙＰ）が、現在ピクチャの左上ルーマサンプルに対して示される。ｎＰＳＷおよびｎＰＳＨは、それぞれ、現在予測ユニットの幅と高さとを示す。参照ビュー順序インデックスは、ｒｅｆＶｉｅｗＩｄｘとして示される。視差ベクトルは、ｍｖＤｉｓｐとして示される。参照レイヤルーマロケーション（ｘＲｅｆ，ｙＲｅｆ）は、以下によって導出される。
xRef = Clip3 (0, PicWidthInSamplesL-1, xP+((nPSW-1) >> 1) + 
((mvDisp[0]+2) >> 2))       (H-124)
yRef = Clip3 (0, PicHeightInSamplesL-1, yP+((nPSH-1) >> 1) + 
((mvDisp[1]+2) >> 2))       (H-125)
対応するブロックは、ｒｅｆＶｉｅｗＩｄｘに等しいＶｉｅｗＩｄｘを伴うビュー成分中のルーマロケーション（ｘＲｅｆ，ｙＲｅｆ）をカバーする予測ユニットに設定される。
【００４４】
[0054]図４は、ビュー間予測動きベクトル候補の導出プロセスの一例を示す。特に、図４は、マージ／スキップモードのためのビュー間予測動きベクトル候補の導出を示す。
【００４５】
[0055]加えて、視差ベクトルは、ビュー間視差動きベクトルに変換され、ビュー間視差動きベクトルは、該視差ベクトルが利用可能であるときには、ＩＰＭＶＣとは異なる位置においてマージ候補リストに追加され、または、ＩＰＭＶＣと同じ位置においてＡＭＶＰ候補リストに追加される。ＩＰＭＶＣまたはビュー間視差動きベクトル候補（ＩＤＭＶＣ）のいずれかは、このコンテキストにおいて、「ビュー間候補」と呼ばれる。
【００４６】
[0056]マージ／スキップモードでは、ＩＰＭＶＣは、利用可能な場合は常に、すべての空間的マージ候補および時間的マージ候補の前に、マージ候補リストへと挿入される。ＩＤＭＶＣは、Ａ0から導出された空間的マージ候補の前に挿入される。
【００４７】
[0057]視差ベクトルがまず、ＤｏＮＢＤＶの方法によって導出される。視差ベクトルの場合、３Ｄ−ＨＥＶＣにおけるマージ候補リスト構成プロセスは、次のように定義され得る。まず、ＩＰＭＶＣが、上記で説明した手順によって導出される。視差ベクトルが利用可能である場合、視差はマージリストに挿入される。次に、空間的隣接ＰＵの動き情報は、Ａ1、Ｂ1、Ｂ0、Ａ0、またはＢ2の順序でチェックされる。次いで拘束プルーニング（constrained pruning）が実施される。たとえば、Ａ1とＩＰＭＶＣとが同じ動きベクトルおよび同じ参照インデックスを有する場合、Ａ1は、候補リストに挿入されない。そうではない場合、Ａ1はリストに挿入される。Ｂ1とＡ1／ＩＰＭＶＣとが同じ動きベクトルおよび同じ参照インデックスを有する場合、Ｂ1が候補リストに挿入されない。そうではない場合、Ｂ1はリストに挿入される。Ｂ0が利用可能である場合、Ｂ0は候補リストに追加される。ＩＤＭＶＣが、上記で説明した手順によって導出される。Ｂ0が利用可能であり、Ｂ0がＡ1およびＢ1から導出された候補とは異なる場合、Ｂ0は、候補リストに挿入される。ＢＶＳＰがピクチャ全体、または現在のスライスに関して有効にされる場合、ＢＶＳＰマージ候補はマージ候補リストに挿入される。Ａ0が利用可能である場合、Ａ0は候補リストに追加される。Ｂ2が利用可能である場合、Ｂ2は候補リストに追加される。
【００４８】
[0058]次に、ビデオコーディングデバイスは、時間的マージ候補に関する導出プロセスを実施することができる。しかしながら、コロケートＰＵの動き情報が利用されるＨＥＶＣにおける時間的マージ候補導出プロセスと同様に、時間的マージ候補のターゲット参照ピクチャインデックスが、０となるように固定するのではなく変更され得る。０に等しいターゲット参照インデックスが（同じビュー中の）時間的参照ピクチャに対応する一方で、コロケート予測ユニット（ＰＵ）の動きベクトルがビュー間参照ピクチャを指すときには、ターゲット参照インデックスは、参照ピクチャリスト中のビュー間参照ピクチャの第１のエントリーに対応する別のインデックスに変更される。反対に、０に等しいターゲット参照インデックスがビュー間参照ピクチャに対応する一方で、コロケート予測ユニット（ＰＵ）の動きベクトルが時間的参照ピクチャを指すときには、ターゲット参照インデックスは、参照ピクチャリスト中の時間的参照ピクチャの第１のエントリーに対応する別のインデックスに変更される。
【００４９】
[0059]上記の２つのステップから導出された候補の総数が候補の最大数未満である場合、ｌ０ＣａｎｄＩｄｘおよびｌ１ＣａｎｄＩｄｘの仕様を除いてＨＥＶＣにおいて定義されたものと同じプロセスが実行される。ｃｏｍｂＩｄｘ、ｌ０ＣａｎｄＩｄｘ、およびｌ１ＣａｎｄＩｄｘの間の関係は、以下の表（表２と標記する）において定義されている。
【表１】
0006559675.tif 000002
【００５０】
[0060]最後に、ゼロ動きベクトルマージ候補を導出するためにＨＥＶＣで定義された手順と同じ手順が実施される。最新のソフトウェアでは、ＭＲＧリスト中の候補の総数は最大で６であり、five_minus_max_num_merge_candが、スライスヘッダ中で６から減算されるＭＲＧ候補の最大の数を指定するためにシグナリングされる。five_minus_max_num_merge_candは、両端値を含む０〜５の範囲内にあることに留意されたい。
【００５１】
[0061]動きベクトル継承（ＭＶＩ）の背後にある主な考えは、テクスチャ画像とそれの関連深度画像との間の動き特性の類似性を活用することである。深度画像中の所与のＰＵに関して、ＭＶＩ候補は、対応するテクスチャブロックが利用可能である場合、すでにコーディングされている、対応するテクスチャブロックの動きベクトルと参照インデックスとを使用して再使用（reuses）する。図５は、対応するテクスチャブロックが現在ＰＵの中央の右下に位置特定される４×４ブロックとして選択される、ＭＶＩ候補の導出プロセスの例を示す。このようにして、図５は、深度コーディングのためのＭＶＩ候補の導出を示している。
【００５２】
[0062]整数精度の動きベクトルが深度コーディングにおいて使用されるが、動きベクトルの４分の１精度がテクスチャコーディングのために利用されることに留意されたい。したがって、対応するテクスチャブロックの動きベクトルは、ＭＶＩ候補として使用する前にスケーリングされ得る。ＭＶＩ候補生成により、深度ビューに関するマージ候補リストが次のように構成される。ＭＶＩ挿入のために、ＭＶＩが上で説明した手順によって導出される。視差ベクトルが利用可能である場合、視差ベクトルはマージリストに挿入される。
【００５３】
[0063]空間的マージ候補を導出するために、また３Ｄ−ＨＥＶＣにおけるＩＤＭＶＣ挿入のために、ビデオコーディングデバイスが空間的隣接ＰＵの動き情報を、Ａ1、Ｂ1、Ｂ0、Ａ0、またはＢ2の順序でチェックする。ビデオコーディングデバイスは次いで、拘束プルーニング手順を実施する。Ａ1とＭＶＩとが同じ動きベクトルおよび同じ参照インデックスを有する場合、Ａ1は、候補リストに挿入されない。Ｂ1とＡ1／ＭＶＩとが同じ動きベクトルおよび同じ参照インデックスを有する場合、Ｂ1が候補リストに挿入されない。Ｂ0が利用可能である場合、Ｂ0は候補リストに追加される。Ａ0が利用可能である場合、Ａ0は候補リストに追加される。Ｂ2が利用可能である場合、Ｂ2は候補リストに追加される。
【００５４】
[0064]時間的マージ候補を導出するために、ビデオコーディングデバイスは、コロケートＰＵの動き情報が利用される、ＨＥＶＣにおける時間的マージ候補導出プロセスと類似したプロセスを実施する。ただし、時間的マージ候補のターゲット参照ピクチャインデックスは、０に固定される代わりに変更され得る。０に等しいターゲット参照インデックスが（同じビュー中の）時間的参照ピクチャに対応する一方で、コロケート予測ユニット（ＰＵ）の動きベクトルがビュー間参照ピクチャを指すとき、ターゲット参照インデックスは、参照ピクチャリスト中のビュー間参照ピクチャの第１のエントリーに対応する別のインデックスに変更される。反対に、０に等しいターゲット参照インデックスがビュー間参照ピクチャに対応する一方で、コロケート予測ユニット（ＰＵ）の動きベクトルが時間的参照ピクチャを指すとき、ターゲット参照インデックスは、参照ピクチャリスト中の時間的参照ピクチャの第１のエントリーに対応する別のインデックスに変更される。
【００５５】
[0065]３Ｄ−ＨＥＶＣにおいて結合双予測マージ候補（combined bi-predictive merging candidates）を導出するために、ビデオコーディングデバイスは、導出された候補の総数に依存したプロセスを実施する。上記の２つのステップから導出された候補の総数が候補の最大数未満である場合、ｌ０ＣａｎｄＩｄｘおよびｌ１ＣａｎｄＩｄｘの仕様を除いてＨＥＶＣにおいて定義されたものと同じプロセスが実行される。ｃｏｍｂＩｄｘ、ｌ０ＣａｎｄＩｄｘ、およびｌ１ＣａｎｄＩｄｘの間の関係は、表２（上記に再現される）において定義される。ゼロ動きベクトルマージ候補を導出するために、ビデオコーディングデバイスは、ＨＥＶＣで定義された手順と同じ手順を実施し得る。
【００５６】
[0066]ＪＣＴ３Ｖ−Ｅ０１８４では、時間的ビュー間マージ候補に関するサブＰＵレベルのビュー間動き予測方法、すなわち、参照ビュー中の参照ブロックから導出された候補を使用することが提案されている。ビュー間動き予測の基本概念が上記で説明されているが、ここにおいて、依存ビュー中の現在ＰＵに関して参照ブロックの動き情報だけが使用される。しかしながら、現在ＰＵは、参照ビュー中の（視差ベクトルによって識別された現在ＰＵと同じサイズを有する）参照エリアに対応し得、該参照エリアは豊富な動き情報を有し得る。したがって、サブＰＵレベルビュー間動き予測（ＳＰＩＶＭＰ）方法が図６に示すように提案される。時間的ビュー間マージ候補は次のように導出される。
【００５７】
[0067]割り当てられるサブＰＵは、Ｎ×Ｎピクセルのサイズを有する。まず、ビデオコーディングデバイスが現在ＰＵを、それぞれが現在ＰＵよりも小さいサイズを有する複数のサブＰＵに分割する。ビデオコーディングデバイスは、現在ＰＵのサイズをｎＰＳＷ×ｎＰＳＨによって示し、サブＰＵのサイズをｎＰＳＷｓｕｂ×ｎＰＳＨＳｕｂによって示す。この例では、
nPSWsub = (min(N, nPSW))/2
nPSHSub = (min(N, nPSH))/2
である。
【００５８】
[0068]次に、ビデオコーディングデバイスは、デフォルト動きベクトルｔｍｖＬＸを（０，０）に設定し、各参照ピクチャリストに関して、参照インデックスｒｅｆＬＸを−１に設定する。ラスタ走査順序で各サブＰＵごとに、ビデオコーディングデバイスは、次式によって、参照サンプルロケーション（ｘＲｅｆＳｕｂ，ｙＲｅｆＳｕｂ）を取得するために、ＤＶを現在サブＰＵの中央位置に加える：
xRefSub = Clip3(0, PicWidthInSamplesL-1, xPSub+nPSWsub/2+((mvDisp[0]+2) >> 2))
yRefSub = Clip3(0, PicHeightInSamplesL-1, yPSub+nPSHSub/2+((mvDisp[1]+2) >>2))
ビデオコーディングデバイスは、現在サブＰＵのための参照ブロックとして（ｘＲｅｆＳｕｂ，ｙＲｅｆＳｕｂ）をカバーする参照ビュー中のブロックを使用することができる。
【００５９】
[0069]識別された参照ブロックでは、その識別された参照ブロックが時間的動きベクトルを使用してコーディングされる場合、以下が適用される。ｒｅｆＬ０とｒｅｆＬ１の両方が−１に等しく、現在サブＰＵがラスタ走査順序で第１のサブＰＵでない場合、参照ブロックの動き情報は前のサブＰＵすべてによって継承される。現在サブＰＵに関する候補動きパラメータとして、関連する動きパラメータが使用され得る。さらに、ｔｍｖＬＸおよびｒｅｆＬＸが現在サブＰＵの動き情報に更新される。さもなければ（参照ブロックがイントラコーディングされる場合）、現在サブＰＵの動き情報はｔｍｖＬＸおよびｒｅｆＬＸに設定される。
【００６０】
[0070]各層ごとにサブＰＵサイズを示すシンタックス要素がＶＰＳに存在する。サブＰＵサイズが十分に大きく、たとえば現在ＰＵよりも大きい場合、全ＰＵはサブＰＵビュー間予測を使用していない。サブＰＵサイズが十分に大きく、たとえば最大コーディングユニット（ＬＣＵ）よりも大きい場合、層内のＰＵはサブＰＵビュー間予測を利用しない。異なるサブＰＵブロックサイズ、たとえば、４×４、８×８、および１６×１６が適用され得る。
【００６１】
[0071]そのようなシンタックス要素の詳細な意味論（semantics）は以下の通りである。log2_sub_pb_size_minus2[layerID]は、ビュー間マージ候補を使用した予測ユニットの復号において使用される可変SubPbSize[layerID]の値を指定する。log2_sub_pb_size_minus2の値は、両端値を含む、０から４の範囲内にあり得る。このシンタックス要素はｕｅ（ｖ）でコーディングされる。したがって、このシンタックス要素のビット深度は可変となり得る。
【００６２】
[0072]ＨＥＶＣでは、ピクチャがコーディングされた後、ピクチャが復号ピクチャバッファ（ＤＰＢ）に入れられる前、動きベクトルが、１６×１６のブロックレベルに記憶されるように圧縮され得る。３Ｄ−ＨＥＶＣでは、しかしながら、動き予測が層をまたいで有効化されるので、動き圧縮は２ステップ形式で行われる。まず、あるビューのピクチャが復号された後、そのピクチャがＤＰＢに入れられる前、そのピクチャは８×８のブロックレベルに圧縮される。アクセスユニット全体が復号される、つまり、アクセスユニットの各層の各ピクチャが復号されるとき、１６×１６ブロックレベルへの動き圧縮が行われる。ＨＥＶＣでは、各８×８ブロックに対して、多くても２つの動きベクトルが維持される。それら多くても２つの動きベクトルは、ＲｅｆＰｉｃＬｉｓｔ０およびＲｅｆＰｉｃＬｉｓｔ１にそれぞれ対応する２つの動きベクトルであるか、または、どちらもＲｅｆＰｉｃＬｉｓｔ０に対応する、２つのＰＵ（４×８が２つ、８×４が２つ）に属する２つの動きベクトルであるかのいずれかであり得る。
【００６３】
[0073]ＪＣＴ３Ｖ−Ｆ０１２８で提案されているように、サブＰＵレベルの動き予測（すなわち、サブＰＵ  ＭＰＩモード）に基づく動きパラメータ継承（ＭＰＩ）マージ候補が動き予測に利用されることを示すために、インデックス値がシグナリングされ得る。提案されているサブＰＵレベルのＭＰＩモードマージ候補を、現在の深度ＰＵ内の８×８ピクセルブロックごとに用いて、現在の８×８ピクセルブロックの中央位置をカバーするコロケートテクスチャブロックの動きパラメータが継承される。提案されているサブＰＵ  ＭＰＩモードでは、種々の動きベクトルが、１つの深度ＰＵ内の８×８ピクセルのサブＰＵに対して継承され得る。
【００６４】
[0074]現在の３Ｄ−ＨＥＶＣ規格は、特にサブＰＵ  ＭＰＩモードを考慮するとき、以下の問題を有する。ビュー間動き予測のサブＰＵサイズが４×４ピクセルに等しい場合、４×４ピクセルブロックの動き圧縮プロセスが必要とされ、これはＨＥＶＣベースの設計と整合がとれない（not aligned with）。さらに、サブＰＵ  ＭＰＩモードが適用されるときには、動きベクトルの精度を制御する方法はなく、８×８ピクセルのサブＰＵ  ＭＰＩモードが常に使用される。言い換えれば、サブＰＵ  ＭＰＩモードが適用されるときには、４×４ピクセルおよび１６×１６ピクセルのサブＰＵが処理され得ず、コーディングデバイスは８×８ピクセルのサブＰＵを使用することを強いられ、これは最適ではないことがある。
【００６５】
[0075]サブＰＵビュー間動き予測、サブＰＵ  ＭＰＩモードおよび動き圧縮に関する技法が本明細書で説明される。すなわち、サブＰＵ  ＭＰＩサイズを示すシンタックス要素が説明される。いくつかの例では、シンタックス要素はlog2_sub_pb_mpi_size_minus3と名付けられ得る。このシンタックス要素の値の範囲は、両端値を含む０〜３である。このシンタックス要素をビデオコーディング方式に含めることにより、ビデオコーディングデバイスがＨＥＶＣベースの設計を実装している場合でも、ビデオコーディングデバイスは、４×４ピクセルブロックの動き補償に固有の処理を使用し得る。さらに、このシンタックス要素を含めることにより、８×８ピクセル以外のサイズを持つサブＰＵ  ＭＰＩが使用され得る。たとえば、４×４ピクセルおよび１６×１６ピクセルのサブＰＵ  ＭＰＩが使用されて、サブＰＵ  ＭＰＩが様々なコーディング技法で利用され得る確度および精度を向上させ得る。この追加されたフレキシビリティはさらに、サブＰＵ  ＭＰＩが適用可能であることをインデックス値が示すときに、コーディング効率を向上させ、ビデオコーディング中の処理速度を向上させることになる。
【００６６】
[0076]そのようなシンタックス要素（たとえば、log2_sub_pb_mpi_size_minus3など、サブＰＵ  ＭＰＩサイズを示すシンタックス要素）は、すべての深度ビュー（すなわち、深度ブロックの各層）と関連付けられ、したがって、ビデオパラメータセット（ＶＰＳ）、ピクチャパラメータセット（ＰＰＳ）、またはシーケンスパラメータセット（ＳＰＳ）に一度、存在する。シンタックス要素がＰＰＳおよびＳＰＳ（すなわち、シンタックス要素log2_sub_pb_mpi_size_minus3の２つのアクティブインスタンス）に存在するとき、これらの２つのシンタックス要素の値は同じとなり得る。代替的に、そのようなシンタックス要素は、ＶＰＳ、ＳＰＳまたはＰＰＳに一度、各深度ビューごとに存在し得る。
【００６７】
[0077]サブＰＵ  ＭＰＩに使用されるサブＰＵのサイズは８×８から始まる。現在の深度ＰＵが
(1<<(log2_sub_pb_mpi_size_minus3+3))x(1<<(log2_sub_pb_mpi_size_minus3+3))
よりも大きいかそれに等しいサイズを有するときには、サブＰＵ  ＭＰＩは現在ＰＵに適用されず、元のＭＰＩが適用される。
【００６８】
[0078]log2_sub_pb_mpi_size_minus3が１に等しいかそれより大きいとき、この場合の１６×１６への動き圧縮は、同じアクセスユニット内のテクスチャビューのすべてのピクチャが復号されると行われ得る。この場合、テクスチャビューが深度ビューとは独立してコーディングされるとき、アクセスユニット内のテクスチャビューのすべてのピクチャが、深度ビューのいずれかのピクチャがコーディングされる前に、より早期に復号され得、また、テクスチャピクチャが復号された後、動き圧縮がそれらのテクスチャピクチャに対して行われ得る。
【００６９】
[0079]log2_sub_pb_mpi_size_minus3が０に等しい、つまり、サブＰＵ  ＭＰＩサイズが８×８であるとき、またコロケートされたテクスチャブロックが２つのＰＵ（４×８または８×４）を含むとき、現在のサブＰＵは、４×８または８×４のサイズを持つ、２つのより小さいブロックにさらにパーティション分割され得、これら２つのより小さいブロック上における動き補償（単方向）はサブＰＵ  ＭＰＩモードで適用される。ＲｅｆＰｉｃＬｉｓｔ０に対応する２つの動きベクトルが、深度ＰＵで現在のサブＰＵについて継承される。ＪＣＴ３Ｖ−Ｆ０１２８などにおいてサブＰＵ  ＭＰＩが適用されるときに、８×８かまたはそれ以上のサイズの動き補償のみを有効化する代わりに、そのようなサブＰＵは、４×８または８×４に等しいブロックサイズで動き補償され得る。代替的に、そのようなパーティション（partition）を有効化することは、ＶＰＳ、ＳＰＳまたはＰＰＳにおいてシンタックス要素（たとえばフラグ）によってシグナリングされ得る。
【００７０】
[0080]いくつかの例では、ビデオコーディングデバイスが、最小の動き補償サイズに関して、３Ｄ−ＨＥＶＣ設計をＨＥＶＣと整合（align）させ得る。したがって、４×４に等しいサブＰＵサイズはこれらの例において無効化（disabled）され得る。そのような場合、log2_sub_pb_size_minus2はlog2_sub_pb_size_minus3に変更され得、log2_sub_pb_size_minus3の範囲は、両端値を含む０〜３となる。
【００７１】
[0081]図７は、本開示の技法を利用し得る例示的なビデオコーディングシステム１０を示すブロック図である。本明細書で説明されるように、「ビデオコーダ」という用語は、総称的にビデオエンコーダとビデオデコーダの両方を指す。本開示では、「ビデオコーディング」または「コーディング」という用語は、ビデオ符号化またはビデオ復号を総称的に指し得る。
【００７２】
[0082]図７に示すように、ビデオコーディングシステム１０は、ソースデバイス１２と宛先デバイス１４とを含む。ソースデバイス１２は符号化ビデオデータを生成する。したがって、ソースデバイス１２は、ビデオ符号化デバイスまたはビデオ符号化装置と呼ばれ得る。宛先デバイス１４は、ソースデバイス１２によって生成された符号化ビデオデータを復号し得る。したがって、宛先デバイス１４は、ビデオ復号デバイスまたはビデオ復号装置と呼ばれ得る。ソースデバイス１２および宛先デバイス１４は、ビデオコーディングデバイスまたはビデオコーディング装置の例であり得る。
【００７３】
[0083]ソースデバイス１２および宛先デバイス１４は、デスクトップコンピュータ、モバイルコンピューティングデバイス、ノートブック（たとえば、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンのような電話ハンドセット、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、車内コンピュータなどを含む、広範囲のデバイスを備え得る。
【００７４】
[0084]宛先デバイス１４は、チャネル１６を介してソースデバイス１２から符号化されたビデオデータを受信し得る。チャネル１６は、ソースデバイス１２から宛先デバイス１４に符号化ビデオデータを移動させることが可能な、１つまたは複数の媒体またはデバイスを備え得る。一例では、チャネル１６は、ソースデバイス１２がリアルタイムで符号化ビデオデータを直接宛先デバイス１４に送信することを可能にする、１つまたは複数の通信媒体を備え得る。この例では、ソースデバイス１２は、ワイヤレス通信プロトコルなどの通信規格に従って、符号化ビデオデータを変調し得、変調されたビデオデータを宛先デバイス１４に送信し得る。１つまたは複数の通信媒体は、無線周波（ＲＦ）スペクトルまたは１つもしくは複数の物理伝送線路などの、ワイヤレスおよび／または有線の通信媒体を含み得る。１つまたは複数の通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはグローバルネットワーク（たとえば、インターネット）などの、パケットベースネットワークの一部を形成し得る。チャネル１６は、ソースデバイス１２から宛先デバイス１４への通信を容易にするルータ、スイッチ、基地局、または他の機器などの、様々なタイプのデバイスを含み得る。
【００７５】
[0085]別の例では、チャネル１６は、ソースデバイス１２によって生成された符号化ビデオデータを記憶する記憶媒体を含み得る。この例では、宛先デバイス１４は、ディスクアクセスまたはカードアクセスを介して記憶媒体にアクセスし得る。記憶媒体は、Ｂｌｕ−ｒａｙ（登録商標）ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュメモリ、または符号化ビデオデータを記憶するための他の適切なデジタル記憶媒体など、様々なローカルにアクセスされるデータ記憶媒体を含み得る。
【００７６】
[0086]さらなる一例では、チャネル１６は、ソースデバイス１２によって生成された符号化ビデオデータを記憶する、ファイルサーバまたは別の中間ストレージデバイスを含み得る。この例では、宛先デバイス１４は、ストリーミングまたはダウンロードを介して、ファイルサーバまたは他の中間ストレージデバイスに記憶された符号化ビデオデータにアクセスし得る。ファイルサーバは、符号化ビデオデータを記憶することと、符号化ビデオデータを宛先デバイス１４に送信することとが可能なタイプのサーバであり得る。例示的なファイルサーバは、（たとえば、ウェブサイト用の）ウェブサーバ、ファイル転送プロトコル（ＦＴＰ）サーバ、ネットワーク接続ストレージ（ＮＡＳ）デバイス、およびローカルディスクドライブを含む。
【００７７】
[0087]宛先デバイス１４は、インターネット接続などの標準的なデータ接続を通じて、符号化ビデオデータにアクセスし得る。例示的なタイプのデータ接続は、ファイルサーバに記憶されている符号化ビデオデータにアクセスするのに適した、ワイヤレスチャネル（たとえば、Ｗｉ−Ｆｉ（登録商標）接続）、有線接続（たとえば、ＤＳＬ、ケーブルモデムなど）、またはその両方の組合せを含み得る。ファイルサーバからの符号化ビデオデータの送信は、ストリーミング送信、ダウンロード送信、または両方の組合せであり得る。
【００７８】
[0088]本開示の技法は、ワイヤレスの適用例または設定に限定されない。本技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、たとえばインターネットを介したストリーミングビデオ送信、データ記憶媒体に記憶するためのビデオデータの符号化、データ記憶媒体に記憶されたビデオデータの復号、または他の用途などの、様々なマルチメディア用途をサポートするビデオコーディングに適用され得る。いくつかの例では、ビデオコーディングシステム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、および／またはビデオテレフォニーなどの用途をサポートするために、一方向または双方向のビデオ送信をサポートするように構成され得る。
【００７９】
[0089]図７の例では、ソースデバイス１２は、ビデオソース１８と、ビデオエンコーダ２０と、出力インターフェース２２とを含む。いくつかの例では、出力インターフェース２２は、変調器／復調器（モデム）および／または送信機を含み得る。ビデオソース１８は、ビデオキャプチャデバイス、たとえばビデオカメラ、以前にキャプチャされたビデオデータを含むビデオアーカイブ、ビデオコンテンツプロバイダからビデオデータを受信するためのビデオフィードインターフェース、および／もしくは、ビデオデータを生成するためのコンピュータグラフィックスシステム、またはビデオデータのそのようなソースの組合せを含み得る。
【００８０】
[0090]ビデオエンコーダ２０は、ビデオソース１８からのビデオデータを符号化し得る。いくつかの例では、ソースデバイス１２は、出力インターフェース２２を介して宛先デバイス１４へ、符号化ビデオデータを直接送信する。他の例では、符号化ビデオデータはまた、復号および／または再生のための宛先デバイス１４による後のアクセスのために、記憶媒体またはファイルサーバ上に記憶され得る。
【００８１】
[0091]ビデオエンコーダ２０は、本開示による技法をさらに実行し得る。たとえば、ビデオエンコーダ２０は、深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを決定し得る。深度ＰＵは１つまたは複数のサブＰＵであり得る。各サブＰＵは等しいサイズを有し得る。さらに、別個の動き情報が、それぞれのサブＰＵにコロケートされたテクスチャブロックから、各サブＰＵについて継承され得る。ビデオエンコーダ２０は、サブＰＵの各々とコロケートされたテクスチャブロックに対応するＭＰＩに少なくも部分的に基づいて、深度ブロックの各サブＰＵを符号化し得る。ビデオエンコーダ２０は、その深度ＰＵにおけるＭＰＩに関する各サブＰＵのサイズを示すシンタックス要素をさらに生成し得る。
【００８２】
[0092]図７の例では、宛先デバイス１４は、入力インターフェース２８と、ビデオデコーダ３０と、ディスプレイデバイス３２とを含む。いくつかの例では、入力インターフェース２８は、受信機および／またはモデムを含む。入力インターフェース２８は、チャネル１６を通じて符号化されたビデオデータを受信し得る。ディスプレイデバイス３２は、宛先デバイス１４と一体化されてよく、またはその外部にあってよい。一般に、ディスプレイデバイス３２は、復号ビデオデータを表示する。ディスプレイデバイス３２は、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイデバイスなどの、様々なディスプレイデバイスを備え得る。
【００８３】
[0093]いくつかの例では、ビデオエンコーダ２０およびビデオデコーダ３０は、そのスケーラブルビデオコーディング（ＳＶＣ：Scalable Video Coding）およびマルチビュービデオコーディング（ＭＶＣ：Multiview Video Coding）拡張を含む、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  ＶｉｓｕａｌおよびＩＴＵ−Ｔ  Ｈ．２６４（ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  ＡＶＣとしても知られる）などのビデオ圧縮規格に従って動作する。他の例では、ビデオエンコーダ２０およびビデオデコーダ３０は、現在開発中の高効率ビデオコーディング（ＨＥＶＣ）規格を含む、他のビデオ圧縮規格に従って動作し得る。「ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ９」と呼ばれる、現在開発されているＨＥＶＣ規格のドラフトは、ブロス（Ｂｒｏｓｓ）らの「High Efficiency Video Coding(HEVC) text specification draft 9」、ITU-T SG16 WP3およびISO/IEC JTC1/SC29/WG11のJoint Collaborative Team on Video Coding(JCT-VC)、第１１回会議：中国、上海、２０１２年１０月、に記載されている。ただし、本開示の技法は、いかなる特定のコーディング規格またはコーディング技法にも限定されない。「ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  １０」または「ＷＤ１０」と呼ばれるＨＥＶＣ規格の別の最近のドラフトは、文書ＪＣＴＶＣ−Ｌ１００３ｖ３４、Ｂｒｏｓｓら、「High efficiency video coding (HEVC) text specification draft 10 (for FDIS & Last Call)」、ITU-T SG16 WP3とISO/IEC JTC1/SC29/WG11とのJoint Collaborative Team on Video Coding(JCT-VC)、第１２回会議：ジュネーブ、スイス、２０１３年１月１４〜２３日、に記載されている。ＨＥＶＣ規格のさらに別のドラフトは、本明細書で「ＷＤ１０改訂」と呼ばれ、Ｂｒｏｓｓら、「Editors’ proposed corrections to HEVC version 1」、ITU-T SG16 WP3およびISO/IEC JTC1/SC29/WG11のJoint Collaborative Team on Video Coding(JCT-VC)、第１３回会議、仁川、韓国、２０１３年４月、に記載されている。
【００８４】
[0094]ビデオデコーダ３０はまた、本開示による技法を実行するように構成され得る。たとえば、ビデオデコーダ３０は、深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを示すシンタックス要素を受信し得る。深度ＰＵは１つまたは複数のサブＰＵであり得る。各サブＰＵは、シンタックス要素によって示されたサイズに等しいサイズを有し得る。さらに、別個の動き情報が、それぞれのサブＰＵにコロケートされたテクスチャブロックから、各サブＰＵについて継承され得る。サブＰＵ  ＭＰＩモードを示すインデックス値を受信すると、ビデオデコーダ３０は、サブＰＵの各々とコロケートされた対応するテクスチャブロックに少なくとも部分的に基づいて、深度ブロックのサブＰＵの各々についてＭＰＩをさらに継承し得る。
【００８５】
[0095]図７は一例にすぎず、本開示の技法は、ビデオ符号化デバイスとビデオ復号デバイスとの間の任意のデータ通信を必ずしも含まないビデオコーディング設定（たとえば、ビデオ符号化またはビデオ復号）に適用され得る。他の例では、データが、ローカルメモリから取り出されること、ネットワークを介してストリーミングされることなどが行われる。ビデオ符号化デバイスはデータを符号化し、メモリに記憶し得、および／またはビデオ復号デバイスはメモリからデータを取り出し、復号し得る。多くの例では、ビデオ符号化およびビデオ復号は、互いに通信しないが、メモリにデータを符号化し、および／またはメモリからデータを取り出して復号するだけであるデバイスによって実行される。
【００８６】
[0096]ビデオエンコーダ２０およびビデオデコーダ３０は、各々１つもしくは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ハードウェア、またはそれらの任意の組合せなどの、様々な適切な回路のいずれかとして実装され得る。本技法がソフトウェアに部分的に実装される場合、デバイスは、適切な非一時的コンピュータ可読記憶媒体にソフトウェア用の命令を記憶し得、本開示の技法を実行するために１つまたは複数のプロセッサを使用してハードウェア内でそれらの命令を実行し得る。（ハードウェア、ソフトウェア、ハードウェアとソフトウェアの組合せなどを含む）上記のいずれも、１つまたは複数のプロセッサであると見なされ得る。ビデオエンコーダ２０およびビデオデコーダ３０の各々は、１つまたは複数のエンコーダまたはデコーダに含まれてよく、それらのうちのいずれかが、それぞれのデバイスの中で組み合わされたエンコーダ／デコーダ（ＣＯＤＥＣ）の一部として組み込まれてよい。
【００８７】
[0097]本開示は概して、特定の情報を「シグナリングする」ビデオエンコーダ２０に言及し得る。「シグナリング」という用語は概して、圧縮されたビデオデータを復号するために使用されるシンタックス要素および／または他のデータの通信を指し得る。そのような通信は、リアルタイムまたはほぼリアルタイムで発生し得る。代替的に、そのような通信は、符号化のときにおいて符号化されるビットストリームの中のシンタックス要素を、コンピュータ可読記憶媒体に記憶するときに発生し得るような、ある長さの時間にわたって発生することがあり、次いで、ビデオ復号デバイスが、これらのシンタックス要素を、この媒体に記憶された後の任意の時間に取り出し得る。いくつかの例では、エンコーダの観点から、シグナリングは符号化ビットストリームを生成することを含み得、デコーダの観点から、シグナリングはコーディングされたビットストリームを受信し解析することを含み得る。
【００８８】
[0098]上記で簡単に述べられたように、ビデオエンコーダ２０は、ビデオデータを符号化する。ビデオデータは、１つまたは複数のピクチャを備え得る。ピクチャの各々は、ビデオの一部を形成する静止画像である。ビデオエンコーダ２０がビデオデータを符号化するとき、ビデオエンコーダ２０はビットストリームを生成し得る。ビットストリームは、ビデオデータのコーディングされた表現を形成するビットのシーケンスを含み得る。ビットストリームは、コーディングされたピクチャと、関連のデータとを含み得る。コーディングされたピクチャは、ピクチャのコーディングされた表現である。関連のデータは、シーケンスパラメータセット（ＳＰＳ）と、ピクチャパラメータセット（ＰＰＳ）と、ビデオパラメータセット（ＶＰＳ）と、適応パラメータセット（ＡＰＳ）と、スライスヘッダと、ブロックヘッダと、他のシンタックス構造とを含み得る。
【００８９】
[0099]ピクチャは、ＳL、ＳCb、およびＳCrと示される３つのサンプルアレイを含み得る。ＳLは、ルーマサンプルの２次元アレイ（すなわち、ブロック）である。ルーマサンプルは、本明細書では「Ｙ」サンプルと呼ばれることもある。ＳCbは、Ｃｂクロミナンスサンプルの２次元アレイである。ＳCrは、Ｃｒクロミナンスサンプルの２次元アレイである。クロミナンスサンプルは、本明細書では「クロマ」サンプルと呼ばれる場合もある。Ｃｂクロミナンスサンプルは、本明細書では「Ｕサンプル」と呼ばれることがある。Ｃｒクロミナンスサンプルは、本明細書では「Ｖサンプル」と呼ばれることがある。
【００９０】
[0100]いくつかの例では、ビデオエンコーダ２０は、ピクチャのクロマアレイ（すなわち、ＳCbおよびＳCr）をダウンサンプリングし得る。たとえば、ビデオエンコーダ２０は、ＹＵＶ４：２：０ビデオフォーマット、ＹＵＶ４：２：２ビデオフォーマット、または４：４：４ビデオフォーマットを使用し得る。ＹＵＶ４：２：０ビデオフォーマットにおいて、ビデオエンコーダ２０は、クロマアレイの高さおよび幅がルーマアレイの２分の１になるようにクロマアレイをダウンサンプリングし得る。ＹＵＶ４：２：２ビデオフォーマットにおいて、ビデオエンコーダ２０は、クロマアレイの幅がルーマアレイの２分の１になり、クロマアレイの高さがルーマアレイと同じになるように、クロマアレイをダウンサンプリングし得る。ＹＵＶ４：４：４ビデオフォーマットにおいて、ビデオエンコーダ２０は、クロマアレイをダウンサンプリングしない。
【００９１】
[0101]ピクチャの符号化された表現を生成するために、ビデオエンコーダ２０はコーディングツリーユニット（ＣＴＵ）のセットを生成し得る。ＣＴＵの各々は、ルーマサンプルのコーディングツリーブロック、クロマサンプルの２つの対応するコーディングツリーブロック、およびコーディングツリーブロックのサンプルをコーディングするために使用されるシンタックス構造であり得る。コーディングツリーブロックは、サンプルのＮ×Ｎのブロックであり得る。ＣＴＵは、「ツリーブロック」または「最大コーディングユニット」（ＬＣＵ）とも呼ばれることがある。ＨＥＶＣのＣＴＵは、Ｈ．２６４／ＡＶＣのような、他の規格のマクロブロックに広い意味で類似し得る。しかしながら、ＣＴＵは、必ずしも特定のサイズには限定されず、１つまたは複数のコーディングユニット（ＣＵ）を含み得る。
【００９２】
[0102]ピクチャを符号化することの一部として、ビデオエンコーダ２０は、ピクチャの各スライスの符号化された表現（すなわち、コーディングされたスライス）を生成し得る。コーディングされたスライスを生成するために、ビデオエンコーダ２０は、一連のＣＴＵを符号化し得る。本開示は、ＣＴＵの符号化された表現をコーディングされたＣＴＵと呼ぶことがある。いくつかの例では、スライスの各々は、整数個のコーディングされたＣＴＵを含む。
【００９３】
[0103]コーディングされたＣＴＵを生成するために、ビデオエンコーダ２０は、コーディングツリーブロックをコーディングブロックに分割するように、ＣＴＵのコーディングツリーブロックに対して４分木分割（quad-tree partitioning）を再帰的に実行することができ、したがって「コーディングツリーユニット」という名称である。コーディングブロックは、サンプルのＮ×Ｎブロックである。ＣＵは、ルーマサンプルアレイ、ＣｂサンプルアレイおよびＣｒサンプルアレイ、ならびにコーディングブロックのサンプルをコーディングするために使用されるシンタックス構造を有するピクチャの、ルーマサンプルの１つのコーディングブロックおよびクロマサンプルの２つの対応するコーディングブロックであり得る。ビデオエンコーダ２０は、ＣＵのコーディングブロックを１つまたは複数の予測ブロックにパーティション分割することができる。予測ブロックは、同じ予測が適用されるサンプルの矩形（すなわち、正方形または非正方形）ブロックであり得る。ＣＵの予測ユニット（ＰＵ）は、ルーマサンプルの予測ブロック、ピクチャのクロマサンプルの２つの対応する予測ブロック、および予測ブロックサンプルを予測するために使用されるシンタックス構造であり得る。ビデオエンコーダ２０は、ＣＵの各ＰＵのルーマ予測ブロック、Ｃｂ予測ブロック、およびＣｒ予測ブロックについて、予測ルーマブロックと、予測Ｃｂブロックと、予測Ｃｒブロックとを生成することができる。
【００９４】
[0104]ビデオエンコーダ２０は、ＰＵに関する予測ブロックを生成するためにイントラ予測またはインター予測を使用することができる。ビデオエンコーダ２０がＰＵの予測ブロックを生成するためにイントラ予測を使用する場合、ビデオエンコーダ２０は、ＰＵに関連付けられたピクチャの復号されたサンプルに基づいて、ＰＵの予測ブロックを生成し得る。
【００９５】
[0105]ビデオエンコーダ２０がＰＵの予測ブロックを生成するためにインター予測を使用する場合、ビデオエンコーダ２０は、ＰＵに関連付けられたピクチャ以外の１つまたは複数のピクチャの復号されたサンプルに基づいて、ＰＵの予測ブロックを生成し得る。ビデオエンコーダ２０は、ＰＵの予測ブロックを生成するために、単予測（uni-prediction）または双予測（bi-prediction）を使用し得る。ビデオエンコーダ２０が、ＰＵのための予測ブロックを生成するために単予測を使用するとき、ＰＵは単一のＭＶを有し得る。ビデオエンコーダ２０が、ＰＵのための予測ブロックを生成するために単予測を使用するとき、ＰＵは２つのＭＶを有し得る。
【００９６】
[0106]ビデオエンコーダ２０がＣＵの１つまたは複数のＰＵに関する予測ルーマブロックと、予測Ｃｂブロックと、予測Ｃｒブロックとを生成した後、ビデオエンコーダ２０は、ＣＵに関するルーマ残差ブロックを生成することができる。ＣＵのルーマ残差ブロック中の各サンプルは、ＣＵの予測ルーマブロックの１つの中のルーマサンプルとＣＵの元のルーマコーディングブロック中の対応するサンプルとの間の差分を示す。加えて、ビデオエンコーダ２０は、ＣＵに関するＣｂ残差ブロックを生成することができる。ＣＵのＣｂ残差ブロック中の各サンプルは、ＣＵの予測Ｃｂブロックのうちの１つの中のＣｂサンプルと、ＣＵの元のＣｂコーディングブロック中の対応するサンプルとの間の差分を示し得る。ビデオエンコーダ２０は、ＣＵに関するＣｒ残差ブロックを生成することもできる。ＣＵのＣｒ残差ブロック中の各サンプルは、ＣＵの予測Ｃｒブロックのうちの１つの中のＣｒサンプルと、ＣＵの元のＣｒコーディングブロック中の対応するサンプルとの間の差分を示し得る。
【００９７】
[0107]さらに、ビデオエンコーダ２０は、ＣＵのルーマ残差ブロックと、Ｃｂ残差ブロックと、Ｃｒ残差ブロックとを、１つまたは複数のルーマ変換ブロック、Ｃｂ変換ブロック、およびＣｒ変換ブロックに分解するために、４分木分割を使用し得る。変換ブロックは、同じ変換が適用されるサンプルの矩形ブロックであってもよい。ＣＵの変換ユニット（ＴＵ）は、ルーマサンプルの変換ブロック、クロマサンプルの２つの対応する変換ブロック、および変換ブロックサンプルを変換するために使用されるシンタックス構造であり得る。したがって、ＣＵの各ＴＵは、ルーマ変換ブロック、Ｃｂ変換ブロック、およびＣｒ変換ブロックに関連付けられ得る。ＴＵに関連付けられたルーマ変換ブロックはＣＵのルーマ残差ブロックのサブブロックであり得る。Ｃｂ変換ブロックはＣＵのＣｂ残差ブロックのサブブロックであり得る。Ｃｒ変換ブロックは、ＣＵのＣｒ残差ブロックのサブブロックであり得る。３Ｄコーディングに関して、深度ブロックの中の深度値は、サンプル値として同様に表されてよく、各々は、所与のピクセルロケーションに関連付けられた深度のレベルを示す。深度ブロックをコーディングする際に、選択された候補の動き情報を継承または使用するための候補のリストが生成される、特にスキップモードまたはマージモードなどのモードにおいて、本開示の技法が、深度ブロックのコーディングに適用可能である。
【００９８】
[0108]ビデオエンコーダ２０は、ＴＵに関するルーマ係数ブロックを生成するために、ＴＵのルーマ変換ブロックに１回または複数回の変換を適用し得る。係数ブロックは、変換係数の２次元アレイであり得る。変換係数は、スカラー量であってよい。ビデオエンコーダ２０は、ＴＵのためのＣｂ係数ブロックを生成するために、ＴＵのＣｂ変換ブロックに１回または複数回の変換を適用し得る。ビデオエンコーダ２０は、ＴＵのためのＣｒ係数ブロックを生成するために、ＴＵのＣｒ変換ブロックに１回または複数回の変換を適用し得る。
【００９９】
[0109]係数ブロック（たとえば、ルーマ係数ブロック、Ｃｂ係数ブロックまたはＣｒ係数ブロック）を生成した後、ビデオエンコーダ２０は、係数ブロックを量子化し得る。量子化は、一般に、変換係数を表すために使用されるデータの量をできるだけ減らすために変換係数が量子化され、さらなる圧縮を実現する処理を指す。ビデオエンコーダ２０が係数ブロックを量子化した後、ビデオエンコーダ２０は、量子化された変換係数を示すシンタックス要素をエントロピー符号化することができる。たとえば、ビデオエンコーダ２０は、量子化された変換係数を示すシンタックス要素に対してコンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）を実行することができる。ビデオエンコーダ２０は、エントロピー符号化されたシンタックス要素をビットストリーム中に出力し得る。
【０１００】
[0110]ビデオデコーダ３０は、ビデオエンコーダ２０によって生成されたビットストリームを受信し得る。加えて、ビデオデコーダ３０は、ビットストリームからシンタックス要素を復号するためにビットストリームを解析し得る。ビデオデコーダ３０は、ビットストリームから復号されたシンタックス要素に少なくとも部分的に基づいて、ビデオデータのピクチャを再構成し得る。ビデオデータを再構成するための処理は、全般に、ビデオエンコーダ２０によって実行される処理の逆であり得る。たとえば、ビデオデコーダ３０は、ＰＵのＭＶを使用して、現在のＣＵのＰＵの予測サンプルブロックを決定することができる。加えて、ビデオデコーダ３０は、現在のＣＵのＴＵと関連付けられる変換係数ブロックを逆量子化することができる。ビデオデコーダ３０は、現在ＣＵのＴＵに関連付けられた変換ブロックを再構成するために、変換係数ブロックに対して逆変換を実行し得る。ビデオデコーダ３０は、現在のＣＵのＰＵのための予測サンプルブロックのサンプルを現在のＣＵのＴＵの変換ブロックの対応するサンプルに加算することによって、現在のＣＵのコーディングブロックを再構成し得る。ピクチャの各ＣＵのコーディングブロックを再構成することによって、ビデオデコーダ３０は、ピクチャを再構成し得る。
【０１０１】
[0111]いくつかの例では、ビデオエンコーダ２０は、マージモードもしくはスキップモード、または場合によっては高度ＭＶ予測（ＡＭＶＰ）モードを使用して、ＰＵの動き情報をシグナリングし得る。ＰＵの動き情報は、ＰＵの動きベクトルと、ＰＵの参照インデックスとを含み得る。ビデオエンコーダ２０がマージモードを使用して現在ＰＵの動き情報をシグナリングするとき、ビデオエンコーダ２０は、マージ候補リストを生成する。マージ候補リストは、候補のセットを含む。候補は、現在ＰＵに空間的または時間的に隣接するＰＵの動き情報を示し得る。ビデオエンコーダ２０は、次いで、候補リストの中から候補を選択し得、選択された候補によって示される動き情報を、現在ＰＵの動き情報として使用し得る。さらに、マージモードでは、ビデオエンコーダ２０は、選択された候補の、候補リストの中での位置をシグナリングし得る。ビデオデコーダ３０は、同じ候補リストを生成し得、選択された候補の位置の表示に基づいて、選択された候補を決定し得る。ビデオデコーダ３０は、次いで、現在ＰＵに関する予測サンプルを生成するために、選択された候補の動き情報を使用し得、現在ＰＵとマージモードで識別された予測ＰＵの予測サンプルとの差として、残差信号を生成し得る。
【０１０２】
[0112]スキップモードは、ビデオエンコーダ２０が候補リストを生成し、候補のリストの中から候補を選択するという点で、マージモードと同様である。ただし、ビデオエンコーダ２０がスキップモードを使用して現在ＰＵ（たとえば、深度ブロック）の動き情報をシグナリングするとき、ビデオエンコーダ２０は、任意の残差信号の生成を避けることができる。
【０１０３】
[0113]ＡＭＶＰモードは、ビデオエンコーダ２０が候補リストを生成し、候補リストの中から候補を選択するという点で、マージモードと同様である。ただし、ビデオエンコーダ２０がＡＭＶＰモードを使用して現在ＰＵ（たとえば、深度ブロック）の動き情報をシグナリングするとき、ビデオエンコーダ２０は、選択された候補の候補リストの中での位置をシグナリングすることに加えて、現在ＰＵのための動きベクトル差分（ＭＶＤ）と参照インデックスとをシグナリングし得る。現在ＰＵのためのＭＶＤは、現在ＰＵのＭＶと、選択されたＭＶ候補のＭＶとの間の差を示し得る。単予測では、ビデオエンコーダ２０は、現在ＰＵについての１つのＭＶＤと１つの参照インデックスとをシグナリングすることができる。双予測では、ビデオエンコーダ２０は、現在ＰＵについての２つのＭＶＤと２つの参照インデックスとをシグナリングし得る。本開示に一致する深度ブロック予測に対して、ビデオエンコーダ２０は、一般に、現在ＰＵについての１つのＭＶＤと１つの参照インデックスをシグナリングし得るが、深度ブロック予測はまた、２つのＭＶＤおよび２つの参照インデックスがシグナリングされる双予測と同様の技法を使用し得る。
【０１０４】
[0114]さらに、現在ＰＵの動き情報がＡＭＶＰモードを使用してシグナリングされると、ビデオデコーダ３０は、同じ候補リストを生成し得、選択された候補の位置の表示に基づいて、選択された候補を決定し得る。ビデオデコーダ３０は、ＭＶＤを、選択された候補のＭＶに加算することによって、現在ＰＵのＭＶを復元し得る。ビデオデコーダ３０は、次いで、現在ＰＵのための予測サンプルブロックを生成するために、復元されたＭＶ、または現在ＰＵのＭＶを使用し得る。
【０１０５】
[0115]本開示によれば、ビデオエンコーダ２０およびビデオデコーダ３０は、ビデオコーディングプロセス（たとえば、ビデオ符号化またはビデオ復号）の一部として、本明細書で説明される１つまたは複数の技法を実行し得る。たとえば、ビデオエンコーダ２０は、深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを決定し得る。深度ＰＵは１つまたは複数のサブＰＵであり得る。各サブＰＵは等しいサイズを有し得る。さらに、別個の動き情報が、それぞれのサブＰＵにコロケートされたテクスチャブロックから、各サブＰＵについて継承され得る。ビデオエンコーダ２０は、サブＰＵの各々とコロケートされたテクスチャブロックに対応するＭＰＩに少なくも部分的に基づいて、深度ブロックの各サブＰＵを符号化し得る。ビデオエンコーダ２０は、その深度ＰＵにおけるＭＰＩに関する各サブＰＵのサイズを示すシンタックス要素（たとえば、上記で説明したシンタックス要素、log2_sub_pb_mpi_size_minus3）をさらに生成および送信し得る。
【０１０６】
[0116]さらに、ビデオデコーダ３０は、深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを示すシンタックス要素（たとえば、ビデオエンコーダ２０によって生成および送信されるシンタックス要素）を受信し得る。深度ＰＵは１つまたは複数のサブＰＵであり得る。各サブＰＵは、シンタックス要素によって示されたサイズに等しいサイズを有し得る。さらに、別個の動き情報が、それぞれのサブＰＵにコロケートされたテクスチャブロックから、各サブＰＵについて継承され得る。サブＰＵ  ＭＰＩモードを示すインデックス値を受信すると、ビデオデコーダ３０は、サブＰＵの各々とコロケートされた対応するテクスチャブロックに少なくとも部分的に基づいて、深度ブロックのサブＰＵの各々についてＭＰＩをさらに継承し得る。
【０１０７】
[0117]図８は、本開示の技法を実装し得る例示的なビデオエンコーダ２０を示すブロック図である。図８は、説明のために提供され、本開示で広く例示され説明されるような技法を限定するものと見なされるべきではない。説明のために、本開示は、ＨＥＶＣコーディングのコンテキストにおいてビデオエンコーダ２０について説明する。しかしながら、本開示の技法は、他のコーディング規格または方法に適用可能であり得る。
【０１０８】
[0118]図８の例において、ビデオエンコーダ２０は、予測処理ユニット１００と、残差生成ユニット１０２と、変換処理ユニット１０４と、量子化ユニット１０６と、逆量子化ユニット１０８と、逆変換処理ユニット１１０と、再構成ユニット１１２と、フィルタユニット１１４と、復号ピクチャバッファ１１６と、エントロピー符号化ユニット１１８とを含む。予測処理ユニット１００は、インター予測処理ユニット１２０と、イントラ予測処理ユニット１２６とを含む。インター予測処理ユニット１２０は、動き推定ユニット１２２と、動き補償ユニット１２４とを含む。他の例では、ビデオエンコーダ２０は、より多数の、より少数の、または異なる機能的コンポーネントを含み得る。
【０１０９】
[0119]ビデオエンコーダ２０は、ビデオデータを受信し得る。ビデオエンコーダ２０は、ビデオデータのピクチャのスライスの中の各ＣＴＵを符号化し得る。ＣＴＵの各々は、ピクチャの等しいサイズのルーマコーディングツリーブロック（ＣＴＢ）と、対応するＣＴＢとに関連付けられ得る。ＣＴＵを符号化することの一部として、予測処理ユニット１００は、ＣＴＵのＣＴＢを徐々により小さいブロックに分割するために、４分木分割を実行し得る。より小さいブロックは、ＣＵのコーディングブロックであり得る。たとえば、予測処理ユニット１００は、ＣＴＵに関連付けられたＣＴＢを４つの等しいサイズのサブブロックにパーティション分割し得、サブブロックのうちの１つまたは複数を４つの等しいサイズのサブサブブロックにパーティション分割し得る、などである。
【０１１０】
[0120]ビデオエンコーダ２０は、ＣＵの符号化された表現（すなわち、コーディングされたＣＵ）を生成するために、ＣＴＵのＣＵを符号化し得る。ＣＵを符号化することの一部として、予測処理ユニット１００は、ＣＵの１つまたは複数のＰＵの間でＣＵに関連付けられたコーディングブロックをパーティション分割し得る。したがって、各ＰＵは、ルーマ予測ブロックおよび対応するクロマ予測ブロックに関連付けられ得る。ビデオエンコーダ２０およびビデオデコーダ３０は、様々なサイズを有するＰＵをサポートすることができる。上で示されたように、ＣＵのサイズはＣＵのルーマコーディングブロックのサイズを指すことがあり、ＰＵのサイズはＰＵのルーマ予測ブロックのサイズを指すことがある。特定のＣＵのサイズが２Ｎ×２Ｎであると仮定すると、ビデオエンコーダ２０およびビデオデコーダ３０は、イントラ予測に関して２Ｎ×２ＮまたはＮ×ＮのＰＵサイズをサポートし得、インター予測に関して２Ｎ×２Ｎ、２Ｎ×Ｎ、Ｎ×２Ｎ、Ｎ×Ｎ、または同様の対称のＰＵサイズをサポートし得る。ビデオエンコーダ２０およびビデオデコーダ３０はまた、インター予測に関して、２Ｎ×ｎＵ、２Ｎ×ｎＤ、ｎＬ×２Ｎ、およびｎＲ×２ＮのＰＵサイズ向けに非対称のパーティショニング（asymmetric partitioning）をサポートし得る。
【０１１１】
[0121]インター予測処理ユニット１２０は、ＣＵの各ＰＵに対してインター予測を実施することによって、ＰＵのための予測データを生成し得る。ＰＵの予測データは、ＰＵの予測サンプルブロックと、ＰＵの動き情報とを含み得る。インター予測ユニット１２１は、ＰＵがＩスライス中にあるか、Ｐスライス中にあるか、Ｂスライス中にあるかに応じて、ＣＵのＰＵに対して異なる動作を実行することができる。Ｉスライス中では、すべてのＰＵがイントラ予測される。したがって、ＰＵがＩスライス中にある場合、インター予測ユニット１２１は、ＰＵに対してインター予測を実行しない。したがって、Ｉモードで符号化されるブロックでは、予測されるブロックは、同じフレーム内の以前に符号化された隣接ブロックからの空間的予測を使用して形成される。
【０１１２】
[0122]ＰＵがＰスライスの中にある場合、動き推定ユニット１２２は、ＰＵのための参照領域について参照ピクチャのリスト（たとえば、「ＲｅｆＰｉｃＬｉｓｔ０」）の中で参照ピクチャを探索し得る。ＰＵの参照領域は、ＰＵのサンプルブロックに最も密接に対応するサンプルブロックを含む参照ピクチャ内の領域であり得る。動き推定ユニット１２２は、ＰＵのための参照領域を含む参照ピクチャの、ＲｅｆＰｉｃＬｉｓｔ０の中での位置を示す参照インデックスを生成し得る。加えて、動き推定ユニット１２２は、ＰＵのコーディングブロックと、参照領域と関連付けられる参照位置との間の空間変位を示すＭＶを生成し得る。たとえば、ＭＶは、現在の復号されたピクチャ中の座標から参照ピクチャ中の座標までのオフセットを提供する２次元ベクトルであり得る。動き推定ユニット１２２は、ＰＵの動き情報として参照インデックスとＭＶとを出力し得る。動き補償ユニット１２４は、ＰＵの動きベクトルによって示された参照位置における実際のまたは補間されたサンプルに基づいて、ＰＵの予測サンプルブロックを生成し得る。
【０１１３】
[0123]ＰＵがＢスライス中にある場合、動き推定ユニット１２２は、ＰＵについての単予測または双予測を実施し得る。ＰＵについての単予測を実施するために、動き推定ユニット１２２は、ＰＵの参照領域についてＲｅｆＰｉｃＬｉｓｔ０の参照ピクチャまたは第２の参照ピクチャリスト（「ＲｅｆＰｉｃＬｉｓｔ１」）を探索し得る。動き推定ユニット１２２は、ＰＵの動き情報として、参照領域を含む参照ピクチャのＲｅｆＰｉｃＬｉｓｔ０またはＲｅｆＰｉｃＬｉｓｔ１中の位置を示す参照インデックスと、ＰＵのサンプルブロックと参照領域と関連付けられる参照位置との間の空間変位を示すＭＶと、参照ピクチャがＲｅｆＰｉｃＬｉｓｔ０中にあるかＲｅｆＰｉｃＬｉｓｔ１中にあるかを示す１つまたは複数の予測方向インジケータとを出力し得る。動き補償ユニット１２４は、ＰＵの動きベクトルによって示される参照領域における実際のサンプルまたは補間されたサンプルに少なくとも部分的に基づいて、ＰＵの予測サンプルブロックを生成し得る。
【０１１４】
[0124]ＰＵのための双方向インター予測を実行するために、動き推定ユニット１２２は、ＰＵの参照領域についてＲｅｆＰｉｃＬｉｓｔ０中の参照ピクチャを探索することができ、また、ＰＵの別の参照領域についてＲｅｆＰｉｃＬｉｓｔ１中の参照ピクチャを探索し得る。動き推定ユニット１２２は、参照領域を含む参照ピクチャのＲｅｆＰｉｃＬｉｓｔ０およびＲｅｆＰｉｃＬｉｓｔ１中での位置を示す参照ピクチャインデックスを生成し得る。加えて、動き推定ユニット１２２は、参照領域と関連付けられる参照位置とＰＵのサンプルブロックとの間の空間変位を示すＭＶを生成し得る。ＰＵの動き情報は、ＰＵの参照インデックスとＭＶとを含み得る。動き補償ユニット１２４は、ＰＵの動きベクトルによって示される参照領域における実際のサンプルまたは補間されたサンプルに少なくとも部分的に基づいて、ＰＵの予測サンプルブロックを生成し得る。
【０１１５】
[0125]本開示の１つまたは複数の技法によれば、ビデオエンコーダ２０内の１つまたは複数のユニットは、ビデオ符号化処理の一部として、本明細書で説明される１つまたは複数の技法を実施し得る。また、たとえば深度処理ユニット１２５など、追加の３Ｄコンポーネントがビデオエンコーダ２０内に含められ得る。深度処理ユニット１２５は、いくつかの例で、本開示の１つまたは複数の技法を実施し得る。
【０１１６】
[0126]たとえば、深度処理ユニット１２５ビデオエンコーダ２０は、深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを決定し得る。深度ＰＵは１つまたは複数のサブＰＵであり得る。各サブＰＵは等しいサイズを有し得る。さらに、別個の動き情報が、それぞれのサブＰＵにコロケートされたテクスチャブロックから、各サブＰＵについて継承され得る。ビデオエンコーダ２０の深度処理ユニット１２５は、サブＰＵの各々とコロケートされたテクスチャブロックに対応するＭＰＩに少なくも部分的に基づいて、深度ブロックの各サブＰＵを符号化し得る。ビデオエンコーダ２０の深度処理ユニット１２５は、その深度ＰＵにおけるＭＰＩに関する各サブＰＵのサイズを示すシンタックス要素をさらに生成し得る。
【０１１７】
[0127]種々の例では、ビデオエンコーダの予測処理ユニット１００、インター予測処理ユニット１２０、動き推定ユニット１２２、動き補償ユニット１２４、イントラ予測処理ユニット１２６、深度処理ユニット１２５、および／または別のユニットが、本明細書で説明する技法と一致する、３Ｄビデオに関連付けられるデータを符号化する方法を実施し得る。これらのユニットのうちの１つ（またはそれらの任意の組合せ）が、たとえば、本明細書で説明するＭＰＩ技法をビデオ符号化処理の一部として実施するように構成され得る。
【０１１８】
[0128]続いて、ここで図８の例の参照をする。イントラ予測処理ユニット１２６は、ＰＵに対してイントラ予測を実行することによって、ＰＵのための予測データを生成し得る。ＰＵのための予測データは、ＰＵのための予測サンプルブロックと様々なシンタックス要素とを含み得る。イントラ予測処理ユニット１２６は、Ｉスライス、Ｐスライス、およびＢスライスの中のＰＵに対してイントラ予測を実施し得る。
【０１１９】
[0129]ＰＵに対してイントラ予測を実行するために、イントラ予測処理ユニット１２６は、ＰＵのための予測データの複数のセットを生成するために、複数のイントラ予測モードを使用し得る。イントラ予測モードを使用してＰＵの予測データのセットを生成するために、イントラ予測処理ユニット１２６は、そのイントラ予測モードと関連付けられた方向へ、ＰＵのサンプルブロック全体にわたって、隣接ＰＵのサンプルブロックからのサンプルを延ばし得る。隣接ＰＵは、ＰＵ、ＣＵ、およびＣＴＵについて左から右、上から下の符号化順序を仮定すると、ＰＵの上、右上、左上、または左にあり得る。イントラ予測処理ユニット１２６は、様々な数のイントラ予測モード、たとえば３３個の方向性イントラ予測モードを使用し得る。いくつかの例では、イントラ予測モードの数は、ＰＵに関連付けられた領域のサイズに依存し得る。
【０１２０】
[0130]予測処理ユニット１００は、ＰＵについてインター予測処理ユニット１２０によって生成された予測データ、またはＰＵについてイントラ予測処理ユニット１２６によって生成された予測データの中から、ＣＵのＰＵのための予測データを選択し得る。いくつかの例では、予測処理ユニット１００は、予測データのセットのレート／歪みの尺度に基づいて、ＣＵのＰＵのための予測データを選択する。選択された予測データの予測サンプルブロックは、本明細書では、選択された予測サンプルブロックと呼ばれ得る。
【０１２１】
[0131]残差生成ユニット１０２は、ＣＵのルーマコーディングブロック、Ｃｂコーディングブロック、およびＣｒコーディングブロック、ならびにＣＵのＰＵの選択された予測ルーマブロック、予測Ｃｂブロック、および予測Ｃｒブロックに基づいて、ＣＵのルーマ残差ブロックと、Ｃｂ残差ブロックと、Ｃｒ残差ブロックとを生成し得る。たとえば、残差生成ユニット１０２は、残差ブロック中の各サンプルがＣＵのコーディングブロック中のサンプルとＣＵのＰＵの対応する選択された予測サンプルブロック中の対応するサンプルとの間の差に等しい値を有するように、ＣＵの残差ブロックを生成し得る。
【０１２２】
[0132]変換処理ユニット１０４は、４分木分割を実行して、ＣＵと関連付けられた残差ブロックをＣＵのＴＵと関連付けられた変換ブロックにパーティション分割し得る。したがって、ＴＵは、ルーマ変換ブロックおよび２つのクロマ変換ブロックと関連付けられ得る。ＣＵのＴＵのルーマ変換ブロックおよびクロマ変換ブロックのサイズおよび位置は、ＣＵのＰＵの予測ブロックのサイズおよび位置に基づくことも基づかないこともある。「残差４分木」（ＲＱＴ）として知られる４分木構造は、領域の各々に関連付けられたノードを含み得る。ＣＵのＴＵは、ＲＱＴのリーフノードに対応し得る。
【０１２３】
[0133]変換処理ユニット１０４は、ＴＵの変換ブロックに１つまたは複数の変換を適用することによって、ＣＵの各ＴＵに関する変換係数ブロックを生成し得る。変換処理ユニット１０４は、ＴＵに関連付けられた変換ブロックに様々な変換を適用し得る。たとえば、変換処理ユニット１０４は、離散コサイン変換（ＤＣＴ）、方向変換、または概念的に類似の変換を、変換ブロックに適用し得る。いくつかの例では、変換処理ユニット１０４は、変換ブロックに変換を適用しない。そのような例では、変換ブロックは、変換係数ブロックとして扱われ得る。
【０１２４】
[0134]量子化ユニット１０６は、係数ブロック内の変換係数を量子化し得る。量子化プロセスは、変換係数の一部またはすべてに関連付けられたビット深度を低減し得る。たとえば、ｎビット変換係数は量子化の間にｍビットの変換係数に切り捨てられ（rounded down to）てよく、ただし、ｎはｍよりも大きい。量子化ユニット１０６は、ＣＵと関連付けられた量子化パラメータ（ＱＰ）値に基づいて、ＣＵのＴＵと関連付けられた係数ブロックを量子化し得る。ビデオエンコーダ２０は、ＣＵと関連付けられたＱＰ値を調整することによって、ＣＵと関連付けられた係数ブロックに適用される量子化の程度を調整し得る。量子化は情報の損失をもたらし得、したがって、量子化された変換係数は元の係数よりも低い精度を有し得る。
【０１２５】
[0135]逆量子化ユニット１０８および逆変換処理ユニット１１０は、それぞれ、係数ブロックに逆量子化および逆変換を適用して、係数ブロックから残差ブロックを再構成し得る。再構成ユニット１１２は、再構成された残差ブロックを、予測処理ユニット１００によって生成された１つまたは複数の予測サンプルブロックからの対応するサンプルに追加して、ＴＵに関連付けられた再構成された変換ブロックを生成し得る。このようにＣＵの各ＴＵのための変換ブロックを再構成することによって、ビデオエンコーダ２０はＣＵのコーディングブロックを再構成し得る。
【０１２６】
[0136]フィルタユニット１１４は、ＣＵに関連付けられたコーディングブロックの中のブロッキングアーティファクトを低減するために、１つまたは複数のデブロッキング動作を実施し得る。復号ピクチャバッファ１１６は、フィルタユニット１１４が、再構成されたコーディングブロックに対して１つまたは複数のデブロッキング動作を実行した後、再構成されたコーディングブロックを記憶し得る。インター予測ユニット１２０は、再構成されたコーディングブロックを含む参照ピクチャを使用して、他のピクチャのＰＵに対してインター予測を実行し得る。加えて、イントラ予測処理ユニット１２６は、ＣＵと同じピクチャの中の他のＰＵに対してイントラ予測を実行するために、復号ピクチャバッファ１１６の中の再構成されたコーディングブロックを使用し得る。
【０１２７】
[0137]エントロピー符号化ユニット１１８は、ビデオエンコーダ２０の他の機能的コンポーネントからデータを受信し得る。たとえば、エントロピー符号化ユニット１１８は、量子化ユニット１０６から係数ブロックを受信し得、予測処理ユニット１００からシンタックス要素を受信し得る。エントロピー符号化ユニット１１８は、エントロピー符号化データを生成するために、データに対して１つまたは複数のエントロピー符号化演算を実施し得る。たとえば、エントロピー符号化ユニット１１８は、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ）演算、ＣＡＢＡＣ演算、変数間（Ｖ２Ｖ）レングスコーディング演算、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ）演算、確率間隔パーティショニングエントロピー（ＰＩＰＥ：Probability Interval Partitioning Entropy）コーディング演算、指数ゴロム符号化演算、または別のタイプのエントロピー符号化演算をデータに対して実施し得る。ビデオエンコーダ２０は、エントロピー符号化ユニット１１８によって生成されたエントロピー符号化データを含むビットストリームを出力し得る。たとえば、ビットストリームは、ＣＵのためのＲＱＴを表すデータを含み得る。
【０１２８】
[0138]図９は、本開示の技法を実装するように構成された例示的なビデオデコーダ３０を示すブロック図である。図９は、説明のために提供されるものであって、本開示で広く例示され説明される技法を限定するものではない。説明のために、本開示は、ＨＥＶＣコーディングのコンテキストにおいてビデオデコーダ３０について記載する。しかしながら、本開示の技法は他のコーディング規格または方法に適用可能である。
【０１２９】
[0139]図９の例では、ビデオデコーダ３０は、エントロピー復号ユニット１５０と、予測処理ユニット１５２と、逆量子化ユニット１５４と、逆変換処理ユニット１５６と、再構成ユニット１５８と、フィルタユニット１６０と、復号ピクチャバッファ１６２とを含む。予測処理ユニット１５２は、動き補償ユニット１６４とイントラ予測処理ユニット１６６とを含む。他の例では、ビデオデコーダ３０は、より多いか、より少ないか、または異なる機能的コンポーネントを含み得る。
【０１３０】
[0140]ビデオデコーダ３０は、ビットストリームを受信し得る。エントロピー復号ユニット１５０は、ビットストリームからシンタックス要素を復号するためにビットストリームを解析し得る。エントロピー復号ユニット１５０は、ビットストリームの中のエントロピー符号化シンタックス要素をエントロピー復号し得る。予測処理ユニット１５２、逆量子化ユニット１５４、逆変換処理ユニット１５６、再構成ユニット１５８、およびフィルタユニット１６０は、ビットストリームから抽出されたシンタックス要素に基づいて、復号ビデオデータを生成することができる。
【０１３１】
[0141]ビットストリームは、一連のＮＡＬユニットを備え得る。ビットストリームのＮＡＬユニットは、コーディングされたスライスＮＡＬユニットを含み得る。ビットストリームを復号することの一部として、エントロピー復号ユニット１５０は、コーディングされたスライスＮＡＬユニットからシンタックス要素を抽出し、エントロピー復号し得る。コーディングされたスライスの各々は、スライスヘッダと、スライスデータとを含み得る。スライスヘッダは、スライスに関するシンタックス要素を含み得る。スライスヘッダ中のシンタックス要素は、スライスを含むピクチャと関連付けられたＰＰＳを識別するシンタックス要素を含み得る。
【０１３２】
[0142]ビデオデコーダ３０は、ビットストリームからのシンタックス要素を復号することに加えて、パーティション分割されていないＣＵに対して再構成動作を実施し得る。パーティション分割されていないＣＵに対して再構成動作を実行するために、ビデオデコーダ３０は、ＣＵの各ＴＵに対して再構成動作を実施し得る。ＣＵの各ＴＵについて再構成動作を実行することによって、ビデオデコーダ３０は、ＣＵの残差ブロックを再構成し得る。
【０１３３】
[0143]ＣＵのＴＵに対して再構成動作を実行することの一部として、逆量子化ユニット１５４は、ＴＵと関連付けられた係数ブロックを逆量子化（inverse quantize）、すなわち逆量子化（de-quantize）し得る。逆量子化ユニット１５４は、量子化の程度を決定するために、また同様に、逆量子化ユニット１５４が適用すべき逆量子化の程度を決定するために、ＴＵのＣＵに関連付けられたＱＰ値を使用し得る。すなわち、圧縮比、すなわち、元のシーケンスと圧縮されたシーケンスとを表すために使用されるビット数の比は、変換係数を量子化するときに使用されるＱＰの値を調整することによって制御され得る。圧縮比は、利用されるエントロピーコーディングの方法に依存し得る。
【０１３４】
[0144]逆量子化ユニット１５４が係数ブロックを逆量子化した後、逆変換処理ユニット１５６は、ＴＵに関連付けられた残差ブロックを生成するために、係数ブロックに１つまたは複数の逆変換を適用し得る。たとえば、逆変換処理ユニット１５６は、逆ＤＣＴ、逆整数変換、逆カルーネンレーベ変換（ＫＬＴ：Karhunen-Loeve transform）、逆回転変換、逆方向変換、または別の逆変換を、係数ブロックに適用し得る。
【０１３５】
[0145]ＰＵがイントラ予測を使用して符号化される場合、イントラ予測処理ユニット１６６は、ＰＵのための予測ブロックを生成するために、イントラ予測を実施し得る。イントラ予測処理ユニット１６６は、空間的に隣接するＰＵの予測ブロックに基づいて、ＰＵのための予測ルーマブロックと、予測Ｃｂブロックと、予測Ｃｒブロックとを生成するために、イントラ予測モードを使用し得る。イントラ予測処理ユニット１６６は、ビットストリームから復号された１つまたは複数のシンタックス要素に基づいて、ＰＵのためのイントラ予測モードを決定し得る。
【０１３６】
[0146]予測処理ユニット１５２は、ビットストリームから抽出されたシンタックス要素に基づいて、第１の参照ピクチャリスト（ＲｅｆＰｉｃＬｉｓｔ０）と第２の参照ピクチャリスト（ＲｅｆＰｉｃＬｉｓｔ１）とを構成し得る。さらに、ＰＵがインター予測を使用して符号化された場合、エントロピー復号ユニット１５０は、ＰＵについての動き情報を抽出し得る。動き補償ユニット１６４は、ＰＵの動き情報に基づいて、ＰＵ用の１つまたは複数の参照領域を決定し得る。動き補償ユニット１６４は、ＰＵの１つまたは複数の参照ブロックにおけるサンプルブロックに基づいて、ＰＵの予測ルーマブロックと、予測Ｃｂブロックと、予測Ｃｒブロックとを生成し得る。
【０１３７】
[0147]上記で示したように、ビデオエンコーダ２０は、マージモード、スキップモードまたはＡＭＶＰモードを使用して、ＰＵの動き情報をシグナリングし得る。ビデオエンコーダ２０がＡＭＶＰモードを使用して現在ＰＵの動き情報をシグナリングすると、エントロピー復号ユニット１５０は、ビットストリームから、参照インデックスと、現在ＰＵに関するＭＶＤと、候補インデックスとを復号し得る。さらに、動き補償ユニット１６４は、現在ＰＵに関するＡＭＶＰ候補リストを生成し得る。ＡＭＶＰ候補リストは、１つまたは複数のＭＶ予測子候補を含む。ＭＶ予測子候補の各々は、現在ＰＵに空間的または時間的に隣接するＰＵのＭＶを定義する。動き補償ユニット１６４は、候補インデックスに少なくとも部分的に基づいて、ＡＭＶＰ候補リストの中の選択されたＭＶ予測子候補を決定し得る。動き補償ユニット１６４は、次いで、ＭＶＤを、選択されたＭＶ予測子候補によって定義されるＭＶに加えることによって、現在ＰＵのＭＶを決定し得る。言い換えれば、ＡＭＶＰに関して、ＭＶは、ＭＶ＝ＭＶＰ＋ＭＶＤとして計算され、ここにおいて、動きベクトル予測子（ＭＶＰ）のインデックスがシグナリングされ、ＭＶＰはＡＭＶＰリストからのＭＶ候補（空間的または時間的な）のうちの１つであり、ＭＶＤはデコーダ側にシグナリングされる。
【０１３８】
[0148]現在ＰＵが双予測される場合、エントロピー復号ユニット１５０は、追加の参照インデックスと、ＭＶＤと、候補インデックスとを、ビットストリームから復号し得る。動き補償ユニット１６２は、現在ＰＵに関する第２のＭＶを導出するために、追加の参照インデックスと、ＭＤと、候補インデックスとを使用して、上述されたプロセスを繰返し得る。このようにして、動き補償ユニット１６２は、ＲｅｆＰｉｃＬｉｓｔ０に関するＭＶ（すなわち、ＲｅｆＰｉｃＬｉｓｔ０  ＭＶ）と、ＲｅｆＰｉｃＬｉｓｔ１に関するＭＶ（すなわち、ＲｅｆＰｉｃＬｉｓｔ１  ＭＶ）とを導出し得る。
【０１３９】
[0149]本開示の１つまたは複数の技法によれば、ビデオデコーダ３０内の１つまたは複数のユニットは、ビデオ復号処理の一部として、本明細書で説明される１つまたは複数の技法を実行することができる。また、たとえば深度処理ユニット１６５など、追加の３Ｄコンポーネントがビデオデコーダ３０内に含められ得る。深度処理ユニット１６５は、いくつかの例で、本技法を実施し得る。
【０１４０】
[0150]たとえば、ビデオデコーダ３０の深度処理ユニット１６５は、深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを示すシンタックス要素を受信し得る。深度ＰＵは１つまたは複数のサブＰＵであり得る。各サブＰＵは、シンタックス要素によって示されたサイズに等しいサイズを有し得る。さらに、別個の動き情報が、それぞれのサブＰＵにコロケートされたテクスチャブロックから、各サブＰＵについて継承され得る。サブＰＵ  ＭＰＩモードを示すインデックス値を受信すると、ビデオデコーダ３０の深度処理ユニット１６５は、サブＰＵの各々とコロケートされた対応するテクスチャブロックに少なくとも部分的に基づいて、深度ブロックのサブＰＵの各々についてＭＰＩをさらに継承し得る。
【０１４１】
[0151]いくつかの例では、ビデオデコーダ３０の予測処理ユニット１５２、動き補償ユニット１６４、イントラ予測処理ユニット１６６、深度処理ユニット１６５および／または別のユニットが、本明細書で説明する技法と一致する、３Ｄビデオに関連付けられるデータを復号する方法を実施し得る。これらのユニットのうちの１つ（またはそれらの任意の組合せ）が、たとえば、本明細書で説明するＭＰＩ技法をビデオ復号処理の一部として実施するように構成され得る。
【０１４２】
[0152]続いて、ここで図９の参照をする。再構成ユニット１５８は、ＣＵのＴＵと関連付けられたルーマ変換ブロック、Ｃｂ変換ブロック、およびＣｒ変換ブロック、ならびにＣＵのＰＵの予測ルーマブロック、予測Ｃｂブロック、および予測Ｃｒブロックを、すなわち、イントラ予測データまたはインター予測データのいずれかを適宜使用して、ＣＵのルーマコーディングブロックと、Ｃｂコーディングブロックと、Ｃｒコーディングブロックとを再構成することができる。たとえば、再構成ユニット１５８は、ルーマ変換ブロック、Ｃｂ変換ブロック、およびＣｒ変換ブロックのサンプルを予測ルーマブロック、予測Ｃｂブロック、および予測Ｃｒブロックの対応するサンプルに加算して、ＣＵのルーマコーディングブロックと、Ｃｂコーディングブロックと、Ｃｒコーディングブロックとを再構成することができる。
【０１４３】
[0153]フィルタユニット１６０は、デブロッキング動作を実施して、ＣＵのルーマコーディングブロック、Ｃｂコーディングブロック、およびＣｒコーディングブロックと関連付けられたブロッキングアーティファクトを低減し得る。ビデオデコーダ３０は、ＣＵのルーマコーディングブロックと、Ｃｂコーディングブロックと、Ｃｒコーディングブロックとを、復号ピクチャバッファ１６２に記憶し得る。復号ピクチャバッファ１６２は、後続の動き補償、イントラ予測、および図７のディスプレイデバイス３２のようなディスプレイデバイス上での提示のために、参照ピクチャを提供し得る。たとえば、ビデオデコーダ３０は、復号ピクチャバッファ１６２中のルーマブロック、Ｃｂブロック、およびＣｒブロックに基づいて、他のＣＵのＰＵに対してイントラ予測演算またはインター予測演算を実施し得る。このようにして、ビデオデコーダ３０は、有意ルーマ係数ブロック（significant luma coefficient block）の変換係数レベルをビットストリームから抽出し、変換係数レベルを逆量子化し、変換係数レベルに変換を適用して変換ブロックを生成し、変換ブロックに少なくとも部分的に基づいてコーディングブロックを生成し、コーディングブロックを表示のために出力し得る。
【０１４４】
[0154]図１０は、本開示による例示的な符号化技法を示す流れ図である。たとえば、深度処理ユニット１２５ビデオエンコーダ２０は、深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを決定し得る（１７０）。深度ＰＵは１つまたは複数のサブＰＵであり得る。各サブＰＵは等しいサイズを有し得る。さらに、別個の動き情報が、それぞれのサブＰＵにコロケートされたテクスチャブロックから、各サブＰＵについて継承され得る。ビデオエンコーダ２０の深度処理ユニット１２５は、サブＰＵの各々とコロケートされたテクスチャブロックに対応するＭＰＩに少なくも部分的に基づいて、深度ブロックの各サブＰＵを符号化し得る（１７２）。ビデオエンコーダ２０の深度処理ユニット１２５は、その深度ＰＵにおけるＭＰＩに関する各サブＰＵのサイズを示すシンタックス要素をさらに生成し得る（１７４）。いくつかの例では、シンタックス要素は、両端値を含む０〜３の範囲を有し得る。
【０１４５】
[0155]シンタックス要素の値が１よりも大きいかまたはそれに等しい場合、ビデオエンコーダ２０の深度処理ユニット１２５は、アクセスユニットにおいて各テクスチャブロックを符号化し、各テクスチャブロック上で１６×１６ブロックに関して動き圧縮を実施し得る。アクセスユニットは深度ブロックを含む。いくつかの例では、アクセスユニット内の各テクスチャブロックは、アクセスユニット内の対応するコロケートされた深度ブロックに対して、独立してコーディングされ得る。各テクスチャブロックは、アクセスユニットにおいて深度ブロックのいずれを符号化するよりも前に符号化され得、ビデオデコーダ２０の深度処理ユニット１２５は、アクセスユニットにおいて深度ブロックの各々を符号化する前に、動き圧縮を実施し得る。
【０１４６】
[0156]シンタックス要素の値が０に等しい場合、ビデオエンコーダ２０の深度処理ユニット１２５は、ＭＰＩサイズが８×８であると決定し得る。そのような例では、ビデオエンコーダ２０の深度処理ユニット１２５は、コロケートされたテクスチャブロックが２つのＰＵを含むかどうかを決定し得る。コロケートされたテクスチャブロックが２つのＰＵを含むと決定することに応答して、ビデオエンコーダ２０の深度処理ユニット１２５は、コロケートされたテクスチャブロックにおける各ＰＵのサイズが４×８または８×４であるかどうかを決定し、各パーティションのサイズがコロケートされたテクスチャブロックにおける各ＰＵのサイズに等しくなるようにサブＰＵを２つのより小さいユニットにパーティション分割し、２つのより小さいユニットの各々に対して単方向動き補償を行い得る。さらに、サブＰＵを符号化することは、ビデオエンコーダ２０の深度処理ユニット１２５が、ＲｅｆＰｉｃＬｉｓｔ０に対応する２つの動きベクトルを継承することを含み得る。
【０１４７】
[0157]上記の例は、シンタックス要素が特定の値を有する結果を表しているが、これらの結果は、シンタックス要素の他の値に対しても実現され得る。たとえば、シンタックス要素の値が０に等しい場合、ビデオエンコーダ２０の深度処理ユニット１２５は、アクセスユニットにおいて各テクスチャブロックを符号化し、各テクスチャブロック上で１６×１６ブロックに関して動き圧縮を実施し得る。さらにシンタックス要素の値が１よりも大きいかまたはそれに等しい場合、ビデオエンコーダ２０の深度処理ユニット１２５は、ＭＰＩサイズが８×８であると決定し得る。また、これらの技法は、特定のサイズのブロック（すなわち、１６×１６または８×８のブロック）に関して説明されているが、他の例では、これらのブロックは、考えられるサイズの中でも、４×４、３２×３２、または４×８など、異なるサイズを有し得る。
【０１４８】
[0158]いくつかの例では、シンタックス要素はシーケンスパラメータセット（ＳＰＳ）内で生成され得る。これらの例では、深度ブロックは、複数の深度ＰＵを含み得、またアクセスユニットにおける複数の深度ブロックのうちの１つとなり得る。シンタックス要素は、アクセスユニットにおける各それぞれの深度ブロックにおいて各深度ＰＵの各サブＰＵに関するＭＰＩサイズをさらに示し得る。そのような場合、サブＰＵを符号化することは、ビデオエンコーダ２０の深度処理ユニット１２５が、深度ＰＵが深度ＰＵの第１のセットにあることを決定することであって、深度ＰＵの第１のセットにおける各深度ＰＵは、１のビット単位左シフト（a bitwise left shift of 1）の後、３とシンタックス要素の値との合計の２乗よりも小さいサイズを有する、決定することと、サブＰＵの各々とコロケートされたテクスチャブロックに対応するＭＰＩに少なくとも部分的に基づいて、深度ＰＵにおける各サブＰＵを符号化することとを含み得る。いくつかの例では、深度ＰＵは第１の深度ＰＵとなり得る。これらの例では、ビデオエンコーダ２０の深度処理ユニット１２５は、第２の深度ＰＵが深度ＰＵの第２のセットにあることをさらに決定し得、ここにおいて、深度ＰＵの第２のセットにおける各深度ＰＵは、１のビット単位左シフトの後、３とシンタックス要素の値との合計の２乗よりも大きいかまたはそれに等しいサイズを有し、ＭＰＩサイズに基づかずにＭＰＩを使用して第２の深度ＰＵの各サブＰＵを符号化する。
【０１４９】
[0159]図１１は、本開示による例示的な復号技法を示す流れ図である。たとえば、ビデオデコーダ３０の深度処理ユニット１６５は、深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを示すシンタックス要素を受信し得る（１８０）。深度ＰＵは１つまたは複数のサブＰＵであり得る。各サブＰＵは、シンタックス要素によって示されたサイズに等しいサイズを有し得る。さらに、別個の動き情報が、それぞれのサブＰＵにコロケートされたテクスチャブロックから、各サブＰＵについて継承され得る。サブＰＵ  ＭＰＩモードを示すインデックス値を受信すると、ビデオデコーダ３０の深度処理ユニット１６５は、サブＰＵの各々とコロケートされた対応するテクスチャブロックに少なくとも部分的に基づいて、深度ブロックのサブＰＵの各々についてＭＰＩをさらに継承し得る（１８２）。いくつかの例では、シンタックス要素は、両端値を含む０〜３の範囲を有し得る。
【０１５０】
[0160]シンタックス要素の値が１よりも大きいかまたはそれに等しい場合、ビデオデコーダ３０の深度処理ユニット１６５は、アクセスユニットにおいて各テクスチャブロックを復号し、各テクスチャブロック上で１６×１６ブロックに関して動き圧縮を実施し得る。アクセスユニットは深度ブロックを含む。いくつかの例では、アクセスユニット内の各テクスチャブロックは、アクセスユニット内の対応するコロケートされた深度ブロックに対して、独立してコーディングされ得る。各テクスチャブロックは、アクセスユニットにおいて深度ブロックのいずれを復号するよりも前に復号され得、ビデオデコーダ３０の深度処理ユニット１６５は、アクセスユニットにおいて深度ブロックの各々を復号した後、動き圧縮を実施し得る。
【０１５１】
[0161]シンタックス要素の値が０に等しい場合、ビデオデコーダ３０の深度処理ユニット１６５は、ＭＰＩサイズが８×８であると決定し得る。そのような例では、ビデオデコーダ３０の深度処理ユニット１６５は、コロケートされたテクスチャブロックが２つのＰＵを含むかどうかを決定し得る。コロケートされたテクスチャブロックが２つのＰＵを含むと決定することに応答して、ビデオデコーダ３０の深度処理ユニット１６５は、コロケートされたテクスチャブロックにおける各ＰＵのサイズが４×８または８×４であるかどうかを決定し、各パーティションのサイズがコロケートされたテクスチャブロックにおける各ＰＵのサイズに等しくなるようにサブＰＵを２つのより小さいユニットにパーティション分割し、２つのより小さいユニットの各々に対して単方向動き補償を行い得る。さらに、サブＰＵを復号することは、ビデオデコーダ３０の深度処理ユニット１６５が、ＲｅｆＰｉｃＬｉｓｔ０に対応する２つの動きベクトルを継承することを含み得る。
【０１５２】
[0162]上記の例は、シンタックス要素が特定の値を有する結果を表しているが、これらの結果は、シンタックス要素の他の値に対しても実現され得る。たとえば、シンタックス要素の値が０に等しい場合、ビデオデコーダ３０の深度処理ユニット１６５は、アクセスユニットにおいて各テクスチャブロックを復号し、各テクスチャブロック上で１６×１６ブロックに関して動き圧縮を実施し得る。さらにシンタックス要素の値が１よりも大きいかまたはそれに等しい場合、ビデオデコーダ３０の深度処理ユニット１６５は、ＭＰＩサイズが８×８であると決定し得る。また、これらの技法は、特定のサイズのブロック（すなわち、１６×１６または８×８のブロック）に関して説明されているが、他の例では、これらのブロックは、考えられるサイズの中でも、４×４、３２×３２、または４×８など、異なるサイズを有し得る。
【０１５３】
[0163]いくつかの例では、シンタックス要素はシーケンスパラメータセット（ＳＰＳ）において受信され得る。これらの例では、深度ブロックは、複数の深度ＰＵを含み得、またアクセスユニットにおける複数の深度ブロックのうちの１つとなり得る。シンタックス要素は、アクセスユニットにおける各それぞれの深度ブロックにおいて各深度ＰＵの各サブＰＵに関するＭＰＩサイズをさらに示し得る。そのような場合、各サブＰＵについてＭＰＩを継承することは、ビデオデコーダ３０の深度処理ユニット１６５が、深度ＰＵが深度ＰＵの第１のセットにあることを決定することであって、深度ＰＵの第１のセットにおける各深度ＰＵは、１のビット単位左シフトの後、３とシンタックス要素の値との合計の２乗よりも小さいサイズを有する、決定することと、サブＰＵの各々とコロケートされた対応するテクスチャブロックに少なくとも部分的に基づいて、深度ＰＵにおける各サブＰＵについてのＭＰＩを継承することとを含み得る。いくつかの例では、深度ＰＵは第１の深度ＰＵとなり得る。これらの例では、ビデオデコーダ３０の深度処理ユニット１６５は、第２の深度ＰＵが深度ＰＵの第２のセットにあることをさらに決定し得、ここにおいて、深度ＰＵの第２のセットにおける各深度ＰＵは、１のビット単位左シフトの後、３とシンタックス要素の値との合計の２乗よりも大きいかまたはそれに等しいサイズを有し、ＭＰＩサイズに基づかずに第２の深度ＰＵの各サブＰＵについてＭＰＩを継承する。
【０１５４】
[0164]１つまたは複数の例では、本明細書で説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、１つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、またはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、データ記憶媒体のような有形媒体に対応するコンピュータ可読記憶媒体、または、たとえば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む通信媒体を含み得る。このようにして、コンピュータ可読媒体は、一般に、（１）非一時的である有形のコンピュータ可読記憶媒体、または（２）信号もしくは搬送波のような通信媒体に対応し得る。データ記憶媒体は、本開示で説明する技法の実装のための命令、コードおよび／またはデータ構造を取り出すために、１つもしくは複数のコンピュータまたは１つもしくは複数のプロセッサによってアクセスされ得る、任意の利用可能な媒体であり得る。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。
【０１５５】
[0165]限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（登録商標）、ＣＤ−ＲＯＭもしくは他の光ディスクストレージ、磁気ディスクストレージ、もしくは他の磁気ストレージデバイス、フラッシュメモリ、または、命令もしくはデータ構造の形態の所望のプログラムコードを記憶するために使用されコンピュータによってアクセスされ得る、任意の他の媒体を備え得る。また、任意の接続が、コンピュータ可読媒体と適切に呼ばれる。たとえば、命令が、ウェブサイト、サーバ、または他のリモートソースから、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。ただし、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時的媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク（disk）およびディスク（disc）は、コンパクトディスク（ＣＤ）と、レーザーディスク（登録商標）と、光ディスクと、デジタル多用途ディスク（ＤＶＤ）と、フロッピー（登録商標）ディスクと、Ｂｌｕ−ｒａｙディスクとを含み、ディスク（disk）は通常、データを磁気的に再生し、ディスク（disc）はレーザーを用いてデータを光学的に再生する。上記の組合せも、コンピュータ可読媒体の範囲の中に含まれるべきである。
【０１５６】
[0166]命令は、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、あるいは他の等価な集積回路またはディスクリート論理回路など、１つまたは複数のプロセッサによって実施され得る。したがって、本明細書で使用される「プロセッサ」という用語は、前述の構造、または、本明細書で説明する技法の実装に好適な他の構造のいずれかを指し得る。加えて、いくつかの態様では、本明細書で説明した機能は、符号化および復号のために構成されるか、または複合コーデックに組み込まれる、専用のハードウェアモジュールおよび／またはソフトウェアモジュール内で提供され得る。また、本技法は、１つもしくは複数の回路または論理素子で十分に実装され得る。
【０１５７】
[0167]本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）もしくはＩＣのセット（たとえば、チップセット）を含む、多種多様なデバイスまたは装置で実装され得る。様々なコンポーネント、モジュール、またはユニットは、開示されている技法を実行するように構成されたデバイスの機能的態様を強調するように本開示において説明されているが、異なるハードウェアユニットによる実現を必ずしも必要としない。そうではなく、上記で説明したように、様々なユニットは、コーデックハードウェアユニット中で組み合わせられるか、または上記で説明した１つまたは複数のプロセッサを含む、適切なソフトウェアおよび／またはファームウェアとともに相互動作可能なハードウェアユニットの集合によって提供され得る。
【０１５８】
[0168]本開示の様々な例について説明した。説明したシステム、動作、または機能の任意の組合せが企図される。これらおよび他の例は、以下の特許請求の範囲の範囲内に入る。
以下に本願の出願当初の特許請求の範囲に記載された発明を付記する。
[Ｃ１]  深度ブロックを復号する方法であって、
深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを示すシンタックス要素を受信することと、ここにおいて、前記深度ＰＵは１つまたは複数のサブＰＵを備え、各サブＰＵは、前記シンタックス要素によって示される前記サイズに等しいサイズを有し、別個の動き情報が、各サブＰＵについて、前記それぞれのサブＰＵにコロケートされたテクスチャブロックから継承され得る、
サブＰＵ  ＭＰＩモードを示すインデックス値を受信すると、前記サブＰＵの各々とコロケートされた対応するテクスチャブロックに少なくとも部分的に基づいて、前記深度ブロックの前記サブＰＵの各々についてＭＰＩを継承することと、
を備える方法。
[Ｃ２]  前記シンタックス要素はシーケンスパラメータセット（ＳＰＳ）において受信される、Ｃ１に記載の方法。
[Ｃ３]  前記深度ブロックは複数の深度ＰＵを含み、前記深度ブロックはアクセスユニットにおける複数の深度ブロックのうちの１つであり、前記シンタックス要素は、前記アクセスユニットにおける各それぞれの深度ブロックにおいて各深度ＰＵの各サブＰＵについてのＭＰＩサイズをさらに示す、Ｃ２に記載の方法。
[Ｃ４]  前記サブＰＵの各々とコロケートされた対応するテクスチャブロックに少なくとも部分的に基づいて、各サブＰＵについてＭＰＩを継承することは、
前記深度ＰＵが深度ＰＵの第１のセットにあると決定することと、ここにおいて、深度ＰＵの前記第１のセットにおける各深度ＰＵは、１のビット単位左シフトの後、３と前記シンタックス要素の値との合計の２乗よりも小さいサイズを有する、
前記サブＰＵの各々とコロケートされた対応するテクスチャブロックに少なくも部分的に基づいて、前記深度ＰＵにおける各サブＰＵについてＭＰＩを継承することと、
を備える、Ｃ３に記載の方法。
[Ｃ５]  前記深度ＰＵは第１の深度ＰＵであり、前記方法は、
第２の深度ＰＵが深度ＰＵの第２のセットにあると決定することと、ここにおいて、深度ＰＵの前記第２のセットにおける各深度ＰＵは、１のビット単位左シフトの後、３と前記シンタックス要素の前記値との前記合計の２乗よりも大きいかまたはそれに等しいサイズを有する、
前記ＭＰＩサイズに基づかずに、前記第２の深度ＰＵの各サブＰＵについてＭＰＩを継承することと、
をさらに備える、Ｃ４に記載の方法。
[Ｃ６]  前記シンタックス要素の値は、１よりも大きいかまたはそれに等しく、前記方法は、
アクセスユニットにおける各テクスチャブロックを復号することと、ここにおいて、前記アクセスユニットは前記深度ブロックを含む、
各テクスチャブロック上の１６×１６ブロックに対して動き圧縮を実施することと、
をさらに備える、Ｃ１に記載の方法。
[Ｃ７]  前記アクセスユニットにおける各テクスチャブロックは、前記アクセスユニットにおける対応するコロケートされた深度ブロックに対して、独立してコーディングされ、各テクスチャブロックは、前記アクセスユニットにおける前記深度ブロックのうちのいずれを復号するよりも前に復号され、前記アクセスユニットにおける前記深度ブロックの各々を復号した後、動き圧縮が実施される、Ｃ６に記載の方法。
[Ｃ８]  前記シンタックス要素の値は０であり、前記方法は、
前記ＭＰＩサイズが８×８であると決定することをさらに備える、
Ｃ１に記載の方法。
[Ｃ９]  前記コロケートされたテクスチャブロックが２つのＰＵを含むかどうかを決定することと、
前記コロケートされたテクスチャブロックが２つのＰＵを含むと決定することに応答して、
前記コロケートされたテクスチャブロックにおける各ＰＵのサイズが４×８または８×４であるかどうかを決定することと、
各パーティションのサイズが、前記コロケートされたテクスチャブロックにおける各ＰＵの前記サイズに等しくなるように、前記サブＰＵを２つのより小さいユニットにパーティション分割することと、
前記２つのより小さいユニットの各々に対して単方向動き補償を適用することと、
をさらに備える、Ｃ８に記載の方法。
[Ｃ１０]  前記サブＰＵを復号することは、ＲｅｆＰｉｃＬｉｓｔ０に対応する２つの動きベクトルを継承することを備える、Ｃ９に記載の方法。
[Ｃ１１]  前記シンタックス要素は、両端値を含む０〜３の範囲を有する、Ｃ１に記載の方法。
[Ｃ１２]  深度ブロックを復号するためのデバイスであって、
前記深度ブロックと関連付けられたデータを記憶するように構成されたメモリと、
１つまたは複数のプロセッサであって、
深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを示すシンタックス要素を受信することと、ここにおいて、前記深度ＰＵは１つまたは複数のサブＰＵを備え、各サブＰＵは、前記シンタックス要素によって示される前記サイズに等しいサイズを有し、別個の動き情報が、各サブＰＵについて、前記それぞれのサブＰＵにコロケートされたテクスチャブロックから継承され得る、
サブＰＵ  ＭＰＩモードを示すインデックス値を受信すると、前記サブＰＵの各々とコロケートされた対応するテクスチャブロックに少なくとも部分的に基づいて、前記深度ブロックの前記サブＰＵの各々についてＭＰＩを継承することと
を行うように構成された１つまたは複数のプロセッサと、
を備えるデバイス。
[Ｃ１３]  前記シンタックス要素はシーケンスパラメータセット（ＳＰＳ）において受信され、
前記深度ブロックは複数の深度ＰＵを含み、
前記深度ブロックは、アクセスユニットにおける複数の深度ブロックのうちの１つであり、
前記シンタックス要素は、前記アクセスユニットにおける各それぞれの深度ブロックにおいて各深度ＰＵの各サブＰＵに関するＭＰＩサイズをさらに示し、
前記深度ＰＵは第１の深度ＰＵであり、
前記ＭＰＩサイズに少なくとも部分的に基づいて前記サブＰＵを復号するように構成された前記１つまたは複数のプロセッサは、
前記第１の深度ＰＵが深度ＰＵの第１のセットにあると決定することと、ここにおいて、深度ＰＵの前記第１のセットにおける各深度ＰＵは、１のビット単位左シフトの後、３と前記シンタックス要素の値との合計の２乗よりも小さいサイズを有する、
前記ＭＰＩサイズに少なくとも部分的に基づいて、前記第１の深度ＰＵにおける各サブＰＵを復号することと、
を行うように構成された１つまたは複数のプロセッサを備え、
ここにおいて、前記１つまたは複数のプロセッサは、
第２の深度ＰＵが深度ＰＵの第２のセットにあると決定することと、ここにおいて、深度ＰＵの前記第２のセットにおける各深度ＰＵは、１のビット単位左シフトの後、３と前記シンタックス要素の前記値との前記合計の２乗よりも大きいかまたはそれに等しいサイズを有する、
前記ＭＰＩサイズに基づかずに、ＭＰＩを使用して前記第２の深度ＰＵの各サブＰＵを復号することと、
を行うようにさらに構成される、Ｃ１２に記載のデバイス。
[Ｃ１４]  前記シンタックス要素の値は、１よりも大きいかまたはそれに等しく、前記１つまたは複数のプロセッサは、
アクセスユニットにおける各テクスチャブロックを復号することと、ここにおいて、前記アクセスユニットは前記深度ブロックを含む、
各テクスチャブロック上の１６×１６ブロックに対して動き圧縮を実施することと、
を行うようにさらに構成される、Ｃ１２に記載のデバイス。
[Ｃ１５]  前記アクセスユニットにおける各テクスチャブロックは、前記アクセスユニットにおける対応するコロケートされた深度ブロックに対して、独立してコーディングされ、各テクスチャブロックは、前記アクセスユニットにおける前記深度ブロックのうちのいずれを復号するよりも前に復号され、前記アクセスユニットにおける前記深度ブロックの各々を復号した後、動き圧縮が実施される、Ｃ１４に記載のデバイス。
[Ｃ１６]  深度ブロックを符号化する方法であって、
深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを決定することと、ここにおいて、前記深度ＰＵは１つまたは複数のサブＰＵを備え、各サブＰＵは等しいサイズを有し、別個の動き情報が、前記それぞれのサブＰＵにコロケートされたテクスチャブロックから、各サブＰＵについて継承され得る、
前記サブＰＵの各々とコロケートされたテクスチャブロックに対応するＭＰＩに少なくも部分的に基づいて、前記深度ブロックの各サブＰＵを符号化することと、
前記深度ＰＵにおけるＭＰＩに関する各サブＰＵの前記サイズを示すシンタックス要素を生成することと、
を備える方法。
[Ｃ１７]  前記シンタックス要素はシーケンスパラメータセット（ＳＰＳ）において生成される、Ｃ１６に記載の方法。
[Ｃ１８]  前記深度ブロックは複数の深度ＰＵを含み、前記深度ブロックはアクセスユニットにおける複数の深度ブロックのうちの１つであり、前記シンタックス要素は、前記アクセスユニットにおける各それぞれの深度ブロックにおいて各深度ＰＵの各サブＰＵについてのＭＰＩサイズをさらに示す、Ｃ１７に記載の方法。
[Ｃ１９]  前記サブＰＵの各々とコロケートされたテクスチャブロックに対応するＭＰＩに少なくとも部分的に基づいて前記サブＰＵを符号化することは、
前記深度ＰＵが深度ＰＵの第１のセットにあると決定することと、ここにおいて、深度ＰＵの前記第１のセットにおける各深度ＰＵは、１のビット単位左シフトの後、３と前記シンタックス要素の値との合計の２乗よりも小さいサイズを有する、
前記サブＰＵの各々とコロケートされたテクスチャブロックに対応するＭＰＩに少なくも部分的に基づいて、前記深度ＰＵにおける各サブＰＵを符号化することと、
を備える、Ｃ１８に記載の方法。
[Ｃ２０]  前記深度ＰＵは第１の深度ＰＵであり、前記方法は、
第２の深度ＰＵが深度ＰＵの第２のセットにあると決定することと、ここにおいて、深度ＰＵの前記第２のセットにおける各深度ＰＵは、１のビット単位左シフトの後、３と前記シンタックス要素の前記値との前記合計の２乗よりも大きいかまたはそれに等しいサイズを有する、
前記ＭＰＩサイズに基づかずに、ＭＰＩを使用して前記第２の深度ＰＵの各サブＰＵを符号化することと、
をさらに備える、Ｃ１９に記載の方法。
[Ｃ２１]  前記シンタックス要素の値は、１よりも大きいかまたはそれに等しく、前記方法は、
アクセスユニットにおける各テクスチャブロックを符号化することと、ここにおいて、前記アクセスユニットは前記深度ブロックを含む、
各テクスチャブロック上の１６×１６ブロックに対して動き圧縮を実施することと、
をさらに備える、Ｃ１６に記載の方法。
[Ｃ２２]  前記アクセスユニットにおける各テクスチャブロックは、前記アクセスユニットにおける対応するコロケートされた深度ブロックに対して、独立してコーディングされ、各テクスチャブロックは、前記アクセスユニットにおける前記深度ブロックのうちのいずれを符号化するよりも前に符号化され、前記アクセスユニットにおける前記深度ブロックの各々を符号化する前に、動き圧縮が実施される、Ｃ２１に記載の方法。
[Ｃ２３]  前記シンタックス要素の値は０であり、前記方法は、
前記ＭＰＩサイズが８×８であると決定することをさらに備える、Ｃ１６に記載の方法。
[Ｃ２４]  前記コロケートされたテクスチャブロックが２つのＰＵを含むかどうかを決定することと、
前記コロケートされたテクスチャブロックが２つのＰＵを含むと決定することに応答して、
前記コロケートされたテクスチャブロックにおける各ＰＵのサイズは４×８または８×４であるかどうかを決定することと、
各パーティションのサイズが、前記コロケートされたテクスチャブロックにおける各ＰＵの前記サイズに等しくなるように、前記サブＰＵを２つのより小さいユニットにパーティション分割することと、
前記２つのより小さいユニットの各々に対して単方向動き補償を適用することと、
をさらに備える、Ｃ２３に記載の方法。
[Ｃ２５]  前記サブＰＵを符号化することは、ＲｅｆＰｉｃＬｉｓｔ０に対応する２つの動きベクトルを継承することを備える、Ｃ２４に記載の方法。
[Ｃ２６]  前記シンタックス要素は、両端値を含む０〜３の範囲を有する、Ｃ１６に記載の方法。
[Ｃ２７]  深度ブロックを符号化するためのデバイスであって、
前記深度ブロックと関連付けられたデータを記憶するように構成されたメモリと、
１つまたは複数のプロセッサであって、
深度予測ユニット（深度ＰＵ）における動きパラメータ継承（ＭＰＩ）についてのサブ予測ユニット（サブＰＵ）のサイズを決定することと、ここにおいて、前記深度ＰＵは１つまたは複数のサブＰＵを備え、各サブＰＵは等しいサイズを有し、別個の動き情報が、前記それぞれのサブＰＵにコロケートされたテクスチャブロックから、各サブＰＵについて継承され得る、
前記サブＰＵの各々とコロケートされたテクスチャブロックに対応するＭＰＩに少なくも部分的に基づいて、前記深度ブロックの各サブＰＵを符号化することと、
前記深度ＰＵにおけるＭＰＩに関する各サブＰＵの前記サイズを示すシンタックス要素を生成することと
を行うように構成された１つまたは複数のプロセッサと、
を備えるデバイス。
[Ｃ２８]  前記シンタックス要素はシーケンスパラメータセット（ＳＰＳ）において生成され、
前記深度ブロックは複数の深度ＰＵを含み、
前記深度ブロックは、アクセスユニットにおける複数の深度ブロックのうちの１つであり、
前記シンタックス要素は、前記アクセスユニットにおける各それぞれの深度ブロックにおいて各深度ＰＵの各サブＰＵに関するＭＰＩサイズをさらに示し、
前記深度ＰＵは第１の深度ＰＵであり、
前記ＭＰＩサイズに少なくとも部分的に基づいて前記サブＰＵを符号化するように構成された前記１つまたは複数のプロセッサは、
前記第１の深度ＰＵが深度ＰＵの第１のセットにあると決定することと、深度ＰＵの前記第１のセットにおける各深度ＰＵは、１のビット単位左シフトの後、３と前記シンタックス要素の値との合計の２乗よりも小さいサイズを有する、
前記ＭＰＩサイズに少なくとも部分的に基づいて、前記第１の深度ＰＵにおける各サブＰＵを符号化することと、
を行うように構成された１つまたは複数のプロセッサを備え、
ここにおいて、前記１つまたは複数のプロセッサは、
第２の深度ＰＵが深度ＰＵの第２のセットにあると決定することと、ここにおいて、深度ＰＵの前記第２のセットにおける各深度ＰＵは、１のビット単位左シフトの後、３と前記シンタックス要素の前記値との前記合計の２乗よりも大きいかまたはそれに等しいサイズを有する、
前記ＭＰＩサイズに基づかずに、ＭＰＩを使用して前記第２の深度ＰＵの各サブＰＵを符号化することと、
を行うようにさらに構成される、Ｃ２７に記載のデバイス。
[Ｃ２９]  前記シンタックス要素の値は、１よりも大きいかまたはそれに等しく、前記１つまたは複数のプロセッサは、
アクセスユニットにおける各テクスチャブロックを符号化することと、ここにおいて、前記アクセスユニットは前記深度ブロックを含む、
各テクスチャブロック上の１６×１６ブロックに対して動き圧縮を実施することと、
を行うようにさらに構成される、Ｃ２７に記載のデバイス。
[Ｃ３０]  前記アクセスユニットにおける各テクスチャブロックは、前記アクセスユニットにおける対応するコロケートされた深度ブロックに対して、独立してコーディングされ、各テクスチャブロックは、前記アクセスユニットにおける前記深度ブロックのうちのいずれを符号化するよりも前に符号化され、前記アクセスユニットにおける前記深度ブロックの各々を符号化する前に、動き圧縮が実施される、Ｃ２９に記載のデバイス。
【図１】
0006559675.tif 000003
【図２】
0006559675.tif 000004
【図３】
0006559675.tif 000005
【図４】
0006559675.tif 000006
【図５】
0006559675.tif 000007
【図６】
0006559675.tif 000008
【図７】
0006559675.tif 000009
【図８】
0006559675.tif 000010
【図９】
0006559675.tif 000011
【図１０】
0006559675.tif 000012
【図１１】
0006559675.tif 000013