(57)【特許請求の範囲】
【請求項１】
ビデオデータを復号するための方法であって、
ビットストリーム中のビデオパラメータセット（ＶＰＳ）から、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のコード化されたビデオシーケンス（ＣＶＳ）の任意のビュー成分／レイヤ表現のための第２の参照ピクチャリストに含まれているかどうかを示すシンタックス要素を取得することと、
参照ピクチャセット中の複数のピクチャに基づいて、前記ＶＰＳを参照するＣＶＳの現在のビュー成分／レイヤ表現のための第１の参照ピクチャリストと第２の参照ピクチャリストとを構築することと、ここにおいて、少なくとも１つのビュー／レイヤ間参照ピクチャは、前記現在のビュー成分／レイヤ表現のための前記第１の参照ピクチャリスト中に存在し、
前記現在のビュー成分／レイヤ表現を復号することとを備え、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のＣＶＳの任意のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに決して含まれていないことを前記シンタックス要素が示すとき、前記現在のビュー成分／レイヤ表現が、前記現在のビュー成分／レイヤ表現のための前記第２の参照ピクチャリスト中の複数のビュー／レイヤ間参照ピクチャを使用しないで復号される、方法。
【請求項２】
前記現在のビュー成分／レイヤ表現を復号することが、
前記現在のブロックに対する視差ベクトルを決定するために、前記現在のビュー成分／レイヤ表現の現在のブロックに隣接する１つ以上のブロックを確認する、視差ベクトル導出処理を実行することを備え、
前記視差ベクトル導出処理を実行することが、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のコード化されたビデオシーケンスの任意のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに決して含まれていないことを前記シンタックス要素が示すとき、前記現在のビュー成分／レイヤ表現に対する前記第２の参照ピクチャリストに対応する動き情報を確認しないことを備える、請求項１に記載の方法。
【請求項３】
前記現在のビュー成分／レイヤ表現が、前記ビットストリーム中の複数のレイヤ中の特定のレイヤの中にあり、
前記複数のレイヤからのそれぞれのレイヤ毎に、前記それぞれのレイヤに対するそれぞれのシンタックス要素を取得することを備え、前記それぞれのシンタックス要素が、複数のビュー／レイヤ間参照ピクチャが前記それぞれのレイヤ中にあり、前記ＶＰＳを参照する任意のＣＶＳ中にある複数のビュー成分／レイヤ表現のためのそれぞれの第２の参照ピクチャリストに含まれているかどうかを示す、請求項１に記載の方法。
【請求項４】
前記現在のビュー成分／レイヤ表現に対する前記第１の参照ピクチャリストを修正するための複数の参照ピクチャリスト修正（ＲＰＬＭ）シンタックス要素を前記ビットストリームから取得することをさらに備え、
前記シンタックス要素が、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のＣＶＳの任意のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに決して含まれていないことを示すとき、前記複数のＲＰＬＭシンタックス要素の各々が、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する複数のコード化されたビデオシーケンスのビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに含まれ得ることを前記シンタックス要素が示すときよりも、少数のビットを含む、請求項１に記載の方法。
【請求項５】
前記シンタックス要素が第１のシンタックス要素であり、前記ビットストリームから第２のシンタックス要素を取得することをさらに備え、前記第２のシンタックス要素が、前記現在のビュー成分／レイヤ表現に対する前記第１の参照ピクチャリスト中でのビュー／レイヤ間参照ピクチャの開始位置を示す、請求項１に記載の方法。
【請求項６】
複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する複数のコード化されたビデオシーケンスのビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに含まれ得ることを前記第１のシンタックス要素が示すとき、前記ビットストリームから第３のシンタックス要素を取得すること、前記第３のシンタックス要素が、前記現在のビュー成分／レイヤ表現に対する前記第２の参照ピクチャリスト中でのビュー／レイヤ間参照ピクチャの開始位置を示す、請求項５に記載の方法。
【請求項７】
前記現在のビュー成分／レイヤ表現を復号することが、
前記現在のブロックに対する視差ベクトルを決定するために、前記現在のビュー成分／レイヤ表現の現在のブロックに隣接する１つ以上のブロックを確認する、視差ベクトル導出処理を実行することを備え、
前記視差ベクトル導出処理を実行することが、前記シンタックス要素が、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のＣＶＳの任意のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに決して含まれていないことを示すとき、前記現在のブロックに隣接する前記１つ以上のブロックの各々に対するせいぜい１つの暗黙的な視差ベクトルを記憶することを備える、請求項１に記載の方法。
【請求項８】
前記現在のビュー成分／レイヤ表現を復号することが、
前記シンタックス要素が、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のコード化されたビデオシーケンスの任意のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに決して含まれていないことを示すとき、候補リストがビュー／レイヤ間参照ピクチャに対応する候補を含めないことと、
前記候補リスト中の特定の候補に基づいて、前記現在のビュー成分／レイヤ表現の現在のブロックに対する動きベクトルを決定することとを備える、請求項１に記載の方法。
【請求項９】
前記シンタックス要素が、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のＣＶＳの任意のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに決して含まれていないことを示すとき、前記現在のビュー成分／レイヤ表現の前記第２の参照ピクチャリストからの参照ピクチャがビュー／レイヤ間参照ピクチャであるかどうかの確認を避けることと、
前記シンタックス要素が、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のＣＶＳの任意のビュー成分／レイヤ表現のための前記参照ピクチャリストに決して含まれていないことを示すとき、前記現在のビュー成分／レイヤ表現のための前記第２の参照ピクチャリスト中の特定の参照ピクチャのタイプを確認することなく、前記現在のビュー成分／レイヤ表現の現在のコード化単位（ＣＵ）の予測単位（ＰＵ）が前記特定の参照ピクチャ中の位置を示す動きベクトルを有する場合、前記現在のビュー成分／レイヤ表現に対する前記第２の参照ピクチャリストに対して残差予測子生成処理を有効にすることとをさらに備える、請求項１に記載の方法。
【請求項１０】
前記シンタックス要素が、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のＣＶＳの任意のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに決して含まれていないことを示すとき、前記現在のビュー成分／レイヤ表現に対する前記第１の参照ピクチャリストへ挿入される複数のビュー／レイヤ間参照ピクチャのみを使用して、ビュー合成予測を実行することと、
前記シンタックス要素が、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のＣＶＳの任意のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに決して含まれていないことを示すとき、前記現在のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストの初期バージョンを構築するときにビュー／レイヤ間参照ピクチャセット又は複数のビュー／レイヤ間参照ピクチャを考慮しないこととをさらに備える、請求項１に記載の方法。
【請求項１１】
ビデオデータを符号化する方法であって、
参照ピクチャセット中の複数のピクチャに基づいて、ビデオパラメータセット（ＶＰＳ）を参照するコード化されたビデオシーケンス（ＣＶＳ）に属する現在のビュー成分／レイヤ表現のための第１の参照ピクチャリストと第２の参照ピクチャリストとを構築することと、ここにおいて、少なくとも１つのビュー／レイヤ間参照ピクチャは、前記現在のビュー成分／レイヤ表現のための前記第１の参照ピクチャリスト中に存在し、
ビットストリーム中の前記ＶＰＳにおいて、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のＣＶＳの任意のビュー成分／レイヤ表現のための第２の参照ピクチャリストに含まれているかどうかを示すシンタックス要素を信号伝達することと、
前記現在のビュー成分／レイヤ表現を符号化することとを備え、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のＣＶＳの任意のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに決して含まれていないことを前記シンタックス要素が示すとき、前記現在のビュー成分／レイヤ表現が、前記現在のビュー成分／レイヤ表現に対する前記第２の参照ピクチャリスト中の複数のビュー／レイヤ間参照ピクチャを使用して符号化されない、方法。
【請求項１２】
前記現在のビュー成分／レイヤ表現が、前記ビットストリーム中の複数のレイヤ中の特定のレイヤの中にあり、
前記複数のレイヤからの各々のそれぞれのレイヤに対して、複数のビュー／レイヤ間参照ピクチャが前記それぞれのレイヤ中にあり前記ＶＰＳを参照する任意のＣＶＳ中にあるビュー成分／レイヤ表現のためのそれぞれの第２の参照ピクチャリストに含まれているかどうかを示す前記それぞれのレイヤのためのそれぞれのシンタックス要素を前記ＶＰＳにおいて信号伝達することを備える、請求項１１に記載の方法。
【請求項１３】
前記現在のビュー成分／レイヤ表現に対する前記第２の参照ピクチャリストを修正するための複数の参照ピクチャリスト修正（ＲＰＬＭ）シンタックス要素を前記ビットストリームで信号伝達することをさらに備え、前記シンタックス要素が、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のＣＶＳの任意のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに決して含まれていないことを示すとき、前記複数のＲＰＬＭシンタックス要素の各々が、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のＣＶＳのビュー成分／レイヤ表現のための前記複数の第２の参照ピクチャリストに含まれ得ることを前記シンタックス要素が示すときよりも、少数のビットを含む、請求項１１に記載の方法。
【請求項１４】
前記シンタックス要素が第１のシンタックス要素であり、前記ビットストリームで第２のシンタックス要素を信号伝達することをさらに備え、前記第２のシンタックス要素が、前記現在のビュー成分／レイヤ表現のための前記第１の参照ピクチャリスト中でのビュー／レイヤ間参照ピクチャの開始位置を示す、請求項１１に記載の方法。
【請求項１５】
記憶媒体と、前記記憶媒体に結合された１つ以上のプロセッサとを備える、ビデオ復号装置であって、前記１つ以上のプロセッサが、
ビットストリーム中のビデオパラメータセット（ＶＰＳ）から、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のコード化されたビデオシーケンス（ＣＶＳ）の任意のビュー成分／レイヤ表現のための第２の参照ピクチャリストに含まれているかどうかを示すシンタックス要素を取得し、
参照ピクチャセット中のピクチャに基づいて、前記ＶＰＳを参照するＣＶＳの現在のビュー成分／レイヤ表現のための第１の参照ピクチャリストと第２の参照ピクチャリストとを構築し、ここにおいて、少なくとも１つのビュー／レイヤ間参照ピクチャは、前記現在のビュー成分／レイヤ表現のための前記第１の参照ピクチャリスト中に存在する、
前記現在のビュー成分／レイヤ表現を復号するように構成され、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のＣＶＳの任意のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに決して含まれていないことを前記シンタックス要素が示すとき、前記現在のビュー成分／レイヤ表現が、前記現在のビュー成分／レイヤ表現のための前記第２の参照ピクチャリスト中の複数のビュー／レイヤ間参照ピクチャを使用しないで復号される、ビデオ復号装置。
【請求項１６】
前記１つ以上のプロセッサが、
前記現在のブロックに対する視差ベクトルを決定するために、前記現在のビュー成分／レイヤ表現の現在のブロックに隣接する１つ以上のブロックを確認する、視差ベクトル導出処理を実行するように構成され、
前記１つ以上のプロセッサは、前記視差ベクトル導出処理を実行することの一部として、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のＣＶＳの任意のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに決して含まれていないことを前記シンタックス要素が示すとき、前記１つ以上のプロセッサが、前記現在のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに対応する動き情報を確認しないように構成される、請求項１５に記載のビデオ復号装置。
【請求項１７】
前記現在のビュー成分／レイヤ表現が、前記ビットストリーム中の複数のレイヤ中の特定のレイヤの中にあり、前記１つ以上のプロセッサが、
前記複数のレイヤからの各々のそれぞれのレイヤに対して、複数のビュー／レイヤ間参照ピクチャが前記それぞれのレイヤ中にあり前記ＶＰＳを参照する任意のＣＶＳ中にあるビュー成分／レイヤ表現のためのそれぞれの第２の参照ピクチャリストに含まれているかどうかを示す前記それぞれのレイヤのためのそれぞれのシンタックス要素を取得するように構成される、請求項１５に記載のビデオ復号装置。
【請求項１８】
前記１つ以上のプロセッサがさらに、前記現在のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストを修正するための参照ピクチャリスト修正（ＲＰＬＭ）シンタックス要素を前記ビットストリームから取得するように構成され、前記シンタックス要素が、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のＣＶＳの任意のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに決して含まれていないことを示すとき、前記ＲＰＬＭシンタックス要素の各々が、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のコード化されたビデオシーケンスのビュー成分／レイヤ表現のための前記複数の第２の参照ピクチャリストに含まれ得ることを前記シンタックス要素が示すときよりも、少数のビットを含む、請求項１５に記載のビデオ復号装置。
【請求項１９】
前記シンタックス要素が第１のシンタックス要素であり、前記１つ以上のプロセッサが、前記ビットストリームから第２のシンタックス要素を取得するように構成され、前記第２のシンタックス要素が、前記現在のビュー成分／レイヤ表現のための前記第１の参照ピクチャリスト中でのビュー／レイヤ間参照ピクチャの開始位置を示す、請求項１５に記載のビデオ復号装置。
【請求項２０】
前記１つ以上のプロセッサが、
前記現在のブロックに対する視差ベクトルを決定するために、前記現在のビュー成分／レイヤ表現の現在のブロックに隣接する１つ以上のブロックを確認する、視差ベクトル導出処理を実行するように構成され、
前記１つ以上のプロセッサは、前記視差ベクトル導出処理を実行することの一部として、前記シンタックス要素が、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のＣＶＳの任意のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに決して含まれていないことを示すとき、前記１つ以上のプロセッサが前記現在のブロックに隣接する前記１つ以上のブロックの各々に対するせいぜい１つの暗黙的な視差ベクトルを記憶するように構成される、請求項１５に記載のビデオ復号装置。
【請求項２１】
前記１つ以上のプロセッサが、
前記シンタックス要素が、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のコード化されたビデオシーケンスの任意のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに決して含まれていないことを示すとき、ビュー／レイヤ間参照ピクチャに対応する候補を候補リストが含めず、
前記候補リスト中の特定の候補に基づいて、前記現在のビュー成分／レイヤ表現の現在のブロックに対する動きベクトルを決定するように構成される、請求項１７に記載のビデオ復号装置。
【請求項２２】
前記１つ以上のプロセッサが、
前記シンタックス要素が、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のＣＶＳの任意のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに決して含まれていないことを示すとき、前記現在のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストからの参照ピクチャがビュー／レイヤ間参照ピクチャであるかどうかの確認を避け、
前記シンタックス要素が、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のＣＶＳの任意のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに決して含まれていないことを示すとき、前記現在のビュー成分／レイヤ表現のための前記第２の参照ピクチャリスト中の特定の参照ピクチャのタイプを確認することなく、前記現在のビュー成分／レイヤ表現の現在のコード化単位（ＣＵ）の予測単位（ＰＵ）が前記特定の参照ピクチャ中の位置を示す動きベクトルを有する場合、前記現在のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに対して残差予測子生成処理を有効にするように構成される、請求項１５に記載のビデオ復号装置。
【請求項２３】
前記１つ以上のプロセッサが、
前記シンタックス要素が、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のＣＶＳの任意のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに決して含まれていないことを示すとき、前記現在のビュー成分／レイヤ表現のための前記第１の参照ピクチャリストへ挿入される複数のビュー／レイヤ間参照ピクチャのみを使用して、ビュー合成予測を実行し、
前記シンタックス要素が、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のＣＶＳの任意のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに決して含まれていないことを示すとき、前記現在のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストの初期バージョンを構築するときにビュー／レイヤ間参照ピクチャセット又は複数のビュー／レイヤ間参照ピクチャを考慮しないように構成される、請求項１５に記載のビデオ復号装置。
【請求項２４】
ビットストリーム中のビデオパラメータセット（ＶＰＳ）から、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のコード化されたビデオシーケンス（ＣＶＳ）の任意のビュー成分／レイヤ表現のための第２の参照ピクチャリストに含まれているかどうかを示すシンタックス要素を取得するための手段と、
参照ピクチャセット中のピクチャに基づいて、前記ＶＰＳを参照するＣＶＳの現在のビュー成分／レイヤ表現のための第１の参照ピクチャリストと第２の参照ピクチャリストとを構築するための手段と、ここにおいて、少なくとも１つのビュー／レイヤ間参照ピクチャは、前記現在のビュー成分／レイヤ表現のための前記第１の参照ピクチャリスト中に存在する、
前記現在のビュー成分／レイヤ表現を復号するための手段とを備え、複数のビュー／レイヤ間参照ピクチャが前記ＶＰＳを参照する任意のＣＶＳの任意のビュー成分／レイヤ表現のための前記第２の参照ピクチャリストに決して含まれていないことを前記シンタックス要素が示すとき、前記現在のビュー成分／レイヤ表現が、前記現在のビュー成分／レイヤ表現のための前記第２の参照ピクチャリスト中の複数のビュー／レイヤ間参照ピクチャを使用しないで復号される、ビデオ復号装置。
【請求項２５】
前記ビデオ復号装置は、
集積回路と、
マイクロプロセッサとのうちの少なくとも１つを備える、請求項１５に記載のビデオ復号装置。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]本出願は、その内容全体が参照により本明細書に組み込まれている、２０１３年１月１７日に出願した米国仮特許出願第６１／７５３，８７６号の利益を主張するものである。
【０００２】
[0002]本開示は、ビデオの符号化と復号とに関する。
【背景技術】
【０００３】
[0003]デジタルビデオ機能は、デジタルテレビジョン、デジタル直接放送システム、ワイヤレス放送システム、携帯情報端末（ＰＤＡ）、ラップトップ又はデスクトップコンピュータ、タブレットコンピュータ、電子書籍リーダ、デジタルカメラ、デジタル記録機器、デジタルメディアプレーヤ、ビデオゲーム機器、ビデオゲーム機、セルラー方式又は衛星方式の無線電話、所謂「スマートフォン」、ビデオ遠隔会議機器、ビデオストリーミング機器などを含む、広範な機器に組み込まれ得る。デジタルビデオ機器では、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４、パート１０、高度ビデオコード化（ＡＶＣ）、現在策定中の高効率ビデオコード化（ＨＥＶＣ）規格、及びそのような規格の拡張によって定義される規格に記述されているようなビデオ圧縮技術を実装する。ビデオ機器は、そのようなビデオ圧縮技術を実装することによってデジタルビデオ情報をより効率的に送信し、受信し、符号化し、復号し、及び／又は格納することができる。
【０００４】
[0004]ビデオ圧縮技術は、ビデオシーケンスに固有の冗長性を減らすか、又は取り除くために空間（イントラピクチャ）予測及び／又は時間（インターピクチャ）予測を実行する。ブロックベースのビデオコード化では、ビデオスライス（即ち、ビデオフレーム又はビデオフレームの一部）が幾つかのブロックに分割され得る。ピクチャのイントラコード化された（Ｉ）スライス内のブロックは、同じピクチャ内の隣接ブロック内の基準サンプルに関して空間予測を使用して符号化される。ピクチャのインターコード化された（Ｐ又はＢ）スライス内のブロックでは、同じピクチャ内の隣接ブロック内の基準サンプルに関する空間予測又は他の基準ピクチャ内の基準サンプルに関する時間予測を使用することができる。ピクチャは、フレームと称され、基準ピクチャは、基準フレームと称され得る。
【０００５】
[0005]空間又は時間予測の結果、ブロックに対する予測ブロックがコード化される。残差データは、コード化される元のブロックと予測ブロックとの間の画素差を表す。インターコード化されたブロックは、予測ブロックを形成する基準サンプルのブロックを指す動きベクトルに従って符号化され、残差データは、コード化されたブロックと予測ブロックとの間の差を示す。イントラコード化されたブロックはイントラコード化モードと残差データとに従って符号化される。更なる圧縮のために、残差データは、画素領域から変換領域に変換され、その結果、残差係数が得られ、次いで、残差係数が量子化され得る。量子化された係数は、最初に２次元配列に構成されており、係数の１次元ベクトルを生成するためにスキャンされ、エントロピーコード化（entropy coding）が、なおいっそうの圧縮を行うために適用され得る。
【０００６】
[0006]例えば、複数の視点からのビューを符号化すること（encoding）によって、マルチビューコード化ビットストリームが生成され得る。マルチビューコード化の態様を使用する幾つかの３次元（３Ｄ）ビデオ規格が開発されている。例えば、異なるビューが、３Ｄビデオをサポートするように左右の目のビューを伝達することができる。代替的に、幾つかの３Ｄビデオコード化プロセスは、所謂マルチビュープラス奥行きコード化を適用することができる。マルチビュープラス奥行きコード化では、３Ｄビデオビットストリームは、テクスチャビューコンポーネントだけでなく、奥行きビューコンポーネントをも含み得る。例えば、各ビューは、１つのテクスチャビューコンポーネントと１つの奥行きビューコンポーネントとを備え得る。
【発明の概要】
【０００７】
[0007]全般に、本開示は、ビデオエンコーダ及びビデオデコーダのような、ビデオコード化の分野に関する。幾つかの例は、高効率ビデオコード化（ＨＥＶＣ）コーデックを用いた２つ以上のビューのコード化を含む、高度なコーデックに基づくマルチビュービデオコード化に関する。より具体的には、幾つかの例では、ビデオデコーダは、ビットストリームから、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリストに含まれているかどうかを示すシンタックス要素を取得することができる。そのような例では、ビデオコーダは、現在のビュー成分／レイヤ表現を復号することができる。更に、幾つかの例は、視差ベクトルの生成に関する。
【０００８】
[0008]一例では、本開示は、ビデオデータを復号するための方法を説明し、この方法は、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリストに含まれているかどうかを示すシンタックス要素をビットストリームから取得することと、現在のビュー成分／レイヤ表現を復号することとを備え、シンタックス要素が、ビュー／レイヤ間参照ピクチャが参照ピクチャリストに決して含まれていないことを示すとき、現在のビュー成分／レイヤ表現は、参照ピクチャリスト中のビュー／レイヤ間参照ピクチャの使用を伴わずに復号される。
【０００９】
[0009]別の例では、本開示は、ビデオデータを符号化する方法を説明し、この方法は、ビットストリームにおいて、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリストに含まれているかどうかを示すシンタックス要素を信号伝達することと、現在のビュー成分／レイヤ表現を符号化することとを備え、シンタックス要素が、ビュー／レイヤ間参照ピクチャが参照ピクチャリストに決して含まれていないことを示すとき、現在のビュー成分／レイヤ表現は、参照ピクチャリスト中のビュー／レイヤ間参照ピクチャを使用して符号化されない。
【００１０】
[0010]別の例では、本開示は、記憶媒体と記憶媒体に結合された１つ又は複数のプロセッサとを備えるビデオ復号機器を説明し、１つ又は複数のプロセッサは、ビットストリームから、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリストに含まれているかどうかを示すシンタックス要素を取得し、現在のビュー成分／レイヤ表現を復号するように構成され、シンタックス要素が、ビュー／レイヤ間参照ピクチャが参照ピクチャリストに決して含まれていないことを示すとき、現在のビュー成分／レイヤ表現は、参照ピクチャリスト中のビュー／レイヤ間参照ピクチャの使用を伴わずに復号される。
【００１１】
[0011]別の例では、本開示は、ビットストリームから、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリストに含まれているかどうかを示すシンタックス要素を取得するための手段と、現在のビュー成分／レイヤ表現を復号するための手段とを備える、ビデオ復号機器を説明し、シンタックス要素が、ビュー／レイヤ間参照ピクチャが参照ピクチャリストに決して含まれていないことを示すとき、現在のビュー成分／レイヤ表現は、参照ピクチャリスト中のビュー／レイヤ間参照ピクチャの使用を伴わずに復号される。
【００１２】
[0012]別の例では、本開示は、実行されると、ビデオ復号機器に、ビットストリームから、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリストに含まれているかどうかを示すシンタックス要素を取得させ、現在のビュー成分／レイヤ表現を復号させる、命令を記憶したコンピュータ可読データ記憶媒体（例えば、非一時的コンピュータ可読データ記憶媒体）を説明し、シンタックス要素が、ビュー／レイヤ間参照ピクチャが参照ピクチャリストに決して含まれていないことを示すとき、現在のビュー成分／レイヤ表現は、参照ピクチャリスト中のビュー／レイヤ間参照ピクチャの使用を伴わずに復号される。
【００１３】
[0013]別の例では、本開示は、記憶媒体と記憶媒体に結合された１つ又は複数のプロセッサとを備えるビデオ符号化機器を説明し、１つ又は複数のプロセッサは、ビットストリームにおいて、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリストに含まれているかどうかを示すシンタックス要素を信号伝達する（signal）ように構成され、及び現在のビュー成分／レイヤ表現を符号化すること、シンタックス要素が、ビュー／レイヤ間参照ピクチャが参照ピクチャリストに決して含まれていないことを示すとき、現在のビュー成分／レイヤ表現は、参照ピクチャリスト中のビュー／レイヤ間参照ピクチャを使用して符号化されない。
【００１４】
[0014]別の例では、本開示は、ビットストリームにおいて、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリストに含まれているかどうかを示すシンタックス要素を信号伝達するための手段と、現在のビュー成分／レイヤ表現を符号化するための手段とを備える、ビデオ符号化機器を説明し、シンタックス要素が、ビュー／レイヤ間参照ピクチャが参照ピクチャリストに決して含まれていないことを示すとき、現在のビュー成分／レイヤ表現は、参照ピクチャリスト中のビュー／レイヤ間参照ピクチャを使用して符号化されない。
【００１５】
[0015]別の例では、本開示は、実行されると、ビデオ符号化機器に、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリストに含まれているかどうかを示すシンタックス要素をビットストリームにおいて信号伝達させる命令を記憶したコンピュータ可読データ記憶媒体（例えば、非一時的コンピュータ可読データ記憶媒体）を説明し、及び、現在のビュー成分／レイヤ表現を符号化すること、シンタックス要素が、ビュー／レイヤ間参照ピクチャが参照ピクチャリストに決して含まれていないことを示すとき、現在のビュー成分／レイヤ表現は、参照ピクチャリスト中のビュー／レイヤ間参照ピクチャを使用して符号化されない。
【００１６】
[0016]開示の１つ又は複数の例の詳細が、添付図面と以下の説明とで述べられている。他の特徴と、目的と、利点とは、説明と、図面と、請求項とから明らかになるであろう。
【図面の簡単な説明】
【００１７】
【図１】[0017]本開示で説明されている技術を利用することができる例示的なビデオコード化システムを示すブロック図。
【図２】[0018]現在のＰＵに関する例示的な空間的隣接予測単位（ＰＵ）を示す概念図。
【図３】[0019]マルチビューコード化のための例示的な予測構造を示す概念図。
【図４】[0020]マルチビュー及び３Ｄビデオコード化における高度な残差予測の例示的な予測構造を示す概念図。
【図５】[0021]時間的候補ピクチャの対応するＰＵにおける時間的隣接要素を示す概念図。
【図６】[0022]本開示の技術を実装するように構成される例示的なビデオエンコーダを示すブロック図。
【図７】[0023]本開示の技術を実装するように構成される例示的なビデオデコーダを示すブロック図。
【図８Ａ】[0024]本開示の例による、ビデオエンコーダのオペレーションを示す流れ図。
【図８Ｂ】[0025]本開示の例による、ビデオデコーダのオペレーションを示す流れ図。
【図９】[0026]本開示の例による、スライスヘッダを解析するための例示的な動作を示すフローチャート。
【図１０】[0027]本開示の例による、隣接ブロックベース視差ベクトル（ＮＢＤＶ）の導出処理を示すフローチャート。
【発明を実施するための形態】
【００１８】
[0028]高効率ビデオコード化（ＨＥＶＣ）は、新たに開発されたビデオコード化規格である。ＨＥＶＣ及び他のコード化仕様又は規格では、ビデオエンコーダは、各ピクチャに対して最大で２個の参照ピクチャリストを生成することができる。これらの参照ピクチャリストはＲｅｆＰｉｃＬｉｓｔ０及びＲｅｆＰｉｃＬｉｓｔ１と呼ばれ得る。特定のピクチャに対する参照ピクチャリストは、その特定のピクチャとは異なる時間インスタンスにおいて発生するピクチャを含み得る。言い換えると、参照ピクチャリストは、時間的参照ピクチャを含み得る。
【００１９】
[0029]ビデオエンコーダがピクチャを符号化するとき、ビデオコーダは、ピクチャ中のブロックの符号化された表現を生成することができる。ビデオエンコーダは、ピクチャのブロックの符号化された表現を生成するために、イントラ予測又はインター予測を使用することができる。言い換えると、ビデオエンコーダは、ブロックを符号化するためにイントラ予測又はインター予測を使用することができる。ビデオエンコーダが現在のピクチャの現在のブロックを符号化するためにイントラ予測を使用するとき、ビデオエンコーダは、現在のピクチャ中の他のサンプルに基づいて、予測ブロックを生成することができる。ビデオエンコーダが現在のブロックを符号化するためにインター予測を使用するとき、ビデオエンコーダは、現在のピクチャのＲｅｆＰｉｃＬｉｓｔ０の中の参照ピクチャ中の対応するブロックに基づいて、現在のピクチャのＲｅｆＰｉｃＬｉｓｔ１の中の参照ピクチャ中の対応するブロックに基づいて、又は、現在のピクチャのＲｅｆＰｉｃＬｉｓｔ０の中の参照ピクチャ中の第１の対応するブロック及び現在のピクチャのＲｅｆＰｉｃＬｉｓｔ１の中の参照ピクチャ中の第２の対応するブロックに基づいて、現在のブロックに対する予測ブロックを決定することができる。ビデオエンコーダがイントラ予測を使用して現在のブロックを符号化するかインター予測を使用して現在のブロックを符号化するかにかかわらず、ビデオエンコーダは、現在のブロックの元の内容と予測ブロックとの差を決定することができる。ビデオエンコーダは、得られた残差データを変換し量子化することができる。ビデオコーダは、変換され量子化された残差データを示す、エントロピー符号化されたシンタックス要素を、ビットストリームに含め得る。
【００２０】
[0030]ビデオデコーダがピクチャ（即ち、現在のピクチャ）を復号するとき、ビデオデコーダは、現在のピクチャに対して同じ参照ピクチャリストを生成することができる。加えて、ビデオデコーダは、現在のピクチャの各ブロックを復号することができる。ビデオデコーダが現在のピクチャの現在のブロックを復号し、現在のブロックがインター予測を使用して符号化されたとき、ビデオデコーダは、現在のピクチャのＲｅｆＰｉｃＬｉｓｔ０及び／又はＲｅｆＰｉｃＬｉｓｔ１の中の参照ピクチャ中の対応するブロックに基づいて、現在のブロックに対する予測ブロックを決定することができる。ビデオデコーダは次いで、現在のブロックに対する残差データに予測ブロックを追加することによって、現在のブロックを再構築することができる。
【００２１】
[0031]ＭＶ−ＨＥＶＣは、マルチビュー（MV）コード化のためのＨＥＶＣの拡張である。３Ｄ−ＨＥＶＣは、３次元（３Ｄ）ビデオデータのためのＨＥＶＣの拡張である。ＭＶ−ＨＥＶＣ及び３Ｄ−ＨＥＶＣは、異なる視点からの同じシーンの複数のビューを提供する。ＭＶ−ＨＥＶＣ及び３Ｄ−ＨＥＶＣでは、異なるビューから再構築されたピクチャに基づくビュー間予測が可能にされ得る。ＭＶ−ＨＥＶＣ及び３Ｄ−ＨＥＶＣでは、現在のピクチャに対する参照ピクチャリストは、ビュー間参照ピクチャ、ならびに時間的参照ピクチャを含み得る。ビュー間参照ピクチャは、現在のピクチャとは異なるビュー中にあり得る。ビデオエンコーダ及びビデオデコーダは、時間的参照ピクチャと同様の方式で、参照ピクチャリスト中のビュー間参照ピクチャを使用することができる。
【００２２】
[0032]ＭＶ−ＨＥＶＣ及び３Ｄ−ＨＥＶＣでは、ビデオエンコーダ及びビデオデコーダによって使用される幾つかのコーティングツールは、ＲｅｆＰｉｃＬｉｓｔ０とＲｅｆＰｉｃＬｉｓｔ１の両方がビュー間参照ピクチャを含むことを仮定する。例えば、ブロックに対する視差ベクトルを決定するためのコード化ツールは、ＲｅｆＰｉｃＬｉｓｔ０とＲｅｆＰｉｃＬｉｓｔ１の両方がビュー間参照ピクチャを含むことを仮定し得る。この仮定の結果として、コード化ツールは両方の参照ピクチャリスト中の参照ピクチャがビュー間参照ピクチャかどうかを確認する必要があり得るので、そのようなコード化ツールの複雑さが増し得る。更に、ＲｅｆＰｉｃＬｉｓｔ１中の参照ピクチャがビュー間参照ピクチャかどうかを確認することは、メモリへの追加の読取り要求と書込み要求とをもたらすことがあり、これは、符号化及び／又は復号処理を遅くし得る。しかしながら、ＲｅｆＰｉｃＬｉｓｔ０及びＲｅｆＰｉｃＬｉｓｔ１に同じビュー間参照ピクチャを含むことは、符号化利得を何らもたらさないことがある。
【００２３】
[0033]従って、幾つかの例では、ＲｅｆＰｉｃＬｉｓｔ１ではなくＲｅｆＰｉｃＬｉｓｔ０にビュー間参照ピクチャを含むことが有利であり得る。従って、本開示の特定の例によれば、ビュー間参照ピクチャがＲｅｆＰｉｃＬｉｓｔ１に含まれないことをビデオエンコーダがビットストリームにおいて信号伝達する場合、ビデオデコーダによって使用される特定のコード化ツールは、ＲｅｆＰｉｃＬｉｓｔ１中の参照ピクチャがビュー間参照ピクチャかどうかを確認する必要がない。これは、複雑さと、メモリへの読取り要求及び書込み要求の数とを減らし得る。更に、ビュー間参照ピクチャがＲｅｆＰｉｃＬｉｓｔ１に含まれないことをビデオエンコーダがビットストリームにおいて信号伝達する場合、ビデオエンコーダは、ビットストリーム中で特定のシンタックス要素を信号伝達する必要がなくてよい。例えば、ＲｅｆＰｉｃＬｉｓｔ１中にビュー間参照ピクチャがない場合、ビデオエンコーダは、より少数のビットを含む参照ピクチャリスト修正（ＲＰＬＭ）シンタックス要素を使用して、ＲｅｆＰｉｃＬｉｓｔ１中の参照ピクチャの順序をどのように修正するかを信号伝達することができる。
【００２４】
[0034]従って、本開示の例によれば、ビデオエンコーダは、ビットストリームにおいて、ビュー／レイヤ間参照ピクチャが現在のピクチャに対する参照ピクチャリストに含まれているかどうかを示すシンタックス要素を信号伝達することができる。加えて、ビデオエンコーダは、現在のピクチャを符号化することができる。同様に、ビデオデコーダは、ビットストリームから、ビュー間参照ピクチャが現在のピクチャに対する参照ピクチャリストに含まれているかどうかを示すシンタックス要素を取得することができる。加えて、ビデオデコーダは、現在のピクチャを復号することができる。本明細書で説明されるように、本開示の例は、スケーラブルビデオコード化（ＳＶＣ）、ならびにマルチビューコード化及び３ＤＶコード化に当てはまり得る。
【００２５】
[0035]図１は、本開示の技術を利用することができる例示的なビデオコード化システム１０を示すブロック図である。本明細書で使用されているように、「ビデオコーダ」という用語は、一般的に、ビデオエンコーダとビデオデコーダの両方を指す。本開示では、「ビデオコード化」又は「コード化」という用語は、一般的に、ビデオ符号化又はビデオ復号を指すものとしてよい。
【００２６】
[0036]図１に示されているように、ビデオコード化システム１０は、発信源機器１２と宛先機器１４とを含む。発信源機器１２は、符号化ビデオデータを生成する。従って、発信源機器１２は、ビデオ符号化機器又はビデオ符号化装置と称され得る。宛先機器１４は、発信源機器１２によって生成された符号化ビデオデータを復号することができる。従って、宛先機器１４は、ビデオ復号機器又はビデオ復号装置と称され得る。発信源機器１２と宛先機器１４とは、ビデオコード化機器又はビデオコード化装置の例としてよい。
【００２７】
[0037]発信源機器１２と宛先機器１４とは、デスクトップコンピュータ、モバイルコンピュータ機器、ノートブック（例えば、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、所謂「スマート」フォンなどの電話送受器、テレビジョン、カメラ、表示装置、デジタルメディアプレーヤ、ビデオゲーム機、車載コンピュータなどを含む、広範な機器を備えるものとしてよい。
【００２８】
[0038]宛先機器１４は、チャネル１６を介して発信源機器１２から符号化ビデオデータを受信することができる。チャネル１６は、符号化ビデオデータを発信源機器１２からステーション機器１４に移動することができる１つ又は複数の媒体又は機器を備えることができる。一例において、チャネル１６は、発信源機器１２が符号化ビデオデータを直接、宛先機器１４にリアルタイムで送信することを可能にする１つ又は複数の通信媒体を備えることができる。この例では、発信源機器１２は、ワイヤレス通信プロトコルなどの、通信規格に従って符号化ビデオデータを変調することができ、変調ビデオデータを宛先機器１４に送信することができる。１つ又は複数の通信媒体は、高周波（ＲＦ）スペクトルなどのワイヤレス及び／又は有線通信媒体、又は１つ又は複数の物理的伝送路を含み得る。１つ又は複数の通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、又はグローバルネットワーク（例えば、インターネット）などの、パケットベースのネットワークの一部をなすものとしてよい。１つ又は複数の通信媒体は、ルータ、スイッチ、基地局、又は発信源機器１２から宛先機器１４への通信を円滑にする他の機器を含み得る。
【００２９】
[0039]別の例において、チャネル１６は、発信源機器１２によって生成された符号化ビデオデータを格納する記憶媒体を含み得る。この例では、宛先機器１４は、例えば、ディスクアクセス又はカードアクセスを介して、記憶媒体にアクセスすることができる。記憶媒体は、ブルーレイ（登録商標）ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュメモリ、又は符号化ビデオデータを格納するための他の好適なデジタル記憶媒体などの、様々なローカルでアクセスされるデータ記憶媒体を含み得る。
【００３０】
[0040]更なる例において、チャネル１６は、発信源機器１２によって生成された符号化ビデオデータを格納するファイルサーバ又は別の中間記憶機器を含み得る。この例では、宛先機器１４は、ストリーミング又はダウンロードを介してファイルサーバ又は他の中間記憶機器に格納されている符号化ビデオデータにアクセスすることができる。ファイルサーバは、符号化ビデオデータを格納し、符号化ビデオデータを宛先機器１４に送信することができる種類のサーバとすることができる、ファイルサーバの例として、ウェブサーバ（例えば、ウェブサイト用）、ファイル転送プロトコル（ＦＴＰ）サーバ、ネットワーク接続記憶（ＮＡＳ）機器、及びローカルディスクドライブが挙げられる。
【００３１】
[0041]宛先機器１４は、インターネット接続などの、標準的なデータ接続を通じて符号化ビデオデータにアクセスすることができる。データ接続の種類の例として、ワイヤレスチャネル（例えば、Ｗｉ−Ｆｉ（登録商標）接続）、有線接続（例えば、デジタル加入者回線（ＤＳＬ）、ケーブルモデムなど）、又はファイルサーバ上に格納されている符号化ビデオデータにアクセスするのに適している両方の組合せが挙げられ得る。ファイルサーバからの符号化ビデオデータの伝送は、ストリーミング伝送、ダウンロード伝送、又は両方の組合せであってよい。
【００３２】
[0042]本開示の技術は、ワイヤレスアプリケーション又は設定に制限されない。これらの技術は、オーバーザエアテレビ放送、ケーブルテレビ伝送、衛星テレビ伝送、例えば、インターネットを介した、ストリーミングビデオ伝送、データ記憶媒体上に格納するためのビデオデータの符号化、データ記憶媒体上に格納されているビデオデータの復号、又は他のアプリケーションなどの様々なマルチメディアアプリケーションのサポートにおいてビデオコード化に適用され得る。幾つかの例では、ビデオコード化システム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、及び／又はビデオ電話などのアプリケーションをサポートするために一方向又は双方向のビデオ伝送をサポートするように構成され得る。
【００３３】
[0043]図１は単なる例であり、本開示の技術は、符号化機器と復号機器との間のデータ通信を必ずしも含まないビデオコード化設定（例えば、ビデオ符号化又はビデオ復号）に適用され得る。他の例では、データ（例えば、ビデオデータ）は、例えば、ローカルメモリから取り出されるか、ネットワーク上でストリーミング配信される。ビデオ符号化機器は、データ（例えば、ビデオデータ）を符号化してメモリに格納することができ、及び／又はビデオ復号機器は、メモリからデータ（例えば、ビデオデータ）を取り出して復号することができる。多くの例において、符号化と復号とは、互いに通信しないが、単に、データ（例えば、ビデオデータ）を符号化してメモリに入れ、及び／又はメモリからデータ（例えば、ビデオデータ）を取り出して復号する機器によって実行される。
【００３４】
[0044]図１の例において、発信源機器１２は、ビデオ発信源１８と、ビデオエンコーダ２０と、出力インターフェース２２とを備える。幾つかの例では、出力インターフェース２２は、変調器／復調器（モデム）及び／又は送信器を含み得る。ビデオ発信源１８は、ビデオ撮影機器、例えば、ビデオカメラ、すでに撮影されているビデオデータを収めてあるビデオアーカイブ、ビデオコンテンツプロバイダからビデオデータを受信するためのビデオ配信インターフェース、及び／又はビデオデータを生成するためのコンピュータグラフィックスシステム、又はビデオデータのそのような発信源の組合せを含み得る。
【００３５】
[0045]ビデオエンコーダ２０は、ビデオ発信源１８からのビデオデータを符号化し得る。幾つかの例では、発信源機器１２は、出力インターフェース２２を介して符号化ビデオデータを宛先機器１４に直接送信する。他の例では、符号化ビデオデータは、復号及び／又は再生のために宛先機器１４により後からアクセスできるように記憶媒体又はファイルサーバ上にも格納され得る。
【００３６】
[0046]図１の例において、宛先機器１４は、入力インターフェース２８と、ビデオデコーダ３０と、表示装置３２とを含む。幾つかの例では、入力インターフェース２８は、受信器及び／又はモデムを含む。入力インターフェース２８は、チャネル１６上で符号化ビデオデータを受信することができる。ビデオデコーダ３０は、符号化ビデオデータを復号し得る。表示装置３２は、復号ビデオデータを表示することができる。表示装置３２は、宛先機器１４と一体であるか、又は宛先機器１４に外付けであってもよい。表示装置３２は、液晶表示器（ＬＣＤ）、プラズマ表示器、有機発光ダイオード（ＯＬＥＤ）表示器、又は他の種類の表示装置などの、様々な表示装置を備えることができる。
【００３７】
[0047]ビデオエンコーダ２０及びビデオデコーダ３０は各々、１つ又は複数のマイクロプロセッサ、汎用プロセッサデジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ハードウェア、又は本明細書で説明される機能を実行するためのそれらの任意の組合せのような、種々の適切な回路のいずれかとして実装され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、又は状態機械であり得る。また、プロセッサは、コンピュータ機器の組合せ、例えば、ＤＳＰとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、ＤＳＰコアと連携する１つ又は複数のマイクロプロセッサ、又は任意の他のそのような構成として実装され得る。これらの技術が、部分的にソフトウェアにより実装される場合、機器は、ソフトウェアに対する命令を、好適な非一時的コンピュータ可読記憶媒体に格納することができ、１つ又は複数のプロセッサを使用して本開示の技術を実行することでハードウェアにより命令を実行することができる。前記のどれか（ハードウェア、ソフトウェア、ハードウェアとソフトウェアとの組合せなどを含む）は、１つ又は複数のプロセッサであることが企図され得る。ビデオエンコーダ２０とビデオデコーダ３０との各々は、１つ又は複数のエンコーダ又はデコーダに含まれるものとすることもでき、これらのいずれかがそれぞれの機器において組み合わされたエンコーダ／デコーダ（ＣＯＤＥＣ）の一部として集積化され得る。
【００３８】
[0048]本開示では、一般的に、ビデオエンコーダ２０がビデオデコーダ３０などの別の機器に、又はビットストリームにおいて、特定の情報を「信号伝達（signaling）」することを参照することがある。「信号伝達（する）」という用語は、一般的に、シンタックス要素及び／又は圧縮ビデオデータを復号するために使用される他のデータの通信を指すものとしてよい。そのような通信は、リアルタイム又はほぼリアルタイムで行われ得る。代替的に、そのような通信は、ある長さの時間にわたって行われるものとしてよく、例えば、符号化時に符号化ビットストリームでシンタックス要素をコンピュータ可読記憶媒体に格納するときに行われ、次いで、それらの要素はこの媒体に格納された後にいつでも復号機器によって取り出せる。
【００３９】
[0049]幾つかの例では、ビデオエンコーダ２０とビデオデコーダ３０とは、スケーラブルビデオ符号化（ＳＶＣ）拡張、マルチビュービデオコード化（ＭＶＣ）拡張、ＭＶＣベース３ＤＶ拡張を含むＩＳＯ／ＩＥＣ  ＭＰＥＧ−４ビジュアル及びＩＴＵ−Ｔ  Ｈ．２６４（ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  ＡＶＣとしても知られている）などのビデオ圧縮規格に従って動作する。更に、Ｈ．２６４／ＡＶＣへの３次元ビデオ（３ＤＶ）コード化拡張、即ちＡＶＣベース３ＤＶを作成する取組みが進行中である。Ｈ．２６４のＭＶＣ拡張の共同ドラフトは、「オーディオビジュアルサービス全般のための高度ビデオコード化方式」、ＩＴＵ−Ｔ勧告Ｈ．２６４、２０１０年３月において説明されている。他の例では、ビデオエンコーダ２０とビデオデコーダ３０とは、ＩＴＵ−Ｔ  Ｈ．２６１、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−１ビジュアル、ＩＴＵ−Ｔ  Ｈ．２６２又はＩＳＯ／ＩＥＣ  ＭＰＥＧ−２ビジュアル、及びＩＴＵ−Ｔ  Ｈ．２６３、ＩＳＯ／ＩＥＣ−４ビジュアルに従って動作し得る。
【００４０】
[0050]他の例では、ビデオエンコーダ２０とビデオデコーダ３０とは、ＩＴＵ−Ｔビデオコード化エキスパートグループ（ＶＣＥＧ）とＩＳＯ／ＩＥＣモーションピクチャエキスパートグループ（ＭＰＥＧ）とのビデオコード化に関する共同チーム（ＪＣＴ−ＶＣ）によって開発された高効率ビデオコード化（ＨＥＶＣ）規格に従って動作し得る。ＨＥＶＣ規格のドラフトは、「ＨＥＶＣ作業ドラフト８」又は「ＨＥＶＣベース仕様」と称され、Ｂｒｏｓｓらの「高効率ビデオコード化（ＨＥＶＣ）テキスト仕様ドラフト８」、ＩＴＵ−Ｔ  ＳＧ１６  ＷＰ３とＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９／ＷＧ１１とのビデオコード化に関する共同チーム（ＪＣＴ−ＶＣ）、第１０回会合、ストックホルム、スウェーデン、２０１２年７月において説明されている。２０１４年１月９日時点で、ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ８は、ｈｔｔｐ：／／ｐｈｅｎｉｘ．ｉｎｔ−ｅｖｒｙ．ｆｒ／ｊｃｔ／ｄｏｃ＿ｅｎｄ＿ｕｓｅｒ／ｄｏｃｕｍｅｎｔｓ／１０＿Ｓｔｏｃｋｈｏｌｍ／ｗｇ１１／ＪＣＴＶＣ−Ｊ１００３−ｖ８．ｚｉｐからダウンロード可能である。ＳＨＶＣと呼ばれるＨＥＶＣのスケーラブルビデオコード化拡張が開発中である。
【００４１】
[0051]更に、ＨＥＶＣのマルチビュービデオコード化拡張、及び３ＤＶ拡張を作成する作業が進行中である。言い換えると、ＶＣＥＧとＭＰＥＧとの３Ｄビデオコード化に関する共同チーム（ＪＣＴ−３Ｖ）がＨＥＶＣに基づく３ＤＶ規格を開発中であり、これに対する標準化の取組みの一環として、ＨＥＶＣに基づくマルチビュービデオコーデックの標準化（ＭＶ−ＨＥＶＣ）とＨＥＶＣに基づく３Ｄビデオコード化（３Ｄ−ＨＥＶＣ）とがある。ビデオエンコーダ２０及びビデオデコーダ３０は、ＨＥＶＣ規格へのそのような拡張に従って動作し得る。ＨＥＶＣのマルチビューコード化拡張はＭＶ−ＨＥＶＣと呼ばれることがある。Ｇｅｒｈａｒｄ  Ｔｅｃｈ他、「ＭＶ−ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  １」、ＪＣＴ３Ｖ−Ａ１００４、ＩＴＵ−Ｔ  ＳＧ  １６  ＷＰ３とＩＳＯ／ＩＥＣ  ＪＴＣ  １／ＳＣ  ２９／ＷＧ  １１とのＪｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｖｅ  Ｔｅａｍ  ｏｎ  ３Ｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  Ｅｘｔｅｎｓｉｏｎ  Ｄｅｖｅｌｏｐｍｅｎｔ、第１回会合：ストックホルム、スウェーデン、２０１２年７月１６〜２０日（以後、「ＪＣＴ３Ｖ−Ａ１００４」又は「ＭＶ−ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  １」）がＭＶ−ＨＥＶＣのワーキングドラフトを提供する。Ｇｅｒｈａｒｄ  Ｔｅｃｈ他、「ＭＶ−ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ２」、ＪＣＴ３Ｖ−Ｂ１００４、ＩＴＵ−Ｔ  ＳＧ  １６  ＷＰ３とＩＳＯ／ＩＥＣ  ＪＴＣ  １／ＳＣ  ２９／ＷＧ  １１とのＪｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｖｅ  Ｔｅａｍ  ｏｎ  ３Ｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  Ｅｘｔｅｎｓｉｏｎ  Ｄｅｖｅｌｏｐｍｅｎｔ、第２回会合：上海、中国、２０１２年１０月１３〜１９日（以後、「ＭＶ−ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ２」）がＭＶ−ＨＥＶＣの別のワーキングドラフトを提供する。
【００４２】
[0052]ＨＥＶＣの３ＤＶ拡張は３Ｄ−ＨＥＶＣと呼ばれることがある。Ｔｅｃｈ他、「Ｄｒａｆｔ  ｏｆ  ３Ｄ−ＨＥＶＣ  Ｔｅｓｔ  Ｍｏｄｅｌ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｄｒａｆｔ」、ＪＣＴ３Ｖ−Ｂ１００５、ＩＴＵ−Ｔ  ＳＧ  １６  ＷＰ  ３とＩＳＯ／ＩＥＣ  ＪＴＣ  １／ＳＣ  ２９／ＷＧ  １１とのＪｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｖｅ  Ｔｅａｍ  ｏｎ  ３Ｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  Ｅｘｔｅｎｓｉｏｎ  Ｄｅｖｅｌｏｐｍｅｎｔ、第１回会合：ストックホルム、スウェーデン、２０１２年７月１６〜２０日（以後、「３Ｄ−ＨＥＶＣ  Ｔｅｓｔ  Ｍｏｄｅｌ  １」）が参照ソフトウェアならびに３Ｄ−ＨＥＶＣのワーキングドラフトを説明する。加えて、Ｔｅｃｈ他、「３Ｄ−ＨＥＶＣ  Ｔｅｓｔ  Ｍｏｄｅｌ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｄｒａｆｔ  ２」、ＪＣＴ３Ｖ−Ｂ１００５、ＩＴＵ−Ｔ  ＳＧ  １６  ＷＰ  ３とＩＳＯ／ＩＥＣ  ＪＴＣ  １／ＳＣ  ２９／ＷＧ  １１とのＪｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｖｅ  Ｔｅａｍ  ｏｎ  ３Ｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  Ｅｘｔｅｎｓｉｏｎ  Ｄｅｖｅｌｏｐｍｅｎｔ、第１回会合：ストックホルム、スウェーデン、２０１２年７月１６〜２０日（以後、「３Ｄ−ＨＥＶＣ  Ｔｅｓｔ  Ｍｏｄｅｌ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｄｒａｆｔ  ２」）が参照ソフトウェアならびに３Ｄ−ＨＥＶＣのワーキングドラフトを説明する。２０１４年１月９日時点で、３Ｄ−ＨＥＶＣのための参照ソフトウェア、即ち３ＤＶ−ＨＴＭは、ｈｔｔｐs：／／ｈｅｖｃ．ｈｈｉ．ｆｒａｕｎｈｏｆｅｒ．ｄｅ／ｓｖｎ／ｓｖｎ＿３ＤＶＣＳｏｆｔｗａｒｅ／ｔｒｕｎｋから利用可能である。
【００４３】
[0053]ＨＥＶＣは動き補償ループを提供する。
【数１】
0005992640.tif 000002
【００４４】
上記の式において、Ｐは、Ｐ個のフレームに対する一方向予測又はＢ個のフレームに対する双方向予測を示す。
【００４５】
[0054]しかしながら、ＨＥＶＣにおける動き圧縮の単位は、以前のビデオコード化規格のとは異なる。例えば、以前のビデオコード化規格におけるマクロブロックの概念は、ＨＥＶＣに存在しない。むしろ、マクロブロックは、一般的な四分木方式に基づく自由度の高い階層構造で置き換えられる。この方式の範囲内で、３種類のブロック、即ち、コード化単位（ＣＵ）と、予測単位（ＰＵ）と、変換単位（ＴＵ）とが定義される。ＣＵは、領域分割の基本単位である。ＣＵの概念は、マクロブロックの概念に類似しているが、ＣＵは、最大サイズに制限されず、ＣＵにより、等しいサイズの４つのＣＵへの再帰的分割でコンテンツ適応性を改善することができる。ＰＵは、インター／イントラ予測の基本単位であり、ＰＵは、不規則な画像パターンを効果的にコード化するため、単一のＰＵ内に任意の形状の複数の区分を含み得る。ＴＵは、変換の基本単位である。ＣＵのＴＵは、ＣＵのＰＵから独立して定義され得る。しかしながら、ＴＵのサイズは、ＴＵが属すＣＵに制限される。ブロック構造を３つの異なる概念に分けるこの方法は、その役割に従って各々を最適化することを可能にし、その結果、コード化効率が改善され得る。
【００４６】
[0055]ＨＥＶＣと他のビデオコード化仕様において、ビデオシーケンスは、典型的に、一連のピクチャを含む。ピクチャは、「フレーム」とも称され得る。ピクチャは、ＳＬ、ＳＣｂ、及びＳｃｒと表される、３つのサンプル配列を含み得る。ＳＬは、ルーマサンプルの２次元配列（即ち、ブロック）である。ＳＣｂは、Ｃｂ色度サンプルの２次元配列である。ＳＣｒは、Ｃｒ色度サンプルの２次元配列である。色度サンプルは、本明細書では「クロマ」サンプルとも称され得る。他の場合において、ピクチャは、モノクロであってもよく、またルーマサンプルの配列のみを含んでいてもよい。
【００４７】
[0056]ピクチャの符号化された表現を生成するために、ビデオエンコーダ２０は、コード化ツリー単位（ＣＴＵ）のセットを生成することができる。ＣＴＵの各々は、ルーマサンプルのコード化ツリーブロックと、クロマサンプルの２つの対応するコード化ツリーブロックと、コード化ツリーブロックのサンプルをコード化するために使用されるシンタックス構造とを備えるものとしてよい。モノクロピクチャ又は３つの別々の色平面を有するピクチャにおいて、ＣＴＵは、単一のコード化ツリーブロックと、コード化ツリーブロックのサンプルをコード化するために使用されるシンタックス構造とを備えることができる。コード化ツリーブロックは、サンプルのＮ×Ｎのブロックであってよい。ＣＴＵは、「ツリーブロック」又は「最大コード化単位」（ＬＣＵ）とも称され得る。ＨＥＶＣのＣＴＵは、Ｈ．２６４／ＡＶＣなどの、他の規格のマクロブロックに概して類似しているものとしてよい。しかしながら、ＣＴＵは、特定のサイズに必ずしも制限されず、１つ又は複数のＣＵを含み得る。スライスは、ラスタースキャン順に連続的に順序付けられた整数個のＣＴＵを含み得る。
【００４８】
[0057]コード化されたスライスは、スライスヘッダとスライスデータとを備え得る。スライスのスライスヘッダは、スライスに関する情報を提供するシンタックス要素を含むシンタックス構造であってよい。スライスデータは、スライスのコード化されたＣＴＵを含み得る。
【００４９】
[0058]本開示では、「ビデオ単位」又は「ビデオブロック」又は「ブロック」という用語を使用して、サンプルの１つ又は複数のブロックのサンプルをコード化するために使用される１つ又は複数のサンプルブロックとシンタックス構造とを指すものとしてよい。ビデオ単位の種類の例として、ＣＴＵ、ＣＵ、ＰＵ、変換単位（ＴＵ）、マクロブロック、マクロブロック区分などが挙げられ得る。幾つかの文脈では、ＰＵ又はＣＵの説明は、マクロブロック又はマクロブロック区分の説明と交換され得る。
【００５０】
[0059]コード化されたＣＴＵを生成するために、ビデオエンコーダ２０は、ＣＴＵのコード化ツリーブロック上で四分木分割法を再帰的に実行して、コード化ツリーブロックをコード化ブロック、即ち「コード化ツリー単位」に分割することができる。コード化ブロックは、サンプルのＮ×Ｎのブロックである。ＣＵは、ルーマサンプルのコード化ブロックを備え、またルーマサンプル配列と、Ｃｂサンプル配列と、Ｃｒサンプル配列とを有するピクチャのクロマサンプルの２つの対応するコード化ブロックと、コード化ブロックのサンプルをコード化するために使用されるシンタックス構造とを備える。モノクロピクチャ又は３つの別々の色平面を有するピクチャにおいて、ＣＵは、単一のコード化ブロックと、コード化ブロックのサンプルをコード化するために使用されるシンタックス構造とを備えることができる。
【００５１】
[0060]ビデオエンコーダ２０は、ＣＵのコード化ブロックを１つ又は複数の予測ブロックに分割することができる。予測ブロックは、同じ予測が適用されるサンプルの矩形（即ち、正方形又は非正方形）ブロックである。ＣＵのＰＵは、ルーマサンプルの予測ブロックと、クロマサンプルの２つの対応する予測ブロックと、予測ブロックを予測するために使用されるシンタックス構造とを備えることができる。モノクロピクチャ又は３つの別々の色平面を有するピクチャにおいて、ＰＵは、単一の予測ブロックと、予測ブロックを予測するために使用されるシンタックス構造とを備えることができる。ビデオエンコーダ２０は、ＣＵの各ＰＵのルーマ予測ブロックと、Ｃｂ予測ブロックと、Ｃｒ予測ブロックとに対する予測ルーマブロックと、予測Ｃｂブロックと、予測Ｃｒブロックとを生成することができる。従って、本開示では、ＣＵは、１つ又は複数のＰＵに分割されると言うことができる。説明を簡単にするため、本開示は、ＰＵの予測ブロックのサイズを単にＰＵのサイズとして参照し得る。
【００５２】
[0061]ビデオエンコーダ２０は、イントラ予測又はインター予測を使用してＰＵに対する予測ブロックを生成することができる。ビデオエンコーダ２０が、イントラ予測を使用してＰＵの予測ブロックを生成する場合、ビデオエンコーダ２０は、ＰＵに関連付けられているピクチャのサンプルに基づいてＰＵの予測ブロックを生成することができる。本開示では、「に基づく」という言い回しは、「に少なくとも部分的に基づく」を示すものとしてよい。
【００５３】
[0062]ビデオエンコーダ２０が、インター予測を使用してＰＵの予測ブロックを生成する場合、ビデオエンコーダ２０は、ＰＵに関連付けられているピクチャ以外の１つ又は複数のピクチャの復号されたサンプルに基づいてＰＵの予測ブロックを生成することができる。ブロック（例えば、ＰＵ）の予測ブロックを生成するためにインター予測が使用される場合、本開示では、ブロックを「インターコード化（された）」又は「インター予測（された）」と称するものとしてよい。インター予測は、一方向（即ち、片方向予測）又は双方向（即ち、双予測）とすることができる。片方向予測又は双予測を実行するために、ビデオエンコーダ２０は、現在のピクチャに対して第１の基準ピクチャリスト（ＲｅｆＰｉｃＬｉｓｔ０）と、第２の基準ピクチャリスト（ＲｅｆＰｉｃＬｉｓｔ１）とを生成することができる。基準ピクチャリストの各々は、１つ又は複数の基準ピクチャを含み得る。基準ピクチャリストが構成された後（即ち、利用可能な場合のＲｅｆＰｉｃＬｉｓｔ０とＲｅｆＰｉｃＬｉｓｔ１）、基準ピクチャリストへの基準インデックスが、基準ピクチャリストに含まれている基準ピクチャを識別するために使用され得る。
【００５４】
[0063]片方向予測を使用する場合、ビデオエンコーダ２０は、ＲｅｆＰｉｃＬｉｓｔ０とＲｅｆＰｉｃＬｉｓｔ１のいずれか、又は両方で基準ピクチャを探索し、基準ピクチャ内の基準配置を決定することができる。更に、片方向予測を使用する場合、ビデオエンコーダ２０は、基準配置に対応するサンプルに少なくとも部分的に基づいて、ＰＵに対する予測ブロックを生成することができる。ＰＵに対する予測ブロック内の各サンプルは、基準配置に関連付けられ得る。幾つかの例では、ＰＵに対する予測ブロック内のサンプルは、ＰＵと同じサイズを有してその左上の隅部が基準配置であるサンプルのブロック内にある場合に、基準配置に関連付けられ得る。予測ブロック中の各サンプルは、参照ピクチャの実際のサンプル又は補間されたサンプルであり得る。更に、片方向予測を使用する場合、ビデオエンコーダ２０は、ＰＵの予測ブロックと基準配置との間の空間的変位を示す単一の動きベクトルを生成することができる。動きベクトルは、ＰＵの予測ブロックと基準配置との間の水平変位を指定する水平成分を含み、ＰＵの予測ブロックと基準配置との間の垂直変位を指定する垂直成分を含み得る。
【００５５】
[0064]双予測を使用してＰＵを符号化する場合、ビデオエンコーダ２０は、ＲｅｆＰｉｃＬｉｓｔ０内の基準ピクチャ内の第１の基準配置とＲｅｆＰｉｃＬｉｓｔ１内の基準ピクチャ内の第２の基準配置とを決定することができる。ビデオエンコーダ２０は、第１と第２との基準配置に対応するサンプルに少なくとも部分的に基づいて、ＰＵに対する予測ブロックを生成することができる。予測ブロック中の各サンプルは、参照ブロック中の対応するサンプルの加重平均であり得る。サンプルの重みは、ＰＵを含むピクチャからの基準ピクチャの時間的距離に基づくものとしてよい。更に、双予測を使用してＰＵを符号化する場合、ビデオエンコーダ２０は、ＰＵの予測ブロックと第１の基準配置との間の空間的変位を示す第１の動きベクトルと、ＰＵの予測ブロックと第２の基準配置との間の空間的変位を示す第２の動きベクトルとを生成することができる。従って、ビデオエンコーダ２０がＰＵに対して双予測を実行するとき、ＰＵは２つの動きベクトルを有する。
【００５６】
[0065]ビデオエンコーダ２０がインター予測を使用してＰＵの予測ブロックを生成する場合、ビデオエンコーダ２０は、ＰＵに関連付けられているピクチャ以外の１つ又は複数のピクチャのサンプルに基づいてＰＵの予測ブロックを生成することができる。例えば、ビデオエンコーダ２０は、一方向インター予測（即ち、片方向予測）又は双方向インター予測（即ち、双予測）をＰＵ上で実行することができる。
【００５７】
[0066]ビデオエンコーダ２０は、ＣＵを様々な分割モードに従って１つ又は複数のＰＵに分割することができる。例えば、ＣＵのＰＵに対する予測ブロックを生成するためにイントラ予測が使用される場合、ＣＵは、ＰＡＲＴ＿２Ｎ×２Ｎモード又はＰＡＲＴ＿Ｎ×Ｎモードに従って分割され得る。ＰＡＲＴ＿２Ｎ×２Ｎモードでは、ＣＵは１つのＰＵしか有しない。ＰＡＲＴ＿Ｎ×Ｎモードでは、ＣＵは、矩形予測ブロックを有する４つの等しいサイズのＰＵを有する。ＣＵのＰＵに対する予測ブロックを生成するためにインター予測が使用される場合、ＣＵは、ＰＡＲＴ＿２Ｎ×２Ｎモード、ＰＡＲＴ＿Ｎ×Ｎモード、ＰＡＲＴ＿２Ｎ×Ｎモード、ＰＡＲＴ＿Ｎ×２Ｎモード、ＰＡＲＴ＿２Ｎ×ｎＵモード、ＰＡＲＴ＿２Ｎ×ｕＤモード、ＰＡＲＴ＿ｎＬ×２Ｎモード、又はＰＡＲＴ＿ｎＲ×２Ｎモードに従って分割され得る。ＰＡＲＴ＿２Ｎ×ＮモードとＰＡＲＴ＿Ｎ×２Ｎとにおいて、ＣＵは、矩形予測ブロックを有する２つの等しいサイズのＰＵに分割される。ＰＡＲＴ＿２Ｎ×ｎＵモードと、ＰＡＲＴ＿２Ｎ×ｕＤモードと、ＰＡＲＴ＿ｎＬ×２Ｎモードと、ＰＡＲＴ＿ｎＲ×２Ｎモードとの各々において、ＣＵは、矩形予測ブロックを有する２つのサイズが等しくないＰＵに分割される。非対称区分では、ＣＵの一方向は区分されないが、他の方向は２５％と７５％とに区分される。２５％の区分に対応するＣＵの部分は、「ｎ」とその後ろに付く「Ｕｐ」、「Ｄｏｗｎ」、「Ｌｅｆｔ」、又は「Ｒｉｇｈｔ」という表示によって示される。従って、例えば、「２Ｎ×ｎＵ」は、上部の２Ｎ×０．５Ｎ  ＰＵと下部の２Ｎ×１．５Ｎ  ＰＵとで水平方向に区分された２Ｎ×２Ｎ  ＣＵを指す。
【００５８】
[0067]ビデオエンコーダ２０がＣＵの１つ又は複数のＰＵの１つ又は複数の予測ブロック（例えば、ルーマ予測ブロック、Ｃｂ予測ブロック、及びＣｒ予測ブロック）を生成した後、ビデオエンコーダ２０は、ＣＵの１つ又は複数の残差ブロックを生成することができる。例えば、ビデオエンコーダ２０はＣＵのルーマ残差ブロックを生成することができる。ＣＵのルーマ残差ブロック内の各サンプルは、ＣＵの予測ルーマブロックのうちの１つの中のルーマサンプルとＣＵの元のルーマコード化ブロック内の対応するサンプルとの間の差を示す。それに加えて、ビデオエンコーダ２０は、ＣＵに対するＣｂ残差ブロックを生成することができる。ＣＵのＣｂ残差ブロック内の各サンプルは、ＣＵの予測Ｃｂブロックのうちの１つの中のＣｂサンプルとＣＵの元のＣｂコード化ブロック内の対応するサンプルとの間の差を示し得る。ビデオエンコーダ２０は、ＣＵに対するＣｒ残差ブロックも生成することができる。ＣＵのＣｒ残差ブロック内の各サンプルは、ＣＵの予測Ｃｒブロックのうちの１つの中のＣｒサンプルとＣＵの元のＣｒコード化ブロック内の対応するサンプルとの間の差を示し得る。
【００５９】
[0068]更に、ビデオエンコーダ２０は、四分木分割法を使用して、ＣＵの１つ又は複数の残差ブロック（例えば、ＣＵのルーマ残差ブロック、Ｃｂ残差ブロック、及びＣｒ残差ブロック）を１つ又は複数の変換ブロック（例えば、ルーマ変換ブロック、Ｃｂ変換ブロック、及びＣｒ変換ブロック）に分解することができる。変換ブロックは、同じ変換が適用されるサンプルの矩形（例えば、正方形又は非正方形）ブロックである。ＣＵのＴＵは、ルーマサンプルの変換ブロックと、クロマサンプルの２つの対応する変換ブロックと、変換ブロックサンプルを変換するために使用されるシンタックス構造とを備えることができる。そこで、ＣＵの各ＴＵは、ルーマ変換ブロックと、Ｃｂ変換ブロックと、Ｃｒ変換ブロックとに関連付けられ得る。ＴＵに関連付けられているルーマ変換ブロックは、ＣＵのルーマ残差ブロックのサブブロックであってよい。Ｃｂ変換ブロックは、ＣＵのＣｂ残差ブロックのサブブロックであってよい。Ｃｒ変換ブロックは、ＣＵのＣｒ残差ブロックのサブブロックであってよい。モノクロピクチャ又は３つの別々の色平面を有するピクチャにおいて、ＴＵは、単一の変換ブロックと、変換ブロックのサンプルを変換するために使用されるシンタックス構造とを備えることができる。
【００６０】
[0069]ビデオエンコーダ２０は、１つ又は複数の変換をＴＵの変換ブロックに適用して、ＴＵに対する係数ブロックを生成することができる。係数ブロックは、変換係数の２次元配列であってよい。例えば、ビデオエンコーダ２０は、ＴＵのルーマ係数ブロックを生成するために、ＴＵのルーマ変換ブロックに１回又は複数回の変換を適用することができる。変換係数は、スカラ量であってよい。ビデオエンコーダ２０は、１つ又は複数の変換をＴＵのＣｂ変換ブロックに適用して、ＴＵに対するＣｂ係数ブロックを生成することができる。ビデオエンコーダ２０は、１つ又は複数の変換をＴＵのＣｒ変換ブロックに適用して、ＴＵに対するＣｒ係数ブロックを生成することができる。
【００６１】
[0070]係数ブロック（例えば、ルーマ係数ブロック、Ｃｂ係数ブロック、又はＣｒ係数ブロック）を生成した後、ビデオエンコーダ２０は、係数ブロックを量子化することができる。量子化は、一般的に、変換係数が量子化され、場合によっては、変換係数を表現するために使用されるデータの量を減らし、更に圧縮を施すプロセスを指す。ビデオエンコーダ２０が、係数ブロックを量子化した後、ビデオエンコーダ２０は、量子化された変換係数を示すシンタックス要素をエントロピー符号化することができる。例えば、ビデオエンコーダ２０は、量子化された変換係数を示すシンタックス要素に対してコンテキスト適応型バイナリ算術コード化（ＣＡＢＡＣ）を実行することができる。
【００６２】
[0071]ビデオエンコーダ２０は、コード化されたピクチャと関連データとの表現を形成するビットシーケンスを含むビットストリームを出力することができる。言い換えると、ビデオエンコーダ２０はビデオデータの符号化された表現を備えるビットストリームを生成することができる。ビットストリームは、ネットワーク抽象化レイヤ（ＮＡＬ）単位のシーケンスを備えることができる。ＮＡＬ単位は、ＮＡＬ単位内のデータの型の指示を含むシンタックス構造とエミュレーション防止ビットとともに必要に応じて散在するローバイトシーケンスペイロード（ＲＢＳＰ）の形態のそのデータを含むバイトである。ＮＡＬ単位の各々は、ＮＡＬ単位ヘッダを含み、ＲＢＳＰをカプセル化する。ＮＡＬ単位ヘッダは、ＮＡＬ単位型コードを示すシンタックス要素を含み得る。ＮＡＬ単位のＮＡＬ単位ヘッダによって指定されるＮＡＬ単位型コードは、ＮＡＬ単位の型を示す。ＲＢＳＰは、ＮＡＬ単位内にカプセル化されている整数個のバイトを含むシンタックス構造であってよい。幾つかの場合において、ＲＢＳＰはゼロビットを含む。
【００６３】
[0072]異なる型のＮＡＬ単位は、異なる種類のＲＢＳＰをカプセル化することができる。例えば、異なる型のＮＡＬ単位は、ビデオパラメータセット（ＶＰＳ）、シーケンスパラメータセット（ＳＰＳ）、ピクチャパラメータセット（ＰＰＳ）、コード化されたスライス、補足拡張情報（supplemental enhancement information）（ＳＥＩ）などに対して異なるＲＢＳＰをカプセル化することができる。ビデオコード化データに対してＲＢＳＰをカプセル化するＮＡＬ単位は（パラメータセットとＳＥＩメッセージとに対するＲＢＳＰとは反対に）ビデオコード化レイヤ（ＶＣＬ）ＮＡＬ単位と称され得る。
【００６４】
[0073]ＨＥＶＣでは、ＳＰＳは、コード化ビデオシーケンス（ＣＶＳ）の全てのスライスに適用される情報を含み得る。ＣＶＳはピクチャのシーケンスを備え得る。ＨＥＶＣでは、ＣＶＳは、瞬間復号リフレッシュ（ＩＤＲ）ピクチャ、又はリンク切断アクセス（ＢＬＡ）ピクチャ、又はＩＤＲピクチャ又はＢＬＡピクチャではないその後の全てのピクチャを含む、ビットストリーム内の第１のピクチャであるクリーンランダムアクセス（ＣＲＡ）ピクチャから始まるものとしてよい。即ち、ＨＥＶＣでは、ＣＶＳは、復号の順序で、ビットストリーム内の第１のアクセス単位であるＣＲＡアクセス単位、ＩＤＲアクセス単位又はＢＬＡアクセス単位、その後に続く、その後のＩＤＲアクセス単位又はＢＬＡアクセス単位までであってその後のＩＤＲアクセス単位又はＢＬＡアクセス単位を含まない全てのその後のアクセス単位を含む、ゼロ又はそれ以上の非ＩＤＲアクセス単位と非ＢＬＡアクセス単位からなるものとしてよいアクセス単位のシーケンスを備えることができる。ＨＥＶＣでは、アクセス単位は、復号順序が連続しており、丁度１つのコード化されたピクチャを含む、ＮＡＬ単位のセットであり得る。コード化されたピクチャのコード化されたスライスＮＡＬ単位に加えて、アクセス単位はまた、コード化されたピクチャのスライスを含まない他のＮＡＬ単位を含み得る。アクセス単位の復号は常に、復号されたピクチャをもたらす。
【００６５】
[0074]ＶＰＳは、０個以上の（例えば、１つ又は複数の）ＣＶＳ全体に適用されるシンタックス要素を備えるシンタックス構造である。１つ又は複数のＳＰＳは、ＳＰＳがアクティブであるときに同じＶＰＳがアクティブであることを識別する、シンタックス要素を含み得る。そのため、ＶＰＳのシンタックス要素は、ＳＰＳのシンタックス要素よりも一般的に適用可能であり得る。ＰＰＳは、ゼロ又はそれ以上のコード化されたピクチャに適用されるシンタックス要素を備えるシンタックス構造である。ＰＰＳは、ＰＰＳがアクティブであるときにアクティブであるＳＰＳを識別するシンタックス要素を含み得る。スライスのスライスヘッダは、スライスがコード化されているときにアクティブであるＰＰＳを示すシンタックス要素を含み得る。
【００６６】
[0075]ビデオデコーダ３０は、ビデオエンコーダ２０によって生成されたビットストリームを受信することができる。それに加えて、ビデオデコーダ３０は、ビットストリームを解析して、ビットストリームからシンタックス要素を取得することができる。ビデオデコーダ３０は、ビットストリームから取得されたシンタックス要素に少なくとも部分的に基づいてビデオデータのピクチャを再構成することができる。ビデオデータを再構成するプロセスは、一般的に、ビデオエンコーダ２０によって実行されるプロセスに相反するものとしてよい。例えば、ビデオデコーダ３０は、ＰＵの動きベクトルを使用して、現在のＣＵのＰＵに対する予測ブロックを決定することができる。それに加えて、ビデオデコーダ３０は、現在のＣＵのＴＵに関連付けられている係数ブロックを逆量子化することができる。ビデオデコーダ３０は、係数ブロックに対して逆変換を実行し、現在のＣＵのＴＵに関連付けられている変換ブロックを再構成することができる。ビデオデコーダ３０は、現在のＣＵのＰＵに対する予測ブロックのサンプルを現在のＣＵのＴＵの変換ブロックの対応するサンプルに加えることによって現在のＣＵのコード化ブロックを再構成することができる。ピクチャの各ＣＵに対してコード化ブロックを再構成することによって、ビデオデコーダ３０は、ピクチャを再構成することができる。
【００６７】
[0076]幾つかの例では、ビデオエンコーダ２０は、マージ／スキップモード又は高度動きベクトル予測（ＡＭＶＰ）モードを使用するＰＵの動き情報を信号伝達することができる。言い換えれば、ＨＥＶＣでは、動きパラメータの予測に２つのモードがあり、１つはマージ／スキップモードであり、もう１つはＡＭＶＰである。動き予測は、１つ又は複数の他のブロックの動き情報に基づくブロック（例えば、ＰＵ）の動き情報の決定を備え得る。ＰＵの動き情報（即ち、動きパラメータ）は、ＰＵの動きベクトル（複数可）と、ＰＵの基準インデックス（複数可）と、１つ又は複数の予測方向指標とを含み得る。
【００６８】
[0077]ビデオエンコーダ２０が、マージモードを使用して現在のＰＵの動き情報を信号伝達する場合、ビデオエンコーダ２０は、マージ候補リストを生成する。言い換えれば、ビデオエンコーダ２０は、動きベクトル予測因子リスト構成プロセスを実行することができる。マージ候補リストは、現在のＰＵに空間的又は時間的に隣接するＰＵの動き情報を示すマージ候補のセットを含む。即ち、マージモードでは、候補が空間的隣接ブロックと時間的隣接ブロックとからのものであり得る動きパラメータ（例えば、基準インデックス、動きベクトルなど）の候補リストが構成され得る。
【００６９】
[0078]更に、マージモードでは、ビデオエンコーダ２０は、マージ候補リストからマージ候補を選択することができ、選択されたマージ候補によって示されている動き情報を現在のＰＵの動き情報として使用することができる。ビデオエンコーダ２０は、選択されたマージ候補のマージ候補リスト内の位置を信号伝達することができる。例えば、ビデオエンコーダ２０は、選択されたマージ候補の候補リスト内の位置を示すインデックス（即ち、マージ候補インデックス）を送信することによって、選択された動きベクトルパラメータを信号伝達することができる。ビデオデコーダ３０は、ビットストリームから、インデックスを取得して候補リストに入れることができる（即ち、マージ候補インデックス）。それに加えて、ビデオデコーダ３０は、同じマージ候補リストを生成することができ、マージ候補インデックスに基づいて、選択されたマージ候補を決定することができる。次いで、ビデオデコーダ３０は、選択されたマージ候補の動き情報を使用して、現在のＰＵに対する予測ブロックを生成することができる。即ち、ビデオデコーダ３０は、候補リストインデックスに少なくとも部分的に基づいて、候補リスト内の選択された候補を決定することができ、ここにおいて、選択された候補は、現在のＰＵに対する動きベクトルを指定する。このようにして、デコーダ側では、インデックスが復号された後、インデックスが指し示すところの対応するブロックの全てのパラメータは現在ＰＵによって継承され得る。
【００７０】
[0079]スキップモードは、マージモードに似ている。スキップモードでは、ビデオエンコーダ２０とビデオデコーダ３０とは、ビデオエンコーダ２０とビデオデコーダ３０とがマージモードでマージ候補リストを使用する同じ方法でマージ候補リストを生成し、使用する。しかしながら、ビデオエンコーダ２０が、スキップモードを使用して現在のＰＵの動き情報を信号伝達する場合、ビデオエンコーダ２０は、現在のＰＵに対する残差データを信号伝達しない。従って、ビデオデコーダ３０は、残差データを使用することなく、マージ候補リスト内の選択された候補の動き情報によって示される基準ブロックに基づいてＰＵに対する予測ブロックを決定することができる。
【００７１】
[0080]ＡＭＶＰモードは、ビデオエンコーダ２０が候補リストを生成することができ、候補リストから方法を選択することができるという点でマージモードに似ている。しかしながら、ビデオエンコーダ２０がＡＭＶＰモードを使用して現在のＰＵのＲｅｆＰｉｃＬｉｓｔＸ（ここで、Ｘは０又は１）動き情報を信号伝達する場合、ビデオエンコーダ２０は、現在のＰＵに対するＲｅｆＰｉｃＬｉｓｔＸ動きベクトル差（ＭＶＤ）と現在のＰＵに対するＲｅｆＰｉｃＬｉｓｔＸ基準インデックスとを信号伝達することを、現在のＰＵに対するＲｅｆＰｉｃＬｉｓｔＸ動きベクトル予測因子（ＭＶＰ）シンタックス要素（例えば、フラグ）を信号伝達することに加えて行うことができる。現在のＰＵに対するＲｅｆＰｉｃＬｉｓｔＸ  ＭＶＰシンタックス要素は、ＡＭＶＰ候補リスト内の選択されたＡＭＶＰ候補の位置を示し得る。現在のＰＵに対するＲｅｆＰｉｃＬｉｓｔＸ  ＭＶＤは、現在のＰＵのＲｅｆＰｉｃＬｉｓｔＸ動きベクトルと選択されたＡＭＶＰ候補の動きベクトルとの間の差を示し得る。この方法で、ビデオエンコーダ２０は、ＲｅｆＰｉｃＬｉｓｔＸ  ＭＶＰシンタックス要素と、ＲｅｆＰｉｃＬｉｓｔＸ基準インデックス値と、ＲｅｆＰｉｃＬｉｓｔＸ  ＭＶＤとを信号伝達することによって現在のＰＵのＲｅｆＰｉｃＬｉｓｔＸ動き情報を信号伝達することができる。言い換えれば、現在のＰＵに対する動きベクトルを表すビットストリーム内のデータは、基準インデックスと、候補リストへのインデックスと、ＭＶＤとを表すデータを含み得る。従って、選択された動きベクトルは、インデックスを候補リスト内に送信することによって信号伝達され得る。それに加えて、基準インデックス値と動きベクトル差とも信号伝達され得る。
【００７２】
[0081]更に、現在のＰＵの動き情報が、ＡＭＶＰモードを使用して信号伝達される場合、ビデオデコーダ３０は、ビットストリームから、現在のＰＵに対するＭＶＤと、ＭＶＰシンタックス要素とを取得することができる。ビデオデコーダ３０は、同じＡＭＶＰ候補リストを生成することができ、ＭＶＰシンタックス要素に基づいて、選択されたＡＭＶＰ候補を決定することができる。言い換えれば、ＡＭＶＰでは、各動き仮説に対する動きベクトル予測因子の候補リストは、コード化された基準インデックスに基づいて導出される。前述のように、このリストは、同じ基準インデックスに関連付けられている隣接ブロックの動きベクトル、更には時間的基準ピクチャ内の同一位置配置ブロックの隣接ブロックの動きパラメータに基づいて導出される時間的動きベクトル予測因子を含み得る。ビデオデコーダ３０は、ＭＶＤを選択されたＡＭＶＰ候補によって示されている動きベクトルに加えることによって現在のＰＵの動きベクトルを復元することができる。即ち、ビデオデコーダ３０は、選択されたＡＭＶＰ候補とＭＶＤとによって示されている動きベクトルに基づいて、現在のＰＵの動きベクトルを決定することができる。次いで、ビデオデコーダ３０は、現在のＰＵの１つ又は複数の復元された動きベクトルを使用して、現在のＰＵに対する予測ブロックを生成することができる。
【００７３】
[0082]ビデオコーダが現在のＰＵに対する統合候補リスト又はＡＭＶＰ候補リストを生成するとき、ビデオコーダは、現在のＰＵに空間的に隣接する位置を包含するＰＵ（即ち、空間的隣接ＰＵ）の動き情報に基づいて１つ又は複数の候補を導出することができ、ビデオコーダは、現在のＰＵに時間的に隣接するＰＵの動き情報に基づいて１つ又は複数の候補を導出することができる。本開示では、ＰＵ（又は他のタイプのブロック）は、ＰＵと関連付けられる予測ブロック（又はブロックと関連付けられる他のタイプのサンプルブロック）がある位置を含む場合、その位置を「包含する」と言われ得る。更に、本開示では、第１のＰＵの予測ブロックが第２のＰＵの予測ブロックに対してピクチャ中で隣接しているとき、第１のＰＵは第２のＰＵに空間的に隣接し得る。候補リストは、同じ基準インデックスに関連付けられている隣接ブロックの動きベクトル、更には時間的基準ピクチャ内のブロックの動きパラメータ（即ち、動き情報）に基づいて導出される時間的動きベクトル予測因子を含み得る。
【００７４】
[0083]図２は、現在のＰＵ４０に関する例示的な空間的隣接ＰＵを示す概念図である。図２の例では、空間的隣接ＰＵは、Ａ０、Ａ１、Ｂ０、Ｂ１、及びＢ２として示されている配置をカバーするＰＵであるものとしてよい。言い換えれば、現在のＰＵ４０とその空間的隣接ＰＵとの間の例示的な関係は図２に示されている。
【００７５】
[0084]空間的隣接要素ＰＵに関して、次のシンボルが定義され得る。  
ルーマ配置（ｘＰ，ｙＰ）は、現在のピクチャの左上のサンプルに関する現在のＰＵの左上のルーマサンプルを指定するために使用される。  
変数ｎＰＳＷとｎＰＳＨとは、ルーマに対するＰＵの幅と高さとを表す。  
現在のピクチャの左上のサンプルに関する現在のＰＵ  Ｎの左上のルーマサンプルは、（ｘＮ，ｙＮ）である。  
（ｘＮ，ｙＮ）（ＮはＡ０、Ａ１、Ｂ０、Ｂ１、又はＢ２で置き換えられる）は、（ｘＰ−１，ｙＰ＋ｎＰＳＨ）、（ｘＰ−１，ｙＰ＋ｎＰＳＨ−１）、（ｘＰ＋ｎＰＳＷ，ｙＰ−１）、（ｘＰ＋ｎＰＳＷ−１，ｙＰ−１）、又は（ｘＰ−１，ｙＰ−１）としてそれぞれ定義される。
【００７６】
[0085]現在のＰＵに時間的に隣接するＰＵ（即ち、現在のＰＵと異なる時間インスタンスに関連付けられているＰＵ）の動き情報に基づくマージ候補リスト又はＡＭＶＰ候補リスト内の候補は、ＴＭＶＰと称され得る。ＴＭＶＰは、ＨＥＶＣのコード化効率を改善するために使用され、他のコード化ツールとは異なってもよく、ＴＭＶＰは、復号ピクチャバッファ内のピクチャ（例えば、基準ピクチャリスト内のピクチャ）の動きベクトルにアクセスする必要がある場合がある。
【００７７】
[0086]ＴＭＶＰを決定するために、ビデオコーダは、現在のＰＵと同一位置配置ＰＵを含む基準ピクチャを最初に識別することができる。言い換えれば、ビデオコーダは、所謂「同一位置配置ピクチャ」を識別することができる。現在のピクチャの現在のスライスがＢスライス（即ち、双方向にインター予測されたＰＵを含むことが許されているスライス）である場合、ビデオエンコーダ２０は、スライスヘッダで、同一位置配置ピクチャがＲｅｆＰｉｃＬｉｓｔ０からのものであるか又はＲｅｆＰｉｃＬｉｓｔ１からのものであるかを示すシンタックス要素（例えば、ｃｏｌｌｏｃａｔｅｄ＿ｆｒｏｍ＿ｌ０＿ｆｌａｇ）を信号伝達することができる。言い換えれば、ＴＭＶＰの使用が現在のスライスに対して有効化され、現在のスライスがＢスライス（例えば、双方向にインター予測されたＰＵを含むことが許されているスライス）であるときに、ビデオエンコーダ２０は、スライスヘッダでシンタックス要素（例えば、ｃｏｌｌｏｃａｔｅｄ＿ｆｒｏｍ＿ｌ０＿ｆｌａｇ）を信号伝達して、同一位置配置ピクチャがＲｅｆＰｉｃＬｉｓｔ０にあるか、又はＲｅｆＰｉｃＬｉｓｔ１にあるかを示すことができる。
【００７８】
[0087]スライスヘッダ内のシンタックス要素（例えば、ｃｏｌｌｏｃａｔｅｄ＿ｒｅｆ＿ｉｄｘ）は、識別された基準ピクチャリスト内の同一位置配置ピクチャを示すものとしてよい。こうして、ビデオデコーダ３０が、同一位置配置ピクチャを含む基準ピクチャリストを識別した後、ビデオデコーダ３０は、スライスヘッダで信号伝達され得る、ｃｏｌｌｏｃａｔｅｄ＿ｒｅｆ＿ｉｄｘを使用して、識別された基準ピクチャリスト内の同一位置配置ピクチャを識別することができる。ビデオコーダは、同一位置配置ピクチャをチェックすることによって同一位置配置ＰＵを識別することができる。ＴＭＶＰは、右下のＰＵ同じ位置にあるＰＵの動き情報と、同じ位置にあるＰＵの中心ＰＵの動き情報のいずれかを示し得る。
【００７９】
[0088]ビデオコーダが、時間的基準ピクチャ内のＴＭＶＰの動きベクトルを指定する動きベクトル候補（例えば、ＡＭＶＰ候補リストのマージリスト内の候補）を生成する場合、ビデオコーダは、時間的基準ピクチャの時間的配置（ＰＯＣ値によって反映される）に基づいてＴＭＶＰの動きベクトルを拡大縮小することができる。言い換えれば、ビデオコーダは、現在のピクチャと基準ピクチャとの間のＰＯＣ距離に基づいて動きベクトル候補の動きベクトルを拡大縮小することができる。例えば、ビデオコーダが、第１のピクチャと第２のピクチャとの間のＰＯＣ距離に基づいて動きベクトルを拡大縮小する場合、ビデオコーダは、第１のピクチャのＰＯＣ値と第２のピクチャのＰＯＣ値との間の差が、第１のピクチャのＰＯＣ値と第２のピクチャのＰＯＣ値との間の差が小さいときよりも大きい場合に、より大きい量だけ動きベクトルの大きさを増加させることができる。
【００８０】
[0089]ＴＭＶＰから導出される時間的統合候補に対する全てのあり得る参照ピクチャリストのターゲット参照インデックスは、常に０に設定され得る。ターゲット参照インデックスは、動き補償のために使用される参照ピクチャを特定することができる。しかしながら、ＡＭＶＰでは、全てのあり得る参照ピクチャのターゲット参照インデックスは、復号された参照インデックスに等しく設定される。ＨＥＶＣでは、ＳＰＳはフラグ（例えば、ｓｐｓ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅ＿ｆｌａｇ）を含んでよく、ｓｐｓ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅ＿ｆｌａｇが１に等しく設定されるとき、スライスヘッダはフラグ（例えば、ｐｉｃ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅ＿ｆｌａｇ）を含んでよい。ある特定のピクチャに対してｐｉｃ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅ＿ｆｌａｇとｔｅｍｐｏｒａｌ＿ｉｄの両方が０に等しいとき、復号順序においてその特定のピクチャの前にあるピクチャからの動きベクトルは、その特定のピクチャ、又は復号順序でその特定のピクチャの後にあるピクチャの復号において、ＴＭＶＰとして使用されない。
【００８１】
[0090]本開示の技法は、ＭＶ−ＨＥＶＣ及び３Ｄ−ＨＥＶＣを含む、マルチビューコード化及び／又は３ＤＶの規格及び仕様に適用可能である可能性がある。ＭＶ−ＨＥＶＣでは、ＨＥＶＣにおいてＣＵレベル又はＰＵレベルにあるモジュールが再設計される必要がないように、高レベルシンタックス（ＨＬＳ）の変更のみがあり得る。このことは、ＨＥＶＣのために構成されたモジュールがＭＶ−ＨＥＶＣのために再使用されることを可能にし得る。３Ｄ−ＨＥＶＣでは、テクスチャビューと深度ビューの両方に対する、ＣＵ及び／又はＰＵレベルのコード化ツールを含む新たなコード化ツールが、含まれサポートされ得る。
【００８２】
[0091]ＨＥＶＣに対する異なるコーデック拡張（例えば、ＭＶ−ＨＥＶＣ、３Ｄ−ＨＥＶＣ、ＳＨＶＣなど）が、ＨＥＶＣにおいて定義される様々なシンタックス構造に対する異なる拡張を定義することができる。シンタックス構造に対する拡張は、コーデック拡張に固有のシンタックス要素を含み得る。例えば、ＭＶ−ＨＥＶＣは、ＶＰＳに対する拡張を定義することができ、３Ｄ−ＨＥＶＣは、ＶＰＳに対する異なる拡張を定義することができる。
【００８３】
[0092]ＭＶ−ＨＥＶＣ及び３Ｄ−ＨＥＶＣで定義されるようなマルチビューコード化では、異なる視点からの同じシーンの複数のビューがあり得る。マルチビューコード化及び３ＤＶコード化の状況では、同じ時間インスタンスに対応するピクチャのセットを指すために「アクセス単位」という用語が使用される。具体的には、ＭＶ−ＨＥＶＣ及び３Ｄ−ＨＥＶＣでは、アクセス単位は、復号順序が連続しており１つ又は複数のビュー成分からなる丁度１つのコード化されたピクチャを含む、ＮＡＬ単位のセットであり得る。コード化されたピクチャのコード化されたスライスＮＡＬ単位に加えて、アクセス単位はまた、コード化されたピクチャのスライスを含まない他のＮＡＬ単位を含み得る。幾つかの例では、アクセス単位の復号は常に、１つ又は複数の復号されたビュー成分からなる１つの復号されたピクチャをもたらす。従って、ビデオデータは、時間とともに生じる一連のアクセス単位として概念化され得る。「ビュー成分」は、単一のアクセス単位中のビューのコード化された表現であり得る。ビュー成分は、テクスチャビュー成分と深度ビュー成分とを備え得る。本開示では、「ビュー」は、同じビュー識別子と関連付けられたビュー成分のシーケンスを指すことがある。
【００８４】
[0093]テクスチャビュー成分（即ち、テクスチャピクチャ）は、単一のアクセス単位中のビューのテクスチャのコード化された表現であり得る。テクスチャビューは、ビュー順序インデックスの同一の値と関連付けられるテクスチャビュー成分のシーケンスであり得る。ビューのビュー順序インデックスは、他のビューに対するビューのカメラ位置を示し得る。深度ビュー成分（即ち、深度ピクチャ）は、単一のアクセス単位中のビューの深度のコード化された表現であり得る。深度ビューは、ビュー順序インデックスの同一の値と関連付けられる深度ビュー成分のシーケンスであり得る。
【００８５】
[0094]マルチビューコード化、３ＤＶコード化、及びスケーラブルビデオコード化では、ビットストリームは複数のレイヤを有し得る。ＭＶ−ＨＥＶＣ及び３Ｄ−ＨＥＶＣで定義されるようなマルチビューコード化及び３ＤＶコード化では、レイヤは異なるビューに対応し得る。ビデオデコーダ（例えば、ビデオデコーダ３０）が、レイヤと関連付けられるピクチャを任意の他のレイヤ中のピクチャとは無関係に復号することができる場合、ビューは「ベースレイヤ」（又は「ベースビュー」）と呼ばれ得る。レイヤの復号が１つ又は複数の他のレイヤと関連付けられるピクチャ（例えば、ビュー）の復号に依存する場合、そのレイヤは非ベースレイヤ（例えば、非ベースビュー）と呼ばれ得る。
【００８６】
[0095]ＳＶＣでは、ベースレイヤ以外のレイヤは、「拡張レイヤ」と呼ばれることがあり、ビットストリームから復号されるビデオデータの視覚的品質を向上させる情報を提供し得る。スケーラブルビデオコード化（例えば、ＳＨＶＣ）では、「レイヤ表現」は、単一のアクセス単位中の空間レイヤのコード化された表現であり得る。説明を簡単にするために、本開示は、ビュー成分及び／又はレイヤ表現を「ビュー成分／レイヤ表現」と呼び得る。
【００８７】
[0096]レイヤを実装するために、ＮＡＬ単位のヘッダは、ｎｕｈ＿ｒｅｓｅｒｖｅｄ＿ｚｅｒｏ＿６ｂｉｔｓシンタックス要素を含み得る。異なる値を指定するｎｕｈ＿ｒｅｓｅｒｖｅｄ＿ｚｅｒｏ＿６ｂｉｔシンタックス要素を有するＮＡＬ単位は、ビットストリームの異なる「レイヤ」に属す。そこで、マルチビューコード化、３ＤＶ、又はＳＶＣでは、ＮＡＬ単位のｎｕｈ＿ｒｅｓｅｒｖｅｄ＿ｚｅｒｏ＿６ｂｉｔｓシンタックス要素は、ＮＡＬ単位のレイヤ識別子（即ち、レイヤＩＤ）を指定する。幾つかの例では、ＮＡＬ単位のｎｕｈ＿ｒｅｓｅｒｖｅｄ＿ｚｅｒｏ＿６ｂｉｔｓシンタックス要素は、ＮＡＬ単位がマルチビューコード化、３ＤＶコード化、又はＳＶＣにおけるベースレイヤに関係する場合に０に等しい。ビットストリームのベースレイヤ内のデータは、ビットストリームの他のレイヤ内のデータを参照することなく復号され得る。ＮＡＬ単位が、マルチビューコード化、３ＤＶ、又はＳＶＣにおけるベースレイヤに関係しない場合、ｎｕｈ＿ｒｅｓｅｒｖｅｄ＿ｚｅｒｏ＿６ｂｉｔｓシンタックス要素は、非ゼロの値を有し得る。上で示されているように、マルチビューコード化と３ＤＶコード化とにおいて、ビットストリームの異なるレイヤは、異なるビューに対応し得る。
【００８８】
[0097]更に、レイヤ内の幾つかのビュー成分／レイヤ表現は、同じレイヤ内の他のビュー成分／レイヤ表現とは無関係に復号され得る。そこで、レイヤの幾つかのビュー成分／レイヤ表現のデータをカプセル化するＮＡＬ単位は、レイヤ内の他のビュー成分／レイヤ表現の復号性に影響を及ぼすことなくビットストリームから取り除かれ得る。そのようなビュー成分／レイヤ表現のデータをカプセル化しているＮＡＬ単位を取り除くことで、ビットストリームのフレームレートを下げることができる。レイヤ内の他のビュー成分／レイヤ表現を参照することなく復号され得るレイヤ内のビュー成分／レイヤ表現のサブセットは、本明細書では「サブレイヤ」又は「時間的サブレイヤ」と称され得る。
【００８９】
[0098]ＮＡＬ単位は、ＮＡＬ単位の時間的識別子を指定するｔｅｍｐｏｒａｌ＿ｉｄシンタックス要素を含み得る。ＮＡＬ単位の時間的識別子は、ＮＡＬ単位が属すサブレイヤを識別する。こうして、ビットストリームの各サブレイヤは、異なる時間的識別子を有し得る。一般に、第１のＮＡＬ単位の時間的識別子が、第２のＮＡＬ単位の時間的識別子より小さい場合、第１のＮＡＬ単位によってカプセル化されているデータは、第２のＮＡＬ単位によってカプセル化されているデータを参照することなく復号され得る。
【００９０】
[0099]マルチビューコード化は、ビュー間予測をサポートすることができる。ビュー間予測は、Ｈ．２６４／ＡＶＣ、ＨＥＶＣ、又は他のビデオコード化仕様で使用されるインター予測に類似しており、同じシンタックス要素を使用することができる。しかしながら、ビデオコーダが、現在のブロック（マクロブロック又はＰＵなど）に対してビュー間予測を実行する場合、ビデオコーダは、基準ピクチャとして、現在のブロックと同じアクセス単位内にあるが、ビューが異なる、ピクチャを使用することができる。言い換えれば、マルチビューコード化では、ビュー間予測は、同じアクセス単位の異なるビューで撮影されたピクチャ間で実行され（即ち、同じ時間インスタンス内で）、これによりビュー間の相関を取り除く。対照的に、従来のインター予測は、異なるアクセス単位内のピクチャのみを基準ピクチャとして使用する。
【００９１】
[0100]従って、非ベースビュー中のピクチャ（即ち、現在のピクチャ）をコード化するとき、ビデオコーダ（ビデオエンコーダ２０又はビデオデコーダ３０のような）は、参照ピクチャリスト中にビュー間参照ピクチャを含め得る。ビュー間参照ピクチャは、現在のピクチャとは異なるビューの中に、また、現在のピクチャと同じ時間インスタンス（即ち、アクセス単位）の中にある。ビデオコーダは、参照ピクチャリストの任意の位置にビュー間予測参照ピクチャを挿入することができる。言い換えれば、ビュー間予測でコード化されたピクチャは、他の非ベースビューのビュー間予測に対して基準ピクチャリスト内に追加され得る。
【００９２】
[0101]図３は、マルチビューコード化のための例示的な予測構造体を示す概念図である。図３のマルチビュー予測構造体は、時間的及びビュー間予測を含む。図３の例では、各正方形は、ビューコンポーネントに対応する。図３の例では、アクセス単位はＴ０．．．Ｔ１１のラベルが付けられ、ビューはＳ０．．．Ｓ７のラベルが付けられている。「Ｉ」のラベルが付けられている正方形は、イントラ予測されたビューコンポーネントである。「Ｐ」のラベルが付けられている正方形は、片方向インター予測されたビューコンポーネントである。「Ｂ」と「ｂ」のラベルが付けられている正方形は、双方向インター予測されたビューコンポーネントである。「ｂ」のラベルが付けられた正方形は、「Ｂ」のラベルが付けられた正方形を基準ピクチャとして使用することができる。第１の正方形から第２の正方形に向かう矢印は、第１の正方形がインター予測において第２の正方形に対する基準ピクチャとして利用可能であることを示している。図３の垂直矢印によって示されているように、同じアクセス単位の異なるビュー内のビューコンポーネントは、基準ピクチャとして利用可能であるものとしてよい。アクセス単位の１つのビューコンポーネントを同じアクセス単位の別のビューコンポーネントに対する基準ピクチャとして使用することは、ビュー間予測と称され得る。
【００９３】
[0102]Ｈ．２６４／ＡＶＣのＭＶＣ拡張では、ビュー間予測は視差動き補償によってサポートされ、視差動き補償は、Ｈ．２６４／ＡＶＣ動き補償のシンタックスを使用するが、異なるビュー中のピクチャが参照ピクチャとして使用されることを可能にする。２つのビューのコード化は、Ｈ．２６４／ＡＶＣのＭＶＣ拡張でもサポートされ得る。Ｈ．２６４／ＡＶＣのＭＶＣ拡張の利点の１つは、ＭＶＣエンコーダが、３つ以上のビューを３Ｄビデオ入力として受け取ることができ、ＭＶＣデコーダが、そのようなマルチビュー表現を復号することができるという点である。従って、ＭＶＣデコーダを備えるレンダラは、３つ以上のビューを備える３Ｄビデオコンテンツを予期することができる。
【００９４】
[0103]マルチビュービデオコード化の状況では、２種類の動きベクトルがある。動きベクトルの１つの種類は、時間的基準ピクチャを指す通常の動きベクトルである。通常の時間的動きベクトルに対応するインター予測の種類は、動き補償予測（ＭＣＰ）と称され得る。ビュー間予測基準ピクチャが、動き補償に使用される場合、対応する動きベクトルは、「視差動きベクトル」と称され得る。言い換えれば、視差動きベクトルは、異なるビュー内のピクチャ（即ち、視差基準ピクチャ又はビュー間基準ピクチャ）を指す。視差動きベクトルに対応するインター予測の種類は、「視差補償予測」又は「ＤＣＰ」と称され得る。
【００９５】
[0104]スケーラブルビデオコード化は、本開示で説明されるビュー間予測と同様の方式でレイヤ間予測を実施することができる。一般に、レイヤ間予測は、現在のピクチャのｎｕｈ＿ｌａｙｅｒ＿ｉｄの値とは別の値のｎｕｈ＿ｌａｙｅｒ＿ｉｄを伴う参照ピクチャのデータ要素（例えば、サンプル値又は動きベクトル）に依存する方式の予測である。従って、レイヤ間予測で使用される参照ピクチャは、「レイヤ間参照ピクチャ」と呼ばれ得る。説明を簡単にするために、本開示は、ビュー間参照ピクチャ及び／又はレイヤ間参照ピクチャを、「ビュー／レイヤ間参照ピクチャ」と呼び得る。
【００９６】
[0105]ＭＶ−ＨＥＶＣ及び３Ｄ−ＨＥＶＣは、ビュー間動き予測とビュー間残差予測とを使用して、コード化効率を改善することができる。ビュー間動き予測では、ビデオコーダは、現在のＰＵとは異なるビュー中のＰＵの動き情報に基づいて、現在のＰＵの動き情報を決定する（即ち、予測する）ことができる。言い換えると、現在のＰＵの対応するブロックは視差ベクトルによって特定され、対応するブロックの動きベクトルはＡＭＶＰの追加の候補又は現在のＰＵの統合リストとして使用され得る。加えて、視差ベクトルは、視差動きベクトルに変換され、ＡＭＶＰ又は統合リストに追加され得る。ビュー間残差予測では、ビデオコーダは、現在のＣＵとは異なるビュー中の残差データに基づいて、現在のＣＵの残差ブロックを決定することができる。即ち、ビュー間残差予測において、現在のＣＵの対応するブロックが０ではない残差画素を含む場合、ブロックの残差が現在のＣＵの残差を予測するために使用される。
【００９７】
[0106]ビュー間動き予測とビュー間残差予測とを可能にするために、ビデオコーダは、ブロック（例えば、ＰＵ、ＣＵなど）に対する視差ベクトルを決定することができる。一般に、視差ベクトルは、２つのビューの間の変位の推定量として使用される。ビデオコーダは、ブロックに対する視差ベクトルを使用して、ビュー間動き又は残差予測について別のビュー内に基準ブロックを配置することができるか、又は、ビュー間動き予測のため視差ベクトルを視差動きベクトルに変換し得る。
【００９８】
[0107]Ｌ．Ｚｈａｎｇ他、「３Ｄ−ＣＥ５．ｈ  ｒｅｌａｔｅｄ：  Ａｄｖａｎｃｅｄ  ｒｅｓｉｄｕａｌ  ｐｒｅｄｉｃｔｉｏｎ  ｆｏｒ  ｍｕｌｔｉｖｉｅｗ  ｃｏｄｉｎｇ」、ＩＴＵ−Ｔ  ＳＧ  １６  ＷＰ  ３とＩＳＯ／ＩＥＣ  ＪＴＣ  １／ＳＣ  ２９／ＷＧ  １１とのＪｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｖｅ  Ｔｅａｍ  ｏｎ  ３Ｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  Ｅｘｔｅｎｓｉｏｎ  Ｄｅｖｅｌｏｐｍｅｎｔ、第２回会合：上海、中国、２０１２年１０月１３〜１９日、文書ＪＣＴ３Ｖ−Ｂ００５１（以後「ＪＣＴ３Ｖ−Ｂ００５１」）は、ビュー間残差予測のコード化効率を更に改善するための高度な残差予測（ＡＲＰ）方法を提案した。
【００９９】
[0108]図４は、マルチビュービデオコード化及び３Ｄビデオコード化におけるＡＲＰの例示的な予測構造を示す概念図である。図４は、現在のピクチャ７０、時間的参照ピクチャ７２、視差参照ピクチャ７４、及び時間的視差参照ピクチャ７６という、４つのピクチャを含む。現在のピクチャ７０は、ビューＶ１と関連付けられ、時間インスタンスＴjと関連付けられる。時間的参照ピクチャ７２は、ビューＶ１と関連付けられ、時間インスタンスＴiと関連付けられる。視差参照ピクチャ７４は、ビューＶ０と関連付けられ、時間インスタンスＴjと関連付けられる。時間的視差参照ピクチャ７６は、ビューＶ０と関連付けられ、時間インスタンスＴiと関連付けられる。
【０１００】
[0109]現在のピクチャ７０は、「Ｄc」として示される現在のＰＵを含む。言い換えると、Ｄcは現在のビュー（ビュー１）の中の現在のブロックを表す。Ｄcは、時間的参照ピクチャ７２の中のある位置を示す、時間的動きベクトルＶDを有する。ビデオエンコーダ２０は、時間的動きベクトルＶDによって示される位置と関連付けられるピクチャ７２中のサンプルに基づいて、時間的参照ブロックＤrを決定することができる。従って、Ｄrは時間Ｔiにおける同じビュー（ビュー１）からのＤcの時間的予測ブロックを示し、ＶDはＤcからＤrへの動きを示す。
【０１０１】
[0110]更に、ビデオエンコーダ２０は、Ｄcの視差ベクトルによって示される位置と関連付けられる視差参照ピクチャ７４中のサンプルに基づいて、視差参照ブロックＢcを決定することができる。従って、Ｂcは参照ブロック（即ち、時間Ｔjにおける参照ビュー（ビュー０）の中のＤcの表現）を示す。Ｂcの左上の位置は、導出された視差ベクトルをＤcの左上の位置に加算することによって、導出された視差ベクトルとともに計算され得る。Ｄc及びＢcは、２つの異なるビューにおける同じオブジェクトの投影であり得るので、Ｄc及びＢcは同じ動き情報を共有するはずである。従って、時間Ｔiにおけるビュー０の中のＢcの時間予測ブロックＢrは、ＶDの動き情報を適用することによってＢcから位置決定され得る。
【０１０２】
[0111]ビデオエンコーダ２０は、時間的視差ピクチャ７６の中の時間的視差参照ブロックＢr（Ｂcの予測ブロック）を決定することができる。上で示されたように、時間的視差ピクチャ７６は、Ｂrと同じビュー（即ち、ビューＶ０）と関連付けられ、Ｄrと同じ時間インスタンス（即ち、時間インスタンスＴi）と関連付けられる。ビデオエンコーダ２０は、Ｄcの動きベクトルＶDによって示される位置にあるサンプルに基づいて、Ｂrを決定することができる。従って、Ｂrの左上の位置は、動きベクトルＶDをＢcの左上の位置に加算することによって、再使用される動きベクトルＶDとともに計算され得る。Ｂcの左上の位置は、Ｄcの左上の位置と視差ベクトルとの合計に等しくてよい。従って、Ｂrの左上の位置は、Ｄcの左上の位置と視差ベクトルと動きベクトルＶDの座標の合計に等しくてよい。このようにして、図４において矢印７８によって示されるように、ビデオエンコーダ２０は、Ｂrを決定するための動きベクトルＶDを再使用することができる。
【０１０３】
[0112]更に、ＡＲＰにおいて、第１の残差ブロック中の各サンプルは、Ｄcの中のサンプルとＤrの対応するサンプルとの差を示し得る。第１の残差ブロックは、Ｄcの元の残差ブロックと呼ばれ得る。第２の残差ブロック中の各サンプルは、Ｂcの中のサンプルとＢrの中の対応するサンプルとの差を示し得る。第２の残差ブロックは「残差予測子」と呼ばれ得る。ビデオエンコーダ２０は動きベクトルＶDを使用してＢrを決定するので、残差予測子はＢcの実際の残差データとは異なり得る。
【０１０４】
[0113]ビデオエンコーダ２０が残差予測子を決定した後で、ビデオエンコーダ２０は、重み付け係数によって残差予測子を乗算することができる。言い換えると、ＶDの動き情報を伴うＢcの残差は、重み付け係数によって乗算され、現在の残差のための残差予測子として使用される。重み付け係数は、０、０．５、又は１に等しくてよい。従って、３つの重み付け係数（即ち、０、０．５、及び１）がＡＲＰにおいて使用され得る。ビデオエンコーダ２０が重み付け係数によって残差予測子を乗算した後、残差予測子は、重み付けられた残差予測子と呼ばれ得る。ビデオエンコーダ２０は、最終的な重み付け係数として、現在のＣＵ（即ち、現在のＰＵを含むＣＵ）に対して最小限のレート歪みコストをもたらす重み付け係数を選択することができる。ビデオエンコーダ２０は、ビットストリーム中に、重み付けインデックスを示すデータをＣＵレベルで含め得る。重み付けインデックスは、現在のＣＵに対する最終的な重み付け係数（即ち、重み付けられた残差予測子を生成するために使用された重み付け係数）を示し得る。幾つかの例では、０、１、及び２という重み付けインデックスは、０、１、及び０．５という重み付け係数にそれぞれ対応する。現在のＣＵに対して０という重み付け係数を選択することは、現在のＣＵのＰＵのいずれに対してもＡＲＰを使用しないことと等価である。
【０１０５】
[0114]ビデオエンコーダ２０は次いで、現在のＰＵの最終的な残差ブロックを決定することができる。現在のＰＵの最終的な残差ブロック中の各サンプルは、元の残差ブロック中のサンプルと、重み付けられた残差予測子中の対応するサンプルとの差を示し得る。現在のＣＵ（即ち、現在のＰＵを含むＣＵ）の残差ブロックは、現在のＣＵの他のＰＵの残差ブロックがもしあればそれらとともに、現在のＰＵの最終的な残差ブロックを含み得る。本開示の他の箇所で説明されるように、ビデオエンコーダ２０は、１つ又は複数の変換ブロックの間で、現在のＣＵの残差ブロックを区分することができる。変換ブロックの各々は現在のＣＵのＴＵと関連付けられ得る。各変換ブロックに対して、ビデオエンコーダ２０は、変換ブロックに１つ又は複数の変換を適用して、変換係数ブロックを生成することができる。ビデオエンコーダ２０は、ビットストリーム中に、変換係数ブロックの量子化された変換係数を表すデータを含め得る。
【０１０６】
[0115]従って、ＡＲＰでは、２つのビューの残差の間での高い相関を確実にするために、ビデオエンコーダ２０は、現在のＰＵの動きを、参照ビューピクチャ中の対応するブロックに適用して、ビュー間残差予測のために使用されるべきベースビュー中の残差を生成することができる。このようにして、現在のＰＵ及び参照ビュー中の対応する参照ブロックに対して、動きが揃えられる。その上、予測誤差が更に減るように、適応重み付け係数が残差信号に適用される。
【０１０７】
[0116]現在のＰＵが双予測される場合、ビデオエンコーダ２０は同様の処理を実行することができる。例えば、ビデオエンコーダ２０は、ＲｅｆＰｉｃＬｉｓｔ０時間的視差参照ブロックとＲｅｆＰｉｃＬｉｓｔ１時間的視差参照ブロックとを決定するために、現在のＰＵのＲｅｆＰｉｃＬｉｓｔ０動きベクトルとＲｅｆＰｉｃＬｉｓｔ１動きベクトルの両方を使用することができる。ビデオエンコーダ２０は、ＲｅｆＰｉｃＬｉｓｔ０時間的視差参照ブロックとＲｅｆＰｉｃＬｉｓｔ１時間的視差参照ブロックのサンプルを補間することによって、予測ブロックを決定することができる。ビデオエンコーダ２０は、上で説明された方式でこの予測ブロックを使用することができる。ビデオデコーダ３０は、双予測されたＰＵに対してＡＲＰを実行するとき、同様の処理を実行することができる。例えば、ビデオデコーダ３０は、上で説明された見本の方式で、現在のＰＵの予測ブロックと重み付けられた残差予測子とを決定することができる。ビデオデコーダ３０は、ビットストリーム中で信号伝達される要素に基づいて、現在のＰＵの最終的な残差ブロックを決定することができる。ビデオデコーダ３０は次いで、現在のＰＵの最終的な残差ブロックと、現在のＰＵの予測ブロックと、重み付けられた残差予測子とを加算することによって、現在のＰＵの予測ブロックを再構築することができる。
【０１０８】
[0117]幾つかの例では、ビデオコーダは、隣接ブロックベース視差ベクトル（ＮＢＤＶ）の方法を使用して、ブロックに対する視差ベクトルを導出することができる。３Ｄ−ＨＥＶＣでは、最初に、Ｌ．  Ｚｈａｎｇら、「３Ｄ−ＣＥ５．ｈ：  Ｄｉｓｐａｒｉｔｙ  ｖｅｃｔｏｒ  ｇｅｎｅｒａｔｉｏｎ  ｒｅｓｕｌｔｓ」、ＩＴＵ−Ｔ  ＳＧ  １６  ＷＰ  ３とＩＳＯ／ＩＥＣ  ＪＴＣ  １／ＳＣ  ２９／ＷＧ  １１との３Ｄビデオコード化拡張開発に関する共同チーム、第１回会合：ストックホルム、スウェーデン、１６−２０、２０１２年７月、文書ＪＣＴ３Ｖ−Ａ００９７（これ以降、「ＪＣＴ３Ｖ−Ａ００９７」）で提案されているＮＢＤＶ導出プロセスを採用した。ＮＢＤＶ導出プロセスは、それ以来、更に適応がなされている。例えば、Ｓｕｎｇら、「３Ｄ−ＣＥ５．ｈ：  Ｓｉｍｐｌｉｆｉｃａｔｉｏｎ  ｏｆ  ｄｉｓｐａｒｉｔｙ  ｖｅｃｔｏｒ  ｄｅｒｉｖａｔｉｏｎ  ｆｏｒ  ＨＥＶＣ−ｂａｓｅｄ  ３Ｄ  ｖｉｄｅｏ  ｃｏｄｉｎｇ」、ＩＴＵ−Ｔ  ＳＧ  １６  ＷＰ  ３とＩＳＯ／ＩＥＣ  ＪＴＣ  １／ＳＣ  ２９／ＷＧ  １１との３Ｄビデオコード化拡張開発に関する共同チーム、第１回会合：ストックホルム、スウェーデン、１６−２０、２０１２年７月、文書ＪＣＴ３Ｖ−Ａ０１２６（これ以降、「ＪＣＴ３Ｖ−Ａ０１２６」）において簡素化されたＮＢＤＶとともに暗黙的視差ベクトル（ＩＤＶ）が含まれた。更に、Ｋａｎｇら、「３Ｄ−ＣＥ５．ｈ  ｒｅｌａｔｅｄ：Ｉｍｐｒｏｖｅｍｅｎｔｓ  ｆｏｒ  ｄｉｓｐａｒｉｔｙ  ｖｅｃｔｏｒ  ｄｅｒｉｖａｔｉｏｎ」、ＩＴＵ−Ｔ  ＳＧ  １６  ＷＰ  ３とＩＳＯ／ＩＥＣ  ＪＴＣ  １／ＳＣ  ２９／ＷＧ  １１とのＪｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｖｅ  Ｔｅａｍ  ｏｎ  ３Ｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  Ｅｘｔｅｎｓｉｏｎ  Ｄｅｖｅｌｏｐｍｅｎｔ、第２回会合：上海、中国、２０１２年１０月１３〜１９日、文書ＪＣＴ３Ｖ−Ｂ００４７（以後「ＪＣＴ３Ｖ−Ｂ００４７」）では、ＮＢＤＶ導出処理は、復号ピクチャバッファに記憶されているＩＤＶを除去することによって更に簡略化されるが、ランダムアクセスピクチャ（ＲＡＰ）ピクチャ選択によるコード化利得に関する改善ももたらす。
【０１０９】
[0118]ＮＢＤＶ導出処理は、空間的及び時間的に隣接するブロックからの視差動きベクトルを使用して、現在のブロックの視差ベクトルを導出する。隣接ブロック（例えば、現在のブロックに空間的又は時間的に隣接するブロック）は、ビデオコード化において殆んど同じ動き情報と視差情報とを共有する可能性が高いので、現在のブロックは、現在のブロックの視差ベクトルの予測子として、隣接ブロックにおける動きベクトル情報を使用することができる。言い換えると、隣接ブロックはビデオコード化において殆んど同じ動き情報／視差情報を共有するので、現在のブロックは、コード化利得を改善するための良い予測子として、隣接ブロックにおける動きベクトル情報を使用することができる。この考えに従って、ＮＢＤＶ導出処理は、異なるビューにおける視差ベクトルを推定するために隣接する視差情報を使用する。
【０１１０】
[0119]ビデオコーダが現在のブロックの視差ベクトルを決定するためにＮＢＤＶ導出処理を実行するとき、ビデオコーダは隣接ブロックの２つのセットを利用することができる。一方のセットは空間的隣接ブロックからのものであり、他方のセットは時間的隣接ブロックからのものである。言い換えると、幾つかの空間的隣接ブロック及び時間的隣接ブロックは最初に定義される。ビデオコーダは次いで、現在のブロックと隣接ブロックとの間の相関付けの優先順位によって決定される、事前に定義された順序で、隣接ブロックの各々を確認することができる。ビデオコーダが候補（即ち、隣接ブロック）中に視差動きベクトルを見つけると、ビデオコーダは、視差動きベクトルを現在のブロックの視差ベクトルへと変換することができる。
【０１１１】
[0120]ＮＢＤＶ導出プロセスの幾つかのバージョンにおいて、ビデオコーダは、視差ベクトル導出に５つの空間的隣接ブロックを使用する。例えば、ビデオコーダは、空間的隣接ブロック、即ち、現在のブロックの左下の空間的隣接ブロックと、左の空間的隣接ブロックと、右上の空間的隣接ブロックと、上の空間的隣接ブロックと、左上の空間的隣接ブロックとをチェックすることができる。ＮＢＤＶ導出プロセスの幾つかのバージョンでは、視差ベクトル導出ブロックに使用されるこれら５つの空間的隣接ブロックは、図２に示されているように配置Ａ０、Ａ１、Ｂ０、Ｂ１、及びＢ２をそれぞれカバーするものとしてよい。幾つかの例では、ＮＢＤＶ導出プロセスで使用される空間的隣接ブロックは、ＨＥＶＣのマージモードで使用されるものと同じである。従って、幾つかのそのような例では、追加のメモリアクセスは不要である。
【０１１２】
[0121]幾つかの例では、ビデオコーダは、空間的隣接ブロックを１つずつ確認することができる。更に、幾つかの例では、５個の空間的隣接ブロックの確認順序は、Ａ1、Ｂ1、Ｂ0、Ａ0、及びＢ2として定義される。
【０１１３】
[0122]更に、上で述べたように、ビデオコーダは、現在のブロック（例えば、現在のＰＵ）に対する視差ベクトルを決定するプロセスの一部として時間的隣接ブロックをチェックすることができる。ビデオコーダが、時間的隣接ブロック（例えば、時間的隣接ＰＵ）をチェックする場合、ビデオコーダは、最初に、候補ピクチャリストの構成プロセスを実行するものとしてよい。ビデオコーダが、候補ピクチャリストの構成プロセスを実行する場合、ビデオコーダは、現在のビュー（即ち、現在のブロックに関連付けられているビュー）に関連付けられている全ての基準ピクチャを候補ピクチャとして取り扱うことができる。更に、ビデオコーダが、候補ピクチャリストの構成プロセスを実行する場合、ビデオコーダは、最初に、候補ピクチャリスト内に所謂「同一位置配置ピクチャ」を挿入し、続いて、候補ピクチャの残りを、基準インデックスの昇順で挿入することができる。即ち、ビデオコーダは、残りの候補ピクチャが現在のピクチャの基準ピクチャリスト（例えば、ＲｅｆＰｉｃＬｉｓｔ０とＲｅｆＰｉｃＬｉｓｔ１）内に出現する順序に従って残りの候補ピクチャを候補ピクチャリスト内に挿入することができる。現在のブロックを含むスライスのスライスヘッダ内の１つ又は複数のシンタックス要素は、同一位置配置ピクチャ（co-located picture）を示すことができる。幾つかの例では、両方の基準ピクチャリスト（例えば、ＲｅｆＰｉｃＬｉｓｔ０とＲｅｆＰｉｃＬｉｓｔ１）内の同じ基準インデックスを有する基準ピクチャがＮＤＢＶ導出プロセスでの使用に利用可能である場合、同一位置配置ピクチャと同じ基準ピクチャリスト内の基準ピクチャは、候補ピクチャリスト内で、他の基準ピクチャに先行する。
【０１１４】
[0123]候補ピクチャリストを生成した後、ビデオコーダは、候補ピクチャリスト内の候補ピクチャ内の候補領域を決定することができる。ビデオコーダは、候補領域を使用して、時間的隣接ブロックを決定することができる。上で示されているように、ビデオコーダは、視差動きベクトル又は時間的隣接ブロックのＩＤＶに基づいて現在ブロックに対する視差ベクトルを導出することができる。幾つかの例では、候補ピクチャリスト中の各候補ピクチャに対して、ビデオコーダは、時間的隣接ブロックを導出するための３つの候補領域を決定することができる。これら３つの候補領域は、次のように定義され得る。  
ＣＰＵ：現在のＰＵ又は現在のＣＵの同一位置配置領域
ＣＬＣＵ：現在のＰＵの同一位置配置領域（co-located region）をカバーする最大コード化単位（ＬＣＵ）
ＢＲ：ＣＰＵの右下の４×４のブロック
[0124]１６×１６のブロックにおけるより小さいブロックは、動き補償の結果と同じ動き情報を共有し得るので、ビデオコーダは、視差ベクトルに対するサンプルブロックを１つだけチェックすればよい。候補領域が、複数の１６×１６のブロックをカバーする場合、ビデオコーダは、ラスタースキャン順序に従って候補領域内の全ての１６×１６のブロックをチェックすることができる。例えば、時間的同一位置配置ブロック（temporally co-located block）に対する動きベクトルは、基準ピクチャの１６×１６のブロック内に格納され、典型的には、ビデオコーダは、４×４のブロックにアクセスして、動きベクトルを見つける。こうして、幾つかの例では、ビデオコーダが、候補ブロックを１６×１６のブロック内に置いた場合、全ての４×４のブロックは、共通動きベクトルを含み、ビデオコーダは、異なる動きベクトルを見つけるために全ての４×４のブロックをチェックする必要はない。他方、候補領域が１６×１６より大きい場合、１６×１６のブロックの外の４×４のブロックは、異なる動きベクトルを含み得る。
【０１１５】
[0125]ビデオコーダが、候補領域（又は候補領域内の１６×１６のブロック）をチェックする場合、ビデオコーダは、候補領域をカバーするＰＵが視差動きベクトルを指定するかどうかを決定することができる。候補領域をカバーするＰＵが、視差動きベクトルを指定する場合、ビデオコーダは、ＰＵの視差動きベクトルに基づいて現在のブロックの視差ベクトルを決定することができる。
【０１１６】
[0126]幾つかの例では、ビデオコーダは、ＮＢＤＶ導出プロセスを実行する一環として優先度ベースの視差ベクトル決定を実行することができる。例えば、ビデオコーダは、ビデオコーダが視差動きベクトルを含む隣接ブロックを識別した後に、ビデオコーダが視差動きベクトルを現在のブロックに対する視差ベクトルに変換するように視差ベクトルを導出することができる。次いで、ビデオコーダは、ビュー間動き予測及び／又はビュー間残差予測に視差ベクトルを使用することができる。幾つかの例では、隣接ブロックのチェック順序は、隣接ブロックと現在のブロックとの間の相関に基づいて定義される。例えば、ビデオコーダは、最初に、空間的隣接ブロックを１つずつチェックし得る。ビデオコーダが視差動きベクトルを識別した後、ビデオコーダは、視差動きベクトルを視差ベクトルとして返す。幾つかの例では、５つの空間的隣接ブロックのチェック順序は、Ａ１、Ｂ１、Ｂ０、Ａ０、及びＢ２として定義される。
【０１１７】
[0127]更に、候補ピクチャリスト内の各候補ピクチャについて、ビデオコーダは、この候補ピクチャにおける３つの候補領域を順にチェックすることができる。３つの領域のチェック順序は、第１の非ベースビューについてはＣＰＵ、ＣＬＣＵ、及びＢＲ、第２の非ベースビューについてはＢＲ、ＣＰＵ、ＣＬＵとして定義される。この例では、第１の非ベースビューに関連付けられているピクチャの復号は、ベースビューに関連付けられているピクチャの復号に依存するが、他のビューに関連付けられているピクチャの復号には依存し得ない。更に、この例では、第２の非ベースビューに関連付けられているピクチャの復号は、ベースビュー、また場合によっては、第１の非ベースビューに関連付けられているピクチャの復号に依存するが、もし存在すれば他のビューに関連付けられているピクチャの復号には依存し得ない。簡単にするため、空間的隣接ブロック内の視差動きベクトルは、空間的視差ベクトル（ＳＤＶ）として表され、時間的隣接ブロック内の視差動きベクトルは、時間的視差ベクトル（ＴＤＶ）として表され得る。
【０１１８】
[0128]ビデオコーダがブロックの動きベクトル（複数可）（即ち、空間的隣接ブロック、候補ピクチャの候補領域、又は候補ピクチャの候補領域の１６×１６のブロック）をチェックする場合、ビデオコーダは、ブロックの動きベクトル（複数可）が視差動きベクトルであるかどうかを決定することができる。ピクチャのブロックの視差動きベクトルは、ピクチャの視差基準ピクチャ内の配置を指している動きベクトルである。所与のピクチャの視差参照ピクチャ（本明細書ではビュー間参照ピクチャとも呼ばれる）は、所与のピクチャと同じアクセス単位と関連付けられるが、所与のピクチャとは異なるビューと関連付けられる、ピクチャであり得る。ビデオコーダが、視差動きベクトルを識別する場合、ビデオコーダは、チェックプロセスを終了することができる。ビデオコーダは、返された視差動きベクトルを視差ベクトルに変換することができ、またビュー間動き予測とビュー間残差予測とに対して視差ベクトルを使用することができる。例えば、ビデオコーダは、視差動きベクトルの水平成分に等しい現在のブロックに対する視差ベクトルの水平成分を設定することができ、視差ベクトルの垂直成分を０に設定することができる。別の例では、ビデオコーダは、視差動きベクトルに等しく視差ベクトルを設定することによって、視差動きベクトルを視差ベクトルに変換することができる。
【０１１９】
[0129]ビデオコーダが空間的隣接ブロック（例えば、空間的隣接ＰＵ）を確認するとき、ビデオコーダはまず、空間的隣接ブロックが視差動きベクトルを有するかどうかを確認することができる。空間的隣接ブロックのいずれもが視差動きベクトルを有しない場合、ビデオコーダは、空間的隣接ブロックのいずれかがＩＤＶを有するかどうかを決定することができる。更に、ビデオコーダが視差動きベクトル又はＩＤＶを特定するとき、ビデオコーダは、特定された視差動きベクトル又はＩＤＶを返すことができる。「暗黙的視差ベクトル」という用語は、ビュー間動き予測又はビュー間残差予測のために使用された視差ベクトルを指し得る。対応するブロックが時間的動き予測によってコード化され得るとしても、ビデオコーダは、１つ又は複数の後続のブロックをコード化する目的で、導出された視差ベクトルを廃棄しない。このようにして、ＩＤＶは、視差ベクトル導出の目的で、ブロックに記憶され得る。
【０１２０】
[0130]空間的隣接ＰＵのいずれかがＩＤＶを有するかどうかをビデオコーダが決定するとき、ビデオコーダは、Ａ0、Ａ1、Ｂ0、Ｂ1、及びＢ2の順序で、空間的隣接ＰＵを確認することができる。従って、ビデオコーダは、視差動きベクトルに対してＡ1、Ｂ1、Ｂ0、Ａ0、及びＢ2の順序で空間的隣接ＰＵを確認し、ＩＤＶに対してＡ0、Ａ1、Ｂ0、Ｂ1、及びＢ2の順序で空間的隣接ＰＵを確認することができる。空間的隣接ＰＵの１つがＩＤＶを有する場合、ＩＤＶは統合／スキップモードとしてコード化され、ビデオコーダは確認処理を終了することができ、現在のブロックの最終的な視差ベクトルとしてＩＤＶを使用することができる。
【０１２１】
[0131]ＮＢＤＶ導出処理を実行することによってビデオコーダが現在のブロックの視差ベクトルを導出することが不可能である場合（即ち、視差ベクトルが見つからない場合）、ビデオコーダは、現在のブロックの視差ベクトルとして０視差ベクトルを使用することができる。０視差ベクトルは、０に等しい水平成分と垂直成分の両方を有する視差ベクトルである。従って、ＮＢＤＶ導出処理が利用不可能な結果を返すときであっても、視差ベクトルを必要とするビデオコーダの他のコード化処理は、現在のブロックに対して０視差ベクトルを使用することができる。幾つかの例では、ＮＢＤＶ導出処理を実行することによってビデオコーダが現在のブロックの視差ベクトルを導出することが不可能である場合、ビデオコーダは、現在のブロックに対するビュー間残差予測を無効にすることができる。しかしながら、ＮＢＤＶ導出処理を実行することによってビデオコーダが現在のブロックの視差ベクトルを導出することが可能かどうかに関係なく、ビデオコーダは、現在のＰＵに対してビュー間動き予測を使用することができる。即ち、全ての事前に定義された隣接ブロックを確認した後で視差ベクトルが見つからない場合、ビュー間動き予測のために０視差ベクトルが使用され得るが、ビュー間残差予測は対応するＣＵに対して無効にされ得る。
【０１２２】
[0132]ビデオコーダがＮＢＤＶ導出処理の一部としてＩＤＶを確認する幾つかの例では、ビデオコーダは次のステップを実行し得るが、他の例では追加のステップも使用され得る。次のステップのどれかで視差ベクトルを見つけた場合、ビデオコーダは、導出プロセスを終了することができる。  
ステップ１：５つの空間的隣接ブロックを、Ａ１、Ｂ１、Ｂ０、Ａ０、及びＢ２の順序でチェックして、視差動きベクトルを見つける。ビデオコーダは、視差動きベクトルを見つけた後、視差動きベクトルを視差ベクトルに変換する。空間的隣接ブロックがＩＤＶを含んでいる場合、ビデオコーダは、それらのＩＤＶフラグを「ＩＤＶ使用済み」とマークし、ＩＤＶフラグの関連する値を格納する。  
ステップ２：時間的動きベクトル予測が有効化されている場合に、次のように適用する。  
ａ）現在のコード化モードがＡＭＶＰである場合、ターゲット基準ピクチャリスト内にあるターゲット基準インデックスを有する基準ピクチャが、同一位置配置ピクチャとして使用される。同一位置配置ピクチャ内の２つのブロックが定義される（即ち、同一位置配置ＰＵ（ＢＲ）の右下のブロックと、同一位置配置ＰＵ（ＣＢ）の中心のブロック）。この例では、ビデオコーダは、次の順序で同一位置配置ピクチャのブロックをチェックする。  
１）ＢＲをチェックして、ＢＲが視差動きベクトルを含んでいるかどうかを確認する。含んでいれば、ビデオコーダは、視差動きベクトルを視差ベクトルに変換する。含んでいなければ、ＢＲがスキップモードとしてコード化され、ＢＲがＩＤＶを含んでいる（即ち、ＩＤＶのフラグが１に等しい）場合、ビデオコーダは、ＢＲを「ＩＤＶ使用済み」とマークし、関連するＩＤＶを格納する。次いで、ビデオコーダは、以下のステップ３を実行するものとしてよい。  
２）ＣＢをチェックして、ＣＢが視差動きベクトルを含んでいるかどうかを確認する。含んでいれば、ビデオコーダは、視差動きベクトルを視差ベクトルに変換する。含んでいなければ、ＢＲがスキップモードとしてコード化され、ＢＲがＩＤＶを含んでいる（即ち、ＩＤＶのフラグが１に等しい）場合、ビデオコーダは、ＢＲを「ＩＤＶ使用済み」とマークし、ビデオコーダは、関連するＩＤＶを格納する。次いで、ビデオコーダは、ステップ３を実行するものとしてよい。  
ｂ）現在のコード化モードがスキップ／マージである場合、ビデオコーダは、適用可能な場合に、各基準ピクチャリスト内の２つの同一位置配置基準ピクチャを使用する。同一位置配置基準ピクチャを示す基準インデックスは、左の隣接ＰＵの基準インデックス又は０に等しいものとしてよい。基準ピクチャリスト０と１との同一位置配置ピクチャの各々について、ビデオコーダは、ステップ２、ａ）１）とａ）２）とのステップを順に実行する。  
ステップ３：５つの空間的隣接ブロックのうちの１つが、スキップモードとしてコード化され、空間的隣接ブロックがＩＤＶを含む（即ち、空間的隣接ブロックが「ＩＤＶ使用済み」とマークされているフラグを有する）場合に、ビデオコーダは、ＩＤＶを視差ベクトルとして返す。この例では、ＩＤＶに対する空間的隣接ブロックのチェック順序は、Ａ０、Ａ１、Ｂ０、Ｂ１、及びＢ２である。  
ステップ４：時間的動きベクトル予測が有効化され、「ＩＤＶ使用済み」とマークされている同一位置配置ピクチャ内に１つのブロック（即ち、ＢＲ又はＣＢ）がある場合、ビデオコーダは、そのブロックに関連付けられているＩＤＶを視差ベクトルに変換する。幾つかの例では、ビデオコーダは、ＩＤＶの水平成分を視差ベクトルの水平成分に等しく設定し、視差ベクトルの垂直成分を０に等しく設定することによって、ＩＤＶを視差ベクトルに変換することができる。他の例では、ビデオコーダは、ＩＤＶに等しく視差ベクトルを設定することによって、ＩＤＶを視差ベクトルに変換することができる。
【０１２３】
[0133]復号ピクチャバッファ（ＤＰＢ）中のＩＤＶにアクセスすることと関連付けられる、メモリ帯域幅と複雑さの要件は大きいことがある。例えば、ビデオコーダは、ＤＰＢからのＩＤＶを記憶し取り出すために、幾つかのメモリアクセスを実行する必要があり得る。従って、ビデオコーダは、低複雑度のＮＢＤＶ導出プロセスを実行するものとしてよい。ビデオコーダは、ビデオコーダが低複雑度のＮＢＤＶ導出プロセスを実行するときに、より少ないブロック候補を考慮する。例えば、ビデオコーダは、ＤＰＢに、ＩＤＶに対する情報を格納することができる。この例では、ＩＤＶに対する情報は、全ての以前にコード化されたピクチャに対するＩＤＶフラグとベクトルとを含み得る。更に、低複雑度のＮＢＤＶ導出プロセスでは、ＤＰＢ内のＩＤＶ候補を取り除くことで、メモリ帯域幅を減らすことができる。言い換えれば、ビデオコーダは、ＩＤＶ関係情報をＤＰＢに格納しない。
【０１２４】
[0134]幾つかの低複雑度のＮＢＤＶ導出プロセスにおいて、ビデオコーダは、上で説明されているＮＢＤＶ導出プロセスよりも少ない、候補ピクチャの候補領域をチェックする。例えば、図５は、時間的候補ピクチャの対応するＰＵにおける時間的隣接要素を示す概念図である。図５の例において、ビデオコーダは、「Ｐｏｓ．Ａ」と「Ｐｏｓ．Ｂ」とによって示されるこの位置をカバーする候補領域をチェックすることができる。更に、幾つかの低複雑度のＮＢＤＶ導出プロセスにおいて、ビデオコーダは、同一位置配置ピクチャとランダムアクセスピクチャのみの候補領域をチェックすることができる。従って、幾つかの例において、同一位置配置ピクチャとランダムアクセスピクチャとは、時間的ブロックのチェックについて考慮される（即ち、図５に示されているような下の下と中心のブロック）。ＨＥＶＣ及び他のビデオコード化仕様では、ランダムアクセスは、ビットストリーム中の第１のコード化されたピクチャではないコード化されたピクチャから始まるビットストリームの復号を指す。ランダムアクセスピクチャの例示的なタイプは、ＩＤＲピクチャ、ＣＲＡピクチャ、及びＢＬＡピクチャを含む。
【０１２５】
[0135]更に、幾つかの低複雑度のＮＢＤＶ導出プロセスにおいて、ビデオコーダは、スライスレベル又はピクチャレベルで候補ピクチャ導出を１回実行することができる。言い換えれば、ビデオコーダは、ピクチャ又はスライスごとに１回ＮＢＤＶ導出プロセスで使用するための候補ピクチャリストを生成することができる。その結果、そのような低複雑度のＮＢＤＶ導出プロセスにおいて、ビデオコーダは、ＰＵレベル又はＣＵレベルで候補ピクチャ導出プロセスをもはや呼び出さない。
【０１２６】
[0136]各々のコード化されたピクチャは、コード化されたピクチャとコード化されたピクチャの後続の（即ち、未来の）ピクチャのいずれかによる参照のために使用され得る全てのピクチャを含む、参照ピクチャセットを有し得る。ビデオコーダは、どのピクチャが未来のピクチャの参照としてのみ使用され得るかを区別することができる。参照ピクチャリストは、現在のピクチャのために使用され得る参照ピクチャセット（「ＲＰＳ」）（即ち「現在のためのＲＰＳ」）中のピクチャに基づいて、従って、未来のピクチャの参照としてのみ使用され得るピクチャに基づかずに、構築され得る。未来のＲＰＳ中のピクチャは、２つの参照ピクチャリスト、ＲｅｆＰｉｃＬｉｓｔ０又はＲｅｆＰｉｃＬｉｓｔ１のいずれにもないことがある。
【０１２７】
[0137]幾つかの例では、ビデオエンコーダ２０が、現在のピクチャの符号化を開始すると、ビデオエンコーダ２０は、現在のピクチャに対して基準ピクチャの５つのサブセット（即ち、基準ピクチャサブセット）を生成し得る。幾つかの例では、これら５つの基準ピクチャサブセットは、ＲｅｆＰｉｃＳｅｔＳｔＣｕｒｒＢｅｆｏｒｅ、ＲｅｆＰｉｃＳｅｔＳｔＣｕｒｒＡｆｔｅｒ、ＲｅｆＰｉｃＳｅｔＳｔＦｏｌｌ、ＲｅｆＰｉｃＳｅｔＬｔＣｕｒｒ、及びＲｅｆＰｉｃＳｅｔＬｔＦｏｌｌである。本開示では、ＲｅｆＰｉｃＳｅｔＳｔＣｕｒｒＢｅｆｏｒｅ、ＲｅｆＰｉｃＳｅｔＳｔＣｕｒｒＡｆｔｅｒ、ＲｅｆＰｉｃＳｅｔＳｔＦｏｌｌにおける基準ピクチャを「短期基準ピクチャ」、「短期ピクチャ」、又は「ＳＴＲＰ」として参照することができる。従って、「短期基準ピクチャ」は、短期基準に使用されているものとして（例えば、ＲｅｆＰｉｃＳｅｔＳｔＣｕｒｒＢｅｆｏｒｅ、ＲｅｆＰｉｃＳｅｔＳｔＣｕｒｒＡｆｔｅｒ、又はＲｅｆＰｉｃＳｅｔＳｔＦｏｌｌであることによって）マークされるピクチャであってよい。本開示では、ＲｅｆＰｉｃＳｅｔＬｔＣｕｒｒとＲｅｆＰｉｃＳｅｔＬｔＦｏｌｌとにおける基準ピクチャを「長期基準ピクチャ」、「長期ピクチャ」、又は「ＬＴＲＰ」として参照することができる。ビデオエンコーダ２０は、各ピクチャに対して５個の参照ピクチャサブセットを再生成し得る。
【０１２８】
[0138]更に、現在のピクチャがＰスライス（即ち、イントラ予測及び単方向インター予測が有効にされるスライス）を備えるとき、ビデオエンコーダ２０は、現在のピクチャのための単一の参照ピクチャリスト（ＲｅｆＰｉｃＬｉｓｔ０）を生成するために、現在のピクチャのＲｅｆＰｉｃＳｔＣｕｒｒＡｆｔｅｒ参照ピクチャサブセット、ＲｅｆＰｉｃＳｔＣｕｒｒＢｅｆｏｒｅ参照ピクチャサブセット、及びＲｅｆＰｉｃＳｔＬｔＣｕｒｒ参照ピクチャサブセットからの参照ピクチャを使用し得る。現在のピクチャがＢスライス（即ち、イントラ予測、単方向インター予測、及び双方向インター予測が有効にされるスライス）を備えるとき、ビデオエンコーダ２０は、現在のピクチャのための２つの参照ピクチャリスト（ＲｅｆＰｉｃＬｉｓｔ０及びＲｅｆＰｉｃＬｉｓｔ１）を生成するために、現在のピクチャのＲｅｆＰｉｃＳｔＣｕｒｒＡｆｔｅｒ参照ピクチャサブセット、ＲｅｆＰｉｃＳｔＣｕｒｒＢｅｆｏｒｅ参照ピクチャサブセット、及びＲｅｆＰｉｃＳｔＬｔＣｕｒｒ参照ピクチャサブセットからの参照ピクチャを使用し得る。ビデオエンコーダ２０は、現在のピクチャの第１のスライスに対するスライスヘッダ内に、現在のピクチャの基準ピクチャサブセットを決定するためにビデオデコーダ３０が使用することができるシンタックス要素を含み得る。ビデオデコーダ３０が、現在のピクチャの現在のスライスを復号する場合、ビデオデコーダ３０は、現在のピクチャの基準ピクチャサブセットを決定し、ＲｅｆＰｉｃＬｉｓｔ０及び／又はＲｅｆＰｉｃＬｉｓｔ１を再生成することができる。
【０１２９】
[0139]上で示されたように、ビデオコーダが現在のピクチャをコード化することを開始すると、ビデオコーダは、現在のピクチャに対する第１の参照ピクチャリスト（即ち、ＲｅｆＰｉｃＬｉｓｔ０）を初期化することができる。更に、現在のピクチャがＢスライスを備える場合、ビデオコーダは、現在のピクチャに対する第２の参照ピクチャリスト（即ち、ＲｅｆＰｉｃＬｉｓｔ１）を初期化することができる。従って、幾つかの例では、ビデオコーダは、現在のビュー成分／レイヤ表現がＢスライス（即ち、双予測スライス）を含む場合にのみ、ＲｅｆＰｉｃＬｉｓｔ１を生成することができる。幾つかの例では、基準ピクチャリスト初期化は、基準ピクチャのピクチャ順序カウント（ＰＯＣ）値の順序に基づいて基準ピクチャメモリ（即ち、復号ピクチャバッファ）内の基準ピクチャをリストに入れる明示的機構である。ＰＯＣ値は、同じコード化されたビデオシーケンス内の他のピクチャの出力順序位置に関する出力順序で関連するピクチャの位置を示す各ピクチャに関連付けられている変数である。
【０１３０】
[0140]ＲｅｆＰｉｃＬｉｓｔ０を生成するために、ビデオコーダ（例えば、ビデオエンコーダ又はビデオデコーダ）は、ＲｅｆＰｉｃＬｉｓｔ０の初期のデフォルトバージョンを生成することができる。幾つかの例では、ＲｅｆＰｉｃＬｉｓｔ０の初期バージョンにおいて、ＲｅｆＰｉｃＳｅｔＳｔＣｕｒｒＢｅｆｏｒｅ中の参照ピクチャが最初に列挙され、ＲｅｆＰｉｃＳｅｔＳｔＣｕｒｒＡｆｔｅｒ中の参照ピクチャがそれに続き、ＲｅｆＰｉｃＳｅｔＬｔＣｕｒｒ中の参照ピクチャがそれに続く。同様に、ＲｅｆＰｉｃＬｉｓｔ１を生成するために、ビデオコーダはＲｅｆＰｉｃＬｉｓｔ１の初期バージョンを生成することができる。幾つかの例では、ＲｅｆＰｉｃＬｉｓｔ１の初期バージョンにおいて、ＲｅｆＰｉｃＳｅｔＳｔＣｕｒｒＡｆｔｅｒ中の参照ピクチャが最初に列挙され、ＲｅｆＰｉｃＳｅｔＳｔＣｕｒｒＢｅｆｏｒｅ中の参照ピクチャがそれに続き、ＲｅｆＰｉｃＳｅｔＬｔＣｕｒｒ中の参照ピクチャがそれに続く。
【０１３１】
[0141]幾つかの例では、ビデオコーダは、ビデオコーダが最終基準ピクチャリスト（即ち、ＲｅｆＰｉｃＬｉｓｔ０とＲｅｆＰｉｃＬｉｓｔ１）を構成した後にＢスライスに対して組み合わされたリスト（例えば、ＲｅｆＰｉｃＬｉｓｔＣ）を構成する。ビデオコーダは、更に１つ又は複数の基準ピクチャリスト修正シンタックス要素が、組み合わされたリストについて存在する場合に、組み合わされたリストを更に修正することができる。
【０１３２】
[0142]ビデオコーダが基準ピクチャリスト（例えば、ＲｅｆＰｉｃＬｉｓｔ０又はＲｅｆＰｉｃＬｉｓｔ１）を初期化した後、ビデオコーダは、基準ピクチャリスト内の基準ピクチャの順序を修正することができる。言い換えれば、ビデオコーダは、基準ピクチャリスト修正（ＲＰＬＭ）プロセスを実行することができる。ビデオコーダは、１つの特定の基準ピクチャが基準ピクチャリスト内の複数の位置に出現し得る場合を含めて、任意の順序で基準ピクチャの順序を修正することができる。従って、基準ピクチャリスト順序変更機構は、ピクチャが初期化リストに属していないとしても、基準ピクチャリスト初期化時にリストに入れられたピクチャの位置を新しい位置に修正するか、又は基準ピクチャを基準ピクチャメモリ内の任意の位置に入れることができる。しかしながら、ピクチャの位置がリストのアクティブな基準ピクチャの数を超える場合、ピクチャは、最終基準ピクチャリストのエントリとみなされない。スライスヘッダは、基準ピクチャリスト内のアクティブな基準ピクチャの数を示す１つ又は複数のシンタックス要素を含み得る。
【０１３３】
[0143]ＲＰＬＭ処理を実施するために、スライスヘッダはＲＰＬＭシンタックス構造（例えば、ｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｍｏｄｉｆｉｃａｔｉｏｎ（））を含み得る。以下の表１は、ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ８で提示されたＲＰＬＭシンタックス構造を示す。
【表１】
0005992640.tif 000003
【０１３４】
[0144]上の表１の例、及び本開示の他のシンタックス表では、ｎが非負の整数であるｕ（ｎ）という形式の記述子を有するシンタックス要素は長さｎの符号なしの値である。更に、ｕ（ｖ）という形式の記述子を有するシンタックス要素は符号なしの可変長の値である。更に、表１に関して、変数ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒは、ＮｕｍＰｏｃＳｔＣｕｒｒＢｅｆｏｒｅ＋ＮｕｍＰｏｃＳｔＣｕｒｒＡｆｔｅｒ＋ＮｕｍＰｏｃＬｔＣｕｒｒに等しく設定される。ＮｕｍＰｏｃＳｔＣｕｒｒＢｅｆｏｒｅは、ＲｅｆＰｉｃＳｅｔＳｔＢｅｆｏｒｅ中の要素の数を示す。ＮｕｍＰｏｃＳｔＣｕｒｒＡｆｔｅｒは、ＲｅｆＰｉｃＳｅｔＳｔＡｆｔｅｒ中の要素の数を示す。ＮｕｍＰｏｃＬｔＣｕｒｒは、ＲｅｆＰｉｃＳｅｔＬｔＣｕｒｒ中の要素の数を示す。
【０１３５】
[0145]表１において、１に等しいｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｍｏｄｉｆｉｃａｔｉｏｎ＿ｆｌａｇ＿ｌ０シンタックス要素は、ＲｅｆＰｉｃＬｉｓｔ０がｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０［ｉ］の値のリストとして明示的に規定されることを示す。０に等しいｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｍｏｄｉｆｉｃａｔｉｏｎ＿ｆｌａｇ＿ｌ０シンタックス要素は、ＲｅｆＰｉｃＬｉｓｔ０が暗黙的に決定されることを示す。１に等しいｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｍｏｄｉｆｉｃａｔｉｏｎ＿ｆｌａｇ＿ｌ１シンタックス要素は、ＲｅｆＰｉｃＬｉｓｔ１がｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１［ｉ］の値のリストとして明示的に規定されることを示す。０に等しいｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｍｏｄｉｆｉｃａｔｉｏｎ＿ｆｌａｇ＿ｌ１シンタックス要素は、ＲｅｆＰｉｃＬｉｓｔ１が暗黙的に決定されることを示す。
【０１３６】
[0146]更に、表１の例において、ｌｉｓｔ＿ｅｎｔｒｙ＿ｌＸ［ｉ］シンタックス要素（Ｘは０又は１に等しい）は、参照ピクチャリストＬＸ（Ｘは０又は１に等しい）の現在の位置に配置されるべきＲｅｆＰｉｃＳｅｔＣｕｒｒＴｅｍｐＬｉｓｔＸ中の参照ピクチャのインデックスを規定する。ＲｅｆＰｉｃＳｅｔＣｕｒｒＴｅｍｐＬｉｓｔＸ（ＲｅｆＰｉｃＬｉｓｔＴｅｍｐＸとも呼ばれる）はＲｅｆＰｉｃＬｉｓｔＸの初期バージョンである。Ｘの値は、ｌｉｓｔ＿ｅｎｔｒｙ＿ｌＸ、ＲｅｆＰｉｃＳｅｔＣｕｒｒＴｅｍｐＬｉｓｔＸ、及びＬＸの各々に対して同じである。この例では、ｌｉｓｔ＿ｅｎｔｒｙ＿ｌＸ［ｉ］シンタックス要素の長さはＣｅｉｌ（Ｌｏｇ２（ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒ））ビットである。更に、この例では、ｌｉｓｔ＿ｅｎｔｒｙ＿ｌＸ［ｉ］の値は、両端を含めて０〜ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒ−１の範囲内にある。ｌｉｓｔ＿ｅｎｔｒｙ＿ｌＸ［ｉ］シンタックス要素が存在しないとき、ｌｉｓｔ＿ｅｎｔｒｙ＿ｌＸ［ｉ］シンタックス要素は、０に等しいと推測され得る。
【０１３７】
[0147]上で示されたように、ビデオコーダは、ビデオコーダがＰスライス又はＢスライスをコード化するのを開始するとき、ＲｅｆＰｉｃＬｉｓｔ０の初期バージョンを生成することができる。ＲｅｆＰｉｃＬｉｓｔ０の初期バージョンは、ＲｅｆＰｉｃＬｉｓｔＴｅｍｐ０と示され得る。ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ８では、ビデオコーダは、以下の擬似コードによって記述された動作を使用して、ＲｅｆＰｉｃＬｉｓｔ０の初期バージョンを生成することができる。
【０１３８】
rIdx = 0 
while( rIdx < NumRpsCurrTempList0 ) { 
for( i = 0; i < NumPocStCurrBefore && rIdx < NumRpsCurrTempList0;
rIdx++, i++ ) 
RefPicListTemp0[ rIdx ] = RefPicSetStCurrBefore[ i ]  
for( i = 0;  i < NumPocStCurrAfter && rIdx < NumRpsCurrTempList0;
rIdx++, i++ ) 
RefPicListTemp0[ rIdx ] = RefPicSetStCurrAfter[ i ] 
for( i = 0; i < NumPocLtCurr && rIdx < NumRpsCurrTempList0; rIdx++,
i++ ) 
RefPicListTemp0[ rIdx ] = RefPicSetLtCurr[ i ] 
}
上の擬似コードにおいて、変数ＮｕｍＲｐｓＣｕｒｒＴｅｍｐＬｉｓｔ０はＭａｘ（ｎｕｍ＿ｒｅｆ＿ｉｄｘ＿ｌ０＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１＋１，ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒ）に等しく設定される。変数ｎｕｍ＿ｒｅｆ＿ｉｄｘ＿ｌ０＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１は、ＲｅｆＰｉｃＬｉｓｔ０中のアクティブ参照ピクチャの数から１を引いた数を示す。
【０１３９】
[0148]更に、ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ８では、ＲｅｆＰｉｃＬｉｓｔ０は次のように構築される。
【０１４０】
for( rIdx = 0; rIdx ≦ num_ref_idx_l0_active_minus1; rIdx++) 
RefPicList0[ rIdx ] = ref_pic_list_modification_flag_l0 ?
RefPicListTemp0[ list_entry_l0[ rIdx ] ] : RefPicListTemp0[ rIdx ]
上の擬似コードにおいて、参照ピクチャリストの修正がＲｅｆＰｉｃＬｉｓｔ０に対して可能にされる場合、ビデオコーダは、ＲｅｆＰｉｃＬｉｓｔ０中の各々のそれぞれの位置に対して、ＲｅｆＰｉｃＬｉｓｔ０中のそれぞれの位置に対応するｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０シンタックス要素を決定することができる。ビデオコーダは、ＲｅｆＰｉｃＬｉｓｔ０中のそれぞれの位置において、決定されたｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０シンタックス要素によって示されるＲｅｆＰｉｃＬｉｓｔＴｅｍｐ０中の位置にある参照ピクチャを挿入することができる。
【０１４１】
[0149]更に、ビデオコーダは、ビデオコーダがＢスライスをコード化するのを開始するとき、ＲｅｆＰｉｃＬｉｓｔ１の初期バージョンを生成することができる。ＲｅｆＰｉｃＬｉｓｔ１の初期バージョンは、ＲｅｆＰｉｃＬｉｓｔＴｅｍｐ１と示され得る。ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ８では、ビデオコーダは、以下の擬似コードによって記述された動作を使用して、ＲｅｆＰｉｃＬｉｓｔ１の初期バージョンを生成することができる。
【０１４２】
rIdx = 0 
while( rIdx < NumRpsCurrTempList1 ) { 
for( i = 0; i < NumPocStCurrAfter && rIdx < NumRpsCurrTempList1; 
rIdx++, i++ ) 
RefPicListTemp1[ rIdx ] = RefPicSetStCurrAfter[ i ] 
for( i = 0;  i < NumPocStCurrBefore && rIdx < NumRpsCurrTempList1; 
rIdx++, i++ ) 
RefPicListTemp1[ rIdx ] = RefPicSetStCurrBefore[ i ] 
for( i = 0; i < NumPocLtCurr && rIdx < NumRpsCurrTempList1; rIdx++, 
i++ ) 
RefPicListTemp1[ rIdx ] = RefPicSetLtCurr[ i ] 
}
上の擬似コードにおいて、変数ＮｕｍＲｐｓＣｕｒｒＴｅｍｐＬｉｓｔ１はＭａｘ（ｎｕｍ＿ｒｅｆ＿ｉｄｘ＿ｌ１＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１＋１，ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒ）に等しく設定される。変数ｎｕｍ＿ｒｅｆ＿ｉｄｘ＿ｌ１＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１は、ＲｅｆＰｉｃＬｉｓｔ１中のアクティブ参照ピクチャの数から１を引いた数を示す。
【０１４３】
[0150]更に、ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ８では、ＲｅｆＰｉｃＬｉｓｔ１は次のように構築される。
【０１４４】
for( rIdx = 0; rIdx ≦ num_ref_idx_l1_active_minus1; rIdx++) 
RefPicList1[ rIdx ] = ref_pic_list_modification_flag_l1 ?
RefPicListTemp1[ list_entry_l1[ rIdx ] ] : RefPicListTemp1[ rIdx ] 
[0151]上の擬似コードにおいて、参照ピクチャリストの修正がＲｅｆＰｉｃＬｉｓｔ１に対して可能にされる場合、ビデオコーダは、ＲｅｆＰｉｃＬｉｓｔ１中の各々のそれぞれの位置に対して、ＲｅｆＰｉｃＬｉｓｔ１中のそれぞれの位置に対応するｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１シンタックス要素を決定することができる。ビデオコーダは、ＲｅｆＰｉｃＬｉｓｔ１中のそれぞれの位置において、決定されたｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１シンタックス要素によって示されるＲｅｆＰｉｃＬｉｓｔＴｅｍｐ１中の位置にある参照ピクチャを挿入することができる。
【０１４５】
[0152]特定のビデオコード化規格（例えば、ＨＥＶＣ）の幾つかのコーデック拡張では、参照ピクチャリストは、通常の時間的参照ピクチャ、更には、現在のビュー／レイヤ以外のビュー／レイヤからの参照ピクチャ、又は現在のビュー／レイヤ以外のビュー／レイヤからのピクチャから生成された参照ピクチャを含み得る。他のビュー／レイヤからの参照ピクチャ、又は他のビュー／レイヤからのピクチャから生成された参照ピクチャは、「ビュー／レイヤ間参照ピクチャ」と名付けられる。他のビュー／レイヤからのピクチャから参照ピクチャを生成する処理は、ビュー合成予測と呼ばれることがあり、この方法で生成されるピクチャは、ビュー合成ピクチャと呼ばれることがある。
【０１４６】
[0153]ＨＥＶＣでは、両方の参照ピクチャリスト（即ち、ｒｅｆＰｉｃＬｉｓｔ０及びｒｅｆＰｉｃＬｉｓｔ１）は通常、時間的参照ピクチャを含む。しかしながら、ＨＥＶＣの幾つかの拡張（例えば、３Ｄ−ＨＥＶＣ）では、ビュー／レイヤ間参照ピクチャは通常、ＲｅｆＰｉｃＬｉｓｔ０の中にのみ存在し、通常は決してＲｅｆＰｉｃＬｉｓｔ１の中にはない。更に、３Ｄ−ＨＥＶＣでは、参照ピクチャリストは、ビュー／レイヤ間参照ピクチャを含んでよく、ＶＰＳ拡張におけるｒｅｆ＿ｌａｙｅｒ＿ｉｄ［ｉ］［ｊ］シンタックス要素は、以下の表２に示されるように、ビデオコーダが特定のビュー／レイヤを予測するために使用できるビュー／レイヤを信号伝達することができる。
【表２】
0005992640.tif 000004
【０１４７】
[0154]表２の例では、ビデオコーダは、同じアクセス単位中のｒｅｆ＿ｌａｙｅｒ＿ｉｄ［ｉ］［ｊ］によって特定される各ビュー／レイヤ間参照ピクチャを、所謂ビュー／レイヤ間ＲＰＳに挿入する。ビデオコーダは、ビュー／レイヤ間ＲＰＳ中の参照ピクチャを使用して、ＲｅｆＰｉｃＬｉｓｔ０及び／又はＲｅｆＰｉｃＬｉｓｔ１を初期化することができる。ＲｅｆＰｉｃＬｉｓｔ０及び／又はＲｅｆＰｉｃＬｉｓｔ１を初期化した後で、ビデオコーダは、ＲｅｆＰｉｃＬｉｓｔ０及び／又はＲｅｆＰｉｃＬｉｓｔ１中の参照ピクチャの順序を修正することができる。言い換えると、ビュー／レイヤ間ＲＰＳは更に、ＲｅｆＰｉｃＬｉｓｔ０とＲｅｆＰｉｃＬｉｓｔ１の両方に対する参照ピクチャリストの初期化及び修正のために考慮され得る。
【０１４８】
[0155]Ｒａｍａｓｕｂｒａｍｏｎｉａｎ他、「ＡＨＧ７：  Ｒｅｆｅｒｅｎｃｅ  ｐｉｃｔｕｒｅ  ｌｉｓｔ  ｉｎｉｔｉａｌｉｚａｔｉｏｎ  ｆｏｒ  ＭＶ−ＨＥＶＣ」、ＩＴＵ−Ｔ  ＳＧ  １６  ＷＰ  ３とＩＳＯ／ＩＥＣ  ＪＴＣ  １／ＳＣ  ２９／ＷＧ  １１のＪｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｖｅ  Ｔｅａｍ  ｏｎ  ３Ｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  Ｅｘｔｅｎｓｉｏｎ  Ｄｅｖｅｌｏｐｍｅｎｔ、第３回会合、ジュネーブ、スイス、２０１３年１月１７〜２３日、文書ＪＣＴ３Ｖ−Ｃ００６０（以後ＪＣＴ３Ｖ−Ｃ００６０）は、ビュー間参照ピクチャを連続的に参照ピクチャリストの所与の場所へ置くための、参照ピクチャリスト初期化方法を提案する。具体的には、ＪＣＴ３Ｖ−Ｃ００６０は、ビュー間参照ピクチャの望まれる初期の位置がスライスヘッダ中で信号伝達される、ＭＶ−ＨＥＶＣに対する参照ピクチャリストの初期化の方法を提案する。更に、ＪＣＴ３Ｖ−Ｃ００６０では、参照ピクチャリストの初期化処理は、ビュー間参照ピクチャが初期参照ピクチャリスト中の信号伝達された開始位置に存在するように、修正される。
【０１４９】
[0156]以下の表３は、ＪＣＴ３Ｖ−Ｃ００６０で定義されるような、スライスヘッダに対するシンタックスの例示的な部分である。表３の下線付きのテキストは、テキストがＭＶ−ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ２で定義されるスライスヘッダシンタックスを追加したことを示す。
【表３】
0005992640.tif 000005
【０１５０】
[0157]上の表３の例及び本開示の他のシンタックス表では、型記述子ｕｅ（ｖ）を伴うシンタックス要素は、左ビットが先頭の０次指数ゴロム（Ｅｘｐ−Ｇｏｌｏｍｂ）コード化を使用して符号化される可変長の符号なし整数であり得る。表３に示されるように、スライスのスライスヘッダは、スライスがＩスライス（即ち、イントラコード化されるスライス）でなければ、ｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｐｌｕｓ１シンタックス要素を含み得る。
【０１５１】
[0158]更に、ＪＣＴ３Ｖ−Ｃ００６０は、ｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｐｌｕｓ１シンタックス要素が、参照ピクチャリストの初期化の後の参照ピクチャリスト０中のビュー間参照ピクチャの開始位置を規定することを示す。ｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｐｌｕｓ１シンタックス要素は、両端を含めて０からｍｉｎ（ｎｕｍ＿ｒｅｆ＿ｉｄｘ＿ｌ０＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１＋１，ＮｕｍＰｏｃＳｔＣｕｒｒＢｅｆｏｒｅ＋ＮｕｍＰｏｃＳｔＣｕｒｒＡｆｔｅｒ＋ＮｕｍＰｏｃＬｔＣｕｒｒ）の範囲にある。ｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｐｌｕｓ１シンタックス要素が０に等しいとき、ビュー間参照ピクチャは、参照ピクチャリスト中のデフォルトの位置に存在する。他の０ではない値に対して、ｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｐｌｕｓ１シンタックス要素−１は、初期参照ピクチャリスト中でのビュー間参照ピクチャの開始位置を示す。存在しないとき、ｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｐｌｕｓ１シンタックス要素はデフォルトの値であると推測されてよく、このデフォルトの値は、ＮｕｍＰｏｃＳｔＣｕｒｒＢｅｆｏｒｅ＋ＮｕｍＰｏｃＳｔＣｕｒｒＡｆｔｅｒ＋ＮｕｍＰｏｃＬｔＣｕｒｒ＋１に等しい。
【０１５２】
[0159]ＪＣＴ３Ｖ−Ｃ００６０は、変数ＩｖＲｅｆＳｔａｒｔＰｏｓが次のように導出されることを示す。
【０１５３】
if( !inter_view_ref_start_position_plus1 ) 
IvRefStartPos = NumPocStCurrBefore + NumPocStCurrAfter + NumPocLtCurr 
else 
IvRefStartPos = inter_view_ref_start_position_plus1 - 1
[0160]更に、ＪＣＴ３Ｖ−Ｃ００６０は、ＭＶ−ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ２の復号処理に対する以下の変更を提案する。以下では、下線付きのテキストがＭＶ−ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ２に追加され、二重括弧の中の斜字のテキストがＭＶ−ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ２から除去される。  
変数ＮｕｍＲｐｓＣｕｒｒＴｅｍｐＬｉｓｔ０はＭａｘ（ｎｕｍ＿ｒｅｆ＿ｉｄｘ＿ｌ０＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１＋１，ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒ）に等しく設定され、リストＲｅｆＰｉｃＬｉｓｔＴｅｍｐ０は次のように構築される。  
cIdx = 0 
while( cIdx < NumRpsCurrTempList0 ) { 
for( i = 0; i < NumPocStCurrBefore && cIdx < NumRpsCurrTempList0;
cIdx++, i++ ) 
RefPicListTemp0[ cIdx ] = RefPicSetStCurrBefore[ i ]  
for( i = 0;  i < NumPocStCurrAfter && cIdx < NumRpsCurrTempList0; 
cIdx++, i++ )  (F-25) 
RefPicListTemp0[ cIdx ] = RefPicSetStCurrAfter[ i ] 
for( i = 0; i < NumPocLtCurr && cIdx < NumRpsCurrTempList0; cIdx++, i++ ) 
RefPicListTemp0[ cIdx ] = RefPicSetLtCurr[ i ] 
[[     for( i = 0; i < NumIvCurr && rIdx < NumRpsCurrTempList0; rIdx++,
i++ ) 
RefPicListTemp0[ rIdx ] = RefPicSetIvCurr[ i ]]]
}
// Shift the pictures in the list to create space for inter-view reference pictures, if necessary 
for( cIdx = NumRpsCurrTempList0 - 1; cIdx >= IvRefStartPos + NumPocIvCurr; cIdx -- ) 
RefPicListTemp0[ cIdx ] = RefPicListTemp0[ cIdx - NumPocIvCurr ]
// Include the inter-view reference pictures 
for( i=0, cIdx = IvRefStartPos; i < NumPocIvCurr; cIdx++, i++ ) 
RefPicListTemp0[ cIdx ] = RefPicSetIvCurr[ i ]
リストＲｅｆＰｉｃＬｉｓｔ０は次のように構築される。
【０１５４】
for( cIdx = 0; cIdX ≦ num_ref_idx_l0_active_minus1; cIdx++)    (F-26)
RefPicList0[cIdx] = ref_pic_list_modification_flag_l0 ?
RefPicListTemp0[list_entry_l0[cIdx] ] : RefPicListTemp0[ cIdx ]
[0161]ＪＣＴ３Ｖ−Ｃ００６０は、ＲｅｆＰｉｃＬｉｓｔ１の導出がＭＶ−ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ２で定義されるものと同じであることを示す。従って、ＪＣＴ３Ｖ−Ｃ００６０の方法は、ＲｅｆＰｉｃＬｉｓｔ１の複雑さを下げるのを助けることはできず、ＲｅｆＰｉｃＬｉｓｔ０の複雑さを下げるのを助けるだけであり得る。
【０１５５】
[0162]ＭＶ−ＨＥＶＣ、３Ｄ−ＨＥＶＣ、及びＳＨＶＣのような幾つかのＨＥＶＣ拡張における幾つかのツールは、ビュー／レイヤ間参照ピクチャがＲｅｆＰｉｃＬｉｓｔ０とＲｅｆＰｉｃＬｉｓｔ１の両方に存在することを仮定する。これは、幾つかの問題につながり得る。例えば、ビュー間予測がＲｅｆＰｉｃＬｉｓｔ１に存在し得るという仮定に関する情報にアクセスする必要がある全ての低レベルのコード化ツールは、冗長な確認を実行する必要があり、このことは、更なる動作につながることがあり、更なるデータがメモリに記憶されることを必要とすることもある。例えば、低レベルのコード化ツール（例えば、ＰＵレベル又はＣＵレベルで適用されるコード化ツール）は、ＲｅｆＰｉｃＬｉｓｔ１がビュー／レイヤ間参照ピクチャを含むかどうかにかかわらず、ＲｅｆＰｉｃＬｉｓｔ１中の参照ピクチャがビュー／レイヤ間参照ピクチャであるかどうかを確認し続けることがある。
【０１５６】
[0163]別の例では、参照ピクチャリスト構築処理は、参照ピクチャリスト構築（参照ピクチャリスト初期化及び参照ピクチャリスト修正を含む）に関する処理である。この例では、参照ピクチャリスト構築処理は、ＲｅｆＰｉｃＬｉｓｔ１がビュー／レイヤ間参照ピクチャを含むことを仮定し得る。従って、この例では、参照ピクチャリスト構築処理は、更なる処理と、ＲｅｆＰｉｃＬｉｓｔ０及びＲｅｆＰｉｃＬｉｓｔ１に存在する冗長なシンタックスとを必要とすることがあるが、そのような処理及びシンタックスはＲｅｆＰｉｃＬｉｓｔ１には不要であることがある。
【０１５７】
[0164]ビュー／レイヤ間参照ピクチャがＲｅｆＰｉｃＬｉｓｔ０とＲｅｆＰｉｃＬｉｓｔ１の両方に存在すると幾つかのコード化ツールが仮定することが原因で発生し得る別の例示的な問題では、参照ピクチャリスト構築（例えば、ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０シンタックス要素及びｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１シンタックス要素）に関するシンタックス表に存在するシンタックス要素は、ｕ（ｖ）コード化され得る。結果として、ＲｅｆＰｉｃＬｉｓｔ１に対応するシンタックス要素は、不必要に長くなり得る。別の例では、ＲｅｆＰｉｃＬｉｓｔ０とＲｅｆＰｉｃＬｉｓｔ１の両方に同じビュー／レイヤ間参照ピクチャを挿入することは、符号化利得を何らもたらさないことがある。
【０１５８】
[0165]本開示の例は、高レベルシンタックス構造においてビュー／レイヤ間予測を無効にするように構成されるマルチビュー／３Ｄ又はスケーラブルコーデックを含む。高レベルシンタックス構造は、非ＶＣＬ  ＮＡＬ単位中のシンタックス構造を含み得る。例えば、高レベルシンタックス構造は、ＳＥＩメッセージ、パラメータセット（例えば、ＶＰＳ、ＳＰＳ、ＰＰＳなど）などを含み得る。
【０１５９】
[0166]本開示の一例では、ビデオエンコーダ２０は、ＶＰＳ拡張においてシンタックス要素（例えば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇ）を信号伝達する。説明を簡単にするために、本開示は、このシンタックス要素が、適用可能なコーデックにおいて異なる名前を有し得るとしても、このシンタックス要素をｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇと呼び得る。ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇは、ビュー／レイヤ間参照ピクチャが、ＶＰＳを参照するＣＶＳの任意のビュー成分／レイヤ表現のためのＲｅｆＰｉｃＬｉｓｔ１に含まれているかどうかを示す。
【０１６０】
[0167]別の例では、ビデオエンコーダ２０は、ビュー／レイヤ間参照ピクチャが、ＶＰＳを参照するＣＶＳの特定のビュー／レイヤの任意のビュー成分／レイヤ表現のためのＲｅｆＰｉｃＬｉｓｔ１に含まれているかどうかを示すために、各レイヤのためのｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇを信号伝達することができる。この例では、複数のそのようなシンタックス要素（例えば、フラグ）がＶＰＳにおいて信号伝達されてよく、各々が１つの固有のレイヤ／ビューに付加される。例えば、この例では、ビデオエンコーダ２０は、異なるレイヤ中の異なるＣＶＳに対して別のＳＰＳを信号伝達することができる。各ＳＰＳは、ＳＰＳを参照するピクチャに対するＲｅｆＰｉｃＬｉｓｔ１がビュー間参照ピクチャ／レイヤ表現を含んでいるかどうかを示す、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇを含み得る。従って、この例では、ビデオデコーダ３０は、ＳＰＳから、複数のレイヤ中の各々のそれぞれのレイヤに対して、ビュー／レイヤ間参照ピクチャがそれぞれのレイヤ中のビュー成分／レイヤ表現のそれぞれの参照ピクチャリストに含まれているかどうかを示すそれぞれのレイヤに対するそれぞれのシンタックス要素を示す、シンタックス要素を取得することができる。
【０１６１】
[0168]説明を簡単にするために、本開示は、１という値を有するｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇは、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが適用可能であるＲｅｆＰｉｃＬｉｓｔ１が決してビュー／レイヤ間参照ピクチャを含んでいないことを示すと、仮定する。更に、説明を簡単にするために、本開示は、０という値を有するｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇは、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿Ｆｌａｇが適用可能であるＲｅｆＰｉｃＬｉｓｔ１がビュー／レイヤ間参照ピクチャを含み得ることを示すと、仮定する。しかしながら、他の例では、０という値を有するｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇは、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが適用可能であるＲｅｆＰｉｃＬｉｓｔ１が決してビュー／レイヤ間参照ピクチャを含んでいないことを示し、１という値を有するｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇは、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが適用可能であるＲｅｆＰｉｃＬｉｓｔ１がビュー／レイヤ間参照ピクチャを含み得ることを示す。
【０１６２】
[0169]ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが１であるとき、ビデオデコーダ３０によって実行されるビデオ復号処理は様々な方法で簡略化され得る。そのような簡略化は、部分的には、復号処理で実行される動作の数を減らすこと及び／又は復号処理の間に実行されるメモリアクセスの数を減らすことによって、復号処理を加速することができる。
【０１６３】
[0170]ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが１であるときに復号処理がどのように簡略化され得るかの一例では、ビデオデコーダ３０が、ＮＢＤＶ導出処理を実行して現在のブロックに対する視差ベクトルを決定し、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが１であるとき、ビデオデコーダ３０は隣接ブロックのＲｅｆＰｉｃＬｉｓｔ１動き情報を確認しない。言い換えると、３Ｄ−ＨＥＶＣ（ＮＢＤＶ）の視差ベクトル導出において、ＲｅｆＰｉｃＬｉｓｔ１に対応する動き情報（例えば、ＲｅｆＰｉｃＬｉｓｔ１動きベクトル、ＲｅｆＰｉｃＬｉｓｔ１参照インデックスなど）は決して確認されないので、この構成では複雑さが２倍小さくされ得る。更に、この例又は他の例では、ビデオデコーダ３０がＮＢＤＶ導出処理を実行し、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが１であるとき、ビデオデコーダ３０は、隣接ブロックがＲｅｆＰｉｃＬｉｓｔ０視差動きベクトル又はＲｅｆＰｉｃＬｉｓｔ０  ＩＤＶを有しないとき、隣接ブロックに対するＩＤＶを記憶しない。従って、ビデオデコーダ３０は、各隣接ブロックに対して最大で１つの視差動きベクトルを記憶し得る。言い換えると、ＮＢＤＶでは、ＩＤＶ候補は、各ブロックに対して１つの視差動きベクトルしか記憶しない。このようにして、ビデオデコーダ３０は、現在のブロックに対する視差ベクトルを決定するために、現在のビュー成分／レイヤ表現の現在のブロックに隣接する１つ又は複数のブロックを確認する、視差ベクトル導出処理を実行することができる。視差ベクトル導出処理を実行することの一部として、ビデオデコーダ３０は、シンタックス要素（例えば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇ）が、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリスト（例えば、ＲｅｆＰｉｃＬｉｓｔ１）に決して含まれていないことを示すとき、現在のビュー成分／レイヤ表現に対する参照ピクチャリストに対応する動き情報を確認しなくてよい。その上、幾つかの例では、シンタックス要素（例えば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇ）が、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリスト（例えば、ＲｅｆＰｉｃＬｉｓｔ１）に決して含まれていないことを示すとき、現在のブロックに隣接する１つ又は複数のブロックの各々に対するせいぜい１つの暗黙的な視差ベクトルを記憶すること。
【０１６４】
[0171]ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが１であるときにビデオデコーダ３０によって実行されるビデオ復号処理がどのように簡略化され得るかの別の例では、ビデオデコーダ３０は、統合候補リスト又はＡＭＶＰ候補リストに、ビュー／レイヤ間参照ピクチャに対応する動き候補を含めない。例えば、３Ｄ−ＨＥＶＣでは、統合リスト又はＡＭＶＰリストは、潜在的な簡略化が可能であるように、ビュー／レイヤ間参照ピクチャに対応する動き候補を追加することを決して必要としない。ビュー／レイヤ間参照ピクチャに対応する動き候補は、ビュー／レイヤ間参照ピクチャ中の参照位置を規定し得る。
【０１６５】
[0172]この例では、シンタックス要素（例えば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇ）が、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリスト（例えば、ＲｅｆＰｉｃＬｉｓｔ１）に決して含まれていないことを示すとき、ビデオデコーダ３０は、ビュー／レイヤ間参照ピクチャに対応する候補を候補リストに決して含めなくてもよい。更に、シンタックス要素が、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリストに決して含まれていないことを示すとき、ビデオデコーダ３０は、候補リスト中の特定の候補に基づいて、現在のビュー成分／レイヤ表現の現在のブロックに対する動きベクトルを決定することができる。
【０１６６】
[0173]ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが１であるときにビデオデコーダ３０によって実行されるビデオ復号処理がどのように簡略化され得るかの別の例では、ビデオデコーダ３０は、ＲｅｆＰｉｃＬｉｓｔ１中の参照ピクチャがビュー／レイヤ間参照ピクチャであるかどうかを確認するのを避けることができる。３Ｄ−ＨＥＶＣでは現在、動き予測又は視差ベクトル導出の間に、ビデオコーダは、ＲｅｆＰｉｃＬｉｓｔ０中の参照ピクチャがビュー／レイヤ間参照ピクチャかどうかを確認することができ、ＲｅｆＰｉｃＬｉｓｔ１中の参照ピクチャがビュー／レイヤ間参照ピクチャであるかどうかを確認することができる。言い換えると、参照ピクチャリストからの参照ピクチャがビュー／レイヤ間参照ピクチャであるかどうかを確認することは、そのリストがＲｅｆＰｉｃＬｉｓｔ１であることを知っているときには避けられ得る。従って、この例では、シンタックス要素（例えば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇ）が、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリスト（ＲｅｆＰｉｃＬｉｓｔ１）に決して含まれていないことを示すとき、ビデオデコーダ３０は、参照ピクチャリストからの参照ピクチャがビュー／レイヤ間参照ピクチャであるかどうかの確認を避けることができる。
【０１６７】
[0174]ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが１であるときにビデオデコーダ３０によって実行されるビデオコード化処理がどのように簡略化され得るかの別の例では、ＣＵのためのビュー間残差予測フラグ（例えば、ｒｅｓ＿ｐｒｅｄ＿ｆｌａｇ）を取得するかどうかを決定する処理は、簡略化され得る。例えば、３Ｄ−ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ２では、ビデオデコーダ３０は、ｒｅｓＰｒｅｄＥｎａｂｌｅＦｌａｇ変数が１に等しいとき、現在のＣＵに対するビュー間残差予測フラグ（例えば、ｒｅｓ＿ｐｒｅｄ＿ｆｌａｇ）をビットストリームから取得することができる。ビュー間残差予測が可能にされることをＶＰＳ中のシンタックス要素が示し、現在のＣＵに対する残差が０ではないことをコード化されたブロックフラグが示し、ａｎｙＴｅｍｐＲｅｆＰｉｃＦｌａｇ変数が１に等しいとき、ｒｅｓＰｒｅｄＥｎａｂｌｅＦｌａｇは１に等しい。現在のＣＵの１つ又は複数のＰＵが時間的参照ピクチャを利用するとき、ａｎｙＴｅｍｐＲｅｆＰｉｃＦｌａｇは１に等しい。３Ｄ−ＨＥＶＣ  Ｔｅｓｔ  Ｍｏｄｅｌ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｄｒａｆｔ  ２では、ビデオデコーダ３０は最初に、ａｎｙＴｅｍｐＲｅｆＰｉｃＦｌａｇを０に設定することができる。現在のＣＵの予測モードがイントラ予測ではないとき、０及び１により置き換えられるＸと１−Ｘに等しいＹについて、次のことが当てはまる。
【０１６８】
anyTempRefPicFlag = anyTempRefPicFlag | | 
(inter_pred_idc[x0][y0] ! = Pred_LY && refViewIdxLX[x0][y0] = = ViewIdx)| |
(inter_pred_idc[x0][y1] ! = Pred_LY && refViewIdxLX[x0][y1] = = ViewIdx)| |
(inter_pred_idc[x1][y0] ! = Pred_LY && refViewIdxLX[x1][y0] = = ViewIdx)| |
(inter_pred_idc[ x1 ][ y1 ] ! = Pred_LY && refViewIdxLX[ x1 ][ y1 ] = = ViewIdx)
上の式において、Ｐｒｅｄ＿ＬＹは、現在のＣＵのＰＵがＲｅｆＰｉｃＬｉｓｔＹからの予測であることが有効にされることを示し、ｒｅｆＶｉｅｗＩｄｘＬＸは、現在のＣＵのＰＵのＲｅｆＰｉｃＬｉｓｔＸ参照ピクチャのビューインデックスを示し、ＶｉｅｗＩｄｘは、現在のピクチャのビューインデックスを示す。
【０１６９】
[0175]ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが１に等しく、現在のＣＵの少なくとも１つのＰＵがＲｅｆＰｉｃＬｉｓｔ１動きベクトルを有するとき、ＲｅｆＰｉｃＬｉｓｔ１動きベクトルは時間的動きベクトルである。従って、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが１に等しく、現在のＣＵの少なくとも１つのＰＵがＲｅｆＰｉｃＬｉｓｔ１動きベクトルを有する場合、現在のＣＵのＰＵの少なくとも１つが、現在のＣＵがイントラモードでコード化されない場合に時間的参照ピクチャを使用してコード化されるので、ａｎｙＴｅｍｐＲｅｆＰｉｃＦｌａｇの値を決定することは不要であり得る。従って、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが１に等しく、現在のＣＵの少なくとも１つのＰＵがＲｅｆＰｉｃＬｉｓｔ１動き情報を使用してコード化される（即ち、Ｐｒｅｄ＿Ｌ１又はＢｉ＿Ｐｒｅｄモードでコード化される）とき、ビデオデコーダ３０は、ａｎｙＴｅｍｐＲｅｆＰｉｃＬｉｓｔの値を決定することなく、ｒｅｓＰｒｅｄＥｎａｂｌｅＦｌａｇの値を決定することが可能であり得る。従って、３Ｄ−ＨＥＶＣでは、ビュー間残差予測フラグは、現在のＣＵ内の任意のＰＵが参照ピクチャタイプを確認することなくＰｒｅｄ＿Ｌ１モード又はＢｉ＿Ｐｒｅｄを使用する場合にのみ、信号伝達され得る。ＡＲＰでは、ＰＵがＰｒｅｄ＿Ｌ１又はＢｉ＿Ｐｒｅｄモードでコード化される場合、ＲｅｆＰｉｃＬｉｓｔ１の残差予測子生成処理は、参照ピクチャタイプがビュー／レイヤ間参照であるかどうかを決定するために、参照ピクチャタイプを確認することなく常に有効にされる。従って、この例では、シンタックス要素（例えば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇ）が、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリスト（例えば、ＲｅｆＰｉｃＬｉｓｔ１）に決して含まれていないことを示すとき、ビデオデコーダ３０は、参照ピクチャリスト中の特定の参照ピクチャのタイプを確認することなく、現在のビュー成分／レイヤ表現の現在のＣＵのＰＵが特定の参照ピクチャ中の位置を示す動きベクトルを有する場合、参照ピクチャリストに対して残差予測子生成処理を有効にすることができる。
【０１７０】
[0176]ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが１であるときにビデオデコーダ３０によって実行されるビデオコード化処理がどのように簡略化され得るかの別の例では、ビデオデコーダ３０は、ビュー合成ピクチャを生成するために、ＲｅｆＰｉｃＬｉｓｔ０中のビュー／レイヤ間参照ピクチャを使用することだけができる。更に、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが１であるとき、ビデオデコーダ３０はＲｅｆＰｉｃＬｉｓｔ１中のビュー合成ピクチャを含まない。即ち、将来の３Ｄ−ＨＥＶＣに拡張され得るビュー合成予測は、ビュー合成のためにＲｅｆＰｉｃＬｉｓｔ０に挿入されるビュー間参照ピクチャを使用するだけであり、又は、ＲｅｆＰｉｃＬｉｓｔ１に追加されるべきビュー合成ピクチャを決して考慮しない。従って、この例では、シンタックス要素（例えば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇ）が、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリスト（例えば、ＲｅｆＰｉｃＬｉｓｔ１）に決して含まれていないことを示すとき、ビデオデコーダ３０は、異なる参照ピクチャリスト（例えば、ＲｅｆＰｉｃＬｉｓｔ０）へ挿入されるビュー／レイヤ間参照ピクチャのみを使用して、ビュー合成予測を実行することができる。
【０１７１】
[0177]幾つかの例では、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが１であるとき、ビデオデコーダ３０は、簡略化された、又はより効率的に設計された参照ピクチャリスト構築処理を実行することができる。例えば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが１であるとき、ビデオデコーダ３０は、ＲｅｆＰｉｃＬｉｓｔ１に対する初期参照ピクチャリストを構築するとき、ビュー／レイヤ間ＲＰＳ又はビュー／レイヤ間参照ピクチャを考慮しない。更に、本開示の他の箇所で説明されるように、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが１であるとき、ＲＰＬＭシンタックス要素ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０［ｉ］は、ＲＰＬＭシンタックス要素ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１［ｉ］とは異なる方式で信号伝達され得る。従って、この例では、シンタックス要素（例えば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇ）が、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリストに決して含まれていないことを示すとき、ビデオデコーダ３０は、参照ピクチャリストの初期バージョンを構築するとき、ビュー／レイヤ間参照ピクチャセット又はビュー／レイヤ間参照ピクチャを考慮しなくてよい。
【０１７２】
[0178]更に、上で言及された本開示の例の少なくとも幾つかは、単一の制御フラグ（即ち、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇ）によって管理される。しかしながら、異なる場所又は状況におけるＲｅｆＰｉｃＬｉｓｔ１に関する簡略化を管理する目的で、１つ又は複数の別々の制御フラグが、１つ又は複数の異なる場所又は状況を制御するために使用され得る。本開示の他の例では、ＲｅｆＰｉｃＬｉｓｔ１への言及は、幾つか又は全ての場合に、ＲｅｆＰｉｃＬｉｓｔ０への言及により置き換えられ得る。
【０１７３】
[0179]図６は、本開示の技術を実装するように構成される例示的なビデオエンコーダ２０を示すブロック図である。図６は説明のために用意され、本開示において広範に例示され、説明されているような技術に対する制限とみなされるべきでない。説明のために、本開示では、ＨＥＶＣコード化を背景としてビデオエンコーダ２０について説明する。しかしながら、本開示の技術は、他のコード化規格又は方法に適用可能であるものとしてよい。
【０１７４】
[0180]図６の例において、ビデオエンコーダ２０は、予測処理ユニット１００と、残差生成ユニット１０２と、変換処理ユニット１０４と、量子化ユニット１０６と、逆量子化ユニット１０８と、逆変換処理ユニット１１０と、再構成ユニット１１２と、フィルタユニット１１４と、復号ピクチャバッファ１１６と、エントロピー符号化ユニット１１８とを含む。予測処理ユニット１００は、インター予測処理ユニット１２０とイントラ予測処理ユニット１２６とを含む。インター予測処理ユニット１２０は、動き推定ユニット１２２と動き補償ユニット１２４とを含む。他の例では、ビデオエンコーダ２０は、より多い、より少ない、又は異なる機能コンポーネントを含んでもよい。
【０１７５】
[0181]ビデオエンコーダ２０は、ビデオデータを受信することができる。ビデオエンコーダ２０は、ビデオデータのピクチャのスライス内の各ＣＴＵを符号化することができる。ＣＴＵの各々は、ピクチャのサイズが等しいルーマコード化ツリーブロック（ＣＴＢ）と、対応するＣＴＢとに関連付けられ得る。ＣＴＵを符号化する一環として、予測処理ユニット１００は、四分木分割法を実行して、ＣＴＵのＣＴＢをだんだん小さくなる幾つかのブロックに分割することができる。より小さいブロックは、ＣＵのコード化ブロックであってよい。例えば、予測処理ユニット１００は、ＣＴＵに関連付けられているＣＴＢをサイズが等しい４つのサブブロックに分割し、それらのサブブロックのうちの１つ又は複数をサイズが等しい４つのサブサブブロックに分割し、というように続けることができる。
【０１７６】
[0182]ビデオエンコーダ２０は、ＣＴＵのＣＵを符号化して、ＣＵの符号化された表現（即ち、コード化されたＣＵ）を生成することができる。ＣＵを符号化する一環として、予測処理ユニット１００は、ＣＵに関連付けられているコード化ブロックをＣＵの１つ又は複数のＰＵの間で分割することができる。従って、各ＰＵは、ルーマ予測ブロックと、対応するクロマ予測ブロックとに関連付けられ得る。ビデオエンコーダ２０とビデオデコーダ３０とは、様々なサイズを有するＰＵをサポートすることができる。上で示されているように、ＣＵのサイズは、ＣＵのルーマコード化ブロックのサイズを指すものとしてよく、ＰＵのサイズは、ＰＵのルーマ予測ブロックのサイズを指すものとしてよい。特定のＣＵのサイズが２Ｎ×２Ｎであると仮定すると、ビデオエンコーダ２０とビデオデコーダ３０とは、イントラ予測に対する２Ｎ×２Ｎ又はＮ×ＮのＰＵサイズと、インター予測に対する２Ｎ×２Ｎ、２Ｎ×Ｎ、Ｎ×２Ｎ、Ｎ×Ｎ、又は同様のものの対称的ＰＵサイズとをサポートすることができる。ビデオエンコーダ２０とビデオデコーダ３０とは、インター予測に対する２Ｎ×ｎＵ、２Ｎ×ｎＤ、ｎＬ×２Ｎ、及びｎＲ×２ＮのＰＵサイズに対する非対称的分割もサポートし得る。
【０１７７】
[0183]インター予測処理ユニット１２０は、ＣＵの各ＰＵにインター予測を実行することによってＰＵに対する予測データを生成することができる。ＰＵに対する予測データは、ＰＵの予測ブロックとＰＵに対する動き情報とを含み得る。インター予測処理ユニット１２０は、ＰＵがＩスライスにあるか、Ｐスライスにあるか、又はＢスライスにあるかに応じてＣＵのＰＵに対して異なるオペレーションを実行し得る。Ｉスライスでは、イントラ予測が有効にされ得るが、インター予測は有効にされない。従って、ＰＵがＩスライス内にある場合、インター予測処理ユニット１２０は、ＰＵにインター予測を実行しない。
【０１７８】
[0184]ＰＵがＰスライス内にある場合、動き推定ユニット１２２は、ＰＵに対する基準領域に対する基準ピクチャのリスト（例えば、「ＲｅｆＰｉｃＬｉｓｔ０」）内の基準ピクチャを探索することができる。ＰＵに対する基準領域は、ＰＵの予測ブロックに最も正確に対応するサンプルを含む、基準ピクチャ内の、一領域であるものとしてよい。動き推定ユニット１２２は、ＰＵに対する基準領域を含む基準ピクチャのＲｅｆＰｉｃＬｉｓｔ０内の位置を示す基準インデックスを生成することができる。それに加えて、動き推定ユニット１２２は、ＰＵの予測ブロックと基準領域に関連付けられている基準配置との間の空間的変位を示す動きベクトルを生成することができる。例えば、動きベクトルは、現在のピクチャ内の座標から基準ピクチャ内の座標へのオフセットを与える２次元ベクトルであるものとしてよい。動き推定ユニット１２２は、基準インデックスと動きベクトルとをＰＵの動き情報として出力することができる。動き補償ユニット１２４は、ＰＵの動きベクトルによって示される基準配置における実際の、又は補間されたサンプルに基づいてＰＵの予測ブロックを生成することができる。
【０１７９】
[0185]ＰＵがＢスライス内にある場合、動き推定ユニット１２２は、ＰＵに対する片方向予測又は双予測を実行することができる。ＰＵに対する単予測を実行するために、動き推定ユニット１２２は、ＰＵに対する単一の動きベクトルと単一の参照インデックスとを決定することができる。幾つかの例では、動き推定ユニット１２２は、統合モード又はＡＭＶＰモードを使用して、動きベクトルと参照インデックスとを決定することができる。幾つかの例では、ＰＵの参照領域に対する、ＲｅｆＰｉｃＬｉｓｔ０又は第２の参照ピクチャリスト（「ＲｅｆＰｉｃＬｉｓｔ１」）の参照ピクチャを探索し得る。動き推定ユニット１２２は、ＰＵの動き情報として、基準領域を含む基準ピクチャのＲｅｆＰｉｃＬｉｓｔ０又はＲｅｆＰｉｃＬｉｓｔ１内の位置を示す基準インデックスと、ＰＵの予測ブロックと基準領域に関連付けられている基準配置との間の空間的変位を示す動きベクトルと、基準ピクチャがＲｅｆＰｉｃＬｉｓｔ０内にあるか又はＲｅｆＰｉｃＬｉｓｔ１内にあるかを示す１つ又は複数の予測方向指標とを出力することができる。動き補償ユニット１２４は、ＰＵの動きベクトルによって示される基準配置における実際の、又は補間されたサンプルに少なくとも部分的に基づいてＰＵの予測ブロックを生成することができる。
【０１８０】
[0186]ＰＵに対する双予測インター予測を実行するために、動き推定ユニット１２２は、ＰＵに対する２つの動きベクトルと２つの参照インデックスとを決定することができる。幾つかの例では、動き推定ユニット１２２は、統合モード又はＡＭＶＰモードを実行して、動きベクトルと参照インデックスとを決定することができる。幾つかの例では、動き推定ユニット１２２は、ＰＵに対する基準領域に対するＲｅｆＰｉｃＬｉｓｔ０内の準備ピクチャを探索し、ＰＵに対する別の基準領域に対するＲｅｆＰｉｃＬｉｓｔ１内の基準ピクチャも探索することができる。動き推定ユニット１２２は、基準領域を含む基準ピクチャのＲｅｆＰｉｃＬｉｓｔ０とＲｅｆＰｉｃＬｉｓｔ１とにおける位置を示す基準インデックスを生成することができる。それに加えて、動き推定ユニット１２２は、基準領域に関連付けられている基準配置とＰＵの予測ブロックとの間の空間的変位を示す動きベクトルを生成することができる。ＰＵの動き情報は、基準インデックスとＰＵの動きベクトルとを含み得る。動き補償ユニット１２４は、ＰＵの動きベクトルによって示される基準配置における実際の、又は補間されたサンプルに少なくとも部分的に基づいてＰＵの予測ブロックを生成することができる。
【０１８１】
[0187]イントラ予測処理ユニット１２６は、ＰＵにイントラ予測を実行することによってＰＵに対する予測データを生成することができる。ＰＵに対する予測データは、ＰＵに対する予測ブロックと様々なシンタックス要素とを含み得る。イントラ予測処理ユニット１２６は、Ｉスライスと、Ｐスライスと、ＢスライスとにおいてＰＵにイントラ予測を実行することができる。
【０１８２】
[0188]ＰＵにイントラ予測を実行するために、イントラ予測処理ユニット１２６は、複数のイントラ予測モードを使用して、ＰＵに対する予測ブロックの複数のセットを生成することができる。特定のイントラ予測モードを使用してイントラ予測を実行する場合、イントラ予測処理ユニット１２６は、隣接ブロックからのサンプルの特定のセットを使用してＰＵに対する予測ブロックを生成することができる。隣接ブロックは、ＰＵと、ＣＵと、ＣＴＵとについて左から右、上から下の符号化順序を仮定して、ＰＵの予測ブロックの上、右上、左上、又は左であるものとしてよい。イントラ予測処理ユニット１２６は、様々な数のイントラ予測モード、例えば、３３個の方向性イントラ予測モードを使用することができる。幾つかの例では、イントラ予測モードの数は、ＰＵの予測ブロックのサイズに依存し得る。
【０１８３】
[0189]予測処理ユニット１００は、ＰＵに対するインター予測処理ユニット１２０によって生成される予測データ又はＰＵに対するイントラ予測処理ユニット１２６によって生成される予測データのうちからＣＵのＰＵに対する予測データを選択することができる。幾つかの例では、予測処理ユニット１００は、予測データのセットのレート／歪み尺度に基づいてＣＵのＰＵに対する予測データを選択する。選択された予測データの予測ブロックは、本明細書では、選択予測ブロックと称され得る。
【０１８４】
[0190]残差生成ユニット１０２は、ＣＵのコード化ブロック（例えば、ＣＵのルーマコード化ブロック、Ｃｂコード化ブロック、及びＣｒコード化ブロック）と、ＣＵのＰＵの選択された予測ブロック（例えば、ＣＵのルーマブロック、Ｃｂブロック、及びＣｒブロック）とに基づいて、ＣＵの１つ又は複数の残差ブロック（例えば、ＣＵのルーマブロック、Ｃｂブロック、及びＣｒブロック）を生成することができる。例えば、残差生成ユニット１０２は、残差ブロック内の各サンプルがＣＵのコード化ブロック内のサンプルとＣＵのＰＵの対応する選択予測ブロック内の対応するサンプルとの間の差に等しい値を有するようにＣＵの残差ブロックを生成することができる。幾つかの例では、残差生成ユニット１０２は加算器を備え得る。
【０１８５】
[0191]変換処理ユニット１０４は、四分木分割法を実行して、ＣＵの残差ブロックをＣＵのＴＵに関連付けられている変換ブロックに分割することができる。従って、ＴＵは、ルーマ変換ブロックと２つの対応するクロマ変換ブロックとに関連付けられ得る。ＣＵのＴＵのルーマとクロマとの変換ブロックのサイズと位置とは、ＣＵのＰＵの予測ブロックのサイズと位置とに基づくか、又は基づかないものとしてもよい。
【０１８６】
[0192]変換処理ユニット１０４は、１つ又は複数の変換をＴＵの変換ブロックに適用することによってＣＵの各ＴＵに対する変換係数ブロックを生成することができる。変換処理ユニット１０４は、様々な変換をＴＵに関連付けられている変換ブロックに適用することができる。例えば、変換処理ユニット１０４は、離散コサイン変換（ＤＣＴ）、方向性変換、又は概念上類似している変換を変換ブロックに適用することができる。幾つかの例では、変換処理ユニット１０４は、変換を変換ブロックに適用しない。そのような例では、変換ブロックは、変換係数ブロックとして取り扱われ得る。
【０１８７】
[0193]量子化ユニット１０６は、係数ブロック内の変換係数を量子化することができる。量子化プロセスは、変換係数のうちの一部又は全部に関連付けられているビット深度を低減することができる。例えば、ｎビット変換係数は、切り捨てで量子化時にｍビット変換係数に下げられ、ここで、ｎはｍより大きい。量子化は、情報の損失を持ち込み得るため、量子化された変換係数は、元の変換係数よりも低い精度を有し得る。
【０１８８】
[0194]逆量子化ユニット１０８と逆変換処理ユニット１１０とは、逆量子化と逆変換とをそれぞれ係数ブロックに適用して、係数ブロックから残差ブロックを再構成することができる。再構成ユニット１１２は、再構成された残差ブロックを予測処理ユニット１００によって生成された１つ又は複数の予測ブロックからの対応するサンプルに加えて、ＴＵに関連付けられている再構成された変換ブロックを生成することができる。この方法でＣＵの各ＴＵに対して変換ブロックを再構成することによって、ビデオエンコーダ２０は、ＣＵのコード化ブロックを再構成することができる。幾つかの例では、再構成ユニット１１２は加算器を備え得る。
【０１８９】
[0195]フィルタユニット１１４は、１つ又は複数のデブロッキングオペレーションを実行して、ＣＵに関連付けられているコード化ブロック内のブロック歪み（blocking artifacts）を低減することができる。復号ピクチャバッファ１１６は、フィルタユニット１１４が再構成されたコード化ブロックに１つ又は複数のデブロッキングオペレーションを実行した後に、再構成されたコード化ブロックを格納することができる。インター予測処理ユニット１２０は、再構成されたコード化ブロックを含む基準ピクチャを使用して、他のピクチャのＰＵにインター予測を実行することができる。それに加えて、イントラ予測処理ユニット１２６は、復号ピクチャバッファ１１６内の再構成されたコード化ブロックを使用して、ＣＵと同じピクチャ内の他のＰＵにイントラ予測を実行することができる。復号ピクチャバッファ１１６は、メモリ又は他のタイプのコンピュータ可読データ記憶媒体を備え得る。
【０１９０】
[0196]エントロピー符号化ユニット１１８は、ビデオエンコーダ２０の他の機能コンポーネントからデータを受信することができる。例えば、エントロピー符号化ユニット１１８は、量子化ユニット１０６から係数ブロックを受信することができ、予測処理ユニット１００からシンタックス要素を受信することができる。エントロピー符号化ユニット１１８は、データに１つ又は複数のエントロピー符号化オペレーションを実行して、エントロピー符号化されたデータを生成することができる。例えば、エントロピー符号化ユニット１１８は、データに、コンテキスト適応型可変長コード化（ＣＡＶＬＣ）オペレーション、ＣＡＢＡＣオペレーション、変数−変数（Ｖ２Ｖ）レングスコード化オペレーション、シンタックスベースコンテキスト適応型バイナリ算術コード化（ＳＢＡＣ）オペレーション、確率間隔区分エントロピー（ＰＩＰＥ）コード化オペレーション、指数ゴロム符号化オペレーション、又は別の種類のエントロピー符号化オペレーションを実行することができる。ビデオエンコーダ２０は、エントロピー符号化ユニット１１８によって生成されたエントロピー符号化データを含むビットストリームを出力することができる。更に、本開示の例によれば、図６のビデオエンコーダ２０は、ビットストリームにおいて、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリストに含まれているかどうかを示すシンタックス要素を信号伝達することができる。
【０１９１】
[0197]図７は、本開示の技術を実装するように構成されている例示的なビデオデコーダ３０を示すブロック図である。図７は説明のために用意され、本開示において広範に例示され、説明されているような技術に対する制限ではない。説明のために、本開示では、ＨＥＶＣコード化を背景としてビデオデコーダ３０について説明する。しかしながら、本開示の技術は、他のコード化規格又は方法に適用可能であるものとしてよい。
【０１９２】
[0198]図７の例において、ビデオデコーダ３０は、エントロピー復号ユニット１５０と、予測処理ユニット１５２と、逆量子化ユニット１５４と、逆変換処理ユニット１５６と、再構成ユニット１５８と、フィルタユニット１６０と、復号ピクチャバッファ１６２とを含む。予測処理ユニット１５２は、動き補償ユニット１６４とイントラ予測処理ユニット１６６とを含む。他の例では、ビデオデコーダ３０は、より多い、より少ない、又は異なる機能コンポーネントを含んでもよい。
【０１９３】
[0199]コード化ピクチャバッファ（ＣＰＢ）１５１は、ビットストリームの符号化されたビデオデータ（例えば、ＮＡＬ単位）を受信し、格納することができる。ＣＰＢ１５１は、メモリ又は他のタイプのコンピュータ可読データ記憶媒体を備え得る。エントロピー復号ユニット１５０は、ＣＰＢ１５１からＮＡＬ単位を受信し、ＮＡＬ単位を解析して、ビットストリームからシンタックス要素を取得することができる。エントロピー復号ユニット１５０は、ＮＡＬ単位内のエントロピー符号化されたシンタックス要素をエントロピー復号することができる。予測処理ユニット１５２と、逆量子化ユニット１５４と、逆変換処理ユニット１５６と、再構成ユニット１５８と、フィルタユニット１６０とは、ビットストリームから取得されたシンタックス要素に基づいて復号されたビデオデータを生成することができる。
【０１９４】
[0200]ビットストリームのＮＡＬ単位は、コード化されたスライスＮＡＬ単位を含み得る。ビットストリームを復号する一環として、エントロピー復号ユニット１５０は、コード化されたスライスＮＡＬ単位からシンタックス要素を取得して、エントロピー復号することができる。コード化されたスライスの各々は、スライスヘッダとスライスデータとを含み得る。スライスヘッダは、スライスに関係するシンタックス要素を含むものとしてよい。更に、本開示の１つ又は複数の例によれば、エントロピー復号ユニット１５０は、ビットストリームから、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリストに含まれているかどうかを示すシンタックス要素を取得することができる。
【０１９５】
[0201]ビットストリームからシンタックス要素を取得することに加えて、ビデオデコーダ３０は、ＣＵに復号オペレーションを実行することができる。ＣＵに復号オペレーションを実行することによって、ビデオデコーダ３０は、ＣＵのコード化ブロックを再構成することができる。
【０１９６】
[0202]ＣＵに復号オペレーションを実行する一環として、逆量子化ユニット１５４は、ＣＵのＴＵに関連付けられている係数ブロックを逆に量子化する(inverse quantize)、即ち、逆量子化する(de-quantize)ことができる。量子化ユニット１５４は、ＴＵのＣＵに関連付けられているＱＰ値を使用して、量子化の程度と、同じように、逆量子化ユニット１５４が適用する逆量子化の程度とを決定することができる。即ち、圧縮比、即ち、元のシーケンスを表すために使用されるビットの数と圧縮されたシーケンスのビットの数との比は、変換係数を量子化するときに使用されるＱＰの値を調整することによって制御され得る。圧縮比は、採用されるエントロピーコード化の方法にも依存し得る。
【０１９７】
[0203]逆量子化ユニット１５４が係数ブロックを逆量子化した後、逆変換処理ユニット１５６は、１つ又は複数の逆変換を係数ブロックに適用して、ＴＵに関連付けられている残差ブロックを生成することができる。例えば、逆変換処理ユニット１５６は、逆ＤＣＴ、逆整数変換、逆カルーネン・レーベ変換（ＫＬＴ）、逆回転変換、逆方向性変換、又は別の逆変換を係数ブロックに適用することができる。
【０１９８】
[0204]ＰＵがイントラ予測を使用して符号化される場合、イントラ予測処理ユニット１６６は、イントラ予測を実行して、ＰＵに対する予測ブロックを生成することができる。イントラ予測処理ユニット１６６は、イントラ予測モードを使用して、空間的隣接ＰＵの予測ブロックに基づいてＰＵに対する予測ルーマブロックと、予測Ｃｂブロックと、予測Ｃｒブロックとを生成することができる。イントラ予測処理ユニット１６６は、ビットストリームから復号された１つ又は複数のシンタックス要素に基づいてＰＵに対するイントラ予測モードを決定することができる。
【０１９９】
[0205]予測処理ユニット１５２は、ビットストリームから抽出されたシンタックス要素に基づいて第１の基準ピクチャリスト（ＲｅｆＰｉｃＬｉｓｔ０）と第２の基準ピクチャリスト（ＲｅｆＰｉｃＬｉｓｔ１）とを構成することができる。更に、ＰＵが、インター予測を使用して符号化される場合、エントロピー復号ユニット１５０は、ＰＵに対する動き情報を取得することができる。動き補償ユニット１６４は、ＰＵの動き情報に基づいて、ＰＵに対する１つ又は複数の基準領域を決定することができる。動き補償ユニット１６４は、ＰＵに対する１つ又は複数の基準ブロックのサンプルに基づいて、ＰＵに対する予測ルーマブロックと、予測Ｃｂブロックと、予測Ｃｒブロックとを生成することができる。
【０２００】
[0206]再構成ユニット１５８は、適用可能な場合に、ＣＵのＴＵに関連付けられているルーマ変換ブロックと、Ｃｂ変換ブロックと、Ｃｒ変換ブロックと、ＣＵのＰＵの予測ルーマブロックと、予測Ｃｂブロックと、予測Ｃｒブロックとからの残差値、即ち、イントラ予測データ又はインター予測データのいずれかを使用して、ＣＵのルーマコード化ブロックと、Ｃｂコード化ブロックと、Ｃｒコード化ブロックとを再構成することができる。例えば、再構成ユニット１５８は、ルーマ変換ブロックと、Ｃｂ変換ブロックと、Ｃｒ変換ブロックとのサンプルを予測ルーマブロックと、予測Ｃｂブロックと、予測Ｃｒブロックとの対応するサンプルに加えて、ＣＵのルーマコード化ブロックと、Ｃｂコード化ブロックと、Ｃｒコード化ブロックとを再構成することができる。幾つかの例では、再構成ユニット１５８は加算器を備え得る。
【０２０１】
[0207]フィルタユニット１６０は、デブロッキングオペレーションを実行して、ＣＵのコード化ブロック（例えば、ＣＵのルーマコード化ブロック、Ｃｂコード化ブロック、及びＣｒコード化ブロック）に関連付けられているブロック歪みを低減することができる。ビデオデコーダ３０は、ＣＵのコード化ブロック（例えば、ルーマコード化ブロック、Ｃｂコード化ブロック、及びＣｒコード化ブロック）を復号ピクチャバッファ１６２に記憶し得る。復号ピクチャバッファ１６２は、メモリ又は他のタイプのコンピュータ可読データ記憶媒体を備え得る。復号ピクチャバッファ１６２は、その後の動き補償、イントラ予測、及び図１の表示装置３２などの表示装置への表示のために基準ピクチャを提供することができる。例えば、ビデオデコーダ３０は、復号ピクチャバッファ１６２内のブロック（例えば、ルーマブロック、Ｃｂブロック、及びＣｒブロック）に基づいて、他のＣＵのＰＵにイントラ予測オペレーション又はインター予測オペレーションを実行するものとしてよい。この方法で、ビデオデコーダ３０は、ビットストリームから、有意な係数ブロックの変換係数レベルを取得し、変換係数レベルを逆量子化し、１つ又は複数の変換を変換係数レベルに適用して変換ブロックを生成し、変換ブロックに少なくとも部分的に基づいて、コード化ブロックを生成し、表示用のコード化ブロックを出力することができる。
【０２０２】
[0208]上で示されたように、本開示の幾つかの例は、ＲｅｆＰｉｃＬｉｓｔ１へのビュー／レイヤ間参照ピクチャの包含を無効にする、１つ又は複数のシンタックス要素を提供し得る。例えば、ＶＰＳのような高レベルシンタックス構造は、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇシンタックス要素を含み得る。ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇシンタックス要素は、適用可能なＲｅｆＰｉｃＬｉｓｔ１がビュー／レイヤ間参照ピクチャを含み得るかどうかを示し得る。この例では、適用可能なＲｅｆＰｉｃＬｉｓｔ１は、高レベルシンタックス構造を参照するコード化されたピクチャ／レイヤ表現のＲｅｆＰｉｃＬｉｓｔ１であり得る。更に、この例では、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇシンタックス要素が、適用可能なＲｅｆＰｉｃＬｉｓｔ１がビュー／レイヤ間参照ピクチャを含み得ることを示すとき、スライスのスライスヘッダは、スライスに適用可能なＲｅｆＰｉｃＬｉｓｔ１中のビュー／レイヤ間参照ピクチャの開始位置を示すシンタックス要素（例えば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｌ１＿ｐｌｕｓ）を含み得る。以下の表４は、この例に従った例示的なスライスヘッダシンタックスを示す。表４では、下線付きのテキストは、ＭＶ−ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ２及び／又は３Ｄ−ＨＥＶＣ  Ｔｅｓｔ  Ｍｏｄｅｌ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｄｒａｆｔ  ２に追加されるテキストを示す。
【表４】
0005992640.tif 000006
【０２０３】
[0209]表４では、ｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｌ０＿ｐｌｕｓ１シンタックス要素は、上で説明されたように、ＪＣＴ３Ｖ−Ｃ００６０におけるｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｐｌｕｓ１シンタックス要素のセマンティクスと同じセマンティクスを有する。更に、表４では、ｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｌ１＿ｐｌｕｓ１シンタックス要素は、ＪＣＴ３Ｖ−Ｃ００６０におけるｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｐｌｕｓ１のセマンティクスと同様のセマンティクスを有するが、ＲｅｆＰｉｃＬｉｓｔ１に適用可能である。従って、表４の例では、ビデオエンコーダ２０は、ＲＰＬＭシンタックス要素（例えば、ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１シンタックス要素）を必ずしも信号伝達することなく、ビュー／レイヤ間参照ピクチャがＲｅｆＰｉｃＬｉｓｔ１中の任意の位置に挿入されるべきであることを信号伝達し得る。従って、ｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｌ１＿ｐｌｕｓ１シンタックス要素の使用は、ビットストリームのサイズを減らし得る。更に、単一のｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇシンタックス要素は複数のピクチャに適用可能であってよく、ビデオエンコーダ２０は、ピクチャに適用可能なｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇシンタックス要素が０であるとき、ピクチャのスライスに対してｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｌ１＿ｐｌｕｓ１シンタックス要素のみを信号伝達する。従って、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇシンタックス要素の使用は更に、信号伝達されるｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｌ１＿ｐｌｕｓ１シンタックス要素の数を減らすことによって、ビットストリームのサイズを減らすことができる。
【０２０４】
[0210]従って、表４の例では、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇは第１のシンタックス要素であってよく、ビデオエンコーダ２０はビットストリームにおいて第２のシンタックス要素（例えば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｌ０＿ｐｌｕｓ１）を信号伝達することができる。第２のシンタックス要素は、現在のビュー成分／レイヤ表現に対するＲｅｆＰｉｃＬｉｓｔ０中のビュー／レイヤ間参照ピクチャの開始位置を示し得る。同様に、ビデオデコーダ３０は、ビットストリームから第２のシンタックス要素（例えば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｌ０＿ｐｌｕｓ１）を取得することができる。更に、表４の例では、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する第１の参照ピクチャリスト（例えば、ＲｅｆＰｉｃＬｉｓｔ１）に含まれることを示すとき、ビデオコーダは、ビットストリームから第３のシンタックス要素（例えば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｌ１＿ｐｌｕｓ１）を取得することができる。第３のシンタックス要素は、現在のビュー成分／レイヤ表現に対する第１の参照ピクチャリスト（例えば、ＲｅｆＰｉｃＬｉｓｔ１）中のビュー／レイヤ間参照ピクチャの開始位置を示し得る。
【０２０５】
[0211]更に、本開示の技法は、ＭＶ−ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ２及び／又は３Ｄ−ＨＥＶＣ  Ｔｅｓｔ  Ｍｏｄｅｌ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｄｒａｆｔ  ２で定義される参照ピクチャリスト修正のセマンティクスを修正することができる。本開示の他の箇所で説明されるように、ビデオデコーダ３０は、ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０シンタックス要素及びｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１シンタックス要素に基づいて、ＲＰＬＭを実行することができる。更に、本開示の他の箇所で説明されるように、ビデオデコーダ３０は、ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒ変数に基づいて、各々のｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０シンタックス要素及び各々のｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１シンタックス要素の長さ（例えば、ビットの数）を決定することができる。ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ８では、ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒは、ＮｕｍＰｏｃＳｔＣｕｒｒＢｅｆｏｒｅ＋ＮｕｍＰｏｃＳｔＣｕｒｒＡｆｔｅｒ＋ＮｕｍＰｏｃＬｔＣｕｒｒに等しく設定される。ＮｕｍＰｏｃＳｔＣｕｒｒＢｅｆｏｒｅは、ＲｅｆＰｉｃＳｅｔＳｔＢｅｆｏｒｅ中の要素の数を示す。ＮｕｍＰｏｃＳｔＣｕｒｒＡｆｔｅｒは、ＲｅｆＰｉｃＳｅｔＳｔＡｆｔｅｒ中の要素の数を示す。ＮｕｍＰｏｃＬｔＣｕｒｒは、ＲｅｆＰｉｃＳｅｔＬｔＣｕｒｒ中の要素の数を示す。
【０２０６】
[0212]しかしながら、ＭＶ−ＨＥＶＣ及び３Ｄ−ＨＥＶＣでは、参照ピクチャリストはビュー／レイヤ間参照ピクチャを含み得る。従って、ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒの定義は異なり得る。以下のテキストでは、下線付きのテキストが、ＭＶ−ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ２及び／又は３Ｄ−ＨＥＶＣ  Ｔｅｓｔ  Ｍｏｄｅｌ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｄｒａｆｔ  ２に追加される。以下のテキストで示されるように、変数ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒは次のように導出され得る。
【０２０７】
NumPocTotalCurr = 0; 
for( i = 0; i < NumNegativePics[ StRpsIdx ]; i++) 
if(UsedByCurrPicS0[ StRpsIdx ][ i ] = = 1) 
NumPocTotalCurr++ 
for( i = 0; i < NumPositivePics[ StRpsIdx ]; i++)     (7-56) 
if(UsedByCurrPicS1[ StRpsIdx ][ i ] = = 1) 
NumPocTotalCurr++ 
for( i = 0; i < num_long_term_sps + num_long_term_pics; i++ ) 
if( UsedByCurrPicLt[ i ] = = 1) 
NumPocTotalCurr++
変数ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒは、ＮｕｍＰｏｃＳｔＣｕｒｒＢｅｆｏｒｅ＋ＮｕｍＰｏｃＳｔＣｕｒｒＡｆｔｅｒ＋ＮｕｍＰｏｃＬｔＣｕｒｒ＋ＮｕｍＩｖＣｕｒｒに等しく設定され、ＮｕｍＩｖＣｕｒｒは、ビュー／レイヤ間ＲＰＳ中のエントリの数である。
【０２０８】
[0213]更に、この例では、ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０［ｉ］及びｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１［ｉ］シンタックス要素は、次のセマンティクスを有し得る。
【０２０９】
ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０［ｉ］は、参照ピクチャリスト０の現在の位置に配置されるべき、ＲｅｆＰｉｃＬｉｓｔＴｅｍｐ０中の参照ピクチャのインデックスを規定する。ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０［ｉ］シンタックス要素の長さはＣｅｉｌ（Ｌｏｇ２（ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒ））ビットである。ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０［ｉ］の値は、両端を含めて、０〜ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒ−１の範囲にあるべきである。シンタックス要素ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０［ｉ］が存在しない場合、それは０に等しいと推測される。
【０２１０】
ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１［ｉ］は、参照ピクチャリスト１の現在の位置に配置されるべき、ＲｅｆＰｉｃＬｉｓｔＴｅｍｐ１中の参照ピクチャのインデックスを規定する。ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１［ｉ］シンタックス要素の長さはＣｅｉｌ（Ｌｏｇ２（ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒ））ビットである。ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１［ｉ］の値は、両端を含めて、０〜ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒ−１の範囲にあるべきである。シンタックス要素ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１［ｉ］が存在しない場合、それは０に等しいと推測される。
【０２１１】
[0214]この例におけるｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０［ｉ］シンタックス要素及びｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１［ｉ］シンタックス要素のセマンティクスは、ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ８においてｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０［ｉ］シンタックス要素及びｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１［ｉ］シンタックス要素に対して定義されるものと同様であり得る。しかしながら、この例はＮｕｍＰｏｃＴｏｔａｌＣｕｒｒの異なる定義を与えるので、ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０［ｉ］シンタックス要素及びｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１［ｉ］シンタックス要素の長さ及び範囲は、ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ８とは異なり得る。
【０２１２】
[0215]更に、本開示の幾つかの例は、ＭＶ−ＨＥＶＣ及び／又は３Ｄ−ＨＥＶＣのＲＰＬＭ処理を修正することができる。例えば、ＭＶ−ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ２及び３Ｄ−ＨＥＶＣ  Ｔｅｓｔ  Ｍｏｄｅｌ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｄｒａｆｔ  ２で定義されるような、ＭＶ−ＨＥＶＣ及び３Ｄ−ＨＥＶＣのＲＰＬＭ処理における変数ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒの定義は、ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒが変数ＮｕｍＩｖＣｕｒｒに依存するように修正され得る。上で示されたように、ＮｕｍＩｖＣｕｒｒは、ビュー／レイヤ間ＲＰＳ中のエントリの数であり得る。具体的には、本開示の一例では、変数ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒは、次のように、ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０シンタックス要素のセマンティクスに関して定義され得る。即ち、
変数ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒは、ＮｕｍＰｏｃＳｔＣｕｒｒＢｅｆｏｒｅ＋ＮｕｍＰｏｃＳｔＣｕｒｒＡｆｔｅｒ＋ＮｕｍＰｏｃＬｔＣｕｒｒ＋ＮｕｍＩｖＣｕｒｒに等しく設定される。
【０２１３】
[0216]更に、この例では、ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０［ｉ］シンタックス要素は、次のセマンティクスを有し得る。  
ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０［ｉ］は、参照ピクチャリスト０の現在の位置に配置されるべき、ＲｅｆＰｉｃＬｉｓｔＴｅｍｐ０中の参照ピクチャのインデックスを規定する。ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０［ｉ］シンタックス要素の長さはＣｅｉｌ（Ｌｏｇ２（ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒ））ビットである。ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０［ｉ］の値は、両端を含めて、０〜ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒ−１の範囲にあるべきである。シンタックス要素ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０［ｉ］が存在しない場合、それは０に等しいと推測される。
【０２１４】
[0217]この例によれば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが１である場合、変数ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒは更に、ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒがＮｕｍＰｏｃＳｔＣｕｒｒＢｅｆｏｒｅ＋ＮｕｍＰｏｃＳｔＣｕｒｒＡｆｔｅｒ＋ＮｕｍＰｏｃＬｔＣｕｒｒに等しくなるように、ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１［ｉ］シンタックス要素のセマンティクスに関して修正される。この例では、ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１［ｉ］は、次のセマンティクスを有し得る。  
ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１［ｉ］は、参照ピクチャリスト１の現在の位置に配置されるべき、ＲｅｆＰｉｃＬｉｓｔＴｅｍｐ１中の参照ピクチャのインデックスを規定する。ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１［ｉ］シンタックス要素の長さはＣｅｉｌ（Ｌｏｇ２（ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒ））ビットである。ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１［ｉ］の値は、両端を含めて、０〜ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒ−１の範囲にあるべきである。シンタックス要素ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１［ｉ］が存在しない場合、それは０に等しいと推測される。
【０２１５】
[0218]本開示の別の例では、ＭＶ−ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ２及び／又は３Ｄ−ＨＥＶＣ  Ｔｅｓｔ  Ｍｏｄｅｌ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｄｒａｆｔ  ２で定義されるｌｉｓｔ＿ｅｎｔｒｙ＿ｌＸ［ｉ］のセマンティクス（Ｘは０又は１に等しい）は次のように修正される。ｌｉｓｔ＿ｅｎｔｒｙ＿ｌＸ［ｉ］のセマンティクスの以下の説明では、下線付きのテキストは、ＭＶ−ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ２及び／又は３Ｄ−ＨＥＶＣ  Ｔｅｓｔ  Ｍｏｄｅｌ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｄｒａｆｔ  ２におけるｌｉｓｔ＿ｅｎｔｒｙ＿ｌ０及びｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１のセマンティクスに追加されるテキストである。  
ｌｉｓｔ＿ｅｎｔｒｙ＿ｌＸ［ｉ］は、参照ピクチャリストＸの現在の位置に配置されるべき、ＲｅｆＰｉｃＬｉｓｔＴｅｍｐＸ中の参照ピクチャのインデックスを規定する。ｌｉｓｔ＿ｅｎｔｒｙ＿ｌＸ［ｉ］シンタックス要素の長さはＣｅｉｌ（Ｌｏｇ２（ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒＬＸ））ビットである。ｌｉｓｔ＿ｅｎｔｒｙ＿ｌＸ［ｉ］の値は、両端を含めて、０〜ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒＬＸ−１の範囲にあるべきである。シンタックス要素ｌｉｓｔ＿ｅｎｔｒｙ＿ｌＸ［ｉ］が存在しない場合、それは０に等しいと推測される。ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが１に等しいとき、（ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒＬ１−ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒＬ０）はＮｕｍＩｖＣｕｒｒに等しい。ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒＬＸは次のように導出される。  
NumPocTotalCurrLX= NumPocStCurrBefore + NumPocStCurrAfter + NumPocLtCurr +
((inter_view_l1_disable_flag && X) ? 0 : NumIvCurr)。
【０２１６】
[0219]ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１（及びｌｉｓｔ＿ｅｎｔｒｙ＿ｌＸ）の例示的なセマンティクスで示されるように、各ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１シンタックス要素の長さは、ＲｅｆＰｉｃＬｉｓｔ１中の参照ピクチャの総数（即ち、ＮｕｍＰｏｃＴｏｔａｌＣｕｒｒ）に依存する。従って、ＲｅｆＰｉｃＬｉｓｔ１中により少数の参照ピクチャがある場合、ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１シンタックス要素の各々はより少数のビットを含む。ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが１である場合、ＲｅｆＰｉｃＬｉｓｔ１はビュー／レイヤ間参照ピクチャを含まないので、ＲｅｆＰｉｃＬｉｓｔ１にはより少数の参照ピクチャがある。従って、ピクチャに適用可能なｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが１である場合、ピクチャのＲｅｆＰｉｃＬｉｓｔ１に対する各ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１シンタックス要素は、より少数のビットを含み得る。
【０２１７】
[0220]従って、ビデオデコーダ３０は、ビットストリームから、参照ピクチャリスト（例えば、ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１シンタックス要素）を修正するための参照ピクチャリスト修正（ＲＰＬＭ）シンタックス要素を取得することができ、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが、ビュー／レイヤ間参照ピクチャが参照ピクチャリストに決して含まれていないことを示すとき、ＲＰＬＭシンタックス要素は、ビュー／レイヤ間参照ピクチャが参照ピクチャリストに含まれることをシンタックス要素が示すときよりも、少数のビットを含む。同様に、ビデオエンコーダ２０は、ビットストリームにおいて、参照ピクチャリスト（例えば、ｌｉｓｔ＿ｅｎｔｒｙ＿ｌ１シンタックス要素）を修正するためのＲＰＬＭシンタックス要素を信号伝達することができ、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが、ビュー／レイヤ間参照ピクチャが参照ピクチャリストに決して含まれていないことを示すとき、ＲＰＬＭシンタックス要素の各々は、ビュー／レイヤ間参照ピクチャが参照ピクチャリストに含まれることをシンタックス要素が示すときよりも、少数のビットを含み得る。少なくともこの方法で、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇの使用は、ビットストリームのサイズを減らし得る。
【０２１８】
[0221]図８Ａは、本開示の例による、ビデオエンコーダ２０の動作を示すフローチャートである。図８Ａの例によれば、ビデオエンコーダ２０は、ビデオデータの符号化された表現を備えるビットストリームにおいて、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリストに含まれているかどうかを示すシンタックス要素を信号伝達することができる（２００）。幾つかの例では、ビデオエンコーダ２０は、ＶＰＳにおいてｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇシンタックス要素を信号伝達することができる。幾つかのそのような例では、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇシンタックス要素は、ＣＶＳの各々のそれぞれのビュー成分／レイヤ表現に対して、ビュー／レイヤ間参照ピクチャがそれぞれのビュー成分／レイヤ表現に対するそれぞれの参照ピクチャリストに含まれているかどうかを示し得る。更に、幾つかのそのような例では、ビデオエンコーダ２０は、ＶＰＳを参照するＣＶＳの各々のそれぞれのビュー成分／レイヤ表現に対して、ビットストリームにおいて、それぞれのビュー成分／レイヤ表現に対するそれぞれの第２の参照ピクチャリスト（例えば、ＲｅｆＰｉｃＬｉｓｔ０）中でのビュー／レイヤ間参照ピクチャの開始位置を示すそれぞれの第１のシンタックス要素（例えば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｌ０＿ｐｌｕｓ１）を信号伝達することができる。
【０２１９】
[0222]他の例では、ビデオエンコーダ２０は、ビットストリーム中の複数のレイヤからの各々のそれぞれのレイヤに対するｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇシンタックス要素を信号伝達することができる。そのような例では、それぞれのレイヤシンタックス要素に対するｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇシンタックス要素は、ビュー／レイヤ間参照ピクチャがそれぞれのレイヤ中のビュー成分／レイヤ表現のそれぞれの参照ピクチャリストに含まれているかどうかを示す。更に、幾つかの例では、ビデオエンコーダ２０は、複数のレイヤの各々の、各々のそれぞれのビュー成分／レイヤ表現に対して、ビットストリームにおいて、それぞれのビュー成分／レイヤ表現に対するそれぞれの追加の参照ピクチャリスト中でのビュー／レイヤ間参照ピクチャの開始位置を示すそれぞれの追加のシンタックス要素（例えば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｌ１＿ｐｌｕｓ１）を信号伝達することができる。
【０２２０】
[0223]加えて、ビデオエンコーダ２０は、現在のビュー成分／レイヤ表現を符号化することができる（２０２）。本開示の様々な例で説明されるように、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇシンタックス要素が１であるとき、ビデオエンコーダ２０は、現在のビュー成分／レイヤ表現を符号化するために、参照ピクチャリスト（例えば、ＲｅｆＰｉｃＬｉｓｔ１）中のビュー／レイヤ間参照ピクチャを使用しない。
【０２２１】
[0224]図８Ｂは、本開示の例による、ビデオデコーダ３０の動作を示すフローチャートである。図８Ｂの例では、ビデオデコーダ３０は、ビットストリームから、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリストに含まれているかどうかを示すシンタックス要素（例えば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇ）を取得する（２１０）。幾つかの例では、現在のビュー成分／レイヤ表現は、ＶＰＳを参照するＣＶＳの一部であり得る。そのような例では、ビデオデコーダ３０は、ＶＰＳからシンタックス要素を取得することができる。更に、そのような例では、シンタックス要素は、ＣＶＳの各々のそれぞれのビュー成分／レイヤ表現に対して、ビュー／レイヤ間参照ピクチャがそれぞれのビュー成分／レイヤ表現に対するそれぞれの参照ピクチャリストに含まれているかどうかを示し得る。幾つかの例では、エントロピー復号ユニット１５０（図７）は、ビットストリームからシンタックス要素を取得することができる。
【０２２２】
[0225]他の例では、現在のビュー成分／レイヤ表現は、ビットストリーム中の複数のレイヤ中のある特定のレイヤの中にある。そのような例では、ビデオデコーダ３０は、複数のレイヤからの各々のそれぞれのレイヤに対して、ビュー／レイヤ間参照ピクチャがそれぞれのレイヤ中のビュー成分／レイヤ表現のそれぞれの参照ピクチャリストに含まれているかどうかを示すそれぞれのレイヤに対するそれぞれのシンタックス要素を取得することができる。
【０２２３】
[0226]ビデオデコーダ３０は、現在のビュー成分／レイヤ表現を復号することができる（２１２）。ビュー／レイヤ間参照ピクチャが参照ピクチャリストに決して含まれていないことをシンタックス要素が示すとき、ビデオデコーダ３０は、参照ピクチャリスト中のビュー／レイヤ間参照ピクチャの使用を伴わずに、現在のビュー成分／レイヤ表現を復号する。
【０２２４】
[0227]図９は、本開示の例による、スライスヘッダを解析するための例示的な動作を示すフローチャートである。表４の例に関して上で示されたように、スライスヘッダは、ＲｅｆＰｉｃＬｉｓｔ１中のビュー／レイヤ間参照ピクチャの開始位置を示すシンタックス要素（即ち、ｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｌ１＿ｐｌｕｓ１シンタックス要素）を適応的に含み得る。
【０２２５】
[0228]具体的には、図９の例では、ビデオデコーダ３０は、ビットストリームからｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇを取得することができる（２３０）。幾つかの例では、ビデオデコーダ３０は、ＶＰＳからｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇを取得することができる。他の例では、ビデオデコーダ３０は、ＳＰＳ又は別のシンタックス構造からｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇを取得することができる。例えば、ビデオエンコーダ２０が各ビュー／レイヤに対してｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇを信号伝達するとき、ビデオエンコーダ２０は、レイヤの各々の中のＣＶＳに適用可能なＳＰＳ中でｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇを信号伝達することができる。幾つかの例では、エントロピー復号ユニット１５０（図７）は、ビットストリームからシンタックス要素を取得することができる。
【０２２６】
[0229]更に、図９の例では、ビデオデコーダ３０は、スライスヘッダのシンタックス要素を取得するために、現在のピクチャのスライスのスライスヘッダを解析することができる。幾つかの例では、エントロピー復号ユニット１５０が、スライスヘッダを解析することができる。スライスヘッダを解析することの一部として、ビデオデコーダ３０は、スライスがＩスライスであるかどうかを決定することができる（２３２）。言い換えると、ビデオデコーダ３０は、インター予測がスライス中で可能にされるかどうかを決定することができる。スライスがＩスライスではない（即ち、ブロックはＰスライス又はＢスライスである）と決定したことに応答して（２３２の「はい」）、ビデオデコーダ３０は、スライスヘッダから、現在のピクチャのＲｅｆＰｉｃＬｉｓｔ０中のビュー／レイヤ間参照ピクチャの開始位置を示すシンタックス要素（例えば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｌ０＿ｐｌｕｓ１）を取得することができる（２３４）。
【０２２７】
[0230]従って、現在のビュー成分／レイヤ表現がＶＰＳを参照するＣＶＳの一部であり、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇがＶＰＳで信号伝達される幾つかの例では、ビデオデコーダ３０は、ＣＶＳの各々のそれぞれのビュー成分／レイヤ表現に対して、それぞれのビュー成分／レイヤ表現に対するそれぞれの第２の参照ピクチャリスト中のビュー／レイヤ間参照ピクチャの開始位置を示す、それぞれの追加のシンタックス要素（例えば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｌ０＿ｐｌｕｓ１）を取得することができる。
【０２２８】
[0231]更に、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇがビットストリームの複数のレイヤ中の各レイヤに対して信号伝達される幾つかの例では、ビデオデコーダ３０は、複数のレイヤの各々の、各々のそれぞれのビュー成分／レイヤ表現に対して、それぞれのビュー成分／レイヤ表現に対するそれぞれの追加の参照ピクチャリスト中でのビュー／レイヤ間参照ピクチャの開始位置を示すそれぞれの追加のシンタックス要素（例えば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｌ０＿ｐｌｕｓ１）を取得することができる。
【０２２９】
[0232]更に、ビデオデコーダ３０は、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇに基づいて、ビュー／レイヤ間参照ピクチャが現在のピクチャのＲｅｆＰｉｃＬｉｓｔ１に含まれているかどうかを決定することができる（２３６）。ビュー／レイヤ間参照ピクチャが現在のピクチャのＲｅｆＰｉｃＬｉｓｔ１に含まれると決定したことに応答して（２３６の「はい」）、ビデオデコーダ３０は、スライスヘッダから、ＲｅｆＰｉｃＬｉｓｔ１中のビュー／レイヤ間参照ピクチャの開始位置を示すシンタックス要素（例えば、ｉｎｔｅｒ＿ｖｉｅｗ＿ｒｅｆ＿ｓｔａｒｔ＿ｐｏｓｉｔｉｏｎ＿ｌ１＿ｐｌｕｓ１）を取得することができる（２３８）。
【０２３０】
[0233]続いて、又は、スライスがＩスライスであると決定したことに応答して（２３２の「はい」）、又は、ビュー／レイヤ間参照ピクチャが現在のピクチャのＲｅｆＰｉｃＬｉｓｔ１に決して含まれていないと決定したことに応答して（２３６の「いいえ」）、ビデオデコーダ３０は、もしあれば、スライスヘッダの追加のシンタックス要素を取得することができる（２４０）。
【０２３１】
[0234]図１０は、本開示の例による、隣接ブロックベース視差ベクトル（ＮＢＤＶ）の導出プロセスを示すフローチャートである。図１０の例では、ビデオコーダ（例えば、ビデオエンコーダ２０又はビデオデコーダ３０）は、現在の空間的隣接ブロックがＲｅｆＰｉｃＬｉｓｔ０視差動きベクトルを有するかどうかを決定することができる（２５０）。現在の空間的隣接ブロックは、現在のブロックの空間的隣接ブロックの１つであり得る。現在の空間的隣接ブロックがＲｅｆＰｉｃＬｉｓｔ０視差動きベクトルを有すると決定したことに応答して（２５０の「はい」）、ビデオコーダは、現在の空間的隣接ブロックのＲｅｆＰｉｃＬｉｓｔ０視差動きベクトルを、現在のブロックに対する視差ベクトルへと変換することができる（２５２）。ビデオコーダは次いで、ＮＢＤＶ導出処理を終了することができる。
【０２３２】
[0235]一方、現在の空間的隣接ブロックがＲｅｆＰｉｃＬｉｓｔ０視差動きベクトルを有しないと決定したことに応答して（２５２の「いいえ」）、ビデオコーダは、現在の空間的隣接ブロックに対するＩＤＶを記憶することができる（２５４）。幾つかの例では、ビデオコーダは、現在の空間的隣接ブロックの予測モードがスキップモードを使用してコード化される場合にのみ、現在の空間的隣接ブロックに対するＩＤＶを記憶することができる。幾つかの例では、ビデオコーダは、復号ピクチャバッファ（例えば、復号ピクチャバッファ１１６又は復号ピクチャバッファ１６２）にＩＤＶを記憶することができる。更に、ビデオコーダは、ビュー／レイヤ間参照ピクチャが現在の空間的隣接ブロックのＲｅｆＰｉｃＬｉｓｔ１に含まれていることをｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが示すかどうかを決定することができる（２５６）。
【０２３３】
[0236]ビュー／レイヤ間参照ピクチャが現在の空間的隣接ブロック（即ち、現在の空間的隣接ブロックのＲｅｆＰｉｃＬｉｓｔ１）を含むピクチャのＲｅｆＰｉｃＬｉｓｔ１に含まれ得ることを、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが示すと決定したことに応答して（２５６の「はい」）、ビデオコーダは、現在の空間的隣接ブロックがＲｅｆＰｉｃＬｉｓｔ１視差動きベクトルを有するかどうかを決定することができる（２５８）。現在の空間的隣接ブロックがＲｅｆＰｉｃＬｉｓｔ１視差動きベクトルを有すると決定したことに応答して（２５８の「はい」）、ビデオコーダは、現在の空間的隣接ブロックに対するＲｅｆＰｉｃＬｉｓｔ１視差動きベクトルを、現在のブロックに対する視差ベクトルへと変換することができる（２６０）。ビデオコーダは次いで、ＮＢＤＶ導出処理を終了することができる。
【０２３４】
[0237]一方、現在の空間的隣接ブロックがＲｅｆＰｉｃＬｉｓｔ１視差動きベクトルを有しないと決定したことに応答して（２５８の「いいえ」）、ビデオコーダは、現在の空間的隣接ブロックに対するＩＤＶを記憶することができる（２６２）。幾つかの例では、ビデオコーダは、現在の空間的隣接ブロックの予測モードがスキップモードを使用してコード化される場合にのみ、現在の空間的隣接ブロックに対するＩＤＶを記憶することができる。従って、ビデオコーダは、現在の空間的隣接ブロックに対する２つのＩＤＶを記憶する可能性があり得る。幾つかの例では、ビデオコーダは、復号ピクチャバッファ（例えば、復号ピクチャバッファ１１６又は復号ピクチャバッファ１６２）にＩＤＶを記憶することができる。
【０２３５】
[0238]ビュー／レイヤ間参照ピクチャが現在の空間的隣接ブロックのＲｅｆＰｉｃＬｉｓｔ１に決して含まれていないことをｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが示すと決定したことに応答して（２５６の「いいえ」）、又は、２６２において現在の空間的隣接ブロックに対するＩＤＶを記憶した後で、ビデオコーダは、確認すべき残りの空間的隣接ブロックがあるかどうかを決定することができる（２６４）。確認すべき１つ又は複数の残りの空間的隣接ブロックがあると決定したことに応答して（２６４の「はい」）、ビデオコーダは、現在の空間的隣接ブロックとして、残りの空間的隣接ブロックの１つについて動作２５２〜２６４を繰り返すことができる。従って、本開示の例によれば、ビュー／レイヤ間参照ピクチャが現在の空間的隣接ブロックのＲｅｆＰｉｃＬｉｓｔ１に決して含まれていないことをｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが示すとき、ビデオコーダは、現在の空間的隣接ブロックに対するせいぜい１つのＩＤＶを記憶する。
【０２３６】
[0239]更に、残りの空間的隣接ブロックがないと決定したことに応答して（２６４の「いいえ」）、ビデオコーダは、現在の時間的隣接ブロックがＲｅｆＰｉｃＬｉｓｔ０視差動きベクトルを有するかどうかを決定することができる（２６６）。現在の時間的隣接ブロックは、現在のブロックの時間的隣接ブロックの１つであり得る。現在の時間的隣接ブロックがＲｅｆＰｉｃＬｉｓｔ０視差動きベクトルを有すると決定したことに応答して（２６６の「はい」）、ビデオコーダは、現在の時間的隣接ブロックのＲｅｆＰｉｃＬｉｓｔ０視差動きベクトルを、現在のブロックに対する視差ベクトルへと変換することができる（２６８）。ビデオコーダは次いで、ＮＢＤＶ導出処理を終了することができる。
【０２３７】
[0240]一方、現在の時間的隣接ブロックがＲｅｆＰｉｃＬｉｓｔ０視差動きベクトルを有しないと決定したことに応答して（２６６の「いいえ」）、ビデオコーダは、現在の時間的隣接ブロックに対するＩＤＶを記憶することができる（２７０）。幾つかの例では、ビデオコーダは、現在の時間的隣接ブロックの予測モードがスキップモードを使用してコード化される場合にのみ、現在の時間的隣接ブロックに対するＩＤＶを記憶することができる。幾つかの例では、ビデオコーダは、復号ピクチャバッファ（例えば、復号ピクチャバッファ１１６又は復号ピクチャバッファ１６２）にＩＤＶを記憶することができる。加えて、ビデオコーダは、ビュー／レイヤ間参照ピクチャが現在の時間的隣接ブロックのＲｅｆＰｉｃＬｉｓｔ１に含まれていることをｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが示すかどうかを決定することができる（２７２）。ビュー／レイヤ間参照ピクチャが現在の時間的隣接ブロックのＲｅｆＰｉｃＬｉｓｔ１に含まれ得ることを、ｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが示すと決定したことに応答して（２７２の「はい」）、ビデオコーダは、現在の時間的隣接ブロックがＲｅｆＰｉｃＬｉｓｔ１視差動きベクトルを有するかどうかを決定することができる（２７４）。現在の時間的隣接ブロックがＲｅｆＰｉｃＬｉｓｔ１視差動きベクトルを有すると決定したことに応答して（２７４の「はい」）、ビデオコーダは、現在の時間的隣接ブロックに対するＲｅｆＰｉｃＬｉｓｔ１視差動きベクトルを、現在のブロックに対する視差ベクトルへと変換することができる（２７６）。ビデオコーダは次いで、ＮＢＤＶ導出処理を終了することができる。
【０２３８】
[0241]一方、現在の時間的隣接ブロックがＲｅｆＰｉｃＬｉｓｔ１視差動きベクトルを有しないと決定したことに応答して（２７４の「いいえ」）、ビデオコーダは、現在の時間的隣接ブロックに対するＩＤＶを記憶することができる（２７８）。幾つかの例では、ビデオコーダは、現在の時間的隣接ブロックの予測モードがスキップモードを使用してコード化される場合にのみ、現在の時間的隣接ブロックに対するＩＤＶを記憶することができる。従って、ビデオコーダは、現在の時間的隣接ブロックに対する２つのＩＤＶを記憶する可能性があり得る。幾つかの例では、ビデオコーダは、復号ピクチャバッファ（例えば、復号ピクチャバッファ１１６又は復号ピクチャバッファ１６２）にＩＤＶを記憶することができる。
【０２３９】
[0242]ビュー／レイヤ間参照ピクチャが現在の時間的隣接ブロックのＲｅｆＰｉｃＬｉｓｔ１に決して含まれていないことをｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが示すと決定したことに応答して（２７２の「いいえ」）、又は、（２７８）で現在の時間的隣接ブロックに対するＩＤＶを記憶した後で、ビデオコーダは、確認すべき残りの時間的隣接ブロックがあるかどうかを決定することができる（２８０）。確認すべき１つ又は複数の残りの時間的隣接ブロックがあると決定したことに応答して（２８０の「はい」）、ビデオコーダは、現在の時間的隣接ブロックとして、残りの時間的隣接ブロックの１つについて動作２６６〜２８０を繰り返すことができる。従って、本開示の例によれば、ビュー／レイヤ間参照ピクチャが現在の時間的隣接ブロックのＲｅｆＰｉｃＬｉｓｔ１に決して含まれていないことをｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが示すとき、ビデオコーダは、現在の時間的隣接ブロックに対するせいぜい１つのＩＤＶを記憶する。
【０２４０】
[0243]残りの時間的隣接ブロックがないと決定したことに応答して（２８０の「いいえ」）、ビデオコーダは、現在の隣接ブロックがＩＤＶを有するかどうかを決定することができる（２８２）。現在の隣接ブロックは、現在のブロックの空間的隣接ブロックの１つ、又は、空間時間的隣接ブロックの１つであり得る。幾つかの例では、ビデオコーダは、ＩＤＶに対する時間的隣接ブロックのいずれの確認よりも前に、ＩＤＶに対する空間的隣接ブロックを確認する。現在の空間的隣接ブロックがＩＤＶを有すると決定したことに応答して（２８２の「はい」）、ビデオコーダは、現在の隣接ブロックのＩＤＶを現在のブロックの視差ベクトルへと変換することができる（２８４）。しかしながら、現在の隣接ブロックがＩＤＶを有しないと決定したことに応答して（２８２の「いいえ」）、ビデオコーダは、残りの隣接ブロックがあるかどうかを決定することができる（２８６）。確認すべき１つ又は複数の残りの隣接ブロックがあると決定したことに応答して（２８６の「はい」）、ビデオコーダは、現在の隣接ブロックとして、残りの隣接ブロックの１つについて動作２８２〜２８６を繰り返すことができる。一方、残りの隣接ブロックがないと決定したことに応答して（２８６の「いいえ」）、ビデオコーダは、現在のブロックに対する視差ベクトルが利用不可能であると決定することができる（２８８）。
【０２４１】
[0244]従って、図１０の例に示されるように、ＲｅｆＰｉｃＬｉｓｔ１がビュー／レイヤ間参照ピクチャを決して含んでいないことをｉｎｔｅｒ＿ｖｉｅｗ＿ｌ１＿ｄｉｓａｂｌｅ＿ｆｌａｇが示すとき、動き情報は決して確認されない。その結果、図１０のＮＢＤＶ導出処理の複雑さは、２倍小さくされ得る。幾つかの例では、図１０の動作は、ビデオエンコーダ２０のインター予測処理ユニット１２０（図６）又はビデオデコーダ３０の予測処理ユニット１５２（図７）によって実行され得る。
【０２４２】
[0245]例によっては、本明細書で説明された方法のうちいずれかの、幾つかの動作又はイベントは、異なる順序で実行されてよく、追加され、統合され、又は完全に除外されてよい（例えば、全ての説明した動作又はイベントが、本方法の実施のために必要であるとは限らない）ことを認識されたい。その上、幾つかの例では、動作又はイベントは、連続的にではなく、同時に、例えば、マルチスレッド処理、割込み処理、又は複数のプロセッサを通じて実行され得る。
【０２４３】
[0246]上記の例はどれもその詳細が、他の例と組み合わされ、本開示と一致するものとしてよい。１つ又は複数の例において、説明されている機能は、ハードウェア、ソフトウェア、ファームウェア、又はこれらの組合せで実装され得る。ソフトウェアで実装される場合、これらの機能は、１つ又は複数の命令又はコードとして、コンピュータ可読媒体上で格納又は送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、データ記憶媒体などの有形の媒体に対応する、コンピュータ可読記憶媒体、又は例えば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を円滑にする媒体を含む通信媒体を含むものとしてよい。このように、コンピュータ可読媒体は、一般的に、（１）非一時的である有形のコンピュータ可読記憶媒体、又は（２）信号又は搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示において説明されている技術の実装のため、命令、コード、及び／又はデータ構造体を取り出すために、１つ又は複数のコンピュータ又は１つ又は複数のプロセッサによってアクセスされ得る利用可能な任意の媒体とすることができる。コンピュータプログラム製品はコンピュータ可読媒体を含むものとしてよい。
【０２４４】
[0247]本明細書で開示される方法、システム及び装置と関連して説明される様々な例示的論理ブロック、モジュール、回路、及びアルゴリズムのステップは、電子ハードウェア、プロセッサによって実行されるコンピュータソフトウェア、又は両方の組合せとして実装され得ることを、当業者は認識するであろう。ハードウェアとソフトウェアのこの互換性を明確に示すために、様々な例示的なコンポーネント、ブロック、モジュール、回路、及びステップが、上では全般にそれらの機能に関して説明された。そのような機能がハードウェアとして実装されるか、ソフトウェアとして実装されるかは、具体的な適用例及び全体的なシステムに課される設計制約に依存する。当業者は、説明された機能を具体的な適用例ごとに多様な方法で実装し得るが、そのような実装の決定は、本発明の範囲からの逸脱を生じるものと解釈されるべきではない。
【０２４５】
[0248]例として、限定はしないが、このようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（登録商標）、ＣＤ−ＲＯＭ、又は他の光ディスク記憶、磁気ディスク記憶、又は他の磁気記憶機器、フラッシュメモリ、又は命令又はデータ構造体の形態で所望のプログラムコードを格納するために使用され得る、コンピュータによってアクセスされ得る他の任意の媒体を備えることができる。また、接続がコンピュータ可読媒体と称されることも適切である。例えば、命令が同軸ケーブル、光ファイバケーブル、ツイストペア線、デジタル加入者回線（ＤＳＬ）、又は赤外線、無線、及びマイクロ波などのワイヤレス技術を使用してウェブサイト、サーバ、又は他のリモート発信源から送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア線、ＤＳＬ、又は赤外線、無線、及びマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。しかしながら、コンピュータ可読記憶媒体とデータ記憶媒体とは、接続、搬送波、信号、又は他の一時的媒体を含まないが、代わりに、非一時的な有形の記憶媒体に向けられることが理解されるであろう。本明細書で使用するディスク（ｄｉｓｋ）及びディスク（ｄｉｓｃ）は、コンパクトディスク（ｄｉｓｃ）（ＣＤ）、レーザディスク（登録商標）（ｄｉｓｃ）、光ディスク（ｄｉｓｃ）、デジタル多用途ディスク（ｄｉｓｃ）（ＤＶＤ）、フロッピー（登録商標）ディスク（ｄｉｓｋ）、及びブルーレイディスク（ｄｉｓｃ）を含み、ディスク（ｄｉｓｋ）は、通常、データを磁気的に再生し、ディスク（ｄｉｓｃ）は、データをレーザで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
【０２４６】
[0249]命令は、１つ又は複数のデジタルシグナルプロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルロジックアレイ（ＦＰＧＡ）、又は他の同等の集積回路又はディスクリート部品による論理回路などの１つ又は複数のプロセッサによって実行され得る。従って、本明細書で使用されているような「プロセッサ」という用語は、前述の構造物又は本明細書で説明されている技術の実装に適している他の構造物のいずれかを指すものとしてよい。それに加えて、幾つかの態様では、本明細書で説明されている機能は、符号化と復号とを行うように構成された専用ハードウェア及び／又はソフトウェアモジュール内に設けられるか、又は組み合わされたコーデックに組み込まれ得る。また、これらの技術は、１つ又は複数の回路又は論理素子で完全に実装されることもあり得る。
【０２４７】
[0250]本開示の技術は、ワイヤレスハンドセット、集積回路（ＩＣ）、又は一組のＩＣ（例えば、チップセット）を含む、様々な機器又は装置で実装され得る。様々なコンポーネント、モジュール、又はユニットは、開示されている技術を実行するように構成された機器の機能的態様を強調するように本開示において説明されているが、異なるハードウェアユニットによる実現を必ずしも必要としない。むしろ、上で説明されているように、様々なユニットが、コーデックハードウェアユニット内に組み合わされるか、又は好適なソフトウェア及び／又はファームウェアと併せて、上述のような１つ又は複数のプロセッサを含む、相互運用性を有するハードウェアユニットの集合体によって構成され得る。
【０２４８】
[0251]本明細書で開示される実施形態に関して説明された方法又はアルゴリズムのステップは、直接ハードウェアで具現化されるか、プロセッサによって実行されるソフトウェアモジュールで具現化されるか、又はその２つの組合せで具現化され得る。ソフトウェアモジュールは、ＲＡＭメモリ、フラッシュメモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭメモリ、レジスタ、ハードディスク、リムーバブルディスク、ＣＤ−ＲＯＭ、又は当技術分野で知られている任意の他の形態の記憶媒体内に存在し得る。例示的な記憶媒体は、プロセッサが記憶媒体から情報を読み取り、記憶媒体に情報を書き込むことができるように、プロセッサに結合される。代替として、記憶媒体はプロセッサと一体であり得る。プロセッサ及び記憶媒体はＡＳＩＣ中に存在し得る。ＡＳＩＣはユーザ端末内に存在し得る。代替形態では、プロセッサ及び記憶媒体は、ユーザ端末内の個別コンポーネントとして存在し得る。
【０２４９】
[0252]様々な例が説明された。これら及び他の例は、次の請求項の範囲内にある。
以下に本件出願当初の特許請求の範囲に記載された発明を付記する。
［１］  ビデオデータを復号するための方法であって、ビットストリームから、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリストに含まれているかどうかを示すシンタックス要素を取得することと、前記現在のビュー成分／レイヤ表現を復号することとを備え、ビュー／レイヤ間参照ピクチャが前記参照ピクチャリストに決して含まれていないことを前記シンタックス要素が示すとき、前記現在のビュー成分／レイヤ表現が、前記参照ピクチャリスト中のビュー／レイヤ間参照ピクチャの使用を伴わずに復号される、方法。
［２］  前記現在のビュー成分／レイヤ表現を復号することが、前記現在のブロックに対する視差ベクトルを決定するために、前記現在のビュー成分／レイヤ表現の現在のブロックに隣接する１つ以上のブロックを確認する、視差ベクトル導出処理を実行することを備え、前記視差ベクトル導出処理を実行することが、ビュー／レイヤ間参照ピクチャが前記現在のビュー成分／レイヤ表現に対する前記参照ピクチャリストに決して含まれていないことを前記シンタックス要素が示すとき、前記現在のビュー成分／レイヤ表現に対する前記参照ピクチャリストに対応する動き情報を確認しないことを備える、［１］に記載の方法。
［３］  前記現在のビュー成分／レイヤ表現が、前記ビットストリーム中の複数のレイヤ中の特定のレイヤの中にあり、前記複数のレイヤからの各々のそれぞれのレイヤに対して、ビュー／レイヤ間参照ピクチャが前記それぞれのレイヤ中のビュー成分／レイヤ表現のそれぞれの参照ピクチャリストに含まれているかどうかを示す前記それぞれのレイヤに対するそれぞれのシンタックス要素を取得することを備える、［１］に記載の方法。
［４］  前記参照ピクチャリストを修正するための参照ピクチャリスト修正（ＲＰＬＭ）シンタックス要素を前記ビットストリームから取得することを更に備え、前記シンタックス要素が、ビュー／レイヤ間参照ピクチャが前記参照ピクチャリストに決して含まれていないことを示すとき、前記ＲＰＬＭシンタックス要素の各々が、ビュー／レイヤ間参照ピクチャが前記参照ピクチャリストに含まれていることを前記シンタックス要素が示すときよりも、少数のビットを含む、［１］に記載の方法。
［５］  前記シンタックス要素が第１のシンタックス要素であり、前記参照ピクチャリストが第１の参照ピクチャリストである方法であって、前記方法は、前記ビットストリームから第２のシンタックス要素を取得することを更に備え、前記第２のシンタックス要素が、前記現在のビュー成分／レイヤ表現に対する第２の異なる参照ピクチャリスト中でのビュー／レイヤ間参照ピクチャの開始位置を示す、［１］に記載の方法。
［６］  ビュー／レイヤ間参照ピクチャが前記現在のビュー成分／レイヤ表現に対する前記第１の参照ピクチャリストに含まれることを前記シンタックス要素が示すとき、前記ビットストリームから第３のシンタックス要素を取得すること、前記第３のシンタックス要素が、前記現在のビュー成分／レイヤ表現に対する前記第１の参照ピクチャリスト中でのビュー／レイヤ間参照ピクチャの開始位置を示す、［５］に記載の方法。
［７］  前記現在のビュー成分／レイヤ表現が、ビデオパラメータセット（ＶＰＳ）を参照するコード化されたビデオシーケンス（ＣＶＳ）の一部であり、前記シンタックス要素を前記ＶＰＳから取得することを備え、前記シンタックス要素が、前記ＣＶＳの各々のそれぞれのビュー成分／レイヤ表現に対して、ビュー／レイヤ間参照ピクチャが前記それぞれのビュー成分／レイヤ表現に対するそれぞれの参照ピクチャリストに含まれているかどうかを示す、［１］に記載の方法。
［８］  前記現在のビュー成分／レイヤ表現を復号することが、前記現在のブロックに対する視差ベクトルを決定するために、前記現在のビュー成分／レイヤ表現の現在のブロックに隣接する１つ以上のブロックを確認する、視差ベクトル導出処理を実行することを備え、前記視差ベクトル導出処理を実行することが、前記シンタックス要素が、ビュー／レイヤ間参照ピクチャが前記現在のビュー成分／レイヤ表現に対する前記参照ピクチャリストに決して含まれていないことを示すとき、前記現在のブロックに隣接する前記１つ以上のブロックの各々に対するせいぜい１つの暗黙的な視差ベクトルを記憶することを備える、［１］に記載の方法。
［９］  前記現在のビュー成分／レイヤ表現を復号することが、前記シンタックス要素が、ビュー／レイヤ間参照ピクチャが前記現在のビュー成分／レイヤ表現に対する前記参照ピクチャリストに決して含まれていないことを示すとき、ビュー／レイヤ間参照ピクチャに対応する候補を候補リストに決して含めないことと、前記シンタックス要素が、ビュー／レイヤ間参照ピクチャが前記現在のビュー成分／レイヤ表現に対する前記参照ピクチャリストに決して含まれていないことを示すとき、前記候補リスト中の特定の候補に基づいて、前記現在のビュー成分／レイヤ表現の現在のブロックに対する動きベクトルを決定することとを備える、［１］に記載の方法。
［１０］  前記シンタックス要素が、ビュー／レイヤ間参照ピクチャが前記現在のビュー成分／レイヤ表現に対する前記参照ピクチャリストに決して含まれていないことを示すとき、前記参照ピクチャリストからの参照ピクチャがビュー／レイヤ間参照ピクチャであるかどうかの確認を避けることと、前記シンタックス要素が、ビュー／レイヤ間参照ピクチャが前記現在のビュー成分／レイヤ表現に対する前記参照ピクチャリストに決して含まれていないことを示すとき、前記参照ピクチャリスト中の特定の参照ピクチャのタイプを確認することなく、前記現在のビュー成分／レイヤ表現の現在のコード化単位（ＣＵ）の予測単位（ＰＵ）が前記特定の参照ピクチャ中の位置を示す動きベクトルを有する場合、前記参照ピクチャリストに対して残差予測子生成処理を有効にすることとを更に備える、［１］に記載の方法。
［１１］  前記シンタックス要素が、ビュー／レイヤ間参照ピクチャが前記現在のビュー成分／レイヤ表現に対する前記参照ピクチャリストに決して含まれていないことを示すとき、異なる参照ピクチャリストへ挿入されるビュー／レイヤ間参照ピクチャのみを使用して、ビュー合成予測を実行することと、前記シンタックス要素が、ビュー／レイヤ間参照ピクチャが前記現在のビュー成分／レイヤ表現に対する前記参照ピクチャリストに決して含まれていないことを示すとき、前記参照ピクチャリストの初期バージョンを構築するときにビュー／レイヤ間参照ピクチャセット又はビュー／レイヤ間参照ピクチャを考慮しないこととを更に備える、［１］に記載の方法。
［１２］  ビデオデータを符号化する方法であって、ビットストリームにおいて、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリストに含まれているかどうかを示すシンタックス要素を信号伝達することと、前記現在のビュー成分／レイヤ表現を符号化することとを備え、ビュー／レイヤ間参照ピクチャが前記参照ピクチャリストに決して含まれていないことを前記シンタックス要素が示すとき、前記現在のビュー成分／レイヤ表現が、前記参照ピクチャリスト中のビュー／レイヤ間参照ピクチャを使用して符号化されない、方法。
［１３］  前記現在のビュー成分／レイヤ表現が、ビデオパラメータセット（ＶＰＳ）を参照するコード化されたビデオシーケンス（ＣＶＳ）の一部であり、前記ＶＰＳ中の前記シンタックス要素を前記ビットストリームにおいて信号伝達することを備え、前記シンタックス要素が、前記ＣＶＳの各々のそれぞれのビュー成分／レイヤ表現に対して、ビュー／レイヤ間参照ピクチャが前記それぞれのビュー成分／レイヤ表現に対するそれぞれの参照ピクチャリストに含まれているかどうかを示す、［１２］に記載の方法。
［１４］  前記現在のビュー成分／レイヤ表現が、前記ビットストリーム中の複数のレイヤ中の特定のレイヤの中にあり、前記複数のレイヤからの各々のそれぞれのレイヤに対して、ビュー／レイヤ間参照ピクチャが前記それぞれのレイヤ中のビュー成分／レイヤ表現のそれぞれの参照ピクチャリストに含まれているかどうかを示す前記それぞれのレイヤに対するそれぞれのシンタックス要素を前記ビットストリームにおいて信号伝達することを備える、［１２］に記載の方法。
［１５］  前記参照ピクチャリストを修正するための参照ピクチャリスト修正（ＲＰＬＭ）シンタックス要素を前記ビットストリームにおいて信号伝達することを更に備え、前記シンタックス要素が、ビュー／レイヤ間参照ピクチャが前記参照ピクチャリストに決して含まれていないことを示すとき、前記ＲＰＬＭシンタックス要素の各々が、ビュー／レイヤ間参照ピクチャが前記参照ピクチャリストに含まれることを前記シンタックス要素が示すときよりも、少数のビットを含む、［１２］に記載の方法。
［１６］  前記シンタックス要素が第１のシンタックス要素であり、前記参照ピクチャリストが第１の参照ピクチャリストであり、前記ビットストリームにおいて第２のシンタックス要素を信号伝達することを更に備え、前記第２のシンタックス要素が、前記現在のビュー成分／レイヤ表現に対する第２の異なる参照ピクチャリスト中でのビュー／レイヤ間参照ピクチャの開始位置を示す、［１２］に記載の方法。
［１７］  記憶媒体と、前記記憶媒体に結合された１つ以上のプロセッサとを備える、ビデオ復号装置であって、前記１つ以上のプロセッサが、ビットストリームから、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリストに含まれているかどうかを示すシンタックス要素を取得し、前記現在のビュー成分／レイヤ表現を復号するように構成され、ビュー／レイヤ間参照ピクチャが前記参照ピクチャリストに決して含まれていないことを前記シンタックス要素が示すとき、前記現在のビュー成分／レイヤ表現が、前記参照ピクチャリスト中のビュー／レイヤ間参照ピクチャの使用を伴わずに復号される、ビデオ復号装置。
［１８］  前記１つ以上のプロセッサが、前記現在のブロックに対する視差ベクトルを決定するために、前記現在のビュー成分／レイヤ表現の現在のブロックに隣接する１つ以上のブロックを確認する、視差ベクトル導出処理を実行するように構成され、前記視差ベクトル導出処理を実行することが、ビュー／レイヤ間参照ピクチャが前記現在のビュー成分／レイヤ表現に対する前記参照ピクチャリストに決して含まれていないことを前記シンタックス要素が示すとき、前記現在のビュー成分／レイヤ表現に対する前記参照ピクチャリストに対応する動き情報を確認しないことを備える、［１７］に記載のビデオ復号装置。
［１９］  前記現在のビュー成分／レイヤ表現が、前記ビットストリーム中の複数のレイヤ中の特定のレイヤの中にあり、前記１つ以上のプロセッサが、前記複数のレイヤからの各々のそれぞれのレイヤに対して、ビュー／レイヤ間参照ピクチャが前記それぞれのレイヤ中のビュー成分／レイヤ表現のそれぞれの参照ピクチャリストに含まれているかどうかを示す前記それぞれのレイヤに対するそれぞれのシンタックス要素を取得するように構成される、［１７］に記載のビデオ復号装置。
［２０］  前記１つ以上のプロセッサが更に、前記参照ピクチャリストを修正するための参照ピクチャリスト修正（ＲＰＬＭ）シンタックス要素を前記ビットストリームから取得するように構成され、前記シンタックス要素が、ビュー／レイヤ間参照ピクチャが前記参照ピクチャリストに決して含まれていないことを示すとき、前記ＲＰＬＭシンタックス要素の各々が、ビュー／レイヤ間参照ピクチャが前記参照ピクチャリストに含まれることを前記シンタックス要素が示すときよりも、少数のビットを含む、［１７］に記載のビデオ復号装置。
［２１］  前記シンタックス要素が第１のシンタックス要素であり、前記参照ピクチャリストが第１の参照ピクチャリストであり、前記１つ以上のプロセッサが、前記ビットストリームから第２のシンタックス要素を取得するように構成され、前記第２のシンタックス要素が、前記現在のビュー成分／レイヤ表現に対する第２の異なる参照ピクチャリスト中でのビュー／レイヤ間参照ピクチャの開始位置を示す、［１７］に記載のビデオ復号装置。
［２２］  前記現在のビュー成分／レイヤ表現が、ビデオパラメータセット（ＶＰＳ）を参照するコード化されたビデオシーケンス（ＣＶＳ）の一部であり、前記１つ以上のプロセッサが、前記シンタックス要素を前記ＶＰＳから取得するように構成され、前記シンタックス要素が、前記ＣＶＳの各々のそれぞれのビュー成分／レイヤ表現に対して、ビュー／レイヤ間参照ピクチャが前記それぞれのビュー成分／レイヤ表現に対するそれぞれの参照ピクチャリストに含まれているかどうかを示す、［１７］に記載のビデオ復号装置。
［２３］  前記１つ以上のプロセッサが、前記現在のブロックに対する視差ベクトルを決定するために、前記現在のビュー成分／レイヤ表現の現在のブロックに隣接する１つ以上のブロックを確認する、視差ベクトル導出処理を実行するように構成され、前記視差ベクトル導出処理を実行することが、前記シンタックス要素が、ビュー／レイヤ間参照ピクチャが前記現在のビュー成分／レイヤ表現に対する前記参照ピクチャリストに決して含まれていないことを示すとき、前記現在のブロックに隣接する前記１つ以上のブロックの各々に対するせいぜい１つの暗黙的な視差ベクトルを記憶することを備える、［１７］に記載のビデオ復号装置。
［２４］  前記１つ以上のプロセッサが、前記シンタックス要素が、ビュー／レイヤ間参照ピクチャが前記現在のビュー成分／レイヤ表現に対する前記参照ピクチャリストに決して含まれていないことを示すとき、ビュー／レイヤ間参照ピクチャに対応する候補を候補リストに決して含めず、前記シンタックス要素が、ビュー／レイヤ間参照ピクチャが前記現在のビュー成分／レイヤ表現に対する前記参照ピクチャリストに決して含まれていないことを示すとき、前記候補リスト中の特定の候補に基づいて、前記現在のビュー成分／レイヤ表現の現在のブロックに対する動きベクトルを決定するように構成される、［１７］に記載のビデオ復号装置。
［２５］  前記１つ以上のプロセッサアーが、前記シンタックス要素が、ビュー／レイヤ間参照ピクチャが前記現在のビュー成分／レイヤ表現に対する前記参照ピクチャリストに決して含まれていないことを示すとき、前記参照ピクチャリストからの参照ピクチャがビュー／レイヤ間参照ピクチャであるかどうかの確認を避け、前記シンタックス要素が、ビュー／レイヤ間参照ピクチャが前記現在のビュー成分／レイヤ表現に対する前記参照ピクチャリストに決して含まれていないことを示すとき、前記参照ピクチャリスト中の特定の参照ピクチャのタイプを確認することなく、前記現在のビュー成分／レイヤ表現の現在のコード化単位（ＣＵ）の予測単位（ＰＵ）が前記特定の参照ピクチャ中の位置を示す動きベクトルを有する場合、前記参照ピクチャリストに対して残差予測子生成処理を有効にするために構成する、［１７］に記載のビデオ復号装置。
［２６］  前記１つ以上のプロセッサが、前記シンタックス要素が、ビュー／レイヤ間参照ピクチャが前記現在のビュー成分／レイヤ表現に対する前記参照ピクチャリストに決して含まれていないことを示すとき、異なる参照ピクチャリストへ挿入されるビュー／レイヤ間参照ピクチャのみを使用して、ビュー合成予測を実行し、前記シンタックス要素が、ビュー／レイヤ間参照ピクチャが前記現在のビュー成分／レイヤ表現に対する前記参照ピクチャリストに決して含まれていないことを示すとき、前記参照ピクチャリストの初期バージョンを構築するときにビュー／レイヤ間参照ピクチャセット又はビュー／レイヤ間参照ピクチャを考慮しないように構成される、［１７］に記載のビデオ復号装置。
［２７］  ビットストリームから、ビュー／レイヤ間参照ピクチャが現在のビュー成分／レイヤ表現に対する参照ピクチャリストに含まれているかどうかを示すシンタックス要素を取得するための手段と、前記現在のビュー成分／レイヤ表現を復号するための手段とを備え、ビュー／レイヤ間参照ピクチャが前記参照ピクチャリストに決して含まれていないことを前記シンタックス要素が示すとき、前記現在のビュー成分／レイヤ表現が、前記参照ピクチャリスト中のビュー／レイヤ間参照ピクチャの使用を伴わずに復号される、ビデオ復号装置。
【図１】
0005992640.tif 000007
【図２】
0005992640.tif 000008
【図３】
0005992640.tif 000009
【図４】
0005992640.tif 000010
【図５】
0005992640.tif 000011
【図６】
0005992640.tif 000012
【図７】
0005992640.tif 000013
【図８Ａ】
0005992640.tif 000014
【図８Ｂ】
0005992640.tif 000015
【図９】
0005992640.tif 000016
【図１０】
0005992640.tif 000017