(57)【要約】【課題】運動評価の方法を提供すること。【解決手段】（Ａ）整数ピクセル解像度を有するビデオ信号の基準フレームの基準ブロックに作用する第１の補間プロセスに応答して、サブピクセル解像度を有する第１の補間されたブロックを生成し、（Ｂ）第１の補間されたブロックと整数ピクセル解像度を有するビデオ信号の現在フレームの現在ブロックとに応答して、運動ベクトルを生成し、（Ｃ）基準ブロックに作用する第２の補間プロセスに応答して、前記サブピクセル解像度を有する第２の補間されたブロックを生成することによって本発明による方法（１０２）が実現される。この方法は、補間・運動評価回路（１４２）、現在フレーム・メモリ回路（１４４）等を含む装置（１４０）によって実現される。【選択図】図４
2010081634.tif 000002
【特許請求の範囲】
【請求項１】
運動を評価する方法であって、
（Ａ）ビデオ信号の基準フレームの中にある第１の領域を識別して、前記ビデオ信号の現在フレームにおける現在ブロックに対する第１の運動ベクトルをサーチするステップと、
（Ｂ）前記第１の領域に近接して前記基準フレームを補間することに応答してサブピクセル解像度を有する第２の領域を生成するステップと、
（Ｃ）前記第１の領域に応答して整数のピクセル解像度で前記第１の運動ベクトルを生成するステップと、
（Ｄ）前記第２の領域に応答して前記第１の運動ベクトルを前記サブピクセル解像度に調節するステップと、
を含むことを特徴とする方法。
【請求項２】
請求項１記載の方法において、ステップ（Ｂ）とステップ（Ｃ）とは実質的に同時に実行されることを特徴とする方法。
【請求項３】
請求項１記載の方法において、前記第２の領域は前記第１の領域よりもそれぞれの方向において１ピクセル未満だけ大きいことを特徴とする方法。
【請求項４】
請求項１記載の方法において、ステップ（Ｄ）は
前記第１の運動ベクトルを中間ピクセル解像度に調節するサブステップと、
前記中間ピクセル解像度に応答して、前記第１の運動ベクトルを前記サブピクセル解像度に調節するサブステップと、
を含むことを特徴とする方法。
【請求項５】
請求項１記載の方法において、ステップ（Ｃ）は、
複数のブロック・サイズに対して複数の第２の運動ベクトルを生成するサブステップと、
前記第２の運動ベクトルに応答して前記第１の運動ベクトルを生成するサブステップと、
を含むことを特徴とする方法。
【請求項６】
請求項１記載の方法において、ステップ（Ｂ）は、
中間ピクセル解像度を有する前記第２の領域を生成するサブステップと、
前記整数のピクセル解像度で生成された前記第１の運動ベクトルに近接して、前記第２の領域の少なくとも一部を前記サブピクセル解像度に生成するサブステップと、
を含むことを特徴とする方法。
【請求項７】
ビデオ信号の基準フレームの中にある第１の領域を識別して、前記ビデオ信号の現在フレームにおける現在ブロックに対する第１の運動ベクトルをサーチするように構成された第１の回路と、
（ｉ）前記第１の領域に近接して前記基準フレームを補間することに応答してサブピクセル解像度を有する第２の領域を生成し、（ｉｉ）前記第１の領域に応答して整数のピクセル解像度で前記第１の運動ベクトルを生成して、（ｉｉｉ）前記第２の領域に応答して前記第１の運動ベクトルを前記サブピクセル解像度に調節するステップと、
を備えていることを特徴とする装置。
【請求項８】
請求項７記載の装置において、前記第２の領域の生成と前記第１の運動ベクトルの生成とは実質的に同時に実行されることを特徴とする装置。
【請求項９】
請求項７記載の装置において、前記第２の領域は前記第１の領域よりもそれぞれの方向において１ピクセル未満だけ大きいことを特徴とする装置。
【請求項１０】
請求項７記載の装置において、前記第２の回路は、更に、
前記第１の運動ベクトルを中間ピクセル解像度に調節し、
前記中間ピクセル解像度に応答して、前記第１の運動ベクトルを前記サブピクセル解像度に調節するように構成されていることを特徴とする装置。
【請求項１１】
請求項７記載の装置において、前記第２の回路は、更に、
複数のブロック・サイズに対して複数の第２の運動ベクトルを生成し、
前記第２の運動ベクトルに応答して前記第１の運動ベクトルを生成するように構成されていることを特徴とする装置。
【請求項１２】
請求項７記載の装置において、前記第２の回路は、更に、
中間ピクセル解像度を有する前記第２の領域を生成し、
前記整数のピクセル解像度で生成された前記第１の運動ベクトルに近接して、前記第２の領域の少なくとも一部を前記サブピクセル解像度に生成するように構成されていることを特徴とする装置。
【請求項１３】
運動を評価する方法であって、
（Ａ）ビデオ信号の基準フレームの中にある第１の領域を識別して、前記ビデオ信号の現在フレームにおける複数の異なるブロック・サイズに対する複数の運動ベクトルをサーチするステップと、
（Ｂ）前記第１の領域に近接して前記基準フレームを補間することに応答してサブピクセル解像度を有する第２の領域を生成するステップと、
（Ｃ）前記第１の領域に応答して整数のピクセル解像度で前記運動ベクトルを生成するステップと、
（Ｄ）前記第２の領域に応答して前記運動ベクトルを前記サブピクセル解像度に調節するステップと、
を含むことを特徴とする方法。
【請求項１４】
請求項１３記載の方法において、前記運動ベクトルの少なくとも２つが前記異なるブロック・サイズを有する複数の現在ブロックに対する運動を記述することを特徴とする方法。
【請求項１５】
請求項１３記載の方法において、ステップ（Ｂ）とステップ（Ｃ）とは実質的に同時に実行されることを特徴とする方法。
【請求項１６】
ビデオ信号の基準フレームの中にある第１の領域を識別して、前記ビデオ信号の現在フレームの現在ブロックに対する第１の運動ベクトルをサーチするように構成された第１の回路と、
（ｉ）前記第１の領域に近接して前記基準フレームを補間することに応答して前記第１の領域よりも大きくサブピクセル解像度を有する第２の領域を生成し、（ｉｉ）前記第１の領域に応答して整数のピクセル解像度で複数の第２の運動ベクトルを生成し、（ｉｉｉ）前記第２の領域と前記第２の運動ベクトルとに応答して前記第１の運動ベクトルを前記サブピクセル解像度で生成するように構成された第２の回路と、
を備えていることを特徴とする装置。
【請求項１７】
請求項１６記載の方法において、前記第２の運動ベクトルの少なくとも２つは異なるサイズを有する複数のブロックに対する運動を記述することを特徴とする方法。
【請求項１８】
請求項１６記載の方法において、前記第２の領域の生成と前記第２の運動ベクトルの生成とは実質的に同時に実行されることを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この出願は、２００２年１２月２０日に出願された米国特許出願（代理人ドケット番号０２−５７１０／１４９６．００２６３）の関連出願であり、この米国特許出願は、この出願においてその全体を援用する。
【０００２】
本発明は、広くは運動評価に関し、より詳しくは並列補間及びサーチ・エンジンを備えた運動評価エンジンに関する。
【背景技術】
【０００３】
デジタル・ビデオ・データの圧縮は、限定的な例示ではないが、衛星ブロードキャストなど大域幅に制約のあるチャネル上の伝送や光媒体への記憶などを含む、多くの応用例において実行される。非常に効率的な圧縮を実現するため、複雑で計算論的に集約的なプロセスを用いて、ビデオの符号化（圧縮）と復号化（解凍）とがなされる。例えば、ＭＰＥＧ２はビデオの圧縮のための非常に効率的な方法として知られているが、新しいより効率的な標準（すなわち、Ｈ．２６４）が開発されつつある。
【０００４】
符号化プロセスの一部として、いわゆる運動補償が含まれる。決定された運動ベクトルに基づき、エンコーダは、既に伝送された基準フレームからデータのブロックをフェッチし、符号化されるべきブロックと基準フレームからのブロックとの間の差を計算し、差を圧縮して伝送する。デコーダは、同じ運動ベクトルを用い、同じ基準ブロックをフェッチし、差情報を解凍して、基準ブロックに解凍された差を加える。
【０００５】
他の圧縮標準と同じく、Ｈ．２６４標準は、サブピクセル運動ベクトルを用いる。運動ベクトルの両方の成分（すなわち、水平成分と垂直成分）は、４分の１ピクセル・ユニットで与えられる。いずれかの成分が整数ピクセル・グリッド上に存在しないときには、エンコーダは、基準フレームを補間して、実際の整数ピクセルの間にある値を見出し、符号化されるべきブロックと基準フレームからの補間されたブロックとの間の差を計算し、その差を圧縮して伝送する。デコーダは、基準ブロックと解凍された差とを加算する前に、同じ補間を実行する。
【０００６】
図１を参照すると、ビデオ信号の１フレームの中にある従来型の８ｘ８ブロック２０の図解が示されている。ブロック２０の中の整数位置にあるピクセルは、文字Ｉで表されている。垂直方向には整数位置の上にあるが水平方向には２つの整数位置の間の中間にあるそれぞれのピクセル（すなわち、Ｈ）は、左側の整数位置にある３つの整数ピクセルＩと右側の整数位置にある３つの整数ピクセルＩとの重み付けされた和として計算される。これらのピクセルＨは、（１，１／２）ピクセルと称される。水平方向には整数位置の上にあるが垂直方向には２つの整数位置の間の中間にあるそれぞれのピクセル（すなわち、Ｖ）は、上側の整数位置にある３つの整数ピクセルＩと下側の整数位置にある３つの整数ピクセルＩとの重み付けされた和として計算される。これらのピクセルＶは、（１／２，１）ピクセルと称される。垂直方向には整数ピクセルの間の中間にあり水平方向にもピクセルの間の中間にあるそれぞれのピクセル（すなわち、Ｔ）は、（ｉ）上側にある３つの（１，１／２）ピクセルと下側にある３つの（１，１／２）ピクセルとの重み付けされた和と、（ｉｉ）左側にある３つの（１／２，１）ピクセルと右側にある３つの（１／２，１）ピクセルとの重み付けされた和とのいずれか一方として計算される。ピクセルＶ、Ｈ及びＴの計算により、ブロック２０は、半ピクセルの解像度を有する１６ｘ１６のピクセル・グリッドに変換される。
【０００７】
１／２の整数倍ではない垂直及び／又は水平成分を有する４分の１ピクセル解像度グリッド（すなわち、Ｑ）の上のピクセルは、半ピクセル解像度グリッドのピクセルＩ、Ｈ、Ｖ及びＴから計算される。ピクセルＱを生成するプロセスは、比較的単純であり、双線形（bi-linear）補間プロセスを含む。双線形補間プロセスでは、ピクセルＱを計算するの
に、半ピクセル・グリッドに隣接するものだけが用いられる。ピクセルＱを生成するための厳密なアプローチは、整数ピクセルＩに対する補間されたピクセルＱの位置に左右される。４分の１解像度補間の詳細は、Ｈ．２６４の仕様で見ることができる。Ｈ．２６４仕様が用いている技術は、サブピクセル運動補償のために長い（すなわち、６タップの）フィルタを用いるということである。Ｈ．２６４によるサブピクセル補間プロセスは、計算論的に非常に集約的である。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
従来型のエンコーダは、一般に、次の２つの技術の一方を用いてサブピクセル補間を行う。第１の技術では、ビデオ信号のそれぞれの基準フレームが４分の１ピクセル解像度まで補間されて、メモリに記憶される。運動補償または運動評価のために、必要とされるピクセルであるＩ、Ｈ、Ｖ、Ｔ及びＱがメモリからフェッチされる。従って、それぞれのサブピクセル位置が計算されるのは１回だけのため、運動補償または運動評価プロセスは、計算論的に効率的である。この第１の技術は、概念的に単純であり、従来型のソフトウェア・デコーダにおいて用いられる。しかし、第１の技術は、低コストのハードウェア・デコーダの場合には適切でない。第１の技術の欠点としては、（ｉ）それぞれの基準フレームはそれ以外に必要とされる場合よりも１６倍も多くのメモリを用いるため、用いるメモリ容量が非常に大きいこと、（ｉｉ）運動評価または運動補償に用いられるメモリ帯域幅が、非常に増加すること、がある。
【０００９】
第２の技術では、整数ピクセルＩはメモリからフェッチされ、保管されたピクセルＨ、Ｖ、Ｔ及びＱは、運動補償にブロックが必要とされるときに計算される。運動評価のためには、必要とされるピクセルはフェッチされ、補間は、同時に（「オン・ザ・フライ」で）実行される。すなわち、それぞれの考慮される運動ベクトルに対して、（ｉ）補間されたピクセルが計算され、そして、（ｉｉ）絶対差の合計などの誤差スコアが、補間されたブロックと符号化されるべきブロックとの間で計算される。考慮されるすべての運動ベクトルに対して、最小の「誤差」を有する運動ベクトルが選択される。第２の技術は、単純なサブピクセル補間方式の場合には、うまく機能する。例えば、ＭＰＥＧ−１及びＭＰＥＧ−２では、単純な双線形サブピクセル補間が用いられ、そして、４分の１ピクセルではなく半ピクセル補間だけが用いられる。従来型の媒体プロセッサの中には、第２の技術の単純で並行のプロセスを用いて、整数ピクセルＩからサブピクセル運動ベクトルに対する誤差スコアを計算するものがある。１クロック・サイクルで、特定目的用のハードウェアを用いて、６４のサブピクセル位置と、これらの補間された値と６５個のピクセルの別のブロックとの間の誤差スコアとが計算される。Ｈ．２６４で用いられるような長いサブピクセル・フィルタに対しては、第２の技術は非常に非効率的である。６４個のサブピクセル位置を計算するのは、補間されたピクセルとそれ以外のピクセルとの間の誤差を計算するよりも、はるかに複雑であるし、時間を要する。従って、第２の技術は遅い場合があるし、多くの時間の間、「誤差」ハードウェアはアイドル状態にあって、「補間」ハードウェアが完了するのを待機することになる。
【課題を解決するための手段】
【００１０】
本発明は、運動評価の方法に関する。この方法は、一般に、（Ａ）整数ピクセル解像度を有するビデオ信号の基準フレームの基準ブロックに作用する第１の補間プロセスに応答して、サブピクセル解像度を有する第１の補間されたブロックを生成するステップと、（Ｂ）前記第１の補間されたブロックと前記整数ピクセル解像度を有する前記ビデオ信号の現在フレームの現在ブロックとに応答して、運動ベクトルを生成するステップと、（Ｃ）前記基準ブロックに作用する第２の補間プロセスに応答して、前記サブピクセル解像度を
有する第２の補間されたブロックを生成するステップと、を含む。
【００１１】
本発明の目的、特徴及び効果には、（ｉ）専有面積が小さく、（ｉｉ）低いクロック速度で動作し、（ｉｉｉ）高速符号化を提供し、（ｉｖ）高速復号化を提供し、（ｖ）ソフトウェア・プロセスを迅速に動作させ、及び／又は、（ｖｉ）閉ループの符号化を提供することが含まれる。
【００１２】
本発明の以上の及びそれ以外の目的、特徴及び効果は、以下の詳細な説明と添付の図面とから明らかになるはずである。
【図面の簡単な説明】
【００１３】
【図１】ビデオ信号の１フレームの中の従来型の８ｘ８ブロックの図解である。
【図２】本発明の実施例による補間を示す複数の例示的なピクセルの図解である。
【図３】符号化のための第１の方法の流れ図である。
【図４】本発明の好適実施例による例示的な装置のブロック図である。
【図５】符号化のための第２の方法の流れ図である。
【図６】符号化のための第３の方法の流れ図である。
【図７】第２の方法を実現する例示的な装置のブロック図である。
【図８】符号化のための第４の方法の流れ図である。
【図９】符号化のための第５の方法の流れ図である。
【発明を実施するための形態】
【００１４】
本発明は、サブピクセル運動評価を効率的に実行しうる複数の方法に関係する。これらのアプローチは、他と独立に、または、他と共に用いることができる。第１のアプローチでは、一般に、運動評価のために双線形補間だけを用いるなど、単純な補間プロセスが用いられる。より複雑な長フィルタ法を運動補償に用いることもありうる。別のアプローチでは、一般に、サブピクセル・サーチへの補間パイプラインと実質的に同期して整数ピクセル・サーチを実行する。また、これらのアプローチに対する変形を実現することもありうる。
【００１５】
図２を参照すると、ビデオ信号のフレーム１００の中の複数の例示的なピクセルの図解が示されている。これらのピクセルは、本発明の１つの実施例による補間を表しうる。４つの隣接するピクセル（例えば、Ｇ、Ｊ、Ｍ及びＮ）からのイメージ情報を補間して、補間されたピクセルすなわちサンプル（例えば、Ａ）を生成することができる。補間されたピクセルＡは、水平方向には４分の１ピクセル・ユニットで測定されたある距離（例えば、Ｘ）に、垂直方向には整数ピクセルＧからのある距離（例えば、Ｙ）に、存在しうる。補間されたピクセルＡに対する値は、次の方程式１に従って計算することができる。
（数１）
Ａ＝（（Ｇ＊（４−Ｘ）＋Ｊ＊Ｘ）＊（４−Ｙ）＋（Ｍ＊（４−Ｘ）＋Ｎ＊Ｘ）＊Ｙ）／１６      （方程式１）
図３を参照すると、符号化のための第１の方法１０２の流れ図が示されている。この方法１０２では、一般に、（ｉ）基準フレームとの関係で現在フレームの中の現在ブロックに対する運動ベクトルを見つけ、（ｉｉ）運動ベクトルを用いて現在ブロックを圧縮し、そして、（ｉｉｉ）後で次の基準フレームとして用いるために現在ブロックを再構成する。この再構成は、一連のフレームを圧縮する際に実行されうる。再構成されたフレームを基準フレームとして用いて別のフレームを圧縮するエンコーダは、一般に、デコーダにおいて構成された全く同一のフレームと一致する再構成されたフレームのコピーを有している。従って、エンコーダは、「閉ループ」エンコーダと称することができる。符号化の間に実行される量子化ステップのために現在フレームが厳密に伝送されない場合でも、現在フレームを符号化することによって生じる誤差（例えば、厳密でないピクセル値）は、将来のフレームに伝搬することはない。むしろ、圧縮可能な符号化されたフレームの中のどのような誤差も、現在フレームの不正確な表現を用いる誤差であっても、フレームにおける量子化だけに起因する。
【００１６】
方法１０２は、一般に、現在フレームの座標（例えば、（Ｅｙ，Ｅｘ））において符号化されるべき幅（例えば、Ｂｘ）と高さ（例えば、Ｂｙ）とを有する入力すなわち現在ブロックに対して粗いすなわち整数の運動ベクトル（例えば、（Ｖｙ，Ｖｘ））を生成することによって、開始する。整数の運動ベクトルは、基準フレームにおいて現在ブロックをサーチすることによって見出すことができる（例えば、ステップ１０４）。第２のサーチは、この第２のサーチの間に実行されるのが一般的な補間プロセスを用いて行われる（例えば、ステップ１０６）。補間プロセスは、双線形補間プロセスとして実現することがで
きる。補間プロセスは、４分の１ピクセル・グリッドの上に補間されたピクセルを生成しうる。これ以外の補間プロセスを実現して、特定の応用例の規準を充たすことも可能である。
【００１７】
第２のサーチは、サブピクセル解像度を有する精細な運動ベクトル（例えば、（ＶＶｙ，ＶＶｘ））を決定することができる。この精細な運動ベクトル（ＶＶｙ，ＶＶｘ）に近接する基準フレームの領域は、別の補間プロセスを用いて２回目の補間を行うことができる（例えば、ステップ１０８）。この別のすなわち第２の補間プロセスは、Ｈ．２６４標準に従って実現しうる。例えば、"Editor's Proposed Draft Text Modifications for Joint Video Specification (IUT-T Rec. H.264 ISO/IEC 14496-10 AVC), Dtaft 7"と題す
る文書ＪＶＴ−Ｅ０２２ｄ７（ＩＳＯ／ＩＥＣ  ＭＰＥＧ及びＩＴＵーＴ  ＶＣＥＧのジョイント・ビデオ・チーム（ＪＶＴ）によって、２００２年９月１９日にドイツのベルリンで出版）を参照のこと。この文書は、その全体をこの出願において援用する。第２の補間プロセスは、運動補償の基礎を形成する補間された規準ブロックを生成することができる。
【００１８】
補間された基準ブロックは、現在フレームにおける現在ブロックから減算され、差ブロックを生成する（例えば、ステップ１１０）。この差ブロックは、次に、変換され量子化されて、量子化されたブロックが生成される（例えば、ステップ１１２）。エントロピ符号化を用いて、媒体への記録又はデコーダへの伝送への前に、量子化されたブロックと精細な運動ベクトル（ＶＶｙ，ＶＶｘ）とを圧縮することができる（例えば、ステップ１１４）。
【００１９】
方法１０２は、また、量子化されたブロックを逆量子化して、再構成された係数ブロックを生成することもできる（例えば、ステップ１１６）。再構成された係数ブロックに対する逆変換演算により、再構成された差ブロックを生成することができる（例えば、ステップ１１８）。再構成された差ブロックが、補間された基準ブロックに加えられると、再構成されたブロックが生成される（例えば、ステップ１２０）。この再構成されたブロックは、再構成されたブロックが一般に新たな基準ブロックとして用いられる将来の処理のために記憶することができる（例えば、ステップ１２２）。
【００２０】
第１の方法１０２では、一般に、運動評価のために「厳密な」方法を用いてどちらのベクトルを用いるべきかを判断するということはないので、絶対的に「最良の」運動ベクトルが常に作成されるとは限らない。従って、第１の方法１０２によって計算された差ブロックは、「最良の」運動ベクトルが参照するであろう理論的なブロックと符号化される実際のブロックとの間の差よりもいくぶん大きい場合がある。例えば、評価の段階（例えば、ステップ１０６）で双線形補間に依拠する方法１０２を用いる実施例では、厳密な補間方法と同じ質を達成するのに、若干（例えば、１％）のビット・レートの上昇を経験しうる。しかし、方法１０２を実現するエンコーダは運動補償のためのデコーダとして全く同一の方法を用いるのが一般的であるから（例えば、ステップ１０８）、理想的とは言えないサブピクセル運動ベクトル（ＶＶｙ，ＶＶｘ）によって生じる誤差の伝搬は存在しえない。
【００２１】
図４を参照すると、第１の方法１０２を実現する例示的な装置１４０のブロック図が、本発明の１つの好適実施例に従って、示されている。装置１４０は、第１の方法１０２を具体化することができる。装置１４０は、一般に、補間／運動評価回路１４２と、現在フレーム・メモリ回路１４４と、運動評価回路１４６と、基準フレーム・メモリ回路１４８と、運動補償補間回路１５０と、減算回路１５２と、変換回路１５４と、量子化回路１５６と、エンコーダ回路１５８と、逆量子化回路１６０と、逆変換回路１６２と、加算回路１６４と、再構成フレーム・メモリ回路１６６とを備えている。
【００２２】
現在フレーム・メモリ回路１４４は、符号化されているビデオ信号（例えば、ＶＩＤＥＯ）の現在フレームを記憶するように構成されうる。現在フレームからの現在ブロック（例えば、ＣＢ）は、運動評価回路１４６と補間／運動評価回路１４２と減算回路１５２とに与えられる。基準フレーム・メモリ回路１４８は、ビデオ信号軒府を記憶するように構成されうる。基準フレーム・メモリ回路１４８は、基準フレームの領域（例えば、ＲＲ）を、現在ブロックＣＢと重なり合い現在ブロックＣＢを僅かに超えて拡張して、運動評価回路１４６と補間／運動評価回路１４２と運動補償補間回路１５０とまで運ぶ。
【００２３】
運動評価回路１４６は、現在ブロックＣＢと最小の誤差スコアを生じる（例えば、現在ブロックＣＢとの最良の一致）基準領域ＲＲの中の基準ブロックとの間の整数ピクセル運動ベクトルをサーチする。運動評価回路１４６は、整数ピクセル運動ベクトル（例えば、ＩＭＶ）を補間／運動評価回路１４２に与える。補間／運動評価回路１４２は、よりよい運動ベクトルをサーチしながら、サブピクセル（例えば、４分の１ピクセル）解像度まで領域ＲＲを補間することができる。補間／運動評価回路１４２は、サブピクセル解像度を有する更新された運動ベクトル（例えば、ＱＭＶ）を運動補償補間回路１５０とエントロピ・エンコーダ回路１５８とに与える。
【００２４】
運動補償補間回路１５０は、４分の１ピクセル運動ベクトルＱＭＶの周囲の領域ＲＲの現在ブロック・サイズの部分を、第２の補間プロセスを用いて、サブピクセル解像度に保管するように構成することができる。ある実施例では、運動補償補間回路１５０は、水平方向が６タップ及び垂直方向が６タップの補間を用いて基準フレームに作用する。特定の応用例の規準を充たすためにこれ以外の補間プロセスを用いることもできる。運動補償補間回路１５０は、補間された領域を運動補償されたブロック（例えば、ＭＣＢ）として減算回路１５２と加算回路１６４とに与えることができる。
【００２５】
減算回路１５２は、運動補償されたブロックＭＣＢを現在ブロックＣＢから減算して、差ブロック（例えば、ＤＢ）を生成することができる。変換回路１５４は、差ブロックＤＢを変換して、変換されたブロック（例えば、ＴＢ）を生成することができる。量子化回路１５６は、変換されたブロックＴＢを量子化して、量子化されたブロック（例えば、ＱＢ）を生成することができる。量子化されたブロックＱＢは、エントロピ・エンコーダ回路１５８に与えて４分の１ピクセル運動ベクトルＱＭＶに基づく符号化を行い、符号化されたブロック（例えば、ＥＢ）としてデコーダ及び／又は記憶媒体に送ることができる。
【００２６】
閉ループ符号化は、逆量子化回路１６０と逆変換回路１６２と加算回路１６４と再構成フレーム・メモリ１６６とによって提供されうる。量子化されたブロックＱＢは、回路１６０によって逆量子化して、別の変換されたブロック（例えば、ＴＢ’）を生成することができる。逆変換ブロック１６２は、変換されたブロックＴＢ’を別の差ブロック（例えば、ＣＢ’）に変換することができる。加算回路１６４は、運動補償されたブロックＭＣＢを差ブロックＴＢ’に加えて、再構成された現在ブロック（例えば、ＣＢ’）を生成することができる。理想的には、再構成された現在ブロックＣＢ’は、元の現在ブロックＣＢと同一でありうる。しかし、量子化プロセスにおける丸めにより、再構成された現在ブロックＣＢ’は、現在ブロックＣＢとは若干異なっているのが一般的である。再構成された現在ブロックＣＢ’は、再構成されたフレーム（例えば、ＲＦ）の一部として、再構成されたフレーム・メモリ回路１６６に記憶することができる。結果的に、エンコーダ装置１４０は、デコーダが符号化されたブロックＥＢを再構成するのと同じ態様で、又は、少なくとも非常に類似した態様で、再構成された現在ブロックＣＢ’ヲ生成することができる。再構成されたフレームＲＦは、後で、基準フレーム・メモリ１４８に転送することができ、そこで、新たな現在フレームを符号化するための新たな基準フレームとして用いられる。
【００２７】
図５を参照すると、符号化の第２の方法１８０の一部の流れ図が示されている。符号化の第２の方法１８０の一部の流れ図が示されている。方法１０２の変形例として、サブピクセル（例えば、４分の１ピクセル）運動ベクトルが、２ステップのプロセスで中間ピクセル（例えば、半ピクセル）運動ベクトルから生成される。第２の方法１８０は、第１の方法１０２と類似しているが、２要素ステップ１０６’がステップ１０６の代わりに行われる。第１のステップ（例えば、ステップ１８２）では、半ピクセル運動ベクトル（例えば、（ＶＨｙ，ＶＨｘ））に対する座標が、４分の１ピクセル・ユニットでＹ＝−２，０，２とＸ＝−２，０，２とによって定義され整数運動ベクトルＩＭＶの上に中心がある領域の中の隣接するピクセルＩ、Ｈ、Ｖ及びＴだけに注目することによって得られる。第２のステップ（例えば、ステップ１８４）では、４分の１ピクセル運動ベクトル（例えば、（ＶＶｙ，ＶＶｘ））に対する座標が、４分の１ピクセル・ユニットのＶＨＹ＋（−１，０，１）とＶＨＸ＋（−１，０，１）とに注目することによって得られる。ステップ１８２及び１８４は、装置１４０の補間／運動評価回路１４２において実現することができる。第２の方法１８０の場合には、１８だけの運動ベクトルが評価され（第１のステップ１８２で９個、第２のステップ１８４で９個）、それに対し、第１の方法の場合には、全体で４９の運動ベクトルが評価されうる（例えば、７＊７個の可能性のある位置）。従って、第２の方法１８０は、第１の方法１０２よりも高速であるのが一般的であり、これに対して、第１の方法１０２は、若干優れた圧縮を提供し、若干複雑度が低い形式を有している。
【００２８】
図６を参照すると、符号化の第３の方法１９０の一部の流れ図が示されている。この第３の方法１９０は、一般に、並列ハードウェア・プラットフォームに適している。選択された整数運動ベクトルをサーチする範囲は、現在フレームの中の座標（例えば、（Ｅｙ，Ｅｘ））における現在ブロックに基づいて識別することができ、その後で、狭められる又は縮小される（例えば、ステップ１９２）。整数運動ベクトルの狭められたサーチ範囲は、例えば、矩形である。この矩形は、水平方向成分が範囲（ＸＭＩＮ，ＸＭＡＸ）の中の任意であり、垂直成分は範囲（ＹＭＩＮ，ＹＭＡＸ）の中の任意である。サーチ範囲を狭めるための技術としては複数があり、これには、限定されることは意図していないが、階層的サーチが含まれている。階層的サーチが用いられると、現在フレームと基準フレームとを１０分の１としたものを用いて、整数レベルのサーチを行うことができる小さな範囲を見出すことができる。
【００２９】
次に、整数ピクセル運動ベクトル・サーチが実行されて、狭められたサーチの矩形範囲の中にあり整数ピクセル運動ベクトル（Ｖｙ，Ｖｘ）を生成する運動ベクトルが決定される。整数レベル・サーチのステップ１９４を実行している間は、水平成分を範囲（ＸＭＩＮ−３／４，ＸＭＡＸ＋３／４）に垂直成分を範囲（ＹＭＩＮ−３／４，ＹＭＡＸ＋３／４）に有する範囲の中で任意のサブピクセル運動ベクトルを決定するのに用いることができる補間されたピクセルの全体を計算することができる（例えば、ステップ１９６）。整数ピクセル運動ベクトル・サーチのステップ１９４は、補間計算のステップ１９６と並列して又は実質的に同期して実行することができる。整数ピクセル運動ベクトルを決定し適切な補間されたピクセルを計算した後で、水平成分が範囲（Ｖｘ−３／４，Ｖｘ＋３／４）に垂直成分が範囲（Ｖｙ−３／４，Ｖｙ＋３／４）にあるすべてのサブピクセル運動ベクトルに対してサーチを実行し、整数ピクセル運動ベクトルを最終的な４分の１ピクセル運動ベクトルに調節する（例えば、ステップ１９８）。この第３の方法１８０は、第１の方法１０２からのステップ１０８−１２２を用いて（明瞭にするためにステップ１０８だけが示されている）、符号化されたブロックＥＢと再構成されたフレームＲＦとを生成する。
【００３０】
図７を参照すると、第２の方法１９０を実現する例示的な装置２００のブロック図が示
されている。装置１４０の場合と類似する回路には、同じ参照番号を用いて図解されている。装置２００は、一般に、現在フレーム・メモリ回路１４４と、基準フレーム・メモリ回路１４８と、狭い整数レベル・サーチ範囲回路２０２と、整数ピクセル運動評価回路１４６‘と、補間回路２０４と、サブピクセル運動評価回路２０６とを備えている。装置２００の整数ピクセル運動評価回路１４６’は、装置１４０の整数ピクセル運動評価回路１４６と同様にデザインされどウェブ・サイト１０６するが、信号（例えば、ＲＡＮＧＥ）によって定義された狭い範囲をサーチする。ある実施例では、整数ピクセル運動評価回路１４６‘と補間回路２０４とサブピクセル運動評価回路２０６とは、論理的及び／又は物理的に１つの回路として実現することができる。
【００３１】
狭い整数ピクセル・レベル・サーチ範囲回路２０２は、現在フレームからの現在ブロックＣＢと、現在フレーム・メモリ回路１４４と基準フレーム・メモリ回路１４８とのそれぞれから基準フレームの領域ＲＲとを受け取る。狭い整数ピクセル・レベル・サーチ範囲回路２０２は、最良の整数ピクセル運動ベクトルＩＭＶのサーチを行うことができるより狭い範囲を決定することができる。狭められた範囲は、信号ＲＡＮＧＥにおいて、整数ピクセル運動評価回路１４６‘と補間回路２０４とに与えられる。
【００３２】
整数ピクセル運動評価回路１４６‘は、補間回路２０４と並列に又は実質的に同期して動作し、整数ピクセル運動ベクトルＩＭＶを生成する。補間回路２０４は、狭められた範囲信号ＲＡＮＧＥに基づいて、範囲ＲＲから、補間されたブロック（例えば、ＩＢ）を生成する。サブピクセル・サーチ回路２０６は、整数ピクセル運動ベクトルＩＭＶと補間されたブロックＩＢ情報とに作用して、整数ピクセル運動ベクトルＩＭＶを、サブピクセル運動ベクトルＱＭＶに調節又は更新する。装置１９０の残りは、装置１４０の回路１５２−１６６を備えており（明瞭にするために、回路１５２だけが示されている）、符号化されたブロックＥＢと再構成されたフレームＲＦとを生成する。
【００３３】
図６に示されている方法及び／又は図８に示されている装置とは、運動評価のための従来型の方法及び装置とは、少なくとも２つの点で異なっている。第１の差異は、本発明では、補間される領域は、整数ピクセル・サーチが実行される範囲の上に決定される。従来型の方法では、イメージの全体を補間するか、又は、選択された整数運動ベクトルに基づいてイメージの一部を補間するかのいずれかである。第２の差異は、本発明では、補間は整数レベルのサーチと並列に実行されるのが一般的である点である。第１の差異が第２の差異を生じさせている。従来のように基準イメージの全体を補間することには、短所が存在する。必要に応じて基準イメージを補間するという従来型のアプローチでは、整数レベルのベクトルに基づいてサブピクセル・サーチに必要なピクセルを補間する。従って、サブピクセル・サーチに必要なピクセルだけが、生成される。しかし、従来型の必要に応じたアプローチでは、整数サーチは、サブピクセル補間が開始する前に完了していなければならない。本発明の場合には、整数サーチのサーチ範囲に基づく範囲が補間され、その際に、不必要なピクセルが計算されることがありうる。しかし、補間は、整数運動ベクトル自体ではなく範囲に依存しているので、整数レベル・サーチと並列的に実行することができる。
【００３４】
第３の方法１９０に対するいくつかの変形例を実現することもできる。例えば、サブピクセル運動ベクトルの範囲のサーチ・ステップ１９８は、Ｙ＝（Ｖｙ−３／４，Ｖｙ＋３／４）及びＸ＝（Ｖｘ−３／４，Ｖｘ＋３／４）よりも大きな又は小さな範囲で実行することができる。従って、ステップ１９８で計算される補間されたピクセルの数は、それに応じて増加又は減少する。
【００３５】
図８を参照すると、符号化の第４の方法２１０の一部の流れ図が示されている。第４の方法２１０は、第３の方法１９０と類似しているが、ただし、サブピクセル運動ベクトル
生成ステップ１９８は、２ステップ式のアプローチを実現している（例えば、ステップ１９８‘）。第１のステップでは、中間ピクセル（例えば、半ピクセル）運動ベクトル・サーチが実行される（例えば、ステップ２１２）。それに続くサブピクセル（例えば、１／４ピクセル）運動ベクトル・サーチが実行される（例えば、ステップ２１４）。ステップ２１２及び２１４は、サブピクセル・サーチ回路２０６において実現することができる。
【００３６】
別の実施例では、１つの整数レベル運動ベクトルではなく、複数の整数レベル運動ベクトルが生成されうる。複数の整数レベル運動ベクトルは、それぞれが、基準フレームの中で識別される複数のブロック・サイズの中の異なるブロック・サイズに対して生成されうる。整数レベルの運動ベクトルの計算については、同時継続中に米国特許出願（米国代理人ドケット番号：０２−５７１０／１４９６．００２６３）に記載されている。この米国出願は、その全体をこの出願において援用する。補間されたピクセルは、最大のブロック・サイズ（例えば、１６ｘ１６ピクセル）に対していったん計算され、次に、すべてのブロック・サイズ（例えば、１６ｘ１６、１６ｘ８、８ｘ８、８ｘ４、４ｘ８及び４ｘ４ピクセル）に対して用いられる。１つのブロック・サイズに対して補間されたピクセルを計算するのは、一般に、複数のブロック・サイズすべてに対して補間されたピクセルを計算するよりも効率的である。
【００３７】
本発明は、整数レベルのサーチ範囲に基づいて１つの領域を補間し、その補間された領域を多数のブロック・サイズに対して用いる。その理由は、複数の異なるブロック・サイズに対する整数レベルのサーチは、同じサーチ範囲を有するのが一般的であるからである（先の同時継続中の米国特許出願に記載されている）。選択された整数レベルの運動ベクトルを用いて補間を実行する従来型の運動評価回路であると、複数の異なるブロックが複数の異なる整数レベルのベクトルを選択する場合にはそれぞれのブロックに対して別々に補間を行う必要がある。
【００３８】
図９を参照すると、符号化を行う第５の方法２２０の一部の流れ図が示されている。この第５の方法２２０は、第３の方法１９０と類似しているが、補間ステップ１９６が変更されている（例えば、ステップ１９６‘）。整数運動ベクトルを計算するのと並列的にサブピクセル補間に潜在的に用いられるすべてのピクセルを計算するのではなく、半ピクセル・グリッド上のピクセルだけに対する値が計算される（例えば、ステップ２２２）。そして、整数ピクセル運動ベクトルと近接又は隣接してサーチされている領域の一部における４分の１ピクセル・グリッド上のピクセルは、必要に応じて補間がなされ、同時に、最良の４分の１運動ベクトルＱＭＶが見つけられる（例えば、ステップ２２４）。Ｈ．２６４標準に対する４分の１ピクセル・グリッド上のピクセルは半ピクセル・グリッド上のピクセルから容易かつ迅速に計算できるから、半ピクセル・グリッドから４分の１ピクセル・グリッドへの４分の１ピクセル運動ベクトルのサーチ及び補間は、実質的に同時に効率的に達成することができる。更に、整数レベルを見つけるのと同時に半ピクセル・グリッドにだけ補間することにより、運動ベクトルは、一般に、計算のために用いられる中間メモリ（図示せず）の容量が小さくなる。
【００３９】
図３、５、６、８及び９の流れ図によって実行される機能は、この技術分野の当業者には明らかなように、この明細書の教示内容に従ってプログラムされた通常の汎用デジタル・コンピュータを用いて実現することができる。やはりこの技術分野の当業者には明らかなように、熟練したプログラマであれば、この出願の開示内容に基づいて、適切なソフトウェア・コーディングを容易に準備することができるであろう。
【００４０】
本発明は、最適に集積化されたシリコン、ＡＳＩＣ、ＦＰＧＡを準備することによって、又は、従来型のコンポーネントで構成される回路の適切なネットワークを相互に接続することによって、この明細書に記載されているように実現しうるが、その修正も、この技
術分やん当業者には明らかである。
【００４１】
本発明は、従って、本発明に従ってコンピュータにプロセスを実行させるようにプログラムするのに用いることができる命令を含む記憶媒体でもありうる。この記憶媒体としては、限定的ではないが、フロッピ（登録商標）・ディスク、光ディスク、ＣＤ−ＲＯＭ、磁気光ディスク、ＲＯＭ、ＲＡＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュ・メモリ、磁気又は光カード、又は、電子的命令を記憶するのに適している任意のタイプの媒体などを含む任意のタイプのディスクが含まれる。
【００４２】
この明細書で用いた「同期」という用語は、共通の時間周期を共有するイベントを記述するのに用いられているが、この用語は、時間的に同じ時点で開始し時間的に同じ時点で終了し、同じ継続時間を有するイベントに限定されない。
【００４３】
以上では、本発明について好適な実施例を参照しながら特定的に示し説明したが、この技術分野の当業者であれば、本発明の精神及び範囲から逸脱することなく、形式及び詳細において様々な変更が可能であることを理解するはずである。
【図１】
2010081634.tif 000003
【図２】
2010081634.tif 000004
【図３】
2010081634.tif 000005
【図４】
2010081634.tif 000006
【図５】
2010081634.tif 000007
【図６】
2010081634.tif 000008
【図７】
2010081634.tif 000009
【図８】
2010081634.tif 000010
【図９】
2010081634.tif 000011