動き推定システムにおいてモーメント及び加速度ベクトルを使用するオブジェクト追跡
ビデオ画像シーケンスにおける動き推定方法及び装置が提供される。この方法は、a)ビデオ画像シーケンスの各フィールド又はフレームを複数のブロックへと細分化し、b)各ビデオフィールド又はフレームの各ブロックに候補動きベクトルの各セットを指定し、c)現在ビデオフィールド又はフレームの各ブロックに対して、その各々の候補動きベクトルのどれが手前のビデオフィールド又はフレームのブロックとの最良の一致を生じるか決定し、d)各ブロックに対してこのようにして決定された最良一致ベクトルを使用して現在ビデオフィールド又はフレームの動きベクトルフィールドを形成し、e)候補動きベクトルから導出された距離だけオフセットされたブロック位置において最良一致ベクトルから導出された候補動きベクトルを記憶することにより更に別の動きベクトルフィールドを形成することを含む。更に、現在ビデオフィールド又はフレームに続くビデオフィールド又はフレームに対して段階a)ないしe)を繰り返す。段階b)において後続ビデオフィールド又はフレームのブロックに指定される候補動きベクトルのセットは、段階e)において現在ビデオフィールド又はフレームの間にそのブロック位置に記憶された候補を含む。この方法は、ブロック又はタイルベースの動き推定器が実世界のオブジェクトの物理的な振舞いから導出された真の動きベクトル候補を導入することによりその精度を改善できるようにする。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ブロックベースの動き推定システムに係り、より詳細には、真の動きを識別するために実世界の物理的な性質を考慮して候補動きベクトルを発生することに関連した方法に係る。
【背景技術】
【0002】
ブロックベースのマッチング技術を使用してビデオシーケンスにおいて動きを識別することが良く知られている。これらの方法は、一般に、ビデオシーケンスからの2つの連続するフレームを考慮して、それらを、ブロック又はマクロブロックとして知られた複数の領域に細分化する。動きサーチ手順では、各ブロックが、手前のフレームにおける種々の候補位置からのピクセルデータと比較される。最良一致の相対的な位置が、そのブロック位置におけるシーンの動きを記述するベクトルを与える。集合的に、フレーム内の各ブロック位置における動きベクトルのセットは、そのフレームに対する動きベクトルフィールドとして知られている。「ベクトルフィールド」という語の使用は、以下に述べるようにインターレース型ビデオシーケンスにおけるデータを記述するための「フィールド」又は「ビデオフィールド」の使用と混同してはならないことに注意されたい。
【0003】
ビデオシーケンスは、典型的に、ビデオデータの一連の非インターレース型フレーム、又はビデオデータの一連のインターレース型フィールドを含む。インターレース型シーケンスは、ディスプレイの交互の線でデータを搬送するフィールドにより発生され、第1のフィールドは、交互の線のためのデータを搬送し、そして第2のフィールドは、欠落線のためのデータを搬送する。従って、フィールドは、時間的及び空間的に離間される。シーケンスにおける各交互のフィールドが同じ空間的位置にデータを搬送する。
【0004】
図1は、ブロックマッチング動き推定器の典型的な例を示す。図1を含む全ての図において、動きベクトルは、そのベクトルに対応するブロックの中心に矢印の頭が来るように示されている。フレームは、ブロックに分割され、そして手前のフレームのオブジェクト101は、現在フレームの位置102へ移動している。オブジェクトの手前の位置は、103として現在フレームに重畳されて示されている。動きの推定は、オブジェクトではなく、ブロックについて遂行され、現在フレームにおけるピクセルのブロックは、必ずしもブロック整列されない手前のフレームにおけるブロックサイズピクセルエリアとマッチングされる。例えば、ブロック104は、運動オブジェクト102によって部分的に重畳され、105で示すようなコンテンツを有する。ブロック104に対する動き推定は、それが良好に行われる場合に、手前のフレームにおけるピクセルデータエリア106を見つけ、これは、105で示されたピクセルを含むようにも見え、即ち良好な一致が見つかる。現在フレームに戻るように重畳されて、マッチングするピクセルデータエリアは、107である。それ故、ブロック104に関連した動きベクトルは、矢印108で示される。
【0005】
多くのブロックベースの動き推定器は、絶対差の和(SAD)又は2乗差の平均(MSD)のような方法で動きベクトル候補のセットをテストして、最低のエラーブロック一致を与える動きベクトルを識別することにより、出力動きベクトルを選択する。図2は、211で示すピクセルコンテンツを有する現在フレームのブロック201に対する候補評価プロセスを示す。この簡単な規範的システムにおいて、手前のフレームの位置202、203及び204における候補ピクセルデータエリアに対応する3つの動きベクトル候補206、207及び208が考慮される。これらピクセルデータエリアのピクセルコンテンツは、各々、212、213及び214に見ることができる。位置202のピクセルデータは、ブロック201に対して最良の一致を与え、それ故、最良の一致/最低の差の候補として選択されねばならないことは明らかである。現在フレームに戻るように重畳されて、マッチングするピクセルデータエリアは、205であり、それに関連する動きベクトルは、206である。
【0006】
異なるシステムは、動き推定の異なる要件を有する。ビデオエンコーダでは、その要件は、シーケンスから手前のフレームを参照することにより、フレームの最もコンパクトな表現を形成することである。その要件は、一般的に、最低のエラーブロック一致を与える動きベクトルを見つけることであり、それにより得られる動きベクトルは、通常、シーンにおけるオブジェクトの実際の動きを表現するが、常にそうであることは要求されない。デインターレース又はフレームレート変換のような他のアプリケーションでは、たとえビデオにおける他の歪が、ブロック一致が常に最低エラーを与えるものでないことを意味しても、動きベクトルがシーンの真の動きを表すことがより重要である。動きサーチ中に候補動きベクトルに適当な制約を適用することにより、必要に応じて、「最低エラー」又は「真の動き」に向けて結果を誘導することができる。
【発明の概要】
【発明が解決しようとする課題】
【0007】
動きベクトルは、隣接ブロックのベクトルと空間的及び時間的に強く相関されることが知られており、従って、これらの隣接ベクトルは、動き推定器における候補の基礎としてしばしば使用される。ビデオにおける動きが変化するときにシステムが適応できるようにランダム要素を候補に合体することもできる。ブロックが、その隣接部により単純に予想されない動きを有する場合には、従来のシステムは、ベクトル候補のランダム摂動に依存する。これは、ゆっくり変化するベクトルフィールドについては良好に作用するが、隣接部に対して非常に異なる新たなベクトルへ動き推定器が迅速に収斂できない傾向にある。ランダムさに依存するシステムは、時間と共に正しい動きに向かってさまようが、局部的な最小値に定着する状態となるか、又は動きが得られる時間までに動きが再び変化するようにゆっくり収斂する傾向となる。各ブロックに対してテストされる候補動きベクトルの数は、多くの場合、真の動きを識別するに充分な大きさのセットを選択することと、計算費用を最小にするに足るほど小さいながら、低い残留エラーとの良好な一致を与えることとの間の妥協である。
【課題を解決するための手段】
【0008】
本発明は、実世界のオブジェクトに存在する物理的モーメント及び加速度から導出される候補動きベクトルを発生する効率的な方法を提供する。従って、それらは、シーンの真の動きを表す見込みが高い。このような候補は、時間的及び空間的に導出される候補を使用する他のベクトル伝播技術では得ることができず、又、ランダムさに完全に依存するシステムよりも効率良く動きを追跡し且つ変化する動きに適応する方法を提供する。本発明は、ランダムさの必要性を完全に除去するものでなく、動きを正確に予想する単一候補動きベクトルは、正しいベクトルを選択したりしなかったりする多数のランダム推測よりも明らかに良好である。又、本発明は、若干のランダム候補を使用することができ、或いはおそらく、迅速な又は変化する動きのエリアにおいて高速で収斂させることができる。
【0009】
多くの動き推定(例えば、デハーン氏等、True-Motion Estimation with 3-D Recursive Search Block Matching, IEEE Transaction on Circuits and Systems for Video Technology、第3巻、第5号、1993年10月)は、時間的ベクトルを、動き推定器における候補動きベクトルの1つとして使用する。同じ位置又は同様の位置のブロックから現在ブロックへ、以前のフレームの動き推定処理中にそのブロックに対して導出された動き推定結果を使用して、時間的ベクトル候補が取り出される。時間的ベクトル候補の使用は、オブジェクトがブロックより大きいという仮定、及びあるブロック位置のオブジェクトが過去に特定の速度で移動した場合にブロックで到着する新たなコンテンツがおそらく同じ速度及び方向で動き続けるという仮定に基づく。動き続けるという仮定は、実世界のオブジェクトがモーメントの物理的特性を示すので妥当であり、従って、時間的ベクトルは、有用な候補動きベクトルを与える。
【0010】
又、従来技術では、例えば、MPEG−4ビデオエンコーディングの改善型予想ゾーンサーチ(EPZS)技術においてスタティックブロック位置に対する指標を発生するために、ブロック加速度の概念も使用されている。この方法では、2つのフレームにわたって固定ブロック位置に存在する差動的に増加/減少する動きベクトルを考慮し、そしてそれにより得られる「加速度動きベクトル」を、次のフレームに使用するために同じブロック位置に記憶することにより、ブロックの加速度が計算される。図3は、現在フレームのブロック303に対する「加速度動きベクトル」306の形成を示す。ブロック303、302及び301は、各々、現在フレーム、手前のフレーム、及びその前のフレームにおける同じ空間的ブロック位置であり、それ故、同一位置にあると言うことができる。同一位置にあるブロックの差動的加速度は、フレームn−1からの動きベクトル305と、フレームn−1とn−2との間の動きの差動的変化との和であることが分かる。それ故、ベクトル306は、ベクトル305の2倍からベクトル304を差し引くことにより与えられる。
【0011】
本発明の第1の態様によれば、ビデオ画像シーケンスにおける動き推定方法において、a)ビデオ画像シーケンスの各フィールド又はフレームを複数のブロックへと細分化する段階と、b)各ビデオフィールド又はフレームの各ブロックに候補動きベクトルの各セットを指定する段階と、c)現在ビデオフィールド又はフレームの各ブロックに対して、その各々の候補動きベクトルのどれが手前のビデオフィールド又はフレームのブロックとの最良の一致を生じるか決定する段階と、d)各ブロックに対してこのようにして決定された最良一致ベクトルを使用して現在ビデオフィールド又はフレームの動きベクトルフィールドを形成する段階と、e)候補動きベクトルから導出された距離だけオフセットされたブロック位置において最良一致ベクトルから導出された候補動きベクトルを記憶することにより更に別の動きベクトルフィールドを形成する段階と、f)現在ビデオフィールド又はフレームに続くビデオフィールド又はフレームに対して段階a)ないしe)を繰り返す段階であって、段階b)において後続ビデオフィールド又はフレームのブロックに指定される候補動きベクトルのセットが、段階e)において現在ビデオフィールド又はフレームの間にそのブロック位置に記憶された候補を含むようにする段階と、を備えた方法が提供される。
【0012】
本発明の説明は、一連のフルフレームのデータでビデオが構成されるような非インターレース型又は進歩型ビデオ信号に対して動作する動き推定システムに関して行われる。動き推定は、通常、一連のフィールドでビデオが構成されるインターレース型ビデオに対しても行われる。本発明の原理は、非インターレース型及びインターレース型の両ビデオに対して動作する動き推定器にも等しく適用できる。従って、「フィールド又はフレーム」或いは「ビデオフィールド又はフレーム」という語は、インターレース型及び非インターレース型の両ビデオ信号に対する動き推定もカバーする。「フレーム」という語が使用される場合には、「フィールド又はフレーム」と解釈されるべきであり、即ち非インターレース型ビデオ信号及びインターレース型ビデオ信号に対して遂行される両動き推定をカバーするものと解釈されるべきである。
【0013】
「現在」「手前」及び「後続」という語は、ビデオ信号におけるフレーム又はフィールドの逐次の順序を単に指示するのに使用される相対的な用語である。「手前」のフィールド又はフレームは、「現在」フィールド又はフレームより、ある数のフレームだけ前のものであり、必ずしも、「現在」フィールド又はフレームの直前である必要はないが、実際上、多くの場合は、直前である。「後続」フィールド又はフレームは、「現在」フィールド又はフレームより、ある数のフレームだけ後のものであり、必ずしも、「現在」フィールド又はフレームの直後である必要はないが、実際上、多くの場合は、直後である。
【0014】
本発明の好ましい実施形態は、実世界のオブジェクトの物理的な振舞いから導出された真の動きベクトル候補を導入することにより、ブロック又はタイルベースの動き推定器がその精度を改善できるようにする方法を提供する。次のフレーム周期中にオブジェクトの動きを表すと予想されるモーメント及び加速度ベクトル候補が計算される。これらのベクトルをオブジェクトの現在ブロック位置に記憶するのではなく、ベクトルは、オブジェクトが移動されると予想されるブロックへ再配置される。このように、オブジェクトの動きが追跡され、特定の位置で動き推定器に得られるベクトル候補は、その位置に到達するために予想されるオブジェクトの動きに基づく予想を含む。
【0015】
1つの実施形態において、段階e)で記憶される候補動きベクトルは、最良一致ベクトルから導出され、不変速度で移動し続けるビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する。
【0016】
別の実施形態において、段階e)で記憶される候補動きベクトルは、更に、段階d)で以前に形成された1つ以上の動きベクトルフィールドの各々からのベクトルから導出される。
【0017】
その実施形態において、段階e)で記憶される候補動きベクトルは、最良一致ベクトルから、及び段階d)で以前に形成された1つの動きベクトルフィールドからのベクトルから導出され、そして一定レートで速度変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する。
【0018】
或いは又、その実施形態において、段階e)で記憶される候補動きベクトルは、最良一致ベクトルから、及び段階d)で以前に形成された2つ以上の動きベクトルフィールドからのベクトルから導出され、そしてオブジェクトの速度の導関数が一定レートで変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する。
【0019】
その実施形態において、好ましくは、手前の動きベクトルフィールドからの各ベクトルは、手前の動きベクトルフィールドのシーケンスを通して後方にステップし、そして各ステップにおいて、そのシーケンスの現在動きベクトルフィールドからフェッチされた動きベクトルから導出された距離だけ後方にオフセットした位置からベクトルをフェッチすることにより、フェッチされる。
【0020】
その場合に、シーケンスの現在動きベクトルフィールドからフェッチされる動きベクトルは、ブロックと整列しない位置を指し、そして後方にオフセットした位置は、ブロックと整列しない位置を最至近ブロックに丸めることにより導出される。
【0021】
或いは又、その場合に、シーケンスの現在動きベクトルフィールドからフェッチされる動きベクトルは、ブロックと整列しない位置を指し、そして手前の動きベクトルフィールドにおける後方にオフセットした位置からフェッチされるベクトルは、全ブロック位置におけるベクトルから補間される。
【0022】
前記方法は、更に、各オフセットブロック位置に複数の候補動きベクトルを記憶することも含む。これが行われるのは、ベクトルフィールドが均一でなく、動きベクトルがあるエリアでは発散し、他のエリアでは収斂するためである。
【0023】
プライオリティシステムを使用して各オフセットブロック位置に複数の候補動きベクトルが記憶される。これは、各オフセットブロック位置に対する記憶スペースに限度があり、又、特定のオフセットブロック位置へ書き込まれる各動きベクトルを記憶するに充分な記憶スペースがないときに有用である。実際のシステムでは、おそらく、少数の候補動きベクトルしか所与のブロック位置に記憶できない。
【0024】
好ましくは、プライオリティシステムは、段階c)で得られる最良一致のクオリティを表すメトリックを、その最良一致ベクトルから導出されて段階e)で記憶される候補動きベクトルに対するオフセットブロック位置に記憶すること、及びその記憶されたクオリティメトリックに基づき記憶のための候補動きベクトルを選択して、その記憶のために選択された候補動きベクトルが、最高の信頼性を示す記憶されたクオリティメトリックを有するベクトルであるようにすること、を含む。
【0025】
記憶のための候補動きベクトルの選択は、候補動きベクトルの各々に対して決定された最良一致ベクトルのクオリティを比較することを含む。この比較は、各最良一致ベクトルを決定するのに使用される絶対差(SAD)値の和を比較することを含む。或いは又、この比較は、各最良一致ベクトルを決定するのに使用される2乗差平均(MSD)を比較することを含む。
【0026】
或いは又、その比較は、ベクトルのクオリティの他の適当な尺度を比較することを含んでもよい。
【0027】
1つの構成では、段階e)において、候補動きベクトルは、ブロックと整列しない位置を指し、又、段階e)におけるオフセットブロック位置は、ブロックと整列しない位置を最至近ブロックへ丸めることにより導出される。実際のシステムでは、候補動きベクトルは、一般的に、全ブロック位置に整列された位置を指さない。その位置を最至近ブロックへ丸めることは、オブジェクトの動きを追跡するのに一般的に充分である。
【0028】
別の構成では、段階e)において、候補動きベクトルは、ブロックと整列しないがブロック境界に接近した位置を指し、又、段階e)におけるオフセットブロック位置は、その境界に隣接した2つ以上のブロック位置を含む。
【0029】
本発明の別の態様によれば、ビデオ画像シーケンスにおける動き推定装置において、ビデオ画像シーケンスの各フィールド又はフレームを複数のブロックへ細分化する手段と、各ビデオフィールド又はフレームの各ブロックに候補動きベクトルの各セットを指定する手段と、現在ビデオフィールド又はフレームの各ブロックに対して、その各々の候補動きベクトルのどれが手前のビデオフィールド又はフレームのブロックとの最良の一致を生じるか決定する手段と、各ブロックに対してこのようにして決定された最良一致ベクトルを使用して現在ビデオフィールド又はフレームの動きベクトルフィールドを形成する第1の手段と、候補動きベクトルから導出された距離だけオフセットされたブロック位置において最良一致ベクトルから導出された候補動きベクトルを記憶することにより更に別の動きベクトルフィールドを形成する第2の手段と、を備え、この装置が現在ビデオフィールド又はフレームに後続するビデオフィールド又はフレームに対して動作するとき、前記指定手段において前記後続ビデオフィールド又はフレーム内のブロックに指定された候補動きベクトルのセットが、前記第2の形成手段において現在ビデオフィールド又はフレームの間にそのブロック位置に記憶された候補を含むようにした、装置が提供される。
【0030】
第2の形成手段に記憶される候補動きベクトルは、最良一致ベクトルから導出され、そして不変の速度で移動し続けるビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する。
【0031】
或いは又、第2の形成手段に記憶される候補動きベクトルは、更に、第1の形成手段に以前に形成された1つ以上の動きベクトルフィールドの各々からのベクトルから導出される。
【0032】
その場合に、第2の形成手段に記憶される候補動きベクトルは、最良一致ベクトルから、及び第1の形成手段に以前に形成された1つの動きベクトルフィールドからのベクトルから導出され、そして一定レートで速度変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する。或いは又、第2の形成手段に記憶される候補動きベクトルは、最良一致ベクトルから、及び第1の形成手段に以前に形成された2つ以上の動きベクトルフィールドからのベクトルから導出され、そしてオブジェクトの速度の導関数が一定レートで変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する。
【0033】
本発明の1つの態様に関連して述べる特徴は、本発明の他の態様にも適用できる。
【0034】
以下、添付図面を参照して、本発明の好ましい実施形態を一例として詳細に説明する。
【図面の簡単な説明】
【0035】
【図1】典型的なブロックマッチング動き推定器を示す。
【図2】ブロックマッチング動き推定器が、対応するピクセルブロックの比較により、候補動きベクトルのセットから「最良」の動きベクトルをどのように選択するか示す。
【図3】改善型予想ゾーンサーチシステムにおいて加速度動きベクトルがどのように発生されるか示す。
【図4】ここに提案するシステムの実施形態において空間的にオフセットされたモーメントベクトルがどのように発生されるか示す。
【図5】加速度ベクトル候補の発生及び使用における第1段階を示す。
【図6】加速度ベクトル候補の発生及び使用における第2段階を示す。
【図7】加速度ベクトル候補の発生及び使用における第3段階を示す。
【図8】同じ位置に記憶される必要のある複数のモーメント候補が発生される状況を示す。
【図9】典型的なビデオエンコーダのブロック図で、動き推定モジュールのための共通のアプリケーションを示す。
【図10】典型的なフレームレートコンバータのブロック図で、動き推定モジュールのための共通のアプリケーションを示す。
【図11】モーメント及び加速度候補を伴わない従来の動き推定モジュールのブロック図である。
【図12】本発明によりモーメント及び加速度候補が発生される動き推定モジュールのブロック図である。
【発明を実施するための形態】
【0036】
全ての図において、動きベクトルは、そのベクトルに対応するブロックの中心に矢印の頭が来るように示されている。ブロックベースの動き推定器における各ブロックへの入力は、ブロックに存在するオブジェクトの動きを予想するように試みる候補動きベクトルの限定セットである。動き推定器は、現在フレームにおける各ブロックのピクセルを、手前のフレームにおける各候補動きベクトルに等しい空間的オフセットにより定義されたピクセルデータエリアと比較する。これらのピクセルデータエリアは、ブロックサイズものであるが、必ずしもブロック整列されることに限定されない。ベクトル選択プロセスが図2に示されており、各動きベクトル候補に対応するブロックエリアが、絶対差の和(SAD)又は平均2乗差(MSD)のようなメトリックを使用して比較される。ブロックにおける動きを表すように選択されたベクトルは、選択されたメトリックを使用して最良のスコアを与える候補動きベクトルである。良好な一致を見つけることは、(アプリケーションの要件に基づいて)ブロックに存在するオブジェクトの真の動きベクトル、又は良好なブロック一致を生じる候補、のいずれかを含む候補ベクトルのセットに依存する。モーメント及び加速度ベクトルは、真の動きベクトル候補を発生し、ひいては、動き推定のクオリティ及び制度を改善する新規なルートとして提案される。
【0037】
ブロックにおいて検出されたオブジェクトが過去においてそうであったように動き続けるという前提で考慮するにふさわしい動きベクトル候補として「モーメント候補」が提案される。実世界のオブジェクトは、質量を有し、それ故、既知の物理的な法則により定義されたモーメント及び加速度で移動する。この「実世界」の動きは、ビデオシーケンスにおいてオブジェクトが観察されるときに持続する。モーメント/加速度をフレーム位置の特性であると考え、そして固定のブロック位置において候補を評価する従来の技術とは異なり、ここに提案する本発明は、直接追跡されているオブジェクトに対して動きベクトル候補発生し、そして空間的に異なる位置にそれらを配置する。この空間的にオフセットした候補の発生は、動き予想でフレーム内のオブジェクトを追跡し、そうでなければ得られない候補動きベクトルを与えることができるようにする。
【0038】
図4は、モーメント候補がどのように発生されるかを示す。ブロック401は、オブジェクト402を含む。手前のフレームにおけるオブジェクトの位置も、ピクセルエリア404に示されている。ブロック401に対する動き推定の間に、システムは、候補ベクトルのセットから動きベクトル403を選択する。この動きベクトルは、オブジェクトの動きを、手前のフレームインターバル中にピクセルエリア404からブロック401へ反射する。このベクトルは、現在フレームのブロック401に存在して一定速度で移動するオブジェクトが、おそらく、次のフレームのブロック406へ移動することを示唆する。オブジェクトが同じ速度で移動し続けるとすれば、サイズ及び方向は403に等しいが空間的にオフセットしている動きベクトル405は、動き続けるという良好な予想である。このベクトル候補は、現在401にあるオブジェクトが次のフレームのブロック406へ移動し続けることを予想する。それ故、ブロック401において動き推定により選択されたベクトルのコピーは、現在ブロック401の位置をベクトルそれ自体の値だけオフセットするときに到達する行先ブロックであるブロック406に対応する位置においてメモリに記憶される。405として示された選択されたベクトルのこの空間的にオフセットしたコピーは、モーメント候補と称され、メモリから読み取られて、次のフレームのブロック406に対して動き推定の候補動きベクトルとして使用される。
【0039】
モーメント候補方法の更なる発展は、例えば、一定の動きだけでなく、動きの変化率も考慮するように、より高次のものへ拡張することである。論理的段階は、「加速度候補」を生成することであるが、より高次の相違も考えられる。「加速度候補」という語は、ここでは、ベクトルがオブジェクトの加速度を直接表す候補ではなく、動きの変化率を使用して導出された動きベクトル候補を指示するのに使用されることに注意されたい。第1次の加速度候補は、速度の変化率を決定するために2つのフレームにわたるオブジェクトの動き履歴を考慮する。この第1次の加速度候補は、実世界のシーンで通常観察されるように一定のレートで動きが変化するオブジェクトの動きを予想することができる。
【0040】
図5から7は、カーブした経路に沿ったオブジェクトの動きを示すもので、モーメント及び加速度候補ベクトルの発生及び使用を示す。図5は、現在フレームにおけるオブジェクトの位置を指示するために陰影付けされて示されたオブジェクト502を含むブロック501を示している。過去及び将来のフレームにおけるオブジェクトの位置も示され、手前のフレームにおけるオブジェクトの位置は、ピクセルエリア503である。ブロック501に対する動き推定は、それが正確であると仮定すれば、手前のフレームのピクセルエリア503から現在フレームのブロック501へのオブジェクトの移動を正しく表す動きベクトル504を発生する。動きベクトル504と同一のモーメント候補ベクトルは、モーメント候補ベクトル506による現在ブロック501からのオフセットで見つけられるブロック505に対応する位置においてメモリに記憶される。この段階では、加速度候補を発生し又は記憶するには履歴が不充分である。
【0041】
図6は、シーケンスにおける第2のフレームを示す。ブロック601は、今や、手前のフレームのピクセルエリア603に位置していたオブジェクト602を含む。この場合には、モーメント候補は、有用でない。というのは、オブジェクトの位置がブロック604であると誤って予想し、それ故、その位置に記憶されるからである。この候補は、ブロック601の動き推定中には得られず、動きの方向の変化のために、良好なブロック一致を与えることはおそらくない。この場合も、ブロック601に対する動き推定が成功となり、オブジェクトの動きを正確に記述する動きベクトル605を手前のフレームのピクセルエリア603から現在フレームのブロック601へ発生すると仮定する。モーメント候補ベクトルは、モーメント候補ベクトル606により現在ブロック位置からオフセットされたブロック607に対応する位置に記憶される。
【0042】
今や、次のフレームに対する加速度候補を計算するに充分な情報が得られる。現在動きベクトル605は、手前のフレームのブロック603について計算されたベクトル608と比較される。ブロック603の位置は、動きベクトル605を発生するために現在ブロックとマッチングされたピクセルエリアに対応するか又はそれに最も近いブロックであるとして知られている。換言すれば、ベクトル608は、現在ブロック605の動きベクトルにより現在ブロック601の位置から後方にオフセットされた位置において、手前のフレームに対して決定された動きベクトルフィールドから検索することができる。次いで、動きベクトルの変化609が計算されて現在動きベクトルに加算され、次のフレームにおけるオブジェクトの位置を予想するよう試みる加速度候補610を発生する。加速度候補は、加速度候補ベクトル610により現在ブロック位置601からオフセットされたブロック611に対応する位置に記憶される。
【0043】
図7は、シーケンスにおける第3のフレームを示す。ブロック701は、手前のフレームのピクセルエリア703に位置したオブジェクト702を含む。手前のフレームの処理中に、(図6に601と表示された)ブロック703に対応する位置の動き推定は、モーメント候補を、ブロック704に対応する位置に記憶させ、そして加速度候補を、ブロック701に対応する位置に記憶させる。ブロック701に対する動き推定中に、加速度候補705は、手前のフレームのピクセルエリア703から現在フレームのブロック701へのオブジェクトの動きを正確に記述する良好なブロック一致を与えることが分かる。それ故、加速度候補は、ブロックに対する動きベクトルとして選択される見込みが高い。手前のフレームから前方に通過した加速度候補は、オブジェクトの動きを正確に予想し、そして以前にそのような候補が存在しないところに有用なベクトル候補を与える。それ故、動き推定のクオリティ及び精度が改善される。上述したように、動きの変化706を表すベクトルが計算されそして動きベクトル705に加算されて、新たな加速度候補ベクトル707を発生し、これは、加速度候補ベクトルのサイズだけ現在ブロックからオフセットされた位置708に記憶される。同様に、モーメント候補が位置709に記憶される。
【0044】
システムをより高次の動きへ拡張するには、時間と共に動きが変化する仕方を決定するように付加的な動きベクトル履歴が要求される。システムは、オブジェクトの位置及び動きを予想することに関するもので、従って、手前の動きベクトルフィールドのシーケンスを通して動きベクトルを後方にたどり、オブジェクトの位置を追跡することが必要である。手前の動きベクトルフィールドのシーケンスを経て後方の各々進むことで、現在フィールドから動きベクトルが取り出され、それを使用して、手前のフィールドにおける位置を決定する。例えば、図7において、現在ブロックは、701であり、関連ベクトルは、705である。このベクトルを後方オフセットとして使用して、オブジェクトの手前の位置がブロック703にあったことが指示される。図6を参照すると、同じブロックが601として示されている。この位置におけるベクトルは、605であり、このベクトルを後方オフセットとして使用して、オブジェクトの手前の位置がブロック603にあったことが指示される。図5において、同じブロックが501として示されている。同様の後方進行は、ベクトル504を使用して、オブジェクトの手前の位置がブロック503であったことを決定する。正確なベクトルが与えられると、記憶されたベクトルフィールドと同数のフレームに対してオブジェクトの動きを後方に追跡することができる。次いで、これらの各位置における動きベクトルは、特定オブジェクトに対する動きの履歴を与え、将来のそのオブジェクトの位置を予想するのに使用することができる。
【0045】
図4から7、及びまだ説明されていない図8は、各フレームのブロック位置に整列されたままであるようなブロックサイズオブジェクトの移動及び加速を示している。これは、図示明瞭化のためである。オブジェクトは、単一ブロックより大きく、そして動きベクトルは、ブロックサイズの単純な倍数であることが稀である。モーメント又は加速度候補に対する記憶位置は、動きベクトルを現在ブロック位置からのオフセットとして使用することにより決定される。同様に、加速度ベクトルを計算するときには、手前のフレームのブロックに対して計算された動きベクトルを、例えば、図6の例ではブロック603の位置から、そして図7の例ではブロック703の位置から検索することが必要である。又、これらブロックの位置は、動きベクトルを使用して、現在ブロック位置からのオフセットを生成することでも決定される。このように決定される位置は、一般的に、全ブロック位置に整列されるのではなく、従って、実際のシステムは、適切なブロック位置を決定するための方法を必要とする。1つの適当な方法は、ベクトル候補がどのピクセルを指すか決定し、そのピクセルの親ブロックに候補を記憶することである。換言すれば、候補のための記憶位置を最も近い全ブロック位置に丸めることである。これは、一般的に、オブジェクトの動きを追跡するのに充分である。良好なベクトルを近くのブロックへ伝播するほとんどの動き推定システムの自然の傾向は、良好なモーメント又は加速度候補が、追跡されているオブジェクトへ「パチン」と戻ることを意味する。又、システムは、動き推定を行うときに、隣接ブロック位置及び現在ブロックからモーメント及び加速度候補を考慮することにより、付加的な頑健性を追加するように選択することができる。或いは又、加速度又はモーメント候補ベクトルが2つのブロック間の記憶位置中間部を指示するようなものである場合には、システムは、両位置に候補を記憶するように選択することができる。手前のフレームから動きベクトルを検索するときには、丸めに代わって、要求された位置においてベクトルフィールドを補間することができる。
【0046】
ベクトルフィールドは、均一でないことに注意するのが重要である。動きベクトルは、あるエリアでは発散し、他のエリアでは収斂する。その結果、2つ以上のモーメント又は加速度候補が単一ブロックに記憶され、そしてあるブロックについては、記憶される候補がないことがある。図8は、一例としてモーメント候補を使用してブロック当たり複数の候補を生じる状況を示す。現在フレームのブロック801に対する動き推定は、手前のフレームのピクセルエリア803からのオブジェクト802に対する一致を見つけ、従って、動きベクトル804を発生する。現在フレームのブロック807に対する動き推定は、手前のフレームのピクセルエリア808からの一致を見つけ、従って、動きベクトル809を発生する。それ故、モーメント候補806及び810は、動きベクトルによりそれらの原点ブロックからオフセットした位置に記憶される。この場合は、モーメントベクトルがブロック805に記憶されることが要求される。又、より高次の候補、例えば、加速度候補を記憶するときにも、同様の状況が存在する。
【0047】
システムは、記憶スペースに限度があるとき、同じ位置への記憶を要求する複数の候補をどのように管理するか判断しなければならない。複数の候補を記憶するためのスペースが利用できる場合、及び動き推定中にそれらをテストするに充分な計算ニットが利用できる場合には、記憶されそしてその後に使用される数に限度はない。実際のシステムでは、おそらく、所与のブロック位置、例えば、1、2又は4に少数のモーメント/加速度候補だけが記憶され、候補をプライオリティ付けする方法を案出することが必要となる。例えば、ブロック位置当たり1つのモーメント候補のための記憶スペースしかないシステムでは、空き位置は、常に、記憶を要求する第1の候補により埋められる。次いで、システムが第2の候補を同じ位置に記憶するよう試みる場合には、第1のベクトルを第2のベクトルに置き換えるか、又は第1のベクトルを保持して第2のベクトルを破棄するか、判断しなければならない。SAD又はMSD値は、ベクトルの「クオリティ」の尺度を与え、従って、そのような判断に到達するための適度な仕方は、2つのベクトルを生じたブロックマッチングプロセスの結果を比較し、そして最良の一致を生じたベクトルを選択することである。
【0048】
図9は、典型的なビデオエンコーダアプリケーションに使用される動き推定システムのブロック図である。ビデオ入力905は、動き推定ユニット901に供給され、このユニットは、ブロックを、以前にエンコードされたフレームから再構成された基準画像902のブロックと比較する。この基準画像902は、メモリ903に記憶される。この動き推定ユニット901は、動きベクトル904のセットを発生し、これは、入力ビデオシーケンス905の各フィールド又はフレームの各ブロックに対して、基準画像902からそのブロックを導出する際に最良の一致を与える。動き補償ユニット906は、ベクトルを使用して、基準画像902のピクセルのみから入力フレーム又はフィールドに対する近似を構成する。次いで、動き補償ユニット906の出力は、減算器907において入力ビデオ信号905の各フィールド又はフレームと比較されて、画像に対する残留信号又は差信号908を発生する。この残留信号908は、変換/量子化ユニット909へ通され、次いで、ビットストリームエンコーダ910において動き推定ユニット901の出力と合成されて、ビットストリーム出力912を発生する。動き推定ユニット901及び変換量子化ユニット909は、基準画像902と共に、再構成ユニット911への入力を形成し、この再構成ユニットは、動き推定ユニット901においてビデオ信号の後続フィールド又はフレームと比較するためのフレームを再構成してメモリ903に記憶するために使用される。それ故、これは、ビデオエンコーダに使用される従来の動き推定スキームである。本発明によるモーメント及び加速度ベクトル候補のシステムは、動き推定ユニット901の性能を改善すると考えられる。
【0049】
ビデオにおけるオブジェクトの真の動きの正確な表現を要求するアプリケーションは、フレームレート変換及びデインターレースを含む。フレームレート変換アプリケーションが図10に示されている。フレームレート変換は、例えば、60フレーム/秒のビデオシーケンスを120フレーム/秒の高いレートへ変換するのに使用される。これは、各対の入力フレーム間の中間の時間インスタンスに付加的なフレームを補間することにより達成される。図10において、このシステムは、ビデオ入力1001を含み、これは、入力フレーム履歴を記憶するためのメモリ1002と、ビデオ入力1001からの現在入力フレームをメモリ1002からの手前のフレームと比較することにより動き推定を行う動き推定ユニット1003とに送られる。動きベクトルは、入力フレームから補間されたフレームを構成してビデオ出力1007を与える補間ユニット1004へ送られる。動きベクトルを知ることで、補間ユニット1004は、補間されたフレームのオブジェクトがその動きの軌道に基づいて適当な位置に現れるようにピクセルを配することができる。又、フレームレート変換は、非整数フレームレート比、例えば、24フレーム/秒ないし60フレーム/秒で変換を行ってもよい。この場合に、補間されたフレームの時間インスタンスが変化し、入力フレーム間の厳密な中間ではない。タイミング制御ユニット1005は、補間ユニットが正しい出力を生成できるように適当な倍率係数を与える。又、画像分析ユニット1006は、入力データを分析し、そしてシステムの性能を監視することができる。例えば、タイミング制御の振舞いを調整することによりエラーを隠すことができる。フレームレート変換及びデインターレースは、オブジェクトを出力フレーム又はフィールドの正しい位置に表さねばならない場合には、オブジェクトの真の動きを表す高クオリティの動きベクトルに強く依存する。モーメント及び加速度ベクトル候補を使用するシステムは、ビデオにおける真の動きを表す見込みが高いベクトル候補を動き推定器に与えるために真のオブジェクトがどのように振舞うか分かるという効果がある。
【0050】
図11は、図9又は図10のシステムに使用されるタイプの従来のブロックベース動き推定器の詳細なブロック図である。これは、手前のフレームから導出された動きベクトル1102のセットと、既に処理された現在フレームの部分から導出された動きベクトル1103のセットとを含む動きベクトルメモリ1101を備えている。現在フレームのブロックの動き推定は、ブロックシーケンサー1104の制御のもとで行われる。候補発生ユニット1105は、ブロックに対する適当な動きベクトル候補を与えるためにベクトルフィールドの時間的及び空間的一貫性を利用するよう試みるパターンに基づいて動きベクトルメモリ1101からベクトルを選択する。又、候補発生ユニット1105は、ベクトルにある程度のランダムさを導入し、処理が進行するにつれてベクトルフィールドが新たな動きに適応してそれに収斂できるようにする。手前のフレームデータ1108及び現在フレームデータ1109を含むビデオメモリ1107にアドレスが供給され、メモリにより返送されるピクセルデータが各ベクトル候補に基づいて現在ブロック位置からオフセットされるようにする。ピクセルデータ比較ユニット1110において比較するために各フレームからピクセルデータが与えられる。その出力は、絶対差の値の和であって、最良ベクトル選択ユニット1106へ送られ、該ユニットは、そのデータを使用して、候補発生ユニット1105からのベクトル候補のどれが、そのブロック位置において別のものから1つのフレームを導出する際に、最良の一致を与えるか識別する。次いで、最良ベクトル選択ユニット1106は、選択されたベクトルを、動きベクトルメモリ1101の現在フレーム動きベクトル1103に与える。
【0051】
図12は、ブロックに対するモーメント及び加速度候補ベクトルも与える動き推定器のブロック図である。これは、図11の回路の変形態様であり、両回路において同じものであるユニットは、同じ参照番号を共有する。動きベクトルメモリ1101は、多数の手前のフレームから導出された動きベクトル1206のセットと、既に処理された現在フレームの部分から導出された動きベクトル1103のセットとを含む。更に、動きベクトルメモリ1101は、現在フレームのモーメント/加速度動きベクトル候補1201のブロックと、次のフレームのモーメント/加速度候補1202のセットとを含む。候補発生ユニット1105は、今度は、図11を参照して説明した方法に基づいて選択された候補に加えて、メモリ1101からのモーメント及び加速度候補も含む。次のフレームの動き推定に使用するためのモーメント候補ベクトルは、モーメント候補発生ユニット1203において選択ユニット1106での最良ベクトル選択の後に発生される。これは、図4を参照して述べた方法に基づいてモーメントベクトル候補を発生し、それらは、次いで、次のフレームのモーメント/加速度候補ブロック1202に記憶される。その後続フレームが処理されると、それらは、現在フレームのモーメント/加速度候補ブロック1201へ転送される。
【0052】
次のフレームの動き推定に使用するための加速度候補ベクトルは、加速度候補発生ユニット1204において発生され、このユニットは、最良ベクトル選択ユニット1106の出力にも結合されて、図5ないし7を参照して説明した方法に基づいて加速度候補を発生する。それらは、動きベクトルメモリ1101において現在フレームモーメント/加速度候補ブロック1201へ転送される前に、次のフレームのモーメント/加速度候補ブロック1202に記憶される。又、このシステムは、必要に応じてより高次の候補を発生できると共に、必要とされる高次の候補の数に対応する数の更に別の候補発生ブロック(1205で一般的に示す)を設けることもできる。
【符号の説明】
【0053】
101、102:オブジェクト
104:ブロック
105:コンテンツ
106:ピクセルデータエリア
201:ブロック
202、203、204:位置
206、207、208:移動ベクトル候補
401:ブロック
402:オブジェクト
403:動きベクトル
404:ピクセルエリア
405:動きベクトル
406:ブロック
901:動き推定
902:基準画像
903:メモリ
904:ベクトル
905:ビデオ入力
906:動き補償ユニット
908:残留信号
909:変換/量子化ユニット
910:ビットストリームエンコーダ
911:再構成ユニット
912:ビットストリーム出力
【技術分野】
【0001】
本発明は、ブロックベースの動き推定システムに係り、より詳細には、真の動きを識別するために実世界の物理的な性質を考慮して候補動きベクトルを発生することに関連した方法に係る。
【背景技術】
【0002】
ブロックベースのマッチング技術を使用してビデオシーケンスにおいて動きを識別することが良く知られている。これらの方法は、一般に、ビデオシーケンスからの2つの連続するフレームを考慮して、それらを、ブロック又はマクロブロックとして知られた複数の領域に細分化する。動きサーチ手順では、各ブロックが、手前のフレームにおける種々の候補位置からのピクセルデータと比較される。最良一致の相対的な位置が、そのブロック位置におけるシーンの動きを記述するベクトルを与える。集合的に、フレーム内の各ブロック位置における動きベクトルのセットは、そのフレームに対する動きベクトルフィールドとして知られている。「ベクトルフィールド」という語の使用は、以下に述べるようにインターレース型ビデオシーケンスにおけるデータを記述するための「フィールド」又は「ビデオフィールド」の使用と混同してはならないことに注意されたい。
【0003】
ビデオシーケンスは、典型的に、ビデオデータの一連の非インターレース型フレーム、又はビデオデータの一連のインターレース型フィールドを含む。インターレース型シーケンスは、ディスプレイの交互の線でデータを搬送するフィールドにより発生され、第1のフィールドは、交互の線のためのデータを搬送し、そして第2のフィールドは、欠落線のためのデータを搬送する。従って、フィールドは、時間的及び空間的に離間される。シーケンスにおける各交互のフィールドが同じ空間的位置にデータを搬送する。
【0004】
図1は、ブロックマッチング動き推定器の典型的な例を示す。図1を含む全ての図において、動きベクトルは、そのベクトルに対応するブロックの中心に矢印の頭が来るように示されている。フレームは、ブロックに分割され、そして手前のフレームのオブジェクト101は、現在フレームの位置102へ移動している。オブジェクトの手前の位置は、103として現在フレームに重畳されて示されている。動きの推定は、オブジェクトではなく、ブロックについて遂行され、現在フレームにおけるピクセルのブロックは、必ずしもブロック整列されない手前のフレームにおけるブロックサイズピクセルエリアとマッチングされる。例えば、ブロック104は、運動オブジェクト102によって部分的に重畳され、105で示すようなコンテンツを有する。ブロック104に対する動き推定は、それが良好に行われる場合に、手前のフレームにおけるピクセルデータエリア106を見つけ、これは、105で示されたピクセルを含むようにも見え、即ち良好な一致が見つかる。現在フレームに戻るように重畳されて、マッチングするピクセルデータエリアは、107である。それ故、ブロック104に関連した動きベクトルは、矢印108で示される。
【0005】
多くのブロックベースの動き推定器は、絶対差の和(SAD)又は2乗差の平均(MSD)のような方法で動きベクトル候補のセットをテストして、最低のエラーブロック一致を与える動きベクトルを識別することにより、出力動きベクトルを選択する。図2は、211で示すピクセルコンテンツを有する現在フレームのブロック201に対する候補評価プロセスを示す。この簡単な規範的システムにおいて、手前のフレームの位置202、203及び204における候補ピクセルデータエリアに対応する3つの動きベクトル候補206、207及び208が考慮される。これらピクセルデータエリアのピクセルコンテンツは、各々、212、213及び214に見ることができる。位置202のピクセルデータは、ブロック201に対して最良の一致を与え、それ故、最良の一致/最低の差の候補として選択されねばならないことは明らかである。現在フレームに戻るように重畳されて、マッチングするピクセルデータエリアは、205であり、それに関連する動きベクトルは、206である。
【0006】
異なるシステムは、動き推定の異なる要件を有する。ビデオエンコーダでは、その要件は、シーケンスから手前のフレームを参照することにより、フレームの最もコンパクトな表現を形成することである。その要件は、一般的に、最低のエラーブロック一致を与える動きベクトルを見つけることであり、それにより得られる動きベクトルは、通常、シーンにおけるオブジェクトの実際の動きを表現するが、常にそうであることは要求されない。デインターレース又はフレームレート変換のような他のアプリケーションでは、たとえビデオにおける他の歪が、ブロック一致が常に最低エラーを与えるものでないことを意味しても、動きベクトルがシーンの真の動きを表すことがより重要である。動きサーチ中に候補動きベクトルに適当な制約を適用することにより、必要に応じて、「最低エラー」又は「真の動き」に向けて結果を誘導することができる。
【発明の概要】
【発明が解決しようとする課題】
【0007】
動きベクトルは、隣接ブロックのベクトルと空間的及び時間的に強く相関されることが知られており、従って、これらの隣接ベクトルは、動き推定器における候補の基礎としてしばしば使用される。ビデオにおける動きが変化するときにシステムが適応できるようにランダム要素を候補に合体することもできる。ブロックが、その隣接部により単純に予想されない動きを有する場合には、従来のシステムは、ベクトル候補のランダム摂動に依存する。これは、ゆっくり変化するベクトルフィールドについては良好に作用するが、隣接部に対して非常に異なる新たなベクトルへ動き推定器が迅速に収斂できない傾向にある。ランダムさに依存するシステムは、時間と共に正しい動きに向かってさまようが、局部的な最小値に定着する状態となるか、又は動きが得られる時間までに動きが再び変化するようにゆっくり収斂する傾向となる。各ブロックに対してテストされる候補動きベクトルの数は、多くの場合、真の動きを識別するに充分な大きさのセットを選択することと、計算費用を最小にするに足るほど小さいながら、低い残留エラーとの良好な一致を与えることとの間の妥協である。
【課題を解決するための手段】
【0008】
本発明は、実世界のオブジェクトに存在する物理的モーメント及び加速度から導出される候補動きベクトルを発生する効率的な方法を提供する。従って、それらは、シーンの真の動きを表す見込みが高い。このような候補は、時間的及び空間的に導出される候補を使用する他のベクトル伝播技術では得ることができず、又、ランダムさに完全に依存するシステムよりも効率良く動きを追跡し且つ変化する動きに適応する方法を提供する。本発明は、ランダムさの必要性を完全に除去するものでなく、動きを正確に予想する単一候補動きベクトルは、正しいベクトルを選択したりしなかったりする多数のランダム推測よりも明らかに良好である。又、本発明は、若干のランダム候補を使用することができ、或いはおそらく、迅速な又は変化する動きのエリアにおいて高速で収斂させることができる。
【0009】
多くの動き推定(例えば、デハーン氏等、True-Motion Estimation with 3-D Recursive Search Block Matching, IEEE Transaction on Circuits and Systems for Video Technology、第3巻、第5号、1993年10月)は、時間的ベクトルを、動き推定器における候補動きベクトルの1つとして使用する。同じ位置又は同様の位置のブロックから現在ブロックへ、以前のフレームの動き推定処理中にそのブロックに対して導出された動き推定結果を使用して、時間的ベクトル候補が取り出される。時間的ベクトル候補の使用は、オブジェクトがブロックより大きいという仮定、及びあるブロック位置のオブジェクトが過去に特定の速度で移動した場合にブロックで到着する新たなコンテンツがおそらく同じ速度及び方向で動き続けるという仮定に基づく。動き続けるという仮定は、実世界のオブジェクトがモーメントの物理的特性を示すので妥当であり、従って、時間的ベクトルは、有用な候補動きベクトルを与える。
【0010】
又、従来技術では、例えば、MPEG−4ビデオエンコーディングの改善型予想ゾーンサーチ(EPZS)技術においてスタティックブロック位置に対する指標を発生するために、ブロック加速度の概念も使用されている。この方法では、2つのフレームにわたって固定ブロック位置に存在する差動的に増加/減少する動きベクトルを考慮し、そしてそれにより得られる「加速度動きベクトル」を、次のフレームに使用するために同じブロック位置に記憶することにより、ブロックの加速度が計算される。図3は、現在フレームのブロック303に対する「加速度動きベクトル」306の形成を示す。ブロック303、302及び301は、各々、現在フレーム、手前のフレーム、及びその前のフレームにおける同じ空間的ブロック位置であり、それ故、同一位置にあると言うことができる。同一位置にあるブロックの差動的加速度は、フレームn−1からの動きベクトル305と、フレームn−1とn−2との間の動きの差動的変化との和であることが分かる。それ故、ベクトル306は、ベクトル305の2倍からベクトル304を差し引くことにより与えられる。
【0011】
本発明の第1の態様によれば、ビデオ画像シーケンスにおける動き推定方法において、a)ビデオ画像シーケンスの各フィールド又はフレームを複数のブロックへと細分化する段階と、b)各ビデオフィールド又はフレームの各ブロックに候補動きベクトルの各セットを指定する段階と、c)現在ビデオフィールド又はフレームの各ブロックに対して、その各々の候補動きベクトルのどれが手前のビデオフィールド又はフレームのブロックとの最良の一致を生じるか決定する段階と、d)各ブロックに対してこのようにして決定された最良一致ベクトルを使用して現在ビデオフィールド又はフレームの動きベクトルフィールドを形成する段階と、e)候補動きベクトルから導出された距離だけオフセットされたブロック位置において最良一致ベクトルから導出された候補動きベクトルを記憶することにより更に別の動きベクトルフィールドを形成する段階と、f)現在ビデオフィールド又はフレームに続くビデオフィールド又はフレームに対して段階a)ないしe)を繰り返す段階であって、段階b)において後続ビデオフィールド又はフレームのブロックに指定される候補動きベクトルのセットが、段階e)において現在ビデオフィールド又はフレームの間にそのブロック位置に記憶された候補を含むようにする段階と、を備えた方法が提供される。
【0012】
本発明の説明は、一連のフルフレームのデータでビデオが構成されるような非インターレース型又は進歩型ビデオ信号に対して動作する動き推定システムに関して行われる。動き推定は、通常、一連のフィールドでビデオが構成されるインターレース型ビデオに対しても行われる。本発明の原理は、非インターレース型及びインターレース型の両ビデオに対して動作する動き推定器にも等しく適用できる。従って、「フィールド又はフレーム」或いは「ビデオフィールド又はフレーム」という語は、インターレース型及び非インターレース型の両ビデオ信号に対する動き推定もカバーする。「フレーム」という語が使用される場合には、「フィールド又はフレーム」と解釈されるべきであり、即ち非インターレース型ビデオ信号及びインターレース型ビデオ信号に対して遂行される両動き推定をカバーするものと解釈されるべきである。
【0013】
「現在」「手前」及び「後続」という語は、ビデオ信号におけるフレーム又はフィールドの逐次の順序を単に指示するのに使用される相対的な用語である。「手前」のフィールド又はフレームは、「現在」フィールド又はフレームより、ある数のフレームだけ前のものであり、必ずしも、「現在」フィールド又はフレームの直前である必要はないが、実際上、多くの場合は、直前である。「後続」フィールド又はフレームは、「現在」フィールド又はフレームより、ある数のフレームだけ後のものであり、必ずしも、「現在」フィールド又はフレームの直後である必要はないが、実際上、多くの場合は、直後である。
【0014】
本発明の好ましい実施形態は、実世界のオブジェクトの物理的な振舞いから導出された真の動きベクトル候補を導入することにより、ブロック又はタイルベースの動き推定器がその精度を改善できるようにする方法を提供する。次のフレーム周期中にオブジェクトの動きを表すと予想されるモーメント及び加速度ベクトル候補が計算される。これらのベクトルをオブジェクトの現在ブロック位置に記憶するのではなく、ベクトルは、オブジェクトが移動されると予想されるブロックへ再配置される。このように、オブジェクトの動きが追跡され、特定の位置で動き推定器に得られるベクトル候補は、その位置に到達するために予想されるオブジェクトの動きに基づく予想を含む。
【0015】
1つの実施形態において、段階e)で記憶される候補動きベクトルは、最良一致ベクトルから導出され、不変速度で移動し続けるビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する。
【0016】
別の実施形態において、段階e)で記憶される候補動きベクトルは、更に、段階d)で以前に形成された1つ以上の動きベクトルフィールドの各々からのベクトルから導出される。
【0017】
その実施形態において、段階e)で記憶される候補動きベクトルは、最良一致ベクトルから、及び段階d)で以前に形成された1つの動きベクトルフィールドからのベクトルから導出され、そして一定レートで速度変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する。
【0018】
或いは又、その実施形態において、段階e)で記憶される候補動きベクトルは、最良一致ベクトルから、及び段階d)で以前に形成された2つ以上の動きベクトルフィールドからのベクトルから導出され、そしてオブジェクトの速度の導関数が一定レートで変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する。
【0019】
その実施形態において、好ましくは、手前の動きベクトルフィールドからの各ベクトルは、手前の動きベクトルフィールドのシーケンスを通して後方にステップし、そして各ステップにおいて、そのシーケンスの現在動きベクトルフィールドからフェッチされた動きベクトルから導出された距離だけ後方にオフセットした位置からベクトルをフェッチすることにより、フェッチされる。
【0020】
その場合に、シーケンスの現在動きベクトルフィールドからフェッチされる動きベクトルは、ブロックと整列しない位置を指し、そして後方にオフセットした位置は、ブロックと整列しない位置を最至近ブロックに丸めることにより導出される。
【0021】
或いは又、その場合に、シーケンスの現在動きベクトルフィールドからフェッチされる動きベクトルは、ブロックと整列しない位置を指し、そして手前の動きベクトルフィールドにおける後方にオフセットした位置からフェッチされるベクトルは、全ブロック位置におけるベクトルから補間される。
【0022】
前記方法は、更に、各オフセットブロック位置に複数の候補動きベクトルを記憶することも含む。これが行われるのは、ベクトルフィールドが均一でなく、動きベクトルがあるエリアでは発散し、他のエリアでは収斂するためである。
【0023】
プライオリティシステムを使用して各オフセットブロック位置に複数の候補動きベクトルが記憶される。これは、各オフセットブロック位置に対する記憶スペースに限度があり、又、特定のオフセットブロック位置へ書き込まれる各動きベクトルを記憶するに充分な記憶スペースがないときに有用である。実際のシステムでは、おそらく、少数の候補動きベクトルしか所与のブロック位置に記憶できない。
【0024】
好ましくは、プライオリティシステムは、段階c)で得られる最良一致のクオリティを表すメトリックを、その最良一致ベクトルから導出されて段階e)で記憶される候補動きベクトルに対するオフセットブロック位置に記憶すること、及びその記憶されたクオリティメトリックに基づき記憶のための候補動きベクトルを選択して、その記憶のために選択された候補動きベクトルが、最高の信頼性を示す記憶されたクオリティメトリックを有するベクトルであるようにすること、を含む。
【0025】
記憶のための候補動きベクトルの選択は、候補動きベクトルの各々に対して決定された最良一致ベクトルのクオリティを比較することを含む。この比較は、各最良一致ベクトルを決定するのに使用される絶対差(SAD)値の和を比較することを含む。或いは又、この比較は、各最良一致ベクトルを決定するのに使用される2乗差平均(MSD)を比較することを含む。
【0026】
或いは又、その比較は、ベクトルのクオリティの他の適当な尺度を比較することを含んでもよい。
【0027】
1つの構成では、段階e)において、候補動きベクトルは、ブロックと整列しない位置を指し、又、段階e)におけるオフセットブロック位置は、ブロックと整列しない位置を最至近ブロックへ丸めることにより導出される。実際のシステムでは、候補動きベクトルは、一般的に、全ブロック位置に整列された位置を指さない。その位置を最至近ブロックへ丸めることは、オブジェクトの動きを追跡するのに一般的に充分である。
【0028】
別の構成では、段階e)において、候補動きベクトルは、ブロックと整列しないがブロック境界に接近した位置を指し、又、段階e)におけるオフセットブロック位置は、その境界に隣接した2つ以上のブロック位置を含む。
【0029】
本発明の別の態様によれば、ビデオ画像シーケンスにおける動き推定装置において、ビデオ画像シーケンスの各フィールド又はフレームを複数のブロックへ細分化する手段と、各ビデオフィールド又はフレームの各ブロックに候補動きベクトルの各セットを指定する手段と、現在ビデオフィールド又はフレームの各ブロックに対して、その各々の候補動きベクトルのどれが手前のビデオフィールド又はフレームのブロックとの最良の一致を生じるか決定する手段と、各ブロックに対してこのようにして決定された最良一致ベクトルを使用して現在ビデオフィールド又はフレームの動きベクトルフィールドを形成する第1の手段と、候補動きベクトルから導出された距離だけオフセットされたブロック位置において最良一致ベクトルから導出された候補動きベクトルを記憶することにより更に別の動きベクトルフィールドを形成する第2の手段と、を備え、この装置が現在ビデオフィールド又はフレームに後続するビデオフィールド又はフレームに対して動作するとき、前記指定手段において前記後続ビデオフィールド又はフレーム内のブロックに指定された候補動きベクトルのセットが、前記第2の形成手段において現在ビデオフィールド又はフレームの間にそのブロック位置に記憶された候補を含むようにした、装置が提供される。
【0030】
第2の形成手段に記憶される候補動きベクトルは、最良一致ベクトルから導出され、そして不変の速度で移動し続けるビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する。
【0031】
或いは又、第2の形成手段に記憶される候補動きベクトルは、更に、第1の形成手段に以前に形成された1つ以上の動きベクトルフィールドの各々からのベクトルから導出される。
【0032】
その場合に、第2の形成手段に記憶される候補動きベクトルは、最良一致ベクトルから、及び第1の形成手段に以前に形成された1つの動きベクトルフィールドからのベクトルから導出され、そして一定レートで速度変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する。或いは又、第2の形成手段に記憶される候補動きベクトルは、最良一致ベクトルから、及び第1の形成手段に以前に形成された2つ以上の動きベクトルフィールドからのベクトルから導出され、そしてオブジェクトの速度の導関数が一定レートで変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する。
【0033】
本発明の1つの態様に関連して述べる特徴は、本発明の他の態様にも適用できる。
【0034】
以下、添付図面を参照して、本発明の好ましい実施形態を一例として詳細に説明する。
【図面の簡単な説明】
【0035】
【図1】典型的なブロックマッチング動き推定器を示す。
【図2】ブロックマッチング動き推定器が、対応するピクセルブロックの比較により、候補動きベクトルのセットから「最良」の動きベクトルをどのように選択するか示す。
【図3】改善型予想ゾーンサーチシステムにおいて加速度動きベクトルがどのように発生されるか示す。
【図4】ここに提案するシステムの実施形態において空間的にオフセットされたモーメントベクトルがどのように発生されるか示す。
【図5】加速度ベクトル候補の発生及び使用における第1段階を示す。
【図6】加速度ベクトル候補の発生及び使用における第2段階を示す。
【図7】加速度ベクトル候補の発生及び使用における第3段階を示す。
【図8】同じ位置に記憶される必要のある複数のモーメント候補が発生される状況を示す。
【図9】典型的なビデオエンコーダのブロック図で、動き推定モジュールのための共通のアプリケーションを示す。
【図10】典型的なフレームレートコンバータのブロック図で、動き推定モジュールのための共通のアプリケーションを示す。
【図11】モーメント及び加速度候補を伴わない従来の動き推定モジュールのブロック図である。
【図12】本発明によりモーメント及び加速度候補が発生される動き推定モジュールのブロック図である。
【発明を実施するための形態】
【0036】
全ての図において、動きベクトルは、そのベクトルに対応するブロックの中心に矢印の頭が来るように示されている。ブロックベースの動き推定器における各ブロックへの入力は、ブロックに存在するオブジェクトの動きを予想するように試みる候補動きベクトルの限定セットである。動き推定器は、現在フレームにおける各ブロックのピクセルを、手前のフレームにおける各候補動きベクトルに等しい空間的オフセットにより定義されたピクセルデータエリアと比較する。これらのピクセルデータエリアは、ブロックサイズものであるが、必ずしもブロック整列されることに限定されない。ベクトル選択プロセスが図2に示されており、各動きベクトル候補に対応するブロックエリアが、絶対差の和(SAD)又は平均2乗差(MSD)のようなメトリックを使用して比較される。ブロックにおける動きを表すように選択されたベクトルは、選択されたメトリックを使用して最良のスコアを与える候補動きベクトルである。良好な一致を見つけることは、(アプリケーションの要件に基づいて)ブロックに存在するオブジェクトの真の動きベクトル、又は良好なブロック一致を生じる候補、のいずれかを含む候補ベクトルのセットに依存する。モーメント及び加速度ベクトルは、真の動きベクトル候補を発生し、ひいては、動き推定のクオリティ及び制度を改善する新規なルートとして提案される。
【0037】
ブロックにおいて検出されたオブジェクトが過去においてそうであったように動き続けるという前提で考慮するにふさわしい動きベクトル候補として「モーメント候補」が提案される。実世界のオブジェクトは、質量を有し、それ故、既知の物理的な法則により定義されたモーメント及び加速度で移動する。この「実世界」の動きは、ビデオシーケンスにおいてオブジェクトが観察されるときに持続する。モーメント/加速度をフレーム位置の特性であると考え、そして固定のブロック位置において候補を評価する従来の技術とは異なり、ここに提案する本発明は、直接追跡されているオブジェクトに対して動きベクトル候補発生し、そして空間的に異なる位置にそれらを配置する。この空間的にオフセットした候補の発生は、動き予想でフレーム内のオブジェクトを追跡し、そうでなければ得られない候補動きベクトルを与えることができるようにする。
【0038】
図4は、モーメント候補がどのように発生されるかを示す。ブロック401は、オブジェクト402を含む。手前のフレームにおけるオブジェクトの位置も、ピクセルエリア404に示されている。ブロック401に対する動き推定の間に、システムは、候補ベクトルのセットから動きベクトル403を選択する。この動きベクトルは、オブジェクトの動きを、手前のフレームインターバル中にピクセルエリア404からブロック401へ反射する。このベクトルは、現在フレームのブロック401に存在して一定速度で移動するオブジェクトが、おそらく、次のフレームのブロック406へ移動することを示唆する。オブジェクトが同じ速度で移動し続けるとすれば、サイズ及び方向は403に等しいが空間的にオフセットしている動きベクトル405は、動き続けるという良好な予想である。このベクトル候補は、現在401にあるオブジェクトが次のフレームのブロック406へ移動し続けることを予想する。それ故、ブロック401において動き推定により選択されたベクトルのコピーは、現在ブロック401の位置をベクトルそれ自体の値だけオフセットするときに到達する行先ブロックであるブロック406に対応する位置においてメモリに記憶される。405として示された選択されたベクトルのこの空間的にオフセットしたコピーは、モーメント候補と称され、メモリから読み取られて、次のフレームのブロック406に対して動き推定の候補動きベクトルとして使用される。
【0039】
モーメント候補方法の更なる発展は、例えば、一定の動きだけでなく、動きの変化率も考慮するように、より高次のものへ拡張することである。論理的段階は、「加速度候補」を生成することであるが、より高次の相違も考えられる。「加速度候補」という語は、ここでは、ベクトルがオブジェクトの加速度を直接表す候補ではなく、動きの変化率を使用して導出された動きベクトル候補を指示するのに使用されることに注意されたい。第1次の加速度候補は、速度の変化率を決定するために2つのフレームにわたるオブジェクトの動き履歴を考慮する。この第1次の加速度候補は、実世界のシーンで通常観察されるように一定のレートで動きが変化するオブジェクトの動きを予想することができる。
【0040】
図5から7は、カーブした経路に沿ったオブジェクトの動きを示すもので、モーメント及び加速度候補ベクトルの発生及び使用を示す。図5は、現在フレームにおけるオブジェクトの位置を指示するために陰影付けされて示されたオブジェクト502を含むブロック501を示している。過去及び将来のフレームにおけるオブジェクトの位置も示され、手前のフレームにおけるオブジェクトの位置は、ピクセルエリア503である。ブロック501に対する動き推定は、それが正確であると仮定すれば、手前のフレームのピクセルエリア503から現在フレームのブロック501へのオブジェクトの移動を正しく表す動きベクトル504を発生する。動きベクトル504と同一のモーメント候補ベクトルは、モーメント候補ベクトル506による現在ブロック501からのオフセットで見つけられるブロック505に対応する位置においてメモリに記憶される。この段階では、加速度候補を発生し又は記憶するには履歴が不充分である。
【0041】
図6は、シーケンスにおける第2のフレームを示す。ブロック601は、今や、手前のフレームのピクセルエリア603に位置していたオブジェクト602を含む。この場合には、モーメント候補は、有用でない。というのは、オブジェクトの位置がブロック604であると誤って予想し、それ故、その位置に記憶されるからである。この候補は、ブロック601の動き推定中には得られず、動きの方向の変化のために、良好なブロック一致を与えることはおそらくない。この場合も、ブロック601に対する動き推定が成功となり、オブジェクトの動きを正確に記述する動きベクトル605を手前のフレームのピクセルエリア603から現在フレームのブロック601へ発生すると仮定する。モーメント候補ベクトルは、モーメント候補ベクトル606により現在ブロック位置からオフセットされたブロック607に対応する位置に記憶される。
【0042】
今や、次のフレームに対する加速度候補を計算するに充分な情報が得られる。現在動きベクトル605は、手前のフレームのブロック603について計算されたベクトル608と比較される。ブロック603の位置は、動きベクトル605を発生するために現在ブロックとマッチングされたピクセルエリアに対応するか又はそれに最も近いブロックであるとして知られている。換言すれば、ベクトル608は、現在ブロック605の動きベクトルにより現在ブロック601の位置から後方にオフセットされた位置において、手前のフレームに対して決定された動きベクトルフィールドから検索することができる。次いで、動きベクトルの変化609が計算されて現在動きベクトルに加算され、次のフレームにおけるオブジェクトの位置を予想するよう試みる加速度候補610を発生する。加速度候補は、加速度候補ベクトル610により現在ブロック位置601からオフセットされたブロック611に対応する位置に記憶される。
【0043】
図7は、シーケンスにおける第3のフレームを示す。ブロック701は、手前のフレームのピクセルエリア703に位置したオブジェクト702を含む。手前のフレームの処理中に、(図6に601と表示された)ブロック703に対応する位置の動き推定は、モーメント候補を、ブロック704に対応する位置に記憶させ、そして加速度候補を、ブロック701に対応する位置に記憶させる。ブロック701に対する動き推定中に、加速度候補705は、手前のフレームのピクセルエリア703から現在フレームのブロック701へのオブジェクトの動きを正確に記述する良好なブロック一致を与えることが分かる。それ故、加速度候補は、ブロックに対する動きベクトルとして選択される見込みが高い。手前のフレームから前方に通過した加速度候補は、オブジェクトの動きを正確に予想し、そして以前にそのような候補が存在しないところに有用なベクトル候補を与える。それ故、動き推定のクオリティ及び精度が改善される。上述したように、動きの変化706を表すベクトルが計算されそして動きベクトル705に加算されて、新たな加速度候補ベクトル707を発生し、これは、加速度候補ベクトルのサイズだけ現在ブロックからオフセットされた位置708に記憶される。同様に、モーメント候補が位置709に記憶される。
【0044】
システムをより高次の動きへ拡張するには、時間と共に動きが変化する仕方を決定するように付加的な動きベクトル履歴が要求される。システムは、オブジェクトの位置及び動きを予想することに関するもので、従って、手前の動きベクトルフィールドのシーケンスを通して動きベクトルを後方にたどり、オブジェクトの位置を追跡することが必要である。手前の動きベクトルフィールドのシーケンスを経て後方の各々進むことで、現在フィールドから動きベクトルが取り出され、それを使用して、手前のフィールドにおける位置を決定する。例えば、図7において、現在ブロックは、701であり、関連ベクトルは、705である。このベクトルを後方オフセットとして使用して、オブジェクトの手前の位置がブロック703にあったことが指示される。図6を参照すると、同じブロックが601として示されている。この位置におけるベクトルは、605であり、このベクトルを後方オフセットとして使用して、オブジェクトの手前の位置がブロック603にあったことが指示される。図5において、同じブロックが501として示されている。同様の後方進行は、ベクトル504を使用して、オブジェクトの手前の位置がブロック503であったことを決定する。正確なベクトルが与えられると、記憶されたベクトルフィールドと同数のフレームに対してオブジェクトの動きを後方に追跡することができる。次いで、これらの各位置における動きベクトルは、特定オブジェクトに対する動きの履歴を与え、将来のそのオブジェクトの位置を予想するのに使用することができる。
【0045】
図4から7、及びまだ説明されていない図8は、各フレームのブロック位置に整列されたままであるようなブロックサイズオブジェクトの移動及び加速を示している。これは、図示明瞭化のためである。オブジェクトは、単一ブロックより大きく、そして動きベクトルは、ブロックサイズの単純な倍数であることが稀である。モーメント又は加速度候補に対する記憶位置は、動きベクトルを現在ブロック位置からのオフセットとして使用することにより決定される。同様に、加速度ベクトルを計算するときには、手前のフレームのブロックに対して計算された動きベクトルを、例えば、図6の例ではブロック603の位置から、そして図7の例ではブロック703の位置から検索することが必要である。又、これらブロックの位置は、動きベクトルを使用して、現在ブロック位置からのオフセットを生成することでも決定される。このように決定される位置は、一般的に、全ブロック位置に整列されるのではなく、従って、実際のシステムは、適切なブロック位置を決定するための方法を必要とする。1つの適当な方法は、ベクトル候補がどのピクセルを指すか決定し、そのピクセルの親ブロックに候補を記憶することである。換言すれば、候補のための記憶位置を最も近い全ブロック位置に丸めることである。これは、一般的に、オブジェクトの動きを追跡するのに充分である。良好なベクトルを近くのブロックへ伝播するほとんどの動き推定システムの自然の傾向は、良好なモーメント又は加速度候補が、追跡されているオブジェクトへ「パチン」と戻ることを意味する。又、システムは、動き推定を行うときに、隣接ブロック位置及び現在ブロックからモーメント及び加速度候補を考慮することにより、付加的な頑健性を追加するように選択することができる。或いは又、加速度又はモーメント候補ベクトルが2つのブロック間の記憶位置中間部を指示するようなものである場合には、システムは、両位置に候補を記憶するように選択することができる。手前のフレームから動きベクトルを検索するときには、丸めに代わって、要求された位置においてベクトルフィールドを補間することができる。
【0046】
ベクトルフィールドは、均一でないことに注意するのが重要である。動きベクトルは、あるエリアでは発散し、他のエリアでは収斂する。その結果、2つ以上のモーメント又は加速度候補が単一ブロックに記憶され、そしてあるブロックについては、記憶される候補がないことがある。図8は、一例としてモーメント候補を使用してブロック当たり複数の候補を生じる状況を示す。現在フレームのブロック801に対する動き推定は、手前のフレームのピクセルエリア803からのオブジェクト802に対する一致を見つけ、従って、動きベクトル804を発生する。現在フレームのブロック807に対する動き推定は、手前のフレームのピクセルエリア808からの一致を見つけ、従って、動きベクトル809を発生する。それ故、モーメント候補806及び810は、動きベクトルによりそれらの原点ブロックからオフセットした位置に記憶される。この場合は、モーメントベクトルがブロック805に記憶されることが要求される。又、より高次の候補、例えば、加速度候補を記憶するときにも、同様の状況が存在する。
【0047】
システムは、記憶スペースに限度があるとき、同じ位置への記憶を要求する複数の候補をどのように管理するか判断しなければならない。複数の候補を記憶するためのスペースが利用できる場合、及び動き推定中にそれらをテストするに充分な計算ニットが利用できる場合には、記憶されそしてその後に使用される数に限度はない。実際のシステムでは、おそらく、所与のブロック位置、例えば、1、2又は4に少数のモーメント/加速度候補だけが記憶され、候補をプライオリティ付けする方法を案出することが必要となる。例えば、ブロック位置当たり1つのモーメント候補のための記憶スペースしかないシステムでは、空き位置は、常に、記憶を要求する第1の候補により埋められる。次いで、システムが第2の候補を同じ位置に記憶するよう試みる場合には、第1のベクトルを第2のベクトルに置き換えるか、又は第1のベクトルを保持して第2のベクトルを破棄するか、判断しなければならない。SAD又はMSD値は、ベクトルの「クオリティ」の尺度を与え、従って、そのような判断に到達するための適度な仕方は、2つのベクトルを生じたブロックマッチングプロセスの結果を比較し、そして最良の一致を生じたベクトルを選択することである。
【0048】
図9は、典型的なビデオエンコーダアプリケーションに使用される動き推定システムのブロック図である。ビデオ入力905は、動き推定ユニット901に供給され、このユニットは、ブロックを、以前にエンコードされたフレームから再構成された基準画像902のブロックと比較する。この基準画像902は、メモリ903に記憶される。この動き推定ユニット901は、動きベクトル904のセットを発生し、これは、入力ビデオシーケンス905の各フィールド又はフレームの各ブロックに対して、基準画像902からそのブロックを導出する際に最良の一致を与える。動き補償ユニット906は、ベクトルを使用して、基準画像902のピクセルのみから入力フレーム又はフィールドに対する近似を構成する。次いで、動き補償ユニット906の出力は、減算器907において入力ビデオ信号905の各フィールド又はフレームと比較されて、画像に対する残留信号又は差信号908を発生する。この残留信号908は、変換/量子化ユニット909へ通され、次いで、ビットストリームエンコーダ910において動き推定ユニット901の出力と合成されて、ビットストリーム出力912を発生する。動き推定ユニット901及び変換量子化ユニット909は、基準画像902と共に、再構成ユニット911への入力を形成し、この再構成ユニットは、動き推定ユニット901においてビデオ信号の後続フィールド又はフレームと比較するためのフレームを再構成してメモリ903に記憶するために使用される。それ故、これは、ビデオエンコーダに使用される従来の動き推定スキームである。本発明によるモーメント及び加速度ベクトル候補のシステムは、動き推定ユニット901の性能を改善すると考えられる。
【0049】
ビデオにおけるオブジェクトの真の動きの正確な表現を要求するアプリケーションは、フレームレート変換及びデインターレースを含む。フレームレート変換アプリケーションが図10に示されている。フレームレート変換は、例えば、60フレーム/秒のビデオシーケンスを120フレーム/秒の高いレートへ変換するのに使用される。これは、各対の入力フレーム間の中間の時間インスタンスに付加的なフレームを補間することにより達成される。図10において、このシステムは、ビデオ入力1001を含み、これは、入力フレーム履歴を記憶するためのメモリ1002と、ビデオ入力1001からの現在入力フレームをメモリ1002からの手前のフレームと比較することにより動き推定を行う動き推定ユニット1003とに送られる。動きベクトルは、入力フレームから補間されたフレームを構成してビデオ出力1007を与える補間ユニット1004へ送られる。動きベクトルを知ることで、補間ユニット1004は、補間されたフレームのオブジェクトがその動きの軌道に基づいて適当な位置に現れるようにピクセルを配することができる。又、フレームレート変換は、非整数フレームレート比、例えば、24フレーム/秒ないし60フレーム/秒で変換を行ってもよい。この場合に、補間されたフレームの時間インスタンスが変化し、入力フレーム間の厳密な中間ではない。タイミング制御ユニット1005は、補間ユニットが正しい出力を生成できるように適当な倍率係数を与える。又、画像分析ユニット1006は、入力データを分析し、そしてシステムの性能を監視することができる。例えば、タイミング制御の振舞いを調整することによりエラーを隠すことができる。フレームレート変換及びデインターレースは、オブジェクトを出力フレーム又はフィールドの正しい位置に表さねばならない場合には、オブジェクトの真の動きを表す高クオリティの動きベクトルに強く依存する。モーメント及び加速度ベクトル候補を使用するシステムは、ビデオにおける真の動きを表す見込みが高いベクトル候補を動き推定器に与えるために真のオブジェクトがどのように振舞うか分かるという効果がある。
【0050】
図11は、図9又は図10のシステムに使用されるタイプの従来のブロックベース動き推定器の詳細なブロック図である。これは、手前のフレームから導出された動きベクトル1102のセットと、既に処理された現在フレームの部分から導出された動きベクトル1103のセットとを含む動きベクトルメモリ1101を備えている。現在フレームのブロックの動き推定は、ブロックシーケンサー1104の制御のもとで行われる。候補発生ユニット1105は、ブロックに対する適当な動きベクトル候補を与えるためにベクトルフィールドの時間的及び空間的一貫性を利用するよう試みるパターンに基づいて動きベクトルメモリ1101からベクトルを選択する。又、候補発生ユニット1105は、ベクトルにある程度のランダムさを導入し、処理が進行するにつれてベクトルフィールドが新たな動きに適応してそれに収斂できるようにする。手前のフレームデータ1108及び現在フレームデータ1109を含むビデオメモリ1107にアドレスが供給され、メモリにより返送されるピクセルデータが各ベクトル候補に基づいて現在ブロック位置からオフセットされるようにする。ピクセルデータ比較ユニット1110において比較するために各フレームからピクセルデータが与えられる。その出力は、絶対差の値の和であって、最良ベクトル選択ユニット1106へ送られ、該ユニットは、そのデータを使用して、候補発生ユニット1105からのベクトル候補のどれが、そのブロック位置において別のものから1つのフレームを導出する際に、最良の一致を与えるか識別する。次いで、最良ベクトル選択ユニット1106は、選択されたベクトルを、動きベクトルメモリ1101の現在フレーム動きベクトル1103に与える。
【0051】
図12は、ブロックに対するモーメント及び加速度候補ベクトルも与える動き推定器のブロック図である。これは、図11の回路の変形態様であり、両回路において同じものであるユニットは、同じ参照番号を共有する。動きベクトルメモリ1101は、多数の手前のフレームから導出された動きベクトル1206のセットと、既に処理された現在フレームの部分から導出された動きベクトル1103のセットとを含む。更に、動きベクトルメモリ1101は、現在フレームのモーメント/加速度動きベクトル候補1201のブロックと、次のフレームのモーメント/加速度候補1202のセットとを含む。候補発生ユニット1105は、今度は、図11を参照して説明した方法に基づいて選択された候補に加えて、メモリ1101からのモーメント及び加速度候補も含む。次のフレームの動き推定に使用するためのモーメント候補ベクトルは、モーメント候補発生ユニット1203において選択ユニット1106での最良ベクトル選択の後に発生される。これは、図4を参照して述べた方法に基づいてモーメントベクトル候補を発生し、それらは、次いで、次のフレームのモーメント/加速度候補ブロック1202に記憶される。その後続フレームが処理されると、それらは、現在フレームのモーメント/加速度候補ブロック1201へ転送される。
【0052】
次のフレームの動き推定に使用するための加速度候補ベクトルは、加速度候補発生ユニット1204において発生され、このユニットは、最良ベクトル選択ユニット1106の出力にも結合されて、図5ないし7を参照して説明した方法に基づいて加速度候補を発生する。それらは、動きベクトルメモリ1101において現在フレームモーメント/加速度候補ブロック1201へ転送される前に、次のフレームのモーメント/加速度候補ブロック1202に記憶される。又、このシステムは、必要に応じてより高次の候補を発生できると共に、必要とされる高次の候補の数に対応する数の更に別の候補発生ブロック(1205で一般的に示す)を設けることもできる。
【符号の説明】
【0053】
101、102:オブジェクト
104:ブロック
105:コンテンツ
106:ピクセルデータエリア
201:ブロック
202、203、204:位置
206、207、208:移動ベクトル候補
401:ブロック
402:オブジェクト
403:動きベクトル
404:ピクセルエリア
405:動きベクトル
406:ブロック
901:動き推定
902:基準画像
903:メモリ
904:ベクトル
905:ビデオ入力
906:動き補償ユニット
908:残留信号
909:変換/量子化ユニット
910:ビットストリームエンコーダ
911:再構成ユニット
912:ビットストリーム出力
【特許請求の範囲】
【請求項1】
ビデオ画像シーケンスにおける動き推定方法において、
a)ビデオ画像シーケンスの各フィールド又はフレームを複数のブロックへと細分化する段階と、
b)各ビデオフィールド又はフレームの各ブロックに候補動きベクトルの各セットを指定する段階と、
c)現在ビデオフィールド又はフレームの各ブロックに対して、その各々の候補動きベクトルのどれが手前のビデオフィールド又はフレームのブロックとの最良の一致を生じるか決定する段階と、
d)各ブロックに対してこのようにして決定された最良一致ベクトルを使用して現在ビデオフィールド又はフレームの動きベクトルフィールドを形成する段階と、
e)候補動きベクトルから導出された距離だけオフセットされたブロック位置において最良一致ベクトルから導出された候補動きベクトルを記憶することにより更に別の動きベクトルフィールドを形成する段階と、
f)現在ビデオフィールド又はフレームに続くビデオフィールド又はフレームに対して段階a)ないしe)を繰り返す段階であって、段階b)において後続ビデオフィールド又はフレームのブロックに指定される候補動きベクトルのセットが、段階e)において現在ビデオフィールド又はフレームの間にそのブロック位置に記憶された候補を含むようにする段階と、
を備えた方法。
【請求項2】
前記段階e)で記憶される候補動きベクトルは、最良一致ベクトルから導出され、不変速度で移動し続けるビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する、請求項1に記載の方法。
【請求項3】
前記段階e)で記憶される候補動きベクトルは、更に、前記段階d)で以前に形成された1つ以上の動きベクトルフィールドの各々からのベクトルから導出される、請求項1に記載の方法。
【請求項4】
前記段階e)で記憶される候補動きベクトルは、最良一致ベクトルから、及び前記段階d)で以前に形成された1つの動きベクトルフィールドからのベクトルから導出され、そして一定レートで速度変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する、請求項3に記載の方法。
【請求項5】
前記段階e)で記憶される候補動きベクトルは、最良一致ベクトルから、及び前記段階d)で以前に形成された2つ以上の動きベクトルフィールドからのベクトルから導出され、そしてオブジェクトの速度の導関数が一定レートで変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する、請求項3に記載の方法。
【請求項6】
手前の動きベクトルフィールドからの各ベクトルは、
手前の動きベクトルフィールドのシーケンスを通して後方にステップし、そして
各ステップにおいて、そのシーケンスの現在動きベクトルフィールドからフェッチされた動きベクトルから導出された距離だけ後方にオフセットした位置からベクトルをフェッチする、
ことによりフェッチされる、請求項3から5のいずれかに記載の方法。
【請求項7】
前記シーケンスの現在動きベクトルフィールドからフェッチされる動きベクトルは、ブロックと整列しない位置を指し、そして後方にオフセットした位置は、ブロックと整列しない位置を最至近ブロックに丸めることにより導出される、請求項6に記載の方法。
【請求項8】
前記シーケンスの現在動きベクトルフィールドからフェッチされる動きベクトルは、ブロックと整列しない位置を指し、そして手前の動きベクトルフィールドにおける後方にオフセットした位置からフェッチされるベクトルは、全ブロック位置におけるベクトルから補間される、請求項6に記載の方法。
【請求項9】
各オフセットブロック位置に複数の候補動きベクトルを記憶することを更に含む、請求項1から8のいずれかに記載の方法。
【請求項10】
プライオリティシステムを使用して各オフセットブロック位置に複数の候補動きベクトルが記憶される、請求項9に記載の方法。
【請求項11】
前記プライオリティシステムは、
前記段階c)で得られる最良一致のクオリティを表すメトリックを、その最良一致ベクトルから導出されて前記段階e)で記憶される候補動きベクトルに対するオフセットブロック位置に記憶すること、及び
その記憶されたクオリティメトリックに基づき記憶のための候補動きベクトルを選択して、その記憶のために選択された候補動きベクトルが、最高の信頼性を示す記憶されたクオリティメトリックを有するベクトルであるようにすること、
を含む請求項10に記載の方法。
【請求項12】
前記段階e)において、候補動きベクトルは、ブロックと整列しない位置を指し、前記段階e)におけるオフセットブロック位置は、ブロックと整列しない位置を最至近ブロックへ丸めることにより導出される、請求項1から11のいずれかに記載の方法。
【請求項13】
前記段階e)において、候補動きベクトルは、ブロックと整列しないがブロック境界に接近した位置を指し、前記段階e)におけるオフセットブロック位置は、その境界に隣接した2つ以上のブロック位置を含む、請求項1から11のいずれかに記載の方法。
【請求項14】
ビデオ画像シーケンスにおける動き推定装置において、
ビデオ画像シーケンスの各フィールド又はフレームを複数のブロックへ細分化する手段と、
各ビデオフィールド又はフレームの各ブロックに候補動きベクトルの各セットを指定する手段と、
現在ビデオフィールド又はフレームの各ブロックに対して、その各々の候補動きベクトルのどれが手前のビデオフィールド又はフレームのブロックとの最良の一致を生じるか決定する手段と、
各ブロックに対してこのようにして決定された最良一致ベクトルを使用して現在ビデオフィールド又はフレームの動きベクトルフィールドを形成する第1の手段と、
候補動きベクトルから導出された距離だけオフセットされたブロック位置において最良一致ベクトルから導出された候補動きベクトルを記憶することにより更に別の動きベクトルフィールドを形成する第2の手段と、
を備え、この装置が現在ビデオフィールド又はフレームに後続するビデオフィールド又はフレームに対して動作するとき、前記指定手段において前記後続ビデオフィールド又はフレーム内のブロックに指定された候補動きベクトルのセットが、前記第2の形成手段において現在ビデオフィールド又はフレームの間にそのブロック位置に記憶された候補を含むようにした、装置。
【請求項15】
第2の形成手段に記憶される候補動きベクトルは、最良一致ベクトルから導出され、そして不変の速度で移動し続けるビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する、請求項14に記載の装置。
【請求項16】
前記第2の形成手段に記憶される候補動きベクトルは、更に、前記第1の形成手段に以前に形成された1つ以上の動きベクトルフィールドの各々からのベクトルから導出される、請求項14に記載の装置。
【請求項17】
前記第2の形成手段に記憶される候補動きベクトルは、最良一致ベクトルから、及び前記第1の形成手段に以前に形成された1つの動きベクトルフィールドからのベクトルから導出され、そして一定レートで速度変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する、請求項16に記載の装置。
【請求項18】
前記第2の形成手段に記憶される候補動きベクトルは、最良一致ベクトルから、及び第1の形成手段に以前に形成された2つ以上の動きベクトルフィールドからのベクトルから導出され、そしてオブジェクトの速度の導関数が一定レートで変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する、請求項16に記載の装置。
【請求項1】
ビデオ画像シーケンスにおける動き推定方法において、
a)ビデオ画像シーケンスの各フィールド又はフレームを複数のブロックへと細分化する段階と、
b)各ビデオフィールド又はフレームの各ブロックに候補動きベクトルの各セットを指定する段階と、
c)現在ビデオフィールド又はフレームの各ブロックに対して、その各々の候補動きベクトルのどれが手前のビデオフィールド又はフレームのブロックとの最良の一致を生じるか決定する段階と、
d)各ブロックに対してこのようにして決定された最良一致ベクトルを使用して現在ビデオフィールド又はフレームの動きベクトルフィールドを形成する段階と、
e)候補動きベクトルから導出された距離だけオフセットされたブロック位置において最良一致ベクトルから導出された候補動きベクトルを記憶することにより更に別の動きベクトルフィールドを形成する段階と、
f)現在ビデオフィールド又はフレームに続くビデオフィールド又はフレームに対して段階a)ないしe)を繰り返す段階であって、段階b)において後続ビデオフィールド又はフレームのブロックに指定される候補動きベクトルのセットが、段階e)において現在ビデオフィールド又はフレームの間にそのブロック位置に記憶された候補を含むようにする段階と、
を備えた方法。
【請求項2】
前記段階e)で記憶される候補動きベクトルは、最良一致ベクトルから導出され、不変速度で移動し続けるビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する、請求項1に記載の方法。
【請求項3】
前記段階e)で記憶される候補動きベクトルは、更に、前記段階d)で以前に形成された1つ以上の動きベクトルフィールドの各々からのベクトルから導出される、請求項1に記載の方法。
【請求項4】
前記段階e)で記憶される候補動きベクトルは、最良一致ベクトルから、及び前記段階d)で以前に形成された1つの動きベクトルフィールドからのベクトルから導出され、そして一定レートで速度変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する、請求項3に記載の方法。
【請求項5】
前記段階e)で記憶される候補動きベクトルは、最良一致ベクトルから、及び前記段階d)で以前に形成された2つ以上の動きベクトルフィールドからのベクトルから導出され、そしてオブジェクトの速度の導関数が一定レートで変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する、請求項3に記載の方法。
【請求項6】
手前の動きベクトルフィールドからの各ベクトルは、
手前の動きベクトルフィールドのシーケンスを通して後方にステップし、そして
各ステップにおいて、そのシーケンスの現在動きベクトルフィールドからフェッチされた動きベクトルから導出された距離だけ後方にオフセットした位置からベクトルをフェッチする、
ことによりフェッチされる、請求項3から5のいずれかに記載の方法。
【請求項7】
前記シーケンスの現在動きベクトルフィールドからフェッチされる動きベクトルは、ブロックと整列しない位置を指し、そして後方にオフセットした位置は、ブロックと整列しない位置を最至近ブロックに丸めることにより導出される、請求項6に記載の方法。
【請求項8】
前記シーケンスの現在動きベクトルフィールドからフェッチされる動きベクトルは、ブロックと整列しない位置を指し、そして手前の動きベクトルフィールドにおける後方にオフセットした位置からフェッチされるベクトルは、全ブロック位置におけるベクトルから補間される、請求項6に記載の方法。
【請求項9】
各オフセットブロック位置に複数の候補動きベクトルを記憶することを更に含む、請求項1から8のいずれかに記載の方法。
【請求項10】
プライオリティシステムを使用して各オフセットブロック位置に複数の候補動きベクトルが記憶される、請求項9に記載の方法。
【請求項11】
前記プライオリティシステムは、
前記段階c)で得られる最良一致のクオリティを表すメトリックを、その最良一致ベクトルから導出されて前記段階e)で記憶される候補動きベクトルに対するオフセットブロック位置に記憶すること、及び
その記憶されたクオリティメトリックに基づき記憶のための候補動きベクトルを選択して、その記憶のために選択された候補動きベクトルが、最高の信頼性を示す記憶されたクオリティメトリックを有するベクトルであるようにすること、
を含む請求項10に記載の方法。
【請求項12】
前記段階e)において、候補動きベクトルは、ブロックと整列しない位置を指し、前記段階e)におけるオフセットブロック位置は、ブロックと整列しない位置を最至近ブロックへ丸めることにより導出される、請求項1から11のいずれかに記載の方法。
【請求項13】
前記段階e)において、候補動きベクトルは、ブロックと整列しないがブロック境界に接近した位置を指し、前記段階e)におけるオフセットブロック位置は、その境界に隣接した2つ以上のブロック位置を含む、請求項1から11のいずれかに記載の方法。
【請求項14】
ビデオ画像シーケンスにおける動き推定装置において、
ビデオ画像シーケンスの各フィールド又はフレームを複数のブロックへ細分化する手段と、
各ビデオフィールド又はフレームの各ブロックに候補動きベクトルの各セットを指定する手段と、
現在ビデオフィールド又はフレームの各ブロックに対して、その各々の候補動きベクトルのどれが手前のビデオフィールド又はフレームのブロックとの最良の一致を生じるか決定する手段と、
各ブロックに対してこのようにして決定された最良一致ベクトルを使用して現在ビデオフィールド又はフレームの動きベクトルフィールドを形成する第1の手段と、
候補動きベクトルから導出された距離だけオフセットされたブロック位置において最良一致ベクトルから導出された候補動きベクトルを記憶することにより更に別の動きベクトルフィールドを形成する第2の手段と、
を備え、この装置が現在ビデオフィールド又はフレームに後続するビデオフィールド又はフレームに対して動作するとき、前記指定手段において前記後続ビデオフィールド又はフレーム内のブロックに指定された候補動きベクトルのセットが、前記第2の形成手段において現在ビデオフィールド又はフレームの間にそのブロック位置に記憶された候補を含むようにした、装置。
【請求項15】
第2の形成手段に記憶される候補動きベクトルは、最良一致ベクトルから導出され、そして不変の速度で移動し続けるビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する、請求項14に記載の装置。
【請求項16】
前記第2の形成手段に記憶される候補動きベクトルは、更に、前記第1の形成手段に以前に形成された1つ以上の動きベクトルフィールドの各々からのベクトルから導出される、請求項14に記載の装置。
【請求項17】
前記第2の形成手段に記憶される候補動きベクトルは、最良一致ベクトルから、及び前記第1の形成手段に以前に形成された1つの動きベクトルフィールドからのベクトルから導出され、そして一定レートで速度変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する、請求項16に記載の装置。
【請求項18】
前記第2の形成手段に記憶される候補動きベクトルは、最良一致ベクトルから、及び第1の形成手段に以前に形成された2つ以上の動きベクトルフィールドからのベクトルから導出され、そしてオブジェクトの速度の導関数が一定レートで変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する、請求項16に記載の装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公表番号】特表2012−525042(P2012−525042A)
【公表日】平成24年10月18日(2012.10.18)
【国際特許分類】
【出願番号】特願2012−506564(P2012−506564)
【出願日】平成22年4月22日(2010.4.22)
【国際出願番号】PCT/GB2010/000803
【国際公開番号】WO2010/122301
【国際公開日】平成22年10月28日(2010.10.28)
【出願人】(501176037)イマジネイション テクノロジーズ リミテッド (59)
【Fターム(参考)】
【公表日】平成24年10月18日(2012.10.18)
【国際特許分類】
【出願日】平成22年4月22日(2010.4.22)
【国際出願番号】PCT/GB2010/000803
【国際公開番号】WO2010/122301
【国際公開日】平成22年10月28日(2010.10.28)
【出願人】(501176037)イマジネイション テクノロジーズ リミテッド (59)
【Fターム(参考)】
[ Back to top ]