(57)【要約】  【課題】  複数の動きベクトル候補からベクトル数を限定する場合に、検出誤りを低く抑えることを可能とする。また、画質劣化を抑えて２段階目の動きベクトル検出の回路規模を削減することを可能とする。  【解決手段】  入力される現フレームのマクロブロックに対して、各ベクトル検出手段１０〜１４は５種類の動きベクトルを検出する。このうち、４種類のフィールドベクトルからトップフィールドマクロブロックとボトムフィールドマクロブロックの最適なフィールドベクトルを選択するために、各ベクトルの評価値に所定の重み係数を乗じて比較する。重み係数生成は、現マクロブロックの近傍のマクロブロックの動きベクトル選択状況に応じて所定の関数を用いて適応的に設定される。【選択図】  図１
2005210321.tif 000002
【特許請求の範囲】
【請求項１】
入力画像フレームを所定のブロックに分割し、前記ブロック毎に、他の参照フレームからの動きを表す動きベクトルを検出する方法であって、
前記ブロックを２つのフィールドブロックに分離し、第１フィールドブロックについて前記参照フレームの第１フィールドに対して第１の動きベクトルを求め、前記第１フィールドブロックについて前記参照フレームの第２フィールドに対して第２の動きベクトルを求め、第２フィールドブロックについて前記参照フレームの第１フィールドに対して第３の動きベクトルを求め、前記第２フィールドブロックについて前記参照フレームの第２フィールドに対して第４の動きベクトルを求め、
前記第１の動きベクトルと第２の動きベクトルにそれぞれ付随する評価値に所定の重み係数を乗じて比較し、その比較に基づく選択情報に従って一方のベクトルを選択し、前記第３の動きベクトルと第４の動きベクトルにそれぞれ付随する評価値に所定の重み係数を乗じて比較し、その比較に基づく選択情報に従って一方のベクトルを選択することを特徴とする動きベクトル検出方法。
【請求項２】
前記各重み係数は、前記ブロックの近傍の既に動きベクトルを確定した１つ以上のブロックの各フィールド毎のベクトル選択情報に基づいて設定されることを特徴とする請求項１に記載の動きベクトル検出方法。
【請求項３】
前記評価値は、前記ブロックと前記第１ないし第４の動きベクトルで参照される各参照画像ブロックとの画素差分絶対値のブロック内総和であることを特徴とする請求項１または請求項２に記載の動きベクトル検出方法。
【請求項４】
入力画像フレームを所定のブロックに分割し、前記ブロック毎に、他の参照フレームからの動きを表す動きベクトルを検出する方法であって、
前記ブロックを２つのフィールドブロックに分離し、第１フィールドブロックについて前記参照フレームの第１フィールドに対して第１の動きベクトルを求め、前記第１フィールドブロックについて前記参照フレームの第２フィールドに対して第２の動きベクトルを求め、第２フィールドブロックについて前記参照フレームの第１フィールドに対して第３の動きベクトルを求め、前記第２フィールドブロックについて前記参照フレームの第２フィールドに対して第４の動きベクトルを求め、
前記第１の動きベクトルと第３の動きベクトルを対にした第１ベクトルペア、および前記第１の動きベクトルと第４の動きベクトルを対にした第２ベクトルペア、および前記第２の動きベクトルと第３の動きベクトルを対にした第３ベクトルペア、および前記第２の動きベクトルと第４の動きベクトルを対にした第４ベクトルペアに分類し、前記各ベクトルペアに付随する評価値にそれぞれ対応する所定の重み係数を乗じて比較し、その比較に基づく選択情報に従って１つのベクトルペアを選択することを特徴とする動きベクトル検出方法。
【請求項５】
前記各重み係数は、前記ブロックの近傍の既に動きベクトルを確定した１つ以上のブロックのベクトルペア選択情報に基づいて設定されることを特徴とする請求項４に記載の動きベクトル検出方法。
【請求項６】
前記評価値は、前記ブロックと前記第１ないし第４の動きベクトルで参照される各参照画像ブロックとの画素差分絶対値のブロック内総和を、各ベクトルペアに対応して２つ選択し加算したものであることを特徴とする請求項４または請求項５に記載の動きベクトル検出方法。
【請求項７】
入力画像フレームを所定のブロックに分割し、前記ブロック毎に、他の参照フレームからの動きを表す動きベクトルを検出する方法であって、
前記ブロックについて前記参照フレームに対してフレーム動きベクトルを求め、前記ブロックを２つのフィールドブロックに分離し、第１フィールドブロックについて前記参照フレームの第１および第２フィールドに対して第１のフィールド動きベクトルを求め、第２フィールドブロックについて前記参照フレームの第１および第２フィールドに対して第２のフィールド動きベクトルを求め、前記第１のフィールド動きベクトルと第２のフィールド動きベクトルを対にしてフィールド動きベクトルとし、
前記フレーム動きベクトルに付随するフレーム評価値と、前記フィールド動きベクトルに付随するフィールド評価値の一方に所定の重み係数を乗じて比較し、その比較に基づく選択情報に従ってフレーム動きベクトルかフィールド動きベクトルかを選択することを特徴とする動きベクトル検出方法。
【請求項８】
前記重み係数は、前記フレーム動きベクトルと前記第１のフィールド動きベクトルと前記第２のフィールド動きベクトルの長さに応じて設定されることを特徴とする請求項７に記載の動きベクトル検出方法。
【請求項９】
前記重み係数は、前記比較および選択の工程が評価値を比較して小さい方の動きベクトルを選択する場合、前記ベクトルの長さが小さいほど前記フィールド評価値を大きくし、前記ベクトルの長さが大きいほど前記フィールド評価値を小さくするように設定されることを特徴とする請求項８に記載の動きベクトル検出方法。
【請求項１０】
前記ベクトルの長さは、前記フレーム動きベクトルおよび前記第１のフィールド動きベクトルおよび前記第２のフィールド動きベクトルをそれぞれ参照フィールド距離で割って平均を求めた平均長であることを特徴とする請求項８または請求項９に記載の動きベクトル検出方法。
【請求項１１】
前記重み係数は、前記第１のフィールド動きベクトルと前記第２のフィールド動きベクトルの差分ベクトル長に応じて設定されることを特徴とする請求項７に記載の動きベクトル検出方法。
【請求項１２】
前記重み係数は、前記比較および選択の工程が評価値を比較して小さい方の動きベクトルを選択する場合、前記差分ベクトル長が小さいほど前記フィールド評価値を小さくし、前記差分ベクトル長が大きいほど前記フィールド評価値を大きくするように設定されることを特徴とする請求項１１に記載の動きベクトル検出方法。
【請求項１３】
前記重み係数は、前記ブロックの近傍の既に動きベクトルが確定された１つ以上のブロックのベクトル選択情報に応じて設定されることを特徴とする請求項７から請求項１２までのいずれかに記載の動きベクトル検出方法。
【請求項１４】
前記重み係数は、選択した前記近傍ブロックの前記フィールド動きベクトルを採用した割合によって設定されるものであり、前記フィールド動きベクトルが多く採用されているほど前記フィールド評価値を小さくするように設定されることを特徴とする請求項１３に記載の動きベクトル検出方法。
【請求項１５】
前記フレーム評価値は、前記ブロックと、前記フレーム動きベクトルで参照される参照画像ブロックとの画素差分絶対値のブロック内総和であり、前記フィールド評価値は、前記フィールドブロックと、前記第１および第２の動きベクトルで参照される参照ブロックとの画素差分絶対値のブロック内総和を加算したものであることを特徴とする請求項７から請求項１４までのいずれかに記載の動きベクトル検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像信号、特にインタレース画像信号の動き補償予測符号化に用いられる動きベクトル検出方法に関するものである。
【背景技術】
【０００２】
近年、動画像信号を高能率で情報圧縮できる手法として、動き補償予測フレーム間符号化方式が用いられている。この方式は、画像フレーム間での動きを予測する工程を含む。
【０００３】
動き補償予測フレーム間符号化方式は、現在符号化しようとするマクロブロック（以下、現マクロブロックと呼ぶ。）に最も相関の高い過去または未来の参照フレームの画素ブロックを検出し、現マクロブロックと検出された画素ブロック（以下、参照ブロックと呼ぶ。）の差分を符号化するものである。符号化データを伝送する際には、この符号化された差分データに付随して、参照ブロックの現マクロブロックからの動き量を示す動きベクトルを符号化し伝送する。
【０００４】
次に、一般的な動きベクトルの検出方法について述べる。現マクロブロックについて、ある参照フレームに対して、フレーム動き予測およびフィールド動き予測を行う。現マクロブロックは画像フレームデータをブロック分割して生成された、例えば１６×１６画素からなるブロックである。
【０００５】
フレーム動き予測を行う場合、現マクロブロックについて参照フレームを所定の探索範囲内でブロックマッチング検査を行い、最も相関の大きい参照ブロックを特定する。この際、特定した参照ブロックの現マクロブロックからの空間的な変位をフレーム動きベクトルと呼ぶ。また、フレーム動きベクトルを特定したときに用いられた相関指標をフレーム評価値と呼ぶ。またブロックマッチング検査とは、対応する１６×１６画素のブロック間の画素差分絶対値の総和を評価値とし、探索範囲内の全ての参照ブロックについてこの評価値を求め、評価値が最小となる参照ブロックを最も相関が高いと判断する方法である。
【０００６】
フィールド動き予測を行う場合、まず現マクロブロックは１６×８画素の２つのフィールドブロックに分割される。ここでは、フレームを構成する２つのフィールドをトップフィールドおよびボトムフィールドと呼ぶことに従い、この２つに分割されたフィールドブロックを現トップフィールドブロック、および現ボトムフィールドブロックと呼ぶ。
【０００７】
現トップフィールドブロックについて参照フレームのトップフィールドに対してブロックマッチング検査を行い、最も相関の大きい参照ブロックを特定する。これにより第１トップフィールドベクトルおよび第１トップフィールド評価値が決まる。同様に、現トップフィールドブロックについて参照フレームのボトムフィールドに対してブロックマッチング検査を行い、第２トップフィールドベクトルおよび第２トップフィールド評価値を求める。
【０００８】
同様にして、現ボトムフィールドブロックについて参照フレームのトップフィールドに対してブロックマッチング検査を行い、第１ボトムフィールドベクトルおよび第１ボトムフィールド評価値を求める。同様に、現ボトムフィールドブロックについて参照フレームのボトムフィールドに対してブロックマッチング検査を行い、第２ボトムフィールドベクトルおよび第２ボトムフィールド評価値を求める。
【０００９】
このように、１つの現マクロブロックにつき、参照フレームに対する１つのフレームベクトルと４つのフィールドベクトルが求められる。
【００１０】
最終的に符号化するときには、これらのうち１つのフレームベクトルか、１つのトップフィールドベクトルと１つのボトムフィールドベクトルの組からなるフィールドベクトルかを選択し、さらに参照フレームが２つある場合には、一方の参照フレームに対するベクトル、もしくは双方の参照フレームからなる双方向参照ベクトルを選択して１つのベクトルを特定し、符号化に用いることとなる。このときに用いられる判断方法は、候補となる全てのベクトルの評価値の中で最小の評価値を持つベクトルを選択するというものである。
【００１１】
さて、一般的に公知の技術として知られているＭＰＥＧ２（Moving PictureCoding Experts Group Phase 2）のテストモデル５（ＴＭ５）を例として、上述した動きベクトル検出方法の実現方法を説明する。
【００１２】
図１７は、この従来の動きベクトル検出方法を用いた装置のブロック図である。
【００１３】
まず、フレームベクトル検出手段１００は、入力される現フレームにおけるあるフレームマクロブロックと、入力される参照フレームにおけるある設定されたベクトル探索範囲内の全てのフレーム参照ブロックについてブロックマッチング検査を行い、最小の評価値Ｄｆを取るブロックを選択し、そのブロック位置を示す動きベクトルＭＶｆを検出する。
【００１４】
同様に、第１のトップフィールドベクトル検出手段１０１は、入力される現フレームのトップフィールドマクロブロックと、入力される参照フレームにおけるある設定されたベクトル探索範囲内の全てのトップフィールド参照ブロックについてブロックマッチング検査を行い、最小の評価値Ｄａを取るブロックを選択し、そのブロック位置を示す動きベクトルＭＶａを検出する（トップ−トップ）。
【００１５】
第２のトップフィールドベクトル検出手段１０２は、入力される現フレームのトップフィールドマクロブロックと、入力される参照フレームにおけるある設定されたベクトル探索範囲内の全てのボトムフィールド参照ブロックについてブロックマッチング検査を行い、最小の評価値Ｄｂを取るブロックを選択し、そのブロック位置を示す動きベクトルＭＶｂを検出する（トップ−ボトム）。
【００１６】
第１のボトムフィールドベクトル検出手段１０３は、入力される現フレームのボトムフィールドマクロブロックと、入力される参照フレームにおけるある設定されたベクトル探索範囲内の全てのトップフィールド参照ブロックについてブロックマッチング検査を行い、最小の評価値Ｄｃを取るブロックを選択し、そのブロック位置を示す動きベクトルＭＶｃを検出する（ボトム−トップ）。
【００１７】
第２のトップフィールドベクトル検出手段１０４は、入力される現フレームのボトムフィールドマクロブロックと、入力される参照フレームにおけるある設定されたベクトル探索範囲内の全てのボトムフィールド参照ブロックについてブロックマッチング検査を行い、最小の評価値Ｄｄを取るブロックを選択し、そのブロック位置を示す動きベクトルＭＶｄを検出する（ボトム−ボトム）。
【００１８】
ここで評価値とは、現マクロブロックと参照ブロックとの画素差分絶対値の総和である。
【００１９】
このようにして、現マクロブロックについて、ある参照フレームに対して、１つのフレームベクトルと４つのフィールドベクトルを求める。
【００２０】
次に、比較手段１０５において、第１のトップフィールドベクトル検出手段１０１で決定した評価値Ｄａと第２のトップフィールドベクトル検出手段１０３で決定した評価値Ｄｂの小さい方を１つ選択し、この選択情報に基づきベクトル選択手段１０７で１つのトップフィールドベクトルを求める。
【００２１】
同様に、比較手段１０６において、第１のボトムフィールドベクトル検出手段１０３で決定した評価値Ｄｃと第２のボトムフィールドベクトル検出手段１０４で決定した評価値Ｄｄの小さい方を１つ選択し、この選択情報に基づきベクトル選択手段１０８で１つのボトムフィールドベクトルを求める。
【００２２】
以上のようにして、１つのフレームベクトルと２つのフィールドベクトルが候補として選択される。この段階までを整数画素精度のブロックマッチング検査で行う。そしてこの整数画素精度のベクトル検出を第１段階のベクトル検出と呼ぶ。また、２つの参照フレームが許される現フレームにおいては、第１段階のベクトル検出で、各参照フレームごとに上記の候補ベクトルを求める。
【００２３】
次に、第２段階のベクトル検出を行う。図１８は、従来の動きベクトル検出方法を用いた装置における第２段階のベクトル検出手段のブロック図である。第２段階ベクトル検出では、上記の第１段階で求められた候補ベクトルを中心として、半画素精度のブロックマッチング検査を行い、最も相関の大きい参照ブロックに対するベクトルを特定するものである。図１８によると、第１段階で決定された３つのベクトル（フレームベクトル、トップフィールドベクトル、ボトムフィールドベクトル）がそれぞれ半画素精度フレームベクトル検出手段１０９、半画素精度トップフィールドベクトル検出手段１１０、半画素精度ボトムフィールドベクトル検出手段１１１に入力される。各半画素精度のベクトル検出手段１０９〜１１１は、入力されたベクトルを中心とする参照フレームまたはフィールドの所定範囲内の半画素精度ベクトル検出を行う。これにより、１つの半画素精度フレームベクトルＭＶ０と、２つの半画素精度フィールドベクトルＭＶ１，ＭＶ２が算出される。またそれぞれのベクトルに付随して、フレーム評価値Ｅ０、フィールド評価値（Ｅ１，Ｅ２）が算出される。
【００２４】
次に、２つのフィールドベクトルの組（ＭＶ１，ＭＶ２）とフレームベクトルＭＶ０のどちらが最適であるかを求めるために、加算手段１１２において２つのフィールド評価値（Ｅ１，Ｅ２）の和を算出して、比較手段１１３においてこのフィールド評価値の和とフレーム評価値Ｅ０を比較し、小さい方を選択して、選択情報をベクトル選択手段１１４に出力する。ベクトル選択手段１１４では、この選択情報に基づき、ベクトルを選択し、最終的に符号化に用いるベクトルとする。
【００２５】
また、２つの参照フレームを持つ現フレームについては、上記のベクトル選択を参照フレーム毎に行う。さらに２つの参照フレームを用いた双方向ベクトルについても検査を行う。
【００２６】
このように、２段階のベクトル検出を行うと、全ての候補ベクトルを最初から半画素精度で検出するより、演算量が格段に削減される。さらに、第１段階で１つの参照フレームの候補ベクトルを５つから３つに絞り込むことで、第２段階の半画素精度のベクトル検出の演算量を削減できる。
【００２７】
また、特許文献１に開示される動きベクトル検出装置では、最小値でなくとも最小値付近の評価値をとるベクトル候補のうちで、発生符号量が最も小さくなるものを検出する方法が示されている。この方法は、評価値の信頼性があまり高くないことに起因するベクトルのばらつきによって、ベクトルを符号化し伝送する際の符号量が増加することを防ぐことを主たる目的としている。この方法は、マクロブロックに対して探索範囲内の動き検出を行い、最小の評価値を算出し、次に、その最小値よりわずかに大きな範囲を設定し、全候補ベクトルのうち前記範囲内の評価値を取る候補ベクトルを選び、前マクロブロックで求めた共通ベクトルと一致する候補ベクトルがあればそれを採用するものである。１つのマクロブロックにつき複数の候補ベクトルおよび評価値を記憶しておく必要があり、記憶部の回路規模が大きい。
【特許文献１】特開２０００−１５２２４３号公報（第４−５頁、第４図）
【発明の開示】
【発明が解決しようとする課題】
【００２８】
しかしながら、上記のＴＭ５で示されるような従来の動きベクトル検出方法は、以下のような課題がある。
【００２９】
まず第１段階のベクトル検出において、ある参照フレームに対する候補ベクトルをフレーム、フィールド合わせて５種類存在する内から、フィールドベクトル候補を限定して、３種類とするときの選択方法が課題である。すなわち、現トップフィールドブロックが参照した２種類のフィールドベクトルの評価値の単なる最小値比較を行う点である。現ボトムフィールドも同様である。
【００３０】
例えば、ある物体が変形を伴って動く場合や画面全体が回転するような場合、フレーム間でブロックマッチングがとりにくく、各ベクトルの評価値は大きくなり、各評価値の信頼性は低くなる。しかし、本来全くマッチングが取れない変形等の状況でも、マクロブロックは必ずどこかの最小評価値を持つ参照ブロックを選択してくる。このとき、物体自体の動きとは無関係な位置から誤って画像を取ってくることが多くある。視覚的には物体の動き量は定まるが、それとは離れた位置の画像を取ってきてしまう。違う物体の一部分を取ってくることは、次のような不具合をもたらす。ＴＭ５のように、一般的に動き検出を輝度信号のみを用いて行う。このとき、上記のように違う物体を参照すると、輝度信号はほぼ似たような絵柄を取ってきているが、色信号が全く異なり、色の差分が大きくなる。低い符号化レート等、符号化条件が悪いときには色誤差による歪みが発生するため、画質低下につながってしまう。
【００３１】
また、カメラのパーンやチルトといった画面全体が加速度的に動く場合、理想的には全てのマクロブロックに対して、加速度に応じた適切な参照フィールドおよびベクトル長が決まるが、実際は、多くのマクロブロックが他のフィールドを参照したり、違う長さのベクトルを選択してしまう。このようなベクトルは検出誤りと言える。検出誤りが起こると符号化効率が悪化する。また、符号化レートが低い場合では復号画像は完全に復元されず、異なる領域の画像から作った違和感のある画像となる。特にカメラ一体型ビデオ等に動き補償予測符号化方式を用いる場合、このような画面全体のパーン、チルトのような動きが頻繁に発生すると考えられる。
【００３２】
従って上に述べたように、評価値自体の信頼度が必ずしも高くない状況は多く存在し、評価値の最小値を単に選択することは、誤ったベクトルを選択することにつながる。
【００３３】
従って、本発明は検出誤りを減少させることのできる評価値選択を用いた動きベクトル検出方法を提供することを目的とする。
【００３４】
次に、従来の第２段階のベクトル検出では、候補ベクトル数に比例して半画素精度のベクトル検出が必要となり、演算量が大きい点が課題である。
【００３５】
すなわち、従来の方法では、参照フレームにつき１つのフレームベクトルおよび２つのフィールドベクトルの組が候補ベクトルとして選択されているが、それらのうち、どちらか一方に絞り込むことができれば、第２段階のベクトル検出の演算量が削減できる。しかし、従来の方法のように、単純な双方の評価値の最小値による判断を用いたとしても、上述したような検出誤りを含んでしまう場合が多く存在し、最適な動きベクトルを検出できないため、精細な第２段階のベクトル検出の効果が減少してしまう。
【００３６】
従って、ベクトル検出精度を上げることがもう一つの課題となる。まず、ベクトル検出精度を上げるためにはフレームベクトルとフィールドベクトルの特性についても考慮する必要がある。すなわちフレームベクトルは静止画および等速度の動きに用いられるのが適切であって、フィールドベクトルは加速度の動きに用いられるのが適切である。画面全体でこのような条件が偏って発生する場合、すなわちパーンやチルトのような動きの場合、こうした画像の性質に従ったベクトル選択が必要となる。また、静止画に近い画像であれば、フレームベクトルが望ましく、もし検出誤りによってフレーム間の同一領域にてベクトルタイプが変動すれば、復号画像に違和感を生むことにつながる。さらに、このような静止画の場合、フレームベクトルを採用する方が、ベクトル符号量も減らす効果がある。
【００３７】
更に、大きな動きに追従するためベクトル探索範囲を大きくすることが有益であるが、その反面ベクトル検出の評価点数が増え、検出誤りの可能性も増大する。
【００３８】
従って、本発明は画像の特徴や候補ベクトル自体の信頼度に基づき、より信頼性の高いベクトルを選択できる評価値選択を用いた動きベクトル検出方法を提供することを目的とする。また、検出誤りを抑えて第２段階の演算量を削減できる動きベクトル検出方法を提供することを目的とする。
【００３９】
また、特許文献１に開示される動きベクトル検出装置では、評価値の信頼性があまり高くないことに起因するベクトルのばらつきを防ぐことを目的としている点で本発明と類似するが、第１に５種類全てのベクトルタイプにつき複数の候補ベクトルおよびその評価値を記憶する必要があり、回路規模が大きくなる点が課題である。ベクトルタイプを３種類に絞った後に適用すれば回路規模を削減できるが、フィールドベクトルペアを適切に選択する方式については述べられていない。
【００４０】
従って、本発明は、簡単な回路規模で実現可能な検出誤りを抑える動きベクトル検出方法を提供することを目的とする。
【課題を解決するための手段】
【００４１】
本発明は、上記の課題を解決するために次のような手段を講じる。
【００４２】
第１の解決手段として、本発明による動きベクトル検出方法は、入力画像フレームを所定のブロックに分割し、前記ブロック毎に、他の参照フレームからの動きを表す動きベクトルを検出する方法であって、次のように構成されている。すなわち、前記ブロックを２つのフィールドブロックに分離し、第１フィールドブロックについて前記参照フレームの第１フィールドに対して第１の動きベクトルを求め、前記第１フィールドブロックについて前記参照フレームの第２フィールドに対して第２の動きベクトルを求め、第２フィールドブロックについて前記参照フレームの第１フィールドに対して第３の動きベクトルを求め、前記第２フィールドブロックについて前記参照フレームの第２フィールドに対して第４の動きベクトルを求める。そして、前記第１の動きベクトルと第２の動きベクトルにそれぞれ付随する評価値に所定の重み係数を乗じて比較し、その比較に基づく選択情報に従って一方のベクトルを選択し、前記第３の動きベクトルと第４の動きベクトルにそれぞれ付随する評価値に所定の重み係数を乗じて比較し、その比較に基づく選択情報に従って一方のベクトルを選択する。
【００４３】
上記において、第１フィールドの代表例がトップフィールドであり、第２フィールドの代表例がボトムフィールドである。すなわち、トップフィールドベクトルを２つから１つに絞るとき、およびボトムフィールドベクトルを２つから１つに絞るときに、それぞれ最小でない評価値であっても検出誤りの少ないフィールドベクトルを選択可能とするように、評価値に所定の重み係数を乗じて各フィールドベクトルを決定する。つまり、２つの候補ベクトルの評価値に所定の重み係数を乗じることによって、これら２つの候補ベクトルの間で優劣を付けることができ、必ずしも最小の評価値を取らずとも画像の特徴等に応じて適切な動きベクトルを採用することが可能となる。したがって、効果的に候補ベクトル数を削減し、動きベクトル検出のための演算量を削減することが可能となる。
【００４４】
上記において、前記重み係数の設定については、現マクロブロックの近傍の既に動きベクトルを確定した１以上のマクロブロックに関して選択の際に用いられた各フィールドベクトルの選択情報に基づく状態で重み係数を設定するのが好ましい。例えば、選択個数が多い動きベクトルほどその評価値の信頼性が高いので重み係数をより小さく設定する。その結果、現マクロブロックの近傍の選択情報に応じて、現マクロブロックも同じベクトルが選択されやすくなる。すなわち、画像の特徴等に応じた適切な動きベクトルの選択をより的確なものにすることができる。
【００４５】
なお、上記において、前記評価値について、前記ブロックと前記第１ないし第４の動きベクトルで参照される各参照画像ブロックとの画素差分絶対値のブロック内総和を評価値とすることは好ましい。
【００４６】
第２の解決手段として、本発明による動きベクトル検出方法は、入力画像フレームを所定のブロックに分割し、前記ブロック毎に、他の参照フレームからの動きを表す動きベクトルを検出する方法であって、次のように構成されている。すなわち、前記ブロックを２つのフィールドブロックに分離し、第１フィールドブロックについて前記参照フレームの第１フィールドに対して第１の動きベクトルを求め、前記第１フィールドブロックについて前記参照フレームの第２フィールドに対して第２の動きベクトルを求め、第２フィールドブロックについて前記参照フレームの第１フィールドに対して第３の動きベクトルを求め、前記第２フィールドブロックについて前記参照フレームの第２フィールドに対して第４の動きベクトルを求める。そして、前記第１の動きベクトルと第３の動きベクトルを対にした第１ベクトルペア、および前記第１の動きベクトルと第４の動きベクトルを対にした第２ベクトルペア、および前記第２の動きベクトルと第３の動きベクトルを対にした第３ベクトルペア、および前記第２の動きベクトルと第４の動きベクトルを対にした第４ベクトルペアに分類し、前記各ベクトルペアに付随する評価値にそれぞれ対応する所定の重み係数を乗じて比較し、その比較に基づく選択情報に従って１つのベクトルペアを選択する。
【００４７】
上記において、第１フィールドの代表例がトップフィールドであり、第２フィールドの代表例がボトムフィールドである。すなわち、４組のフィールドベクトルペアのうち、最小でない評価値であっても検出誤りの少ないフィールドベクトルペアの組み合わせを選択可能とするように、各ベクトルペアの評価値に所定の重み係数を乗じてフィールドベクトルペアを決定する。つまり、最初に検出された４つのフィールドベクトルペアから１つのフィールドベクトルペアに候補を絞る際、フィールドベクトルのベクトルペア毎の評価値に所定の重み係数を乗じることによって、これら４つの候補のフィールドベクトルペアに優劣を付けることができる。したがって、評価値が最小値を取らないような場合でも画像の特徴等に応じて適切なフィールドベクトルを選択できるようにすることが可能である。とりわけ、フィールドベクトル単位で重み係数を設定するのではなく、フィールドベクトルの組み合わせであるベクトルペアに対して信頼度に基づく重み係数を設定するので、より最適なベクトルペアを選択可能とすることができる。
【００４８】
上記において、前記重み係数の設定については、現マクロブロックの近傍の既に動きベクトルを確定した１以上のマクロブロックに関して選択の際に用いられたフィールドベクトルペアの選択情報に基づく状態で重み係数を設定するのが好ましい。例えば、発生確率が高いフィールドベクトルペアほどその評価値の信頼性が高いので重み係数をより小さく設定する。その結果、現マクロブロックの近傍の選択情報に応じて、現マクロブロックも同じフィールドベクトルペアが選択されやすくなる。すなわち、画像の特徴等に応じた適切な動きベクトルの選択をより的確なものにすることができる。
【００４９】
なお、上記において、前記評価値について、前記ブロックと前記第１ないし第４の動きベクトルで参照される各参照画像ブロックとの画素差分絶対値のブロック内総和を、各ベクトルペアに対応して２つ選択し加算したものを評価値とすることが好ましい。
【００５０】
第３の解決手段として、本発明による動きベクトル検出方法は、入力画像フレームを所定のブロックに分割し、前記ブロック毎に、他の参照フレームからの動きを表す動きベクトルを検出する方法であって、次のように構成されている。すなわち、前記ブロックについて前記参照フレームに対してフレーム動きベクトルを求め、前記ブロックを２つのフィールドブロックに分離し、第１フィールドブロックについて前記参照フレームの第１および第２フィールドに対して第１のフィールド動きベクトルを求め、第２フィールドブロックについて前記参照フレームの第１および第２フィールドに対して第２のフィールド動きベクトルを求め、前記第１のフィールド動きベクトルと第２のフィールド動きベクトルを対にしてフィールド動きベクトルとする。そして、前記フレーム動きベクトルに付随するフレーム評価値と、前記フィールド動きベクトルに付随するフィールド評価値の一方に所定の重み係数を乗じて比較し、その比較に基づく選択情報に従ってフレーム動きベクトルかフィールド動きベクトルかを選択する。
【００５１】
上記において、第１のフィールド動きベクトルの代表例がトップフィールドベクトルであり、第２のフィールド動きベクトルの代表例がボトムフィールドベクトルである。１つのフレームベクトルと１組のフィールドベクトルのうち、最小でなくとも検出誤りの少ない方のベクトルを選択可能とするように、評価値に所定の重み係数を乗じてベクトルを決定する。その結果、フレーム動きベクトルとフィールド動きベクトルとの間で優劣を付けることができ、必ずしも最小の評価値を取らずとも画像の特徴等に応じて適切な動きベクトルを採用することが可能となる。したがって、効果的に候補ベクトル数を削減し、動きベクトル検出のための回路規模および演算量を削減することが可能となる。
【００５２】
上記において、前記重み係数は、前記フレーム動きベクトルと前記第１のフィールド動きベクトルと前記第２のフィールド動きベクトルの長さに応じて設定されるものとする。具体的には、前記比較および選択の工程が評価値を比較して小さい方の動きベクトルを選択する場合、前記ベクトルの長さが小さいほど前記フィールド評価値を大きくするように重み係数が設定され、前記ベクトルの長さが大きいほど前記フィールド評価値を小さくするように重み係数が設定される。つまり、ベクトル長が小さいほど大きな重み係数を設定し、フレーム動きベクトルが選択されやすく、フィールド動きベクトルが選択されにくくする。また、ベクトル長が大きいほど小さな重み係数を設定し、フィールド動きベクトルが選択されやすく、フレーム動きベクトルが選択されにくくする。画像の動きが小さくて静止画に近いような場合、ベクトル長は小さくなりやすく、動きの激しい画像の場合は、ベクトル長が大きくなりやすいからである。画像の特徴等に応じて適切な動きベクトルを採用するのである。
【００５３】
ここで、前記ベクトルの長さは、前記フレーム動きベクトルおよび前記第１のフィールド動きベクトルおよび前記第２のフィールド動きベクトルをそれぞれ参照フィールド距離で割って平均を求めた平均長とするのが好ましい。あるいは、重み係数の設定は、フレームベクトルと１組のフィールドベクトルの平均長に基づいて行うことが好ましい。これはベクトル長の正規化である。正規化は、同一方向を示したベクトルであっても参照フレームまたはフィールドが異なると長さが異なってしまうことを補正する。
【００５４】
あるいは、重み係数は、前記第１のフィールド動きベクトルと前記第２のフィールド動きベクトルの差分ベクトル長に応じて設定されるものとする。差分ベクトル長はフィールドベクトルの信頼度を表す。具体的には、前記比較および選択の工程が評価値を比較して小さい方の動きベクトルを選択する場合、前記差分ベクトル長が小さいほど前記フィールド評価値を小さくし、前記差分ベクトル長が大きいほど前記フィールド評価値を大きくするように設定される。これによれば、複雑な絵柄の場合に、ベクトルの評価値の信頼性が悪化し、検出誤りが増加することに起因する色ノイズを抑制することが可能となる。
【００５５】
また、重み係数の設定は、前記ブロックの近傍の既に動きベクトルが確定された１つ以上のブロックのベクトル選択情報に応じて設定するのが好ましい。ベクトルタイプがばたつくと、復元画像が一様でなくなりブロック歪みが目立つ傾向となるが、既に確定した動きベクトルの選択情報を用いることでベクトルタイプのばたつきを抑制することができる。
【００５６】
また、重み係数の設定は、フィールドベクトル自体の信頼性を推測することに基づいて設定するのが好ましい。
【００５７】
また、重み係数の設定は、現マクロブロックの近傍の１以上の既にベクトルを確定したマクロブロックが採用したベクトルタイプの発生確率に基づいて設定するのが好ましい。
【発明の効果】
【００５８】
本発明の動きベクトル検出方法は、評価値の信頼度が低い場合でも、画像の特徴に応じて検出誤りの少ない動きベクトルを選択することができる。
【００５９】
また、フレームベクトルとフィールドベクトルの選択時において、評価値の信頼度が低い場合でも、画像の特徴に応じて検出誤りの少ない動きベクトルを選択させることができる。
【００６０】
また、本発明の動きベクトル検出方法を、第１段階の動きベクトル検出時に実施することにより、検出誤りを抑えて第２段階のベクトル検出での演算量を減少させることができる。
【００６１】
また、ベクトル選択に用いる重み係数の生成を非常に簡単な構成で実現可能である。
【発明を実施するための最良の形態】
【００６２】
以下、本発明にかかわる動きベクトル検出方法の実施の形態を図面に基づいて詳細に説明する。
【００６３】
（実施の形態１）
図１は、本発明の実施の形態１の動きベクトル検出方法を適用した装置の構成を示すブロック図である。図１において、１０はフレームベクトル検出手段、１１は第１のトップフィールドベクトル検出手段、１２は第２のトップフィールドベクトル検出手段、１３は第１のボトムフィールドベクトル検出手段、１４は第２のボトムフィールドベクトル検出手段、１５〜１８は乗算手段、１９，２０は比較手段、２１，２２はベクトル選択手段である。
【００６４】
このように構成された動きベクトル検出装置について、以下に動作を説明する。
【００６５】
まず、フレームベクトル検出手段１０は、入力される現フレームにおけるあるフレームマクロブロックと、入力される参照フレームにおけるある設定されたベクトル探索範囲内の全てのフレーム参照ブロックについてブロックマッチング検査を行い、最小の評価値Ｄｆを取るブロックを選択し、そのブロック位置を示す動きベクトルＭＶｆを検出する。
【００６６】
同様に、第１のトップフィールドベクトル検出手段１１は、入力される現フレームのトップフィールドマクロブロックと、入力される参照フレームにおけるある設定されたベクトル探索範囲内の全てのトップフィールド参照ブロックについてブロックマッチング検査を行い、最小の評価値Ｄａを取るブロックを選択し、そのブロック位置を示す動きベクトルＭＶａを検出する。
【００６７】
第２のトップフィールドベクトル検出手段１２は、入力される現フレームのトップフィールドマクロブロックと、入力される参照フレームにおけるある設定されたベクトル探索範囲内の全てのボトムフィールド参照ブロックについてブロックマッチング検査を行い、最小の評価値Ｄｂを取るブロックを選択し、そのブロック位置を示す動きベクトルＭＶｂを検出する。
【００６８】
第１のボトムフィールドベクトル検出手段１３は、入力される現フレームのボトムフィールドマクロブロックと、入力される参照フレームにおけるある設定されたベクトル探索範囲内の全てのトップフィールド参照ブロックについてブロックマッチング検査を行い、最小の評価値Ｄｃを取るブロックを選択し、そのブロック位置を示す動きベクトルＭＶｃを検出する。
【００６９】
第２のトップフィールドベクトル検出手段１４は、入力される現フレームのボトムフィールドマクロブロックと、入力される参照フレームにおけるある設定されたベクトル探索範囲内の全てのボトムフィールド参照ブロックについてブロックマッチング検査を行い、最小の評価値Ｄｄを取るブロックを選択し、そのブロック位置を示す動きベクトルＭＶｄを検出する。
【００７０】
ここで評価値とは、例えば現マクロブロックと参照ブロックとの画素差分絶対値の総和である。
【００７１】
乗算手段１５は、第１のトップフィールドベクトル検出手段１１が決定した評価値Ｄａに所定の重み係数Ｋａを乗じる。同様に乗算手段１６は、第２のトップフィールドベクトル検出手段１２が決定した評価値Ｄｂに所定の重み係数Ｋｂを乗じる。比較手段１９は、乗算手段１５，１６が出力する評価値の小さい方を選択し、選択情報をベクトル選択手段２１に与える。ベクトル選択手段２１は、入力されるベクトルＭＶａとＭＶｂから選択情報に従って選択された評価値に対応する動きベクトルを選択する。
【００７２】
乗算手段１７は、第１のボトムフィールドベクトル検出手段１３が決定した評価値Ｄｃに所定の重み係数Ｋｃを乗じる。同様に乗算手段１８は、第２のボトムフィールドベクトル検出手段１４が決定した評価値Ｄｄに所定の重み係数Ｋｄを乗じる。比較手段２０は、乗算手段１７，１８が出力する評価値の小さい方を選択し、選択情報をベクトル選択手段２２に与える。ベクトル選択手段２２は、入力されるベクトルＭＶｃとＭＶｄから選択情報に従って選択された評価値に対応する動きベクトルを選択する。
【００７３】
以上のように、現マクロブロックの各フィールドマクロブロックの２つの候補ベクトルの評価値に所定の重み係数を乗じることによって、これら２つの候補ベクトルに優劣を付けることができ、必ずしも最小の評価値を取らずとも画像の特徴等に応じて適切な動きベクトルを採用することが可能となる。
【００７４】
さらに、本実施の形態に用いる重み係数の好適な生成方法を図２に示す。図２において、１０〜２２の構成要素は上述のものと同一であるで詳細説明は省く。また、２３，２６は選択情報記憶手段、２４，２７は代表値抽出手段、２５，２８は係数生成手段である。
【００７５】
このように構成された動きベクトル検出装置について、以下に動作を説明する。
【００７６】
比較手段１９は上述のようにして、トップフィールドマクロブロックの動きベクトルの選択情報を生成し、この情報に基づきベクトル選択手段２１がベクトル選択を行っている。
【００７７】
さらに、この選択情報は選択情報記憶手段２３に記憶される。代表値抽出手段２４は、現マクロブロックの近傍の既に動きベクトルを確定した１以上のマクロブロックの選択情報を選択情報記憶手段２３から抽出する。その後、係数生成手段２５は、これらの選択情報に基づき、所定の関数を用いて上記重み係数Ｋａ，Ｋｂを算出する。
【００７８】
また、代表値抽出手段２４の動作において近傍マクロブロックの選択方法の一例を図３に示す。図３では１つの矩形単位がマクロブロックである。斜線で塗りつぶされたマクロブロックを現在のマクロブロックとすると、符号０〜３を付したマクロブロックを選択する。
【００７９】
次に、このように選択した近傍マクロブロックの情報を用いて重み係数を算出する方法の一例を図４に示す。図４は、動きベクトルＭＶａが選択された個数と重み係数Ｋａの関係を表す関数である。動きベクトルＭＶａが選択された個数が多いほど重み係数Ｋａの値が１より小さく設定され、動きベクトルＭＶａに付随する評価値Ｄａを小さくするようにする。動きベクトルＭＶｂと重み係数Ｋｂの関係も同様にすれば、周辺マクロブロックの選択情報に応じて、現マクロブロックも同じベクトルが選択されやすくなる。また、この関数は任意に決めればよい。但し、重み係数があまりに小さくなると、検出誤りを引き起こすので注意する。なお、ボトムフィールドベクトル用の代表値抽出手段２７、係数生成手段２８も上記と同様に動作させればよい。
【００８０】
以上のように、評価値が最小値でなくとも近い値であるとき、周辺マクロブロックに採用された各フィールドブロック毎の信頼性を用いて、検出誤りを低減する動きベクトル検出が可能である。
【００８１】
なお、重み係数の算出方法は上記方法に限らず、同様の効果を得る目的で、たくさんの変形があり得る。例えば２つの重み係数の一方を１とし、もう一方の重み係数のみを操作して、乗算手段を削減しても良い。
【００８２】
（実施の形態２）
図５は、本発明の実施の形態２の動きベクトル検出方法を適用した装置の構成を示すブロック図である。図５において、１０〜１４は実施の形態１と同一の動作をするので、詳細説明を省略する。また、３０〜３３は加算手段、３４〜３７は乗算手段、３８は比較手段、３９はベクトル選択手段である。
【００８３】
このように構成された動きベクトル検出装置について、以下に動作を説明する。
【００８４】
各ベクトル検出手段１０〜１４では、現マクロブロックに対する各ベクトルタイプ毎に動きベクトルＭＶｆ，ＭＶａ，ＭＶｂ，ＭＶｃ，ＭＶｄが決定される。また、各動きベクトルに付随する評価値Ｄｆ，Ｄａ，Ｄｂ，Ｄｃ，Ｄｄが求められている。
【００８５】
次に、加算手段３０は、第１のトップフィールドベクトル検出手段１１と第１のボトムフィールドベクトル検出手段１３で決定した評価値の加算を行い、乗算手段３４がこの評価値に所定の重み係数Ｋａを乗じて評価値Ｄａｃを算出する。これと同様に加算手段３１と乗算手段３５によって、重み係数Ｋｂを用いて、第１のトップフィールドベクトル検出手段１１と第２のボトムフィールドベクトル検出手段１４のペアの評価値Ｄａｄを求める。また、加算手段３２と乗算手段３６によって、重み係数Ｋｃを用いて、第２のトップフィールドベクトル検出手段１２と第１のボトムフィールドベクトル検出手段１３のペアの評価値Ｄｂｃを求める。また、加算手段３３と乗算手段３７によって、重み係数Ｋｄを用いて、第２のトップフィールドベクトル検出手段１２と第２のボトムフィールドベクトル検出手段１４のペアの評価値Ｄｂｄを求める。
【００８６】
次に、比較手段３８は、上記各評価値Ｄａｃ，Ｄａｄ，Ｄｂｃ，Ｄｂｄの中から最小の評価値を選択し、選択情報を出力する。ベクトル選択手段３９は、入力される各ベクトルＭＶａ，ＭＶｂ，ＭＶｃ，ＭＶｄの中から、上記選択情報に示されたベクトルペアを選択する。このとき選択情報とは、比較手段３８で最小の評価値を求める根拠となった上述の２つの動きベクトルのペアを示すものである。
【００８７】
このようにして、最初に検出された５つの候補ベクトルから３つのベクトルに候補を絞る際、所定の重み付けをフィールドベクトルのベクトルペア毎に与えて優劣を付けることができ、評価値が最小値を取らないような場合でも画像の特徴等に応じて適切なフィールドベクトルを選択できるようにすることが可能である。
【００８８】
さらに、本実施の形態に用いる重み係数の好適な生成方法を図６に示す。図６において、１０〜１４および３０〜３９の構成要素は上述のものと同一であるで詳細説明は省く。また、４０はベクトルペア記憶手段、４１は代表値抽出手段、４２は係数生成手段である。
【００８９】
このように構成された動きベクトル検出装置について、以下に動作を説明する。
【００９０】
比較手段３８は上述のようにして、４種類のベクトルペアの選択情報を出力する。この情報に基づきベクトル選択手段３９がベクトルペアの選択を行っている。
【００９１】
さらに、このベクトルペア選択情報はベクトルペア記憶手段４０に記憶される。代表値抽出手段４１は、現マクロブロックの近傍の既に動きベクトルを確定した１以上のマクロブロックのベクトルペア選択情報をベクトルペア記憶手段４０から抽出する。その後、係数生成手段４２は、これらのベクトルペア選択情報に基づき、所定の関数を用いて上記重み係数Ｋａ，Ｋｂ，Ｋｃ，Ｋｄを算出する。
【００９２】
また、代表値抽出手段４１の動作において近傍マクロブロックの選択方法の一例は実施の形態１と同様、図３に示すようにすればよい。
【００９３】
また、このように選択した近傍マクロブロックの情報を用いて重み係数を算出する方法の一例を図７に示す。図７は、動きベクトルＭＶａとＭＶｃのペア（ＭＶａ，ＭＶｃ）が選択された個数と重み係数Ｋａの関係を表す関数である。動きベクトルのペア（ＭＶａ，ＭＶｃ）が選択された個数が多いほど重み係数Ｋａの値が１より小さく設定され、（ＭＶａ，ＭＶｃ）に付随する評価値Ｄａｃを小さくするようにする。動きベクトルのペア（ＭＶａ，ＭＶｄ）と重み係数Ｋｂの関係、動きベクトルのペア（ＭＶｂ，ＭＶｃ）と重み係数Ｋｃの関係、動きベクトルのペア（ＭＶｂ，ＭＶｄ）と重み係数Ｋｄの関係も同様にすれば、周辺マクロブロックの選択情報に応じて、現マクロブロックも同じベクトルペアが選択されやすくなる。また、この関数は任意に決めればよい。但し、重み係数があまりに小さくなると、検出誤りを引き起こすので注意する。
【００９４】
以上のように、評価値が最小値でなくとも近い値であるとき、周辺マクロブロックに採用されたベクトルペアの信頼性を用いて、適応的に検出誤りを防ぐことができる動きベクトル検出が可能である。本実施の形態２の構成は、各フィールドベクトル毎に独立して重み係数を設定するのではなく、各ベクトルペアに信頼度に基づく重み係数を設定できるので、より最適なベクトルペアを選択可能とすることができる。
【００９５】
なお、重み係数の算出方法は上記方法に限らず、同様の効果を得る目的においてたくさんの変形があり得る。
【００９６】
（実施の形態３）
図８は、本発明の実施の形態３の動きベクトル検出方法を適用した装置の構成を示すブロック図である。図８において、５０は加算手段、５１は乗算手段、５２は比較手段、５３はベクトル選択手段、８０は半画素精度ベクトル検出手段である。
【００９７】
このように構成された動きベクトル検出装置について、以下に動作を説明する。
【００９８】
まず、５つの候補ベクトルから３つの候補ベクトルの決定、すなわち本発明の上記実施の形態１または実施の形態２などを行った結果、１つのフレームベクトルと１組のフィールドベクトルが決定したことを前提とする。また、それらのベクトルに付随する評価値が算出されていることを前提とする。これらの前提は、上記実施の形態を参照すれば簡単に理解できるであろう。
【００９９】
加算手段５０は、上記１組のフィールドベクトルを構成するトップフィールドベクトルおよびボトムフィールドベクトルの各評価値を加算する。次に乗算手段５１は、この加算結果に所定の重み係数Ｋを乗じ、フィールド評価値を求める。比較手段５２は、このフィールド評価値とフレームベクトルに付随するフレーム評価値とを比較して小さい方を選択し、選択情報を出力する。ベクトル選択手段５３は、この選択情報に基づいて、入力されるフレームベクトルとフィールドベクトルの一方を選択する。
【０１００】
また、図８においては、ここまでの処理を第１段階ベクトル検出とした場合を示している。従って、第１段階ベクトル検出の結果、マクロブロックに対する整数画素精度の動きベクトルが１つに絞られた。ちなみに図８の破線で区切られた右側は、参考として第２段階ベクトル検出の手段が示されている。半画素精度ベクトル検出手段８０は、上記に基づき１つに絞られた動きベクトルを中心とする所定範囲内の半画素精度の動きベクトル検出を行い、その結果、このマクロブロックにおけるある参照フレームに対する動きベクトルが確定する。
【０１０１】
以上のように、評価値が最小値でなくとも近い値であるとき、周辺マクロブロックに採用されたベクトルペアの信頼性を用いて、適応的に検出誤りを防ぐことができる動きベクトル検出が可能である。
【０１０２】
このようにして、フレームベクトルとフィールドベクトルから１つのベクトルを選択する際、所定の重み付けを一方に与えることにより優劣を付けることができるので、評価値が最小値を取らないような場合でも画像の特徴等に応じて適切なベクトルを選択できるようにすることが可能である。また、この方法を第１段階の動きベクトル検出に用いることによって、検出誤りを抑えつつ、従来の方法に比べ第２段階の動きベクトル検出時の回路規模および演算量を削減することが可能となる。
【０１０３】
さらに、本実施の形態に用いる重み係数の好適な生成方法を図９に示す。図９において、５０〜５３の構成要素は上述のものと同一であるで詳細説明は省く。また、５４はベクトル長算出手段、５５は係数生成手段である。
【０１０４】
このように構成された動きベクトル検出装置について、以下に動作を説明する。
【０１０５】
ベクトル長算出手段５４は、入力される１つのフレームベクトルと１組のフィールドベクトルを用いて、ベクトル長を算出する。係数生成手段５５は、このベクトル長に従い、ベクトル長が小さいほど大きな重み係数Ｋを生成する。そしてこの重み係数Ｋは乗算手段５１に与えられ、フィールドベクトルが選択されにくくする。
【０１０６】
ここで、ベクトル長算出手段５４におけるベクトル長算出方法の一例を図１０に示す。
【０１０７】
図１０において、５６〜５８は単位ベクトル化手段、５９は平均値算出手段である。
【０１０８】
まず、各ベクトルはそれぞれの単位ベクトル化手段５６〜５８で単位ベクトル化される。すなわち、各単位ベクトル化手段は、まずベクトル長を求め、現フレームからの参照フレームまたは参照フィールドまでのフィールド距離で各ベクトル長を割って正規化ベクトル長を求め、出力する。そして平均値算出手段５９は単位ベクトル化手段５６〜５８からの正規化ベクトル長の平均を計算して係数生成手段５５へ出力する。ここで正規化は、同一方向を示したベクトルであっても参照フレームまたはフィールドが異なると長さが異なってしまうことを補正するために行う。
【０１０９】
次に、係数生成手段５５における重み係数Ｋの算出方法の一例を図１１に示す。
【０１１０】
図１１は、上記ベクトル長と重み係数Ｋの関係を示す関数が示されている。ベクトル長が設定値Ｌ１で重み係数Ｋがちょうど１となり、ベクトル長がＬ１より小さいと重み係数Ｋは１より大きくなり、ベクトル長の減少に従い重み係数Ｋは大きくなる。逆に、ベクトル長が１よりも大きくなるにつれて重み係数Ｋは１以下の範囲で小さくなっていき、ベクトル長がＬ２となったとき重み係数Ｋは下限値ｎでクリップされるようになっている。
【０１１１】
以上のようにベクトル長に基づいて重み係数Ｋを設定することにより、画像の動きが小さくて静止画に近いような場合、フレームベクトルが選ばれやすくなり、第１に動きベクトルの発生符号量を少なく抑えることができる。第２に、このような画像の場合、フレーム間で同一領域のマクロブロックのベクトルタイプがばたつくと、復元画像が一様でなくなるために、ブロック歪みが目立ってしまう現象の発生頻度を減少させることが可能となる。また、動きの激しい画像の場合は、等速運動を除くと、多くの場合はフィールドベクトルを採用する方が望ましい。このときはベクトル長が大きくなりやすく、上記関数によって重み係数Ｋは小さくなり、フィールドベクトルが採用されやすくなる。従って、画像の特徴に応じて、検出誤りを減少させることが可能である。
【０１１２】
なお、図１１における各パラメータＬ１，Ｌ２，ｍ，ｎは任意に設定できる。但し、ｍ，ｎの差を大きくしすぎると、検出誤りを引き起こすので注意しなければならない。
【０１１３】
また、ベクトル長の算出方法および重み係数の算出関数は、上記説明のものに限らず、同様な効果を得る方法として、多くの変形が考え得る。
【０１１４】
さらに、本実施の形態に用いる重み係数の好適な生成方法の第２の例を図１２に示す。図１２において、５０〜５３の構成要素は上述のものと同一であるで詳細説明は省く。また、６０はベクトル信頼度算出手段、６１は係数生成手段である。
【０１１５】
このように構成された動きベクトル検出装置について、以下に動作を説明する。
【０１１６】
ベクトル信頼度算出手段６０は、入力されるトップフィールドベクトルとボトムフィールドベクトルを用いて、このフィールドベクトルペアの信頼度を算出する。係数生成手段６１は、この信頼度に従い、信頼度が小さいほど大きな重み係数Ｋを生成する。そしてこの重み係数Ｋは乗算手段５１に与えられ、フィールドベクトルが選択されにくくする。
【０１１７】
図１３は、ベクトル信頼度算出手段６０の一例を示した図である。
【０１１８】
図１３において、６２，６３は単位ベクトル化手段、６４は平均ベクトル長算出手段、６５は差分ベクトル長算出手段、６６は正規化差分ベクトル長算出手段である。
【０１１９】
まず、各ベクトルはそれぞれの単位ベクトル化手段６２，６３で単位ベクトル化される。単位ベクトル化の方法は、上記に説明したように各ベクトルを参照フィールド距離によって割って正規化することである。ここで正規化は、同一方向を示したベクトルであっても参照フィールドが異なると長さが異なってしまうことを補正するために行う。平均ベクトル長算出手段６４は単位ベクトル化手段６２，６３で算出された単位ベクトルからベクトル長の平均を計算する。差分ベクトル長算出手段６５は単位ベクトル化手段６２，６３で算出された単位ベクトルから差分ベクトルのベクトル長を計算する。正規化差分ベクトル長算出手段６６は、前記差分ベクトル長を前記平均ベクトル長で割り、差分ベクトル長を正規化する。ここでの正規化は、２つのフィールドベクトルの開き具合を求めるために行う。つまり、同じ差分ベクトル長であっても各ベクトルの長さが短い場合と、長い場合では開き具合が異なることを補正する。そしてこの正規化差分ベクトル長を係数生成手段６１に出力する。
【０１２０】
次に、係数生成手段６１における重み係数Ｋの算出方法の一例を図１４に示す。
【０１２１】
図１４は、上記正規化差分ベクトル長と重み係数Ｋの関係を示す関数が示されている。正規化差分ベクトル長が設定値Ｍ１で重み係数Ｋがちょうど１となり、差分ベクトル長がＭ１より小さいと重み係数Ｋは１より小さくなる。逆に、正規化差分ベクトル長が大きくなるにつれて重み係数Ｋは１以上の範囲で大きくなっていき、差分ベクトル長がＭ２となったとき重み係数Ｋは上限値ｓでクリップされるようになっている。
【０１２２】
以上のように正規化差分ベクトル長、すなわちフィールドベクトルの信頼度に基づいて重み係数Ｋを設定することにより、フィールドベクトルに優劣を与えることが可能となる。これは例えば、複雑な絵柄の場合、各ベクトルの評価値の信頼性が悪化し、検出誤りが増加する。たとえ静止部分でもフィールドベクトルの方が最小の評価値を取ることが多くなり、全く異なる遠くの位置の画像を取ってくる。仮に動きベクトル検出を輝度信号のみを用いて行う場合、遠くから間違えて持ってきた画像は、色信号が全く異なり、符号化条件によっては完全に復元できず、色ノイズが目立ってしまう恐れがある。従って、明らかに２つのフィールドベクトルが異なった方向を示す場合は、フィールドベクトルの信頼性が悪化している可能性が大きいので、上記重み係数Ｋによりフィールドベクトルを採用しにくいようにすることができる。従って本発明を用いれば、このようなベクトルの特徴を用いて、検出誤りを減少させることができる。
【０１２３】
なお、図１４における各パラメータＭ１，Ｍ２，ｓ，ｔは任意に設定できる。但し、ｓ，ｔの差を大きくしすぎると、検出誤りを引き起こすので注意しなければならない。
【０１２４】
また、ベクトル信頼度の算出方法および重み係数の算出関数は、上記説明のものに限らず、同様な効果を得る方法として、多くの変形が考え得る。
【０１２５】
さらに、本実施の形態に用いる重み係数の好適な生成方法の第３の例を図１５に示す。図１５において、５０〜５３の構成要素は上述のものと同一であるで詳細説明は省く。また、６７は選択情報記憶手段、６８は代表値抽出手段、６９は係数生成手段である。
【０１２６】
このように構成された動きベクトル検出装置について、以下に動作を説明する。
【０１２７】
比較手段５２は上述のようにして、各評価値に基づきフレームベクトルかフィールドベクトルかを選択するための選択情報を出力する。この選択情報に基づきベクトル選択手段５３がベクトルの選択を行っている。
【０１２８】
さらに、このベクトル選択情報は選択情報記憶手段６７に記憶される。代表値抽出手段６８は、現マクロブロックの近傍の既に動きベクトルを確定した１以上のマクロブロックのベクトル選択情報を選択情報記憶手段６７から抽出する。その後、係数生成手段６９は、これらのベクトル選択情報に基づき、所定の関数を用いて上記重み係数Ｋを算出する。
【０１２９】
また、代表値抽出手段６８の動作において近傍マクロブロックの選択方法の一例は実施の形態１および２と同様、図３に示すようにすればよい。
【０１３０】
また、このように選択した近傍マクロブロックの情報を用いて重み係数を算出する方法の一例を図１６に示す。図１６は、フィールドベクトルが採用された個数とＫの関係を表す関数である。フィールドベクトルが採用された個数が多いほど重み係数Ｋの値が小さく設定され、フィールド評価値を小さくするようにする。これにより周辺マクロブロックの選択情報に応じて、現マクロブロックも同じタイプのベクトルが選択されやすくなる。また、この関数は任意に決めればよい。但し、重み係数があまりに小さくなると、検出誤りを引き起こすので注意する。
【０１３１】
以上のように、評価値が最小値でなくとも近い値であるとき、周辺マクロブロックに採用されたベクトルタイプの信頼性を用いて、適応的に検出誤りを防ぐことができる動きベクトル検出が可能である。これは特に、画像の動きが小さくて静止画に近いような場合は周辺マクロブロックに合わせてフレームベクトルが選ばれやすくなり、符号量の削減、画質の均一化等の効果をもたらし、動きの激しい画像の場合は、フィールドベクトルを採用しやすくなる。従って、画像の特徴に応じて、検出誤りを減少させることが可能である。
【０１３２】
なお、重み係数の算出方法は上記方法に限らず、同様の効果を得る目的で、たくさんの変形があり得る。
【０１３３】
なお、以上に述べたいくつかの重み係数Ｋの生成方法はそれぞれ単独で上記のような効果をもたらすものであるが、複数もしくは全てを用いることも可能であり、より大きな効果を期待することができる。
【０１３４】
なお、本実施の形態１および２を併用することも当然可能であって、上述した様々な効果を得ることができる。
【０１３５】
なお、本実施の形態１および２を第１段階の動きベクトル検出に用いる場合を示したが、第２段階の動きベクトル検出に用いることも可能である。
【産業上の利用可能性】
【０１３６】
以上のように本発明によれば、画像の特徴に応じて動きベクトルの検出誤りを減少させることが可能であって、効果的に候補ベクトル数を削減し、動きベクトル検出のための演算量を削減することが可能である。従って、動きベクトル検出を用いた動き補償予測符号化を用いた高画質かつ低消費電力のビデオ機器等の装置を実現することができ、産業上非常に有益である。
【図面の簡単な説明】
【０１３７】
【図１】本発明の実施の形態１の動きベクトル検出方法を適用した装置のブロック図
【図２】本発明の実施の形態１の好適な重み付け方法を付加した動きベクトル検出装置のブロック図
【図３】本発明の実施の形態１の代表値抽出手段の一例を説明する図
【図４】本発明の実施の形態１の係数生成手段の一例を説明する図
【図５】本発明の実施の形態２の動きベクトル検出方法を適用した装置のブロック図
【図６】本発明の実施の形態２の好適な重み付け方法を付加した動きベクトル検出装置のブロック図
【図７】本発明の実施の形態２の係数生成手段の一例を説明する図
【図８】本発明の実施の形態３の動きベクトル検出方法を適用した装置のブロック図
【図９】本発明の実施の形態３の第１の好適な重み付け方法を付加した動きベクトル検出装置のブロック図
【図１０】本発明の実施の形態３のベクトル長算出手段のブロック図
【図１１】本発明の実施の形態３の第１の好適な重み付け方法における係数生成手段の一例を説明する図
【図１２】本発明の実施の形態３の第２の好適な重み付け方法を付加した動きベクトル検出装置のブロック図
【図１３】本発明の実施の形態３のベクトル信頼度算出手段のブロック図
【図１４】本発明の実施の形態３の第２の好適な重み付け方法における係数生成手段の一例を説明する図
【図１５】本発明の実施の形態３の第３の好適な重み付け方法を付加した動きベクトル検出装置のブロック図
【図１６】本発明の実施の形態３の第３の好適な重み付け方法における係数生成手段の一例を説明する図
【図１７】従来の動きベクトル検出方法を適用した装置のブロック図
【図１８】従来の第２段階の動きベクトル検出方法を適用した装置のブロック図
【符号の説明】
【０１３８】
１０，１００  フレームベクトル検出手段
１１，１０１  第１のトップフィールドベクトル検出手段
１２，１０２  第２のトップフィールドベクトル検出手段
１３，１０３  第１のボトムフィールドベクトル検出手段
１４，１０４  第２のボトムフィールドベクトル検出手段
１５〜１８，３４〜３７，５１  乗算手段
１９，２０，３８，５２，１０５，１０６，１１３  比較手段
２１，２２，３９，５３，１０７，１０８，１１４  ベクトル選択手段
２３，２６，６７  選択情報記憶手段
２４，２７，４１，６８  代表値抽出手段
２５，２８，４２，５５，６１，６９  係数生成手段
３０〜３３，５０，１１２  加算手段
４０  ベクトルペア記憶手段
５４  ベクトル長算出手段
５６〜５８，６２，６３  単位ベクトル化手段
５９  平均値算出手段
６０  ベクトル信頼度算出手段
６４  平均ベクトル長算出手段
６５  差分ベクトル長算出手段
６６  正規化差分ベクトル長算出手段
８０  半画素精度ベクトル検出手段
１０９  半画素精度フレームベクトル検出手段
１１０  半画素精度トップフィールドベクトル検出手段
１１１  半画素精度ボトムフィールドベクトル検出手段
ＭＶａ  第１のトップフィールドベクトル
Ｄａ  第１のトップフィールドベクトルに付随する評価値
ＭＶｂ  第２のトップフィールドベクトル
Ｄｂ  第２のトップフィールドベクトルに付随する評価値
ＭＶｃ  第１のボトムフィールドベクトル
Ｄｃ  第１のボトムフィールドベクトルに付随する評価値
ＭＶｄ  第２のボトムフィールドベクトル
Ｄｄ  第２のボトムフィールドベクトルに付随する評価値
Ｋａ  第１のトップフィールドベクトルに付随する評価値への所定の重み係数
Ｋｂ  第２のトップフィールドベクトルに付随する評価値への所定の重み係数
Ｋｃ  第１のボトムフィールドベクトルに付随する評価値への所定の重み係数
Ｋｄ  第２のボトムフィールドベクトルに付随する評価値への所定の重み係数
Ｄａｃ  第１のベクトルペアの評価値
Ｄａｄ  第２のベクトルペアの評価値
Ｄｂｃ  第３のベクトルペアの評価値
Ｄｂｄ  第４のベクトルペアの評価値
Ｋ  フィールドベクトルの評価値への所定の重み係数
ＭＶ０  半画素精度のフレームベクトル
Ｅ０  半画素精度のフレームベクトルに付随する評価値
ＭＶ１  半画素精度のトップフィールドベクトル
Ｅ１  半画素精度のトップフィールドベクトルに付随する評価値
ＭＶ２  半画素精度のボトムフィールドベクトル
Ｅ２  半画素精度のボトムフィールドベクトルに付随する評価値 
【図１】
2005210321.tif 000003
【図２】
2005210321.tif 000004
【図３】
2005210321.tif 000005
【図４】
2005210321.tif 000006
【図５】
2005210321.tif 000007
【図６】
2005210321.tif 000008
【図７】
2005210321.tif 000009
【図８】
2005210321.tif 000010
【図９】
2005210321.tif 000011
【図１０】
2005210321.tif 000012
【図１１】
2005210321.tif 000013
【図１２】
2005210321.tif 000014
【図１３】
2005210321.tif 000015
【図１４】
2005210321.tif 000016
【図１５】
2005210321.tif 000017
【図１６】
2005210321.tif 000018
【図１７】
2005210321.tif 000019
【図１８】
2005210321.tif 000020