(57)【要約】【課題】 サーチ範囲を広く、かつ、偽ベクトルの発生を少なくできるインタレース画像に適応した動きベクトル検出方法および検出装置を提供する。【解決手段】 縮小画像動きベクトル検出部３０内の縮小画像生成器３，４は、フレームメモリ群２に格納されている現在フレームならびに探索フレームの画像データに基づいて、縮小画像上で奇数フィールドと偶数フィールドのラインが均一な間隔となるよう縮小画像を生成して、縮小画像フレームメモリ群５へ格納する。ブロックマッチング回路部８は、縮小画像上で動きベクトルを求める。動きベクトル変換回路９は、縮小画像上での動きベクトルを原画像上での動きベクトルへ変換する。マルチステップサーチ部４０は、縮小画像動きベクトル検出部３０から供給される候補ベクトル１０ａに基づいて、原画像上で最終的な動きベクトルを検出する。【選択図】        図１
2006246527.tif 000002
【特許請求の範囲】
【請求項１】
１画像信号をパターンマッチング法によって所定の範囲の候補ベクトルに対応する誤差評価関数を用いて最適の動きベクトルを得る動きベクトル検出方法において、原画像信号からインタレース画像に対応した縮小画像を生成し、この縮小画像上で動きベクトルを検出してマルチステップサーチ部へ供給し、次に原画像上でマルチステップサーチによって動きベクトルの検出を行なうことを特徴とする動きベクトル検出方法。
【請求項２】
前記インタレース画像に対応した縮小画像は、縮小画像上でのラインの間隔が等間隔になるように生成することを特徴とする請求項１記載の動きベクトル検出方法。
【請求項３】
前記縮小画像上で検出した動きベクトルを、縮小画像を生成した際の縮小形態に応じて原画像上での動きベクトルに換算し、換算して得た動きベクトルをマルチステップサーチ部へ供給することを特徴とする請求項１記載の動きベクトル検出方法。
【請求項４】
画像信号をパターンマッチング法によって所定の範囲の候補ベクトルに対応する誤差評価関数を用いて最適の動きベクトルを得る動きベクトル検出装置において、原画像信号からインタレース画像に対応した縮小画像を生成する縮小画像生成器を備え、この縮小画像生成器で生成した縮小画像上で動きベクトルを検出する縮小画像動きベクトル検出部と、この縮小画像動きベクトル検出部から出力される動きベクトルに基づいて、原画像上でマルチステップサーチによって動きベクトルの検出を行なうマルチステップサーチ部とを備えたことを特徴とする動きベクトル検出装置。
【請求項５】
前記縮小画像生成器は、縮小画像上でのラインの間隔が等間隔となる縮小画像を生成することを特徴とする請求項４記載の動きベクトル検出装置。
【請求項６】
前記縮小画像動きベクトル検出部は、縮小画像上で検出した動きベクトルを、縮小画像を生成した際の縮小形態に応じて、原画像上での動きベクトルに換算して出力することを特徴とする請求項４記載の動きベクトル検出装置。
【請求項７】
前記縮小画像生成器は、ローパスフィルタを用いてインタレース画像に対応した縮小画像を生成することを特徴とする請求項４記載の動きベクトル検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像信号を、例えば光磁気ディスクや磁気テープなどの記録媒体に記録し、これを再生してディスプレイなどに表示したり、テレビ会議システム，テレビ電話システム，放送用機器などで、前記動画像信号を伝送路を介して送信側から受信側に伝送し、受信側において、これを受信し、表示する場合などに用いて好適な動きベクトル検出方法および動きベクトル検出装置に関するものである。
【背景技術】
【０００２】
例えば、テレビ会議システム、テレビ電話システムなどのように、動画像信号を遠隔地に伝送するシステムにおいては、伝送路を効率良く利用するため、映像信号のライン相関やフレーム間相関を利用して、画像信号を圧縮して符号化している。ライン相関を利用すると、画像信号を、例えばＤＣＴ（離散コサイン変換）処理するなどして圧縮することができる。
【０００３】
また、フレーム間相関を利用すると、画像信号をさらに圧縮して符号化することが可能となる。例えば、図３７に示すように、時刻ｔ１，ｔ２において、画像ＰＣ１，ＰＣ２がそれぞれ発生しているとき、フレーム画像ＰＣ１とＰＣ２の画像信号の差を演算して差分画像ＰＣ１２を生成し、差分画像を符号化する。時間的に隣接するフレームの画像は、通常それ程大きな変化を有していないため、両者の差を演算すると、その差分信号は小さな値のものとなる。そこで、この差分信号を符号化すれば、符号量を圧縮することができる。
【０００４】
さらに、便宜上、画像ＰＣ２を１６×１６ドットなどのブロックに分割し、それぞれのブロックを、パターンマッチングによって輝度信号のパターンが最も類似している画像部分をＰＣ１上で探索し、探索されたＰＣ１上の画像部分とＰＣ２の該当ブロックとの位置のオフセット量、すなわちベクトルを導入することによって差分信号は、さらに小さくなる。また、ベクトルは通例、可変長符号を用いて符号化される。
【０００５】
ブロック単位でパターンマッチングを行なうには、図３８に示すように、カレントメモリ（参照画像）上のブロックをＡに対して、候補ベクトル（ΔＸ，ΔＹ）分だけずれたサーチメモリ（探索画像）上のブロックをＡ’とすると、Ａに属する全ての画素値とそれに呼応するＡ’上の画素値との差の絶対値和などの評価量ＡＥ（ΔＸ，ΔＹ）を求め、この評価量が最小となるベクトルを検出する方法が、通例、用いられている。
【０００６】
【数１】
2006246527.tif 000003
【０００７】
このような、ブロック単位でのパターンマッチングを行なって動きベクトルを検出する方法は、ブロックマッチング方式（ＢＭ方式）と呼ばれている。
【０００８】
フルサーチと呼ばれるサーチアルゴリズム（ＦＳ方式）では、サーチ範囲の中の全ての候補ベクトルに対して上記の差の絶対値和などの評価量ＡＥ（ΔＸ，ΔＹ）の演算を行い、得られた複数のＡＥ（ΔＸ，ΔＹ）の中から単純に最小を与えるベクトル（ΔＸ，ΔＹ）を最適な動きベクトルとして用いる。
【０００９】
この動きベクトルであるが、整数精度のものと実数精度のものが存在する。整数精度の動きベクトルでは動きベクトルの示す点に画素が存在する。これに対して実数精度の動きベクトルの示す点には画素が存在しない。この場合、実数精度の動きベクトルの示す点では、周囲の画素から補間によって参照画素が生成される。
【００１０】
実数精度の動きベクトルとしては１／２画素精度の動きベクトルが用いられることが多い。画像信号符号化方式であるＭＰＥＧ方式は、この１／２画素精度の動きベクトルを用いる。１／２画素精度の動きベクトル検出について図３９を用いて説明する。図３９（ａ）における○は画素を示す。中央の画素４を指示する候補ベクトルが最小の差分の絶対値和ＡＥを示すとする。この場合、画素４を中心として、１／２画素ずれた画素点０〜８を指示する候補ベクトルのそれぞれについてブロックマッチングを行ない、差分の絶対値和ＡＥを求め、これを最小とする候補ベクトルを最適な動きベクトルとして出力する。この時、候補ベクトルが指示する点は補間によって生成される。即ち、上記ＡＥ（差分の絶対値和）を求める式においてＡ’（サーチメモリ上の画素値）は補間によって生成される。
【００１１】
次に、１／２画素精度の補間方法について、図３９（ｂ）を用いて説明する。Ａ、Ｂ、Ｄ、Ｅはそれぞれ水平、垂直方向に１画素ずつ隔てた画素であり、その画素値を便宜上同じ記号を用いてＡ、Ｂ、Ｄ、Ｅであるとする。１／２画素精度の動きベクトルが画素が存在しない点を示す場合、その画素が存在しない点の画素値を、画素が存在する点の画素値から補間によって求める。画素が存在しない点ｈ、ｖ、ｃの画素値ｈ、ｖ、ｃ（便宜上、点ｈ、ｖ、ｃの画素値ｈ，ｖ，ｃと同じ記号で表わす）を補間により生成する方法を説明する。１／２画素精度の動きベクトルの場合、次の３種類の補間によって生成される。
【００１２】
点ｈは、水平方向にそれぞれ１／２画素隔てて画素が存在する場合である。この場合、補間は次の式で行なわれる。
【００１３】
ｈ＝（Ａ＋Ｂ）//２
上記の式で、//は除算した値を四捨五入することを示す。
【００１４】
点ｖは、垂直方向にそれぞれ１／２画素隔てて画素が存在する場合である。この場合、補間は次の式で行なわれる。
【００１５】
ｖ＝（Ａ＋Ｄ）//２
上記の式で、//は除算した値を四捨五入することを示す。
【００１６】
点ｃは、４画素の中央に位置する点の場合である。この場合、次の式で補間される。
【００１７】
ｃ＝（Ａ＋Ｂ＋Ｄ＋Ｅ）//４
上記の式で、//は除算した値を四捨五入することを示す。
【００１８】
１／２画素精度の動きベクトルは、上記の補間を用いて生成されたサーチメモリでの画素値Ａ’を用いて差分の絶対値和ＡＥが計算され、差分の絶対値和ＡＥを最小とする候補ベクトルを最適な動きベクトルとして出力する。
【００１９】
フルサーチではサーチ範囲内で上記画素値の差分の絶対値和ＡＥの最小値を与えるベクトルを得ることができるが、計算量が多いため、ハードウエアの規模が大きくなってしまう。このため、フルサーチではサーチ範囲を広げることが困難になっている。
【００２０】
真の動きに即した、より正しい動きベクトルを得るためには、サーチ範囲を広げる必要がある。図４０に示すように、サーチ範囲を広げることによって、速い動きをする物体のベクトルを検出できるからである。
【００２１】
しかし、上記の通り、フルサーチ方式は演算量が多いため、サーチ範囲を広げることが困難である。そこで、演算量を減らしたサーチ方式がいくつか開発されている。たとえば、マルチステップサーチ（ＭＳＳ方式）や、テレスコピックサーチ（ＴＥＬＳ方式）、階層サーチ（ＬＳ方式）と呼ばれている方式である。以下に、これらの方式について簡単に説明する。
【００２２】
まず、マルチステップサーチ（ＭＳＳ方式）について説明する。マルチステップサーチは、全ての候補ベクトルに対して差分の絶対値和ＡＥを求め、ブロックマッチングを行なうのではなく、まず、広い範囲を少ない代表点でブロックマッチングを行ない、動きベクトルを荒く求め、徐々にサーチ範囲を狭くし、動きベクトルの精度を上げていくサーチ方式である。このマルチステップサーチとしては、３段階にベクトルを求める３ステップサーチ（３ＳＳ方式）が一般に知られている。
【００２３】
次に、この３ステップサーチ（３ＳＳ方式）について図４１を用いて説明する。図４１はサーチレンジが±７画素の場合を示したものである。各格子点が画素に相当するものとする。Ａ４が動きベクトルが０の点である。まず、最初のステップとして、Ａ４を中心として９個の候補ベクトルに対してブロックマッチングを行なう。即ち、Ａ０、Ａ１、Ａ２、Ａ３、Ａ４、Ａ５、Ａ６、Ａ７、Ａ８を中心として差分の絶対値和ＡＥ（Ａ０）〜ＡＥ（Ａ８）を計算する。この最初のステップでは、Ａ０〜Ａ８はそれぞれ、水平方向、垂直方向ともに４画素間隔である。
【００２４】
次のステップは、上記の第１のステップで差分の絶対値和ＡＥを最小にする点を中心として９個の候補ベクトルに対してブロックマッチングを行ない、差分の絶対値和ＡＥを求める。図４１では第１のステップでＡ８を示す候補ベクトルがＡＥを最小にする場合を示す。この場合、第２のステップではＢ０、Ｂ１、Ｂ２、Ｂ３、Ａ８、Ｂ４、Ｂ５、Ｂ６、Ｂ７の候補ベクトルについて差分の絶対値和ＡＥ（Ｂ０）〜ＡＥ（Ｂ７）を計算する。この第２のステップでは候補ベクトルの示す点Ｂ０〜Ｂ７は水平方向、垂直方向ともに２画素間隔である。
【００２５】
第３のステップは、第２のステップと同様に第２のステップでＡＥを最小にする候補ベクトルを中心とした９個の候補ベクトルに対してブロックマッチングを行ない、差分の絶対値和ＡＥを求める。図４１ではＢ７を示す候補ベクトルが差分の絶対値和ＡＥを最小にする場合を示す。この場合、第３のステップではＣ０、Ｃ１、Ｃ２、Ｃ３、Ｂ７、Ｃ４、Ｃ５、Ｃ６、Ｃ７の候補ベクトルについて差分の絶対値和ＡＥ（Ｃ０）〜ＡＥ（Ｃ７）を計算する。この第３のステップでは候補ベクトルの示す点、Ｃ０〜Ｃ７は水平方向、垂直方向ともに１画素間隔である。図４１では、Ｃ１を示す候補ベクトルが最小のＡＥを与えるものとする。この時、検出された動きベクトルはこの場合Ｃ１を示すベクトルとなる。
【００２６】
上記は整数精度の動きベクトルの場合であるが、１／２画素精度の動きベクトルを検出する場合がある。この場合には第４のステップとしてフルサーチの場合と同様に、ＡＥを最小とする候補ベクトルの周囲の９個の候補ベクトルについて差分の絶対値和ＡＥを求め、これを最小にする候補ベクトルを、検出した動きベクトルとして出力する。
【００２７】
次に、階層サーチ（ＬＳ方式）について図４２を用いて説明する。この方式は現画像および探索画像からそれぞれ縮小画像を生成し、生成した縮小画像上で候補ベクトルを荒く求め、次にその候補ベクトルの周辺をもとの現画像および探索画像を用いてブロックマッチングを行ない、最適な動きベクトルを検出する。
【００２８】
図４２において、現在のフレームをＦ０、探索フレームをＦ１とする。この縮小されていないフレーム群（Ｆ０およびＦ１）を階層Ｌ０とする。この階層Ｌ０から生成する縮小フレーム群を階層Ｌ１とする。図４２は、階層Ｌ０の画像を水平および垂直方向に１／２に縮小して、階層Ｌ１の画像を生成する場合を示している。
【００２９】
フレームＦ０を縮小した画像をフレームｆ０、フレームＦ１を縮小した画像をフレームｆ１とする。縮小画像の生成方法の一例を図４３に示す。階層Ｌ０での４画素の平均値を縮小画像の１画素とする。この場合、ａ＝（Ａ＋Ｂ＋Ｃ＋Ｄ）//４で与えられる。
【００３０】
図４２は、現フレームＦ０上の１６×１６画素のブロックＡに対して、ブロックマッチングによって最適な動きベクトルＭＶを検出する手法を模式的に示したものである。縮小フレームｆ０には、ブロックＡに対応して８×８画素のブロックａが存在する。まず、このブロックａについて縮小フレームｆ１を探索フレームとしブロックマッチを行ない、差分の絶対値和ＡＥを求め、最適な候補ベクトルｍｖを検出する。
【００３１】
階層Ｌ１は階層Ｌ０を１／２に縮小して生成したため、階層Ｌ１におけるベクトルｍｖは階層Ｌ０では水平および垂直成分をそれぞれ２倍したベクトルｍｖ’に相当する。この時ｍｖ’＝ｍｖ×２である。
【００３２】
次に、階層Ｌ０上で候補ベクトルｍｖ’の示す点を中心としその周辺についてブロックマッチを行なう。このとき差分の絶対値和ＡＥを最小にするベクトルを、最適な動きベクトルＭＶとして出力する。
【００３３】
次に、テレスコピックサーチ（ＴＥＬＳ方式）について説明する。テレスコピックサーチは、１つ前のフレームで検出した最適な動きベクトルを参考にし、そのベクトルの示す点の近傍のみをサーチする方法である。
【００３４】
図４４にテレスコピックサーチの一例を示す。時間的に連続する３フレームＦ０、Ｆ１、Ｆ２が存在するものとする。現在のフレームがＦ０であり、１フレーム分過去のフレームがＦ１であり、さらにＦ１より１フレーム分過去のフレームがＦ２である。
【００３５】
現フレームＦ０上のブロックＡにおいて最適な動きベクトルＭＶを検出する様子を示す。Ｆ０上のブロックＡに相当するフレームＦ１上のブロックＢでは、探索フレームＦ２をブロックマッチングによって探索した結果、最適なベクトルＭＶ’を検出したとする。この時、ブロックＡについてはフレームＦ１においてＭＶ’だけずれた位置を中心としてその近傍をブロックマッチングを行ない、差分の絶対値和ＡＥを最小にするベクトルを最適な動きベクトルＭＶとして出力する。
【００３６】
上記の３ステップサーチやテレスコピックサーチは、動画像の高能率符号化方式であるＭＰＥＧ方式のＳＭ３などにおいて使用することが推奨されている方式である。ＭＰＥＧ方式とは、ＩＳＯ−ＩＥＣ／ＪＴＣ１／ＳＣ２／ＷＧ１１にて議論され標準案として提案された方式であり、動き補償予測符号化およびＤＣＴ変換を組み合わせたハイブリッド方式である。また、この方式では、上記の実数精度（１／２画素精度）の動きベクトルを用いている。
【００３７】
これらの方式、即ちマルチステップサーチ（ＭＳＳ方式）や、テレスコピックサーチ（ＴＥＬＳ方式）、階層サーチ（ＬＳ方式）と呼ばれている方式においては、フルサーチ（ＦＳ方式）と比較して演算量が削減され、ハードウエア規模を小さくし、高速に処理を行なうことが出来る。その結果、よりサーチ範囲を広げることが可能である。
【００３８】
しかし、フルサーチがサーチ範囲内において差分の絶対値和ＡＥを最小にする最適な動きベクトルを与えるのに対して、上記の高速型動き検出方式では、差分の絶対値和ＡＥの極小値を与える動きベクトルを検出する可能性がある。
【００３９】
これは、上記のアルゴリズムが「差分の絶対値和ＡＥの最小値を与える候補ベクトルの示す点から離れるにつれ、ＡＥは単調に増加する」という仮定のもとに考えられているためである。これに対して実際は必ずしもＡＥは単調な関数ではなく、その場合誤ったベクトルを出力することになる。
【００４０】
また、サーチ範囲を広げることによって、より大きな動きに対応できるという長所が生まれる半面、真の動きが比較的小さくかつ、物体の形状が平坦であったり、繰り返しのテクスチャーであったりすると、単純に最小の残差をあたえるベクトルを選出したのでは、非常に大きなベクトルが生まれることがある。
【００４１】
動画像の符号化では通例、ベクトルも可変長符号化するため、大きなベクトルを発生することによって、せっかく、残差の少ないベクトルで差分画像の発生ビット量を抑えても、ベクトルが発生するビット量がかえって多くなってしまうことが有り得る。残差は著しく小さいが、ベクトルによるビット発生量が多いベクトルの一例を図４５に示す。残差が最小ではないが最小値に近い残差をとり、ベクトルによるビット発生量が少ないベクトルの一例を図４６に示す。
【００４２】
また、上記はプログレッシブ画像についての動きベクトル検出方法であるが、ビデオ信号などのインタレース画像の場合、１フレーム中の偶数ラインと奇数ラインとで時間差があるため、さらに複雑な動きベクトル検出方法が必要になる。
【００４３】
ここで、ＭＰＥＧ２方式を例にしてインタレース画像における動き補償について説明する。ＭＰＥＧ２方式においては２つの予測モードが存在する。フレーム予測モードとフィールド予測モードである。まずフレーム予測モードについて説明する。図４７に示すように、フレーム予測モードでは、マクロブロック中の各輝度ブロックに、偶数フィールドのラインのデータと奇数フィールドのラインのデータが混在した状態になっている。動き補償はマクロブロック（輝度ブロック４個および色差ブロック）単位で行なわれる。１個のマクロブロックに対して１個の動きベクトルが対応される。
【００４４】
次にフィールド予測について説明する。フィールド予測モードではマクロブロック中の４個の輝度ブロックはそれぞれ同一のフィールドによって構成される。図４７においては、例えばＹ１、Ｙ２を奇数フィールドのラインの画素から構成させ、Ｙ３、Ｙ４を偶数フィールドのラインの画素から構成させる。この場合、２個の輝度ブロックＹ１、Ｙ２に対して１個の動きベクトルが対応され、他の２個の輝度ブロックＹ３、Ｙ４に対して他の１個の動きベクトルが対応される。即ち、１マクロブロックに対して２個の動きベクトルが対応される。
【００４５】
色差信号は、フレーム予測モードでは、図４７に示すように、奇数フィールドのラインのデータと、偶数フィールドのラインのデータとが混在した状態になっている。またフィールド予測の場合、各色差ブロックＣｂ、Ｃｒの上半分（４ライン）が輝度ブロックＹ１、Ｙ２に対応する奇数フィールドの色差信号とされ、下半分（４ライン）が輝度ブロックＹ３、Ｙ４に対応する偶数フィールドの色差信号とされる。色差信号の動きベクトルは対応する輝度信号の動きベクトルを用いる。
【００４６】
以上の通り、インタレース画像については２通りの動きベクトルが存在する。即ち、フレーム予測動きベクトルと、フィールド予測動きベクトルである。ＭＰＥＧ２方式では、予測モードに応じて、フレーム予測動きベクトル、フィールド予測動きベクトルのいずれかを用いる。フレーム予測動きベクトルおよびフィールド予測動きベクトルを図４８に示す。
【００４７】
次に、動きベクトルの検出方法について簡単に説明する。フレーム予測動きベクトルを検出する際には、各候補ベクトルに対して、奇数フィールドのラインのデータと偶数フィールドのラインのデータが混在した状態で差分の絶対値和が計算される。フィールド予測動きベクトルは、同一のフィールドのデータのみから構成されるブロック同士で差分の絶対値和ＡＥが計算される。即ち、上記ブロックＡは同一のフィールドのデータから構成され、また同様に上記ブロックＡ’は同一のフィールドのデータから構成される。ただし、ＡとＡ’を構成するフィールドのパリティーが異なっても良い。例えば、ブロックＡは偶数フィールドのデータである場合、ブロックＡ’は偶数フィールドのデータであっても良いし、奇数フィールドのデータであっても良い。
【００４８】
動きベクトルの垂直方向の成分とその原画像上での位置の関係を図４９に示す。
【００４９】
【特許文献１】特開平３−１２７５７９号公報
【特許文献２】特開平７−２８８８１４号公報
【特許文献３】特開平６−３４３１６３号公報
【特許文献４】特開平７−２２１７６号公報
【特許文献５】特開平４−１７７９９２号公報
【特許文献６】特開平２−１６８８７号公報
【特許文献７】特開平７−２１２７６２号公報
【特許文献８】特開平７−１０７４８６号公報
【発明の開示】
【発明が解決しようとする課題】
【００５０】
以上のように、従来の動きベクトル検出方法および動きベクトル検出装置においては、フルサーチでは演算量が多くハードウエア規模が大きくなるため、広いサーチ範囲をカバーすることができず、また広いサーチ範囲をカバーするためにはマルチステップサーチなどを用いる場合、誤ベクトルが検出される可能性がある、という問題があった。
【００５１】
また、上記はプログレッシブ画像についての動きベクトル検出方法であるが、ビデオ信号などのインタレース画像の場合、１フレーム中の偶数ラインと奇数ラインで時間差があるため、さらに複雑な動きベクトル検出方法が必要になるという課題がある。
【００５２】
本発明はこのような状況に鑑みてなされたものであり、広いサーチ範囲をカバーし、かつ、偽ベクトルの発生が少ない動きベクトル検出方法および検出装置を提供することを目的とする。
【００５３】
また、本発明は、インタレース画像に適応した動きベクトル検出方法および検出装置を提供することを目的とする。
【課題を解決するための手段】
【００５４】
前記課題を解決するためこの発明に係る動きベクトル検出方法および動きベクトル検出装置は、インタレース画像に対応した縮小画像上で動きベクトルを検出し、縮小画像上で検出した動きベクトルを原画像上での動きベクトルに換算して出力し、換算された原画像上での動きベクトルに基づいて原画像上で最終的な動きベクトルを検出することを特徴とする。
【００５５】
また、縮小画像上でのラインの間隔が均等になるよう縮小画像を生成することを特徴とする。
【００５６】
さらに、縮小画像を生成する際にローパスフィルタを用いることを特徴とする。
【００５７】
この発明に係る動きベクトル検出方法および動きベクトル検出装置は、最初に縮小画像を用いてサーチを行なうので、小さい回路規模で広いサーチ範囲をカバーすることが可能である。
【００５８】
また、縮小画像上でライン間隔が均等になるよう画像縮小を行なっているので、縮小画像上での動きベクトルの検出を的確に行なうことができる。
【００５９】
さらに、縮小画像を生成する際にローパスフィルタを用いているので、縮小画像上でのベクトル検出の際に、誤ベクトルが発生することを軽減させることができる。
【発明の効果】
【００６０】
以上説明したようにこの発明に係る動きベクトル検出方法および動きベクトル検出装置は、インタレース画像に対応した縮小画像上で動きベクトルを検出し、縮小画像上で検出した動きベクトルを原画像上での動きベクトルに換算して出力し、換算された原画像上での動きベクトルに基づいて原画像上で最終的な動きベクトルを検出する構成としたので、小さい回路規模で広いサーチ範囲をカバーすることが可能である。
【００６１】
また、縮小画像上でライン間隔が均等になるよう画像縮小を行なっているので、縮小画像上での動きベクトルの検出を的確に行なうことができる。
【００６２】
さらに、縮小画像を生成する際にローパスフィルタを用いているので、縮小画像上でのベクトル検出の際に、誤ベクトルが発生することを軽減させることができる。
【発明を実施するための最良の形態】
【００６３】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
【００６４】
図１はこの発明に係る動きベクトル検出装置の全体ブロック構成図である。この発明に係る動きベクトル検出装置１は、大きく分けて、画像信号入力端子１ａから入力された画像信号を格納するフレームメモリ群２と、縮小画像を生成するとともに生成した縮小画像を用いて動きベクトルの検出を行なう縮小画像動きベクトル検出部３０と、マルチステップサーチ部４０とからなる。マルチステップサーチ部４０は、第１ステップ〜第３ステップの３段階の動きベクトル検出部４１，４２，４３を備える。フレームメモリ群２には、原画像（現在のフレーム）の輝度信号、および、動きベクトルを探索する探索画像の輝度信号が格納される。
【００６５】
縮小画像動きベクトル検出部４０は、外部から供給される複数の候補ベクトル群８ａのそれぞれの候補ベクトルに対して、縮小画像を用いて、原画像上で４画素間隔に対応する画素間隔でブロックマッチングを行なう。縮小画像動きベクトル検出部４０は、複数の候補ベクトル８ａの中からマッチング度合の高い１つの候補ベクトルを動きベクトルとして検出する。縮小画像動きベクトル検出部４０は、検出した動きベクトルを含む複数の候補ベクトル群１０ａを発生して、第１ステップ動きベクトル検出部４１へ供給する。
【００６６】
第１ステップ動きベクトル検出部４１は、縮小画像動きベクトル検出部４０から供給される複数の候補ベクトル群１０ａのそれぞれの候補ベクトルに対して、原画像を用いて２画素間隔でブロックマッチングを行なう。第１ステップ動きベクトル検出部４１は、複数の候補ベクトル群１０ａの中からマッチング度合の高い１つの候補ベクトルを動きベクトルとして検出する。第１ステップ動きベクトル検出部４１は、検出した動きベクトルを含む複数の候補ベクトル群４１ａを発生して、第１ステップ動きベクトル検出部４１へ供給する。
【００６７】
第２ステップ動きベクトル検出部４２は、第１ステップ動きベクトル検出部４１から供給される複数の候補ベクトル群４１ａのそれぞれの候補ベクトルに対して、原画像を用いて１画素間隔でブロックマッチングを行なう。第２ステップ動きベクトル検出部４２は、複数の候補ベクトル群４１ａの中からマッチング度合の高い１つの候補ベクトルを動きベクトルとして検出する。第２ステップ動きベクトル検出部４２は、検出した動きベクトルを含む複数の候補ベクトル群４２ａを発生して、第３ステップ動きベクトル検出部４３へ供給する。
【００６８】
第３ステップ動きベクトル検出部４３は、原画像ならびに１／２画素画像生成回路１９を介して生成された１／２画素単位の探索画像を用いてブロックマッチングを行なう。第３ステップ動きベクトル検出部４３は、第２ステップ動きベクトル検出部４２から供給される複数の候補ベクトル群４２ａのそれぞれの候補ベクトルに対して、ブロックマッチングを行なう。第３ステップ動きベクトル検出部４３は、複数の候補ベクトル群４２ａの中からマッチング度合の高い１つの候補ベクトルを動きベクトルとして検出する。第３ステップ動きベクトル検出部４３は、検出した動きベクトル４３ａをこの動きベクトル検出装置１の最終出力として動きベクトル出力端子１ｂへ供給する。
【００６９】
縮小画像動きベクトル検出部４０は、２個の縮小画像生成器３，４と、縮小画像フレームメモリ群５と、２個のブロック化回路６，７と、ブロックマッチング回路部８と、動きベクトル変換回路９と、候補ベクトル発生回路１０とを備える。
【００７０】
一方の縮小画像生成器３は、フレームメモリ群２から現在のフレームの輝度信号２ａを読み出すとともに、水平および垂直方向の画素数をそれぞれ１／４に縮小した現在フレーム縮小画像を生成し、生成した現在フレーム縮小画像信号を縮小画像フレームメモリ群５へ格納する。他方の縮小画像生成器４は、フレームメモリ群２から探索画像の輝度信号２ｂを読み出すとともに、水平および垂直方向の画素数をそれぞれ１／４に縮小した探索画像縮小画像を生成し、生成した探索画像縮小画像信号を縮小画像フレームメモリ群５へ格納する。
【００７１】
一方のブロック化回路６は、縮小画像フレームメモリ群５に格納されている現在フレーム縮小画像から、ブロックマッチングを行なう画素ブロックを読み出して、読み出した画素ブロックをブロックマッチング回路部８へ供給する。他方のブロック化回路７は、縮小画像フレームメモリ群５に格納されている探索画像縮小画像から、ブロックマッチングを行なう画素ブロックの画素信号を読み出して、読み出した画素信号をブロックマッチング回路部８へ供給する。
【００７２】
各ブロック化回路６，７は、図示しない予測モード指定信号に基づいて指定された動きベクトル検出の予測モードに応じて、縮小画像フレームメモリ群５から読み出す画素数、ならびに、読み出す画素の位置を変更する。
【００７３】
ブロックマッチング回路部８は、外部から入力された候補ベクトル群８ａのそれぞれの候補ベクトルに対してブロックマッチングを行ない、複数の候補ベクトルの中から最適な動きベクトルを出力する。
【００７４】
動きベクトル変換回路９は、縮小画像上で検出された動きベクトル８ｂを、原画像上での動きベクトルへ変換し、変換したベクトル９ａを候補ベクトル発生回路１０へ供給する。
【００７５】
候補ベクトル発生回路１０は、動きベクトル変換回路９から供給されたベクトル９ａの近傍のベクトルを候補ベクトルとして発生し、変換回路９から供給されたベクトル９ａと発生した複数の候補ベクトルとを候補ベクトル群１０ａとして、第１ステップ動きベクトル検出部４１へ供給する。
【００７６】
第１ステップ動きベクトル検出部４１は、フレームメモリ群２から現在フレームの輝度信号２ａを取り出すためのブロック化回路１１と、フレームメモリ群２から探索画像の輝度信号２ｂを取り出すためのブロック化回路１２と、縮小画像動きベクトル検出部３０から供給される候補ベクトル群１０ａに基づいてブロックマッチングを行なって、候補ベクトル群１０ａの中からマッチング度合の高い動きベクトルを検出して出力するブロックマッチング回路部１３と、ブロックマッチング回路部１３から出力された動きベクトルに基づいて第２ステップでサーチ対象とする候補ベクトル群４１ａを発生する候補ベクトル発生回路１４を備える。
【００７７】
第２ステップ動きベクトル検出部４２は、フレームメモリ群２から現在フレームの輝度信号２ａを取り出すためのブロック化回路１５と、フレームメモリ群２から探索画像の輝度信号２ｂを取り出すためのブロック化回路１６と、第１ステップ動きベクトル検出部４１から供給される候補ベクトル群４１ａに基づいてブロックマッチングを行なって、候補ベクトル群４１ａの中からマッチング度合の高い動きベクトルを検出して出力するブロックマッチング回路部１７と、ブロックマッチング回路部１７から出力された動きベクトルに基づいて第３ステップでサーチ対象とする候補ベクトル群４２ａを発生する候補ベクトル発生回路１８を備える。
【００７８】
第３ステップ動きベクトル検出部４３は、フレームメモリ群２に格納されている探索画像の輝度信号２ｂに基づいて、１／２画素単位の探索画像を生成する１／２画素画像生成回路１９と、フレームメモリ群２からマッチング対象範囲の現在フレームの輝度信号２ａを取り出すためのブロック化回路２０と、１／２画素画像生成回路１９で生成した１／２画素単位の探索画像からマッチング対象ブロックの輝度信号を取り出すブロック回路２１と、第２ステップ動きベクトル検出部４１から供給される候補ベクトル群４２ａに基づいてブロックマッチングを行なって、候補ベクトル群４２ａの中からマッチング度合の高い動きベクトルを検出し、それを最終出力の動きベクトルとして出力するブロックマッチング回路部２２を備える。
【００７９】
入力画像信号はまず、フレームメモリ群２に入力される。このフレームメモリ群２からは、現在のフレームの輝度信号２ａ、および、動きベクトルを探索する探索画像の輝度信号２ｂが読み出される。各縮小画像生成器３，４ではフレームメモリ群２から、現フレームおよび探索フレームのデータを読み出して、現フレームおよび探索フレームの縮小画像を生成し、生成した各縮小画像フレームメモリ群５に出力する。各縮小画像生成器３，４は、入力画像に対して、水平および垂直方向に１／４の大きさの画像データを生成する。この縮小画像生成方法はいくつかあるが、以下にその方法について説明する。
【００８０】
〔第１の縮小画像生成方法〕
第１の縮小画像生成方法を図２ならびに図３を用いて説明する。第１の縮小画像生成方法は、フィールド単位で４×４個の画素を加算し、１個の縮小画像の画素とする。原画像が８ビットの画素から構成される場合８ビット×１６個＝１２８ビットとなるが、縮小画像は１画素が１２ビットとして構成される。
【００８１】
図２（ａ）に示すような画像が入力した場合を考える。白丸（ｏ１〜ｏ１６）は奇数フィールドの画素を示し、黒丸（ｅ１〜ｅ１６）は偶数フィールドの画素を示す。以後図中で、白丸は奇数フィールドの画素を示し、黒丸は偶数フィールドの画素を示す。図２（ａ）に対して図２（ｂ）の画素が生成される。Ｏ１は奇数フィールドの縮小画像の画素を示し、Ｅ１は偶数フィールドの縮小画像の画素を示す。
【００８２】
縮小画像の各画素Ｏ１，Ｅ１は、それぞれのフィールド内で、４×４画素の加算によって生成される。奇数フィールドの縮小画像の画素Ｏ１、および、偶数フィールドの縮小画像の画素Ｅ１は、
Ｏ1=o1+o2+o3+o4+o5+o6+o7+o8+o9+o10+o11+o12+o13+o14+o15+o16
Ｅ1=e1+e2+e3+e4+e5+e6+e7+e8+e9+e10+e11+e12+e13+e14+e15+e16
の式で生成される。
【００８３】
図３は入力画像のラインと縮小画像のラインの位置関係を示す図である。図３において、奇数フィールドの縮小画像の画素Ｏ１は、原画像の奇数フィールドの４つのラインの画素ｏ１，ｏ２，ｏ３，ｏ４から生成される。図示していないが、同様な断面は、水平方向に４列存在する。これに対して、偶数フィールドの縮小画像の画素Ｅ１は、原画像の偶数フィールドの４つのラインの画素ｅ１，ｅ２，ｅ３，ｅ４から生成される。図３（ａ）に示す入力画像（原画像）ではライン間隔が一様であるのに対して、図３（ｂ）縮小画像ではライン間隔が不均一になっている。
【００８４】
〔第２の縮小画像生成方法〕
第２の縮小画像生成方法は、第１の縮小画像生成方法の変形である。第１の縮小画像生成方法では、縮小画像の画素が１２ビットであるのに対して第２の縮小画像生成方法では縮小画像の画素は８ビットである。これにより、メモリの容量を小さくすることができる。同様に、図２、３を用いて説明する。縮小画像の奇数フィールドの画素Ｏ１、ならびに、縮小画像の偶数フィールドの画素Ｅ１は、
Ｏ1=(o1+o2+o3+o4+o5+o6+o7+o8+o9+o10+o11+o12+o13+o14+o15+o16)//16
Ｅ1=(e1+e2+e3+e4+e5+e6+e7+e8+e9+e10+e11+e12+e13+e14+e15+e16)//16
の式で生成される。ここで、//は除算後に四捨五入することを示す。
【００８５】
第２の縮小画像生成方法は、第１の縮小画像生成方法と同様に、原画像の奇数フィールドの４つのラインの画素ｏ１，ｏ２，ｏ３，ｏ４から奇数フィールドの縮小画像の画素Ｏ１を生成し、原画像の偶数フィールドの４つのラインの画素ｅ１，ｅ２，ｅ３，ｅ４から偶数フィールドの縮小画像の画素Ｅ１を生成するので、図３に示したように、入力画像（原画像）ではライン間隔が一様であるのに対して、縮小画像ではライン間隔が不均一になっている。
【００８６】
〔第３の縮小画像生成方法〕
第３の縮小画像生成方法を図４を用いて説明する。第３の縮小画像生成方法では、第１、第２の縮小画像生成方法と同様に、フィールド単位で４×４画素のデータを加算することによって生成する。ただし、その４ラインの位置関係が異なる。なお、縮小画像の各画素は、８ビットであってもよいし、１２ビットであっても良いが、これを混在させることは出来ない。縮小画像を８ビット画素で作る場合は、常に縮小画像の画素は８ビットである。
【００８７】
第１、第２の縮小画像生成方法では、「入力画像ではライン間隔が一様であるのに対して、縮小画像ではライン間隔が不均一になっている。」という問題があった。第３の縮小画像生成方法は、これを緩和することができる。
【００８８】
図４（ａ）は入力画像の垂直方向の断面図であり、図４（ｂ）は縮小画像の垂直方向の断面図である。縮小画像の奇数フィールドの画素Ｏ１は、第１、第２の縮小画像生成方法と同様に、原画像の４つのラインの画素ｏ１，ｏ２，ｏ３，ｏ４から生成される。これに対して、縮小画像の偶数フィールドの画素Ｅ１は、原画像の偶数フィールドのライン２〜４の画素ｅ２，ｅ３，ｅ４，ｅ５から生成される。即ち、偶数フィールドの画素は、第１、第２の縮小画像生成方法よりもフィールド内において１ライン下の４ラインを用いて生成される。図４（ｂ）に示す通り、縮小画像におけるラインの間隔が等間隔に近くなっているが、依然として等間隔ではない。
【００８９】
〔第４の縮小画像生成方法〕
第４の縮小画像生成方法を図５を用いて説明する。第４の縮小画像生成方法は第３の縮小画像生成方法の変形である。第４の縮小画像生成方法では第１、第２の縮小画像生成方法と同様に、フィールド単位で４×４画素のデータを加算することによって生成する。ただし、その４ラインの位置関係が異なる。また、縮小画像の各画素は、８ビットであってもよいし、１２ビットであっても良いが、これを混在させることは出来ない。縮小画像を８ビット画素で作る場合は、常に縮小画像の画素は８ビットである。
【００９０】
第１、第２の縮小画像生成方法では、「入力画像ではライン間隔が一様であるのに対して、縮小画像ではライン間隔が不均一になっている。」という問題があった。第４の縮小画像生成方法は、これを緩和することができる。
【００９１】
図５（ａ）は入力画像の垂直方向の断面図であり、図５（ｂ）は縮小画像の垂直方向の断面図である。縮小画像の奇数フィールドの画素Ｏ１は、第１、第２の縮小画像と同様に、原画像の奇数フィールドのライン１〜４の各画素ｏ１，ｏ２，ｏ３，ｏ４から生成される。これに対して、縮小画像の偶数フィールドの画素Ｅ１は、原画像の偶数フィールドのライン３〜６の各画素ｅ３，ｅ４，ｅ５，ｅ６から生成される。即ち、偶数フィールドの画素は、第１、第２の縮小画像生成方法よりもフィールド内において２ライン下の４ラインを用いて生成される。図５（ｂ）に示す通り、縮小画像におけるラインの間隔が等間隔に近くなっているが、依然として等間隔ではない。
【００９２】
〔第５の縮小画像生成方法〕
第５の縮小画像生成方法を図６を用いて説明する。第５の縮小画像生成方法では奇数フィールドではフィールド内で４×４画素のデータを加算し、偶数フィールドではフィールド内で４画素×３ラインのデータを加算することによって生成する。縮小画像の各画素は、８ビットである。すなわち、第２の縮小画像生成方法と同様に、各画素の加算平均によって生成される。
【００９３】
上記の縮小画像生成方法では、「入力画像ではライン間隔が一様であるのに対して、縮小画像ではライン間隔が不均一になっている。」という問題があった。第５の縮小画像生成方法は、これを解決することができる。
【００９４】
図６（ａ）は入力画像の垂直方向の断面図であり、図６（ｂ）は縮小画像の垂直方向の断面図である。縮小画像の奇数フィールドの画素Ｏ１は、第１、第２の縮小画像と同様に、原画像の奇数フィールドのライン１〜４の各画素ｏ１，ｏ２，ｏ３，ｏ４から生成される。これに対して、縮小画像の偶数フィールドの画素Ｅ１は、原画像の偶数フィールドのライン３〜５の３ラインの各画素ｅ３，ｅ４，ｅ５から生成される。即ち、偶数フィールドの画素は、第１、第２の縮小画像生成方法よりもフィールド内において２ライン下の３ラインを用いて生成される。図６（ｂ）に示す通り、縮小画像におけるラインの間隔が等間隔になっている。
【００９５】
〔第６の縮小画像生成方法〕
第６の縮小画像生成方法を図７を用いて説明する。第６の縮小画像生成方法では奇数フィールドではフィールド内で４×４画素のデータを加算し、偶数フィールドではフィールド内で４画素×５ラインのデータを加算することによって生成する。縮小画像の各画素は、８ビットである。すなわち、第２の縮小画像生成方法と同様に、各画素の加算平均によって生成される。
【００９６】
上記の縮小画像生成方法では、「入力画像ではライン間隔が一様であるのに対して、縮小画像ではライン間隔が不均一になっている。」という問題があった。第６の縮小画像生成方法は、これを解決することができる。
【００９７】
図７（ａ）は入力画像の垂直方向の断面図であり、図７（ｂ）は縮小画像の垂直方向の断面図である。縮小画像の奇数フィールドの画素Ｏ１は、第１、第２の縮小画像と同様に、原画像の奇数フィールドのライン１〜４の各画素ｏ１，ｏ２，ｏ３，ｏ４から生成される。これに対して、縮小画像の偶数フィールドの画素Ｅ１は、原画像の偶数フィールドのライン２〜６の６ラインの各画素ｅ２，ｅ３，ｅ４，ｅ５，ｅ６から生成される。即ち、偶数フィールドの画素は、第１、第２の縮小画像生成方法よりもフィールド内において１ライン下の５ラインを用いて生成される。図７（ｂ）に示す通り、縮小画像におけるラインの間隔が等間隔になっている。
【００９８】
上記第５，第６の縮小画像生成方法は、縮小画像の偶数フィールドの画素を、原画像の偶数フィールドの奇数本のラインを用いて生成することを特徴とする。
【００９９】
上記の方法によって生成された縮小画像はフレームメモリ群５に入力される。
【０１００】
図１に示したように、各ブロック化回路６、７はフレームメモリ群５から所定の画像データを読みだし、ブロックマッチを行なうブロックのデータをブロックマッチ回路８に出力する。ブロック化回路６，７は動きベクトル検出を行なう予測モードによって動作が異なる。
【０１０１】
〔第１のブロック化方法〕
フレーム予測動きベクトルの検出を行なう場合について説明する。フレーム予測モードではフレーム単位でブロックマッチングを行なう。即ち、奇数フィールドのデータと偶数フィールドのデータが混在したブロックでブロックマッチングを行なう。
【０１０２】
図８（ａ）に示すように、原画像上では１６×１６画素ブロックで、ブロックマッチングを行なう。この場合、縮小画像上では４×４画素ブロックでブロックマッチングを行なう。図８（ｂ）に示すように縮小画像上で、対応する４×４画素ブロックをフレームメモリ群５から読み出す。４×４画素ブロックは奇数フィールドのデータと偶数フィールドのデータが混在している。
【０１０３】
次にフィールド予測動きベクトルの検出を行なう場合について説明する。フィールド予測モードではフィールド単位でブロックマッチングを行なう。即ち、奇数フィールドのデータのみから構成されるブロックおよび偶数フィールドのデータのみから構成されるブロックによってブロックマッチングが行なわれる。図８（ｃ）に示すように、縮小画像上では４画素×２ラインのブロックが、奇数フィールドおよび偶数フィールドについてそれぞれ読み出される。
【０１０４】
〔第２のブロック化方法〕
第２のブロック化方法はフィールド予測ベクトルの検出を行なう場合、第１の実施例と異なる。原画像上では図９（ａ）に示す１６×１６画素ブロックで、ブロックマッチングを行なう。図９（ａ）に示す２個の１６×１６画素ブロックは垂直方向に隣合うブロックであるとする。
【０１０５】
第１のブロック化方法を用いてブロック化した場合、フィールド予測ベクトルは４×２画素単位でブロックマッチングを行なう。しかし、４×２画素単位ではブロックマッチングを行なう際の画素数が少ないため、誤ベクトルを発生し易い。そこで、第１のブロック化方法では、縮小画像上でのフィールドベクトルのブロックマッチングは、縦（垂直）方向に連続する２個のブロックのデータを用いて行なう。図９（ａ）の場合、ブロック＃１およびブロック＃２のフィールド予測ベクトルは縮小画像上では同一になる。しかし、原画像上でのサーチはそれぞれ独立に行なわれる。
【０１０６】
図９（ｃ）に示すように、縮小画像上で、４×４画素ブロックが、奇数フィールドおよび偶数フィールドについてそれぞれ読み出される。フレーム予測動きベクトルの検出を行なう場合は、第１のブロック化方法と同様である。図９（ｂ）に示す通り、ブロック＃１、ブロック＃２についてそれぞれ、偶数フィールドと奇数フィールドの混在する４×４画素ブロックが読み出される。
【０１０７】
以上のように、ブロック化回路６、７から読み出された画素ブロックはブロックマッチング回路部８に入力される。
【０１０８】
図１０はブロックマッチング回路部のブロック構成図である。ブロックマッチング回路部８（１３，１７，２２）は、外部から入力される候補ベクトルに対してブロックマッチングを行ない、最適な動きベクトルを出力する。ブロックデータ読み出し回路５１は、図１に示したブロック化回路６（１１，１５，２０）から現フレームにおいて動きベクトルの検出を行なうブロックのデータＡを読み出す。また、ブロックデータ読み出し回路５２は、探索フレーム上で候補ベクトルの指示する位置のブロックデータＡ’を図１におけるブロック化回路７（１２，１６，２１）から読み出す。
【０１０９】
加算器５３は、ブロックデータＡおよびＡ’の差分Ａ−Ａ’を計算し、絶対値化回路５４に出力する。絶対値化回路５４は、差分Ａ−Ａ’の絶対値を計算し出力する（｜ＡーＡ’｜）。アキュムレータ５５は、差分の絶対値和を計算し、１つの候補ベクトル（ΔＸ、ΔＹ）に対して１つの差分の絶対値和ＡＥを最小値検出回路５６へ出力する。
【０１１０】
差分の絶対値和ＡＥは以下の式で与えられる。
【０１１１】
【数２】
2006246527.tif 000004
【０１１２】
最小値検出回路６は、差分の絶対値和ＡＥの最小値を計算する。最適ベクトル検出回路５７は、ＡＥを最小にする候補ベクトル（ΔＸ、ΔＹ）を出力する。
【０１１３】
図１に示すように、ブロックマッチング回路部８から出力される最適な動きベクトルは、動きベクトル変換回路９に入力される。動きベクトル変換回路９は、縮小画像上で検出した動きベクトルを原画像上での動きベクトルに変換する。
【０１１４】
縮小画像上で検出した動きベクトルを原画像上での動きベクトルに変換する方法について説明する。水平方向の動きベクトルはその値を４倍される。しかし、垂直方向の動きベクトル変換方法は縮小画像の生成方法によって異なる。垂直方向の動きベクトルの変換方法について以下に説明する。
【０１１５】
〔第１の垂直方向動きベクトル変換方法〕
第１の垂直方向動きベクトル変換方法は、縮小画像を第１および第２の縮小画像生成方法を用いて生成した場合に適用される。図１１にフレーム予測動きベクトルの変換方法を示す。図１１（ａ）は原画像の垂直方向の断面図で、原画像上でのラインを示す。図１１（ｂ）は縮小画像の垂直方向の断面図で、原画像のラインに対応する縮小画像のラインを示す。前述したように、第１および第２の縮小画像生成方法では、縮小画像の奇数フィールドの画素Ｏ１は、原画像の奇数フィールドのライン１〜４の画素ｏ１，ｏ２，ｏ３，ｏ４から生成される。縮小画像の偶数フィールドの画素Ｅ１は、原画像の偶数フィールドのライン１〜４の画素ｅ１，ｅ２，ｅ３，ｅ４から生成される。
【０１１６】
縮小画像での動きベクトルをｍｖ、原画像上での動きベクトルをＭＶとする。ｍｖ＝０の場合、原画像においても動きベクトルは０である。即ち、ＭＶ＝０となる。ｍｖ＝１の場合を図１１（ａ）に矢印で図示する。ｍｖ＝１の時、縮小画像上ではベクトルは画素位置Ｅ１を指示する。画素位置Ｅ１の画素値Ｅ１は、上記のとおり原画像での画素位置ｅ１，ｅ２，ｅ３，ｅ４の画素ｅ１，ｅ２，ｅ３，ｅ４から生成しているため、原画像上ではベクトルは画素位置ｅ１を指し示す。したがって、ＭＶ＝１となる。同様に、ｍｖ＝２の時、ＭＶ＝８、ｍｖ＝３の時ＭＶ＝９となる。以上まとめると、（１）縮小画像での動きベクトルが０または偶数の場合：（ｍｖ＝２ｎ：ｎは整数）ＭＶ＝４×ｍｖ（２）縮小画像での動きベクトルが奇数の場合：（ｍｖ＝２ｎ＋１：ｎは整数）ＭＶ＝４×（ｍｖ−１）＋１の通りとなる。
【０１１７】
図１２にフィールド予測動きベクトルの変換方法を図示する。図１２（ａ）は原画像の垂直方向の断面図で、原画像のラインを示す。図１２（ｂ）は縮小画像の垂直方向の断面図で、原画像のラインに対応する縮小画像のラインを示す。
【０１１８】
フィールド予測には次の３通りの予測モードが存在する。
【０１１９】
（フィールド予測Ａ）
現画像フィールドと探索フィールドが同一のパリティーのフィールドの場合。即ち、現フィールドが奇数フィールドで、奇数フィールドを探索する場合および現フィールドが偶数フィールドで偶数フィールドを探索する場合。
【０１２０】
（フィールド予測Ｂ）
現フィールドが奇数フィールドで、偶数フィールドを探索する場合。
【０１２１】
（フィールド予測Ｃ）
現フィールドが偶数フィールドで、奇数フィールドを探索する場合。
【０１２２】
第１の垂直方向動きベクトル変換方法では、フィールド予測Ａ、Ｂ、Ｃいずれの場合でも、原画像上での動きベクトルは縮小画像上での動きベクトルを４倍することによって得られる。即ち、ＭＶ＝４×ｍｖで与えられる。
【０１２３】
〔第２の垂直方向動きベクトル変換方法〕
第２のベクトル変換方法は、縮小画像を第３の縮小画像生成方法を用いて生成した場合に用いられる。図１３にフレーム予測動きベクトルの変換方法を示す。図１３（ａ）は原画像の垂直方向の断面図で、原画像上でのラインを示す。図１３（ｂ）は縮小画像の垂直方向の断面図で、原画像のラインに対応する縮小画像のラインを示す。上記縮小画像生成方法に示す通り、Ｏ１はラインｏ１，ｏ２，ｏ３，ｏ４から生成され、Ｅ１はラインｅ２，ｅ３，ｅ４，ｅ５から生成される。縮小画像での動きベクトルをｍｖ、原画像上での動きベクトルをＭＶとする。ｍｖ＝０の場合、原画像においても動きベクトルは０である。即ち、ＭＶ＝０となる。ｍｖ＝１の場合を図１３（ａ）に矢印で図示する。ｍｖ＝１の時、縮小画像上ではベクトルはＥ１を示す。Ｅ１は上記の通り、ｅ２，ｅ３，ｅ４，ｅ５から生成しているため、原画像上ではベクトルはｅ２を示す。したがって、ＭＶ＝３となる。同様に、ｍｖ＝２の時、ＭＶ＝８、ｍｖ＝３の時ＭＶ＝１１となる。以上まとめると、（１）縮小画像での動きベクトルが０または偶数の場合：（ｍｖ＝２ｎ：ｎは整数）ＭＶ＝４×ｍｖ（２）縮小画像での動きベクトルが奇数の場合：（ｍｖ＝２ｎ＋１：ｎは整数）ＭＶ＝４×（ｍｖ−１）＋３の通りとなる。
【０１２４】
図１５、図１６にフィールド予測動きベクトルの変換方法を図示する。図１５（ａ）、図１６（ａ）は原画像の垂直方向の断面図で、原画像のラインを示す。図１５（ｂ）、図１６（ｂ）は縮小画像の垂直方向の断面図で、原画像のラインに対応する縮小画像のラインを示す。
【０１２５】
フィールド予測Ａの場合、原画像上での動きベクトルは縮小画像上での動きベクトルを４倍することによって得られる。
【０１２６】
フィールド予測Ｂの場合を図１６に示す。上記第３の縮小画像生成方法に示す通り、Ｏ１はラインｏ１，ｏ２，ｏ３，ｏ４から生成され、Ｅ１はラインｅ２、ｅ３、ｅ４、ｅ５から生成される。ｍｖ＝０の場合を図１６（ａ）に矢印で図示する。ｍｖ＝０の時、縮小画像上ではベクトルはＥ１を示す。Ｅ１は上記の通り、ｅ２，ｅ３，ｅ４，ｅ５から生成しているため、原画像上ではベクトルはｅ２を示す。したがって、ＭＶ＝１となる。同様に、ｍｖ＝１の時、ＭＶ＝５となる。
【０１２７】
フィールド予測Ｃの場合を図１５に示す。上記第３の縮小画像生成方法に示す通り、Ｏ２はラインｏ５，ｏ６，ｏ７，ｏ８から生成され、Ｅ１はラインｅ２、ｅ３、ｅ４、ｅ５から生成される。ｍｖ＝１の場合を図１５（ａ）に矢印で図示する。ｍｖ＝１の時、縮小画像上ではベクトルはＯ２を示す。Ｏ２は上記の通り、ｏ５，ｏ６，ｏ７，ｏ８から生成しているため、原画像上ではベクトルはｏ５を示す。ここで、上記の通り、Ｅ１はラインｅ２、ｅ３、ｅ４、ｅ５から生成される。原画像上で動きベクトルの検出はｅ１から始まるブロックによって行なわれる。したがって、１ライン分ずれていることになる。したがって、得られた動きベクトルも１ライン分ずらす必要がある。したがって、原画像上での動きベクトルはｏ４を示すベクトルとなる。即ち、ｍｖ＝１の時、ＭＶ＝３、同様にｍｖ＝０の時ＭＶ＝−１となる。以上まとめると、フィールド予測Ａのとき：ＭＶ＝４×ｍｖフィールド予測Ｂのとき：ＭＶ＝４×ｍｖ＋１フィールド予測Ｃのとき：ＭＶ＝４×ｍｖ−１の通りとなる。
【０１２８】
〔第３の垂直方向動きベクトル変換方法〕
第３のベクトル変換方法は、縮小画像を第４の縮小画像生成方法を用いて生成した場合に用いられる。図１４にフレーム予測動きベクトルの変換方法を示す。図１４（ａ）は原画像の垂直方向の断面図で、原画像上でのラインを示す。図１４（ｂ）は縮小画像の垂直方向の断面図で、原画像のラインに対応する縮小画像のラインを示す。上記縮小画像生成方法に示す通り、Ｏ１はラインｏ１、ｏ２、ｏ３、ｏ４から生成され、Ｅ１はラインｅ３、ｅ４、ｅ５、ｅ６から生成される。
【０１２９】
縮小画像での動きベクトルをｍｖ、原画像上での動きベクトルをＭＶとする。ｍｖ＝０の場合、原画像においても動きベクトルは０である。即ち、ＭＶ＝０となる。ｍｖ＝１の場合を図１４（ａ）に矢印で図示する。ｍｖ＝１の時、縮小画像上ではベクトルはＥ１を示す。Ｅ１は上記の通り、ｅ３、ｅ４、ｅ５、ｅ６から生成しているため、原画像上ではベクトルはｅ３を示す。したがって、ＭＶ＝５となる。同様に、ｍｖ＝２の時、ＭＶ＝８、ｍｖ＝３の時ＭＶ＝１３となる。以上まとめると、（１）縮小画像での動きベクトルが０または偶数の場合：（ｍｖ＝２ｎ：ｎは整数）ＭＶ＝４×ｍｖ（２）縮小画像での動きベクトルが奇数の場合：（ｍｖ＝２（ｎ＋１）：ｎは整数）ＭＶ＝４×（ｍｖ−１）＋５となる。
【０１３０】
図１７、図１８にフィールド予測動きベクトルの変換方法を図示する。図１７（ａ）、図１８（ａ）は原画像の垂直方向の断面図で、原画像のラインを示す。図１７（ｂ）、図１８（ｂ）は縮小画像の垂直方向の断面図で、原画像のラインに対応する縮小画像のラインを示す。
【０１３１】
フィールド予測Ａの場合、原画像上での動きベクトルは縮小画像上での動きベクトルを４倍することによって得られる。
【０１３２】
フィールド予測Ｂの場合を図１８に示す。上記第４の縮小画像生成方法に示す通り、Ｏ１はラインｏ１、ｏ２、ｏ３、ｏ４から生成され、Ｅ１はラインｅ３、ｅ４、ｅ５、ｅ６から生成される。ｍｖ＝０の場合を図１８（ａ）に矢印で図示する。ｍｖ＝０の時、縮小画像上ではベクトルはＥ１を示す。Ｅ１は上記の通り、ｅ３、ｅ４、ｅ５、ｅ６から生成しているため、原画像上ではベクトルはｅ３を示す。したがって、ＭＶ＝２となる。同様に、ｍｖ＝１の時、ＭＶ＝６となる。
【０１３３】
フィールド予測Ｃの場合を図１７に示す。上記第４の縮小画像生成方法に示す通り、Ｏ２はラインｏ５、ｏ６、ｏ７、ｏ８から生成され、Ｅ１はラインｅ３、ｅ４、ｅ５、ｅ６から生成される。ｍｖ＝１の場合を図１７（ａ）に矢印で図示する。ｍｖ＝１の時、縮小画像上ではベクトルはＯ２を示す。Ｏ２は上記の通り、ｏ５、ｏ６、ｏ７、ｏ８から生成しているため、原画像上ではベクトルはｏ５を示す。ここで、上記の通り、Ｅ１はラインｅ３、ｅ４、ｅ５、ｅ６から生成される。原画像上で動きベクトルの検出はｅ１から始まるブロックによって行なわれる。したがって、２ライン分ずれていることになる。したがって、得られた動きベクトルも２ライン分ずらす必要がある。したがって、原画像上での動きベクトルはｏ３を示すベクトルとなる。即ち、ｍｖ＝１の時、ＭＶ＝２、同様にｍｖ＝０の時ＭＶ＝−２となる。
【０１３４】
以上まとめると、フィールド予測Ａのとき：ＭＶ＝４×ｍｖフィールド予測Ｂのとき：ＭＶ＝４×ｍｖ＋２フィールド予測Ｃのとき：ＭＶ＝４×ｍｖ−２となる。
【０１３５】
〔第４の垂直方向動きベクトル変換方法〕
第４のベクトル変換方法は、縮小画像を第５または第６の縮小画像生成方法を用いて生成した場合に用いられる。図１９にフレーム予測動きベクトルの変換方法を示す。図１９（ａ）は原画像の垂直方向の断面図で、原画像上でのラインを示す。図１９（ｂ）は縮小画像の垂直方向の断面図で、原画像のラインに対応する縮小画像のラインを示す。第５、第６の縮小画像生成方法を用いて縮小画像を生成した場合、縮小画像上でのラインの間隔は等間隔になっている。したがって、原画像上での動きベクトルは、縮小画像上での動きベクトルを４倍することによって得られる。即ち、ＭＶ＝４×ｍｖとなる。
【０１３６】
図２０、図２１にフィールド予測動きベクトルの変換方法を図示する。図２０（ａ）、図２１（ａ）は原画像の垂直方向の断面図で、原画像のラインを示す。図２０（ｂ）、図２１（ｂ）は縮小画像の垂直方向の断面図で、原画像のラインに対応する縮小画像のラインを示す。
【０１３７】
フィールド予測Ａの場合、原画像上での動きベクトルは縮小画像上での動きベクトルを４倍することによって得られる。
【０１３８】
フィールド予測Ｂの場合を図２０に示す。上記第５または第６の縮小画像生成方法に示す通り、Ｏ１はラインｏ１、ｏ２、ｏ３、ｏ４から生成され、Ｅ１は第５の縮小画像生成方法ではｅ３、ｅ４、ｅ５から生成され、第６の縮小画像生成方法ではｅ２、ｅ３、ｅ４、ｅ５、ｅ６から生成される。いずれも奇数本のラインから生成される。これを、Ｏ１と同じ４ラインから生成されたものとみなすと、図中の×印の位置のラインから生成された、とみなすことができる。したがって、ｍｖ＝０のときは原画像上ではｅ２とｅ３の中間点を示すことになる。即ちＭＶ＝１．５である。しかし、ＭＶ＝１．５の位置には実際にはラインが存在しない。そこで、その近傍のラインｅ２またはｅ３を示すベクトルに変換する。（２通りの方法がある。どちらでも良いが、常に同じ方法を用いる。）即ち、
（方法１）
ＭＶ＝４×ｍｖ＋１
（方法２）
ＭＶ＝４×ｍｖ＋２
となる。
【０１３９】
フィールド予測Ｃの場合を図２１に示す。上記第５または第６の縮小画像生成方法に示す通り、Ｏ２はラインｏ５、ｏ６、ｏ７、ｏ８から生成され、Ｅ１は第５の縮小画像生成方法ではｅ３、ｅ４、ｅ５から生成され、第６の縮小画像生成方法ではｅ２、ｅ３、ｅ４、ｅ５、ｅ６から生成される。いずれも奇数本のラインから生成される。これを、Ｏ１と同じ４ラインから生成されたものとみなすと、図中の×印の位置のラインから生成された、とみなすことができる。ｍｖ＝１の場合を図２１（ａ）に矢印で図示する。ｍｖ＝１の時、縮小画像上ではベクトルはＯ２を示す。Ｏ２は上記の通り、ｏ５、ｏ６、ｏ７、ｏ８から生成しているため、原画像上ではベクトルはｏ５を示す。ここで、上記の通り、Ｅ１×印のラインから生成されているとみなすことが出来る。原画像上で動きベクトルの検出はｅ１から始まるブロックによって行なわれる。したがって、１．５ライン分ずれていることになる。したがって、得られた動きベクトルも１．５ライン分ずらす必要がある。したがって、原画像上での動きベクトルはｏ３とｏ４の中間点を示すベクトルとなる。即ち、ＭＶ＝２．５である。しかし、ＭＶ＝２．５の位置には実際にはラインが存在しない。そこで、その近傍のラインｏ３またはｏ４を示すベクトルに変換する。（２通りの方法がある。どちらでも良いが、常に同じ方法を用いる。）即ち、
（方法１）
ＭＶ＝４×ｍｖ−２
（方法２）
ＭＶ＝４×ｍｖ−１となる。
【０１４０】
以上まとめると、以下の通りになる。
【０１４１】
フィールド予測Ａのとき：ＭＶ＝４×ｍｖ（方法１）
フィールド予測Ｂのとき：ＭＶ＝４×ｍｖ＋１フィールド予測Ｃのとき：ＭＶ＝４×ｍｖ−２（方法２）
フィールド予測Ｂのとき：ＭＶ＝４×ｍｖ＋２フィールド予測Ｃのとき：ＭＶ＝４×ｍｖ−１となる。
【０１４２】
上記の通り変換された動きベクトルは候補ベクトル発生回路９に入力される。候補ベクトル発生回路９では入力された動きベクトルの近傍のベクトルを候補ベクトルとして発生する。候補ベクトル発生回路９では入力されたベクトルも含め、水平および垂直方向に２画素間隔の９本の候補ベクトルを発生する。例えば図２２を用いて説明する。縮小画像上でのブロックマッチングは原画像上では４画素間隔の候補ベクトルを検査することに相当する。ここで、候補ベクトル発生回路９に入力されるベクトルがＡ８を示す、ベクトルであったとする。このとき、候補ベクトル発生回路はＢ０〜Ｂ７およびＡ８の９本の候補ベクトルを発生し、ブロックマッチング回路１３に入力する。
【０１４３】
ここで、第２のブロック化方法を用いてフィールドベクトルを探索した場合、図９のブロック＃１、＃２に対して候補ベクトル発生回路９が発生する候補ベクトルは同一のものになる。したがって、ブロックマッチング回路部１３は上記の９本の候補ベクトルに対し、ブロックマッチングを行ない、最適な動きベクトルを出力する。
【０１４４】
ブロック化回路１１、１２はフレームメモリ群２から所定の画像データを読みだし、ブロックマッチを行なうブロックのデータをブロックマッチ回路１３に出力する。ブロック化回路１１、１２は動きベクトル検出を行なう予測モードによって動作が異なる。
【０１４５】
フレーム予測動きベクトルの検出を行なう場合について説明する。フレーム予測モードではフレーム単位でブロックマッチングを行なう。即ち、奇数フィールドのデータと偶数フィールドのデータが混在したブロックでブロックマッチングを行なう。図２３（ａ）に示す１６×１６画素ブロックで、ブロックマッチングを行なう。
【０１４６】
次にフィールド予測動きベクトルの検出を行なう場合について説明する。フィールド予測モードではフィールド単位でブロックマッチングを行なう。即ち、奇数フィールドのデータのみから構成されるブロックおよび偶数フィールドのデータのみから構成されるブロックによってブロックマッチングが行なわれる。図２３（ｂ），（ｃ）に示すように、１６画素×８ラインのブロックが、奇数フィールドおよび偶数フィールドについてそれぞれ読み出される。
【０１４７】
以上のように、ブロック化回路１１、１２から読み出された画素ブロックはブロックマッチング回路１３に入力される。ブロックマッチング回路部１３はブロックマッチング回路８と同様で、図１０に示す通りである。ブロックマッチング回路部１３は与えられた候補ベクトルに対して差分の絶対値和ＡＥを最小にするベクトル（ΔＸ、ΔＹ）を出力する。
【０１４８】
ブロックマッチング回路部１３によって検出された最適な動きベクトルは、候補ベクトル発生回路１４に入力される。候補ベクトル発生回路１４は、入力された動きベクトルの近傍のベクトルを候補ベクトルとして発生する。候補ベクトル発生回路１４は、入力されたベクトルも含め、水平および垂直方向に１画素間隔の９本の候補ベクトルを発生する。例えば図２２を用いて説明する。ここで、候補ベクトル発生回路１４に入力されるベクトルがＢ７を示す、ベクトルであったとする。このとき、候補ベクトル発生回路はＣ０〜Ｃ７およびＢ７の９本の候補ベクトルを発生し、ブロックマッチング回路部１７に入力する。したがって、ブロックマッチング回路部１７は上記の９本の候補ベクトルに対し、ブロックマッチングを行ない、最適な動きベクトルを出力する。
【０１４９】
ブロック化回路１５，１６は、フレームメモリ群２から所定の画像データを読み出し、ブロックマッチを行なうブロックのデータをブロックマッチ回路１７に出力する。ブロック化回路１５、１６はブロック化回路１１、１２と同様の動作をする。
【０１５０】
ブロック化回路１５、１６から読み出された画素ブロックは、ブロックマッチング回路１７に入力される。ブロックマッチング回路部１７は、ブロックマッチング回路部８と同様で、図１０に示す通りである。ブロックマッチング回路部１７は与えられた候補ベクトルに対して差分の絶対値和ＡＥを最小にするベクトル（ΔＸ、ΔＹ）を出力する。
【０１５１】
ブロックマッチング回路部１７によって検出された最適な動きベクトルは、候補ベクトル発生回路１８に入力される。候補ベクトル発生回路１８では入力された動きベクトルの近傍のベクトルを候補ベクトルとして発生する。候補ベクトル発生回路９では入力されたベクトルも含め、水平および垂直方向に０．５画素間隔の９本の候補ベクトルを発生する。例えば図２４を用いて説明する。丸印は画素を示す。ここで、候補ベクトル発生回路１７に入力されるベクトルが画素４を示す、ベクトルであったとする。このとき、候補ベクトル発生回路は１〜８の各点を示す９本の候補ベクトルを発生し、ブロックマッチング回路部２２に入力する。したがって、ブロックマッチング回路部２２は上記の９本の候補ベクトルに対し、ブロックマッチングを行ない、最適な動きベクトルを出力する。
【０１５２】
ブロック化回路２０はフレームメモリ群２から所定の画像データを読み出し、ブロックマッチを行なうブロックのデータをブロックマッチ回路２２に出力する。ブロック化回路２１は、１／２画素画像生成回路１９によって生成される、１／２画素位置の画像データを読み出し、ブロックマッチを行なうブロックのデータをブロックマッチ回路２２に出力する。
【０１５３】
１／２画素画像生成回路１９は、フレームメモリ群２から所定の画像データを読み出し、１／２画素位置の画像データを生成する。図２５を用いて説明する。Ａ、Ｂ、Ｄ、Ｅはそれぞれ水平、垂直方向に１画素ずつ隔てた画素であるとする。１／２精度の動きベクトルが画素が存在しない点を示す場合、補間を行なう。点ｈ、ｖ、ｃを補間により生成する方法を説明する。１／２精度の動きベクトルの場合、この３種類の補間により、生成される。
【０１５４】
ｈは水平方向にそれぞれ１／２画素隔てて画素が存在する場合である。この場合、補間は、ｈ＝（Ａ＋Ｂ）//２となる。ここで、//は除算後に四捨五入することを示す。
【０１５５】
次にｖは垂直方向に１／２画素間隔隔てて画素が存在する場合である。この場合補間は以下の式で与えられる。
【０１５６】
ｖ＝（Ａ＋Ｄ）//２となる。ｃは４画素の中央に位置する点の場合である。この場合、補間は、ｃ＝（Ａ＋Ｂ＋Ｄ＋Ｅ）//４となる。上記のようにして生成された１／２画素画像は、ブロック化回路２１に入力される。
【０１５７】
ブロック化回路２０，２１は、ブロック化回路１１，１２と同様の動作をする。ブロック化回路２０，２１から読み出された画素ブロックは、ブロックマッチング回路部２２に入力される。ブロックマッチング回路部２２はブロックマッチング回路部８と同様で、図１０に示す通りである。ブロックマッチング回路部２２は、与えられた候補ベクトルに対して差分の絶対値和ＡＥを最小にするベクトル（ΔＸ、ΔＹ）を出力する。ブロックマッチング回路部２２によって検出された最適な動きベクトルは、本検出装置１において検出された最適な動きベクトルとして出力される。
【０１５８】
以上の方法では、図１における動きベクトル変換回路９の出力を基にブロックマッチング回路１３、１７においてステップサーチを行なっているが、他の方法に置き換えても良い。例えば、フルサーチの使用、より荒いステップサーチの使用が考えられる。また、それぞれの場合について、サーチ範囲を適宜増減させても良い。
【０１５９】
次にこの発明の第２の実施例を説明する。図２６は第２の実施例に係る動きベクトル検出装置の全体ブロック構成図である。第２の実施例に係る動きベクトル検出装置６１は、各縮小画像生成器３，４の前段にローパスフィルタ６２および６３を備えたもので、それ以外の構成は図１に示したものと同じである。
【０１６０】
ローパスフィルタ６２，６３について説明する。縮小画像を生成する際に、ローパスフィルタを用いることは、縮小画像上でのベクトル検出の際に誤ベクトルの発生を軽減する効果がある。このフィルタは１次元であってもよいし、２次元のフィルタであっても良い。また任意のタップ数で良い。
【０１６１】
次に、この発明の第３の実施例を説明する。第３の実施例は、垂直方向の動きベクトルの変換方法以外の点では第１の実施例と同じである。その垂直方向の動きベクトルの変換方法には以下の３つの方法がある。
【０１６２】
〔第５の垂直方向動きベクトル変換方法〕
第５のベクトル変換方法は、縮小画像を第１および第２の縮小画像生成方法を用いて生成した場合に用いられる。図２７にフレーム予測動きベクトルの変換方法を示す。図２７（ａ）は原画像の垂直方向の断面図で、原画像上でのラインを示す。図２７（ｂ）は縮小画像の垂直方向の断面図で、原画像のラインに対応する縮小画像のラインを示す。上記縮小画像生成方法に示す通り、Ｏ１はラインｏ１、ｏ２、ｏ３、ｏ４から生成され、Ｅ１はラインｅ１、ｅ２、ｅ３、ｅ４から生成される。縮小画像での動きベクトルをｍｖ、原画像上での動きベクトルをＭＶとする。ｍｖ＝０の場合、原画像においても動きベクトルは０である。即ち、ＭＶ＝０となる。ｍｖ＝１の場合を図２７（ａ）に矢印で図示する。ｍｖ＝１の時、縮小画像上ではベクトルはＥ１およびＯ２を示す。
【０１６３】
上記の通りＥ１はｅ１，ｅ２，ｅ３，ｅ４から、Ｏ２はｏ５，ｏ６，ｏ７，ｏ８から、生成しているため、原画像上ではベクトルはｅ１およびｏ５を示す。ｅ１を指すベクトルとしてはＭＶ＝１であるが、ｏ５を指すベクトルとしてはＭＶ＝７となるため、平均のＭＶ＝４を用いる。ｍｖ＝２以上の時も同様である。以上まとめるとベクトルの換算方法は、ＭＶ＝４×ｍｖとなる。
【０１６４】
図２８にフィールド予測動きベクトルの変換方法を図示する。図２８（ａ）は原画像の垂直方向の断面図で、原画像のラインを示す。図２８（ｂ）は縮小画像の垂直方向の断面図で、原画像のラインに対応する縮小画像のラインを示す。
【０１６５】
フィールド予測には次の３通りの予測モードが存在する。
【０１６６】
（フィールド予測Ａ）
現画像フィールドと探索フィールドが同一のパリティーのフィールドの場合。即ち、現フィールドが奇数フィールドで、奇数フィールドを探索する場合および現フィールドが偶数フィールドで偶数フィールドを探索する場合。
【０１６７】
（フィールド予測Ｂ）
現フィールドが奇数フィールドで、偶数フィールドを探索する場合。
【０１６８】
（フィールド予測Ｃ）
現フィールドが偶数フィールドで、奇数フィールドを探索する場合。
【０１６９】
第５の垂直方向動きベクトル変換方法では、フィールド予測Ａ、Ｂ、Ｃいずれの場合でも、原画像上での動きベクトルは縮小画像上での動きベクトルを４倍することによって得られる。即ち、ＭＶ＝４×ｍｖで与えられる。
【０１７０】
〔第６の垂直方向動きベクトル変換方法〕
第６のベクトル変換方法は、縮小画像を第３の縮小画像生成方法を用いて生成した場合に用いられる。図２９にフレーム予測動きベクトルの変換方法を示す。図２９（ａ）は原画像の垂直方向の断面図で、原画像上でのラインを示す。図２９（ｂ）は縮小画像の垂直方向の断面図で、原画像のラインに対応する縮小画像のラインを示す。上記縮小画像生成方法に示す通り、Ｏ１はラインｏ１、ｏ２、ｏ３、ｏ４から生成され、Ｅ１はラインｅ２、ｅ３、ｅ４、ｅ５から生成される。縮小画像での動きベクトルをｍｖ、原画像上での動きベクトルをＭＶとする。ｍｖ＝０の場合、原画像においても動きベクトルは０である。即ち、ＭＶ＝０となる。ｍｖ＝１の場合を図２９（ａ）に矢印で図示する。ｍｖ＝１の時、縮小画像上ではベクトルはＥ１およびＯ２を示す。上記の通りＥ１はｅ２、ｅ３、ｅ４、ｅ５から、Ｏ２はｏ５、ｏ６、ｏ７、ｏ８から、生成しているため、原画像上ではベクトルはｅ２およびｏ５を示す。ｅ２を指すベクトルとしてはＭＶ＝３であるが、ｏ５を指すベクトルとしてはＭＶ＝５となるため、平均のＭＶ＝４を用いる。ｍｖ＝２以上の時も同様である。以上まとめるとベクトルの換算方法は、ＭＶ＝４×ｍｖとなる。
【０１７１】
図３１、図３２にフィールド予測動きベクトルの変換方法を図示する。図３１（ａ）、図３２（ａ）は原画像の垂直方向の断面図で、原画像のラインを示す。図３１（ｂ）、図３２（ｂ）は縮小画像の垂直方向の断面図で、原画像のラインに対応する縮小画像のラインを示す。
【０１７２】
フィールド予測Ａの場合、原画像上での動きベクトルは縮小画像上での動きベクトルを４倍することによって得られる。
【０１７３】
フィールド予測Ｂの場合を図３２に示す。上記第３の縮小画像生成方法に示す通り、Ｏ１はラインｏ１、ｏ２、ｏ３、ｏ４から生成され、Ｅ１はラインｅ２、ｅ３、ｅ４、ｅ５から生成される。ｍｖ＝０の場合を図３２（ａ）に矢印で図示する。ｍｖ＝０の時、縮小画像上ではベクトルはＥ１を示す。Ｅ１は上記の通り、ｅ２、ｅ３、ｅ４、ｅ５から生成しているため、原画像上ではベクトルはｅ２を示す。したがって、ＭＶ＝１となる。同様に、ｍｖ＝１の時、ＭＶ＝５となる。
【０１７４】
フィールド予測Ｃの場合を図３１に示す。上記第３の縮小画像生成方法に示す通り、Ｏ２はラインｏ５、ｏ６、ｏ７、ｏ８から生成され、Ｅ１はラインｅ２、ｅ３、ｅ４、ｅ５から生成される。ｍｖ＝１の場合を図３１（ａ）に矢印で図示する。ｍｖ＝１の時、縮小画像上ではベクトルはＯ２を示す。Ｏ２は上記の通り、ｏ５、ｏ６、ｏ７、ｏ８から生成しているため、原画像上ではベクトルはｏ５を示す。ここで、上記の通り、Ｅ１はラインｅ２、ｅ３、ｅ４、ｅ５から生成される。原画像上で動きベクトルの検出はｅ１から始まるブロックによって行なわれる。したがって、１ライン分ずれていることになる。したがって、得られた動きベクトルも１ライン分ずらす必要がある。したがって、原画像上での動きベクトルはｏ４を示すベクトルとなる。即ち、ｍｖ＝１の時、ＭＶ＝３、同様にｍｖ＝０の時ＭＶ＝−１となる。
【０１７５】
以上まとめると以下の通りになる。
【０１７６】
フィールド予測Ａのとき：ＭＶ＝４×ｍｖフィールド予測Ｂのとき：ＭＶ＝４×ｍｖ＋１フィールド予測Ｃのとき：ＭＶ＝４×ｍｖ−１となる。
【０１７７】
〔第７の垂直方向動きベクトル変換方法〕
第７のベクトル変換方法は、縮小画像を第４の縮小画像生成方法を用いて生成した場合に用いられる。図３０にフレーム予測動きベクトルの変換方法を示す。図３０（ａ）は原画像の垂直方向の断面図で、原画像上でのラインを示す。図３０（ｂ）は縮小画像の垂直方向の断面図で、原画像のラインに対応する縮小画像のラインを示す。上記縮小画像生成方法に示す通り、Ｏ１はラインｏ１、ｏ２、ｏ３、ｏ４から生成され、Ｅ１はラインｅ３、ｅ４、ｅ５、ｅ６から生成される。縮小画像での動きベクトルをｍｖ、原画像上での動きベクトルをＭＶとする。ｍｖ＝０の場合、原画像においても動きベクトルは０である。即ち、ＭＶ＝０となる。ｍｖ＝１の場合を図３０（ａ）に矢印で図示する。ｍｖ＝１の時、縮小画像上ではベクトルはＥ１およびＯ２を示す。上記の通りＥ１はｅ３、ｅ４、ｅ５、ｅ６から、Ｏ２はｏ５、ｏ６、ｏ７、ｏ８から、生成しているため、原画像上ではベクトルはｅ３およびｏ５を示す。ｅ３を指すベクトルとしてはＭＶ＝５であるが、ｏ５を指すベクトルとしてはＭＶ＝３となるため、平均のＭＶ＝４を用いる。ｍｖ＝２以上の時も同様である。以上まとめるとベクトルの換算方法は、ＭＶ＝４×ｍｖとなる。
【０１７８】
図３３、図３４にフィールド予測動きベクトルの変換方法を図示する。図３３（ａ）、図３４（ａ）は原画像の垂直方向の断面図で、原画像のラインを示す。図３３（ｂ）、図３４（ｂ）は縮小画像の垂直方向の断面図で、原画像のラインに対応する縮小画像のラインを示す。
【０１７９】
フィールド予測Ａの場合、原画像上での動きベクトルは縮小画像上での動きベクトルを４倍することによって得られる。
【０１８０】
フィールド予測Ｂの場合を図３４に示す。上記第３の縮小画像生成方法に示す通り、Ｏ１はラインｏ１、ｏ２、ｏ３、ｏ４から生成され、Ｅ１はラインｅ３、ｅ４、ｅ５、ｅ６から生成される。ｍｖ＝０の場合を図３４（ａ）に矢印で図示する。ｍｖ＝０の時、縮小画像上ではベクトルはＥ１を示す。Ｅ１は上記の通り、ｅ３、ｅ４、ｅ５、ｅ６から生成しているため、原画像上ではベクトルはｅ３を示す。したがって、ＭＶ＝２となる。同様に、ｍｖ＝１の時、ＭＶ＝６となる。
【０１８１】
フィールド予測Ｃの場合を図３３に示す。上記第３の縮小画像生成方法に示す通り、Ｏ２はラインｏ５、ｏ６、ｏ７、ｏ８から生成され、Ｅ１はラインｅ３、ｅ４、ｅ５、ｅ６から生成される。ｍｖ＝１の場合を図３３（ａ）に矢印で図示する。ｍｖ＝１の時、縮小画像上ではベクトルはＯ２を示す。Ｏ２は上記の通り、ｏ５、ｏ６、ｏ７、ｏ８から生成しているため、原画像上ではベクトルはｏ５を示す。ここで、上記の通り、Ｅ１はラインｅ３、ｅ４、ｅ５、ｅ６から生成される。原画像上で動きベクトルの検出はｅ１から始まるブロックによって行なわれる。したがって、２ライン分ずれていることになる。したがって、得られた動きベクトルも２ライン分ずらす必要がある。したがって、原画像上での動きベクトルはｏ３を示すベクトルとなる。即ち、ｍｖ＝１の時、ＭＶ＝２、同様にｍｖ＝０の時ＭＶ＝−２となる。
【０１８２】
以上まとめると、フィールド予測Ａのとき：ＭＶ＝４×ｍｖフィールド予測Ｂのとき：ＭＶ＝４×ｍｖ＋２フィールド予測Ｃのとき：ＭＶ＝４×ｍｖ−２となる。
【０１８３】
次にこの発明の第４の実施例について説明する。第４の実施例における動きベクトル検出装置のブロック構成を図３５に示す。第４の実施例は、縮小画像の生成方法が第１〜３の実施例と異なっている。
【０１８４】
第４実施例に係る動きベクトル検出装置７１は、現在のフレームの輝度信号と色差信号、および、動きベクトルを探索する探索画像の輝度信号と色差信号が格納されるフレームメモリ群７２を備える。入力画像信号はまず、フレームメモリ群２に入力される。このフレームメモリ群２からは、現在のフレームの輝度信号２ａと色差信号ＣＣｂ，ＣＣｒおよび、動きベクトルを探索する探索画像の輝度信号２ａと色差信号ＲＣｂ，ＲＣｒが読み出される。
【０１８５】
縮小画像生成器７３，７４は、フレームメモリ群７２から現フレームおよび探索フレームのデータを読み出し、縮小画像を作り、フレームメモリ群７５に出力する。縮小画像生成器７３，７４では入力画像に対して、水平および垂直方向に１／４の大きさの画像データを生成する。第４の実施例は、この縮小画像生成においてのみ第１〜３の実施例と異なっている。
【０１８６】
〔第７の縮小画像生成方法〕
第７の縮小画像生成方法を図３６を用いて説明する。第１の縮小画像生成方法はフィールド単位で４×４個の輝度Ｙを加算し、１個の縮小画像の画素とするものであった。これに対し、第７の縮小画像生成方法は、フィールド単位で４×４個の輝度Ｙと、更にそれぞれフィールド単位で２×２個の色差Ｃｂ、Ｃｒを加算し、１個の縮小画像の画素とする。この時、本生成方法では、原画像が８ビットの画素から構成される場合、縮小画像は８ビット×（１６＋４＋４）個＝１３ビットの画素から構成する。
【０１８７】
図３６（ａ）に示すような、輝度Ｙと色差Ｃｂ、Ｃｒを持つ画像が入力された場合を考える。白丸（ｏ１〜ｏ２４）は奇数フィールドの画素を示し、黒丸（ｅ１〜ｅ２４）は偶数フィールドの画素を示す。ｏ１〜ｏ１６およびｅ１〜ｅ１６が輝度Ｙ、ｏ１７〜ｏ２０およびｅ１７〜ｅ２０が色差Ｃｂ、ｏ２１〜ｏ２４およびｅ２１〜ｅ２４が色差Ｃｒである。図３６（ａ）に対して図３６（ｂ）の画素が生成される。Ｏ１は奇数フィールドの縮小画像の画素を示し、Ｅ１は偶数フィールドの縮小画像の画素を示す。Ｏ１、Ｅ１はそれぞれのフィールド内で、４×４の輝度Ｙ、２×２の色差Ｃｂ、２×２の色差Ｃｒの加算によって生成される。
【０１８８】
Ｏ１は以下の式で生成される。
【０１８９】
O1=(o1+o2+o3+o4+o5+o6+o7+o8+o9+o10+o11+o12+o13+o14+o15+o16)+(o17+o18+o19+o20)+(o21+o22+o23+o24)
Ｅ１は、以下の式によって生成される。
【０１９０】
E1=(e1+e2+e3+e4+e5+e6+e7+e8+e9+e10+e11+e12+e13+e14+e15+e16)+(e17+e18+e19+e20)+(e21+e22+e23+e24)
【０１９１】
以上は第１の縮小画像構成方法を色差も用いるように拡張したものである。色差を第７の縮小画像構成方法とは異なった重み付けで使う方法も考えられる。また、第２の縮小画像構成方法と同様に、縮小画像の画素を８ビットにしたり、第３〜６の縮小画像構成方法と同様に、縮小画像の位相を調節することも考えられる。
【０１９２】
上記の方法により生成された縮小画像が縮小画像フレームメモリ群７５に入力されてから動作は、第１〜３の実施例と同様である。
【図面の簡単な説明】
【０１９３】
【図１】この発明の第１実施例に係る動きベクトル検出装置の全体ブロック構成図である。
【図２】水平方向および垂直方向に１／４に縮小した画像の生成方法の説明図である。
【図３】第１，第２の縮小画像生成方法および同生成方法における原画像のラインと縮小画像のラインの位置関係を示す説明図である。
【図４】第３の縮小画像生成方法および同生成方法における原画像のラインと縮小画像のラインの位置関係を示す説明図である。
【図５】第４の縮小画像生成方法および同生成方法における原画像のラインと縮小画像のラインの位置関係を示す説明図である。
【図６】第５の縮小画像生成方法および同生成方法における原画像のラインと縮小画像のラインの位置関係を示す説明図である。
【図７】第６の縮小画像生成方法および同生成方法における原画像のラインと縮小画像のラインの位置関係を示す説明図である。
【図８】第１のブロック化方法の説明図である。
【図９】第２のブロック化方法の説明図である。
【図１０】ブロックマッチング回路部のブロック構成図である。
【図１１】第１の垂直方向動きベクトル変換方法におけるフレーム予測動きベクトルの変換方法を示す説明図である。
【図１２】第１の垂直方向動きベクトル変換方法におけるフィールド予測動きベクトルの変換方法を示す説明図である。
【図１３】第２の垂直方向動きベクトル変換方法におけるフレーム予測動きベクトルの変換方法（第３の縮小画像生成方法に対応）を示す説明図である。
【図１４】第３の垂直方向動きベクトル変換方法におけるフレーム予測動きベクトルの変換方法を示す説明図である。
【図１５】第２の垂直方向動きベクトル変換方法におけるフィールド予測Ｃの場合のフィールド予測動きベクトルの変換方法を示す説明図である。
【図１６】第２の垂直方向動きベクトル変換方法におけるフィールド予測Ｂの場合のフィールド予測動きベクトルの変換方法を示す説明図である。
【図１７】第３の垂直方向動きベクトル変換方法におけるフィールド予測Ｃの場合のフィールド予測動きベクトルの変換方法を示す説明図である。
【図１８】第３の垂直方向動きベクトル変換方法におけるフィールド予測Ｂの場合のフィールド予測動きベクトルの変換方法を示す説明図である。
【図１９】第４の垂直方向動きベクトル変換方法におけるフレーム予測動きベクトルの変換方法を示す説明図である。
【図２０】第４の垂直方向動きベクトル変換方法におけるフィールド予測Ｂの場合のフィールド予測動きベクトルの変換方法を示す説明図である。
【図２１】第４の垂直方向動きベクトル変換方法におけるフィールド予測Ｃの場合のフィールド予測動きベクトルの変換方法を示す説明図である。
【図２２】マルチステップサーチ部での動きベクトル検出動作を示す説明図である。
【図２３】フレーム単位でのブロックマッチングに用いるブロックの説明図である。
【図２４】１／２画素間隔の候補ベクトルの説明図である。
【図２５】１／２画素位置の画像データの生成方法を示す説明図である。
【図２６】この発明の第２実施例に係る動きベクトル検出装置の全体ブロック構成図である。
【図２７】第５の垂直方向動きベクトル変換方法におけるフレーム予測動きベクトルの変換方法を示す説明図である。
【図２８】第５の垂直方向動きベクトル変換方法におけるフィールド予測動きベクトルの変換方法を示す説明図である。
【図２９】第６の垂直方向動きベクトル変換方法におけるフレーム予測動きベクトルの変換方法を示す説明図である。
【図３０】第７の垂直方向動きベクトル変換方法におけるフレーム予測動きベクトルの変換方法を示す説明図である。
【図３１】第６の垂直方向動きベクトル変換方法におけるフィールド予測Ｃの場合のフィールド予測動きベクトルの変換方法を示す説明図である。
【図３２】第６の垂直方向動きベクトル変換方法におけるフィールド予測Ｂの場合のフィールド予測動きベクトルの変換方法を示す説明図である。
【図３３】第７の垂直方向動きベクトル変換方法におけるフィールド予測Ｃの場合のフィールド予測動きベクトルの変換方法を示す説明図である。
【図３４】第７の垂直方向動きベクトル変換方法におけるフィールド予測Ｂの場合のフィールド予測動きベクトルの変換方法を示す説明図である。
【図３５】この発明の第４実施例に係る動きベクトル検出装置の全体ブロック構成図である。
【図３６】第７の縮小画像生成方法の説明図である。
【図３７】従来のフレーム間相関を利用した画像情報圧縮の原理図である。
【図３８】従来のパターンマッチングによって類似画像部分を探索する方法の説明図である。
【図３９】従来の１／２画素精度動きベクトル検出方法の説明図である。
【図４０】従来のパターンマッチングによる動きベクトル検出においてサーチ範囲を広げることでより最適な動きベクトルの検出が可能になることを示す説明図である。
【図４１】従来の３ステップサーチ方式による動きベクトル検出方法の説明図である。
【図４２】従来の階層サーチ（ＬＳ方式）による動きベクトル検出方法の説明図である。
【図４３】従来の階層サーチ（ＬＳ方式）における縮小画像の画素値算出方法の説明図である。
【図４４】従来のテレスコピックサーチ（ＴＥＬＳ方式）による動きベクトル検出方法の説明図である。
【図４５】ベクトルによるビット発生量が多いベクトルの一例を示す説明図である。
【図４６】ベクトルによるビット発生量が少ないベクトルの一例を示す説明図である。
【図４７】従来のＭＰＥＧ２方式等で用いられているフレーム／フィールド予測モードの説明図である。
【図４８】従来のＭＰＥＧ２方式等で用いられているフレーム予測動きベクトルおよびフィールド予測動きベクトルの説明図である。
【図４９】従来のＭＰＥＧ２方式等で用いられているフレーム予測動きベクトルおよびフィールド予測動きベクトルの垂直方向の動きベクトルの説明図である。
【符号の説明】
【０１９４】
１，６１，７１  動きベクトル検出装置、２，７２  フレームメモリ群、３，４，７３，７４  縮小画像生成器、５，７５  縮小画像フレームメモリ群、６，７，１１，１２，１５，１６，２０，２１  ブロック化回路、８，１３，１７，２２  ブロックマッチング回路部、９  動きベクトル変換回路、１０，１４，１８  候補ベクトル発生回路、１９  １／２画素画像生成回路、３０  縮小画像動きベクトル検出部、４０  マルチステップサーチ部、４１  第１ステップ動きベクトル検出部、４２  第２ステップ動きベクトル検出部、４３  第３ステップ動きベクトル検出部、６２，６３  ローパスフィルタ
【図１】
2006246527.tif 000005
【図２】
2006246527.tif 000006
【図３】
2006246527.tif 000007
【図４】
2006246527.tif 000008
【図５】
2006246527.tif 000009
【図６】
2006246527.tif 000010
【図７】
2006246527.tif 000011
【図８】
2006246527.tif 000012
【図９】
2006246527.tif 000013
【図１０】
2006246527.tif 000014
【図１１】
2006246527.tif 000015
【図１２】
2006246527.tif 000016
【図１３】
2006246527.tif 000017
【図１４】
2006246527.tif 000018
【図１５】
2006246527.tif 000019
【図１６】
2006246527.tif 000020
【図１７】
2006246527.tif 000021
【図１８】
2006246527.tif 000022
【図１９】
2006246527.tif 000023
【図２０】
2006246527.tif 000024
【図２１】
2006246527.tif 000025
【図２２】
2006246527.tif 000026
【図２３】
2006246527.tif 000027
【図２４】
2006246527.tif 000028
【図２５】
2006246527.tif 000029
【図２６】
2006246527.tif 000030
【図２７】
2006246527.tif 000031
【図２８】
2006246527.tif 000032
【図２９】
2006246527.tif 000033
【図３０】
2006246527.tif 000034
【図３１】
2006246527.tif 000035
【図３２】
2006246527.tif 000036
【図３３】
2006246527.tif 000037
【図３４】
2006246527.tif 000038
【図３５】
2006246527.tif 000039
【図３６】
2006246527.tif 000040
【図３７】
2006246527.tif 000041
【図３８】
2006246527.tif 000042
【図３９】
2006246527.tif 000043
【図４０】
2006246527.tif 000044
【図４１】
2006246527.tif 000045
【図４２】
2006246527.tif 000046
【図４３】
2006246527.tif 000047
【図４４】
2006246527.tif 000048
【図４５】
2006246527.tif 000049
【図４６】
2006246527.tif 000050
【図４７】
2006246527.tif 000051
【図４８】
2006246527.tif 000052
【図４９】
2006246527.tif 000053