説明

並列補間及びサーチ・ハードウェアを備えた運動評価エンジン

【課題】運動評価の方法を提供すること。
【解決手段】(A)整数ピクセル解像度を有するビデオ信号の基準フレームの基準ブロックに作用する第1の補間プロセスに応答して、サブピクセル解像度を有する第1の補間されたブロックを生成し、(B)第1の補間されたブロックと整数ピクセル解像度を有するビデオ信号の現在フレームの現在ブロックとに応答して、運動ベクトルを生成し、(C)基準ブロックに作用する第2の補間プロセスに応答して、前記サブピクセル解像度を有する第2の補間されたブロックを生成することによって本発明による方法(102)が実現される。この方法は、補間・運動評価回路(142)、現在フレーム・メモリ回路(144)等を含む装置(140)によって実現される。

【発明の詳細な説明】
【技術分野】
【0001】
この出願は、2002年12月20日に出願された米国特許出願(代理人ドケット番号02−5710/1496.00263)の関連出願であり、この米国特許出願は、この出願においてその全体を援用する。
【0002】
本発明は、広くは運動評価に関し、より詳しくは並列補間及びサーチ・エンジンを備えた運動評価エンジンに関する。
【背景技術】
【0003】
デジタル・ビデオ・データの圧縮は、限定的な例示ではないが、衛星ブロードキャストなど大域幅に制約のあるチャネル上の伝送や光媒体への記憶などを含む、多くの応用例において実行される。非常に効率的な圧縮を実現するため、複雑で計算論的に集約的なプロセスを用いて、ビデオの符号化(圧縮)と復号化(解凍)とがなされる。例えば、MPEG2はビデオの圧縮のための非常に効率的な方法として知られているが、新しいより効率的な標準(すなわち、H.264)が開発されつつある。
【0004】
符号化プロセスの一部として、いわゆる運動補償が含まれる。決定された運動ベクトルに基づき、エンコーダは、既に伝送された基準フレームからデータのブロックをフェッチし、符号化されるべきブロックと基準フレームからのブロックとの間の差を計算し、差を圧縮して伝送する。デコーダは、同じ運動ベクトルを用い、同じ基準ブロックをフェッチし、差情報を解凍して、基準ブロックに解凍された差を加える。
【0005】
他の圧縮標準と同じく、H.264標準は、サブピクセル運動ベクトルを用いる。運動ベクトルの両方の成分(すなわち、水平成分と垂直成分)は、4分の1ピクセル・ユニットで与えられる。いずれかの成分が整数ピクセル・グリッド上に存在しないときには、エンコーダは、基準フレームを補間して、実際の整数ピクセルの間にある値を見出し、符号化されるべきブロックと基準フレームからの補間されたブロックとの間の差を計算し、その差を圧縮して伝送する。デコーダは、基準ブロックと解凍された差とを加算する前に、同じ補間を実行する。
【0006】
図1を参照すると、ビデオ信号の1フレームの中にある従来型の8x8ブロック20の図解が示されている。ブロック20の中の整数位置にあるピクセルは、文字Iで表されている。垂直方向には整数位置の上にあるが水平方向には2つの整数位置の間の中間にあるそれぞれのピクセル(すなわち、H)は、左側の整数位置にある3つの整数ピクセルIと右側の整数位置にある3つの整数ピクセルIとの重み付けされた和として計算される。これらのピクセルHは、(1,1/2)ピクセルと称される。水平方向には整数位置の上にあるが垂直方向には2つの整数位置の間の中間にあるそれぞれのピクセル(すなわち、V)は、上側の整数位置にある3つの整数ピクセルIと下側の整数位置にある3つの整数ピクセルIとの重み付けされた和として計算される。これらのピクセルVは、(1/2,1)ピクセルと称される。垂直方向には整数ピクセルの間の中間にあり水平方向にもピクセルの間の中間にあるそれぞれのピクセル(すなわち、T)は、(i)上側にある3つの(1,1/2)ピクセルと下側にある3つの(1,1/2)ピクセルとの重み付けされた和と、(ii)左側にある3つの(1/2,1)ピクセルと右側にある3つの(1/2,1)ピクセルとの重み付けされた和とのいずれか一方として計算される。ピクセルV、H及びTの計算により、ブロック20は、半ピクセルの解像度を有する16x16のピクセル・グリッドに変換される。
【0007】
1/2の整数倍ではない垂直及び/又は水平成分を有する4分の1ピクセル解像度グリッド(すなわち、Q)の上のピクセルは、半ピクセル解像度グリッドのピクセルI、H、V及びTから計算される。ピクセルQを生成するプロセスは、比較的単純であり、双線形(bi-linear)補間プロセスを含む。双線形補間プロセスでは、ピクセルQを計算するの
に、半ピクセル・グリッドに隣接するものだけが用いられる。ピクセルQを生成するための厳密なアプローチは、整数ピクセルIに対する補間されたピクセルQの位置に左右される。4分の1解像度補間の詳細は、H.264の仕様で見ることができる。H.264仕様が用いている技術は、サブピクセル運動補償のために長い(すなわち、6タップの)フィルタを用いるということである。H.264によるサブピクセル補間プロセスは、計算論的に非常に集約的である。
【発明の概要】
【発明が解決しようとする課題】
【0008】
従来型のエンコーダは、一般に、次の2つの技術の一方を用いてサブピクセル補間を行う。第1の技術では、ビデオ信号のそれぞれの基準フレームが4分の1ピクセル解像度まで補間されて、メモリに記憶される。運動補償または運動評価のために、必要とされるピクセルであるI、H、V、T及びQがメモリからフェッチされる。従って、それぞれのサブピクセル位置が計算されるのは1回だけのため、運動補償または運動評価プロセスは、計算論的に効率的である。この第1の技術は、概念的に単純であり、従来型のソフトウェア・デコーダにおいて用いられる。しかし、第1の技術は、低コストのハードウェア・デコーダの場合には適切でない。第1の技術の欠点としては、(i)それぞれの基準フレームはそれ以外に必要とされる場合よりも16倍も多くのメモリを用いるため、用いるメモリ容量が非常に大きいこと、(ii)運動評価または運動補償に用いられるメモリ帯域幅が、非常に増加すること、がある。
【0009】
第2の技術では、整数ピクセルIはメモリからフェッチされ、保管されたピクセルH、V、T及びQは、運動補償にブロックが必要とされるときに計算される。運動評価のためには、必要とされるピクセルはフェッチされ、補間は、同時に(「オン・ザ・フライ」で)実行される。すなわち、それぞれの考慮される運動ベクトルに対して、(i)補間されたピクセルが計算され、そして、(ii)絶対差の合計などの誤差スコアが、補間されたブロックと符号化されるべきブロックとの間で計算される。考慮されるすべての運動ベクトルに対して、最小の「誤差」を有する運動ベクトルが選択される。第2の技術は、単純なサブピクセル補間方式の場合には、うまく機能する。例えば、MPEG−1及びMPEG−2では、単純な双線形サブピクセル補間が用いられ、そして、4分の1ピクセルではなく半ピクセル補間だけが用いられる。従来型の媒体プロセッサの中には、第2の技術の単純で並行のプロセスを用いて、整数ピクセルIからサブピクセル運動ベクトルに対する誤差スコアを計算するものがある。1クロック・サイクルで、特定目的用のハードウェアを用いて、64のサブピクセル位置と、これらの補間された値と65個のピクセルの別のブロックとの間の誤差スコアとが計算される。H.264で用いられるような長いサブピクセル・フィルタに対しては、第2の技術は非常に非効率的である。64個のサブピクセル位置を計算するのは、補間されたピクセルとそれ以外のピクセルとの間の誤差を計算するよりも、はるかに複雑であるし、時間を要する。従って、第2の技術は遅い場合があるし、多くの時間の間、「誤差」ハードウェアはアイドル状態にあって、「補間」ハードウェアが完了するのを待機することになる。
【課題を解決するための手段】
【0010】
本発明は、運動評価の方法に関する。この方法は、一般に、(A)整数ピクセル解像度を有するビデオ信号の基準フレームの基準ブロックに作用する第1の補間プロセスに応答して、サブピクセル解像度を有する第1の補間されたブロックを生成するステップと、(B)前記第1の補間されたブロックと前記整数ピクセル解像度を有する前記ビデオ信号の現在フレームの現在ブロックとに応答して、運動ベクトルを生成するステップと、(C)前記基準ブロックに作用する第2の補間プロセスに応答して、前記サブピクセル解像度を
有する第2の補間されたブロックを生成するステップと、を含む。
【0011】
本発明の目的、特徴及び効果には、(i)専有面積が小さく、(ii)低いクロック速度で動作し、(iii)高速符号化を提供し、(iv)高速復号化を提供し、(v)ソフトウェア・プロセスを迅速に動作させ、及び/又は、(vi)閉ループの符号化を提供することが含まれる。
【0012】
本発明の以上の及びそれ以外の目的、特徴及び効果は、以下の詳細な説明と添付の図面とから明らかになるはずである。
【図面の簡単な説明】
【0013】
【図1】ビデオ信号の1フレームの中の従来型の8x8ブロックの図解である。
【図2】本発明の実施例による補間を示す複数の例示的なピクセルの図解である。
【図3】符号化のための第1の方法の流れ図である。
【図4】本発明の好適実施例による例示的な装置のブロック図である。
【図5】符号化のための第2の方法の流れ図である。
【図6】符号化のための第3の方法の流れ図である。
【図7】第2の方法を実現する例示的な装置のブロック図である。
【図8】符号化のための第4の方法の流れ図である。
【図9】符号化のための第5の方法の流れ図である。
【発明を実施するための形態】
【0014】
本発明は、サブピクセル運動評価を効率的に実行しうる複数の方法に関係する。これらのアプローチは、他と独立に、または、他と共に用いることができる。第1のアプローチでは、一般に、運動評価のために双線形補間だけを用いるなど、単純な補間プロセスが用いられる。より複雑な長フィルタ法を運動補償に用いることもありうる。別のアプローチでは、一般に、サブピクセル・サーチへの補間パイプラインと実質的に同期して整数ピクセル・サーチを実行する。また、これらのアプローチに対する変形を実現することもありうる。
【0015】
図2を参照すると、ビデオ信号のフレーム100の中の複数の例示的なピクセルの図解が示されている。これらのピクセルは、本発明の1つの実施例による補間を表しうる。4つの隣接するピクセル(例えば、G、J、M及びN)からのイメージ情報を補間して、補間されたピクセルすなわちサンプル(例えば、A)を生成することができる。補間されたピクセルAは、水平方向には4分の1ピクセル・ユニットで測定されたある距離(例えば、X)に、垂直方向には整数ピクセルGからのある距離(例えば、Y)に、存在しうる。補間されたピクセルAに対する値は、次の方程式1に従って計算することができる。
(数1)
A=((G*(4−X)+J*X)*(4−Y)+(M*(4−X)+N*X)*Y)/16 (方程式1)
図3を参照すると、符号化のための第1の方法102の流れ図が示されている。この方法102では、一般に、(i)基準フレームとの関係で現在フレームの中の現在ブロックに対する運動ベクトルを見つけ、(ii)運動ベクトルを用いて現在ブロックを圧縮し、そして、(iii)後で次の基準フレームとして用いるために現在ブロックを再構成する。この再構成は、一連のフレームを圧縮する際に実行されうる。再構成されたフレームを基準フレームとして用いて別のフレームを圧縮するエンコーダは、一般に、デコーダにおいて構成された全く同一のフレームと一致する再構成されたフレームのコピーを有している。従って、エンコーダは、「閉ループ」エンコーダと称することができる。符号化の間に実行される量子化ステップのために現在フレームが厳密に伝送されない場合でも、現在フレームを符号化することによって生じる誤差(例えば、厳密でないピクセル値)は、将来のフレームに伝搬することはない。むしろ、圧縮可能な符号化されたフレームの中のどのような誤差も、現在フレームの不正確な表現を用いる誤差であっても、フレームにおける量子化だけに起因する。
【0016】
方法102は、一般に、現在フレームの座標(例えば、(Ey,Ex))において符号化されるべき幅(例えば、Bx)と高さ(例えば、By)とを有する入力すなわち現在ブロックに対して粗いすなわち整数の運動ベクトル(例えば、(Vy,Vx))を生成することによって、開始する。整数の運動ベクトルは、基準フレームにおいて現在ブロックをサーチすることによって見出すことができる(例えば、ステップ104)。第2のサーチは、この第2のサーチの間に実行されるのが一般的な補間プロセスを用いて行われる(例えば、ステップ106)。補間プロセスは、双線形補間プロセスとして実現することがで
きる。補間プロセスは、4分の1ピクセル・グリッドの上に補間されたピクセルを生成しうる。これ以外の補間プロセスを実現して、特定の応用例の規準を充たすことも可能である。
【0017】
第2のサーチは、サブピクセル解像度を有する精細な運動ベクトル(例えば、(VVy,VVx))を決定することができる。この精細な運動ベクトル(VVy,VVx)に近接する基準フレームの領域は、別の補間プロセスを用いて2回目の補間を行うことができる(例えば、ステップ108)。この別のすなわち第2の補間プロセスは、H.264標準に従って実現しうる。例えば、"Editor's Proposed Draft Text Modifications for Joint Video Specification (IUT-T Rec. H.264 ISO/IEC 14496-10 AVC), Dtaft 7"と題す
る文書JVT−E022d7(ISO/IEC MPEG及びITUーT VCEGのジョイント・ビデオ・チーム(JVT)によって、2002年9月19日にドイツのベルリンで出版)を参照のこと。この文書は、その全体をこの出願において援用する。第2の補間プロセスは、運動補償の基礎を形成する補間された規準ブロックを生成することができる。
【0018】
補間された基準ブロックは、現在フレームにおける現在ブロックから減算され、差ブロックを生成する(例えば、ステップ110)。この差ブロックは、次に、変換され量子化されて、量子化されたブロックが生成される(例えば、ステップ112)。エントロピ符号化を用いて、媒体への記録又はデコーダへの伝送への前に、量子化されたブロックと精細な運動ベクトル(VVy,VVx)とを圧縮することができる(例えば、ステップ114)。
【0019】
方法102は、また、量子化されたブロックを逆量子化して、再構成された係数ブロックを生成することもできる(例えば、ステップ116)。再構成された係数ブロックに対する逆変換演算により、再構成された差ブロックを生成することができる(例えば、ステップ118)。再構成された差ブロックが、補間された基準ブロックに加えられると、再構成されたブロックが生成される(例えば、ステップ120)。この再構成されたブロックは、再構成されたブロックが一般に新たな基準ブロックとして用いられる将来の処理のために記憶することができる(例えば、ステップ122)。
【0020】
第1の方法102では、一般に、運動評価のために「厳密な」方法を用いてどちらのベクトルを用いるべきかを判断するということはないので、絶対的に「最良の」運動ベクトルが常に作成されるとは限らない。従って、第1の方法102によって計算された差ブロックは、「最良の」運動ベクトルが参照するであろう理論的なブロックと符号化される実際のブロックとの間の差よりもいくぶん大きい場合がある。例えば、評価の段階(例えば、ステップ106)で双線形補間に依拠する方法102を用いる実施例では、厳密な補間方法と同じ質を達成するのに、若干(例えば、1%)のビット・レートの上昇を経験しうる。しかし、方法102を実現するエンコーダは運動補償のためのデコーダとして全く同一の方法を用いるのが一般的であるから(例えば、ステップ108)、理想的とは言えないサブピクセル運動ベクトル(VVy,VVx)によって生じる誤差の伝搬は存在しえない。
【0021】
図4を参照すると、第1の方法102を実現する例示的な装置140のブロック図が、本発明の1つの好適実施例に従って、示されている。装置140は、第1の方法102を具体化することができる。装置140は、一般に、補間/運動評価回路142と、現在フレーム・メモリ回路144と、運動評価回路146と、基準フレーム・メモリ回路148と、運動補償補間回路150と、減算回路152と、変換回路154と、量子化回路156と、エンコーダ回路158と、逆量子化回路160と、逆変換回路162と、加算回路164と、再構成フレーム・メモリ回路166とを備えている。
【0022】
現在フレーム・メモリ回路144は、符号化されているビデオ信号(例えば、VIDEO)の現在フレームを記憶するように構成されうる。現在フレームからの現在ブロック(例えば、CB)は、運動評価回路146と補間/運動評価回路142と減算回路152とに与えられる。基準フレーム・メモリ回路148は、ビデオ信号軒府を記憶するように構成されうる。基準フレーム・メモリ回路148は、基準フレームの領域(例えば、RR)を、現在ブロックCBと重なり合い現在ブロックCBを僅かに超えて拡張して、運動評価回路146と補間/運動評価回路142と運動補償補間回路150とまで運ぶ。
【0023】
運動評価回路146は、現在ブロックCBと最小の誤差スコアを生じる(例えば、現在ブロックCBとの最良の一致)基準領域RRの中の基準ブロックとの間の整数ピクセル運動ベクトルをサーチする。運動評価回路146は、整数ピクセル運動ベクトル(例えば、IMV)を補間/運動評価回路142に与える。補間/運動評価回路142は、よりよい運動ベクトルをサーチしながら、サブピクセル(例えば、4分の1ピクセル)解像度まで領域RRを補間することができる。補間/運動評価回路142は、サブピクセル解像度を有する更新された運動ベクトル(例えば、QMV)を運動補償補間回路150とエントロピ・エンコーダ回路158とに与える。
【0024】
運動補償補間回路150は、4分の1ピクセル運動ベクトルQMVの周囲の領域RRの現在ブロック・サイズの部分を、第2の補間プロセスを用いて、サブピクセル解像度に保管するように構成することができる。ある実施例では、運動補償補間回路150は、水平方向が6タップ及び垂直方向が6タップの補間を用いて基準フレームに作用する。特定の応用例の規準を充たすためにこれ以外の補間プロセスを用いることもできる。運動補償補間回路150は、補間された領域を運動補償されたブロック(例えば、MCB)として減算回路152と加算回路164とに与えることができる。
【0025】
減算回路152は、運動補償されたブロックMCBを現在ブロックCBから減算して、差ブロック(例えば、DB)を生成することができる。変換回路154は、差ブロックDBを変換して、変換されたブロック(例えば、TB)を生成することができる。量子化回路156は、変換されたブロックTBを量子化して、量子化されたブロック(例えば、QB)を生成することができる。量子化されたブロックQBは、エントロピ・エンコーダ回路158に与えて4分の1ピクセル運動ベクトルQMVに基づく符号化を行い、符号化されたブロック(例えば、EB)としてデコーダ及び/又は記憶媒体に送ることができる。
【0026】
閉ループ符号化は、逆量子化回路160と逆変換回路162と加算回路164と再構成フレーム・メモリ166とによって提供されうる。量子化されたブロックQBは、回路160によって逆量子化して、別の変換されたブロック(例えば、TB’)を生成することができる。逆変換ブロック162は、変換されたブロックTB’を別の差ブロック(例えば、CB’)に変換することができる。加算回路164は、運動補償されたブロックMCBを差ブロックTB’に加えて、再構成された現在ブロック(例えば、CB’)を生成することができる。理想的には、再構成された現在ブロックCB’は、元の現在ブロックCBと同一でありうる。しかし、量子化プロセスにおける丸めにより、再構成された現在ブロックCB’は、現在ブロックCBとは若干異なっているのが一般的である。再構成された現在ブロックCB’は、再構成されたフレーム(例えば、RF)の一部として、再構成されたフレーム・メモリ回路166に記憶することができる。結果的に、エンコーダ装置140は、デコーダが符号化されたブロックEBを再構成するのと同じ態様で、又は、少なくとも非常に類似した態様で、再構成された現在ブロックCB’ヲ生成することができる。再構成されたフレームRFは、後で、基準フレーム・メモリ148に転送することができ、そこで、新たな現在フレームを符号化するための新たな基準フレームとして用いられる。
【0027】
図5を参照すると、符号化の第2の方法180の一部の流れ図が示されている。符号化の第2の方法180の一部の流れ図が示されている。方法102の変形例として、サブピクセル(例えば、4分の1ピクセル)運動ベクトルが、2ステップのプロセスで中間ピクセル(例えば、半ピクセル)運動ベクトルから生成される。第2の方法180は、第1の方法102と類似しているが、2要素ステップ106’がステップ106の代わりに行われる。第1のステップ(例えば、ステップ182)では、半ピクセル運動ベクトル(例えば、(VHy,VHx))に対する座標が、4分の1ピクセル・ユニットでY=−2,0,2とX=−2,0,2とによって定義され整数運動ベクトルIMVの上に中心がある領域の中の隣接するピクセルI、H、V及びTだけに注目することによって得られる。第2のステップ(例えば、ステップ184)では、4分の1ピクセル運動ベクトル(例えば、(VVy,VVx))に対する座標が、4分の1ピクセル・ユニットのVHY+(−1,0,1)とVHX+(−1,0,1)とに注目することによって得られる。ステップ182及び184は、装置140の補間/運動評価回路142において実現することができる。第2の方法180の場合には、18だけの運動ベクトルが評価され(第1のステップ182で9個、第2のステップ184で9個)、それに対し、第1の方法の場合には、全体で49の運動ベクトルが評価されうる(例えば、7*7個の可能性のある位置)。従って、第2の方法180は、第1の方法102よりも高速であるのが一般的であり、これに対して、第1の方法102は、若干優れた圧縮を提供し、若干複雑度が低い形式を有している。
【0028】
図6を参照すると、符号化の第3の方法190の一部の流れ図が示されている。この第3の方法190は、一般に、並列ハードウェア・プラットフォームに適している。選択された整数運動ベクトルをサーチする範囲は、現在フレームの中の座標(例えば、(Ey,Ex))における現在ブロックに基づいて識別することができ、その後で、狭められる又は縮小される(例えば、ステップ192)。整数運動ベクトルの狭められたサーチ範囲は、例えば、矩形である。この矩形は、水平方向成分が範囲(XMIN,XMAX)の中の任意であり、垂直成分は範囲(YMIN,YMAX)の中の任意である。サーチ範囲を狭めるための技術としては複数があり、これには、限定されることは意図していないが、階層的サーチが含まれている。階層的サーチが用いられると、現在フレームと基準フレームとを10分の1としたものを用いて、整数レベルのサーチを行うことができる小さな範囲を見出すことができる。
【0029】
次に、整数ピクセル運動ベクトル・サーチが実行されて、狭められたサーチの矩形範囲の中にあり整数ピクセル運動ベクトル(Vy,Vx)を生成する運動ベクトルが決定される。整数レベル・サーチのステップ194を実行している間は、水平成分を範囲(XMIN−3/4,XMAX+3/4)に垂直成分を範囲(YMIN−3/4,YMAX+3/4)に有する範囲の中で任意のサブピクセル運動ベクトルを決定するのに用いることができる補間されたピクセルの全体を計算することができる(例えば、ステップ196)。整数ピクセル運動ベクトル・サーチのステップ194は、補間計算のステップ196と並列して又は実質的に同期して実行することができる。整数ピクセル運動ベクトルを決定し適切な補間されたピクセルを計算した後で、水平成分が範囲(Vx−3/4,Vx+3/4)に垂直成分が範囲(Vy−3/4,Vy+3/4)にあるすべてのサブピクセル運動ベクトルに対してサーチを実行し、整数ピクセル運動ベクトルを最終的な4分の1ピクセル運動ベクトルに調節する(例えば、ステップ198)。この第3の方法180は、第1の方法102からのステップ108−122を用いて(明瞭にするためにステップ108だけが示されている)、符号化されたブロックEBと再構成されたフレームRFとを生成する。
【0030】
図7を参照すると、第2の方法190を実現する例示的な装置200のブロック図が示
されている。装置140の場合と類似する回路には、同じ参照番号を用いて図解されている。装置200は、一般に、現在フレーム・メモリ回路144と、基準フレーム・メモリ回路148と、狭い整数レベル・サーチ範囲回路202と、整数ピクセル運動評価回路146‘と、補間回路204と、サブピクセル運動評価回路206とを備えている。装置200の整数ピクセル運動評価回路146’は、装置140の整数ピクセル運動評価回路146と同様にデザインされどウェブ・サイト106するが、信号(例えば、RANGE)によって定義された狭い範囲をサーチする。ある実施例では、整数ピクセル運動評価回路146‘と補間回路204とサブピクセル運動評価回路206とは、論理的及び/又は物理的に1つの回路として実現することができる。
【0031】
狭い整数ピクセル・レベル・サーチ範囲回路202は、現在フレームからの現在ブロックCBと、現在フレーム・メモリ回路144と基準フレーム・メモリ回路148とのそれぞれから基準フレームの領域RRとを受け取る。狭い整数ピクセル・レベル・サーチ範囲回路202は、最良の整数ピクセル運動ベクトルIMVのサーチを行うことができるより狭い範囲を決定することができる。狭められた範囲は、信号RANGEにおいて、整数ピクセル運動評価回路146‘と補間回路204とに与えられる。
【0032】
整数ピクセル運動評価回路146‘は、補間回路204と並列に又は実質的に同期して動作し、整数ピクセル運動ベクトルIMVを生成する。補間回路204は、狭められた範囲信号RANGEに基づいて、範囲RRから、補間されたブロック(例えば、IB)を生成する。サブピクセル・サーチ回路206は、整数ピクセル運動ベクトルIMVと補間されたブロックIB情報とに作用して、整数ピクセル運動ベクトルIMVを、サブピクセル運動ベクトルQMVに調節又は更新する。装置190の残りは、装置140の回路152−166を備えており(明瞭にするために、回路152だけが示されている)、符号化されたブロックEBと再構成されたフレームRFとを生成する。
【0033】
図6に示されている方法及び/又は図8に示されている装置とは、運動評価のための従来型の方法及び装置とは、少なくとも2つの点で異なっている。第1の差異は、本発明では、補間される領域は、整数ピクセル・サーチが実行される範囲の上に決定される。従来型の方法では、イメージの全体を補間するか、又は、選択された整数運動ベクトルに基づいてイメージの一部を補間するかのいずれかである。第2の差異は、本発明では、補間は整数レベルのサーチと並列に実行されるのが一般的である点である。第1の差異が第2の差異を生じさせている。従来のように基準イメージの全体を補間することには、短所が存在する。必要に応じて基準イメージを補間するという従来型のアプローチでは、整数レベルのベクトルに基づいてサブピクセル・サーチに必要なピクセルを補間する。従って、サブピクセル・サーチに必要なピクセルだけが、生成される。しかし、従来型の必要に応じたアプローチでは、整数サーチは、サブピクセル補間が開始する前に完了していなければならない。本発明の場合には、整数サーチのサーチ範囲に基づく範囲が補間され、その際に、不必要なピクセルが計算されることがありうる。しかし、補間は、整数運動ベクトル自体ではなく範囲に依存しているので、整数レベル・サーチと並列的に実行することができる。
【0034】
第3の方法190に対するいくつかの変形例を実現することもできる。例えば、サブピクセル運動ベクトルの範囲のサーチ・ステップ198は、Y=(Vy−3/4,Vy+3/4)及びX=(Vx−3/4,Vx+3/4)よりも大きな又は小さな範囲で実行することができる。従って、ステップ198で計算される補間されたピクセルの数は、それに応じて増加又は減少する。
【0035】
図8を参照すると、符号化の第4の方法210の一部の流れ図が示されている。第4の方法210は、第3の方法190と類似しているが、ただし、サブピクセル運動ベクトル
生成ステップ198は、2ステップ式のアプローチを実現している(例えば、ステップ198‘)。第1のステップでは、中間ピクセル(例えば、半ピクセル)運動ベクトル・サーチが実行される(例えば、ステップ212)。それに続くサブピクセル(例えば、1/4ピクセル)運動ベクトル・サーチが実行される(例えば、ステップ214)。ステップ212及び214は、サブピクセル・サーチ回路206において実現することができる。
【0036】
別の実施例では、1つの整数レベル運動ベクトルではなく、複数の整数レベル運動ベクトルが生成されうる。複数の整数レベル運動ベクトルは、それぞれが、基準フレームの中で識別される複数のブロック・サイズの中の異なるブロック・サイズに対して生成されうる。整数レベルの運動ベクトルの計算については、同時継続中に米国特許出願(米国代理人ドケット番号:02−5710/1496.00263)に記載されている。この米国出願は、その全体をこの出願において援用する。補間されたピクセルは、最大のブロック・サイズ(例えば、16x16ピクセル)に対していったん計算され、次に、すべてのブロック・サイズ(例えば、16x16、16x8、8x8、8x4、4x8及び4x4ピクセル)に対して用いられる。1つのブロック・サイズに対して補間されたピクセルを計算するのは、一般に、複数のブロック・サイズすべてに対して補間されたピクセルを計算するよりも効率的である。
【0037】
本発明は、整数レベルのサーチ範囲に基づいて1つの領域を補間し、その補間された領域を多数のブロック・サイズに対して用いる。その理由は、複数の異なるブロック・サイズに対する整数レベルのサーチは、同じサーチ範囲を有するのが一般的であるからである(先の同時継続中の米国特許出願に記載されている)。選択された整数レベルの運動ベクトルを用いて補間を実行する従来型の運動評価回路であると、複数の異なるブロックが複数の異なる整数レベルのベクトルを選択する場合にはそれぞれのブロックに対して別々に補間を行う必要がある。
【0038】
図9を参照すると、符号化を行う第5の方法220の一部の流れ図が示されている。この第5の方法220は、第3の方法190と類似しているが、補間ステップ196が変更されている(例えば、ステップ196‘)。整数運動ベクトルを計算するのと並列的にサブピクセル補間に潜在的に用いられるすべてのピクセルを計算するのではなく、半ピクセル・グリッド上のピクセルだけに対する値が計算される(例えば、ステップ222)。そして、整数ピクセル運動ベクトルと近接又は隣接してサーチされている領域の一部における4分の1ピクセル・グリッド上のピクセルは、必要に応じて補間がなされ、同時に、最良の4分の1運動ベクトルQMVが見つけられる(例えば、ステップ224)。H.264標準に対する4分の1ピクセル・グリッド上のピクセルは半ピクセル・グリッド上のピクセルから容易かつ迅速に計算できるから、半ピクセル・グリッドから4分の1ピクセル・グリッドへの4分の1ピクセル運動ベクトルのサーチ及び補間は、実質的に同時に効率的に達成することができる。更に、整数レベルを見つけるのと同時に半ピクセル・グリッドにだけ補間することにより、運動ベクトルは、一般に、計算のために用いられる中間メモリ(図示せず)の容量が小さくなる。
【0039】
図3、5、6、8及び9の流れ図によって実行される機能は、この技術分野の当業者には明らかなように、この明細書の教示内容に従ってプログラムされた通常の汎用デジタル・コンピュータを用いて実現することができる。やはりこの技術分野の当業者には明らかなように、熟練したプログラマであれば、この出願の開示内容に基づいて、適切なソフトウェア・コーディングを容易に準備することができるであろう。
【0040】
本発明は、最適に集積化されたシリコン、ASIC、FPGAを準備することによって、又は、従来型のコンポーネントで構成される回路の適切なネットワークを相互に接続することによって、この明細書に記載されているように実現しうるが、その修正も、この技
術分やん当業者には明らかである。
【0041】
本発明は、従って、本発明に従ってコンピュータにプロセスを実行させるようにプログラムするのに用いることができる命令を含む記憶媒体でもありうる。この記憶媒体としては、限定的ではないが、フロッピ(登録商標)・ディスク、光ディスク、CD−ROM、磁気光ディスク、ROM、RAM、EPROM、EEPROM、フラッシュ・メモリ、磁気又は光カード、又は、電子的命令を記憶するのに適している任意のタイプの媒体などを含む任意のタイプのディスクが含まれる。
【0042】
この明細書で用いた「同期」という用語は、共通の時間周期を共有するイベントを記述するのに用いられているが、この用語は、時間的に同じ時点で開始し時間的に同じ時点で終了し、同じ継続時間を有するイベントに限定されない。
【0043】
以上では、本発明について好適な実施例を参照しながら特定的に示し説明したが、この技術分野の当業者であれば、本発明の精神及び範囲から逸脱することなく、形式及び詳細において様々な変更が可能であることを理解するはずである。

