(57)【要約】【課題】撮影状況に応じたブロックマッチングを行なう画像処理装置及びそのプログラム、撮像装置を実現する。【解決手段】図２（ｂ）に示すように撮影シーン毎に探索範囲の大きさを記録したテーブルを備え、ユーザによって撮影シーンが選択されると、該選択された撮影シーンの情報を取得し（Ｓ４）、該取得した撮影シーンの情報に対応する大きさをテーブルから取得し、該取得した大きさをブロックマッチングの探索範囲の大きさとして設定する（Ｓ５）。その後、被写体追従を開始すると判断すると該設定された探索範囲の大きさでブロックマッチング動作を行なう。これにより、図３（ａ）、（ｂ）に示すように撮影シーンに応じてブロックマッチングの探索条件を変えることができる。【選択図】  図２
2008236015.tif 000002
【特許請求の範囲】
【請求項１】
参照フレーム画像内の所定の注目画像領域に対応する画像領域を、探索対象フレーム画像から探索するブロックマッチング処理手段と、
撮影情報を取得する取得手段と、
前記取得手段により取得された撮影情報に応じて、前記画像領域の探索条件を切り換え設定する設定手段と、を備え、
前記ブロックマッチング処理手段は、前記設定手段により設定された探索条件に基づいて、前記注目画像領域に対応する画像領域を探索することを特徴とする画像処理装置。
【請求項２】
前記設定手段は、
前記取得手段により取得された撮影情報に応じたサイズの探索範囲を、前記探索対象フレーム画像に設定し、
前記ブロックマッチング処理手段は、
前記設定手段によりそのサイズが設定された探索範囲に対して、前記注目画像領域に対応する画像領域を探索することを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記設定手段は、
前記取得手段により取得された撮影情報に応じた補正係数マップを設定し、
前記ブロックマッチング処理手段は、
前記注目画像領域との相関度を前記探索対象フレーム画像の各領域毎に導出する相関度導出手段と、前記相関度導出手段により導出した各相関度を前記設定手段により設定された補正係数マップに基づいて補正する相関度補正手段と、を備え、前記相関度補正手段により補正された相関度に基づいて、前記注目画像領域に対応する画像領域を探索することを特徴とする請求項１又は２記載の画像処理装置。
【請求項４】
前記設定手段は、
前記取得手段により取得された撮影情報に応じたサイズの注目画像領域を、前記参照フレーム画像に設定し、
前記ブロックマッチング処理手段は、
前記設定手段によりそのサイズが設定された注目画像領域に対応する画像領域を探索することを特徴とする請求項１乃至３の何れかに記載の画像処理装置。
【請求項５】
前記設定手段は、
前記取得手段により取得された撮影情報に応じた間引き間隔を設定し、
前記ブロックマッチング処理手段は、
前記設定手段により設定された間引き間隔で、前記参照フレーム画像及び前記探索対象フレーム画像の画素を間引く画素間引き手段を備え、前記画素間引き手段により画素を間引いた前記参照フレーム画像及び前記探索対象フレーム画像に基づいて、注目画像領域に対応する画像領域を探索することを特徴とする請求項１乃至４の何れかに記載の画像処理装置。
【請求項６】
フレーム画像を順次取得するフレーム画像取得手段を備え、
前記ブロックマッチング処理手段は、
前記フレーム画像取得手段により取得されるフレーム画像から前記参照フレーム画像及び前記探索対象フレーム画像を選択する選択手段を備えることを特徴とする請求項１乃至５の何れかに記載の画像処理装置。
【請求項７】
前記設定手段は、
前記取得手段により取得された撮影情報に応じたフレームレートを設定し、
前記フレーム画像取得手段は、
前記設定手段により設定されたフレームレートでフレーム画像を順次取得することを特徴とする請求項６記載の画像処理装置。
【請求項８】
前記選択手段は、
前記フレーム画像取得手段により取得された最新のフレーム画像を前記探索対象フレーム画像として選択するとともに、前記選択した探索対象フレーム画像の直前に取得されたフレーム画像を前記参照フレーム画像として選択することを特徴とする請求項６又は７記載の画像処理装置。
【請求項９】
ユーザが任意の撮影シーンを選択するための撮影シーン選択手段を備え、
前記取得手段は、
前記撮影シーン選択手段により選択された撮影シーンを撮影情報として取得することを特徴とする請求項１乃至８の何れかに記載の画像処理装置。
【請求項１０】
前記ブロックマッチング処理手段による探索結果に基づいて前記参照フレーム画像と前記探索対象フレーム画像と間の動きベクトルを算出する動きベクトル算出手段を備え、
前記取得手段は、
前記動きベクトル算出手段により算出された動きベクトルを撮影情報として取得することを特徴とする請求項１乃至９の何れかに記載の画像処理装置。
【請求項１１】
前記撮影情報は、
ズーム倍率情報、縦撮り又は横撮り情報であることを特徴とする請求項１乃至１０の何れかに記載の画像処理装置。
【請求項１２】
被写体像を光電変換する撮像素子と、
前記撮像素子により光電変換されたフレーム画像を順次取得するフレーム画像取得手段と、
前記フレーム画像取得手段により取得された最新のフレーム画像を探索対象フレーム画像として選択するともに、前記選択した探索対象フレーム画像の直前に取得されたフレーム画像を参照フレーム画像として選択する選択手段と、
前記参照フレーム画像内の所定の注目画像領域に対応する画像領域を、前記探索対象フレーム画像から探索するブロックマッチング処理手段と、
撮影情報を取得する取得手段と、
前記取得手段により取得された撮影情報に応じて、前記画像領域の探索条件を切り換え設定する設定手段と、を備え、
前記ブロックマッチング処理手段は、前記設定手段により設定された探索条件に基づいて、前記注目画像領域に対応する画像領域を探索することを特徴とする撮像装置。
【請求項１３】
コンピュータに、
参照フレーム画像内の所定の注目画像領域に対応する画像領域を、探索対象フレーム画像から探索させるブロックマッチング処理と、
撮影情報を取得させる取得処理と、
前記取得処理で取得させた撮影情報に応じて、前記画像領域の探索条件を切り換え設定させる設定処理と、を実行させ、
前記ブロックマッチング処理は、前記設定処理で設定させた探索条件に基づいて、前記注目画像領域に対応する画像領域を探索させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、撮像装置及びそのプログラムに係り、詳しくは、被写体追従機能、つまり、被写体位置を検出していく画像処理装置、撮像装置及びそのプログラムに関する。
【背景技術】
【０００２】
近年、撮像装置、例えば、デジタルカメラにおいては、移動する被写体に追従する（移動する被写体を追跡していく）、つまり、移動する被写体の位置を順次検出する機能を備えた撮像装置が開発された。
この被写体に追従させる技術（被写体を追跡する技術）として、例えば、下記特許文献１に記載されたようなテンプレートマッチング（ブロックマッチングともいう）を用いて被写体の位置を検出するという技術がある。
【０００３】
具体的には、前フレーム画像から切り出されたテンプレート（追従させたい被写体を含む画像領域）に類似する小画像領域を現フレーム画像の探索範囲から探索することにより、最も類似度の高い（相関度が高い）小画像領域を検出し、この検出された小画像領域内に該被写体が移動したと判断する。また、新たにフレーム画像が撮像されると、該検出した小画像領域をテンプレートとし、上記動作を繰り返すことにより、連続して撮像される各フレーム画像に対して、どの位置に被写体が移動しているのかを順次検出（追跡）していく。
【０００４】
つまり、図１３に示すように、現フレーム画像５２上に設定された探索範囲５４（上記特許文献１ではフレーム画像の全範囲）内で、前フレーム画像５１から切り出された基準ブロック５３（上記テンプレート）と同じ大きさを有する探索ブロック５５を順次抽出するとともに、該抽出した各探索ブロック５５の中で、基準ブロック５３と最も相関度が高くなる探索ブロック５５を検出する。
【０００５】
ここで、相関度は、基準ブロック５３の各画素値と、探索ブロック５５の各画素値とを、対応する座標位置の画素間で（例えば、基準ブロック５３の中で一番左上にある画素と、探索ブロック５５の中で一番左上にある画素）減算し、その二乗の総和（ブロック評価値）をその評価値として求めることができる。そして、この評価値の値が最も小さくなる探索ブロック５５を基準ブロック５３と最も相関度が高くなる探索ブロック５５として検出する。
【０００６】
【特許文献１】公開特許公報  特開２００１−７６１５６
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記技術によれば、どんな撮影状況においても一律に同じ探索条件でブロックマッチングを行なうので、種々異なる被写体に対して、それぞれに適したブロックマッチングを行なうことができないという問題がある。例えば、ほとんど動きのない被写体に対して、その範囲が比較的広い探索範囲を設定すると、不必要な演算量が増え、ＣＰＵに過剰な負荷を与えたり、また、動きの激しい被写体に対してその範囲が比較的狭い探索範囲を設定すると、被写体が探索範囲外に移動してしまい、当該被写体を追跡しきれないといった問題がある。また、例えば、被写体の大きさに比べて小さなサイズの基準ブロックや大きな基準ブロックが設定される場合にも、導出される相関度の精度が低下することで誤検出が発生し、被写体を追跡しきれないといった問題が発生する。
【０００８】
そこで本発明は、かかる従来の問題点に鑑みてなされたものであり、撮影状況に適したブロックマッチングを行なうことができる画像処理装置、撮像装置及びそのプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的達成のため、請求項１記載の発明による画像処理装置は、参照フレーム画像内の所定の注目画像領域に対応する画像領域を、探索対象フレーム画像から探索するブロックマッチング処理手段と、
撮影情報を取得する取得手段と、
前記取得手段により取得された撮影情報に応じて、前記画像領域の探索条件を切り換え設定する設定手段と、を備え、
前記ブロックマッチング処理手段は、前記設定手段により設定された探索条件に基づいて、前記注目画像領域に対応する画像領域を探索することを特徴とする。
【００１０】
また、例えば、請求項２に記載されているように、前記設定手段は、
前記取得手段により取得された撮影情報に応じたサイズの探索範囲を、前記探索対象フレーム画像に設定し、
前記ブロックマッチング処理手段は、
前記設定手段によりそのサイズが設定された探索範囲に対して、前記注目画像領域に対応する画像領域を探索するようにしてもよい。
【００１１】
また、例えば、請求項３に記載されているように、前記設定手段は、
前記取得手段により取得された撮影情報に応じた補正係数マップを設定し、
前記ブロックマッチング処理手段は、
前記注目画像領域との相関度を前記探索対象フレーム画像の各領域毎に導出する相関度導出手段と、前記相関度導出手段により導出した各相関度を前記設定手段により設定された補正係数マップに基づいて補正する相関度補正手段と、を備え、前記相関度補正手段により補正された相関度に基づいて、前記注目画像領域に対応する画像領域を探索するようにしてもよい。
【００１２】
また、例えば、請求項４に記載されているように、前記設定手段は、
前記取得手段により取得された撮影情報に応じたサイズの注目画像領域を、前記参照フレーム画像に設定し、
前記ブロックマッチング処理手段は、
前記設定手段によりそのサイズが設定された注目画像領域に対応する画像領域を探索するようにしてもよい。
【００１３】
また、例えば、請求項５に記載されているように、前記設定手段は、
前記取得手段により取得された撮影情報に応じた間引き間隔を設定し、
前記ブロックマッチング処理手段は、
前記設定手段により設定された間引き間隔で、前記参照フレーム画像及び前記探索対象フレーム画像の画素を間引く画素間引き手段を備え、前記画素間引き手段により画素を間引いた前記参照フレーム画像及び前記探索対象フレーム画像に基づいて、注目画像領域に対応する画像領域を探索するようにしてもよい。
【００１４】
また、例えば、請求項６に記載されているように、フレーム画像を順次取得するフレーム画像取得手段を備え、
前記ブロックマッチング処理手段は、
前記フレーム画像取得手段により取得されるフレーム画像から前記参照フレーム画像及び前記探索対象フレーム画像を選択する選択手段を備えるようにしてもよい。
【００１５】
また、例えば、請求項７に記載されているように、前記設定手段は、
前記取得手段により取得された撮影情報に応じたフレームレートを設定し、
前記フレーム画像取得手段は、
前記設定手段により設定されたフレームレートでフレーム画像を順次取得するようにしてもよい。
【００１６】
また、例えば、請求項８に記載されているように、前記選択手段は、
前記フレーム画像取得手段により取得された最新のフレーム画像を前記探索対象フレーム画像として選択するとともに、前記選択した探索対象フレーム画像の直前に取得されたフレーム画像を前記参照フレーム画像として選択するようにしてもよい。
【００１７】
また、例えば、請求項９に記載されているように、ユーザが任意の撮影シーンを選択するための撮影シーン選択手段を備え、
前記取得手段は、
前記撮影シーン選択手段により選択された撮影シーンを撮影情報として取得するようにしてもよい。
【００１８】
また、例えば、請求項１０に記載されているように、前記ブロックマッチング処理手段による探索結果に基づいて前記参照フレーム画像と前記探索対象フレーム画像と間の動きベクトルを算出する動きベクトル算出手段を備え、
前記取得手段は、
前記動きベクトル算出手段により算出された動きベクトルを撮影情報として取得するようにしてもよい。
【００１９】
また、例えば、請求項１１に記載されているように、前記撮影情報は、
ズーム倍率情報、縦撮り又は横撮り情報であるようにしてもよい。
【００２０】
上記目的達成のため、請求項１２記載の発明による撮像装置は、被写体像を光電変換する撮像素子と、
前記撮像素子により光電変換されたフレーム画像を順次取得するフレーム画像取得手段と、
前記フレーム画像取得手段により取得された最新のフレーム画像を探索対象フレーム画像として選択するともに、前記選択した探索対象フレーム画像の直前に取得されたフレーム画像を参照フレーム画像として選択する選択手段と、
前記参照フレーム画像内の所定の注目画像領域に対応する画像領域を、前記探索対象フレーム画像から探索するブロックマッチング処理手段と、
撮影情報を取得する取得手段と、
前記取得手段により取得された撮影情報に応じて、前記画像領域の探索条件を切り換え設定する設定手段と、を備え、
前記ブロックマッチング処理手段は、前記設定手段により設定された探索条件に基づいて、前記注目画像領域に対応する画像領域を探索することを特徴とする。
【００２１】
上記目的達成のため、請求項１３記載の発明によるプログラムは、コンピュータに、
参照フレーム画像内の所定の注目画像領域に対応する画像領域を、探索対象フレーム画像から探索させるブロックマッチング処理と、
撮影情報を取得させる取得処理と、
前記取得処理で取得させた撮影情報に応じて、前記画像領域の探索条件を切り換え設定させる設定処理と、を実行させ、
前記ブロックマッチング処理は、前記設定処理で設定させた探索条件に基づいて、前記注目画像領域に対応する画像領域を探索させることを特徴とする。
【発明の効果】
【００２２】
本発明によれば、撮影状況に適したブロックマッチングを行なうことができる。
【発明を実施するための最良の形態】
【００２３】
以下、本実施の形態について、デジタルカメラに適用した一例として図面を参照して詳細に説明する。
［実施の形態]
Ａ．デジタルカメラの構成
図１は、本発明の画像処理装置または撮像装置を実現するデジタルカメラ１の電気的な概略構成を示すブロック図である。
デジタルカメラ１は、撮影レンズ２、レンズ駆動回路３、絞り兼用シャッタ４、ＣＣＤ５、ドライバ６、ＴＧ（timing generator）７、ユニット回路８、メモリ９、ＣＰＵ１０、ＤＲＡＭ１１、画像表示部１２、フラッシュメモリ１３、キー入力部１４、バス１５を備えている。
【００２４】
撮影レンズ２は、図示しない複数のレンズ群から構成されるフォーカスレンズ、ズームレンズ等を含み、フォーカスレンズ及びズームレンズには、レンズ駆動回路３が接続されている（図示略）。
レンズ駆動回路３は、フォーカスレンズ及びズームレンズを光軸方向にそれぞれ移動させるモータ（図示略）と、ＣＰＵ１０から送られてくる制御信号にしたがってフォーカスモータ及びズームモータをそれぞれ駆動させるモータドライバ（図示略）とから構成されている。
【００２５】
絞り４は、図示しない駆動回路を含み、駆動回路はＣＰＵ１０から送られてくる制御信号にしたがって絞りを動作させる。
絞りとは、撮影レンズ２から入ってくる光の量を制御する機構のことをいい、ＣＣＤ５の露出量は、この絞りとシャッタ速度によって変わる。
【００２６】
撮像素子（ここではＣＣＤ５）は、ドライバ６によって走査駆動され、一定周期毎に被写体像のＲＧＢ値の各色の光の強さを光電変換して撮像信号としてユニット回路８に出力する。このドライバ６、ユニット回路８の動作タイミングはＴＧ７を介してＣＰＵ１０により制御される。なお、ＣＣＤ５はベイヤー配列の色フィルターを有しており、電子シャッタとしての機能も有する。この電子シャッタのシャッタ速度は、ドライバ６、ＴＧ７を介してＣＰＵ１０によって制御される。
【００２７】
ユニット回路８にはＴＧ７が接続されており、ＣＣＤ５から出力される撮像信号を相関二重サンプリングして保持するＣＤＳ（Correlated Double Sampling）回路、そのサンプリング後の撮像信号の自動利得調整を行うＡＧＣ（Automatic Gain Control）回路、その自動利得調整後のアナログの撮像信号をデジタル信号に変換するＡ／Ｄ変換器から構成されており、ＣＣＤ５の撮像信号は、ユニット回路８を経てデジタル信号としてＣＰＵ１０に送られる。
【００２８】
ＣＰＵ１０は、ユニット回路８から送られてきた画像データに対してガンマ補正、補間処理、ホワイトバランス処理、ヒストグラム生成処理、輝度色差信号（ＹＵＶデータ）の生成処理などの画像処理を行う機能を有するとともに、デジタルカメラ１の各部を制御するワンチップマイコンである。
特に、本実施の形態では、ＣＰＵ１０は、２枚のフレーム画像（参照フレーム画像、探索対象フレーム画像）を用いて参照フレーム画像内の注目画像領域に対応する画像領域を、探索対象フレーム画像から探索するブロックマッチング機能、撮影情報を取得する機能、該取得した撮影情報に対応するブロックマッチングの探索条件を設定する機能を有し、該設定された探索条件でブロックマッチングを行なわせる。
【００２９】
メモリ９には、ＣＰＵ１０の各部の制御に必要な制御プログラム、及び必要なデータ（例えば、探索範囲テーブル、補正係数マップ等）が格納されており、ＣＰＵ１０は、該プログラムに従って動作する。
【００３０】
ＤＲＡＭ１１は、ＣＣＤ５によってそれぞれ撮像された後、ＣＰＵ１０に送られてきた画像データを一時記憶するバッファメモリとして使用されるとともに、ＣＰＵ１０のワーキングメモリとして使用される。
画像表示部１２は、カラーＬＣＤとその駆動回路を含み、撮影待機状態にあるときには、ＣＣＤ５によって撮像された被写体をスルー画像として表示し、記録画像の再生時には、フラッシュメモリ１３から読み出され、伸張された記録画像を表示させる。
【００３１】
フラッシュメモリ１３は、ＣＣＤ５によって撮像された画像データなどを保存しておく記録媒体である。
キー入力部１４は（撮影シーン選択手段）、半押し全押しの２段階操作可能なシャッタボタン、モード切替キー、撮影シーン選択画面移行キー、メニューキー、十字キー、セットキー等の複数の操作キーを含み、ユーザのキー操作に応じた操作信号をＣＰＵ１０に出力する。
【００３２】
Ｂ．デジタルカメラ１の動作
本実施の形態は、撮影状況に応じてブロックマッチングにおける探索条件としての探索範囲の大きさ（広さ）を変えて、ブロックマッチングを行なうというものである。
【００３３】
以下、撮影状況に応じてブロックマッチングにおける探索範囲を変更する場合の動作を図２（ａ）のフローチャートにしたがって説明する。
【００３４】
ユーザにより、キー入力部１４のモード切替キーが操作され、撮影モードに設定されると、ステップＳ１で、ＣＰＵ１０は、所定のフレームレートでＣＣＤ５により被写体を撮像させ、順次取得されるフレーム画像データに画像処理を施し、該画像処理が施されたフレーム画像データをバッファメモリ（ＤＲＡＭ１１）に記憶させていき（フレーム画像取得手段）、該順次記憶させたフレーム画像データを画像表示部１２に表示させていくという、いわゆるスルー画像表示を開始する。このとき、ＣＰＵ１０は、スルー画像上の所定位置（たとえば、中央位置）に、図４（ａ）に示すような画像領域を指定するための、注目画像指定枠３４を表示させる。
【００３５】
次いで、ステップＳ２で、ＣＰＵ１０は、撮影シーン設定モードが選択されたか否かを判断する。この判断は、撮影シーン選択画面移行キーの操作に対応する操作信号がキー入力部１４から送られてきたか否かにより判断する。
ステップＳ２で、撮影シーン設定モードが選択されたと判断すると、ステップＳ３に進み、ＣＰＵ１０は、撮影シーン選択画面を表示するとともに、撮影シーンの選択が行なわれたか否かを判断する。
【００３６】
具体的には、ＣＰＵ１０は、撮影シーン設定モードが設定されたと判断すると、複数種類の撮影シーン（例えばシーンを示す名称や画像）を撮影シーン選択画面として一覧表示させる。この撮影シーンの種類としては、例えば、「人物を写す」、「夜景を写す」、「スポーツを写す」、「子供を写す」等がある。そして、各撮影シーンには、それぞれ、ブロックマッチングにおける探索条件を含む撮影条件が対応付けられている。
そして、ユーザは十字キー及びＳＥＴキーを操作することにより、現在の撮影状況に適した撮影シーンを１つ選択することができる。
【００３７】
そして、ステップＳ３で、撮影シーンの選択が行なわれていないと判断すると選択されるまでステップＳ３に留まり、撮影シーンの選択が行なわれたと判断すると、ステップＳ４に進み、ＣＰＵ１０は、該選択された撮影シーンを撮影情報として取得する（取得手段）。
次いで、ステップＳ５で、ＣＰＵ１０は、該取得した撮影情報（ここでは撮影シーン）に対応する探索範囲の大きさ（サイズ）をメモリ９の探索範囲テーブルから取得し、該取得した大きさをブロックマッチングの探索範囲の大きさとして設定して（設定手段）、ステップＳ６に進む。このとき、ＣＰＵ１０は、該設定された探索範囲の大きさを探索範囲記憶領域に記憶させるとともに、スルー画像表示状態に復帰させる。
【００３８】
この探索範囲テーブルには、各撮影シーン（例えばシーンを示す名称や画像）とそれに対応する探索範囲の大きさ（探索条件）とが予め記録されており、該探索範囲テーブルの様子を図２（ｂ）に例示する。
図２（ｂ）に示すように、各撮影シーン毎に探索範囲の大きさ（・・画素×・・画素）が記録されており、ＣＰＵ１０は、該取得した撮影シーン（撮影情報）に応じて図２（ｂ）に示すような探索範囲テーブルから探索範囲の大きさを取得して設定する。
【００３９】
この撮影シーン毎に記録されている探索範囲の大きさは、被写体の動きが激しい、被写体が広範囲に動くと予想される撮影シーン（たとえば、スポーツを写す、子供を写す）の場合はその探索範囲が広くなり、逆に被写体の動きが少ないと予想される撮影シーン（たとえば、夜景を写す）の場合は探索範囲が狭く（小さく）なるように記録されている。
【００４０】
なお、ここでは撮影モードに設定された当初は、探索範囲記憶領域にデフォルトの探索範囲の大きさ、若しくは、前回の撮影モード時に最終選択された撮影シーンに対応する探索範囲の大きさを予め探索範囲記憶領域に記憶させておき、撮影シーンが選択されると、それに応じて探索範囲記憶領域の記憶を更新させる。
一方、ステップＳ２で、撮影シーン設定モードが選択されていないと判断するとそのままステップＳ６に進む。
【００４１】
ステップＳ６に進むと、ＣＰＵ１０は、ユーザによって十字キーの操作が行なわれたか否かを判断する。この判断は、十字キーの操作に対応する操作信号がキー入力部１４から送られてきたか否かにより判断する。
ステップＳ６で、十字キーの操作が行われたと判断すると、ステップＳ７に進み、ＣＰＵ１０は、該十字キーの操作に従って注目画像指定枠３４の表示位置を変更させ、該変更された表示位置に注目画像指定枠３４を表示させて、ステップＳ８に進む。つまり、十字キーの操作に応じて注目画像指定枠３４が移動することになる。
【００４２】
例えば、十字キーの「→」が操作されると注目画像指定枠３４の表示位置は右に移動し（注目画像指定枠３４は右に移動し）、「←」が操作されると注目画像指定枠３４の表示位置は左に移動する（注目画像指定枠３４は左に移動する）。このとき、ユーザは、撮影したいメインとなる被写体としての追従させたい（追跡したい）被写体（メイン被写体）に注目画像指定枠３４が重なるように、または、メイン被写体が注目画像指定枠３４内に納まるように、十字キーを操作することによって注目画像指定枠３４をメイン被写体に移動させる。なお、ユーザは、当該デジタルカメラ１本体の向きを変えることで、注目画像指定枠３４とメイン被写体との相対的な位置関係を調整して、メイン被写体に注目画像指定枠３４が重なるように、または、メイン被写体が注目画像指定枠３４内に納まるように、注目画像指定枠３４をメイン被写体に移動させてもよい。
一方、ステップＳ６で、十字キーの操作が行われていないと判断するとそのままステップＳ８に進む。
【００４３】
ステップＳ８に進むと、ＣＰＵ１０は、被写体追従を開始するか否かを判断する。この判断は、シャッタボタンの半押し操作に対応する操作信号がキー入力部１４から送られてきたか否かにより判断する。
このとき、シャッタボタンの半押し操作により注目画像指定枠３４に重なっている被写体に対して被写体追従が開始されることになるので、ユーザは追従させたいメイン被写体が注目画像指定枠３４と重なった時にシャッタボタンの半押し操作を行なう。
【００４４】
ステップＳ８で、被写体追従を開始しないと判断するとステップＳ２に戻り、上記した動作を繰り返す。これにより、シャッタボタンを半押し操作するまでは、ユーザは自由に注目画像指定枠の表示位置を変更することによって注目画像指定枠とメイン被写体とを合わせることができ、また、現在の撮影状況に応じた撮影シーンの選択変更も行なうことができる。
【００４５】
また、ステップＳ８で、被写体追従を開始すると判断すると、ステップＳ９に進み、ＣＰＵ１０は、該設定された大きさ（探索範囲記憶領域に記憶されている探索範囲の大きさ）の探索範囲を対象として、ブロックマッチング動作を開始することにより被写体追従を開始させる。
【００４６】
図３は、ブロックマッチングにおける探索範囲を説明するための図であり、図３（ａ）は、その範囲が比較的広い探索範囲が設定された場合を示し、図３（ｂ）は、その範囲が比較的狭い探索範囲が設定された場合を示している。つまり、「スポーツを写す」などといった、被写体の動きが激しいことが想定される撮影シーンが選択されていたときには、図３（ａ）に示すような、その範囲が比較的広い探索範囲が設定される。また、「夜景を写す」などといった、被写体の動きがあること自体があまり想定されない撮影シーンが選択されていたときには、図３（ｂ）に示すような、その範囲が比較的狭い探索範囲が設定される。
【００４７】
ここで、図３のＰ（ｘ−１）は前フレーム画像データ（参照フレーム画像）、Ｐ（ｘ）は現フレーム画像データ（探索対象フレーム画像）、２３は前フレーム画像データＰ（ｘ−１）に設定される基準ブロック（注目画像領域）、２４は基準ブロック２３に対応して現フレーム画像データＰ（ｘ）に設定される探索範囲、２５は探索範囲２４に基づいて順次抽出される探索ブロック、２６は基準ブロック２３の基準座標位置（例えば基準ブロック２３の中心画素の座標位置）、２７は探索範囲２４における基準座標位置（例えば探索範囲２４における中心画素の座標位置）、２８は抽出された探索ブロック２５の基準座標位置（例えば抽出される探索ブロック２５の中心画素の座標位置）を示している。
【００４８】
なお、ここでは、探索ブロック２５の基準座標位置２８を該探索ブロック２５の代表座標位置とし、基準ブロック２３の基準座標位置２６を該基準ブロック２３の代表座標位置とする。
また、ここでは、現フレーム画像データとは最新のフレーム画像データのことを言い、前フレーム画像データとは該最新のフレーム画像データの１つ前のフレーム画像データのことを言う。
【００４９】
このブロックマッチング動作による被写体追従について簡単に説明する。シャッタボタンが半押しされた後、新たにフレーム画像データが取得されると、ＣＰＵ１０は、１つ前に取得されていたフレーム画像データ（前回の現フレーム画像データＰ（ｘ））、つまり、シャッタボタン半押し時に表示されていたフレーム画像データを前フレーム画像データＰ（ｘ−１）として選択するとともに（選択手段）、当該選択した前フレーム画像データＰ（ｘ−１）に基準ブロック２３を設定する（設定手段）。この基準ブロック２３の設定は、シャッタボタン半押し時に表示されていた注目画像指定枠３４の位置に基づいて行なわれる。
【００５０】
図４（ａ）は、シャッタボタン半押し時に表示されていたフレーム画像データ３１及び注目画像指定枠３４の様子を示す図であり、この注目画像指定枠３４に基づいて、選択した前フレーム画像データＰ（ｘ−１）、つまり、シャッタボタン半押し時に表示されていたフレーム画像データ３１に、基準ブロック２３が設定される。ここでは、この注目画像指定枠３４をそのまま基準ブロック２３として設定する。
【００５１】
また、新たに取得したフレーム画像データを現フレーム画像データＰ（ｘ）として選択するとともに（選択手段）、当該取得した現フレーム画像データＰ（ｘ）に探索範囲２４を設定する（設定手段）。このとき設定される探索範囲２４は、当該探索範囲２４における基準座標位置２７が、基準ブロック２３の基準座標位置２６に対応する座標位置となるように、そして、当該探索範囲２４の大きさが、上述したような探索範囲記憶領域に記憶された探索範囲の大きさとなるように設定される。
【００５２】
そして、探索ブロック２５の基準座標位置２８が探索範囲２４内となるような探索ブロック２５を現フレーム画像データＰ（ｘ）から順次抽出するとともに、つまり、探索範囲２４内の各座標位置をその代表座標位置（基準座標位置２８）とする探索ブロック２５を現フレーム画像データＰ（ｘ）から順次抽出するとともに、該抽出した各探索ブロック２５の中から、基準ブロック２３と最も相関度が高くなる探索ブロック２５（一致ブロック２９）を検出する。
【００５３】
図４（ｂ）は、現フレーム画像データＰ（ｘ）の探索範囲内で検出された一致ブロック２９の様子を示すものである。また、このとき、検出された一致ブロック２９の基準座標位置２８に基づいて、注目画像指定枠３４と同じ大きさを有する被写体追従枠を表示させる。なお、ここでは、注目画像指定枠３４と、基準ブロック２３及び探索ブロック２５との大きさは同じなので、該検出された一致ブロック２９がそのまま被写体追従枠として表示される。
【００５４】
そして、新たにフレーム画像データが取得されると、現フレーム画像データＰ（ｘ）であるフレーム画像データ３２が前フレーム画像データＰ（ｘ−１）として選択されるとともに、該新たに取得されたフレーム画像データが現フレーム画像データＰ（ｘ）として選択される。そして、該選択された前フレーム画像データＰ（ｘ−１）に基準ブロック２３を設定する。この基準ブロック２３の設定は、該検出された一致ブロック２９の基準座標位置２８に基づいて行なわれる。例えば、該検出された一致ブロック２９がそのままの状態で基準ブロック２３として設定される。つまり、図４（ｃ）に示すように該検出された一致ブロック２９が新たな基準ブロック２３として前フレーム画像データＰ（ｘ−１）に設定される。
【００５５】
このようにして、順次取得されるフレーム画像から逐次追跡対象の被写体を検出していく。また、撮影状況に応じた大きさの探索範囲２４でブロックマッチングを行なうことにより、基準ブロック２２と最も相関度が高くなる探索ブロック２５、つまり、一致ブロック２９を効率良く検出することができる。
【００５６】
なお、順次抽出される探索ブロック２５の評価値としての相関度は、当該探索ブロック２５の探索範囲内での位置に基づいて、それぞれの評価値を補正し、この補正した評価値に基づいて一致ブロック２９を検出する構成としてもよい。つまり、基準ブロック２３で表現される画像領域に、真に追跡したい被写体に加え、背景としての画像が含まれていたり、被写体の形状自体が変化しながら移動していくようなときには、例えば差分二乗和としての評価値のみでは、誤判断が発生する可能性が高くなるため、例えば撮影シーンに応じて、それぞれの評価値を補正する構成としてもよい。
【００５７】
以下、探索ブロック毎に、評価値として算出した差分二乗和をそれぞれ補正することで、各探索ブロックに対する基準ブロックとの相関度を導出する場合を図５のフローチャートに従って説明する。尚、最初に差分二乗和としての評価値の算出を詳細に説明し、次に差分二乗和として算出した評価値の補正を詳細に説明する。
【００５８】
まず、例えば上述したステップＳ８で被写体追従を開始すると判断すると、ステップＳ１１で、ＣＰＵ１０は、上述したステップＳ５で設定された探索範囲２４のサイズと、基準ブロック２３の基準座標位置２６（基準座標位置２６に対応する現フレーム画像Ｐ（ｘ）上の座標位置）とに基づいて現フレーム画像データＰ（ｘ）上に探索範囲２４を設定する（設定手段）。
つまり、基準ブロック２３の基準座標位置（例えば中心座標位置）２６に対応する現フレーム画像データでの座標位置が、その基準座標位置（例えば中心座標位置）２７となるように、該設定されたサイズで探索範囲２４を設定する。
【００５９】
次いで、ステップＳ１２で、ＣＰＵ１０は、探索ブロック２５の基準座標位置（例えば中心座標位置）２８が、該設定された探索範囲２４内の座標位置になる探索ブロック２５を順次抽出していくとともに、この抽出した各探索ブロック２５のブロック評価値Ｓを算出する（相関度導出手段）。
【００６０】
ここで、図６（ａ）は、基準ブロック２３、探索ブロック２５の様子を例示すものであり、ここでは、基準ブロック２３、探索ブロック２５ともに８画素×８画素で構成されている。また、図６（ａ）の黒く塗りつぶした画素を、ブロック（基準ブロック２３、探索ブロック２５）の基準座標位置とする。
【００６１】
なお、８画素×８画素のように偶数の画素で構成されたブロックの場合には、中心の画素は存在しないので、基準座標位置は、図６（ａ）の中央部にある４つの画素であれば（太線で囲まれている４つの画素であれば）、何れの画素であってもよいが、基準ブロック２３の基準座標位置２６と探索ブロック２５の基準座標位置２８とは、それぞれのブロック内座標系において同じ座標位置にする必要がある。
【００６２】
また、図６（ｂ）は、図２のステップＳ５で設定された探索範囲２４の大きさの例を示すものであり、探索範囲２４は、現フレーム画像データにおける所定の画素を中心として、例えば、左右にそれぞれ１２画素、また、上下にそれぞれ８画素分の範囲からなっている。このとき、現フレーム画像データにおける所定の画素、つまり、探索範囲２４の基準座標位置２７（図６（ｂ）の斜線部分）は、前フレーム画像データにおける基準ブロックの基準座標位置２６に対応している座標位置である。また以下では、探索範囲２４の基準座標位置２７を（ｘ，ｙ）＝（０，０）（但し、探索範囲２４内上での座標位置とする）とし、ｘ軸は右方向をプラス、左方向をマイナス、ｙ軸は上方向をプラス、下方向をマイナスとして説明する。
【００６３】
そして、探索ブロック２５の各画素値と基準ブロック２３の各画素値との差分の二乗の総和（ブロック評価値Ｓ）を算出するという動作を、探索ブロック２５の基準座標位置２８が探索範囲２４の範囲内となるように抽出される各探索ブロック２５に対して行なう。
この差分の二乗の総和（差分二乗和とも記す）としての探索ブロック２５毎のブロック評価値Ｓは、以下に示す数１によって求めることができる。
【００６４】
【数１】
2008236015.tif 000003
【００６５】
数１における、ｋは、基準ブロック２３内又は探索ブロック２５内の各画素のアドレスを示している。つまり、図６（ａ）に示す例では、基準ブロック２３及び探索ブロック２５は８×８画素で構成されているので、画素の数は全部で６４個となり、アドレスｋが０〜６３までとなる。
また、Ｙ１は、探索ブロック２５の各画素の輝度値を表し、Ｙ２は、基準ブロック２３の各画素の輝度値を表している。
【００６６】
また、「ｘｙ」は、各探索ブロックの識別番号としてのそれぞれの基準座標位置２８を表している。
図７は、探索ブロック２５の基準座標位置２８が探索範囲２４内となるように現フレーム画像データＰ（ｘ）から順次抽出される探索ブロック２５を説明するための図である。
図を見ると、探索ブロック２５の基準座標位置（黒く塗りつぶしている画素の座標位置）２８が（ｘ，ｙ）＝（０，０）のときに、抽出される探索ブロック２５の範囲は、図７のＡのような範囲となり、Ｙ１ｘ＝０，ｙ＝０は、該Ａに示すような範囲の探索ブロック２５の画素の輝度値を表している。また、探索ブロック２５の基準座標位置２８が（ｘ，ｙ）＝（−１２，８）のときに、抽出される探索ブロック２５の範囲は図７のＢに示すような範囲となり、Ｙ１ｘ＝−１２，ｙ＝８は、該Ｂに示すような範囲の探索ブロック２５の画素の輝度値を表している。
【００６７】
また、Ｙ１ｘｙｋは、探索ブロック２５の基準座標位置２８が、（ｘ，ｙ）のときに抽出される探索ブロック２５の各アドレスの輝度値を表しており、ｋ＝０のときは、該抽出される探索ブロック２９のアドレス０の画素の輝度値、ｋ＝１のときは、該抽出される探索ブロック２９のアドレス１の画素の輝度値を表している。
【００６８】
なお、Ｙ２ｋとは、基準ブロック２３の各アドレスの画素の輝度値を表しており、ｋ＝０のときは、基準ブロック２３のアドレス０の画素の輝度値、ｋ＝１のときは、基準ブロック２３のアドレス１の画素の輝度値を表している。また、このアドレスｋに対応する基準ブロック２３、探索ブロック２５の画素は、ブロック内でそれぞれ同じ位置である必要がある。例えば、アドレス０を基準ブロックの一番左上の画素とする場合には、アドレス０に対応する探索ブロック２５の画素も一番左上とする必要がある。なぜならば、探索ブロック２５の各画素値と基準ブロック２４の各画素値とを同じ位置の画素同士で減算するからである。
【００６９】
つまり、上記した数式によって、探索ブロック２５の基準座標位置２８が（ｘ，ｙ）のときに抽出される探索ブロック２５の各画素値と、基準ブロック２３の各画素値とが対応する座標位置の画素同士で減算され、その二乗の総和が該（ｘ，ｙ）を基準座標位置２８とする探索ブロックのブロック評価値Ｓｘｙとして算出されることになる。この（ｘ，ｙ）の値を変えることにより、探索範囲２４内の座標位置を基準座標位置２８とする各探索ブロック２５に対してブロック評価値Ｓｘｙを求めることができる。
【００７０】
図８は、探索範囲２４の座標位置を基準座標位置２８とする各探索ブロック２５に対して算出されたブロック評価値Ｓの様子を示すものであり、探索範囲２４の画素の数と同じ数だけのブロック評価値Ｓが算出されている。なお、図８においては、ブロック評価値を全てＳで表示させているが、全てのブロック評価値が同じ値ということを示しているのではなく、あくまでもブロック評価値を意味しているに過ぎない。このブロック評価値Ｓの値が高くなればなるほど相関度は小さくなる。
【００７１】
次に、差分二乗和として算出された各探索ブロック２５に対するブロック評価値Ｓの補正について説明する。
【００７２】
図５のフローチャートに戻り、図２のステップＳ５で設定された探索範囲２４のサイズ、又は、図２のステップＳ４で取得した撮影シーンに対応する補正係数マップを設定し（設定手段）、該設定した補正係数マップを用いて、上述したように算出したブロック評価値Ｓを探索ブロック２５毎に補正する（相関度補正手段）。
なお、メモリ９には、各探索範囲２４のサイズ、又は、撮影シーンに対応する補正係数マップがそれぞれ予め記録されている。
【００７３】
図９は、図２のステップＳ５で設定された探索範囲２４のサイズに対応する補正係数マップ、又は、図２のステップＳ４で取得された撮影シーンに対応する補正係数マップの例を示すものである。
この補正係数マップは、ブロック評価値を補正するための補正係数ｍが探索ブロック２５の基準座標位置２８に対応してそれぞれ記録されている。なお、図２のステップＳ４で設定された探索範囲２４のサイズと、補正係数マップのサイズは等しくなるように、つまり、探索範囲２４における画素の数と、補正係数マップに記録されている補正係数の数は等しくなるように記録されている。
【００７４】
ここで、図８に示したように探索範囲のサイズにおいて縦方向に並ぶ画素を１７画素（−８〜８）、横方向に並ぶ画素を２５画素（−１２〜１２）とした場合には、図９に示すように、補正係数マップにおける補正係数も縦方向に１７（−８〜８）、横方向に２５（−１２〜１２）だけの数の補正係数が、それぞれ対応する座標位置とともに記録されている。そして、この補正係数マップでは、補正係数の座標位置が（ｘ，ｙ）＝（０，０）に近いほど（探索範囲２４の基準座標位置２７としての中心座標位置に近いほど）補正係数ｍが小さく、また、遠いほど補正係数ｍが大きくなっている。ここでは、最小の補正係数ｍは、補正係数マップの中心付近の「６４」であり、最大の補正係数ｍは、補正係数マップの四隅の「２５５」である。
【００７５】
そして、この補正係数マップを用いて、ブロック評価値Ｓを探索ブロック２５毎に補正する。
具体的には、ブロック評価値が算出された探索ブロック２５を順次選択する。そして、選択した探索ブロック２５毎に、当該探索ブロック２５の基準座標位置２８に対応して記録されている補正係数を補正係数マップから選択し、この選択した補正係数をブロック評価値Ｓに乗算することによりブロック評価値Ｓを補正する。つまり、ブロック評価値Ｓを補正することで、基準ブロック２３と各探索ブロック２５との相関度を補正する。
【００７６】
例えば、基準座標位置２８が（ｘ，ｙ）＝（０，０）となっている探索ブロック２５のブロック評価値Ｓを補正する場合には、この探索ブロック２５のブロック評価値Ｓに、補正係数マップにおける座標位置が（ｘ，ｙ）＝（０，０）となっている補正係数ｍ（ｍ＝６４）を乗算する。また、例えば、基準座標位置２８が（ｘ，ｙ）＝（４，−３）となっている探索ブロック２５のブロック評価値Ｓを補正する場合には、この探索ブロック２５のブロック評価値Ｓに、補正係数マップにおける座標位置が（ｘ，ｙ）＝（４，−３）となっている補正係数ｍ（ｍ＝８６）を乗算する。また、例えば、基準座標位置２８が（ｘ，ｙ）＝（−１２，８）となっている探索ブロック２５のブロック評価値Ｓを補正する場合には、この探索ブロック２５のブロック評価値Ｓに、補正係数マップにおける座標位置が（ｘ，ｙ）＝（−１２，８）となっている補正係数ｍ（ｍ＝２５５）を乗算する。
【００７７】
このように、補正係数マップとして記録されている補正係数は、探索ブロック２５が探索範囲２４の基準座標位置２７（ｘ，ｙ）＝（０，０）から離れれば離れるほどその値が大きくなるので、それに従って、各補正後のブロック評価値Ｓの値は、基準座標位置２７（ｘ，ｙ）＝（０，０）から離れれば離れるほど大きくなりやすい（相関度は小さくなりやすい）。これにより、基準ブロック２３に対応する座標位置付近で抽出される探索ブロック２５のブロック評価値を低くさせやすく（相関度を大きくさせやすく）なり、基準ブロック２３に対応する座標位置を重点とした一致ブロック２９を検出することができる。つまり、座標位置毎に、例えば被写体が移動している可能性としての確率を相関度に反映させることができる。
【００７８】
図５のフローチャートに戻り、補正係数マップを用いて各ブロック評価値Ｓを補正すると、ステップＳ１４に進み、ＣＰＵ１０は、該補正後のブロック評価値Ｓのうち、最もブロック評価値Ｓの値が小さくなる探索ブロック２５を検出する。そして、該検出した探索ブロック２５を基準ブロック２３と最も相関度が高い探索ブロック２５（一致ブロック２９）とする。
【００７９】
Ｃ．以上のように、本実施の形態においては、ユーザによって選択された撮影シーンに応じてブロックマッチングの探索条件（探索範囲２４の大きさ）を変えて、ブロックマッチングを行なうので、撮影状況に応じたブロックマッチングを行なうことができる。
また、各ブロック評価値を、探索範囲２４の基準座標位置２７に近くなればなるほど補正係数が小さくなる補正係数マップを用いて補正するようにしたので、基準ブロック２３の座標位置に近い探索ブロック２５を優先的に該基準ブロック２３と最も相関度の高い探索ブロック２５（一致ブロック２９）として検出し易くすることができ、探索範囲２４の中央を重点とした一致ブロックの検出を行なうことができる。つまり、座標位置毎に、被写体が移動している可能性としての確率を相関度に反映させることで、より誤判断の発生を低減させて、真に追跡したい被写体を追跡することができる。
【００８０】
［変形例］
Ｄ．上記実施の形態は、以下のような変形例も可能である。
（１）上記実施の形態においては、ユーザによって選択された撮影シーン（取得した撮影シーン）に応じて探索範囲２４の大きさ（ブロックマッチングの探索条件）を変えるようにしたが、探索範囲２４に替えて、基準ブロック２３の大きさ（ブロックマッチングの探索条件）を変える（設定する）ようにしてもよい（設定手段）。つまり、選択された撮影シーンに応じて基準ブロック２３の大きさを変えるようにしてもよい。この場合は、基準ブロック２３の大きさに伴い探索ブロック２５の大きさも変わる。
この場合は、図２のステップＳ５で、該取得された撮影シーンに対応する基準ブロック２３のサイズを取得し、該取得したサイズをブロックマッチングの基準ブロック２３のサイズとして前フレーム画像データＰ（ｘ−１）に設定する（設定手段）。その後、ステップＳ６で、該設定された基準ブロック２３のサイズで、ブロックマッチング動作を開始する。
【００８１】
図１０は、設定された大きさの基準ブロック２３でのブロックマッチングを説明するための図である。
図１０（ａ）は、例えば、追跡したい被写体の画角内サイズが比較的小さくなるような撮影シーンが選択されたことによって設定された基準ブロック２３の大きさの様子を示しており、図１０（ｂ）は、例えば、追跡したい被写体の画角内サイズが比較的大きくなるような撮影シーンが選択されたことによって設定された基準ブロック２３の大きさの様子を示している。
つまり、図１０（ａ）は、基準ブロック２３及び探索ブロックが比較的小さな範囲として設定される場合を示し、図１０（ｂ）は、基準ブロック２３及び探索ブロックが比較的広い範囲として設定される場合を示している。
【００８２】
このように、撮影状況に応じた大きさの基準ブロック２３でブロックマッチングを行なうことにより、基準ブロック２２と最も相関度が高い一致ブロックを効率良く検出することができ、撮影状況に応じたブロックマッチングを行なうことができる。
【００８３】
（２）また、上記実施の形態及び上記変形例（１）においては、基準ブロック２３の全画素を用いてブロックマッチングを行なうようにしたが、ユーザによって選択された撮影シーン（取得した撮影シーン）に応じた画素間引き間隔（ブロックマッチングの探索条件）を設定し（設定手段）、該設定された間隔で基準ブロック２３の画素を間引き（間引き手段）、該間引かれた後の基準ブロック２３の残りの画素を用いてブロックマッチングを行なうようにしてもよい。このときは、探索ブロック２５も基準ブロック２３の間引きに応じて間引かれることになる。
この場合は、図２のステップＳ５で、該取得された撮影シーンに対応する間引き間隔を取得し、該取得した間隔を、基準ブロック２３のブロックの画素の間引き間隔として設定する（設定手段）。その後、ステップＳ６で、該設定された間引き間隔で間引かれた後の基準ブロック２３の画素を用いて、ブロックマッチング動作を開始する。
【００８４】
図１１は、設定された間引き間隔の様子を示す図であり、間引き後に残った画素を斜線部分で表している。
図１１（ａ）は、例えば、比較的被写体の濃淡が激しい撮影シーンが選択されたことによって設定された基準ブロック２３の画素の間引き間隔の様子を示しており、図１１（ｂ）は、例えば、比較的被写体の濃淡が緩やかな撮影シーンが選択されたことによって設定された基準ブロック２３の画素の間引き間隔の様子を示している。なお、ここでは、基準ブロック２３を１２画素×１２画素で構成させている。
【００８５】
つまり、図１１（ａ）は、間引き画素が比較的少なく設定される場合を示し、図１１（ｂ）は、間引き画素が比較的多く設定される場合を示している。
このように、撮影状況に応じた大きさの間引き間隔で間引いた後でブロックマッチングを行なうことにより、基準ブロック２２と最も相関度が高い一致ブロックを効率良く検出することができ、撮影状況に応じたブロックマッチングを行なうことができる。
【００８６】
なお、前フレーム画像データＰ（ｘ−１）においての間引き対象は、基準ブロック２３のみに限定するものではなく、前フレーム画像データＰ（ｘ−１）全体に亘って、画素間引きを行う構成としてもよい。また、現フレーム画像データＰ（ｘ−１）においての間引き対象は、抽出される各探索ブロック２５のみに限定するものではなく、現フレーム画像データＰ（ｘ）全体に亘って、画素間引きを行う構成としてもよい。
【００８７】
（３）また、上記実施の形態においては、撮影シーンに応じて、探索範囲の大きさを変え、それに伴って補正係数マップも変えるようにしたが、ユーザによって選択された撮影シーンに応じて補正係数マップのみを変える（設定する）ようにしてもよい。この場合は、各撮影シーンに対応する補正係数マップをメモリ９に記録させておく。
また、撮影シーンに応じて探索範囲を変えずに、撮影シーンに応じて、補正係数マップと、基準ブロック２３の大きさ又は／及び間引き間隔とを変えるようにしてもよい。
【００８８】
（４）また、上記実施の形態においては、各探索ブロック２４のブロック評価値Ｓを算出すると（図５のステップＳ１２）、該算出した各ブロック評価値Ｓを補正係数マップに基づいて補正し（ステップＳ１３）、該補正後のブロック評価値Ｓの中で最もブロック評価値Ｓの値が小さくなる探索ブロック２５を検出し、それを、基準ブロック２３と最も相関度が高くなる一致ブロックとするようにしたが、各探索ブロック２５のブロック評価値Ｓを算出すると、ブロック評価値Ｓの補正を行なわずに、ブロック評価値Ｓの値が小さいものから順に予め設定されている数だけ探索ブロック２５を選択し、該選択した探索ブロック２５の中で、その基準座標位置２８が最も探索範囲２４の基準座標位置２７に近い探索ブロック２５を検出し、該検出した探索ブロック２５を一致ブロック２９とするようにしてもよい。
【００８９】
この変形例（４）の動作を図１２のフローチャートにしたがって説明する。
前フレーム画像データの基準ブロック２３と最も相関度が高くなる現フレーム画像データのブロックの検出を開始すると、ステップＳ２１で、ＣＰＵ１０は、図２のステップＳ５で設定された探索範囲２４のサイズと、基準ブロック２３の基準座標位置２６とに基づいて現フレーム画像データ上に探索範囲２４を設定する。
つまり、基準ブロック２３の基準座標位置２６に対応する現フレーム画像データでの座標位置が探索範囲２４の基準座標位置２７となるように、該設定されたサイズで探索範囲２４を設定する。
【００９０】
次いで、ステップＳ２２で、ＣＰＵ１０は、探索ブロック２５の基準座標位置２８が探索範囲２４内となるような探索ブロック２５を現フレーム画像データＰ（ｘ）から抽出していき、各探索ブロック２５のブロック評価値を算出する。
ここでも、図８に示すようなブロック評価値Ｓが算出されたものとする。
【００９１】
次いで、ステップＳ２３で、ＣＰＵ１０は、該算出された各探索ブロック２５のブロック評価値Ｓに基づいて、ブロック評価値Ｓの値が小さいものから順に予め設定されている数だけ探索ブロック２５を選択する。
ここでは、図８の太線の四角で囲まれている座標位置を基準座標位置２８とする探索ブロック２５が、ステップＳ２３で、選択された探索ブロック２５とする。
【００９２】
次いで、ステップＳ２４で、ＣＰＵ１０は、選択した複数の探索ブロック２５のうち、その基準座標位置２８が探索範囲２４の基準座標位置２７（（ｘ，ｙ）＝（０，０））に最も近い探索ブロック２５を、基準ブロック２３と最も相関度が高い探索ブロック２５（一致ブロック２９）として検出する。
図８の例では、ブロック評価値Ｓに基づいて選択された各探索ブロック２５の基準座標位置２８は、それぞれ、（ｘ，ｙ）＝（−８，５）、（ｘ，ｙ）＝（−３，−３）、（ｘ，ｙ）＝（−２，１）、（ｘ，ｙ）＝（５，−４），（ｘ，ｙ）＝（６，２）なので、その基準座標位置２８が探索範囲２４の基準座標位置２７に最も近くなっている探索ブロック２５は、（ｘ，ｙ）＝（−２，１）に対応するものであるため、（ｘ，ｙ）＝（−２，１）を基準座標位置２８とする探索ブロック２５を基準ブロック２３と最も相関度が高い探索ブロック２５（一致ブロック２９）として検出する。
【００９３】
これにより、ブロック評価値Ｓを補正することなく、基準ブロック２３の位置付近に位置している探索ブロック２５を優先的に該基準ブロック２３と最も相関度の高い探索ブロック２５（一致ブロック２９）として検出し易くすることができ、探索範囲２４の中央を重点とした一致ブロック２９の検出を行なうことができる。
【００９４】
（５）また、上記実施の形態においては、図５のステップＳ１３で、各探索ブロック２５のブロック評価値Ｓを補正すると、ステップＳ１４で、該補正後のブロック評価値Ｓの中で最もブロック評価値Ｓの値が小さくなる探索ブロック２５を一致ブロック２９とするようにしたが、図５のステップＳ１３で、各探索ブロック２５のブロック評価値Ｓを補正すると、上記変形例（３）で説明した図１２のステップＳ２３のように、該補正後のブロック評価値Ｓの中でブロック評価値Ｓの値が小さいものから順に予め設定されている数だけ探索ブロック２５を選択し、この中で、その基準座標位置２８が探索範囲２４の基準座標位置２７（（ｘ，ｙ）＝（０，０））に最も近い探索ブロック２５を、基準ブロック２３と最も相関度が高い探索ブロック２５（一致ブロック２９）として検出するようにしてもよい。
これにより、更に探索範囲２４の中央を重点とした一致ブロックの検出を行なうことができる。
【００９５】
（６）また、上記実施の形態においては、図２のステップＳ４で取得した撮影シーン（選択された撮影シーンに対応するブロックマッチングの探索条件）に基づいて、処理の演算量を算出し、該算出した演算量に基づいて、フレーム画像データを撮像するフレームキャプチャレートを変える（設定する）ようにしてもよい（設定手段）。つまり、演算量の多さに比例してキャプチャレートを遅くする。これにより、取得されるフレーム画像データのレートが変わる。
この演算量の多さに比例したキャプチャレートとは、例えば、算出した演算量が所定値より少ない場合は、フレーム画像データを所定のキャプチャレートで撮像し、算出した演算量が所定値より多い場合には、その比率に応じてキャプチャレートを遅くする。
これにより、フレーム画像の撮像をスムーズに行なうことができる。演算量が多すぎてＣＰＵ１０の処理が間に合わない場合は、フレーム画像がスムーズに撮像されないからである。
なお、フレームキャプチャレートに対応する表示レートで該撮像されたフレーム画像データを表示させ、フレームキャプチャレートが遅くなった場合は、それに応じて表示レートも遅くする。
【００９６】
（７）また、上記実施の形態においては、ユーザによって選択された撮影シーン（撮影情報）に応じてブロックマッチングの探索条件を設定するようにしたが、撮影シーンに限らず、ユーザによって選択されたズーム倍率（フレーム画像データが撮像された時のズーム倍率）や、カメラを横にして撮影する（横撮りする）場合と、カメラを縦にして撮影する（縦撮りする）場合等（撮影情報）に応じてブロックマッチングの探索条件を設定するようにしてもよい。これにより、撮影状況に応じたブロックマッチングを行なうことができる。
【００９７】
（８）また、上記実施の形態において、基準ブロック２３の基準座標位置２６と検出された一致ブロック２９の基準座標位置２８とに基づいて動きベクトル（撮影情報）を算出し（動きベクトル算出手段）、該算出した動きベクトルに応じて、ブロックマッチングの探索条件の設定を変更するようにしてもよい。例えば、動きベクトルが大きく検出されたときには、大きな探索範囲２４を設定し、動きベクトルが小さく検出されたときには、小さな探索範囲２４を設定する。また、所定の方向への動きベクトルが大きく検出されたときには、その所定の方向に対する大きさが大きな探索範囲２４を設定し、所定の方向への動きベクトルが小さく検出されたときには、その所定の方向に対する大きさが小さな探索範囲２４を設定する。これにより、撮影状況に応じたブロックマッチングを行なうことができる。
【００９８】
（９）また、上記実施の形態においては、各撮影シーン又は各探索範囲２４の大きさに対応する補正係数マップをそれぞれ設けたが、フレーム画像データの全範囲の補正係数マップを１つ備え、探索範囲２４の大きさに応じて、該補正係数マップの使用範囲を変えるようにしてもよい。
【００９９】
（１０）また、上記実施の形態においては、ブロックマッチングの対象となるフレーム画像（前フレーム画像データ、現フレーム画像データ）は、現にＣＣＤ５により順次撮像されるフレーム画像データであってもよいし、ＣＣＤ５によって撮像され既に記録された動画データであってもよい。
現にＣＣＤ５によって撮像されているフレーム画像データに基づいてブロックマッチングを行なう場合は、該フレーム画像データが撮像された撮影シーン等に応じてブロックマッチングの探索条件を設定し、既に記録されている動画データに基づいてブロックマッチングを行なう場合は、該動画データが撮像された時の撮影シーン等によってブロックマッチングの探索条件を設定する。
なお、既に記録された動画データに関連付けて、該動画データが撮影された時の撮影シーン等を示す情報を関連付けて記録しておく必要がある。
【０１００】
（１１）また、上記実施の形態においては、最新のフレーム画像データを現フレーム画像データＰ（ｘ）として選択し、その１つ前に撮像されたフレーム画像データＰ（ｘ−１）とを前フレーム画像データとして選択し、該選択した２枚のフレーム画像データを用いてブロックマッチングを行なうようにしたが、選択するフレーム画像データ間は必ずしも連続している必要はなく、２つのフレーム画像データを用いてブロックマッチングを行えばよい。
【０１０１】
（１２）また、上記実施の形態においては、ブロックマッチングを用いて被写体追従を行なう場合に、撮影シーン等によってブロックマッチングの探索条件を変更させるようにしたが、被写体追従に限らず、ブレ補正処理や動きベクトルを算出処理等に用いられるブロックマッチングにおいても、本発明を適用してもよい。つまり、ブレ補正処理や動きベクトル算出処理においても、撮影シーン等に応じてブロックマッチングの探索条件を変更させるようにしてもよい。
【０１０２】
（１３）また、上記（１）〜（１２）を矛盾が生じない範囲で任意に組み合わせた実施の形態に変更するようにしてもよい。
【０１０３】
（１４）、本発明の上記実施形態は、何れも最良の実施形態としての単なる例に過ぎず、本発明の原理や構造等をより良く理解することができるようにするために述べられたものであって、添付の特許請求の範囲を限定する趣旨のものでない。
したがって、本発明の上記実施形態に対してなされ得る多種多様な変形ないし修正はすべて本発明の範囲内に含まれるものであり、添付の特許請求の範囲によって保護されるものと解さなければならない。
【０１０４】
最後に、上記各実施の形態においては、本発明の画像処理装置をデジタルカメラ１に適用した場合について説明したが、上記の実施の形態に限定されるものではなく、要は、画像データを処理することができる機器であれば適用可能である。
【図面の簡単な説明】
【０１０５】
【図１】本発明の実施の形態のデジタルカメラ１のブロック図である。
【図２】実施の形態のデジタルカメラ１の動作を示すフローチャートである。
【図３】ブロックマッチングにおける探索範囲を説明するための図である。
【図４】ブロックマッチングを説明するための図である。
【図５】実施の形態のブロックマッチングの動作を示すフローチャートである。
【図６】基準ブロック２３と探索ブロック２８の様子及び探索範囲の様子を示す図である。
【図７】探索ブロック２５の中心画素２８の位置が（ｘ，ｙ）となるときの探索ブロックを説明するための図である。
【図８】探索ブロック２５の探索範囲２４の各位置において算出されたブロック評価値Ｓｘｙの様子を示す図である。
【図９】補正係数マップの例を示す図である。
【図１０】変形例における撮影シーンに応じて設定された大きさの基準ブロック２３でのブロックマッチングを説明するための図である。
【図１１】変形例における撮影シーンに応じて設定された間引き間隔の様子を示す図である。
【図１２】変形例におけるブロックマッチングの動作を示すフローチャートである。
【図１３】従来技術を説明するための図である。
【符号の説明】
【０１０６】
１      デジタルカメラ
２      撮影レンズ
３      レンズ駆動回路
４      絞り兼用シャッタ
５      ＣＣＤ
６      ドライバ
７      ＴＧ
８      ユニット回路
９      メモリ
１０    ＣＰＵ
１１    ＤＲＡＭ
１２    画像表示部
１３    フラッシュメモリ
１４    キー入力部
１５    バス
【図１】
2008236015.tif 000004
【図２】
2008236015.tif 000005
【図３】
2008236015.tif 000006
【図４】
2008236015.tif 000007
【図５】
2008236015.tif 000008
【図６】
2008236015.tif 000009
【図７】
2008236015.tif 000010
【図８】
2008236015.tif 000011
【図９】
2008236015.tif 000012
【図１０】
2008236015.tif 000013
【図１１】
2008236015.tif 000014
【図１２】
2008236015.tif 000015
【図１３】
2008236015.tif 000016