(57)【要約】      （修正有）【課題】変換単位（ＴＵ）の残差係数を復号するための方法、残差サンプルから残差係数を符号化する方法を提供する。【解決手段】第１の色差チャンネルの４ｘ４色差ブロックのそれぞれに対応する２つの色差残差係数アレイを、輝度チャンネルの４つの輝度残差係数アレイが復号された後に復号し、第２の色差チャンネルの４ｘ４色差ブロックのそれぞれに対応する２つの色差残差係数アレイを、第１の色差チャネルの２つの色差残差係数アレイが復号された後に復号する。【選択図】図１１
2018085738.tif 000002
【特許請求の範囲】
【請求項１】
４：２：２フォーマットのビデオビットストリームに含まれ、周波数領域における符号化された複数の残差係数アレイから空間領域における残差サンプルを取得するための方法であって、
輝度チャンネルにおいて、８ｘ８サイズの輝度領域を占有する４つの４ｘ４サイズの輝度ブロックに対応する４つの輝度残差係数アレイを復号するステップと、
前記４つの４ｘ４サイズの輝度ブロックのうちの２つの輝度ブロックに対応する４ｘ４サイズの色差ブロックと他の２つの４ｘ４サイズの輝度ブロックに対応する４ｘ４サイズの色差ブロックを有する第１の色差チャンネルであって、当該第１の色差チャンネルの４ｘ４色差ブロックのそれぞれに対応する２つの色差残差係数アレイを、前記輝度チャンネルの前記４つの輝度残差係数アレイが復号された後に復号するステップと、
前記４つの４ｘ４サイズの輝度ブロックのうちの２つの輝度ブロックに対応する４ｘ４サイズの色差ブロックと他の２つの４ｘ４サイズの輝度ブロックに対応する４ｘ４サイズの色差ブロックを有する第２の色差チャンネルであって、当該第２の色差チャンネルの４ｘ４色差ブロックのそれぞれに対応する２つの色差残差係数アレイを、前記第１の色差チャネルの前記２つの色差残差係数アレイが復号された後に復号するステップと、
前記復号された４つの輝度残差係数アレイ、前記第１の色差チャネルの前記復号された２つの色差残差係数アレイ、および、前記第２の色チャネルの前記復号された２つの色差残差係数アレイの少なくとも１つに４ｘ４サイズの変換を適用することにより、残差サンプルを生成するステップと、
を含むことを特徴とする方法。
【請求項２】
空間領域における４：２：２フォーマットの残差サンプルアレイから周波数領域における残差係数アレイを符号化する方法であって、
８ｘ８サイズの空間領域に対応する輝度チャンネルの輝度残差サンプルアレイ、第１の色差チャネルの当該空間領域に対応する色差残差サンプルアレイ、および、第２の色チャネルの当該空間領域に対応する色差残差サンプルアレイに４ｘ４サイズの変換を適用することにより、周波数領域における、４つの４ｘ４輝度ブロックに対応する前記輝度チャンネルの４つの輝度残差係数アレイ、２つの４ｘ４色差ブロックに対応する前記第１の色差チャンネルの色差残差係数アレイ、および、２つの４ｘ４色差ブロックに対応する前記第２の色差チャンネルの２つの色差残差係数アレイを取得するステップと、
前記輝度チャンネルの前記４つの輝度残差係数アレイを符号化するステップと、
前記輝度チャンネルの前記４つの輝度残差係数アレイが符号化された後に、前記第１の色差チャネルの前記２つの色差残差係数アレイを符号化するステップと、
前記第１の色差チャネルの前記色差残差係数アレイが符号化された後に、前記第２の色差チャネルの前記２つの色差残差係数アレイを符号化するステップと、を有し、
前記輝度チャンネルにおける前記輝度ブロックの４つの輝度残差係数アレイは、４ｘ４サイズの変換単位にそれぞれ対応し、前記第１の色差チャンネルの２つの残差係数アレイは前記４つの４ｘ４変換単位のうちの２つの変換単位と他の２つの変換単位に対応し、さらに、前記第２の色差チャンネルの２つの残差係数アレイは前記４つの４ｘ４変換単位のうちの２つの変換単位と他の２つの変換単位に対応する、
ことを特徴とする方法。
【請求項３】
請求項１のいずれか一項に記載の方法を実施するように構成されているビデオデコーダ。
【請求項４】
請求項２のいずれか一項に記載の方法を実施するように構成されているビデオエンコーダ。
【請求項５】
コンピュータ制御式ビデオ装置によって、ビデオビットストリームを復号するために実行可能であり、前記プログラムは、前記装置によって、請求項１または請求項２に記載の方法を実施するように実行可能であることを特徴とするプログラム。
【請求項６】
請求項５に記載のプログラムを記憶したコンピュータ可読記憶媒体。
【発明の詳細な説明】
【関連出願の相互参照】
【０００１】
本出願は、２０１２年１１月８日に提出された豪州特許出願第２０１２２４７０４０号の出願日の米国特許法第１１９条に基づく利益を主張し、当該特許文献は、参照によりその全体が、本明細書に全体が記載されているものとして、本明細書に組み込まれる。当該特許文献は、２０１２年９月２８日に提出された豪州特許出願第２０１２２３２９９２号の分割出願であり、当該特許文献は、参照によりその全体が、本明細書に全体が記載されているものとして、本明細書に組み込まれる。
【技術分野】
【０００２】
本発明は、概してデジタルビデオ信号処理に関し、特に、変換単位（ＴＵ）の残差係数を符号化および復号するための方法、装置およびシステムに関し、変換単位（ＴＵ）は、１つまたは複数の変換単位（ＴＵ）を含み、４：２：２色差フォーマットを含む複数の色差フォーマット向けに構成されてもよく、変換単位（ＴＵ）の残差係数は、周波数領域または空間領域のいずれかにおけるデータを表してもよい。
【背景技術】
【０００３】
現在、ビデオデータを送信および記憶するためのアプリケーションを含む、ビデオ符号化のための多くのアプリケーションが、存在している。多くのビデオ符号化規格も開発されており、現在開発中のものもある。ビデオ符号化規格における近年の発展によって「映像符号化共同研究部会」（ＪＣＴ−ＶＣ）と呼ばれるグループが形成されている。映像符号化共同研究部会（ＪＣＴ−ＶＣ）は、ビデオ符号化専門家グループ（ＶＣＥＧ）として知られている、国際電気通信連合（ＩＴＵ）の電気通信標準化部門（ＩＴＵ−Ｔ）の第１６研究委員会第６課題（ＳＧ１６／Ｑ６）のメンバと、動画専門家グループ（ＭＰＥＧ）としても知られている、国際標準化機構／国際電気標準会議第１合同技術委員会／第２９専門委員会／第１１作業部会（ＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９／ＷＧ１１）のメンバとを含む。
【０００４】
Ｊｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｖｅ  Ｔｅａｍ  ｏｎ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＪＣＴ−ＶＣ）の目標は、「Ｈ．２６４／ＭＰＥＧ−４  ＡＶＣ」として知られている、既存のビデオ符号化規格をはるかにしのぐ新たなビデオ符号化規格を作成することである。Ｈ．２６４／ＭＰＥＧ−４  ＡＶＣ規格自体は、ＭＰＥＧ−４およびＩＴＵ−Ｔ  Ｈ．２６３のような先行するビデオ符号化規格に対する大きな改善である。開発中の新たなビデオ符号化規格は「高効率ビデオ符号化」（ＨＥＶＣ）と名付けられている。映像符号化共同研究部会ＪＣＴ−ＶＣは、規格の実装をリアルタイムまたは高フレームレートにおける高解像度での動作にスケーリングするときに問題を生じる、高効率ビデオ符号化（ＨＥＶＣ）向けに提案されている技術から発生する実施課題についても考えている。１つの実施課題は、ビデオデータを周波数領域と空間領域との間で変換するために複数の「変換」サイズをサポートするのに使用される論理の複雑さおよびサイズである。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、既存の装置の１つまたは複数の欠点を実質的に克服するか、または少なくとも改善することである。
【課題を解決するための手段】
【０００６】
本開示の一態様によれば、ビデオビットストリームから輝度変換および複数の色差変換を復号する方法が提供され、複数の色差変換は単一の色チャネルの色差データを含み、前記方法は、輝度変換の輝度変換スキップフラグの値を求めるステップであって、輝度変換スキップフラグは、輝度変換のデータがビデオビットストリーム内に空間領域表現として符号化されているか否かを示す、ステップと、複数の色差変換のうちの第１の色差変換の色差変換スキップフラグの値を求めるステップであって、色差変換スキップフラグは、色差変換のデータがビデオビットストリーム内に空間領域表現として符号化されているか否かを示す、ステップと、求められた輝度変換スキップフラグの値に従って輝度変換を復号し、求められた第１の色差変換の色差変換スキップフラグの値に従って複数の色差変換を復号するステップとを含む。
【０００７】
別の態様によれば、ビデオビットストリームから輝度変換および２つの色差変換を有する変換単位を復号する方法が提供され、２つの色差変換は４：２：２色差フォーマットによる単一の色チャネルの色差データを含み、前記方法は、輝度変換の輝度変換スキップフラグの値を求めるステップであって、輝度変換スキップフラグは、輝度変換のデータがビデオビットストリーム内に空間領域表現として符号化されているか否かを示す、ステップと、２つの色差変換のうちの第１の色差変換の色差変換スキップフラグの値を求めるステップであって、色差変換スキップフラグは、色差変換のデータがビデオビットストリーム内に空間領域表現として符号化されているか否かを示す、ステップと、求められた輝度変換スキップフラグの値に従って輝度変換を復号し、求められた第１の色差変換の色差変換スキップフラグの値に従って２つの色差変換を復号するステップとを含む。
【０００８】
また別の態様によれば、ビデオビットストリームから輝度変換および複数の色差変換を復号する方法が提供され、複数の色差変換は単一の色チャネルの色差データを含み、前記方法は、変換のうちの少なくとも１つの矩形変換を分割して複数の正方形変換にするステップと、正方形変換を復号するステップとを含む。
【０００９】
分割するステップは、復号するステップが正方形変換のみに対して動作するように、すべての矩形変換を分割して正方形変換にするステップを含むことが望ましい。
【００１０】
別の態様によれば、ビデオビットストリームから色差残差係数を含む変換単位を復号する方法が提供され、変換単位は、単一の色差チャネルのための少なくとも１つの色差残差係数アレイを含み、前記方法は、変換単位のサイズを求めるステップであって、サイズは、対応する符号化単位における変換単位の階層レベルに関連する、ステップと、変換単位の色差チャネルの所定の最大数の変換を使用して、ビデオビットストリームから少なくとも１つの色差残差係数アレイを復号するステップと、復号された色差残差係数アレイの逆変換を選択するステップであって、逆変換は、所定の逆変換セットから選択される、ステップと、変換単位の色差チャネルの色差残差サンプルを復号するために、色差残差係数アレイの各々に選択された逆変換を適用するステップとを含む。
【００１１】
また別の態様において、ビデオビットストリーム内に符号化されている色チャネル内の変換単位（ＴＵ）内のある領域について残差データを復号するための方法が開示され、前記方法は、第１に、ビットストリームから、変換スキップフラグが有効化されていることを判定するステップと、第２に、上記領域が色チャネル内の第１の領域であり、１の符号化ブロックフラグ（ＣＢＦ）を有する変換単位（ＴＵ）内にあるか否かを判定し、そうである場合、変換スキップフラグの値を復号および記憶し、そうでない場合、変換スキップフラグの値を取り出すステップと、変換スキップフラグの値を使用して上記領域の残差データを復号するステップとを含む。
【００１２】
ここで、第１の判定ステップは、符号化単位変換量子化バイパスフラグが有効化されておらず、変換サイズが４ｘ４であることを判定するステップをさらに含む。
【００１３】
本開示の別の態様によれば、４：２：２色差フォーマット向けに構成されているビデオビットストリームから複数の残差係数アレイを逆変換する方法が提供され、前記方法は、複数の輝度残差係数アレイを復号するステップであって、各輝度残差係数アレイは、複数の４ｘ４輝度ブロックのうちの１つの４ｘ４輝度ブロックに対応し、各４ｘ４輝度ブロックは、複数の４ｘ４変換単位のうちの１つの４ｘ４変換単位と結びつけられており、複数の４ｘ４輝度ブロックは、８ｘ８輝度領域をまとめて占有する、復号するステップと、輝度残差係数アレイが復号された後に、第１の色チャネルのための複数の色差残差係数アレイを復号するステップであって、各色差残差係数アレイは、４ｘ４色差ブロックに対応し、第１の色チャネルの各４ｘ４色差ブロックは、複数の４ｘ４変換単位のうちの２つと結びつけられている、復号するステップと、第１の色チャネルのための色差残差係数アレイが復号された後に、第２の色チャネルための複数の色差残差係数アレイを復号するステップであって、各色差残差係数アレイは、４ｘ４色差ブロックに対応し、第２の色チャネルの各色差ブロックは、複数の４ｘ４変換単位のうちの２つと結びつけられている、復号するステップと、復号された複数の輝度残差係数アレイ、復号された、第１の色チャネルための複数の色差残差係数アレイ、および、復号された、第２の色チャネルのための複数の色差残差係数アレイの各々に逆変換を適用するステップとを含む。
【００１４】
複数の輝度残差係数アレイ内の輝度残差係数アレイの数は４であることが好ましい。複数の色差残差係数アレイ内の色差残差係数アレイの数は２であることが望ましい。
【００１５】
１つの残差係数アレイは、１つの４ｘ４ブロックを逆変換するのに必要なすべての係数を含むことが有利である。
【００１６】
本開示の別の態様によれば、４：２：２色差フォーマット向けに構成されているビデオビットストリームに複数の残差係数アレイを順変換する方法が提供され、前記方法は、複数の輝度残差係数アレイ、第１の色チャネルのための複数の色差残差係数アレイ、および、第２の色チャネルのための複数の色差残差係数アレイの各々に順変換を適用するステップと、複数の輝度残差係数アレイを符号化するステップであって、各輝度残差係数アレイは、複数の４ｘ４輝度ブロックのうちの１つの４ｘ４輝度ブロックに対応し、各４ｘ４輝度ブロックは、複数の４ｘ４変換単位のうちの１つの４ｘ４変換単位と結びつけられており、複数の４ｘ４輝度ブロックは、８ｘ８輝度領域をまとめて占有する、符号化するステップと、輝度残差係数アレイが符号化された後に、第１の色チャネルの複数の色差残差係数アレイを符号化するステップであって、各色差残差係数アレイは、４ｘ４色差ブロックに対応し、第１の色チャネルの各４ｘ４色差ブロックは、複数の４ｘ４変換単位のうちの２つと結びつけられている、符号化するステップと、第１の色チャネルための色差残差係数アレイが符号化された後に、第２の色チャネルための複数の色差残差係数アレイを符号化するステップであって、各色差残差係数アレイは、４ｘ４色差ブロックに対応し、第２の色チャネルの各色差ブロックは、複数の４ｘ４変換単位のうちの２つと結びつけられている、符号化するステップとを含む。
【００１７】
補助エンコーダを含む他の態様も開示される。
【図面の簡単な説明】
【００１８】
ここで、本発明の少なくとも１つの実施形態を、添付の図面を参照して説明する。
【図１】ビデオ符号化および復号システムを示す概略ブロック図である。
【図２Ａ】図１のビデオ符号化および復号システムのうちの一方または両方が実践され得る汎用コンピュータシステムの概略ブロック図である。
【図２Ｂ】図１のビデオ符号化および復号システムのうちの一方または両方が実践され得る汎用コンピュータシステムの概略ブロック図である。
【図３】ビデオエンコーダの機能モジュールを示す概略ブロック図である。
【図４】ビデオデコーダの機能モジュールを示す概略ブロック図である。
【図５Ａ】フレームデータを表すための色差フォーマットを概略的に示す図である。
【図５Ｂ】フレームデータを表すための色差フォーマットを概略的に示す図である。
【図６Ａ】符号化単位の例示的な変換ツリーの概略図である。
【図６Ｂ】輝度サンプル格子上に配置されている例示的な変換ツリーの概略図である。
【図６Ｃ】色差サンプル格子上に配置されている例示的な変換ツリーの概略図である。
【図７】例示的な変換ツリーの輝度チャネルを表すデータ構造の概略図である。
【図８】例示的な変換ツリーの色差チャネルを表すデータ構造を示す図である。
【図９Ａ】例示的な変換ツリーを符号化するビットストリーム構造を概略的に示す図である。
【図９Ｂ】例示的な変換ツリーを符号化するビットストリーム構造を概略的に示す図である。
【図９Ｃ】例示的な変換ツリーを符号化する代替的なビットストリーム構造を概略的に示す図である。
【図９Ｄ】例示的な変換ツリーを符号化する代替的なビットストリーム構造を概略的に示す図である。
【図９Ｅ】例示的な変換ツリーを符号化する代替的なビットストリーム構造を概略的に示す図である。
【図１０】例示的な変換ツリーを符号化するための方法を示す概略的な流れ図である。
【図１１】例示的な変換ツリーを復号するための方法を示す概略的な流れ図である。
【図１２Ａ】４ｘ８変換単位の残差走査パターンを概略的に示す図である。
【図１２Ｂ】４ｘ８変換単位の残差走査パターンを概略的に示す図である。
【図１２Ｃ】４ｘ８変換単位の残差走査パターンを概略的に示す図である。
【図１３】例示的な変換単位を符号化するための方法を示す概略的な流れ図である。
【図１４】例示的な変換単位を復号するための方法を示す概略的な流れ図である。
【図１５】４ｘ４および８ｘ８変換単位（ＴＵ）に対する４ｘ４変換の可能な配列を概略的に示す図である。
【図１６】一実施態様の例示的な色差領域を概略的に示す図である。
【図１７】例示的な変換単位の残差データを復号するための方法を示す概略的な流れ図である。
【図１８】４ｘ８（非正方形）変換を有する４ｘ８色差領域に適用される変換スキップ動作を概略的に示す図である。
【発明を実施するための形態】
【００１９】
添付の図面のうちのいずれか１つまたは複数において、同じ参照符号を有するステップおよび／または特徴が参照されている場合、それらのステップおよび／または特徴は、本明細書の目的のために、逆の意図が見られない限り、同じ機能（複数の場合もあり）または動作（複数の場合もあり）を有する。
【００２０】
図１は、色差チャネルについての変換単位を複数の変換に暗黙的に細分割（ｉｎｆｅｒｒｅｄ  ｓｕｂｄｉｖｉｓｉｏｎ）することを表す構文要素を符号化するための技法を利用することができるビデオ符号化および復号システム１００の機能モジュールを示す概略ブロック図である。システム１００は、送信元デバイス１１０および宛先デバイス１３０を含む。符号化ビデオ情報を送信元デバイス１１０から宛先デバイス１３０へ伝達するのに通信チャネル１２０が使用される。場合によっては、送信元デバイス１１０および宛先デバイス１３０は、それぞれの携帯電話ハンドセットを含んでもよく、この場合、通信チャネル１２０はワイヤレスチャネルである。他の事例において、送信元デバイス１１０および宛先デバイス１３０は、ビデオ会議機器を含んでもよく、その場合、通信チャネル１２０は一般的に、インターネット接続のような有線チャネルである。その上、送信元デバイス１１０および宛先デバイス１３０は、無線テレビ放送、ケーブルテレビアプリケーション、インターネットビデオアプリケーションをサポートし、符号化ビデオが何らかの記憶媒体またはファイルサーバ上にキャプチャされるアプリケーションを含むデバイスを含む、広範なデバイスのいずれかを含んでもよい。
【００２１】
図示のように、送信元デバイス１１０は、ビデオソース１１２と、ビデオエンコーダ１１４と、送信機１１６とを含む。ビデオソース１１２は一般的に、イメージングセンサのようなキャプチャされたビデオフレームデータのソース、持続性記録媒体に記憶されている以前にキャプチャされたビデオシーケンス、または遠隔イメージングセンサからの配信動画を含む。ビデオソース１１２のようなイメージングセンサを含んでもよい送信元デバイス１１０の例は、スマートフォン、ビデオカムコーダ、およびネットワークビデオカメラを含む。ビデオエンコーダ１１４は、ビデオソース１１２からのキャプチャされたフレームデータを、符号化ビデオデータに変換し、これは図３を参照してさらに説明する。符号化ビデオデータは一般的に、送信機１１６によって、符号化ビデオ情報として通信チャネル１２０を通して送信される。符号化ビデオデータが、後に通信チャネル１２０を通して送信されるまで、「フラッシュ」メモリまたはハードディスクドライブのような何らかの記憶デバイスに記憶されることも可能である。
【００２２】
宛先デバイス１３０は、受信機１３２と、ビデオデコーダ１３４と、表示デバイス１３６とを含む。受信機１３２は、通信チャネル１２０から符号化ビデオ情報を受信し、受信したビデオデータをビデオデコーダ１３４に渡す。その後、ビデオデコーダ１３４は、復号されたフレームデータを表示デバイス１３６に出力する。表示デバイス１３６の例は、スマートフォン、タブレットコンピュータ、コンピュータモニタにおける、または、単独のテレビセットにおけるもののような、陰極線管、液晶ディスプレイを含む。送信元デバイス１１０および宛先デバイス１３０の各々の機能が、単一のデバイス内に具現化されることも可能である。
【００２３】
上記で言及した例示的なデバイスにかかわらず、送信元デバイス１１０および宛先デバイス１３０の各々は、一般的にはハードウェアおよびソフトウェア構成要素を組み合わせることによって、汎用コンピューティングシステム内で構成されてもよい。図２Ａはそのようなコンピュータシステム２００を示し、コンピュータシステム２００は、コンピュータモジュール２０１と、キーボード２０２、マウスポインタデバイス２０３、スキャナ２２６、ビデオソース１１２として構成されてもよいカメラ２２７、およびマイクロホン２８０のような入力デバイスと、プリンタ２１５、表示デバイス１３６として構成されてもよい表示デバイス２１４、およびスピーカ２１７を含む出力デバイスとを含む。外部変調復調（モデム）送受信デバイス２１６が、コンピュータモジュール２０１によって、接続２２１を介した通信ネットワーク２２０への、および、通信ネットワーク２２０からの通信のために使用されてもよい。通信チャネル１２０を表してもよい通信ネットワーク２２０は、インターネット、セルラ通信ネットワーク、またはプライベートＷＡＮのような広域ネットワーク（ＷＡＮ）であってもよい。接続２２１が電話回線である場合、モデム２１６は従来の「ダイヤルアップ」モデムであってもよい。或いは、接続２２１が高容量（たとえば、ケーブル）接続である場合、モデム２１６はブロードバンドモデムであってもよい。通信ネットワーク２２０へのワイヤレス接続には、ワイヤレスモデムも使用されてもよい。送受信デバイス２１６は、送信機１１６および受信機１３２の機能を提供することができ、通信チャネル１２０が接続２２１内に組み込まれてもよい。
【００２４】
コンピュータモジュール２０１は一般的に、少なくとも１つの処理装置２０５と、メモリユニット２０６とを含む。たとえば、メモリユニット２０６は、半導体ランダムアクセスメモリ（ＲＡＭ）および半導体読み出し専用メモリ（ＲＯＭ）を有してもよい。コンピュータモジュール２０１はまた、ビデオディスプレイ２１４、スピーカ２１７およびマイクロホン２８０に結合しているオーディオ−ビデオインターフェース２０７、キーボード２０２、マウス２０３、スキャナ２２６、カメラ２２７およびオプションとしてジョイスティックまたは他のヒューマンインターフェースデバイス（図示せず）に結合している入出力（Ｉ／Ｏ）インターフェース２１３、ならびに、外部モデム２１６およびプリンタ２１５のためのインターフェース２０８を含む、いくつかのＩ／Ｏインターフェースをも含む。いくつかの実施態様において、モデム２１６は、コンピュータモジュール２０１の中、たとえば、インターフェース２０８の中に組み込まれてもよい。コンピュータモジュール２０１は、ローカルネットワークインターフェース２１１をも有し、ローカルネットワークインターフェース２１１は、コンピュータシステム２００が接続２２３を介して、ローカルエリアネットワーク（ＬＡＮ）として知られているローカルエリア通信ネットワーク２２２に結合することを可能にする。図２Ａに示すように、ローカル通信ネットワーク２２２はまた、接続２２４を介してワイドネットワーク２２０にも結合してもよく、これは通常は、いわゆる「ファイアウォール」デバイスまたは同様の機能のデバイスを含む。ローカルネットワークインターフェース２１１は、Ｅｔｈｅｒｎｅｔ（登録商標）回路カード、Ｂｌｕｅｔｏｏｔｈ（登録商標）ワイヤレス装置またはＩＥＥＥ８０２．１１ワイヤレス装置を含んでもよいが、多数の他のタイプのインターフェースを、インターフェース２１１に対して実施してもよい。ローカルネットワークインターフェース２１１はまた、送信機１１６および受信機１３２の機能をも提供してもよく、通信チャネル１２０はまた、ローカル通信ネットワーク２２２において具現化されてもよい。
【００２５】
Ｉ／Ｏインターフェース２０８および２１３は、直列および並列接続のうちのいずれかまたは両方を提供することができ、前者は一般的にユニバーサルシリアルバス（ＵＳＢ）規格に従って実装され、対応するＵＳＢコネクタ（図示せず）を有する。記憶デバイス２０９が提供され、一般的にハードディスクドライブ（ＨＤＤ）２１０を含む。フロッピー（登録商標）ディスクドライブおよび磁気テープドライブ（図示せず）のような他の記憶デバイスも使用されてもよい。不揮発性データ源として機能するために光ディスクドライブ２１２が一般的に設けられる。たとえば、光ディスク（たとえば、ＣＤ−ＲＯＭ、ＤＶＤ、Ｂｌｕ−ｒａｙディスク（登録商標））、ＵＳＢ−ＲＡＭ、ポータブル、外部ハードドライブ、およびフロッピー（登録商標）ディスクのようなポータブルメモリデバイスが、コンピュータシステム２００に対する適切なデータ源として使用されてもよい。一般的に、ＨＤＤ２１０、光ドライブ２１２、ネットワーク２２０および２２２のいずれかは、ビデオソース１１２として、または、ディスプレイ２１４による再生のために記憶されるべき復号ビデオデータの宛先として動作するようにも構成されてもよい。
【００２６】
コンピュータモジュール２０１の構成要素２０５〜２１３は一般的に、相互接続バス２０４を介して、結果として当業者に既知のコンピュータシステム２００の従来の動作モードをもたらすように通信する。たとえば、プロセッサ２０５は、接続２１８を使用してシステムバス２０４に結合される。同様に、メモリ２０６および光ディスクドライブ２１２は、接続２１９によってシステムバス２０４に結合される。記載される構成を実行することができるコンピュータの例は、ＩＢＭ−ＰＣおよび互換性のあるＳｕｎ  ＳＰＡＲＣステーション、Ａｐｐｌｅ  Ｍａｃ（商標）または同様のコンピュータシステムを含む。
【００２７】
適切であるかまたは所望される場合、ビデオエンコーダ１１４およびビデオデコーダ１３４ならびに後述する方法は、コンピュータシステム２００を使用して実装されてもよく、ビデオエンコーダ１１４、ビデオデコーダ１３４、および、後述する図１０〜図１３のプロセスは、コンピュータシステム２００内で実行可能な１つまたは複数のソフトウェアアプリケーションプログラム２３３として実装されてもよい。特に、ビデオエンコーダ１１４、ビデオデコーダ１３４および説明する方法のステップは、コンピュータシステム２００内で実行されるソフトウェア２３３内の命令２３１（図２Ｂ参照）によって達成される。ソフトウェア命令２３１は、各々が１つまたは複数の特定のタスクを実行するためのものである１つまたは複数のコードモジュールとして形成されてもよい。ソフトウェアはまた、２つの別個の部分に分割されてもよく、第１の部分および対応するコードモジュールが説明される方法を実行し、第２の部分および対応するコードモジュールが、第１の部分とユーザとの間のユーザインターフェースを管理する。
【００２８】
ソフトウェアは、たとえば、後述する記憶デバイスを含む、コンピュータ可読媒体に記憶されてもよい。ソフトウェアは、コンピュータ可読媒体からコンピュータシステム２００内にロードされ、その後、コンピュータシステム２００によって実行される。そのようなソフトウェアを有するコンピュータ可読媒体またはコンピュータ可読媒体に記録されているコンピュータプログラムが、コンピュータプログラム製品である。コンピュータシステム２００内でコンピュータプログラム製品を使用することによって、好ましくは、ビデオエンコーダ１１４、ビデオデコーダ１３４および説明される方法を実装するための有利な装置がもたらされる。
【００２９】
ソフトウェア２３３は一般的に、ＨＤＤ２１０またはメモリ２０６に記憶される。ソフトウェアは、コンピュータ可読媒体からコンピュータシステム２００内にロードされ、コンピュータシステム２００によって実行される。したがって、たとえば、ソフトウェア２３３は、光ディスクドライブ２１２によって読み出される光学的に読み取り可能なディスク記憶媒体（たとえば、ＣＤ−ＲＯＭ）２２５に記憶されてもよい。
【００３０】
いくつかの事例において、アプリケーションプログラム２３３は、１つまたは複数のＣＤ−ＲＯＭ２２５上に符号化されてユーザに供給され、対応するドライブ２１２を介して読み出されてもよく、或いは、ネットワーク２２０または２２２からユーザによって読み出されてもよい。またさらに、ソフトウェアはまた、他のコンピュータ可読媒体からコンピュータシステム２００内にロードすることもできる。コンピュータ可読記憶媒体とは、記録されている命令および／またはデータを、実行および／または処理のためにコンピュータシステム２００に提供する任意の持続性有形記憶媒体を指す。そのような記憶媒体の例は、フロッピー（登録商標）ディスク、磁気テープ、ＣＤ−ＲＯＭ、ＤＶＤ、Ｂｌｕ−ｒａｙディスク（登録商標）、ハードディスクドライブ、ＲＯＭまたは集積回路、ＵＳＢメモリ、磁気−光ディスク、または、ＰＣＭＣＩＡカードのようなコンピュータ可読カードなどを含み、そのようなデバイスがコンピュータモジュール２０１の内部にあるか、または外部にあるかは問わない。同じくコンピュータモジュール４０１へのソフトウェア、アプリケーションプログラム、命令および／またはビデオデーダもしくは符号化ビデオデータの提供に関与することができる一時的または非有形コンピュータ可読伝送媒体の例は、無線または赤外線送信チャネルおよび別のコンピュータまたはネットワーク接続デバイスへのネットワーク接続、ならびに、電子メール送信およびウェブサイト上に記録されている情報を含むインターネットまたはイントラネットなどを含む。
【００３１】
上述のアプリケーションプログラム２３３の第２の部分および対応するコードモジュールは、ディスプレイ２１４上にレンダリングまたは他の様態で表現されるべき１つまたは複数のグラフィカルユーザインターフェース（ＧＵＩ）を実装するために実行されてもよい。一般的にキーボード２０２およびマウス２０３を操作することを通じて、コンピュータシステム２００およびアプリケーションのユーザは、機能的に適合可能な様式でインターフェースを操作することができ、ＧＵＩと関連付けられるアプリケーションに対するコマンドおよび／または入力の制御を提供する。スピーカ２１７を介した発話プロンプトおよびマイクロホン２８０を介したユーザ音声コマンド入力を利用するオーディオインターフェースのような、他の形態の機能的に適合可能なユーザインターフェースも実装されてもよい。
【００３２】
図２Ｂは、プロセッサ２０５および「メモリ」２３４の詳細な概略ブロック図である。メモリ２３４は、図２Ａのコンピュータモジュール２０１がアクセスすることができるすべてのメモリモジュール（ＨＤＤ２０９および半導体メモリ２０６を含む）の論理集合体を表す。
【００３３】
コンピュータモジュール２０１が最初に起動されるとき、電源オンセルフテスト（ＰＯＳＴ）プログラム２５０が実行される。ＰＯＳＴプログラム２５０は、一般的に、図２Ａの半導体メモリ２０６のＲＯＭ２４９に記憶されている。ソフトウェアを記憶するＲＯＭ２４９のようなハードウェアデバイスは、ファームウェアと呼ばれることもある。ＰＯＳＴプログラム２５０は、コンピュータモジュール２０１内のハードウェアを調べて適切に機能しているか確認し、一般的に、プロセッサ２０５、メモリ２３４（２０９、２０６）、および、また一般的にＲＯＭ２４９に記憶されている基本入出力システムソフトウェア（ＢＩＯＳ）モジュール２５１を、正確に動作しているかチェックする。ＰＯＳＴプログラム２５０が順調に作動すると、ＢＩＯＳ２５１は図２Ａのハードディスクドライブ２１０を起動する。ハードディスクドライブ２１０を起動することによって、ハードディスクドライブ２１０に常駐するブーツトラップローダプログラム２５２がプロセッサ２０５を介して実行される。これによって、オペレーティングシステム２５３がＲＡＭメモリ２０６にロードされてオペレーティングシステム２５３が動作を開始する。オペレーティングシステム２５３は、プロセッサ管理、メモリ管理、デバイス管理、記憶管理、ソフトウェアアプリケーションインターフェース、および一般的なユーザインターフェースを含む、様々な高レベル機能を実現させる、プロセッサ２０５によって実行可能なシステムレベルアプリケーションである。
【００３４】
オペレーティングシステム２５３は、コンピュータモジュール２０１で作動している各プロセスまたはアプリケーションが、別のプロセスに割り当てられているメモリと衝突することなく実行される十分なメモリを有するように、メモリ２３４（２０９、２０６）を管理する。さらに、図２Ａのコンピュータシステム２００内で利用可能な種々の種類のメモリは、各プロセスが効果的に作動するように適切に利用されなければならない。したがって、集合メモリ２３４は、メモリの特定のセグメントが割り当てられている様態を示すようには意図されておらず（特に明記しない限り）、コンピュータシステム２００によってアクセス可能なメモリの一般的概念とこのようなメモリの使用様態を提供するものである。
【００３５】
図２Ｂに示すように、プロセッサ２０５は、制御ユニット２３９、数値演算ユニット（ＡＬＵ）２４０、およびキャッシュメモリと呼ばれることもあるローカルメモリまたは内部メモリ２４８を含むいくつかの機能モジュールを含む。キャッシュメモリ２４８は、一般的に、レジスタセクションにいくつかの記憶レジスタ２４４〜２４６を含む。１つまたは複数の内部バス２４１が、これらの機能モジュールを機能的に相互接続する。また、プロセッサ２０５は、一般的に、接続２１８を用いてシステムバス２０４を介して外部デバイスと通信するための１つまたは複数のインターフェース２４２を有する。メモリ２３４は、接続２１９を使用してバス２０４に結合されている。
【００３６】
アプリケーションプログラム２３３は、条件付き分岐命令およびループ命令を含む場合がある一連の命令２３１を含む。また、プログラム２３３は、プログラム２３３の実行に使用されるデータ２３２も含んでもよい。命令２３１およびデータ２３２は、それぞれ、記憶場所２２８、２２９、２３０および２３５、２３６、２３７に記憶される。命令２３１および記憶場所２２８〜２３０の相対サイズに応じて、特定の命令が、記憶場所２３０に示す命令によって描かれているように、単一の記憶場所に記憶されてもよい。或いは、命令は、記憶場所２２８および２２９に示す命令セグメントによって描かれているように、セグメント化されて、その各々が別個の記憶場所に記憶されるいくつかの部分にされてもよい。
【００３７】
一般に、プロセッサ２０５は、プロセッサ内で実行される命令セットを与えられる。プロセッサ２０５は、後続の入力を待ち、その入力に対して、プロセッサ２０５は別の命令セットを実行することによって対応する。各入力は、すべて図２Ａに示されている、入力デバイス２０２、２０３の１つまたは複数によって生成されるデータ、ネットワーク２２０、２０２のうちの一方を通って外部ソースから受信されるデータ、記憶デバイス２０６、２０９のうちの一方から読み出されるデータ、または対応する読み取り器２１２に挿入される記憶媒体２２５から取り出されるデータを含む、いくつかのソースのうちの１つまたは複数から提供されてもよい。場合によっては、命令セットを実行する結果としてデータが出力されてもよい。また、実行は、メモリ２３４へのデータまたは変数の記憶を伴ってもよい。
【００３８】
ビデオエンコーダ１１４、ビデオデコーダ１３４および説明される方法は、メモリ２３４内で、対応する記憶場所２５５、２５６、２５７に記憶されている入力変数２５４を使用してもよい。  ビデオエンコーダ１１４、ビデオデコーダ１３４および説明される方法は、出力変数２６１を生成し、出力変数２６１は、メモリ２３４内で、対応する記憶場所２６２、２６３、２６４に記憶される。中間媒介変数２５８が、記憶場所２５９、２６０、２６６、および２６７に記憶されてもよい。
【００３９】
図２Ｂのプロセッサ２０５を参照すると、レジスタ２４４、２４５、２４６、数値演算ユニット（ＡＬＵ）２４０、および制御ユニット２３９は、協働して、プログラム２３３を構成する命令セットのすべての命令に対して「フェッチ、復号、および実行」のサイクルを実施する必要のある一連のマイクロ動作を実施する。各フェッチ、復号、および実行のサイクルは、（ａ）記憶場所２２８、２２９、２３０から命令２３１をフェッチまたは読み出すフェッチ動作、（ｂ）いずれの命令がフェッチされているかを制御ユニット２３９が判定する復号動作、および（ｃ）制御ユニット２３９および／またはＡＬＵ２４０が命令を実行する実行動作を含む。
【００４０】
その後、次の命令に対するさらなるフェッチ、復号、および実行のサイクルが実行されてもよい。同様に、制御ユニット２３９が値を記憶場所２３２に記憶するか、または書き込む記憶サイクルが実施されてもよい。
【００４１】
後で説明される図１０〜図１３のプロセスにおける各ステップまたはサブプロセスは、プログラム２３３の１つまたは複数のセグメントと関連付けられ、一般的に、協働して、プログラム２３３の注目されるセグメントに対する命令セットのすべての命令に対してフェッチ、復号、および実行のサイクルを実施する、プロセッサ２０５内のレジスタセクション２４４、２４５、２４７、ＡＬＵ２４０、および制御ユニット２３９によって実施される。
【００４２】
図３は、ビデオエンコーダ１１４の機能モジュールを示す概略ブロック図である。  図４は、ビデオデコーダ１３４の機能モジュールを示す概略ブロック図である。ビデオエンコーダ１１４およびビデオデコーダ１３４は、図２Ａおよび図２Ｂに示すような汎用コンピュータシステム２００を使用して実装されてもよく、様々な機能モジュールが、コンピュータシステム２００内の専用ハードウェアによって、ハードディスクドライブ２０５に常駐し、その実行においてプロセッサ２０５によって制御されるソフトウェアアプリケーションプログラム２３３の１つまたは複数のソフトウェアコードモジュールのような、コンピュータシステム２００内で実行可能なソフトウェアによって、或いは、コンピュータシステム２００内で実行可能な専用ハードウェアおよびソフトウェアの組み合わせによって実装されてもよい。ビデオエンコーダ１１４、ビデオデコーダ１３４および説明される方法は、代替して、説明される方法の機能または副次機能を実施する１つまたは複数の集積回路のような、専用ハードウェアにおいて実装されてもよい。そのような専用ハードウェアは、グラフィックプロセッサ、デジタル信号プロセッサ、特定用途無集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）または１つもしくは複数のマイクロプロセッサおよび関連メモリを含んでもよい。特に、ビデオエンコーダ１１４はモジュール３２０〜３４４を備え、ビデオデコーダ１３４はモジュール４２０〜４３４を備え、それらは各々がソフトウェアアプリケーションプログラム２３３の１つまたは複数のソフトウェアコードモジュールとして実装されてもよい。
【００４３】
図３のビデオエンコーダ１１４は、高効率ビデオ符号化（ＨＥＶＣ）ビデオ符号化パイプラインの一例であるが、モジュール３２０〜３４４によって実施される処理段階は、ＶＣ−１またはＨ．２６４／ＭＰＥＧ−４  ＡＶＣのような他のビデオコーデックに共通のものである。ビデオエンコーダ１１４は、キャプチャされたフレームデータのようなデータを一連のフレームとして受信し、各フレームは、１つまたは複数の色チャネルを含む。各フレームは、色チャネルあたり１つのサンプル格子を備える。色情報は、推奨ＩＴＵ−Ｒ  ＢＴ．７０９（「ＹＵＶ」）のような「色空間」を使用して表されるが、他の色空間も可能である。ＹＵＶ色空間が使用されるとき、色チャネルは輝度チャネル（「Ｙ」）および２つの色差チャネル（「Ｕ」および「Ｖ」）を含む。その上、画像のサンプリングに応じて、または、キャプチャされたフレームデータを再サンプリングするためのフィルタリングアプリケーションを通じて、異なる量の情報が、各色チャネルのサンプル格子内に含まれ得る。「色差フォーマット」として知られているいくつかのサンプリング手法が存在し、それらのうちのいくつかを図５Ａおよび図５Ｂを参照して説明する。
【００４４】
ビデオエンコーダ１１４は、フレームデータ３１０のような、キャプチャされたフレームデータの各フレームを、一般的に「符号化ツリーブロック」（ＣＴＢ）と称される領域に分割する。各符号化ツリーブロック（ＣＴＢ）は、フレームの一部分を「符号化単位」（ＣＵ）の集合にする階層的四分木細分割を含む。符号化ツリーブロック（ＣＴＢ）は一般的に、６４ｘ６４輝度サンプルの面積を占有するが、１６ｘ１６または３２ｘ３２のような、他のサイズが可能である。場合によっては、１２８ｘ１２８のようなさらにより大きいサイズが使用されてもよい。符号化ツリーブロック（ＣＴＢ）は、４つのサイズが等しい領域に分割することによって細分割されて、新たな階層レベルを作成することができる。分割は再帰的に適用され得、結果として四分木階層がもたらされる。符号化ツリーブロック（ＣＴＢ）の辺寸法は常に２の累乗であるため、四分木分割の結果は常に幅および高さの半分になり、その領域の辺寸法は常に２の累乗である。領域の分割がさらに実施されないとき、その領域内に「符号化単位（ＣＵ）」が存在すると考えられる。符号化ツリーブロックの最上位において分割が実施されないとき、符号化ツリーブロック全体を占有する領域が、一般的に「最大符号化単位」（ＬＣＵ）と称される、１つの符号化単位（ＣＵ）を含む。８ｘ８輝度サンプルによって占有される面積のような、各符号化単位に対する最小サイズも存在するが、他の最小サイズも可能である。このサイズの符号化単位は、一般的に、「最小符号化単位」（ＳＣＵ）と称される。この四分木階層の結果として、符号化ツリーブロック（ＣＴＢ）全体が１つまたは複数の符号化単位（ＣＵ）によって占有される。
【００４５】
ビデオエンコーダ１１４は、一般的に、各符号化単位（ＣＵ）に対する「予測単位」（ＰＵ）と称される、１つまたは複数のサンプルアレイを生成する。各符号化単位（ＣＵ）における予測単位（ＰＵ）の様々な配列が可能であるが、予測単位（ＰＵ）は重なり合わない、および、符号化単位（ＣＵ）の全体が１つまたは複数の予測単位（ＰＵ）によって占有されるという要件がある。この方式によって予測単位（ＰＵ）がフレーム面積全体をカバーすることが保証される。
【００４６】
ビデオエンコーダ１１４は、マルチプレクサモジュール３４０から、予測単位（ＰＵ）３８２を出力することによって動作する。差分モジュール３４４が、予測単位（ＰＵ）３８２と、空間領域における、フレームデータ３１０の符号化ツリーブロック（ＣＴＢ）の符号化単位（ＣＵ）からのデータサンプルの対応する２Ｄアレイとの間の差を出力し、この差は、「残差サンプルアレイ」３６０として知られている。残差サンプルアレイ３６０は、変換モジュール３２０において周波数領域に変換されてもよく、または、残差サンプルアレイ３６０は、空間領域にあるままあってもよく、これら２つの間の選択は、変換スキップ制御モジュール３４６の制御下で、変換スキップフラグ３８６を使用してシグナリングされるように動作するマルチプレクサ３２１によって実施される。変換スキップ制御モジュール３４６は変換スキップフラグ３８６を判定し、これは、残差サンプルアレイ３６０を残差係数アレイ３６２に変換するために変換モジュール３２０が使用されるか、または、変換モジュール３２０の使用がスキップされるかを示す。変換モジュール３２０をスキップすることは、「変換スキップ」と称される。変換がスキップされないとき、差分モジュール３４４からの残差サンプルアレイ３６０は変換モジュール３２０によって受信され、変換モジュール３２０は、「順変換」を適用することによって、残差サンプルアレイ３６０を空間表現から周波数領域表現へと変換（または「符号化」）する。変換モジュール３２０は、一般的に「変換ツリー」と称される、符号化単位（ＣＵ）の１つまたは複数の変換単位（ＴＵ）への階層細分割における変換単位（ＴＵ）における各変換の残差変換アレイ３６２として構成される変換係数を作成する。変換スキップが実施されるとき、残差サンプルアレイ３６０は空間領域の符号化ビットストリーム３１２として表され、変換モジュール３２０はバイパスされて、結果として、残差サンプルアレイ３６０は、変換スキップフラグ３８６の制御下で動作するマルチプレクサ３２１を介して、スケーリングおよび量子化モジュール３２２に直接通される。変換スキップ制御モジュール３４６は、変換スキップフラグ３８６の各値（すなわち、変換がスキップされる、または通常の変換動作）について符号化ビットストリーム３１２に必要とされるビットレートをテストし得る。変換スキップ制御モジュール３４６は、結果として符号化ビットストリーム３１２においてより低いビットレートをもたらす、したがってより高い圧縮効率を達成する変換スキップフラグ３８６の値を選択し得る。変換スキップ制御モジュール３４６によって実施される各テストによってビデオエンコーダ１１４の複雑度が増大し、したがって、変換スキップモジュール３４６がテストを実施する事例の数を、変換スキップを選択することの利益がテストを実施するコストを上回る事例の数まで低減することが望ましい。たとえば、これは、開発中の高効率ビデオ符号化（ＨＥＶＣ）規格におけるイントラ予測ブロック（さらに後述する）について、変換スキップを４ｘ４変換のみのような、特定の変換サイズおよびブロックタイプに制限することによって達成することができる。変換スキップ機能は、多くの「高周波数」情報を含む残差サンプルアレイ３６０を符号化するのに特に有用である。高周波数情報は一般的に、英数字がフレームデータ３１０に埋め込まれている場合のように、多くの鮮鋭なエッジを含むフレームデータ３１０に存在する。コンピュータによって生成されたグラフィックのような、フレームデータ３１０の他のソースも、多くの高周波数情報を含む場合がある。変換モジュール３２０のＤＣＴのような変換は、主に、自然画像をキャプチャするイメージングセンサから取得されるもののような低周波数情報を含むフレームデータ３１０に対して最適化される。したがって、変換スキップ機能の存在は、開発中の高効率ビデオ符号化（ＨＥＶＣ）規格に関連するアプリケーションについて、相当の符号化効率利得をもたらす。ビデオエンコーダ１１４について、変換スキップ機能をサポートすることの１つの欠点は、変換スキップフラグ３８６の、２つの可能性のあるモードをテストする必要があることである。後述するように、変換スキップ機能は、４ｘ４サンプルの残差サンプルアレイ３６０のサイズについて、かつ、イントラフレーム予測モジュール３３６を参照して説明するように、残差サンプルアレイ３６０がイントラ予測ブロックに対応するときにサポートされる。しかしながら、変換スキップモジュール３８６は各色チャネルについて別個にシグナリングされることが望ましく、したがって、各色チャネルに対して別個のテストが、変換スキップ制御モジュール３４６によって実施され得る。各色チャネルに対して別個にシグナリングすることは、高周波数情報は一方または両方の色差チャネルに集中し得、したがって変換スキップに適しており、一方で、輝度チャネルは最小限の高周波数情報を有し得、したがって変換を使用することから利益を得るため、有利である。たとえば、色付き背景上の色付きテキストが、結果としてこのシナリオをもたらす。
【００４７】
開発中の高効率ビデオ符号化（ＨＥＶＣ）規格について、周波数領域表現への変換は、修正離散コサイン変換（ＤＣＴ）を使用して実施され、ここでは、従来のＤＣＴが、シフトおよび付加を使用して実施されるように修正されている。サポートされる変換サイズに従って、残差サンプルアレイ３６０および変換係数３６２の様々なサイズが可能である。開発中の高効率ビデオ符号化（ＨＥＶＣ）規格において、変換は、３２ｘ３２、１６ｘ１６、８ｘ８および４ｘ４のような指定のサイズを有する２Ｄサンプルアレイに対して実行される。したがって、ビデオエンコーダ１１４にとって利用可能な所定の変換サイズセットが存在すると考えられ得る。その上、上記で予示したように、変換サイズセットは、輝度チャネルと色差チャネルとの間で異なり得る。２次元変換は一般的に「分離可能」であるように構成され、これによって、一方の方向において（たとえば、行において）２Ｄサンプルアレイに対して動作する第１の１Ｄ変換セット、および、それに続く、他方の方向において（たとえば、列において）第１の１Ｄ変換セットから出力される２Ｄサンプルアレイに対して動作する第２の１Ｄ変換セットとしての実施態様が可能になる。同じ幅および高さを有する変換は一般的に「正方形変換」と称される。異なる幅および高さを有するさらなる変換も可能であり、これは一般的に「非正方形変換」と称される。最適化された変換実施態様は、行および列の１次元変換を組み合わせて、４ｘ４変換モジュールまたは８ｘ８変換モジュールのような特定のハードウェアまたはソフトウェアモジュールにすることができる。より大きい寸法を有する変換は、実施するのにより大量の回路を必要とするが、これらはまれにしか使用されないものであり得る。したがって、開発中の高効率ビデオ符号化（ＨＥＶＣ）規格では３２ｘ３２の最大変換サイズが存在する。また、この変換実施態様の統合的に性質によって、非正方形変換サイズは、一般的に対応する正方形変換から存在する既存の１次元変換論理が再使用されるのではなく、まったく新しいハードウェアが実装される必要があるため、サポートされる非正方形変換サイズの数を低減することが好適であることにもなる。
【００４８】
変換は、輝度および色差チャネルの両方に適用される。変換単位（ＴＵ）に関して輝度チャネルと色差チャネルとの取り扱いには差が存在し、これについては図５Ａおよび図５Ｂを参照して後述する。各変換ツリーは１つの符号化単位（ＣＵ）を占有し、これは、変換ツリー（四分木）階層の各リーフノードにおける１つの変換単位（ＴＵ）を含む階層への符号化単位（ＣＵ）の四分木分解として定義され、各変換単位（ＴＵ）は、サポートされる変換サイズの変換を利用することが可能である。符号化ツリーブロック（ＣＴＢ）と同様に、符号化単位（ＣＵ）の全体が、１つまたは複数の変換単位（ＴＵ）によって占有されることが必要である。変換ツリー四分木階層の各レベルにおいて、「符号化ブロックフラグ値」は、さらなる分割が存在しないときに現在の階層レベルにおいて、各色チャネル内に変換が存在する可能性があることをシグナリングするか、または、より低い階層レベルが、結果もたらされる変換単位（ＴＵ）の間の少なくとも１つの変換を含み得ることをシグナリングする。符号化ブロックフラグ値が０であるとき、現在の階層レベルまたはより低い階層レベルにおいて、変換ツリーの任意の変換単位（ＴＵ）の対応する色チャネルに対して変換は実行されない。符号化ブロックフラグ値が１であるとき、その領域は、少なくとも１つの非ゼロ残差係数を有するはずである変換を含む。このように、各色チャネルについて、０以上の変換が、符号化単位（ＣＵ）の無から全体まで変動する符号化単位（ＣＵ）の面積の一部をカバーし得る。各色チャネルに対して別個の符号化ブロックフラグ値が存在する。可能な符号化ブロックフラグ値が１つしかない事例が存在するため、各符号化ブロックフラグ値が符号化される必要はない。
【００４９】
したがって、マルチプレクサ３２１の出力は、残差サンプルアレイ３６０または変換係数アレイ３６２のうちの一方であり、図３においては単純にアレイ３６３とラベリングされている。アレイ３６３は、スケーリングおよび量子化モジュール３２２に入力され、当該モジュールにおいて、その入力のサンプル値が、決定されている量子化パラメータ３８４に従ってスケーリングおよび量子化されて、残差データアレイ３６４が生成される。スケーリングおよび量子化プロセスの結果として、決定されている量子化パラメータ３８４の値に応じて、精度の損失が生じる。決定されている量子化パラメータ３８４の値がより高くなると、結果としてより多くの情報が残差データから失われることになる。これによって、ビデオデコーダ１３４からの出力の視覚的品質が低減することと引き換えに、ビデオエンコーダ１１４によって達成される圧縮が増大する。決定されている量子化パラメータ３８４は、フレームデータ３１０の各フレームの符号化中に適合されてもよく、または、フレーム全体のような、フレームデータ３１０の一部に対して固定されてもよい。別個の値による異なる残差係数の量子化のような、決定されている量子化パラメータ３８４の他の適合も可能である。残差データアレイ３６４および決定されている量子化パラメータ３８４は、入力として逆スケーリングモジュール３２６に取り込まれ、逆スケーリングモジュール３２６は、スケーリングおよび量子化モジュール３２２によって実施されたスケーリングを逆にして、残差データアレイ３６４が再スケーリングされたものである、再スケーリングされたデータアレイ３６６を生成する。開発中の高効率ビデオ符号化規格（ＨＥＶＣ）規格はまた、「可逆」符号化モードもサポートする。可逆符号化が使用されているとき、変換モジュール３２０とスケーリングおよび量子化モジュール３２２は両方ともバイパスされ、結果として、残差サンプルアレイ３６０はエントロピー符号化器３２４に直接入力されることになる。可逆モードにおいては、逆スケーリングモジュール３２６および逆変換モジュール３２８もバイパスされる。可逆符号化モード（通常の「不可逆」モードとは反対の）の選択は、エントロピー符号化器３２４によって符号化ビットストリーム３１２内に符号化される。可逆モードのためにバイパスを実施するための論理は図３には示されていない。スケーリングおよび量子化モジュール３２２をバイパスする結果として、残差係数アレイ３６２または残差サンプルアレイ３６０の量子化は行われないことになり、フレームデータ３１０の正確な表現が、エントロピー符号化器３２４によって符号化ビットストリーム３１２内に符号化される。可逆符号化モードの結果として、ビデオエンコーダ１１４の圧縮効率は低くなり、それゆえ、これは一般的に、医療用途のような、可逆符号化が非常に望ましい用途にのみ使用される。
【００５０】
残差データアレイ３６４、決定されている量子化パラメータ３８４および変換スキップフラグ３８６も、入力としてエントロピー符号化器モジュール３２４に取り込まれ、エントロピー符号化器モジュール３２４は、残差データアレイ３６４の値を符号化ビットストリーム３１２（または「ビデオビットストリーム」）内に符号化する。各変換単位（ＴＵ）における残差データアレイ３６４は、「サブブロック」として一般的に知られているグループ内に符号化される。サブブロックは、好ましくは、変換のサイズにかかわらず同じ寸法を有するべきであり、これは、これによってサブブロック処理に関係する論理を再使用することが可能になるためである。１つのサブブロック内の残差データは一般的に「データグループ」（または「係数グループ」、これは変換スキップが適用され、「係数グループ」が周波数領域表現ではなく空間領域表現を含む場合であっても、そのように称される）と称され、各データグループについて、データグループ内の少なくとも１つの残差データ値が非ゼロであるか否かを示すために、データグループフラグが一般的に符号化される。場合によっては、データグループフラグは暗示されるものであってもよく、したがって符号化されない。残差データ値が非ゼロ（「有意」）であるか、またはゼロ（「非有意」）であるかを示すために、１のデータグループフラグ値を有するデータグループに属する各残差データ値に対してフラグが符号化される。スケーリングおよび量子化モジュール３２２からもたらされる精度の損失に起因して、再スケーリングされたデータアレイ３６６は、アレイ３６３内の元の値と同一ではない。逆スケーリングモジュール３２６からの再スケーリングされたデータアレイ３６６はその後、逆変換モジュール３２８に出力される。逆変換モジュール３２８は、周波数領域から空間領域への逆変換を実施して、ビデオデコーダ１３４において生成される空間領域表現と同一の、再スケーリングされた変換係数アレイ３６６の空間領域表現３６８を生成する。マルチプレクサ３６９は、マルチプレクサ３２１の動作を補完するように構成されている。マルチプレクサ３６９は、再スケーリングされたデータアレイ３６６の各々と、（変換された）空間領域表現３６８とを入力として受信し、変換スキップフラグ３８６の制御下で、入力３６６または３６８のうちの一方を加算モジュール３４２への入力として選択するように構成されている。
【００５１】
動き推定モジュール３３８が、フレームデータ３１０を、一般的にメモリ２０６内に構成されている、フレームバッファモジュール３３２内の１つまたは複数のフレームセットからの以前のフレームデータと比較することによって動きベクトル３７４を生成する。フレームセットは「参照ピクチャリスト」として知られている。その後、動きベクトル３７４は、動き補償モジュール３３４に入力され、動き補償モジュール３３４は、動きベクトル３７４から導出される空間オフセットを考慮に入れて、フレームバッファモジュール３３２に記憶されているサンプルをフィルタリングすることによって、インター予測された予測単位（ＰＵ）３７６を生成する。図３には示されていないが、動きベクトル３７４は、構文要素として、符号化ビットストリーム３１２内に符号化するためにエントロピー符号化器モジュール３２４にも渡される。フレーム内予測モジュール３３６は、マルチプレクサモジュール３４０からの予測単位（ＰＵ）３８２とマルチプレクサ３６９の空間領域出力を加算する加算モジュール３４２から取得されるサンプル３７０を使用して、イントラ予測された予測単位（ＰＵ）３７８を生成する。フレーム内予測モジュール３３６もイントラ予測モード３８０を生成し、これは符号化ビットストリーム３１２内に符号化するためにエントロピー符号化器３２４に送信される。
【００５２】
予測単位（ＰＵ）は、イントラ予測またはインター予測方法のいずれかを使用して生成され得る。イントラ予測方法は、予測単位（ＰＵ）内に基準サンプルを生成するために、先行して復号されている予測単位（ＰＵ）に隣接する（一般的に予測単位の左上の）サンプルを利用する。「イントラ予測モード」と称される、イントラ予測の様々な方向が可能である。インター予測方法は、選択された基準フレームからブロックを参照するために動きベクトルを利用する。ブロックは、サブサンプル精度、たとえば、サンプルの８分の１に至るまでの任意のアラインメントを有する場合があるため、予測単位（ＰＵ）のための基準サンプルのブロックを作成するためにフィルタリングが必要である。いずれの方法を使用すべきかの判断は、結果もたらされる符号化ビットストリーム３１２の所望のビットレートと、イントラ予測またはインター予測方法のいずれかによって導入される画像品質歪みの量との間のレート−歪みトレードオフに従って行われる。イントラ予測が使用される場合、同じくレート歪みトレードオフに従って、イントラ予測の可能性のあるモードのセットから、１つのイントラ予測モードが選択される。マルチプレクサモジュール３４０が、レート歪みアルゴリズムによって行われた判断に応じて、フレーム内予測モジュール３３６からのイントラ予測基準サンプル３７８、または、動き補償ブロック３３４からのインター予測された予測単位（ＰＵ）３７６のいずれかを選択する。加算モジュール３４２が、デブロッキングフィルタモジュール３３０に入力される総和３７０を生成する。デブロッキングフィルタモジュール３３０は、ブロック境界に沿ってフィルタリングを実施し、メモリ２０６内に構成されているフレームバッファモジュール３３２に書き込まれるデブロッキングサンプル３７２を生成する。フレームバッファモジュール３３２は、１つまたは複数の通過したフレームからのデータを、参照ピクチャリストの一部として将来参照するために保持するのに十分な容量を有するバッファである。
【００５３】
開発中の高効率ビデオ符号化（ＨＥＶＣ）規格について、エントロピー符号化器３２４によって生成される符号化ビットストリーム３１２は、ネットワーク抽象化層（ＮＡＬ）ユニットに画定される。一般的に、フレームの各スライスは１つのＮＡＬユニット内に含まれている。エントロピー符号化器３２４は、コンテキスト適応型２値算術符号化（ＣＡＢＡＣ）アルゴリズムを実施することによって、「構文要素」と総称される、残差アレイ３６４、イントラ予測モード３８０、動きベクトルおよび他のパラメータを符号化ビットストリーム３１２内に符号化する。構文要素は「構文構造」にともにグループ化され、これらのグループ分けは、階層構造を説明するための再帰を含んでもよい。イントラ予測モードのような序数値、または動きベクトルのような整数値に加えて、構文要素は、四分木分割を示すなどのためのフラグも含む。動き推定モジュール３３８および動き補償モジュール３３４は動きベクトル３７４に対して動作し、これは輝度サンプルの１／８の精度を有し、フレームデータ３１０においてフレーム間の動きの精密なモデル化を可能にする。  
【００５４】
図４のビデオデコーダ１３４を、高効率ビデオ符号化（ＨＥＶＣ）ビデオ復号パイプラインを参照して説明するが、モジュール４２０〜４３４によって実施される処理段階は、Ｈ．２６４／ＭＰＥＧ−４  ＡＶＣ、ＭＰＥＧ−２およびＶＣ−１のようなエントロピー符号化を採用する他のビデオコーデックに共通のものである。符号化ビデオ情報はまた、メモリ２０６、ハードディスクドライブ２１０、ＣＤ−ＲＯＭ、Ｂｌｕ−ｒａｙ（登録商標）ディスクまたは他のコンピュータ可読記憶媒体から読み出されてもよい。代替的に、符号化ビデオ情報は、通信ネットワーク２２０に接続されているサーバまたは無線周波数受信機のような外部ソースから受信されてもよい。
【００５５】
図４から分かるように、符号化ビットストリーム３１２のような受信ビデオデータが、ビデオデコーダ１３４に入力される。符号化ビットストリーム３１２はまた、メモリ２０６、ハードディスクドライブ２１０、ＣＤ−ＲＯＭ、Ｂｌｕ−ｒａｙ（登録商標）ディスクまたは他のコンピュータ可読記憶媒体から読み出されてもよい。代替的に、符号化ビットストリーム３１２は、通信ネットワーク２２０に接続されているサーバまたは無線周波数受信機のような外部ソースから受信されてもよい。符号化ビットストリーム３１２は、復号されるべき、キャプチャされたフレームデータを表す符号化構文要素を含む。
【００５６】
符号化ビットストリーム３１２はエントロピー復号器モジュール４２０に入力され、エントロピー復号器モジュール４２０は符号化ビットストリーム３１２から構文要素を抽出し、構文要素の値をビデオデコーダ１３４内の他のブロックに渡す。エントロピー復号器モジュール４２０は、コンテキスト適応型２値算術符号化（ＣＡＢＡＣ）アルゴリズムを適用して、符号化ビットストリーム３１２から構文要素を復号する。復号された構文要素は、ビデオデコーダ１３４内でパラメータを再構築するのに使用される。パラメータは、０以上の残差データアレイ４５０、動きベクトル４５２、予測モード４５４および変換スキップフラグ４６８を含む。残差データアレイ４５０は逆スケーリングモジュール４２１に通され、動きベクトル４５２は動き補償モジュール４３４に通され、予測モード４５４はフレーム内予測モジュール４２６およびマルチプレクサ４２８に通される。逆スケーリングモジュール４２１は、残差データに逆スケーリングを実施して、再構築データ４５５を作成する。変換スキップフラグ４６８が０である場合、逆スケーリングモジュール４２１は再構築データ４５５を逆変換モジュール４２２に出力する。逆変換モジュール４２２は「逆変換」を適用して、この事例においては変換係数である再構築データを周波数領域表現から空間領域表現に変換（または「復号」）し、マルチプレクサモジュール４２３を介して残差サンプルアレイ４５６を出力する。変換スキップフラグ４６８の値が１であるとき、この事例においては空間領域にある再構築データ４５５は、マルチプレクサモジュール４２３を介して残差サンプルアレイ４５６として出力される。逆変換モジュール４２２は、逆変換３２８と同じ動作を実施する。それゆえ、逆変換モジュール４２２は、開発中の高効率ビデオ符号化（ＨＥＶＣ）規格に準拠する符号化ビットストリーム３１２を復号するのに必要とされる所定の変換サイズセットをもたらすように構成されなければならない。符号化ビットストリーム３１２におけるシグナリングが、可逆モードが使用されたことを示すとき、ビデオデコーダ１３４は、逆スケーリングモジュール４２１および逆変換モジュール４２２をバイパスするように構成され（図４には示さない）、結果として残差データアレイ４５０は、加算モジュール４２４に直接入力されることになる。
【００５７】
動き補償モジュール４３４は、エントロピー復号器モジュール４２０からの動きベクトル４５２を、メモリ２０６内に構成されているフレームバッファブロック４３２からの基準フレームデータ４６０と組み合わせて使用して、出力復号フレームデータの予測である、予測単位（ＰＵ）に対するインター予測された予測単位（ＰＵ）４６２を生成する。現在の予測単位がイントラ予測を使用して符号化されたことを、予測モード４５４が示すとき、フレーム内予測モジュール４２６は、予測単位（ＰＵ）に空間的に隣接するサンプル、および、同じく予測モード４５４によって供給される予測方向を使用して予測単位（ＰＵ）に対するイントラ予測された予測単位（ＰＵ）４６４を生成する。空間的に隣接するサンプルは、加算モジュール４２４から出力される総和４５８から取得される。マルチプレクサモジュール４２８は、現在の予測モード４５４に応じて、予測単位（ＰＵ）４６６に対するイントラ予測された予測単位（ＰＵ）４６４またはインター予測された予測単位（ＰＵ）４６２を選択する。マルチプレクサモジュール４２８から出力される予測単位（ＰＵ）４６６は、加算モジュール４２４によって、逆スケーリングおよび変換モジュール４２２からの残差サンプルアレイ４５６に加えられて、総和４５８が生成され、総和４５８はその後、デブロッキングフィルタモジュール４３０およびフレーム内予測モジュール４２６の各々に入力される。デブロッキングフィルタモジュール４３０は、例えば変換単位（ＴＵ）境界のようなデータブロック境界に沿ってフィルタリングを実施して、視覚アーティファクトを平滑化する。デブロッキングフィルタモジュール４３０の出力は、メモリ２０６内に構成されているフレームバッファモジュール４３２に書き込まれる。フレームバッファモジュール４３２は、将来参照するために１つまたは複数の復号フレームを保持するのに十分なストレージを提供する。復号フレーム４１２はまた、フレームバッファモジュール４３２から表示デバイス１３６のような表示デバイスにも出力される。
【００５８】
図５Ａは４：２：０色差フォーマットを使用して符号化されているフレーム部分５００のサンプル格子を示し、図５Ｂは４：２：２色差フォーマットを使用して符号化されているフレーム部分５１０のサンプル格子を示す。色差フォーマットはビデオエンコーダ１１４に対する構成パラメータとして指定されており、ビデオエンコーダ１１４は、色差フォーマットを指定する「ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃ」構文要素を符号化ビットストリーム３１２内に符号化する。ビデオデコーダ１３４は、符号化ビットストリーム３１２から「ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃ」構文要素を復号して、使用されている色差フォーマットを判定する。たとえば、４：２：０色差フォーマットが使用されているとき、ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃの値は１であり、４：２：２色差フォーマットが使用されているとき、ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃの値は２であり、４：４：４色差フォーマットが使用されているとき、ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃの値は３である。図５Ａおよび図５Ｂにおいて、輝度サンプル位置５０１のような輝度サンプル位置が「Ｘ」記号を使用して示されており、色差サンプル位置５０２のような色差サンプル位置が「Ｏ」記号を使用して示されている。フレーム部分５００が示されている点においてサンプリングすることによって、４：２：０色差フォーマットが適用されるときの各色チャネルについてのサンプル格子が取得される。各輝度サンプル位置Ｘにおいて、輝度チャネル（「Ｙ」）がサンプリングされ、各色差サンプル位置Ｏにおいて、両方の色差チャネル（「Ｕ」および「Ｖ」）がサンプリングされる。図５Ａに示すように、各色差サンプル位置において、２ｘ２配列の輝度サンプル位置が存在する。フレーム部分５１０において示されている輝度サンプル位置における輝度サンプルおよび色差サンプル位置における色差サンプルをサンプリングすることによって、４：２：２色差フォーマットが適用されるときの各色チャネルについてのサンプル格子が取得される。フレーム部分５００に対してのものと同じ、サンプルの色チャネルに対する割り当てが、フレーム部分５１０に対して行われる。フレーム部分５００とは対照的に、フレーム部分５１０には２倍の色差サンプル位置が存在する。フレーム部分５１０において、色差サンプル位置は、１つ置きの輝度サンプル位置と結びつけられている。したがって、図５Ｂにおいては、各色差サンプル位置に対して、２ｘ１配列の輝度サンプル位置が存在する。
【００５９】
変換単位の様々な許容可能な寸法を、輝度サンプルを単位として上述した。したがって、輝度チャネルに対して適用される変換によってカバーされる領域は、変換単位寸法と同じ寸法を有することになる。変換単位は色差チャネルも符号化するため、各色差チャネルに対して適用されている変換は、使用されている特定の色差フォーマットに従って適合されている寸法を有することになる。たとえば、４：２：０色差フォーマットが使用されているとき、１６ｘ１６変換単位（ＴＵ）は、輝度チャネルに対して１６ｘ１６変換を使用することになり、各色差チャネルに対して８ｘ８変換を使用することになる。１つの特別な事例は、４ｘ４変換が輝度チャネルに使用されるときに、色差チャネルに使用され得る、利用可能な対応する２ｘ２変換がない（４：２：０色差フォーマットが適用されるとき）か、または、４ｘ２変換が利用可能である（４：２：２色差フォーマットが適用されるとき）ことである。この特別な事例において、各色差チャネルに対する４ｘ４変換は、複数の輝度変換によって占有されている領域をカバーし得る。
【００６０】
図６Ａは、フレームの符号化ツリーブロック（ＣＴＢ）６００内の、符号化単位（ＣＵ）６０２（太い境界線で示す）の例示的な変換ツリーの概略図である。単一の四分木細分割によって、符号化ツリーブロック（ＣＴＢ）６００が、符号化単位（ＣＵ）６０２のような、４つの３２ｘ３２符号化単位（ＣＵ）に分割される。例示的な変換ツリーが、符号化単位（ＣＵ）６０２内に存在する。例示的な変換ツリーは、いくつかの四分木細分割を含み、結果として、図６Ａにおけるように番号を付されている１０個の変換単位（ＴＵ）、たとえば、変換単位＃９（ＴＵ）６０４がもたらされる。変換単位＃１〜＃１０は、符号化単位（ＣＵ）６０２の全体をカバーする。各四分木細分割によって、領域は空間的に４つの四半部に分割され、結果として４つのより小さい領域がもたらされる。各変換単位（ＴＵ）は、変換ツリー内の変換単位（ＴＵ）の階層レベルに対応する、変換深度値を有する。階層レベルは、結果として対応する領域を占有する変換単位（ＴＵ）のインスタンスをもたらす四分木細分割が終了する前に実施された四分木細分割の数を示す。たとえば、変換単位＃９（ＴＵ）６０４は符号化単位（ＣＵ）６０２の面積の４分の１を占有し、それゆえ、１の変換深度を有する。各変換単位（ＴＵ）は、関連付けられるサイズ（または「変換サイズ」）を有し、これは一般的に、輝度サンプル格子上の変換単位（ＴＵ）を含む領域の寸法として記述される。サイズは、符号化単位（ＣＵ）サイズおよび変換深度に応じて決まる。０の変換深度を有する変換単位（ＴＵ）は、対応する符号化単位（ＣＵ）のサイズに等しいサイズを有する。変換深度が増分する度ごとに、結果として、所与の変換深度における変換ツリー内に存在する変換単位（ＴＵ）のサイズは半分になっていく。フレームが輝度チャネルおよび色差チャネルを含む場合、符号化単位（ＣＵ）６０２は、輝度サンプル格子および色差サンプル格子の両方における領域を占有し、したがって、各変換単位（ＴＵ）は、輝度サンプル格子上の輝度サンプルおよび色差サンプル格子上の色差サンプルの両方を記述する情報を含む。各変換単位（ＴＵ）に関する情報の性質は、ビデオエンコーダ１１４またはビデオデコーダ１３４の処理段階に応じて決まる。変換モジュール３２０に対する入力ならびに逆スケーリングおよび変換モジュール４２２の出力において、残差サンプルアレイ３６０および４５６はそれぞれ、空間領域における各変換単位（ＴＵ）に関する情報を含む。残差サンプルアレイ３６０および４５６は、輝度チャネルと色差チャネルとの間の処理の差に起因して、「色差残差サンプルアレイ」および「輝度残差サンプルアレイ」にさらに分割され得る。スケーリングおよび量子化モジュール３２２からの出力ならびに逆スケーリングおよび変換モジュール４２２の入力において、残差データアレイ３６４および４５０はそれぞれ、周波数領域における各変換単位（ＴＵ）に関する情報を含む。残差データアレイ３６４および４５０は、輝度チャネルと色差チャネルとの間の処理の差に起因して、「色差残差データアレイ」および「輝度残差データアレイ」にさらに分割され得る。
【００６１】
図６Ｂは、１セットの変換単位（ＴＵ）を含み、輝度サンプル格子上の３２ｘ３２輝度サンプルアレイを占有する符号化単位（ＣＵ）６０２を占有する、３２ｘ３２符号化単位（ＣＵ）の輝度チャネルに対する、図６Ａの例示的な変換ツリーに対応する例示的な変換ツリー６３０を示す。  図７は、例示的な変換ツリー６３０を表すデータ構造７００を示す。図６Ｂにおいて１〜１０の番号を付されているボックスは、領域６３２内に存在する変換単位（いくつかの変換単位（ＴＵ）６４０によって例示される）を示し、各ボックスは、それ以上細分割されない（破線の境界を有するボックスによって示される）領域内に含まれている。
【００６２】
図６Ｂにおいて、１および９の番号を付されているボックスは、輝度チャネルに対する１６ｘ１６変換を含み、２、３および８の番号を付されているボックスは、輝度チャネルに対する８ｘ８変換を含み、４〜７の番号を付されているボックスは、輝度チャネルに対する４ｘ４変換を含む。これらのボックスの各々の対応する領域（破線のボックス）は、変換が存在することを示す１の符号化ブロックフラグ値を有する。
【００６３】
各色チャネルに対する変換の存否は、ビットストリームの符号化および復号の各々において使用される別個の符号化ブロックフラグ値によって指定されるが、符号化ブロックフラグ値は、後述するように、ビットストリーム内で送信される必要はない。
【００６４】
その結果、エントロピー復号器４２０から出力される残差係数アレイ４５０の数は、符号化ブロックフラグ値に応じて決まる。いずれの色チャネルにおいても有意な係数が存在しない（すなわち、すべての係数が０である）とき、エントロピー復号器４２０から出力される残差データ（係数）アレイ４５０の数は０である。
【００６５】
図７において、円は、分割変換フラグ値を表し、分割変換フラグ値は、対応する円の内部に示されている。図７において、三角形は、符号化ブロックフラグ値を表し、符号化ブロックフラグ値は、対応する三角形の内部に示されている。正方形は変換単位を表し、各変換は、図６Ｂ内に存在する変換番号付けに従って番号を付されている。
【００６６】
例示的な変換ツリー６３０の最上位の階層レベルは、３２ｘ３２符号化単位（ＣＵ）を占有する領域６３２を含む。分割変換フラグ値７０２は、領域６３２が、領域６３４のような４つの１６ｘ１６領域に細分割され、したがって、例示的な変換ツリー６３０の「非リーフ」ノードを定義することを示す。各１６ｘ１６領域について、分割変換フラグ値７０４のようなさらなる分割変換フラグ値が、それぞれの１６ｘ１６領域が４つの８ｘ８領域にさらに細分割されるべきであることを示す。たとえば、領域６３４は、０の分割変換フラグ値７０４によって示されるようにそれ以上細分割されず、したがって、例示的な変換ツリー６３０の「リーフ」ノードを定義する。対照的に、領域６３８は、１の分割変換フラグ値７１２によって示されるように、４つの４ｘ４領域（領域６３６など）にさらに細分割される。変換ツリー６３０内に存在する再帰的分割構造は、符号化ツリーブロック（ＣＴＢ）内に存在する四分木分割に類似している。輝度チャネルについて、四分木の「リーフ」ノードにおいて、変換単位（ＴＵ）内に変換が存在するかは、符号化ブロックフラグ値によってシグナリングされ、たとえば、１の符号化ブロックフラグ値７０８は、領域６３４内に変換７１０が存在することを示す。
【００６７】
変換は各領域内の残差データを表すために使用され得るため、領域は、輝度チャネルに関する４ｘ４輝度サンプルのような、サポートされる最小変換サイズよりも小さくなることは許容されない。加えて、利用可能な最大変換サイズよりも大きい領域については、１の分割変換フラグ値が暗示される。たとえば、最上位の６４ｘ６４符号化単位を有する変換ツリーについては、サポートされる最大変換サイズが３２ｘ３２輝度サンプルであるときは、自動的に４つの３２ｘ３２領域への細分割が行われる（すなわち、符号化ビットストリーム３１２においてシグナリングされない）。
【００６８】
右下の１６ｘ１６領域６４２は、輝度チャネルに対する変換を有しない変換単位（ＴＵ）（１０の番号を付されている斜線部分）を含み、それゆえ、０の対応する符号化ブロックフラグ値７１６を有する。
【００６９】
図６Ｃおよび図８は、４：２：２色差フォーマット向けに構成されており、輝度チャネルに対する変換ツリー６３０に対応する色差チャネルに対する変換セットを含み、データ構造８００によって表される、色差チャネルに対する、図６Ａの例示的な変換ツリーに対応する例示的な変換ツリー６３０を示す。変換ツリー階層は、図６Ａの構造によって輝度チャネルと色差チャネルとの間で共通であるため、分割変換フラグ値はデータ構造７００と８００との間で共有される。データ構造７００とは対照的に、データ構造８００は、１の各変換分割フラグ値を有する（すなわち、変換ツリーの非リーフノード上の）符号化ブロックフラグ値を含む。たとえば、１の符号化ブロックフラグ値８０２は、変換分割フラグ７０２と関連付けられる。変換ツリーの非リーフノード上の符号化ブロックフラグ値が０である場合、子ノード上の符号化ブロックフラグ値は０と暗示される（そして、符号化ビットストリーム３１２内に符号化される対応する符号化ブロックフラグはない）。非リーフ領域にある符号化ブロックフラグ値は、子領域のいずれにも有意な残差係数が存在しない場合、たとえ輝度チャネルに有意な残差係数が存在し得るとしても、各色差チャネルに対する変換ツリーのより下位のレベルにおける符号化ブロックフラグの符号化を終了させることを可能にする。これは、一般的なキャプチャされたフレームデータについては、情報の大部分が輝度チャネルに存在するため、一般的な状況である。
【００７０】
ビデオエンコーダ１１４およびビデオデコーダ１３４が４：４：４色差フォーマット向けに構成されるとき、所定の変換単位（ＴＵ）サイズセットのうちの１つではないサイズの任意の所与の変換単位（ＴＵ）の各色差チャネルの色差領域は、所与の変換単位（ＴＵ）の輝度領域と同一の寸法を有する（すなわち、暗黙的分割が行われないとき）。  ビデオエンコーダ１１４およびビデオデコーダ１３４が４：４：４色差フォーマット向けに構成されるとき、所定の変換単位（ＴＵ）サイズセットのうちの１つであるサイズの任意の所与の変換単位（ＴＵ）の各色差チャネルの色差領域は、所与の変換単位（ＴＵ）の輝度領域よりも小さい寸法を有する（すなわち、暗黙的分割が行われるとき）。
【００７１】
４：２：２色差フォーマットが使用されるとき、この結果として、各色差チャネルに対する色差サンプルの図６Ｃの１６ｘ３２領域６６２を含み、したがって、色差サンプル格子上の１６ｘ３２領域を占有する符号化単位（ＣＵ）６０２がもたらされる。図６Ｃは、（図５Ｂとは対照的に）各色差サンプルが水平方向および垂直方向において等間隔に離間されている、色差サンプルのアレイとして図示されている、色差サンプル格子上の領域を示す。４：２：２色差フォーマットが使用されることに起因して、図６Ｃの各色差領域は、図６Ｂの対応する輝度領域と比較して水平方向に圧縮されているように見える。１の分割変換フラグ値７０２によって、符号化単位（ＣＵ）６０２に対応する１６ｘ３２領域６６２が、８ｘ１６領域６６４のような、４つの８ｘ１６領域に分割される。８ｘ１６領域６６４は、非正方形形状を有し、また、４ｘ８領域６７０のような、図６Ｃに示されている他の非正方形領域よりもサイズが大きい。各８ｘ１６領域について、分割変換フラグ値７０４のような分割変換フラグ値が、輝度サンプルアレイに対する変換ツリー６３０内に存在する四分木分割と同様に、対応する８ｘ１６領域が、４つのより小さい４ｘ８領域にさらに細分割されるべきか否かを示す。右上の８ｘ１６領域６７２は、４つの４ｘ８領域にさらに細分割される。１の符号化ブロックフラグ値８０４が、４つの４ｘ８領域の各々が有意な残差係数を含み得ることを示す。したがって、対応する領域に変換が存在することを示すために、各４ｘ８領域の符号化ブロックフラグが必要とされる。これら４つの４ｘ８領域のうち左下の４ｘ８領域６７４（斜線部）は、変換単位（ＴＵ）を含むが、変換を含まず、それゆえ、０の符号化ブロックフラグ値８１４を有する。領域６７０のような、残りの４ｘ８領域は各々変換を有し、それゆえ、１の対応する符号化ブロックフラグ値を有する。左上の８ｘ１６領域は、２つのサイズが等しい８ｘ８領域に細分割される。四分木細分割とは対照的に、符号化ビットストリーム３１２内に対応する分割変換フラグが存在しない。
【００７２】
符号化ビットストリーム３１２内にシグナリングが存在しない、変換単位（ＴＵ）の、色差チャネルのようなチャネルの領域の、複数の領域（その各々が変換を有し得る）への分割は、「暗黙的分割」と称される。暗黙的分割によって、この事例（８ｘ１６）に関する非正方形変換をサポートするハードウェアを導入する必要がなくなる。代わりに、第１の８ｘ８変換６６６のような変換が使用される。暗黙的分割からもたらされる領域の各々がすべて０の残差情報を含む可能性があるため、暗黙的分割からもたらされる各領域内の変換の存在を指定する必要がある。したがって、暗黙的分割からもたらされる各領域に、別個の符号化ブロックフラグ値が必要とされる。この事例において、符号化ブロックフラグ値８０６は第１の８ｘ８変換６６６に対応し、符号化ブロックフラグ値８０８は、第２の８ｘ８変換６６８に対応する。暗黙的分割が行われない変換単位（ＴＵ）について、各色差チャネルの符号化ブロックフラグ値は、色差チャネルに対する変換単位（ＴＵ）によって占有される領域に関する変換の存否を指定する。暗黙的分割が行われるとき、結果もたらされる領域の各々に別個の符号化ブロックフラグ値（図８には示さない）が必要とされるが、実施態様は、変換単位（ＴＵ）全体に起因する符号化ブロックフラグ値を保持し得る。別個の符号化ブロックフラグ値はすべての事例において「１」と暗示され得るか、または、別個の符号化ブロックフラグ値は、分割からもたらされる各領域の符号化ブロックフラグ値に論理「ＯＲ」演算を実施することによって求められ得る。別個の符号化ブロックフラグ値が、分割からもたらされる各領域の符号化ブロックフラグ値から求められる場合、別個の符号化ブロックフラグ値は、追加の符号化ブロックフラグ（図９には示さない）として、エントロピー符号化器３２４によって符号化ビットストリーム３１２内に符号化され、エントロピー復号器４２０によって符号化ビットストリーム３１２から復号され得る。そのような事例において、別個の符号化ブロックフラグ値が０である場合、分割からの各領域の符号化ブロックフラグ値は０であると暗示され得、別個の符号化ブロックフラグ値が１である場合、分割からの各領域の符号化ブロックフラグは、エントロピー符号化器３２４によって符号化ビットストリーム３１２内に符号化され、エントロピー復号器４２０によって符号化ビットストリーム３１２から復号される。
【００７３】
１６ｘ３２領域６６２の左下の８ｘ１６領域６８０は暗黙的分割を示し、上側の８ｘ８の暗示された領域６８２には８ｘ８変換が存在するが、下側の８ｘ８の暗示された領域６８４内には８ｘ８リ変換は存在しない。右下の８ｘ１６アレイ６７６（斜線部）は変換単位（ＴＵ）を含むが、暗黙的分割からもたらされるいずれの正方形８ｘ８領域における変換も含まず、それゆえ、０の符号化ブロックフラグ値８１０  ８１２を有する。
【００７４】
２つの色差チャネルが存在する結果として、図６Ｃに示されている構造が重複することになり、別個の符号化ブロックフラグ値が、各色差チャネルに対する変換の存在を指定するために使用される。この実施態様において、サイズ４ｘ８以外の色差の領域サイズについて分割が暗示されており、結果として、４ｘ８変換８１６（領域６７０内に含まれる）のような４ｘ８矩形変換が使用され、他の事例における既存の正方形変換（たとえば、８ｘ８、１６ｘ１６）を再使用することが可能であった。したがって、２つの領域への分割、それゆえ（サイズ８ｘ８および１６ｘ１６の）２つの変換を使用することができる、所定の領域サイズ（８ｘ１６および１６ｘ３２など）セットが存在すると考えられ得る。暗黙的分割が行われる所定の領域サイズセットの異なる定義も可能であり、既存の正方形変換および矩形変換の異なる組み合わせが使用されることも可能になる。特定の実施態様が常に分割を暗示することも可能であり、その事例において、色差４：２：２色チャネルに対して矩形変換は導入されない。そのような事例において、暗黙的分割が行われる所定の領域サイズセットはすべての可能な色差領域サイズ（たとえば、４：２：２色差フォーマットの４ｘ８、８ｘ１６および１６ｘ３２、または、４：４：４色差フォーマットの４ｘ４、８ｘ８、１６ｘ１６および３２ｘ３２）を含む。
【００７５】
図１６は、４：２：２色差フォーマットのすべての可能な色差領域サイズ（４ｘ８、８ｘ１６、および１６ｘ３２）に対する「常時（ａｌｗａｙｓ）」暗黙的分割の一実施態様の「矩形変換なし（ｎｏ  ｒｅｃｔａｎｇｕｌａｒ  ｔｒａｎｓｆｏｒｍ）」の一例を示す概略図である。図１６に示すように、暗黙的分割からもたらされる各色差領域に「１」および「２」がラベリングされている。
【００７６】
４：２：０色差フォーマットが使用されているとき、暗黙的分割は変換単位（ＴＵ）内のいずれの領域についても行われず、それゆえ、各色差チャネルに対する変換の最大数は常に１である（各色差チャネルに対する符号化ブロックフラグ値が、色差変換が行われるか否かを制御する）。
【００７７】
ビデオエンコーダ１１４およびビデオデコーダ１３４について、輝度チャネルと色差チャネルとの間の差とは無関係に説明しているが、色差フォーマットからもたらされるサンプル格子が異なることによって、必然的に、モジュールの差異が必要とされる。実際の実施態様は、輝度チャネルと色差チャネルとに別個の「処理経路」を有し得る。したがって、そのような実施態様は、輝度チャネルと色差サンプルとの処理を分離し得る。符号化ビットストリーム３１２は輝度チャネルおよび色差チャネルの両方に対する単一のビットストリームであるため、エントロピー符号化器３２４およびエントロピー復号器４２０は分離されない。加えて、フレームバッファ３３２、４３２のような単一のフレームバッファが、輝度および色差サンプルを保持し、したがって分離されない。しかしながら、モジュール３２２〜３３０および３３４〜３４０ならびにモジュール４２２〜４３０および４３４は分離されている輝度処理および色差処理を有し得、実施態様が輝度および色差に対して別個の論理を有し、したがって、「輝度処理経路」および「色差処理経路」を作成することを可能にする。
【００７８】
特定の実施態様は、変換単位（ＴＵ）の色差チャネルの１６ｘ３２領域の２つの１６ｘ１６領域への分割を暗示し得るが、８ｘ１６および４ｘ８の事例の分割は暗示しない。そのような実施態様は、３２点変換論理を色差処理経路に導入する必要性を回避し、代わりに、当該技術分野において定着している４、８または１６点変換論理に依拠することが可能である。
【００７９】
図９Ａおよび図９Ｂは、変換ツリーの階層レベルを符号化または他の様態で表すのに使用することができる構文構造を示す。変換ツリーの非リーフノードにおいて、構文構造９００は、変換ツリーに対応する符号化ビットストリーム３１２の一部分に存在する構文要素を定義するために、データ構造７００および８００のようなデータ構造に従って再帰的に拡張される。変換ツリーのリーフノード（変換ツリーにおいてこれ以上細分割は行われない）において、構文構造９３０は符号化ビットストリーム３１２のその部分に存在する構文要素を定義する。一般的に、輝度について１つのデータ構造が存在し、色差について２つのデータ構造が存在するが、アルファチャネルまたは深度マップを符号化するためのもののような、追加のデータ構造も可能である。代替的に、単一のデータ構造が複数の色差チャネルによって共有され、符号化ブロックフラグ値がそれらの色差チャネルの間で共有されることが可能である事例などにおいて、より少ないデータ構造が利用されてもよい。変換ツリー非リーフノード構文構造９０２は、変換ツリー６３０のような、１つの階層レベルの変換ツリーの符号化を定義する。分割変換フラグ９１０が、分割変換フラグ値７０２のような、１の分割変換フラグ値を符号化する。この値は、変換ツリー非リーフノード構文構造９０２が、変換ツリー非リーフノード構文構造９０２もしくは変換ツリーリーフノード構文構造９３２のさらなるインスタンスを含むより低い階層レベル、または「子ノード」を含むことを示す。符号化ブロックフラグ９１２が、「Ｕ」色差チャネルに対する１の符号化ブロックフラグ値８０２を符号化し、符号化ブロックフラグ９１４が、「Ｖ」色差チャネルに対するさらなる符号化ブロックフラグ値を符号化する。変換ツリー非リーフノード構文構造９０２が変換ツリー階層の最上位を定義している場合、符号化ブロックフラグ９１２  ９１４が存在する。変換ツリー非リーフノード構文構造９０２が変換ツリー階層の最上位を定義していない場合、符号化ブロックフラグ９１２  ９１４は、変換ツリー階層の親レベルにある対応する符号化ブロックフラグが存在し、かつ１の値を有する場合にのみ、存在する。変換ツリー６３０には（最上位階層レベルに対して）より低い階層レベルが存在するため、四分木細分割が行われる。この細分割の結果として、４つの変換ツリー構文構造９１６、９１８、９２０、９２２（０〜３の番号を付される変数「ｂｌｋＩｄｘ」（ブロックインデックス）によって識別される）が、変換ツリー非リーフノード構文構造９０２内に含まれることになる。
【００８０】
構文構造９３０は、変換ツリーリーフノード９３２のリーフノード（すなわち、それ以上細分割は行われない）の符号化を定義する。分割変換フラグ９４０が、分割変換フラグ値７０４のような、０の分割変換フラグ値を符号化する。
【００８１】
分割変換フラグは、対応する領域が最小サイズよりも大きい場合にのみ符号化される。たとえば、領域６３６は、４ｘ４輝度サンプル（サポートされる最小輝度変換サイズに対応する）の領域に対する許容可能な最小サイズを有し、そのため、変換分割フラグ値７１４は０であると暗示され、対応する変換ツリー構文構造に対して分割変換フラグは符号化されない。
【００８２】
領域６３６について、色差残差サンプルが４ｘ８色差変換を使用して変換され、したがって、暗黙的な変換の分割は存在しない。色差チャネルの各々について変換が存在することをシグナリングするための、符号化ブロックフラグ９４２および符号化ブロックフラグ９４６のような符号化ブロックフラグが存在し得る。符号化ブロックフラグ９５０は、輝度チャネルに対する変換が存在することをシグナリングする。輝度および色差チャネル（存在する場合）の残差係数が、変換単位（ＴＵ）構文構造９５２内に存在する。符号化ブロックフラグ９５０の値が１である場合、輝度変換の残差係数または変換がスキップされるときの残差サンプルのいずれかを符号化する、輝度変換スキップフラグ９６４および輝度残差データブロック９５４が、符号化ビットストリーム３１２内に存在する。輝度変換スキップフラグ９６４の値は、ビデオエンコーダ１１４内の変換モジュール３２０およびビデオデコーダ１３４内の逆変換モジュール４２２が使用される（通常動作）か、またはバイパスされる（変換スキップ動作）を示す。各色差チャネルの符号化ブロックフラグの値が１である場合、対応する色差変換スキップフラグ９６６および９６８ならびに色差残差ブロック９５６および９６０が符号化ビットストリーム３１２内に存在する。変換スキップフラグ９６６は色差残差ブロック９５６に関する変換スキップモードをシグナリングし、変換スキップフラグ９６８は色差残差ブロック９６０に関する変換スキップモードをシグナリングする。暗黙的な変換の分割が行われないとき、符号化ブロックフラグ９４４および９４８ならびに色差残差ブロック９５８および９６２は符号化ビットストリーム３１２には存在しない。暗黙的な変換の分割が行われないとき、したがって、各色差チャネルに対する変換スキップフラグは、領域６３６の全体における対応する色差チャネルの変換スキップモードをシグナリングする。
【００８３】
領域６６４について、色差残差サンプルが２つの８ｘ８色差変換を使用して変換され、したがって、暗黙的な変換の分割が存在する。存在する場合、符号化ブロックフラグ９４２および９４６が、第１の８ｘ８変換６６６の各色差チャネルに対する８ｘ８変換が存在することをシグナリングする。存在する場合、符号化ブロックフラグ９４４および符号化ブロックフラグ９４８が、第２の８ｘ８変換６６８の各色差チャネルに対する８ｘ８変換が存在することをシグナリングする。符号化ブロックフラグ９４４の値が１である場合、色差残差ブロック９５８が符号化ビットストリーム３１２内に存在する。符号化ブロックフラグ９４８の値が１である場合、色差残差ブロック９６２が符号化ビットストリーム３１２内に存在する。変換スキップフラグ９６６は色差残差ブロック９５６および９５８に関する変換スキップモードをシグナリングし、変換スキップフラグ９６８は色差残差ブロック９６０および９６２に関する変換スキップモードをシグナリングする。暗黙的な変換の分割が存在するとき、したがって、各色差チャネルに対する変換スキップフラグは、暗黙的な変換の分割が存在しないときの挙動に従って、領域６６４の全体における対応する色差チャネルの変換スキップモードをシグナリングしている。
【００８４】
図９Ｂに示されているような構文構造９３０は、暗黙的な変換の分割について隣接して符号化される各色差チャネルの第１の変換および第２の変換を示す。各色差チャネルの構文要素の隣接した符号化、または、他の構文要素が組み入れられている、各色差チャネルの構文要素の符号化のような他の構成が、代替的に使用されてもよい。
【００８５】
図９Ｃ、図９Ｄおよび図９Ｅは、変換ツリーの階層レベルを符号化または他の様態で表すのに使用することができる代替的な構文構造９１００を示す。変換ツリーの非リーフノードにおいて、代替的な構文構造９１００は、変換ツリーに対応する符号化ビットストリーム３１２の一部分に存在する構文要素を定義するために、データ構造７００および８００のようなデータ構造に従って再帰的に拡張される。各々が変換単位（ＴＵ）を含む、リーフノードを含む変換ツリー内の各ノードに対して、代替的な構文構造９１００のインスタンスが存在する。各色差チャネルの変換単位（ＴＵ）を細分割するために「暗黙的な分割」が行われる場合、構文構造９１３０が、暗黙的な分割からもたらされる第１の部分領域（たとえば、４：２：２色差フォーマットが使用されているときは色差領域の上半分、または、４：４：４色差フォーマットが使用されているときは色差領域の左上の四半部）のために、符号化ビットストリーム３１２のその部分に存在する構文要素を定義する。さらに、構文構造９１６０が、暗黙的な分割からもたらされる後続の部分領域（たとえば、４：２：２色差フォーマットが使用されているときは色差領域の下半分のもう１つの部分領域、または、４：４：４色差フォーマットが使用されているときは色差領域の残りの３つの部分領域）のために、符号化ビットストリーム３１２のその部分に存在する構文要素を定義する。「第１の」部分領域および「後続の」部分領域（たとえば、第２の部分領域および可能性として、第３の部分領域または第４の部分領域）の概念は、四分木内の領域の部分領域の走査順序において暗示される。走査順序は、部分領域が第１に左から右へトラバースされ、第２に上から下へトラバースされるようなものである。一般的に、輝度について１つのデータ構造が存在し、色差について２つのデータ構造が存在するが、アルファチャネルまたは深度マップを符号化するためのもののような、追加のデータ構造が可能である。代替的に、単一のデータ構造が複数の色差チャネルによって共有され、符号化ブロックフラグ値がそれらの色差チャネルの間で共有されることが可能である事例などにおいて、より少ないデータ構造が利用されてもよい。変換ツリー構文構造９１０２は、変換ツリー６３０のような、変換ツリーの１つの階層レベルの符号化を定義する。
【００８６】
変換ツリー６３０のような、変換ツリーの非リーフノードにある変換ツリー構文構造９１０２のインスタンスについて、分割変換フラグ９１１０が、分割変換フラグ値７０２のような、１の分割変換フラグ値を符号化する。この値は、変換ツリー構文構造９１０２のインスタンスが、変換ツリー構文構造９１０２のさらなるインスタンスを含むより低い階層レベル、または「子ノード」を含むことを示す。符号化ブロックフラグ９１１２が、符号化ブロックフラグ９１２の記述に従って符号化ブロックフラグ値を符号化する。符号化ブロックフラグ９１１４が、符号化ブロックフラグ９１４の記述に従って符号化ブロックフラグ値を符号化する。変換ツリー６３０には（最上位階層レベルに対して）より低い階層レベルが存在するため、四分木細分割が行われる。この細分割の結果として、４つの変換ツリー構文構造９１１６、９１１８、９１２０、９１２２（０〜３の番号を付される「ｂｌｋＩｄｘ」変数によって識別される）が、変換ツリーノード構文構造９１０２内に含まれることになる。変換ツリー構文構造９１１６、９１１８、９１２０、９１２２の各々は、変換ツリー構文構造９１０２の別のインスタンスである。変換がスキップされるとき、輝度変換の残差係数または残差サンプルのいずれかを符号化する符号化ブロックフラグ９１２４および輝度変換単位部分９１２６は、変換ツリー構文構造９１０２からなくなる。
【００８７】
実施態様はまた、符号化ブロックフラグ９１２４および輝度変換単位部分９１２６（存在する場合）が、符号化ブロックフラグ９１１４と変換ツリー構文構造９１１６との間のような、変換ツリー構文構造９１０２内のより前方に置かれるようにも、変換ツリー構文構造９１０２を配列し得る。
【００８８】
変換ツリー６３０のような、変換ツリーのリーフノードにある変換ツリー構文構造９１０２のインスタンスについて、分割変換フラグ９１１０が、分割変換フラグ値７０４のような、０の分割変換フラグ値を符号化する。したがって、変換ツリー構文構造９１０２のこのインスタンスは、変換ツリー９３０内の変換単位（ＴＵ）に対応する。変換単位（ＴＵ）は、符号化単位（ＣＵ）６０２のような、変換単位（ＴＵ）を含む符号化単位（ＣＵ）、および、変換深度に従って決定されるサイズを有する。符号化ブロックフラグ９１１２は、「Ｕ」色差チャネルに対する暗黙的な分割からもたらされる色差領域のいずれかが１の符号化ブロックフラグ値を有し得ることを示す１の符号化ブロックフラグ値を符号化する。符号化ブロックフラグ９１１２が０の値を符号化する場合、「Ｕ」色差チャネルに対する暗黙的な分割からもたらされる各色差領域の符号化ブロックフラグ値は、０と暗示される符号化ブロックフラグ値を有する。たとえコードブロックフラグ９１１２が１の値を符号化する場合であっても、実施態様は依然として、暗黙的な分割からもたらされる各色差領域に対して０の値を有する符号化ブロックフラグを符号化し得る。それゆえ、実施態様は、符号化ビットストリーム３１２から符号化ブロックフラグ９１１２を省くことができ、代わりに、省かれる符号化ブロックフラグ９１１２に対しては常に１の符号化ブロックフラグ値を暗示する。符号化ブロックフラグ９１１４は、符号化ブロックフラグ９１１２と同様に、「Ｖ」色差チャネルに対するさらなる符号化ブロックフラグ値を符号化する。４つの色差領域にする暗黙的な分割が行われる（色差残差係数アレイの最大数が４である）ものに一致する変換単位（ＴＵ）サイズについて、４つの変換ツリー構文構造９１１６  ９１１８  ９１２０  ９１２２（「ｂｌｋＩｄｘ」０〜３によって識別される）が、変換ツリーノード構文構造９１０２内に含まれる。２つの色差領域にする暗黙的な分割が行われる（色差残差係数アレイの最大数が２である）ものに一致する変換単位（ＴＵ）サイズについて、変換ツリー構文構造９１１６  ９１１８（「ｂｌｋＩｄｘ」０および１によって識別される）のような２つの変換ツリー構文構造が、変換ツリーノード構文構造９１０２内に含まれる。変換ツリー構文構造９１１６  ９１１８  ９１２０  ９１２２の各々は、色差構文構造９１３２の変換ツリーのインスタンスである。符号化ブロックフラグ９１２４は、変換単位（ＴＵ）の輝度チャネルに対する変換の存否を指定する、符号化ブロックフラグ値７０８のような符号化ブロックフラグ値を符号化する。変換単位の輝度部分９１２６は、輝度変換スキップフラグを変換スキップフラグ９１２７として符号化し、輝度残差係数アレイを輝度残差構文要素９１２８として符号化する。
【００８９】
暗黙的な分割が行われるときに第１の色差領域（または「部分領域」）に対してのみ存在する、色差構文構造９１３２の変換ツリーは、変換ツリー構文構造９３０の低減された構文セットを含む。符号化ブロックフラグ９１４２は、色差領域の「Ｕ」色差チャネルに対する符号化ブロックフラグ値を符号化する。符号化ブロックフラグ９１４４は、色差領域の「Ｖ」色差チャネルに対する符号化ブロックフラグ値を符号化する。変換単位（ＴＵ）の色差部分９１４６は、変換単位（ＴＵ）構文構造９５２のサブセットを符号化する。変換単位（ＴＵ）の色差部分９１４６は、単一の色チャネルの色差データを含む色差変換を符号化する。色差変換は、符号化ブロックフラグ９１４２の値が１である場合は「Ｕ」色差チャネルの色差残差構文要素９１５０としての色差残差係数アレイ、および、符号化ブロックフラグ９１４４の値が１である場合は「Ｖ」色差チャネルの色差残差構文要素９１５２としての色差残差係数アレイ（まとめて、「色差変換」のための残差係数アレイ）の形態で符号化される。変換スキップフラグ９１４８は、色差残差構文要素９１５０と関連付けられ、暗黙的な分割からもたらされる各色差領域について、「Ｕ」色差チャネルに対する変換スキップフラグ値を符号化する。変換スキップフラグ９１５１は、色差残差構文要素９１５２と関連付けられ、暗黙的な分割からもたらされる各色差領域について、「Ｖ」色差チャネルに対する変換スキップフラグ値を符号化する。この関連付けは、変換スキップフラグが、対応する残差構文要素を含む「残差符号化」構文構造内で符号化されることによる。
【００９０】
暗黙的な分割が行われるときに第１の色差領域（または「部分領域」）以外の色差領域に対してのみ存在する、色差構文構造９１６２の変換ツリーは、変換ツリー構文構造９３０の低減された構文セットを含む。符号化ブロックフラグ９１７２は、色差領域の「Ｕ」色差チャネルに対する符号化ブロックフラグ値を符号化する。符号化ブロックフラグ９１７４は、色差領域の「Ｖ」色差チャネルに対する符号化ブロックフラグ値を符号化する。変換単位（ＴＵ）の色差部分９１７６は、変換単位（ＴＵ）構文構造９５２のサブセットを符号化する。変換単位（ＴＵ）の色差部分９１７６は、符号化ブロックフラグ９１７２の値が１である場合は「Ｕ」色差チャネルに関する色差残差構文要素９１８０として色差残差係数アレイを符号化する。変換単位（ＴＵ）の色差部分９１７６は、符号化ブロックフラグ９１７４の値が１である場合は「Ｖ」色差チャネルに関する色差残差構文要素９１８２として色差残差係数アレイを符号化する。各色差残差構文要素９１８０に対応する領域の変換スキップモードは、変換スキップフラグ９１４８から決定される。各色差残差構文要素９１８２に対応する領域に対応する領域の変換スキップモードは、変換スキップフラグ９１５１から決定される。実施態様は、第１の色差領域からの変換スキップフラグを、後続の部分領域（複数の場合もあり）に使用するために記憶するために、レジスタ２４６のようなハードウェアレジスタ、またはメモリ２０６を利用することができる。
【００９１】
図９Ｄおよび図９Ｅに示されているような構文構造９１３０および９１６０は、暗黙的な変換の分割ために、各色差チャネルの第１の色差残差係数アレイおよび第２の色差残差係数アレイがその後に続く、隣接して符号化されている第１の符号化ブロックフラグおよび第２の符号化ブロックフラグを示す。各色差チャネルについての符号化ブロックフラグおよび色差残差係数アレイの隣接した符号化のような他の構成が、代替的に使用されてもよい。
【００９２】
暗黙的な変換の分割は、８ｘ１６領域６６４が２つの８ｘ８領域に分割されることによって示されているが、代替的な実施態様は、他の領域の分割を実施してもよい。たとえば、いくつかの実施態様は、１６ｘ３２領域の２つの１６ｘ１６領域への分割を暗示してもよい。そのような実施態様は、色差処理経路における３２点１Ｄ変換の必要性を回避する点で好都合である。４：２：０色差フォーマットが適用されるときは３２点１Ｄ変換は色差処理経路に必要とされないため、３２点１Ｄ変換の必要性は、色差処理経路からまったくなくなる。したがって、輝度チャネルと色差チャネルとを分離するのに別個の処理回路を使用する実施態様は、色差処理回路においてより低い実装コストを達成することができる。
【００９３】
各輝度サンプル位置に１つの色差サンプル位置がある４：４：４色差フォーマットが存在する。したがって、このフォーマットでは、色差チャネルおよび輝度チャネルに対する変換は同じサイズを有し得る。輝度処理経路における３２ｘ３２の最大変換サイズでは、これは、分離実施態様については３２ｘ３２変換を色差処理経路に導入することを必要とする。特定の実施態様は、色差処理経路において既存の１６ｘ１６変換を再使用することを可能にする、３２ｘ３２領域を４つの１６ｘ１６領域へ分割するための各色差チャネルに対する分割を暗示し得る。３２ｘ３２変換は、４：４：４色差フォーマットのための色差処理経路においてのみ使用されるため、３２ｘ３２領域を４つの１６ｘ１６領域へ分割するための各色差チャネルに対する分割を暗示することによって、３２ｘ３２変換が色差処理経路からなくなることが可能になり、必要とされる処理回路が低減する。そのような実施態様は、各色差チャネルに対する４つの符号化ブロックフラグ値を必要として、したがって、符号化ビットストリーム３１２内の各色差チャネルの構文構造９３０内で符号化されている最大４つの符号化ブロックフラグを必要とする。
【００９４】
４：２：２色差フォーマットをサポートする実施態様はまた、３２ｘ１６領域を４つの８ｘ１６領域へ分割するための各色差チャネルに対する分割をも暗示し得る。そのような実施態様は、各色差チャネルに対する４つの符号化ブロックフラグ値を必要として、したがって、符号化ビットストリーム３１２内の各色差チャネルの構文構造９３０内で符号化されている４つの符号化ブロックフラグを必要とし、したがって、「ＣＵ３」、「ＣＵ４」、「ＣＶ３」および「ＣＶ４」符号化ブロックフラグ（図９Ｂには示されていない）が、変換単位（ＴＵ）構文構造９５２に導入され得る。そのような実施態様は、３２点変換論理が色差処理経路に導入されることを回避し、８ｘ１６領域が細分割されない場合、色差チャネルについてサイズ８ｘ１６の変換を変換することを必要とする（輝度チャネルにおける）サイズ１６ｘ１６の変換単位（ＴＵ）に必要とされる８ｘ１６変換論理を再使用することができる。
【００９５】
図１０は、変換ツリー非リーフノード構文構造９０２および変換ツリーリーフノード構文構造９３２を符号化することによって変換単位（ＴＵ）を符号化するための方法１０００を示す概略流れ図である。方法１０００は、変換単位（ＴＵ）の或る色差チャネルを参照して説明されるが、方法１０００は、変換単位（ＴＵ）の任意の色差チャネルに適用されてもよい。変換ツリー非リーフノード構文構造９０２および変換ツリーリーフノード構文構造９３２は変換ツリー内の１つのノードを記述しているため、方法１０００は、変換ツリーの１つのノードを符号化ビットストリーム３１２内に符号化する。方法１０００は、ハードウェア内に、または、たとえば、プロセッサ２０５上で実行可能なソフトウェアによって実装されてもよい。方法１０００は、最初は変換ツリーの最上位に対して呼び出され、変換ツリーの子ノードを符号化するためにそれ自体を（再帰的に）呼び出すことが可能である。変換単位サイズを求めるステップ１００２が、変換ツリーを含む符号化単位（ＣＵ）のサイズおよび変換単位（ＴＵ）の変換深度値に従って、変換ツリー内の変換単位（ＴＵ）のサイズを求める。方法１０００が変換ツリーの最上位において呼び出されるとき、変換深度値は０に設定され、それ以外の場合、変換深度値は方法１０００の親インスタンスによって提供される。変換深度値が最大許容変換深度未満である場合、分割変換フラグ値７０２のような分割変換フラグ値が、分割変換フラグ９１０として符号化ビットストリーム３１２内に符号化される。
【００９６】
分割変換フラグ値が１であるとき、変換ツリー階層の親ノードが１の対応する符号化ブロックフラグ値を有する場合にのみ、色差符号化ブロックフラグ９１２および９１４が各色差チャネルについて符号化される。その後、方法１０００は変換ツリーの各子ノード（符号化ビットストリーム３１２の部分において変換ツリー構文構造９１６、９１８、９２０および９２２によって表される）に対して、方法１０００の新たなインスタンスを呼び出す。子ノードに対して呼び出される方法１０００の各インスタンスには、現在の方法１０００のインスタンスの変換深度値に１を増分した値に等しい変換深度値が与えられる。  
【００９７】
分割変換フラグ値が０であるとき、順変換の最大数を識別するステップ１００４が、符号化されている領域の各色差チャネルに対する変換の最大数（ｎ）を求める。暗黙的分割が行われないとき、この数ｎは１になる。４：２：２色差フォーマットが使用されており、８ｘ１６領域６６４のような色差チャネルの矩形領域に対処することになり、その領域サイズが所定の領域サイズセット（１６ｘ３２および８ｘ１６など）のうちの１つであるとき、暗黙的分割が行われ、変換の最大数は２になる（それ以外の場合、変換の数は１になる）。そうでない（領域サイズが所定の領域サイズセットのうちの１つでない）場合、変換の最大数は１になる。たとえば、４ｘ８が所定の領域サイズセットのうちの１つでない場合、変換の最大数は１になる。４：４：４色差フォーマットが使用されており、対処することになる領域サイズが所定の領域サイズセット（３２ｘ３２領域など）のうちの１つであるとき、暗黙的分割が行われ、変換の最大数は４になる。そうでない（領域サイズが所定の領域サイズセットのうちの１つでない）場合、最大数は１になる。たとえば、８ｘ８が所定の領域サイズセットのうちの１つでない場合、変換の最大数は１になる。所定の領域サイズセットは８ｘ１６を含むが、４：２：２色差フォーマットが使用されているときは１６ｘ３２のみ、または４：４：４色差フォーマットが使用されているときは３２ｘ３２のような、他の所定の領域サイズセットが可能である。
【００９８】
各色差チャネルについて、親ノードが１の符号化ブロックフラグ値を有していた場合、ｎの各々について、符号化ブロックフラグが符号化ビットストリーム３１２内に符号化される。たとえば、変換の数が２に等しいとき、符号化ブロックフラグ９４２および９４４は、分割によって暗示される２つの領域の各々に変換が存在することを示す。順変換を選択するステップ１００６は、変換深度に応じて決まり、したがって最大符号化単位内の変換単位の階層レベルに関係する変換単位（ＴＵ）サイズに基づいて、最大数の変換の各々について、所定の順変換セットから順変換を選択する。変換深度が０に等しいとき、変換単位（ＴＵ）サイズは符号化単位（ＣＵ）サイズに等しい。変換深度が増分する度ごとに、変換単位（ＴＵ）サイズは半分になる。したがって、３２ｘ３２の符号化単位（ＣＵ）サイズ、０の変換深度および４：２：２色差フォーマットの使用について、変換単位（ＴＵ）サイズは３２ｘ３２になり、したがって、色差に関する変換サイズは１６ｘ３２になる。たとえば、変換の最大数が２であり、色差の領域サイズ１６ｘ３２であるとき、１６ｘ１６順変換が、暗黙的分割からもたらされる色差の１６ｘ１６領域の各々に対して選択される。
【００９９】
順変換を適用するステップ１００８が、１の符号化ブロックフラグ値を有する対応する領域上で最大数の変換の各々について順変換を実施する。色差残差サンプルアレイを符号化するステップ１００８が、一般的に変換モジュール３２０によって実施される。この結果として、各色差残差サンプルアレイ（空間領域表現）が色差残差係数アレイ（周波数領域表現）に変換される。
【０１００】
色差残差係数アレイを符号化するステップ１０１０が、１の符号化ブロックフラグ値を有する各色差チャネルの最大数の変換領域の各々の色差残差係数アレイを符号化ビットストリーム３１２内に符号化する。所与の色差チャネルの所与の変換単位の符号化される色差残差係数アレイの数は、各変換の符号化ブロックフラグ値に応じて決まり、したがって０から（最大で）変換の最大数まで変動する。たとえば、変換の数が２であり、このカウント値の各々について両方の色差チャネルが１の符号化ブロックフラグ値を有するとき、色差残差ブロック９５６、９５８、９６０および９６２が符号化ビットストリーム３１２内に符号化される。所与の色差チャネルに対する各変換の符号化ブロックフラグ値が０である場合、その色差チャネルについては、色差残差ブロックは符号化ビットストリーム３１２内に符号化されない。色差残差係数アレイを符号化するステップ１０１０が、一般的にエントロピー符号化器３２４によって実施される。
【０１０１】
図１１は、変換ツリー非リーフノード構文構造９０２および変換ツリーリーフノード構文構造９３２を復号することによって変換単位（ＴＵ）を復号するための方法１１００を示す概略流れ図である。方法１１００は、変換単位（ＴＵ）の或る色差チャネルを参照して説明されるが、方法１１００は、変換単位（ＴＵ）の任意の色差チャネルに適用されてもよい。変換ツリー非リーフノード構文構造９０２および変換ツリーリーフノード構文構造９３２は変換ツリー内の１つのノードを記述しているため、方法１１００は、変換ツリーの１つのノードを符号化ビットストリーム３１２から復号する。方法１１００は、適切なハードウェア内で、または、代替的に、たとえば、プロセッサ２０５によって実行可能なソフトウェア内で実施されてもよい。方法１１００は、最初は変換ツリーの最上位に対して呼び出され、変換ツリーの子ノードを復号するためにそれ自体を（再帰的に）呼び出すことが可能である。変換単位（ＴＵ）サイズを求めるステップ１１０２が、変換単位サイズを求めるステップ１００２と同様に変換単位（ＴＵ）サイズを求める。変換単位サイズを求めるステップ１１０２は、変換ツリーを含む符号化単位（ＣＵ）のサイズおよび変換単位（ＴＵ）の変換深度値に従って、変換ツリー内の変換単位（ＴＵ）のサイズを求める。方法１１００が変換ツリーの最上位において呼び出されるとき、変換深度値は０に設定され、それ以外の場合、変換深度値は方法１１００の親インスタンスによって提供される。変換深度値が最大許容変換深度未満である場合、分割変換フラグ値７０２のような分割変換フラグ値が、分割変換フラグ９１０として符号化ビットストリーム３１２から復号される。
【０１０２】
分割変換フラグ値が１であるとき、変換ツリー階層の親ノードが１の対応する符号化ブロックフラグ値を有する場合にのみ、色差符号化ブロックフラグ９１２および９１４が各色差チャネルについて復号される。その後、方法１１００は変換ツリーの各子ノード（符号化ビットストリーム３１２の部分において変換ツリー構文構造９１６、９１８、９２０および９２２によって表される）に対して、方法１１００の新たなインスタンスを呼び出す。子ノードに対して呼び出される方法１１００の各インスタンスには、現在の方法１１００のインスタンスの変換深度値に１を増分した値に等しい変換深度値が与えられる。
【０１０３】
分割変換フラグ値が０であるとき、逆変換の最大数を識別するステップ１１０４が、順変換の最大数（ｎ）を識別するステップ１００４と同様に、復号されている領域の各色差チャネル内に存在する少なくとも１つの色差残差係数アレイの各々に対する変換の（最大）数（ｎ）を求める。暗黙的分割が行われないとき、この数ｎは１になる。４：２：２色差フォーマットが使用されており、８ｘ１６領域６６４のような色差チャネルの矩形領域に対処することになり、その領域サイズが所定の領域サイズセット（１６ｘ３２および８ｘ１６など）のうちの１つであるとき、暗黙的分割が行われ、変換の最大数は２になる（それ以外の場合、変換の数は１になる）。そうでない（領域サイズが所定の領域サイズセットのうちの１つでない）場合、変換の最大数は１になる。たとえば、４ｘ８が所定の領域サイズセットのうちの１つでない場合、変換の最大数は１になる。４：４：４色差フォーマットが使用されており、対処することになる領域サイズが所定の領域サイズセット（３２ｘ３２領域など）のうちの１つであるとき、暗黙駅分割が行われ、変換の最大数は４になる。そうでない（領域サイズが所定の領域サイズセットのうちの１つでない）場合、最大数は１になる。たとえば、８ｘ８が所定の領域サイズセットのうちの１つでない場合、変換の最大数は１になる。所定の領域サイズセットは８ｘ１６を含むが、４：２：２色差フォーマットが使用されているときは１６ｘ３２のみ、または４：４：４色差フォーマットが使用されているときは３２ｘ３２のような、他の所定の領域サイズセットが可能である。各色差チャネルについて、親ノードが１の符号化ブロックフラグ値を有していた場合、ｎ個の変換の各々について、符号化ブロックフラグが符号化ビットストリーム３１２内で復号される。たとえば、変換の最大数が２に等しいとき、符号化ブロックフラグ９４２および９４４は、分割によって暗黙的される２つの領域の各々に変換が存在することを示す。
【０１０４】
その後、色差残差係数アレイを復号するステップ１１０６が、符号化ビットストリーム３１２から１の符号化ブロックフラグ値を有する各色差チャネルの最大数の変換領域の各々の残差係数アレイを復号する。所与の色差チャネルの所与の変換単位の復号される残差係数アレイの数は、各変換の符号化ブロックフラグ値に応じて決まり、したがって０から（最大で）「変換の数（ｎ）」まで変動する。たとえば、変換の数が２であり、このカウント値の各々について両方の色差チャネルが１の符号化ブロックフラグを有するとき、色差残差ブロック９５６、９５８、９６０および９６２が符号化ビットストリーム３１２から復号される。色差残差係数アレイを復号するステップ１１０６は、一般的に、エントロピー復号器４２０によって、１の符号化ブロックフラグ値を有する各色差残差係数アレイに対して実施される。
【０１０５】
その後、逆変換を選択するステップ１１０８が、各色チャネルの１の符号化ブロックフラグ値を有する最大数の変換の各々について、所定の逆変換セットから逆変換を選択する。たとえば、変換の最大数が２であり、領域サイズが１６ｘ３２であり、２つの変換の各々の符号化ブロックフラグ値が１であるとき、１６ｘ１６逆変換が、暗黙的分割からもたらされる１６ｘ１６領域の各々に対して選択される。
【０１０６】
その後、逆変換を適用するステップ１１１０が、１の符号化ブロックフラグ値を有する対応する領域上で最大数の変換領域の各々について逆変換を実施する。この結果として、各色差残差係数アレイ（周波数領域表現）が、復号ビデオフレームを表す色差残差サンプルアレイ（空間領域表現）に変換される。逆変換を適用するステップ１１１０は、一般的に、逆スケーリングおよび変換モジュール４２２によって実施される。
【０１０７】
図１２Ａは対角走査パターン１２０１を示し、図１２Ｂは水平走査パターン１２０２を示し、図１２Ｃは垂直走査パターン１２０３を示し、これらは各々４ｘ８変換単位１２００に対するものである。図示されている走査パターンを使用して４ｘ８変換単位１２００を走査するこれらの実施態様は、残差係数が、「サブブロック」として知られている４ｘ４ブロックにグループ化されるという特性を有する。それゆえ、符号化ビットストリーム３１２内に存在する「係数グループ」フラグが、各サブブロックについて、少なくとも１つの有意な（非ゼロ）残差係数が存在することを示すのに使用され得る。４ｘ８変換に４ｘ４サブブロックサイズを適用することによって、係数が常にサブブロックにグループ化される他の変換サイズに存在する走査パターンとの一貫性が達成される。
【０１０８】
特定の実施態様は、各サブブロック内に少なくとも１つの非ゼロ残差係数が存在することをシグナリングするために係数グループフラグを適用し得る。これらの走査パターンが、すべての変換サイズについてサブブロック処理を再使用することによって、残差係数を処理する制御ソフトウェアまたはデジタル回路を再使用することを可能にする点が有利である。使用される特定の走査パターンは、結びつけられている予測単位（ＰＵ）のイントラ予測方向のような基準に従って選択されてもよい。変換が４：２：２色差フォーマットサンプル格子上で色差サンプルを符号化する場合、各色差サンプルは輝度サンプルの非正方形（２ｘ１）アレイにマッピングし、イントラ予測モードの「方向」または角度に影響を与えるため、イントラ予測方向と走査パターンとの間の関係は変更される。走査は、図１２Ａ〜図１２Ｃにおいて、変換単位（ＴＵ）の左上隅に位置するＤＣ係数において終端する「後ろ向き」方向において示されている。さらに、走査は、変換単位（ＴＵ）の右下隅において開始する必要はない。変換単位（ＴＵ）の左上領域において非ゼロ残差係数が優勢であることに起因して、走査は、「最も有意でない係数位置」から開始し、左上の係数に達するまで後ろ向き方向に進行し得る。
【０１０９】
他の実施態様は、所与の領域に単一の走査を適用して残差係数を符号化し、その後、これらの残差係数に２回以上変換を適用してもよい。この事例において、その領域に、それゆえ、その走査パターンによってカバーされるすべての変換に、１つのみの符号化ブロックフラグが使用される。走査のいずれかに少なくとも１つの有意な残差係数が存在する場合、符号化ブロックフラグは１に設定される。たとえば、図１２Ａ〜図１２Ｃの４ｘ８走査パターンは、２つの４ｘ４変換の残差係数を復号するのに適用され得る。残差係数の２つの４ｘ４アレイは連結されて、その走査パターンに適した４ｘ８アレイを形成し得る。アレイにわたって単一の走査が実施されるために、その走査パターンについて単一の「最も有意でない係数」位置がビットストリーム内に符号化され、そのアレイには単一の符号化ブロックフラグ値で十分である。修正離散コサイン変換（ＤＣＴ）のエネルギー圧縮特性が、走査パターンの経路に沿った各正方形変換の係数をインターリーブして矩形係数アレイにすることのような、他の方式に利点を与える。これによって、各４ｘ４残差係数アレイ内の残差係数値の密度が、結合４ｘ８アレイ内で均等化され、エントロピー復号器４２０によって後に復号するために、エントロピー符号化器３２４によってより高い圧縮効率がもたらされることが可能になるという利点が与えられる。
【０１１０】
色差色チャネルを符号化する特定の実施態様は、４：２：０色差サンプル格子に対応する色差サンプル位置にある残差サンプルを符号化するために第１の変換を使用し、４：２：０色差サンプル格子に対して４：２：２色差サンプル格子において導入されるさらなる色差サンプル位置にある残差サンプルを符号化するために第２の変換を使用してもよい。そのような実施態様は、有利な様に、第２の変換の出力が第１の変換の残差サンプルに付加されて（または他の様態で組み合わされて）第２の変換の残差サンプルが生成される、アダマール変換のような、単純な変換を第２の変換に使用してもよい。有利な様に、ハール変換のような変換を実施する前処理段階が、４：２：２色差フォーマットの色差サンプル格子を、４：２：０色差フォーマットの色差サンプル格子にサンプリングするのに使用されてもよい。そのような構成は、前処理段階からの追加の残差係数を副次的情報として送信しなければならず、そのような残差は、前処理変換が最大符号化単位（ＬＣＵ）レベルにおいて適用される事例において、各最大符号化単位（ＬＣＵ）に適用される。
【０１１１】
所与の領域に対して複数の変換を有する実施態様は、領域全体をカバーする単一の組み合わせ走査、または、各変換の別個の走査のいずれかを使用してもよい。複数の変換のための走査が単一の走査に組み合わされる場合、走査されている各領域には１つの符号化ブロックフラグしか必要とされない。単一の組み合わせ走査を使用するそれらの実施態様は、同様のスペクトル特性を有する各変換からの残差係数を結びつけるために、係数ごとのインターリーブのように、各変換の残差係数をインターリーブすることによって、残差係数のより高い圧縮を達成することができる。
【０１１２】
図１３は、変換単位を符号化する方法１３００を示す概略ブロック図である。ビデオエンコーダ１１４によって実施される方法１３００は、変換単位の輝度チャネルおよび色差チャネルを符号化する。輝度変換スキップフラグ値を求めるステップ１３０２において、変換スキップ制御モジュール３４６が、一般的に、空間領域（変換スキップが実施される）および周波数領域（変換スキップが実施されない）の両方において残差サンプルアレイ３６０を符号化するコストを分析することによって、変換スキップフラグ９６４または９１２７のような、輝度チャネルに対する変換スキップフラグの値を求める。色差変換スキップフラグ値を求めるステップ１３０４において、変換スキップ制御モジュール３４６は、暗黙的分割からもたらされ、同じ色差チャネルに属するすべての部分領域に適用されるべき、変換スキップフラグ９６６または９１４８のような、色差チャネルのうちの１つに対する変換スキップフラグの値を求めるか、または他の様態で設定する。変換スキップ制御モジュール３４６は、輝度チャネルと同様の論理を適用してもよいが、ビットレートコスト判定は、色差チャネル（または「色チャネル」）内のすべての色差残差サンプルアレイに対して変換スキップを実施すること、または、色差チャネル内のいずれの色差残差サンプルアレイにも変換スキップを実施しないことのいずれかのコストを判定するときに、暗黙的分割からもたらされる色差残差サンプルアレイの各々を計上しなければならない。色差変換スキップフラグ値を求めるステップ１３０４は各色差チャネルについて反復され、変換スキップフラグ９６８または９１５１のような、他の色差チャネルに対する変換スキップフラグ値が求められる。輝度変換および色差変換を符号化するステップ１３０６が、エントロピー符号化器３２４を使用して輝度残差サンプルアレイを符号化ビットストリーム３１２内に符号化して、エントロピー符号化器３２４を使用して色差チャネルの色差残差サンプルアレイを符号化ビットストリーム３１２内に符号化する。輝度残差サンプルアレイは、輝度変換スキップフラグに従って、変換モジュール３２０において残差サンプルアレイを残差係数アレイに変換すること、または、ビデオエンコーダ１１４によって変換スキップが実施されるときは変換モジュール３２０をバイパスすることによって求められる。その後、残差アレイ３６３がスケーリングおよび量子化モジュール３２２に通されて、残差データアレイ３６４が生成される。残差データアレイ３６４内の値のうちの少なくとも１つが非ゼロであるとき、残差データアレイ３６４の値がエントロピー符号化器３２４によって符号化ビットストリーム３１２内に（残差データブロック９５４、９５６、９５８、９６０または９６２のような残差データのブロック内に）符号化され、対応する符号化ブロックフラグが１に設定される。色差残差サンプルアレイは輝度残差サンプルアレイと同様に求められるが、第１の色差残差サンプルアレイ以外の色差残差サンプルアレイが、第１の色差残差サンプルアレイと変換スキップフラグを共有する点が異なっている。ステップ１３０６における色差残差サンプルアレイの符号化は各色差チャネルについて反復される。
【０１１３】
図１４は、変換単位を復号する方法１４００を示す概略流れ図である。ビデオデコーダ１３４によって実施される方法１４００は、変換単位の輝度チャネルおよび色差チャネルを復号する。輝度変換スキップフラグ値を求めるステップ１４０２が、エントロピー復号器４２０を使用して、符号化ビットストリーム３１２から変換スキップフラグ９６４または９１２７のような変換スキップフラグを復号することによって、輝度チャネルの変換スキップフラグの値を求める。色差変換スキップフラグ値を求めるステップ１４０４が、色差チャネル内および同じ変換単位（ＴＵ）内のすべての色差残差サンプルアレイに適用されるべき、色差チャネル内の色差残差サンプルアレイの１つの変換スキップフラグの値を求める。ステップ１４０４は、エントロピー復号器４２０を使用して、符号化ビットストリーム３１２から変換スキップフラグ９６６または９１４８のような変換スキップフラグを復号する。変換スキップフラグを第１の色差残差サンプルアレイと関連付ける実施態様は、後の残差係数アレイから変換スキップフラグ（その後、先行する残差サンプルアレイの処理を継続するのに使用されるため、さらなる内部バッファリングがもたらされる）を求める前に、先行する残差サンプルアレイをバッファリングする必要性を回避する。ステップ１４０４はまた、エントロピー復号器４２０を使用して、符号化ビットストリーム３１２から変換スキップフラグ９６８または９１５１を復号することなどによって、さらなる色差チャネルの変換スキップフラグをも求めてもよい。輝度変換および色差変換を復号するステップ１４０６が、エントロピー復号器４２０に、符号化ブロックフラグ９５０のような対応する符号化ブロックフラグが１であるときに輝度残差データブロック９５４のような輝度残差係数アレイを復号させ、符号化ブロックフラグ９４２および９４４のような各対応する符号化ブロックフラグが１であるときに色差残差係数アレイ９５６および９５８のような、特定の色差チャネルと関連付けられる色差残差係数アレイを復号させる。輝度変換を復号するとき、輝度残差係数アレイは、変換スキップが実施されない場合にのみ逆変換モジュール４２２に通され、そうでない場合、輝度残差係数アレイは逆変換モジュール４２２をバイパスする。色差変換を復号するとき、変換単位内の各色差残差サンプルアレイについて、符号化ビットストリーム３１２内に存在し、第１の色差残差サンプルアレイと関連付けられる変換スキップフラグが適用される。
【０１１４】
方法１３００および１４００の説明は、暗黙的分割が行われるとき、所与の色差チャネルに複数の色差残差サンプルアレイを含み得る「変換単位」を参照する。これは、構文構造９３０と一致する。図９Ｃ、図９Ｄおよび図９Ｅにおいて、構文構造９１００、９１３０および９１６０が使用されているとき、暗黙的分割からもたらされる各色差領域は、色差変換単位（ＣＴＵ）としてマーキングされている、別個の変換単位（ＴＵ）として示されている。方法１３００および１４００の目的のためには、色差変換単位（ＣＴＵ）は、変換ツリー構文構造９１００を使用して色差領域を分割する上ではアーティファクトに過ぎない。図９Ｃにおいて、輝度変換単位（ＬＴＵ）９１２６によって占有される空間領域は、変換単位９５２と同じ空間領域を占有するため、「変換単位」と考えられ得る。色差変換単位（ＣＴＵ）９１１６  ９１１８および９１２０〜９１２２（存在する場合）は、暗黙的分割からもたらされる色差部分領域として考えられ得る。
【０１１５】
方法１３００および１４００の両方の結果として、（４：２：２および４：４：４色差フォーマットが使用されているときに適用され得る）暗黙的分割動作の存否にかかわらず、各色チャネルについて１つの変換スキップフラグが符号化されることが有利である。この特性の結果として、４：２：０色差フォーマットによる挙動が一貫し、ここで、各残差係数アレイについて１つの変換スキップフラグが存在し、１つのみの残差係数アレイが、所与の変換単位の各色チャネルについて存在する。たとえば、４：２：０における８ｘ８変換単位は、輝度チャネルに対しては８ｘ８変換を有し、各色差チャネルに対しては４ｘ４色差変換を有することになる。この事例において、各色差チャネルについて１つの変換スキップフラグが存在することになる。４：２：２の事例においては、暗黙的分割によって、各色差チャネルについて２つの４ｘ４色差変換が存在することになる。第１の４ｘ４色差変換によって符号化されるが両方の４ｘ４色差変換に適用される変換スキップフラグが、４：２：０の事例と同じ空間領域の変換スキップステータスを制御することになる。この一貫した挙動の結果として、４：２：０の事例と下位互換性のある４：２：２の変換スキップの取り扱いがもたらされる（すなわち、４：２：２における変換スキップのサポートに起因して、４：２：０において構文要素の再構成は行われない）。すべての色差に共通の変換スキップを有する結果として、変換スキップを指定する目的で変換単位を上半分と下半分とに人為的に分割することを回避する暗黙的分割がもたらされる。
【０１１６】
図１５は、ビデオエンコーダ１１４およびビデオデコーダ１３４のための、４ｘ４および８ｘ８変換単位における４ｘ４変換の可能な構成を示す概略図である。図１５において色チャネルＹ、ＵおよびＶが縦列に示されており、３つの事例が横行に沿って示されている。すべての示されている事例において、ビデオエンコーダ１１４およびビデオデコーダ１３４は、４：２：２色差フォーマットを使用するように構成されている。また、すべての事例において、ビデオエンコーダ１１４およびビデオデコーダ１３４は、４ｘ８色差領域の２つの４ｘ４色差領域への暗黙的分割をサポートしており、したがって、２つの４ｘ４色差変換が各色チャネルについて示されている。示されている３つの事例は、事例１：８ｘ８変換単位（ＴＵ）（上行）、事例２：第１の変換順序（順序１）による４つの４ｘ４変換単位（ＴＵ）（中行）、および事例３：第２の変換順序（順序２）による４つの４ｘ４変換単位（ＴＵ）（下行）である。
【０１１７】
各事例について、変換単位は、それらが符号化ビットストリーム３１２に現れる順序において番号を付されている。事例１は、８ｘ８輝度変換と、各色差チャネルに対する２つの４ｘ４変換とを有する変換単位（ＴＵ）を示す。輝度変換は８ｘ８であるため、輝度変換は変換スキップフラグを有しない。事例２および３は、４つの４ｘ４変換単位が、結果として複数の変換単位（ＴＵ）にわたる各色差変換の色差領域をもたらしている事例をさらに示す。事例２および３において、４つの変換単位（ＴＵ）は、０〜３の番号を付されて、開発中の高効率ビデオ符号化（ＨＥＶＣ）規格に使用されているような「ｂｌｋＩｄｘ」変数を用いてインデックス付けされている。図１５に示されている各変換について、変換スキップがサポートされる場合、変換の左上隅にボックスが含まれる。変換スキップフラグが常に明示的に符号化されている変換について、ボックスは網掛けされている（網掛けボックス１５０２など）。網掛けされていないボックス（網掛けなしボックス１５０４など）は、現在の変換の変換スキップフラグが先行する変換（上の変換など）から導出される事例を示す。この導出をサポートしない実施態様は、網掛けなしボックスによる変換のために、変換スキップフラグを符号化ビットストリーム３１２内に明示的に符号化することになる。事例２および事例３において、各４ｘ４変換単位に対して１回で、変換単位構文構造９５２のような変換単位構文構造が４回（０から３へと増分する「ｂｌｋＩｄｘ」の値を有する）呼び出される。したがって、変換単位構文構造の４つのインスタンスが符号化ビットストリーム３１２内に存在する。各呼び出しに対して、符号化ブロックフラグ９５０のような、対応する符号化ブロックフラグが１の値を有する場合、輝度残差データブロック９５４のような輝度残差ブロックが符号化ビットストリーム３１２内に存在する。事例２において、４回目の呼び出しに対して（「ｂｌｋＩｄｘ」が３に等しい）、色差残差ブロック９５６、９５８、９６０、９６２のような、色差チャネルの色差残差ブロックが符号化ビットストリーム３１２内に符号化されている（符号化ブロックフラグ９４２、９４４、９４６、９４８のような対応する符号化ブロックフラグが１の値を有する）。図９Ｂからの輝度および色差残差ブロックの順序付けは、事例２において提示されている変換の順序付けに対応する。事例３において、順序付けは以下に起因して変化する、すなわち、上半分の色差残差ブロック（色差残差ブロック９５６、９６０など）が変換単位構文構造の２回目の呼び出し（すなわち、「ｂｌｋＩｄｘ」が１に等しいとき）に対して処理され、下半分の色差残差ブロック（色差残差ブロック９５８、９６２など）が変換単位構文構造の４回目の呼び出し（すなわち、「ｂｌｋＩｄｘ」が３に等しいとき）に対して処理される。
【０１１８】
図１５に示されていないもう１つの事例は、４：２：０色差フォーマットが使用されているときの４ｘ４変換単位の事例であり、ここで、色差に対する１つの４ｘ４変換が、同じ四分木階層レベルにある輝度に対する４つの４ｘ４変換単位（まとめて輝度サンプル格子上の８ｘ８領域を占有する）に対応する色差サンプル格子上の領域に適用される。色差において４ｘ８変換が利用可能であるとき、図１８を参照して下記に説明されるように、４：２：２事例の変換スキップが（４ｘ４変換に加えて）４ｘ８変換に適用される。色差において４ｘ８変換が利用可能でなく、４：２：２色差フォーマットが使用されているとき、実施態様は各色差チャネルに対して２つの４ｘ４変換を使用しなければならず、上側の４ｘ４変換のような一方の４ｘ４変換について変換スキップフラグを符号化し得るが、所与の色差チャネルの両方の４ｘ４変換に符号化変換スキップフラグを適用する。
【０１１９】
図１７は、図１４の方法１４００の諸態様を詳述する、変換単位（ＴＵ）の残差データを復号するための方法１７００を示す概略流れ図である。方法１７００は、所与の領域に対する変換スキップフラグを判定し、その領域の残差データを復号する。方法１７００が変換単位（ＴＵ）の輝度チャネルに対して呼び出されるとき、１つのみの領域が存在する。変換単位（ＴＵ）の単一の色差チャネルについて、暗黙的分割が行われるとき、２つの領域が存在し、方法１７００は、１の符号化ブロックフラグ値を有する各領域に対して呼び出される。方法１７００は、変換スキップフラグサポートテストステップ１７０２によって開始する。ステップ１７０２は、変換スキップ有効化フラグおよび符号化単位変換量子化バイパスフラグならびに現在の領域の変換サイズをテストする。符号化ビットストリーム３１２内に符号化されている変換スキップ有効化フラグは、変換スキップ機能が符号化ビットストリーム３１２内で利用可能であるか否かを示す。符号化ビットストリーム３１２内に符号化されている符号化単位変換量子化バイパスフラグは、「可逆」符号化モードがビデオエンコーダ１１４によって選択されたか否かを示し、それによって、変換モジュール３２０および量子化モジュール３２２の両方がバイパスされ、したがって、ビデオエンコーダ１１４は可逆モードにおいて動作し、ビデオデコーダ１３４が、ビデオソース１１２からのキャプチャされたフレームデータを正確に再生することが可能になる。開発中の高効率ビデオ符号化（ＨＥＶＣ）規格において「ｌｏｇ２ＴｒａｆｏＳｉｚｅ」変数によって示される現在の領域の変換サイズは、正方形変換の辺寸法のｌｏｇ２として定義される。変換スキップフラグが真であり（すなわち、有効化され）、符号化単位変換量子化バイパスフラグが偽であり（すなわち、有効化されず）、かつ変換サイズが４ｘ４（すなわち、ｌｏｇ２ＴｒａｆｏＳｉｚｅが２に等しい）とき、制御は色チャネル内の最初の真の符号化ブロックフラグ（ＣＢＦ）領域のテストステップ１７０４に移動し、そうでない場合、制御は残差データを復号するステップ１７１２に移動する。テストステップ１７０４は、現在の領域が色チャネル内の最初の領域である（かつ、変換単位（ＴＵ）内で１の符号化ブロックフラグ（ＣＢＦ）値を有する）か否かを判定する。方法１７００は、現在の領域の符号化ブロックフラグの値が１であるときのみ呼び出されるため、２つの事例が考えられる。方法１７００が暗黙的分割の最初の色差領域（４：２：２色差フォーマットが使用されているときは上側領域、たとえば、図６Ｃにおける領域６８２または６６６）に対して呼び出される場合、テストステップ１７０４は真として評価し、制御は変換スキップフラグを復号するステップ１７０６に移動する。方法１７００が暗黙的分割の後続の色差領域（複数の場合もあり）（４：２：２色差フォーマットが使用されているときは下側領域、たとえば、図６Ｃにおける領域６８４または６６８）に対して呼び出される場合、テストステップ１７０４は、方法１７００が（現在の変換単位の）最初の色差領域に対して以前に呼び出されていたときは偽として評価し、方法１７００が（現在の変換単位の）最初の色差領域に対して以前に呼び出されていなかったときは真として評価する。テストステップ１７０４が真として評価するとき、制御は変換スキップフラグを復号するステップ１７０６に移動する。ステップ１７０６において、エントロピー復号器４２０が、変換スキップフラグ値を求めるために符号化ビットストリーム３１２から変換スキップフラグを復号する。変換スキップフラグ値を記憶するステップ１７０８が、方法１７００の後続の呼び出しにおいて後で使用するために、変換スキップフラグ値をハードウェアレジスタまたはレジスタ２４６のようなメモリに記憶する。テストステップ１７０４が偽として評価する場合、制御は変換スキップフラグ値を取り出すステップ１７１０に移動し、方法１７００の以前の呼び出しにおいて求められ記憶された変換スキップフラグ値が、ハードウェアレジスタまたはレジスタ２４６のようなメモリから取り出される。残差データを復号するステップ１７１２において、残差データブロック９５４、９５６、９５８、９６０または９６２のような残差データのブロックが、エントロピー復号器４２０によって符号化ビットストリーム３１２から復号される。求められた変換スキップフラグ値は、マルチプレクサ４２３を参照して上述したように、変換スキップフラグ値４６８として変換スキップ動作を制御するために渡される。ステップ１７０２〜１７１０は、方法１７００が輝度チャネルに対して呼び出されるときは図１４のステップ１４０２に対応し、ステップ１７０２〜１７１０は、方法１７００が色差チャネルに対して呼び出されるときは図１４のステップ１４０４に対応する。残差データを復号するステップ１７１２は、図１４のステップ１４０６の輝度残差復号、および、図１４のステップ１４０６の色差残差復号に対応する。方法１７００は、開発中の高効率ビデオ符号化（ＨＥＶＣ）規格において定義されるところの「残差符号化」構文構造にも対応する。
【０１２０】
図１８は、各色チャネルに対して（４ｘ８非正方形変換を有する）４ｘ８色差領域に適用される変換スキップ動作を示す概略図１８００である。輝度チャネル（「Ｙ」）および各色差チャネル（「Ｕ」および「Ｖ」）が図１８に示されている。下記の２つの事例が図１８に示されている。
【０１２１】
事例１：「８ｘ８ＴＵ」（図１８の上行）は、輝度チャネルに対する８ｘ８変換１８０２および各色差チャネルに対する４ｘ８（非正方形または矩形）変換１８０４を有する、８ｘ８変換単位（ＴＵ）を示す。変換スキップフラグは、変換スキップフラグ動作がサポートされている変換の右上隅にある網掛けボックスによって示されている。この事例において、図１８に示されているように、変換スキップ動作は（４ｘ４変換事例に加えて）４ｘ８変換事例においてもサポートされており、したがって、４ｘ８変換は各々、変換スキップフラグ１８０６を含む。
【０１２２】
事例２：「４つの４ｘ４ＴＵ」（図１８の下行）は、輝度チャネルに対する４つの４ｘ４変換１８０８および各色差チャネルに対する４ｘ８（非正方形または矩形）変換１８１０を有する、４つの４ｘ４変換単位（ＴＵ）を示す。各色差チャネルに対する４ｘ８変換は（輝度サンプル格子上の）輝度変換と（色差サンプル格子上で）結びつけられており、４つの４ｘ４変換単位（ＴＵ）の間で共有される。この実施態様において、図１８に示されているように、変換スキップ動作は（４ｘ４変換事例に加えて）４ｘ８変換事例においてもサポートされており、したがって、４ｘ８変換は、変換スキップフラグ１８１２を含む。
【０１２３】
図１８の事例１および２をサポートする実施態様について、方法１７００の修正テストステップ１７０２ならびにステップ１７０６および１７１２が、ビデオデコーダ１３４によって実施される。修正テストステップ１７０２は、図１７のテストステップ１７０２として動作するが、４ｘ８の変換サイズが、変換スキップ動作がサポートされている可能な変換サイズとして（変換サイズ４ｘ４に加えて）含まれている点が異なっており、したがって、修正テストステップ１７０２が、４ｘ４および４ｘ８変換事例の両方において真として評価することが可能である。
【０１２４】
付録Ａは、構文構造９００および構文構造９３０に関連する、開発中の高効率ビデオ符号化（ＨＥＶＣ）規格の可能な「テキスト」を示す。付録Ａ内のｔｒａｎｓｆｏｒｍ＿ｔｒｅｅ（）関数の各インスタンスは、図９Ａおよび図９Ｃにおいて「ＴＴ」とラベリングされている構文構造の一部として示されており、付録Ａ内のｔｒａｎｓｆｏｒｍ＿ｕｎｉｔ（）関数の各インスタンスは、図９Ａおよび図９Ｂにおいて「ＴＵ」とラベリングされている構文構造の一部として示されている。付録Ａにおいて与えられているテキストは、構文構造９００および９３０と一致するテキストの一例であり、他の例が可能である。構文構造９００および９３０と一致するテキストは、ビデオエンコーダ１１４がビットストリームを符号化する方法１０００を実施し、ビデオデコーダ１３４がビットストリームを復号する方法１１００を実施することを暗示している。
【０１２５】
付録Ｂは、構文構造９１００および構文構造９１３０に関連する、開発中の高効率ビデオ符号化（ＨＥＶＣ）規格の可能なテキストを示す。付録Ｂ内のｔｒａｎｓｆｏｒｍ＿ｔｒｅｅ（）関数の各インスタンスは、図９Ｃ、図９Ｄおよび図９Ｅにおいて「ＴＴ」とラベリングされている構文構造の一部として示されており、付録Ａ内のｔｒａｎｓｆｏｒｍ＿ｕｎｉｔ（）関数の各インスタンスは、図９Ｃ、図９Ｄおよび図９Ｅにおいて「ＴＵ」とラベリングされている構文構造の一部として示されている。付録Ｂにおいて与えられているテキストは、構文構造９１００および９１３０と一致するテキストの一例であり、他の例が可能である。構文構造９１００および９１３０と一致するテキストもまた、ビデオエンコーダ１１４がビットストリームを符号化する方法１０００を実施し、ビデオデコーダ１３４がビットストリームを復号する方法１１００を実施することを暗示している。
【０１２６】
付録Ａおよび付録Ｂ内のテキストは、結果として一実施態様をもたらし、当該実施態様によって、４：４：４色差フォーマット向けに構成されているサイズ３２ｘ３２の変換単位（ＴＵ）において対処することになる３２ｘ３２色差領域の結果として、（最大数の）４つの１６ｘ１６色差変換が適用されることになり、４：２：２色差フォーマット向けに構成されているサイズ３２ｘ３２の変換単位（ＴＵ）において対処することになる１６ｘ３２色差領域の結果として、（最大数の）２つの１６ｘ１６色差変換が適用されることになる。付録Ａおよび付録Ｂ内のテキストからもたらされる実施態様は、より小さいサイズの変換単位（ＴＵ）に適用され、４：２：２色差フォーマット向けに構成されるとき、（最大数の）１つの色差変換が適用される。たとえば、８ｘ１６変換が８ｘ１６色差領域に適用され、４ｘ８変換が４ｘ８色差領域に適用される。
【産業上の利用可能性】
【０１２７】
記載されている装置は、コンピュータおよびデータ処理業界に適用可能であり、特に、ビデオ信号のような信号の符号化、復号のためのデジタル信号処理に適用可能である。
【０１２８】
上記は本発明のいくつかの実施形態のみを記載しており、本発明の範囲および精神から逸脱することなくこれに修正および／または変更を行うことができ、実施形態は例示であり限定ではない。
【０１２９】
（オーストラリアのみ）本明細書の文脈において、「備える（ｃｏｍｐｒｉｓｉｎｇ）」という単語は「大抵含むが必ずしもそれだけではない（ｉｎｃｌｕｄｉｎｇ  ｐｒｉｎｃｉｐａｌｌｙ  ｂｕｔ  ｎｏｔ  ｎｅｃｅｓｓａｒｉｌｙ  ｓｏｌｅｌｙ）」または「有する（ｈａｖｉｎｇ）」もしくは「含む（ｉｎｃｌｕｄｉｎｇ）」ことを意味し、「それのみから構成される（ｃｏｎｓｉｓｔｉｎｇ  ｏｎｌｙ  ｏｆ）」ことは意味しない。「ｃｏｍｐｒｉｓｅ」および「ｃｏｍｐｒｉｓｅｓ」のような、単語「ｃｏｍｐｒｉｓｉｎｇ」の変化形はそれに応じて変化する意味を有する。
【０１３０】
付録Ａ
ｔｒａｎｓｆｏｒｍ＿ｔｒｅｅ（）およびｔｒａｎｓｆｏｒｍ＿ｕｎｉｔ（）は、ループ構文を使用して暗黙的色差分割を実施する
７．３．１１  変換ツリー構文
2018085738.tif 000003
【０１３１】
７．３．１２  変換単位構文
2018085738.tif 000004
【０１３２】
７．４．８．１  一般的な符号化単位のセマンティクス
変数ＴｒａｆｏＣｒＣｂＨｏｒＣｎｔおよびＴｒａｆｏＣｒＣｂＶｅｒｔＣｎｔは以下のように導出される。
−ｌｏｇ２ＴｒａｆｏＳｉｚｅが５に等しく、ｓｐｌｉｔ＿ｔｒａｎｓｆｏｒｍ＿ｆｌａｇが０に等しい場合、ＴｒａｎｓｆｏｒｍＩｄｘＭａｘは以下のように導出される。
−ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃが１に等しい場合、ＴｒａｆｏＣｒＣｂＨｏｒＣｎｔおよびＴｒａｆｏＣｒＣｂＶｅｒｔＣｎｔは１に等しい。
−ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃが２に等しい場合、ＴｒａｆｏＣｒＣｂＨｏｒＣｎｔは１に等しく、ＴｒａｆｏＣｒＣｂＶｅｒｔＣｎｔは２に等しい。
−そうではなく、ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃが３に等しい場合、ＴｒａｆｏＣｒＣｂＨｏｒＣｎｔおよびＴｒａｆｏＣｒＣｂＶｅｒｔＣｎｔは２に等しい。
−そうでない場合、ＴｒａｆｏＣｒＣｂＨｏｒＣｎｔおよびＴｒａｆｏＣｒＣｂＶｅｒｔＣｎｔは１に等しい。
変数ＴｒａｆｏＣｒＣｂＣｎｔはＴｒａｆｏＣｒＣｂＨｏｒＣｎｔ＊ＴｒａｆｏＣｒＣｂＶｅｒｔＣｎｔとして導出される。
変数ｌｏｇ２ＣｒＣｂＴｒａｆｏＨｏｒＳｉｚｅおよびｌｏｇ２ＣｒＣｂＴｒａｆｏＶｅｒｔＳｉｚｅは以下のように導出される。
−ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃが１に等しい場合、ｌｏｇ２ＣｒＣｂＴｒａｆｏＨｏｒＳｉｚｅおよびｌｏｇ２ＣｒＣｂＴｒａｆｏＶｅｒｔＳｉｚｅはｌｏｇ２ＴｒａｆｏＳｉｚｅ−１に等しい。
−そうではなく、ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃが２に等しい場合、ｌｏｇ２ＣｒＣｂＴｒａｆｏＨｏｒＳｉｚｅはｌｏｇ２ＴｒａｆｏＳｉｚｅに等しく、ｌｏｇ２ＣｒＣｂＴｒａｆｏＶｅｒｔＳｉｚｅはｍｉｎ（ｌｏｇ２ＴｒａｆｏＳｉｚｅ−１，４）に等しい。
−そうではなく、ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃが３に等しい場合、ｌｏｇ２ＣｒＣｂＴｒａｆｏＨｏｒＳｉｚｅおよびｌｏｇ２ＣｒＣｂＴｒａｆｏＶｅｒｔＳｉｚｅはｍｉｎ（ｌｏｇ２ＴｒａｆｏＳｉｚｅ，４）に等しい。
付録Ａ終了
【０１３３】
付録Ｂ
暗黙的分割からもたらされる各色差変換について色差チャネル対あたり１回ｔｒａｎｓｆｏｒｍ＿ｔｒｅｅ（）を呼び出す
７．３．１１  変換ツリー構文
2018085738.tif 000005
【０１３４】
７．３．１２  変換単位構文
2018085738.tif 000006
【０１３５】
７．４．８．１  一般的な符号化単位のセマンティクス
変数ＴｒａｆｏＣｒＣｂＨｏｒＣｎｔおよびＴｒａｆｏＣｒＣｂＶｅｒｔＣｎｔは以下のように導出される。
−ｌｏｇ２ＴｒａｆｏＳｉｚｅが５に等しく、ｓｐｌｉｔ＿ｔｒａｎｓｆｏｒｍ＿ｆｌａｇが０に等しい場合、ＴｒａｎｓｆｏｒｍＩｄｘＭａｘは以下のように導出される。
−ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃが１に等しい場合、ＴｒａｆｏＣｒＣｂＨｏｒＣｎｔおよびＴｒａｆｏＣｒＣｂＶｅｒｔＣｎｔは１に等しい。
−ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃが２に等しい場合、ＴｒａｆｏＣｒＣｂＨｏｒＣｎｔは１に等しく、ＴｒａｆｏＣｒＣｂＶｅｒｔＣｎｔは２に等しい。
−そうではなく、ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃが３に等しい場合、ＴｒａｆｏＣｒＣｂＨｏｒＣｎｔおよびＴｒａｆｏＣｒＣｂＶｅｒｔＣｎｔは２に等しい。
−そうでない場合、ＴｒａｆｏＣｒＣｂＨｏｒＣｎｔおよびＴｒａｆｏＣｒＣｂＶｅｒｔＣｎｔは１に等しい。
変数ＴｒａｆｏＣｒＣｂＣｎｔはＴｒａｆｏＣｒＣｂＨｏｒＣｎｔ＊ＴｒａｆｏＣｒＣｂＶｅｒｔＣｎｔとして導出される。
付録Ｂの終了
【図１】
2018085738.tif 000007
【図２Ａ】
2018085738.tif 000008
【図２Ｂ】
2018085738.tif 000009
【図３】
2018085738.tif 000010
【図４】
2018085738.tif 000011
【図５Ａ】
2018085738.tif 000012
【図５Ｂ】
2018085738.tif 000013
【図６Ａ】
2018085738.tif 000014
【図６Ｂ】
2018085738.tif 000015
【図６Ｃ】
2018085738.tif 000016
【図７】
2018085738.tif 000017
【図８】
2018085738.tif 000018
【図９Ａ】
2018085738.tif 000019
【図９Ｂ】
2018085738.tif 000020
【図９Ｃ】
2018085738.tif 000021
【図９Ｄ】
2018085738.tif 000022
【図９Ｅ】
2018085738.tif 000023
【図１０】
2018085738.tif 000024
【図１１】
2018085738.tif 000025
【図１２Ａ】
2018085738.tif 000026
【図１２Ｂ】
2018085738.tif 000027
【図１２Ｃ】
2018085738.tif 000028
【図１３】
2018085738.tif 000029
【図１４】
2018085738.tif 000030
【図１５】
2018085738.tif 000031
【図１６】
2018085738.tif 000032
【図１７】
2018085738.tif 000033
【図１８】
2018085738.tif 000034