(57)【要約】  一例では、ビデオデータをコーディングするためのデバイスは、現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定することと、候補動きベクトル予測子に関して、現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、所定の値と等しい追加の目標参照インデックスの値を決定することと、追加の参照インデックスの値に少なくとも部分的に基づいて現在の動きベクトルをコーディングすることとを行うように構成されたビデオコーダを含む。
2016506185.tif 000002
【特許請求の範囲】
【請求項１】
ビデオデータをコーディングする方法であって、
現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定することと、
前記候補動きベクトル予測子に関して、前記現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、所定の値に等しい追加の目標参照インデックスの値を決定することと、
前記追加の参照インデックスの前記値に少なくとも部分的に基づいて前記現在の動きベクトルをコーディングすることと、を備える方法。
【請求項２】
前記追加の目標参照インデックスの前記値を決定することは、前記所定の値に少なくとも部分的に基づいて前記追加の目標参照インデックスが利用可能であるかどうかを決定することをさらに備える、請求項１に記載の方法。
【請求項３】
前記追加の参照インデックスは、参照ピクチャリストの参照インデックス値０（ｒｅｆＩｄｘＬ０Ａ）と前記参照ピクチャリストの参照インデックス値１（ｒｅｆＩｄｘＬ１Ａ）のうちの一方を備える、請求項１に記載の方法。
【請求項４】
コーディングは、マージモードを使用して前記現在の動きベクトルをコーディングすることを備え、前記方法は、
前記候補動きベクトル予測子から前記現在の動きベクトルの動きパラメータを継承することと、ここにおいて、前記継承される動きパラメータは、参照ピクチャリスト識別子と、水平動成分と、垂直動成分とを含み、
前記現在の動きベクトルが前記参照ピクチャリストにおいて参照する参照ピクチャを識別するために前記追加の目標参照インデックスの前記値を使用することとを備え、
前記方法は、前記水平動成分、前記垂直動成分、および前記参照ピクチャリストにおいて前記追加の目標参照インデックスによって識別される前記参照ピクチャを使用して現在のブロックをコーディングすることをさらに備える、請求項１に記載の方法。
【請求項５】
前記追加の目標参照インデックスの前記値は、前記現在の動きベクトルを含むビデオデータが基本ビデオコーディング規格の拡張規格に適合するときにのみ前記追加の目標参照インデックスの前記値を決定することを備える、請求項１に記載の方法。
【請求項６】
前記基本ビデオコーディング規格は、高効率ビデオコーディング（ＨＥＶＣ）を備え、前記拡張規格は、ＨＥＶＣのマルチビュービデオコーディング拡張規格（ＭＶ−ＨＥＶＣ）とＨＥＶＣのスケーリング可能なビデオコーディング拡張規格（ＳＨＶＣ）の一方を備える、請求項５に記載の方法。
【請求項７】
前記所定の値を表すデータをコーディングすることをさらに備え、前記データは、前記現在の動きベクトルに対応するブロックを含むスライスのデータを備える、請求項１に記載の方法。
【請求項８】
前記所定の値を表す前記データをコーディングすることは、
基本ビデオコーディング規格の拡張規格に適合するスライスのスライスヘッダの一部における前記データをコーディングすることと、
前記基本ビデオコーディング規格に適合する前記スライスの前記スライスヘッダの一部における前記データをコーディングすることとの少なくとも一方を備える、請求項７に記載の方法。
【請求項９】
前記現在の動きベクトルに対応するブロックを含むピクチャのピクチャパラメータセット（ＰＰＳ）、前記ピクチャを含むシーケンスのシーケンスパラメータセット（ＳＰＳ）、およびビデオパラメータセット（ＶＰＳ）のうちの少なくとも１つにおける前記所定の値を表すデータをコーディングすることをさらに備える、請求項１に記載の方法。
【請求項１０】
前記所定の値が非ゼロ値であるときに、前記追加の目標参照インデックス値が参照インデックス０によって識別される参照ピクチャのタイプとは異なるタイプを有する参照ピクチャに対応することを決定することをさらに備える、請求項１に記載の方法。
【請求項１１】
前記動きベクトルをコーディングすることは、前記動きベクトルを復号することを備え、前記方法は、前記動きベクトルを使用して現在のブロックを復号することをさらに備える、請求項１に記載の方法。
【請求項１２】
前記動きベクトルをコーディングすることは、前記動きベクトルを符号化することを備え、前記方法は、前記動きベクトルを使用して現在のブロックを符号化することをさらに備える、請求項１に記載の方法。
【請求項１３】
ビデオデータをコーディングするためのデバイスであって、現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定することと、前記候補動きベクトル予測子に関して、前記現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、所定の値と等しい追加の目標参照インデックスの値を決定することと、前記追加の参照インデックスの前記値に少なくとも部分的に基づいて前記現在の動きベクトルをコーディングすることとを行うように構成されたビデオコーダを備えるデバイス。
【請求項１４】
前記ビデオコーダは、前記現在の動きベクトルが前記候補動きベクトル予測子から動きパラメータを継承するマージモードを使用して現在の動きベクトルをコーディングするように構成され、前記継承される動きパラメータは、参照ピクチャリスト識別子、水平動成分、および垂直動成分を含み、前記ビデオコーダは、前記現在の動きベクトルが前記参照ピクチャリストにおいて参照する参照ピクチャを識別するために前記追加の目標参照インデックスの前記値を使用することと、前記水平動成分、前記垂直動成分、および前記参照ピクチャリストにおいて前記追加の目標参照インデックスによって識別される前記参照ピクチャを使用して現在のブロックをコーディングすることとを行うように構成される、請求項１３のデバイス。
【請求項１５】
前記ビデオコーダは、前記現在の動きベクトルを含むビデオデータが基本ビデオコーディング規格の拡張規格に適合するときにのみ前記追加の目標参照インデックスの前記値を決定するように構成される、請求項１３に記載のデバイス。
【請求項１６】
前記ビデオコーダは、前記所定の値を表すデータをコーディングするように構成され、前記データは、前記現在の動きベクトルに対応するブロックを含むスライスのデータ、前記ブロックを含むピクチャのピクチャパラメータセット（ＰＰＳ）のデータ、前記ピクチャを含むシーケンスのシーケンスパラメータセット（ＳＰＳ）、およびビデオパラメータセット（ＶＰＳ）のうちの少なくとも１つを備える、請求項１３のデバイス。
【請求項１７】
前記ビデオコーダは、前記所定の値が非ゼロ値であるときに、前記追加の目標参照インデックス値が参照インデックス０によって識別される参照ピクチャのタイプとは異なるタイプを有する参照ピクチャに対応することを決定するように構成される、請求項１３に記載のデバイス。
【請求項１８】
前記ビデオコーダはビデオデコーダとビデオエンコーダの少なくとも一方を備える、請求項１３に記載のデバイス。
【請求項１９】
ビデオデータをコーディングするためのデバイスであって、
現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定するための手段と、
前記候補動きベクトル予測子に関して、前記現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、所定の値に等しい追加の目標参照インデックスの値を決定するための手段と、
前記追加の参照インデックスの前記値に少なくとも部分的に基づいて前記現在の動きベクトルをコーディングするための手段と、を備えるデバイス。
【請求項２０】
コーディングするための前記手段が、マージモードを使用して前記現在の動きベクトルをコーディングするための手段を備え、前記デバイスは、
前記候補動きベクトル予測子から前記現在の動きベクトルの動きパラメータを継承するための手段と、ここにおいて、前記継承される動きパラメータは、参照ピクチャリスト識別子と、水平動成分と、垂直動成分とを含み、
前記現在の動きベクトルが前記参照ピクチャリストにおいて参照する参照ピクチャを識別するために前記追加の目標参照インデックスの前記値を使用するための手段とを備え、
前記水平動成分、前記垂直動成分、および前記参照ピクチャリストにおいて前記追加の目標参照インデックスによって識別される前記参照ピクチャを使用して現在のブロックをコーディングするための手段をさらに備える、請求項１９に記載のデバイス。
【請求項２１】
前記追加の目標参照インデックスの前記値を決定するための前記手段は、前記現在の動きベクトルを含むビデオデータが基本ビデオコーディング規格の拡張規格に適合するときにのみ前記追加の目標参照インデックスの前記値を決定するための手段を備える、請求項１９に記載のデバイス。
【請求項２２】
前記所定の値を表すデータをコーディングするための手段をさらに備え、前記データは、前記現在の動きベクトルに対応するブロックを含むスライスのデータ、前記ブロックを含むピクチャのピクチャパラメータセット（ＰＰＳ）のデータ、前記ピクチャを含むシーケンスのシーケンスパラメータセット（ＳＰＳ）、およびビデオパラメータセット（ＶＰＳ）のうちの少なくとも１つを備える、請求項１９のデバイス。
【請求項２３】
前記所定の値が非ゼロ値であるときに、前記追加の目標参照インデックス値が参照インデックス０によって識別される参照ピクチャのタイプとは異なるタイプを有する参照ピクチャに対応することを決定するための手段をさらに備える、請求項１９に記載のデバイス。
【請求項２４】
コーディングのための前記手段は、前記現在の動きベクトルを復号するための手段と前記現在の動きベクトルを符号化するための手段との少なくとも一方を備える、請求項１９のデバイス。
【請求項２５】
命令を記憶したコンピュータ可読記憶媒体であって、前記命令が、実行されたとき、プロセッサに、
現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定することと、
前記候補動きベクトル予測子に関して、前記現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、所定の値に等しい追加の目標参照インデックスの値を決定することと、
前記追加の参照インデックスの前記値に少なくとも部分的に基づいて前記現在の動きベクトルをコーディングすることとを行わせるコンピュータ可読記憶媒体。
【請求項２６】
前記プロセッサにコーディングすることを行わせる前記命令が、前記プロセッサにマージモードを使用して前記現在の動きベクトルをコーディングさせる命令を備え、前記プロセッサに、
前記候補動きベクトル予測子から前記現在の動きベクトルの動きパラメータを継承することと、ここにおいて、前記継承される動きパラメータは、参照ピクチャリスト識別子と、水平動成分と、垂直動成分とを含み、
前記現在の動きベクトルが前記参照ピクチャリストにおいて参照する参照ピクチャを識別するために前記追加の目標参照インデックスの前記値を使用することとを行わせる命令を備え、
前記プロセッサに、前記水平動成分、前記垂直動成分、および前記参照ピクチャリストにおいて前記追加の目標参照インデックスによって識別される前記参照ピクチャを使用して現在のブロックをコーディングすることを行わせる命令をさらに備える、請求項２５に記載のコンピュータ可読記憶媒体。
【請求項２７】
前記プロセッサに前記追加の目標参照インデックスの前記値を決定することを行わせる前記命令は、前記プロセッサに、前記現在の動きベクトルを含むビデオデータが基本ビデオコーディング規格の拡張規格に適合するときにのみ前記追加の目標参照インデックスの前記値を決定することを行わせる命令を備える、請求項２５に記載のコンピュータ可読記憶媒体。
【請求項２８】
前記プロセッサに前記所定の値を表すデータをコーディングすることを行わせる命令をさらに備え、前記データは、前記現在の動きベクトルに対応するブロックを含むスライスのデータ、前記ブロックを含むピクチャのピクチャパラメータセット（ＰＰＳ）のデータ、前記ピクチャを含むシーケンスのシーケンスパラメータセット（ＳＰＳ）、およびビデオパラメータセット（ＶＰＳ）のうちの少なくとも１つを備える、請求項２５に記載のコンピュータ可読記憶媒体。
【請求項２９】
前記所定の値が非ゼロ値であるときに、前記追加の目標参照インデックス値が参照インデックス０によって識別される参照ピクチャのタイプとは異なるタイプを有する参照ピクチャに対応することを決定することを行わせる命令をさらに備える、請求項２５に記載のコンピュータ可読記憶媒体。
【請求項３０】
前記プロセッサに前記動きベクトルをコーディングさせる前記命令は、前記プロセッサに前記動きベクトルを復号することを行わせる命令と前記プロセッサに前記動きベクトルを符号化することを行わせる命令との少なくとも一方を備える、請求項２５に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]本出願は、その内容全体が参照により本明細書に組み込まれる、２０１３年１月２日に出願された米国仮出願第６１／７４８，４２４号の利益を主張する。
【０００２】
[0002]本開示は、ビデオコーディングに関する。
【背景技術】
【０００３】
[0003]デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップまたはデスクトップコンピュータ、タブレットコンピュータ、電子ブックリーダ、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラーまたは衛星無線電話、いわゆる「スマートフォン」、ビデオ遠隔会議デバイス、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスに組み込まれ得る。デジタルビデオデバイスは、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４，Ｐａｒｔ  １０，Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＡＶＣ）、現在開発中の高効率ビデオコーディング（ＨＥＶＣ：High Efficiency Video Coding）規格によって定義された規格、およびそのような規格の拡張に記載されているビデオコーディング技法のような、ビデオコーディング技法を実装する。ビデオデバイスは、そのようなビデオコーディング技法を実装することによって、デジタルビデオ情報をより効率的に送信、受信、符号化、復号、および／または記憶し得る。
【０００４】
[0004]ビデオコーディング技法は、ビデオシーケンスに固有の冗長性を低減または除去するための空間的（イントラピクチャ）予測および／または時間的（インターピクチャ）予測を含む。ブロックベースのビデオコーディングの場合、ビデオスライス（たとえば、ビデオフレームまたはビデオフレームの一部分）が、ツリーブロック、コーディングユニット（ＣＵ）および／またはコーディングノードと呼ばれることもあるビデオブロックに区分され得る。ピクチャのイントラコード化（Ｉ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック中の参照サンプルに対する空間的予測を使用して符号化される。ピクチャのインターコード化（ＰまたはＢ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック中の参照サンプルに対する空間的予測、または他の参照ピクチャ中の参照サンプルに対する時間的予測を使用し得る。ピクチャはフレームと呼ばれることがあり、参照ピクチャは参照フレームと呼ばれることがある。
【０００５】
[0005]空間的予測または時間的予測は、コーディングされるべきブロックの予測ブロックをもたらす。残差データは、コーディングされるべき元のブロックと予測ブロックとの間のピクセル差分を表す。インターコード化ブロックは、予測ブロックを形成する参照サンプルのブロックを指す動きベクトルと、コード化ブロックと予測ブロックとの間の差分を示す残差データとに従って符号化される。イントラコード化ブロックは、イントラコーディングモードと残差データとに従って符号化される。さらなる圧縮のために、残差データは、ピクセル領域から変換領域に変換されて残差変換係数をもたらすことができ、その残差変換係数は、次いで量子化され得る。量子化変換係数は、最初に２次元アレイで構成され、変換係数の１次元ベクトルを生成するために走査されてよく、なお一層の圧縮を達成するためにエントロピーコーディングが適用されてよい。
【発明の概要】
【０００６】
[0006]概して、本開示は、ビデオコーディングにおける動きベクトル予測を使用して動きベクトルをコーディングするための技法について説明する。ビデオコーディングは、ピクチャの個々のブロックをコーディングする（たとえば、符号化するまたは復号する）ことを含む。そのようなブロックは、空間的に予測されコーディングされるか、または時間的に予測されコーディングされるか、またはレイヤ間予測もしくはビュー間予測されコーディングされ得る。時間的予測技法およびレイヤ間／ビュー間予測技法は動きベクトルを利用してもよい。さらに、ビデオコーダは、動きベクトルをコーディングするように構成されてもよい。本開示の技法によれば、ビデオコーダは、時間的動きベクトル予測（候補動きベクトル予測子がビュー間参照ピクチャを参照することがある）を実行するときにマージモードのための候補動きベクトル予測子の参照インデックスを決定し、また、追加の参照インデックスの値を決定するように構成されてもよい。追加の参照インデックスは、たとえば、ブロックの動きベクトルのマージモードコーディングを実行するときに、候補動きベクトル予測子の実際の参照インデックスに置き換わってもよい。さらに、追加の参照インデックスの値は、所定の値、たとえば、０または１に設定されてもよい。概して、追加の参照インデックスは、ブロックを含む現在のピクチャのビュー間参照ピクチャなどの長期参照ピクチャを参照することがある。
【０００７】
[0007]一例では、ビデオデータをコーディングする方法は、現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定することと、候補動きベクトル予測子に関して、現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、所定の値と等しい追加の目標参照インデックスの値を決定することと、追加の参照インデックスの値に少なくとも部分的に基づいて現在の動きベクトルをコーディングすることとを含む。
【０００８】
[0008]別の例では、ビデオデータをコーディングするためのデバイスは、現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定することと、候補動きベクトル予測子に関して、現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、所定の値と等しい追加の目標参照インデックスの値を決定することと、追加の参照インデックスの値に少なくとも部分的に基づいて現在の動きベクトルをコーディングすることとを行うように構成されたビデオコーダを含む。
【０００９】
[0009]別の例では、ビデオデータをコーディングするためのデバイスは、現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定するための手段と、候補動きベクトル予測子に関して、現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、所定の値と等しい追加の目標参照インデックスの値を決定するための手段と、追加の参照インデックスの値に少なくとも部分的に基づいて現在の動きベクトルをコーディングするための手段とを含む。
【００１０】
[0010]別の例では、コンピュータ可読記憶媒体には、実行されたときに、現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定することと、候補動きベクトル予測子に関して、現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、所定の値と等しい追加の目標参照インデックスの値を決定することと、追加の参照インデックスの値に少なくとも部分的に基づいて現在の動きベクトルをコーディングすることとをプロセッサに実行させる命令が記憶されている。
【００１１】
[0011]１つまたは複数の例の詳細は、添付の図面および以下の説明に記載されている。他の特徴、目的、および利点は、その説明および図面、ならびに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１２】
【図１】[0012]動きベクトルをコーディングするための技法を利用し得る例示的なビデオ符号化および復号システムを示すブロック図。
【図２】[0013]動きベクトルをコーディングするための技法を実装し得るビデオエンコーダの例を示すブロック図。
【図３】[0014]動きベクトルをコーディングするための技法を実装し得るビデオデコーダの例を示すブロック図。
【図４】[0015]例示的なマルチビュービデオコーディング（ＭＶＣ）の予測パターンを示す概念図。
【図５】[0016]ピクチャのブロックをコーディングするために使用される例示的な１組のピクチャおよび動きベクトルを示す概念図。
【図６】[0017]ピクチャのブロックをコーディングするために使用される別の例示的な１組のピクチャおよび動きベクトルを示す概念図。
【図７】[0018]本開示の技法による、ビデオデータのブロックを復号する例示的な方法を示すフローチャート。
【図８】[0019]本開示の技法による、ビデオデータのブロックを復号する例示的な方法を示すフローチャート。
【発明を実施するための形態】
【００１３】
[0020]概して、本開示は、２次元（２Ｄ）ベースレイヤ／ビュー復号性能を変化させずに、ビデオエンコーダ／デコーダ（コーデック）拡張規格、たとえば、マルチビュー拡張規格またはスケーラブル拡張規格のために時間的動きベクトル予測を改善することのできる技法について説明する。基本ビデオコーディング規格は、たとえば、高効率ビデオコーディング（ＨＥＶＣ）を備えてもよく、ＨＥＶＣの拡張規格は、ＨＥＶＣのマルチビュービデオコーディング拡張規格（たとえば、ＭＶ−ＨＥＶＣ）およびＨＥＶＣのスケーラブルビデオコーディング拡張規格（たとえば、ＳＨＶＣ）を含んでもよい。
【００１４】
[0021]ビデオコーディング規格は、ＩＴＵ−Ｔ  Ｈ．２６１、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−１  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６２またはＩＳＯ／ＩＥＣ  ＭＰＥＧ−２  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  Ｖｉｓｕａｌ、およびそのスケーラブルビデオコーディング（ＳＶＣ）拡張規格とマルチビュービデオコーディング（ＭＶＣ：Multiview Video Coding）拡張規格とを含む、（ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  ＡＶＣとしても知られる）ＩＴＵ−Ｔ  Ｈ．２６４を含む。さらに、ＩＴＵ−Ｔビデオコーディングエキスパートグループ（ＶＣＥＧ）とＩＳＯ／ＩＥＣモーションピクチャエキスパートグループ（ＭＰＥＧ：Motion Picture Experts Group）とのジョイントコラボレーションチームオンビデオコーディング（ＪＣＴ−ＶＣ：Joint Collaboration Team on Video Coding）によって開発されている新しいビデオコーディング規格、すなわち、高効率ビデオコーディング（ＨＥＶＣ）がある。以下では「ＨＥＶＣ  ＷＤ９」または単に「ＷＤ９」と呼ぶＨＥＶＣのワーキングドラフト（ＷＤ）が、２０１３年１月２日現在でｈｔｔｐ：／／ｐｈｅｎｉｘ．ｉｎｔ−ｅｖｒｙ．ｆｒ／ｊｃｔ／ｄｏｃ＿ｅｎｄ＿ｕｓｅｒ／ｄｏｃｕｍｅｎｔｓ／１１＿Ｓｈａｎｇｈａｉ／ｗｇ１１／ＪＣＴＶＣ−Ｋ１００３−ｖ１３．ｚｉｐから入手できるＢｒｏｓｓら「Ｈｉｇｈ  Ｅｆｆｉｃｉｅｎｃｙ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＨＥＶＣ）  Ｔｅｘｔ  Ｓｐｅｃｉｆｉｃａｉｏｎ  Ｄｒａｆｔ  ９」第１１回会議、中国上海、２０１２年１０月１０〜１９日、ＪＣＴＶＣ−Ｋ１００３＿ｖ１３に記載されている。
【００１５】
[0022]本開示では、ＪＣＴＶＣ−Ｋ０２３９で提示された特定の技法について、図５および図６に関してより詳しく説明する。ＪＣＴＶＣ−Ｋ０２３９の提案には改善の余地があることが決定されている。たとえば、ＪＣＴＶＣ−Ｋ０２３９の時間的動き予測に関する追加の参照インデックスの導出プロセスは、２Ｄビデオコーディングに不要なある追加の論理を生じさせることがある。ＨＥＶＣとＭＶ−ＨＥＶＣの両方に最小限に変更を施してＪＣＴＶＣ−Ｋ０２３９の場合のように解決手段をサポートするために、本開示では様々な技法について説明する。
【００１６】
[0023]たとえば、時間的動きベクトル予測（ＴＭＶＰ）の追加の参照インデックス値、すなわち、ｒｅｆＩｄｘＬ０ＡおよびｒｅｆＩｄｘＬ１Ａが、ＨＥＶＣ基本仕様に定義され、常に０に設定されてもよい。代替として、ｒｅｆＩｄｘＬ０Ａおよび／またはｒｅｆＩｄｘＬ１Ａは１に設定されてもよい。ｒｅｆＩｄｘＬ０Ａは、参照ピクチャリスト（たとえば、現在のピクチャよりも前の表示順序を有する参照ピクチャのリスト）のインデックス０の例を表し、一方、参照ピクチャリスト（たとえば、現在のピクチャよりも後の表示順序を有する参照ピクチャのリスト）のインデックス１の例を表す。
【００１７】
[0024]さらに、または代替として、ＴＭＶＰの追加の目標参照インデックス値（ｒｅｆＩｄｘＬ０Ａ／ｒｅｆＩｄｘＬ１Ａ）のための導出プロセスがＭＶ−ＨＥＶＣまたは他のＨＥＶＣ拡張規格に定義されてもよい。代替として、追加の目標参照インデックス値（ｒｅｆＩｄｘＬ０Ａ／ｒｅｆＩｄｘＬ１Ａ）は、たとえば、ｌａｙｅｒ＿ｉｄ（またはｖｉｅｗＩｄｘ）が０に等しくない条件の下でまたはスライスヘッダ拡張機能の一部として、ＭＶ−ＨＥＶＣまたは他のＨＥＶＣ拡張規格のスライスヘッダにおいてのみシグナリングされてもよい。代替として、追加の目標参照インデックス値（ｒｅｆＩｄｘＬ０Ａ／ｒｅｆＩｄｘＬ１Ａ）は、ＨＥＶＣ仕様またはＨＥＶＣ拡張規格のピクチャパラメータセット、シーケンスパラメータセット、またはビデオパラメータセットにおいてシグナリングされてもよい。代替として、追加の目標参照インデックス値（ｒｅｆＩｄｘＬ０Ａ／ｒｅｆＩｄｘＬ１Ａ）は、ＨＥＶＣ基本仕様のスライスヘッダにおいてシグナリングされてもよい。
【００１８】
[0025]さらに、または代替として、追加の目標参照インデックス値は、０に等しくない値であることがシグナリングされるとき、参照インデックス０によって特定される参照ピクチャとは異なるタイプを有する参照ピクチャに対応してもよい。たとえば、ｒｅｆＰｉｃＬｉｓｔＸ［０］およびｒｅｆＰｉｃＬｉｓｔＸ［ｒｅｆＩｄｘＬＸＡ］は、両方とも短期ピクチャであるとは限らず、両方とも長期ピクチャであるとは限らない。
【００１９】
[0026]図１は、動きベクトルをコーディングするための技法を利用し得る例示的なビデオ符号化および復号システム１０を示すブロック図である。図１に示されるように、システム１０は、宛先デバイス１４によって後で復号されるべき符号化ビデオデータを与えるソースデバイス１２を含む。特に、ソースデバイス１２は、コンピュータ可読媒体１６を介してビデオデータを宛先デバイス１４に与える。ソースデバイス１２および宛先デバイス１４は、デスクトップコンピュータ、ノートブック（すなわち、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、タブレット、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスのいずれかを備え得る。場合によっては、ソースデバイス１２および宛先デバイス１４は、ワイヤレス通信に対応し得る。
【００２０】
[0027]宛先デバイス１４は、コンピュータ可読媒体１６を介して復号されるべき符号化ビデオデータを受信し得る。コンピュータ可読媒体１６は、ソースデバイス１２から宛先デバイス１４に符号化ビデオデータを移動させることができる任意のタイプの媒体またはデバイスを備え得る。一例では、コンピュータ可読媒体１６は、ソースデバイス１２が、符号化ビデオデータを宛先デバイス１４にリアルタイムで直接送信することを可能にするための通信媒体を備え得る。符号化ビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され、宛先デバイス１４に送信され得る。通信媒体は、高周波（ＲＦ）スペクトルあるいは１つまたは複数の物理伝送線路のような、任意のワイヤレスまたは有線通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークのような、パケットベースネットワークの一部を形成し得る。通信媒体は、ソースデバイス１２から宛先デバイス１４への通信を可能にするために有用であり得るルータ、スイッチ、基地局、または任意の他の機器を含み得る。
【００２１】
[0028]いくつかの例では、符号化データは、出力インターフェース２２からストレージデバイスに出力され得る。同様に、符号化データは、入力インターフェースによってストレージデバイスからアクセスされ得る。ストレージデバイスは、ハードドライブ、ブルーレイ（登録商標）ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュメモリ、揮発性または不揮発性メモリ、あるいは、符号化されたビデオデータを記憶するための任意の他の適切なデジタル記憶媒体のような、種々の分散されたまたはローカルにアクセスされるデータ記憶媒体のいずれかを含み得る。さらなる一例では、ストレージデバイスは、ソースデバイス１２によって生成された符号化ビデオを記憶し得るファイルサーバまたは別の中間ストレージデバイスに対応し得る。宛先デバイス１４は、ストリーミングまたはダウンロードを介して、ストレージデバイスから記憶されたビデオデータにアクセスし得る。ファイルサーバは、符号化ビデオデータを記憶し、その符号化ビデオデータを宛先デバイス１４に送信することが可能な任意のタイプのサーバであり得る。例示的なファイルサーバは、（たとえば、ウェブサイトのための）ウェブサーバ、ＦＴＰサーバ、ネットワーク接続ストレージ（ＮＡＳ）デバイス、またはローカルディスクドライブを含む。宛先デバイス１４は、インターネット接続を含む、任意の標準的なデータ接続を通じて符号化ビデオデータにアクセスし得る。これは、ファイルサーバに記憶された符号化ビデオデータにアクセスするのに好適であるワイヤレスチャネル（たとえば、Ｗｉ−Ｆｉ（登録商標）接続）、有線接続（たとえば、ＤＳＬ、ケーブルモデムなど）、または両方の組合せを含み得る。ストレージデバイスからの符号化ビデオデータの送信は、ストリーミング送信、ダウンロード送信、またはそれらの組合せであり得る。
【００２２】
[0029]本開示の技法は、必ずしもワイヤレス適用例または設定に限定されるとは限らない。本技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、ｄｙｎａｍｉｃ  ａｄａｐｔｉｖｅ  ｓｔｒｅａｍｉｎｇ  ｏｖｅｒ  ＨＴＴＰ（ＤＡＳＨ）などのインターネットストリーミングビデオ送信、データ記憶媒体上に符号化されたデジタルビデオ、データ記憶媒体に記憶されたデジタルビデオの復号、または他の適用例など、種々のマルチメディア適用例のいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、システム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、および／またはビデオ電話などの適用例をサポートするために、一方向または双方向のビデオ送信をサポートするように構成され得る。
【００２３】
[0030]図１の例では、ソースデバイス１２は、ビデオソース１８と、ビデオエンコーダ２０と、出力インターフェース２２とを含む。宛先デバイス１４は、入力インターフェース２８と、ビデオデコーダ３０と、ディスプレイデバイス３２とを含む。本開示によれば、ソースデバイス１２のビデオエンコーダ２０は、動きベクトルをコーディングするための技法を適用するように構成され得る。他の例では、ソースデバイスおよび宛先デバイスは他のコンポーネントまたは構成を含み得る。たとえば、ソースデバイス１２は、外部カメラなどの外部ビデオソース１８からビデオデータを受信し得る。同様に、宛先デバイス１４は、内蔵ディスプレイデバイスを含むのではなく、外部ディスプレイデバイスとインターフェースし得る。
【００２４】
[0031]図１の示されるシステム１０は一例にすぎない。動きベクトルをコーディングするための技法は、任意のデジタルビデオ符号化および／または復号デバイスによって実行され得る。一般に、本開示の技法はビデオ符号化デバイスによって実行されるが、本技法は、通常「コーデック」と呼ばれるビデオエンコーダ／デコーダによっても実行され得る。その上、本開示の技法はまた、ビデオプリプロセッサによって実行され得る。ソースデバイス１２および宛先デバイス１４は、ソースデバイス１２が宛先デバイス１４に送信するためのコード化ビデオデータを生成するような、コーディングデバイスの例にすぎない。いくつかの例では、デバイス１２、１４は、デバイス１２、１４の各々がビデオ符号化コンポーネントとビデオ復号コンポーネントとを含むように、実質的に対称的に動作し得る。したがって、システム１０は、たとえば、ビデオストリーミング、ビデオ再生、ビデオブロードキャストまたはビデオ電話のための、ビデオデバイス１２とビデオデバイス１４との間の一方向または双方向のビデオ送信をサポートすることができる。
【００２５】
[0032]ソースデバイス１２のビデオソース１８は、ビデオカメラなどのビデオキャプチャデバイス、以前にキャプチャされたビデオを含んでいるビデオアーカイブ、および／またはビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェースを含み得る。さらなる代替として、ビデオソース１８は、ソースビデオとしてのコンピュータグラフィックスベースのデータ、またはライブビデオとアーカイブされたビデオとコンピュータにより生成されたビデオとの組合せを生成し得る。場合によっては、ビデオソース１８がビデオカメラである場合、ソースデバイス１２および宛先デバイス１４は、いわゆるカメラ電話またはビデオ電話を形成し得る。しかしながら、上述のように、本開示で説明される技法は、全般にビデオコーディングに適用可能であってよく、ワイヤレスおよび／または有線の適用例に適用可能であってよい。各々の場合において、キャプチャされたビデオ、以前にキャプチャされたビデオ、またはコンピュータで生成されたビデオは、ビデオエンコーダ２０によって符号化され得る。符号化ビデオ情報は、次いで、出力インターフェース２２によってコンピュータ可読媒体１６上に出力され得る。
【００２６】
[0033]コンピュータ可読媒体１６は、ワイヤレスブロードキャストまたは有線ネットワーク送信などの一時媒体、あるいはハードディスク、フラッシュドライブ、コンパクトディスク、デジタルビデオディスク、ブルーレイディスク、または他のコンピュータ可読媒体などの記憶媒体（すなわち、非一時的記憶媒体）を含み得る。いくつかの例では、ネットワークサーバ（図示せず）は、たとえば、ネットワーク送信を介して、ソースデバイス１２から符号化されたビデオデータを受信し、宛先デバイス１４に符号化ビデオデータを与え得る。同様に、ディスクスタンピング設備などの媒体製造設備のコンピューティングデバイスは、ソースデバイス１２から符号化ビデオデータを受信し、その符号化ビデオデータを含んでいるディスクを製造することができる。したがって、コンピュータ可読媒体１６は、様々な例において、様々な形態の１つまたは複数のコンピュータ可読媒体を含むことが理解されよう。
【００２７】
[0034]宛先デバイス１４の入力インターフェース２８は、コンピュータ可読媒体１６から情報を受信する。コンピュータ可読媒体１６の情報は、ビデオエンコーダ２０によって定義され、またビデオデコーダ３０によって使用される、ブロックおよび他のコード化ユニット、たとえば、ＧＯＰの特性および／または処理を記述するシンタックス要素を含む、シンタックス情報を含み得る。ディスプレイデバイス３２は、復号ビデオデータをユーザに対して表示し、陰極線管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイデバイスのような、様々なディスプレイデバイスのいずれかを備え得る。
【００２８】
[0035]ビデオエンコーダ２０およびビデオデコーダ３０は、現在開発中の高効率ビデオコーディング（ＨＥＶＣ）規格などのビデオコーディング規格に従って動作することができ、ＨＥＶＣ  Ｔｅｓｔ  Ｍｏｄｅｌ（ＨＭ）に準拠することができる。代替的に、ビデオエンコーダ２０およびビデオデコーダ３０は、代替的にＭＰＥＧ−４、Ｐａｒｔ  １０、Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＡＶＣ）と呼ばれるＩＴＵ−Ｔ  Ｈ．２６４規格のような、他のプロプライエタリ規格または業界規格、あるいはそのような規格の拡張に従って動作し得る。しかしながら、本開示の技法は、いかなる特定のコーディング規格にも限定されない。ビデオコーディング規格の他の例には、ＭＰＥＧ−２およびＩＴＵ−Ｔ  Ｈ．２６３がある。図１には示されていないが、いくつかの態様では、ビデオエンコーダ２０およびビデオデコーダ３０は各々、オーディオエンコーダおよびオーディオデコーダと統合されてよく、適切なＭＵＸ−ＤＥＭＵＸユニット、または他のハードウェアとソフトウェアとを含んで、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理することができる。適用可能な場合、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、またはユーザデータグラムプロトコル（ＵＤＰ）などの他のプロトコルに準拠し得る。
【００２９】
[0036]ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４（ＡＶＣ）規格は、Ｊｏｉｎｔ  Ｖｉｄｅｏ  Ｔｅａｍ（ＪＶＴ）として知られる共同パートナーシップの成果として、ＩＳＯ／ＩＥＣ  Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ（ＭＰＥＧ）とともにＩＴＵ−Ｔ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ（ＶＣＥＧ）によって策定された。いくつかの態様では、本開示で説明される技法は、一般にＨ．２６４規格に準拠するデバイスに適用され得る。Ｈ．２６４規格は、ＩＴＵ−Ｔ研究グループによる２００５年３月付けのＩＴＵ−Ｔ勧告Ｈ．２６４、Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  ｆｏｒ  ｇｅｎｅｒｉｃ  ａｕｄｉｏｖｉｓｕａｌ  ｓｅｒｖｉｃｅｓに記載されており、本明細書ではＨ．２６４規格またはＨ．２６４仕様、あるいはＨ．２６４／ＡＶＣ規格または仕様と呼ばれ得る。Ｊｏｉｎｔ  Ｖｉｄｅｏ  Ｔｅａｍ（ＪＶＴ）はＨ．２６４／ＭＰＥＧ−４  ＡＶＣへの拡張に取り組み続けている。
【００３０】
[0037]ビデオエンコーダ２０およびビデオデコーダ３０は各々、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアのような、種々の適切なエンコーダ回路のいずれか、またはそれらの任意の組合せとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、デバイスは、好適な非一時的コンピュータ可読媒体にソフトウェアのための命令を記憶し、１つまたは複数のプロセッサを使用してその命令をハードウェアで実行して、本開示の技法を実行することができる。ビデオエンコーダ２０およびビデオデコーダ３０の各々は１つまたは複数のエンコーダまたはデコーダ中に含まれてよく、そのいずれも、それぞれのデバイスにおいて複合エンコーダ／デコーダ（コーデック）の一部として統合されてよい。
【００３１】
[0038]ＪＣＴ−ＶＣは、ＨＥＶＣ規格の開発に取り組んでいる。ＨＥＶＣ規格化の取り組みは、ＨＥＶＣ  Ｔｅｓｔ  Ｍｏｄｅｌ（ＨＭ）と呼ばれるビデオコーディングデバイスの発展的モデルに基づく。ＨＭは、たとえば、ＩＴＵ−Ｔ  Ｈ．２６４／ＡＶＣに従う既存のデバイスに対してビデオコーディングデバイスのいくつかの追加の能力を仮定する。たとえば、Ｈ．２６４は９つのイントラ予測符号化モードを提供するが、ＨＭは３３個ものイントラ予測符号化モードを提供し得る。
【００３２】
[0039]概して、ＨＭの作業モデルは、ビデオフレームまたはピクチャが、ルーマとクロマの両方のサンプルを含む一連のツリーブロックまたは最大コーディングユニット（ＬＣＵ：largest coding unit）（「コーディングツリーユニット」とも呼ばれる）に分割され得ることを記述する。ビットストリーム内のシンタックスデータが、ピクセルの数に関して最大コーディングユニットであるＬＣＵのサイズを定義し得る。スライスは、コーディング順序でいくつかの連続するツリーブロックを含む。ビデオフレームまたはピクチャは、１つまたは複数のスライスに区分され得る。各ツリーブロックは、４分木に従ってコーディングユニット（ＣＵ）に分割され得る。一般に、４分木データ構造はＣＵごとに１つのノードを含み、ルートノードはツリーブロックに対応する。ＣＵが４つのサブＣＵに分割された場合、ＣＵに対応するノードは４つのリーフノードを含み、リーフノードの各々はサブＣＵのうちの１つに対応する。
【００３３】
[0040]４分木データ構造の各ノードは、対応するＣＵのシンタックスデータを与え得る。たとえば、４分木のノードは、そのノードに対応するＣＵがサブＣＵに分割されるかどうかを示す分割フラグを含み得る。ＣＵのシンタックス要素は、再帰的に定義されてよく、ＣＵがサブＣＵに分割されるかどうかに依存し得る。ＣＵがさらに分割されない場合、そのＣＵはリーフＣＵと呼ばれる。本開示では、元のリーフＣＵの明示的分割が存在しない場合でも、リーフＣＵの４つのサブＣＵもリーフＣＵと呼ばれる。たとえば、１６×１６サイズのＣＵがこれ以上分割されない場合、この１６×１６ＣＵがまったく分割されなくても、４つの８×８サブＣＵもリーフＣＵと呼ばれる。
【００３４】
[0041]ＣＵは、ＣＵがサイズ差異を有さないことを除いて、Ｈ．２６４規格のマクロブロックと同様の目的を有する。たとえば、ツリーブロックは、４つの子ノード（サブＣＵとも呼ばれる）に分割されてよく、各子ノードは、今度は親ノードとなり、別の４つの子ノードに分割されてよい。４分木のリーフノードと呼ばれる、最後の分割されていない子ノードは、リーフＣＵとも呼ばれるコーディングノードを備える。コード化ビットストリームに関連するシンタックスデータは、最大ＣＵ深さと呼ばれる、ツリーブロックが分割され得る最大回数を定義することができ、また、コーディングノードの最小サイズを定義することもできる。それに応じて、ビットストリームは最小コーディングユニット（ＳＣＵ）も定義することができる。本開示では、ＨＥＶＣの文脈におけるＣＵ、ＰＵ、またはＴＵ、あるいは他の規格の文脈における同様のデータ構造（たとえば、Ｈ．２６４／ＡＶＣにおけるマクロブロックおよびそれのサブブロック）のいずれかを指すために「ブロック」という用語を使用する。
【００３５】
[0042]ＣＵは、コーディングノードと、コーディングノードに関連する予測ユニット（ＰＵ）および変換ユニット（ＴＵ）とを含む。ＣＵのサイズは、コーディングノードのサイズに対応し、形状が方形でなければならない。ＣＵのサイズは、８×８ピクセルから最大６４×６４以上のピクセルを有するツリーブロックのサイズまでに及び得る。各ＣＵは、１つまたは複数のＰＵと、１つまたは複数のＴＵとを含み得る。ＣＵに関連するシンタックスデータは、たとえば、ＣＵを１つまたは複数のＰＵに区分することを記述し得る。区分モードは、ＣＵが、スキップモード符号化またはダイレクトモード符号化されるか、イントラ予測モード符号化されるか、あるいはインター予測モード符号化されるかによって異なり得る。ＰＵは、形状が非正方形になるように区分され得る。ＣＵに関連するシンタックスデータは、たとえば、４分木に従って、ＣＵを１つまたは複数のＴＵに区分することも記述し得る。ＴＵは、形状が正方形または非正方形（たとえば、矩形）であり得る。
【００３６】
[0043]ＨＥＶＣ規格は、ＣＵごとに異なり得るＴＵに従った変換を可能にする。ＴＵは、一般に、区分されたＬＣＵについて定義された所与のＣＵ内のＰＵのサイズに基づいてサイズ決定されるが、常にそうであるとは限らない。ＴＵは通常、ＰＵと同じサイズであるかまたはＰＵよりも小さい。いくつかの例では、ＣＵに対応する残差サンプルは、「残差４分木」（ＲＱＴ）として知られる４分木構造を使用して、より小さいユニットに再分割され得る。ＲＱＴのリーフノードは変換ユニット（ＴＵ）と呼ばれることがある。ＴＵに関連するピクセル差分値は、量子化され得る変換係数を生成するために変換され得る。
【００３７】
[0044]リーフＣＵは、１つまたは複数の予測ユニット（ＰＵ）を含み得る。一般に、ＰＵは、対応するＣＵのすべてまたは一部分に対応する空間的エリアを表し、そのＰＵの参照サンプルを取り出すためのデータを含み得る。その上、ＰＵは、予測に関するデータを含む。たとえば、ＰＵがイントラモード符号化されるとき、ＰＵのデータは、ＰＵに対応するＴＵのイントラ予測モードを記述するデータを含み得る、残差４分木（ＲＱＴ）中に含まれ得る。別の例として、ＰＵがインターモード符号化されるとき、ＰＵは、ＰＵのための１つまたは複数の動きベクトルを定義するデータを含み得る。ＰＵの動きベクトルを定義するデータは、たとえば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルの解像度（たとえば、１／４ピクセル精度もしくは１／８ピクセル精度）、動きベクトルが指す参照ピクチャ、および／または動きベクトルの参照ピクチャリスト（たとえば、リスト０、リスト１、もしくはリストＣ）を記述し得る。
【００３８】
[0045]１つまたは複数のＰＵを有するリーフＣＵはまた、１つまたは複数の変換ユニット（ＴＵ）を含み得る。変換ユニットは、上で論じられたように、（ＴＵ４分木構造とも呼ばれる）ＲＱＴを使用して指定され得る。たとえば、分割フラグは、リーフＣＵが４つの変換ユニットに分割されるかどうかを示し得る。次いで、各変換ユニットは、さらに、さらなるサブＴＵに分割され得る。ＴＵがさらに分割されないとき、そのＴＵはリーフＴＵと呼ばれ得る。一般に、イントラコーディングの場合、リーフＣＵに属するすべてのリーフＴＵは同じイントラ予測モードを共有する。すなわち、一般に、リーフＣＵのすべてのＴＵの予測値を計算するために同じイントラ予測モードが適用される。イントラコーディングの場合、ビデオエンコーダは、イントラ予測モードを使用して各リーフＴＵの残差値を、ＴＵに対応するＣＵの一部と元のブロックとの間の差分として計算し得る。ＴＵは、必ずしもＰＵのサイズに制限されるとは限らない。したがって、ＴＵはＰＵよりも大きくまたは小さくなり得る。イントラコーディングの場合、ＰＵは、同じＣＵのための対応するリーフＴＵと同じ位置にあり得る。いくつかの例では、リーフＴＵの最大サイズは、対応するリーフＣＵのサイズに対応し得る。
【００３９】
[0046]その上、リーフＣＵのＴＵはまた、残差４分木（ＲＱＴ）と呼ばれる、それぞれの４分木データ構造と関連付けられ得る。すなわち、リーフＣＵは、リーフＣＵがどのようにＴＵに区分されるかを示す４分木を含み得る。ＴＵ４分木のルートノードは一般にリーフＣＵに対応し、ＣＵ４分木のルートノードは一般にツリーブロック（またはＬＣＵ）に対応する。分割されないＲＱＴのＴＵはリーフＴＵと呼ばれる。全般に、本開示では、別段明記されない限り、リーフＣＵおよびリーフＴＵに言及するためにそれぞれＣＵおよびＴＵという用語を使用する。
【００４０】
[0047]ビデオシーケンスは通常、一連のビデオフレームまたはピクチャを含む。ピクチャグループ（ＧＯＰ）は、一般に、ビデオピクチャのうちの一連の１つまたは複数を備える。ＧＯＰは、ＧＯＰ中に含まれるいくつかのピクチャを記述するシンタックスデータを、ＧＯＰのヘッダ中、ピクチャのうちの１つまたは複数のヘッダ中、または他の場所に含み得る。ピクチャの各スライスは、それぞれのスライスの符号化モードを記述するスライスシンタックスデータを含み得る。ビデオエンコーダ２０は通常、ビデオデータを符号化するために個々のビデオスライス内のビデオブロックに対して動作する。ビデオブロックは、ＣＵ内のコーディングノードに対応し得る。ビデオブロックは、固定のサイズまたは可変のサイズを有してよく、指定されるコーディング規格に応じてサイズが異なり得る。
【００４１】
[0048]一例として、ＨＭは、様々なＰＵサイズでの予測をサポートする。特定のＣＵのサイズが２Ｎ×２Ｎであると仮定すると、ＨＭは、２Ｎ×２ＮまたはＮ×ＮのＰＵサイズでのイントラ予測をサポートし、２Ｎ×２Ｎ、２Ｎ×Ｎ、Ｎ×２Ｎ、またはＮ×Ｎの対称的なＰＵサイズでのインター予測をサポートする。ＨＭはまた、２Ｎ×ｎＵ、２Ｎ×ｎＤ、ｎＬ×２Ｎ、およびｎＲ×２ＮのＰＵサイズでのインター予測のための非対称区分をサポートする。非対称区分では、ＣＵの一方向は区分されないが、他の方向は２５％と７５％とに区分される。２５％の区分に対応するＣＵの部分は、「ｎ」とその後ろに付く「Ｕｐ」、「Ｄｏｗｎ」、「Ｌｅｆｔ」、または「Ｒｉｇｈｔ」という表示によって示される。したがって、たとえば、「２Ｎ×ｎＵ」は、上部の２Ｎ×０．５Ｎ  ＰＵと下部の２Ｎ×１．５Ｎ  ＰＵへと水平方向に区分された２Ｎ×２Ｎ  ＣＵを指す。
【００４２】
[0049]本開示では、「Ｎ×Ｎ（NxN）」および「Ｎ×Ｎ（N by N）」は、垂直寸法および水平寸法に関するビデオブロックのピクセル寸法、たとえば、１６×１６（16x16）ピクセルまたは１６×１６（16 by 16）ピクセルを指すために互換的に使用され得る。一般に、１６×１６ブロックは、垂直方向に１６ピクセルを有し（ｙ＝１６）、水平方向に１６ピクセルを有する（ｘ＝１６）。同様に、Ｎ×Ｎブロックは、一般に、垂直方向にＮピクセルを有し、水平方向にＮピクセルを有し、ただし、Ｎは非負整数値を表す。ブロック内のピクセルは行と列で構成され得る。さらに、ブロックは、必ずしも、水平方向に垂直方向と同じ数のピクセルを有する必要はない。たとえば、ブロックはＮ×Ｍピクセルを備えてよく、ただし、Ｍは必ずしもＮに等しいとは限らない。
【００４３】
[0050]ＣＵのＰＵを使用したイントラ予測コーディングまたはインター予測コーディングの後、ビデオエンコーダ２０は、ＣＵのＴＵのための残差データを計算し得る。ＰＵは、（ピクセル領域とも呼ばれる）空間領域において予測ピクセルデータを生成する方法またはモードを記述するシンタックスデータを備えてよく、ＴＵは、変換、たとえば、残差ビデオデータへの離散コサイン変換（ＤＣＴ）、整数変換、ウェーブレット変換、または概念的に同様の変換の適用後の、変換領域における係数を備え得る。残差データは、符号化されていないピクチャのピクセルと、ＰＵに対応する予測値との間のピクセル差分に対応し得る。ビデオエンコーダ２０は、ＣＵのための残差データを含むＴＵを形成し、次いで、ＴＵを変換して、ＣＵの変換係数を生成し得る。
【００４４】
[0051]変換係数を生成するための任意の変換の後に、ビデオエンコーダ２０は、変換係数の量子化を実行し得る。量子化は、一般に、さらなる圧縮を提供する、係数を表すために使用されるデータの量をできるだけ低減するために変換係数が量子化されるプロセスを指す。量子化プロセスは、係数の一部またはすべてに関連するビット深度を低減することができる。たとえば、量子化中にｎビット値がｍビット値に切り捨てられてよく、ｎはｍよりも大きい。
【００４５】
[0052]量子化の後に、ビデオエンコーダは、変換係数を走査して、量子化変換係数を含む２次元行列から１次元ベクトルを生成し得る。走査は、より高いエネルギー（したがってより低い周波数）の係数をアレイの前方に配置し、より低いエネルギー（したがってより高い周波数）の係数をアレイの後方に配置するように設計され得る。いくつかの例では、ビデオエンコーダ２０は、あらかじめ定義された走査順序を利用して、量子化された変換係数を走査し、エントロピー符号化され得る直列化されたベクトルを生成し得る。他の例では、ビデオエンコーダ２０は適応走査を実行し得る。量子化変換係数を走査して１次元ベクトルを形成した後に、ビデオエンコーダ２０は、たとえば、コンテキスト適応可変長コーディング（ＣＡＶＬＣ）、コンテキスト適応バイナリ算術コーディング（ＣＡＢＡＣ）、シンタックスベースコンテキスト適応バイナリ算術コーディング（ＳＢＡＣ）、確率間隔区分エントロピー（ＰＩＰＥ）コーディング、または別のエントロピー符号化方法に従って、１次元ベクトルをエントロピー符号化し得る。ビデオエンコーダ２０はまた、ビデオデータを復号する際にビデオデコーダ３０が使用するための符号化ビデオデータに関連するシンタックス要素をエントロピー符号化することができる。
【００４６】
[0053]ＣＡＢＡＣを実行するために、ビデオエンコーダ２０は、送信されるべきシンボルにコンテキストモデル内のコンテキストを割り当てることができる。コンテキストは、たとえば、シンボルの隣接値が０ではないかどうかに関係し得る。ＣＡＶＬＣを実行するために、ビデオエンコーダ２０は、送信されるべきシンボルのための可変長コードを選択することができる。ＶＬＣにおけるコードワードは、比較的短いコードが優勢シンボルに対応し、より長いコードが劣勢シンボルに対応するように構成され得る。このようにして、ＶＬＣを使用すると、たとえば、送信されるべきシンボルごとに等長コードワードを使用するよりも、ビットの節約を実現することができる。確率の決定は、シンボルに割り当てられるコンテキストに基づき得る。
【００４７】
[0054]本開示の技法によれば、ビデオエンコーダ２０およびビデオデコーダ３０は、以下の修正を施したＪＣＴＶＣ−Ｋ０２３９の技法を実行するように実質的に構成され得る。ＪＣＴＶＣ−Ｋ０２３９において提案されたものと比較して、以下の変更が施されてもよい。
【００４８】
[0055]第１に、（含まれているサブクローズ８．３．５を含む）ＪＣＴＶＣ−Ｋ０２３９の第２．１節全体のような追加の目標参照インデックスの導出が削除されてもよく、参照ピクチャリスト構成のための復号プロセスが次のように変更されてもよい（イタリック体のテキストは、追加事項を表し、「削除」の後に続く括弧付きのテキストは削除事項を表す）。
【００４９】
８．３．４参照ピクチャリスト構成のための復号プロセス
このプロセスは、各ＰスライスまたはＢスライスのための復号プロセスの開始時に呼び出される。
【００５０】
参照ピクチャは、サブクローズ８．５．３．２．１に指定されているような参照インデックスを介してアドレス指定される。参照インデックスは参照ピクチャリストへのインデックスである。Ｐスライスを復号するとき、単一の参照ピクチャリストＲｅｆＰｉｃＬｉｓｔ０が存在する。Ｂスライスを復号するとき、ＲｅｆＰｉｃＬｉｓｔ０に加えて、第２の独立した参照ピクチャリストＲｅｆＰｉｃＬｉｓｔ１が存在する。
【００５１】
各スライスの復号プロセスの開始時に、変数ＲｅｆＩｄｘＬ０Ａが０に等しくなるように設定され、ＢスライスについてはＲｅｆＩｄｘＬ１Ａが０に等しくなるように設定され、参照ピクチャリストＲｅｆＰｉｃＬｉｓｔ０が次のように導出され、ＢスライスについてはＲｅｆＰｉｃＬｉｓｔ１が次のように導出される。
【００５２】
[0056]第２に、（含まれているすべてのサブクローズを含む）ＪＣＴＶＣ−Ｋ０２３９の第２．２節全体における「ＲｅｆＩｄｘＬＸＡ」のすべてのインスタンスが「ＲｅｆＩｄｘＬＸＡ」と置き換えられてもよい。
【００５３】
[0057]第３に、ＲｅｆＩｄｘＬＸＡが０に等しくないときに、ＲｅｆＰｉｃＬｉｓｔＸ［ＲｅｆＩｄｘＬＸＡ］およびＲｅｆＰｉｃＬｉｓｔＸ［０］が異なるタイプを有するという制約が、ＨＥＶＣ拡張規格に挿入されてもよい。たとえば、ＲｅｆＰｉｃＬｉｓｔＸ［ＲｅｆＩｄｘＬＸＡ］が長期ピクチャであり、ＲｅｆＰｉｃＬｉｓｔＸ［０］が短期ピクチャであってもよく、またはＲｅｆＰｉｃＬｉｓｔＸ［ＲｅｆＩｄｘＬＸＡ］が短期ピクチャであり、ＲｅｆＰｉｃＬｉｓｔＸ［０］が長期ピクチャであってもよい。
【００５４】
[0058]これらの変更を実現するために、ビデオエンコーダ２０およびビデオデコーダ３０は、ＨＥＶＣ  ＷＤ９に関して説明する以下の高レベル構文変更に従って実施されてもよい。ＨＥＶＣ  ＷＤ９に対する追加のテキストは、イタリック体を使用して表される。
【００５５】
８．３．４参照ピクチャリスト構成のための復号プロセス
このプロセスは、各ＰスライスまたはＢスライスのための復号プロセスの開始時に呼び出される。
【００５６】
参照ピクチャは、サブクローズ８．５．３．２．１に指定されているような参照インデックスを介してアドレス指定される。参照インデックスは参照ピクチャリストへのインデックスである。Ｐスライスを復号するとき、単一の参照ピクチャリストＲｅｆＰｉｃＬｉｓｔ０が存在する。Ｂスライスを復号するとき、ＲｅｆＰｉｃＬｉｓｔ０に加えて、第２の独立した参照ピクチャリストＲｅｆＰｉｃＬｉｓｔ１が存在する。
【００５７】
各スライスの復号プロセスの開始時に、変数ＲｅｆＩｄｘＬ０Ａが０に等しくなるように設定され、ＢスライスについてはＲｅｆＩｄｘＬ１Ａが０に等しくなるように設定され、参照ピクチャリストＲｅｆＰｉｃＬｉｓｔ０が次のように導出され、ＢスライスについてはＲｅｆＰｉｃＬｉｓｔ１が次のように導出される。
【００５８】
[0059]時間的動きベクトル予測は、ＨＥＶＣ  ＷＤ９に関して説明する以下の技法を使用して実現されてもよい。以下では、追加事項はイタリック体のテキストによって表され、一方、削除事項は、「削除」の後に続く括弧付きのテキストによって表される。
【００５９】
マージモードに関してＴＭＶＰを呼び出すための変更
８．５．２．１．１  マージモードに関するルーマ動きベクトルのための導出プロセス
このプロセスは、ＰｒｅｄＭｏｄｅ［ｘＣ］［ｙＣ］がＭＯＤＥ＿ＳＫＩＰに等しいかまたはＰｒｅｄＭｏｄｅ［ｘＣ］［ｙＣ］がＭＯＤＥ＿ＩＮＴＥＲに等しく、マージ＿フラグ［ｘＰ］［ｙＰ］が１に等しいときにのみ呼び出され、ここにおいて、（ｘＰ，ｙＰ）は現在のピクチャの左上ルーマサンプルに対する現在のルーマ予測ブロックの左上サンプルを指定する。
【００６０】
このプロセスの入力は以下の通りである。
【００６１】
−現在ピクチャの左上ルーマサンプルに対する現在のルーマコーディングブロックの左上サンプルのルーマロケーション（ｘＣ，ｙＣ）、
−現在のピクチャの左上ルーマサンプルに対する現在のルーマ予測ブロックの左上サンプルのルーマロケーション（ｘＰ，ｙＰ）、
−現在のルーマコーディングブロックのサイズを指定する変数ｎＣＳ、
−ルーマ予測ブロックの幅および高さを指定する変数ｎＰｂＷおよびｎＰｂＨ、
−現在のコーディングユニット内の現在の予測ユニットのインデックスを指定する変数ｐａｒｔＩｄｘ。
【００６２】
このプロセスの出力は以下の通りである。
【００６３】
−ルーマ動きベクトルｍｖＬ０およびｍｖＬ１、
−参照インデックスｒｅｆＩｄｘＬ０およびｒｅｆＩｄｘＬ１、
−予測リスト利用フラグｐｒｅｄＦｌａｇＬ０およびｐｒｅｄＦｌａｇＬ１。
【００６４】
変数ｓｉｎｇｌｅＭＣＬＦｌａｇは次のように導出される。
【００６５】
−ｌｏｇ２＿ｐａｒａｌｌｅｌ＿ｍｅｒｇｅ＿ｌｅｖｅｌ＿ｍｉｎｕｓ２が０よりも大きくｎＣＳが８に等しい場合、ｓｉｎｇｌｅＭＣＬＦｌａｇが１に設定される。
【００６６】
−それ以外の場合、ｓｉｎｇｌｅＭＣＬＦｌａｇは０に設定される。
【００６７】
ｓｉｎｇｌｅＭＣＬＦｌａｇが１に等しいとき、ｘＰがｘＣに等しくなるように設定され、ｙＰがｙＣに等しくなるように設定され、ｎＰｂＷとｎＰｂＨの両方がｎＣＳに等しくなるように設定される。
【００６８】
注意−ｓｉｎｇｌｅＭＣＬＦｌａｇが１に等しいとき、現在のコーディングユニットのすべての予測ユニットが２Ｎｘ２Ｎ予測ユニットのマージ候補リストと同一の単一のマージ候補リストを共有する。
【００６９】
動きベクトルｍｖＬ０およびｍｖＬ１、参照インデックスｒｅｆＩｄｘＬ０およびｒｅｆＩｄｘＬ１、ならびに予測利用フラグｐｒｅｄＦｌａｇＬ０およびｐｒｅｄＦｌａｇＬ１は、以下の順序のステップによって指定されたように導出される。
【００７０】
１．  サブクローズにおける互いに隣接する予測ユニットパーティションからのマージ候補の導出プロセス．．．
２．  （Ｘが０または１である）時間的マージ候補ｒｅｆＩｄｘＬＸの参照インデックスが０に等しくなるように設定される。
【００７１】
３．  サブクローズ８．５．３．１．７における時間的ルーマ動きベクトル予測のための導出プロセスが、ルーマロケーション（ｘＰ，ｙＰ）と、ルーマ予測ブロックの幅および高さｎＰｂＷおよびｎＰｂＨと、［削除：「および」］ｒｅｆＩｄｘＬＸと、１に等しいｍｅｒｇｅＴＭＶＰとを入力として呼び出され、出力が利用可能性フラグａｖａｉｌａｂｌｅＦｌａｇＸＣｏｌおよび時間的動きベクトルｍｖＬＸＣｏｌとなる。変数ａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌおよびｐｒｅｄＦｌａｇＬＸＣｏｌ（Ｘはそれぞれ０または１である）は、以下で指定するように導出される。
【００７２】
４．  ．．．
．．．
ＡＭＶＰモードに関するＴＭＶＰの呼び出しのための変更
８．５．３．１．５  ルーマ動きベクトル予測のための導出プロセス
このプロセスへの入力は以下の通りである。
【００７３】
−現在ピクチャの左上ルーマサンプルに対する現在のルーマコーディングブロックの左上サンプルのルーマロケーション（ｘＣ，ｙＣ）、
−現在のルーマコーディングブロックのサイズを指定する変数ｎＣＳ、
−現在のピクチャの左上ルーマサンプルに対する現在のルーマ予測ブロックの左上サンプルを指定するルーマロケーション（ｘＰ，ｙＰ）、
−ルーマ予測ブロックの幅および高さを指定する変数ｎＰｂＷおよびｎＰｂＨ、
−  現在の予測ユニットパーティションの参照インデックスｒｅｆＩｄｘＬＸ（ここで、Ｘは０または１である）。
【００７４】
−現在のコーディングユニット内の現在の予測ユニットのインデックスを指定する変数ｐａｒｔＩｄｘ。
【００７５】
このプロセスの出力は以下の通りである。
【００７６】
−  動きベクトルｍｖＬＸの予測ｍｖｐＬＸ（ここで、Ｘは０または１である）。
【００７７】
動きベクトル予測子ｍｖｐＬＸは、以下の順序付きステップで導出される。
【００７８】
１．  サブクローズ８．５．３．１．６における互いに隣接する予測ユニットパーティションからの動きベクトル予測子候補の導出プロセスは、ルーマコーディングブロックロケーション（ｘＣ，ｙＣ）と、コーディングブロックサイズｎＣＳと、ルーマ予測ブロックロケーション（ｘＰ，ｙＰ）と、予測ユニットの幅および高さｎＰｂＷおよびｎＰｂＨと、ｒｅｆＩｄｘＬＸ（Ｘはそれぞれ０または１である）と、パーティションインデックスｐａｒｔＩｄｘとを入力として呼び出され、ＮがＡ、Ｂによって置き換えられる利用可能性フラグａｖａｉｌａｂｌｅＦｌａｇＬＸＮと動きベクトルｍｖＬＸＮとを出力として呼び出される。
【００７９】
２．  ａｖａｉｌａｂｌｅＦｌａｇＬＸＡとａｖａｉｌａｂｌｅＦｌａｇＬＸＢが１に等しく、ｍｖＬＸＡがｍｖＬＸＢに等しくない場合、ａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌが０に等しくなるように設定され、それ以外の場合、サブクローズ８．５．３．１．７における時間的ルーマ動きベクトル予測のための導出プロセスが、ルーマロケーション（ｘＰ，ｙＰ）と、ルーマ予測ブロックの幅および高さｎＰｂＷおよびｎＰｂＨと、［削除：「および」］ｒｅｆＩｄｘＬＸ（Ｘはそれぞれ０または１である）と、０に等しいｍｅｒｇｅＴＭＶＰとを入力として呼び出され、出力が利用可能性フラグａｖａｉｌａｂｌｅＦｌａｇＸＣｏｌおよび時間的動きベクトル予測子ｍｖＬＸＣｏｌとなる。
【００８０】
．．．
ＴＭＶＰ導出のための変更
８．５．３．１．７  時間的ルーマ動きベクトル予測のための導出プロセス
このプロセスへの入力は以下の通りである。
【００８１】
−現在のピクチャの左上ルーマサンプルに対する現在のルーマ予測ブロックの左上サンプルを指定するルーマロケーション（ｘＰ，ｙＰ）、
−ルーマ予測ブロックの幅および高さｎＰｂＷおよびｎＰｂＨを指定する変数ｎＰｂＷおよびｎＰｂＨ、
−変数ｍｅｒｇｅＴＭＶＰ、
−参照インデックスｒｅｆＩｄｘＬＸ（Ｘは０または１である）。
【００８２】
このプロセスの出力は以下の通りである。
【００８３】
−動きベクトル予測ｍｖＬＸＣｏｌ、
−利用可能性フラグａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌ。
【００８４】
変数ｃｕｒｒＰｂは、ルーマロケーション（ｘＰ，ｙＰ）における現在のルーマ予測ブロックを指定する。
【００８５】
変数ｍｖＬＸＣｏｌおよびａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌは次のように導出される。
【００８６】
−ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅ＿ｆｌａｇが０に等しい場合、ｍｖＬＸＣｏｌの両方の成分は０に等しくなるように設定され、ａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌは０に等しくなるように設定される。
【００８７】
−それ以外の場合、以下の順序のステップが適用される。
【００８８】
１．  ｓｌｉｃｅ＿ｔｙｐｅ、ｃｏｌｌｏｃａｔｅｄ＿ｆｒｏｍ＿ｌ０＿ｆｌａｇ、およびｃｏｌｌｏｃａｔｅｄ＿ｒｅｆ＿ｉｄｘの値に応じて、同じ位置にある区分を含むピクチャを規定する変数ｃｏｌＰｉｃは、次のように導出される。
【００８９】
−ｓｌｉｃｅ＿ｔｙｐｅがＢに等しく、ｃｏｌｌｏｃａｔｅｄ＿ｆｒｏｍ＿ｌ０＿ｆｌａｇが０に等しい場合、変数ｃｏｌＰｉｃは、ＲｅｆＰｉｃＬｉｓｔ１［ｃｏｌｌｏｃａｔｅｄ＿ｒｅｆ＿ｉｄｘ］によって規定されるような同じ位置にある区分を含むピクチャを規定する。
【００９０】
−それ以外の場合（ｓｌｉｃｅ＿ｔｙｐｅがＢに等しく、ｃｏｌｌｏｃａｔｅｄ＿ｆｒｏｍ＿ｌ０＿ｆｌａｇが１に等しく、またはｓｌｉｃｅ＿ｔｙｐｅがＰに等しい）、変数ｃｏｌＰｉｃは、ＲｅｆＰｉｃＬｉｓｔ０［ｃｏｌｌｏｃａｔｅｄ＿ｒｅｆ＿ｉｄｘ］によって規定されるような同じ位置にある区分を含むピクチャを規定する。
【００９１】
２．  右下連結動きベクトルは次のように導出される。
【数１】
2016506185.tif 000003
【数２】
2016506185.tif 000004
【００９２】
−（ｙＰ＞＞Ｌｏｇ２ＣｔｂＳｉｚｅＹ）が（ｙＰＲｂ＞＞Ｌｏｇ２ＣｔｂＳｉｚｅＹが（ｙＰＲｂ＞＞ＬＯｇ２ＣｂｔＳｉｚｅＹ）に等しく、ｘＰＲｂがｐｉｃ＿ｗｉｄｔｈ＿ｉｎ＿ｌｕｍａ＿ｓａｍｐｌｅｓである場合、以下のことが適用される。
【００９３】
−変数ｃｏｌＰｕは、ｃｏｌＰｉｃによって指定される連結ピクチャ内部の（（ｘＰＲｂ＞＞４）＜＜４、（ｙＰＲｂ）＞＞４）＜＜４）によって与えられる修正されたロケーションを対象とするルーマ予測ブロックを指定する。
【００９４】
−ルーマロケーション（ｘＰＣｏｌ，ｙＰＣｏｌ）は、ｃｏｌＰｉｃによって指定される連結ピクチャの左上ルーマサンプルに対してｃｏｌＰｂによって指定される連結ルーマ予測ブロックの左上サンプルに等しくなるように設定される。
【００９５】
−サブクローズ８．５．３．１．８において指定されるような連結動きベクトルのための導出プロセスは、ｃｕｒｒＰｂ、ｃｏｌＰｉｃ、ｃｏｌＰｂ、（ｘＰＣｏｌ，ｙＰＣｏｌ）、ｍｅｒｇｅＴＭＶＰ、およびｒｅｆＩｄｘＬＸを入力として呼び出され、出力がｍｖＬＸＣｏｌおよびａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌに割り当てられる。
【００９６】
−それ以外の場合、ｍｖＬＸＣｏｌの両方の成分は０に等しく設定され、ａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌは０に等しく設定される。
【００９７】
３．  ａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌが０に等しいとき、中央連結動きベクトルは次のように導出される。
【数３】
2016506185.tif 000005
【数４】
2016506185.tif 000006
【００９８】
−変数ｃｏｌＰｂは、ｃｏｌＰｉｃ内部の（（ｘＰＣｔｒ＞＞４）＜＜４、（ｙＰＣｔｒ）＞＞４）＜＜４）によって与えられる修正されたロケーションを対象とするルーマ予測ブロックを指定する。
【００９９】
−ルーマロケーション（ｘＰＣｏｌ，ｙＰＣｏｌ）は、ｃｏｌＰｉｃによって指定される連結ピクチャの左上ルーマサンプルに対してｃｏｌＰｂによって指定される連結ルーマ予測ブロックの左上サンプルに等しくなるように設定される。
【０１００】
−サブクローズ８．５．３．１．８において指定されるような連結動きベクトルのための導出プロセスは、ｃｕｒｒＰｂ、ｃｏｌＰｉｃ、ｃｏｌＰｂ、（ｘＰＣｏｌ，ｙＰＣｏｌ）、ｍｅｒｇｅＴＭＶＰ、およびｒｅｆＩｄｘＬＸを入力として呼び出され、出力がｍｖＬＸＣｏｌおよびａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌに割り当てられる。
【０１０１】
８．５．３．１．８  連結動きベクトルのための導出プロセス
このプロセスへの入力は以下の通りである。
【０１０２】
−現在の予測ブロックを指定するｃｕｒｒＰｂ、
−連結ピクチャを指定するｃｏｌＰｉｃ、
−ｃｏｌＰｉｃによって指定される連結ピクチャ内部の連結予測ブロックを指定するｃｏｌＰｂ、
−ｃｏｌＰｉｃによって指定される連結ピクチャの左上ルーマサンプルに対してｃｏｌＰｂによって指定される連結ルーマ予測ブロックの左上サンプルを指定するルーマロケーション（ｘＰＣｏｌ，ｙＰＣｏｌ）、
−変数ｍｅｒｇｅＴＭＶＰ、
−参照インデックスｒｅｆＩｄｘＬＸ（ここにおいて、Ｘは０または１である）。
【０１０３】
このプロセスの出力は以下の通りである。
【０１０４】
−動きベクトル予測ｍｖＬＸＣｏｌ、
−利用可能性フラグａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌ。
【０１０５】
変数ｃｕｒｒＰｉｃは現在のピクチャを指定する。
【０１０６】
アレイｐｒｅｄＦｌａｇＬＸＣｏｌ［ｘ］［ｙ］、ｍｖＬＸＣｏｌ［ｘ］［ｙ］、およびｒｅｆＩｄｘＬＸＣｏｌ［ｘ］［ｙ］は、それぞれｃｏｌＰｉｃ、ＰｒｅｄＦｌａｇＬＸ［ｘ］［Ｙ］、ＭｖＬＸ［ｘ］［ｙ］、およびＲｅｆＩｄｘＬＸ［ｘ］［ｙ］によって指定される連結ピクチャの対応するアレイに等しくなるように設定され、Ｘはこのプロセスを呼び出す目的であるＸの値である。
【０１０７】
変数ｍｖＬＸＣｏｌおよびａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌは、次のように導出される。
【０１０８】
−ｃｏｌＰｂがイントラ予測モードでコーディングされる場合、ｍｖＬＸＣｏｌの両方の成分は０に等しくなるように設定され、ａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌは０に等しくなるように設定される。
【０１０９】
−それ以外の場合、動きベクトルｍｖＣｏｌ、参照インデックスｒｅｆＩｄｘＣｏｌ、および参照リスト識別子ｌｉｓｔＣｏｌは次のように導出される。
【０１１０】
−ｐｒｅｄＦｌａｇＬ０Ｃｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］が０に等しい場合、ｍｖＣｏｌ、ｒｅｆＩｄｘＣｏｌ、およびｌｉｓｔＣｏｌは、それぞれ、ｍｖＬ１Ｃｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］、ｒｅｆＩｄｘＬ１Ｃｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］、およびＬ１に等しくなるように設定される。
【０１１１】
それ以外の場合ｐｒｅｄＦｌａｇＬ０Ｃｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］が１に等しくｐｒｅｄＦｌａｇＬ１Ｃｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］が０に等しい場合、ｍｖＣｏｌ、ｒｅｆＩｄｘＣｏｌ、およびｌｉｓｔＣｏｌは、それぞれ、ｍｖＬ０Ｃｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］、ｒｅｆＩｄｘＬ０Ｃｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］、およびＬ０に等しくなるように設定される。
【０１１２】
−場合によっては（ｐｒｅｄＦｌａｇＬ０Ｃｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］が１に等しくｐｒｅｄＦｌａｇＬ１Ｃｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］が１に等しい場合）、以下の割当てが行われる。
【０１１３】
−ＤｉｆｆＰｉｃＯｒｄｅｒＣｎｔ（ｃｕｒｒＰｉｃ，ｐｉｃ）が現在のスライスのあらゆる参照ピクチャリストのあらゆるピクチャｐｉｃについて０以下である場合、ｍｖＣｏｌ、ｒｅｆＩｄｘＣｏｌ、およびｌｉｓｔＣｏｌは、それぞれ、ｍｖＬＸ［ｘＰＣｏｌ］［ｙＰＣｏｌ］、ｒｅｆＩｄｘＬＸ［ｘＰＣｏｌ］［ｙＰＣｏｌ］、およびＬＸに等しくなるように設定され、Ｘは、このプロセスを呼び出す目的であるＸの値である。
【０１１４】
−それ以外の場合、ｍｖＣｏｌ、ｒｅｆＩｄｘＣｏｌ、およびｌｉｓｔＣｏｌは、それぞれ、ｍｖＬＮＣｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］、ｒｅｆＩｄｘＬＮＣｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］、およびＬＮに等しくなるように設定され、Ｎはｃｏｌｌｏｃａｔｅｄ＿ｆｒｏｍ＿１０＿ｆｌａｇの値である。
【０１１５】
変数ｍｖＬＸＣｏｌおよびａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌは次のように導出される。
【０１１６】
−［削除：「もしも」］ＬｏｎｇＴｅｒｍＲｅｆＰｉｃ（ｃｕｒｒＰｉｃ，ｃｕｒｒＰｂ，ｒｅｆＩｄｘＬＸ，ＬＸ）がＬｏｎｇＴｅｒｍＲｅｆＰｉｃ（ｃｏｌＰｉｃ，ｃｏｌＰｂ，ｒｅｆＩｄｘＣｏｌ，ｌｉｓｔＣｏｌ）に等しくない場合、以下のことが適用される。
【０１１７】
−ｒｅｆＩｄｘＬＸＡが０よりも大きく、ｍｅｒｇｅＴＭＶＰが１に等しい場合、ｒｅｆＩｄｘＬＸはＲｅｆＩｄｘＬＸＡに設定され、ａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌは１に設定される。
【０１１８】
−それ以外の場合、ｍｖＬＸＣｏｌの両方の成分が０に等しくなるように設定され、ａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌが０に等しくなるように設定される。
【０１１９】
−［削除：「それ以外の場合、」］変数ａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌが１に等しくなるように設定されると、ｒｅｆＰｉｃＬｉｓｔＣｏｌ［ｒｅｆＩｄｘＣｏｌ］は、ピクチャｃｏｌＰｉｃ内に予測ブロックｃｕｒｒＰｂを含むスライスの参照ピクチャリストｌｉｓｔＣｏｌ内に参照インデックスｒｅｆＩｄｘＣｏｌを有するピクチャになるように設定される。
【数５】
2016506185.tif 000007
【数６】
2016506185.tif 000008
【０１２０】
−ＲｅｆＰｉｃＬｉｓｔＸ［ｒｅｆＩｄｘＬＸ］が長期参照ピクチャであるかまたはｃｏｌＰｏｃＤｉｆｆがｃｕｒｒＰｏｃＤｉｆｆに等しい場合、ｍｖＬＸＣｏｌは次のように導出される。
【数７】
2016506185.tif 000009
【０１２１】
−それ以外の場合、ｍｖＬＸＣｏｌは、以下で指定されるような動きベクトルｍｖＣｏｌのスケーリングされたバージョンとして導出される。
【数８】
2016506185.tif 000010
【数９】
2016506185.tif 000011
【数１０】
2016506185.tif 000012
【０１２２】
ここにおいて、ｔｄおよびｔｂは、次のように導出される。
【数１１】
2016506185.tif 000013
【数１２】
2016506185.tif 000014
【０１２３】
[0060]ビデオエンコーダ２０およびビデオデコーダ３０は、適宜、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理回路、ソフトウェア、ハードウェア、ファームウェアなど、種々の好適なエンコーダまたはデコーダ回路のいずれか、あるいはそれらの任意の組合せとして各々実装され得る。ビデオエンコーダ２０およびビデオデコーダ３０の各々は、１つまたは複数のエンコーダまたはデコーダ内に含まれてよく、それらのいずれも複合ビデオエンコーダ／デコーダ（コーデック）の一部として統合されてよい。ビデオエンコーダ２０および／またはビデオデコーダ３０を含むデバイスは、集積回路、マイクロプロセッサ、および／または、携帯電話のようなワイヤレス通信デバイスを備え得る。
【０１２４】
[0061]図２は、動きベクトルをコーディングするための技法を実装し得るビデオエンコーダ２０の例を示すブロック図である。ビデオエンコーダ２０は、ビデオスライス内のビデオブロックのイントラコーディングとインターコーディングとを実行し得る。イントラコーディングは、空間的予測を利用して、所与のビデオフレームまたはピクチャ内のビデオの空間的冗長性を低減または除去する。インターコーディングは、時間的予測を利用して、ビデオシーケンスの隣接フレームまたはピクチャ内のビデオの時間的冗長性を低減または除去する。イントラモード（Ｉモード）は、いくつかの空間ベースのコーディングモードのいずれかを指し得る。単方向予測（Ｐモード）または双方向予測（Ｂモード）などのインターモードは、いくつかの時間ベースのコーディングモードのいずれかを指し得る。
【０１２５】
[0062]図２に示されるように、ビデオエンコーダ２０は、符号化されるべきビデオフレーム内の現在のビデオブロックを受信する。図２の例では、ビデオエンコーダ２０は、モード選択ユニット４０と、参照ピクチャメモリ６４と、加算器５０と、変換処理ユニット５２と、量子化ユニット５４と、エントロピー符号化ユニット５６とを含む。モード選択ユニット４０は、今度は、動き補償ユニット４４と、動き推定ユニット４２と、イントラ予測ユニット４６と、区分ユニット４８とを含む。ビデオブロックの復元のために、ビデオエンコーダ２０はまた、逆量子化ユニット５８と、逆変換ユニット６０と、加算器６２とを含む。復元されたビデオからブロッキネスアーティファクトを除去するためにブロック境界をフィルタリングする、デブロッキングフィルタ（図２に図示せず）も含まれ得る。所望される場合、デブロッキングフィルタは一般に、加算器６２の出力をフィルタリングすることになる。また、デブロッキングフィルタに加えて追加のフィルタ（ループ内またはループ後）が使用され得る。そのようなフィルタは、簡潔のために示されていないが、所望される場合、（ループ内フィルタとして）加算器５０の出力をフィルタリングし得る。
【０１２６】
[0063]符号化プロセス中に、ビデオエンコーダ２０は、コーディングされるべきビデオフレームまたはスライスを受信する。フレームまたはスライスは、複数のビデオブロックに分割され得る。動き推定ユニット４２および動き補償ユニット４４は、時間的な予測を行うために、１つまたは複数の参照フレーム中の１つまたは複数のブロックに対する受信されたビデオブロックのインター予測コーディングを実行する。イントラ予測ユニット４６は代替的に、空間的な予測を行うために、コーディングされるべきブロックと同じフレームまたはスライス中の１つまたは複数の隣接ブロックに対して受信されたビデオブロックのイントラ予測コーディングを実行し得る。ビデオエンコーダ２０は、たとえば、ビデオデータのブロックごとに適切なコーディングモードを選択するために、複数のコーディングパスを実行し得る。
【０１２７】
[0064]その上、区分ユニット４８は、前のコーディングパスにおける前の区分方式の評価に基づいて、ビデオデータのブロックをサブブロックに区分し得る。たとえば、区分ユニット４８は、初めにフレームまたはスライスをＬＣＵに区分し、レートひずみ分析（たとえば、レートひずみ最適化）に基づいてＬＣＵの各々をサブＣＵに区分し得る。モード選択ユニット４０は、さらに、ＬＣＵをサブＣＵに区分することを示す４分木データ構造を生成し得る。４分木のリーフノードＣＵは、１つまたは複数のＰＵと、１つまたは複数のＴＵとを含み得る。
【０１２８】
[0065]モード選択ユニット４０は、たとえば、誤差結果に基づいて、コーディングモード、すなわち、イントラまたはインターのうちの１つを選択することができ、残差ブロックデータを生成するために、得られたイントラコーディングされたブロックまたはインターコーディングされたブロックを加算器５０に与え、参照フレームとして使用するための符号化ブロックを復元するために、得られたイントラコーディングされたブロックまたはインターコーディングされたブロックを加算器６２に与える。モード選択ユニット４０はまた、動きベクトル、イントラモードインジケータ、区分情報、および他のそのようなシンタックス情報などのシンタックス要素をエントロピー符号化ユニット５６に与える。
【０１２９】
[0066]動き推定ユニット４２および動き補償ユニット４４は高度に統合され得るが、概念的な目的のために別々に示されている。動き推定ユニット４２によって実行される動き推定は、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、たとえば、現在のフレーム（または他のコード化ユニット）内でコーディングされている現在のブロックに対する参照フレーム（または他のコード化ユニット）内の予測ブロックに対する現在のビデオフレームまたはピクチャ内のビデオブロックのＰＵの変位を示し得る。予測ブロックは、絶対値差分和（ＳＡＤ）、２乗差分和（ＳＳＤ）、または他の差分尺度によって決定され得るピクセル差分に関して、コーディングされるブロックに精密に一致することがわかっているブロックである。いくつかの例では、ビデオエンコーダ２０は、参照ピクチャメモリ６４に記憶された参照ピクチャのサブ整数ピクセル位置の値を計算し得る。たとえば、ビデオエンコーダ２０は、参照ピクチャの１／４ピクセル位置、１／８ピクセル位置、または他の分数ピクセル位置の値を補間し得る。したがって、動き推定ユニット４２は、フルピクセル位置と分数ピクセル位置とに対する動き探索を実行し、分数ピクセル精度で動きベクトルを出力し得る。
【０１３０】
[0067]動き推定ユニット４２は、ＰＵの位置を参照ピクチャの予測ブロックの位置と比較することによって、インターコード化スライス中のビデオブロックのＰＵのための動きベクトルを計算する。参照ピクチャは、第１の参照ピクチャリスト（リスト０）または第２の参照ピクチャリスト（リスト１）から選択されてよく、それらの参照ピクチャリストの各々は、参照ピクチャメモリ６４に記憶された１つまたは複数の参照ピクチャを識別する。動き推定ユニット４２は、計算された動きベクトルをエントロピー符号化ユニット５６と動き補償ユニット４４とに送る。
【０１３１】
[0068]動き補償ユニット４４によって実行される動き補償は、動き推定ユニット４２によって決定された動きベクトルに基づいて予測ブロックをフェッチまたは生成することに関与し得る。この場合も、いくつかの例では、動き推定ユニット４２と動き補償ユニット４４とは機能的に統合され得る。現在のビデオブロックのＰＵのための動きベクトルを受信すると、動き補償ユニット４４は、参照ピクチャリストのうちの１つにおいて動きベクトルが指す予測ブロックの位置を特定し得る。加算器５０は、以下で説明されるように、コーディングされている現在ビデオブロックのピクセル値から予測ブロックのピクセル値を減算し、ピクセル差分値を形成することによって、残差ビデオブロックを形成する。一般に、動き推定ユニット４２はルーマ成分に対して動き推定を実行し、動き補償ユニット４４は、クロマ成分とルーマ成分の両方のためにルーマ成分に基づいて計算された動きベクトルを使用する。モード選択ユニット４０はまた、ビデオスライスのビデオブロックを復号する際にビデオデコーダ３０が使用するためのビデオブロックとビデオスライスとに関連するシンタックス要素を生成し得る。
【０１３２】
[0069]イントラ予測ユニット４６は、上で説明されたように、動き推定ユニット４２と動き補償ユニット４４とによって実行されるインター予測の代替として、現在のブロックをイントラ予測し得る。特に、イントラ予測ユニット４６は、現在のブロックを符号化するために使用すべきイントラ予測モードを決定し得る。いくつかの例では、イントラ予測ユニット４６は、たとえば、別々の符号化パスの間に、様々なイントラ予測モードを使用して、現在のブロックを符号化することができ、イントラ予測ユニット４６（または、いくつかの例において、モード選択ユニット４０）は、テストされたモードから使用するのに適切なイントラ予測モードを選択することができる。
【０１３３】
[0070]たとえば、イントラ予測ユニット４６は、様々なテストされたイントラ予測モードのためのレートひずみ分析を使用してレートひずみ値を計算し、テストされたモードの中で最良のレートひずみ特性を有するイントラ予測モードを選択し得る。レートひずみ分析は、一般に、符号化ブロックと、符号化ブロックを生成するために符号化された元の符号化されていないブロックとの間のひずみ（または誤差）の量、ならびに符号化ブロックを生成するために使用されるビットレート（すなわち、ビット数）を決定する。イントラ予測ユニット４６は、どのイントラ予測モードがブロックについて最良のレートひずみ値を呈するかを決定するために、様々な符号化ブロックのひずみおよびレートから比率を計算し得る。
【０１３４】
[0071]ブロック用のイントラ予測モードを選択した後、イントラ予測ユニット４６は、ブロック用に選択されたイントラ予測モードを示す情報を、エントロピー符号化ユニット５６に提供することができる。エントロピー符号化ユニット５６は、選択されたイントラ予測モードを示す情報を符号化することができる。ビデオエンコーダ２０は、（コードワードマッピングテーブルとも呼ばれる）複数のイントラ予測モードインデックステーブルおよび複数の修正されたイントラ予測モードインデックステーブルと、様々なブロック用の符号化コンテキストの定義と、最確イントラ予測モードの指示とを含み得る送信されるビットストリーム構成データの中に、コンテキストの各々について使用する、イントラ予測モードインデックステーブルと修正されたイントラ予測モードインデックステーブルとを含めることができる。
【０１３５】
[0072]ビデオエンコーダ２０は、コーディングされている元のビデオブロックから、モード選択ユニット４０からの予測データを減算することによって、残差ビデオブロックを形成する。加算器５０は、この減算演算を実行する１つまたは複数のコンポーネントを表す。変換処理ユニット５２は、離散コサイン変換（ＤＣＴ）または概念的に同様の変換などの変換を残差ブロックに適用し、残差変換係数値を備えるビデオブロックを生成する。変換処理ユニット５２は、ＤＣＴと概念的に同様である他の変換を実行し得る。ウェーブレット変換、整数変換、サブバンド変換または他のタイプの変換も使用され得る。
【０１３６】
[0073]いずれの場合も、変換処理ユニット５２は、変換を残差ブロックに適用し、残差変換係数のブロックを生成する。変換は、残差情報をピクセル値領域から周波数領域などの変換領域に変換し得る。変換処理ユニット５２は、得られた変換係数を量子化ユニット５４に送り得る。量子化ユニット５４は、ビットレートをさらに低減するために変換係数を量子化する。量子化プロセスは、係数の一部またはすべてに関連するビット深度を低減することができる。量子化プロセスは「スケーリング」プロセスと呼ばれることもあり、したがって、量子化された変換係数は「スケーリングされた変換係数」と呼ばれることもある。量子化（またはスケーリング）の程度は、量子化パラメータを調整することによって修正され得る。いくつかの例では、エントロピー符号化ユニット５６は、次いで、量子化変換係数を含む行列の走査を実行し得る。
【０１３７】
[0074]量子化の後、エントロピー符号化ユニット５６は、走査された量子化変換係数をエントロピーコーディングする。たとえば、エントロピー符号化ユニット５６は、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ）、確率間隔区分エントロピー（ＰＩＰＥ）コーディングまたは別のエントロピーコーディング技法を実行し得る。コンテキストベースエントロピーコーディングの場合、コンテキストは隣接ブロックに基づき得る。エントロピー符号化ユニット５６によるエントロピーコーディングの後、符号化ビットストリームは、別のデバイス（たとえば、ビデオデコーダ３０）に送信されてよく、または後で送信するかもしくは取り出すために保管され得る。
【０１３８】
[0075]逆量子化ユニット５８および逆変換ユニット６０は、それぞれ逆量子化および逆変換を適用して、たとえば参照ブロックとして後で使用するために、ピクセル領域中で残差ブロックを復元する。動き補償ユニット４４は、残差ブロックを参照ピクチャメモリ６４のフレームのうちの１つの予測ブロックに加算することによって参照ブロックを計算し得る。動き補償ユニット４４はまた、復元された残差ブロックに１つまたは複数の補間フィルタを適用して、動き推定において使用するサブ整数ピクセル値を計算し得る。加算器６２は、復元された残差ブロックを、動き補償ユニット４４によって生成された動き補償予測ブロックに加算して、参照ピクチャメモリ６４に記憶するための復元されたビデオブロックを生成する。復元されたビデオブロックは、後続のビデオフレーム中のブロックをインターコーディングするための参照ブロックとして、動き推定ユニット４２および動き補償ユニット４４によって使用され得る。
【０１３９】
[0076]モード選択ユニット４０は、上記で説明したように様々な符号化パスを実行してもよい。これらのパスのうちのいくつかにおいて、モード選択ユニット４０は、ビデオデータの現在のブロックに関する特定の符号化モードを決定してもよい。たとえば、モード選択ユニット４０は、パスから得られるレートひずみメトリクスに基づいて現在のブロックはインター予測を使用して予測すべきであると決定してもよい。同様に、モード選択ユニット４０は、高度動きベクトル予測（ＡＭＶＰ）またはマージモードを使用して現在のブロックの動きベクトルを符号化すべきであるかどうかを決定してもよい。概して、ＡＭＶＰでは、動きベクトルはＡＭＶＰ候補の動きベクトルに対してコーディングされ、現在の動きベクトルとＡＭＶＰ候補の動きベクトルとの間の動きベクトルの差が算出される。さらに、現在の動きベクトルについても参照ピクチャリスト識別子および参照インデックスがコーディングされる。
【０１４０】
[0077]一方、マージモードでは、ほぼすべての動きパラメータが動きベクトル予測子から継承され、動きベクトル予測子インデックスのみが、候補動きベクトル予測子の組におけるどの動きベクトル予測子が動きベクトルをコーディングするために使用されるかを示すために符号化される。しかしながら、本開示の技法によれば、ビデオエンコーダ２０は、マージモードを実行する際に追加の参照インデックスを使用してもよい。
【０１４１】
[0078]モード選択ユニット４０は、現在のブロックをビュー間予測すべきであると決定してもよい。さらに、モード選択ユニット４０は、コロケートされたブロックの動きベクトルが、現在のブロックのビュー間参照ピクチャの参照ブロックを識別する動きベクトルを定めるのに十分であると決定してもよい。したがって、モード選択ユニット４０は、現在のブロックの動きベクトルを符号化するためにマージモード、すなわち、時間的動きベクトル予測子（ＴＭＶＰ）を使用するマージモードを使用することを選んでもよい。しかしながら、従来のマージモードでは、現在のブロックの動きベクトルは、コロケートされたブロックの参照インデックス、すなわち、現在のブロックを含む現在のピクチャのピクチャ順序カウント（ＰＯＣ）とは異なるピクチャ順序カウントを有する参照ピクチャを参照するＴＭＶＰを継承する。したがって、ビデオエンコーダ２０は、ビュー間参照ピクチャが現在のピクチャと同じＰＯＣを有するように、ＴＭＶＰの参照インデックスからとは別個の追加の参照インデックスを使用して参照ピクチャリストからビュー間参照ピクチャを選択してもよい。
【０１４２】
[0079]特に、ビデオエンコーダ２０は、追加の参照インデックスの所定の値を決定してもよい。所定の値は０であっても、−１であっても、または別の値であってもよい。ビデオエンコーダ２０は、いくつかの例では、現在のブロックを含むスライスのスライスヘッダ、現在のブロックを含むピクチャのピクチャパラメータセット（ＰＰＳ）、ピクチャを含むシーケンスのシーケンスパラメータセット（ＳＰＳ）、および／またはビデオパラメータセット（ＶＰＳ）内の所定の値を表すデータを符号化してもよい。エントロピー符号化ユニット５６は、このデータをエントロピー符号化し得る。いずれの場合も、ビデオエンコーダ２０は、追加の参照インデックスを使用することによって、現在のピクチャの現在のブロックに関するビュー間参照ピクチャに現在のピクチャのＰＯＣ値と同じＰＯＣを確実に有させ得る。
【０１４３】
[0080]したがって、動き補償ユニット４４は、現在のブロックの予想されるブロックを構成する際、参照ピクチャ内の参照ブロックのロケーションを決定するために異なるピクチャ内のコロケートされたブロックから水平動成分、垂直動成分、および参照ピクチャリストを使用してもよいが、追加の参照ブロックの所定の値を使用してもよく、次いで参照ブロックから所定のブロックを算出してもよい。参照ピクチャは、参照ピクチャリストに適用される追加の参照インデックスによって識別される参照ピクチャに対応してもよく、一方、参照ブロックは、ＴＭＶＰの水平動成分および垂直動成分によってオフセットされる現在のブロックのロケーションによって定められる参照ピクチャ内のロケーションにおいて識別されてもよい。
【０１４４】
[0081]このように、ビデオエンコーダ２０は、現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定することと、候補動きベクトル予測子に関して、現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、所定の値と等しい追加の目標参照インデックスの値を決定することと、追加の参照インデックスの値に少なくとも部分的に基づいて現在の動きベクトルをコーディングする（すなわち、この例では符号化する）こととを行うように構成されたビデオコーダの例を表す。
【０１４５】
[0082]図２のビデオエンコーダ２０は、現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に追加の参照インデックスの値を所定の値に設定し、追加の参照インデックスの値に少なくとも部分的に基づいて現在の動きベクトルをコーディングするように構成されてもよいビデオエンコーダの例も表す。追加または代替として、ビデオエンコーダ２０は、コーディングすべきビデオデータが基本ビデオコーディング規格または基本ビデオコーディング規格の拡張規格に適合するかどうかを決定することと、ビデオデータが基本ビデオコーディング規格に適合するときに、基本ビデオコーディング規格に従ってビデオデータをコーディングすることと、ビデオデータが基本ビデオコーディング規格の拡張規格に適合するときに、ビデオデータのピクチャのブロックの動きベクトルをコーディングする際に、動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の追加の目標参照インデックス値の値を導出することと、追加の目標参照インデックス値の値に少なくとも部分的に基づいて動きベクトルをコーディングすることとを行うように構成されてもよい。
【０１４６】
[0083]図３は、動きベクトルをコーディングするための技法を実装し得るビデオデコーダ３０の例を示すブロック図である。図３の例では、ビデオデコーダ３０は、エントロピー復号ユニット７０と、動き補償ユニット７２と、イントラ予測ユニット７４と、逆量子化ユニット７６と、逆変換ユニット７８と、参照ピクチャメモリ８２と、加算器８０とを含む。ビデオデコーダ３０は、いくつかの例では、ビデオエンコーダ２０（図２）に関して説明された符号化パスとは全般に逆の復号パスを実行し得る。動き補償ユニット７２は、エントロピー復号ユニット７０から受信された動きベクトルに基づいて予測データを生成することができ、イントラ予測ユニット７４は、エントロピー復号ユニット７０から受信されたイントラ予測モードインジケータに基づいて予測データを生成することができる。
【０１４７】
[0084]復号プロセス中に、ビデオデコーダ３０は、ビデオエンコーダ２０から、符号化ビデオスライスのビデオブロックと、関連するシンタックス要素とを表す符号化ビデオビットストリームを受信する。ビデオデコーダ３０のエントロピー復号ユニット７０は、量子化係数と、動きベクトルまたはイントラ予測モードインジケータと、他のシンタックス要素とを生成するためにビットストリームをエントロピー復号する。エントロピー復号ユニット７０は、動きベクトルと他の予測シンタックス要素とを動き補償ユニット７２に転送する。ビデオデコーダ３０は、ビデオスライスレベルおよび／またはビデオブロックレベルでシンタックス要素を受信し得る。
【０１４８】
[0085]ビデオスライスがイントラコード化（Ｉ）スライスとしてコーディングされるとき、イントラ予測ユニット７４は、シグナリングされたイントラ予測モードと、現在のフレームまたはピクチャの、前に復号されたブロックからのデータとに基づいて、現在のビデオスライスのビデオブロックのための予測データを生成し得る。ビデオフレームがインターコード化（すなわち、Ｂ、Ｐ、またはＧＰＢ）スライスとしてコーディングされるとき、動き補償ユニット７２は、エントロピー復号ユニット７０から受信された動きベクトルと他のシンタックス要素とに基づいて、現在のビデオスライスのビデオブロックのための予測ブロックを生成する。予測ブロックは、参照ピクチャリストの１つの中の参照ピクチャの１つから生成され得る。ビデオデコーダ３０は、参照ピクチャメモリ８２に記憶された参照ピクチャに基づいて、デフォルトの構成技法を使用して、参照フレームリスト、すなわち、リスト０とリスト１とを構築し得る。
【０１４９】
[0086]動き補償ユニット７２は、動きベクトルと他のシンタックス要素とを解析することによって現在のビデオスライスのビデオブロックについての予測情報を決定し、予測情報を使用して、復号されている現在のビデオブロックのための予測ブロックを生成する。たとえば、動き補償ユニット７２は、ビデオスライスのビデオブロックをコーディングするために使用される予測モード（たとえば、イントラまたはインター予測）、インター予測スライスタイプ（たとえば、Ｂスライス、Ｐスライス、またはＧＰＢスライス）、スライスの参照ピクチャリストのうちの１つまたは複数に対する構成情報、スライスの各インター符号化ビデオブロックに対する動きベクトル、スライスの各インターコード化ビデオブロックに対するインター予測ステータス、および現在のビデオスライス中のビデオブロックを復号するための他の情報を決定するために、受信されたシンタックス要素のいくつかを使用する。
【０１５０】
[0087]動き補償ユニット７２はまた、補間フィルタに基づいて補間を実行し得る。動き補償ユニット７２は、ビデオブロックの符号化中にビデオエンコーダ２０によって使用された補間フィルタを使用して、参照ブロックのサブ整数ピクセルの補間値を計算し得る。この場合、動き補償ユニット７２は、受信されたシンタックス要素からビデオエンコーダ２０によって使用された補間フィルタを決定し、その補間フィルタを使用して予測ブロックを生成し得る。
【０１５１】
[0088]逆量子化ユニット７６は、ビットストリーム中で与えられ、エントロピー復号ユニット７０によって復号された量子化変換係数を逆量子化（inverse quantize）、すなわち、逆量子化（de-quantize）する。逆量子化プロセスは、量子化の程度を決定し、同様に、適用されるべき逆量子化の程度を決定するための、ビデオスライス中のビデオブロックごとにビデオエンコーダ３０によって計算される量子化パラメータＱＰYの使用を含み得る。
【０１５２】
[0089]逆変換ユニット７８は、逆変換、たとえば、逆ＤＣＴ、逆整数変換、または概念的に同様の逆変換処理を変換係数に適用して、ピクセル領域において残差ブロックを生成する。
【０１５３】
[0090]動き補償ユニット７２が、動きベクトルと他のシンタックス要素とに基づいて現在のビデオブロックのための予測ブロックを生成した後、ビデオデコーダ３０は、逆変換ユニット７８からの残差ブロックを動き補償ユニット７２によって生成された対応する予測ブロックと加算することによって、復号ビデオブロックを形成する。加算器８０は、この加算演算を実行する１つまたは複数のコンポーネントを表す。所望される場合、ブロッキネスアーティファクトを除去するために、復号されたブロックをフィルタリングするためのデブロッキングフィルタも適用され得る。ピクセル遷移を平滑化し、または別様にビデオ品質を改善するために、（コーディングループ内またはコーディングループ後の）他のループフィルタも使用され得る。所与のフレームまたはピクチャの中の復号されたビデオブロックは、次いで、その後の動き補償のために使用される参照ピクチャを記憶する参照ピクチャメモリ８２に記憶される。参照ピクチャメモリ８２はまた、図１のディスプレイデバイス３２のようなディスプレイデバイス上での後の表示のために、復号されたビデオを記憶する。
【０１５４】
[0091]本開示の技法によれば、ビデオデコーダ３０は、現在のブロックがインター予測を使用して復号されることを示すデータを受け取ってもよい。さらに、データは、現在のブロックの動きベクトルがマージモードを使用して復号され、マージモードの間使用できる時間的動きベクトル予測子（ＴＭＶＰ）が利用可能であることを示してもよい。さらに、ビデオデコーダ３０は、追加の参照インデックスに使用するための所定の値を決定してもよい。たとえば、所定の値は、現在のブロックを含むスライスのスライスヘッダ、現在のブロックを含むピクチャのピクチャパラメータセット（ＰＰＳ）、ピクチャを含むシーケンスのシーケンスパラメータセット（ＳＰＳ）、および／またはビデオパラメータセット（ＶＰＳ）内に定められてよい。
【０１５５】
[0092]いくつかの例では、ビデオデコーダ３０は、現在のブロックのマージ候補がコロケートされたブロックの動きベクトルであることを示す動きベクトル予測子（ＭＶＰ）インデックス、すなわち、ＴＭＶＰを復号する。したがって、ビデオデコーダ３０は、参照インデックス、参照ピクチャリスト、水平動成分、および垂直動成分などのＴＭＶＰの動きパラメータを決定してもよい。しかしながら、ビデオデコーダ３０は、上述のように所定の値を有する追加の参照インデックスを決定してもよい。
【０１５６】
[0093]エントロピー復号ユニット７０またはビデオデコーダ３０の別のユニット（たとえば、動き補償ユニット７２）は、マージモードおよびＴＭＶＰを使用して現在のブロックの動きベクトルを構成してもよい。特に、ビデオデコーダ３０は、ＴＭＶＰの水平動成分、垂直動成分、および参照ピクチャリスト識別子を有するように現在のブロックの動きベクトルを構成してもよい。しかしながら、現在のブロックの動きベクトルは、ＴＭＶＰの参照インデックスではなく、追加の参照インデックスを使用してもよい。したがって、動き補償ユニット７２は、ＴＭＶＰの参照ピクチャリストによって識別される参照ピクチャおよび追加の参照インデックス、ならびに水平動成分および垂直動成分に基づく参照ピクチャ内の参照ブロックの位置を使用して現在のブロックの予想されるブロックを算出することができる。
【０１５７】
[0094]このように、ビデオデコーダ３０は、現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定することと、候補動きベクトル予測子に関して、現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、所定の値と等しい追加の目標参照インデックスの値を決定することと、追加の参照インデックスの値に少なくとも部分的に基づいて現在の動きベクトルをコーディングする（すなわち、この例では復号する）こととを行うように構成されたビデオデコーダの例を表す。
【０１５８】
[0095]図３のビデオデコーダ３０は、現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に追加の参照インデックスの値を所定の値に設定し、追加の参照インデックスの値に少なくとも部分的に基づいて現在の動きベクトルをコーディングするように構成されてもよいビデオデコーダの例も表す。追加または代替として、ビデオデコーダ３０は、コーディングすべきビデオデータが基本ビデオコーディング規格または基本ビデオコーディング規格の拡張規格に適合するかどうかを決定することと、ビデオデータが基本ビデオコーディング規格に適合するときに、基本ビデオコーディング規格に従ってビデオデータをコーディングすることと、ビデオデータが基本ビデオコーディング規格の拡張規格に適合するときに、ビデオデータのピクチャのブロックの動きベクトルをコーディングする際に、動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の追加の目標参照インデックス値の値を導出することと、追加の目標参照インデックス値の値に少なくとも部分的に基づいて動きベクトルをコーディングすることとを行うように構成されてもよい。
【０１５９】
[0096]図４は、例示的なＭＶＣ予測パターンを示す概念図である。マルチビュービデオコーディング（ＭＶＣ）は、ＩＴＵ−Ｔ  Ｈ．２６４／ＡＶＣの拡張である。同様の技法が、ＨＥＶＣに適用され得る。図４の例では、（ビューＩＤ「Ｓ０」〜「Ｓ７」を有する）８つのビューが示され、各ビューについて１２個の時間位置（「Ｔ０」〜「Ｔ１１」）が示されている。すなわち、図４中の各行はビューに対応し、各列は時間位置を示す。図４は、各ビュー内のピクチャ間予測とビュー同士の間のビュー間予測との両方を含むマルチビュービデオコーディングのための代表的なＭＶＣ予測構造を示す。
【０１６０】
[0097]ＭＶＣはＨ．２６４／ＡＶＣデコーダによって復号可能であるいわゆる基本ビューを有し、ステレオビューペアはＭＶＣによってサポートされ得るが、ＭＶＣの１つの利点は、ＭＶＣが、３Ｄビデオ入力として３つ以上のビューを使用し複数のビューによって表されるこの３Ｄビデオを復号する例を、サポートできることである。ＭＶＣデコーダを有するクライアントのレンダラは、複数のビューを伴う３Ｄビデオコンテンツを予想することができる。
【０１６１】
[0098]典型的なＭＶＣの復号順序の構成は、時間優先コーディングと呼ばれる。アクセスユニットは、１つの出力時間インスタンスのためのすべてのビューのコード化ピクチャを含み得る。たとえば、時刻Ｔ０のピクチャの各々は、共通のアクセスユニットに含まれてよく、時刻Ｔ１のピクチャの各々は、第２の共通のアクセスユニットに含まれてよく、以下同様である。復号順序は、出力または表示順序と必ずしも同一とは限らない。ＭＶＣでは、同じアクセスユニット中の（たとえば、同じ時間インスタンスをもつ）ピクチャ間でビュー間予測が可能になる。非ベースビューのうちの１つ中のピクチャをコーディングするとき、ピクチャが異なるビュー中にあるが同じ時間インスタンスをもつ場合、そのピクチャは参照ピクチャリストに追加され得る。ビュー間予測参照ピクチャは、任意のインター予測参照ピクチャと同様に、参照ピクチャリストの任意の位置に置かれ得る。
【０１６２】
[0099]図４中のフレームは、対応するフレームがイントラコーディングされる（すなわち、Ｉフレームである）のか、一方向に（すなわち、Ｐフレームとして）インターコーディングされるのか、複数の方向に（すなわち、Ｂフレームとして）インターコーディングされるのかを指定する、文字を含む影付きブロックを使用して、図４中の各行と各列との交差部において示されている。一般に、予測は矢印によって示され、ここで矢印の終点のフレームは、予測参照のために矢印の始点のオブジェクトを使用する。たとえば、時間位置Ｔ０にあるビューＳ２のＰフレームは、時間位置Ｔ０にあるビューＳ０のＩフレームから予測される。
【０１６３】
[0100]シングルビュービデオ符号化の場合と同様に、マルチビュービデオコーディングのビデオシーケンスのフレームは、異なる時間位置におけるフレームに関して予測的に符号化され得る。たとえば、時間位置Ｔ１におけるビューＳ０のｂフレームは、時間位置Ｔ０におけるビューＳ０のＩフレームからそのｂフレームに向けられた矢印を有し、その矢印は、ｂフレームがＩフレームから予測されることを示す。しかしながら、加えて、マルチビュービデオ符号化の文脈では、フレームは、ビュー間予測され得る。すなわち、ビュー成分は、参照のために他のビュー中のビュー成分を使用することができる。ＭＶＣでは、たとえば、別のビュー中のビュー成分がインター予測参照であるかのように、ビュー間予測が実現される。潜在的なビュー間参照は、シーケンスパラメータセット（ＳＰＳ）ＭＶＣ拡張においてシグナリングされ、インター予測またはビュー間予測参照のフレキシブルな順序付けを可能にする参照ピクチャリスト構成プロセスによって変更され得る。
【０１６４】
[0101]Ｈ．２６４／ＡＶＣのＭＶＣ拡張では、一例として、ビュー間予測は視差動き補償によってサポートされ、視差動き補償は、Ｈ．２６４／ＡＶＣ動き補償のシンタックスを使用するが、異なるビュー中のピクチャが参照ピクチャとして使用されることを可能にする。２つのビューのコーディングは、ＭＶＣによってサポートされ得るが、一般に、立体視ビューと呼ばれる。ＭＶＣの利点の１つは、ＭＶＣエンコーダが３Ｄビデオ入力として３つ以上のビューをとらえることができ、ＭＶＣデコーダがそのようなマルチビュー表現を復号できることである。したがって、ＭＶＣデコーダを有するレンダリングデバイスは、３つ以上のビューを伴う３Ｄビデオコンテンツを予想することができる。
【０１６５】
[0102]通常、Ｂピクチャの第１または第２の参照ピクチャリストに対する参照ピクチャリスト構成は、２つのステップ、すなわち参照ピクチャリスト初期化と、参照ピクチャリスト並べ替え（修正）とを含む。参照ピクチャリスト初期化は、参照ピクチャメモリ（復号ピクチャバッファとしても知られる）中の参照ピクチャを、ＰＯＣ（ピクチャの表示順で整列されるピクチャ順序カウント）値の順序に基づいてリストに入れる際に従う、暗黙的な機構である。
【０１６６】
[0103]ビデオコーダは、参照ピクチャリスト並べ替え機構を使用して、参照ピクチャリスト初期化中にリストに入れられたピクチャの位置を任意の新しい位置へと修正し、または参照ピクチャメモリ中の任意の参照ピクチャを、そのピクチャが初期化リストに属さなくても、任意の位置に入れることができる。参照ピクチャリスト並べ替え（修正）後のいくつかのピクチャは、リスト中の離れた位置に入れられる場合がある。しかしながら、ピクチャの位置が、リストのアクティブ参照ピクチャの数を超える場合、ピクチャは、最終参照ピクチャリストのエントリーとは見なされない。アクティブな参照ピクチャの数は、リストごとにスライスヘッダでシグナリングされ得る。参照ピクチャリストが構築された後（たとえば、利用可能であれば、ＲｅｆＰｉｃＬｉｓｔ０およびＲｅｆＰｉｃＬｉｓｔ１）、参照ピクチャリストに対する参照インデックスは、参照ピクチャリストに含まれる任意の参照ピクチャを識別するために使用され得る。
【０１６７】
[0104]時間的動きベクトル予測子（ＴＭＶＰ）を得るために、まず、同じ位置にあるピクチャが識別されることになる。現在のピクチャがＢスライスである場合、ｃｏｌｌｏｃａｔｅｄ＿ｆｒｏｍ＿ｌ０＿ｆｌａｇが、同じ位置にあるピクチャがＲｅｆＰｉｃＬｉｓｔ０からのものかＲｅｆＰｉｃＬｉｓｔ１からのものかを示すために、スライスヘッダにおいてシグナリングされる。参照ピクチャリストが識別された後、スライスヘッダでシグナリングされるｃｏｌｌｏｃａｔｅｄ＿ｒｅｆ＿ｉｄｘが、リスト中のピクチャの中のピクチャを識別するために使用される。同じ位置にあるＰＵが次いで、同じ位置にあるピクチャを確認することによって識別される。このＰＵを含むＣＵの一番右下のＰＵの動きと、このＰＵを含むＣＵの中心ＰＵ内の一番右下のＰＵの動きのいずれかが、使用される。上記のプロセスによって識別される動きベクトルが、ＡＭＶＰまたは統合モードのための動き候補を生成するために使用される場合、動きベクトルは、時間的な位置（ＰＯＣに反映される）に基づいてスケーリングされる必要がある。
【０１６８】
[0105]ＨＥＶＣでは、シーケンスパラメータセット（ＳＰＳ）は、フラグｓｐｓ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅ＿ｆｌａｇを含み、スライスヘッダは、ｓｐｓ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅ＿ｆｌａｇが１に等しい場合、フラグｐｉｃ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅ＿ｆｌａｇを含む。ある特定のピクチャに対してｐｉｃ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅ＿ｆｌａｇとｔｅｍｐｏｒａｌ＿ｉｄの両方が０に等しい場合、復号順序においてその特定のピクチャの前にあるピクチャからの動きベクトルは、特定のピクチャ、または復号順序で特定のピクチャの後にあるピクチャの復号において、時間的動きベクトル予測子として使用されない。
【０１６９】
[0106]現在、Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅｓ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ（ＭＰＥＧ）は、ＨＥＶＣに基づいて３ＤＶ規格を開発しており、その３ＤＶ規格に対して、規格化の努力の一部は、ＨＥＶＣに基づくマルチビュービデオコーデックの規格化も含む。同様に、ＨＥＶＣベースの３ＤＶでは、異なるビューから復元されたビュー成分に基づくビュー間予測が有効にされることに留意されたい。
【０１７０】
[0107]拡張が実際に「ＨＬＳのみ」（ハイレベルシンタックスのみ）という要件を満たすような方式で、ＡＶＣはマルチビュー拡張によって拡張された。「ＨＬＳのみ」という要件は、ＡＶＣ中のマクロブロックレベルにおけるモジュールが再設計される必要がなく、完全にマルチビュービデオコーディング（ＭＶＣ）に対して再使用され得るように、ＭＶＣにおいてハイレベルシンタックス（ＨＬＳ）の変更しか存在しないことを保証する。「ＨＬＳのみ」という要件は、ＨＥＶＣのＭＶＣ／３ＤＶ拡張に対して、また、マルチループ復号が受け入れ可能であると考えられる場合には、ＨＥＶＣのスケーラブルビデオコーディング（ＳＶＣ）拡張に対しても満たされ得ることが可能である。
【０１７１】
[0108]ビュー間予測を可能にするために、ＨＬＳの変更が行われてよいのは以下の目的、すなわちピクチャの識別のためであり、参照ピクチャリストの構築および標識は、特定のビューの中のピクチャを識別することが可能である必要がある。
【０１７２】
[0109]ＨＬＳの変更は、Ｈ．２６４／ＭＶＣにおける「ＨＬＳのみ」という要件を満たすには十分ではなく、それは、ローレベルコーディングモジュールが、たとえば無動きに関するスケーリングを処理する状況に決して遭遇しないように、他の制約、仮定が行われるからである。そのような制約、修正、および仮定は以下の通りである。
【０１７３】
・同じ位置にあるピクチャがビュー間（のみ）参照ピクチャである場合、時間ダイレクトモードを無効にする
・短期ではないものとしてビュー間（のみ）参照ピクチャを見なす：空間ダイレクトに関する
・暗黙的加重予測を無効にする
[0110]「ＨＬＳのみ」という要件を満たすために、拡張におけるそのような修正は、ハイレベルシンタックスのみにおいて行われなければならない。したがって、スライスヘッダのもとにあるシンタックス要素に対しては修正はあるべきではなく、拡張仕様に対するＣＵレベルの復号プロセスの変更はない。たとえば、ＨＥＶＣ拡張仕様の動きベクトル予測は、ＨＥＶＣ基本仕様における動きベクトル予測と厳密に同じであるべきである。ＨＬＳの変更は、拡張仕様の規範的なデコーダの変更であるが、基本仕様の観点からは、そのような変更は、必ずしも既知である必要はなく、義務的ではなくてよい。
【０１７４】
[0111]効率的なビュー間予測のような機能を可能にするために、ＨＥＶＣ拡張における修正と基本仕様の両方が実装され得る。通常の復号プロセスまたは基本ＨＥＶＣデコーダのコーディング効率に影響を与えないが拡張仕様における機能を有効にすることを目的とする基本仕様の変更は、フックと呼ばれる。多くの場合、「ＨＬＳのみ」という要件は、基本仕様におけるフックと拡張仕様におけるＨＬＳの変更の両方により満たされる。基本仕様におけるフックが良好に定義されなければ、ある所望の機能が、拡張仕様において有効にされないことがあり、または、拡張仕様において多くの修正を必要とする。
【０１７５】
[0112]ＨＬＳのみのＳＶＣでは、場合によってはアップサンプリングおよび／またはフィルタリングの後で、基本レイヤの表現が、現在のレイヤの現在のピクチャの参照ピクチャリストへと入れられ得る。そのようなピクチャは、レイヤ間参照ピクチャと呼ばれる。
【０１７６】
[0113]ＨＥＶＣ拡張規格は、ＪＣＴ−３ＶおよびＪＣＴ−ＶＣにおいて策定中である。ＪＣＴ−３Ｖでは、２つのＨＥＶＣ拡張規格、すなわち、マルチビュー拡張規格（ＭＶ−ＨＥＶＣ）および３Ｄビデオ拡張規格（３Ｄ−ＨＥＶＣ）を策定中である。さらに、２つのＡＶＣ拡張規格、ＭＶＣ＋Ｄおよび３Ｄ−ＡＶＣが策定中である。策定中の規格の例示的な説明には、ｈｔｔｐ：／／ｐｈｅｎｉｘ．ｉｔ−ｓｕｄｐａｒｉｓ．ｅｕ／ｊｃｔ２／ｄｏｃ＿ｅｎｄ＿ｕｓｅｒ／ｄｏｃｕｍｅｎｔｓ／２＿Ｓｈａｎｇｈａｉ／ｗｇ１１／ＪＣＴ３Ｖ−Ｂ１００１−ｖ１．ｚｉｐにおいて入手可能なＪＣＴ３Ｖ−Ｂ１００１「Ｓｔｕｄｙ  Ｔｅｘｔ  ｏｆ  ＩＳＯ／ＩＦＣ  １４４９６−１０：２０１２／ＤＡＭ２  ＭＶＣ  ｅｘｔｅｎｓｉｏｎ  ｆｏｒ  ｉｎｃｌｕｓｉｏｎ  ｏｆ  ｄｅｐｔｈ  ｍａｐｓ」Ｍ．Ｈａｎｎｕｋｓｅｌａ（Ｎｏｋｉａ）、Ｙ．Ｃｈｅｎ（Ｑｕａｌｃｏｍｍ）、Ｇ．Ｓｕｌｌｉｖａｎ（Ｍｉｃｒｏｓｏｆｔ）、Ｔ．Ｓｕｚｕｋｉ、Ｓ．Ｈａｔｔｏｒｉ（Ｓｏｎｙ）、ｈｔｔｐ：／／ｐｈｅｎｉｘ．ｉｔ−ｓｕｄｐａｒｉｓ．ｅｕ／ｊｃｔ２／ｄｏｃ＿ｅｎｄ＿ｕｓｅｒ／ｄｏｃｕｍｅｎｔｓ／２＿Ｓｈａｎｇｈａｉ／ｗｇ１１／ＪＣＴ３Ｖ−Ｂ１００２−ｖ１．ｚｉｐにおいて入手可能なＪＣＴ３Ｖ−Ｂ１００２「３Ｄ−ＡＶＣ  ｄｒａｆｔ  ｔｅｘｔ  ４」Ｍ．Ｈａｎｎｕｋｓｅｌａ、Ｙ．Ｃｈｅｎ、Ｔ．Ｓｕｚｕｋｉ、Ｊ．−Ｒ．Ｏｈｍ、Ｇ．Ｊ．Ｓｕｌｌｉｖａｎ、ｈｔｔｐ：／／ｐｈｅｎｉｘ．ｉｔ−ｓｕｄｐａｒｉｓ．ｅｕ／ｊｃｔ２／ｄｏｃ＿ｅｎｄ＿ｕｓｅｒ／ｄｏｃｕｍｅｎｔｓ／２＿Ｓｈａｎｇｈａｉ／ｗｇ１１／ＪＣＴ３Ｖ−Ｂ１００４−ｖ１．ｚｉｐにおいて入手可能なＪＣＴ３Ｖ−Ｂ１００４「ＭＶ−ＨＥＶＣ  Ｄｒａｆｔ  Ｔｅｘｔ  ２」Ｇ．Ｔｅｃｈ、Ｋ．Ｗｅｇｎｅｒ、Ｙ．Ｃｈｅｎ、Ｍ．Ｈａｎｎｕｋｓｅｌａ、ｈｔｔｐ：／／ｐｈｅｎｉｘ．ｉｔ−ｓｕｄｐａｒｉｓ．ｅｕ／ｊｃｔ２／ｄｏｃ＿ｅｎｄ＿ｕｓｅｒ／ｄｏｃｕｍｅｎｔｓ／２＿Ｓｈａｎｇｈａｉ／ｗｇ１１／ＪＣＴ３Ｖ−Ｂ１００５−ｖ１．ｚｉｐにおいて入手可能なＪＣＴ３Ｖ−Ｂ１００５「３Ｄ−ＨＥＶＣ  Ｔｅｓｔ  Ｍｏｄｅｌ  ２」Ｇ．Ｔｅｃｈ、Ｋ．Ｗｅｇｎｅｒ、Ｙ．Ｃｈｅｎ、Ｓ．Ｙｅｓが含まれる。一方、ＨＥＶＣのスケーリング可能な拡張規格はＪＣＴ−ＶＣによって開発中である。
【０１７７】
[0114]コーディング拡張規格の様々な変形例では、複数のビューまたはレイヤが存在してもよく、さらに、様々なレイヤ、テクスチャビュー、またはデプスビューはそれぞれに異なる空間解像度を有してもよい。概して、本文献で「レイヤ」を参照する場合、レイヤという用語は、ＳＶＣのレイヤまたはＭＶＣのビューのいずれにも同等に適用可能であってよい。すなわち、異なるビューはビットストリームの異なる「レイヤ」と見なされてもよい。ＭＶ  ＨＥＶ仕様は、ＨＬＳ変更のみを使用して実現されるように設計される。
【０１７８】
[0115]図５は、ピクチャのブロックをコーディングするために使用される例示的な１組のピクチャおよび動きベクトルを示す概念図である。図５の例は、現在のピクチャ１００、コロケートされたピクチャ１０６、短期（ＳＴ）参照ピクチャ１２２、および現在のピクチャ１００の参照ピクチャリストに入れられたときに参照インデックス０を有する参照ピクチャ１２４を示す。ピクチャ１００、１０６、１２２、および１２４の各々は、この例では、同じビュー、すなわち、この例では非ベースビュー内で生じる。図５は、非ベースビューとは別個のベースビュー内で生じるビュー間参照ピクチャ１２０も示す。
【０１７９】
[0116]この例では、現在のピクチャ１００はブロック１０２、１０４を含む。ブロック１０２は、時間的動きベクトル１１４を使用してピクチャ１２４に対して予測される。この例では、コロケートされたピクチャ１０６はブロック１０８、１１０を含む。同様に、この例では、ブロック１０８は、時間的動きベクトル１１２を使用して短期参照ピクチャ１２２に対して時間的に予測され、一方、ブロック１１０は、差異動きベクトル１１６を使用してビュー間参照ピクチャ１２０に対してビュー間予測される。
【０１８０】
[0117]ビデオエンコーダ２０またはビデオデコーダ３０のようなビデオコーダは、動きベクトルを使用して動きベクトル１１４をコーディングし得る。動きベクトル予測モードは、マージモードおよび高度動きベクトル予測（ＡＭＶＰ）を含む。ＷＤ９は、動きベクトル予測モードがマージモードであるとき、目標参照インデックスが０に設定されることを規定している。したがって、コロケートされたＰＵ内の動きベクトルは、短期参照ピクチャを参照する場合、現在のＰＵのマージ候補を形成するようにスケーリングされる。図５の例では、ビデオコーダは、時間的動きベクトル１１４をコーディングするために、時間的動きベクトル１１４のマージ候補を形成するように時間的動きベクトル１１２をスケーリングし、ここにおいてブロック１０２は現在のＰＵを表す。
【０１８１】
[0118]しかしながら、ＷＤ９は、コロケートされたＰＵが（ビュー間参照ピクチャに対応する）長期参照ピクチャを参照する動きベクトルを有する場合、ビュー間参照ピクチャを参照する動きベクトルが現在の動きベクトルを予測するのに使用されないことも規定する。たとえば、図５において、ＷＤ９は、ブロック１１０の差異動きベクトル１１６がブロック１０４の動きベクトルをコーディングするのに使用されないことを規定する（図５はこの動きベクトルを示さない）。
【０１８２】
[0119]ＭＶ−ＨＥＶＣでは、時間的動きベクトル予測プロセスは、コーディングユニットの修正もまたはそれよりも低いレベルの修正も導入できないことに起因してＨＥＶＣの場合と同じである。しかしながら、ビュー間参照ピクチャを参照する動きベクトルを含む顕著な量のコロケートされたピクチャがあり得、一方、目標参照インデックス（０に等しい）は、短期参照ピクチャを示す。したがって、ＷＤ９によって規定されたようにこれらの動きベクトルからの予測を無効化すると、マージモードの効率が低下する。
【０１８３】
[0120]図６は、ピクチャのブロックをコーディングするために使用される別の例示的な１組のピクチャおよび動きベクトルを示す概念図である。特に、図６は、ｈｔｔｐ：／／ｐｈｅｎｉｘ．ｉｎｔ−ｅｖｒｙ．ｆｒ／ｊｃｔ／ｄｏｃ＿ｅｎｄ＿ｕｓｅｒ／ｄｏｃｕｍｅｎｔｓ／１１＿Ｓｈａｎｇｈａｉ／ｗｇ１１／ＪＣＴＶＣ−Ｋ０２３９−ｖ２．ｚｉｐで入手可能なＣｈｅｎら「Ｔｅｍｐｏｒａｌ  Ｍｏｔｉｏｎ  Ｖｅｃｔｏｒ  Ｐｒｅｄｉｃｔｉｏｎ  Ｈｏｏｋ  ｆｏｒ  ＮＶ−ＨＥＶＣ」ＪＣＴＶＣ−Ｋ０２３９、中国、上海、２０１２年１０月１０〜１９日による提案を示す。この文献は、一部が本開示に付録Ａとして添付されている。ＪＣＴＶＣ−Ｋ０２３９では、追加の目標参照インデックスが有効化されることが提案されている。図５の例に関しては、短期参照ピクチャを参照する動きベクトルは、ＨＨＥＶＣ  ＷＤ９の場合と同様に、０に等しい参照インデックスを有する参照ピクチャに対してさらにスケーリングされてもよい。
【０１８４】
[0121]しかしながら、長期参照ピクチャでは、ビデオコーダ（たとえば、ビデオエンコーダ２０およびビデオデコーダ３０）は、長期参照ピクチャを参照する動きベクトルが、マージ候補を形成するのに使用可能であり、利用不能とは見なされないように、新しい追加の参照インデックス（ｒｅｆ＿ｉｄｘ  Ａｄｄ．）を導出してもよい。図６に示すように、コロケートされたブロック１１０から現在のピクチャのブロック１０４への差異動きベクトル１１６は、差異動きベクトル１１８を予測するための差異動きベクトル候補を形成するために使用されてもよい。本開示の技法によれば、追加の参照インデックスの値は、たとえば、適用可能なビデオコーディング規格（たとえば、ＨＥＶＣ）、そのような規格の拡張規格（たとえば、マルチビュービデオコーディングまたはスケーリング可能なビデオコーディング）、またはビデオエンコーダ２０（図１および図２）などのビデオエンコーダによってあらかじめ決定されてもよい。いくつかの例では、ビデオエンコーダ２０は、スライスヘッダ、ＰＰＳ、ＳＰＳ、および／またはＶＰＳにおいて所定の値を符号化してもよい。
【０１８５】
[0122]概して、０に等しい参照インデックスが短期参照ピクチャを表すとき、新たに追加される目標参照インデックスは、長期参照ピクチャを表すために使用されてもよい。０に等しい参照インデックスが長期参照ピクチャを表すとき、新しく追加される目標参照インデックスは、短期参照ピクチャを表すために使用されてもよい。したがって、ビデオコーダ（たとえば、ビデオエンコーダ２０およびビデオデコーダ３０）は、０に等しい参照インデックスが短期参照ピクチャを表すとき、新たに追加される目標参照インデックスが、長期参照ピクチャを表し、０に等しい参照インデックスが長期参照ピクチャを表すとき、新たに追加される目標参照インデックスが、短期参照ピクチャを表すことを決定してもよい。
【０１８６】
[0123]ＨＥＶＣ  ＷＤ９と同様に、目標参照インデックスが長期参照ピクチャに対応する場合、コロケートされたブロック内の動きベクトルは、利用可能であると見なされる場合、スケーリングされる必要はない。
【０１８７】
[0124]以下の構文および意味は、ＨＥＶＣ基本仕様に関して、高レベルの構文変更として、追加の目標参照インデックスを導出するための技法として提案されている。スライスレベルでは、ＲｅｆＰｉｃＬｉｓｔ０およびＲｅｆＰｉｃＬｉｓｔ１の各々に関する追加の参照インデックス（ｒｅｆＩｄｘＬＸＡ）の値が利用可能な場合は導出されてもよい。
【０１８８】
８．３．５  ＴＭＶＰに関する追加の目標参照インデックスのための導出プロセス
このプロセスは、現在のスライスがＰスライスまたはＢスライスであるときに呼び出される。追加の目標参照インデックスｒｅｆＩｄｘＬ０ＡおよびｒｅｆＩｄｘＬ１Ａが導出される。
【０１８９】
変数ｒｅｆＩｄｘＬ０ＡとｒｅｆＩｄｘＬ１Ａの両方を−１に設定する。
【０１９０】
ｒｅｆＩｄｘＬ０Ａを導出するために以下のことが適用される。
【数１３】
2016506185.tif 000015
【０１９１】
スライスがＢスライスであるとき、ｒｅｆＩｄｘＬ１Ａを導出するために以下のことが適用される。
【数１４】
2016506185.tif 000016
【０１９２】
[0125]ＪＣＴＶＣ−Ｋ０２３９によって提案され上記で説明したＨＥＶＣの第８．３．５節は、比較のために提示されている。本開示の技法によれば、マージモードに追加の参照インデックスを使用することなど、ＪＣＴＶＣ−Ｋ０２３９の特定の一般的な技法が使用されてよいが、第８．３．５節は省略されてもよい。第８．３．５節の代わりに、本開示の技法によれば、追加の参照インデックスは所定の値に設定されてもよく、たとえば、０、−１、または別の所定の値に設定されてもよい。したがって、本開示の技法は、処理効率が改善され得るように複雑さを低減させることができるという点でＪＣＴＶＣ−Ｋ０２３９に勝るかなりの利益を実現することができる。したがって、本開示では、追加の参照インデックス、たとえば、ＲｅｆＩｄｘＬ０Ａ（Ｂスライスの場合はＲｅｆＩｄｘＬ１Ａ）の値を決定するためにＪＣＴＶＣ−Ｋ０２３９によって提案されたように第８．３．５節を使用する代わりに、変数ＲｅｄＩｄｘＬ０ａおよびＲｅｄＩｄｘＬ１Ａを所定の値（たとえば、０または−１）に等しくなるように設定することを提案する。参照ピクチャリスト（ＲｅｆＰｉｃＬｉｓｔＸ、ここにおいてＸは０または１に等しくてもよい）は、ＨＥＶＣ、ＭＶ−ＨＥＶＣ、ＪＣＴＶＣ−Ｋ０２３９、またはそれ以外に従って正常に導出され得る。
【０１９３】
[0126]以下に、時間的動きベクトル予測を実行するための技法について説明する。時間的動きベクトル予測の間に、現在のモードがマージであるとき、目標参照インデックス０はｒｅｆＩｄｘＬＸＡ（Ｘは０または１である）に変更されてもよい。ＡＭＶＰモードは変更されない。新たに追加され／修正されるイタリック体のテキストおよび括弧付きで「削除」の後に続く削除されるテキストを含む、提案された仕様のテキスト変更は以下の通りである。
【０１９４】
マージモードに関してＴＭＶＰを呼び出すための変更
８．５．２．１．１  マージモードに関するルーマ動きベクトルのための導出プロセス
このプロセスは、ＰｒｅｄＭｏｄｅ［ｘＣ］［ｙＣ］がＭＯＤＥ＿ＳＫＩＰに等しいかまたはＰｒｅｄＭｏｄｅ［ｘＣ］［ｙＣ］がＭＯＤＥ＿ＩＮＴＥＲに等しく、マージ＿フラグ［ｘＰ］［ｙＰ］が１に等しいときにのみ呼び出され、ここにおいて、（ｘＰ，ｙＰ）は現在のピクチャの左上ルーマサンプルに対する現在のルーマ予測ブロックの左上サンプルを指定する。
【０１９５】
このプロセスの入力は以下の通りである。
【０１９６】
−現在ピクチャの左上ルーマサンプルに対する現在のルーマコーディングブロックの左上サンプルのルーマロケーション（ｘＣ，ｙＣ）、
−現在のピクチャの左上ルーマサンプルに対する現在のルーマ予測ブロックの左上サンプルのルーマロケーション（ｘＰ，ｙＰ）、
−現在のルーマコーディングブロックのサイズを指定する変数ｎＣＳ、
−ルーマ予測ブロックの幅および高さを指定する変数ｎＰｂＷおよびｎＰｂＨ、
−現在のコーディングユニット内の現在の予測ユニットのインデックスを指定する変数ｐａｒｔＩｄｘ。
【０１９７】
このプロセスの出力は以下の通りである。
【０１９８】
−ルーマ動きベクトルｍｖＬ０およびｍｖＬ１、
−参照インデックスｒｅｆＩｄｘＬ０およびｒｅｆＩｄｘＬ１、
−予測リスト利用フラグｐｒｅｄＦｌａｇＬ０およびｐｒｅｄＦｌａｇＬ１。
【０１９９】
変数ｓｉｎｇｌｅＭＣＬＦｌａｇは次のように導出される。
【０２００】
−ｌｏｇ２＿ｐａｒａｌｌｅｌ＿ｍｅｒｇｅ＿ｌｅｖｅｌ＿ｍｉｎｕｓ２が０よりも大きくｎＣＳが８に等しい場合、ｓｉｎｇｌｅＭＣＬＦｌａｇが１に設定される。
【０２０１】
−それ以外の場合、ｓｉｎｇｌｅＭＣＬＦｌａｇは０に設定される。
【０２０２】
ｓｉｎｇｌｅＭＣＬＦｌａｇが１に等しいとき、ｘＰがｘＣに等しくなるように設定され、ｙＰがｙＣに等しくなるように設定され、ｎＰｂＷとｎＰｂＨの両方がｎＣＳに等しくなるように設定される。
【０２０３】
注意−ｓｉｎｇｌｅＭＣＬＦｌａｇが１に等しいとき、現在のコーディングユニットのすべての予測ユニットが２Ｎｘ２Ｎ予測ユニットのマージ候補リストと同一の単一のマージ候補リストを共有する。
【０２０４】
動きベクトルｍｖＬ０およびｍｖＬ１、参照インデックスｒｅｆＩｄｘＬ０およびｒｅｆＩｄｘＬ１、ならびに予測利用フラグｐｒｅｄＦｌａｇＬ０およびｐｒｅｄＦｌａｇＬ１は、以下の順序のステップによって指定されたように導出される。
【０２０５】
１．  サブクローズにおける互いに隣接する予測ユニットパーティションからのマージ候補の導出プロセス．．．
２．  （Ｘが０または１である）時間的マージ候補ｒｅｆＩｄｘＬＸの参照インデックスが０に等しくなるように設定される。
【０２０６】
３．  サブクローズ８．５．３．１．７における時間的ルーマ動きベクトル予測のための導出プロセスが、ルーマロケーション（ｘＰ，ｙＰ）と、ルーマ予測ブロックの幅および高さｎＰｂＷおよびｎＰｂＨと、［削除：「および」］ｒｅｆＩｄｘＬＸと、１に等しいｍｅｒｇｅＴＭＶＰとを入力として呼び出され、出力が利用可能性フラグａｖａｉｌａｂｌｅＦｌａｇＸＣｏｌおよび時間的動きベクトルｍｖＬＸＣｏｌとなる。  変数ａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌおよびｐｒｅｄＦｌａｇＬＸＣｏｌ（Ｘはそれぞれ０または１である）は、以下で指定するように導出される。
【０２０７】
４．  ．．．
ＡＭＶＰモードに関するＴＭＶＰの呼び出しのための変更
８．５．３．１．５  ルーマ動きベクトル予測のための導出プロセス
このプロセスへの入力は以下の通りである。
【０２０８】
−現在ピクチャの左上ルーマサンプルに対する現在のルーマコーディングブロックの左上サンプルのルーマロケーション（ｘＣ，ｙＣ）、
−現在のルーマコーディングブロックのサイズを指定する変数ｎＣＳ、
−現在のピクチャの左上ルーマサンプルに対する現在のルーマ予測ブロックの左上サンプルのルーマロケーション（ｘＰ，ｙＰ）、
−ルーマ予測ブロックの幅および高さを指定する変数ｎＰｂＷおよびｎＰｂＨ、
−  現在の予測ユニットパーティションの参照インデックスｒｅｆＩｄｘＬＸ（ここで、Ｘは０または１である）。
【０２０９】
−現在のコーディングユニット内の現在の予測ユニットのインデックスを指定する変数ｐａｒｔＩｄｘ。
【０２１０】
このプロセスの出力は以下の通りである。
【０２１１】
−  動きベクトルｍｖＬＸの予測ｍｖｐＬＸ（ここで、Ｘは０または１である）。
【０２１２】
動きベクトル予測子ｍｖｐＬＸは、以下の順序付きステップで導出される。
【０２１３】
３．  サブクローズ８．５．３．１．６における互いに隣接する予測ユニットパーティションからの動きベクトル予測子候補の導出プロセスは、ルーマコーディングブロックロケーション（ｘＣ，ｙＣ）と、コーディングブロックサイズｎＣＳと、ルーマ予測ブロックロケーション（ｘＰ，ｙＰ）と、ルーマ予測ブロックの幅および高さｎＰｂＷおよびｎＰｂＨと、ｒｅｆＩｄｘＬＸ（Ｘはそれぞれ０または１である）と、パーティションインデックスｐａｒｔＩｄｘとを入力として呼び出され、ＮがＡ、Ｂによって置き換えられる利用可能性フラグａｖａｉｌａｂｌｅＦｌａｇＬＸＮと動きベクトルｍｖＬＸＮとを出力として呼び出される。
【０２１４】
４．  ａｖａｉｌａｂｌｅＦｌａｇＬＸＡとａｖａｉｌａｂｌｅＦｌａｇＬＸＢが１に等しく、ｍｖＬＸＡがｍｖＬＸＢに等しくない場合、ａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌが０に等しくなるように設定され、それ以外の場合、サブクローズ８．５．３．１．７における時間的ルーマ動きベクトル予測のための導出プロセスが、ルーマロケーション（ｘＰ，ｙＰ）と、ルーマ予測ブロックの幅および高さｎＰｂＷおよびｎＰｂＨと、［削除：「および」］ｒｅｆＩｄｘＬＸ（Ｘはそれぞれ０または１である）と、０に等しいｍｅｒｇｅＴＭＶＰとを入力として呼び出され、出力が利用可能性フラグａｖａｉｌａｂｌｅＦｌａｇＸＣｏｌおよび時間的動きベクトル予測子ｍｖＬＸＣｏｌとなる。
【０２１５】
．．．
ＴＭＶＰのための変更
８．５．３．１．７  時間的ルーマ動きベクトル予測のための導出プロセス
このプロセスへの入力は以下の通りである。
【０２１６】
−現在のピクチャの左上ルーマサンプルに対する現在のルーマ予測ブロックの左上サンプルのルーマロケーション（ｘＰ，ｙＰ）、
−ルーマ予測ブロックの幅および高さを指定する変数ｎＰｂＷおよびｎＰｂＨ、
−参照インデックスｒｅｆＩｄｘＬＸ（Ｘは０または１である）［削除：「．」］、
−変数ｍｅｒｇｅＴＭＶＰ、
このプロセスの出力は以下の通りである。
【０２１７】
−動きベクトル予測ｍｖＬＸＣｏｌ、
−利用可能性フラグａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌ。
【０２１８】
関数ＲｅｆＰｉｃＯｒｄｅｒＣｎｔ（ｐｉｃＸ，ｒｅｆＩｄｘ，ＬＸ）は、ピクチャｐｉｃＸの参照ピクチャリストＬＸからのインデックスｒｅｆＩｄｘをもつ参照ピクチャのピクチャ順序カウントＰｉｃＯｒｄｅｒＣｎｔＶａｌを戻し、次のように指定される。
【数１５】
2016506185.tif 000017
【０２１９】
ｓｌｉｃｅ＿ｔｙｐｅ、ｃｏｌｌｏｃａｔｅｄ＿ｆｒｏｍ＿ｌ０＿ｆｌａｇおよびｃｏｌｌｏｃａｔｅｄ＿ｒｅｆ＿ｉｄｘの値に応じて、コロケートパーティションを含んでいるピクチャを指定する変数ｃｏｌＰｉｃは次のように導出される。
【０２２０】
−ｓｌｉｃｅ＿ｔｙｐｅがＢに等しく、ｃｏｌｌｏｃａｔｅｄ＿ｆｒｏｍ＿ｌ０＿ｆｌａｇが０に等しい場合、変数ｃｏｌＰｉｃは、ＲｅｆＰｉｃＬｉｓｔ１［ｃｏｌｌｏｃａｔｅｄ＿ｒｅｆ＿ｉｄｘ］によって指定されるコロケートパーティションを含んでいるピクチャを指定する。
【０２２１】
−それ以外の場合（ｓｌｉｃｅ＿ｔｙｐｅがＢに等しく、ｃｏｌｌｏｃａｔｅｄ＿ｆｒｏｍ＿ｌ０＿ｆｌａｇが１に等しく、またはｓｌｉｃｅ＿ｔｙｐｅがＰに等しい）、変数ｃｏｌＰｉｃは、ＲｅｆＰｉｃＬｉｓｔ０［ｃｏｌｌｏｃａｔｅｄ＿ｒｅｆ＿ｉｄｘ］によって指定されるような同じ位置にある区分を含むピクチャを指定する。
【０２２２】
変数ｃｏｌＰｕとその位置（ｘＰＣｏｌ，ｙＰＣｏｌ）とは、以下の順序付きステップで導出される
１．  変数ｃｏｌＰｕは次のように導出される。
【数１６】
2016506185.tif 000018
【０２２３】
−（ｙＰ＞＞Ｌｏｇ２ＣｔｂＳｉｚｅＹ）が（ｙＰＲｂ＞＞Ｌｏｇ２ＣｔｂＳｉｚｅＹ）に等しい場合、現在のルーマ予測ブロックの右下ルーマロケーションの水平成分は次のように定義される。
【数１７】
2016506185.tif 000019
【０２２４】
変数ｃｏｌＰｂは、ｃｏｌＰｉｃ内部の（（ｘＰＲｂ＞＞４）＜＜４，（ｙＰＲｂ＞＞４）＜＜４）によって与えられる修正されたロケーションを対象とするルーマ予測ユニットとして設定される。
【０２２５】
−それ以外の場合（（ｙＰ＞＞Ｌｏｇ２ＣｔｂＳｉｚｅＹ）が（ｙＰＲｂ＞＞Ｌｏｇ２ＣｔｂＳｉｚｅＹ）に等しくない）、ｃｏｌＰｂは「利用不可能である」とマークされる。
【０２２６】
２．  ｃｏｌＰｂがイントラ予測モードでコーディングされるか、またはｃｏｌＰｂが「利用不可能である」とマークされるとき、以下のことが適用される。
【０２２７】
−現在の予測ブロックの中心ルーマロケーションは次のように定義される。
【数１８】
2016506185.tif 000020
【数１９】
2016506185.tif 000021
【０２２８】
−変数ｃｏｌＰｂは、ｃｏｌＰｉｃ内部の（（ｘＰＣｔｒ＞＞４）＜＜４、（ｙＰＣｔｒ）＞＞４）＜＜４）によって与えられる修正されたロケーションを対象とするルーマ予測ブロックとして設定される。
【０２２９】
３．  （ｘＰＣｏｌ，ｙＰＣｏｌ）は、ｃｏｌＰｉｃの左上ルーマサンプルに対するｃｏｌＰｂの左上サンプルに等しくなるように設定される。
【０２３０】
ｒｅｆＩｄｘＬＸは、以下の条件のすべてが真である場合にｒｅｆＩｄｘＬＸＡになるように設定される。
【０２３１】
−ｍｅｒｇｅＴＭＶＰは１に等しい。
【０２３２】
−ＬｏｎｇＴｅｒｍＲｅｆＰｉｃ（ｃｕｒｒＰｉｃ，ｒｅｆＩｄｘＬＸ，ＬｉｓｔＸ）がＬｏｎｇＴｅｒｍＲｅｆＰｉｃ（ｃｏｌＰｉｃ，ｒｅｆＩｄｘＣｏｌ，ｌｉｓｔＣｏｌ）に等しくない。
【０２３３】
−ｒｅｆＩｄｘＬＸＡは０よりも大きい。
【０２３４】
変数ｍｖＬＸＣｏｌおよびａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌは、次のように導出される。
【０２３５】
−次の条件のうちの１つまたは複数が真である場合、ｍｖＬＸＣｏｌの両方の成分は０に等しくなるように設定され、ａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌは０に等しくなるように設定される。
【０２３６】
−ｃｏｌＰｂがイントラ予測モードでコーディングされる。
【０２３７】
−ｃｏｌＰｕが「利用不可能である」とマークされる。
【０２３８】
−ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅ＿ｆｌａｇが０に等しい。
【０２３９】
−ＬｏｎｇＴｅｒｍＲｅｆＰｉｃ（ｃｕｒｒＰｉｃ，ｒｅｆＩｄｘＬＸ，ＬｉｓｔＸ）がＬｏｎｇＴｅｒｍＲｅｆＰｉｃ（ｃｏｌＰｉｃ，ｒｅｆＩｄｘＣｏｌ，ｌｉｓｔＣｏｌ）に等しくない。
【０２４０】
−それ以外の場合、動きベクトルｍｖＣｏｌ、参照インデックスｒｅｆＩｄｘＣｏｌ、および参照リスト識別子ｌｉｓｔＣｏｌは次のように導出される。
【０２４１】
−ＰｒｅｄＦｌａｇＬ０［ｘＰＣｏｌ］［ｙＰＣｏｌ］が０に等しい場合、ｍｖＣｏｌ、ｒｅｆＩｄｘＣｏｌ、およびｌｉｓｔＣｏｌは、それぞれ、ＭｖＬ１［ｘＰＣｏｌ］［ｙＰＣｏｌ］、ＲｅｆＩｄｘＬ１［ｘＰＣｏｌ］［ｙＰＣｏｌ］、およびＬ１に等しくなるように設定される。
【０２４２】
−それ以外の場合（ＰｒｅｄＦｌａｇＬ０［ｘＰＣｏｌ］［ｙＰＣｏｌ］が１に等しい）、以下のことが適用される。
【０２４３】
−ＰｒｅｄＦｌａｇＬ１［ｘＰＣｏｌ］［ｙＰＣｏｌ］が０に等しい場合、ｍｖＣｏｌ、ｒｅｆＩｄｘＣｏｌ、およびｌｉｓｔＣｏｌは、それぞれ、ＭｖＬ０［ｘＰＣｏｌ］［ｙＰＣｏｌ］、ＲｅｆＩｄｘＬ０［ｘＰＣｏｌ］［ｙＰＣｏｌ］、およびＬ０に等しくなるように設定される。
【０２４４】
−それ以外の場合（ＰｒｅｄＦｌａｇＬ１［ｘＰＣｏｌ］［ｙＰＣｏｌ］が１に等しい）、以下の割当てが行われる。
【０２４５】
−あらゆる参照ピクチャリスト中のあらゆるピクチャｐｉｃのＰｉｃＯｒｄｅｒＣｎｔ（ｐｉｃ）がＰｉｃＯｒｄｅｒＣｎｔＶａｌ以下である場合、ｍｖＣｏｌ、ｒｅｆＩｄｘＣｏｌ、およびｌｉｓｔＣｏｌは、ＭｖＬＸ［ｘＰＣｏｌ］［ｙＰＣｏｌ］、ＲｅｆＩｄｘＬＸ［ｘＰＣｏｌ］［ｙＰＣｏｌ］、およびＬＸに等しくなるように設定され、それぞれ、Ｘは、このプロセスが呼び出されるＸの値である。
【０２４６】
−それ以外の場合（少なくとも１つの参照ピクチャリスト中の少なくとも１つのピクチャｐｉｃのＰｉｃＯｒｄｅｒＣｎｔ（ｐｉｃ）がＰｉｃＯｒｄｅｒＣｎｔＶａｌよりも大きい）、ｍｖＣｏｌ、ｒｅｆＩｄｘＣｏｌおよびｌｉｓｔＣｏｌは、それぞれ、ＭｖＬＮ［ｘＰＣｏｌ］［ｙＰＣｏｌ］、ＲｅｆＩｄｘＬＮ［ｘＰＣｏｌ］［ｙＰＣｏｌ］およびＬＮに等しくなるように設定され、Ｎは、ｃｏｌｌｏｃａｔｅｄ＿ｆｒｏｍ＿ｌ０＿ｆｌａｇの値である。
【０２４７】
−変数ａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌは１に等しく設定され、次のことが適用される。
【０２４８】
−ＲｅｆＰｉｃＬｉｓｔＸ［ｒｅｆＩｄｘＬＸ］が長期参照ピクチャである場合、またはＰｉｃＯｒｄｅｒＣｎｔ（ｃｏｌＰｉｃ）−ＲｅｆＰｉｃＯｒｄｅｒＣｎｔ（ｃｏｌＰｉｃ，ｒｅｆＩｄｘＣｏｌ，ｌｉｓｔＣｏｌ）がＰｉｃＯｒｄｅｒＣｎｔＶａｌ−ＰｉｃＯｒｄｅｒＣｎｔ（ＲｅｆＰｉｃＬｉｓｔＸ［ｒｅｆＩｄｘＬＸ］）に等しい場合、
【数２０】
2016506185.tif 000022
【０２４９】
−それ以外の場合、ｍｖＬＸＣｏｌは、以下で指定されるような動きベクトルｍｖＣｏｌのスケーリングされたバージョンとして導出される。
【数２１】
2016506185.tif 000023
【数２２】
2016506185.tif 000024
【数２３】
2016506185.tif 000025
【０２５０】
ここにおいて、ｔｄおよびｔｂは、次のように導出される。
【数２４】
2016506185.tif 000026
【数２５】
2016506185.tif 000027
【０２５１】
１．１．１ＨＥＶＣ  ＷＤ９とともに適用すべき代替実装形態
[0127]ｒｅｆＩｄｘＬＸＡ（Ｘは０または１である）は、上記の例で説明するように導出されるかまたは他の方法でシグナリング／設定されてもよい。修正は、追加についてはイタリック体で示され、または削除については括弧に入れられ、「削除」の後に続く。以下の例は、上述の例と同様であり、時間的動きベクトル予測についての内容の一部が更新されている。
【０２５２】
８．５．３．１．７  時間的ルーマ動きベクトル予測のための導出プロセス
このプロセスへの入力は以下の通りである。
【０２５３】
−現在のピクチャの左上ルーマサンプルに対する現在のルーマ予測ブロックの左上サンプルのルーマロケーション（ｘＰ，ｙＰ）、
−ルーマ予測ブロックの幅および高さを指定する変数ｎＰｂＷおよびｎＰｂＨ、
−変数ｍｅｒｇｅＴＭＶＰ、
−参照インデックスｒｅｆＩｄｘＬＸ（ここにおいて、Ｘは０または１である）。
【０２５４】
このプロセスの出力は以下の通りである。
【０２５５】
−動きベクトル予測ｍｖＬＸＣｏｌ、
−利用可能性フラグａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌ。
【０２５６】
変数ｃｕｒｒＰｂは、ルーマロケーション（ｘＰ，ｙＰ）における現在のルーマ予測ブロックを指定する。
【０２５７】
変数ｍｖＬＸＣｏｌおよびａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌは次のように導出される。
【０２５８】
−ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅ＿ｆｌａｇが０に等しい場合、ｍｖＬＸＣｏｌの両方の成分は０に等しくなるように設定され、ａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌは０に等しくなるように設定される。
【０２５９】
−それ以外の場合、以下の順序のステップが適用される。
【０２６０】
１．  ｓｌｉｃｅ＿ｔｙｐｅ、ｃｏｌｌｏｃａｔｅｄ＿ｆｒｏｍ＿ｌ０＿ｆｌａｇ、およびｃｏｌｌｏｃａｔｅｄ＿ｒｅｆ＿ｉｄｘの値に応じて、コロケートパーティションを含んでいるピクチャを指定する変数ｃｏｌＰｉｃは次のように導出される。
【０２６１】
−ｓｌｉｃｅ＿ｔｙｐｅがＢに等しく、ｃｏｌｌｏｃａｔｅｄ＿ｆｒｏｍ＿ｌ０＿ｆｌａｇが０に等しい場合、変数ｃｏｌＰｉｃは、ＲｅｆＰｉｃＬｉｓｔ１［ｃｏｌｌｏｃａｔｅｄ＿ｒｅｆ＿ｉｄｘ］によって指定されるコロケートパーティションを含んでいるピクチャを指定する。
【０２６２】
−それ以外の場合（ｓｌｉｃｅ＿ｔｙｐｅがＢに等しく、ｃｏｌｌｏｃａｔｅｄ＿ｆｒｏｍ＿ｌ０＿ｆｌａｇが１に等しく、またはｓｌｉｃｅ＿ｔｙｐｅがＰに等しい）、変数ｃｏｌＰｉｃは、ＲｅｆＰｉｃＬｉｓｔ０［ｃｏｌｌｏｃａｔｅｄ＿ｒｅｆ＿ｉｄｘ］によって指定されるようなコロケートパーティションを含むピクチャを指定する。
【０２６３】
２．  右下連結動きベクトルは次のように導出される。
【数２６】
2016506185.tif 000028
【数２７】
2016506185.tif 000029
【０２６４】
−（ｙＰ＞＞Ｌｏｇ２ＣｔｂＳｉｚｅＹ）が（ｙＰＲｂ＞＞Ｌｏｇ２ＣｔｂＳｉｚｅＹ）に等しく、ｘＰＲｂがｐｉｃ＿ｗｉｄｔｈ＿ｉｎ＿ｌｕｍａ＿ｓａｍｐｌｅｓより小さい場合、以下のことが適用される。
【０２６５】
−変数ｃｏｌＰｕは、ｃｏｌＰｉｃによって指定される連結ピクチャ内部の（（ｘＰＲｂ＞＞４）＜＜４、（ｙＰＲｂ）＞＞４）＜＜４）によって与えられる修正されたロケーションをするルーマ予測ブロックを指定する。
【０２６６】
−ルーマロケーション（ｘＰＣｏｌ，ｙＰＣｏｌ）は、ｃｏｌＰｉｃによって指定される連結ピクチャの左上ルーマサンプルに対してｃｏｌＰｂによって指定される連結ルーマ予測ブロックの左上サンプルに等しくなるように設定される。
【０２６７】
−サブクローズ８．５．３．１．８において指定されるような連結動きベクトルのための導出プロセスは、ｃｕｒｒＰｂ、ｃｏｌＰｉｃ、ｃｏｌＰｂ、（ｘＰＣｏｌ，ｙＰＣｏｌ）、ｍｅｒｇｅＴＭＶＰ、およびｒｅｆＩｄｘＬＸを入力として呼び出され、出力がｍｖＬＸＣｏｌおよびａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌに割り当てられる。
【０２６８】
−それ以外の場合、ｍｖＬＸＣｏｌの両方の成分が０に等しくなるように設定され、ａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌが０に等しくなるように設定される。
【０２６９】
３．  ａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌが０に等しいとき、中央連結動きベクトルは次のように導出される。
【数２８】
2016506185.tif 000030
【数２９】
2016506185.tif 000031
【０２７０】
−変数ｃｏｌＰｂは、ｃｏｌＰｉｃ内部の（（ｘＰＣｔｒ＞＞４）＜＜４、（ｙＰＣｔｒ）＞＞４）＜＜４）によって与えられる修正されたロケーションを対象とするルーマ予測ブロックを指定する。
【０２７１】
−ルーマロケーション（ｘＰＣｏｌ，ｙＰＣｏｌ）は、ｃｏｌＰｉｃによって指定される連結ピクチャの左上ルーマサンプルに対してｃｏｌＰｂによって指定される連結ルーマ予測ブロックの左上サンプルに等しくなるように設定される。
【０２７２】
−サブクローズ８．５．３．１．８において指定されるような連結動きベクトルのための導出プロセスは、ｃｕｒｒＰｂ、ｃｏｌＰｉｃ、ｃｏｌＰｂ、（ｘＰＣｏｌ，ｙＰＣｏｌ）、ｍｅｒｇｅＴＭＶＰ、およびｒｅｆＩｄｘＬＸを入力として呼び出され、出力がｍｖＬＸＣｏｌおよびａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌに割り当てられる。
【０２７３】
８．５．３．１．８  連結動きベクトルのための導出プロセス
このプロセスへの入力は以下の通りである。
【０２７４】
−現在の予測ブロックを指定するｃｕｒｒＰｂ、
−連結ピクチャを指定するｃｏｌＰｉｃ、
−ｃｏｌＰｉｃによって指定される連結ピクチャ内部の連結予測ブロックを指定するｃｏｌＰｂ、
−ｃｏｌＰｉｃによって指定される連結ピクチャの左上ルーマサンプルに対してｃｏｌＰｂによって指定される連結ルーマ予測ブロックの左上サンプルを指定するルーマロケーション（ｘＰＣｏｌ，ｙＰＣｏｌ）、
−変数ｍｅｒｇｅＴＭＶＰ、
−参照インデックスｒｅｆＩｄｘＬＸ（ここにおいて、Ｘは０または１である）。
【０２７５】
このプロセスの出力は以下の通りである。
【０２７６】
−動きベクトル予測ｍｖＬＸＣｏｌ、
−利用可能性フラグａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌ。
【０２７７】
変数ｃｕｒｒＰｉｃは現在のピクチャを指定する。
【０２７８】
アレイｐｒｅｄＦｌａｇＬＸＣｏｌ［ｘ］［ｙ］、ｍｖＬＸＣｏｌ［ｘ］［ｙ］、およびｒｅｆＩｄｘＬＸＣｏｌ［ｘ］［ｙ］は、それぞれｃｏｌＰｉｃ、ＰｒｅｄＦｌａｇＬＸ［ｘ］［Ｙ］、ＭｖＬＸ［ｘ］［ｙ］、およびＲｅｆＩｄｘＬＸ［ｘ］［ｙ］によって指定される連結ピクチャの対応するアレイに等しくなるように設定され、Ｘはこのプロセスを呼び出す目的であるＸの値である。
【０２７９】
変数ｍｖＬＸＣｏｌおよびａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌは次のように導出される。
【０２８０】
−ｃｏｌＰｂがイントラ予測モードでコーディングされる場合、ｍｖＬＸＣｏｌの両方の成分は０に等しくなるように設定され、ａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌは０に等しくなるように設定される。
【０２８１】
−それ以外の場合、動きベクトルｍｖＣｏｌ、参照インデックスｒｅｆＩｄｘＣｏｌ、および参照リスト識別子ｌｉｓｔＣｏｌは次のように導出される。
【０２８２】
−ｐｒｅｄＦｌａｇＬ０Ｃｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］が０に等しい場合、ｍｖＣｏｌ、ｒｅｆＩｄｘＣｏｌ、およびｌｉｓｔＣｏｌは、それぞれ、ｍｖＬ１Ｃｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］、ｒｅｆＩｄｘＬ１Ｃｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］、およびＬ１に等しくなるように設定される。
【０２８３】
−それ以外の場合、ｐｒｅｄＦｌａｇＬ０Ｃｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］が１に等しくｐｒｅｄＦｌａｇＬ１Ｃｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］が０に等しい場合、ｍｖＣｏｌ、ｒｅｆＩｄｘＣｏｌ、およびｌｉｓｔＣｏｌは、それぞれ、ｍｖＬ０Ｃｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］、ｒｅｆＩｄｘＬ０Ｃｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］、およびＬ０に等しくなるように設定される。
【０２８４】
−場合によっては（ｐｒｅｄＦｌａｇＬ０Ｃｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］が１に等しくｐｒｅｄＦｌａｇＬ１Ｃｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］が１に等しい場合）、以下の割当てが行われる。
【０２８５】
−ＤｉｆｆＰｉｃＯｒｄｅｒＣｎｔ（ｃｕｒｒＰｉｃ，ｐｉｃ）が現在スライスのあらゆる参照ピクチャリスト内のあらゆるピクチャｐｉｃについて０以下である場合、ｍｖＣｏｌ、ｒｅｆＩｄｘＣｏｌ、およびｌｉｓｔＣｏｌは、それぞれ、ｍｖＬＸ［ｘＰＣｏｌ］［ｙＰＣｏｌ］、ｒｅｆＩｄｘＬＸ［ｘＰＣｏｌ］［ｙＰＣｏｌ］、およびＬＸに等しくなるように設定され、Ｘは、このプロセスを呼び出す目的であるＸの値である。
【０２８６】
−それ以外の場合、ｍｖＣｏｌ、ｒｅｆＩｄｘＣｏｌ、およびｌｉｓｔＣｏｌは、それぞれ、ｍｖＬＮＣｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］、ｒｅｆＩｄｘＬＮＣｏｌ［ｘＰＣｏｌ］［ｙＰＣｏｌ］、およびＬＮに等しくなるように設定され、Ｎはｃｏｌｌｏｃａｔｅｄ＿ｆｒｏｍ＿１０＿ｆｌａｇの値である。
【０２８７】
変数ｍｖＬＸＣｏｌおよびａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌは次のように導出される。
【０２８８】
−［削除：「もしも」］ＬｏｎｇＴｅｒｍＲｅｆＰｉｃ（ｃｕｒｒＰｉｃ，ｃｕｒｒＰｂ，ｒｅｆＩｄｘＬＸ，ＬＸ）がＬｏｎｇＴｅｒｍＲｅｆＰｉｃ（ｃｏｌＰｉｃ，ｃｏｌＰｂ，ｒｅｆＩｄｘＣｏｌ，ｌｉｓｔＣｏｌ）の場合、以下のことが適用される。
【０２８９】
−ｒｅｆＩｄｘＬＸＡが０よりも大きく、ｍｅｒｇｅＴＭＶＰが１に等しい場合、ｒｅｆＩｄｘＬＸはｒｅｆＩｄｘＬＸＡに設定され、ａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌは１に設定される。
【０２９０】
−それ以外の場合、ｍｖＬＸＣｏｌの両方の成分が０に等しくなるように設定され、ａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌが０に等しくなるように設定される。
【０２９１】
−［削除：「それ以外の場合、」］変数ａｖａｉｌａｂｌｅＦｌａｇＬＸＣｏｌが１に等しくなるように設定されると、ｒｅｆＰｉｃＬｉｓｔＣｏｌ［ｒｅｆＩｄｘＣｏｌ］は、ピクチャｃｏｌＰｉｃ内に予測ブロックｃｕｒｒＰｉｃを含むスライスの参照ピクチャリストｌｉｓｔＣｏｌ内に参照インデックスｒｅｆＩｄｘＣｏｌを有するピクチャになるように設定される。
【数３０】
2016506185.tif 000032
【数３１】
2016506185.tif 000033
【０２９２】
−ＲｅｆＰｉｃＬｉｓｔＸ［ｒｅｆＩｄｘＬＸ］が長期参照ピクチャであるかまたはｃｏｌＰｏｃＤｉｆｆがｃｕｒｒＰｏｃＤｉｆｆに等しい場合、ｍｖＬＸＣｏｌは次のように導出される。
【数３２】
2016506185.tif 000034
【０２９３】
−それ以外の場合、ｍｖＬＸＣｏｌは、以下で指定されるような動きベクトルｍｖＣｏｌのスケーリングされたバージョンとして導出される。
【数３３】
2016506185.tif 000035
【数３４】
2016506185.tif 000036
【数３５】
2016506185.tif 000037
【０２９４】
ここにおいて、ｔｄおよびｔｂは、次のように導出される。
【数３６】
2016506185.tif 000038
【数３７】
2016506185.tif 000039
【０２９５】
[0128]３−ビューの場合のテクスチャビューコーディングに関するアンカーと比較して提案された方法のコーディング利得について以下で説明する。表１は、ＨＴＭ４．０アンカーに対する提案された方法の平均コーディング利得を示す。「ビデオのみ」によって示される列は、ビットレートが３つのテクスチャビューを含むビットストリームの総ビットレートを表し、ＰＳＮＲ値が復号された３つのテクスチャビューの平均ＰＳＮＲ値であるすべての３つのテクスチャビューのコーディング利得を列挙している。「ビデオ１」および「ビデオ２」に関するビットレート節約もこの表に列挙されている。「ビデオ０」がベースビューに対応し、一方、「ビデオ１」および「ビデオ２」が非ベースビュー（テクスチャのみ）を示すことに留意されたい。
【０２９６】
[0129]表１に示すように、すべてのテクスチャビューに関する全体的な平均ビットレート節約は約０．９４％であり、非ベースビューの節約は約２．５％である。
【表１】
2016506185.tif 000040
【０２９７】
[0130]図７は、本開示の技法による、ビデオデータのブロックを符号化する例示的な方法を示すフローチャートである。説明の目的で、図７について図１および図２のビデオエンコーダ２０に関して説明する。しかしながら、図７の方法がビデオコードを符号化するための他のデバイスによって実行されてよいことを理解されたい。同様に、図７の方法の特定のステップは、異なる順序で、または並行して実行され得る。
【０２９８】
[0131]図７の例には示されていないが、ビデオエンコーダ２０は最初に、現在のブロックの動きベクトルをマージモードを使用して符号化すべきであると決定してもよい。ビデオエンコーダ２０は、現在のブロックに空間的に隣接するブロックならびに別のピクチャにおける現在のブロックに対してコロケートされたブロックの動きベクトルを表す１組の候補動きベクトル予測子を構成してもよい。コロケートされたブロックの動きベクトルは、時間的動きベクトル予測子（ＴＭＶＰ）の例を表す。たとえば、図６に示すように、現在のブロックはブロック１０４に対応してもよく、コロケートされたブロックはブロック１１０に対応してもよく、動きベクトル１１６はブロック１０４に関するＴＭＶＰの例を表してもよい。図７の例では、ビデオエンコーダ２０がマージモードを使用して現在のブロックの動きベクトルを符号化するときに現在のブロックに関するＴＭＶＰを選択すると仮定される。
【０２９９】
[0132]したがって、ビデオエンコーダ２０は、現在のブロックのコロケートされたブロックを決定してもよい（１５０）。ビデオエンコーダ２０はさらに、コロケートされたブロックの動きベクトルの参照インデックスを決定してもよい（１５２）。コロケートされたブロックの動きベクトルの参照インデックスは、コロケートされたブロックの動きベクトルが指し示す参照ピクチャに対応する。この例では、動きベクトルが指し示す参照ピクチャが、長期参照ピクチャとして特徴付けされ得るビュー間参照ピクチャであるように、コロケートされたブロックの動きベクトルは差異動きベクトル、すなわち、ビュー間動きベクトルであると仮定される。したがって、コロケートされたブロックの動きベクトルの参照インデックスは、コロケートされたブロックを含むピクチャと同じピクチャ順序カウント（ＰＯＣ）を有する参照ピクチャに対応してもよい。
【０３００】
[0133]同じＰＯＣ値を有するピクチャ間でビュー間予測が有効化されるので、本開示の技法がなければ、コロケートされたブロックの動きベクトルは概して、マージモードの動きベクトルコーディングには利用不可能と見なされる。すなわち、コロケートされたブロックの動きベクトルが現在のブロックの動きベクトルとして厳密なマージモードで使用された場合、現在のブロックの動きベクトルは、現在のブロックを含む現在のピクチャとは異なるＰＯＣ値を有する参照ピクチャの参照ブロックを参照する。
【０３０１】
[0134]しかしながら、本開示の技法を使用すると、ビデオエンコーダ２０は追加の参照インデックスの所定の値を得ることができる（１５４）。たとえば、ビデオエンコーダ２０は、ビデオコーディング規格またはビデオコーディング規格の拡張規格に基づいて所定の値を決定しても、所定の値を割り当てても、所定の値をユーザから受け取っても、または場合によっては所定の値を決定してもよい。ビデオエンコーダ２０は次いで、追加の参照インデックスの値を決定してもよく（１５６）、すなわち、所定の値に等しくなるように決定してもよい。たとえば、所定の値は０（ゼロ）または−１（負の１）に等しくてもよい。ビデオエンコーダ２０は、いくつかの例では、たとえば、現在のブロックを含むスライスのスライスヘッダ、現在のブロックを含むピクチャのピクチャパラメータセット（ＰＰＳ）、ピクチャを含むシーケンスのシーケンスパラメータセット（ＳＰＳ）、および／またはビデオパラメータセット（ＶＰＳ）内の所定の値を表すデータを符号化してもよい。
【０３０２】
[0135]ビデオエンコーダ２０は次いで、追加の参照インデックスを使用して現在のブロックの動きベクトル（ＭＶ）を構成してもよい（１５８）。一例では、ビデオエンコーダ２０は、現在のブロックの動きベクトルに参照ピクチャリスト、水平動成分、および垂直動成分などのＴＭＶＰの動きパラメータを継承させてもよい。概して、動きベクトルは水平動成分および垂直動成分によって定義されてもよく、ここにおいて、水平動成分は、現在のブロックの位置に対する参照ブロックの水平位置を定義し、垂直動成分は、現在のブロックの位置に対する参照ブロックの垂直位置を定義する。
【０３０３】
[0136]同様に、参照ピクチャリストは潜在的な参照ピクチャのリストである。参照インデックスは、参照ピクチャリストにおいて使用すべき実際の参照ピクチャを識別する。従来のマージモードでは、参照インデックスおよび参照ピクチャリストは、動きベクトル予測子から継承される。しかしながら、本開示の技法によれば、参照ピクチャリストは、動きベクトル予測子から継承されてもよいが、所定の値と等しい値を有する追加の参照インデックスが現在のブロックの動きベクトルを構成するのに使用されてもよい。したがって、現在のブロックの構成された動きベクトルは、ＴＭＶＰの参照ピクチャリスト識別子と等しい参照ピクチャリスト識別子と、ＴＭＶＰの水平動成分と等しい水平動成分と、ＴＭＶＰの垂直動成分と等しい垂直動成分と、所定の値と等しい参照インデックス（すなわち、追加の参照インデックス）とを有してもよい。
【０３０４】
[0137]ビデオエンコーダ２０は、構成された動きベクトルを使用して現在のブロックの予測ブロックを算出してもよい（１６０）。たとえば、ビデオエンコーダ２０は、所定の値および追加の参照インデックスに等しくてもよい、構成された動きベクトルの参照ピクチャリストおよび構成された動きベクトルの参照インデックスを使用して参照ピクチャを識別してもよい。ビデオエンコーダ２０は次いで、参照ブロックを、構成された動きベクトルの水平動成分によって水平方向にシフトされ構成された動きベクトルの垂直動成分によって垂直方向にシフトされた現在のブロックの位置に位置していると特定してもよい。予測ブロックを算出することは、動きベクトルが分数ピクセル精度を有する場合に補間をさらに含んでもよい。
【０３０５】
[0138]ビデオエンコーダ２０は、次いで、予測ブロックを使用して現在のブロックを符号化してもよい（１６２）。たとえば、ビデオエンコーダ２０は、現在のブロックの元のブロックと予測ブロックとの間のピクセルごとの差を使用して残差ブロックを算出し得る。ビデオエンコーダ２０はさらに、残差ブロックを変換して量子化し、次いで得られた量子化された変換係数をエントロピー符号化してもよい。ビデオエンコーダ２０はさらに、現在のブロックの動きベクトル予測子（ＭＶＰ）インデックスを符号化してもよい（１６４）。この例では、ＭＶＰインデックスは、１組の動きベクトル予測子候補内のＴＭＶＰ候補に対応する。同様に、ビデオエンコーダ２０は、マージモードが現在のブロックの動きベクトルをコーディングするのに使用され、ＴＭＶＰがマージモードに関して有効化されることを示すデータを符号化してもよい。
【０３０６】
[0139]このように、図７の方法は、現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定することと、候補動きベクトル予測子に関して、現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、所定の値と等しい追加の目標参照インデックスの値を決定することと、追加の参照インデックスの値に少なくとも部分的に基づいて現在の動きベクトルをコーディングする（すなわち、この例では符号化する）こととを含む方法の例を表す。特に、第１の目標参照インデックスは、コロケートされたブロックの動きベクトルに対応するＴＭＶＰの参照インデックスに対応してもよい。候補動きベクトル予測子はＴＭＶＰに対応してもよい。現在の動きベクトルは、現在のブロックの動きベクトルに対応してもよい。
【０３０７】
[0140]図８は、本開示の技法による、ビデオデータのブロックを復号する例示的な方法を示すフローチャートである。説明の目的で、図８について図１および図３のビデオエンコーダ３０に関して説明する。しかしながら、図８の方法がビデオデータを復号するための他のデバイスによって実行されてもよいことを理解されたい。同様に、図８の方法の特定のステップは、異なる順序で、または並行して実行され得る。
【０３０８】
[0141]最初に、ビデオデコーダ３０は、現在のブロックの動きベクトル予測子（ＭＶＰ）インデックスを復号してもよい（１８０）。さらに、ビデオデコーダ３０は、現在のブロックの動きベクトルをマージモードを使用して復号すべきであり、マージモードについて時間的動きベクトル予測が有効化されることを示すデータを復号してもよい。ビデオデコーダ３０は、復号されたＭＶＰインデックスが現在のブロックに対してコロケートされたブロック、すなわち、現在のブロックと同じ位置または実質的に同じ位置を有するが異なるピクチャ内に存在するブロックに対応すると決定してもよい（１８２）。言い換えれば、ＭＶＰインデックスは、時間的動きベクトル予測子（ＴＭＶＰ）に対応してもよい。
【０３０９】
[0142]ビデオデコーダ３０は次いで、コロケートされたブロックの動きベクトルの参照インデックスを決定してもよい（１８４）。ビデオデコーダ３０は、追加の参照インデックスの所定の値を得てもよい（１８６）。たとえば、ビデオデコーダ３０は、現在のブロック、ＰＰＳ、ＳＰＳ、ＶＰＳ、または他のそのようなシグナリングデータを含むスライスのスライスヘッダから所定の値を決定してもよい。ビデオデコーダ３０は次いで、所定の値と等しい追加の参照インデックスの値を決定してもよい（１８８）。
【０３１０】
[0143]ビデオデコーダ３０は次いで、追加の参照インデックスを使用して現在のブロックの動きベクトル（ＭＶ）を構成してもよい（１９０）。図７に関して説明したように、ビデオデコーダ３０は、現在のブロックの動きベクトルに参照ピクチャリスト識別子、水平動成分、および垂直動成分を継承させるが、現在のブロックの参照ブロックを見つけるべきである参照ピクチャを決定するために参照ピクチャリスト識別子によって識別される参照ピクチャリストのインデックスとして追加の参照インデックスを使用させてもよい。
【０３１１】
[0144]したがって、ビデオデコーダ３０は、構成された動きベクトルを使用して現在のブロックの予測ブロックを算出するために構成された動きベクトルを使用してもよい（１９２）。たとえば、この場合も、上述のように、水平動成分および垂直動成分は、現在のブロックの位置に対する参照ピクチャ内の参照ブロックの位置を定義することができる。この場合も、ビデオデコーダ３０は、動きベクトルがサブピクセル精度を有する場合にピクセル補間を実行してもよい。
【０３１２】
[0145]ビデオデコーダ３０は次いで、予測ブロックを使用して現在のブロックを復号してもよい（１９４）。たとえば、ビデオデコーダ３０は、ビットストリームから量子化された変換係数を復号してもよい。ビデオデコーダ３０は次いで、現在のブロックの残差ブロックを再生するために係数を逆量子化し、逆変換し得る。次に、ビデオデコーダ３０は、現在のブロックを再構成するために予想ブロックと残差ブロックをピクセルごとに組み合わせてもよい。
【０３１３】
[0146]このように、図８の方法は、現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定することと、候補動きベクトル予測子に関して、現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、所定の値と等しい追加の目標参照インデックスの値を決定することと、追加の参照インデックスの値に少なくとも部分的に基づいて現在の動きベクトルをコーディングする（すなわち、この例では復号する）こととを含む方法の例を表す。
【０３１４】
[0147]例によっては、本明細書で説明された技法のうちいずれかの、いくつかの行為またはイベントは、異なる順番で実行される可能性があり、追加され、統合され、または完全に除外され得る（たとえば、すべての説明された行為またはイベントが、本技法の実施のために必要であるとは限らない）ことを認識されたい。さらに、いくつかの例では、行為またはイベントは、連続的にではなく、同時に、たとえば、マルチスレッド処理、割込み処理、または複数のプロセッサを通じて実行され得る。
【０３１５】
[0148]１つまたは複数の例では、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、１つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されてよく、あるいは、コンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行されてよい。コンピュータ可読媒体は、たとえば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を支援する、任意の媒体を含むデータ記憶媒体または通信媒体などの有形媒体に対応するコンピュータ可読記憶媒体を含み得る。このようにして、コンピュータ可読媒体は、一般に、（１）非一時的である有形コンピュータ可読記憶媒体、あるいは（２）信号または搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明された技法の実装のための命令、コードおよび／またはデータ構造を取り出すために、１つまたは複数のコンピュータあるいは１つまたは複数のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品は、コンピュータ可読媒体を含み得る。
【０３１６】
[0149]限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（登録商標）、ＣＤ−ＲＯＭまたは他の光ディスクストレージ、磁気ディスクストレージ、または他の磁気ストレージデバイス、フラッシュメモリ、あるいは、命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用されコンピュータによってアクセスされ得る、任意の他の媒体を備え得る。同様に、いかなる接続も適切にコンピュータ可読媒体と称される。たとえば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。しかしながら、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時的媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザディスク（disc）（登録商標）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）およびブルーレイディスク（disc）を含み、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
【０３１７】
[0150]命令は、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）などの１つまたは複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、あるいは他の等価な集積回路またはディスクリート論理回路によって実行され得る。したがって、本明細書で使用される「プロセッサ」という用語は、前述の構造、または本明細書で説明される技法の実装に好適な他の構造のいずれかを指す。加えて、いくつかの態様では、本明細書で説明された機能は、符号化および復号のために構成された専用のハードウェアおよび／またはソフトウェアモジュール内で与えられてよく、あるいは複合コーデックに組み込まれてよい。また、本技法は、１つまたは複数の回路または論理要素中で完全に実装され得る。
【０３１８】
[0151]本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）、またはＩＣのセット（たとえば、チップセット）を含む、多種多様なデバイスまたは装置において実装され得る。本開示では、開示される技法を実行するように構成されたデバイスの機能的態様を強調するために、様々なコンポーネント、モジュール、またはユニットが説明されたが、それらのコンポーネント、モジュール、またはユニットは、必ずしも異なるハードウェアユニットによる実現を必要とするとは限らない。むしろ、上で説明されたように、様々なユニットが、好適なソフトウェアおよび／またはファームウェアとともに、上で説明された１つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられてよく、または相互動作ハードウェアユニットの集合によって与えられてよい。
【０３１９】
[0152]様々な例が説明されてきた。これらおよび他の例は以下の特許請求の範囲内に入る。
【図１】
2016506185.tif 000041
【図２】
2016506185.tif 000042
【図３】
2016506185.tif 000043
【図４】
2016506185.tif 000044
【図５】
2016506185.tif 000045
【図６】
2016506185.tif 000046
【図７】
2016506185.tif 000047
【図８】
2016506185.tif 000048
【手続補正書】
【提出日】平成27年9月1日(2015.9.1)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ビデオデータをコーディングする方法であって、
現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定することと、
追加の目標参照インデックスの所定の値を表すデータを含む、スライスヘッダまたはピクチャパラメータセット（ＰＰＳ）のうちの少なくとも１つをコーディングすることと、
前記候補動きベクトル予測子に関して、前記現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、前記追加の目標参照インデックスの値が前記所定の値に等しいことを決定することと、
前記現在の動きベクトルの参照インデックスが前記追加の目標参照インデックスの前記所定の値を有するように、前記現在の動きベクトルをコーディングすることと
を備える方法。
【請求項２】
前記追加の目標参照インデックスの前記値を決定することは、前記所定の値に少なくとも部分的に基づいて前記追加の目標参照インデックスが利用可能であるかどうかを決定することをさらに備える、請求項１に記載の方法。
【請求項３】
前記追加の参照インデックスは、参照ピクチャリストの参照インデックス値０（ｒｅｆＩｄｘＬ０Ａ）と前記参照ピクチャリストの参照インデックス値１（ｒｅｆＩｄｘＬ１Ａ）のうちの一方を備える、請求項１に記載の方法。
【請求項４】
コーディングは、マージモードを使用して前記現在の動きベクトルをコーディングすることを備え、前記方法は、
前記候補動きベクトル予測子から前記現在の動きベクトルの動きパラメータを継承することと、ここにおいて、前記継承される動きパラメータは、参照ピクチャリスト識別子と、水平動成分と、垂直動成分とを含み、
前記現在の動きベクトルが参照ピクチャリストにおいて参照する参照ピクチャを識別するために前記追加の目標参照インデックスの前記値を使用することと
を備え、
前記方法は、前記水平動成分、前記垂直動成分、および前記参照ピクチャリストにおいて前記追加の目標参照インデックスによって識別される前記参照ピクチャを使用して現在のブロックをコーディングすることをさらに備える、請求項１に記載の方法。
【請求項５】
前記追加の目標参照インデックスの前記値は、前記現在の動きベクトルを含むビデオデータが基本ビデオコーディング規格の拡張規格に適合するときにのみ前記追加の目標参照インデックスの前記値を決定することを備える、請求項１に記載の方法。
【請求項６】
前記基本ビデオコーディング規格は、高効率ビデオコーディング（ＨＥＶＣ）を備え、前記拡張規格は、ＨＥＶＣのマルチビュービデオコーディング拡張規格（ＭＶ−ＨＥＶＣ）とＨＥＶＣのスケーリング可能なビデオコーディング拡張規格（ＳＨＶＣ）の一方を備える、請求項５に記載の方法。
【請求項７】
前記所定の値を表すデータをコーディングすることをさらに備え、前記データは、前記現在の動きベクトルに対応するブロックを含むスライスのデータを備える、請求項１に記載の方法。
【請求項８】
前記所定の値を表す前記データをコーディングすることは、
基本ビデオコーディング規格の拡張規格に適合するスライスのスライスヘッダの一部における前記データをコーディングすることと、
前記基本ビデオコーディング規格に適合する前記スライスの前記スライスヘッダの一部における前記データをコーディングすることと
の少なくとも一方を備える、請求項７に記載の方法。
【請求項９】
前記現在の動きベクトルに対応するブロックを含むピクチャを含むシーケンスのシーケンスパラメータセット（ＳＰＳ）、またはビデオパラメータセット（ＶＰＳ）のうちの少なくとも１つにおける前記所定の値を表すデータをコーディングすることをさらに備える、請求項１に記載の方法。
【請求項１０】
前記所定の値が非ゼロ値であるときに、前記追加の目標参照インデックス値が参照インデックス０によって識別される参照ピクチャのタイプとは異なるタイプを有する参照ピクチャに対応することを決定することをさらに備える、請求項１に記載の方法。
【請求項１１】
前記動きベクトルをコーディングすることは、前記動きベクトルを復号することを備え、前記方法は、前記動きベクトルを使用して現在のブロックを復号することをさらに備える、請求項１に記載の方法。
【請求項１２】
前記動きベクトルをコーディングすることは、前記動きベクトルを符号化することを備え、前記方法は、前記動きベクトルを使用して現在のブロックを符号化することをさらに備える、請求項１に記載の方法。
【請求項１３】
ビデオデータをコーディングするためのデバイスであって、現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定することと、追加の目標参照インデックスの所定の値を表すデータを含む、スライスヘッダまたはピクチャパラメータセット（ＰＰＳ）のうちの少なくとも１つをコーディングすることと、前記候補動きベクトル予測子に関して、前記現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、前記追加の目標参照インデックスの値が前記所定の値に等しいことを決定することと、前記現在の動きベクトルの参照インデックスが前記追加の目標参照インデックスの前記所定の値を有するように、前記現在の動きベクトルをコーディングすることとを行うように構成されたビデオコーダを備えるデバイス。
【請求項１４】
前記ビデオコーダは、前記現在の動きベクトルが前記候補動きベクトル予測子から動きパラメータを継承するマージモードを使用して前記現在の動きベクトルをコーディングするように構成され、前記継承される動きパラメータは、参照ピクチャリスト識別子、水平動成分、および垂直動成分を含み、前記ビデオコーダは、前記現在の動きベクトルが参照ピクチャリストにおいて参照する参照ピクチャを識別するために前記追加の目標参照インデックスの前記値を使用することと、前記水平動成分、前記垂直動成分、および前記参照ピクチャリストにおいて前記追加の目標参照インデックスによって識別される前記参照ピクチャを使用して現在のブロックをコーディングすることとを行うように構成される、請求項１３のデバイス。
【請求項１５】
前記ビデオコーダは、前記現在の動きベクトルを含むビデオデータが基本ビデオコーディング規格の拡張規格に適合するときにのみ前記追加の目標参照インデックスの前記値を決定するように構成される、請求項１３に記載のデバイス。
【請求項１６】
前記ビデオコーダは、前記現在の動きベクトルに対応するブロックを含むピクチャを含むシーケンスのシーケンスパラメータセット（ＳＰＳ）、またはビデオパラメータセット（ＶＰＳ）のうちの少なくとも１つにおける前記所定の値を表すデータをコーディングするように構成される、請求項１３のデバイス。
【請求項１７】
前記ビデオコーダは、前記所定の値が非ゼロ値であるときに、前記追加の目標参照インデックス値が参照インデックス０によって識別される参照ピクチャのタイプとは異なるタイプを有する参照ピクチャに対応することを決定するように構成される、請求項１３に記載のデバイス。
【請求項１８】
前記ビデオコーダはビデオデコーダとビデオエンコーダの少なくとも一方を備える、請求項１３に記載のデバイス。
【請求項１９】
ビデオデータをコーディングするためのデバイスであって、
現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定するための手段と、
追加の目標参照インデックスの所定の値を表すデータを含む、スライスヘッダまたはピクチャパラメータセット（ＰＰＳ）のうちの少なくとも１つをコーディングするための手段と、
前記候補動きベクトル予測子に関して、前記現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、前記追加の目標参照インデックスの値が前記所定の値に等しいことを決定するための手段と、
前記現在の動きベクトルの参照インデックスが前記追加の参照インデックスの前記所定の値を有するように、前記現在の動きベクトルをコーディングするための手段と
を備えるデバイス。
【請求項２０】
コーディングするための前記手段が、マージモードを使用して前記現在の動きベクトルをコーディングするための手段を備え、前記デバイスは、
前記候補動きベクトル予測子から前記現在の動きベクトルの動きパラメータを継承するための手段と、ここにおいて、前記継承される動きパラメータは、参照ピクチャリスト識別子と、水平動成分と、垂直動成分とを含み、
前記現在の動きベクトルが参照ピクチャリストにおいて参照する参照ピクチャを識別するために前記追加の目標参照インデックスの前記値を使用するための手段と
を備え、
前記水平動成分、前記垂直動成分、および前記参照ピクチャリストにおいて前記追加の目標参照インデックスによって識別される前記参照ピクチャを使用して現在のブロックをコーディングするための手段をさらに備える、請求項１９に記載のデバイス。
【請求項２１】
前記追加の目標参照インデックスの前記値を決定するための前記手段は、前記現在の動きベクトルを含むビデオデータが基本ビデオコーディング規格の拡張規格に適合するときにのみ前記追加の目標参照インデックスの前記値を決定するための手段を備える、請求項１９に記載のデバイス。
【請求項２２】
前記現在の動きベクトルに対応するブロックを含むピクチャを含むシーケンスのシーケンスパラメータセット（ＳＰＳ）、またはビデオパラメータセット（ＶＰＳ）のうちの少なくとも１つにおける前記所定の値を表すデータをコーディングするための手段をさらに備える、請求項１９のデバイス。
【請求項２３】
前記所定の値が非ゼロ値であるときに、前記追加の目標参照インデックス値が参照インデックス０によって識別される参照ピクチャのタイプとは異なるタイプを有する参照ピクチャに対応することを決定するための手段をさらに備える、請求項１９に記載のデバイス。
【請求項２４】
コーディングのための前記手段は、前記現在の動きベクトルを復号するための手段と前記現在の動きベクトルを符号化するための手段との少なくとも一方を備える、請求項１９のデバイス。
【請求項２５】
命令を記憶したコンピュータ可読記憶媒体であって、前記命令が、実行されたとき、プロセッサに、
現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定することと、
追加の目標参照インデックスの所定の値を表すデータを含む、スライスヘッダまたはピクチャパラメータセット（ＰＰＳ）のうちの少なくとも１つをコーディングすることと、
前記候補動きベクトル予測子に関して、前記現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、前記追加の目標参照インデックスの値が前記所定の値に等しいことを決定することと、
前記現在の動きベクトルの参照インデックスが前記追加の目標参照インデックスの前記所定の値を有するように、前記現在の動きベクトルをコーディングすることと
を行わせるコンピュータ可読記憶媒体。
【請求項２６】
前記プロセッサにコーディングすることを行わせる前記命令が、前記プロセッサにマージモードを使用して前記現在の動きベクトルをコーディングさせる命令を備え、前記プロセッサに、
前記候補動きベクトル予測子から前記現在の動きベクトルの動きパラメータを継承することと、ここにおいて、前記継承される動きパラメータは、参照ピクチャリスト識別子と、水平動成分と、垂直動成分とを含み、
前記現在の動きベクトルが参照ピクチャリストにおいて参照する参照ピクチャを識別するために前記追加の目標参照インデックスの前記値を使用することと
を行わせる命令を備え、
前記プロセッサに、前記水平動成分、前記垂直動成分、および前記参照ピクチャリストにおいて前記追加の目標参照インデックスによって識別される前記参照ピクチャを使用して現在のブロックをコーディングすることを行わせる命令をさらに備える、請求項２５に記載のコンピュータ可読記憶媒体。
【請求項２７】
前記プロセッサに前記追加の目標参照インデックスの前記値を決定することを行わせる前記命令は、前記プロセッサに、前記現在の動きベクトルを含むビデオデータが基本ビデオコーディング規格の拡張規格に適合するときにのみ前記追加の目標参照インデックスの前記値を決定することを行わせる命令を備える、請求項２５に記載のコンピュータ可読記憶媒体。
【請求項２８】
前記プロセッサに、前記現在の動きベクトルに対応するブロックを含むピクチャを含むシーケンスのシーケンスパラメータセット（ＳＰＳ）、またはビデオパラメータセット（ＶＰＳ）のうちの少なくとも１つにおける前記所定の値を表すデータをコーディングすることを行わせる命令をさらに備える、請求項２５に記載のコンピュータ可読記憶媒体。
【請求項２９】
前記所定の値が非ゼロ値であるときに、前記プロセッサに、前記追加の目標参照インデックス値が参照インデックス０によって識別される参照ピクチャのタイプとは異なるタイプを有する参照ピクチャに対応することを決定することを行わせる命令をさらに備える、請求項２５に記載のコンピュータ可読記憶媒体。
【請求項３０】
前記プロセッサに前記動きベクトルをコーディングさせる前記命令は、前記プロセッサに前記動きベクトルを復号することを行わせる命令と前記プロセッサに前記動きベクトルを符号化することを行わせる命令との少なくとも一方を備える、請求項２５に記載のコンピュータ可読記憶媒体。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０３１９
【補正方法】変更
【補正の内容】
【０３１９】
[0152]様々な例が説明されてきた。これらおよび他の例は以下の特許請求の範囲内に入る。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
ビデオデータをコーディングする方法であって、
現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定することと、
前記候補動きベクトル予測子に関して、前記現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、所定の値に等しい追加の目標参照インデックスの値を決定することと、
前記追加の参照インデックスの前記値に少なくとも部分的に基づいて前記現在の動きベクトルをコーディングすることと
を備える方法。
［Ｃ２］
前記追加の目標参照インデックスの前記値を決定することは、前記所定の値に少なくとも部分的に基づいて前記追加の目標参照インデックスが利用可能であるかどうかを決定することをさらに備える、Ｃ１に記載の方法。
［Ｃ３］
前記追加の参照インデックスは、参照ピクチャリストの参照インデックス値０（ｒｅｆＩｄｘＬ０Ａ）と前記参照ピクチャリストの参照インデックス値１（ｒｅｆＩｄｘＬ１Ａ）のうちの一方を備える、Ｃ１に記載の方法。
［Ｃ４］
コーディングは、マージモードを使用して前記現在の動きベクトルをコーディングすることを備え、前記方法は、
前記候補動きベクトル予測子から前記現在の動きベクトルの動きパラメータを継承することと、ここにおいて、前記継承される動きパラメータは、参照ピクチャリスト識別子と、水平動成分と、垂直動成分とを含み、
前記現在の動きベクトルが前記参照ピクチャリストにおいて参照する参照ピクチャを識別するために前記追加の目標参照インデックスの前記値を使用することと
を備え、
前記方法は、前記水平動成分、前記垂直動成分、および前記参照ピクチャリストにおいて前記追加の目標参照インデックスによって識別される前記参照ピクチャを使用して現在のブロックをコーディングすることをさらに備える、Ｃ１に記載の方法。
［Ｃ５］
前記追加の目標参照インデックスの前記値は、前記現在の動きベクトルを含むビデオデータが基本ビデオコーディング規格の拡張規格に適合するときにのみ前記追加の目標参照インデックスの前記値を決定することを備える、Ｃ１に記載の方法。
［Ｃ６］
前記基本ビデオコーディング規格は、高効率ビデオコーディング（ＨＥＶＣ）を備え、前記拡張規格は、ＨＥＶＣのマルチビュービデオコーディング拡張規格（ＭＶ−ＨＥＶＣ）とＨＥＶＣのスケーリング可能なビデオコーディング拡張規格（ＳＨＶＣ）の一方を備える、Ｃ５に記載の方法。
［Ｃ７］
前記所定の値を表すデータをコーディングすることをさらに備え、前記データは、前記現在の動きベクトルに対応するブロックを含むスライスのデータを備える、Ｃ１に記載の方法。
［Ｃ８］
前記所定の値を表す前記データをコーディングすることは、
基本ビデオコーディング規格の拡張規格に適合するスライスのスライスヘッダの一部における前記データをコーディングすることと、
前記基本ビデオコーディング規格に適合する前記スライスの前記スライスヘッダの一部における前記データをコーディングすることとの少なくとも一方を備える、Ｃ７に記載の方法。
［Ｃ９］
前記現在の動きベクトルに対応するブロックを含むピクチャのピクチャパラメータセット（ＰＰＳ）、前記ピクチャを含むシーケンスのシーケンスパラメータセット（ＳＰＳ）、およびビデオパラメータセット（ＶＰＳ）のうちの少なくとも１つにおける前記所定の値を表すデータをコーディングすることをさらに備える、Ｃ１に記載の方法。
［Ｃ１０］
前記所定の値が非ゼロ値であるときに、前記追加の目標参照インデックス値が参照インデックス０によって識別される参照ピクチャのタイプとは異なるタイプを有する参照ピクチャに対応することを決定することをさらに備える、Ｃ１に記載の方法。
［Ｃ１１］
前記動きベクトルをコーディングすることは、前記動きベクトルを復号することを備え、前記方法は、前記動きベクトルを使用して現在のブロックを復号することをさらに備える、Ｃ１に記載の方法。
［Ｃ１２］
前記動きベクトルをコーディングすることは、前記動きベクトルを符号化することを備え、前記方法は、前記動きベクトルを使用して現在のブロックを符号化することをさらに備える、Ｃ１に記載の方法。
［Ｃ１３］
ビデオデータをコーディングするためのデバイスであって、現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定することと、前記候補動きベクトル予測子に関して、前記現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、所定の値と等しい追加の目標参照インデックスの値を決定することと、前記追加の参照インデックスの前記値に少なくとも部分的に基づいて前記現在の動きベクトルをコーディングすることとを行うように構成されたビデオコーダを備えるデバイス。
［Ｃ１４］
前記ビデオコーダは、前記現在の動きベクトルが前記候補動きベクトル予測子から動きパラメータを継承するマージモードを使用して現在の動きベクトルをコーディングするように構成され、前記継承される動きパラメータは、参照ピクチャリスト識別子、水平動成分、および垂直動成分を含み、前記ビデオコーダは、前記現在の動きベクトルが前記参照ピクチャリストにおいて参照する参照ピクチャを識別するために前記追加の目標参照インデックスの前記値を使用することと、前記水平動成分、前記垂直動成分、および前記参照ピクチャリストにおいて前記追加の目標参照インデックスによって識別される前記参照ピクチャを使用して現在のブロックをコーディングすることとを行うように構成される、Ｃ１３のデバイス。
［Ｃ１５］
前記ビデオコーダは、前記現在の動きベクトルを含むビデオデータが基本ビデオコーディング規格の拡張規格に適合するときにのみ前記追加の目標参照インデックスの前記値を決定するように構成される、Ｃ１３に記載のデバイス。
［Ｃ１６］
前記ビデオコーダは、前記所定の値を表すデータをコーディングするように構成され、前記データは、前記現在の動きベクトルに対応するブロックを含むスライスのデータ、前記ブロックを含むピクチャのピクチャパラメータセット（ＰＰＳ）のデータ、前記ピクチャを含むシーケンスのシーケンスパラメータセット（ＳＰＳ）、およびビデオパラメータセット（ＶＰＳ）のうちの少なくとも１つを備える、Ｃ１３のデバイス。
［Ｃ１７］
前記ビデオコーダは、前記所定の値が非ゼロ値であるときに、前記追加の目標参照インデックス値が参照インデックス０によって識別される参照ピクチャのタイプとは異なるタイプを有する参照ピクチャに対応することを決定するように構成される、Ｃ１３に記載のデバイス。
［Ｃ１８］
前記ビデオコーダはビデオデコーダとビデオエンコーダの少なくとも一方を備える、Ｃ１３に記載のデバイス。
［Ｃ１９］
ビデオデータをコーディングするためのデバイスであって、
現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定するための手段と、
前記候補動きベクトル予測子に関して、前記現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、所定の値に等しい追加の目標参照インデックスの値を決定するための手段と、
前記追加の参照インデックスの前記値に少なくとも部分的に基づいて前記現在の動きベクトルをコーディングするための手段と
を備えるデバイス。
［Ｃ２０］
コーディングするための前記手段が、マージモードを使用して前記現在の動きベクトルをコーディングするための手段を備え、前記デバイスは、
前記候補動きベクトル予測子から前記現在の動きベクトルの動きパラメータを継承するための手段と、ここにおいて、前記継承される動きパラメータは、参照ピクチャリスト識別子と、水平動成分と、垂直動成分とを含み、
前記現在の動きベクトルが前記参照ピクチャリストにおいて参照する参照ピクチャを識別するために前記追加の目標参照インデックスの前記値を使用するための手段と
を備え、
前記水平動成分、前記垂直動成分、および前記参照ピクチャリストにおいて前記追加の目標参照インデックスによって識別される前記参照ピクチャを使用して現在のブロックをコーディングするための手段をさらに備える、Ｃ１９に記載のデバイス。
［Ｃ２１］
前記追加の目標参照インデックスの前記値を決定するための前記手段は、前記現在の動きベクトルを含むビデオデータが基本ビデオコーディング規格の拡張規格に適合するときにのみ前記追加の目標参照インデックスの前記値を決定するための手段を備える、Ｃ１９に記載のデバイス。
［Ｃ２２］
前記所定の値を表すデータをコーディングするための手段をさらに備え、前記データは、前記現在の動きベクトルに対応するブロックを含むスライスのデータ、前記ブロックを含むピクチャのピクチャパラメータセット（ＰＰＳ）のデータ、前記ピクチャを含むシーケンスのシーケンスパラメータセット（ＳＰＳ）、およびビデオパラメータセット（ＶＰＳ）のうちの少なくとも１つを備える、Ｃ１９のデバイス。
［Ｃ２３］
前記所定の値が非ゼロ値であるときに、前記追加の目標参照インデックス値が参照インデックス０によって識別される参照ピクチャのタイプとは異なるタイプを有する参照ピクチャに対応することを決定するための手段をさらに備える、Ｃ１９に記載のデバイス。
［Ｃ２４］
コーディングのための前記手段は、前記現在の動きベクトルを復号するための手段と前記現在の動きベクトルを符号化するための手段との少なくとも一方を備える、Ｃ１９のデバイス。
［Ｃ２５］
命令を記憶したコンピュータ可読記憶媒体であって、前記命令が、実行されたとき、プロセッサに、
現在の動きベクトルの候補動きベクトル予測子が参照する参照ピクチャを表す第１の目標参照インデックスを決定することと、
前記候補動きベクトル予測子に関して、前記現在の動きベクトルの時間的動きベクトル予測（ＴＭＶＰ）の間に、所定の値に等しい追加の目標参照インデックスの値を決定することと、
前記追加の参照インデックスの前記値に少なくとも部分的に基づいて前記現在の動きベクトルをコーディングすることと
を行わせるコンピュータ可読記憶媒体。
［Ｃ２６］
前記プロセッサにコーディングすることを行わせる前記命令が、前記プロセッサにマージモードを使用して前記現在の動きベクトルをコーディングさせる命令を備え、前記プロセッサに、
前記候補動きベクトル予測子から前記現在の動きベクトルの動きパラメータを継承することと、ここにおいて、前記継承される動きパラメータは、参照ピクチャリスト識別子と、水平動成分と、垂直動成分とを含み、
前記現在の動きベクトルが前記参照ピクチャリストにおいて参照する参照ピクチャを識別するために前記追加の目標参照インデックスの前記値を使用することと
を行わせる命令を備え、
前記プロセッサに、前記水平動成分、前記垂直動成分、および前記参照ピクチャリストにおいて前記追加の目標参照インデックスによって識別される前記参照ピクチャを使用して現在のブロックをコーディングすることを行わせる命令をさらに備える、Ｃ２５に記載のコンピュータ可読記憶媒体。
［Ｃ２７］
前記プロセッサに前記追加の目標参照インデックスの前記値を決定することを行わせる前記命令は、前記プロセッサに、前記現在の動きベクトルを含むビデオデータが基本ビデオコーディング規格の拡張規格に適合するときにのみ前記追加の目標参照インデックスの前記値を決定することを行わせる命令を備える、Ｃ２５に記載のコンピュータ可読記憶媒体。
［Ｃ２８］
前記プロセッサに前記所定の値を表すデータをコーディングすることを行わせる命令をさらに備え、前記データは、前記現在の動きベクトルに対応するブロックを含むスライスのデータ、前記ブロックを含むピクチャのピクチャパラメータセット（ＰＰＳ）のデータ、前記ピクチャを含むシーケンスのシーケンスパラメータセット（ＳＰＳ）、およびビデオパラメータセット（ＶＰＳ）のうちの少なくとも１つを備える、Ｃ２５に記載のコンピュータ可読記憶媒体。
［Ｃ２９］
前記所定の値が非ゼロ値であるときに、前記追加の目標参照インデックス値が参照インデックス０によって識別される参照ピクチャのタイプとは異なるタイプを有する参照ピクチャに対応することを決定することを行わせる命令をさらに備える、Ｃ２５に記載のコンピュータ可読記憶媒体。
［Ｃ３０］
前記プロセッサに前記動きベクトルをコーディングさせる前記命令は、前記プロセッサに前記動きベクトルを復号することを行わせる命令と前記プロセッサに前記動きベクトルを符号化することを行わせる命令との少なくとも一方を備える、Ｃ２５に記載のコンピュータ可読記憶媒体。
【国際調査報告】
2016506185.tif 000049
2016506185.tif 000050
2016506185.tif 000051