(57)【要約】【課題】小規模で、マッチングの対象とする範囲のサイズや形状を可変にすることができる。【解決手段】差分絶対値部２１の演算部は、注目画素と、基本探索範囲を構成する各画素の差分の絶対値を、注目画素ごとに演算することにより、マッチングを行う。加算部２２は、差分の絶対値を、その差分の絶対値の演算に用いられる画素の基本探索範囲内の位置ごとに加算し、その基本探索範囲内の位置ごとの加算結果をマッチングに対する各評価値とする。マッチング制御部１１は、評価ブロックを構成する画素の数または位置の少なくともいずれか１つに基づいて、加算部２２を制御する。本発明は、例えば、マッチングを行う画像処理装置に適用することができる。【選択図】図１
2008108045.tif 000002
【特許請求の範囲】
【請求項１】
マッチングの基準となる基準画像のうちの、予め設定されている所定のサイズの範囲である基本ブロックを構成する各画素を、マッチングの対象として注目する注目画素とし、その注目画素と、前記マッチングにおいて参照される参照画像のうちの、前記注目画素に対応する、予め設定されている所定のサイズの範囲である基本探索範囲とのマッチングを行う画像処理装置において、
１以上の基本ブロックからなる評価ブロックを構成する各画素を、前記基本ブロック単位で順に、前記注目画素に決定する決定手段と、
前記基準画像のうちの前記注目画素を出力する注目画素出力手段と、
前記参照画像のうちの前記注目画素に対応する前記基本探索範囲を出力する探索範囲出力手段と、
前記注目画素と、前記基本探索範囲を構成する各画素の差分の絶対値を、前記注目画素ごとに演算することにより、前記マッチングを行う差分演算手段と、
前記差分の絶対値を、その差分の絶対値の演算に用いられる画素の前記基本探索範囲内の位置ごとに加算し、その基本探索範囲内の位置ごとの加算結果を前記マッチングに対する各評価値とする加算手段と、
前記各評価値に基づいて処理を行う処理手段と、
前記評価ブロックを構成する画素の数または位置の少なくともいずれか１つに基づいて、前記加算手段を制御する制御手段と
を備える画像処理装置。
【請求項２】
前記評価ブロックは、複数の前記基本ブロックから構成され、
前記制御手段は、前記評価ブロックを構成する基本ブロックの数に基づいて、前記評価ブロックを構成する全ての画素が前記注目画素とされ、全ての前記注目画素の差分の絶対値が加算されるまで、前記加算手段に供給する前記加算手段をリセットするためのリセット信号をオフにし、全ての前記注目画素の差分の絶対値が加算されたとき、前記リセット信号をオンにし、
前記加算手段は、前記リセット信号がオンであるとき、前記各評価値を出力してリセットし、前記リセット信号がオフであるときリセットしない
請求項１に記載の画像処理装置。
【請求項３】
前記評価ブロックは、前記基本ブロックの一部の画素から構成され、
前記制御手段は、前記評価ブロックを構成する各画素の前記基本ブロック内の位置に基づいて、前記基本ブロックを構成する画素のうち、前記評価ブロックを構成する画素が前記注目画素とされたときの差分の絶対値が加算されるとき、前記加算の有を表す加算有信号を前記加算手段に供給し、それ以外の画素が前記注目画素とされたときの差分の絶対値が加算されるとき、前記加算の無を表す加算無信号を前記加算手段に供給し、
前記加算手段は、前記制御手段から前記加算有信号が供給されるとき前記差分の絶対値を加算し、前記加算無信号が供給されるとき前記差分の絶対値を加算しない
請求項１に記載の画像処理装置。
【請求項４】
前記評価ブロックは、複数の前記基本ブロックの一部の画素から構成され、
前記制御手段は、さらに、前記評価ブロックを構成する基本ブロックの数に基づいて、前記評価ブロックを構成する全ての基本ブロックの全ての画素が前記注目画素とされ、前記評価ブロックを構成する全ての画素の差分の絶対値が加算されるまで、前記加算手段に供給する前記加算手段をリセットするためのリセット信号をオフにし、前記評価ブロックを構成する全ての画素の差分の絶対値が加算されたとき、前記リセット信号をオンにし、
前記加算手段は、前記リセット信号がオンであるとき、前記各評価値を出力してリセットし、前記リセット信号がオフであるときリセットしない
請求項３に記載の画像処理装置。
【請求項５】
前記評価ブロックの形状を表す画像パターンに基づいて、前記評価ブロックを構成する前記基本ブロックの数と、前記評価ブロックを構成する画素の前記基本ブロック内の位置とを表す評価ブロック情報を生成する生成手段と、
前記制御手段は、前記評価ブロック情報を構成する前記基本ブロックの数または前記基本ブロック内の位置の少なくともいずれか１つに基づいて、前記加算手段を制御する
請求項１に記載の画像処理装置。
【請求項６】
マッチングの基準となる基準画像のうちの、予め設定されている所定のサイズの範囲である基本ブロックを構成する各画素を、マッチングの対象として注目する注目画素とし、その注目画素と、前記マッチングにおいて参照される参照画像のうちの、前記注目画素に対応する、予め設定されている所定のサイズの範囲である基本探索範囲とのマッチングを行う画像処理装置の画像処理方法において、
１以上の基本ブロックからなる評価ブロックを構成する各画素を、前記基本ブロック単位で順に、前記注目画素に決定し、
前記基準画像のうちの前記注目画素を出力し、
前記参照画像のうちの前記注目画素に対応する前記基本探索範囲を出力し、
前記注目画素と、前記基本探索範囲を構成する各画素の差分の絶対値を、前記注目画素ごとに演算することにより、前記マッチングを行い、
前記差分の絶対値を、その差分の絶対値の演算に用いられる画素の前記基本探索範囲内の位置ごとに加算し、その基本探索範囲内の位置ごとの加算結果を前記マッチングに対する各評価値とし、
前記各評価値に基づいて処理を行い、
前記評価ブロックを構成する画素の数または位置の少なくともいずれか１つに基づいて、前記加算を制御する
ステップを含む画像処理方法。
【請求項７】
マッチングの基準となる基準画像のうちの、予め設定されている所定のサイズの範囲である基本ブロックを構成する各画素を、マッチングの対象として注目する注目画素とし、その注目画素と、前記マッチングにおいて参照される参照画像のうちの、前記注目画素に対応する、予め設定されている所定のサイズの範囲である基本探索範囲とのマッチングを行う処理を、コンピュータに行わせるプログラムにおいて、
１以上の基本ブロックからなる評価ブロックを構成する各画素を、前記基本ブロック単位で順に、前記注目画素に決定し、
前記基準画像のうちの前記注目画素を出力し、
前記参照画像のうちの前記注目画素に対応する前記基本探索範囲を出力し、
前記注目画素と、前記基本探索範囲を構成する各画素の差分の絶対値を、前記注目画素ごとに演算することにより、前記マッチングを行い、
前記差分の絶対値を、その差分の絶対値の演算に用いられる画素の前記基本探索範囲内の位置ごとに加算し、その基本探索範囲内の位置ごとの加算結果を前記マッチングに対する各評価値とし、
前記各評価値に基づいて処理を行い、
前記評価ブロックを構成する画素の数または位置の少なくともいずれか１つに基づいて、前記加算を制御する
ステップを含むプログラム。
【請求項８】
マッチングの基準となる基準画像のうちの、予め設定されている所定のサイズの範囲である基本ブロックを構成する各画素を、マッチングの対象として注目する注目画素とし、その注目画素と、前記マッチングにおいて参照される参照画像のうちの、前記注目画素に対応する、予め設定されている所定のサイズの範囲である基本探索範囲とのマッチングを行う画像処理装置において、
前記基本ブロックを構成する各画素を順に、前記注目画素に決定する決定手段と、
前記基準画像のうちの前記注目画素を出力する注目画素出力手段と、
前記参照画像のうちの、前記注目画素に対応する１以上の前記基本探索範囲からなる評価探索範囲を、前記基本探索範囲単位で出力する探索範囲出力手段と、
前記注目画素と、前記評価探索範囲を構成する各画素の差分の絶対値を、前記基本探索範囲単位で前記注目画素ごとに演算することにより、前記マッチングを行う差分演算手段と、
前記差分の絶対値を、その差分の絶対値の演算に用いられる画素の前記評価探索範囲内の位置ごとに前記基本探索範囲単位で加算し、その評価探索範囲内の位置ごとの加算結果を前記マッチングに対する各評価値として、前記基本探索範囲単位で出力する加算手段と、
前記各評価値に基づいて処理を行う処理手段と、
前記評価探索範囲を構成する画素の数または位置の少なくともいずれか１つに基づいて、前記処理手段を制御する制御手段と
を備える画像処理装置。
【請求項９】
前記評価探索範囲は、複数の前記基本探索範囲から構成され、
前記制御手段は、前記評価探索範囲を構成する基本探索範囲の数に基づいて、前記評価探索範囲を構成する全ての基本探索範囲の評価値に基づく処理が行われるまで、前記処理手段に供給する前記処理手段をリセットするためのリセット信号をオフにし、全ての前記基本探索範囲の評価値に基づく処理が行われたとき、前記リセット信号をオンにし、
前記処理手段は、前記リセット信号がオンであるときリセットし、前記リセット信号がオフであるときリセットしない
請求項８に記載の画像処理装置。
【請求項１０】
前記評価探索範囲は、前記基本探索範囲の一部の画素から構成され、
前記制御手段は、前記評価探索範囲を構成する各画素の前記基本探索範囲内の位置に基づいて、前記基本探索範囲内の位置ごとの各評価値のうち、前記評価探索範囲を構成する各画素の位置ごとの評価値に基づく処理が行われるとき、前記処理の有を表す処理有信号を前記処理手段に供給し、それ以外の画素の位置ごとの評価値に基づく処理が行われるとき、前記処理の無を表す処理無信号を前記処理手段に供給し、
前記処理手段は、前記制御手段から前記処理有信号が供給されるとき前記処理を行い、前記処理無信号が供給されるとき前記処理を行わない
請求項８に記載の画像処理装置。
【請求項１１】
前記評価探索範囲は、複数の前記基本探索範囲の一部の画素から構成され、
前記制御手段は、さらに、前記評価探索範囲を構成する基本探索範囲の数に基づいて、前記評価探索範囲を構成する全ての画素の位置ごとの評価値に基づく処理が行われるまで、前記処理手段に供給する前記処理手段をリセットするためのリセット信号をオフにし、前記評価探索範囲を構成する全ての画素の位置ごとの評価値に基づく処理が行われたとき、前記リセット信号をオンにし、
前記処理手段は、前記リセット信号がオンであるときリセットし、前記リセット信号がオフであるときリセットしない
請求項１０に記載の画像処理装置。
【請求項１２】
前記評価探索範囲の形状を表す画像パターンに基づいて、前記評価探索範囲を構成する前記基本探索範囲の数と、前記評価探索範囲を構成する画素の前記基本探索範囲内の位置とを表す評価探索範囲情報を生成する生成手段と、
前記制御手段は、前記評価探索範囲情報を構成する前記基本探索範囲の数または前記基本探索範囲内の位置の少なくともいずれか１つに基づいて、前記処理手段を制御する
請求項８に記載の画像処理装置。
【請求項１３】
マッチングの基準となる基準画像のうちの、予め設定されている所定のサイズの範囲である基本ブロックを構成する各画素を、マッチングの対象として注目する注目画素とし、その注目画素と、前記マッチングにおいて参照される参照画像のうちの、前記注目画素に対応する、予め設定されている所定のサイズの範囲である基本探索範囲とのマッチングを行う画像処理装置の画像処理方法において、
前記基本ブロックを構成する各画素を順に、前記注目画素に決定し、
前記基準画像のうちの前記注目画素を出力し、
前記参照画像のうちの、前記注目画素に対応する１以上の前記基本探索範囲からなる評価探索範囲を、前記基本探索範囲単位で出力し、
前記注目画素と、前記評価探索範囲を構成する各画素の差分の絶対値を、前記基本探索範囲単位で前記注目画素ごとに演算することにより、前記マッチングを行い、
前記差分の絶対値を、その差分の絶対値の演算に用いられる画素の前記評価探索範囲内の位置ごとに前記基本探索範囲単位で加算し、その評価探索範囲内の位置ごとの加算結果を前記マッチングに対する各評価値として、前記基本探索範囲単位で出力し、
前記各評価値に基づいて処理を行い、
前記評価探索範囲を構成する画素の数または位置の少なくともいずれか１つに基づいて、前記処理を制御する
ステップを含む画像処理方法。
【請求項１４】
マッチングの基準となる基準画像のうちの、予め設定されている所定のサイズの範囲である基本ブロックを構成する各画素を、マッチングの対象として注目する注目画素とし、その注目画素と、前記マッチングにおいて参照される参照画像のうちの、前記注目画素に対応する、予め設定されている所定のサイズの範囲である基本探索範囲とのマッチングを行う処理を、コンピュータに行わせるプログラムにおいて、
前記基本ブロックを構成する各画素を順に、前記注目画素に決定し、
前記基準画像のうちの前記注目画素を出力し、
前記参照画像のうちの、前記注目画素に対応する１以上の前記基本探索範囲からなる評価探索範囲を、前記基本探索範囲単位で出力し、
前記注目画素と、前記評価探索範囲を構成する各画素の差分の絶対値を、前記基本探索範囲単位で前記注目画素ごとに演算することにより、前記マッチングを行い、
前記差分の絶対値を、その差分の絶対値の演算に用いられる画素の前記評価探索範囲内の位置ごとに前記基本探索範囲単位で加算し、その評価探索範囲内の位置ごとの加算結果を前記マッチングに対する各評価値として、前記基本探索範囲単位で出力し、
前記各評価値に基づいて処理を行い、
前記評価探索範囲を構成する画素の数または位置の少なくともいずれか１つに基づいて、前記処理を制御する
ステップを含むプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および画像処理方法、並びにプログラムに関し、特に、小規模で、マッチングの対象とする範囲のサイズや形状を可変にすることができるようにした画像処理装置および画像処理方法、並びにプログラムに関する。
【背景技術】
【０００２】
従来、動画像から動きベクトルを検出する手法として、ブロックマッチング法が一般的に用いられている。このブロックマッチング法においては、性能を低下させずに、処理量を小さくした方法の実現が望まれている。
【０００３】
そこで、例えば、マッチングの基準となる基準画像と、そのマッチングにおいて参照される参照画像の残差に応じて、マッチングにおいて探索する参照画像の範囲を抑制し、これにより、消費電力を抑制する動きベクトル検出装置が考案されている(例えば、特許文献１参照)。
【０００４】
また、基準画像の周波数成分などの特徴を表す情報に応じて、基準画像と参照画像のマッチングの対象とする画素をそれぞれ間引くことにより、消費電力を低減する動きベクトル検出装置がある(例えば、特許文献２参照)。
【０００５】
一方、精度の高い動きベクトルを求めるために、ブロックマッチング法において、基準画像内の動きベクトルを求める範囲である評価ブロックに、適切な特徴を有する画素が含まれるように、基準画像ごとに評価ブロックのサイズや形状を変更することが望まれている。
【０００６】
また、ブロックマッチング法においては、評価ブロックのサイズや形状だけでなく、評価ブロックの中の１つの画素に対して探索する参照画像の範囲である探索範囲のサイズや形状、評価ブロックどうしの間隔、評価ブロックの数などの、その他のマッチングに関するパラメータを、基準画像ごとに可変にすることにより、精度の高い動きベクトルを求めることができる。
【０００７】
【特許文献１】特開２０００−７８５８０号公報
【０００８】
【特許文献２】特開平１１−１３６６８２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、上述したように、マッチングの対象となる評価ブロックまたは探索範囲のサイズや形状を可変にするためには、各サイズや形状に対応する回路を設ける必要があり、マッチングを行う装置の規模が増大してしまう。従って、小規模な装置では、評価ブロックまたは探索範囲のサイズや形状が制限される。即ち、小規模な装置で、評価ブロックまたは探索範囲のサイズや形状を可変にすることは困難であった。
【００１０】
本発明は、このような状況に鑑みてなされたものであり、小規模で、マッチングの対象とする範囲のサイズや形状を可変にすることができるようにするものである。
【課題を解決するための手段】
【００１１】
本発明の第１の側面の画像処理装置は、マッチングの基準となる基準画像のうちの、予め設定されている所定のサイズの範囲である基本ブロックを構成する各画素を、マッチングの対象として注目する注目画素とし、その注目画素と、前記マッチングにおいて参照される参照画像のうちの、前記注目画素に対応する、予め設定されている所定のサイズの範囲である基本探索範囲とのマッチングを行う画像処理装置において、１以上の基本ブロックからなる評価ブロックを構成する各画素を、前記基本ブロック単位で順に、前記注目画素に決定する決定手段と、前記基準画像のうちの前記注目画素を出力する注目画素出力手段と、前記参照画像のうちの前記注目画素に対応する前記基本探索範囲を出力する探索範囲出力手段と、前記注目画素と、前記基本探索範囲を構成する各画素の差分の絶対値を、前記注目画素ごとに演算することにより、前記マッチングを行う差分演算手段と、前記差分の絶対値を、その差分の絶対値の演算に用いられる画素の前記基本探索範囲内の位置ごとに加算し、その基本探索範囲内の位置ごとの加算結果を前記マッチングに対する各評価値とする加算手段と、前記各評価値に基づいて処理を行う処理手段と、前記評価ブロックを構成する画素の数または位置の少なくともいずれか１つに基づいて、前記加算手段を制御する制御手段とを備える。
【００１２】
本発明の第１の側面の画像処理装置は、前記評価ブロックが、複数の前記基本ブロックから構成される場合、前記制御手段は、前記評価ブロックを構成する基本ブロックの数に基づいて、前記評価ブロックを構成する全ての画素が前記注目画素とされ、全ての前記注目画素の差分の絶対値が加算されるまで、前記加算手段に供給する前記加算手段をリセットするためのリセット信号をオフにし、全ての前記注目画素の差分の絶対値が加算されたとき前記リセット信号をオンにし、前記加算手段は、前記リセット信号がオンであるとき、前記各評価値を出力してリセットし、前記リセット信号がオフであるときリセットしないことができる。
【００１３】
本発明の第１の側面の画像処理装置は、前記評価ブロックが、前記基本ブロックの一部の画素から構成される場合、前記制御手段は、前記評価ブロックを構成する各画素の前記基本ブロック内の位置に基づいて、前記基本ブロックを構成する画素のうち、前記評価ブロックを構成する画素が前記注目画素とされたときの差分の絶対値が加算されるとき、前記加算の有を表す加算有信号を前記加算手段に供給し、それ以外の画素が前記注目画素とされたときの差分の絶対値が加算されるとき、前記加算の無を表す加算無信号を前記加算手段に供給し、前記加算手段は、前記制御手段から前記加算有信号が供給されるとき前記差分の絶対値を加算し、前記加算無信号が供給されるとき前記差分の絶対値を加算しないことができる。
【００１４】
本発明の第１の側面の画像処理装置は、前記評価ブロックが、複数の前記基本ブロックの一部の画素から構成される場合、前記制御手段は、さらに、前記評価ブロックを構成する基本ブロックの数に基づいて、前記評価ブロックを構成する全ての基本ブロックの全ての画素が前記注目画素とされ、前記評価ブロックを構成する全ての画素の差分の絶対値が加算されるまで、前記加算手段に供給する前記加算手段をリセットするためのリセット信号をオフにし、前記評価ブロックを構成する全ての画素の差分の絶対値が加算されたとき、前記リセット信号をオンにし、前記加算手段は、前記リセット信号がオンであるとき、前記各評価値を出力してリセットし、前記リセット信号がオフであるときリセットしないことができる。
【００１５】
本発明の第１の側面の画像処理装置は、前記評価ブロックの形状を表す画像パターンに基づいて、前記評価ブロックを構成する前記基本ブロックの数と、前記評価ブロックを構成する画素の前記基本ブロック内の位置とを表す評価ブロック情報を生成する生成手段と、前記制御手段は、前記評価ブロック情報を構成する前記基本ブロックの数または前記基本ブロック内の位置の少なくともいずれか１つに基づいて、前記加算手段を制御することができる。
【００１６】
本発明の第１の側面の画像処理方法は、マッチングの基準となる基準画像のうちの、予め設定されている所定のサイズの範囲である基本ブロックを構成する各画素を、マッチングの対象として注目する注目画素とし、その注目画素と、前記マッチングにおいて参照される参照画像のうちの、前記注目画素に対応する、予め設定されている所定のサイズの範囲である基本探索範囲とのマッチングを行う画像処理装置の画像処理方法において、１以上の基本ブロックからなる評価ブロックを構成する各画素を、前記基本ブロック単位で順に、前記注目画素に決定し、前記基準画像のうちの前記注目画素を出力し、前記参照画像のうちの前記注目画素に対応する前記基本探索範囲を出力し、前記注目画素と、前記基本探索範囲を構成する各画素の差分の絶対値を、前記注目画素ごとに演算することにより、前記マッチングを行い、前記差分の絶対値を、その差分の絶対値の演算に用いられる画素の前記基本探索範囲内の位置ごとに加算し、その基本探索範囲内の位置ごとの加算結果を前記マッチングに対する各評価値とし、前記各評価値に基づいて処理を行い、前記評価ブロックを構成する画素の数または位置の少なくともいずれか１つに基づいて、前記加算を制御するステップを含む。
【００１７】
本発明の第１の側面のプログラムは、マッチングの基準となる基準画像のうちの、予め設定されている所定のサイズの範囲である基本ブロックを構成する各画素を、マッチングの対象として注目する注目画素とし、その注目画素と、前記マッチングにおいて参照される参照画像のうちの、前記注目画素に対応する、予め設定されている所定のサイズの範囲である基本探索範囲とのマッチングを行う処理を、コンピュータに行わせるプログラムにおいて、１以上の基本ブロックからなる評価ブロックを構成する各画素を、前記基本ブロック単位で順に、前記注目画素に決定し、前記基準画像のうちの前記注目画素を出力し、前記参照画像のうちの前記注目画素に対応する前記基本探索範囲を出力し、前記注目画素と、前記基本探索範囲を構成する各画素の差分の絶対値を、前記注目画素ごとに演算することにより、前記マッチングを行い、前記差分の絶対値を、その差分の絶対値の演算に用いられる画素の前記基本探索範囲内の位置ごとに加算し、その基本探索範囲内の位置ごとの加算結果を前記マッチングに対する各評価値とし、前記各評価値に基づいて処理を行い、前記評価ブロックを構成する画素の数または位置の少なくともいずれか１つに基づいて、前記加算を制御するステップを含む。
【００１８】
本発明の第２の側面の画像処理装置は、マッチングの基準となる基準画像のうちの、予め設定されている所定のサイズの範囲である基本ブロックを構成する各画素を、マッチングの対象として注目する注目画素とし、その注目画素と、前記マッチングにおいて参照される参照画像のうちの、前記注目画素に対応する、予め設定されている所定のサイズの範囲である基本探索範囲とのマッチングを行う画像処理装置において、前記基本ブロックを構成する各画素を順に、前記注目画素に決定する決定手段と、前記基準画像のうちの前記注目画素を出力する注目画素出力手段と、前記参照画像のうちの、前記注目画素に対応する１以上の前記基本探索範囲からなる評価探索範囲を、前記基本探索範囲単位で出力する探索範囲出力手段と、前記注目画素と、前記評価探索範囲を構成する各画素の差分の絶対値を、前記基本探索範囲単位で前記注目画素ごとに演算することにより、前記マッチングを行う差分演算手段と、前記差分の絶対値を、その差分の絶対値の演算に用いられる画素の前記評価探索範囲内の位置ごとに前記基本探索範囲単位で加算し、その評価探索範囲内の位置ごとの加算結果を前記マッチングに対する各評価値として、前記基本探索範囲単位で出力する加算手段と、前記各評価値に基づいて処理を行う処理手段と、前記評価探索範囲を構成する画素の数または位置の少なくともいずれか１つに基づいて、前記処理手段を制御する制御手段とを備える。
【００１９】
本発明の第２の側面の画像処理装置は、前記評価探索範囲が、複数の前記基本探索範囲から構成される場合、前記制御手段は、前記評価探索範囲を構成する基本探索範囲の数に基づいて、前記評価探索範囲を構成する全ての基本探索範囲の評価値に基づく処理が行われるまで、前記処理手段に供給する前記処理手段をリセットするためのリセット信号をオフにし、全ての前記基本探索範囲の評価値に基づく処理が行われたとき、前記リセット信号をオンにし、前記処理手段は、前記リセット信号がオンであるときリセットし、前記リセット信号がオフであるときリセットしないことができる。
【００２０】
本発明の第２の側面の画像処理装置は、前記評価探索範囲が、前記基本探索範囲の一部の画素から構成される場合、前記制御手段は、前記評価探索範囲を構成する各画素の前記基本探索範囲内の位置に基づいて、前記基本探索範囲内の位置ごとの各評価値のうち、前記評価探索範囲を構成する各画素の位置ごとの評価値に基づく処理が行われるとき、前記処理の有を表す処理有信号を前記処理手段に供給し、それ以外の画素の位置ごとの評価値に基づく処理が行われるとき、前記処理の無を表す処理無信号を前記処理手段に供給し、前記処理手段は、前記制御手段から前記処理有信号が供給されるとき前記処理を行い、前記処理無信号が供給されるとき前記処理を行わないことができる。
【００２１】
本発明の第２の側面の画像処理装置は、前記評価探索範囲が、複数の前記基本探索範囲の一部の画素から構成される場合、前記制御手段は、さらに、前記評価探索範囲を構成する基本探索範囲の数に基づいて、前記評価探索範囲を構成する全ての画素の位置ごとの評価値に基づく処理が行われるまで、前記処理手段に供給する前記処理手段をリセットするためのリセット信号をオフにし、前記評価探索範囲を構成する全ての画素の位置ごとの評価値に基づく処理が行われたとき、前記リセット信号をオンにし、前記処理手段は、前記リセット信号がオンであるときリセットし、前記リセット信号がオフであるときリセットしないことができる。
【００２２】
本発明の第２の側面の画像処理装置は、前記評価探索範囲の形状を表す画像パターンに基づいて、前記評価探索範囲を構成する前記基本探索範囲の数と、前記評価探索範囲を構成する画素の前記基本探索範囲内の位置とを表す評価探索範囲情報を生成する生成手段と、前記制御手段は、前記評価探索範囲情報を構成する前記基本探索範囲の数または前記基本探索範囲内の位置の少なくともいずれか１つに基づいて、前記処理手段を制御することができる。
【００２３】
本発明の第２の側面の画像処理方法は、マッチングの基準となる基準画像のうちの、予め設定されている所定のサイズの範囲である基本ブロックを構成する各画素を、マッチングの対象として注目する注目画素とし、その注目画素と、前記マッチングにおいて参照される参照画像のうちの、前記注目画素に対応する、予め設定されている所定のサイズの範囲である基本探索範囲とのマッチングを行う画像処理装置の画像処理方法において、前記基本ブロックを構成する各画素を順に、前記注目画素に決定し、前記基準画像のうちの前記注目画素を出力し、前記参照画像のうちの、前記注目画素に対応する１以上の前記基本探索範囲からなる評価探索範囲を、前記基本探索範囲単位で出力し、前記注目画素と、前記評価探索範囲を構成する各画素の差分の絶対値を、前記基本探索範囲単位で前記注目画素ごとに演算することにより、前記マッチングを行い、前記差分の絶対値を、その差分の絶対値の演算に用いられる画素の前記評価探索範囲内の位置ごとに前記基本探索範囲単位で加算し、その評価探索範囲内の位置ごとの加算結果を前記マッチングに対する各評価値として、前記基本探索範囲単位で出力し、前記各評価値に基づいて処理を行い、前記評価探索範囲を構成する画素の数または位置の少なくともいずれか１つに基づいて、前記処理を制御するステップを含む。
【００２４】
本発明の第２の側面のプログラムは、マッチングの基準となる基準画像のうちの、予め設定されている所定のサイズの範囲である基本ブロックを構成する各画素を、マッチングの対象として注目する注目画素とし、その注目画素と、前記マッチングにおいて参照される参照画像のうちの、前記注目画素に対応する、予め設定されている所定のサイズの範囲である基本探索範囲とのマッチングを行う処理を、コンピュータに行わせるプログラムにおいて、前記基本ブロックを構成する各画素を順に、前記注目画素に決定し、前記基準画像のうちの前記注目画素を出力し、前記参照画像のうちの、前記注目画素に対応する１以上の前記基本探索範囲からなる評価探索範囲を、前記基本探索範囲単位で出力し、前記注目画素と、前記評価探索範囲を構成する各画素の差分の絶対値を、前記基本探索範囲単位で前記注目画素ごとに演算することにより、前記マッチングを行い、前記差分の絶対値を、その差分の絶対値の演算に用いられる画素の前記評価探索範囲内の位置ごとに前記基本探索範囲単位で加算し、その評価探索範囲内の位置ごとの加算結果を前記マッチングに対する各評価値として、前記基本探索範囲単位で出力し、前記各評価値に基づいて処理を行い、前記評価探索範囲を構成する画素の数または位置の少なくともいずれか１つに基づいて、前記処理を制御するステップを含む。
【００２５】
本発明の第１の側面においては、マッチングの基準となる基準画像のうちの、予め設定されている所定のサイズの範囲である基本ブロックの１以上からなる評価ブロックを構成する各画素が、前記基本ブロック単位で順に、前記注目画素に決定され、前記基準画像のうちの前記注目画素が出力され、前記マッチングにおいて参照される参照画像のうちの、前記注目画素に対応する、予め設定されている所定のサイズの範囲である基本探索範囲が出力され、前記注目画素と、前記基本探索範囲を構成する各画素の差分の絶対値が、前記注目画素ごとに演算されることにより、前記マッチングが行われ、前記差分の絶対値が、その差分の絶対値の演算に用いられる画素の前記基本探索範囲内の位置ごとに加算され、その基本探索範囲内の位置ごとの加算結果が前記マッチングに対する各評価値とされ、前記各評価値に基づいて処理が行われる。なお、前記評価ブロックを構成する画素の数または位置の少なくともいずれか１つに基づいて、前記加算は制御される。
【００２６】
本発明の第２の側面においては、マッチングの基準となる基準画像のうちの、予め設定されている所定のサイズの範囲である基本ブロックを構成する各画素が順に、前記注目画素に決定され、前記基準画像のうちの前記注目画素が出力され、前記マッチングにおいて参照される参照画像のうちの、前記注目画素に対応する、予め設定されている所定のサイズの範囲である基本探索範囲の１以上からなる評価探索範囲が、前記基本探索範囲単位で出力され、前記注目画素と、前記評価探索範囲を構成する各画素の差分の絶対値が、前記基本探索範囲単位で前記注目画素ごとに演算されることにより、前記マッチングが行われ、前記差分の絶対値が、その差分の絶対値の演算に用いられる画素の前記評価探索範囲内の位置ごとに前記基本探索範囲単位で加算され、その評価探索範囲内の位置ごとの加算結果が前記マッチングに対する各評価値として、前記基本探索範囲単位で出力され、前記各評価値に基づいて処理が行われる。なお、前記評価探索範囲を構成する画素の数または位置の少なくともいずれか１つに基づいて、前記処理は制御される。
【発明の効果】
【００２７】
以上のように、本発明の第１と第２の側面によれば、マッチングを行うことができる。
【００２８】
また、本発明の第１と第２の側面によれば、小規模で、マッチングの対象とする範囲のサイズや形状を可変にすることができる。
【発明を実施するための最良の形態】
【００２９】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書又は図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書又は図面に記載されていることを確認するためのものである。従って、明細書又は図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００３０】
本発明の第１の側面の画像処理装置は、
マッチングの基準となる基準画像のうちの、予め設定されている所定のサイズの範囲である基本ブロックを構成する各画素を、マッチングの対象として注目する注目画素とし、その注目画素と、前記マッチングにおいて参照される参照画像のうちの、前記注目画素に対応する、予め設定されている所定のサイズの範囲である基本探索範囲とのマッチングを行う画像処理装置(例えば、図１の画像処理装置１)において、
１以上の基本ブロックからなる評価ブロックを構成する各画素を、前記基本ブロック単位で順に、前記注目画素に決定する決定手段(例えば、図１のメモリ制御部１２)と、
前記基準画像のうちの前記注目画素を出力する注目画素出力手段(例えば、図１のメモリ１３)と、
前記参照画像のうちの前記注目画素に対応する前記基本探索範囲を出力する探索範囲出力手段(例えば、図３のシフトレジスタ６２)と、
前記注目画素と、前記基本探索範囲を構成する各画素の差分の絶対値を、前記注目画素ごとに演算することにより、前記マッチングを行う差分演算手段(例えば、図３の演算部６３)と、
前記差分の絶対値を、その差分の絶対値の演算に用いられる画素の前記基本探索範囲内の位置ごとに加算し、その基本探索範囲内の位置ごとの加算結果を前記マッチングに対する各評価値とする加算手段(例えば、図１の加算部２２)と、
前記各評価値に基づいて処理を行う処理手段（例えば、図１のベクトル決定部２３）と、
前記評価ブロックを構成する画素の数または位置の少なくともいずれか１つに基づいて、前記加算手段を制御する制御手段(例えば、図１のマッチング制御部１１)と
を備える。
【００３１】
本発明の第１の側面の画像処理装置は、
前記評価ブロックの形状を表す画像パターンに基づいて、前記評価ブロックを構成する前記基本ブロックの数と、前記評価ブロックを構成する画素の前記基本ブロック内の位置とを表す評価ブロック情報を生成する生成手段(例えば、図６７のブロックフラグ生成部８１１)と、
前記制御手段は、前記評価ブロック情報を構成する前記基本ブロックの数または前記基本ブロック内の位置の少なくともいずれか１つに基づいて、前記加算手段を制御する。
【００３２】
本発明の第１の側面の画像処理方法は、
マッチングの基準となる基準画像のうちの、予め設定されている所定のサイズの範囲である基本ブロックを構成する各画素を、マッチングの対象として注目する注目画素とし、その注目画素と、前記マッチングにおいて参照される参照画像のうちの、前記注目画素に対応する、予め設定されている所定のサイズの範囲である基本探索範囲とのマッチングを行う画像処理装置(例えば、図１の画像処理装置１)の画像処理方法において、
１以上の基本ブロックからなる評価ブロックを構成する各画素を、前記基本ブロック単位で順に、前記注目画素に決定し（例えば、図２９のステップＳ１２）、
前記基準画像のうちの前記注目画素を出力し(例えば、図２９のステップＳ１６)、
前記参照画像のうちの前記注目画素に対応する前記基本探索範囲を出力し(例えば、図２９のステップＳ１５)、
前記注目画素と、前記基本探索範囲を構成する各画素の差分の絶対値を、前記注目画素ごとに演算することにより、前記マッチングを行い(例えば、図２９のステップＳ１７)、
前記差分の絶対値を、その差分の絶対値の演算に用いられる画素の前記基本探索範囲内の位置ごとに加算し、その基本探索範囲内の位置ごとの加算結果を前記マッチングに対する各評価値とし(例えば、図２９のステップＳ１８と図３０のステップＳ２２)、
前記各評価値に基づいて処理を行い(例えば、図３０のステップＳ２３)、
前記評価ブロックを構成する画素の数または位置の少なくともいずれか１つに基づいて、前記加算を制御する(例えば、図３０のステップＳ２１)
ステップを含む。
【００３３】
本発明の第２の側面の画像処理装置は、
マッチングの基準となる基準画像のうちの、予め設定されている所定のサイズの範囲である基本ブロックを構成する各画素を、マッチングの対象として注目する注目画素とし、その注目画素と、前記マッチングにおいて参照される参照画像のうちの、前記注目画素に対応する、予め設定されている所定のサイズの範囲である基本探索範囲とのマッチングを行う画像処理装置(例えば、図４８の画像処理装置５０１)において、
前記基本ブロックを構成する各画素を順に、前記注目画素に決定する決定手段(例えば、図４８のメモリ制御部１２)と、
前記基準画像のうちの前記注目画素を出力する注目画素出力手段(例えば、図４８のメモリ１３)と、
前記参照画像のうちの、前記注目画素に対応する１以上の前記基本探索範囲からなる評価探索範囲を、前記基本探索範囲単位で出力する探索範囲出力手段(例えば、図４８の差分絶対値部２１の図３のシフトレジスタ６２)と、
前記注目画素と、前記評価探索範囲を構成する各画素の差分の絶対値を、前記基本探索範囲単位で前記注目画素ごとに演算することにより、前記マッチングを行う差分演算手段(例えば、図４８の差分絶対値部２１の図３の演算部６３)と、
前記差分の絶対値を、その差分の絶対値の演算に用いられる画素の前記評価探索範囲内の位置ごとに前記基本探索範囲単位で加算し、その評価探索範囲内の位置ごとの加算結果を前記マッチングに対する各評価値として、前記基本探索範囲単位で出力する加算手段(例えば、図４８の加算部２２)と、
前記各評価値に基づいて処理を行う処理手段(例えば、図４８のベクトル決定部２３)と、
前記評価探索範囲を構成する画素の数または位置の少なくともいずれか１つに基づいて、前記処理手段を制御する制御手段(例えば、図４８のマッチング制御部５１１)と
を備える。
【００３４】
本発明の第２の側面の画像処理装置は、
前記評価探索範囲の形状を表す画像パターンに基づいて、前記評価探索範囲を構成する前記基本探索範囲の数と、前記評価探索範囲を構成する画素の前記基本探索範囲内の位置とを表す評価探索範囲情報を生成する生成手段(例えば、図６７の探索範囲フラグ生成部８１２)と、
前記制御手段は、前記評価探索範囲情報を構成する前記基本探索範囲の数または前記基本探索範囲内の位置の少なくともいずれか１つに基づいて、前記処理手段を制御する。
【００３５】
本発明の第２の側面の画像処理方法は、
マッチングの基準となる基準画像のうちの、予め設定されている所定のサイズの範囲である基本ブロックを構成する各画素を、マッチングの対象として注目する注目画素とし、その注目画素と、前記マッチングにおいて参照される参照画像のうちの、前記注目画素に対応する、予め設定されている所定のサイズの範囲である基本探索範囲とのマッチングを行う画像処理装置(例えば、図４８の画像処理装置５０１)の画像処理方法において、
前記基本ブロックを構成する各画素を順に、前記注目画素に決定し(例えば、図５４のステップＳ１０２)、
前記基準画像から前記注目画素を抽出し(例えば、図５４のステップＳ１０６)、
前記参照画像から、前記注目画素に対応する１以上の前記基本探索範囲からなる評価探索範囲を、前記基本探索範囲単位で抽出し(例えば、図５４のステップＳ１０４)、
前記注目画素と、前記評価探索範囲を構成する各画素の差分の絶対値を、前記基本探索範囲単位で前記注目画素ごとに演算することにより、前記マッチングを行い(例えば、図５４のステップＳ１０７)、
前記差分の絶対値を、その差分の絶対値の演算に用いられる画素の前記評価探索範囲内の位置ごとに前記基本探索範囲単位で加算し、その評価探索範囲内の位置ごとの加算結果を前記マッチングに対する各評価値として、前記基本探索範囲単位で出力し(例えば、図５５のステップＳ１１１)、
各評価値に基づいて処理を行い(例えば、図５５のステップＳ１１２)、
前記評価探索範囲を構成する画素の数または位置の少なくともいずれか１つに基づいて、前記処理を制御する(例えば、図５５のステップＳ１１５)
ステップを含む。
【００３６】
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。
【００３７】
図１は、本発明を適用した画像処理装置の第１の実施の形態の構成例を示すブロック図である。
【００３８】
図１の画像処理装置１は、マッチング制御部１１、メモリ制御部１２、メモリ１３、およびマッチング演算部１４により構成され、入力画像どうしのマッチングを行い、そのマッチングに対する評価値に応じて、入力画像の動きベクトルを決定する。
【００３９】
マッチング制御部１１には、図示せぬ他の装置からマッチングの開始指示と、マッチングに関するパラメータ(以下、マッチングパラメータという)が供給される。マッチング制御部１１に供給されるマッチングパラメータは、メモリ１３に入力画像として入力されるマッチングの基準となる基準画像上の評価ブロックの位置(以下、マッチング位置という)、評価ブロックを構成する基本ブロックの数（以下、基本ブロック数という）、評価ブロック数、および隣り合う評価ブロックどうしの間隔(以下、マッチング間隔という)により構成される。
【００４０】
なお、基本ブロックとは、画像処理装置１においてマッチングの対象とする基準画像の単位として予め設定されているサイズおよび形状の範囲である。
【００４１】
マッチング制御部１１は、マッチングの開始指示に応じて、入力画像の読出指示をメモリ制御部１２に供給する。また、マッチング制御部１１は、マッチングパラメータのマッチング位置とマッチング間隔に基づいて、評価ブロックを構成する基本ブロックの先頭の画素(例えば、左上の画素)の位置の座標(以下、ブロック位置情報という)を生成する。
【００４２】
このように、マッチング制御部１１は、マッチング位置とマッチング間隔に基づいてブロック位置情報を生成するので、後述するメモリ１３が、ブロック位置情報に対応するアドレスにしたがって画素を読み出すことにより、任意のマッチング位置とマッチング間隔でマッチングを行うことができる。
【００４３】
また、マッチング制御部１１は、ブロック位置情報に基づいて、メモリ１３に入力画像として入力される、マッチングにおいて参照される参照画像のうちの、基本ブロックの全ての画素に対応する基本探索範囲を構成する全ての画素からなる探索画素群の先頭の画素の位置(例えば、左上の画素)の座標(以下、探索位置情報という)を生成する。なお、基本探索範囲とは、画像処理装置１において探索範囲のサイズや形状として予め設定されているサイズや形状の範囲である。マッチング制御部１１は、ブロック位置情報と探索位置情報をメモリ制御部１２に供給する。
【００４４】
さらに、マッチング制御部１１は、マッチングパラメータの基本ブロック数と評価ブロック数に基づいて、後述するマッチング演算部１４の加算部２２をリセットするための信号である加算用リセット信号を加算部２２に供給する。また、マッチング制御部１１は、マッチングパラメータの評価ブロック数に基づいて、後述するマッチング演算部１４のベクトル決定部２３をリセットするための信号である最小評価値用リセット信号を、ベクトル決定部２３に供給する。
【００４５】
メモリ制御部１２は、マッチング制御部１１から供給される読出開始の指示に応じて、評価ブロックを構成する各画素を基本ブロック単位で順次、マッチングの対象として注目する注目画素に決定する。メモリ制御部１２は、マッチング制御部１１から供給されるブロック位置情報に基づいて、注目画素が記憶されているメモリ１３上のアドレスをメモリ１３に供給する。
【００４６】
また、メモリ制御部１２は、マッチング制御部１１から供給される読出開始の指示と探索位置情報に基づいて、探索画素群を構成する画素が記憶されているメモリ１３上のアドレスをメモリ１３に供給する。さらに、メモリ制御部１２は、後述するマッチング演算部１４のベクトル決定部２３から出力される動きベクトルの同期信号を出力する。
【００４７】
メモリ１３には、図示せぬ外部の装置から基準画像と参照画像が入力画像として入力され、メモリ１３は、基準画像と参照画像を記憶する。また、メモリ１３は、メモリ制御部１２から供給されるアドレスにしたがって、注目画素と探索画素群を構成する画素を読み出し、マッチング演算部１４に供給する。
【００４８】
マッチング演算部１４は、差分絶対値部２１、加算部２２、およびベクトル決定部２３により構成される。
【００４９】
差分絶対値部２１は、メモリ１３から供給される注目画素と探索画素群を構成する画素とに基づいて、注目画素と、その注目画素に対応する基本探索範囲の各画素の差分の絶対値を演算し、加算部２２に供給する。
【００５０】
加算部２２は、差分絶対値部２１から供給される差分の絶対値を記憶する。加算部２２は、記憶している差分の絶対値または前回の加算結果と、差分絶対値部２１から供給される差分の絶対値とを、その差分の絶対値の演算に用いられる画素の基本探索範囲内の位置ごとに加算し、その結果得られる加算結果を記憶する。加算部２２は、マッチング制御部１１から供給される加算用リセット信号に応じて、基本探索範囲内の位置ごとの加算結果を、マッチングに対する評価値として出力してリセットする。
【００５１】
ベクトル決定部２３は、加算部２２から供給される基本探索範囲内の位置ごとの評価値を比較し、その最小値を格納する。ベクトル決定部２３は、マッチング制御部１１から供給される最小評価値用リセット信号と、格納されている最小値に対応する基本探索範囲内の位置とに基づいて、評価ブロックの動きベクトルを決定し、図示せぬ外部の装置に出力してリセットする。
【００５２】
次に、図２を参照して、基本ブロック、評価ブロック、基本探索範囲、および探索画素群の関係について説明する。
【００５３】
なお、図２において、基準画像３１と参照画像３２内の正方形は画素を表している。図２においては、説明の便宜上、画素を表す正方形どうしの間に余白を設けているが、実際には、画素どうしは隣接している。このことは、以下の図においても同様である。
【００５４】
図２の例では、基本ブロック４１は３×２の範囲となっている。なお、以下において、ｉ×ｊの範囲とは、横方向にｉ個、縦方向にｊ個並ぶｉ×ｊ個の画素から構成される矩形の範囲を表す。また、図２の例では、評価ブロック４２は３×４の範囲となっており、評価ブロック４２を構成する基本ブロック４１の数は２個である。
【００５５】
また、図２の例では、基本探索範囲は５×３の範囲となっており、図２に示すように、基本ブロック４１の左上の画素４３の基本探索範囲５１は、画素４３に対応する参照画像３２の５×３の範囲である。従って、探索画素群５２は、基本探索範囲５１の右側に２個の画素を追加し、下側に１個の画素を追加した７×４の範囲となる。
【００５６】
なお、以下では、基本ブロックは３×２の範囲であるものとし、基本探索範囲は５×３の範囲であるものとして説明するが、基本ブロックと基本探索範囲のサイズと形状は、これに限定されない。
【００５７】
図３は、図１の差分絶対値部２１の詳細構成例を示すブロック図である。
【００５８】
図３の差分絶対値部２１は、ラインメモリ６１、シフトレジスタ６２、および演算部６３により構成される。
【００５９】
ラインメモリ６１には、図１のメモリ１３から探索画素群を構成する画素が入力される。ラインメモリ６１は、その画素を一時的に記憶する。ラインメモリ６１は、記憶している画素をシフトレジスタ６２に供給する。
【００６０】
シフトレジスタ６２は、ラインメモリ６１から供給される画素を一時的に記憶する。シフトレジスタ６２は、記憶している画素のうち、注目画素に対応する基本探索範囲の全ての画素を演算部６３に供給する。
【００６１】
演算部６３には、メモリ１３から注目画素が入力される。演算部６３は、その注目画素と、シフトレジスタ６２から供給される注目画素に対応する基本探索範囲の各画素の差分の絶対値を演算し、図１の加算部２２に供給する。
【００６２】
ここで、図４乃至図１１を参照して、参照画像が記憶されているメモリから、探索画素群を構成する画素を読み出す一般的な方法について説明する。
【００６３】
図４乃至図１１では、一般的な方法として、注目画素ごとに、その注目画素に対応する基本探索範囲の全ての画素を読み出す方法について説明する。
【００６４】
なお、図４と図５において、基準画像８１と参照画像８２内の正方形は画素を表しており、図６乃至図１１において、基準画像１１１と参照画像１１２内の正方形は画素を表している。
【００６５】
まず最初に、図４と図５を参照して、上述した方法で２個の注目画素に対応する基本探索範囲を構成する画素が読み出される場合について説明する。
【００６６】
図４に示すように、基準画像８１の３×２の範囲である基本ブロック９１内の左上の画素９２が注目画素とされる場合、その注目画素に対応する基本探索範囲９３は、画素９２に対応する５×３の範囲となる。
【００６７】
次に、図５に示すように、基本ブロック９１内の画素９２の右隣の画素１０１が注目画素とされると、その注目画素に対応する基本探索範囲１０２は、基本探索範囲９３を１画素分右に移動させた範囲となる。即ち、基本探索範囲１０２内の左側の４×３の範囲は、基本探索範囲９３内の右側の４×３の範囲と重複している。
【００６８】
従って、注目画素ごとに、その注目画素に対応する基本探索範囲の全ての画素が読み出される場合、同一の画素が複数回読み出されることになる。
【００６９】
次に、図６乃至図１１を参照して、上述した方法で探索画素群を構成する画素が読み出される場合の、各画素の読み出し回数について説明する。
【００７０】
図６乃至図１１の例では、基本ブロック１２１は、基準画像１１１の６個の画素１２２−１乃至１２２−６から構成される。
【００７１】
図６に示すように、基本ブロック１２１内の左上の画素１２２−１が注目画素とされると、その注目画素に対応する基本探索範囲１２３は、参照画像１１２の左上の５×３の範囲となる。従って、基本探索範囲１２３を構成する全ての画素の１回目の読み出しが行われる。
【００７２】
なお、図６において、画素を表す正方形の中に記載されている数字は、その画素読み出し回数を表している。このことは、後述する図７乃至図１１においても同様である。
【００７３】
次に、図７に示すように、基本ブロック１２１内の画素１２２−１の右隣の画素１２２−２が注目画素とされると、その注目画素に対応する基本探索範囲１２４は、図６の基本探索範囲１２３を１画素分右に移動させた範囲となる。即ち、基本探索範囲１２４内の左側の４×３の範囲を構成する画素は、基本探索範囲１２３内の画素と重複している。従って、基本探索範囲１２４内の左側の４×３の範囲を構成する画素の２回目の読み出しと、右側の１×３の範囲を構成する画素の１回目の読み出しとが行われる。
【００７４】
その後、図８に示すように、基本ブロック１２１内の画素１２２−２の右隣の画素１２２−３が注目画素とされると、その注目画素に対応する基本探索範囲１２５は、図７の基本探索範囲１２４を１画素分右に移動させた範囲となる。即ち、基本探索範囲１２５内の左側の３×３の範囲を構成する画素は、基本探索範囲１２３と１２４内の画素と重複しており、その右隣の１×３の範囲を構成する画素は、基本探索範囲１２４内の画素と重複している。
【００７５】
従って、基本探索範囲１２５内の左側の３×３の範囲を構成する画素の３回目の読み出し、その右隣の１×３の範囲を構成する画素の２回目の読み出し、および一番右側の１×３の範囲を構成する画素の１回目の読み出しが行われる。
【００７６】
次に、図９に示すように、基本ブロック１２１内の画素１２２−１の下の画素１２２−４が注目画素とされると、その注目画素に対応する基本探索範囲１２６は、図６の基本探索範囲１２３を１画素分下に移動させた範囲となる。
【００７７】
即ち、基本探索範囲１２６内の左上側の１×２の範囲を構成する画素は、基本探索範囲１２３内の画素と重複し、その右隣の１×２の範囲を構成する画素は、基本探索範囲１２３と１２４内の画素と重複し、一番右の上側の３×２の範囲を構成する画素は、基本探索範囲１２３乃至１２５内の画素と重複する。
【００７８】
従って、基本探索範囲１２６内の左上側の１×２の範囲を構成する画素の２回目の読み出し、その右隣の１×２の範囲を構成する画素の３回目の読み出し、一番右の上側の３×２の範囲を構成する画素の３回目の読み出し、および下側の５×１の範囲を構成する画素の１回目の読み出しが行われる。
【００７９】
その後、図１０に示すように、基本ブロック１２１内の画素１２２−４の右隣の画素１２２−５が注目画素とされると、その注目画素に対応する基本探索範囲１２７は、図９の基本探索範囲１２６を１画素分右に移動させた範囲となる。
【００８０】
即ち、基本探索範囲１２７内の左上側の１×２の範囲を構成する画素は、基本探索範囲１２３，１２４、および１２６内の画素と重複し、その右隣の３×２の範囲を構成する画素は、基本探索範囲１２３乃至１２６内の画素と重複し、一番右の上側の１×２の範囲を構成する画素は、基本探索範囲１２４と１２５内の画素と重複する。また、基本探索範囲１２７内の左下側の４×１の範囲を構成する画素は、基本探索範囲１２６内の画素と重複している。
【００８１】
従って、基本探索範囲１２７内の左上側の１×２の範囲を構成する画素の４回目の読み出し、その右隣の３×２の範囲を構成する画素の５回目の読み出し、一番右の上側の１×２の範囲を構成する画素の３回目の読み出し、左下側の４×１の範囲を構成する画素の２回目の読み出し、および、その右隣の１×１の範囲を構成する画素の１回目の読み出しが行われる。
【００８２】
最後に、図１１に示すように、基本ブロック１２１内の画素１２２−５の右隣の画素１２２−６が注目画素とされると、その注目画素に対応する基本探索範囲１２８は、図１０の基本探索範囲１２７を１画素分右に移動させた範囲となる。
【００８３】
即ち、基本探索範囲１２８内の左上側の３×２の範囲を構成する画素は、基本探索範囲１２３乃至１２７内の画素と重複し、その右隣の１×２の範囲を構成する画素は、基本探索範囲１２４，１２５、および１２７内の画素と重複し、一番右の上側の１×２の範囲を構成する画素は、基本探索範囲１２５内の画素と重複している。また、基本探索範囲１２８内の右下側の３×１の範囲を構成する画素は、基本探索範囲１２６と１２７内の画素と重複し、その右隣の１×１の範囲を構成する画素は、基本探索範囲１２７内の画素と重複している。
【００８４】
従って、基本探索範囲１２８内の左側の３×２の範囲を構成する画素の６回目の読み出し、その右隣の１×２の範囲を構成する画素の４回目の読み出し、一番右の上側の１×２の範囲を構成する画素の２回目の読み出し、左下の３×１の範囲を構成する画素の３回目の読み出し、その右隣の１×１の範囲を構成する画素の２回目の読み出し、および、一番右の下側の１×１の範囲を構成する画素の１回目の読み出しが行われる。
【００８５】
以上のように、上述した方法では、探索画素群を読み出す際に、同一の画素が複数回読み出されるので、読み出しの効率が悪い。
【００８６】
そこで、図１の画像処理装置１は、図３のラインメモリ６１とシフトレジスタ６２を用いて、図４乃至図１１で説明した各基本探索範囲の重複を利用した効率的な探索画素群の画素の読み出しを行う。
【００８７】
図１２は、図３のラインメモリ６１とシフトレジスタ６２の詳細構成例を示すブロック図である。
【００８８】
図１２のラインメモリ６１は、７個の画素メモリ１７１−１乃至１７１−７から構成される。画素メモリ１７１−１乃至１７１−７は、図１のメモリ１３から入力される画素をそれぞれ記憶する。また、画素メモリ１７１−１乃至１７１−７は、記憶している画素をシフトレジスタ６２にそれぞれ出力する。
【００８９】
シフトレジスタ６２は、横に９個並べられ、縦に３個並べられた計２７個の画素メモリ１７２−１乃至１７２−２７から構成される。画素メモリ１７２−１乃至１７２−２７は、ラインメモリ６１を介して供給される画素をそれぞれ記憶する。
【００９０】
シフトレジスタ６２の中央に位置する、横に５個並べられ、縦に３個並べられた計１５個の画素メモリ１７２−３乃至１７２−７，１７２−１２乃至１７２−１６、および１７２−２１乃至１７２−２５は、基本探索範囲である５×３の範囲を構成する画素に対応しており、記憶している画素を、注目画素に対応する基本探索範囲の画素として、図３の演算部６３に出力する。
【００９１】
また、シフトレジスタ６２の左端に位置する、横に２個並べられ、縦に３個並べられた計６個の画素メモリ１７２−１，１７２−２，１７２−１０，１７２−１１，１７２−１９、および１７２−２０、並びに、シフトレジスタ６２の右端に位置する、横に２個並べられ、縦に３個並べられた計６個の画素メモリ１７２−８，１７２−９，１７２−１７，１７２−１８，１７２−２６、および１７２−２７は、後述するように、メモリ１３からの読み出しを効率良く行うために設けられている。
【００９２】
ラインメモリ６１の画素メモリ１７１−１乃至１７１−７から入力される各画素は、シフトレジスタ６２の画素メモリ１７２−２１乃至１７２−２７に供給される。画素メモリ１７２−２７は、画素メモリ１７１−７から供給される画素を記憶し、記憶している画素を、左隣の画素メモリ１７２−２６に供給する。
【００９３】
画素メモリ１７２−２６は、ラインメモリ６１の画素メモリ１７１−６から供給される画素、または、右隣の画素メモリ１７２−２７から供給される画素を、左隣の画素メモリ１７２−２５に供給する。
【００９４】
画素メモリ１７２−２５は、ラインメモリ６１の画素メモリ１７１−５から供給される画素、または、右隣の画素メモリ１７２−２６から供給される画素を記憶し、記憶している画素を、左隣の画素メモリ１７２−２４、１つ飛ばした右隣の上の画素メモリ１７２−１８、または演算部６３（図３）に供給する。
【００９５】
画素メモリ１７２−２１乃至１７２−２４は、画素メモリ１７２−２５と同様に、ラインメモリ６１の画素メモリ１７１−１乃至１７１−４から供給される画素、または、右隣の画素メモリ１７２−２２乃至１７２−２５から供給される画素をそれぞれ記憶し、記憶している画素を、左隣の画素メモリ１７２−２０乃至１７２−２３、１つ飛ばした右隣の上の画素メモリ１７２−１４乃至１７２−１７、または演算部６３にそれぞれ供給する。
【００９６】
画素メモリ１７２−２０は、右隣の画素メモリ１７２−２１から供給される画素を記憶し、記憶している画素を、左隣の画素メモリ１７２−１９、または１つ飛ばした右隣の上の画素メモリ１７２−１３に供給する。画素メモリ１７２−１９は、右隣の画素メモリ１７２−２０から供給される画素を記憶し、記憶している画素を、１つ飛ばした右隣の上の画素メモリ１７２−１２に供給する。
【００９７】
画素メモリ１７２−１８は、１つ飛ばした左隣の下の画素メモリ１７２−２５から供給される画素を記憶し、記憶している画素を左隣の画素１７２−１７に供給する。画素メモリ１７２−１７は、１つ飛ばした左隣の下の画素メモリ１７２−２４から供給される画素、または、右隣の画素メモリ１７２−１８から供給される画素を記憶し、記憶している画素を左隣の画素１７２−１６に供給する。
【００９８】
画素メモリ１７２−１６は、１つ飛ばした左隣の下の画素メモリ１７２−２３から供給される画素、または、右隣の画素メモリ１７２−１７から供給される画素を記憶し、記憶している画素を、左隣の画素メモリ１７２−１５、１つ飛ばした右隣の上の画素メモリ１７２−９、または演算部６３に供給する。
【００９９】
画素メモリ１７２−１２乃至１７２−１５は、画素メモリ１７２−１６と同様に、１つ飛ばした左隣の下の画素メモリ１７２−１９乃至１７２−２２から供給される画素、または、右隣の画素メモリ１７２−１３乃至１７２−１６から供給される画素をそれぞれ記憶し、記憶している画素を、左隣の画素メモリ１７２−１１乃至１７２−１４、１つ飛ばした右隣の上の画素メモリ１７２−５乃至１７２−８、または演算部６３にそれぞれ供給する。
【０１００】
画素メモリ１７２−１１は、画素メモリ１７２−２０と同様に、右隣の画素メモリ１７２−１２から供給される画素を記憶し、記憶している画素を、左隣の画素メモリ１７２−１０、または１つ飛ばした右隣の上の画素メモリ１７２−４に供給する。画素メモリ１７２−１０は、画素メモリ１７２−１９と同様に、右隣の画素メモリ１７２−１１から供給される画素を記憶し、記憶している画素を、１つ飛ばした右隣の上の画素メモリ１７２−３に供給する。
【０１０１】
画素メモリ１７２−９は、画素メモリ１７２−１８と同様に、１つ飛ばした左隣の下の画素メモリ１７２−１６から供給される画素を記憶し、記憶している画素を左隣の画素メモリ１７２−８に供給する。画素メモリ１７２−８は、画素メモリ１７２−１７と同様に、１つ飛ばした左隣の下の画素メモリ１７２−１５から供給される画素、または、右隣の画素メモリ１７２−９から供給される画素を記憶し、記憶している画素を左隣の画素メモリ１７２−７に供給する。
【０１０２】
画素メモリ１７２−７は、１つ飛ばした左隣の下の画素メモリ１７２−１４から供給される画素、または、右隣の画素メモリ１７２−８から供給される画素を記憶し、記憶している画素を、左隣の画素メモリ１７２−６、または演算部６３に供給する。
【０１０３】
画素メモリ１７２−３乃至１７２−６は、画素メモリ１７２−７と同様に、１つ飛ばした左隣の下の画素メモリから供給される画素１７２−１０乃至１７２−１３、または、右隣の画素メモリ１７２−４乃至１７２−７から供給される画素をそれぞれ記憶し、記憶している画素を、左隣の画素メモリ１７２−２乃至１７２−５、または演算部６３にそれぞれ供給する。
【０１０４】
画素メモリ１７２−２は、右隣の画素メモリ１７２−３から供給される画素を記憶し、記憶している画素を、左隣の画素メモリ１７２−１に供給する。画素メモリ１７２−１は、右隣の画素メモリ１７２−２から供給される画素を記憶する。
【０１０５】
次に、図１３乃至図１９を参照して、ラインメモリ６１とシフトレジスタ６２の動作について説明する。
【０１０６】
ここでは、図１のメモリ１３に、図１３に示す参照画像１８１が記憶されているものとする。なお、図１３において、参照画像１８１内の正方形は画素を表し、正方形内に記載されている数字は、説明の便宜上付された、画素を特定するための情報である。数字「ｉｊ」は、参照画像１８１内の上からｉ番目、かつ、左からｊ番目（ｉ，ｊは０以上の整数）の画素を特定するための情報である。なお、以下では、数字「ｉｊ」が付された画素を、画素＃ｉｊという。
【０１０７】
基本ブロックを構成する左上の画素が注目画素とされる場合、図１４に示すように、注目画素に対応する基本探索範囲１９１は、画素＃２２乃至＃２６、画素＃３２乃至＃３６、および画素＃４２乃至＃４６の１５個の画素から構成される。
【０１０８】
この場合、画素＃２２乃至＃２８、画素＃３２乃至＃３８、画素＃４２乃至＃４８が、図１のメモリ１３から読み出され、ラインメモリ６１を介して、図１４に示すように、シフトレジスタ６２の画素メモリ１７２−３乃至１７２−９、１７２−１２乃至１７２−１８、１７２−２１乃至１７２−２７に、画素単位で記憶される。
【０１０９】
そして、画素メモリ１７２−３乃至１７２−７、１７２−１２乃至１７２−１６、１７２−２１乃至１７２−２５は、記憶している画素＃２２乃至＃２６、画素＃３２乃至＃３６、画素＃４２乃至＃４６をそれぞれ図３の演算部６３に出力する。従って、演算部６３には、注目画素に対応する基本探索範囲１９１を構成する全ての画素が入力される。
【０１１０】
また、この場合、図１４に示すように、メモリ１３から３個の画素＃５２乃至＃５４が読み出され、ラインメモリ６１の画素メモリ１７１−１乃至１７１−３に画素単位で記憶される。
【０１１１】
次に、基本ブロックを構成する中央上の画素が注目画素とされると、図１５に示すように、その注目画素に対応する基本探索範囲１９２は、図１４の基本探索範囲１９１を１画素分右に移動させた範囲となる。
【０１１２】
従って、この場合、図１５に示すように、シフトレジスタ６２の画素メモリ１７２−３乃至１７２−９、１７２−１２乃至１７２−１８、１７２−２１乃至１７２−２７は、それぞれ、記憶している画素＃２２乃至＃２８、画素＃３２乃至＃３８、画素＃４３乃至＃４８を、左隣の画素メモリ１７２−２乃至１７２−８、１７２−１１乃至１７２−１７、１７２−２０乃至１７２−２６に出力し、記憶させる。
【０１１３】
そして、画素メモリ１７２−３乃至１７２−７、１７２−１２乃至１７２−１６、１７２−２１乃至１７２−２５は、記憶している画素＃２３乃至＃２７、画素＃３３乃至＃３７、画素＃４３乃至＃４７を、それぞれ演算部６３に出力する。これにより、演算部６３には、注目画素に対応する基本探索範囲１９２を構成する全ての画素が入力される。
【０１１４】
また、この場合、図１５に示すように、メモリ１３から３個の画素＃５５乃至＃５７が読み出され、画素メモリ１７１−４乃至１７１−６に画素単位で記憶される。
【０１１５】
その後、基本ブロックを構成する右上の画素が注目画素とされると、図１６に示すように、その注目画素に対応する基本探索範囲１９３は、図１５の基本探索範囲１９２を１画素分右に移動させた範囲となる。
【０１１６】
従って、この場合、図１６に示すように、シフトレジスタ６２の画素メモリ１７２−２乃至１７２−８、１７２−１１乃至１７２−１７、１７２−２０乃至１７２−２６は、それぞれ、記憶している画素＃２２乃至＃２８、画素＃３２乃至＃３８、画素＃４２乃至＃４８を左隣の画素メモリ１７２−１乃至１７２−７、１７２−１０乃至１７２−１６、１７２−１９乃至１７２−２５に出力し、記憶させる。
【０１１７】
そして、画素メモリ１７２−３乃至１７２−７、１７２−１２乃至１７２−１６、１７２−２１乃至１７２−２５は、記憶している画素＃２４乃至＃２８、画素＃３４乃至＃３８、画素＃４４乃至＃４８を、それぞれ演算部６３に出力する。これにより、演算部６３には、注目画素に対応する基本探索範囲１９３を構成する全ての画素が入力される。
【０１１８】
また、この場合、図１６に示すように、メモリ１３から１個の画素＃５８が読み出され、画素メモリ１７１−７に記憶される。
【０１１９】
次に、基本ブロックを構成する左下の画素が注目画素とされると、図１７に示すように、その注目画素に対応する基本探索範囲１９４は、図１４の基本探索範囲１９１を１画素分下に移動させた範囲となる。
【０１２０】
従って、この場合、図１７に示すように、シフトレジスタ６２の画素メモリ１７２−１０乃至１７２−１６、１７２−１９乃至１７２−２５は、それぞれ、記憶している画素＃３２乃至＃３８、画素＃４２乃至＃４８を、１つ飛ばした右隣の上の画素メモリ１７２−３乃至９、１７２−１２乃至１７２−１８に出力し、記憶させる。その後、画素メモリ１７２−２１乃至１７２−２７には、ラインメモリ６１の画素メモリ１７１−１乃至１７１−７から画素＃５２乃至５８がそれぞれ入力され、記憶される。
【０１２１】
そして、画素メモリ１７２−３乃至１７２−７、１７２−１２乃至１７２−１６、１７２−２１乃至１７２−２５は、記憶している画素＃３２乃至＃３６、画素＃４２乃至＃４６、画素＃５２乃至＃５６を、それぞれ演算部６３に出力する。これにより、演算部６３には、注目画素に対応する基本探索範囲１９４を構成する全ての画素が入力される。
【０１２２】
また、この場合、図１７に示すように、メモリ１３から３個の画素＃６２乃至＃６４が読み出され、画素メモリ１７１−１乃至１７１−３に画素単位で記憶される。
【０１２３】
次に、基本ブロックを構成する中央下の画素が注目画素とされると、図１８に示すように、その注目画素に対応する基本探索範囲１９５は、図１７の基本探索範囲１９４を１画素分右に移動させた範囲となる。
【０１２４】
従って、この場合、ラインメモリ６１とシフトレジスタ６２は、図１５の場合と同様の処理を行う。その結果、図１８に示すように、シフトレジスタ６２の画素メモリ１７２−２乃至１７２−８、１７２−１１乃至１７２−１７、１７２−２０乃至１７２−２６には、それぞれ、画素＃３２乃至＃３８、画素＃４２乃至＃４８、画素＃５２乃至＃５８が記憶される。
【０１２５】
そして、画素メモリ１７２−３乃至１７２−７、１７２−１２乃至１７２−１６、１７２−２１乃至１７２−２５に記憶されている、基本探索範囲１９５を構成する画素＃３３乃至＃３７、画素＃４３乃至＃４７、および画素＃５３乃至＃５７が、演算部６３に入力される。
【０１２６】
また、この場合、図１８に示すように、ラインメモリ６１の画素メモリ１７１−４乃至１７１−６には、メモリ１３から読み出された３個の画素＃６５乃至＃６７がそれぞれ画素単位で記憶される。
【０１２７】
最後に、基本ブロックを構成する右下の画素が注目画素とされると、図１９に示すように、その注目画素に対応する基本探索範囲１９６は、図１８の基本探索範囲１９５を１画素分右に移動させた範囲となる。
【０１２８】
従って、この場合、ラインメモリ６１とシフトレジスタ６２は、図１６の場合と同様の処理を行う。その結果、図１９に示すように、シフトレジスタ６２の画素メモリ１７２−１乃至１７２−７、１７２−１０乃至１７２−１６、１７２−１９乃至１７２−２５には、それぞれ、画素＃３２乃至＃３８、画素＃４２乃至＃４８、画素＃５２乃至＃５８が記憶される。
【０１２９】
そして、画素メモリ１７２−３乃至１７２−７、１７２−１２乃至１７２−１６、１７２−２１乃至１７２−２５に記憶されている、基本探索範囲１９６を構成する画素＃３４乃至＃３８、画素＃４４乃至＃４８、および画素＃５４乃至＃５８が、演算部６３に入力される。
【０１３０】
また、この場合、図１９に示すように、ラインメモリ６１の画素メモリ１７１−７には、メモリ１３から読み出された１個の画素＃６８が記憶される。
【０１３１】
以上のように、図１２のシフトレジスタ６２には、基本ブロックを構成する各画素に対応する基本探索範囲の横方向への最大の移動分である２画素分の画素メモリ１７２−１，１７２−２，１７２−８乃至１７２−１１，１７２−１７乃至１７２−２０，１７２−２６，および１７２−２７が、基本探索範囲を構成する画素に対応する画素メモリ１７２−３乃至１７２−７，１７２−１２乃至１７２−１６、および１７２−２１乃至１７２−２５の左右の両側に余分に設けられるので、基本探索範囲に対応する画素メモリ１７２−３乃至１７２−７，１７２−１２乃至１７２−１６、および１７２−２１乃至１７２−２５は、記憶している画素を左右方向に２画素分ずつシフトさせることができる。
【０１３２】
これにより、基本探索範囲を構成する画素として読み出された、他の基本探索範囲と重複する画素を、他の基本探索範囲を構成する画素として再利用することができる。その結果、探索画素群を構成する画素の読み出しを効率良く行うことができる。
【０１３３】
また、図１２のラインメモリ６１には、基本ブロックに対応する探索画素群の横方向の画素数である７個の画素メモリ１７１−１乃至１７１−７が設けられるので、図１のメモリ１３は、シフトレジスタ６２に各基本探索範囲を構成する全ての画素を同時に出力させるために、基本探索範囲が下方向に移動するまでの間、即ち３個の注目画素に対応する基本探索範囲の全ての画素のシフトレジスタ６２からの出力が行われるまでの間に、７個の画素を読み出せばよい。従って、基本探索範囲を構成する全ての画素の1回の出力時に、メモリ１３は多くても３個の画素を読み出せばよく、メモリ１３のバス幅は３画素分で済む。
【０１３４】
これに対して、上述した一般的な方法では、注目画素に対応する基本探索範囲を構成する全ての画素が１度に読み出されるので、参照画像が記憶されているメモリのバス幅は、基本探索範囲を構成する画素の数である１５画素分必要となる。以上のように、図１の画像処理装置１は、上述した一般的な方法に比べて、少ないバス幅で、各基本探索範囲を構成する全ての画素を同時に出力することができる。即ち、バスの効率を向上させることができる。
【０１３５】
図２０は、図１の加算部２２と、図３の演算部６３の詳細構成例を示す図である。
【０１３６】
図２０の演算部６３は、差分絶対値回路２０１乃至２１５により構成される。
【０１３７】
差分絶対値回路２０１乃至２１５には、図１２の画素メモリ１７２−３乃至１７２−７，１７２−１２乃至１７２−１６、および１７２−２１乃至１７２−２５から、基本探索範囲を構成する各画素が入力されるとともに、注目画素が入力される。差分絶対値回路２０１乃至２１５は、入力された基本探索範囲を構成する画素と注目画素の差分の絶対値を演算し、後述する加算部２２の加算回路２２１乃至２３５にそれぞれ供給する。
【０１３８】
加算部２２は、加算回路２２１乃至２３５により構成される。
【０１３９】
加算回路２２１乃至２３５には、マッチング制御部１１から供給される加算用リセット信号が入力される。加算回路２２１乃至２３５は、それぞれ、加算用レジスタ２２１Ａ乃至２３５Ａを有しており、加算用レジスタ２２１Ａ乃至２３５Ａに、演算部６３の差分絶対値回路２０１乃至２１５から供給される差分の絶対値を、基本探索範囲内の位置ごとに記憶する。
【０１４０】
また、加算回路２２１乃至２３５は、加算用レジスタ２２１Ａ乃至２３５Ａに記憶されている差分の絶対値または前回の加算結果と、差分絶対値回路２０１乃至２１５から供給される差分の絶対値を、基本探索範囲内の位置ごとにそれぞれ加算し、その加算結果を加算用レジスタ２２１Ａ乃至２３５Ａに記憶する。
【０１４１】
さらに、加算回路２２１乃至２３５は、加算用リセット信号に応じて、各加算用レジスタ２２１Ａ乃至２３５Ａに記憶されている基本探索範囲内の位置ごとの加算結果を、基本探索範囲内の位置ごとの評価値としてベクトル決定部２３（図１）に供給し、加算用レジスタ２２１Ａ乃至２３５Ａに記憶されている加算結果を削除する。即ち、加算回路２２１乃至２３５は、加算用リセット信号に応じて、基本探索範囲内の位置ごとの評価値をベクトル決定部２３に出力してリセットする。
【０１４２】
次に、図２１乃至図２５を参照して、図１のマッチング制御部１１が出力する加算用リセット信号について説明する。
【０１４３】
ここでは、図２１に示すように、評価ブロック２４１が基準画像２４０の６×４の範囲である場合について説明する。この場合、図２１に示すように、評価ブロック２４１は４個の基本ブロック２５１乃至２５４から構成される。
【０１４４】
図２１に示した評価ブロック２４１における評価値が求められる場合、図２２乃至図２５に示すように、基本ブロック２５１乃至２５４を構成する各画素が、基本ブロック単位で順次注目画素とされる。
【０１４５】
なお、図２２乃至図２５において、基本ブロック２５１乃至２５４内に記載されている数字は、その基本ブロック２５１乃至２５４を構成する画素が注目画素とされる順番を表している。
【０１４６】
即ち、まず最初に、図２２に示すように、基本ブロック２５１を構成する各画素が、順次注目画素とされ、図２０の加算回路２２１乃至２３５のそれぞれは、基本ブロック２５１を構成する各画素を注目画素としたときの差分の絶対値を、その差分の絶対値の演算に用いられる画素の基本探索範囲内の位置ごとに加算し、加算用レジスタ２２１Ａ乃至２３５Ａに記憶する。このとき、図１のマッチング制御部１１は、加算用リセット信号をオフにしており、加算回路２２１乃至２３５は、最後に得られる、基本ブロック２５１を構成する全ての画素を注目画素としたときの差分の絶対値の加算結果を、各加算用レジスタ２２１Ａ乃至２３５Ａに記憶したままにする。
【０１４７】
次に、図２３に示すように、基本ブロック２５２を構成する各画素が、順次注目画素とされ、加算回路２２１乃至２３５は、各加算用レジスタ２２１Ａ乃至２３５Ａに記憶されている基本ブロック２５１を構成する全ての画素を注目画素としたときの差分の絶対値の加算結果と、基本ブロック２５２を構成する各画素を注目画素としたときの差分の絶対値とを、その差分の絶対値の演算に用いられる画素の基本探索範囲内の位置ごとに加算し、各加算用レジスタ２２１Ａ乃至２３５Ａに記憶する。
【０１４８】
このときも、マッチング制御部１１は、加算用リセット信号をオフにしており、加算回路２２１乃至２３５は、最後に得られる、基本ブロック２５１と２５２を構成する全ての画素を注目画素としたときの差分の絶対値の加算結果を、各加算用レジスタ２２１Ａ乃至２３５Ａに記憶したままにする。
【０１４９】
その後、図２４に示すように、基本ブロック２５３を構成する各画素が、順次注目画素とされ、加算回路２２１乃至２３５は、各加算用レジスタ２２１Ａ乃至２３５Ａに記憶されている基本ブロック２５１と２５２を構成する全ての画素を注目画素としたときの差分の絶対値の加算結果と、基本ブロック２５３を構成する各画素を注目画素としたときの差分の絶対値とを、その差分の絶対値の演算に用いられる画素の基本探索範囲内の位置ごとに加算し、各加算用レジスタ２２１Ａ乃至２３５Ａに記憶する。
【０１５０】
このときも、マッチング制御部１１は、加算用リセット信号をオフにしており、加算回路２２１乃至２３５は、最後に得られる、基本ブロック２５１乃至２５３を構成する全ての画素を注目画素としたときの差分の絶対値の加算結果を、各加算用レジスタ２２１Ａ乃至２３５Ａに記憶したままにする。
【０１５１】
最後に、図２５に示すように、基本ブロック２５４を構成する各画素が、順次注目画素とされ、加算回路２２１乃至２３５は、加算用レジスタ２２１Ａ乃至２３５Ａに記憶されている基本ブロック２５１乃至２５３を構成する全ての画素を注目画素としたときの差分の絶対値の加算結果と、基本ブロック２５４を構成する各画素を注目画素としたときの差分の絶対値とを、その差分の絶対値の演算に用いられる画素の基本探索範囲内の位置ごとに加算し、各加算用レジスタ２２１Ａ乃至２３５Ａに記憶する。
【０１５２】
このとき、マッチング制御部１１は、加算用リセット信号をオンにし、加算回路２２１乃至２３５は、最後に得られる、基本ブロック２５１乃至２５４を構成する全ての画素を注目画素としたときの差分の絶対値の、基本探索範囲内の位置ごとの加算結果を、基本探索範囲内の位置ごとの評価値として、図１のベクトル決定部２３に供給し、各加算用レジスタ２２１Ａ乃至２３５Ａに記憶されている加算結果を削除する。
【０１５３】
以上のように、評価ブロック２４１を構成する全ての画素が注目画素とされたときに、加算用リセット信号はオンにされるので、加算回路２２１乃至２３５は、加算用リセット信号がオンであるときに加算結果を出力することにより、評価ブロック２４１を構成する全ての画素を注目画素としたときの差分の絶対値の加算結果を出力することができる。
【０１５４】
図２６は、評価ブロックと、図２０の加算用レジスタ２２１Ａ乃至２３５Ａのビット数との関係の例を示している。
【０１５５】
なお、図２６では、差分の絶対値を2進数で表し、その最大値が255であるものとする。
【０１５６】
図２６の表に示すように、評価ブロックが３×２の範囲である場合、各加算用レジスタ２２１Ａ乃至２３５Ａに必要なビット数は、11(=log2（256×3×2）)ビットとなる。従って、全ての加算用レジスタ２２１Ａ乃至２３５Ａに必要なビット数は、165(=11×5×3)ビットとなる。
【０１５７】
一方、評価ブロックが６×４の範囲である場合、各加算用レジスタ２２１Ａ乃至２３５Ａに必要なビット数は、13(=log2（256×6×4）)ビットとなる。従って、全ての加算用レジスタ２２１Ａ乃至２３５Ａに必要なビット数は、195(=13×5×3)ビットとなる。
【０１５８】
以上のように、評価ブロックを構成する画素の数に応じて、必要となる加算用レジスタ２２１Ａ乃至２３５Ａのビット数は異なるので、図１の画像処理装置１では、加算用レジスタ２２１Ａ乃至２３５Ａのビット数として、想定される最大の基本ブロック数に対応するビット数を用意しておく。
【０１５９】
図２７は、図１のベクトル決定部２３の詳細構成例を示すブロック図である。
【０１６０】
図２７のベクトル決定部２３は、１５個のレジスタ２６１乃至２７５、比較回路２７６、最小評価値レジスタ２７７、および決定部２７８により構成される。
【０１６１】
レジスタ２６１乃至２７５のそれぞれには、図２０の加算部２２の加算回路２２１乃至２３５から供給される、基本探索範囲内の位置ごとの評価値が入力される。レジスタ２６１乃至２７５は、それぞれ、入力される評価値を記憶し、記憶している評価値を比較回路２７６に出力する。なお、レジスタ２６１乃至２７５には、それぞれを特定する情報として、各レジスタ２６１乃至２７５に固有のレジスタＩＤが付与されているものとする。
【０１６２】
比較回路２７６は、各レジスタ２６１乃至２７５から入力される評価値どうしを比較し、その評価値の最小値と、その最小値を記憶しているレジスタ２６１乃至２７５のいずれかのレジスタＩＤを最小評価値レジスタ２７７に格納させる。
【０１６３】
例えば、比較回路２７６は、まず最初に、レジスタ２６１と２６２から入力される評価値どうしを比較し、評価値の最小値と、その最小値を格納しているレジスタ２６１または２６２のレジスタＩＤを、最小評価値レジスタ２７７に格納させる。
【０１６４】
次に、比較回路２７６は、最小評価値レジスタ２７７に格納されている評価値を読み出し、その評価値と、レジスタ２６３から入力される評価値を比較し、その最小値と、その最小値を格納しているレジスタ２６１乃至２６３のいずれかのレジスタＩＤを最小評価値レジスタ２７７に格納させる。同様に、比較回路２７６は、各レジスタ２６４乃至２７５から入力される評価値と、最小評価値レジスタ２７７に格納されている評価値を順次比較し、その評価値の最小値と、その最小値を格納しているレジスタ２６１乃至２７５のいずれかのレジスタＩＤを最小評価値レジスタ２７７に格納させる。
【０１６５】
最小評価値レジスタ２７７には、図１のマッチング制御部１１から最小評価値用リセット信号が入力される。最小評価値レジスタ２７７は、最小評価値用リセット信号に応じて、格納しているレジスタＩＤを決定部２７８に供給してリセットする。即ち、最小評価値レジスタ２７７は、格納しているレジスタＩＤを決定部２７８に出力し、格納している評価値とレジスタＩＤを削除する。
【０１６６】
決定部２７８は、最小評価値レジスタ２７７から供給されるレジスタＩＤから、それが付与されたレジスタ２６１乃至２７５のいずれかに対応する基本探索範囲内の位置を認識し、その位置に基づいて動きベクトルを決定する。決定部２７８は、決定した動きベクトルを、図示せぬ外部の装置に出力する。
【０１６７】
図２８は、評価ブロックと、図２７のベクトル決定部２３のレジスタ２６１乃至２７５および最小評価値レジスタ２７７のビット数との関係の例を示している。
【０１６８】
なお、図２８では、差分の絶対値を2進数で表し、その最大値が255であるものとする。
【０１６９】
図２８の表に示すように、評価ブロックが３×２の範囲である場合、各レジスタ２６１乃至２７５に必要なビット数は、各加算用レジスタ２２１Ａ乃至２３５Ａに必要なビット数と同一の11(=log2（256×3×2）)ビットとなる。従って、全てのレジスタ２６１乃至２７５に必要なビット数は、165(=11×5×3)ビットとなり、最小評価値レジスタ２７７に必要なビット数は、各レジスタ２６１乃至２７５に必要なビット数と同一の11(=log2（256×3×2）)ビットとなる。
【０１７０】
一方、評価ブロックが６×４の範囲である場合、各レジスタ２６１乃至２７５に必要なビット数は、各加算用レジスタ２２１Ａ乃至２３５Ａに必要なビット数と同一の13(=log2（256×6×4）)ビットとなる。従って、全てのレジスタ２６１乃至２７５に必要なビット数は、195(=13×5×3)ビットとなり、最小評価値レジスタ２７７に必要なビット数は、各レジスタ２６１乃至２７５に必要なビット数と同一の13(=log2（256×6×4）)ビットとなる。
【０１７１】
以上のように、評価ブロックを構成する画素の数に応じて、必要となるレジスタ２６１乃至２７５および最小評価値レジスタ２７７のビット数は異なるので、図１の画像処理装置１では、レジスタ２６１乃至２７５および最小評価値レジスタ２７７のビット数として、想定される最大の基本ブロック数に対応するビット数を用意しておく。
【０１７２】
次に、図２９と図３０を参照して、図１の画像処理装置１がマッチングを行うマッチング処理について説明する。このマッチング処理は、例えば、図示せぬ他の装置からマッチングの開始指示とマッチングパラメータが入力されたとき、開始される。
【０１７３】
ステップＳ１０において、マッチング制御部１１は、加算用リセット信号と最小値格納用リセット信号をオフにする。
【０１７４】
ステップＳ１１において、マッチング制御部１１は、マッチングパラメータのマッチング位置とマッチング間隔に基づいて、ブロック位置情報を生成するとともに、そのブロック位置情報に基づいて探索位置情報を生成する。そして、マッチング制御部１１は、入力画像の読出指示とともに、ブロック位置情報と探索位置情報をメモリ制御部１２に供給する。
【０１７５】
ステップＳ１２において、メモリ制御部１２は、マッチング制御部１１から供給される読出開始の指示に応じて、ブロック位置情報に対応する基本ブロックを構成する画素のうち、まだ注目画素とされていない画素を注目画素に決定する。
【０１７６】
ステップＳ１３において、メモリ制御部１２は、マッチング制御部１１から供給されるブロック位置情報に基づいて、注目画素が記憶されているメモリ１３上のアドレスを生成するとともに、探索位置情報に基づいて、探索画素群を構成する画素が記憶されているメモリ１３上のアドレスを生成し、生成したアドレスをメモリ１３に供給する。
【０１７７】
ステップＳ１４において、メモリ１３は、メモリ制御部１２から供給されるアドレスにしたがって、探索画素群を構成する画素を読み出し、マッチング演算部１４の差分絶対値部２１に供給する。この画素は、図１２乃至図１９で上述したように、差分絶対値部２１のラインメモリ６１を介してシフトレジスタ６２に供給され、記憶される。
【０１７８】
ステップＳ１５において、シフトレジスタ６２は、ステップＳ１２で決定された注目画素に対応する基本探索範囲の全ての画素を演算部６３に出力する。ステップＳ１６において、メモリ１３は、メモリ制御部１２から供給されるアドレスにしたがって、注目画素を読み出し、マッチング演算部１４の演算部６３に供給する。
【０１７９】
ステップＳ１７において、演算部６３の差分絶対値回路２０１乃至２１５（図２０）は、注目画素と、シフトレジスタ６２から供給される基本探索範囲の各画素の差分の絶対値を演算し、加算部２２に供給する。
【０１８０】
ステップＳ１８において、加算部２２の加算回路２２１乃至２３５は、基本探索範囲内の位置ごとに、各加算用レジスタ２２１Ａ乃至２３５Ａに記憶されている、前回のステップＳ１８の処理による加算結果と、各差分絶対値回路２０１乃至２１５から供給される今回の差分の絶対値を、それぞれ加算し、その加算結果を加算用レジスタ２２１Ａ乃至２３５Ａにそれぞれ記憶する。
【０１８１】
なお、最初のステップＳ１８の処理では、加算回路２２１乃至２３５は、基本探索範囲内の位置ごとに、演算部６３の差分絶対値回路２０１乃至２１５から供給される差分の絶対値を、加算用レジスタ２２１Ａ乃至２３５Ａにそれぞれ記憶する。
【０１８２】
ステップＳ１９において、メモリ制御部１２は、ブロック位置情報に対応する基本ブロックを構成する全ての画素を注目画素としたかどうかを判定し、全ての画素をまだ注目画素としていないと判定した場合、処理はステップＳ１２に戻り、上述した処理が繰り返される。
【０１８３】
一方、ステップＳ１９において、基本ブロックを構成する全ての画素を注目画素としたと判定された場合、処理はステップＳ２０に進み、マッチング制御部１１は、基本ブロック数に基づいて、評価ブロックを構成する全ての基本ブロックのブロック位置情報と探索位置情報を生成したかどうかを判定する。
【０１８４】
ステップＳ２０において、評価ブロックを構成する全ての基本ブロックのブロック位置情報と探索位置情報を生成していないと判定された場合、処理はステップＳ１１に戻り、マッチング制御部１１は、評価ブロックを構成する新たな基本ブロックのブロック位置情報と探索位置情報を生成し、メモリ制御部１２に供給する。その後、処理はステップＳ１２に進み、以降、上述した処理が繰り返される。
【０１８５】
また、ステップＳ１２において、評価ブロックを構成する全ての基本ブロックのブロック位置情報と探索位置情報を生成したと判定された場合、図３０のステップＳ２１に進み、マッチング制御部１１は、加算部２２の加算回路２２１乃至２３５に供給する加算用リセット信号をオンにする。
【０１８６】
ステップＳ２２において、加算回路２２１乃至２３５は、加算用リセット信号に応じて、各加算用レジスタ２２１Ａ乃至２３５Ａに記憶されている基本探索範囲内の位置ごとの加算結果を、基本探索範囲内の位置ごとの評価値としてベクトル決定部２３のレジスタ２６１乃至２７５（図２７）に出力し、加算用レジスタ２２１Ａ乃至２３５Ａに記憶されている加算結果を削除する。
【０１８７】
ステップＳ２３において、ベクトル決定部２３の比較回路２７６は、各レジスタ２６１乃至２７５に記憶されている評価値どうしを比較し、その評価値の最小値と、最小値を記憶しているレジスタ２６１乃至２７５のいずれかのレジスタＩＤを、最小評価値レジスタ２７７に格納させる。
【０１８８】
ステップＳ２４において、マッチング制御部１１は、ベクトル決定部２３に供給する最小評価値用リセット信号をオンにする。ステップＳ２５において、最小評価値レジスタ２７７は、最小評価値用リセット信号に応じて、格納しているレジスタＩＤを決定部２７８に出力して、格納している評価値とレジスタＩＤを削除する。
【０１８９】
ステップＳ２６において、決定部２７８は、最小評価値レジスタ２７７から供給されるレジスタＩＤから、それが付与されたレジスタ２６１乃至２７５のいずれかに対応する基本探索範囲内の位置を認識し、その位置に基づいて動きベクトルを決定する。決定部２７８は、決定した動きベクトルを、図示せぬ外部の装置に出力する。
【０１９０】
ステップＳ２７において、マッチング制御部１１は、評価ブロック数に基づいて、全ての評価ブロックを構成する基本ブロックのブロック位置情報と探索位置情報を生成したかどうかを判定する。
【０１９１】
ステップＳ２７において、全ての評価ブロックを構成する基本ブロックのブロック位置情報と探索位置情報をまだ生成していないと判定された場合、処理は図２９のステップＳ１０に戻り、マッチング制御部１１は、加算用リセット信号と最小値格納用リセット信号をオフにする。ステップＳ１１において、マッチング制御部１１は、新たな評価ブロックのブロック位置情報と探索位置情報を生成する。その後、処理はステップ１２に進み、以降、上述した処理が繰り返される。
【０１９２】
一方、ステップＳ２７において、全ての評価ブロックを構成する基本ブロックのブロック位置情報と探索位置情報を生成したと判定された場合、処理は終了する。
【０１９３】
以上のように、画像処理装置１は、基本ブロック数に基づいて、加算部２２に供給する加算用リセット信号をオンまたはオフにすることにより加算部２２を制御するので、予め設定されている基本ブロックのマッチングだけでなく、複数の基本ブロックから構成される評価ブロックのマッチングも行うことができる。即ち、画像処理装置１は、１以上の基本ブロックから構成される評価ブロックのマッチングを行うことができる。
【０１９４】
従って、画像処理装置１は、評価ブロックのサイズや形状ごとに対応する回路を設ける場合に比べて、小規模で、マッチングの対象とする評価ブロックのサイズや形状を、Ｎ個（Ｎは自然数）の基本ブロックからなるサイズや形状に可変にすることができる。
【０１９５】
図３１は、本発明を適用した画像処理装置の第２の実施の形態の構成例を示すブロック図である。
【０１９６】
図３１の画像処理装置３０１は、メモリ制御部１２、メモリ１３、マッチング制御部３１１、およびマッチング演算部３１２により構成され、１つの基本ブロックの一部から構成される評価ブロック内の各画素と、その画素に対応する基本探索範囲とのマッチングを行い、そのマッチングに対する評価値に応じて、評価ブロックの動きベクトルを決定する。
【０１９７】
なお、図３１において、図１と同様のものには同一の符号を付してあり、説明は繰り返しになるので省略する。
【０１９８】
マッチング制御部３１１には、図示せぬ他の装置からマッチングの開始指示とマッチングパラメータが供給される。マッチング制御部３１１に供給されるマッチングパラメータは、マッチング位置、評価ブロックを構成する各画素の基本ブロック内の位置、評価ブロック数、およびマッチング間隔により構成される。
【０１９９】
マッチング制御部３１１は、図１のマッチング制御部１１と同様に、マッチングの開始指示に応じて、入力画像の読出指示をメモリ制御部１２に供給する。マッチング制御部３１１は、マッチング制御部１１と同様に、マッチングパラメータのマッチング位置とマッチング間隔に基づいて、ブロック位置情報を生成する。また、マッチング制御部３１１は、マッチング制御部１１と同様に、ブロック位置情報に基づいて探索位置情報を生成する。マッチング制御部３１１は、マッチング制御部１１と同様に、ブロック位置情報と探索位置情報をメモリ制御部１２に供給する。
【０２００】
さらに、マッチング制御部３１１は、マッチングパラメータの評価ブロック数に基づいて、加算用リセット信号を加算部３２１に供給し、最小評価値用リセット信号をベクトル決定部２３に供給する。また、マッチング制御部３１１は、評価ブロックを構成する各画素の基本ブロック内の位置に基づいて、後述するマッチング演算部３１２の加算部３２１による加算の有無を表すブロックフラグを、加算部３２１に供給する。
【０２０１】
マッチング演算部３１２は、差分絶対値部２１、ベクトル決定部２３、および加算部３２１により構成される。
【０２０２】
加算部３２１は、マッチング制御部３１１から供給されるブロックフラグに応じて、差分絶対値部２１から供給される差分の絶対値を記憶する。加算部３２１は、ブロックフラグに応じて、記憶している差分の絶対値または前回の加算の結果得られる加算結果と、差分絶対値部２１から供給される差分の絶対値とを、その差分の絶対値の演算に用いられる画素の基本探索範囲内の位置ごとに加算し、その結果得られる加算結果を記憶する。
【０２０３】
また、加算部３２１は、図１の加算部２２と同様に、マッチング制御部３１１から供給される加算用リセット信号に応じて、基本探索範囲内の位置ごとの加算結果を、マッチングに対する評価値として出力してリセットする。
【０２０４】
図３２は、図３１の差分絶対値部２１の演算部６３と、加算部３２１の詳細構成例を示す図である。
【０２０５】
なお、図３２において、図２０と同一のものには同一の符号を付してあり、説明は繰り返しになるので省略する。
【０２０６】
加算部３２１は、加算回路３３１乃至３４５により構成される。
【０２０７】
加算回路３３１乃至３４５には、図３１のマッチング制御部３１１から供給される加算用リセット信号とブロックフラグが入力される。加算回路３３１乃至３４５は、それぞれ、加算用レジスタ３３１Ａ乃至３４５Ａを有している。加算回路３３１乃至３４５は、それぞれに入力されるブロックフラグに応じて、加算用レジスタ３３１Ａ乃至３４５Ａに、演算部６３の差分絶対値回路２０１乃至２１５から供給される差分の絶対値を、基本探索範囲内の位置ごとに記憶する。
【０２０８】
また、加算回路３３１乃至３４５は、それぞれに入力されるブロックフラグに応じて、加算用レジスタ３３１Ａ乃至３４５Ａに記憶されている差分の絶対値または前回の加算結果と、差分絶対値回路２０１乃至２１５から供給される差分の絶対値を、基本探索範囲内の位置ごとにそれぞれ加算し、その加算結果を加算用レジスタ３３１Ａ乃至３４５Ａに記憶する。
【０２０９】
また、加算回路３３１乃至３４５は、図２０の加算回路２２１乃至２３５と同様に、加算用リセット信号に応じて、各加算用レジスタ３３１Ａ乃至３４５Ａに記憶されている基本探索範囲内の位置ごとの加算結果を、基本探索範囲内の位置ごとの評価値としてベクトル決定部２３(図３１)に供給し、加算用レジスタ３３１Ａ乃至３４５Ａに記憶されている加算結果を削除する。
【０２１０】
次に、図３３乃至図３９を参照して、評価ブロックが、１つの基本ブロックの一部から構成される場合のブロックフラグについて説明する。
【０２１１】
ここでは、図３３に示すように、評価ブロック３４１が、３×２の範囲である基本ブロック３４２の左側の２×２の範囲である場合について説明する。即ち、図３３に示すように、評価ブロック３４１は、基本ブロック３４２を構成する画素３５１乃至３５６のうちの、画素３５１，３５２，３５４、および３５５から構成される。
【０２１２】
図３３に示した評価ブロック３４１における評価値が求められる場合、図３４乃至図３９に示すように、基本ブロック３４２を構成する各画素が、順次注目画素とされるが、評価ブロック３４１を構成する画素３５１，３５２，３５４、および３５５を注目画素としたときの差分の絶対値以外の差分の絶対値は、図３２の加算回路３３１乃至３４５において加算されない。
【０２１３】
即ち、まず最初に、図３４に示すように、基本ブロック３４２の左上の画素３５１が、注目画素とされ、図３２の差分絶対値回路２０１乃至２１５のそれぞれは、注目画素である画素３５１に対応する基本探索範囲を構成する画素と画素３５１の差分の絶対値を演算し、その差分の絶対値を基本探索範囲内の位置ごとに加算回路３３１乃至３４５に供給する。このとき、図３１のマッチング制御部３１１は、ブロックフラグを加算の有を表す１にしており、加算回路３３１乃至３４５は、差分絶対値回路２０１乃至２１５から供給される差分の絶対値を加算用レジスタ３３１Ａ乃至３４５Ａにそれぞれ記憶する。
【０２１４】
次に、図３５に示すように、基本ブロック３４２を構成する中央上の画素３５２が、注目画素とされ、差分絶対値回路２０１乃至２１５のそれぞれは、注目画素である画素３５２に対応する基本探索範囲を構成する画素と画素３５２の差分の絶対値を演算し、その差分の絶対値を基本探索範囲内の位置ごとに加算回路３３１乃至３４５に供給する。
【０２１５】
このとき、マッチング制御部３１１は、ブロックフラグを１にしており、加算回路３３１乃至３４５は、加算用レジスタ３３１Ａ乃至３４５Ａに記憶されている画素３５１に対応する差分の絶対値と、差分絶対値回路２０１乃至２１５から供給される画素３５２に対応する差分の絶対値とを、基本探索範囲内の位置ごとに加算し、その加算結果を加算用レジスタ３３１Ａ乃至３４５Ａにそれぞれ記憶する。
【０２１６】
その後、図３６に示すように、基本ブロック３４２を構成する右上の画素３５３が、注目画素とされ、差分絶対値回路２０１乃至２１５のそれぞれは、注目画素である画素３５３に対応する基本探索範囲を構成する画素と画素３５３の差分の絶対値を演算し、その差分の絶対値を基本探索範囲内の位置ごとに加算回路３３１乃至３４５に供給する。
【０２１７】
このとき、マッチング制御部３１１は、ブロックフラグを加算の無を表す０にしており、加算回路３３１乃至３４５は、加算用レジスタ３３１Ａ乃至３４５Ａに記憶されている画素３５１と３５２に対応する加算結果と、差分絶対値回路２０１乃至２１５から供給される画素３５３に対応する差分の絶対値とを、基本探索範囲内の位置ごとに加算しない。その結果、加算用レジスタ３３１Ａ乃至３４５Ａには、画素３５１と３５２に対応する加算結果がそのまま記憶されている。
【０２１８】
次に、図３７に示すように、基本ブロック３４２を構成する左下の画素３５４が、注目画素とされ、差分絶対値回路２０１乃至２１５のそれぞれは、注目画素である画素３５４に対応する基本探索範囲を構成する画素と画素３５４の差分の絶対値を演算し、その差分の絶対値を基本探索範囲内の位置ごとに加算回路３３１乃至３４５に供給する。
【０２１９】
このとき、マッチング制御部３１１は、ブロックフラグを１にしており、加算回路３３１乃至３４５は、加算用レジスタ３３１Ａ乃至３４５Ａに記憶されている画素３５１と３５２に対応する加算結果と、差分絶対値回路２０１乃至２１５から供給される画素３５４に対応する差分の絶対値とを、基本探索範囲内の位置ごとに加算し、その加算結果を加算用レジスタ３３１Ａ乃至３４５Ａにそれぞれ記憶する。
【０２２０】
その後、図３８に示すように、基本ブロック３４２を構成する中央下の画素３５５が、注目画素とされ、差分絶対値回路２０１乃至２１５のそれぞれは、注目画素である画素３５５に対応する基本探索範囲を構成する画素と画素３５５の差分の絶対値を演算し、その差分の絶対値を基本探索範囲内の位置ごとに加算回路３３１乃至３４５に供給する。
【０２２１】
このとき、マッチング制御部３１１は、ブロックフラグを１にしており、加算回路３３１乃至３４５は、加算用レジスタ３３１Ａ乃至３４５Ａに記憶されている画素３５１，３５２、および３５４に対応する加算結果と、差分絶対値回路２０１乃至２１５から供給される画素３５５に対応する差分の絶対値とを、基本探索範囲内の位置ごとに加算し、その加算結果を加算用レジスタ３３１Ａ乃至３４５Ａに記憶する。
【０２２２】
最後に、図３９に示すように、基本ブロック３４２を構成する右下の画素３５６が、注目画素とされ、差分絶対値回路２０１乃至２１５のそれぞれは、注目画素である画素３５６に対応する基本探索範囲を構成する画素と画素３５６の差分の絶対値を演算し、その差分の絶対値を基本探索範囲内の位置ごとに加算回路３３１乃至３４５に供給する。
【０２２３】
このとき、マッチング制御部３１１は、ブロックフラグを０にしており、加算回路３３１乃至３４５は、加算用レジスタ３３１Ａ乃至３４５Ａに記憶されている画素３５１，３５２，３５４、および３５５に対応する加算結果と、差分絶対値回路２０１乃至２１５から供給される画素３５６に対応する差分の絶対値とを、基本探索範囲内の位置ごとに加算しない。その結果、加算用レジスタ３３１Ａ乃至３４５Ａには、画素３５１，３５２，３５４、および３５５に対応する加算結果がそのまま記憶されている。即ち、加算用レジスタ３３１Ａ乃至３４５Ａには、評価ブロックに対応する加算結果が記憶されている。
【０２２４】
以上のように、ブロックフラグは、基本ブロック３４２を構成する画素３５１乃至３５６のうちの、評価ブロック３４１を構成する画素３５１，３５２，３５４、および３５５を注目画素としたときの差分の絶対値の加算部３２１への入力に同期して１にされるので、加算回路３３１乃至３４５は、そのブロックフラグが１であるときに加算を行うことにより、評価ブロック３４１に対応する差分の絶対値の加算結果を得ることができる。
【０２２５】
次に、図４０と図４１を参照して、図３１の画像処理装置３０１がマッチングを行うマッチング処理について説明する。このマッチング処理は、例えば、図示せぬ他の装置からマッチングの開始指示とマッチングパラメータが入力されたとき、開始される。
【０２２６】
ステップＳ４０乃至Ｓ４７の処理は、図２９のステップＳ１０乃至Ｓ１７と同様の処理であり、説明は省略する。
【０２２７】
ステップＳ４８において、マッチング制御部３１１は、評価ブロックを構成する各画素の基本ブロック内の位置に基づいて、ステップＳ４２で決定された注目画素に対応する差分の絶対値を加算するかどうか、即ち注目画素が評価ブロックを構成する画素であるかどうかを判定する。
【０２２８】
ステップＳ４８において、注目画素に対応する差分の絶対値を加算しないと判定された場合、ステップＳ４９において、マッチング制御部３１１は、加算部３２１に供給するブロックフラグを０にし、処理はステップＳ５２に進む。
【０２２９】
一方、ステップＳ４８において、注目画素に対応する差分の絶対値を加算すると判定された場合、ステップＳ５０において、マッチング制御部３１１は、加算部３２１に供給するブロックフラグを１にする。
【０２３０】
図４０のステップＳ５１とＳ５２の処理、および図４１のステップＳ５３乃至Ｓ５９の処理は、図２９のステップＳ１８と１９の処理、および図３０のステップＳ２１乃至Ｓ２７の処理と同様であり、説明は省略する。
【０２３１】
以上のように、画像処理装置３０１は、評価ブロックを構成する各画素の基本ブロック内の位置に基づいて、加算部３２１に供給するブロックフラグを０または１にすることにより加算部３２１を制御するので、予め設定されている基本ブロックのマッチングだけでなく、１つの基本ブロックを構成する一部の画素からなる評価ブロックのマッチングも行うことができる。即ち、画像処理装置３０１は、１つの基本ブロックを構成する１以上の画素からなる評価ブロックのマッチングを行うことができる。
【０２３２】
従って、画像処理装置３０１は、評価ブロックのサイズや形状ごとに対応する回路を設ける場合に比べて、小規模で、マッチングの対象とする評価ブロックのサイズや形状を、１つの基本ブロックを構成する１以上の画素からなるサイズや形状に可変にすることができる。
【０２３３】
図４２は、本発明を適用した画像処理装置の第３の実施の形態の構成例を示すブロック図である。
【０２３４】
図４２の画像処理装置４０１は、メモリ制御部１２、メモリ１３、マッチング演算部３１２、およびマッチング制御部４１１により構成され、任意のサイズや形状の評価ブロック内の各画素と、その画素に対応する基本探索範囲とのマッチングを行い、そのマッチングに対する評価値に応じて、評価ブロックの動きベクトルを決定する。
【０２３５】
なお、図４２において、図１や図３１と同様のものには同一の符号を付してあり、説明は繰り返しになるので省略する。
【０２３６】
マッチング制御部４１１には、図示せぬ他の装置からマッチングの開始指示とマッチングパラメータが供給される。マッチング制御部４１１に供給されるマッチングパラメータは、マッチング位置、基本ブロック数、評価ブロックを構成する各画素の基本ブロック内の位置、評価ブロック数、およびマッチング間隔により構成される。
【０２３７】
マッチング制御部４１１は、図１のマッチング制御部１１と同様に、マッチングの開始指示に応じて、入力画像の読出指示をメモリ制御部１２に供給する。マッチング制御部４１１は、マッチング制御部１１と同様に、マッチングパラメータのマッチング位置とマッチング間隔に基づいて、ブロック位置情報を生成する。また、マッチング制御部４１１は、マッチング制御部１１と同様に、ブロック位置情報に基づいて探索位置情報を生成する。マッチング制御部４１１は、マッチング制御部１１と同様に、ブロック位置情報と探索位置情報をメモリ制御部１２に供給する。
【０２３８】
さらに、マッチング制御部４１１は、マッチング制御部１１と同様に、マッチングパラメータの基本ブロック数と評価ブロック数に基づいて、加算用リセット信号を加算部３２１に供給し、評価ブロック数に基づいて最小評価値用リセット信号をベクトル決定部２３に供給する。
【０２３９】
また、マッチング制御部４１１は、図３１のマッチング制御部３１１と同様に、評価ブロックを構成する各画素の基本ブロック内の位置に基づいて、ブロックフラグを加算部３２１に供給する。
【０２４０】
次に、図４３乃至図４５を参照して、評価ブロックが、複数の基本ブロックの一部から構成される場合のブロックフラグについて説明する。
【０２４１】
ここでは、図４３に示すように、評価ブロック４２２が、基準画像４２１のアルファベットのＥの文字の形状に並べられた３２個の画素から構成される場合について説明する。この場合、図４４に示すように、評価ブロック４２２は、横に２個、縦に４個並べられることにより矩形を形成する計８個の基本ブロック４３１乃至４３８の一部から構成される。
【０２４２】
具体的には、評価ブロック４２２は、基本ブロック４３１の全ての範囲、基本ブロック４３２の左側の２×２の範囲、基本ブロック４３３の右上の１×１の範囲以外の範囲、基本ブロック４３４の左下の１×１の範囲、基本ブロック４３５の右下の１×１の範囲以外の範囲、基本ブロック４３６の左上の１×１の範囲、基本ブロック４３７の全ての範囲、および基本ブロック４３８の左側の２×２の範囲から構成される。
【０２４３】
従って、これらの範囲を構成する各画素の基本ブロック４３１乃至４３８内の位置が、評価ブロック４２２を構成する画素の基本ブロック内の位置として、マッチング制御部４１１に供給される。
【０２４４】
この場合、基本ブロック４３１乃至４３８を構成する各画素が注目画素とされたときに、マッチング制御部４１１が加算部３２１に供給するブロックフラグは、図４５に示すようになる。なお、図４５においては、基準画像４２１の各画素に対応する位置に、その画素が注目画素であるときのブロックフラグの値が記載されている。
【０２４５】
図４５に示すように、ブロックフラグは、基本ブロック４３１乃至４３８のうちの、評価ブロック４２２を構成する各画素が注目画素とされたとき１にされ、それ以外の画素が注目画素とされたとき０にされる。
【０２４６】
次に、図４６と図４７を参照して、図４２の画像処理装置４０１がマッチングを行うマッチング処理について説明する。このマッチング処理は、例えば、図示せぬ外部の装置からマッチングの開始指示とマッチングパラメータが入力されたとき、開始される。
【０２４７】
図４６と図４７のマッチング処理は、図４０と図４１のマッチング処理に、図２９のステップＳ２０と同様のステップＳ８３の処理を加えたものである。
【０２４８】
即ち、図４６のステップＳ７０乃至Ｓ８２の処理、および図４７のステップＳ８４乃至Ｓ９０の処理は、図４０のステップＳ４０乃至Ｓ５２、および図４１のステップＳ５３乃至５９と同様の処理であり、図４６のステップＳ８３の処理は、図２９のステップＳ２０と同様の処理である。
【０２４９】
以上のように、画像処理装置４０１は、基本ブロック数に基づいて、加算用リセット信号をオンまたはオフにし、評価ブロックを構成する各画素の基本ブロック内の位置に基づいて、ブロックフラグを０または１にすることにより加算部３２１を制御するので、予め設定されている基本ブロックのマッチングだけでなく、１以上の基本ブロックを構成する一部の画素からなる評価ブロックのマッチングを行うことができる。即ち、画像処理装置４０１は、任意のサイズや形状の評価ブロックのマッチングを行うことができる。
【０２５０】
従って、画像処理装置４０１は、評価ブロックのサイズや形状ごとに対応する回路を設ける場合に比べて、小規模で、マッチングの対象とする評価ブロックのサイズや形状を任意のサイズや形状に可変にすることができる。
【０２５１】
図４８は、本発明を適用した画像処理装置の第４の実施の形態の構成例を示すブロック図である。
【０２５２】
図４８の画像処理装置５０１は、メモリ制御部１２、メモリ１３、マッチング演算部１４、およびマッチング制御部５１１により構成され、１つの基本ブロックからなる評価ブロックの各画素と、その画素に対応する複数の基本探索範囲から構成される評価探索範囲とのマッチングを行い、そのマッチングに対する評価値に応じて、評価ブロックの動きベクトルを決定する。
【０２５３】
なお、図４８において、図１と同様のものには同一の符号を付してあり、説明は繰り返しになるので省略する。
【０２５４】
マッチング制御部５１１には、図示せぬ外部の装置からマッチングの開始指示とマッチングパラメータが供給される。マッチング制御部５１１に供給されるマッチングパラメータは、マッチング位置、評価探索範囲を構成する基本探索範囲の数（以下、基本探索範囲数という）、評価ブロック数、およびマッチング間隔により構成される。
【０２５５】
マッチング制御部５１１は、図１のマッチング制御部１１と同様に、マッチングの開始指示に応じて、入力画像の読出指示をメモリ制御部１２に供給する。マッチング制御部５１１は、マッチング制御部１１と同様に、マッチングパラメータのマッチング位置とマッチング間隔に基づいて、ブロック位置情報を生成する。また、マッチング制御部５１１は、マッチング制御部１１と同様に、ブロック位置情報に基づいて探索位置情報を生成する。マッチング制御部５１１は、マッチング制御部１１と同様に、ブロック位置情報と探索位置情報をメモリ制御部１２に供給する。
【０２５６】
さらに、マッチング制御部５１１は、図３１のマッチング制御部３１１と同様に、マッチングパラメータの評価ブロック数に基づいて、加算用リセット信号を加算部２２に供給する。また、マッチング制御部５１１は、評価ブロック数と基本探索範囲数に基づいて、最小評価値用リセット信号をベクトル決定部２３に供給する。
【０２５７】
次に、図４９乃至図５３を参照して、図４８のマッチング制御部５１１が出力する最小値格納用リセット信号について説明する。
【０２５８】
ここでは、図４９に示すように、評価探索範囲５２１が参照画像５２０の１０×６の範囲である場合について説明する。この場合、図４９に示すように、評価探索範囲５２１は、４個の基本探索範囲５３１乃至５３４から構成される。
【０２５９】
図４９に示した評価探索範囲５２１における評価値が求められる場合、図５０乃至図５３に示すように、基本探索範囲５３１乃至５３４が、基本探索範囲単位で、所定の注目画素の探索範囲とされる。
【０２６０】
なお、図５０乃至図５３において、基本探索範囲５３１乃至５３４内に記載されている数字は、その基本探索範囲５３１乃至５３４が探索範囲とされる順番を表している。
【０２６１】
即ち、まず最初に、図５０に示すように、基本探索範囲５３１が探索範囲とされ、図４８のベクトル決定部２３の比較回路２７６（図２７）は、加算部２２の加算回路２２１乃至２３５（図２０）からレジスタ２６１乃至２７５を介して供給される、基本探索範囲５３１内の位置ごとの評価値どうしを比較し、その評価値の最小値と、その最小値に対応するレジスタＩＤとを最小評価値レジスタ２７７に格納する。このとき、マッチング制御部５１１は、最小値格納用リセット信号をオフにしており、最小評価値レジスタ２７７は、最小値とレジスタＩＤを格納したままにする。
【０２６２】
次に、図５１に示すように、基本探索範囲５３２が探索範囲とされ、比較回路２７６は、加算回路２２１乃至２３５からレジスタ２６１乃至２７５を介して供給される、基本探索範囲５３２内の位置ごとの評価値、および、最小評価値レジスタ２７７に格納されている、基本探索範囲５３１内の位置ごとの評価値の最小値を比較し、その評価値の最小値と、その最小値に対応するレジスタＩＤとを最小評価値レジスタ２７７に格納する。
【０２６３】
このときも、マッチング制御部５１１は、最小値格納用リセット信号をオフにしており、最小評価値レジスタ２７７は、基本探索範囲５３１と５３２内の位置ごとの評価値の最小値と、その最小値に対応するレジスタＩＤを格納したままにする。
【０２６４】
その後、図５２に示すように、基本探索範囲５３３が探索範囲とされ、比較回路２７６は、加算回路２２１乃至２３５からレジスタ２６１乃至２７５を介して供給される、基本探索範囲５３３内の位置ごとの評価値、および、最小評価値レジスタ２７７に格納されている、基本探索範囲５３１と５３２内の位置ごとの評価値の最小値を比較し、その評価値の最小値と、その最小値に対応するレジスタＩＤとを最小評価値レジスタ２７７に格納する。
【０２６５】
このときも、マッチング制御部５１１は、最小値格納用リセット信号をオフにしており、最小評価値レジスタ２７７は、基本探索範囲５３１乃至５３３内の位置ごとの評価値の最小値と、その最小値に対応するレジスタＩＤを格納したままにする。
【０２６６】
最後に、図５３に示すように、基本探索範囲５３４が探索範囲とされ、比較回路２７６は、加算回路２２１乃至２３５からレジスタ２６１乃至２７５を介して供給される、基本探索範囲５３４内の位置ごとの評価値、および、最小評価値レジスタ２７７に格納されている、基本探索範囲５３１乃至５３３内の位置ごとの評価値の最小値を比較し、その評価値の最小値と、その最小値に対応するレジスタＩＤとを最小評価値レジスタ２７７に格納する。
【０２６７】
このとき、マッチング制御部５１１は、最小値格納用リセット信号をオンにしており、最小評価値レジスタ２７７は、格納している基本探索範囲５３１乃至５３４内の位置ごとの評価値の最小値に対応するレジスタＩＤを決定部２７８（図２７）に供給し、格納している評価値の最小値とレジスタＩＤを削除する。
【０２６８】
以上のように、評価探索範囲５２１を構成する全ての基本探索範囲５３１乃至５３４が探索範囲とされたときに、最小値格納用リセット信号はオンにされるので、最小評価値レジスタ２７７は、最小値格納用リセット信号がオンであるときにレジスタＩＤを出力することにより、評価探索範囲５２１内の位置ごとの評価値の最小値を出力することができる。
【０２６９】
次に、図５４と図５５を参照して、図４８の画像処理装置５０１がマッチングを行うマッチング処理について説明する。このマッチング処理は、例えば、図示せぬ外部の装置からマッチングの開始指示とマッチングパラメータが入力されたとき、開始される。
【０２７０】
図５４のステップＳ１００乃至Ｓ１０９の処理、および、図５５のステップＳ１１０乃至Ｓ１１２の処理は、図２９のステップＳ１０乃至Ｓ１９の処理、および図３０のステップＳ２１乃至Ｓ２３の処理と同様であるので、説明は省略する。
【０２７１】
ステップＳ１１３において、マッチング制御部５１１は、基本探索範囲数に基づいて、評価探索範囲を構成する全ての基本探索範囲の探索位置情報を生成したかどうかを判定する。
【０２７２】
ステップＳ１１３において、評価探索範囲を構成する全ての基本探索範囲の探索位置情報を生成していないと判定された場合、ステップＳ１１４において、マッチング制御部５１１は、加算部２２に供給する加算用リセット信号をオフにする。そして、処理は図５４のステップＳ１０１に戻り、マッチング制御部５１１は、前回のステップＳ１０１で生成されたブロック位置情報と同一のブロック位置情報と、評価探索範囲を構成する新たな基本探索範囲の探索位置情報を生成し、メモリ制御部１２に供給する。その後、処理はステップＳ１０２に進み、上述した処理が繰り返される。
【０２７３】
一方、ステップＳ１１３において、評価探索範囲を構成する全ての基本探索範囲の探索位置情報を生成したと判定された場合、ステップＳ１１５において、マッチング制御部５１１は、ベクトル決定部２３に供給する最小値格納用リセット信号をオンにする。ステップＳ１１６乃至Ｓ１１８の処理は、図３０のステップＳ２５乃至Ｓ２７の処理と同様であるので、説明は省略する。
【０２７４】
以上のように、画像処理装置５０１は、基本探索範囲数に基づいて、ベクトル決定部２３に供給する最小値格納用リセット信号をオンまたはオフにすることによりベクトル決定部２３を制御するので、予め設定されている基本探索範囲を対象としたマッチングだけでなく、複数の基本探索範囲から構成される評価探索範囲を対象としたマッチングも行うことができる。即ち、画像処理装置５０１は、１以上の基本探索範囲から構成される評価探索範囲を対象としたマッチングを行うことができる。
【０２７５】
従って、画像処理装置５０１は、評価探索範囲のサイズや形状ごとに対応する回路を設ける場合に比べて、小規模で、マッチングの対象とする評価探索範囲のサイズや形状を、Ｎ個の基本探索範囲からなるサイズや形状に可変にすることができる。
【０２７６】
図５６は、本発明を適用した画像処理装置の第５の実施の形態の構成例を示すブロック図である。
【０２７７】
図５６の画像処理装置６０１は、メモリ制御部１２、メモリ１３、マッチング制御部６１１、およびマッチング演算部６１２により構成され、１つの基本ブロックからなる評価ブロックの各画素と、その画素に対応する１つの基本探索範囲の一部から構成される評価探索範囲とのマッチングを行い、そのマッチングに対する評価値に応じて、評価ブロックの動きベクトルを決定する。
【０２７８】
なお、図５６において、図１と同様のものには同一の符号を付してあり、説明は繰り返しになるので省略する。
【０２７９】
マッチング制御部６１１には、図示せぬ外部の装置からマッチングの開始指示とマッチングパラメータが供給される。マッチング制御部６１１に供給されるマッチングパラメータは、マッチング位置、評価探索範囲を構成する各画素の基本探索範囲内の位置、評価ブロック数、およびマッチング間隔により構成される。
【０２８０】
マッチング制御部６１１は、図１のマッチング制御部１１と同様に、マッチングの開始指示に応じて、入力画像の読出指示をメモリ制御部１２に供給する。マッチング制御部６１１は、マッチング制御部１１と同様に、マッチングパラメータのマッチング位置とマッチング間隔に基づいて、ブロック位置情報を生成する。また、マッチング制御部６１１は、マッチング制御部１１と同様に、ブロック位置情報に基づいて探索位置情報を生成する。マッチング制御部６１１は、マッチング制御部１１と同様に、ブロック位置情報と探索位置情報をメモリ制御部１２に供給する。
【０２８１】
さらに、マッチング制御部６１１は、図３１のマッチング制御部３１１と同様に、マッチングパラメータの評価ブロック数に基づいて、加算用リセット信号を加算部２２に供給し、最小評価値用リセット信号をベクトル決定部６２１に供給する。また、マッチング制御部６１１は、評価探索範囲を構成する各画素の基本探索範囲内の位置に基づいて、後述するマッチング演算部６１２のベクトル決定部６２１による比較の有無を表す探索範囲フラグを、ベクトル決定部６２１に供給する。
【０２８２】
マッチング演算部６１２は、差分絶対値部２１、加算部２２、およびベクトル決定部６２１により構成される。
【０２８３】
ベクトル決定部６２１は、マッチング制御部６１１から供給される探索範囲フラグに応じて、加算部２２から供給される基本探索範囲内の位置ごとの評価値を比較し、その最小値と、対応するレジスタＩＤを格納する。ベクトル決定部６２１は、探索範囲フラグに応じて、格納されている評価値、および、加算部２２から供給される評価値を比較し、その最小値と、対応するレジスタＩＤを格納する。
【０２８４】
また、ベクトル決定部６２１は、図１のベクトル決定部２３と同様に、マッチング制御部６１１から供給される最小評価値用リセット信号と、格納されている最小値に対応する基本探索範囲内の位置とに基づいて、評価ブロックの動きベクトルを決定し、図示せぬ外部の装置に出力してリセットする。
【０２８５】
図５７は、図５６のベクトル決定部６２１の詳細構成例を示すブロック図である。
【０２８６】
図５７のベクトル決定部６２１は、比較回路２７６、最小評価値レジスタ２７７、決定部２７８、および１５個のレジスタ６３１乃至６４５により構成される。なお、図５７において、図２７と同一のものには同一の符号を付してあり、説明は繰り返しになるので省略する。
【０２８７】
レジスタ６３１乃至６４５のそれぞれには、図５６の加算部２２の加算回路２２１乃至２３５（図２０）から供給される、基本探索範囲内の位置ごとの評価値と、探索範囲フラグとが入力される。レジスタ６３１乃至６４５は、入力される評価値を記憶し、探索範囲フラグに応じて、記憶している評価値を比較回路２７６に出力する。
【０２８８】
具体的には、レジスタ６３１乃至６４５は、入力される評価値を記憶し、入力される探索範囲フラグが比較の有を表す１である場合、記憶している評価値を比較回路２７６に出力する。一方、レジスタ６３１乃至６４５は、入力される評価値を記憶し、探索範囲フラグが比較の無を表す０である場合、記憶している評価値を比較回路２７６に出力しない。
【０２８９】
従って、図５５のマッチング制御部６１１は、基本探索範囲を構成する画素のうちの、評価探索範囲を構成する画素の位置に対応するレジスタ６３１乃至６４５に供給される探索範囲フラグを１にし、それ以外のレジスタ６３１乃至６４５に供給される探索範囲フラグを０にすることにより、基本探索範囲のうちの評価探索範囲を構成する画素の位置に対応する評価値だけを比較することができる。
【０２９０】
なお、レジスタ６３１乃至６４５には、図２７のレジスタ２６１乃至２７５と同様に、それぞれを特定する情報として、レジスタ６３１乃至６４５に固有のレジスタＩＤが付与されているものとする。
【０２９１】
次に、図５８と図５９を参照して、図５６の画像処理装置６０１がマッチングを行うマッチング処理について説明する。このマッチング処理は、例えば、図示せぬ外部の装置からマッチングの開始指示とマッチングパラメータが入力されたとき、開始される。
【０２９２】
図５８のステップＳ１３０乃至Ｓ１３９の処理、および、図５９のステップＳ１４０と１４１の処理は、図２９のステップＳ１０乃至Ｓ１９の処理、および図３０のステップＳ２１とＳ２２の処理と同様であるので、説明は省略する。
【０２９３】
ステップＳ１４２において、マッチング制御部６１１は、評価探索範囲を構成する各画素の基本探索範囲内の位置に基づいて、図５７の各レジスタ６３１乃至６４５に供給する探索範囲フラグを０または１にする。
【０２９４】
ステップＳ１４３において、レジスタ６３１乃至６４５は、加算部２２の加算回路２２１乃至２３５（図２０）から供給される評価値を記憶し、探索範囲フラグに応じて、記憶している評価値を比較回路２７６に出力する。
【０２９５】
ステップＳ１４４乃至Ｓ１４８の処理は、図３０のステップＳ２３乃至Ｓ２７の処理と同様であるので、説明は省略する。
【０２９６】
以上のように、画像処理装置６０１は、評価探索範囲を構成する各画素の基本探索範囲内の位置に基づいて、ベクトル決定部６２１に供給する探索範囲フラグを０または１にすることによりベクトル決定部６２１を制御するので、予め設定されている基本探索範囲を対象としたマッチングだけでなく、１つの基本探索範囲を構成する一部の画素からなる評価探索範囲を対象としたマッチングも行うことができる。即ち、画像処理装置６０１は、１つの基本探索範囲を構成する１以上の画素からなる評価探索範囲を対象としたマッチングを行うことができる。
【０２９７】
従って、画像処理装置６０１は、評価探索範囲のサイズや形状ごとに対応する回路を設ける場合に比べて、小規模で、マッチングの対象とする評価探索範囲のサイズや形状を、１つの基本探索範囲を構成する１以上の画素からなるサイズや形状に可変にすることができる。
【０２９８】
図６０は、本発明を適用した画像処理装置の第６の実施の形態の構成例を示すブロック図である。
【０２９９】
図６０の画像処理装置７０１は、メモリ制御部１２、メモリ１３、マッチング演算部６１２、およびマッチング制御部７１１により構成され、１つの基本ブロックからなる評価ブロックの各画素と、その画素に対応する任意のサイズや形状の評価探索範囲とのマッチングを行い、そのマッチングに対する評価値に応じて、評価ブロックの動きベクトルを決定する。
【０３００】
なお、図６０において、図１や図５６と同様のものには同一の符号を付してあり、説明は繰り返しになるので省略する。
【０３０１】
マッチング制御部７１１には、図示せぬ他の装置からマッチングの開始指示とマッチングパラメータが供給される。マッチング制御部７１１に供給されるマッチングパラメータは、マッチング位置、基本探索範囲数、評価探索範囲を構成する各画素の基本探索範囲内の位置、評価ブロック数、およびマッチング間隔により構成される。
【０３０２】
マッチング制御部７１１は、図１のマッチング制御部１１と同様に、マッチングの開始指示に応じて、入力画像の読出指示をメモリ制御部１２に供給する。マッチング制御部７１１は、マッチング制御部１１と同様に、マッチングパラメータのマッチング位置とマッチング間隔に基づいて、ブロック位置情報を生成する。また、マッチング制御部７１１は、マッチング制御部１１と同様に、ブロック位置情報に基づいて探索位置情報を生成する。マッチング制御部７１１は、ブロック位置情報と探索位置情報をメモリ制御部１２に供給する。
【０３０３】
さらに、マッチング制御部７１１は、図４８のマッチング制御部５１１と同様に、マッチングパラメータの評価ブロック数に基づいて、加算用リセット信号を加算部２２に供給し、評価ブロック数と基本探索範囲数に基づいて、最小評価値用リセット信号をベクトル決定部６２１に供給する。また、マッチング制御部７１１は、図５６のマッチング制御部６１１と同様に、評価探索範囲を構成する各画素の基本探索範囲内の位置に基づいて、探索範囲フラグをベクトル決定部６２１に供給する。
【０３０４】
次に、図６１乃至図６４を参照して、評価探索範囲が、複数の基本探索範囲の一部から構成される場合の基準画像と参照画像について説明する。
【０３０５】
図６１の基準画像７２０は、時刻Ｔにおいて撮像された画像であり、建物７２１と、その近傍を移動する車７２２の画像を含んでいる。なお、建物７２１と車７２２の輝度の値は、ほぼ同一となっている。
【０３０６】
この場合、例えば、基準画像７２０の車７２２のフロント部分の３×２の範囲を、評価ブロック７２３として、評価ブロック７２３の各画素の輝度値と、その画素に対応する図６２の参照画像７３０の評価探索範囲の各画素の輝度値とのマッチングを行うことにより、評価ブロック７２３の動きベクトルが、車７２２の動きベクトルとして決定される。
【０３０７】
なお、図６２の参照画像７３０は、時刻Ｔ＋１において基準画像７２０の撮像時と同一の位置から撮像された画像であり、車７２２の画像は、基準画像７２０の場合と比べて左方向に３画素分移動している。
【０３０８】
図６２に示すように、評価ブロック７２３の右下の画素に対応する評価探索範囲７４０が、４個の基本探索範囲７４１乃至７４４から構成される場合、基本探索範囲７４１と７４３には、車７２２の画像だけでなく、建物７２１の画像も含まれている。
【０３０９】
従って、評価ブロック７２３の右下の画素と、評価探索範囲７４０とのマッチングを行うと、評価ブロック７２３に含まれる車７２２の画素と、評価探索範囲７４０の基本探索範囲７４１と７４２に含まれる、車７２２と輝度の近い建物７２１の画素とのマッチングの評価値が最小となる場合があり、車７２２の動きベクトルを正確に決定することができないことがある。
【０３１０】
そこで、以上のような場合には、外部の装置は、基準画像７２０の車７２２の色に基づいて、評価探索範囲７４０のうち、その色に近い参照画像７３０の範囲を評価探索範囲とするように、マッチングパラメータとしての基本探索範囲数と、評価探索範囲を構成する各画素の基本探索範囲内の位置を決定し、画像処理装置７０１に供給する。
【０３１１】
即ち、図６３に示すように、参照画像７３０において、評価探索範囲７４０のうちの、車７２２の色と近い左下の７×４の領域が、評価探索範囲７５０とされる。
【０３１２】
この場合、基本探索範囲７４１乃至７４４のそれぞれが探索範囲とされたときに、マッチング制御部７１１がベクトル決定部６２１に供給する探索範囲フラグは、図６４に示すようになる。なお、図６４においては、参照画像７３０の各画素に対応する位置に、その画素の基本探索範囲内の位置に対応するレジスタ６３１乃至６４５（図５７）に供給される探索範囲フラグの値が記載されている。
【０３１３】
図６４に示すように、探索範囲フラグは、基本探索範囲７４１乃至７４４のうちの、評価探索範囲７５０を構成する各画素に対応する評価値がレジスタ６３１乃至６４５に供給されたとき１にされ、それ以外の画素に対応する評価値がレジスタ６３１乃至６４５に供給されたとき０にされる。
【０３１４】
なお、図６１乃至図６４では、参照画像７３０の色に基づいて評価探索範囲７５０が決定される場合について説明したが、評価探索範囲７５０は、輝度やエッジの位置などの、色以外の特徴量に基づいて決定されるようにすることもできる。
【０３１５】
次に、図６５と図６６を参照して、図６０の画像処理装置７０１がマッチングを行うマッチング処理について説明する。このマッチング処理は、例えば、図示せぬ他の装置からマッチングの開始指示とマッチングパラメータが入力されたとき、開始される。
【０３１６】
図６５のステップＳ１６０乃至Ｓ１６９、および、図６６のステップＳ１７０乃至Ｓ１７４の処理は、図５８のステップＳ１３０乃至Ｓ１３９、および、図５９のステップＳ１４０乃至Ｓ１４４の処理と同様である。また、図６５のステップＳ１７５乃至Ｓ１８０の処理は、図５５のステップＳ１１３乃至Ｓ１１８の処理と同様である。
【０３１７】
以上のように、画像処理装置７０１は、基本探索範囲数に基づいて、最小格納用リセット信号をオンまたはオフにし、評価探索範囲を構成する各画素の基本探索範囲内の位置に基づいて、探索範囲フラグを０または１にすることによりベクトル決定部６２１を制御するので、予め設定されている基本探索範囲を対象としたマッチングだけでなく、１以上の基本探索範囲を構成する一部の画素からなる評価探索範囲を対象としたマッチングを行うことができる。即ち、画像処理装置７０１は、任意のサイズや形状の評価探索範囲を対象としたマッチングを行うことができる。
【０３１８】
従って、画像処理装置７０１は、評価探索範囲のサイズや形状ごとに対応する回路を設ける場合に比べて、小規模で、マッチングの対象とする評価探索範囲のサイズや形状を任意のサイズや形状に可変にすることができる。
【０３１９】
図６７は、本発明を適用した画像処理装置の第７の実施の形態の構成例を示すブロック図である。
【０３２０】
図６７の画像処理装置８０１は、メモリ制御部１２、メモリ１３、ブロックフラグ生成部８１１、探索範囲フラグ生成部８１２、マッチング制御部８１３、およびマッチング演算部８１４により構成され、入力される評価ブロックと評価探索範囲の画像パターンに基づいて、任意のサイズや形状の評価ブロック内の各画素と、その画素に対応する任意のサイズや形状の評価探索範囲とのマッチングを行い、そのマッチングに対する評価値に応じて、評価ブロックの動きベクトルを決定する。
【０３２１】
なお、図６７において、図１、図３１、および図５６と同様のものには同一の符号を付してあり、説明は繰り返しになるので省略する。
【０３２２】
ブロックフラグ生成部８１１には、図示せぬ外部の装置から、基準画像の輝度や色などの特徴量に基づいて決定された評価ブロックの画像パターンが供給される。ブロックフラグ生成部８１１は、評価ブロックの画像パターンに基づいて、基本ブロック数と、評価ブロックを構成する基本ブロック内の各画素が注目画素であるときのブロックフラグの値を表すブロックフラグ情報とを生成する。ブロックフラグ生成部８１１は、基本ブロック数とブロックフラグ情報を、マッチング制御部８１３に供給する。
【０３２３】
探索範囲フラグ生成部８１２には、図示せぬ外部の装置から、参照画像の輝度や色などの特徴量に基づいて決定された評価探索範囲の画素パターンが供給される。探索範囲フラグ生成部８１２は、評価探索範囲の画像パターンに基づいて、基本探索範囲数と、評価探索範囲を構成する基本探索範囲内の各画素の位置に対応する探索範囲フラグの値を表す探索範囲フラグ情報とを生成する。探索範囲フラグ生成部８１２は、基本探索範囲数と探索範囲フラグ情報を、マッチング制御部８１３に供給する。
【０３２４】
マッチング制御部８１３には、図示せぬ外部の装置からマッチングの開始指示とマッチングパラメータが供給される。マッチング制御部８１３に供給されるマッチングパラメータは、マッチング位置、評価ブロック数、およびマッチング間隔により構成される。
【０３２５】
マッチング制御部８１３は、図１のマッチング制御部１１と同様に、マッチングの開始指示に応じて、入力画像の読出指示をメモリ制御部１２に供給する。マッチング制御部８１３は、マッチング制御部１１と同様に、マッチングパラメータのマッチング位置とマッチング間隔に基づいて、ブロック位置情報を生成する。また、マッチング制御部８１３は、マッチング制御部１１と同様に、ブロック位置情報に基づいて探索位置情報を生成する。マッチング制御部８１３は、マッチング制御部１１と同様に、ブロック位置情報と探索位置情報をメモリ制御部１２に供給する。
【０３２６】
さらに、マッチング制御部８１３は、ブロックフラグ生成部８１１から供給される基本ブロック数と、マッチングパラメータの評価ブロック数とに基づいて、加算用リセット信号を加算部３２１に供給する。また、マッチング制御部８１３は、探索範囲フラグ生成部８１２から供給される基本探索範囲数と、マッチングパラメータの評価ブロック数とに基づいて、最小評価値用リセット信号をベクトル決定部６２１に供給する。
【０３２７】
また、マッチング制御部８１３は、ブロックフラグ生成部８１１から供給されるブロックフラグ情報に基づいて、ブロックフラグを加算部３２１の加算回路３３１乃至３４５(図３２)に供給する。マッチング制御部８１３は、探索範囲フラグ生成部８１２から供給される探索範囲フラグ情報に基づいて、探索範囲フラグをベクトル決定部６２１のレジスタ６３１乃至６４５（図５７）に供給する。
【０３２８】
マッチング演算部８１４は、差分絶対値部２１、加算部３２１、およびベクトル決定部６２１により構成される。
【０３２９】
次に、図６８を参照して、ブロックフラグ生成部８１１がブロックフラグ情報を生成するブロックフラグ生成処理について説明する。このブロックフラグ生成処理は、例えば、図示せぬ外部の装置から評価ブロックの画像パターンが供給されたとき、開始される。
【０３３０】
ステップＳ１９１において、ブロックフラグ生成部８１１は、評価ブロックの画像パターンを全て含む最小の矩形の縦と横の画素数を、基本ブロックの縦と横の画素数でそれぞれ除算する。
【０３３１】
例えば、図４３に示した３２個の画素からなるＥの文字の形状が、評価ブロック４２２の画素パターンとして供給される場合、ブロックフラグ生成部８１１は、評価ブロック４２２の画素パターンを全て含む最小の矩形である５×８の範囲の、縦の画素数である８を基本ブロックの縦の画素数である２で除算し、横の画素数である５を基本ブロックの横の画素数である３で除算する。
【０３３２】
その結果、縦の画素数どうしの除算の結果得られる商は4で、余りは0となり、横の画素数どうしの除算の結果得られる商は1で、余りは2となる。
【０３３３】
ステップＳ１９２において、ブロックフラグ生成部８１１は、除算の結果得られる商に基づいて基本ブロック数を生成する。具体的には、除算の結果、余りがない場合、ブロックフラグ生成部８１１は、商をそのまま基本ブロック数として生成し、余りがある場合、商に1を加算した結果得られる値を基本ブロック数として生成する。
【０３３４】
例えば、上述したように、縦の画素数どうしの除算の結果得られる商が4であり、余りが0である場合、ブロックフラグ生成部８１１は、商である4をそのまま縦方向の基本ブロック数として生成する。また、横の画素数どうしの除算の結果得られる商が1であり、余りが2である場合、ブロックフラグ生成部８１１は、商である1に1を加算した結果である2を、横方向の基本ブロック数として生成する。
【０３３５】
ステップＳ１９３において、ブロックフラグ生成部８１１は、評価ブロックを構成する基本ブロックごとに、評価ブロックの画像パターンに対応する画素のブロックフラグ情報として１を生成し、それ以外の画素のブロックフラグ情報として０を生成する。
【０３３６】
例えば、ブロックフラグ生成部８１１は、図４４の評価ブロック４２２の画像パターンに対応する３２個の画素のブロックフラグ情報として１を生成し、それ以外の画素のブロックフラグ情報として０を生成する。即ち、評価ブロック４２２を構成する各画素のブロックフラグ情報として、図４５に示す値が生成される。そして、ブロックフラグ生成部８１１は、基本ブロック数とブロックフラグ情報を、マッチング制御部８１３に供給し、処理は終了する。
【０３３７】
次に、図６９を参照して、探索範囲フラグ生成部８１２が探索範囲フラグ情報を生成する探索範囲フラグ生成処理について説明する。この探索範囲フラグ生成処理は、例えば、図示せぬ外部の装置から評価探索範囲の画像パターンが供給されたとき、開始される。
【０３３８】
ステップＳ２０１において、探索範囲フラグ生成部８１２は、評価探索範囲の画像パターンを全て含む最小の矩形の縦と横の画素数を、基本探索範囲の縦と横の画素数でそれぞれ除算する。
【０３３９】
例えば、図６３に示した７×４の範囲からなる形状が、評価探索範囲７５０の画素パターンとして供給される場合、探索範囲フラグ生成部８１２は、評価探索範囲７５０の画素パターンを全て含む最小の矩形である７×４の範囲の、縦の画素数である4を基本探索範囲の縦の画素数である3で除算し、横の画素数である7を基本探索範囲の横の画素数である5で除算する。
【０３４０】
その結果、縦の画素数どうしの除算の結果得られる商は1で、余りは1となり、横の画素数どうしの除算の結果得られる商は1で、余りは2となる。
【０３４１】
ステップＳ２０２において、探索範囲フラグ生成部８１２は、除算の結果得られる商に基づいて基本探索範囲数を生成する。具体的には、除算の結果、余りがない場合、探索範囲フラグ生成部８１２は、商をそのまま基本探索範囲数として生成し、余りがある場合、商に1を加算した結果得られる値を基本探索範囲数として生成する。
【０３４２】
例えば、上述したように、縦の画素数どうしの除算の結果得られる商が1であり、余りが1である場合、探索範囲フラグ生成部８１２は、商である1に1を加算した結果である2を縦方向の基本探索範囲数として生成する。また、横の画素数どうしの除算の結果得られる商が1であり、余りが2である場合、探索範囲フラグ生成部８１２は、商である1に1を加算した結果である2を、横方向の基本探索範囲数として生成する。
【０３４３】
ステップＳ２０３において、探索範囲フラグ生成部８１２は、評価探索範囲を構成する基本探索範囲ごとに、評価探索範囲の画像パターンに対応する画素の探索範囲フラグ情報として１を生成し、それ以外の画素の探索範囲フラグ情報として０を生成する。
【０３４４】
例えば、探索範囲フラグ生成部８１２は、図６３の評価探索範囲７５０の画像パターンに対応する７×４の範囲を構成する画素の探索範囲フラグ情報として１を生成し、それ以外の画素の探索範囲フラグ情報として０を生成する。即ち、評価探索範囲７５０を構成する各画素の探索範囲フラグ情報として、図６４に示す値が生成される。そして、探索範囲フラグ生成部８１２は、基本探索範囲数と探索範囲フラグ情報を、マッチング制御部８１３に供給し、処理は終了する。
【０３４５】
次に、図７０と図７１を参照して、図６７の画像処理装置８０１がマッチングを行うマッチング処理について説明する。このマッチング処理は、例えば、図示せぬ他の装置からマッチングの開始指示とマッチングパラメータが入力されたとき、開始される。
【０３４６】
ステップＳ２１０乃至Ｓ２１７の処理は、図２９のステップＳ１０乃至Ｓ１７の処理と同様であるので、説明は省略する。
【０３４７】
ステップＳ２１８において、マッチング制御部８１３は、ブロックフラグ生成部８１１から供給されるブロックフラグ情報に基づいて、ステップＳ２１２で決定された注目画素に対応する差分の絶対値を加算するかどうか、即ち注目画素のブロックフラグ情報の値が１であるかどうかを判定する。
【０３４８】
ステップＳ２１８において、注目画素に対応する差分の絶対値を加算しないと判定された場合、ステップＳ２１９において、マッチング制御部８１３は、図４０のステップＳ４９の処理と同様に、加算部３２１に供給するブロックフラグを０にし、処理はステップＳ２２２に進む。
【０３４９】
一方、ステップＳ２１８において、注目画素に対応する差分の絶対値を加算すると判定された場合、ステップＳ２２０に進み、マッチング制御部８１３は、図４０のステップＳ５０の処理と同様に、加算部３２１に供給するブロックフラグを１にする。
【０３５０】
図７０のステップＳ２２１乃至Ｓ２２３の処理、および、図７１のステップＳ２２４とＳ２２５の処理は、図２９のステップＳ１８とＳ１９の処理、図４６のステップＳ８３の処理、および図３０のステップＳ２１とＳ２２の処理と同様であり、説明は省略する。
【０３５１】
ステップＳ２２６において、マッチング制御部８１３は、探索範囲フラグ生成部８１２から供給される探索範囲フラグ情報に基づいて、図５７の各レジスタ６３１乃至６４５に供給する探索範囲フラグを０または１にする。
【０３５２】
ステップＳ２２７乃至Ｓ２３４の処理は、図６６のステップＳ１７３乃至Ｓ１８０の処理と同様であるので、説明は省略する。
【０３５３】
次に、図７２乃至図７４を参照して、図６７の画像処理装置８０１を用いて動体を追尾する場合について説明する。
【０３５４】
図７２は、画像処理装置８０１に入力画像として入力される基準画像の例を示している。
【０３５５】
図７２の基準画像９００は、時刻Ｔにおいて外部の撮像装置(図示せず)により撮像された画像であり、左方向に移動する車９０１と人物９０２の画像を含んでいる。なお、基準画像９００の撮像時において、ユーザにより撮像装置は図中矢印Ａ方向、即ち右方向にぶれている。
【０３５６】
基準画像９００に含まれている動体である車９０１と人物９０２を追尾する場合、画像処理装置８０１は、まず最初に、基準画像９００と、時刻Ｔ＋１において基準画像９００の撮像時と同一の位置から撮像された車９０１と人物９０２の画像を含む参照画像とのマッチングを行うことにより、車９０１と人物９０２の動きベクトルを決定する。
【０３５７】
具体的には、画像処理装置８０１は、例えば、図７３に示すように、基準画像９００の車９０１の画像を含む範囲を評価ブロック９１１として、評価ブロック９１１を構成する各画素と、その画素に対応する基本探索範囲のマッチングを行うことにより、車９０１の動きベクトルを決定する。また、画像処理装置８０１は、図７３に示すように、人物９０２の画像を含む範囲を評価ブロック９１２として、評価ブロック９１２を構成する各画素と、その画素に対応する基本探索範囲のマッチングを行うことにより、人物９０２の動きベクトルを決定する。
【０３５８】
次に、画像処理装置８０１は、図７４に示すように、基準画像９００の全ての範囲９１３を、所定のマッチング間隔ごとに評価ブロック９１４とし、各評価ブロック９１４を構成する各画素と、その画素に対応する基本探索範囲のマッチングを行うことにより、各評価ブロック９１４の動きベクトルを決定する。
【０３５９】
以上のように、画像処理装置８０１は、マッチングの対象とする評価ブロックの形状を任意のサイズや形状に可変にすることができるので、サイズや形状の異なる車９０１と人物９０２の両方の動きベクトルを決定し、出力することができる。
【０３６０】
また、画像処理装置８０１は、任意のマッチング間隔で評価ブロックのマッチングを行うことができるので、評価ブロック９１１と９１２のマッチング間隔とは異なるマッチング間隔で、評価ブロック９１４のマッチングを行い、基準画像９００の全体における各評価ブロック９１４の動きベクトルを求めることができる。
【０３６１】
動体を追尾する外部の追尾装置(図示せず)は、画像処理装置８０１により決定された各評価ブロック９１４の動きベクトルから、基準画像９００全体の動きベクトルを決定する。そして、追尾装置は、基準画像９００の全体の動きベクトルを考慮することにより、画像処理装置８０１により決定された車９０１と人物９０２の動きベクトルから、より正確な車９０１と人物９０２の動きベクトルを求めることができる。その結果、より効果的、かつ、よりロバストな動体の追尾を行うことができる。
【０３６２】
なお、図７２乃至図７４では、図６７の画像処理装置８０１を用いて動体を追尾する場合について説明したが、画像処理装置４０１を用いても同様の効果が得られる。
【０３６３】
また、本発明は、例えば、特開2005-301984号に記載されている監視カメラシステムに適用することができる。この場合、小規模の回路で、追尾点を追尾する追尾処理においてユーザにより指定された追尾点と同一の対象物に属する点の範囲を推定する際に参照する範囲の動きベクトルと、背景の動きベクトルを決定したり、手振れを補正する手振れ補正処理において画像全体の動きベクトルの頻度分布を算出して頻度分布の最大値を検索したりすることができる。また、小規模の回路で、オクルージョンやシーンチェンジの際に、保存されている様々サイズや形状のテンプレートとのマッチングを行うことができる。
【０３６４】
このように、本発明は、小規模の回路で、異なるマッチングパラメータを用いたマッチングを行うことができる。
【０３６５】
また、本発明は、評価値を用いて処理を行う装置であれば、動きベクトルを決定する装置以外にも適用することができる。例えば、本発明は、基準画像に含まれる所定の画像を参照画像から検出する検出装置に適用することができる。
【０３６６】
さらに、図１の画像処理装置１、図４２の画像処理装置４０１、および図６７の画像処理装置８０１において、評価ブロックが複数の基本ブロックから構成される場合、マッチングパラメータとして、評価ブロックを構成する基本ブロックどうしの間隔が供給されるようにしてもよい。この場合、マッチング制御部１１、マッチング制御部４１１、およびマッチング制御部８１３が、マッチング位置、マッチング間隔、および基本ブロックどうしの間隔に基づいて、ブロック位置情報を生成する。
【０３６７】
また、図４８の画像処理装置５０１、図６０の画像処理装置７０１、および図６７の画像処理装置８０１において、評価探索範囲が複数の基本探索範囲から構成される場合、マッチングパラメータとして、評価探索範囲を構成する基本探索範囲どうしの間隔が供給されるようにしてもよい。この場合、マッチング制御部５１１、マッチング制御部７１１、およびマッチング制御部８１３が、ブロック位置情報と基本探索範囲どうしの間隔に基づいて探索位置情報を生成する。
【０３６８】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０３６９】
図７５は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータの構成例を示すブロック図である。CPU（Central Processing Unit）100１は、ROM（Read Only Memory）1002、または記憶部1008に記憶されているプログラムに従って各種の処理を実行する。RAM（Random Access Memory）1003には、CPU1001が実行するプログラムやデータなどが適宜記憶される。これらのCPU1001、ROM1002、およびRAM1003は、バス1004により相互に接続されている。
【０３７０】
CPU1001にはまた、バス1004を介して入出力インターフェース1005が接続されている。入出力インターフェース1005には、キーボード、マウス、マイクロホン、図示せぬリモートコントローラから送信されてくる指令を受信する受信部などよりなる入力部1006、ディスプレイ、スピーカなどよりなる出力部1007が接続されている。CPU1001は、入力部1006から入力される指令に対応して各種の処理を実行する。そして、CPU1001は、処理の結果を出力部1007に出力する。
【０３７１】
入出力インターフェース1005に接続されている記憶部1008は、例えばハードディスクからなり、CPU1001が実行するプログラムや各種のデータを記憶する。通信部1009は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
【０３７２】
また、通信部1009を介してプログラムを取得し、記憶部1008に記憶してもよい。
【０３７３】
入出力インターフェース1005に接続されているドライブ1010は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア1011が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部1008に転送され、記憶される。
【０３７４】
なお、本明細書において、プログラム記録媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０３７５】
また、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０３７６】
【図１】本発明を適用した画像処理装置の第１の実施の形態の構成例を示すブロック図である。
【図２】基本ブロック、評価ブロック、基本探索範囲、および探索画素群の関係について説明する図である。
【図３】差分絶対値部の詳細構成例を示すブロック図である。
【図４】探索画素群を構成する画素を読み出す一般的な方法について説明する図である。
【図５】探索画素群を構成する画素を読み出す一般的な方法について説明する図である。
【図６】探索画素群を構成する画素を読み出す一般的な方法について説明する図である。
【図７】探索画素群を構成する画素を読み出す一般的な方法について説明する図である。
【図８】探索画素群を構成する画素を読み出す一般的な方法について説明する図である。
【図９】探索画素群を構成する画素を読み出す一般的な方法について説明する図である。
【図１０】探索画素群を構成する画素を読み出す一般的な方法について説明する図である。
【図１１】探索画素群を構成する画素を読み出す一般的な方法について説明する図である。
【図１２】ラインメモリとシフトレジスタの詳細構成例を示すブロック図である。
【図１３】ラインメモリとシフトレジスタの動作について説明する図である。
【図１４】ラインメモリとシフトレジスタの動作について説明する図である。
【図１５】ラインメモリとシフトレジスタの動作について説明する図である。
【図１６】ラインメモリとシフトレジスタの動作について説明する図である。
【図１７】ラインメモリとシフトレジスタの動作について説明する図である。
【図１８】ラインメモリとシフトレジスタの動作について説明する図である。
【図１９】ラインメモリとシフトレジスタの動作について説明する図である。
【図２０】演算部と加算部の詳細構成例を示すブロック図である。
【図２１】加算用リセット信号について説明する図である。
【図２２】加算用リセット信号について説明する図である。
【図２３】加算用リセット信号について説明する図である。
【図２４】加算用リセット信号について説明する図である。
【図２５】加算用リセット信号について説明する図である。
【図２６】評価ブロックと、加算用レジスタのビット数との関係の例を示す図である。
【図２７】ベクトル決定部の詳細構成例を示すブロック図である。
【図２８】評価ブロックと、レジスタおよび最小評価値レジスタのビット数との関係の例を示す図である。
【図２９】マッチング処理を説明するフローチャートである。
【図３０】マッチング処理を説明するフローチャートである。
【図３１】本発明を適用した画像処理装置の第２の実施の形態の構成例を示すブロック図である。
【図３２】演算部と加算部の他の詳細構成例を示すブロック図である。
【図３３】ブロックフラグについて説明する図である。
【図３４】ブロックフラグについて説明する図である。
【図３５】ブロックフラグについて説明する図である。
【図３６】ブロックフラグについて説明する図である。
【図３７】ブロックフラグについて説明する図である。
【図３８】ブロックフラグについて説明する図である。
【図３９】ブロックフラグについて説明する図である。
【図４０】他のマッチング処理を説明するフローチャートである。
【図４１】他のマッチング処理を説明するフローチャートである。
【図４２】本発明を適用した画像処理装置の第３の実施の形態の構成例を示すブロック図である。
【図４３】他のブロックフラグについて説明する図である。
【図４４】他のブロックフラグについて説明する図である。
【図４５】他のブロックフラグについて説明する図である。
【図４６】さらに他のマッチング処理を説明するフローチャートである。
【図４７】さらに他のマッチング処理を説明するフローチャートである。
【図４８】本発明を適用した画像処理装置の第４の実施の形態の構成例を示すブロック図である。
【図４９】最小値格納用リセット信号について説明する図である。
【図５０】最小値格納用リセット信号について説明する図である。
【図５１】最小値格納用リセット信号について説明する図である。
【図５２】最小値格納用リセット信号について説明する図である。
【図５３】最小値格納用リセット信号について説明する図である。
【図５４】さらに他のマッチング処理を説明するフローチャートである。
【図５５】さらに他のマッチング処理を説明するフローチャートである。
【図５６】本発明を適用した画像処理装置の第５の実施の形態の構成例を示すブロック図である。
【図５７】ベクトル決定部の詳細構成例を示すブロック図である。
【図５８】さらに他のマッチング処理を説明するフローチャートである。
【図５９】さらに他のマッチング処理を説明するフローチャートである。
【図６０】本発明を適用した画像処理装置の第６の実施の形態の構成例を示すブロック図である。
【図６１】基準画像の例を示す図である。
【図６２】参照画像の例を示す図である。
【図６３】参照画像の例を示す図である。
【図６４】参照画像の例を示す図である。
【図６５】さらに他のマッチング処理を説明するフローチャートである。
【図６６】さらに他のマッチング処理を説明するフローチャートである。
【図６７】本発明を適用した画像処理装置の第７の実施の形態の構成例を示すブロック図である。
【図６８】ブロックフラグ生成処理について説明するフローチャートである。
【図６９】探索フラグ生成処理について説明するフローチャートである。
【図７０】さらに他のマッチング処理を説明するフローチャートである。
【図７１】さらに他のマッチング処理を説明するフローチャートである。
【図７２】動体を追尾する場合の画像処理装置の処理について説明する図である。
【図７３】動体を追尾する場合の画像処理装置の処理について説明する図である。
【図７４】動体を追尾する場合の画像処理装置の処理について説明する図である。
【図７５】パーソナルコンピュータの構成例を示すブロック図である。
【符号の説明】
【０３７７】
１  画像処理装置，  １１  マッチング制御部，  １２  メモリ制御部，  １３  メモリ，  ２２  加算部，  ２３  ベクトル決定部，  ６２  シフトレジスタ，  ６３  演算部，  ５０１  画素処理装置，  ５１１  マッチング制御部，  ８１１  ブロックフラグ生成部，  ８１２  探索範囲フラグ生成部，  1001  CPU，  1002  ROM，  1003  RAM，  1008  記憶部，  1011  リムーバブルメディア
【図１】
2008108045.tif 000003
【図２】
2008108045.tif 000004
【図３】
2008108045.tif 000005
【図４】
2008108045.tif 000006
【図５】
2008108045.tif 000007
【図６】
2008108045.tif 000008
【図７】
2008108045.tif 000009
【図８】
2008108045.tif 000010
【図９】
2008108045.tif 000011
【図１０】
2008108045.tif 000012
【図１１】
2008108045.tif 000013
【図１２】
2008108045.tif 000014
【図１３】
2008108045.tif 000015
【図１４】
2008108045.tif 000016
【図１５】
2008108045.tif 000017
【図１６】
2008108045.tif 000018
【図１７】
2008108045.tif 000019
【図１８】
2008108045.tif 000020
【図１９】
2008108045.tif 000021
【図２０】
2008108045.tif 000022
【図２１】
2008108045.tif 000023
【図２２】
2008108045.tif 000024
【図２３】
2008108045.tif 000025
【図２４】
2008108045.tif 000026
【図２５】
2008108045.tif 000027
【図２６】
2008108045.tif 000028
【図２７】
2008108045.tif 000029
【図２８】
2008108045.tif 000030
【図２９】
2008108045.tif 000031
【図３０】
2008108045.tif 000032
【図３１】
2008108045.tif 000033
【図３２】
2008108045.tif 000034
【図３３】
2008108045.tif 000035
【図３４】
2008108045.tif 000036
【図３５】
2008108045.tif 000037
【図３６】
2008108045.tif 000038
【図３７】
2008108045.tif 000039
【図３８】
2008108045.tif 000040
【図３９】
2008108045.tif 000041
【図４０】
2008108045.tif 000042
【図４１】
2008108045.tif 000043
【図４２】
2008108045.tif 000044
【図４３】
2008108045.tif 000045
【図４４】
2008108045.tif 000046
【図４５】
2008108045.tif 000047
【図４６】
2008108045.tif 000048
【図４７】
2008108045.tif 000049
【図４８】
2008108045.tif 000050
【図４９】
2008108045.tif 000051
【図５０】
2008108045.tif 000052
【図５１】
2008108045.tif 000053
【図５２】
2008108045.tif 000054
【図５３】
2008108045.tif 000055
【図５４】
2008108045.tif 000056
【図５５】
2008108045.tif 000057
【図５６】
2008108045.tif 000058
【図５７】
2008108045.tif 000059
【図５８】
2008108045.tif 000060
【図５９】
2008108045.tif 000061
【図６０】
2008108045.tif 000062
【図６１】
2008108045.tif 000063
【図６２】
2008108045.tif 000064
【図６３】
2008108045.tif 000065
【図６４】
2008108045.tif 000066
【図６５】
2008108045.tif 000067
【図６６】
2008108045.tif 000068
【図６７】
2008108045.tif 000069
【図６８】
2008108045.tif 000070
【図６９】
2008108045.tif 000071
【図７０】
2008108045.tif 000072
【図７１】
2008108045.tif 000073
【図７２】
2008108045.tif 000074
【図７３】
2008108045.tif 000075
【図７４】
2008108045.tif 000076
【図７５】
2008108045.tif 000077