(57)【特許請求の範囲】
【請求項１】
入力画像と参照画像との間でブロックマッチングを行うことによって動きベクトルを検出する動きベクトル検出方法において、
前回のブロックマッチング演算処理の実行に要した計算量を、当該ブロックマッチング演算処理を行う際に許容される計算量である許容計算量として算出する計算量算出ステップと、
処理に必要となる計算量と得られる動きベクトルの精度とが相互に異なる複数のブロックマッチング演算処理の中から、求めた前記許容計算量に応じて１つのブロックマッチング演算処理を選択するブロックマッチング選択ステップとを含み、
前記計算量算出ステップで、ブロックマッチング探索において、１つ前に実行したDiamond Search法を用いたブロックマッチングにおけるステップ回数を用いて許容計算量を求め、
前記ブロックマッチング選択ステップで、前記Diamond Search法を用いたブロックマッチングにおけるステップ毎に画像中の所定画素を中心とした場合の探索範囲である探索パターンを前記画像中で随時移動させながら評価関数の値が最小となる画素位置を検出する場合の前記探索パターンを移動させる速度である移動速度を大きくしていくことによってブロックマッチングを行うブロックマッチング演算処理を少なくとも１つ含む複数のブロックマッチング演算処理の中から、１つのブロックマッチング演算処理を選択する
ことを特徴とする動きベクトル検出方法。
【請求項２】
ブロックマッチング選択ステップで、画像の１マクロブロック単位でブロックマッチング演算処理を選択する請求項１に記載の動きベクトル検出方法。
【請求項３】
ブロックマッチング選択ステップで、入力画像の入力ブロックと参照画像の参照ブロックとの画素のうち、代表画素だけをブロックマッチングの対象としてブロックマッチングを行うブロックマッチング演算処理を少なくとも１つ含む複数のブロックマッチング演算処理の中から、１つのブロックマッチング演算処理を選択する請求項１又は請求項２に記載の動きベクトル検出方法。
【請求項４】
選択したブロックマッチング演算処理を実行して、動きベクトルを検出する動きベクトル検出ステップを含む請求項１から請求項３のうちのいずれか１項に記載の動きベクトル検出方法。
【請求項５】
入力画像と参照画像との間でブロックマッチングを行うことによって動きベクトルを検出する動きベクトル検出装置であって、
処理に必要となる計算量と得られる動きベクトルの精度とが相互に異なるブロックマッチング演算処理を行う複数のブロックマッチング演算装置と、
前回のブロックマッチング演算処理の実行に要した計算量を、当該ブロックマッチング演算処理を行う際に許容される計算量である許容計算量として算出し、前記複数のブロックマッチング演算装置の中から、当該許容計算量に応じて、１つのブロックマッチング演算装置を選択するブロックマッチング演算選択装置とを備え、
前記ブロックマッチング演算選択装置は、
ブロックマッチング探索において、１つ前に実行したDiamond Search法を用いたブロックマッチングにおけるステップ回数を用いて許容計算量を求め、
前記Diamond Search法を用いたブロックマッチングにおけるステップ毎に画像中の所定画素を中心とした場合の探索範囲である探索パターンを前記画像中で随時移動させながら評価関数の値が最小となる画素位置を検出する場合の前記探索パターンを移動させる速度である移動速度を大きくしていくことによってブロックマッチングを行うブロックマッチング演算装置を少なくとも１つ含む複数のブロックマッチング演算装置の中から、１つのブロックマッチング演算装置を選択する
ことを特徴とする動きベクトル検出装置。
【請求項６】
ブロックマッチング演算選択装置は、
画像の１ブロック単位でブロックマッチング演算装置の選択を行ない、
前記ブロックマッチング演算装置のうちの少なくとも１つは、入力画像の入力ブロックと参照画像の参照ブロックとの画素のうち、代表画素だけをブロックマッチングの対象としてブロックマッチングを行う
請求項５に記載の動きベクトル検出装置。
【請求項７】
入力画像と参照画像との間でブロックマッチングを行うことによって動きベクトルを検出し、検出した前記動きベクトルを用いて画像を処理する画像処理装置であって、
処理に必要となる計算量と得られる動きベクトルの精度とが相互に異なるブロックマッチング演算処理を行う複数のブロックマッチング演算装置と、
前回のブロックマッチング演算処理の実行に要した計算量を、当該ブロックマッチング演算処理を行う際に許容される計算量である許容計算量として算出し、前記複数のブロックマッチング演算装置の中から、当該許容計算量に応じて、１つのブロックマッチング演算装置を選択するブロックマッチング演算選択装置とを備え、
前記ブロックマッチング演算選択装置は、
ブロックマッチング探索において、１つ前に実行したDiamond Search法を用いたブロックマッチングにおけるステップ回数を用いて許容計算量を求め、
前記Diamond Search法を用いたブロックマッチングにおけるステップ毎に画像中の所定画素を中心とした場合の探索範囲である探索パターンを前記画像中で随時移動させながら評価関数の値が最小となる画素位置を検出する場合の前記探索パターンを移動させる速度である移動速度を大きくしていくことによってブロックマッチングを行うブロックマッチング演算装置を少なくとも１つ含む複数のブロックマッチング演算装置の中から、１つのブロックマッチング演算装置を選択する
備えたことを特徴とする画像処理装置。
【請求項８】
入力画像と参照画像との間でブロックマッチングを行うことによって動きベクトルを検出し、検出した前記動きベクトルを用いて画像を再生する画像再生装置であって、
処理に必要となる計算量と得られる動きベクトルの精度とが相互に異なるブロックマッチング演算処理を行う複数のブロックマッチング演算装置と、
前回のブロックマッチング演算処理の実行に要した計算量を、当該ブロックマッチング演算処理を行う際に許容される計算量である許容計算量として算出し、前記複数のブロックマッチング演算装置の中から、当該許容計算量に応じて、１つのブロックマッチング演算装置を選択するブロックマッチング演算選択装置とを備え、
前記ブロックマッチング演算選択装置は、
ブロックマッチング探索において、１つ前に実行したDiamond Search法を用いたブロックマッチングにおけるステップ回数を用いて許容計算量を求め、
前記Diamond Search法を用いたブロックマッチングにおけるステップ毎に画像中の所定画素を中心とした場合の探索範囲である探索パターンを前記画像中で随時移動させながら評価関数の値が最小となる画素位置を検出する場合の前記探索パターンを移動させる速度である移動速度を大きくしていくことによってブロックマッチングを行うブロックマッチング演算装置を少なくとも１つ含む複数のブロックマッチング演算装置の中から、１つのブロックマッチング演算装置を選択する
ことを特徴とする画像再生装置。
【請求項９】
入力画像と参照画像との間でブロックマッチングを行うことによって動きベクトルを検出するための動きベクトル検出用プログラムであって、
コンピュータに、
前回のブロックマッチング演算処理の実行に要した計算量を、当該ブロックマッチング演算処理を行う際に許容される計算量である許容計算量として算出する計算量算出処理と、
複数のブロックマッチング演算処理の中から、求めた前記許容計算量に応じて１つのブロックマッチング演算処理を選択するブロックマッチング選択処理と、
選択したブロックマッチング演算処理を実行して、動きベクトルを検出する動きベクトル検出処理とを実行させ、
前記計算量算出処理で、ブロックマッチング探索において、１つ前に実行したDiamond Search法を用いたブロックマッチングにおけるステップ回数を用いて許容計算量を求める処理を実行させ、
前記ブロックマッチング選択処理で、前記Diamond Search法を用いたブロックマッチングにおけるステップ毎に画像中の所定画素を中心とした場合の探索範囲である探索パターンを前記画像中で随時移動させながら評価関数の値が最小となる画素位置を検出する場合の前記探索パターンを移動させる速度である移動速度を大きくしていくことによってブロックマッチングを行うブロックマッチング演算処理を少なくとも１つ含む複数のブロックマッチング演算処理の中から、１つのブロックマッチング演算処理を選択する処理を実行させる
ための動きベクトル検出用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像圧縮符号化等に用いられる動きベクトルを検出する動きベクトル検出方法、動きベクトル検出装置及び動きベクトル検出用プログラムに関し、特に符号化効率の低下を抑制しつつ、動きベクトル検出に要する計算量の変動を抑制できる動きベクトル検出方法、動きベクトル検出装置及び動きベクトル検出用プログラムに関する。また、本発明は、動きベクトル検出方法を用いて画像処理を行う画像処理装置に関する。さらに、本発明は、動きベクトル検出方法を用いて画像再生を行う画像再生装置に関する。
【背景技術】
【０００２】
動画像圧縮技術において、入力画像と参照画像との間でブロックマッチングを行なうことによって、動きベクトルを検出するブロックマッチング型動きベクトル検出方法が用いられる。また、ブロックマッチング型動きベクトル検出処理を行う場合、膨大な演算が必要となるため、動きベクトル検出の高速化と効率化とを行う手法が従来から多く開発されている。
【０００３】
例えば、動きベクトル検出処理の高速化を行う方法として、追跡型動きベクトル検出方法がある。追跡型動きベクトル検出方法では、所定の探索パターンに従って画像中の探索開始点から各探索点の評価関数を計算する。そして、探索パターン中心の探索点の評価値が最小になるまで、次の探索パターン中心を評価値が最小の探索点に移動させることにより、動きベクトルを検出する。
【０００４】
追跡型動きベクトル検出の例として、非特許文献１には、Diamond Search法が記載されている。図８は、非特許文献１に記載されたDiamond Search法を用いて動きベクトルを検出する場合の例を示す説明図である。図８に示す例では、まず、探索開始点を原点（０，０）とし、上下左右方向にそれぞれ１画素ずれた点（０，−１），（０，１），（−１，０），（１，０）を探索点として、動きベクトルを探索する第１ステップが行なわれる（図８（ａ）参照）。すなわち、これら４点における評価関数の値を計算し、評価値が最小の探索点に探索パターンの中心が移動される。
【０００５】
例えば、（０，−１）の探索点の評価値が最小である場合、図８（ｂ）に示すように、探索パターンの中心点が（０，−１）に移動される。次に、第２ステップとして、第１ステップと同様に、中心点（０，−１）から上下左右方向にそれぞれ１画素ずれた点を探索点として、動きベクトルの探索が行なわれる。この場合、探索点から下方向にずらした１点（０，０）は、既に第１ステップで評価値の計算を行なっているため、第２ステップの探索では評価値の計算を行わない。そのため、探索点からそれぞれ上左右方向にずらした３点における評価関数の値（評価値）を計算する。
【０００６】
例えば、（−１，１）の探索点の評価値が最小である場合、図８（ｃ）に示すように、、探索パターンの中心点が（１，−１）に移動される。さらに、第３ステップとして、第２ステップと同様に、中心点（０，−１）から上下左右方向にそれぞれ１画素ずれた点を探索点として、動きベクトルの探索が行われる。この場合、探索点から左方向にずらした１点（０，−１）は、既に第２ステップで評価値の計算を行なっているため、第３ステップの探索では評価値の計算を行わない。
【０００７】
以上の処理に従って、探索パターンの中心点が評価関数の値の最小値となるまで、同様の処理が繰り返し実行される。そして、最小点となった探索パターンの中心点を動きベクトルの値とする。
【０００８】
上記に示したDiamond Search法では、計算量を削減するために、評価関数の最小点に到達するまでのステップ回数を削減できるようにすることが重要である。そこで、非特許文献２には、動きベクトル探索の開始点の選択に重点を置き、周囲の動きベクトルから探索開始点を予測することが記載されている。そのようにすることによって、非特許文献２に記載された方法では、評価関数の最小点までの距離を短くし、ステップ回数を削減しようとしている。
【０００９】
非特許文献２に記載された例では、現在の入力ブロックの左方向、上方向、右上方向及び１フレーム前のブロックの動きベクトルを用い、これらの動きベクトルの位置における評価関数の値を計算する。そして、評価値が最小となった点を探索開始点とする。
【００１０】
また、非特許文献３では、中心点からそれぞれ上下左右方向にずらした４点のダイヤモンド形の探索パターンを用いるのではなく、６角形の探索パターンを用いる方法が記載されている。非特許文献３に記載された方法では、６角形の探索パターンを用いることによって、ステップ毎の移動量を大きくし、評価値の最小点に到達するまでのステップ回数を削減しようとしている。
【００１１】
また、特許文献１には、動きベクトルを探索する際の計算量の増加を抑制する方法の一例が記載されている。特許文献１に記載された方法では、４つのチェック条件を用いて動きベクトルを検出する。具体的には、条件１チェック方法として、現入力ブロックについて、中央参照ブロックが差分最小ブロックとなったか否かを判定する。また、条件２チェック方法として、入力ブロックと参照ブロックとの差分絶対値の総和の変化量が、所定の回数連続して一定値以下になったか否かを判定する。また、条件３チェック方法として、入力ブロックと参照ブロックとの差分絶対値の総和が一定値以下になったか否かを判定する。また、条件４チェック方法として、入力ブロックの動きベクトル探索回数が、割り当てられた動きベクトル探索可能回数を超えたか否かを判定する。
【００１２】
特許文献１に記載された追跡型動きベクトル探索方法では、上記に示した４つの条件チェック方式を設け、４つの条件のうちのいずれかをみたしたときに、動きベクトル検出処理を終了させることによって、計算量の増加を低減している。
【００１３】
【特許文献１】特開２００３−８７７９９号公報（段落００３１−００３８、図２）
【非特許文献１】J. Y. Tham, S. Ranganath, M. Ranganath, and A. A. Kassim, "A Novel Unrestricted Center-Biased Diamond Search Algorithm for Block Motion Estimation", IEEE Transactions on Circuits and Systems for Video Technology, Vol.8, No.4, pp.369-377, August,1998.
【非特許文献２】A. M. Tourapis, O. C. Au, and M. L. Liou, "Predictive Motion Vector Field Adaptive Search Technique (PMVFAST) - Enhancing Block Based Motion Estimation", in proceedings of Visual Communications and Image Processing 2001, VCIP-2001, January, 2001.
【非特許文献３】Chun-Ho Cheung, " Novel Cross-Diamond-Hexagonal Search Algorithms for Fast Block Motion Estimation", IEEE Transactions on Multimedia, Vol.7, No.1, pp.16-22, February,2005
【発明の開示】
【発明が解決しようとする課題】
【００１４】
しかし、非特許文献２に記載された方法を用いたとしても、周囲のブロックから予測した探索開始点が評価関数の最小点から離れた位置に選択されたブロックであった場合には、ステップ回数が却って多くなってしまうことがある。特に、動きが激しい入力画像の場合には、このような最小点から離れた位置に選択されたブロックが多く出現するので、計算量が増大する。
【００１５】
また、非特許文献３記載された方法を用いた場合、移動量を大きくするためには、探索パターンが大きくなってしまう。そのため、探索ステップ１回における移動量分の精度の動きベクトルしか検出できず、符号化効率が低下してしまう。また、符号化効率の低下を防ぐために探索点数を増やすと、計算量が増加してしまう。
【００１６】
このように、非特許文献１〜非特許文献３に記載された追跡型動きベクトル検出方法では、動きベクトルを探索する際の計算量が大きく変動する。そのため、動きベクトル検出方法を用いて動きベクトルの検出を行う場合、実時間（例えば、画像再生や画像記録を行う際の実時間）でソフトウエアを用いて処理を行なうと、必要となる計算量がプロセッサ能力を超えることがある。この場合、プロセッサは実時間で動きベクトル検出処理を終了させることができないという問題が発生する。そのため、ソフトウエアを用いて動きベクトル検出処理を実時間で行なう場合、計算量の増加と変動とを抑制する必要がある。
【００１７】
また、追跡型動きベクトル探索手法では、動きベクトルの探索回数が一定ではない。例えば、探索開始点から評価関数の最小点までの距離が大きい場合には、動きベクトル探索のための計算量が増大する。そのため、非特許文献１〜非特許文献３に記載された従来の追跡型動きベクトル検出方法では、動きベクトル探索のための計算量が増大することがある。
【００１８】
また、特許文献１に記載された追跡型動きベクトル探索方法を用いれば、計算量が増加した場合の対策として終了条件を設け、途中で動きベクトルの探索を終了することによって、計算量の増加を低減することができる。しかし、動きベクトル検出のための探索を途中で打ち切るので、符号化効率が高い評価関数の最小値となる動きベクトルを検出することができない。そのため、検出される動きベクトルの精度が低下し、符号化効率が低下してしまうことがある
【００１９】
そこで、本発明は、符号化効率の低下を抑制しつつ、計算量の変動を低減できる動きベクトル検出方法、動きベクトル検出装置、画像処理装置、画像再生装置及び動きベクトル検出用プログラムを提供することを目的とする。
【課題を解決するための手段】
【００２０】
本発明による動きベクトル検出方法は、入力画像と参照画像との間でブロックマッチングを行うことによって動きベクトルを検出する動きベクトル検出方法において、前回のブロックマッチング演算処理の実行に要した計算量を、当該ブロックマッチング演算処理を行う際に許容される計算量である許容計算量として算出する計算量算出ステップと、処理に必要となる計算量と得られる動きベクトルの精度とが相互に異なる複数のブロックマッチング演算処理の中から、求めた許容計算量に応じて１つのブロックマッチング演算処理を選択するブロックマッチング選択ステップとを含み、計算量算出ステップで、ブロックマッチング探索において、１つ前に実行したDiamond Search法を用いたブロックマッチングにおけるステップ回数を用いて許容計算量を求め、ブロックマッチング選択ステップで、Diamond Search法を用いたブロックマッチングにおけるステップ毎に画像中の所定画素を中心とした場合の探索範囲である探索パターンを画像中で随時移動させながら評価関数の値が最小となる画素位置を検出する場合の探索パターンを移動させる速度である移動速度を大きくしていくことによってブロックマッチングを行うブロックマッチング演算処理を少なくとも１つ含む複数のブロックマッチング演算処理の中から、１つのブロックマッチング演算処理を選択することを特徴とする。
【００２１】
また、動きベクトル検出方法は、ブロックマッチング選択ステップで、画像の１マクロブロック単位でブロックマッチング演算処理を選択するものであってもよい。
【００２４】
また、動きベクトル検出方法は、ブロックマッチング選択ステップで、入力画像の入力ブロックと参照画像の参照ブロックとの画素のうち、代表画素だけをブロックマッチングの対象としてブロックマッチングを行うブロックマッチング演算処理を少なくとも１つ含む複数のブロックマッチング演算処理の中から、１つのブロックマッチング演算処理を選択するものであってもよい。
【００２５】
また、動きベクトル検出方法は、選択したブロックマッチング演算処理を実行して、動きベクトルを検出する動きベクトル検出ステップを含むものであってもよい。
【００２６】
本発明による動きベクトル検出装置は、入力画像と参照画像との間でブロックマッチングを行うことによって動きベクトルを検出する動きベクトル検出装置（例えば、ＧＰＵ等の画像処理回路）であって、処理に必要となる計算量と得られる動きベクトルの精度とが相互に異なるブロックマッチング演算処理を行う複数のブロックマッチング演算装置（例えば、ブロックマッチング演算装置１０２によって実現される）と、前回のブロックマッチング演算処理の実行に要した計算量を、当該ブロックマッチング演算処理を行う際に許容される計算量である許容計算量として算出し、複数のブロックマッチング演算装置の中から、当該許容計算量に応じて、１つのブロックマッチング演算装置を選択するブロックマッチング演算選択装置（例えば、ブロックマッチング演算選択装置１０１によって実現される）とを備え、ブロックマッチング演算選択装置は、ブロックマッチング探索において、１つ前に実行したDiamond Search法を用いたブロックマッチングにおけるステップ回数を用いて許容計算量を求め、Diamond Search法を用いたブロックマッチングにおけるステップ毎に画像中の所定画素を中心とした場合の探索範囲である探索パターンを画像中で随時移動させながら評価関数の値が最小となる画素位置を検出する場合の探索パターンを移動させる速度である移動速度を大きくしていくことによってブロックマッチングを行うブロックマッチング演算装置を少なくとも１つ含む複数のブロックマッチング演算装置の中から、１つのブロックマッチング演算装置を選択することを特徴とする。
【００２７】
また、動きベクトル検出装置において、ブロックマッチング演算選択装置は、画像の１ブロック単位でブロックマッチング演算装置の選択を行ない、ブロックマッチング演算装置のうちの少なくとも１つは、入力画像の入力ブロックと参照画像の参照ブロックとの画素のうち、代表画素だけをブロックマッチングの対象としてブロックマッチングを行うものであってもよい。
【００２８】
本発明による画像処理装置は、入力画像と参照画像との間でブロックマッチングを行うことによって動きベクトルを検出し、検出した動きベクトルを用いて画像を処理する画像処理装置（例えば、パーソナルコンピュータ等の情報処理装置）であって、処理に必要となる計算量と得られる動きベクトルの精度とが相互に異なるブロックマッチング演算処理を行う複数のブロックマッチング演算装置と、前回のブロックマッチング演算処理の実行に要した計算量を、当該ブロックマッチング演算処理を行う際に許容される計算量である許容計算量として算出し、複数のブロックマッチング演算装置の中から、当該許容計算量に応じて、１つのブロックマッチング演算装置を選択するブロックマッチング演算選択装置とを備え、ブロックマッチング演算選択装置は、ブロックマッチング探索において、１つ前に実行したDiamond Search法を用いたブロックマッチングにおけるステップ回数を用いて許容計算量を求め、Diamond Search法を用いたブロックマッチングにおけるステップ毎に画像中の所定画素を中心とした場合の探索範囲である探索パターンを画像中で随時移動させながら評価関数の値が最小となる画素位置を検出する場合の探索パターンを移動させる速度である移動速度を大きくしていくことによってブロックマッチングを行うブロックマッチング演算装置を少なくとも１つ含む複数のブロックマッチング演算装置の中から、１つのブロックマッチング演算装置を選択することを特徴とする。
【００２９】
本発明による画像再生装置は、入力画像と参照画像との間でブロックマッチングを行うことによって動きベクトルを検出し、検出した動きベクトルを用いて画像を再生する画像再生装置（例えば、ビデオレコーダやＤＶＤレコーダ）であって、処理に必要となる計算量と得られる動きベクトルの精度とが相互に異なるブロックマッチング演算処理を行う複数のブロックマッチング演算装置と、前回のブロックマッチング演算処理の実行に要した計算量を、当該ブロックマッチング演算処理を行う際に許容される計算量である許容計算量として算出し、複数のブロックマッチング演算装置の中から、当該許容計算量に応じて、１つのブロックマッチング演算装置を選択するブロックマッチング演算選択装置とを備え、ブロックマッチング演算選択装置は、ブロックマッチング探索において、１つ前に実行したDiamond Search法を用いたブロックマッチングにおけるステップ回数を用いて許容計算量を求め、Diamond Search法を用いたブロックマッチングにおけるステップ毎に画像中の所定画素を中心とした場合の探索範囲である探索パターンを画像中で随時移動させながら評価関数の値が最小となる画素位置を検出する場合の探索パターンを移動させる速度である移動速度を大きくしていくことによってブロックマッチングを行うブロックマッチング演算装置を少なくとも１つ含む複数のブロックマッチング演算装置の中から、１つのブロックマッチング演算装置を選択することを特徴とする。
【００３０】
本発明による動きベクトル検出用プログラムは、入力画像と参照画像との間でブロックマッチングを行うことによって動きベクトルを検出するための動きベクトル検出用プログラムであって、コンピュータに、前回のブロックマッチング演算処理の実行に要した計算量を、当該ブロックマッチング演算処理を行う際に許容される計算量である許容計算量として算出する計算量算出処理と、複数のブロックマッチング演算処理の中から、求めた許容計算量に応じて１つのブロックマッチング演算処理を選択するブロックマッチング選択処理と、選択したブロックマッチング演算処理を実行して、動きベクトルを検出する動きベクトル検出処理とを実行させ、計算量算出処理で、ブロックマッチング探索において、１つ前に実行したDiamond Search法を用いたブロックマッチングにおけるステップ回数を用いて許容計算量を求める処理を実行させ、ブロックマッチング選択処理で、Diamond Search法を用いたブロックマッチングにおけるステップ毎に画像中の所定画素を中心とした場合の探索範囲である探索パターンを画像中で随時移動させながら評価関数の値が最小となる画素位置を検出する場合の探索パターンを移動させる速度である移動速度を大きくしていくことによってブロックマッチングを行うブロックマッチング演算処理を少なくとも１つ含む複数のブロックマッチング演算処理の中から、１つのブロックマッチング演算処理を選択する処理を実行させるためのものである。
【００３１】
上記のような構成を採用し、ブロックマッチング演算選択装置が使用可能な演算量に応じて、最も高符号化効率のブロックマッチング演算装置を選択することにより、符号化効率の低下を抑制しつつ、計算量の変動を低減できるようにするという本発明の目的を達成することができる。
【発明の効果】
【００３２】
本発明によれば、複数のブロックマッチング演算処理のうち、許容計算量に応じて１つのブロックマッチング演算処理を選択する。許容計算量に応じて最適なブロックマッチング演算処理を選択できるので、ブロックマッチング探索を途中で打ち切ることなく、動きベクトルの探索を最後まで行なうことができる。従って、符号化効率の低下を抑制しつつ、動きベクトル検出に要する計算量の変動を低減することができる。
【００３３】
また、本発明によれば、最適なブロックマッチング演算処理を選択でるので、動きベクトルの探索を速く終了できる。そのため、動きベクトル検出に要する平均計算量を削減することができる。
【発明を実施するための最良の形態】
【００３４】
以下、本発明の実施の形態について図面を参照して説明する。図１は、本発明による動きベクトル検出装置の構成の一例を示すブロック図である。図１に示すように、動きベクトル検出装置１００は、は、ブロックマッチング演算選択装置１０１と、複数のブロックマッチング演算装置１０２−１〜１０２−ｎと、入力画像メモリ１０３と、参照画像メモリ１０４と、使用計算量保存メモリ１０５を含む。
【００３５】
なお、動きベクトル検出装置１００は、具体的には、コンピュータ（中央処理装置；プロセッサ；データ処理装置）及びメモリ等の記憶装置によって実現される。また、以下、複数のブロックマッチング演算装置１０２−１〜１０２−ｎを包括的に表現する場合、または、いずれかのブロックマッチング演算装置１０２−１〜１０２−ｎを指す場合に、単にブロックマッチング演算装置１０２とも表現する。
【００３６】
本実施の形態において、動きベクトル検出装置１００は、例えば、動画処理を行う画像処理回路（例えば、ＧＰＵ）として適用される。また、動きベクトル検出装置１００は、例えば、動画処理を行う画像処理装置に適用される。この場合、動きベクトル検出装置１００を用いた画像処理装置は、例えば、プログラムに従って動作するパーソナルコンピュータ等の情報処理装置によって実現される。また、動きベクトル検出装置１００は、例えば、画像処理技術を用いて画像再生や画像記録を行うビデオレコーダやＤＶＤレコーダ等の画像再生装置や画像記録装置に適用される。
【００３７】
ブロックマッチング演算選択装置１０１は、具体的には、プログラムに従って動作するコンピュータによって実現される。マッチング演算選択装置１０１は、使用計算量保存メモリ１０５から、使用計算量を読み出す機能を備える。また、ブロックマッチング演算選択装置１０１は、読み出した計算量を用いて、複数のマッチング演算装置１０２の中から、１つのマッチング演算装置を選択する機能を備える。すなわち、ブロックマッチング演算選択装置１０１は、複数のブロックマッチング演算装置１０２のうち、動きベクトル検出におけるブロックマッチングに用いるブロックマッチング演算装置１０２を決定する。
【００３８】
複数のマッチング装置１０２は、それぞれ、具体的には、プログラムに従って動作するコンピュータによって実現される。各ブロックマッチング演算装置１０２は、符号化対象となる入力画像のブロックと参照画像のブロックとのブロックマッチングを行なう機能を備える。この場合、各ブロックマッチング演算装置１０２は、相互に異なるマッチング方法を用いて、入力画像と参照画像とのブロックマッチングを行う。また、ブロックマッチング演算装置１０２は、入力画像と参照画像とのブロックマッチングを行うと、ブロックマッチングの計算に要した計算量を求める機能を備える。また、ブロックマッチング演算装置１０２は、求めた計算量を使用計算量保存メモリ１０５に記憶させる機能を備える。
【００３９】
入力画像メモリ１０３は、具体的には、メモリ等の記憶装置によって実現される。入力画像メモリ１０３は、符号化対象となる入力画像のブロックを保存する。なお、入力画像メモリ１０３が記憶する入力画像は、ブロックマッチングが必要なときにブロックマッチング演算装置１０２によって読み出される。
【００４０】
参照画像メモリ１０４は、具体的には、メモリ等の記憶装置によって実現される。参照画像メモリ１０４は、符号化対象となる入力画像のブロックとブロックマッチングを行なうために必要となる参照画像（例えば、過去に入力した画像）を保存する。なお、参照画像メモリ１０４が記憶する参照画像は、ブロックマッチングが必要なときにブロックマッチング演算装置１０２によって読み出される。
【００４１】
使用計算量保存メモリ１０５は、具体的には、メモリ等の記憶装置によって実現される。使用計算量保存メモリ１０５は、現在の入力画像のブロックにおいてブロックマッチングに要した計算量を保存する。なお、使用計算量保存メモリ１０５が記憶する計算量（以下、マッチング計算量ともいう）は、ブロックマッチングの処理が行われたときにブロックマッチング演算装置１０２によって書き込まれる。また、使用計算量保存メモリ１０５が記憶するマッチング計算量は、次のブロックマッチングの際に、ブロックマッチングで許容される計算量の評価値として利用される。
【００４２】
なお、動きベクトル検出装置１００や、動きベクトル検出装置１００を用いた画像処理装置、画像再生装置、画像記録装置の記憶装置（例えば、メモリや磁気ディスク装置）は、入力画像と参照画像とのブロックマッチングを行って動きベクトルを検出するための各種プログラムを記憶している。例えば、動きベクトル検出装置１００や画像処理装置、画像再生装置、画像記録装置の記憶装置は、コンピュータに、ブロックマッチング演算処理を行う際に許容される計算量である許容計算量を算出する処理と、複数のブロックマッチング演算処理の中から、求めた許容計算量に応じて１つのブロックマッチング演算処理を選択する処理と、選択したブロックマッチング演算処理を実行して、動きベクトルを検出する処理とを実行させるための動きベクトル検出用プログラムを記憶している。
【００４３】
次に、動作について説明する。図２は、動きベクトル検出装置が入力画像と参照画像とのブロックマッチングを行って動きベクトルを検出する動きベクトル検出処理の一例を示す流れ図である。なお、図２に示す動きベクトル検出処理は、例えば、画像再生を行う際や画像記録を行う際に、動きベクトル検出装置１００によって実行される。
【００４４】
動きベクトル検出処理において、ブロックマッチング演算選択装置１０１は、まず、使用計算量保存メモリ１０５が記憶するマッチング計算量（前回のマッチング処理で要した計算量）を読み出す。ブロックマッチング演算選択装置１０１は、使用計算量保存メモリ１０５から計算量を読み出すことによって、現ブロックにおけるマッチング処理で使用可能な計算量を得る（ステップＳ１１）。なお、この場合、ブロックマッチング演算選択装置１０１は、読み出したマッチング計算量に所定の演算を施すことによって、現ブロックにおけるマッチング処理で使用可能な計算量（許容計算量）を算出してもよい。
【００４５】
ブロックマッチング演算選択装置１０１は、ステップＳ１１で得た使用可能な計算量に基づいて、複数のブロックマッチング演算装置１０２のうち、ブロックマッチングに最適なブロックマッチング演算装置１０２を１つ選択する（ステップＳ１２）。なお、具体的には、動きベクトル検出装置１００を実現するコンピュータが、複数のマッチング方法のうち、入力画像と参照画像とのブロックマッチングに用いる１つのマッチング方法を選択する。
【００４６】
例えば、動きベクトル検出装置は、処理に必要となる計算量とブロックマッチング演算装置１０２とを対応付けた対応テーブルを予めメモリ等の記憶装置に記憶している。この場合、ブロックマッチング演算選択装置１０１は、対応テーブルに含まれる計算量のうち、ステップＳ１１で得た計算量に合致する計算量を特定する。そして、ブロックマッチング演算選択装置１０１は、対応テーブルに含まれるブロックマッチング演算装置１０２のうち、特定した計算量に対応するブロックマッチング演算装置１０２を選択する。
【００４７】
ステップＳ１２において、ブロックマッチング演算選択装置１０１は、例えば、使用可能な計算量が大きい場合には、高精度にブロックマッチングを行うブロックマッチング演算装置１０２を選択する。また、ブロックマッチング演算選択装置１０１は、例えば、使用可能な計算量が小さい場合には、処理内容がより簡略化され計算量が少なくて済むブロックマッチングを行うブロックマッチング演算装置１０２を選択する。
【００４８】
次に、ブロックマッチング演算選択装置１０１によって選択されたブロックマッチング装置１０２に、入力画像メモリ１０３から入力画像が転送される。すなわち、ブロックマッチング演算装置１０２は、ブロックマッチング演算選択装置１０１によって選択されると、入力画像メモリ１０３から入力画像を読み込む（ステップＳ１３）。
【００４９】
さらに、ブロックマッチング演算選択装置１０１によって選択されたブロックマッチング装置１０２に、ブロックマッチングで必要となる参照画像が参照画像メモリ１０４から転送される。すなわち、ブロックマッチング演算装置１０２は、ブロックマッチング演算選択装置１０１によって選択されると、参照画像メモリ１０４から参照画像を読み込む（ステップＳ１４）。
【００５０】
ブロックマッチング演算装置１０２は、読み込んだ入力画像と参照画像とのブロックマッチング演算を行ない、所定のマッチング方法を用いて動きベクトルを検出する（ステップＳ１５）。また、ブロックマッチング演算装置１０２は、ブロックマッチング演算に要した所要計算量（マッチング計算量）を算出する。
【００５１】
そして、ブロックマッチング演算装置１０２は、使用計算量保存メモリ１０５に、算出した所要計算量（マッチング計算量）を保存させる（ステップＳ１６）。また、ブロックマッチング演算装置１０２は、算出した動きベクトルを出力する。この場合、例えば、ブロックマッチング演算装置１０２は、画像再生や画像記録を行うプログラムに、算出した動きベクトルを渡す。そして、動きベクトル検出装置１００が求めた動きベクトルに基づいて、画像再生や画像記録の処理が行われることになる。
【００５２】
以上のように、本実施の形態によれば、動きベクトル検出装置１００は、ブロックマッチングの処理に使用可能な計算量に応じて、複数のブロックマッチング演算装置１０２のうち、最適なブロックマッチング演算装置１０２を選択する。そして、動きベクトル検出装置１００は、選択したブロックマッチング演算装置１０２を用いて、ブロックマッチング演算を行い動きベクトルを検出する。従って、符号化効率の低下を防ぎつつ、計算量の変動を低減して、動きベクトルを検出することができる。
【実施例】
【００５３】
次に、動きベクトル検出装置１００のより具体的な動作を説明する。まず、動きベクトル検出装置１００のブロックマッチング演算選択装置１０１の具体的な動作を説明する。図３は、ブロックマッチング演算選択装置１０１が行うブロックマッチング演算装置１０２のマッチング選択処理の具体例を示す流れ図である。
【００５４】
ブロックマッチング演算選択装置１０１は、例えば、図３に示すように、まず、使用計算量保存メモリ１０５からマッチング計算量を読み出し、使用可能な計算量を算出する（ステップＳ２１）。
【００５５】
ブロックマッチング演算選択装置１０１は、求めた使用可能な計算量が所定の範囲（以下、単に中程度ともいう）である場合、所定レベルの精度（以下、単に通常の精度ともいう）及び所定の計算量（以下、単に中程度の計算量ともいう）で、動きベクトルを求めるブロックマッチング演算を選択する。
【００５６】
また、ブロックマッチング演算選択装置１０１は、使用可能な計算量が中程度より小さければ、通常の精度より精度が落ちるものの中程度より少なくて済む計算量で、動きベクトルの検出処理を終了するブロックマッチング演算を選択する。
【００５７】
また、ブロックマッチング演算選択装置１０１は、使用可能な計算量が中程度より大きければ、通常処理（中程度）よりも計算量が大きくなるものの通常の精度より高精度で、動きベクトルを求めるブロックマッチング演算を選択する（ステップＳ２２）。
【００５８】
以上のように、ブロックマッチング演算選択装置１０１は、計算量に応じてブロックマッチング演算を選択する。そのため、非特許文献１〜非特許文献３に記載された従来技術では計算量が増大する場合であっても、途中で処理を打ち切ることなく、評価関数の最小点まで動きベクトルの探索を行なえる。従って、符号化効率の低下を防ぎつつ、計算量が増大することを防ぐことができる。
【００５９】
また、ブロックマッチング演算選択装置１０１は、例えば、ブロックマッチングの選択を行なう処理単位を、ブロックマッチングの１ステップ単位で行なう装置であってもよい。図４は、ブロックマッチング演算装置１０２の選択をブロックマッチングのステップ単位で行う場合のマッチング選択処理の具体例を示す流れ図である。
【００６０】
具体的には、図４に示すように、ブロックマッチング演算選択装置１０１は、まず、入力画像上の探索ブロックの探索位置を更新する（ステップＳ３１）。次に、ブロックマッチング演算選択装置１０１は、使用計算量保存メモリ１０５からマッチング計算量を読み出し、１ステップの探索で使用可能な計算量を算出する（ステップＳ３２）。
【００６１】
ブロックマッチング演算選択装置１０１は、求めた使用可能な計算量が中程度である場合、通常の精度及び中程度の計算量で、動きベクトルを求めるブロックマッチング演算を選択する。また、ブロックマッチング演算選択装置１０１は、使用可能な計算量が中程度より小さければ、通常の精度より精度が落ちるものの中程度より少なくて済む計算量で、動きベクトルの検出処理を終了するブロックマッチング演算を選択する。また、ブロックマッチング演算選択装置１０１は、使用可能な計算量が中程度より大きければ、通常処理（中程度）よりも計算量が大きくなるものの通常の精度より高精度で、動きベクトルを求めるブロックマッチング演算を選択する（ステップＳ３３）。
【００６２】
次に、ブロックマッチング演算選択装置１０１は、このステップにおける探索終了判断において探索終了と判断すれば（評価値が最小となる点が求まると）、このブロックにおける探索を終了する（ステップＳ３４）。また、ブロックマッチング演算選択装置１０１は、探索が終了していないと判断すると、ステップＳ３１に戻って探索位置を更新し探索を継続する。すなわち、ブロックマッチング演算選択装置１０１は、探索が終了したと判断するまで、ステップＳ３１〜Ｓ３４の処理を繰り返し実行する。なお、この場合、ブロックマッチング演算選択装置１０１は、この１ステップの探索で求めた計算量を利用して、次のステップにおけるブロックマッチング演算装置１０２の選択を行う。
【００６３】
また、ブロックマッチング演算選択装置１０１は、例えば、ブロックマッチングの選択を行なう処理単位を、１画面単位で行なう装置であってもよい。図５は、ブロックマッチング演算装置１０２の選択を画面単位で行う場合のマッチング選択処理の具体例を示す流れ図である。
【００６４】
具体的には、図５に示すように、ブロックマッチング演算選択装置１０１は、まず、使用計算量保存メモリ１０５からマッチング計算量を読み出し、入力画面における使用可能な計算量の算出を行なう（ステップＳ４１）。次に、ブロックマッチング演算選択装置１０１は、入力画像上の探索ブロックの探索位置の更新を行なう（ステップＳ４２）。
【００６５】
ブロックマッチング演算選択装置１０１は、ステップＳ４１で求めた使用可能な計算量が中程度である場合、通常の精度及び中程度の計算量で、動きベクトルを求めるブロックマッチング演算を選択する。また、ブロックマッチング演算選択装置１０１は、使用可能な計算量が中程度より小さければ、通常の精度より精度が落ちるものの中程度より少なくて済む計算量で、動きベクトルの検出処理を終了するブロックマッチング演算を選択する。また、ブロックマッチング演算選択装置１０１は、使用可能な計算量が中程度より大きければ、通常処理（中程度）よりも計算量が大きくなるものの通常の精度より高精度で、動きベクトルを求めるブロックマッチング演算を選択する（ステップＳ４３）。
【００６６】
次に、ブロックマッチング演算選択装置１０１は、入力画像（動画像）の１画面分の探索処理を終了したか否か判断する（ステップＳ４４）。１画面分の探索が終了していなければ、ブロックマッチング演算選択装置１０１は、探索を終了し、ステップＳ４２に戻って探索位置を更新する。そして、ブロックマッチング演算選択装置１０１は、ステップＳ４２〜Ｓ４４の処理を繰り返し実行し、再度同じブロックマッチング演算を用いて探索を行なう。
【００６７】
次に、ブロックマッチング処理を行う際の使用可能な計算量を算出する具体的な算出方法を説明する。ブロックマッチング演算選択装置１０１は、例えば、ブロックマッチング処理を１マクロブロック単位で行なう場合に、前回のブロックマッチングで用いたステップ回数に基づいて、ブロックマッチング処理に使用可能な計算量を算出する装置であってもよい。また、ブロックマッチング演算選択装置１０１は、例えば、ブロックマッチング処理を１画面単位で行なう場合に、前画面で用いたステップ回数に基づいて、ブロックマッチング処理に使用可能な計算量を算出する装置であってもよい。
【００６８】
また、ブロックマッチング演算選択装置１０１は、例えば、ブロックマッチング処理を１マクロブロック単位で行なう場合に、入力マクロブロックの平滑さに基づいて、ブロックマッチング処理に使用可能な計算量を算出する装置であってもよい。また、ブロックマッチング演算選択装置１０１は、例えば、ブロックマッチング処理を１画面単位で行なう場合に、入力画像の平滑さに基づいて、ブロックマッチング処理に使用可能な計算量を算出する装置であってもよい。
【００６９】
また、ブロックマッチング演算選択装置１０１は、例えば、ブロックマッチング処理を１ステップ単位で行なう場合に、ブロックマッチング処理における前ステップまでに用いたステップ回数に基づいて、ブロックマッチング処理に使用可能な計算量を算出する装置であってもよい。また、ブロックマッチング演算選択装置１０１は、例えば、ブロックマッチング処理を１ステップ単位で行なう場合に、ブロックマッチング処理の２ステップ前における評価関数値の最小値と１ステップ前における評価関数値の最小値との差分に基づいて、ブロックマッチング処理に使用可能な計算量を算出する装置であってもよい。
【００７０】
また、ブロックマッチング演算選択装置１０１は、例えば、ブロック単位でブロックマッチング演算の選択を行なう場合において、前回のブロックマッチングにおける探索開始点から評価関数の最小点までの距離に基づいて、ブロックマッチング処理に使用可能な計算量を算出する装置であってもよい。また、ブロックマッチング演算選択装置１０１は、例えば、ブロック単位でブロックマッチング演算の選択を行なう場合において、周囲ベクトルにおける探索ステップ数に基づいて、ブロックマッチング処理に使用可能な計算量をを算出する算出装置であってもよい。また、ブロックマッチング演算選択１０１は、例えば、１画面単位でブロックマッチング演算の選択を行なう場合において、前１画面における探索開始点から評価関数の最小点までの距離の総和に基づいて、ブロックマッチング処理に使用可能な計算量を算出する装置であってもよい。
【００７１】
次に、ブロックマッチング演算装置１０２の具体的な動作を説明する。複数のブロックマッチング演算装置１０２は、例えば、１回の探索に必要となる計算量そのものを削減するために、入力ブロックと参照ブロックとの画素のうち、代表画素だけをブロックマッチングの対象とする装置であってもよい。図６は、８×８画素のブロックから４×４画素だけを抽出してブロックマッチングを行なう場合の例を示す説明図である。図６に示すように、ブロックマッチング演算装置１０２は、入力画像と参照画像との代表画素だけを対象としてブロックマッチング処理を行ってもよい。
【００７２】
また、複数のブロックマッチング演算装置１０２の中のいずれか１つのブロックマッチング演算装置１０２は、例えば、図８に示したDiamond Search法を用いてブロックマッチング処理を行う装置であってもよい。
【００７３】
また、複数のブロックマッチング演算装置１０２の中のいずれか１つのブロックマッチング演算装置１０２は、図７に示すように、１回の探索を行なう毎に、探索パターンを拡大（中心点から探索点までの距離を長く）する装置であってもよい。そのようにすることによって、ブロックマッチング演算装置１０２は、探索開始点から評価関数の最小点まで移動する際の移動加速度を向上させることができる。
【００７４】
具体的には、探索開始点を原点（０，０）とすると、ブロックマッチング演算装置１０２は、上下左右方向にそれぞれ１画素ずれた点（０，−１），（０，１），（−１，０），（０，１）を探索点として探索を行う（図７（ａ）参照）。ブロックマッチング演算装置１０２は、これら探索点４点における評価関数の値を計算し、評価値が一番小さい探索点に探索パターンの中心を移動する。例えば、探索点（０，−１）の評価値が一番小さい場合、ブロックマッチング演算装置１０２は、探索パターンの中心点を（０，−１）に移動する。
【００７５】
また、ブロックマッチング演算装置１０２は、次のステップの探索において、上下左右方向にそれぞれ２画素ずれた点を探索点とする探索パターンを用いて探索を行う（図７（ｂ）参照）。さらに、ブロックマッチング演算装置１０２は、次のステップの探索において、上下左右方向にそれぞれ３画素ずれた点を探索点とする探索パターンを用いて探索を行う（図７（ｃ）参照）。以上の処理に従って、ブロックマッチング演算装置１０２は、探索パターンの中心点が評価関数の値の最小値になるまで、同様の処理を繰り返し実行する。そして、ブロックマッチング演算装置１０２は、評価関数の値が最小となった位置に基づいて動きベクトルを求める。
【００７６】
また、複数のブロックマッチング演算装置１０２の中のいずれか１つのブロックマッチング演算装置１０２は、１回の探索を行なう毎に、探索パターンを拡大・縮小する装置であってもよい。
【００７７】
また、複数のブロックマッチング演算装置１０２の中のいずれか１つのブロックマッチング演算装置１０２は、１回の探索を行なう毎に、探索パターンを拡大・縮小し、その拡大・縮小の選択を前回のステップでの評価関数の最小値と今回のステップでの評価関数の最小値との差分から求める装置であってもよい。
【００７８】
また、動きベクトル検出装置１００は、上記に示した各具体例に種々の変更を加えたり、追加したり、又は組合わせたものであってもよい。例えば、複数のブロックマッチング演算装置１０２の中の１つは、図７に示すように、１回の探索を行なう毎に探索パターンを拡大し、探索開始点から評価関数の最小点まで移動する際の移動加速度を向上させた装置であるとする。この場合、ブロックマッチング演算選択装置１０１は、ブロックマッチング処理をブロック単位で行なう場合に、前回のブロックマッチングで用いたステップ回数に基づいて、使用可能な計算量を算出する装置であってもよい。
【００７９】
また、例えば、複数のブロックマッチング演算装置１０２の中の１つは、図７に示すように、１回の探索を行なう毎に探索パターンを拡大し、探索開始点から評価関数の最小点まで移動する際の移動加速度を向上させた装置であるとする。この場合、複数のブロックマッチング演算装置１０２の中の他の１つは、１回の探索を行なう毎に探索パターンを拡大し、探索開始点から評価関数の最小点まで移動する際の移動加速度を向上させるとともに、入力ブロックと参照ブロックとの画素のうち代表画素だけをブロックマッチングの対象とする装置であってもよい。
【００８０】
また、例えば、複数のブロックマッチング演算装置１０２の中の１つは、図７に示すように、１回の探索を行なう毎に探索パターンを拡大し、探索開始点から評価関数の最小点まで移動する際の移動加速度を向上させた装置であるとする。この場合、複数のブロックマッチング演算装置１０２の中の他の１つは、１回の探索を行なう毎に探索パターンを拡大し、探索開始点から評価関数の最小点まで移動する際の移動加速度を向上させるとともに、入力ブロックと参照ブロックとの画素のうち代表画素だけをブロックマッチングの対象とする装置であってもよい。また、ブロックマッチング演算選択装置１０１は、ブロックマッチング処理をブロック単位で行なう場合に、前回のブロックマッチングで用いたステップ回数に基づいて、使用可能な計算量を算出する装置であってもよい。
【産業上の利用可能性】
【００８１】
本発明は、動画処理を行う画像処理回路（例えば、ＧＰＵ）として適用される。また、パーソナルコンピュータ等を用いて動画処理を行う画像処理装置に適用可能できる。また、画像処理技術を用いて画像再生や画像記録を行うビデオレコーダやＤＶＤレコーダ等の画像再生装置又は画像記録装置にも適応可能である。
【図面の簡単な説明】
【００８２】
【図１】本発明による動きベクトル検出装置の構成の一例を示すブロック図である。
【図２】動きベクトル検出装置が入力画像と参照画像とのブロックマッチングを行って動きベクトルを検出する動きベクトル検出処理の一例を示す流れ図である。
【図３】ブロックマッチング演算選択装置が行うブロックマッチング演算装置１０２のマッチング選択処理の具体例を示す流れ図である。
【図４】ブロックマッチング演算装置の選択をブロックマッチングのステップ単位で行う場合のマッチング選択処理の具体例を示す流れ図である。
【図５】ブロックマッチング演算装置の選択を画面単位で行う場合のマッチング選択処理の具体例を示す流れ図である。
【図６】８×８画素のブロックから４×４画素だけを抽出してブロックマッチングを行なう場合の例を示す説明図である。
【図７】１回の探索を行なう毎に探索パターンを拡大してブロックマッチングを行なう場合の例を示す説明図である。
【図８】Diamond Search法を用いて動きベクトルを検出する場合の例を示す説明図である。
【符号の説明】
【００８３】
１００  動きベクトル検出装置
１０１  ブロックマッチング演算選択装置
１０２  ブロックマッチング演算装置
１０３  入力画像メモリ
１０４  参照画像メモリ
１０５  使用計算量保存メモリ
【図１】
0004670688.tif 000002
【図２】
0004670688.tif 000003
【図３】
0004670688.tif 000004
【図４】
0004670688.tif 000005
【図５】
0004670688.tif 000006
【図６】
0004670688.tif 000007
【図７】
0004670688.tif 000008
【図８】
0004670688.tif 000009