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