(57)【要約】一例で、ビデオコーダ（例えば、ビデオエンコーダまたはビデオデコーダ）は、包含ブロック内にあるビデオデータの現在のブロックが視差動きベクトルを使用してコーディングされていると判断することと、現在のブロックの隣接ブロックも包含ブロック内にあるとの判断に基づいて、候補リスト中で隣接ブロックを、包含ブロックの外にあって包含ブロックに隣接するブロックで代替することと、候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、視差動きベクトル予測子に基づいて視差動きベクトルをコーディングすることとを行うように構成される。このようにして、本開示の技法は、包含ブロック内のブロックが並列にコーディングされることを可能にし得る。【選択図】図８
2015515227.tif 000002
【特許請求の範囲】
【請求項１】
ビデオデータを復号する方法であって、
包含ブロック内にあるビデオデータの現在のブロックが視差動きベクトルを使用して符号化されていると判断することと、
前記現在のブロックの隣接ブロックも前記包含ブロック内にあるとの判断に基づいて、候補リスト中で前記隣接ブロックを、前記包含ブロックの外にあって前記包含ブロックに隣接するブロックで代替することと、
前記候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、
前記視差動きベクトル予測子に基づいて前記視差動きベクトルを復号することと
を備える方法。
【請求項２】
前記包含ブロックが動き推定領域（ＭＥＲ）を備え、前記現在のブロックがコーディングユニット（ＣＵ）および予測ユニット（ＰＵ）のうちの１つを備える、請求項１に記載の方法。
【請求項３】
代替することが、前記隣接ブロックが前記現在のブロックの左下隣接ブロックに対応するときに、前記現在のブロックの前記左下隣接ブロックを前記ＭＥＲの左下隣接ブロックで代替することを備える、請求項２に記載の方法。
【請求項４】
代替することが、前記隣接ブロックが前記現在のブロックの左下隣接ブロックに対応するときに、前記現在のブロックの前記左下隣接ブロックを前記ＭＥＲの左隣接ブロックで代替することを備え、結果的に前記ＭＥＲの前記左隣接ブロックが前記現在のブロックの前記左下隣接ブロックと同じ垂直位置を有するようになる、請求項２に記載の方法。
【請求項５】
代替することが、前記隣接ブロックが前記現在のブロックの右上隣接ブロックに対応するときに、前記現在のブロックの前記右上隣接ブロックを前記ＭＥＲの右上隣接ブロックで代替することを備える、請求項２に記載の方法。
【請求項６】
代替することが、前記隣接ブロックが前記現在のブロックの右上隣接ブロックに対応するときに、前記現在のブロックの前記右上隣接ブロックを前記ＭＥＲの上隣接ブロックで代替することを備え、結果的に前記ＭＥＲの前記上隣接ブロックが前記現在のブロックの前記右上隣接ブロックと同じ水平位置を有するようになる、請求項２に記載の方法。
【請求項７】
代替することが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの左上隣接ブロックで代替することを備える、請求項２に記載の方法。
【請求項８】
代替することが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの左隣接ブロックで代替することを備え、結果的に前記ＭＥＲの前記左隣接ブロックが前記現在のブロックの前記左上隣接ブロックと同じ垂直位置を有するようになる、請求項２に記載の方法。
【請求項９】
代替することが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの上隣接ブロックで代替ことを備え、結果的に前記ＭＥＲの前記上隣接ブロックが前記現在のブロックの前記左上隣接ブロックと同じ水平位置を有するようになる、請求項２に記載の方法。
【請求項１０】
前記包含ブロックがコーディングユニット（ＣＵ）を備え、前記現在のブロックが予測ユニット（ＰＵ）を備える、請求項１に記載の方法。
【請求項１１】
前記視差動きベクトルを使用してビデオデータの前記現在のブロックを復号することをさらに備える、請求項１に記載の方法。
【請求項１２】
前記視差動きベクトルを復号することが、
動きベクトル差分値を復号することと、
前記視差動きベクトル予測子に前記動きベクトル差分値を追加して前記視差動きベクトルを再生することと
を備える、請求項１に記載の方法。
【請求項１３】
ビデオデータを復号するためのデバイスであって、包含ブロック内にあるビデオデータの現在のブロックが視差動きベクトルを使用して符号化されていると判断することと、前記現在のブロックの隣接ブロックも前記包含ブロック内にあるとの判断に基づいて、候補リスト中で前記隣接ブロックを、前記包含ブロックの外にあって前記包含ブロックに隣接するブロックで代替することと、前記候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、前記視差動きベクトル予測子に基づいて前記視差動きベクトルを復号することとを行うように構成されたビデオデコーダを備えるデバイス。
【請求項１４】
前記包含ブロックが動き推定領域（ＭＥＲ）を備え、前記現在のブロックがコーディングユニット（ＣＵ）および予測ユニット（ＰＵ）のうちの１つを備える、請求項１３に記載のデバイス。
【請求項１５】
前記ビデオデコーダが、前記隣接ブロックが前記現在のブロックの左下隣接ブロックに対応するときに、前記現在のブロックの前記左下隣接ブロックを前記ＭＥＲの左下隣接ブロックで代替するように構成される、請求項１４に記載のデバイス。
【請求項１６】
前記ビデオデコーダが、前記隣接ブロックが前記現在のブロックの左下隣接ブロックに対応するときに、前記現在のブロックの前記左下隣接ブロックを前記ＭＥＲの左隣接ブロックで代替するように構成され、結果的に前記ＭＥＲの前記左隣接ブロックが前記現在のブロックの前記左下隣接ブロックと同じ垂直位置を有するようになる、請求項１４に記載のデバイス。
【請求項１７】
前記ビデオデコーダが、前記隣接ブロックが前記現在のブロックの右上隣接ブロックに対応するときに、前記現在のブロックの前記右上隣接ブロックを前記ＭＥＲの右上隣接ブロックで代替するように構成される、請求項１４に記載のデバイス。
【請求項１８】
前記ビデオデコーダが、前記隣接ブロックが前記現在のブロックの右上隣接ブロックに対応するときに、前記現在のブロックの前記右上隣接ブロックを前記ＭＥＲの上隣接ブロックで代替するように構成され、結果的に前記ＭＥＲの前記上隣接ブロックが前記現在のブロックの前記右上隣接ブロックと同じ水平位置を有するようになる、請求項１４に記載のデバイス。
【請求項１９】
前記ビデオデコーダが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの左上隣接ブロックで代替するように構成される、請求項１４に記載のデバイス。
【請求項２０】
前記ビデオデコーダが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの左隣接ブロックで代替するように構成され、結果的に前記ＭＥＲの前記左隣接ブロックが前記現在のブロックの前記左上隣接ブロックと同じ垂直位置を有するようになる、請求項１４に記載のデバイス。
【請求項２１】
前記ビデオデコーダが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの上隣接ブロックで代替するように構成され、結果的に前記ＭＥＲの前記上隣接ブロックが前記現在のブロックの前記左上隣接ブロックと同じ水平位置を有するようになる、請求項１４に記載のデバイス。
【請求項２２】
前記包含ブロックがコーディングユニット（ＣＵ）を備え、前記現在のブロックが予測ユニット（ＰＵ）を備える、請求項１３に記載のデバイス。
【請求項２３】
前記ビデオデコーダが、前記視差動きベクトルを使用してビデオデータの前記現在のブロックを復号するようにさらに構成される、請求項１３に記載のデバイス。
【請求項２４】
前記ビデオデコーダが、動きベクトル差分値を復号することと、前記視差動きベクトル予測子に前記動きベクトル差分値を追加して前記視差動きベクトルを再生することとを行うように構成される、請求項１３に記載のデバイス。
【請求項２５】
前記デバイスが、
集積回路、
マイクロプロセッサ、および
ワイヤレス通信デバイス
のうちの少なくとも１つを備える、請求項１３に記載のデバイス。
【請求項２６】
ビデオデータを復号するためのデバイスであって、
包含ブロック内にあるビデオデータの現在のブロックが視差動きベクトルを使用して符号化されていると判断するための手段と、
前記現在のブロックの隣接ブロックも前記包含ブロック内にあるとの判断に基づいて、候補リスト中で前記隣接ブロックを、前記包含ブロックの外にあって前記包含ブロックに隣接するブロックで代替するための手段と、
前記候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択するための手段と、
前記視差動きベクトル予測子に基づいて前記視差動きベクトルを復号するための手段と
を備えるデバイス。
【請求項２７】
前記包含ブロックが動き推定領域（ＭＥＲ）を備え、前記現在のブロックがコーディングユニット（ＣＵ）および予測ユニット（ＰＵ）のうちの１つを備える、請求項２６に記載のデバイス。
【請求項２８】
実行されたとき、１つまたは複数のプロセッサに、
包含ブロック内にあるビデオデータの現在のブロックが視差動きベクトルを使用して符号化されていると判断することと、
前記現在のブロックの隣接ブロックも前記包含ブロック内にあるとの判断に基づいて、候補リスト中で前記隣接ブロックを、前記包含ブロックの外にあって前記包含ブロックに隣接するブロックで代替することと、
前記候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、
前記視差動きベクトル予測子に基づいて前記視差動きベクトルを復号することと
を行わせる命令を記憶したコンピュータ可読記憶媒体。
【請求項２９】
前記包含ブロックが動き推定領域（ＭＥＲ）を備え、前記現在のブロックがコーディングユニット（ＣＵ）および予測ユニット（ＰＵ）のうちの１つを備える、請求項２８に記載のコンピュータ可読記憶媒体。
【請求項３０】
ビデオデータを符号化する方法であって、
視差動きベクトルを使用して、包含ブロック内のビデオデータの現在のブロックを符号化することと、
前記現在のブロックの隣接ブロックも前記包含ブロック内にあるとの判断に基づいて、候補リスト中で前記隣接ブロックを、前記包含ブロックの外にあって前記包含ブロックに隣接するブロックで代替することと、
前記候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、
前記視差動きベクトル予測子に基づいて前記視差動きベクトルを符号化することと
を備える方法。
【請求項３１】
前記包含ブロックが動き推定領域（ＭＥＲ）を備え、前記現在のブロックがコーディングユニット（ＣＵ）および予測ユニット（ＰＵ）のうちの１つを備える、請求項３０に記載の方法。
【請求項３２】
代替することが、前記隣接ブロックが前記現在のブロックの左下隣接ブロックに対応するときに、前記現在のブロックの前記左下隣接ブロックを前記ＭＥＲの左下隣接ブロックで代替することを備える、請求項３１に記載の方法。
【請求項３３】
代替することが、前記隣接ブロックが前記現在のブロックの左下隣接ブロックに対応するときに、前記現在のブロックの前記左下隣接ブロックを前記ＭＥＲの左隣接ブロックで代替することを備え、結果的に前記ＭＥＲの前記左隣接ブロックが前記現在のブロックの前記左下隣接ブロックと同じ垂直位置を有するようになる、請求項３１に記載の方法。
【請求項３４】
代替することが、前記隣接ブロックが前記現在のブロックの右上隣接ブロックに対応するときに、前記現在のブロックの前記右上隣接ブロックを前記ＭＥＲの右上隣接ブロックで代替することを備える、請求項３１に記載の方法。
【請求項３５】
代替することが、前記隣接ブロックが前記現在のブロックの右上隣接ブロックに対応するときに、前記現在のブロックの前記右上隣接ブロックを前記ＭＥＲの上隣接ブロックで代替することを備え、結果的に前記ＭＥＲの前記上隣接ブロックが前記現在のブロックの前記右上隣接ブロックと同じ水平位置を有するようになる、請求項３１に記載の方法。
【請求項３６】
代替することが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの左上隣接ブロックで代替することを備える、請求項３１に記載の方法。
【請求項３７】
代替することが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの左隣接ブロックで代替することを備え、結果的に前記ＭＥＲの前記左隣接ブロックが前記現在のブロックの前記左上隣接ブロックと同じ垂直位置を有するようになる、請求項３１に記載の方法。
【請求項３８】
代替することが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの上隣接ブロックで代替することを備え、結果的に前記ＭＥＲの前記上隣接ブロックが前記現在のブロックの前記左上隣接ブロックと同じ水平位置を有するようになる、請求項３１に記載の方法。
【請求項３９】
前記包含ブロックがコーディングユニット（ＣＵ）を備え、前記現在のブロックが予測ユニット（ＰＵ）を備える、請求項３０に記載の方法。
【請求項４０】
前記視差動きベクトルを符号化することが、
前記視差動きベクトルと前記視差動きベクトル予測子との間の差分を計算することと、
前記差分を符号化することと
を備える、請求項３０に記載の方法。
【請求項４１】
ビデオデータを符号化するためのデバイスであって、視差動きベクトルを使用して、包含ブロック内のビデオデータの現在のブロックを符号化することと、前記現在のブロックの隣接ブロックも前記包含ブロック内にあるとの判断に基づいて、候補リスト中で前記隣接ブロックを、前記包含ブロックの外にあって前記包含ブロックに隣接するブロックで代替することと、前記候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、前記視差動きベクトル予測子に基づいて前記視差動きベクトルを符号化することとを行うように構成されたビデオエンコーダを備えるデバイス。
【請求項４２】
前記包含ブロックが動き推定領域（ＭＥＲ）を備え、前記現在のブロックがコーディングユニット（ＣＵ）および予測ユニット（ＰＵ）のうちの１つを備える、請求項４１に記載のデバイス。
【請求項４３】
前記ビデオエンコーダが、前記隣接ブロックが前記現在のブロックの左下隣接ブロックに対応するときに、前記現在のブロックの前記左下隣接ブロックを前記ＭＥＲの左下隣接ブロックで代替するように構成される、請求項４２に記載のデバイス。
【請求項４４】
前記ビデオエンコーダが、前記隣接ブロックが前記現在のブロックの左下隣接ブロックに対応するときに、前記現在のブロックの前記左下隣接ブロックを前記ＭＥＲの左隣接ブロックで代替するように構成され、結果的に前記ＭＥＲの前記左隣接ブロックが前記現在のブロックの前記左下隣接ブロックと同じ垂直位置を有するようになる、請求項４２に記載のデバイス。
【請求項４５】
前記ビデオエンコーダが、前記隣接ブロックが前記現在のブロックの右上隣接ブロックに対応するときに、前記現在のブロックの前記右上隣接ブロックを前記ＭＥＲの右上隣接ブロックで代替するように構成される、請求項４２に記載のデバイス。
【請求項４６】
前記ビデオエンコーダが、前記隣接ブロックが前記現在のブロックの右上隣接ブロックに対応するときに、前記現在のブロックの前記右上隣接ブロックを前記ＭＥＲの上隣接ブロックで代替するように構成され、結果的に前記ＭＥＲの前記上隣接ブロックが前記現在のブロックの前記右上隣接ブロックと同じ水平位置を有するようになる、請求項４２に記載のデバイス。
【請求項４７】
前記ビデオエンコーダが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの左上隣接ブロックで代替するように構成される、請求項４２に記載のデバイス。
【請求項４８】
前記ビデオエンコーダが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの左隣接ブロックで代替するように構成され、結果的に前記ＭＥＲの前記左隣接ブロックが前記現在のブロックの前記左上隣接ブロックと同じ垂直位置を有するようになる、請求項４２に記載のデバイス。
【請求項４９】
前記ビデオエンコーダが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの上隣接ブロックで代替するように構成され、結果的に前記ＭＥＲの前記上隣接ブロックが前記現在のブロックの前記左上隣接ブロックと同じ水平位置を有するようになる、請求項４２に記載のデバイス。
【請求項５０】
集積回路、
マイクロプロセッサ、および
ワイヤレス通信デバイス
のうちの少なくとも１つを備える、請求項４１に記載のデバイス。
【発明の詳細な説明】
【関連出願】
【０００１】
[0001]  本出願は、その内容全体が参照により本明細書に組み込まれる、２０１２年４月２０日に出願された米国仮出願第６１／６３６，５５４号の利益を主張する。
【技術分野】
【０００２】
[0002]  本開示は、ビデオコーディングに関する。
【背景技術】
【０００３】
[0003]  デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップまたはデスクトップコンピュータ、タブレットコンピュータ、電子ブックリーダ、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラーまたは衛星無線電話、いわゆる「スマートフォン」、ビデオ遠隔会議デバイス、ビデオストリーミングデバイスなどを含む、広範囲のデバイスに組み込まれ得る。デジタルビデオデバイスは、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４，Ｐａｒｔ  １０，Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＡＶＣ）、現在開発中の高効率ビデオコーディング（ＨＥＶＣ：High Efficiency Video Coding）規格によって定義された規格、およびそのような規格の拡張に記載されているビデオコーディング技法など、ビデオコーディング技法を実装する。ＨＥＶＣが、ＩＴＵ−Ｔ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ（ＶＣＥＧ）とＩＳＯ／ＩＥＣ  Ｍｏｔｉｏｎ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ（ＭＰＥＧ）とのＪｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｏｎ  Ｔｅａｍ  ｏｎ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＪＣＴ−ＶＣ）によって開発されている。ＨＥＶＣのドラフトは、ｈｔｔｐ：／／ｐｈｅｎｉｘ．ｉｎｔ−ｅｖｒｙ．ｆｒ／ｊｃｔ／ｄｏｃ＿ｅｎｄ＿ｕｓｅｒ／ｄｏｃｕｍｅｎｔｓ／８＿Ｓａｎ％２０Ｊｏｓｅ／ｗｇ１１／ＪＣＴＶＣ−Ｈ１００３−ｖ２２．ｚｉｐから入手可能である。Ｈ．２６４／ＡＶＣは、「Ａｄｖａｎｃｅｄ  ｖｉｄｅｏ  ｃｏｄｉｎｇ  ｆｏｒ  ｇｅｎｅｒｉｃ  ａｕｄｉｏｖｉｓｕａｌ  ｓｅｒｖｉｃｅｓ」、ＩＴＵ−Ｔ勧告Ｈ．２６４、２０１０年３月に記載されている、Ｓｃａｌａｂｌｅ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＳＶＣ）およびＭｕｌｔｉｖｉｅｗ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＭＶＣ）の拡張を含む。ビデオデバイスは、そのようなビデオコーディング技法を実装することによって、デジタルビデオ情報をより効率的に送信、受信、符号化、復号、および／または記憶し得る。
【０００４】
[0004]  ビデオコーディング技法は、ビデオシーケンスに固有の冗長性を低減または除去するための空間的（イントラピクチャ(intra-picture)）予測および／または時間的（インターピクチャ(inter-picture)）予測を含む。ブロックベースのビデオコーディングの場合、ビデオスライス（例えば、ビデオフレームまたはビデオフレームの一部分）が、ツリーブロック、コーディングユニット（ＣＵ：coding units）および／またはコーディングノードと呼ばれることもあるビデオブロックに区分され得る。ピクチャのイントラコーディングされた（Ｉ）スライス中のビデオブロックは、同じピクチャ中の近隣ブロック中の参照サンプルに対する空間的予測を使用して符号化される。ピクチャのインターコーディングされた（ＰまたはＢ）スライス中のビデオブロックは、同じピクチャ中の近隣ブロック中の参照サンプルに対する空間的予測、または他の参照ピクチャ(reference pictures)中の参照サンプルに対する時間的予測を使用し得る。ピクチャはフレームと呼ばれることがあり、参照ピクチャは参照フレーム(reference frames)と呼ばれることがある。
【０００５】
[0005]  空間的予測または時間的予測は、コーディングされるべきブロックの予測ブロックを生じる。残差データは、コーディングされるべき元のブロックと予測ブロックとの間のピクセル差分を表す。インターコード化ブロックは、予測ブロックを形成する参照サンプルのブロックを指す動きベクトルと、コード化ブロックと予測ブロックとの間の差分を示す残差データとに従って符号化される。イントラコード化ブロックは、イントラコーディングモードと残差データとに従って符号化される。さらなる圧縮のために、残差データは、ピクセル領域から変換領域に変換されて、残差変換係数(residual transform coefficients)が得られ得、その残差変換係数は、次いで量子化され得る。量子化変換係数(quantized transform coefficients)は、最初は２次元アレイで構成され、変換係数の１次元ベクトルを生成するために走査され得、なお一層の圧縮を達成するために、エントロピーコーディング(entropy coding)が適用され得る。
【発明の概要】
【０００６】
[0006]  概して、本開示は、来たるべき高効率ビデオコーディング（ＨＥＶＣ：High Efficiency Video Coding）規格の技法を行うように構成されたコーデックなどのアドバンストコーデックに基づくマルチビュービデオコーディングに関する技法について説明する。そのようなアドバンストコーデックは、ＨＥＶＣに従って２つ以上のビューをコーディングするように構成されることがあり、こうしたビューの画像が実質的に同時にレンダリングされて、３次元（３Ｄ）ビデオ効果をもたらすことができる。より具体的には、本開示は、視差動きベクトル生成(disparity motion vector generation)に関する技法について説明する。
【０００７】
[0007]  一例で、ビデオデータを復号する方法は、包含ブロック内にあるビデオデータの現在のブロックが視差動きベクトル(disparity motion vector)を使用して符号化されていると判断することと、現在のブロック(current block)の隣接ブロック(neighboring block)も包含ブロック(containing block)内にあるとの判断に基づいて、候補リスト中で隣接ブロックを、包含ブロックの外にあって包含ブロックに隣接するブロックで代替することと、候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子(disparity motion vector predictor)を選択することと、視差動きベクトル予測子に基づいて視差動きベクトルを復号することとを含む。
【０００８】
[0008]  別の例で、ビデオデータを復号するためのデバイスは、包含ブロック内にあるビデオデータの現在のブロックが視差動きベクトルを使用して符号化されていると判断することと、現在のブロックの隣接ブロックも包含ブロック内にあるとの判断に基づいて、候補リスト中で隣接ブロックを、包含ブロックの外にあって包含ブロックに隣接するブロックで代替することと、候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、視差動きベクトル予測子に基づいて視差動きベクトルを復号することとを行うように構成されたビデオデコーダを含む。
【０００９】
[0009]  別の例で、ビデオデータを復号するためのデバイスは、包含ブロック内にあるビデオデータの現在のブロックが視差動きベクトルを使用して符号化されていると判断するための手段と、現在のブロックの隣接ブロックも包含ブロック内にあるとの判断に基づいて、候補リスト中で隣接ブロックを、包含ブロックの外にあって包含ブロックに隣接するブロックで代替するための手段と、候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択するための手段と、視差動きベクトル予測子に基づいて視差動きベクトルを復号するための手段とを含む。
【００１０】
[0010]  別の例で、コンピュータ可読記憶媒体は、実行されたとき、１つまたは複数のプロセッサに、包含ブロック内にあるビデオデータの現在のブロックが視差動きベクトルを使用して符号化されていると判断することと、現在のブロックの隣接ブロックも包含ブロック内にあるとの判断に基づいて、候補リスト中で隣接ブロックを、包含ブロックの外にあって包含ブロックに隣接するブロックで代替することと、候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、視差動きベクトル予測子に基づいて視差動きベクトルを復号することとを行わせる命令を記憶している。
【００１１】
[0011]  別の例で、ビデオデータを符号化する方法は、視差動きベクトルを使用して、包含ブロック内のビデオデータの現在のブロックを符号化することと、現在のブロックの隣接ブロックも包含ブロック内にあるとの判断に基づいて、候補リスト中で隣接ブロックを、包含ブロックの外にあって包含ブロックに隣接するブロックで代替することと、候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、視差動きベクトル予測子に基づいて視差動きベクトルを符号化することとを含む。
【００１２】
[0012]  別の例で、ビデオデータを符号化するためのデバイスは、視差動きベクトルを使用して、包含ブロック内のビデオデータの現在のブロックを符号化することと、現在のブロックの隣接ブロックも包含ブロック内にあるとの判断に基づいて、候補リスト中で隣接ブロックを、包含ブロックの外にあって包含ブロックに隣接するブロックで代替することと、候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、視差動きベクトル予測子に基づいて視差動きベクトルを符号化することとを行うように構成されたビデオエンコーダを含む。
【００１３】
[0013]  １つまたは複数の例の詳細は、添付の図面および以下の説明に記載されている。他の特徴、目的、および利点は、その説明および図面から、並びに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１４】
【図１】ビュー間予測(inter-view prediction)のための視差ベクトルを生成するための技法を利用し得る例示的なビデオ符号化および復号システムを示すブロック図。
【図２】ビュー間予測のための視差ベクトルを生成するための技法を実装し得るビデオエンコーダの一例を示すブロック図。
【図３】ビュー間予測のための視差ベクトルを生成するための技法を実装し得るビデオデコーダの一例を示すブロック図。
【図４】例示的なマルチビュービデオコーディング（ＭＶＣ）の予測パターンを示す概念図。
【図５】現在の予測ユニット（ＰＵ：prediction unit）並びに空間的に隣接するブロックＡ0、Ａ1、Ｂ0、Ｂ1、およびＢ2の例を示すブロック図。
【図６】様々なピクチャグループ（ＧＯＰ：groups of pictures）のピクチャを示す、ピクチャが様々なタイプを有する概念図。
【図７】一連のブロックにおける動きデータ圧縮を示す概念図。
【図８】ＰＵを含む動き推定範囲（ＭＥＲ：motion estimation range）の外での代替の例を示す概念図。
【図９】視差ベクトルが確認されるＰＵの一例を示す概念図。
【図１０】ＰＵを含むＭＥＲの外での代替の代替例を示す概念図。
【図１１】ＰＵの視差ベクトルに関する１つまたは複数の候補ブロックがＰＵを含むＣＵ内にある例を示す概念図。
【図１２】視差生成ブロックユニットのための視差ベクトル生成の一例を示す概念図。
【図１３】１つの領域として結合されたときの隣接ブロックの走査順序の例を示す概念図。
【図１４】時間的視差ベクトル確認(temporal disparity vector checking)のための例示的な方法を示す概念図。
【図１５】本開示の技法による、視差動きベクトルを符号化するための例示的な方法を示すフローチャート。
【図１６】本開示の技法による、視差動きベクトルを復号するための例示的な方法を示すフローチャート。
【発明を実施するための形態】
【００１５】
詳細な説明
[0030]  概して、ビデオコーディングで、ビデオコーダは、空間的予測（またはイントラ予測）または時間的予測（またはインター予測）のいずれかを使用して、シーケンス中のピクチャを予測コーディングする。３次元（３Ｄ）効果を達成するために、２つ（またはそれ以上）のピクチャが実質的に同時に提示されてよく、それにより、異なるビューからの異なるピクチャが観察者の両目の各々によって認識される。特定のカメラアングルまたは水平カメラ位置に対応するシーケンス中のピクチャは、３Ｄビデオデータのビューを指す。３Ｄビデオコーディングで、ピクチャは、時間的予測の追加または代替としてビュー間予測され得る。
【００１６】
[0031]  ＩＳＯ／ＩＥＣ  Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ（ＭＰＥＧ）とＩＴＵ−Ｔ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ（ＶＣＥＧ）とのＪｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｖｅ  Ｔｅａｍ  ｏｎ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＪＣＴ−ＶＣ）における高効率ビデオコーディング（ＨＥＶＣ）に関するビデオコーディングの規格化の継続的取り組みがある。ＨＥＶＣのワーキングドラフトは、ＪＣＴＶＣ−Ｈ１００３、「Ｈｉｇｈ  ｅｆｆｉｃｉｅｎｃｙ  ｖｉｄｅｏ  ｃｏｄｉｎｇ  （ＨＥＶＣ）  ｔｅｘｔ  ｓｐｅｃｉｆｉｃａｔｉｏｎ  ｄｒａｆｔ  ６」、第８回会議：サンノゼ、カリフォルニア、米国、２０１２年２月に記載されており、ｈｔｔｐ：／／ｐｈｅｎｉｘ．ｉｎｔ−ｅｖｒｙ．ｆｒ／ｊｃｔ／ｄｏｃ＿ｅｎｄ＿ｕｓｅｒ／ｄｏｃｕｍｅｎｔｓ／８＿Ｓａｎ％２０Ｊｏｓｅ／ｗｇ１１／ＪＣＴＶＣ−Ｈ１００３−ｖ２２．ｚｉｐで入手可能である。
【００１７】
[0032]  本開示の技法は一般に、３ＤＶとも呼ばれるＨＥＶＣベースの３Ｄビデオコーディングに関する。特に、本開示は、３ＤＶにおけるビュー合成モードを可能にするための技法を提供する。以下でさらに詳細に説明するように、ＨＥＶＣでは、ビデオエンコーダおよびビデオデコーダなどのビデオコーダが、コーディングユニット（ＣＵ）と呼ばれるブロックベースのユニットを使用してピクチャをコーディングする。ＣＵは、様々なコーディングモードを使用してコーディングされ得る。
【００１８】
[0033]  視差補償予測（ＤＣＰ：disparity-compensated prediction）と呼ばれる１つのコーディングモードでは、（ＣＵまたはＣＵの予測ユニット（ＰＵ）などの）ビデオデータのブロックが、視差ベクトルを使用して予測され得る。視差ベクトルは、同じ時間インスタンスからの異なるビューにおけるぴったり一致するブロックを、現在のＣＵを含むピクチャとして識別できる。「視差(Disparity)」は一般に、オブジェクトの画像をキャプチャまたは生成するときにカメラパースペクティブ(camera perspectives)の水平オフセットによって生じた１つのシーンにおける本質的に同じオブジェクトの２つのブロックの水平オフセットを指す。視差ベクトルは一般に、異なるビューにおけるピクチャに対するＣＵまたはＣＵのＰＵをコーディングするために使用されるベクトルに対応する。
【００１９】
[0034]  視差ベクトル構成を行うための従来のＨＥＶＣ技法は、いくつかの問題に遭遇している。例えば、動き推定領域（ＭＥＲ）が使用されるとき、空間的視差ベクトル(spatial disparity vector)を得るために使用される空間的隣接ブロックが、同じＭＥＲ中にあるために利用不可能である可能性がある。この場合、最後の視差ベクトルは、利用不可能であるか、またはさほど正確ではないかのいずれかであり得る。また、いくつかのビュー間予測技法、例えば残差予測がＣＵレベルで行われ、いくつかのビュー間予測技法、例えば動き予測がＰＵレベルで行われる。そのため、視差ベクトル生成は、ブロックユニットの異なるレベルに適用される異なるビュー間予測技法に起因して、複数回行われる必要があり得る。視差動きベクトル予測が行われているＣＵまたはＰＵをＭＥＲが含むときに、ＭＥＲが包含ブロックと呼ばれることがあり、視差動きベクトル予測が行われているＰＵをＣＵが含むときに、ＣＵが包含ブロックと呼ばれることがある。
【００２０】
[0035]  その上、視差ベクトル構成がＰＵごとに必要とされる可能性があっても、このＰＵの時間的視差ベクトル(temporal disparity vectors)は、同じＣＵ中の他のＰＵの時間的視差ベクトルと同様であり得る。さらに、時間的視差ベクトルを確認するとき、多数のＰＵが確認され得る。ビュー間参照ピクチャ(inter-view reference picture)のブロックが時間的と見なされ得るときでも、動きベクトルは必ずしも１６×１６ブロックユニットとして圧縮されるとは限らない。
【００２１】
[0036]  本開示の技法は、これらの問題のうちの１つまたは複数を克服することを目的とする。これらの技法は、現在の視差ベクトル生成技法を簡略化しかつ統一できる。いくつかの例で、ＭＥＲが使用され、ＭＥＲがＰＵよりも大きいとき、ＰＵのビュー間予測は、現在のＭＥＲに隣接するブロックの空間的視差ベクトルに基づき得る。いくつかの例で、ビュー間予測がＰＵレベルで行われるときでも、視差ベクトル生成は、ＰＵを包含するＣＵのために行われ得る。いくつかの例では、ＰＵのためのより正確な視差ベクトルを生成するために、ＣＵレベルで生成された視差ベクトルが改良され得る。改良は、現在のＰＵを包含するＣＵの空間的隣接ブロックをさらに確認することによってのみ起こり得る。代替または追加として、改良は、現在のＰＵを包含するＭＥＲの空間的隣接ブロックをさらに確認することのみによって起こり得る。代替または追加として、改良は、現在のＰＵの空間的隣接ブロックをさらに確認することのみによって起こり得る。
【００２２】
[0037]  図１は、ビュー間予測のための視差ベクトルを生成するための技法を利用し得る例示的なビデオ符号化および復号システム１０を示すブロック図である。図１に示すように、システム１０は、宛先デバイス(destination device)１４によって後で復号されるべき符号化ビデオデータを与えるソースデバイス(source device)１２を含む。特に、ソースデバイス１２は、コンピュータ可読媒体１６を介してビデオデータを宛先デバイス１４に与える。ソースデバイス１２および宛先デバイス１４は、デスクトップコンピュータ、ノートブック（すなわち、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイスなどを含む、広範囲のデバイスのいずれかを備え得る。場合によっては、ソースデバイス１２および宛先デバイス１４は、ワイヤレス通信のために装備され得る。
【００２３】
[0038]  宛先デバイス１４は、コンピュータ可読媒体１６を介して復号されるべき符号化ビデオデータを受信し得る。コンピュータ可読媒体１６は、ソースデバイス１２から宛先デバイス１４に符号化されたビデオデータを移動させることができる任意のタイプの媒体またはデバイスを備え得る。一例で、コンピュータ可読媒体１６は、ソースデバイス１２が、符号化ビデオデータを宛先デバイス１４にリアルタイムで直接送信することを可能にするための通信媒体を備え得る。符号化ビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され、宛先デバイス１４に送信され得る。通信媒体は、無線周波数（ＲＦ）スペクトルまたは１つもしくは複数の物理伝送線路など、任意のワイヤレスまたはワイヤード通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信媒体は、ソースデバイス１２から宛先デバイス１４への通信を可能にするために有用であり得るルータ、スイッチ、基地局、または任意の他の機器を含み得る。
【００２４】
[0039]  いくつかの例で、符号化データは、出力インターフェース２２からストレージデバイスに出力され得る。同様に、符号化データは、入力インターフェースによってストレージデバイスからアクセスされ得る。ストレージデバイスは、ハードドライブ、ブルーレイ（登録商標）ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュメモリ、揮発性もしくは不揮発性メモリ、または符号化ビデオデータを記憶するための任意の他の好適なデジタル記憶媒体など、様々な分散されたまたはローカルにアクセスされるデータ記憶媒体のいずれかを含み得る。さらなる一例で、ストレージデバイスは、ソースデバイス１２によって生成された符号化ビデオを記憶し得るファイルサーバまたは別の中間ストレージデバイスに対応し得る。宛先デバイス１４は、ストリーミングまたはダウンロードを介してストレージデバイスから、記憶されたビデオデータにアクセスし得る。ファイルサーバは、符号化ビデオデータを記憶し、その符号化ビデオデータを宛先デバイス１４に送信することが可能な任意のタイプのサーバであり得る。例示的なファイルサーバは、（例えば、ウェブサイトのための）ウェブサーバ、ＦＴＰサーバ、ネットワーク接続ストレージ（ＮＡＳ）デバイス、またはローカルディスクドライブを含む。宛先デバイス１４は、インターネット接続を含む、任意の標準のデータ接続(standard data connection)を介して符号化ビデオデータにアクセスし得る。これは、ファイルサーバに記憶された符号化ビデオデータにアクセスするのに好適であるワイヤレスチャネル（例えば、Ｗｉ−Ｆｉ（登録商標）接続）、ワイヤード接続（例えば、ＤＳＬ、ケーブルモデムなど）、または両方の組合せを含み得る。ストレージデバイスからの符号化ビデオデータの送信は、ストリーミング送信、ダウンロード送信、またはそれらの組合せであり得る。
【００２５】
[0040]  本開示の技法は、必ずしもワイヤレス適用例または設定に限定されるとは限らない。本技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、動的適応ストリーミングオーバーＨＴＴＰ（ＤＡＳＨ：dynamic adaptive streaming over HTTP）などのインターネットストリーミングビデオ送信、データ記憶媒体上に符号化されたデジタルビデオ、データ記憶媒体に記憶されたデジタルビデオの復号、または他の適用例など、様々なマルチメディア適用例のいずれかをサポートするビデオコーディングに適用され得る。いくつかの例で、システム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、および／またはビデオテレフォニーなどの適用例をサポートするために、一方向または双方向のビデオ送信をサポートするように構成され得る。
【００２６】
[0041]  図１の例で、ソースデバイス１２は、ビデオソース１８、ビデオエンコーダ２０、および出力インターフェース２２を含む。宛先デバイス１４は、入力インターフェース２８、ビデオデコーダ３０、およびディスプレイデバイス３２を含む。本開示によれば、ソースデバイス１２のビデオエンコーダ２０は、ビュー間予測のための視差ベクトルを生成するための本技法を適用するように構成され得る。他の例で、ソースデバイスおよび宛先デバイスは他の構成要素または構成を含み得る。例えば、ソースデバイス１２は、外部カメラなどの、外部ビデオソース１８からビデオデータを受信し得る。同様に、宛先デバイス１４は、内蔵ディスプレイデバイスを含むのではなく、外部ディスプレイデバイスとインターフェースし得る。
【００２７】
[0042]  図１の図示のシステム１０は一例にすぎない。ビュー間予測のための視差ベクトルを生成するための技法は、任意のデジタルビデオ符号化および／または復号デバイスによって行われ得る。概して、本開示の技法はビデオ符号化デバイスによって行われるが、本技法は、一般に「コーデック」と呼ばれるビデオエンコーダ／デコーダによっても行われ得る。さらに、本開示の技法は、ビデオプリプロセッサによっても行われ得る。ソースデバイス１２および宛先デバイス１４は、ソースデバイス１２が宛先デバイス１４に送信するためのコード化ビデオデータを生成するような、コーディングデバイスの例にすぎない。いくつかの例で、デバイス１２、１４は、デバイス１２、１４の各々がビデオ符号化構成要素とビデオ復号構成要素とを含むように、実質的に対称的に動作し得る。従って、システム１０は、例えば、ビデオストリーミング、ビデオ再生、ビデオブロードキャストまたはビデオ電話のための、ビデオデバイス１２とビデオデバイス１４との間の一方向または双方向のビデオ送信をサポートし得る。
【００２８】
[0043]  ソースデバイス１２のビデオソース１８は、ビデオカメラなどのビデオキャプチャデバイス、予めキャプチャされたビデオを含んでいるビデオアーカイブ、および／またはビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェースを含み得る。さらなる代替として、ビデオソース１８は、ソースビデオとしてのコンピュータグラフィックスベースのデータ、またはライブビデオとアーカイブビデオとコンピュータ生成ビデオとの組合せを生成し得る。場合によっては、ビデオソース１８がビデオカメラである場合、ソースデバイス１２および宛先デバイス１４は、いわゆるカメラフォンまたはビデオフォンを形成し得る。但し、上述のように、本開示で説明する技法は、概してビデオコーディングに適用可能であり得、ワイヤレスおよび／またはワイヤード適用例に適用され得る。各場合において、キャプチャされたビデオ、以前にキャプチャされたビデオ、またはコンピュータ生成ビデオは、ビデオエンコーダ２０によって符号化され得る。符号化されたビデオ情報は、次いで、出力インターフェース２２によってコンピュータ可読媒体１６上に出力され得る。
【００２９】
[0044]  コンピュータ可読媒体１６は、ワイヤレスブロードキャストまたはワイヤードネットワーク送信などの一時媒体、またはハードディスク、フラッシュドライブ、コンパクトディスク、デジタルビデオディスク、ブルーレイディスク、または他のコンピュータ可読媒体などの記憶媒体（すなわち、非一時的記憶媒体）を含み得る。いくつかの例で、ネットワークサーバ（図示せず）は、例えば、ネットワーク送信を介して、ソースデバイス１２から符号化されたビデオデータを受信し、宛先デバイス１４に符号化されたビデオデータを与え得る。同様に、ディスクスタンピング設備など、媒体製造設備のコンピューティングデバイスは、ソースデバイス１２から符号化ビデオデータを受信し、その符号化ビデオデータを含んでいるディスクを生成し得る。従って、様々な例で、コンピュータ可読媒体１６は、様々な形態の１つまたは複数のコンピュータ可読媒体を含むと理解され得る。
【００３０】
[0045]  宛先デバイス１４の入力インターフェース２８は、コンピュータ可読媒体１６から情報を受信する。コンピュータ可読媒体１６の情報は、ビデオエンコーダ２０によって定義され、またビデオデコーダ３０によって使用される、ブロックおよび他のコード化ユニット、例えば、ＧＯＰの特性および／または処理を記述するシンタックス要素(syntax elements)を含む、シンタックス情報を含み得る。ディスプレイデバイス３２は、復号されたビデオデータをユーザに対して表示し、陰極線管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを備え得る。
【００３１】
[0046]  ビデオエンコーダ２０およびビデオデコーダ３０は、現在開発中の高効率ビデオコーディング（ＨＥＶＣ）規格などのビデオコーディング規格に従って動作し得、ＨＥＶＣテストモデル（ＨＭ）に準拠し得る。代替的に、ビデオエンコーダ２０およびビデオデコーダ３０は、代替的にＭＰＥＧ−４，Ｐａｒｔ  １０，Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＡＶＣ）と呼ばれるＩＴＵ−Ｔ  Ｈ．２６４規格など、他のプロプライエタリ規格もしくは工業規格、またはそのような規格の拡張に従って動作し得る。但し、本開示の技法は、いかなる特定のコーディング規格にも限定されない。ビデオコーディング規格の他の例としては、ＭＰＥＧ−２およびＩＴＵ−Ｔ  Ｈ．２６３がある。図１には示されていないが、いくつかの態様で、ビデオエンコーダ２０およびビデオデコーダ３０は、それぞれオーディオエンコーダおよびオーディオデコーダと統合され得、適切なＭＵＸ−ＤＥＭＵＸユニット、または他のハードウェアおよびソフトウェアを含んで、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理し得る。適用可能な場合、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、またはユーザデータグラムプロトコル（ＵＤＰ）などの他のプロトコルに準拠し得る。
【００３２】
[0047]  ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４（ＡＶＣ）規格は、Ｊｏｉｎｔ  Ｖｉｄｅｏ  Ｔｅａｍ（ＪＶＴ）として知られる共同パートナーシップの成果として、ＩＳＯ／ＩＥＣ  Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ（ＭＰＥＧ）とともにＩＴＵ−Ｔ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ（ＶＣＥＧ）によって策定された。いくつかの態様で、本開示で説明する技法は、Ｈ．２６４規格に概して準拠するデバイスに適用され得る。Ｈ．２６４規格は、ＩＴＵ−Ｔ  Ｓｔｕｄｙ  Ｇｒｏｕｐによる２００５年３月付けのＩＴＵ−Ｔ勧告Ｈ．２６４「Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  ｆｏｒ  ｇｅｎｅｒｉｃ  ａｕｄｉｏｖｉｓｕａｌ  ｓｅｒｖｉｃｅｓ」に記載されており、本明細書でＨ．２６４規格もしくはＨ．２６４仕様、またはＨ．２６４／ＡＶＣ規格もしくは仕様と呼ぶことがある。Ｊｏｉｎｔ  Ｖｉｄｅｏ  Ｔｅａｍ（ＪＶＴ）はＨ．２６４／ＭＰＥＧ−４  ＡＶＣへの拡張に取り組み続けている。
【００３３】
[0048]  ビデオエンコーダ２０およびビデオデコーダ３０はそれぞれ、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアまたはそれらの任意の組合せなど、様々な好適なエンコーダ回路のいずれかとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、デバイスは、好適な非一時的コンピュータ可読媒体にソフトウェアの命令を記憶し、１つまたは複数のプロセッサを使用してその命令をハードウェアで実行して、本開示の技法を行い得る。ビデオエンコーダ２０およびビデオデコーダ３０の各々は１つまたは複数のエンコーダまたはデコーダ中に含まれ得、そのいずれも、該当のデバイスにおいて複合エンコーダ／デコーダ（コーデック）の一部として統合され得る。
【００３４】
[0049]  ＪＣＴ−ＶＣは、ＨＥＶＣ規格の開発に取り組んでいる。ＨＥＶＣ規格化の取り組みは、ＨＥＶＣテストモデル（ＨＭ）と呼ばれるビデオコーディングデバイスの発展的モデルに基づく。ＨＭは、例えば、ＩＴＵ−Ｔ  Ｈ．２６４／ＡＶＣに従う既存のデバイスに対してビデオコーディングデバイスのいくつかの追加の能力を仮定する。例えば、Ｈ．２６４は９つのイントラ予測符号化モードを提供するが、ＨＭは３３個ものイントラ予測符号化モードを提供し得る。
【００３５】
[0050]  概して、ＨＭの作業モデルは、ビデオフレームまたはピクチャが、「コーディングツリーユニット」または「ＣＴＵ」とも呼ばれる、ルーマサンプル(luma sample)とクロマサンプル(chroma sample)の両方を含む一連のツリーブロックまたは最大コーディングユニット（ＬＣＵ）に分割され得ることを記載している。ビットストリーム内のシンタックスデータが、ピクセルの数に関して最大コーディングユニットであるＬＣＵのサイズを定義し得る。スライスは、コーディング順序でいくつかの連続するツリーブロックを含む。ビデオフレームまたはピクチャは、１つまたは複数のスライスに区分され得る。各ツリーブロックは、４分木に従ってコーディングユニット（ＣＵ）に分割され得る。概して、４分木データ構造はＣＵごとに１つのノードを含み、ルートノードはツリーブロックに対応する。ＣＵが４つのサブＣＵに分割された場合、ＣＵに対応するノードは４つのリーフノード(leaf nodes)を含み、リーフノードの各々はサブＣＵのうちの１つに対応する。
【００３６】
[0051]  ４分木データ構造の各ノードは、対応するＣＵのシンタックスデータを与え得る。例えば、４分木のノードは、そのノードに対応するＣＵがサブＣＵに分割されるかどうかを示す分割フラグを含み得る。ＣＵのシンタックス要素は、再帰的に定義され得、かつＣＵがサブＣＵに分割されるかどうかに依存し得る。ＣＵがさらに分割されない場合、そのＣＵはリーフＣＵと呼ばれる。本開示では、元のリーフＣＵの明示的分割が存在しない場合でも、リーフＣＵの４つのサブＣＵをリーフＣＵとも呼ぶ。例えば、１６×１６サイズのＣＵがさらに分割されない場合、この１６×１６ＣＵが決して分割されなくても、４つの８×８サブＣＵをリーフＣＵとも呼ぶ。
【００３７】
[0052]  ＣＵは、ＣＵがサイズの差異を有さないことを除いて、Ｈ．２６４規格のマクロブロックと同様の目的を有する。例えば、ツリーブロックは、４つの子ノード（サブＣＵとも呼ばれる）に分割され得、各子ノードは、今度は親ノードとなり、別の４つの子ノードに分割され得る。４分木のリーフノードと呼ばれる、最後の分割されていない子ノードは、リーフＣＵとも呼ばれるコーディングノードを備える。コード化ビットストリームに関連するシンタックスデータは、最大ＣＵ深さと呼ばれる、ツリーブロックが分割され得る最大回数を定義し得、また、コーディングノードの最小サイズを定義し得る。それに応じて、ビットストリームは最小コーディングユニット（ＳＣＵ：smallest coding unit）をも定義し得る。本開示では、ＨＥＶＣのコンテキストにおけるＣＵ、ＰＵ、もしくはＴＵ、または他の規格のコンテキストにおける同様のデータ構造（例えば、Ｈ．２６４／ＡＶＣにおけるマクロブロックおよびそれのサブブロック）のいずれかを指すために「ブロック」という用語を使用する。
【００３８】
[0053]  ＣＵは、コーディングノードと、コーディングノードに関連する予測ユニット（ＰＵ：prediction unit）および変換ユニット（ＴＵ：transform unit）とを含む。ＣＵのサイズは、コーディングノードのサイズに対応し、かつ形状が方形でなければならない。ＣＵのサイズは、８×８ピクセルから最大６４×６４以上のピクセルを有するツリーブロックのサイズまでに及び得る。各ＣＵは、１つまたは複数のＰＵと、１つまたは複数のＴＵとを含み得る。ＣＵに関連するシンタックスデータは、例えば、ＣＵを１つまたは複数のＰＵに区分することを記述し得る。区分モードは、ＣＵが、スキップモード符号化もしくはダイレクトモード符号化されるか、イントラ予測モード符号化されるか、またはインター予測モード符号化されるかによって異なり得る。ＰＵは、形状が非方形になるように区分され得る。ＣＵに関連するシンタックスデータは、例えば、４分木に従って、ＣＵを１つまたは複数のＴＵに区分することも記述し得る。ＴＵは、形状が方形または非方形（例えば、矩形）であり得る。
【００３９】
[0054]  ＨＥＶＣ規格は、ＣＵごとに異なり得るＴＵに従う変換を可能にする。ＴＵは、一般に、区分されたＬＣＵについて定義された所与のＣＵ内のＰＵのサイズに基づいてサイズ決定されるが、常にそうであるとは限らない。ＴＵは、一般にＰＵと同じサイズであるかまたはＰＵよりも小さい。いくつかの例で、ＣＵに対応する残差サンプルは、「残差クワッドツリー」（ＲＱＴ：residual quad tree）として知られるクワッドツリー構造を使用して、より小さいユニットに再分割され得る。ＲＱＴのリーフノードは変換ユニット（ＴＵ）と呼ばれることがある。ＴＵに関連するピクセル差分値は、量子化され得る変換係数を生成するために変換され得る。
【００４０】
[0055]  リーフＣＵは、１つまたは複数の予測ユニット（ＰＵ）を含み得る。概して、ＰＵは、対応するＣＵの全部または一部分に対応する空間的エリアを表し、そのＰＵの参照サンプルを取り出すためのデータを含み得る。その上、ＰＵは、予測に関係するデータを含む。例えば、ＰＵがイントラモード符号化されるとき、ＰＵについてのデータは、ＰＵに対応するＴＵについてのイントラ予測モードを記述するデータを含み得る残差４分木（ＲＱＴ）中に含まれ得る。別の例として、ＰＵがインターモード符号化されるとき、ＰＵは、ＰＵのための１つまたは複数の動きベクトルを定義するデータを含み得る。ＰＵの動きベクトルを定義するデータは、例えば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルの解像度（例えば、１／４ピクセル精度または１／８ピクセル精度）、動きベクトルが指す参照ピクチャ、および／または動きベクトルの参照ピクチャリスト（例えば、リスト０、リスト１、またはリストＣ）を記述し得る。
【００４１】
[0056]  １つまたは複数のＰＵを有するリーフＣＵはまた、１つまたは複数の変換ユニット（ＴＵ）を含み得る。変換ユニットは、上記で説明したように、（ＴＵ４分木構造とも呼ばれる）ＲＱＴを使用して指定され得る。例えば、分割フラグは、リーフＣＵが４つの変換ユニットに分割されるかどうかを示し得る。次いで、各変換ユニットは、さらに、さらなるサブＴＵに分割され得る。ＴＵがさらに分割されないとき、そのＴＵはリーフＴＵと呼ばれることがある。概して、イントラコーディングの場合、リーフＣＵに属するすべてのリーフＴＵは同じイントラ予測モードを共有する。すなわち、概して、リーフＣＵのすべてのＴＵの予測値を計算するために同じイントラ予測モードが適用される。イントラコーディングの場合、ビデオエンコーダは、イントラ予測モードを使用して各リーフＴＵの残差値をＴＵに対応するＣＵの一部と元のブロックとの間の差分として計算し得る。ＴＵは、必ずしもＰＵのサイズに制限されるとは限らない。従って、ＴＵはＰＵよりも大きくまたは小さくなり得る。イントラコーディングの場合、ＰＵは、同じＣＵの対応するリーフＴＵとコロケートされ得る。いくつかの例で、リーフＴＵの最大サイズは、対応するリーフＣＵのサイズに対応し得る。
【００４２】
[0057]  さらに、リーフＣＵのＴＵはまた、残差４分木（ＲＱＴ）と呼ばれる、それぞれの４分木データ構造に関連付けられ得る。すなわち、リーフＣＵは、リーフＣＵがどのようにＴＵに区分されるかを示す４分木を含み得る。ＴＵ４分木のルートノードは概してリーフＣＵに対応し、ＣＵ４分木のルートノードは概してツリーブロック（またはＬＣＵ）に対応する。分割されないＲＱＴのＴＵはリーフＴＵと呼ばれる。概して、本開示では、特に明記しない限り、リーフＣＵおよびリーフＴＵに言及するためにそれぞれＣＵおよびＴＵという用語を使用する。
【００４３】
[0058]  ビデオシーケンスは、一般に、一連のビデオフレームまたはピクチャを含む。ピクチャグループ（ＧＯＰ）は、概して、ビデオピクチャのうちの一連の１つまたは複数を備える。ＧＯＰは、ＧＯＰ中に含まれるいくつかのピクチャを記述するシンタックスデータを、ＧＯＰのヘッダ中、ピクチャのうちの１つまたは複数のヘッダ中、または他の場所に含み得る。ピクチャの各スライスは、該当のスライスの符号化モードを記述するスライスシンタックスデータを含み得る。ビデオエンコーダ２０は、一般に、ビデオデータを符号化するために個々のビデオスライス内のビデオブロックに対して動作する。ビデオブロックは、ＣＵ内のコーディングノードに対応し得る。ビデオブロックは、固定サイズまたは可変サイズを有し得、かつ指定のコーディング規格に応じてサイズが異なり得る。
【００４４】
[0059]  一例として、ＨＭは、様々なＰＵサイズでの予測をサポートする。特定のＣＵのサイズが２Ｎ×２Ｎであると仮定すると、ＨＭは、２Ｎ×２ＮまたはＮ×ＮのＰＵサイズでのイントラ予測をサポートし、２Ｎ×２Ｎ、２Ｎ×Ｎ、Ｎ×２Ｎ、またはＮ×Ｎの対称的なＰＵサイズでのインター予測をサポートする。ＨＭはまた、２Ｎ×ｎＵ、２Ｎ×ｎＤ、ｎＬ×２Ｎ、およびｎＲ×２ＮのＰＵサイズでのインター予測のための非対称区分をサポートする。非対称区分で、ＣＵの一方向は区分されないが、他の方向は２５％と７５％とに区分される。２５％の区分に対応するＣＵの部分は、「ｎ」とその後ろに付く「Ｕｐ」、「Ｄｏｗｎ」、「Ｌｅｆｔ」、または「Ｒｉｇｈｔ」という表示によって示される。従って、例えば、「２Ｎ×ｎＵ」は、上部の２Ｎ×０．５Ｎ  ＰＵと下部の２Ｎ×１．５Ｎ  ＰＵとで水平方向に区分された２Ｎ×２Ｎ  ＣＵを指す。
【００４５】
[0060]  本開示で、「Ｎ×Ｎ（NxN）」および「Ｎ×Ｎ（N by N）」は、垂直寸法および水平寸法に関するビデオブロックのピクセル寸法、例えば、１６×１６（16x16）ピクセルまたは１６×１６（16 by 16）ピクセルを指すために互換的に使用され得る。概して、１６×１６ブロックは、垂直方向に１６ピクセルを有し（ｙ＝１６）、水平方向に１６ピクセルを有する（ｘ＝１６）。同様に、Ｎ×Ｎブロックは、概して、垂直方向にＮピクセルを有し、水平方向にＮピクセルを有し、但し、Ｎは非負整数値を表す。ブロック中のピクセルは行と列で構成され得る。さらに、ブロックは、必ずしも、水平方向に垂直方向と同じ数のピクセルを有する必要はない。例えば、ブロックはＮ×Ｍピクセルを備え得、但し、Ｍは必ずしもＮに等しいとは限らない。
【００４６】
[0061]  ＣＵのＰＵを使用したイントラ予測コーディングまたはインター予測コーディングの後、ビデオエンコーダ２０は、ＣＵのＴＵのための残差データを計算し得る。ＰＵは、（ピクセル領域(pixel domain)とも呼ばれる）空間領域(spatial domain)において予測ピクセルデータを生成する方法またはモードを記述するシンタックスデータを備え得、ＴＵは、変換、例えば、残差ビデオデータへの離散コサイン変換（ＤＣＴ：discrete cosine transform）、整数変換(integer transform)、ウェーブレット変換(wavelet transform)、または概念的に同様の変換の適用後に、変換領域(transform domain)において係数を備え得る。残差データは、符号化されていないピクチャのピクセルと、ＰＵに対応する予測値との間のピクセル差分に対応し得る。ビデオエンコーダ２０は、ＣＵのための残差データを含むＴＵを形成し、次いで、ＴＵを変換して、ＣＵの変換係数(transform coefficients)を生成し得る。
【００４７】
[0062]  変換係数を生成するための任意の変換の後に、ビデオエンコーダ２０は、変換係数の量子化を行い得る。量子化は、概して、さらなる圧縮を提供する、係数を表すために使用されるデータの量をできるだけ低減するために変換係数を量子化するプロセスを指す。量子化プロセスは、係数の一部または全部に関連するビット深度(bit depth)を低減し得る。例えば、量子化中にｎビット値がｍビット値に切り捨てられ得、但し、ｎはｍよりも大きい。
【００４８】
[0063]  量子化の後に、ビデオエンコーダは、変換係数を走査して、量子化変換係数を含む２次元行列から１次元ベクトルを生成し得る。走査は、より高いエネルギー（従ってより低い周波数）の係数をアレイの前方に配置し、より低いエネルギー（従ってより高い周波数）の係数をアレイの後方に配置するように設計され得る。いくつかの例で、ビデオエンコーダ２０は、エントロピー符号化され得るシリアル化ベクトルを生成するために、量子化変換係数を走査するために予め定義された走査順序を利用し得る。他の例で、ビデオエンコーダ２０は適応型走査を行い得る。量子化変換係数を走査して１次元ベクトルを形成した後に、ビデオエンコーダ２０は、例えば、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ：context-adaptive variable length coding）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ：context-adaptive binary arithmetic coding）、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ：syntax-based context-adaptive binary arithmetic coding）、確率間隔区分エントロピー（ＰＩＰＥ：Probability Interval Partitioning Entropy）コーディング、または別のエントロピー符号化方法に従って１次元ベクトルをエントロピー符号化し得る。ビデオエンコーダ２０はまた、ビデオデータを復号する際にビデオデコーダ３０が使用するための符号化ビデオデータに関連するシンタックス要素をエントロピー符号化し得る。
【００４９】
[0064]  ＣＡＢＡＣを行うために、ビデオエンコーダ２０は、送信されるべきシンボルに、コンテキストモデル内のコンテキストを割り当て得る。コンテキストは、例えば、シンボルの隣接値が非０であるか否かに関係し得る。ＣＡＶＬＣを行うために、ビデオエンコーダ２０は、送信されるべきシンボルのための可変長コードを選択し得る。ＶＬＣにおけるコードワードは、比較的短いコードが優勢シンボル(more probable symbols)に対応し、より長いコードが劣勢シンボル(less probable symbols)に対応するように構成され得る。このようにして、ＶＬＣの使用は、例えば、送信されるべき各シンボルのために等長コードワード(equal-length codewords)を使用するよりも、ビット節約を達成し得る。確率判断は、シンボルに割り当てられたコンテキストに基づき得る。
【００５０】
[0065]  ビデオエンコーダ２０およびビデオデコーダ３０は、本開示の技法のいずれかまたはすべてを行うように構成され得る。例えば、ビデオエンコーダ２０およびビデオデコーダ３０は、動き推定領域（ＭＥＲ）を使用して並列にビデオデータをコーディングするように構成され得る。本開示の技法によれば、ビデオエンコーダ２０およびビデオデコーダ３０が、現在コーディングされているＰＵよりも大きいＭＥＲを使用するとき、ビデオエンコーダ２０およびビデオデコーダ３０は、現在のＭＥＲ内のブロックではなく、そのＭＥＲに隣接するブロックの空間的視差ベクトルに基づいてＰＵのビュー間予測を行うように構成され得る。そのような技法の例が、図８〜図１０に関して以下でより詳細に説明される。
【００５１】
[0066]  追加または代替として、ビデオエンコーダ２０およびビデオデコーダ３０が、ＰＵレベルでビュー間予測を行うように構成されるとき、それでもビデオエンコーダ２０およびビデオデコーダ３０は、ＰＵを包含するＣＵのための視差ベクトル生成を行い得る。そのような技法の例が、図１１に関して以下でより詳細に説明される。同様に、ビデオエンコーダ２０およびビデオデコーダ３０は、ＰＵのためのより正確な視差ベクトルを生成するために、ＣＵレベルで生成された視差ベクトルを改良するように構成され得る。例えば、ビデオエンコーダ２０およびビデオデコーダ３０は、改良のために、現在のＰＵを包含するＣＵの空間的隣接ブロックを確認できる。別の例として、ビデオエンコーダ２０およびビデオデコーダ３０は、改良のために、現在のＰＵを包含するＭＥＲの空間的隣接ブロックを確認できる。また別の例として、ビデオエンコーダ２０およびビデオデコーダ３０は、改良のために、現在のＰＵの空間的隣接ブロックを確認できる。
【００５２】
[0067]  従って、ビデオエンコーダ２０は、視差動きベクトルを使用して、包含ブロック内のビデオデータの現在のブロックを符号化するように構成され得る。例えば、ビデオエンコーダ２０は、ビュー間予測を使用して現在のブロックを符号化することが最良の、または少なくとも許容できるレートひずみ最適化（ＲＤＯ：rate-distortion optimization）特性をもたらすと判断し得る。その上、現在のブロックは、動き推定領域（ＭＥＲ）などの包含ブロック内で生じ得る。代替として、現在のブロックは、ＣＵ内で生じるＰＵを備え得る。
【００５３】
[0068]  いずれの場合にも、現在のブロックの隣接ブロックも包含ブロック内にあるとの判断に基づいて、ビデオエンコーダ２０は、候補リスト中で隣接ブロックを、包含ブロックの外にあって包含ブロックに隣接するブロックで代替できる。すなわち、動きベクトル符号化（例えば、ビュー間予測の場合の視差動きベクトル符号化）を行う目的で、ビデオエンコーダ２０は、動きベクトル予測子候補のリストを含む候補リストを構成できる。概して、ビデオエンコーダ２０は、リストに含める候補動きベクトル予測子として、現在のブロックの空間的隣接ブロックおよび／または時間的隣接ブロックから動きベクトルを選択できる。本開示の技法によれば、ビデオエンコーダ２０は、包含ブロック内のビデオデータの並列符号化（および同様に、並列復号）を可能にするために、包含ブロック内のブロックの動きベクトルを、包含ブロック外のブロックの動きベクトルで代替できる。
【００５４】
[0069]  ビデオエンコーダ２０は次いで、候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択できる。例えば、ビデオエンコーダ２０は、（例えば、ベクトル差分計算によって割り出されるような）現在のブロックの視差動きベクトルと最もぴったり一致するリスト中の候補動きベクトル予測子のうちの１つを選択できる。ビデオエンコーダ２０は次いで、視差動きベクトル予測子に基づいて視差動きベクトルを符号化できる。例えば、ビデオエンコーダ２０は、マージモード(merge mode)または高度動きベクトル予測（ＡＭＶＰ：advanced motion vector prediction）技法を使用して視差動きベクトルを符号化し得る。
【００５５】
[0070]  マージモードで、ビデオエンコーダ２０は、動き情報の取り出し元になる隣接ブロックを識別するマージインデックス値を、その隣接ブロックの動き情報を現在のブロックに関する動き情報としてビデオデコーダ３０に使用させるために、シグナリングできる。本開示の技法によれば、シグナリングされた隣接ブロックが包含ブロックの外にある場合、そのようなシグナリングは、ビデオデコーダ３０に、現在のブロックに関する動き情報として使用するために、代替ブロックに関する動き情報を取り出すことを促し得る。マージインデックスに対応するブロックから継承された動き情報は、参照ピクチャリストと参照ピクチャに対応する参照ピクチャインデックスとをさらに含み得る。ＨＥＶＣに対する高レベルシンタックス（ＨＬＳ）のみの拡張を利用するために、ビデオエンコーダ２０は、長期参照ピクチャとしてビュー間参照ピクチャを、および短期参照ピクチャとしてビュー内参照ピクチャ(intra-view reference pictures)をシグナリングするように構成されてよく、この場合に参照ピクチャインデックスおよび参照ピクチャリストのシグナリングは、単一のビューコーディングのためのＨＥＶＣの技法と実質的に同じまたは同一のままであり得る。
【００５６】
[0071]  ＡＭＶＰで、ビデオエンコーダ２０は、マージモードの場合のマージインデックスと実質的に同じ方法で隣接ブロックに対応し得る、動き情報の取り出し元になる隣接ブロックを識別するＡＭＶＰインデックスをシグナリングできる。但し、ビデオエンコーダ２０はさらに、視差動きベクトルとＡＭＶＰインデックスに対応するブロックの動きベクトル予測子との間の差分を表す動きベクトル差分値を符号化できる。本開示の技法によれば、ＡＭＶＰインデックスが、同じく包含ブロック内にある現在のブロックの隣接ブロックに対応するとき、動きベクトル予測子を定義する動き情報は、実際には、包含ブロック外のブロックから取り出され得る。ビデオエンコーダ２０はまた、参照ピクチャリストと参照インデックスとを表すデータをシグナリングし得る。その上、ビデオデコーダ３０は、視差動きベクトルを使用して現在のブロックを符号化できる。
【００５７】
[0072]  従って、ビデオデコーダ３０は、ビデオエンコーダ２０の技法とは実質的に逆の技法を行うように構成され得る。例えば、ビデオデコーダ３０は、包含ブロック内にあるビデオデータの現在のブロックが視差動きベクトルを使用して符号化されていると判断することと、現在のブロックの隣接ブロックも包含ブロック内にあるとの判断に基づいて、候補リスト中で隣接ブロックを、包含ブロックの外にあって包含ブロックに隣接するブロックで代替することと、候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、視差動きベクトル予測子に基づいて視差動きベクトルを復号することとを行うように構成され得る。
【００５８】
[0073]  例えば、ビデオデコーダ３０は、現在のブロックが視差動きベクトルを使用して符号化されていることを示すシグナリングデータを受信し得る。ビデオデコーダ３０はさらに、包含ブロック内の現在のブロックの位置、並びに現在のブロックの隣接ブロックの位置を、候補リストに隣接ブロックを追加するか、または包含ブロックの外にあって包含ブロックに隣接するブロックを追加するかを決定するために、判断できる。
【００５９】
[0074]  ビデオデコーダ３０は、視差動きベクトルを復号するために隣接ブロックのうちのいずれを使用するかを識別する識別子（例えば、マージインデックスまたはＡＭＶＰインデックス）を受信し得る。本開示の技法によれば、シグナリングされた隣接ブロックが、現在のブロックを包含する包含ブロック内にある場合、ビデオデコーダ３０は、実際には、包含ブロックの外にある包含ブロックの隣接ブロックから動き情報を取り出し得る。ビデオデコーダ３０は次いで、識別子に対応するブロックから取り出された動きベクトル予測子を使用して視差動きベクトルを復号できる。同様に、ビデオデコーダ３０は、視差動きベクトルを使用して現在のブロックを復号できる。
【００６０】
[0075]  ビデオエンコーダ２０およびビデオデコーダ３０はそれぞれ、適用可能なとき、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理回路、ソフトウェア、ハードウェア、ファームウェアまたはそれらの任意の組合せなど、様々な好適なエンコーダまたはデコーダ回路のいずれかとして実装され得る。ビデオエンコーダ２０およびビデオデコーダ３０の各々は１つまたは複数のエンコーダまたはデコーダ中に含まれ得、そのいずれも複合ビデオエンコーダ／デコーダ（コーデック）の一部として統合され得る。ビデオエンコーダ２０および／またはビデオデコーダ３０を含むデバイスは、集積回路、マイクロプロセッサ、および／またはセルラー電話などのワイヤレス通信デバイスを備え得る。
【００６１】
[0076]  図２は、ビュー間予測のための視差ベクトルを生成するための技法を実装し得るビデオエンコーダ２０の一例を示すブロック図である。ビデオエンコーダ２０は、ビデオスライス内のビデオブロックの時間的イントラコーディングと時間的インターコーディングとビュー間コーディングとを行い得る。時間的イントラコーディングは、所与のビデオフレームまたはピクチャ内のビデオの空間的冗長性を低減または除去するために空間的予測に依拠する。時間的インターコーディングは、ビデオシーケンスの隣接フレームまたはピクチャ内のビデオの時間的冗長性を低減または除去するために時間的予測に依拠する。ビュー間コーディングは、パースペクティブによって水平にシフトされ得る別のビューからのピクチャの冗長性を低減または除去するためにビュー間予測に依拠する。時間的イントラモード（Ｉモード）は、いくつかの空間ベースのコーディングモードのいずれかを指し得る。単方向予測（Ｐモード）または双方向予測（Ｂモード）などの時間的インターモードは、いくつかの時間ベースのコーディングモードのいずれかを指し得る。ビュー間モードは、視差動きベクトルまたは他のそのようなビュー間コーディング技法の使用を指し得る。一般に、ビュー間予測は、時間的インターコーディングと実質的に同様の方法で行われ得る。
【００６２】
[0077]  図２に示すように、ビデオエンコーダ２０は、符号化されるべきビデオフレーム内の現在のビデオブロックを受信する。図２の例で、ビデオエンコーダ２０は、モード選択ユニット４０と、参照ピクチャメモリ６４と、加算器５０と、変換処理ユニット５２と、量子化ユニット５４と、エントロピーエンコーディングユニット５６とを含む。モード選択ユニット４０は、今度は、動き補償ユニット４４と、動き推定ユニット４２と、イントラ予測ユニット４６と、パーティションユニット４８とを含む。ビデオブロック再構成のために、ビデオエンコーダ２０はまた、逆量子化ユニット５８と、逆変換ユニット６０と、加算器６２とを含む。再構成されたビデオからブロッキネスアーティファクト(blockiness artifacts)を除去するためにブロック境界をフィルタ処理するデブロッキングフィルタ(deblocking filter)（図２に図示せず）も含まれ得る。所望される場合、デブロッキングフィルタは、一般に、加算器６２の出力をフィルタ処理することになる。また、デブロッキングフィルタに加えて追加のフィルタ（ループ内またはループ後）が使用され得る。そのようなフィルタは、簡潔のために示されていないが、所望される場合、（ループ内フィルタとして）加算器５０の出力をフィルタ処理し得る。
【００６３】
[0078]  符号化プロセス中に、ビデオエンコーダ２０は、コーディングされるべきビデオフレームまたはスライスを受信する。フレームまたはスライスは複数のビデオブロックに分割され得る。動き推定ユニット４２および動き補償ユニット４４は、時間的予測を行うために、１つまたは複数の参照フレーム中の１つまたは複数のブロックに対して、受信されたビデオブロックのインター予測コーディング（時間的かビュー間か）を行う。イントラ予測ユニット４６は、代替的に、空間的予測を行うために、コーディングされるべきブロックと同じフレームまたはスライス中の１つまたは複数の隣接ブロックに対して受信されたビデオブロックのイントラ予測コーディングを行い得る。ビデオエンコーダ２０は、例えば、ビデオデータのブロックごとに適切なコーディングモードを選択するために、複数のコーディングパスを行い得る。
【００６４】
[0079]  その上、パーティションユニット４８は、前のコーディングパスにおける前の区分方式(previous partitioning schemes)の評価に基づいて、ビデオデータのブロックをサブブロックに区分し得る。例えば、パーティションユニット４８は、初めにフレームまたはスライスをＬＣＵに区分し、レートひずみ分析（例えば、レートひずみ最適化）に基づいてＬＣＵの各々をサブＣＵに区分し得る。モード選択ユニット４０は、ＬＣＵをサブＣＵに区分することを示す４分木データ構造をさらに生成し得る。４分木のリーフノードＣＵは、１つまたは複数のＰＵおよび１つまたは複数のＴＵを含み得る。
【００６５】
[0080]  モード選択ユニット４０は、例えば、誤差結果に基づいて、コーディングモード、（時間的イントラコーディング、時間的インターコーディング、またはビュー間コーディング）のうちの１つを選択でき、残差ブロックデータを生成するために、得られたイントラコーディングされたブロックまたはインターコーディングされた（時間的またはビュー間）ブロックを加算器５０に与え、かつ参照フレームとして使用するための符号化されたブロックを復元するために、得られたイントラコーディングされたブロックまたはインターコーディングされたブロックを加算器６２に与える。モード選択ユニット４０はまた、動きベクトル（例えば、時間的動きベクトルまたは視差動きベクトル）、イントラモードインジケータ、パーティション情報、および他のそのようなシンタックス情報などのシンタックス要素をエントロピー符号化ユニット５６に与える。
【００６６】
[0081]  動き推定ユニット４２および動き補償ユニット４４は、高度に統合され得るが、概念的な目的のために別々に示してある。動き推定ユニット４２によって行われる動き推定は、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである。視差動きベクトルは、一般に、水平シフト、すなわち、異なるビューのやや異なるカメラパースペクティブから生じる、異なるビューからの対応するピクチャの２つのブロックの間の視差を表す。動きベクトルは、例えば、現在のフレーム（または他のコード化ユニット）内でコーディングされている現在のブロックに対する参照フレーム（または他のコード化ユニット）内の予測ブロックに対する現在のビデオフレームまたはピクチャ内のビデオブロックのＰＵの変位を示し得る。予測ブロックは、絶対値差分和（ＳＡＤ：sum of absolute difference）、２乗差分和（ＳＳＤ：sum of square difference）、または他の差分メトリックによって判断され得るピクセル差分に関して、コーディングされるべきブロックにぴったり一致することがわかるブロックである。いくつかの例で、ビデオエンコーダ２０は、参照ピクチャメモリ６４に記憶された参照ピクチャのサブ整数ピクセル位置(sub-integer pixel positions)の値を計算し得る。例えば、ビデオエンコーダ２０は、参照ピクチャの１／４ピクセル位置、１／８ピクセル位置、または他の分数ピクセル位置(fractional pixel positions)の値を補間し得る。従って、動き推定ユニット４２は、フルピクセル位置と分数ピクセル位置とに対する動き探索を行い、分数ピクセル精度で動きベクトルを出力し得る。
【００６７】
[0082]  動き推定ユニット４２は、ＰＵの位置を参照ピクチャの予測ブロックの位置と比較することによって、インターコード化（時間的またはビュー間）スライスにおけるビデオブロックのＰＵのための動きベクトルを計算する。参照ピクチャは、第１の参照ピクチャリスト（リスト０）または第２の参照ピクチャリスト（リスト１）から選択され得、それらの参照ピクチャリストの各々は、参照ピクチャメモリ６４に記憶された１つまたは複数の参照ピクチャを識別する。いくつかの例で、ビュー間参照ピクチャは長期参照ピクチャとしてシグナリングされてよく、時間的参照ピクチャは短期参照ピクチャとしてシグナリングされてよい。代替として、ビュー間参照ピクチャは短期参照ピクチャとしてシグナリングされてよく、時間的参照ピクチャは長期参照ピクチャとしてシグナリングされてよい。動き推定ユニット４２は、計算された動きベクトルをエントロピー符号化ユニット５６と動き補償ユニット４４とに送る。
【００６８】
[0083]  動き補償ユニット４４によって行われる動き補償は、動き推定ユニット４２によって判断された動きベクトルに基づいて予測ブロックをフェッチまたは生成することに関与し得る。この場合も、いくつかの例で、動き推定ユニット４２および動き補償ユニット４４は機能的に統合され得る。現在のビデオブロックのＰＵについての動きベクトルを受信すると、動き補償ユニット４４は、動きベクトルが参照ピクチャリストのうちの１つにおいて指す予測ブロックの位置を特定し得る。加算器５０は、以下で説明するように、コーディングされている現在のビデオブロックのピクセル値から予測ブロックのピクセル値を減算し、ピクセル差分値を形成することによって、残差ビデオブロックを形成する。概して、動き推定ユニット４２はルーマ成分に対して動き推定を行い、かつ動き補償ユニット４４は、クロマ成分とルーマ成分の両方のためにルーマ成分に基づいて計算された動きベクトルを使用する。モード選択ユニット４０はまた、ビデオスライスのビデオブロックを復号する際にビデオデコーダ３０が使用するためのビデオブロックとビデオスライスとに関連するシンタックス要素を生成し得る。
【００６９】
[0084]  さらに、ビデオエンコーダ２０は、例えば、マージモードまたはＡＭＶＰのうちの１つを使用して、動きベクトルを符号化できる。本開示の技法によれば、現在のブロックが包含ブロック（例えば、ＭＥＲ）内に包含される場合、包含ブロックが並列にコーディングされることが可能な領域を定義すると仮定すると、現在のブロックの隣接ブロックが包含ブロック内にあるとき、ビデオエンコーダ２０は、現在のブロックに包含ブロックの隣接ブロックの動きベクトルを適用できる。すなわち、現在のブロックが包含ブロック内にあるとき、また現在のブロックに隣接するブロックも包含ブロック内にあるとき、ビデオエンコーダ２０は、動きベクトルコーディングの目的で、現在のブロックの隣接ブロックを、包含ブロックの外にあって包含ブロックに隣接するブロックで代替できる。
【００７０】
[0085]  本開示による動きベクトルコーディング技法の説明の目的で、「隣接ブロック」という用語は、現在のブロックを包含する包含ブロックの外に隣接ブロックがあるときには、現在のブロックに隣接するブロックを指すと理解されるべきであるが、別様に隣接ブロックが包含ブロック内にあるときには、包含ブロックに隣接し、包含ブロックの外にあるブロックを指すと理解されるべきである。マージモードで、ビデオエンコーダ２０は、現在のブロック（例えば、現在のＰＵ）に隣接ブロックの動きベクトルを適用できる。ＡＭＶＰモードで、ビデオエンコーダ２０は、現在のブロックの動きベクトルと隣接ブロックの動きベクトルとの間の動きベクトル差分を計算でき、エントロピー符号化ユニット５６は、動きベクトル差分を表すデータを符号化できる。その上、マージモードで、エントロピー符号化ユニット５６は、隣接ブロックを識別するマージインデックスを定義するデータを符号化でき、ＡＭＶＰで、エントロピー符号化ユニット５６は、隣接ブロックを識別するＡＭＶＰインデックスを定義するデータを符号化できる。マージインデックスまたはＡＭＶＰインデックスは、隣接ブロック識別子の例を表す。
【００７１】
[0086]  より詳細には、ビデオエンコーダ２０は、現在のブロック（例えば、現在のＰＵ）の１つまたは複数の空間ネイバーに関する識別子を含む候補リストを構成できる。空間ネイバーの例は以下の図５に示されている。但し、現在のブロックが包含ブロック内にある（また包含ブロックが、並列コーディングを許容する領域を定義する）と仮定すると、ビデオエンコーダ２０は、同じく包含ブロック内にある現在のブロックの隣接ブロックのいずれかに対する代替を決定できる。代替方式の例は図８〜図１１に示されている。
【００７２】
[0087]  概して、ビデオエンコーダ２０は、包含ブロック内にある現在のブロックの隣接ブロックと同様に位置付けられる包含ブロック外のブロックで代替できる。例えば、いくつかの例で、包含ブロック内の隣接ブロックが現在のブロックの特定の隅にある場合、代替ブロックは、包含ブロックの同じ隅にあり得る。別の例として、隣接ブロックが現在のブロックの左側にある場合、代替ブロックは、同じ垂直位置であるが、包含ブロックの外であるが包含ブロックの隣に代替ブロックを配置する水平位置を有し得る。同様に、隣接ブロックが現在のブロックの上側にある場合、代替ブロックは、同じ水平位置であるが、包含ブロックの外であるが包含ブロックの隣に代替ブロックを配置する垂直位置を有し得る。ビデオエンコーダ２０は、包含ブロック外の隣接ブロックを表すデータを、隣接ブロックが包含ブロック内にあって現在のブロックに隣接しているかのように符号化できる。但し、図３に関して以下で説明するように、ビデオデコーダ３０は、隣接ブロックが本来であれば包含ブロック内にある場合に、コード化データが包含ブロック外の隣接ブロックに対応すると判断するように構成され得る。
【００７３】
[0088]  イントラ予測ユニット４６は、上記で説明したように、動き推定ユニット４２および動き補償ユニット４４によって行われるインター予測の代替として、現在のブロックをイントラ予測し得る。特に、イントラ予測ユニット４６は、現在のブロックを符号化するために使用すべきイントラ予測モードを判断し得る。いくつかの例で、イントラ予測ユニット４６は、例えば、別個の符号化パス中に、様々なイントラ予測モードを使用して現在のブロックを符号化し得、イントラ予測ユニット４６（または、いくつかの例で、モード選択ユニット４０）は、テストされたモードから使用するのに適切なイントラ予測モードを選択し得る。
【００７４】
[0089]  例えば、イントラ予測ユニット４６は、様々なテストされたイントラ予測モードのためのレートひずみ分析を使用してレートひずみ値を計算し、テストされたモードの中で最良のレートひずみ特性を有するイントラ予測モードを選択し得る。レートひずみ分析は、概して、符号化ブロックと、符号化ブロックを生成するために符号化された元の符号化されていないブロックとの間のひずみ（または誤差）の量、並びに符号化ブロックを生成するために使用されるビットレート（すなわち、ビット数）を判断する。イントラ予測ユニット４６は、どのイントラ予測モードがブロックについて最良のレートひずみ値を呈するかを判断するために、様々な符号化ブロックのひずみおよびレートから比率を計算し得る。
【００７５】
[0090]  ブロックのためのイントラ予測モードを選択した後に、イントラ予測ユニット４６は、ブロックのための選択されたイントラ予測モードを示す情報をエントロピー符号化ユニット５６に提供し得る。エントロピー符号化ユニット５６は、選択されたイントラ予測モードを示す情報を符号化し得る。ビデオエンコーダ２０は、送信ビットストリーム中に、複数のイントラ予測モードインデックステーブルおよび複数の変更されたイントラ予測モードインデックステーブル（コードワードマッピングテーブルとも呼ばれる）と、様々なブロックの符号化コンテキストの定義と、コンテキストの各々について使用すべき、最確イントラ予測モード、イントラ予測モードインデックステーブル、および変更されたイントラ予測モードインデックステーブルの指示とを含み得る構成データを含み得る。
【００７６】
[0091]  ビデオエンコーダ２０は、コーディングされている元のビデオブロックから、モード選択ユニット４０からの予測データを減算することによって残差ビデオブロックを形成する。加算器５０は、この減算演算を行う１つまたは複数の構成要素を表す。変換処理ユニット５２は、離散コサイン変換（ＤＣＴ）または概念的に同様の変換などの変換を残差ブロックに適用し、残差変換係数値を備えるビデオブロックを生成する。変換処理ユニット５２は、ＤＣＴと概念的に同様である他の変換を行い得る。ウェーブレット変換、整数変換、サブバンド変換または他のタイプの変換も使用され得る。いずれの場合も、変換処理ユニット５２は、変換を残差ブロックに適用し、残差変換係数のブロックを生成する。変換は、残差情報をピクセル値領域から周波数領域などの変換領域に変換し得る。変換処理ユニット５２は、得られた変換係数を量子化ユニット５４に送り得る。量子化ユニット５４は、ビットレートをさらに低減するために変換係数を量子化する。量子化プロセスは、係数の一部または全部に関連するビット深度を低減し得る。量子化の程度は、量子化パラメータを調整することによって変更され得る。いくつかの例で、量子化ユニット５４は、次いで、量子化変換係数を含む行列の走査を行い得る。代替的に、エントロピー符号化ユニット５６が走査を行い得る。
【００７７】
[0092]  量子化の後、エントロピー符号化ユニット５６は、量子化変換係数をエントロピーコーディングする。例えば、エントロピー符号化ユニット５６は、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ：context adaptive variable length coding）、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ：syntax-based context-adaptive binary arithmetic coding）、確率間隔区分エントロピー（ＰＩＰＥ：probability interval partitioning entropy）コーディングまたは別のエントロピーコーディング技法を行い得る。コンテキストベースのエントロピーコーディングの場合、コンテキストは、隣接するブロックに基づき得る。エントロピーコーディングユニット５６によるエントロピーコーディングの後、符号化されたビットストリームは、別のデバイス（例えば、ビデオデコーダ３０）に送信されるか、または後で送信するかまたは取り出すためにアーカイブされ得る。
【００７８】
[0093]  逆量子化ユニット５８および逆変換ユニット６０は、それぞれ逆量子化および逆変換を適用して、例えば参照ブロックとして後で使用するために、ピクセル領域中で残差ブロックを再構成する。動き補償ユニット４４は、残差ブロックを参照ピクチャメモリ６４のフレームのうちの１つの予測ブロックに加算することによって参照ブロックを計算し得る。動き補償ユニット４４はまた、再構成された残差ブロックに１つまたは複数の補間フィルタを適用して、動き推定において使用するサブ整数ピクセル値を計算し得る。加算器６２は、再構成された残差ブロックを、動き補償ユニット４４によって生成された動き補償予測ブロックに加算して、参照ピクチャメモリ６４に記憶するための再構成されたビデオブロックを生成する。再構成されたビデオブロックは、後続のビデオフレーム中のブロックをインターコーディングするために動き推定ユニット４２および動き補償ユニット４４によって参照ブロックとして使用され得る。
【００７９】
[0094]  図２のビデオエンコーダ２０は、視差動きベクトルを使用して、包含ブロック内のビデオデータの現在のブロックを符号化することと、現在のブロックの隣接ブロックも包含ブロック内にあるとの判断に基づいて、候補リスト中で隣接ブロックを、包含ブロックの外にあって包含ブロックに隣接するブロックで代替することと、候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、視差動きベクトル予測子に基づいて視差動きベクトルを符号化することとを行うように構成されたビデオエンコーダの例を表している。
【００８０】
[0095]  図３は、ビュー間予測のための視差ベクトルを生成するための技法を実装し得るビデオデコーダ３０の一例を示すブロック図である。図３の例で、ビデオデコーダ３０は、エントロピー復号ユニット７０と、動き補償ユニット７２と、イントラ予測ユニット７４と、逆量子化ユニット７６と、逆変換ユニット７８と、参照ピクチャメモリ８２と、加算器８０とを含む。ビデオデコーダ３０は、いくつかの例では、ビデオエンコーダ２０（図２）に関して説明した符号化パスとは概して逆の復号パスを行い得る。動き補償ユニット７２は、エントロピー復号ユニット７０から受信された時間的または視差動きベクトルに基づいて予測データを生成し得、イントラ予測ユニット７４は、エントロピー復号ユニット７０から受信されたイントラ予測モードインジケータに基づいて予測データを生成し得る。
【００８１】
[0096]  復号プロセス中に、ビデオデコーダ３０は、ビデオエンコーダ２０から、符号化ビデオスライスのビデオブロックと、関連するシンタックス要素とを表す符号化ビデオビットストリームを受信する。ビデオデコーダ３０のエントロピー復号ユニット７０は、量子化係数、動きベクトルまたはイントラ予測モードインジケータ、および他のシンタックス要素を生成するためにビットストリームをエントロピー復号する。エントロピー復号ユニット７０は、動きベクトル（時間的および／または視差）とインター予測（時間的および／または視差）に関係する他の予測シンタックス要素とを動き補償ユニット７２に転送する。ビデオデコーダ３０は、ビデオスライスレベルおよび／またはビデオブロックレベルでシンタックス要素を受信し得る。
【００８２】
[0097]  ビデオスライスがイントラコード化（Ｉ）スライスとしてコーディングされるとき、イントラ予測ユニット７４は、シグナリングされたイントラ予測モードと、現在フレームまたはピクチャの、前に復号されたブロックからのデータとに基づいて、現在のビデオスライスのビデオブロックのための予測データを生成し得る。ビデオフレームがインターコード化（すなわち、時間的Ｂ、時間的Ｐまたはビュー間）スライスとしてコーディングされるとき、動き補償ユニット７２は、エントロピー復号ユニット７０から受信された動きベクトルと他のシンタックス要素とに基づいて、現在のビデオスライスのビデオブロックのための予測ブロックを生成する。予測ブロックは、参照ピクチャリストのうちの１つ内の参照ピクチャのうちの１つから生成され得る。ビデオデコーダ３０は、参照ピクチャメモリ８２に記憶された参照ピクチャに基づいて、デフォルトの構成技法を使用して、参照フレームリスト、すなわち、リスト０およびリスト１を構成し得る。
【００８３】
[0098]  動き補償ユニット７２は、動きベクトルと他のシンタックス要素とをパースすることによって現在のビデオスライスのビデオブロックのための予測情報を判断し、その予測情報を使用して、復号されている現在のビデオブロックのための予測ブロックを生成する。例えば、動き補償ユニット７２は、ビデオスライスのビデオブロックをコーディングするために使用される予測モード（例えば、イントラ予測、時間的インター予測、またはビュー間予測）と、インター予測スライスタイプ（例えば、Ｂスライス、Ｐスライス、またはＧＰＢスライス）と、スライスの参照ピクチャリストのうちの１つまたは複数のための構成情報と、スライスの各インター符号化ビデオブロックのための動きベクトルと、スライスの各インターコード化ビデオブロックのためのインター予測ステータスと、現在のビデオスライス中のビデオブロックを復号するための他の情報とを判断するために、受信されたシンタックス要素のいくつかを使用する。
【００８４】
[0099]  本開示の技法によれば、動き補償ユニット７２は、現在のブロックに関する動き情報を再生する方法を示すシンタックス要素を受信し得る。動き補償ユニット７２は、現在のブロックに関する動き情報を復号するために使用される動き情報の取り出し元になる空間的隣接ブロックまたは時間的隣接ブロックの識別子を示す１つまたは複数のシンタックス要素を受信し得る。そのようなシンタックス要素は、例えば、マージインデックスまたはＡＭＶＰインデックスを含み得る。現在のブロックは、包含ブロック内にあることがあり（例えば、現在のブロックが、ＭＥＲ内のＣＵもしくはＰＵまたはＣＵ内のＰＵを備え得る場合）、シンタックス要素によって示される空間的隣接ブロックは、同じく包含ブロック内にある現在のブロックの隣接ブロックに対応し得る。
【００８５】
[0100]  そのような場合、本開示の技法によれば、動き補償ユニット７２は、（識別子が、シンタックス要素のうちの１つ、例えばマージインデックスまたはＡＭＶＰインデックスに対応し得る場合）識別子によって示される現在のブロックの隣接ブロックを、包含ブロック外にある包含ブロックの隣接ブロックで代替できる。例えば、識別子が現在のブロックの隅にある隣接ブロックに対応する場合、動き補償ユニット７２は、例えば、図８に関して後述するように、包含ブロックの対応する隅にあるブロックで代替できる。代替として、識別子が現在のブロックの隅にある隣接ブロックに対応する場合、動き補償ユニット７２は、例えば、図１０に関して後述するように、同様の垂直位置または水平位置にあるが、垂直または水平にシフトされて現在のブロックの外にあるブロックで代替できる。概して、ビデオデコーダ３０は、動き情報が適切に復号され得るように、ビデオエンコーダ２０によって使用される方法と同じ方法で、現在のブロックのそのような隣接ブロックを、包含ブロックの隣接ブロックで代替するように構成され得る。
【００８６】
[0101]  より詳細には、動き補償ユニット７２は、動き情報の取り出し元になり得る１つまたは複数の候補隣接ブロック（空間的または時間的）を含む候補リストを作ることができる。本開示の技法によれば、現在のブロックの隣接ブロックが、現在のブロックを包含する包含ブロック内にあるとき、ビデオデコーダ３０は候補リスト中で、現在のブロックの隣接ブロックを、包含ブロックの隣接ブロックで代替できる。予測動き情報の取り出し元になるブロックを識別する識別子（例えば、マージインデックスまたはＡＭＶＰインデックス）は、候補リスト中のエントリに対応し得る。
【００８７】
[0102]  包含ブロックは、並列復号領域(parallel decoding region)を定義し得る。包含ブロック外のデータを使用して（例えば、マージモードまたはＡＭＶＰモードを使用して）現在のブロックに関する動き情報を予測することによって、現在のブロックに関する動き情報を復号する前に包含ブロック内の情報が復号される必要がなくなる。このようにして、動き補償ユニット７２は、包含ブロック内の２つ以上のブロックに関する動き情報を復号できる。従って、包含ブロックは、並列復号領域を定義すると言われ得る。言い換えれば、本開示の技法は、ビデオデコーダ３０が、包含ブロック内のデータを並列に復号することを可能にでき、それにより、包含ブロック内の２つ以上のブロックの実質的に同時の復号を可能にし得る。
【００８８】
[0103]  動き補償ユニット７２は、前に復号されたピクチャから、例えば、参照ピクチャメモリ８２からデータを取り出すために復号された動きベクトルを使用し得る。動き補償ユニット７２はまた、補間フィルタに基づいて補間を行い得る。動き補償ユニット７２は、ビデオブロックの符号化中にビデオエンコーダ２０によって使用された補間フィルタを使用して、参照ブロックのサブ整数ピクセルの補間値を計算し得る。この場合、動き補償ユニット７２は、受信されたシンタックス要素からビデオエンコーダ２０によって使用された補間フィルタを判断し、その補間フィルタを使用して予測ブロックを生成し得る。
【００８９】
[0104]  逆量子化ユニット７６は、ビットストリーム中で与えられ、エントロピー復号ユニット７０によって復号された量子化変換係数を逆量子化（inverse quantize）、すなわち、逆量子化（de-quantize）する。逆量子化プロセスは、量子化の程度を判断し、同様に、適用されるべき逆量子化の程度を判断するための、ビデオスライス中のビデオブロックごとにビデオデコーダ３０によって計算される量子化パラメータＱＰYの使用を含み得る。逆変換ユニット７８は、ピクセル領域において残差ブロックを生成するために、逆変換、例えば逆ＤＣＴ、逆整数変換、または概念的に同様の逆変換プロセスを変換係数に適用する。
【００９０】
[0145]  動き補償ユニット７２が、動きベクトルと他のシンタックス要素とに基づいて現在のビデオブロックのための予測ブロックを生成した後に、ビデオデコーダ３０は、逆変換ユニット７８からの残差ブロックを動き補償ユニット７２によって生成された対応する予測ブロックに加算することによって、復号されたビデオブロックを形成する。加算器８０は、この加算演算を行う１つまたは複数の構成要素を表す。所望される場合、ブロッキネスアーティファクトを除去するために、復号ブロックをフィルタ処理するためにデブロッキングフィルタも適用され得る。ピクセル遷移を平滑化するために、または場合によってはビデオ品質を改善するために、他のループフィルタも（コーディングループ中またはコーディングループ後のいずれかで）使用され得る。所与のフレームまたはピクチャ中の復号されたビデオブロックは、次いで、その後の動き補償のために使用される参照ピクチャを記憶する参照ピクチャメモリ８２に記憶される。参照ピクチャメモリ８２はまた、図１のディスプレイデバイス３２などのディスプレイデバイス上での後の表示のための、復号されたビデオを記憶する。
【００９１】
[0106]  このようにして、図３のビデオデコーダ３０は、包含ブロック内にあるビデオデータの現在のブロックが視差動きベクトルを使用して符号化されていると判断することと、現在のブロックの隣接ブロックも包含ブロック内にあるとの判断に基づいて、候補リスト中で隣接ブロックを、包含ブロックの外にあって包含ブロックに隣接するブロックで代替することと、候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、視差動きベクトル予測子に基づいて視差動きベクトルを復号することとを行うように構成されたビデオデコーダの例を表している。
【００９２】
[0107]  図４は、例示的なＭＶＣ予測パターンを示す概念図である。マルチビュービデオコーディング（ＭＶＣ）は、ＩＴＵ−Ｔ  Ｈ．２６４／ＡＶＣの拡張である。同様の技法が、ＨＥＶＣに適用され得る。図４の例では、（ビューＩＤ「Ｓ０」〜「Ｓ７」を有する）８つのビューが示され、１２個の時間ロケーション（「Ｔ０」〜「Ｔ１１」）がビューごとに示されている。すなわち、図４中の各行はビューに対応し、各列は時間ロケーションを示す。
【００９３】
[0108]  ＭＶＣがＨ．２６４／ＡＶＣデコーダによって復号可能である、いわゆるベースビューを有し、また、ステレオビューペアがＭＶＣによってサポートされ得るが、ＭＶＣの１つの利点は、ＭＶＣが、３Ｄビデオ入力として３つ以上のビューを使用し、複数のビューによって表されるこの３Ｄビデオを復号する例をサポートできることである。ＭＶＣデコーダを有するクライアントのレンダラは、複数のビューを用いて３Ｄビデオコンテンツを予想し得る。
【００９４】
[0109]  典型的なＭＶＣ復号順序は、タイムファーストコーディングと呼ばれる。アクセスユニットは、１つの出力時間インスタンスのためのすべてのビューのコーディングされたピクチャを含み得る。例えば、時間Ｔ０のピクチャの各々は、共通のアクセスユニットに含まれ得るが、時間Ｔ１のピクチャの各々は、第２の共通のアクセスユニットに含まれ得る、など。復号順序は、出力順序または表示順序と必ずしも同一とは限らない。
【００９５】
[0110]  図４中のフレームは、対応するフレームがイントラコード化される（すなわち、Ｉフレームである）のか、または一方向に（すなわち、Ｐフレームとして）インターコード化されるのか、もしくは複数の方向に（すなわち、Ｂフレームとして）インターコード化されるのかを指定する、文字を含む影付きブロックを使用して、図４中の各行と各列との交差部において示されている。概して、予測は矢印によって示され、ここで矢印の終点のフレームは、予測参照のために矢印の始点のオブジェクトを使用する。例えば、時間ロケーションＴ０におけるビューＳ２のＰフレームは、時間ロケーションＴ０におけるビューＳ０のＩフレームから予測される。
【００９６】
[0111]  シングルビュービデオ符号化の場合と同様に、マルチビュービデオコーディングビデオシーケンスのフレームは、異なる時間ロケーションにおけるフレームに関して予測符号化され得る。例えば、時間ロケーションＴ１におけるビューＳ０のｂフレームは、時間ロケーションＴ０におけるビューＳ０のＩフレームからそのｂフレームに向けられた矢印を有し、その矢印は、ｂフレームがＩフレームから予測されることを示す。しかしながら、さらに、マルチビュービデオ符号化のコンテキストにおいて、フレームは、ビュー間予測され得る。すなわち、ビューコンポーネントは、参照のために他のビュー中のビューコンポーネントを使用できる。ＭＶＣでは、例えば、別のビュー中のビューコンポーネントがインター予測参照であるかのように、ビュー間予測が実現される。潜在的なビュー間参照は、シーケンスパラメータセット（ＳＰＳ）ＭＶＣ拡張においてシグナリングされ、インター予測またはビュー間予測参照のフレキシブルな順序付けを可能にする参照ピクチャリスト構成プロセスによって変更され得る。
【００９７】
[0112]  Ｈ．２６４／ＡＶＣのＭＶＣ拡張で、一例として、ビュー間予測は視差動き補償によってサポートされ、視差動き補償は、Ｈ．２６４／ＡＶＣ動き補償のシンタックスを使用するが、異なるビュー中のピクチャが参照ピクチャとして使用されることが可能になる。ＭＶＣによって２つのビューのコーディングがサポートされ得、それは、一般に、立体視ビューと呼ばれる。ＭＶＣの利点のうちの１つは、ＭＶＣエンコーダが３Ｄビデオ入力として３つ以上のビューをとらえることができ、また、ＭＶＣデコーダがそのようなマルチビュー表現を復号できることである。従って、ＭＶＣデコーダをもつレンダリングデバイスは、３つ以上のビューをもつ３Ｄビデオコンテンツを予想し得る。
【００９８】
[0113]  ＭＶＣでは、同じアクセスユニット中の（すなわち、同じ時間インスタンスを有する）ピクチャ間でビュー間予測（ＩＶＰ）が可能になる。アクセスユニットは、概して、共通の時間インスタンスのためのすべてのビューコンポーネント（例えば、すべてのＮＡＬユニット）を含むデータのユニットである。従って、ＭＶＣでは、同じアクセスユニット中のピクチャ間でビュー間予測が許可される。非ベースビューのうちの１つの中のピクチャをコーディングするとき、ピクチャが異なるビュー中にあるが同じ時間インスタンス（例えば、同じＰＯＣ値）をもつ場合（従って、同じアクセスユニット中にある）、そのピクチャは参照ピクチャリストに追加され得る。ビュー間予測の参照ピクチャは、任意のインター予測の参照ピクチャと同様に、参照ピクチャリストの任意の位置に置かれ得る。
【００９９】
[0114]  マルチビュービデオコーディングのコンテキストでは、２種類の動きベクトルが存在する。一方は、時間的参照ピクチャを指す動きベクトルであり、対応するインター予測モードは、動き補償予測（ＭＣＰ：motion compensated prediction）と呼ばれる。他方は、異なるビューにおけるピクチャを指す視差動きベクトルであり、対応するビュー間予測モードは、視差補償予測（ＤＣＰ：disparity-compensated prediction）と呼ばれる。
【０１００】
[0115]  従来のＨＥＶＣでは、動きパラメータの予測に関する２つのモードが存在するが、一方はマージモードであり、他方は高度動きベクトル予測（ＡＭＶＰ）である。マージモードでは、動きパラメータ（参照ピクチャおよび動きベクトル）の候補リストが構成され、候補は、空間的隣接ブロックまたは時間的隣接ブロックからであり得る。空間的隣接ブロックおよび時間的隣接ブロックは、候補リスト、すなわち動き予測情報が選択され得る１組の候補を形成できる。従って、動き予測情報として選択される動きパラメータは、候補リストへのインデックスをコーディングすることによってシグナリングされ得る。デコーダ側で、インデックスが復号されると、インデックスが指す対応するブロックのすべての動きパラメータは、マージモードにおいて継承され得る。
【０１０１】
[0116]  ＡＭＶＰ、従って従来のＨＥＶＣで、各動き仮定のための動きベクトル予測子の候補リストは、コーディングされた参照インデックスに基づいて導出される。このリストは、同じ参照インデックスと、時間的参照ピクチャにおいてコロケートブロックの隣接ブロックの動きパラメータに基づいて導出される時間的動きベクトル予測子とに関連する隣接ブロックの動きベクトルを含む。選択された動きベクトルは、候補リストへのインデックスを送信することによってシグナリングされる。加えて、参照インデックス値および動きベクトル差分もシグナリングされる。
【０１０２】
[0117]  さらに、２つの動きデータ圧縮方法がＨＥＶＣにおいて定義されている。これらの方法については、以下で図６に関してより詳細に説明する。
【０１０３】
[0118]  図４は、ビュー間予測の様々な例を提供する。図４の例で、ビューＳ１のフレームは、ビューＳ１の異なる時間ロケーションにおけるフレームから予測されるものとして、並びに同じ時間ロケーションにおけるビューＳ０およびＳ２のフレームのうちのフレームからビュー間予測されるものとして示されている。例えば、時間ロケーションＴ１におけるビューＳ１のｂフレームは、時間ロケーションＴ０およびＴ２におけるビューＳ１のＢフレームの各々、並びに時間ロケーションＴ１におけるビューＳ０およびＳ２のｂフレームから予測される。
【０１０４】
[0119]  図４の例で、大文字の「Ｂ」および小文字の「ｂ」は、異なる符号化方法ではなく、フレーム間の異なる階層関係を示すものとする。概して、大文字の「Ｂ」フレームは、小文字の「ｂ」フレームよりも予測階層が比較的高い。図４はまた、異なるレベルの陰影を使用して予測階層の変形形態を示し、より大きい量の陰影の（すなわち、比較的より暗い）フレームは、より少ない陰影を有する（すなわち、比較的より明るい）それらのフレームよりも予測階層が高い。例えば、図４中のすべてのＩフレームは、完全陰影を用いて示されるが、Ｐフレームは、いくぶんより明るい陰影を有し、Ｂフレーム（および小文字のｂフレーム）は、互いに様々なレベルの陰影を有するが、ＰフレームおよびＩフレームの陰影よりも常に明るい。
【０１０５】
[0120]  概して、階層が比較的高いそれらのフレームが、階層が比較的低いフレームの復号中に参照フレームとして使用され得るように、予測階層が比較的高いフレームは、階層が比較的低いフレームを復号する前に復号されるべきであるという点で、予測階層はビュー順序インデックスに関係する。ビュー順序インデックスは、アクセスユニット中のビューコンポーネントの復号順序を示すインデックスである。Ｈ．２６４／ＡＶＣ（ＭＶＣ追補）の付属書類Ｈにおいて規定されているように、ビュー順序インデックスはＳＰＳ  ＭＶＣ拡張において暗示されている。ＳＰＳでは、各インデックスｉについて、対応するｖｉｅｗ＿ｉｄがシグナリングされる。いくつかの例で、ビューコンポーネントの復号は、ビュー順序インデックスの昇順に従う。すべてのビューが提示された場合、ビュー順序インデックスは、０からｎｕｍ＿ｖｉｅｗｓ＿ｍｉｎｕｓ＿１までの連続する順序になっている。
【０１０６】
[0121]  このようにして、参照フレームとして使用されるフレームは、その参照フレームを参照して符号化されたフレームを復号する前に復号され得る。ビュー順序インデックスは、アクセスユニット中のビューコンポーネントの復号順序を示すインデックスである。各ビュー順序インデックスｉについて、対応するｖｉｅｗ＿ｉｄがシグナリングされる。ビューコンポーネントの復号は、ビュー順序インデックスの昇順に従う。すべてのビューが提示された場合、ビュー順序インデックスのセットは、０からビューの全数よりも１少ない数までの連続的な順序付きセットを備え得る。
【０１０７】
[0122]  階層の等しいレベルにおけるいくつかのフレームの場合、復号順序は、互いに重要でないことがある。例えば、時間ロケーションＴ０におけるビューＳ０のＩフレームは、時間ロケーションＴ０におけるビューＳ２のＰフレームのための参照フレームとして使用され、そのＰフレームは今度は、時間ロケーションＴ０におけるビューＳ４のＰフレームのための参照フレームとして使用される。従って、時間ロケーションＴ０におけるビューＳ０のＩフレームは、時間ロケーションＴ０におけるビューＳ２のＰフレームの前に復号されるべきであり、そのＰフレームは、時間ロケーションＴ０におけるビューＳ４のＰフレームの前に復号されるべきである。しかしながら、ビューＳ１およびＳ３は、予測のために互いに依拠しないが、代わりに、予測階層がより高いビューからのみ予測されるので、ビューＳ１とＳ３との間で復号順序は重要でない。その上、ビューＳ１がビューＳ０およびＳ２の後に復号される限り、ビューＳ１はビューＳ４の前に復号され得る。
【０１０８】
[0123]  このようにして、ビューＳ０〜Ｓ７を記述するために階層順序が使用され得る。表記法ＳＡ＞ＳＢは、ビューＳＡがビューＳＢの前に復号されるべきであることを意味する。この表記法を使用すると、図４の例で、Ｓ０＞Ｓ２＞Ｓ４＞Ｓ６＞Ｓ７である。また、図４の例に関して、Ｓ０＞Ｓ１、Ｓ２＞Ｓ１、Ｓ２＞Ｓ３、Ｓ４＞Ｓ３、Ｓ４＞Ｓ５、およびＳ６＞Ｓ５である。これらの要件に違反しないビューのための任意の復号順序が可能である。従って、いくつかの制限のみをもつ、多くの異なる復号順序が可能である。
【０１０９】
[0124]  本開示の技法によれば、ビデオエンコーダ２０およびビデオデコーダ３０は、ブロック（例えば、包含ブロック）内のデータを並列にコーディングするように構成され得る。これを達成するために、ビデオエンコーダ２０およびビデオデコーダ３０は、包含ブロック内のデータを、包含ブロック内の他のデータを予測するために使用しないように構成され得る。例えば、ビデオエンコーダ２０およびビデオデコーダ３０は、包含ブロック内の現在のブロックの動き情報を、現在のブロックの外にあるブロックからの予測動き情報を使用してコーディングするように構成され得る。従って、ビデオエンコーダ２０およびビデオデコーダ３０は、例えば時間的動きベクトルおよび／または視差動きベクトルをコーディングするための動き予測候補で代替できる。このようにして、ビデオエンコーダ２０およびビデオデコーダ３０は、本開示の技法を使用して、例えば図４の時間的動きベクトルおよび／または視差動きベクトルを符号化できる。
【０１１０】
[0125]  図５は、現在のＰＵ並びに空間的に隣接するブロックＡ0、Ａ1、Ｂ0、Ｂ1、およびＢ2の例を示すブロック図である。図５は、現在のＰＵとその空間的に隣接するＰＵとの間の関係を示している。この説明のために、以下のシンボルが定義される。
【０１１１】
[0126]  現在のピクチャの左上のサンプルに関連する現在のＰＵの左上のルーマサンプルを明示するために、ルーマロケーション（ｘＰ，ｙＰ）（すなわち、ルミナンス成分）が使用され得る。
【０１１２】
[0127]  変数ｎＰＳＷおよびｎＰＳＨは、ルーマに関する、すなわちルミナンス成分における現在のＰＵの幅および高さを示し得る。
【０１１３】
[0128]  この例で、現在のピクチャの左上のサンプルに関連する現在の予測ユニットＮの左上のルーマサンプルは（ｘＮ，ｙＮ）である。その場合、（ｘＮ，ｙＮ）（Ｎは、Ａ0、Ａ1、Ｂ0、Ｂ1またはＢ2によって置き換えられる）は、それぞれ（ｘＰ−１，ｙＰ＋ｎＰＳＨ）、（ｘＰ−１，ｙＰ＋ｎＰＳＨ−１）、（ｘＰ＋ｎＰＳＷ，ｙＰ−１）、（ｘＰ＋ｎＰＳＷ−１，ｙＰ−１）または（ｘＰ−１，ｙＰ−１）と定義され得る。
【０１１４】
[0129]  上述のように、いくつかの例で、ビデオエンコーダ２０またはビデオデコーダ３０のようなビデオコーダは、時間的動きベクトル予測を行なえる。すなわち、現在のＰＵのための動きベクトルは、時間的動きベクトル予測子（ＴＭＶＰ）に関連してコーディングされ得る。まず、ＴＭＶＰを得るために、ビデオコーダは、コロケートピクチャ（例えば、現在のピクチャと同じアクセスユニット内のピクチャ）を識別し得る。現在のピクチャのスライスがＢスライスである場合、ｃｏｌｌｏｃａｔｅｄ＿ｆｒｏｍ＿ｌ０＿ｆｌａｇが、コロケートピクチャがＲｅｆＰｉｃＬｉｓｔ０からのものかまたはＲｅｆＰｉｃＬｉｓｔ１からのものかを示すために、スライスヘッダにおいてシグナリングされ得る。
【０１１５】
[0130]  さらに、Ｂスライスの場合、最終参照ピクチャリスト（ＲｅｆＰｉｃＬｉｓｔ０およびＲｅｆＰｉｃＬｉｓｔ１）が構成された後、複合リスト（ＲｅｆＰｉｃＬｉｓｔＣ）が構成され得る。複合リストに関して参照ピクチャリスト変更シンタックスが存在する場合、複合リストはさらに変更され得る。
【０１１６】
[0131]  参照ピクチャリストが識別された後、スライスヘッダでシグナリングされるｃｏｌｌｏｃａｔｅｄ＿ｒｅｆ＿ｉｄｘが、リスト中のピクチャの中のピクチャを識別するために使用され得る。コロケートＰＵが次いで、コロケートピクチャを確認することによって識別され得る。このＰＵを包含するＣＵの右下のＰＵの動き、またはこのＰＵを包含するＣＵの中心ＰＵ内の右下のＰＵの動きのいずれかが、使用され得る。
【０１１７】
[0132]  ＡＭＶＰまたはマージモードの動き候補を生成するために、上記のプロセスによって識別された動きベクトルが使用されるとき、動きベクトルは、（ピクチャのピクチャ順序カウント（ＰＯＣ：picture order count）値によって反映される）時間ロケーションに基づいてスケーリングされ得る。ＨＥＶＣで、ピクチャパラメータセット（ＰＰＳ：picture parameter set）は、フラグｅｎａｂｌｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｆｌａｇを含む。０に等しいｔｅｍｐｏｒａｌ＿ｉｄをもつ特定のピクチャが、０に等しいｅｎａｂｌｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｆｌａｇを有するＰＰＳを参照するとき、ＤＰＢ中のすべての参照ピクチャは、「時間的動きベクトル予測のために使用されない」としてマークされ得、復号順序でその特定のピクチャの前のピクチャからの動きベクトルは、特定のピクチャの復号または復号順序でその特定のピクチャの後のピクチャの復号において時間的動きベクトル予測子として使用されないことになる。
【０１１８】
[0133]  図６は、様々なピクチャグループ（ＧＯＰ）のピクチャを示す、ピクチャが様々なタイプを有する概念図である。具体的には、図６は、前のＧＯＰ１００と、現在のＧＯＰ１０２と、次のＧＯＰ１０４とを示している。前のＧＯＰ１００は、ピクチャ１０６、１０８を含む。現在のＧＯＰ１０２は、ピクチャ１１０〜１２４（ピクチャ１２４は、図６の例でクリーンランダムアクセスピクチャ（ＣＲＡ：clean random access picture）の例を表している）を含む。次のＧＯＰ１０４は、ピクチャ１２６、１２８を含む。
【０１１９】
[0134]  ピクチャ１０６〜１２８の各々は、対応するピクチャのＰＯＣ値を表す数値を含む。復号順序は、ＰＯＣ値によって示される表示順序とは異なり得ることに留意されたい。図６中の矢印は、潜在的予測を表している。具体的には、矢印が指すピクチャは、矢印の起点となっているピクチャによって参照ピクチャとして使用され得る。例えば、ピクチャ１０８（ＰＯＣ値１６を有する）は、ピクチャ１１６（ＰＯＣ値２０を有する）を予測するための参照ピクチャとして使用され得る。
【０１２０】
[0135]  ＨＥＶＣでは、ネットワークアブストラクションレイヤ（ＮＡＬ：network abstraction layer）ユニットタイプによって識別され得る４つのピクチャタイプが存在する。これらは、瞬時復号リフレッシュ（ＩＤＲ： instantaneous decoding refresh）ピクチャ、クリーンランダムアクセス（ＣＲＡ：clean random access）ピクチャ、時間レイヤアクセス（ＴＬＡ：temporal layer access）ピクチャ、およびＩＤＲピクチャ、ＣＲＡピクチャまたはＴＬＡピクチャでないコード化ピクチャである。この例で、ＰＯＣ値２４をもつピクチャはＣＲＡピクチャである。
【０１２１】
[0136]  ＩＤＲピクチャおよびコード化ピクチャは、Ｈ．２６４／ＡＶＣ規格から実質的に継承されたピクチャタイプである。ＣＲＡおよびＴＬＡのピクチャタイプはＨＥＶＣにおいて新しく、Ｈ．２６４／ＡＶＣ規格において利用できない。ＣＲＡピクチャは、ＩＤＲピクチャを挿入するよりも効率的である、ビデオシーケンスの中央の任意のランダムアクセスポイントから始まる復号を可能にするピクチャタイプである。ＨＥＶＣでは、これらのＣＲＡピクチャから始まるビットストリームもまた、ビットストリームに適合している。ＴＬＡピクチャは、有効な時間レイヤスイッチングポイントを示すために使用され得るピクチャタイプである。
【０１２２】
[0137]  ブロードキャストおよびストリーミング（例えば、動的適応ストリーミングオーバーＨＴＴＰ（ＤＡＳＨ：Dynamic Adaptive Streaming over HTTP）、リアルタイムトランスポートプロトコル（ＲＴＰ：Real-time Transport Protocol）またはリアルタイムストリーミングプロトコル（ＲＴＳＰ：Real-Time Streaming Protocol）に従うなどしてネットワークを介する）などのビデオ適用では、ユーザが最小限の遅延で異なるチャネル間で切り替えて、ビデオの特定の部分にジャンプするための重要な機能が必要とされる。この機能は、ビデオビットストリームで一定の間隔をおいてランダムアクセスピクチャを有することによって可能にされ得る。Ｈ．２６４／ＡＶＣとＨＥＶＣの両方の中で指定されるＩＤＲピクチャは、ランダムアクセスに使用され得る。しかしながら、ＩＤＲピクチャは、コード化ビデオシーケンスを開始させ、復号ピクチャバッファ（ＤＰＢ）を常に削除するので、復号順序でＩＤＲに続くピクチャは、ＩＤＲピクチャの前に復号されたピクチャを参照として使用できない。その結果、ランダムアクセスに対するＩＤＲピクチャに依存するビットストリームは、著しく低いコーディング効率（例えば、６％）を有することがある。コーディング効率を改善するために、復号順序でＣＲＡピクチャに後続するが出力順序でＣＲＡピクチャに先行するピクチャが、ＣＲＡピクチャより前に復号されたピクチャを参照ピクチャとして使用することを、ＨＥＶＣにおけるＣＲＡピクチャが可能にする。
【０１２３】
[0138]  ＣＲＡピクチャ（ピクチャ１２４）の前後の例示的な予測構造が図６に示されている。ＣＲＡピクチャ１２４（ＰＯＣ２４を有する）は現在のＧＯＰ１０２に属し、現在のＧＯＰ１０２は、復号順序でＣＲＡピクチャ１２４に後続するが出力順序でＣＲＡピクチャ１２４に先行する他のピクチャ１１０〜１２２（ＰＯＣ値１７〜２３を有する）を包含する。すなわち、図６の例におけるピクチャ１１０〜１２２（ＰＯＣ１７〜２３を有する）は、ピクチャ１２４に、またはやはりピクチャ１２４に依存するピクチャに依存し得るので、ピクチャ１２４はピクチャ１１０〜１２２の前に復号されなければならない。従って、ピクチャ１１０〜１２２は、ＣＲＡピクチャ１２４の先行ピクチャと呼ばれ、現在のＣＲＡピクチャの前のＩＤＲピクチャまたはＣＲＡピクチャから復号が開始された場合に適切に復号され得る。しかしながら、先行ピクチャは、ＣＲＡピクチャ１２４からのランダムアクセスが生じたときには適切に復号され得ない。すなわち、図６の例に示すように、先行ピクチャは、ピクチャ１０８などのビットストリームにおけるより早い段階のピクチャに依存し得る。従って、先行ピクチャ１１０〜１２２は通常、ランダムアクセス復号中に処分され得る。
【０１２４】
[0139]  どこで復号が開始されるかに応じて利用不可能なことがある参照ピクチャからのエラー伝搬を防ぐために、復号順序と出力順序の両方でＣＲＡピクチャ１２４に後続する、図６に示す次のＧＯＰ１０４におけるすべてのピクチャは、復号順序または出力順序のいずれかでＣＲＡピクチャ１２４に先行するピクチャ（ＰＯＣ値１７〜２３を有する先行ピクチャ１１０〜１２２を含む）を参照に一切使用しないようにコーディングされ得る。
【０１２５】
[0140]  同様のランダムアクセス機能が、リカバリポイントＳＥＩメッセージを有するＨ．２６４／ＡＶＣにおいてサポートされる。Ｈ．２６４／ＡＶＣデコーダ実装がその機能をサポートすることもまたはサポートしないこともある。ＨＥＶＣにおいて、ＣＲＡピクチャによって開始するビットストリームは、適合ビットストリームと見なされる。ビットストリームがＣＲＡピクチャによって開始するとき、ＣＲＡピクチャの先行ピクチャは利用不可能参照ピクチャを指し、従って正しく復号され得ない。しかしながら、ＨＥＶＣは、開始するＣＲＡピクチャの先行ピクチャは出力されず、従って「クリーンランダムアクセス」という名称であることを明記している。ビットストリーム適合性要件を確立するために、ＨＥＶＣは、非出力先行ピクチャを復号するために利用不可能参照ピクチャを生成するための復号プロセスを指定する。しかしながら、復号プロセスがビットストリームの開始から行われるときと比較して、適合デコーダ実装が同等の出力を生成し得る限り、適合デコーダ実装は、その復号プロセスに従う必要はない。
【０１２６】
[0141]  ＨＥＶＣにおいて、適合ビットストリームは、ＩＤＲピクチャをまったく含まず、従ってコード化ビデオシーケンスのサブセットまたは不完全なコード化ビデオシーケンスを含み得ることは注目に値する。
【０１２７】
[0142]  図７は、一連のブロックにおける動きデータ圧縮を示す概念図である。具体的には、ブロックは、１６×１６ブロック境界１５０Ａ〜１５０Ｅによって分割される。図７の例において、影付きブロックに関する動き情報がラインバッファに記憶され得る。影なしブロックは、隣接ブロックの動き情報を共有できる。従って、ブロックペア１５２Ａ〜１５２Ｉの各々は動き情報を共有できる。ＨＥＶＣにおける動きベクトル記憶圧縮方法は、マージ／スキップモードおよびＡＭＶＰのための時間的動きベクトルの記憶およびローディングに費やされるメモリ帯域幅を減らすように設計される。１６×圧縮方法は基本的に、水平方向と垂直方向の両方において４倍で動きベクトルフィールドをダウンサンプリングし、１６×１６領域ごとに同じ動きベクトルが生じる。
【０１２８】
[0143]  動きデータは一般に、インター予測方向（例えば、より早い表示時間（Ｌｉｓｔ０）を有するピクチャに、より遅い表示時間（Ｌｉｓｔ１）を有するピクチャに、または双方向）と、参照ピクチャインデックス（例えば、参照ピクチャリストへのインデックス）と、水平成分と垂直成分とを含み得る動きベクトル（ＭＶ）とを含む。上位ＬＣＵ行の動きデータにアクセスする必要があるＰＵごとに、ラインバッファにおける圧縮動きデータのみがアクセスされ得る。図７は、１つのラインの２：１の動きデータ圧縮を示している。４つの４×４ブロックごとに、最初と最後の４×４ブロックの動きデータがラインバッファに記憶される。最初のブロックの動きデータは、最初の２つのブロックの動きデータを表す。最後のブロックの動きデータは、最後の２つのブロックの動きデータを表す。このようにして、ちょうど半分だけのメモリが必要とされる。
【０１２９】
[0144]  ＨＥＶＣで、ＬＣＵは、並列動き推定領域（ＭＥＲ）に分割されてよく、現在のＰＵとは異なるＭＥＲに属する隣接ＰＵのみがマージ／スキップＭＶＰリスト構成プロセスに含まれることを許容し得る。ＭＥＲのサイズは、ｌｏｇ２＿ｐａｒａｌｌｅｌ＿ｍｅｒｇｅ＿ｌｅｖｅｌ＿ｍｉｎｕｓ２としてピクチャパラメータセット（ＰＰＳ）でシグナリングされ得る。２Ｎ×２Ｎが最小ＣＵサイズであって、ＭＥＲサイズがＮ×Ｎよりも大きいとき、空間的隣接ブロックが、それが現在のＰＵと同じＭＥＲの中にある場合に利用不可能と見なされる方式で、ＭＥＲは実施され得る。
【０１３０】
[0145]  ＭＰＥＧにおけるＨＥＶＣベースの３Ｄビデオコーディング（３Ｄ−ＨＥＶＣ）コーデックは、ｍ２２５７０（Ｈｅｉｋｏ  Ｓｃｈｗａｒｚ、Ｃｈｒｉｓｔｉａｎ  Ｂａｒｔｎｉｋ、Ｓｅｂａｓｔｉａｎ  Ｂｏｓｓｅ、Ｈｅｒｉｂｅｒｔ  Ｂｒｕｓｔ、Ｔｏｂｉａｓ  Ｈｉｎｚ、Ｈａｒｉｃｈａｒａｎ  Ｌａｋｓｈｍａｎ、Ｄｅｔｌｅｖ  Ｍａｒｐｅ、Ｐｈｉｌｉｐｐ  Ｍｅｒｋｌｅ、Ｋａｒｓｔｅｎ  Ｍｕｌｌｅｒ、Ｈｕｎｎ  Ｒｈｅｅ、Ｇｅｒｈａｒｄ  Ｔｅｃｈ、Ｍａｒｔｉｎ  Ｗｉｎｋｅｎ、Ｔｈｏｍａｓ  Ｗｉｅｇａｎｄ、「Ｄｅｓｃｒｉｐｔｉｏｎ  ｏｆ  ３Ｄ  Ｖｉｄｅｏ  Ｔｅｃｈｎｏｌｏｇｙ  Ｐｒｏｐｏｓａｌ  ｂｙ  Ｆｒａｕｎｈｏｆｅｒ  ＨＨＩ（ＨＥＶＣ  ｃｏｍｐａｔｉｂｌｅ；ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ａ）」、ＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９／ＷＧ１１  ＭＰＥＧ２０１１／ｍ２２５７０、ジュネーブ、スイス、２０１１年１１月）およびｍ２２５７１で提案された解決策に基づいている。３Ｄ−ＨＥＶＣの参照ソフトウェアの記述は、Ｈｅｉｋｏ  Ｓｃｈｗａｒｚ、Ｋｒｚｙｓｚｔｏｆ  Ｗｅｇｎｅｒ、「Ｔｅｓｔ  Ｍｏｄｅｌ  ｕｎｄｅｒ  Ｃｏｎｓｉｄｅｒａｔｉｏｎ  ｆｏｒ  ＨＥＶＣ  ｂａｓｅｄ  ３Ｄ  ｖｉｄｅｏ  ｃｏｄｉｎｇ」、ＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９／ＷＧ１１  ＭＰＥＧ２０１１／Ｎ１２５５９、サンノゼ、米国、２０１２年２月として入手可能である。参照ソフトウェアは、ＨＴＭと呼ばれ、ｈｔｔｐｓ：／／ｈｅｖｃ．ｈｈｉ．ｆｒａｕｎｈｏｆｅｒ．ｄｅ／ｓｖｎ＿３ＤＶＣＳｏｆｔｗａｒｅ／ｔｒｕｎｋで入手可能である。
【０１３１】
[0146]  Ｃｈｅｎらによる「Ｄｉｓｐａｒｉｔｙ  Ｖｅｃｔｏｒ  Ｃｏｎｓｔｒｕｃｔｉｏｎ  Ｍｅｔｈｏｄ  ｆｏｒ  ３Ｄ−ＨＥＶＣ」、代理人整理番号第１２１８３３Ｕ１／１２１２：１７８ＵＳＰ１号および代理人整理番号第１２１８３３Ｕ２／１２１２：１７８ＵＳＰ２号、２０１２年３月１４日に出願された米国仮出願第６１／６１０，９６１号および２０１２年４月１１日に出願された米国仮出願第６１／６２３，０４１号では、空間的視差ベクトル（ＳＤＶ）、時間的視差ベクトル（ＴＤＶ）または暗黙的視差ベクトル（ＩＤＶ：Implicit Disparity Vector）による視差ベクトル生成（構成）方法がビュー間動き予測について説明されている。その中で定義されているように、ＳＤＶは、ビュー間参照を指している現在のＰＵの空間的隣接ＰＵの動きベクトルである。ＴＤＶは、同じアクセスユニットによる任意の参照ピクチャまたはビュー間ピクチャにおけるコロケートＰＵまたはコロケートＬＣＵからの視差動きベクトルであり得る。代替として、ＴＭＶＰに使用されたピクチャからのコロケートＰＵの動きベクトルまたはＴＭＶＰによって生成された動きベクトルが視差ベクトルである場合、それはＴＤＶとして扱われてもよい。現在のＰＵの空間的隣接ＰＵまたは時間的隣接ＰＵがビュー間動き予測を使用した場合、隣接ＰＵに使用された視差ベクトルはＩＤＶであり得る。上記３種類による視差ベクトルは、視差ベクトル候補リストを構成するために使用されてよく、それらのうちの１つは、いくつかの基準に基づいて選択され、ＩＭＰに直接使用され得る。
【０１３２】
[0147]  ビュー間動き予測は、ＡＭＶＰモードとＭＥＲＧＥモードの両方に適用され得る。ＰＵごとに、ビュー間動き予測用視差ベクトル（ＤＶＩＶＭＰ：Disparity Vector for Inter-View Motion Prediction）が、構成される視差ベクトルであり、ビュー間動き予測に使用され得る。ビュー間動き予測を含めるために、ＡＭＶＰモードは、ビュー間動きベクトル予測子が候補リストに追加され得るように拡張されている。現在のブロックの中央サンプルの深度推定に基づいて、視差ベクトルおよび参照ビューにおける参照ブロックが上述のように決定され得る。現在のブロックの参照インデックスがビュー間参照ピクチャを指す場合、ビュー間動きベクトル予測子は、対応する視差ベクトルに等しく設定される。現在の参照インデックスが時間的参照ピクチャを指し、参照ブロックが、現在の参照インデックスと同じアクセスユニットを指す動き仮定を使用する場合には、この動き仮定に関連付けられる動きベクトルは、ビュー間動きベクトル予測子として使用され得る。他の場合には、ビュー間動きベクトル予測子は、無効とマークされ、動きベクトル予測子候補のリストに含まれないことがある。
【０１３３】
[0148]  ＡＭＶＰモードと同様に、動きパラメータの候補リストは、ビュー間動き予測を使用して取得され得る動きパラメータセットによって拡張され得る。潜在的動き仮定ごとに、参照ピクチャリストの最初の２つの参照インデックスが所与の順序で調査され得る。ＡＭＶＰモードの場合と同様に、参照インデックス０の動きベクトル候補が導出され得る。導出された動きベクトルが有効である場合、参照インデックス０および導出された動きベクトルは、当該仮定に使用され得る。そうでない場合、参照インデックス１が同様にテストされ得る。それがまた無効な動きベクトルをもたらす場合、動き仮定は利用不可能とマークされる。時間的予測を選好するために、第１のインデックスがビュー間参照ピクチャを指す場合、参照インデックスがテストされる順序が逆転し得る。すべての潜在的動き仮定が利用不可能とマークされた場合、ビュー間候補は選択され得ない。
【０１３４】
[0149]  ビュー間残差予測（ＩＲＰ）が３Ｄ−ＨＥＶＣで有効にされる。現在のピクチャの対応する深度マップ（それは推定深度マップであり得る）に基づいて、現在のブロックについて視差ベクトルが決定され得る。次いで視差ベクトルは、参照ビューにおける残差ブロック（残差参照ブロック）の位置を特定するために使用され得る。残差予測がブロックに対して有効であるとき、残差参照ブロックが、動き補償予測子およびこのブロックに対するシグナリングされた残差の他に加えられ得る。
【０１３５】
[0150]  代理人整理番号第１２２１４４Ｐ１／１２１２：２０３ＵＳＰ１号を有するＣｈｅｎらによる「Ｍｏｔｉｏｎ  Ｐａｒａｍｅｔｅｒ  Ｐｒｅｄｉｃｔｉｏｎ  ａｎｄ  Ｃｏｄｉｎｇ  ｆｏｒ  Ｍｕｌｔｉｖｉｅｗ  Ｖｉｄｅｏ」、２０１２年４月９日に出願された米国仮出願第６１／６２１，９２９号では、空間的隣接ブロックおよび時間的隣接ブロックによる視差ベクトル生成方法が、ＩＭＰとＩＲＰの両方について説明されている。それらの解決策のうちの１つは次のように定義されている。
【０１３６】
[0151]  候補空間的隣接ブロックは、ＡＭＶＰ中に確認されたものと同じであってよく、それらの順序は、図５に示すように、Ａ0、Ａ1、Ｂ0、Ｂ1、またはＢ2である。順序付けられた空間的隣接ブロックのうちの１つの動きベクトルが視差動きベクトルである場合、それは視差ベクトルを生成するために使用され得る。時間的隣接ブロックの動きベクトルからの時間的視差ベクトル（ＴＤＶ）が、参照ピクチャ（指定された候補ピクチャ）のセットに基づいて導出されてよく、候補ピクチャごとに、異なるブロックからなるセットが確認され得る。
【０１３７】
[0152]  参照インデックスの昇順に候補ピクチャが確認され得る。１つの参照インデックスがＲｅｆＰｉｃＬｉｓｔ０およびＲｅｆＰｉｃＬｉｓｔ１における２つのピクチャに対応するとき、ＲｅｆＰｉｃＬｉｓｔＸからのピクチャは他方のピクチャに先行し、ここでＸは、ｃｏｌｌｏｃａｔｅｄ＿ｆｒｏｍ＿ｌ０＿ｆｌａｇに等しい。候補ピクチャごとに３つの候補領域が決定され得る。１つの領域が複数のＰＵまたは１６×１６領域をカバーするとき、そのような候補領域のＰＵまたは各１６×１６領域の左上４×４ブロックはラスタ走査順序で走査され得る。他の場合、左上４×４ブロックが視差ベクトル導出のために選択され得る。ＣＰＵは、現在のＰＵのコロケート領域に対応することがあり、ＣＬＣＵは、現在のＰＵのコロケート領域をカバーする最大コーディングユニット（ＬＣＵ）に対応することがあり、かつＢＲは、右下４×４ブロックに対応することがある。視差ベクトル生成プロセスは、それぞれ、ＩＭＰまたはＩＲＰに視差ベクトルが使用されるとき、ＰＵレベルまたはＣＵレベルで行われ得る。
【０１３８】
[0153]  最も効率的なコーディングツールのうちの１つは、ビュー間動き予測（ＩＭＰ）であり、この場合、従属ビューにおけるブロックの動きパラメータが、同じアクセスユニットの他のビューにおけるすでにコーディングされた動きパラメータに基づいて予測または推測される。
【０１３９】
[0154]  図８は、ＰＵを含む動き推定範囲（ＭＥＲ）の外での代替の例を示す概念図である。図８の例では、ＰＵ１６２、ＰＵ１６４、およびＰＵ１６６がＭＥＲ１６０内にある。すなわち、ＭＥＲ１６０は、ＰＵ１６２と、ＰＵ１６４と、ＰＵ１６６とを包含する包含ブロックの例を表している。本開示の技法によれば、ビデオエンコーダ２０および／またはビデオデコーダ３０などのビデオコーダが、空間的視差ベクトル確認を行うように構成され得る。いくつかの例で、ビデオコーダは、ＰＵをコーディングするときにＭＥＲを使用し得る。このように、ビデオコーダは、空間的視差ベクトルを得るためにＭＥＲ内のブロックを使用できないことがある。この場合、代替ブロックが使用され得る。
【０１４０】
[0155]  ＰＵ１６２、ＰＵ１６４、ＰＵ１６６は、図５のブロックＡ０、Ａ１、Ｂ０、Ｂ１、およびＢ２に対応する隣接ブロックを有する。例えば、ＰＵ１６２は、隣接ブロック１７２Ａ、１７６Ｂ、１７６Ｃ、１７６Ｄ、および１７６Ｅに隣接する。別の例として、ＰＵ１６４は、隣接ブロック１７４Ａ〜１７４Ｅに隣接する。さらに別の例として、ＰＵ１６６は、隣接ブロック１７８Ａ〜１７８Ｅに隣接する。さらに、ＭＥＲ１６０は、それ自体の隣接ブロック、ブロック１７２Ａ〜１７２Ｅに隣接する。全般に、終わりに文字「Ａ」を有する隣接ブロックは、図５のブロックＢ２に対応し、終わりに文字「Ｂ」を有する隣接ブロックは、図５のブロックＢ１に対応し、終わりに文字「Ｃ」を有する隣接ブロックは、図５のブロックＢ０に対応し、終わりに文字「Ｃ」を有する隣接ブロックは、図５のブロックＢ０に対応し、終わりに文字「Ｄ」を有する隣接ブロックは、図５のブロックＡ１に対応し、終わりに文字「Ｅ」を有する隣接ブロックは、図５のブロックＡ０に対応する。
【０１４１】
[0156]  図８に示すように、ＰＵのＡ０またはＡ１の隣接（左下）ブロックがＭＥＲ１６０内にある（ブロック１７４Ｄおよび１７４Ｅなど）とき、それらのブロックは利用不可能と見なされ得る。従って、ＭＥＲ１６０のＡ０またはＡ１の隣接ブロック（ブロック１７２Ｄおよび１７２Ｅ）が代替として使用され得る。図８でＰＵ１６４に関して示すように、ＰＵ１６４のＡ０およびＡ１ブロックはブロック１７４Ｄおよび１７４Ｅであり、この例でＰＵ１６４をも含むＭＥＲ１６０内にあるので利用不可能と見なされる。従って、ビデオエンコーダ２０およびビデオデコーダ３０は、ブロック１７４Ｄをブロック１７２Ｄで、およびブロック１７４Ｅをブロック１７２Ｅで代替できる。
【０１４２】
[0157]  このようにして、ブロック１７４Ｄおよび１７４Ｅは、現在のブロック（この例ではＰＵ１６４）の左下隣接ブロックの例を表している。その上、この例では、ビデオエンコーダ２０およびビデオデコーダ３０は、それぞれブロック１７４Ｄおよびブロック１７４Ｅを、ブロック１７２Ｄおよびブロック１７２Ｅで代替できる。この代替は、現在のブロックの左下隣接ブロック（例えば、ＰＵ１６４のブロック１７４Ｄ、１７４Ｅ）を、ＭＥＲ１６０の左隣接ブロック（例えば、ブロック１７２Ｄ、１７２Ｅ）で代替する例を表している。
【０１４３】
[0158]  ＰＵのＢ０またはＢ１の隣接（右上）ブロックがＭＥＲ１６０内にあるとき、それらのブロックは利用不可能と見なされ得る。例えば、ＰＵ１６６に隣接する隣接ブロック１７８Ｂ、１７８Ｃ、およびＰＵ１６４に隣接する隣接ブロック１７４Ｂ、１７４Ｃは、利用不可能と見なされ得る。従って、ＭＥＲ１６０のＢ０またはＢ１の隣接ブロック（この例ではブロック１７２Ｂ、１７２Ｃ）が代替として使用され得る。図８でＰＵ１６６に関して示すように、ブロック１７８Ｂ、１７８Ｃは、この例ではＰＵ１６６をも含むＭＥＲ１６０内にあるので利用不可能である。従って、ビデオエンコーダ２９およびビデオデコーダ３０は、隣接ブロック１７８Ｂ、１７８Ｃを、隣接ブロック１７２Ｂ、１７２Ｃ（ＭＥＲ１６０の隣接ブロック）で代替できる。同様に、ビデオエンコーダ２０およびビデオデコーダ３０は、ＰＵ１６４の隣接ブロック１７４Ｂ、１７４Ｃを、隣接ブロック１７２Ｂ、１７２Ｃ（ＭＥＲ１６０の隣接ブロック）で代替できる。
【０１４４】
[0159]  この代替は、現在のブロック（例えば、ＰＵ１６４、１６６のうちの１つ）をも包含する包含ブロックにおける隣接ブロックが、現在のブロックの右上隣接ブロック（例えば、ブロック１７４Ｂ、１７４Ｃ、１７８Ｂ、１７８Ｃのうちの１つ）に対応するときに、ビデオエンコーダ２０およびビデオデコーダ３０が、現在のブロック（例えば、ＰＵ１６４、１６６のうちの１つ）の右上隣接ブロック（例えば、ブロック１７４Ｂ、１７４Ｃ、１７８Ｂ、１７８Ｃのうちの１つ）を、ＭＥＲ１６０の右上隣接ブロック（例えば、ブロック１７２Ｂ、１７２Ｃのうちの１つ）で代替できる例を表している。図８で隣接ブロック間に引かれている矢印は、代替を表している。
【０１４５】
[0160]  ＰＵのＢ２隣接（左上）ブロックが、ＰＵをも含むＭＥＲ１６０内にある（例えば、ＰＵ１６４の隣接ブロック１７４Ａ）とき、隣接ブロックは利用不可能であると見なされ得る。従って、ビデオエンコーダ２０およびビデオデコーダ３０は、ＰＵ１６４の隣接ブロック１７４Ａの代替として、ＭＥＲ１６０のＢ２隣接ブロック（例えば、隣接ブロック１７２Ａ）で代替できる。この代替は、隣接ブロックが現在のブロックの左上隣接ブロックに対応するときに、ビデオエンコーダ２０および／またはビデオデコーダ３０が、現在のブロックの左上隣接ブロックを、ＭＥＲの左上隣接ブロックで代替できる例を表している。
【０１４６】
[0161]  ＰＵのすべての隣接ブロックが、ＰＵを含むＭＥＲの外にあるとき、代替は必要とされない。これは、図８の例におけるＰＵ１６２の隣接ブロック１７２Ａ、１７６Ｂ〜１７６Ｅに当てはまる。
【０１４７】
[0162]  図９は、視差ベクトルが確認されるＰＵ２１０の一例を示す概念図である。図９は、矢印を使用して相対隣接位置を示し、各位置定義の下に数字を示している。ＰＵ２１０は、隣接空間的ブロック２１２〜２２０と隣接時間的ブロック２２２とを有する。上述したＣｈｅｎらによる「Ｍｏｔｉｏｎ  Ｐａｒａｍｅｔｅｒ  Ｐｒｅｄｉｃｔｉｏｎ  ａｎｄ  Ｃｏｄｉｎｇ  ｆｏｒ  Ｍｕｌｔｉｖｉｅｗ  Ｖｉｄｅｏ」で説明されているように、視差ベクトル生成を行うビデオコーダが、図９の空間ネイバー視差ベクトルに加えて他のタイプの視差ベクトル、例えば時間的視差ベクトルを確認し得ることに留意されたい。図９の例は、図らずもＡＭＶＰまたはＭＥＲＧＥで確認されるものと同じである、隣接ブロック２１２〜２２０から空間的視差ベクトルが確認される場合について説明している。そのような場合、ＭＥＲが使用されるとき、図８に関して上述したように代替がもたらされ得る。他のプロセスは変わらないままでよい。
【０１４８】
[0163]  代替として、空間的隣接ブロックがＭＥＲ内にあるとき、ＭＥＲ内のブロックを確認する代わりに、ＭＥＲの境界にある水平または垂直に位置合わせされたブロックが確認され得る。（それぞれブロックＡ０、Ａ１に対応する）ブロック２２０、２１８の場合、ＭＥＲの左境界にある水平に位置合わせされたブロックが代替として使用され得る。（それぞれブロックＢ０、Ｂ１に対応する）ブロック２１６、２１４の場合、ＭＥＲの上境界にある垂直に位置合わせされたブロックが代替として使用され得る。（ブロックＢ２に対応する）ブロック２１２の場合、ＭＥＲの左境界にある水平に位置合わせされたブロックとＭＥＲの上境界にある垂直に位置合わせされたブロックの両方が代替として使用され得る。
【０１４９】
[0164]  図１０は、ＰＵを含むＭＥＲの外での代替の代替例を示す概念図である。図１０の例は、ＰＵ２３２、２３６を含むＭＥＲ２３０を示している。ＰＵ２３２は、空間的隣接ブロック２３４Ａ〜２３４Ｅを有する。ＰＵ２３６は、空間的隣接ブロック２３８Ａ〜２３８Ｅを有する。図１０に示すように、ＰＵのＡ０またはＡ１の隣接ブロックが、ＰＵを含むＭＥＲ内にあるとき、それらは利用不可能と見なされ得る。従って、水平方向におけるＭＥＲの外の位置合わせされたブロック（すなわち、垂直に位置合わせされたブロック）が代替として使用され得る。図１０でＰＵ２３２に関して示すように、ＰＵ２３２の（ブロックＡ０およびＡ１に対応する）ブロック２３４Ｄおよび２３４Ｅは、ＰＵ２３２をも含むＭＥＲ２３０内にあるので利用不可能である。従って、ビデオエンコーダ２０およびビデオデコーダ３０は、それぞれブロック２３４Ｄ、２３４Ｅをブロック２４４Ｄ、２４４Ｅで代替できる。この例では、ブロック２４４Ｄ、２４４Ｅは、ブロック２３４Ｄ、２３４Ｅと同じ垂直位置を有するが、ＭＥＲ２３０の外にあり、ＭＥＲ２３０に隣接する。
【０１５０】
[0165]  このようにして、ブロック２３４Ｄおよび２３４Ｅをブロック２４４Ｄおよび２４４Ｅで代替することは、現在のブロック（例えば、ＰＵ２３２）の隣接ブロックが現在のブロックの左下隣接ブロック（ブロック２３４Ｄ、２３４Ｅ）に対応するときに、ビデオエンコーダ２０およびビデオデコーダ３０が、現在のブロックの左下隣接ブロック（例えば、ブロック２３４Ｄ、２３４Ｅのうちの１つ）を、ＭＥＲ２３０の左隣接ブロック（例えば、ブロック２４４Ｄ、２４４Ｅのうちの対応する１つ）で代替でき、結果的にＭＥＲの左隣接ブロックが、現在のブロックの左下隣接ブロックと同じ垂直位置を有するようになる例を表している。具体的には、この例で、ブロック２４４Ｄはブロック２３４Ｄと同じ垂直位置を有し、ブロック２４４Ｅはブロック２３４Ｅと同じ垂直位置を有する。
【０１５１】
[0166]  ＰＵのＢ０またはＢ１の隣接（右上）ブロックが、ＰＵを含むＭＥＲ内にあるとき、それらは利用不可能と見なされ得る。従って、垂直方向におけるＭＥＲの外の位置合わせされたブロック（すなわち、水平に位置合わせされたブロック）が代替として使用され得る。図１０でＰＵ２３６に関して示すように、ＰＵ２３６の隣接ブロック２３８Ｂ、２３８Ｃは、ＰＵ２３６を含むＭＥＲ２３０内にあるので利用不可能である。ビデオエンコーダ２０およびビデオデコーダ３０は、ブロック２３８Ｂ、２３８Ｃをブロック２４６Ｂ、２４６Ｃを代替でき、この場合、ブロック２４６Ｂ、２４６Ｃは、それぞれブロック２３８Ｂ、２３８Ｃと同じ水平位置を有するが、ブロック２４６Ｂ、２４６ＣをＭＥＲ２３０の外に配置する垂直位置を有する。これはまた、ＰＵ２３２、具体的には、ビデオエンコーダ２０およびビデオデコーダ３０がそれぞれブロック２４４Ｂ、２４４Ｃで代替し得るＰＵ２３２の隣接ブロック２３４Ｂ、２３４Ｃに当てはまる。
【０１５２】
[0167]  それぞれブロック２３８Ｂ、２３８Ｃ、２３４Ｂ、２３４Ｃをブロック２４６Ｂ、２４６Ｃ、２４４Ｂ、２４４Ｃで代替することは、現在のブロックの隣接ブロックが現在のブロックの右上隣接ブロックに対応するときに、ビデオエンコーダ２０およびビデオデコーダ３０が、現在のブロックの右上隣接ブロックをＭＥＲの上隣接ブロックで代替でき、結果的にＭＥＲの上隣接ブロックが現在のブロックの右上隣接ブロックと同じ水平位置を有するようになる例を表している。
【０１５３】
[0168]  ＰＵのＢ２の隣接（左上）ブロックがＭＥＲ内にあるとき、そのブロックは利用不可能と見なされ得る。ビデオエンコーダ２０およびビデオデコーダ３０は、水平方向または垂直方向にあるが、ＭＥＲ２３０の外にある位置合わせされたブロックのいずれかで代替できる。これは、ブロック２４０、２４２が代替として使用され得る、図１０のＰＵ２３２の隣接ブロック２３４Ａに当てはまる。ブロック２３４Ａをブロック２４０で代替することは、現在のブロックの隣接ブロックが現在のブロックの左上隣接ブロックに対応するときに、ビデオエンコーダ２０およびビデオデコーダ３０が、現在のブロックの左上隣接ブロックをＭＥＲの左隣接ブロックで代替でき、結果的にＭＥＲの左隣接ブロックが現在のブロックの左上隣接ブロックと同じ垂直位置を有するようになる例を表している。ブロック２３４Ａをブロック２４２で代替することは、現在のブロックの隣接ブロックが現在のブロックの左上隣接ブロックに対応するときに、現在のブロックの左上隣接ブロックをＭＥＲの上隣接ブロックで代替でき、結果的にＭＥＲの上隣接ブロックが現在のブロックの左上隣接ブロックと同じ水平位置を有するようになる例を表している。
【０１５４】
[0169]  このようにして、図８の例の代替として、ビデオエンコーダ２０およびビデオデコーダ３０によって行われる視差動き生成方法は、様々な隣接ブロックを確認し得る。この場合、ＰＵの隣接ブロックがＭＥＲ内にあるとき、ビデオエンコーダ２０およびビデオデコーダ３０は、ＭＥＲ内にあるＰＵの隣接ブロックを、ＰＵを包含するＭＥＲの同様のロケーションまたは方向における隣接ブロックで代替できる。
【０１５５】
[0170]  図１１は、ＰＵの視差ベクトルに関する１つまたは複数の候補ブロックがＰＵを含むＣＵ内にある例を示す概念図である。この例は、ＰＵレベル視差ベクトル生成とＣＵレベル視差生成との統一に関する。この例では、所与のＰＵ（例えば、現在のＰＵ２６０）の場合、空間的隣接ブロック２６６、２７４、２７８を確認する代わりに、現在のＰＵ２６０を包含するＣＵ２８０の空間的隣接ブロックのみが確認され得る。
【０１５６】
[0171]  図１１に示す例に関して、確認されることになっていた現在のＰＵ２６０の隣接ブロック２６６、２７４、２７８は、ＣＵ２８０の隣接ブロックでない可能性があるか、またはＣＵのＢ０、Ｂ１、Ｂ２、Ａ０、Ａ１のロケーション（ロケーションＢ０、Ｂ１、Ｂ２、Ａ０、Ａ１は、図９の説明に関連して定義されている）のいずれかに属さない可能性があるので、今は確認されない。上述のＣｈｅｎらによる「Ｍｏｔｉｏｎ  Ｐａｒａｍｅｔｅｒ  Ｐｒｅｄｉｃｔｉｏｎ  ａｎｄ  Ｃｏｄｉｎｇ  ｆｏｒ  Ｍｕｌｔｉｖｉｅｗ  Ｖｉｄｅｏ」で説明されているように、視差ベクトル生成は他のタイプの視差ベクトル、例えば時間的視差ベクトルを確認し得る。このようにして、この例は、ＰＵおよびＣＵの空間的隣接ブロックを統一でき、それにより、そのような空間的隣接ブロックは、空間的視差ベクトル確認についての同じプロセスを共有し、同じ結果をもたらすことができる。
【０１５７】
[0172]  従って、ＣＵ２８０は、現在のＰＵ２６０を包含する包含ブロックの例を表している。ビデオエンコーダ２０およびビデオデコーダ３０は、現在のＰＵ２６０の動きベクトルをコーディングするために、ブロック２６６をブロック２６４で、ブロック２７４をブロック２７２で、ブロック２７８をブロック２７６で代替できる。このようにして、ＰＵ２６０、２６２は並列にコーディングされ得る。
【０１５８】
[0173]  いくつかの例で、ビデオコーダは、ＭＥＲの場合に図１１に関して説明した技法と同様の技法を行なえ、例えば、ＭＥＲ内のＰＵの場合、ＰＵの空間的視差ベクトル確認のプロセスおよび結果は、ＰＵを包含するＭＥＲの場合と同じであり得る。
【０１５９】
[0174]  いくつかの例では、ＭＥＲおよびＰＵ／ＣＵの視差ベクトル生成技法が統一され得る。ＭＥＲおよびＣＵの最大サイズは、空間的視差ベクトル確認に使用される視差生成ブロックユニットのサイズになるように選択され得る。上記の例と同様に、ＭＥＲまたはＣＵの中の各ＰＵまたはＣＵは、空間的視差ベクトル確認についての同じプロセスおよび結果を共有し得る。
【０１６０】
[0175]  例えば、現在のＣＵのサイズが１６×１６であり、ＭＥＲのサイズが３２×３２であると仮定する。この場合、空間的視差ベクトルを得るために使用される視差生成ブロックユニットは３２×３２のサイズを有し、現在のＰＵをカバーし、この３２×３２ブロックユニット内の各ＣＵおよびＰＵは、空間的視差ベクトル確認についての同じプロセスおよび結果を共有する。
【０１６１】
[0176]  別の例として、現在のＣＵのサイズが１６×１６であり、ＭＥＲのサイズが４×４であると仮定する。この場合、空間的視差ベクトルを得るために使用される視差生成ブロックユニットは１６×１６のサイズを有し、現在のＰＵをカバーし、この１６×１６コーディングユニット内の各ＰＵは、空間的視差ベクトル確認についての同じプロセスおよび結果を共有する。
【０１６２】
[0177]  図１２は、視差生成ブロックユニットのための視差ベクトル生成の一例を示す概念図である。この例で、視差生成ブロックユニットは、現在のＣＵおよび任意のＰＵを包含するＭＥＲのうちの大きい方として定義され得る。視差生成ブロックユニットが２Ｍ×２Ｍピクセルのサイズを有し、左上ピクセル座標が（ｘ０，ｙ０）であると仮定する。視差生成ブロックユニット（ＤＧＢＵ）３００の（Ｔ０  ３１２およびＴ１  ３１４における）上隣接（４×４）ブロックおよび（Ｌ０  ３１６およびＬ１  ３１８における）左隣接ブロックは、所与のＰＵを予測するために使用され得る。
【０１６３】
[0178]  上隣接ブロックは２つの部分、Ｔ０  ３１２およびＴ１  ３１４に分けられ、Ｔ０  ３１２は、ＤＧＢＵ３００の幅の第１の半分（Ｍ）内のブロックをカバーし、Ｔ１  ３１４は、ＤＧＢＵ３００の幅の第２の半分（Ｍ）を含むブロックとＤＧＢＵ３００の右上隣接ブロックであるもう１つのブロックとをカバーする。
【０１６４】
[0179]  左隣接ブロックは２つの部分、Ｌ０  ３１６およびＬ１  ３１８に分けられ、Ｌ０  ３１６は、ＤＧＢＵ３００の高さの第１の半分（Ｍ）内のブロックをカバーし、Ｌ１  ３１８は、ＤＧＢＵ３００の高さの第２の半分（Ｍ）を含むブロックとＤＧＢＵ３００の左下隣接であるもう１つのブロックとをカバーする。
【０１６５】
[0180]  Ｂ３１０として示された左上ブロックは、例えば領域のズーム０  ３０２、ズーム１  ３０４、ズーム２  ３０６、ズーム３  ３０８のうちの１つの中の、ＰＵまたはＣＵのロケーションに応じて、Ｔ０  ３１２またはＬ０  ３１４のいずれかの一部であり得る。代替として、Ｂ３１０は常にＴ０  ３１２に属し得る。代替として、Ｂは常にＬ０  ３１６に属し得る。従って、隣接領域についてＴ０  ３１２、Ｔ１  ３１４、Ｌ０  ３１６、およびＬ１  ３１８が示され得る。
【０１６６】
[0181]  確認される４つの領域の順序は、（ｄｘ，ｄｙ）として示される、ＤＧＢＵ３００の左上ピクセル（ｘ０，ｙ０）に対する中央のＰＵまたはＣＵの選択されたピクセルの相対ロケーションに依存し得る。選択されたピクセルは、ＰＵまたはＣＵの中央からのものであり得る。まず、ＤＧＢＵ３００は、４つのズーム（ズーム０  ３０２、ズーム１  ３０４、ズーム２  ３０６、ズーム３  ３０８）に分けられてよく、各ズームは次のように（図１２に示す）、左上ピクセルロケーションおよび右下ピクセルロケーションの相対座標によって表される。ズーム０  ３０２：（０，０）および（Ｍ，Ｍ）、ズーム１  ３０４：（Ｍ＋１，０）および（２Ｍ−１，Ｍ）、ズーム２  ３０６：（０，Ｍ＋１）および（Ｍ，２Ｍ−１）、並びにズーム３  ３０８：（Ｍ＋１，Ｍ＋１）および（２Ｍ−１，２Ｍ−１）。代替として、選択されたピクセルは、ＰＵまたはＣＵの左上隅であってよく、４つのズームは相応に再定義され得る。
【０１６７】
[0182]  Ｔ０  ３１２、Ｔ１  ３１４、Ｌ０  ３１６、およびＬ１  ３１８の順序は次のように定義され得る。（ｄｘ，ｄｙ）がズーム０  ３１２にあり、ｄｘ＝ｄｙである場合、順序は、Ｌ０  ３１６、Ｔ０  ３１２  ３１２、Ｌ１  ３１８  ３１８、Ｔ１  ３１４  ３１４であり得る。代替として、Ｌ０  ３１６  ３１６およびＴ０  ３１２  ３１２の順序は交換可能なことがあり、かつＬ１  ３１８  ３１８およびＴ１  ３１４  ３１４の順序は交換可能なことがある。（ｄｘ，ｄｙ）がズーム０  ３０２にあり、ｄｘ＜ｄｙである場合、順序は、Ｌ０  ３１６、Ｔ０  ３１２、Ｌ１  ３１８、Ｔ１  ３１４であってよく、代替として、順序は、Ｌ０  ３１６、Ｌ１  ３１８、Ｔ０  ３１２、Ｔ１  ３１４であり得る。（ｄｘ，ｄｙ）がズーム０  ３０２にあり、ｄｘ＞ｄｙである場合、順序は、Ｔ０  ３１２、Ｌ０  ３１６、Ｔ１  ３１４、Ｌ１  ３１８であってよく、代替として、順序は、Ｔ０  ３１２、Ｔ１  ３１４、Ｌ０  ３１６、Ｌ１  ３１８であり得る。（ｄｘ，ｄｙ）がズーム１  ３０４にある場合、順序は、Ｔ１  ３１４、Ｔ０  ３１２、Ｌ０  ３１６、Ｌ１  ３１８であり得る。（ｄｘ，ｄｙ）がズーム２  ３０６にあり、ｄｘ＝ｄｙである場合、順序は、Ｌ１  ３１８、Ｔ１  ３１４、Ｌ０  ３１６、Ｔ０  ３１２であってよく、代替として、Ｌ０  ３１６およびＴ０  ３１２の順序は交換可能であることがあり、かつＬ１  ３１８およびＴ１  ３１４の順序は交換可能であることがある。（ｄｘ，ｄｙ）がズーム３  ３０８にあり、ｄｘ＜ｄｙである場合、順序は、Ｌ１  ３１８、Ｔ１  ３１４、Ｌ０  ３１６、Ｔ０  ３１２であってよく、代替として、順序は、Ｌ１  ３１８、Ｔ１  ３１４、Ｌ０  ３１６、Ｔ０  ３１２であり得る。（ｄｘ，ｄｙ）がズーム３にあり、ｄｘ＞ｄｙである場合、順序は、Ｔ１  ３１４、Ｌ１  ３１８、Ｔ０  ３１２、Ｌ０  ３１６であってよく、代替として、順序は、Ｔ１  ３１４、Ｔ０  ３１２、Ｌ１  ３１８、Ｌ０  ３１６であり得る。
【０１６８】
[0183]  領域ごとに、ビデオコーダはすべてのブロック（４×４）を、それが上の領域に属するか、または左の領域に属するかに応じて、左から右に、または上から下に確認できる。視差ベクトルが利用可能であるとき、視差ベクトルが生成され、領域全体の走査が終了し、生成プロセスはこの視差ベクトルを返すことができる。視差ベクトルが利用不可能なとき、生成プロセスは空を返すことができる。
【０１６９】
[0184]  視差ベクトルの利用可能性は、以下が真である場合に利用可能と定義され得る。ブロック中の少なくとも１つの動きベクトルが視差動きベクトルであり、視差動きベクトルが、参照ビューおよびターゲットビューに関してターゲット視差ベクトルと一致する。代替として、視差ベクトルの利用可能性は、ブロック中の少なくとも１つの動きベクトルが視差動きベクトルである場合に利用可能と定義され得る。
【０１７０】
[0185]  ビデオコーダは、任意のＰＵの空間的視差ベクトルを生成するように構成され得る。まず、各領域の視差ベクトルが生成され、一時的に記憶されてよく、そのためこの例では最大４つの視差ベクトルがあり得る。ＰＵまたはＣＵごとに、Ｌ０  ３１６、Ｌ１  ３１８、Ｔ０  ３１２、Ｔ１  ３１４の順序が上述のように決定され得るので、各領域は所与の順序で確認され得る。領域の各々が確認され、その対応する視差ベクトル（すでに生成されているか、または空として知られている）が空でないとき、それはＰＵまたはＣＵの視差ベクトルに設定されてよく、プロセス全体が停止し得る。視差ベクトルが発見されない場合、プロセス全体は空（視差ベクトルを利用できない）を返すことができる。
【０１７１】
[0186]  ビデオコーダは、左上ブロック「Ｂ３１０」を割り振ることもできる。ブロックＢがいずれの領域に属するかに関して上述した１つの選択肢は、領域の順序に依存し得る。一例で、ビデオコーダは、いずれの領域が最初に確認されるかに応じて、Ｂ３１０をＬ０  ３１６またはＴ０  ３１２に割り振る。
【０１７２】
[0187]  代替例で、Ｌ０  ３１６およびＬ１  ３１８はＬに結合されてよく、かつＴ０  ３１２およびＴ１  ３１４はＴに結合されてよい。一方、Ｂ３１０は、場合によりＴまたはＬのいずれかから除去され得る。（ｄｘ，ｄｙ）は依然として、選択されたピクセルの相対座標であり得る。確認対象領域の順序は、Ｂ、（ｄｘ≦ｄｙ）の場合にＬ、そうでない場合にＴ、および（ｄｘ≦ｄｙ）の場合にＴ、そうでない場合にＬと定義され得る。代替として、確認対象領域の順序は、（ｄｘ≦ｄｙ）の場合にＬ、そうでない場合にＴ、（ｄｘ≦ｄｙ）の場合にＴ、そうでない場合にＬ、そしてＢであり得る。
【０１７３】
[0188]  別の代替で、ＬまたはＴ内の走査順序は、左から右または上から下だけではない。（ｄｘ，ｄｙ）は依然として、選択されたピクセルの相対座標である。ｄｘ≦Ｍである場合、Ｔ中のブロックの走査順序は左から右であり、そうでない場合は右から左であり得る。ｄｙ≦Ｍである場合、Ｌ中のブロックの走査順序は上から下であってよく、そうでない場合は下から上である。
【０１７４】
[0189]  別の代替で、Ｌ０  ３１６、Ｌ１  ３１８、Ｔ０  ３１２またはＴ１  ３１４内の走査順序は、左から右または上から下だけではない。Ｌ０  ３１６、Ｌ１  ３１８、Ｔ０  ３１２またはＴ１  ３１４内の順序は、選択されたピクセルの相対座標（ｄｘ，ｄｙ）に応じて逆転し得る。例えば、Ｍ／２＜ｄｘ≦Ｍである場合、Ｔ０  ３１２内のブロックの走査順序は右から左であり得る。
【０１７５】
[0190]  別の代替では、Ｌ０  ３１６、Ｌ１  ３１８、Ｔ０  ３１２またはＴ１  ３１４中のブロックのすべてが走査されるとは限らず、各領域（Ｌ０  ３１６、Ｌ１  ３１８、Ｔ０  ３１２およびＴ１  ３１４）の中央のブロックのみが走査され得る。すべての座標が（ｘ０，ｙ０）との対比であり得る。Ｌ０  ３１６の場合、中央ブロックはＭ／２の相対ｙ座標から始まる。Ｌ１  ３１８の場合、中央ブロックはＭ＊３／２の相対ｙ座標から始まる。Ｔ０  ３１２の場合、中央ブロックはＭ／２の相対ｘ座標から始まる。Ｔ１  ３１４の場合、中央ブロックはＭ＊３／２の相対ｘ座標から始まる。この場合、Ｂは追加的に加えられ得る。従って、全部で、視差ベクトル生成中に空間的ブロックについて、４つまたは５つのブロックのみが確認され得る。
【０１７６】
[0191]  代替として、上述の結合された各領域（ＬおよびＴ）の中央ブロックのみが走査され得る。Ｌの場合、中央ブロックはＭの相対ｙ座標から始まってよく、Ｔの場合、中央ブロックはＭの相対ｘ座標から始まってよい。さらに、Ｂが追加され得る。従って、全部で、２つまたは３つのブロックのみが確認され得る。
【０１７７】
[0192]  代替として、各領域（ＬおよびＴ）の中央ブロックのみが走査され得る。ここでは、ＬまたはＴはＢを含むことができる。
【０１７８】
[0193]  別の代替で、Ｔ０  ３１２、Ｔ１  ３１４、Ｌ０  ３１６およびＬ１  ３１８の順序は、視差生成ブロックユニットにおいてすべてのＰＵまたはＣＵについて固定され得る。確認順序は、Ｌ１  ３１８、Ｌ０  ３１６、Ｔ１  ３１４、Ｔ０  ３１２、Ｂであり得る。代替として、上記順序の任意の置換が適用され得る。Ｌ１  ３１８またはＬ０  ３１６中のブロックの場合、確認順序は、上から下または下から上のいずれかであり得る。Ｔ１  ３１４またはＴ０  ３１２中のブロックの場合、確認順序は、左から右または右から左のいずれかであり得る。
【０１７９】
[0194]  代替として、ＬまたはＴ内の走査順序は、左から右または上から下だけではないことがある。例えば、Ｌは右から左に走査されてよく、Ｔは下から右に走査されてよい。代替として、走査順序の任意の他の置換が適用され得る。
【０１８０】
[0195]  図１３は、１つの領域として結合されたときの近隣ブロックの走査順序の例を示す概念図である。図１３の例は、図１２のＬ、Ｔ、およびＢの領域がさらに結合されて領域Ｎ３３２を形成していることを除いて、図１２の上記例と同様である。図１３に示すように、ビデオコーダはＮ３３２を下から上に（図１２のＢ３１０の位置に）、次いで左から右に走査できる。
【０１８１】
[0196]  代替的に、Ｌ、Ｔ、およびＢの領域がさらに領域Ｎに結合されてよく、Ｎは逆転した順序から（例えば、右から左に、次いで上から下に）走査され得る。
【０１８２】
[0197]  代替的に、順序は（上のブロックでは）右から左に、そして（左のブロックでは）上から下になるように逆転してよく、それが元の順序であるか、または逆転した順序であるかは、ｄｘ≦ｄｙであるかどうかによって判断され得る。例えば、（ｄｘ≦ｄｙ）である場合、ビデオコーダは元の順序を使用でき、そうでない場合、ビデオコーダは逆転した順序を使用できる。
【０１８３】
[0198]  図１４は、時間的視差ベクトル確認のための例示的な方法を示す概念図である。図１４は、ＰＵレベル視差ベクトル生成が空間的隣接ブロックについてＣＵレベルに統一される一例を示している。従って、この例は、ＰＵレベル視差ベクトル生成とＣＵレベル視差生成との統一に関する。
【０１８４】
[0199]  現在のピクチャ３５２のＬＣＵ３６０におけるＣＵ３６２の所与のＰＵ３６４について、ＰＵ３６４が視差動きベクトル３６６を使用して予測される場合、例えば、ビデオエンコーダ２０またはビデオデコーダ３０などのビデオコーダによって、コロケートＣＵ（ＣＣＵ）が常に確認され得る。現在のピクチャ３５２のＣＵ中の各ＰＵまたは各ＣＵについて、ＣＣＵ３５６として示されたＣＵのコロケート領域が識別され得る。図１４に示すように、ＣＬＣＵ３５４によって示された、ＣＣＵ３５６と（ＢＲ’３５８によって示された）ＣＣＵ３５６の右下４×４ブロックとを包含する最大ＣＵは、時間的隣接ブロックとして使用され得る。
【０１８５】
[0200]  上記３つの領域の順序は、Ｃｈｅｎらによる「Ｍｏｔｉｏｎ  Ｐａｒａｍｅｔｅｒ  Ｐｒｅｄｉｃｔｉｏｎ  ａｎｄ  Ｃｏｄｉｎｇ  ｆｏｒ  Ｍｕｌｔｉｖｉｅｗ  Ｖｉｄｅｏ」に記述されている順序と同様であってよいことに留意されたい。例えば、順序は、ＣＣＵ３５６、ＣＬＣＵ３５４、そしてＢＲ’３５８、またはＢＲ’３５８、ＣＣＵ３５６、そしてＣＬＣＵ３５４であり得る。
【０１８６】
[0201]  複数のブロックを含むＣＣＵまたはＣＬＣＵを確認するとき、各ＣＣＵまたはＣＬＣＵの１６×１６ブロックがラスタ走査順序で確認され得る。視差ベクトルが利用可能なとき、確認プロセスは終了し得る。代替として、ＢＲ’はＣＣＵにおける中央の４×４ブロックのうちの１つに置き換えられ得る。代替として、ＢＲ’はＣＣＵにおける任意の他の４×４ブロックに置き換えられ得る。代替として、ＢＲ’は利用不可能に設定され、確認されないことがある。代替として、ＢＲ’とＣＣＵの両方が利用不可能に設定され、確認されないことがある。
【０１８７】
[0202]  Ｃｈｅｎらによる「Ｍｏｔｉｏｎ  Ｐａｒａｍｅｔｅｒ  Ｐｒｅｄｉｃｔｉｏｎ  ａｎｄ  Ｃｏｄｉｎｇ  ｆｏｒ  Ｍｕｌｔｉｖｉｅｗ  Ｖｉｄｅｏ」で説明されているように、視差ベクトル生成は他のタイプの視差ベクトル、例えば空間的視差ベクトルを確認し得ることに留意されたい。図１４の例は、ＰＵおよびＣＵの時間的隣接ブロックを統一でき、それにより、それらは、時間的視差ベクトル確認についての同じプロセスと同じ結果とを共有できる。候補ピクチャ選択方法は、Ｃｈｅｎらによる「Ｍｏｔｉｏｎ  Ｐａｒａｍｅｔｅｒ  Ｐｒｅｄｉｃｔｉｏｎ  ａｎｄ  Ｃｏｄｉｎｇ  ｆｏｒ  Ｍｕｌｔｉｖｉｅｗ  Ｖｉｄｅｏ」で説明されている方法と同じであり得る。
【０１８８】
[0203]  代替として、ＣＵサイズが１６×１６よりも小さい場合、ＣＣＵは、このＣＵを包含する１６×１６ブロックに拡張され得る。残りのプロセスは同じであるが、拡張されたＣＣＵに適用され得る。
【０１８９】
[0204]  代替として、プロセスは、Ｃｈｅｎらによる「Ｍｏｔｉｏｎ  Ｐａｒａｍｅｔｅｒ  Ｐｒｅｄｉｃｔｉｏｎ  ａｎｄ  Ｃｏｄｉｎｇ  ｆｏｒ  Ｍｕｌｔｉｖｉｅｗ  Ｖｉｄｅｏ」で説明されているプロセスと同様であり得るが、ＰＵサイズが１６×１６よりも小さい場合、ＣＰＵは、このＣＵを包含する１６×１６ブロックに拡張され得る。残りのプロセスは同じであるが、拡張されたＣＣＵに適用され得る。
【０１９０】
[0205]  図１５は、本開示の技法による、視差動きベクトルを符号化するための例示的な方法を示すフローチャートである。ビデオエンコーダ２０に関して説明するが、他のデバイスまたは構成要素が図１５の方法を行うように構成され得ることを理解されたい。その上、ただ１つの例が示されているが、図１５の方法の複数の例が、共通包含ブロック（例えば、ＭＥＲまたは共通ＣＵの複数のＰＵ）の複数のブロックについて実質的に同時に、例えば並列に行われ得ることを理解されたい。
【０１９１】
[0206]  この例で、ビデオエンコーダ２０は最初に、ビュー間予測を使用して包含ブロック中の現在のブロックを符号化できる（３８０）。例えば、様々な試験符号化パスを行った後、ビデオエンコーダ２０は最終的に、現在のブロックがビュー間予測を使用して符号化されるべきであると判断できる。従って、ビデオエンコーダ２０は、ビュー間参照ピクチャを指す視差動きベクトルを使用して現在のブロックを符号化できる。
【０１９２】
[0207]  ビデオエンコーダ２０は、次いで、視差動きベクトルを符号化し得る。そうするために、ビデオエンコーダ２０は、視差動きベクトルのための候補動きベクトル予測子を含む候補リストを形成できる。特に、本開示の技法によれば、ビデオエンコーダ２０は、現在のブロックの特定の隣接ブロックが、現在のブロックを含む包含ブロック中にあるかどうかを判断できる（３８２）。隣接ブロックが包含ブロック中にない場合（３８２の「いいえ」分岐）、ビデオエンコーダ２０は、現在のブロックの隣接ブロックを候補リストに追加できる（３８４）。一方、隣接ブロックが、現在のブロックをも含む包含ブロック中にある場合（３８２の「はい」分岐）、ビデオエンコーダ２０は、包含ブロックの隣接ブロックを候補リストに追加できる（３８６）。言い換えれば、ビデオエンコーダ２０は、現在のブロックの隣接ブロックを包含ブロックの隣接ブロックで代替できる。ビデオエンコーダ２０は、例えば図８〜図１１に関して上述した様々な例または他の代替方式に従って、この代替を行い得る。
【０１９３】
[0208]  次いでビデオエンコーダ２０は、前の隣接ブロックが、候補リストへの追加について検討されるべき最後の隣接ブロックであったかどうかを判断できる（３８８）。前の隣接ブロックが検討されるべき最後の隣接ブロックでなかった場合（３８８の「いいえ」分岐）、ビデオエンコーダ２０は、次の隣接ブロック、また特に、上述したように、現在のブロックの次の隣接ブロックを、包含ブロックの隣接ブロックで代替するかどうかを検討できる。一方、前の隣接ブロックが最後の隣接ブロックであった場合（３８８の「はい」分岐）、ビデオエンコーダ２０は、いくつかの例では、場合によっては候補リストをプルーニングした後、候補リストから視差動きベクトル予測子を選択できる（３９０）。ビデオエンコーダ２０は、次いで、視差動きベクトル予測子を使用して、例えばマージモードまたはＡＭＶＰモードを使用して、視差動きベクトルを符号化できる（３９２）。
【０１９４】
[0209]  このようにして、図１５の方法は、視差動きベクトルを使用して、包含ブロック内のビデオデータの現在のブロックを符号化することと、現在のブロックの隣接ブロックも包含ブロック内にあるとの判断に基づいて、候補リスト中で隣接ブロックを、包含ブロックの外にあって包含ブロックに隣接するブロックで代替することと、候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、視差動きベクトル予測子に基づいて視差動きベクトルを符号化することとを含む方法の例を表している。
【０１９５】
[0210]  図１６は、本開示の技法による、視差動きベクトルを復号するための例示的な方法を示すフローチャートである。ビデオデコーダ３０に関して説明するが、他のデバイスまたは構成要素が図１６の方法を行うように構成され得ることを理解されたい。その上、ただ１つの例が示されているが、図１６の方法の複数の例が、共通包含ブロック（例えば、ＭＥＲまたは共通ＣＵの複数のＰＵ）の複数のブロックについて実質的に同時に、例えば並列に行われ得ることを理解されたい。
【０１９６】
[0211]  最初に、ビデオデコーダ３０は、包含ブロック中の現在のブロックがビュー間予測を使用して符号化されていると判断し得る（４００）。そこで、ビデオデコーダ３０は、視差動きベクトルが復号されるべきであると判断し得る。従って、ビデオデコーダ３０は、上記の図１５に関して説明したのと実質的に同じ方法で候補リストを構成できる。例えば、ビデオデコーダ３０は、視差動きベクトルのための候補動きベクトル予測子を含む候補リストを形成できる。特に、本開示の技法によれば、ビデオデコーダ３０は、現在のブロックの特定の隣接ブロックが、現在のブロックを含む包含ブロック中にあるかどうかを判断できる（４０２）。隣接ブロックが包含ブロック中にない場合（４０２の「いいえ」分岐）、ビデオデコーダ３０は、現在のブロックの隣接ブロックを候補リストに追加できる（４０４）。一方、隣接ブロックが、現在のブロックをも含む包含ブロック中にある場合（４０２の「はい」分岐）、ビデオデコーダ３０は、包含ブロックの隣接ブロックを候補リストに追加できる（４０６）。言い換えれば、ビデオデコーダ３０は、現在のブロックの隣接ブロックを包含ブロックの隣接ブロックで代替できる。ビデオデコーダ３０は、例えば図８〜図１１に関して上述した様々な例または他の代替方式に従って、この代替を行い得る。
【０１９７】
[0212]  次いでビデオデコーダ３０は、前の隣接ブロックが、候補リストへの追加について検討されるべき最後の隣接ブロックであったかどうかを判断できる（４０８）。前の隣接ブロックが検討されるべき最後の隣接ブロックでなかった場合（３８８の「いいえ」分岐）、ビデオデコーダ３０は、次の隣接ブロック、また特に、上述したように、現在のブロックの次の隣接ブロックを、包含ブロックの隣接ブロックで代替するかどうかを検討できる。一方、前の隣接ブロックが最後の隣接ブロックであった場合（４０８の「はい」分岐）、ビデオデコーダ３０は、いくつかの例では、場合によっては候補リストをプルーニングした後、候補リストから視差動きベクトル予測子を選択できる（４１０）。例えば、ビデオデコーダ３０は、候補リストへのインデックスを表す、マージインデックスまたはＡＭＶＰインデックスを復号し、候補リストへのインデックスに対応する隣接ブロックの動き情報から視差動きベクトル予測子を選択できる。
【０１９８】
[0213]  ビデオデコーダ３０は、次いで、視差動きベクトル予測子を使用して、例えばマージモードまたはＡＭＶＰモードを使用して、視差動きベクトルを復号できる（４１２）。例えば、マージモードで、ビデオデコーダ３０は、現在のブロックの視差動きベクトルが、ステップ４１０で選択された視差動きベクトル予測子に相当すると判断し得る。代替として、ＡＭＶＰモードで、ビデオデコーダ３０はさらに、動きベクトル差分値を定義するデータを復号でき、ビデオデコーダ３０は、視差動きベクトル予測子に動きベクトル差分値を追加することによって、視差動きベクトルを再生できる。
【０１９９】
[0214]  いずれの場合にも、ビデオデコーダ３０は、次いで、復号された視差動きベクトル予測子を使用して、現在のブロックを復号し得る（４１４）。すなわち、ビデオデコーダ３０は、視差動きベクトルによって識別されたビュー間参照ブロックから予測ブロックを生成し、量子化変換係数を定義するシンタックス要素を復号し、これらの係数を逆量子化し逆変換して残差ブロックを再生し、（残差ブロックのピクセル値に予測ブロックのピクセル値を追加することによって）予測ブロックを残差ブロックと結合して最終的に現在のブロックをもたらすことができる。
【０２００】
[0215]  このようにして、図１６の方法は、包含ブロック内にあるビデオデータの現在のブロックが視差動きベクトルを使用して符号化されていると判断することと、現在のブロックの隣接ブロックも包含ブロック内にあるとの判断に基づいて、候補リスト中で隣接ブロックを、包含ブロックの外にあって包含ブロックに隣接するブロックで代替することと、候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、視差動きベクトル予測子に基づいて視差動きベクトルを復号することとを含む方法の例を表している。
【０２０１】
[0216]  例によっては、本明細書で説明された技法のうちいずれかの、いくつかの行為またはイベントは、異なるシーケンスで行われ得、追加、マージ、または完全に除外され得る（例えば、すべての説明した作用またはイベントが、本技法の実施のために必要であるとは限らない）ことを認識されたい。さらに、いくつかの例で、行為またはイベントは、連続的にではなく、例えば、マルチスレッド処理、割込み処理、または複数のプロセッサを通して、同時に行われ得る。
【０２０２】
[0217]  １つまたは複数の例で、説明した機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、１つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、またはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、例えば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含むデータ記憶媒体または通信媒体などの有形媒体に対応するコンピュータ可読記憶媒体を含み得る。このようにして、コンピュータ可読媒体は、概して、（１）非一時的である有形コンピュータ可読記憶媒体、または（２）信号または搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明した技法の実装のための命令、コードおよび／またはデータ構造を取り出すために１つもしくは複数のコンピュータまたは１つもしくは複数のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。
【０２０３】
[0218]  限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（登録商標）、ＣＤ−ＲＯＭもしくは他の光ディスクストレージ、磁気ディスクストレージ、もしくは他の磁気ストレージデバイス、フラッシュメモリ、または命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。例えば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。但し、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザーディスク（登録商標）（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）およびブルーレイディスク（disc）を含み、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
【０２０４】
[0219]  命令は、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、または他の等価な集積回路もしくはディスクリート論理回路などの１つまたは複数のプロセッサによって実行され得る。従って、本明細書で使用する「プロセッサ」という用語は、前述の構造、または本明細書で説明した技法の実装に好適な他の構造のいずれかを指し得る。さらに、いくつかの態様で、本明細書で説明した機能は、符号化および復号のために構成された専用ハードウェアおよび／もしくはソフトウェアモジュール内に与えられ得、または複合コーデックに組み込まれ得る。また、本技法は、１つまたは複数の回路または論理要素において十分に実装され得る。
【０２０５】
[0220]  本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）、またはＩＣのセット（例えば、チップセット）を含む、多種多様なデバイスまたは装置において実装され得る。本開示では、開示する技法を行うように構成されたデバイスの機能的態様を強調するために様々な構成要素、モジュール、またはユニットについて説明したが、それらの構成要素、モジュール、またはユニットを、必ずしも異なるハードウェアユニットによって実現する必要があるとは限らない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェアおよび／またはファームウェアとともに、上記で説明した１つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作ハードウェアユニットの集合によって与えられ得る。
【０２０６】
[0221]  様々な例について説明した。これらおよび他の例は以下の特許請求の範囲内に入る。
【図１】
2015515227.tif 000003
【図２】
2015515227.tif 000004
【図３】
2015515227.tif 000005
【図４】
2015515227.tif 000006
【図５】
2015515227.tif 000007
【図６】
2015515227.tif 000008
【図７】
2015515227.tif 000009
【図８】
2015515227.tif 000010
【図９】
2015515227.tif 000011
【図１０】
2015515227.tif 000012
【図１１】
2015515227.tif 000013
【図１２】
2015515227.tif 000014
【図１３】
2015515227.tif 000015
【図１４】
2015515227.tif 000016
【図１５】
2015515227.tif 000017
【図１６】
2015515227.tif 000018
【手続補正書】
【提出日】平成27年3月25日(2015.3.25)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ビデオデータを復号する方法であって、
コーディングユニット(CU)内にある現在の予測ユニット（ＰＵ）が視差動きベクトルを使用して符号化されていると判断することと、
前記現在のＰＵの隣接ＰＵも前記ＣＵ内にあるとの判断に基づいて、候補リスト中で前記隣接ＰＵを、前記ＣＵの外にあって前記ＣＵに隣接するブロックで代替することと、
前記候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、
前記視差動きベクトル予測子に基づいて前記視差動きベクトルを復号することと
を備える方法。
【請求項２】
代替することが、前記隣接ＰＵが前記現在のＰＵの左下隣接ＰＵに対応するときに、前記現在のＰＵの前記左下隣接ＰＵを前記ＣＵの左下隣接ＰＵで代替することを備える、請求項１に記載の方法。
【請求項３】
代替することが、前記隣接ＰＵが前記現在のＰＵの左下隣接ＰＵに対応するときに、前記現在のＰＵの前記左下隣接ＰＵを前記ＣＵの左隣接ＰＵで代替することを備え、結果的に前記ＣＵの前記左隣接ＰＵが前記現在のＰＵの前記左下隣接ＰＵと同じ垂直位置を有するようになる、請求項１に記載の方法。
【請求項４】
代替することが、前記隣接ＰＵが前記現在のＰＵの右上隣接ＰＵに対応するときに、前記現在のＰＵの前記右上隣接ＰＵを前記ＣＵの右上隣接ＰＵで代替することを備える、請求項１に記載の方法。
【請求項５】
代替することが、前記隣接ＰＵが前記現在のＰＵの右上隣接ＰＵに対応するときに、前記現在のＰＵの前記右上隣接ＰＵを前記ＣＵの上隣接ＰＵで代替することを備え、結果的に前記ＣＵの前記上隣接ＰＵが前記現在のＰＵの前記右上隣接ＰＵと同じ水平位置を有するようになる、請求項１に記載の方法。
【請求項６】
代替することが、前記隣接ＰＵが前記現在のＰＵの左上隣接ＰＵに対応するときに、前記現在のＰＵの前記左上隣接ＰＵを前記ＣＵの左上隣接ＰＵで代替することを備える、請求項１に記載の方法。
【請求項７】
代替することが、前記隣接ＰＵが前記現在のＰＵの左上隣接ＰＵに対応するときに、前記現在のＰＵの前記左上隣接ＰＵを前記ＣＵの左隣接ＰＵで代替することを備え、結果的に前記ＣＵの前記左隣接ＰＵが前記現在のＰＵの前記左上隣接ＰＵと同じ垂直位置を有するようになる、請求項１に記載の方法。
【請求項８】
代替することが、前記隣接ＰＵが前記現在のＰＵの左上隣接ＰＵに対応するときに、前記現在のＰＵの前記左上隣接ＰＵを前記ＣＵの上隣接ＰＵで代替ことを備え、結果的に前記ＣＵの前記上隣接ＰＵが前記現在のＰＵの前記左上隣接ＰＵと同じ水平位置を有するようになる、請求項１に記載の方法。
【請求項９】
前記視差動きベクトルを使用してビデオデータの前記現在のＰＵを復号することをさらに備える、請求項１に記載の方法。
【請求項１０】
前記視差動きベクトルを復号することが、
動きベクトル差分値を復号することと、
前記視差動きベクトル予測子に前記動きベクトル差分値を追加して前記視差動きベクトルを再生することと
を備える、請求項１に記載の方法。
【請求項１１】
ビデオデータを復号するためのデバイスであって、
ビデオデータを記憶するように構成されたメモリと、
ビデオデータのコーディングユニット(ＣＵ)内にある現在の予測ユニット(ＰＵ)が視差動きベクトルを使用して符号化されていると判断することと、前記現在のＰＵの隣接ＰＵも前記ＣＵ内にあるとの判断に基づいて、候補リスト中で前記隣接ＰＵを、前記ＣＵの外にあって前記ＣＵに隣接するブロックで代替することと、前記候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、前記視差動きベクトル予測子に基づいて前記視差動きベクトルを復号することとを行うように構成されたビデオデコーダを備えるデバイス。
【請求項１２】
前記ビデオデコーダが、前記隣接ＰＵが前記現在のＰＵの左下隣接ＰＵに対応するときに、前記現在のＰＵの前記左下隣接ＰＵを前記ＣＵの左下隣接ＰＵで代替するように構成される、請求項１１に記載のデバイス。
【請求項１３】
前記ビデオデコーダが、前記隣接ＰＵが前記現在のＰＵの左下隣接ＰＵに対応するときに、前記現在のＰＵの前記左下隣接ＰＵを前記ＣＵの左隣接ＰＵで代替するように構成され、結果的に前記ＣＵの前記左隣接ＰＵが前記現在のＰＵの前記左下隣接ＰＵと同じ垂直位置を有するようになる、請求項１１に記載のデバイス。
【請求項１４】
前記ビデオデコーダが、前記隣接ＰＵが前記現在のＰＵの右上隣接ＰＵに対応するときに、前記現在のＰＵの前記右上隣接ＰＵを前記ＣＵの右上隣接ＰＵで代替するように構成される、請求項１１に記載のデバイス。
【請求項１５】
前記ビデオデコーダが、前記隣接ＰＵが前記現在のＰＵの右上隣接ＰＵに対応するときに、前記現在のＰＵの前記右上隣接ＰＵを前記ＣＵの上隣接ＰＵで代替するように構成され、結果的に前記ＣＵの前記上隣接ＰＵが前記現在のＰＵの前記右上隣接ＰＵと同じ水平位置を有するようになる、請求項１１に記載のデバイス。
【請求項１６】
前記ビデオデコーダが、前記隣接ＰＵが前記現在のＰＵの左上隣接ＰＵに対応するときに、前記現在のＰＵの前記左上隣接ＰＵを前記ＣＵの左上隣接ＰＵで代替するように構成される、請求項１１に記載のデバイス。
【請求項１７】
前記ビデオデコーダが、前記隣接ＰＵが前記現在のＰＵの左上隣接ＰＵに対応するときに、前記現在のＰＵの前記左上隣接ＰＵを前記ＣＵの左隣接ＰＵで代替するように構成され、結果的に前記ＣＵの前記左隣接ＰＵが前記現在のＰＵの前記左上隣接ＰＵと同じ垂直位置を有するようになる、請求項１１に記載のデバイス。
【請求項１８】
前記ビデオデコーダが、前記隣接ＰＵが前記現在のＰＵの左上隣接ＰＵに対応するときに、前記現在のＰＵの前記左上隣接ＰＵを前記ＣＵの上隣接ＰＵで代替するように構成され、結果的に前記ＣＵの前記上隣接ＰＵが前記現在のＰＵの前記左上隣接ＰＵと同じ水平位置を有するようになる、請求項１１に記載のデバイス。
【請求項１９】
前記ビデオデコーダが、前記視差動きベクトルを使用してビデオデータの前記現在のＰＵを復号するようにさらに構成される、請求項１１に記載のデバイス。
【請求項２０】
前記ビデオデコーダが、動きベクトル差分値を復号することと、前記視差動きベクトル予測子に前記動きベクトル差分値を追加して前記視差動きベクトルを再生することとを行うように構成される、請求項１１に記載のデバイス。
【請求項２１】
前記デバイスが、
集積回路、
マイクロプロセッサ、および
ワイヤレス通信デバイス
のうちの少なくとも１つを備える、請求項１１に記載のデバイス。
【請求項２２】
ビデオデータを復号するためのデバイスであって、
コーディングユニット(ＣＵ)内にある現在の予測ユニット(ＰＵ)が視差動きベクトルを使用して符号化されていると判断するための手段と、
前記現在のＰＵの隣接ＰＵも前記ＣＵ内にあるとの判断に基づいて、候補リスト中で前記隣接ＰＵを、前記ＣＵの外にあって前記ＣＵに隣接するブロックで代替するための手段と、
前記候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択するための手段と、
前記視差動きベクトル予測子に基づいて前記視差動きベクトルを復号するための手段と
を備えるデバイス。
【請求項２３】
実行されたとき、１つまたは複数のプロセッサに、
コーディングユニット(ＣＵ)内にある現在の予測ユニット(ＰＵ)が視差動きベクトルを使用して符号化されていると判断することと、
前記現在のＰＵの隣接ＰＵも前記ＣＵ内にあるとの判断に基づいて、候補リスト中で前記隣接ＰＵを、前記ＣＵの外にあって前記ＣＵに隣接するブロックで代替することと、
前記候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、
前記視差動きベクトル予測子に基づいて前記視差動きベクトルを復号することと
を行わせる命令を記憶したコンピュータ可読記憶媒体。
【請求項２４】
ビデオデータを符号化する方法であって、
視差動きベクトルを使用して、コーディングユニット(ＣＵ)内にある現在の予測ユニット(ＰＵ)を符号化することと、
前記現在のＰＵの隣接ＰＵも前記ＣＵ内にあるとの判断に基づいて、候補リスト中で前記隣接ＰＵを、前記ＣＵの外にあって前記ＣＵに隣接するブロックで代替することと、
前記候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、
前記視差動きベクトル予測子に基づいて前記視差動きベクトルを符号化することと
を備える方法。
【請求項２５】
代替することが、前記隣接ＰＵが前記現在のＰＵの左下隣接ＰＵに対応するときに、前記現在のＰＵの前記左下隣接ＰＵを前記ＣＵの左下隣接ＰＵで代替することを備える、請求項２４に記載の方法。
【請求項２６】
代替することが、前記隣接ＰＵが前記現在のＰＵの左下隣接ＰＵに対応するときに、前記現在のＰＵの前記左下隣接ＰＵを前記ＣＵの左隣接ＰＵで代替することを備え、結果的に前記ＣＵの前記左隣接ＰＵが前記現在のＰＵの前記左下隣接ＰＵと同じ垂直位置を有するようになる、請求項２４に記載の方法。
【請求項２７】
代替することが、前記隣接ブロックが前記現在のＰＵの右上隣接ＰＵに対応するときに、前記現在のＰＵの前記右上隣接ＰＵを前記ＣＵの右上隣接ＰＵで代替することを備える、請求項２４に記載の方法。
【請求項２８】
代替することが、前記隣接ブロックが前記現在のＰＵの右上隣接ＰＵに対応するときに、前記現在のＰＵの前記右上隣接ＰＵを前記ＣＵの上隣接ＰＵで代替することを備え、結果的に前記ＣＵの前記上隣接ＰＵが前記現在のＰＵの前記右上隣接ＰＵと同じ水平位置を有するようになる、請求項２４に記載の方法。
【請求項２９】
代替することが、前記隣接ブロックが前記現在のＰＵの左上隣接ＰＵに対応するときに、前記現在のＰＵの前記左上隣接ＰＵを前記ＣＵの左上隣接ＰＵで代替することを備える、請求項２４に記載の方法。
【請求項３０】
代替することが、前記隣接ブロックが前記現在のＰＵの左上隣接ＰＵに対応するときに、前記現在のＰＵの前記左上隣接ＰＵを前記ＣＵの左隣接ＰＵで代替することを備え、結果的に前記ＣＵの前記左隣接ＰＵが前記現在のＰＵの前記左上隣接ＰＵと同じ垂直位置を有するようになる、請求項２４に記載の方法。
【請求項３１】
代替することが、前記隣接ブロックが前記現在のＰＵの左上隣接ＰＵに対応するときに、前記現在のＰＵの前記左上隣接ＰＵを前記ＣＵの上隣接ＰＵで代替することを備え、結果的に前記ＣＵの前記上隣接ＰＵが前記現在のＰＵの前記左上隣接ＰＵと同じ水平位置を有するようになる、請求項２４に記載の方法。
【請求項３２】
前記視差動きベクトルを符号化することが、
前記視差動きベクトルと前記視差動きベクトル予測子との間の差分を計算することと、
前記差分を符号化することと
を備える、請求項２４に記載の方法。
【請求項３３】
ビデオデータを符号化するためのデバイスであって、
ビデオデータを記憶するように構成されたメモリと、
視差動きベクトルを使用して、ビデオデータのコーディングユニット(ＣＵ)内にある現在の予測ユニット(ＰＵ)を符号化することと、前記現在のＰＵの隣接ＰＵも前記ＣＵ内にあるとの判断に基づいて、候補リスト中で前記隣接ＰＵを、前記ＣＵの外にあって前記ＣＵに隣接するブロックで代替することと、前記候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、前記視差動きベクトル予測子に基づいて前記視差動きベクトルを符号化することとを行うように構成されたビデオエンコーダを備えるデバイス。
【請求項３４】
前記ビデオエンコーダが、前記隣接ＰＵが前記現在のブロックの左下隣接ＰＵに対応するときに、前記現在のＰＵの前記左下隣接ＰＵを前記ＣＵの左下隣接ＰＵで代替するように構成される、請求項３３に記載のデバイス。
【請求項３５】
前記ビデオエンコーダが、前記隣接ＰＵが前記現在のブロックの左下隣接ＰＵに対応するときに、前記現在のＰＵの前記左下隣接ＰＵを前記ＣＵの左隣接ＰＵで代替するように構成され、結果的に前記ＣＵの前記左隣接ＰＵが前記現在のＰＵの前記左下隣接ＰＵと同じ垂直位置を有するようになる、請求項３３に記載のデバイス。
【請求項３６】
前記ビデオエンコーダが、前記隣接ＰＵが前記現在のＰＵの右上隣接ＰＵに対応するときに、前記現在のＰＵの前記右上隣接ＰＵを前記ＣＵの右上隣接ＰＵで代替するように構成される、請求項３３に記載のデバイス。
【請求項３７】
前記ビデオエンコーダが、前記隣接ＰＵが前記現在のＰＵの右上隣接ＰＵに対応するときに、前記現在のＰＵの前記右上隣接ブロックを前記ＣＵの上隣接ＰＵで代替するように構成され、結果的に前記ＣＵの前記上隣接ＰＵが前記現在のＰＵの前記右上隣接ＰＵと同じ水平位置を有するようになる、請求項３３に記載のデバイス。
【請求項３８】
前記ビデオエンコーダが、前記隣接ＰＵが前記現在のＰＵの左上隣接ＰＵに対応するときに、前記現在のＰＵの前記左上隣接ＰＵを前記ＣＵの左上隣接ＰＵで代替するように構成される、請求項３３に記載のデバイス。
【請求項３９】
前記ビデオエンコーダが、前記隣接ＰＵが前記現在のＰＵの左上隣接ＰＵに対応するときに、前記現在のＰＵの前記左上隣接ＰＵを前記ＣＵの左隣接ＰＵで代替するように構成され、結果的に前記ＣＵの前記左隣接ＰＵが前記現在のＰＵの前記左上隣接ＰＵと同じ垂直位置を有するようになる、請求項３３に記載のデバイス。
【請求項４０】
前記ビデオエンコーダが、前記隣接ＰＵが前記現在のＰＵの左上隣接ＰＵに対応するときに、前記現在のＰＵの前記左上隣接ブロックを前記ＣＵの上隣接ＰＵで代替するように構成され、結果的に前記ＣＵの前記上隣接ＰＵが前記現在のＰＵの前記左上隣接ＰＵと同じ水平位置を有するようになる、請求項３３に記載のデバイス。
【請求項４１】
集積回路、
マイクロプロセッサ、および
ワイヤレス通信デバイス
のうちの少なくとも１つを備える、請求項４１に記載のデバイス。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０２０６
【補正方法】変更
【補正の内容】
【０２０６】
[0221]  様々な例について説明した。これらおよび他の例は以下の特許請求の範囲内に入る。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[Ｃ１]  ビデオデータを復号する方法であって、
包含ブロック内にあるビデオデータの現在のブロックが視差動きベクトルを使用して符号化されていると判断することと、
前記現在のブロックの隣接ブロックも前記包含ブロック内にあるとの判断に基づいて、候補リスト中で前記隣接ブロックを、前記包含ブロックの外にあって前記包含ブロックに隣接するブロックで代替することと、
前記候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、
前記視差動きベクトル予測子に基づいて前記視差動きベクトルを復号することと
を備える方法。
[Ｃ２]  前記包含ブロックが動き推定領域（ＭＥＲ）を備え、前記現在のブロックがコーディングユニット（ＣＵ）および予測ユニット（ＰＵ）のうちの１つを備える、Ｃ１に記載の方法。
[Ｃ３]  代替することが、前記隣接ブロックが前記現在のブロックの左下隣接ブロックに対応するときに、前記現在のブロックの前記左下隣接ブロックを前記ＭＥＲの左下隣接ブロックで代替することを備える、Ｃ２に記載の方法。
[Ｃ４]  代替することが、前記隣接ブロックが前記現在のブロックの左下隣接ブロックに対応するときに、前記現在のブロックの前記左下隣接ブロックを前記ＭＥＲの左隣接ブロックで代替することを備え、結果的に前記ＭＥＲの前記左隣接ブロックが前記現在のブロックの前記左下隣接ブロックと同じ垂直位置を有するようになる、Ｃ２に記載の方法。
[Ｃ５]  代替することが、前記隣接ブロックが前記現在のブロックの右上隣接ブロックに対応するときに、前記現在のブロックの前記右上隣接ブロックを前記ＭＥＲの右上隣接ブロックで代替することを備える、Ｃ２に記載の方法。
[Ｃ６]  代替することが、前記隣接ブロックが前記現在のブロックの右上隣接ブロックに対応するときに、前記現在のブロックの前記右上隣接ブロックを前記ＭＥＲの上隣接ブロックで代替することを備え、結果的に前記ＭＥＲの前記上隣接ブロックが前記現在のブロックの前記右上隣接ブロックと同じ水平位置を有するようになる、Ｃ２に記載の方法。
[Ｃ７]  代替することが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの左上隣接ブロックで代替することを備える、Ｃ２に記載の方法。
[Ｃ８]  代替することが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの左隣接ブロックで代替することを備え、結果的に前記ＭＥＲの前記左隣接ブロックが前記現在のブロックの前記左上隣接ブロックと同じ垂直位置を有するようになる、Ｃ２に記載の方法。
[Ｃ９]  代替することが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの上隣接ブロックで代替ことを備え、結果的に前記ＭＥＲの前記上隣接ブロックが前記現在のブロックの前記左上隣接ブロックと同じ水平位置を有するようになる、Ｃ２に記載の方法。
[Ｃ１０]  前記包含ブロックがコーディングユニット（ＣＵ）を備え、前記現在のブロックが予測ユニット（ＰＵ）を備える、Ｃ１に記載の方法。
[Ｃ１１]  前記視差動きベクトルを使用してビデオデータの前記現在のブロックを復号することをさらに備える、Ｃ１に記載の方法。
[Ｃ１２]  前記視差動きベクトルを復号することが、
動きベクトル差分値を復号することと、
前記視差動きベクトル予測子に前記動きベクトル差分値を追加して前記視差動きベクトルを再生することと
を備える、Ｃ１に記載の方法。
[Ｃ１３]  ビデオデータを復号するためのデバイスであって、包含ブロック内にあるビデオデータの現在のブロックが視差動きベクトルを使用して符号化されていると判断することと、前記現在のブロックの隣接ブロックも前記包含ブロック内にあるとの判断に基づいて、候補リスト中で前記隣接ブロックを、前記包含ブロックの外にあって前記包含ブロックに隣接するブロックで代替することと、前記候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、前記視差動きベクトル予測子に基づいて前記視差動きベクトルを復号することとを行うように構成されたビデオデコーダを備えるデバイス。
[Ｃ１４]  前記包含ブロックが動き推定領域（ＭＥＲ）を備え、前記現在のブロックがコーディングユニット（ＣＵ）および予測ユニット（ＰＵ）のうちの１つを備える、Ｃ１３に記載のデバイス。
[Ｃ１５]  前記ビデオデコーダが、前記隣接ブロックが前記現在のブロックの左下隣接ブロックに対応するときに、前記現在のブロックの前記左下隣接ブロックを前記ＭＥＲの左下隣接ブロックで代替するように構成される、Ｃ１４に記載のデバイス。
[Ｃ１６]  前記ビデオデコーダが、前記隣接ブロックが前記現在のブロックの左下隣接ブロックに対応するときに、前記現在のブロックの前記左下隣接ブロックを前記ＭＥＲの左隣接ブロックで代替するように構成され、結果的に前記ＭＥＲの前記左隣接ブロックが前記現在のブロックの前記左下隣接ブロックと同じ垂直位置を有するようになる、Ｃ１４に記載のデバイス。
[Ｃ１７]  前記ビデオデコーダが、前記隣接ブロックが前記現在のブロックの右上隣接ブロックに対応するときに、前記現在のブロックの前記右上隣接ブロックを前記ＭＥＲの右上隣接ブロックで代替するように構成される、Ｃ１４に記載のデバイス。
[Ｃ１８]  前記ビデオデコーダが、前記隣接ブロックが前記現在のブロックの右上隣接ブロックに対応するときに、前記現在のブロックの前記右上隣接ブロックを前記ＭＥＲの上隣接ブロックで代替するように構成され、結果的に前記ＭＥＲの前記上隣接ブロックが前記現在のブロックの前記右上隣接ブロックと同じ水平位置を有するようになる、Ｃ１４に記載のデバイス。
[Ｃ１９]  前記ビデオデコーダが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの左上隣接ブロックで代替するように構成される、Ｃ１４に記載のデバイス。
[Ｃ２０]  前記ビデオデコーダが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの左隣接ブロックで代替するように構成され、結果的に前記ＭＥＲの前記左隣接ブロックが前記現在のブロックの前記左上隣接ブロックと同じ垂直位置を有するようになる、Ｃ１４に記載のデバイス。
[Ｃ２１]  前記ビデオデコーダが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの上隣接ブロックで代替するように構成され、結果的に前記ＭＥＲの前記上隣接ブロックが前記現在のブロックの前記左上隣接ブロックと同じ水平位置を有するようになる、Ｃ１４に記載のデバイス。
[Ｃ２２]  前記包含ブロックがコーディングユニット（ＣＵ）を備え、前記現在のブロックが予測ユニット（ＰＵ）を備える、Ｃ１３に記載のデバイス。
[Ｃ２３]  前記ビデオデコーダが、前記視差動きベクトルを使用してビデオデータの前記現在のブロックを復号するようにさらに構成される、Ｃ１３に記載のデバイス。
[Ｃ２４]  前記ビデオデコーダが、動きベクトル差分値を復号することと、前記視差動きベクトル予測子に前記動きベクトル差分値を追加して前記視差動きベクトルを再生することとを行うように構成される、Ｃ１３に記載のデバイス。
[Ｃ２５]  前記デバイスが、
集積回路、
マイクロプロセッサ、および
ワイヤレス通信デバイス
のうちの少なくとも１つを備える、Ｃ１３に記載のデバイス。
[Ｃ２６]  ビデオデータを復号するためのデバイスであって、
包含ブロック内にあるビデオデータの現在のブロックが視差動きベクトルを使用して符号化されていると判断するための手段と、
前記現在のブロックの隣接ブロックも前記包含ブロック内にあるとの判断に基づいて、候補リスト中で前記隣接ブロックを、前記包含ブロックの外にあって前記包含ブロックに隣接するブロックで代替するための手段と、
前記候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択するための手段と、
前記視差動きベクトル予測子に基づいて前記視差動きベクトルを復号するための手段と
を備えるデバイス。
[Ｃ２７]  前記包含ブロックが動き推定領域（ＭＥＲ）を備え、前記現在のブロックがコーディングユニット（ＣＵ）および予測ユニット（ＰＵ）のうちの１つを備える、Ｃ２６に記載のデバイス。
[Ｃ２８]  実行されたとき、１つまたは複数のプロセッサに、
包含ブロック内にあるビデオデータの現在のブロックが視差動きベクトルを使用して符号化されていると判断することと、
前記現在のブロックの隣接ブロックも前記包含ブロック内にあるとの判断に基づいて、候補リスト中で前記隣接ブロックを、前記包含ブロックの外にあって前記包含ブロックに隣接するブロックで代替することと、
前記候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、
前記視差動きベクトル予測子に基づいて前記視差動きベクトルを復号することと
を行わせる命令を記憶したコンピュータ可読記憶媒体。
[Ｃ２９]  前記包含ブロックが動き推定領域（ＭＥＲ）を備え、前記現在のブロックがコーディングユニット（ＣＵ）および予測ユニット（ＰＵ）のうちの１つを備える、Ｃ２８に記載のコンピュータ可読記憶媒体。
[Ｃ３０]  ビデオデータを符号化する方法であって、
視差動きベクトルを使用して、包含ブロック内のビデオデータの現在のブロックを符号化することと、
前記現在のブロックの隣接ブロックも前記包含ブロック内にあるとの判断に基づいて、候補リスト中で前記隣接ブロックを、前記包含ブロックの外にあって前記包含ブロックに隣接するブロックで代替することと、
前記候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、
前記視差動きベクトル予測子に基づいて前記視差動きベクトルを符号化することと
を備える方法。
[Ｃ３１]  前記包含ブロックが動き推定領域（ＭＥＲ）を備え、前記現在のブロックがコーディングユニット（ＣＵ）および予測ユニット（ＰＵ）のうちの１つを備える、Ｃ３０に記載の方法。
[Ｃ３２]  代替することが、前記隣接ブロックが前記現在のブロックの左下隣接ブロックに対応するときに、前記現在のブロックの前記左下隣接ブロックを前記ＭＥＲの左下隣接ブロックで代替することを備える、Ｃ３１に記載の方法。
[Ｃ３３]  代替することが、前記隣接ブロックが前記現在のブロックの左下隣接ブロックに対応するときに、前記現在のブロックの前記左下隣接ブロックを前記ＭＥＲの左隣接ブロックで代替することを備え、結果的に前記ＭＥＲの前記左隣接ブロックが前記現在のブロックの前記左下隣接ブロックと同じ垂直位置を有するようになる、Ｃ３１に記載の方法。
[Ｃ３４]  代替することが、前記隣接ブロックが前記現在のブロックの右上隣接ブロックに対応するときに、前記現在のブロックの前記右上隣接ブロックを前記ＭＥＲの右上隣接ブロックで代替することを備える、Ｃ３１に記載の方法。
[Ｃ３５]  代替することが、前記隣接ブロックが前記現在のブロックの右上隣接ブロックに対応するときに、前記現在のブロックの前記右上隣接ブロックを前記ＭＥＲの上隣接ブロックで代替することを備え、結果的に前記ＭＥＲの前記上隣接ブロックが前記現在のブロックの前記右上隣接ブロックと同じ水平位置を有するようになる、Ｃ３１に記載の方法。
[Ｃ３６]  代替することが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの左上隣接ブロックで代替することを備える、Ｃ３１に記載の方法。
[Ｃ３７]  代替することが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの左隣接ブロックで代替することを備え、結果的に前記ＭＥＲの前記左隣接ブロックが前記現在のブロックの前記左上隣接ブロックと同じ垂直位置を有するようになる、Ｃ３１に記載の方法。
[Ｃ３８]  代替することが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの上隣接ブロックで代替することを備え、結果的に前記ＭＥＲの前記上隣接ブロックが前記現在のブロックの前記左上隣接ブロックと同じ水平位置を有するようになる、Ｃ３１に記載の方法。
[Ｃ３９]  前記包含ブロックがコーディングユニット（ＣＵ）を備え、前記現在のブロックが予測ユニット（ＰＵ）を備える、Ｃ３０に記載の方法。
[Ｃ４０]  前記視差動きベクトルを符号化することが、
前記視差動きベクトルと前記視差動きベクトル予測子との間の差分を計算することと、
前記差分を符号化することと
を備える、Ｃ３０に記載の方法。
[Ｃ４１]  ビデオデータを符号化するためのデバイスであって、視差動きベクトルを使用して、包含ブロック内のビデオデータの現在のブロックを符号化することと、前記現在のブロックの隣接ブロックも前記包含ブロック内にあるとの判断に基づいて、候補リスト中で前記隣接ブロックを、前記包含ブロックの外にあって前記包含ブロックに隣接するブロックで代替することと、前記候補リスト中の複数のブロックのうちの１つから視差動きベクトル予測子を選択することと、前記視差動きベクトル予測子に基づいて前記視差動きベクトルを符号化することとを行うように構成されたビデオエンコーダを備えるデバイス。
[Ｃ４２]  前記包含ブロックが動き推定領域（ＭＥＲ）を備え、前記現在のブロックがコーディングユニット（ＣＵ）および予測ユニット（ＰＵ）のうちの１つを備える、Ｃ４１に記載のデバイス。
[Ｃ４３]  前記ビデオエンコーダが、前記隣接ブロックが前記現在のブロックの左下隣接ブロックに対応するときに、前記現在のブロックの前記左下隣接ブロックを前記ＭＥＲの左下隣接ブロックで代替するように構成される、Ｃ４２に記載のデバイス。
[Ｃ４４]  前記ビデオエンコーダが、前記隣接ブロックが前記現在のブロックの左下隣接ブロックに対応するときに、前記現在のブロックの前記左下隣接ブロックを前記ＭＥＲの左隣接ブロックで代替するように構成され、結果的に前記ＭＥＲの前記左隣接ブロックが前記現在のブロックの前記左下隣接ブロックと同じ垂直位置を有するようになる、Ｃ４２に記載のデバイス。
[Ｃ４５]  前記ビデオエンコーダが、前記隣接ブロックが前記現在のブロックの右上隣接ブロックに対応するときに、前記現在のブロックの前記右上隣接ブロックを前記ＭＥＲの右上隣接ブロックで代替するように構成される、Ｃ４２に記載のデバイス。
[Ｃ４６]  前記ビデオエンコーダが、前記隣接ブロックが前記現在のブロックの右上隣接ブロックに対応するときに、前記現在のブロックの前記右上隣接ブロックを前記ＭＥＲの上隣接ブロックで代替するように構成され、結果的に前記ＭＥＲの前記上隣接ブロックが前記現在のブロックの前記右上隣接ブロックと同じ水平位置を有するようになる、Ｃ４２に記載のデバイス。
[Ｃ４７]  前記ビデオエンコーダが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの左上隣接ブロックで代替するように構成される、Ｃ４２に記載のデバイス。
[Ｃ４８]  前記ビデオエンコーダが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの左隣接ブロックで代替するように構成され、結果的に前記ＭＥＲの前記左隣接ブロックが前記現在のブロックの前記左上隣接ブロックと同じ垂直位置を有するようになる、Ｃ４２に記載のデバイス。
[Ｃ４９]  前記ビデオエンコーダが、前記隣接ブロックが前記現在のブロックの左上隣接ブロックに対応するときに、前記現在のブロックの前記左上隣接ブロックを前記ＭＥＲの上隣接ブロックで代替するように構成され、結果的に前記ＭＥＲの前記上隣接ブロックが前記現在のブロックの前記左上隣接ブロックと同じ水平位置を有するようになる、Ｃ４２に記載のデバイス。
[Ｃ５０]  集積回路、
マイクロプロセッサ、および
ワイヤレス通信デバイス
のうちの少なくとも１つを備える、Ｃ４１に記載のデバイス。
【国際調査報告】
2015515227.tif 000019
2015515227.tif 000020