(57)【要約】  ブロック変換ベースのデジタルメディアコーデックは、デジタルメディアデータの支配的な方向性（例えば、強い水平方向または垂直方向の特性を有するイメージ）を考慮した変換係数予測を使用し、さらに２段階の変換と互換性を持って動作する。マクロブロックの内部段階変換からのＤＣおよびＤＣＡＣ係数に対して、コーデックは隣接マクロブロックの内部段階変換ＤＣ係数に基づいて方向性メトリックを計算および比較して支配的な方向性を決定する。マクロブロック内部のブロックの外部段階変換からのＤＣＡＣ係数に対し、コーデックはマクロブロックの内部段階変換ＤＣＡＣ係数に基づいて方向性メトリックを計算および比較して支配的な方向性を検出する。方向支配の決定では、他のチャネル（例えば、クロミナンスおよび輝度）からの情報を考慮することもできる。
2009505496.tif 000002
【特許請求の範囲】
【請求項１】
変換係数の予測符号化を用いてデジタルメディアデータを符号化する方法であって、
前記方法は、
前記デジタルメディアデータのブロックに変換（２５０）を適用して、各ブロックに対して変換係数群（４００、５００、６００）を生成するステップであって、各ブロックの前記変換係数群は前記の各ブロックに対するＤＣ係数を備えるステップと、
カレントブロックの位置における前記デジタルメディアデータの少なくとも２つの方向性のうちの１つが支配的かどうかを判定するステップ（１０００）と、
前記の少なくとも２つの方向性のうちの１つが前記カレントブロックのデジタルメディアの位置において支配的であると判定される場合、前記判定された支配的な方向性に従って、前記カレントブロックのＤＣ係数の予測因子を選択するステップ（１０００）と、
前記カレントブロックのＤＣ係数をその予測因子に対して符号化するステップ（２８０）と
を含むことを特徴とする方法。
【請求項２】
前記少なくとも２つの方向性のうちのいずれもが前記カレントブロックのデジタルメディアの位置において支配的であると判定されない場合、前記少なくとも２つの方向性の組合せに従って前記カレントブロックのＤＣ係数の予測因子を選択するステップを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記方向性には少なくとも水平方向と垂直方向が含まれることを特徴とする請求項１に記載の方法。
【請求項４】
前記カレントブロックの位置における前記デジタルメディアデータの少なくとも２つの方向性のうちの１つが支配的かどうかを判定するステップは、
前記の少なくとも２つの方向性に対する方向差分メトリックを、前記少なくとも２つの方向性における先行ブロックのＤＣ係数の関数として計算するステップと、
計算した前記方向差分に基づいて、前記少なくとも２つの方向性のうちの１つが支配的かどうかを判定するステップと
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記方向差分メトリックを計算するステップは、
前記少なくとも２つの方向性に対する前記方向差分メトリックを、前記少なくとも２つの方向性における前記デジタルメディアデータの複数のチャネルから得た先行ブロックのＤＣ係数の関数として計算するステップをさらに含むことを特徴とする請求項４に記載の方法。
【請求項６】
前記複数のチャネルは輝度チャネルおよび少なくとも１つのクロミナンスチャネルを含むことを特徴とする請求項４に記載の方法。
【請求項７】
前記変換は、前記デジタルメディアデータのマクロブロック内のブロックに適用される第１の外部段階変換からのＤＣ係数のブロックに適用される第２の内部段階変換であることを特徴とする請求項１に記載の方法。
【請求項８】
各ブロックの前記変換係数群は前記各ブロックに対する複数のＤＣＡＣ係数を含み、
前記方法はさらに
前記少なくとも２つの方向性のうちの１つが前記カレントブロックのデジタルメディアデータの位置において支配的であると判定されるとき、前記判定された支配的な方向性に従って前記カレントブロックのＤＣＡＣ係数の予測因子を選択するステップと、
そうでなければ、前記カレントブロックのＤＣＡＣ係数を予測因子無しで符号化するステップと
を含むことを特徴とする請求項７に記載の方法。
【請求項９】
前記少なくとも２つの方向性のうちの１つが支配的であると判定されるときに前記カレントブロックのＤＣＡＣ係数の予測因子を選択する際、
前記判定された支配的な方向性に従って選択された予測因子を含むブロックが前記カレントブロックと同じ量子化器を有するかどうかを判定するステップと、
そうでなければ、前記カレントブロックのＤＣＡＣ係数を予測因子無しで符号化するステップと
をさらに含むことを特徴とする請求項８に記載の方法。
【請求項１０】
前記第１の外部段階変換はカレントマクロブロック内のブロックに対して変換係数群を生成し、前記カレントマクロブロック内の各ブロックの前記変換係数群は前記第１の外部段階変換からの複数のＤＣＡＣ係数を含み、
前記方法はさらに
前記少なくとも２つの方向性に対する方向差分メトリックを、前記カレントマクロブロック内のブロックのＤＣ係数に対する前記第２の内部段階変換から生成したＤＣＡＣ係数の関数として計算するステップと、
前記計算した方向差分メトリックに基づいて、前記カレントマクロブロックに対して前記デジタルメディアデータの少なくとも２つの方向性のうちの１つが支配的かどうかを判定するステップと、
前記少なくとも２つの方向性のうちの１つが前記カレントマクロブロックに対して支配的であると判定されるとき、前記判定された支配的な方向性に従って前記カレントマクロブロックのブロックの前記第１の外部段階変換で得たＤＣＡＣ係数の予測因子を一方向に選択するステップと、
前記カレントマクロブロックの複数のブロックの前記第１の外部段階変換で得た複数のＤＣＡＣ係数をそれらの予測因子に対して符号化するステップと
を含むことを特徴とする請求項７に記載の方法。
【請求項１１】
方向差分メトリックをＤＣＡＣ係数の関数として計算する前記ステップは、
前記少なくとも２つの方向性に対する方向差分メトリックを、前記デジタルメディアデータの複数のチャネルからの前記カレントマクロブロックにおけるブロックのＤＣ係数に対する前記第２の内部段階変換から生成したＤＣＡＣ係数の関数として計算するステップを含むことを特徴とする請求項１０に記載の方法。
【請求項１２】
前記複数のチャネルは輝度チャネル及び少なくとも１つのクロミナンスチャネルを含むことを特徴とする請求項１１に記載の方法。
【請求項１３】
請求項１に記載の方法に従って符号化した圧縮ビットストリームを有する少なくとも１つのコンピュータ読み取り可能な記録媒体。
【請求項１４】
デジタルメディアエンコーダ（２００）および／またはデコーダ（３００）であって、
符号化および／または復号化されるデジタルメディアデータ（２１０）を格納するデータ記憶バッファと、
プロセッサ（１５１０）と
を含み、
前記プロセッサ（１５１０）は、
カレントマクロブロック内部のブロックに対して前記デジタルメディアデータの少なくとも２つの方向性の１つが支配的であるかどうかを、前記カレントマクロブロック内部のブロックに適用される外部段階変換から生成したＤＣ係数のブロックに適用される内部段階変換から生成したＤＣＡＣ係数に基づいて判定し（１２００）、
前記少なくとも２つの方向性の１つが前記カレントブロック内部のブロックに対して支配的であると判定されるとき、前記判定された支配的な方向性に従って前記カレントマクロブロック内部のブロックの前記外部段階変換から生成した複数の前記ＤＣＡＣ係数の予測因子（１３００，１４００）を選択し、
前記カレントマクロブロック内部のブロックの前記外部段階変換から生成した複数のＤＣＡＣ係数をそれらの予測因子に対して符号化（２８０）および／または復号化（３２０）する
ようにプログラムされたことを特徴とするデジタルメディアエンコーダおよび／またはデコーダ。
【請求項１５】
前記プロセッサを
前記カレントブロックの位置において前記デジタルメディアデータの少なくとも２つの方向性のうちの１つが支配的であるかどうかを先行隣接マクロブロックのＤＣ係数に基づいて判定し、前記先行隣接マクロブロックのそれぞれのＤＣ係数を、前記それぞれの先行隣接マクロブロック内部のブロックに適用される前記外部段階変換から生成したＤＣ係数のブロックに適用される前記内部段階変換から生成し、
前記少なくとも２つの方向性のうちの１つが前記カレントブロックの位置において支配的であると判定されるとき、前記判定された支配的な方向性に従って前記カレントマクロブロックのＤＣ係数の予測因子を選択し、前記カレントブロックのＤＣ係数は、前記カレントマクロブロック内部のブロックに適用される前記外部段階変換から生成したＤＣ係数のブロックに適用される前記内部段階変換から生成され、
前記カレントマクロブロックのＤＣＡＣ係数をその予測因子に対して符号化および／または復号化する
ようにさらにプログラムしたことを特徴とする請求項１４に記載のデジタルメディアエンコーダおよび／またはデコーダ。
【請求項１６】
前記プロセッサを
前記少なくとも２つの方向性のうちの１つが前記カレントブロックの位置において支配的であると判定されるとき、前記カレントマクロブロックの量子化器が前記判定された支配的な方向性に従う方向で隣接マクロブロックの量子化器と異なるときを除いて、前記判定された支配的な方向性に従って前記カレントマクロブロックのＤＣＡＣ係数の予測因子を選択し、前記カレントマクロブロックのＤＣＡＣ係数は、前記カレントマクロブロック内部のブロックに適用される前記外部段階変換から生成したＤＣ係数のブロックに適用される前記内部段階変換から生成され、
前記カレントマクロブロックの複数のＤＣＡＣ係数をそれらの予測因子に対して符号化および／または復号化する
ようにさらにプログラムしたことを特徴とする請求項１５に記載のデジタルメディアエンコーダおよび／またはデコーダ。
【請求項１７】
前記少なくとも２つの方向性のうちの１つが前記カレントブロック内部のブロックに対して、および前記マクロブロックの位置に対して支配的であるかどうかを判定することは、前記デジタルメディアデータの複数のチャネルであって、輝度チャネルおよび少なくとも１つのクロミナンスチャネルを含む複数のチャネルにおける前記それぞれの係数に基づくことを特徴とする請求項１６に記載のデジタルメディアエンコーダおよび／またはデコーダ。
【請求項１８】
デジタルメディアデータの処理方法を実施するコンピュータ実行可能なデジタルメディア処理プログラムを有する少なくとも１つのコンピュータ読み取り可能な記録媒体であって、
前記方法は
カレントマクロブロック内部のブロックに対する前記デジタルメディアデータの少なくとも２つの方向性に対する方向差分メトリックを、前記カレントマクロブロック内部のブロックに適用される外部段階変換から生成したＤＣ係数のブロックに適用される内部段階変換から生成したＤＣＡＣ係数に基づいて計算するステップ（１２００）と、
前記方向差分メトリックに基づいて、カレントマクロブロック内部のブロックに対する前記デジタルメディアデータの少なくとも２つの方向性のうちの１つが支配的かどうかを判定するステップ（１２００）と、
前記少なくとも２つの方向性のうちの１つが前記カレントブロック内部のブロックに対して支配的であると判定されるとき、前記判定された支配的な方向性に従って前記カレントマクロブロック内部のブロックの前記外部段階変換から生成したＤＣＡＣ係数の予測因子を一方向に選択するステップ（１３００，１４００）と、
前記カレントマクロブロック内部のブロックの前記外部段階変換から生成した複数のＤＣＡＣ係数を、それらの予測因子に対して符号化（２８０）／復号化（３２０）するステップと
を含むことを特徴とする少なくとも１つのコンピュータ読み取り可能な記録媒体。
【請求項１９】
前記のデジタルメディアデータ処理方法はさらに
前記カレントマクロブロックの位置における前記デジタルメディアデータの少なくとも２つの方向性に対する方向差分メトリックを、先行隣接マクロブロックのＤＣ係数に基づいて計算し、各マクロブロックのＤＣ係数を前記各マクロブロック内部のブロックに適用される外部段階変換から生成したＤＣ係数のブロックに適用される内部段階変換から生成するステップと、
前記カレントマクロブロックの位置において前記デジタルメディアデータの少なくとも２つの方向性のうちの１つが支配的であるかどうかを、前記計算した方向差分メトリックに基づいて判定するステップと、
前記少なくとも２つの方向性のうちの１つが前記カレントマクロブロックの位置において支配的であると判定される場合、前記判定された支配的な方向性に従って前記カレントマクロブロックのＤＣ係数の予測因子を選択するステップと、
前記カレントマクロブロックのＤＣ係数をその予測因子に対して符号化／復号化するステップと
を含むことを特徴とする請求項１８に記載の少なくとも１つのコンピュータ読み取り可能な記録媒体。
【請求項２０】
前記のデジタルメディアデータ処理方法はさらに
前記少なくとも２つの方向性のうちの１つが前記カレントブロックの位置において支配的であると判定されるとき、前記カレントマクロブロックの量子化器が前記判定された支配的な方向性に従う方向で隣接マクロブロックの量子化器と異なるときを除いて、前記判定された支配的な方向性に従って前記カレントマクロブロックのＤＣＡＣ係数の予測因子を選択し、前記カレントマクロブロックのＤＣＡＣ係数は、前記カレントマクロブロック内部のブロックに適用される前記外部段階変換から生成したＤＣ係数のブロックに適用される前記内部段階変換から生成されるステップと、
前記カレントマクロブロックの複数のＤＣＡＣ係数をそれらの予測因子に対して符号化／復号化するステップと
を含むことを特徴とする請求項１９に記載の少なくとも１つのコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像圧縮の分野に関する。より詳細には、本発明は画像圧縮に関する変換係数の予測に関する。
【背景技術】
【０００２】
ブロック変換ベースの符号化
変換符号化は、多数のオーディオ、イメージおよびビデオ圧縮システムで使用される圧縮技術である。未圧縮のデジタルイメージおよびビデオは一般に、２次元（２Ｄ）グリッドに配置したイメージ内またはビデオフレーム内の位置での画素サンプルまたは色サンプルとして表現または捉えられる。これはイメージまたはビデオの空間領域表現と呼ばれる。例えば、イメージの一般的な形式は、グリッドとして配置した２４ビット色の画素サンプルのストリームから成る。夫々のサンプルは、とりわけＲＧＢまたはＹＩＱなどの色空間内部のグリッドにおける画素位置での色成分を表す数字である。様々なイメージおよびビデオシステムは様々な色、サンプリングの時空間解像度を使用することができる。同様に、デジタルオーディオは一般に、時間サンプリングしたオーディオ信号ストリームとして表される。例えば、一般的なオーディオフォーマットは、一定時間間隔で取得したオーディオ信号の１６ビット振幅サンプルのストリームから成る。
【０００３】
従来のビデオ圧縮は、最初のイメージフレームを圧縮し、連続したフレーム間の差分を圧縮することで実施される。本プロセスはビデオシーケンスに渡って周期的に反復される。従って、ビデオ圧縮は“静的”イメージの圧縮に密接に関連する。
【０００４】
未圧縮のデジタルオーディオ、イメージおよびビデオ信号は多量の記憶および送信容量を消費する可能性がある。変換符号化は、信号の空間領域表現を周波数領域（または他の同様な変換領域）表現に変換することでデジタルオーディオ、イメージおよびビデオのサイズを削減し、次いで変換領域表現の一定の一般にやや不可視な周波数成分の解像度を減少させる。これにより一般に、空間領域におけるイメージまたはビデオの色または空間解像度の減少、または時間領域におけるオーディオの色または空間解像度の減少と比較して、デジタル信号の認識可能な劣化が非常に少なくなる。
【０００５】
より詳細には、図１に示す典型的なブロック変換ベースのコーデック１００は未圧縮のデジタルイメージの画素を固定サイズの２次元ブロック（Ｘ1，．．．Ｘn）に分割する。夫々のブロックは他のブロックと重複する可能性がある。空間周波数分析を行う線形変換１２０−１２１を夫々のブロックに適用する。線形変換１２０−１２１はブロック内部の間隔の空いたサンプルを、周波数（または変換）係数の集合に変換する。当該集合は一般に、ブロック間隔上で対応する周波数帯におけるデジタル信号強度を表す。圧縮のため、変換係数を選択的に量子化１３０（即ち、例えば係数値の最下位ビットを落とすかまたは高解像度の数の集合における値を低解像度にマッピングすることで、解像度を削減）することができ、圧縮データストリームにエントロピーまたは可変長符号化１３０することもできる。復号化の際は、変換係数を逆変換１７０−１７１して、元の色／空間サンプルイメージ／ビデオ信号を近似的に再構築する。再構築ブロックは以下のように表される。
【０００６】
【数１】
2009505496.tif 000003
【０００７】
ブロック変換１２０−１２１を、大きさＮのベクトルｘ上の数学的操作として定義することができる。ほとんどの場合この操作は線形乗算（linear multiplication）であり、Ｍを変換行列とすると、変換領域の出力ｙ＝Ｍｘが得られる。入力データが任意長のとき、当該入力データをサイズＮのベクトルに分割し、ブロック変換を夫々のセグメントに適用する。データ圧縮の目的で可逆ブロック変換が選択される。換言すれば、行列Ｍは可逆である。多次元（例えば、イメージおよびビデオ）ではブロック変換は一般に別々の操作として実装される。行列乗算は、夫々のデータ次元（即ち、行および列の両方）に沿って別々に適用される。
【０００８】
圧縮のため、変換係数（ベクトルｙの成分）を選択的に量子化（即ち、例えば係数値の最下位ビットを落とすかまたは高解像度の数の集合における値を低解像度にマッピングすることで、解像度を削減）することができ、圧縮データストリームにエントロピーまたは可変長符号化することもできる。
【０００９】
デコーダ１５０での復号化の際、図１に示すように、これらの操作の逆（逆量子化／エントロピー復号化１６０および逆ブロック変換１７０−１７１）がデコーダ１５０側で適用される。データの再構築中に、逆行列Ｍ-1（逆変換１７０−１７１）が乗算器として変換領域データに適用される。変換領域データに適用すると、逆変換により元の時間領域または空間領域のデジタルメディアが近似的に再構築される。
【００１０】
多数のブロック変換ベース符号化の適用において、量子化係数に依存して非可逆圧縮および可逆圧縮の両方をサポートするため変換は可逆であることが望ましい。例えば量子化無し（一般には、量子化係数１として表される）の場合、可逆変換を利用するコーデックは復号時に入力データを完全に再生することができる。しかしながら、これらの適用における可逆性の要件により、コーデックを設計することによって変換の選択が制限される。
【００１１】
とりわけＭＰＥＧおよびＷｉｎｄｏｗｓ（登録商標）  Ｍｅｄｉａなどの多数のイメージおよびビデオ圧縮システムは離散コサイン変換（ＤＣＴ）に基づく変換を利用する。ＤＣＴは、ほぼ最適なデータ圧縮となる好ましいエネルギー圧縮特性を有するとして知られている。これらの圧縮システムでは、逆ＤＣＴ（ＩＤＣＴ）を圧縮システムのエンコーダおよびデコーダの両方における再構築ループで使用して、個々のイメージブロックを再構築する。
【００１２】
【特許文献１】米国特許出願公開第２００６／１３３６８３号明細書
【特許文献２】米国特許出願公開第２００６／１３３６８２号明細書
【特許文献３】米国特許出願公開第２００６／１３３６８４号明細書
【発明の開示】
【発明が解決しようとする課題】
【００１３】
変換係数の予測
今述べたように、ブロック変換は一般に離散コサイン変換（ＤＣＴ）またはその変形を使用する。損失が高レベルになると、ブロック変換は厄介なブロック不連続性による視覚的アーチファクト（visual artifact）を免れない。変換ウィンドウが重複する“重複変換”技術を使用して、再構築したものを損失下でも平滑化することができる。
【００１４】
ブロック変換および重複変換の両方において、水平および垂直方向に沿って配向する長線形な特徴は、変換領域ブロックの左端または上端に沿った高い変換値の原因となる。前述の左端および上端はＤＣＡＣ値と呼ばれることがよくある。この名前の理由は、これらが一方の方向ではＤＣであり他方の方向ではＡＣである係数であるからである。左上位置はＤＣ値（両方向でＤＣ）と呼ばれる。
【００１５】
ブロック変換はブロック間の相関を示すことがよくある。隣接ブロックのＤＣ係数は相関し、確率的な意味で閉じる傾向があることは容易に理解することができる。隣接ブロックの対応するＤＣＡＣ係数間の相関は、それ程明確ではない。とりわけイメージの或る特定の領域が（線またはパターンのような）強い水平方向の特性を示す場合、水平方向ではＤＣであり垂直方向ではＡＣである変換係数は同様にブロック間の数的相関を示す。
【００１６】
隣接ブロックからＤＣおよびＤＣＡＣ項を予測すること、および予測誤差を符号化することによるブロック間のＤＣおよびＤＣＡＣ連続性を利用するプロセスは、一般に“ＤＣＡＣ予測”と呼ばれる。本用語は、元の（または近似的な）ＤＣおよびＤＣＡＣ変換係数を回復するデコーダ側のプロセスも網羅する。予測したＤＣＡＣ項は全てのＤＣＡＣ項のサブセットであることができ、予測方向により決定される。
【課題を解決するための手段】
【００１７】
デジタルメディア符号化および復号化技術と本明細書で説明したデジタルメディアコーデックにおける技術を具現化したものとは、デジタルメディアデータの支配的な方向性（例えば、強い水平方向または垂直方向の特性を有するイメージ）を考慮した変換係数予測を使用し、さらに２段階の変換と互換性をもって動作する。
【００１８】
マクロブロックの内部段階変換（inner stage transform）で得たＤＣおよびＤＣＡＣ係数に対し、コーデックは隣接マクロブロックの内部段階変換ＤＣ係数に基づいて方向性メトリックを計算および比較して、支配的な方向性を決定する。方向支配の決定では、他のチャンネル（例えば、色またはクロミナンス）からの情報も考慮することができる。方向支配がない場合、マクロブロックのＤＣ係数は先行隣接マクロブロックのＤＣ係数の平均から予測する。隣接マクロブロックが異なる量子化器を有する場合、マクロブロックのＤＣＡＣ係数に対する方向予測を飛ばしても良い。または、ＤＣＡＣ係数の方向予測を、同一の量子化器を有する１または複数のマクロブロックに限定してもよい。
【００１９】
マクロブロック内部のブロックの外部段階変換（outer stage transform）で得たＤＣＡＣ係数に対して、コーデックはマクロブロックの内部段階変換ＤＣＡＣ係数に基づいて方向性メトリックを計算および比較して、支配的な方向性を検出する。方向支配の決定では、他のチャネル（例えば、色またはクロミナンス）からの情報も考慮することができる。このように外部段階ＤＣＡＣ係数に対して方向予測を決定することを、マクロブロック内の情報にのみ基づいて行うことができる。方向支配を発見した場合、マクロブロック内部のブロックの外部段階ＤＣＡＣ係数を、支配的な方向から単方向に予測する。
【００２０】
本要約は、選択性のある概念を簡潔な形で導入するために与えた。これら概念は以下でさらに説明する。本要約は特許請求の範囲の主題の主要な特徴または本質的な特徴を特定するようには意図しておらず、特許請求の範囲の主題の範囲を決定するための支援として使用するようにも意図していない。
【発明を実施するための最良の形態】
【００２１】
以下の説明は、係数予測に基づくブロック変換ベースのコーデックの効率的な変換係数の符号化／復号化（本明細書では、“予測変換係数符号化”と称する）を与える、符号化および復号化技術に関する。以下の説明は、前述の技術の実装例をデジタルメディアの圧縮システムまたはコーデックのコンテクストで説明する。デジタルメディアシステムはデジタルメディアデータを送信用または記憶用に圧縮形態で符号化し、該データを再生用または他の処理用に復号化する。説明のため、この予測変換係数符号化を組み込んだこの例示的な圧縮システムはイメージまたはビデオ圧縮システムである。または、前述の技術を他の２Ｄデータに対する圧縮システムまたはコーデックに取り込むこともできる。予測変換係数符号化技術は、デジタルメディア圧縮システムが圧縮デジタルメディアデータを特定の符号化形式でエンコードすることを要求しない。
【００２２】
１．エンコーダ／デコーダ
図２および図３は代表的な２次元（２Ｄ）データのエンコーダ２００およびデコーダ３００で利用するプロセスの一般的な図である。図２および図３はブロックパターン符号化を実装する２Ｄデータエンコーダおよびデコーダを組み込んだ圧縮システムの一般的または簡単な説明を表す。ブロックパターン符号化を用いる代替的な圧縮システムでは、２Ｄデータ圧縮に対して、この代表的なエンコーダおよびデコーダで示したものよりも多いプロセスまたは少ないプロセスを使用することができる。例えば、幾つかのエンコーダ／デコーダは色変換、カラーフォーマット、スケーラブル符号化、可逆符号化、マクロブロックモード、等を含むことができる。圧縮システム（エンコーダおよびデコーダ）は可逆から非可逆へ変化する量子化パラメータに基づく量子化に依存して、２Ｄデータの可逆および／または非可逆圧縮を与えることができる。
【００２３】
２Ｄデータエンコーダ２００は、エンコーダへの入力として（典型的な入力に対して）よりコンパクトな２Ｄデータ２１０の表現である圧縮ビットストリーム２２０を生成する。例えば２Ｄデータ入力はイメージ、ビデオシーケンスのフレーム、または２つの次元を有する他のデータであることができる。２Ｄデータエンコーダは入力データをマクロブロックにタイルする（２３０）。前述のマクロブロックは、この代表的なエンコーダではサイズが１６×１６の画素である。２Ｄデータエンコーダはさらに夫々のマクロブロックを４×４のブロックにタイルする。ブロック変換２５０を用いて夫々の４×４ブロックを変換した後に、“前方重ね合わせ（forward overlap）”演算子２４０をブロック間の夫々の縁に適用する。このブロック変換２５０は、Ｓｒｉｎｉｖａｓａｎによる２００４年１２月１７日出願の“ロッシーおよびロスレス２Ｄデータ圧縮のための可逆な変換”というタイトルの米国特許出願１１／０１５，７０７（特許文献１）で説明される、可逆でスケールフリーな２Ｄ変換であることができる。重ね合わせ演算子２４０は、Ｔｕらによる２００４年１２月１７日出願の“効率的な損失なしデータ圧縮のための可逆重ね合わせ演算子”というタイトルの米国特許出願番号１１／０１５，１４８（特許文献２）、およびＴｕらによる２００５年１月１４日出願の“重ね合わせ双直交変換のための可逆２次元プリ／ポストフィルタリング”というタイトルの米国特許出願番号１１／０３５，９９１（特許文献３）で説明される、可逆重ね合わせ演算子であることができる。または、離散コサイン変換または他のブロック変換および重ね合わせ演算子を使用することができる。変換に続いて、夫々の４×４変換ブロックのＤＣ係数２６０は同様な処理連鎖（タイリング、前方重ね合わせ、４×４ブロック変換）を受ける。結果のＤＣ変換係数およびＡＣ変換係数を量子化し（２７０）、エントロピー符号化して（２８０）パケット化（２９０）する。
【００２４】
デコーダは逆のプロセスを実施する。デコーダ側では、変換係数のビットをそれらの夫々のパケットから抽出３１０する。前述の夫々のパケットから、係数自身が復号化３２０および逆量子化３３０される。ＤＣ係数３４０を逆変換の適用により再生し、ＤＣブロック端に渡って適用した適切な平滑化演算子を用いてＤＣ係数平面（plane）を“逆に重ね合わせ”する。引き続いて、４×４の逆変換３５０をＤＣ係数に適用することでデータ全体を再生し、ＡＣ係数３４２をビットストリームから復号化する。最後に結果のイメージ平面内のブロック端を逆重ね合わせフィルタする（３６０）。これにより２Ｄデータ出力が再構築される。
【００２５】
例示的な実装において、エンコーダ２００（図２）は入力イメージを圧縮ビットストリーム２２０（例えば、ファイル）に圧縮し、デコーダ３００（図３）は元の入力またはその近似を、可逆または非可逆符号化のどちらを採用するかに基づいて、再構築する。符号化プロセスは以下で議論する前方重ね合わせ変換（ＬＴ）の適用を含む。前方重ね合わせ変換（ＬＴ）は、やはり以下で詳述する可逆２次元プリ／ポストフィルタリングで実装される。復号化プロセスは、可逆２次元プリ／ポストフィルタリングを用いた逆重ね合わせ変換（ＩＬＴ）の適用を含む。
【００２６】
説明したＬＴおよびＩＬＴは正確な意味で互いに逆であり、従って集合的に可逆重ね合わせ変換と呼ぶことができる。可逆変換として、ＬＴ／ＩＬＴの組を無損失画像圧縮に使用することができる。
【００２７】
説明したエンコーダ２００／デコーダ３００により圧縮した入力データ２１０は、様々なカラーフォーマット（例えば、ＲＧＢ／ＹＵＶ４：４：４、ＹＵＶ４：２：２またはＹＵＶ４：２：０のカラーイメージフォーマット）のイメージであることができる。一般に入力イメージは常に輝度（Ｙ）成分を有する。入力イメージがＲＧＢ／ＹＵＶ４：４：４、ＹＵＶ４：２：２またはＹＵＶ４：２：０のイメージの場合、該イメージは、Ｕ成分およびＶ成分のようなクロミナンス成分も有する。イメージの別個の色平面または成分は異なる空間解像度を有することができる。例えばＹＵＶ４：２：０カラーフォーマットにおける入力イメージの場合、Ｕ成分およびＶ成分はＹ成分の半分の幅と高さを有する。
【００２８】
上述のように、エンコーダ２００は入力イメージまたは画像をマクロブロックにタイルする。例示的な実装では、エンコーダ２００は入力イメージをＹチャネルにおける１６×１６のマクロブロック（カラーフォーマットによってＵチャネルおよびＶチャネルにおける１６×１６、１６×８、または８×８の領域でありうる）にタイルする。夫々のマクロブロックの色平面は４×４の領域またはブロックにタイルされる。従って、マクロブロックは、この例示的なエンコーダの実装において以下のように様々なカラーフォーマットに対して構成される。  
１．グレースケールのイメージに対して、夫々のマクロブロックは１６個の４×４輝度（Ｙ）ブロックを含む。  
２．ＹＵＶ４：２：０フォーマットのカラーイメージに対し、夫々のマクロブロックは１６個の４×４のＹブロックを含み、夫々４個の４×４のクロミナンス（ＵおよびＹ）ブロックを含む。  
３．ＹＵＶ４：２：２フォーマットのカラーイメージに対し、夫々のマクロブロックは１６個の４×４のＹブロックを含み、夫々８個の４×４のクロミナンス（ＵおよびＹ）ブロックを含む。  
４．ＲＧＢまたはＹＵＶ４：４：４のカラーイメージに対し、夫々のマクロブロックは夫々１６個のブロックのＹ、ＵおよびＶチャネルを含む。  
【００２９】
図４、５および６は、代表的なエンコーダ／デコーダにおける様々な変換ブロックの例を示す。図４は様々なフォーマットの輝度チャネル内ブロック、およびＹＵＶ４：４：４カラーフォーマットイメージのクロミナンスチャネル内ブロックに対する４×４の変換ブロックを示す。図５は４２２クロマ（chroma）ローパスブロックフォーマットを示す。４２２クロマローパスブロックは、ＹＵＶ４２２カラーフォーマットイメージのクロマチャネルの内部段階変換で得た変換ブロック係数を含む。図６は４２０クロマローパスブロックを示す。４２０クロマローパスブロックはＹＵＶ４：２：０カラーフォーマットイメージのクロマチャネルの内部段階変換で得た係数を含む。
【００３０】
図４を参照する。以下の説明は、順序付けられた基底関数を用いた、行列表記と一致するブロック変換の慣習または表記法を使用する。例えば図４に示す変換係数ブロック４００において、ＤＣ周波数を表す係数は（係数「０」とラベル付けされた）変換係数ブロックの最初の行／列であり、最高ＡＣ周波数の係数は（係数「１５」とラベル付けされた）最後の行／列である。さらに、ブロックの上端行におけるＤＣＡＣ係数（図４内で、「１」、「２」、「３」とラベル付けした係数）は垂直線のパターンに対応し、左の列内のＤＣＡＣ値（図４内で「４」、「８」および「１２」とラベル付けした係数）は水平線のパターンに対応する。実際の現実的な実装では、変換ブロックを転置することができ、この場合適切な係数の再インデックス化を考慮しなければならない。
【００３１】
２．予測変換係数符号化の概要
［背景技術］の段落において簡潔に上述したように、ＤＣＡＣ予測は、隣接ブロックからＤＣおよびＤＣＡＣ項を予測すること、および予測誤差を符号化する（およびデコーダ側での逆のプロセスを行う）ことでブロック間のＤＣおよびＤＣＡＣ連続性を利用するプロセスである。
【００３２】
図７および８を参照し、ＤＣＡＣ予測の例を示す。本例では、ＤＣ係数（「０」）および夫々の変換ブロックの垂直パターン（「１」、「２」、および「３」）または水平パターン（「４」、「８」、および「１２」）のいずれかに対応するＤＣＡＣ係数の集合を、先行する隣接ブロックのものから予測する。換言すれば、隣接ブロックの対応する係数を、カレントブロックのものに対する“予測因子（predictor）”として捉える。本例の夫々のブロックに対する予測方向は図８の図（記号「Ｎ」は予測無しを示し、「Ｌ」は左予測を示し、「Ｔ」は上予測を示す）で識別し、図７の図の矢印で示す。予測方向が上からのとき、係数「１」、「２」、および「３」はブロック内の対応する係数から上方向に予測される。予測方向が左からのとき、係数「４」、「８」、および「１２」はブロック内の対応する係数から左方向に予測される。特に、左上のブロックに対しては予測を行わない。上端行の第２および第３のブロックは、該ブロックからそれらの左に向かって予測する。第２行におけるブロックは上から夫々、左および上に予測する。ＤＣＡＣ予測によりエンコーダは係数を、その予測因子からの差分として符号化する。予測が合理的に正確である場合、予測因子からの差分は高い確率で零であり、エントロピー符号化２８０（図２）において、可変長エントロピー符号化技術（例えばランレングス符号化）で効率的に符号化することができる。例えば可変長エントロピー符号化技術は、Ｓｒｉｎｉｖａｓａｎによる２００５年８月１２日出願の“変換ブロックの効率的な符号化および復号化”というタイトルの米国特許出願番号ＴＢＤで説明されている。
【００３３】
上の代表的なエンコーダ２００（図２）およびデコーダ（図３）には、ＤＣＡＣ予測の使用上或る難点がある。第１に、代表的なエンコーダおよびデコーダは２段階の変換を使用する。これらを「外部」および「内部」段階と呼ぶことができ、それらは夫々高域帯および低域帯に対応する。特に、ブロックのＤＣ係数２６０（図２）は第２段階の変換（「内部」段階）を受ける。結果として、最初にその段階の逆変換を実施せずにデコーダがＤＣ係数を利用して他の係数を復号することはできない。
【００３４】
第２に、代表的なエンコーダおよびデコーダは重ね合わせ変換を使用する。その設計および構築により、重ね合わせ変換は隣接ブロックに渡る連続性を既に暗黙的に抽出している。この理由により、ＤＣＡＣ予測をさらに適用すると、（ＤＣＡＣ予測がない場合と比較して）結果として符号化性能が劣化する可能性がある。
【００３５】
第３に、メモリフットプリントと複雑性を最小化する目的で、マクロブロック間ＤＣＡＣ予測を最小に保つことが望ましい。
【００３６】
最後に、代表的なエンコーダおよびデコーダは異なる量子化器を異なるマクロブロック内で適用する可能性があり、これによりＤＣＡＣ予測がさらに複雑になる。
【００３７】
本明細書で説明した予測変換係数符号化技術により、従来のＤＣＡＣ予測に対して様々な拡張が与えられる。特に以下で説明する予測変換係数符号化技術の例示的な実装により、一意な予測規則集合を用いて、上で列挙した問題が対処される。要約すると、これらの規則には以下が含まれる。  
１．（内部変換の）ＤＣ係数を、利用可能ならば色情報に少なくとも部分的に基づいて因果的隣接ブロックから得たＤＣ係数に基づいて予測する。  
２．内部変換のＤＣＡＣ係数はＤＣ係数のものから導出した予測方向を使用し、マクロブロック外の情報にも依存する。  
３．カレントマクロブロックおよび先行マクロブロックが異なる量子化器を有するとき、内部変換のＤＣＡＣ係数の予測はスキップされる（即ち、予測因子として０を用いる）。  
４．外部変換ＤＣＡＣ係数の予測は、純粋にマクロブロック内部で実施する。  
５．外部変換ＤＣＡＣ係数の予測方向は、同一マクロブロックの内部変換のＤＣＡＣ係数から導出する。  
【００３８】
以下の説明では、予測変換係数符号化は、量子化変換係数（例えば、図２のエンコーダ２００内での量子化２７０後、および図３のデコーダ３００内での逆量子化３３０前の変換係数）上で実施されるものとして説明する。しかしながら、予測変換係数符号化技術の代替的な実装は、未量子化変換係数（または、デコーダ側での逆量子化値）上で実施してもよいことは理解されるべきである。
【００３９】
代表的なエンコーダ／デコーダにおける予測変換係数符号化には、以下のセクションで詳述する３つの予測レベルが含まれる。これらには以下のものが含まれる。
【００４０】
１．ＤＣ予測。これは内部変換のＤＣ係数の予測である。  
２．ローパスＤＣＡＣ予測。これは内部変換のＤＣＡＣ係数の予測である。  
３．ハイパスＤＣＡＣ予測。これは外部変換のＤＣＡＣ係数の予測である。  
【００４１】
２．１  ＤＣ予測
上述のように、代表的なエンコーダ２００（図２）はイメージを１６×１６の画素のマクロブロックにタイルし、さらにマクロブロックを夫々が４×４の画素である変換ブロックにタイルする。外部段階変換を変換ブロックに適用し、図４に示す４×４の変換係数を含むブロックを（輝度チャネル、およびＹＵＶ４：４：４カラーフォーマットイメージのクロミナンスチャネルに対して）生成する。マクロブロックのこれら１６個の変換係数ブロックにおけるＤＣ係数を分離し（４×４のブロックを形成）、内部段階変換を本ブロックに適用する。その結果の内部段階変換ブロックは、再度４×４の係数を有する。本内部段階変換ブロックのＤＣ係数（「０」とラベル化）を、本明細書ではマクロブロックのＤＣ係数と称する。内部段階変換ブロックのＤＣＡＣ係数（「１」、「２」、「３」、「４」、「８」および「１２」）を、本明細書ではマクロブロックのローパスＤＣＡＣ係数と称する。本マクロブロック構造は、予測変換係数符号化を利用する代替的なエンコーダおよびデコーダでは変化することができる。
【００４２】
マクロブロックの係数を符号化するとき、予測変換係数符号化はマクロブロックのＤＣ係数に対する下記の４つの予測モードから選択する。
１．左からの予測（即ち、マクロブロックのＤＣ係数に対する予測因子は、その左へのマクロブロックのＤＣ係数であるか、またはpredictor=DC[left_MB]である。）  
２．上からの予測（即ち、予測因子はその上方へのマクロブロックのＤＣ係数であるか、またはpredictor=DC[top_MB]である。  
３．左および上からの予測（即ち、予測因子はその左および上方へのマクロブロックのＤＣ係数の平均であるか、またはpredictor=DC[left_MB]+ DC[top_MB]/2である。
４．Ｎｕｌｌの予測（即ち、予測なし。predictor=0）。  
【００４３】
エンコーダは、図１０の擬似コードリスト１０００が示す手順に従ってどの予測モードをマクロブロックに対して使用すべきかを決定する。リスト１０００では、値［ｍx，ｍy］は、［０，０］にある左上のマクロブロックから始まる水平方向（ｘ）および垂直方向（ｙ）のマクロブロックのオフセット数で示した、イメージ（または、タイリングを用いる場合はイメージタイル）内のカレントマクロブロックのインデックスである。
【００４４】
示した手順において、エンコーダはイメージ内部のマクロブロックの位置に基づき、ならびにマクロブロックの左上および最上部左方に対するマクロブロックのＤＣ係数を考慮して、どのＤＣ予測モードを使用すべきかを決定する。より詳細には、エンコーダはイメージの最上部左方のマクロブロック（即ち、カレントマクロブロック［ｍx，ｍy］＝［０，０］）に対して予測無しモードを選択する。エンコーダは、イメージ内の左端に沿うマクロブロック（即ち、インデックス（ｍx）が０の場合）に対して上予測を選択する。エンコーダは、イメージ内のマクロブロックの最上部行におけるマクロブロック（即ち、インデックス（ｍy）が０の場合）に対して左予測を選択する。
【００４５】
全ての他の（例えば、イメージの内部にあるもの）マクロブロックに対して、エンコーダは支配的な方向性のメトリックに基づいて、使用すべき予測モードを決定する。例えば、水平方向のストライプを有するイメージ領域は水平方向に支配的な方向性を有する。換言すれば、カレントマクロブロックの水平近傍は、その垂直近傍よりもＤＣ係数の良好な予測因子である。図９に示すように、カレント（Ｘ）のマクロブロックの左（Ｌ）および最上部（Ｔ）近傍のＤＣ係数の、カレントマクロブロックの対角近傍（Ｄ）からの方向差分に基づいて本メトリックを計算する。イメージが色またはクロミナンスチャネルを有する場合（例えば、ＹＵＶカラーフォーマットイメージに対しては有するが、グレースケールイメージに対しては有さない場合）、メトリックはクロミナンスチャネルの対応するマクロブロックのＤＣ係数をさらに考慮することもできる。実際には、前述の手順は、対角近傍のＤＣ係数が左近傍のＤＣ係数に対してかなり近い場合に垂直方向の支配的な方向性があることを決定する。他方、対角近傍のＤＣ係数が最上部近傍のＤＣ係数に対してかなり近いときに、メトリックは水平方向の支配的な方向性を示す。メトリックは重み係数（ｏｒｉｅｎｔ＿ｗｅｉｇｈｔ）に基づいて「支配性」を決定する。示した手順において、この重み係数は４である。換言すれば、或る方向の方向差分が他の方向の方向差分の４倍より大きいとき、その方向は支配的であると見なされる。ただし、重み係数は代替的な実装では異なる値に設定可能なパラメータである。
【００４６】
水平方向にも垂直方向にも支配性がない場合、エンコーダは左および上予測モードの組合せ（上記リストの３番目）を選択する。この場合、予測因子は上および左のマクロブロックのＤＣ係数の平均である。
【００４７】
２．２  ローパスＤＣＡＣ予測
図２および４を再度参照する。代表的なエンコーダ２００には第２または内部段階変換が含まれる。前述の変換は、外部段階変換からのＤＣ係数２６０（図２）に適用される。結果の係数ブロック４００の（位置「１」、「２」、「３」、「４」、「８」および「１２」にある）ＤＣＡＣ係数（図４）を本明細書ではローパスＤＣＡＣ係数と称する。
【００４８】
代表的なエンコーダおよびデコーダは、マクロブロックの内部段階変換で得たローパスＤＣＡＣ係数の予測に対して下記の３つの予測モードを使用する。  
１．左からの予測（即ち、マクロブロックのローパスＤＣＡＣ係数に対する予測因子は、対応する左へのマクロブロックのＤＣＡＣ係数であるか、またはpredictor=DCAC[left_MB]である）。この場合、「４」、「８」および「１２」と印付けした係数のみを予測する。  
２．上からの予測（即ち、予測因子は、対応する上方へのマクロブロックのローパスＤＣＡＣ係数であるか、またはpredictor=DCAC[top_MB]である。この場合、‘１’、‘２’および‘３’と印付けした係数のみを予測する。および
３．Ｎｕｌｌの予測（予測無し、またはpredictor＝0）。
【００４９】
エンコーダは、図１１の擬似コードリスト１１００が示す手順に従ってどの予測モードをマクロブロックに対して使用すべきかを決定する。示した手順では、エンコーダはマクロブロックのＤＣ予測モードに基づいてどのローパスＤＣＡＣ予測モードを使用するかを決定し、カレントマクロブロックの量子化器インデックスとＤＣ予測因子であるマクロブロックの量子化器インデックスとを決定する。本規則により、異なる量子化器を有するマクロブロックに渡って内部変換ＤＣＡＣ係数の予測が発生しないことが保証される。さらに、ＤＣＡＣは或る方向が支配的な場合にのみ予測され、上述のＤＣ予測モード手順毎に導出される（即ち、水平方向または垂直方向の支配性が発見されるとき、ＤＣ予測モードは“左からの予測”または“上からの予測”である）。
【００５０】
図５を参照する。ＹＵＶ４：２：２カラーフォーマットイメージに対するＤＣＡＣ予測手順は、ブロック内の「５」とラベル付けした位置のローパスＤＣＡＣ係数に対して特別な場合を有する。前述の特別な場合では、ＤＣＡＣ予測モードに関わらずＤＣ予測モードが「上からの予測」であるとき、「５」とラベル付けした係数を係数「１」から予測する。
【００５１】
２．３  ハイパスＤＣＡＣ予測
図２を再度参照する。２段階変換のため、代表的なエンコーダ／デコーダではハイパスＤＣＡＣ係数に対する予測は複雑である。ハイパスＤＣＡＣ係数は、外部段階変換２５０から生成したハイパス変換係数２６２の係数である。さらに、前述のように、逆量子化３３０（図３）の前に代表的なデコーダにおける予測が復号化３２０（図３）で行われるように、予測を代表的なエンコーダでの量子化２７０の後に実施する。復号化プロセスにおける本時点で、外部段階変換ブロックのＤＣ係数を再構築するための逆内部段階変換は未実施である。同様に、エントロピー符号化２８０で、逆内部段階変換も実施しなければ外部段階ＤＣ係数２６０が利用できないように、代表的なエンコーダは既に内部段階変換を外部段階変換ブロックのＤＣ係数２６０に適用している。従って、ハイパスＤＣＡＣ予測の基礎を外部変換のＤＣ係数２６０に置くことは望ましくない。そうでなければ、デコーダは同じ数値精度を有するように制限されるであろう。エンコーダはデコーダのループ（即ち逆内部段階変換）を実行するよう制限される。“オープンループ”ベースで動作するコーデックはこのループを実行できない。これらの理由により、代表的なエンコーダ／デコーダはハイパスＤＣＡＣ予測符号化の基盤を、逆変換前の復号量子化値にのみ置く。
【００５２】
代表的なエンコーダ／デコーダの２段階変換は、ハイパス変換係数を復号化する前でも、カレントマクロブロックの性質に関する幾つかの情報を前もってローパス変換係数から知っていることができるという点で有利である。本情報を使用して、予測の方向性を決定する。代表的なエンコーダ／デコーダは、内部変換係数のみに基づいて、単純だが効率的なメトリックを使用してマクロブロックの支配的な方向性を決定する。
【００５３】
代表的なエンコーダおよびデコーダは、マクロブロックの外部段階変換からハイパスＤＣＡＣ係数を予測するために下記の３つの予測モードを使用する。  
１．左からの予測（即ち、図１３のマクロブロック１３００の左予測ＤＣＡＣ係数に対して説明したように、ブロックのハイパスＤＣＡＣ係数に対する予測因子は、対応位置の左へのブロックのハイパスＤＣＡＣ係数であるか、またはpredictor＝DCAC[left_MB]である）。  
２．上からの予測（即ち、図１４のマクロブロック１４００の上予測ＤＣＡＣ係数に対して説明したように、予測因子は、対応位置の上へのブロックのハイパスＤＣＡＣ係数であるか、またはpredictor＝DCAC[top_MB]である）。  
３．Ｎｕｌｌの予測（予測無し、またはpredictor=0）。
【００５４】
代表的なエンコーダ／デコーダでは、マクロブロック内予測が可能なマクロブロック内部の全てのブロックに同じモードを適用する（ただし、代替的な実装ではマクロブロック内の全てのブロックに同じモードを適用する必要はない）。換言すれば、「左からの予測」または「上からの予測」モードをマクロブロックに対して選択しても、マクロブロック内部に妥当な参照を有さないブロックのハイパスＤＣＡＣ係数に対しては予測を行わない。
【００５５】
エンコーダは、図１２の擬似コードリスト１２００が示す手順に従ってどの予測モードをマクロブロックに対して使用すべきかを決定する。示した手順では、（図１０のＤＣ予測手順１０００と同様に）重み係数を再度使用して方向支配を試験する。代表的なエンコーダおよびデコーダは重み係数の値を両方の手順に対して使用するが、代替的な実装では両方の手順で同じ値のパラメータを使用する必要はない。ハイパスＤＣＡＣ予測手順１２００における方向差分を、マクロブロックの内部段階変換からのローパスＤＣＡＣ係数、および（存在すれば）クロミナンスチャネルからのローパスＤＣＡＣ係数に基づいて計算する。擬似コードリスト１２００において、値「ｌｏｗｐａｓｓ[ｉ]」は、図４に示すブロック構造にあるように左から右、上から下の順序でラベル付けした対応するインデックス（ｉ）の位置にあるローパスＤＣＡＣ係数である。値「ｌｏｗｐａｓｓ＿Ｕ[ｉ]」および値「ｌｏｗｐａｓｓ＿Ｖ[ｉ]」は、ＹＵＶカラーフォーマットイメージのＵおよびＶクロミナンスチャネルの内部段階変換ブロックで得たローパスＤＣＡＣ係数である。これらのクロミナンスチャネルは、夫々ＹＵＶ４：４：４、ＹＵＶ４：２：２およびＹＵＶ４：２：０に対して図４，５および６で示したブロック構造４００、５００、および６００にあるような係数インデックスを有する。
【００５６】
示したハイパスＤＣＡＣ予測手順では、隣接マクロブロックの予測で使用するためマクロブロックから利用できるよう保持するのに必要な情報は、マクロブロックチャネル当たり１つのＤＣ係数と６つのＤＣＡＣ係数であるということのみである（ＹＵＶ４：２：０およびＹＵＶ４：２：２カラーフォーマットイメージのクロミナンスチャネルでは、それより少ない）。キャッシュする必要があるものは、（ＹＵＶ４：４：４の場合）マクロブロック当たり高々２１個の係数である。さらに、左からの予測に用いる係数を、次のマクロブロックを符号化／復号化した後に廃棄することができる。従ってＹＵＶ４：４：４に対して、マクロブロックの次行で使用するためにはマクロブロック当り１２個の係数をキャッシュすればよい。
【００５７】
タイリングをエンコーダ／デコーダが用いるとき、夫々のタイルは予測変換係数符号化の目的のため独立したイメージと見なされる。これにより、イメージタイルの独立した復号化が保証される。
【００５８】
３．コンピューティング環境
上述のエンコーダ２００（図２）およびデコーダ３００（図３）および予測変換係数符号化技術を、デジタルメディア信号処理を実施する任意の様々な装置上で実施することができる。この装置には、とりわけ、コンピュータ、イメージおよびビデオ録画および送受信装置、ポータブルビデオプレイヤー、ビデオ会議、等が含まれる。図１５に示すように、デジタルメディア符号化技術をハードウェア回路、およびコンピュータまたは他のコンピューティング環境内部で実行するデジタルメディア処理ソフトウェアで実装することができる。
【００５９】
図１５は、説明した実施形態を実装可能な、適切なコンピューティング環境（１３００）の一般的な例を示す。本発明を多様な汎用目的または特殊目的のコンピューティング環境で実装できるので、コンピューティング環境（１３００）は本発明の使用または機能性の範囲に対する制限を示唆するようには意図していない。
【００６０】
図１５を参照する。コンピューティング環境（１３００）には、少なくとも１つの演算装置（１５１０）とメモリ（１５２０）とが含まれる。図１５では、この最も基本的な構成（１５３０）を点線内に含めてある。演算装置（１５１０）はコンピュータ実行可能命令を実行し、実際のプロセッサまたは仮想のプロセッサであることができる。マルチプロセッサシステムでは複数の演算装置がコンピュータ実行可能命令を実行して処理能力を高める。メモリ（１５２０）は揮発性メモリ（例えば、レジスタ、キャッシュ、ＲＡＭ、等）、不揮発性メモリ（例えば、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ、等）、または前述の２つの何らかの組合せであることができる。メモリ（１５２０）は説明した予測変換係数符号化技術を実装するソフトウェア（１５８０）を格納する。
【００６１】
コンピューティング環境は更なる特徴を有することができる。例えばコンピューティング環境（１５００）には記憶装置（１５４０）、１つまたは複数の入力装置（１５５０）、１つまたは複数の出力装置（１５６０）、および１つまたは複数の通信接続（１５７０）が含まれる。バス、コントローラ、またはネットワークなどの相互接続メカニズム（示さず）は、コンピューティング環境（１５００）の構成要素を相互接続する。一般に、オペレーティングシステムソフトウェア（示さず）は、コンピューティング環境（１５００）内で実行される他のソフトウェアの動作環境を与え、コンピューティング環境（１５００）のコンポーネントの活動を調整する。
【００６２】
記憶装置（１５４０）は取り外し可能または取り外し不能であることができ、磁気ディスク、磁気テープまたはカセット、ＣＤ−ＲＯＭ、ＣＤ−ＲＷ、ＤＶＤ、または情報の記憶に使用可能で且つコンピューティング環境（１５００）内部でアクセス可能な任意の他の媒体が含まれる。記憶装置（１５４０）は、説明したエンコーダ／デコーダおよび予測変換係数符号化技術を実装するソフトウェア（１５８０）に対する命令を記憶する。
【００６３】
１つまたは複数の入力装置（１５５０）はタッチ入力装置であることができる。タッチ入力装置には例えば、キーボード、マウス、ペン、またはトラックボール、音声入力装置、スキャン装置、またはコンピューティング環境（１５００）への入力を与える別の装置がある。オーディオに対して、入力装置（１５５０）は、アナログまたはデジタル形式でオーディオ入力を受付けるサウンドカードまたは同様な装置であることができ、またはコンピューティング環境に対してオーディオサンプルを与えるＣＤ−ＲＯＭリーダであることができる。１つまたは複数の出力装置（１５６０）は、ディスプレイ、プリンタ、スピーカ、ＣＤライタ、またはコンピューティング環境（１５００）からの出力を与える別の装置であることができる。
【００６４】
１つまたは複数の通信接続（１５７０）は、通信媒体上での別のコンピューティングエンティティに対する通信を可能とする。通信媒体は、コンピュータ実行可能命令、圧縮オーディオまたはビデオ情報、または他のデータなどの情報を変調データ信号で運搬する。変調データ信号は、１つまたは複数の特性集合を有するかまたは信号内の情報を符号化するように変化した信号である。限定ではなく例として、通信媒体には、電気、光学、ＲＦ、赤外線、音響、または他のキャリアで実装した有線または無線技術が含まれる。
【００６５】
本明細書のデジタルメディア処理技術を、コンピュータ読取可能媒体の一般的コンテクストで説明することができる。コンピュータ読取可能媒体は、コンピューティング環境内部でアクセス可能な任意の有効な媒体である。限定ではなく例として、コンピューティング環境（１５００）では、コンピュータ読取可能媒体にはメモリ（１５２０）、記憶装置（１５４０）、通信媒体、および上記の任意の組合せが含まれる。
【００６６】
本明細書のデジタルメディア処理技術を、プログラムモジュール内に含まれるもののような、ターゲットの実際のプロセッサまたは仮想のプロセッサのコンピューティング環境で実行されるコンピュータ実行可能命令の一般的コンテクストで説明することができる。一般に、プログラムモジュールには、特定のタスクを実施するかまたは特定の抽象データ型を実装するルーチン、プログラム、ライブラリ、オブジェクト、クラス、コンポーネント、データ構造、等が含まれる。様々な実施形態で望ましいように、プログラムモジュールの機能性を組み合わせるか、またはプログラムモジュール間で分割することができる。プログラムモジュールに対するコンピュータ実行可能命令を、ローカルまたは分散コンピューティング環境内部で実行することができる。
【００６７】
表示の都合上、詳細な説明では“決定する”、“生成する”、および“適用する”といった用語を使用して、コンピューティング環境におけるコンピュータ動作を説明した。これらの用語はコンピュータが実施する動作の高レベルな抽象化であり、人間が実施する動作と混同すべきではない。これらの用語に対応する実際のコンピュータ動作は実装によって変化する。
【００６８】
本明細書で説明した主題の多数の可能な変形を考慮して、添付請求項およびその等価物の範囲内にある実施形態の全てを我々の発明として主張する。
【図面の簡単な説明】
【００６９】
【図１】先行技術における従来のブロック変換ベースコーデックのブロック図である。
【図２】予測変換係数符号化を組み込んだ代表的なエンコーダのフロー図である。
【図３】予測変換係数符号化を組み込んだ代表的なデコーダのフロー図である。
【図４】ＤＣおよびＤＣＡＣ係数を示す４×４の変換ブロック構造の図である。
【図５】ＹＵＶ４：２：２カラーフォーマットに関して、図３のエンコーダの内部段階変換において生成した係数の４２２クロマローパスブロック構造の図である。
【図６】ＹＵＶ４：２：０カラーフォーマットイメージに関して、図３のエンコーダの内部段階変換において生成した係数の４２０クロマローパスブロック構造の図である。
【図７】ＤＣＡＣ予測の一例を示す図である。
【図８】図７のＤＣＡＣ予測の例において、予測方向を識別する図である。
【図９】マクロブロックのＤＣ予測モードの決定に用いるマクロブロックを示す図である。
【図１０】図３のエンコーダおよび図４のデコーダ内の予測変換係数符号化におけるＤＣ予測モード決定の擬似コードリストを示す図である。
【図１１】図３のエンコーダおよび図４のデコーダ内の予測変換係数符号化におけるローパスＤＣＡＣ予測モード決定の擬似コードリストを示す図である。
【図１２】図３のエンコーダおよび図４のデコーダ内の予測変換係数符号化におけるハイパスＤＣＡＣ予測モード決定の擬似コードリストを示す図である。
【図１３】マクロブロックの左ハイパスＤＣＡＣ予測を示す図である。
【図１４】マクロブロックの上ハイパスＤＣＡＣ予測を示す図である。
【図１５】図４の広域係数の適応符号化を実装するのに適したコンピューティング環境のブロック図である。
【図１】
2009505496.tif 000004
【図２】
2009505496.tif 000005
【図３】
2009505496.tif 000006
【図４】
2009505496.tif 000007
【図５】
2009505496.tif 000008
【図６】
2009505496.tif 000009
【図７】
2009505496.tif 000010
【図８】
2009505496.tif 000011
【図９】
2009505496.tif 000012
【図１０】
2009505496.tif 000013
【図１１】
2009505496.tif 000014
【図１２】
2009505496.tif 000015
【図１３】
2009505496.tif 000016
【図１４】
2009505496.tif 000017
【図１５】
2009505496.tif 000018
【国際調査報告】
2009505496.tif 000019