JP4716266B2 - 画像処理装置、撮像装置及びそのプログラム - Google Patents

画像処理装置、撮像装置及びそのプログラム Download PDF

Info

Publication number
JP4716266B2
JP4716266B2 JP2007045971A JP2007045971A JP4716266B2 JP 4716266 B2 JP4716266 B2 JP 4716266B2 JP 2007045971 A JP2007045971 A JP 2007045971A JP 2007045971 A JP2007045971 A JP 2007045971A JP 4716266 B2 JP4716266 B2 JP 4716266B2
Authority
JP
Japan
Prior art keywords
image
matching
block
image area
frame image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007045971A
Other languages
English (en)
Other versions
JP2008211506A (ja
Inventor
正規 石原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2007045971A priority Critical patent/JP4716266B2/ja
Publication of JP2008211506A publication Critical patent/JP2008211506A/ja
Application granted granted Critical
Publication of JP4716266B2 publication Critical patent/JP4716266B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、画像処理装置及びそのプログラムに係り、詳しくは、被写体追従機能、つまり、被写体位置を検出していく画像処理装置、撮像装置及びそのプログラムに関する。
近年、画像処理装置、例えば、デジタルカメラにおいては、移動する被写体に追従する、つまり、移動する被写体の位置を順次検出する機能を備えた画像処理装置が開発された。
この被写体に追従させる技術(被写体を追跡する技術)として、例えば、下記特許文献1に記載されたようなテンプレートマッチング(ブロックマッチングともいう)を用いて被写体の位置を検出するという技術がある。
具体的には、前フレーム画像から切り出されたテンプレート(追従させたい被写体を含む画像領域)に類似する小画像領域を現フレーム画像から探索することにより、最も類似度の高い(相関度が高い)小画像領域を検出する。この検出された小画像領域の位置に該被写体がいると判断する。そして、新たにフレーム画像が撮像されると、該検出した小画像領域をテンプレートとし、上記動作を繰り返すことにより、連続して撮像されるフレーム画像のどの位置に被写体がいるのかを検出していく。
公開特許公報 特開2001−76156
しかしながら、上記技術によれば、真に追従させたい被写体と、最も相関度が高いと検出された小画像領域が被写体とズレた場合は、その後検出される小画像領域と、被写体とのズレが大きくなってしまい、このような場合においては被写体に追従しているとは言えない。
そこで本発明は、かかる従来の問題点に鑑みてなされたものであり、被写体追従(被写体追跡)の精度を向上させることができる画像処理装置、撮像装置及びそのプログラムを提供することを目的とする。
上記目的達成のため、請求項1記載の発明による画像処理装置は、参照フレーム画像内に複数の注目画像領域を設定する注目画像領域設定手段と、
前記注目画像領域設定手段により設定された注目画像領域毎に、前記注目画像領域と相関度が高くなる一致画像領域を、探索対象フレーム画像からそれぞれ検出する一致画像領域検出手段と、
前記一致画像領域検出手段により検出された各一致画像領域の前記探索対象フレーム画像上の位置に基づいて、該検出された一致画像領域が密集する一致画像領域群から外れる一致画像領域を除外するとともに、前記一致画像領域群を構成する各一致画像領域を抽出する抽出手段と、
前記抽出手段により抽出された一致画像領域の前記探索対象フレーム画像上の位置に基づいて、該抽出された一致画像領域からなる一致画像領域群の重心位置を算出する重心位置算出手段と、
を備えたことを特徴とする。
また、例えば、請求項2に記載されているように、フレーム画像を順次取得する取得手段を備え、
前記一致画像領域検出手段は、
前記取得手段により取得された最新のフレーム画像を探索対象フレーム画像として選択するとともに、当該探索対象フレーム画像から一致画像領域を検出し、
前記注目画像領域設定手段は、
前記取得手段により取得された最新のフレーム画像より前に取得されたフレーム画像を参照フレーム画像として選択するとともに、当該選択した参照フレーム画像内に複数の注目画像領域を設定するようにしてもよい。
また、例えば、請求項3に記載されているように、前記取得手段により順次取得されるフレーム画像のうち、最新に取得されたフレーム画像を表示手段に表示させていくとともに、前記重心位置算出手段により算出された重心位置を示す情報を該フレーム画像に重ねて表示させる表示制御手段を備えるようにしてもよい。
また、例えば、請求項4に記載されているように、前記注目画像領域設定手段は、
前記重心位置算出手段により重心位置が算出された場合は、前記探索対象フレーム画像を新たな参照フレーム画像として選択するとともに、前記抽出手段により抽出された一致画像領域を新たな注目画像領域として、前記新たに選択した参照フレーム画像内に設定するようにしてもよい。
また、例えば、請求項5に記載されているように、前記注目画像領域設定手段は、
前記重心位置算出手段により重心位置が算出された場合は、前記探索対象フレーム画像を新たな参照フレーム画像として選択するとともに、該選択した参照フレーム画像に、該算出された重心位置に基づいて、複数の注目画像領域を設定するようにしてもよい。
また、例えば、請求項6に記載されているように、前記注目画像領域設定手段は、
前記重心位置算出手段により算出された重心位置と、予め決まった初期配置パターンとに基づく複数の注目画像領域を設定するようにしてもよい。
また、例えば、請求項7に記載されているように、前記注目画像領域設定手段は、
前記重心位置算出手段により重心位置が算出された場合は、前記探索対象フレーム画像を新たな参照フレーム画像として選択するとともに、該選択した参照フレーム画像に、前記抽出手段により抽出された一致画像領域数に相当する数の新たな注目画像領域を設定するようにしてもよい。
また、例えば、請求項8に記載されているように、前記一致画像領域検出手段は、
前記注目画像領域設定手段により設定された注目画像領域毎に、前記注目画像領域と前記探索対象フレーム内の各領域との相関度を算出する相関度算出手段と、
前記相関度算出手段により算出された前記探索対象フレームの各領域における注目画像領域との相関度を補正係数マップを用いて補正する相関度補正手段と、を備え、前記相関度補正手段により補正された相関度に基づいて一致画像領域を検出するようにしてもよい。
また、例えば、請求項9に記載されているように、前記補正係数マップは、
フレーム画像間の相対位置関係において、注目画像領域に対応する座標位置に近い領域程、相関度が高くなるように補正係数を設けているようにしてもよい。
また、例えば、請求項10に記載されているように、前記注目画像領域抽出手段により設定される注目画像領域毎に、前記注目画像領域に対応する探索範囲を前記探索対象フレーム画像にそれぞれ設定する探索範囲設定手段を備え、
前記一致画像領域検出手段は、
前記探索範囲設定手段により設定された探索範囲から、当該探索範囲に対応する注目画像領域と相関度が高くなる一致画像領域を検出するようにしてもよい。
また、例えば、請求項11に記載されているように、前記注目画像領域設定手段により設定される注目画像領域からなる注目画像領域群の重心位置と、前記重心位置算出手段により算出される重心位置とに基づいて、動きベクトルを算出する動きベクトル算出手段を備え、
前記探索範囲設定手段は、
前記動きベクトル算出手段により算出された動きベクトルに基づいて、探索範囲を変えるようにしてもよい。
また、例えば、請求項12に記載されているように、前記抽出手段は、
前記一致画像領域検出手段によりそれぞれ検出された一致画像領域の位置に基づいて、前記一致画像領域毎に、他の一致画像領域に対する所定の一致画像領域の標準偏差を算出し、該算出された標準偏差が一定レベル以上にない一致画像領域を、一致画像領域が密集する一致画像領域群から外れる一致画像領域として除外するようにしてもよい。
上記目的達成のため、請求項13記載の発明による画像処理装置は、参照フレーム画像内に複数の注目画像領域を設定する注目画像領域設定手段と、
前記注目画像領域設定手段により設定された注目画像領域毎に、前記注目画像領域と相関度が高くなる一致画像領域を、探索対象フレーム画像からそれぞれ検出する一致画像領域検出手段と、
前記一致画像領域検出手段により検出された各一致画像領域の前記探索対象フレーム画像上の位置に基づいて、前記一致画像領域毎に、他の一致画像領域に対する所定の一致画像領域の標準偏差を算出し、該算出された標準偏差が一定レベル以上にない一致画像領域を除外するとともに、前記一致画像領域群を構成する各一致画像領域を抽出する抽出手段と、
前記抽出手段により抽出された一致画像領域の前記探索対象フレーム画像上の位置に基づいて、該抽出された一致画像領域からなる一致画像領域群の重心位置を算出する重心位置算出手段と、
を備えたことを特徴とする。
上記目的達成のため、請求項14記載の発明による撮像装置は、被写体の光を光電変換する撮像素子と、
前記撮像素子により光電変換されたフレーム画像を順次取得する取得手段と、
前記取得手段により取得された最新のフレーム画像を探索対象フレーム画像として選択するとともに、該最新のフレーム画像より前に取得されたフレーム画像を参照フレーム画像として選択する選択手段と、
前記選択手段により選択された参照フレーム画像内の注目画像領域と相関度が高くなる一致画像領域を、前記選択手段により選択された探索対象フレーム画像から前記注目画像領域毎に検出する一致画像領域検出手段と、
前記一致画像領域検出手段により検出された一致画像領域の前記探索対象フレーム画像上の位置に基づいて、該検出された一致画像領域が密集する一致画像領域群から外れる一致画像領域を除外するとともに、前記一致画像領域群を構成する各一致画像領域を抽出する抽出手段と、
前記抽出手段により抽出された一致画像領域の前記探索対象フレーム画像上の位置に基づいて、該抽出された一致画像領域からなる一致画像領域群の重心位置を算出する重心位置算出手段と、
を備えたことを特徴とする。
上記目的達成のため、請求項15記載の発明によるプログラムは、コンピュータに、
参照フレーム画像内に複数の注目画像領域を設定する注目画像領域設定処理と、
前記注目画像領域設定処理により設定された各注目画像領域と相関度が高くなる一致画像領域を、探索対象フレーム画像からそれぞれ検出する一致画像領域検出処理と、
前記一致画像領域検出処理により検出された各一致画像領域の前記探索対象フレーム画像上の位置に基づいて、該検出された一致画像領域が密集する一致画像領域群から外れる一致画像領域を除外するとともに、該一致画像領域が密集する一致画像領域群を構成する各一致画像領域を抽出する抽出処理と、
前記抽出処理により抽出された一致画像領域の前記探索対象フレーム画像上の位置に基づいて、該抽出された一致画像領域からなる一致画像領域群の重心位置を算出する重心位置算出処理と、
を実行させることを特徴とする。
本発明によれば、被写体追従(被写体追跡)の精度を向上することができる。
以下、本実施の形態について、デジタルカメラに適用した一例として図面を参照して詳細に説明する。
[実施の形態]
A.デジタルカメラの構成
図1は、本発明の画像処理装置を実現するデジタルカメラ1の電気的な概略構成を示すブロック図である。
デジタルカメラ1は、撮影レンズ2、レンズ駆動回路3、絞り兼用シャッタ4、CCD5、ドライバ6、TG(timing generator)7、ユニット回路8、メモリ9、CPU10、DRAM11、画像表示部12、フラッシュメモリ13、キー入力部14、バス15を備えている。
撮影レンズ2は、図示しない複数のレンズ群から構成されるフォーカスレンズ、ズームレンズ等を含み、フォーカスレンズ及びズームレンズには、レンズ駆動回路3が接続されている(図示略)。
レンズ駆動回路3は、フォーカスレンズ及びズームレンズを光軸方向にそれぞれ移動させるモータ(図示略)と、CPU10から送られてくる制御信号にしたがってフォーカスモータ及びズームモータをそれぞれ駆動させるモータドライバ(図示略)とから構成されている。
絞り4は、図示しない駆動回路を含み、駆動回路はCPU10から送られてくる制御信号にしたがって絞りを動作させる。
絞りとは、撮影レンズ2から入ってくる光の量を制御する機構のことをいい、CCD5の露出量は、この絞りとシャッタ速度によって変わる。
撮像素子(ここではCCD5)は、ドライバ6によって走査駆動され、一定周期毎に被写体像のRGB値の各色の光の強さを光電変換して撮像信号としてユニット回路8に出力する。このドライバ6、ユニット回路8の動作タイミングはTG7を介してCPU10により制御される。なお、CCD5はベイヤー配列の色フィルターを有しており、電子シャッタとしての機能も有する。この電子シャッタのシャッタ速度は、ドライバ6、TG7を介してCPU10によって制御される。
ユニット回路8にはTG7が接続されており、CCD5から出力される撮像信号を相関二重サンプリングして保持するCDS(Correlated Double Sampling)回路、そのサンプリング後の撮像信号の自動利得調整を行うAGC(Automatic Gain Control)回路、その自動利得調整後のアナログの撮像信号をデジタル信号に変換するA/D変換器から構成されており、CCD5の撮像信号は、ユニット回路8を経てデジタル信号としてCPU10に送られる。
CPU10は、ユニット回路8から送られてきた画像データに対してガンマ補正、補間処理、ホワイトバランス処理、ヒストグラム生成処理、輝度色差信号(YUVデータ)の生成処理などの画像処理を行う機能を有するとともに、デジタルカメラ1の各部を制御するワンチップマイコンである。
特に、本実施の形態では、CPU10は、参照フレーム画像内に複数の注目画像領域を設定する機能(注目画像領域設定手段)、該設定された注目画像領域毎に、前記注目画像領域と相関度が高くなる一致画像領域を、探索対象フレーム画像からそれぞれ検出する機能(一致画像領域検出手段)、該検出された各一致画像領域の前記探索対象フレーム画像上の位置に基づいて、該検出された一致画像領域が密集する一致画像領域群から外れる一致画像領域を除外するとともに、前記一致画像領域群を構成する各一致画像領域を抽出する機能(抽出手段)、該抽出された一致画像領域の前記探索対象フレーム画像上の位置に基づいて、該抽出された一致画像領域からなる一致画像領域群の重心位置を算出する機能(重心位置算出手段)を有する。
メモリ9には、CPU10の各部の制御に必要な制御プログラム、及び必要なデータ(例えば、補正係数マップ等)が格納されており、CPU10は、該プログラムに従って動作する。
DRAM11は、CCD5によってそれぞれ撮像された後、CPU10に送られてきた画像データを一時記憶するバッファメモリとして使用されるとともに、CPU10のワーキングメモリとして使用される。
画像表示部12は、カラーLCDとその駆動回路を含み、撮影待機状態にあるときには、CCD5によって撮像された被写体をスルー画像として表示し、記録画像の再生時には、フラッシュメモリ13から読み出され、伸張された記録画像を表示させる。
フラッシュメモリ13は、CCD5によって撮像された画像データなどを保存しておく記録媒体である。
キー入力部14は、多段階操作可能なシャッタボタン、モード切替キー、十字キー等の複数の操作キーを含み、ユーザのキー操作に応じた操作信号をCPU10に出力する。
B.デジタルカメラ1の動作
B−1.実施の形態におけるデジタルカメラ1のメイン動作を図2のフローチャートにしたがって説明する。
ユーザによるキー入力部14におけるモード切替キーの操作により撮影モードに設定されると、ステップS1で、CPU10は、所定のフレームレートでCCD5により被写体を撮像させ、順次撮像されるフレーム画像データに画像処理を施し、該画像処理が施されたフレーム画像データをバッファメモリ(DRAM11)に記憶させていき(取得手段)、該順次記憶させたフレーム画像データを画像表示部12に表示させるという、いわゆるスルー画像表示を開始する。このとき、CPU10は、スルー画像上の所定位置(例えば、中央位置)に、画像領域を指定するための、図3(a)に示すような注目画像指定枠23を表示させる。
次いで、ステップS2で、CPU10は、十字キーの操作が行なわれたか否かを判断する。この判断は、十字キーの操作に対応する操作信号がキー入力部14から送られてきたか否かにより判断する。
ステップS2で、十字キーの操作が行なわれたと判断すると、ステップS3に進み、CPU10は、該十字キーの操作に従って注目画像指定枠の表示位置を変更させ、該変更された表示位置に注目画像指定枠を表示させて、ステップS4に進む。つまり、十字キーの操作に応じて注目画像指定枠が移動することになる。
例えば、十字キーの「→」が操作されると注目画像指定枠の表示位置は右に移動し(注目画像指定枠は右に移動し)、「←」が操作されると注目画像指定枠の表示位置は左に移動する(注目画像指定枠は左に移動する)。このとき、ユーザは、撮影したいメインとなる被写体としての追従させたい(追跡したい)被写体に注目画像指定枠が重なるように、または、メイン被写体が注目画像指定枠内に納まるように、十字キーを操作することによって注目画像指定枠をメイン被写体に移動させる。なお、ユーザは、当該デジタルカメラ本体の向きを変えることで、注目画像指定枠とメイン被写体との相対的な位置関係を調整して、メイン被写体に注目画像指定枠が重なるように、または、メイン被写体が注目画像指定枠内に納まるように、注目画像指定枠をメイン被写体に移動させてもよい。
一方、ステップS2で、十字キーの操作が行なわれていないと判断するとそのままステップS4に進む。
ステップS4に進むと、CPU10は、ユーザによってシャッタボタンの半押し操作が行なわれたか否かを判断する。この判断は、シャッタボタンの半押し操作に対応する操作信号がキー入力部14から送られてきたか否かにより判断する。
このとき、シャッタボタンの半押し操作により被写体追従が開始されることになるので、ユーザは追従させたいメイン被写体が注目画像指定枠と重なった時にシャッタボタンの半押し操作を行なう。
ステップS4で、シャッタボタンが半押し操作されていないと判断するとステップS2に戻り、上記した動作を繰り返す。これにより、シャッタボタンを半押し操作するまでは、ユーザは自由に注目画像指定枠の表示位置を変更することができ、注目画像指定枠とメイン被写体とを合わせることができる。即ち、注目画像指定枠にメイン被写体が合わさっていないときには、現在における注目画像指定枠に合わさっている被写体に対して追従させたい訳ではないので、シャッタボタンの半押し操作せず、注目画像指定枠にメイン被写体が合わさった時点で、シャッタボタンの半押し操作を行なう。これにより、真に追従させたいメイン被写体の追従開始を指示することができる。
一方、ステップS4で、シャッタボタンが半押し操作されたと判断すると、被写体追従を開始させる。この被写体追従は、シャッタボタンの半押し操作が維持されている間、継続して行なう。
この被写体追従を具体的に説明すると、まず、ステップS5に進み、CPU10は、現在表示されている注目画像指定枠の位置に基づいて、複数の基準ブロック(注目画像領域)を現在表示させているフレーム画像データ上に配置する(注目画像領域設定手段)。この基準ブロックは、x画素×y画素の画像領域であり、ここでは、例えば8画素×8画素を1つの基準ブロックとしている。なお、後述する探索ブロックも基準ブロックと同じ大きさの画像領域であり、x画素×y画素の画像領域である。つまり、ここでは、8画素×8画素の画像領域ということになる。
なお、注目画像指定枠に替えてトリミング枠を表示させてもよいし、更に、枠に限らず、点や×印、カーソルであってもよい。要は、メイン被写体の位置を示す方法であればよい。
ここで、図3及び図4は、被写体追従を説明するための図である。
図3(a)は、シャッタボタンが半押し操作されたときに表示されていたフレーム画像データ、及び、このときの注目画像指定枠の表示位置の様子を示すものである。
図3(a)の例では、注目画像指定枠23に重なっている被写体は、フレーム画像21の中央部分に位置している被写体としての人物22である。
また、図3(b)は、該シャッタボタンが半押し操作されたときの注目画像指定枠23の表示位置に基づいて、複数の基準ブロックを注目画像指定枠の位置に基づいて配置した例である。
ここでは、所定の配置パターン(初期配置パターン)が予め記憶されていて、注目画像指定枠23の基準位置としての例えば中央座標(図中における十字の交差部分)位置と所定の配置パターンにおける基準位置とが一致するように、当該配置パターンに基づいて各基準ブロック24を配置している。このとき、配置パターンにおける基準位置は、注目画像指定枠23の基準位置を上述したように中央座標値とした場合には、当該配置パターンの中心位置若しくは重心位置とすることが好ましい。
そして、図3(b)の例では、初期配置パターンは、基準ブロック24が縦3列、横3列で、且つ、全ての基準ブロック24が等間隔で並んでいる配置パターンを示している。なお、初期配置パターンは、上述の例に限定するものではなく、例えば、縦2列で、横3列、というようにしてもよいし、縦3列、横2列(これらの場合は、基準ブロック24は6個)というようにしてもよい。また、全ての基準ブロック24が必ずしも等間隔で並んでいる必要性もない。また、追跡する被写体の特徴に応じて、または、撮影シーンに応じて、適宜好ましい配置パターンを選択可能に構成してもよい。
つまり、詳細は後述するが本実施の形態では、注目画像指定枠23と配置パターンとに基づいて定まった各基準ブロックにおける画像データに基づいて人物22を追跡していくことになる。
また、ここでは、基準ブロック24を説明するため、便宜上基準ブロック24を大きく表示させているが、ここでは基準ブロック8画素×8画素とするので微小であり、また、図3(b)に示すように基準ブロック24が認識可能なように表示する必要もない。また、注目画像指定枠23の中心座標位置を示している十字マークは実際には表示されるものではない。しかし、注目画像指定枠23に代えてこの十字マークを表示させるようにしてもよいし、注目画像指定枠23と十字マークとを表示させてもよい。
次いで、ステップS6に進み、CPU10は、配置した各基準ブロック24に対応する画像データを現在表示させているフレーム画像データ21(ここでは、被写体追従開始ボタンの押下時に表示されていたフレーム画像データ21)から抽出する。
次いで、ステップS7で、CPU10は、CCD5によって新たに撮像された次のフレーム画像データをバッファメモリに記憶させることにより、次のフレーム画像データ25(P(x))を取得する。
ここでは、最新のフレーム画像データを現フレーム画像データP(x)といい、現フレーム画像データP(x)の1つ前に撮像されたフレーム画像データを前フレーム画像データP(x−1)という。従って、ステップS7でフレーム画像データが取得されると、当該フレーム画像データが新たな現フレーム画像データP(x)として更新されるとともに、これまでの現フレーム画像データP(x)が新たな前フレーム画像データP(x−1)に更新される。
つまり、フレーム画像データ25が取得されると、フレーム画像データ25がP(x)となり、フレーム画像データ21はP(x−1)となる。
なお、CPU10は、フレーム画像データが新たに取得されると、該取得されたフレーム画像データを現フレーム画像データP(x)として選択し、その1つ前に撮像されたフレーム画像データ(前回の現フレーム画像データ22)を前フレーム画像データP(x−1)として選択する。
なお、CPU10は、前フレーム画像データP(x−1)と現フレーム画像データP(x)とに基づいたブロックマッチング処理により被写体を追跡していくものとする。従って少なくとも、順次更新される現フレーム画像データP(x)と前フレーム画像データP(x−1)における基準ブロック24の画像データとをバッファメモリに保持させておく。
次いで、ステップS8で、CPU10は、基準ブロック24毎に、該取得したフレーム画像データ(現フレーム画像データP(x))から、該抽出した基準ブロック24における画像データと最も相関度の高くなるブロック(一致ブロック)をブロックマッチング処理により検出し、該検出した一致ブロックの座標位置、例えば、その中央座標(x、y)をバッファメモリの位置情報記憶領域に記憶させる(一致画像領域検出手段)。この一致ブロックは本発明の一致画像領域に相当する。
ここで、ブロックマッチング処理とは、図5に示すように、現フレーム画像データ25(P(x))中を順次スキャンすることで、前フレーム画像データ21(P(x−1))における参照画像としての基準ブロック24と最も相関度の高くなる現フレーム画像データ25(P(x))における画像領域(ブロック)を検出するというものである。
なお、このとき、基準ブロック24に対応する座標位置に基づいて、スキャンを行う探索範囲28を設定し、当該探索範囲28内で、基準ブロック24と最も相関度の高くなるブロックの座標位置を検出する構成とすれば、CPUによる演算量を軽減することができ好ましい。
以下、ブロックマッチング処理動作の概要について説明する。前フレーム画像データ21(P(x−1))に対して基準ブロック24が設定(配置)されると、設定された基準ブロック24の各画素値と、現フレーム画像データP(x)における探索ブロック29の各画素値との差分の二乗(若しくは、差分の絶対値)の総和(ブロック評価値)を求める。
そして、探索ブロック29を右に1画素、または、下に1画素移動させ、そのときの、基準ブロック24の各画素値と探索ブロック29の各画素値の差分の二乗の総和を求めるというように、探索ブロック29を探索範囲28内で順次スキャンさせていくことで、探索範囲28における各探索ブロック29のブロック評価値を算出する。そして、最もブロック評価値が低くなる探索ブロック29を検出し、該検出した探索ブロック29を基準ブロック24と最も相関度が高くなるブロック(一致ブロック)とし、その座標位置を取得する。
つまり、前フレーム画像データ21(P(x−1))の各基準ブロック24と対応する現フレーム画像データ25(P(x))上のブロックを検出することになる。
なお、このブロックマッチングについては後で詳細に説明する。
ここで、図3(c)は、現フレーム画像データP(x)としての現フレーム画像データ25において、基準ブロック24毎に検出された各一致ブロック26の座標位置の例を示す図である。この一致ブロック26が前フレーム画像データ21の各基準ブロック24に対応するブロックということになる。
基準ブロック24毎に一致ブロック26が検出されると、ステップS9で、CPU10は、該位置情報記憶領域に記憶させた各一致ブロックの座標位置に基づいて、各一致ブロック間の相対位置関係を評価する。そして、主要な一致ブロック群から大きく外れた位置にある一致ブロック26を検出し、該検出した一致ブロック26を除外して、主要な一致ブロック群を構成する一致ブロック26を抽出する(抽出手段)。
図3(a)に示す例では、楕円で囲った一致ブロック26が、比較的多くの一致ブロックが密集しているブロック群、つまり、主要な一致ブロック群から大きく外れているため、楕円で囲った各一致ブロック26を除外し、除外後に残った一致ブロック26を抽出することになる。これにより主要な一致ブロック群から大きく外れる一致ブロック26を、基準ブロック24と最も相関度が高いとされる一致ブロック群から除外することができる。
なお、除外と抽出を両方せずに、どちらか一方を行なうようにしてもよい。
この主要な一致ブロック群から大きく外れている一致ブロック26の除外、各一致ブロックが密集している一致ブロック群における一致ブロック26の抽出は、位置情報記憶領域に記憶された各一致ブロックの座標位置に基づいてx座標、y座標ごとに、他の各一致ブロックに対する当該一致ブロックの相対位置情報としての標準偏差を求め、x座標及びy座標における相対位置情報の少なくとも一方が一定レベルに満たない一致ブロックを除外する(位置情報記憶領域から除外する一致ブロックの座標位置の記憶を削除する)、または、x座標及びy座標における相対位置情報が共に一定レベルを満たす一致ブロックを抽出することで行う。
そして、ステップS10で、CPU10は、x座標及びy座標における相対位置情報の少なくとも一方が一定レベルに満たない一致ブロックを除外し、除外後に残った各一致ブロック(抽出した一致ブロック26)の座標位置に基づいて、該抽出した一致ブロック26からなる一致ブロック群の重心位置(平均座標位置)を算出する(重心位置算出手段)。
図4(d)は、算出された重心位置の様子を示すものであり、この十字の交差位置が算出された重心位置を示している。
この例では、図3(c)に示した楕円の範囲内にある一致ブロック26が除外され、該除外後に残った一致ブロック26が抽出され、該抽出された一致ブロック26の位置に基づいて、これらからなる一致ブロック群の重心位置を算出している。
次いで、ステップS11で、CPU10は、ステップS7、又は後述するステップS14で取得された現フレーム画像データP(x)を画像表示部12(表示手段)に表示させるとともに、該算出した重心位置に基づいて注目画像指定枠23と同じ大きさを有する被追従画像領域枠(重心位置を示す情報)を表示させる(表示制御手段)。このときは、被追従画像領域枠の基準位置(例えば、中心位置)が該算出した重心位置となるように、被追従画像領域枠を表示させる。
図4(e)は、表示される被追従画像領域枠27の表示位置を示すものであり、注目画像指定枠23と同じ大きさを有する被追従画像領域枠27が該算出された重心位置に基づいて表示されているのがわかる。
これにより、どこにメイン被写体が移動したのかをユーザが簡単に認識することができる。
なお、図4(e)において、除外後に残った(抽出された)一致ブロックからなるブロック群の重心位置を示している十字マークは実際に表示されるものでないが、被追従画像領域枠27に代えてこの十字マークを表示させるようにしてもよいし、被追従画像領域27と十字マークとを表示させるようにしてもよい。
次いで、ステップS12に進み、CPU10は、ユーザによってシャッタボタンの全押し操作が行なわれたか否かを判断する。この判断は、シャッタボタンの全押し操作に対応する操作信号がキー入力部14から送られてきたか否かにより判断する。
ステップS12で、シャッタボタンが全押しされていないと判断すると、ステップS13に進み、CPU10は、シャッタボタンの半押しが解除されたか、つまり、シャッタボタンの半押しが維持されなくなったか否かの判断を行う。この判断は、シャッタボタンの半押し操作に対応する操作信号がキー入力14から継続して送られてこなくなったか否かにより判断する。
ステップS13で、シャッタボタンの半押し操作が解除されていないと判断すると、つまり、半押し操作が維持されていると判断すると、ステップS14で、CCD5によって新たに撮像された次のフレーム画像データをバッファメモリに記憶させることにより、次のフレーム画像データ(P(x))を取得する。これにより、新たに取得されたフレーム画像データは現フレーム画像データP(x)として選択され、現フレーム画像データであったフレーム画像データ25は、前フレーム画像データP(x−1)として選択される。
次いで、ステップS15に進み、CPU10は、ステップS9での除外後に残った(ステップS9で抽出した)一致ブロック26をそれぞれ新たな基準ブロック24とし(注目画像領域設定手段)、該各基準ブロックに対応する画像データを、新たに前フレーム画像データとなったフレーム画像データ25(P(x−1))から抽出して、ステップS8に戻り、上記した動作を繰り返す。
つまり、図4(e)に示すようなフレーム画像データ25の一致ブロック26を新たな基準ブロック24とし、該基準ブロック内の画像データを抽出する。
一方、ステップS13で、シャッタボタンの半押し操作が解除されたと判断すると、被写体追従を終了してステップS16に進み、CPU10は、所定位置の注目画像指定枠23を表示させてステップS2に戻り、上記した動作を繰り返す。
また、ステップS12で、シャッタボタンの全押し操作が行なわれたと判断すると、ステップS17に進み、CPU10は、被写体追従を終了して、現在の被追従画像領域枠27の位置に基づいて定められるAFエリアに対してピントが合うようにオートフォーカス処理を行う。
次いで、ステップS18で、CPU10は、静止画撮影処理を行い、該得られた静止画像データをフラッシュメモリ13に記録する。
なお、被追従画像領域枠27の位置に基づいてトリミング範囲を定め、撮影された静止画像データから該定められたトリミング範囲の画像データを切り出して記録するようにしてもよい。
B−2.ブロックマッチング処理について
図2のステップS8のブロックマッチング処理においては、算出されたブロック評価値を補正し、該補正されたブロック評価値に基づいて基準ブロック24と最も相関度の高いブロックを検出するようにしてもよい。
この算出されたブロック評価値を補正する理由は、従来のブロックマッチングによって、算出された基準ブロック24との相関度を示すブロック評価値が最も低いブロックを、単に基準ブロック24と最も相関度が高いブロックとすると、例えば、メイン被写体がいる位置のブロック評価値より、メイン被写体とは別の被写体(疑似被写体)がいる位置のブロック評価値の方が低くなってしまう場合があり、結果として、被写体追従の精度が落ちてしまう場合があるためである。なお、ブロック評価値の低いブロック程、基準ブロック24と最も相関度が高いブロックとなり、ブロック評価値の低さに比例して相関度が高くなる。
以下、その動作にブロック評価値の補正を含むブロックマッチングについて、図6のフローチャートにしたがって詳細に説明する。
各基準ブロック24が設定され、当該基準ブロック24との相関度が高いブロック(一致ブロック26)の位置検出を開始すると、CPU10は、ステップS51で、J=1に設定し(J:基準ブロック24の番号)、ステップS52で、J番目(ここでは1番目)の基準ブロック24と最も相関度の高いブロックの位置の検出を開始する。この基準ブロック24の番号の割り振りは任意である。
次いで、ステップS53で、図2のステップS6で抽出された前フレーム画像データのJ番目の基準ブロック24に対応する現フレーム画像データの探索範囲28を設定し(探索範囲設定手段)、該設定した探索範囲内で、探索ブロック29をスキャンさせていき、探索ブロック29の各位置におけるブロック評価値Sを算出する(相関度算出手段)。
ここで、図7(a)は、基準ブロック24、探索ブロック29の様子を例示する図であり、ここでは、基準ブロック24、探索ブロック29ともに8画素×8画素で構成されている。また、図7(a)の黒く塗りつぶした画素を、ブロック(基準ブロック24、探索ブロック29)の中心画素とする。なお、8画素×8画素のように偶数の画素で構成されたブロックの場合には、中心の画素は存在しないので、図7(a)の中央部にある4つの画素であれば(太枠線で囲まれている4つの画素であれば)何れの画素であってもよいが、基準ブロック24の中心画素と探索ブロック29の中心画素は同じ座標位置である必要がある。
また、図7(b)は設定される探索範囲28の様子を示す例である。探索範囲28は、現フレーム画像データにおける所定の画素を中心として、例えば、左右にそれぞれ12画素、また、上下にそれぞれ8画素分の範囲からなっている。このとき、現フレーム画像データにおける所定の画素、つまり、探索範囲28の中心画素は、前フレーム画像データにおける基準ブロックの中心画素に対応している座標位置の画素である。そして、この探索範囲28は、基準ブロック24毎に設定される。また以下では、探索範囲の中心画素(図7(b)の斜線部分、以下範囲中心画素)に対応している座標位置を(x,y)=(0,0)とし、x軸は右方向をプラス、左方向をマイナス、y軸は上方向をプラス、下方向をマイナスとして説明する。
つまり、本実施の形態では、探索ブロック29の中心画素が上述した探索範囲28内となるように、各探索ブロック29を順に選択するとともに、該選択した各探索ブロック29と所定の基準ブロック24とを比較していくことになる。
図8は、この基準ブロック24、探索ブロック29、探索範囲28の関係を示す図である。
前フレーム画像データ21の基準ブロック24の中にある黒点30は、基準ブロック24の中心画素を示しており、該中心画素30に対応する現フレーム画像データの画素が黒点31(範囲中心画素31)である。つまり、基準ブロック24の中心画素30として表される前フレーム画像データ21上の座標位置と、範囲中心画素31として表される現フレーム画像データ25上の座標位置は同じである。
そして、この範囲中心画素31を中心に、図7(b)に示すように探索範囲28が左右に12画素、上下に8画素広がっている。
また、探索ブロック29の中にある黒点32は、探索ブロック29の中心画素を示している。そして、中心画素32が探索範囲28内となる各探索ブロック29が現フレーム画像データ25から順次選択され、該選択された探索ブロック29毎に、基準ブロック24の各画素値と、該探索ブロック29の各画素値との差分の二乗の総和(ブロック評価値S)を算出していく。
このブロック評価値Sは、以下に示す数1によって求めることができる。
Figure 0004716266
数1における、kは、基準ブロック24内または探索ブロック29内の各画素のアドレスを示している。つまり、図7(a)に示す例では、基準ブロック24または探索ブロック29は8画素×8画素で構成されているので、画素の数は全部で64個となり、アドレスkが0〜63までとなる。
また、Y1は、探索ブロック29の各画素の輝度値を表し、Y2は、基準ブロック24の各画素の輝度値を表している。
また、「xy」は、各探索ブロックの識別番号としてのそれぞれの中心座標を表している。
図9は、中心画素32が探索範囲32内となるように現フレーム画像データ25から順次選択される探索ブロック29を説明するための図である。
図を見ると、探索ブロック29の中心画素(黒く塗りつぶしている画素)32の位置が(x,y)=(0,0)のときに、選択される探索ブロック29の範囲は、図9のAのような範囲となり、Y1x=0,y=0は、該Aに示すような範囲の探索ブロック29の画素の輝度値を表している。また、探索ブロック29の位置(中心画素32の位置)が(x,y)=(−12,8)のときに、選択される探索ブロック29の範囲は図9のBに示すような範囲となり、Y1x=−12,y=8は、該Bに示すような範囲の探索ブロック29の画素の輝度値を表している。
また、Y1xykは、探索ブロック29の中心画素32の位置が、(x,y)のときに選択される探索ブロック29の各アドレスの輝度値を表しており、k=0のときは、該選択される探索ブロック29のアドレス0の画素の輝度値、k=1のときは、該選択される探索ブロック29のアドレス1の画素の輝度値を表している。
なお、このY2kとは、基準ブロック24の各アドレスの画素の輝度値を表しており、k=0のときは、基準ブロック24のアドレス0の画素の輝度値、k=1のときは、基準ブロック24のアドレス1の画素の輝度値を表している。また、このアドレスkに対応する基準ブロック24、探索ブロック29の画素は、それぞれ同じ位置である必要がある。例えば、アドレス0を基準ブロックの一番左上の画素とする場合には、アドレス0に対応する探索ブロック29の画素も一番左上とする必要がある。なぜならば、探索ブロック29の各画素値と基準ブロック24の各画素値とを同じ位置の画素同士で減算するからである。
つまり、上記した数式によって、探索ブロック29の中心画素32の位置が(x,y)のときに選択される探索ブロック29の各画素値と、基準ブロック24の画素値とが同じ位置の画素同士で減算され、その二乗の総和が該(x,y)の位置における探索ブロックのブロック評価値Sxyとして算出されることになる。この(x,y)の値を変えることにより、探索ブロック29の各位置におけるブロック評価値Sxyを求めることができる。
図10は、探索ブロック29の探索範囲28の各位置において算出されたブロック評価値Sの様子を示すものであり、探索範囲28の画素の数と同じ数だけのブロック評価値Sが算出されているのがわかる。なお、図10においては、ブロック評価値を全てSで表示させているが、全てのブロック評価値が同じ値ということを示しているのではなく、あくまでもブロック評価値を意味しているに過ぎない。このブロック評価値Sの値が高くなればなるほど相関度は小さくなる。
本実施の形態は、以下詳述するように、該算出された各位置のブロック評価値Sを補正して、基準ブロック24と最も相関度の高いブロックを検出するというものである。
図6のフローチャートに戻り、探索ブロック29の各位置におけるブロック評価値Sを算出すると、ステップS54に進み、メモリ9に記憶されている補正係数マップに基づいて、算出された探索ブロック29の現フレーム画像データ上の探索範囲28の各位置におけるブロック評価値Sを補正する(相関度補正手段)。
図11は、メモリ9に記憶されている補正係数マップの様子を示す図であり、ブロック評価値を補正するめの補正係数mがそれぞれ記憶されている。この補正係数は、(x,y)=(0,0)に近いほど(探索範囲28の範囲中心画素31に近いほど)補正係数mが小さく、遠いほど補正係数mが大きくなる。ここでは、最小の補正係数mは中心付近の「64」であり、最大の補正係数mは四隅の「255」である。
この補正係数マップを用いて該算出された基準ブロック24と探索範囲28の各位置における探索ブロック29とのブロック評価値Sを補正することになる。
具体的には、基準ブロック24の探索範囲28の各位置におけるブロック評価値Sと、各位置のブロック評価値に対応する補正係数をそれぞれ乗算することによりブロック評価値Sを補正する。つまり、ブロック評価値Sを補正するということは、基準ブロック23と各位置における探索ブロックとの相関度を補正するということである。
例えば、(x,y)=(0,0)のブロック評価値Sを補正する場合には、(x,y)=(0,0)のブロック評価値Sと(x,y)=(0,0)の補正係数m(m=64)を乗算することにより該位置のブロック評価値Sを補正し、(x,y)=(4,−3)のブロック評価値Sを補正する場合には、(x,y)=(4,−3)のブロック評価値Sと(x,y)=(4,−3)の補正係数m(m=86)を乗算することにより該位置のブロック評価値Sを補正する。また、(x,y)=(−12,8)のブロック評価値Sを補正する場合には、(x,y)=(−12,8)のブロック評価値Sと(x,y)=(−12,8)の補正係数m(m=255)を乗算することにより該位置のブロック評価値Sを補正する。
このように、補正係数マップは、ブロック評価値Sが探索範囲28の範囲中心画素31(x,y)=(0,0)から離れれば離れるほど補正係数が大きくなるので、基準ブロック24の位置30が中央から遠い(離れる)ほど補正後のブロック評価値Sの値は大きくなりやすい(相関度は小さくなりやすい)。これにより、中央付近における探索ブロック29のブロック評価値を低くさせやすく(相関度を大きくさせやすく)、探索範囲28の中央を重点とした一致ブロック26を検出しやすくなる。被写体を所定のフレームレート、例えば、30fpsで撮像している場合は、被写体の動きが格別に速いものでなければ(例えば、高速で走っている車などでなければ)、現フレーム画像データと、前フレーム画像データでは、然程被写体の位置は離れないからであり、探索範囲28の中央を重点とした一致ブロック検出することができる。
つまり、従来においては、図10に示すような探索ブロック29の各位置におけるブロック評価値Sを算出すると、該算出したブロック評価値Sのうち、最もブロック評価値の低くなる位置を基準ブロック24と最も相関度が高いブロック(一致ブロック26)の位置としていたが、上述したように、メイン被写体と疑似被写体の色や明るさが似ている場合、真の被写体21がいる位置の探索ブロック29に基づくブロック評価値より、疑似被写体がいる位置の探索ブロック29に基づくブロック評価値の方が低くなってしまう場合がある。かかる場合は、一致ブロックの位置がメイン被写体から離れてしまう。
これに対して、本発明の基準ブロック24と最も相関度が高いブロックの検出処理においては、上記算出した探索ブロック29の探索範囲28内の各位置におけるブロック評価値をそのまま用いることなく、該各位置におけるブロック評価値Sを補正係数マップを用いて補正するので、基準ブロック24の位置30付近に位置している探索ブロック29を優先的に一致ブロック26として検出することができる。
なお、中央重点とした一致ブロック26を検出するような補正係数マップを設けたが、被写体の動きに応じた補正係数マップを備えるようにし、該被写体の動きに応じて補正係数マップを使い分けるようにしてもよい。例えば、被写体の動きが左方向に移動している場合は、探索範囲の中央を優先とした(中央付近に近い程補正係数を小さくした)補正係数マップの替わりに、探索範囲の中央から左にずれたポイントを優先とた補正係数マップ(該中央から左にずれたポイント付近に近い程補正係数を小さくした補正係数マップ)を使用する。これにより、被写体の動きに応じて、精度よく一致ブロック26を検出することができる。
図6のフローチャートに戻り、補正係数マップを用いて各位置におけるブロック評価値Sを補正すると、ステップS55に進み、CPU10は、該補正後のブロック評価値Sのうち、最もブロック評価値が低くなる位置を検出し、該検出した位置を基準ブロック24と最も相関度が高いブロック(一致ブロック26)の位置とする(一致画像領域検出手段)。
次いで、ステップS56で、CPU10は、一致ブロック26の位置を検出していない基準ブロック24があるか否かを判断する。
ステップS56で、一致ブロック26の位置を検出していない基準ブロック24があると判断すると、ステップS57に進み、CPU10は、J=J+1にし、つまり、JをインクリメントしてステップS52に戻る。
C.以上のように、実施の形態においては、複数の基準ブロック24に基づいて、該複数の基準ブロック24と最も相関度の高いブロック(一致ブロック26)の位置をそれぞれ検出し、該検出した位置に基づいて他の一致ブロック26と大きく外れる位置にある一致ブロック26を除外し、該除外後に残った(抽出した)一致ブロック26の位置のみに基づいて被追従画像領域枠27の表示位置(抽出した一致ブロック郡の重心位置)を算出するようにしたので、単一の基準ブロック24を用いて被写体位置の検出より、被写体位置の検出精度が向上し、被写体追従の精度を向上させることができる。
例えば、基準ブロック24と最も相関度が高いと判断された一致ブロック26の位置がメイン被写体21に外れてしまっても、他の基準ブロック24と最も相関度が高いと判断された一致ブロック26の位置に基づいて被写体位置を検出することができる。
また、複数検出された一致ブロック26の位置に基づいて、他の一致ブロック26と大きく外れる位置の一致ブロック26を除外し、該除外後に残った(抽出した)一致ブロック26の位置に基づいて被写体の位置を検出するので、つまり、大きく外れる位置の一致ブロック26は誤検出と擬制して、被写体の位置検出に使用しないので(重心位置を検出する一致ブロック群から除外するので)、被写体追従の制度を向上することができる。
また、探索ブロック29の各位置における基準ブロック24とのブロック評価値Sを各基準ブロック毎に算出し、該算出したブロック評価値Sを、探索範囲の中央近くなればなるほど補正係数を小さくした補正係数マップを用いて補正するようにしたので、探索範囲28の中央を重点とした被写体追従、つまり、基準ブロック24の位置付近にある探索ブロック29を基準ブロック24と最も相関度の高い探索ブロック(一致ブロック26)として検出し易くすることができ、探索範囲28の中央を重点とした被写体追従することができる。
[変形例]
D.上記実施の形態は、以下のような変形例も可能である。
(1)上記実施の形態においては、図2のステップS15で、除外後に残った(抽出した)一致ブロック26を基準ブロック24としたが、ステップS10で算出された、除外後に残った(抽出した)一致ブロック26からなる一致ブロック群の重心位置に基づいて、抽出した一致ブロック数に相当する数の新たな基準ブロック24を再配置させるようにしてもよい。
また、ステップS10で算出された、除外後に残った一致ブロックの重心位置及び初期配置パターンにしたがって複数の基準ブロック26を再配置させるようにしてもよい。
図12は、そのときの様子を示すものであり、図12(a)は、ステップS10で、図2のステップS9の除外後に残った一致ブロック26に基づいて算出された一致ブロック26全体の中心位置の様子を示す図であり、図4(d)と同様である。
図12(b)は、該算出された一致ブロック26全体の重心位置に基づいて、該除外後の一致ブロック26数に相当する数の新たな基準ブロック24を再配置させた時の様子を示す図である。図12(a)を見ると、除外後の一致ブロック26の数は6つなので、再配置された基準ブロック26の数も6つであることがわかり、除外後の残った一致ブロック26がそのまま基準ブロック26となっておらず、基準ブロック24が再配置されていることが分かる。
このように、算出された重心位置に基づいて基準ブロック24を再配置させるので、除外後に残った一致ブロック26を基準ブロック24とするよりは、被写体追従の精度をよくすることができる。
なお、枠27は、算出された重心位置に基づいて表示された被追従画像領域枠を示している。
また、再配置後の複数の基準ブロックは、当該基準ブロックからなるブロック群の重心位置が、再配置前に配置されていた複数の基準ブロックからなるブロック群の重心位置と、一致するように、再配置されることが好ましい。
図12(c)は、該算出された一致ブロック26全体の重心位置及び初期配置パターンにしたがって複数の基準ブロック24を再配置させたときの様子を示す図である。図12(c)を見ると、図3(b)と同様に基準ブロック24が配置されていることが分かる。なお、図3(b)の場合は、注目画像指定枠の位置及び初期配置パターンにしたがって複数の基準ブロック24を配置させ、図12(c)の場合は、算出された重心位置及び初期配置パターンにしたがって複数の基準ブロック26を配置させるので、基準ブロック26が配置されているフレーム画像データ上の位置は異なっている。
このように、検出された被写体位置に基づいて基準ブロック24を初期配置させるので、除外後に残った一致ブロック26の位置を単に基準ブロック24の位置とするよりは、被写体追従の精度をよくすることができる。
なお、枠27は、算出された重心位置に基づいて表示された被追従画像領域枠を示している。
(2)また、上記実施の形態においては、除外後の一致ブロック26全体の中心位置(被追従画像領域枠27の中心位置)を算出すると、注目画像指定枠23の中心位置(前回の重心位置が既に算出されている場合は該前回の算出された重心位置)と、新たに算出された重心位置とに基づいて被写体の動きベクトルを動きベクトルを算出するようにしてもよい(動きベクトル算出手段)。この算出された動きベクトルは、手振れ補正や、JPEG圧縮等の様々な用途に適用することができる。
また、この検出された動きベクトルに基づいて、前フレーム画像データの基準ブロック24に対応する現フレーム画像データの探索範囲28の大きさ、形等を変えて設定するようにしてもよい。
例えば、検出された動きベクトルに基づいてメイン被写体21は左方向、又は右方向に移動していると判断された場合は、図7(b)に示すような探索範囲28を更に横長にする。
図13(a)は、そのときの探索範囲28の様子を示すものである。図を見ると、探索範囲28は、探索範囲28の範囲中心画素31((x,y)=(0,0))を中心に左右に20画素ずつ、上下に5画素ずつ広がっているのが分かり、図6に示すような探索範囲28より横長になっているのがわかる。これにより、現在の被写体の動きに合わせた探索範囲28にすることができ、被写体追従の精度をよくすることができる。
また、検出された動きベクトルに基づいて、探索範囲28の範囲中心画素31の位置が、探索範囲28内で変わるように探索範囲28を変えるようにしてもよい。
例えば、検出された動きベクトルに基づいてメイン被写体21は左方向に移動していると判断された場合は、探索範囲28の範囲中心画素31を探索範囲の中心から右方向に移動するように探索範囲の位置を変える。
図13(b)は、そのときの探索範囲28の様子を示すものである。
図を見ると、探索範囲28は、探索範囲28の探索中心画素31((x,y)=(0,0))を中心に右に5画素、左に19画素、上下に8画素ずつ広がっているのが分かり、図6に示すような探索範囲28と同じサイズであるが、範囲中心画素31の位置が違うことがわかる。これにより、左方向の探索範囲が広がり被写体追従の精度をよくすることができる。
なお、上述したように、この探索範囲28の探索中心画素31は、前フレーム画像データの基準ブロック24の位置30に対応する現フレーム画像データの位置である。つまり、中心画素30と探索中心画素31の位置はフレーム画像データ上同じ位置である(図8参照)
また、検出された動きベクトルに基づいて、探索範囲28の大きさ、形を変えるとともに、探索範囲の範囲中心画素31の位置も変えるようにしてもよい。
また、範囲中心画素30の位置を変える場合には、それに伴って図11に示す補正係数マップも修正する必要がある。
(3)また、上記実施の形態においては、図2のステップS8で、前フレーム画像データの各基準ブロック24と最も相関度の高い(最もブロック評価値の低い)現フレーム画像データのブロック(一致ブロック26)の位置を検出するようにしたが、つまり、各基準ブロック24毎に1つの一致ブロック26を検出するようにしたが、各基準ブロック24毎に一致ブロック26の位置を複数検出するようにしてもよい。これにより、1つの基準ブロック23から複数の一致ブロック26の位置が検出される。
そして、ステップS9で、該各基準ブロック24毎に複数検出された一致ブロック26の位置に基づいて、主要の一致ブロック群から大きく外れる位置にある一致ブロック26を除外する。
図14(a)は、変形例(3)を模式図化したものである。
図14(a)に示すように、基準ブロック24毎に一致ブロック26の位置を複数検出し、該検出した全ての一致ブロック26(楕円で囲っている全ての一致ブロック23)の位置に基づいて、他の一致ブロック26と大きく外れる位置にある一致ブロック26を一致ブロック群から除外する。つまり、一致ブロック26が密集する一致ブロック群を構成する一致ブロック26を抽出することになる。
なお、基準ブロック24毎に複数検出される相関度の高いブロック(一致ブロック26)の位置は、基準ブロック24と最も相関度が高い位置から所定番目まで高い位置、若しくは所定値より相関度が高い位置を検出するようにする。例えば、所定番目を3番目とすると、基準ブロック24と最も相関度が高い探索ブロック29の位置と、次に相関度が高い(次にブロック評価値が低い)探索ブロック29の位置と、3番目に相関度が高い(3番目にブロック評価値が低い)探索ブロック29の位置を、一致ブロック26の位置として検出する。
これにより、基準ブロック24と最も相関度が高い探索ブロック29の位置がメイン被写体21の位置付近にない場合であっても、つまり、メイン被写体がいる位置の探索ブロック29に基づくブロック評価値より、疑似被写体がいる位置の探索ブロック29に基づくブロック評価値の方が低くなってしまう場合であっても、基準ブロック24毎に複数の一致ブロック26の位置を検出し、該検出した全ての位置に基づいて、他の一致ブロック26と大きく外れる位置の一致ブロック26を除外するようにしたので、被写体追従の精度を向上することができる。
(4)また、上記実施の形態においては、図6のステップS54で、算出された探索ブロック29の各位置におけるブロック評価値Sを補正し、ステップS55で、該補正後のブロック評価値Sのうち、最もブロック評価値が低くなる位置を検出し、該検出した位置を基準ブロック24と最も相関度が高いブロック(一致ブロック26)の位置とするようにしたが、ステップS53で、探索ブロック29の各位置におけるブロック評価値Sを算出すると、ステップS54でブロック評価値Sの補正処理を行わずに、各位置のブロック評価値の中でブロック評価値Sが低いブロックの位置(候補一致ブロック26´の位置)を複数検出し、該複数検出した位置の中で、最も範囲中心画素31に近い位置を検出し、該検出した位置を基準ブロック24の一致ブロック26として、ステップS56に進むようにしてもよい。
図14(b)は、変形例4を模式図化したものである。
図14(b)に示すように、基準ブロック24毎に候補一致ブロック26´の位置を複数検出し、この基準ブロック毎に、該検出した候補一致ブロック26´の位置の中で範囲中心画素30に近い位置を検出し、該検出した位置を一致ブロック26とする。
なお、基準ブロック24毎に複数検出される候補一致ブロック26´の位置は、ステップS53で算出されるブロック評価値Sの中で、ブロック評価値Sが最も小さくなる位置から所定番目までに小さい位置、若しくは所定値より低い位置を、候補一致ブロック26´の位置とする。
これにより、ブロック評価値Sを補正することなく、基準ブロック24の位置付近に位置している探索ブロック29を優先的に該基準ブロック24と最も相関度の高いブロック(一致ブロック26)として検出し易くすることができ、被写体追従の精度を向上することができる。
(5)また、上記変形例(3)においては、各基準ブロック24毎に相関度の高いブロック(一致ブロック26)の位置を複数検出し、ステップS9で、該各基準ブロック24毎に複数検出された一致ブロック26の位置に基づいて、他の一致ブロック26と大きく外れる位置にある一致ブロック26を一致ブロック群から除外するようにしたが、各基準ブロック24毎に複数の一致ブロック26の位置を検出すると(この検出された一致ブロック26を候補一致ブロック26´と呼ぶ)、該各基準ブロック24毎に複数検出された候補一致ブロック26´の中で、最も範囲中心画素31に近い候補一致ブロック26´の位置を、基準ブロック23の一致ブロック26とすることにより、各基準ブロック24の一致ブロック26を1つずつ検出するようにしてもよい。
つまり、変形例(5)を模式図化すると、上記変形例(4)で説明した図14(b)のようになるが、上記変形例(4)と違う点は、本変形例(5)は、補正後のブロック評価値に基づいて複数の候補一致ブロック26´を検出し、該検出した候補一致ブロック26´の中から範囲中心画素30に近い一致ブロック26を検出する点にある。
これにより、更に探索範囲28の中央を重点とした被写体追従を行なうことができる。
(6)また、上記実施の形態においては、フレーム画像データ毎に被写体の位置(ステップS10で算出される重心位置)を算出するようにしたが、所定間隔フレーム毎に算出するようにしてもよい。フレーム画像データ毎に被写体の位置を(ステップS10で算出される重心位置)を検出した方が被写体追従の精度をよくすることができるが処理負担が大きくなり、所定間隔毎フレーム毎に算出した方が処理負担を軽減することができる。
また、連続する2つのフレーム画像データ(前フレーム画像データと、現フレーム画像データ)を選択し、該選択したフレーム画像データに基づいて被写体位置を検出するようにしたが、連続しない2枚のフレーム画像データを選択し、該選択したフレーム画像データに基づいて被写体位置を検出するようにしてもよい。
(7)また、上記実施の形態においては、現に撮像しているフレーム画像データに基づいて被写体の位置を検出するようにしたが、既に撮影済の記録されている動画像データを用いて被写体追従(被写体位置検出)を行なうようにしてもよい。
(8)また、上記実施の形態においては、基準ブロック24、探索ブロック29内の全ての画素を用いてブロック評価値を算出するようにしたが、基準ブロック24、探索ブロック29内の画素を間引き、間引き後に残った画素のみを用いてブロック評価値を算出するようにしてもよい。この場合は、あらかじめ現フレーム画像データ25の画素も間引くようにしてもよい。これにより、ブロック評価値Sの算出に伴う処理負担を軽減することができ、迅速にブロック評価値Sを算出することができる。
(9)また、上記実施の形態においては、シャッタボタンの半押しにより被写体追従を開始させ、シャッタボタンの全押し、半押し解除により被写体追従を終了するようにしたが、シャッタボタンとは別個に被写体追従開始ボタンを設け、該被写体追従開始ボタンにより被写体追従の開始、終了を指示するようにしてもよい。
(10)また、上記実施の形態においては、探索範囲28を設けるようにしたが、探索範囲を設けないようにしてもよい。この場合は、現フレーム画像データP(x)の全範囲内で探索ブロック29をスキャンさせていくことになる。この場合には、全範囲内で探索ブロック29をスキャンさせていくことにより算出された探索ブロック29の各位置におけるブロック評価値Sを補正するための補正係数マップを備える必要がある。
(11)また、上記(1)〜(10)を任意に組み合わせた実施の形態に変更するようにしてもよい。
(11)、本発明の上記実施形態は、何れも最良の実施形態としての単なる例に過ぎず、本発明の原理や構造等をより良く理解することができるようにするために述べられたものであって、添付の特許請求の範囲を限定する趣旨のものでない。
したがって、本発明の上記実施形態に対してなされ得る多種多様な変形ないし修正はすべて本発明の範囲内に含まれるものであり、添付の特許請求の範囲によって保護されるものと解さなければならない。
最後に、上記各実施の形態においては、本発明の画像処理装置をデジタルカメラ1に適用した場合について説明したが、上記の実施の形態に限定されるものではなく、要は、動画データを処理することができる機器であれば適用可能である。
本発明の実施の形態のデジタルカメラ1のブロック図である。 実施の形態のデジタルカメラ1の動作を示すフローチャートである。 被写体追従を説明するための図である。 被写体追従を説明するための図である。 従来におけるブロックマッチングを説明するための図である。 実施の形態のデジタルカメラ1の動作を示すフローチャートである。 基準ブロック24と探索ブロック29の様子及び探索範囲の様子を例示する図である。 基準ブロック24、探索ブロック29、探索範囲28の関係を示す図である。 中心画素32が探索範囲32内となるように現フレーム画像データ25から順次選択される探索ブロック29を説明するための図である。 探索ブロック29の各位置において算出されたブロック評価値Sの様子を示すものである。 メモリ9に記憶されている補正係数マップの様子を示す図である。 変形例における基準ブロック24の配置を説明するための図である。 変形例における探索範囲の様子を示す図である。 変形例を説明するための模式図である。
符号の説明
1 デジタルカメラ
2 撮影レンズ
3 レンズ駆動回路
4 絞り兼用シャッタ
5 CCD
6 ドライバ
7 TG
8 ユニット回路
9 メモリ
10 CPU
11 DRAM
12 画像表示部
13 フラッシュメモリ
14 キー入力部
15 バス

Claims (15)

  1. 参照フレーム画像内に複数の注目画像領域を設定する注目画像領域設定手段と、
    前記注目画像領域設定手段により設定された注目画像領域毎に、前記注目画像領域と相関度が高くなる一致画像領域を、探索対象フレーム画像からそれぞれ検出する一致画像領域検出手段と、
    前記一致画像領域検出手段により検出された各一致画像領域の前記探索対象フレーム画像上の位置に基づいて、該検出された一致画像領域が密集する一致画像領域群から外れる一致画像領域を除外するとともに、前記一致画像領域群を構成する各一致画像領域を抽出する抽出手段と、
    前記抽出手段により抽出された一致画像領域の前記探索対象フレーム画像上の位置に基づいて、該抽出された一致画像領域からなる一致画像領域群の重心位置を算出する重心位置算出手段と、
    を備えたことを特徴とする画像処理装置。
  2. フレーム画像を順次取得する取得手段を備え、
    前記一致画像領域検出手段は、
    前記取得手段により取得された最新のフレーム画像を探索対象フレーム画像として選択するとともに、当該探索対象フレーム画像から一致画像領域を検出し、
    前記注目画像領域設定手段は、
    前記取得手段により取得された最新のフレーム画像より前に取得されたフレーム画像を参照フレーム画像として選択するとともに、当該選択した参照フレーム画像内に複数の注目画像領域を設定することを特徴とする請求項1記載の画像処理装置。
  3. 前記取得手段により順次取得されるフレーム画像のうち、最新に取得されたフレーム画像を表示手段に表示させていくとともに、前記重心位置算出手段により算出された重心位置を示す情報を該フレーム画像に重ねて表示させる表示制御手段を備えたことを特徴とする請求項2記載の撮像装置。
  4. 前記注目画像領域設定手段は、
    前記重心位置算出手段により重心位置が算出された場合は、前記探索対象フレーム画像を新たな参照フレーム画像として選択するとともに、前記抽出手段により抽出された一致画像領域を新たな注目画像領域として、前記新たに選択した参照フレーム画像内に設定することを特徴とする請求項2又は3記載の画像処理装置。
  5. 前記注目画像領域設定手段は、
    前記重心位置算出手段により重心位置が算出された場合は、前記探索対象フレーム画像を新たな参照フレーム画像として選択するとともに、該選択した参照フレーム画像に、該算出された重心位置に基づいて、複数の注目画像領域を設定することを特徴とする請求項2又は3記載の画像処理装置。
  6. 前記注目画像領域設定手段は、
    前記重心位置算出手段により算出された重心位置と、予め決まった初期配置パターンとに基づく複数の注目画像領域を設定することを特徴とする請求項5記載の画像処理装置。
  7. 前記注目画像領域設定手段は、
    前記重心位置算出手段により重心位置が算出された場合は、前記探索対象フレーム画像を新たな参照フレーム画像として選択するとともに、該選択した参照フレーム画像に、前記抽出手段により抽出された一致画像領域数に相当する数の新たな注目画像領域を設定することを特徴とする請求項2乃至5の何れかに記載の画像処理装置。
  8. 前記一致画像領域検出手段は、
    前記注目画像領域設定手段により設定された注目画像領域毎に、前記注目画像領域と前記探索対象フレーム内の各領域との相関度を算出する相関度算出手段と、
    前記相関度算出手段により算出された前記探索対象フレームの各領域における注目画像領域との相関度を補正係数マップを用いて補正する相関度補正手段と、を備え、前記相関度補正手段により補正された相関度に基づいて一致画像領域を検出することを特徴とする請求項1乃至7の何れかに記載の画像処理装置。
  9. 前記補正係数マップは、
    フレーム画像間の相対位置関係において、注目画像領域に対応する座標位置に近い領域程、相関度が高くなるように補正係数を設けていることを特徴とする請求項8記載の画像処理装置。
  10. 前記注目画像領域抽出手段により設定される注目画像領域毎に、前記注目画像領域に対応する探索範囲を前記探索対象フレーム画像にそれぞれ設定する探索範囲設定手段を備え、
    前記一致画像領域検出手段は、
    前記探索範囲設定手段により設定された探索範囲から、当該探索範囲に対応する注目画像領域と相関度が高くなる一致画像領域を検出することを特徴とする請求項1乃至9の何れかに記載の画像処理装置。
  11. 前記注目画像領域設定手段により設定される注目画像領域からなる注目画像領域群の重心位置と、前記重心位置算出手段により算出される重心位置とに基づいて、動きベクトルを算出する動きベクトル算出手段を備え、
    前記探索範囲設定手段は、
    前記動きベクトル算出手段により算出された動きベクトルに基づいて、探索範囲を変えることを特徴とする請求項10記載の画像処理装置。
  12. 前記抽出手段は、
    前記一致画像領域検出手段によりそれぞれ検出された一致画像領域の位置に基づいて、前記一致画像領域毎に、他の一致画像領域に対する所定の一致画像領域の標準偏差を算出し、該算出された標準偏差が一定レベル以上にない一致画像領域を、一致画像領域が密集する一致画像領域群から外れる一致画像領域として除外することを特徴とする請求項1乃至11の何れかに記載の画像処理装置。
  13. 参照フレーム画像内に複数の注目画像領域を設定する注目画像領域設定手段と、
    前記注目画像領域設定手段により設定された注目画像領域毎に、前記注目画像領域と相関度が高くなる一致画像領域を、探索対象フレーム画像からそれぞれ検出する一致画像領域検出手段と、
    前記一致画像領域検出手段により検出された各一致画像領域の前記探索対象フレーム画像上の位置に基づいて、前記一致画像領域毎に、他の一致画像領域に対する所定の一致画像領域の標準偏差を算出し、該算出された標準偏差が一定レベル以上にない一致画像領域を除外するとともに、前記一致画像領域群を構成する各一致画像領域を抽出する抽出手段と、
    前記抽出手段により抽出された一致画像領域の前記探索対象フレーム画像上の位置に基づいて、該抽出された一致画像領域からなる一致画像領域群の重心位置を算出する重心位置算出手段と、
    を備えたことを特徴とする画像処理装置。
  14. 被写体の光を光電変換する撮像素子と、
    前記撮像素子により光電変換されたフレーム画像を順次取得する取得手段と、
    前記取得手段により取得された最新のフレーム画像を探索対象フレーム画像として選択するとともに、該最新のフレーム画像より前に取得されたフレーム画像を参照フレーム画像として選択する選択手段と、
    前記選択手段により選択された参照フレーム画像内の注目画像領域と相関度が高くなる一致画像領域を、前記選択手段により選択された探索対象フレーム画像から前記注目画像領域毎に検出する一致画像領域検出手段と、
    前記一致画像領域検出手段により検出された一致画像領域の前記探索対象フレーム画像上の位置に基づいて、該検出された一致画像領域が密集する一致画像領域群から外れる一致画像領域を除外するとともに、前記一致画像領域群を構成する各一致画像領域を抽出する抽出手段と、
    前記抽出手段により抽出された一致画像領域の前記探索対象フレーム画像上の位置に基づいて、該抽出された一致画像領域からなる一致画像領域群の重心位置を算出する重心位置算出手段と、
    を備えたことを特徴とする撮像装置。
  15. コンピュータに、
    参照フレーム画像内に複数の注目画像領域を設定する注目画像領域設定処理と、
    前記注目画像領域設定処理により設定された各注目画像領域と相関度が高くなる一致画像領域を、探索対象フレーム画像からそれぞれ検出する一致画像領域検出処理と、
    前記一致画像領域検出処理により検出された各一致画像領域の前記探索対象フレーム画像上の位置に基づいて、該検出された一致画像領域が密集する一致画像領域群から外れる一致画像領域を除外するとともに、該一致画像領域が密集する一致画像領域群を構成する各一致画像領域を抽出する抽出処理と、
    前記抽出処理により抽出された一致画像領域の前記探索対象フレーム画像上の位置に基づいて、該抽出された一致画像領域からなる一致画像領域群の重心位置を算出する重心位置算出処理と、
    を実行させることを特徴とするプログラム。
JP2007045971A 2007-02-26 2007-02-26 画像処理装置、撮像装置及びそのプログラム Expired - Fee Related JP4716266B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007045971A JP4716266B2 (ja) 2007-02-26 2007-02-26 画像処理装置、撮像装置及びそのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007045971A JP4716266B2 (ja) 2007-02-26 2007-02-26 画像処理装置、撮像装置及びそのプログラム

Publications (2)

Publication Number Publication Date
JP2008211506A JP2008211506A (ja) 2008-09-11
JP4716266B2 true JP4716266B2 (ja) 2011-07-06

Family

ID=39787439

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007045971A Expired - Fee Related JP4716266B2 (ja) 2007-02-26 2007-02-26 画像処理装置、撮像装置及びそのプログラム

Country Status (1)

Country Link
JP (1) JP4716266B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5253101B2 (ja) * 2008-11-13 2013-07-31 将文 萩原 オブジェクト追尾方法および画像処理装置
JP5458877B2 (ja) * 2009-12-25 2014-04-02 富士通株式会社 撮像装置、及び撮像プログラム
JP5827466B2 (ja) * 2010-11-08 2015-12-02 オリンパス株式会社 撮像装置、撮像方法、およびプログラム
JP5824953B2 (ja) * 2011-08-09 2015-12-02 株式会社ソシオネクスト 画像処理装置、画像処理方法及び撮像装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4398533B2 (ja) * 1999-03-12 2010-01-13 富士通株式会社 画像追跡装置及び記録媒体
JP3929819B2 (ja) * 2002-04-25 2007-06-13 三菱電機株式会社 監視装置及び方法並びにプログラム

Also Published As

Publication number Publication date
JP2008211506A (ja) 2008-09-11

Similar Documents

Publication Publication Date Title
US8831282B2 (en) Imaging device including a face detector
JP5043736B2 (ja) 撮像装置及びその制御方法
JP4286292B2 (ja) 電子カメラ
US20110228044A1 (en) Imaging apparatus, imaging method and recording medium with program recorded therein
JP2007306416A (ja) 顔検出枠の表示方法、文字情報の表示方法及び撮像装置
CN107040713B (zh) 运动矢量检测设备及其控制方法和摄像设备
US8189056B2 (en) Image capturing apparatus, angle-of-view adjusting method and recording medium
JP6011569B2 (ja) 撮像装置、被写体追尾方法及びプログラム
JP2009111716A (ja) 撮像装置、プログラムおよびテンプレート生成方法
JP4894708B2 (ja) 撮像装置
JP2008028747A (ja) 撮像装置及びそのプログラム
JP4716266B2 (ja) 画像処理装置、撮像装置及びそのプログラム
JP4807582B2 (ja) 画像処理装置、撮像装置及びそのプログラム
JP5367129B2 (ja) 撮像装置、制御装置及びそれらの制御方法
JPH06268894A (ja) 自動撮像装置
JP4807623B2 (ja) 撮像装置、撮像方法及び撮像プログラム
JP5278483B2 (ja) 撮像装置、撮像方法及び撮像プログラム
JP5015121B2 (ja) 撮像装置
JP5451364B2 (ja) 被写体追跡装置及びその制御方法
JP5383207B2 (ja) 情報処理装置、制御方法、コンピュータプログラム、および記憶媒体
EP2091233B1 (en) Imaging apparatus
JP2019186831A (ja) 画像処理装置、撮像装置、画像処理方法およびプログラム
JP5965653B2 (ja) 追尾装置及び追尾方法
US20230065506A1 (en) Image processing apparatus, control method thereof, and image capturing apparatus
US20220270264A1 (en) Image processing device, control method thereof, imaging device, and recording medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090917

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110224

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110307

R150 Certificate of patent or registration of utility model

Ref document number: 4716266

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110320

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140408

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees