(57)【要約】ロバストな動きベクトルを得るため、イメージ信号中の候補動きベクトルは、前記信号のイメージ内の少なくとも１つの現在ブロックに対し、少なくとも１つの候補動きベクトルを作成し、前記候補動きベクトルの各々に対し、前記現在ブロックの前記イメージに時間的に隣接する、少なくとも１つのイメージ内の少なくとも１つのマッチングブロックを決定し、前記少なくとも１つのマッチングブロックが、前記イメージの前記アクティブ領域の少なくとも部分的に外側にあるかどうかを検出し、ならびに、少なくとも前記現在ブロックおよび前記マッチングブロックをシフトすることによって提供される。
2009533928.tif 000002
【特許請求の範囲】
【請求項１】
イメージ内の少なくとも１つの現在ブロックに対し、少なくとも１つの候補動きベクトルを作成する第１ステップと、
前記現在ブロックの前記イメージに時間的に隣接する少なくとも１つのイメージ内で、前記候補動きベクトルの各々に対し、少なくとも１つのマッチングブロックを決定する第２ステップと、
前記少なくとも１つのマッチングブロックの少なくとも一部が、前記イメージのアクティブ領域の外側に位置するかどうかを検出する第３ステップと、
前記マッチングブロックが前記イメージの前記アクティブ領域内に位置するように、少なくとも前記現在ブロックおよび前記マッチングブロックをシフトする第４ステップと
を具えることを特徴とするイメージ信号中の推定動きベクトルの決定方法。
【請求項２】
前記第２ステップは、前記現在ブロックに対し、少なくとも２つの第１および第２マッチングブロックを決定することをさらに有し、第１マッチングブロックは、時間的に先行するイメージ内に位置し、第２マッチングブロックは、時間的に後続のイメージ内に位置する請求項１に記載のイメージ信号中の推定動きベクトルの決定方法。
【請求項３】
前記第４ステップは、前記ブロックを同じシフトベクトルによってシフトすることをさらに有する請求項１に記載のイメージ信号中の推定動きベクトルの決定方法。
【請求項４】
前記第４ステップは、前記少なくとも２つの第１および第２マッチングブロックおよび前記現在ブロックをシフトすることをさらに有する請求項２に記載のイメージ信号中の推定動きベクトルの決定方法。
【請求項５】
１つの推定動きベクトルを得るために、少なくとも前記シフトされた現在ブロックおよび前記シフトされたマッチングブロックに基づいて、前記候補動きベクトルに対し、マッチングエラーを計算する第５ステップをさらに具える請求項１に記載のイメージ信号中の推定動きベクトルの決定方法。
【請求項６】
少なくとも前記２つのシフトされたマッチングブロックに基づいて、マッチングエラーを計算する第６ステップをさらに具える請求項２に記載のイメージ信号中の推定動きベクトルの決定方法。
【請求項７】
黒線検出法を用いて、前記イメージの前記アクティブ領域を検出する第７ステップをさらに具える請求項１に記載のイメージ信号中の推定動きベクトルの決定方法。
【請求項８】
前記候補動きベクトルは、サーチ領域内の前記現在ブロック内の画素の可能な変位を記述する請求項１に記載のイメージ信号中の推定動きベクトルの決定方法。
【請求項９】
前記候補動きベクトルは、
Ａ）空間的予測
Ｂ）時間的予測
のうち少なくとも１つを用いて作成される請求項１に記載のイメージ信号中の推定動きベクトルの決定方法。
【請求項１０】
前記第５および／または第６ステップは、
Ａ）合計絶対差
Ｂ）平均平方誤差
Ｃ）正規化相互相関
Ｄ）有効画素の数
のうち少なくとも１つを計算することを有する請求項５または６に記載のイメージ信号中の推定動きベクトルの決定方法。
【請求項１１】
イメージ信号内の推定動きベクトルを決定するためのコンピュータプログラムであって、該プログラムは、プロセッサが、
前記信号のイメージ内で、少なくとも１つの現在ブロックに対し、少なくとも１つの候補動きベクトルを作成し、
前記現在ブロックの前記イメージに時間的に隣接する少なくとも１つのイメージ内で、前記候補動きベクトルの各々に対し、少なくとも１つのマッチングブロックを決定し、
前記少なくとも１つのマッチングブロックの少なくとも一部が、前記イメージの前記アクティブ領域の外側に位置するかどうかを検出し、そして、
前記マッチングブロックが前記イメージの前記アクティブ領域内に位置するように、少なくとも前記現在ブロックおよび前記マッチングブロックをシフトする
ように動作可能な命令を有することを特徴とするイメージ信号中の推定動きベクトルを決定するためのコンピュータプログラム。
【請求項１２】
イメージ信号内の推定動きベクトルを決定するためのコンピュータプログラム製品であって、該プログラムは、プロセッサが、
前記信号のイメージ内で、少なくとも１つの現在ブロックに対し、少なくとも１つの候補動きベクトルを作成し、
前記現在ブロックの前記イメージに時間的に隣接する、少なくとも１つのイメージ内で、前記候補動きベクトルの各々に対し、少なくとも１つのマッチングブロックを決定し、
前記少なくとも１つのマッチングブロックに少なくとも一部が、前記イメージの前記アクティブ領域の外側に位置するかどうかを検出し、そして、
前記マッチングブロックが前記イメージの前記アクティブ領域内に位置するように、少なくとも前記現在ブロックおよび前記マッチングブロックをシフトする
よう動作可能な命令を有することを特徴とするイメージ信号中の推定動きベクトルを決定するコンピュータプログラム製品。
【請求項１３】
ビデオ信号を受信するために配置されるレシーバおよび動き推定ユニットを具えるディスプレイ装置であって、該動き推定ユニットは、
前記信号のイメージ内の少なくとも１つの現在ブロックに対し、候補動きベクトルを検出するために配置される候補動きベクトル検出ユニットと、
前記現在ブロックの前記イメージに時間的に隣接する少なくとも１つのイメージ内で、前記候補動きベクトルの各々に対し、少なくとも１つのマッチングブロックを決定するために配置されるマッチングユニットと、
前記少なくとも１つのマッチングブロックの少なくとも一部が、前記イメージのアクティブ領域の外側に位置するかどうかを検出するために配置される検出ユニットと、
前記マッチングブロックが前記イメージの前記アクティブ領域内に位置するように、少なくとも前記現在ブロックおよび前記マッチングブロックをシフトするために配置されるシフトユニットと
を有することを特徴とするディスプレイ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、アクティブイメージの境界における改良された動き推定に関するものである。
【背景技術】
【０００２】
ビデオ処理の分野における新技術の到来とともに、動き補償ビデオアルゴリズムは、高品質なビデオ処理に必要となるだけではなく、手頃にもなってきた。高品質なビデオ処理を提供するために、種々の動き補償のアプリケーションが提供されてきた。騒音低減用動き補償(ＭＣ)フィルタリング、コーディング用ＭＣ予測、インターレース構造からプログレッシブ構造への変換用ＭＣデインターレーシング、または、ＭＣイメージレート変換のようなアプリケーションが知られている。フレームレート変換において、新たなビデオフレームは、オリジナル入力フレーム間で計算される。動き補償がなければ、これらフレームは繰り返されまたは混合されなければならず、結果として、（動きジャダーと呼ばれる）滑らかではない動きまたは乱れた動きとなる。上述したアプリケーションの全ては、様々な方法が知られている動き推定(ＭＥ)アルゴリズムの利益を受けている。例えば、再帰的動き推定法は、候補動きベクトルのセットを利用する。これら候補動きベクトルは、種々の時間インスタンス中の画素ブロック間のマッチングエラーを計算するのに用いられる。最小マッチングエラーを提供するベクトルのセットからの候補動きベクトルは、更なる処理のための動きベクトルとして選ばれることができる。
【０００３】
しかしなから、アクティブビデオ信号の境界の近くで、特定の候補動きベクトルは、マッチング領域の一つをアクティブビデオ領域の少なくとも部分的に外側にするおそれがある。その結果、マッチングエラーを計算することができなくなる。画面の左端または右端／上部または底部で、例えば、縦／横の動きベクトルのマッチングエラーだけを求めることができる。
【０００４】
従来技術によれば、この問題は、イメージの縁部に最も近いブロックで動き推定を行わないことによって解決される。その代わりに、これらブロックの動きベクトルは、縁部からはるかに遠くにある、空間的に隣接するブロックからコピーされる。
【０００５】
例として、動き推定が行われない境界が、例えば幅n*(8×8)ブロックと決定されれば、マッチングエラー(SAD)が計算されるイメージ内の第１ブロックは、SAD(n*8,n*8)となる。候補動きベクトルが、n*8よりも大きいvの絶対値を有する場合、次のフレーム中のマッチング領域内の画素のいくつかがアクティブイメージ領域の外側にあるため、これらの値は計算することができない。これらの場合、正しいベクトルのためのマッチングエラーを計算することができないならば、従来技術に従って、マッチングエラーを計算することができる別の(誤った)ベクトルが選択されるであろう。多くの場合、これはゼロベクトルとなるであろう
【０００６】
従来のテレビにおいて、アクティブ領域内に、誤った動きベクトルがないと推定されるブロックは、通常、オーバースキャン領域の内側で良好で、それ故に、見ることはできないであろう。しかしながら、オーバースキャン領域のないＰＣ画面および他の(マトリックス)画面上に、一つには誤った動きベクトルが原因で、そして、一つにはは動きベクトルの突然の変化が原因で、アーチファクトは現れるであろう。さらにまた、これらの誤ったベクトルは、空間的に隣接したブロックのための候補動きベクトルとして用いられる。3D-RSアルゴリズムは、一貫した動き場を先天的に好むので、これら誤った候補は、特に、マッチングエラーが全ての候補にとって小さいところの、やや詳細で、および/または、低いコントラストを有する領域において、他のブロックの信頼性にも影響を及ぼす。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
したがって、本発明の目的は、イメージ境界における改良された推定結果を有する動き推定を提供することにある。また、本発明の別の目的は、イメージ境界において信頼性が高い動き推定を提供することにある。さらに、本発明の別の目的は、イメージ境界におけるロバストな動き推定を提供することにある。
【課題を解決するための手段】
【０００８】
これらの問題の１以上を克服するために、本出願は、一つの態様に従って、イメージ内の少なくとも１つの現在ブロックに対し、少なくとも１つの候補動きベクトルを作成する第１ステップと、前記現在ブロックの前記イメージに時間的に隣接する少なくとも１つのイメージ内で、前記候補動きベクトルの各々に対し、少なくとも１つのマッチングブロックを決定する第２ステップと、前記少なくとも１つのマッチングブロックの少なくとも一部が、前記イメージのアクティブ領域の外側に位置するかどうかを検出する第３ステップと、前記マッチングブロックが前記イメージの前記アクティブ領域内に位置するように、少なくとも前記現在ブロックおよび前記マッチングブロックをシフトする第４ステップとを具えることを特徴とするイメージ信号中の推定動きベクトルの決定方法を提供する。
【０００９】
実施形態に従う信号は、任意のイメージシーケンス、例えばビデオシーケンスとすることができる。信号中のイメージは、画素で構成されることができる。画素は、イメージの特定部分におけるルミナンスおよびクロミナンスを記述するイメージ要素となることができる。イメージ内の複数の隣接画素は、画素ブロックとして理解されることができる。
【００１０】
イメージ内の要素は、様々なフレームの動きに左右される。これら要素の動きは、動きベクトルによって記述することができる。これら動きベクトルは、特定の画素または画素ブロックの動きの方向および速度を記述することができる。
【００１１】
動き推定は、動きの確率の計算として理解されることができる。イメージ内で、最も実際の運動を記述しそうな動きベクトルは、動き推定を用いて計算することができる。これらの動きベクトルによって、後のフレームのイメージを予測することは可能である。推定動きベクトルは、また、インターレースイメージをインターレース解除するために用いることもできる。
【００１２】
候補動きベクトルは、画素または画素ブロックの起こりうる動きを記述する、考えられるベクトルのセットとなることができる。候補動きベクトルのセットは、イメージ内で最も実際の運動に合う、１つの推定動きベクトルを決定するのに用いることができる。例えば、インターレース解除および時間的アップコンバーション、コンピュータビジョン適用(computer vision application)、ならびにビデオ圧縮のような、高品質のビデオフォーマット変換アルゴリズムは、動き推定を必要とするであろう。
【００１３】
本発明は、マッチング領域の１つを、イメージのアクティブ領域の少なくとも部分的に外側にしてしまう候補動きベクトルのためにも、アクティブビデオ信号の境界の近くで、マッチングエラーを計算することを可能にする。有効な画素値を有するマッチングエラーの計算を提供するために、マッチングブロックおよび／または現在ブロックに、オフセットを与えることができ、これにより、両方のマッチングブロックは、シフト後、アクティブビデオ領域の完全に内側に位置することができる。シフトされたブロックの画素値は、マッチングエラーを計算するのに用いられる。
【００１４】
シフトがブロックだけに適用され、値には適用されないことに留意すべきである。言い換えれば、マッチングエラーを計算するために考慮されるブロックの領域がシフトされる。マッチングエラーの実際の計算のために、シフトされた領域にある画素の画素値が用いられる。シフトがこのように動きベクトルを変化させないことは、さらに留意すべきである。このような方法で計算されるマッチングエラーは、このベクトルに対するマッチングエラーを算定することができる、縁部に最も近い画素のブロックのための正しいマッチングエラーとして用いられる。アクティブビデオ領域の最初および最後のブロックのためのベクトルのセットに対するマッチングエラーでさえ、このような方法で計算することができる。
【００１５】
イメージ中の現在ブロックは、信号の入力イメージ内で、画素ブロックとすることができるということに留意すべきである。この場合、マッチングブロックは、時間的に隣接、例えば前のイメージおよび次のイメージ内に位置することができる。しかしながら、イメージ中の現在ブロックが、前のイメージおよび次のイメージに基づいて評価されるべきイメージ内のブロックとして理解されることもできる。それから、現在ブロックのイメージは、入力信号に存在していない必要がある。そのような現在ブロックは、アップコンバージョンにおいて用いることができる。
【００１６】
実施形態は、請求項２に従って、マッチングブロックを決定するステップを提供する。２個のマッチングブロックは、複数の候補動きベクトルのセットから正しい動きベクトルを計算するのに用いることができる。現在ブロックを省略して、２個のマッチングブロックだけを用いることが可能である。各候補動きベクトルに対するエラー測定は、マッチングブロック内において、画素値のために計算することができる。一方のブロックがイメージのアクティブ領域の外側にあるのならば、オフセットによって、マッチングブロックの領域のシフトが可能であり、エラー測定の計算は、アクティブイメージ領域の内側の画素からの有効な画素値に適用される。
【００１７】
請求項３に従うブロックのシフトが好適であることが分かっている。マッチングブロックおよび現在ブロックの両方を、同じ値、すなわち、シフトベクトルによってシフトし、全てのブロックをアクティブイメージ領域内に位置させることは可能であろう。マッチングブロックがアクティブイメージ領域の右外側にある場合、オフセット値はネガティブとすることができ、マッチングブロックがアクティブイメージ領域の左外側にある場合には、オフセット値はポジティブとすることができる。
【００１８】
請求項４に従うブロックのシフトは好ましい。このような方法で、マッチングエラーは、全てのブロックがアクティブイメージ領域の内側にあったのであれば用いられていたであろう画素に最も近くになるよう空間的に考慮された、画素ブロックに基づいて計算されることができる。オフセットによるマッチングブロックのシフトによって、アクティブ領域内で、マッチングブロックおよび現在ブロックを提供する、最も小さい取りうるオフセットが、シフトせずに用いられていたブロックに最も近いマッチングブロックに基づいてマッチングエラーを計算することを提供するのは好ましい。
【００１９】
請求項５または６に従うマッチングエラーの計算は好ましい。
【００２０】
アクティブイメージ領域は、必ずしも実際の画面または完全なビデオフレームと等しくない。例えば、（例えばワイド画面映画のレターボックスのための)黒線は、アクティブビデオ領域をより小さくするおそれがある。これら黒線において(または近くで)動きを推定することは、前述した問題と同じ問題をもたらすおそれがある。したがって、請求項７に従う黒線検出を用いることは、黒線の近くの動き推定を大幅に改良することができる。
【００２１】
候補動きベクトルは、請求項８に従うサーチ領域内で画素の可能な変位を記述することができる。そのような変位は、ｘ方向およびｙ方向のものとすることができる。ベクトルは、それらのｘ成分およびｙ成分によって運動方向を記述することができる。動きの速度は、ベクトルの絶対値によって記述することができる。
【００２２】
少なくとも２つの候補動きベクトルは、請求項９に従う空間的および／または時間的予測を用いて作成される。例えば、走査イメージ線を与える走査像の原因は、未だ送信されていないイメージの、ブロックの空間的予測の使用を禁止していることにある。その代わりに、時間的予測を用いることができる。
【００２３】
エラー基準は、請求項１０に従う基準とすることができる。
【００２４】
本出願の別の態様は、イメージ信号内の推定動きベクトルを決定するためのコンピュータプログラムであって、該プログラムは、プロセッサが、前記信号のイメージ内で、少なくとも１つの現在ブロックに対し、少なくとも１つの候補動きベクトルを作成し、前記現在ブロックの前記イメージに時間的に隣接する少なくとも１つのイメージ内で、前記候補動きベクトルの各々に対し、少なくとも１つのマッチングブロックを決定し、前記少なくとも１つのマッチングブロックの少なくとも一部が、前記イメージの前記アクティブ領域の外側に位置するかどうかを検出し、そして、前記マッチングブロックが前記イメージの前記アクティブ領域内に位置するように、少なくとも前記現在ブロックおよび前記マッチングブロックをシフトするように動作可能な命令を有することを特徴とするイメージ信号中の推定動きベクトルを決定するためのコンピュータプログラムである。
【００２５】
本出願のさらなる態様は、イメージ信号内の推定動きベクトルを決定するためのコンピュータプログラム製品であって、該プログラムは、プロセッサが、前記信号のイメージ内で、少なくとも１つの現在ブロックに対し、少なくとも１つの候補動きベクトルを作成し、前記現在ブロックの前記イメージに時間的に隣接する、少なくとも１つのイメージ内で、前記候補動きベクトルの各々に対し、少なくとも１つのマッチングブロックを決定し、前記少なくとも１つのマッチングブロックに少なくとも一部が、前記イメージの前記アクティブ領域の外側に位置するかどうかを検出し、そして、前記マッチングブロックが前記イメージの前記アクティブ領域内に位置するように、少なくとも前記現在ブロックおよび前記マッチングブロックをシフトするよう動作可能な命令を有することを特徴とするイメージ信号中の推定動きベクトルを決定するコンピュータプログラム製品である。
【００２６】
そのうえ、本出願の更なる態様は、ビデオ信号を受信するために配置されるレシーバおよび動き推定ユニットを具えるディスプレイ装置であって、該動き推定ユニットは、前記信号のイメージ内の少なくとも１つの現在ブロックに対し、候補動きベクトルを検出するために配置される候補動きベクトル検出ユニットと、前記現在ブロックの前記イメージに時間的に隣接する少なくとも１つのイメージ内で、前記候補動きベクトルの各々に対し、少なくとも１つのマッチングブロックを決定するために配置されるマッチングユニットと、前記少なくとも１つのマッチングブロックの少なくとも一部が、前記イメージのアクティブ領域の外側に位置するかどうかを検出するために配置される検出ユニットと、前記マッチングブロックが前記イメージの前記アクティブ領域内に位置するように、少なくとも前記現在ブロックおよび前記マッチングブロックをシフトするために配置されるシフトユニットとを有することを特徴とするディスプレイ装置である。
【００２７】
本発明のこれらおよび他の態様は、以下の実施形態を参照して、明らかにされ、かつ説明されるであろう。
【発明を実施するための最良の形態】
【００２８】
以下でより詳細に説明されるように、いわゆる３Ｄ再帰的サーチアルゴリズムは、高速動き推定に用いることができる。このアルゴリズムにおいて、前記動きは、候補動きベクトルのセットのため、２つの画素ブロック間における、例えば絶対差の和(SAD)等のマッチングエラーを最小化することによって推定される。一般的に行われる実施において、ブロックマッチングには、8×8画素ブロックが用いられる。ブロックマッチングは、図１を参照してより詳細に説明される。各画素ブロックに対し、多くの候補動きベクトルが求められる。これら候補動きベクトルは、隣接ブロックの最良マッチングベクトルから得られる。これらブロックのいくつかは、同じ動き推定パスで処理されており、空間的候補と呼ばれる一方、他のブロックは、未だこのパスで計算されておらず、それ故に前のパスの動きベクトルを含む。これらブロックからの動きベクトルは、時間的候補と呼ばれる。可能な候補動きベクトルは、図２に示される。空間的／時間的候補に加え、いくつかの追加ベクトル(ゼロベクトルおよび１以上のアップデートベクトル)もまた評価される。アップデートベクトルは、(小さい)セミランダムオフセットベクトルを、空間的および／または時間的候補に加えることによって得られる。図１に示すようにブロックマッチングを適用する場合、マッチングブロックは、イメージのアクティブ領域の外側に位置するおそれがある。この場合、図３〜５を参照してより詳細に説明されるように、ブロックのシフトが適用される。
【００２９】
図１は、ビデオストリーム中のイメージ１０２の時間的インスタンスn-1, n, n+1を描いたものである。動き推定のために、候補動きベクトル１０５は、例えば現在のイメージn内のブロック１０４、前のイメージn-1内のマッチングブロック１１０、および、後のイメージn+1内のマッチングブロック１０８の間のマッチング値を計算するのに用いられる。マッチングブロック１０８，１１０は、サーチ領域１０６内で選択される。相関測度、すなわち、ブロック１０４，１０８，１１０内の画素値間のマッチングエラーは、最良の候補動きベクトル
2009533928.tif 000003
を選択することによって最適化することができる。この最良の候補動きベクトル
2009533928.tif 000004
は、最小のマッチングエラーをもたらす。それによって、異なる候補動きベクトル
2009533928.tif 000005
はテストされることができ、マッチングブロック１０８，１１０の異なる位置をもたらし、それ故に、場合によって異なるマッチングエラーをもたらす。最小マッチングエラーをもたらす候補動きベクトルは、推定動きベクトルとして選択されることができる。
【００３０】
ブロックマッチャーにおける最小のマッチングエラーをサーチすることは、２次元最適化の問題となるおそれがあるが、これには、多くの解決法が得られている。１つの可能な実施は、三段階ブロックマッチャー、２Ｄ対数、またはクロスサーチ法、あるいはone-at-a-timeサーチブロックマッチングを用いる。異なるブロックマッチング方法は、G. de Haan, “Progress in Motion Estimation for Consumer Video Format Conversion”, IEEE transactions on consumer electronics, vol. 46, no. 3, August 2000, pp. 449-459に開示されている。
【００３１】
最適化方法の可能な実施は、３Ｄ再帰的サーチブロックマッチャー(3D RS)とすることができる。この3D RSは、ブロックよりも大きい対象を計上し、最良候補動きベクトルは、空間的および／または時間的に隣接する画素またはブロックにおいて生じることができる。
【００３２】
ブロック１０４のための推定動きベクトル
2009533928.tif 000006
を決定するために、様々な候補動きベクトル
2009533928.tif 000007
は、測定誤差
2009533928.tif 000008
を適用して求めることができる。
【００３３】
図２ａに描かれるように、走査方向を左から右かつ上から下に仮定すると、因果関係は、現在のブロックＤｃ２０４の右かつ下方のブロックＤｔからの空間的候補ベクトルの使用を禁止する。代わりに、時間的予測ベクトルは、時間的に後のブロックＤｔから用いられる必要がある。現在のブロックＤｃに関連して、サーチ領域１０６内の、ブロックＤｓからの空間的予測ベクトルおよびブロックＤｔからの時間的予測ベクトルは入手可能である。すでに走査されたブロックのみが、現在のブロックＤｃの空間的予測に用いられることができるため、空間的予測は、ブロックＤｓによってのみ可能である。サーチ領域１０６の前の時間的インスタンスから、ブロックＤｔに関する情報を入手することができるため、時間的予測はブロックＤｔによって可能である。
【００３４】
サーチ範囲内のすべての可能なベクトルを評価することが、意味のないことであるということはわかっている。数１のように、空間的に隣接するブロックから引き出したベクトルはすでに十分に評価されることができる。
【数１】
2009533928.tif 000009
但し、CSmaxは、数２のような前のイメージにおけるサーチ領域
2009533928.tif 000010
内の
2009533928.tif 000011
に関する全ての可能な置換(画素グリッド上の整数または比整数)を示す候補ベクトル
2009533928.tif 000012
のセットとして定義される。
【数２】
2009533928.tif 000013
但し、ｎおよびｍは、
2009533928.tif 000014
を限定する定数である。上記計算を減少させるため、空間的に隣接するブロックCSからのみ引き出したベクトル
2009533928.tif 000015
を十分に評価することができる。X,Yは、それぞれブロックの幅と高さを定義することができる。因果関係および実施におけるパイプラインニングの必要性は、すべての隣接ブロックが入手可能であることを妨げ、初期設定で、全てのベクトルはゼロとすることができる。
【００３５】
ベクトルの利用可能性を説明するために、現在のイメージで未だ計算されていないこれらベクトルは、前のベクトル場の対応する場所から引き出すことができる。図２ａは、現在のブロックＤｃと、ブロックが左上から右下に走査される場合に、結果ベクトルが、候補動きベクトルＤｓ,Ｄｔとして引き出されるブロックの相対位置を説明する。
【００３６】
初期設定のゼロベクトルの問題は、アップデートベクトルを加えることによって、計上されることができる。候補セットからのいくつかの空間的時間的予測を省略する、１つの可能な実施は、図２ｂに示される。ここでは、候補セット
2009533928.tif 000016
は、数３により定義される。
【数３】
2009533928.tif 000017
但し、数４に示すアップデートベクトル
2009533928.tif 000018
および
2009533928.tif 000019
は交互に利用可能であり、限定された一定の整数または非整数、アップデートセットから引き出すことができる。
【数４】
2009533928.tif 000020
【００３７】
個々の物体におけるイメージの分割およびこれら物体の各々のための動きパラメータセットの推定は、並進だけよりも複雑な物体運動(例えば回転または拡大縮小)を記述する能力があるモデルを用いることができる。ブロック数は、通常、桁違いに大きく、物体の数を上回るので、イメージ当たりに計算される必要がある動きパラメータの数は、減少する。しかしながら、計算の複雑性は増加する。
【００３８】
サーチブロックマッチングプロセスから生じる推定動きベクトル
2009533928.tif 000021
は、少なくとも１つのエラー関数候補
2009533928.tif 000022
の最小値をもたらす候補ベクトル
2009533928.tif 000023
である。これは数５のように表される。
【数５】
2009533928.tif 000024
【００３９】
通常、最も小さいマッチングエラーを有する推定ベクトル
2009533928.tif 000025
は、動き補償のための現在ブロック１０４における全ての位置
2009533928.tif 000026
に割り当てられる。
【００４０】
与えられた候補動きベクトル
2009533928.tif 000027
に対するエラー値は、現在ブロック１０４およびマッチングブロックにおける画素のルミナンス値の関数とすることができる。すなわち前のマッチングブロック１１０または次のマッチングブロック１０８から、全体のブロック１０４、１０８、１１０にわたって合計される。エラー値は、その他画素値の関数とすることもでき、また、数６のように、費用関数の和として表すことができる。
【数６】
2009533928.tif 000028
共通に、非インターレース信号の場合にはp=1を選択し、インターレース信号の場合にはp=2を選択する。１つの可能なエラー関数は、合計された絶対差(SAD)基準とすることができる。例えば、前のイメージn-1(P)および次のイメージn+1(N)を用いて、マッチングエラーが候補動きベクトル
2009533928.tif 000029
のために計算される場合、SADは数７のように計算されることができる。
【数７】
2009533928.tif 000030
但し、
2009533928.tif 000031
は、マッチングブロック１１０内の画素のルミナンス値であり、
2009533928.tif 000032
は、マッチングブロック１０８内の画素のルミナンス値である。候補動きベクトル
2009533928.tif 000033
が２次元ベクトル
2009533928.tif 000034
である場合、SADは、数８とすることができる。
【数８】
2009533928.tif 000035
【００４１】
推定動きベクトルを、候補動きベクトルのセットから選択するための、一般的アプローチが説明されてきたが、次に、マッチングブロックがイメージのアクティブ領域の外側にある場合に、どのようにして推定動きベクトルが計算されることができるかについて説明する。
【００４２】
図３に示すのは、実施形態に従う方法３００を示すフローチャートである。図３に示されるこの方法３００は、図４に示される装置で実行されることができる。
【００４３】
ディスプレイ装置４００は、レシーバ４０２を具える。レシーバ４０２に入力する入力信号は、動き推定ユニット４０４へ転送される。動き推定ユニット４０４は、候補動きベクトル検出ユニット４０６、検出ユニット４０８、シフトユニット４１０、マッチングユニット４１２および出力ユニット４１４を具える。動き推定ユニット４０４は、ハードウェア(HW)および/またはソフトウェア(SW)に実装されることができる。ソフトウェアに実装される限り、ディスプレイ装置４００の処理ユニットで実行される場合、コンピュータ可読媒体に記憶されるソフトウェアコードは、記述された関数を理解する。
【００４４】
ディスプレイ装置４００は、図３および図５を参照して以下で説明される。
【００４５】
レシーバ４０２で入力信号を受信した後、この入力信号は、動き推定ユニット４０４へ転送される。動き推定ユニット４０４において、この入力信号は、動き推定のために処理される。動き推定の間中、入力イメージ内の複数のブロックのため、動きベクトルは、さらなる処理のために推定される。動きベクトル推定のため、第１ステップ３０２において、現在ブロックが選択される。ステップ３０２−３１８は、各イメージ内の全てのブロックに対して行われることができる。
【００４６】
現在ブロックに対し、候補動きベクトルのセットは、候補動きベクトル検出ユニット内で選択される(３０４)。これは、図２に示されるように行われることができる。
【００４７】
現在ブロックおよび候補動きベクトルのセットを選択（３０３，３０４）した後、前のマッチングブロックおよび次のマッチングブロックは、候補動きベクトルの各々のために検出ユニット４０８内で決定される(３０６)。これは、１つの動きベクトルのために図５に示される。現在ブロック５０４に対し、動きベクトルのセットから全ての候補動きベクトル５０５が評価される。図示された例において、動きベクトル５０５は、前のマッチングブロック５１０が現在ブロック５０４から左にあり、かつ次のマッチングブロック５０８が、現在ブロック５０４から右にあるというものである。
【００４８】
次のステップにおいて、イメージのアクティブ領域５０２は、検出ユニット４０８において検出される(３０８)。アクティブ領域は、イメージ内の領域とすることができる。イメージの外側の領域は、アクティブでないとみなすことができる。アクティブ領域５０２は、イメージの縦横の両方の側に黒線によって境されることもまた可能とすることができる。黒線は、黒線検出ユニット(図示せず)を用いて検出することができる。
【００４９】
イメージのアクティブ領域５０２がどこにあるかを検出した後、マッチングブロック５１０および／またはマッチングブロック５０８の両方がアクティブ領域５０２内にあるかどうかは、検出ユニット４０８中で評価されることができる(３１０)。マッチングブロック５０８，５１０が両方ともアクティブ領域５０２内にある場合、処理はステップ３１６へ進む。他のプロセスは、ブロックのシフトの計算を続ける。
【００５０】
一般に、例えばSADが、x=0および候補動きベクトルvx>0の現在ブロックで計算されなければならない場合、x-vxの最小値は、-vxに等しいであろう。従って、マッチングブロック５１０で相当する位置は、アクティブ領域５０２の外側にあるだろう。ブロック５０４、５０８、５１０は、x方向におけるオフセット(Δx)が与えられるべきである。これは、次のフレームにおけるマッチング領域をアクティブ領域５０２の内側にすることを確実にするためのvxの絶対値に等しい。同様に、候補動きベクトルのｘ成分が０よりも小さくなる場合、x+vxの最小値はvxに等しくなり、それ故にマッチングブロック５１０はアクティブ領域の外側となるであろう。これは、マッチング領域５０８，５１０の両方がアクティブビデオ領域の内側にあることを確実にするためのvxの絶対値に等しいオフセットを必要とする。これは一般に、数９に示される。
【数９】
2009533928.tif 000036
【００５１】
この数式において、ΔxおよびΔyの値は、マッチング領域５０８，５１０の両方がアクティブ領域５０２の内側となるよう選択されるべきである、Δxの値は、マッチングブロック５１０の一つが画面の左外側にある場合にポジティブとされ、マッチングブロック５０８の一つが画面の右外側にある場合にネガティブとされるであろう。
【００５２】
図示した場合において、マッチングブロック５０８は、現在ブロック５０４のために動きベクトル５０５を評価しているとき、アクティブイメージ５０２の右側の外側にある。図５は、マッチングブロック５０４，５０８，５１０の位置のみを示し、マッチングブロック５０４，５０８，５１０の画素はフレームn-1, n n+1とは異なる。図示する場合において、全てのx-vxの値は、アクティブ領域５０２の幅よりも大きい。すべてのブロックを、マッチングブロック５０８がアクティブ領域５０２のちょうど内側に位置するよう、左にシフトすることによって(vx<Δx<0)、マッチングエラーは、現在ブロック５０４およびマッチングブロック５０８，５１０のわずかに異なる位置ではあるが、計算することができる。
【００５３】
マッチングブロック５０８が部分的にアクティブ領域５０２の外側にあることを検出(３１０)した後、シフトユニット４１０は、マッチングブロック５０８をアクティブビデオ領域５０２の内側にシフトするためにシフト値(ΔxおよびΔy)を計算(３１０)する必要がある。これらの値を計算することが可能な多くの解法がある。一つの解法は、ΔxおよびΔyの絶対値を最小化することである。この場合、マッチング領域が計算されるところの実際のブロックは、計算されるべきブロックに最も近い。
【００５４】
両方のイメージにおけるマッチングブロック５１０，５０８は、その後シフトユニット４１０によって計算されたオフセットに亘りシフトされる(３１４)。
【００５５】
シフトされたブロック５１０，５０８を用いて、マッチングエラーは、マッチングユニット４１２において計算される(３１６)。計算は、上述したように行われる。任意で、追加のペナルティーは、オフセットベクトル、すなわち、オフセットの絶対値に基づいてマッチングエラーに加えられることができる。
【００５６】
全ての候補動きベクトルのために、候補動きベクトルのセットから計算されたマッチングエラーを用いて、最小マッチングエラーをもたらす候補動きベクトルは、マッチングユニット４１２における推定動きベクトルおよび出力ユニット４１４におけるさらなる処理のための出力として選択される(３１８)ことができる。
【００５７】
実施形態に従う動き推定は、動きがビデオ信号から推定されるところの全ての分野に適用されることができる。テレビジョンにおいて、これは、たとえば、ナチュラルモーションおよび動き補償インターレース解除のケースである。実施形態に従う動き推定は、PCソフトウェアのために用いることもできる。さらにまた、それはビデオ圧縮に用いられることができる。この領域において、フルサーチ動き推定は、一般に、3D-RSの変わりに用いられる。しかしながら、本発明は、例えば、動き補償ステップで用いられる正確な動き推技術または、結果として生じるベクトルが、例えば、動き補償ステップで用いられる方法とは無関係である。
【００５８】
好ましい実施形態に適用されるように、本発明の基本の新規な形態は、示され、説明され、そして指摘されてきた一方で、当業者が、本発明の範囲から逸脱することなく、記載された装置および方法の形態および詳細において、様々な省略、置換および変化を行うことができるということは理解されたい。例えば、同じ結果を得るための実質的に同じ方法における実質的に同じ機能を実行する、これら要素および／または方法の全ての組合せが、本発明の範囲内であるということを強く意味する。また、本発明の開示された形態または実施形態に関連して示されおよび／または説明された構造および／または要素および／または方法は、他の開示または記載または提案された形態または実施形態に、設計選択の一般的事項として取り入れられることができるということに留意すべきである。したがって、本発明は、添付の特許請求の範囲によって示されるとおりにのみ限定されるものであることを意味する。
【図面の簡単な説明】
【００５９】
【図１】図１は、ブロックマッチング法を説明する図である。
【図２】図２Ａおよび図２Ｂは、再帰的サーチブロックマッチャーための候補動きベクトルのセットを示す図である。
【図３】図３は、実施形態に従うフローチャートを示す図である。
【図４】図４は、実施形態に従う装置を示す図である。
【図５】図５は、実施形態に従う、ブロックをシフトするブロックマッチング法を説明する図である。
【図１】
2009533928.tif 000037
【図２】
2009533928.tif 000038
【図３】
2009533928.tif 000039
【図４】
2009533928.tif 000040
【図５】
2009533928.tif 000041
【国際調査報告】
2009533928.tif 000042
2009533928.tif 000043
2009533928.tif 000044