"デジタルピクチャの現在のセクションを符号化する方法であって、aエンコーダを用いてデジタルピクチャの現在のセクションに対する予測誤差の集合から変換係数の集合を生成するステップと、b前記エンコーダを用いて前記デジタルピクチャの前記現在のセクションに対する1以上の予測パラメータの第1集合を決定するステップと、c予測されたピクセルと1以上の以前に復号されたセクションの予測誤差値を用いてデコーダエミュレータにおいて前記デジタルピクチャの前記現在のセクションに対する1以上の予測パラメータの第2集合を決定するステップと、d予測パラメータの前記第1集合を予測パラメータの前記第2集合と比較し、前記第2集合にはない前記第1集合からの1以上のパラメータ値を特定する情報を含む予測パラメータの第3集合を特定するステップと、e前記変換係数の集合と予測パラメータ値の前記第3集合を送信し、予測パラメータ値の前記第1集合および前記第2集合の両方に共通する1以上のパラメータは送信を省略するステップとを含むことを特徴とする方法。前記第1集合、第2集合および第3集合における前記1以上の予測パラメータ値は3次元動きベクトルの1以上の成分を含む請求項1の方法。ステップbはイントラ予測を用いて3次元動きベクトルを決定するステップを含む請求項2の方法。ステップbはインター予測を用いて3次元動きベクトルを決定するステップを含む請求項2の方法。前記3次元動きベクトルは、前記現在のセクションの3次元並進運動を特徴づける3パラメータのベクトルを含む請求項2の方法。前記3次元動きベクトルは、前記現在のセクションの3次元回転運動を特徴づける3パラメータのベクトルを含む請求項2の方法。前記第1集合、第2集合および第3集合における前記1以上の予測パラメータ値は前記現在のセクションにおけるクロミナンスと輝度を特徴づける3パラメータのベクトルを含む請求項1の方法。前記第1集合、第2集合および第3集合における前記1以上の予測パラメータ値は前記現在のセクションにおける光拡散を特徴づける1つのパラメータを含む請求項1の方法。前記第1集合、第2集合および第3集合における前記1以上の予測パラメータ値は前記1以上の予測パラメータ値とともに使われる参照セクションを特定する1つのパラメータを含む請求項1の方法。ステップeはさらに、デコーダが前記第3集合から省略されたパラメータを探索することのできる値の範囲を送信するステップを含む請求項1の方法。ステップeはさらに、デコーダが前記第3集合から省略されたパラメータを探索することのできる範囲の近傍ピクセルのインデックスを送信するステップを含む請求項1の方法。前記第3集合は、前記第1集合における1以上の値と前記第2集合における1以上の対応する値の差分の集合を含む請求項1の方法。3次元動き補償を用いてデジタルピクチャの現在のセクションを符号化するための装置であって、プロセッサと、メモリと、前記メモリに具体化され、前記プロセッサで実行可能なコンピュータコードのインストラクションとを含み、前記コンピュータコードのインストラクションは、3次元動き補償を用いてデジタルピクチャの現在のセクションを符号化/復号するための方法を実装するように構成されており、前記方法は、aエンコーダを用いてデジタルピクチャの現在のセクションに対する予測誤差の集合から変換係数の集合を生成するステップと、b前記エンコーダを用いて前記デジタルピクチャの前記現在のセクションに対する1以上の予測パラメータの第1集合を決定するステップと、c予測されたピクセルと1以上の以前に復号されたセクションの予測誤差値を用いてデコーダエミュレータにおいて前記デジタルピクチャの前記現在のセクションに対する1以上の予測パラメータの第2集合を決定するステップと、d予測パラメータの前記第1集合を予測パラメータの前記第2集合と比較し、前記第2集合にはない前記第1集合からの1以上のパラメータ値を特定する情報を含む予測パラメータの第3集合を特定するステップと、e前記変換係数の集合と予測パラメータ値の前記第3集合を送信し、予測パラメータ値の前記第1集合および前記第2集合の両方に共通する1以上のパラメータは送信を省略するステップとを含むことを特徴とする装置。前記第1集合、第2集合および第3集合における前記1以上の予測パラメータ値は3次元動きベクトルの1以上の成分を含む請求項13の装置。ステップbはイントラ予測を用いて3次元動きベクトルを決定するステップを含む請求項14の装置。ステップbはインター予測を用いて3次元動きベクトルを決定するステップを含む請求項14の装置。前記1以上の予測パラメータ値は、前記現在のセクションの3次元移動を特徴づけるベクトルを含む請求項13の装置。前記1以上の予測パラメータ値は、前記現在のセクションの3次元回転運動を特徴づけるベクトルを含む請求項13の装置。前記1以上の予測パラメータ値は、前記現在のセクションにおけるクロミナンスと輝度を特徴づけるベクトルを含む請求項13の装置。前記1以上の予測パラメータ値は前記現在のセクションにおける光拡散を特徴づける1つのパラメータを含む請求項13の装置。前記1以上の予測パラメータ値は前記3次元動きベクトルとともに使われる参照セクションを示す1つのパラメータを含む請求項13の装置。前記情報は、デコーダが省略されたパラメータを探索することのできる値の範囲を特定する請求項13の装置。ステップeは、デコーダが省略されたパラメータを探索することのできる範囲の近傍ピクセルのインデックスを送信するステップを含む請求項13の装置。ステップeは、前記第1集合における1以上の値と前記第2集合における1以上の対応する値の差分を送信するステップを含む請求項13の装置。コンピュータプログラム製品であって、コンピュータ読み取り可能なプログラムコードが具体化された一過性でないコンピュータ読み取り可能な記録媒体を含み、前記プログラムコードは、実行されたときに、3次元動き補償を用いてデジタルピクチャの現在のセクションを符号化/復号するための方法を実装するコンピュータ実行可能なインストラクションを含み、前記方法は、aエンコーダを用いてデジタルピクチャの現在のセクションに対する予測誤差の集合から変換係数の集合を生成するステップと、b前記エンコーダを用いて前記デジタルピクチャの前記現在のセクションに対する1以上の予測パラメータの第1集合を決定するステップと、c予測されたピクセルと1以上の以前に復号されたセクションの予測誤差値を用いてデコーダエミュレータにおいて前記デジタルピクチャの前記現在のセクションに対する1以上の予測パラメータの第2集合を決定するステップと、d予測パラメータの前記第1集合を予測パラメータの前記第2集合と比較し、前記第2集合にはない前記第1集合からの1以上のパラメータ値を特定する情報を含む予測パラメータの第3集合を特定するステップと、e前記変換係数の集合と予測パラメータ値の前記第3集合を送信し、予測パラメータ値の前記第1集合および前記第2集合の両方に共通する1以上のパラメータは送信を省略するステップとを含むことを特徴とするコンピュータプログラム製品。1以上のデジタルピクチャの1以上の符号化されたセクションを表すデータを含む1以上のデータパケットを復号するピクチャ復号方法であって、前記1以上のデータパケットは変換係数の集合と予測パラメータの部分集合を含み、前記方法は、aデコーダを用いて前記変換係数に逆変換を適用して予測誤差値の集合を生成するステップと、b予測されたピクセルの集合と前記1以上のデジタルピクチャの1以上の以前に復号されたセクションの予測誤差値とを用いて前記デコーダにおいて1以上の推定された予測パラメータを生成するステップと、c予測パラメータの前記部分集合から1以上の対応する予測パラメータを用いて前記デコーダにおいて1以上の前記推定された予測パラメータ値を置換し、予測パラメータの出力集合を生成するステップと、d予測誤差値の前記集合と予測パラメータの前記出力集合を用いて前記デコーダにおいて1以上の復号されたセクションを生成するステップとを含むことを特徴とする方法。ディスプレイにおいて前記1以上の復号されたセクションが含まれる1以上の復号されたデジタルピクチャを表示するステップをさらに含む請求項26の方法。ステップaは、前記予測誤差値から最良の前方変換を決定するステップと、前記変換係数に対応する逆変換を適用するステップとを含む請求項26の方法。ステップaは、前記1以上のデジタルピクチャの第1セクションに対する変換係数にデフォルトの逆変換を適用するステップを含む請求項26の方法。予測パラメータの前記部分集合は3次元動きベクトルの1以上の成分を含む請求項26の方法。前記1以上のデータパケットは値の範囲を含み、ステップdは、省略された予測パラメータを前記範囲内で探索するステップを含む請求項26の方法。予測パラメータの前記部分集合は近傍ピクセルのインデックスを含み、ステップcは、前記インデックスを用いて前記部分集合から省略された予測パラメータを探索するステップを含む請求項26の方法。予測パラメータの前記部分集合は予測値の差分の集合を含み、ステップcは、前記差分を前記推定された予測パラメータ値と結合するステップを含む請求項26の方法。3次元動き補償を用いてデジタルピクチャの現在のセクションを復号するための装置であって、プロセッサと、メモリと、前記メモリに具体化され、前記プロセッサで実行可能なコンピュータコードのインストラクションとを含み、前記コンピュータコードのインストラクションは、1以上のデジタルピクチャの1以上の符号化されたセクションを表すデータを含む1以上のデータパケットを復号する方法を実装するように構成されており、前記1以上のデータパケットは変換係数の集合と予測パラメータの部分集合を含み、前記方法は、aデコーダを用いて前記変換係数に逆変換を適用して予測誤差値の集合を生成するステップと、b予測されたピクセルの集合と前記1以上のデジタルピクチャの1以上の以前に復号されたセクションの予測誤差値とを用いて前記デコーダにおいて1以上の推定された予測パラメータを生成するステップと、c予測パラメータの前記部分集合から1以上の対応する予測パラメータを用いて前記デコーダにおいて1以上の前記推定された予測パラメータ値を置換し、予測パラメータの出力集合を生成するステップと、d予測誤差値の前記集合と予測パラメータの前記出力集合を用いて前記デコーダにおいて1以上の復号されたセクションを生成するステップとを含むことを特徴とする装置。コンピュータプログラム製品であって、コンピュータ読み取り可能なプログラムコードが具体化された一過性でないコンピュータ読み取り可能な記録媒体を含み、前記プログラムコードは、実行されたときに、1以上のデジタルピクチャの1以上の符号化されたセクションを表すデータを含む1以上のデータパケットを復号する方法を実装するコンピュータ実行可能なインストラクションを含み、前記1以上のデータパケットは変換係数の集合と予測パラメータの部分集合を含み、前記方法は、aデコーダを用いて前記変換係数に逆変換を適用して予測誤差値の集合を生成するステップと、b予測されたピクセルの集合と前記1以上のデジタルピクチャの1以上の以前に復号されたセクションの予測誤差値とを用いて前記デコーダにおいて1以上の推定された予測パラメータを生成するステップと、c予測パラメータの前記部分集合から1以上の対応する予測パラメータを用いて前記デコーダにおいて1以上の前記推定された予測パラメータ値を置換し、予測パラメータの出力集合を生成するステップと、d予測誤差値の前記集合と予測パラメータの前記出力集合を用いて前記デコーダにおいて1以上の復号されたセクションを生成するステップとを含むことを特徴とするコンピュータプログラム製品。H.264の前身MPEG-2は、参照ピクチャから現在のピクチャを予測した構造を有していた。この規格は、現在のピクチャと以前のピクチャ間のデータ依存性を削除するためのツールを提供した。具体的には、MPEG-2は、以前のピクチャと現在のピクチャとの間でピクセルグループを移動させるための2次元動きベクトルを算出した。H.264は、16×16ブロック内で多くの動きベクトルを見つける。現在のピクチャは以前のピクチャのピクセルに類似しているピクセルの束を持つ。アイデアとして、ピクセルの塊が以前のピクチャのある場所から現在のピクチャの別の場所に移動したと考える。各16×16ブロック内で動きがあるかもしれない。H.264は、各16×16ブロック内の多くの動きベクトルを符号化することができる。最終的に動きベクトルの数はピクセルの数を超えるため、ピクセル毎に動きベクトルを符号化することは現実的ではない。そのような場合は、動きベクトルの代わりにピクセルを伝送することが好ましいであろう。したがって、動きベクトルの数とピクセルの数との間にはトレードオフがある。H.264は、4×4ブロックのピクセルのような小さなピクセルグループに対して動きベクトルを符号化する。この規格はピクセルと動きベクトルの間でよくバランスが取られている。しかし、それ以外では、H.264は基本的にMPEG-2と同じプロセスおよび同じデータフローを用いる。本発明の実施の形態はこのような文脈の中で生じた。本発明のある態様は、デジタルピクチャの現在のセクションを符号化する方法であって、aエンコーダを用いてデジタルピクチャの現在のセクションに対する予測誤差の集合から変換係数の集合を生成するステップと、b前記エンコーダを用いて前記デジタルピクチャの前記現在のセクションに対する1以上の予測パラメータの第1集合を決定するステップと、c予測されたピクセルと1以上の以前に復号されたセクションの予測誤差値を用いてデコーダエミュレータにおいて前記デジタルピクチャの前記現在のセクションに対する1以上の予測パラメータの第2集合を決定するステップと、d予測パラメータの前記第1集合を予測パラメータの前記第2集合と比較し、前記第2集合にはない前記第1集合からの1以上のパラメータ値を特定する情報を含む予測パラメータの第3集合を特定するステップと、e前記変換係数の集合と予測パラメータ値の前記第3集合を送信し、予測パラメータ値の前記第1集合および前記第2集合の両方に共通する1以上のパラメータは送信を省略するステップとを含む。以下の詳細な説明には、説明のための多くの具体的な詳細事項が含まれるが、それらに対する多くの変更や修正も本発明の技術範囲に含まれることは、当業者であれば誰でも理解するであろう。したがって、以下に説明する本発明の好適な実施形態は、クレームされた発明の普遍性をなんら損なうことなく、また限定も行うことなく記載されている。はじめにデジタルビデオの新たな符号化規格を開発する際、各デジタルビデオフレームのための情報を伝送するために必要なビット数を減少させることが望ましい。一般的に、ビデオフレームは、ピクセルの二次元配列で表される画像である。各画素は、強度輝度の値と1以上の色色差の値を有する。一例として、典型的なビデオ信号は、2つのクロミナンス値、Cb青色差およびCr赤色差を有する。符号化および復号の目的のために、画像は、典型的には異なるサイズのピクセルグループに分解される。一例として、限定するものではないが、図1に示すように、単一のデジタルビデオピクチャ100例えば、デジタルビデオフレームは1以上のセクションに分解してもよい。本明細書で使用される用語セクションは、ピクチャ100内の1以上のピクセルのグループを指す。セクションはピクチャ内の単一のピクセルからピクチャ全体までの範囲とすることができる。セクションの限定しない例として、スライス102、マクロブロック104、サブマクロブロック106、ブロック108および個々のピクセル110がある。図1Aに示すように、各スライス102は、マクロブロック104の1以上の行またはそのような1以上の行の部分を含む。ある行のマクロブロックの数は、マクロブロックのサイズとピクチャ100のサイズおよび解像度に依存する。例えば、各マクロブロックに16×16ピクセルが含まれる場合、各行におけるマクロブロックの数は、ピクチャ100の幅ピクセル単位を16で割ることによって決定することができる。各マクロブロック104を一定数のサブマクロブロック106に分解してもよい。各サブマクロブロック106を一定数のブロック108に分解してもよく、各ブロックは一定数のピクセル110を含む。一例として、本発明を限定することなく、一般的なビデオ符号化方式では、各マクロブロック104は4つのサブマクロブロック106に分解される。各サブマクロブロックは4つのブロック108に分解され、各ブロックは、4×4配列の16ピクセル110を含む。従来、デジタルビデオ画像は、各ピクチャの復号又は各スライスの復号に対して単一のスレッドを使用して復号されている。従来のシングルスレッドのデコーダでは1つのマクロブロックのためのすべての復号タスクは次のマクロブロックの復号前に完了する。マルチスレッド化されたピクチャ復号、すなわち並列に複数のピクチャを復号することも行われている。ピクチャ内のマルチスレッド化された復号を容易にするために、各ピクチャ100は、1以上のスライスを包含する2以上のサブユニット112に分解される。本発明の実施の形態では、スライス102が、隣接サブユニット112間の境界を跨ぐことがありうる。このように、スライスは、2つの異なるサブユニット間で共有されてもよい。なお、各ピクチャは、フレームまたはフィールドのいずれかであることに留意されたい。フレームは、完全な画像を指す。フィールドは、あるタイプのディスプレイデバイス上での画像の表示を容易にするために使用される画像の部分である。一般に、画像内のピクセルは、行単位に配置されている。表示を容易にするために、時には、ピクセルの行を交互に2つの異なるフィールドに置くことによって画像を分割することができる。そして、二つのフィールドのピクセルの行は、完全な画像を形成するためにインタレースされる。例えば、陰極線管CRTディスプレイなどのいくつかのディスプレイ装置では、2つのフィールドは単に、急速に連続して次々と表示される。CRT画面で使用される蛍光体の残光は映像結果の持続性と組み合わされた結果、2つのフィールドが連続した画像として認識される。液晶ディスプレイなどの他の表示装置については、表示する前に、単一のピクチャに2つのフィールドをインタレースする必要があるかもしれない。符号化された画像を表すストリーミングデータは、典型的にはピクチャがフィールドであるかフレームであるかを示す情報を含む。このような情報は、画像に対するヘッダに含まれてもよい。本発明の実施の形態は、ビデオコーデックが、ピクチャをフィールドに分割することなく、現在処理中のピクチャ内の冗長性を見つけることを可能にする。ピクセル予測は、圧縮に対してビデオコンテンツの冗長性を活用するために使用される技術である。例えば、従来技術のビデオ符号化規格では、現在のピクセルブロックが2次元シフトを用いて以前に復号されたピクセルブロックによって予測することができれば、予測方法はインター予測参照ブロックが異なる画像からである場合又はイントラ予測参照ブロックが同一の画像からである場合と呼ばれ、予測パラメータは、そのシフトを定義するために使用される二次元ベクトル動きベクトルとして知られるである。予測の後、予測誤差ピクセル時には残差ピクセルと呼ばれるは、いくつかのタイプの量子化変換例えば、離散コサイン変換等のウェーブレット変換を用いて、圧縮されたビデオストリームに符号化される。一般に、より複雑な予測方法は、予測パラメータを送信し、良好な予測結果を得るために多くのビットを必要とする。そして、ある時点で、良好で複雑な予測を送信するために使われるビット数は、残留ピクセル値によって節約されたビット数を超えてしまう。この時点では、より良好でより複雑な予測はもはや正当化されなくなる。H.261、H.263、MPEG1、MPEG2、MPEG4、およびH.264/AVCのような多くの確立されたビデオ圧縮規格はピクセル予測を使用する。これらの従来技術のビデオ符号化規格のすべてにおいて、予測方法、ビットコスト、および予測結果の正確性の間の最良のバランスを探索するのはエンコーダの責任である。次に、エンコーダは、ピクセル再構成のためにデコーダに予測パラメータと残差ピクセルの両方を送信し、多数のビットを必要とする。このように、予測パラメータを送信する際の効率は非常に悪く、従来技術のビデオ規格で利用可能な最も複雑な予測方法は、単純な2次元シフトである。より正確な予測方法を実現するためにデコーダにエンコーダの責任を移すことは、予測パラメータの探索における計算の複雑さが非常に高いため、過去に解決策として失敗した。そのようなタスクを処理するために低コストのハードウェア又は汎用CPUを使用することは現実的ではない。これは、ピクセル予測方法を単純な2次元シフトに制限することの決定的な理由である。このように、より複雑な予測方法を開発する動機はこれまで少なかった。しかしながら、GPUが安価になり、より柔軟になるにつれ、3次元ベースの予測方法が近い将来に実現可能となるであろう。3次元ビデオ圧縮に対しては、3次元モーションベースの予測は、現在の2次元マルチビュー多視点解決よりもはるかに魅力的である。マルチビュー多視点ビデオストリーム内の各ビューは、2次元ピクチャシーケンスである。マルチビュービデオストリームは、3次元ビデオコンテンツを伝送するために使用することができる。マルチビューは、例えば、スポーツイベントを記録する複数のカメラからの出力を送信するためなど、他のビデオコンテンツを伝送するために使用することもできる。マルチビュービデオを3次元ビデオのために使用する場合、各ビューストリームは異なる視野角を代表する。したがって、最も単純な3次元ビデオマルチビューストリームは2つのビューをもつ。2つのビューが使用される場合、視聴者の左右の目が異なるビューを知覚して3次元を体験できるように、視聴者はシャッター眼鏡を使用しなければならない。あるいは、3次元ビデオシステムは、眼鏡なしで3次元を体験するために単一視点に固定された異なるビューの画像を提示することができる。しかし、眼鏡なしの3次元ビデオを実用的にするために、多くのビューが使用される傾向がある。ビデオストリームにおけるビューの数が増加するにつれて、マルチビュー符号化は、真の3次元ピクチャ符号化よりも非効率になっていく。従って、3次元運動パラメータを送信するために必要なビット数は、2次元の動きの場合に比べて10倍以上となりうる。本発明の方法は、3次元予測パラメータを符号化するために必要なビット数を減らすように設計されている。ピクセル予測と再構築の基礎は、以下の例によって説明することができる。カメラがビデオシーケンスを構成するとき、所定の時間期間ごとに一度、レンズを通して光子を収集する。これらの光子は、カメラの前の多数の物体の表面によって放出される。これらの物体表面の質感や形状の類似度は画像内の冗長性と呼ばれる。二つの時間インスタンス間の類似度は、画像間の冗長性と呼ばれる。イントラ類似性又はインター類似性を発見し、これらの類似度を用いてピクセル予測を行うために、重要なことは、2つの類似した物体表面間の関係を見出すことである。現在、二次元動き補償を用いたピクセル予測及び再構築は、H.264と同じ基本的なプロセスを使用してさらに最適化することはできない。根本的な変更が必要である。基本的な変更の背後にある二つのありうる概念は、Aできるだけ多くのピクセルを符号化するために単一の動きベクトルまたは他の予測パラメータを使用すること、および/またはB動きベクトルまたは他の予測パラメータを符号化するために必要なビット数を減らすことである。できるだけ多くのピクセルを符号化するための単一の動きベクトルの使用方法を説明するために、次の例を考えてみる。一例として、限定するものではないが、画像に回転する車輪が含まれている状況を考える。車輪が回転すると、車輪の異なる部分が異なる速度で異なる方向に移動する。従来の符号化規格では、車輪は、多数の小グループのピクセルに分解されるであろうし、各グループは異なる2次元動きベクトルを必要とするであろう。これは、車輪の動きを表現するために、多数の動きベクトルを必要とし、それぞれの動きベクトルが個々の小グループのピクセルの二次元の動きを記述する必要がある。車輪の動きを表現するために必要な2次元動きベクトルの数を減らすために、車輪は、2次元空間に投影された3次元オブジェクトとして扱うことができる。ここでは、ホイールが回転および並進運動のパラメータを含む3次元動きベクトルを用いて符号化することができる。このシナリオでは、3次元動きベクトルがより多くのピクセルを対象とすることから、車輪の動きを記述するために必要となる動きベクトルの数を削減することができる一方、追加のパラメータが各3次元動きベクトルに関係するために各3次元動きベクトルがより多くの送信ビット数を必要とすることになるというトレードオフがある。多くのビデオデバイス上の既存のハードウェアサポート例えば、グラフィックス処理ユニットすなわちGPUは、非常に良好な3次元回転運動表現、3次元並進運動表現、および3次元スケーリングを有する。3次元動きベクトルを用いて画像間の動きを符号化することにより、より複雑な例えば、より多くのパラメータをもつ動きベクトルが得られるが、動きを表現するには全体的としてはるかに少ない動きベクトルが得られる。さらに、2次元画像に3次元情報を投影することにより、スケーリングと3次元ベクトルに関連付けられた回転パラメータとの間で冗長性が生まれる。したがって、これらのパラメータのいずれかを符号化処理過程でスキップすることにより、この予測方法の複雑さを軽減することができる。3次元動きベクトルをパラメータ化するために3次元平行移動、回転、拡大縮小を使用することに加えて、動きベクトルは、色特性を符号化することができる。これには、光強度すなわち、クロミナンスと輝度を表すための3パラメータのベクトルと光拡散を表す1つのパラメータが含まれる。光強度パラメータは、画像全体にわたって安定している可能性が高い。例えば、ピクチャの照明がより赤みを帯びた場合、全ての画素の色差値を等しいまたは確定可能な量だけ赤方向にシフトすることができる。同様に、拡散すなわち、画像中のぼけは画像全体で一定である可能性が高い。このように、エンコーダは、異なるセクションに対する動きベクトルから冗長な情報を除去することにより、この情報を符号化するために必要なビット数を大きく減らすことができる。上記の例を踏まえ、同一画像内または独立した画像内のどちらかの2以上の場所に現れる表面は、照明条件の変化と相まって、3次元運動として表現してもよい。2次元画像圧縮にとっては、この移動は、3次元シフトに3次元回転を加えたものとして特徴付けることができる。照明条件は、光強度ベクトルによって特徴づけられる。3次元シフトは、3パラメータのベクトルとしてパラメータ化することができる。3つの回転軸に沿った3次元回転は、同様に、3パラメータのベクトルとしてパラメータ化することができる。光強度ベクトルは3パラメータのベクトルとしてパラメータ化することができる。2つのパラメータはクロミナンスを表す2つの色差成分すなわち、青輝度と赤輝度を表すために使用され、もう一つのパラメータは輝度を表す。また、3次元動きベクトルは、光拡散を記述するもう一つのパラメータと、最後に、3次元動きベクトルを構築するために使われる参照画像を指すパラメータこのパラメータは、イントラ符号化には不要であるを有してもよい。3次元動きベクトルは、高精度なピクセル予測方法に役立つ11のパラメータによって特徴付けられる。これら11のパラメータは3次元面運動の2次元投影を定義するためにだけ使用されることに留意することが重要である。真の3次元の動きを表現するためにはより多くのパラメータが必要となる。単一の複雑な3次元動きベクトルをもつ多数のピクセルを表現するには、きわめて多くのビットの伝送が必要になるため、ピクセル予測と再構築を根本的に変更することの背後にある第2の概念には、与えられたビデオストリームを符号化するのに必要な合計ビット数を減少させることが含まれる。ビット数を減らすために、エンコーダは、ビデオストリーム内のデジタル画像の特定のセクションの符号化過程で動きベクトルをスキップすることができるかどうかを判断するためにデコーダエミュレータを使用することができる。デコーダエミュレータは、以前に復号された画像を使用して処理中である現在のセクションに対する動きベクトルを独立に決定することのできるデコーダの能力をシミュレートする。デコーダエミュレータが動きベクトルに関連付けられたパラメータの十分な部分を確立することができる場合、動きベクトル全体を符号化処理の過程でスキップすることができる。代わりに、必要なビット数が大幅に少ないガイドラインを動きベクトルの探索を容易にするためにデコーダに送信することができる。例として、限定するものではないが、これらのガイドラインには次の内容が含まれる。1最も正確な動きベクトルを表すパラメータを配置するべき範囲の集合をデコーダに与えること;2特定の隣接するピクセルにデコーダの動きベクトル探索を拘束すること;3エンコーダの予測パラメータ値例えば、動きベクトルとデコーダエミュレータの対応する予測パラメータ値の間の差Δを送信すること;または4動きベクトルを探索するためにデコーダが使用するセクションのサイズを変更すること。なお、これらの同じ概念を、フィルタパラメータ、拡散、クロミナンス、および輝度値のような動きベクトル以外の予測パラメータに適用してもよいことに留意されたい。デコーダエミュレータが、動きベクトルに関連付けられたすべてのパラメータを確立することができる場合、付加的な情報および不必要なビットをデコーダに送信する必要はなくなるであろう。ピクセル予測は、多くのビデオ圧縮アルゴリズムの基礎である。本発明の方法では、デコーダが、以前に復号されたピクセルを探索することにより、これらのパラメータを取得することができるのであれば、エンコーダは、特定のピクセルの予測制御パラメータの送信をスキップすることができる。代わりに、予測パラメータの調整と予測誤差ピクセルだけが送信される。予測パラメータをスキップすることにより、本発明の実施の形態は、イントラ符号化ピクチャとインター符号化ピクチャの両方に対して非常に複雑で正確な3次元ピクセル予測が可能になり、非常に効果的に圧縮されたビデオストリームを得ることができる。この方法はまた、3次元ビデオ圧縮のための現在の多視点符号化方式よりもスケーラビリティがある。本発明の実施の形態では、エンコーダは、予測されたピクセル値の集合を得るために、ピクチャのセクションに予測パラメータ値例えば、動きベクトルの成分の第1集合を適用する。当該セクションに対する元のピクセル値から、予測されたピクセル値を差し引くことにより、予測誤差時には残差ピクセルとも呼ばれるを生成することができる。前方順方向変換が予測誤差に適用され、変換係数の集合が生成される。通常は変換係数と予測パラメータが復号のために送信される。本発明の実施の形態では、エンコーダ側のデコーダエミュレータは、変換係数と、同じ画像か別の画像から以前に復号化されたセクションとを使用して、予測パラメータ例えば、動きベクトルの成分の第2集合を決定することができる。予測パラメータの2つの集合を互いに比較して、第2集合の任意のパラメータ値が第1集合の対応する値と一致するかどうかを決定することができる。なお、第2集合内の任意の一致する値は、予測誤差からデコーダによって生成されうることを想定することができる。第2集合において対応する一致する値を持たない第1集合の任意の値は、デコーダ側に予測パラメータ値の第3集合として送信される。一致する値は、デコーダ側に送信される予測パラメータ値の第3集合から省略することができ、それによってこれらのパラメータ値を送信するために必要なビット数を削減することができる。デコーダ側は、変換係数及び符号化セクションに対応する予測パラメータ空集合であってもよいの部分集合を受信する。次いで、デコーダは、セクションに対する予測誤差値を生成するために変換係数に逆変換を適用する。デコーダは、予測誤差値、以前に復号されたセクション、および部分集合における任意の省略されていない予測パラメータ値を使用して、セクションに対するピクセル値を復号する。一例として、これに限定しないが、図1Bは、予測パラメータをスキップしながらデジタルピクチャを符号化するための処理フロー120の例を示す。この例では、異なる前方変換をピクチャ内の各セクションに適用することができる。符号122に示すように、エンコーダ上のデコーダエミュレータ125は、オプションとして、ピクチャ内のセクションたとえば左上のブロックまたはマクロブロックに対する入力予測誤差128に前方変換を適用し、変換係数124の集合および変換パラメータたとえば動きベクトルを生成することができる。ある実施の形態では、前述のように、エンコーダはピクチャ内の第1セクションにデフォルトの前方変換121を適用し、他のセクションに対して最良の変換を決定してもよい。現在のセクションが第1セクションでない場合、デフォルトの前方変換121は、以前のセクションに対するデコーダエミュレータの結果から決定してもよい。いったん前方変換が適用されると、デコーダエミュレータ125は、符号126に示すように、結果として得られる変換係数に対応する逆変換を適用し、予測誤差128’たとえば残差ピクセル値を生成することができる。デコーダエミュレータ125によって生成された予測誤差128’は、チェックとして入力予測誤差128と比較される。デコーダエミュレータ125はその後、符号130に示すように、以前デコードされた参照セクション129を用いて、1以上の推定された予測パラメータ値131を生成する。デコーダエミュレータ125は、以前にデコードされた参照セクション129の予測ピクセル値および予測誤差値を用いて、現在のセクションに対する推定予測パラメータ値131を生成する。符号132に示すように、推定予測パラメータ値131を、符号化プロセスの別の部分においてエンコーダによって生成された入力予測パラメータ値123の集合と比較する。推定予測パラメータ値131を入力予測パラメータ値123と比較することで転送用の入力パラメータ値135を選択する。特に、対応する推定パラメータ値131と一致する入力パラメータ値123は転送する必要がない。対応する推定パラメータ値と一致しない入力パラメータ値は、変換係数124とともに転送用に選択される。選択された予測パラメータ135だけを転送することにより、転送ビット数を削減することができる。ある実装では、エンコーダエミュレータ125は、未来のセクション、たとえば、次のセクションに対する結果をチェックするために、現在のセクションに対する推定予測パラメータ131を用いてもよく、あるいは、現在のセクションに対する選択された推定予測パラメータ135を用いてもよい。一例として、これに限定しないが、再構築されたピクセル値予測ピクセル値に復号された予測誤差を足したものを、1以上の復号された参照セクション129からの参照ピクセル値と比較することで、動きベクトルたとえば、3次元動きベクトルを推定する。推定された動きベクトルの成分を、符号化プロセスの別の部分においてエンコーダによって生成された元の動きベクトルと比較する。デコーダエミュレータ125に生成された動きベクトルと一致しない元の動きベクトルの成分は、変換係数とともに転送用に選択される。予測パラメータ値の全体集合たとえば、全動きベクトルは、ときどき、たとえば、以前に復号された適当なセクションがない場合、転送される。たとえば、まさに最初のピクチャパーティションに対しては、全動きベクトルを転送しなければならない。与えられたピクチャの異なる部分に対して異なる変換がより良く作用することがあることに留意すべきである。最良の変換122を見つけるために、エンコーダは予測誤差に異なる前方変換を適用して異なる変換係数を生成してもよい。ある実施の形態では、最良の変換ループ136は、たとえばデコーダエミュレータ125内に実装される。最良の変換ループ136は、当該セクションに対して異なる前方変換を適用することによって取得された変換係数の異なる集合を比較し、未来のセクションに対して用いるべき最良の変換を決定する。一般的に、変換パラメータによって制御される変換候補のグループがある。デコーダエミュレータ125は、各特定のセクションに対する最良の変換パラメータを探索することができる。異なる変換パラメータを用いて出力係数のエントロピーを決定することができる。係数のエントロピーは、これらの係数を符号化するために必要なビット数に対応する。最低のエントロピーをもつ係数を生成する変換を、最良変換として選択することができる。転送コストの故に、以前のセクションに対する最良の変換パラメータだけを現在のセクションに対して用いる。すなわち、変換パラメータの転送をいつでもスキップすることができる。現在のセクションに対して最良変換ループ136によって決定される最良変換を、未来のセクションが存在するならその符号化に渡すことができる。ここでは未来のセクションという用語は次の意味をもつ。ある行の最初のセクションたとえば、マクロブロックの行における最初のマクロブロックに対して、未来のセクションには、同じ行における次のセクションと次の行における最初のセクションもしあればが含まれる。行の最後のセクションに対しては未来のセクションはない。他のすべてのセクションについては、未来のセクションは同じ行の次のセクションである。いったん最良の変換が選択されると、対応する変換パラメータを、推定予測パラメータ値の生成プロセスにおいて、未来のセクションもしそれば存在すればに対する前方逆変換に適用することができる。符号138に示すように、選択された予測パラメータ135をデータパケット137に結合し、データパケット137を変換係数124とともに転送することができる。もっとも、最良の変換に対する変換パラメータは、データパケット137から省略することができる。処理はその後、次のセクションに対して繰り返される。さらに、符号134において転送すべきパラメータを選択する際、デコーダエミュレータ125は、たとえば上述のような1以上の技術を用いて、転送されるパラメータデータのビット数をさらに減らしてもよい。特に、選択されたパラメータ値135は、特定のパラメータ値が設定される値の範囲の集合を含む。あるいは、動きベクトルの場合、選択されたパラメータ値は、デコーダによる動きベクトルの探索を参照セクション129内の特定のピクセルに制限する条件を含む。さらに、選択されたパラメータ値135は、エンコーダの予測パラメータ値たとえば動きベクトルとデコーダエミュレータの対応する予測パラメータ値の差分を含む。あるいは、予測パラメータ値は、デコーダが省略された予測パラメータを探索するために用いるセクションサイズを変更してもよい。たとえば、デコーダエミュレータ125は、より大きなあるいはより小さなセクションサイズが動きベクトル探索に用いられるならば、正しい動きベクトルが8×8ピクセルに対して正確に推定されうることを判定する。そのような場合、選択されたパラメータ値135は、デコーダが予測パラメータを探索するのに使うセクションサイズの指標を含んでもよい。図1Cは、本発明の実施の形態にしたがってピクチャを復号するための処理フロー140の例を示す。デコーダは、ピクチャにおける符号化されたセクションに対する変換係数および選択されたパラメータを含む1以上のデータパケット137を受信する。その後、デコーダは、符号142に示すように変換係数に逆変換を施して、予測誤差143Aを取得する。もしデコーダが、エンコーダ側のデコーダエミュレータ125と同じやり方で動作するなら、予測誤差143Aは、エンコーダエミュレータ125によって生成された予測誤差128’に一致するはずである。もしセクションがピクチャにおける第1セクションであるなら、デコーダは、オプションとして、変換係数に所定のデフォルト変換141を適用してもよい。さもなければ、後述のように、デコーダは、係数に異なる逆変換を施し、対応する異なる前方変換をその結果得られる予測誤差に適用し、その結果得られる推定係数を比較することにより最良の前方変換を決定する。最良の前方変換は、一般的に、最小ビット数の係数を与えるものである。予測誤差143Aを対応する予測ピクセル値143Bと結合することで再構築されたピクセル値を取得することができる。予測ピクセル値143Bは、図示しない復号処理の異なる部分における、以前に復号された参照セクション129に動きベクトルを適用することによって取得される。符号144に示すように、予測ピクセル143Bを用いて取得された以前に再構築されたピクセル値143Cと、予測誤差143Aと、1以上の以前に復号された参照セクション129とを用いて予測パラメータ145を探索する。一例として、これに限定しないが、動きベクトルたとえば3次元動きベクトルを推定するために、再構築されたピクセル値143Cは、1以上の復号された参照セクション129からの参照ピクセル値と比較される。好ましくは、以前に復号された参照セクション129は、エンコーダ側におけるデコーダエミュレータによって使用されるものと同じである。これを容易にするために、データパケット137は、関連のある参照セクションを特定するデータを含む。デコーダは、符号146に示すように、選択された推定予測パラメータ145を、データパケット137に含まれる対応するパラメータの値で置き換えることによって、予測パラメータ147の出力集合を生成する。予測パラメータ147を用いて、未来のセクションもし存在するならを復号してもよい。特に、予測パラメータ147を用いて未来のセクションに対する予測ピクセルを生成してもよい。さらに、データパケット137における選択されたパラメータ値は情報を含み、その情報から省略された予測パラメータが推定されるか、または導出される。たとえば、データパケット137は、特定のパラメータ値が設定される値の範囲の集合を含む。あるいは、動きベクトルの場合、データパケットは、デコーダによる動きベクトルの探索を参照セクション129内の特定のピクセルに制限する条件を含む。さらに、データパケット137は、エンコーダの予測パラメータ値123たとえば動きベクトルと、デコーダエミュレータ125によって生成された対応する推定予測パラメータ値131との差分を含む。デコーダは、推定予測値パラメータ145に異なる値を結合させることによってたとえば、各推定されたパラメータ値とその対応する差異値の足し算または引き算によって予測パラメータ値147の出力集合を取得する。あるいは、予測パラメータ値は、デコーダが省略された予測パラメータを探索するために用いるセクションサイズを変更してもよい。たとえば、データパケット137は、デコーダが符号144において予測パラメータを推定するために用いるセクションサイズを含んでもよい。上述したように、デコーダは、変換係数に異なる逆変換を適用し、ピクチャにおける未来のセクションに対して最良の変換を決定することができる。例えば、最良の変換ループ148は、上述のように、予測誤差143Aに異なる前方変換を適用し、対応する変換係数を生成することができる。これは最良の変換ループ148は、図1Bに示すように、デコーダエミュレータ125上の最良の変換ループ136と本質的に同じ方法で動作することに留意されたい。各前方変換に対する結果は、最良の前方変換、例えば最小のビット数を有する変換係数を生成する前方変換を決定するために、相互に比較される。この処理は、正確な逆変換がデータパケットにおける入力係数に使用されたことを確認するために、変換パラメータ探索プロセス内で使用される。以前のピクチャセクションに対する最良の変換が、現在のピクチャに対しては最良のものではないこともあることに留意されたい。しかしながら、以前のセクションに対する最良の変換を現在のセクションに対して使用することができるならば、最良の変換パラメータを送信するビットコストを回避することができる。いったん最良の前方変換が見出されたなら、デコーダは、符号150で示すように、復号処理の異なる部分に対応する再構築されたピクセル143Cを出力し、通常の方法でそれらを使用することができる。後述するように、例えば、再構築されたピクセル143Cは、セクションの復号を完了するために用いることができる。その結果得られた復号されたセクションは、その後、復号ピクチャの一部として、ビデオディスプレイ、コンピュータモニタ、又はプリンタなどの表示装置により表示することができる。予測パラメータ147は、将来のセクション、例えば、次のセクションを復号するために使用することができる。以上の説明から、以前のセクションに対して決定された最良の変換は、現在のセクションに対する変換係数を残差ピクセル予測誤差143Aに変換するための逆変換を行うために使用することができることが理解される。このようにして、エンコーダが現在のピクチャに対する変換パラメータを送信する必要性を回避することができる。本発明の実施の形態は、異なる符号化及び復号方法と組み合わせて使用することができる。本発明の実施の形態による一例として、イントラピクチャまたはインターピクチャは、図2Aに示すように、方法200に従って符号化される。エンコーダは、デジタル画像201を複数受信し、各画像を符号化する。デジタルピクチャ201の符号化は、セクションごとに進められる。各セクションの符号化処理は、必要に応じてパッディング202を含み、一般的に画像圧縮204及び動き補償206を含む。イントラ符号化ピクチャとインター符号化ピクチャの両方に共通の処理フローを容易にするために、符号202で示されているように、現在処理中のピクチャ201内の全ての未復号のピクセルは、オプションとして、一時的なピクセル値でパディングされ、パディングされたピクチャが生成されてもよい。パディングされたピクチャをバッファに格納された参照ピクチャ203のリストに追加する。符号202においてピクチャをパディングすることにより、画像圧縮204及び動き補償206の過程で後続の処理における参照画像として、現在処理中のピクチャを使用することが容易になる。ピクチャパディングについては、JasonNWangPICTUREENCODINGUSINGSAMEPICTUREREFERENCEFORPIXELRECONSTRUCTIONと題する米国特許出願11/627,867号により詳細に説明されており、全体の内容は、参照により本明細書に組み込まれる。本明細書で使用されるように、画像圧縮は、デジタル画像に対するデータ圧縮の適用を指す。画像圧縮204の目的は、圧縮データの効率的な形式でその画像のデータを格納又は送信できるようにするために、与えられた画像201に対する画像データの冗長性を低減することである。画像圧縮204は不可逆または可逆である。可逆圧縮は、しばしば、技術図面、アイコンや漫画のような人工画像に対して好ましい。これは、非可逆圧縮方法は、低ビットレートで使用される場合は特に、圧縮アーティファクトを生成するからである。可逆圧縮方法はまた、医療画像又は保管目的のために作られた画像スキャンなどの高価値コンテンツに対して好ましい。非可逆方法は、画像の忠実度の小さな時にはごくわずかの損失がビットレートの大幅な低減を達成するために許容されるアプリケーションにおける写真などの自然画像に特に適している。可逆画像圧縮方法の例として、これらには限定されないが、PCXのデフォルトの方式として用いられ、BMP、TGA、TIFFなどの1つの方法として用いられるランレングス符号化、エントロピー符号化、GIFやTIFFで用いられるLZWなどの適応辞書アルゴリズム、PNG、MNGおよびTIFFで使用されるデフレーションが含まれる。非可逆圧縮方法の例としては、ピクチャ201の色空間を画像における最も一般的な色に減らすこと、クロマサブサンプリング、変換符号化、およびフラクタル圧縮が含まれる。色空間の削減の際、選択された色は、圧縮画像のヘッダにおいてカラーパレットで指定することができる。各ピクセルは、単にカラーパレットの色のインデックスを参照するだけである。この方法は、ポスタリゼーション階調変更を回避するためにディザリングと組み合わせることができる。クロマサブサンプリングは、画像内の色差情報の半分以上を落とすことにより、目が色よりも明るさをより鮮明に知覚するという事実を活用する。変換符号化は、おそらく最も一般的に使用される画像圧縮方法である。変換符号化は、典型的には、量子化とエントロピー符号化に続いて、離散コサイン変換DCTやウェーブレット変換などのフーリエ関連変換を適用する。フラクタル圧縮は、特定の画像において、画像の一部が同じ画像の他の部分に似ているという事実に依存する。フラクタルアルゴリズムは、これらの部分、より正確には、幾何学的な形を、符号化画像を再生成するために使用されるフラクタル符号と呼ばれる数学的データに変換する。画像圧縮204は、画像201の特定の部分が他の部分よりも高品質で符号化された関心領域の符号化を含んでもよい。関心領域符号化は、画像201の特定部分が最初に符号化され、他の部分は後で符号化されることを可能にするスケーラビリティ機能と組み合わせることができる。圧縮データは、画像を分類、検索または閲覧するために使用することができる画像に関する情報時にはメタ情報やメタデータとも呼ばれるを含むこともある。このような情報は、色やテクスチャの統計、小さなプレビュー画像および著者/著作権情報を含むこともある。例として、限定するものではないが、符号204における画像圧縮過程で、エンコーダは、ピクセルのブロックを圧縮するための最良の方法を探索してもよい。エンコーダは、良いマッチングを求めて、現在のパディングされたピクチャを含む参照ピクチャリスト203においてすべての参照ピクチャを探索することができる。現在の画像がイントラピクチャとして符号化されている場合、パディングされたピクチャだけが参照リストで利用可能である。符号204における画像圧縮は、符号206における動き補償の過程で1以上の参照ピクチャパディングされたピクチャを含むとともに後で使われる三次元動きベクトルMVと変換係数207を生成する。画像圧縮204は、一般的に最良のインター予測マッチングを求めるモーション探索MS、最良のイントラ予測マッチングを求めるイントラ探索IS、現在のマクロブロックがインター符号化であるかイントラ符号化であるかを決定するためのイントラ/インター比較C、および、可逆残差ピクセル205の形式において予測誤差を算出するために最もマッチングのとれた予測ピクセル値で符号化されたセクションから元の入力ピクセルの値を引く減算Sを含む。残差ピクセルはその後、変換係数207を生成するために、変換及び量子化XQを受ける。この変換は、典型的には、離散コサイン変換DCTなどのフーリエ変換又はフーリエライクな変換に基づいている。イントラピクチャが符号化されるべきである場合は、既存のビデオ規格については、動き探索MS及びイントラ/インター比較Cはオフになる。しかし、本発明の実施の形態では、パディングされた画像が参照として利用可能であるから、これらの機能はオフにされない。これにより、画像圧縮204は、イントラ符号化ピクチャとインター符号化ピクチャに対して同じになる。動き探索MSは、通常、インター符号化ピクチャに対して行われているように、動き補償のための最良のマッチングセクションを求めてピクチャ201を探索することにより、三次元動きベクトルMVを生成することができる。現在のピクチャ201がイントラ符号化ピクチャである場合は、対照的に、既存のコーデックは通常、ピクチャ間を横切った予測を許さない。その代わり、すべての動き補償は、通常、イントラピクチャと、変換係数を生成して画素予測を行うことによって符号化されたピクチャとに対して、オフになる。しかしながら、本発明の実施の形態では、イントラピクチャは、現在のピクチャのセクションを同じピクチャ内の別のオフセットセクションと照合することによってインター予測を行うために使用することができる。二つのセクション間のオフセットは、符号206における動き補償のために使用することができる予測パラメータ、例えば動きベクトルMV’三次元動きベクトルであってもよいとして符号化することができる。一例として、次に、エンコーダは、イントラピクチャにおけるセクションを同じピクチャ内の他のオフセットセクションと照合して、三次元動きベクトルMV’としてこれら二つのセクション間のオフセットの符号化を試みる。インターピクチャに対するコーデックの通常の動きベクトル補償は、イントラピクチャに動きベクトル補償を行うために使用することができる。ある既存のコーデックは、2つのセクション間のオフセットを、符号206における動き補償を行うために追跡される動きベクトルに変換することができる機能を有している。しかしながら、これらの機能は、従来は、イントラピクチャの符号化に対してはオフにされる。本発明の実施の形態では、コーデックは、イントラピクチャの符号化のためのそのようなインターピクチャの機能をオフにしないように指示されてもよい。本明細書で使用されるように、動き補償処理は、参照画像を現在処理中の画像に変換する観点でピクチャを説明するための技術を指す。一般的には、動き補償206は、符号化処理200を実施するエンコーダ内のローカルデコーダとして作用する。具体的には、動き補償206は、画像圧縮204からの動きベクトルMVまたはMV’と参照リストのピクチャからの参照ピクセルを使用して予測ピクセルPPを取得するためのインター予測IP1およびオプションでイントラ予測IP2を含む。実際問題として、2つの予測IPIとIP2のどちらか一方のみが予測ピクセルPPを生成するために選択されることから、イントラ予測はオプションであることに留意されたい。画像圧縮204からの変換係数207を用いた逆量子化及び逆変換IQXは、予測されたピクセルPPに追加される不可逆残差ピクセル205Lを生成し、復号された画素209を生成する。復号化されたピクセル209は、参照ピクチャ内に挿入され、現在処理中のピクチャ201の後続のセクションに対する画像圧縮204及び動き補償206で使用するために利用可能である。デコードされたピクセルが挿入された後、参照画像における未復号ピクセルはパディング202を受ける。従来のエンコーダでは、現在のピクチャがイントラ符号化されている場合は、動き補償に使用することができる他の画像が存在しないため、動き補償206のインター予測の部分はオフにされる。しかしながら、本発明の実施の形態では、対照的に、動き補償は、特定のピクチャがインター符号化されるかイントラ符号化されるかには関係なく、任意のピクチャ201上で実行される。本発明の実施形態では、たとえ、現在処理中の画像がイントラ符号化されるべきものであっても、方法200を実施するエンコーダは、参照ピクチャリスト203にパディングされたピクチャを追加するように修正され、動き補償206のインター予測の部分はオフにならない。その結果、インター符号化されるセクションとイントラ符号化されるセクションの両方に対する処理フローは、動き補償206の過程において同じである。唯一の大きな違いは、符号化に使用する参照ピクチャの選択である。一例として、限定するものではないが、あるタイプの三次元動き補償では、各画像は、ピクセルのブロックたとえば16×16画素のマクロブロックに分割される。各ブロックは、参照フレーム内の同じ大きさのブロックから予測される。ブロックは、三次元運動すなわち、3次元シフト、3次元回転のパラメータ化を通して予測ブロックの位置に変換される。ブロックはまた、光の強度と光の拡散のパラメータ化を通じて予測ブロックの色特性を呈する。これらの三次元の動きや色特性の変化は三次元動きベクトルMVによって表される。周辺ブロックのベクトル間の冗長性を利用するためには、例えば、複数のブロックで覆われた単一移動物体に対してビットストリーム内の現在の三次元動きベクトルと以前の三次元動きベクトルの間の差分だけを符号化することが一般的である。この差分処理の結果は、パンpanすることが可能なグローバル動き補償と数学的には等価である。さらに、符号化パイプラインの下流で、方法200は、オプションとして、エントロピー符号化208を使用して、ゼロベクトル周りでの動きベクトルの統計的分布を利用することにより、出力サイズを減らすことができる。ブロックを画素の非整数倍でシフトすることが可能であり、サブピクセル精度と呼ばれる。中間のピクセルは近隣のピクセルを補間することによって生成される。一般に、ハーフピクセル又はクォーターピクセル精度が使用される。サブピクセル精度の計算コストは、補間に必要な追加の処理のゆえに非常に高く、エンコーダ側では評価されるべき潜在的なソースブロックの数がはるかに大きい。三次元動き補償は、現在符号化している画像を非重複ブロックに分割し、それらのブロックが参照画像内のどこから来たかを示す三次元動き補償ベクトルを算出する。参照ブロックは、典型的には、ソースフレームにおいて重複する。ビデオ圧縮アルゴリズムは、参照画像リスト203内の複数の異なる参照画像の部分から現在の画像を組み立てる。ソースフレームは、現在のフレームの元の入力ピクセルを含むフレームを指す。現在の入力フレームは、複数の参照画像によって予測することができる。入力画素ブロックは、ときには、複数の参照画像によって予測されることがある。パディング202、画像圧縮204、動き補償206、オプションでエントロピー符号化部208の結果は、符号化画像211である。動きベクトルMVおよび/またはイントラ予測モード動きベクトルMV’と変換係数207は、符号化ピクチャ211に含まれる。各デジタル画像201は、パディング202、画像圧縮204、および動き補償206を受けるため、同時にデコーダエミュレータ213に供給される。デコーダエミュレータ213は、その特定のデジタルピクチャ202に関連付けられた三次元動きベクトルが利用可能でなくても、デジタルピクチャ202に関して復号処理をシミュレートする。代わりに、デコーダエミュレータ213は、単に、既に復号された画像およびピクセル例えば、参照画像リスト203からのものを使用して、デジタルピクチャまたはそのセクションに対する三次元動きベクトルMV’’を独立に決定する。デコーダエミュレータによって決定される三次元動きベクトルMV’’は次に、エンコーダによって決定された三次元動きベクトルMV、MV’と比較される。デコーダエミュレータによって決定された三次元動きベクトルMV’’が、エンコーダによって導出された三次元動きベクトルMV、MV’のそれと等価な1以上の予測パラメータを含むならば、エンコーダは、最終的な符号化ピクチャ215を送信する際、これらの予測パラメータをスキップすることができる。エンコーダはまた、デコーダエミュレータによって決定された三次元動きベクトルMV’’を使用して最終的に符号化されたピクチャ215内の追加情報を符号化し、省略された予測パラメータを見つける際にデコーダを案内することができる。一例として、これに限定するものではないが、追加情報には、デコーダが探索すべき各予測パラメータの値の範囲、デコーダが動きベクトルMV、MV’を決定するために探索すべき範囲の隣接ピクセルのインデックス、エンコーダの三次元動きベクトルMV、MV’とデコーダエミュレータの三次元動きベクトルMV’’との間の差、あるいはこれらの組み合わせを含む。デコーダに画素予測業務のある部分を委任することにより、かなりの数のビットが符号化処理で保存される。これにより、デジタル画像を符号化するためのより複雑な予測方法を使用して、より高い予測精度でより効率的なエンコード/デコードのスキームをもたらすことが可能になる。いったんピクチャが図2Aに示すように符号化されると、それは送信され、本発明の別の実施の形態に従って復号される。本発明の実施の形態によるピクチャ復号は、図2Bに示すように、方法220に従って進められる。符号222に示すように、ピクチャの未復号の部分は、パディングされたピクチャ221’を生成するためにパディングされる。図2Aに関して上述したように現在のピクチャ221が符号化されている場合、三次元動きベクトルMVまたはイントラモード三次元動きベクトルMV’のいくつかの構成要素は、現在のピクチャがインター符号化されているかイントラ符号化されているかに関係なく、符号224に示すように、現在のピクチャ221から抽出される。三次元動きベクトルMV、MV’の抽出は、符号化ピクチャ221によって供給される三次元動きベクトルMV、MV’それが利用可能な場合を単に用いることによってなされてもよい。しかし、三次元動きベクトルMV、MV’または与えられたピクチャ221に対する三次元的動きベクトルMV、MV’に関連づけられた特定の予測パラメータが利用できない場合は、デコーダは、参照ピクチャ221’から以前に復号されたセクションを用いることにより、動きベクトルMVまたは省略された予測パラメータを探索する。ピクチャ符号化のタイプに応じて、参照ピクチャは、符号化されたピクチャ221とは異なる画像を含んでもよい。あるいは、以前に復号されたセクションは、現在デコードされている符号化画像221から来たものであってもよい。探索は、図2Aで説明したように、符号化されたピクチャ221において見つけられた追加情報例えば、デコーダが探索すべき各予測パラメータの値の範囲によって案内ガイドされてもよい。従来技術では、インターピクチャは、インターモード及びイントラモードの両方の機能を使用して符号化されうることに留意されたい。対照的に、イントラピクチャは、イントラモードの機能のみを使用して符号化される。本発明のある実施の形態において、インターモード及びイントラモードの両方の機能は、イントラピクチャ内の各個別セクションに対して許可されてもよい。その結果、同一のデータフローがイントラピクチャとインターピクチャの両方に用いられる。ビデオ処理パイプラインにおける一段階としてビデオ符号化または復号を考慮するなら、この方法の利点を理解することができる。イントラ及びインターピクチャの符号化または復号が同じプロセスを使用して、同じサイクル数を消費する場合、パイプライン全体がスムーズになる。いったん動きベクトルMVまたはMV’が抽出されたら、それを現在のピクチャ221の未復号の部分のピクセル予測226のために用いて、予測された画素225を生成する。ピクセル予測226は、パディングされたピクチャ221’からの参照ピクセル223を参照画素223として使用する。参照ピクセル223は、パディングされた画像221’のまだパディングされていない部分から来るかもしれない。また、パディング処理222で得られたピクセルは、参照画素223として用いてもよい。ピクセル予測226には、インター符号化ピクチャとイントラ符号化ピクチャの両方に対するインター予測及びイントラ予測の両方が含まれる。特に、ピクセル予測226は、上述のように生成された、従来のインターモードの動きベクトルMVまたはイントラモードの動きベクトルMV’を使用することができる。符号226におけるピクセル予測に関連して、復号方法220を実施するデコーダは、符号228で示されるように現在のピクチャ221から変換係数を抽出し、符号230で示されるように変換係数から残留ピクセル227を計算することができる。符号232で示すように、たとえば、単純な加算によって、予測されたピクセル225および残留画素227を結合して復号されたピクセル229を生成する。符号234で、復号が終了していない場合、符号236で示すように、現在のピクチャ221の次の部分に対する復号に進む。一旦復号が完了すると、後処理が符号238に示すように復号されたピクセル229上で実行されてもよい。後処理の例としては、これに限定されないが、デブロッキング、自然なノイズ低減、符号化誤差ノイズリダクション、色強調、色空間変換、インターレースプログレッシブ変換、フレームレート変換、ピクチャサイズスケーリング、アルファブレンディングおよび3次元オブジェクトラッピングがある。あるセクションが現在処理しているセクションから十分に離れており、その結果、参照ピクセルのソースとして用いられることがないならば、当該セクションに対して後処理ポスト処理が典型的には行われる。あるセクションをピクセル予測のために使うかどうかを決定することは、符号234における決定の一部である。いったん後処理が全ての画素に対して終了すると、符号240に示すように、前述のプロセスを別のピクチャに対して繰り返してもよい。なお、符号234における復号が終了したか否かの判定の性質は、現在のピクチャのピクセルが後処理の前か後に参照画素として使用されるかどうかに依存することに留意されたい。最良の予測を達成するためには、後処理の後に現在のピクチャのピクセルを用いることが好ましい。そのような場合、現在のセクションからのピクセルの後処理は、現在のセクションに対するピクセル予測の後であって、未来のセクションに対するピクセル予測の前に起こるかもしれない。しかしながら、最も単純な実装を実現するためには、参照ピクセルとして後処理をする前のピクセルを用いることが好ましい。さもなければ、後処理された現在のピクチャのピクセルを、次のマクロブロックを復号する前に各マクロブロックにフィードバックしなければならなくなるからである。そのような場合には、現在のセクションに対するピクセル予測が完了した後であるが、現在のセクションに対するピクセルの後処理の前に、未来のセクションの復号を開始することができる。好ましい実施の形態では、後処理の前のピクセルは、同一ピクチャのマクロブロックのインター予測に対する参照画素として用いられる。このような場合には、デブロッキングのような後処理をまだ受けていない復号されたマクロブロックからパディングピクセルをコピーしてもよい。いくつかのケースでは、例えば、コンピュータ生成された人工的なコンテンツを含み、参照ピクセルのソースとして現在のピクチャの部分を使用するイントラ符号化ピクチャ及びインター符号化ピクチャは、他の予測モードよりも良い予測をもたらす。しかし、すべての既存のビデオ符号化規格によると、イントラ符号化されたピクチャに対して参照として現在のピクチャを使用することは、許されていない。現在のピクチャから最良の予測を得る可能性は低いため、これは、カメラで撮影された自然のシーンや低解像度ピクチャのためには明白な解決策ではありません。しかしながら、それでも、インター符号化ピクチャおよびイントラ符号化ピクチャの両方に対する簡略化された処理フローの利点の恩恵を受けることができる。図3は、ストリーミングデータ301を復号する方法300におけるありうる処理フローの例を示す。この特定の例は、たとえばAVCH.264標準を使用したビデオ復号の処理フローを示す。符号化されたストリーミングデータ301は、最初にバッファに格納される。符号化されたストリーミングデータ301例えば、ビデオデータビットストリームがネットワーク、例えば、インターネットで転送された場合、データ301は、符号302で示されように、最初はネットワーク抽象化レイヤNAL復号と呼ばれる処理を経る。NAL復号は、データを送信する際に補助するために追加された情報をデータ301から除去する。ネットワークラッパーと呼ばれるこのような情報は、データ301をビデオデータとして特定したり、ビットストリームの先頭または末尾、データの配置のビット、及び/又はビデオデータ自体に関するメタデータを示す。また、例示的に、ネットワークラッパーは、例えば、解像度、画像表示形式、データを表示するためのカラーパレット変換行列、各ピクチャのビット数に関する情報、スライスやマクロブロックに関する情報を含むデータ301に関する情報、スライスの開始または終了を示すデータなど、低レベルの復号に使用される情報を含んでいてもよい。この情報は、単一のセクション内のタスクグループの各々に渡すべきマクロブロックの数を決定するために使用される。その複雑さのゆえに、NAL復号は、典型的にはピクチャとスライスのレベルで行われる。NAL復号に対して使用される最小NALバッファは、通常スライスのサイズのである。幸いなことに、NAL復号処理302は、比較的低いサイクル数である。従って、NAL復号処理302は、単一のプロセッサ上で実行されてもよい。いくつかの実施の形態では、符号302におけるNAL復号後、図3で説明される残りの復号処理は、ここではビデオ符号化レイヤVCL復号304、動きベクトルMV再構築310及びピクチャ再構築314と呼ばれる3つの異なるスレッドグループまたはタスクグループにおいて実施される。ピクチャ再構築タスクグループ314は、ピクセル予測および再構築316と後処理320を含む。本発明のいくつかの実施の形態において、これらのタスクグループは、データ依存性に基づいて選択され、その結果、後続の処理のためにマクロブロックが次のタスクグループに送信される前に、各タスクグループがピクチャ例えば、フレームまたはフィールドまたはセクション内のすべてのマクロブロックの処理を完了できるようになる。特定のコーデックは、空間領域から周波数領域へのピクセル情報の変換を伴うデータ圧縮の形式を使用してもよい。そのような変換は、特に、離散コサイン変換DCTとして知られている。このような圧縮データの復号処理は、周波数領域から空間領域に戻す逆変換を伴う。DCTを使用して圧縮されたデータの場合、逆変換は逆離散コサイン変換IDCTとして知られている。変換されたデータは、時々、離散変換されたデータの数値を表すのに使用されるビット数を減らすために量子化される。例えば、番号1、2、3を全て2にマッピングし、数字4,5,6を全て5にマッピングしてもよい。データを解凍するためには、周波数領域から空間領域への逆変換を行う前に逆量子化IQとして知られる処理が用いられる。VCLIQ/IDCT復号処理304のデータ依存関係は、典型的には、同じスライス内のマクロブロックに対するマクロブロックレベルにある。従ってVCL復号処理304によって生成される結果をマクロブロックレベルでバッファリングしてもよい。VCL復号304は、多くの場合、VCL構文を復号するために使用されるエントロピー復号306と呼ばれる処理を含む。AVCH.264のような多くのコーデックは、エントロピー符号化と呼ばれる符号化レイヤを使用する。エントロピー符号化は、符号長が信号の確率に一致するように、信号に符号を割り当てる符号化方式である。典型的には、エントロピーエンコーダは、等しい長さの符号で表されるシンボルを、確率の負の対数に比例した符号で表されるシンボルで置き換えることによってデータを圧縮するために使用される。AVCH.264は、2つのエントロピー符号化方式、コンテキスト適応可変長符号化CAVLC、およびコンテキスト適応バイナリ算術符号化CABACをサポートする。CABACはCAVLCよりも約10以上の圧縮を提供する傾向があるため、CABACは、AVCH.264ビットストリームを生成する際に多くのビデオエンコーダで好んで利用されている。AVCH.264符号化されたデータストリームのエントロピーレイヤを復号することは計算量が大きくなるため、汎用マイクロプロセッサを使用してAVCH.264符号化されたビットストリームをデコードする装置に対しては困難な課題があるであろう。ブルーレイやHD-DVD規格の目標とされた高ビットレートストリームを復号するために、ハードウェアは非常に高速で複雑にする必要があり、システム全体のコストが本当に高いものとなるかもしれない。この問題に対する一つの一般的な解決策は、CABAC復号のための特別なハードウェアを設計することである。あるいは、エントロピー復号をソフトウェアで実装してもよい。エントロピー復号のソフトウェア実装の一例は、譲受人に譲渡された米国特許7554468号に見出すことができ、その内容は参照により本明細書に組み込まれる。エントロピー復号306に加えて、VCL復号処理304は、符号308で示すように逆量子化IQおよび/または逆離散コサイン変換IDCTを含む。これらの処理は、ヘッダ309とマクロブロックからのデータを復号する。復号されたヘッダ309は、隣接マクロブロックのVCL復号を補助するために用いられる。VCL復号304は、マクロブロックレベルのデータ依存頻度で実施される。具体的には、同じスライス内の異なるマクロブロックが並列にVCL復号を受け、その結果は、さらなる処理のために動きベクトル再構成タスクグループ310に送信される。続いて、ピクチャまたはセクション内のすべてのマクロブロックは、動きベクトル再構築310を受ける。MV再構築処理310は、所与のマクロブロック311および/または同位置のマクロブロックヘッダ313からのヘッダを用いた動きベクトル再構築312を含む。また、動きベクトル再構築312は、図2Aおよび図2Bで前述したように、デコーダによるガイド付き探索により実装されてもよい。3次元動きベクトルは見かけの運動例えば、3次元シフトまたは回転だけでなく、ピクチャ内の色特性例えば、光の強さと拡散を記述することができる。このような動きベクトルは、以前のピクチャのピクセルとピクチャからピクチャへのそれらのピクセルの相対運動の知識に基づいたピクチャまたはその一部の再構築を可能にする。いったん動きベクトルが回復されると、ピクセルは、符号316において、VCL復号処理304からの残留ピクセルとMV再構築処理310からの動きベクトルに基づいたプロセスを使用して再構築することができる。MVに対するデータ依存頻度および並列処理のレベルは、MV再構築処理310が他のピクチャからの同じ位置のマクロブロックに関係するかどうかに依存する。他のピクチャからの同じ位置のMBヘッダに関係しないMV再構築に対しては、MV再構築処理310は、スライスレベル又はピクチャレベルで並列に実装することができる。同じ位置のMBヘッダに関係するMV再構築に対しては、データ依存頻度はピクチャレベルであり、MV再構築処理310はスライスレベルで並列処理を実現することができる。動きベクトル再構築310の結果は、ピクチャの頻度レベルで並列化することができるピクチャ再構築タスクグループ314に送られる。ピクチャ再構築タスクグループ314内では、ピクチャまたはセクション内のすべてのマクロブロックは、デブロッキング320と併せてピクセル予測および再構築316を受ける。ピクセル予測および再構成タスク316とデブロッキングタスク320は復号効率を高めるために並列化することができる。これらのタスクは、データ依存関係に基づいて、マクロブロックレベルでピクチャ再構築タスクグループ314内で並列化される。例えば、ピクセル予測及び再構築316は1つのマクロブロックに対して行われ、デブロッキング320がその後に続く。デブロッキング320により得られた復号されたピクチャからの参照ピクセルは、後続のマクロブロック上のピクセル予測及び再構築316で使用される。ピクセル予測及び再構築318は復号されたセクション319例えば、復号されたブロックまたはマクロブロックを生成する。セクション319は、後続のマクロブロックに対するピクセル予測および再構築処理318への入力として使用される近傍ピクセルを含む。ピクセル予測と再構築316に対するデータ依存関係のゆえに、同じスライス内のマクロブロックに対するマクロレベルでの並列処理がある程度可能になる。本発明の実施形態において、ピクセル予測は、既に復号されたピクチャからのピクセルの代わりに参照ピクセルとして復号化される現在のピクチャ内のピクセルを使用してもよい。復号されていない任意の参照ピクセルは、既に復号された現在のピクチャ内のピクセルから決定することができるパディングピクセルに置き換えられてもよい。まだピクセルが復号されていない場合、上述のように、パディングピクセルの値は任意に決定することができる。ブロック符号化技術が使用されるブロック間で形成される鋭いエッジを平滑化することによって画質と予測性能を向上させるために、後処理タスクグループ320は、復号されたセクション319内のブロックに適用されるデブロッキングフィルタ322を含む。デブロッキングフィルタ322は、得られたデブロックされたセクション324の外観を改善するために使用することができる。復号化されたセクション319またはデブロックされたセクション324は、隣接マクロブロックをデブロッキングする際に使用するための隣接画素を提供する。さらに、現在復号中の画像からのセクションを含む復号されたセクション319は、後続のマクロブロックに対するピクセル予測及び再構築318のための参照ピクセルを提供する。ピクチャがインター符号化であるかイントラ符号化であるかにかかわらず、現在のピクチャ内からのピクセルが上述したように同じ現在のピクチャ内のピクセル予測のために使用されるのは、この段階である。デブロッキング320は、同じピクチャ内のマクロブロックに対してマクロブロックレベルで並列化することができる。復号されたセクション319は後処理320の前に生成され、後処理されたセクション324は、同じバッファ、たとえば、関係した特定のコーデックに応じた出力ピクチャバッファに格納される。なお、デブロッキングは、H.264における後処理フィルタであることに留意されたい。H.264は、デブロッキング前のマクロブロックを、隣接するマクロブロックのイントラ予測と、未来のピクチャマクロブロックのインター予測に対するデブロッキング後のマクロブロックの参照として、使用するからである。デブロッキング前とデブロッキング後の両方のピクセルが予測に用いられるため、デコーダまたはエンコーダは、デブロッキング前のマクロブロックとデブロッキング後のマクロブロックの両方をバッファリングする必要がある。最も低コストの民生用アプリケーションでは、メモリ使用量を減らすために、デブロッキング前のピクチャとデブロッキング後のピクチャは同じバッファは共有する。MPEG2やMPEG4part10注:H.264もMPEG4パート10と呼ばれるを除くMPEG4などの以前のH.264規格に対しては、後処理の前のマクロブロック例えば、デブロッキング前のマクロブロックだけが、他のマクロブロックの予測のための参照として使用される。そのようなコーデックでは、フィルタ処理前のピクチャは、フィルタ処理後のピクチャと同じバッファを共有することはない。したがって、H.264に対しては、ピクセル復号の後、復号化されたセクション319は、出力画像バッファに保存される。その後、後処理されたセクション324は、出力ピクチャバッファにある復号化されたセクション319を置き換える。非H.264の場合は、デコーダは出力ピクチャバッファに復号化されたセクション319を保存するだけである。後処理は、表示時に行われており、後処理の出力はデコーダ出力ピクチャバッファと同じバッファを共有することはない。ほとんどのマルチプロセッサのハードウェアoプラットフォームでは、プロセッサ間のデータアクセス遅延は、ビデオピクチャ間の時間間隔よりも短い。しかしながら、少数の並列処理エンジンだけが、マクロブロック処理速度よりも速くプロセッサ間のデータ転送を行うことができる。ピクチャ頻度で二つのタスクにデータ交換をさせることが無難である。図3に関して上述したピクチャ頻度依存性に基づいて、5つの独立したタスクにデコード処理300を分割することが可能です。これらのタスクは、ANAL復号302およびデコーダ内部管理、BVCL構文復号とIQ/IDCT304、C動きベクトル再構築310、およびDピクセル予測と再構築316、およびEデブロッキング320である。一般に、NAL復号はピクチャまたはスライスレベルのデータ依存頻度で行うことができる。AVCH.264などのコーデックでは、NAL復号302に関わるデータ依存関係がかなり複雑でありが、それでも全体のNAL復号処理302は比較的低いサイクル数になる。その結果、この処理を並列化するよりは、単一のプロセッサにおいてすべてのNAL復号302を実装する方が効率的である。動きベクトル構築タスク310は、典型的にはVCL構文復号とIQ/IDCT304、ピクセル予測と再構築316とデブロッキング320に比べて約10分の1のプロセッササイクルになる。後者の3つのタスクの計算複雑さはかなり類似する。しかしながら、異なる符号化ビデオストリームに対して、これら3つのサイクル数の大きいタスク間の実行サイクルの割り当ては異なる。VCL構文復号とIQ/IDCT304内では、各スライス内のマクロブロックレベルのデータ依存関係だけがある。このタスクに対して、スライスは互いに独立であるとして処理される。動きベクトル再構築タスク310は、入力用のVCL構文復号およびIQ/IDCT304の出力に依存する。ピクセル予測および再構築タスク316は入力としてVCL構文復号とIQ/IDCTタスク304と動きベクトル再構築タスク310の出力をとる。動きベクトル再構築タスク310とピクセル予測および再構築タスク318内では、マクロブロックレベルのデータ依存関係があるが、1ピクチャ内のスライスは互いに独立である。ピクセル予測および再構築タスク316は、動き補償を含む。ピクセル予測および再構築タスク316におけるピクチャ依存性は、このような動き補償に起因する可能性がある。上述したように、動き補償は、通常、現在の画像を予測するために以前に復号されたピクチャを使用する処理である。動き補償処理では、3次元ベクトルは、動きベクトルと呼ばれ、以前に復号されたピクチャ内のピクセルを参照するために使用される。動きベクトル再構築タスク310におけるピクチャレベル依存性はダイレクト予測によって引き起こされる。ダイレクト予測では、以前に復号されたマクロブロックの動きベクトルを用いて現在のマクロブロックの動きベクトルを計算する。従来からではあるが、参照されるマクロブロックは、現在のマクロブロックの同じ位置で以前に復号された参照ピクチャである。本発明の実施の形態では、対照的に、現在のピクチャ内のセクションたとえば、ブロックまたはマクロブロックを参照として使用する。AVCデコーダにおいて、以前に復号された参照ピクチャは、デブロッキングタスク320の出力である。符号化標準により定義された動きベクトル範囲の制限のゆえに、以前のピクチャのピクセルがすべて、現在のピクチャにおける特定のマクロブロックを予測するために利用可能であるわけではない。例えば、AVCレベル4.1ストリームの動きベクトルの範囲は垂直方向-512~511.75ピクセル、水平方向-1024~1023.75ピクセルである。ピクチャサイズが1920×1088ピクセルであれば、参照ピクチャ内のピクセルの約四分の一を角のマクロブロックの予測のために使用することができる。対照的に、参照画像内のほとんどすべてのピクセルを、中心のマクロブロックの予測のために使用することができる。図3に示す例では、VCL復号とIQ/IDCTタスク308その他のタスクとの間には依存関係のループがないことに留意する。このように、VCL復号タスク304、動きベクトル再構築タスク310、またはピクセル予測および再構築タスク316のいずれかまたはすべてにこのタスクをマージして、このタスクの負荷を使用可能なプロセッサ間で分散させることができる。ブロックにはDCT係数を持っていないものもあるため、ブロック構文復号ループにIQ/IDCTタスク308をマージすることにより、デコーダが符号化ブロックのためだけにIQ/IDCTを行い、分岐の数を減らすことができるようになる。イントラ予測画像のコンテキストでは、動き探索に基づく予測は必ずしもエンコーダの助けを得ても正確な結果をもたらさないことがある。図4は、動き探索に基づく予測が満足な結果を提供することに失敗したときのイントラ画像予測の代替方法を説明する。以前に復号された画像の参照面が制限された解像度を持つ限られた数のピクセルで表される場合、サブピクセル補間を用いて、欠落しているピクセル位置のピクセル値を計算することができる。典型的には、サブピクセル補間を行うために線形フィルタが使用される。例えば、AVCデコーダはサブピクセル補間を行うために3つのフィルタパラメータをもつ6タップフィルタを使用する。一般的には、フィルタタップの数を増やせば、より良い結果を生成するが、より多くのパラメータを使用することになる。フィルタを異なるビデオコンテンツと異なる方向で使用するために適応させる必要がある。デコーダが最良の補間フィルタを探索するために復号された隣接ピクセルを使用することができる場合、エンコーダは、ストリームにおいてフィルタパラメータの符号化をスキップすることができ、より複雑なフィルタを使用することで、画像圧縮が可能になる。ほとんどのコンピュータ生成されたビデオシーケンスの場合、GPUは、ピクセル予測及び再構築を実行するために2×2のような小さなブロックサイズを使用する。2×2のブロック予測を許容する利点として、特に予測精度がより高い点がある。しかしながら、従来技術のビデオ符号化規格では、動きベクトルの非常に大きな符号化コストのゆえに、最小の予測ブロックサイズは4×4である。本発明の実施の形態では、デコーダが独立に生成することができるパラメータの送信を回避することによって、予測パラメータの符号化コストを大幅に低減することができる。その結果、より小さい予測ブロックサイズが可能となる。一般に、所与のピクチャの最初のセクションは、デフォルトのフィルタパラメータを用いて符号化又は復号することができる。しかし、最初のセクションの後に、そのピクチャに対する未来のすべてのセクションは、再構築されたピクセルと以前のセクションからの参照ピクチャを用いてエンコーダ/デコーダで探索された最良のフィルタパラメータを使用することができる。最良のフィルタと次善のフィルタとの間の差が比較的小さくなる傾向があるため、フィルタパラメータを送信する必要はないかもしれない。エンコーダは、デコーダエミュレータが未来のセクションのサブピクセル補間のために見つけることができるフィルタがあればそれを使用することができる。図4は、以前に復号されたセクションを使用して、デコーダ側で予測パラメータを確立する例を示す。図4において、画素ブロックF401は、復号化の過程にある。画素ブロックA~D403、405、407、409はすでに復号された同じ画像内の各隣接するブロックである。画素ブロックEは、画素ブロックFと同じ位置をとる画素ブロックであるが、以前に復号化されたピクチャにある。各画素ブロックは復号されたピクセル行列で表される。本発明のある実施の形態では、エンコーダは、隣接ブロックの一部または全部を使用することによって、動きベクトルとフィルタパラメータを含む一部またはすべての予測パラメータを探索するようにデコーダに指示する。上述したように、予測を確立するために使用される特定の隣接ブロックは、デコーダエミュレータを介してエンコーダによって決定される。次いで、デコーダは、どの隣接画素ブロックを用いてエンコーダから予測とフィルタパラメータを確立するべきかを示すガイドラインを受信する。デコーダが予測パラメータの探索を支援するエンコーダから他の情報を代わりに受信することができることに留意することが重要である。エンコーダまたはデコーダが先に復号されたセクションからフィルタまたは予測パラメータを探索することができる方法がいくつかある。例えば、デコーダ側、又はエンコーダ内部のデコーダエミュレータにおいて、フィルタの候補セットを、以前のピクチャセクション予測で使用された参照ピクセルのブロックに適用することができる。そして、これらのフィルタの各々の出力結果は、対応する予測誤差を生成するために、以前のセクションからの再構成ピクセルと比較することができる。最良のフィルタは最小の予測誤差を発生させるものである。この最良のフィルタは、未来のセクションもし存在するならに対するピクセル予測を生成するために使用することができる。本発明の実施の形態は、上述したタイプのエンコーダ/デコーダを実装するように構成されたコンピュータ装置を含む。一例として、限定するものではないが、図5は、本発明の実施の形態に係るビデオ符号化方式を実装するために用いられるコンピュータ装置500のブロックダイアグラムを示す。装置500は、一般に、プロセッサモジュール501とメモリ502を備える。プロセッサモジュール501は1以上のプロセッサコアを含む。複数のプロセッサモジュールを用いるプロセッシングシステムの例は、セルプロセッサであり、その例は、たとえば、httpwww306ibmcomchipstechlibtechlibnsftechdocs1AEEE1270EA2776387257060006E61BAfileCBEA01pubpdfにおいてオンラインで参照可能なセルブロードバンドエンジンアーキテクチャに詳しく記述されており、その内容を参照によりここに組み込む。メモリ502は、例えば、RAM、DRAM、ROMなどの集積回路の形態を取ってもよい。そのメモリはまた、すべてのプロセッサモジュール501によってアクセス可能なメインメモリであってもよい。ある実施の形態では、プロセッサモジュール501は、各コアに関連付けられたローカルメモリを含む。コーダ符号化部プログラム503は、プロセッサモジュール501上で実行することができるプロセッサ読み取り可能なインストラクションの形態でメインメモリ502に格納されてもよい。コーダプログラム503は、たとえば図1Bに関して上述したように、ピクチャを圧縮された信号データに符号化するように構成され、また、たとえば図1Cに関して上述したように、圧縮された信号データを復号するように構成される。コーダプログラム503は、任意の適切なプロセッサ読み取り可能な言語、たとえば、C、C、JAVA登録商標、アセンブリ、MATLAB、フォートラン、および他の様々な言語で書かれる。コーダプログラム503は、図7に関して後述するように構成されたインストラクションを含む。特に、コーダプログラム503は、エンコーダ側インストラクション、デコーダ側インストラクション、またはエンコーダ側とデコーダ側両方のインストラクションを含む。入力データ507はメモリ502に格納されてもよい。コーダプログラム503の実行中、プログラムコードおよび/またはデータ507の一部は、メモリ502またはプロセッサ501に対するプロセッサコアのローカルストアにロードされる。一例であり、限定しないが、入力データ507は、符号化/復号前または符号化/復号の中間段階におけるビデオピクチャまたはそのセクションを含む。符号化の場合、データ507は、バッファされたストリーミングデータの一部、たとえば、未符号化ビデオピクチャまたはそのセクションを含む。復号の場合、データ507は、未復号のセクション、復号されたが後処理がなされていないセクション、および復号され後処理がなされたセクションの形式の入力データを含む。そのような入力データは、1以上のデジタルピクチャの1以上の符号化されたセクションを表すデータを有するデータパケットを含んでもよい。一例として、限定するものではないが、そのようなデータパケットは、変換係数の集合および予測パラメータの部分集合を含んでもよい。これらの様々なセクションは1以上のバッファに格納されてもよい。特に、復号され、および/または、後処理されたセクションは、メモリ502に実装された出力ピクチャバッファに格納されてもよい。装置500はさらに、入出力I/O装置511、電源P/S512、クロックCLK513およびキャッシュ514などの周知のサポート機能510を備えてもよい。装置500はオプションとして、プログラムおよび/またはデータを格納するためのディスクドライブ、CD-ROMドライブ、テープドライブなどの大容量記憶装置515を備えてもよい。装置500はまた、オプションとして、装置500とユーザの相互作用を容易にするために、ディスプレイユニット516およびユーザインタフェースユニット518を備えてもよい。ディスプレイユニット516は、テキスト、数値、グラフィカルシンボルや画像を表示する陰極線管CRT、またはフラットパネルスクリーンの形態であってもよい。ユーザインタフェース518は、キーボード、マウス、ジョイスティック、ライトペンや他の装置を備えてもよく、これらは、グラフィカルユーザインタフェースGUIと併せて使われてもよい。装置500はまた、ネットワークインタフェース520を含み、これにより、当該装置がインターネットのようなネットワーク上で他の装置と通信することが可能になる。これらの構成要素はハードウェア、ソフトウェア、ファームウェアまたはこれらの2以上の組み合わせによって実装される。装置500の複数のプロセッサを用いて並列処理を効率化する付加的な方法が多数ある。たとえば、2以上のプロセッサコア上でコードを複製し、各プロセッサコアに異なるデータ部分を処理させることによって、処理ループをアンロールunrollすることができる。そのような実装によって、ループ設定に関連するレイテンシを回避することができる。3以上のプロセッサエレメント上で並列処理を実装することのできるプロセッシングシステムの中の一つの例は、セルプロセッサとして知られる。セルプロセッサとして分類される多数の異なるプロセッサアーキテクチャがある。一例であり、これに限られないが、図6は、本発明のある実施の形態とともに用いることができるあるタイプのセルプロセッサ600を示す。セルプロセッサ600は、メインメモリ602、ひとつのパワープロセッサエレメントPPEpowerprocessorelement604、および8つのシナジスティックプロセッサエレメントSPEsynergisticprocessorelement606を備える。あるいは、セルプロセッサ600は任意の数のSPEで構成されてもよい。メモリ602、PPE604およびSPE606は、リングタイプのエレメント相互結合バス610上で互いに通信したり、I/Oデバイス608と通信することができる。メモリ602は上述の入力データ607と共通の特徴をもつ入力データ603と上述のコーダプログラム603と共通の特徴をもつコーダプログラム609を含む。少なくとも一つのSPE606は、復号インストラクション605および/または上述のように並列に処理されるべきバッファされた入力データの一部をローカルストアに含む。PPE604は、上述のコーダプログラム605と共通の特徴をもつコードインストラクション607をL1キャッシュに含む。インストラクション605およびデータ607は、SPE606および必要であればPPE604によってアクセスできるようにメモリ602に格納してもよい。一例として、PPE604は、関連するキャッシュを持つ64ビットパワーPCプロセッサユニットPPUであってもよい。PPE604はオプションとしてベクトルマルチメディア拡張ユニットを含んでもよい。各SPE606は、シナジスティックプロセッサユニットSPUとローカルストアLSとを備える。ある実装では、ローカルストアは、プログラムとデータのための約256キロバイトのメモリ容量を有する。SPUは、典型的にはシステム管理機能を実行しないという点で、PPUよりも単純な計算ユニットである。SPUは、SIMDsingleinstructionmultipledata機能を有し、典型的にはデータ処理を行い、割り当てられたタスクを行うためにPPEにより設定されたアクセス特性にしたがって要求されたデータ転送を開始する。SPUにより、システム600は、より高い計算ユニット密度を要求するアプリケーションを実装し、提供された命令セットを効率良く利用することができるようになる。PPE604によって管理されるシステム600の相当数のSPEによって、広範囲のアプリケーションにわたって費用対効果の高い処理が可能になる。一例として、セルプロセッサ600は、セルブロードバンドエンジンアーキテクチャCBEAによって特徴づけられる。CBEA準拠のアーキテクチャでは、複数のPPEを一つのPPEグループに結合してもよく、複数のSPEを一つのSPEグループに結合してもよい。例示のために、セルプロセッサ600を単一のSPEと単一のPPEをもった単一のSPEグループと単一のPPEグループをもつものとして図示している。あるいは、セルプロセッサは複数のPPEグループと複数のSPEグループを含んでもよい。CBEA準拠のプロセッサはたとえば、httpwww306ibmcomchipstechlibtechlibnsftechdocs1AEEE1270EA277638725706000E61BAfileCBEA01pubpdfにおいてオンラインで利用可能なセルブロードバンドエンジンアーキテクチャに詳細に記載されており、ここに参照により組み込む。本発明の実施の形態は、符号化されたストリーミングビデオのようなストリーミングデータの並列符号化のためのシステムと方法を提供する。そのような実施の形態は、たいていのビデオデコーダ、特に、H264AVCデコーダや、より具体的には、ビデオデコーダをモジュールとしてもつ製品に適用可能である。そのような製品の例には、限定しないが、ビデオゲームコンソール、DVDプレイヤ、ソフトウェアPCビデオデコーダ/プレイヤ、携帯電話のビデオなどが含まれる。別の実施の形態によれば、デジタル画像の3次元動き補償のためのインストラクションをコンピュータ読み取り可能な記憶媒体に格納してもよい。一例として、これに限られないが、図7は、本発明の実施の形態に係る持続的なコンピュータ読み取り可能な記憶媒体700の例を示す。記憶媒体700には、コンピュータプロセッシングデバイスが読み取って解釈することのできるフォーマットで格納されたコンピュータ読み取り可能な命令が含まれる。一例として、これに限られないが、コンピュータ読み取り可能な記憶媒7600は、RAMまたはROMのようなコンピュータ読み取り可能なメモリ、固定ディスクドライブたとえば、ハードディスクドライブに対するコンピュータ読み取り可能なストレージディスク、またはリムーバブルディスクドライブであってもよい。さらに、コンピュータ読み取り可能な記憶媒体700は、フラッシュメモリデバイス、コンピュータ読み取り可能なテープ、CD-ROM、DVD-ROM、ブルーレイ商標、HD-DVD、UMD、あるいは他の光記憶媒体を含む。記憶媒体700は、デジタル画像の符号化を容易にするように構成された符号化インストラクション701を含む。このインストラクションは、コンピュータプロセッサによって実行できる適当なプログラミング言語で符号化される。記憶媒体はまた、符号化インストラクション701にしたがって符号化されたデジタル画像の復号を容易にするように構成された復号インストラクション721を含む。符号化インストラクションと復号インストラクションの両方が便宜上示されていることに留意する。しかしながら、これは、本発明の限定として解釈されるべきではない。別の方法として、記憶媒体700は、符号化インストラクション701を含むが、復号インストラクション721を含まないものであってもよく、あるいは、符号化インストラクション701を含まないで復号インストラクション721だけを含むものであってもよい。記憶媒体700はまた、オプションとして、符号化インストラクション701と復号インストラクション721から分離することのできるディスプレイインストラクション731を含んでもよい。符号化インストラクション701は、たとえば図1Aを参照して上述したようなデジタルピクチャ符号化処理の一部を実装するように構成される。特に、符号化インストラクション701は、係数生成インストラクション703を含み、実行されると、符号化されるデジタルピクチャのセクションに対する予測誤差の集合から変換係数の集合を生成する。符号化インストラクション701はさらに、第1予測パラメータ値集合決定インストラクション705を含み、現在符号化中のセクションおよび同じまたは異なるピクチャからの以前に復号された参照セクションにもとづいてエンコーダ側で予測パラメータ値たとえば動きベクトルの集合を生成する。符号化インストラクション701はさらに、第2予測パラメータ値集合決定インストラクション707を含み、予測されたピクセルおよび1以上の以前に復号されたセクションの予測誤差を用いてデコーダエミュレータによって予測パラメータ値たとえば動きベクトルの異なる集合を生成する。予測されたピクセルと予測誤差が再構成されたピクセルを計算するために使われる。符号化インストラクション701はさらに、比較予測パラメータ集合インストラクション709を含み、これが実行されると、第3予測パラメータ値集合を特定するために第1予測パラメータ値集合が第2予測パラメータ値集合と比較される。ここで、第3予測パラメータ値集合は、第2集合にはない第1集合からの1以上のパラメータ値を特定する情報を含む。符号化インストラクション701はさらに、送信インストラクション711を含む。これが実行されると、コンピュータプロセッサは変換係数集合と第3予測パラメータ値集合を送信するが、予測パラメータ値の第1および第2集合の両方に共通する1以上のパラメータは省略される。変換係数と第3予測パラメータ値は、さらなる処理のために異なるデバイスまたは符号化プログラムの異なる部分に送信されることに留意する。復号インストラクション721が実行されたとき、コンピュータプロセッサは、1以上のデジタルピクチャの1以上の符号化されたセクションを表すデータが含まれた1以上のデータパケットを復号する。ここで、1以上のデータパケットは、変換係数の集合と予測パラメータの部分集合を含む。復号インストラクション721は、逆変換インストラクション723を含み、デコーダと一体となって変換係数に逆変換を適用して予測誤差値の集合を生成する。復号インストラクション721はまた、予測パラメータ生成インストラクション725を含み、実行されると、予測ピクセルの集合と1以上のデジタルピクチャの1以上の以前に復号されたセクションの予測誤差値を用いて、デコーダと一体となって1以上の推定された予測パラメータ値を生成する。復号インストラクション721はまた、予測置換インストラクション727を含み、実行されると、コンピュータプロセッサは、予測パラメータの部分集合から1以上の対応する予測パラメータを用いて1以上の推定された予測パラメータ値を置換し、予測パラメータの出力集合を生成する。復号インストラクション721はまた、復号セクション生成インストラクション729を含み、実行されると、予測誤差値の集合と予測パラメータの出力集合を用いてデコーダとともに1以上の復号されたセクションを生成する。本発明の実施の形態は、予測パラメータ値として格納されるか送信されるデータ量を減らすことによって、エンコーダ側で送信されるか、デコーダ側に格納されるデータ量を著しく減らすことができる改良されたビデオコーデックを提供する。本発明の好ましいバージョンを参照しながらかなり詳細に本発明を説明したが、他のバージョンも可能である。たとえば、予測パラメータが動きベクトルの成分である実施の形態を説明したが、本発明の実施の形態は、フィルタパラメータ、拡散値、光強度値、色差、輝度、その他の予測パラメータ値のような他の値が含まれる実装であってもよい。また、予測誤差に適用される変換が離散コサイン変換DCTである特定の実施の形態が記載されているが、本発明の実施の形態はそのような実装に限定されるものではない。他のフーリエ型変換又はウェーブレット変換を用いてもよい。したがって、添付の請求項の趣旨および範囲は、ここに含まれる好ましいバージョンの説明に限定されるべきではない。むしろ、本発明の範囲は、添付の請求項をその均等物の全範囲とともに参照することで決定されるべきである。この明細書添付の請求項、要約、図面を含めてに開示したすべての特徴は、明示的に断らない限り、同じ目的または等価ないしは類似の目的を達する代替的な特徴で置き換えることができる。したがって、明示的に断らない限り、開示された各特徴は、等価または類似の特徴の包括的な体系のほんの一例である。いずれの特徴も、好ましいかどうかを問わず、他の特徴と組み合わせてもよい。請求項において、明示的に断らない限り、各項目は1またはそれ以上の数量である。請求項において~のための手段のような語句を用いて明示的に記載する場合を除いて、請求項のいずれの構成も、35USC§112第6パラグラフに規定された手段またはステップとして解釈されるものではない。特に請求項において~のステップを用いても35USC§112第6パラグラフの規定を行使することを意図したものではない。この明細書と同時に提出され、この明細書とともに公衆の閲覧に付されたすべての書面に読者の注意は向けられるものであり、それらの書面の内容を参照によりここに組み込む。本発明の好ましい実施の形態を完全な形で説明してきたが、いろいろな代替物、変形、等価物を用いることができる。したがって、本発明の範囲は、上記の説明を参照して決められるものではなく、請求項により決められるべきであり、均等物の全範囲も含まれる。ここで述べた特徴はいずれも、好ましいかどうかを問わず、他の特徴と組み合わせてもよい。請求項において、明示的に断らない限り、各項目は1またはそれ以上の数量である。請求項において~のための手段のような語句を用いて明示的に記載する場合を除いて、請求項がミーンズプラスファンクションの限定を含むものと解してはならない。"