(57)【特許請求の範囲】
【請求項１】
予め定めた判定基準により動きベクトルの信頼性が高いと判定され、かつ、同一の動きベクトルを持った複数の画像領域を外接線分で結んだ内側の領域から、前記複数の画像領域を除去した残余の領域のうち、前記複数の画像領域の動きベクトルが示す進行方向側にのみ存在する領域部分および前記進行方向側とは逆側にのみ存在する領域部分について、予め定めた関係にある背景の動きベクトルと前記複数の画像領域の動きベクトルとを用いて各別に求めた隣接する過去又は未来の隣接する複数のフィールド間でそれぞれ相関を求め、該相関が予め定めた基準を満たさない部分領域を除去した前記残余の領域に対して、前記複数の画像領域の持つ動きベクトルを割り当てることを特徴とする動きベクトル推定方法。
【請求項２】
請求項１記載の動きベクトル推定方法において、前記同一の動きベクトルを持った複数の画像領域を外接線分で結んだ領域と、異なる動きベクトルを持った複数の画像領域を同じく外接線分で結んだ領域とがオーバラップする領域が存在する場合に、このオーバラップ領域について、前記外接線分で結んだそれぞれの領域内の複数の画像領域全ての動きベクトルを各別に用いて隣接する未来および過去の複数フィールドとの間で輝度レベルの差の絶対値である相関を求め、該相関が最も大きいと判断された領域の動きベクトルを前記オーバラップ領域に割り当てる動きベクトルとして決定することを特徴とする動きベクトル推定方法。
【請求項３】
予め定めた方法による動きベクトルの検出を行なう動きベクトル検出部と；
該検出された動きベクトルの予め定めた判定基準による動きベクトル信頼性の判定により信頼性のある動きベクトルを有すると判定され、かつ、同一の動きベクトルを有する閉領域を信頼領域として抽出する信頼領域抽出部と；
抽出された前記信頼領域のうち同一の動きベクトルを有する複数の信頼領域を外接線分で結んだ内側の領域を包含領域として抽出する包含領域抽出部と；
抽出された前記包含領域内の前記信頼領域を前記包含領域から除去して拡張領域を抽出する拡張領域抽出部と；
前記信頼領域の動きベクトルが示す進行方向側にのみ存在する拡張領域および前記進行方向とは逆側にのみ存在する拡張領域をそれぞれ進行方向拡張領域および後退方向拡張領域とし、前記進行方向拡張領域については、予め定めた関係にある背景の動きベクトルと信頼領域の動きベクトルとを用いて各別に求めた隣接する過去の複数フィールドとの間の相関を予め定めた大きさのブロック毎に求め、あるブロックについて背景の動きベクトルを用いて求めた相関が信頼領域の動きベクトルを用いて求めた相関より大きくなる場合にはそのブロックを前記拡張領域より除外し、前記後退方向拡張領域については、予め定めた関係にある背景の動きベクトルと信頼領域の動きベクトルとを用いて各別に求めた隣接する未来の複数フィールドとの間の相関を予め定めた大きさのブロック毎に求め、あるブロックについて背景の動きベクトルを用いて求めた相関が信頼領域の動きベクトルを用いて求めた相関より大きくなる場合にはそのブロックを前記拡張領域より除外する余剰領域除去部と；
前記除去した余剰領域以外の拡張領域に前記信頼領域の動きベクトルを割り当てる動きベクトル割り当て部と；
前記包含領域が異なった複数の包含領域でオーバラップして求められ複数の動きベクトルが割り当てられる領域が存在する場合に、そのオーバラップ領域に属する各ブロックについて、前記割り当てられた全ての動きベクトルを各別に用いて隣接する未来および過去の複数フィールドとの間で相関を求め、該相関が最も大きくなると判断された信頼領域の動きベクトルを前記オーバラップ領域に属する各ブロックに割り当てる複数の動きベクトルが割り当てられた領域処理部と；
を具備することを特徴とする動きベクトル推定装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は動画像処理における動きベクトルの検出に関し、特に大きな動き物体の中央付近など、特徴のない領域で生じることのある動きベクトルの検出漏れを除去し、正しい動きベクトルを推定する方法および装置に関するものである。
【０００２】
【従来の技術】
従来、動きベクトルの検出漏れ領域に動きベクトルを割り当てる手法としては、たとえば検出した動きベクトルにＬＰＦ（低域通過フィルタ）をかける手法や、メディアンフィルタ、多数決フィルタをかける手法がある。
動きベクトルにＬＰＦをかける手法は、検出した動きベクトルにＬＰＦをかけることにより、動きベクトルを用いて行なう画像処理において検出漏れを起こした領域が与える妨害を低減することができる場合がある。メディアンフィルタ、多数決フィルタは、動きベクトルの検出漏れ領域が小さいとき、周囲の領域で検出した動きベクトルを、動きベクトルの検出漏れ領域に割り当てることができる。
【０００３】
【発明が解決しようとする課題】
動きベクトルの検出漏れの例を図１に示す。図１は静止した背景の前を左に移動する自動車の画像を対象に検出した動きベクトルの例である。図１の参照番号１０１は自動車の外形を表し、矢印１０２は検出した動きベクトルで、矢印の長さで動きベクトルの大きさを、矢印の向きで動きの方向を表す。領域１０３は動きベクトルの検出漏れ領域である。図１の領域１０３のように、動き物体の中央付近など、動きベクトル検出に用いる特徴の少ない領域で、動きベクトルの検出漏れ（多くの場合、零ベクトルとして誤検出する）が生じることがある。
【０００４】
動きベクトルにＬＰＦをかける手法は、異なる動きベクトルを検出した領域の境界付近では、正しい動きベクトルを検出した領域でもＬＰＦの効果により動きベクトルの値が変化し、動きベクトルの検出漏れ領域に割り当てられる動きベクトルもＬＰＦの効果により正しい動きベクトルとは異なる値となるなどの問題点がある。
【０００５】
例えば、図２は図１の動きベクトルに２次元ＬＰＦをかけた例である。この場合、領域１０３の動きベクトルを零ベクトルとすると、矢印２０１のベクトルは、２次元ＬＰＦがかかったことにより、動きベクトルの値が検出した値よりも小さく変化している。また、矢印２０２のように検出漏れ領域の一部にも動きベクトルが割り当てられているが、その値はＬＰＦの効果により正しい動きベクトルより小さなものが割り当てられている。２次元ＬＰＦのタップ数を大きくして効果の及ばない領域を減少させようとすると、正しい値が誤って修正されてしまう領域が拡大してしまう。動きベクトルにＬＰＦをかける手法には以上のような問題点が存在する。
【０００６】
動きベクトルにメディアンフィルタをかける手法、多数決フィルタをかける手法は共に、動きベクトルの検出漏れ領域の面積が大きいときに、効果が及ばない領域が発生する。また、動きベクトルを検出した領域の形状によっては、正しく動きベクトルを検出した領域の動きベクトルが、他の動きベクトルに置きかわってしまうことがある、という問題点がある。
【０００７】
例えば図３は図１の動きベクトルに多数決フィルタをかけた例である。この場合、参照番号１０４で示す領域１０３の中央の領域に動きベクトルが割り当てられない。また、参照番号１０５の領域は正しく検出した動きベクトルが周囲の動きベクトルに置きかえられてしまう。動きベクトルにメディアンフィルタや多数決フィルタをかける手法には以上のような問題点が存在する。
【０００８】
【課題を解決するための手段】
この目的を達成するため、本発明動き推定方法は、予め定めた判定基準により動きベクトルの信頼性が高いと判定され、かつ、同一の動きベクトルを持った複数の画像領域を外接線分で結んだ内側の領域から、前記複数の画像領域を除去した残余の領域のうち、前記複数の画像領域の動きベクトルが示す進行方向側にのみ存在する領域部分および前記進行方向側とは逆側にのみ存在する領域部分について、予め定めた関係にある背景の動きベクトルと前記複数の画像領域の動きベクトルとを用いて各別に求めた隣接する過去又は未来の隣接する複数のフィールド間でそれぞれ相関を求め、該相関が予め定めた基準を満たさない部分領域を除去した前記残余の領域に対して、前記複数の画像領域の持つ動きベクトルを割り当てることを特徴とするものである。
【０００９】
【課題を解決するための手段】
この目的を達成するため、本発明動きベクトル推定方法は、予め定めた判定基準により動きベクトルの信頼性が高いと判定され、かつ、同一の動きベクトルを持った複数の画像領域を外接線分で結んだ内側の領域から、前記複数の画像領域を除去し、残余の領域に対し、前記複数の画像領域の動きベクトルの向きを考慮して隣接する複数フィールドとの間で相関を求め、該相関が予め定めた基準を満たさない部分領域を除去した前記残余の領域に対して、前記複数の画像領域の持つ動きベクトルを割り当てることを特徴とするものである。
【００１０】
また、同一の動きベクトルを持った複数の画像領域を外接線分で結んだ領域と、異なる動きベクトルを持った複数の画像領域を同じく外接線分で結んだ領域とがオーバラップする領域が存在する場合に、このオーバラップ領域について、前記外接線分で結んだそれぞれの領域内の複数の画像領域全ての動きベクトルを各別に用いて隣接する未来および過去の複数フィールドとの間で輝度レベルの差の絶対値である相関を求め、該相関が最も大きいと判断された領域の動きベクトルを前記オーバラップ領域に割り当てる動きベクトルとして決定することを特徴とするものである。
【００１１】
またさらに、本発明動きベクトル推定装置は、予め定めた方法による動きベクトルの検出を行なう動きベクトル検出部と；
該検出された動きベクトルの予め定めた判定基準による動きベクトル信頼性の判定により信頼性のある動きベクトルを有すると判定され、かつ、同一の動きベクトルを有する閉領域を信頼領域として抽出する信頼領域抽出部と；
抽出された前記信頼領域のうち同一の動きベクトルを有する複数の信頼領域を外接線分で結んだ内側の領域を包含領域として抽出する包含領域抽出部と；
抽出された前記包含領域内の前記信頼領域を前記包含領域から除去して拡張領域を抽出する拡張領域抽出部と；
前記信頼領域の動きベクトルが示す進行方向側にのみ存在する拡張領域および前記進行方向とは逆側にのみ存在する拡張領域をそれぞれ進行方向拡張領域および後退方向拡張領域とし、前記進行方向拡張領域については、予め定めた関係にある背景の動きベクトルと信頼領域の動きベクトルとを用いて各別に求めた隣接する過去の複数フィールドとの間の相関を予め定めた大きさのブロック毎に求め、あるブロックについて背景の動きベクトルを用いて求めた相関が信頼領域の動きベクトルを用いて求めた相関より大きくなる場合にはそのブロックを前記拡張領域より除外し、前記後退方向拡張領域については、予め定めた関係にある背景の動きベクトルと信頼領域の動きベクトルとを用いて各別に求めた隣接する未来の複数フィールドとの間の相関を予め定めた大きさのブロック毎に求め、あるブロックについて背景の動きベクトルを用いて求めた相関が信頼領域の動きベクトルを用いて求めた相関より大きくなる場合にはそのブロックを前記拡張領域より除外する余剰領域除去部と；
前記除去した余剰領域以外の拡張領域に前記信頼領域の動きベクトルを割り当てる動きベクトル割り当て部と；
前記包含領域が異なった複数の包含領域でオーバラップして求められ複数の動きベクトルが割り当てられる領域が存在する場合に、そのオーバラップ領域に属する各ブロックについて、前記割り当てられた全ての動きベクトルを各別に用いて隣接する未来および過去の複数フィールドとの間で相関を求め、該相関が最も大きくなると判断された信頼領域の動きベクトルを前記オーバラップ領域に属する各ブロックに割り当てる複数の動きベクトルが割り当てられた領域処理部と；
を具備することを特徴とするものである。
【００１２】
【発明の実施の形態】
以下添付図面を参照し実施例により本発明の実施の形態を詳細に説明する。
図４に本発明方法を達成するためのこれに限定されない一実施例構成ブロック線図を示す。
【００１３】
ブロック３０１の動きベクトル検出部では、予め設定したやり方により動きベクトルの検出を行う。高い信頼性を持ち、かつ、同一の動きベクトルを有する閉領域を信頼領域と呼び、ブロック３０２の信頼領域抽出部で信頼領域の抽出を行う。
【００１４】
同一の動きベクトルを検出した複数の信頼領域を囲む領域を包含領域と呼ぶ。ブロック３０３の包含領域抽出部では、以下の処理を行う。信頼領域のうち、同一の動きベクトルを検出した領域を抽出し、抽出した複数の領域を外接線分で結んだ内側の領域を包含領域として抽出する。
【００１５】
ブロック３０４の拡張領域抽出部で抽出する拡張領域とは、包含領域から包含領域に含まれる上記の同一の動きベクトルを持つ複数の信頼領域を除去した残余の領域のことである。例えば図５の、領域１４０１，１４０２，１４０３が同一の動きベクトルを検出した信頼領域であるとする。これら３つの領域による包含領域は図６にドットを施して示す領域１４０４であり、拡張領域は図７に示す領域１４０５である。
【００１６】
ブロック３０５の拡張領域中余剰な領域除去部では、信頼領域の動きベクトルの示す進行方向側にのみ存在する拡張領域と、信頼領域の進行方向とは逆側にのみ存在する拡張領域に分けて処理を行う。例えば、図５の信頼領域１４０１，１４０２，１４０３がいずれも左方向の動きベクトルを示しているとすると、信頼領域の進行方向側にのみ存在する進行方向拡張領域は図８の領域１４０６、信頼領域の進行方向とは逆側にのみ存在する後退方向拡張領域は領域１４０７となる。
【００１７】
信頼領域より進行方向側にのみ存在する進行方向拡張領域については、予め定めた関係にある背景の動きベクトルと信頼領域の動きベクトルとを用いて各別に求めた隣接する過去の複数フィールドとの間で相関を予め定めた大きさのブロック毎に求める。背景の動きベクトルとしては、包含領域に隣接する一つまたは複数の他の信頼領域の持つ動きベクトルや、画面中で検出された面積が最大の動きベクトルなどを用いることができ、何を用いるかを予め設定しておく。第ｆフィールドにおける座標（ｘ，ｙ）のブロックに含まれる画素をｓ（ｆ，ｘ，ｙ）と表し、２つのブロックｓ（ｆ，ｘ，ｙ）とｓ（ｇ，ｐ，ｑ）との相関をｃ（ｓ（ｆ，ｘ，ｙ），ｓ（ｇ，ｐ，ｑ））とする。第ｎフィールドの任意ブロック（ｘ，ｙ）の動きベクトル（Ｖx , Ｖy ）による隣接する過去のｍ個のフィールドとの相関を、
【数１】
0003759834.tif 000002
と表す。進行方向拡張領域の各ブロックについて、このような相関を、信頼領域の動きベクトルと背景の動きベクトルを用いて各別に求める。あるブロックについて信頼領域以外の背景の動きベクトルを用いて求めた相関が、信頼領域の動きベクトルを用いて求めた相関より大きくなったとき、そのブロックを拡張領域から除外する。以上の操作を、進行方向拡張領域内の全ブロックに対して行う。
【００１８】
信頼領域より進行方向とは逆側にのみ存在する後退方向拡張領域についても同様に、背景の動きベクトルと信頼領域の動きベクトルを用いて各別に求めた隣接する未来の複数フィールドとの相関をブロック毎に求める。第ｎフィールドのあるブロック（ｘ，ｙ）の動きベクトル（Ｖx , Ｖy ）による隣接する未来のｍ個のフィールドとの相関は、
【数２】
0003759834.tif 000003
と表す。後退方向拡張領域の各ブロックについて、このような相関を、信頼領域の動きベクトルと背景の動きベクトルを用いて各別に求める。あるブロックについて信頼領域以外の背景の動きベクトルを用いて求めた相関が、信頼領域による動きベクトルを用いて求めた相関より大きくなったとき、そのブロックを拡張領域から除外する。以上の操作を、後退方向拡張領域内の全ブロックに対して行う。
以上の２つの処理後に残った拡張領域に図４のブロック３０６の動きベクトル割り当て部で信頼領域の動きベクトルを割り当てる。
【００１９】
以上の説明は図６に示す１つの包含領域を対象にした処理の説明であるが、実際の動画像では同一の動きベクトルが検出される信頼領域が複数種類出現することが多いため図６に示す包含領域が複数種類現れることになる。それぞれの包含領域が独立であれば、上記の処理だけでも一つのブロックに複数の動きベクトルが割り当てられることはない。しかし、それぞれの包含領域がオーバーラップしているような場合にはオーバーラップ部分については複数種類の包含領域内の処理が行なわれることがある。この場合、一つのブロックに複数の異なる動きベクトルが割り当てられることとなる。このように、ある領域に複数の異なる動きベクトルが割り当てられたときは、領域内のブロック各別について、ブロック図４の３０７の複数の動きベクトルが割り当てられた領域の処理部で以下に示す処理を行う。
ブロックをＹとする。割り当てられた複数の動きベクトルをＶ１，Ｖ２，・・・，Ｖｐ，・・・，Ｖｎとする。各々の動きベクトルの元になった信頼領域の集合をＳ１，Ｓ２，・・・，Ｓｐ，・・・，Ｓｎとする。信頼領域の集合Ｓ１，Ｓ２，・・・，Ｓｐ，・・・，Ｓｎによる包含領域を各々Ｈ１，Ｈ２，・・・，Ｈｐ，・・・，Ｈｎとする。包含領域Ｈｘが、他のどの信頼領域Ｓ１，Ｓ２，・・・，Ｓｎとも重ならないような信頼領域の集合Ｓｐが存在するとき、領域Ｙの動きベクトルをＶｐとする。
【００２０】
条件を満たす信頼領域の集合Sｘが複数存在するときは、条件を満たす複数の信頼領域の動きベクトルを各別に用いて隣接する未来の複数フィールドとの間の相関、および隣接する過去の複数フィールドとの間の相関を求め、相関が最も大きくなると判断された信頼領域の動きベクトルをブロックYの動きベクトルとする。
条件を満たす信頼領域の集合Sｘが存在しないときは、割り当てられた全ての動きベクトルV1，Ｖ２，  ．．．，Ｖｐ，  ．．．，Ｖｎを各別に用いて隣接する未来の複数フィールドとの間の相関および、隣接する過去の複数フィールドとの間の相関を求め、相関が最も大きくなると判断された信頼領域の動きベクトルをブロックYの動きベクトルとする。
【００２１】
さて、より具体的に再度説明すると、図４のブロック３０１に示す動きベクトル検出部では、ブロックマッチング法や勾配法などにより双方向の動きベクトルを検出する。双方向の動きベクトル検出とは、各フィールドの被写体の移動を特定のラインに注目して表した図９に示すように、第ｎフィールドを基準に第（ｎ＋１）フィールドを探索する順方向の探索と、第（ｎ＋１）フィールドを基準に第ｎフィールドを探索する逆方向の探索を行なうことである。
【００２２】
図４のブロック３０２に示す信頼領域抽出部では、検出した動きベクトルの信頼性の検出を行うとともに、同一の動きベクトルを有する閉領域を信頼領域として抽出する。動きベクトルの信頼性の検出は使用する動きベクトル検出法にも依存するが、例えば隣接する予め定めた数の複数フィールド間（例えば未来の５フィールド間）で、順方向・逆方向共に同一の動きベクトルを検出した領域を信頼領域として検出する。図１０に示す例では、第ｎフィールド上の領域５０１が信頼領域となる。動きベクトルの信頼性の検出は、例えば特開平４−３６５１８５号記載の手法でも判定することができる。
【００２３】
図４のブロック３０３に示す包含領域抽出部では、信頼領域のうち同一の動きベクトルを検出した複数の信頼領域に外接する線分で囲まれた領域を包含領域として求める。例えば、図１１の領域６０１，６０２，６０３が同一の動きベクトルを有する信頼領域とすると、信頼領域に外接する線分で囲まれた包含領域は領域６０４となる。図４のブロック３０４の拡張領域抽出部で、包含領域から信頼領域を除いた領域を拡張領域として抽出する。図１１の例では、包含領域６０４から信頼領域を除いた領域６０５および６０６が拡張領域となる。
【００２４】
図４のブロック３０５に示す拡張領域中余剰な領域除去部では、領域の進行方向を考慮して以下の処理を行なう。図１２の領域８０１，８０２，８０３を左向きの動きベクトルを持った信頼領域とする。信頼領域より進行方向側にのみ存在する進行方向拡張領域８０４については、予め定めた関係にある背景の動きベクトルおよび信頼領域の動きベクトルを各別に用いて予め定めた数（たとえば４）の隣接する過去の複数フィールドとの間で相関を予め定めた大きさのブロック（例えば１画素）毎に求める。信頼領域より進行方向とは逆側にのみ存在する後退方向拡張領域８０５は、背景の動きベクトルおよび信頼領域の動きベクトルを各別に用いて予め定めた数（例えば４）の隣接する未来の複数フィールドとの間の相関をブロック（例えば１画素）毎に求める。そして信頼領域の動きベクトルによる相関が背景の動きベクトルによる相関より小さくなる部分領域を拡張領域から除去する。背景の動きベクトルとしては、包含領域８０６に隣接する他の信頼領域の持つ動きベクトルや画面中で検出された面積が最大の動きベクトルを用いることができる。
【００２５】
図１３に、信頼領域と拡張領域の関係を１次元的に表した例を示す。図１３の領域８０３が信頼領域、矢印９０１が信頼領域の持つ動きベクトルである。領域８０５が信頼領域の進行方向とは逆側にのみ存在する後退方向拡張領域である。背景のベクトルを零ベクトルとする。複数フィールドとの間の相関としては、例えば、自フィールドと、他の各フィールドのマッチング値の合計を用いる。マッチング値とは例えば輝度レベルの差の絶対値で、この場合にはマッチング値が小さいほど相関が大きい。信頼領域の動きベクトルによって拡張領域８０５と対応する未来の各フィールド上の領域を領域９０２，９０３，９０４，９０５とする。同様に、背景の動きベクトルによって拡張領域８０５と対応する各フィールド上の領域を領域９０６，９０７，９０８，９０９とする。信頼領域の動きベクトルによる未来のフィールドとの相関（この例ではマッチング値の合計）とは、領域８０５と９０２のマッチング値、領域８０５と９０３のマッチング値、領域８０５と９０４のマッチング値、領域８０２と９０５のマッチング値を画素毎に合計したものである。背景の動きベクトルによる未来のフィールドとの相関（この例ではマッチング値の合計）とは領域８０５と９０６のマッチング値、領域８０５と９０７のマッチング値、領域８０５と９０８のマッチング値、領域８０５と９０９のマッチング値を画素毎に合計したものである。信頼領域の進行方向側にのみ存在する進行方向拡張領域８０４については、信頼領域の動きベクトルによって拡張領域８０４と対応する過去の各フィールド上の領域を、領域９１０，９１１，９１２，９１３とし、背景の動きベクトルによって拡張領域８０４と対応する各フィールド上の領域を領域９１４，９１５，９１６，９１７とする。信頼領域の動きベクトルによる過去のフィールドとの相関（この例ではマッチング値の合計）とは、領域８０４と９１０のマッチング値、領域８０４と９１１のマッチング値、領域８０４と９１２のマッチング値、領域８０４と９１３のマッチング値を画素毎に合計したものである。背景の動きベクトルによる過去のフィールドとの相関（この例ではマッチング値の合計）とは、領域８０４と９１４のマッチング値、領域８０４と９１５のマッチング値、領域８０４と９１６のマッチング値、領域８０４と９１７のマッチング値を画素毎に合計したものである。信頼領域の動きベクトルによる相関より、背景ベクトルによる相関の方が大きくなった画素を拡張領域から除去する。
【００２６】
図１４の領域１６０１，１６０２が余剰な拡張領域の例であり、図１５の領域１００１，１００２が余剰な拡張領域を除去した後に残った拡張領域の例である。図４のブロック３０６の動きベクトル割り当て部で余剰な領域の除去の後に残った拡張領域に、信頼領域の動きベクトルを割り当てる。
【００２７】
次に複数の異なる動きベクトルが割り当てられた領域に対して図４のブロック３０７の複数の動きベクトルが割り当てられた領域の処理部では次のような処理を行なう。例えば、図１６は領域１２０１，１２０２，１２０３が同一の動きベクトルを持った信頼領域であり、領域１２０４，１２０５は他の同一の動きベクトルを持った信頼領域であり、領域１２０１の動きベクトルと領域１２０４の動きベクトルは異なるものとする。領域１２０６は領域１２０１，１２０２，１２０３による包含領域であり、領域１２０７は領域１２０４，１２０５による包含領域である。このときハッチを施した領域１２０８に領域１２０１の動きベクトルと領域１２０４の動きベクトルの２つの動きベクトルが割り当てられたとすると、包含領域１２０６は内部に異なる動きベクトルを持つ信頼領域１２０４と１２０５を持つが、包含領域１２０７は内部に他の信頼領域を含まないため、領域１２０８には信頼領域１２０４の動きベクトルを割り当てる。
【００２８】
条件を満たす信頼領域の集合Sｘが複数存在するときは次のように処理する。例えば図１７は領域１７０１，１７０２が同一の動きベクトルを持った信頼領域であり、領域１７０４，１７０５は他の同一の動きベクトルを持った信頼領域であり、領域１７０１の動きベクトルと領域１７０４の動きベクトルは異なるものとする。領域１７０６は領域１７０１，１７０２による包含領域であり、領域１７０７は領域１７０４，１７０５による包含領域である。このとき、包含領域１７０６も１７０７も内部に他の信頼領域を含まないため、ハッチを施した領域１７１０については、条件を満たす信頼領域の集合Ｓｘが複数存在することになる。この場合、領域１７１０に含まれるブロック（例えば１画素）各別について以下の処理を行なう。条件を満たす信頼領域の集合Ｓｘに対応する動きベクトル各別について、隣接する過去の複数フィールドとの間の相関、および隣接する未来の複数フィールドとの間の相関を求め、相関を最大にする信頼領域の動きベクトルをブロックに割り当てる。相関としては例えば差分を示すマッチング値の合計を用いる。
【００２９】
図１９は、２つの動きベクトルが割り当てられたブロック１８０１を１次元で示した例である。動きベクトル１８１２と動きベクトル１８０３の２つの動きベクトルが割り当てられた例である。このとき、ブロック１８０１が動きベクトル１８０３により未来の各フィールド上で対応するブロックはブロック１８０４，１８０５，１８０６，１８０７であり、過去の各フィールド上で対応するブロックは、ブロック１８２０，１８１９，１８１８，１８１７である。ブロック１８０１が動きベクトル１８１２により未来の各フィールド上で対応するブロックはブロック１８０８，１８０９，１８１０，１８１１であり、過去の各フィールド上で対応するブロックはブロック１８１６，１８１５，１８１４，１８１３である。このときブロック１８０１とブロック１８０４のマッチング、ブロック１８０１とブロック１８０５のマッチング値、ブロック１８０１とブロック１８０６のマッチング値、ブロック１８０１とブロック１８０７のマッチング値の合計およびブロック１８０１とブロック１８１７のマッチング値、ブロック１８０１とブロック１８１８のマッチング値、ブロック１８０１とブロック１８１９のマッチング値、ブロック１８０１とブロック１８２０のマッチング値の合計と、ブロック１８０１とブロック１８０８のマッチング値、ブロック１８０１とブロック１８０９のマッチング値、ブロック１８０１とブロック１８１０のマッチング値、ブロック１８０１とブロック１８１１のマッチング値の合計およびブロック１８０１とブロック１８１３のマッチング値、ブロック１８０１とブロック１８１４のマッチング値、ブロック１８０１とブロック１８１５のマッチング値、ブロック１８０１とブロック１８１６のマッチング値の合計を比較し、マッチング値の合計が小さくなる（相関が大きくなる）方の動きベクトルをブロック１８０１に割り当てる。
【００３０】
条件を満たす信頼領域の集合Ｓｘが存在しないときは次のように処理する。例えば、図１８は領域１３０１，１３０２，１３０３が同一の動きベクトルを持った信頼領域であり、領域１３０４，１３０５は他の同一の動きベクトルを持った信頼領域であり、領域１３０１の動きベクトルと領域１３０４の動きベクトルは異なるものとする。領域１３０６は領域１３０１，１３０２，１３０３による包含領域であり、領域１３０７は領域１３０４，１３０５による包含領域である。このとき、包含領域１３０６も１３０７も、内部に他の信頼領域を含むため、隣接する複数フィールドとの間の相関を用いて領域１１０２内の各ブロック（例えば１画素）に割り当てる動きベクトルを決定する。相関としては例えばマッチング値の合計を用いる。
【００３１】
図２０は、２つの動きベクトルが割り当てられたブロック１１０１を１次元で示した例である。動きベクトル１１１２と動きベクトル１１０３の２つの動きベクトルが割り当てられた例である。このとき、ブロック１１０１が動きベクトル１１０３により未来の各フィールド上で対応するブロックはブロック１１０４，１１０５，１１０６，１１０７であり、過去の各フィールド上で対応するブロックはブロック１１２０，１１１９，１１１８，１１１７である。ブロック１１０１が動きベクトル１１１２により未来の各フィールド上で対応するブロックは、ブロック１１０８，１１０９，１１１０，１１１１であり、過去の各フィールド上で対応するブロックは、ブロック１１１６，１１１５，１１１４，１１１３である。このときブロック１１０１とブロック１１０４のマッチング値、ブロック１１０１とブロック１１０５のマッチング値、ブロック１１０１とブロック１１０６のマッチング値、ブロック１１０１とブロック１１０７のマッチング値の合計およびブロック１１０１とブロック１１１７のマッチング値、ブロック１１０１とブロック１１１８のマッチング値、ブロック１１０１とブロック１１１９のマッチング値、ブロック１１０１とブロック１１２０のマッチング値の合計と、ブロック１１０１とブロック１１０８のマッチング値、ブロック１１０１とブロック１１０９のマッチング値、ブロック１１０１とブロック１１１０のマッチング値、ブロック１１０１とブロック１１１１のマッチング値の合計およびブロック１１０１とブロック１１１３のマッチング値、ブロック１１０１とブロック１１１４のマッチング値、ブロック１１０１とブロック１１１５のマッチング値、ブロック１１０１とブロック１１１６のマッチング値の合計とを比較し、マッチング値の合計が小さくなる（相関が大きくなる）方の動きベクトルをブロック１１０１に割り当てる。
なお、以上の図４に示した各処理部の処理はソフトウェアで処理可能である。
【００３２】
以上本発明の実施の形態をいくつかの実施例につき図面を参照して詳細に説明してきたが、本発明はこれら実施例に限定されることなく、特許請求の範囲に記載された発明の要旨内で各種の変形、変更の可能なことは当業者に自明であろう。
【００３３】
【発明の効果】
本発明は、ＬＰＦを使った従来の割り当て方法と比べると、正しく検出した動きベクトルの値を変化させない点と、正しく検出した動きベクトルの値と同じ動きベクトルを動きベクトルの検出漏れを生じた領域に割り当てることができる点で優れている。メディアンフィルタや多数決フィルタを用いた従来の手法と比べると、検出漏れ領域の面積が大きくても、検出漏れ領域に動きベクトルを割り当てることができる点で優れている。
【図面の簡単な説明】
【図１】動きベクトルの検出漏れの例を示す図。
【図２】ＬＰＦを用いた例を示す図。
【図３】多数決フィルタを用いた例を示す図。
【図４】本発明装置の一実施例の構成ブロック線図。
【図５】信頼領域を説明する図。
【図６】包含領域を説明する図。
【図７】拡張領域を説明する図。
【図８】信頼領域の進行方向側にのみ存在する進行方向拡張領域と、信頼領域の進行方向逆側にのみ存在する後退方向拡張領域を説明する図。
【図９】双方向動きベクトル検出を説明する図。
【図１０】信頼領域の抽出例を示す図。
【図１１】拡張領域を説明する図。
【図１２】拡張領域のうち、信頼領域の進行方向側にのみ存在する進行方向拡張領域と、信頼領域の進行方向逆側にのみ存在する後退方向拡張領域を説明する図。
【図１３】拡張領域のうち、信頼領域の進行方向側にのみ存在する進行方向領域は隣接する過去のフィールドとマッチングをとり、信頼領域の進行方向逆側にのみ存在する後退方向拡張領域は隣接する未来のフィールドとマッチングをとることを説明する図。
【図１４】余剰な拡張領域の例を示す図。
【図１５】余剰な拡張領域を除去した後の例を示す図。
【図１６】１つの領域に２つの動きベクトルが割り当てられたとき、包含領域と信頼領域の関係から動きベクトルを決定することを説明する図。
【図１７】１つの領域に２つの動きベクトルが割り当てられたとき、包含領域と信頼領域の関係から動きベクトルを決定できない一例を説明する図。
【図１８】１つの領域に２つの動きベクトルが割り当てられたとき、包含領域と信頼領域の関係から動きベクトルを決定できない他の例を説明する図。
【図１９】１つの領域に２つの動きベクトルが割り当てられ、いずれも一定条件を満たすとき、マッチング値の合計により１つの動きベクトルを選択することを説明する図。
【図２０】１つの領域に２つの動きベクトルが割り当てられ、いずれも一定条件を満たさないとき、マッチング値の合計により１つの動きベクトルを選択することを説明する図。
【符号の説明】
１０１  自動車の外形
１０２，２０１，２０２  動きベクトルを示す矢印
１０３  動きベクトルの検出漏れ領域
３０１  動きベクトル検出部
３０２  信頼領域抽出部
３０３  包含領域抽出部
３０４  拡張領域抽出部
３０５  拡張領域中余剰な領域除去部
３０６  動きベクトル割り当て部
３０７  複数の動きベクトルが割り当てられた領域の処理部
６０１，６０２，６０３，８０１，８０２，８０３，１２０１，１２０２，１２０３，１２０４，１２０５，１３０１，１３０２，１３０３，１３０４，１３０５，１４０１，１４０２，１４０３，１７０１，１７０２，１７０４，１７０５    信頼領域
６０４，８０６，１２０６，１２０７，１３０６，１３０７，１４０４，１７０６，１７０７  包含領域
６０５，６０６，１４０５  拡張領域
【図１】
0003759834.tif 000004
【図２】
0003759834.tif 000005
【図３】
0003759834.tif 000006
【図４】
0003759834.tif 000007
【図５】
0003759834.tif 000008
【図６】
0003759834.tif 000009
【図７】
0003759834.tif 000010
【図８】
0003759834.tif 000011
【図９】
0003759834.tif 000012
【図１０】
0003759834.tif 000013
【図１１】
0003759834.tif 000014
【図１２】
0003759834.tif 000015
【図１３】
0003759834.tif 000016
【図１４】
0003759834.tif 000017
【図１５】
0003759834.tif 000018
【図１６】
0003759834.tif 000019
【図１７】
0003759834.tif 000020
【図１８】
0003759834.tif 000021
【図１９】
0003759834.tif 000022
【図２０】
0003759834.tif 000023