(57)【特許請求の範囲】
【請求項１】
ビットストリームを受領するよう構成された受領器と；
前記受領器に結合されたプロセッサであって：
イントラ予測モード部分集合を決定する段階であって、前記イントラ予測モード部分集合は、現在の画像ブロックについて複数の参照線に相関するイントラ予測モードを含み、現在の画像ブロックについての主要参照線のみに相関するイントラ予測モードを除くものであり、前記主要参照線は現在の画像ブロックに最も近く位置するものである、段階と；
第一のイントラ予測モードが前記イントラ予測モード部分集合に含まれるときは、代替イントラ予測モード・インデックスによって前記第一のイントラ予測モードをデコードする段階であって、前記代替イントラ予測モード・インデックスは、前記イントラ予測モード部分集合における代替参照線予測モードに番号付けし、これを示すために使われるインデックス値である、段階とを実行するよう構成されている、プロセッサとを有する、
ビデオ符号化装置。
【請求項２】
前記プロセッサはさらに：
前記第一のイントラ予測モードが前記イントラ予測モード部分集合に含まれるときは、参照線インデックスをデコードするよう構成されており、前記参照線インデックスは、前記第一のイントラ予測モードについて、前記複数の参照線からの第一の参照線を示し；
前記プロセッサは、前記第一のイントラ予測モードが前記イントラ予測モード部分集合に含まれないときは、参照線インデックスをデコードしないよう構成されている、
請求項１記載のビデオ符号化装置。
【請求項３】
前記参照線インデックスが、前記ビットストリームにおける前記第一のイントラ予測モードの後に位置される、請求項２記載のビデオ符号化装置。
【請求項４】
前記イントラ予測モード部分集合は、開始方向性イントラ予測モード（starting  directional  intra-prediction  mode、DirS）、終了方向性イントラ予測モード（ending  directional  intra-prediction  mode、DirE）、およびDirSとDirEとの間のN個毎の方向性イントラ予測モードを含み、Nは所定の整数値である、請求項１記載のビデオ符号化装置。
【請求項５】
前記イントラ予測モード部分集合はさらに、平面予測モードおよび直流（Direct  Current、DC）予測モードを含む、請求項１記載のビデオ符号化装置。
【請求項６】
前記イントラ予測モード部分集合は、開始方向性イントラ予測モード（starting  directional  intra-prediction  mode、DirS）、終了方向性イントラ予測モード（ending  directional  intra-prediction  mode、DirE）、中間方向性イントラ予測モード（middle  directional  intra-prediction  mode、DirD）、水平方向性イントラ予測モード（horizontal  directional  intra-prediction  mode、DirH）、垂直方向性イントラ予測モード（vertical  directional  intra-prediction  mode、DirV）、ならびにDirS、DirE、DirD、DirHおよびDirVのプラスまたはマイナスNの方向の有効な方向性イントラ予測モードを含み、Nは所定の整数値である、請求項１記載のビデオ符号化装置。
【請求項７】
前記イントラ予測モード部分集合はさらに、平面予測モードおよび直流（Direct  Current、DC）予測モードを含む、請求項６記載のビデオ符号化装置。
【請求項８】
前記イントラ予測モード部分集合は、デコードされた隣接ブロックのために選択されたイントラ予測モードを含み、前記デコードされた隣接ブロックは、現在の画像ブロックに所定の隣接状態で位置されている、請求項１記載のビデオ符号化装置。
【請求項９】
前記イントラ予測モード部分集合は、現在の画像ブロックについての最確モード（most  probable  mode、MPM）リストに関連付けられたモードを含む、請求項１記載のビデオ符号化装置。
【請求項１０】
ビデオ符号化装置によって実行される方法であって：
ビットストリームを受領する段階と；
イントラ予測モード部分集合を決定する段階であって、前記イントラ予測モード部分集合は、現在の画像ブロックについて複数の参照線に相関するイントラ予測モードを含み、現在の画像ブロックについての主要参照線のみに相関するイントラ予測モードを除くものであり、前記主要参照線は現在の画像ブロックに最も近く位置するものである、段階と；
第一のイントラ予測モードが前記イントラ予測モード部分集合に含まれるときは、代替イントラ予測モード・インデックスによって前記第一のイントラ予測モードをデコードする段階であって、前記代替イントラ予測モード・インデックスは、前記イントラ予測モード部分集合における代替参照線予測モードに番号付けし、これを示すために使われるインデックス値である、段階とを含む、
方法。
【請求項１１】
前記第一のイントラ予測モードが前記イントラ予測モード部分集合に含まれるときは、参照線インデックスをデコードすることであって、前記参照線インデックスは、前記第一のイントラ予測モードについて、前記複数の参照線からの第一の参照線を示す、ことと；
前記第一のイントラ予測モードが前記イントラ予測モード部分集合に含まれないときは、参照線インデックスをデコードしないこととを含む、
請求項１０記載の方法。
【請求項１２】
前記参照線インデックスが、前記ビットストリームにおける前記第一のイントラ予測モードの後に位置される、請求項１１記載の方法。
【請求項１３】
前記イントラ予測モード部分集合は、開始方向性イントラ予測モード（starting  directional  intra-prediction  mode、DirS）、終了方向性イントラ予測モード（ending  directional  intra-prediction  mode、DirE）、およびDirSとDirEとの間のN個毎の方向性イントラ予測モードを含み、Nは所定の整数値である、請求項１０記載の方法。
【請求項１４】
前記イントラ予測モード部分集合はさらに、平面予測モードおよび直流（Direct  Current、DC）予測モードを含む、請求項１０記載の方法。
【請求項１５】
前記イントラ予測モード部分集合は、開始方向性イントラ予測モード（starting  directional  intra-prediction  mode、DirS）、終了方向性イントラ予測モード（ending  directional  intra-prediction  mode、DirE）、中間方向性イントラ予測モード（middle  directional  intra-prediction  mode、DirD）、水平方向性イントラ予測モード（horizontal  directional  intra-prediction  mode、DirH）、垂直方向性イントラ予測モード（vertical  directional  intra-prediction  mode、DirV）、ならびにDirS、DirE、DirD、DirHおよびDirVのプラスまたはマイナスNの方向の有効な方向性イントラ予測モードを含み、Nは所定の整数値である、請求項１０記載の方法。
【請求項１６】
前記イントラ予測モード部分集合はさらに、平面予測モードおよび直流（Direct  Current、DC）予測モードを含む、請求項１５記載の方法。
【請求項１７】
前記イントラ予測モード部分集合は、デコードされた隣接ブロックのために選択されたイントラ予測モードを含み、前記デコードされた隣接ブロックは、現在の画像ブロックに所定の隣接状態で位置されている、請求項１０記載の方法。
【請求項１８】
前記イントラ予測モード部分集合は、現在の画像ブロックについての最確モード（most  probable  mode、MPM）リストに関連付けられたモードを含む、請求項１０記載の方法。
【請求項１９】
プロセッサに：
ビットストリームを受領する段階と；
イントラ予測モード部分集合を決定する段階であって、前記イントラ予測モード部分集合は、現在の画像ブロックについて複数の参照線に相関するイントラ予測モードを含み、現在の画像ブロックについての主要参照線のみに相関するイントラ予測モードを除くものであり、前記主要参照線は現在の画像ブロックに最も近く位置するものである、段階と；
第一のイントラ予測モードが前記イントラ予測モード部分集合に含まれるときは、代替イントラ予測モード・インデックスによって前記第一のイントラ予測モードをデコードする段階であって、前記代替イントラ予測モード・インデックスは、前記イントラ予測モード部分集合における代替参照線予測モードに番号付けし、これを示すために使われるインデックス値である、段階とを実行させるための、
コンピュータ・プログラム。
【請求項２０】
前記プロセッサにさらに：
前記第一のイントラ予測モードが前記イントラ予測モード部分集合に含まれるときは、参照線インデックスをデコードすることであって、前記参照線インデックスは、前記第一のイントラ予測モードについて、前記複数の参照線からの第一の参照線を示す、段階と；
前記第一のイントラ予測モードが前記イントラ予測モード部分集合に含まれないときは、参照線インデックスをデコードしない段階とを実行させる、
請求項１９記載のコンピュータ・プログラム。
【請求項２１】
前記参照線インデックスが、前記ビットストリームにおける前記第一のイントラ予測モードの後に位置される、請求項２０記載のコンピュータ・プログラム。
【請求項２２】
前記イントラ予測モード部分集合は、開始方向性イントラ予測モード（starting  directional  intra-prediction  mode、DirS）、終了方向性イントラ予測モード（ending  directional  intra-prediction  mode、DirE）、およびDirSとDirEとの間のN個毎の方向性イントラ予測モードを含み、Nは所定の整数値である、請求項１９記載のコンピュータ・プログラム。
【請求項２３】
前記イントラ予測モード部分集合はさらに、平面予測モードおよび直流（Direct  Current、DC）予測モードを含む、請求項１９記載のコンピュータ・プログラム。
【請求項２４】
前記イントラ予測モード部分集合は、開始方向性イントラ予測モード（starting  directional  intra-prediction  mode、DirS）、終了方向性イントラ予測モード（ending  directional  intra-prediction  mode、DirE）、中間方向性イントラ予測モード（middle  directional  intra-prediction  mode、DirD）、水平方向性イントラ予測モード（horizontal  directional  intra-prediction  mode、DirH）、垂直方向性イントラ予測モード（vertical  directional  intra-prediction  mode、DirV）、ならびにDirS、DirE、DirD、DirHおよびDirVのプラスまたはマイナスNの方向の有効な方向性イントラ予測モードを含み、Nは所定の整数値である、請求項１９記載のコンピュータ・プログラム。
【請求項２５】
前記イントラ予測モード部分集合はさらに、平面予測モードおよび直流（Direct  Current、DC）予測モードを含む、請求項２４記載のコンピュータ・プログラム。
【請求項２６】
前記イントラ予測モード部分集合は、デコードされた隣接ブロックのために選択されたイントラ予測モードを含み、前記デコードされた隣接ブロックは、現在の画像ブロックに所定の隣接状態で位置されている、請求項１９記載のコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願への相互参照
本特許出願は、2018年5月7日に出願された「複数の参照線を用いたイントラ予測」と題する米国非仮特許出願第15/972,870号の優先権を主張し、同仮出願は2017年5月9日にShan  Liuらにより出願された「複数の参照線を用いるイントラ予測のための方法および装置」と題する米国仮特許出願番号第62/503,884号および2017年5月26日にXiang  Maらにより出願された「複数の参照線を用いるイントラ予測のための方法および装置」と題する米国仮特許出願番号第62/511,757号に対する優先権を主張し、それらの教示および開示は、ここにそれらを参照することによってそれらの全体において組み込まれる。
【０００２】
連邦政府の助成を受けた研究または開発に関する陳述
該当なし。
【０００３】
マイクロフィッシュ付録への参照
該当なし。
【背景技術】
【０００４】
比較的短いビデオを描写するために必要とされるビデオ・データの量でさえもかなりなものになることがあり、それは、限られた帯域幅容量をもつ通信ネットワークを通じてデータがストリーミングされるかまたは他の仕方で通信されるときに困難を生じる可能性がある。そこで、ビデオ・データは、一般に、現代の電気通信ネットワークを通じて通信される前に圧縮される。ビデオのサイズは、記憶資源が限られている可能性があるため、ビデオが記憶装置に記憶されるときにも問題となる可能性がある。ビデオ圧縮装置は、しばしば、伝送または記憶に先立ってビデオ・データを符号化するためにソースにおいてソフトウェアおよび／またはハードウェアを使用し、それによりデジタル・ビデオ画像を表わすのに必要とされるデータの量を減少させる。圧縮されたデータは、その後、宛先において、ビデオ・データをデコードするビデオ圧縮解除装置によって受領される。ネットワーク資源が限られており、より高いビデオ品質の要求が絶えず増加しているため、画像品質にほとんどまたは全く犠牲なしに圧縮比を改善する改良された圧縮および圧縮解除技術が望ましい。
【発明の概要】
【０００５】
ある実施形態では、本開示は、ビットストリームを受領するように構成された受領器と；前記受領器に結合されたプロセッサであって、イントラ予測モード部分集合を決定する段階であって、前記イントラ予測モード部分集合は、現在の画像ブロックについて複数の参照線に相関するイントラ予測モードを含み、現在の画像ブロックについての主要参照線に相関するイントラ予測モードを除くものである、段階と；第一のイントラ予測モードが前記イントラ予測モード部分集合に含まれるときは、代替イントラ予測モード・インデックスによって前記第一のイントラ予測モードをデコードし；前記第一のイントラ予測モードが前記イントラ予測モード部分集合に含まれないときは、イントラ予測モード・インデックスによって前記第一のイントラ予測モードをデコードする段階とを実行するよう構成されている、プロセッサと；前記プロセッサに結合されたディスプレイであって、前記第一のイントラ予測モードに基づいてデコードされた画像ブロックを含むビデオ・データを呈示する、ディスプレイとを含む。
【０００６】
任意的に、上記の側面のいずれかにおいて、前記側面の別の実装が提供するところでは、前記プロセッサはさらに：前記第一のイントラ予測モードが前記イントラ予測モード部分集合に含まれるときは、前記参照線インデックスをデコードするよう構成されており、前記参照線インデックスは、前記第一のイントラ予測モードについて、前記複数の参照線からの第一の参照線を示し；前記プロセッサは、前記第一のイントラ予測モードが前記イントラ予測モード部分集合に含まれないときは、参照線インデックスをデコードしない。
【０００７】
任意的に、上記の側面のいずれかにおいて、前記側面の別の実装が提供するところでは、前記参照線インデックスは前記ビットストリームにおける前記第一のイントラ予測モードの後に位置される。
【０００８】
任意的に、上記の側面のいずれかにおいて、前記側面の別の実装が提供するところでは、前記イントラ予測モード部分集合は、開始方向性イントラ予測モード（starting  directional  intra-prediction  mode、DirS）、終了方向性イントラ予測モード（ending  directional  intra-prediction  mode、DirE）、およびDirSとDirEとの間のN個毎の方向性イントラ予測モードを含み、Nは所定の整数値である。
【０００９】
任意的に、上記の側面のいずれかにおいて、前記側面の別の実装が提供するところでは、前記イントラ予測モード部分集合はさらに、平面予測モードおよび直流（Direct  Current、DC）予測モードを含む。
【００１０】
任意的に、上記の側面のいずれかにおいて、前記側面の別の実施形態が提供するところでは、前記イントラ予測モード部分集合は、開始方向性イントラ予測モード（starting  directional  intra-prediction  mode、DirS）、終了方向性イントラ予測モード（ending  directional  intra-prediction  mode、DirE）、中間方向性イントラ予測モード（middle  directional  intra-prediction  mode、DirD）、水平方向性イントラ予測モード（horizontal  directional  intra-prediction  mode、DirH）、垂直方向性イントラ予測モード（vertical  directional  intra-prediction  mode、DirV）、およびDirS、DirE、DirD、DirHおよびDirVのプラスまたはマイナスNの方向の有効な方向性イントラ予測モードを含み、Nは所定の整数値である。
【００１１】
任意的に、上記の側面のいずれかにおいて、前記側面の別の実装が提供するところでは、前記イントラ予測モード部分集合はさらに、平面予測モードおよび直流（Direct  Current、DC）予測モードを含む。
【００１２】
任意的に、上記の側面のいずれかにおいて、前記側面の別の実装が提供するところでは、前記イントラ予測モード部分集合は、デコードされた隣接ブロックのために選択されたイントラ予測モードを含み、前記デコードされた隣接ブロックは、現在の画像ブロックに所定の隣接状態で位置されている。
【００１３】
任意的に、上記の側面のいずれかにおいて、前記側面の別の実装が提供するところでは、前記イントラ予測モード部分集合は、現在の画像ブロックについての最確モード（most  probable  mode、MPM）リストに関連付けられたモードを含む。
【００１４】
ある実施形態では、本開示は、予測ブロックとして符号化された画像ブロックを含むビットストリームをメモリに記憶するステップと；前記メモリに結合されたプロセッサによって、直流（Direct  Current、DC）イントラ予測モードによってエンコードされた現在の予測ブロックを取得するステップと；現在の予測ブロックに関連付けられた複数の参照線のうちの少なくとも二つにおけるすべての参照サンプルの平均を決定することによって、現在の予測ブロックに対応する現在の画像ブロックを近似するDC予測値を決定するステップと；前記プロセッサによって、前記DC予測値に基づいて、現在の画像ブロックを再構成するステップと；現在の画像ブロックを含むビデオ・フレームをディスプレイ上に表示するステップと、を含む方法を含む。
【００１５】
任意的に、上記の側面のいずれかにおいて、前記側面の別の実装が提供するところでは、前記DC予測値を決定することは、現在の予測ブロックへのN個の隣接する参照線におけるすべての参照サンプルの平均を決定することを含み、ここで、Nは所定の整数である。
【００１６】
任意的に、上記の側面のいずれかにおいて、前記側面の別の実装が提供するところでは、前記DC予測値を決定することは、選択された参照線および対応する参照線内のすべての参照サンプルの平均を決定することを含む。
【００１７】
任意的に、上記の側面のいずれかにおいて、前記側面の別の実装が提供するところでは、前記DC予測値を決定することは、隣接する参照線および選択された参照線内のすべての参照サンプルの平均を決定することを含む。
【００１８】
ある実施形態では、本開示は、ビデオ符号化装置による使用のためのコンピュータ・プログラム製品を含む非一時的なコンピュータ読取可能媒体を含み、前記コンピュータ・プログラム製品は、前記非一時的なコンピュータ読取可能媒体に記憶されたコンピュータ実行可能命令を含み、前記命令は、プロセッサによって実行されたときに、前記ビデオ符号化装置に：受領器を介して、ビットストリームを受領する段階と；前記プロセッサによって、前記ビットストリームからイントラ予測モードを受領する段階であって、前記イントラ予測モードは、現在ブロックと選択された参照線との間の関係を示し、現在ブロックは、前記選択された参照線を含む複数の参照線と関連付けられている、段階と；前記プロセッサによって、前記選択された参照線を示す選択された符号語に基づいて、前記選択された参照線をデコードする段階であって、前記選択された符号語は前記選択された参照線の選択確率に基づく長さを含む、段階と；ディスプレイ上に、前記イントラ予測モードおよび前記選択された参照線に基づいてデコードされた画像ブロックを含むビデオ・データを呈示する段階とを実行させるものである、媒体を含む。
【００１９】
任意的に、上記の側面のいずれかにおいて、前記側面の別の実装が提供するところでは、前記複数の参照線は複数の符号語によって示され、現在ブロックから最も遠い参照線が二番目に短い長さをもつ符号語によって示される。
【００２０】
任意的に、上記の側面のいずれかにおいて、前記側面の別の実装が提供するところでは、前記複数の参照線は複数の符号語によって示され、現在ブロックから二番目に遠い参照線が二番目に短い長さをもつ符号語によって示される。
【００２１】
任意的に、上記の側面のいずれかにおいて、前記側面の別の実装が提供するところでは、前記複数の参照線は複数の符号語によって示され、隣接参照線以外のあらかじめ定義された参照線が二番目に短い長さをもつ符号語によって示される。
【００２２】
任意的に、上記の側面のいずれかにおいて、前記側面の別の実装が提供するところでは、前記複数の参照線は複数の符号語によって示され、前記複数の符号語は、クラスAグループおよびクラスBグループに分類され、クラスAグループは、クラスBグループ内の符号語の長さよりも短い長さをもつ符号語を含む。
【００２３】
任意的に、上記の側面のいずれかにおいて、前記側面の別の実装が提供するところでは、前記複数の参照線が参照行および参照列を含み、現在ブロックについて記憶された参照行の数は、現在ブロックについて記憶された参照列の数の半分である。
【００２４】
任意的に、上記の側面のいずれかにおいて、前記側面の別の実装が提供するところでは、前記複数の参照線が参照行および参照列を含み、現在ブロックについて記憶された参照行の数は、現在ブロックについて記憶された参照列の数から1を引いたものに等しい。
【００２５】
任意的に、上記の側面のいずれかにおいて、前記側面の別の実装が提供するところでは、前記複数の参照線が参照行を含み、現在ブロックについて記憶された参照行の数は、デブロッキング・フィルタ動作によって用いられる参照行の数に基づいて選択される。
【００２６】
明確のため、上記の実施形態の任意のものは、他の上記の実施形態の任意の一つまたは複数と組み合わされて、本開示の範囲内の新たな実施形態を作り出すことができる。
【００２７】
これらおよび他の特徴は、添付の図面および特許請求の範囲に関連して参照される以下の詳細な説明から、より明確に理解されるであろう。
【図面の簡単な説明】
【００２８】
本開示をより完全に理解するために、ここで添付の図面および詳細な説明に関連して参照される、以下の簡単な説明が参照される。ここで、同様の参照番号は同様の部分を表わす。
【００２９】
【図１】ビデオ信号を符号化する例示的な方法のフローチャートである。
【００３０】
【図２】ビデオ符号化のための例示的な符号化および復号（コーデック）システムの概略図である。
【００３１】
【図３】イントラ予測を実装しうる例示的なビデオ・エンコーダを示すブロック図である。
【００３２】
【図４】イントラ予測を実装しうる例示的なビデオ・デコーダを示すブロック図である。
【００３３】
【図５】ビデオ符号化に用いられる例示的なイントラ予測モードを示す概略図である。
【００３４】
【図６】ビデオ符号化におけるブロックの方向性関係の例を示す概略図である。
【００３５】
【図７】ブロックをイントラ予測で符号化するための主要参照線スキームの例を示す概略図である。
【００３６】
【図８】ブロックをイントラ予測で符号化するための代替参照線スキームの例を示す概略図である。
【００３７】
【図９】例示的なイントラ予測モード部分集合を示す概略図である。
【００３８】
【図１０】ビデオ符号化ビットストリームにおける代替参照線についての例示的な条件付き信号伝達表現を示す概略図である。
【００３９】
【図１１】ビデオ符号化ビットストリームにおける主要参照線についての例示的な条件付き信号伝達表現を示す概略図である。
【００４０】
【図１２】代替参照線を用いたDCモード・イントラ予測のための例示的な機構を示す概略図である。
【００４１】
【図１３】符号語で代替参照線を符号化するための例示的な機構を示す概略図である。
【００４２】
【図１４】異なる数の行および列をもつ代替参照線を符号化するための例示的な機構を示す概略図である。
【００４３】
【図１５】異なる数の行および列をもつ代替参照線を符号化するための別の例示的な機構を示す概略図である。
【００４４】
【図１６】例示的なビデオ符号化装置の概略図である。
【００４５】
【図１７】代替参照線をもつイントラ予測モード部分集合を用いたビデオ符号化の例示的方法のフローチャートである。
【００４６】
【図１８】代替参照線をもつDCモード・イントラ予測を用いたビデオ符号化の例示的方法のフローチャートである。
【００４７】
【図１９】選択確率に基づく符号語によって符号化された参照線を用いたビデオ符号化の例示的方法のフローチャートである。
【発明を実施するための形態】
【００４８】
最初に、一つまたは複数の実施形態の例示的な実装が下記で提供されるが、開示されるシステムおよび／または方法は、現在既知であるまたは存在しているかどうかを問わず、任意の数の技術を使用して実施されうることが理解されるべきである。本開示は、決して、本願で示され記載される例示的な設計および実装を含む、以下に示される例示的な実装、図面および技術に限定されるべきではなく、付属の請求項の範囲およびその等価物の全範囲内で修正されてもよい。
【００４９】
多くの方式が、ビデオ符号化プロセスの間にビデオ・データを圧縮するためにタンデムに用いられる。たとえば、ビデオ・シーケンスは画像フレームに分割される。次いで、画像フレームは画像ブロックに分割される。次いで、画像ブロックは、インター予測（異なるフレームにあるブロック間の相関）またはイントラ予測（同じフレーム内のブロック間の相関）によって圧縮されうる。イントラ予測では、現在の画像ブロックは、諸サンプルの参照線から予測される。参照線は近隣ブロックとも呼ばれる隣接画像ブロックからのサンプルを含む。現在ブロックからの諸サンプルは、最も近いルーマ（明るさ）またはクロマ（色）値をもつ参照線からの諸サンプルとマッチングされる。現在ブロックは、マッチする諸サンプルを示す予測モードとして符号化される。予測モードは、角度予測モード、直流（direct  current、DC）モードおよび平面モードを含む。それらの予測モードによって予測された値と実際の値との間の差は、残差ブロックにおける残差値として符号化される。マッチングは、複数の参照線を用いることによって改善されてもよい。改善されたマッチングの結果、残差値が減少し、よって圧縮率が向上する。しかしながら、参照線の数を増すことは、マッチする参照線を一意的に識別するのに必要とされるビン（二値の値）の数を増すことがある。最適なマッチを決定するために複数の参照線が必要でない場合には、複数の参照線を識別することに関連する信号伝達オーバーヘッドの増加は、一般に複数の参照線に伴う圧縮利得を上回ることがあり、よって、全体のビットストリーム・ファイル・サイズを増加させてしまうことがある。この結果、そのような場合には符号化効率が低下する。
【００５０】
本願では、複数の参照線に基づくイントラ予測に関係した信号伝達オーバーヘッドを減少させ、よって、ビデオ符号化システムにおける圧縮を増加させる、ビデオ符号化プロセスをサポートする諸機構が開示される。たとえば、イントラ予測モード部分集合を作成するための機構が開示される。すべてのイントラ予測モードが複数の参照線の完全な集合へのアクセスをもつことを許容することは、信号伝達オーバーヘッドが増大し、よって、最終的にエンコードすべき大きなファイル・サイズが生じることがありうる。よって、イントラ予測モード部分集合は、代替参照線へのアクセスをもつイントラ予測モードの部分集合を含み、イントラ予測モード部分集合から除外されるモードは、主要参照線にアクセスすることに限定される。本明細書で使用されるところでは、主要参照線は、現在ブロックに最も近接して（たとえばすぐ隣接して）位置された参照線である。代替参照線は、主要参照線と、主要参照線よりも現在ブロックから離れた位置にある一組の参照線との両方を含む。エンコーダは、代替参照線が有益である場合には、イントラ予測モード部分集合からのモードを使用し、主要参照線が十分である場合には、イントラ予測モード部分集合から除外されるモードを使用してもよい。イントラ予測モード部分集合の外部のモードは、主要参照線へのアクセスに限定されるので、イントラ予測モード部分集合に含まれないイントラ予測モードについては、参照線インデックスが省略されることができる。これは、イントラ予測モード情報の後に参照線インデックスをエンコードすることによって達成されてもよい。イントラ予測モード情報がイントラ予測モードがイントラ予測モード部分集合に含まれないことを示す場合、デコーダは、参照線インデックスが含まれていないことをコンテキスト的に認識することができる。イントラ予測モード部分集合に含まれるイントラ予測モードは、あらかじめ決定されていてもよく（たとえば、テーブルに記憶されているおよび／またはハードコードされている）、および／または隣接ブロックのイントラ予測モード部分集合などに基づいてコンテキスト的に推定されてもよい。場合によっては、イントラ予測モード部分集合は、最確モード（MPM）リストに関連するモードを含むように選択されることができる。これにより、最も一般的に選択されるモードが代替参照線へのアクセスをもつことが許容される。さらに、イントラ予測モード部分集合におけるイントラ予測モードは、イントラ予測モード部分集合インデックスに基づいて信号伝達されることができる。イントラ予測モード部分集合は、完全なイントラ予測モード集合よりも少ない予測モードを含むので、イントラ予測モード部分集合インデックスは、一般に、より少ないビンで信号伝達されることができる。さらに、DCイントラ予測モードへの拡張が開示される。開示されるDCイントラ予測モードは、DC予測値が代替参照線に基づいて決定されることを許容しうる。また、特定の参照線を示す符号語サイズを凝縮するための機構も開示される。この機構では、参照線は、現在の画像サンプルからの距離に基づいてではなく、選択確率に基づいてインデックス付けされる。たとえば、選択される可能性が最も高い参照線インデックスは最も短いインデックスを受け取り、選択される可能性が最も低い参照線は最も長いインデックスを受け取る。この結果、ほとんどの場合、参照線インデックスのエンコードが小さくなる。参照線インデックスについての符号語は、前もって決定され、一貫して使用されてもよい（たとえば、テーブルに記憶されるおよび／またはハードコードされる）。さらに、特定のハードウェア設計は、参照線の列よりも参照線の行を記憶するために、より多くの記憶を必要とする。よって、画像サンプルを符号化するときに参照列よりも少ない参照行を記憶することをサポートする、よって、符号化の間の記憶要件の低減をサポートするための機構が開示される。
【００５１】
図１は、ビデオ信号を符号化する例示的な方法１００のフローチャートである。具体的には、ビデオ信号はエンコーダにおいてエンコードされる。エンコード・プロセスは、さまざまな機構を用いることによってビデオ信号を圧縮して、ビデオ・ファイル・サイズを低減する。より小さいファイル・サイズは、付随する帯域幅オーバーヘッドを低減しつつ、圧縮されたビデオ・ファイルをユーザーに送信することを許容する。次いで、デコーダは、圧縮されたビデオ・ファイルをデコードして、エンドユーザーへの表示のためにもとのビデオ信号を再構成する。デコード・プロセスは、デコーダがビデオ信号を整合的に再構成することを許容するよう、一般に、エンコード・プロセスをミラーしたものである。
【００５２】
ステップ１０１では、ビデオ信号がエンコーダに入力される。たとえば、ビデオ信号はメモリに記憶された非圧縮ビデオ・ファイルであってもよい。別の例として、ビデオ・ファイルは、ビデオ・カメラなどのビデオ捕捉装置によって捕捉され、ビデオのライブ・ストリーミングをサポートするようにエンコードされてもよい。ビデオ・ファイルは、オーディオ成分およびビデオ成分の両方を含んでいてもよい。ビデオ成分は、シーケンスで見たときに視覚的な動きの印象を与える一連の画像フレームを含む。フレームは、本明細書においてルーマ成分と称される明るさおよびクロマ成分と称される色を用いて表現されるピクセルを含む。いくつかの例では、フレームはまた、三次元閲覧をサポートするための奥行き値をも含んでいてもよい。
【００５３】
ステップ１０３では、ビデオはブロックに分割される。分割は、圧縮のために、各フレーム内のピクセルを正方形および／または長方形のブロックに細分することを含む。たとえば、符号化木を使用して、ブロックを分割し、次いで、さらなるエンコードをサポートする構成が達成されるまで、再帰的にブロックを細分していくことができる。よって、ブロックは、高効率ビデオ符号化（HEVC）（H.265およびMPEG-H  Part  2としても知られる）では符号化木単位と称されることがある。たとえば、フレームのルーマ成分は、個々のブロックが比較的均一な照明値を含むまで、細分されてもよい。さらに、フレームのクロマ成分は、個々のブロックが比較的均一な色値を含むまで、細分されてもよい。よって、分割機構はビデオ・フレームの内容に依存して変化する。
【００５４】
ステップ１０５では、ステップ１０３で分割された画像ブロックを圧縮するために、さまざまな圧縮機構が用いられる。たとえば、インター予測および／またはイントラ予測が用いられてもよい。インター予測は、共通のシーンにおけるオブジェクトが連続したフレームに現れる傾向があるという事実を利用するように設計されている。よって、参照フレーム内であるオブジェクトを描くブロックが、後続フレームにおいて繰り返し記述される必要はない。具体的には、テーブルのようなオブジェクトは、複数のフレームにわたって一定の位置に留まることがある。よって、テーブルは一度記述され、その後のフレームは参照フレームを参照することができる。パターン・マッチング機構を用いて、複数フレームにわたってオブジェクトをマッチングすることができる。さらに、たとえばオブジェクトの動きまたはカメラの動きのために、動いているオブジェクトが、複数フレームにわたって表現されることがある。個別的な例として、ビデオは、複数のフレームにわたってスクリーンを横切って移動する自動車を示すことがある。そのような動きを記述するために、動きベクトルを用いることができる。動きベクトルは、フレーム内のオブジェクトの座標から参照フレーム内のオブジェクトの座標までのオフセットを提供する二次元ベクトルである。このように、インター予測は、参照フレーム内の対応するブロックからのオフセットを示す動きベクトルの集合として、現在のフレーム内の画像ブロックをエンコードすることができる。
【００５５】
イントラ予測は、共通フレーム内の諸ブロックをエンコードする。イントラ予測は、ルーマとクロマ成分がフレームにおいて集群化する傾向があるという事実を利用する。たとえば、木の一部における緑色のパッチは、同様の緑色のパッチに隣接して位置する傾向がある。イントラ予測は、複数の方向性予測モード（たとえばHEVCでは33個）、平面モード、およびDCモードを用いる。方向性モードは、現在ブロックが、対応する方向の隣接ブロックのサンプルと同様／同じであることを示す。平面モードは、行／列（たとえば平面）に沿った一連のブロックが、行の端における隣接ブロックに基づいて補間されうることを示す。平面モードは、事実上、値を変化させる際に比較的一定の傾きを用いることによって、行／列を通じた明るさ／色のなめらかな遷移を示す。DCモードは境界平滑化のために用いられ、ブロックが方向性予測モードの角度方向に関連するすべての隣接ブロックのサンプルに関連する平均値と同様／同じであることを示す。よって、イントラ予測ブロックは、実際の値の代わりに、さまざまな関係予測モード値として、画像ブロックを表現することができる。さらに、インター予測ブロックは、実際の値の代わりに、動きベクトル値として画像ブロックを表現することができる。いずれの場合も、予測ブロックは、場合によっては、画像ブロックを正確に表現しないことがある。差異はすべて残差ブロックに記憶される。ファイルをさらに圧縮するために、残差ブロックに変換が適用されてもよい。
【００５６】
ステップ１０７では、さまざまなフィルタリング技術が適用されうる。HEVCでは、フィルタは、ループ内フィルタリング方式に従って適用される。上記で論じたブロック・ベースの予測は、デコーダにおいてブロック状画像の生成につながることがある。さらに、ブロック・ベースの予測方式は、ブロックをエンコードし、次いで、後で参照ブロックとして使用するために、エンコードされたブロックを再構成することがある。ループ内フィルタリング方式は、ノイズ抑制フィルタ、デブロッキング・フィルタ、適応ループ・フィルタ、およびサンプル適応オフセット（ample  adaptive  offset、SAO）フィルタをブロック／フレームに逐次的に適用する。これらのフィルタは、エンコードされたファイルが正確に再構成されることができるように、そのようなブロック・アーチファクトを緩和する。さらに、これらのフィルタは、再構成された参照ブロックにおけるアーチファクトを緩和し、それにより、アーチファクトが、再構成された参照ブロックに基づいてエンコードされるその後のブロックにおいて追加的なアーチファクトを生じる可能性が低くなる。
【００５７】
いったんビデオ信号が分割され、圧縮され、フィルタリングされると、結果として得られたデータはステップ１０９でビットストリームにエンコードされる。ビットストリームは、上記で論じたデータと、デコーダで適正なビデオ信号再構成をサポートするために望まれる任意の信号伝達データとを含む。たとえば、そのようなデータは、パーティション・データ、予測データ、残差ブロック、およびデコーダに符号化命令を提供するさまざまなフラグを含んでいてもよい。ビットストリームは、要求に際してデコーダに向けて送信するためにメモリに記憶されてもよい。ビットストリームはまた、複数のデコーダに向けてブロードキャストおよび／またはマルチキャストされてもよい。ビットストリームの生成は逐次反復的なプロセスである。よって、ステップ１０１、１０３、１０５、１０７および１０９は、多くのフレームおよびブロックにわたって連続的におよび／または同時に発生することができる。図１に示される順序は、議論の明確さおよび簡単さのために呈示されており、ビデオ符号化プロセスを特定の順序に限定することは意図されていない。
【００５８】
デコーダはビットストリームを受領し、ステップ１１１でデコード・プロセスを開始する。具体的には、デコーダは、ビットストリームを対応するシンタックスおよびビデオ・データに変換するエントロピー復号方式を用いる。デコーダは、ビットストリームからのシンタックス・データを使用して、ステップ１１１で諸フレームについての諸パーティションを決定する。パーティション分割は、ステップ１０３におけるブロック・パーティション分割の結果と一致するべきである。ステップ１１１で用いられるエントロピー符号化／復号についてここで説明する。エンコーダは、入力画像（単数または複数）内の値の空間的位置決めに基づいていくつかの可能な選択肢からブロック分割方式を選択するなど、圧縮プロセスの間に多くの選択を行なう。厳密な選択を信号伝達することは、多数のビンを用いることがある。本明細書で使用されるところでは、ビンとは、変数として扱われる二値の値（たとえば、コンテキストに依存して変わりうるビット値）である。エントロピー符号化は、エンコーダが、許容可能なオプションの集合を残して、特定の場合に明らかに実現性のない任意のオプションを破棄することを許容する。次いで、それぞれの許容可能なオプションが、符号語を割り当てられる。符号語の長さは、許容可能なオプションの数に基づく（たとえば、2つのオプションについては一つのビン、3つから4つのオプションについては二つのビンなど）。次いで、エンコーダは、選択されたオプションについての符号語をエンコードする。この方式は、符号語が、あらゆる可能なオプションの潜在的には大きな集合からの選択を一意的に示すのではなく、許容可能なオプションの小さな部分集合からの選択を一意的に示すために望まれるだけの大きさなので、符号語のサイズを小さくする。次いで、デコーダは、エンコーダと同様の仕方で許容可能なオプションの集合を決定することによって、前記選択をデコードする。許容可能なオプションの集合を決定することによって、デコーダは、符号語を読み、エンコーダによってなされた選択を決定することができる。
【００５９】
ステップ１１３では、デコーダはブロック・デコードを実行する。具体的には、デコーダは、逆変換を使用して残差ブロックを生成する。次いで、デコーダは、前記パーティション分割に従って画像ブロックを再構成するために、残差ブロックおよび対応する予測ブロックを使用する。予測ブロックは、ステップ１０５においてエンコーダで生成されるように、イントラ予測ブロックおよびインター予測ブロックの両方を含んでいてもよい。次いで、再構成された画像ブロックは、ステップ１１１で決定された分割データに従って、再構成されたビデオ信号のフレーム内に位置決めされる。ステップ１１３のためのシンタックスも、上記で論じたようにエントロピー符号化によってビットストリーム内で信号伝達されてもよい。
【００６０】
ステップ１１５では、エンコーダにおけるステップ１０７と同様の仕方で、再構成されたビデオ信号のフレームに対してフィルタリングが実行される。たとえば、ノイズ抑制フィルタ、デブロッキング・フィルタ、適応ループ・フィルタ、およびSAOフィルタがフレームに適用されて、ブロッキング・アーチファクトを除去することができる。ひとたびフレームがフィルタリングされると、ビデオ信号は、エンドユーザーによる閲覧のために、ステップ１１７でディスプレイに出力されることができる。
【００６１】
図２は、ビデオ符号化のための例示的な符号化および復号（コーデック）システム２００の概略図である。具体的には、コーデック・システム２００は、方法１００の実装をサポートするための機能性を提供する。コーデック・システム２００は、エンコーダおよびデコーダの両方で使用されるコンポーネントを描くために一般化されている。コーデック・システム２００は、方法１００のステップ１０１および１０３に関して論じたように、ビデオ信号を受領し、分割し、これにより、パーティション分割されたビデオ信号２０１が得られる。次いで、コーデック・システム２００は、方法１００のステップ１０５、１０７、および１０９に関して論じたように、エンコーダとして作用するときに、分割されたビデオ信号２０１を符号化ビットストリームに圧縮する。デコーダとして作用するとき、コーデック・システム２００は、方法１００のステップ１１１、１１３、１１５、および１１７に関して論じたように、ビットストリームから出力ビデオ信号を生成する。コーデック・システム２００は、全般符号化器制御コンポーネント２１１と、変換スケーリングおよび量子化コンポーネント２１３と、イントラ・ピクチャー推定コンポーネント２１５と、イントラ・ピクチャー予測コンポーネント２１７と、動き補償コンポーネント２１９と、動き推定コンポーネント２２１と、スケーリングおよび逆変換コンポーネント２２９と、フィルタ制御解析コンポーネント２２７と、ループ内フィルタ・コンポーネント２２５と、復号ピクチャー・バッファ・コンポーネント２２３と、ヘッダ・フォーマッティングおよびコンテキスト適応二進算術符号化（Context  adaptive  binary  arithmetic  coding、CABAC）コンポーネント２３１とを含む。そのようなコンポーネントは、図示されるように結合される。図２において、黒線はエンコード／デコードされるべきデータの動きを示し、破線は他のコンポーネントの動作を制御する制御データの動きを示す。エンコーダにおいては、コーデック・システム２００のコンポーネントがすべて存在してもよい。デコーダは、コーデック・システム２００のコンポーネントの部分集合を含んでいてもよい。たとえば、デコーダは、イントラ・ピクチャー予測コンポーネント２１７、動き補償コンポーネント２１９、スケーリングおよび逆変換コンポーネント２２９、ループ内フィルタ・コンポーネント２２５、および復号ピクチャー・バッファ・コンポーネント２２３を含んでいてもよい。ここで、これらのコンポーネントについて述べる。
【００６２】
分割されたビデオ信号２０１は、捕捉されたビデオストリームであり、符号化木によってピクセルのブロックに分割されている。符号化木は、さまざまな分割モードを用いて、ピクセルのブロックをピクセルのより小さなブロックに分割する。そして、これらのブロックは、より小さなブロックにさらに細分されることができる。ブロックは、符号化木のノードと称されてもよい。より大きな親ノードが、より小さな子ノードに分割される。ノードが細分される回数は、ノード／符号化木の深さと称される。分割されたブロックは、場合によっては符号化単位（coding  unit、CU）と称される。分割モードは、二分木（binary  tree、BT）、三分木（triple  tree、TT）および四分木（quad  tree、QT）を含んでいてもよく、これらはそれぞれ、ノードを、使用される分割モードに依存して異なる形状のそれぞれ二つ、三つ、または四つの子ノードに分割するために使用される。分割されたビデオ信号２０１は、圧縮のために、全般符号化器制御コンポーネント２１１、変換スケーリングおよび量子化コンポーネント２１３、イントラ・ピクチャー推定コンポーネント２１５、フィルタ制御解析コンポーネント２２７、および動き推定コンポーネント２２１に転送される。
【００６３】
全般符号化器制御コンポーネント２１１は、アプリケーションの制約条件に従って、ビデオ・シーケンスの諸画像をビットストリームに符号化することに関連する決定を行なうよう構成される。たとえば、全般符号化器制御コンポーネント２１１は、ビットレート／ビットストリーム・サイズ対再構成品質の最適化を管理する。そのような決定は、記憶スペース／帯域幅の利用可能性および画像解像度要件に基づいて行なわれてもよい。全般符号化器制御コンポーネント２１１はまた、バッファのアンダーランおよびオーバーランの問題を緩和するために、伝送速度に照らしてバッファの利用を管理する。これらの問題を管理するために、全般符号化器制御コンポーネント２１１は、他のコンポーネントによる分割、予測、およびフィルタリングを管理する。たとえば、全般符号化器制御コンポーネント２１１は、動的に、圧縮の複雑さを増加させて解像度を増加させ、帯域幅使用を増加させる、または、圧縮の複雑さを減少させて解像度および帯域幅使用を減少させることができる。よって、全般符号化器制御コンポーネント２１１は、ビットレートの懸念とビデオ信号再構成品質とのバランスを取るために、コーデック・システム２００の他のコンポーネントを制御する。全般符号化器制御コンポーネント２１１は、他のコンポーネントの動作を制御する制御データを生成する。制御データはヘッダ・フォーマッティングおよびCABACコンポーネント２３１にも転送されて、デコーダでのデコードのためにパラメータを信号伝達するためにビットストリームにおいてエンコードされる。
【００６４】
分割されたビデオ信号２０１は、インター予測のために、動き推定コンポーネント２２１および動き補償コンポーネント２１９にも送られる。分割されたビデオ信号２０１のフレームまたはスライスは、複数のビデオ・ブロックに分割されてもよい。動き推定コンポーネント２２１および動き補償コンポーネント２１９は、時間的予測を提供するために、一つまたは複数の参照フレーム内の一つまたは複数のブロックに対して、受領されたビデオ・ブロックのインター予測符号化を実行する。コーデック・システム２００は、たとえばビデオ・データの各ブロックについて適切な符号化モードを選択するために、複数の符号化パス（pass）を実行してもよい。
【００６５】
動き推定コンポーネント２２１および動き補償コンポーネント２１９は、高度に統合されていてもよいが、概念的な目的のために別個に図示されている。動き推定コンポーネント２２１によって実行される動き推定は、動きベクトルを生成するプロセスであり、動きベクトルはビデオ・ブロックについての動きを推定する。動きベクトルは、たとえば、現在のフレーム（または他の符号化単位）内の符号化されている現在ブロックに関する、参照フレーム（または他の符号化単位）内の予測ブロックに対するビデオ・ブロックの予測単位（prediction  unit、PU）の変位を示してもよい。予測ブロックは、ピクセル差の点で、符号化されるべきブロックとよく一致することが見出されるブロックであり、ピクセル差は、差分絶対値和（sum  of  absolute  difference、SAD）、平方差分和（sum  of  square  difference、SSD）、または他の差分メトリックによって決定されうる。いくつかの例では、コーデック・システム２００は、復号ピクチャー・バッファ２２３に格納された参照ピクチャーの整数未満のピクセル位置についての値を計算することができる。たとえば、ビデオ・コーデック・システム２００は、参照ピクチャーの1/4ピクセル位置、1/8ピクセル位置または他の端数ピクセル位置の値を補間してもよい。したがって、動き推定コンポーネント２２１は、フル・ピクセル位置および端数ピクセル位置に対する動き探索を実行し、端数ピクセル精度をもつ動きベクトルを出力することができる。動き推定コンポーネント２２１は、PUの位置を参照画像の予測ブロックの位置と比較することによって、インター符号化されるスライス内のビデオ・ブロックのPUについての動きベクトルを計算する。動き推定コンポーネント２２１は、計算された動きベクトルを、動きデータとして、エンコードのために、ヘッダ・フォーマッティングおよびCABACコンポーネント２３１に対して出力し、動きを動き補償コンポーネント２１９に出力する。
【００６６】
動き補償コンポーネント２１９によって実行される動き補償は、動き推定コンポーネント２２１によって決定された動きベクトルに基づいて予測ブロックをフェッチまたは生成することに関わってもよい。ここでもまた、いくつかの例では、動き推定コンポーネント２２１および動き補償コンポーネント２１９は機能的に統合されてもよい。現在のビデオ・ブロックのPUについての動きベクトルを受領すると、動き補償コンポーネント２１９は、動きベクトルが参照ピクチャー・リスト指す予測ブロックを位置特定してもよい。次いで、符号化されている現在のビデオ・ブロックのピクセル値から予測ブロックのピクセル値を減算してピクセル差分値を形成することによって、残差ビデオ・ブロックが形成される。一般に、動き推定コンポーネント２２１はルーマ・コンポーネントに関する動き推定を実行し、動き補償コンポーネント２１９はクロマ・コンポーネントとルーマ・コンポーネントの両方について、ルーマ・コンポーネントに基づいて計算された動きベクトルを使用する。予測ブロックおよび残差ブロックは、変換スケーリングおよび量子化コンポーネント２１３に転送される。
【００６７】
分割されたビデオ信号２０１は、イントラ・ピクチャー推定コンポーネント２１５およびイントラ・ピクチャー予測コンポーネント２１７にも送られる。動き推定コンポーネント２２１および動き補償コンポーネント２１９と同様に、イントラ・ピクチャー推定コンポーネント２１５およびイントラ・ピクチャー予測コンポーネント２１７は高度に統合されていてもよいが、概念的な目的のために別個に図示されている。イントラ・ピクチャー推定コンポーネント２１５およびイントラ・ピクチャー予測コンポーネント２１７は、上述したフレーム間の動き推定コンポーネント２２１および動き補償コンポーネント２１９によって実行されるインター予測の代わりに、現在フレーム内のブロックに対して現在ブロックをイントラ予測する。特に、イントラ・ピクチャー推定コンポーネント２１５は、現在ブロックをエンコードするために使用するイントラ予測モードを決定する。いくつかの例では、イントラ・ピクチャー推定コンポーネント２１５は、複数のテストされたイントラ・ピクチャー予測モードから、現在ブロックをエンコードするために、適切なイントラ予測モードを選択する。次いで、選択されたイントラ予測モードは、エンコードのためにヘッダ・フォーマッティングおよびCABACコンポーネント２３１に転送される。
【００６８】
たとえば、イントラ・ピクチャー推定コンポーネント２１５は、さまざまなテストされたイントラ予測モードについてレート‐歪み解析を用いてレート‐歪み値を計算し、テストされたモードのうちで最良のレート‐歪み特性を有するイントラ予測モードを選択する。レート‐歪み解析は、一般に、エンコードされたブロックと、該エンコードされたブロックを生成するためにエンコードされたもとのエンコードされていないブロックとの間の歪み（または誤差）の量と、エンコードされたブロックを生成するために使用されるビットレート（たとえば、ビット数）とを決定する。イントラ・ピクチャー推定コンポーネント２１５は、さまざまなエンコードされたブロックについての歪みおよびレートから比を計算し、そのブロックについてどのイントラ予測モードが最良のレート‐歪み値を示すかを決定する。加えて、イントラ・ピクチャー推定コンポーネント２１５は、レート‐歪み最適化（rate-distortion  optimization、RDO）に基づく奥行きモデリング・モード（depth  modeling  mode、DMM）を使用して、奥行きマップの奥行きブロックを符号化するよう構成されてもよい。
【００６９】
イントラ・ピクチャー予測コンポーネント２１７は、エンコーダ上で実装されるときは、イントラ・ピクチャー推定コンポーネント２１５によって決定された選択されたイントラ予測モードに基づく予測ブロックから残差ブロックを生成し、デコーダ上で実装されるときは、ビットストリームから残差ブロックを読み取ることができる。残差ブロックは、マトリクスとして表わされた、予測ブロックともとのブロックとの間の値の差を含む。次いで、残差ブロックは、変換スケーリングおよび量子化コンポーネント２１３に転送される。イントラ・ピクチャー推定コンポーネント２１５およびイントラ・ピクチャー予測コンポーネント２１７は、ルーマ・コンポーネントおよびクロマ・コンポーネントの両方に対して作用してもよい。
【００７０】
変換スケーリングおよび量子化コンポーネント２１３は、残差ブロックをさらに圧縮するよう構成される。変換スケーリングおよび量子化コンポーネント２１３は、離散コサイン変換（discrete  cosine  transform、DCT）、離散サイン変換（discrete  sine  transform、DST）、または概念的に類似した変換などの変換を残差ブロックに適用し、残差変換係数値を含むビデオ・ブロックを生成する。ウェーブレット変換、整数変換、サブバンド変換、または他の型の変換が使用されることもできる。変換は、残差情報をピクセル値領域から変換領域、たとえば周波数領域に変換することができる。変換スケーリングおよび量子化コンポーネント２１３はまた、変換された残差情報を、たとえば周波数に基づいてスケーリングするようにも構成される。そのようなスケーリングは、異なる周波数情報が異なる粒度で量子化されるように、残差情報にスケール・ファクタを適用することに関わり、これは、再構成されるビデオの最終的な視覚的品質に影響を及ぼしうる。変換スケーリングおよび量子化コンポーネント２１３は、ビットレートをさらに低下させるために変換係数を量子化するようにも構成される。量子化プロセスは、係数のいくつかまたはすべてに関連するビット深さを低減してもよい。量子化の程度は、量子化パラメータを調整することによって修正されてもよい。いくつかの例では、変換スケーリングおよび量子化コンポーネント２１３は、次いで、量子化された変換係数を含むマトリクスの走査を実行してもよい。量子化された変換係数は、ヘッダ・フォーマッティングおよびCABACコンポーネント２３１に転送され、ビットストリーム内でエンコードされる。
【００７１】
スケーリングおよび逆変換コンポーネント２２９は、動き推定をサポートするために変換スケーリングおよび量子化コンポーネント２１３の逆演算を適用する。スケーリングおよび逆変換コンポーネント２２９は、逆スケーリング、変換、および／または量子化を適用して、ピクセル領域の残差ブロックを再構成する。これは、たとえば、後に、別の現在ブロックの予測ブロックとなりうる参照ブロックとして使用するためである。動き推定コンポーネント２２１および／または動き補償コンポーネント２１９は、後のブロック／フレームの動き推定において使用するために、残差ブロックを対応する予測ブロックに加算することによって参照ブロックを計算することができる。スケーリング、量子化、および変換の間に生成されるアーチファクトを緩和するために、再構成された参照ブロックにフィルタが適用される。そうでなければ、そのようなアーチファクトは、後続のブロックが予測されるときに不正確な予測を引き起こす（そして、さらなるアーチファクトを生じる）ことがありうる。
【００７２】
フィルタ制御解析コンポーネント２２７およびループ内フィルタ・コンポーネント２２５は、残差ブロックおよび／または再構成された画像ブロックに前記フィルタを適用する。たとえば、スケーリングおよび逆変換コンポーネント２２９からの変換された残差ブロックが、イントラ・ピクチャー予測コンポーネント２１７および／または動き補償コンポーネント２１９からの対応する予測ブロックと組み合わされて、もとの画像ブロックを再構成することができる。次いで、再構成された画像ブロックに前記フィルタが適用されうる。いくつかの例では、フィルタは、代わりに、残差ブロックに適用されてもよい。図２の他のコンポーネントと同様に、フィルタ制御解析コンポーネント２２７およびループ内フィルタ・コンポーネント２２５は、高度に統合されており、一緒に実装されてもよいが、概念的な目的のために別々に描かれている。再構成された参照ブロックに適用されるフィルタは、特定の空間的領域に適用され、そのようなフィルタがどのように適用されるかを調整するための複数のパラメータを含む。フィルタ制御解析コンポーネント２２７は、再構成された参照ブロックを解析して、そのようなフィルタがどこで適用されるべきかを決定し、対応するパラメータを設定する。そのようなデータは、エンコードのために、フィルタ制御データとしてヘッダ・フォーマッティングおよびCABACコンポーネント２３１に転送される。ループ内フィルタ・コンポーネント２２５は、該フィルタ制御データに基づいて、そのようなフィルタを適用する。フィルタは、デブロッキング・フィルタ、ノイズ抑制フィルタ、SAOフィルタ、および適応ループ・フィルタを含んでいてもよい。そのようなフィルタは、例に依存して、空間／ピクセル領域で（たとえば、再構成されたピクセル・ブロックに対して）または周波数領域で適用されうる。
【００７３】
エンコーダとして動作するとき、フィルタリングされた再構成された画像ブロック、残差ブロック、および／または予測ブロックは、上記で論じたような動き推定における後の使用のために、復号ピクチャー・バッファ２２３に格納される。デコーダとして動作するとき、復号ピクチャー・バッファ２２３は、再構成されフィルタリングされたブロックを記憶し、出力ビデオ信号の一部としてディスプレイに向かって転送する。復号ピクチャー・バッファ２２３は、予測ブロック、残差ブロック、および／または再構成された画像ブロックを記憶することができるいかなるメモリ・デバイスであってもよい。
【００７４】
ヘッダ・フォーマッティングおよびCABACコンポーネント２３１は、コーデック・システム２００のさまざまなコンポーネントからデータを受領し、デコーダに向けた伝送のために、そのようなデータを符号化ビットストリームにエンコードする。具体的には、ヘッダ・フォーマッティングおよびCABACコンポーネント２３１は、一般的な制御データおよびフィルタ制御データのような制御データをエンコードするためのさまざまなヘッダを生成する。さらに、イントラ予測および動きデータを含む予測データ、ならびに量子化された変換係数データの形の残差データは、すべてビットストリームにおいてエンコードされる。最終的なビットストリームは、もとの分割されたビデオ信号２０１を再構成するためにデコーダによって所望されるすべての情報を含む。そのような情報は、イントラ予測モード・インデックス・テーブル（符号語マッピング・テーブルとも称される）、さまざまなブロックについてのエンコード・コンテキストの定義、最も可能性の高いイントラ予測モードの指示、パーティション情報の指示なども含んでいてもよい。そのようなデータはエントロピー符号化を用いてエンコードされてもよい。たとえば、該情報は、コンテキスト適応可変長符号化（context  adaptive  variable  length  coding、CAVLC）、CABAC、シンタックス・ベースのコンテキスト適応二進算術符号化（syntax-based  context-adaptive  binary  arithmetic  coding、SBAC）、確率区間分割エントロピー符号化（probability  interval  partitioning  entropy、PIPE）符号化、または別のエントロピー符号化技術を使用することによって、エンコードされうる。エントロピー符号化に続いて、符号化されたビットストリームは、別の装置（たとえば、ビデオ・デコーダ）に伝送されてもよく、または後の伝送または検索のためにアーカイブされてもよい。
【００７５】
図３は、イントラ予測を実装することができる例示的なビデオ・エンコーダ３００を示すブロック図である。ビデオ・エンコーダ３００は、コーデック・システム２００のエンコード機能を実装するため、および／または方法１００のステップ１０１、１０３、１０５、１０７、および／または１０９を実装するために使用されてもよい。ビデオ・エンコーダ３００は、入力ビデオ信号をパーティション分割し、前記の分割されたビデオ信号２０１と実質的に同様であるパーティション分割されたビデオ信号３０１を生じる。次いで、分割されたビデオ信号３０１は、エンコーダ３００の諸コンポーネントによって圧縮され、ビットストリームにエンコードされる。
【００７６】
具体的には、分割されたビデオ信号３０１は、インター予測のためにイントラ・ピクチャー予測コンポーネント３１７に転送される。イントラ・ピクチャー予測コンポーネント３１７は、イントラ・ピクチャー推定コンポーネント２１５およびイントラ・ピクチャー予測コンポーネント２１７と実質的に同様であってもよい。分割されたビデオ信号３０１は、復号ピクチャー・バッファ３２３内の参照ブロックに基づくインター予測のために、動き補償コンポーネント３２１にも転送される。動き補償コンポーネント３２１は、動き推定コンポーネント２２１および動き補償コンポーネント２１９と実質的に同様であってもよい。イントラ・ピクチャー予測コンポーネント３１７および動き補償コンポーネント３２１からの予測ブロックおよび残差ブロックは、残差ブロックの変換および量子化のために、変換および量子化コンポーネント３１３に転送される。変換および量子化コンポーネント３１３は、変換スケーリングおよび量子化コンポーネント２１３と実質的に同様であってもよい。変換され量子化された残差ブロックおよび対応する予測ブロックは（関連する制御データと一緒に）、ビットストリーム中に符号化するためにエントロピー符号化コンポーネント３３１に転送される。エントロピー符号化コンポーネント３３１は、ヘッダ・フォーマッティングおよびCABACコンポーネント２３１と実質的に同様であってもよい。
【００７７】
変換され量子化された残差ブロックおよび／または対応する予測ブロックは、変換および量子化コンポーネント３１３から逆変換および量子化コンポーネント３２９にも転送される。動き補償コンポーネント３２１による使用のための参照ブロックに再構成するためである。逆変換および量子化コンポーネント３２９は、スケーリングおよび逆変換コンポーネント２２９と実質的に同様であってもよい。ループ内フィルタ・コンポーネント３２５におけるループ内フィルタも、例に依存して残差ブロックおよび／または再構成された参照ブロックに適用される。ループ内フィルタ・コンポーネント３２５は、実質的に、フィルタ制御解析コンポーネント２２７およびループ内フィルタ・コンポーネント２２５と同様であってもよい。ループ内フィルタ・コンポーネント３２５は、ノイズ抑制フィルタ、デブロッキング・フィルタ、SAOフィルタ、および／または適応ループ・フィルタのような複数のフィルタを含んでいてもよい。次いで、フィルタリングされたブロックは、動き補償コンポーネント３２１による参照ブロックでの使用のために、復号ピクチャー・バッファ３２３に格納される。復号ピクチャー・バッファ３２３は、復号ピクチャー・バッファ２２３と実質的に同様であってもよい。
【００７８】
後に論じるように、イントラ・ピクチャー予測コンポーネント３１７は、隣接するブロックに関連する代替参照線を用いるイントラ予測モードを選択することによって、イントラ予測を実行してもよい。信号伝達オーバーヘッドを低減するために、イントラ・ピクチャー予測コンポーネント３１７は、代替参照線へのアクセスをもつイントラ予測モードの部分集合を含むイントラ予測モード部分集合を決定することができる。イントラ予測モード部分集合から除外されるモードは、主要参照線へのアクセスをもつ。次いで、イントラ・ピクチャー予測コンポーネント３１７は、より良好なマッチングを得るために、代替参照線を用いるイントラ予測モードを選択するか、または、より低い信号伝達オーバーヘッドをサポートするために、主要参照線を用いるイントラ予測モードを選択するオプションを有する。イントラ・ピクチャー予測コンポーネント３１７は、後に論じるように、代替参照線を使用するとき、符号化効率の増大をサポートするために、さまざまな他の機構を使用することもできる。
【００７９】
図４は、イントラ予測を実装することができる例示的なビデオ・デコーダ４００を示すブロック図である。ビデオ・デコーダ４００は、コーデック・システム２００のデコード機能を実装するため、および／または方法１００のステップ１１１、１１３、１１５、および／または１１７を実装するために使用されてもよい。デコーダ４００は、たとえばエンコーダ３００から、ビットストリームを受領し、エンドユーザーに対して表示するために、該ビットストリームに基づいて、再構成された出力ビデオ信号を生成する。
【００８０】
ビットストリームはエントロピー復号コンポーネント４３３によって受領される。エントロピー復号コンポーネント４３３は、エントロピー符号化コンポーネント３３１の逆関数を実行する。エントロピー復号コンポーネント４３３は、CAVLC、CABAC、SBAC、PIPE符号化、または他のエントロピー符号化技術などのエントロピー復号方式を実装するように構成される。たとえば、エントロピー復号コンポーネント４３３は、ビットストリーム内の符号語としてエンコードされた追加データを解釈するためのコンテキストを提供するために、ヘッダ情報を使用することができる。復号された情報は、一般的な制御データ、フィルタ制御データ、パーティション情報、動きデータ、予測データ、および残差ブロックからの量子化された変換係数のような、ビデオ信号をデコードするための任意の所望される情報を含む。量子化された変換係数は、残差ブロックに再構成するために、逆変換および量子化コンポーネント４２９に転送される。逆変換および量子化コンポーネント４２９は、逆変換および量子化コンポーネント３２９と実質的に同様であってもよい。
【００８１】
再構成された残差ブロックおよび／または予測ブロックは、イントラ予測動作に基づいて画像ブロックに再構成するために、イントラ・ピクチャー予測コンポーネント４１７に転送される。イントラ・ピクチャー予測コンポーネント４１７は、イントラ・ピクチャー予測コンポーネント３１７と実質的に同様であってもよいが、逆に動作する。具体的には、イントラ・ピクチャー予測コンポーネント４１７は、予測モードを用いてフレーム内の参照ブロックを位置特定し、その結果に残差ブロックを適用して、イントラ予測された画像ブロックを再構成する。再構成されたイントラ予測された画像ブロックおよび／または残差ブロックおよび対応するインター予測データは、ループ内フィルタ・コンポーネント４２５を介して復号ピクチャー・バッファ・コンポーネント４２３に転送される。これらはそれぞれ、ループ内フィルタ・コンポーネント３２５および復号ピクチャー・バッファ・コンポーネント３２３と実質的に同様であってもよい。ループ内フィルタ・コンポーネント４２５は、再構成された画像ブロック、残差ブロックおよび／または予測ブロックをフィルタリングし、そのような情報は復号ピクチャー・バッファ・コンポーネント４２３に格納される。復号ピクチャー・バッファ・コンポーネント４２３からの再構成された画像ブロックは、インター予測のために動き補償コンポーネント４２１に転送される。動き補償コンポーネント４２１は、動き補償コンポーネント３２１と実質的に同様であってもよいが、逆に動作してもよい。具体的には、動き補償コンポーネント４２１は、参照ブロックからの動きベクトルを用いて予測ブロックを生成し、その結果に残差ブロックを適用して、画像ブロックを再構成する。結果として得られる再構成されたブロックは、ループ内フィルタ・コンポーネント４２５を介して復号ピクチャー・バッファ・コンポーネント４２３に転送されてもよい。復号ピクチャー・バッファ・コンポーネント４２３は、追加的な再構成された画像ブロックを格納し続ける。これらは、パーティション情報を介して、フレームに再構成されることができる。そのようなフレームは、シーケンスに配置されてもよい。このシーケンスは、再構成された出力ビデオ信号としてディスプレイに出力される。
【００８２】
イントラ・ピクチャー予測コンポーネント３１７と同様に、イントラ・ピクチャー予測コンポーネント４１７は、代替参照線を用いるイントラ予測モードに基づいてイントラ予測を実行してもよい。具体的には、イントラ・ピクチャー予測コンポーネント４１７は、イントラ予測モード部分集合に割り当てられたモードを認識する。たとえば、イントラ予測モード部分集合は、決定されたMPMリストに対応することができ、メモリ内であらかじめ定義されていることができ、および／または、隣接ブロックのイントラ予測モードに基づいて決定されることができる。このように、現在ブロックについてのイントラ予測モードがイントラ予測モード部分集合にある場合には、イントラ・ピクチャー予測コンポーネント４１７は、ビットストリームから参照線インデックスを得ることができる。そうでない場合には、イントラ・ピクチャー予測コンポーネント４１７は、主要参照線がエンコーダによって意図されていることを推論的に決定できる。イントラ・ピクチャー予測コンポーネント４１７は、のちに論じるように、代替参照線を使用する場合に、符号化効率の増大をサポートするためにさまざまな他の機構を使用してもよい。
【００８３】
図５は、ビデオ符号化において使用される例示的なイントラ予測モード５００を示す概略図である。たとえば、イントラ予測モード５００は、方法１００のステップ１０５および１１３、コーデック・システム２００のイントラ・ピクチャー推定コンポーネント２１５およびイントラ・ピクチャー予測コンポーネント２１７、エンコーダ３００のイントラ・ピクチャー予測コンポーネント３１７、および／またはデコーダ４００のイントラ・ピクチャー予測コンポーネント４１７によって使用されてもよい。具体的には、イントラ予測モード５００は、画像ブロックを、選択された予測モードを含む予測ブロックと残りの残差ブロックとに圧縮するために使用されることができる。
【００８４】
上述のように、イントラ予測は、現在の画像ブロックを、一つまたは複数の隣接するブロックの対応するサンプル（単数または複数）にマッチングさせることに関わる。すると、現在の画像ブロックは、選択された予測モード・インデックスおよび残差ブロックとして表わすことができ、これは、現在の画像ブロックに含まれるルーマ／クロマ値の全部を表わすよりもはるかに小さい。イントラ予測は、利用可能な参照フレームがない場合、または現在のブロックまたはフレームについてインター予測符号化が使用されない場合に使用されることができる。イントラ予測のための参照サンプルは、同じフレーム内の前に符号化された（または再構成された）隣接ブロックから導出されてもよい。H.264およびH.265/HEVCとしても知られる先進ビデオ符号化（Advanced  Video  Coding、AVC）は、隣接ブロックの境界サンプルの参照線をイントラ予測のための参照サンプルとして使用する。異なるテクスチャーまたは構造特性をカバーするために、多くの異なるイントラ予測モードが用いられる。H.265/HEVCは、現在ブロックを一つまたは複数の参照サンプルに空間的に相関付ける合計35通りのイントラ予測モード５００をサポートする。具体的には、イントラ予測モード５００は、モード2〜34としてインデックス付けされる33の方向性予測モード、モード1としてインデックス付けされるDCモード、およびモード0としてインデックス付けされる平面モードを含む。
【００８５】
エンコードの間、エンコーダは、現在ブロックのルーマ／クロマ値を、隣接する諸ブロックのエッジを通る参照線内の対応する参照サンプルのルーマ／クロマ値とマッチングする。参照線の一つとの最良マッチが見出されると、エンコーダは、最良マッチの参照線を指す方向性イントラ予測モード５００の一つを選択する。議論の明確のため、特定の方向性イントラ予測モード５００を参照するために、以下では頭字語を使用する。DirSは左下から時計回りにカウントするときの開始方向性イントラ予測モード（たとえばHEVCにおけるモード2）を表わす。DirEは左下から時計回りにカウントするときの終了方向性イントラ予測モード（たとえばHEVCではモード34）を表わす。DirDは左下から時計回りにカウントするときの中間の中方性イントラ符号化モード（たとえばHEVCにおけるモード18）を表わす。DirHは水平方向性イントラ予測モード（たとえばHEVCではモード10）を表わす。DirVは、垂直イントラ予測モード（たとえばHEVCにおけるモード26）を表わす。
【００８６】
上記で論じたように、DCモードは、平滑化関数として作用し、現在ブロックの予測値を、隣接する諸ブロックを横断する参照線内のすべての参照サンプルの平均値として導出する。また、上記で論じたように、平面モードは、参照サンプルの参照線の下と左上または左上と右上にあるサンプルの間のなめらかな遷移（たとえば、値の一定の勾配）を示す予測値を返す。
【００８７】
平面、DCおよびDirHからDirVまでの予測モードについては、参照線の上の行と参照線の左の列の両方におけるサンプルが参照サンプルとして使用される。DirSからDirH（DirSおよびDirHを含む）までの予測方向をもつ予測モードについては、参照線の左の列にある、以前に符号化され再構成された隣接ブロックの参照サンプルが参照サンプルとして使用される。DirVからDirE（DirVおよびDirEを含む）までの予測方向をもつ予測モードについては、参照線の上の行にある以前に符号化され再構成された隣接ブロックの参照サンプルが参照サンプルとして使用される。
【００８８】
多くのイントラ予測モード５００があるが、すべてのイントラ予測モード５００がビデオ符号化の間に等しい確率で選択されるわけではない。さらに、隣接ブロックによって選択されたイントラ予測モード５００は、統計的に、現在ブロックについて選択されるイントラ予測モード５００と高い相関を有する。したがって、いくつかの例では、MPMリストが使用されてもよい。MPMリストは、選択される可能性が最も高いイントラ予測モード５００の部分集合を含むリストである。現在ブロックのイントラ予測モードがMPMリストに含まれている場合、選択されたモードは、ビットストリームにおいて、MPMリスト・インデックスによって信号伝達されることができ、これは、イントラ予測モード５００すべてを一意的に識別するために使用されるビンの数よりも少ないビンをもつ符号語を使用することができる。
【００８９】
MPMリストは、いくつかの近隣のデコードされたブロックのイントラ予測モード５００と、一般に高い選択確率をもついくつかのデフォルトのイントラ予測モードとで構築されてもよい。たとえば、H.265/HEVCでは、二つの隣接ブロック（現在ブロックの上の一つと左の一つ）のイントラ予測モードで、長さ3のMPMリストが構成される。重複モードの場合、MPMリストは、デフォルトで平面モード、DCモード、またはDirVモードとして、その順に割り当てられる。MPMリストがより長い長さを含む場合には、MPMリストは、さらなる隣接ブロックのイントラ予測モード５００および／またはさらなるデフォルトのイントラ予測モード５００をも含むことができる。MPMリストの長さおよび構築方式は、あらかじめ定義されていてもよい。
【００９０】
図６は、ビデオ符号化における諸ブロック６００の方向関係の例を示す概略図である。たとえば、諸ブロック６００は、諸イントラ予測モード５００を選択するときに使用されてもよい。よって、ブロック６００は、方法１００のステップ１０５および１１３、コーデック・システム２００のイントラ・ピクチャー推定コンポーネント２１５およびイントラ・ピクチャー予測コンポーネント２１７、エンコーダ３００のイントラ・ピクチャー予測コンポーネント３１７、および／またはデコーダ４００のイントラ・ピクチャー予測コンポーネント４１７によって使用されてもよい。ビデオ符号化において、ブロック６００は、ビデオ内容に基づいて分割され、よって、さまざまな形状およびサイズの多くの長方形および正方形を含むことができる。ブロック６００は、説明の目的のために正方形として描かれており、よって、議論の明確さをサポートするために実際のビデオ符号化ブロックからは単純化されている。
【００９１】
ブロック６００は、現在ブロック６０１および隣接ブロック６１０を含む。現在ブロック６１０は、指定された時点において符号化されている任意のブロックである。隣接ブロック６１０は、現在ブロック６０１の左エッジまたは上エッジにすぐ隣接する任意のブロックである。ビデオ符号化は、一般に、左上から右下に進む。よって、隣接ブロック６１０は、現在ブロック６０１の符号化に先立ってエンコードされ、再構成されてもよい。現在ブロック６０１を符号化するとき、エンコーダは、現在ブロック６０１のルーマ／クロマ値を、隣接ブロック６１０のエッジをたどる参照線からの参照サンプル（単数または複数）とマッチングする。次いで、マッチが、マッチしたサンプル（または、DCまたは平面モードが選択されるときは諸サンプル）をポイントするため、たとえばイントラ予測モード５００からのイントラ予測モードを選択するために使用される。その際、選択されたイントラ予測モードは、現在ブロック６０１のルーマ／クロマ値が、選択されたイントラ予測モードに対応する参照サンプルと実質的に同様であることを示す。差があれば、それは残差ブロックにおいて保持されることができる。次いで、選択されたイントラ予測モードがビットストリームにおいてエンコードされる。デコーダでは、現在ブロック６０１は、選択されたイントラ予測モードに対応する隣接ブロック６１０内の選択された参照線における諸参照サンプルのルーマ／クロマ値を（残差ブロックからの残差情報があればそれとともに）使用することによって再構成されることができる。
【００９２】
図７は、イントラ予測でブロックを符号化するための主要参照線スキーム７００の一例を示す概略図である。主要参照線スキーム７００は、イントラ予測モード５００を選択するときに使用されてもよい。よって、主要参照線スキーム７００は、方法１００のステップ１０５および１１３、コーデック・システム２００のイントラ・ピクチャー推定コンポーネント２１５およびイントラ・ピクチャー予測コンポーネント２１７、エンコーダ３００のイントラ・ピクチャー予測コンポーネント３１７、および／またはデコーダ４００のイントラ・ピクチャー予測コンポーネント４１７によって使用されてもよい。
【００９３】
主要参照線スキーム７００は、参照サンプル７１２の主要参照線７１１を使用する。主要参照線７１１は、現在ブロック７０１のための参照サンプル７１２として、隣接するブロックのエッジ・サンプル（たとえばピクセル）を含む。本明細書で使用されるところの参照サンプル７１２は、ピクセルまたはそのサブ部分のクロマまたはルーマ値などの値である。現在ブロック７０１は、現在ブロック６０１と実質的に同様である。議論の目的で、主要参照線７１１は、現在ブロック７０１の上方の参照サンプル７１２を含む参照行７１３を含む。主要参照線７１１はまた、現在ブロック７０１の左側の参照サンプル７１２を含む参照列７１４をも含む。主要参照線スキーム７００では、主要参照線７１１が使用され、主要参照線７１１は現在ブロック７０１にすぐ隣接する参照線である。よって、現在ブロック７０１は、イントラ予測の間、主要参照線７１１に含まれる参照サンプル７１２とできるだけ近くマッチングされる。
【００９４】
図８は、イントラ予測でブロックを符号化するための代替参照線スキーム８００の例を示す概略図である。代替参照線スキーム８００は、イントラ予測モード５００を選択するときに使用されてもよい。よって、代替参照線スキーム８００は、方法１００のステップ１０５および１１３、コーデック・システム２００のイントラ・ピクチャー推定コンポーネント２１５およびイントラ・ピクチャー予測コンポーネント２１７、エンコーダ３００のイントラ・ピクチャー予測コンポーネント３１７、および／またはデコーダ４００のイントラ・ピクチャー予測コンポーネント４１７によって使用されてもよい。
【００９５】
代替参照線スキーム８００は、現在ブロック７０１と実質的に同様である現在ブロック８０１を使用する。複数の参照線８１１が、現在ブロック８０１から延在する。参照線８１１は、参照サンプル７１２と同様の参照サンプル８１２を含む。参照線８１１は、実質的に主要参照線７１１と同様であるが、現在ブロック８０１からさらに離れて延在する。代替参照線８１１を用いることにより、マッチング・アルゴリズムは、より多くの参照サンプル８１２へのアクセスをもつことができる。より多くの参照サンプルの存在は、場合によっては、現在ブロック８０１についてのより良好なマッチをもたらし、それはひいては予測モードが選択された後の、より少ない残差サンプルにつながることがありうる。代替参照線スキーム８００は、複数線イントラ予測（multiple  lines  intra  prediction、MLIP）と称されてもよく、統合ビデオ専門家チーム（Joint  Video  Experts  Team、JVET）文書JVET-C0043、JVET-C0071、JVET-D0099、JVET-D0131およびJVET-D0149において詳細に論じられている。参照線８１１は、0からMまで番号を付けられてもよく、ここで、Mは任意の所定の定数値である。参照線８１１は、それぞれ参照行７１３および参照列７１４と同様である、図のような参照行８１３および参照列８１４を含んでいてもよい。
【００９６】
エンコードの間、エンコーダは、RDOに基づいて参照線８１１から最良のマッチを選択することができる。具体的には、最も近い参照線（RefLine0）から最も遠い参照線（RefLineM）までM+1個の参照線が用いられる。ここで、Mはゼロより大きい。エンコーダは、最適なレート‐歪みコストをもつ参照線を選択する。選択された参照線のインデックスは、ビットストリーム内でデコーダに信号伝達される。ここで、RefLine0はオリジナル参照線（たとえば、主要参照線７１１）と呼ばれることがあり、RefLine1〜RefLineMはさらなる参照線または代替参照線と呼ばれることがある。イントラ予測モード５００のうちの任意のモードによる使用のためにさらなる参照線が選択されることができる。場合によっては、該さらなる参照線は、イントラ予測モード５００の部分集合による使用のために選択されることができる（たとえば、DirS〜DirEは、さらなる参照線を使用してもよい）。
【００９７】
ひとたび参照線８１２が選択されると、参照線８１１のうちからの該選択された参照線のインデックスが、ビットストリームにおいてデコーダに信号伝達される。種々の参照線を用いることにより、より正確な予測信号が導出されることができ、これは、いくつかの場合において、残差サンプルを低減することによって符号化効率を増大させることができる。しかしながら、代替参照線８１１を使用することは、選択された参照線がデコーダに信号伝達されるので信号伝達オーバーヘッドを増加させる。使用される参照線８１１の数が増加するにつれて、選択された参照線を一意的に識別するために、より多くのビンが信号伝達の間に使用される。このように、代替参照線８１１を使用することは、マッチするサンプルが現在ブロック８０１にすぐ隣接する参照線内にあるときは、実際には符号化効率を低下させてしまうことがある。
【００９８】
MLIPで支援される圧縮利点にもかかわらず、より高い符号化利得を達成するためにいくつかの領域が改善されることができる。たとえば、増大した圧縮を達成するために、イントラ予測モード部分集合が採用されてもよい。具体的には、いくつかのイントラ予測モードは、増大したマッチング精度をサポートするために代替参照線８１１を使用するように選択されてもよい。他のイントラ予測モードは、主要参照線７１１を使用し、代替参照線８１１を使用することに付随する信号伝達オーバーヘッドをやめるために選択されることができる。代替参照線８１１を使用するイントラ予測モードは、イントラ予測モード部分集合に含められてもよい。
【００９９】
図９は、エンコーダまたはデコーダにおけるイントラ予測モードのビデオ符号化において使用するための、例示的なイントラ予測モード部分集合９３０を示す概略図９００である。代替参照線スキーム８００および主要参照線スキーム７００が組み合わせ／修正されて、イントラ予測モード・リスト９２０およびイントラ予測モード部分集合９３０の両方を使用することができる。イントラ予測モード・リスト９２０は、イントラ予測方式において使用されることのできるイントラ予測モード９２３（たとえばイントラ予測モード５００）のすべてを含む。そのようなイントラ予測モード９２３はそれぞれ、対応するイントラ予測モード・インデックス９２１によってインデックス付けされてもよい。この例では、イントラ予測モードのいくつかは、代替参照線へのアクセスをもつ。代替参照線へのアクセスをもつイントラ予測モードは、代替参照線予測モード９３３としてイントラ予測モード部分集合９３０に格納される。イントラ予測モード部分集合９３０における代替参照線予測モード９３３は、代替イントラ予測モード・インデックス９３１によってインデックス付けされてもよい。代替イントラ予測モード・インデックス９３１は、イントラ予測モード部分集合９３０において、代替参照線予測モード９３３に番号付けし、それを示すために使用されるインデックス値である。より少ないイントラ予測モードがイントラ予測モード部分集合９３０に含まれるので、代替イントラ予測モード・インデックス９３１は、イントラ予測モード・インデックス９２１よりも少ないビンを含むことができる。よって、あるイントラ予測モードがイントラ予測モード部分集合９３０に含まれる場合、そのイントラ予測モードは、代替参照線にマッチングされることができる。あるイントラ予測モードがイントラ予測モード部分集合９３０に含まれない場合、そのイントラ予測モードは、主要参照線にマッチングされることができる。この方式は、イントラ予測モード・リスト９２０がテクスチャーおよび構造特性を詳細にカバーするために多くのイントラ予測モード９２３を含むという事実を利用する。しかしながら、代替参照線を用いる可能性は比較的低い。そこで、代替参照線の場合には、大まかな方向で十分である。したがって、のちに論じるような方式を用いて、イントラ予測モード部分集合９３０を構築するために、イントラ予測モード９２３はサンプリングされることができる。
【０１００】
イントラ予測モード・リスト９２０およびイントラ予測モード部分集合９３０の両方の使用は、符号化効率の有意な増大を許容する。さらに、どのイントラ予測モードが代替参照線予測モード９３３として含まれるべきかの選択は、符号化効率に影響を及ぼす。たとえば、大きなモード範囲は、代替イントラ予測モード・インデックス９３１を表わすためにより多くのビットを使用するが、モード範囲がより小さい場合にはより少ないビットが使用される。ある実施形態では、イントラ予測モード部分集合９３０は、[DirS,DirE]内の二番目毎のイントラ予測モードを含み、ここで、[A,B]は整数要素xを含む集合を示し、B≧x≧Aである。具体的には、イントラ予測モード部分集合９３０は、予測モード{DirS,DirS+2,DirS+4,DirS+6,…,DirE}に関連付けられてもよく、ここで、{A,B,C,D}は、中括弧の間に挙げられているすべての要素を含む集合を示す。さらに、代替イントラ予測モード・インデックス９３１のモード範囲における選択されたイントラ予測モードを表すビット数が減らされる。そのような場合、代替イントラ予測モード・インデックス９３１は、イントラ予測モード・インデックス９２１を2で割ることによって導出することができる。
【０１０１】
別の実施形態では、イントラ予測モード部分集合９３０は、MPMリスト９３５内のイントラ予測モードを含む。上述のように、MPMリスト９３５は、選択される可能性が最も高い諸イントラ予測モードの部分集合を含む。この場合、イントラ予測モード部分集合９３０は、現在ブロックのデコードされたおよび／または再構成された隣接ブロックのイントラ予測モードを含むよう構成されてもよい。選択されたイントラ予測モードがMPMリスト９３５に含まれているかどうかを示すために、ビットストリームにおいてフラグが使用されてもよい。該選択されたイントラ予測モードがMPMリスト９３５にある場合、MPMリスト９３５インデックスが信号伝達される。そうでない場合、代替イントラ予測モード・インデックス９３１が信号伝達される。選択されたイントラ予測モードが、主要参照線モードであり、MPMリスト９３５に含まれない場合、イントラ予測モード・インデックス９２１が信号伝達されることができる。いくつかの例では、代替イントラ予測モード・インデックス９３１および／またはMPMリスト９３５インデックスが固定長である二進表現機構が使用されることができる。いくつかの例では、代替イントラ予測モード・インデックス９３１および／またはMPMリスト９３５インデックスは、コンテキスト・ベースの適応二進算術符号化（context-based  adaptive  binary  arithmetic  coding、CABAC）を介して符号化される。他の二進表現および／またはエントロピー符号化機構が使用されてもよい。使用される二進表現／エントロピー符号化機構はあらかじめ定義されている。イントラ予測モード部分集合９３０のモード範囲は、イントラ予測モード・リスト９２０よりも少ないイントラ予測モード（たとえば大まかなモード）を含む。よって、MPMリスト９３５内のイントラ予測モード（たとえば、隣接ブロックのモード）が、イントラ予測モード部分集合９３０モード範囲に含まれない場合、イントラ予測モード・インデックス９２１は、（たとえば2で）除算され、たとえば1を加算もしくは減算することによって、最も近い代替イントラ予測モード・インデックス９３１の値に丸められることができる。丸め機構は、あらかじめ定義されてもよい。隣接ブロックの相対位置、走査順序、および／またはMPMリスト９３５のサイズもあらかじめ定義されてもよい。
【０１０２】
具体例として、H.265に従って動作するエンコーダは、33のサイズの[DirS,DirE]のモード範囲を使用してもよい。イントラ予測モード部分集合９３０において二番目毎のモードが用いられる場合、代替イントラ予測モード・インデックス９３１についてのモード範囲のサイズは17である。MPMリスト９３５のサイズは1であってもよく、上隣の復号されたブロックのイントラ予測モードが、MPMリスト９３５を構築するために使用される。隣接ブロックのモードが代替イントラ予測モード・インデックス９３１のモード範囲にない場合（たとえば、モード3）、隣接ブロックのモードは、モード4（または2）に丸められる。個別的な例として、選択されたイントラ予測モードが、イントラ予測モード・インデックス９２１によればモード16である場合、および選択されたモードがMPMリスト９３５にない場合、選択されたイントラ予測モードは、8の代替イントラ予測モード・インデックス９３１（16/2＝8）をもつことになる。固定長の二進表現法が用いられる場合、この例において、選択されたイントラ予測モードを示すために1000が使用されることができる。
【０１０３】
上記の例／実施形態は、イントラ予測モード部分集合９３０が、イントラ予測モード９２３の各奇数（または各偶数）を含むと想定している。しかしながら、上述の機構を使用しながら、イントラ予測モード部分集合９３０の中身を入れるために、他の機構が使用されることもできる。一例では、イントラ予測モード部分集合９３０は、[DirS,DirE]内のN番目毎のイントラ予測モードを含み、ここで、Nは、0,1,2,3,4等に等しい整数である。この例は{DirS,DirS+N,DirS+2N,…,DirE}と記述されることもできる。別の例として、イントラ予測モード部分集合９３０は、[DirS,DirE]内のN番目毎のイントラ予測モードならびに平面およびDCイントラ予測モードを含んでいてもよい。
【０１０４】
別の例では、イントラ予測モード部分集合９３０は、高い一般的な選択確率をもつイントラ予測モードを含む。よって、イントラ予測モード信号伝達コストが低減され、符号化効率が改善される。いくつかの例では、主方向をもつイントラ予測モードは、一般に、より高い一般的な確率で選択される（たとえば完全に垂直、水平など）。よって、イントラ予測モード部分集合９３０は、そのようなモードを含んでいてもよい。たとえば、イントラ予測モード部分集合９３０は、DirS、DirE、DirD、DirVおよびDirHのような主要方向性イントラ予測モードを含むことができる。主要モードへの近隣モードも、いくつかの例では含まれていてもよい。具体例として、イントラ予測モードDirS、DirE、DirD、DirV、DirHが、プラスまたはマイナスNのインデックスをもつ隣接イントラ予測モードと一緒にイントラ予測モード部分集合９３０に含まれる。これは、[DirS,DirS＋N]、[DirE−N,DirE]、[DirD−N,DirD＋N]、[DirH−N、DirH＋N]、[DirV−N,DirV＋N]として表わされてもよい。別の例では、イントラ予測モード部分集合９３０は、イントラ予測モードDirS、DirE、DirD、DirV、DirHならびにプラスまたはマイナスNのインデックスをもつ隣接イントラ予測モードおよびDCおよび平面モードを含む。
【０１０５】
別の例では、イントラ予測モード部分集合９３０は適応的に構築され、よって、あらかじめ定義されたイントラ予測モードを用いて定義されるのではない。たとえば、イントラ予測モード部分集合９３０は、現在ブロック（たとえば、現在ブロック６０１）の近隣のデコードされたブロック（たとえば隣接ブロック６１０）のイントラ予測モードを含んでいてもよい。隣接ブロックは現在ブロックの左および上に配置されてもよい。追加的な隣接ブロックも使用されてもよい。イントラ予測モード部分集合９３０のサイズおよび構成方式は、あらかじめ定義されている。別の例では、イントラ予測モード部分集合９３０は、隣接ブロックのイントラ予測モードと、DCおよび平面モードのようなある種の所定のデフォルト・イントラ予測モードとを含む。別の例では、イントラ予測モード部分集合９３０は、MPMリスト９３５内にイントラ予測モードを含む。
【０１０６】
ビットストリーム内の参照線インデックスを受け取ると、デコーダは、参照線インデックスが主要参照線を指すときは、イントラ予測モード・リスト９２０が含意されていると判断する。そのような場合、デコーダは、対応するイントラ予測モード９２３を決定するために、後続のイントラ予測モード・インデックス９２１を読むことができる。参照線インデックスが追加の参照線を指すときは、イントラ・モード部分集合９３０が含意される。そのような場合、デコーダは、対応する代替参照線予測モード９３３を決定するために、後続の代替イントラ予測モード・インデックス９３１を読むことができる。いくつかの例では、指示される代替参照線予測モード９３３がMPMリスト９３５内にある時を示すためにフラグが使用されてもよい。そのような場合、代替参照線予測モード９３３は、MPMリスト９３５によって用いられるインデックスに従って信号伝達されてもよい。
【０１０７】
上記のように、描画９００は、代替参照線または主要参照線をもつイントラ予測モードを符号化するときに使用されうる。以下では、そのようなデータを符号化するための信号伝達方式を論じる。具体的には、参照線インデックスは、対応するイントラ予測モードのインデックスの後に信号伝達されることができる。さらに、参照線インデックスは、条件付きで信号伝達されることができる。たとえば、参照線インデックスは、イントラ予測モードが代替参照線に関連する場合には、信号伝達されることができ、イントラ予測モードが主要参照線に関係する場合には、省略されることができる。これは、イントラ予測モードがイントラ予測モード部分集合９３０に含まれない場合はいつでも、参照線インデックスを省略することを許容する。主要参照線の場合には参照線インデックスを示す必要がないからである。この手法は、信号伝達オーバーヘッドを減少させることによって、符号化効率を著しく向上させる。以下で論じる条件付き信号伝達方式は、この概念の例示的実装である。
【０１０８】
図１０は、ビデオ符号化ビットストリームにおける代替参照線についての例示的な条件付き信号伝達表現１０００を示す概略図である。たとえば、条件付き信号伝達表現１０００は、エンコーダまたはデコーダにおけるイントラ予測モード５００のようなイントラ予測モードを使用するビデオ符号化の間に、イントラ予測モード部分集合９３０が代替参照線スキーム８００の一部として使用される場合に、ビットストリームにおいて使用されてもよい。具体的には、符号化装置が、代替参照線に関連する選択されたイントラ予測モードを含むイントラ予測データでビットストリームをエンコードまたはデコードするときは、条件付き信号伝達表現１０００が使用される。あるいはまた、符号化装置が、主要参照線に関連する選択されたイントラ予測モードを含むイントラ予測データでビットストリームを符号化またはデコードするときは、のちに論じるように、その代わりに、条件付き信号伝達表現１１００が使用される。
【０１０９】
条件付き信号伝達表現１０００は、関連する分割情報を含む符号化単位１０４１のフィールドを含んでいてもよい。そのような分割情報は、ブロック境界をデコーダに対して示し、デコーダが、デコードされた画像ブロックを充填してフレームを生成することを許容する。符号化単位１０４１のフィールドは、コンテキストのために含まれ、条件付き信号伝達表現１０００に関して論じられる他のフィールドに隣接して位置しても、しなくてもよい。条件付き信号伝達表現１０００はさらに、フラグ１０４２を含む。フラグ１０４２は、後続の情報が代替参照線に関連するイントラ予測モードのためのものであることをデコーダに対して示す。たとえば、フラグ１０４２は、後続の情報が代替イントラ予測モード・インデックス９３１として符号化されるか、MPMリスト９３５インデックスとして符号化されるかを示してもよい。フラグ１０４２に続いて、たとえば代替イントラ予測モード・インデックス９３１を符号化するために、イントラ予測モード部分集合インデックス１０４３フィールドが使用される。いくつかの例では、イントラ予測モード部分集合インデックス１０４３フィールドは、上記で論じたように、MPMリスト９３５インデックスを保持するためのMPMリスト・インデックス・フィールドの代用とされる。いずれの場合も、デコーダは、フラグ１０４２およびインデックスに基づいて、関連する符号化単位１０４１について、選択されたイントラ予測モードを解読することができる。イントラ予測モード部分集合インデックス１０４３フィールドが選択されたイントラ予測モードが代替参照線に関係していることを示したので、どの参照線がマッチするサンプルを含むかをデコーダに対して示すために、参照線インデックス１０４４も含まれる。よって、イントラ予測モード部分集合インデックス１０４３は、隣接するブロック内のマッチするサンプルの方向を与え、参照線インデックス１０４４は、マッチするサンプルまでの距離を与える。この情報に基づいて、デコーダは、マッチするサンプルを決定し、マッチするサンプルを使用して予測ブロックを生成し、任意的に、予測ブロックをビットストリーム内の他の場所で符号化されている残差ブロックと組み合わせて、ピクセルのブロックを再構成することができる。
【０１１０】
図１１は、ビデオ符号化ビットストリーム内の主要参照線についての例示的な条件付き信号伝達表現１１００を示す概略図である。たとえば、条件付き信号伝達表現１１００は、エンコーダまたはデコーダにおけるイントラ予測モード５００のようなイントラ予測モードを使用するビデオ符号化の間に、イントラ予測モード・リスト９２０が主要参照線スキーム７００の一部として使用される場合に、ビットストリームにおいて使用されてもよい。条件付き信号伝達表現１１００は、符号化単位１０４１のフィールドと同様の仕方でパーティション情報をもつ符号化単位１１４１のフィールドを含んでいてもよい。条件付き信号伝達表現１１００は、フラグ１０４２と実質的に類似するフラグ１１４２も含むが、この場合、該フラグは、選択されたイントラ予測モードがイントラ予測モード部分集合９３０と関連付けられていないことを示す。フラグ１１４２の情報に基づいて、次いで、イントラ予測モード・インデックス１１４５が、イントラ予測モード・インデックス９２１についてのモード範囲のインデックスとして解釈されることができる。さらに、選択されたイントラ予測モードが主要参照線と関連付けられていると判定されるので、参照線インデックスは省略される。
【０１１１】
したがって、条件付き信号伝達表現１０００および条件付き信号伝達表現１１００は、それぞれ、代替参照線を用いるイントラ予測モードまたは主要参照線を用いるイントラ予測モードのいずれかを信号伝達するために使用されることができる。これらのスキームは、上記で論じた例／実施形態の任意のものと一緒に使用されうる。一例では、[DirS,DirE]内のイントラ予測モードは、代替参照線を使用することができる。そのような場合、選択されたイントラ予測モードは[DirS,DirE]に含まれていない場合（たとえば、DCまたは平面モード）、参照線インデックスを信号伝達する必要はない。よって、参照インデックスは0に等しいと推定され、ここで、0は、現在ブロックにすぐ隣接する主要参照線を示す。そのような場合、すべての方向性参照がそのような場合には代替参照線を使用するので、イントラ予測モード部分集合９３０は使用されなくてもよい。まとめると、イントラ予測モードがDCまたは平面モードでない場合は常に、そのような例において参照線インデックスが信号伝達される。さらに、そのような場合において、イントラ予測モードがDCまたは平面モードであるときは常に、参照線インデックスは信号伝達されない。別の例では、イントラ予測モードがイントラ予測モード部分集合９３０にあるときはいつでも、参照線インデックスが信号伝達される。よって、イントラ予測モードがイントラ予測モード部分集合９３０に含まれない場合は常に、参照線インデックスは信号伝達されない。
【０１１２】
下記の表１は、選択されたモードがDCまたは平面モードの場合に参照インデックスが省略される場合を記述する例示的なシンタックス表である。
【表１】
0006907328.tif 000002
上記の表１に示されるように、イントラ予測モードが平面でなく、DCでない場合、参照線インデックスは、この例では現在ブロックのxおよびy位置と一緒に、信号伝達される。
【０１１３】
下記の表２は、参照インデックスが、現在のイントラ予測モードがイントラ予測モード部分集合に含まれる場合には信号伝達され、それ以外の場合には省略される場合を記述する例示的なシンタックス表である。イントラ予測モード部分集合は、図９に関して論じられる機構のいずれかに従って決定することができる。
【表２】
0006907328.tif 000003
上記の表２に示されるように、イントラ予測モードがイントラ予測部分集合にある場合、参照線インデックスが信号伝達される。
【０１１４】
MLIPスキームに対して、独立して、または上記で論じた例／実施形態と組み合わせて、さらなる修正がなされることもできる。たとえば、多くのMLIPスキームでは、DCイントラ予測モードは主要参照線に限定される。そのような場合、DCイントラ予測モードは、参照線内のすべての参照サンプルの平均である予測値を生成する。これは、ブロック間の平滑化効果を生じる。のちに論じるように、DCイントラ予測モードは、複数の参照線におけるすべての参照サンプルの平均である予測値を生成するよう、MLIPスキームにおいて拡張されることができる。
【０１１５】
図１２は、代替参照線１２１１を用いるDCモード・イントラ予測１２００のための例示的な機構を示す概略図である。DCモード・イントラ予測１２００は、たとえばイントラ予測モード５００に従ってDCイントラ予測を実行するときに、エンコーダ３００またはデコーダ４００のようなエンコーダまたはデコーダにおいて使用されることができる。DCモード・イントラ予測１２００方式は、イントラ予測モード部分集合９３０、条件付き信号伝達表現１０００および１１００との関連で使用されることができ、またはそのような例とは独立して使用されることができる。
【０１１６】
DCモード・イントラ予測１２００は、0-Mと記される代替参照線１２１１とともに現在ブロックを使用する。そのようなものとして、任意の数の参照線１２１１を使用することができる。そのような参照線１２１１は、参照線８１１と実質的に同様であり、参照サンプル８１２と実質的に同様である参照サンプル１２１２を含む。すると、DC予測値１２０１は、複数の参照線１２１１内の参照サンプル１２１２の平均として計算される。一例では、DC予測値１２０１は、イントラ予測モード選択の間に参照線１２１１のどれが選択されるかに関わりなく、すべての参照線１２１１  0-M内のすべての参照サンプル１２１２の平均として計算される。これは、現在ブロックについて非常に堅牢なDC予測値１２０１を提供する。たとえば、四つの参照線１２１１がある場合、0から3としてインデックス付けされた参照線１２１１内のすべての参照サンプル１２１２の平均値が決定され、現在ブロックのDC予測値１２０１として設定される。そのような例では、参照線インデックスは、場合によっては、ビットストリームにおいて信号伝達されなくてもよい。
【０１１７】
別の例では、DC予測値１２０１は、選択された参照線および対応する参照線に基づいて決定される。これにより、DC予測値１２０１が、全部またはインデックス0の参照線のみではなく、二つの相関した参照線１２１１に基づいて決定されることができる。たとえば、四つの参照線１２１１が使用される場合、参照線１２１１は、0から4としてインデックス付けされてもよい。そのような場合、下記の表３は、参照線が選択されるときに使用される対応する参照線１２１１の例を示す。
【表３】
0006907328.tif 000004
図のように、相関した参照線１２１１を使用して、DC予測値１２０１を決定することができる。そのような場合、デコーダは、選択された参照線インデックスがビットストリームにおいて信号伝達されると、両方の参照線１２１１を決定しうる。
【０１１８】
別の例では、DCモード・イントラ予測１２００は、インデックス0の参照線（主要参照線）を常に使用することができ、さらなる参照線１２１１をも選択してもよい。これは、そのような選択が、DC予測値１２０１を、予測されるピクセル・ブロックの値により正確にマッチさせる場合である。下記の表４は、そのような例を示している。そのような場合、デコーダは、選択された参照線インデックスがビットストリームにおいて信号伝達されると、両方の参照線１２１１を決定しうる。
【表４】
0006907328.tif 000005
【０１１９】
MLIPスキームに対して、独立して、または上記で論じた例／実施形態と組み合わせて、さらなる修正がなされることもできる。たとえば、多くのMLIPスキームでは、参照線は現在ブロックからの参照線の距離に基づいてインデックス付けされる。たとえば、JVET-C0071では、符号語0、10、110、および111が、それぞれ、RefLine0、RefLine1、RefLine2、およびRefLine3を示すために使用される。この手法は、選択される統計的確率がより高い参照線に対して、より短い符号語を割り当てることによって改善されることができる。多くの参照線がビットストリームにおいて信号伝達されるので、この機構を使用するとき、参照線信号伝達のための平均符号語長は減少する。この結果、符号化効率が向上する。符号語を用いた代替参照線信号伝達のための例示的な方式が下記で論じられる。
【０１２０】
図１３は、符号語を用いて代替参照線を符号化するための例示的機構１３００を示す概略図である。機構１３００は、たとえばイントラ予測モード５００に従ってイントラ予測を実行するとき、エンコーダ３００またはデコーダ４００のようなエンコーダまたはデコーダにおいて使用されることができる。機構１３００は、イントラ予測モード部分集合９３０、条件付き信号伝達表現１０００および１１００、DCモード・イントラ予測１２００と一緒に使用されることができ、または、そのような例とは独立して使用されることができる。
【０１２１】
機構１３００は、イントラ予測および参照サンプルを含む対応する参照線１３１１によって符号化される現在ブロック１３０１を使用する。現在ブロック１３０１および参照線１３１１は、それぞれ、現在ブロック８０１および参照線８１１と実質的に同様であってもよい。現在ブロック１３０１は、参照線１３１１内の一つまたは複数の参照サンプルとマッチングされる。マッチに基づいて、イントラ予測モードおよび参照線１３１１が、マッチする参照サンプルを示すために選択される。選択されたイントラ予測モードは、上記で論じたようにビットストリームにおいて符号化される。さらに、選択された参照線のインデックスは、参照線符号語１３１５を使用することによって、ビットストリームにおいて符号化されることができる。参照線符号語１３１５は、参照線のインデックスを示す二進値である。さらに、参照線符号語１３１５は、さらにデータを圧縮するために先頭のゼロ値を省略する。よって、参照線１３１１は、場合によっては、単一の二進値を用いて信号伝達されることができる。
【０１２２】
機構１３００では、参照線１３１１インデックスのための符号語１３１５の長さは、参照線１３１１から現在ブロック１３０１までの距離に関連付けられなくてもよい。代わりに、符号語１３１５は、符号語１３１５の長さと、対応する参照線１３１１が現在ブロック１３０１について用いられる参照線１３１１として選択される確率とに基づいて、参照線１３１１に割り当てられる。場合によっては、現在ブロック１３０１からより遠く離れた参照線１３１１が、現在ブロック１３０１にすぐ隣接する参照線１３１１よりも短い符号語が与えられてもよい。たとえば、0、10、110、および111の符号語１３１５を使用して、それぞれ、RefLine0、RefLine3、RefLine1、およびRefLine2を示すことができる。加えて、符号語１３１５の最初のビンまたは最初の二つのビンはコンテキスト符号化されてもよく、最後のビン（単数または複数）は、コンテキストなしでバイパス符号化されてもよい。コンテキストは、空間的な（たとえば上および左の）隣接ブロックから導出されてもよい。表５は、四つの参照線１３１１が使用される場合の符号語１３１５のための例示的な符号化方式を示す。
【表５】
0006907328.tif 000006
表５に示されるように、参照線１３１１は、0ないし3としてインデックス付けされてもよい。ある例示的なMLIPスキームでは、そのようなインデックスは、現在ブロック１３０１からの距離に基づく符号語１３１５によって表わされ、最も近い参照線１３１１に最小の符号語が割り当てられ、最も遠い参照線１３１１に最大の符号語１３１５が割り当てられる。例示的な機構1および2において、最も可能性の高い参照線１３１１は、最短の符号語１３１５を受け取るインデックス0である。二番目に可能性が高い参照線１３１１は、最も遠い参照線（インデックス3）であり、これは二番目に短い符号語１３１５を受け取る。残りの符号語１３１５は、例に依存して、降順または昇順でインデックス1および2に割り当てられる。
【０１２３】
別の例では、インデックス0の参照線１３１１は、最も可能性の高い参照線１３１１のままであってもよい。さらに、二番目に可能性の高い参照線１３１１は、インデックス2の参照線１３１１であってもよい。この結果は表６のようになる。
【表６】
0006907328.tif 000007
表６に示されるように、最も可能性の高い参照線１３１１はインデックス0を受け取り、これは最短の符号語１３１５を受け取る。二番目に可能性の高い参照線１３１１は、二番目に遠い参照線（インデックス2）であり、これは二番目に短い符号語１３１５を受け取る。残りの符号語１３１５は、例に依存して、降順または昇順でインデックス1および3に割り当てられる。
【０１２４】
上記の例は、より多数の参照線が使用される場合に拡張されることができる。たとえば、五つの参照線が使用される場合、表５の例は、表７に示されるように拡大されてもよい。
【表７】
0006907328.tif 000008
表７に示されるように、最も可能性の高い参照線１３１１はインデックス0であり、これは最短の符号語１３１５を受け取る。二番目に可能性の高い参照線１３１１は、インデックス2に関連付けられた参照線１３１１であり、これは二番目に短い符号語１３１５を受け取る。残りの符号語１３１５は、例に依存して、降順または昇順でインデックス1、2、4、および5に割り当てられる。
【０１２５】
別の例では、参照線１３１１のインデックスは、クラスにソートされることができ、各クラスは、種々に配列されうる符号語１３１５の異なるグループに割り当てられることができる。たとえば、クラスAグループは、最も短い符号語１３１５を受け取ってもよく、クラスBは、最も長い符号語１３１５を受け取ってもよい。クラスA符号語１３１５およびクラスB符号語１３１５は、昇順または降順、またはそれらの任意の組み合わせで割り当てられてもよい。クラス構築スキームは、あらかじめ定義されてもよい。このスキームを明確にするため、下記の例が与えられる。下記の例は、下記の表８に示されように、0から5までインデックス付けされた六つの参照線１３１１を使用する。参照線１３１１は、所望に応じていずれかのクラスに割り当てられうる。たとえば、1、3、および5としてインデックス付けされた参照線１３１１がクラスAに割り当てられてもよく、2および4としてインデックス付けされた参照線１３１１がクラスBに割り当てられてもよい。0としてインデックス付けされた参照線１３１１は、常に最も高い確率の選択であってもよく、よって、常に最も短い符号語１３１５を有してもよい。クラスAは、インデックス0のための符号語１３１５以外の、最も短い符号語１３１５を割り当てられてもよい。次いで、クラスBは、最も長い符号語１３１５を割り当てられてもよい。そのようなスキームの結果が表８に示されている。
【表８】
0006907328.tif 000009
表８の第一の例では、クラスAおよびクラスBの符号語１３１５は、独立して、両方ともインクリメント（降順）する。表８の第二の例では、クラスA符号語１３１５はインクリメントし（降順）、一方、クラスB符号語１３１５はデクリメントする（昇順）。表８の第三の例では、クラスA符号語１３１５はデクリメントし（昇順）、一方、クラスB符号語１３１５はインクリメントする（降順）。表９の第四の例では、クラスAおよびクラスBの符号語１３１５は、独立して両方ともデクリメントする（昇順）。任意の数の参照線および任意の数のクラスが、所望に応じて符号語１３１５を生成するために、このスキームにおいて使用されてもよい。
【０１２６】
MLIPスキームに対して、独立して、または上記で論じた例／実施形態と組み合わせて、さらなる修正がなされることもできる。たとえば、MLIPスキームは、行と列の両方をもつ代替参照線を使用する。多くのMLIPスキームでは、同一数の行および列が使用される。しかしながら、MLIPスキームがハードウェアで機能させられるとき、諸行の集合全体が、符号化の間、メモリに、たとえば中央処理装置（CPU）チップ上のライン・バッファに、記憶される。一方、列はキャッシュに記憶され、所望に応じてCPUバッファ上にプルされうる。よって、参照線行を使用することは、参照線列を使用することよりも、システム資源に関して計算的に高価である。ライン・バッファ・メモリ使用を減らすことが望ましいことがありうるので、下記のMLIPスキームは、異なる数の参照行および参照列を使用する。具体的には、下記のMLIPスキームは、参照列よりも少ない参照行を使用する。
【０１２７】
図１４は、異なる数の行および列をもつ代替参照線を符号化するための例示的機構１４００を示す概略図である。機構１４００は、たとえば、イントラ予測モード５００に従ってDCイントラ予測を実行するときに、エンコーダ３００またはデコーダ４００のようなエンコーダまたはデコーダで使用されることができる。機構１４００は、イントラ予測モード部分集合９３０、条件付き信号伝達表現１０００および１１００、DCモード・イントラ予測１２００、機構１３００と一緒に使用することができ、または、そのような例とは独立して使用されることができる。
【０１２８】
機構１４００は、0-Mと記される代替参照線１４１１をもつ現在ブロック１４０１を使用する。そのようなものとして、任意の数の参照線１４１１を使用することができる。そのような参照線１４１１は、参照線８１１および／または１２１１と実質的に同様であり、参照サンプル８１２および／または１２１２と実質的に同様である参照サンプルを含む。参照線１４１１は、現在ブロック１４０１の上方に位置された参照サンプルを含む参照行１４１３を含む。
参照線１４１１はまた、現在ブロック１４０１の左に位置された参照サンプルを含む参照列１４１４を含む。上記のように、MLIPスキームは、イントラ予測の間に、参照行１４１３のすべてをオンチップ・メモリに記憶し、これは資源集約的である。よって、メモリ使用量を減らすため、および／または符号化効率とメモリ使用量との間の特定のトレードオフを得るために、参照行１４１３の数は、参照列１４１４の数よりも少なくてもよい。図１４に示されるように、参照行１４１３の数は、参照列１４１４の数の半分であってもよい。たとえば、これは、最初の参照行１４１３と最後の参照行１４１３との間の参照行１４１３の半分を除去する（たとえば、RefLine0およびRefLine3を保持するが、RefLine1およびRefLine2を除去する）ことによって達成することができる。別の例では、奇数行１４１３または偶数行１４１３を除去することができる（たとえば、RefLine0およびRefLine2を保持するが、RefLine1およびRefLine3を除去する、またはその逆も）。行１４１３を除去するための機構１４００は、あらかじめ定義されることができる。
【０１２９】
図１５は、異なる数の行および列を有する代替参照線を符号化するための別の例示的機構１５００を示す概略図である。機構１５００は、たとえばイントラ予測モード５００に従ってDCイントラ予測を実行するときに、エンコーダ３００またはデコーダ４００のようなエンコーダまたはデコーダで使用されることができる。機構１５００は、イントラ予測モード部分集合９３０、条件付き信号伝達表現１０００および１１００、DCモード・イントラ予測１２００、機構１３００と一緒に使用されることができ、または、そのような例とは独立して使用されることができる。
【０１３０】
機構１５００は、機構１４００と実質的に同様であるが、参照行１５１３の異なる数を使用する。具体的には、機構１５００は、0-Mと記される代替参照線１５１１をもつ現在ブロック１５０１を使用する。そのようなものとして、任意の数の参照線１５１１を使用することができる。そのような参照線１５１１は、参照線８１１および／または１２１１と実質的に同様であり、参照サンプル８１２および／または１２１２と実質的に同様である参照サンプルを含む。参照線１５１１は、現在ブロック１５０１の上方に位置する参照サンプルを含む参照行１５１３を含む。参照線１５１１はまた、現在ブロック１５０１の左に位置された参照サンプルを含む参照列１５１４を含む。
【０１３１】
この場合、参照行１５１３の数は、参照列１５１４の数からKを引いたものであり、ここで、Kは、参照列１５１４の数より小さい正の整数である。Kは、あらかじめ定義されていてもよく、あるいはシーケンス・パラメータ集合（Sequence  Parameter  Set、SPS）、ピクチャー・パラメータ集合（Picture  Parameter  Set、PPS）またはビットストリーム内のスライス・ヘッダにおいて信号伝達されてもよい。示される例では、参照行１５１３の数は、参照列１５１４の数から1を引いたものである。しかしながら、Kのいかなる値を用いてもよい。参照行１５１３は、任意のあらかじめ定義された機構を用いて除去される。図１５では、1としてインデックス付けされた参照線１５１１に関連する参照列１５１３が除去される。他の例では、2、3等としてインデックス付けされた参照線１５１１に関連する参照列１５１３が除去される。
【０１３２】
機構１４００および／または１５００を使用する場合、参照行の参照インデックスは、参照列の参照インデックスとは異なっていてもよい。参照行と参照列の数が上記で論じたように異なる場合に参照線インデックスを示すまたは導出するためのいくつかの機構を下記に呈示する。ある機構では、参照列インデックスと左行インデックスが別々に信号伝達される。たとえば、0からNumTopまでの間の参照行インデックスを信号伝達するために、一つのシンタックス要素が使用される。ここで、NumTopは参照行の数である（0とNumTopを含む）。0からNumLeftまでの間の参照列インデックスを信号伝達するためには、別のシンタックス要素が使用される。ここで、NumLeftは参照列の数である（0とNumLeftを含む）。
【０１３３】
別の機構では、一つのシンタックス要素が、参照行および参照列の両方のための参照線インデックスを信号伝達するために使用される。ほとんどの例では、NumLeftはNumTopよりも大きい。ただし、以下に記述される機構はNumTopがNumLeftより大きい状況にも当てはまる。NumLeft＞NumTopの場合、ある機構では、参照列のインデックスは、上述の機構を使って信号伝達される。そのような場合、参照線インデックスは0からNumLeftまでの間（0とNumLeftを含む）である。参照行からの参照線または参照ピクセルが使用され、参照線インデックスがNumTopより大きい場合、NumTopのインデックスに関連付けられた参照線が信号伝達される。
【０１３４】
別の機構では、NumLeft＞NumTopの場合、参照行のインデックスは、上述の機構を使って信号伝達される。そのような場合、参照インデックスは0からNumTopまでの間（0とNumTopを含む）である。参照行からの参照線またはピクセルが使用される場合、信号伝達された（またはパースされた）参照線インデックスが、選択された参照線を示す。NumLeftがNumTopより大きいので、参照列からの参照サンプルが選択されるとき、信号伝達された参照線インデックスを選択される参照列にマッピングするために、インデックス・マッピング・テーブルが使用される。例示的なマッピング・テーブル９〜１１は、下記のように示される。
【表９】
0006907328.tif 000010
【表１０】
0006907328.tif 000011
【表１１】
0006907328.tif 000012
いくつかの例では、上記に示されるようなテーブル・マッピングは、実装に依存して、計算によって置き換えられてもよい。
【０１３５】
さらに、いくつかのイントラ予測モードは参照列を参照線として使用し、他のイントラ予測モードは参照行を参照線として使用する。一方、いくつかのイントラ予測モードは、参照行と参照列の両方を参照線として使用する。たとえば、インデックス範囲定義は、イントラ予測モードに依存してもよい。これは、位相プロセスと位相結果がインデックス範囲によって決定されるためである。
【０１３６】
具体的な例として、参照列を使用するイントラ予測モード（たとえば[DirS,DirH]）はインデックス範囲[0,NumLeft]をもつ。参照行を使用するイントラ予測モード（[DirV,DirE]）はインデックス範囲[0,NumTop]をもつ。参照列と参照行の両方を使用するイントラ予測モードには二つの場合がありうる。第一の場合では、インデックス範囲は[0,NumTop]（Modi1と記される）の間である。この場合、NumLeft＞NumTopであり、インデックス範囲は[1,NumTop]である。したがって、NumLeft個の参照列から、いくつかの参照列が選択され、ここで、選択される参照列の数はNumtop以下である。選択機構は、エンコーダおよびデコーダにおいてあらかじめ定義されている。第二の場合では、インデックス範囲は[0,NumLeft]の間（Modi2と記される）である。この場合、たとえば信号伝達された参照線インデックスに基づいて、参照列のインデックスおよびインデックス参照行を決定するために、マッピング機構が使用される。マッピング機構はあらかじめ定義されている。たとえば、上記の表９〜表１１の任意のマッピング機構が使用されうる。
【０１３７】
別の具体例として、参照線の数が4であるとき、オンチップ・メモリ使用を低減するために、参照線RefLine1およびRefLine3の参照行が除去されてもよい。この場合、四つの参照列と二つの参照行が使用される。イントラ予測モードが参照列と参照行の両方を使用する場合、インデックス範囲は、選択された参照サンプル（単数または複数）を一意的に信号伝達するよう再定義される。この場合、イントラ予測モード[DirS,DirH]は[0,3]のインデックス範囲をもつ。イントラ予測モード[DirV,DirE]については、インデックス範囲は[0,1]である。
【０１３８】
参照列と参照行の両方を使用するイントラ予測モード（たとえば、平面、DCまたは(DirH,DirV)内のイントラ予測モード）については、インデックス範囲は[0,1]（Modi1）であるか、またはインデックス範囲は[0,3]（Modi2）である。インデックス範囲が[0,1]（Modi1と記される）の場合、参照列のうちの二つが使用される（たとえば、RefLine0およびRefLine2の左側部分が使用される）。この場合、参照行と参照列の数は両方とも2である。残りの二つの参照列（たとえばRefLine1およびRefLine3）も使用されるように選択されてもよい。選択機構はあらかじめ定義されている。インデックス範囲が[0,3]（Modi2と記される）である場合、参照列の数は4、参照行の数は2であり、インデックス範囲は[0,3]である。その際、インデックス・マッピング機構が採用される（たとえば、[0,1]内の参照列インデックスは参照行インデックス0に対応し、[2,3]内の参照列インデックスは参照行インデックス1に対応する）。他のマッピング機構を使用することもできる（たとえば、[0,2]内の列インデックスは行インデックス0に対応し、列3は行インデックス1に対応するなど）。しかしながら、使用されるマッピング機構は、あらかじめ定義される。
【０１３９】
参照インデックス符号化機構および参照線構築機構を組み合わせて、符号化効率を改善し、オンチップ・メモリ使用量を低減することができる。下記は、そのような機構の例示的な組み合わせである。この場合、最も遠い参照線のインデックスには最も短い符号語が割り当てられ、NumTopはNumLeftの半分である。さらに、参照線の数は4であり、表８のEx1が使用される。インデックス符号化機構については、NumTopがNumLeftより小さい場合、Modi1が使用され、RefLine0とRefLine3の列が保持される。この結果、下記の表１２に示されるような参照線信号伝達機構が得られる。
【表１２】
0006907328.tif 000013
【０１４０】
この例では、イントラ予測モードが[DirS,DirH]の間である場合、インデックス範囲は[0,3]であり、参照線インデックスを表現する機構は表１２に示される。参照列は、参照線インデックスに従って参照線として選択されることができる。さらに、イントラ予測モードが[DirV,DirE]の間である場合、インデックス範囲は[0,1]であり、参照線インデックスを表現する機構は表１２に定義される。参照行は、参照線インデックスに応じて参照線として選択されることができる。この場合、RefLine0とRefLine3は考慮に入れられるが、RefLine1とRefLine2は考慮に入れられない。イントラ予測モードが[Planar,DC]および(DirH,DirV)の間である場合、インデックス範囲は[0,1]であり、参照線インデックスを表現する機構は表１２に定義される。すると、参照列および参照行は、参照線インデックスに従って参照線として選択される。この場合、RefLine0とRefLine3は考慮に入れられるが、RefLine1とRefLine2は考慮に入れられない。同様に、上記で論じた二進表現テーブルが、さらに符号化効率を高めるために適用されてもよい。
【０１４１】
図１６は、本開示のある実施形態によるビデオ符号化装置１６００の概略図である。ビデオ符号化装置１６００は、本稿に記載されるような開示される実施形態を実装するのに好適である。ビデオ符号化装置１６００は、ネットワークを通じて上流および／または下流でデータを通信するための下流ポート１６２０、上流ポート１６５０、および／またはトランシーバ・ユニット（Tx/Rx）１６１０を有する。ビデオ符号化装置１６００はまた、データを処理するための論理ユニットおよび／または中央処理装置（central  processing  unit、CPU）を含むプロセッサ１６３０と、データを記憶するためのメモリ１６３２とを含む。ビデオ符号化装置１６００はまた、光学式または無線式の通信ネットワークを介したデータの通信のために、上流ポート１６５０および／または下流ポート１６２０に結合された、光‐電気（optical-to-electrical、OE）コンポーネント、電気‐光（electrical-to-optical、EO）コンポーネントおよび／または無線通信コンポーネントを有していてもよい。ビデオ符号化装置１６００はまた、ユーザーとの間でデータを通信するための入力および／または出力（I/O）装置１６６０を含んでいてもよい。I/O装置１６６０は、ビデオ・データを表示するためのディスプレイ、オーディオ・データを出力するためのスピーカーなどの出力装置を含んでいてもよい。I/O装置１６６０はまた、キーボード、マウス、トラックボールなどの入力装置および／またはそのような出力装置と対話するための対応するインターフェースを含んでいてもよい。
【０１４２】
プロセッサ１６３０は、ハードウェアおよびソフトウェアによって実装される。プロセッサ１６３０は、一つまたは複数のCPUチップ、コア（たとえば、マルチコア・プロセッサ）、フィールドプログラマブルゲートアレイ（field-programmable  gate  array、FPGA）、特定用途向け集積回路（application  specific  integrated  circuit、ASIC）、およびデジタル信号プロセッサ（digital  signal  processor、DSP）として実装されてもよい。プロセッサ１６３０は、下流ポート１６２０、Tx/Rx  １６１０  上流ポート１６５０、およびメモリ１６３２と通信する。プロセッサ１６３０は、符号化モジュール１６１４を有する。符号化モジュール１６１４は、方法１７００、１８００、１９００、および／または上述の任意の他の機構といった、上述の開示された実施形態を実装する。さらに、符号化モジュール１６１４は、コーデック・システム２００、エンコーダ３００、デコーダ４００を実装し、諸ブロック６００をもつイントラ予測モード５００を用いたイントラ予測を実行し、主要参照線スキーム７００を使用し、代替参照線スキーム８００を使用し、イントラ予測モード部分集合９３０を使用し、表現１０００および／または１１００を使用し、DCモード・イントラ予測１２００を使用し、機構１３００、１４００および／または１５００、ならびにそれらの任意の組み合わせを使用してもよい。したがって、符号化モジュール１６１４を含めることにより、ビデオ符号化装置１６００の機能性が大幅に改善され、ビデオ符号化装置１６００の異なる状態への変換が実施される。あるいはまた、符号化モジュール１６１４は、メモリ１６３２に記憶された命令として実装され、プロセッサ１６３０によって実行されることができる（たとえば、非一時的媒体に記憶されたコンピュータ・プログラム製品として）。
【０１４３】
メモリ１６３２は、ディスク、テープドライブ、ソリッドステートドライブ、リードオンリーメモリ（read  only  memory、ROM）、ランダムアクセスメモリ（random  access  memory、RAM）、フラッシュメモリ、三値連想記憶式メモリ（ternary  content-addressable  memory、TCAM）、スタティックランダムアクセスメモリ（static  random  access  memory、SRAM）などの一つまたは複数のメモリタイプを含む。メモリ１６３２は、オーバーフロー・データ記憶装置として、そのようなプログラムが実行のために選択されたときにプログラムを記憶し、プログラム実行中に読み出される命令およびデータを記憶するために使用されてもよい。
【０１４４】
図１７は、代替参照線をもつイントラ予測モード部分集合を用いるビデオ符号化の例示的方法１７００のフローチャートである。たとえば、方法１７００は、デコーダ４００として機能するよう構成されたビデオ符号化装置１６００上で動作してもよい。方法１７００はまた、代替参照線スキーム８００およびイントラ予測モード部分集合９３０との関連で、イントラ予測モード５００を使用してもよい。
【０１４５】
ステップ１７０１では、ビットストリームが受領される。ビットストリームは、デコーダによって圧縮された圧縮ビデオ・データのエンコードを含む。ステップ１７０３では、イントラ予測モード部分集合９３０のようなイントラ予測モード部分集合が決定される。イントラ予測モード部分集合は、現在の画像ブロックについて複数の参照線に相関するイントラ予測モードを含み、現在の画像ブロックについての主要参照線に相関するイントラ予測モードを除外する。イントラ予測モード部分集合は、上記で論じたように、イントラ予測モードのさまざまなグループを含んでいてもよい。いくつかの例では、イントラ予測モード部分集合は、DirS、DirE、およびDirSとDirEとの間のN番目毎の方向性イントラ予測モードを含む。ここで、Nは、所定の整数値である。他の例では、イントラ予測モード部分集合はさらに、平面予測モードおよびDC予測モードを含んでいてもよい。さらなる例では、イントラ予測モード部分集合は、DirS、DirE、DirD、DirH、DirV、ならびにDirS、DirE、DirD、DirH、およびDirVのプラスまたはマイナスNの方向における有効な方向性イントラ予測モードを含み、ここでNは所定の整数値である。そのようなイントラ予測モード部分集合は、さらに、平面予測モードおよびDC予測モードを含んでいてもよい。さらに別の例では、イントラ予測モード部分集合は、現在の画像ブロックに所定の隣接状態で位置するデコードされた隣接ブロックのために選択されたイントラ予測モードを含む。さらに別の例では、イントラ予測モード部分集合は、当該ブロックのためのMPMリストに関連付けられたモードを含む。さらに、イントラ予測モード部分集合は、上記で論じたイントラ予測モードの任意の他の組み合わせを含んでいてもよい。
【０１４６】
任意的なステップ１７０５では、選択されたイントラ予測モードがイントラ予測モード部分集合に含まれるとき、選択されたイントラ予測モードは、イントラ予測モード部分集合インデックスによってデコードされる。任意的なステップ１７０７では、選択されたイントラ予測モードがイントラ予測モード部分集合に含まれない場合、選択されたイントラ予測モードはイントラ予測モード・インデックスによってデコードされる。選択されたイントラ予測モードは、図９に関して論じられたように、いくつかの場合には、MPMインデックスに基づいてデコードされてもよい。図１０〜図１１に関して論じられたように、インデックス付け方式を決定するためのコンテキストを提供するためにフラグが用いられてもよい。
【０１４７】
ステップ１７０９では、選択されたイントラ予測モードがイントラ予測モード部分集合に含まれるとき、前記エンコードしたものから、参照線インデックスがデコードされる。参照線インデックスは、選択されたイントラ予測モードについての、前記複数の参照線からの選択された参照線を示す。上記で論じたように、選択されたイントラ予測モードがイントラ予測モード部分集合に含まれない場合、ビットストリーム内の余分なビットを減らすために、参照線インデックスはデコードされない。ビットストリームにおけるそのような条件付き信号伝達をさらにサポートするために、前記エンコードにおいて、選択されたイントラ予測モードの後に、参照線インデックスが符号化されてもよい（たとえば、図１０〜図１１に関して論じられたように）。
【０１４８】
ステップ１７１１では、ビデオ・データはディスプレイを介してユーザーに呈示される。ビデオ・データは、選択されたイントラ予測モードおよび対応する参照線（単数または複数）に基づいてデコードされた画像ブロックを含む。
【０１４９】
図１８は、代替参照線をもつDCモード・イントラ予測を用いたビデオ符号化の例示的方法１８００のフローチャートである。たとえば、方法１８００は、デコーダ４００として作用するよう構成されたビデオ符号化装置１６００上で機能してもよい。方法１８００は、代替参照線スキーム８００およびDCモード・イントラ予測１２００によるイントラ予測モード部分集合９３０との関連でイントラ予測モード５００を使用してもよい。
【０１５０】
ステップ１８０１では、ビットストリームがメモリに記憶される。ビットストリームは、圧縮されたビデオ・データを含む。圧縮されたビデオ・データは、あるイントラ予測方式に従って予測ブロックとして符号化された画像ブロックを含む。ステップ１８０３では、DCイントラ予測モードによってエンコードされた現在予測ブロックが得られる。ステップ１８０５では、現在予測ブロックについて、DC予測値が決定される。DC予測値は、現在予測ブロックに関連する複数の参照線のうちの少なくとも二つにおけるすべての参照サンプルの平均を決定することによって、現在予測ブロックに対応する現在画像ブロックを近似する。よって、ステップ１８０５は、DC予測モードを代替参照線コンテキストに拡張する。いくつかの例において、DC予測値の決定は、現在予測ブロックに隣接するN個の参照線内のすべての参照サンプルの平均を決定することを含んでいてもよく、ここで、Nは所定の整数である。いくつかの例では、DC予測値の決定は、選択された参照線および対応する（たとえばあらかじめ定義された）参照線内のすべての参照サンプルの平均を決定することを含む。さらに別の例では、DC予測値の決定は、隣接する参照線（たとえばインデックス0をもつ参照線）およびビットストリームにおいて信号伝達された選択された参照線内のすべての参照サンプルの平均を決定することを含む。さらに、DC予測値は、上記で図１２に関して論じたようなスキームの任意の組み合わせを使って決定されてもよい。ステップ１８０７では、現在の画像ブロックが、DC予測値に基づいて再構成される。ブロック１８０９では、現在の画像ブロックを含むフレームがユーザーに表示される。
【０１５１】
図１９は、選択確率に基づく符号語によって符号化された参照線を用いたビデオ符号化の例示的方法１９００のフローチャートである。たとえば、方法１９００は、デコーダ４００として作用するよう構成されたビデオ符号化装置１６００上で機能してもよい。方法１９００はまた、機構１３００を使って、代替参照線スキーム８００およびイントラ予測モード部分集合９３０との関連でイントラ予測モード５００を使用してもよい。さらに、図１４および図１５に関して論じたように、異なる数の参照行および参照列が、方法１９００によって採用されてもよい。
【０１５２】
ステップ１９０１では、エンコードしたものを含むビットストリームが受領される。該エンコードしたものは、エンコーダによって圧縮されたビデオ・データを含んでいた。ステップ１９０３では、該エンコードしたものからイントラ予測モードがデコードされる。イントラ予測モードは、現在ブロックと選択された参照線内の参照サンプルとの関係を示す。さらに、現在ブロックは、選択された参照線（たとえば、代替参照線スキーム）を含む複数の参照線に関連付けられる。ステップ１９０５において、選択された参照線は、選択された参照線を示す選択された符号語に基づいてデコードされる。選択された符号語は、図１３に関して論じられたように、選択された参照線の選択確率に基づく長さを含む。たとえば、前記複数の参照線は、複数の符号語によって示されてもよい。さらに、現在ブロックから最も遠い参照線は、二番目に短い長さをもつ符号語によって示されてもよい。別の例では、現在ブロックから二番目に遠い参照線は、二番目に短い長さをもつ符号語によって示されてもよい。別の例では、隣接参照線以外のあらかじめ定義された参照線が、二番目に短い長さをもつ符号語によって示されてもよい。さらに別の例では、複数の符号語は、クラスAグループおよびクラスBグループにソートされてもよい。クラスAグループは、クラスBグループ内の符号語の長さよりも短い長さの符号語を含んでいてもよい。さらに、クラスAグループとクラスBグループは、互いに独立してインクリメントおよびデクリメントすることができる。さらなる例では、参照線は、図１４および図１５に関して論じられたように、異なる数の参照行および参照列を含んでいてもよい。たとえば、複数の参照線は、参照行および参照列を含んでいてもよい。さらに、現在ブロックについて記憶される参照行の数は、現在ブロックについて記憶される参照列の数の半分であってもよい。別の例では、現在ブロックについて記憶される参照行の数は、現在ブロックについて記憶される参照列の数から1を引いた数に等しくてもよい。別の例では、現在ブロックについて記憶される参照行の数は、デブロッキング・フィルタ操作によって使用される参照行の数に基づいて選択されてもよい。ステップ１９０７では、ビデオ・データがディスプレイを介してユーザーに呈示される。ビデオ・データは、イントラ予測モードおよび選択された参照線に基づいてデコードされた画像ブロックを含む。よって、方法１７００、１８００、および１９００は、単独で、または任意の組み合わせで適用されて、イントラ予測を介してビデオを符号化するときの代替参照線スキームの有効性を改善することができる。
【０１５３】
ビットストリームを受領する受領手段と；イントラ予測モード部分集合を決定する処理手段であって、前記イントラ予測モード部分集合は、現在の画像ブロックについての複数の参照線に相関するイントラ予測モードを含み、前記現在の画像ブロックについての主要参照線に相関するイントラ予測モードを除く、段階と；第一のイントラ予測モードが前記イントラ予測モード部分集合に含まれる場合には、代替イントラ予測モード・インデックスによって前記第一のイントラ予測モードをデコードする段階と；前記第一のイントラ予測モードが前記イントラ予測モード部分集合に含まれない場合には、イントラ予測モード・インデックスによって前記第一のイントラ予測モードをデコードする段階とを実行するよう構成された処理手段と；前記第一のイントラ予測モードに基づいてデコードされた画像ブロックを含むビデオ・データを呈示する表示手段と、を備えるビデオ符号化装置。
【０１５４】
予測ブロックとして符号化された画像ブロックを含むビットストリームをメモリ手段に記憶する段階と：処理手段によって、直流（direct  current、DC）イントラ予測モードによってエンコードされた現在の予測ブロックを取得する段階と；前記現在の予測ブロックに関連する複数の参照線のうち少なくとも二つの参照線におけるすべての参照サンプルの平均を決定することによって、前記現在の予測ブロックに対応する現在の画像ブロックを近似するためのDC予測値を決定する段階と；前記プロセッサによって、前記DC予測値に基づいて、前記現在の画像ブロックを再構成する段階と；前記現在の画像ブロックを含むビデオ・フレームを表示手段に表示する段階と、を含む、方法。
【０１５５】
ビットストリームを受領する受領手段と；処理手段であって、前記ビットストリームからイントラ予測モードをデコードする段階であって、前記イントラ予測モードは、現在ブロックと選択された参照線との間の関係を示し、前記現在ブロックは、前記選択された参照線を含む複数の参照線と関連付けられている、段階と；前記選択された参照線は、前記選択された参照線を示す選択された符号語に基づいて前記選択された参照線をデコードする段階であって、前記選択された符号語は、前記選択された参照線の選択確率に基づく長さを含む、段階とを実行するよう構成された処理手段と；前記イントラ予測モードおよび前記選択された参照線に基づいてデコードされた画像ブロックを含むビデオ・データを呈示する表示手段と、を備えるビデオ符号化装置。
【０１５６】
第一の構成要素と第二の構成要素との間に、ライン、トレース、または別の媒体を除いて介在する構成要素がない場合に、第一の構成要素は第二の構成要素に直接結合されている。第一の構成要素と第二の構成要素との間に、ライン、トレース、または別の媒体以外の介在する構成要素がある場合に、第一の構成要素は第二の構成要素に間接的に結合されている。用語「結合され」およびその変形は、直接結合されることおよび間接的に結合されることの両方をむ。用語「約」の使用は、特に断りのない限り、後続の数字の±10%を含む範囲を意味する。
【０１５７】
本開示においていくつかの実施形態が提供されたが、開示されたシステムおよび方法は、本開示の精神または範囲から逸脱することなく、多くの他の具体的形態で具現されうることが理解されうる。本願の例は、例示的なものであり、制約するものではないと考えられ、その意図は、本明細書に与えられる詳細に限定されるものではない。たとえば、さまざまな要素またはコンポーネントが別のシステムに組み合わされ、または統合されることができ、あるいはある種の特徴が省略されてもよく、または実装されなくてもよい。
【０１５８】
さらに、さまざまな実施形態において離散的または別個に記載および図示された技術、システム、サブシステム、および方法は、本開示の範囲から逸脱することなく、他のシステム、コンポーネント、技術、または方法と組み合わされまたは統合されることができる。変更、置換、および改変の他の例が当業者によって見きわめられ、本明細書に開示された精神および範囲から逸脱することなく、なされてもよい。
【図１】
0006907328.tif 000014
【図２】
0006907328.tif 000015
【図３】
0006907328.tif 000016
【図４】
0006907328.tif 000017
【図５】
0006907328.tif 000018
【図６】
0006907328.tif 000019
【図７】
0006907328.tif 000020
【図８】
0006907328.tif 000021
【図９】
0006907328.tif 000022
【図１０】
0006907328.tif 000023
【図１１】
0006907328.tif 000024
【図１２】
0006907328.tif 000025
【図１３】
0006907328.tif 000026
【図１４】
0006907328.tif 000027
【図１５】
0006907328.tif 000028
【図１６】
0006907328.tif 000029
【図１７】
0006907328.tif 000030
【図１８】
0006907328.tif 000031
【図１９】
0006907328.tif 000032