(57)【特許請求の範囲】
【請求項１】
映像データを復号する方法であって、
１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるか又は前記１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）コーディングモードが使用されるかのうちの１つを決定するために第１の構文要素を復号することであって、前記ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味し、前記ＰＣＭコーディングモードは、ピクセル値を１つ以上のＰＣＭサンプルとしてコーディングするモードを意味することと、
前記第１の構文要素が真値を示すことに応答して、前記ロスレスコーディングモード又は前記ＰＣＭコーディングモードのうちのどちらが使用されるかを決定するために第２の構文要素を復号することと、
前記第１の構文要素が偽値を示すことに応答して、変換及び量子化プロセスを用いて前記１つ以上の映像ブロックを復号することと、前記第２の構文要素を復号しないことと、
を備える、方法。
【請求項２】
前記１つ以上のＰＣＭサンプルに関してインループフィルタリング動作が使用されるかどうかを示す第３の構文要素を復号することと、
前記第１の構文要素、前記第２の構文要素、及び前記第３の構文要素に基づいて前記１つ以上のＰＣＭサンプルにインループフィルタリング動作を適用することと、をさらに備える請求項１に記載の方法。
【請求項３】
前記第１の構文要素は、コーディングユニット（ＣＵ）構文レベルにおけるｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ構文要素を備え、前記第２の構文要素は、前記ＣＵ構文レベルにおけるｐｃｍ_ｆｌａｇ構文要素を備え、前記第３の構文要素は、前記ＣＵ構文レベルにおけるｐｃｍ_ｌｏｏｐ_ｄｉｓａｂｌｅ_ｆｌａｇ構文要素を備える請求項２に記載の方法。
【請求項４】
前記第１の構文要素及び前記第２の構文要素に少なくとも部分的に基づいて前記１つ以上の映像ブロックを復号することをさらに備える請求項１に記載の方法。
【請求項５】
前記ロスレスコーディングモードが使用されることを前記第２の構文要素が示すと決定したことに応答して、前記ロスレスコーディングモードを用いて前記１つ以上の映像ブロックを復号することと、
前記ＰＣＭコーディングモードが使用されることを前記第２の構文要素が示すと決定したことに応答して、前記ＰＣＭコーディングモードを用いて前記１つ以上の映像ブロックを復号することと、をさらに備える請求項４に記載の方法。
【請求項６】
映像データを符号化する方法であって、
１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるか又は前記１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）コーディングモードが使用されるかのうちの１つを示すために第１の構文要素を符号化することであって、前記ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味し、前記ＰＣＭコーディングモードは、ピクセル値を１つ以上のＰＣＭサンプルとしてコーディングするモードを意味することと、
前記第１の構文要素が真値を示すことに応答して、前記ロスレスコーディングモード又は前記ＰＣＭコーディングモードのうちのどちらが使用されるかを示すために第２の構文要素を符号化することと、
前記第１の構文要素が偽値を示すことに応答して、変換及び量子化プロセスを用いて前記１つ以上の映像ブロックを符号化することと、前記第２の構文要素を符号化しないことと、
を備える、方法。
【請求項７】
前記１つ以上のＰＣＭサンプルに関してインループフィルタリング動作が使用されるかどうかを示すために第３の構文要素を符号化することと、
前記第１の構文要素、前記第２の構文要素、及び前記第３の構文要素に基づいて前記１つ以上のＰＣＭサンプルにインループフィルタリング動作を適用することと、をさらに備える請求項６に記載の方法。
【請求項８】
前記第１の構文要素は、コーディングユニット（ＣＵ）構文レベルにおけるｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ構文要素を備え、前記第２の構文要素は、前記ＣＵ構文レベルにおけるｐｃｍ_ｆｌａｇ構文要素を備え、前記第３の構文要素は、前記ＣＵ構文レベルにおけるｐｃｍ_ｌｏｏｐ_ｄｉｓａｂｌｅ_ｆｌａｇ構文要素を備える請求項７に記載の方法。
【請求項９】
前記第１の構文要素及び前記第２の構文要素に少なくとも部分的に基づいて前記１つ以上の映像ブロックを符号化することをさらに備える請求項６に記載の方法。
【請求項１０】
第２の構文要素を符号化することは、前記１つ以上の映像ブロックが前記ロスレスコーディングモードを用いて符号化されたときに前記ロスレスコーディングモードが使用されることを示すために前記第２の構文要素を符号化することをさらに備え、第２の構文要素を符号化することは、前記１つ以上の映像ブロックが前記ＰＣＭコーディングモードを用いて符号化されたときに前記ＰＣＭコーディングモードが使用されることを示すために前記第２の構文要素を符号化することをさらに備える請求項９に記載の方法。
【請求項１１】
実行されたときに、デバイスのプロセッサに、請求項１乃至５または６乃至１０のうちのいずれか一項の方法を実行させる命令を記憶する、コンピュータによって読み取り可能な記憶媒体。
【請求項１２】
映像復号デバイスであって、
１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるか又は前記１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）コーディングモードが使用されるかのうちの１つを示す第１の構文要素を復号するための手段
を備え、
ここにおいて、前記ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味し、前記ＰＣＭコーディングモードは、ピクセル値を１つ以上のＰＣＭサンプルとしてコーディングするモードを意味し、
前記第１の構文要素が真値を示すことに応答して、前記復号するための手段は、前記ロスレスコーディングモード又は前記ＰＣＭコーディングモードのうちのどちらが使用されるかを示す第２の構文要素を復号するように構成され、
前記第１の構文要素が偽値を示すことに応答して、前記復号するための手段は、変換及び量子化プロセスを用いて前記１つ以上の映像ブロックを復号し、前記第２の構文要素を復号しないように構成される、
映像復号デバイス。
【請求項１３】
１つ以上のＰＣＭサンプルに関してインループフィルタリング動作が使用されるかどうかを示す第３の構文要素を復号するための手段と、
前記第１の構文要素、前記第２の構文要素、及び前記第３の構文要素に基づいて前記１つ以上のＰＣＭサンプルにインループフィルタリング動作を適用するための手段と、をさらに備える請求項１２に記載の映像復号デバイス。
【請求項１４】
映像符号化デバイスであって、
１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるか又は前記１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）コーディングモードが使用されるかを示す第１の構文要素を符号化するための手段
を備え、
ここにおいて、前記ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味し、前記ＰＣＭコーディングモードは、ピクセル値を１つ以上のＰＣＭサンプルとしてコーディングするモードを意味し、
前記第１の構文要素が真値を示すことに応答して、前記符号化するための手段は、前記ロスレスコーディングモード又は前記ＰＣＭコーディングモードのうちのどちらが使用されるかを示す第２の構文要素を符号化するように構成され、
前記第１の構文要素が偽値を示すことに応答して、前記符号化するための手段は、変換及び量子化プロセスを用いて前記１つ以上の映像ブロックを符号化し、前記第２の構文要素を符号化しないように構成される、
映像符号化デバイス。
【請求項１５】
１つ以上のＰＣＭサンプルに関してインループフィルタリング動作が使用されるかどうかを示す第３の構文要素を符号化するための手段と、
前記第１の構文要素、前記第２の構文要素、及び前記第３の構文要素に基づいて前記１つ以上のＰＣＭサンプルにインループフィルタリング動作を適用するための手段と、をさらに備える請求項１４に記載の映像符号化デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
［０００１］本出願は、米国仮特許出願第６１／６６１，２４２号（出願日：２０１２年６月１８日）及び米国仮特許出願第６１／６６６，６３２号（出願日：２０１２年６月２９日）の利益を主張するものであり、それらの各々の内容全体が、引用によってここに組み入れられている。
【０００２】
［０００２］本開示は、映像コーディングに関するものである。本開示は、より具体的には、映像コーディングモードをシグナリングすることに関するものである。
【背景技術】
【０００３】
［０００３］デジタル映像能力を広範なデバイス内に組み入れることができ、デジタルテレビと、デジタル直接放送システムと、無線放送システムと、パーソナルデジタルアシスタント（ＰＤＡ）と、ラップトップ又はデスクトップコンピュータと、デジタルカメラと、デジタル記録デバイスと、デジタルメディアプレーヤーと、ビデオゲームプレイ装置と、ビデオゲームコンソールと、セルラー又は衛星無線電話と、ビデオ会議装置と、等を含む。デジタル映像デバイスは、デジタル映像情報をより効率的に送信、受信、及び格納するために、映像圧縮技法、例えば、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４、Ｐａｒｔ１０、アドバンストビデオコーディング（Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＡＶＣ））、現在策定中の高効率映像コーディング（Ｈｉｇｈ  Ｅｆｆｉｃｉｅｎｃｙ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＨＥＶＣ）規格によって定義される規格、及び該規格の拡張版において説明されるそれら、を実装する。
【０００４】
［０００４］映像圧縮技法は、映像シーケンスに固有の冗長性を低減又は除去するための空間（イントラピクチャ）予測及び／又は時間（インターピクチャ）予測を含む。ブロックに基づく映像コーディングでは、映像スライスを映像ブロックに分割することができ、それらは、ツリーブロック、コーディングユニット（ＣＵ）及び／又はコーディングノードと呼ぶこともできる。ピクチャのイントラコーディングされた（Ｉ）スライス内の映像ブロックは、同じピクチャ内の近隣ブロック内の基準サンプルに関して空間予測を用いて符号化される。ピクチャのインターコーディングされた（Ｐ又はＢ）スライス内の映像ブロックは、同じピクチャ内の近隣ブロック内の基準サンプルに関する空間予測又はその他の基準ピクチャ内の基準サンプルに関する時間予測を使用することができる。ピクチャは、フレームと呼ぶことができ、基準ピクチャは、基準フレームと呼ぶことができる。
【０００５】
［０００５］空間予測又は時間予測の結果、コーディングされるべきブロックに関する予測ブロックが得られる。残差データは、コーディングされるべきオリジナルのブロックと予測ブロックとの間のピクセル差分を表す。インターコーディングされたブロックは、予測ブロックを形成する基準サンプルのブロックを指し示す動きベクトル、及びコーディングされたブロックと予測ブロックとの間の差分を示す残差データにより符号化される。イントラコーディングされたブロックは、イントラコーディングモード及び残差データにより符号化される。さらなる圧縮のために、残差データは、ピクセル領域から変換領域に変換することができ、その結果残差変換係数が得られ、次にそれらを量子化することができる。量子化された変換係数は、最初は二次元アレイで配列され、変換係数の一次元ベクトルを生成するために走査することができ、及びさらなる圧縮を達成するためにエントロピーコーディングを適用することができる。
【発明の概要】
【０００６】
［０００６］概して、本開示は、映像コーディングにおけるロスレス（ｌｏｓｓｌｅｓｓ）コーディングモード及びパルスコード変調（ＰＣＭ）コーディングモードのシグナリングに関する技法について説明する。幾つかの例では、それらの技法は、例えば、互いに関連してロスレス及びＰＣＭコーディングモードをシグナリングするために使用される構文要素をシグナリング又は解釈することを通じてコーディングモードと関連付けられた情報のシグナリングの向上された効率を提供することができる。
【０００７】
［０００７］一例では、本開示において説明される技法は、映像データを復号するための方法に関連する。方法は、ＰＣＭコーディングモードが１つ以上の映像ブロックに関して使用されるかどうかを決定するために第１の構文要素を復号することを含み、ＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する。方法は、１つ以上の映像ブロッに対してインループフィルタリングが適用されるかどうかを示すために第２の構文要素を復号することをさらに備える。ＰＣＭコーディングモードが使用されることを第１の構文要素が示すことに応答して、方法は、第２の構文要素に少なくとも部分的に基づいて１つ以上の映像ブロックにインループフィルタリングを適用することをさらに備える。方法は、第１の構文要素及び第２の構文要素に少なくとも部分的に基づいて１つ以上の映像ブロックを復号することも備える。
【０００８】
［０００８］一例では、本開示において説明される技法は、映像データを符号化するための方法に関連する。方法は、１つ以上の映像ブロックに関してＰＣＭコーディングモードが使用されるかどうかを示すために第１の構文要素を符号化することを含み、ＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する。方法は、１つ以上の映像ブロッに対してインループフィルタリングが適用されるかどうかを示すために第２の構文要素を符号化することも備える。ＰＣＭコーディングモードが使用されることを第１の構文要素が示すことに応答して、方法は、第２の構文要素に少なくとも部分的に基づいて１つ以上の映像ブロックにインループフィルタリングを適用することをさらに含む。方法は、第１の構文要素及び第２の構文要素に少なくとも部分的に基づいて１つ以上の映像ブロックを符号化することも含む。
【０００９】
［０００９］他の例では、本開示において説明される技法は、映像コーディングデバイスに関連する。映像コーディングデバイスは、１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）モードが使用されるかどうかを示す第１の構文要素をコーディングするように構成された映像コーダを含み、ＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する。映像コーダは、１つ以上の映像ブロックにインループフィルタリングが適用されるかどうかを示す第２の構文要素をコーディングするようにさらに構成される。映像コーダは、ＰＣＭコーディングモードが使用されることを第１の構文要素が示すことに応答して、第２の構文要素に少なくとも部分的に基づいて１つ以上の映像ブロックにインループフィルタリングを適用するようにさらに構成される。
【００１０】
［００１０］さらに他の例では、本開示において説明される技法は、コンピュータによって読み取り可能な記憶媒体に関連する。コンピュータによって読み取り可能な記憶媒体は、実行されたときに、１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）モードが使用されるかどうかを示す第１の構文要素をコーディングすることを映像データをコーディングするためのデバイスのプロセッサに行わせる命令を格納しており、ＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する。命令は、１つ以上の映像ブロックにインループフィルタリングが適用されるかどうかを示す第２の構文要素をコーディングすることをプロセッサにさらに行わせる。命令は、ＰＣＭコーディングモードが使用されることを第１の構文要素が示すことに応答して、第２の構文要素に少なくとも部分的に基づいて１つ以上の映像ブロックにインループフィルタリングを適用することをプロセッサにさらに行わせる。
【００１１】
［００１１］他の例では、本開示において説明される技法は、映像コーディングデバイスに関連する。映像コーディングデバイスは、１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）モードが使用されるかどうかを示す第１の構文要素をコーディングするための手段を含み、モードは、ピクセル値をＰＣＭサンプルとしてコーディングするＰＣＭコーディングモードを意味する。映像コーディングデバイスは、１つ以上の映像ブロックにインループフィルタリングが適用されるかどうかを示す第２の構文要素をコーディングするための手段をさらに含む。映像コーディングデバイスは、ＰＣＭコーディングモードが使用されることを示す第１の構文要素に応答して、第２の構文要素に少なくとも部分的に基づいて１つ以上の映像ブロックにフィルタリングを適用するための手段をさらに含む。
【００１２】
［００１２］一例では、本開示において説明される技法は、映像データを復号するための方法に関連する。方法は、１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるか又は１つ以上の映像ブロックに関してＰＣＭコーディングモードが使用されるかを決定するために第１の構文要素を復号することを含み、ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味し、ＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する。方法は、第１の構文要素が真値を示すことに応答して、ロスレスコーディングモード又はＰＣＭモードのうちのどちらが使用されるかを示す第２の構文要素を復号することをさらに含む。
【００１３】
［００１３］他の例では、本開示において説明される技法は、映像データを符号化するための方法に関連する。方法は、１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるか又は１つ以上の映像ブロックに関してＰＣＭコーディングモードが使用されるかを決定するために第１の構文要素を符号化することを含み、ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味し及びＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する。方法は、第１の構文要素が真値を示すことに応答して、ロスレスコーディングモード又はＰＣＭモードのうちのどちらが使用されるかを示ために第２の構文要素を符号化することをさらに含む。
【００１４】
［００１４］他の例では、本開示において説明される技法は、映像コーディングデバイスに関連する。映像コーディングデバイスは、１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるか又は１つ以上の映像ブロックに関してＰＣＭコーディングモードが使用されるかを示す第１の構文要素をコーディングするように構成された映像コーダを含み、ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味し及びＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する。映像コーダは、第１の構文要素が真値を示すことに応答して、ロスレスコーディングモード又はＰＣＭモードのうちのどちらが使用されるかを示す第２の構文要素をコーディングするようにさらに構成される。
【００１５】
［００１５］さらに他の例では、本開示において説明される技法は、コンピュータによって読み取り可能な記憶媒体に関連する。コンピュータによって読み取り可能な記憶媒体は、実行されたときに、１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるか又は１つ以上の映像ブロックに関してＰＣＭコーディングモードが使用されるかを示す第１の構文要素をコーディングすることを映像データをコーディングするためのデバイスのプロセッサに行わせる命令を格納しており、ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味し、ＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する。命令は、第１の構文要素が真値を示すことに応答して、ロスレスコーディングモード又はＰＣＭモードのうちのどちらが使用されるかを示す第２の構文要素をコーディングすることをプロセッサにさらに行わせる。
【００１６】
［００１６］他の例では、本開示において説明される技法は、映像コーディングデバイスに関連する。映像コーディングデバイスは、１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるか又は１つ以上の映像ブロックに関してＰＣＭコーディングモードが使用されるかを示す第１の構文要素をコーディングするための手段のための手段を含み、ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味し及びＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する。映像コーディングデバイスは、第１の構文要素が真値を示すことに応答して、ロスレスコーディングモード又はＰＣＭモードのうちのどちらが使用されるかを示す第２の構文要素をコーディングするための手段をさらに含む。
【００１７】
［００１７］１つ以上の例の詳細が、添付図及び以下の説明において示される。それらの説明と図面から、及び請求項から、その他の特徴、目的、及び利点が明らかになるであろう。
【図面の簡単な説明】
【００１８】
【図１】［００１８］本開示の技法を利用するように構成することができる映像コーディングシステム例を示したブロック図である。
【図２】［００１９］本開示の技法を実装するように構成することができる映像符号器例を示したブロック図である。
【図３】［００２０］本開示の技法を実装するように構成することができる映像復号器例を示したブロック図である。
【図４】［００２１］本開示において説明される技法により、映像データに関する他の構文要素に基づいてフィルタリングを適用すべきかどうかを決定するために構文要素を復号するための方法例を示したフローチャートである。
【図５】［００２２］本開示において説明される技法により、映像データに関する他の構文要素に基づいてフィルタリングを適用すべきかどうかを示すために構文要素を符号化するための方法例を示したフローチャートである。
【図６】［００２３］本開示において説明される技法により、映像データに関するロスレスコーディングモードの使用を示す構文要素に基づいてパルスコード変調（ＰＣＭ）コーディングモードの使用を示す構文要素をコーディングするための方法例を示したフローチャートである。
【図７】［００２４］本開示において説明される技法により、映像データに関してＰＣＭコーディングモード又はロスレスコーディングモードのいずれを適用すべきかを決定するためにロスレスコーディングモード構文要素と関係してＰＣＭコーディングモード構文要素を使用するための方法例を示したフローチャートである。
【発明を実施するための形態】
【００１９】
［００２５］概して、本開示は、映像コーディングにおけるロスレスコーディングモード及びパルスコード変調（ＰＣＭ）コーディングモードのシグナリングを統一するための技法について説明する。より具体的には、幾つかの例では、本開示の技法は、共同で又は互いに関連して、フラグを用いることによって同じブロックサイズに関するロスレスモード及びＰＣＭモードをシグナリングする。フラグは、コーディングユニット（ＣＵ）レベルでシグナリングすることができ、及び、１つ以上の映像ブロックに関するＣＵのグループ内に存在することができる。ここにおいて説明される技法は、効率を向上させ、ロスレスモード及びＰＣＭモードのシグナリングを調和させる。それらの技法は、フラグのシグナリング効率を調和及び向上させるためにロスレスコーディングモードフラグとＰＣＭコーディングモードフラグとの間での相互作用を定義する。本開示において説明される幾つかの技法は、ロスレスコーディングモードフラグと、ＰＣＭコーディングモードフラグと、インループフィルタリングがイネーブルにされるかどうかを示す第３のフラグとの間での相互作用をさらに定義する。
【００２０】
［００２６］デジタル映像能力を広範なデバイス内に組み入れることができ、デジタルテレビと、デジタル直接放送システムと、無線放送システムと、パーソナルデジタルアシスタント（ＰＤＡ）と、ラップトップ又はデスクトップコンピュータと、タブレットコンピュータと、電子書籍リーダーと、デジタルカメラと、デジタル記録デバイスと、デジタルメディアプレーヤーと、ビデオゲームプレイ装置と、ビデオゲームコンソールと、セルラー又は衛星無線電話、いわゆる“スマートフォン”と、ビデオ会議装置と、映像ストリーミングデバイスと、等を含む。デジタル映像デバイスは、映像コーディング技法、例えば、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４、Ｐａｒｔ１０、アドバンストビデオコーディング（Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＡＶＣ））、現在策定中の高効率映像コーディング（Ｈｉｇｈ  Ｅｆｆｉｃｉｅｎｃｙ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＨＥＶＣ）規格によって定義される規格、及び該規格の拡張版において説明されるそれら、を実装する。映像デバイスは、該映像コーディング技法を実装することによってより効率的にデジタル映像情報を送信、受信、符号化、復号、及び／又は格納することができる。
【００２１】
［００２７］映像コーディング技法は、映像シーケンスに固有の冗長性を低減又は除去するための空間（イントラピクチャ）予測及び／又は時間（インターピクチャ）予測を含む。ブロックに基づく映像コーディングでは、映像スライス（例えば、映像フレーム又は映像フレームの一部分）を映像ブロックに分割することができ、それらは、ツリーブロック、コーディングユニット（ＣＵ）及び／又はコーディングノードと呼ぶこともできる。映像ブロックは、同じピクチャ内の近隣ブロック内の基準サンプルに関して空間予測を用いて又はその他の基準ピクチャ内の基準サンプルに関して時間予測を用いて符号化することができる。空間又は時間予測の結果、コーディングされるべきブロックに関する予測ブロックが得られる。残差データは、コーディングされるべきオリジナルのブロックと予測ブロックとの間のピクセル差分を表す。さらなる圧縮のために、残差データは、ピクセル領域から変換領域に変換することができ、その結果残差変換係数が得られ、次にそれらを量子化することができる。量子化された変換係数は、最初は二次元アレイで配列され、変換係数の一次元ベクトルを生成するために走査することができ、及び映像ビットストリームにおいてさらなる圧縮を達成するためにエントロピーコーディングを適用することができる。
【００２２】
［００２８］ＨＥＶＣのワーキングドラフト７（ここでは“ＨＥＶＣ  ＷＤ７”と呼ばれる）は、ロスレスコーディングをシグナリングするためにＣＵレベルにおいて明示のフラグを導入した。ロスレスコーディングモード（ここでは“ロスレスモードとも呼ばれる）”は、ロスを導入するコーディングプロセスがバイパスされるコーディングモードを意味することができる。変換、量子化、及びインループフィルタリングは、符号化されたビットストリームにロスを導入するコーディングプロセスの例である。従って、ロスレスコーディングモードは、変換及び量子化及びインループフィルタリング映像コーディングプロセスをバイパスすることができる。２０１２年４月２７日〜２０１２年５月７日にスイス  ジュネーブで開催された第９回会議においてＩＴＵ−Ｔ  ＳＧ１６  ＷＰ３及びＩＳＯ／ＩＥＣ  ＪＴＣ／ＳＣ２９／ＷＧ１１の映像コーディングに関する共同作業チーム（ＪＣＴ−ＶＣ）のＢｒｏｓｓ、等による文書ＨＣＴＶＣ−Ｉ１００３、“高効率映像コーディング（ＨＥＶＣ）テキスト仕様ドラフト７”が提出されており、それは、２０１３年６月１７日現在では、http://phenix.int-evry.fr/jct/doc_end_user/documents/9_Geneva/wg11/JCTVC-I1003-v6.zipからダウンロード可能である。
【００２３】
［００２９］本開示に含まれる技法は、ＨＥＶＣ  ＷＤ７に関して説明されているが、それらの技法は、最終的なＨＥＶＣドラフト（“ＨＥＶＣ  Ｖｅｒｓｉｏｎ１”と呼ばれる）仕様に対しても適用可能でありかつ適している。例えば、最終的なＨＥＶＣ（バージョン１）仕様からはバーストＰＣＭモードが除外されている。２０１３年１月１４日〜２０１３年１月２３日にスイス  ジュネーブで開催された第１２回会議においてＩＴＵ−Ｔ  ＳＧ１６  ＷＰ３及びＩＳＯ／ＩＥＣ  ＪＴＣ／ＳＣ２９／ＷＧ１１の映像コーディングに関する共同作業チーム（ＪＣＴ−ＶＣ）のＢｒｏｓｓ、等による文書ＪＣＴＶＣ−Ｌ１００３_ｖ３４“（ＦＤＩＳ及びラストコールに関する）高効率映像コーディング（ＨＥＶＣ）テキスト仕様ドラフト１０”が提出されており、それは、２０１３年６月１７日現在では、http://phenix.int-evry.fr/jct/doc_end_user/documents/12_Geneva/wg11/JCTVC-Ｌ1003-v34.zipからダウンロード可能である。
【００２４】
［００３０］ＷＤ７を導入した第９回ＪＣＴ−ＶＣ会議以前のＨＥＶＣドラフトのそれまでのバージョンにおいては、ロスレスコーディングが暗黙にシグナリングされていた。すなわち、ロスレスコーディングは、シグナリングされた量子化パラメータ（ＱＰ）値が最小の許容可能なＱＰ値（例えば、８ビットの主プロフィールに関して０）であったときにＣＵに関して使用された。スイスのジュネーブでの第９回ＪＣＴ−ＶＣ会議中に、ロスレスコーディングモードを明示でシグナリングするためにロスレスコーディングモードに関するシグナリング方式が修正された。そのような以前の暗黙のシグナリング（すなわち、シグナリングされたＱＰ値が最小の許容可能なＱＰ値であったときにロスレスコーディングを実施する）代わりに、第９回ＪＣＴ−ＶＣ会議は、ロスレスコーディングをシグナリングするためにコーディングユニット（ＣＵ）レベルで明示のフラグを導入した。ＣＵレベルでのフラグ（例えば、ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｅｎａｂｌｅ_ｆｌａｇ）は、ロスレスコーディングモードをイネーブルにするために導入される。
【００２５】
［００３１］ロスレスコーディングモードがイネーブルにされたときには、ＣＵレベルにおいて、ロスレスコーディングモードがその特定のＣＵに関して使用されるかどうかを示すフラグ（例えば、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ）がシグナリングされる。ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが１（例えば、真値）である場合は、すべてのインループフィルタリングがディスエーブルにされる。インループフィルタリングは、デブロッキング、アダプティブループフィルタ（ＡＬＦ）、及びサンプルアダプティブオフセット（ＳＡＯ）プロセスを含むことができる。変換及び量子化は、同様にバイパスされる。
【００２６】
［００３２］ＨＥＶＣ  ＷＤ７は、ＰＣＭモードがイネーブルにされるか又はディスエーブルにされるかをシグナリングするためにＳＰＳレベルでの明示のフラグも含む（ｐｃｍ_ｅｎａｂｌｅｄ_ｆｌａｇ）。ＰＣＭコーディングモードは、上記のロスレスコーディングモードと異なるコーディングモードである。ＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する。例えば、サンプルは、ＰＣＭコーディングモードにおいてＰＣＭサンプルとして直接コーディングされる。幾つかの例では、ＰＣＭモードはロッシー（ｌｏｓｓｙ）であり、その場合は、幾つかの数の最下位ビットは捨てられる。幾つかの例では、ＰＣＭコーディングモードは、イントラパルスコード変調（ＩＰＣＭ）と呼ぶこともできる。
【００２７】
［００３３］ＰＣＭコーディングモード（ここでは“ＰＣＭモード”とも呼ばれる）は、（例えば、ｐｃｍ_ｅｎａｂｌｅｄ_ｆｌａｇを設定することによって）ＳＰＳレベルにおいてイネーブル又はディスエーブルにすることができる。ＰＣＭモードがイネーブルにされる場合は、ＰＣＭモードを使用することができる最小及び最大のＣＵサイズがシグナリングされる。ＣＵレベルフラグ（ｐｃｍ_ｆｌａｇ）は、ＰＣＭモードが特定のＣＵに関して使用中であるかどうかを示す。ＰＣＭモードブロックサンプルのラン長（ｒｕｎ−ｌｅｎｇｔｈ）もシグナリングすることができる。ＳＰＳレベルでは他のフラグ（ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇ）が使用され、ＰＣＭモードブロックにインループフィルタリングが適用されるべきかどうかを示す。
【００２８】
［００３４］ＨＥＶＣ  ＷＤ７では、ＰＣＭコーディングモードとロスレスコーディングモードとの間の相互作用は、適切に定義されていない。例えば、現在定義されているロスレスコーディングモード及びＰＣＭコーディングモードが同時にイネーブルにされる場合は、ＰＣＭコーディングモードが優先される。本開示の技法は、ロスレスモード及びＰＣＭモードのシグナリング及びインループフィルタとの相互作用を調和させる修正を含む。
【００２９】
［００３５］本開示では、符号化及び／又は復号プロセスにおいてロスレス及びＰＣＭモードのシグナリングを調和させるか又は統一するための３つの代替技法が説明される。第１の技法は、ＰＣＭモードに関するインループフィルタリングをイネーブルにするために構文要素ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇを使用することを含む。ＨＥＶＣ  ＷＤ７では、ピクチャのシーケンス全体に関してＰＣＭコーディングされたブロックに関してループフィルタリングをイネーブル又はディスエーブルにするためにｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇを設定することができる。しかしながら、個々のＰＣＭコーディングされた映像ブロックに関してループフィルタリングをイネーブル又はディスエーブルにするために、特定のＰＣＭコーディングされた映像ブロックに関してループフィルタリングが使用されることを決定するか又は示すためにｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇを使用することができる。
【００３０】
［００３６］例えば、ｐｃｍ_ｆｌａｇが０に等しく、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが存在していて１に等しい場合は、“ロスレス”コーディングユニットに関して変換、量子化、及びすべてのループフィルタリングがバイパスされる。他方、ｐｃｍ_ｆｌａｇが０に等しく、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが０に等しい場合は、コーディングユニットに関して変換、量子化、及びすべてのループフィルタリングが行われる。ｐｃｍ_ｆｌａｇが１に等しく、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが存在していて１に等しい場合は、ＰＣＭコーディングされたブロックに関してすべてのループフィルタがバイパスされる（すなわち、ＰＣＭコードブロックにループフィルタが適用されない）。他方、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが存在していないか又は０に等しい場合は、ＰＣＭコーディングされたブロックにループフィルタが適用される。
【００３１】
［００３７］フラグｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇは、ＳＰＳから取り除かれる場合と取り除かれない場合がある。ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇが取り除かれる場合は、ピクチャのシーケンス全体に関してＰＣＭコーディングされたブロックに関してループフィルタリングはイネーブルにもディスエーブルにもされない。ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇが存在しており、０に等しい場合は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇは、ＰＣＭコーディングされたブロックサンプルに関して引き続きインループフィルタリングをオン又はオフにする。他方、ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇが存在しており、１に等しい場合は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇは、ＰＣＭコーディングされたブロックサンプルのインループフィルタリングに対しては影響を有さず、ＰＣＭコーディングされたブロックサンプルに関してすべてのインループフィルタリングがディスエーブルにされる。
【００３２】
［００３８］代替技法は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが０又は偽であるときのみにＰＣＭコーディングモードを使用すること及びシグナリングすることを含む。ＨＥＶＣ  ＷＤ７では、ＰＣモードは、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇの値にかかわらずシグナリングされる。すなわち、ＨＥＶＣ  ＷＤ７では、構文要素ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇは、映像ブロックがＰＣＭモードを使用時には浪費される。従って、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが０のときのみにＰＣＭモードをシグナリングすることによって、映像コーディングプロセスは、効率が向上し、ビットストリームのサイズを縮小することができる。
【００３３】
［００３９］第３の代替技法が説明され、１つの構文要素（ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ）の存在が、第２の構文要素（ｐｃｍ_ｆｌａｇ）はロスレス又はＰＣＭコーディングモードを選択するものとして解釈されるように定義する。従って、ｐｃｍ_ｆｌａｇは、階層的にｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇよりも低いレベルにあるとみなすことができる。フラグｐｃｍ_ｆｌａｇは、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが１に等しいときのみにシグナリングされる。この技法では、映像ブロックがＰＣＭモード又はロスレスモードのいずれかを使用する場合は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇは、１に設定される。次に、映像ブロックに関してＰＣＭモード又はロスレスモードのいずれかが適用されたかを示すために又は決定するためにｐｃｍ_ｆｌａｇがシグナリングされる。ｐｃｍ_ｆｌａｇが１である場合は、ＰＣＭモードが使用される。ｐｃｍ_ｆｌａｇが０である場合は、ロスレスコーディングモードが使用される。ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが０である場合は、ｐｃｍ_ｆｌａｇはシグナリングされず、変換、量子化、インループフィルタリングを伴うコーディングが映像ブロックに関して行われる。
【００３４】
［００４０］図１は、本開示の技法を利用することができる映像コーディングシステム例１０を示すブロック図である。ここで使用される場合において、用語“映像コーダ”は、概して、映像符号器及び映像復号器の両方を意味する。本開示では、用語“映像コーディング”又は“コーディング”は、概して、映像符号化及び映像復号を意味することができる。
【００３５】
［００４１］図１に示されるように、映像コーディングシステム１０は、ソースデバイス１２と、行先デバイス１４と、を含む。ソースデバイス１２は、符号化された映像データを生成する。従って、ソースデバイス１２は、映像符号化デバイスと呼ぶことができる。行先デバイス１４は、ソースデバイス１２によって生成された符号化された映像データを復号することができる。従って、行先デバイス１４は、映像復号デバイスと呼ぶことができる。ソースデバイス１２及び行先デバイス１４は、映像コーディングデバイスの例であることができる。
【００３６】
［００４２］ソースデバイス１２及び行先デバイス１４は、広範なデバイスを備えることができ、デスクトップコンピュータ、モバイルコンピューティングデバイス、ノートブック（例えば、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、電話ハンドセット、例えば、いわゆるスマートフォン、テレビ、カメラ、表示装置、デジタルメディアプレーヤー、ビデオゲームコンソール、車載コンピュータ、等を含む。幾つかの例では、ソースデバイス１２及び行先デバイス１４は、無線通信のために装備することができる。
【００３７】
［００４３］行先デバイス１４は、チャネル１６を介してソースデバイス１２から符号化された映像データを受信することができる。チャネル１６は、符号化された映像データをソースデバイス１２から行先デバイス１４に移動させることが可能なタイプの媒体又はデバイスを備えることができる。一例では、チャネル１６は、ソースデバイス１２が符号化された映像データをリアルタイムで直接行先デバイス１４に送信するのを可能にする通信媒体を備えることができる。この例では、ソースデバイス１２は、通信規格、例えば、無線通信プロトコル、により符号化された映像データを変調することができ、及び、変調された映像データを行先デバイス１４に送信することができる。通信媒体は、無線又は有線の通信媒体、例えば、無線周波数（ＲＦ）スペクトル又は１つ以上の物理的送信ライン、を備えることができる。通信媒体は、パケットに基づくネットワーク、例えば、ローカルエリアネットワーク、ワイドエリアネットワーク、又はグローバルネットワーク、例えば、インターネット、の一部を形成することができる。通信媒体は、ルータ、スイッチ、基地局、又はソースデバイス１２から行先デバイス１４への通信を容易にするその他の装置を含むことができる。
【００３８】
［００４４］他の例では、チャネル１６は、ソースデバイス１２によって生成された符号化された映像データを格納する記憶媒体に対応することができる。この例では、行先デバイス１４は、ディスクアクセス又はカードアクセスを介して記憶媒体にアクセスすることができる。記憶媒体は、様々なローカルでアクセスされるデータ記憶媒体、例えば、Ｂｌｕｅ−ｒａｙ（登録商標）ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュメモリ、又はその他の適切なデジタル記憶媒体を含むことができる。さらなる例では、チャネル１６は、ソースデバイス１２によって生成された符号化された映像データを格納するファイルサーバ又は他の中間的な記憶デバイスを含むことができる。この例では、行先デバイス１４は、ストリーミング又はダウンロードを介してファイルサーバ又はその他の中間的な記憶デバイスに格納された符号化された映像データにアクセスすることができる。ファイルサーバは、符号化された映像データを格納すること及び符号化された映像データを行先デバイス１４に送信することが可能なタイプのサーバであることができる。ファイルサーバ例は、（例えば、ウェブサイトのための）ウェブサーバと、ファイル転送プロトコル（ＦＴＰ）サーバと、ネットワーク接続記憶（ＮＡＳ）デバイスと、ローカルディスクドライブと、を含む。行先デバイス１４は、インターネット接続を含む標準的なデータ接続を通じて符号化された映像データにアクセスすることができる。データ接続のタイプ例は、ファイルサーバに格納された符号化された映像データにアクセスするのに適する無線チャネル（例えば、Ｗｉ−Ｆｉ接続）、有線接続（例えば、ＤＳＬ、ケーブルモデム、等）、又は両方の組み合わせを含むことができる。ファイルサーバからの符号化された映像データの送信は、ストリーミング送信、ダウンロード送信、又は両方の組み合わせであることができる。
【００３９】
［００４５］本開示の技法は、無線の用途またはセッティングには限定されない。それらの技法は、映像コーディングに適用することができ、様々なマルチメディア用途、例えば、オーバー・ザ・エアテレビ放送、ケーブルテレビ送信、衛星テレビ送信、例えば、インターネットを介してのストリーミング映像送信、データ記憶媒体への格納のためのデジタル映像の符号化、データ記憶媒体に格納されたデジタル映像の復号、又はその他の用途をサポートする。幾つかの例では、映像コーディングシステム１０は、映像ストリーミング、映像再生、映像放送、及び／又は映像テレフォニー、等の用途をサポートするために１方向又は２方向の映像送信をサポートするように構成することができる。
【００４０】
［００４６］図１の例では、ソースデバイス１２は、映像ソース１８と、映像符号器２０と、出力インタフェース２２と、を含む。幾つかの場合は、出力インタフェース２２は、変調器／復調器（モデム）及び／又は送信機を含むことができる。ソースデバイス１２において、映像ソース１８は、ソース、例えば、映像キャプチャデバイス、例えば、ビデオカメラ、以前にキャプチャされた映像が入った映像アーカイブ、映像コンテンツプロバイダからの映像を受信するための映像フィードインタフェース、及び／又は、コンピュータグラフィックスデータをソース映像して生成するためのコンピュータグラフィックスシステム、又は該ソースの組み合わせ、を含むことができる。
【００４１】
［００４７］映像符号器２０は、キャプチャされた、予めキャプチャされた、又はコンピュータによって生成された映像を符号化することができる。符号化された映像データは、ソースデバイス１２の出力インタフェース２２を介して行先デバイス１４に直接送信することができる。符号化された映像データは、復号及び／又は再生のために行先デバイス１４によってのちにアクセスするために記憶媒体又はファイルサーバに格納することもできる。
【００４２】
［００４８］図１の例において、行先デバイス１４は、入力インタフェース２８と、映像復号器３０と、表示装置３２と、を含む。幾つかの場合は、入力インタフェース２８は、受信機及び／又はモデムを含むことができる。行先デバイス１４の入力インタフェース２８は、チャネル１６を通じて符号化された映像データを受信する。符号化された映像データは、映像データを表現する、映像符号器２０によって生成された様々な構文要素を含むことができる。該構文要素は、通信媒体で送信された符号化された映像データとともに含めること、記憶媒体に格納すること、又はファイルサーバに格納することができる。
【００４３】
［００４９］表示装置３２は、行先デバイス１４と一体化することができ又は外部に存在することができる。幾つかの例では、行先デバイス１４は、一体化された表示装置を含むことができ及び外部の表示装置とインタフェースするように構成することもできる。その他の例では、行先デバイス１４は、表示装置であることができる。概して、表示装置３２は、復号された映像データをユーザに表示する。表示装置３２は、様々な表示装置、例えば、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、又は他のタイプの表示装置、のうちのいずれかを備えることができる。
【００４４】
［００５０］映像符号器２０及び映像復号器３０は、映像圧縮規格、例えば、現在策定中の高効率映像コーディング（ＨＥＶＣ）規格、により動作することができ、及び、ＨＥＶＣテストモデル（ＨＭ）に準拠することができる。ＨＥＶＣ規格は、ＩＴＵ−Ｔビデオコーディングエキスパーツグループ（ＶＣＥＧ）及びＩＳＯ／ＩＥＣモーションピクチャエキスパーツグループ（ＭＰＥＧ）の映像コーディングに関する共同作業チーム（ＪＣＴ−ＶＣ）によって策定中である。“ＨＥＶＣワーキングドラフト７”又は“ＷＤ７”と呼ばれるＨＥＶＣ規格の最近のドラフトが、２０１２年４月２７日〜２０１２年５月７日にスイス  ジュネーブで開催された第９回会議においてＩＴＵ−Ｔ  ＳＧ１６  ＷＰ３及びＩＳＯ／ＩＥＣ  ＪＴＣ／ＳＣ２９／ＷＧ１１の映像コーディングに関する共同作業チーム（ＪＣＴ−ＶＣ）のＢｒｏｓｓ、等による文書ＪＣＴＶＣ−Ｉ１００３、“高効率映像コーディング（ＨＥＶＣ）テキスト仕様ドラフト７”において説明されており、それは、２０１３年６月１７日現在では、http://phenix.it-sudparis.eu/jct/doc_end_user/documents/9_Geneva/wg11/JCTVC-I1003-v3.zipからダウンロード可能である。
【００４５】
［００５１］代替として、映像符号器２０及び映像復号器３０は、その他の独占規格又は工業規格、例えば、ＩＴＵ−Ｔ  Ｈ．２６４規格、代替でＭＰＥＧ−４、Ｐａｒｔ１０、Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＡＶＣ）と呼ばれる、又は該規格の拡張版により動作することができる。しかしながら、本開示の技法は、いずれの特定のコーディング規格又は技法にも制限されない。その映像圧縮規格及び技法のその他の例は、ＭＰＥＧ−２、ＩＴＵ−Ｔ  Ｈ．２６３、及び独占的な又はオープンのソース圧縮形式、例えば、ＶＰ８及び関連形式、又はそれらの拡張を含む。
【００４６】
［００５２］図１の例には示されていないが、映像符号器２０及び映像復号器３０は、各々、音声符号器及び復号器と一体化することができ、及び、共通のデータストリーム又は別々のデータストリーム内の音声及び映像の両方の符号化を取り扱うための該当するＭＵＸ−ＤＥＭＵＸユニット、又はその他のハードウェア及びソフトウェアを含むことができる。該当する場合は、幾つかの例では、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、又はその他のプロトコル、例えば、ユーザデータグラムプロトコル（ＵＤＰ）に準拠することができる。
【００４７】
［００５３］繰り返すと、図１は、単なる例であるにすぎず、本開示の技法は、符号化デバイスと復号デバイスとの間でのデータ通信を必ずしも含まない映像コーディングセッティング（例えば、映像符号化又は映像復号）に適用することができる。その他の例では、データは、ローカルメモリから取り出すこと、ネットワークを通じてストリーミングすること、等であることができる。符号化デバイスは、データを符号化すること及びメモリに格納することができ、及び／又は復号デバイスは、データをメモリから取り出すこと及び復号することができる。多くの例では、符号化及び復号は、互いに通信せず、単にデータを符号化してメモリに格納する及び／又はメモリからデータを取り出して復号するデバイスによって行われる。
【００４８】
［００５４］映像符号器２０及び映像復号器３０は、各々、様々な適切な回路、例えば、１つ以上のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリートロジック、ハードウェア、又はそれらのあらゆる組み合わせのうちのいずれかとして実装することができる。技法がソフトウェア内において部分的に実装されるときには、デバイスは、ソフトウェアに関する命令を適切な、非一時的なコンピュータによって読み取り可能な記憶媒体に格納することができ及び本開示の技法を実行するために１つ以上のプロセッサを用いてハードウェア内で命令を実行することができる。映像符号器２０及び映像復号器３０の各々は、１つ以上の符号器又は復号器に含めることができ、それらのいずれも、各々のデバイスにおいて結合された符号器／復号器（ＣＯＤＥＣ）の一部として一体化することができる。
【００４９】
［００５５］上記において簡単に述べられているように、映像符号器２０は、映像データを符号化する。映像データは、１つ以上のピクチャを備えることができる。これらのピクチャの各々は、映像の一部を形成する静止画像である。幾つかの例では、ピクチャは、映像“フレーム”と呼ぶことができる。映像符号器２０が映像データを符号化するときには、映像符号器２０は、ビットストリームを生成することができる。ビットストリームは、映像データのコーディングされた表現を形成するビットのシーケンスを含むことができる。ビットストリームは、コーディングされたピクチャと、関連付けられたデータと、を含むことができる。コーディングされたピクチャは、ピクチャのコーディングされた表現である。
【００５０】
［００５６］ビットストリームを生成するために、映像符号器２０は、映像データ内の各ピクチャに関して符号化動作を行うことができる。映像符号器２０がピクチャに関して符号化動作を行うときには、映像符号器２０は、一連のコーディングされたピクチャ及び関連付けられたデータを生成することができる。関連付けられたデータは、シーケンスパラメータセットと、ピクチャパラメータセットと、適合化パラメータセットと、その他の構文構造と、を含むことができる。シーケンスパラメータセット（ＳＰＳ）は、ゼロ以上のシーケンスのピクチャに適用可能なピクチャに適用可能なパラメータを含むことができる。ピクチャパラメータセット（ＰＰＳ）は、ゼロ以上のシーケンスのピクチャに適用可能なピクチャに適用可能なパラメータを含むことができる。適合化パラメータセット（ＡＰＳ）は、ゼロ以上のピクチャに適用可能なパラメータを含むことができる。ＡＰＳ内のパラメータは、ＰＰＳ内のパラメータよりも変化しやすいパラメータであることができる。
【００５１】
［００５７］コーディングされたピクチャを生成するために、映像符号器２０は、ピクチャを等しいサイズの映像ブロックに分割することができる。映像ブロックは、サンプルの二次元アレイであることができる。映像ブロックの各々は、ツリーブロックと関連付けられる。幾つかの例では、ツリーブロックは、最大コーディングユニット（ＬＣＵ）と呼ぶことができる。ＨＥＶＣのツリーブロックは、以前の規格、例えば、Ｈ．２６４／ＡＶＣ、のマクロブロックにほぼ類似することができる。しかしながら、ツリーブロックは、必ずしも特定のサイズには限定されず、１つ以上のコーディングユニット（ＣＵ）を含むことができる。映像符号器２０は、ツリーブロックの映像ブロックをＣＵと関連付けられた映像ブロックに分割するために四分木分割を使用することができ、従って、“ツリーブロック”という名称を有する。
【００５２】
［００５８］幾つかの例では、映像符号器２０は、ピクチャを複数のスライスに分割することができる。これらのスライスの各々は、整数の数のＣＵを含むことができる。幾つかの例では、スライスは、整数の数のツリーブロックを備える。その他の例では、スライスの境界は、ツリーブロック内に存在することができる。
【００５３】
［００５９］ピクチャに関して符号化動作を行う一部として、映像符号器２０は、ピクチャの各スライスに関する符号化動作を行うことができる。映像符号器２０がスライスに関する符号化動作を行うときには、映像符号器２０は、スライスと関連付けられた符号化されたデータを生成することができる。スライスと関連付けられた符号化されたデータは、“コーディングされたスライス”と呼ぶことができる。
【００５４】
［００６０］コーディングされたスライスを生成するために、映像符号器２０は、スライス内の各ツリーブロックに関する符号化動作を行うことができる。映像符号器２０がツリーブロックに関する符号化動作を行うときには、映像符号器２０は、コーディングされたツリーブロックを生成することができる。コーディングされたツリーブロックは、ツリーブロックの符号化されたバージョンを表現するデータを備えることができる。
【００５５】
［００６１］映像符号器２０がコーディングされたスライスを生成するときには、映像符号器２０は、ラスター走査（ｒａｓｔｅｒ  ｓｃａｎ）順序に従ってスライス内のツリーブロックに関する符号化動作を行う（すなわち、符号化する）ことができる。換言すると、映像符号器２０は、スライス内のツリーブロックの最上行を横切って左から右に進み、次に、次に低いツリーブロックの行を横切って左から右に進み、以下同様で、映像符号器２０がスライス内のツリーブロックの各々を符号化済みになるまで続く順序でスライスのツリーブロックを符号化することができる。
【００５６】
［００６２］ラスター走査順序に従ってツリーブロックを符号化した結果として、所定のツリーブロックの上方及び左のツリーブロックは符号化されているが、所定のツリーブロックの下方及び右のツリーブロックは、まだ符号化されていない。従って、映像符号器２０は、所定のツリーブロックを符号化するときには所定のブロックの上方及び左のツリーブロックを符号化することによって生成された情報にアクセスすることができる。しかしながら、映像符号器２０は、所定のツリーブロックを符号化時には所定のツリーブロックの下方及び右のツリーブロックを符号化することによって生成された情報にアクセスすることができない。
【００５７】
［００６３］コーディングされたツリーブロックを生成するために、映像符号器２０は、映像ブロックを徐々に小さくなる映像ブロックに分割するためにツリーブロックの映像ブロックに関する四分木分割を反復的に行うことができる。より小さい映像ブロックの各々は、異なるＣＵと関連付けることができる。例えば、映像符号器２０は、ツリーブロックの映像ブロックを４つの等しいサイズのサブブロックに分割し、それらのサブブロックのうちの１つ以上を４つの等しいサイズのサブ−サブブロックに分割し、以下同様であることができる。分割されたＣＵは、その映像ブロックがその他のＣＵと関連付けられた映像ブロックに分割されるＣＵであることができる。分割されないＣＵは、その映像ブロックがその他のＣＵと関連付けられた映像ブロックに分割されないＣＵであることができる。
【００５８】
［００６４］ビットストリーム内の１つ以上の構文要素は、映像符号器２０がツリーブロックの映像ブロックを分割することができる最大回数を示すことができる。ＣＵの映像ブロックは、形状が正方形であることができる。ＣＵの映像ブロックのサイズ（すなわち、ＣＵのサイズ）は、８×８ピクセルからツリーブロックの映像ブロックのサイズ（すなわち、ツリーブロックのサイズ）までの範囲であることができ、最大サイズは６４×６４ピクセル以上である。
【００５９】
［００６５］映像符号器２０は、ｚ走査順序に従ってツリーブロックの各ＣＵに関する符号化動作を行う（すなわち、符号化する）ことができる。換言すると、映像符号器２０は、最上部左のＣＵ、最上部右のＣＵ、最下部左のＣＵ、次に最下部右のＣＵの順序で符号化することができる。映像符号器２０が分割されたＣＵに関する符号化動作を行うときには、映像符号器２０は、ｚ走査順序に従って分割されたＣＵの映像ブロックのサブブロックと関連付けられたＣＵを符号化することができる。換言すると、映像符号器２０は、最上部左のサブブロックと関連付けられたＣＵ、最上部右のサブブロックと関連付けられたＣＵ、最下部左のサブブロックと関連付けられたＣＵ、次に最下部右のサブブロックと関連付けられたＣＵの順序で符号化することができる。
【００６０】
［００６６］ｚ走査順序に従ってツリーブロックのＣＵを符号化した結果として、所定のＣＵの上方、上方左、左、及び下方左のＣＵが符号化されている。所定のＣＵの下方及び右のＣＵはまだ符号化されていない。従って、映像符号器２０は、所定のＣＵを符号化時には所定のＣＵの近隣の幾つかのＣＵを符号化することによって生成された情報にアクセスすることができる。しかしながら、映像符号化器２０は、所定のＣＵを符号化時には所定のＣＵの近隣のその他のＣＵを符号化することによって生成された情報にはアクセスすることができない。
【００６１】
［００６７］映像符号器２０が分割されていないＣＵを符号化するときには、映像符号器２０は、そのＣＵに関する１つ以上の予測ユニット（ＰＵ）を生成することができる。ＣＵのＰＵの各々は、ＣＵの映像ブロック内の異なる映像ブロックと関連付けることができる。映像符号器２０は、ＣＵの各ＰＵに関する予測された映像ブロックを生成することができる。ＰＵの予測された映像ブロックは、サンプルのブロックであることができる。映像符号器２０は、ＰＵに関する予測された映像ブロックを生成するためにイントラ予測又はインター予測を使用することができる。
【００６２】
［００６８］映像符号器２０がＰＵの予測された映像ブロックを生成するためにイントラ予測を使用するときには、映像符号器２０は、ＰＵと関連付けられたピクチャの復号されたサンプルに基づいてＰＵの予測された映像ブロックを生成することができる。映像符号器２０がＣＵのＰＵの予測された映像ブロックを生成するためにイントラ予測を使用する場合は、ＣＵは、イントラ予測されたＣＵである。映像符号器２０がＰＵの予測された映像ブロックを生成するためにインター予測を使用するときには、映像符号器２０は、ＰＵと関連付けられたピクチャ以外の１つ以上のピクチャの復号されたサンプルに基づいてＰＵの予測された映像ブロックを生成することができる。映像符号器２０がＣＵのＰＵの予測された映像ブロックを生成するためにインター予測を使用する場合は、ＣＵは、インター予測されたＣＵである。
【００６３】
［００６９］さらに、映像符号器２０がＰＵに関する予測される映像ブロックを生成するためにインター予測を使用するときには、映像符号器２０は、ＰＵに関する動き情報を生成することができる。ＰＵに関する動き情報は、ＰＵの１つ以上の基準ブロックを示すことができる。ＰＵの各基準ブロックは、基準ピクチャ内の映像ブロックであることができる。基準ピクチャは、ＰＵと関連付けられたピクチャ以外のピクチャであることができる。幾つかの例では、ＰＵの基準ブロックは、ＰＵの“基準サンプル”と呼ぶこともできる。映像符号器２０は、ＰＵの基準ブロックに基づいてＰＵに関する予測された映像ブロックを生成することができる。
【００６４】
［００７０］映像符号器２０がＣＵの１つ以上のＰＵに関する予測される映像ブロックを生成した後は、映像符号器２０は、ＣＵのＰＵに関する予測される映像ブロックに基づいてＣＵに関する残差データを生成することができる。ＣＵに関する残差データは、ＣＵのＰＵに関する予測される映像ブロック及びＣＵのオリジナルの映像ブロック内のサンプル間の差分を示すことができる。
【００６５】
［００７１］さらに、分割されないＣＵに関する符号化動作を行う一部として、映像符号器２０は、ＣＵの変換ユニット（ＴＵ）と関連付けられた残差データの１つ以上のブロック（すなわち、残差映像ブロック）にＣＵの残差データを分割するためにＣＵの残差データに関する反復的な四分木分割を行うことができる。ＣＵの各ＴＵは、異なる残差映像ブロックと関連付けることができる。
【００６６】
［００７２］映像コーダ２０は、ＴＵと関連付けられた変換係数ブロック（すなわち、変換係数のブロック）を生成するためにＴＵと関連付けられた残差映像ブロックに１つ以上の変換を適用することができる。概念的には、変換係数ブロックは、変換係数の二次元（２Ｄ）行列であることができる。
【００６７】
［００７３］変換係数ブロックを生成後は、映像符号器２０は、変換係数ブロックに関する量子化プロセスを行うことができる。量子化は、概して、可能な場合は変換係数を表すために使用されるデータの量を低減させてさらなる圧縮を提供するために変換係数が量子化されるプロセスを意味する。量子化プロセスは、変換係数の一部又は全部と関連付けられたビット深度を低減させることができる。例えば、量子化中にｎビット値が切り捨てられてｍビット値になり、ここで、ｎはｍよりも大きい。
【００６８】
［００７４］映像符号器２０は、各ＣＵを量子化パラメータ（ＱＰ）値と関連付けることができる。ＣＵと関連付けられたＱＰ値は、映像符号器２０がＣＵと関連付けられた変換係数ブロックをどのようにして量子化するかを決定することができる。映像符号器２０は、ＣＵと関連付けられたＱＰ値を調整することによってＣＵと関連付けられた変換係数ブロックに適用される量子化度を調整することができる。
【００６９】
［００７５］映像符号器２０が変換係数ブロックを量子化した後は、映像符号器２０は、量子化された変換係数ブロックにおける変換係数を表す構文要素の組を生成することができる。映像符号器２０は、エントロピー符号化動作、例えば、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）動作、をこれらの構文要素のうちの一部に適用することができる。その他のエントロピーコーディング技法、例えば、コンテンツ適応型可変長コーディング（ＣＡＶＬＣ）、確率間隔分割エントロピー（ＰＩＰＥ）コーディング、又はその他のバイナリ算術コーディング、も使用可能である。
【００７０】
［００７６］映像符号器２０によって生成されたビットストリームは、一連のネットワーク抽象化層（ＮＡＬ）ユニットを含むことができる。ＮＡＬユニットの各々は、ＮＡＬユニット内のデータのタイプのインディケーション（ｉｎｄｉｃａｔｉｏｎ）を含む構文構造及びそのデータを含むバイトであることができる。例えば、ＮＡＬユニットは、シーケンスパラメータセット、ピクチャパラメータセット、コーディングされたスライス、補足的エンハンスメント情報（ＳＥＩ）、アクセスユニットデリミッタ（ｄｅｌｉｍｉｔｅｒ）、フィラーデータ（ｆｉｌｌｅｒ  ｄａｔａ）、又はその他のタイプのデータを表すデータを含むことができる。ＮＡＬユニット内のデータは、様々な構文構造を含むことができる。
【００７１】
［００７７］映像復号器３０は、映像符号器２０によって生成されたビットストリームを受信することができる。ビットストリームは、映像符号器２０によって符号化された映像データのコーディングされた表現を含むことができる。映像復号器３０がビットストリームを受信するときには、映像復号器３０は、ビットストリームに関する構文解釈動作を行うことができる。映像復号器３０が構文解釈動作を行うときには、映像復号器３０は、ビットストリームから構文要素を抽出することができる。映像復号器３０は、ビットストリームから抽出された構文要素に基づいて映像データのピクチャを再構築することができる。構文要素に基づいて映像データを再構築するプロセスは、概して、構文要素を生成するために映像符号器２０によって行われるプロセスと相互的であることができる。
【００７２】
［００７８］映像復号器３０がＣＵと関連付けられた構文要素を抽出後は、映像復号器３０は、構文要素に基づいてＣＵのＰＵに関する予測される映像ブロックを生成することができる。さらに、映像復号器３０は、ＣＵのＴＵと関連付けられた変換係数ブロックを逆量子化することができる。映像復号器３０は、ＣＵのＴＵと関連付けられた残差映像ブロックを再構築するために変換係数ブロックに関する逆変換を行うことができる。予測された映像ブロックを生成し、残差映像ブロックを再構築後は、映像復号器３０は、予測された映像ブロック及び残差映像ブロックに基づいてＣＵの映像ブロックを再構築することができる。このようにして、映像復号器３０は、ビットストリーム内の構文要素に基づいてＣＵの映像ブロックを再構築することができる。
【００７３】
［００７９］本開示により、映像符号器２０及び映像復号器３０は、本開示の１つ以上の技法を実装するように構成することができる。本開示の技法は、ロスレスコーディングモード及びＰＣＭコーディングモードのシグナリング及びこれらのコーディングモードとインループフィルタの相互作用を調和させる修正を含む。
【００７４】
［００８０］第１の技法は、ＰＣＭモードに関するインループフィルタリングをイネーブルにするために構文要素ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇを使用することを含む。ＨＥＶＣ  ＷＤ７では、ピクチャのシーケンス全体に関するＰＣＭコーディングされたブロックをループフィルタリングすることをイネーブル又はディスエーブルにするためにｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇを設定することができる。しかしながら、個々のＰＣＭコーディングされた映像ブロックに関するループフィルタリングをイネーブル又はディスエーブルにするために、特定のＰＣＭコーディングされた映像ブロックに関してループフィルタリングが使用されることを決定又は示すためにｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇを使用することができる。
【００７５】
［００８１］例えば、構文要素ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇは、ＰＣＭコーディングモードに関するインループフィルタリングをイネーブルにするためにシグナリングされる。ｐｃｍ_ｆｌａｇが０に等しく、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが存在しており１に等しい場合は、“ロスレス”コーディングユニットに関して変換、量子化、及びすべてのループフィルタリングがバイパスされる。映像符号器２０がＰＣＭコーディングモードで符号化せず、ＣＵに関する変換、量子化、及びすべてのループフィルタリングをバイパスしたＣＵに関して、映像符号器２０は、ｐｃｍ_ｆｌａｇを０に等しいとして及びｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇを１に等しいとしてシグナリングする。他方、映像符号器２０がＣＵを符号化するためにＰＣＭコーディングモードを使用せず（例えば、ｐｃｍ_ｆｌａｇが０に等しい）、ＣＵに関する変換、量子化、及びループフィルタリングを行う場合は、映像符号器２０は、０に等しいｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇをシグナリングする。
【００７６】
［００８２］映像符号器２０がＣＵを符号化するためにＰＣＭコーディングモードを使用し（例えば、ｐｃｍ_ｆｌａｇが１に等しい）、ＰＣＭコーディングされたブロックサンプルに関してループフィルタリングが使用されない場合は、映像符号器２０は、１に等しいｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇをシグナリングする。映像符号器２０がＣＵを符号化するためにＰＣＭコーディングモードを使用し（例えば、ｐｃｍ_ｆｌａｇが１に等しい）、ＰＣＭコーディングされたブロックサンプルに関してループフィルタリングが使用される場合は、映像符号器２０は、０に等しいｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇをシグナリングする。
【００７７】
［００８３］同様に、映像復号器３０が、ｐｃｍ_ｆｌａｇが０に等しく、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが存在しており、符号化されたＣＵに関して１に等しいと決定した場合は、映像復号器３０は、符号化されたＣＵに関して逆変換、逆量子化、又はインループフィルタリングを行わずに符号化されたＣＵを復号する。他方、符号化されたＣＵがＰＣＭコーディングモードで符号化されなかった（例えば、ｐｃｍ_ｆｌａｇが０に等しい）と映像復号器３０が決定し、及び、フラグｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが０に等しいと映像復号器３０が決定した場合は、映像復号器３０は、符号化されたＣＵを復号するために逆変換、逆量子化、及びインループフィルタリングを行う。
【００７８】
［００８４］同様に、映像復号器３０が、符号化されたＣＵがＰＣＭコーディングモードで符号化された（例えば、ｐｃｍ_ｆｌａｇが１に等しい）と決定し及びｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが１に等しいと決定した場合は、映像復号器３０は、符号化されたＰＣＭモードＣＵに関するインループフィルタリングを行わずに符号化されたＰＣＭモードＣＵを復号する。他方、映像復号器３０が、符号化されたＣＵがＰＣＭコーディングモードで符号化されたと決定し（例えば、ｐｃｍ_ｆｌａｇが１に等しい）、ただし、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが０に等しいと決定した場合は、映像復号器３０は、符号化されたＰＣＭモードＣＵを復号するためにインループフィルタリングを行う。
【００７９】
［００８５］幾つかの例では、フラグｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇは、映像コーディング仕様におけるＳＰＳから取り除かれる。従って、映像符号器２０は、ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇをシグナリングしない。しかしながら、ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇが仕様に含まれている場合で、映像符号器２０がｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇをシグナリングし、それが０に等しい場合は、フラグｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇは、ＰＣＭコーディングされたブロックサンプルに関してインループフィルタリングをオン又はオフにすることができる。例えば、映像復号器３０が、ｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇは０に等しいと読んだときには、映像復号器３０は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇの値に少なくとも部分的に基づいてＰＣＭブロックサンプルに関してインループフィルタリングを使用する。
【００８０】
［００８６］映像符号器２０がＳＰＳ内のフラグｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇをシグナリングし、ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇが１又は真に等しい場合は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇは、ＰＣＭブロックサンプルのインループフィルタリングに対して影響を有さず、ＰＣＭコーディングされたブロックサンプルに関してすべてのインループフィルタリングがディスエーブルにされる。
【００８１】
［００８７］第２の代替例では、映像符号器２０は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが０又は偽であるときのみにｐｃｍ_ｆｌａｇをシグナリングする。同様に、映像復号器３０は、ｐｃｍ_ｆｌａｇが読み取られるべきかどうかを決定する前にｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが１又は真であるかどうかを決定する。ＨＥＶＣ  ＷＤ７では、ｐｃｍ_ｆｌａｇが特定のＣＵに関して１である場合は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇにかかわらずＰＣＭモードが使用される。従って、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが０であるときのみにＰＣＭモードをシグナリングすることによって、映像コーディングプロセスは、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇの値にかかわらずＰＣＭモードがシグナリングされるＨＥＶＣ  ＷＤ７におけるよりも効率的である。
【００８２】
［００８８］第３の代替技法において、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇの存在は、映像ブロックがロスレスコーディングモード又はＰＣＭコーディングモードのいずれで符号化されたかどうかを識別するものとしてｐｃｍ_ｆｌａｇの意味を定義する。フラグｐｃｍ_ｆｌａｇは、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが１に等しいときのみにシグナリングされる。この技法では、映像ブロックがＰＣＭモード又はロスレスモードのいずれかを使用する場合（例えば、映像ブロックに関して変換、量子化、及びインループフィルタリングがバイパスされる場合）は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが１に設定される。映像ブロックに関してＰＣＭモード又はロスレスモードのいずれが適用されたかを示すフラグｐｃｍ_ｆｌａｇがシグナリングされる。
【００８３】
［００８９］例えば、映像符号器２０は、ＰＣＭモードを用いて映像ブロックをコーディングするか又は映像ブロックに関して変換、量子化、及びインループフィルタリングをバイパスし（例えば、ロスレスコーディングモード）、映像符号器２０は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇを１に等しいとしてシグナリングする。映像符号器２０は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが１に等しいときのみにフラグｐｃｍ_ｆｌａｇをシグナリングする。映像符号器２０は、映像符号器２０がＰＣＭコーディングモードを用いて映像ブロックを符号化したときにはｐｃｍ_ｆｌａｇを１に設定する。映像符号器２０は、映像符号器２０がロスレスコーディングモードを用いて映像ブロックを符号化したときにはｐｃｍ_ｆｌａｇを０に設定する。映像符号器２０がｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇを０に等しいとしてシグナリングする場合は、映像符号器２０は、ｐｃｍ_ｆｌａｇをシグナリングせず、映像ブロックはロッシーモードで符号化され、変換、量子化、及びインループフィルタリングが適用される。
【００８４】
［００９０］同様に、映像復号器３０は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが１に等しいと決定したときには、ＰＣＭモードを用いて符号化された映像ブロックを復号するか又は逆変換、逆量子化及びインループフィルタリングをバイパスする（例えば、ロスレスコーディングモード）。映像復号器３０は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが１に等しいと決定した後のみにフラグｐｃｍ_ｆｌａｇを読み取る。映像復号器３０は、ｐｃｍ_ｆｌａｇが１に等しいときにはＰＣＭコーディングモードを用いて符号化された映像ブロックを復号する。映像復号器３０は、ｐｃｍ_ｆｌａｇが０に等しいときにはロスレスコーディングモードを用いて符号化された映像ブロックを復号する。映像復号器３０が、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇは０に等しいと決定した場合は、映像復号器３０は、ｐｃｍ_ｆｌａｇを探さない又は読み取らない。該例では、映像復号器３０は、逆変換、逆量子化を用いて映像ブロックを復号し、インループフィルタリングを適用する。
【００８５】
［００９１］図２は、本開示の技法を実装するように構成することができる映像符号器例２０を示すブロック図である。図２は、説明を目的として提供され、本開示においては広範囲わたって例示及び説明するものであり、技法を限定するものであるとはみなされるべきでない。説明の目的上、本開示は、ＨＥＶＣコーディングの観点で映像符号器２０について説明する。しかしながら、本開示の技法は、その他のコーディング規格又は方法に対して適用することができる。
【００８６】
［００９２］図２の例では、映像符号器２０は、複数の機能上のコンポーネントを含む。映像符号器２０の機能上のコンポーネントは、予測モジュール１００と、残差生成モジュール１０２と、変換モジュール１０４と、量子化モジュール１０６と、逆量子化モジュール１０８と、逆変換モジュール１１０と、再構築モジュール１１２と、フィルタモジュール１１３と、復号ピクチャバッファ１１４と、エントロピー符号化モジュール１１６と、を含む。予測モジュール１００は、インター予測モジュール１２１と、動き推定モジュール１２２と、動き補償モジュール１２４と、イントラ予測モジュール１２６と、を含む。その他の例では、映像符号器２０は、それよりも多くの、それよりも少ない、又は異なる機能上のコンポーネントを含むことができる。さらに、動き推定モジュール１２２及び動き補償モジュール１２４は、高度に一体化することができるが、説明の目的上、図２の例では別々に表されている。幾つかのコーディングモードが存在し、図２に示されるユニット又はモジュールのうちの１つ以上は、例えば、ロスレスコーディングに関してはバイパスすることができる。幾つかのコーディングモードでは、例えば、ロスレスコーディングのタイプでもあることができるＰＣＭの直接コーディングをサポートするために、図２において具体的に例示されていないユニット又はモジュールも使用することができ、又は幾つかの最下位ビットを各サンプルから廃棄することによって何らかの量子化を適用することができる。
【００８７】
［００９３］映像符号器２０は、映像データを受信することができる。映像符号器２０は、様々なソースから映像データを受信することができる。例えば、映像符号器２０は、図１の映像ソース１８又は他のソースから映像データを受信することができる。映像データは、一連のピクチャを表すことができる。映像データを符号化するために、映像符号器２０は、各ピクチャに関する符号化動作を行うことができる。ピクチャに関する符号化動作を行う一部として、映像符号器２０は、ピクチャの各スライスに関する符号化動作を行うことができる。スライスに関する符号化動作を行う一部として、映像符号器２０は、スライス内のツリーブロックに関する符号化動作を行うことができる。
【００８８】
［００９４］ツリーブロックに関する符号化動作を行う一部として、予測モジュール１００は、映像ブロックを徐々に小さくなる映像ブロックに分割するためにツリーブロックの映像ブロックに関する四分木分割を行うことができる。より小さい映像ブロックの各々は、異なるＣＵと関連付けることができる。例えば、予測モジュール１００は、ツリーブロックの映像ブロックを４つの等しいサイズのサブブロックに分割し、それらのサブブロックのうちの１つ以上を４つの等しいサイズのサブ−サブブロックに分割し、以下同様であることができる。
【００８９】
［００９５］ＣＵと関連付けられた映像ブロックのサイズは、８×８のサンプルからツリーブロックのサイズまでの範囲であることができ、最大サイズは６４×６４サンプル以上である。本開示では、“Ｎ×Ｎ”及び“Ｎ  ｂｙ  Ｎ”は互換可能な形で使用することができ、垂直方向及び水平方向の寸法に関する映像ブロックのサンプルの寸法を意味し、例えば、１６×１６又は１６ｂｙ１６サンプルである。概して、１６×１６映像ブロックは、垂直方向において１６のサンプル（ｙ＝１６）及び水平方向において１６のサンプル（ｘ＝１６）を有する。同様に、Ｎ×Ｎブロックは、概して、垂直方向においてＮのサンプル及び水平方向においてＮのサンプルを有し、ここで、Ｎは、負でない整数値を表す。サンプルは、映像データ表現のために用いられるピクセル値又は他のサンプルフォーマットを意味することができる。
【００９０】
［００９６］さらに、ツリーブロックに関する符号化動作を行う一部として、予測モジュール１００は、ツリーブロックに関する階層状の四分木データ構造を生成することができる。例えば、ツリーブロックは、四分木データ構造のルートノードに対応することができる。予測モジュール１００がツリーブロックの映像ブロックを４つのサブブロックに分割する場合は、ルートノードは、四分木データ構造において４つの子ノードを有する。これらの子ノードの各々は、サブブロックのうちの１つと関連付けられたＣＵに対応する。予測モジュール１００がサブブロックのうちの１つを４つのサブ−サブブロックに分割する場合は、サブブロックと関連付けられたＣＵに対応するノードは、４つの子ノードを有することができ、それらの各々は、サブーサブブロックのうちの１つと関連付けられたＣＵに対応する。
【００９１】
［００９７］四分木データ構造の各ノードは、対応するツリーブロック又はＣＵに関する構文データ（例えば、構文要素）を含むことができる。例えば、四分木内のノードは、そのノードに対応するＣＵの映像ブロックが４つのサブブロックに分割（すなわち分割）されるかどうかを示す分割フラグを含むことができる。ＣＵに関する構文要素は、反復的に定義することができ、ＣＵの映像ブロックがサブブロックに分割されるかどうかに依存することができる。その映像ブロックが分割されないＣＵは、四分木データ構造における葉ノードに対応することができる。コーディングされたツリーブロックは、対応するツリーブロックに関する四分木データ構造に基づくデータを含むことができる。
【００９２】
［００９８］映像符号器２０は、ツリーブロックの各々の分割されないＣＵに関する符号化動作を行うことができる。映像符号器２０が分割されないＣＵに関する符号化動作を行うときには、映像符号器２０は、分割されないＣＵの符号化された表現を表すデータを生成する。
【００９３】
［００９９］ＣＵに関する符号化動作を行う一部として、予測モジュール１００は、ＣＵの１つ以上のＰＵの間でＣＵの映像ブロックを分割することができる。映像符号器２０及び映像復号器３０は、様々なＰＵサイズをサポートすることができる。特定のＣＵのサイズが２Ｎ×２Ｎであると仮定すると、映像符号器２０及び映像復号器３０は、２Ｎ×２Ｎ、又はＮ×ＮのＰＵサイズ、及び、２Ｎ×２Ｎ、２Ｎ×Ｎ、Ｎ×２Ｎ、Ｎ×Ｎ、２Ｎ×ｎＵ、ｎＬ×２Ｎ、ｎＲ×２Ｎ、又は同様の対称的なＰＵサイズのインター予測をサポートすることができる。映像符号器２０及び映像復号器３０は、２Ｎ×ｎＵ、２Ｎ×ｎＤ、ｎＬ×２Ｎ、及びｎＲ×２ＮのＰＵサイズに関する非対称的な分割をサポートすることもできる。幾つかの例では、予測モジュール１００は、ＣＵの映像ブロックの側面に直角でない境界に沿ってＣＵのＰＵ間でＣＵの映像ブロックを分割する幾何学的分割を行うことができる。
【００９４】
［０１００］インター予測モジュール１２１は、ＣＵの各ＰＵに関するインター予測を行うことができる。インター予測は、時間的な圧縮を提供することができる。ＰＵに関するインター予測を行うために、動き推定モジュール１２２は、ＰＵに関する動き情報を生成することができる。動き補償モジュール１２４は、動き情報およびＣＵと関連付けられたピクチャ（すなわち、基準ピクチャ）以外のピクチャの復号されたサンプルに基づいてＰＵに関する予測された映像ブロックを生成することができる。本開示では、動き補償モジュール１２４によって生成された予測された映像ブロックは、インター予測された映像ブロックと呼ぶことができる。
【００９５】
［０１０１］スライスは、Ｉスライス、Ｐスライス、又はＢスライスであることができる。動き推定モジュール１２２及び動き補償モジュール１２４は、ＣＵのＰＵがＩスライス内、Ｐスライス内、又はＢスライス内のいずれであるかに依存してそのＰＵに関して異なる動作を行うことができる。Ｉスライス内では、すべてのＰＵがイントラ予測される。従って、ＰＵがＩスライス内にある場合は、動き推定モジュール１２２及び動き補償モジュール１２４は、ＰＵに関するインター予測を行わない。
【００９６】
［０１０２］ＰＵがＰスライス内にある場合は、ＰＵが入っているピクチャは、“リスト０”と呼ばれる基準ピクチャのリストと関連付けられる。リスト０内の基準ピクチャの各々は、その他のピクチャのインター予測のために使用することができるサンプルを含む。動き推定モジュール１２２がＰスライス内のＰＵに関して動き推定動作を行うときには、動き推定モジュール１２２は、ＰＵに関する基準ブロックに関してリスト０内の基準ピクチャを探索することができる。ＰＵの基準ブロックは、ＰＵの映像ブロック内のサンプルに最も密接に対応するサンプルの組、例えば、サンプルのブロック、であることができる。動き推定モジュール１２２は、基準ピクチャ内のサンプル組がＰＵの映像ブロック内のサンプルにいかに密接に対応するかを決定するために様々なメトリックを使用することができる。例えば、動き推定モジュール１２２は、差分絶対値和（ＳＡＤ）、差分二乗和（ＳＳＤ）、又はその他の差分メトリックによって、基準ピクチャ内のサンプル組がＰＵの映像ブロック内のサンプルにいかに密接に対応するかを決定することができる。
【００９７】
［０１０３］Ｐスライス内のＰＵの基準ブロックを識別後は、動き推定モジュール１２２は、基準ブロックが入ったリスト０内の基準ピクチャを示す基準インデックス及びＰＵと基準ブロックとの間での空間変位を示す動きベクトルを生成することができる。様々な例において、動き推定モジュール１２２は、様々な精度の動きベクトルを生成することができる。例えば、動き推定モジュール１２２は、１／４サンプル精度、１／８サンプル精度、又はその他の分数のサンプル精度で動きベクトルを生成することができる。分数のサンプル精度の場合は、基準ブロック値は、基準ピクチャ内の整数位置サンプル値から内挿することができる。動き推定モジュール１２２は、基準インデックス及び動きベクトルをＰＵの動き情報として出力することができる。動き補償モジュール１２４は、ＰＵの動き情報によって識別された基準ブロックに基づいてＰＵの予測される映像ブロックを生成することができる。
【００９８】
［０１０４］ＰＵがＢスライス内にある場合は、ＰＵが入っているピクチャは、“リスト０”及び“リスト１”と呼ばれる２つの基準ピクチャリストと関連付けることができる。幾つかの例では、Ｂスライスが入ったピクチャは、リスト０とリスト1の結合であるリスト結合と関連付けることができる。
【００９９】
［０１０５］さらに、ＰＵがＢスライス内にある場合は、動き推定モジュール１２２は、ＰＵに関する単方向予測又は２方向予測を行うことができる。動き推定モジュール１２２がＰＵに関して単方向予測を行うときには、動き推定モジュール１２２は、ＰＵに関する基準ブロックに関してリスト０又はリスト１の基準ピクチャを探索することができる。次に、動き推定モジュール１２２は、基準ブロックが入っているリスト０又はリスト１内の基準ピクチャを示す基準インデックス及びＰＵと基準ブロックとの間での空間変位を示す動きベクトルを生成することができる。動き推定モジュール１２２は、基準インデックス、予測方向インジケータ、及び動きベクトルをＰＵの動き情報として出力することができる。予測方向インジケータは、基準インデックスがリスト０又はリスト１内の基準ピクチャを示すかどうかを示すことができる。動き補償モジュール１２４は、ＰＵの動き情報によって示される基準ブロックに基づいてＰＵの予測される映像ブロックを生成することができる。
【０１００】
［０１０６］動き推定モジュール１２２がＰＵに関する単方向予測を行うときには、動き推定モジュール１２２は、ＰＵに関する基準ブロックに関してリスト０内の基準ピクチャを探索することができ及びＰＵに関する他の基準ブロックに関してリスト１内の基準ピクチャを探索することもできる。動き推定モジュール１２２は、基準ブロックが入っているリスト０及びリスト１内の基準ピクチャを示す基準インデックス及び基準ブロックとＰＵとの間での空間変位を示す動きベクトルを生成することができる。動き補償モジュール１２４は、ＰＵの動き情報によって示される基準ブロックに基づいてＰＵの予測される映像ブロックを生成することができる。
【０１０１】
［０１０７］幾つかの例では、動き推定モジュール１２２は、ＰＵに関する動き情報の完全な組をエントロピー符号化モジュール１１６に出力しない。むしろ、動き推定モジュール１２２は、他のＰＵの動き情報を参照してＰＵの動き情報をシグナリングすることができる。例えば、動き推定モジュール１２２は、ＰＵの動き情報が近隣のＰＵの動き情報に十分に類似すると決定することができる。この例では、動き推定モジュール１２２は、ＰＵと関連付けられた構文構造において、ＰＵが近隣のＰＵと同じ動き情報を有することを映像復号器３０に示す値を示すことができる。他の例では、動き推定モジュール１２２は、ＰＵと関連付けられた構文構造において、近隣のＰＵ及び動きベクトル差分（ＭＶＤ）を識別することができる。動きベクトル差分は、ＰＵの動きベクトルと示された近隣のＰＵの動きベクトルとの間の差分を示す。映像復号器３０は、ＰＵの動きベクトルを決定するために示された近隣のＰＵの動きベクトル及び動きベクトル差分を使用することができる。第２のＰＵの動き情報をシグナリングするときに第１のＰＵの動き情報を参照することによって、映像符号器２０は、より少ないビットを用いて第２のＰＵの動き情報をシグナリングすることができる。
【０１０２】
［０１０８］ＣＵに関する符号化動作を行う一部として、イントラ予測モジュール１２６は、ＣＵのＰＵに関するイントラ予測を行うことができる。イントラ予測は、空間的圧縮を提供することができる。イントラ予測モジュール１２６がＰＵに関するイントラ予測を行うときには、イントラ予測モジュール１２６は、同じピクチャ内のその他のＰＵの復号されたサンプルに基づいてＰＵに関する予測データを生成することができる。ＰＵに関する予測データは、予測される映像ブロックと、様々な構文要素と、を含むことができる。イントラ予測モジュール１２６は、Ｉスライス、Ｐスライス、及びＢスライス内のＰＵに関するイントラ予測を行うことができる。
【０１０３】
［０１０９］ＰＵに関するイントラ予測を行うために、イントラ予測モジュール１２６は、ＰＵに関する複数の組の予測データを生成するために複数のイントラ予測モードを使用することができる。イントラ予測モジュール１２６がＰＵに関する予測データの組を生成するためにイントラ予測モードを使用するときには、イントラ予測モジュール１２６は、サンプルを、近隣ＰＵの映像ブロックからＰＵの映像ブロックを横切ってイントラ予測モードと関連付けられた方向及び／又は傾度で拡張することができる。近隣ＰＵは、ＰＵ、ＣＵ、及びツリーブロックに関して左から右、最上部から最下部への符号化順序を仮定した場合、ＰＵの上方、右上、左上、又は左であることができる。イントラ予測モジュール１２６は、ＰＵのサイズに依存して、様々な数のイントラ予測モード、例えば、３３の方向性イントラ予測モード、を使用することができる。
【０１０４】
［０１１０］予測モジュール１００は、ＰＵに関して動き補償モジュール１２４によって生成された予測データ又はＰＵに関してイントラ予測モジュール１２６によって生成された予測データの中からＰＵに関する予測データを選択することができる。幾つかの例では、予測モジュール１００は、予測データの組のレート／歪みメトリックに基づいてＰＵに関する予測データを選択する。
【０１０５】
［０１１１］予測モジュール１００がイントラ予測モジュール１２６によって生成された予測データを選択する場合は、予測モジュール１００は、ＰＵに関する予測データを生成するために使用されたイントラ予測モード、すなわち、選択されたイントラ予測モード、をシグナリングすることができる。予測モジュール１００は、選択されたイントラ予測モードを様々な方法でシグナリングすることができる。例えば、選択されたイントラ予測モードは、近隣のＰＵのイントラ予測モードと同じである可能性が高い。換言すると、近隣ＰＵのイントラ予測モードは、現在のＰＵに関する最も可能性が高いモードであることができる。従って、予測モジュール１００は、選択されたイントラ予測モードは近隣ＰＵのイントラ予測モードと同じであることを示すための構文要素を生成することができる。
【０１０６】
［０１１２］予測モジュール１００がＣＵのＰＵに関して予測データを選択した後は、残差生成モジュール１０２は、ＣＵのＰＵの予測される映像ブロックをＣＵの映像ブロックから減じることによってＣＵに関する残差データを生成することができる。ＣＵの残差データは、ＣＵの映像ブロック内のサンプルの異なるサンプル成分に対応する２Ｄ残差映像ブロックを含むことができる。例えば、残差データは、ＣＵのＰＵの予測される映像ブロック内のサンプルのルミナンス成分とＣＵのオリジナルの映像ブロック内のサンプルのルミナンス成分との間の差分に対応する残差映像ブロックを含むことができる。さらに、ＣＵの残差データは、ＣＵのＰＵの予測される映像ブロック内のサンプルのクロミナンス成分とＣＵのオリジナルの映像ブロック内のサンプルのクロミナンス成分との間の差分に対応する残差映像ブロックを含むことができる。
【０１０７】
［０１１３］予測モジュール１００は、ＣＵの残差映像ブロックをサブブロックに分割するために四分木分割を行うことができる。各々の分割されない残差映像ブロックは、ＣＵの異なるＴＵと関連付けることができる。ＣＵのＴＵと関連付けられた残差映像ブロックのサイズ及び位置は、ＣＵのＰＵと関連付けられた映像ブロックのサイズ及び位置に基づく場合と基づかない場合がある。“残差四分木（ＲＱＴ）”と呼ばれる四分木構造は、残差映像ブロックの各々と関連付けられたノードを含むことができる。ＣＵのＴＵは、ＲＱＴの葉ノードに対応することができる。
【０１０８】
［０１１４］変換モジュール１０４は、１つ以上の変換をＴＵと関連付けられた残差映像ブロックに適用することによってＣＵの各ＴＵに関する１つ以上の変換係数ブロックを生成することができる。変換係数ブロックの各々は、変換係数の２Ｄ行列であることができる。変換モジュール１０４は、ＴＵと関連付けられた残差映像ブロックに対して様々な変換を適用することができる。例えば、変換モジュール１０４は、離散コサイン変換（ＤＣＴ）、方向性変換、又は概念的に類似する変換をＴＵと関連付けられた残差映像ブロックに適用することができる。
【０１０９】
［０１１５］変換モジュール１０４がＴＵと関連付けられた変換係数ブロックを生成した後は、量子化モジュール１０６は、変換係数ブロック内の変換係数を量子化することができる。量子化モジュール１０６は、ＣＵと関連付けられたＱＰ値に基づいてＣＵのＴＵと関連付けられた変換係数ブロックを量子化することができる。
【０１１０】
［０１１６］映像符号器２０は、様々な方法でＱＰ値をＣＵと関連付けることができる。例えば、映像符号器２０は、ＣＵと関連付けられたツリーブロックに関するレート−歪み解析を行うことができる。レート−歪み解析では、映像符号器２０は、ツリーブロックに関して符号化動作を複数回行うことによってツリーブロックの複数のコーディングされた表現を生成することができる。映像符号器２０は、映像符号器２０がツリーブロックの異なる符号化された表現を生成するときに異なるＱＰ値をＣＵと関連付けることができる。映像符号器２０は、所定のＱＰ値が最低のビットレート及び歪みメトリックを有するツリーブロックのコーディングされた表現内のＣＵと関連付けられているときに所定のＱＰ値がＣＵと関連付けられることをシグナリングすることができる。
【０１１１】
［０１１７］幾つかの例では、映像符号器２０は、１つ以上の映像ブロックに関して変換モジュール１０４及び量子化モジュール１０６をバイパスする。映像符号器２０が映像ブロックに関して変換モジュール１０４及び量子化モジュール１０６をバイパスするときには、映像符号器２０は、その映像ブロックに関する変換及び量子化を行わない。
【０１１２】
［０１１８］映像符号器２０が変換モジュール１０４及び量子化モジュール１０６をバイパスする例では、映像復号器３０は、逆量子化モジュール１０８及び逆変換モジュール１１０を同様にバイパスすることができる。他方、逆量子化モジュール１０８及び逆変換モジュール１１０は、変換係数ブロックから残差映像ブロックを再構築するために、逆量子化及び逆変換を変換係数ブロックに適用することができる。再構築モジュール１１２は、ＴＵと関連付けられた再構築された映像ブロックを生成するために予測モジュール１００によって生成された１つ以上の予測される映像ブロックからの対応するサンプルに再構築された残差映像ブロックを加えることができる。このようにしてＣＵの各ＴＵに関して映像ブロックを再構築することによって、映像符号器２０は、ＣＵの映像ブロックを再構築することができる。
【０１１３】
［０１１９］再構築モジュール１１２がＣＵの映像ブロックを再構築後は、フィルタモジュール１１３は、ＣＵと関連付けられた映像ブロック内のブロックキングアーティファクトを低減させるためのデブロッキング動作を行うことができる。フィルタモジュール１１３は、その他のタイプのフィルタリング（希望される場合）、例えば、サンプルアダプティブオフセット（ＳＡＯ）フィルタリング、アダプティブループフィルタリング（ＡＬＦ）、又はその他のタイプのインループ又はポストループフィルタリング、を行うこともできる。幾つかの例では、映像符号器２０は、フィルタモジュール１１３をバイパスする。該例では、映像符号器２０は、再構築された映像ブロックに関するインループフィルタリング、例えば、デブロッキング、ＳＡＯ、ＡＬＦフィルタリング、は行わない。
【０１１４】
［０１２０］１つ以上のフィルタリング動作を行うなった後は、フィルタモジュール１１３は、ＣＵの再構築された映像ブロックを復号ピクチャバッファ１１４に格納することができる。動き推定モジュール１２２及び動き補償モジュール１２４は、後続するピクチャのＰＵに関するインター予測を行うために再構築された映像ブロックが入った基準ピクチャを使用することができる。さらに、イントラ予測モジュール１２６は、ＣＵと同じピクチャ内のその他のＰＵに関するイントラ予測を行うために復号ピクチャバッファ１１４内の再構築された映像ブロックを使用することができる。
【０１１５】
［０１２１］エントロピー符号化モジュール１１６は、映像符号器２０のその他の機能上のコンポーネントからデータを受信することができる。例えば、エントロピー符号化モジュール１１６は、量子化モジュール１０６から変換係数ブロックを受信することができ及び予測モジュール１００から構文要素を受信することができる。エントロピー符号化モジュール１１６がデータを受信するときには、エントロピー符号化モジュール１１６は、エントロピー符号化されたデータを生成するために１つ以上のエントロピー符号化動作を行うことができる。例えば、映像符号器２０は、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ）動作、ＣＡＢＡＣ動作、変数−変数（Ｖ２Ｖ）長コーディング動作、構文に基づくコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ）動作、確率間隔パーティショニングエントロピー（ＰＩＰＥ）コーディング動作、又は他のタイプのエントロピー符号化動作をデータに関して行うことができる。エントロピー符号化モジュール１１６は、エントロピー符号化されたデータを含むビットストリームを出力することができる。
【０１１６】
［０１２２］データに関するエントロピー符号化動作を行う一部として、エントロピー符号化モジュール１１６は、コンテキストモデルを選択することができる。エントロピー符号化モジュール１１６がＣＡＢＡＣ動作を行っている場合は、コンテキストモデルは、特定のビンが特定の値を有する確率の推定値を示すことができる。ＣＡＢＡＣに関して、用語“ビン”は、構文要素のバイナリ化されたバージョンのビットを意味するために使用される。
【０１１７】
［０１２３］映像符号器２０は、ここにおいて説明される技法のうちの１つ以上を映像符号化プロセスの一部として実装するように構成することができる。ここにおいて説明される１つの技法では、映像符号器２０は、ＰＣＭモードに関するインループフィルタリングをイネーブルにするために構文要素ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇをシグナリングする。映像符号器２０は、ＰＣＭコーディングモードが１つ以上の映像ブロックに関して使用されるかどうかを示すために第１の構文要素（例えば、ｐｃｍ_ｆｌａｇ）を符号化し、ＰＣＭモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する。映像符号器２０は、ＰＣＭコーディングモードが使用されるときにインループフィルタリングが適用されるかどうかを示すために及びＰＣＭコーディングモードが１つ以上の映像ブロックに関して使用されないときにロスレスコーディングモードが使用されるかどうかを示すために第２の構文要素（例えば、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ）を符号化するように構成することもでき、ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味する。ＰＣＭコーディングモードが使用されることを第１の構文要素（例えば、ｐｃｍ_ｆｌａｇ）が示すことに応答して、映像符号器２０は、第２の構文要素（例えば、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ）に少なくとも部分的に基づいてインループフィルタリングを適用する。映像符号器２０は、第１の構文要素にかかわらず第２の構文要素を符号化するように構成することもできる。
【０１１８】
［０１２４］例えば、ｐｃｍ_ｆｌａｇが０に等しく、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが１に等しい場合は、“ロスレス”コーディングユニットに関しては変換、量子化、及びインループフィルタリングがバイパスされる。映像符号器２０がＰＣＭコーディングコードで符号化せず、変換、量子化、及びインループフィルタリングをバイパスしたＣＵに関しては、映像符号器２０は、０に等しいｐｃｍ_ｆｌａｇ及び１に等しいｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇをシグナリングする。他方、映像符号器２０がＣＵを符号化するためにＰＣＭコーディングモードを使用せず（例えば、ｐｃｍ_ｆｌａｇが０に等しい）、ＣＵに関して変換、量子化、及びインループフィルタリングを行う場合は、映像符号器２０は、０に等しいｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇをシグナリングする。
【０１１９】
［０１２５］映像符号器２０がＣＵを符号化するためにＰＣＭコーディングモードを使用し（例えば、ｐｃｍ_ｆｌａｇが１に等しい）、ＣＵに関してインループフィルタリングを行わない（例えば、バイパスした）場合は、映像符号器２０は、１に等しいｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇをシグナリングする。映像符号器２０がＣＵを符号化するためにＰＣＭコーディングモードを使用し（例えば、ｐｃｍ_ｆｌａｇが１に等しい）、ＣＵに関してインループフィルタリングを行う（例えば、バイパスしなかった）場合は、映像符号器２０は、０に等しいｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇをシグナリングする。すなわち、ＰＣＭコーディングモードが使用されるときには、変換は常にバイパスされ、量子化はバイパスされる場合とされない場合があり、インループフィルタリングは、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇによって制御される。
【０１２０】
［０１２６］他の技法例では、映像符号器２０は、１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるかどうかを示すために構文要素（例えば、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ）をコーディングし、及び、ロスレスコーディングモードが使用されることを構文要素が示す場合は１つ以上の映像ブロックをディスエーブルにするように構成され、ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味し、ＰＣＭモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する。
【０１２１】
［０１２７］例えば、映像符号器２０は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが０又は偽であるときのみにｐｃｍ_ｆｌａｇをシグナリングする。ＨＥＶＣ  ＷＤ７では、ｐｃｍ＿ｆｌａｇが特定のＣＵに関して１である場合は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇにかかわらずＰＣＭモードが使用される。従って、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが０であるときのみにＰＣＭモードをシグナリングする映像符号器２０は、ＨＥＶＣ  ＷＤ７と比較して映像コーディングプロセスの効率を向上させ、ここで、ＰＣＭモードは、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇの値にかかわらずシグナリングされる。
【０１２２】
［０１２８］例えば、映像符号器２０は、１つ以上の映像ブロックに関してＰＣＭコーディングモードが使用されるかどうかを示すために第１の構文要素（例えば、ｐｃｍ_ｆｌａｇ）をコーディングするように構成される。ＰＣＭコーディングモードは、１つ以上の映像ブロックのピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する。映像符号器２０は、１つ以上の映像ブロックに対してインループフィルタリングが適用されるかどうかを示すために第２の構文要素（例えば、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ）をコーディングするようにさらに構成される。ＰＣＭコーディングモードが使用されることを第１の構文要素が示す場合は、第２の構文要素は、インループフィルタリングを適用すべきかどうかを示すと解釈される。
【０１２３】
［０１２９］代替技法においては、映像符号器２０は、１つ以上の映像ブロックに関してＰＣＭコーディングモード又はロスレスコーディングモードのいずれが使用されるかどうかを示すためにｐｃｍ_ｆｌａｇを使用することができる。この例では、ｐｃｍ_ｆｌａｇは、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇよりも階層的に低いレベルにあるとして取り扱われる。すなわち、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇは、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ及びｐｃｍ_ｆｌａｇの両方を制御する。映像符号器２０は、２つのフラグ、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ及びｐｃｍ_ｆｌａｇの組み合わせに基づいて１つ以上の映像ブロックがロスレスコーディングモード又はＰＣＭコーディングモードのいずれを用いて符号化されるかをシグナリングする。
【０１２４】
［０１３０］例えば、映像符号器２０がｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇは１に等しいとしてシグナリングする場合は、これは、１つ以上の映像ブロックを符号化するためにロスレスコーディングモード又はＰＣＭコーディングモードのいずれかが使用されたことを意味する。映像符号器２０が１つ以上の映像ブロックを符号化するためにどちらのコーディングモードを使用したかを識別するために、映像符号器２０は、ｐｃｍ_ｆｌａｇをシグナリングする。例えば、映像符号器２０は、ロスレスコーディングモードが使用されたことを示すために０に等しいｐｃｍ_ｆｌａｇをシグナリングする。同様に、映像符号器２０は、ＰＣＭコーディングモードが使用されたことを示すために１に等しいｐｃｍ_ｆｌａｇをシグナリングする。このように、ロスレスコーディング条件及びＰＣＭコーディング条件は、２つのフラグの組み合わせとして導き出される。その他の例では、同様の機能を達成するためにフラグ及び値の異なる組み合わせを使用することができる。
【０１２５】
［０１３１］例えば、映像符号器２０は、１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるか又は１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）モードが使用されるかを示すために第１の構文要素（例えば、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ）をコーディングするように構成され、ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化及びインループフィルタリングをバイパスするモードを意味し、ＰＣＭモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する。第１の構文要素が真に設定された場合は、映像符号器２０は、ロスレスコーディングモードが使用されるか又はＰＣＭモードが使用されるかを示すために第２の構文要素（例えば、ｐｃｍ_ｆｌａｇ）をコーディングするように構成することができる。この例では、映像符号器２０は、第１の構文要素、第２の構文要素、及び第３の構文要素（例えば、ｐｃｍ_ｌｏｏｐ_ｄｉｓａｂｌｅ_ｆｌａｇ）に基づいてインループフィルタリング動作をイネーブル又はディスエーブルにすることができる。
【０１２６】
［０１３２］図３は、本開示の技法を実装するように構成することができる映像復号器例３０を例示するブロック図である。図３は、説明を目的として提供され、本開示においては広範囲わたって例示及び説明するものであり、技法を限定するものであるとはみなされるべきでない。説明の目的上、本開示は、ＨＥＶＣコーディングの観点で映像復号器３０について説明する。しかしながら、本開示の技法は、その他のコーディング規格又は方法に対して適用することができる。
【０１２７】
［０１３３］図３の例では、映像復号器３０は、複数の機能上のコンポーネントを含む。映像復号器３０の機能上のコンポーネントは、エントロピー復号モジュール１５０と、予測モジュール１５２と、逆量子化モジュール１５４と、逆変換モジュール１５６と、再構築モジュール１５８と、フィルタモジュール１５９と、復号ピクチャバッファ１６０と、を含む。予測モジュール１５２は、動き補償モジュール１６２と、イントラ予測モジュール１６４と、を含む。幾つかの例では、映像復号器３０は、図２の映像符号器２０に関して説明される符号化パス（ｅｎｃｏｄｉｎｇ  ｐａｓｓ）と概して相互的な復号パスを行うことができる。その他の例では、映像復号器３０は、それよりも多くの、それよりも少ない、又は異なる機能上のコンポーネントを含むことができる。
【０１２８】
［０１３４］映像復号器３０は、符号化された映像データを備えるビットストリームを受信することができる。ビットストリームは、複数の構文要素を含むことができる。映像復号器３０がビットストリームを受信したときには、エントロピー復号モジュール１５０は、ビットストリームに関して構文解析動作を行うことができる。ビットストリームに関して構文解析動作を行った結果、エントロピー復号モジュール１５０は、ビットストリームから構文要素を抽出することができる。構文解析動作を行う一部として、エントロピー復号モジュール１５０は、ビットストリーム内の符号化されたエントロピー符号化された構文要素をエントロピー復号することができる。予測モジュール１５２、逆量子化モジュール１５４、逆変換モジュール１５６、再構築モジュール１５８、及びフィルタモジュール１５９は、ビットストリームから抽出された構文要素に基づいて復号された映像データを生成する再構築動作を行うことができる。
【０１２９】
［０１３５］上述されるように、ビットストリームは、一連のＮＡＬユニットを備えることができる。ビットストリームのＮＡＬユニットは、シーケンスパラメータセットＮＡＬユニット、ピクチャパラメータセットＮＡＬユニット、ＳＥＩ  ＮＡＬユニット、等を含むことができる。ビットストリームに関して構文解析動作を行う一部として、エントロピー復号モジュール１５０は、シーケンスパラメータセットＮＡＬユニットからシーケンスパラメータセットを、ピクチャパラメータセットＮＡＬユニットからピクチャパラメータセットを、ＳＥＩ  ＮＡＬユニットからＳＥＩデータを、以下同様、抽出し及びエントロピー復号する構文解析動作を行うことができる。
【０１３０】
［０１３６］さらに、ビットストリームのＮＡＬユニットは、コーディングされたスライスＮＡＬユニットを含むことができる。ビットストリームに関して構文解析動作を行う一部として、エントロピー復号モジュール１５０は、コーディングされたスライスＮＡＬユニットからコーディングされたスライスを抽出してエントロピー復号する構文解析動作を行うことができる。コーディングされたスライスの各々は、スライスヘッダと、スライスデータと、を含むことができる。スライスヘッダは、スライスに関する構文要素を含むことができる。スライスヘッダ内の構文要素は、スライスが入ったピクチャと関連付けられたピクチャパラメータセットを識別する構文要素を含むことができる。エントロピー復号モジュール１５０は、スライスヘッダを復元するためにコーディングされたスライス内の構文要素に関して、エントロピー復号動作、例えば、ＣＡＢＡＣ復号動作、を行うことができる。
【０１３１】
［０１３７］コーディングされたスライスＮＡＬユニットからスライスデータを抽出する一部として、エントロピー復号モジュール１５０は、スライスデータ内のコーディングされたＣＵから構文要素を抽出する構文解析動作を行うことができる。抽出された構文要素は、変換係数ブロックと関連付けられた構文要素を含むことができる。エントロピー復号モジュール１５０は、それらの構文要素の一部に関するＣＡＢＡＣ復号動作を行うことができる。
【０１３２】
［０１３８］エントロピー復号モジュール１５０が分割されないＣＵに関して構文解析動作を行った後は、映像復号器３０は、分割されないＣＵに関して再構築動作を行うことができる。分割されないＣＵに関して再構築動作を行うために、映像復号器３０は、ＣＵの各ＴＵに関して再構築動作を行うことができる。ＣＵの各ＴＵに関して再構築動作を行うことによって、映像復号器３０は、ＣＵと関連付けられた残差映像ブロックを再構築することができる。
【０１３３】
［０１３９］ＴＵに関する再構築動作を行う一部として、逆量子化モジュール１５４は、ＴＵと関連付けられた変換係数ブロックを逆量子化、すなわち、量子化解除（ｄｅ−ｑｕａｎｔｉｚｅ）することができる。逆量子化モジュール１５４は、ＨＥＶＣに関して提案されるか又はＨ．２６４復号基準によって定義される逆量子化プロセスと同様の方法で変換係数ブロックを逆量子化することができる。逆量子化モジュール１５４は、量子化度、そして同様に、適用すべき逆量子化モジュール１５４に関する逆量子化度、を決定するために変換係数ブロックのＣＵに関して映像符号器２０によって計算された量子化パラメータＱＰを使用することができる。
【０１３４】
［０１４０］逆量子化モジュール１５４が変換係数ブロックを逆量子化した後は、逆変換モジュール１５６は、変換係数ブロックと関連付けられたＴＵに関する残差映像ブロックを生成することができる。逆変換モジュール１５６は、ＴＵに関する残差映像ブロックを生成するために変換係数ブロックに逆変換を適用することができる。例えば、逆変換モジュール１５６は、逆ＤＣＴ、逆整数変換、逆Ｋａｒｈｕｎｅｎ−Ｌｏｅｖｅ変換（ＫＬＴ）、逆回転変換、逆方向性変換、又は他の逆変換を変換係数ブロックに適用することができる。
【０１３５】
［０１４１］幾つかの例では、逆変換モジュール１５６は、映像符号器２０からのシグナリングに基づいて変換係数ブロックに適用するための逆変換を決定することができる。該例では、逆変換モジュール１５６は、変換係数ブロックと関連付けられたツリーブロックに関する四分木のルートノードにおいてシグナリングされた変換に基づいて逆変換を決定することができる。その他の例では、逆変換モジュール１５６は、１つ以上のコーディング上の特徴、例えば、ブロックサイズ、コーディングモード、等から逆変換を推論することができる。幾つかの例では、逆変換モジュール１５６は、カスケード形式の逆変換を適用することができる。
【０１３６】
［０１４２］しかしながら、幾つかの例では、映像復号器３０は、ロスレスコーディングモードを用いて１つ以上の映像ブロックが符号化されたと決定する。該例では、映像復号器３０は、１つ以上の映像ブロックを復号するときに逆量子化モジュール１５４、逆変換モジュール１５６及びフィルタリングモジュール１５９をバイパスする。
【０１３７】
［０１４３］幾つかの例では、動き補償モジュール１６２は、内挿フィルタに基づいて内挿を行うことによってＰＵの予測された映像ブロックを向上させることができる。サブサンプル精度での動き補償のために使用される内挿フィルタに関する識別子を構文要素に含めることができる。動き補償モジュール１６２は、基準ブロックの整数以下の（ｓｕｂ−ｉｎｔｅｇｅｒ）サンプルに関する内挿された値を計算するためにＰＵの予測された映像ブロックの生成中に映像符号器２０によって使用されるのと同じ内挿フィルタを使用することができる。動き補償モジュール１６２は、受信された構文情報により映像符号器２０によって使用される内挿フィルタを決定し、予測された映像ブロックを生成するために内挿フィルタを使用することができる。
【０１３８】
［０１４４］ＰＵがイントラ予測を用いて符号化される場合は、イントラ予測モジュール１６４は、ＰＵに関する予測された映像ブロックを生成するためにイントラ予測を行うことができる。例えば、イントラ予測モジュール１６４は、ビットストリーム内の構文要素に基づいてＰＵに関するイントラ予測モードを決定することができる。ビットストリームは、イントラ予測モジュール１６４がＰＵのイントラ予測モードを決定するために使用することができる構文要素を含むことができる。
【０１３９】
［０１４５］幾つかの例では、構文要素は、イントラ予測モジュール１６４が現在のＰＵのイントラ予測モードを決定するために他のＰＵのイントラ予測モードを使用すべきであることを示すことができる。例えば、現在のＰＵのイントラ予測モードが隣のＰＵのイントラ予測モードと同じである可能性が高い。換言すると、隣のＰＵのイントラ予測モードは、現在のＰＵに関する最も可能性が高いモードであることができる。従って、この例では、ビットストリームは、ＰＵのイントラ予測モードが隣のＰＵのイントラ予測モードと同じであることを示す小さい構文要素を含むことができる。イントラ予測モジュール１６４は、空間的に隣接するＰＵの映像ブロックに基づいてＰＵに関する予測データ（例えば、予測されたサンプル）を生成するためにイントラ予測モードを使用することができる。
【０１４０】
［０１４６］再構築モジュール１５８は、ＣＵの映像ブロックを再構築するために、ＣＵのＴＵと関連付けられた残差映像ブロック及びＣＵのＰＵの予測された映像ブロック、すなわち、イントラ予測データ又はインター予測データ（適宜）、を使用することができる。従って、映像復号器３０は、ビットストリーム内の構文要素に基づいて予測された映像ブロック及び残差映像ブロックを生成することができ及び予測される映像ブロック及び残差映像ブロックに基づいて映像ブロックを生成することができる。
【０１４１】
［０１４７］再構築モジュール１５８がＣＵの映像ブロックを再構築した後は、フィルタモジュール１５９は、１つ以上のフィルタリング動作を行うことができる。フィルタモジュール１５９は、デブロッキングフィルタ１７０、及びサンプルアダプティブオフセット（ＳＡＯ）フィルタ１７２を含み、及び、アダプティブループフィルタリング（ＡＬＦ）フィルタ１７４を含むことができる。デブロッキングフィルタ１７０は、ＣＵと関連付けられたブロッキングアーティファクトを低減させるためのデブロッキング動作を行う。フィルタモジュール１５９は、その他のタイプのフィルタリング（希望される場合）、例えば、ＳＡＯフィルタリング、ＡＬＦ、又はその他のタイプのインループ又はポストループフィルタリング、を行うこともできる。映像復号器３０は、１つ以上の映像ブロックに関してＣＵレベルでシグナリングされた１つ以上の構文要素に基づいてループフィルタリングを適用することができる。幾つかの例では、映像復号器３０は、フィルタモジュール１５９をバイパスし、及び、映像ブロックを復号するためにループフィルタリングを適用しない。
【０１４２】
［０１４８］フィルタモジュール１５９が１つ以上のフィルタリング動作を行なった後は、映像復号器３０は、ＣＵの映像ブロックを復号ピクチャバッファ１６０に格納することができる。復号ピクチャバッファ１６０は、後続する動き補償、イントラ予測、表示装置、例えば、図１の表示装置３２、での提示のために基準ピクチャを提供することができる。例えば、映像復号器３０は、復号ピクチャバッファ１６０内の映像ブロックに基づいて、その他のＣＵのＰＵに関するイントラ予測又はインター予測動作を行うことができる。
【０１４３】
［０１４９］本開示により、映像復号器３０は、ここにおいて説明される技法のうちの１つ以上を映像復号プロセスの一部として実装するように構成することができる。一例では、映像復号器３０は、１つ以上の映像ブロックに関してＰＣＭコーディングモードが使用されるかどうかを決定するために第１の構文要素（例えば、ｐｃｍ_ｆｌａｇ）を復号するように構成され、モードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する。映像復号器３０は、１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるかどうかを決定するために第２の構文要素（例えば、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ）を復号するようにさらに構成され、ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味する。ＰＣＭコーディングモードが使用されることを第１の構文要素が示すことに応答して、映像復号器３０は、第２の構文要素に少なくとも部分的に基づいてインループフィルタリングを適用する。映像復号器３０は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇの値に基づいてフィルタリングモジュール１５９を適用又はバイパスすることができる。
【０１４４】
［０１５０］例えば、ｐｃｍ_ｆｌａｇが０に等しく、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが存在しており、１に等しい場合は、映像復号器３０は、１つ以上の映像ブロックに関する変換、量子化、及びすべてのインループフィルタリングをバイパスする。映像復号器３０が、ｐｃｍ_ｆｌａｇが０に等しく、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが１に等しいと決定した場合は、映像復号器３０は、１つ以上の映像ブロックをロスレスコーディングモードで復号し、１つ以上の映像ブロックに関する変換、量子化、及びインループフィルタリングをバイパスする。他方、映像復号器３０が、１つ以上の映像ブロックがＰＣＭコーディングモードを用いて符号化されなかった（例えば、ｐｃｍ_ｆｌａｇが０に等しい）と決定し及びｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが０に等しいと決定した場合は、映像復号器３０は、１つ以上の映像ブロックを復号する際に変換、量子化、及びインループフィルタリングを行う。
【０１４５】
［０１５１］映像復号器３０が、映像ブロックを符号化するためにＰＣＭコーディングモードが使用された（例えば、ｐｃｍ_ｆｌａｇが１に等しい）と決定し及びｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが１に等しいと決定した場合は、映像復号器３０は、映像ブロックに関するインループフィルタリングを行わない（例えば、バイパスした）。映像復号器３０が、映像ブロックを符号化するためにＰＣＭコーディングモードが使用された（例えば、ｐｃｍ_ｆｌａｇが１に等しい）と決定し及びｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが０に等しいと決定した場合は、映像復号器３０は、１つ以上の映像ブロックを復号するためにインループフィルタリングを行う（例えば、バイパスしなかった）。
【０１４６】
［０１５２］他の例では、映像復号器３０は、１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるかどうかを決定するために構文要素（例えば、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ）を復号し、及び、ロスレスコーディングモードが使用されることを構文要素が示す場合に１つ以上の映像ブロックに関してＰＣＭモードをディスエーブルにするように構成され、ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味し、ＰＣＭモードはピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する。
【０１４７】
［０１５３］構文要素は、第１の構文要素を備えることができ、その場合は、映像復号器３０は、ロスレスコーディングモードが使用されないことを第１の構文要素が示すときに第２の構文要素（例えば、ｐｃｍ_ｆｌａｇ）を復号するように構成することもでき、第２の構文要素は、１つ以上の映像ブロックに関してＰＣＭモードが使用されるかどうかをコーディングモード映像符号器に示す。映像復号器３０は、第１の構文要素にかかわりなく第２の構文要素を復号するように構成することもできる。
【０１４８】
［０１５４］他の例では、映像復号器３０は、１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるか又は１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）モードが使用されるかを示すために第１の構文要素（例えば、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ）を復号するように構成される。第１の構文要素が真又は１に設定される場合は、映像復号器３０は、映像ブロックがロスレスコーディングモード又はＰＣＭコーディングモードのいずれを用いて符号化されたかを決定するために第２の構文要素（例えば、ｐｃｍ_ｆｌａｇ）を復号するように構成することができる。さらに、この例では、映像復号器３０は、第１の構文要素、第２の構文要素、及び第３の構文要素（例えば、ｐｃｍ_ｌｏｏｐ_ｄｉｓａｂｌｅ_ｆｌａｇ）に基づいてインループフィルタリング動作をイネーブル又はディスエーブルにすることができる。
【０１４９】
［０１５５］図４は、本開示において説明される技法により、映像データに関する他の構文要素に基づいてフィルタリングを適用すべきかどうかを決定するために構文要素を復号するための方法例２００を示したフローチャートである。方法２００は、例えば、図３の映像符号器３０によって実行することができる。方法２００は、ＰＣＭモードに関するインループフィルタリングをイネーブルにするために構文要素ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇを利用する。
【０１５０】
［０１５６］ＨＥＶＣ  ＷＤ７では、ロスレスモード及びＰＣＭモードのシグナリングは、異なる映像ブロックサイズで行われる。ロスレスコーディングモードは、ＣＵレベルでシグナリングされ、ＰＣＭコーディングモードは、そのサイズが最大又は最小の映像ブロックサイズに関する制約事項を満たす映像ブロックのみに関して使用することができる。しかしながら、ＰＣＭモード及びロスレスモードがシグナリングされるサイズは、統一することができる。これは、ＣＵのグループに関して両方のモードをシグナリングすることによって完遂させることができる。このシナリオでは、（ｎｕｍ_ｓｕｂｓｅｑｕｅｎｔ_ｐｃｍによってシグナリングされる）連続するＰＣＭモードブロックの数をディスエーブルにする必要がある。別の記載がないかぎり、以下の技法を用いることで、両方のモードが同じブロックサイズに関してシグナリングされていると仮定することができる。ＳＰＳ又はＰＰＳのいずれかにおいてｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｅｎａｂｌｅ_ｆｌａｇ及びｐｃｍ_ｅｎａｂｌｅｄ_ｆｌａｇの両方をシグナリングすることによってさらなる調和化が可能である。ＨＥＶＣバージョン１では、ｎｕｍ_ｓｕｂｓｅｑｕｅｎｔ_ｐｃｍは取り除かれている。
【０１５１】
［０１５７］方法２００は、映像復号器３０によって実行することができる。図４において示されるように、方法２００は、１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）コーディングモードが使用されるかどうかを決定するために第１の構文要素を復号することを含み、ＰＣＭモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する（２０２）。第１の構文要素は、例えば、ｐｃｍ_ｆｌａｇであることができる。方法２００は、１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるかどうかを決定するために第２の構文要素を復号することをさらに含み、ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味する（２０４）。第２の構文要素は、例えば、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ又はより記述的にｃｕ_ｔｒａｎｓｑｕａｎｔ_ｌｏｏｐｆｉｌｔｅｒ_ｂｙｐａｓｓ_ｆｌａｇという名前を付けることができる。
【０１５２】
［０１５８］方法２００は、ＰＣＭコーディングモードが使用されることを第１の構文要素が示すことに応答して、第２の構文要素に少なくとも部分的に基づいてフィルタリングを適用することをさらに含む（２０６）。方法２００は、第１の構文要素及び第２の構文要素に少なくとも部分的に基づいて１つ以上の映像ブロックを復号することも含む（２０８）。
【０１５３】
［０１５９］この例の１つの代替においては、技法は、ＨＥＶＣ  ＷＤ７に含まれているＳＰＳからｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇを取り除く。ＨＥＶＣ  ＷＤ７では、ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇは、ピクチャのシーケンス全体に関してＰＣＭコーディングされたブロックに関してループフィルタリングをイネーブル又はディスエーブルにするために設定することができる。しかしながら、個々の映像ブロックに関してループフィルタリングをイネーブル又はディスエーブルにするために、ループフィルタリングが特定の映像ブロックに関して使用されると決定するか又は示すためにｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇを使用することができる。
【０１５４】
［０１６０］ＰＣＭモードコーディングされたブロックに関するインループフィルタリングは、次のようにｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇを用いてイネーブル又はディスエーブルにされる。この例では、ｐｃｍ_ｆｌａｇ及びｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇは、同時に１であることができる。これが生じた場合は、シーケンス全体にわたってではなくブロックレベルでＰＣＭモードブロックに関してインループフィルタリングをイネーブル又はディスエーブルにするためにｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが使用される。従って、インループフィルタリングがＰＣＭコーディングされたブロックに適用されるかどうかは、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇの値に依存する。以下の表（表１）は、ｐｃｍ_ｆｌａｇ及びｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇの可能な組み合わせ、及びその結果得られるインループフィルタリングを示す。
【表１】
0006266605.tif 000002
【０１５５】
［０１６１］上表１による例では、ｐｃｍ_ｆｌａｇが０に等しく、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが存在する（ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｅｎａｂｌｅ_ｆｌａｇが１に等しい）場合は、１に等しいｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇは、映像復号器３０が“ロスレス”コーディングユニットに関して変換、量子化、及びすべてのインループフィルタをバイパスし、その他の場合は、映像復号器３０は、コーディングユニットに関して前者のうちのいずれもバイパスしないことを意味する。ｐｃｍ_ｆｌａｇが１に等しく、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが存在する（ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｅｎａｂｌｅ_ｆｌａｇが１に等しい）場合は、表１が示すように、映像符号器２０は、ＰＣＭコーディングされたブロックに関してすべてのインループフィルタをバイパスし（実際には、変換は、ＰＣＭに対して適用されず、量子化は、適用される場合とされない場合がある）、その他の場合は、映像符号器２０は、インループフィルタをＰＣＭコーディングされたブロックに適用する。
【０１５６】
［０１６２］ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇは、その機能をより正確に反映させるためにｃｕ_ｔｒａｎｓｑｕａｎｔ_ｌｏｏｐｆｉｌｔｅｒ_ｂｙｐａｓｓ_ｆｌａｇに改名できることに注目すること。ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｌｏｏｐｆｉｌｔｅｒ_ｂｙｐａｓｓ_ｆｌａｇがＰＣモードに関してシグナリングされるようにするために、ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｅｎｂａｌｅ_ｆｌａｇに基づく条件は、“ｉｆ（ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｅｎｂａｌｅ_ｆｌａｇ  ｏｒ  ｐｃｍ_ｆｌａｇ）”に修正される。さらに、映像符号器２０は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｌｏｏｐｆｉｌｔｅｒ_ｂｙｐａｓｓ_ｆｌａｇのシグナリングをコーディングユニット構文の最後の方に置くが、“ｎｏ_ｒｅｓｉｄｕａｌ_ｄａｔａ_ｆｌａｇ”よりも前である。一例では、これは、ｐｃｍ_ｆｌａｇが利用可能であるために要求されることがある。“ＰＣＭバーストモード”では、複数のＰＣＭ映像ブロックをいっしょにシグナリングすることができる点に注目すること。この場合は、すべての連続するＰＣＭブロックに関して１つのｃｕ_ｔｒａｎｓｑｕａｎｔ_ｌｏｏｐｆｉｌｔｅｒ_ｂｙｐａｓｓ_ｆｌａｇのみがシグナリングされ、フラグ値は、すべての連続するＰＣＭ映像ブロックに適用される。
【０１５７】
［０１６３］以下の表（表２）は、ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇがＳＰＳから取り除かれる例に関するＳＰＳ構文の変更（灰色の強調）を例示し、それは、ＨＥＶＣ  ＷＤ７のプロセスから動作を取り除くことを示すことができる。ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇが取り除かれない例では、表２において例示される変更は当てはまらない。
【表２】
0006266605.tif 000003
【０１５８】
［０１６４］以下の表（表３）は、コーディングユニット構文の変更（灰色の強調）、及び本開示の出願日現在のＨＥＶＣワーキングドラフトのバージョンを例示する。
【表３】
0006266605.tif 000004
【０１５９】
［０１６５］代替として、ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇは、（ＨＥＶＣ  ＷＤ７におけるように）ＳＰＳにおいて、又はそれよりも低いレベル、例えば、ＰＰＳ又はスライスヘッダにおいてシグナリングすることができる。該場合には、ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇが０に等しい場合は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇは、ＰＣＭコーディングされたブロックサンプルに関してインループフィルタリング（デブロッキング、ＳＡＯ、ＡＬＦ、等）をオン又はオフにすることができる。他方、ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇが１に等しい場合は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇは、ＰＣＭコーディングされたブロックサンプルのインループフィルタリングに対して影響を与えず、ＰＣＭコーディングされたブロックサンプルに関してすべてのインループフィルタがディスエーブルにされる。以下の表（表４）は、可能なフラグの組み合わせを要約する。
【表４】
0006266605.tif 000005
【０１６０】
［０１６６］以下の表（表５）は、構文変更（灰色の強調）を要約する。
【表５】
0006266605.tif 000006
【０１６１】
［０１６７］方法２００では、１つ以上の映像ブロックを復号することは、ＰＣＭコーディングモードが使用されることを第１の構文要素が示し及びロスレスコーディングモードが使用されることを第２の構文要素が示すことに応答してＰＣＭコーディングモード及びインループフィルタリングを用いて１つ以上を復号することをさらに備えることができる。
【０１６２】
［０１６８］ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｌｏｏｐｆｉｌｔｅｒ_ｂｙｐａｓｓ_ｆｌａｇが構文要素として含まれる例では、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｌｏｏｐｆｉｌｔｅｒ_ｂｙｐａｓｓ_ｆｌａｇは、ＣＵ構文の最後の方に配置され、ただし、ｎｏ_ｒｅｓｉｄｕａｌ_ｄａｔａ_ｆｌａｇ構文要素よりも前である。
【０１６３】
［０１６９］方法２００は、フィルタリングがイネーブルにされているかどうかを決定するために第３の構文要素（ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇ）を復号することをさらに含むことができる。フィルタリングがイネーブルにされていることを第３の構文要素が示すことに応答して、方法２００は、第２の構文要素に少なくとも部分的に基づいてフィルタリングを適用することを含む。同様に、方法２００は、フィルタリングがディスエーブルにされていることを第３の構文要素が示すことに応答して、ＰＣＭコーディングモードを有する１つ以上の映像ブロックに関してフィルタリングをディスエーブルにすることを含む。第３の構文要素は、シーケンスパラメータセット（ＳＰＳ）、ピクチャパラメータセット（ＰＰＳ）、１つ以上の映像ブロックのスライスヘッダのうちの１つにおけるｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇフラグであることができる。ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇが存在しており、０に等しい場合は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇは、ＰＣＭブロックサンプルに関してインループフィルタリングをオン又はオフにすることを続ける。他方、ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇが存在しており、１に等しい場合は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇは、ＰＣＭブロックサンプルのインループフィルタリングに対して影響を与えず、ＰＣＭブロックサンプルに関してすべてのインループフィルタがディスエーブルにされる。
【０１６４】
［０１７０］図５は、本開示において説明される技法により、映像データに関する他の構文要素に基づいてフィルタリングを適用すべきかどうかを示すために構文要素を符号化するための方法例２５０を示したフローチャートである。方法２５０は、例えば、図２の映像符号器２０によって実行することができる。方法２００は、ＰＣＭモードに関するインループフィルタリングをイネーブルにするために構文要素ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇを利用する。
【０１６５】
［０１７１］方法２５０は、１つ以上の映像ブロックに関してＰＣＭコーディングモードが使用されるかどうかを示すために第１の構文要素を符号化することを含み、そのモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する（２５２）。例えば、映像符号器２０は、１つ以上の映像ブロックを符号化するためにＰＣＭコーディングモードが使用されたことを示すためにｐｃｍ_ｆｌａｇを符号化することができる。方法２５０は、１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるかどうかを示すために第２の構文要素を符号化することをさらに含み、ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味する（２５４）。例えば、映像符号器２０は、１つ以上の映像ブロックを符号化するためにロスレスコーディングモードが使用されたことを示すためにｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ又はｃｕ_ｔｒａｎｓｑｕａｎｔ_ｌｏｏｐｆｉｌｔｅｒ_ｂｙｐａｓｓ_ｆｌａｇを符号化することができる。
【０１６６】
［０１７２］方法２５０は、ＰＣＭコーディングモードが使用されることを第１の構文要素が示すことに応答して第２の構文要素に少なくとも部分的に基づいてフィルタリングを適用することをさらに含むことができる（２５６）。方法２５０は、第１の構文要素及び第２の構文要素に少なくとも部分的に基づいて１つ以上の映像ブロックを符号化することをさらに含むことができる（２５８）。例えば、映像符号器２０は、ＰＣＭモード又はロスレスコーディングモードを用いて１つ以上の映像ブロックを符号化すること、及び、シグナリングされた構文要素においてコーディングモードを反映させることができる。映像符号器２０は、フィルタリングを用いて１つ以上の映像ブロックを符号化することもできる。
【０１６７】
［０１７３］幾つかの例では、ＰＣＭコーディングモードが使用されることを第１の構文要素が示し、ロスレスコーディングモードが使用されることを第２の構文要素が示す場合は、ＰＣＭモードが使用され、インループフィルタリングがイネーブルにされる。第１の構文要素は、ＣＵ構文レベルにおけるｐｃｍ_ｆｌａｇであることができ、第２の構文要素は、ＣＵ構文レベルにおけるｃｕ_ｔｒａｎｓｑｕａｎｔ_ｌｏｏｐｆｉｌｔｅｒ_ｂｙｐａｓｓ_ｆｌａｇであることができる。映像符号器２０は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｌｏｏｐｆｉｌｔｅｒ_ｂｙｐａｓｓ_ｆｌａｇ構文要素をＣＵ構文の最後の方に、ただしｎｏ_ｒｅｓｉｄｕａｌ_ｄａｔａ_ｆｌａｇ構文要素よりも前に置くことができる。
【０１６８】
［０１７４］方法２５０は、フィルタリングがイネーブルにされるかどうかを示すために第３の構文要素を符号化することをさらに備えることができる。第３の構文要素は、ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇであることができる。フィルタリングがイネーブルにされることを第３の構文要素が示すことに応答して、方法２５０は、第２の構文要素に少なくとも部分的に基づいてフィルタリングを適用することを含むことができる。さらに、方法２５０は、フィルタリングがディスエーブルにされることを第３の構文要素が示すことに応答して、ＰＣＭコーディングモードを有する１つ以上の映像ブロックに関してフィルタリングをディスエーブルにすることを含むことができる。幾つかの例では、第３の構文要素は、シーケンスパラメータセット（ＳＰＳ）、ピクチャパラメータセット（ＰＰＳ）、及び１つ以上の映像ブロックのスライスヘッダのうちの１つにおいてｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓａｂｌｅ_ｆｌａｇ構文要素を含む。
【０１６９】
［０１７５］図６は、本開示において説明される技法により、映像データに関するロスレスコーディングモードの使用を示す構文要素に基づいてパルスコード変調（ＰＣＭ）コーディングモードの使用を示す構文要素をコーディングするための方法例３００を示したフローチャートである。方法３００は、例えば、図２の映像符号器２０又は図３の映像復号器３０によって実行することができる。
【０１７０】
［０１７６］第１に、前述されるように、ＨＥＶＣ  ＷＤ７において、特定のＣＵに関してｐｃｍ_ｆｌａｇが１である場合は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇの値にかかわらずＰＣＭモードが使用される。この意味で、映像ブロックがＰＣＭモードを用いて符号化されるときにはｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが浪費される。これに対処するために、ＰＣＭモードはｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが０のときのみに使用することができる技法が提案される。従って、以下の表（表６）に関して、ＨＥＶＣの構文テーブル７．３．７“予測ユニット構文”では、ｐｃｍ_ｆｌａｇが読まれるべきかどうかを映像復号器３０が決定するためにｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇのゼロ値に関する検査を加えることができる。ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｅｎａｂｌｅ_ｆｌａｇが０である場合は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇの値は０であると推測できることが注目されるべきである。
【表６】
0006266605.tif 000007
【０１７１】
［０１７７］追加された条件は、表６では灰色の強調で示される。従って、映像符号器２０は、符号化されたビットストリームで第１のｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇをシグナリングする。このフラグが１である場合は、ＰＣＭモードは使用することができず、映像符号器２０は、ｐｃｍ_ｆｌａｇをシグナリングしない。ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが０である場合は、ＰＣＭモードを使用することができ、これは、ｐｃｍ_ｆｌａｇを介してシグナリングされる。この変更は、ＨＥＶＣ  ＷＤ７ドラフト内において又は上述されるようにロスレスモード及びＰＣＭモードが同じブロックサイズでシグナリングされるときに行うことができる。
【０１７２】
［０１７８］図６に戻り、方法３００は、１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるかどうかを示す構文要素をコーディングすることを含み、ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味する（３０２）。構文要素は、コーディングユニット（ＣＵ）構文レベルにおけるｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇフラグであることができる。例えば、映像符号器２０は、１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるかどうかを示すためにｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇを符号化することができる。他方、映像復号器３０は、１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるかどうかを決定するためにｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇを復号することができる。
【０１７３】
［０１７９］方法３００は、ロスレスコーディングモードが使用されることを構文要素が示すことに応答して１つ以上の映像ブロックに関するＰＣＭコーディングモードをディスエーブルにすることをさらに含み、ＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する（３０４）。例えば、映像符号器２０は、映像符号器２０がロスレスコーディングモードを用いて１つ以上の映像ブロックを符号化したときにはＰＣＭコーディングモードをディスエーブルにすることができる。他方、映像復号器３０は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが１に等しいと映像復号器３０が決定したときにはｐｃｍ_ｆｌａｇを読むことさえできない。代わりに、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが１に等しい場合は、映像復号器３０は、ｐｃｍ_ｆｌａｇを無視することができる。
【０１７４】
［０１８０］構文要素が第１の構文要素であるとみなした場合、方法３００は、ロスレスコーディングモードが使用されないということを第１の構文要素が示すことに応答して第２の構文要素をコーディングすることをさらに含むことができ、第２の構文要素は、１つ以上の映像ブロックに関してＰＣＭコーディングモードが使用されるかどうかを示す。第２の構文要素は、ＣＵ構文レベルにおけるｐｃｍ_ｆｌａｇフラグであることができる。
【０１７５】
［０１８１］方法３００は、ロスレスコーディングモードが使用されることを第１の構文要素が示し及びＰＣＭコーディングモードが使用されることを第２の構文要素が示すことに応答して１つ以上の映像ブロックをコーディングすることをさらに含むことができる。
【０１７６】
［０１８２］図７は、本開示において説明される技法により、映像データに関してＰＣＭコーディングモード又はロスレスコーディングモードのいずれを適用すべきかを決定するためにロスレスコーディングモード構文要素と関連してＰＣＭコーディングモード構文要素を使用するための方法例３５０を示すフローチャートである。方法３５０は、映像符号器２０又は映像復号器３０によって行うことができる。
【０１７７】
［０１８３］この例では、ＰＣＭモードは、ロスレスコーディングモードのシグナリングに依存する。従って、映像ブロックがＰＣＭモードを使用する場合又は映像ブロックに関して変換、量子化、及びインループフィルタリングがバイパスされる場合は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇは１に設定される。ｐｃｍ_ｆｌａｇは、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが１であるときのみにシグナリングされる。ｐｃｍ_ｆｌａｇが１である場合は、ＰＣＭモードが使用される。ｐｃｍ_ｆｌａｇが０である場合は、ロスレスコーディングモードが使用される。ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが０である場合は、ｐｃｍ_ｆｌａｇはシグナリングされず、変換、量子化、及びインループフィルタリングを伴う通常のコーディングが行われる。以下の表（表７）において示されるように、インループフィルタリングは、映像符号器２０又は映像復号器３０によってイネーブル又はディスエーブルにされる（適宜）。
【表７】
0006266605.tif 000008
【０１７８】
［０１８４］この例では、ｐｃｍ_ｆｌａｇはｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが１であるときだけシグナリングされるため、灰色で強調される表７の行は発生することができない。ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｅｎａｂｌｅ_ｆｌａｇが０である場合は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇの値は０であると推測できることが注目されるべきである。
【０１７９】
［０１８５］図７に戻り、方法３５０は、１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるか又は１つ以上の映像ブロックに関してＰＣＭコーディングモードが使用されるかを示す第１の構文要素をコーディングすることを含み、ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味し、ＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する（３５２）。第１の構文要素が真値を示すことに応答して、方法３５０は、ロスレスコーディングモードが使用されるか又はＰＣＭコーディングモードが使用されるか、すなわち、ロスレスコーディングモード又はＰＣＭモードのうちのどちらが使用されるか、を示す第２の構文要素をコーディングすることを含む（３５４）。従って、第１の構文要素は、ロスレスコーディングモード又はＰＣＭモードのうちの１つが使用されることを示し、第２の構文要素は、ロスレスコーディングモード又はＰＣＭモードのうちのどちらが使用されるかを示す。
【０１８０】
［０１８６］例えば、映像符号器２０は、１つ以上の映像ブロックに関してロスレスコーディングモード又はＰＣＭコーディングモードのうちのいずれが使用されるかを示すためにｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇを符号化する。そうである、すなちわ、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが１に等しい場合は、映像符号器２０は、ロスレスコーディングモード又はＰＣＭコーディングモードのうちのいずれが使用されたかを示すためにｐｃｍ_ｆｌａｇを符号化する。ｐｃｍ_ｆｌａｇが１に等しい場合は、映像符号器２０は、ＰＣＭコーディングモードを用いて１つ以上の映像ブロックを符号化した。ｐｃｍ_ｆｌａｇが０に等しい場合は、映像符号器２０は、ロスレスコーディングモードを用いて１つ以上の映像ブロックを符号化した。ロスレスコーディングモード又はＰＣＭコーディングモードが使用されない場合は、映像符号器２０は、ｐｃｍ_ｆｌａｇを符号化しない。
【０１８１】
［０１８７］同様に、映像復号器３０は、１つ以上の映像ブロックに関してロスレスコーディングモード又はＰＣＭコーディングモードのいずれが使用されるかを決定するためにｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇを復号する。そうである、すなわち、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇが１に等しい場合は、映像復号器２０は、ロスレスコーディングモード又はＰＣＭコーディングモードのいずれが使用されたかを決定するためにｐｃｍ_ｆｌａｇを復号するか又は読み取る。そうでない場合は、映像復号器３０は、ビットストリーム内にないためｐｃｍ_ｆｌａｇに関して構文解析しない。ｐｃｍ_ｆｌａｇが１に等しい場合は、映像復号器３０は、ＰＣＭコーディングモードを用いて１つ以上の映像ブロックを復号する。ｐｃｍ_ｆｌａｇが０に等しい場合は、映像復号器３０は、ロスレスコーディングモードを用いて１つ以上の映像ブロックを復号する。
【０１８２】
［０１８８］方法３５０は、ＰＣＭコーディングされたブロックに関してインループフィルタリング動作がイネーブルにされるかどうかを示す第３の構文要素をコーディングすることをさらに含むことができる。インループフィルタリングは、第１の構文要素、第２の構文要素、及び第３の構文要素に基づいてイネーブルにされるか又はディスエーブルにされる。幾つかの例では、第１の構文要素は、ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ構文要素であり、第２の構文要素は、ｐｃｍ_ｆｌａｇ構文要素であり、第３の構文要素は、ｐｃｍ_ｌｏｏｐ_ｄｉｓｂａｌｅ_ｆｌａｇ構文要素である。幾つかの例では、すべての３つの構文要素は、ＣＵ構文レベルでコーディングすることができる。
【０１８３】
［０１８９］他の例では、方法３５０は、変換及び量子化プロセスを伴って１つ以上の映像ブロックをコーディングすることと、第１の構文要素が偽値を示すことに応答して第２の構文要素をコーディングしないことと、をさらに含むことができる。
【０１８４】
［０１９０］１つ以上の例において、説明される機能は、ハードウェア、ソフトウェア、ファームウェア、又はそれらのあらゆる組み合わせにおいて実装することができる。ソフトウェアにおいて実装される場合は、それらの機能は、コンピュータによって読み取り可能な媒体において１つ以上の命令又はコードとして格納又は送信すること及びハードウェアに基づく処理ユニットによって実行することができる。コンピュータによって読み取り可能な媒体は、コンピュータによって読み取り可能な記憶媒体を含むことができ、それは、有形な媒体、例えば、データ記憶媒体、又は、例えば、通信プロトコルにより、１つの場所から他へのコンピュータプログラムの転送を容易にするあらゆる媒体を含む通信媒体、に対応する。このように、コンピュータによって読み取り可能な媒体は、概して、（１）有形なコンピュータによって読み取り可能な記憶媒体又は（２）通信媒体、例えば、信号又は搬送波、に対応することができる。データ記憶媒体は、本開示において説明される技法の実装のために命令、コード及び／又はデータ構造を取り出すために１つ以上のコンピュータ又は１つ以上のプロセッサによってアクセスすることができるあらゆる利用可能な媒体であることができる。コンピュータプログラム製品は、コンピュータによって読み取り可能な媒体を含むことができる。
【０１８５】
［０１９１］一例により、及び制限することなしに、該コンピュータによって読み取り可能な記憶媒体は、希望されるプログラムコードを命令又はデータ構造の形態で格納するために使用することができ及びコンピュータによってアクセス可能であるＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭ又はその他の光学ディスク記憶装置、磁気ディスク記憶装置、又はその他の磁気記憶デバイス、フラッシュメモリ、又はその他のいずれかの媒体を備えることができる。さらに、どのような接続も、コンピュータによって読み取り可能な媒体であると適切に呼ばれる。例えば、命令が、同軸ケーブル、光ファイバケーブル、より対線、デジタル加入者ライン（ＤＳＬ）、又は無線技術、例えば、赤外線、無線、及びマイクロ波、を用いてウェブサイト、サーバ、又はその他の遠隔ソースから送信される場合は、該同軸ケーブル、光ファイバケーブル、より対線、ＤＳＬ、又は無線技術、例えば赤外線、無線、及びマイクロ波、は、媒体の定義の中に含まれる。しかしながら、コンピュータによって読み取り可能な記憶媒体およびデータ記憶媒体は、コネクション、搬送波、信号、又はその他の遷移媒体は含まず、代わりに、非一時的な、有形の記憶媒体を対象とすることが理解されるべきである。ここにおいて用いられるときのディスク（ｄｉｓｋ及びｄｉｓｃ）は、コンパクトディスク（ＣＤ）（ｄｉｓｃ）と、レーザディスク（ｄｉｓｃ）と、光ディスク（ｄｉｓｃ）と、デジタルバーサタイルディスク（ＤＶＤ）（ｄｉｓｃ）と、フロッピー（登録商標）ディスク（ｄｉｓｋ）と、Ｂｌｕ−ｒａｙ（登録商標）ディスク（ｄｉｓｃ）と、を含み、ここで、ｄｉｓｋは、通常は磁気的にデータを複製し、ｄｉｓｃは、レーザを用いて光学的にデータを複製する。上記の組み合わせも、コンピュータによって読み取り可能な媒体の適用範囲内に含められるべきである。
【０１８６】
［０１９２］命令は、１つ以上のプロセッサ、例えば、１つ以上のデジタル信号プロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルロジックアレイ（ＦＰＧＡ）、又はその他の同等の集積又はディスクリート論理回路によって実行することができる。従って、ここにおいて用いられる場合の用語“プロセッサ”は、上記の構造又はここにおいて説明される技法の実装に適するあらゆるその他の構造のうちのいずれかを意味することができる。さらに、幾つかの態様では、ここにおいて説明される機能は、符号化および復号のために構成された専用のハードウェア及び／又はソフトウェアモジュール内において提供されること、又は組み合わされたコーデック内に組み入れることができる。さらに、技法は、１つ以上の回路又は論理素子内に完全に実装することが可能である。
【０１８７】
［０１９３］本開示の技法は、無線ハンドセット、集積回路（ＩＣ）又は一組のＩＣ（例えば、チップセット）を含む非常に様々なデバイス又は装置内に実装することができる。本開示では、開示される技法を実施するように構成されたデバイスの機能上の態様を強調するために様々なコンポーネント、モジュール、又はユニットが説明されるが、異なるハードウェアユニットによる実現は必ずしも要求しない。むしろ、上述されるように、様々なユニットは、適切なソフトウェア及び／又はファームウェアと関係させて、コーデックハードウェアユニット内において結合させること又は上述されるように１つ以上のプロセッサを含む相互運用的なハードウェアユニットの集合によって提供することができる。
【０１８８】
［０１９４］さらにその他の例では、本開示は、圧縮された映像データを格納するコンピュータによって読み取り可能な記憶媒体を対象にすることができ、映像データは、ここにおいて説明される技法のうちの１つにより圧縮される。コンピュータによって読み取り可能な媒体に格納されるデータ構造は、ここにおいて説明される技法のうちの１つにより圧縮される映像データを定義する構文要素を含むことができる。
【０１８９】
［０１９５］様々な例が説明されている。これらの及びその他の例は、以下の請求項の範囲内である。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
映像データを復号する方法であって、
１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）コーディングモードが使用されるかどうかを決定するために第１の構文要素を復号することであって、前記ＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味することと、
前記１つ以上の映像ブロックにインループフィルタリングが適用されるかどうかを決定するために第２の構文要素を復号することと、
前記ＰＣＭコーディングモードが使用されることを前記第１の構文要素が示すことに応答して、前記第２の構文要素に少なくとも部分的に基づいて前記１つ以上の映像ブロックにインループフィルタリングを適用することと、
前記第１の構文要素及び前記第２の構文要素に少なくとも部分的に基づいて前記１つ以上の映像ブロックを復号することと、を備える、方法。
［Ｃ２］
前記ＰＣＭコーディングモードが使用されることを前記第１の構文要素が示し、前記第２の構文要素が偽値を示す場合は、前記１つ以上の映像ブロックを復号することは、ＰＣＭコーディングモード及びインループフィルタリングを用いて前記１つ以上の映像ブロックを復号することをさらに備え、前記ＰＣＭコーディングモードが使用されることを前記第１の構文要素が示し、前記第２の構文要素が真値を示す場合は、前記１つ以上の映像ブロックを復号することは、インループフィルタリングを用いずにＰＣＭコーディングモードを用いて前記１つ以上の映像ブロックを復号することをさらに備えるＣ１に記載の方法。
［Ｃ３］
前記第１の構文要素は、コーディングユニット（ＣＵ）構文レベルにおけるｐｃｍ_ｆｌａｇ構文要素を備え、前記第２の構文要素は、前記ＣＵ構文レベルにおけるｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ構文要素を備えるＣ１に記載の方法。
［Ｃ４］
前記ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｌｏｏｐｆｉｌｔｅｒ_ｂｙｐａｓｓ_ｆｌａｇ構文要素は、前記ＣＵ構文の最後の方に、ただしｎｏ_ｒｅｓｉｄｕａｌ_ｄａｔａ_ｆｌａｇ構文要素よりも前に配置されるＣ３に記載の方法。
［Ｃ５］
フィルタリングがイネーブルにされるかどうかを決定するために第３の構文要素（ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓｂａｌｅ_ｆｌａｇ）を復号することと、
フィルタリングがイネーブルにされることを前記第３の構文要素が示すことに応答して、前記第２の構文要素に少なくとも部分的に基づいて前記フィルタリングを適用することと、
フィルタリングがディスエーブルにされることを第３の構文要素が示すことに応答して、ＰＣＭコーディングモードを有する１つ以上のブロックに関するフィルタリングをディスエーブルにすることと、をさらに備えるＣ１に記載の方法。
［Ｃ６］
前記第３の構文要素は、シーケンスパラメータセット（ＳＰＳ）、ピクチャパラメータセット（ＰＰＳ）、及び前記１つ以上の映像ブロックのスライスヘッダのうちの１つにおいてｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓｂａｌｅ_ｆｌａｇ構文要素を備えるＣ５に記載の方法。
［Ｃ７］
映像データを符号化する方法であって、
１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）コーディングモードが使用されるかどうかを示すために第１の構文要素を符号化することであって、前記ＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味することと、
前記１つ以上の映像ブロックにインループフィルタリングが適用されるかどうかを示すために第２の構文要素を符号化することと、
前記ＰＣＭコーディングモードが使用されることを前記第１の構文要素が示すことに応答して、前記第２の構文要素に少なくとも部分的に基づいて前記１つ以上の映像ブロックにインループフィルタリングを適用することと、
前記第１の構文要素及び前記第２の構文要素に少なくとも部分的に基づいて前記１つ以上の映像ブロックを符号化することと、を備える、方法。
［Ｃ８］
前記ＰＣＭコーディングモードが使用されることを前記第１の構文要素が示し、前記第２の構文要素が偽値を示す場合は、前記１つ以上の映像ブロックを符号化することは、ＰＣＭコーディングモード及びインループフィルタリングを用いて前記１つ以上の映像ブロックを符号化することをさらに備え、前記ＰＣＭコーディングモードが使用されることを前記第１の構文要素が示し、前記第２の構文要素が真値を示す場合は、前記１つ以上の映像ブロックを符号化することは、インループフィルタリングを用いずにＰＣＭコーディングモードを用いて前記１つ以上の映像ブロックを復号することをさらに備えるＣ７に記載の方法。
［Ｃ９］
前記第１の構文要素は、コーディングユニット（ＣＵ）構文レベルにおけるｐｃｍ_ｆｌａｇ構文要素を備え、前記第２の構文要素は、前記ＣＵ構文レベルにおけるｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ構文要素を備えるＣ７に記載の方法。
［Ｃ１０］
前記ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｌｏｏｐｆｉｌｔｅｒ_ｂｙｐａｓｓ_ｆｌａｇ構文要素は、前記ＣＵ構文の最後の方に、ただしｎｏ_ｒｅｓｉｄｕａｌ_ｄａｔａ_ｆｌａｇ構文要素よりも前に配置されるＣ９に記載の方法。
［Ｃ１１］
フィルタリングがイネーブルにされるかどうかを示すために第３の構文要素（ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓｂａｌｅ_ｆｌａｇ）を符号化することと、
フィルタリングがイネーブルにされることを前記第３の構文要素が示すことに応答して、前記第２の構文要素に少なくとも部分的に基づいてフィルタリングを適用することと、
フィルタリングがディスエーブルにされることを第３の構文要素が示すことに応答して、ＰＣＭコーディングモードを有する１つ以上の映像ブロックに関するフィルタリングをディスエーブルにすることと、をさらに備えるＣ７に記載の方法。
［Ｃ１２］
前記第３の構文要素は、シーケンスパラメータセット（ＳＰＳ）、ピクチャパラメータセット（ＰＰＳ）、及び前記１つ以上の映像ブロックのスライスヘッダのうちの１つにおいてｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓｂａｌｅ_ｆｌａｇ構文要素を備えるＣ１１に記載の方法。
［Ｃ１３］
映像コーディングデバイスであって、
前記１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）コーディングモードが使用されるかどうかを示す第１の構文要素をコーディングし、
前記１つ以上の映像ブロックにインループフィルタリングが適用されるかどうかを示す第２の構文要素をコーディングし、及び
前記ＰＣＭコーディングモードが使用されることを第１の構文要素が示すことに応答して、前記第２の構文要素に少なくとも部分的に基づいて前記１つ以上の映像ブロックにインループフィルタリングを適用するように構成された映像コーダを備え、前記ＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する、映像コーディングデバイス。
［Ｃ１４］
前記ＰＣＭコーディングモードが使用されることを前記第１の構文要素が示し、前記第２の構文要素が偽値を示す場合は、前記映像コーダは、ＰＣＭコーディングモード及びインループフィルタリングを用いて前記１つ以上の映像ブロックをコーディングするようにさらに構成されるＣ１３に記載の映像コーディングデバイス。
［Ｃ１５］
前記第１の構文要素は、コーディングユニット（ＣＵ）構文レベルにおけるｐｃｍ_ｆｌａｇ構文要素を備え、前記第２の構文要素は、ＣＵ構文レベルにおけるｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ構文要素を備えるＣ１３に記載の映像コーディングデバイス。
［Ｃ１６］
前記ｃｕ_ｔｒａｎｓｑｕａｎｔ_ｌｏｏｐｆｉｌｔｅｒ_ｂｙｐａｓｓ_ｆｌａｇ構文要素は、前記ＣＵ構文の最後の方に、ただしｎｏ_ｒｅｓｉｄｕａｌ_ｄａｔａ_ｆｌａｇ構文要素よりも前に配置されるＣ１５に記載の映像コーディングデバイス。
［Ｃ１７］
フィルタリングがイネーブルにされるかどうかを示す第３の構文要素（ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓｂａｌｅ_ｆｌａｇ）をコーディングすることと、
フィルタリングがイネーブルにされることを前記第３の構文要素が示すことに応答して、前記第２の構文要素に少なくとも部分的に基づいて前記フィルタリングを適用することと、
フィルタリングがディスエーブルにされることを前記第３の構文要素が示すことに応答して、ＰＣＭコーディングモードを有する１つ以上のブロックに関するフィルタリングをディスエーブルにすることと、をさらに備えるＣ１３に記載の映像コーディングデバイス。
［Ｃ１８］
前記第３の構文要素は、シーケンスパラメータセット（ＳＰＳ）、ピクチャパラメータセット（ＰＰＳ）、及び前記１つ以上の映像ブロックのスライスヘッダのうちの１つにおいてｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓｂａｌｅ_ｆｌａｇ構文要素を備えるＣ１７に記載の映像コーディングデバイス。
［Ｃ１９］
前記映像コーディングデバイスは、映像復号器であり、前記第１の構文要素をコーディングすることは、前記１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）モードが使用されるかどうかを決定するために前記第１の構文要素を復号することを備え、前記第２の構文要素をコーディングすることは、１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるかどうかを決定するために前記第２の構文要素を復号することを備え、前記映像復号器は、
前記第１の構文要素及び前記第２の構文要素に少なくとも部分的に基づいて前記１つ以上の映像ブロックを復号するようにさらに構成されるＣ１３に記載の映像コーディングデバイス。
［Ｃ２０］
前記映像コーディングデバイスは、映像符号器であり、前記第１の構文要素をコーディングすることは、前記１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）モードが使用されるかどうかを示す前記第１の構文要素を符号化することを備え、前記第２の構文要素をコーディングすることは、１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるかどうかを示す前記第２の構文要素を符号化することを備え、前記映像符号器は、
前記第１の構文要素及び前記第２の構文要素に少なくとも部分的に基づいて前記１つ以上の映像ブロックを符号化するようにさらに構成されるＣ１３に記載の映像コーディングデバイス。
［Ｃ２１］
コンピュータによって読み取り可能な記憶媒体であって、実行されたときに、
前記１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）コーディングモードが使用されるかどうかを示す第１の構文要素をコーディングし、
前記１つ以上の映像ブロックにインループフィルタリングが適用されるかどうかを示す第２の構文要素をコーディングし、及び
前記ＰＣＭコーディングモードが使用されることを前記第１の構文要素が示すことに応答して、前記第２の構文要素に少なくとも部分的に基づいて前記１つ以上の映像ブロックにインループフィルタリングを適用することを映像データをコーディングするためのデバイスのプロセッサに行わせる命令を格納している、コンピュータによって読み取り可能な記憶媒体。
［Ｃ２２］
前記ＰＣＭコーディングモードが使用されることを前記第１の構文要素が示し、前記第２の構文要素が偽値を示す場合は、前記命令は、ＰＣＭモード及びインループフィルタリングを用いて前記１つ以上の映像ブロックをコーディングすることを映像データをコーディングするための前記デバイスの前記プロセッサにさらに行わせるＣ２１に記載のコンピュータによって読み取り可能な記憶媒体。
［Ｃ２３］
前記第１の構文要素は、コーディングユニット（ＣＵ）構文レベルにおけるｐｃｍ_ｆｌａｇ構文要素を備え、前記第２の構文要素は、前記ＣＵ構文レベルにおけるｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ構文要素を備えるＣ２１に記載のコンピュータによって読み取り可能な記憶媒体。
［Ｃ２４］
前記命令は、
フィルタリングがイネーブルにされるかどうかを示す第３の構文要素（ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓｂａｌｅ_ｆｌａｇ）をコーディングし、
フィルタリングがイネーブルにされることを前記第３の構文要素が示すことに応答して、前記第２の構文要素に少なくとも部分的に基づいてフィルタリングを適用し、及び
フィルタリングがディスエーブルにされることを前記第３の構文要素が示すことに応答して、ＰＣＭコーディングモードを有する１つ以上のブロックに関するフィルタリングをディスエーブルにすることを、映像データをコーディングするための前記デバイスの前記プロセッサにさらに行わせるＣ２１に記載のコンピュータによって読み取り可能な記憶媒体。
［Ｃ２５］
映像コーディングデバイスであって、
前記１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）モードが使用されるかどうかを示す第１の構文要素をコーディングするための手段であって、前記ＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する手段と、
前記１つ以上の映像ブロックにインループフィルタリングが適用されるかどうかを示す第２の構文要素をコーディングするための手段と、
前記ＰＣＭコーディングモードが使用されることを前記第１の構文要素が示すことに応答して、前記第２の構文要素に少なくとも部分的に基づいて前記１つ以上の映像ブロックにフィルタリングを適用するための手段と、を備える、映像コーディングデバイス。
［Ｃ２６］
前記ＰＣＭコーディングモードが使用されることを前記第１の構文要素が示し、前記第２の構文要素が偽値を示す場合は、前記映像コーディングデバイスは、ＰＣＭコーディングモード及びインループフィルタリングを用いて前記１つ以上の映像ブロックをコーディングするための手段をさらに含むＣ２５に記載の映像コーディングデバイス。
［Ｃ２７］
前記第１の構文要素は、コーディングユニット（ＣＵ）構文レベルにおけるｐｃｍ_ｆｌａｇ構文要素を備え、前記第２の構文要素は、前記ＣＵ構文レベルにおけるｃｕ_ｔｒａｎｓｑｕａｎｔ_ｌｏｏｐｆｉｌｔｅｒ_ｂｙｐａｓｓ_ｆｌａｇ構文要素を備えるＣ２５に記載の映像コーディングデバイス。
［Ｃ２８］
フィルタリングがイネーブルにされるかどうかを示す第３の構文要素（ｐｃｍ_ｌｏｏｐ_ｆｉｌｔｅｒ_ｄｉｓｂａｌｅ_ｆｌａｇ）をコーディングするための手段と、
フィルタリングがイネーブルにされることを前記第３の構文要素が示すことに応答して、前記第２の構文要素に少なくとも部分的に基づいて前記フィルタリングを適用するための手段と、
フィルタリングがディスエーブルにされることを前記第３の構文要素が示すことに応答して、ＰＣＭコーディングモードを有する１つ以上のブロックに関するフィルタリングをディスエーブルにするための手段と、をさらに備えるＣ２５に記載の映像コーディングデバイス。
［Ｃ２９］
映像データを復号する方法であって、
１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるか又は前記１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）コーディングモードが使用されるかを決定するために第１の構文要素を復号することであって、前記ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードであり、前記ＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味することと、
前記第１の構文要素が真値を示すことに応答して、前記ロスレスコーディングモード又は前記ＰＣＭモードのうちのどちらが使用されるかを決定するために第２の構文要素を復号することと、を備える、方法。
［Ｃ３０］
前記１つ以上のＰＣＭサンプルに関してインループフィルタリング動作が使用されるかどうかを示す第３の構文要素を復号することと、
前記第１の構文要素、前記第２の構文要素、及び前記第３の構文要素に基づいて前記１つ以上のＰＣＭサンプルにインループフィルタリング動作を適用することと、をさらに備えるＣ２９に記載の方法。
［Ｃ３１］
前記第１の構文要素は、コーディングユニット（ＣＵ）構文レベルにおけるｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ構文要素を備え、前記第２の構文要素は、前記ＣＵ構文レベルにおけるｐｃｍ_ｆｌａｇ構文要素を備え、前記第３の構文要素は、前記ＣＵ構文レベルにおけるｐｃｍ_ｌｏｏｐ_ｄｉｓｂａｌｅ_ｆｌａｇ構文要素を備えるＣ３０に記載の方法。
［Ｃ３２］
前記第１の構文要素が偽値を示すことに応答して、変換及び量子化プロセスを用いて前記１つ以上の映像ブロックを復号することと、前記第２の構文要素を復号しないことと、をさらに備えるＣ２９に記載の方法。
［Ｃ３３］
前記第１の構文要素及び前記第２の構文要素に少なくとも部分的に基づいて前記１つ以上の映像ブロックを復号することをさらに備えるＣ２９に記載の方法。
［Ｃ３４］
前記ロスレスコーディングモードが使用されることを前記第２の構文要素が示すと決定したことに応答して、前記ロスレスコーディングモードを用いて前記１つ以上の映像ブロックを復号することと、
前記ＰＣＭコーディングモードが使用されることを前記第２の構文要素が示すと決定したことに応答して、前記ＰＣＭコーディングモードを用いて前記１つ以上の映像ブロックを復号することと、をさらに備えるＣ３３に記載の方法。
［Ｃ３５］
映像データを符号化する方法であって、
１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるか又は前記１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）コーディングモードが使用されるかを示すために第１の構文要素を符号化することであって、前記ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味し、前記ＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味することと、
前記第１の構文要素が真値を示すことに応答して、前記ロスレスコーディングモード又は前記ＰＣＭモードのうちのどちらが使用されるかを示すために第２の構文要素を符号化することと、を備える、方法。
［Ｃ３６］
前記１つ以上のＰＣＭサンプルに関してインループフィルタリング動作が使用されるかどうかを示すために第３の構文要素を符号化することと、
前記第１の構文要素、前記第２の構文要素、及び前記第３の構文要素に基づいて前記１つ以上のＰＣＭサンプルにインループフィルタリング動作を適用することと、をさらに備えるＣ３５に記載の方法。
［Ｃ３７］
前記第１の構文要素は、コーディングユニット（ＣＵ）構文レベルにおけるｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ構文要素を備え、前記第２の構文要素は、前記ＣＵ構文レベルにおけるｐｃｍ_ｆｌａｇ構文要素を備え、前記第３の構文要素は、前記ＣＵ構文レベルにおけるｐｃｍ_ｌｏｏｐ_ｄｉｓｂａｌｅ_ｆｌａｇ構文要素を備えるＣ３６に記載の方法。
［Ｃ３８］
前記第１の構文要素が偽値を示すことに応答して、変換及び量子化プロセスを用いて前記１つ以上の映像ブロックを符号化することと、前記第２の構文要素を符号化しないことと、をさらに備えるＣ３５に記載の方法。
［Ｃ３９］
前記第１の構文要素及び前記第２の構文要素に少なくとも部分的に基づいて前記１つ以上の映像ブロックを符号化することをさらに備えるＣ３５に記載の方法。
［Ｃ４０］
前記１つ以上の映像ブロックが前記ロスレスコーディングモードを用いて符号化されたときに前記ロスレスコーディングモードが使用されることを示すために前記第２の構文要素を符号化することをさらに備え、前記１つ以上の映像ブロックが前記ＰＣＭコーディングモードを用いて符号化されたときに前記ＰＣＭコーディングモードが使用されることを示すために前記第２の構文要素を符号化することをさらに備えるＣ３９に記載の方法。
［Ｃ４１］
映像コーディングデバイスであって、
１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるか又は前記１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）コーディングモードが使用されるかを示す第１の構文要素をコーディングし、及び
前記第１の構文要素が真値を示すことに応答して、前記ロスレスコーディングモード又は前記ＰＣＭモードのうちのどちらが使用されるかを示す第２の構文要素をコーディングするように構成された映像コーダを備え、前記ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味し、前記ＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する、映像コーディングデバイス。
［Ｃ４２］
前記映像コーダは、
前記１つ以上のＰＣＭサンプルに関してインループフィルタリング動作が使用されるかどうかを示す第３の構文要素をコーディングし、及び
前記第１の構文要素、前記第２の構文要素、及び前記第３の構文要素に基づいて前記１つ以上のＰＣＭサンプルにインループフィルタリング動作を適用するようにさらに構成されるＣ４１に記載の映像コーディングデバイス。
［Ｃ４３］
前記第１の構文要素は、コーディングユニット（ＣＵ）構文レベルにおけるｃｕ_ｔｒａｎｓｑｕａｎｔ_ｂｙｐａｓｓ_ｆｌａｇ構文要素を備え、前記第２の構文要素は、前記ＣＵ構文レベルにおけるｐｃｍ_ｆｌａｇ構文要素を備え、前記第３の構文要素は、前記ＣＵ構文レベルにおけるｐｃｍ_ｌｏｏｐ_ｄｉｓｂａｌｅ_ｆｌａｇ構文要素を備えるＣ４２に記載の映像コーディングデバイス。
［Ｃ４４］
前記映像コーダは、
前記第１の構文要素が偽値を示すことに応答して、変換及び量子化プロセスを用いて前記１つ以上の映像ブロックを復号し、及び前記第２の構文要素を復号しないようにさらに構成されるＣ４１に記載の映像コーディングデバイス。
［Ｃ４５］
前記コーディングデバイスは、映像復号器を備え、前記第１の構文要素をコーディングすることは、前記第１の構文要素を復号することを備え、前記第２の構文要素をコーディングすることは、前記第１の構文要素が真値を示すことに応答して、前記ロスレスコーディングモードが使用されるか又は前記ＰＣＭモードが使用されるかを示す第２の構文要素を復号することを備え、前記映像復号器は、
前記第１の構文要素及び前記第２の構文要素に少なくとも部分的に基づいて前記１つ以上の映像ブロックを復号するようにさらに構成されるＣ４１に記載の映像コーディングデバイス。
［Ｃ４６］
前記コーディングデバイスは、映像符号器を備え、前記第１の構文要素をコーディングすることは、前記第１の構文要素を符号化することを備え、前記第２の構文要素をコーディングすることは、前記第１の構文要素が真値を示すことに応答して、前記ロスレスコーディングモードが使用されるか又は前記ＰＣＭモードが使用されるかを示す第２の構文要素を符号化することを備え、前記映像符号器は、
前記第１の構文要素及び前記第２の構文要素に少なくとも部分的に基づいて前記１つ以上の映像ブロックを符号化するようにさらに構成されるＣ４１に記載の映像コーディングデバイス。
［Ｃ４７］
コンピュータによって読み取り可能な記憶媒体であって、実行されたときに、
１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるか又は前記１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）コーディングモードが使用されるかを示す第１の構文要素をコーディングし、及び
前記第１の構文要素が真値を示すことに応答して、前記ロスレスコーディングモード又は前記ＰＣＭモードのうちのどちらが使用されるかを示す第２の構文要素をコーディングすることを映像データをコーディングするためのデバイスのプロセッサに行わせる命令を格納し、前記ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味し、前記ＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する、コンピュータによって読み取り可能な記憶媒体。
［Ｃ４８］
前記命令は、
前記１つ以上のＰＣＭサンプルに関してインループフィルタリング動作が使用されるかどうかを示す第３の構文要素をコーディングし、及び
前記第１の構文要素、前記第２の構文要素、及び前記第３の構文要素に基づいて前記１つ以上のＰＣＭサンプルにインループフィルタリング動作を適用することを映像データをコーディングするためのデバイスのプロセッサにさらに行わせるＣ４７に記載のコンピュータによって読み取り可能な記憶媒体。
［Ｃ４９］
映像コーディングデバイスであって、
１つ以上の映像ブロックに関してロスレスコーディングモードが使用されるか又は前記１つ以上の映像ブロックに関してパルスコード変調（ＰＣＭ）コーディングモードが使用されるかを示す第１の構文要素をコーディングするための手段であって、前記ロスレスコーディングモードは、コーディングプロセスにおいて変換、量子化、及びインループフィルタリングをバイパスするモードを意味し、前記ＰＣＭコーディングモードは、ピクセル値をＰＣＭサンプルとしてコーディングするモードを意味する手段と、
前記第１の構文要素が真値を示すことに応答して、前記ロスレスコーディングモード又は前記ＰＣＭモードのうちのどちらが使用されるかを示す第２の構文要素をコーディングするための手段と、を備える、映像コーディングデバイス。
［Ｃ５０］
１つ以上のＰＣＭサンプルに関してインループフィルタリング動作が使用されるかどうかを示す第３の構文要素をコーディングするための手段と、
前記第１の構文要素、前記第２の構文要素、及び前記第３の構文要素に基づいて前記１つ以上のＰＣＭサンプルにインループフィルタリング動作を適用するための手段と、をさらに備えるＣ４９に記載の映像コーディングデバイス。
【図１】
0006266605.tif 000009
【図２】
0006266605.tif 000010
【図３】
0006266605.tif 000011
【図４】
0006266605.tif 000012
【図５】
0006266605.tif 000013
【図６】
0006266605.tif 000014
【図７】
0006266605.tif 000015