(57)【要約】  ビデオコード化機器は、４つの等しいサイズの予測単位（ＰＵ）に区分されたコード化単位（ＣＵ）のＰＵのための動きベクトル（ＭＶ）候補リストを生成する。ビデオコード化機器は、ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換する。更に、ビデオコード化装置は、マージ候補リスト中の選択されたＭＶ候補を決定し、選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、ＰＵのための予測ビデオブロックを生成する。
2015510358.tif 000002
【特許請求の範囲】
【請求項１】
ビデオデータを符号化するための方法であって、前記方法は、
Ｂスライス中のコード化単位（ＣＵ）の予測単位（ＰＵ）のための動きベクトル（ＭＶ）候補リストを生成することと、前記ＣＵが４つの等しいサイズのＰＵに区分される、
前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換することと、
マージ候補リスト中の選択されたＭＶ候補を決定することと、
前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成することと
を備える、方法。
【請求項２】
前記ＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換することを更に備える、請求項１に記載の方法。
【請求項３】
前記ＣＵの前記ＰＵの各々のためのＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換することを更に備える、請求項１に記載の方法。
【請求項４】
ビデオシーケンスの各Ｉｎｔｅｒ＿Ｎ×Ｎ  ＣＵの各ＰＵのためのＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換することを更に備え、各Ｉｎｔｅｒ＿Ｎ×Ｎ  ＣＵが、４つの等しいサイズのＰＵに区分され、インター予測を使用してコード化される、請求項１に記載の方法。
【請求項５】
前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換することは、前記ＣＵが最小コード化単位（ＳＣＵ）サイズに等しいサイズを有すると決定したことに応答して、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換することを備える、請求項１に記載の方法。
【請求項６】
前記ＣＵが第１のＣＵであり、前記方法は、
第２のＣＵのＰＵのためのＭＶ候補リストを生成することと、
前記第２のＣＵが２Ｎ×２Ｎ、２Ｎ×Ｎ、又はＮ×２Ｎ区分モードに従ってＰＵに区分されるか、又は前記第２のＣＵの前記ＰＵの動き情報が高度動きベクトル予測（ＡＭＶＰ）モードで信号伝達されると決定したことに応答して、前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することと、
前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、
前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記第２のＣＵの前記ＰＵのための予測ビデオブロックを生成することと
を更に備える、請求項１に記載の方法。
【請求項７】
前記双方向ＭＶ候補を変換することは、前記ＰＵの動き情報がＡＭＶＰモードを使用して信号伝達されるときのみ、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換することを備える、請求項１に記載の方法。
【請求項８】
前記予測ビデオブロックに少なくとも部分的に基づいて符号化ビデオデータを出力することを更に備える、請求項１に記載の方法。
【請求項９】
前記方法がモバイルコンピュータ機器上で実行される、請求項１に記載の方法。
【請求項１０】
前記双方向ＭＶ候補が第１の双方向ＭＶ候補であり、前記単方向ＭＶ候補が第１の単方向ＭＶ候補であり、
前記ＭＶ候補リストを生成することは、前記ＭＶ候補リスト中の第２の双方向ＭＶ候補が、等しい動きベクトルを有し、リスト０及びリスト１中の同じ参照ピクチャを示すと決定したことに応答して、前記第２の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することを備え、
前記予測ビデオブロックを生成するために動き補償中に双方向から単方向への変換が実行されず、
前記ＰＵが、別のビデオブロックをコード化するための動きベクトル候補ブロックとして使用されるとき、前記ＰＵは、双方向動き情報の代わりに単方向動き情報を有する、
請求項１に記載の方法。
【請求項１１】
Ｂスライス中のコード化単位（ＣＵ）の予測単位（ＰＵ）のための動きベクトル（ＭＶ）候補リストを生成することと、前記ＣＵが４つの等しいサイズのＰＵに区分される、
前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換することと、
前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、
前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成することと
を行うように構成された１つ以上のプロセッサを備える、ビデオ符号化装置。
【請求項１２】
前記１つ以上のプロセッサが、前記ＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換するように構成された、請求項１１に記載のビデオ符号化装置。
【請求項１３】
前記１つ以上のプロセッサが、前記ＣＵの前記ＰＵの各々のＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換するように構成された、請求項１１に記載のビデオ符号化装置。
【請求項１４】
前記１つ以上のプロセッサが、ビデオシーケンスの各Ｉｎｔｅｒ＿Ｎ×Ｎ  ＣＵの各ＰＵのためのＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換するように構成され、各Ｉｎｔｅｒ＿Ｎ×Ｎ  ＣＵが、４つの等しいサイズのＰＵに区分され、インター予測を使用してコード化される、請求項１１に記載のビデオ符号化装置。
【請求項１５】
前記１つ以上のプロセッサが、前記ＣＵが最小コード化単位（ＳＣＵ）サイズに等しいサイズを有すると決定したことに応答して、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換するように構成された、請求項１１に記載のビデオ符号化装置。
【請求項１６】
前記ＣＵが第１のＣＵであり、前記１つ以上のプロセッサが、
第２のＣＵのＰＵのためのＭＶ候補リストを生成することと、
前記第２のＣＵが２Ｎ×２Ｎ、２Ｎ×Ｎ、又はＮ×２Ｎ区分モードに従ってＰＵに区分されるか、又は前記第２のＣＵの前記ＰＵの動き情報が高度動きベクトル予測（ＡＭＶＰ）モードで信号伝達されると決定したことに応答して、前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することと、
前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、
前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記第２のＣＵの前記ＰＵのための予測ビデオブロックを生成することと
を行うように更に構成された、請求項１１に記載のビデオ符号化装置。
【請求項１７】
前記１つ以上のプロセッサが、前記ＰＵの動き情報が高度動きベクトル予測（ＡＭＶＰ）モードを使用して信号伝達されるときのみ、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換するように構成された、請求項１１に記載のビデオ符号化装置。
【請求項１８】
前記１つ以上のプロセッサが、前記予測ビデオブロックに少なくとも部分的に基づいて符号化ビデオデータを出力するように更に構成された、請求項１１に記載のビデオ符号化装置。
【請求項１９】
前記双方向ＭＶ候補は第１の双方向ＭＶ候補であり、前記単方向ＭＶ候補は第１の単方向ＭＶ候補であり、
前記ＭＶ候補リストの生成が、前記ＭＶ候補リスト中の第２の双方向ＭＶ候補が、等しい動きベクトルを有し、リスト０及びリスト１中の同じ参照ピクチャを示すと決定したことに応答して、前記第２の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することを含むように前記１つ以上のプロセッサが構成され、
前記予測ビデオブロックを生成するために動き補償中に双方向から単方向への変換が実行されず、
前記ＰＵが、別のビデオブロックをコード化するための動きベクトル候補ブロックとして使用されるとき、前記ＰＵは、双方向動き情報の代わりに単方向動き情報を有する、
請求項１１に記載のビデオ符号化装置。
【請求項２０】
Ｂスライス中のコード化単位（ＣＵ）の予測単位（ＰＵ）のための動きベクトル（ＭＶ）候補リストを生成するための手段であって、前記ＣＵが４つの等しいサイズのＰＵに区分される、生成するための手段と、
前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換するための手段と、
前記ＭＶ候補リスト中の選択されたＭＶ候補を決定するための手段と、
前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成するための手段と
を備える、ビデオ符号化装置。
【請求項２１】
実行されると、１つ以上のプロセッサを、
Ｂスライス中のコード化単位（ＣＵ）の予測単位（ＰＵ）のための動きベクトル（ＭＶ）候補リストを生成することと、前記ＣＵが４つの等しいサイズのＰＵに区分される、
前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換することと、
前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、
前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成することと
を行うように構成する命令を記憶する１つ以上のコンピュータ可読記憶媒体を備える、コンピュータプログラム製品。
【請求項２２】
ビデオデータを復号するための方法であって、前記方法は、
Ｂスライス中のコード化単位（ＣＵ）の予測単位（ＰＵ）のための動きベクトル（ＭＶ）候補リストを生成することと、前記ＣＵが４つの等しいサイズのＰＵに区分される、
前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換することと、
マージ候補リスト中の選択されたＭＶ候補を決定することと、
前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成することと
を備える、方法。
【請求項２３】
前記ＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換することを更に備える、請求項２２に記載の方法。
【請求項２４】
前記ＣＵの前記ＰＵの各々のＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換することを更に備える、請求項２２に記載の方法。
【請求項２５】
ビデオシーケンスの各Ｉｎｔｅｒ＿Ｎ×Ｎ  ＣＵの各ＰＵのためのＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換することを更に備え、各Ｉｎｔｅｒ＿Ｎ×Ｎ  ＣＵが、４つの等しいサイズのＰＵに区分され、インター予測を使用してコード化される、請求項２２に記載の方法。
【請求項２６】
前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換することは、前記ＣＵが最小コード化単位（ＳＣＵ）サイズに等しいサイズを有すると決定したことに応答して、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換することを備える、請求項２２に記載の方法。
【請求項２７】
前記ＣＵが第１のＣＵであり、前記方法は、
第２のＣＵのＰＵのためのＭＶ候補リストを生成することと、
前記第２のＣＵが２Ｎ×２Ｎ、２Ｎ×Ｎ、又はＮ×２Ｎ区分モードに従ってＰＵに区分されるか、又は前記第２のＣＵの前記ＰＵの動き情報が高度動きベクトル予測（ＡＭＶＰ）モードで信号伝達されると決定したことに応答して、前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することと、
前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、
前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記第２のＣＵの前記ＰＵのための予測ビデオブロックを生成することと
を更に備える、請求項２２に記載の方法。
【請求項２８】
前記双方向ＭＶ候補を変換することは、前記ＰＵの動き情報がＡＭＶＰモードを使用して信号伝達されるときのみ、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換することを備える、請求項２２に記載の方法。
【請求項２９】
前記方法が、前記予測ビデオブロックに少なくとも部分的に基づいて復号ビデオデータを出力することを更に備える、請求項２２に記載の方法。
【請求項３０】
前記方法がモバイルコンピュータ機器上で実行される、請求項２２に記載の方法。
【請求項３１】
前記双方向ＭＶ候補は第１の双方向ＭＶ候補であり、前記単方向ＭＶ候補は第１の単方向ＭＶ候補であり、
前記ＭＶ候補リスト中の第２の双方向ＭＶ候補が、等しい動きベクトルを有し、リスト０及びリスト１中の同じ参照ピクチャを示すと決定したことに応答して、前記第２の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することを前記ＭＶ候補リストを生成することが備え、
前記予測ビデオブロックを生成するために動き補償中に双方向から単方向への変換が実行されず、
前記ＰＵが、別のビデオブロックをコード化するための動きベクトル候補ブロックとして使用されるとき、前記ＰＵは、双方向動き情報の代わりに単方向動き情報を有する、
請求項２２に記載の方法。
【請求項３２】
Ｂスライス中のコード化単位（ＣＵ）の予測単位（ＰＵ）のための動きベクトル（ＭＶ）候補リストを生成することと、前記ＣＵが４つの等しいサイズのＰＵに区分される、
前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換することと、
前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、
前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成することと
を行うように構成された１つ以上のプロセッサを備える、ビデオ復号装置。
【請求項３３】
前記１つ以上のプロセッサが、前記ＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換するように構成された、請求項３２に記載のビデオ復号装置。
【請求項３４】
前記１つ以上のプロセッサが、前記ＣＵの前記ＰＵの各々のＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換するように構成された、請求項３２に記載のビデオ復号装置。
【請求項３５】
前記１つ以上のプロセッサが、ビデオシーケンスの各Ｉｎｔｅｒ＿Ｎ×Ｎ  ＣＵの各ＰＵのためのＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換するように構成され、各Ｉｎｔｅｒ＿Ｎ×Ｎ  ＣＵが、４つの等しいサイズのＰＵに区分され、インター予測を使用してコード化される、請求項３２に記載のビデオ復号装置。
【請求項３６】
前記１つ以上のプロセッサは、前記ＣＵが最小コード化単位（ＳＣＵ）サイズに等しいサイズを有すると決定したことに応答して、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換するように構成された、請求項３２に記載のビデオ復号装置。
【請求項３７】
前記ＣＵが第１のＣＵであり、前記１つ以上のプロセッサは、
第２のＣＵのＰＵのためのＭＶ候補リストを生成することと、
前記第２のＣＵが２Ｎ×２Ｎ、２Ｎ×Ｎ、又はＮ×２Ｎ区分モードに従ってＰＵに区分されるか、又は前記第２のＣＵの前記ＰＵの動き情報が高度動きベクトル予測（ＡＭＶＰ）モードで信号伝達されると決定したことに応答して、前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することと、
前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、
前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記第２のＣＵの前記ＰＵのための予測ビデオブロックを生成することと
を行うように更に構成された、請求項３２に記載のビデオ復号装置。
【請求項３８】
前記１つ以上のプロセッサは、前記ＰＵの動き情報が高度動きベクトル予測（ＡＭＶＰ）モードを使用して信号伝達されるときのみ、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換するように構成された、請求項３２に記載のビデオ復号装置。
【請求項３９】
前記１つ以上のプロセッサが、前記予測ビデオブロックに少なくとも部分的に基づいて復号ビデオデータを出力するように更に構成された、請求項３２に記載のビデオ復号装置。
【請求項４０】
前記双方向ＭＶ候補は第１の双方向ＭＶ候補であり、前記単方向ＭＶ候補は第１の単方向ＭＶ候補であり、
前記ＭＶ候補リストの生成が、前記ＭＶ候補リスト中の第２の双方向ＭＶ候補が、等しい動きベクトルを有し、リスト０及びリスト１中の同じ参照ピクチャを示すと決定したことに応答して、前記第２の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することを備えるように前記１つ以上のプロセッサが構成され、
前記予測ビデオブロックを生成するために動き補償中に双方向から単方向への変換が実行されず、
前記ＰＵが、別のビデオブロックをコード化するための動きベクトル候補ブロックとして使用されるとき、前記ＰＵは、双方向動き情報の代わりに単方向動き情報を有する、
請求項３２に記載のビデオ復号装置。
【請求項４１】
Ｂスライス中のコード化単位（ＣＵ）の予測単位（ＰＵ）のための動きベクトル（ＭＶ）候補リストを生成するための手段と、前記ＣＵが４つの等しいサイズのＰＵに区分される、
前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換するための手段と、
前記ＭＶ候補リスト中の選択されたＭＶ候補を決定するための手段と、
前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成するための手段と
を備える、ビデオ復号装置。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]本出願は、各々の内容全体が参照により本明細書に組み込まれる、２０１２年２月８日に出願された米国仮特許出願第６１／５９６，５９７号と、２０１２年４月１１日に出願された米国仮特許出願第６１／６２２，９６８号との利益を主張する、２０１２年９月２７日に出願された米国特許出願第１３／６２８，５６２号の一部継続出願である。更に、本出願は、その内容全体が参照により本明細書に組み込まれる、２０１２年５月７日に出願された米国仮特許出願第６１／６４３，８０６号の利益を主張する。本出願はまた、その内容全体が参照により本明細書に組み込まれる、２０１２年１０月５日に出願された米国仮出願第６１／７１０，５５６号の利益を主張する。
【０００２】
[0002]本開示は、ビデオコード化に関し、詳細には、ビデオコード化におけるインター予測に関する。
【背景技術】
【０００３】
[0003]デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップ又はデスクトップコンピュータ、タブレットコンピュータ、電子ブックリーダ、デジタルカメラ、デジタル記録機器、デジタルメディアプレーヤ、ビデオゲーム機器、ビデオゲームコンソール、セルラー又は衛星無線電話、所謂「スマートフォン」、ビデオ遠隔会議機器、ビデオストリーミング機器などを含む、広範囲にわたる機器に組み込まれ得る。デジタルビデオ機器は、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４，Ｐａｒｔ１０，Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＡＶＣ）、現在開発中の高効率ビデオコード化（ＨＥＶＣ：High Efficiency Video Coding）規格によって定義された規格、及びそのような規格の拡張に記載されているビデオ圧縮技法など、ビデオ圧縮技法を実装する。ビデオ機器は、そのようなビデオ圧縮技法を実装することによって、デジタルビデオ情報をより効率的に送信、受信、符号化、復号、及び／又は記憶し得る。
【０００４】
[0004]ビデオ圧縮技法は、ビデオシーケンスに固有の冗長性を低減又は除去するために空間的（イントラピクチャ）予測及び／又は時間的（インターピクチャ）予測を実行する。ブロックベースのビデオコード化では、ビデオスライス（即ち、ビデオフレーム又はビデオフレームの一部）はビデオブロックに区分され得、これらのビデオブロックは、ツリーブロック、コード化単位（ＣＵ：coding unit）及び／又はコード化ノードと呼ばれることがある。ピクチャのイントラコード化（Ｉ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック内の参照サンプルに対する空間的予測を使用して符号化される。ピクチャのインターコード化（Ｐ又はＢ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック中の参照サンプルに対する空間的予測、又は他の参照ピクチャ中の参照サンプルに対する時間的予測を使用し得る。ピクチャはフレームと呼ばれることがあり、参照ピクチャは参照フレームと呼ばれることがある。
【０００５】
[0005]空間的予測又は時間的予測は、コード化されるべきブロックに対する予測ビデオブロックをもたらす。残差データは、コード化されるべき元のブロックと予測ビデオブロックとの間の画素差を表す。インターコード化ブロックは、予測ビデオブロックを形成する参照サンプルのブロックを指す動きベクトル、及びコード化ブロックと予測ビデオブロックとの間の差分を示す残差データに従って符号化される。イントラコード化ブロックは、イントラコード化モードと残差データとに従って符号化される。更なる圧縮のために、残差データは、画素領域から変換領域に変換されて、残差変換係数が得られ得、その残差変換係数は、次いで量子化され得る。量子化変換係数は、最初は２次元アレイで構成され、変換係数の１次元ベクトルを生成するために走査され得、なお一層の圧縮を達成するために、エントロピーコード化が適用され得る。
【発明の概要】
【０００６】
[0006]概して、本開示では、ビデオコード化プロセスにおけるインター予測のための技法について説明する。ビデオコード化機器は、４つの等しいサイズの予測単位（ＰＵ：prediction unit）に区分されたコード化単位（ＣＵ）のＰＵのための動きベクトル（ＭＶ：motion vector）候補リストを生成する。本ビデオコード化機器は、ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換する。更に、本ビデオコード化機器は、マージ候補リスト（merge candidate list）中の選択されたＭＶ候補を決定し、選択されたＭＶ候補によって指定された動き情報によって示された１つ又は複数の参照ブロックに少なくとも部分的に基づいて、ＰＵのための予測ビデオブロックを生成する。
【０００７】
[0007]一例では、本開示では、ビデオデータをコード化するための方法について説明する。本方法は、Ｂスライス中のＣＵのＰＵのためのＭＶ候補リストを生成することを備える。ＣＵは、４つの等しいサイズのＰＵに区分される。本方法はまた、ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換することを備える。更に、本方法は、マージ候補リスト中の選択されたＭＶ候補を決定することを備える。更に、本方法は、選択されたＭＶ候補によって指定された動き情報によって示された１つ又は複数の参照ブロックに少なくとも部分的に基づいて、ＰＵのための予測ビデオブロックを生成することを備える。
【０００８】
[0008]別の例では、本開示では、Ｂスライス中のＣＵのＰＵのためのＭＶ候補リストを生成するように構成された１つ又は複数のプロセッサを備えるビデオコード化機器について説明する。ＣＵは、４つの等しいサイズのＰＵに区分される。１つ又は複数のプロセッサはまた、ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換するように構成される。更に、１つ又は複数のプロセッサは、ＭＶ候補リスト中の選択されたＭＶ候補を決定するように構成される。１つ又は複数であるプロセッサはまた、選択されたＭＶ候補によって指定された動き情報によって示された１つ又は複数の参照ブロックに少なくとも部分的に基づいて、ＰＵのための予測ビデオブロックを生成するように構成される。
【０００９】
[0009]別の例では、本開示では、Ｂスライス中のＣＵのＰＵのためのＭＶ候補リストを生成するための手段であって、ＣＵが４つの等しいサイズのＰＵに区分される、生成するための手段を備えるビデオコード化機器について説明する。本ビデオコード化機器はまた、ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換するための手段を備える。更に、本ビデオコード化機器は、ＭＶ候補リスト中の選択されたＭＶ候補を決定するための手段を備える。本ビデオコード化機器はまた、選択されたＭＶ候補によって指定された動き情報によって示された１つ又は複数の参照ブロックに少なくとも部分的に基づいて、ＰＵのための予測ビデオブロックを生成するための手段を備える。
【００１０】
[0010]別の例では、本開示では、実行されると、１つ又は複数のプロセッサを、Ｂスライス中のＣＵのＰＵのためのＭＶ候補リストを生成するように構成する命令を記憶する１つ又は複数のコンピュータ可読記憶媒体を備えるコンピュータプログラム製品について説明する。ＣＵは、４つの等しいサイズのＰＵに区分される。命令はまた、１つ又は複数のプロセッサを、ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換するように構成する。更に、命令は、１つ又は複数のプロセッサを、ＭＶ候補リスト中の選択されたＭＶ候補を決定するように構成する。命令はまた、１つ又は複数のプロセッサを、選択されたＭＶ候補によって指定された動き情報によって示された１つ又は複数の参照ブロックに少なくとも部分的に基づいて、ＰＵのための予測ビデオブロックを生成するように構成する。
【００１１】
[0011]１つ又は複数の例の詳細を添付の図面及び以下の説明に記載する。他の特徴、目的、及び利点は、その説明及び図面、ならびに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１２】
【図１】[0012]本開示で説明する技法を利用し得る例示的なビデオコード化システムを示すブロック図。
【図２】[0013]本開示で説明する技法を実装するように構成された例示的なビデオエンコーダを示すブロック図。
【図３】[0014]本開示で説明する技法を実装するように構成された例示的なビデオデコーダを示すブロック図。
【図４】[0015]例示的な動き補償演算を示すフローチャート。
【図５】[0016]別の例示的な動き補償演算を示すフローチャート。
【図６】[0017]マージ候補リストを生成するための例示的な演算を示すフローチャート。
【図７】[0018]疑似マージ候補（artificial merge candidate）を生成するための例示的なプロセスを示すフローチャート。
【図８】[0019]高度動きベクトル予測（advanced motion vector prediction）モードを使用して予測単位の動き情報を決定するための例示的な演算を示すフローチャート。
【図９】[0020]本開示の１つ又は複数の技法による、例示的なビデオコード化演算を示すフローチャート。
【図１０】[0021]本開示の１つ又は複数の技法による、例示的な候補リスト生成演算を示すフローチャート。
【発明を実施するための形態】
【００１３】
[0022]以下で説明するように、ピクチャは、１つ又は複数のスライスに分割され得る。スライスの各々は、整数個のコード化単位（ＣＵ）を含み得る。各ＣＵは、１つ又は複数の予測単位（ＰＵ）を含み得る。スライスは、Ｉスライス、Ｐスライス、又はＢスライスであり得る。Ｉスライス中では、全てのＰＵがイントラ予測される。ビデオエンコーダは、Ｐスライス中のＰＵに対してイントラ予測又は単方向インター予測を実行し得る。ビデオエンコーダがＰスライス中のＰＵに対して単方向インター予測を実行するとき、ビデオエンコーダは、参照ピクチャの第１のリスト（「リスト０」）に記載されている参照ピクチャ中の参照サンプルを識別又は合成し得る。参照ブロックは、参照ピクチャ内の参照サンプルのブロックであり得る。参照サンプルは、参照ブロック中の実際の画素、又は、例えば、実際の画素を使用した補間によって、合成された画素に対応し得る。ビデオエンコーダは、次いで、ＰＵのための参照ブロックに基づいてＰＵのための予測ビデオブロックを生成し得る。
【００１４】
[0023]ビデオエンコーダは、リスト０に基づく単方向インター予測、リスト１に基づく単方向インター予測、又はリスト１及びリスト０に基づくＢスライス中の双方向インター予測を実行し得る。そのような単方向又は双方向インター予測は、ＣＵ内のＰＵに対して実行され得る。ビデオエンコーダがＰＵに対してリスト０単方向インター予測を実行するとき、ビデオエンコーダは、リスト０に記載されている参照ピクチャ中の参照ブロックを識別するか、又はリスト０に記載されている参照ピクチャ中の参照サンプルに基づいて参照ブロックを合成し得る。ビデオエンコーダは、次いで、参照ブロックに基づいてＰＵのための予測ビデオブロックを生成し得る。ビデオエンコーダがＰＵに対してリスト１単方向インター予測を実行するとき、ビデオエンコーダは、第２の参照ピクチャリスト（「リスト１」）に記載されている参照ピクチャ中の参照ブロックを識別するか、リスト１に記載されている参照ピクチャ中の参照サンプルに基づいて参照ブロックを合成し得る。ビデオエンコーダは、次いで、参照ブロックに基づいてＰＵのための予測ビデオブロックを生成し得る。ビデオエンコーダがＰＵに対して双方向インター予測を実行するとき、ビデオエンコーダは、リスト０に記載されている参照ピクチャ中の参照ブロックを識別するか、又はリスト０に記載されている参照ピクチャ中の参照サンプルに基づいて参照ブロックを合成し得る。更に、ビデオエンコーダがＰＵに対して双方向インター予測を実行するとき、ビデオエンコーダは、リスト１に記載されている参照ピクチャ中の参照ブロックを識別するか、又はリスト１に記載されている参照ピクチャ中の参照サンプルに基づいて参照ブロックを合成し得る。ビデオエンコーダは、次いで、２つの参照ブロックに基づいてＰＵのための予測ビデオブロックを生成し得る。
【００１５】
[0024]ビデオエンコーダは、ビデオエンコーダがＰＵのための予測ビデオブロックを生成するために使用した１つ又は複数の参照ブロックを識別すること又は合成することをビデオデコーダが行うことを可能にするために、コード化ビットストリーム内でＰＵの動き情報を信号伝達（signal）し得る。ＰＵの動き情報は、１つ又は複数の動きベクトルと、参照ピクチャインデックスと、インター予測がリスト０及び／又はリスト１に基づくかどうかを示すフラグとを含み得る。幾つかの事例では、ビデオエンコーダは、マージモードを使用してＰＵの動き情報を信号伝達し得る。ビデオエンコーダがマージモードを使用してＰＵの動き情報を信号伝達するとき、ビデオエンコーダは、ＰＵのためのマージ候補リストを生成し得る。マージ候補リストは複数のマージ候補を含み得、マージ候補の各々は動き情報のセットを指定する。
【００１６】
[0025]マージ候補が、リスト０又はリスト１のいずれかに記載されている参照ピクチャ中の単一の位置(location)を識別する動き情報を指定する場合、マージ候補は単方向マージ候補を備え得る。参照ブロック中のサンプルが、動き情報によって識別された参照ピクチャ中の動き情報によって識別された位置にあるサンプルに基づいて決定される場合、参照ブロックは、動き情報のセットに関連付けられ得る。例えば、参照ブロック中のサンプルが、動き情報によって識別された参照ピクチャ中の動き情報によって識別された位置にあるビデオブロック中のサンプルと同じ場合、参照ブロックは、動き情報のセットに関連付けられ得る。また、参照ブロック中のサンプルが、動き情報によって識別された参照フレーム中の動き情報によって識別された位置にあるサンプルから合成される（例えば、補間される）場合、参照ブロックは、動き情報のセットに関連付けられ得る。
【００１７】
[0026]マージ候補が、リスト０に記載されている参照ピクチャ中の位置と、リスト１に記載されている参照ピクチャ中の位置とを識別する動き情報を指定する場合、マージ候補は双方向マージ候補を備え得る。ビデオエンコーダは、異なるピクチャ中の現在ＰＵ及び／又は同一位置に配置された（co-located）ＰＵに空間的に隣接するＰＵの動き情報に基づいて、マージ候補によって指定された動き情報を生成し得る。現在ＰＵのためのマージリストを生成した後に、ビデオエンコーダは、マージ候補リスト中のマージ候補のうちの１つを選択し、選択されたマージ候補のマージ候補リスト内の位置を信号伝達し得る。ビデオデコーダは、選択されたマージ候補によって指定された動き情報に基づいて現在ＰＵの動き情報を決定し得る。
【００１８】
[0027]演算及び必要とされるメモリ帯域幅に関して、２つの参照ブロックに基づいてＰＵのための予測ビデオブロックを生成することは、単一の参照ブロックに基づいてＰＵのための予測ビデオブロックを生成することよりも複雑であり得る。Ｂスライス中の双方向インター予測ＰＵの数が増加するにつれて、２つの参照ブロックに基づいて予測ビデオブロックを生成することに関連する複雑さは増加し得る。小さい双方向インター予測ＰＵの数が増加するとき、これは特に当てはまり得る。従って、Ｂスライス中の幾つかのＰＵを単方向インター予測に制限することは、有利であり得る。
【００１９】
[0028]ビデオエンコーダは、ＰＵのためのマージ候補リストから単方向マージ候補のみを選択することによって、Ｂスライス中のＰＵを単方向インター予測に制限し得る。但し、場合によっては、マージ候補リストは、単方向マージ候補を含まないことがある。そのような場合、ビデオエンコーダは、マージモードを使用してＰＵの動き情報を信号伝達することができないことがあり、これはコード化性能を低下させ得る。更に、マージ候補リストが少なくとも１つの単方向マージ候補を含む場合でも、単方向マージ候補によって指定された動き情報に関連付けられた参照ブロックが、ＰＵに関連付けられたビデオブロックと十分に類似していない場合、コード化効率は低下し得る。
【００２０】
[0029]本開示の技法によれば、ビデオコーダ（例えば、ビデオエンコーダ又はビデオデコーダ）が、Ｂスライス中のＰＵが単方向インター予測に制限されるかどうかを決定し得る。例えば、ビデオコーダは、ＰＵを特徴づけるサイズが特定の閾値よりも小さい場合、そのＰＵが単方向インター予測に制限されると決定し得る。ＰＵを特徴づけるサイズは、ＰＵに関連付けられたビデオブロックの高さ、幅、対角線の長さなど、ＰＵに関連付けられたビデオブロックのサイズの特性であり得る。更に、ビデオコーダは、ＰＵのためのマージ候補リストを生成し、マージ候補リスト中の選択されたマージ候補を決定し得る。ＰＵが単方向インター予測に制限される場合、ビデオコーダは、選択されたマージ候補によって指定された動き情報に関連付けられた、１つ以下の参照ブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得る。ＰＵが単方向インター予測に制限されない場合、ビデオコーダは、選択されたマージ候補によって指定された動き情報に関連付けられた、１つ又は複数の参照ブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得る。このようにして幾つかのＰＵを単方向インター予測に制限することによって、ビデオコーダは、複数の参照ブロックに基づいて予測ビデオブロックを生成することに関連する複雑さを低減し得る。これは、ビデオコーダがビデオデータをコード化することが可能である速度を増加させ、データ（即ち、メモリ）帯域幅要件を低減し得る。
【００２１】
[0030]説明を簡単にするために、本開示は、位置又はビデオブロックを、ＣＵ又はＰＵと様々な空間関係を有していると説明することがある。そのような説明は、位置又はビデオブロックが、ＣＵ又はＰＵに関連付けられたビデオブロックと様々な空間関係を有していることを意味すると解釈され得る。更に、本開示では、ビデオコーダが現在コード化しているＰＵを現在ＰＵと呼ぶことがある。本開示では、ビデオコーダが現在コード化しているＣＵを現在ＣＵと呼ぶことがある。本開示では、ビデオコーダが現在コード化しているピクチャを現在ピクチャと呼ぶことがある。
【００２２】
[0031]添付の図面は例を示している。添付の図面中の参照番号によって示される要素は、以下の説明における同様の参照番号によって示される要素に対応する。本開示では、序数ワード（例えば、「第１の」、「第２の」、「第３の」など）で始まる名前を有する要素は、必ずしもそれらの要素が特定の順序を有することを暗示するとは限らない。むしろ、そのような序数語は、同じ又は同様のタイプの異なる要素を指すために使用されるにすぎない。
【００２３】
[0032]図１は、本開示の技法を利用し得る例示的なビデオコード化システム１０を示すブロック図である。本明細書で使用する「ビデオコーダ」という用語は、総称的にビデオエンコーダとビデオデコーダの両方を指す。本開示では、「ビデオコード化」又は「コード化」という用語は、総称的にビデオ符号化又はビデオ復号を指すことがある。
【００２４】
[0033]図１に示されるように、ビデオコード化システム１０は、発信源機器１２と宛先機器１４とを含む。発信源機器１２は、符号化ビデオデータを生成する。従って、発信源機器１２は、ビデオ符号化機器又はビデオ符号化装置と呼ばれることがある。宛先機器１４は、発信源機器１２によって生成された符号化ビデオデータを復号し得る。従って、宛先機器１４は、ビデオ復号機器又はビデオ復号装置と呼ばれることがある。発信源機器１２及び宛先機器１４は、ビデオコード化機器又はビデオコード化装置の例であり得る。
【００２５】
[0034]発信源機器１２及び宛先機器１４は、デスクトップコンピュータ、モバイルコンピュータ機器、ノートブック（例えば、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、所謂「スマート」フォンなどの電話ハンドセット、テレビジョン、カメラ、表示装置、デジタルメディアプレーヤ、ビデオゲームコンソール、車内コンピュータなどを含む、広範囲の機器を備え得る。幾つかの例では、発信源機器１２及び宛先機器１４は、ワイヤレス通信のために装備され得る。
【００２６】
[0035]宛先機器１４は、チャネル１６を介して発信源機器１２から符号化ビデオデータを受信し得る。チャネル１６は、発信源機器１２から宛先機器１４に符号化ビデオデータを移動することが可能なタイプの媒体又は機器を備え得る。一例では、チャネル１６は、発信源機器１２が符号化ビデオデータを宛先機器１４にリアルタイムで直接送信することを可能にする通信媒体を備え得る。この例では、発信源機器１２は、ワイヤレス通信プロトコルなどの通信規格に従って符号化ビデオデータを変調し得、変調されたビデオデータを宛先機器１４に送信し得る。通信媒体は、無線周波数（ＲＦ）スペクトル又は１つ又は複数の物理伝送線路など、ワイヤレス通信媒体又はワイヤード通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、又はインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信媒体は、発信源機器１２から宛先機器１４への通信を支援するルータ、スイッチ、基地局、又は他の機器を含み得る。
【００２７】
[0036]別の例では、チャネル１６は、発信源機器１２によって生成された符号化ビデオデータを記憶する記憶媒体に対応し得る。この例では、宛先機器１４は、ディスクアクセス又はカードアクセスを介して記憶媒体にアクセスし得る。記憶媒体は、Ｂｌｕ−ｒａｙ（登録商標）ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュメモリ、又は符号化ビデオデータを記憶するための他の適切なデジタル記憶媒体など、種々のローカルにアクセスされるデータ記憶媒体を含み得る。更なる例では、チャネル１６は、発信源機器１２によって生成された符号化ビデオを記憶する、ファイルサーバ又は別の中間記憶機器を含み得る。この例では、宛先機器１４は、ストリーミング又はダウンロードを介して、ファイルサーバ又は他の中間記憶機器に記憶された、符号化ビデオデータにアクセスし得る。ファイルサーバは、符号化ビデオデータを記憶することと、符号化ビデオデータを宛先機器１４に送信することとが可能なタイプのサーバであり得る。例示的なファイルサーバには、（例えば、ウェブサイト用の）ウェブサーバ、ファイル転送プロトコル（ＦＴＰ）サーバ、ネットワーク接続記憶（ＮＡＳ）機器、及びローカルディスクドライブが含まれる。宛先機器１４は、インターネット接続を含む標準のデータ接続を介して、符号化ビデオデータにアクセスし得る。データ接続の例示的なタイプとしては、ファイルサーバに記憶された符号化データにアクセスするのに好適な、ワイヤレスチャネル（例えば、Ｗｉ−Ｆｉ（登録商標）接続）、ワイヤード接続（例えば、ＤＳＬ、ケーブルモデムなど）、又は両方の組合せがあり得る。ファイルサーバからの符号化ビデオデータの送信は、ストリーミング送信、ダウンロード送信、又はその両方の組合せであり得る。
【００２８】
[0037]本開示の技法は、ワイヤレスの用途又は設定には限定されない。本技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、例えばインターネットを介したストリーミングビデオ送信、データ記憶媒体に記憶するためのデジタルビデオの符号化、データ記憶媒体に記憶されたデジタルビデオの復号、又は他の適用例など、様々なマルチメディア適用例のいずれかをサポートするビデオコード化に適用され得る。幾つかの例では、ビデオコード化システム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、及び／又はビデオ電話などの用途をサポートするために、単方向又は双方向のビデオ送信をサポートするように構成され得る。
【００２９】
[0038]図１の例では、発信源機器１２は、ビデオ発信源１８と、ビデオエンコーダ２０と、出力インターフェース２２とを含む。場合によっては、出力インターフェース２２は、変調器／復調器（モデム）及び／又は送信機を含み得る。発信源機器１２において、ビデオ発信源１８は、撮像装置、例えばビデオカメラ、以前に撮影されたビデオデータを含むビデオアーカイブ、ビデオコンテンツプロバイダからビデオデータを受信するためのビデオフィードインターフェース、及び／又は、ビデオデータを生成するためのコンピュータグラフィックスシステムのような発信源、あるいはそのような発信源の組合せを含み得る。
【００３０】
[0039]ビデオエンコーダ２０は、撮影されたビデオデータ、以前に撮影されたビデオデータ、又はコンピュータ生成されたビデオデータを符号化し得る。符号化ビデオデータは、発信源機器１２の出力インターフェース２２を介して宛先機器１４に直接送信され得る。符号化ビデオデータはまた、復号及び／又は再生のための宛先機器１４による後のアクセスのために記憶媒体又はファイルサーバ上に記憶され得る。
【００３１】
[0040]図１の例では、宛先機器１４は、入力インターフェース２８と、ビデオデコーダ３０と、表示装置３２とを含む。場合によっては、入力インターフェース２８は、受信機及び／又はモデムを含み得る。宛先機器１４の入力インターフェース２８は、チャネル１６を介して符号化ビデオデータを受信する。符号化ビデオデータは、ビデオデータを表す、ビデオエンコーダ２０によって生成された様々なシンタックス要素を含み得る。そのようなシンタックス要素は、通信媒体上で送信されるか、記憶媒体上に記憶されるか、又はファイルサーバ上に記憶される、符号化ビデオデータとともに含まれ得る。
【００３２】
[0041]表示装置３２は、宛先機器１４と一体化され得るか又はその外部にあり得る。幾つかの例では、宛先機器１４は、一体型表示装置を含み得、また、外部表示装置とインターフェースするように構成され得る。他の例では、宛先機器１４は表示装置であり得る。一般に、表示装置３２は、復号ビデオデータをユーザに表示する。表示装置３２は、液晶表示器（ＬＣＤ）、プラズマ表示器、有機発光ダイオード（ＯＬＥＤ）表示器、又は別のタイプの表示装置など、様々な表示装置のいずれかを備え得る。
【００３３】
[0042]ビデオエンコーダ２０及びビデオデコーダ３０は、現在開発中の高効率ビデオコード化（ＨＥＶＣ）規格など、ビデオ圧縮規格に従って動作し得、ＨＥＶＣテストモデル（ＨＭ）に準拠し得る。「ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ７」又は「ＷＤ７」と呼ばれる今度のＨＥＶＣ規格の最近のドラフトは、文書ＪＣＴＶＣ−Ｊ１００３＿ｄ５４、Ｂｒｏｓｓら、「Ｈｉｇｈ  ｅｆｆｉｃｉｅｎｃｙ  ｖｉｄｅｏ  ｃｏｄｉｎｇ（ＨＥＶＣ）  ｔｅｘｔ  ｓｐｅｃｉｆｉｃａｔｉｏｎ  ｄｒａｆｔ  ７」、ＩＴＵ−Ｔ  ＳＧ１６  ＷＰ３とＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９／ＷＧ１１とのＪｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｖｅ  Ｔｅａｍ  ｏｎ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＪＣＴ−ＶＣ）、第９回会合：スイス、ジュネーブ、２０１２年５月に記載されており、これは２０１２年９月２７日の時点で、ｈｔｔｐ：／／ｐｈｅｎｉｘ．ｉｎｔ−ｅｖｒｙ．ｆｒ／ｊｃｔ／ｄｏｃ＿ｅｎｄ＿ｕｓｅｒ／ｄｏｃｕｍｅｎｔｓ／９＿Ｇｅｎｅｖａ／ｗｇ１１／ＪＣＴＶＣ−Ｉ１００３−ｖ６．ｚｉｐからダウンロード可能であり、その全内容が参照により本明細書に組み込まれる。
【００３４】
[0043]「ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ  ８」又は「ＷＤ８」と呼ばれる新生のＨＥＶＣ規格の別の草案は、文書ＪＣＴＶＣ−Ｊ１００３、Ｂｒｏｓｓら、「Ｈｉｇｈ  ｅｆｆｉｃｉｅｎｃｙ  ｖｉｄｅｏ  ｃｏｄｉｎｇ（ＨＥＶＣ）  ｔｅｘｔ  ｓｐｅｃｉｆｉｃａｔｉｏｎ  ｄｒａｆｔ  ８」、ＩＴＵ−Ｔ  ＳＧ１６  ＷＰ３及びＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９／ＷＧ１１のＪｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｖｅ  Ｔｅａｍ  ｏｎ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＪＣＴ−ＶＣ）、第１０回会議：スウェーデン、ストックホルム、２０１２年７月において記載されており、これは２０１３年１月１７日の時点で、ｈｔｔｐ：／／ｐｈｅｎｉｘ．ｉｔ−ｓｕｄｐａｒｉｓ．ｅｕ／ｊｃｔ／ｄｏｃ＿ｅｎｄ＿ｕｓｅｒ／ｄｏｃｕｍｅｎｔｓ／１０＿Ｓｔｏｃｋｈｏｌｍ／ｗｇ１１／ＪＣＴＶＣ−Ｊ１００３−ｖ８．ｚｉｐからダウンロード可能であり、その全内容が参照により本明細書に組み込まれる。代替的に、ビデオエンコーダ２０及びビデオデコーダ３０は、代替的にＭＰＥＧ−４，Ｐａｒｔ  １０，Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＡＶＣ）と呼ばれるＩＴＵ−Ｔ  Ｈ．２６４規格など、他のプロプライエタリ規格又は業界規格、又はそのような規格の拡張に従って動作し得る。しかしながら、本開示の技法は、いかなる特定のコード化規格又はコード化技法にも限定されない。ビデオ圧縮の規格及び技法の他の例としては、ＭＰＥＧ−２、ＩＴＵ−Ｔ  Ｈ．２６３、及びＶＰ８及び関連するフォーマットなどのプロプライエタリ又はオープン発信源の圧縮フォーマットがある。
【００３５】
[0044]図１の例には示されていないが、ビデオエンコーダ２０及びビデオデコーダ３０は、それぞれオーディオエンコーダ及びデコーダと統合され得、適切なＭＵＸ−ＤＥＭＵＸユニット、又は他のハードウェア及びソフトウェアを含んで、共通のデータストリーム又は別個のデータストリーム中のオーディオとビデオの両方の符号化を処理し得る。適用可能な場合、幾つかの例では、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、又はユーザデータグラムプロトコル（ＵＤＰ）などの他のプロトコルに準拠し得る。
【００３６】
[0045]この場合も、図１は例にすぎず、本開示の技法は、符号化機器と復号機器との間のデータ通信を必ずしも含むとは限らないビデオコード化設定（例えば、ビデオ符号化又はビデオ復号）に適用され得る。他の例では、データがローカルメモリから取り出されること、ネットワークを介してストリーミングされることなどが行われ得る。符号化機器がデータを符号化し、メモリに記憶し得、及び／又は復号機器がメモリからデータを取り出し、復号し得る。多くの例では、符号化及び復号は、互いに通信しないが、メモリにデータを符号化し、及び／又はメモリからデータを取り出して復号するだけである機器によって実行される。
【００３７】
[0046]ビデオエンコーダ２０及びビデオデコーダ３０はそれぞれ、１つ又は複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ハードウェアなど、様々な好適な回路のいずれか、又はそれらの任意の組合せとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、機器は、好適な非一時的コンピュータ可読記憶媒体にソフトウェアの命令を記憶し得、１つ又は複数のプロセッサを使用してその命令をハードウェアで実行して、本開示の技法を実行し得る。（ハードウェア、ソフトウェア、ハードウェアとソフトウェアの組合せなどを含む）上記のいずれも、１つ又は複数のプロセッサであると見なされ得る。ビデオエンコーダ２０及びビデオデコーダ３０の各々は１つ又は複数のエンコーダ又はデコーダ中に含まれ得、そのいずれも、それぞれの機器において複合エンコーダ／デコーダ（コーデック）の一部として統合され得る。
【００３８】
[0047]本開示では、概して、ビデオエンコーダ２０が、ある情報をビデオデコーダ３０などの別の機器に「信号伝達」することに言及することがある。但し、ビデオエンコーダ２０は、幾つかのシンタックス要素をビデオデータの様々な符号化部分に関連付けることによって情報を信号伝達し得ることを理解されたい。即ち、ビデオエンコーダ２０は、幾つかのシンタックス要素をビデオデータの様々な符号化部分のヘッダに記憶することによってデータを「信号伝達」し得る。場合によっては、そのようなシンタックス要素は、ビデオデコーダ３０によって受信され、復号されるより前に、符号化され、（例えば、記憶システムに）記憶され得る。従って、「信号伝達」という用語は、概して、圧縮されたビデオデータを復号するために使用されるシンタックス又は他のデータの通信を指し得る。そのような通信は、リアルタイム又はほぼリアルタイムに行われ得る。代替として、そのような通信は、符号化時に符号化ビットストリーム中でシンタックス要素を媒体に記憶するときに行われることがあるなど、ある時間帯にわたって行われ得、次いで、これらの要素は、この媒体に記憶された後の任意の時間に、復号機器によって取り出され得る。
【００３９】
[0048]上記で手短に述べられたように、ビデオエンコーダ２０は、ビデオデータを符号化する。ビデオデータは、１つ又は複数のピクチャを備え得る。ピクチャの各々は、ビデオの一部を形成する静止画像であり得る。幾つかの事例では、ピクチャはビデオ「フレーム」と呼ばれることがある。ビデオエンコーダ２０がビデオデータを符号化するとき、ビデオエンコーダ２０はビットストリームを生成し得る。ビットストリームは、ビデオデータのコード化表現を形成するビットのシーケンスを含み得る。ビットストリームは、コード化ピクチャと関連データとを含み得る。コード化ピクチャとは、ピクチャのコード化表現である。
【００４０】
[0049]ビットストリームを生成するために、ビデオエンコーダ２０は、ビデオデータ中の各ピクチャに対して符号化演算を実行し得る。ビデオエンコーダ２０がピクチャに対して符号化演算を実行するとき、ビデオエンコーダ２０は、一連のコード化ピクチャと関連データとを生成し得る。関連データは、シーケンスパラメータセット、ピクチャパラメータセット、適応パラメータセット、及び他のシンタックス構造を含み得る。シーケンスパラメータセット（ＳＰＳ）は、ピクチャの０個以上のシーケンスに適用可能なパラメータを含み得る。ピクチャパラメータセット（ＰＰＳ）は、０個以上のピクチャに適用可能なパラメータを含み得る。適応パラメータセット（ＡＰＳ）は、０個以上のピクチャに適用可能なパラメータを含み得る。ＡＰＳ中のパラメータは、ＰＰＳ中のパラメータよりも変化する可能性が高いパラメータであり得る。
【００４１】
[0050]コード化ピクチャを生成するために、ビデオエンコーダ２０は、ピクチャを等しいサイズのビデオブロックに区分し得る。ビデオブロックはサンプルの２次元アレイであり得る。ビデオブロックの各々はツリーブロックに関連付けられる。幾つかの事例では、ツリーブロックは、最大コード化単位（ＬＣＵ：largest coding unit）又はコード化ツリーブロックと呼ばれることがある。ＨＥＶＣのツリーブロックは、Ｈ．２６４／ＡＶＣなど、以前の規格のマクロブロックに広い意味で類似し得る。しかしながら、ツリーブロックは、必ずしも特定のサイズに限定されるとは限らず、１つ又は複数のコード化単位（ＣＵ）を含み得る。ビデオエンコーダ２０は、４分木区分（quadtree partitioning）を使用して、ツリーブロックのビデオブロックを、ＣＵに関連付けられたビデオブロックに区分し得、従って「ツリーブロック」という名前がある。
【００４２】
[0051]幾つかの例では、ビデオエンコーダ２０は、ピクチャを複数のスライスに区分し得る。スライスの各々は整数個のＣＵを含み得る。幾つかの事例では、スライスは、整数個のツリーブロックを備える。他の事例では、スライスの境界はツリーブロック内にあり得る。
【００４３】
[0052]ピクチャに対して符号化演算を実行することの一部として、ビデオエンコーダ２０は、ピクチャの各スライスに対して符号化演算を実行し得る。ビデオエンコーダ２０がスライスに対して符号化演算を実行するとき、ビデオエンコーダ２０は、スライスに関連付けられた符号化データを生成し得る。スライスに関連付けられた符号化データは「コード化スライス」と呼ばれることがある。
【００４４】
[0053]コード化スライスを生成するために、ビデオエンコーダ２０は、スライス中の各ツリーブロックに対して符号化演算を実行し得る。ビデオエンコーダ２０がツリーブロックに対して符号化演算を実行するとき、ビデオエンコーダ２０は、コード化ツリーブロックを生成し得る。コード化ツリーブロックは、ツリーブロックの符号化表現を備え得る。
【００４５】
[0054]ビデオエンコーダ２０がコード化スライスを生成するとき、ビデオエンコーダ２０は、ラスタ走査順序に従ってスライス中の（この場合最大コード化単位を表す）ツリーブロックに対して符号化演算を実行し得る（即ち、そのツリーブロックを符号化し得る）。言い換えれば、ビデオエンコーダ２０は、スライス中のツリーブロックの一番上の行にわたって左から右に進み、次いでツリーブロックの次の下の行にわたって左から右に進み、以下同様に進む、順序で、ビデオエンコーダ２０がスライス中のツリーブロックの各々を符号化するまで、スライスのツリーブロックを符号化し得る。
【００４６】
[0055]ラスタ走査順序に従ってツリーブロックを符号化した結果として、所与のツリーブロックの上及び左のツリーブロックは符号化されていることがあるが、所与のツリーブロックの下及び右のツリーブロックはまだ符号化されていない。従って、ビデオエンコーダ２０は、所与のツリーブロックを符号化するとき、所与のツリーブロックの上及び左のツリーブロックを符号化することによって生成された情報にアクセスすることが可能であり得る。しかしながら、ビデオエンコーダ２０は、所与のツリーブロックを符号化するとき、所与のツリーブロックの下及び右のツリーブロックを符号化することによって生成された情報にアクセスすることができないことがある。
【００４７】
[0056]コード化ツリーブロックを生成するために、ビデオエンコーダ２０は、ツリーブロックのビデオブロックに対して４分木区分を再帰的に実行して、ビデオブロックを徐々により小さいビデオブロックに分割し得る。より小さいビデオブロックの各々は異なるＣＵに関連付けられ得る。例えば、ビデオエンコーダ２０は、ツリーブロックのビデオブロックを４つの等しいサイズのサブブロックに区分し、サブブロックのうちの１つ又は複数を、４つの等しいサイズのサブサブブロックに区分し得、以下同様である。区分されたＣＵは、それのビデオブロックが、他のＣＵに関連付けられたビデオブロックに区分された、ＣＵであり得る。区分されていないＣＵは、それのビデオブロックが、他のＣＵに関連付けられたビデオブロックに区分されていない、ＣＵであり得る。
【００４８】
[0057]ビットストリーム中の１つ又は複数のシンタックス要素は、ビデオエンコーダ２０がツリーブロックのビデオブロックを区分し得る最大の回数を示し得る。ＣＵのビデオブロックは形状が正方形であり得る。ＣＵのビデオブロックのサイズ（即ち、ＣＵのサイズ）は、８×８画素から、最大で６４×６４画素以上をもつツリーブロックのビデオブロックのサイズ（即ち、ツリーブロックのサイズ）までわたり得る。
【００４９】
[0058]ビデオエンコーダ２０は、ｚ走査順序に従って、ツリーブロックの各ＣＵに対して符号化演算を実行し得る（即ち、各ＣＵを符号化し得る）。言い換えれば、ビデオエンコーダ２０は、左上のＣＵと、右上のＣＵと、左下のＣＵと、次いで右下のＣＵとを、その順序で符号化し得る。ビデオエンコーダ２０が区分されたＣＵに対して符号化演算を実行するとき、ビデオエンコーダ２０は、ｚ走査順序に従って、区分されたＣＵのビデオブロックのサブブロックに関連付けられたＣＵを符号化し得る。言い換えれば、ビデオエンコーダ２０は、左上のサブブロックに関連付けられたＣＵと、右上のサブブロックに関連付けられたＣＵと、左下のサブブロックに関連付けられたＣＵと、次いで右下のサブブロックに関連付けられたＣＵとを、その順序で符号化し得る。
【００５０】
[0059]ｚ走査順序に従ってツリーブロックのＣＵを符号化した結果として、所与のＣＵの上、左上、右上、左、及び左下のＣＵは符号化されていることがある。所与のＣＵの下又は右のＣＵはまだ符号化されていない。従って、ビデオエンコーダ２０は、所与のＣＵを符号化するとき、所与のＣＵに隣接する幾つかのＣＵを符号化することによって生成された情報にアクセスすることが可能であり得る。しかしながら、ビデオエンコーダ２０は、所与のＣＵを符号化するとき、所与のＣＵに隣接する他のＣＵを符号化することによって生成された情報にアクセスすることができない可能性がある。
【００５１】
[0060]ビデオエンコーダ２０が区分されていないＣＵを符号化するとき、ビデオエンコーダ２０は、ＣＵのために１つ又は複数の予測単位（ＰＵ）を生成し得る。ＣＵのＰＵの各々は、ＣＵのビデオブロック内の異なるビデオブロックに関連付けられ得る。ビデオエンコーダ２０は、ＣＵの各ＰＵのための予測ビデオブロックを生成し得る。ＰＵの予測ビデオブロックはサンプルのブロックであり得る。ビデオエンコーダ２０は、イントラ予測又はインター予測を使用して、ＰＵのための予測ビデオブロックを生成し得る。
【００５２】
[0061]ビデオエンコーダ２０がイントラ予測を使用してＰＵの予測ビデオブロックを生成するとき、ビデオエンコーダ２０は、ＰＵに関連付けられたピクチャの復号サンプルに基づいて、ＰＵの予測ビデオブロックを生成し得る。ビデオエンコーダ２０がイントラ予測を使用してＣＵのＰＵの予測ビデオブロックを生成する場合、ＣＵはイントラ予測されたＣＵである。
【００５３】
[0062]ビデオエンコーダ２０がインター予測を使用してＰＵの予測ビデオブロックを生成するとき、ビデオエンコーダ２０は、ＰＵに関連付けられたピクチャ以外の１つ又は複数のピクチャの復号サンプルに基づいて、ＰＵの予測ビデオブロックを生成し得る。ビデオエンコーダ２０がインター予測を使用してＣＵのＰＵの予測ビデオブロックを生成する場合、ＣＵはインター予測されたＣＵである。
【００５４】
[0063]更に、ビデオエンコーダ２０がインター予測を使用してＰＵの予測ビデオブロックを生成するとき、ビデオエンコーダ２０は、ＰＵの動き情報を生成し得る。ＰＵの動き情報は、ＰＵの１つ又は複数の参照ブロックを示し得る。ＰＵの各参照ブロックは参照ピクチャ内のビデオブロックであり得る。参照ピクチャはＰＵに関連付けられたピクチャ以外のピクチャであり得る。幾つかの事例では、ＰＵの参照ブロックはＰＵの「参照サンプル」と呼ばれることもある。ビデオエンコーダ２０は、ＰＵの参照ブロックに基づいてＰＵの予測ビデオブロックを生成し得る。
【００５５】
[0064]上記で説明したように、スライスは、Ｉスライス、Ｐスライス、又はＢスライスであり得る。Ｉスライス中では、全てのＰＵがイントラ予測される。Ｐスライス及びＢスライス中では、ＰＵはイントラ予測又はインター予測される。Ｐスライスは単方向予測（uni-predicted）ＰＵを含み得、Ｂスライスは単予測ＰＵと双方向予測（bi-predicted）ＰＵの両方を含み得る。ビデオエンコーダ２０が、Ｐスライス中のＰＵに対してインター予測を実行するとき、ビデオエンコーダ２０は、単一の参照ピクチャ中の位置を識別する動き情報を生成し得る。言い換えれば、ＰＵは単方向にインター予測され得る。動き情報は、参照ピクチャインデックスと動きベクトルとを含み得る。参照ピクチャインデックスは、参照ピクチャの第１の参照ピクチャリスト（「リスト０」）中の位置を示し得る。動きベクトルは、ＰＵに関連付けられたビデオブロックと、参照ピクチャ内の参照ブロックとの間の空間変位を示し得る。ビデオエンコーダ２０又はビデオデコーダ３０など、ビデオコーダは、その後、ＰＵの動き情報に関連付けられた単一の参照ブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得る。例えば、ビデオコーダは、予測ビデオブロックが参照ブロックに一致するように、ＰＵのための予測ビデオブロックを生成し得る。
【００５６】
[0065]Ｂスライス中のＰＵは、リスト０に基づいて単方向にインター予測され、第２の参照ピクチャリスト（「リスト１」）に基づいて単方向にインター予測され、又は双方向にインター予測され得る。Ｂスライス中のＰＵがリスト０に基づいて単方向にインター予測される場合、ＰＵの動き情報は、リスト０参照ピクチャインデックスと、リスト０動きベクトルとを含み得る。リスト０参照ピクチャインデックスは、参照ピクチャのリスト０中の位置を示すことによって、参照ピクチャを識別し得る。リスト０動きベクトルは、ＰＵに関連付けられたビデオブロックと、参照ピクチャ内の参照ブロックとの間の空間変位を示し得る。ビデオエンコーダ２０は、リスト０動きベクトルに関連付けられた参照ブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得る。言い換えれば、ビデオエンコーダ２０は、リスト０動きベクトルによって識別された参照サンプルのブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得、又はリスト０動きベクトルによって識別された参照サンプルのブロックから合成された（例えば、補間された）参照サンプルのブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得る。
【００５７】
[0066]Ｂスライス中のＰＵが、リスト１基づいて単方向にインター予測された場合、ＰＵの動き情報は、リスト１参照ピクチャインデックスと、リスト１動きベクトルとを含み得る。リスト１参照ピクチャインデックスは、参照ピクチャのリスト１中の位置を示すことによって、参照ピクチャを識別し得る。リスト１動きベクトルは、ＰＵと参照ピクチャ内の参照ブロックとの間の空間変位を示し得る。ビデオエンコーダ２０は、リスト１動きベクトルに関連付けられた参照サンプルのブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得る。例えば、ビデオエンコーダ２０は、リスト１動きベクトルによって識別された参照サンプルのブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得、又はリスト１動きベクトルによって識別された参照サンプルのブロックから合成された（例えば、補間された）参照サンプルのブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得る。
【００５８】
[0067]Ｂスライス中のＰＵが双方向にインター予測される場合、ＰＵの動き情報は、リスト０参照ピクチャインデックスと、リスト０動きベクトルと、リスト１参照ピクチャインデックスと、リスト１動きベクトルとを含み得る。幾つかの事例では、リスト０参照ピクチャインデックスとリスト１参照ピクチャインデックスとは、同じピクチャを識別し得る。ビデオエンコーダ２０は、リスト０動きベクトル及びリスト１動きベクトルに関連付けられた参照ブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得る。幾つかの例では、ビデオエンコーダ２０は、リスト０動きベクトルに関連付けられた参照ブロック中のサンプルと、リスト１動きベクトルに関連付けられた参照ブロック中のサンプルとから、予測ビデオブロックを補間することによって、ＰＵのための予測ビデオブロックを生成し得る。
【００５９】
[0068]ビデオエンコーダ２０がＣＵの１つ又は複数のＰＵのための予測ビデオブロックを生成した後、ビデオエンコーダ２０は、ＣＵのＰＵのための予測ビデオブロックに基づいて、ＣＵの残差データを生成し得る。ＣＵの残差データは、ＣＵのＰＵのための予測ビデオブロック中のサンプルと、ＣＵの元のビデオブロック中のサンプルとの間の差分を示し得る。
【００６０】
[0069]更に、区分されていないＣＵに対して符号化演算を実行することの一部として、ビデオエンコーダ２０は、ＣＵの残差データに対して再帰的な４分木区分を実行して、ＣＵの残差データを、ＣＵの変換単位（ＴＵ：transform unit）に関連付けられた残差データの１つ又は複数のブロック（即ち、残差ビデオブロック）に区分し得る。ＣＵの各ＴＵは、異なる残差ビデオブロックに関連付けられ得る。
【００６１】
[0070]ビデオコーダ２０は、ＴＵに関連付けられた残差ビデオブロックに１つ又は複数の変換を適用して、ＴＵに関連付けられた変換係数ブロック（即ち、変換係数のブロック）を生成し得る。概念的に、変換係数ブロックは変換係数の２次元（２Ｄ）行列であり得る。
【００６２】
[0071]変換係数ブロックを生成した後、ビデオエンコーダ２０は、変換係数ブロックに対して量子化プロセスを実行し得る。量子化は、一般に、変換係数を表すために使用されるデータの量をできるだけ低減するために変換係数が量子化され、更なる圧縮を実現する処理を指す。量子化プロセスは、変換係数の一部又は全部に関連付けられたビット深度を低減し得る。例えば、量子化中にｎビットの変換係数がｍビットの変換係数に切り捨てられることがあり、ここで、ｎはｍよりも大きい。
【００６３】
[0072]ビデオエンコーダ２０は、各ＣＵを量子化パラメータ（ＱＰ：quantization parameter）値に関連付け得る。ＣＵに関連付けられたＱＰ値は、ビデオエンコーダ２０が、ＣＵに関連付けられた変換係数ブロックをどのように量子化するかを決定し得る。ビデオエンコーダ２０は、ＣＵに関連付けられたＱＰ値を調整することによって、ＣＵに関連付けられた変換係数ブロックに適用される量子化の程度を調整し得る。
【００６４】
[0073]ビデオエンコーダ２０が変換係数ブロックを量子化した後、ビデオエンコーダ２０は、量子化された変換係数ブロック中で変換係数を表すシンタックス要素のセットを生成し得る。ビデオエンコーダ２０は、これらのシンタックス要素のうちの幾つかに、コンテキスト適応型バイナリ算術コード化（ＣＡＢＡＣ：Context Adaptive Binary Arithmetic Coding）演算などのエントロピー符号化演算を適用し得る。
【００６５】
[0074]ビデオエンコーダ２０によって生成されるビットストリームは、一連のネットワークアブストラクションレイヤ（ＮＡＬ：Network Abstraction Layer）単位を含み得る。ＮＡＬ単位の各々は、ＮＡＬ単位中のデータのタイプの指示と、データを含んでいるバイトとを含んでいるシンタックス構造であり得る。例えば、ＮＡＬ単位は、シーケンスパラメータセット、ピクチャパラメータセット、コード化スライス、補足エンハンスメント情報（ＳＥＩ：supplemental enhancement information）、アクセス単位区切り文字、フィラーデータ、又は別のタイプのデータを表すデータを含み得る。ＮＡＬ単位中のデータは様々なシンタックス構造を含み得る。
【００６６】
[0075]ビデオデコーダ３０は、ビデオエンコーダ２０によって生成されたビットストリームを受信し得る。ビットストリームは、ビデオエンコーダ２０によって符号化されたビデオデータのコード化表現を含み得る。ビデオデコーダ３０がビットストリームを受信するとき、ビデオデコーダ３０は、ビットストリームに対して構文解析演算(parsing operation)を実行し得る。ビデオデコーダ３０が構文解析演算を実行するとき、ビデオデコーダ３０は、ビットストリームからシンタックス要素を抽出し得る。ビデオデコーダ３０は、ビットストリームから抽出されたシンタックス要素に基づいて、ビデオデータのピクチャを再構成し得る。シンタックス要素に基づいてビデオデータを再構成するためのプロセスは、一般に、シンタックス要素を生成するためにビデオエンコーダ２０によって実行されるプロセスの逆であり得る。
【００６７】
[0076]ビデオデコーダ３０がＣＵに関連付けられたシンタックス要素を抽出した後、ビデオデコーダ３０は、シンタックス要素に基づいて、ＣＵのＰＵのための予測ビデオブロックを生成し得る。加えて、ビデオデコーダ３０は、ＣＵのＴＵに関連付けられた変換係数ブロックを逆量子化し得る。ビデオデコーダ３０は、変換係数ブロックに対して逆変換を実行して、ＣＵのＴＵに関連付けられた残差ビデオブロックを再構成し得る。予測ビデオブロックを生成し、残差ビデオブロックを再構成した後、ビデオデコーダ３０は、予測ビデオブロック及び残差ビデオブロックに基づいて、ＣＵのビデオブロックを再構成し得る。このようにして、ビデオデコーダ３０は、ビットストリーム中のシンタックス要素に基づいて、ＣＵのビデオブロックを再構成し得る。
【００６８】
[0077]上記で説明したように、ビデオエンコーダ２０は、インター予測を使用して、ＣＵのＰＵのための動き情報に関連付けられた予測ビデオブロックを生成し得る。多くの事例では、所与のＰＵの動き情報は、１つ又は複数の近くのＰＵ（即ち、空間的又は時間的に所与のＰＵのビデオブロックの近くにあるビデオブロックをもつＰＵ）の動き情報と同じ又は同様である可能性がある。近くのＰＵがしばしば同様の動き情報を有するので、ビデオエンコーダ２０は、１つ又は複数の近くのＰＵの動き情報を参照して所与のＰＵの動き情報を符号化し得る。１つ又は複数の近くのＰＵの動き情報を参照して所与のＰＵの動き情報を符号化することは、所与のＰＵの動き情報を示すためにビットストリーム中で必要とされるビット数を低減し得る。
【００６９】
[0078]ビデオエンコーダ２０は、様々な方法で、１つ又は複数の近くのＰＵの動き情報を参照して所与のＰＵの動き情報を符号化し得る。例えば、ビデオエンコーダ２０は、マージモード又は高度動きベクトル予測（ＡＭＶＰ）モードを使用して所与のＰＵの動き情報を符号化し得る。マージモードを使用してＰＵの動き情報を符号化するために、ビデオエンコーダ２０は、ＰＵのためのマージ候補リストを生成し得る。マージ候補リストは１つ又は複数のマージ候補を含み得る。マージ候補の各々は動き情報のセットを指定する。ビデオエンコーダ２０は、空間マージ候補と呼ばれることがある、同じピクチャ中のＰＵと空間的に隣接するＰＵによって指定された動き情報に基づいて、又は時間マージ候補と呼ばれることがある、別のピクチャ中の同一位置に配置ＰＵに基づいて、マージ候補のうちの１つ又は複数を生成し得る。マージ候補によって指定された動き情報が２つの参照ブロックに関連付けられた場合、そのマージ候補を、本明細書では双方向マージ候補、又は双方向であるマージ候補と呼ぶことがある。そうではなく、マージ候補によって指定された動き情報が単一の参照ブロックのみに関連付けられた場合、そのマージ候補を、本明細書では単方向マージ候補、又は単方向であるマージ候補と呼ぶことがある。ビデオエンコーダ２０は、マージ候補リストからマージ候補のうちの１つを選択し、ＰＵのための候補インデックス値を信号伝達し得る。候補インデックス値は、選択されたマージ候補のマージ候補リスト中の位置を示し得る。
【００７０】
[0079]ビデオエンコーダ２０がマージモードを使用してＰＵの動き情報を符号化するとき、ビデオデコーダ３０は、ビデオエンコーダ２０がＰＵのために生成したマージ候補リストと同じＰＵのためのマージ候補リストを生成し得る。ビデオデコーダ３０は、次いで、ＰＵのための候補インデックス値に基づいて、マージ候補リスト中のマージ候補のうちのいずれの１つがビデオエンコーダ２０によって選択されたか決定し得る。ビデオデコーダ３０は、次いで、選択されたマージ候補によって指定された動き情報をＰＵの動き情報に採用し得る。選択された候補によって指定された動き情報は、１つ又は複数の動きベクトルと、１つ又は複数の参照ピクチャインデックスとを含み得る。
【００７１】
[0080]ビデオエンコーダ２０がＡＭＶＰを使用してＰＵの動き情報を信号伝達するとき、ビデオエンコーダ２０は、ＰＵがリスト０に基づいて単方向にインター予測される場合、又はＰＵがリスト０及びリスト１中の参照ピクチャに基づいて双方向にインター予測される場合、ＰＵのためのリスト０ＭＶ予測子候補（predictor candidate）リストを生成し得る。リスト０ＭＶ予測子候補リストは、１つ又は複数のＭＶ予測子候補を含み得る。ＭＶ予測子候補の各々は動き情報のセットを指定する。ビデオエンコーダ２０は、リスト０ＭＶ予測子候補リストからリスト０ＭＶ予測子候補を選択し得る。ビデオエンコーダ２０は、選択されたリスト０ＭＶ予測子候補のリスト０ＭＶ予測子候補リスト中の位置を示すリスト０ＭＶ予測子フラグを信号伝達し得る。リスト０ＭＶ予測子フラグは、「ｍｖｐ＿ｌ０＿ｆｌａｇ」として示され得る。
【００７２】
[0081]更に、デオエンコーダ２０がＡＭＶＰを使用してＰＵの動き情報を信号伝達するとき、ビデオエンコーダ２０は、ＰＵがリスト１に基づいて単方向にインター予測される場合、又はＰＵが双方向にインター予測される場合、ＰＵのためのリスト１ＭＶ予測子候補リストを生成し得る。リスト１ＭＶ予測子候補リストは、１つ又は複数のＭＶ予測子候補を含み得る。ＭＶ予測子候補の各々は動き情報のセットを指定する。ビデオエンコーダ２０は、次いで、リスト１ＭＶ予測子候補リストからリスト１ＭＶ予測子候補を選択し得る。ビデオエンコーダ２０は、選択されたリスト１ＭＶ予測子候補のリスト１ＭＶ予測子候補リスト中の位置を示すリスト１ＭＶ予測子フラグを信号伝達し得る。リスト１ＭＶ予測子フラグは、「ｍｖｐ＿ｌ１＿ｆｌａｇ」として示され得る。
【００７３】
[0082]更に、デオエンコーダ２０がＡＭＶＰを使用してＰＵの動き情報を符号化するとき、ビデオエンコーダ２０は、ＰＵがリスト０に基づいて単方向にインター予測される場合、又はＰＵが双方向にインター予測される場合、ＰＵのためのリスト０動きベクトル差分（ＭＶＤ：motion vector difference）を計算し得る。リスト０ＭＶＤは、ＰＵのリスト０動きベクトルと、選択されたリスト０ＭＶ予測子候補によって指定されたリスト０動きベクトルとの間の差分を示す。更に、ビデオエンコーダ２０は、ＰＵがリスト１に基づいて単方向予測される場合、又はＰＵが双方向にインター予測される場合、ＰＵのためのリスト１ＭＶＤを出力し得る。リスト１ＭＶＤは、ＰＵのリスト１動きベクトルと、選択されたリスト１ＭＶ予測子候補によって指定されたリスト１動きベクトルとの間の差分を示す。ビデオエンコーダ２０は、リスト０ＭＶＤ及び／又はリスト１ＭＶＤを信号伝達し得る。
【００７４】
[0083]ビデオエンコーダ２０がＡＭＶＰモードを使用してＰＵの動き情報を信号伝達するとき、ビデオデコーダ３０は、ビデオエンコーダ２０によって生成された同じリスト０ＭＶ予測子候補リスト及び／又はリスト１ＭＶ予測子候補リストを独立して生成し得る。他の例では、ビデオエンコーダ２０は、リスト０ＭＶ予測子候補リストとリスト１ＭＶ予測子候補リストとを指定するシンタックス要素を符号化し得る。ＰＵがリスト０に基づいて単方向にインター予測される場合、又はＰＵが双方向にインター予測される場合、ビデオデコーダ３０は、リスト０ＭＶ予測子候補リストから選択されたリスト０ＭＶ予測子候補を決定し得る。ビデオデコーダ３０は、次いで、選択されたリスト０ＭＶ予測子候補とＰＵのためのリスト０ＭＶＤとに基づいて、ＰＵのリスト０動きベクトルを決定し得る。例えば、ビデオデコーダ３０は、選択されたリスト０ＭＶ予測子候補によって指定されたリスト０動きベクトルとリスト０ＭＶＤとを加算することによって、ＰＵのリスト０動きベクトルを決定し得る。ＰＵがリスト１に基づいて単方向にインター予測される場合、又はＰＵが双方向にインター予測される場合、ビデオデコーダ３０は、リスト１ＭＶ予測子候補リストから選択されたリスト１ＭＶ予測子候補を決定し得る。ビデオデコーダ３０は、次いで、選択されたリスト１ＭＶ候補によって指定されたリスト１動きベクトルとリスト１ＭＶＤとに基づいて、ＰＵのリスト１動きベクトルを決定し得る。例えば、ビデオデコーダ３０は、選択されたリスト１ＭＶ候補によって指定されたリスト１動きベクトルとリスト１ＭＶＤとを加算することによって、ＰＵのリスト１動きベクトルを決定し得る。
【００７５】
[0084]上記で手短に説明したように、ビデオエンコーダ２０が、Ｂスライス中のＰＵに対してインター予測を実行するとき、ビデオエンコーダ２０は、ＰＵのための１つ又は２つの参照ブロックに関連付けられた動き情報を生成し得る。ビデオエンコーダ２０又はビデオデコーダ３０など、ビデオコーダは、次いで、ＰＵの動き情報に関連付けられた参照ブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得る。２つの参照ブロックに基づいて予測ビデオブロックを生成するために、ビデオコーダは、メモリから参照ブロックの両方を取り出し得る。メモリ帯域幅（即ち、データがメモリから転送され得るレート）は制限され得るので、メモリから２つの参照ブロックを取り出すのには、メモリから単一の参照ブロックを取り出すよりも時間がかかることがある。従って、Ｂスライスが多くの小さい双方向インター予測ＰＵを含む場合、ＰＵの各々のための２つの参照ブロックを取り出すために必要とされる追加の時間は、ビデオコーダがＢスライス中のＰＵのための予測ビデオブロックを生成することが可能である速度を低下させ得る。
【００７６】
[0085]本開示の技法の様々な例によれば、ビデオエンコーダ２０又はビデオデコーダ３０など、ビデオコーダは、Ｂスライス中のＰＵが単方向インター予測に制限されるかどうかを決定し得る。幾つかの例では、ビデオコーダは、ＰＵを特徴づけるサイズ又はパラメータに基づいて、ＰＵが単方向インター予測に制限されると決定し得る。更に、ビデオコーダは、ＰＵのためのマージ候補リストを生成し、マージ候補リスト中の選択されたマージ候補を決定し得る。ＰＵが単方向インター予測に制限される場合、ビデオコーダは、選択されたマージ候補によって指定された動き情報に関連付けられた、１つ以下の参照ブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得る。一方、ＰＵが単方向インター予測に制限されない場合、ビデオコーダは、選択されたマージ候補によって指定された動き情報に関連付けられた、１つ又は複数の参照ブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得る。ビデオコーダは、単一の参照ブロックに基づいて予測ビデオブロックを生成するとき、２つの参照ブロックに基づいて予測ビデオブロックを生成するときよりも少ないデータをメモリから転送するので、Ｂスライス中の幾つかのＰＵをビデオエンコーダ及びデコーダによる単方向インター予測に制限することは、ビデオエンコーダ及びデコーダがＢスライス中のＰＵのための予測ビデオブロックを生成することが可能である速度を増加させ得る。
【００７７】
[0086]ビデオコーダ、即ち、ビデオエンコーダ又はビデオデコーダは、様々な基準に基づいて、Ｂスライス中のＰＵが単方向インター予測に制限されると決定し得る。例えば、ビデオコーダは、Ｂスライス中のＰＵを特徴づけるサイズが特定の閾値を下回る場合、ＰＵが単方向インター予測に制限されると決定し得る。この例では、ビデオコーダは、ＰＵを特徴づけるサイズが閾値を下回らない場合、ＰＵが単方向インター予測に制限されないと決定し得る。例えば、この例では、ビデオコーダは、ＰＵに関連付けられたビデオブロックの高さ又は幅が閾値を下回る場合、ＰＵが単方向インター予測に制限されると決定し得る。例えば、ビデオコーダは、ＰＵに関連付けられたビデオブロックの高さ及び／又は幅がＮ（例えば、Ｎ＝８）画素よりも小さい場合、ＰＵが単方向インター予測に制限されると決定し得る。
【００７８】
[0087]別の例では、ビデオコーダは、ＰＵに関連付けられたビデオブロックの第１の寸法が閾値よりも小さく、ＰＵに関連付けられたビデオブロックの第２の寸法が閾値以下である場合、Ｂスライス中のＰＵが単方向インター予測に制限されると決定し得る。ビデオブロックの寸法は、ビデオブロックの幅又は高さを指し得る。例えば、閾値が８に等しい場合、ビデオコーダは、ビデオブロックの幅が４に等しいが、ビデオブロックの高さが１６に等しい場合、ＰＵが単方向インター予測に制限されないと決定し得る。しかしながら、閾値が８に等しい場合、ビデオコーダは、ビデオブロックの幅が４に等しく、ビデオブロックの高さが８に等しい場合、ＰＵが単方向インター予測に制限されると決定し得る。他のサイズベースの寸法（例えば、対角寸法又は２次元メトリック）が、非正方形の矩形ブロックから正方形ブロックをより良く区別するために代替的に使用され得る。
【００７９】
[0088]別の例では、ビデオコーダは、ＰＵに関連付けられたビデオブロックの第１の寸法が第１の閾値よりも小さく、ＰＵに関連付けられたビデオブロックの第２の寸法が第２の閾値よりも小さい場合、Ｂスライス中のＰＵが単方向インター予測に制限されると決定し得る。例えば、ビデオコーダは、ビデオブロックの幅が８よりも小さく、ビデオブロックの高さが１６よりも小さい場合、ＰＵが単方向インター予測に制限されると決定し得る。幾つかの事例では、第１の閾値は第２の閾値と同じであり得る。
【００８０】
[0089]別の例では、ビデオコーダは、ＰＵ（例えば、現在ＣＵ）に関連付けられたＣＵを特徴づけるサイズが特定のサイズに等しく、ＰＵを特徴づけるサイズが閾値を下回る場合、ＰＵが単方向インター予測に制限されると決定し得る。この例では、ビデオコーダは、ＣＵを特徴づけるサイズが特定のサイズに等しくないか、又はＰＵを特徴づけるサイズが閾値を下回らない場合、ＰＵが単方向インター予測に制限されないと決定し得る。この例では、特定のサイズはＮ（例えば、Ｎ＝８）画素に等しくなり得、閾値はまた、Ｎ（例えば、Ｎ＝８）画素に等しくなり得る。この例では、８×８サイズをもつＣＵの場合、８×８よりも小さいサイズを有するＣＵのどのＰＵも、双方向インター予測を禁止され得る。
【００８１】
[0090]別の例では、ビデオコーダは、Ｂスライス中のＰＵが単方向インター予測に制限されるべきであることをパラメータが示す場合、Ｂスライス中のＰＵが単方向インター予測に制限されると決定し得る。
【００８２】
[0091]ビデオコーダは、様々な方法で、Ｂスライス中のＰＵを単方向インター予測に制限し得る。例えば、ビデオコーダは、ＰＵの動き情報に関連付けられた参照ブロックのうちの１つを無視し、ＰＵの動き情報に関連付けられた参照ブロックのうちの他の１つに基づいてＰＵの予測ビデオブロックを生成し得る。例えば、ビデオコーダはマージ候補リストを生成し得、選択されたマージ候補が双方向マージ候補である場合、ビデオコーダは、選択されたマージ候補のリスト０参照ピクチャインデックスに関連付けられた参照ブロックと、選択されたマージ候補のリスト０動きベクトルとに基づいて、ＰＵのための予測ビデオブロックを生成し得る。同様の例では、ビデオコーダは、選択されたマージ候補のリスト１参照ピクチャインデックスに関連付けられた参照ブロックと、選択されたマージ候補のリスト１動きベクトルとに基づいて、ＰＵのための予測ビデオブロックを生成し得る。
【００８３】
[0092]ビデオコーダがどのようにＢスライス中のＰＵを単方向インター予測に制限し得るかについての別の例では、ビデオコーダは、双方向マージ候補をＰＵのためのマージ候補リストに含めることなしに単方向マージ候補をＰＵのためのマージ候補リストに含め得る。ビデオコーダは、この例では、双方向マージ候補を単方向マージ候補に変換しない。この例では、ビデオコーダは、利用可能な単方向マージ候補の数がマージ候補リストを満たすには不十分である場合、疑似(artificial)単方向マージ候補をマージ候補リストに含め得る。疑似マージ候補は、１つ又は複数のＰＵの動き情報に基づいて生成されるが、１つ又は複数のＰＵの動き情報を指定しない、マージ候補であり得る。
【００８４】
[0093]ビデオコーダがどのようにＢスライス中のＰＵを単方向インター予測に制限し得るかについての別の例では、ビデオコーダは、双方向マージ候補を１つ又は複数の単方向マージ候補に変換し、１つ又は複数の単方向マージ候補をマージ候補リストに含め得る。幾つかのそのような例では、ビデオコーダは、双方向マージ候補を、リスト０中の参照ピクチャ又はリスト１中の参照ピクチャに関連付けられた単一の単方向マージ候補に変換し得る。幾つかのそのような事例では、ビデオコーダが双方向マージ候補を単方向マージ候補に変換するときはいつでも、単方向マージ候補は特定の参照リスト中の参照ピクチャに関連付けられる。例えば、ビデオコーダは、双方向マージ候補をリスト０中の参照ピクチャに関連付けられた単一の単方向マージ候補のみに変換し得る。代替として、ビデオコーダは、双方向マージ候補をリスト１中の参照ピクチャに関連付けられた単一の単方向マージ候補のみに変換し得る。他のそのような例では、ビデオコーダは、双方向マージ候補を、一方がリスト０中の参照ピクチャに関連付けられ、他方がリスト１中の参照ピクチャに関連付けられた２つの単方向マージ候補に変換し得る。従って、幾つかの例では、マージ候補リストを生成した後、ビデオコーダは、マージ候補リスト中の双方向マージ候補を単方向マージ候補に変換し、双方向マージ候補の代わりに単方向マージ候補をマージ候補リストに含め得る。
【００８５】
[0094] 幾つかの例では、ビデオコーダは、双方向マージ候補を単方向マージ候補に変換する前に、マージ候補リストから重複マージ候補を除去し得る。他の例では、ビデオコーダは、双方向マージ候補を単方向マージ候補に変換した後に、マージ候補リストから重複マージ候補を除去し得る。
【００８６】
[0095]ビデオエンコーダ２０がＡＭＶＰを使用してＢスライス中のＰＵの動き情報を符号化するとき、ビデオエンコーダ２０は、ＰＵのためのインター予測モードインジケータを生成し、エントロピー符号化し、出力し得る。インター予測モードインジケータは、「ｉｎｔｅｒ＿ｐｒｅｄ＿ｉｄｃ」として示され得る。インター予測モードインジケータは、ＰＵがリスト０に基づいて単方向にインター予測されるか、リスト１に基づいて単方向にインター予測されるか、双方向にインター予測されるかを示し得る。ビデオデコーダ３０は、ＰＵに対してインター予測を実行するときにインター予測モードインジケータを使用し得る。インター予測モードインジケータは３つの可能な値を有するので、インター予測モードインジケータは従来では２ビットを使用して表され得る。
【００８７】
[0096]しかしながら、Ｂスライス中のＰＵが単方向インター予測に制限される場合、インター予測モードインジケータは、リスト０に基づく単方向インター予測とリスト１に基づく単方向インター予測という２つの可能な値を有し得る。従って、本開示の技法によれば、Ｂスライス中のＰＵが単方向インター予測に制限される場合、インター予測モードインジケータは単一のビットを使用して表され得る。そうではなく、ＰＵが単方向インター予測に制限されない場合、インター予測モードインジケータは２ビットを使用して表され得る。ＰＵが単方向インター予測に制限されるときに、単一のビットを使用してインター予測モードインジケータを表すことは、コード化効率を高め得る。
【００８８】
[0097]更に、ＰＵが単方向インター予測に制限される場合、ＰＵが単方向インター予測に制限されない場合とは異なるコンテキストが、Ｂスライス中のＰＵのインター予測モードインジケータをエントロピーコード化するために使用され得る。これは、コード化効率を更に高め得る。
【００８９】
[0098]図２は、本開示の技法を実装するように構成された例示的なビデオエンコーダ２０を示すブロック図である。図２は、説明を目的に与えられており、本開示において広く例示され説明される技法を限定するものと見なされるべきではない。説明のために、本開示では、ＨＥＶＣコード化のコンテキストにおいてビデオエンコーダ２０について説明する。しかしながら、本開示の技法は、他のコード化規格又は方法にも適用可能であり得る。
【００９０】
[0099]図２の例では、ビデオエンコーダ２０は、複数の機能構成要素を含む。ビデオエンコーダ２０の機能構成要素は、予測処理ユニット１００と、残差生成ユニット１０２と、変換処理ユニット１０４と、量子化ユニット１０６と、逆量子化ユニット１０８と、逆変換処理ユニット１１０と、再構成ユニット１１２と、フィルタユニット１１３と、復号ピクチャバッファ１１４と、エントロピー符号化ユニット１１６とを含む。予測処理ユニット１００は、インター予測処理ユニット１２１と、動き推定ユニット１２２と、動き補償ユニット１２４と、イントラ予測処理ユニット１２６とを含む。他の例では、ビデオエンコーダ２０は、より多数の、より少数の、又は異なる機能構成要素を含み得る。更に、動き推定ユニット１２２と動き補償ユニット１２４は、高度に統合され得るが、図２の例では、説明の目的で別々に表されている。
【００９１】
[0100]ビデオエンコーダ２０はビデオデータを受信し得る。ビデオエンコーダ２０は、様々な発信源からビデオデータを受信し得る。例えば、ビデオエンコーダ２０は、ビデオ発信源１８（図１）又は別の発信源からビデオデータを受信し得る。ビデオデータは、一連のピクチャを表し得る。ビデオデータを符号化するために、ビデオエンコーダ２０は、ピクチャの各々に対して符号化演算を実行し得る。ピクチャに対して符号化演算を実行することの一部として、ビデオエンコーダ２０は、ピクチャの各スライスに対して符号化演算を実行し得る。スライスに対して符号化演算を実行することの一部として、ビデオエンコーダ２０は、スライス中のツリーブロックに対して符号化演算を実行し得る。
【００９２】
[0101]ツリーブロックに対して符号化演算を実行することの一部として、予測処理ユニット１００は、ツリーブロックのビデオブロックに対して４分木区分を実行して、ビデオブロックを徐々により小さいビデオブロックに分割し得る。より小さいビデオブロックの各々は異なるＣＵに関連付けられ得る。例えば、予測処理ユニット１００は、ツリーブロックのビデオブロックを４つの等しいサイズのサブブロックに区分し、サブブロックの１つ又は複数を、４つの等しいサイズのサブサブブロックに区分し得、以下同様である。
【００９３】
[0102]ＣＵに関連付けられるビデオブロックのサイズは、８×８サンプルから、最大で６４×６４サンプル以上のツリーブロックのサイズにまで、わたり得る。本開示では、「Ｎ×Ｎ（NxN）」及び「Ｎ×Ｎ（N by N）」は、垂直寸法及び水平寸法に関するビデオブロックのサンプル寸法、例えば、１６×１６（16x16）サンプル又は１６×１６（16 by 16）サンプルを指すために交換可能に使用され得る。一般に、１６×１６のビデオブロックは、垂直方向に１６個のサンプルを有し（ｙ＝１６）、水平方向に１６個のサンプルを有する（ｘ＝１６）。同様に、Ｎ×Ｎのブロックは、一般に、垂直方向にＮ個のサンプルを有し、水平方向にＮ個のサンプルを有し、ここで、Ｎは非負整数値を表す。
【００９４】
[0103]更に、ツリーブロックに対して符号化演算を実行することの一部として、予測処理ユニット１００は、ツリーブロック用の階層的な４分木データ構造を生成し得る。例えば、ツリーブロックは、４分木データ構造のルートノードに対応し得る。予測処理ユニット１００が、ツリーブロックのビデオブロックを４つのサブブロックに区分する場合、ルートノードは、４分木データ構造中に４つの子ノードを有する。子ノードの各々は、サブブロックのうちの１つに関連付けられたＣＵに対応する。予測処理ユニット１００が、サブブロックのうちの１つを４つのサブサブブロックに区分する場合、サブブロックに関連付けられたＣＵに対応するノードは、サブサブブロックのうちの１つに関連付けられたＣＵに各々が対応する、４つの子ノードを有し得る。
【００９５】
[0104]４分木データ構造の各ノードは、対応するツリーブロック又はＣＵのシンタックスデータ（例えば、シンタックス要素）を含み得る。例えば、４分木の中のノードは、そのノードに対応するＣＵのビデオブロックが４つのサブブロックに区分される（即ち、分割される）かどうかを示す分割フラグを含み得る。ＣＵのためのシンタックス要素は、再帰的に定義され得、ＣＵのビデオブロックがサブブロックに分割されるかどうかに依存し得る。それのビデオブロックが区分されていないＣＵは、４分木データ構造におけるリーフノードに対応し得る。コード化ツリーブロックは、対応するツリーブロック用の４分木データ構造に基づくデータを含み得る。
【００９６】
[0105]ビデオエンコーダ２０は、ツリーブロックの区分されていない各ＣＵに対して符号化演算を実行し得る。ビデオエンコーダ２０が区分されていないＣＵに対して符号化演算を実行するとき、ビデオエンコーダ２０は、区分されていないＣＵの符号化表現を生成し得る。
【００９７】
[0106]ＣＵに対して符号化演算を実行することの一部として、予測処理ユニット１００は、ＣＵの１つ又は複数のＰＵの中で、ＣＵのビデオブロックを区分し得る。ビデオエンコーダ２０及びビデオデコーダ３０は、様々なＰＵサイズをサポートし得る。特定のＣＵのサイズが２Ｎ×２Ｎであると仮定すると、ビデオエンコーダ２０及びビデオデコーダ３０は、イントラ予測用の２Ｎ×２Ｎ又はＮ×ＮのＰＵサイズと、インター予測用の２Ｎ×２Ｎ、２Ｎ×Ｎ、Ｎ×２Ｎ、Ｎ×Ｎ、又は同様の対称ＰＵサイズとをサポートし得る。ビデオエンコーダ２０及びビデオデコーダ３０は、インター予測用の２Ｎ×ｎＵ、２Ｎ×ｎＤ、ｎＬ×２Ｎ、及びｎＲ×２ＮのＰＵサイズに対する非対称区分もサポートし得る。幾つかの例では、予測処理ユニット１００は、ＣＵのビデオブロックの辺に直角に接触しない境界に沿って、ＣＵのＰＵの間でＣＵのビデオブロックを区分するように、幾何学的な区分を実行し得る。
【００９８】
[0107]インター予測処理ユニット１２１はＣＵの各ＰＵに対してインター予測を実行し得る。インター予測は時間圧縮を実現し得る。インター予測処理ユニット１２１がＰＵに対してインター予測を実行するとき、インター予測処理ユニット１２１は、ＰＵのための予測データを生成し得る。ＰＵのための予測データは、ＰＵに対応する予測ビデオブロックとＰＵのための動き情報とを含み得る。動き推定ユニット１２２は、ＰＵのための動き情報を生成し得る。場合によっては、動き推定ユニット１２２は、マージモード又はＡＭＶＰモードを使用して、ＰＵの動き情報を信号伝達し得る。動き補償ユニット１２４は、現在ピクチャとは異なる１つ又は複数のピクチャ（即ち、参照ピクチャ）のサンプルに基づいて、ＰＵの予測ビデオブロックを生成し得る。
【００９９】
[0108]スライスは、Ｉスライス、Ｐスライス、又はＢスライスであり得る。動き推定ユニット１２２及び動き補償ユニット１２４は、ＰＵがＩスライス中にあるか、Ｐスライス中にあるか、Ｂスライス中にあるかに応じて、ＣＵのＰＵに対して異なる演算を実行し得る。Ｉスライス中では、全てのＰＵがイントラ予測される。従って、ＰＵがＩスライス中にある場合、動き推定ユニット１２２及び動き補償ユニット１２４は、ＰＵに対してインター予測を実行しない。
【０１００】
[0109]ＰＵがＰスライス中にある場合、ＰＵを含んでいるピクチャは、「リスト０」と呼ばれる参照ピクチャのリストに関連付けられる。幾つかの例では、リスト０中に記載された各参照ピクチャは、表示順序において現在ピクチャの前に生じる。リスト０中の参照ピクチャの各々は、他のピクチャのインター予測に使用され得るサンプルを含んでいる。動き推定ユニット１２２が、Ｐスライス中のＰＵに関して動き推定演算を実行するとき、動き推定ユニット１２２は、ＰＵのための参照ブロックについて、リスト０中の参照ピクチャを探索し得る。ＰＵの参照ブロックは、ＰＵのビデオブロック中のサンプルに最も密接に対応するサンプルのセット、例えば、サンプルのブロックであり得る。動き推定ユニット１２２は、様々なメトリクスを使用して、参照ピクチャ中のサンプルのセットがどの程度密接にＰＵのビデオブロック中のサンプルに対応するかを決定し得る。例えば、動き推定ユニット１２２は、絶対値差分和（ＳＡＤ）、２乗差分和（ＳＳＤ）、又は他の差分による評価基準によって、参照ピクチャ中のサンプルのセットがどの程度密接にＰＵのビデオブロック中のサンプルに対応するかを決定し得る。
【０１０１】
[0110]Ｐスライス中のＰＵの参照ブロックを識別又は合成した後、動き推定ユニット１２２は、参照ブロックを含んでいる、リスト０中の参照ピクチャを示す参照ピクチャインデックスと、ＰＵと参照ブロックの間の空間変位を示す動きベクトルとを生成し得る。動き推定ユニット１２２は、動きベクトルを様々な精度に生成し得る。例えば、動き推定ユニット１２２は、１／４サンプル精度、１／８サンプル精度、又は他の分数のサンプル精度で動きベクトルを生成し得る。分数のサンプル精度の場合、参照ブロック値は、参照ピクチャ中の整数位置のサンプル値から補間され得る。動き推定ユニット１２２は、ＰＵの動き情報として、参照ピクチャインデックスと動きベクトルとを出力し得る。動き補償ユニット１２４は、ＰＵの動き情報に関連付けられた参照ブロックに基づいて、ＰＵの予測ビデオブロックを生成し得る。
【０１０２】
[0111]ＰＵがＢスライス中にある場合、ＰＵを含むピクチャは、「リスト０」及び「リスト１」と呼ばれる参照ピクチャの２つのリストと関連付けられ得る。幾つかの例では、Ｂスライスを含むピクチャは、リスト０とリスト１の組合せである、リストの組合せと関連付けられ得る。幾つかの例では、リスト１中に記載された各参照ピクチャは、表示順序において現在ピクチャの後に生じる。
【０１０３】
[0112]更に、ＰＵがＢスライス中にある場合、動き推定ユニット１２２は、ＰＵについての単方向インター予測又は双方向インター予測を実行し得る。動き推定ユニット１２２が、ＰＵについての単方向インター予測を実行するとき、動き推定ユニット１２２は、ＰＵのための参照ブロックについて、リスト０又はリスト１の参照ピクチャを探索し得る。動き推定ユニット１２２は、次いで、参照ブロックを含んでいる、リスト０又はリスト１中の参照ピクチャを示す参照ピクチャインデックスと、ＰＵと参照ブロックとの間の空間変位を示す動きベクトルとを生成し得る。
【０１０４】
[0113]動き推定ユニット１２２が、ＰＵについての双方向予測を実行するとき、動き推定ユニット１２２は、ＰＵのための参照ブロックについて、リスト０中の参照ピクチャを探索し得、また、ＰＵのための別の参照ブロックについて、リスト１中の参照ピクチャを探索し得る。動き推定ユニット１２２は、次いで、参照ブロックを含んでいる、リスト０及びリスト１中の参照ピクチャを示す参照ピクチャインデックスと、参照ブロックとＰＵの間の空間変位を示す動きベクトルとを生成し得る。ＰＵの動き情報は、ＰＵの参照ピクチャインデックスと動きベクトルとを含み得る。動き補償ユニット１２４は、ＰＵの動き情報によって示された参照ブロックに基づいて、ＰＵの予測ビデオブロックを生成し得る。
【０１０５】
[0114]動き補償ユニット１２４は、ＰＵの動き情報に関連付けられた１つ又は複数の参照ブロックに基づいて、ＰＵの予測ビデオブロックを生成し得る。本開示の技法によれば、動き補償ユニット１２４は、ＰＵが単方向インター予測に制限されるかどうかを決定し得る。更に、動き補償ユニット１２４は、ＰＵのためのマージ候補リストを生成し、マージ候補リスト中の選択されたマージ候補を決定し得る。ＰＵが単方向インター予測に制限される場合、動き補償ユニット１２４は、選択されたマージ候補によって指定された動き情報に関連付けられた、１つ以下の参照ブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得る。ＰＵが単方向インター予測に制限されない場合、動き補償ユニット１２４は、選択されたマージ候補によって指定された動き情報に関連付けられた、１つ又は複数の参照ブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得る。
【０１０６】
[0115]ＣＵに対して符号化演算を実行することの一部として、イントラ予測処理ユニット１２６は、ＣＵのＰＵに対してイントラ予測を実行し得る。イントラ予測は空間的な圧縮を実現し得る。イントラ予測処理ユニット１２６がＰＵに対してイントラ予測を実行するとき、イントラ予測処理ユニット１２６は、同じピクチャ中の他のＰＵの復号サンプルに基づいて、ＰＵのための予測データを生成し得る。ＰＵのための予測データは、予測ビデオブロックと様々なシンタックス要素とを含み得る。イントラ予測処理ユニット１２６は、Ｉスライス、Ｐスライス、及びＢスライスの中のＰＵに対してイントラ予測を実行し得る。
【０１０７】
[0116]ＰＵに対してイントラ予測を実行するために、イントラ予測処理ユニット１２６は、複数のイントラ予測モードを使用して、ＰＵのための予測データの複数のセットを生成し得る。イントラ予測処理ユニット１２６が、イントラ予測モードを使用してＰＵのための予測データのセットを生成するとき、イントラ予測処理ユニット１２６は、イントラ予測モードに関連付けられた方向及び／又は勾配で、隣接ＰＵのビデオブロックからＰＵのビデオブロックにわたって、サンプルを延ばし得る。隣接ＰＵは、ＰＵ、ＣＵ、及びツリーブロックについて左から右、上から下の符号化順序を仮定すると、ＰＵの上、右上、左上、又は左にあり得る。イントラ予測処理ユニット１２６は、様々な数のイントラ予測モード、例えば、３３個の方向性イントラ予測モードを使用し得る。幾つかの例では、イントラ予測モードの数はＰＵのサイズに依存し得る。
【０１０８】
[0117]予測処理ユニット１００は、ＰＵについて動き補償ユニット１２４によって生成された予測データ、又はＰＵについてイントラ予測処理ユニット１２６によって生成された予測データの中から、ＰＵのための予測データを選択し得る。幾つかの例では、予測処理ユニット１００は、予測データのセットのレート／歪みメトリックに基づいて、ＰＵのための予測データを選択する。
【０１０９】
[0118]予測処理ユニット１００が、イントラ予測処理ユニット１２６によって生成された予測データを選択する場合、予測処理ユニット１００は、ＰＵのための予測データを生成するために使用されたイントラ予測モード、即ち、選択されたイントラ予測モードを信号伝達し得る。予測処理ユニット１００は、選択されたイントラ予測モードを様々な方法で信号伝達し得る。例えば、選択されたイントラ予測モードは、隣接ＰＵのイントラ予測モードと同じである確率が高くなり得る。言い換えれば、隣接ＰＵのイントラ予測モードは、現在ＰＵに対して最確モード(most probable mode)であり得る。従って、予測処理ユニット１００は、選択されたイントラ予測モードが、例えば、選択されたイントラ予測モードが隣接ＰＵのイントラ予測モードと同じであることを示し得る、最確モードであることを示すために、シンタックス要素を生成し得る。他の例では、最確モードは、他のコンテキスト情報によって定義され得、幾つかの隣接又は他のファクタのモードに基づき得る。
【０１１０】
[0119]予測処理ユニット１００がＣＵのＰＵのための予測データを選択した後、残差生成ユニット１０２は、ＣＵのビデオブロックからＣＵのＰＵの予測ビデオブロックを差し引くことによって、ＣＵの残差データを生成し得る。ＣＵの残差データは、ＣＵのビデオブロック中のサンプルの異なるサンプル成分に対応する、２Ｄ残差ビデオブロックを含み得る。例えば、残差データは、ＣＵのＰＵの予測ビデオブロック中のサンプルのルミナンス成分と、ＣＵの元のビデオブロック中のサンプルのルミナンス成分との間の差分に対応する、残差ビデオブロックを含み得る。加えて、ＣＵの残差データは、ＣＵのＰＵの予測ビデオブロック中のサンプルのクロミナンス成分と、ＣＵの元のビデオブロック中のサンプルのクロミナンス成分との間の差分に対応する、残差ビデオブロックを含み得る。
【０１１１】
[0120]予測処理ユニット１００は、４分木区分を実行して、ＣＵの残差ビデオブロックをサブブロックに区分し得る。各分割されていない残差ビデオブロックは、ＣＵの異なるＴＵに関連付けられ得る。ＣＵのＴＵに関連付けられた残差ビデオブロックのサイズ及び位置は、ＣＵのＰＵに関連付けられたビデオブロックのサイズ及び位置に基づくことも基づかないこともある。「残差４分木」（ＲＱＴ：residual quad tree）として知られる４分木構造は、残差ビデオブロックの各々に関連付けられたノードを含み得る。ＣＵのＴＵは、ＲＱＴのリーフノードに対応し得る。
【０１１２】
[0121]変換処理ユニット１０４は、ＴＵに関連付けられた残差ビデオブロックに１つ又は複数の変換を適用することによって、ＣＵの各ＴＵのための１つ又は複数の変換係数ブロックを生成し得る。変換係数ブロックの各々は、変換係数の２Ｄ行列であり得る。変換処理ユニット１０４は、ＴＵに関連付けられた残差ビデオブロックに様々な変換を適用し得る。例えば、変換処理ユニット１０４は、離散コサイン変換（ＤＣＴ）、方向性変換、又は概念的に同様の変換を、ＴＵに関連付けられた残差ビデオブロックに適用し得る。
【０１１３】
[0122]変換処理ユニット１０４が、ＴＵに関連付けられた変換係数ブロックを生成した後、量子化ユニット１０６は、変換係数ブロック中の変換係数を量子化し得る。量子化ユニット１０６は、ＣＵに関連付けられたＱＰ値に基づいて、ＣＵのＴＵに関連付けられた変換係数ブロックを量子化し得る。
【０１１４】
[0123]ビデオエンコーダ２０は、様々な方法でＱＰ値をＣＵに関連付け得る。例えば、ビデオエンコーダ２０は、ＣＵに関連付けられたツリーブロックに対して、レート歪み分析を実行し得る。レート歪み分析では、ビデオエンコーダ２０は、ツリーブロックに対して符号化演算を複数回実行することによって、ツリーブロックの複数のコード化表現を生成し得る。ビデオエンコーダ２０がツリーブロックの異なる符号化表現を生成するとき、ビデオエンコーダ２０は、異なるＱＰ値をＣＵに関連付け得る。ビデオエンコーダ２０は、最小のビットレート及び歪みメトリックを有するツリーブロックのコード化表現で所与のＱＰ値がＣＵに関連付けられるとき、所与のＱＰ値がＣＵに関連付けられることを信号伝達し得る。
【０１１５】
[0124]逆量子化ユニット１０８及び逆変換処理ユニット１１０は、それぞれ、変換係数ブロックに逆量子化と逆変換とを適用して、変換係数ブロックから残差ビデオブロックを再構成し得る。再構成ユニット１１２は、再構成された残差ビデオブロックを、予測処理ユニット１００によって生成された１つ又は複数の予測ビデオブロックからの対応するサンプルに追加して、ＴＵに関連付けられた再構成されたビデオブロックを生成し得る。このようにＣＵの各ＴＵのためのビデオブロックを再構成することによって、ビデオエンコーダ２０は、ＣＵのビデオブロックを再構成し得る。
【０１１６】
[0125]加算器として表された再構成ユニット１１２がＣＵのビデオブロックを再構成した後、フィルタユニット１１３は、デブロッキング演算を実行して、ＣＵに関連付けられたビデオブロックにおけるブロッキングアーティファクトを低減し得る。１つ又は複数のデブロッキング演算を実行した後、フィルタユニット１１３は、復号ピクチャバッファ１１４にＣＵの再構成されたビデオブロックを記憶し得る。動き推定ユニット１２２及び動き補償ユニット１２４は、再構成されたビデオブロックを含んでいる参照ピクチャを使用して、後続ピクチャのＰＵに対してインター予測を実行し得る。加えて、イントラ予測処理ユニット１２６は、復号ピクチャバッファ１１４中の再構成されたビデオブロックを使用して、ＣＵと同じピクチャの中の他のＰＵに対してイントラ予測を実行し得る。
【０１１７】
[0126]エントロピー符号化ユニット１１６は、ビデオエンコーダ２０の他の機能構成要素からデータを受信し得る。例えば、エントロピー符号化ユニット１１６は、量子化ユニット１０６から変換係数ブロックを受信し得、予測処理ユニット１００からシンタックス要素を受信し得る。エントロピー符号化ユニット１１６がデータを受信するとき、エントロピー符号化ユニット１１６は、１つ又は複数のエントロピー符号化演算を実行して、エントロピー符号化されたデータを生成し得る。例えば、ビデオエンコーダ２０は、コンテキスト適応型可変長コード化（ＣＡＶＬＣ：context adaptive variable length coding）演算、ＣＡＢＡＣ演算、変数−変数（Ｖ２Ｖ：variable-to-variable）レングスコード化演算、シンタックスベースのコンテキスト適応型バイナリ算術コード化（ＳＢＡＣ：syntax-based context-adaptive binary arithmetic coding）演算、確率間隔区分エントロピー（ＰＩＰＥ：Probability Interval Partitioning Entropy）コード化演算、又は別のタイプのエントロピー符号化演算をデータに対して実行し得る。エントロピー符号化ユニット１１６は、エントロピー符号化されたデータを含むビットストリームを出力し得る。
【０１１８】
[0127]データに対してエントロピー符号化演算を実行することの一部として、エントロピー符号化ユニット１１６は、コンテキストモデルを選択し得る。エントロピー符号化ユニット１１６がＣＡＢＡＣ演算を実行している場合、コンテキストモデルは、特定の値を有する特定のビンの確率の推定値を示し得る。ＣＡＢＡＣのコンテキストでは、「ビン」という用語は、シンタックス要素の２値化されたバージョンのビットを指すために使用される。
【０１１９】
[0128]図３は、本開示の技法を実装するように構成された例示的なビデオデコーダ３０を示すブロック図である。図３は、説明のために与えられており、本開示おいて広く例示され説明される技法に対する限定ではない。説明のために、本開示では、ＨＥＶＣコード化の状況において、ビデオデコーダ３０について説明する。しかしながら、本開示の技法は、他のコード化規格又は方法にも適用可能であり得る。
【０１２０】
[0129]図３の例では、ビデオデコーダ３０は、複数の機能構成要素を含む。ビデオデコーダ３０の機能構成要素は、エントロピー復号ユニット１５０と、予測処理ユニット１５２と、逆量子化ユニット１５４と、逆変換処理ユニット１５６と、再構成ユニット１５８と、フィルタユニット１５９と、復号ピクチャバッファ１６０とを含む。予測処理ユニット１５２は、動き補償ユニット１６２とイントラ予測処理ユニット１６４とを含む。幾つかの例では、ビデオデコーダ３０は、図２のビデオエンコーダ２０に関して説明された符号化経路とは全般に逆の復号経路を実行し得る。他の例では、ビデオデコーダ３０は、より多数の、より少数の、又は異なる機能構成要素を含み得る。
【０１２１】
[0130]ビデオデコーダ３０は、符号化ビデオデータを備えるビットストリームを受信し得る。ビットストリームは、複数のシンタックス要素を含み得る。ビデオデコーダ３０がビットストリームを受信したとき、エントロピー復号ユニット１５０は、ビットストリームに対して構文解析演算を実行し得る。ビットストリームに対して構文解析演算を実行した結果として、エントロピー復号ユニット１５０は、ビットストリームからシンタックス要素を抽出し得る。構文解析演算を実行することの一部として、エントロピー復号ユニット１５０は、ビットストリーム中のエントロピー符号化されたシンタックス要素をエントロピー復号し得る。予測処理ユニット１５２、逆量子化ユニット１５４、逆変換処理ユニット１５６、再構成ユニット１５８、及びフィルタユニット１５９は、ビットストリームから抽出されたシンタックス要素に基づいて、復号ビデオデータを生成する再構成演算(reconstruction operation)を実行し得る。
【０１２２】
[0131]上記で説明したように、ビットストリームは、一連のＮＡＬ単位を備え得る。ビットストリームのＮＡＬ単位は、シーケンスパラメータセットＮＡＬ単位、ピクチャパラメータセットＮＡＬ単位、ＳＥＩ  ＮＡＬ単位などを含み得る。ビットストリームに対して構文解析演算を実行することの一部として、エントロピー復号ユニット１５０は、シーケンスパラメータセットＮＡＬ単位からのシーケンスパラメータセット、ピクチャパラメータセットＮＡＬ単位からのピクチャパラメータセット、ＳＥＩ  ＮＡＬ単位からのＳＥＩデータなどを抽出しエントロピー復号する、構文解析演算を実行し得る。
【０１２３】
[0132]加えて、ビットストリームのＮＡＬ単位は、コード化スライスＮＡＬ単位を含み得る。ビットストリームに対して構文解析演算を実行することの一部として、エントロピー復号ユニット１５０は、コード化スライスＮＡＬ単位からコード化スライスを抽出しエントロピー復号する、構文解析演算を実行し得る。コード化スライスの各々は、スライスヘッダとスライスデータとを含み得る。スライスヘッダは、スライスに関するシンタックス要素を含み得る。スライスヘッダ中のシンタックス要素は、スライスを含んでいるピクチャに関連付けられたピクチャパラメータセットを識別するシンタックス要素を含み得る。エントロピー復号ユニット１５０は、コード化されたスライスヘッダ中のシンタックス要素に対して、ＣＡＢＡＣ復号演算などのエントロピー復号演算を実行して、スライスヘッダを再構成し得る。
【０１２４】
[0133]コード化スライスのＮＡＬ単位からスライスデータを抽出することの一部として、エントロピー復号ユニット１５０は、スライスデータ中のコード化ＣＵからシンタックス要素を抽出する構文解析演算を実行し得る。抽出されたシンタックス要素は、変換係数ブロックに関連付けられたシンタックス要素を含み得る。エントロピー復号ユニット１５０は、次いで、シンタックス要素のうちの幾つかに対してＣＡＢＡＣ復号演算を実行し得る。
【０１２５】
[0134]エントロピー復号ユニット１５０が区分されていないＣＵに対して構文解析演算を実行した後、ビデオデコーダ３０は、区分されていないＣＵに対して再構成演算を実行し得る。区分されていないＣＵに対して再構成演算を実行するために、ビデオデコーダ３０は、ＣＵの各ＴＵに対して再構成演算を実行し得る。ＣＵの各ＴＵについて再構成演算を実行することによって、ビデオデコーダ３０は、ＣＵに関連付けられた残差ビデオブロックを再構成し得る。
【０１２６】
[0135]ＴＵに対して再構成演算を実行することの一部として、逆量子化ユニット１５４は、ＴＵに関連付けられた変換係数ブロックを逆量子化（inverse quantize）、即ち、逆量子化（de-quantize）し得る。逆量子化ユニット１５４は、ＨＥＶＣ用に提案された、又はＨ．２６４復号規格によって定義された逆量子化プロセスと同様の方式で、変換係数ブロックを逆量子化し得る。逆量子化ユニット１５４は、量子化の程度を決定し、同様に、逆量子化ユニット１５４が適用するべき逆量子化の程度を決定するために、変換係数ブロックのＣＵのためにビデオエンコーダ２０によって計算される量子化パラメータＱＰを使用し得る。
【０１２７】
[0136]逆量子化ユニット１５４が変換係数ブロックを逆量子化した後、逆変換処理ユニット１５６は、変換係数ブロックに関連付けられたＴＵのための残差ビデオブロックを生成し得る。逆変換処理ユニット１５６は、ＴＵのための残差ビデオブロックを生成するために、逆変換を変換係数ブロックに適用し得る。例えば、逆変換処理ユニット１５６は、逆ＤＣＴ、逆整数変換(inverse integer transform)、逆カルーネンレーベ変換(inverse Karhunen-Loeve transform)（ＫＬＴ）、逆回転変換(inverse rotational transform)、逆方向性変換(inverse directional transform)、又は別の逆変換を変換係数ブロックに適用し得る。
【０１２８】
[0137]幾つかの例では、逆変換処理ユニット１５６は、ビデオエンコーダ２０からの信号伝達に基づいて、変換係数ブロックに適用すべき逆変換を決定し得る。そのような例では、逆変換処理ユニット１５６は、変換係数ブロックに関連付けられたツリーブロックの４分木のルートノードにおいて信号伝達された変換に基づいて、逆変換を決定し得る。他の例では、逆変換処理ユニット１５６は、ブロックサイズ、コード化モードなど、１つ又は複数のコード化特性から逆変換を推論し得る。幾つかの例では、逆変換処理ユニット１５６はカスケード逆変換を適用し得る。
【０１２９】
[0138]ＰＵがスキップモードで符号化されるか、又はＰＵの動き情報がマージモードを使用して符号化される場合、動き補償ユニット１６２は、ＰＵのためのマージ候補リストを生成し得る。動き補償ユニット１６２は、次いで、マージ候補リスト中の選択されたマージ候補を識別し得る。マージ候補リスト中の選択されたマージ候補を識別した後、動き補償ユニット１６２は、選択されたマージ候補によって示された動き情報に関連付けられた、１つ又は複数の参照ブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得る。
【０１３０】
[0139]本開示の技法によれば、動き補償ユニット１６２は、ＰＵが単方向インター予測に制限されるかどうかを決定し得る。更に、動き補償ユニット１６２は、ＰＵのためのマージ候補リストを生成し、マージ候補リスト中の選択されたマージ候補を決定し得る。ＰＵが単方向インター予測に制限される場合、動き補償ユニット１６２は、選択されたマージ候補によって指定された動き情報に関連付けられた、１つ以下の参照ブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得る。そうではなく、ＰＵが単方向インター予測に制限されない場合、動き補償ユニット１６２は、選択されたマージ候補によって指定された動き情報に関連付けられた、１つ又は複数の参照ブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得る。
【０１３１】
[0140]ＰＵの動き情報がＡＭＶＰモードを使用して符号化される場合、動き補償ユニット１６２は、リスト０ＭＶ予測子候補リスト及び／又はリスト１ＭＶ予測子候補リストを生成し得る。動き補償ユニット１６２は、次いで、選択されたリスト０ＭＶ予測子候補リスト及び／又は選択されたリスト１ＭＶ予測子候補リストを決定し得る。次に、動き補償ユニット１６２は、リスト０ＭＶＤ、リスト１ＭＶＤ、選択されたリスト０ＭＶ予測子候補リストによって指定されたリスト０動きベクトル、及び／又は選択されたリスト１ＭＶ予測子候補リストによって指定されたリスト１動きベクトルに基づいて、ＰＵのためのリスト０動きベクトル及び／又はＰＵのためのリスト１動きベクトルを決定し得る。動き補償ユニット１６２は、次いで、リスト０動きベクトル及びリスト０参照ピクチャインデックス及び／又はリスト１動きベクトル及びリスト１参照ピクチャインデックスに関連付けられた参照ブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得る。
【０１３２】
[0141]幾つかの例では、動き補償ユニット１６２は、補間フィルタに基づいて補間を実行することによって、ＰＵの予測ビデオブロックを改良し得る。サブサンプル精度をもつ動き補償に使用されるべき補間フィルタのための識別子は、シンタックス要素中に含まれ得る。動き補償ユニット１６２は、ＰＵの予測ビデオブロックの生成中にビデオエンコーダ２０によって使用された同じ補間フィルタを使用して、参照ブロックのサブ整数サンプルについて補間された値を計算し得る。動き補償ユニット１６２は、受信されたシンタックス情報に従って、ビデオエンコーダ２０によって使用された補間フィルタを決定し、その補間フィルタを使用して予測ビデオブロックを生成し得る。
【０１３３】
[0142]イントラ予測を使用してＰＵが符号化される場合、イントラ予測処理ユニット１６４は、イントラ予測を実行して、ＰＵのための予測ビデオブロックを生成し得る。例えば、イントラ予測処理ユニット１６４は、ビットストリーム中のシンタックス要素に基づいて、ＰＵのためのイントラ予測モードを決定し得る。ビットストリームは、ＰＵのイントラ予測モードを決定するためにイントラ予測処理ユニット１６４が使用し得るシンタックス要素を含み得る。
【０１３４】
[0143]幾つかの事例では、シンタックス要素は、イントラ予測処理ユニット１６４が別のＰＵのイントラ予測モードを使用して現在ＰＵのイントラ予測モードを決定すべきであることを示し得る。例えば、現在ＰＵのイントラ予測モードが、隣接ＰＵのイントラ予測モードと同じであることがあり得る。言い換えれば、隣接ＰＵのイントラ予測モードは、現在ＰＵに対して最確モードであり得る。従って、この例では、ビットストリームは、ＰＵのイントラ予測モードが、隣接ＰＵのイントラ予測モードと同じであることを示す、小さいシンタックス要素を含み得る。イントラ予測処理ユニット１６４は、次いで、イントラ予測モードを使用して、空間的に隣接するＰＵのビデオブロックに基づいて、ＰＵのための予測データ（例えば、予測サンプル）を生成し得る。
【０１３５】
[0144]再構成ユニット１５８は、適用可能なとき、ＣＵのＴＵに関連付けられた残差ビデオブロックとＣＵのＰＵの予測ビデオブロックとを使用して、即ち、イントラ予測データ又はインター予測データのいずれかを使用して、ＣＵのビデオブロックを再構成し得る。詳細には、再構成ユニット１５８は、残差データを予測データに加算して、コード化ビデオデータを再構成し得る。従って、ビデオデコーダ３０は、ビットストリーム中のシンタックス要素に基づいて、予測ビデオブロックと残差ビデオブロックとを生成し得、予測ビデオブロックと残差ビデオブロックとに基づいて、ビデオブロックを生成し得る。
【０１３６】
[0145]再構成ユニット１５８がＣＵのビデオブロックを再構成した後、フィルタユニット１５９は、デブロッキング演算を実行して、ＣＵに関連付けられたブロッキングアーティファクトを低減し得る。フィルタユニット１５９がデブロッキング演算を実行してＣＵに関連付けられたブロッキングアーティファクトを低減した後、ビデオデコーダ３０は、復号ピクチャバッファ１６０にＣＵのビデオブロックを記憶し得る。復号ピクチャバッファ１６０は、後続の動き補償、イントラ予測、及び図１の表示装置３２などの表示装置上での提示のために、参照ピクチャを与え得る。例えば、ビデオデコーダ３０は、復号ピクチャバッファ１６０中のビデオブロックに基づいて、他のＣＵのＰＵに対して、イントラ予測演算又はインター予測演算を実行し得る。
【０１３７】
[0146]図４は、例示的な動き補償演算２００を示すフローチャートである。ビデオエンコーダ２０又はビデオデコーダ３０など、ビデオコーダは、動き補償演算２００を実行し得る。ビデオコーダは、動き補償演算２００を実行して、現在ＰＵのための予測ビデオブロックを生成し得る。
【０１３８】
[0147]ビデオコーダが動き補償演算２００を開始した後、ビデオコーダは、現在ＰＵのための予測モードがスキップモードであるかどうかを決定する（２０２）。現在ＰＵのための予測モードがスキップモードでない場合（２０２の「いいえ」）、ビデオコーダは、現在ＰＵのための予測モードがインターモードであり、現在ＰＵのインター予測モードがマージモードであるかどうかを決定する（２０４）。現在ＰＵの予測モードがスキップモードである場合（２０２の「はい」）、又は現在ＰＵの予測モードがインターモードであり、現在ＰＵのインター予測モードがマージモードである場合（２０４の「はい」）、ビデオコーダは、現在ＰＵのためのマージ候補リストを生成する（２０６）。マージ候補リストは複数のマージ候補を含み得る。マージ候補の各々は、１つ又は複数の動きベクトル、１つ又は複数の参照ピクチャインデックス、リスト０予測フラグ、及びリスト１予測フラグなど、動き情報のセットを指定する。マージ候補リストは、１つ又は複数の単方向マージ候補又は双方向マージ候補を含み得る。幾つかの例では、ビデオコーダは、図６に関して以下で説明する例示的な演算を実行して、マージ候補リストを生成し得る。
【０１３９】
[0148]マージ候補リストを生成した後、ビデオコーダは、マージ候補リスト中の選択されたマージ候補を決定する（２０８）。ビデオコーダがビデオエンコーダである場合、ビデオコーダは、レート歪み分析に基づいてマージ候補リストからマージ候補を選択し得る。ビデオコーダがビデオデコーダである場合、ビデオコーダは、マージ候補リスト中の選択されたマージ候補の位置を識別するシンタックス要素（例えば、ｍｅｒｇｅ＿ｉｄｘ）に基づいて、マージ候補を選択し得る。エンコーダは、符号化プロセスにおいてコード化ビットストリームの一部としてシンタックス要素（例えば、ｍｅｒｇｅ＿ｉｄｘ）を生成し得、デコーダは、復号プロセスの一部としてシンタックス要素を受信し、解釈し得る。
【０１４０】
[0149]いずれの場合も、ビデオコーダは、次いで、選択されたマージ候補によって指定された動き情報に基づいて、現在ＰＵの動き情報を決定する（２１０）。動き情報は、１つ又は複数の動きベクトルと参照ピクチャインデックスとを含み得る。ビデオデコーダは、様々な方法で、選択されたマージ候補によって指定された動き情報に基づいて現在ＰＵの動き情報を決定し得る。例えば、ビデオコーダは、現在ＰＵの動き情報が、選択されたマージ候補によって指定された動き情報と同じであると決定し得る。
【０１４１】
[0150]現在ＰＵのためのインター予測モードがマージモードでない場合（２０４の「いいえ」）、ビデオコーダは、ＡＭＶＰモードを使用して現在ＰＵの動き情報を決定する（２１２）。以下で詳細に説明する図８は、ＡＭＶＰモードを使用してＰＵの動き情報を決定するための例示的な演算を示すフローチャートである。
【０１４２】
[0151]現在ＰＵの動き情報を決定した後、ビデオコーダは、現在ＰＵが単方向インター予測に制限されるかどうかを決定する（２１４）。ビデオコーダは、様々な方法で、現在ＰＵが単方向インター予測に制限されるかどうかを決定し得る。例えば、ビデオコーダは、現在ＰＵを特徴づけるサイズが閾値よりも小さい場合、その現在ＰＵが単方向インター予測に制限されると決定し得る。この例では、ビデオコーダは、ＰＵのサイズが８×４、４×８、又はそれよりも小さい場合、現在ＰＵが単方向インター予測に制限されると決定し得る。別の例では、ビデオコーダがビデオデコーダである場合、ビデオデコーダは、受信されたビットストリーム中のシンタックス要素に基づいて、現在ＰＵが単方向インター予測に制限されると決定し得る。
【０１４３】
[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]ビデオコーダは、様々な方法で疑似単方向マージ候補を生成し得る。例えば、ビデオコーダは、すでに候補リストにある単方向マージ候補のペアを最初に取ることによって、疑似単方向マージ候補を生成し得る。第１の単方向マージ候補と第２の単方向マージ候補は、それぞれ動きベクトルＭＶ１と動きベクトルＭＶ２とを指定し得る。この例では、ビデオコーダは、次いで、第１の単方向マージ候補によって指定された参照フレームと第２の単方向マージ候補によって指定された参照フレームとの間の時間差に従ってＭＶ２を基準化(scale)し得る。この例では、ビデオコーダは、ＭＶ２の基準化されたバージョン(scaled version)を指定する疑似単方向マージ候補を生成し得る。例えば、この例では、第１の単方向マージ候補に関連付けられた参照ピクチャが、現在ピクチャの１ピクチャ後に生じ得、第２の単方向マージ候補に関連付けられた参照ピクチャが、現在ピクチャの４ピクチャ後に生じ得る。この例では、ビデオコーダは、ＭＶ２の水平成分とＭＶ２の垂直成分の両方を４で除算し、ＭＶ１に対応する参照ピクチャインデックスをもつこの基準化されたＭＶ２(scaled MV2)を疑似候補として使用し得る。同様の基準化が、ＭＶ２に基づいてＭＶ１について実行され得る。
【０１７３】
[0182]別の例では、ビデオコーダは、双方向マージ候補によって指定された動きベクトルのうちの１つを指定する疑似単方向マージ候補を生成し得る。例えば、双方向マージ候補は、リスト０動きベクトルとリスト１動きベクトルとを指定し得る。この例では、ビデオコーダは、リスト０動きベクトルを指定するがリスト１動きベクトルを指定しない疑似単方向マージ候補を生成し得る。この例では、ビデオコーダは、リスト１動きベクトルを指定するがリスト０動きベクトルを指定しない別の疑似単方向マージ候補を生成し得る。このようにして、ビデオコーダは、双方向マージ候補を２つの単方向マージ候補、リスト０動きベクトルからの１つとリスト１動きベクトルからの別の１つとに分割することによって、双方向空間又は時間マージ候補から単方向疑似マージ候補を生成し得る。ビデオエンコーダは、単方向マージ候補のいずれか又は両方をマージ候補リストに含め得る。言い換えれば、ビデオコーダは、疑似単方向マージ候補が双方向マージ候補によって指定された動きベクトルを指定するように、疑似単方向マージ候補を生成し得る。
【０１７４】
[0183]ビデオコーダが、双方向マージ候補によって指定された動きベクトルに基づいて疑似単方向マージ候補を生成する例では、ビデオコーダは、様々な順序に従って疑似単方向マージ候補をマージ候補リストに追加し得る。例えば、ビデオコーダは、第１の双方向マージ候補のリスト０動きベクトルに基づく疑似単方向マージ候補を追加し、次いで、第１の双方向マージ候補のリスト１動きベクトルに基づく疑似単方向マージ候補を追加し、次いで、第２の双方向マージ候補のリスト０動きベクトルに基づく疑似単方向マージ候補を追加し、次いで、第２の双方向マージ候補のリスト１動きベクトルに基づく疑似単方向マージ候補を追加し得るなどである。
【０１７５】
[0184]現在ＰＵが単方向インター予測に制限されない場合（３５４の「いいえ」）、ビデオコーダは、疑似双方向マージ候補を生成する（３６０）。上述のように、ビデオコーダは、ＰＵを特徴づけるサイズなど、様々なファクタ、パラメータなどに基づいて、現在ＰＵが単方向インター予測に制限されるかどうかを決定し得る。ビデオコーダは、様々な方法で疑似双方向マージ候補を生成し得る。例えば、ビデオコーダは、マージ候補リスト中の２つのマージ候補の組合せを選択し得る。この例では、ビデオコーダは、選択されたマージ候補のうちの第１のマージ候補がリスト０中の参照ピクチャを指定するかどうか、選択されたマージ候補のうちの第２のマージ候補がリスト１中の参照ピクチャを指定するかどうか、及び指定された参照ピクチャが異なるピクチャ順序カウント（picture order count）を有するかどうかを決定し得る。これらの条件の各々が真である場合、ビデオコーダは、組合せ中の第１のマージ候補のリスト０動きベクトルと組合せ中の第２のマージ候補のリスト１動きベクトルとを指定する疑似双方向マージ候補を生成し得る。マージ候補リストが単方向マージ候補と双方向マージ候補とを含み得る、図４の例など、幾つかの例では、プロセス３５０は行為３５４、３５６、及び３５８を含まない。むしろ、ビデオコーダは、Ｂスライス中のＰＵのためのマージ候補リスト中の疑似双方向マージ候補を生成し得る。
【０１７６】
[0185]疑似双方向マージ候補を生成した後、ビデオコーダは、疑似双方向マージ候補を現在ＰＵのためのマージ候補リストに含める（３６２）。ビデオコーダは、次いで、別の疑似マージ候補を生成すべきかどうかを決定する（３５２）などである。
【０１７７】
[0186]図８は、ＡＭＶＰモードを使用してＰＵの動き情報を決定するための例示的な演算４００を示すフローチャートである。ビデオエンコーダ２０又はビデオデコーダ３０など、ビデオコーダは、演算４００を実行し、ＡＭＶＰモードを使用してＰＵの動き情報を決定し得る。
【０１７８】
[0187]ビデオコーダが演算４００を開始した後、ビデオコーダは、現在ＰＵのためのインター予測がリスト０に基づくかどうかを決定する（４０２）。現在ＰＵのためのインター予測がリスト０に基づく場合（４０２の「はい」）、ビデオコーダは、現在ＰＵのためのリスト０ＭＶ予測子候補リストを生成する（４０４）。リスト０ＭＶ予測子候補リストは、２つのリスト０ＭＶ予測子候補を含み得る。リスト０ＭＶ予測子候補の各々は、リスト０動きベクトルを指定し得る。
【０１７９】
[0188]リスト０ＭＶ予測子候補リストを生成した後、ビデオコーダは、リスト０ＭＶ予測子候補リスト中の選択されたリスト０ＭＶ予測子候補を決定する（４０６）。ビデオコーダは、リスト０ＭＶ予測子フラグ（「ｍｖｐ＿ｌ０＿ｆｌａｇ」）に基づいて、選択されたリスト０ＭＶ予測子候補を決定し得る。ビデオコーダは、次いで、現在ＰＵのためのリスト０ＭＶＤと、選択されたリスト０ＭＶ予測子候補によって指定されたリスト０動きベクトルとに基づいて、現在ＰＵのためのリスト０動きベクトルを決定する（４０８）。
【０１８０】
[0189]更に、現在ＰＵのためのインター予測がリスト０に基づかないと決定した後（４０２の「いいえ」）又は現在ＰＵのためのリスト０動きベクトルを決定した後（４０８）、ビデオコーダは、現在ＰＵのためのインター予測がリスト１に基づくかどうか、又はＰＵが双方向インター予測されるかどうかを決定する（４１０）。現在ＰＵのためのインター予測がリスト１に基づかず、現在ＰＵが双方向インター予測されない場合（４１０の「いいえ」）、ビデオコーダは、ＡＭＶＰモードを使用して現在ＰＵの動き情報を決定するのを終える。現在ＰＵのためのインター予測がリスト１に基づくか、又は現在ＰＵが双方向にインター予測されると決定したことに応答して（４１０の「はい」）、ビデオコーダは、現在ＰＵのためのリスト１ＭＶ予測子候補リストを生成する（４１２）。リスト１ＭＶ予測子候補リストは、２つのリスト１ＭＶ予測子候補を含み得る。リスト０ＭＶ予測子候補の各々は、リスト１動きベクトルを指定し得る。
【０１８１】
[0190]リスト１ＭＶ予測子候補リストを生成した後、ビデオコーダは、リスト１ＭＶ予測子候補リスト中の選択されたリスト１ＭＶ予測子候補を決定する（４１４）。ビデオコーダは、リスト１ＭＶ予測子フラグ（「ｍｖｐ＿ｌ１＿ｆｌａｇ」）に基づいて、選択されたリスト１ＭＶ予測子候補を決定し得る。ビデオコーダは、次いで、現在ＰＵのためのリスト１ＭＶＤと、選択されたリスト１ＭＶ予測子候補によって指定されたリスト１動きベクトルとに基づいて、現在ＰＵのためのリスト１動きベクトルを決定する（４１６）。
【０１８２】
[0191]幾つかの例では、ビデオコーダは、双方向ＭＶ予測子候補をリスト０ＭＶ予測子候補リストとリスト１ＭＶ予測子候補リストとに追加し得ない。言い換えれば、ＭＶ予測子候補がリスト０動きベクトルとリスト１動きベクトルとを指定する場合、ビデオコーダは、ＭＶ予測子候補をリスト０ＭＶ予測子候補リストとリスト１ＭＶ予測子候補リストとから除外し得る。むしろ、ビデオコーダは、単方向ＭＶ予測子候補のみをリスト０ＭＶ予測子候補リストとリスト１ＭＶ予測子候補リストとに追加し得る。ビデオコーダは、各可能な及び利用可能なＭＶ予測子候補が単方向であるかどうかを確認し、単方向ＭＶ予測子候補のみをＭＶ予測子候補リストに含めることによって、これを達成し得る。
【０１８３】
[0192]図９は、本開示の１つ又は複数の技法による、例示的なビデオコード化演算４５０を示すフローチャートである。ビデオエンコーダ２０又はビデオデコーダ３０など、ビデオコーダは、演算４５０を実行して、ビデオデータをコード化し得る。
【０１８４】
[0193]上記で説明したように、多くの適用例の帯域幅又は計算能力は制限されることがある。従って、双方向予測の使用を制限することが望ましいことがある。ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ８では、マージ／ＡＭＶＰモードは、ＰスライスとＢスライスの両方に適用され、単方向動きベクトルと双方向動きベクトルの両方に関与し得る。しかしながら、帯域幅低減目的のために、双方向ＭＶは、８×４ＰＵ及び４×８ＰＵの場合、単方向Ｌ０ＭＶに変換され得る。更に、８×４ＰＵ及び４×８ＰＵの場合、ＡＭＶＰモードでのインター方向信号伝達は単方向のみに制限され得る。更に、ＨＥＶＣ  Ｗｏｒｋｉｎｇ  Ｄｒａｆｔ８では、ＳＣＵサイズが８×８に等しくない場合、Ｉｎｔｅｒ＿Ｎ×Ｎモードは最小ＣＵ（ＳＣＵ）サイズのＣＵのみに適用される。Ｉｎｔｅｒ＿Ｎ×Ｎ区分モードでは、ＣＵは４つの等しいサイズのＰＵに区分され、ＰＵの各々はインター予測される。
【０１８５】
[0194]しかしながら、ＳＣＵサイズが８×８でない場合、双方向ＭＶが、Ｉｎｔｅｒ＿Ｎ×Ｎ区分モードに従って区分されたＣＵ中のあらゆるＰＵについて信号伝達され得る。Ｉｎｔｅｒ＿Ｎ×Ｎ区分モードに従って区分されたＣＵ中のあらゆるＰＵについて双方向ＭＶを信号伝達することは、Ｉｎｔｅｒ＿Ｎ×Ｎ区分モードをメモリ帯域幅に関する最悪のシナリオにし得る。本開示の技法はこの問題に対処し得る。
【０１８６】
[0195]図９の例に示すように、ビデオコーダはＢスライス中のＣＵのＰＵのためのＭＶ候補リストを生成し、ＣＵは４つの等しいサイズのＰＵに区分される（４５２）。ＭＶ候補リストは、ＰＵの動き情報がマージモードで信号伝達されるとき、マージ候補リストであり、又はＰＵの動き情報がＡＭＶＰモードで信号伝達されるとき、ＭＶ予測子候補リストであり得る。ＣＵの各ＰＵはインター予測され得る。従って、ＣＵは、Ｉｎｔｅｒ＿Ｎ×Ｎ区分モードに従ってＰＵに区分される。
【０１８７】
[0196]ビデオコーダは、ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換する（４５４）。即ち、ビデオコーダは、Ｉｎｔｅｒ＿Ｎ×Ｎモードの場合、例えば、Ｉｎｔｅｒ＿Ｎ×Ｎモードの第１のＰＵについて、ＰＵの双方向ＭＶを単方向ＭＶに変換し得る。
【０１８８】
[0197]ビデオコーダが、双方向ＭＶ候補を単方向ＭＶ候補に変換するとき、ＭＶ候補リストは単方向ＭＶ候補を含む。ＭＶ候補リストが、マージ候補リストであるかＭＶ予測子候補リストであるかに応じて、双方向ＭＶ候補は、双方向マージ候補又はＭＶ予測子候補であり得る。同様に、ＭＶ候補リストが、マージ候補リストであるかＭＶ予測子候補リストであるか応じて、単方向ＭＶ候補は、単方向マージ候補又は単方向ＭＶ予測子候補であり得る。
【０１８９】
[0198]ビデオコーダは、上記で説明した技法のうちのいずれかを使用して、双方向ＭＶ候補を単方向ＭＶ候補に変換し得る。更に、幾つかの例では、ビデオコーダは、Ｉｎｔｅｒ＿Ｎ×Ｎ区分されたＣＵの全てのＰＵのための全てのＭＶ候補が同じであるように、参照ピクチャインデックスを制限し得る。言い換えれば、Ｉｎｔｅｒ＿Ｎ×ＮのＰＵにおいて使用される参照インデックスは、帯域幅を更に低減するために、Ｉｎｔｅｒ＿Ｎ×Ｎモードの全てのＰＵに対して同じになるように制限され得る。ビデオコーダは、上記で説明した技法を使用して参照ピクチャインデックスを制限し得る。
【０１９０】
[0199]幾つかの例では、ビデオコーダは、ＰＵの動き情報がＡＭＶＰモードを使用して信号伝達されるときのみ、双方向ＭＶ候補を単方向ＭＶ候補に変換し得る。このようにして、インター方向信号伝達は、ＡＭＶＰモードについてのみ単方向に制限され得る。例えば、双方向ＭＶは、マージリストが構成された後に単方向Ｌ０ＭＶに変換され、ＡＭＶＰモードのための双方向予測（bi-prediction）適用を制限し得、更に、ＡＭＶＰモードについてのインター方向の信号伝達は単方向のみに制限され得る。ビデオコーダは、実装論理を８×４ＰＵ及び４×８ＰＵに再使用することがあるので、Ｉｎｔｅｒ＿Ｎ×Ｎ区分モードへのこの制限の拡張は望ましくないことがある。
【０１９１】
[0200]幾つかの例では、ビデオコーダは、ＣＵがＳＣＵサイズに等しいサイズを有すると決定したことに応答して、双方向ＭＶ候補を単方向ＭＶ候補に変換し得る。即ち、双単変換（bi-to-uni conversion）と、幾つかの例では、参照ピクチャインデックス制限とが、ＳＣＵサイズに等しいＣＵに対してＩｎｔｅｒ＿Ｎ×Ｎモードについて実行され得る。代替として、Ｉｎｔｅｒ＿Ｎ×Ｎモードの場合、双単変換は、ＣＵサイズにかかわらず全てのＣＵのＩｎｔｅｒ＿Ｎ×Ｎモードについて実行され得る。
【０１９２】
[0201]幾つかの例では、ビデオコーダは、ＣＵの区分化モードとＳＣＵサイズとに応じて、双方向ＭＶ候補を単方向ＭＶ候補に選択的に変換し得る。言い換えれば、双方向ＭＶ制限は、ＳＣＵサイズとともに区分化モードに従って又は応じて行われ得る。例えば、双方向ＭＶ制限は、区分化モードが、２Ｎ×２Ｎ、２Ｎ×Ｎ、Ｎ×２Ｎ、Ｎ×Ｎ、又は非対称動き区分であるかどうかに依存し得る。例えば、ＳＣＵサイズが３２×３２場合、ビデオコーダは、Ｉｎｔｅｒ＿Ｎ×Ｎについて双方向ＭＶを変換し、更に、ＣＵサイズがＳＣＵサイズに等しい場合、２Ｎ×Ｎ及びＮ×２Ｎについて双方向ＭＶを変換し得る。この制限の実装は、区分化モード及びＣＵサイズのみが検査される必要があり得るので、ＰＵサイズを比較することよりも単純であり得る。
【０１９３】
[0202]そのような例では、ビデオコーダは、ＣＵが２Ｎ×２Ｎ、２Ｎ×Ｎ、又はＮ×２Ｎ区分モードに従ってＰＵに区分されるか、又はＣＵのＰＵの動き情報がＡＭＶＰモードで信号伝達されると決定したことに応答して、ＣＵのＰＵのためのＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換し得る。ビデオコーダは、ＣＵのＰＵのためのＭＶ候補リスト中の選択されたＭＶ候補を決定し、ＣＵのＰＵのためのＭＶ候補リスト中の選択されたＭＶ候補によって指定された動き情報によって示された１つ又は複数の参照ブロックに少なくとも部分的に基づいて、ＣＵのＰＵのための予測ビデオブロックを生成し得る。
【０１９４】
[0203]幾つかの例では、ビデオコーダは、ＰＵのＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換し得る。更に、幾つかの例では、ビデオコーダは、Ｉｎｔｅｒ＿Ｎ×Ｎモードにおける全ての４つのＰＵに対してこの変換を実行し得る。即ち、ビデオコーダは、Ｉｎｔｅｒ＿Ｎ×Ｎ区分モードに従って区分されたＣＵのＰＵの各々のＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換し得る。幾つかの例では、ビデオコーダは、ビデオシーケンスの各Ｉｎｔｅｒ＿Ｎ×ＮＣＵの各ＰＵのためのＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換し得る。
【０１９５】
[0204]その後、ビデオコーダは、ＭＶ候補リスト中の選択されたＭＶ候補を決定する（４５６）。ビデオコーダは、上記で説明した技法のうちのいずれかを使用して、選択されたＭＶ候補を決定し得る。更に、ビデオコーダは、選択されたＭＶ候補によって指定された動き情報によって示された１つ又は複数の参照ブロックに少なくとも部分的に基づいて、ＰＵのための予測ビデオブロックを生成し得る（４５８）。ビデオコーダは、上記で説明した技法のうちのいずれかに従って予測ビデオブロックを生成し得る。ビデオコーダがビデオデータを復号する例では、ビデオコーダは、予測ビデオブロックに少なくとも部分的に基づいて復号ビデオデータを出力し得る。ビデオコーダがビデオデータを符号化する例では、ビデオコーダは、予測ビデオブロックに少なくとも部分的に基づいて符号化ビデオデータを出力し得る。
【０１９６】
[0205]図１０は、本開示の１つ又は複数の技法による、例示的な候補リスト生成演算５００を示すフローチャートである。上記で説明したように、単方向予測モードと双方向予測モードとがある。単方向予測モード及び双方向予測モードは、それぞれ単予測（uni-prediction）及び双予測（bi-prediction）と呼ばれることがある。単予測と双予測との間の相違は、単予測では、ただ１つの方向（即ち、リスト０又はリスト１のうちの１つ）がインター予測のために使用されることである。双予測では、両方の方向（即ち、リスト０及びリスト１）がインター予測のために使用され、インター予測は、２つの単方向動きベクトルから取得された予測子の和として定義され得る。
【０１９７】
[0206]特定の事例では、ＭＶ候補リスト（即ち、マージ候補リスト又はＭＶ予測子候補リスト）中の双方向ＭＶ候補（即ち、双方向マージ候補又は双方向ＭＶ予測子候補）は、リスト０及びリスト１中の同じ参照ピクチャを指定し、更に、双方向ＭＶ候補の動きベクトルは等しい。そのような場合、リスト０に対応する予測子とリスト１に対応する予測子とは同じであり、双方向予測モードにおける予測子の重み付け和は、リスト０又はリスト１のいずれかからの単予測からの結果とほぼ同じ結果を与える。そのような事例では、双方向予測と、リスト０又はリスト１のいずれかからの単予測との間の唯一の相違は、丸め誤差により得る。
【０１９８】
[0207]幾つかのビデオコーダは、動き補償中に双方向予測を単予測に簡略化する。即ち、（ＰＵなどの）ビデオブロックが双方向予測され、ビデオブロックの動き情報がリスト０及びリスト１中の同じ参照ピクチャを示し、ビデオブロックの動きベクトルが等しい場合、ビデオコーダは、リスト０参照ピクチャインデックスとリスト０動きベクトルとに基づいて、又はリスト１参照ピクチャインデックスとリスト１動きベクトルとに基づいて、予測ビデオブロックを生成し得る。動き補償中の双方向予測から単予測へのこの変換は、しかしながら、ビデオブロックのステータスを双方向予測ブロックであることから単予測ブロックであることに変更しない。従って、別のビデオブロックのためのＭＶ候補リストは、ビデオブロックの動き情報に基づく双方向ＭＶ候補を含み得る。言い換えれば、この変換は現在ブロックに割り当てられたモード（即ち、双方向予測モード）を変更せず、そのモードは、後のコード化ブロックのための動きベクトル候補又は予測子として使用される。
【０１９９】
[0208]本開示の１つ又は複数の技法によれば、双方向ＭＶ候補がリスト０及びリスト１中の同じ参照ピクチャを示し、双方向ＭＶ候補の動きベクトルが互いに等しい場合、ビデオコーダは、ＭＶ候補リスト構成中に双方向ＭＶ候補を単方向ＭＶ候補に変換し得る。以前の双方向ＭＶ候補のうちの１つが、現在ビデオブロックの動き情報において使用するために選択される場合、単方向動き情報が現在ビデオブロックに割り当てられ、双方向動き情報は現在ビデオブロックに割り当てられない。このようにして、変換は、マージモードとＡＭＶＰ予測モードの両方について、現在ビデオブロックにおけるＭＶ候補リスト中の各候補の実際の予測モードと動きベクトルとに対して実行される。その結果、動き補償段階において双方向から単方向への変換を実行する必要がないことがある。更に、そのような変換が行われるとき、そのような変換から生じる単予測動きベクトルは、現在ブロックに割り当てられ得、次のブロックのマージ又はＡＭＶＰ動きベクトル候補リスト構成に使用され得る。
【０２００】
[0209]ビデオコーダが双方向ＭＶ候補を単方向ＭＶ候補に変換するとき、ビデオコーダはＭＶ候補のリスト０情報又はＭＶ候補のリスト１情報のいずれかを保持し得る。言い換えれば、リスト０又はリスト１のいずれかへの変換が適用され得る。幾つかの例では、ビデオコーダは、様々な条件に従って、ＭＶ候補のリスト０情報を保持すること又はＭＶ候補のリスト１情報を保持することの間で切り替え得る。即ち、リスト０又はリスト１への変換は、幾つかの条件に従ってＰＵレベルにおいて切替え可能であり得る。
【０２０１】
[0210]図１０の例に示すように、（ビデオエンコーダ２０又はビデオデコーダ３０など）ビデオコーダは、ＭＶ候補リストの初期バージョンを生成する（５０２）。ＭＶ候補リストはマージ候補リスト又はＡＭＶＰ予測子候補リストであり得る。ビデオコーダは、次いで、ＭＶ候補リスト中の各双方向ＭＶ候補が検査されたかどうかを決定する（５０４）。ＭＶ候補リスト中の各双方向ＭＶ候補がまだ検査されていない場合（５０４の「いいえ」）、ビデオコーダは、ＭＶ候補リスト中の以前に検査されていない双方向ＭＶ候補が、等しい動きベクトルを有し、リスト０とリスト１の両方中の同じ参照ピクチャを示すかどうかを決定する（５０６）。双方向ＭＶ候補が等しい動きベクトルを有さず、又はリスト０及びリスト１中の双方向ＭＶ候補の参照ピクチャが同じでないと決定したことに応答して（５０６の「いいえ」）、ビデオコーダは、各双方向ＭＶ候補が検査されたかどうかを再び決定する（５０４）。
【０２０２】
[0211]一方、双方向ＭＶ候補の動きベクトルが等しく、リスト０及びリスト１中の双方向ＭＶ候補の参照ピクチャが同じである場合（５０６の「いいえ」）、ビデオコーダは双方向ＭＶ候補を単方向ＭＶ候補に変換する（５０８）。単方向ＭＶ候補がＭＶ候補リスト中の双方向ＭＶ候補と置き換わる。ビデオコーダは、本開示で説明する技法のうちのいずれかに従って双方向ＭＶ候補を単方向ＭＶ候補に変換し得る。双方向ＭＶ候補を単方向ＭＶ候補に変換した後、ビデオコーダは、各双方向ＭＶ候補が検査されたかどうかを再び決定する（５０４）。
【０２０３】
[0212]ＭＶ候補リスト中の各双方向ＭＶ候補が検査されたと決定したことに応答して（５０４の「はい」）、ビデオコーダはＭＶ候補リストを削除する（５１０）。ビデオコーダは、本開示における他の場所で説明した方法を含む様々な方法で、ＭＶ候補リストを削除し得る。ビデオコーダは、マージモードとＡＭＶＰモードの両方で削除プロセスを実行し得る。図１０の例は、適用可能な双方向ＭＶ候補を単方向ＭＶ候補に変換した後にＭＶ候補リストを削除するビデオコーダを示すが、ビデオコーダは、他の例では、適用可能な双方向ＭＶ候補を単方向ＭＶ候補に変換する前にＭＶ候補リストを削除し得る。削除前に変換を実行することと削除後に変換を実行することとの間の相違は、本開示における他の場所での削除の説明からわかり得る。
【０２０４】
[0213]図１０の技法は、本開示で説明する他の技法とともに、又はそれとは別個に実装され得る。このようにして、ビデオコーダは、ビデオブロックのためのリスト０中の参照フレームとリスト１中の参照フレームとが同じであると決定し得、但し、ビデオブロックは双方向予測ビデオブロックである。更に、ビデオコーダは、ビデオブロックのための動きベクトル候補リストを生成し、動きベクトル候補リスト中の１つ又は複数の双方向動きベクトル候補が変換されて単方向動きベクトル候補になるように、動きベクトル候補リストを変換し得る。更に、ビデオコーダは、変換された動きベクトル候補リストから動きベクトル候補を決定し得る。ビデオコーダは、決定された動きベクトル候補を使用してビデオブロックに対する動き補償を実行し得、それにより、双方向から単方向への変換は動き補償中に実行されない。例えば、双方向から単方向への変換は、ＰＵのための予測ビデオブロックを生成するための動き補償中に実行されず、ＰＵが、別のビデオブロックをコード化するための動きベクトル候補ブロックとして使用される場合、ＰＵは、双方向動き情報の代わりに単方向動き情報を有する。ビデオブロックが、別のビデオブロックをコード化するための動きベクトル候補ブロックとして使用される場合、ビデオブロックは、双方向動き情報の代わりに単方向動き情報を有する。ビデオコーダは、動きベクトル候補リスト中の動きベクトル候補が同じにならないように、動きベクトル候補リストを削除し得る。
【０２０５】
[0214]１つ又は複数の例では、説明した機能は、ハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、１つ又は複数の命令又はコードとしてコンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、例えば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含むデータ記憶媒体又は通信媒体などの有形媒体に対応するコンピュータ可読記憶媒体を含み得る。このようにして、コンピュータ可読媒体は、概して、（１）非一時的である有形コンピュータ可読記憶媒体、あるいは（２）信号又は搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明した技法の実装のための命令、コード及び／又はデータ構造を取り出すために１つ又は複数のコンピュータあるいは１つ又は複数のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。
【０２０６】
[0215]限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（登録商標）、ＣＤ−ＲＯＭ又は他の光ディスク記憶、磁気ディスク記憶、又は他の磁気記憶機器、フラッシュメモリ、あるいは命令又はデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。例えば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、又は赤外線、無線、及びマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、又は他のリモート発信源から送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、又は赤外線、無線、及びマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。但し、コンピュータ可読記憶媒体及びデータ記憶媒体は、接続、搬送波、信号、又は他の一時媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク（disk）及びディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザーディスク（登録商標）（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）及びＢｌｕ−ｒａｙディスク（disc）を含み、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザーで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含めるべきである。
【０２０７】
[0216]命令は、１つ又は複数のデジタル信号プロセッサ（ＤＳＰ）などの１つ又は複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、あるいは他の等価な集積回路又はディスクリート論理回路によって実行され得る。従って、本明細書で使用する「プロセッサ」という用語は、前述の構造、又は本明細書で説明する技法の実装に好適な他の構造のいずれかを指すことがある。更に、幾つかの態様では、本明細書で説明した機能は、符号化及び復号のために構成された専用のハードウェア及び／又はソフトウェアモジュール内に与えられ得、あるいは複合コーデックに組み込まれ得る。また、本技法は、１つ又は複数の回路又は論理要素中に十分に実装され得る。
【０２０８】
[0217]本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）又はＩＣのセット（例えば、チップセット）を含む、多種多様な機器又は装置において実装され得る。開示された技法を実行するように構成された機器の機能的態様を強調するために、様々な構成要素、モジュール、又はユニットについて本開示において説明したが、それらの構成要素、モジュール、又はユニットは、必ずしも異なるハードウェア又はソフトウェアのユニットによる実現を必要とするとは限らない。むしろ、上記で説明したように、様々な構成要素、モジュール、及びユニットは、適切なソフトウェア及び／又はファームウェアとともに、上述のように１つ又は複数のプロセッサを含む、コーデックハードウェアユニットにおいて組み合わされるか、又は相互動作可能なハードウェアユニットの集合によって与えられ得る。
【０２０９】
[0218]様々な例について説明した。これら及び他の例は以下の特許請求の範囲内に入る。
【図１】
2015510358.tif 000003
【図２】
2015510358.tif 000004
【図３】
2015510358.tif 000005
【図４】
2015510358.tif 000006
【図５】
2015510358.tif 000007
【図６】
2015510358.tif 000008
【図７】
2015510358.tif 000009
【図８】
2015510358.tif 000010
【図９】
2015510358.tif 000011
【図１０】
2015510358.tif 000012
【手続補正書】
【提出日】平成26年10月21日(2014.10.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ビデオデータを符号化するための方法であって、前記方法は、
Ｂスライス中のコード化単位（ＣＵ）を４つの等しいサイズの予測単位（ＰＵ）に区分することと、
前記ＣＵの前記ＰＵの全てでないが少なくとも１つのＰＵに対して、
前記ＰＵのための動きベクトル（ＭＶ）候補リストを生成することと、
前記ＰＵに対する前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換することと、
前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、
前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成することと
を備える、方法。
【請求項２】
前記ＰＵのための前記ＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換することを更に備える、請求項１に記載の方法。
【請求項３】
前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換することは、前記ＣＵが最小コード化単位（ＳＣＵ）サイズに等しいサイズを有すると決定したことに応答して、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換することを備える、請求項１に記載の方法。
【請求項４】
前記ＣＵが第１のＣＵであり、前記方法は、
第２のＣＵのＰＵのためのＭＶ候補リストを生成することと、
前記第２のＣＵが２Ｎ×２Ｎ、２Ｎ×Ｎ、又はＮ×２Ｎ区分モードに従ってＰＵに区分されるか、又は前記第２のＣＵの前記ＰＵの動き情報が高度動きベクトル予測（ＡＭＶＰ）モードで信号伝達されると決定したことに応答して、前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することと、
前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、
前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記第２のＣＵの前記ＰＵのための予測ビデオブロックを生成することと
を更に備える、請求項１に記載の方法。
【請求項５】
前記双方向ＭＶ候補を変換することは、前記ＰＵの動き情報がＡＭＶＰモードを使用して信号伝達されるときのみ、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換することを備える、請求項１に記載の方法。
【請求項６】
前記ＰＵの予測ビデオブロックに少なくとも部分的に基づいて符号化ビデオデータを出力することを更に備える、請求項１に記載の方法。
【請求項７】
前記方法がモバイルコンピュータ機器上で実行される、請求項１に記載の方法。
【請求項８】
前記双方向ＭＶ候補が第１の双方向ＭＶ候補であり、前記単方向ＭＶ候補が第１の単方向ＭＶ候補であり、
前記ＭＶ候補リストを生成することは、前記ＭＶ候補リスト中の第２の双方向ＭＶ候補が、等しい動きベクトルを有し、リスト０及びリスト１中の同じ参照ピクチャを示すと決定したことに応答して、前記第２の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することを備え、
前記ＰＵのための予測ビデオブロックを生成するために動き補償中に双方向から単方向への変換が実行されず、
前記ＰＵが、別のビデオブロックをコード化するための動きベクトル候補ブロックとして使用されるとき、前記ＰＵは、双方向動き情報の代わりに単方向動き情報を有する、
請求項１に記載の方法。
【請求項９】
Ｂスライス中のコード化単位（ＣＵ）を４つの等しいサイズの予測単位（ＰＵ）に区分することと、
前記ＣＵの前記ＰＵの全てでないが少なくとも１つのＰＵに対して、
前記ＰＵのための動きベクトル（ＭＶ）候補リストを生成することと、
前記ＰＵに対する前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換することと、
前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、
前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成することと
を行うように構成された１つ以上のプロセッサを備える、ビデオ符号化装置。
【請求項１０】
前記１つ以上のプロセッサが、前記ＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換するように構成された、請求項９に記載のビデオ符号化装置。
【請求項１１】
前記１つ以上のプロセッサが、前記ＣＵが最小コード化単位（ＳＣＵ）サイズに等しいサイズを有すると決定したことに応答して、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換するように構成された、請求項９に記載のビデオ符号化装置。
【請求項１２】
前記ＣＵが第１のＣＵであり、前記１つ以上のプロセッサが、
第２のＣＵのＰＵのためのＭＶ候補リストを生成することと、
前記第２のＣＵが２Ｎ×２Ｎ、２Ｎ×Ｎ、又はＮ×２Ｎ区分モードに従ってＰＵに区分されるか、又は前記第２のＣＵの前記ＰＵの動き情報が高度動きベクトル予測（ＡＭＶＰ）モードで信号伝達されると決定したことに応答して、前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することと、
前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、
前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記第２のＣＵの前記ＰＵのための予測ビデオブロックを生成することと
を行うように更に構成された、請求項９に記載のビデオ符号化装置。
【請求項１３】
前記１つ以上のプロセッサが、前記ＰＵの動き情報が高度動きベクトル予測（ＡＭＶＰ）モードを使用して信号伝達されるときのみ、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換するように構成された、請求項９に記載のビデオ符号化装置。
【請求項１４】
前記１つ以上のプロセッサが、前記ＰＵの予測ビデオブロックに少なくとも部分的に基づいて符号化ビデオデータを出力するように更に構成された、請求項９に記載のビデオ符号化装置。
【請求項１５】
前記双方向ＭＶ候補は第１の双方向ＭＶ候補であり、前記単方向ＭＶ候補は第１の単方向ＭＶ候補であり、
前記ＭＶ候補リストの生成が、前記ＭＶ候補リスト中の第２の双方向ＭＶ候補が、等しい動きベクトルを有し、リスト０及びリスト１中の同じ参照ピクチャを示すと決定したことに応答して、前記第２の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することを含むように前記１つ以上のプロセッサが構成され、
前記ＰＵのための予測ビデオブロックを生成するために動き補償中に双方向から単方向への変換が実行されず、
前記ＰＵが、別のビデオブロックをコード化するための動きベクトル候補ブロックとして使用されるとき、前記ＰＵは、双方向動き情報の代わりに単方向動き情報を有する、
請求項９に記載のビデオ符号化装置。
【請求項１６】
Ｂスライス中のコード化単位（ＣＵ）を４つの等しいサイズの予測単位（ＰＵ）に区分する手段と、
前記ＣＵの前記ＰＵの全てでないが少なくとも１つのＰＵに対して、
前記ＰＵのための動きベクトル（ＭＶ）候補リストを生成するための手段と、
前記ＰＵのための前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換するための手段と、
前記ＭＶ候補リスト中の選択されたＭＶ候補を決定するための手段と、
前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成するための手段と
を備える、ビデオ符号化装置。
【請求項１７】
実行されると、１つ以上のプロセッサを、
Ｂスライス中のコード化単位（ＣＵ）を４つの等しいサイズの予測単位（ＰＵ）に区分することと、
前記ＣＵの前記ＰＵの全てでないが少なくとも１つのＰＵに対して、
前記ＰＵのための動きベクトル（ＭＶ）候補リストを生成することと、
前記ＰＵに対する前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換することと、
前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、
前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成することと
を行うように構成する命令を記憶する１つ以上のコンピュータ可読記憶媒体。
【請求項１８】
ビデオデータを復号するための方法であって、前記方法は、
Ｂスライス中のコード化単位（ＣＵ）を４つの等しいサイズの予測単位（ＰＵ）に区分することと、
前記ＣＵの前記ＰＵの全てでないが少なくとも１つのＰＵに対して、
前記ＰＵのための動きベクトル（ＭＶ）候補リストを生成することと、
前記ＰＵに対する前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換することと、
前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、
前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成することと
を備える、方法。
【請求項１９】
前記ＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換することを更に備える、請求項１８に記載の方法。
【請求項２０】
前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換することは、前記ＣＵが最小コード化単位（ＳＣＵ）サイズに等しいサイズを有すると決定したことに応答して、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換することを備える、請求項１８に記載の方法。
【請求項２１】
前記ＣＵが第１のＣＵであり、前記方法は、
第２のＣＵのＰＵのためのＭＶ候補リストを生成することと、
前記第２のＣＵが２Ｎ×２Ｎ、２Ｎ×Ｎ、又はＮ×２Ｎ区分モードに従ってＰＵに区分されるか、又は前記第２のＣＵの前記ＰＵの動き情報が高度動きベクトル予測（ＡＭＶＰ）モードで信号伝達されると決定したことに応答して、前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することと、
前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、
前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記第２のＣＵの前記ＰＵのための予測ビデオブロックを生成することと
を更に備える、請求項１８に記載の方法。
【請求項２２】
前記双方向ＭＶ候補を変換することは、前記ＰＵの動き情報がＡＭＶＰモードを使用して信号伝達されるときのみ、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換することを備える、請求項１８に記載の方法。
【請求項２３】
前記方法が、前記ＰＵのための予測ビデオブロックに少なくとも部分的に基づいて復号ビデオデータを出力することを更に備える、請求項１８に記載の方法。
【請求項２４】
前記方法がモバイルコンピュータ機器上で実行される、請求項１８に記載の方法。
【請求項２５】
前記双方向ＭＶ候補は第１の双方向ＭＶ候補であり、前記単方向ＭＶ候補は第１の単方向ＭＶ候補であり、
前記ＭＶ候補リストを生成することが前記ＭＶ候補リスト中の第２の双方向ＭＶ候補が、等しい動きベクトルを有し、リスト０及びリスト１中の同じ参照ピクチャを示すと決定したことに応答して、前記第２の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することを備え、
前記ＰＵのための予測ビデオブロックを生成するために動き補償中に双方向から単方向への変換が実行されず、
前記ＰＵが、別のビデオブロックをコード化するための動きベクトル候補ブロックとして使用されるとき、前記ＰＵは、双方向動き情報の代わりに単方向動き情報を有する、
請求項１８に記載の方法。
【請求項２６】
Ｂスライス中のコード化単位（ＣＵ）を４つの等しいサイズの予測単位（ＰＵ）に区分することと、
前記ＣＵの前記ＰＵの全てでないが少なくとも１つのＰＵに対して、
前記ＰＵのための動きベクトル（ＭＶ）候補リストを生成することと、
前記ＰＵに対する前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換することと、
前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、
前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成することと
を行うように構成された１つ以上のプロセッサを備える、ビデオ復号装置。
【請求項２７】
前記１つ以上のプロセッサが、前記ＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換するように構成された、請求項２６に記載のビデオ復号装置。
【請求項２８】
前記１つ以上のプロセッサは、前記ＣＵが最小コード化単位（ＳＣＵ）サイズに等しいサイズを有すると決定したことに応答して、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換するように構成された、請求項２６に記載のビデオ復号装置。
【請求項２９】
前記ＣＵが第１のＣＵであり、前記１つ以上のプロセッサは、
第２のＣＵのＰＵのためのＭＶ候補リストを生成することと、
前記第２のＣＵが２Ｎ×２Ｎ、２Ｎ×Ｎ、又はＮ×２Ｎ区分モードに従ってＰＵに区分されるか、又は前記第２のＣＵの前記ＰＵの動き情報が高度動きベクトル予測（ＡＭＶＰ）モードで信号伝達されると決定したことに応答して、前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することと、
前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、
前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記第２のＣＵの前記ＰＵのための予測ビデオブロックを生成することと
を行うように更に構成された、請求項２６に記載のビデオ復号装置。
【請求項３０】
前記１つ以上のプロセッサは、前記ＰＵの動き情報が高度動きベクトル予測（ＡＭＶＰ）モードを使用して信号伝達されるときのみ、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換するように構成された、請求項２６に記載のビデオ復号装置。
【請求項３１】
前記１つ以上のプロセッサが、前記ＰＵのための予測ビデオブロックに少なくとも部分的に基づいて復号ビデオデータを出力するように更に構成された、請求項２６に記載のビデオ復号装置。
【請求項３２】
前記双方向ＭＶ候補は第１の双方向ＭＶ候補であり、前記単方向ＭＶ候補は第１の単方向ＭＶ候補であり、
前記ＭＶ候補リストの生成が、前記ＭＶ候補リスト中の第２の双方向ＭＶ候補が、等しい動きベクトルを有し、リスト０及びリスト１中の同じ参照ピクチャを示すと決定したことに応答して、前記第２の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することを備えるように前記１つ以上のプロセッサが構成され、
前記ＰＵのための予測ビデオブロックを生成するために動き補償中に双方向から単方向への変換が実行されず、
前記ＰＵが、別のビデオブロックをコード化するための動きベクトル候補ブロックとして使用されるとき、前記ＰＵは、双方向動き情報の代わりに単方向動き情報を有する、
請求項２６に記載のビデオ復号装置。
【請求項３３】
Ｂスライス中のコード化単位（ＣＵ）を４つの等しいサイズの予測単位（ＰＵ）に区分するための手段と、
前記ＣＵの前記ＰＵの全てでないが少なくとも１つのＰＵに対して、
前記ＰＵのための動きベクトル（ＭＶ）候補リストを生成するための手段と、
前記ＰＵに対する前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換するための手段と、
前記ＭＶ候補リスト中の選択されたＭＶ候補を決定するための手段と、
前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成するための手段と
を備える、ビデオ復号装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０２０９
【補正方法】変更
【補正の内容】
【０２０９】
[0218]様々な例について説明した。これら及び他の例は以下の特許請求の範囲内に入る。
以下に本件出願当初の特許請求の範囲に記載された発明を付記する。
［１］  ビデオデータを符号化するための方法であって、前記方法は、Ｂスライス中のコード化単位（ＣＵ）の予測単位（ＰＵ）のための動きベクトル（ＭＶ）候補リストを生成することと、前記ＣＵが４つの等しいサイズのＰＵに区分される、前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換することと、マージ候補リスト中の選択されたＭＶ候補を決定することと、前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成することとを備える、方法。
［２］  前記ＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換することを更に備える、［１］に記載の方法。
［３］  前記ＣＵの前記ＰＵの各々のためのＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換することを更に備える、［１］に記載の方法。
［４］  ビデオシーケンスの各Ｉｎｔｅｒ＿Ｎ×Ｎ  ＣＵの各ＰＵのためのＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換することを更に備え、各Ｉｎｔｅｒ＿Ｎ×Ｎ  ＣＵが、４つの等しいサイズのＰＵに区分され、インター予測を使用してコード化される、［１］に記載の方法。
［５］  前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換することは、前記ＣＵが最小コード化単位（ＳＣＵ）サイズに等しいサイズを有すると決定したことに応答して、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換することを備える、［１］に記載の方法。
［６］  前記ＣＵが第１のＣＵであり、前記方法は、第２のＣＵのＰＵのためのＭＶ候補リストを生成することと、前記第２のＣＵが２Ｎ×２Ｎ、２Ｎ×Ｎ、又はＮ×２Ｎ区分モードに従ってＰＵに区分されるか、又は前記第２のＣＵの前記ＰＵの動き情報が高度動きベクトル予測（ＡＭＶＰ）モードで信号伝達されると決定したことに応答して、前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することと、前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記第２のＣＵの前記ＰＵのための予測ビデオブロックを生成することとを更に備える、［１］に記載の方法。
［７］  前記双方向ＭＶ候補を変換することは、前記ＰＵの動き情報がＡＭＶＰモードを使用して信号伝達されるときのみ、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換することを備える、［１］に記載の方法。
［８］  前記予測ビデオブロックに少なくとも部分的に基づいて符号化ビデオデータを出力することを更に備える、［１］に記載の方法。
［９］  前記方法がモバイルコンピュータ機器上で実行される、［１］に記載の方法。
［１０］  前記双方向ＭＶ候補が第１の双方向ＭＶ候補であり、前記単方向ＭＶ候補が第１の単方向ＭＶ候補であり、前記ＭＶ候補リストを生成することは、前記ＭＶ候補リスト中の第２の双方向ＭＶ候補が、等しい動きベクトルを有し、リスト０及びリスト１中の同じ参照ピクチャを示すと決定したことに応答して、前記第２の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することを備え、前記予測ビデオブロックを生成するために動き補償中に双方向から単方向への変換が実行されず、前記ＰＵが、別のビデオブロックをコード化するための動きベクトル候補ブロックとして使用されるとき、前記ＰＵは、双方向動き情報の代わりに単方向動き情報を有する、
［１］に記載の方法。
［１１］  Ｂスライス中のコード化単位（ＣＵ）の予測単位（ＰＵ）のための動きベクトル（ＭＶ）候補リストを生成することと、前記ＣＵが４つの等しいサイズのＰＵに区分される、前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換することと、前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成することとを行うように構成された１つ以上のプロセッサを備える、ビデオ符号化装置。
［１２］  前記１つ以上のプロセッサが、前記ＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換するように構成された、［１１］に記載のビデオ符号化装置。
［１３］  前記１つ以上のプロセッサが、前記ＣＵの前記ＰＵの各々のＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換するように構成された、［１１］に記載のビデオ符号化装置。
［１４］  前記１つ以上のプロセッサが、ビデオシーケンスの各Ｉｎｔｅｒ＿Ｎ×Ｎ  ＣＵの各ＰＵのためのＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換するように構成され、各Ｉｎｔｅｒ＿Ｎ×Ｎ  ＣＵが、４つの等しいサイズのＰＵに区分され、インター予測を使用してコード化される、［１１］に記載のビデオ符号化装置。
［１５］  前記１つ以上のプロセッサが、前記ＣＵが最小コード化単位（ＳＣＵ）サイズに等しいサイズを有すると決定したことに応答して、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換するように構成された、［１１］に記載のビデオ符号化装置。
［１６］  前記ＣＵが第１のＣＵであり、前記１つ以上のプロセッサが、第２のＣＵのＰＵのためのＭＶ候補リストを生成することと、前記第２のＣＵが２Ｎ×２Ｎ、２Ｎ×Ｎ、又はＮ×２Ｎ区分モードに従ってＰＵに区分されるか、又は前記第２のＣＵの前記ＰＵの動き情報が高度動きベクトル予測（ＡＭＶＰ）モードで信号伝達されると決定したことに応答して、前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することと、前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記第２のＣＵの前記ＰＵのための予測ビデオブロックを生成することとを行うように更に構成された、［１１］に記載のビデオ符号化装置。
［１７］  前記１つ以上のプロセッサが、前記ＰＵの動き情報が高度動きベクトル予測（ＡＭＶＰ）モードを使用して信号伝達されるときのみ、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換するように構成された、［１１］に記載のビデオ符号化装置。
［１８］  前記１つ以上のプロセッサが、前記予測ビデオブロックに少なくとも部分的に基づいて符号化ビデオデータを出力するように更に構成された、［１１］に記載のビデオ符号化装置。
［１９］  前記双方向ＭＶ候補は第１の双方向ＭＶ候補であり、前記単方向ＭＶ候補は第１の単方向ＭＶ候補であり、前記ＭＶ候補リストの生成が、前記ＭＶ候補リスト中の第２の双方向ＭＶ候補が、等しい動きベクトルを有し、リスト０及びリスト１中の同じ参照ピクチャを示すと決定したことに応答して、前記第２の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することを含むように前記１つ以上のプロセッサが構成され、前記予測ビデオブロックを生成するために動き補償中に双方向から単方向への変換が実行されず、前記ＰＵが、別のビデオブロックをコード化するための動きベクトル候補ブロックとして使用されるとき、前記ＰＵは、双方向動き情報の代わりに単方向動き情報を有する、
［１１］に記載のビデオ符号化装置。
［２０］  Ｂスライス中のコード化単位（ＣＵ）の予測単位（ＰＵ）のための動きベクトル（ＭＶ）候補リストを生成するための手段であって、前記ＣＵが４つの等しいサイズのＰＵに区分される、生成するための手段と、前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換するための手段と、前記ＭＶ候補リスト中の選択されたＭＶ候補を決定するための手段と、前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成するための手段とを備える、ビデオ符号化装置。
［２１］  実行されると、１つ以上のプロセッサを、Ｂスライス中のコード化単位（ＣＵ）の予測単位（ＰＵ）のための動きベクトル（ＭＶ）候補リストを生成することと、前記ＣＵが４つの等しいサイズのＰＵに区分される、前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換することと、前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成することとを行うように構成する命令を記憶する１つ以上のコンピュータ可読記憶媒体を備える、コンピュータプログラム製品。
［２２］  ビデオデータを復号するための方法であって、前記方法は、Ｂスライス中のコード化単位（ＣＵ）の予測単位（ＰＵ）のための動きベクトル（ＭＶ）候補リストを生成することと、前記ＣＵが４つの等しいサイズのＰＵに区分される、前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換することと、マージ候補リスト中の選択されたＭＶ候補を決定することと、前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成することとを備える、方法。
［２３］  前記ＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換することを更に備える、［２２］に記載の方法。
［２４］  前記ＣＵの前記ＰＵの各々のＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換することを更に備える、［２２］に記載の方法。
［２５］  ビデオシーケンスの各Ｉｎｔｅｒ＿Ｎ×Ｎ  ＣＵの各ＰＵのためのＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換することを更に備え、各Ｉｎｔｅｒ＿Ｎ×Ｎ  ＣＵが、４つの等しいサイズのＰＵに区分され、インター予測を使用してコード化される、［２２］に記載の方法。
［２６］  前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換することは、前記ＣＵが最小コード化単位（ＳＣＵ）サイズに等しいサイズを有すると決定したことに応答して、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換することを備える、［２２］に記載の方法。
［２７］  前記ＣＵが第１のＣＵであり、前記方法は、第２のＣＵのＰＵのためのＭＶ候補リストを生成することと、前記第２のＣＵが２Ｎ×２Ｎ、２Ｎ×Ｎ、又はＮ×２Ｎ区分モードに従ってＰＵに区分されるか、又は前記第２のＣＵの前記ＰＵの動き情報が高度動きベクトル予測（ＡＭＶＰ）モードで信号伝達されると決定したことに応答して、前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することと、前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記第２のＣＵの前記ＰＵのための予測ビデオブロックを生成することとを更に備える、［２２］に記載の方法。
［２８］  前記双方向ＭＶ候補を変換することは、前記ＰＵの動き情報がＡＭＶＰモードを使用して信号伝達されるときのみ、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換することを備える、［２２］に記載の方法。
［２９］  前記方法が、前記予測ビデオブロックに少なくとも部分的に基づいて復号ビデオデータを出力することを更に備える、［２２］に記載の方法。
［３０］  前記方法がモバイルコンピュータ機器上で実行される、［２２］に記載の方法。
［３１］  前記双方向ＭＶ候補は第１の双方向ＭＶ候補であり、前記単方向ＭＶ候補は第１の単方向ＭＶ候補であり、前記ＭＶ候補リスト中の第２の双方向ＭＶ候補が、等しい動きベクトルを有し、リスト０及びリスト１中の同じ参照ピクチャを示すと決定したことに応答して、前記第２の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することを前記ＭＶ候補リストを生成することが備え、前記予測ビデオブロックを生成するために動き補償中に双方向から単方向への変換が実行されず、前記ＰＵが、別のビデオブロックをコード化するための動きベクトル候補ブロックとして使用されるとき、前記ＰＵは、双方向動き情報の代わりに単方向動き情報を有する、
［２２］に記載の方法。
［３２］  Ｂスライス中のコード化単位（ＣＵ）の予測単位（ＰＵ）のための動きベクトル（ＭＶ）候補リストを生成することと、前記ＣＵが４つの等しいサイズのＰＵに区分される、前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換することと、前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成することとを行うように構成された１つ以上のプロセッサを備える、ビデオ復号装置。
［３３］  前記１つ以上のプロセッサが、前記ＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換するように構成された、［３２］に記載のビデオ復号装置。
［３４］  前記１つ以上のプロセッサが、前記ＣＵの前記ＰＵの各々のＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換するように構成された、［３２］に記載のビデオ復号装置。
［３５］  前記１つ以上のプロセッサが、ビデオシーケンスの各Ｉｎｔｅｒ＿Ｎ×Ｎ  ＣＵの各ＰＵのためのＭＶ候補リスト中の各双方向ＭＶ候補を単方向ＭＶ候補に変換するように構成され、各Ｉｎｔｅｒ＿Ｎ×Ｎ  ＣＵが、４つの等しいサイズのＰＵに区分され、インター予測を使用してコード化される、［３２］に記載のビデオ復号装置。
［３６］  前記１つ以上のプロセッサは、前記ＣＵが最小コード化単位（ＳＣＵ）サイズに等しいサイズを有すると決定したことに応答して、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換するように構成された、［３２］に記載のビデオ復号装置。
［３７］  前記ＣＵが第１のＣＵであり、前記１つ以上のプロセッサは、第２のＣＵのＰＵのためのＭＶ候補リストを生成することと、前記第２のＣＵが２Ｎ×２Ｎ、２Ｎ×Ｎ、又はＮ×２Ｎ区分モードに従ってＰＵに区分されるか、又は前記第２のＣＵの前記ＰＵの動き情報が高度動きベクトル予測（ＡＭＶＰ）モードで信号伝達されると決定したことに応答して、前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することと、前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の選択されたＭＶ候補を決定することと、前記第２のＣＵの前記ＰＵのための前記ＭＶ候補リスト中の前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記第２のＣＵの前記ＰＵのための予測ビデオブロックを生成することとを行うように更に構成された、［３２］に記載のビデオ復号装置。
［３８］  前記１つ以上のプロセッサは、前記ＰＵの動き情報が高度動きベクトル予測（ＡＭＶＰ）モードを使用して信号伝達されるときのみ、前記双方向ＭＶ候補を前記単方向ＭＶ候補に変換するように構成された、［３２］に記載のビデオ復号装置。
［３９］  前記１つ以上のプロセッサが、前記予測ビデオブロックに少なくとも部分的に基づいて復号ビデオデータを出力するように更に構成された、［３２］に記載のビデオ復号装置。
［４０］  前記双方向ＭＶ候補は第１の双方向ＭＶ候補であり、前記単方向ＭＶ候補は第１の単方向ＭＶ候補であり、前記ＭＶ候補リストの生成が、前記ＭＶ候補リスト中の第２の双方向ＭＶ候補が、等しい動きベクトルを有し、リスト０及びリスト１中の同じ参照ピクチャを示すと決定したことに応答して、前記第２の双方向ＭＶ候補を第２の単方向ＭＶ候補に変換することを備えるように前記１つ以上のプロセッサが構成され、前記予測ビデオブロックを生成するために動き補償中に双方向から単方向への変換が実行されず、前記ＰＵが、別のビデオブロックをコード化するための動きベクトル候補ブロックとして使用されるとき、前記ＰＵは、双方向動き情報の代わりに単方向動き情報を有する、
［３２］に記載のビデオ復号装置。
［４１］  Ｂスライス中のコード化単位（ＣＵ）の予測単位（ＰＵ）のための動きベクトル（ＭＶ）候補リストを生成するための手段と、前記ＣＵが４つの等しいサイズのＰＵに区分される、前記ＭＶ候補リスト中の双方向ＭＶ候補を単方向ＭＶ候補に変換するための手段と、前記ＭＶ候補リスト中の選択されたＭＶ候補を決定するための手段と、前記選択されたＭＶ候補によって指定された動き情報によって示された１つ以上の参照ブロックに少なくとも部分的に基づいて、前記ＰＵのための予測ビデオブロックを生成するための手段とを備える、ビデオ復号装置。
【国際調査報告】
2015510358.tif 000013
2015510358.tif 000014
2015510358.tif 000015