(57)【要約】【課題】重ね合わせ双直交変換のための可逆２次元プリ／ポストフィルタリングを提供する。【解決手段】ディジタルメディアコーデックで使用可能な効率のよい重ね合わせ変換が、コア変換に対して千鳥配列のグリッド上で適用されるプリ／ポストフィルタリングのための可逆２次元重ね合わせ演算子を使用して実現される。２次元重ね合わせ演算子は、それぞれのブロックの点のサブセットに対するインターリーブされた段における一連の基本的変換として再構成され、計算上の効率のためにリフティングステップで実施される、分離可能に適用される１次元可逆重ね合わせ演算子に基づくものである。インターリーブされる段には、正規化２×２アダマール変換を伴う最初と最後の段の間の、回転を適用する段およびスケーリング段が含まれる。【選択図】図１１
2006197573.tif 000002
【特許請求の範囲】
【請求項１】
２次元ディジタルメディアデータを重ね合わせ変換として処理する方法であって、
可逆２次元重ね合わせ演算子を、千鳥配列のグリッドベース上の前記ディジタルメディアデータの２次元ブロックの第１のセットに適用するステップと、
可逆２次元ブロック変換を、整列されたグリッドベース上の前記ディジタルメディアデータの２次元ブロックの第２のセットに適用するステップと
を含み、前記千鳥配列のグリッドベースは前記整列されたグリッドベースに対して空間的にずらされており、前記可逆２次元重ね合わせ演算子および前記可逆２次元ブロック変換を一緒に適用する前記ステップは、前記２次元ディジタルメディアデータの前記重ね合わせ変換をもたらすことを特徴とする方法。
【請求項２】
請求項１に記載の前記重ね合わせ変換としての前記処理を一部使用することによって前記２次元ディジタルメディアデータを符号化し、復号化する方法であって、復号化において前記可逆２次元重ね合わせ演算子を適用する前記ステップと前記可逆２次元ブロック変換を適用する前記ステップは、前記２次元ディジタルメディアデータの符号化において適用される前記重ね合わせ演算子およびブロック変換から反転され、その逆の順序であり、復号化における重ね合わせ変換としての前記処理は、前記２次元ディジタルメディアデータを符号化し、復号化する際に実行される他のどんな処理とも別の、符号化における重ね合わせ変換としての前記処理の損失なしの逆であることを特徴とする方法。
【請求項３】
前記可逆２次元重ね合わせ演算子を適用する前記ステップは、前記千鳥配列のグリッドベース上の２次元ブロックの前記第１のセット中のブロックについて、
前記ブロックへの１次元可逆重ね合わせ演算子の水平と垂直に分離可能な適用の演算をインターリーブする複数の段において一連の演算を適用するステップであって、それぞれの段における前記演算は、前記ブロック中の点の独立のサブグループへのリフティングステップとして実施される基本的変換のセットとして構成されるステップ
を含むことを特徴とする請求項１に記載の方法。
【請求項４】
最初と最後の段において演算を適用する前記ステップは、前記ブロックの４点サブセットに正規化２×２アダマール演算子を適用するステップを含むことを特徴とする請求項３に記載の方法。
【請求項５】
４×４点サイズブロックの場合には、前記４点サブセットは、
前記ブロックの隅のところの４点のグループと、
前記ブロックの中央にある４点のグループと、
前記ブロックの水平端の中央にある４点のグループと、
前記ブロックの垂直端の中央にある４点のグループと
を含むことを特徴とする請求項４に記載の方法。
【請求項６】
前記最初と最後の段の間の段において演算を適用する前記ステップは、前記ブロック中の点のサブセットに回転変換を適用するステップを含むことを特徴とする請求項４に記載の方法。
【請求項７】
４×４点サイズブロックの場合には、回転変換を適用する前記ステップは、
前記ブロックの２×２低域、低域サブセット中の点を通過するステップと、
前記ブロックの２×２高域、高域サブセットの点に２×２回転変換を適用するステップと、
前記ブロックの２×２高域、低域サブセットおよび２×２低域、高域サブセットの独立の２点サブグループに２点回転変換を適用するステップと
を含むことを特徴とする請求項６に記載の方法。
【請求項８】
前記最初と最後の段の間の別の段において演算を適用する前記ステップは、前記ブロック中の点のサブセットにスケーリング演算を適用するステップを含むことを特徴とする請求項４に記載の方法。
【請求項９】
前記別の段において前記ブロック中の点のサブセットにスケーリング演算を適用する前記ステップおよび前記最初と最後の段において前記２×２アダマール演算子を適用する前記ステップは、前記ブロックへの前記１次元可逆重ね合わせ演算子の水平と垂直に分離可能な適用に関する少なくともいくつかの演算を省略し、そのような少なくともいくつかの演算は、前記最初と最後の段の前記２×２アダマール演算子の演算と相殺される前記別の段のスケーリング演算であることを特徴とする請求項８に記載の方法。
【請求項１０】
前記別の段において前記ブロック中の点のサブセットにスケーリング演算を適用する前記ステップは、前記ブロックへの前記１次元可逆重ね合わせ演算子の水平と垂直に分離可能な適用に関する、少なくともいくつかの相殺可能なスケーリング演算を省略することを特徴とする請求項８に記載の方法。
【請求項１１】
４×４点サイズブロックの場合には、スケーリング演算を適用する前記ステップは、
前記ブロックの２×２高域、低域サブセットおよび２×２低域、高域サブセット中の点を通過するステップと、
前記ブロックの２×２高域、高域サブセット、および前記ブロックの２×２低域、低域サブセットにスケーリング演算を適用するステップと
を含むことを特徴とする請求項８に記載の方法。
【請求項１２】
前記ブロックの前記２×２高域、高域サブセットおよび前記低域、低域サブセットにスケーリング演算を適用する前記ステップは、
前記ブロックの中心の周りに対称的に位置する前記２つのサブセットからの点の対に２点スケーリング演算を適用するステップ
を含むことを特徴とする請求項１１に記載の方法。
【請求項１３】
ディジタルメディアプロセッサ上で実行可能な、前記プロセッサに２次元ディジタルメディアデータに対して請求項３に記載の方法を実行させるソフトウェアプログラムを保持していることを特徴とする少なくとも１つのプログラム保持媒体。
【請求項１４】
ディジタルメディアプロセッサ上で実行可能な、前記プロセッサに２次元ディジタルメディアデータに対して請求項８に記載の方法を実行させるソフトウェアプログラムを保持していることを特徴とする少なくとも１つのプログラム保持媒体。
【請求項１５】
重ね合わせ変換を使用して処理される２次元ディジタルメディアデータを格納するデータ格納バッファと、
可逆２次元重ね合わせ演算子を、千鳥配列のグリッドベース上の前記ディジタルメディアデータの２次元ブロックの第１のセットに適用し、
可逆２次元ブロック変換を、整列されたグリッドベース上の前記ディジタルメディアデータの２次元ブロックの第２のセットに適用するようにプログラムされたプロセッサであって、前記千鳥配列のグリッドベースは前記整列されたグリッドベースに対して空間的にずらされており、前記可逆２次元重ね合わせ演算子および前記可逆２次元ブロック変換を一緒に適用することは、前記２次元ディジタルメディアデータの前記重ね合わせ変換をもたらす
プロセッサと
を備えることを特徴とする２次元ディジタルメディアプロセッサ。
【請求項１６】
前記可逆２次元重ね合わせ演算子を適用するときに、前記千鳥配列のグリッドベース上の２次元ブロックの前記第１のセット中のブロックについて、さらに、
前記ブロックへの１次元可逆重ね合わせ演算子の水平と垂直に分離可能な適用の演算をインターリーブする複数の段において一連の演算を適用するようにプログラムされたプロセッサであって、それぞれの段における前記演算は、前記ブロック中の点の独立のサブグループへのリフティングステップとして実施される基本的変換のセットとして構成される
プロセッサであることを特徴とする請求項１５に記載の２次元ディジタルメディアプロセッサ。
【請求項１７】
複数の段において前記一連の演算を適用するときに、さらに、
最初と最後の段において前記ブロックの４点サブセットに正規化２×２アダマール演算子を適用し、
前記最初と最後の段の間の段において前記ブロック中の点のサブセットに回転変換を適用し、
前記最初と最後の段の間の前記段においてスケーリング演算を適用する
ようにプログラムされることを特徴とする請求項１６に記載の２次元ディジタルメディアプロセッサ。
【請求項１８】
前記ディジタルメディアデータの４×４点サイズブロックの場合には、前記４点サブセットは、
前記ブロックの隅のところの４点のグループと、
前記ブロックの中央にある４点のグループと、
前記ブロックの水平端の中央にある４点のグループと、
前記ブロックの垂直端の中央にある４点のグループと
を含むことを特徴とする請求項１７に記載の２次元ディジタルメディアプロセッサ。
【請求項１９】
前記ディジタルメディアデータの４×４点サイズブロックの場合に、回転変換を適用するときに、さらに、
前記ブロックの２×２低域、低域サブセット中の点を通過し、
前記ブロックの２×２高域、高域サブセットの点に２×２回転変換を適用し、
前記ブロックの２×２高域、低域サブセットおよび２×２低域、高域サブセットの独立の２点サブグループに２点回転変換を適用する
ようにプログラムされることを特徴とする請求項１７に記載の２次元ディジタルメディアプロセッサ。
【請求項２０】
４×４点サイズブロックの場合に、前記スケーリング演算を適用するときに、さらに、
前記ブロックの２×２高域、低域サブセットおよび２×２低域、高域サブセット中の点を通過し、
前記ブロックの中心の周りに対称的に位置する、前記ブロックの２×２高域、高域サブセットおよび前記ブロックの２×２低域、低域サブセットである２つのサブセットからの点の対に２点スケーリング演算を適用する
ようにプログラムされることを特徴とする請求項１７に記載の２次元ディジタルメディアプロセッサ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、重ね合わせ変換を使ったディジタルメディア（ビデオや画像など）圧縮に関する。
【背景技術】
【０００２】
（重ね合わせ変換）
重ね合わせ変換は、データ圧縮で使用される強力な信号処理技法である（例えば、非特許文献１参照）。しかしながら、今日まで、線形位相を用いた効率的な重ね合わせ変換は、損失なし（可逆）データ圧縮については考案されておらず、適用もされていない。
【０００３】
以下でより詳細に論じるように、重ね合わせ変換は、プリフィルタの後にデータ変換が続くもの（およびその逆の、逆データ変換の後にポストフィルタが続くもの）として考案され得ることが知られている（非特許文献２および３参照）。この考案方式で損失なしデータ変換を使って、可逆性の正しい尺度が達成され得る。これまでは、特定の限られた種類のプリフィルタおよびポストフィルタだけが可逆性のために選択され得ると考えられてきた。この限られたセットは、その圧縮（レート対ひずみ、またはＲＤ）性能が非常に制限される。最近のある論文（非特許文献４参照）には、その大部分の要素が可逆であり、良好な圧縮特性を持つ構造が提示された。
【０００４】
音声圧縮においては、可逆重ね合わせ変換のためのいくつかの構造が紹介された（非特許文献５および６参照）。しかしながら、これらの構造は、その基底関数が直交し、対称でない（すなわち、基底関数が線形位相でない）、変形離散コサイン変換（ＭＤＣＴ）とも呼ばれる、変調重ね合わせ変換（ＭＬＴ）にのみ適用できる。これらの変換は、ディジタル写真圧縮の場合など、線形位相（対称）関数が必要とされるデータ圧縮用途には適用できない。
【０００５】
写真（画像）圧縮では、ＲＤ性能の点で最もうまく機能する変換の１つは、重ね合わせ双直交変換（ＬＢＴ）である（非特許文献７参照）。ＭＬＴと異なり、ＬＢＴの基底関数は対称であり、厳密に直交しない（ＬＢＴでは、分析基底関数が合成基底関数に直交し、それゆえに、双直交という用語が使用される）。ＬＢＴは、画像圧縮用途ではうまく使用されているが、損失なし画像圧縮ではまだ使用されていない。というのは、整数可逆構造が知られていなかったからである。
【０００６】
（ブロック変換ベースの符号化の概要）
変換符号化は、多くのオーディオ、画像およびビデオ圧縮システムで使用される圧縮技法である。圧縮されていないディジタル画像およびビデオは、通常、２次元（２Ｄ）グリッドとして構成された画像またはビデオフレーム中の場所にある画素または色のサンプルとして表され、または取り込まれる。これは、画像またはビデオの空間領域表現と呼ばれる。例えば、画像での１つの典型的な形式は、グリッドとして構成された２４ビット色画素サンプルのストリームからなる。各サンプルは、特に、ＲＧＢやＹＩＱといった色空間内のグリッド中のある画素位置における色成分を表す数である。様々な画像およびビデオシステムが、多種多様なサンプリングの色、空間および時間分解能を使用し得る。同様に、ディジタルオーディオは、通常、時間サンプリングされたオーディオ信号ストリームとして表される。例えば、１つの典型的なオーディオ形式は、規則的な時間間隔で取られたオーディオ信号の１６ビット振幅サンプルのストリームからなる。
【０００７】
圧縮されていないディジタルオーディオ、画像およびビデオ信号は、相当な記憶および伝送容量を消費し得る。変換符号化は、信号の空間領域表現を周波数領域（または他の類似の変換領域）表現に変換し、次いで、その変換領域表現の、特定の、一般により知覚されにくい周波数成分の分解能を低減することによって、ディジタルオーディオ、画像およびビデオのサイズを縮小する。これは、一般に、空間領域における画像またはビデオの色または空間分解能、あるいは時間領域におけるオーディオの分解能を低減するのと比べて、はるかに知覚されにくいディジタル信号の劣化を生じる。
【０００８】
より具体的には、図１に示す典型的なブロック変換ベースのコーデック１００は、圧縮されていないディジタル画像の画素を、各ブロックが、おそらく、他のブロックと重なり合う固定サイズの２次元ブロック（Ｘ１，．．．Ｘｎ）に分割する。空間周波数分析を行う線形変換１２０〜１２１が各ブロックに適用され、ブロック内の間隔が置かれたサンプルが、一般に、そのブロック間隔にわたる対応する周波数帯域でのディジタル信号の強さを表す、１組の周波数（または変換）係数に変換される。圧縮では、これらの変換係数が選択的に量子化され１３０（すなわち、係数値の最下位ビットを除去し、あるいは別の方法でより高い分解能数セット中の値をより低い分解能にマップすることによって、分解能が低減され）、さらに、圧縮データストリームにエントロピまたは可変長符号化１３０され得る。復号化時に、変換係数は、元の色／空間サンプリング画像／ビデオ信号（復元されたブロック
【０００９】
【数１】
2006197573.tif 000003
【００１０】
）をほぼ復元するように逆変換される１７０〜１７１。
【００１１】
ブロック変換１２０〜１２１は、サイズＮのベクトルｘに対する数学演算として定義され得る。たいていの場合、この演算は線形乗算であり、Ｍを変換行列とする、変換領域出力ｙ＝Ｍｘを生じる。入力データが任意に長いとき、それは、サイズＮのベクトルに区分化され、ブロック変換が各区分に適用される。データ圧縮のためには、可逆ブロック変換が選択される。言い換えると、行列Ｍは反転可能である。（例えば画像やビデオなどの）多次元において、ブロック変換は、通常、分離可能な演算として実施される。行列乗算は、データの各次元（すなわち行と列の両方）に沿って分離可能に適用される。
【００１２】
圧縮では、変換係数（ベクトルｙの成分）が、選択的に量子化され（すなわち、係数値の最下位ビットを除去し、あるいは別の方法でより高い分解能数セット中の値をより低い分解能にマップすることによって、分解能が低減され）、さらに、圧縮データストリームにエントロピまたは可変長符号化され得る。
【００１３】
復号器１５０における復号時には、図１に示すように、これらの演算の逆（逆量子化／エントロピ復号化１６０および逆ブロック変換１７０〜１７１）が復号器１５０側で適用される。データを復元する間、逆行列Ｍ−１（逆変換１７０〜１７１）が、乗数として変換領域データに適用される。変換領域データに適用されると、この逆変換は、ほぼ、元の時間領域または空間領域ディジタルメディアを復元する。
【００１４】
多くのブロック変換ベースの符号化アプリケーションにおいて、変換は、望ましくは、量子化係数に応じて、損失ありと損失なし両方の圧縮をサポートするように、可逆である。例えば、量子化なしの場合（一般に、量子化係数１として表される）、可逆変換を利用するコーデックは、復号時に入力データを正確に再現することができる。しかしながら、これらのアプリケーションにおける可逆性の要件は、コーデックがそれに基づいて設計され得る変換の選択を制約する。
【００１５】
ＭＰＥＧやＷｉｎｄｏｗｓ（登録商標）  Ｍｅｄｉａなど、多くの画像およびビデオ圧縮システムは、特に、離散コサイン変換（ＤＣＴ）に基づく変換を利用する。ＤＣＴは、ほぼ最適なデータ圧縮を生じる好適なエネルギ圧縮特性を持つことが知られている。これらの圧縮システムでは、個々の画像ブロックを復元するために、圧縮システムの符号器と復号器両方の復元ループで逆ＤＣＴ（ＩＤＣＴ）が用いられる。ＤＣＴについては記載されている（例えば、非特許文献８参照）。ＩＤＣＴの例示的実施形態については記載されている（例えば、非特許文献９参照）。
【００１６】
静止画像（またはビデオシーケンスにおける画面内符号化フレーム）を圧縮する間、ＭＰＥＧ−２、ＭＰＥＧ−４、Ｗｉｎｄｏｗｓ（登録商標）  Ｍｅｄｉａなどの最も一般的な規格は、その画像を正方形のタイルに分割し、各画像タイルにブロック変換を適用する。所与の区画（一般にブロックと呼ばれる）における変換係数は、そのブロック内の未処理データ成分によってのみ影響される。量子化など、符号器側における不可逆の、または損失ありの演算は、復号化画像にアーティファクトを生じさせる。これらのアーティファクトは、ブロック間で独立であり、ブロックひずみと呼ばれる視覚的に不快な影響を生じる。同様にオーディオデータでは、重なり合わないブロックが独立に変換符号化されると、量子化誤差が、復号器におけるオーディオ信号の復元時に、ブロック境界のところの信号における不連続性を生じる。オーディオでは、周期的なクリッキングが聞こえる。
【００１７】
ブロックひずみに対処するのにいくつかの技法が使用される。中でも最も一般的な技法が、ブロック間エッジ境界を平滑化する非ブロック化フィルタ、および未処理の入力データと近隣のブロック境界からの予測の間の差異を符号化する空間的外挿である。これらの技法には欠点がないわけではない。例えば、非ブロック化フィルタ手法は「オープンループ」である。すなわち、その順変換プロセスは、非ブロック化が、復号器側で復元の前に実行されることになることを考慮に入れない。その上、これらの技法は、両方とも、計算上高くつく。
【００１８】
ブロックひずみを最小限に抑えるために、ブロック相互間の相関関係が利用され得る。ブロック相互間の相関関係を実現する１つのやり方は、重ね合わせ変換を使用することによるものである（例えば、非特許文献１０参照）。重ね合わせ変換とは、その入力が、現在のブロック中のデータ要素に加えて、近隣のブロック中の少数の隣接する要素にも及ぶ変換である。同様に、復元側で、この逆変換は、現在のブロック中のすべてのデータ点と共に近隣のブロック中の少数のデータ点にも影響を及ぼす。
【００１９】
２次元（２Ｄ）データの場合には、重ね合わせ２Ｄ変換は、現在のブロックと、左、上、右、下、および、おそらくは、左上、右上、左下、右下のブロックの選択要素との関数である。現在の変換を計算するのに使用される近隣のブロック中のデータ点の数は、重ね合わせと呼ばれる。
【００２０】
（空間領域重ね合わせ変換の概要）
重ね合わせ変換は、従来方式のブロック変換の後に変換領域量をマージするステップとして変換領域で実施され得る。さもなければ、重ね合わせ変換は、重ね合わせの範囲内の画素に適用される前処理段によって、空間領域で実施され得る。これら２つの実施形態は、数学的に関連しており、したがって、等価である。
【００２１】
図２に、従来方式の空間領域重ね合わせ変換の一例を示す。図示の例では、重ね合わせは２画素であり、図示の２つの隣接するブロックから２画素ずつが前処理段２１０において前処理される。２つの前処理された出力は、図１と同様にコーデック２００によるブロック変換ベースの符号化のためにブロックのそれぞれに送られる。前処理段の逆が、復号化後に後処理段２２０において適用される。前処理およびブロック変換の適切な選択により、幅広い重ね合わせ変換が実現され得る。
【００２２】
重ね合わせ変換の空間領域実現の主要な利点は、既存のブロック変換ベースのコーデックに、前処理および後処理段を後付けし、既存のコーデック枠組みを使って、重ね合わせ変換の利益、すなわち、ブロックひずみの低減およびより適切な圧縮が導出され得ることである。前処理２１０および後処理は、図３に示す行列乗算として表され得る。従来方式では、前処理および後処理行列は、相互の逆である。すなわち、前処理行列（Ｐｆ）とその逆または後処理行列（Ｐｉ）を一緒に掛け合わせると、単位行列Ｉに等しい。
【００２３】
（定義）
一般に、変換の長さＮは、ある変換ブロック中の変換係数の数である。
【００２４】
変換のサポートＫは、その変換ブロックの係数に影響を与える入力データ点の数である。同様に、サポートＫは、逆変換のプロセスで、各変換係数によって影響される出力データ点の数でもある。
【００２５】
離散コサイン変換（ＤＣＴ）などの典型的なブロック変換では、その長さとサポートは同一である。しかしながら、重ね合わせ変換（ＬＴ）は、そのサポートＫが長さＮより大きい変換の１つの重要なクラスである。重ね合わせ変換のサポートおよび長さを表すには、Ｋ×Ｎという表記法が使用される（Ｋ＜Ｎである変換は拡張的であり、したがって、データ圧縮では使用されない）。
【００２６】
一例３００として、図３に示す６×４ＬＴ３１０は、６つの入力および４つの出力を持つ変換である。この変換は反転可能であるため、これらの入力の２つは隣接する変換ブロックと共用される。逆重ね合わせ変換（ＩＬＴ）３２０は、その４つの入力から６つの出力を生み出す。ブロック境界に近い出力データ点（この場合にはブロックの各端部ごとに１点）は、２つの隣接する逆変換ブロックの対応する応答を合計することによって復元される。
【００２７】
（圧縮システムで使用される重ね合わせ変換の制約条件）
数学的な意味で、重ね合わせ変換は、入力および出力信号ならびに中間計算結果を実数とみなすとき、反転可能な構造である。無限精度が達成され得る場合、入力データは、その重ね合わせ変換係数から完全に回復され得るはずである。しかしながら、無限精度は実際には不可能である。すなわち、データの損失なし圧縮のための要件は、整数または固定精度の演算に作用し、しかも、変換係数の整数表現が与えられたものとして、データを完全に復元する変換を設計することである。これは、数学的反転可能性より強い条件であり、そのような変換を、本明細書では、「損失なし」変換と呼ぶ。さらに、この損失なし変換は、（損失なしと損失あり両方の）データ圧縮でも効率的であることが必要とされる。その効率性は、変換されたデータのエントロピによって測定される。すなわち、エントロピが低いほど、変換されるデータは、コンテキストベースの算術符号化や適応ランレングス符号化などの標準エントロピ符号化技法によって、より一層圧縮され得る。
【００２８】
【非特許文献１】H. S. Malvar, Signal Processing with Lapped Transforms. Boston, MA: Artech House, 1992
【非特許文献２】H. S. Malvar, "A pre- and post-filtering technique for the reduction of blocking effects," in Proc. Picture Coding Symposium, Stockholm, Sweden, Jun. 1987
【非特許文献３】T.D. Tran, J. Liang, and C. Tu, "Lapped Transform via Time-Domain Pre- and Post-Filtering", IEEE Trans. on Signal Processing, vol.51, no.6, June 2003
【非特許文献４】W. Dai and T. Tran, "Regularity-constrained pre- and post-filtering for block DCT-based systems," IEEE Trans. on Signal Processing, vol. 51, pp. 2568-2581, Oct. 2003
【非特許文献５】R. Geiger, J. Herre, J. Koller, and K. Brandenburg, "IntMDCT - A link between perceptual and lossless audio coding," in Proc. IEEE Int. Conf. on Acoustics, Speech, and Signal Processing, Orlando, FL, May 2002;
【非特許文献６】J. Li, "Reversible FFT And MDCT Via Matrix Lifting." in Proc. IEEE Conf. on Acoustics, Speech, and Signal Processing, Montreal, Canada, May 2004
【非特許文献７】H. S. Malvar, "Biorthogonal And Nonuniform Lapped Transforms For Transform Coding With Reduced Blocking And Ringing Artifacts," IEEE Trans. on Signal Processing, vol. 46, pp. 1043-1053, Apr. 1998
【非特許文献８】N. Ahmed, T. Natarajan, and K.R. Rao, "Discrete Cosine Transform," IEEE Transactions on Computers, C-23 (January 1974), pp. 90-93
【非特許文献９】"IEEE Standard Specification for the Implementations of 8x8 Inverse Discrete Cosine Transform," IEEE Std. 1180-1990, December 6, 1990
【非特許文献１０】H. Malvar, "Signal Processing with Lapped Transforms," Artech House, Norwood MA, 1992
【非特許文献１１】A. A. M. L. Bruekens and A. W. M. van den Enden, "New networks for perfect inversion and perfect reconstruction", IEEE J. Selected Areas Communications, vol.10, no.1, 1992
【非特許文献１２】I. Daubechies and W. Sweldens, "Factoring wavelet transform into lifting steps", J. Fourier Anal. Appl., vol. 4, pp. 247-269, 1998
【非特許文献１３】J. Liang and T. D. Tran, "Fast Multiplierless Approximations Of The DCT With The Lifting Scheme," IEEE Trans. Signal Processing, vol. 49, pp. 3032-3044, Dec. 2001
【発明の開示】
【発明が解決しようとする課題】
【００２９】
本発明は、重ね合わせ双直交変換のための可逆２次元プリ／ポストフィルタリングを提供する。
【課題を解決するための手段】
【００３０】
本明細書では、整数演算において可逆であり、効率的な損失なしデータ圧縮／伸張システムの基礎として使用され得る、効率的な重ね合わせ変換の様々な実現形態について説明する。
【００３１】
最も効率的な損失なし変換設計（すなわち、変換されたデータの最小限のエントロピを伴うもの）は、変換行列が単位行列式である（すなわち、変換行列の行列式が±１である）ことを必要とすることが示され得る。以下の説明では、変換が行列乗算として表され得ると想定されるが、データの丸めなど、少数の非線形現象があり得ることが認められている。ゆえに、行列式に言及するとき、切り捨てまたは丸めの側面は考察されない。
【００３２】
効率的な重ね合わせ変換は、本明細書で「重ね合わせ演算子」と呼ぶプリフィルタおよびポストフィルタを使って実現される。この実現形態は、可逆であり、しかも非常にＲＤ効率が高い。これらの新しい重ね合わせ演算子は、用途の中でも特に、損失なし画像圧縮に使用され得る、可逆ＬＢＴの実施を可能にする。プリフィルタおよびポストフィルタは、可逆演算を使用する。さらに、前述の重ね合わせ演算子は、計算上の効率のための単純化も含む。
【００３３】
プリおよびポストフィルタリング演算の１つの実現形態は、単位行列式成分行列で構成された１次元可逆重ね合わせ演算子を使用するものである。より詳細には、可逆重ね合わせ演算子は、一連の平面回転変換および単位行列式平面スケーリング変換として実現される。平面スケーリング変換は、平面せん断変形またはリフティングステップを使って実施され得る。さらに、平面回転および平面せん断変形は、可逆／損失なし演算としての実施形態を持ち、結果として、可逆重ね合わせ演算子をもたらす。
【００３４】
１つの適用例は、可逆重ね合わせ演算子の計算上効率のよい近似を使って実現される８×４の１次元重ね合わせ変換におけるものである。
【００３５】
２次元重ね合わせ変換では、この重ね合わせ演算子の１次元実現形態が、ディジタルメディアデータのブロックの水平行に分離可能（ｓｅｐａｒａｂｌｙ）に適用され、その後に１次元演算子がデータの垂直列に適用され得る。この手法にはいくつかの欠点があり、そのうち最も深刻なものは、
１．効率のよいデータ圧縮のための正規化プリ／ポストフィルタを獲得することが困難／ほぼ不可能であること、
２．そのような近似が獲得され得る場合の高度な複雑さ、および
３．そのような近似が実施されるときの複数のフィルタリング／リフティングステップによる不正確さ
である。
【００３６】
本明細書で説明する２次元重ね合わせ変換の代替実施形態は、１次元重ね合わせ演算子を水平と垂直とに分離可能に適用する手法より優れた計算効率を達成する。この代替実施形態は、１次元重ね合わせ演算子を段に区分し、重ね合わせ演算子の水平および垂直適用の段を散在させる。各段内において、リフティングステップで実施される正規化スケーリング演算は、散在型２次元構造における「交差項」の相殺に注目することによって、データブロックのより限定されたサブセット（例えば、４×４データブロックの２×２サブセットまたは信号対など）に適用され得る。この結果、効率のよいスケールなし可逆２Ｄプリ／ポストフィルタが生じる。
【００３７】
２Ｄプリ／ポストフィルタは、Srinivasanによる、「Reversible Transform For Lossy And Lossless 2-D Data Compression」という名称の２００４年１２月１７日出願の米国特許出願第11／015,707号明細書に記載されている効率のよいスケールなし可逆２Ｄブロック変換などの可逆変換と組み合わされ得る。
【００３８】
プリ／ポストフィルタと変換の組み合わせは、損失なしと損失あり両方の、画像およびビデオの効果的で、計算効率のよい圧縮に使用され得る重ね合わせ変換を形成する。
【００３９】
本発明のその他の特徴および利点は、添付の図面を参照して進められる以下の実施形態の詳細な説明を読めば明らかになるであろう。
【発明を実施するための最良の形態】
【００４０】
以下の説明は、重ね合わせ変換のために可逆２次元プリ／ポストフィルタリングを利用する、ディジタルメディア圧縮システムまたはコーデックに関するものである。例として、この２次元プリ／ポストフィルタリングを組み込んだ圧縮システムの一実施形態は、画像またはビデオ圧縮システムである。代替として、可逆重ね合わせ演算子は、他の２Ｄデータの圧縮システムまたはコーデックにも組み込まれ得る。可逆重ね合わせ演算子は、ディジタルメディア圧縮システムが、圧縮されるディジタルメディアデータを特定の符号化形式で符号化することを必要としない。
【００４１】
１．符号器／復号器
図４および５は、可逆重ね合わせ演算子を使用する重ね合わせ変換に基づく代表的な２次元（２Ｄ）データ符号器４００および復号器５００で用いられるプロセスの一般化された図である。これらの図には、２Ｄデータ符号器および復号器を組み込んだ圧縮システムにおけるこの可逆重ね合わせ演算子の使用および適用の一般化され、または単純化された実例が示されている。この可逆重ね合わせ演算子に基づく代替の符号器では、この代表的な符号器および復号器に示すものより多い、または少ないプロセスも２Ｄデータ圧縮に使用され得る。例えば、いくつかの符号器／復号器は、色変換、色形式、拡張可能符号化、損失なしの符号化、マクロブロックモードなども含み得る。圧縮システム（符号器および復号器）は、損失なしから損失ありまで変化する量子化パラメータに基づくものとすることのできる量子化に応じて、２Ｄデータの損失なしおよび／または損失あり圧縮を提供することができる。
【００４２】
２Ｄデータ符号器４００は、符号器に入力として提示される２Ｄデータ４１０の（典型的な入力のための）よりコンパクトな表現である圧縮ビットストリーム４２０を生成する。例えば、２Ｄデータ入力は、画像、ビデオシーケンスのフレーム、または２次元を持つ他のデータとすることができる。２Ｄデータ符号器は、入力データを、この代表的符号器では１６×１６画素のサイズであるタイル状のマクロブロックに分割する４３０。２Ｄデータ符号器は、さらに、各マクロブロックを、タイル状の４×４ブロックに分割する４３２。「順方向重ね合わせ」演算子４４０が、ブロック間の各エッジに適用され、その後、各４×４ブロックがブロック変換４５０を使って変換される。このブロック変換４５０は、２００４年１２月１７日に出願された、Srinivasanによる、「Reversible Transform For Lossy And Lossless 2-D Data Compression」という名称の米国特許出願第１１／０１５７０７号明細書に記載の、可逆のスケールなし２Ｄ変換とすることができる。代替として、離散コサイン変換または他のブロック変換も、本明細書で説明する可逆重ね合わせ演算子と共に使用され得る。この変換の後、各４×４変換ブロックのＤＣ係数４６０は、類似の処理連鎖（タイル状に分割、順方向重ね合わせ、次いで４×４ブロック変換）を施される。結果として生じるＤＣ変換係数およびＡＣ変換係数は量子化され４７０、エントロピ符号化され４８０、パケット化される４９０。
【００４３】
復号器は、逆のプロセスを実行する。復号器側では、変換係数ビットがそれぞれのパケットから抽出され５１０、そこから係数自体が復号化され５２０、逆量子化される５３０。ＤＣ係数５４０は、逆変換を適用することによって再生成され、ＤＣ係数の平面が、ＤＣブロックエッジにまたがって適用される適当な平滑化演算子を使って「逆に重ね合わせ」られる。その後、データ全体が４×４逆変換５５０をＤＣ係数に適用することによって再生成され、ＡＣ係数５４２がビットストリームから復号化される。最後に、結果として生じる画像平面中のブロックエッジが逆重ね合わせフィルタリングされる５６０。これは、復元された２Ｄデータ出力を生成する。
【００４４】
例示的実施形態において、符号器４００（図４）は、入力画像を圧縮ビットストリーム４２０（ファイルなど）に圧縮し、復号器５００（図５）は、損失なしの符号化が用いられるか、それとも損失ありの符号化が用いられるかに基づき、元の入力またはその近似を復元する。符号化のプロセスは、以下で論じる順重ね合わせ変換（ＬＴ）の適用を伴い、これは、やはり以下でより詳細に説明する可逆２次元プリ／ポストフィルタリングを用いて実施される。復号化プロセスは、可逆２次元プリ／ポストフィルタリングを使用する逆重ね合わせ変換（ＩＬＴ）の適用を伴う。
【００４５】
図示のＬＴおよびＩＬＴは、厳密な意味において相互の逆であり、したがって、総称して可逆重ね合わせ変換と呼ばれ得る。可逆変換として、ＬＴ／ＩＬＴ対は、損失なし画像圧縮に使用され得る。
【００４６】
図示の符号器４００／復号器５００によって圧縮される入力データ４１０は、様々な色形式（例えば、ＲＧＢ／ＹＵＶ４：４：４またはＹＵＶ４：２：０色画像形式など）の画像とすることができる。通常、入力画像は、常に、輝度（Ｙ）成分を有する。それがＲＧＢ／ＹＵＶ４：４：４またはＹＵＶ４：２：０画像である場合、その画像は、Ｕ成分およびＶ成分といったクロミナンス成分も有する。画像の別個の色平面または成分は、異なる空間分解能を有し得る。例えば、ＹＵＶ４：２：０色形式の入力画像の場合、ＵおよびＶ成分は、Ｙ成分の半分の幅と高さを有する。
【００４７】
前述のように、符号器４００は、入力画像または写真をマクロブロックにタイル状に分割する。例示的実施形態では、符号器４００は、入力画像をＹチャネルにおいて１６×１６マクロブロックにタイル状に分割する（ＵおよびＶチャネルでは色形式に応じて１６×１６または８×８の領域とすることができる）。各マクロブロック色平面は、４×４の領域またはブロックにタイル状に分割される。したがって、この例示的符号器実施形態では、マクロブロックが、様々な色形式のために次のように構成される。
【００４８】
１．グレースケール画像では、各マクロブロックは、１６個の４×４輝度（Ｙ）ブロックを含む。
２．ＹＵＶ４：２：０形式色画像では、各マクロブロックは、１６個の４×４Ｙブロック、および４個ずつの４×４クロミナンス（ＵおよびＶ）ブロックを含む。
３．ＲＧＢまたはＹＵＶ４：４：４色画像では、各マクロブロックは、１６ブロックずつのＹ、ＵおよびＶチャネルを含む。
【００４９】
２．重ね合わせ演算子を使って実現される重ね合わせ変換
より一般的には、符号器４００（図４）の重ね合わせ演算子４４０およびブロック変換４５０は、図６に示すようにプリフィルタリング演算６１０と、それに続くブロックデータ変換６２０に分解され得る重ね合わせ変換６００の大きなクラスの一例である。図６に、そのような分解された重ね合わせ変換の一般化された例を示す。この図示の事例では、図３に示す６×４重ね合わせ変換３１０が、プリフィルタ演算６１０段とブロック変換６２０段に分解される。プリフィルタリング演算６１０およびブロック変換６２０は、データ点上に均一に交互配置される。この図示の６×４重ね合わせ変換６００の例では、各プリフィルタは、隣接するブロックにまたがるデータ点の長さ２の変換である。復号側では、ポストフィルタ６４０が、ブロック境界にまたがって、逆ブロック変換６３０の後に適用される。同様に、一般的なＫ×Ｎの場合では、プリフィルタは、ブロック境界に隣接する各ブロックの（Ｋ−Ｎ）／２データ点に適用される。
【００５０】
反転可能にするために、プリフィルタ６１０およびポストフィルタ６４０は、相互の逆である。しかしながら、損失なし重ね合わせ変換を実現するには、この条件は不十分である。これは、ブロック（コア）変換６２０が損失なしで実現されるのみならず、さらに、プリフィルタ６１０およびポストフィルタ６４０もまた損失なし変換であることを強いる。ＤＣＴは、特に、はしご型、格子またはリフティングベースの方法を使って、損失なしで実現され得る（例えば、非特許文献１１および１２参照）。また、可逆スケールなし２次元変換についても、２００４年１２月１７日に出願された、Srinivasanによる、「Reversible Transform For Lossy And Lossless 2-D Data Compression」という名称の米国特許出願第１１／０１５７０７号明細書に記載されている。また、１次元におけるＤＣＴへのリフティングベースの可逆近似も知られている（例えば、非特許文献１３参照）。
【００５１】
効率的な可逆性は、さらに、両ステップ、すなわちプリ／ポストフィルタとブロック変換が単位行列式であることも必要とする。
【００５２】
３．可逆重ね合わせ演算子
符号器４００／復号器５００（図４および５）がそれに基づく損失なし重ね合わせ変換６００のプリフィルタ６１０（図６）として使用するための効率的可逆重ね合わせ演算子は、図７に示す構造７００に分解される線形位相プリフィルタとして実現され得る。また、このプリフィルタの逆（すなわち、ポストフィルタ６４０）も、異なる係数を伴うが、同じ構造を持つ。
【００５３】
この線形位相フィルタ構造７００は、その入力および出力における交差アダマールネットワーク７１０を含めて、複数の直交する構成要素を持つ。図示のアダマールネットワーク７１０中の内部矢印は、この図において否定を表す。構造７００は、さらに、直交行列Ｕ１、Ｕ２、Ｖ１およびＶ２を含む。これらの構成要素は、格子／リフティングベースの方法を使用することによって、損失なしで実施され得る。
【００５４】
さらに、構造７００は、非ゼロのスケール係数ｓ１からｓＭを持つ。この単位行列式制約条件は、
【００５５】
【数２】
2006197573.tif 000004
【００５６】
を示唆する。すべてのスケール係数が±１であるとき、プリ／ポストフィルタは、その成分行列Ｕ１、Ｕ２、Ｖ１およびＶ２が損失なし格子／リフティングステップとして実施される損失なし変換として実現され得る。しかしながら、スケール係数がすべてが±１とは限らないとき、損失なしの実現は、以下でより詳細に論じるように対処される課題のままにとどまる。
【００５７】
この線形位相プリフィルタ構造７００を用いれば、損失なしプリ／ポストフィルタ対を実現する問題は、以下の３つのステップに還元される。
【００５８】
１．直交行列Ｕ１、Ｕ２，Ｖ１およびＶ２について、フィルタＦを以下の形に分解するステップ。
【００５９】
【数３】
2006197573.tif 000005
【００６０】
式中、Ｉは単位行列であり、
２．Ｕ１、Ｕ２、Ｖ１およびＶ２の損失なしの実現を導出するステップ。
【００６１】
３．スケーリング行列の損失なしの実現を導出するステップ。
【００６２】
ステップ１に関して、２点アダマール変換を定義する右辺の最初と最後の行列は、これらの段を単位行列式にするために、いくつかの項に因数１／２を組み込んでいる。残りは、それぞれがＦの線形次元の半分の、２つのブロックを持つブロック対角形に再構成される。各ブロックの特異値分解またはＳＶＤは、直交行列Ｕ１、Ｕ２、Ｖ１およびＶ２、ならびにそのスケールを提供する。
【００６３】
成分行列の損失なしの実現は、ステップ２で、（例えば、非特許文献１１に）記載されている標準リフティングベースの技法を使って導出され得る。
【００６４】
ステップ３でのスケーリング行列の損失なしの実現は、以下のように対処される。簡単にするために、（ａ）損失なしであり、（ｂ）第１の構成要素にはｓ（０＜ｓ＜１）による、第２の構成要素には１／ｓによるスケーリングを実現する、ある２入力２出力構成要素を備えるものと仮定する（他の場合は、出力信号の一方または両方の符号を反転することによって獲得され得る）。言い換えると、
【００６５】
【数４】
2006197573.tif 000006
【００６６】
によって与えられる入力／出力関係を持つ。
【００６７】
式（２）における変換行列の行列式はｓ／ｓ＝１である。この行列は、図８および９に示す４リフティングステップ手順８００または５リフティングステップ手順９００で実現され得る。普通は、除算なしの整数実施形態を得るために、リフティングステップすべてを、ｘを入力とし、ｙを出力とし、ａ、ｂおよびｒを整数とし、ｒを丸め誤差制御に使用されるものとする、ｙ＝（ａ．ｘ＋ｒ）＞＞ｂの形で近似する。式（２）によって定義される変換を、本明細書では、単位行列式スケーリング変換と呼び、スケーリング変換と略す。
【００６８】
興味深いことに、スケーリング変換は、以下で定義するように、せん断変形演算と密接に関連している。
【００６９】
【数５】
2006197573.tif 000007
【００７０】
ａ２−ｂ２＝１（ａ＞０，ｂ≧０）という制約条件の下、せん断変形演算は単位行列を持ち、３つのリフティングステップを用いて実現され得る。
【００７１】
【数６】
2006197573.tif 000008
【００７２】
したがって、
【００７３】
【数７】
2006197573.tif 000009
【００７４】
である。
【００７５】
ここで、せん断変形行列を間に挟む行列中のスケーリング係数１／２および２は、せん断変形リフティングステップに分配され、最初の行列の最後のリフティングステップは最初のせん断変形リフティングステップと組み合わされ、最後の行列の最初のリフティングステップは最初のせん断変形リフティングステップと組み合わされる。図９に示すスケーリング変換の手順９００としての５ステップ実現は、式（５）に基づくものである。可能な場合には、式（１）の３グループ、すなわち、アダマールネットワーク、直交行列、およびスケーリング演算の間で逆演算を相殺することによってこの構造の単純化が可能となり得る（これらは、結果として、アダマール演算およびせん断変形演算に分解され得る）。
【００７６】
より具体的には、手順８００の損失なしスケーリングの４リフティングステップ実現の実際の変換行列は、
【００７７】
【数８】
2006197573.tif 000010
【００７８】
であり、式中、ｃ２＝１−ｓ２である。他方、手順９００の５リフティングステップ実現の実際の変換行列は、
【００７９】
【数９】
2006197573.tif 000011
【００８０】
であり、式中、ｃ２＝１−ｓ２である。
【００８１】
図８に示すスケーリング手順８００は図９に示すものより１つ少ないリフティングステップを持つが、後者の手順９００は、前者の４つとは対照的に、３つの非自明なリフティングステップだけしか持たない。前段で述べた理由により、図９の最初または最後の自明のリフティングステップは、一定の条件（例えば、Ｕ１、Ｕ２およびＶ１が単位行列であるときなど）の下で、前の、または後の変換ステップと（例えば、図７のどちらかの端のアダマールネットワーク７１０などと）マージされ得る。
【００８２】
スケーリング手順は、より大きい行列に容易に拡張され得る。これを図１０に示す。図１０では、Ｍ個のおそらく異なるスケール係数ｓ１からｓＭが、スケーリング変換のカスケード１０００としてＭ個のデータパスに適用される。これを可逆に達成するためには、一般に、Ｍ−１回の可逆スケーリング変換が必要とされる。
【００８３】
１つの役に立つ特殊な例が、Ｍ個のスケール係数ｓ１からｓＭが、（ｓ，１／ｓ）の形のＭ／２グループにグループ化され得る場合である。この場合には、Ｍ／２回の可逆スケーリング変換だけでよい。一例が、ｓ１＝ｓ２＝．．．＝ｓＭ／２＝ｓおよびｓＭ／２＋１＝ｓＭ／２＋２＝．．．＝ｓＭ＝１／ｓの場合である。好ましいグループ化のやり方は、中心軸を挟んで対象性を維持するものであり、言い換えると、各グループが、係数ｓｉおよびｓＭ＋１−ｉをスケーリングする。Ｍが奇数である場合、グループ化されない１つのスケール係数は１であり、軸に沿ったデータパスに対応する。
【００８４】
プリ／ポストフィルタが信号の外側に延在する必要のある信号境界上における１つの解決法は、信号を対称的に延長し、次いで、プリ／ポストフィルタを適用するものである。これは、一般に、スケーリングのため、損失なし演算ではない。別の解決法は、境界上におけるプリ／ポストフィルタリングをスキップするものである。これら２つの解決法の間には、（例えば、損失ありの画像／ビデオ圧縮に使用される場合）ＲＤ性能および知覚的品質の点で目立った差異はない。
【００８５】
次に図１１を見ると、次いで、所望のＲＤ効率のよい（すなわち単位行列式の）特性を持つ可逆重ね合わせ演算子が、可逆単位行列式アダマールネットワーク７１０、（成分行列Ｕ１、Ｕ２、Ｖ１およびＶ２での）可逆直交回転１１１０、および（リフティングステップ手順８００、９００またはカスケード１１００などを使った）可逆単位行列式スケーリング１１２０を含む線形位相プリフィルタ構造７００（図７）として実現される。ポストフィルタはプリフィルタに類似し、逆の順序で逆のリフティングステップを用いてではあるが、同じ構成を使って構築される。これは図７に示されており、図中、ブロック中のデータ値Ｍの数は、一般に、任意の自然数である。図は偶数Ｍの場合についてであるが、中央データ値の「１点アダマール」変換がそれ自体であることに留意すれば、奇数値も可能である。この手順は、より高次元のデータに一般化され得る。
【００８６】
要約すると、可逆重ね合わせ演算子の動作は、図１２に示される。第１のステップ１２１０で、入力２次元ディジタルメディアデータが（図４の符号器４００でも示すように）タイル状のブロックに分割される。ステップ１２２０で、可逆重ね合わせ演算子は、アダマールネットワーク７１０を隣接するタイルにまたがって適用する。次いで、ステップ１２３０で、この演算子は、可逆回転を和と差に適用し、その後に、ステップ１２４０の可逆スケーリング演算子が続く。この後に、別の可逆ブロック回転（ステップ１２５０）、可逆逆アダマールネットワーク（ステップ１２６０）が続く。
【００８７】
次に、図１３を参照すると、可逆ブロック回転およびスケーリング演算子の行列表現は、例えば、式（１）に示す演算を使用する所望の重ね合わせ演算子に依存する。図１３には、その前に可逆ブロック変換（この場合は４点アダマール変換）が行われる、図７および図１１に示す構造７００を備えるポストフィルタの一例が示されている。このポストフィルタの伝達関数は、
【００８８】
【数１０】
2006197573.tif 000012
【００８９】
である。
【００９０】
アダマールの低域成分は、図１４のグラフに示すインパルス応答を生み出す。
【００９１】
４．重ね合わせ変換モード
１つの例示的実施形態において、符号器４００および復号器５００は、様々な種類の変換（例えば、本明細書で説明する重ね合わせ変換や、重ね合わせフィルタリングが省かれるモードなど）を使用して複数の圧縮モードをサポートする。符号化のプロセスの間、ユーザによって内部パラメータＯｖｅｒｌａｐＭｏｄｅが供給される。このパラメータは、符号化に使用される変換の種類を決定し、ビットストリームによって復号器に知らされる。例示的実施形態では、ＯｖｅｒｌａｐＭｏｄｅの３つの選択、すなわち、「ＯＬ＿ＮＯＮＥ」、「ＯＬ＿ＯＮＥ」および「ＯＬ＿ＴＷＯ」が可能であり、次のように機能する。
【００９２】
１．ＯＬ＿ＮＯＮＥは、画像を圧縮するのにブロック変換が使用されることを知らせる。
２．ＯＬ＿ＯＮＥは、高域（詳細）画像に重ね合わせ変換が使用され、低域（ＤＣ）画像成分にブロック変換が使用されることを知らせる。
３．ＯＬ＿ＴＷＯは、画像の高域成分と低域成分の両方に重ね合わせ変換が使用されることを知らせる。
【００９３】
他の符号器／復号器実施形態では、より少ない、またはさらに多くの変換モードがサポートされ得る。
【００９４】
例示的実施形態において、重ね合わせ変換は、図１７に示し、以下でより詳細に説明するように、符号器側で、４×４プリフィルタ（順重ね合わせ４４０）の後に４×４ブロック変換４５０が続くものとして実施される。復号器側では、重ね合わせ変換は、図１８に示し、以下でより詳細に説明するように、４×４逆ブロック変換５５０の後に４×４ポストフィルタ（逆重ね合わせ５６０）が続くものとして実施される。ブロック変換だけが使用されるとき（例えば、ＯＬ＿ＮＯＮＥモードや、ＯＬ＿ＯＮＥモード圧縮画像の低域帯の場合など）、プリおよびポストフィルタリングステップは省略される。
【００９５】
ＹＵＶ４：２：０形式の輝度低域色平面の特殊な事例では、フィルタおよび変換ブロックサイズは２×２である。次の説明では、この特殊な事例には２×２ブロックが使用されるという了解の下で、フィルタ／変換サイズを指すのに「４×４」という用語を使用する。
【００９６】
図１５に示すように、この例示的符号器実施形態におけるブロック変換は、未処理の４×４グリッド、すなわち、マクロブロック境界に整列させた４×４タイルの画素配列上で実行される。フィルタリングプロセスは、千鳥配列の４×４グリッド、すなわち、マクロブロック境界から、水平方向と垂直方向の両方に２ずつオフセットさせた４×４タイルの画素配列上で実行される。図１５の図１５００において、１５１０〜１５１３で示す４つのブロックは変換の未処理のグリッドに対応し、中央の影付き（グレー）ブロック１５２０は、そこにプリ／ポストフィルタが適用される領域である。中央ブロックの画素を、重ね合わせ演算子のための「サポート」と呼ぶ。図１６に、２×２の特殊な事例での変換および重ね合わせ演算子の整列１６００を示す。
【００９７】
例示的実施形態で使用され、４×４ブロックのそれぞれに適用されるブロック変換を、本明細書では「コア」変換と呼ぶ。このコア変換は、２００４年１２月１７日に出願された、Srinivasanによる、「Reversible Transform For Lossy And Lossless 2-D Data Compression」という名称の米国特許出願第１１／０１５７０７号明細書に記載されており、以下の「コア変換」という表題の項でも論じる可逆近似４×４ＤＣＴを実施する。コア変換の後、ブロックは、（図４に示すように）１ＤＣ係数４６０および１５ＡＣ係数４６２の係数ブロックにマップされる。
【００９８】
プリ／ポストフィルタ（図４の順重ね合わせ４４０、および図５の逆重ね合わせ５６０）は、コア変換と一緒に組み合わされて、本明細書で重ね合わせ演算子ともいう、重ね合わせ変換を実施する。
【００９９】
符号器４００（図４）によってコア変換４５０が適用された後、画像の全ブロックのＤＣ係数４６０が集められてＤＣサブバンドを形成する。このＤＣサブバンドにコア変換の第２段が適用される。ＯｖｅｒｌａｐＭｏｄｅ＝ＯＬ＿ＴＷＯである場合、第２段のコア変換の直前に第２段の重ね合わせ演算子も適用される。画像が、ＹＵＶ＿４４４画像のＹ成分、あるいはＵまたはＶ成分である場合、ＤＣサブバンド４６０は４×４ブロックにタイル状に分割され、第１段と同じ４×４ＰＣＴおよび４×４ＰＬＯが使用される。しかしながら、画像がＹＵＶ４：２：０画像のＵまたはＶ成分である場合、ＤＣサブバンドは、そうではなく、２×２ブロックにタイル状に分割される。したがって、２×２ＰＣＴおよび２×２ＰＬＯが使用される。図１６に、隣接する２×２ブロック１６１０〜１６１３にもまたがる、２×２重ね合わせ演算子の２×２サポート１６２０を示す。
【０１００】
図１５を参照すると、画像の隅では、重ね合わせ演算子がまたがる４ブロックのうち１つだけが利用可能である。これらは、左上隅のブロック３、右上のブロック１、左下のブロック２、および右下のブロック０である。これらの場合、４×４または２×２重ね合わせ演算子はスキップされる。
【０１０１】
４隅以外の画像境界上では、重ね合わせ演算子１５２０がまたがる４ブロックのうち２つが利用可能である。これらの領域では、１次元演算子だけしか必要とされない。したがって、４×４重ね合わせ演算子は、１Ｄ４点重ね合わせ演算子の２つのインスタンスで置き換えられる（２×２重ね合わせ演算子についても同様である）。
【０１０２】
具体的には（図１５に関して）以下の４つの場合がある。
【０１０３】
サポート１５２０、１６２０は、上側画像境界にまたがる（ブロック０および２は利用不能であり、ブロック１および３は利用可能である）。すなわち、４点重ね合わせ演算子が点（ｉ、ｊ、ｋ、ｌ）および点（ｍ、ｎ、ｏ、ｐ）に適用され、または２点重ね合わせ演算子が点（ｃ、ｄ）に適用される。
【０１０４】
サポート１５２０、１６２０は下側画像境界にまたがる（ブロック１および３は利用不能であり、ブロック０および２は利用可能である）。すなわち、４点重ね合わせ演算子が点（ａ、ｂ、ｃ、ｄ）および点（ｅ、ｆ、ｇ、ｈ）に適用され、または２点重ね合わせ演算子が点（ａ、ｂ）に適用される。
【０１０５】
サポート１５２０、１６２０は左側画像境界にまたがる（ブロック０および１は利用不能であり、ブロック２および３は利用可能である）。すなわち、４点重ね合わせ演算子が点（ｃ、ｇ、ｋ、ｏ）および点（ｄ、ｈ、ｌ、ｐ）に適用され、または２点重ね合わせ演算子が点（ｂ、ｄ）に適用される。
【０１０６】
サポート１５２０、１６２０は右側画像境界にまたがる（ブロック２および３は利用不能であり、ブロック０および１は利用可能である）。すなわち、４点重ね合わせ演算子が点（ａ、ｅ、ｉ、ｍ）および点（ｂ、ｆ、ｊ、ｎ）に適用され、または２点重ね合わせ演算子が点（ａ、ｃ）に適用される。
【０１０７】
したがって、符号器４００（図４）の例示的実施形態の符号化プロセス１７００（図１７）で利用される重ね合わせ変換は、２×２コア変換、４×４コア変換、２×２重ね合わせ演算子、４×４重ね合わせ演算子、２点重ね合わせ演算子、および４点重ね合わせ演算子を伴う。復号器５００（図５）によって利用される復号化プロセス１８００（図１８）は、そのプロセスを損失なしで逆転させる。逆コア変換は符号器のコア変換の完全な逆であり、逆重ね合わせ演算子は符号器の重ね合わせ演算子の完全な逆である。１次元４点重ね合わせ演算子については、前述の「可逆重ね合わせ演算子」という表題の項で説明されている。次に、２次元重ね合わせ演算子について説明する。
【０１０８】
５．２次元プリ／ポストフィルタリング
一手法において、２次元プリ／ポストフィルタリング４４０（図４）のための４×４重ね合わせ演算子は、（前述の「可逆重ね合わせ演算子」という表題の項でも説明されている）図１９の４点重ね合わせ演算子１９００を、４×４重ね合わせ演算子サポート１５２０（図１５）に、水平と垂直とに分離可能に適用することによって実施され得る。この４×４重ね合わせ演算子の分離可能手法の実施形態２０００を図２０に示す。より詳細には、この手法は、１次元４点重ね合わせ演算子を、４×４重ね合わせ演算子サポート１５２０の垂直列（すなわち、列ａ、ｅ、ｉ、ｍ、列ｂ、ｆ、ｊ、ｎ、列ｃ、ｇ、ｋ、ｏ、および列ｄ、ｈ、ｌ、ｐ）に適用し、続いて１次元４点重ね合わせ演算子を水平行（すなわち、行ａ、ｂ、ｃ、ｄ、行ｅ、ｆ、ｇ、ｈ、行ｉ、ｊ、ｋ、ｌ、および行ｍ、ｎ、ｏ、ｐ）に適用する。しかしながら、この手法２０００には、前述の発明の開示の項で要約したようにいくつかの欠点がある。
【０１０９】
本明細書で説明する符号器４００／復号器５００の例示的実施形態では、これらの欠点に対処する２次元プリ／ポストフィルタリング（順重ね合わせ４４０および逆重ね合わせ５６０）を実施する別の手法を使用する。この別の手法２１００（図２１）は、分離可能手法の水平および垂直フィルタからの演算を複数の段に散在させる。さらに、これらの演算は、図２４、２９および３０に示すような、正規化スケールなし、および可逆「バタフライ」実現形態を有する２×２変換を形成するようにグループ化される。さらに、前述の「可逆重ね合わせ演算子」という表題の項で説明されているリフティングステップで実施される正規化スケーリング演算は、散在型２次元構造における「交差項」の相殺に注目することによって、より限定された信号対のセットに適用され得る。この結果として、効率のよいスケールなし可逆２次元ブロック変換と共に、損失なしと損失あり両方の、画像およびビデオの効果的で、計算効率のよい圧縮のために符号器／復号器で使用され得る重ね合わせ変換を提供する、効率のよいスケールなし可逆２次元プリ／ポストフィルタがもたらされる。
【０１１０】
図２１に示すように、１つの例示的実施形態におけるこの第２の手法は、プリ／ポストフィルタの垂直および水平演算を３つの段に散在させる。各段内で、それらの演算は、さらに、４×４データブロックの４点の別個のグループ上での基本２×２演算に再構成される。
【０１１１】
より詳細には、プリ／ポストフィルタの最初の段、ならびに最後の段は、正規化２点アダマールバタフライとして実現される。この段での垂直および水平演算は、４×４データブロックにおいて４点のグループに別個に適用される、図２２に示すプログラムリスト２２００で定義されるような（２００４年１２月１７日に出願された、Srinivasanによる、「Reversible Transform For Lossy And Lossless 2-D Data Compression」という名称の米国特許出願第１１／０１５７０７号明細書に記載されているＴＨ変換である）２×２正規化アダマール演算に再構成される。この２×２正規化アダマール演算は、図２３に示すような２×２入力行列（点ａ、ｂ、ｃおよびｄ）２３００に適用される。図２３および本明細書の残りの部分では、影付けを使用してデータ点（同様に、画素または行列要素）と処理ステップの間の対応を表す。入力行列［ａｂ；ｃｄ］に適用される基本２×２演算は、図２３に示すように、所定位置で計算される。
【０１１２】
次いで、散在型手法２１００（図２１）における段１および段３演算が、データブロック中の４つの別個の４点グループ２４００（図２４）、すなわち、隅の４点２４１０、中央の４点２４２０、上下端の４点２４３０、および左右端の４点２４４０への、この２×２正規化アダマール演算２２００（図２２）の適用に再構成され得る。
【０１１３】
他方、段２演算は、２つのステップを含み、その第１は（図２１に表す）回転であり、その第２は（図２１には示さない）スケーリングである。これら２つのステップの順序は重要ではないが、一貫性を保つために、すべてのコーデックによって同じ順序が維持されなければならず、それらの逆重ね合わせ変換に対する重ね合わせ変換での順序は逆である。
【０１１４】
回転ステップも、やはり、演算を別個の２×２変換に再構成することによって実施される。１次元の場合には低域項は通過であるため（図１９の重ね合わせ演算子１９００の点ｘ０およびｘ１）、２次元における低／低点（すなわち両方向における低域）もやはり通過であり（すなわちこの段ではフィルタリングされない）。これは、図２９の左上２×２サブブロック２９１０に対応する。
【０１１５】
高／高項２９２０（図２９）は、２００４年１２月１７日に出願された、Srinivasanによる、「Reversible Transform For Lossy And Lossless 2-D Data Compression」という名称の米国特許出願第１１／０１５７０７号明細書に記載されているＴｏｄｄ‐ｏｄｄ変換である、効率のよい２×２正規化可逆回転演算２５００を用いて実施される。このＴｏｄｄ‐ｏｄｄ変換は、図２５に示すＣプログラミング言語のリスト２５００で実施され得る。全体のバイアスを最小限に抑えるために、非自明リフティングステップにおけるオフセット（すなわち、３逓倍を伴うもの）が選択される。ポストフィルタでのこの変換の逆は、図２６に示すＣプログラミング言語のリストで実施され得る。
【０１１６】
高／低および低／高の項２９３０（図２９）は、他方の次元の演算が通過であるために、１次元フィルタリングだけを伴う。これらは、図２７に示す、Ｃプログラミング言語のリスト２７００で定義される２点回転を用いて実施される。ポストフィルタでの逆演算は、図２８のＣプログラミング言語のリスト２８００で実施される。これらの２点回転は、実際にうまく機能する、２つの計算上自明なリフティングステップを伴う簡単な近似である。代替として、他の近似も使用され得る。この２点回転は、図２９の影付き部分で示すように、高／低および低／高の項２９３０に、４セットの２点演算として適用される。
【０１１７】
段２のスケーリングステップで、１次元４点重ね合わせ演算子１９００（図１９）は、［ｆ  ｆ  １／ｆ  １／ｆ］で４点をスケーリングすることを含む。２次元の場合には、スケーリングステップは、［ｆ  ｆ  １／ｆ  １／ｆ］とそれ自体との外積を実現する。結果として生じるスケーリング行列は以下の通りである。
【０１１８】
【数１１】
2006197573.tif 000013
【０１１９】
行列エントリの半分は１であり、したがって、これらの点は単に通過されるだけである。残りのエントリは、行列の中心の周りでの２点演算で対称的に組み合わされる（すなわち、図３０の影付き部分で示す対３０１０、３０２０、３０３０および３０４０）。対称性が必要とされるのは、最良レートひずみ性能を散在型手法２１００（図２１）の段１および３とマッチさせるためである。各対に適用される２点スケーリング演算自体は、図３１に示す、Ｃプログラミング言語のリスト３１００で実施される。ポストフィルタのための逆２点スケーリング演算を、図３２のリスト３２００に示す。代替として、２点スケーリングプロセスには他の近似も可能である。さらに、スケーリングプロセスは、段１または段３の２×２アダマール演算の末端の演算間での相殺に注目して、それらと組み合わせることもできる。
【０１２０】
図３３に、図２１に示す散在型手法２１００を使用する完全な４×４重ね合わせ演算子のプログラムリスト３３００を示す。図１７および１８に示す、符号器４００／復号器５００の例示的実施形態で前述したように、４×４重ね合わせ演算子は、ＯＬ＿ＯＮＥが真である場合、画像の隅でも境界でもない部分に適用される。ＯＬ＿ＴＷＯが真である場合、４×４重ね合わせ演算子は、それがＹＵＶ４：２：０画像のＵまたはＶ成分でない場合には、やはり、画像のＤＣサブバンドの隅でも境界でもない部分に適用される。異なる近似または（特にスケーリングとアダマールの間での）マージされるステップを用いる、他の代替実現形態も可能である。
【０１２１】
前述の図１５に示すように、４×４重ね合わせ演算子は、以下の入力データブロックとして表され得る重ね合わせ演算子サポートに適用される。
【０１２２】
【数１２】
2006197573.tif 000014
【０１２３】
その場合、４×４順重ね合わせ演算子は、このプログラムリストでは、関数ＰＬＯ４×４（ａ，ｂ，ｃ，ｄ，ｅ，ｆ，ｇ，ｈ，ｉ，ｊ，ｋ，ｌ，ｍ，ｎ，ｏ，ｐ）として定義される。前述のように、この関数は、２×２アダマール演算２２００（図２２）、順スケーリング３１００（図３１）、２点回転２７００（図２７）、および順奇／奇変換２５００（図２５）を、３段で、図２４、２９および３０に示す入力ブロックの点のサブグループに適用することを含む。
【０１２４】
図３４に、やはり、散在型手法を使用する逆４×４重ね合わせ演算子の実施形態のプログラムリスト３４００を示す。逆４×４重ね合わせ演算子の入力係数ブロックがブロック
【０１２５】
【数１３】
2006197573.tif 000015
【０１２６】
である場合、この演算子は、このプログラムリストでは、ＩＰＬＯ４×４（ａ，ｂ，ｃ，ｄ，ｅ，ｆ，ｇ，ｈ，ｉ，ｊ，ｋ，ｌ，ｍ，ｎ，ｏ，ｐ）として定義される。逆４×４重ね合わせ演算子は、（それ自体の逆である）２×２アダマール演算２２００（図２２）、逆奇／奇変換２６００（図２６）、逆２点回転２８００（図２８）、および逆スケーリング３２００（図３２）を、やはり３段で、図２４、２９および３０に示す係数ブロックの点のサブグループに適用することを含む。
【０１２７】
前述の特殊な事例として、図１７および１８に示す、符号器／復号器の例示的実施形態は、２×２プリ／ポストフィルタリング演算も適用する。図３５に、２×２プリフィルタリングのプログラムリスト３５００を示す。２×２プリ／ポストフィルタリングは、段２で回転がないことを除いて、４×４プリ／ポストフィルタリングと同様である。したがって、２×２プリフィルタリングは、段２の回転ステップが除去された前述の４×４の事例として実現され得る。図３６に、２×２ポストフィルタリングを実施するプログラムリスト３６００を示す。
【０１２８】
図１７および１８に示す、符号器／復号器の例示的実施形態では、２Ｄフィルタリングステップには不十分な画素しかない画像端に沿って、１次元に沿ったフィルタリングも必要である。１Ｄフィルタは、正規化された損失なしリフティング実現のためのショートカットがないために、対応する２Ｄフィルタよりも複雑になり得る。１Ｄプリ／ポストフィルタリングの実施形態は、前述の「可逆重ね合わせ演算子」という表題の項で論じられている。
【０１２９】
図３７に、ＯＬ＿ＴＷＯが真である場合に、図１７および１８の符号器／復号器の例示的実施形態において、ＹＵＶ４：２：０画像のＵおよびＶ成分のＤＣサブバンドの境界に適用される、１次元２点重ね合わせ演算子の（Ｃプログラミング言語の）プログラムリスト３７００を示す。図３８に、１次元逆２点重ね合わせ演算子のプログラムリスト３８００を示す。
【０１３０】
また、図１７および１８の符号器／復号器の例示的実施形態は、ＯＬ＿ＯＮＥが真である場合、画像の境界に４点重ね合わせ演算子も適用する。ＯＬ＿ＴＷＯが真である場合、それがＹＵＶ４：２：０画像のＵまたはＶ成分でなければ、画像のＤＣサブバンドの境界には４点重ね合わせ演算子も適用される。その場合、［ａｂｃｄ］として配列された入力データでの１次元４点順重ね合わせ演算子が、図３９に示す（Ｃプログラミング言語の）プログラムリスト３９００で、関数ＰＬＯ４（ａ，ｂ，ｃ，ｄ）として定義される。図４０に示すプログラムリスト４０００は、入力係数［ａｂｃｄ］に対する４点逆重ね合わせ演算子を定義する関数ＩＰＬＯ（ａ，ｂ，ｃ，ｄ）を含む。
【０１３１】
６．コア変換
前述のように、符号器／復号器の例示的実施形態は、前述の重ね合わせ演算子と、２００４年１２月１７日に出願された、Srinivasanによる、「Reversible Transform For Lossy And Lossless 2-D Data Compression」という名称の米国特許出願第１１／０１５７０７号明細書に記載されている可逆近似４×４ＤＣＴとの組み合わせである重ね合わせ変換を実施する。この例示的実施形態の図１７の符号化プロセス１７００および図１８の復号化プロセス１８００で示すように、符号器／復号器は、２×２コア変換、２×２逆コア変換、４×４コア変換および４×４逆コア変換を使用する。これらの変換の実施形態は、以下で論じる、図４１〜４６に示す（Ｃプログラミング言語の）プログラムリストで定義される。
【０１３２】
２×２入力ブロック
【０１３３】
【数１４】
2006197573.tif 000016
【０１３４】
に対する２×２順コア変換は、次の２ステップで実施され得る。
１．図２２のアダマール２×２（ａ，ｂ，ｃ，ｄ）関数２２００を適用する。
２．点ｂと点ｃを交換する。
【０１３５】
いくつかの実施形態では、ステップ２は、量子化またはジグザグスキャンと組み合わされ得る。
【０１３６】
２×２係数ブロック
【０１３７】
【数１５】
2006197573.tif 000017
【０１３８】
に対する２×２逆コア変換は、次の２ステップで実施され得る。
１．点ｂと点ｃを交換する。
２．アダマール２×２（ａ，ｂ，ｃ，ｄ）関数２２００（図２２）を適用する。
【０１３９】
いくつかの実施形態では、ステップ１は、逆量子化または逆ジグザグスキャンと組み合わされ得る。
【０１４０】
４×４入力データブロック
【０１４１】
【数１６】
2006197573.tif 000018
【０１４２】
に適用される４×４順コア変換は、次の２ステップで実施され得る。
【０１４３】
１．図４１に示す関数４１００、ＰＣＴ４×４（ａ，ｂ，ｃ，ｄ，ｅ，ｆ，ｇ，ｈ，ｉ，ｊ，ｋ，ｌ，ｍ，ｎ，ｏ，ｐ）を適用する。４×４重ね合わせ演算子と同様に、この関数は、演算が、データブロックの点のサブグループに対する２×２演算にさらに構成される散在型手法を使用する。これらの２×２演算は、図４２に示す関数４２００で実施される奇変換、および図４３に示す関数４３００で実施される奇／奇変換を含む。回転を実施するための、より多い、またはより少ないリフティングステップに基づく他の近似も可能である。
２．データブロックを、
【０１４４】
【数１７】
2006197573.tif 000019
【０１４５】
から
【０１４６】
【数１８】
2006197573.tif 000020
【０１４７】
に入れ替える。これは、量子化／ジグザグスキャンと組み合わされ得る。
【０１４８】
４×４入力係数ブロック
【０１４９】
【数１９】
2006197573.tif 000021
【０１５０】
に対する４×４逆コア変換は、次の２ステップで実施され得る。
【０１５１】
１．係数ブロックを、
【０１５２】
【数２０】
2006197573.tif 000022
【０１５３】
から
【０１５４】
【数２１】
2006197573.tif 000023
【０１５５】
に入れ替える。これは、逆量子化／逆ジグザグスキャンと組み合わされ得る。
【０１５６】
２．関数４１００、ＰＣＴ４×４の逆である、図４４に示す関数４４００、ＩＰＣＴ４×４（ａ，ｂ，ｃ，ｄ，ｅ，ｆ，ｇ，ｈ，ｉ，ｊ，ｋ，ｌ，ｍ，ｎ，ｏ，ｐ）を適用する。関数４４００は、２×２変換、すなわち、図４５に示す関数４５００によって実施される逆奇変換、および図４６に示す関数４６００によって定義される逆奇／奇変換を含む。
【０１５７】
７．コンピューティング環境
４×４プリ／ポストフィルタリングを使用する重ね合わせ変換に基づく前述のコーデックは、特に、コンピュータ、画像／ビデオ記録、送信および受信装置、携帯用ビデオプレーヤ、テレビ会議などを含む、ディジタルメディア信号処理が行われる様々な装置のいずれかで実行され得る。このディジタルメディア符号化技法は、図４７に示すようなコンピュータまたは他のコンピューティング環境内で、ディジタルメディア処理ソフトウェアとしてのみならず、ハードウェア回路としても実施され得る。
【０１５８】
図４７には、前述の実施形態が実施され得る適当なコンピューティング環境（４７００）の一般的な例が示されている。コンピューティング環境（４７００）は、本発明の用途または機能の範囲に関するどんな限定を示唆するためのものでもない。というのは、本発明は、多種多様な汎用または専用コンピューティング環境で実施され得るからである。
【０１５９】
図４７を参照すると、コンピューティング環境（４７００）は、少なくとも１つの処理装置（４７１０）およびメモリ（４７２０）を含む。図４７では、この最も基本的な構成（４７３０）が破線内に含まれる。処理装置（４７１０）は、コンピュータ実行可能命令を実行し、実プロセッサとすることも、仮想プロセッサとすることもできる。多重処理システムにおいては、処理能力を増大させるために、複数の処理装置がコンピュータ実行可能命令を実行する。メモリ（４７２０）は、揮発性メモリ（レジスタ、キャッシュ、ＲＡＭなど）、不揮発性メモリ（ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリなど）、またはこれら２つの何らかの組み合わせとすることができる。メモリ（４７２０）は、前述の符号器／復号器および変換を実施するソフトウェア（４７８０）を格納する。
【０１６０】
コンピューティング環境は、追加の機構を備え得る。例えば、コンピューティング環境（４７００）は、記憶（４７４０）、１つまたは複数の入力装置（４７５０）、１つまたは複数の出力装置（４７６０）、および１つまたは複数の通信接続（４７７０）を含む。バス、コントローラ、ネットワークなどの相互接続機構（図示せず）が、コンピューティング環境（４７００）の構成要素を相互接続する。通常は、オペレーティングシステムソフトウェア（図示せず）が、コンピューティング環境（４７００）で実行される他のソフトウェアのための動作環境を提供し、コンピューティング環境（４７００）の構成要素のアクティビティを調整する。
【０１６１】
記憶（４７４０）は、着脱式でも固定式でもよく、これには、磁気ディスク、磁気テープまたはカセット、ＣＤ−ＲＯＭ、ＣＤ−ＲＷ、ＤＶＤ、または情報を格納するのに使用され、コンピューティング環境（４７００）内でアクセスされ得る他の任意の媒体が含まれる。記憶（４７４０）は、４×４プリ／ポストフィルタリングを使用する重ね合わせ変換に基づくコーデックを実施するソフトウェア（４７８０）の命令を格納する。
【０１６２】
入力装置（４７５０）は、キーボード、マウス、ペン、トラックボールなどのタッチ入力装置、音声入力装置、スキャン装置、またはコンピューティング環境（４７００）への入力を提供する別の装置とすることができる。オーディオでは、入力装置（４７５０）は、アナログまたはディジタル形式でオーディオ入力を受け入れるサウンドカードまたは類似の装置、あるいはコンピューティング環境にオーディオサンプルを提供するＣＤ−ＲＯＭリーダとすることができる。出力装置（４７６０）は、ディスプレイ、プリンタ、スピーカ、ＣＤライタ、またはコンピューティング環境（４７００）からの出力を提供する別の装置とすることができる。
【０１６３】
通信接続（４７７０）は、通信媒体を介した別のコンピューティングエンティティへの通信を可能にする。通信媒体は、コンピュータ実行可能命令、圧縮オーディオまたはビデオ情報、その他のデータなどの情報を変調データ信号として伝達する。変調データ信号とは、その特性の１つまたは複数が、その信号に情報を符号化するような方式で設定または変更されている信号である。例をあげると、それだけに限らないが、通信媒体には、電気、光、ＲＦ、赤外線、音響またはその他の搬送波を用いて実施される有線または無線技法が含まれる。
【０１６４】
本明細書のディジタルメディア処理技法は、コンピュータ可読媒体の一般的状況で説明され得る。コンピュータ可読媒体は、コンピューティング環境内でアクセスされ得る任意の利用可能な媒体である。例をあげると、それだけに限らないが、コンピューティング環境（４７００）で、コンピュータ可読媒体には、メモリ（４７２０）、記憶（４７４０）、通信媒体、およびそれらのいずれかの組み合わせが含まれる。
【０１６５】
本明細書のディジタルメディア処理技法は、コンピューティング環境においてターゲット実／仮想プロセッサ上で実行される、プログラムモジュールに含まれるものなどのコンピュータ実行可能命令の一般的状況で説明され得る。一般に、プログラムモジュールには、個々のタスクを実行し、または個々の抽象データ型を実施する、ルーチン、プログラム、ライブラリ、オブジェクト、クラス、コンポーネント、データ構造などが含まれる。プログラムモジュールの機能は、様々な実施形態において所望に応じて組み合わされ、またはプログラムモジュール間で分割され得る。プログラムモジュールのコンピュータ実行可能命令は、ローカルまたは分散コンピューティング環境内で実行され得る。
【０１６６】
表現のために、詳細な説明では、「決定する」、「生成する」、「調整する」、および「適用する」のような用語を使ってコンピューティング環境でのコンピュータ動作を説明している。これらの用語は、コンピュータによって実行される動作の高度な抽象化であり、人間によって行われる行為と混同すべきではない。これらの用語に対応する実際のコンピュータ動作は、実施に応じて異なる。
【０１６７】
４．可逆重ね合わせ演算子の変形および拡張
前述の可逆重ね合わせ演算子の様々な変更および拡張が行われ得る。前述の説明は１次元データでのものであるが、同じ手順は、複数のデータ次元に分離可能に、または分離不能に適用され得る。
【０１６８】
前述の可逆重ね合わせ演算子実施における直交回転は、その近似によって、または直交しないことのある他の変換によって置換される。
【０１６９】
さらに、前述の説明では入力データの損失なし回復に主要な焦点が置かれているが、同じ変換は、損失ありデータ圧縮にも使用され得る。この場合、損失は、量子化プロセスにおいて、あるいはプリフィルタまたはポストフィルタの限られた精度／近似実施が原因で、あるいは他の誤り、もしくは複数の要因の組み合わせが原因で発生し得る。
【０１７０】
本明細書で述べた可逆重ね合わせ演算子は、データ圧縮以外の領域にも適用され得る。可逆重ね合わせ演算子を使用する重ね合わせ変換は、それ自体、拡張的であり得る。
【０１７１】
可逆重ね合わせ演算子は、適切に変更された形で、マルチレートフィルタバンク、ウェーブレット、２を上回るブロック幅にまたがる（Ｋ＞２Ｎ）サポートを有する重ね合わせ変換を実施するために適用され得る。
【０１７２】
可逆重ね合わせ演算子は、重ね合わせフィルタの大きさおよび形状がデータの空間的大きさによって異なり得る、空間的に変化する方式で適用され得る。
【０１７３】
本発明の原理が適用され得る多くの可能な実施形態を考慮して、発明者らは、以下の特許請求の範囲およびその均等物の範囲および精神の内に含まれ得るそのようなすべての実施形態を本発明として特許請求するものである。
【図面の簡単な説明】
【０１７４】
【図１】従来技術における従来方式のブロック変換ベースのコーデックを示すブロック図である。
【図２】やはり従来技術における、図１のブロック変換ベースのコーデックと組み合わせた前処理および後処理演算として実施される空間領域重ね合わせ変換を示すブロック図である。
【図３】１次元データの重ね合わせ変換と逆重ね合わせ変換の対を示すブロック図である。
【図４】可逆重ね合わせ演算子を利用する重ね合わせ変換に基づく符号器を示す流れ図である。
【図５】重ね合わせ変換に基づく復号器を示す流れ図である。
【図６】プリフィルタリングおよびポストフィルタリング演算（または可逆重ね合わせ演算子）をブロック変換と併用する１次元データの重ね合わせ変換と逆重ね合わせ変換の対を示すブロック図である。
【図７】図６の重ね合わせ変換で可逆重ね合わせ演算子として使用するための線形位相プリ（またはポスト）フィルタの構造を示すシグナルフローグラフである。
【図８】可逆重ね合わせ演算子で使用するための４つのリフティングステップとしての損失なしスケーリングを示すシグナルフローグラフである。
【図９】可逆重ね合わせ演算子で使用するための５つのリフティングステップとしての損失なしスケーリングを示すシグナルフローグラフである。
【図１０】損失なし単位行列式スケーリングを実現するためにより大きい次元の行列に適用される２点スケーリングのカスケードを示すシグナルフローグラフである。
【図１１】図７に示す構造を持ち、図１０の損失なし単位行列式スケーリングを使用する可逆重ね合わせ演算子（またはプリ／ポストフィルタ）を示すシグナルフローグラフである。
【図１２】図１１の可逆重ね合わせ演算子の動作を示す流れ図である。
【図１３】図１１の可逆重ね合わせ演算子を使用する可逆重ね合わせ変換実施形態の一例を示すシグナルフローグラフである。
【図１４】図１３の例示的重ね合わせ変換のＤＣ係数を示すインパルス応答グラフである。
【図１５】４×４サイズブロックでの２次元重ね合わせ演算子のサポートとして使用される画素を示す図である。
【図１６】２×２サイズブロックでの２次元重ね合わせ演算子のサポートとして使用される画素を示す図である。
【図１７】図４の符号器によって符号器側で適用される変換を示す流れ図である。
【図１８】図５の復号器によって復号器側で適用される変換を示す流れ図である。
【図１９】図１１に示す１次元可逆重ね合わせ演算子の正規表現を提供するシグナルフローグラフである。
【図２０】図１９の１次元可逆重ね合わせ演算子を水平と垂直とに分離可能に適用することによって実施される重ね合わせ変換のための２次元プリ／ポストフィルタを示すシグナルフローグラフである。
【図２１】２次元フィルタの水平および垂直演算を段にインターリーブすることによって実施される重ね合わせ変換のための２次元プリ／ポストフィルタを示すシグナルフローグラフである。
【図２２】図２１の２次元プリ／ポストフィルタの一部を形成する正規化２×２アダマール演算子を実現する、Ｃプログラミング言語でリストされたプログラムである。
【図２３】２×２プリ／ポストフィルタを用いて処理されるデータ点間の対応を示す図である。
【図２４】２×２アダマール演算子が、図２１の４×４の２次元プリ／ポストフィルタの実施形態の第１段でそこに適用される、４×４データブロックのデータ点を示す図である。
【図２５】図２１の２次元プリフィルタの一部を形成する順回転を実現する、Ｃプログラミング言語でリストされたプログラムである。
【図２６】図２１の２次元ポストフィルタの一部を形成する逆回転を実現する、Ｃプログラミング言語でリストされたプログラムである。
【図２７】図２１の２次元プリフィルタの一部を形成する順２点回転を実現する、Ｃプログラミング言語でリストされたプログラムである。
【図２８】図２１の２次元ポストフィルタの一部を形成する逆２点回転を実現する、Ｃプログラミング言語でリストされたプログラムである。
【図２９】図２５〜２８の回転が、図２１の４×４の２次元プリ／ポストフィルタの実施形態の別の段でそこに適用される、４×４データブロックのデータ点を示す図である。
【図３０】２点スケーリング演算が、図２１の４×４の２次元プリ／ポストフィルタの実施形態のさらに別の段でそこに適用される、４×４データブロックのデータ点を示す図である。
【図３１】図２１の２次元プリフィルタの一部を形成する順スケーリングを実現する、Ｃプログラミング言語でリストされたプログラムである。
【図３２】図２１の２次元ポストフィルタの一部を形成する逆スケーリングを実現する、Ｃプログラミング言語でリストされたプログラムである。
【図３３】図２１の２次元４×４プリフィルタを実現する、Ｃプログラミング言語でリストされたプログラムである。
【図３４】図２１の２次元４×４ポストフィルタを実現する、Ｃプログラミング言語でリストされたプログラムである。
【図３５】２次元２×２プリフィルタを実現する、Ｃプログラミング言語でリストされたプログラムである。
【図３６】２次元２×２ポストフィルタを実現する、Ｃプログラミング言語でリストされたプログラムである。
【図３７】図３５の２次元プリフィルタには不十分なデータ点を有する画像端において適用するための１次元２点プリフィルタを実現する、Ｃプログラミング言語でリストされたプログラムである。
【図３８】図３６の２次元ポストフィルタには不十分なデータ点を有する画像端において適用するための１次元２点ポストフィルタを実現する、Ｃプログラミング言語でリストされたプログラムである。
【図３９】図３３の２次元プリフィルタには不十分なデータ点を有する画像端において適用するための１次元４点プリフィルタを実現する、Ｃプログラミング言語でリストされたプログラムである。
【図４０】図３４の２次元ポストフィルタには不十分なデータ点を有する画像端において適用するための１次元４点ポストフィルタを実現する、Ｃプログラミング言語でリストされたプログラムである。
【図４１】図２１のプリフィルタと組み合わせて図４の符号器において重ね合わせ変換を実施するのに使用される順変換を実現する、Ｃプログラミング言語でリストされたプログラムである。
【図４２】図４１の順変換の一部を形成する変換を実現する、Ｃプログラミング言語でリストされたプログラムである。
【図４３】図４１の順変換の一部を形成する別の変換を実現する、Ｃプログラミング言語でリストされたプログラムである。
【図４４】図２１のポストフィルタと組み合わせて図５の復号器において逆重ね合わせ変換を実施するのに使用される逆変換を実現する、Ｃプログラミング言語でリストされたプログラムである。
【図４５】図４４の逆変換の一部を形成する変換を実現する、Ｃプログラミング言語でリストされたプログラムである。
【図４６】図４４の逆変換の一部を形成する別の変換を実現する、Ｃプログラミング言語でリストされたプログラムである。
【図４７】図４および５の改善された空間領域重ね合わせ変換を用いたブロック変換ベースのコーデックを実施するのに適したコンピューティング環境を示すブロック図である。
【符号の説明】
【０１７５】
７１０  可逆単位行列式アダマール
１１１０  可逆直交回転
１１２０  可逆単位行列式スケーリング
【図１】
2006197573.tif 000024
【図２】
2006197573.tif 000025
【図３】
2006197573.tif 000026
【図４】
2006197573.tif 000027
【図５】
2006197573.tif 000028
【図６】
2006197573.tif 000029
【図７】
2006197573.tif 000030
【図８】
2006197573.tif 000031
【図９】
2006197573.tif 000032
【図１０】
2006197573.tif 000033
【図１１】
2006197573.tif 000034
【図１２】
2006197573.tif 000035
【図１３】
2006197573.tif 000036
【図１４】
2006197573.tif 000037
【図１５】
2006197573.tif 000038
【図１６】
2006197573.tif 000039
【図１７】
2006197573.tif 000040
【図１８】
2006197573.tif 000041
【図１９】
2006197573.tif 000042
【図２０】
2006197573.tif 000043
【図２１】
2006197573.tif 000044
【図２２】
2006197573.tif 000045
【図２３】
2006197573.tif 000046
【図２４】
2006197573.tif 000047
【図２５】
2006197573.tif 000048
【図２６】
2006197573.tif 000049
【図２７】
2006197573.tif 000050
【図２８】
2006197573.tif 000051
【図２９】
2006197573.tif 000052
【図３０】
2006197573.tif 000053
【図３１】
2006197573.tif 000054
【図３２】
2006197573.tif 000055
【図３３】
2006197573.tif 000056
【図３４】
2006197573.tif 000057
【図３５】
2006197573.tif 000058
【図３６】
2006197573.tif 000059
【図３７】
2006197573.tif 000060
【図３８】
2006197573.tif 000061
【図３９】
2006197573.tif 000062
【図４０】
2006197573.tif 000063
【図４１】
2006197573.tif 000064
【図４２】
2006197573.tif 000065
【図４３】
2006197573.tif 000066
【図４４】
2006197573.tif 000067
【図４５】
2006197573.tif 000068
【図４６】
2006197573.tif 000069
【図４７】
2006197573.tif 000070
【外国語明細書】
2006197573000001.pdf