【特許請求の範囲】
【請求項1】
運動を評価する方法であって、
(A)ビデオ信号の基準フレームの中にある第1の領域を識別して、前記ビデオ信号の現在フレームにおける現在ブロックに対する第1の運動ベクトルをサーチするステップと、
(B)前記第1の領域に近接して前記基準フレームを補間することに応答してサブピクセル解像度を有する第2の領域を生成するステップと、
(C)前記第1の領域に応答して整数のピクセル解像度で前記第1の運動ベクトルを生成するステップと、
(D)前記第2の領域に応答して前記第1の運動ベクトルを前記サブピクセル解像度に調節するステップと、
を含むことを特徴とする方法。
【請求項2】
請求項1記載の方法において、ステップ(B)とステップ(C)とは実質的に同時に実行されることを特徴とする方法。
【請求項3】
請求項1記載の方法において、前記第2の領域は前記第1の領域よりもそれぞれの方向において1ピクセル未満だけ大きいことを特徴とする方法。
【請求項4】
請求項1記載の方法において、ステップ(D)は
前記第1の運動ベクトルを中間ピクセル解像度に調節するサブステップと、
前記中間ピクセル解像度に応答して、前記第1の運動ベクトルを前記サブピクセル解像度に調節するサブステップと、
を含むことを特徴とする方法。
【請求項5】
請求項1記載の方法において、ステップ(C)は、
複数のブロック・サイズに対して複数の第2の運動ベクトルを生成するサブステップと、
前記第2の運動ベクトルに応答して前記第1の運動ベクトルを生成するサブステップと、
を含むことを特徴とする方法。
【請求項6】
請求項1記載の方法において、ステップ(B)は、
中間ピクセル解像度を有する前記第2の領域を生成するサブステップと、
前記整数のピクセル解像度で生成された前記第1の運動ベクトルに近接して、前記第2の領域の少なくとも一部を前記サブピクセル解像度に生成するサブステップと、
を含むことを特徴とする方法。
【請求項7】
ビデオ信号の基準フレームの中にある第1の領域を識別して、前記ビデオ信号の現在フレームにおける現在ブロックに対する第1の運動ベクトルをサーチするように構成された第1の回路と、
(i)前記第1の領域に近接して前記基準フレームを補間することに応答してサブピクセル解像度を有する第2の領域を生成し、(ii)前記第1の領域に応答して整数のピクセル解像度で前記第1の運動ベクトルを生成して、(iii)前記第2の領域に応答して前記第1の運動ベクトルを前記サブピクセル解像度に調節するステップと、
を備えていることを特徴とする装置。
【請求項8】
請求項7記載の装置において、前記第2の領域の生成と前記第1の運動ベクトルの生成とは実質的に同時に実行されることを特徴とする装置。
【請求項9】
請求項7記載の装置において、前記第2の領域は前記第1の領域よりもそれぞれの方向において1ピクセル未満だけ大きいことを特徴とする装置。
【請求項10】
請求項7記載の装置において、前記第2の回路は、更に、
前記第1の運動ベクトルを中間ピクセル解像度に調節し、
前記中間ピクセル解像度に応答して、前記第1の運動ベクトルを前記サブピクセル解像度に調節するように構成されていることを特徴とする装置。
【請求項11】
請求項7記載の装置において、前記第2の回路は、更に、
複数のブロック・サイズに対して複数の第2の運動ベクトルを生成し、
前記第2の運動ベクトルに応答して前記第1の運動ベクトルを生成するように構成されていることを特徴とする装置。
【請求項12】
請求項7記載の装置において、前記第2の回路は、更に、
中間ピクセル解像度を有する前記第2の領域を生成し、
前記整数のピクセル解像度で生成された前記第1の運動ベクトルに近接して、前記第2の領域の少なくとも一部を前記サブピクセル解像度に生成するように構成されていることを特徴とする装置。
【請求項13】
運動を評価する方法であって、
(A)ビデオ信号の基準フレームの中にある第1の領域を識別して、前記ビデオ信号の現在フレームにおける複数の異なるブロック・サイズに対する複数の運動ベクトルをサーチするステップと、
(B)前記第1の領域に近接して前記基準フレームを補間することに応答してサブピクセル解像度を有する第2の領域を生成するステップと、
(C)前記第1の領域に応答して整数のピクセル解像度で前記運動ベクトルを生成するステップと、
(D)前記第2の領域に応答して前記運動ベクトルを前記サブピクセル解像度に調節するステップと、
を含むことを特徴とする方法。
【請求項14】
請求項13記載の方法において、前記運動ベクトルの少なくとも2つが前記異なるブロック・サイズを有する複数の現在ブロックに対する運動を記述することを特徴とする方法。
【請求項15】
請求項13記載の方法において、ステップ(B)とステップ(C)とは実質的に同時に実行されることを特徴とする方法。
【請求項16】
ビデオ信号の基準フレームの中にある第1の領域を識別して、前記ビデオ信号の現在フレームの現在ブロックに対する第1の運動ベクトルをサーチするように構成された第1の回路と、
(i)前記第1の領域に近接して前記基準フレームを補間することに応答して前記第1の領域よりも大きくサブピクセル解像度を有する第2の領域を生成し、(ii)前記第1の領域に応答して整数のピクセル解像度で複数の第2の運動ベクトルを生成し、(iii)前記第2の領域と前記第2の運動ベクトルとに応答して前記第1の運動ベクトルを前記サブピクセル解像度で生成するように構成された第2の回路と、
を備えていることを特徴とする装置。
【請求項17】
請求項16記載の方法において、前記第2の運動ベクトルの少なくとも2つは異なるサイズを有する複数のブロックに対する運動を記述することを特徴とする方法。
【請求項18】
請求項16記載の方法において、前記第2の領域の生成と前記第2の運動ベクトルの生成とは実質的に同時に実行されることを特徴とする方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2010−81634(P2010−81634A)
【公開日】平成22年4月8日(2010.4.8)
【国際特許分類】
【出願番号】特願2009−263923(P2009−263923)
【出願日】平成21年11月19日(2009.11.19)
【分割の表示】特願2003−425334(P2003−425334)の分割
【原出願日】平成15年12月22日(2003.12.22)
【出願人】(591007686)エルエスアイ コーポレーション (93)
【Fターム(参考)】