(57)【特許請求の範囲】
【請求項１】
ビデオ画像シーケンスにおける動き推定方法において、
ａ）動き推定器がビデオ画像シーケンスの各フィールド又はフレームを複数のブロックへと細分化する段階と、
ｂ）動き推定器が各ビデオフィールド又はフレームの各ブロックに候補動きベクトルの各セットを指定する段階と、
ｃ）動き推定器が現在ビデオフィールド又はフレームの各ブロックに対して、その各々の候補動きベクトルのどれが手前のビデオフィールド又はフレームのブロックとの最良の一致を生じるか決定する段階と、
ｄ）動き推定器が現在ビデオフィールド又はフレームの各ブロックに対してこのようにして決定された最良一致ベクトルを使用して現在ビデオフィールド又はフレームの動きベクトルフィールドを形成する段階と、
ｅ）動き推定器が最良一致ベクトルから導出された候補動きベクトルをその候補動きベクトルから導出された距離だけオフセットされたブロック位置に記憶することにより更に別の動きベクトルフィールドを形成する段階と、
ｆ）現在ビデオフィールド又はフレームに続くビデオフィールド又はフレームに対して段階ａ）ないしｅ）を繰り返す段階であって、段階ｂ）において後続ビデオフィールド又はフレームのブロックに指定される候補動きベクトルのセットが、段階ｅ）において現在ビデオフィールド又はフレームの間にその後続ビデオフィールド又はフレームのブロック位置に記憶された候補を含む段階と、
を備えた方法。
【請求項２】
前記段階ｅ）で記憶される候補動きベクトルは、最良一致ベクトルから導出され、不変速度で移動し続けるビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する、請求項１に記載の方法。
【請求項３】
前記段階ｅ）で記憶される候補動きベクトルは、更に、前記段階ｄ）で以前に形成された１つ以上の動きベクトルフィールドの各々からのベクトルから導出される、請求項１に記載の方法。
【請求項４】
前記段階ｅ）で記憶される候補動きベクトルは、最良一致ベクトルから、及び前記段階ｄ）で以前に形成された１つの動きベクトルフィールドからのベクトルから導出され、そして一定レートで速度変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する、請求項３に記載の方法。
【請求項５】
前記段階ｅ）で記憶される候補動きベクトルは、最良一致ベクトルから、及び前記段階ｄ）で以前に形成された２つ以上の動きベクトルフィールドからのベクトルから導出され、そしてオブジェクトの速度の導関数が一定レートで変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する、請求項３に記載の方法。
【請求項６】
手前の動きベクトルフィールドからの各ベクトルは、
動き推定器が手前の動きベクトルフィールドのシーケンスを通して後方にステップし、そして
動き推定器が各ステップにおいて、そのシーケンスの現在動きベクトルフィールドからフェッチされた動きベクトルから導出された距離だけ後方にオフセットした位置からベクトルをフェッチする、
ことによりフェッチされる、請求項３から５のいずれかに記載の方法。
【請求項７】
前記シーケンスの現在動きベクトルフィールドからフェッチされる動きベクトルは、ブロックと整列しない位置を指し、そして後方にオフセットした位置は、ブロックと整列しない位置を最至近ブロックに丸めることにより導出される、請求項６に記載の方法。
【請求項８】
前記シーケンスの現在動きベクトルフィールドからフェッチされる動きベクトルは、ブロックと整列しない位置を指し、そして手前の動きベクトルフィールドにおける後方にオフセットした位置からフェッチされるベクトルは、全ブロック位置におけるベクトルから補間される、請求項６に記載の方法。
【請求項９】
各オフセットブロック位置に複数の候補動きベクトルを記憶することを更に含む、請求項１から８のいずれかに記載の方法。
【請求項１０】
プライオリティシステムを使用して各オフセットブロック位置に複数の候補動きベクトルが記憶される、請求項９に記載の方法。
【請求項１１】
前記プライオリティシステムは、
動き推定器が前記段階ｃ）で得られる最良一致のクオリティを表すメトリックを、その最良一致ベクトルから導出されて前記段階ｅ）で記憶される候補動きベクトルに対するオフセットブロック位置に記憶すること、及び
動き推定器がその記憶されたクオリティメトリックに基づき記憶のための候補動きベクトルを選択して、その記憶のために選択された候補動きベクトルが、最高の信頼性を示す記憶されたクオリティメトリックを有するベクトルであるようにすること、
を含む請求項１０に記載の方法。
【請求項１２】
前記段階ｅ）において、候補動きベクトルは、ブロックと整列しない位置を指し、前記段階ｅ）におけるオフセットブロック位置は、ブロックと整列しない位置を最至近ブロックへ丸めることにより導出される、請求項１から１１のいずれかに記載の方法。
【請求項１３】
ビデオ画像シーケンスにおける動き推定装置において、
ビデオ画像シーケンスの各フィールド又はフレームを複数のブロックへ細分化する手段と、
各ビデオフィールド又はフレームの各ブロックに候補動きベクトルの各セットを指定する手段と、
現在ビデオフィールド又はフレームの各ブロックに対して、その各々の候補動きベクトルのどれが手前のビデオフィールド又はフレームのブロックとの最良の一致を生じるか決定する手段と、
現在ビデオフィールド又はフレームの各ブロックに対してこのようにして決定された最良一致ベクトルを使用して現在ビデオフィールド又はフレームの動きベクトルフィールドを形成する第１の手段と、
最良一致ベクトルから導出された候補動きベクトルをその候補動きベクトルから導出された距離だけオフセットされたブロック位置に記憶することにより更に別の動きベクトルフィールドを形成する第２の手段と、
を備え、この装置が現在ビデオフィールド又はフレームに後続するビデオフィールド又はフレームに対して動作するとき、前記指定手段において前記後続ビデオフィールド又はフレーム内のブロックに指定された候補動きベクトルのセットが、前記第２の形成手段において現在ビデオフィールド又はフレームの間にその後続ビデオフィールド又はフレーム内のブロック位置に記憶された候補を含むようにした、装置。
【請求項１４】
第２の形成手段に記憶される候補動きベクトルは、最良一致ベクトルから導出され、そして不変の速度で移動し続けるビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する、請求項１３に記載の装置。
【請求項１５】
前記第２の形成手段に記憶される候補動きベクトルは、更に、前記第１の形成手段に以前に形成された１つ以上の動きベクトルフィールドの各々からのベクトルから導出される、請求項１３に記載の装置。
【請求項１６】
前記第２の形成手段に記憶される候補動きベクトルは、最良一致ベクトルから、及び前記第１の形成手段に以前に形成された１つの動きベクトルフィールドからのベクトルから導出され、そして一定レートで速度変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する、請求項１５に記載の装置。
【請求項１７】
前記第２の形成手段に記憶される候補動きベクトルは、最良一致ベクトルから、及び第１の形成手段に以前に形成された２つ以上の動きベクトルフィールドからのベクトルから導出され、そしてオブジェクトの速度の導関数が一定レートで変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する、請求項１５に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ブロックベースの動き推定システムに係り、より詳細には、真の動きを識別するために実世界の物理的な性質を考慮して候補動きベクトルを発生することに関連した方法に係る。
【背景技術】
【０００２】
ブロックベースのマッチング技術を使用してビデオシーケンスにおいて動きを識別することが良く知られている。これらの方法は、一般に、ビデオシーケンスからの２つの連続するフレームを考慮して、それらを、ブロック又はマクロブロックとして知られた複数の領域に細分化する。動きサーチ手順では、各ブロックが、手前のフレームにおける種々の候補位置からのピクセルデータと比較される。最良一致の相対的な位置が、そのブロック位置におけるシーンの動きを記述するベクトルを与える。集合的に、フレーム内の各ブロック位置における動きベクトルのセットは、そのフレームに対する動きベクトルフィールドとして知られている。「ベクトルフィールド」という語の使用は、以下に述べるようにインターレース型ビデオシーケンスにおけるデータを記述するための「フィールド」又は「ビデオフィールド」の使用と混同してはならないことに注意されたい。
【０００３】
ビデオシーケンスは、典型的に、ビデオデータの一連の非インターレース型フレーム、又はビデオデータの一連のインターレース型フィールドを含む。インターレース型シーケンスは、ディスプレイの交互の線でデータを搬送するフィールドにより発生され、第１のフィールドは、交互の線のためのデータを搬送し、そして第２のフィールドは、欠落線のためのデータを搬送する。従って、フィールドは、時間的及び空間的に離間される。シーケンスにおける各交互のフィールドが同じ空間的位置にデータを搬送する。
【０００４】
図１は、ブロックマッチング動き推定器の典型的な例を示す。図１を含む全ての図において、動きベクトルは、そのベクトルに対応するブロックの中心に矢印の頭が来るように示されている。フレームは、ブロックに分割され、そして手前のフレームのオブジェクト１０１は、現在フレームの位置１０２へ移動している。オブジェクトの手前の位置は、１０３として現在フレームに重畳されて示されている。動きの推定は、オブジェクトではなく、ブロックについて遂行され、現在フレームにおけるピクセルのブロックは、必ずしもブロック整列されない手前のフレームにおけるブロックサイズピクセルエリアとマッチングされる。例えば、ブロック１０４は、運動オブジェクト１０２によって部分的に重畳され、１０５で示すようなコンテンツを有する。ブロック１０４に対する動き推定は、それが良好に行われる場合に、手前のフレームにおけるピクセルデータエリア１０６を見つけ、これは、１０５で示されたピクセルを含むようにも見え、即ち良好な一致が見つかる。現在フレームに戻るように重畳されて、マッチングするピクセルデータエリアは、１０７である。それ故、ブロック１０４に関連した動きベクトルは、矢印１０８で示される。
【０００５】
多くのブロックベースの動き推定器は、絶対差の和（ＳＡＤ）又は２乗差の平均（ＭＳＤ）のような方法で動きベクトル候補のセットをテストして、最低のエラーブロック一致を与える動きベクトルを識別することにより、出力動きベクトルを選択する。図２は、２１１で示すピクセルコンテンツを有する現在フレームのブロック２０１に対する候補評価プロセスを示す。この簡単な規範的システムにおいて、手前のフレームの位置２０２、２０３及び２０４における候補ピクセルデータエリアに対応する３つの動きベクトル候補２０６、２０７及び２０８が考慮される。これらピクセルデータエリアのピクセルコンテンツは、各々、２１２、２１３及び２１４に見ることができる。位置２０２のピクセルデータは、ブロック２０１に対して最良の一致を与え、それ故、最良の一致／最低の差の候補として選択されねばならないことは明らかである。現在フレームに戻るように重畳されて、マッチングするピクセルデータエリアは、２０５であり、それに関連する動きベクトルは、２０６である。
【０００６】
異なるシステムは、動き推定の異なる要件を有する。ビデオエンコーダでは、その要件は、シーケンスから手前のフレームを参照することにより、フレームの最もコンパクトな表現を形成することである。その要件は、一般的に、最低のエラーブロック一致を与える動きベクトルを見つけることであり、それにより得られる動きベクトルは、通常、シーンにおけるオブジェクトの実際の動きを表現するが、常にそうであることは要求されない。デインターレース又はフレームレート変換のような他のアプリケーションでは、たとえビデオにおける他の歪が、ブロック一致が常に最低エラーを与えるものでないことを意味しても、動きベクトルがシーンの真の動きを表すことがより重要である。動きサーチ中に候補動きベクトルに適当な制約を適用することにより、必要に応じて、「最低エラー」又は「真の動き」に向けて結果を誘導することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
動きベクトルは、隣接ブロックのベクトルと空間的及び時間的に強く相関されることが知られており、従って、これらの隣接ベクトルは、動き推定器における候補の基礎としてしばしば使用される。ビデオにおける動きが変化するときにシステムが適応できるようにランダム要素を候補に合体することもできる。ブロックが、その隣接部により単純に予想されない動きを有する場合には、従来のシステムは、ベクトル候補のランダム摂動に依存する。これは、ゆっくり変化するベクトルフィールドについては良好に作用するが、隣接部に対して非常に異なる新たなベクトルへ動き推定器が迅速に収斂できない傾向にある。ランダムさに依存するシステムは、時間と共に正しい動きに向かってさまようが、局部的な最小値に定着する状態となるか、又は動きが得られる時間までに動きが再び変化するようにゆっくり収斂する傾向となる。各ブロックに対してテストされる候補動きベクトルの数は、多くの場合、真の動きを識別するに充分な大きさのセットを選択することと、計算費用を最小にするに足るほど小さいながら、低い残留エラーとの良好な一致を与えることとの間の妥協である。
【課題を解決するための手段】
【０００８】
本発明は、実世界のオブジェクトに存在する物理的モーメント及び加速度から導出される候補動きベクトルを発生する効率的な方法を提供する。従って、それらは、シーンの真の動きを表す見込みが高い。このような候補は、時間的及び空間的に導出される候補を使用する他のベクトル伝播技術では得ることができず、又、ランダムさに完全に依存するシステムよりも効率良く動きを追跡し且つ変化する動きに適応する方法を提供する。本発明は、ランダムさの必要性を完全に除去するものでなく、動きを正確に予想する単一候補動きベクトルは、正しいベクトルを選択したりしなかったりする多数のランダム推測よりも明らかに良好である。又、本発明は、若干のランダム候補を使用することができ、或いはおそらく、迅速な又は変化する動きのエリアにおいて高速で収斂させることができる。
【０００９】
多くの動き推定（例えば、デハーン氏等、True-Motion Estimation with 3-D Recursive Search Block Matching, IEEE Transaction on Circuits and Systems for Video Technology、第３巻、第５号、１９９３年１０月）は、時間的ベクトルを、動き推定器における候補動きベクトルの１つとして使用する。同じ位置又は同様の位置のブロックから現在ブロックへ、以前のフレームの動き推定処理中にそのブロックに対して導出された動き推定結果を使用して、時間的ベクトル候補が取り出される。時間的ベクトル候補の使用は、オブジェクトがブロックより大きいという仮定、及びあるブロック位置のオブジェクトが過去に特定の速度で移動した場合にブロックで到着する新たなコンテンツがおそらく同じ速度及び方向で動き続けるという仮定に基づく。動き続けるという仮定は、実世界のオブジェクトがモーメントの物理的特性を示すので妥当であり、従って、時間的ベクトルは、有用な候補動きベクトルを与える。
【００１０】
又、従来技術では、例えば、ＭＰＥＧ−４ビデオエンコーディングの改善型予想ゾーンサーチ（ＥＰＺＳ）技術においてスタティックブロック位置に対する指標を発生するために、ブロック加速度の概念も使用されている。この方法では、２つのフレームにわたって固定ブロック位置に存在する差動的に増加／減少する動きベクトルを考慮し、そしてそれにより得られる「加速度動きベクトル」を、次のフレームに使用するために同じブロック位置に記憶することにより、ブロックの加速度が計算される。図３は、現在フレームのブロック３０３に対する「加速度動きベクトル」３０６の形成を示す。ブロック３０３、３０２及び３０１は、各々、現在フレーム、手前のフレーム、及びその前のフレームにおける同じ空間的ブロック位置であり、それ故、同一位置にあると言うことができる。同一位置にあるブロックの差動的加速度は、フレームｎ−１からの動きベクトル３０５と、フレームｎ−１とｎ−２との間の動きの差動的変化との和であることが分かる。それ故、ベクトル３０６は、ベクトル３０５の２倍からベクトル３０４を差し引くことにより与えられる。
【００１１】
本発明の第１の態様によれば、ビデオ画像シーケンスにおける動き推定方法において、ａ）ビデオ画像シーケンスの各フィールド又はフレームを複数のブロックへと細分化する段階と、ｂ）各ビデオフィールド又はフレームの各ブロックに候補動きベクトルの各セットを指定する段階と、ｃ）現在ビデオフィールド又はフレームの各ブロックに対して、その各々の候補動きベクトルのどれが手前のビデオフィールド又はフレームのブロックとの最良の一致を生じるか決定する段階と、ｄ）各ブロックに対してこのようにして決定された最良一致ベクトルを使用して現在ビデオフィールド又はフレームの動きベクトルフィールドを形成する段階と、ｅ）候補動きベクトルから導出された距離だけオフセットされたブロック位置において最良一致ベクトルから導出された候補動きベクトルを記憶することにより更に別の動きベクトルフィールドを形成する段階と、ｆ）現在ビデオフィールド又はフレームに続くビデオフィールド又はフレームに対して段階ａ）ないしｅ）を繰り返す段階であって、段階ｂ）において後続ビデオフィールド又はフレームのブロックに指定される候補動きベクトルのセットが、段階ｅ）において現在ビデオフィールド又はフレームの間にそのブロック位置に記憶された候補を含むようにする段階と、を備えた方法が提供される。
【００１２】
本発明の説明は、一連のフルフレームのデータでビデオが構成されるような非インターレース型又は進歩型ビデオ信号に対して動作する動き推定システムに関して行われる。動き推定は、通常、一連のフィールドでビデオが構成されるインターレース型ビデオに対しても行われる。本発明の原理は、非インターレース型及びインターレース型の両ビデオに対して動作する動き推定器にも等しく適用できる。従って、「フィールド又はフレーム」或いは「ビデオフィールド又はフレーム」という語は、インターレース型及び非インターレース型の両ビデオ信号に対する動き推定もカバーする。「フレーム」という語が使用される場合には、「フィールド又はフレーム」と解釈されるべきであり、即ち非インターレース型ビデオ信号及びインターレース型ビデオ信号に対して遂行される両動き推定をカバーするものと解釈されるべきである。
【００１３】
「現在」「手前」及び「後続」という語は、ビデオ信号におけるフレーム又はフィールドの逐次の順序を単に指示するのに使用される相対的な用語である。「手前」のフィールド又はフレームは、「現在」フィールド又はフレームより、ある数のフレームだけ前のものであり、必ずしも、「現在」フィールド又はフレームの直前である必要はないが、実際上、多くの場合は、直前である。「後続」フィールド又はフレームは、「現在」フィールド又はフレームより、ある数のフレームだけ後のものであり、必ずしも、「現在」フィールド又はフレームの直後である必要はないが、実際上、多くの場合は、直後である。
【００１４】
本発明の好ましい実施形態は、実世界のオブジェクトの物理的な振舞いから導出された真の動きベクトル候補を導入することにより、ブロック又はタイルベースの動き推定器がその精度を改善できるようにする方法を提供する。次のフレーム周期中にオブジェクトの動きを表すと予想されるモーメント及び加速度ベクトル候補が計算される。これらのベクトルをオブジェクトの現在ブロック位置に記憶するのではなく、ベクトルは、オブジェクトが移動されると予想されるブロックへ再配置される。このように、オブジェクトの動きが追跡され、特定の位置で動き推定器に得られるベクトル候補は、その位置に到達するために予想されるオブジェクトの動きに基づく予想を含む。
【００１５】
１つの実施形態において、段階ｅ）で記憶される候補動きベクトルは、最良一致ベクトルから導出され、不変速度で移動し続けるビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する。
【００１６】
別の実施形態において、段階ｅ）で記憶される候補動きベクトルは、更に、段階ｄ）で以前に形成された１つ以上の動きベクトルフィールドの各々からのベクトルから導出される。
【００１７】
その実施形態において、段階ｅ）で記憶される候補動きベクトルは、最良一致ベクトルから、及び段階ｄ）で以前に形成された１つの動きベクトルフィールドからのベクトルから導出され、そして一定レートで速度変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する。
【００１８】
或いは又、その実施形態において、段階ｅ）で記憶される候補動きベクトルは、最良一致ベクトルから、及び段階ｄ）で以前に形成された２つ以上の動きベクトルフィールドからのベクトルから導出され、そしてオブジェクトの速度の導関数が一定レートで変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する。
【００１９】
その実施形態において、好ましくは、手前の動きベクトルフィールドからの各ベクトルは、手前の動きベクトルフィールドのシーケンスを通して後方にステップし、そして各ステップにおいて、そのシーケンスの現在動きベクトルフィールドからフェッチされた動きベクトルから導出された距離だけ後方にオフセットした位置からベクトルをフェッチすることにより、フェッチされる。
【００２０】
その場合に、シーケンスの現在動きベクトルフィールドからフェッチされる動きベクトルは、ブロックと整列しない位置を指し、そして後方にオフセットした位置は、ブロックと整列しない位置を最至近ブロックに丸めることにより導出される。
【００２１】
或いは又、その場合に、シーケンスの現在動きベクトルフィールドからフェッチされる動きベクトルは、ブロックと整列しない位置を指し、そして手前の動きベクトルフィールドにおける後方にオフセットした位置からフェッチされるベクトルは、全ブロック位置におけるベクトルから補間される。
【００２２】
前記方法は、更に、各オフセットブロック位置に複数の候補動きベクトルを記憶することも含む。これが行われるのは、ベクトルフィールドが均一でなく、動きベクトルがあるエリアでは発散し、他のエリアでは収斂するためである。
【００２３】
プライオリティシステムを使用して各オフセットブロック位置に複数の候補動きベクトルが記憶される。これは、各オフセットブロック位置に対する記憶スペースに限度があり、又、特定のオフセットブロック位置へ書き込まれる各動きベクトルを記憶するに充分な記憶スペースがないときに有用である。実際のシステムでは、おそらく、少数の候補動きベクトルしか所与のブロック位置に記憶できない。
【００２４】
好ましくは、プライオリティシステムは、段階ｃ）で得られる最良一致のクオリティを表すメトリックを、その最良一致ベクトルから導出されて段階ｅ）で記憶される候補動きベクトルに対するオフセットブロック位置に記憶すること、及びその記憶されたクオリティメトリックに基づき記憶のための候補動きベクトルを選択して、その記憶のために選択された候補動きベクトルが、最高の信頼性を示す記憶されたクオリティメトリックを有するベクトルであるようにすること、を含む。
【００２５】
記憶のための候補動きベクトルの選択は、候補動きベクトルの各々に対して決定された最良一致ベクトルのクオリティを比較することを含む。この比較は、各最良一致ベクトルを決定するのに使用される絶対差（ＳＡＤ）値の和を比較することを含む。或いは又、この比較は、各最良一致ベクトルを決定するのに使用される２乗差平均（ＭＳＤ）を比較することを含む。
【００２６】
或いは又、その比較は、ベクトルのクオリティの他の適当な尺度を比較することを含んでもよい。
【００２７】
１つの構成では、段階ｅ）において、候補動きベクトルは、ブロックと整列しない位置を指し、又、段階ｅ）におけるオフセットブロック位置は、ブロックと整列しない位置を最至近ブロックへ丸めることにより導出される。実際のシステムでは、候補動きベクトルは、一般的に、全ブロック位置に整列された位置を指さない。その位置を最至近ブロックへ丸めることは、オブジェクトの動きを追跡するのに一般的に充分である。
【００２８】
別の構成では、段階ｅ）において、候補動きベクトルは、ブロックと整列しないがブロック境界に接近した位置を指し、又、段階ｅ）におけるオフセットブロック位置は、その境界に隣接した２つ以上のブロック位置を含む。
【００２９】
本発明の別の態様によれば、ビデオ画像シーケンスにおける動き推定装置において、ビデオ画像シーケンスの各フィールド又はフレームを複数のブロックへ細分化する手段と、各ビデオフィールド又はフレームの各ブロックに候補動きベクトルの各セットを指定する手段と、現在ビデオフィールド又はフレームの各ブロックに対して、その各々の候補動きベクトルのどれが手前のビデオフィールド又はフレームのブロックとの最良の一致を生じるか決定する手段と、各ブロックに対してこのようにして決定された最良一致ベクトルを使用して現在ビデオフィールド又はフレームの動きベクトルフィールドを形成する第１の手段と、候補動きベクトルから導出された距離だけオフセットされたブロック位置において最良一致ベクトルから導出された候補動きベクトルを記憶することにより更に別の動きベクトルフィールドを形成する第２の手段と、を備え、この装置が現在ビデオフィールド又はフレームに後続するビデオフィールド又はフレームに対して動作するとき、前記指定手段において前記後続ビデオフィールド又はフレーム内のブロックに指定された候補動きベクトルのセットが、前記第２の形成手段において現在ビデオフィールド又はフレームの間にそのブロック位置に記憶された候補を含むようにした、装置が提供される。
【００３０】
第２の形成手段に記憶される候補動きベクトルは、最良一致ベクトルから導出され、そして不変の速度で移動し続けるビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する。
【００３１】
或いは又、第２の形成手段に記憶される候補動きベクトルは、更に、第１の形成手段に以前に形成された１つ以上の動きベクトルフィールドの各々からのベクトルから導出される。
【００３２】
その場合に、第２の形成手段に記憶される候補動きベクトルは、最良一致ベクトルから、及び第１の形成手段に以前に形成された１つの動きベクトルフィールドからのベクトルから導出され、そして一定レートで速度変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する。或いは又、第２の形成手段に記憶される候補動きベクトルは、最良一致ベクトルから、及び第１の形成手段に以前に形成された２つ以上の動きベクトルフィールドからのベクトルから導出され、そしてオブジェクトの速度の導関数が一定レートで変化するビデオ画像シーケンスにおけるオブジェクトの将来の位置及び動きを予想する。
【００３３】
本発明の１つの態様に関連して述べる特徴は、本発明の他の態様にも適用できる。
【００３４】
以下、添付図面を参照して、本発明の好ましい実施形態を一例として詳細に説明する。
【図面の簡単な説明】
【００３５】
【図１】典型的なブロックマッチング動き推定器を示す。
【図２】ブロックマッチング動き推定器が、対応するピクセルブロックの比較により、候補動きベクトルのセットから「最良」の動きベクトルをどのように選択するか示す。
【図３】改善型予想ゾーンサーチシステムにおいて加速度動きベクトルがどのように発生されるか示す。
【図４】ここに提案するシステムの実施形態において空間的にオフセットされたモーメントベクトルがどのように発生されるか示す。
【図５】加速度ベクトル候補の発生及び使用における第１段階を示す。
【図６】加速度ベクトル候補の発生及び使用における第２段階を示す。
【図７】加速度ベクトル候補の発生及び使用における第３段階を示す。
【図８】同じ位置に記憶される必要のある複数のモーメント候補が発生される状況を示す。
【図９】典型的なビデオエンコーダのブロック図で、動き推定モジュールのための共通のアプリケーションを示す。
【図１０】典型的なフレームレートコンバータのブロック図で、動き推定モジュールのための共通のアプリケーションを示す。
【図１１】モーメント及び加速度候補を伴わない従来の動き推定モジュールのブロック図である。
【図１２】本発明によりモーメント及び加速度候補が発生される動き推定モジュールのブロック図である。
【発明を実施するための形態】
【００３６】
全ての図において、動きベクトルは、そのベクトルに対応するブロックの中心に矢印の頭が来るように示されている。ブロックベースの動き推定器における各ブロックへの入力は、ブロックに存在するオブジェクトの動きを予想するように試みる候補動きベクトルの限定セットである。動き推定器は、現在フレームにおける各ブロックのピクセルを、手前のフレームにおける各候補動きベクトルに等しい空間的オフセットにより定義されたピクセルデータエリアと比較する。これらのピクセルデータエリアは、ブロックサイズものであるが、必ずしもブロック整列されることに限定されない。ベクトル選択プロセスが図２に示されており、各動きベクトル候補に対応するブロックエリアが、絶対差の和（ＳＡＤ）又は平均２乗差（ＭＳＤ）のようなメトリックを使用して比較される。ブロックにおける動きを表すように選択されたベクトルは、選択されたメトリックを使用して最良のスコアを与える候補動きベクトルである。良好な一致を見つけることは、（アプリケーションの要件に基づいて）ブロックに存在するオブジェクトの真の動きベクトル、又は良好なブロック一致を生じる候補、のいずれかを含む候補ベクトルのセットに依存する。モーメント及び加速度ベクトルは、真の動きベクトル候補を発生し、ひいては、動き推定のクオリティ及び制度を改善する新規なルートとして提案される。
【００３７】
ブロックにおいて検出されたオブジェクトが過去においてそうであったように動き続けるという前提で考慮するにふさわしい動きベクトル候補として「モーメント候補」が提案される。実世界のオブジェクトは、質量を有し、それ故、既知の物理的な法則により定義されたモーメント及び加速度で移動する。この「実世界」の動きは、ビデオシーケンスにおいてオブジェクトが観察されるときに持続する。モーメント／加速度をフレーム位置の特性であると考え、そして固定のブロック位置において候補を評価する従来の技術とは異なり、ここに提案する本発明は、直接追跡されているオブジェクトに対して動きベクトル候補発生し、そして空間的に異なる位置にそれらを配置する。この空間的にオフセットした候補の発生は、動き予想でフレーム内のオブジェクトを追跡し、そうでなければ得られない候補動きベクトルを与えることができるようにする。
【００３８】
図４は、モーメント候補がどのように発生されるかを示す。ブロック４０１は、オブジェクト４０２を含む。手前のフレームにおけるオブジェクトの位置も、ピクセルエリア４０４に示されている。ブロック４０１に対する動き推定の間に、システムは、候補ベクトルのセットから動きベクトル４０３を選択する。この動きベクトルは、オブジェクトの動きを、手前のフレームインターバル中にピクセルエリア４０４からブロック４０１へ反射する。このベクトルは、現在フレームのブロック４０１に存在して一定速度で移動するオブジェクトが、おそらく、次のフレームのブロック４０６へ移動することを示唆する。オブジェクトが同じ速度で移動し続けるとすれば、サイズ及び方向は４０３に等しいが空間的にオフセットしている動きベクトル４０５は、動き続けるという良好な予想である。このベクトル候補は、現在４０１にあるオブジェクトが次のフレームのブロック４０６へ移動し続けることを予想する。それ故、ブロック４０１において動き推定により選択されたベクトルのコピーは、現在ブロック４０１の位置をベクトルそれ自体の値だけオフセットするときに到達する行先ブロックであるブロック４０６に対応する位置においてメモリに記憶される。４０５として示された選択されたベクトルのこの空間的にオフセットしたコピーは、モーメント候補と称され、メモリから読み取られて、次のフレームのブロック４０６に対して動き推定の候補動きベクトルとして使用される。
【００３９】
モーメント候補方法の更なる発展は、例えば、一定の動きだけでなく、動きの変化率も考慮するように、より高次のものへ拡張することである。論理的段階は、「加速度候補」を生成することであるが、より高次の相違も考えられる。「加速度候補」という語は、ここでは、ベクトルがオブジェクトの加速度を直接表す候補ではなく、動きの変化率を使用して導出された動きベクトル候補を指示するのに使用されることに注意されたい。第１次の加速度候補は、速度の変化率を決定するために２つのフレームにわたるオブジェクトの動き履歴を考慮する。この第１次の加速度候補は、実世界のシーンで通常観察されるように一定のレートで動きが変化するオブジェクトの動きを予想することができる。
【００４０】
図５から７は、カーブした経路に沿ったオブジェクトの動きを示すもので、モーメント及び加速度候補ベクトルの発生及び使用を示す。図５は、現在フレームにおけるオブジェクトの位置を指示するために陰影付けされて示されたオブジェクト５０２を含むブロック５０１を示している。過去及び将来のフレームにおけるオブジェクトの位置も示され、手前のフレームにおけるオブジェクトの位置は、ピクセルエリア５０３である。ブロック５０１に対する動き推定は、それが正確であると仮定すれば、手前のフレームのピクセルエリア５０３から現在フレームのブロック５０１へのオブジェクトの移動を正しく表す動きベクトル５０４を発生する。動きベクトル５０４と同一のモーメント候補ベクトルは、モーメント候補ベクトル５０６による現在ブロック５０１からのオフセットで見つけられるブロック５０５に対応する位置においてメモリに記憶される。この段階では、加速度候補を発生し又は記憶するには履歴が不充分である。
【００４１】
図６は、シーケンスにおける第２のフレームを示す。ブロック６０１は、今や、手前のフレームのピクセルエリア６０３に位置していたオブジェクト６０２を含む。この場合には、モーメント候補は、有用でない。というのは、オブジェクトの位置がブロック６０４であると誤って予想し、それ故、その位置に記憶されるからである。この候補は、ブロック６０１の動き推定中には得られず、動きの方向の変化のために、良好なブロック一致を与えることはおそらくない。この場合も、ブロック６０１に対する動き推定が成功となり、オブジェクトの動きを正確に記述する動きベクトル６０５を手前のフレームのピクセルエリア６０３から現在フレームのブロック６０１へ発生すると仮定する。モーメント候補ベクトルは、モーメント候補ベクトル６０６により現在ブロック位置からオフセットされたブロック６０７に対応する位置に記憶される。
【００４２】
今や、次のフレームに対する加速度候補を計算するに充分な情報が得られる。現在動きベクトル６０５は、手前のフレームのブロック６０３について計算されたベクトル６０８と比較される。ブロック６０３の位置は、動きベクトル６０５を発生するために現在ブロックとマッチングされたピクセルエリアに対応するか又はそれに最も近いブロックであるとして知られている。換言すれば、ベクトル６０８は、現在ブロック６０５の動きベクトルにより現在ブロック６０１の位置から後方にオフセットされた位置において、手前のフレームに対して決定された動きベクトルフィールドから検索することができる。次いで、動きベクトルの変化６０９が計算されて現在動きベクトルに加算され、次のフレームにおけるオブジェクトの位置を予想するよう試みる加速度候補６１０を発生する。加速度候補は、加速度候補ベクトル６１０により現在ブロック位置６０１からオフセットされたブロック６１１に対応する位置に記憶される。
【００４３】
図７は、シーケンスにおける第３のフレームを示す。ブロック７０１は、手前のフレームのピクセルエリア７０３に位置したオブジェクト７０２を含む。手前のフレームの処理中に、（図６に６０１と表示された）ブロック７０３に対応する位置の動き推定は、モーメント候補を、ブロック７０４に対応する位置に記憶させ、そして加速度候補を、ブロック７０１に対応する位置に記憶させる。ブロック７０１に対する動き推定中に、加速度候補７０５は、手前のフレームのピクセルエリア７０３から現在フレームのブロック７０１へのオブジェクトの動きを正確に記述する良好なブロック一致を与えることが分かる。それ故、加速度候補は、ブロックに対する動きベクトルとして選択される見込みが高い。手前のフレームから前方に通過した加速度候補は、オブジェクトの動きを正確に予想し、そして以前にそのような候補が存在しないところに有用なベクトル候補を与える。それ故、動き推定のクオリティ及び精度が改善される。上述したように、動きの変化７０６を表すベクトルが計算されそして動きベクトル７０５に加算されて、新たな加速度候補ベクトル７０７を発生し、これは、加速度候補ベクトルのサイズだけ現在ブロックからオフセットされた位置７０８に記憶される。同様に、モーメント候補が位置７０９に記憶される。
【００４４】
システムをより高次の動きへ拡張するには、時間と共に動きが変化する仕方を決定するように付加的な動きベクトル履歴が要求される。システムは、オブジェクトの位置及び動きを予想することに関するもので、従って、手前の動きベクトルフィールドのシーケンスを通して動きベクトルを後方にたどり、オブジェクトの位置を追跡することが必要である。手前の動きベクトルフィールドのシーケンスを経て後方の各々進むことで、現在フィールドから動きベクトルが取り出され、それを使用して、手前のフィールドにおける位置を決定する。例えば、図７において、現在ブロックは、７０１であり、関連ベクトルは、７０５である。このベクトルを後方オフセットとして使用して、オブジェクトの手前の位置がブロック７０３にあったことが指示される。図６を参照すると、同じブロックが６０１として示されている。この位置におけるベクトルは、６０５であり、このベクトルを後方オフセットとして使用して、オブジェクトの手前の位置がブロック６０３にあったことが指示される。図５において、同じブロックが５０１として示されている。同様の後方進行は、ベクトル５０４を使用して、オブジェクトの手前の位置がブロック５０３であったことを決定する。正確なベクトルが与えられると、記憶されたベクトルフィールドと同数のフレームに対してオブジェクトの動きを後方に追跡することができる。次いで、これらの各位置における動きベクトルは、特定オブジェクトに対する動きの履歴を与え、将来のそのオブジェクトの位置を予想するのに使用することができる。
【００４５】
図４から７、及びまだ説明されていない図８は、各フレームのブロック位置に整列されたままであるようなブロックサイズオブジェクトの移動及び加速を示している。これは、図示明瞭化のためである。オブジェクトは、単一ブロックより大きく、そして動きベクトルは、ブロックサイズの単純な倍数であることが稀である。モーメント又は加速度候補に対する記憶位置は、動きベクトルを現在ブロック位置からのオフセットとして使用することにより決定される。同様に、加速度ベクトルを計算するときには、手前のフレームのブロックに対して計算された動きベクトルを、例えば、図６の例ではブロック６０３の位置から、そして図７の例ではブロック７０３の位置から検索することが必要である。又、これらブロックの位置は、動きベクトルを使用して、現在ブロック位置からのオフセットを生成することでも決定される。このように決定される位置は、一般的に、全ブロック位置に整列されるのではなく、従って、実際のシステムは、適切なブロック位置を決定するための方法を必要とする。１つの適当な方法は、ベクトル候補がどのピクセルを指すか決定し、そのピクセルの親ブロックに候補を記憶することである。換言すれば、候補のための記憶位置を最も近い全ブロック位置に丸めることである。これは、一般的に、オブジェクトの動きを追跡するのに充分である。良好なベクトルを近くのブロックへ伝播するほとんどの動き推定システムの自然の傾向は、良好なモーメント又は加速度候補が、追跡されているオブジェクトへ「パチン」と戻ることを意味する。又、システムは、動き推定を行うときに、隣接ブロック位置及び現在ブロックからモーメント及び加速度候補を考慮することにより、付加的な頑健性を追加するように選択することができる。或いは又、加速度又はモーメント候補ベクトルが２つのブロック間の記憶位置中間部を指示するようなものである場合には、システムは、両位置に候補を記憶するように選択することができる。手前のフレームから動きベクトルを検索するときには、丸めに代わって、要求された位置においてベクトルフィールドを補間することができる。
【００４６】
ベクトルフィールドは、均一でないことに注意するのが重要である。動きベクトルは、あるエリアでは発散し、他のエリアでは収斂する。その結果、２つ以上のモーメント又は加速度候補が単一ブロックに記憶され、そしてあるブロックについては、記憶される候補がないことがある。図８は、一例としてモーメント候補を使用してブロック当たり複数の候補を生じる状況を示す。現在フレームのブロック８０１に対する動き推定は、手前のフレームのピクセルエリア８０３からのオブジェクト８０２に対する一致を見つけ、従って、動きベクトル８０４を発生する。現在フレームのブロック８０７に対する動き推定は、手前のフレームのピクセルエリア８０８からの一致を見つけ、従って、動きベクトル８０９を発生する。それ故、モーメント候補８０６及び８１０は、動きベクトルによりそれらの原点ブロックからオフセットした位置に記憶される。この場合は、モーメントベクトルがブロック８０５に記憶されることが要求される。又、より高次の候補、例えば、加速度候補を記憶するときにも、同様の状況が存在する。
【００４７】
システムは、記憶スペースに限度があるとき、同じ位置への記憶を要求する複数の候補をどのように管理するか判断しなければならない。複数の候補を記憶するためのスペースが利用できる場合、及び動き推定中にそれらをテストするに充分な計算ニットが利用できる場合には、記憶されそしてその後に使用される数に限度はない。実際のシステムでは、おそらく、所与のブロック位置、例えば、１、２又は４に少数のモーメント／加速度候補だけが記憶され、候補をプライオリティ付けする方法を案出することが必要となる。例えば、ブロック位置当たり１つのモーメント候補のための記憶スペースしかないシステムでは、空き位置は、常に、記憶を要求する第１の候補により埋められる。次いで、システムが第２の候補を同じ位置に記憶するよう試みる場合には、第１のベクトルを第２のベクトルに置き換えるか、又は第１のベクトルを保持して第２のベクトルを破棄するか、判断しなければならない。ＳＡＤ又はＭＳＤ値は、ベクトルの「クオリティ」の尺度を与え、従って、そのような判断に到達するための適度な仕方は、２つのベクトルを生じたブロックマッチングプロセスの結果を比較し、そして最良の一致を生じたベクトルを選択することである。
【００４８】
図９は、典型的なビデオエンコーダアプリケーションに使用される動き推定システムのブロック図である。ビデオ入力９０５は、動き推定ユニット９０１に供給され、このユニットは、ブロックを、以前にエンコードされたフレームから再構成された基準画像９０２のブロックと比較する。この基準画像９０２は、メモリ９０３に記憶される。この動き推定ユニット９０１は、動きベクトル９０４のセットを発生し、これは、入力ビデオシーケンス９０５の各フィールド又はフレームの各ブロックに対して、基準画像９０２からそのブロックを導出する際に最良の一致を与える。動き補償ユニット９０６は、ベクトルを使用して、基準画像９０２のピクセルのみから入力フレーム又はフィールドに対する近似を構成する。次いで、動き補償ユニット９０６の出力は、減算器９０７において入力ビデオ信号９０５の各フィールド又はフレームと比較されて、画像に対する残留信号又は差信号９０８を発生する。この残留信号９０８は、変換／量子化ユニット９０９へ通され、次いで、ビットストリームエンコーダ９１０において動き推定ユニット９０１の出力と合成されて、ビットストリーム出力９１２を発生する。動き推定ユニット９０１及び変換量子化ユニット９０９は、基準画像９０２と共に、再構成ユニット９１１への入力を形成し、この再構成ユニットは、動き推定ユニット９０１においてビデオ信号の後続フィールド又はフレームと比較するためのフレームを再構成してメモリ９０３に記憶するために使用される。それ故、これは、ビデオエンコーダに使用される従来の動き推定スキームである。本発明によるモーメント及び加速度ベクトル候補のシステムは、動き推定ユニット９０１の性能を改善すると考えられる。
【００４９】
ビデオにおけるオブジェクトの真の動きの正確な表現を要求するアプリケーションは、フレームレート変換及びデインターレースを含む。フレームレート変換アプリケーションが図１０に示されている。フレームレート変換は、例えば、６０フレーム／秒のビデオシーケンスを１２０フレーム／秒の高いレートへ変換するのに使用される。これは、各対の入力フレーム間の中間の時間インスタンスに付加的なフレームを補間することにより達成される。図１０において、このシステムは、ビデオ入力１００１を含み、これは、入力フレーム履歴を記憶するためのメモリ１００２と、ビデオ入力１００１からの現在入力フレームをメモリ１００２からの手前のフレームと比較することにより動き推定を行う動き推定ユニット１００３とに送られる。動きベクトルは、入力フレームから補間されたフレームを構成してビデオ出力１００７を与える補間ユニット１００４へ送られる。動きベクトルを知ることで、補間ユニット１００４は、補間されたフレームのオブジェクトがその動きの軌道に基づいて適当な位置に現れるようにピクセルを配することができる。又、フレームレート変換は、非整数フレームレート比、例えば、２４フレーム／秒ないし６０フレーム／秒で変換を行ってもよい。この場合に、補間されたフレームの時間インスタンスが変化し、入力フレーム間の厳密な中間ではない。タイミング制御ユニット１００５は、補間ユニットが正しい出力を生成できるように適当な倍率係数を与える。又、画像分析ユニット１００６は、入力データを分析し、そしてシステムの性能を監視することができる。例えば、タイミング制御の振舞いを調整することによりエラーを隠すことができる。フレームレート変換及びデインターレースは、オブジェクトを出力フレーム又はフィールドの正しい位置に表さねばならない場合には、オブジェクトの真の動きを表す高クオリティの動きベクトルに強く依存する。モーメント及び加速度ベクトル候補を使用するシステムは、ビデオにおける真の動きを表す見込みが高いベクトル候補を動き推定器に与えるために真のオブジェクトがどのように振舞うか分かるという効果がある。
【００５０】
図１１は、図９又は図１０のシステムに使用されるタイプの従来のブロックベース動き推定器の詳細なブロック図である。これは、手前のフレームから導出された動きベクトル１１０２のセットと、既に処理された現在フレームの部分から導出された動きベクトル１１０３のセットとを含む動きベクトルメモリ１１０１を備えている。現在フレームのブロックの動き推定は、ブロックシーケンサー１１０４の制御のもとで行われる。候補発生ユニット１１０５は、ブロックに対する適当な動きベクトル候補を与えるためにベクトルフィールドの時間的及び空間的一貫性を利用するよう試みるパターンに基づいて動きベクトルメモリ１１０１からベクトルを選択する。又、候補発生ユニット１１０５は、ベクトルにある程度のランダムさを導入し、処理が進行するにつれてベクトルフィールドが新たな動きに適応してそれに収斂できるようにする。手前のフレームデータ１１０８及び現在フレームデータ１１０９を含むビデオメモリ１１０７にアドレスが供給され、メモリにより返送されるピクセルデータが各ベクトル候補に基づいて現在ブロック位置からオフセットされるようにする。ピクセルデータ比較ユニット１１１０において比較するために各フレームからピクセルデータが与えられる。その出力は、絶対差の値の和であって、最良ベクトル選択ユニット１１０６へ送られ、該ユニットは、そのデータを使用して、候補発生ユニット１１０５からのベクトル候補のどれが、そのブロック位置において別のものから１つのフレームを導出する際に、最良の一致を与えるか識別する。次いで、最良ベクトル選択ユニット１１０６は、選択されたベクトルを、動きベクトルメモリ１１０１の現在フレーム動きベクトル１１０３に与える。
【００５１】
図１２は、ブロックに対するモーメント及び加速度候補ベクトルも与える動き推定器のブロック図である。これは、図１１の回路の変形態様であり、両回路において同じものであるユニットは、同じ参照番号を共有する。動きベクトルメモリ１１０１は、多数の手前のフレームから導出された動きベクトル１２０６のセットと、既に処理された現在フレームの部分から導出された動きベクトル１１０３のセットとを含む。更に、動きベクトルメモリ１１０１は、現在フレームのモーメント／加速度動きベクトル候補１２０１のブロックと、次のフレームのモーメント／加速度候補１２０２のセットとを含む。候補発生ユニット１１０５は、今度は、図１１を参照して説明した方法に基づいて選択された候補に加えて、メモリ１１０１からのモーメント及び加速度候補も含む。次のフレームの動き推定に使用するためのモーメント候補ベクトルは、モーメント候補発生ユニット１２０３において選択ユニット１１０６での最良ベクトル選択の後に発生される。これは、図４を参照して述べた方法に基づいてモーメントベクトル候補を発生し、それらは、次いで、次のフレームのモーメント／加速度候補ブロック１２０２に記憶される。その後続フレームが処理されると、それらは、現在フレームのモーメント／加速度候補ブロック１２０１へ転送される。
【００５２】
次のフレームの動き推定に使用するための加速度候補ベクトルは、加速度候補発生ユニット１２０４において発生され、このユニットは、最良ベクトル選択ユニット１１０６の出力にも結合されて、図５ないし７を参照して説明した方法に基づいて加速度候補を発生する。それらは、動きベクトルメモリ１１０１において現在フレームモーメント／加速度候補ブロック１２０１へ転送される前に、次のフレームのモーメント／加速度候補ブロック１２０２に記憶される。又、このシステムは、必要に応じてより高次の候補を発生できると共に、必要とされる高次の候補の数に対応する数の更に別の候補発生ブロック（１２０５で一般的に示す）を設けることもできる。
【符号の説明】
【００５３】
１０１、１０２：オブジェクト
１０４：ブロック
１０５：コンテンツ
１０６：ピクセルデータエリア
２０１：ブロック
２０２、２０３、２０４：位置
２０６、２０７、２０８：移動ベクトル候補
４０１：ブロック
４０２：オブジェクト
４０３：動きベクトル
４０４：ピクセルエリア
４０５：動きベクトル
４０６：ブロック
９０１：動き推定
９０２：基準画像
９０３：メモリ
９０４：ベクトル
９０５：ビデオ入力
９０６：動き補償ユニット
９０８：残留信号
９０９：変換／量子化ユニット
９１０：ビットストリームエンコーダ
９１１：再構成ユニット
９１２：ビットストリーム出力
【図１】
0005877469.tif 000002
【図２】
0005877469.tif 000003
【図３】
0005877469.tif 000004
【図４】
0005877469.tif 000005
【図５】
0005877469.tif 000006
【図６】
0005877469.tif 000007
【図７】
0005877469.tif 000008
【図８】
0005877469.tif 000009
【図９】
0005877469.tif 000010
【図１０】
0005877469.tif 000011
【図１１】
0005877469.tif 000012
【図１２】
0005877469.tif 000013