(57)【要約】  ビデオコーダは、イントラブロック複写（イントラＢＣ）を使用してビデオデータの現在のブロックをコード化するためのサーチ領域を決定し得る。いくつかの例では、ビデオコーダは、サーチ領域の中心点を決定し、この中心点と、サーチ領域の既定のサイズとに基づいて、現在のブロックに対するサーチ領域を決定する。ビデオコーダは、決定されたサーチ領域に基づいて、現在のブロックを含む現在のピクチャからのビデオデータの再構築ブロックをメモリに記憶する。ビデオコーダは、イントラＢＣにしたがって、サーチ領域内の再構築ブロックのうちの１つを識別する情報をコード化し、再構築ブロックのうちの識別された１つに基づいて現在のブロックをコード化する。【選択図】図２
2017513361.tif 000002
【特許請求の範囲】
【請求項１】
ビデオデータをコード化するための方法であって、
前記ビデオデータの現在のブロックに対するサーチ領域の中心点を決定することと、
前記中心点と、前記サーチ領域の既定のサイズとに基づいて、前記現在のブロックに対する前記サーチ領域を決定することと、
前記決定されたサーチ領域に基づいて、前記現在のブロックを含む現在のピクチャからの前記ビデオデータの再構築ブロックをメモリに記憶することと、
前記サーチ領域内の前記再構築ブロックのうちの１つを識別する情報をコード化することと、
前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックをコード化することと
を備える方法。
【請求項２】
前記サーチ領域の前記中心点を決定することは、
前記現在のブロックを含む現在のコーディングツリー単位（ＣＴＵ）のブロックベクトルを識別することと、
前記識別されたブロックベクトルに基づいて、前記サーチ領域の前記中心点を決定することと
を備える、請求項１に記載の方法。
【請求項３】
前記サーチ領域の前記中心点を決定することは、
前記現在のブロックまたは前記現在のブロックを含む現在のコーディングツリー単位（ＣＴＵ）のうちの少なくとも１つ、の隣接ブロックのブロックベクトルを識別することと、
前記識別されたブロックベクトルに基づいて、前記サーチ領域の前記中心点を決定することと
を備える、請求項１に記載の方法。
【請求項４】
前記現在のピクチャ内の前記中心点のロケーションは、前記ビデオデータを含む符号化ビデオビットストリームにおいてシグナリングされる、
請求項１に記載の方法。
【請求項５】
前記サーチ領域の前記サイズは、予め定義されるか、または前記ビデオデータを含む符号化ビデオビットストリームにおいてシグナリングされるかのうちの１つである、
請求項１に記載の方法。
【請求項６】
前記サーチ領域の前記サイズは、幅および高さによって定義され、前記幅は、コーディングツリー単位（ＣＴＵ）幅の倍数として定義され、前記高さは、ＣＴＵ高さの倍数として定義される、
請求項５に記載の方法。
【請求項７】
前記サーチ領域の前記サイズは、ピクセル単位の観点で幅および高さによって定義される、
請求項５に記載の方法。
【請求項８】
前記現在のブロックをコード化するのに利用不可能な前記決定されたサーチ領域の一部を識別することと、
前記サーチ領域の前記利用不可能な部分に近似のサンプル値を複写すること、または
固定のサンプル値を使用すること
のうちの少なくとも１つによって、サンプル値を用いて前記サーチ領域の前記利用不可能な部分をパッディングすることと
をさらに備える、請求項１に記載の方法。
【請求項９】
固定のサンプル値を使用することは、０，１，＜＜（Ｂ−１）にしたがって前記固定のサンプル値を決定することを備え、ここで、Ｂは、サンプルビット深度である、
請求項８に記載の方法。
【請求項１０】
前記決定されたサーチ領域の一部が、前記現在のブロックとは、境界の異なる側にあると決定すること、ここにおいて、前記境界は、スライス境界、タイル境界、または前記現在のピクチャの境界のうちの少なくとも１つを備える、と、
前記サーチ領域の全体が、前記現在のブロックと、前記境界の同じ側にくるように前記決定されたサーチ領域をシフトすることと
をさらに備える、請求項１に記載の方法。
【請求項１１】
波面並列処理（ＷＰＰ）が前記現在のピクチャをコード化するために使用されると決定することと、
ＷＰＰが前記現在のピクチャをコード化するために使用されるとの前記決定に基づいて、前記現在のブロックに対する前記決定されたサーチ領域を制限することと
をさらに備える、請求項１に記載の方法。
【請求項１２】
ＷＰＰが前記現在のピクチャをコード化するために使用されるとの前記決定に基づいて、前記現在のブロックに対する前記決定されたサーチ領域を制限することは、
前記現在のブロックを含む現在のＣＴＵの左にあり、かつ、それの現在の行にあるコーディングツリー単位（ＣＴＵ）、
前記現在のＣＴＵに対して、左にあるか、斜め左上にあるか、または上にあるＣＴＵ、あるいは
前記現在のＣＴＵに対して、左にあるか、斜め左上にあるか、または上にあるＣＴＵ、および、前記現在の行よりも上の行について、ＷＰＰに関するエントロピーコーディング遅延にしたがい前記現在の行の上の１行につき２つの追加の右側のＣＴＵ
のうちの１つに前記決定されたサーチ領域を制限することを備える、請求項１１に記載の方法。
【請求項１３】
前記サーチ領域の前記中心点を決定することは、前記ビデオデータの前記現在のブロックを復号するための前記サーチ領域の前記中心点を決定することを備え、
前記サーチ領域内の前記再構築ブロックのうちの１つを識別する情報をコード化することは、前記ビデオデータを含む符号化ビデオビットストリームからの前記情報を復号することを備え、
前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックをコード化することは、前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックを再構築することを備える、
請求項１に記載の方法。
【請求項１４】
前記サーチ領域の前記中心点を決定することは、前記ビデオデータの前記現在のブロックを符号化するための前記サーチ領域の前記中心点を決定することを備え、
前記サーチ領域内の前記再構築ブロックのうちの１つを識別する情報をコード化することは、前記ビデオデータを含む符号化ビデオビットストリーム内の前記情報を符号化することを備え、
前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックをコード化することは、前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックを符号化することを備える、
請求項１に記載の方法。
【請求項１５】
ビデオコーダを備えるデバイスであって、前記ビデオコーダは、
ビデオデータを記憶するように構成されたメモリと、
１つまたは複数のプロセッサと、
を備え、前記１つまたは複数のプロセッサは、
前記ビデオデータの現在のブロックに対するサーチ領域の中心点を決定することと、
前記中心点と、前記サーチ領域の既定のサイズとに基づいて、前記現在のブロックに対する前記サーチ領域を決定することと、
前記決定されたサーチ領域に基づいて、前記現在のブロックを含む現在のピクチャからの前記ビデオデータの再構築ブロックを前記メモリに記憶することと、
前記サーチ領域内の前記再構築ブロックのうちの１つを識別する情報をコード化することと、
前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックをコード化することと
を行うように構成される、デバイス。
【請求項１６】
前記１つまたは複数のプロセッサは、
前記現在のブロックを含む現在のコーディングツリー単位（ＣＴＵ）のブロックベクトルを識別することと、
前記識別されたブロックベクトルに基づいて、前記サーチ領域の前記中心点を決定することと
を行うように構成される、請求項１５に記載のデバイス。
【請求項１７】
前記１つまたは複数のプロセッサは、
前記現在のブロックまたは前記現在のブロックを含む現在のコーディングツリー単位（ＣＴＵ）のうちの少なくとも１つ、の隣接ブロックのブロックベクトルを識別することと、
前記識別されたブロックベクトルに基づいて、前記サーチ領域の前記中心点を決定することと
を行うように構成される、請求項１５に記載のデバイス。
【請求項１８】
前記現在のピクチャ内の前記中心点のロケーションは、前記ビデオデータを含む符号化ビデオビットストリームにおいてシグナリングされる、
請求項１５に記載のデバイス。
【請求項１９】
前記サーチ領域の前記サイズは、予め定義されるか、または前記ビデオデータを含む符号化ビデオビットストリームにおいてシグナリングされるかのうちの１つである、
請求項１５に記載のデバイス。
【請求項２０】
前記サーチ領域の前記サイズは、幅および高さによって定義され、前記幅は、コーディングツリー単位（ＣＴＵ）幅の倍数として定義され、前記高さは、ＣＴＵ高さの倍数として定義される、
請求項１９に記載のデバイス。
【請求項２１】
前記サーチ領域の前記サイズは、ピクセル単位の観点で幅および高さによって定義される、
請求項１９に記載のデバイス。
【請求項２２】
前記１つまたは複数のプロセッサは、
前記現在のブロックをコード化するのに利用不可能な前記決定されたサーチ領域の一部を識別することと、
前記サーチ領域の前記利用不可能な部分に近似のサンプル値を複写すること、または
固定のサンプル値を使用すること
のうちの少なくとも１つによって、サンプル値を用いて前記サーチ領域の前記利用不可能な部分をパッディングすることと
を行うように構成される、請求項１５に記載のデバイス。
【請求項２３】
前記１つまたは複数のプロセッサは、０，１，＜＜（Ｂ−１）にしたがって前記固定のサンプル値を決定するように構成され、ここで、Ｂは、サンプルビット深度である、
請求項２２に記載のデバイス。
【請求項２４】
前記１つまたは複数のプロセッサは、
前記決定されたサーチ領域の一部が、前記現在のブロックとは、境界の異なる側にあると決定すること、ここにおいて、前記境界は、スライス境界、タイル境界、または前記現在のピクチャの境界のうちの少なくとも１つを備える、と、
前記サーチ領域の全体が、前記現在のブロックと、前記境界の同じ側にくるように前記決定されたサーチ領域をシフトすることと
を行うように構成される、請求項１５に記載のデバイス。
【請求項２５】
前記１つまたは複数のプロセッサは、
波面並列処理（ＷＰＰ）が前記現在のピクチャをコード化するために使用されると決定することと、
ＷＰＰが前記現在のピクチャをコード化するために使用されるとの前記決定に基づいて、前記現在のブロックに対する前記決定されたサーチ領域を制限することと
を行うように構成される、請求項１５に記載のデバイス。
【請求項２６】
前記１つまたは複数のプロセッサは、ＷＰＰが前記現在のピクチャをコード化するために使用されるとの前記決定に基づいて、
前記現在のブロックを含む現在のＣＴＵの左にあり、かつ、それの現在の行にあるコーディングツリー単位（ＣＴＵ）、
前記現在のＣＴＵに対して、左にあるか、斜め左上にあるか、または上にあるＣＴＵ、あるいは
前記現在のＣＴＵに対して、左にあるか、斜め左上にあるか、または上にあるＣＴＵ、および、前記現在の行よりも上の行について、ＷＰＰに関するエントロピーコーディング遅延にしたがい前記現在の行の上の１行につき２つの追加の右側のＣＴＵ
のうちの１つに前記現在のブロックに対する前記決定されたサーチ領域を制限するように構成される、
請求項２５に記載のデバイス。
【請求項２７】
前記ビデオコーダはビデオ復号器を備え、前記１つまたは複数のプロセッサは、
前記ビデオデータの前記現在のブロックを復号するための前記サーチ領域の前記中心点を決定することと、
前記ビデオデータを含む符号化ビデオビットストリームからの、前記サーチ領域内の前記再構築ブロックのうちの１つを識別する前記情報を復号することと、
前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックを再構築することと
を行うように構成される、請求項１５に記載のデバイス。
【請求項２８】
前記ビデオコーダはビデオ符号化器を備え、前記１つまたは複数のプロセッサは、
前記ビデオデータの前記現在のブロックを符号化するための前記サーチ領域の前記中心点を決定することと、
前記ビデオデータを含む符号化ビデオビットストリーム内の、前記サーチ領域内の前記再構築ブロックのうちの１つを識別する前記情報を符号化することと、
前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックを符号化することと
を行うように構成される、請求項１５に記載のデバイス。
【請求項２９】
ビデオデータをコード化するためのデバイスであって、
前記ビデオデータの現在のブロックに対するサーチ領域の中心点を決定するための手段と、
前記中心点と、前記サーチ領域の既定のサイズとに基づいて、前記現在のブロックに対する前記サーチ領域を決定するための手段と、
前記決定されたサーチ領域に基づいて、前記現在のブロックを含む現在のピクチャからの前記ビデオデータの再構築ブロックを記憶するための手段と、
前記サーチ領域内の前記再構築ブロックのうちの１つを識別する情報をコード化するための手段と、
前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックをコード化するための手段と
を備えるデバイス。
【請求項３０】
命令を記憶しているコンピュータ可読記憶媒体であって、前記命令は、実行されると、ビデオコーダの１つまたは複数のプロセッサに、
前記ビデオデータの現在のブロックに対するサーチ領域の中心点を決定することと、
前記中心点と、前記サーチ領域の既定のサイズとに基づいて、前記現在のブロックに対する前記サーチ領域を決定することと、
前記決定されたサーチ領域に基づいて、前記現在のブロックを含む現在のピクチャからの前記ビデオデータの再構築ブロックをメモリに記憶することと、
前記サーチ領域内の前記再構築ブロックのうちの１つを識別する情報をコード化することと、
前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックをコード化することと
を行わせる、コンピュータ可読記憶媒体。
【発明の詳細な説明】
【関連出願】
【０００１】
[0001]本願は、内容全体が参照により本明細書に組み込まれる、２０１４年３月２１日に出願された米国特許仮出願６１／９６８，９９９号の利益を主張する。
【技術分野】
【０００２】
[0002]本開示は、ビデオコーディングに関し、より具体的には、ビデオデータを予測するための技法に関する。
【背景技術】
【０００３】
[0003]デジタルビデオ能力は、デジタルテレビ、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップまたはデスクトップコンピュータ、デジタルカメラ、デジタルレコーディングデバイス、デジタルメディアプレーヤ、ビデオゲーミングデバイス、ビデオゲームコンソール、セルラまたは衛星無線電話、ビデオテレビ会議デバイス、および同様のものを含む、幅広い範囲のデバイスに組み込まれ得る。デジタルビデオデバイスは、デジタルビデオ情報をより効率的に送信、受信、および記憶するために、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ Ｈ.２６３、ＩＴＵ−Ｔ Ｈ.２６４／ＭＰＥＧ−４，Ｐａｒｔ １０，ＡＶＣ（Advanced Video Coding）によって定義されている規格、最近開発された高性能ビデオコーディング（ＨＥＶＣ）規格、およびそのような規格の拡張に記載されている技法のようなビデオ圧縮技法を実装する。
【０００４】
[0004]ビデオ圧縮技法は、ビデオシーケンスに内在する冗長性を低減または除去するために、空間予測および／または時間予測を含む。ブロックベースのビデオコーディングの場合、１つのビデオピクチャまたはスライスは、複数のブロックへと分割され得る。各ブロックは、さらに分割され得る。イントラコード化（Ｉ）ピクチャまたはスライス内のブロックは、同一のピクチャまたはスライス内の隣接ブロックにおける参照サンプルに対して空間予測を使用して符号化される。インターコード化（ＰまたはＢ）ピクチャまたはスライス内のブロックは、同一のピクチャまたはスライス内の隣接ブロックにおける参照サンプルに対して空間予測を使用するか、または他の参照ピクチャ内の参照サンプルに対して時間予測を使用し得る。空間予測または時間予測は、コード化されることとなるブロックについての予測ブロックに帰着する。残差データは、コード化されることとなるオリジナルブロックと予測ブロックとの間のピクセル差分を表す。
【０００５】
[0005]インターコード化ブロックは、予測ブロックを形成する参照サンプルのブロックを指し示す（point to）動きベクトル、およびコード化ブロックと予測ブロックとの間の差分を示す残差データにしたがって符号化される。イントラコード化ブロックは、イントラコード化モードおよび残差データにしたがって符号化される。さらなる圧縮のために、残差データは、ピクセルドメインから変換ドメインに変換され、残差変換係数をもたらし、これは、次に量子化され得る。
【発明の概要】
【０００６】
[0006]本開示は、イントラブロック複写（イントラＢＣ）のためのサーチ領域を決定することに関する例となる技法を説明する。イントラＢＣは、現在のピクチャ内のビデオデータの現在のブロックが、同一のピクチャ内のビデオデータの予測ブロックに基づいて予測されるコーディングモードである。サーチ領域は、現在のピクチャからのビデオデータの、前に再構築されたブロックを含み、ブロックベクトルは、サーチ領域内の予測ブロックを識別する。
【０００７】
[0007]本開示の技法に係るいくつかの例では、ビデオコーダ、例えば、ビデオ符号化器および／またはビデオ復号器は、サーチ領域の中心点を決定し、この中心点と、サーチ領域の既定のサイズ（defined size）および／または形状とに基づいて、現在のブロックに対するサーチ領域を決定する。決定されたサーチ領域の一部が利用不可能な場合、ビデオコーダは、サーチ領域を修正し得る。サーチ領域の修正は、例として、サーチ領域をパッディングすること、シフトすること、または制限することを含み得る。本開示のサーチ領域決定技法は、サーチ領域を定義する際により多くの柔軟性を提供し得、これは、いくつかのケースでは、より広いサーチ領域をサポートし得、より優れたコーディング効率へと繋がり得る。
【０００８】
[0009]一例では、ビデオデータをコード化する方法は、ビデオデータの現在のブロックに対するサーチ領域の中心点を決定することと、この中心点と、サーチ領域の既定のサイズとに基づいて現在のブロックに対するサーチ領域を決定することと、決定されたサーチ領域に基づいて、現在のブロックを含む現在のピクチャからのビデオデータの再構築ブロックをメモリに記憶することとを備える。方法はさらに、サーチ領域内の再構築ブロックのうちの１つを識別する情報をコード化することと、再構築ブロックのうちの識別された１つに基づいて現在のブロックをコード化することとをさらに備える。方法は、ビデオ符号化器またはビデオ復号器によって実行され得る。
【０００９】
[0009]別の例では、デバイスは、ビデオコーダを備え、ビデオコーダは、ビデオデータを記憶するように構成されたメモリと、１つまたは複数のプロセッサとを備える。１つまたは複数のプロセッサは、ビデオデータの現在のブロックに対するサーチ領域の中心点を決定することと、この中心点と、サーチ領域の既定のサイズとに基づいて、現在のブロックに対するサーチ領域を決定することと、決定されたサーチ領域に基づいて、現在のブロックを含む現在のピクチャからのビデオデータの再構築ブロックをメモリに記憶することとを行うように構成される。１つまたは複数のプロセッサはさらに、サーチ領域内の再構築ブロックのうちの１つを識別する情報をコード化することと、再構築ブロックのうちの識別された１つに基づいて現在のブロックをコード化することとを行うように構成される。ビデオコーダは、ビデオ符号化器またはビデオ復号器であり得る。
【００１０】
[0010]別の例では、ビデオデータをコード化するためのデバイスは、ビデオデータの現在のブロックに対するサーチ領域の中心点を決定するための手段と、この中心点と、サーチ領域の既定のサイズとに基づいて、現在のブロックに対するサーチ領域を決定するための手段と、決定されたサーチ領域に基づいて、現在のブロックを含む現在のピクチャからのビデオデータの再構築ブロックを記憶するための手段とを備える。デバイスは、サーチ領域内の再構築ブロックのうちの１つを識別する情報をコード化するための手段と、再構築ブロックのうちの識別された１つに基づいて現在のブロックをコード化するための手段をさらに備える。
【００１１】
[0011]別の例では、コンピュータ可読記憶媒体は命令を記憶しており、これらの命令は、実行されると、ビデオデータの現在のブロックに対するサーチ領域の中心点を決定することと、この中心点と、サーチ領域の既定のサイズとに基づいて、現在のブロックに対するサーチ領域を決定することと、決定されたサーチ領域に基づいて、現在のブロックを含む現在のピクチャからのビデオデータの再構築ブロックをメモリに記憶することとを、ビデオコーダの１つまたは複数のプロセッサに行わせる。命令はさらに、サーチ領域内の再構築ブロックのうちの１つを識別する情報をコード化することと、再構築ブロックのうちの識別された１つに基づいて現在のブロックをコード化することとを１つまたは複数のプロセッサに行わせる。
【００１２】
[0012]本開示の１つまたは複数の態様の詳細は、添付の図面および以下の説明において示される。本開示で説明される技術の他の特徴、目的、および利点は、説明および図面からならびに特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【００１３】
【図１】図１は、本開示の技法を実装し得る例となるビデオ符号化および復号システムを例示するブロック図である。
【図２】図２は、イントラブロック複写（ＢＣ）モードにしたがってビデオデータの現在のブロックをコード化するための例となるサーチ領域を例示する概念図である。
【図３Ａ】図３Ａは、サーチ領域の一部が境界を跨ぐときにイントラＢＣモードのためにサーチ領域をシフトすることを例示する概念図である。
【図３Ｂ】図３Ｂは、サーチ領域の一部が境界を跨ぐときにイントラＢＣモードのためにサーチ領域をシフトすることを例示する概念図である。
【図４】図４は、波面並列処理（ＷＰＰ）が現在のピクチャをコード化するために使用されるときのサーチ領域の制限を例示する概念図である。
【図５】図５は、本開示の技法を実装し得る例となるビデオ符号化器を例示するブロック図である。
【図６】図６は、本開示の技法を実装し得る例となるビデオ復号器を例示するブロック図である。
【図７】図７は、本開示の技法に係る、イントラＢＣモードにしたがってビデオデータの現在のブロックを符号化するためのサーチ領域を決定するための例となる方法を例示するフロー図である。
【図８】図８は、本開示の技法に係る、イントラＢＣモードにしたがってビデオデータの現在のブロックを復号するためのサーチ領域を決定するための例となる方法を例示するフロー図である。
【発明の詳細な説明】
【００１４】
[0021]ビデオシーケンスは一般に、ピクチャのシーケンスとして表される。典型的に、ブロックベースのコーディング技法が、個々のピクチャの各々をコード化するために使用される。すなわち、各ピクチャは複数のブロックへと分割され、ブロックの各々は、個々にコード化される。本開示では、コード化、コーダ、およびコード化すること、という用語は総称的に、（１）符号化、符号化器、および符号化すること、ならびに（２）復号、復号器、および復号すること、のうちのいずれかまたは両方を指すためにそれぞれ使用され得る。
【００１５】
[0022]ビデオデータのブロックをコード化することは一般に、ブロックについての予測値を形成することと、オリジナルブロックと予測値との間の差分である残差値をコード化することとを伴う。具体的に言えば、ビデオデータのオリジナルブロックは、ピクセル値のマトリックスを含み、予測値は、予測ピクセル値のマトリックスを含む。残差値は、オリジナルブロックのピクセル値と予測ピクセル値との間のピクセルごとの差分に対応する。
【００１６】
[0023]ビデオデータのブロックのための予測技法は一般に、イントラ予測またはインター予測に分類される。イントラ予測、すなわち空間予測は、一般に、同一のピクチャ内の隣接ピクセル値からブロックを予測することを伴う。インター予測、すなわち時間予測は、一般に、異なる、前にコード化されたピクチャの、前にコード化されたブロックからブロックを予測することを伴う。
【００１７】
[0024]リモートデスクトップ、リモートゲーミング、ワイヤレスディスプレイ、自動車インフォテインメント、クラウドコンピューティング、等のような多くのアプリケーション用のビデオコンテンツは通常、自然なコンテンツ、テキスト、および人工グラフィックスの組み合わせを含む。テキストおよび人工グラフィックスの領域では、多くの場合、文字、アイコン、シンボル、または同様のものの繰り返しパターンが存在する。結果として、そのような領域内のブロックは、同一のピクチャまたはフレーム内にはあるが、必ずしも典型的にイントラ予測に使用される隣接ピクセル値である必要はないピクセル値に基づいて効率的に予測され得る。
【００１８】
[0025]イントラブロック複写（イントラＢＣ）は、必ずしも現在のブロックに隣接しているわけではない、同一のピクチャ内のビデオデータの予測ブロックから、ビデオデータの現在のブロックを予測するための技法である。イントラＢＣは、ビデオコーダが、例えば、ピクチャのテキストおよび人工グラフィックスの領域について、イントラピクチャコーディング効率を改善することを可能にし得る。イントラＢＣの場合、ビデオデータの予測ブロックは、ビデオデータの現在のブロックと同一のピクチャ内のビデオデータの再構築ブロックである。ビデオデータの予測ブロックは、現在のピクチャ内にあるサーチ領域内にある。現在のブロックに対する、ビデオデータの予測ブロックのロケーションは、二次元ベクトルであり得るブロックベクトルによって識別される。
【００１９】
[0026]本開示の技法に係るいくつかの例では、ビデオコーダ、例えば、ビデオ符号化器および／またはビデオ復号器は、サーチ領域の中心点を決定し、この中心点と、サーチ領域の既定のサイズおよび／または形状とに基づいて現在のブロックに対するサーチ領域を決定する。いくつかの例では、ビデオコーダは、イントラＢＣを使用して前にコード化されたブロックのブロックベクトルに基づいて、現在のブロックに対するサーチ領域の中心点を決定する。サーチ領域のサイズおよび／または形状は、予め定義され、静的であり得るか、あるいは、ブロック、スライス、ピクチャ、シーケンス、または他のレベルで変えられ、シグナリングされ得る。
【００２０】
[0027]決定されたサーチ領域の一部が利用不可能な場合、ビデオコーダは、サーチ領域を修正し得る。サーチ領域の一部は、それが再構築されていない場合、インター予測された場合、またはスライス境界、タイル境界、またはピクチャ境界のような境界を跨ぐ場合、利用不可能であり得る。いくつかの例では、ビデオコーダは、複写されたまたは固定のピクセル値でサーチ領域をパッディングすることでサーチ領域を修正する。既定のサイズおよび形状を有するサーチ領域の一部が境界を跨ぐいくつかの例では、ビデオコーダは、サーチ領域全体が境界の片側にくるように、例えば、サーチ領域のサイズおよび形状を変更することなく、サーチ領域をシフトする。現在のピクチャの複数の行が波面並列処理（ＷＰＰ）を使用して並行して処理されるいくつかの例では、ビデオコーダは、決定されたサーチ領域を、ＷＰＰにしたがって再構築されることとなる領域にそのサーチ領域を制限することで修正する。本開示のサーチ領域決定技法は、サーチ領域を定義する際により多くの柔軟性を提供し得、これは、いくつかのケースでは、より広いサーチ領域をサポートし得、イントラＢＣのためのより優れたコーディング効率へと繋がり得る。本開示のサーチ領域決定技法はまた、より広いサーチ領域がイントラＢＣに使用されるときに発生し得る非効率性を克服し得る。
【００２１】
[0028]ビデオコーディング規格には、ＩＴＵ−Ｔ Ｈ.２６１、ＩＳＯ／ＩＥＣ ＭＰＥＧ−１ Ｖｉｓｕａｌ、ＩＴＵ−Ｔ Ｈ.２６２またはＩＳＯ／ＩＥＣ ＭＰＥＧ−２ Ｖｉｓｕａｌ、ＩＴＵ−Ｔ Ｈ.２６３、ＩＳＯ／ＩＥＣ ＭＰＥＧ−４ Ｖｉｓｕａｌ、およびスケーラブルビデオコーディング（ＳＶＣ）およびマルチビュービデオコーディング（ＭＶＣ）拡張を含むＩＴＵ−Ｔ Ｈ.２６４（ＩＳＯ／ＩＥＣ ＭＰＥＧ−４ ＡＶＣとしても知られている）が含まれる。最近、新しいビデオコーディング規格、すなわち高効率ビデオコーディング（ＨＥＶＣ）、の設計が、ＩＴＵ−Ｔビデオコーディングエキスパートグループ（ＶＣＥＧ）およびＩＳＯ／ＩＥＣモーションピクチャエキスパートグループ（ＭＰＥＧ）からなる、ビデオコーディングに関するジョイントコラボレーションチーム（ＪＣＴ−ＶＣ）によってファイナライズされた。最新のＨＥＶＣドラフト規格、以降ＨＥＶＣ ＷＤと呼ばれる、は、２０１４年３月２１日付けで、http://phenix.int-evry.fr/jct/doc_end_user/documents/15_Geneva/wg11/JCTVC-O1003-v2.zipから入手可能である。最終の規格は、２０１４年１０月のＩＴＵ−Ｔ勧告（Recommendation）Ｈ.２６５と呼ばれ得る。
【００２２】
[0029]ＨＥＶＣのレンジエクステンション（Range Extensions）、すなわちＲＥｘｔ、もまた、ＪＣＴ−ＶＣによって開発されている。ＨＥＶＣレンジエクステンションの最近のワーキングドラフト（ＷＤ）、以降「ＲＥｘｔ ＷＤ６」または単に「ＲＥｘｔ」と呼ばれる、は、２０１４年３月２１日付けで、http://phenix.int-evry.fr/jct/doc_end_user/documents/16_San%20Jose/wg11/JCTVC-P1005-v1.zipから入手可能である。一般に、ＨＥＶＣのレンジエクステンションは、例えば、８ビットを超える高いビット幅、および、例えば、４：４：４および４：２：２のような高いクロマサンプリングフォーマットといった、厳密には基本のＨＥＶＣ規格によってサポートされていないビデオフォーマットをサポートし得る。ＨＥＶＣのレンジエクステンションは、イントラＢＣを含む様々なビデオコーディングプロセスを含む。本開示の技法は、ＨＥＶＣのレンジエクステンションに準じたコーディングに適用可能で有り得、スクリーンコンテンツコーディングにも適用可能で有り得る。しかしながら、本開示の技法が、これらのコンテキストに制限されず、一般に、規格ベースのまたは非規格ベースのビデオコーディングを含むビデオコーディング技法に適用可能であり得ることは理解されるべきである。
【００２３】
[0030]図１は、本開示の技法を実装し得る例となるビデオ符号化および復号システム１０を例示するブロック図である。図１に示されるように、システム１０は、宛先デバイス１４によって後に復号されることとなる符号化ビデオデータを提供するソースデバイス１２を含む。具体的には、ソースデバイス１２は、ビデオデータを、コンピュータ可読媒体１６を介して宛先デバイス１４に提供する。ソースデバイス１２および宛先デバイス１４は、デスクトップコンピュータ、ノートブック（すなわち、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンのような電話ハンドセット、いわゆる「スマート」パッド、テレビ、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲーミングコンソール、ビデオストリーミングデバイス、または同様のものを含む、幅広い範囲の任意のデバイスを備え得る。いくつかのケースでは、ソースデバイス１２および宛先デバイス１４は、ワイヤレス通信の能力があり得る（equipped for）。
【００２４】
[0031]宛先デバイス１４は、復号されることとなる符号化ビデオデータを、コンピュータ可読媒体１６を介して受信し得る。コンピュータ可読媒体１６は、符号化ビデオデータをソースデバイス１２から宛先デバイス１４に動かすことができる任意のタイプの媒体またはデバイスを備え得る。一例では、コンピュータ可読媒体１６は、ソースデバイス１２が、符号化ビデオデータを宛先デバイス１４にリアルタイムで直接送信することを可能にする通信媒体を備え得る。符号化ビデオデータは、ワイヤレス通信プロトコルのような通信規格にしたがって変調され、宛先デバイス１４に送信され得る。通信媒体は、無線周波数（ＲＦ）スペクトルまたは１つまたは複数の物理的な伝送回線のような任意のワイヤレスまたはワイヤード通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、広域ネットワーク、またはインターネットのようなグローバルネットワークといったパケットベースのネットワークの一部を形成し得る。通信媒体は、ルータ、スイッチ、基地局、またはソースデバイス１２から宛先デバイス１４への通信を容易にするのに有益であり得る任意の他の機器を含み得る。
【００２５】
[0032]いくつかの例では、符号化データは、ソースデバイス１２の出力インターフェース２２から記憶デバイス３２に出力され得る。同様に、符号化データは、宛先デバイス１４の入力インターフェース２８によって記憶デバイス３２からアクセスされ得る。記憶デバイス３２は、ハードドライブ、ブルーレイディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュメモリ、揮発性または非揮発性メモリ、あるいは符号化ビデオデータを記憶するための任意の他の適切な（suitable）デジタル記憶媒体のような、任意の様々な分配型のまたはローカルにアクセスされるデータ記憶媒体を含み得る。さらなる例では、記憶デバイス３２は、ソースデバイス１２によって生成（generate）される符号化ビデオを格納し得るファイルサーバまたは別の中間記憶デバイスに対応し得る。
【００２６】
[0033]宛先デバイス１４は、記憶されているビデオデータに、ストリーミングまたはダウンロードを介して記憶デバイス３２からアクセスし得る。ファイルサーバは、符号化ビデオデータを記憶することと、符号化ビデオデータを宛先デバイス１４に送信することとができる任意のタイプのサーバであり得る。例となるファイルサーバには、ウェブサーバ（例えば、ウェブサイト用）、ＦＴＰサーバ、ネットワーク接続記憶（ＮＡＳ）デバイス、またはローカルディスクドライブが含まれる。宛先デバイス１４は、インターネット接続を含む、任意の標準的なデータ接続を通じて符号化ビデオデータにアクセスし得る。これは、ワイヤレスチャネル（例えば、Ｗｉ−Ｆｉ接続）、ワイヤード接続（例えば、ＤＳＬ、ケーブルモデム、等）、または、ファイルサーバ上に記憶されている符号化ビデオデータにアクセスするのに適切な両方の組み合わせを含み得る。記憶デバイスからの符号化ビデオデータの送信は、ストリーミング送信、ダウンロード送信、またはそれらの組み合わせであり得る。
【００２７】
[0034]本開示の技法は、必ずしも、ワイヤレスアプリケーションまたはセッティングに限定されない。本技法は、無線経由テレビブロードキャスト、ケーブルテレビ送信、衛星テレビ送信、動的適応型ストリーミングオーバＨＴＴＰ（ＤＡＳＨ）のようなインターネットストリーミングビデオ送信、データ記憶媒体上に符号化されるデジタルビデオ、データ記憶媒体上に記憶されているデジタルビデオの復号、または他のアプリケーションのような任意の様々なマルチメディアアプリケーションを支持するビデオコーディングに適用され得る。いくつかの例では、システム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスト、および／またはビデオ電話のようなアプリケーションをサポートするために、単方向または双方向のビデオ送信をサポートするように構成され得る。
【００２８】
[0035]図１の例では、ソースデバイス１２は、ビデオソース１８、ビデオ符号化器２０、出力インターフェース２２を含む。宛先デバイス１４は、入力インターフェース２８、ビデオ復号器３０、およびディスプレイデバイス３１を含む。本開示にしたがって、ソースデバイス１２のビデオ符号化器２０および宛先デバイス１４のビデオ復号器３０は、イントラＢＣにしたがってビデオブロックを符号化または復号するためのサーチ領域を決定するための技法を適用するように構成され得る。他の例では、ソースデバイスおよび宛先デバイスは、他の構成要素または配列を含み得る。例えば、ソースデバイス１２は、外部のカメラのような外部のビデオソース１８からビデオデータを受信し得る。同様に、宛先デバイス１４は、統合ディスプレイデバイスを含むのではなく、外部のディスプレイデバイスとインターフェースし得る。
【００２９】
[0036]例示される図１のシステム１０は、一例にすぎない。イントラＢＣにしたがってビデオブロックを符号化および復号するためのサーチ領域を決定するための技法は、任意のデジタルビデオ符号化および／または復号デバイスによって実行され得る。一般に本開示の技法はビデオ符号化または復号デバイスによって実行されるが、この技法は、ビデオコーデックによっても実行され得る。さらに、本開示の技法はまた、ビデオプリプロセッサによっても実行され得る。ソースデバイス１２および宛先デバイス１４は、ソースデバイス１２が宛先デバイス１４への送信用にコード化ビデオデータを生成するそのようなコーディングデバイスの例にすぎない。いくつかの例では、デバイス１２、１４は、デバイス１２、１４の各々がビデオ符号化および復号構成要素を含むように、実質的に対称的な方法で動作し得る。ゆえに、システム１０は、例えば、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、またはビデオ電話のために、ビデオデバイス１２、１４間の単方向または双方向のビデオ送信をサポートし得る。
【００３０】
[0037]ソースデバイス１２のビデオソース１８は、ビデオカメラのようなビデオキャプチャデバイス、前にキャプチャされたビデオを含むビデオアーカイブ、および／またはビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェースを含み得る。さらなる代替例として、ビデオソース１８は、ソースビデオのようなコンピュータグラフィックスベースのデータ、またはライブビデオ、アーカイブされたビデオ、およびコンピュータ生成されたビデオの組み合わせを生成し得る。いくつかのケースでは、ビデオソース１８がビデオカメラである場合、ソースデバイス１２および宛先デバイス１４は、いわゆるカメラ電話またはビデオ電話を形成し得る。しかしながら、上述したように、本開示で説明される技法は、一般に、ビデオコーディングに適用可能であり得、ワイヤレスおよび／またはワイヤードアプリケーションに適用可能であり得る。各々のケースでは、キャプチャされた、事前にキャプチャされた、またはコンピュータ生成されたビデオは、ビデオ符号化器２０によって符号化され得る。次に、符号化ビデオ情報は、コンピュータ可読媒体１６および／または記憶デバイス３２上に出力インターフェース２２によって出力され得る。
【００３１】
[0038]宛先デバイス１４の入力インターフェース２８は、コンピュータ可読媒体１６または記憶デバイス３２から情報を受信する。コンピュータ可読媒体１６または記憶デバイス３２の情報は、ブロックおよび他のコード化単位の特徴および／または処理を説明するシンタックス要素を含む、ビデオ符号化器２０によって定義されるシンタックス情報を含み得、これは、ビデオ復号器３０によっても使用される。ディスプレイデバイス３１は、復号ビデオデータをユーザに表示し、陰極線管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイのような任意の様々なディスプレイデバイスまたは別のタイプのディスプレイデバイスを備え得る。
【００３２】
[0039]ビデオ符号化器２０およびビデオ復号器３０は各々、１つまたは複数のマイクロプロセッサ、デジタルシグナルプロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理回路、ソフトウェア、ハードウェア、ファームウェア、またはそれらの任意の組み合わせのような、任意の様々な適切な符号化器または復号器回路として適宜実装され得る。本技法がソフトウェアで部分的に実装される場合、デバイスは、このソフトウェアのための命令を、適切かつ非一時的なコンピュータ可読媒体に記憶し、これらの命令を、１つまたは複数のプロセッサを使用してハードウェアで実行して、本開示の技法を実行し得る。ビデオ符号化器２０およびビデオ復号器３０の各々は、１つまたは複数の符号化器または復号器に含まれ得、これらはいずれも、複合（combined）ビデオ符号化器／復号器（コーデック）の一部として統合され得る。ビデオ符号化器２０および／またはビデオ復号器３０を含むデバイスは、集積回路、マイクロプロセッサ、および／またはセルラ電話のようなワイヤレス通信デバイスを備え得る。
【００３３】
[0040]図１には示されていないが、いくつかの態様では、ビデオ符号化器２０およびビデオ復号器３０は各々、オーディオ符号化器および復号器と統合され得、共通のデータストリームまたは別個のデータストリームにおいてオーディオおよびビデオの両方の符号化を処理するために、適切な（appropriate）ＭＵＸ−ＤＥＭＵＸユニットまたは他のハードウェアおよびソフトウェアを含み得る。適用可能な場合、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ Ｈ.２２３マルチプレクサプロトコル、またはユーザデータグラムプロトコル（ＵＤＰ）のような他のプロトコルに準拠し得る。
【００３４】
[0041]本開示は一般に、ビデオ復号器３０のような別のデバイスに特定の情報を「シグナリングする」ビデオ符号化器２０を参照し得る。しかしながら、ビデオ符号化器２０が、特定のシンタックス要素をビデオデータの様々な符号化部分と関連付けることで情報をシグナリングし得ることは理解されるべきである。すなわち、ビデオ符号化器２０は、特定のシンタックス要素を、ビデオデータの様々な符号化部分のヘッダに記憶することで、データを「シグナリング」し得る。いくつかのケースでは、そのようなシンタックス要素は、ビデオ復号器３０によって受け取られる（receive）および復号される前に、符号化および記憶（例えば、記憶デバイス３２に記憶）され得る。ゆえに、「シグナリング」という用語は一般に、圧縮ビデオデータを復号するためのシンタックスまたは他のデータの通信が、リアルタイムでまたはほぼリアルタイムで生じる場合であっても、ある長さの時間にわたって生じる場合、例えば、符号化時に媒体にシンタックス要素を記憶する際に生じ得、これは、この媒体に記憶された後はいつでも復号デバイスによって取り出され得る、であっても、そのような通信を指し得る。
【００３５】
[0042]ビデオ符号化器２０およびビデオ復号器３０は、ＨＥＶＣ規格のようなビデオ圧縮規格にしたがって動作し得る。本開示の技法は、任意の特定のコーディング規格に限定されないが、この技法は、ＨＥＶＣ規格に、特に、ＲＥｘｔ拡張またはスクリーンコンテンツコーディングのようなＨＥＶＣ規格の拡張に関連性があり得る。ＨＥＶＣ規格化の取り組みは、ＨＥＶＣテストモデル（ＨＭ）と呼ばれる、ビデオコーディングデバイスのモデルに基づく。
【００３６】
[0043]一般に、ＨＭのワーキングモデルは、ビデオピクチャが、ルーマサンプルおよびクロマサンプル両方を含むコーディングツリー単位（ＣＴＵ）のシーケンスに分割され得ることを説明する。ビットストリーム内のシンタックスデータは、ピクセル数の観点でＣＴＵが持ち得る最大サイズ、例えば、６４×６４、である最大コーディング単位（ＬＣＵ）サイズを定義し得る。ＣＴＵのサイズは、ＨＥＶＣメインプロファイルでは１６×１６〜６４×６４の範囲であり得る（技術的には、８×８のＣＴＵサイズがサポート得るが）。１つのビデオピクチャは、１つまたは複数のスライスへと分割され得、これらは各々、多数の連続したＣＴＵを含み得る。ＣＴＵの各々は、ルーマサンプルからなるＣＴＢと、クロマサンプルからなる２つの対応するＣＴＢと、それらＣＴＢのサンプルをコード化するために使用されるシンタックス構造とを備え得る。モノクロマピクチャ、または、３つの別個の色平面を有するピクチャでは、ＣＴＵは、単一のＣＴＢと、そのＣＴＢのサンプルをコード化するために使用されるシンタックス構造とを備え得る。
【００３７】
[0044]各ＣＴＵは、四分木にしたがってコーディング単位（ＣＵ）へと分割され得る。一般に、四分木データ構造は、１つのＣＵにつき１つのノードを含み、ここで、根ノード（root node）は、ＣＴＢに対応する。１つのＣＵが４つのサブＣＵへと分割される場合、このＣＵに対応するノードは、各々がサブＣＵのうちの１つに対応する４つの葉ノード（leaf node）を含む。ＣＵは、ルーマサンプルからなるコーディングブロックと、ルーマサンプルアレイ、Ｃｂサンプルアレイ、およびＣｒサンプルアレイを有するピクチャのクロマサンプルからなる２つの対応するコーディングブロックと、それらコーディングブロックのサンプルをコード化するために使用されるシンタックス構造とを備え得る。モノクロマピクチャ、または、３つの別個の色平面を有するピクチャでは、ＣＵは、単一のコーディングブロックと、そのコーディングブロックのサンプルをコード化するために使用されるシンタックス構造とを備え得る。コーディングブロックは、ＣＴＢのサンプルからなるＮｘＮのブロックである。各ＣＵは、１つのモードで、例えば、イントラ予測、インター予測、またはイントラＢＣのうちの１つで、コード化される。
【００３８】
[0045]四分木データ構造の各ノードは、対応するＣＵにシンタックスデータを提供し得る。例えば、四分木内のノードは、このノードに対応するＣＵが複数のサブＣＵへと分割されるかどうかを示す分割フラグ（split flag）を含み得る。ＣＵについてのシンタックス要素は、再帰的に定義され得、ＣＵが複数のサブＣＵに分割されるかどうかに依存し得る。ＣＵがこれ以上分割されない場合、これは、葉ＣＵ（leaf-CU）と呼ばれる。本開示では、葉ＣＵの４つのサブＣＵは、オリジナルの葉ＣＵの明示的な分割がない場合であっても、葉ＣＵと呼ばれるだろう。例えば、１６×１６のサイズのＣＵがこれ以上分割されない場合、この１６×１６のＣＵは一度も分割されなかったが、４つの８×８のサブＣＵも葉ＣＵと呼ばれるだろう。
【００３９】
[0046]一般に、ＣＵは、ＣＵがサイズ区別を有さない点を除き、Ｈ.２６４規格のマクロブロックと同様の目的を有する。例えば、ＣＵは、４つの子ノード（サブＣＵとも呼ばれる）へと分割され得、次に、各子ノードが親ノードになり、別の４つの子ノードに分割され得る。四分木の葉ノードとも呼ばれる、最終の分割されていない子ノードは、葉ＣＵとも呼ばれるコーディングノードを備える。コード化ビットストリームに関連付けられたシンタックスデータは、最大ＣＵ深度と呼ばれる、ＣＴＢが分割され得る最大回数を定義し得、コーディングノードの最小サイズも定義し得る。したがって、ビットストリームは、最小コーディング単位（ＳＣＵ）も定義し得る。本開示は、ＨＥＶＣのコンテキストにおいて、ＣＴＵ、ＣＴＢ、ＣＵ、コーディングブロック、予測単位（ＰＵ）、または変換単位（ＴＵ）のいずれかを指すか、または他の規格（例えば、Ｈ.２６４／ＡＶＣにおけるマクロブロックおよびそのサブブロック）のコンテキストにおいて同様のデータ構造を指すために「ブロック」、「ビデオブロック」、「ビデオデータのブロック」という用語または同様の用語を使用する。
【００４０】
[0047]ＣＵは、コーディングノードと、このコーディングノードに関連付けられたＴＵおよびＰＵとを含む。ＣＵのサイズは、コーディングノードのサイズに対応し、形状は正方形でなければならない。ＣＵのサイズは、８×８のピクセルから、最大で６４×６４のピクセル以上であるＣＴＢのサイズまでの範囲であり得る。各ＣＵは、１つまたは複数のＰＵおよび１つまたは複数のＴＵを含み得る。各ＣＵは、１つのモードで、例えば、イントラ予測、インター予測、またはイントラＢＣのうちの１つでコード化される。
【００４１】
[0048]一般に、ＰＵは、対応するＣＵの全体または一部に対応する空間エリアを表し、このＰＵについての予測サンプルを取り出すためのデータを含み得る。さらに、ＰＵは、予測に関連するデータを含む。例えば、ＣＵがイントラモード符号化されるとき、１つまたは複数のＰＵについてのデータは、残差四分木（ＲＱＴ）に含まれ得、これは、このＰＵに対応するＴＵについてのイントラ予測モードを説明するデータを含み得る。別の例として、ＣＵがインターモード符号化されるとき、１つまたは複数のＰＵは、このＰＵに関する１つまたは複数の動きベクトルを定義するデータを含み得る。別の例として、ＣＵが、イントラＢＣにしたがって符号化されるとき、１つまたは複数のＰＵは、このＰＵに関する１つまたは複数のブロックベクトルを定義するデータを含み得る。
【００４２】
[0049]予測ブロックは、同一の予測が適用されるサンプルからなる長方形（すなわち、正方形または非正方形）のブロックであり得る。ＣＵのＰＵは、ルーマサンプルからなる予測ブロックと、ピクチャのクロマサンプルからなる２つの対応する予測ブロックと、それら予測ブロックサンプルを予測するために使用されるシンタックス構造とを備え得る。モノクロマピクチャ、または、３つの別個の色平面を有するピクチャでは、ＰＵは、単一の予測ブロックと、予測ブロックサンプルを予測するために使用されるシンタックス構造とを備え得る。２つのＰＵが１つのＣＵに存在するとき、それらは、半分のサイズの長方形であり得るか、または、サイズがＣＵの１／４または３／４という２つの長方形サイズであり得る。
【００４３】
[0050]ＴＵは、例えば、離散コサイン変換（ＤＣＴ）、整数変換、ウェーブレット変換、または概念的に類似した変換のような変換の残差ビデオデータへの適用に続いて、変換ドメインに係数を含み得る。残差データは、コード化されていないピクチャのピクセルと、ＰＵに対応する予測値との間のピクセル差分に対応し得る。ビデオ符号化器２０は、ＣＵについての残差データを含むＴＵを形成し、次に、これらのＴＵを変換して、ＣＵについての変換係数を生成（produce）し得る。変換ブロックは、同一の変換が適用されるサンプルからなる長方形のブロックであり得る。ＣＵの変換単位（ＴＵ）は、ルーマサンプルからなる変換ブロックと、クロマサンプルからなる２つの対応する変換ブロックと、これら変換ブロックサンプルを変換するために使用されるシンタックス構造とを備え得る。モノクロマピクチャ、または、３つの別個の色平面を有するピクチャでは、ＴＵは、単一の変換ブロックと、変換ブロックサンプルを変換するために使用されるシンタックス構造とを備え得る。
【００４４】
[0051]変換に続いて、ビデオ符号化器２０は、変換係数の量子化を実行し得る。量子化は一般に、変換係数を表現するのに使用されるデータ量をできる限り低減するためにその係数が量子化されるプロセスを指し、これは、さらなる圧縮を提供する。量子化プロセスは、これらの係数のうちのいくつかまたはすべてに関連付けられたビット深度を低減し得る。例えば、ｎビット値は、量子化中にｍビット値へと端数が切り捨てられ得、ここで、ｎはｍよりも大きい。
【００４５】
[0052]ビデオ符号化器２０は、変換係数をスキャンし得、量子化された変換係数を含む二次元マトリックスから一次元ベクトルを生成する。スキャンは、より高いエネルギ（したがって、より低い周波数）の係数を、アレイの前方に置き、より低いエネルギ（したがって、より高い周波数）の係数をアレイの後方に置くように設計され得る。いくつかの例では、ビデオ符号化器２０は、エントロピー符号化されることができる直列ベクトルを生成するために、予め定義されたスキャン順序を利用して、量子化された変換係数をスキャンし得る。別の例では、ビデオ符号化器２０は、適応スキャンを実行し得る。
【００４６】
[0053]量子化された変換係数をスキャンして、一次元ベクトルを形成した後、ビデオ符号化器２０は、例えば、コンテキスト適応可変長コーディング（ＣＡＶＬＣ）、コンテキスト適応二進演算コーディング（ＣＡＢＡＣ）、シンタックスベースのコンテキスト適応二進演算コーディング（ＳＢＡＣ）、確率間隔区分化エントロピー（ＰＩＰＥ）コーディング、または別のエントロピー符号化方法にしたがって、その一次元のベクトルをエントロピー符号化し得る。ビデオ符号化器２０はまた、ビデオデータを復号する際にビデオ復号器３０が使用する符号化ビデオデータに関連付けられたシンタックス要素をエントロピー符号化し得る。
【００４７】
[0054]加えて、ビデオ符号化器２０は、例えば、残差データを逆量子化および逆変換することならびに残差データを予測データと組み合わせることで、予測ピクチャを再構築し得る。このように、ビデオ符号化器２０は、ビデオ復号器３０によって実行される再構築プロセスをシミュレートすることができる。したがって、ビデオ符号化器２０およびビデオ復号器３０の両方は、イントラピクチャ、インターピクチャ、またはイントラＢＣ予測での使用ため、実質的に同一の再構築ビデオデータ、例えば、ピクチャまたはピクチャからのブロックへのアクセスを有するだろう。
【００４８】
[0055]ビデオ符号化器２０は、符号化ビデオデータ、ビデオデータの特定のブロックをどのように復号するかをビデオ復号器に知らせるシンタックス要素、またはそれらのグループ化に加えて、符号化ビデオビットストリームを含み得る。ビデオ符号化器２０は、例えば、それが参照するビデオ構造のタイプ（例えば、シーケンス、ピクチャ、スライス、ブロック）、および、その値が変化し得る頻度に依存して、様々なシンタックス構造内にシンタックス要素を含め得る。例えば、ビデオ符号化器２０は、ビデオパラメータセット（ＶＰＳ）、シーケンスパラメータセット（ＳＰＳ）、またはピクチャパラメータセット（ＰＰＳ）のようなパラメータセット内にシンタックス要素を含め得る。他の例では、ビデオ符号化器２０は、ＳＥＩメッセージおよびスライスヘッダ内にシンタックス要素を含め得る。
【００４９】
[0056]一般に、ビデオ復号器３０は、ビデオ符号化器によって実行される符号化プロセスの逆である復号プロセスを実行し得る。例えば、ビデオ復号器３０は、量子化されたビデオデータをエントロピー符号化するためにビデオ符号化器によって使用されるエントロピー符号化技法の逆を使用してエントロピー復号を実行し得る。ビデオ復号器３０は、ビデオ符号化器２０によって用いられる量子化技法の逆を使用してビデオデータをさらに逆量子化し得、ビデオ符号化器２０によって使用される変換の逆を実行して、量子化された変換係数を生成し得る。次に、ビデオ復号器３０は、結果として得られた残差ブロックを、隣接した参照ビデオデータに（イントラ予測）に、別のピクチャからの予測ブロックに（インター予測）、または同一のピクチャからの予測ブロックに（イントラＢＣ）適用して、最終的な表示用のビデオブロックを生成し得る。ビデオ復号器３０は、ビデオ復号器３０によって受信されるビットストリーム内の符号化ビデオデータとともに、ビデオ符号化器２０によって提供されるシンタックス要素に基づいて、ビデオ符号化器２０によって実行される様々なプロセスの逆を実行するように構成、命令、制御、または指示され得る。
【００５０】
[0057]各ピクチャは、１つのルーマ成分と、１つまたは複数のクロマ成分とを備え得る。したがって、本明細書で説明されるブロックベースの符号化および復号動作は、ルーマまたはクロマピクセル値を含むかそれに関連付けられたブロックに等しく適用可能であり得る。
【００５１】
[0058]図２は、イントラＢＣモードにしたがってビデオデータ４０の現在のブロックをコード化するための例となるサーチ領域４８を例示する概念図である。図２によって例示されるように、現在のブロック４０に対するサーチ領域４８は、現在のブロック４０と同一のピクチャ４２、すなわち、現在のピクチャ４２、内にある。サーチ領域４８は、現在のピクチャ５２内の、予測ブロック４６を含む、ビデオデータの複数の前に再構築されたブロックを含む。ビデオコーダ、例えば、ビデオ符号化器２０および／またはビデオ復号器３０は、イントラＢＣモードにしたがって現在のブロック４０を予測または再構築するために、予測ブロック４６を使用し得る。
【００５２】
[0059]ビデオ符号化器２０は、現在のピクチャ４２内のビデオデータの、前に再構築されたブロックのセットから現在のブロック４０を予測するための予測ブロック４６を選択する。ビデオ符号化器２０は、符号化ビデオビットストリームにも含まれるビデオデータを逆量子化および逆変換し、結果として得られた残差ブロックに、ビデオデータの再構築ブロックを予測するために使用される予測ブロックを加算することで、ビデオデータのブロックを再構築する。ビデオ符号化器２０は、以下でより詳細に説明される様々な方法でピクチャ４２内のサーチ領域４８を定義し得る。ビデオ符号化器２０は、サーチ領域４８内の様々なビデオブロックに基づいて現在のビデオブロック４０を予測およびコード化することの相対的な効率および精度の分析に基づいてサーチ領域４８内の複数のビデオブロックの中から現在のビデオブロック４０を予測するための予測ブロック４６を選択し得る。ビデオコーダ、例えば、ビデオ符号化器２０および／またはビデオ復号器３０は、予測信号がインループフィルタリングに影響されないように、デブロッキングおよびサンプル適応オフセット（ＳＡＯ）フィルタリングのようなインループフィルタリングの前に、サーチ領域４８内の再構築ブロックをバッファまたはメモリに記憶し得る。インループフィルタリングされていない予測ブロックを使用することは、イントラＢＣについてのコーディング効率および予測の精度を増加させ得る。
【００５３】
[0060]ビデオ符号化器２０は、オフセットベクトル、変位ベクトル、または動きベクトルとも呼ばれ得、かつ、現在のビデオブロック４０に対する予測ビデオブロック４６のロケーションまたは変位を表すブロックベクトル５０を決定する。ビデオ符号化器２０は、ブロックベクトル５０を識別または定義する１つまたは複数のシンタックス要素を符号化ビデオビットストリーム内に含め得る。ビデオ復号器３０は、１つまたは複数のシンタックス要素を復号してブロックベクトル５０を決定し、この決定されたベクトルを使用して、現在のビデオブロック４０についての予測ビデオブロック４６を識別し得る。ビデオ符号化器はまた、符号化ビデオビットストリームにおいて、予測ブロック４６と現在のブロック４０との間の残差差分を符号化し得る。ビデオ復号器３０は、予測ブロック４６を識別するための情報とともに、そのビットストリームから残差差分を復号し、その残差を予測ブロックと加算して、現在のブロック４０を再構築し得る。
【００５４】
[0061]いくつかの例では、ブロックベクトル５０の解像度は、整数ピクセルであり得、例えば、整数ピクセル解像度に制約され得る。そのような例では、ビデオ符号化器２０およびビデオ復号器３０は、現在のビデオブロック４０についての予測を決定するために、予測ビデオブロック４６のピクセル値を補間する必要はない。別の例では、ブロックベクトル５０の平行変位成分および垂直変位成分のうちの一方または両方の解像度は、サブピクセルであり得、例えば、部分的なピクセル精度を提供する。
【００５５】
[0062]いくつかの例では、コーディング効率をさらに増加させるために、ビデオ符号化器２０およびビデオ復号器３０は、ブロックベクトル５０を予測し得る。いくつかの例では、ビデオコーダは、各ＣＴＢの初めに、ブロックベクトル予測子を（−ｗ，０）に設定し、ここで、ｗは、ビデオデータの現在のブロックの幅である。ビデオコーダは、イントラＢＣモードでコード化された最後のＣＵのブロックベクトルとなるようにブロックベクトル予測子を更新する。ＣＵがイントラＢＣでコード化されない場合、ブロックベクトル予測子は変化しないままである。ブロックベクトル予測の後、ブロックベクトル差分が、ＨＥＶＣ規格で規定されているような動きベクトル差分コーディング方法を使用してコード化される。
【００５６】
[0063]現在のビデオブロック４０は、ＣＵ、またはＣＵのＰＵ、および、より具体的には、ＣＵまたはＰＵに対応するルーマまたはクロマサンプルのブロックであり得る。いくつかの例では、ビデオコーダ、例えば、ビデオ符号化器２０および／またはビデオ復号器３０は、イントラＢＣにしたがって予測されるＣＵを多数のＰＵへと分割し得る。そのような例では、ビデオコーダは、ＣＵのＰＵの各々について、それぞれの（例えば、異なる）ブロックベクトル５０を決定し得る。例えば、ビデオコーダは、２Ｎ×２ＮのＣＵを、２つの２Ｎ×ＮのＰＵ、２つのＮ×２ＮのＰＵ、または４つのＮ×ＮのＰＵに分割し得る。
【００５７】
[0064]ビデオ符号化器２０およびビデオ復号器３０は、本開示の技法にしたがって、現在のブロック４０に対するサーチ領域４８、例えば、サーチ領域のロケーション、サイズ、および形状を決定する。本開示の技法は、ビデオ符号化器２０に、サーチ領域４８を定義する際により多くの柔軟性を提供し得、これは、特に、ビデオ復号器３０において、実装および処理複雑性の増加を制限しつつ、コーディング効率を増加させ得る。いくつかのケースでは、イントラＢＣのためのサーチ領域が拡大されると、ビデオコーダは、実装および処理複雑性の増加を制限するために、本明細書で説明された制限または他の技法を適用し得る。
【００５８】
[0065]図２に例示されているように、現在のブロック４０は、現在のＣＴＵ４４内にある。例示を簡潔にするために図２には例示されていないが、サーチ領域４８は、現在のＣＴＵ４４の任意の再構築部分を含み得る。サーチ領域４８は、追加的にまたは代替的に、１つまたは複数の隣接再構築ＣＴＵおよび／または１つまたは複数の隣接ＣＴＵの再構築部分を含み得る。
【００５９】
[0066]いくつかの例では、図２に例示されているように、ビデオコーダは、現在のＣＴＵ４４のＷ×Ｈの隣接長方形領域の既定のサイズであり得る、サーチ領域の既定のサイズに基づいてサーチ領域４８を決定する。例えば、ビデオコーダは、サーチ領域４８が、Ｗ×Ｈの長方形領域の再構築部分を含むと決定し得る。図２に例示されているように、現在のＣＴＵ４４の左のＣＴＵ高さ×ＷＬ幅の領域は再構築されているため、ビデオコーダは、その領域をサーチ領域４８内に含める。他方で、現在のＣＴＵ４４の右のＣＴＵ高さ×ＷＲ幅の領域５２は再構築されていないため、ビデオコーダは、その領域５２をサーチ領域４８内に含めない。ビデオコーダはまた、現在のＣＴＵ４４よりも上のＷ×ＨＴの領域内の任意の部分をサーチ領域内に含め得る。
【００６０】
[0067]いくつかの例では、サーチ領域４８のサイズおよび／または形状、例えば、図２に例示されているＷ×Ｈの長方形領域のような、再構築部分がサーチ領域４８である領域のサイズおよび／または形状は、予め定義され、固定であり、ビデオ符号化器２０およびビデオ復号器３０の両方に知られている。他の例では、ビデオ符号化器２０は、領域のサイズおよび／または形状を変え得、ビデオ復号器３０がサーチ領域のサイズおよび／または形状を決定することを可能にする情報をビデオ復号器３０にシグナリングし得る。このような例では、ビデオ符号化器２０は、ブロック単位で、スライス単位で、ピクチャ単位で、またはシーケンス単位で領域のサイズおよび／または形状を変え、このサイズおよび／または形状を、スライスヘッダ、ＰＰＳ、ＶＰＳ、ＳＥＩメッセージ、またはビデオ利用性情報（ＶＵＩ）シンタックス構造といった対応シンタックス構造においてシグナリングし得る。いくつかの例では、サーチ領域４８のサイズおよび／または形状は、ビデオ符号化器２０およびビデオ復号器３０の両方に知られている方法で、ピクチャ４２内の現在のＣＴＵ４４のロケーションに基づいて変わり、ビデオコーダは、このＣＴＵロケーションに基づいてサーチ領域４８のサイズおよび／または形状を決定する。
【００６１】
[0068]任意のケースでは、サイズは、ＣＴＵまたはＬＣＵサイズの観点で、または、ピクセル単位の観点で定義され得る。例えば、Ｗ×Ｈの長方形領域のサイズは、５×ＬＣＵＷｉｄｔｈのように、ＣＴＵまたはＬＣＵ幅の倍数として定義され得、長方形領域の高さは、４×ＬＣＵＨｅｉｇｈｔのように、ＣＴＢまたはＬＣＵ高さの倍数として定義され得る。別の例として、Ｗ×Ｈの長方形領域のサイズは、３２０×２５６ピクセル単位として定義され得る。いくつかの例では、ＣＴＵまたはＬＣＵの高さおよび／または幅の倍数といったサイズは、ビデオ復号器３０に、ビデオ符号化器２０によってシグナリングされ得る。
【００６２】
[0069]図２に例示されているように、Ｗ×Ｈの長方形領域は、中心点５４を含む。いくつかの例では、ビデオコーダ、例えば、ビデオ符号化器２０および／またはビデオ復号器３０は、中心点５４を決定し、この中心点５４と、サーチ領域４８の既定のサイズおよび／または形状とに基づいて現在のブロック４０に対するサーチ領域４８を決定する。図２では、現在のＣＴＵ４４に対して水平に中心が置かれ、現在のＣＴＵ４４を含むＣＴＵの最も下の（bottom）行に及ぶものと例示されているが、そのような例では、サーチ領域は、中心点５４の決定されたロケーションに依存して、両方向に水平に、および／または、現在のＣＴＵ４４を含むＣＴＵの最も下の行よりも上に垂直にずらされ得る。現在のＣＴＵ４４または現在のブロック４０に対して中心点５４のロケーションを変えることは、より正確な予測ブロック４６の識別（identification）を可能にし得、これは、コーディング効率を増加させ得る。
【００６３】
[0070]いくつかの例では、ビデオコーダは、前にコード化されたビデオブロックの、前のブロックベクトルに基づいて中心点５４を決定する。例えば、ビデオコーダは、現在のＣＴＵ４４の第１のブロックベクトルを識別し、第１のブロックベクトルが指し示すロケーションに基づいて中心点５４を決定し得る。現在のＣＴＵ４４の第１のブロックベクトルは、イントラＢＣモードを使用してコード化された現在のＣＴＵ４４の第１のＣＵのブロックベクトルであり得る。
【００６４】
[0071]別の例として、ビデオコーダは、隣接ブロックのブロックベクトルを識別し、隣接ブロックのブロックベクトルが指し示すロケーションに基づいて中心点５４を決定し得る。隣接ブロックは、現在のブロック４０のまたは現在のＣＴＵ４４の空間的または時間的な隣接ブロックであり得る。いくつかの例では、現在のブロック４０に対するサーチ領域４８の中心点５４を決定するためにどの隣接ブロックが使用されるかは固定であり、ビデオ符号化器２０およびビデオ復号器３０の両方に知られている。他の例では、ビデオ符号化器２０およびビデオ復号器３０は、既定のプロセスを使用して候補隣接ブロックのリストを構築し得、ビデオ符号化器２０は、ブロックベクトルが中心点５４を決定するために使用される候補隣接ブロックを、符号化ビデオビットストリームにおいてビデオ復号器にシグナリングし得る。
【００６５】
[0072]いくつかの例では、ビデオ符号化器２０は、中心点５４の現在のピクチャ４２内のロケーションを、符号化ビデオビットストリーム内でビデオ復号器３０にシグナリングし得る。そのような例では、ビデオ符号化器２０は、ブロック単位でまたはスライス単位で中心点５４のロケーションを変え、スライスヘッダのようなシンタックス構造においてロケーションをシグナリングし得る。ビデオコーダは、例えば、インループフィルタリングされていない再構築ビデオブロックを、決定されたサーチ領域４８に基づいてバッファまたは他のメモリ内に記憶する。中心ロケーション５４ならびに／あるいはサーチ領域４８のサイズおよび／または形状がブロック単位でまたはスライス単位で変えられる例では、ビデオコーダは、あるブロックに対するサーチ領域の一部ではなかったため後続のコード化ブロックのサーチ領域に利用可能なままである再構築ビデオブロックを記憶する必要があり得る。
【００６６】
[0073]いくつかのケースでは、例えば、図２に関連して説明された技法にしたがって決定されるサーチ領域の一部がイントラＢＣ予測に利用可能でない可能性がある。例えば、スライス、タイル、または現在のブロックを含むピクチャの境界を跨ぐサーチ領域の一部は、利用不可能であり得る。別の例では、並行して、ピクチャ内のＣＴＵの複数の行をコード化するためにＷＰＰが使用されるとき、ＷＰＰに関するＣＴＵ遅延によって処理されていない上方のＣＴＵ行内のＣＴＵは、利用不可能であり得る。別の例では、再構築されていないサーチ領域の任意の部分、あるいは、強制の（constrained）イントラ予測が有効なときに、インター予測されるサーチ領域の任意の部分は利用不可能である。
【００６７】
[0074]いくつかの例では、サーチ領域の一部が、現在のビデオブロックのイントラＢＣコーディングに利用不可能であるとビデオコーダが決定すると、ビデオコーダは、決定されたサーチ領域を修正するために、本明細書で説明された技法のうちの１つまたは複数のいずれかを適用し得る。いくつかの例では、ビデオコーダは、決定されたサーチ領域を利用可能な領域に制限することで、それを修正する。いくつかの例では、ビデオコーダは、サーチ領域の利用不可能な部分をパッディングすることで、決定されたサーチ領域を修正する。
【００６８】
[0075]ビデオコーダは、例えば、インター参照フレームについてＨＥＶＣ規格で説明されているパッディング技法を使用して、利用不可能な部分をパッディングし得る。いくつかの例では、ビデオコーダは、近接した、例えば、最も近くの、利用可能なサンプルの複写のような、サンプルの水平複写および／または垂直複写によって利用不可能な部分をパッディングし得る。いくつかの例では、ビデオコーダは、例えば、０，１＜＜（Ｂ−１）に準じた固定のサンプル値、例えば、このセットからのサンプルを用いて、利用不可能な部分を充填することで利用不可能な部分をパッディングし得、ここで、Ｂは、サンプルビット幅である。いくつかの例では、ビデオコーダは、現在のブロックに対するサーチ領域をパッディングするために複写および充填を組み合わせて使用し得、例えば、ビデオコーダは、近接サンプルが複写に利用可能できないとき固定値を用いた充填を使用し得る。
【００６９】
[0076]図３Ａおよび３Ｂは、サーチ領域の一部が境界を跨ぐときにイントラＢＣのためにサーチ領域をシフトすることを例示する概念図である。いくつかの例では、サーチ領域の一部は、それが、現在のビデオブロックとは、スライス境界、タイル境界、またはピクチャ境界のような境界の異なる側にあるため、利用不可能であり得る。スライス境界およびタイル境界を跨ぐサーチ領域の一部は、異なるスライスまたはタイルの個別処理および／または並列処理により、あるいは、異なるスライスまたはタイルのためのビデオデータが、異なるネットワーク抽象レイヤユニットで送信され得るため、利用不可能であるとみなされ得、これは、例えば、別のスライスまたはタイルのためのデータが失われ得る尤度を増加させる。
【００７０】
[0077]いくつかの例では、例えば、図２に関連して説明された技法にしたがって決定されたサーチ領域の一部が現在のブロックのとは境界の異なる側にあるとビデオコーダが決定すると、ビデオコーダは、サーチ領域全体が現在のブロックと境界の同じ側にくるようにサーチ領域をシフトし得る。いくつかの例では、ビデオコーダは、サーチ領域のサイズおよび／または形状を変更することなしに、例えば、Ｗ×Ｈの長方形領域のサイズおよび／または形状を変更することなしに、サーチ領域をシフトし得る。一般に、サーチ領域をシフトすることは、ピクチャ内のピクセル値をシフトすることを指しているわけではなく、むしろ、シフト後のサーチ領域の新しいロケーションにしたがって、現在のピクチャの再構築ブロックのバッファに異なるブロックを記憶すること、または、バッファから、記憶されている異なるブロックを取り出すことを含み得る。
【００７１】
[0078]図３Ａの例は、現在のＣＴＵ６４内の現在のビデオブロックに対するサーチ領域６８を例示する。図２のサーチ領域４８と同様に、ビデオコーダは、図２の現在のＣＴＵ４４に関連して例示された方法で現在のＣＴＵ６４に対して中心が置かれるＷ×Ｈの長方形に基づいてサーチ領域６８を決定し得る。しかしながら、図２の現在のＣＴＵ４４に関連して例示された方法でサーチ領域６８の中心を置くことは、サーチ領域６８の一部を、スライス境界、タイル境界、またはピクチャ境界であり得る境界６０上に配置するだろう。
【００７２】
[0079]いくつかの例では、図３Ａで例示されているように、ビデオコーダ、例えば、ビデオ符号化器２０および／またはビデオ復号器３０は、サーチ領域６８全体が境界６０の右側に位置するように、サーチ領域６８を右へとシフトし得る。図３Ａに例示されているように、現在のＣＴＵ６４の右にあるＣＴＵ高さ×（ＷＲ＋ＷＬ）幅の領域７２は再構築されていないため、ビデオコーダは、その領域７２をサーチ領域６８に含めない。ビデオコーダはまた、現在のＣＴＵ６４よりも上のＷ×ＨＴの領域を有する任意の部分をサーチ領域に含め得る。
【００７３】
[0080]図３Ｂの例は、現在のＣＴＵ８４内の現在のビデオブロックに対するサーチ領域８８を例示する。図２のサーチ領域４８と同様に、ビデオコーダは、図２の現在のＣＴＵ４４に関連して例示された方法で現在のＣＴＵ８４に対して中心が置かれるＷ×Ｈの長方形に基づいてサーチ領域８８を決定し得る。しかしながら、図２の現在のＣＴＵ４４に関連して例示された方法でサーチ領域８８の中心を置くことは、サーチ領域８８の一部を、スライス境界、タイル境界、またはピクチャ境界であり得る境界８０上に配置するだろう。そのような例では、図３Ｂで例示されているように、ビデオコーダ、例えば、ビデオ符号化器２０および／またはビデオ復号器３０は、サーチ領域８８全体が境界８０の左側に位置するように、サーチ領域８８を左へとシフトし得る。
【００７４】
[0081]上述したように、並行して、ピクチャ内の複数のＣＴＵの行をコード化するためにＷＰＰが使用されるとき、ＷＰＰに関するＣＴＵ遅延によって処理されていない上方のＣＴＵ行内のＣＴＵは、利用不可能であり得る。一般に、ＷＰＰが有効であるとき、ビデオコーダは、スライスをＣＴＵの複数の行へと分割し、これらの行を、ラグと並行して垂直方向に行単位で処理する。例えば、ビデオコーダは、第１のまたは最も上の行を処理し、遅延の後にのみ、例えば、第１の行において２つのＣＴＵが処理された後に、第２の行の処理を開始し得る。ビデオコーダは、遅延の後にのみ、例えば、第２の行において２つのＣＴＵが処理された後に、第３の行を処理し得る。各行におけるエントロピーコーダのコンテキストモデルは、２つのＣＴＵ処理ラグを用いて先行の行内のものから推測される。ＷＰＰは、例えば、スライス内で、一層細かいレベルの粒度で一種の処理平行性を提供する。ＷＰＰは、多くの場合、タイルよりも優れた圧縮性能を提供し得、タイルを使用することでもたらされるいくつかの視覚アーチファクトを回避し得る。
【００７５】
[0082]図４は、現在のピクチャ９２をコード化するために波面並列処理（ＷＰＰ）が使用されるときの、現在のＣＴＵ９４Ｌ内の現在のビデオブロックに対するサーチ領域９８の制限を例示する概念図である。図４は、行９６Ａ−９６Ｃ（総称して「行９６」とする）に配列されたＣＴＵ９４Ａ−９４Ｌ（総称して「ＣＴＵ９４」とする）を例示する。行９６の各々に例示されているＣＴＵ９４の数はまた、ピクチャ９２のＷＰＰの場合、行９６Ａから行９６Ｃへと垂直に行から行への（from row-to-row）２つのＣＴＵラグを例示する。ＷＰＰが使用されるとき、ラブによりまたは異なる行の異なる処理速度により、予測するのに利用可能な場合もそうでない場合もある、例えば、図２の技法にしたがって長方形領域に基づいて決定される、サーチ領域のエリアが存在し得る。
【００７６】
[0083]いくつかの例では、ビデオコーダ、例えば、ビデオ符号化器２０および／またはビデオ復号器３０は、現在のピクチャ９２をコード化するためにＷＰＰが使用されると決定し、現在のピクチャをコード化するためにＷＰＰが使用されるとの決定に基づいて、現在のＣＴＵ９４Ｌ内の現在のブロックに対するサーチ領域９８を制限し得る。例えば、ビデオコーダは、サーチ領域９８を、現在のブロックを含む現在のＣＴＵ９４Ｌの左にあり、かつ、それの現在の行９６ＣにあるＣＴＵ、すなわちＣＴＵ９４Ｋ、に制限し得る。別の例では、ビデオコーダは、サーチ領域９８を、現在のＣＴＵ９４Ｌに対して、左にあるか、対角上に左上にあるか、または上にあるＣＴＵ、例えば、ＣＴＵ９４Ａ、９４Ｂ、９４Ｇ、９４Ｈ、および９４Ｋに制限し得る。別の例として、図４に例示されるように、ビデオコーダは、サーチ領域９８を、現在のＣＴＵに対して、左にあるか、対角上に左上にあるか、または上にあるＣＴＵ、および、現在の行よりも上の行について、ＷＰＰに関するコーディング遅延にしたがい現在の行よりも上の１行につき２つの追加の右側のＣＴＵ、すなわち、ＣＴＵ９４Ａ−９４Ｋ、に制限し得る。
【００７７】
[0084]本開示の技法に係るいくつかの例では、現在のピクチャ内の任意のブロックのイントラＢＣコーディングのためのサーチ領域は、ピクチャの再構築部分全体であり、これは、実質的に、再構築ピクチャ全体であり得る。サーチ領域がこの方法で拡大されると、ピクチャの再構築ブロックを記憶するのに適したバッファを提供するために追加のメモリが必要とされ得る。イントラＢＣのための再構築ピクチャ全体を記憶するための追加のメモリは、ビデオ符号化器２０、そして特にビデオ復号器３０とぃったビデオコーダにとって重荷となり得る。
【００７８】
[0085]ピクチャまたはフレームバッファはすでに、インター予測に使用されている。イントラＢＣのための追加のフレームバッファを回避するために、ビデオコーダは、中間フレーム（inter frame）に対して１つの参照フレームを記憶するのに使用される１つのバッファを、イントラＢＣ予測に使用される再構築ピクチャを記憶するのに再利用（repurpose）し得る。ビデオコーダは、任意の様々な方法で、このフレームバッファの対立する使用に対処し得る。
【００７９】
[0086]例えば、ビデオコーダは、インター予測も実行されるフレームについてイントラＢＣを無効にし得る。しかしながら、中間フレームに対してイントラＢＣを無効にすることは、性能の観点でいくつかの損失をもたらし得る。別の例では、そのような損失を低減するために、ビデオコーダは、インター予測が実行されないフレームについては、イントラＢＣのためのサーチ領域としてフルフレームを使用し、インター予測が実行されるフレームについては、例えば、図２−４に関連して上述された技法にしたがって決定されるより小さいサーチ領域を使用し得る。他の例では、参照フレームの数が、インター予測が実行される対象のフレームを含むすべてのフレームについて１だけ低減され、ビデオコーダは、インター予測について残りの参照フレームだけを使用し得る。
【００８０】
[0087]図５は、本開示で説明されるイントラＢＣのためのサーチ領域を決定するための技法を使用し得るビデオ符号化器２０の例を例示するブロック図である。ビデオ符号化器２０は、例示を目的としてＨＥＶＣコーディングのコンテキストにおいて、しかしながら他のコーディング規格に関して本開示を制限することなく、説明されるであろう。さらに、ビデオ符号化器２０は、ＨＥＶＣへのレンジエクステンション（ＲＥｘｔ）またはスクリーンコンテンツコーディング（ＳＣＣ）拡張にしたがって技法を実装するように構成され得る。
【００８１】
[0088]ビデオ符号化器２０は、ビデオスライス内のビデオブロックのイントラおよびインターコーディングを実行し得る。イントラコーディングは、所与のビデオピクチャ内のビデオにおける空間冗長性を低減または除去するために、空間予測に依存する。インターコーディングは、ビデオシーケンスの隣接ピクチャ内のビデオにおける時間的な冗長を低減または除去するために、または、他のビューにおけるビデオとの冗長性を低減または除去するために、時間予測またはインタービュー予測に依存する。イントラモード（Ｉモード）は、いくつかの空間ベースの圧縮モードのうちのいずれかを指し得る。単方向予測（Ｐモード）または双予測（Ｂモード）のようなインターモードは、いくつかの時間ベースの圧縮モードのうちのいずれかを指し得る。ビデオ符号化器２０はまた、本明細書で説明されたように、同一のピクチャからのビデオデータの他の再構築ブロックに基づいてビデオデータのブロックを予測するために、イントラＢＣモードへと構成され得る。
【００８２】
[0089]図５の例では、ビデオ符号化器２０は、ビデオデータメモリ１４０、予測処理ユニット１４２、サーチ領域メモリ１６４、フィルタ処理ユニット１６６、参照ピクチャメモリ１６８、加算器１５０、変換処理ユニット１５２、量子化処理ユニット１５４、およびエントロピー符号化ユニット１５６を含み得る。次に、予測処理ユニット１４２は、動き推定ユニット１４４、動き補償ユニット１４６、イントラ予測処理ユニット１４８、およびイントラＢＣ処理ユニット１４９を含む。ビデオブロック再構築のために、ビデオ符号化器２０はまた、逆量子化処理ユニット１５８、逆変換処理ユニット１６０、および加算器１６２を含む。
【００８３】
[0090]様々な例では、ビデオ符号化器２０のユニットに、本開示の技法を実行するタスクが課せられ得る。また、いくつかの例では、本開示の技法は、ビデオ符号化器２０のユニットのうちの１つまたは複数の間で分割され得る。例えば、イントラＢＣ処理ユニット１４９は、本開示の技法を、単独でまたはビデオ符号化器２０の他のユニット、例えば、動き推定ユニット１４４、動き補償ユニット１４６、イントラ予測処理ユニット１４８、サーチ領域メモリ１６４、エントロピー符号化ユニット１５６との組み合わせで実行し得る。
【００８４】
[0091]ビデオデータメモリ１４０は、ビデオ符号化器２０の構成要素によって符号化されることとなるビデオデータを記憶し得る。ビデオデータメモリ１４０に記憶されるビデオデータは、例えば、ビデオソース１８から、取得され得る。サーチ領域メモリ１６４および参照ピクチャメモリ１６８は、ビデオ符号化器２０によってビデオデータを符号化する際に使用するための参照ビデオデータを記憶するバッファの例である（例えば、イントラまたはインター予測コーディングモードとも呼ばれるイントラまたはインターコーディングモード、およびイントラＢＣモードにおいて）。ビデオデータメモリ１４０、サーチ領域メモリ１６４、および参照ピクチャメモリ１６８は、同期ＤＲＡＭ（ＳＤＲＡＭ）、磁気抵抗性ＲＡＭ（ＭＲＡＭ）、抵抗性ＲＡＭ（ＲＲＡＭ（登録商標））を含むダイナミックランダムアクセスメモリ（ＤＲＡＭ）のような任意の様々なメモリデバイスあるいは他のタイプのメモリデバイスによって形成され得る。ビデオデータメモリ１４０、サーチ領域メモリ１６４、および参照ピクチャメモリ１６８は、同一のメモリデバイスまたは別個のメモリデバイスによって提供され得る。様々な例では、ビデオデータメモリ１４０は、ビデオ符号化器２０の他の構成要素とともにオンチップであり得るか、それらの構成要素に対してオフチップであり得る。
【００８５】
[0092]符号化プロセス中、ビデオ符号化器２０は、コード化されることとなるビデオピクチャまたはスライスを受け取る。ピクチャまたはスライスは、複数のビデオブロックへと分割され得る。図５には例示されていないが、ビデオ符号化器２０は、データをビデオブロックへと分割する分割ユニットを含み得る。この分割はまた、ビデオブロック分割に加え、例えば、ＣＴＵおよびＣＵの四分木構造にしたがって、スライス、タイル、または他のより大きな単位へと分割することを含み得る。
【００８６】
[0093]動き推定ユニット１４４および動き補償ユニット１４６は、時間圧縮を提供するためにまたはインタービュー圧縮を提供するために、１つまたは複数の参照ピクチャ内の１つまたは複数のブロックに対して、受け取ったビデオブロックのインター予測コーディングを実行する。イントラ予測処理ユニット１４８は、代替的に、空間圧縮を提供するために、コード化されることとなるブロックと同一のピクチャまたはスライス内の１つまたは複数の隣接ブロックに対して、受け取ったビデオブロックのイントラ予測コーディングを実行し得る。ビデオ符号化器２０は、（例えば、ビデオデータの各ブロックについて適切なコーディングモードを選択するために）複数のコーディングパスを実行し得る。
【００８７】
[0094]予測処理ユニット１４２は、エラー結果に基づいて、例えば、イントラ、インター、またはイントラＢＣのようなコーディングモードのうちの１つを選択し得、結果として得られたコード化ブロックを、残差ブロックデータを生成するために加算器１５０に提供し、サーチ領域内でおよび／または参照ピクチャとして使用するための符号化ブロックを再構築するために加算器１６２に提供し得る。予測処理ユニット１４２はまた、動きベクトル、イントラモードインジケータ、分割情報、ブロックベクトルのようなシンタックス情報、並びに、任意の他のシンタックス情報を、エントロピー符号化ユニット１５６に提供する。
【００８８】
[0095]動き推定ユニット１４４および動き補償ユニット１４６は、高度に統合され得るが、概念上の目的で別個に例示されている。動き推定ユニット１４４によって実行される動き推定は、動きベクトルを精製するプロセスであり、それは、ビデオブロックに関する動きを推定する。動きベクトルは、例えば、現在のピクチャ（または、他のコード化単位）内のコード化されている現在のブロックに対する、参照ピクチャ（または、他のコード化単位）内の予測ブロックに関連した、現在のビデオピクチャ内のビデオブロックのＰＵの変位を示し得る。予測ブロックは、絶対差分値（ＳＡＤ）の和、正方差（ＳＳＤ）の和、または他の差分メトリックによって決定され得るピクセル差分の観点で、コード化されることとなるブロックに厳密に一致することが認められるブロックである。いくつかの例では、ビデオ符号化器２０は、参照ピクチャメモリ１６８に記憶されている参照ピクチャのサブ整数ピクセル位置についての値を算出し得る。例えば、ビデオ符号化器２０は、参照ピクチャの４分の１ピクセル位置、８分の１ピクセル位置、または他の分数ピクセル位置の値を補間し得る。したがって、動き推定ユニット１４４は、フルピクセル位置および分数ピクセル位置に対して動きサーチを実行し、分数ピクセル精度で動きベクトルを出力する。
【００８９】
[0096]動き推定ユニット１４４は、ＰＵの位置を参照ピクチャの予測ブロックの位置と比較することで、インターコード化スライス内のビデオブロックのＰＵに関する動きベクトルを算出する。参照ピクチャは、第１の参照ピクチャリスト（リスト０）または第２の参照ピクチャリスト（リスト１）から選択され得、これらの各々は、参照ピクチャメモリ１６８に記憶されている１つまたは複数の参照ピクチャを識別する。動き推定ユニット１４４は、算出された動きベクトルをエントロピー符号化ユニット１５６および動き補償ユニット１４６に送る。
【００９０】
[0097]動き補償ユニット１４６によって実行される動き補償は、動き推定ユニット１４４によって決定された動きベクトルに基づいて、予測ブロックをフェッチすることまたは生成することを伴い得る。この場合も、動き推定ユニット１４４および動き補償ユニット１４６は、いくつかの例では、機能的に統合され得る。現在のビデオブロックのＰＵに関する動きベクトルを受け取ると、動き補償ユニット１４６は、参照ピクチャリストのうちの１つ内の、動きベクトルが指し示す予測ブロックを位置特定（locate）し得る。加算器１５０は、以下で説明されるように、コード化されている現在のビデオブロックのピクセル値から予測ブロックのピクセル値を差し引くことで残差ビデオブロックを形成し、ピクセル差分値を形成する。一般に、動き推定ユニット１４４は、ルーマ成分に対して動き推定を実行し、動き補償ユニット１４６は、クロマ成分とルーマ成分の両方ついて、このルーマ成分に基づいて算出された動きベクトルを使用する。予測処理ユニット１４２はまた、ビデオスライスのビデオブロックを復号する際にビデオ復号器３０によって使用されるためのビデオブロックおよびビデオスライスに関連付けられたシンタックス要素を生成し得る。
【００９１】
[0098]イントラ予測処理ユニット１４８は、上述したような、動き推定ユニット１４４および動き補償ユニット１４６によって実行されるインター予測への代替として、現在のブロックをイントラ予測し得る。具体的には、イントラ予測処理ユニット１４８は、現在のブロックを符号化するために使用するイントラ予測モードを決定し得る。いくつかの例では、イントラ予測処理ユニット１４８は、例えば、別個の符号化パスの間に、様々なイントラ予測モードを使用して現在のブロックを符号化し、イントラ予測ユニット１４８は、使用する適切なイントラ予測モードを、テストされたモードから選択し得る。
【００９２】
[0099]例えば、イントラ予測処理ユニット１４８は、テストされた様々なイントラ予測モードについてレート歪み分析を使用してレート歪み値を算出し、テストされたモードの中から最良のレート歪み特性を有するイントラ予測モードを選択し得る。レート歪み分析は一般に、符号化ブロックと、この符号化ブロックを生成するために符号化されたオリジナルの符号化されていないブロックとの間の歪み（または、エラー）量に加え、符号化ブロックを生成するために使用されるビットレート（すなわち、ビット数）を決定する。イントラ予測処理ユニット１４８は、様々な符号化ブロックについて歪みおよびレートから比を算出して、そのブロックについてどのイントラ予測モードが最良のレート歪み値を示すかを決定し得る。
【００９３】
[0100]いくつかの例では、イントラＢＣ処理ユニット１４９は、動きベクトル、動き推定ユニット１４４、および動き補償ユニット１４６に関連して上述されたものに類似した方法で、ブロックベクトルを生成し、予測ブロックをフェッチし得るが、それら予測ブロックは、現在のブロックと同一のピクチャまたはフレーム内にあり、より具体的には、現在のピクチャ内のサーチ領域内にある。インターおよびイントラ予測に類似して、イントラＢＣの場合、予測ブロックは、ＳＡＤ、ＳＳＤ、または他の差分メトリックによって決定され得るピクセル差分の観点で、コード化されることとなるブロックに厳密に一致することが認められるブロックであり得、ブロックの識別は、サブ整数ピクセル位置についての値の算出を含み得る。いくつかの例では、ビデオ符号化器２０の予測処理ユニット１４２は、インター予測、イントラ予測、またはイントラＢＣ予測のどれが所与のブロックを予測するために使用されるかを、例えば、ＳＡＤ、ＳＳＤ、または他の差分またはコーディング効率メトリックが反映された各モードの結果に基づいて選択し得る。予測処理ユニット１４２が、インター予測、イントラ予測、またはイントラＢＣ予測を介して現在のビデオブロックについての予測ブロックを生成した後、ビデオ符号化器２０は、例えば、加算器１５０を介して、現在のビデオブロックから予測ブロックを差し引くことで、残差ビデオブロックを形成する。
【００９４】
[0101]残差ブロック内の残差ビデオデータは、１つまたは複数のＴＵに含まれ、変換処理ユニット１５２に適用され得る。変換処理ユニット１５２は、離散コサイン変換（ＤＣＴ）のような変換または概念的に類似する変換を残差ブロックに適用して、残差変換係数値を備えるビデオブロックを生成する。変換処理ユニット１５２は、ＤＣＴに概念的に類似する他の変換を実行し得る。ウェーブレット変換、整数変換、サブ帯域変換、または他のタイプの変換もまた使用され得る。いずれのケースでも、変換処理ユニット１５２は、変換を残差ブロックに適用し、残差変換係数のブロックを生成する。変換は、残差情報をピクセル値ドメインから周波数ドメインのような変換ドメインに変換し得る。
【００９５】
[0102]変換処理ユニット１５２は、結果として得られた変換係数を量子化処理ユニット１５４に送り得る。量子化処理ユニット１５４は、ビットレートをさらに低減するために変換係数を量子化する。量子化プロセスは、いくつかのまたはすべての係数に関連付けられたビット深度を低減し得る。量子化の度合いは、量子化パラメータを調整することで修正され得る。いくつかの例では、次に、量子化処理ユニット１５４は、量子化された変換係数を含むマトリックスのスキャンを実行し得る。代替的に、エントロピー符号化ユニット１５６は、スキャンを実行し得る。
【００９６】
[0103]量子化に続いて、エントロピー符号化ユニット１５６は、量子化された変換係数をエントロピー符号化する。例えば、エントロピー符号化ユニット１５６は、ＣＡＶＬＣ、ＣＡＢＡＣ、ＳＢＡＣ、ＰＩＰＥコーディング、または別のエントロピーコーディング技法を実行し得る。コンテキストベースのエントロピーコーディングのケースでは、コンテキストは、隣接ブロックに基づき得る。エントロピー符号化ユニット１５６によるエントロピーコーディングに続いて、符号化ビットストリームは、別のデバイス（例えば、ビデオ復号器３０）に送信され得るか、または後の送信または取り出し用にアーカイブされ得る。
【００９７】
[0104]逆量子化処理ユニット１５８および逆変換処理ユニット１６０は、ピクセルドメインにおいて残差ブロックを再構築するために、それぞれ逆量子化および逆変換を適用する。加算器１６２は、再構築残差ブロックを予測ブロックに加えて、サーチ領域メモリ１６４および参照ピクチャメモリ１６８の一方または両方への記憶用の再構築ビデオブロックを生成する。再構築ビデオブロックは、動き推定ユニット１４４および動き補償ユニット１４６によって、後続のビデオピクチャ内のブロックをインターコード化するために予測ブロックとして、または、イントラＢＣ処理ユニット１４９によって、現在のピクチャ内の後続のブロックのイントラＢＣコーディングのための予測ブロックとして、使用され得る。
【００９８】
[0105]サーチ領域メモリ１６４は、本明細書で説明された技法のいずれかを使用して、ビデオ符号化器２０、例えば、イントラＢＣ処理ユニット１４９による現在のビデオブロックのイントラＢＣのためのサーチ領域の決定または定義にしたがって再構築ビデオブロックを記憶する。サーチ領域メモリ１６４は、フィルタ処理ユニット１６６によってインループフィルタリングされていない再構築ビデオブロックを記憶し得る。加算器１６２は、サーチ領域メモリ１６４と並行して、フィルタ処理ユニット１６６に再構築ビデオブロックを提供し得る。イントラＢＣ処理ユニット１４９は、イントラＢＣ予測モードにしたがって現在のビデオブロックを予測するために、現在のビデオブロックと同一のピクチャ内の予測ビデオブロックを求めて、サーチ領域メモリ１６４内の再構築ビデオブロックをサーチし得る。いくつかの例では、上述したように、実質的にピクチャまたはフレーム全体の再構築ビデオデータをバッファするのに十分なメモリが、参照ピクチャメモリ１６８からサーチ領域メモリ１６４に割り振られ得る。
【００９９】
[0106]フィルタ処理ユニット１６６は、再構築ビデオブロックに対してインループフィルタリングを実行し得る。インループフィルタリングは、再構築ビデオからブロッキネスアーチファクト（blockiness artifact）を取り除くためにブロック境界をフィルタリングするデブロックフィルタリング（deblock filtering）を含み得る。インループフィルタリングはまた、再構築ビデオを改善するためにＳＡＯフィルタリングを含み得る。再構築ブロックは、そのいくつかがインループフィルタリングされ得、参照ピクチャとして参照ピクチャメモリ１６８に記憶され得る。参照ピクチャは、後続のビデオフレームまたはピクチャ内のブロックをインター予測するために、予測ブロックとして動き推定ユニット１４４および動き補償ユニット１４４によって使用され得る再構築ブロックを含み得る。図７では、フィルタ処理ユニット１６６はサーチ領域メモリ１６４から情報を受け取ると例示されているが、フィルタ処理ユニット１６６は、必ずしも、サーチ領域メモリから再構築ビデオブロックを受け取るのではなく、サーチ領域メモリとは異なるブロックまたは他のデータ、例えば、サーチ領域メモリ１６４に一度も含まれたことがないブロックを受け取り得る。
【０１００】
[0107]このように、ビデオ符号化器２０は、本開示で説明された１つまたは複数の例となる技法を実装するように構成され得る。例えば、ビデオ符号化器２０、例えば、イントラＢＣ処理ユニット１４９は、ビデオデータの現在のブロックをイントラブロック複写コード化するためのサーチ領域の中心点を決定することと、この中心点と、サーチ領域の既定のサイズとに基づいて現在のブロックに対するサーチ領域を決定することと、決定されたサーチ領域に基づいて、現在のブロックを含む現在のピクチャからのビデオデータの再構築ブロックをメモリに、例えば、サーチ領域メモリ１６４内に、記憶することとを行うように構成され得る。ビデオ符号化器２０は、ビデオデータを含む符号化ビデオビットストリームにおいて、サーチ領域内の再構築ブロックのうちの１つを識別する情報を符号化することと、イントラブロック複写にしたがって再構築ブロックのうちの識別された１つに基づいて現在のブロックを符号化することとを行うように構成され得る。
【０１０１】
[0108]図６は、本開示で説明された技法を実装し得るビデオ復号器３０の例を例示するブロック図である。この場合も、ビデオ復号器３０は、例示を目的としてＨＥＶＣコーディングのコンテキストにおいて、しかしながら他のコーディング規格に関して本開示を制限することなく、説明されるであろう。さらに、ビデオ復号器３０は、レンジエクステンション（ＲＥｘｔ）またはスクリーンコンテンツコーディング（ＳＣＣ）拡張にしたがって技法を実装するように構成され得る。
【０１０２】
[0109]図６の例では、ビデオ復号器３０は、ビデオデータメモリ１６９、エントロピー復号ユニット１７０、予測処理ユニット１７１、逆量子化処理ユニット１７６、逆変換処理ユニット１７８、加算器１８０、サーチ領域メモリ１８２、フィルタ処理ユニット１８４、および参照ピクチャメモリ１８６を含み得る。予測処理ユニット１７１は、動き補償ユニット１７２、イントラ予測ユニット１７４、およびイントラＢＣ処理ユニット１７５を含む。ビデオ復号器３０は、いくつかの例では、一般に、図５のビデオ符号化器２０に関連して説明された符号化パスとは逆の復号パスを実行し得る。
【０１０３】
[0110]様々な例では、ビデオ復号器３０のユニットに、本開示の技法を実行するタスクが課せられ得る。また、いくつかの例では、本開示の技法は、ビデオ復号器３０のユニットのうちの１つまたは複数の間で分割され得る。例えば、イントラＢＣ処理ユニット１７５は、本開示の技法を、単独でまたはビデオ復号器３０の他のユニット、例えば、動き補償ユニット１７２、イントラ予測処理ユニット１７４、サーチ領域メモリ１８２、およびエントロピー復号ユニット１７０のようなとの組み合わせで実行し得る。
【０１０４】
[0111]ビデオデータメモリ１６９は、符号化ビデオビットストリームのような、ビデオ復号器３０の構成要素によって復号されることとなるビデオデータを記憶し得る。ビデオデータメモリ１６９に記憶されるビデオデータは、例えば、記憶デバイス３２から、カメラのようなローカルビデオソースから、ビデオデータのワイヤードまたはワイヤレスネットワーク通信を介して、あるいは、物理的なデータ記憶媒体にアクセスすることで取得され得る。ビデオデータメモリ１６９は、符号化ビデオビットストリームからの符号化ビデオデータを記憶するコード化ピクチャバッファ（ＣＰＢ）を形成し得る。
【０１０５】
[0112]サーチ領域メモリ１８２および参照ピクチャメモリ１８６は、ビデオ復号器３０によってビデオデータを復号する際に使用するための参照ビデオデータを記憶する復号ピクチャバッファ（ＤＰＢ）の例である（例えば、イントラコーディング、インターコーディング、またはイントラＢＣモードにおいて）。ビデオデータメモリ１６９、サーチ領域メモリ１８２、および参照ピクチャメモリ１８６は、同期ＤＲＡＭ（ＳＤＲＡＭ）、磁気抵抗性ＲＡＭ（ＭＲＡＭ）、抵抗性ＲＡＭ（ＲＲＡＭ）を含むダイナミックランダムアクセスメモリ（ＤＲＡＭ）のような任意の様々なメモリデバイスあるいは他のタイプのメモリデバイスによって形成され得る。ビデオデータメモリ１６９、サーチ領域メモリ１８２、および参照ピクチャメモリ１８６は、同一のメモリデバイスまたは別個のメモリデバイスによって提供され得る。様々な例では、ビデオデータメモリ１６９は、ビデオ復号器３０の他の構成要素とともにオンチップであり得るか、それらの構成要素に対してオフチップであり得る。
【０１０６】
[0113]復号プロセス中、ビデオ復号器３０は、ビデオ符号化器２０からの、符号化ビデオスライスのビデオブロックを表す符号化ビデオビットストリームと関連シンタックス要素とを受け取る。ビデオ復号器３０のエントロピー復号ユニット１７０は、このビットストリームをエントロピー復号して、量子化された係数、動きベクトル、ブロックベクトル、またはイントラ予測モードインジケータ、および、本開示の技法に関連して本明細書で説明された任意の他のシンタックス要素を生成し得る。エントロピー復号ユニット１７０は、シンタックス要素を予測処理ユニット１７１に送出する。ビデオ復号器３０は、ビデオスライスレベルで、ビデオブロックレベルで、あるいはピクチャまたはシーケンスレベルのようなより高いレベルでシンタックス要素を受け取り得る。
【０１０７】
[0114]ビデオスライスが、イントラコード化（Ｉ）スライスとしてコード化されると、イントラ予測処理ユニット１７４は、シグナリングされたイントラ予測モードと、現在のピクチャの、前に復号されたブロックからのデータとに基づいて、現在のビデオスライスのビデオブロックについての予測データを生成し得る。ビデオピクチャがインターコード化（すなわち、ＢまたはＰ）スライスとしてコード化されると、動き補償ユニット１７２は、動きベクトルと、エントロピー復号ユニット１７０から受け取った他のシンタックス要素とに基づいて、現在のビデオスライスのビデオブロックについての予測ブロックを生成する。予測ブロックは、参照ピクチャリストのうちの１つ内の参照ピクチャのうちの１つから生成され得る。ビデオ復号器３０は、参照ピクチャメモリ１８６内に記憶されている参照ピクチャに基づいて、デフォルト構築技法を使用して、参照ピクチャリスト、リスト０およびリスト１を構築し得る。
【０１０８】
[0115]動き補償ユニット１７２は、動きベクトルおよび他のシンタックス要素を解析することで、現在のビデオスライスのビデオブロックについての予測情報を決定し、この予測情報を使用して、復号されている現在のビデオブロックについての予測ブロックを生成する。例えば、動き補償ユニット１７２は、ビデオスライスのビデオブロックをコード化するために使用される予測モード（例えば、イントラまたはインター予測）を決定するための、受け取ったシンタックス要素、インター予測スライスタイプ（例えば、ＢスライスまたはＰスライス）、スライスに関する参照ピクチャリストのうちの１つまたは複数についての構築情報、スライスの各インター符号化ビデオブロックに関する動きベクトル、スライスの各インターコード化ビデオブロックについてのインター予測ステータス、あるいは現在のビデオスライス内のビデオブロックを復号するための他の情報のうちのいくつかを使用する。
【０１０９】
[0116]動き補償ユニット１７２はまた、補間フィルタに基づいて補間を実行し得る。動き補償ユニット１７２は、ビデオブロックの符号化中にビデオ符号化器２０によって使用されるような補間フィルタを使用して、参照ブロックのサブ整数ピクセルについての補間値を算出し得る。このケースでは、動き補償ユニット１７２は、受け取ったシンタックス要素から、ビデオ符号化器２０によって使用された補間フィルタを決定し、この補間フィルタを使用して、予測ブロックを生成し得る。
【０１１０】
[0117]ビデオブロックが、本明細書で説明されたイントラＢＣモードにしたがってコード化されると、予測処理ユニット１７１のイントラＢＣ処理ユニット１７５は、ブロックベクトルと、エントロピー復号ユニット１７０から受け取った他のシンタックス要素とに基づいて、現在のビデオブロックについての予測ブロックを生成する。予測ブロックは、現在のビデオブロックと同一のピクチャ内のサーチ領域内にあり、サーチ領域メモリ１８２から取り出され得る。イントラＢＣ処理ユニット１７５は、本明細書で説明された技法のいずれかを使用してサーチ領域を決定し得る。
【０１１１】
[0118]逆量子化処理ユニット１７６は、ビットストリームにおいて提供され、かつ、エントロピー復号ユニット１７０によって復号された、量子化された変換係数を逆量子化、すなわち、反量子化（de quantize）する。逆量子化プロセスは、ビデオスライス内のビデオブロックごとにビデオ復号器３０によって算出された量子化パラメータＱＰＹを使用して、量子化の度合いと、同じく、適用されるべき逆量子化の度合いとを決定することを含み得る。
【０１１２】
[0119]逆変換処理ユニット１７８は、ピクセルドメインにおいて残差ブロックを生成するために、例えば、逆ＤＣＴ、逆整数変換のような逆変換または概念的に類似する逆変換プロセスを変換係数に適用する。ビデオ復号器３０は、逆変換処理ユニット１７８からの残差ブロックに、予測処理ユニット１７１によって生成された対応する予測ブロックを加算することで、復号ビデオブロックを形成する。加算器１８０は、この加算演算（summation operation）を実行する１つまたは複数の構成要素を表す。
【０１１３】
[0120]サーチ領域メモリ１８２は、本明細書で説明された技法を使用したイントラＢＣ処理ユニット１７５による現在のビデオブロックのイントラＢＣコーディングのためのサーチ領域の決定にしたがって再構築ビデオブロックを記憶する。例えば、イントラＢＣ処理ユニット１７５は、ビデオデータの現在のブロックに対するサーチ領域の中心点を決定し、その中心点と、サーチ領域の既定のサイズとに基づいて、現在のブロックに対するサーチ領域を決定し得る。サーチ領域メモリ１８２は、決定されたサーチ領域に基づいて、現在のブロックを含む現在のピクチャからのビデオデータの再構築ブロックを記憶し得る。サーチ領域メモリ１８２は、フィルタ処理ユニット１８４によってインループフィルタリングされていない再構築ビデオブロックを記憶し得る。加算器１８０は、サーチ領域メモリ１８２と並行して、フィルタ処理ユニット１８４に再構築ビデオブロックを提供し得る。イントラＢＣ処理ユニット１７５は、サーチ領域メモリ１８２から、現在のビデオブロックについての予測ビデオブロックを取り出す。
【０１１４】
[0121]フィルタ処理ユニット１８４は、再構築ビデオブロックに対してインループフィルタリングを実行し得る。インループフィルタリングは、再構築ビデオからブロッキネスアーチファクトを取り除くためにブロック境界をフィルタリングするデブロックフィルタリングを含み得る。インループフィルタリングはまた、再構築ビデオを改善するためにＳＡＯフィルタリングを含み得る。再構築ブロックは、そのいくつかがインループフィルタリングされ得、参照ピクチャとして参照ピクチャメモリ１８６に記憶され得る。参照ピクチャは、後続のビデオフレームまたはピクチャ内のブロックをインター予測するために、予測ブロックとして動き補償ユニット１７２によって使用され得る再構築ブロックを含み得る。参照ピクチャメモリ１８６はまた、図１のディスプレイデバイス３１のようなディスプレイデバイス上での後の表示用に、復号ビデオを記憶する。
【０１１５】
[0122]このように、ビデオ復号器３０は、本開示で説明された１つまたは複数の例となる技法を実装するように構成され得る。例えば、ビデオ復号器３０、例えば、イントラＢＣ処理ユニット１７５は、ビデオデータの現在のブロックをイントラブロック複写コード化するためのサーチ領域の中心点を決定することと、この中心点と、サーチ領域の既定のサイズとに基づいて現在のブロックに対するサーチ領域を決定することと、決定されたサーチ領域に基づいて、現在のブロックを含む現在のピクチャからのビデオデータの再構築ブロックをメモリに、例えば、サーチ領域メモリ１８２内に、記憶することとを行うように構成され得る。ビデオ復号器３０はまた、ビデオデータを含む符号化ビデオビットストリームからの、サーチ領域内の再構築ブロックのうちの１つを識別する情報を復号することと、イントラブロック複写にしたがって再構築ブロックのうちの識別された１つに基づいて現在のブロックを再構築することとを行うように構成され得る。
【０１１６】
[0123]図７は、本開示の技法に係る、イントラＢＣモードにしたがってビデオデータの現在のブロックを符号化するためのサーチ領域を決定するための例となる方法を例示するフロー図である。図７の例となる技法は、イントラＢＣ処理ユニット１４９を含むビデオ符号化器２０のようなビデオ符号化器によって実装され得る。
【０１１７】
[0124]図７の例によれば、ビデオ符号化器２０は、イントラＢＣを使用して、現在のビデオブロックを符号化するためのサーチ領域の中心点５４を決定する（２００）。例えば、ビデオ符号化器２０は、イントラＢＣを使用してコード化された現在のＣＴＵの第１のブロックのような、イントラＢＣを使用して前にコード化されたビデオブロックのブロックベクトル５０、あるいは、現在のＣＴＵまたは現在のビデオブロックの空間的または時間的に隣接したブロックのブロックベクトル５０に基づいて中心点を決定し得る。ビデオ符号化器２０は、中心点と、サーチ領域の既定のサイズおよび／または形状とに基づいて、現在のブロックに対するサーチ領域を決定する（２０２）。いくつかの例では、ビデオ符号化器２０は、所望のサーチ領域を決定し、所望のサーチ領域の中心点を決定し、ロケーションまたは隣接ブロックといった、ビデオ復号器３０が中心点を決定し得る情報を、符号化ビデオビットストリームにおいてシグナリンし得る。
【０１１８】
[0125]図７の例によれば、ビデオ符号化器２０は、決定されたサーチ領域の一部が、イントラＢＣにしたがった現在のビデオブロックの予測に使用されるのに利用不可能かどうかを決定する（２０４）。サーチ領域の一部が利用不可能な場合、ビデオ符号化器２０は、例えば、本明細書で説明された技法のいずれかにしたがってサーチ領域を制限、パッディング、またはシフトすることで、サーチ領域を修正し得る（２０６）。本明細書で説明されたように、制限することは、サーチ領域を、ＷＰＰにしたがって処理されたことが確実なブロックに制限することを含み得、シフトすることは、サーチ領域のサイズまたは形状の変更なしに境界の片側にシフトすることを含み得、パッディングすることは、複写された値または固定の値でパッディングすることを含み得る。サーチ領域が修正されようがされまいが、ビデオ符号化器２０は、決定された（そして、いくつかのケースでは、修正された）サーチ領域に基づいて、再構築ブロックを、例えば、サーチ領域メモリ１６４内に記憶する（２０８）。
【０１１９】
[0126]ビデオ符号化器２０は、このサーチ領域から予測ブロック４６を選択する（２１０）。ビデオ符号化器２０は、予測ブロックに関するブロックベクトル５０を決定し、現在のおよび予測ブロックに基づいて残差ブロックを決定する。ビデオ符号化器２０は、ビデオ復号器３０がブロックベクトルおよび残差ブロックを決定し得る、符号化ビデオビットストリーム内のシンタックス情報と、ビデオ復号器が、サーチ領域、例えば、中心点のロケーション、そのブロックベクトルから中心点が決定され得る隣接ブロック、あるいはサーチ領域のサイズおよび／または形状を決定し得るシンタックス情報のような、本開示の技法に関連する任意の他のシンタックス情報とを符号化する（２１２）。
【０１２０】
[0127]図８は、本開示の技法に係る、イントラＢＣモードにしたがってビデオデータの現在のブロックを復号するためのサーチ領域を決定するための例となる方法を例示するフロー図である。図８の例となる技法は、イントラＢＣ処理ユニット１７５を含むビデオ復号器３０のようなビデオ復号器によって実装され得る。
【０１２１】
[0128]図８の例によれば、ビデオ復号器３０は、イントラＢＣを使用して、現在のビデオブロックを符号化するためのサーチ領域の中心点５４を決定する（２２０）。例えば、ビデオ復号器３０は、イントラＢＣを使用してコード化された現在のＣＴＵの第１のブロックのような、イントラＢＣを使用して前にコード化されたビデオブロックのブロックベクトル５０、あるいは、現在のＣＴＵまたは現在のビデオブロックの空間的または時間的に隣接したブロックのブロックベクトル５０に基づいて中心点を決定し得る。ビデオ復号器３０は、中心点と、サーチ領域の既定のサイズおよび／または形状とに基づいて、現在のブロックに対するサーチ領域を決定する（２２２）。いくつかの例では、ビデオ復号器３０は、符号化ビデオビットストリームからの、例えば、座標またはベクトルのような、中心点を特定するシンタックス情報、および／または、ＬＣＵサイズのような、例えば、ピクセル値または既知の値の倍数をシグナリングする、サーチ領域のサイズまたは形状のようなシンタックス情報を復号し得る。
【０１２２】
[0129]図８の例によれば、ビデオ復号器３０は、決定されたサーチ領域の一部が、イントラＢＣにしたがった現在のビデオブロックの予測に使用されるのに利用不可能であるかどうかを決定する（２２４）。サーチ領域の一部が利用不可能な場合、ビデオ復号器３０は、例えば、本明細書で説明された技法のいずれかにしたがってサーチ領域を制限、パッディング、またはシフトすることで、サーチ領域を修正し得る（２２６）。サーチ領域が修正されようがされまいが、ビデオ復号器３０は、決定された（そして、いくつかのケースでは、修正された）サーチ領域に基づいて、再構築ブロックを、例えば、サーチ領域メモリ１８２内に記憶する（２２８）。
【０１２３】
[0130]ビデオ復号器３０は、例えば、現在のビデオブロックに関するブロックベクトル５０を識別する、符号化ビデオビットストリーム内のシンタックス情報に基づいて、サーチ領域から予測ブロック４６を識別する（２３０）。ブロックベクトルは、予測ブロックの左上の、右上の、左下の、右下の、または中央のピクセルといった、現在のブロックに対する、現在のピクチャにおける予測ブロックのロケーションを指し示す。ビデオ復号器３０はまた、符号化ビデオビットストリームに基づいて残差ブロックを決定し、予測ブロックと残差ブロックとを加算して、現在のビデオブロックを再構築する（２３２）。
【０１２４】
[0131]本開示の特定の態様は、例示の目的で、ＨＥＶＣ規格とその拡張に関連して説明されている。しかしながら、本開示で説明された技法は、他の規格または未だ開発されていない所有権のあるビデオコーディングプロセスを含む他のビデオコーディング処理にも有益であり得る。
【０１２５】
[0132]ビデオコーダは、本開示で説明されるように、ビデオ符号化器またはビデオ復号器を指し得る。同様に、ビデオコーディングユニットは、ビデオ符号化器またはビデオ復号器を指し得る。同様に、ビデオコーディングは、適宜、ビデオ符号化またはビデオ復号を指し得る。
【０１２６】
[0133]この例に依存して、本明細書で説明された任意の技法のある特定の動作（act）またはイベントが、異なる順序で実行され得ること、追加、融合、またはまとめて省略され得ること（例えば、説明されたすべての動作またはイベントが、本技法の実施に必要とは限らない）は認識されるべきである。さらに、特定の例では、動作またはイベントは、例えば、マルチスレッド処理、割り込み処理、または複数のプロセッサを通じて、順次にというよりはむしろ同時に行われ得る。
【０１２７】
[0134]１つまたは複数の例では、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはこれらの任意の組み合わせで実装され得る。ソフトウェアで実装される場合、これら機能は、１つまたは複数の命令またはコードとして、コンピュータ可読媒体に記憶されるか、または、コンピュータ可読媒体を通して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、データ記憶媒体のような有形の媒体に対応するコンピュータ可読記憶媒体、または、例えば、通信プロトコルにしたがって、ある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む通信媒体を含み得る。
【０１２８】
[0135]このように、コンピュータ可読媒体は一般に、（１）非一時的である有形のコンピュータ可読記憶媒体、または（２）信号または搬送波のような通信媒体に対応し得る。データ記憶媒体は、本開示で説明された技法を実装するための命令、コード、および／またはデータ構造を取り出すために、１つまたは複数のコンピュータまたは１つまたは複数のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品は、コンピュータ可読媒体を含み得る。
【０１２９】
[0136]限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（登録商標）、ＣＤ−ＲＯＭまたは他の光学ディスク記憶装置、磁気ディスク記憶装置または他の磁気記憶デバイス、フラッシュメモリ、あるいは、命令またはデータ構造の形式で所望のプログラムコードを記憶するために使用され得、かつ、コンピュータによってアクセスされ得る任意の他の媒体を備え得る。また、任意の接続は厳密にはコンピュータ可読媒体と称され得る。例えば、命令が、ウェブサイト、サーバ、または他のリモートソースから、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、電波、およびマイクロ波のようなワイヤレス技術を使用して送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、電波、およびマイクロ波のようなワイヤレス技術は、媒体の定義に含まれる。
【０１３０】
[0137]しかしながら、コンピュータ可読記憶媒体およびデータ記憶媒体が、接続、搬送波、信号、または他の一時的な媒体を含まず、代わりとして非一時的な有形の記憶媒体を対象としていることは理解されるべきである。本明細書で使用される場合、ディスク（disk）およびディスク（disc）は、コンパクトディスク（ＣＤ）、レーザーディスク（登録商標）、光ディスク、デジタル多用途ディスク（ＤＶＤ）、フロッピー（登録商標）ディスク、およびブルーレイディスクを含み、ここで、ディスク（disk）は通常磁気的にデータを再生し、ディスク（disc）は、レーザーを用いて光学的にデータを再生する。上記の組み合わせもまた、コンピュータ可読媒体の範囲内に含まれるべきである。
【０１３１】
[0138]命令は、１つまたは複数のデジタルシグナルプロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、あるいは他の等価的な集積回路またはディスクリートな論理回路のような１つまたは複数のプロセッサによって実行され得る。したがって、本明細書で使用される場合、「プロセッサ」という用語は、前述の構造または本明細書で説明された技法の実装に適切な任意の他の構造のいずれかを指し得る。加えて、いくつかの態様では、本明細書で説明された機能は、符号化および復号用に構成された専用のハードウェアおよび／またはソフトウェアモジュール内で提供され得るか、または、組み合わせられたコーデックに組み込まれ得る。また、本技法は、１つまたは複数の回路または論理要素において十分に実装され得る。
【０１３２】
[0139]本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）、またはＩＣのセット（例えば、チップセット）を含む、幅広い種類のデバイスまたは装置において実装され得る。開示された技法を実行するように構成されたデバイスの機能的な態様を強調するために、様々な構成要素、モジュール、またはユニットが本開示では説明されているが、必ずしも、異なるハードウェアユニットによる実現を必要とするわけではない。むしろ、上述したように、様々なユニットは、コーデックハードウェアユニットへと組み合わせられるか、あるいは、適切なソフトウェアおよび／またはファームウェアと併せて、上述された１つまたは複数のプロセッサを含む相互動作するハードウェアユニットの一群によって提供され得る。
【０１３３】
[0140]様々な例が説明されている。これらの例および他の例は、以下の特許請求の範囲の範囲内である。
【図１】
2017513361.tif 000003
【図２】
2017513361.tif 000004
【図３Ａ】
2017513361.tif 000005
【図３Ｂ】
2017513361.tif 000006
【図４】
2017513361.tif 000007
【図５】
2017513361.tif 000008
【図６】
2017513361.tif 000009
【図７】
2017513361.tif 000010
【図８】
2017513361.tif 000011
【手続補正書】
【提出日】平成28年11月17日(2016.11.17)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ビデオデータを復号するための方法であって、
イントラブロック複写を使用して前記ビデオデータの現在のブロックを復号するためのサーチ領域の中心点を決定することと、
前記中心点と、長方形領域の既定のサイズとに基づいて、前記現在のブロックに対する前記サーチ領域を決定すること、ここにおいて、前記サーチ領域の前記中心点は、前記長方形領域の前記中心点である、と、
前記決定されたサーチ領域に基づいて、前記現在のブロックを含む現在のピクチャからの前記ビデオデータの再構築ブロックをメモリに記憶することと、
前記サーチ領域内の前記再構築ブロックのうちの１つを識別する情報を復号することと、
前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックを再構築することと
を備える方法。
【請求項２】
前記サーチ領域の前記中心点を決定することは、
イントラブロック複写を使用して復号された現在のコーディングツリー単位（ＣＴＵ）の第１のブロックのブロックベクトルを識別すること、ここにおいて、前記現在のＣＴＵは、少なくとも前記現在のブロックおよび前記第１のブロックを含む、と、
前記識別されたブロックベクトルに基づいて、前記サーチ領域の前記中心点を決定することと
を備える、請求項１に記載の方法。
【請求項３】
前記サーチ領域の前記中心点を決定することは、
前記現在のブロックまたは前記現在のブロックを含む現在のコーディングツリー単位（ＣＴＵ）のうちの少なくとも１つ、の隣接ブロックおよび前記ビデオデータの少なくとも１つの他のブロックのブロックベクトルを識別することと、
前記識別されたブロックベクトルに基づいて、前記サーチ領域の前記中心点を決定することと
を備える、請求項１に記載の方法。
【請求項４】
前記現在のピクチャ内の前記中心点のロケーションは、前記ビデオデータを含む符号化ビデオビットストリームにおいてシグナリングされる、
請求項１に記載の方法。
【請求項５】
前記長方形領域の前記サイズは、予め定義されるか、または前記ビデオデータを含む符号化ビデオビットストリームにおいてシグナリングされるかのうちの１つである、
請求項１に記載の方法。
【請求項６】
前記長方形領域の前記サイズは、幅および高さによって定義され、前記幅は、コーディングツリー単位（ＣＴＵ）幅の倍数として定義され、前記高さは、ＣＴＵ高さの倍数として定義される、
請求項５に記載の方法。
【請求項７】
前記長方形領域の前記サイズは、ピクセル単位の観点で幅および高さによって定義される、
請求項５に記載の方法。
【請求項８】
前記現在のブロックをコード化するのに利用不可能な前記決定されたサーチ領域の一部を識別することと、
前記サーチ領域の前記利用不可能な部分に近似のサンプル値を複写すること、または
固定のサンプル値を使用すること
のうちの少なくとも１つによって、サンプル値を用いて前記サーチ領域の前記利用不可能な部分をパッディングすることと
をさらに備える、請求項１に記載の方法。
【請求項９】
固定のサンプル値を使用することは、０，１，＜＜（Ｂ−１）にしたがって前記固定のサンプル値を決定することを備え、ここで、Ｂは、サンプルビット深度である、
請求項８に記載の方法。
【請求項１０】
前記決定されたサーチ領域の一部が、前記現在のブロックとは、境界の異なる側にあると決定すること、ここにおいて、前記境界は、スライス境界、タイル境界、または前記現在のピクチャの境界のうちの少なくとも１つを備える、と、
前記サーチ領域の全体が、前記現在のブロックと、前記境界の同じ側にくるように前記決定されたサーチ領域をシフトすることと
をさらに備える、請求項１に記載の方法。
【請求項１１】
波面並列処理（ＷＰＰ）が前記現在のピクチャを復号するために使用されると決定することと、
ＷＰＰが前記現在のピクチャを復号するために使用されるとの前記決定に基づいて、前記現在のブロックに対する前記決定されたサーチ領域を制限することと
をさらに備える、請求項１に記載の方法。
【請求項１２】
ＷＰＰが前記現在のピクチャをコード化するために使用されるとの前記決定に基づいて、前記現在のブロックに対する前記決定されたサーチ領域を制限することは、
前記現在のブロックを含む現在のＣＴＵの左にあり、かつ、それの現在の行にあるコーディングツリー単位（ＣＴＵ）、
前記現在のＣＴＵに対して、左にあるか、斜め左上にあるか、または上にあるＣＴＵ、あるいは
前記現在のＣＴＵに対して、左にあるか、斜め左上にあるか、または上にあるＣＴＵ、および、前記現在の行よりも上の行について、ＷＰＰに関するエントロピーコーディング遅延にしたがい前記現在の行の上の１行につき２つの追加の右側のＣＴＵ
のうちの１つに前記決定されたサーチ領域を制限することを備える、請求項１１に記載の方法。
【請求項１３】
ビデオ復号器を備えるデバイスであって、前記ビデオコーダは、
ビデオデータを記憶するように構成されたメモリと、
１つまたは複数のプロセッサと、
を備え、前記１つまたは複数のプロセッサは、
イントラブロック複写を使用して前記ビデオデータの現在のブロックを復号するためのサーチ領域の中心点を決定することと、
前記中心点と、長方形領域の既定のサイズとに基づいて、前記現在のブロックに対する前記サーチ領域を決定すること、ここにおいて、前記サーチ領域の前記中心点は、前記長方形領域の前記中心点である、と、
前記決定されたサーチ領域に基づいて、前記現在のブロックを含む現在のピクチャからの前記ビデオデータの再構築ブロックを前記メモリに記憶することと、
前記サーチ領域内の前記再構築ブロックのうちの１つを識別する情報を復号することと、
前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックを再構築することと
を行うように構成される、デバイス。
【請求項１４】
前記１つまたは複数のプロセッサは、
イントラブロック複写を使用して復号された現在のコーディングツリー単位（ＣＴＵ）の第１のブロックのブロックベクトルを識別すること、ここにおいて、前記現在のＣＴＵは、少なくとも前記現在のブロックおよび前記第１のブロックを含む、と、
前記識別されたブロックベクトルに基づいて、前記サーチ領域の前記中心点を決定することと
を行うように構成される、請求項１３に記載のデバイス。
【請求項１５】
前記１つまたは複数のプロセッサは、
前記現在のブロックまたは前記現在のブロックを含む現在のコーディングツリー単位（ＣＴＵ）のうちの少なくとも１つ、の隣接ブロックおよび前記ビデオデータの少なくとも１つの他のブロックのブロックベクトルを識別することと、
前記識別されたブロックベクトルに基づいて、前記サーチ領域の前記中心点を決定することと
を行うように構成される、請求項１３に記載のデバイス。
【請求項１６】
前記現在のピクチャ内の前記中心点のロケーションは、前記ビデオデータを含む符号化ビデオビットストリームにおいてシグナリングされる、
請求項１３に記載のデバイス。
【請求項１７】
前記長方形領域の前記サイズは、予め定義されるか、または前記ビデオデータを含む符号化ビデオビットストリームにおいてシグナリングされるかのうちの１つである、
請求項１３に記載のデバイス。
【請求項１８】
前記長方形領域の前記サイズは、幅および高さによって定義され、前記幅は、コーディングツリー単位（ＣＴＵ）幅の倍数として定義され、前記高さは、ＣＴＵ高さの倍数として定義される、
請求項１７に記載のデバイス。
【請求項１９】
前記長方形領域の前記サイズは、ピクセル単位の観点で幅および高さによって定義される、
請求項１７に記載のデバイス。
【請求項２０】
前記１つまたは複数のプロセッサは、
前記現在のブロックをコード化するのに利用不可能な前記決定されたサーチ領域の一部を識別することと、
前記サーチ領域の前記利用不可能な部分に近似のサンプル値を複写すること、または
固定のサンプル値を使用すること
のうちの少なくとも１つによって、サンプル値を用いて前記サーチ領域の前記利用不可能な部分をパッディングすることと
を行うように構成される、請求項１３に記載のデバイス。
【請求項２１】
前記１つまたは複数のプロセッサは、０，１，＜＜（Ｂ−１）にしたがって前記固定のサンプル値を決定するように構成され、ここで、Ｂは、サンプルビット深度である、
請求項２０に記載のデバイス。
【請求項２２】
前記１つまたは複数のプロセッサは、
前記決定されたサーチ領域の一部が、前記現在のブロックとは、境界の異なる側にあると決定すること、ここにおいて、前記境界は、スライス境界、タイル境界、または前記現在のピクチャの境界のうちの少なくとも１つを備える、と、
前記サーチ領域の全体が、前記現在のブロックと、前記境界の同じ側にくるように前記決定されたサーチ領域をシフトすることと
を行うように構成される、請求項１３に記載のデバイス。
【請求項２３】
前記１つまたは複数のプロセッサは、
波面並列処理（ＷＰＰ）が前記現在のピクチャを復号するために使用されると決定することと、
ＷＰＰが前記現在のピクチャを復号するために使用されるとの前記決定に基づいて、前記現在のブロックに対する前記決定されたサーチ領域を制限することと
を行うように構成される、請求項１３に記載のデバイス。
【請求項２４】
前記１つまたは複数のプロセッサは、ＷＰＰが前記現在のピクチャをコード化するために使用されるとの前記決定に基づいて、
前記現在のブロックを含む現在のＣＴＵの左にあり、かつ、それの現在の行にあるコーディングツリー単位（ＣＴＵ）、
前記現在のＣＴＵに対して、左にあるか、斜め左上にあるか、または上にあるＣＴＵ、あるいは
前記現在のＣＴＵに対して、左にあるか、斜め左上にあるか、または上にあるＣＴＵ、および、前記現在の行よりも上の行について、ＷＰＰに関するエントロピーコーディング遅延にしたがい前記現在の行の上の１行につき２つの追加の右側のＣＴＵ
のうちの１つに前記現在のブロックに対する前記決定されたサーチ領域を制限するように構成される、
請求項２３に記載のデバイス。
【請求項２５】
ビデオデータを復号するためのデバイスであって、
イントラブロック複写を使用して前記ビデオデータの現在のブロックを復号するためのサーチ領域の中心点を決定するための手段と、
前記中心点と、長方形領域の既定のサイズとに基づいて、前記現在のブロックに対する前記サーチ領域を決定するための手段、ここにおいて、前記サーチ領域の前記中心点は、前記長方形領域の前記中心点である、と、
前記決定されたサーチ領域に基づいて、前記現在のブロックを含む現在のピクチャからの前記ビデオデータの再構築ブロックを記憶するための手段と、
前記サーチ領域内の前記再構築ブロックのうちの１つを識別する情報を復号するための手段と、
前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックを再構築するための手段と
を備えるデバイス。
【請求項２６】
命令を記憶しているコンピュータ可読記憶媒体であって、前記命令は、実行されると、ビデオ復号器の１つまたは複数のプロセッサに、
イントラブロック複写を使用して前記ビデオデータの現在のブロックを復号するためのサーチ領域の中心点を決定することと、
前記中心点と、長方形領域の既定のサイズとに基づいて、前記現在のブロックに対する前記サーチ領域を決定すること、ここにおいて、前記サーチ領域の前記中心点は、前記長方形領域の前記中心点である、と、
前記決定されたサーチ領域に基づいて、前記現在のブロックを含む現在のピクチャからの前記ビデオデータの再構築ブロックをメモリに記憶することと、
前記サーチ領域内の前記再構築ブロックのうちの１つを識別する情報を復号することと、
前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックを再構築することと
を行わせる、コンピュータ可読記憶媒体。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０１３３
【補正方法】変更
【補正の内容】
【０１３３】
[0140]様々な例が説明されている。これらの例および他の例は、以下の特許請求の範囲の範囲内である。
以下に本願発明の当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
ビデオデータをコード化するための方法であって、
前記ビデオデータの現在のブロックに対するサーチ領域の中心点を決定することと、
前記中心点と、前記サーチ領域の既定のサイズとに基づいて、前記現在のブロックに対する前記サーチ領域を決定することと、
前記決定されたサーチ領域に基づいて、前記現在のブロックを含む現在のピクチャからの前記ビデオデータの再構築ブロックをメモリに記憶することと、
前記サーチ領域内の前記再構築ブロックのうちの１つを識別する情報をコード化することと、
前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックをコード化することと
を備える方法。
［Ｃ２］
前記サーチ領域の前記中心点を決定することは、
前記現在のブロックを含む現在のコーディングツリー単位（ＣＴＵ）のブロックベクトルを識別することと、
前記識別されたブロックベクトルに基づいて、前記サーチ領域の前記中心点を決定することと
を備える、Ｃ１に記載の方法。
［Ｃ３］
前記サーチ領域の前記中心点を決定することは、
前記現在のブロックまたは前記現在のブロックを含む現在のコーディングツリー単位（ＣＴＵ）のうちの少なくとも１つ、の隣接ブロックのブロックベクトルを識別することと、
前記識別されたブロックベクトルに基づいて、前記サーチ領域の前記中心点を決定することと
を備える、Ｃ１に記載の方法。
［Ｃ４］
前記現在のピクチャ内の前記中心点のロケーションは、前記ビデオデータを含む符号化ビデオビットストリームにおいてシグナリングされる、
Ｃ１に記載の方法。
［Ｃ５］
前記サーチ領域の前記サイズは、予め定義されるか、または前記ビデオデータを含む符号化ビデオビットストリームにおいてシグナリングされるかのうちの１つである、
Ｃ１に記載の方法。
［Ｃ６］
前記サーチ領域の前記サイズは、幅および高さによって定義され、前記幅は、コーディングツリー単位（ＣＴＵ）幅の倍数として定義され、前記高さは、ＣＴＵ高さの倍数として定義される、
Ｃ５に記載の方法。
［Ｃ７］
前記サーチ領域の前記サイズは、ピクセル単位の観点で幅および高さによって定義される、
Ｃ５に記載の方法。
［Ｃ８］
前記現在のブロックをコード化するのに利用不可能な前記決定されたサーチ領域の一部を識別することと、
前記サーチ領域の前記利用不可能な部分に近似のサンプル値を複写すること、または
固定のサンプル値を使用すること
のうちの少なくとも１つによって、サンプル値を用いて前記サーチ領域の前記利用不可能な部分をパッディングすることと
をさらに備える、Ｃ１に記載の方法。
［Ｃ９］
固定のサンプル値を使用することは、０，１，＜＜（Ｂ−１）にしたがって前記固定のサンプル値を決定することを備え、ここで、Ｂは、サンプルビット深度である、
Ｃ８に記載の方法。
［Ｃ１０］
前記決定されたサーチ領域の一部が、前記現在のブロックとは、境界の異なる側にあると決定すること、ここにおいて、前記境界は、スライス境界、タイル境界、または前記現在のピクチャの境界のうちの少なくとも１つを備える、と、
前記サーチ領域の全体が、前記現在のブロックと、前記境界の同じ側にくるように前記決定されたサーチ領域をシフトすることと
をさらに備える、Ｃ１に記載の方法。
［Ｃ１１］
波面並列処理（ＷＰＰ）が前記現在のピクチャをコード化するために使用されると決定することと、
ＷＰＰが前記現在のピクチャをコード化するために使用されるとの前記決定に基づいて、前記現在のブロックに対する前記決定されたサーチ領域を制限することと
をさらに備える、Ｃ１に記載の方法。
［Ｃ１２］
ＷＰＰが前記現在のピクチャをコード化するために使用されるとの前記決定に基づいて、前記現在のブロックに対する前記決定されたサーチ領域を制限することは、
前記現在のブロックを含む現在のＣＴＵの左にあり、かつ、それの現在の行にあるコーディングツリー単位（ＣＴＵ）、
前記現在のＣＴＵに対して、左にあるか、斜め左上にあるか、または上にあるＣＴＵ、あるいは
前記現在のＣＴＵに対して、左にあるか、斜め左上にあるか、または上にあるＣＴＵ、および、前記現在の行よりも上の行について、ＷＰＰに関するエントロピーコーディング遅延にしたがい前記現在の行の上の１行につき２つの追加の右側のＣＴＵ
のうちの１つに前記決定されたサーチ領域を制限することを備える、Ｃ１１に記載の方法。
［Ｃ１３］
前記サーチ領域の前記中心点を決定することは、前記ビデオデータの前記現在のブロックを復号するための前記サーチ領域の前記中心点を決定することを備え、
前記サーチ領域内の前記再構築ブロックのうちの１つを識別する情報をコード化することは、前記ビデオデータを含む符号化ビデオビットストリームからの前記情報を復号することを備え、
前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックをコード化することは、前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックを再構築することを備える、
Ｃ１に記載の方法。
［Ｃ１４］
前記サーチ領域の前記中心点を決定することは、前記ビデオデータの前記現在のブロックを符号化するための前記サーチ領域の前記中心点を決定することを備え、
前記サーチ領域内の前記再構築ブロックのうちの１つを識別する情報をコード化することは、前記ビデオデータを含む符号化ビデオビットストリーム内の前記情報を符号化することを備え、
前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックをコード化することは、前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックを符号化することを備える、
Ｃ１に記載の方法。
［Ｃ１５］
ビデオコーダを備えるデバイスであって、前記ビデオコーダは、
ビデオデータを記憶するように構成されたメモリと、
１つまたは複数のプロセッサと、
を備え、前記１つまたは複数のプロセッサは、
前記ビデオデータの現在のブロックに対するサーチ領域の中心点を決定することと、
前記中心点と、前記サーチ領域の既定のサイズとに基づいて、前記現在のブロックに対する前記サーチ領域を決定することと、
前記決定されたサーチ領域に基づいて、前記現在のブロックを含む現在のピクチャからの前記ビデオデータの再構築ブロックを前記メモリに記憶することと、
前記サーチ領域内の前記再構築ブロックのうちの１つを識別する情報をコード化することと、
前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックをコード化することと
を行うように構成される、デバイス。
［Ｃ１６］
前記１つまたは複数のプロセッサは、
前記現在のブロックを含む現在のコーディングツリー単位（ＣＴＵ）のブロックベクトルを識別することと、
前記識別されたブロックベクトルに基づいて、前記サーチ領域の前記中心点を決定することと
を行うように構成される、Ｃ１５に記載のデバイス。
［Ｃ１７］
前記１つまたは複数のプロセッサは、
前記現在のブロックまたは前記現在のブロックを含む現在のコーディングツリー単位（ＣＴＵ）のうちの少なくとも１つ、の隣接ブロックのブロックベクトルを識別することと、
前記識別されたブロックベクトルに基づいて、前記サーチ領域の前記中心点を決定することと
を行うように構成される、Ｃ１５に記載のデバイス。
［Ｃ１８］
前記現在のピクチャ内の前記中心点のロケーションは、前記ビデオデータを含む符号化ビデオビットストリームにおいてシグナリングされる、
Ｃ１５に記載のデバイス。
［Ｃ１９］
前記サーチ領域の前記サイズは、予め定義されるか、または前記ビデオデータを含む符号化ビデオビットストリームにおいてシグナリングされるかのうちの１つである、
Ｃ１５に記載のデバイス。
［Ｃ２０］
前記サーチ領域の前記サイズは、幅および高さによって定義され、前記幅は、コーディングツリー単位（ＣＴＵ）幅の倍数として定義され、前記高さは、ＣＴＵ高さの倍数として定義される、
Ｃ１９に記載のデバイス。
［Ｃ２１］
前記サーチ領域の前記サイズは、ピクセル単位の観点で幅および高さによって定義される、
Ｃ１９に記載のデバイス。
［Ｃ２２］
前記１つまたは複数のプロセッサは、
前記現在のブロックをコード化するのに利用不可能な前記決定されたサーチ領域の一部を識別することと、
前記サーチ領域の前記利用不可能な部分に近似のサンプル値を複写すること、または
固定のサンプル値を使用すること
のうちの少なくとも１つによって、サンプル値を用いて前記サーチ領域の前記利用不可能な部分をパッディングすることと
を行うように構成される、Ｃ１５に記載のデバイス。
［Ｃ２３］
前記１つまたは複数のプロセッサは、０，１，＜＜（Ｂ−１）にしたがって前記固定のサンプル値を決定するように構成され、ここで、Ｂは、サンプルビット深度である、
Ｃ２２に記載のデバイス。
［Ｃ２４］
前記１つまたは複数のプロセッサは、
前記決定されたサーチ領域の一部が、前記現在のブロックとは、境界の異なる側にあると決定すること、ここにおいて、前記境界は、スライス境界、タイル境界、または前記現在のピクチャの境界のうちの少なくとも１つを備える、と、
前記サーチ領域の全体が、前記現在のブロックと、前記境界の同じ側にくるように前記決定されたサーチ領域をシフトすることと
を行うように構成される、Ｃ１５に記載のデバイス。
［Ｃ２５］
前記１つまたは複数のプロセッサは、
波面並列処理（ＷＰＰ）が前記現在のピクチャをコード化するために使用されると決定することと、
ＷＰＰが前記現在のピクチャをコード化するために使用されるとの前記決定に基づいて、前記現在のブロックに対する前記決定されたサーチ領域を制限することと
を行うように構成される、Ｃ１５に記載のデバイス。
［Ｃ２６］
前記１つまたは複数のプロセッサは、ＷＰＰが前記現在のピクチャをコード化するために使用されるとの前記決定に基づいて、
前記現在のブロックを含む現在のＣＴＵの左にあり、かつ、それの現在の行にあるコーディングツリー単位（ＣＴＵ）、
前記現在のＣＴＵに対して、左にあるか、斜め左上にあるか、または上にあるＣＴＵ、あるいは
前記現在のＣＴＵに対して、左にあるか、斜め左上にあるか、または上にあるＣＴＵ、および、前記現在の行よりも上の行について、ＷＰＰに関するエントロピーコーディング遅延にしたがい前記現在の行の上の１行につき２つの追加の右側のＣＴＵ
のうちの１つに前記現在のブロックに対する前記決定されたサーチ領域を制限するように構成される、
Ｃ２５に記載のデバイス。
［Ｃ２７］
前記ビデオコーダはビデオ復号器を備え、前記１つまたは複数のプロセッサは、
前記ビデオデータの前記現在のブロックを復号するための前記サーチ領域の前記中心点を決定することと、
前記ビデオデータを含む符号化ビデオビットストリームからの、前記サーチ領域内の前記再構築ブロックのうちの１つを識別する前記情報を復号することと、
前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックを再構築することと
を行うように構成される、Ｃ１５に記載のデバイス。
［Ｃ２８］
前記ビデオコーダはビデオ符号化器を備え、前記１つまたは複数のプロセッサは、
前記ビデオデータの前記現在のブロックを符号化するための前記サーチ領域の前記中心点を決定することと、
前記ビデオデータを含む符号化ビデオビットストリーム内の、前記サーチ領域内の前記再構築ブロックのうちの１つを識別する前記情報を符号化することと、
前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックを符号化することと
を行うように構成される、Ｃ１５に記載のデバイス。
［Ｃ２９］
ビデオデータをコード化するためのデバイスであって、
前記ビデオデータの現在のブロックに対するサーチ領域の中心点を決定するための手段と、
前記中心点と、前記サーチ領域の既定のサイズとに基づいて、前記現在のブロックに対する前記サーチ領域を決定するための手段と、
前記決定されたサーチ領域に基づいて、前記現在のブロックを含む現在のピクチャからの前記ビデオデータの再構築ブロックを記憶するための手段と、
前記サーチ領域内の前記再構築ブロックのうちの１つを識別する情報をコード化するための手段と、
前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックをコード化するための手段と
を備えるデバイス。
［Ｃ３０］
命令を記憶しているコンピュータ可読記憶媒体であって、前記命令は、実行されると、ビデオコーダの１つまたは複数のプロセッサに、
前記ビデオデータの現在のブロックに対するサーチ領域の中心点を決定することと、
前記中心点と、前記サーチ領域の既定のサイズとに基づいて、前記現在のブロックに対する前記サーチ領域を決定することと、
前記決定されたサーチ領域に基づいて、前記現在のブロックを含む現在のピクチャからの前記ビデオデータの再構築ブロックをメモリに記憶することと、
前記サーチ領域内の前記再構築ブロックのうちの１つを識別する情報をコード化することと、
前記再構築ブロックのうちの前記識別された１つに基づいて前記現在のブロックをコード化することと
を行わせる、コンピュータ可読記憶媒体。
【国際調査報告】
2017513361.tif 000012
2017513361.tif 000013
2017513361.tif 000014