(57)【要約】例えばビデオ・データのようなデータをコーディングするための技法は、第１のスライス・タイプにしたがうビデオ・データの第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素を、初期値セットを用いてコーディングすることを含む。これら技法はさらに、第２のスライス・タイプにしたがうビデオ・データの第２のスライスの、同じタイプのシンタックス要素にしたがう第２のシンタックス要素を、同じ初期値セットを用いてコーディングすることを含む。この例において、第１のスライス・タイプは、第２のスライス・タイプとは異なりうる。さらに、この例において、第１スライス・タイプおよび第２のスライス・タイプのうちの少なくとも１つは、時間的に予測されたスライス・タイプでありうる。例えば、第１および第２のスライス・タイプのうちの少なくとも１つは、一方向のインタ予測（Ｐ）スライス・タイプ、または、双方向のインタ予測（Ｂ）スライス・タイプでありうる。
2015504292.tif 000002
【特許請求の範囲】
【請求項１】
ビデオ・データをコーディングする方法であって、
第１のスライス・タイプにしたがうビデオ・データの第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素を、初期値セットを用いてコーディングすることと、
第２のスライス・タイプにしたがうビデオ・データの第２のスライスの、前記特定のタイプのシンタックス要素にしたがう第２のシンタックス要素を、前記初期値セットを用いてコーディングすることとを備え、
前記第１のスライス・タイプは、前記第２のスライス・タイプとは異なり、前記第１のスライス・タイプと前記第２のスライス・タイプとのうちの少なくとも１つは、時間的に予測されたスライス・タイプである、方法。
【請求項２】
前記ビデオ・データの第１のスライスの第１のスライス・タイプ、および、前記ビデオ・データの第２のスライスの第２のスライス・タイプと、
前記ビデオ・データの第１のスライスの第１の初期インジケータ値、および、前記ビデオ・データの第２のスライスの第２の初期インジケータ値と、
のうちの少なくとも１つに基づいて、前記第１および第２のシンタックス要素をコーディングするために使用される初期値セットを決定することをさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、請求項１に記載の方法。
【請求項３】
１または複数のマッピング関数のうちの第１のマッピング関数を用いて、前記ビデオ・データの第１のスライスの第１の初期インジケータ値および前記第１のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第１のマッピングを決定することと、
前記１または複数のマッピング関数のうちの第２のマッピング関数を用いて、前記ビデオ・データの第２のスライスの第２の初期インジケータ値および前記第２のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第２のマッピングを決定することとをさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、請求項１に記載の方法。
【請求項４】
前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおける前記第１および第２の初期インジケータ値、および、前記１または複数のマッピング関数のうちの少なくとも１つを示す１または複数の値をコーディングすること、をさらに備える請求項３に記載の方法。
【請求項５】
ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記第１および第２の初期インジケータ値と、前記１または複数のマッピング関数のうちの少なくとも１つを決定すること、をさらに備える請求項３に記載の方法。
【請求項６】
１または複数の式と、前記ビデオ・データの第１のスライスの第１の初期インジケータ値、前記ビデオ・データの第２のスライスの第２の初期インジケータ値、および前記第１および第２のスライス・タイプのうちの１または複数に基づいて前記初期値セットを決定することをさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、請求項１に記載の方法。
【請求項７】
前記第１および第２のスライスのおのおのをコーディングするために使用されるフル・セットのコンテキストのうち、コンテキストのサブセットを決定することをさらに備え、
前記コンテキストのサブセットは、前記第１および第２のシンタックス要素の特定のタイプのシンタックス要素をコーディングするために使用される少なくとも１または複数のコンテキストを含み、
前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングすることは、前記初期値セットに基づいて、前記コンテキストのサブセットの、１または複数のコンテキストを初期化することを備える、請求項１に記載の方法。
【請求項８】
前記コンテキストのサブセットは、ビデオ・データのブロックの係数に関連する、１または複数のタイプのシンタックス要素をコーディングするために使用される少なくとも１または複数のコンテキストを含む、請求項７に記載の方法。
【請求項９】
前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおいて、前記コンテキストのサブセットに含まれるフル・セットのコンテキストのうちのコンテキストを示す１または複数の値をコーディングすること、をさらに備える請求項７に記載の方法。
【請求項１０】
前記フル・セットのコンテキストのうち、コンテキストのサブセットを決定することは、ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記コンテキストのサブセットに含まれる、前記フル・セットのコンテキストのうちのコンテキストを決定することを備える、請求項７に記載の方法。
【請求項１１】
前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングすることは、それぞれのシンタックス要素が属するビデオ・データの前記第１および第２のスライスの前記第１および第２のスライス・タイプのうちの対応する１つと、前記初期値セットに基づいて、前記第１および第２のシンタックス要素のうち、少なくとも特定のタイプのシンタックス要素をコーディングするために使用される１または複数のコンテキストのおのおのの初期コンテキスト状態を決定することを備える、請求項１に記載の方法。
【請求項１２】
前記第１および第２のスライス・タイプのうちの対応する１つと、前記初期値セットに基づいて、前記１または複数のコンテキストのおのおのの初期コンテキスト状態を決定することは、前記第１および第２のスライス・タイプのうちの対応する１つに基づいて決定されたＱＰオフセット値と、量子化パラメータ（ＱＰ）値と、前記初期値セットの１または複数の値に基づいて、前記それぞれの初期コンテキスト状態を決定することを備える、請求項１１に記載の方法。
【請求項１３】
前記第１および第２のスライス・タイプのおのおのは、イントラ予測（Ｉ）スライス・タイプ、一方向インタ予測（Ｐ）スライス・タイプ、および双方向インタ予測（Ｂ）スライス・タイプのうちの１つを備える、請求項１に記載の方法。
【請求項１４】
前記初期値セットは、スロープ値および個別の交差値と、スロープ値および交差値の両方を表す単一の値と、のうちの１つを備える、請求項１に記載の方法。
【請求項１５】
前記コーディングは、デコードすることを備え、
前記初期値セットを用いて、前記第１および第２のシンタックス要素をデコードすることは、
受け取られたビットストリームにおいて、１または複数のマッピング関数、前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値、および、前記第１および第２のスライス・タイプのうちの少なくとも１つを受け取ることと、
１または複数のマッピング関数、第１および第２の初期インジケータ値、および、前記受け取られた第１および第２のスライス・タイプのうちの１または複数に基づいて、前記初期値セットを決定することと、
前記初期値セットの１または複数の値に基づいて、コンテキスト適応エントロピ・コーディング処理の１または複数のコンテキストを初期化することと、
前記初期化された１または複数のコンテキストに基づいて、前記コンテキスト適応エントロピ・コーディング処理を実行することによって、前記第１および第２のシンタックス要素をデコードすることと
を含む、請求項１に記載の方法。
【請求項１６】
前記コーディングは、エンコードすることを備え、
前記初期値セットを用いて前記第１および第２のシンタックス要素をエンコードすることは、
１または複数のマッピング関数、前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値、および、前記第１および第２のスライス・タイプのうちの少なくとも１つに基づいて、前記初期値セットを決定することと、
前記初期値セットの１または複数の値に基づいて、コンテキスト適応エントロピ・コーディング処理の１または複数のコンテキストを初期化することと、
前記初期化された１または複数のコンテキストに基づいて、前記コンテキスト適応エントロピ・コーディング処理を実行することによって、前記第１および第２のシンタックス要素をエンコードすることと、
ビットストリームにおいて、１または複数のマッピング関数、前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値、および、前記第１および第２のスライス・タイプのうちの少なくとも１つをエンコードすることと
を含む、請求項１に記載の方法。
【請求項１７】
ビデオ・データをコーディングするように構成された装置であって、
第１のスライス・タイプにしたがうビデオ・データの第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素を、初期値セットを用いてコーディングし、
第２のスライス・タイプにしたがうビデオ・データの第２のスライスの、前記特定のタイプのシンタックス要素にしたがう第２のシンタックス要素を、前記初期値セットを用いてコーディングする
ように構成されたビデオ・コーダを備え、
前記第１のスライス・タイプは、前記第２のスライス・タイプとは異なり、前記第１のスライス・タイプと前記第２のスライス・タイプとのうちの少なくとも１つは、時間的に予測されたスライス・タイプである、装置。
【請求項１８】
前記ビデオ・コーダはさらに、
前記ビデオ・データの第１のスライスの第１のスライス・タイプ、および、前記ビデオ・データの第２のスライスの第２のスライス・タイプと、
前記ビデオ・データの第１のスライスの第１の初期インジケータ値、および、前記ビデオ・データの第２のスライスの第２の初期インジケータ値と、
のうちの少なくとも１つに基づいて、前記第１および第２のシンタックス要素をコーディングするために使用される初期値セットを決定するように構成され、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、請求項１７に記載の装置。
【請求項１９】
前記ビデオ・コーダはさらに、
１または複数のマッピング関数のうちの第１のマッピング関数を用いて、前記ビデオ・データの第１のスライスの第１の初期インジケータ値および前記第１のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第１のマッピングを決定し、
前記１または複数のマッピング関数のうちの第２のマッピング関数を用いて、前記ビデオ・データの第２のスライスの第２の初期インジケータ値および前記第２のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第２のマッピングを決定するように構成され、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、請求項１７に記載の装置。
【請求項２０】
前記ビデオ・コーダはさらに、前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおける前記第１および第２の初期インジケータ値、および、前記１または複数のマッピング関数のうちの少なくとも１つを示す１または複数の値をコーディングするように構成された、請求項１９に記載の装置。
【請求項２１】
前記ビデオ・コーダはさらに、ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記第１および第２の初期インジケータ値と、前記１または複数のマッピング関数のうちの少なくとも１つを決定するように構成された、請求項１９に記載の装置。
【請求項２２】
前記ビデオ・コーダはさらに、前記第１および第２のスライスのおのおのをコーディングするために使用されるフル・セットのコンテキストのうち、コンテキストのサブセットを決定するように構成され、
前記コンテキストのサブセットは、前記第１および第２のシンタックス要素の特定のタイプのシンタックス要素をコーディングするために使用される少なくとも１または複数のコンテキストを含み、
前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングするために、前記ビデオ・コーダは、前記初期値セットに基づいて、コンテキストのサブセットのうちの１または複数のコンテキストを初期化するように構成された、請求項１７に記載の装置。
【請求項２３】
前記ビデオ・コーダはさらに、前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおいて、前記コンテキストのサブセットに含まれるフル・セットのコンテキストのうちのコンテキストを示す１または複数の値をコーディングするように構成された、請求項２２に記載の装置。
【請求項２４】
前記フル・セットのコンテキストのうち、コンテキストのサブセットを決定するために、前記ビデオ・コーダは、ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記コンテキストのサブセットに含まれる、前記フル・セットのコンテキストのうちのコンテキストを決定するように構成された、請求項２２に記載の装置。
【請求項２５】
前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングするために、前記ビデオ・コーダは、前記初期値セットと、それぞれのシンタックス要素が属するビデオ・データの第１および第２のスライスの第１および第２のスライス・タイプのうちの対応する１つに基づいて、前記第１および第２のシンタックス要素のうちの、少なくとも特定のタイプのシンタックス要素をコーディングするために使用される１または複数のコンテキストのおのおのの初期コンテキスト状態を決定するように構成された、請求項１７に記載の装置。
【請求項２６】
前記第１および第２のスライス・タイプのうちの対応する１つと、前記初期値セットに基づいて、前記１または複数のコンテキストのおのおのの初期コンテキスト状態を決定するために、前記ビデオ・コーダは、前記第１および第２のスライス・タイプのうちの対応する１つに基づいて決定されたＱＰオフセット値と、量子化パラメータ（ＱＰ）値と、前記初期値セットの１または複数の値に基づいて、前記それぞれの初期コンテキスト状態を決定するように構成された、請求項２５に記載の装置。
【請求項２７】
前記初期値セットは、スロープ値および個別の交差値と、スロープ値および交差値の両方を表す単一の値と、のうちの１つを備える、請求項１７に記載の装置。
【請求項２８】
集積回路と、マイクロプロセッサと、前記ビデオ・コーダを含んでいる無線通信デバイスとのうちの少なくとも１つを備える、請求項１７に記載の装置。
【請求項２９】
ビデオ・データをコーディングするように構成されたデバイスであって、
第１のスライス・タイプにしたがうビデオ・データの第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素を、初期値セットを用いてコーディングする手段と、
第２のスライス・タイプにしたがうビデオ・データの第２のスライスの、前記特定のタイプのシンタックス要素にしたがう第２のシンタックス要素を、前記初期値セットを用いてコーディングする手段とを備え、
前記第１のスライス・タイプは、前記第２のスライス・タイプとは異なり、前記第１のスライス・タイプと前記第２のスライス・タイプとのうちの少なくとも１つは、時間的に予測されたスライス・タイプである、デバイス。
【請求項３０】
前記ビデオ・データの第１のスライスの第１のスライス・タイプ、および、前記ビデオ・データの第２のスライスの第２のスライス・タイプと、  前記ビデオ・データの第１のスライスの第１の初期インジケータ値、および、前記ビデオ・データの第２のスライスの第２の初期インジケータ値と、のうちの少なくとも１つに基づいて、前記第１および第２のシンタックス要素をコーディングするために使用される初期値セットを決定する手段をさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、請求項２９に記載のデバイス。
【請求項３１】
１または複数のマッピング関数のうちの第１のマッピング関数を用いて、前記ビデオ・データの第１のスライスの第１の初期インジケータ値および前記第１のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第１のマッピングを決定する手段と、
前記１または複数のマッピング関数のうちの第２のマッピング関数を用いて、前記ビデオ・データの第２のスライスの第２の初期インジケータ値および前記第２のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第２のマッピングを決定する手段とをさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、請求項２９に記載のデバイス。
【請求項３２】
前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおける前記第１および第２の初期インジケータ値、および、前記１または複数のマッピング関数のうちの少なくとも１つを示す１または複数の値をコーディングする手段、をさらに備える請求項３１に記載のデバイス。
【請求項３３】
ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記第１および第２の初期インジケータ値と、前記１または複数のマッピング関数のうちの少なくとも１つを決定する手段、をさらに備える請求項３１に記載のデバイス。
【請求項３４】
前記第１および第２のスライスのおのおのをコーディングするために使用されるフル・セットのコンテキストのうち、コンテキストのサブセットを決定する手段をさらに備え、
前記コンテキストのサブセットは、前記第１および第２のシンタックス要素の特定のタイプのシンタックス要素をコーディングするために使用される少なくとも１または複数のコンテキストを含み、前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングする手段は、前記初期値セットに基づいて、前記コンテキストのサブセットの、１または複数のコンテキストを初期化する手段を備える、請求項２９に記載のデバイス。
【請求項３５】
前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおいて、前記コンテキストのサブセットに含まれるフル・セットのコンテキストのうちのコンテキストを示す１または複数の値をコーディングする手段、をさらに備える請求項３４に記載のデバイス。
【請求項３６】
前記フル・セットのコンテキストのうち、コンテキストのサブセットを決定する手段は、ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記コンテキストのサブセットに含まれる、前記フル・セットのコンテキストのうちのコンテキストを決定する手段を備える、請求項３４に記載のデバイス。
【請求項３７】
前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングする手段は、それぞれのシンタックス要素が属するビデオ・データの前記第１および第２のスライスの前記第１および第２のスライス・タイプのうちの対応する１つと、前記初期値セットに基づいて、前記第１および第２のシンタックス要素のうち、少なくとも特定のタイプのシンタックス要素をコーディングするために使用される１または複数のコンテキストのおのおのの初期コンテキスト状態を決定する手段を備える、請求項２９に記載のデバイス。
【請求項３８】
前記第１および第２のスライス・タイプのうちの対応する１つと、前記初期値セットに基づいて、前記１または複数のコンテキストのおのおのの初期コンテキスト状態を決定する手段は、前記第１および第２のスライス・タイプのうちの対応する１つに基づいて決定されたＱＰオフセット値と、量子化パラメータ（ＱＰ）値と、前記初期値セットの１または複数の値に基づいて、前記それぞれの初期コンテキスト状態を決定する手段を備える、請求項３７に記載のデバイス。
【請求項３９】
前記初期値セットは、スロープ値および個別の交差値と、スロープ値および交差値の両方を表す単一の値と、のうちの１つを備える、請求項２９に記載のデバイス。
【請求項４０】
実行された場合、１または複数のプロセッサに対して、ビデオ・データをコーディングさせるための命令群を格納したコンピュータ読取可能な記憶媒体であって、
前記命令群は、前記１または複数のプロセッサに対して、
第１のスライス・タイプにしたがうビデオ・データの第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素を、初期値セットを用いてコーディングさせ、
第２のスライス・タイプにしたがうビデオ・データの第２のスライスの、前記特定のタイプのシンタックス要素にしたがう第２のシンタックス要素を、前記初期値セットを用いてコーディングさせ、
前記第１のスライス・タイプは、前記第２のスライス・タイプとは異なり、前記第１のスライス・タイプと前記第２のスライス・タイプとのうちの少なくとも１つは、時間的に予測されたスライス・タイプである、コンピュータ読取可能な記憶媒体。
【請求項４１】
前記１または複数のプロセッサに対して、
前記ビデオ・データの第１のスライスの第１のスライス・タイプ、および、前記ビデオ・データの第２のスライスの第２のスライス・タイプと、
前記ビデオ・データの第１のスライスの第１の初期インジケータ値、および、前記ビデオ・データの第２のスライスの第２の初期インジケータ値と、
のうちの少なくとも１つに基づいて、前記第１および第２のシンタックス要素をコーディングするために使用される初期値セットを決定させるための命令群をさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、請求項４０に記載のコンピュータ読取可能な記憶媒体。
【請求項４２】
前記１または複数のプロセッサに対して、
１または複数のマッピング関数のうちの第１のマッピング関数を用いて、前記ビデオ・データの第１のスライスの第１の初期インジケータ値および前記第１のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第１のマッピングを決定させ、
前記１または複数のマッピング関数のうちの第２のマッピング関数を用いて、前記ビデオ・データの第２のスライスの第２の初期インジケータ値および前記第２のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第２のマッピングを決定させるための命令群をさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、請求項４０に記載のコンピュータ読取可能な記憶媒体。
【請求項４３】
前記１または複数のプロセッサに対して、前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおける前記第１および第２の初期インジケータ値、および、前記１または複数のマッピング関数のうちの少なくとも１つを示す１または複数の値をコーディングさせるための命令群をさらに備える、請求項４２に記載のコンピュータ読取可能な記憶媒体。
【請求項４４】
前記１または複数のプロセッサに対して、ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記第１および第２の初期インジケータ値と、前記１または複数のマッピング関数のうちの少なくとも１つを決定させるための命令群をさらに備える、請求項４２に記載のコンピュータ読取可能な記憶媒体。
【請求項４５】
前記１または複数のプロセッサに対して、前記第１および第２のスライスのおのおのをコーディングするために使用されるフル・セットのコンテキストのうち、コンテキストのサブセットを決定させるための命令群をさらに備え、
前記コンテキストのサブセットは、前記第１および第２のシンタックス要素の特定のタイプのシンタックス要素をコーディングするために使用される少なくとも１または複数のコンテキストを含み、
前記１または複数のプロセッサに対して、前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングさせるための命令群は、前記１または複数のプロセッサに対して、前記初期値セットに基づいて、前記コンテキストのサブセットの、１または複数のコンテキストを初期化させるための命令群を備える、請求項４０に記載のコンピュータ読取可能な記憶媒体。
【請求項４６】
前記１または複数のプロセッサに対して、前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおいて、前記コンテキストのサブセットに含まれるフル・セットのコンテキストのうちのコンテキストを示す１または複数の値をコーディングさせるための命令群、をさらに備える請求項４５に記載のコンピュータ読取可能な記憶媒体。
【請求項４７】
前記１または複数のプロセッサに対して、前記フル・セットのコンテキストのうち、コンテキストのサブセットを決定させるための命令群は、前記１または複数のプロセッサに対して、ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記コンテキストのサブセットに含まれる、前記フル・セットのコンテキストのうちのコンテキストを決定させるための命令群を備える、請求項４５に記載のコンピュータ読取可能な記憶媒体。
【請求項４８】
前記１または複数のプロセッサに対して、前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングさせるための命令群は、前記１または複数のプロセッサに対して、前記初期値セットと、それぞれのシンタックス要素が属するビデオ・データの第１および第２のスライスの第１および第２のスライス・タイプのうちの対応する１つに基づいて、前記第１および第２のシンタックス要素のうちの、少なくとも特定のタイプのシンタックス要素をコーディングするために使用される１または複数のコンテキストのおのおのの初期コンテキスト状態を決定させるための命令群を備える、請求項４０に記載のコンピュータ読取可能な記憶媒体。
【請求項４９】
前記１または複数のプロセッサに対して、前記第１および第２のスライス・タイプのうちの対応する１つと、前記初期値セットに基づいて、前記１または複数のコンテキストのおのおのの初期コンテキスト状態を決定させるための命令群は、前記１または複数のプロセッサに対して、前記第１および第２のスライス・タイプのうちの対応する１つに基づいて決定されたＱＰオフセット値と、量子化パラメータ（ＱＰ）値と、前記初期値セットの１または複数の値に基づいて、前記それぞれの初期コンテキスト状態を決定させるための命令群を備える、請求項４８に記載のコンピュータ読取可能な記憶媒体。
【請求項５０】
前記初期値セットは、スロープ値および個別の交差値と、スロープ値および交差値の両方を表す単一の値と、のうちの１つを備える、請求項４０に記載のコンピュータ読取可能な記憶媒体。
【発明の詳細な説明】
【優先権主張】
【０００１】
本願は、おのおのの全体内容が参照によって本明細書に組み込まれている、２０１２年１月１９日出願の米国仮出願６１／５８８，６０４と、２０１２年１月１９日出願の米国仮出願６１／５８８，６２６との利益を主張する。
【技術分野】
【０００２】
本開示は、ビデオ・コーディングに関し、特に、ビデオ・コーディング処理によって生成されたビデオ・データのエントロピ・コーディング・スライスに関する。
【背景技術】
【０００３】
デジタル・ビデオ機能は、デジタル・テレビ、デジタル・ダイレクト・ブロードキャスト・システム、無線ブロードキャスト・システム、携帯情報端末（ＰＤＡ）、ラップトップまたはデスクトップ・コンピュータ、タブレット・コンピュータ、ｅブック・リーダ、デジタル・カメラ、デジタル記録デバイス、デジタル・メディア・プレーヤ、ビデオ・ゲーム・デバイス、ビデオ・ゲーム・コンソール、セルラまたは衛星ラジオ電話、いわゆる「スマート・フォン」、ビデオ・テレビ会議デバイス、ビデオ・ストリーミング・デバイス等を含む広範囲のビデオに組み込まれうる。デジタル・ビデオ・デバイスは、例えば、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４、パート１０、アドバンスト・ビデオ・コーディング（ＡＶＣ）、現在開発中の高効率ビデオ・コーディング（ＨＥＶＣ）規格、およびこれら規格の拡張版によって定義された規格において記載されているようなビデオ圧縮技法を実施する。ビデオ・デバイスは、このようなビデオ圧縮技法を実施することによって、デジタル・ビデオ情報をより効率的に送信、受信、エンコード、デコード、および／または、格納しうる。
【０００４】
ビデオ圧縮技法は、ビデオ・シーケンスに固有の冗長性を低減または除去するために、空間（イントラ・ピクチャ）予測、および／または、時間（インタ・ピクチャ）予測を行なう。ブロック・ベースのビデオ・コーディングのために、ビデオ・スライス（すなわち、ビデオ・フレーム、またはビデオ・フレームの一部分）が、ツリーブロック、コーディング・ユニット（ＣＵ）、および／または、コーディング・ノードとも称される複数のビデオ・ブロックへ分割されうる。ピクチャのイントラ・コード（Ｉ）スライスにおけるビデオ・ブロックは、同じピクチャ内の近隣ブロックにおける基準サンプルに対する空間予測を用いてエンコードされる。ピクチャのインタ・コード（ＰまたはＢ）スライスにおけるビデオ・ブロックは、同じピクチャ内の近隣ブロックにおける基準サンプルに対する空間予測を用いるか、別の基準ピクチャにおける基準サンプルに対する時間予測を用いうる。ピクチャは、フレームと称され、基準ピクチャは、基準フレームと称されうる。
【０００５】
空間予測または時間予測の結果、ブロックの予測ブロックがコーディングされるようになる。残余データは、コーディングされるべきオリジナルのブロックと、予測ブロックとの間のピクセル差分を表す。インタ・コード・ブロックは、予測ブロックを形成する基準サンプルのブロックを示す動きベクトルと、コーディングされたブロックと予測ブロックとの差分を示す残余データと、にしたがってエンコードされる。イントラ・コード・ブロックは、イントラ・コーディング・モードと残余データとにしたがってエンコードされる。さらなる圧縮のため、残余データは、ピクセル領域から変換領域へ変換され、残余変換係数となる。残余変換係数は、その後、量子化されうる。量子化された変換係数は、最初に、２次元配列に整えられ、１次元の変換係数ベクトルを生成するためにスキャンされうる。その後、エントロピ・コーディングが適用され、さらなる圧縮が達成されうる。
【発明の概要】
【０００６】
一例として、本開示の技法は、コンテキスト適応エントロピ・コーディング処理を実行することの一部として、ビデオ・データをコーディングするために使用される１または複数のコンテキストのための、初期確率に対応する初期コンテキスト状態を決定すること、を含む。いくつかの例では、コンテキスト適応エントロピ・コーディング処理は、コンテキスト適応二進法コーディング（ＣＡＢＡＣ）処理でありうる。例えば、開示された技法は、コンテキストの初期値に基づいて、１または複数のコンテキストの初期コンテキスト状態を決定すること、を含みうる。特に、この例では、１または複数のコンテキストのための初期値、またはその初期値「セット」が、ビデオ・データに関連付けられたスライス・タイプに基づいて選択されうる。例えば、ビデオ・データに関連付けられたスライス・タイプは、さまざまなスライス・タイプのうちの何れか（例えば、いくつかの例として、イントラ予測（Ｉ）スライス・タイプ、一方向インタ予測（Ｐ）スライス・タイプ、および双方向インタ予測（Ｂ）スライス・タイプ）を含みうる。さらに、この例ではまた、ビデオ・データに関連付けられたスライス・タイプが、前述されたスライス・タイプのうちの２またはそれ以上のうちの任意の１つである場合、同じ初期値セットが選択されうる。その結果、異なるスライス・タイプを有するスライスのシンタックス要素をコーディングするために使用される初期値セットの数が、他の技法と比べて低減されうる。
【０００７】
本開示の１つの例では、ビデオ・データをコーディングする方法は、第１のスライス・タイプにしたがうビデオ・データの第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素を、初期値セットを用いてコーディングすること、を含む。この方法はさらに、第２のスライス・タイプにしたがうビデオ・データの第２のスライスの、特定のタイプのシンタックス要素にしたがう第２のシンタックス要素を、初期値セットを用いてコーディングすること、を含む。この例では、第１のスライス・タイプは、第２のスライス・タイプと異なる。さらに、この例では、第１のスライス・タイプと第２のスライス・タイプとのうちの少なくとも１つは、時間的に予測されたスライス・タイプである。
【０００８】
この開示の別の例では、ビデオ・データをコーディングするように構成された装置が、ビデオ・コーダを含む。この例において、ビデオ・コーダは、第１のスライス・タイプにしたがうビデオ・データの第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素を、初期値セットを用いてコーディングする、ように構成される。ビデオ・コーダはさらに、第２のスライス・タイプにしたがうビデオ・データの第２のスライスの、特定のタイプのシンタックス要素にしたがう第２のシンタックス要素を、初期値セットを用いてコーディングする、ように構成される。この例では、第１のスライス・タイプは、第２のスライス・タイプと異なる。さらに、この例では、第１のスライス・タイプと第２のスライス・タイプとのうちの少なくとも１つは、時間的に予測されたスライス・タイプである。
【０００９】
本開示の別の例では、ビデオ・データをコーディングするように構成されたデバイスは、第１のスライス・タイプにしたがうビデオ・データの第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素を、初期値セットを用いてコーディングする手段、を含む。このデバイスはさらに、第２のスライス・タイプにしたがうビデオ・データの第２のスライスの、特定のタイプのシンタックス要素にしたがう第２のシンタックス要素を、初期値セットを用いてコーディングする手段、を含む。この例では、第１のスライス・タイプは、第２のスライス・タイプと異なる。さらに、この例では、第１のスライス・タイプと第２のスライス・タイプとのうちの少なくとも１つは、テンポラリに予測されたスライス・タイプである。
【００１０】
本開示に記述された技法は、ハードウェア、ソフトウェア、ファームウェア、またはこれらの組み合わせで実施されうる。ハードウェアで実施される場合、装置は、集積回路、プロセッサ、ディスクリート・ロジック、またはこれらの任意の組み合わせで実施されうる。ソフトウェアで実施される場合、ソフトウェアは、例えば、マイクロプロセッサ、特定用途向けＩＣ（ＡＳＩＣ）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）、またはデジタル信号プロセサ（ＤＳＰ）のような１または複数のプロセッサにおいて実施されうる。これら技法を実行するソフトウェアは、最初に、有形のコンピュータ読取可能な媒体に格納されており、プロセッサにロードされ、実行されうる。
【００１１】
別の例では、コンピュータ読取可能な記憶媒体は、実行された場合に、１または複数のプロセッサに対して、ビデオ・データをコーディングさせる命令群を格納する。この例において、これら命令群は、１または複数のプロセッサに対して、第１のスライス・タイプにしたがうビデオ・データの第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素を、初期値セットを用いてコーディングさせる。このコンピュータ読取可能な記憶媒体はさらに、１または複数のプロセッサに対して、第２のスライス・タイプにしたがうビデオ・データの第２のスライスの、特定のタイプのシンタックス要素にしたがう第２のシンタックス要素を、初期値セットを用いてコーディングさせる命令群を備える。この例では、第１のスライス・タイプは、第２のスライス・タイプと異なる。さらに、この例では、第１のスライス・タイプと第２のスライス・タイプとのうちの少なくとも１つは、時間的に予測されたスライス・タイプである。
【００１２】
１または複数の例の詳細が、添付図面および以下の説明において述べられる。他の特徴、目的、および利点が、説明と図面から、および特許請求の範囲から明らかになるだろう。
【図面の簡単な説明】
【００１３】
【図１】図１は、本開示の技法にしたがった、低減された初期値セットを用いたコンテキスト適応エントロピ・コーディングのための技法を実行しうるビデオ・エンコードおよびデコード・システムの例を例示するブロック図である。
【図２】図２は、本開示の技法にしたがった、低減された初期値セットを用いたコンテキスト適応エントロピ・コーディングのための技法を実行しうるビデオ・エンコーダの例を例示するブロック図である。
【図３】図３は、本開示の技法にしたがった、低減された初期値セットを用いたコンテキスト適応エントロピ・コーディングのための技法を実行しうるビデオ・デコーダの例を例示するブロック図である。
【図４】図４は、本開示の技法にしたがった、低減された初期値セットを用いたコンテキスト適応エントロピ・コーディングの方法の例を例示するフローチャートである。
【図５】図５は、本開示の技法にしたがった、低減された初期値セットを用いたコンテキスト適応エントロピ・コーディングの方法の例を例示するフローチャートである。
【図６】図６は、本開示の技法にしたがった、低減された初期値セットを用いたコンテキスト適応エントロピ・コーディングの方法の例を例示するフローチャートである。
【図７】図７は、本開示の技法にしたがった、ビデオ・データの１または複数のスライスに関連付けられた１または複数のシンタックス要素をコーディングする方法の例を例示するフローチャートである。
【発明を実施するための形態】
【００１４】
一般に、本開示の技法は、コンテキスト適応二進法コーディング（ＣＡＢＡＣ）に関する。ＣＡＢＡＣは、一般に、例えば、ビデオ・データのスライスのような、ビデオ・ユニットのコーディング・シンタックス要素をコーディングすることを含む。ＣＡＢＡＣ技法は、特定のタイプのシンタックス要素をコーディングするために使用されるコンテキストが、例えば、同じタイプの以前のシンタックス要素のコーディングのような、履歴的なコーディング動作に基づいて変動しうる（すなわち、適応しうる）という点において「コンテキスト適応」であると考えられうる。本開示の技法は、一般に、さまざまなタイプのシンタックス要素のコンテキストの初期化に向けられている。
【００１５】
一例として、本明細書に開示された技法は、例えばＣＡＢＡＣのようなコンテキスト適応エントロピ・コーディング処理を実行することの一部として、ビデオ・データのさまざまなタイプのシンタックス要素をコーディングするために使用される１または複数のコンテキストのために、初期確率に対応する初期コンテキスト状態を決定すること、を含みうる。例えば、開示された技法は、コンテキストの初期値に基づいて、１または複数のコンテキストの初期コンテキスト状態を決定すること、を含みうる。特に、この例において、１または複数のコンテキストの、初期値、または、その初期値「セット」は、ビデオ・データに関連付けられたスライス・タイプに基づいて選択されうる。例えば、ビデオ・データに関連付けられたスライス・タイプは、さまざまなスライス・タイプのうちの何れか（例えば、いくつかの例として、イントラ予測（Ｉ）スライス・タイプ、一方向インタ予測（Ｐ）スライス・タイプ、および双方向インタ予測（Ｂ）スライス・タイプ）を含みうる。さらに、前述したスライス・タイプのうちの２またはそれ以上のために、同じ初期化値セットが選択されうる。その結果、異なるスライス・タイプを有するスライスのシンタックス要素をコーディングするために使用される初期値セットの数が、他の技法と比べて低減されうる。
【００１６】
言い換えれば、本開示の技法は、各タイプのスライスに個々の初期値セットを割り当てるのではなく、２またはそれ以上のタイプのスライスに、同じ初期値セットを割り当てることを含む。例えば、同じ初期値セットが、Ｉスライス・タイプおよびＰスライス・タイプに割り当てられうる。別の例として、同じ初期値セットが、Ｉスライス・タイプおよびＢスライス・タイプに割り当てられうる。また別の例として、同じ初期値セットが、Ｐスライス・タイプおよびＢスライス・タイプに割り当てられうる。このように、同じ初期値セットが、２つの異なるスライス・タイプに割り当てられうる。そのうちの少なくとも１つは、インタ予測スライス・タイプであり、時間的に予測されたスライス・タイプとも称される。インタ予測すなわち時間的に予測されたスライス・タイプは、Ｐスライス・タイプおよびＢスライス・タイプを含む。
【００１７】
別の例として、これら技法はさらに、前述した方式で、同じ初期値セットを用いてコーディングされたビデオ・データの各スライスについて、それぞれのスライスに関連付けられたスライス・タイプに少なくとも部分的に基づいて、１または複数のコンテキストの初期コンテキスト状態を決定すること、を含む。その結果、初期コンテキスト状態によって示された初期確率の精度が、他の技法と比較して改善されうる。
【００１８】
また別の例として、開示された技法は、ビデオ・データをコーディングするために使用されるコンテキスト適応エントロピ・コーディング処理の１または複数のコンテキストの初期コンテキスト状態を決定するために初期値セットを適応的に選択すること、を含む。特に、この例では、ビデオ・データのスライスをコーディングするために使用される１または複数のコンテキストの初期値セットが、例えば、スライスに関連付けられたスライス・タイプではなく、スライスに関連付けられた初期インジケータ値を用いて示されうる。いくつかのケースでは、ビデオ・コーダが、異なるスライス・タイプを有するビデオ・データの複数のスライスのおのおのについて、同じ初期インジケータ値をコーディングしうる。この結果、おのおののスライス（したがって、異なるスライス・タイプの複数のスライス。これは、少なくとも１つのインタ予測スライスを含みうる）の１または複数のシンタックス要素をコーディングするために、同じ初期値セットを用いるようになる。
【００１９】
あるいは、さらに別の例として、異なるスライス・タイプを有するビデオ・データの複数のスライスの初期インジケータ値が、異なる初期インジケータ値でありうる。その結果、おのおののスライスの１または複数のシンタックス要素をコーディングするために、異なる初期値セットを用いるようになる。この例では、開示された技法は、それぞれのスライスに関連付けられたスライス・タイプではなく、おのおののスライスのための異なる初期インジケータ値に基づいて、１または複数のコンテキストの初期コンテキスト状態を判定することを含む。その結果、初期コンテキスト状態によって示される初期確率の精度が、他の技法と比較して改善されうる。
【００２０】
したがって、開示された技法は、いくつかのケースにおいて、ビデオ・データ（例えば、ビデオ・データの１または複数のブロックについての量子化された変換残余係数値またはその他のシンタックス情報）をより効率的にコーディングすることをイネーブルしうる。例えば、これら技法は、おのおののスライス・タイプのコンテキストについて、例えば、異なるコンテキスト初期値すなわち「初期値セット」を格納するシステムのように、他のシステムと比較して低い複雑度しか有さないコーディング・システムを用いてビデオ・データをコーディングすることをイネーブルしうる。さらに、これら技法は、類似のデータをコーディングするために、例えば、ビデオ・データに関連付けられたスライス・タイプ情報を考慮することなく、ビデオ・データをコーディングするために使用される初期コンテキスト状態を決定することを含む技法、または、スライス・タイプ情報に関わらず、初期コンテキスト状態を適応的に決定することを可能にしない技法、のような他の技法を用いた場合よりも、少ないビットを用いてビデオ・データをコーディングすることをイネーブルしうる。特に、開示された技法を用いた結果、コンテキスト適応エントロピ・コーディング処理の１または複数のコンテキストを初期化することになりうる。これによって、これらコンテキストは、他の技法を用いて初期化されるコンテキストと比較して、相対的により精度の高い確率推定値を含むようになる。このように、本開示の技法を用いた場合、ビデオ・データをコーディングするために使用されるコーディング・システムの複雑さが相対的に低減されうるか、および／または、コーディングされたビデオ・データを含むコーディングされたビットストリームの相対的なビット節約がなされうる。
【００２１】
図１は、本開示の技法にしたがって、低減された初期値セットを用いたコンテキスト適応エントロピ・コーディングのための技法を実行しうるビデオ・エンコードおよびデコード・システムの例を例示するブロック図である。図１に図示されるように、システム１０は、宛先デバイス１４によって後にデコードされるべき、エンコードされるビデオ・データを生成するソース・デバイス１２を含む。ソース・デバイス１２および宛先デバイス１４は、    デスクトップ・コンピュータ、ノートブック（すなわち、ラップトップ）コンピュータ、タブレット・コンピュータ、セット・トップ・ボックス、いわゆる「スマート」フォンのような電話ハンドセット、いわゆる「スマート」パッド、テレビ、カメラ、ディスプレイ・デバイス、デジタル・メディア・プレーヤ、ビデオ・ゲーミング・コンソール、ビデオ・ストリーミング・デバイス等を含む広範なデバイスのうちの何れかを備えうる。いくつかのケースでは、ソース・デバイス１２および宛先デバイス１４が無線通信のために装備されうる。
【００２２】
宛先デバイス１４は、デコードされるべき、エンコードされたビデオ・データを、リンク１６を介して受信しうる。リンク１６は、エンコードされたビデオ・データを、ソース・デバイス１２から宛先デバイス１４へ移動させることができる任意のタイプの媒体またはデバイスを備えうる。一例では、リンク１６は、エンコードされたビデオ・データを、ソース・デバイス１２が、宛先デバイス１４へリアル・タイムで送信することをイネーブルする通信媒体を備えうる。エンコードされたビデオ・データは、例えば無線通信プロトコルのような通信規格にしたがって変調され、宛先デバイス１４へ送信されうる。通信媒体は、例えばラジオ周波数（ＲＦ）スペクトルまたは１または複数の物理送信ラインのような任意の無線または有線の通信媒体を備えうる。通信媒体は、例えば、ローカル・エリア・ネットワーク、広域ネットワーク、またはインターネットのようなグローバル・ネットワークのような、パケット・ベースのネットワークの一部を形成しうる。通信媒体は、ルータ、スイッチ、基地局、または、ソース・デバイス１２から宛先デバイス１４への通信を容易にするために有用でありうるその他任意の機器を含みうる。
【００２３】
あるいは、エンコードされたデータは、出力インタフェース２２から、記憶デバイス２４へ出力されうる。同様に、エンコードされたデータは、入力インタフェース２６によって記憶デバイス２４からアクセスされうる。記憶デバイス２４は、例えば、ハード・ドライブ、Ｂｌｕ−ｒａｙ（登録商標）ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュ・メモリ、揮発性メモリまたは不揮発性メモリ、または、エンコードされたビデオ・データを格納するのに適したその他任意のデジタル記憶媒体のような、分散的にまたはローカルにアクセスされるさまざまなデータ記憶媒体のうちの何れかを含みうる。さらなる例では、記憶デバイス２４は、ソース・デバイス１２によって生成され、エンコードされるビデオを保持するファイル・サーバまたはその他の中間記憶デバイスに相当しうる。宛先デバイス１４は、格納されたビデオ・データに、ストリーミングまたはダウンロードによって、記憶デバイス２４からアクセスしうる。ファイル・サーバは、エンコードされたビデオ・データを格納することと、エンコードされたビデオ・データを宛先デバイス１４へ送信することとが可能な任意のタイプのサーバでありうる。ファイル・サーバの例は、（例えば、ウェブサイト用の）ウェブ・サーバ、ＦＴＰサーバ、ネットワーク・アタッチ・ストレージ（ＮＡＳ：network attached storage）デバイス、またはローカル・ディスク・ドライブを含む。宛先デバイス１４は、エンコードされたビデオ・データに、インターネット接続を含む任意の標準的なデータ接続によってアクセスしうる。これは、無線チャネル（例えば、Ｗｉ−Ｆｉ接続）、有線接続（例えば、ＤＳＬ、ケーブル・モデム等）、または、ファイル・サーバに格納されたエンコードされたビデオ・データにアクセスすることに適したこれら両方の組み合わせを含みうる。エンコードされたビデオ・データの記憶デバイス２４からの送信は、ストリーミング送信、ダウンロード送信、またはこれら両方の組み合わせでありうる。
【００２４】
本開示の技法は、必ずしも無線のアプリケーションまたはセッティングに制限される必要はない。これら技法は、例えば、オーバ・ザ・エア・テレビ・ブロードキャスト、ケーブル・テレビ送信、衛星テレビ送信、例えばインターネットによるストリーミング・ビデオ送信、データ記憶媒体における記憶のためのデジタル・ビデオのエンコーディング、データ記憶媒体に記憶されたデジタル・ビデオのデコーディング、またはその他のアプリケーションのようなさまざまなマルチメディア・アプリケーションの何れかをサポートするビデオ・コーディングに適用されうる。いくつかの例において、システム１０は、例えばビデオ・ストリーミング、ビデオ再生、ビデオ・ブロードキャスト、および／または、ビデオ・テレフォニのようなアプリケーションをサポートする１方向または２方向のビデオ送信をサポートするように構成されうる。
【００２５】
図１の例では、ソース・デバイス１２は、ビデオ・ソース１８、ビデオ・エンコーダ２０、および出力インタフェース２２を含む。いくつかのケースでは、出力インタフェース２２は、変調器／復調器（モデム）および／または送信機を含みうる。ソース・デバイス１２では、ビデオ・ソース１８は、例えば、ビデオ・カメラ、以前にキャプチャされたビデオを含むビデオ・アーカイブ、ビデオ・コンテンツ・プロバイダからビデオを受信するためのビデオ・フィード・インタフェース、および／または、ソース・ビデオとしてコンピュータ・グラフィック・データを生成するためのコンピュータ・グラフィック・システム、または、これらソースの組み合わせのようなビデオ・キャプチャ・デバイスのようなソースを含みうる。一例として、ビデオ・ソース１８がビデオ・カメラであれば、ソース・デバイス１２および宛先デバイス１４は、いわゆるカメラ電話またはビデオ電話を形成しうる。しかしながら、本開示に記載された技法は、一般に、ビデオ・コーディングに適用可能であり、無線アプリケーションおよび／または有線アプリケーションに適用されうる。
【００２６】
キャプチャされたビデオ、プリキャプチャされたビデオ、または、コンピュータによって生成されたビデオが、ビデオ・エンコーダ２０によってエンコードされうる。エンコードされたビデオ・データは、ソース・デバイス１２の出力インタフェース２２を介して宛先デバイス１４にダイレクトに送信されうる。エンコードされたビデオ・データはまた（あるいは、その代わりに）、デコードおよび／または再生のために、宛先デバイス１４またはその他のデバイスによる後のアクセスのために、記憶デバイス２４に格納されうる。
【００２７】
宛先デバイス１４は、入力インタフェース２６、ビデオ・デコーダ３０、およびディスプレイ・デバイス２８を含む。いくつかのケースでは、入力インタフェース２６は、受信機および／またはモデムを含みうる。宛先デバイス１４の入力インタフェース２６は、エンコードされたビデオ・データを、リンク１６を介して、または、記憶デバイス２４から受信する。リンク１６を介して通信された、または、記憶デバイス２４に提供された、エンコードされたビデオ・データは、ビデオ・データをデコードする際に、例えばビデオ・デコーダ３０のようなビデオ・デコーダによって使用されるための、ビデオ・エンコーダ２０によって生成されたさまざまなシンタックス要素を含みうる。このようなシンタックス要素は、通信媒体で送信された、記憶媒体に格納された、または、ファイル・サーバに格納された、エンコードされたビデオ・データとともに含まれうる。
【００２８】
ディスプレイ・デバイス２８は、宛先デバイス１４と統合されうるか、または、宛先デバイス１４の外部にありうる。いくつかの例において、宛先デバイス１４は、統合ディスプレイ装置を含みうる。そして、外部ディスプレイ・デバイスとインタフェースするようにも構成されうる。別の例において、宛先デバイス１４は、ディスプレイ・デバイスでありうる。一般に、ディスプレイ・デバイス２８は、デコードされたビデオ・データをユーザへ表示しうる。そして、例えば、液晶ディスプレイ（ＬＣＤ）、プラズマ・ディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、またはその他のタイプのディスプレイ・デバイスのようなさまざまなディスプレイ・デバイスのうちの何かを備えうる。
【００２９】
ビデオ・エンコーダ２０およびビデオ・デコーダ３０は、例えば、ＩＴＵ−Ｔビデオ・コーディング・エキスパート・グループ（ＶＣＥＧ）およびＩＳＯ／ＩＥＣモーション・ピクチャ・エキスパート・グループ（ＭＰＥＧ）のビデオ・コーディング（ＪＣＴ−ＶＣ）におけるジョイント・コラボレート・チームによって現在開発中の高効率ビデオ・コーディング（ＨＥＶＣ）規格  のようなビデオ圧縮規格にしたがって動作し、ＨＥＶＣテスト・モデル（ＨＭ）に準拠しうる。あるいは、ビデオ・エンコーダ２０およびビデオ・デコーダ３０は、例えば、ＭＰＥＧ  ４、パート１０、アドバンスト・ビデオ・コーディング（ＡＶＣ）とも称されるＩＴＵ−Ｔ  Ｈ．２６４規格のようなその他の独占規格または業界規格、または、これら規格の拡張版にしたがって動作しうる。しかしながら、本開示の技術は、任意の特定のコーディング規格に限定されない。画像圧縮規格の他の例は、ＭＰＥＧ２およびＩＴＵ−Ｔ  Ｈ．２６３を含む。「ＨＥＶＣワーキング・ドラフト８」または「ＷＤ８」と称されるＨＥＶＣ規格の最近のドラフトは、Ｂｒｏｓｓらによる文献であるＪＣＴＶＣ−Ｊ１００３＿ｄ７、「高効率ビデオ・コーディング（ＨＥＶＣ）テキスト仕様書ドラフト８」（High efficiency video coding (HEVC) text specification draft 8）、ＩＴＵ−Ｔ  ＳＧ１６  ＷＰ３およびＩＳＯ／ＩＥＣ  ＪＣＴ１／ＳＣ２９／ＷＧ１１のビデオ・コーディングにおけるジョイント・コラボレート・チーム（ＪＣＴ−ＶＣ） （Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11）、第１０回ミーティング、於スウェーデン、ストックホルム、２０１２年７月１１−２０日開催、に記載されている。これは、２０１２年１０月２日、http://phenix.int-evry.fr/jct/doc_end_user/documents/10_Stockholm/wg11/JCTVC-J1003-v8.zipからダウンロード可能である。
【００３０】
図１に図示されていないが、いくつかの態様では、ビデオ・エンコーダ２０およびビデオ・デコーダ３０はおのおの、オーディオ・エンコーダおよびデコーダと統合されうる。そして、共通のデータ・ストリームまたは個別のデータ・ストリームにおいて、オーディオとビデオとの両方のエンコードを取り扱うために、適切なＭＵＸ−ＤＥＭＵＸユニット、またはその他のハードウェアおよびソフトウェアを含みうる。適用可能であれば、いくつかの例では、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ  Ｈ．２２３マルチプレクサ・プロトコル、または、例えばユーザ・データグラム・プロトコル（ＵＤＰ）のようなその他のプロトコルに準拠しうる。
【００３１】
ビデオ・エンコーダ２０およびビデオ・デコーダ３０はおのおの、例えば、１または複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向けＩＣ（ＡＳＩＣ）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）、ディスクリート・ロジック、ソフトウェア、ハードウェア、ファームウェア、またはそれら任意の組み合わせのようなさまざまな適切なエンコーダ回路またはデコーダ回路のうちの何れかとして実現されうる。これら技法が部分的にソフトウェアで実現される場合、デバイスは、本開示の技法を実行するために、ソフトウェアのための命令群を、適切な非一時的なコンピュータ読取可能な媒体に格納し、１または複数のプロセッサを用いて、ハードウェアにおいて、これら命令群を実行しうる。ビデオ・エンコーダ２０およびビデオ・デコーダ３０のおのおのは、おのおのが、それぞれのデバイスにおける、結合されたエンコーダ／デコーダ（「コーデック」）の一部として統合されうる１または複数のエンコーダまたはデコーダに含まれうる。
【００３２】
ＨＥＶＣ規格化の努力は、ＨＥＶＣテスト・モデル（ＨＭ）と呼ばれるビデオ・コーディング・デバイスの発展モデルに基づく。ＨＭは、例えばＩＴＵ−Ｔ  Ｈ．２６４／ＡＶＣにしたがう既存のデバイスに対するビデオ・コーディング・デバイスのいくつかの追加機能であると考えられる。例えば、Ｈ．２６４は、９つのイントラ予測エンコード・モードを提供するが、ＨＭは、３５のイントラ予測エンコード・モードを提供しうる。
【００３３】
一般に、ＨＭのワーキング・モデルは、ビデオ・モデルまたはピクチャが、輝度サンプルと彩度サンプルとの両方を含む最大コーディング・ユニット（ＬＣＵ：largest coding unit）またはツリーブロックのシーケンスへ分割されうることを記載している。ツリーブロックは、Ｈ．２６４規格のマクロブロックと類似の目的を有する。スライスは、コーディング命令に、連続した多くのツリーブロックを含んでいる。ビデオ・フレームまたはピクチャは、１または複数のスライスへ分割されうる。おのおののツリーブロックは、クワッドツリーにしたがってコーディング・ユニット（ＣＵ）へ分割されうる。例えば、ツリーブロックは、クワッドツリーのルート・ノードとして、４つの子ノードへ分割される一方、おのおのの子ノードが親ノードとなり、別の４つの子ノードへ分割されうる。最後に、分割されない子ノードは、クワッドツリーのリーフ・ノードとして、コーディング・ノード、すなわち、コーディングされたビデオ・ブロックを備える。コーディングされたビットストリームに関連付けられたシンタックス・データは、ツリーブロックが分割されうる最大回数を規定し、また、コーディング・ノードの最小サイズをも規定しうる。
【００３４】
ＣＵは、コーディング・ノードと、コーディング・ノードに関連付けられた変換ユニット（ＴＵ：transform unit）および予測ユニット（ＰＵ：predictionunit）を含む。ＣＵのサイズは、コーディング・ノードのサイズに相当し、正方形の形状でなければならない。ＣＵのサイズは、８×８ピクセルから、最大６４×６４またはそれ以上のピクセルを有するツリーブロックのサイズに及びうる。おのおののＣＵは、１または複数のＰＵおよび１または複数のＴＵを含みうる。ＣＵに関連付けられたシンタックス・データは、例えば、ＣＵを、１または複数のＰＵへ分割することを記述しうる。モードを分割することは、ＣＵがスキップされるか、または、ダイレクト・モード・エンコードされるか、イントラ予測モード・エンコードされるか、インタ予測モード・エンコードされるかで異なりうる。ＰＵは、非正方形の形状に分割されうる。ＣＵに関連付けられたシンタックス・データはまた、例えば、クワッドツリーにしたがって、ＣＵを１または複数のＴＵへ分割することを記述しうる。ＴＵは、正方形の形状または非正方形の形状でありうる。
【００３５】
ＨＥＶＣ規格は、ＴＵにしたがう変換を考慮している。これは異なるＣＵについて異なりうる。ＴＵは、常にそうであるとは限らないが、一般に、分割されたＬＣＵのために定義された所与のＣＵ内のＰＵのサイズに基づいてサイズ化される。ＴＵは、一般に、ＰＵと同じサイズであるか、ＰＵよりも小さい。いくつかの例において、ＣＵに対応する残余サンプルは、「残余クワッドツリー」（ＲＱＴ：residual quad tree）として知られているクワッドツリー構造を用いて、より小さなユニットに細分化されうる。ＲＱＴのリーフ・ノードは、ＴＵと称されうる。ＴＵに関連付けられたピクセル差分値は、変換係数を生成するために変換されうる。これは、量子化されうる。
【００３６】
一般に、ＰＵは、予測処理に関連するデータを含む。例えば、ＰＵが、イントラ・モード・エンコードされた場合、ＰＵは、ＰＵのためのイントラ予測モードを記述するデータを含みうる。別の例として、ＰＵが、インタ・モード・エンコードされた場合、ＰＵは、ＰＵの動きベクトルを定義するデータを含みうる。ＰＵの動きベクトルを定義するデータは、例えば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルの解像度（例えば、１／４ピクセル精度または１／８ピクセル精度）、動きベクトルが示す基準ピクチャ、および／または、動きベクトルの基準ピクチャ・リスト（例えば、リスト０、リスト１、またはリストＣ）、を記述しうる。
【００３７】
一般に、ＴＵは、変換処理および量子化処理のために使用される。また、１または複数のＰＵを有する所与のＣＵは、１または複数のＴＵを含みうる。予測後、ビデオ・エンコーダ２０は、ＰＵに対応する残余値を計算しうる。残余値は、ピクセル差分値を備える。これは、変換係数へ変換され、量子化され、  ＴＵを用いてスキャンされて、エントロピ・コーディングのためのシリアル変換係数が生成される。本開示は一般に、ＣＵのコーディング・ノードを称するために、「ビデオ・ブロック」、または、単に「ブロック」という用語を用いる。いくつかの特定のケースでは、本開示はまた、ＬＣＵまたはＣＵであるツリーブロックを称するために、「ビデオ・ブロック」という用語を用いる。これは、コーディング・ノードと、ＰＵおよびＴＵを含む。
【００３８】
ビデオ・シーケンスは一般に、一連のビデオ・フレームまたはピクチャを含む。グループ・オブ・ピクチャ（ＧＯＰ：group of pictures）は、一般に、１または複数のビデオ・ピクチャからなる一連のビデオ・ピクチャを備える。ＧＯＰは、ＧＯＰのヘッダ、ピクチャの１または複数のヘッダ、または別の何れかに、シンタックス・データを含みうる。これは、ＧＯＰに含まれるピクチャの数を記述している。ピクチャのおのおののスライスは、それぞれのスライスのためのエンコード・モードを記述するスライス・シンタックス・データを含みうる。ビデオ・エンコーダ２０は一般に、ビデオ・データをエンコードするために、個々のビデオ・スライス内のビデオ・ブロックに対して動作する。ビデオ・ブロックは、ＣＵ内のコーディング・ノードに対応しうる。ビデオ・ブロックは、固定サイズまたは可変サイズを有しうる。そして、指定されたコーディング規格によってサイズが異なりうる。
【００３９】
例として、ＨＭは、さまざまなＰＵサイズにおける予測をサポートする。特定のＣＵのサイズが２Ｎ×２Ｎであると仮定すると、ＨＭは、２Ｎ×２ＮまたはＮ×ＮであるＰＵサイズではイントラ予測を、２Ｎ×２Ｎ、２Ｎ×Ｎ、Ｎ×２Ｎ、またはＮ×Ｎである対称なＰＵサイズではインタ予測をサポートする。ＨＭはまた、２Ｎ×ｎＵ、２Ｎ×ｎＤ、ｎＬ×２Ｎ、およびｎＲ×２ＮのＰＵサイズにおけるインタ予測のために、非対称分割をサポートする。非対称分割では、ＣＵの１つの方向が分割されないが、他の方向が２５％および７５％へ分割される。２５％分割に対応するＣＵ部分は、“Ｕｐ”、“Ｄｏｗｎ”、“Ｌｅｆｔ”、または“Ｒｉｇｈｔ”を示すインジケーションが続く“ｎ”によって示される。したがって、例えば、“２Ｎ×ｎＵ”は、トップにおいて２Ｎ×０．５Ｎ  ＰＵで、ボトムにおいて２Ｎ×１．５Ｎ  ＰＵを用いて水平的に分割される２Ｎ×２Ｎ  ＣＵを称する。
【００４０】
本開示では、“Ｎ×Ｎ”および“ＮバイＮ”は、例えば１６×１６ピクセルまたは１６バイ１６ピクセルのように、垂直寸法および水平寸法に関するビデオ・ブロックのピクセル寸法を称するために交換可能に使用されうる。一般に、１６×１６ブロックは、垂直方向に１６ピクセル（ｙ＝１６）と、水平方向に１６ピクセル（ｘ＝１６）を有するだろう。同様に、Ｎ×Ｎブロックは、一般に、垂直方向においてＮ個のピクセル、水平方向においてＮ個のピクセルを有する。ここで、Ｎは、負ではない正数値を表す。ブロックにおけるピクセルは、行と列とで構成されうる。さらに、ブロックは、必ずしも、垂直方向と同じ数のピクセルを、水平方向に有する必要はない。例えば、ブロックは、Ｎ×Ｍピクセルを備えうる。ここで、Ｍは、必ずしもＮに等しくはない。
【００４１】
ＣＵのＰＵを用いたイントラ予測コーディングまたはインタ予測コーディングの後、ビデオ・エンコーダ２０は、ＣＵのＴＵの残余データを計算しうる。ＰＵは、（ピクセル領域とも称される）空間領域にピクセル・データを備えうる。そして、ＴＵは、例えば、ディスクリート・コサイン変換（ＤＣＴ）、整数変換、ウェーブレット変換、または、残余ビデオ・データへの概念的に類似の変換、のような変換の適用後、変換領域に係数を備えうる。残余データは、エンコードされていないピクチャのピクセルと、ＰＵに対応する予測値との間のピクセル差分に対応しうる。ビデオ・エンコーダ２０は、ＣＵのための残余データを含むＴＵを生成し、その後、ＴＵを変換して、ＣＵのための変換係数を生成する。
【００４２】
変換係数を生成するいずれの変換後も、ビデオ・エンコーダ２０は、変換係数の量子化を実行しうる。量子化は一般に、変換係数が量子化され、恐らくは、さらなる圧縮によって、これら係数を表すために使用されるデータ量が低減される処理を称する。この量子化処理は、これら係数のうちのいくつかまたはすべてに関連付けられたビット・デプスを低減しうる。例えば、ｎ−ビット値は、量子化中に、ｍビット値に丸められうる。ここで、ｎは、ｍよりも大きい。
【００４３】
いくつかの例において、ビデオ・エンコーダ２０は、量子化された変換係数をスキャンするために、予め定義されたスキャニング、または、「スキャン」順を利用し、エントロピ・エンコードされうるシリアル・ベクトルが生成されうる。別の例では、ビデオ・エンコーダ２０は、適応性スキャンを実行しうる。１次元ベクトルを生成するために、量子化された変換係数がスキャンされた後、ビデオ・エンコーダ２０は、例えば、  コンテキスト適応可変長コーディング、（ＣＡＶＬＣ）、コンテキスト適応二進法コーディング、（ＣＡＢＡＣ）、シンタックス・ベース・コンテキスト適応二進法コーディング（ＳＢＡＣ）、確率インタバル分割エントロピ（ＰＩＰＥ）コーディング、または、その他のエントロピ・エンコード方法にしたがって、１次元ベクトルをエントロピ・エンコードしうる。ビデオ・エンコーダ２０はさらに、ビデオ・データをデコードする際にビデオ・デコーダ３０によって用いられるために、エンコードされたビデオ・データに関連付けられたシンタックス要素をエントロピ・エンコードしうる。
【００４４】
ＣＡＢＡＣを実行するために、ビデオ・エンコーダ２０は、コンテキスト・モデル内のコンテキストを、送信されるべきシンボルへ割り当てうる。コンテキストは、例えば、シンボルの近隣値が、ゼロ値であるか否かに関連しうる。ＣＡＶＬＣを実行するために、ビデオ・エンコーダ２０は、送信されるべきシンボルのために、可変長コードを選択しうる。ＶＬＣにおけるコードワードは、相対的に短いコードが、より確率の高いシンボルに対応する一方、相対的に長いコードが、より確率の低いシンボルに対応するように構築されうる。このように、ＶＬＣの使用は、例えば、送信されるべきおのおののシンボルについて、等しい長さのコードワードを使用することに対し、ビット節約を達成しうる。確率決定は、シンボルに割り当てられたコンテキストに基づきうる。
【００４５】
以下は、ビデオ・エンコーダ２０およびビデオ・デコーダ３０が、図２および図３に図示されるようなそのさまざまな構成要素として参照され、より詳細に後述される。前述したように、いくつかのビデオ・コーディング技法によれば、ビデオ・エンコーダ２０では、オリジナルのビデオ・シーケンスのフレームが、長方形の領域、すなわち「ブロック」に分割されうる。これは、イントラ・モード（Ｉモード）コーディングまたはインタ・モード（ＰモードまたはＢモード）コーディングを用いてコーディングされうる。これらブロックは、例えば、ディスクリート・コサイン変換（ＤＣＴ）コーディングのようないくつかのタイプの変換コーディングを用いてコーディングされうる。しかしながら、純粋な変換ベースのコーディングは、ピクセルのブロック間相関を考慮せずに、特定のブロック内のピクセル間相関を低減するのみであり、送信のために、未だに、比較的高いビット・レートをもたらしうる。さらに、いくつかのデジタル画像コーディング規格もまた、ブロック間のピクセル値の相関を低減しうるいくつかの方法を開発しうる。
【００４６】
一般に、Ｐモードでエンコードされたブロックは、以前にコーディングされ、送信されたフレームのうちの１つから予測される。ブロックの予測情報は、二次元（２Ｄ）動きベクトルによって表わされる。Ｉモードでエンコードされたブロックについては、予測ブロックは、同じフレーム内の既にエンコードされた近隣ブロックからの空間予測を用いて生成される。予測誤差、すなわち、エンコードされているブロックと、予測ブロックとの間の差分は、いくつかのディスクリート変換の、重み付けられた基本関数のセットとして表される。この変換は、一般に、Ｎ×Ｎブロック・ベースで実行される。重み、すなわち、変換係数が、続いて量子化されうる。量子化は、情報の損失をもたらすので、量子化された係数は、オリジナルの係数よりも低い精度しか持たない。
【００４７】
量子化された変換係数は、動きベクトルおよびいくつかの制御情報とともに、完全にコーディングされたシーケンス表示を形成し、シンタックス要素と称される。ビデオ・エンコーダ２０からビデオ・デコーダ３０への送信に先立って、すべてのシンタックス要素は、これらの表示のために必要とされるビット数をさらに低減できるように、エントロピ・コーディングされる。
【００４８】
ビデオ・デコーダ３０は、先ず、ビデオ・エンコーダ２０を参照して前述されたものと同じ方式で予測ブロックを構築し、さらに、（残余ブロックによって表される）圧縮された予測誤差を予測ブロックへ加えることによって、現在のフレームにおけるブロックを得る。圧縮された予測誤差は、量子化された係数を用いて、変換ベースの関数を重み付けることによって得られる。再構築されたフレームとオリジナルのフレームとの間の差分は、再構築誤差と呼ばれる。
【００４９】
本開示は、例えばＣＡＢＡＣ処理のようなコンテキスト適応エントロピ・コーディング処理を実行することの一部として、ビデオ・データをコーディングするために使用されるコンテキストの、初期コンテキスト状態、すなわち初期確率を決定するための技法に関する。算術的なコーディングは、高いコーディング効率を有する多くの圧縮アルゴリズムで使用されるエントロピ・コーディングの形態をとる。なぜなら、非整数長さのコードワードにシンボルをマップすることができるからである。算術的なコーディング・アルゴリズムの例は、Ｈ．２６４／ＡＶＣにおいて使用されるコンテキスト・ベースの（または、「コンテキスト適応」）二進法コーディング（ＣＡＢＡＣ）である。
【００５０】
一般に、ＣＡＢＡＣを用いてデータ・シンボルをコーディングすることは、以下のステップのうちの１または複数を含む。
【００５１】
（１）２値化：コーディングされるシンボルが非二進数値であれば、例えばビデオ・エンコーダ２０またはビデオ・デコーダ３０のようなビデオ・コーダは、このシンボルを、いわゆる「ビン」のシーケンスにマップする。おのおののビンは、「０」または「１」の値を有しうる。  
（２）コンテキスト割当：ビデオ・コーダは、おのおののビンを（規則的なモードで）コンテキストに割り当てる。例えば、ビデオ・コーダは、以前にエンコードされたシンボルの値、またはビン数のような、ビンのために利用可能な情報に基づいて、所与のビンのコンテキストがどのようにして計算されるべきであるかを決定するために、コンテキスト・モデルを用いる。  
（３）ビン・エンコード：例えば、ビデオ・エンコーダ２０のような算術的なエンコーダが、ビンをエンコードする。ビンをエンコードするために、算術的なエンコーダ（例えば、ビデオ・エンコーダ２０）は、ビンの値が“０”に等しい確率、および、ビンの値が“１”に等しい確率のようなビンの値の確率を入力として用いる。おのおののコンテキストの（推定された）確率は、「コンテキスト状態」と呼ばれる整数値によって表される。おのおののコンテキストは、状態を有しているので、この状態（すなわち、推定された確率）は、１つのコンテキストに割り当てられたビンのものと同じであり、コンテキスト毎に異なる。  
（４）状態更新：ビデオ・コーダは、選択されたコンテキストの確率（状態）を、実際にコーディングされたビンの値に基づいて更新する（例えば、ビン値が“１”であれば、“１”の確率が高められうる）。
【００５２】
ＣＡＢＡＣ処理を開始する前に、ビデオ・コーダは、初期コンテキスト状態を、おのおののコンテキストへ割り当てうる。現在開発中のＨＥＶＣ規格のバージョン“ＨＭ４．０”およびＨ．２６４におけるおのおののコンテキストに初期コンテキスト状態を割り当てるために線形モデルが用いられている。具体的には、おのおののコンテキストに対して、予め定義されたパラメータである傾き（“ｍ”）と交差（“ｎ”）が存在しうる。これらは、初期値と称されうる。ビデオ・コーダは、以下の式を用いて、特定のコンテキストのための初期コンテキスト状態を導出しうる。  
Ｉｎｔ  ｉＩｎｉｔＳｔａｔｅ＝（（ｍ＊ｉＱＰ）／１６）＋ｎ；                式１  
ｉＩｎｉｔＳｔａｔｅ＝ｍｉｎ（ｍａｘ（１，ｉＩｎｉｔＳｔａｔｅ）、１２６）；式２  
ここで、ｉＱＰは、コーディングされているビデオ・データに関連付けられた量子化パラメータ（しばしば、初期ＱＰと称される）である。ＨＥＶＣのバージョン“ＨＭ  ５．０”では、おのおののコンテキストの初期値は、（Ｈ．２６４およびＨＭ４．０におけるケースのようなｍおよびｎではなく）８ビットの整数値“ｍ８”として表される。そして、ＣＡＢＡＣ初期コンテキスト状態を導出するために、（すなわち、ｍ８値およびｉＱＰ値を用いて）ピース・ワイズの線形関数が使用される。
【００５３】
異なるスライス・タイプ（例えば、Ｉモード、Ｐモード、およびＢモード）については、同じシンタックス要素のために、前述された推定確率は異なりうる。したがって、多くの既存のビデオ圧縮規格および／またはシステムが、異なるスライス・タイプのために、異なるセットの初期値を用いる。その結果、これらの規格および／またはシステムによって用いられる初期値の合計ストレージは、以下のように表わされうる。  
初期値の数＝コンテキストの数＊スライス・タイプの数                        式３
コンテキスト適応エントロピ・コーディング処理の１または複数のコンテキストの初期コンテキスト状態を決定すること（一般に、１または複数のコンテキストを「初期化すること」）に関連する前述したさまざまなアプローチは、いくつかの欠点を有する。例えば、前述された式３における関係によって例示されているように、特定のコンテキスト適応エントロピ・コーディング処理の初期値の数（例えば、前述された式３の「初期値の数」）は、比較的大きくなり、相当な量のデータ・ストレージを必要としうる。
【００５４】
本開示は、いくつかのケースでは、前述された欠点のうちのいくつかを低減または除去しうるいくつかの技法を記述する。例えば、本開示は、同じ、または「共通の」初期値（または初期値「セット」）を用いて、異なるスライス・タイプを有するビデオ・データのスライスのシンタックス要素のコンテキストの初期化を可能にすることによって、コンテキスト適応エントロピ・コーディング処理の初期値のために格納されるデータの量を低減するために使用されうるいくつかの技法を提供する。言い換えれば、開示された技法は、異なるスライス・タイプ間で１または複数の初期値セットを「共有」することによって、異なるスライス・タイプを有するビデオ・データのスライスをコーディングすることをイネーブルしうる。
【００５５】
一例として、例えば、ＳｌｉｃｅＴｙｐｅ＿０、…、ＳｌｉｃｅＴｙｐｅ＿Ｍ−１のような「Ｍ」個の異なるスライス・タイプと、例えば、ＩｎｉｔｉａｌｉｚａｔｉｏｎＳｅｔ＿０、…、ＩｎｉｔｉａｌｉｚａｔｉｏｎＳｅｔ＿Ｎ−１のような「Ｎ」個の初期値のセットとが使用されうる。異なるスライス・タイプを、異なる初期値セットへマップするために、例えば、“ＩｎｉｔｉａｌｉｚａｔｉｏｎＳｅｔ＿ｋ＝ｆ（ＳｌｉｃｅＴｙｐｅ＿ｉ））”のようなマッピングまたは「マッピング関数」が定義されうる。例えば、複数のスライス・タイプが同じ初期値セットにマップされた場合、前述されたデータ・ストレージ節約が達成されうる。
【００５６】
いくつかの例では、３つの異なるスライス・タイプ（例えば、Ｉモード、Ｐモード、およびＢモード）と、２つの初期値セット、例えば、Ｓｅｔ１およびＳｅｔ２のみが使用されうる。これらの例において、Ｉモード・スライスおよびＢモード・スライスが、初期値Ｓｅｔ１を使用し、Ｐモード・スライスが、初期値Ｓｅｔ２を使用しうる。他の例では、Ｐモード・スライスおよびＢモード・スライスが、初期値Ｓｅｔ１を使用し、Ｂモード・スライスが、初期値Ｓｅｔ２を使用するという具合である。さらに別の例では、３つのスライス・タイプと１つの初期値セットのみが使用されうる。これらの例では、３つのスライス・タイプ（すなわち、Ｉモード、Ｐモード、およびＢモード）はすべて、同じ初期値セットを使用しうる。
【００５７】
別の例として、前述したマッピング関数（すなわち、スライスの１または複数のシンタックス要素をコーディングするために使用される初期値セットへ、ビデオ・データのスライスのスライス・タイプをマップするために使用されるマッピング関数）は、予め定義されているか、または、「固定」されており、例えば、ビデオ・エンコーダ２０とビデオ・デコーダ３０との両方に既知でありうる。あるいは、マッピング関数は、ユーザ指定されるか、および／または、  例えば、適応パラメータ・セット（ＡＰＳ）、ピクチャ・パラメータ・セット（ＰＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、ビデオ・パラメータ・セット（ＶＰＳ）、スライス・ヘッダ、フレーム・ヘッダ、シーケンス・ヘッダ等のようないくつかの高レベルなシンタックス情報を用いて、ビデオ・デコーダ３０へ明示的にシグナルされうる。別の例では、マッピング関数は、適応的でありうる。これによって、例えば、マッピング関数は、ビデオ・データに関連付けられた、例えば、ＱＰ、フレーム解像度、ＧＯＰ構造、またはその他の情報のような、ビデオ・データに関連付けられた「サイド」情報に依存するようになりうる。
【００５８】
さらに別の例として、以前の例を参照して前述された技法は、すべてのコンテキストのうちのサブセットにのみ適合しうる。例えば、合計コンテキストは、例えば、ＨＭ  ５．０では、ｃｔｘ０からｃｔｘ２５２のような２５３のコンテキストを含みうる。一例として、合計コンテキストのサブセット、例えば、“ＣｔｘＳｕｂｓｅｔ”が定義されうる。そのため、このサブセットに属するコンテキストのみが、前述された方式で、すなわち、異なるスライス・タイプについて、同じ初期値セットを用いて初期化されうる。その他のコンテキスト（すなわち、このサブセットに属さないコンテキスト）の場合、初期値は、異なるスライス・タイプについて異なりうる。このようなコンテキストのサブセットの例は、例えば、最後の有意な係数位置データ（例えば、“ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ”）、有意なマップ・データ（例えば、“ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ”）、レベル・データ（例えば、“ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１”および“ｃｏｅｆｆ＿ｓｉｇｎ＿ｆｌａｇ”）、「１より大きな」フラグ・データ（例えば、“ｌａｒｇｅｒ＿ｔｈａｎ＿ｏｎｅ＿ｆｌａｇ”）、「２より大きな」フラグ・データ（例えば、“「ｌａｒｇｅｒ＿ｔｈａｎ＿ｔｗｏ＿ｆｌａｇ”）等をコーディングするために使用されるコンテキストのような、係数コーディングに関連するコンテキストを含むサブセットである。言い換えれば、これらコンテキストのサブセットは、ビデオ・データに関連付けられたシンタックス要素の１または複数のタイプに対応しうる。
【００５９】
いくつかの例では、コンテキストの別のサブセットが、別の初期値セットに対応しうる。特に、一例として、コンテキストの第１のサブセット（例えば、“ｓｕｂｓｅｔ  １”）は、初期値セットのうちの第１のグループを用いて初期化されうる一方、コンテキストの第２のサブセット（例えば、“ｓｕｂｓｅｔ  ２”）は、初期値セットのうちの、別の第２のグループを用いて初期化されうる。この例では、初期値セットのうちの第１のグループと第２のグループのおのおのが、１または複数の初期値セットを含みうる。
【００６０】
一例において、コンテキストのサブセットの定義は、予め定義されうるか、固定されており、例えば、ビデオ・エンコーダ２０とビデオ・デコーダ３０との両方に知られている。別の例において、コンテキストのサブセットの定義は、ユーザ選択されうるか、および／または、前述した高レベルなシンタックス情報内でビデオ・デコーダ３０へ明示的にシグナルされうる。さらに、コンテキストのサブセットの定義は、適応的でもあり、これによって、例えば、この定義は、前述したサイド情報に依存するようになりうる。
【００６１】
さらに別の例として、例えば、“ＣｔｘＳｕｂｓｅｔｉ”のようなコンテキストの複数のサブセットが定義され、コンテキストの異なるサブセットのための初期値共有のためのマッピング関数が、コンテキストの複数のサブセット間で異なりうる。前述した例に記載されたものと類似の方式で、コンテキストの複数のサブセットの定義が、予め定義されうるか、ユーザ指定されうるか、および／または、前述したように、ビデオ・データに関連付けられたサイド情報に依存しうる。さらに、マッピング関数が、予め定義されうるか、ユーザ指定されうるか、および／または、前述したように、ビデオ・データに関連付けられたサイド情報に依存しうる。
【００６２】
前述した式１および式２に例示されるように、初期ＣＡＢＡＣ状態（“ｉＩｎｉｔＳｔａｔｅ”）値は、初期値（“ＩｎｉｔＶａｌｕｅ”）（例えば、“ｍ”値、“ｎ”値、および“ｍ８”値）と、“ｉＱＰ”値との、（指定子“ｆ”によって示されるような）関数、すなわち、ｉＩｎｉｔＳｔａｔｅ＝ｆ（ＩｎｉｔＶａｌｕｅ、ｉＱＰ）である。開示された技法と一致する別の例として、異なるスライス・タイプに関連付けられているものの、同じ初期値（または、同じ初期値「セット」）を共有するコンテキストの場合、コンテキスト初期化処理は、スライス・タイプにも依存しうる。言い換えれば、コンテキスト初期化処理は、以下の関係を用いて実行されうる。  
ｉＩｎｉｔＳｔａｔｅ＝Ｇ（ＩｎｉｔＶａｌｕｅ，ｉＱＰ，ＳｌｉｃｅＴｙｐｅ）  
ここで、ｉＩｎｉｔＳｔａｔｅは、ＩｎｉｔＶａｌｕｅ、ｉＱＰ、のみならず“ＳｌｉｃｅＴｙｐｅ”の関数（すなわち、指示子“Ｇ”によって示される）である。この例において、ＳｌｉｃｅＴｙｐｅは、コーディングされているビデオ・データに関連付けられたスライス・タイプに対応する。
【００６３】
一例において、“ＱＰＯｆｆｓｅｔ”または“ｄＱＰ”が、おのおののスライス・タイプのために定義され、初期コンテキスト状態は、以下のように計算されうる。  
Ｉｎｔ  ｉＩｎｉｔＳｔａｔｅ＝（（ｍ＊（ｉＱＰ＋ｄＱＰ））／１６）＋ｎ；    式４  
ｉＩｎｉｔＳｔａｔｅ＝ｍｉｎ（ｍａｘ（１，ｉＩｎｉｔＳｔａｔｅ），１２６）；式５
一般に、Ｉモード・スライスのｄＱＰの値は、いくつかの例において、Ｂモード・スライスおよびＰモード・スライスに対するｄＱＰの値よりも小さくなりうる。
【００６４】
この関係の一例が、以下の表１で与えられる。  
【表１】
2015504292.tif 000003
【００６５】
別の例として、異なるスライス・タイプを有する複数のスライスが、同じ初期値セットを共有するが、おのおののスライスのコンテキスト初期化処理が、対応するスライス・タイプにも依存する前述した技法は、前述したものと類似した方式で、すべてのコンテキストのうちのサブセットにのみ適用されうる。
【００６６】
一例として、コンテキストのサブセットの定義は、例えば、ビデオ・エンコーダ２０とビデオ・デコーダ３０との両方に知られているように、予め定義されうる。別の例では、コンテキストのサブセットの定義は、ユーザ選択されうるか、および／または、前述した高レベルのシンタックス情報とともに、ビデオ・デコーダ３０へ明示的にシグナルされうる。さらに、コンテキストのサブセットの定義は、適応的でもあり、この定義は、前述したサイド情報に依存するようになりうる。
【００６７】
前述した技法は一般に、  １または複数のスライスに関連付けられたスライス・タイプ情報に基づいて、初期値セットを選択することによって、ビデオ・データの１または複数のスライスの１または複数のシンタックス要素をコーディングするために使用されるコンテキスト適応エントロピ・コーディング処理の１または複数のコンテキストを初期化することに関連する。前述した技法に加えて、本開示はまた、１または複数のスライスに関連付けられた１または複数の初期インジケータ値に基づいて、初期値セットを選択することによって、ビデオ・データの１または複数のスライスの１または複数のシンタックス要素をコーディングするために使用されるコンテキスト適応エントロピ・コーディング処理の１または複数のコンテキストを初期化するための技法をも含む。
【００６８】
特に、開示された技法にしたがって、ビデオ・エンコーダ２０および／ビデオ・デコーダ３０は、前述した例によって例示されるように、スライス・タイプに厳密に基づいて初期値セットを選択するのではなく、ビデオ・データのスライスの１または複数のシンタックス要素をコーディングするために使用される１または複数のコンテキストを初期化するために、１または複数の初期値セットを適応的に選択するように構成されうる。
【００６９】
一例として、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、前述したように、ビデオ・データに関連付けられたサイド情報に基づいて、ビデオ・データのスライスの初期値セットを推論するように構成されうる。この方式では、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、スライスの１または複数の特徴に基づいて、複数の初期値セットにおける初期値セットを決定しうる。ここで、初期値セットのおのおのは、ビデオ・データのスライスの１または複数のシンタックス要素のそれぞれの初期コンテキスト状態を定義している。この例では、前述した技法とは対照的に、１または複数の特徴は、ビデオ・データのスライスのスライス・タイプを含んでいない。また、この例では、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０はさらに、決定された初期値セットに基づいて、ビデオ・データのスライスの１または複数のシンタックス要素をコーディングするように構成されうる。
【００７０】
別の例として、ビデオ・データのおのおののスライスのために、ビデオ・エンコーダ２０は、送信し、ビデオ・デコーダ３０は、（すなわち、それぞれの「現在の」スライスに関連付けられた１または複数のシンタックス要素をコーディングするために使用される）ビデオ・データのそれぞれのスライスのためにどの特定の初期値セットが使用されるのかを指定するシンタックス要素タイプ“ｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃ”のシンタックス要素（例えば、いわゆる「初期インジケータ値」）を受信しうる。例えば、「Ｎ」個の初期値セット、ｓｅｔ０，ｓｅｔ１，…，ｓｅｔＮ−１があると仮定されたい。この例におけるｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃの値（すなわち、「初期インジケータ」値）の範囲は、“０”から“Ｎ−１”でありうる。（現在のスライスについてコーディング／シグナルされたような）“ｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃ  ｉ”」は、“ｓｅｔｉ”が、現在のスライスのために選択されていることを明示しうる。いくつかの例では、ビデオ・データの特定のスライスの初期値セットの選択は、スライスのスライス・タイプに関連していないかもしれないが、スライスのｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃの値に純粋に依存しうる。選択された初期値セットは、いくつかの例では、ｓｅｔ０，ｓｅｔ１，…ｓｅｔＮ−１のうちの何れか１つでありうる。
【００７１】
いくつかの例において、ｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃの値は、前述した高レベルのシンタックスを用いて明示的に送信されうる。そして、生バイト・シーケンス・ペイロード（ＲＢＳＰ）として送信されうるか、固定長コード、可変長コード、または算術コードを用いてエンコードされうる。
【００７２】
さらに別の例では、前述したものと類似の方式で、シンタックス要素タイプの初期インジケータ値ｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃを参照して前述された技法は、すべてのコンテキストのうちのサブセットにのみ適用されうる。例えば、ＨＭ  ５．０では、以前に説明されたように、ｃｔｘ０からｃｔｘ２５２として指定された２５３のコンテキストがある。２５３のコンテキストのうちの何れかのみを含む、コンテキストのサブセットＣｔｘＳｕｂｓｅｔが、再度定義されうる。この例では、特定のシンタックス要素タイプをコーディングするために使用されるコンテキストが、コンテキストのこのサブセットに属する場合にのみ、コンテキストの初期値セットの選択は、ｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃの値に基づきうる（あるいは、前述したように、サイド情報に基づいて推論される）。その他のコンテキスト（すなわち、このサブセットに属さないコンテキスト）については、初期値または初期値セットは、例えば、Ｈ．２６４／ＡＶＣを参照して前述された技法のような、その他の技法を用いて決定または選択されうる。
【００７３】
一例において、コンテキストのサブセットの定義は、予め定義され、ビデオ・エンコーダ２０とビデオ・デコーダ３０との両方に利用可能でありうる。別の例において、コンテキストのサブセットの定義は、ユーザ選択されうるか、および／または、前述した高レベルのシンタックス内で、ビデオ・デコーダ３０へ明示的にシグナルされうる。コンテキストのサブセットの定義は適応的でもありうる。これは、マッピングが、前述したサイド情報に依存しうることを意味しうる。
【００７４】
いくつかの例において、複数のシンタックス要素（例えば、ｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃ０，ｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃ１，…，ｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃＮ）が送信され、おのおのが、すべてのコンテキストのサブセットに対応しうる。例えば、“ｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃ０”は、コンテキスト“ＣｔｘＳｕｂｓｅｔ０”のサブセットに対応しうる。これは、係数コーディング関連コンテキストを含みうる。“Ｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃ０＝ｉ”は、係数コーディング関連コンテキストが、「ｉ番目」の初期値セットを使用することを示しうる。同様に、その他のｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃ値は、その他のシンタックス要素サブセットに関連しうる。いくつかの例では、サブセットの定義が、予め定義され、ビデオ・エンコーダ２０およびビデオ・デコーダ３０の両方に知られている。その他の例において、サブセットの定義は、ユーザ選択され、前述した高レベルのシンタックス内で、ビデオ・デコーダ３０へ明示的にシグナルされうる。コンテキストのサブセットの定義は、適応的でもあり、例えば、マッピングが、前述したサイド情報に依存しうる。
【００７５】
いくつかの例では、ｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃの値は、例えば、おのおののスライス・ヘッダにおいて、おのおののスライスのために送信されうる。その他の例では、ｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃの値は、例えば、Ｓｌｉｃｅ＿０のような、現在のスライスのために送信されうる。その後、同じタイプのその後のスライスについて、初期値セットの選択は、以前の選択を無効にするためにあるポイントにおいてｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃの新たな値が受信されるまで、Ｓｌｉｃｅ＿０と同じでありうる。このように、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、  現在のスライス後の１または複数の後続するスライスの第１のセットのデータを、現在のスライスのためにシグナルされた複数の初期値セットにおける第１の初期値セットに基づいてコーディングし、複数の初期値セットにおける第２の初期値セットを代表する第２の値をコーディングし、第２の初期値セットに基づいて、１または複数の後続するスライスの第２のセットをコーディングしうる。
【００７６】
いくつかの例において、ｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃの値は、複数のスライス・タイプに影響を有しうる。例えば、以下のスライスの場合、“ｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃ＝１”であれば、ＢスライスおよびＩスライスによって現在使用されている初期値セットが交換されうる。別の例では、ｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃは、初期化値セットのシフトを引き起こしうる。例えば、Ｉスライス、Ｐスライス、およびＢスライスは、現在、それぞれ、初期値セット０，１，２を使用しうる。ｃａｂｃ＿ｉｎｉｔ＿ｉｄｃ＝１を受信した後、Ｉスライス、Ｐスライス、およびＢスライスはそれぞれ、初期セット１，２，０を使用しうる。
【００７７】
さらに、前述したように、いくつかの例では、ｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃの値（すなわち、シンタックス要素タイプに対応する初期インジケータ値ｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃ）は、明示的に送信される必要はない。代わりに、これらの例では、ｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃの値は、前述したサイド情報を用いて推論されうる。
【００７８】
いくつかの例において、前述されたコンテキスト初期化技法は、ＣＡＢＡＣ、ＳＢＡＣ、ＰＩＰＥを含む任意のコンテキスト適応エントロピ・コーディング方法、または、その他のコンテキスト適応エントロピ・コーディング方法と連携して使用されうる。ＣＡＢＡＣは、全体として、本開示において広く記載された技法に関し、例示のみの目的で、限定することなく、本開示において記載される。さらに、既に説明されたように、開示された技法は、一般に、例えば、ビデオ・データに加えて、または、ビデオ・データの代わりに、その他のタイプのデータのコーディングに適用されうる。
【００７９】
一例として、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、前述したように、ビデオ・データの１または複数のブロックをコーディングするように構成されうる。例えば、１または複数のブロックのおのおのは、ビデオ・データのフレームの特定のスライスに対応しうる。この例において、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、初期値セットを用いて、第１のスライス・タイプにしたがうビデオ・データの第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素をコーディングするように構成されうる。さらに、この例では、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、その後、初期値セットを用いて、第２のスライス・タイプにしたがうビデオ・データの第２のスライスの、特定のタイプのシンタックス要素（すなわち、第１のシンタックス要素のものと同じタイプのシンタックス要素）にしたがう第２のシンタックス要素をコーディングするように構成されうる。
【００８０】
いくつかの例では、第１のスライス・タイプは、第２のスライス・タイプとは異なりうる。例えば、前述したように、第１のスライス・タイプは、空間的に予測された“Ｉ”スライス・タイプと、時間的に予測された“Ｐ”スライス・タイプおよび“Ｂ”スライス・タイプとのうちの何れか一方に対応しうる一方、第２のスライス・タイプは、前述したスライス・タイプのうちの他方に対応しうる。さらに、その他の例では、第１のスライス・タイプおよび第２のスライス・タイプのうちの少なくとも１つが、時間的に予測されたスライス・タイプでありうる。例えば、第１のスライス・タイプおよび第２のスライス・タイプのうちの少なくとも１つは、時間的に予測された“Ｐ”スライス・タイプおよび“Ｂ”スライス・タイプのうちの何れか１つに対応しうる。
【００８１】
前述した例によって例示されるように、ビデオ・エンコーダ２０およびビデオ・デコーダ３０のおのおのに起因するコーディング特性に加えて、本開示の技法はまた、ビデオ・データのスライスの、２またはそれ以上の異なるタイプを、共通の初期値セットに関連付けるコンフィギュレーション・データ（例えば、１または複数のシンタックス要素）を生成することを含む。このように、開示された技法は、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０が、コンフィギュレーション・データを解釈し、このコンフィギュレーション・データに基づいて、異なるスライス・タイプを有する２またはそれ以上の異なるスライスのシンタックス要素をコーディングするために同じ初期値セットを用いることをイネーブルしうる。
【００８２】
この方式では、本開示の技法は、第１のスライスおよび第２のスライスの第１のシンタックス要素および第２のシンタックス要素をコーディング（すなわち、エンコードおよび／またはデコード）するために、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０が、同じ、または、共通の初期値セットを用いることをイネーブルすることによって、例えばビデオ・データのようなデータをコーディングするためにビデオ・エンコーダ２０および／またはビデオ・デコーダ３０を用いる場合、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０の複雑さを低減しうる（例えば、処理および／またはストレージ・リソースを簡素化し、または、その使用量を低減しうる）。
【００８３】
さらに、開示された技法は、ビデオ・エンコーダ２０および／またはビデオ・デコーダが、データをより効率的にコーディングすることをイネーブルしうる。例えば、これら技法は、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０が、データに関連付けられたスライス・タイプ情報、あるいは、データに関連付けられた１または複数の初期インジケータ値に基づいて、データをコーディングするために使用されるコンテキスト適応エントロピ・コーディング処理（例えば、ＣＡＢＡＣ処理）の１または複数のコンテキストを初期化することをイネーブルしうる。その結果、初期化されると、１または複数のコンテキストは、その他のコンテキスト初期化技法を用いて決定された確率推定値に対して、より正確な確率推定値を含みうる。そのため、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、他の技法と比べて、より効率的に（例えば、より少ないビットを用いて）データをコーディングしうる。
【００８４】
ビデオ・エンコーダ２０およびビデオ・デコーダ３０はおのおの、例えば、１または複数のマイクロプロセッサ、ＤＳＰ、ＡＳＩＣ、ＦＰＧＡ、ディスクリート論理回路、ソフトウェア、ハードウェア、ファームウェア、またはこれらの任意の組み合わせのような、さまざまな適切なエンコーダ回路またはデコーダ回路のうちの何れかとして適切に実現されうる。ビデオ・エンコーダ２０およびビデオ・デコーダ３０のおのおのは、１または複数のエンコーダまたはデコーダに含まれうる。これらの何れかは、結合されたビデオ・エンコーダ／デコーダ（コーデック）の一部として統合されうる。ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０を含む装置は、集積回路（ＩＣ）、マイクロプロセッサ、および／または、例えばセルラ電話のような無線通信デバイスを備えうる。
【００８５】
図２は、本開示の技法と一致して、低減された初期値セットを用いたコンテキスト適応エントロピ・コーディングのための技法を実行しうるビデオ・エンコーダの例を例示するブロック図である。ビデオ・エンコーダ２０は、ビデオ・スライス内で、ビデオ・ブロックのイントラ・コーディングおよびインタ・コーディングを実行しうる。イントラ・コーディングは、所与のビデオ・フレームまたはピクチャ内のビデオにおける空間冗長を低減または除去するために、空間予測に依存する。インタ・コーディングは、ビデオ・シーケンスの隣接するフレームまたはピクチャ内のビデオにおける時間冗長を低減または除去するために、時間予測に依存する。イントラ・モード（Ｉモード）は、いくつかの空間ベースの圧縮モードのうちの何れかを称しうる。例えば一方向予測（Ｐモード）または双方向予測（Ｂモード）のようなインタ・モードは、いくつかの時間ベースの圧縮モードのうちの何れかを称しうる。
【００８６】
図２の例では、ビデオ・エンコーダ２０は、モード選択ユニット４０、動き推定ユニット４２、動き補償ユニット４４、イントラ予測モジュール４６、基準フレーム・メモリ６４、加算器５０、変換モジュール５２、量子化ユニット５４、およびエントロピ・エンコード・ユニット５６を含む。ビデオ・ブロック再構築のために、ビデオ・エンコーダ２０はまた、逆量子化ユニット５８、逆変換ユニット・モジュール６０、および加算器６２を含んでいる。再構築されたビデオからのブロックノイズ・アーティファクトを除去するために、フィルタ・ブロック境界に、デブロッキング・フィルタも含まれうる。
【００８７】
図２に図示されるように、ビデオ・エンコーダ２０は、エンコードされるべきビデオ・スライス内で、現在のビデオ・ブロックを受け取る。スライスは、複数のビデオ・ブロックに分割されうる。モード選択ユニット４０は、誤り結果に基づいて、現在のビデオ・ブロックのために、イントラまたはインタであるコーディング・モードのうちの１つを選択しうる。イントラ・モードまたはインタ・モードが選択されているのであれば、モード選択ユニット４０は、結果として得られたイントラ・コード・ブロックまたはインタ・コード・ブロックを、残余ブロック・データを生成するために加算器５０へ提供し、エンコードされたブロックを、基準ピクチャとして使用するために再構築するために加算器６２へ提供する。イントラ予測モジュール４６は、同じフレームまたはスライス内の１または複数の近隣ブロックに対する現在のビデオ・ブロックのイントラ予測コーディングを、空間圧縮を提供するためにコーディングされるべき現在のブロックとして実行する。動き推定ユニット４２および動き補償ユニット４４は、時間圧縮を提供するために、１または複数の基準ピクチャ内の１または複数の予測ブロックに対する現在のビデオ・ブロックのインタ予測コーディングを実行する。
【００８８】
インタ・コーディングの場合、動き推定ユニット４２は、ビデオ・シーケンスのために予め定められたパターンにしたがって、ビデオ・スライスのインタ予測モードを決定するように構成されうる。予め定められたパターンは、シーケンス内のビデオ・スライスを、Ｐスライス、Ｂスライス、またはＧＰＢスライスとして指定しうる。動き推定ユニット４２および動き補償ユニット４４は、統合されうるが、概念的な目的のために、個別に例示されている。動き推定ユニット４２によって実行される動き推定は、動きベクトルを生成する処理であり、ビデオ・ブロックの動きを推定する。例えば、動きベクトルは、基準ピクチャ内の予測ブロックに対する現在のビデオ・フレームまたはピクチャ内のビデオ・ブロックのＰＵの変位を示しうる。
【００８９】
予測ブロックは、ピクセル差分に関してコーディングされるべきビデオ・ブロックのＰＵ近くに一致していることが発見されたブロックである。これは、絶対差分の総和（ＳＡＤ）、平方差分の総和（ＳＳＤ）、またはその他の差分メトリックによって決定されうる。いくつかの例では、ビデオ・エンコーダ２０は、基準フレーム・メモリ６４内に格納された基準ピクチャの整数未満のピクセル位置の値を計算しうる。例えば、ビデオ・エンコーダ２０は、基準ピクチャの１／４ピクセル位置、１／８ピクセル位置、または、その他の分数のピクセル位置の値を計算しうる。したがって、動き推定ユニット４２は、フル・ピクセル位置および分数ピクセル位置に対する動き探索を実行し、分数ピクセル精度を持つ動きベクトルを出力しうる。
【００９０】
動き推定ユニット４２は、ＰＵの位置を、基準ピクチャの予測ブロックの位置と比較することによって、インタ・コード・スライスにおけるビデオ・ブロックのＰＵの動きベクトルを計算する。基準ピクチャは、第１の基準ピクチャ・リスト（リスト０）または第２の基準ピクチャ・リスト（リスト１）から選択されうる。これらの基準ピクチャ・リストのおのおのは、基準フレーム・メモリ６４に格納された１または複数の基準ピクチャを特定する。動き推定ユニット４２は、計算された動きベクトルを、エントロピ・エンコード・ユニット５６および動き補償ユニット４４へ送信する。
【００９１】
動き補償ユニット４４によって実行される動き補償は、動き推定によって決定された動きベクトルに基づいて予測ブロックをフェッチまたは生成することを含みうる。現在のビデオ・ブロックのＰＵの動きベクトルが受け取られると、動き補償ユニット４４は、基準ピクチャ・リストのうちの１つにおいて動きベクトルが示す予測ブロックを位置決めしうる。ビデオ・エンコーダ２０は、予測ブロックのピクセル値を、コーディングされている現在のビデオ・ブロックのピクセル値から引くことによって、残余ビデオ・ブロックを生成する。これは、ピクセル差分値を生成する。ピクセル差分値は、ブロックの残余データを生成し、輝度差分成分と彩度差分成分との両方を含みうる。加算器５０は、この減算演算を実行する構成要素（単数または複数）を表す。動き補償ユニット４４はまた、ビデオ・スライスのビデオ・ブロックをデコードする際に、ビデオ・デコーダ３０によって使用するために、ビデオ・ブロックおよびビデオ・スライスに関連付けられたシンタックス要素を生成しうる。
【００９２】
動き補償ユニット４４が、現在のビデオ・ブロックのための予測ブロックを生成した後、ビデオ・エンコーダ２０が、現在のビデオ・ブロックから予測ブロックを引くことによって、残余ビデオ・ブロックを生成する。残余ブロックにおける残余ビデオ・データは、１または複数のＴＵに含まれ、変換モジュール５２へ適用されうる。変換モジュール５２は、例えば、ディスクリート・コサイン変換（ＤＣＴ）または概念的に類似する変換のような変換を用いて、残余ビデオ・データを、残余変換係数へ変換する。変換モジュール５２は、残余ビデオ・データを、ピクセル領域から、例えば周波数領域のような変換領域へ変換しうる。
【００９３】
変換モジュール５２は、結果として得られた変換係数を量子化ユニット５４へ送信しうる。量子化ユニット５４は、さらにビット・レートを低減するために、この変換係数を量子化する。この量子化処理は、これら係数のうちのいくつかまたはすべてに関連付けられたビット・デプスを低減しうる。量子化の程度は、ＱＰを調節することにより修正されうる。いくつかの例では、その後、量子化ユニット５４は、量子化された変換係数を含むマトリックスのスキャンを実行しうる。あるいは、エントロピ・エンコード・ユニット５６が、このスキャンを実行しうる。
【００９４】
量子化の後、エントロピ・エンコード・ユニット５６は、量子化された変換係数を、エントロピ・エンコードする。例えば、エントロピ・エンコード・ユニット５６は、ＣＡＶＬＣ、ＣＡＢＡＣ、またはその他のエントロピ・エンコード技法を実行しうる。エントロピ・エンコード・ユニット５６によるエントロピ・エンコードの後、エンコードされたビットストリームは、ビデオ・デコーダ３０へ送信されるか、または、ビデオ・デコーダ３０によるその後の送信または取得のためにアーカイブされうる。エントロピ・エンコード・ユニット５６はまた、コーディングされている現在のビデオ・スライスの動きベクトルおよびその他のシンタックス要素をエントロピ・エンコードしうる。
【００９５】
逆量子化ユニット５８および逆変換モジュール６０は、基準ピクチャの基準ブロックとして後に使用するために、ピクセル領域内の残余ブロックを再構築するために、それぞれ、逆量子化および逆変換を適用する。動き補償ユニット４４は、残余ブロックを、基準ピクチャ・リストのうちの１つ内の基準ピクチャのうちの１つの予測ブロックへ加えることによって、基準ブロックを計算しうる。動き補償ユニット４４はまた、動き推定において使用するための整数未満のピクセル値を計算するために、１または複数の補間フィルタを、再構築された残余ブロックに適用しうる。加算器６２は、基準ピクチャ・メモリ６６内に格納するための基準ブロックを生成するために、動き補償ユニット４４によって生成された動き補償予測ブロックへ、再構築された残余ブロックを加える。基準ブロックは、その後のビデオ・フレームまたはピクチャ内のブロックをインタ予測するための基準ブロックとして、動き推定ユニット４２および動き補償ユニット４４によって使用されうる。
【００９６】
いくつかの例において、ビデオ・エンコーダ２０は、例えば、ビデオ・デコーダ３０および／または記憶デバイス２４への、ビットストリームでの送信のために、ビデオ・コーディング処理の間、ビデオ・データのうちの１または複数のブロックをエンコードするように構成されうる。例えば、前述したように、１または複数のブロックが、ビデオ・データの１または複数のスライス内に含まれうる。一例として、ビデオ・エンコーダ２０のエントロピ・エンコード・ユニット５６は、第１のスライス・タイプにしたがうビデオ・データの第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素を、初期値セットを用いてエンコードするように構成されうる。この例において、エントロピ・エンコード・ユニット５６はさらに、第２のスライス・タイプにしたがうビデオ・データの第２のスライスの、特定のタイプのシンタックス要素にしたがう第２のシンタックス要素を、初期値セットを用いてエンコードするように構成されうる。例えば、前述したように、第１のスライス・タイプは、第２のスライス・タイプと異なりうる。さらに、前述したように、第１のスライス・タイプと第２のスライス・タイプとのうちの少なくとも１つは、時間的に予測されたスライス・タイプでありうる。
【００９７】
他の例では、エントロピ・エンコード・ユニット５６はさらに、（１）ビデオ・データの第１のスライスの第１のスライス・タイプと、ビデオ・データの第２のスライスの第２のスライス・タイプ、および（２）ビデオ・データの第１のスライスの第１の初期インジケータ値と、ビデオ・データの第２のスライスの第２の初期インジケータ値、のうちの少なくとも一方に基づいて、第１のシンタックス要素および第２のシンタックス要素をエンコードするために使用される初期値セットを計算するように構成されうる。これらの例において、ビデオ・データの第１および第２のスライスのための、第１および第２の初期インジケータ値のおのおのは、対応するビデオ・データのスライスをコーディングするために使用される特定の初期値セットを示しうる。
【００９８】
いくつかの例において、エントロピ・エンコード・ユニット５６はさらに、１または複数のマッピング関数のうちの第１のマッピング関数を用いて、ビデオ・データの第１のスライスの第１の初期インジケータ値と第１のスライス・タイプのうちの１または複数と、初期値セットと、の間の第１のマッピングを決定するように構成されうる。すなわち、エントロピ・エンコード・ユニット５６は、スライス・タイプから初期値セットへのマッピング、初期インジケータ値から初期値セットへのマッピング、または、スライス・タイプと初期インジケータ値との両方から、初期値セットへのマッピング、を用いて構成されうる。いくつかの例において、エントロピ・エンコード・ユニット５６はさらに、１または複数のマッピング関数のうちの第２のマッピング関数を用いて、ビデオ・データの第２のスライスの第２の初期インジケータ値と第２のスライス・タイプのうちの１または複数と、初期値セットと、の間の第２のマッピングを決定するように構成されうる。さらに、繰り返すが、これらの例では、ビデオ・データの第１および第２のスライスの、第１および第２の初期インジケータ値のおのおのが、ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示しうる。
【００９９】
前述した例では、エントロピ・エンコード・ユニット５６（または、ビデオ・エンコーダ２０の別の構成要素またはユニット）がさらに、１または複数のマッピング関数のうちの少なくとも１つを示す１または複数の値と、ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ＶＰＳ、ＡＰＳ、ＳＰＳ、およびＰＰＳのうちの少なくとも１つにおける第１および第２の初期インジケータ値とをエンコードするように構成されうる。
【０１００】
あるいは、前述した例では、エントロピ・エンコード・ユニット５６はさらに、ユーザ入力と、ビデオ・データに関連付けられたＧＯＰ構造パラメータ、フレーム解像度パラメータ、およびＱＰのうちの１または複数に基づいて、第１および第２の初期インジケータ値と、１または複数のマッピング関数のうちの少なくとも１つを決定するように構成されうる。
【０１０１】
他の例では、エントロピ・エンコード・ユニット５６はさらに、第１および第２のスライスのおのおのをエンコードするために使用されるフル・セットのコンテキストのうちのコンテキストのサブセットを決定するように構成されうる。これらの例において、コンテキストのサブセットは、第１および第２のシンタックス要素のうち、特定のタイプのシンタックス要素をコーディングするために使用される少なくとも１つまたは複数のコンテキストを含みうる。さらに、これらの例において、初期値セットを用いて第１および第２のシンタックス要素をエンコードするために、エントロピ・エンコード・ユニット５６は、初期値セットに基づいて、コンテキストのサブセットの１または複数のコンテキストを初期化するように構成されうる。
【０１０２】
前述した例では、１または複数のマッピング関数と第１および第２の初期インジケータ値を参照して前述したものと同じ方式で、エントロピ・エンコード・ユニット５６（または、ビデオ・エンコーダ２０のその他の構成要素またはユニット）はさらに、ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ＶＰＳ、ＡＰＳ、ＳＰＳ、およびＰＰＳのうちの少なくとも１つにおけるコンテキストのサブセットに含まれるフル・セットのコンテキストのうちのコンテキストを示す１または複数の値をエンコードするように構成されうる。
【０１０３】
いくつかの例ではさらに、１または複数のマッピング関数と第１および第２の初期インジケータ値を参照して前述したものと同じ方式で、エントロピ・エンコード・ユニット５６は、フル・セットのコンテキストのうち、コンテキストのサブセットを決定するために、ユーザ入力と、ビデオ・データに関連付けられたＧＯＰ構造パラメータ、フレーム解像度パラメータ、およびＱＰのうちの１または複数に基づいて、コンテキストのサブセットに含まれているフル・セットのコンテキストのうちのコンテキストを決定するように構成されうる。
【０１０４】
さらに、いくつかの例では、エントロピ・エンコード・ユニット５６は、初期値セットを用いて第１のシンタックス要素および第２のシンタックス要素をエンコードするために、初期値セットと、それぞれのシンタックス要素が属するビデオ・データの第１および第２のスライスの、第１および第２のスライス・タイプのうちの対応する１つとに基づいて、第１および第２のシンタックス要素のうち、少なくとも特定のタイプのシンタックス要素をコーディングするために使用される１または複数のコンテキストのおのおのの初期コンテキスト状態を決定するように構成されうる。これらの例において、ビデオ・エンコーダ２０は、ビデオ・データの第１のスライスの第１のスライス・タイプと、ビデオ・データの第２のスライスの第２のスライス・タイプとに基づいて、初期値セットを決定しうる。
【０１０５】
前述した例では、エントロピ・エンコード・ユニット５６は、初期値セットと、第１および第２のスライス・タイプのうちの対応する１つとに基づいて、１または複数のコンテキストのおのおのの初期コンテキスト状態を決定するために、第１および第２のスライス・タイプのうちの対応する１つに基づいて決定されたＱＰオフセット値と、ＱＰ値と、初期値セットのうちの１または複数の値に基づいて、それぞれの初期コンテキスト状態を決定するように構成されうる。
【０１０６】
前述したように、いくつかの例では、初期値セットは、（１）スロープ値および個別の交差値、および、（２）スロープ値と交差値との両方を表す単一の値、のうちの１つを含みうる。例えば、初期値セットは、いつくかの例では、スロープ値と交差値とからなる少なくとも１つの「ペア」、または、スロープ値と交差値との両方を表す少なくとも１つの単一の値、を含みうる。
【０１０７】
前述した例によって例示されるように、本開示の技法は、ビデオ・エンコーダ２０が、同じまたは共通の初期値セットに基づいて、コンテキスト適応エントロピ・コーディング処理（例えば、ＣＡＢＡＣ処理）を用いて、異なるスライス・タイプを有するビデオ・データの複数のスライスについて、おのおのが同じタイプのシンタックス要素にしたがう複数のシンタックス要素を（例えば、ビデオ・デコーダ３０によるデコードのため、および／または、記憶デバイス２４内への記憶のために）エンコードすることをイネーブルしうる。いくつかの例において、特定のタイプのシンタックス要素は、ビデオ・データの１または複数のブロックのための、１または複数の係数の値、または、その他のシンタックス情報を示すために使用されうる。具体的には、開示された技法によれば、ビデオ・エンコーダ２０は、コンテキストを用いて複数のシンタックス要素のおのおのをエンコードする前に、コンテキスト適応エントロピ・コーディング処理のうちの１または複数のコンテキストのための初期コンテキスト状態を決定する（すなわち、「初期化」する）ために初期値セットを用いうる。その結果、本明細書に開示された技法は、いくつかのケースにおいて、ビデオ・データの複数のスライスのための複数のシンタックス要素をエンコードするために使用されるビデオ・エンコーダ２０の複雑さを低減しうる（例えば、処理および／または格納リソースを単純化しうるか、または、その使用量を低減しうる）。
【０１０８】
さらに、開示された技法は、ビデオ・エンコーダ２０が、例えばビデオ・データのようなデータを、より効率的にエンコードすることをイネーブルしうる。例えば、これら技法は、ビデオ・エンコーダ２０が、データに関連付けられたスライス・タイプ情報に基づいて、あるいは、データに関連付けられた１または複数の初期インジケータ値に基づいて、データをエンコードするために使用されるコンテキスト適応エントロピ・コーディング処理（例えば、ＣＡＢＡＣ処理）のうちの１または複数のコンテキストを初期化することをイネーブルしうる。その結果、１または複数のコンテキストは、初期化されると、その他のコンテキスト初期化技法を用いて決定された確率推定値に対してより正確である確率推定値を含みうる。そのため、ビデオ・エンコーダ２０は、その他の技法と比較して、より効率的に（例えば、より少数のビットを用いて）データをエンコードしうる。
【０１０９】
このように、ビデオ・エンコーダ２０は、第１のスライス・タイプにしたがうビデオ・データの第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素を、初期値セットを用いてコーディングし、第２のスライス・タイプにしたがうビデオ・データの第２のスライスの、特定のタイプのシンタックス要素にしたがう第２のシンタックス要素を、初期値セットを用いてコーディングする、ように構成されたビデオ・コーダの例を示す。ここで、第１のスライス・タイプは、第２のスライス・タイプとは異なり、第１のスライス・タイプと第２のスライス・タイプのうちの少なくとも１つは、時間的に予測されたスライス・タイプである。
【０１１０】
図３は、本開示の技法にしたがって、低減された初期値セットを用いたコンテキスト適応エントロピ・コーディングのための技法を実行しうるビデオ・デコーダの例を例示するブロック図である。図３の例では、ビデオ・デコーダ３０は、エントロピ・デコード・ユニット８０、予測モジュール８２、逆量子化ユニット８８、逆変換モジュール９０、加算器９２、デブロッキング・フィルタ９４、および基準ピクチャ・メモリ９６を含んでいる。予測モジュール８２は、動き補償ユニット８４およびイントラ予測モジュール８６を含んでいる。ビデオ・デコーダ３０は、いくつかの例において、図２からのビデオ・エンコーダ２０に関して記載されたエンコード・パスに一般に相補的なデコード・パスを実行しうる。
【０１１１】
デコード処理中、ビデオ・デコーダ３０は、関連付けられたシンタックス要素とエンコードされたビデオ・スライスのビデオ・ブロックを示す、エンコードされたビデオ・ビットストリームを、ビデオ・エンコーダ２０から受け取る。ビットストリームにおいて表されたビデオ・ブロックが、圧縮されたビデオ・データを含んでいる場合、ビデオ・デコーダ３０のエントロピ・デコード・ユニット８０は、量子化された係数、動きベクトル、およびその他のシンタックス要素を生成するために、ビットストリームをエントロピ・デコードする。エントロピ・デコード・ユニット８０は、動きベクトルおよびその他のシンタックス要素を、予測モジュール８２へ転送する。ビデオ・デコーダ３０は、ビデオ・スライス・レベルおよび／またはビデオ・ブロック・レベルにおいて、シンタックス要素を受け取りうる。
【０１１２】
ビデオ・スライスが、イントラ・コード（Ｉ）スライスとしてコーディングされた場合、予測モジュール８２のイントラ予測モジュール８６は、現在のフレームまたはピクチャの以前にデコードされたブロックからの、シグナルされたイントラ予測モードおよびデータに基づいて、現在のビデオ・スライスのビデオ・ブロックの予測データを生成しうる。ビデオ・フレームが、インタ・コードされた（すなわち、Ｂ、Ｐ、またはＧＰＢ）スライスとしてコーディングされている場合、予測モジュール８２の動き補償ユニット８４は、エントロピ・デコード・ユニット８０から受け取られた動きベクトルおよびその他のシンタックス要素に基づいて、現在のビデオ・スライスのビデオ・ブロックの予測ブロックを生成する。予測ブロックは、基準ピクチャ・リストのうちの１つ内の、基準ピクチャのうちの１つから生成されうる。ビデオ・デコーダ３０は、基準ピクチャ・メモリ９６に格納された基準ピクチャに基づいて、デフォルトの構築技法を用いて、基準フレーム・リスト、リスト０およびリスト１を構築しうる。
【０１１３】
動き補償ユニット８４は、動きベクトルおよびその他のシンタックス要素を解析することによって、現在のビデオ・スライスのビデオ・ブロックの予測情報を決定し、この予測情報を用いて、デコードされている現在のビデオ・ブロックの予測ブロックを生成する。例えば、動き補償ユニット８４は、受け取ったシンタックス要素のうちのいくつかを用いて、ビデオ・スライスのビデオ・ブロック、インタ予測スライス・タイプ（例えば、Ｂスライス、Ｐスライス、またはＧＰＢスライス）、スライスのための基準ピクチャ・リストのうちの１または複数の構築情報、スライスの各インタ・エンコード・ビデオ・ブロックの動きベクトル、スライスの各インタ・コード・ビデオ・ブロックのインタ予測状態、および、現在のビデオ・スライスにおけるビデオ・ブロックをデコードするためのその他の情報、をコーディングするために使用される予測モード（例えば、イントラ予測またはインタ予測）を決定する。
【０１１４】
動き補償ユニット８４はまた、補間フィルタに基づいて、補間を実行しうる。動き補償ユニット８４は、基準ブロックの整数未満ピクセルの補間値を計算するために、ビデオ・ブロックのエンコード中、ビデオ・エンコーダ２０によって使用されるような補間フィルタを使用しうる。動き補償ユニット８４は、受け取られたシンタックス要素から、ビデオ・エンコーダ２０によって使用される補間フィルタを決定し、この補間フィルタを用いて、予測ブロックを生成する。
【０１１５】
逆量子化ユニット８８は、ビットストリームで提供され、エントロピ・デコード・ユニット８０によってデコードされた、量子化された変換係数を逆量子化、すなわちｄｅ  ｑｕａｎｔｉｚｅする。逆量子化処理は、量子化の程度、および同様に、適用されるべき逆量子化の程度を決定するために、ビデオ・スライスにおけるおのおののビデオ・ブロックについて、ビデオ・エンコーダ２０によって計算される量子化パラメータ（ＱＰ）を使用することを含みうる。逆変換モジュール９０は、ピクセル領域における残余ブロックを生成するために、例えば、逆ＤＣＴ、逆整数変換、または、概念的に類似の逆変換処理を、変換係数へ適用する。
【０１１６】
動き補償ユニット８４が、動きベクトルおよびその他のシンタックス要素に基づいて、現在のビデオ・ブロックの予測ブロックを生成した後、ビデオ・デコーダ３０は、逆変換モジュール９０からの残余ブロックと、動き補償ユニット８４によって生成された対応する予測ブロックとを総和することによって、デコードされたビデオ・ブロックを生成する。加算器９２は、この総和演算を実行する構成要素（単数または複数）を表わす。デブロッキング・フィルタ９４は、ブロックノイズ・アーティファクトを除去するために、デコードされたブロックをフィルタするために適用される。所与のフレームまたはピクチャ内の、デコードされたビデオ・ブロックは、その後、基準ピクチャ・メモリ９６に格納される。基準ピクチャ・メモリ９６は、その後の動き補償のために使用される基準ピクチャを格納する。基準ピクチャ・メモリ９６はまた、例えば、図１のディスプレイ・デバイス２８のような、ディスプレイ・デバイスにおける後の表示のために、デコードされたビデオを格納する。
【０１１７】
いくつかの例において、ビデオ・デコーダ３０は、例えば、ビデオ・エンコーダ２０および／または記憶デバイス２４からのビットストリームで受け取られたビデオ・データの１または複数のエンコードされたブロックのような、ビデオ・コーディング処理中のビデオ・データの１または複数のブロックを、デコードするように構成されうる。例えば、ビデオ・エンコーダ２０に関して前述されたような、１または複数のブロックは、ビデオ・データの１または複数のスライス内に含まれうる。一例として、ビデオ・デコーダ３０のエントロピ・デコード・ユニット８０は、第１のスライス・タイプにしたがうビデオ・データの第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素を、初期値セットを用いてデコードするように構成されうる。この例では、エントロピ・デコード・ユニット８０はさらに、第２のスライス・タイプにしたがうビデオ・データの第２のスライスの、特定のタイプのシンタックス要素にしたがう第２のシンタックス要素を、初期値セットを用いてデコードするように構成されうる。例えば、前述されたように、第１のスライス・タイプは、第２のスライス・タイプとは異なりうる。また、前述されたように、第１のスライス・タイプおよび第２のスライス・タイプのうちの少なくとも１つは、時間的に予測されたスライス・タイプでありうる。
【０１１８】
いくつかの例において、エントロピ・デコード・ユニット８０はさらに、（１）ビデオ・データの第１のスライスの第１のスライス・タイプと、ビデオ・データの第２のスライスの第２のスライス・タイプ、および、（２）ビデオ・データの第１のスライスの第１の初期インジケータ値と、ビデオ・データの第２のスライスの第２の初期インジケータ値、のうちの少なくとも１つに基づいて、第１および第２のシンタックス要素をデコードするために使用される初期値セットを決定するように構成されうる。これらの例において、ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示しうる。
【０１１９】
一例として、第１および第２のスライスの、第１および第２の初期インジケータ値のおのおのが、対応するスライスをエンコードするためにビデオ・エンコーダ（例えば、ビデオ・エンコーダ２０）によって使用された初期値セットを示しうる。この例では、ビデオ・デコーダ３０および特定のエントロピ・デコード・ユニット８０は、受け取ったビットストリームにおいて、第１および第２のスライスの第１および第２のスライス・タイプ（または、第１および第２のスライス・タイプを定義するデータ）を示すインジケーションのうちの１または複数と、第１および第２のスライスのための第１および第２の初期インジケータ値とを受け取るように構成されうる。例えば、第１および第２のスライスのおのおのについて、ビデオ・デコーダ３０は、受け取ったビットストリームにおいて、前述されたインジケーションおよび値のうちの１または複数を、対応するスライスに関連付けられた１または複数のシンタックス要素として受け取るように構成されうる。
【０１２０】
その他の例では、エントロピ・デコード・ユニット８０はさらに、１または複数のマッピング関数のうちの第１のマッピング関数を用いて、ビデオ・データの第１のスライスの第１の初期インジケータ値と第１のスライス・タイプのうちの１または複数と、初期値セットと、の間の第１のマッピングを決定するように構成されうる。これらの例では、エントロピ・デコード・ユニット８０さらにまた、１または複数のマッピング関数のうちの第２のマッピング関数を用いて、ビデオ・データの第２のスライスの第２の初期インジケータ値と第２のスライス・タイプのうちの１または複数と、初期値セットと、の間の第２のマッピングを決定するように構成されうる。繰り返すが、これらの例では、ビデオ・データの第１および第２のスライスの、第１および第２の初期インジケータ値のおのおのが、ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示しうる。
【０１２１】
例えば、ビデオ・デコーダ３０、および、特定のエントロピ・デコード・ユニット８０では、受け取ったビットストリームにおいて、第１および第２のマッピング関数（または、このマッピング関数を定義するデータ）を示す１または複数のインジケーションを受け取るように構成されうる。この例では、第１および第２のスライスのおのおのについて、ビデオ・デコーダ３０は、受け取ったビットストリーム内の第１および第２のマッピング関数のうちの対応する１つを示す１または複数のインジケーションを、それぞれのスライスに関連付けられた１または複数のシンタックス要素として受け取るように構成されうる。あるいは、ビデオ・デコーダ３０は、受け取ったビットストリームの全体において、第１および第２のマッピング関数を含む１または複数のマッピング関数（または、このマッピング関数を定義するデータ）を示す１または複数のインジケーションを、例えば、第１および第２のスライスの１または両方に関連付けられた１または複数のシンタックス要素として受け取るように構成されうる。
【０１２２】
一例として、エントロピ・デコード・ユニット８０（または、ビデオ・デコーダ３０のその他の構成要素またはユニット）は、第１および第２のマッピング関数のうちの少なくとも１つを示す１または複数の値（または、１または複数のマッピング関数の全体）と、（例えば、受け取られたビットストリームにおいて、ビデオ・エンコーダ２０によってエンコードされたような）ビデオ・データに関連付けられた、シーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ＶＰＳ、ＡＰＳ、ＳＰＳ、およびＰＰＳのうちの少なくとも１つにおける第１および第２の初期インジケータ値とをデコードするように構成されうる。さらに、既に説明されたように、いくつかの例では、エントロピ・デコード・ユニット８０はさらに、（例えば、ビデオ・データに関連付けられたスライス・ヘッダにおいて）受け取られたビットストリームにおける第１および第２のスライスの第１および第２のスライス・タイプを示す１または複数の値をデコードするように構成されうる。
【０１２３】
あるいは、別の例として、エントロピ・デコード・ユニット８０は、ユーザ入力と、（第１および第２のスライスに関連付けられたサイド情報のような、）ビデオ・データに関連付けられたＧＯＰ構造パラメータ、フレーム解像度パラメータ、およびＱＰのうちの１または複数に基づいて、第１および第２のマッピング関数のうちの少なくとも１つ（または、１または複数のマッピング関数全体）と、第１および第２の初期インジケータ値を決定または推論するように構成されうる。さらに、いくつかの例では、エントロピ・デコード・ユニット８０はさらに、第１および第２のスライスに関連付けられたサイド情報を用いて、第１および第２のスライスの、第１および第２のスライス・タイプを決定または推論するように構成されうる。
【０１２４】
いくつかの例において、エントロピ・デコード・ユニット８０はさらに、第１および第２のスライスのおのおのをデコードするために使用されるフル・セットのコンテキストのうち、コンテキストのサブセットを決定するように構成されうる。これらの例において、コンテキストのサブセットは、第１および第２のシンタックス要素のうちの特定のタイプのシンタックス要素をコーディングするために使用される少なくとも１つまたは複数のコンテキストを含みうる。さらに、これらの例では、エントロピ・デコード・ユニット８０は、初期値セットを用いて、第１および第２のシンタックス要素をデコードするために、初期値セットに基づいて、コンテキストのサブセットのうちの１または複数のコンテキストを初期化するように構成されうる。
【０１２５】
前述した例では、ビデオ・デコーダ３０、特に、エントロピ・デコード・ユニット８０では、（例えば、受け取られたビットストリームにおいてビデオ・エンコーダ２０によってエンコードされたような）受け取られたビットストリームにおけるコンテキストのサブセット（または、このサブセットを定義するデータ）を示す１または複数のインジケーションを受信しうるか、または、ビデオ・データに関連付けられたサイド情報（すなわち、第１および第２のスライス）を用いてコンテキストのサブセットを決定（または推論）するように構成されうる。一例として、エントロピ・デコード・ユニット（または、ビデオ・デコーダ３０のその他の構成要素またはユニット）は、フル・セットのコンテキストのうち、コンテキストのサブセットを決定するために、１または複数のマッピング関数と、第１および第２の初期インジケータ値とを参照して前述されたものと類似の方式で、（例えば、受け取られたビットストリームにおいてビデオ・エンコーダ２０によってエンコードされたような）ビデオ・データに関連付けられた、シーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ＶＰＳ、ＡＰＳ、ＳＰＳ、およびＰＰＳのうちの少なくとも１つで、コンテキストのサブセットに含まれているフル・セットのコンテキストのうちのコンテキストを示す１または複数の値をデコードするように構成されうる。
【０１２６】
あるいは、別の例として、フル・セットのコンテキストのうち、コンテキストのサブセットを決定するために、さらに、１または複数のマッピング関数と、第１および第２の初期インジケータ値とを参照して前述したものと類似の方式で、エントロピ・デコード・ユニット８０は、ユーザ入力と、（第１および第２のスライスに関連付けられたサイド情報のような）ビデオ・データに関連付けられたＧＯＰ構造パラメータ、フレーム解像度パラメータ、およびＱＰのうちの１または複数に基づいて、コンテキストのサブセットに含まれたフル・セットのコンテキストのうちのコンテキストを決定または推論するように構成されうる。
【０１２７】
さらに、いくつかの例において、エントロピ・デコード・ユニット８０は、初期値セットを用いて第１および第２のシンタックス要素をデコードするために、初期値セットと、それぞれのシンタックス要素が属するビデオ・データの第１および第２のスライスの第１および第２のスライス・タイプのうちの対応する１つに基づいて、第１および第２のシンタックス要素のうちの、少なくとも特定のタイプのシンタックス要素をコーディングするために使用される１または複数のコンテキストのおのおのの初期コンテキスト状態を決定するように構成されうる。これらの例では、エントロピ・デコード・ユニット８０は、ビデオ・データの第１のスライスの第１のスライス・タイプと、ビデオ・データの第２のスライスの第２のスライス・タイプとに基づいて、初期値セットを決定しうる。
【０１２８】
前述した例では、エントロピ・デコード・ユニット８０は、初期値セットと、第１および第２のスライス・タイプのうちの対応する１つとに基づいて、１または複数のコンテキストのおのおのの初期コンテキスト状態を決定するために、第１および第２のスライス・タイプのうちの対応する１つに基づいて決定されたＱＰオフセット値（例えば、ｄＱＰ値）と、ＱＰ値（例えば、しばしば初期ＱＰと称される特定のＱＰ値、または、第１および第２のスライスのうちの対応する１つに関連付けられたｉＱＰ値）と、初期値セットのうちの１または複数の値（例えば、前述した“ｍ”、“ｎ”、および“ｍ８”値のうちの１または複数）とに基づいて、それぞれのコンテキスト状態を決定するように構成されうる。
【０１２９】
前述したように、いくつかの例では、初期値セットは、（１）スロープ値および個別の交差値、および、（２）スロープ値と交差値との両方を表す単一の値、のうちの１つを含みうる。例えば、いくつかの例において、初期値セットは、スロープ値と交差値とからなる少なくとも１つのペア、または、スロープ値と交差値との両方を表す少なくとも１つの単一の値、を含みうる。一例として、初期値セットは、おのおのがスロープ値と個別の交差値とを含み、それぞれ“ｍ”および“ｎ”と称されうる値からなる１または複数の値のペアを含みうる。別の例として、初期値セットは、おのおのがスロープ値と交差値とを表し“ｍ８”と称されうる１または複数の単一の値を含みうる。
【０１３０】
前述した例によって例示されるように、本開示の技法は、ビデオ・デコーダ３０が、同じまたは共通の初期値セットに基づいて、コンテキスト適応エントロピ・コーディング処理（例えば、ＣＡＢＡＣ処理）を用いて、異なるスライス・タイプを有するビデオ・データの複数のスライスについて、おのおのが同じタイプのシンタックス要素にしたがう（例えば、ビデオ・エンコーダ２０によってエンコードされた、および／または、記憶デバイス２４によって提供された）複数のシンタックス要素をデコードすることをイネーブルしうる。いくつかの例において、特定のタイプのシンタックス要素は、ビデオ・データの１または複数のブロックについて、１または複数の係数の値、または、その他のシンタックス情報を示すために使用されうる。具体的には、ビデオ・デコーダ３０は、開示された技法にしたがって、１または複数のコンテキストを用いて複数のシンタックス要素のおのおのをデコードする前に、コンテキスト適応エントロピ・コーディング処理の１または複数のコンテキストのための初期コンテキスト状態を決定（すなわち、初期化）するために、初期値セットを使用しうる。その結果、本明細書に開示された技法は、いくつかのケースにおいて、ビデオ・データの複数のスライスのための複数のシンタックス要素をデコードするために使用されるビデオ・デコーダ３０の複雑さを低減しうる（例えば、処理リソースおよび／または格納リソースを単純化するか、または、その使用量を低減する）。
【０１３１】
さらに、開示された技法は、ビデオ・デコーダ３０が、例えばビデオ・データのようなデータをより効率的にデコードすることをイネーブルしうる。例えば、これら技法は、ビデオ・デコーダ３０が、データに関連付けられたスライス・タイプ情報、または、データに関連付けられた１または複数の初期インジケータ値に基づいて、データをデコードするために使用されるコンテキスト適応エントロピ・コーディング処理（例えば、ＣＡＢＡＣ処理）の１または複数のコンテキストを初期化することをイネーブルしうる。その結果、１または複数のコンテキストは、初期化されると、その他のコンテキスト初期化技法を用いて決定された確率推定値に対して、より精度の高い確率推定値を含みうる。そのため、ビデオ・デコーダ３０は、その他の技法と比べて、データをより効率的に（例えば、より少ないビットを用いて）デコードしうる。
【０１３２】
このように、ビデオ・デコーダ３０は、第１のスライス・タイプにしたがうビデオ・データの第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素を、初期値セットを用いてコーディングし、第２のスライス・タイプにしたがうビデオ・データの第２のスライスの、特定のタイプのシンタックス要素にしたがう第２のシンタックス要素を、初期値セットを用いてコーディングする、ように構成されたビデオ・コーダの例を示す。ここで、第１のスライス・タイプは、第２のスライス・タイプとは異なり、第１のスライス・タイプと第２のスライス・タイプのうちの少なくとも１つは、時間的に予測されたスライス・タイプである。
【０１３３】
図４−６は、本開示の技法にしたがう、低減された初期値セットを用いたコンテキスト適応エントロピ・コーディングの方法の例を例示するフローチャートである。図４−６の技法は一般に、ハードウェア、ソフトウェア、ファームウェア、またはその組み合わせで実現されているかに関わらず、任意の処理ユニットまたはプロセッサによって実行されうる。そして、ソフトウェアまたはファームウェアで実現される場合、ソフトウェアまたはファームウェアのための命令群を実行するために、対応するハードウェアが提供されうる。例示目的のために、図４−６の技法は、ビデオ・エンコーダ２０（図１および２）と、ビデオ・デコーダ３０（図１および３）との両方のみならず、これらのさまざまな構成要素（例えば、エントロピ・エンコード・ユニット５６およびエントロピ・デコード・ユニット８０）に関して記載されているが、同様の技法を実行するためにその他のデバイスが構成されうることが理解されるべきである。すなわち、ビデオ・デコーダ３０は、一般に、エントロピ・コーディングに関して、ビデオ・エンコーダ２０によって実行されるものに対して相補的な方法を実行するように構成される。したがって、ビデオ・エンコーダ２０およびビデオ・デコーダ３０は、この例において、類似の（とはいえ、相補的な）エントロピ・コーディング処理を実行するように構成される。しかしながら、ビデオ・エンコーダおよび／またはビデオ・デコーダは、特定の方法を実行するように個別に構成されうることが理解されるべきである。さらに、図４−６に例示されるステップは、本開示の技法から逸脱することなく、異なる順序で、または並行して実行され、さらなるステップが追加されたり、いくつかのステップが省略されうる。
【０１３４】
具体的には、図４は、一般に、ビデオ・エンコーダ２０およびビデオ・デコーダ３０の観点から、コーディング（すなわち、エンコードおよび／またはデコード）のコンテキストにおいて、低減された初期セットを用いたコンテキスト適応エントロピ・コーディングの方法の例を例示する。すなわち、図４の説明は、この方法をビデオ・エンコーダ２０がどのように実行しうるかと、この方法をビデオ・デコーダ３０がどのように実行しうるかとの両方を示す。さらに、図５および６は、ビデオ・デコーダ３０の観点からのデコードと、ビデオ・エンコーダ２０の観点からのエンコードとのコンテキストにおいて、低減された初期セットを用いたコンテキスト適応二進法コーディングの方法の例をそれぞれ例示する。
【０１３５】
一例として、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、前述したように、ビデオ・コーディング処理の間、ビデオ・データの１または複数のブロックをコーディング（すなわち、エンコードおよび／またはデコード）しうる。例えば、１または複数のブロックは、１または複数のＰＵ、ＴＵ、またはＣＵでありうる。そして、前述したように、ビデオ・データの１または複数のスライスに含まれうる。この例では、先ず、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、第１のスライス・タイプにしたがうビデオ・データの第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素を、初期値セットを用いてコーディングしうる（４００）。
【０１３６】
例えば、第１のシンタックス要素の、特定のタイプのシンタックス要素は、第１のスライスに関連付けられた任意のタイプのシンタックス要素に対応しうる。いくつかの例では、特定のタイプのシンタックス要素が、１または複数の係数の値（例えば、大きさおよび／または記号）のみならず、ビデオ・データの第１のスライスのうちの１または複数のブロックのその他のシンタックス情報（例えば、予測モードおよび／または動きベクトル情報を含む予測情報）をも示すために使用されうる。その他の例では、第１のスライス自身のためのさまざまなタイプのシンタックス情報（例えば、ビデオ・データの第１のスライスの複数のブロックに共通である情報）を示すために、特定のタイプのシンタックス要素が使用されうる。それに加えて、さらに別の例では、第１のスライスの第１のスライス・タイプは、図１−３を参照して前述されたものと類似の方式で、空間的に予測された“Ｉ”スライス・タイプと、時間的に予測された“Ｐ”および“Ｂ”スライス・タイプとのうちの任意の１つに対応しうる。
【０１３７】
この例では、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０はさらに、第２のスライス・タイプにしたがうビデオ・データの第２のスライスの、特定のタイプのシンタックス要素（すなわち、前述した第１のシンタックス要素のものと同じタイプのシンタックス要素）にしたがう第２のシンタックス要素を、初期セットを用いてコーディングしうる。この例では、第１のスライス・タイプは、第２のスライス・タイプとは異なりうる。さらに、この例では、第１のスライス・タイプおよび第２のスライス・タイプのうちの少なくとも１つは、時間的に予測されたスライス・タイプでありうる（４０２）。
【０１３８】
この例では、別の方式で述べると、第１のスライス・タイプが、前述したように、空間的に予測された“Ｉ”スライス・タイプと、時間的に予測された“Ｐ”スライス・タイプおよび“Ｂ”スライス・タイプとのうちの何れか１つに対応する一方、第２のスライスの第２のスライス・タイプが、前述したスライス・タイプのうちの他方に対応しうる。このように、第１および第２のスライス・タイプは、互いに異なりうる。さらに、この例ではまた、第１および第２のスライスのうちの少なくとも１つは、時間的な予測を用いてコーディングされうる。言い換えれば、前述された第１および第２のスライス・タイプのうちの少なくとも１つは、時間的に予測された“Ｐ”スライス・タイプおよび“Ｂ”スライス・タイプのうちの何れか一方に対応しうる。この例では、第１および第２のスライスのうちの他の一方は、時間的または空間的な予測を用いてコーディングされうる（すなわち、第１および第２のスライス・タイプのうちの他の一方は、空間的に予測された“Ｉ”スライス・タイプと、時間的に予測された“Ｐ”スライス・タイプおよび“Ｂ”スライス・タイプのうちの何れか一方に対応しうる）。
【０１３９】
このように、本開示の技法にしたがって、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、同じまたは共通の初期値セットに基づいて、コンテキスト適応エントロピ・コーディング処理（例えば、ＣＡＢＡＣ処理）を用いて、異なるスライス・タイプを有するビデオ・データの複数のスライスについて、おのおのが同じタイプのシンタックス要素にしたがう複数のシンタックス要素をコーディングしうる。いくつかの例では、ビデオ・データの１または複数のブロックについて、１または複数の係数の値、または、その他のシンタックス情報を示すために、特定のタイプのシンタックス要素が使用されうる。具体的には、開示された技法にしたがって、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、１または複数のコンテンツを用いて複数のシンタックス要素のおのおのをコーディングする前に、コンテキスト適応エントロピ・コーディング処理の１または複数のコンテキストの初期コンテキスト状態を決定する（すなわち、「初期化する」）ために初期値セットを使用しうる。その結果、本明細書で開示された技法は、いくつかのケースでは、ビデオ・データの複数のスライスの複数のシンタックス要素をコーディングするために使用されるビデオ・エンコーダ２０および／またはビデオ・デコーダ３０の複雑さを低減しうる（例えば、処理リソースおよび／または格納リソースを単純化するか、または、その使用量を低減しうる）。
【０１４０】
いくつかの例では、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０はさらに、（１）ビデオ・データの第１のスライスの第１のスライス・タイプと、ビデオ・データの第２のスライスの第２のスライス・タイプ、および、（２）ビデオ・データの第１のスライスの第１の初期インジケータ値と、ビデオ・データの第２のスライスの第２の初期インジケータ値、のうちの少なくとも１つに基づいて、第１および第２のシンタックス要素をコーディングするために使用される初期値セットを決定しうる。この例では、図１−３を参照して前述されたものと同様の方式で、ビデオ・データの第１および第２のスライスの、第１および第２の初期インジケータ値のおのおのは、ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示しうる。
【０１４１】
一例として、前述したように、第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、例えば、“０”から“Ｎ−１”に及ぶ整数値を含むセットのような１または複数の整数値からなるセットから選択される整数値でありうる。ここで、“Ｎ”は、あるゼロではない整数値である。この例では、このセット内に含まれるおのおのの整数値（例えば、０，１，２・・・Ｎ−１）は、１または複数の初期値セットのうちの特定の初期値セット（例えば、Ｓｅｔ（０）、Ｓｅｔ（１）、Ｓｅｔ（２）…Ｓｅｔ（Ｎ−１））に対応するか、示しうる。さらに、前述されてもいるように、第１および第２のスライスの第１および第２の初期インジケータ値のおのおのが、  例えば、シンタックス要素タイプｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃのような特定のタイプのシンタックス要素、またはその他のシンタックス要素タイプを用いて、（例えば、ビデオ・エンコーダ２０からビデオ・デコーダ３０へ）ビットストリームでシグナルされうる。いくつかの例において、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、固定長コード、（例えば、ＶＬＣまたは類似の技法を用いた）可変長コード、または（例えば、ＣＡＢＡＣ、ＰＩＰＥ、または類似の技法のような）算術コードのうちの何れかを用いて、第１および第２の初期インジケータ値の１または複数をコーディングしうる。
【０１４２】
このように、いくつかの例では、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、第１および第２のシンタックス要素のおのおのをコーディングするために、それぞれのシンタックス要素が属する第１および第２のスライスの、第１および第２の初期インジケータ値のうちの対応する１つに基づいて、初期値セットを決定しうる。例えば、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、  第１および第２のスライスの第１および第２のスライス・タイプに関わらず、例えば、適応方式で、第１および第２の初期インジケータ値に基づいて、複数の初期値セットのグループから、初期値セットを選択しうる。
【０１４３】
その結果、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、第１および第２のシンタックス要素を、より効率的にコーディングしうる。例えば、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、前述した方式で決定された初期値セットを用いて、第１および第２のシンタックス要素をコーディングするために使用されるコンテキスト適応エントロピ・コーディング処理（例えば、ＣＡＢＡＣ処理）の１または複数のコンテキストを初期化しうる。特に、この例では、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、第１および第２のシンタックス要素のおのおのをコーディングするために、それぞれのシンタックス要素が属する第１および第２のスライスの、第１および第２のスライス・タイプのうちの対応する１つに関わらず初期値セットを選択しうる。このため、初期値セットを用いて初期化されると、１または複数のコンテキストは、（例えば、スライスに関連付けられたスライス・タイプに基づいて、ビデオ・データのスライスのシンタックス要素をコーディングするための初期値セットを選択する技法のような）その他のコンテキスト初期化技法を用いて決定された確率推定値に対して、より正確である確率推定値を含みうる。このように、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、他の技法と比較して、第１および第２のシンタックス要素をより効率的に（例えば、より少ないビットを用いて）コーディングしうる。
【０１４４】
しかしながら、その他の例では、前述したように、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、第１および第２のスライス・タイプに基づいて、複数の初期値セットのグループから、初期値セットを選択しうる。
【０１４５】
他の例において、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０はさらに、１または複数のマッピング関数のうちの第１のマッピング関数を用いて、ビデオ・データの第１のスライスの第１の初期インジケータ値と第１のスライス・タイプのうちの１または複数と、初期値セットと、の間の第１のマッピングを決定するように構成されうる。これらの例において、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０はさらに、１または複数のマッピング関数のうちの第２のマッピング関数を用いて、ビデオ・データの第２のスライスの第２の初期インジケータ値と第２のスライス・タイプのうちの１または複数と、初期値セットと、の間の第２のマッピングを決定しうる。繰り返すが、これらの例では、ビデオ・データの第１および第２のスライスの、第１および第２の初期インジケータ値のおのおのは、ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示しうる。
【０１４６】
いくつかの例では、１または複数のマッピング関数と、適用可能であれば、第１および第２の初期インジケータ値とが、定義または固定され、前述された方式で、初期値セットを決定する目的のために、ビデオ・エンコーダ２０とビデオ・デコーダ３０との両方に利用可能でありうる。しかしながら、他の例では、ビデオ・エンコーダ２０は、ある方式において、第１および第２の初期インジケータ値と、１または複数のマッピング関数のうちの少なくとも１つを、第１および第２の要素をエンコードすることの一部として決定または操作しうる。これらの例において、ビデオ・エンコーダ２０はさらに、ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ＶＰＳ、ＡＰＳ、ＳＰＳ、およびＰＰＳのうちの少なくとも１つにおける第１および第２の初期インジケータ値および１または複数のマッピング関数のうちの少なくとも１つを示す１または複数の値をエンコードしうる。
【０１４７】
例えば、ビデオ・エンコーダ２０は、ビットストリームにおいて、エンコードされた１または複数の値をシグナルしうる。これによって、ビデオ・デコーダ３０は、ビットストリームを受け取り、１または複数の値をデコードするようになりうる。ビデオ・エンコーダ２０はさらに、ビットストリームにおいて、エンコードされた第１および第２のシンタックス要素をシグナルしうる。これらの例では、ビデオ・デコーダ３０は、デコードされた１または複数の値に基づいて、第１および第２の初期インジケータ値と１または複数のマッピング関数のうちの少なくとも１つを決定しうる。続いて、ビデオ・デコーダ３０は、１または複数のマッピング関数、さらには、適用可能な場合には、第１および第２の初期インジケータ値に基づいて、初期値セットを決定しうる。ビデオ・デコーダ３０は、ビットストリームにおいて、エンコードされた第１および第２のシンタックス要素を受け取り、決定された初期値セットに基づいて、第１および第２のシンタックス要素をデコードしうる。
【０１４８】
他の例において、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０はさらに、ビデオ・データに関連付けられたＧＯＰ構造パラメータ、フレーム解像度パラメータ、およびＱＰのうちの１または複数に基づいて、１または複数のマッピング関数のうち少なくとも１つと、適用可能であれば、第１および第２の初期インジケータ値とを決定しうる。さらに別の例では、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、第１および第２のスライスのうちの１または複数に関連するその他の情報（しばしば、サイド情報と称される）に基づいて、１または複数のマッピング関数および第１および第２の初期インジケータ値を決定しうる。さらに、いくつかの例では、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０はさらに、ユーザ入力に基づいて、第１および第２の初期インジケータ値と、１または複数のマッピング関数のうちの少なくとも１つを決定しうる。言い換えれば、いくつかの例では、１または複数のマッピング関数、および、適用可能であれば、第１および第２の初期インジケータ値（例えば、第１および第２の初期インジケータ値の第１および第２のスライスへの割り当てまたは割り振り）は、ユーザによって指定されうる。
【０１４９】
いくつかの例では、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０はさらに、１または複数の式と連携して、ビデオ・データの第１のスライスの第１の初期インジケータ値、ビデオ・データの第２のスライスの第２の初期インジケータ値、および、第１および第２のスライス・タイプのうちの１または複数に基づいて、初期値セットを決定しうる。繰り返すが、これらの例では、ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示しうる。例えば、１または複数の式が定義されるか、または、固定されうる。そして、前述した方式で、初期値セットを決定する目的のために、ビデオ・エンコーダ２０とビデオ・デコーダ３０との両方に利用可能でありうる。しかしながら、その他の例では、ビデオ・エンコーダ２０は、ビットストリームにおいて、１または複数の式を示す１または複数の値をエンコードし、ビデオ・デコーダ３０は、初期値セットを決定する目的で、ビットストリームにおいて、エンコードされた１または複数の値を受け取り、１または複数の値をデコードしうる。
【０１５０】
いくつかの例において、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０はさらに、第１および第２のスライスのおのおのをコーディングするために使用されるフル・セットのコンテキストのうち、コンテキストのサブセットを決定しうる。これらの例において、コンテキストのサブセットは、第１および第２のシンタックス要素のうちの特定のタイプのシンタックス要素をコーディングするために使用される少なくとも１または複数のコンテキストを含みうる。言い換えれば、いくつかの例では、コンテキストのサブセットは、さらなるコンテキストを含みうる。何れの場合であれ、これらの例では、初期値セットを用いて第１および第２のシンタックス要素をコーディングするために、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、初期値セットに基づいて、コンテキストのサブセットのうちの１または複数のコンテキストを初期化しうる。このように、前述された初期値セットは、第１および第２のスライスのおのおのをコーディングするために使用されるフル・セットのコンテキストのうちのすべてのコンテキストではなく、コンテキストのサブセット内に含まれる制限された数のコンテキストに当てはまりうる（すなわち、その初期コンテキスト状態を決定するため、または「初期化するため」に使用されうる）。
【０１５１】
一例として、コンテキストのサブセットは、ビデオ・データの１または複数のブロックのうちの係数、および／または、係数のコーディング、に関連するシンタックス要素の１または複数をコーディングするために使用される１または複数のコンテキストを含みうる。例えば、シンタックス要素のうちの１または複数のタイプは、有意な係数位置および最後の有意な係数位置（例えば、「有意マップ」）情報、係数レベル（例えば、大きさおよび記号）情報のみならず、ビデオ・データのブロックの係数をコーディングするために使用されるその他の情報を示すために使用されうる。いくつかの例において、シンタックス要素タイプは、“ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ”、“ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ”、“ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１”、“ｃｏｅｆｆ＿ｓｉｇｎ＿ｆｌａｇ”、“ｌａｒｇｅｒ＿ｔｈａｎ＿ｏｎｅ＿ｆｌａｇ”、および“ｌａｒｇｅｒ＿ｔｈａｎ＿ｔｗｏ＿ｆｌａｇ”のみならず、任意の数のその他の等価または類似のシンタックス要素タイプを含みうる。
【０１５２】
いくつかの例では、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０はさらに、１または複数のマッピング関数および第１および第２の初期インジケータ値を参照して前述したものと類似の方式で、ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ＶＰＳ、ＡＰＳ、ＳＰＳ、およびＰＰＳのうちの少なくとも１つにおけるコンテキストのサブセットに含まれるフル・セットのコンテキストのうちのコンテキストを示す１または複数の値をコーディングしうる。
【０１５３】
他の例では、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、フル・セットのコンテキストのうちの、コンテキストのサブセットを決定するために、ビデオ・データに関連付けられたＧＯＰ構造パラメータ、フレーム解像度パラメータ、およびＱＰのうちの１または複数に基づいて、コンテキストのサブセットに含まれるフル・セットのコンテキストのうちのコンテキストを決定しうる。他の例として、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、フル・セットのコンテキストのうちの、コンテキストのサブセットを決定するために、第１および第２のスライスのうちの１または複数に関連するその他の情報（しばしば、サイド情報と称される）に基づいて、コンテキストのサブセットに含まれるフル・セットのコンテキストのうちのコンテキストを決定しうる。さらに、いくつかの例では、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、フル・セットのコンテキストのうち、コンテキストのサブセットを決定するために、ユーザ入力に基づいて、コンテキストのサブセットに含まれるフル・セットのコンテキストのうちのコンテキストを決定しうる。言い換えれば、いくつかの例において、コンテキストのサブセット（例えば、コンテキストのサブセットに含まれる、フル・セットのコンテキストのうちのコンテキスト）は、ユーザによって指定されうる。
【０１５４】
いくつかの例では、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、初期値セットを用いて第１および第２のシンタックス要素をコーディングするために、第１および第２のシンタックス要素のうちの少なくとも特定のタイプのシンタックス要素をコーディングするために使用される１または複数のコンテキストのおのおのの初期コンテキスト状態を決定しうる。例えば、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、初期値セットと、それぞれのシンタックス要素が属するビデオ・データの第１および第２のスライスの第１および第２のスライス・タイプのうちの対応する１つとに基づいて、それぞれの初期コンテキスト状態を決定しうる。これらの例において、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、第１のビデオ・データのスライスの第１のスライス・タイプと、第２のビデオ・データのスライスの第２のスライス・タイプとに基づいて、初期値セットを決定しうる。これらの例では、初期値セットと、第１および第２のスライス・タイプのうちの対応する１つとに基づいて、１または複数のコンテキストのおのおのの初期コンテキスト状態を決定するために、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、以下に基づいて、それぞれの初期コンテキスト状態を決定しうる。（１）初期値セットのうちの１または複数の値（例えば、前述した“ｍ”、“ｎ”、および“ｍ８”のうちの１または複数）；および、（２）ＱＰ値（例えば、第１および第２のスライスのうちの対応する１つに関連付けられ、しばしば初期ＱＰ値またはｉＱＰ値と称される特定のＱＰ値）と、第１および第２のスライス・タイプのうちの対応する１つに基づいて決定されたＱＰオフセット値（例えば、ｄＱＰ値）。例えば、前述されるように、以下に再び示される式４および式５に例示されるように、それぞれの初期コンテキスト状態（例えば、ＩｎｉｔＳｔａｔｅ）を決定するために使用されるＱＰ値（例えば、ＱＰまたはｉＱＰ）を補正または「オフセット」するために使用されうる。  
Ｉｎｔ  ｉＩｎｉｔＳｔａｔｅ＝（（ｍ＊（ｉＱｐ＋ｄＱＰ））／１６）＋ｎ；    式４  
ｉＩｎｉｔＳｔａｔｅ＝ｍｉｎ（ｍａｘ（１，ｉＩｎｉｔＳｔａｔｅ），１２６）；式５
その結果、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、第１および第２のシンタックス要素をより効率的にコーディングしうる。例えば、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、前述した方式で、初期値セット（すなわち、第１および第２のスライスの第１および第２のスライス・タイプに基づいて決定された同じ初期値セット）のみならず、第１および第２のスライス・タイプのうちの対応する１つを用いて、第１および第２のシンタックス要素をコーディングするために使用されるコンテキスト適応エントロピ・コーディング処理（例えば、ＣＡＢＡＣ処理）の１または複数のコンテキストを初期化しうる。そのため、初期値セットと、第１および第２のスライス・タイプとを用いて初期化されると、１または複数のコンテキストは、その他のコンテキスト初期化技法を用いて決定された確率推定値に対して、より正確な確率推定値を含みうる。具体的には、前述した技法は、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０が、同じ初期値セットを用いて、第１および第２のシンタックス要素の両方をコーディングし、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０の複雑さを潜在的に低減するのみならず、それぞれのシンタックス要素に関連付けられたスライス・タイプ情報を用いて、初期値セットを用いて決定された初期コンテキスト状態の精度を潜在的に高めることをイネーブルしうる。
【０１５５】
このように、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、前述したように、第１および第２のシンタックス要素をコーディングするために使用されるビデオ・エンコーダ２０および／またはビデオ・デコーダ３０の複雑さを潜在的に低減させながら、第１および第２のシンタックス要素を、他の技法に比べてより効率的に（例えば、より少ないビットを用いて）コーディングしうる。
【０１５６】
前述されたように、いくつかの例では、第１および第２のスライス・タイプのおのおのは、イントラ予測（Ｉ）スライス・タイプ、一方向インタ予測（Ｐ）スライス・タイプ、および双方向インタ予測（Ｂ）スライス・タイプのうちの１つでありうる。例えば、前述されたように、第１および第２のスライス・タイプのうちの一方は、（Ｉ）スライス・タイプ、（Ｂ）スライス・タイプ、および（Ｐ）スライス・タイプのうちの何れか１つでありうる一方、第１および第２のスライス・タイプのうちの他方は、前述したスライス・タイプのうちのその他の１つでありうる（すなわち、第１および第２のスライス・タイプは、互いに異なりうる）。さらに、前述されたように、第１および第２のスライス・タイプのうちの少なくとも１つは、時間的に予測されたスライス・タイプ（すなわち、（Ｐ）スライス・タプおよび（Ｂ）スライス・タイプのうちの１つ）でありうる。
【０１５７】
さらに、前述されたように、いくつかの例において、初期値セットは、（１）スロープ値と個別の交差値、および（２）スロープ値と交差値の両方を表す単一の値のうちの１つを含みうる。一例として、ＨＭ  ４．０を参照して前述されたものと類似の方式で、初期値セットは、１または複数の値のペアを含みうる。値の各ペアは、それぞれ“ｍ”および“ｎ”と称されうるスロープ値および個別の交差値を含む。別の例として、ＨＭ  ５．０を参照して前述されたものと類似の方式で、初期値セットは、“ｍ８”と称されうる１または複数の単一の値を含みうる。ここで、おのおのの単一の値は、スロープ値と交差値との両方を表す。
【０１５８】
別の例として、ビデオ・デコーダ３０は、受け取ったビットストリームにおいて、ビデオ・データの第１のスライスの第１のスライス・タイプ（または、この第１のスライス・タイプを定義するデータ）を示す第１のインジケーション、第１のスライスをコーディングするために使用される特定の初期値セットを示す第１のスライスの第１の初期インジケータ値、および、第１の１または複数の関数のうちの少なくとも１つを受け取りうる（５００）。この例では前述した第１のスライスのシンタックス情報（すなわち、第１のスライス・タイプを示す第１のインジケーション、第１の初期インジケータ値、および第１の１または複数のマッピング関数）が、図６の例を参照して後述されるように、受け取られたビットストリーム内で、ビデオ・エンコーダ２０によって、エンコードされうる。例えば、ビデオ・エンコーダ２０は、ビデオ・デコーダ３０への送信のため、および／または、記憶デバイス２４内の格納のため、ビットストリームを生成しうる。この例ではまた、ビデオ・デコーダ３０はさらに、第１のスライス・タイプを示す受け取られた第１のインジケーション、第１の初期インジケータ値、および第１の１または複数のマッピング関数のうちの１または複数に基づいて初期値セットを決定しうる（５０２）。例えば、ビデオ・デコーダ３０は、第１の１または複数のマッピング関数を用いて、第１のスライス・タイプを、または、適用可能な場合には、第１の初期インジケータ値を、初期値セットへマップしうる。言い換えれば、第１の１または複数のマッピング関数を用いて、ビデオ・デコーダ３０は、第１のスライス・タイプ、または、適用可能であれば、第１の初期インジケータ値を用いて、例えば、多くの初期値セットから、初期値セットを選択しうる。
【０１５９】
初期値セットを決定または選択した後、ビデオ・デコーダ３０は、初期値セットのうちの１または複数の値に基づいて、コンテキスト適応エントロピ・コーディング処理（例えば、ＣＡＢＡＣ処理）のうちの１または複数のコンテキストを初期化しうる（５０４）。例えば、ビデオ・デコーダ３０は、初期値セットのうちの１または複数の値を用いて、１または複数のコンテキストのおのおのについて、初期確率に対応する初期コンテキスト状態を決定しうる。その後、ビデオ・デコーダ３０は、初期化された１または複数のコンテキストに基づいて、コンテキスト適応エントロピ・コーディング処理を実行することによって、第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素をデコードしうる（５０６）。
【０１６０】
その後、ビデオ・デコーダ３０は、受け取ったビットストリームにおいて、ビデオ・データの第２のスライスの第２のスライス・タイプ（または、この第２のスライス・タイプを定義するデータ）を示す第２のインジケーション、第２のスライスをコーディングするために使用される特定の初期値セットを示す第２のスライスの第２の初期インジケータ値、および、第２の１または複数の関数、のうちの少なくとも１つを受け取りうる（５０８）。この例において、第１および第２のスライス・タイプは、異なりうる。そして、第１および第２のスライス・タイプのうちの少なくとも１つは、図４の例を参照して前述したように、時間的に予測されたスライス・タイプ（例えば、“Ｐ”スライス・タイプまたは“Ｂ”スライス・タイプ）でありうる。
【０１６１】
この例では、第２のスライスの前述したシンタックス情報（すなわち、第２のスライス・タイプを示す第２のインジケーション、第２の初期インジケータ値、および第２の１または複数のマッピング関数）は、図６の例を参照して後述されるように、受け取られたビットストリーム内で、ビデオ・エンコーダ２０によって、再びエンコードされうる。前述されたように、いくつかの例において、ビデオ・エンコーダ２０は、ビデオ・デコーダ３０への送信のため、および／または、記憶デバイス２４内の格納のために、ビットストリームを生成しうる。
【０１６２】
この例ではまた、ビデオ・デコーダ３０はさらに、第２のスライス・タイプを示す受け取られた第２のインジケーション、第２の初期インジケータ値、および第２の１または複数のマッピング関数のうちの１または複数に基づいて初期値セットを決定しうる（５１０）。例えば、ビデオ・デコーダ３０は、第２の１または複数のマッピング関数を用いて、第２のスライス・タイプ、または、適用可能であれば、第２の初期インジケータ値を、初期値セットへ再びマップしうる。別の方式で述べると、ビデオ・デコーダ３０は、第２の１または複数のマッピング関数を用いて、例えば、多くの初期値セットから、第２のスライス・タイプ、または、適用可能であれば、第２の初期インジケータ値を用いて、初期値セットを選択しうる。
【０１６３】
初期値セットを決定または選択した後、ビデオ・デコーダ３０は、初期値セットのうちの１または複数の値に基づいて、コンテキスト適応エントロピ・コーディング処理の１または複数のコンテキストを再び初期化、すなわち、「再初期化」しうる（５１２）。例えば、ビデオ・デコーダ３０は、初期値セットのうちの１または複数の値を用いて、１または複数のコンテキストのおのおののために、初期確率に対応する初期コンテキスト状態を再び決定しうる。その後、ビデオ・デコーダ３０は、再初期化された１または複数のコンテキストに基づいて、コンテキスト適応エントロピ・コーディング処理を実行することによって、第２のスライスの特定のタイプのシンタックス要素（すなわち、第１のシンタックス要素のものと同じタイプのシンタックス要素）にしたがう第２のシンタックス要素をデコードしうる（５１４）。前述した例では、第１および第２のスライス・タイプを示す第１および第２のインジケーションは、ビデオ・データのスライスに関連付けられたスライス・タイプを示すために使用される、同じ値の特定のシンタックス要素タイプに対応しうる。例えば、同じ値の特定のシンタックス要素は、第１および第２のスライスの各々に関連付けられうる。同様に、適用可能な場合、第１および第２のスライスの、第１および第２の初期インジケータ値はまた、第１および第２のスライスのおのおのに関連付けられた例えばｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃのような同じ値の特定のシンタックス要素タイプに対応しうる。さらに、第１および第２の１または複数のマッピング関数は、同じ１または複数のマッピング関数でありうる。このように、ビデオ・デコーダ３０は、第１および第２のスライス・タイプのおのおの、または、適用可能であれば、第１および第２の初期インジケータ値のおのおのを、第１および第２の１または複数のマッピング関数を用いて、初期値セットへマップしうる。
【０１６４】
さらに別の例として、ビデオ・エンコーダ２０は、ビデオ・データの第１のスライスの第１のスライス・タイプ、第１のスライスをコーディングするために使用される特定の初期値セットを示す第１のスライスの第１の初期インジケータ値、および、第１の１または複数のマッピング関数、のうちの少なくとも１つに基づいて、初期値セットを決定しうる（６００）。この例において、第１のスライスの前述したシンタックス情報（すなわち、第１のスライス・タイプを示す第１のインジケーション、第１の初期インジケータ値、および第１の１または複数のマッピング関数）は、ビデオ・エンコーダ２０によって（例えば、第１のスライスをエンコードすることの一部として）生成されるか、別のシステムまたはデバイスによってビデオ・エンコーダ２０へ提供されうる。
【０１６５】
例えば、図５の例を参照して前述されたように、ビデオ・エンコーダ２０は、ビデオ・デコーダ３０によって受け取られるべきビットストリーム内で、このシンタックス情報をエンコードしうる。いくつかの例において、ビデオ・エンコーダ２０は、ビデオ・デコーダ３０への送信、および／または、記憶デバイス２４内の格納のために、ビットストリームを生成しうる。
【０１６６】
この例において、ビデオ・エンコーダ２０は、第１の１または複数のマッピング関数を用いて、第１のスライス・タイプを、または、適用可能であれば、第１の初期インジケータ値を、初期値セットへマップしうる。言い換えれば、第１の１または複数のマッピング関数を用いて、ビデオ・エンコーダ２０は、例えば、多くの初期値セットから、第１のスライス・タイプ、または、適用可能であれば、第１の初期インジケータ値を用いて、初期値セットを選択しうる。
【０１６７】
初期値セットを決定または選択した後、ビデオ・エンコーダ２０は、初期値セットのうちの１または複数の値に基づいて、コンテキスト適応エントロピ・コーディング処理（例えば、ＣＡＢＡＣ処理）のうちの１または複数のコンテキストを初期化しうる（６０２）。例えば、ビデオ・エンコーダ２０は、初期値セットのうちの１または複数の値を用いて、１または複数のコンテキストのおのおのについて、初期確率に対応する初期コンテキスト状態を決定しうる。その後、ビデオ・エンコーダ２０は、初期化された１または複数のコンテキストに基づいて、コンテキスト適応エントロピ・コーディング処理を実行することによって、第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素をエンコードしうる（６０４）。さらに、ビデオ・エンコーダ２０は、ビットストリームにおいて、第１のスライス・タイプを示す（または、第１のスライス・タイプを定義するデータ）を示す第１のインジケーション、第１の初期インジケータ値、および、第１の１または複数のマッピング関数のうちの少なくとも１つをエンコードしうる（６０６）。例えば、ビデオ・エンコーダ２０は、図５の例を参照して前述されたように、ビデオ・デコーダ３０による使用のため、および／または、記憶デバイス２４内での格納のため、ビットストリーム内で、前述したシンタックス情報をエンコードしうる。
【０１６８】
その後、ビデオ・エンコーダ２０は、ビデオ・データの第２のスライスの第２のスライス・タイプ、第２のスライスをコーディングするために使用される特定の初期値セットを示す第２のスライスの第２の初期インジケータ値、および、第２の１または複数のマッピング関数のうちの少なくとも１つに基づいて、初期値セットを決定しうる（６０８）。この例において、第１および第２のスライス・タイプは、異なりうる。そして、第１および第２のスライス・タイプのうちの少なくとも１つは、図４の例を参照して前述されたように、時間的に予測されたスライス・タイプ（例えば、“Ｐ”スライス・タイプまたは“Ｂ”スライス・タイプ）でありうる。
【０１６９】
この例において、前述した第２のスライスのシンタックス情報（すなわち、第２のスライス・タイプを示す第２のインジケーション、第２の初期インジケータ値、および、第２の１または複数のマッピング関数）は、ビデオ・エンコーダ２０によって（第２のスライスをエンコードすることの一部として）再び生成されるか、または、別のシステムまたはデバイスによってビデオ・エンコーダ２０へ提供されうる。例えば、図５の例を参照して前述されたように、ビデオ・デコーダ３０によって受け取られるべきビットストリーム内で、このシンタックス情報を再びエンコードしうる。前述されたように、いくつかの例では、ビデオ・エンコーダ２０は、ビデオ・デコーダ３０への送信のため、および／または、記憶デバイス２４内の格納のため、ビットストリームを生成しうる。
【０１７０】
この例ではまた、ビデオ・エンコーダ２０は、第２の１または複数のマッピング関数を用いて、第２のスライスを、または、適用可能であれば、第２の初期インジケータ値を、初期値セットへ再びマップしうる。言い換えれば、第２の１または複数のマッピング関数を用いて、ビデオ・エンコーダ２０は、例えば、多くの初期値セットから、第２のスライス・タイプ、または、適用可能であれば、第２の初期インジケータ値を用いて、初期値セットを選択しうる。
【０１７１】
初期値セットを決定または選択した後、ビデオ・エンコーダ２０は、初期値セットの１または複数の値に基づいて、コンテキスト適応エントロピ・コーディング処理の１または複数のコンテキストを初期化または再初期化しうる（６１０）。例えば、ビデオ・エンコーダ２０は、初期値セットの１または複数の値を用いて、１または複数のコンテキストのおのおのについて、初期確率に対応する初期コンテキスト状態を再び決定しうる。ビデオ・エンコーダ２０は、その後、再初期化された１または複数のコンテキストに基づいてコンテキスト適応エントロピ・コーディング処理を実行することによって、第２のスライスの特定のタイプのシンタックス要素（すなわち、第１のシンタックス要素のものと同じタイプのシンタックス要素）にしたがう第２のシンタックス要素をエンコードしうる（６１２）。さらに、ビデオ・エンコーダ２０は、ビットストリームにおいて、第２のスライス・タイプ（または、第２のスライス・タイプを定義するデータ）を示す第２のインジケーション、第２の初期インジケータ値、および、第２の１または複数のマッピング関数のうちの少なくとも１つをエンコードしうる（６１４）。例えば、ビデオ・エンコーダ２０は、図５の例を参照して前述されたように、ビデオ・デコーダ３０による使用のため、および／または、記憶デバイス２４内の格納のために、ビットストリームにおいて、前述したシンタックス情報をエンコードしうる。
【０１７２】
前述した例では、第１および第２のスライス・タイプの第１および第２のインジケーションは再び、ビデオ・データのスライスに関連付けられたスライス・タイプを示すために使用される同じ値の特定のシンタックス要素タイプに対応する。例えば、同じ値の特定のシンタックス要素は、第１および第２のスライスのおのおのに関連付けられうる。同様に、適用可能な場合、第１および第２のスライスの第１および第２の初期インジケータ値はまた、第１および第２のスライスのおのおのに関連付けられた、例えば、ｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃのような、同じ値の特定のシンタックス要素タイプに対応しうる。さらに、第１および第２の１または複数のマッピング関数は、同じ１または複数のマッピング関数でありうる。このように、ビデオ・デコーダ３０のように、ビデオ・エンコーダ２０は、第１および第２のスライス・タイプのおのおの、または、適用可能であれば、第１および第２の初期インジケータ値のおのおのを、第１および第２の１または複数のマッピング関数を用いて、初期値セットへマップしうる。さらに別の例として、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、ビデオ・データのスライスのデータを受け取りうる（７００）。例えば、ビデオ・データのスライスは、現在コーディングされているスライスでありうる。この例において、現在コーディングされているスライスのデータは、スライスに関連付けられた１または複数のシンタックス要素を含みうる。例として、１または複数のシンタックス要素は、スライスをエンコードするためにビデオ・エンコーダ（例えば、ビデオ・エンコーダ２０）によって使用され、かつ、スライスをデコードするためにビデオ・デコーダ（例えば、ビデオ・デコーダ３０）のために必要とされるさまざまなタイプの制御情報を含む、現在コーディングされているスライスに関するさまざまなタイプの情報を示しうる。
【０１７３】
この例において、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０はさらに、受け取ったデータに基づいて、ビデオ・データのスライスに関連付けられた初期インジケータ値とスライス・タイプのうちの１つを決定しうる（７０２）。例えば、現在コーディングされているスライスに関連付けられた、決定されたスライス・タイプは、前述した“Ｉ”スライス・タイプ、“Ｐ”スライス・タイプ、および“Ｂ”スライス・タイプのうちの何れかでありうる。この例では、決定されたスライス・タイプは、現在コーディングされているスライスに関連付けられたシンタックス要素を用いて表されうる。別の例として、現在コーディングされているスライスに関連付けられた、決定された初期インジケータ値はまた、例えば、特定のシンタックス要素タイプにしたがうシンタックス要素を用いて表されうる。例えば、決定された初期インジケータ値は、現在コーディングされているスライスに関連付けられたシンタックス要素タイプｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃ、または、その他類似のシンタックス要素タイプの値でありうる。この例において、現在コーディングされているスライスに関連付けられた初期インジケータ値は、スライスをコーディングするために使用される特定の初期値セットを示しうる。
【０１７４】
さらにこの例では、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０はまた、ビデオ・データのスライスに関連付けられたシンタックス要素を受け取りうる（７０４）。例えば、現在コーディングされているスライスに関連付けられたシンタックス要素は、スライスのために現在コーディングされているシンタックス要素でありうる。一例として、シンタックス要素は、現在コーディングされているスライスの係数情報（例えば、スライスのビデオ・データの１または複数のブロックの、係数値情報、または、関連するシンタックス情報）を表すために用いられるシンタックス要素タイプに対応しうる。
【０１７５】
この例において、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０はさらに、初期インジケータ値とスライス・タイプのうちの決定された１つに基づいて、受け取られたシンタックス要素の初期値セットを決定しうる（７０６）。例えば、既に説明されたように、初期値セットは、コンテキスト適応エントロピ・コーディング処理（例えば、ＣＡＢＡＣ処理）の１または複数のコンテキストのおのおのの初期コンテキスト状態を決定（または「初期化」）するために使用されうる１または複数の初期値（例えば、前述した“ｍ”値、“ｎ”値、および“ｍ８”値のうちの１または複数）を含みうる。
【０１７６】
一例として、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、現在コーディングされているスライスに関連付けられた、決定されたスライス・タイプを、１または複数のマッピング関数を用いて初期値セットへマップすることによって、受け取られたシンタックス要素の初期値セットを決定しうる。別の例として、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、現在コーディングされているスライスに関連付けられたスライス・タイプとは独立して、受け取られたシンタックス要素の初期値セットを決定しうる。例えば、前述されたように、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、現在コーディングされているスライスに関連付けられたシンタックス要素タイプｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃの値（すなわち、初期インジケータ値）を用いて初期値セットを決定しうる。何れの場合も、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０が、前述した方式で、受け取られたシンタックス要素の初期値セットを決定した結果として、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、異なるスライス・タイプを有するスライスを含む、ビデオ・データの複数のスライスについて、同じ初期値セットを決定しうる。
【０１７７】
続いて、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、受け取られたシンタックス要素を、決定された初期値セットを用いてコーディングしうる（７０８）。特に、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、受け取られたシンタックス要素を、決定された初期値セットを用いてコーディングするために使用されるコンテキスト適応エントロピ・コーディング処理（例えば、ＣＡＢＡＣ処理）のうちの１または複数のコンテキスト（例えば、受け取られたシンタックス要素に対応する特定のシンタックス要素タイプをコーディングするために使用される１または複数のコンテキスト）を初期化し、受け取られたシンタックス要素を、初期化された１または複数のコンテキストを用いてコーディングしうる。
【０１７８】
受け取られたシンタックス要素が、現在コーディングされているスライスに関連付けられた最後のシンタックス要素ではない（例えば、現在コーディングされているスライスの追加のシンタックス要素が存在する）（７１０の“ＮＯ”分岐）イベントでは、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、現在コーディングされているシンタックス要素に関して前述されたものと同じまたは実質的に同じ方式で、現在コーディングされているスライスに関連付けられた別のシンタックス要素のためのステップ（７０４）−（７０８）を実行しうる。
【０１７９】
しかしながら、受け取られたシンタックス要素が、現在コーディングされているスライスに関連付けられた最後のシンタックス要素である（例えば、現在コーディングされているスライスの追加のシンタックス要素が存在しない）（７１０の“ＹＥＳ”分岐）イベントでは、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０はさらに、以下にさらに詳細に記載されるように、ビデオ・データの別のスライスのシンタックス要素がコーディングされるために利用可能であるか否かを判定しうる。
【０１８０】
例えば、現在コーディングされている、すなわち「現在の」スライスが、ビデオ・データの最後のスライスではない（例えば、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０によってコーディングされているビデオ・データの「ピクチャ」、またはフレームのシーケンス、またはフレームの追加のスライスが存在する）（７１２の“ＮＯ”分岐）イベントでは、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、現在コーディングされているスライスに関して前述されたものと同じまたは実質的に類似した方式で、別の、その後コーディングされた、または「次の」ビデオ・データのスライスのためにステップ（７００）−（７１０）を実行することに進みうる。
【０１８１】
あるいは、現在コーディングされているスライスが、ビデオ・データの最後のスライス（例えば、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０によってコーディングされているビデオ・データのピクチャ、またはフレームのシーケンス、またはフレームの最後のスライス）（７１２の“Ｙｅｓ”分岐）であるイベントでは、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、ビデオ・データのコーディングを終了しうる（７１４）。いくつかの例において、ビデオ・エンコーダ２０および／またはビデオ・デコーダ３０は、例えば、コーディングされたビデオ・データを送信（または、「シグナリング」）し、格納し、および／または、１または複数のディスプレイ・デバイスを用いてユーザへ表示するようなその他のタスクを実行することに進みうる。
【０１８２】
このように、図４−７の方法は、第１のスライス・タイプにしたがうビデオ・データの第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素を、初期値セットを用いてコーディングすることと、第２のスライス・タイプにしたがうビデオ・データの第２のスライスの、特定のタイプのシンタックス要素にしたがう第２のシンタックス要素を、初期値セットを用いてコーディングすることと、を含む方法の例を示す。ここで、第１のスライス・タイプは、第２のスライス・タイプと異なり、第１のスライス・タイプと第２のスライス・タイプとのうちの少なくとも１つは、時間的に予測されたスライス・タイプである。
【０１８３】
１または複数の例では、本明細書に記載された機能は、ハードウェア、ソフトウェア、ファームウェア、またはこれらの任意の組み合わせで実現されうる。ソフトウェアで実現されるのであれば、これら機能は、コンピュータ読取可能な媒体におけるコードまたは１または複数の命令群で送信されるか格納され、ハードウェア・ベースの処理ユニットによって実行されうる。コンピュータ読取可能な媒体は、コンピュータ読取可能な記憶媒体を含みうる。これは、例えばデータ記憶媒体のような有形または非一時的な媒体、または、例えば通信プロトコルにしたがって、１つの場所から別の場所へのコンピュータ・プログラムの転送を容易にする任意の媒体を含む通信媒体に相当しうる。このように、コンピュータ読取可能な媒体は、一般に、（１）非一時的である有形のコンピュータ読取可能な記憶媒体、または、（２）例えば信号または搬送波のような通信媒体に対応しうる。データ記憶媒体は、本開示において記述された技法を実施するための命令群、コード、および／または、データ構造を検索するために１または複数のコンピュータまたは１または複数のプロセッサによってアクセスされうる任意の利用可能な媒体でありうる。コンピュータ・プログラム製品は、コンピュータ読取可能な媒体を含みうる。
【０１８４】
例として、限定することなく、このようなコンピュータ読取可能な記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭまたはその他の光ディスク記憶装置、磁気ディスク記憶装置またはその他の磁気記憶デバイス、フラッシュ・デバイス、あるいは、所望のプログラム・コード手段を命令群またはデータ構造の形式で搬送または格納するために使用され、しかも、コンピュータによってアクセスされうるその他任意の媒体を備えうる。さらに、いかなる接続も、コンピュータ読取可能な媒体として適切に称される。同軸ケーブル、光ファイバ・ケーブル、ツイスト・ペア、デジタル加入者線（ＤＳＬ）、あるいは、例えば赤外線、無線およびマイクロ波のような無線技術を使用して、ウェブサイト、サーバ、あるいはその他の遠隔ソースから命令群が送信される場合、同軸ケーブル、光ファイバ・ケーブル、ツイスト・ペア、ＤＳＬ、あるいは、例えば赤外線、無線およびマイクロ波のような無線技術が、媒体の定義に含まれる。しかしながら、コンピュータ読取可能な記憶媒体およびデータ記憶媒体は、コネクション、搬送波、信号、またはその他の過渡的な媒体を含まず、代わりに、非過渡的または非一時的な、有形の記憶媒体に向けられていることが理解されるべきである。本明細書で使用されるディスク（ｄｉｓｋおよびｄｉｓｃ）は、コンパクト・ディスク（ｄｉｓｃ）（ＣＤ）、レーザ・ディスク（ｄｉｓｃ）、光ディスク（ｄｉｓｃ）、デジタル多用途ディスク（ｄｉｓｃ）（ＤＶＤ）、フロッピー（登録商標）ディスク（ｄｉｓｋ）、およびブルー・レイ・ディスク（ｄｉｓｃ）を含む。これらｄｉｓｃは、レーザを用いてデータを光学的に再生する。それに対して、ｄｉｓｋは、通常、データを磁気的に再生する。前述した組み合わせもまた、コンピュータ読取可能な媒体の範囲内に含まれるべきである。
【０１８５】
命令群は、例えば、１または複数の汎用マイクロプロセッサ、ＤＳＰ、ＡＳＩＣ、ＦＰＧＡ、またはその他の等価な統合されたまたはディスクリートな論理回路のような１または複数のプロセッサによって実行されうる。したがって、用語「プロセッサ」は、ここで用いられるように、前述した構成のうちの何れか、または、本開示に記載された技法の実施に適したその他任意の構成を称しうる。さらに、いくつかの態様では、本明細書に記載された機能は、エンコードおよびデコードのために構成された専用のハードウェアおよび／またはソフトウェア・モジュール内に適用されうるか、または、結合されたコーデック内に組み込まれうる。さらに、これら技術は、１または複数の回路または論理要素で完全に実現されうる。
【０１８６】
本開示の技法は、無線ハンドセット、ＩＣ、またはＩＣのセット（例えば、チップ・セット）を含む広範なデバイスまたは装置において実現されうる。本開示において、さまざまな構成要素、モジュール、またはユニットは、開示された技法を実行するように構成されたデバイスの機能態様を協調するために記載されているが、必ずしも、別のハードウェア構成要素、モジュール、またはユニットによって実現されることを必要としない。むしろ、前述されたように、さまざまなユニットは、適切なソフトウェアおよび／またはハードウェアと連携する、前述されたような１または複数のプロセッサを含む共通のハードウェア・ユニットの集合によって提供されうるか、コーデック・ハードウェア・ユニットに結合されうる。
【０１８７】
さまざまな例が記載された。これらの例およびその他の例は、以下の特許請求の範囲のスコープ内である。
【図１】
2015504292.tif 000004
【図２】
2015504292.tif 000005
【図３】
2015504292.tif 000006
【図４】
2015504292.tif 000007
【図５】
2015504292.tif 000008
【図６】
2015504292.tif 000009
【図７】
2015504292.tif 000010
【手続補正書】
【提出日】平成26年12月1日(2014.12.1)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ビデオ・データをコーディングする方法であって、
特定のタイプのシンタックス要素にしたがう、ビデオ・データの第１のスライスの第１のシンタックス要素をコーディングするための初期値セットを、前記ビデオ・データの第１のスライスの第１のスライス・タイプの、前記初期値セットへのマッピングに基づいて選択することと、
前記第１のシンタックス要素を、前記初期値セットを用いてコーディングすることと、
前記特定のタイプのシンタックス要素にしたがう、ビデオ・データの第２のスライスの第２のシンタックス要素をコーディングするために、前記初期値セットを、前記ビデオ・データの第２のスライスの第２のスライス・タイプの、前記初期値セットへのマッピングに基づいて選択することと、ここで、前記第２のスライス・タイプは、前記第１のスライス・タイプとは異なり、前記第１および第２のスライス・タイプのうちの少なくとも１つのスライス・タイプは、時間的に予測されたスライス・タイプである、
前記第２のシンタックス要素を、前記初期値セットを用いてコーディングすることと、
を備える方法。
【請求項２】
前記ビデオ・データの第１のスライスの第１の初期インジケータ値と、前記ビデオ・データの第２のスライスの第２の初期インジケータ値とに基づいて、前記第１および第２のシンタックス要素をコーディングするために使用される初期値セットを決定することをさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、請求項１に記載の方法。
【請求項３】
１または複数のマッピング関数のうちの第１のマッピング関数を用いて、前記ビデオ・データの第１のスライスの第１の初期インジケータ値および前記第１のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第１のマッピングを決定することと、
前記１または複数のマッピング関数のうちの第２のマッピング関数を用いて、前記ビデオ・データの第２のスライスの第２の初期インジケータ値および前記第２のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第２のマッピングを決定することとをさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、請求項１に記載の方法。
【請求項４】
前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおける前記第１および第２の初期インジケータ値、および、前記１または複数のマッピング関数のうちの少なくとも１つを示す１または複数の値をコーディングすること、をさらに備える請求項３に記載の方法。
【請求項５】
ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記第１および第２の初期インジケータ値と、前記１または複数のマッピング関数のうちの少なくとも１つを決定すること、をさらに備える請求項３に記載の方法。
【請求項６】
１または複数の式と、前記ビデオ・データの第１のスライスの第１の初期インジケータ値、および前記ビデオ・データの第２のスライスの第２の初期インジケータ値、のうちの１または複数に基づいて前記初期値セットを決定することをさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、請求項１に記載の方法。
【請求項７】
前記第１および第２のスライスのおのおのをコーディングするために使用されるフル・セットのコンテキストのうち、コンテキストのサブセットを決定することをさらに備え、
前記コンテキストのサブセットは、前記第１および第２のシンタックス要素の特定のタイプのシンタックス要素をコーディングするために使用される少なくとも１または複数のコンテキストを含み、
前記ビデオ・データの第１および第２のスライスのスライス・タイプに基づいて前記初期値セットを選択することは、前記コンテキストのサブセットのビデオ・データの第１および第２のスライスのスライス・タイプに基づいて、前記初期値セットを選択することを備え、
前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングすることは、前記初期値セットに基づいて、前記コンテキストのサブセットの、１または複数のコンテキストを初期化することを備える、請求項１に記載の方法。
【請求項８】
前記コンテキストのサブセットは、ビデオ・データのブロックの係数に関連する、１または複数のタイプのシンタックス要素をコーディングするために使用される少なくとも１または複数のコンテキストを含む、請求項７に記載の方法。
【請求項９】
前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおいて、前記コンテキストのサブセットに含まれるフル・セットのコンテキストのうちのコンテキストを示す１または複数の値をコーディングすること、をさらに備える請求項７に記載の方法。
【請求項１０】
前記フル・セットのコンテキストのうち、コンテキストのサブセットを決定することは、ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記コンテキストのサブセットに含まれる、前記フル・セットのコンテキストのうちのコンテキストを決定することを備える、請求項７に記載の方法。
【請求項１１】
前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングすることは、それぞれのシンタックス要素が属するビデオ・データの前記第１および第２のスライスの前記第１および第２のスライス・タイプのうちの対応する１つと、前記初期値セットに基づいて、前記第１および第２のシンタックス要素のうち、少なくとも特定のタイプのシンタックス要素をコーディングするために使用される１または複数のコンテキストのおのおのの初期コンテキスト状態を決定することを備える、請求項１に記載の方法。
【請求項１２】
前記第１および第２のスライス・タイプのうちの対応する１つと、前記初期値セットに基づいて、前記１または複数のコンテキストのおのおのの初期コンテキスト状態を決定することは、前記第１および第２のスライス・タイプのうちの対応する１つに基づいて決定されたＱＰオフセット値と、量子化パラメータ（ＱＰ）値と、前記初期値セットの１または複数の値に基づいて、前記それぞれの初期コンテキスト状態を決定することを備える、請求項１１に記載の方法。
【請求項１３】
前記第１および第２のスライス・タイプのおのおのは、イントラ予測（Ｉ）スライス・タイプ、一方向インタ予測（Ｐ）スライス・タイプ、および双方向インタ予測（Ｂ）スライス・タイプのうちの１つを備える、請求項１に記載の方法。
【請求項１４】
前記初期値セットは、スロープ値および個別の交差値と、スロープ値および交差値の両方を表す単一の値と、のうちの１つを備える、請求項１に記載の方法。
【請求項１５】
前記コーディングは、デコードすることを備え、
前記初期値セットを用いて、前記第１および第２のシンタックス要素をデコードすることは、
受け取られたビットストリームにおいて、１または複数のマッピング関数、前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値、および、前記第１および第２のスライス・タイプのうちの少なくとも１つを受け取ることと、
１または複数のマッピング関数、第１および第２の初期インジケータ値、および、前記受け取られた第１および第２のスライス・タイプのうちの１または複数に基づいて、前記初期値セットを決定することと、
前記初期値セットの１または複数の値に基づいて、コンテキスト適応エントロピ・コーディング処理の１または複数のコンテキストを初期化することと、
前記初期化された１または複数のコンテキストに基づいて、前記コンテキスト適応エントロピ・コーディング処理を実行することによって、前記第１および第２のシンタックス要素をデコードすることと
を含む、請求項１に記載の方法。
【請求項１６】
前記コーディングは、エンコードすることを備え、
前記初期値セットを用いて前記第１および第２のシンタックス要素をエンコードすることは、
１または複数のマッピング関数、前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値、および、前記第１および第２のスライス・タイプのうちの少なくとも１つに基づいて、前記初期値セットを決定することと、
前記初期値セットの１または複数の値に基づいて、コンテキスト適応エントロピ・コーディング処理の１または複数のコンテキストを初期化することと、
前記初期化された１または複数のコンテキストに基づいて、前記コンテキスト適応エントロピ・コーディング処理を実行することによって、前記第１および第２のシンタックス要素をエンコードすることと、
ビットストリームにおいて、１または複数のマッピング関数、前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値、および、前記第１および第２のスライス・タイプのうちの少なくとも１つをエンコードすることと
を含む、請求項１に記載の方法。
【請求項１７】
ビデオ・データをコーディングするように構成された装置であって、
特定のタイプのシンタックス要素にしたがう、ビデオ・データの第１のスライスの第１のシンタックス要素をコーディングするための初期値セットを、前記ビデオ・データの第１のスライスの第１のスライス・タイプの、前記初期値セットへのマッピングに基づいて選択し、
前記第１のシンタックス要素を、前記初期値セットを用いてコーディングし、
前記特定のタイプのシンタックス要素にしたがう、ビデオ・データの第２のスライスの第２のシンタックス要素をコーディングするために、前記初期値セットを、前記ビデオ・データの第２のスライスの第２のスライス・タイプの、前記初期値セットへのマッピングに基づいて選択し、ここで、前記第２のスライス・タイプは、前記第１のスライス・タイプとは異なり、前記第１および第２のスライス・タイプのうちの少なくとも１つのスライス・タイプは、時間的に予測されたスライス・タイプである、
前記第２のシンタックス要素を、前記初期値セットを用いてコーディングする
ように構成された、ビデオ・コーダを備える装置。
【請求項１８】
前記ビデオ・コーダはさらに、
前記ビデオ・データの第１のスライスの第１の初期インジケータ値と、前記ビデオ・データの第２のスライスの第２の初期インジケータ値とに基づいて、前記第１および第２のシンタックス要素をコーディングするために使用される初期値セットを決定するように構成され、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、請求項１７に記載の装置。
【請求項１９】
前記ビデオ・コーダはさらに、
１または複数のマッピング関数のうちの第１のマッピング関数を用いて、前記ビデオ・データの第１のスライスの第１の初期インジケータ値および前記第１のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第１のマッピングを決定し、
前記１または複数のマッピング関数のうちの第２のマッピング関数を用いて、前記ビデオ・データの第２のスライスの第２の初期インジケータ値および前記第２のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第２のマッピングを決定するように構成され、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、請求項１７に記載の装置。
【請求項２０】
前記ビデオ・コーダはさらに、前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおける前記第１および第２の初期インジケータ値、および、前記１または複数のマッピング関数のうちの少なくとも１つを示す１または複数の値をコーディングするように構成された、請求項１９に記載の装置。
【請求項２１】
前記ビデオ・コーダはさらに、ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記第１および第２の初期インジケータ値と、前記１または複数のマッピング関数のうちの少なくとも１つを決定するように構成された、請求項１９に記載の装置。
【請求項２２】
前記ビデオ・コーダはさらに、前記第１および第２のスライスのおのおのをコーディングするために使用されるフル・セットのコンテキストのうち、コンテキストのサブセットを決定するように構成され、
前記コンテキストのサブセットは、前記第１および第２のシンタックス要素の特定のタイプのシンタックス要素をコーディングするために使用される少なくとも１または複数のコンテキストを含み、
前記ビデオ・データの第１および第２のスライスのスライス・タイプに基づいて前記初期値セットを選択するために、前記ビデオ・コーダは、前記コンテキストのサブセットのビデオ・データの第１および第２のスライスのスライス・タイプに基づいて、前記初期値セットを選択するように構成され、
前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングするために、前記ビデオ・コーダは、前記初期値セットに基づいて、コンテキストのサブセットのうちの１または複数のコンテキストを初期化するように構成された、請求項１７に記載の装置。
【請求項２３】
前記ビデオ・コーダはさらに、前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおいて、前記コンテキストのサブセットに含まれるフル・セットのコンテキストのうちのコンテキストを示す１または複数の値をコーディングするように構成された、請求項２２に記載の装置。
【請求項２４】
前記フル・セットのコンテキストのうち、コンテキストのサブセットを決定するために、前記ビデオ・コーダは、ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記コンテキストのサブセットに含まれる、前記フル・セットのコンテキストのうちのコンテキストを決定するように構成された、請求項２２に記載の装置。
【請求項２５】
前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングするために、前記ビデオ・コーダは、前記初期値セットと、それぞれのシンタックス要素が属するビデオ・データの第１および第２のスライスの第１および第２のスライス・タイプのうちの対応する１つに基づいて、前記第１および第２のシンタックス要素のうちの、少なくとも特定のタイプのシンタックス要素をコーディングするために使用される１または複数のコンテキストのおのおのの初期コンテキスト状態を決定するように構成された、請求項１７に記載の装置。
【請求項２６】
前記第１および第２のスライス・タイプのうちの対応する１つと、前記初期値セットに基づいて、前記１または複数のコンテキストのおのおのの初期コンテキスト状態を決定するために、前記ビデオ・コーダは、前記第１および第２のスライス・タイプのうちの対応する１つに基づいて決定されたＱＰオフセット値と、量子化パラメータ（ＱＰ）値と、前記初期値セットの１または複数の値に基づいて、前記それぞれの初期コンテキスト状態を決定するように構成された、請求項２５に記載の装置。
【請求項２７】
前記初期値セットは、スロープ値および個別の交差値と、スロープ値および交差値の両方を表す単一の値と、のうちの１つを備える、請求項１７に記載の装置。
【請求項２８】
集積回路と、マイクロプロセッサと、前記ビデオ・コーダを含んでいる無線通信デバイスとのうちの少なくとも１つを備える、請求項１７に記載の装置。
【請求項２９】
ビデオ・データをコーディングするように構成されたデバイスであって、
特定のタイプのシンタックス要素にしたがう、ビデオ・データの第１のスライスの第１のシンタックス要素をコーディングするための初期値セットを、前記ビデオ・データの第１のスライスの第１のスライス・タイプの、前記初期値セットへのマッピングに基づいて選択する手段と、
前記第１のシンタックス要素を、前記初期値セットを用いてコーディングする手段と、
前記特定のタイプのシンタックス要素にしたがう、ビデオ・データの第２のスライスの第２のシンタックス要素をコーディングするために、前記初期値セットを、前記ビデオ・データの第２のスライスの第２のスライス・タイプの、前記初期値セットへのマッピングに基づいて選択する手段と、ここで、前記第２のスライス・タイプは、前記第１のスライス・タイプとは異なり、前記第１および第２のスライス・タイプのうちの少なくとも１つのスライス・タイプは、時間的に予測されたスライス・タイプである、
前記第２のシンタックス要素を、前記初期値セットを用いてコーディングする手段と、
を備えるデバイス。
【請求項３０】
前記ビデオ・データの第１のスライスの第１の初期インジケータ値と、前記ビデオ・データの第２のスライスの第２の初期インジケータ値とに基づいて、前記第１および第２のシンタックス要素をコーディングするために使用される初期値セットを決定する手段をさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、請求項２９に記載のデバイス。
【請求項３１】
１または複数のマッピング関数のうちの第１のマッピング関数を用いて、前記ビデオ・データの第１のスライスの第１の初期インジケータ値および前記第１のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第１のマッピングを決定する手段と、
前記１または複数のマッピング関数のうちの第２のマッピング関数を用いて、前記ビデオ・データの第２のスライスの第２の初期インジケータ値および前記第２のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第２のマッピングを決定する手段とをさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、請求項２９に記載のデバイス。
【請求項３２】
前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおける前記第１および第２の初期インジケータ値、および、前記１または複数のマッピング関数のうちの少なくとも１つを示す１または複数の値をコーディングする手段、をさらに備える請求項３１に記載のデバイス。
【請求項３３】
ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記第１および第２の初期インジケータ値と、前記１または複数のマッピング関数のうちの少なくとも１つを決定する手段、をさらに備える請求項３１に記載のデバイス。
【請求項３４】
前記第１および第２のスライスのおのおのをコーディングするために使用されるフル・セットのコンテキストのうち、コンテキストのサブセットを決定する手段をさらに備え、
前記コンテキストのサブセットは、前記第１および第２のシンタックス要素の特定のタイプのシンタックス要素をコーディングするために使用される少なくとも１または複数のコンテキストを含み、前記ビデオ・データの第１および第２のスライスのスライス・タイプに基づいて前記初期値セットを選択する手段は、前記コンテキストのサブセットのビデオ・データの第１および第２のスライスのスライス・タイプに基づいて、前記初期値セットを選択する手段を備え、前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングする手段は、前記初期値セットに基づいて、前記コンテキストのサブセットの、１または複数のコンテキストを初期化する手段を備える、請求項２９に記載のデバイス。
【請求項３５】
前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおいて、前記コンテキストのサブセットに含まれるフル・セットのコンテキストのうちのコンテキストを示す１または複数の値をコーディングする手段、をさらに備える請求項３４に記載のデバイス。
【請求項３６】
前記フル・セットのコンテキストのうち、コンテキストのサブセットを決定する手段は、ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記コンテキストのサブセットに含まれる、前記フル・セットのコンテキストのうちのコンテキストを決定する手段を備える、請求項３４に記載のデバイス。
【請求項３７】
前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングする手段は、それぞれのシンタックス要素が属するビデオ・データの前記第１および第２のスライスの前記第１および第２のスライス・タイプのうちの対応する１つと、前記初期値セットに基づいて、前記第１および第２のシンタックス要素のうち、少なくとも特定のタイプのシンタックス要素をコーディングするために使用される１または複数のコンテキストのおのおのの初期コンテキスト状態を決定する手段を備える、請求項２９に記載のデバイス。
【請求項３８】
前記第１および第２のスライス・タイプのうちの対応する１つと、前記初期値セットに基づいて、前記１または複数のコンテキストのおのおのの初期コンテキスト状態を決定する手段は、前記第１および第２のスライス・タイプのうちの対応する１つに基づいて決定されたＱＰオフセット値と、量子化パラメータ（ＱＰ）値と、前記初期値セットの１または複数の値に基づいて、前記それぞれの初期コンテキスト状態を決定する手段を備える、請求項３７に記載のデバイス。
【請求項３９】
前記初期値セットは、スロープ値および個別の交差値と、スロープ値および交差値の両方を表す単一の値と、のうちの１つを備える、請求項２９に記載のデバイス。
【請求項４０】
実行された場合、１または複数のプロセッサに対して、ビデオ・データをコーディングさせるための命令群を格納したコンピュータ読取可能な記憶媒体であって、
前記命令群は、前記１または複数のプロセッサに対して、
特定のタイプのシンタックス要素にしたがう、ビデオ・データの第１のスライスの第１のシンタックス要素をコーディングするための初期値セットを、前記ビデオ・データの第１のスライスの第１のスライス・タイプの、前記初期値セットへのマッピングに基づいて選択させ、
前記第１のシンタックス要素を、前記初期値セットを用いてコーディングさせ、
前記特定のタイプのシンタックス要素にしたがう、ビデオ・データの第２のスライスの第２のシンタックス要素をコーディングするために、前記初期値セットを、前記ビデオ・データの第２のスライスの第２のスライス・タイプの、前記初期値セットへのマッピングに基づいて選択させ、ここで、前記第２のスライス・タイプは、前記第１のスライス・タイプとは異なり、前記第１および第２のスライス・タイプのうちの少なくとも１つのスライス・タイプは、時間的に予測されたスライス・タイプである、
前記第２のシンタックス要素を、前記初期値セットを用いてコーディングさせる、コンピュータ読取可能な記憶媒体。
【請求項４１】
前記１または複数のプロセッサに対して、
前記ビデオ・データの第１のスライスの第１の初期インジケータ値と、前記ビデオ・データの第２のスライスの第２の初期インジケータ値とに基づいて、前記第１および第２のシンタックス要素をコーディングするために使用される初期値セットを決定させるための命令群をさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、請求項４０に記載のコンピュータ読取可能な記憶媒体。
【請求項４２】
前記１または複数のプロセッサに対して、
１または複数のマッピング関数のうちの第１のマッピング関数を用いて、前記ビデオ・データの第１のスライスの第１の初期インジケータ値および前記第１のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第１のマッピングを決定させ、
前記１または複数のマッピング関数のうちの第２のマッピング関数を用いて、前記ビデオ・データの第２のスライスの第２の初期インジケータ値および前記第２のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第２のマッピングを決定させるための命令群をさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、請求項４０に記載のコンピュータ読取可能な記憶媒体。
【請求項４３】
前記１または複数のプロセッサに対して、前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおける前記第１および第２の初期インジケータ値、および、前記１または複数のマッピング関数のうちの少なくとも１つを示す１または複数の値をコーディングさせるための命令群をさらに備える、請求項４２に記載のコンピュータ読取可能な記憶媒体。
【請求項４４】
前記１または複数のプロセッサに対して、ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記第１および第２の初期インジケータ値と、前記１または複数のマッピング関数のうちの少なくとも１つを決定させるための命令群をさらに備える、請求項４２に記載のコンピュータ読取可能な記憶媒体。
【請求項４５】
前記１または複数のプロセッサに対して、前記第１および第２のスライスのおのおのをコーディングするために使用されるフル・セットのコンテキストのうち、コンテキストのサブセットを決定させるための命令群をさらに備え、
前記コンテキストのサブセットは、前記第１および第２のシンタックス要素の特定のタイプのシンタックス要素をコーディングするために使用される少なくとも１または複数のコンテキストを含み、
前記ビデオ・データの第１および第２のスライスのスライス・タイプに基づいて前記初期値セットを選択するために、前記命令群は、前記１または複数のプロセッサに対して、前記サブセットのビデオ・データの第１および第２のスライスのスライス・タイプに基づいて、前記初期値セットを選択させ、
前記１または複数のプロセッサに対して、前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングさせるための命令群は、前記１または複数のプロセッサに対して、前記初期値セットに基づいて、前記コンテキストのサブセットの、１または複数のコンテキストを初期化させるための命令群を備える、請求項４０に記載のコンピュータ読取可能な記憶媒体。
【請求項４６】
前記１または複数のプロセッサに対して、前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおいて、前記コンテキストのサブセットに含まれるフル・セットのコンテキストのうちのコンテキストを示す１または複数の値をコーディングさせるための命令群、をさらに備える請求項４５に記載のコンピュータ読取可能な記憶媒体。
【請求項４７】
前記１または複数のプロセッサに対して、前記フル・セットのコンテキストのうち、コンテキストのサブセットを決定させるための命令群は、前記１または複数のプロセッサに対して、ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記コンテキストのサブセットに含まれる、前記フル・セットのコンテキストのうちのコンテキストを決定させるための命令群を備える、請求項４５に記載のコンピュータ読取可能な記憶媒体。
【請求項４８】
前記１または複数のプロセッサに対して、前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングさせるための命令群は、前記１または複数のプロセッサに対して、前記初期値セットと、それぞれのシンタックス要素が属するビデオ・データの第１および第２のスライスの第１および第２のスライス・タイプのうちの対応する１つに基づいて、前記第１および第２のシンタックス要素のうちの、少なくとも特定のタイプのシンタックス要素をコーディングするために使用される１または複数のコンテキストのおのおのの初期コンテキスト状態を決定させるための命令群を備える、請求項４０に記載のコンピュータ読取可能な記憶媒体。
【請求項４９】
前記１または複数のプロセッサに対して、前記第１および第２のスライス・タイプのうちの対応する１つと、前記初期値セットに基づいて、前記１または複数のコンテキストのおのおのの初期コンテキスト状態を決定させるための命令群は、前記１または複数のプロセッサに対して、前記第１および第２のスライス・タイプのうちの対応する１つに基づいて決定されたＱＰオフセット値と、量子化パラメータ（ＱＰ）値と、前記初期値セットの１または複数の値に基づいて、前記それぞれの初期コンテキスト状態を決定させるための命令群を備える、請求項４８に記載のコンピュータ読取可能な記憶媒体。
【請求項５０】
前記初期値セットは、スロープ値および個別の交差値と、スロープ値および交差値の両方を表す単一の値と、のうちの１つを備える、請求項４０に記載のコンピュータ読取可能な記憶媒体。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０１８７
【補正方法】変更
【補正の内容】
【０１８７】
さまざまな例が記載された。これらの例およびその他の例は、以下の特許請求の範囲のスコープ内である。
以下に、出願当初の特許請求の範囲に記載された発明を付記する。
［発明１］
ビデオ・データをコーディングする方法であって、
第１のスライス・タイプにしたがうビデオ・データの第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素を、初期値セットを用いてコーディングすることと、
第２のスライス・タイプにしたがうビデオ・データの第２のスライスの、前記特定のタイプのシンタックス要素にしたがう第２のシンタックス要素を、前記初期値セットを用いてコーディングすることとを備え、
前記第１のスライス・タイプは、前記第２のスライス・タイプとは異なり、前記第１のスライス・タイプと前記第２のスライス・タイプとのうちの少なくとも１つは、時間的に予測されたスライス・タイプである、方法。
［発明２］
前記ビデオ・データの第１のスライスの第１のスライス・タイプ、および、前記ビデオ・データの第２のスライスの第２のスライス・タイプと、
前記ビデオ・データの第１のスライスの第１の初期インジケータ値、および、前記ビデオ・データの第２のスライスの第２の初期インジケータ値と、
のうちの少なくとも１つに基づいて、前記第１および第２のシンタックス要素をコーディングするために使用される初期値セットを決定することをさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、発明１に記載の方法。
［発明３］
１または複数のマッピング関数のうちの第１のマッピング関数を用いて、前記ビデオ・データの第１のスライスの第１の初期インジケータ値および前記第１のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第１のマッピングを決定することと、
前記１または複数のマッピング関数のうちの第２のマッピング関数を用いて、前記ビデオ・データの第２のスライスの第２の初期インジケータ値および前記第２のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第２のマッピングを決定することとをさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、発明１に記載の方法。
［発明４］
前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおける前記第１および第２の初期インジケータ値、および、前記１または複数のマッピング関数のうちの少なくとも１つを示す１または複数の値をコーディングすること、をさらに備える発明３に記載の方法。
［発明５］
ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記第１および第２の初期インジケータ値と、前記１または複数のマッピング関数のうちの少なくとも１つを決定すること、をさらに備える発明３に記載の方法。
［発明６］
１または複数の式と、前記ビデオ・データの第１のスライスの第１の初期インジケータ値、前記ビデオ・データの第２のスライスの第２の初期インジケータ値、および前記第１および第２のスライス・タイプのうちの１または複数に基づいて前記初期値セットを決定することをさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、発明１に記載の方法。
［発明７］
前記第１および第２のスライスのおのおのをコーディングするために使用されるフル・セットのコンテキストのうち、コンテキストのサブセットを決定することをさらに備え、
前記コンテキストのサブセットは、前記第１および第２のシンタックス要素の特定のタイプのシンタックス要素をコーディングするために使用される少なくとも１または複数のコンテキストを含み、
前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングすることは、前記初期値セットに基づいて、前記コンテキストのサブセットの、１または複数のコンテキストを初期化することを備える、発明１に記載の方法。
［発明８］
前記コンテキストのサブセットは、ビデオ・データのブロックの係数に関連する、１または複数のタイプのシンタックス要素をコーディングするために使用される少なくとも１または複数のコンテキストを含む、発明７に記載の方法。
［発明９］
前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおいて、前記コンテキストのサブセットに含まれるフル・セットのコンテキストのうちのコンテキストを示す１または複数の値をコーディングすること、をさらに備える発明７に記載の方法。
［発明１０］
前記フル・セットのコンテキストのうち、コンテキストのサブセットを決定することは、ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記コンテキストのサブセットに含まれる、前記フル・セットのコンテキストのうちのコンテキストを決定することを備える、発明７に記載の方法。
［発明１１］
前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングすることは、それぞれのシンタックス要素が属するビデオ・データの前記第１および第２のスライスの前記第１および第２のスライス・タイプのうちの対応する１つと、前記初期値セットに基づいて、前記第１および第２のシンタックス要素のうち、少なくとも特定のタイプのシンタックス要素をコーディングするために使用される１または複数のコンテキストのおのおのの初期コンテキスト状態を決定することを備える、発明１に記載の方法。
［発明１２］
前記第１および第２のスライス・タイプのうちの対応する１つと、前記初期値セットに基づいて、前記１または複数のコンテキストのおのおのの初期コンテキスト状態を決定することは、前記第１および第２のスライス・タイプのうちの対応する１つに基づいて決定されたＱＰオフセット値と、量子化パラメータ（ＱＰ）値と、前記初期値セットの１または複数の値に基づいて、前記それぞれの初期コンテキスト状態を決定することを備える、発明１１に記載の方法。
［発明１３］
前記第１および第２のスライス・タイプのおのおのは、イントラ予測（Ｉ）スライス・タイプ、一方向インタ予測（Ｐ）スライス・タイプ、および双方向インタ予測（Ｂ）スライス・タイプのうちの１つを備える、発明１に記載の方法。
［発明１４］
前記初期値セットは、スロープ値および個別の交差値と、スロープ値および交差値の両方を表す単一の値と、のうちの１つを備える、発明１に記載の方法。
［発明１５］
前記コーディングは、デコードすることを備え、
前記初期値セットを用いて、前記第１および第２のシンタックス要素をデコードすることは、
受け取られたビットストリームにおいて、１または複数のマッピング関数、前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値、および、前記第１および第２のスライス・タイプのうちの少なくとも１つを受け取ることと、
１または複数のマッピング関数、第１および第２の初期インジケータ値、および、前記受け取られた第１および第２のスライス・タイプのうちの１または複数に基づいて、前記初期値セットを決定することと、
前記初期値セットの１または複数の値に基づいて、コンテキスト適応エントロピ・コーディング処理の１または複数のコンテキストを初期化することと、
前記初期化された１または複数のコンテキストに基づいて、前記コンテキスト適応エントロピ・コーディング処理を実行することによって、前記第１および第２のシンタックス要素をデコードすることと
を含む、発明１に記載の方法。
［発明１６］
前記コーディングは、エンコードすることを備え、
前記初期値セットを用いて前記第１および第２のシンタックス要素をエンコードすることは、
１または複数のマッピング関数、前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値、および、前記第１および第２のスライス・タイプのうちの少なくとも１つに基づいて、前記初期値セットを決定することと、
前記初期値セットの１または複数の値に基づいて、コンテキスト適応エントロピ・コーディング処理の１または複数のコンテキストを初期化することと、
前記初期化された１または複数のコンテキストに基づいて、前記コンテキスト適応エントロピ・コーディング処理を実行することによって、前記第１および第２のシンタックス要素をエンコードすることと、
ビットストリームにおいて、１または複数のマッピング関数、前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値、および、前記第１および第２のスライス・タイプのうちの少なくとも１つをエンコードすることと
を含む、発明１に記載の方法。
［発明１７］
ビデオ・データをコーディングするように構成された装置であって、
第１のスライス・タイプにしたがうビデオ・データの第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素を、初期値セットを用いてコーディングし、
第２のスライス・タイプにしたがうビデオ・データの第２のスライスの、前記特定のタイプのシンタックス要素にしたがう第２のシンタックス要素を、前記初期値セットを用いてコーディングする
ように構成されたビデオ・コーダを備え、
前記第１のスライス・タイプは、前記第２のスライス・タイプとは異なり、前記第１のスライス・タイプと前記第２のスライス・タイプとのうちの少なくとも１つは、時間的に予測されたスライス・タイプである、装置。
［発明１８］
前記ビデオ・コーダはさらに、
前記ビデオ・データの第１のスライスの第１のスライス・タイプ、および、前記ビデオ・データの第２のスライスの第２のスライス・タイプと、
前記ビデオ・データの第１のスライスの第１の初期インジケータ値、および、前記ビデオ・データの第２のスライスの第２の初期インジケータ値と、
のうちの少なくとも１つに基づいて、前記第１および第２のシンタックス要素をコーディングするために使用される初期値セットを決定するように構成され、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、発明１７に記載の装置。
［発明１９］
前記ビデオ・コーダはさらに、
１または複数のマッピング関数のうちの第１のマッピング関数を用いて、前記ビデオ・データの第１のスライスの第１の初期インジケータ値および前記第１のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第１のマッピングを決定し、
前記１または複数のマッピング関数のうちの第２のマッピング関数を用いて、前記ビデオ・データの第２のスライスの第２の初期インジケータ値および前記第２のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第２のマッピングを決定するように構成され、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、発明１７に記載の装置。
［発明２０］
前記ビデオ・コーダはさらに、前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおける前記第１および第２の初期インジケータ値、および、前記１または複数のマッピング関数のうちの少なくとも１つを示す１または複数の値をコーディングするように構成された、発明１９に記載の装置。
［発明２１］
前記ビデオ・コーダはさらに、ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記第１および第２の初期インジケータ値と、前記１または複数のマッピング関数のうちの少なくとも１つを決定するように構成された、発明１９に記載の装置。
［発明２２］
前記ビデオ・コーダはさらに、前記第１および第２のスライスのおのおのをコーディングするために使用されるフル・セットのコンテキストのうち、コンテキストのサブセットを決定するように構成され、
前記コンテキストのサブセットは、前記第１および第２のシンタックス要素の特定のタイプのシンタックス要素をコーディングするために使用される少なくとも１または複数のコンテキストを含み、
前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングするために、前記ビデオ・コーダは、前記初期値セットに基づいて、コンテキストのサブセットのうちの１または複数のコンテキストを初期化するように構成された、発明１７に記載の装置。
［発明２３］
前記ビデオ・コーダはさらに、前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおいて、前記コンテキストのサブセットに含まれるフル・セットのコンテキストのうちのコンテキストを示す１または複数の値をコーディングするように構成された、発明２２に記載の装置。
［発明２４］
前記フル・セットのコンテキストのうち、コンテキストのサブセットを決定するために、前記ビデオ・コーダは、ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記コンテキストのサブセットに含まれる、前記フル・セットのコンテキストのうちのコンテキストを決定するように構成された、発明２２に記載の装置。
［発明２５］
前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングするために、前記ビデオ・コーダは、前記初期値セットと、それぞれのシンタックス要素が属するビデオ・データの第１および第２のスライスの第１および第２のスライス・タイプのうちの対応する１つに基づいて、前記第１および第２のシンタックス要素のうちの、少なくとも特定のタイプのシンタックス要素をコーディングするために使用される１または複数のコンテキストのおのおのの初期コンテキスト状態を決定するように構成された、発明１７に記載の装置。
［発明２６］
前記第１および第２のスライス・タイプのうちの対応する１つと、前記初期値セットに基づいて、前記１または複数のコンテキストのおのおのの初期コンテキスト状態を決定するために、前記ビデオ・コーダは、前記第１および第２のスライス・タイプのうちの対応する１つに基づいて決定されたＱＰオフセット値と、量子化パラメータ（ＱＰ）値と、前記初期値セットの１または複数の値に基づいて、前記それぞれの初期コンテキスト状態を決定するように構成された、発明２５に記載の装置。
［発明２７］
前記初期値セットは、スロープ値および個別の交差値と、スロープ値および交差値の両方を表す単一の値と、のうちの１つを備える、発明１７に記載の装置。
［発明２８］
集積回路と、マイクロプロセッサと、前記ビデオ・コーダを含んでいる無線通信デバイスとのうちの少なくとも１つを備える、発明１７に記載の装置。
［発明２９］
ビデオ・データをコーディングするように構成されたデバイスであって、
第１のスライス・タイプにしたがうビデオ・データの第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素を、初期値セットを用いてコーディングする手段と、
第２のスライス・タイプにしたがうビデオ・データの第２のスライスの、前記特定のタイプのシンタックス要素にしたがう第２のシンタックス要素を、前記初期値セットを用いてコーディングする手段とを備え、
前記第１のスライス・タイプは、前記第２のスライス・タイプとは異なり、前記第１のスライス・タイプと前記第２のスライス・タイプとのうちの少なくとも１つは、時間的に予測されたスライス・タイプである、デバイス。
［発明３０］
前記ビデオ・データの第１のスライスの第１のスライス・タイプ、および、前記ビデオ・データの第２のスライスの第２のスライス・タイプと、  前記ビデオ・データの第１のスライスの第１の初期インジケータ値、および、前記ビデオ・データの第２のスライスの第２の初期インジケータ値と、のうちの少なくとも１つに基づいて、前記第１および第２のシンタックス要素をコーディングするために使用される初期値セットを決定する手段をさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、発明２９に記載のデバイス。
［発明３１］
１または複数のマッピング関数のうちの第１のマッピング関数を用いて、前記ビデオ・データの第１のスライスの第１の初期インジケータ値および前記第１のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第１のマッピングを決定する手段と、
前記１または複数のマッピング関数のうちの第２のマッピング関数を用いて、前記ビデオ・データの第２のスライスの第２の初期インジケータ値および前記第２のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第２のマッピングを決定する手段とをさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、発明２９に記載のデバイス。
［発明３２］
前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおける前記第１および第２の初期インジケータ値、および、前記１または複数のマッピング関数のうちの少なくとも１つを示す１または複数の値をコーディングする手段、をさらに備える発明３１に記載のデバイス。
［発明３３］
ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記第１および第２の初期インジケータ値と、前記１または複数のマッピング関数のうちの少なくとも１つを決定する手段、をさらに備える発明３１に記載のデバイス。
［発明３４］
前記第１および第２のスライスのおのおのをコーディングするために使用されるフル・セットのコンテキストのうち、コンテキストのサブセットを決定する手段をさらに備え、
前記コンテキストのサブセットは、前記第１および第２のシンタックス要素の特定のタイプのシンタックス要素をコーディングするために使用される少なくとも１または複数のコンテキストを含み、前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングする手段は、前記初期値セットに基づいて、前記コンテキストのサブセットの、１または複数のコンテキストを初期化する手段を備える、発明２９に記載のデバイス。
［発明３５］
前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおいて、前記コンテキストのサブセットに含まれるフル・セットのコンテキストのうちのコンテキストを示す１または複数の値をコーディングする手段、をさらに備える発明３４に記載のデバイス。
［発明３６］
前記フル・セットのコンテキストのうち、コンテキストのサブセットを決定する手段は、ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記コンテキストのサブセットに含まれる、前記フル・セットのコンテキストのうちのコンテキストを決定する手段を備える、発明３４に記載のデバイス。
［発明３７］
前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングする手段は、それぞれのシンタックス要素が属するビデオ・データの前記第１および第２のスライスの前記第１および第２のスライス・タイプのうちの対応する１つと、前記初期値セットに基づいて、前記第１および第２のシンタックス要素のうち、少なくとも特定のタイプのシンタックス要素をコーディングするために使用される１または複数のコンテキストのおのおのの初期コンテキスト状態を決定する手段を備える、発明２９に記載のデバイス。
［発明３８］
前記第１および第２のスライス・タイプのうちの対応する１つと、前記初期値セットに基づいて、前記１または複数のコンテキストのおのおのの初期コンテキスト状態を決定する手段は、前記第１および第２のスライス・タイプのうちの対応する１つに基づいて決定されたＱＰオフセット値と、量子化パラメータ（ＱＰ）値と、前記初期値セットの１または複数の値に基づいて、前記それぞれの初期コンテキスト状態を決定する手段を備える、発明３７に記載のデバイス。
［発明３９］
前記初期値セットは、スロープ値および個別の交差値と、スロープ値および交差値の両方を表す単一の値と、のうちの１つを備える、発明２９に記載のデバイス。
［発明４０］
実行された場合、１または複数のプロセッサに対して、ビデオ・データをコーディングさせるための命令群を格納したコンピュータ読取可能な記憶媒体であって、
前記命令群は、前記１または複数のプロセッサに対して、
第１のスライス・タイプにしたがうビデオ・データの第１のスライスの、特定のタイプのシンタックス要素にしたがう第１のシンタックス要素を、初期値セットを用いてコーディングさせ、
第２のスライス・タイプにしたがうビデオ・データの第２のスライスの、前記特定のタイプのシンタックス要素にしたがう第２のシンタックス要素を、前記初期値セットを用いてコーディングさせ、
前記第１のスライス・タイプは、前記第２のスライス・タイプとは異なり、前記第１のスライス・タイプと前記第２のスライス・タイプとのうちの少なくとも１つは、時間的に予測されたスライス・タイプである、コンピュータ読取可能な記憶媒体。
［発明４１］
前記１または複数のプロセッサに対して、
前記ビデオ・データの第１のスライスの第１のスライス・タイプ、および、前記ビデオ・データの第２のスライスの第２のスライス・タイプと、
前記ビデオ・データの第１のスライスの第１の初期インジケータ値、および、前記ビデオ・データの第２のスライスの第２の初期インジケータ値と、
のうちの少なくとも１つに基づいて、前記第１および第２のシンタックス要素をコーディングするために使用される初期値セットを決定させるための命令群をさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、発明４０に記載のコンピュータ読取可能な記憶媒体。
［発明４２］
前記１または複数のプロセッサに対して、
１または複数のマッピング関数のうちの第１のマッピング関数を用いて、前記ビデオ・データの第１のスライスの第１の初期インジケータ値および前記第１のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第１のマッピングを決定させ、
前記１または複数のマッピング関数のうちの第２のマッピング関数を用いて、前記ビデオ・データの第２のスライスの第２の初期インジケータ値および前記第２のスライス・タイプのうちの１または複数と、前記初期値セットとの間の第２のマッピングを決定させるための命令群をさらに備え、
前記ビデオ・データの第１および第２のスライスの第１および第２の初期インジケータ値のおのおのは、前記ビデオ・データの対応するスライスをコーディングするために使用される特定の初期値セットを示す、発明４０に記載のコンピュータ読取可能な記憶媒体。
［発明４３］
前記１または複数のプロセッサに対して、前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおける前記第１および第２の初期インジケータ値、および、前記１または複数のマッピング関数のうちの少なくとも１つを示す１または複数の値をコーディングさせるための命令群をさらに備える、発明４２に記載のコンピュータ読取可能な記憶媒体。
［発明４４］
前記１または複数のプロセッサに対して、ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記第１および第２の初期インジケータ値と、前記１または複数のマッピング関数のうちの少なくとも１つを決定させるための命令群をさらに備える、発明４２に記載のコンピュータ読取可能な記憶媒体。
［発明４５］
前記１または複数のプロセッサに対して、前記第１および第２のスライスのおのおのをコーディングするために使用されるフル・セットのコンテキストのうち、コンテキストのサブセットを決定させるための命令群をさらに備え、
前記コンテキストのサブセットは、前記第１および第２のシンタックス要素の特定のタイプのシンタックス要素をコーディングするために使用される少なくとも１または複数のコンテキストを含み、
前記１または複数のプロセッサに対して、前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングさせるための命令群は、前記１または複数のプロセッサに対して、前記初期値セットに基づいて、前記コンテキストのサブセットの、１または複数のコンテキストを初期化させるための命令群を備える、発明４０に記載のコンピュータ読取可能な記憶媒体。
［発明４６］
前記１または複数のプロセッサに対して、前記ビデオ・データに関連付けられたシーケンス・ヘッダ、フレーム・ヘッダ、スライス・ヘッダ、ビデオ・パラメータ・セット（ＶＰＳ）、適応パラメータ・セット（ＡＰＳ）、シーケンス・パラメータ・セット（ＳＰＳ）、およびピクチャ・パラメータ・セット（ＰＰＳ）のうちの少なくとも１つにおいて、前記コンテキストのサブセットに含まれるフル・セットのコンテキストのうちのコンテキストを示す１または複数の値をコーディングさせるための命令群、をさらに備える発明４５に記載のコンピュータ読取可能な記憶媒体。
［発明４７］
前記１または複数のプロセッサに対して、前記フル・セットのコンテキストのうち、コンテキストのサブセットを決定させるための命令群は、前記１または複数のプロセッサに対して、ユーザ入力と、前記ビデオ・データに関連付けられたグループ・オブ・ピクチャ（ＧＯＰ）構造パラメータ、フレーム解像度パラメータ、および量子化パラメータ（ＱＰ）のうちの１または複数とに基づいて、前記コンテキストのサブセットに含まれる、前記フル・セットのコンテキストのうちのコンテキストを決定させるための命令群を備える、発明４５に記載のコンピュータ読取可能な記憶媒体。
［発明４８］
前記１または複数のプロセッサに対して、前記初期値セットを用いて前記第１および第２のシンタックス要素をコーディングさせるための命令群は、前記１または複数のプロセッサに対して、前記初期値セットと、それぞれのシンタックス要素が属するビデオ・データの第１および第２のスライスの第１および第２のスライス・タイプのうちの対応する１つに基づいて、前記第１および第２のシンタックス要素のうちの、少なくとも特定のタイプのシンタックス要素をコーディングするために使用される１または複数のコンテキストのおのおのの初期コンテキスト状態を決定させるための命令群を備える、発明４０に記載のコンピュータ読取可能な記憶媒体。
［発明４９］
前記１または複数のプロセッサに対して、前記第１および第２のスライス・タイプのうちの対応する１つと、前記初期値セットに基づいて、前記１または複数のコンテキストのおのおのの初期コンテキスト状態を決定させるための命令群は、前記１または複数のプロセッサに対して、前記第１および第２のスライス・タイプのうちの対応する１つに基づいて決定されたＱＰオフセット値と、量子化パラメータ（ＱＰ）値と、前記初期値セットの１または複数の値に基づいて、前記それぞれの初期コンテキスト状態を決定させるための命令群を備える、発明４８に記載のコンピュータ読取可能な記憶媒体。
［発明５０］
前記初期値セットは、スロープ値および個別の交差値と、スロープ値および交差値の両方を表す単一の値と、のうちの１つを備える、発明４０に記載のコンピュータ読取可能な記憶媒体。
【国際調査報告】
2015504292.tif 000011
2015504292.tif 000012