追尾装置及び追尾方法
【課題】苦手シーンが生じても高い追尾性能の追尾装置及び追尾方法を提供すること。
【解決手段】各フレームの画像データに対して追尾処理を行う。追尾処理によって得られた追尾候補位置が複数の場合、各追尾候補位置におけるコントラスト情報と過去のフレームにおいて決定された追尾位置におけるコントラスト情報との類似度が評価される。そして、過去のフレームにおいて決定された追尾位置におけるコントラスト情報との類似度が最も高い追尾候補位置が、現在のフレームにおける追尾位置に決定される。
【解決手段】各フレームの画像データに対して追尾処理を行う。追尾処理によって得られた追尾候補位置が複数の場合、各追尾候補位置におけるコントラスト情報と過去のフレームにおいて決定された追尾位置におけるコントラスト情報との類似度が評価される。そして、過去のフレームにおいて決定された追尾位置におけるコントラスト情報との類似度が最も高い追尾候補位置が、現在のフレームにおける追尾位置に決定される。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、被写体を追尾する追尾装置及び追尾方法に関する。
【背景技術】
【0002】
従来、動体を撮影する際や動画像を撮影する際に、特定の被写体に追従するように自動合焦制御(AF)や自動露光制御(AE)を行う技術が知られている。このような特定の被写体を追従するために追尾処理が用いられている。追尾処理には、特許文献1において知られているような色情報を利用するものや、輝度情報を利用するもの、顔検出を利用するもの等、種々のものがある。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第2605004号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ここで、特許文献1等の色情報を用いた追尾処理の場合、追尾対象の被写体と類似の色情報を有する被写体が存在すると、追尾対象の被写体の乗り換えが発生してユーザの意図しない対象を追尾してしまう可能性がある。また、輝度情報を用いた場合には、形状変化の大きい(例えば動きの大きい)被写体を追尾対象とすると、追尾対象の被写体をロストしてしまう可能性がある。
【0005】
本発明は、前記の事情に鑑みてなされたもので、苦手シーンが生じても高い追尾性能の追尾装置及び追尾方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
前記の目的を達成するために、本発明の第1の態様の追尾装置は、画像データをフレーム毎に取得する画像データ取得部と、前記フレーム毎に取得された画像データのそれぞれにおける追尾対象の候補位置を検出する追尾処理部と、前記フレーム毎に検出された前記画像データにおける追尾対象の候補位置のコントラスト情報を取得するコントラスト情報取得部と、過去の前記フレームにおいて決定された前記追尾対象の位置のコントラスト情報と現在の前記フレームにおいて取得された前記追尾対象の候補位置のコントラスト情報との類似度を評価するコントラスト情報類似度評価部と、過去の前記フレームにおいて決定された前記追尾対象の位置のコントラスト情報に対する類似度が最も高いコントラスト情報を有する前記追尾対象の候補位置を、現在の前記フレームにおける追尾対象の位置として決定する制御部と、を具備することを特徴とする。
【0007】
また、前記の目的を達成するために、本発明の第2の態様の追尾方法は、画像データ取得部が、画像データをフレーム毎に取得し、追尾処理部が、前記フレーム毎に取得された画像データのそれぞれにおける追尾対象の候補位置を検出し、コントラスト情報取得部が、前記フレーム毎に検出された前記画像データにおける追尾対象の候補位置のコントラスト情報を取得し、コントラスト類似度評価部が、過去の前記フレームにおいて決定された前記追尾対象の位置のコントラスト情報と現在の前記フレームにおいて取得された前記追尾対象の候補位置のコントラスト情報との類似度を評価し、制御部が、過去の前記フレームにおいて決定された前記追尾対象の位置のコントラスト情報に対する類似度が最も高いコントラスト情報を有する前記追尾対象の候補位置を、現在の前記フレームにおける追尾対象の位置として決定する、ことを特徴とする。
【発明の効果】
【0008】
本発明によれば、苦手シーンが生じても高い追尾性能の追尾装置及び追尾方法を提供することができる。
【図面の簡単な説明】
【0009】
【図1】本発明の一実施形態に係る追尾装置を備えた撮像装置の一例としての構成を示す図である。
【図2】輝度情報を用いた追尾処理について説明するための図である。
【図3】色情報を用いた追尾処理について説明するための図である。
【図4】顔検出処理について説明するための図である。
【図5】撮像装置の撮影動作を示すフローチャートである。
【図6】本発明の一実施形態における色情報を用いた追尾処理について示すフローチャートである。
【図7】優先追尾位置判断処理について示すフローチャートである。
【図8】従来の色情報を用いた追尾処理について説明するための図である。
【図9】本発明の一実施形態における色情報を用いた追尾処理の効果について説明するための図である。
【図10】本発明の一実施形態における輝度情報を用いた追尾処理について示すフローチャートである。
【図11】追尾位置補正判断処理について示すフローチャートである。
【図12】従来の輝度情報を用いた追尾処理について説明するための図である。
【図13】本発明の一実施形態における輝度情報を用いた追尾処理の効果について説明するための図である。
【発明を実施するための形態】
【0010】
以下、図面を参照して本発明の実施形態を説明する。
図1は、本発明の一実施形態に係る追尾装置を備えた撮像装置の一例としての構成を示す図である。図1に示す撮像装置100は、撮影光学系102と、焦点調整機構104と、絞り106と、絞り駆動機構108と、シャッタ110と、シャッタ駆動機構112と、撮像素子114と、撮像素子インターフェイス(IF)回路116と、RAM118と、表示素子120と、表示素子駆動回路122と、タッチパネル124と、タッチパネル駆動回路126と、記録メディア128と、システムコントローラ130と、操作部132と、ROM134と、を有している。
【0011】
撮影光学系102は、図示しない被写体からの光束Fを、撮像素子114の受光面上に集光するための光学系である。この撮影光学系102は、フォーカスレンズ等の複数のレンズを有している。焦点調整機構104は、モータ及びその駆動回路等を有している。この焦点調整機構104は、システムコントローラ130内のCPU1301の制御に従って、撮影光学系102内のフォーカスレンズをその光軸方向(図示一点鎖線方向)に駆動させる。
【0012】
絞り106は、開閉自在に構成され、撮影光学系102を介して撮像素子114に入射する光束Fの量を調整する。絞り駆動機構108は、絞り106を駆動するための駆動機構を有している。この絞り駆動機構108は、システムコントローラ130内のCPU1301の制御に従って、絞り106を駆動させる。
【0013】
シャッタ110は、撮像素子114の受光面を遮光状態又は露光状態とするように構成されている。このシャッタ110により、撮像素子114の露光時間が調整される。シャッタ駆動機構112は、シャッタ110を駆動させるための駆動機構を有し、システムコントローラ130内のCPU1301の制御に従って、シャッタ110を駆動させる。
【0014】
撮像素子114は、撮影光学系102を介して集光された被写体からの光束Fが結像される受光面を有している。撮像素子114の受光面は、複数の画素が2次元状に配置されて構成されており、また、受光面の光入射側には、カラーフィルタが設けられている。このような撮像素子114は、受光面に結像された光束Fに対応した像(被写体像)を、その光量に応じた電気信号(以下、画像信号という)に変換する。ここで、撮像素子114は、CCD方式やCMOS方式等の種々の構成の撮像素子が知られている。また、カラーフィルタの色配列もベイヤ配列等の種々の配列が知られている。本実施形態は、撮像素子114の構成が特定の構成に限定されるものではなく、種々の構成の撮像素子を用いることが可能である。
【0015】
撮像素子IF回路116は、システムコントローラ130内のCPU1301の制御に従って、撮像素子114を駆動させる。また、撮像素子IF回路116は、システムコントローラ130内のCPU1301の制御に従って、撮像素子114で得られた画像信号を読み出し、読み出した画像信号に対してCDS(相関二重サンプリング)処理やAGC(自動利得制御)処理等のアナログ処理を施す。さらに、撮像素子IF回路116は、アナログ処理した画像信号をデジタル信号(以下、画像データという)に変換する。
【0016】
RAM118は、例えばSDRAMであり、ワークエリア、評価画像エリア、参照画像エリア、追尾位置ログエリア、コントラスト情報ログエリア、を記憶エリアとして有している。
ワークエリアは、撮像素子IF回路116で得られた画像データ等の、撮像装置100の各部で発生したデータを一時記憶しておくためにRAM118に設けられた記憶エリアである。
評価画像エリアは、評価画像データを一時記憶しておくためにRAM118に設けられた記憶エリアである。評価画像データは、後述する追尾処理における追尾対象の被写体を含むフレームの画像データである。追尾処理においては、この追尾対象を追尾するように処理が行われる。
参照画像エリアは、参照画像データを一時記憶しておくためにRAM118に設けられた記憶エリアである。参照画像データは、後述する追尾処理において、追尾対象の探索の対象となるフレームの画像データである。追尾処理においては、参照画像データ中で探索が行われる。
追尾位置ログエリアは、追尾位置ログを一時記憶しておくためにRAM118に設けられた記憶エリアである。追尾位置ログは、追尾処理の結果として得られた追尾位置を記録したログである。
【0017】
コントラスト情報ログエリアは、コントラスト情報ログを一時記憶しておくためにRAM118に設けられた記憶エリアである。コントラスト情報ログは、追尾処理におけるコントラスト情報の取得処理によって得られたコントラスト情報の変化を記録したログである。本実施形態では、コントラスト情報を例えば過去10フレーム分記録する。
【0018】
表示素子120は、例えば液晶ディスプレイ(LCD)であり、ライブビュー用の画像及び記録メディア128に記録された画像等の各種の画像を表示する。表示素子駆動回路122は、システムコントローラ130のCPU1301から入力された画像データに基づいて表示素子120を駆動させ、表示素子120に画像を表示させる。
【0019】
タッチパネル124は、表示素子120の表示画面上に一体的に形成されており、表示画面上へのユーザの指等の接触位置等を検出する。タッチパネル駆動回路126は、タッチパネル124を駆動するとともに、タッチパネル124からの接触検出信号をシステムコントローラ130のCPU1301に出力する。CPU1301は、接触検出信号から、ユーザの表示画面上への接触操作を検出し、その接触操作に応じた処理を実行する。
【0020】
記録メディア128は、例えばメモリカードであり、撮影動作によって得られた画像ファイルが記録される。画像ファイルは、画像データに所定のヘッダを付与して構成されるファイルである。ヘッダには、撮影条件を示すデータ及び追尾位置を示すデータ等が、タグデータとして記録される。
【0021】
システムコントローラ130は、撮像装置100の動作を制御するための制御回路として、CPU1301と、AF制御回路1302と、AE制御回路1303と、画像処理回路1304と、追尾処理回路1305、1306と、顔検出回路1307と、コントラスト情報取得回路1308と、メモリ制御回路1309と、を有している。
【0022】
CPU1301は、焦点調整機構104、絞り駆動機構108、シャッタ駆動機構112、表示素子駆動回路122、タッチパネル駆動回路126等のシステムコントローラ130の外部の各ブロック、及びシステムコントローラ130の内部の各制御回路の動作を制御する。また、CPU1301は、コントラスト情報類似度評価部及び制御部としての機能も有し、後述の優先追尾判断処理又は追尾位置補正判断処理において最終的な追尾位置を決定することも行う。
【0023】
AF制御回路1302は、コントラストAF処理を制御する。具体的には、AF制御回路1302は、撮像素子IF回路116で得られた画像データの高周波成分を抽出し、この抽出した高周波成分を積算することにより、AF用の合焦評価値を取得する。CPU1301は、この合焦評価値に従って画像データのコントラストを評価しつつ、焦点調整機構104を制御してフォーカスレンズを合焦状態とする。
【0024】
AE制御回路1303は、AE動作を制御する。具体的には、AE制御回路1303は、撮像素子IF回路116で得られた画像データを用いて被写体輝度を算出する。CPU1301は、この被写体輝度に従って、露光時の絞り106の開口量(絞り値)、シャッタ110の開放時間(シャッタ速度値)、撮像素子感度やISO感度等を算出する。
【0025】
画像処理回路1304は、画像データに対する各種の画像処理を行う。この画像処理としては、色補正処理、ガンマ(γ)補正処理、圧縮処理等が含まれる。また、画像処理回路1304は、圧縮されている画像データに対する伸張処理も施す。
【0026】
追尾処理回路1305は、画像データの輝度情報を用いた追尾処理を行う。この輝度情報を用いた追尾処理について簡単に説明する。輝度情報を用いた追尾処理では、例えば、図2(a)に示す(N−1)フレームにおいて追尾対象が設定された場合、この(N−1)フレームの画像データを、評価画像データとしてRAM118の評価画像エリアに記憶する。この評価画像データの追尾対象を含む所定範囲202の画像データを、基準画像データに設定する。この後の追尾処理では、参照画像データの基準画像データ202と対応する部分を探索する。
Nフレームの追尾処理を例に示すと、まず、Nフレームの画像データを、参照画像データとしてRAM118の参照画像エリアに記憶する。この参照画像データのうちの所定の探索範囲204の画像データと基準画像データ202との相関量を求めることにより、参照画像データの基準画像データ202と対応する部分を探索する。相関量は、例えば基準画像データと参照画像データとの差分絶対値和(画素毎に輝度差の絶対値を求めてそれを積算したもの)から判定する。例えば、図2(b)に示す参照画像データの領域206の参照画像データと基準画像データ202との差分絶対値和を求めたとすると、参照画像データの領域206と基準画像データ202とは明らかに異なる画像データであり、差分絶対値和が大きくなる。これに対し、参照画像データの領域208と基準画像データ202との差分絶対値和を求めたとすると、差分絶対値和が小さくなる。このように、基準画像データ202との相関量が大きくなるに従って差分絶対値和が小さくなる。輝度情報を用いた追尾処理では、相関量が最大の、即ち差分絶対値和が最小の領域を参照画像データから探索する。図2(b)の例では、領域208となる。なお、追尾位置ログエリアには、領域208の中で最も一致度の高い位置を追尾位置として記録する。なお、このような位置が複数ある場合には、例えば、領域208の中心に近い位置を追尾位置とする。次回の追尾処理時には、この追尾位置を追尾処理の開始位置とすることが望ましい。これにより、追尾処理にかかる時間を軽減することが可能である。
【0027】
追尾処理回路1306は、画像データの色情報を用いた追尾処理を行う。この色情報を用いた追尾処理について簡単に説明する。色情報を用いた追尾処理では、評価画像データ内で設定された色と同色であると判定できる領域である追尾色領域を探索する。図3(a)に示すように、(N−1)フレームにおいて、被写体のある位置302が指定された場合、評価画像データ中の位置302の色情報を取得する。そして、位置302を追尾処理の開始位置として、位置302と同じ色情報を有する領域を探索する。具体的には、位置302を開始位置から周辺に向かうように順次色情報を取得し、取得した色情報が位置302の色情報と同一であると判定できる場合には領域に含め、取得した色情報が位置302の色情報と同一であると判定できない場合には領域に含めない。このようにして追尾色領域を探索すると、例えば、図3(a)に示すような単色の被写体の場合、被写体に内接する矩形領域304が追尾色領域となる。また、追尾位置ログエリアに記録する追尾位置は、例えば追尾色領域304の重心位置(図3(a)の例では、位置302と同じ)とする。次回の追尾処理においては、この追尾位置を追尾処理の開始位置とする。
【0028】
Nフレームの追尾処理を例に示すと、図3(b)に示す参照画像データとして記憶したNフレームの画像データの所定の探索範囲の中で、(N−1)フレームの追尾位置302を追尾処理の開始位置とし、追尾位置302の周辺から順次、追尾色領域304の色と同色であると判定できる領域を追尾色領域として探索する。図3(b)の例では、領域306が追尾色領域となる。
【0029】
顔検出回路1307は、画像データにおける被写体(人物)の顔を検出する。ここで、顔検出処理について簡単に説明する。顔検出処理においては、各フレームで得られる画像データと、図4(a)に示すような顔パーツ402、404、406との相関量を求める。顔パーツ402は、人物の鼻部周辺の陰影のパターンに対応した画像データであり、顔パーツ404は、人物の目部周辺の陰影のパターンに対応した画像データであり、顔パーツ406は、人物の口部周辺の陰影のパターンに対応した画像データである。画像データと顔パーツ402、404、406との相関量は、図4(b)に示すような、人物の顔を示す所定の配置となったときに最大となる。このとき、顔パーツ402、404、406を含む領域408に顔が存在しているとする。なお、顔パーツ402、404、406は予め設定した検索顔の大きさに応じて、大きさを変えても良い。ここで、図4(b)では、顔領域を矩形領域としているが、円形領域としても良い。
【0030】
コントラスト情報取得回路1308は、画像データにおける所定のエリアをコントラスト取得エリアに設定し、このコントラスト取得エリアにおけるコントラスト情報を取得する。コントラスト情報は、AF制御回路1302で得られるAF用の合焦評価値を利用することが可能である。
【0031】
メモリ制御回路1309は、CPU1301等が、RAM118、記録メディア128、ROM134にアクセスするための制御を行うインターフェイスである。
【0032】
操作部132は、ユーザによって操作される各種の操作部材である。操作部132としては、例えば、レリーズ釦、動画釦、モードダイヤル、選択キー、電源釦等が含まれる。
レリーズボタン釦は、1stレリーズスイッチと、2ndレリーズスイッチと、を有している。1stレリーズスイッチは、ユーザがレリーズ釦を半押しするとオンするスイッチである。1stレリーズスイッチがオンすることにより、AF処理等の撮影準備動作が行われる。また、2ndレリーズスイッチは、ユーザがレリーズ釦を全押しするとオンするスイッチである。2ndレリーズスイッチがオンすることにより、静止画撮影用の露光動作が行われる。
動画釦は、動画撮影の開始又は終了を指示するための操作部材である。ユーザによって動画釦が押されると動画撮影処理が開始される。また、動画撮影処理の実行中に動画釦が押されると、動画撮影処理が終了される。
モードダイヤルは、撮像装置の撮影設定を選択するための操作部材である。本実施形態では、撮像装置の撮影設定として、例えば、静止画撮影モードと動画撮影モードを選択できる。静止画撮影モードは、静止画像を撮影するための撮影設定である。また、動画撮影モードは、動画像を撮影するための撮影設定である。
選択キーは、例えばメニュー画面上での項目の選択や決定をするための操作部材である。ユーザによって選択キーが操作されるとメニュー画面上での項目の選択や決定が行われる。
電源釦は、撮像装置の電源をオン又はオフするための操作部材である。ユーザによって電源釦が操作されると、撮像装置100が起動して動作可能な状態となる。撮像装置が起動している間に電源釦が操作されると、撮像装置100が省電力待機状態となる。
【0033】
ROM134は、CPU1301が種々の処理を実行するためのプログラムコードを記憶している。また、ROM134は、撮影光学系102、絞り106、及び撮像素子114等の動作に必要な制御パラメータ、並びに画像処理回路1304での画像処理に必要な制御パラメータ等の、各種の制御パラメータを記憶している。さらには、ROM134は、顔検出回路1307における顔検出に用いられる顔パーツのデータや追尾枠を表示するためのデータ等も記憶している。
【0034】
次に、本実施形態に係る撮像装置の動作について説明する。図5は、撮像装置100の撮影動作を示すフローチャートである。CPU1301は、ROM134から必要なプログラムコードを読み込んで図5の動作を制御する。
【0035】
S100において、CPU1301は、現在の撮像装置100の撮影設定が静止画撮影モードであるかを判定する。前述したように、撮影設定は、モードダイヤルによって設定される。
【0036】
S100において、撮影設定が静止画撮影モードであると判定した場合に、S102において、CPU1301は、ライブビュー動作を開始させる。ライブビュー動作として、CPU1301は、シャッタ駆動機構112を制御してシャッタ110を開放した後、CPU1301は、撮像素子IF回路116を制御して撮像素子114による撮像を開始させる。その後、CPU1301は、撮像素子114による撮像の結果としてRAM118のワークエリアに記憶された画像データを画像処理回路1304に入力してライブビュー表示用の画像処理を施す。続いて、CPU1301は、ライブビュー表示用の画像処理がされた画像データを表示素子駆動回路122に入力し、表示素子120に画像を表示させる。このような表示動作を繰り返し実行することにより、被写体の画像を動画表示する。この動画表示により、ユーザは、被写体を観察することが可能である。
【0037】
S104において、CPU1301は、1stレリーズスイッチがオンされたかを判定する。S104において、1stレリーズスイッチがオンされたと判定するまでは、CPU1301は、ライブビュー動作を継続する。
【0038】
また、S104において、1stレリーズスイッチがオンされたと判定した場合に、S106において、CPU1301は、レリーズAF処理を行う。レリーズAFにおいては、スキャン駆動によって、フォーカスレンズを合焦位置まで駆動させる。スキャン駆動では、CPU1301は、焦点調整機構104を制御して、フォーカスレンズを所定のスキャン範囲内で一方向に駆動させつつ、AF制御回路1302で順次算出される合焦評価値を評価する。そして、CPU1301は、合焦評価値の評価の結果、コントラストが最大となるレンズ位置において、フォーカスレンズの駆動を停止させる。このようなスキャン駆動は、AF前のフォーカスレンズの位置と合焦位置との差が大きい場合に行われる。
【0039】
S108において、CPU1301は、表示素子駆動回路122を制御して、表示素子120に追尾枠を表示させる。ここで、追尾枠は、表示素子120の画面上の追尾対象の位置に表示させる。例えば、レリーズAFで合焦した被写体を追尾対象とし、その被写体に追尾枠を表示させるようにしても良いし、顔検出回路1307によって顔が検出された場合には、その顔に追尾枠を表示させるようにしても良い。さらに、タッチパネル124により、表示素子120の画面上に表示された被写体が指定された場合には、その被写体上に追尾枠を表示させるようにしても良い。
【0040】
S110において、CPU1301は、追尾処理を行う。この追尾処理の詳細については後述する。
S112において、CPU1301は、追尾位置の被写体に合焦するようにAF処理を行うとともに、追尾位置の被写体の露光が適正となるようにAE処理を行う。
追尾処理後のAF処理においては、スキャン駆動又はウォブリング駆動によって、フォーカスレンズを合焦位置まで駆動させる。ウォブリング駆動では、CPU1301は、フォーカスレンズを駆動したときにAF制御回路1302で算出された合焦評価値が、前回のレンズ位置での合焦評価値に対して増加したかを判定する。そして、CPU1301は、合焦評価値が増加した場合には前回と同方向にフォーカスレンズを微小駆動させ、合焦評価値が減少した場合には前回と逆方向にフォーカスレンズを微小駆動させる。このような動作を高速で繰り返してフォーカスレンズを徐々に合焦位置まで駆動させる。
【0041】
また、AE処理において、CPU1301は、AE制御回路1303で算出された追尾位置の被写体の輝度を予め定められた適正な量(適正露光量)とする、本露光時の絞り106の開口量(絞り値)、シャッタ110の開放時間(シャッタ速度値)を算出する。
【0042】
S114において、CPU1301は、2ndレリーズスイッチがオンされたかを判定する。S114において、2ndレリーズスイッチがオンされていないと判定した場合に、CPU1301は、S110の追尾処理以後の処理を実行する。このように、静止画撮影モード時には、2ndレリーズスイッチがオンされるまでは、追尾処理が継続される。
【0043】
また、S114において、2ndレリーズスイッチがオンされたと判定した場合に、S116において、CPU1301は、表示素子駆動回路122を制御して、追尾枠を非表示とする。
【0044】
S118において、CPU1301は、静止画像データを記録メディア128に記録する処理を行う。この際、CPU1301は、シャッタ駆動機構112を制御して、シャッタ110を閉じる。その後、CPU1301は、絞り駆動機構108を制御して、絞り106を先に算出した絞り値まで絞り込む。続いて、CPU1301は、シャッタ駆動機構112を制御して、シャッタ110を先に算出した開放時間だけ開放しつつ、撮像素子114による撮像(露光)を行う。その後、CPU1301は、撮像素子114を介して得られた静止画像データを画像処理回路1304において処理する。そして、CPU1301は、画像処理回路1304において処理された静止画像データにヘッダを付与して静止画像ファイルを生成し、生成した静止画像ファイルを記録メディア128に記録する。
S120において、CPU1301は、S110の追尾処理の結果として得られた追尾位置を示すデータを、先に記録メディア128に記録した静止画像ファイルに追記する。その後に、CPU1301は、図5に示す動作を終了させる。
【0045】
また、S100において、撮影設定が動画撮影モードであると判定した場合に、S122において、CPU1301は、ライブビュー動作を開始させる。
【0046】
S124において、CPU1301は、動画釦がオンされたかを判定する。S124において、動画釦がオンされたと判定するまでは、CPU1301は、ライブビュー動作を継続する。
【0047】
また、S124において、動画釦がオンされたと判定した場合に、S126において、CPU1301は、表示素子駆動回路122を制御して、表示素子120に追尾枠を表示させる。
【0048】
S128において、CPU1301は、追尾処理を行う。この追尾処理の詳細については、後述する。
【0049】
S130において、CPU1301は、追尾位置の被写体に合焦するようにAF処理を行うともに、追尾位置の被写体の露光が適正となるようにAE処理を行う。S130におけるAF処理おいては、ウォブリング駆動によって、フォーカスレンズを合焦位置まで駆動させる。
【0050】
S132において、CPU1301は、動画像データを記録メディア128に記録する処理を行う。この際、CPU1301は、絞り駆動機構108を制御して、絞り106をAE処理において算出した絞り値まで絞り込む。続いて、CPU1301は、AE処理において算出したシャッタ速度値に対応した時間だけ撮像素子114による撮像(露光)を実行させる。露光の終了後、CPU1301は、動画像ファイルを生成して記録メディア128に記録する。また、CPU1301は、撮像素子114を介して得られた動画像データを画像処理回路1304において処理し、画像処理回路1304において処理された動画像データを動画像ファイルに記録する。
【0051】
S134において、CPU1301は、S128の追尾処理の結果として得られた追尾位置を示すデータを、先に記録メディア128に記録した動画像ファイルと同時記録する。
【0052】
S136において、CPU1301は、動画釦がオフされたかを判定する。S136において、動画釦がオフされていないと判定した場合に、CPU1301は、S128の追尾処理以後の処理を実行する。このように、動画撮影モード時では、動画釦がオフされるまでは、追尾処理と動画像データの記録が継続される。
【0053】
また、S136において、動画釦がオフされたと判定した場合に、S138において、CPU1301は、表示素子駆動回路122を制御して、追尾枠を非表示とする。その後、CPU1301は、図5に示す動作を終了させる。
【0054】
次に、本実施形態に係る追尾方法としての追尾処理について説明する。
まず、色情報を用いた場合の追尾処理について説明する。図6は、色情報を用いた追尾処理について示すフローチャートである。
S200において、CPU1301は、撮像素子IF回路116を制御して撮像素子114による撮像を実行する。S202において、CPU1301は、撮像素子114による撮像により、撮像素子IF回路116において得られた画像データをRAM118に取り込む。ここで、初回の追尾処理で得られた画像データは、評価画像データとする。このため、CPU1301は、初回の追尾処理で得られた画像データをRAM118の評価画像エリアに取り込む。また、2回目以後の追尾処理で得られた画像データは、参照画像データとする。このため、CPU1301は、2回目以後の追尾処理で得られた画像データをRAM118の参照画像エリアに取り込む。
【0055】
S204において、CPU1301は、追尾処理回路1306により、色情報を用いた追尾処理を行う。色情報を用いた追尾処理については、前述したので説明を省略する。なお、初回の追尾処理においては、評価画像データのみが取得された状態であるので、S204以後の処理は省略される。以後の説明においては、評価画像データと参照画像データの両方が取得されているものとして説明を続ける。S206において、CPU1301は、色情報を用いた追尾処理の結果として得られた追尾位置を、追尾候補位置としてRAM118の追尾位置ログエリアに記憶させる。
【0056】
S208において、CPU1301は、コントラスト情報取得回路1308により、S206で記憶された追尾候補位置におけるコントラスト情報を取得する。S210において、CPU1301は、取得したコントラスト情報を、RAM118のコントラスト情報ログエリアに記憶させる。ここで、コントラスト情報を取得するためのコントラスト取得エリアは、追尾候補位置のエリアだけでなく、追尾候補位置を含む所定のサイズのエリアに設定しても良い。なお、コントラスト取得エリアのサイズは、全ての追尾候補位置で同一サイズとすることが好ましい。
【0057】
S212において、CPU1301は、優先追尾位置判断処理を行う。優先追尾位置判断処理は、現在のフレームにおいて複数の追尾候補位置がRAM118に記憶された場合に、その何れを採用するかを判断するための処理である。この優先追尾位置判断処理の詳細については後述する。
【0058】
S214において、CPU1301は、優先追尾位置判断処理の結果として採用された追尾位置の信頼性を判断する。信頼性は、例えば参照画像データの彩度から判断する。具体的には、参照画像データの追尾位置の彩度が所定値以上である場合には、信頼性があると判断する。この信頼性を判定するための閾値は適宜設定可能である。
【0059】
S216において、CPU1301は、最終的な追尾位置を、RAM118の追尾位置ログエリアに記録する。次回(次フレーム)の追尾処理においては、この最終的な追尾位置を追尾処理の開始位置とする。ただし、S214の信頼性判断において、信頼性がないと判断された場合には、追尾位置を記録しないようにしても良い。
【0060】
S218において、CPU1301は、表示素子駆動回路122を制御して、追尾枠の表示位置をS216で記録した追尾位置に対応した位置に更新する。その後、CPU1301は、図6の追尾処理を終了させる。
【0061】
次に、優先追尾位置判断処理について図7を参照して説明する。優先追尾位置判断処理においては、現在のフレームにおける各追尾候補位置のコントラスト情報と過去のフレームにおいて決定された最終的な追尾位置のコントラスト情報との類似度に応じて、現在のフレームにおける最終的な追尾位置を決定する。
【0062】
S300において、CPU1301は、現在のフレームに対応した複数の追尾候補位置が、RAM118の追尾位置ログエリアに記録されたか否かを判定する。
S300において、現在フレームに対応した複数の追尾候補位置がRAM118に記録されていると判定した場合に、S302において、CPU1301は、過去のフレームの追尾位置のコントラスト情報と現在のフレームの各追尾候補位置のコントラスト情報との類似度を算出する。現在のフレームをNフレームとした場合、類似度は、例えば(N−1)フレームにおける追尾位置のコントラスト情報とNフレームの各追尾候補位置のコントラスト情報との差として求めることが可能である。この差が小さいほど類似度が高くなる。
【0063】
S304において、CPU1301は、算出された類似度のうち、類似度が最も高いコントラスト情報を有する追尾候補位置を、最終的な追尾位置に決定する。その後、CPU1301は、図7の優先追尾位置判断処理を終了させる。
【0064】
また、S300において、現在のフレームに対応した追尾候補位置が、1つのみRAM118に記録されていると判定した場合に、S306において、CPU1301は、その1つの追尾候補位置を、最終的な追尾位置に決定する。その後、CPU1301は、図7の追尾処理を終了させる。
【0065】
以下、図6及び図7で示した追尾処理の効果について説明する。
この追尾処理の効果を説明するために、まず、従来の色情報を用いた追尾処理について説明する。追尾処理に先立って、あるフレームにおいて、図8(a)に示す被写体Bの位置A1が追尾対象として指定されたとする。このとき、図8(a)に示す画像データが評価画像データとなる。そして、位置A1に追尾枠が表示される。
【0066】
その後、別のフレームにおいて、図8(b)に示すように、被写体Bに被写体Cが接近したとする。被写体Cは、追尾対象の被写体Bとは同色の被写体である。このような複数の同色被写体を含むフレームの画像データを参照画像データとして、色情報を用いた追尾処理を行ったとする。この場合、図8(a)の位置A1と同じ色情報を有する領域を、参照画像データの中から探索する。この場合、追尾位置は、図8(b)に示す被写体B上の位置A1になる可能性と、図8(c)に示す被写体C上の位置A2になる可能性とが生じる。図8(c)のように、追尾の対象の乗り換わりが発生してしまうと、それ以後のフレームにおいて正しい追尾処理を行うことができなくなる。
【0067】
次に、図6及び図7で示す本実施形態の追尾処理を適用した場合の効果について説明する。ここでは、例として、図9(a)に示す被写体Eを追尾するとし、過去のフレームにおいて得られた最終的な追尾位置が位置Fであるとする。また、過去のフレームにおけるコントラスト情報は、追尾位置Fを含む所定サイズを有するコントラスト取得エリアGのコントラスト情報を取得する。
【0068】
現在のフレームにおいて、図9(b)に示すように、被写体Eと被写体Hとが存在していたとする。被写体Eと被写体Hとは同一色の被写体である。この場合、色情報を用いた追尾処理では、追尾位置Fと同色の領域が探索され、追尾候補位置が算出される。図9(b)の例では、被写体E上の位置I1と被写体H上の位置I2が、追尾候補位置となる。最終的な追尾位置としては、追尾候補位置I1が選択される必要がある。
【0069】
追尾候補位置が複数存在する場合、各追尾候補位置でコントラスト情報が取得される。追尾候補位置I1におけるコントラスト情報は、図9(c)に示すように、追尾候補位置I1を含み、コントラスト取得エリアGと同一サイズのコントラスト取得エリアJ1のコントラスト情報を取得する。また、追尾候補位置I2におけるコントラスト情報は、図9(c)に示すように、追尾候補位置I2を含み、コントラスト取得エリアGと同一サイズのコントラスト取得エリアJ2のコントラスト情報を取得する。
【0070】
続いて、コントラスト情報の類似度が評価される。コントラスト取得エリアGのコントラスト情報とコントラスト取得エリアJ1のコントラスト情報との類似度は、最大(両コントラスト情報の差が0)となる。これは、コントラスト取得エリアGのコントラスト情報とコントラスト取得エリアJ1のコントラスト情報とが同一の部分のコントラスト情報であるためである。一方、コントラスト取得エリアGのコントラスト情報とコントラスト取得エリアJ2のコントラスト情報との類似度は、最大とはならない。これは、コントラスト取得エリアGのコントラスト情報とコントラスト取得エリアJ2のコントラスト情報とが異なる部分のコントラスト情報であるためである。このようにして、最終的な追尾位置としては、追尾候補位置I1が選択される。
【0071】
このように、本実施形態における追尾処理では、色情報を利用して追尾処理を行うだけではなく、色情報を利用して得られたそれぞれの追尾候補位置における被写体が、過去のフレームの追尾位置における被写体と対応しているか否かを、過去のフレームの追尾位置におけるコントラスト情報と現在のフレームの各追尾候補位置におけるコントラスト情報との類似度から判断している。コントラスト情報の類似度が高いということは、対応する追尾候補位置において、過去のフレームと同一の被写体を追尾している可能性が高いと考えられる。このような判断を行うことにより、本実施形態では、複数の同色被写体を含むフレームにおいても、適切な追尾候補位置を最終的な追尾位置として決定することが可能である。
【0072】
また、追尾候補位置毎にコントラスト取得エリアを設定してコントラスト情報を抽出する場合において、コントラスト取得エリアのサイズを同一サイズとすることにより、コントラスト情報の類似度が最大となる追尾候補位置を検出し易くすることが可能である。このため、追尾位置の誤検出の可能性を低減することが可能である。
【0073】
次に、輝度情報を用いた場合の追尾処理について説明する。図10は、輝度情報を用いた追尾処理について示すフローチャートである。
S400において、CPU1301は、撮像素子IF回路116を制御して撮像素子114による撮像を実行する。S402において、CPU1301は、撮像素子114による撮像により、撮像素子IF回路116において得られた画像データをRAM118に取り込む。ここで、初回の追尾処理で得られた画像データは、評価画像データとする。このため、CPU1301は、初回の追尾処理で得られた画像データをRAM118の評価画像エリアに取り込む。また、2回目以後の追尾処理で得られた画像データは、参照画像データとする。このため、CPU1301は、2回目以後の追尾処理で得られた画像データをRAM118の参照画像エリアに取り込む。
【0074】
S404において、CPU1301は、追尾処理回路1306により、輝度情報を用いた追尾処理を行う。輝度情報を用いた追尾処理については、前述したので説明を省略する。なお、初回の追尾処理においては、評価画像データのみが取得された状態であるので、S404以後の処理は省略される。以後の説明においては、評価画像データと参照画像データの両方が取得されているものとして説明を続ける。S406において、CPU1301は、輝度情報を用いた追尾処理の結果として得られた追尾位置を、追尾候補位置としてRAM118の追尾位置ログエリアに記憶させる。
【0075】
S408において、CPU1301は、コントラスト情報取得回路1308により、S406で記憶された追尾候補位置におけるコントラスト情報を取得する。S410において、CPU1301は、コントラスト情報取得回路1308により、S406で記憶された追尾候補位置の周辺位置の複数のコントラスト取得エリアにおいてコントラスト情報を取得する。コントラスト取得エリアは、追尾候補位置におけるコントラスト取得エリアを囲むように複数設定する。また、それぞれのコントラスト取得エリアは、追尾候補位置におけるコントラスト取得エリアと同一のサイズのエリアとするように設定することが好ましい。S412において、CPU1301は、S408及びS410において取得したコントラスト情報を、RAM118のコントラスト情報ログエリアに記憶させる。
【0076】
S414において、CPU1301は、追尾位置補正判断処理を行う。追尾位置補正判断処理は、現在のフレームにおいて算出された追尾位置を補正するか否かを判断するための処理である。この追尾位置補正判断処理の詳細については後述する。
【0077】
S416において、CPU1301は、追尾位置補正判断処理の結果として採用された追尾位置の信頼性を判断する。信頼性は、例えば参照画像データの各画素のデータから判断する。具体的には、参照画像データにおける追尾対象の領域の隣接画素間の差分和が所定値以下である場合には、信頼性があると判断する。
S418において、CPU1301は、最終的な追尾位置を、RAM118の追尾位置ログエリアに記録する。次回(次フレーム)の追尾処理においては、この最終的な追尾位置を追尾処理の開始位置とする。ただし、S416の信頼性判断において、信頼性がないと判断された場合には、追尾位置を記録しないようにしても良い。
【0078】
S420において、CPU1301は、表示素子駆動回路122を制御して、追尾枠の表示位置をS418で記録した追尾位置に対応した位置に更新する。その後、CPU1301は、図10の追尾処理を終了させる。
【0079】
次に、追尾位置補正判断処理について図11を参照して説明する。追尾位置補正判断処理においては、現在のフレームにおける各コントラスト取得エリアのコントラスト情報と過去のフレームにおいて決定された最終的な追尾位置のコントラスト情報との類似度に応じて、現在のフレームにおける最終的な追尾位置を決定する。
【0080】
S500において、CPU1301は、現在のフレーム(Nフレーム)における追尾候補位置のコントラスト取得エリアで取得されたコントラスト情報と過去のフレーム(N−1フレーム)において最終的に決定された追尾位置のコントラスト取得エリアで取得されたコントラスト情報との差が閾値を超えているか否かを判定する。
S500において、現在のフレームにおける追尾候補位置のコントラスト取得エリアで取得されたコントラスト情報と過去のフレームおける追尾位置のコントラスト取得エリアで取得されたコントラスト情報との差が閾値を超えていると判定した場合、即ち現在のフレームにおける追尾候補位置のコントラスト情報と過去のフレームおける追尾位置のコントラスト情報との類似度が低いと判定した場合に、S302において、CPU1301は、過去のフレームの追尾位置のコントラスト情報と現在のフレームの追尾候補位置の周辺位置の各コントラスト取得エリアにおけるコントラスト情報との類似度を算出する。
【0081】
S504において、CPU1301は、算出された類似度のうち、最も高い類似度が閾値を超えているか否か、即ちコントラスト情報の差の最小値が閾値よりも小さいか否かを判定する。S504において、最も高い類似度が閾値を超えていると判定した場合に、S506において、CPU1301は、最も高い類似度のコントラスト情報を有する位置を、最終的な追尾位置に決定する。ここで、追尾候補位置におけるコントラスト情報が最も高い類似度を有している場合には、追尾候補位置を最終的な追尾位置に決定する。その後、CPU1301は、図11の追尾位置補正判断処理を終了させる。
【0082】
また、S500において、現在のフレームにおける追尾候補位置のコントラスト取得エリアで取得されたコントラスト情報と過去のフレームおける追尾位置のコントラスト取得エリアで取得されたコントラスト情報との差が閾値を超えていないと判定した場合、又はS504において、最も高い類似度が閾値を超えていないと判定した場合に、CPU1301は、図11の追尾位置補正判断処理を終了させる。この場合には、追尾位置の補正は行われず、追尾候補位置が最終的な追尾位置となる。
【0083】
以下、図10及び図11で示した追尾処理の効果について説明する。
この追尾処理の効果を説明するために、まず、従来の輝度情報を用いた追尾処理について説明する。追尾処理に先立って、あるフレームにおいて、図12(a)に示す被写体Dの位置C1(被写体の胸部)が追尾対象として指定されたとする。このとき、図12(a)に示す画像データが評価画像データとなり、この中の位置C1の画像データが基準画像データとなる。そして、位置C1に追尾枠が表示される。
【0084】
その後、別のフレームにおいて、図12(b)に示すようにして被写体Dに動きが生じたとする。図12(b)の例は、被写体Dが、正面向きから横向きに変化する動きをした場合を示している。このような被写体Dに動きが生じた状態で輝度情報を用いた追尾処理を行ったとする。前述したように、輝度情報を用いた追尾処理では、基準画像データと類似の画像データを参照画像データから探索する。横向きの場合には、正面向きの場合の胸部(基準画像データ)と類似する画像データを多く含んでいるので、被写体Dの胸部を正しく追尾することが可能である。
【0085】
さらに、別のフレームにおいて、図12(c)に示すようにして被写体Dに動きが生じたとする。図12(c)の例は、被写体Dが、横向きから後ろ向きに変化する動きをした場合を示している。このような被写体Dに動きが生じた状態で輝度情報を用いた追尾処理を行ったとする。ここで、後ろ向きの場合には、正面向きの場合の胸部(基準画像データ)と類似する画像データを殆ど含んでいないので、被写体Dの胸部を追尾することができなくなる可能性が生じる。特に、被写体Dが、胸と背中とで模様が異なる服を着ている場合等では、追尾対象をロストして追尾処理が不能となる可能性が高い。
【0086】
次に、図10及び図12で示す本実施形態の追尾処理を適用した場合の効果について説明する。ここでは、例として、図13(a)に示す被写体Kの位置L1を追尾するものとする。
【0087】
あるフレームにおいて、図13(b)に示すようにして、被写体Kの向きが横向きから後ろ向きに変化し、これによって追尾対象をロストして、追尾候補位置がL2となったとする。このような場合、追尾位置L1のコントラスト情報と追尾候補位置L2のコントラスト情報との差が大きく(類似度が低く)なる。
【0088】
図13(b)の例では、追尾位置L1のコントラスト情報と追尾候補位置L2のコントラスト情報との差が大きいので、追尾位置L1のコントラスト情報と、図13(c)に示す追尾候補位置L2の周辺位置Mのコントラスト情報との類似度が評価される。ここで、図13(c)の例では、周辺位置Mを、追尾候補位置L2を囲むようにして配置された8つのコントラスト取得エリアで構成している。各コントラスト取得エリアは、追尾位置L1と同サイズとしておくことが好ましい。周辺位置Mのコントラスト取得エリアを8つ以上としても良い。例えば、追尾候補位置L2を含めて5×5のコントラスト取得エリアとしても良い。この場合、周辺位置Mのコントラスト取得エリアは、24個のコントラスト取得エリアによって構成される。また、周辺位置Mに含まれるコントラスト取得エリアを8つよりも少なくしても良い。例えば、追尾候補位置L2の上下左右位置にのみ、コントラスト取得エリアを配置しても良い。この場合、周辺位置Mのコントラスト取得エリアは、4個のコントラスト取得エリアによって構成される。
【0089】
周辺位置Mも含めてコントラスト情報の類似度が評価される。図13(c)の例では、コントラスト取得エリアNのコントラスト情報が、追尾位置L1のコントラスト情報との類似度が最も高いと評価される。これは、コントラスト取得エリアNが被写体K上のエリアであるためである。コントラスト取得エリアNにおける類似度が、閾値を超えていると判定された場合に、図13(d)に示すようにして、現フレームの追尾位置が、追尾候補位置L2から、コントラスト取得エリアNに対応した位置L3に補正される。
【0090】
このように、本実施形態における追尾処理では、輝度情報を利用した追尾処理によって得られた追尾候補位置における被写体が、本来の追尾対象の被写体でない場合に、その追尾候補位置の周辺位置のコントラスト情報を用いて追尾対象の被写体を探索するようにしている。被写体が大きく移動していなければ、追尾候補位置の周辺に本来の追尾対象の被写体が存在していると考えられる。このようにして追尾位置を探索することにより、本実施形態では、追尾対象の被写体をロストしてしまっても、最終的には追尾位置を正しい追尾位置に補正することが可能である。
【0091】
また、追尾候補位置のコントラスト取得エリアと周辺位置の各コントラスト取得エリアのサイズとを同一サイズとすることにより、コントラスト情報の類似度を比較し易い。このため、追尾位置の誤検出の可能性を低減することが可能である。
【0092】
以上実施形態に基づいて本発明を説明したが、本発明は上述した実施形態に限定されるものではなく、本発明の要旨の範囲内で種々の変形や応用が可能なことは勿論である。例えば、上述した実施形態では、色情報を用いた追尾処理の例と輝度情報を用いた追尾処理の例とについて説明している。これらの追尾処理は、何れも、顏検出を用いた追尾処理に対しても適用可能である。
また、前述の動作の説明において、便宜上「まず」、「次に」等を用いて動作を説明しているが、この順で動作を実施することが必須であることを意味するものではない。
さらに、上記した実施形態には種々の段階の発明が含まれており、開示される複数の構成要件の適当な組合せにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、上述したような課題を解決でき、上述したような効果が得られる場合には、この構成要件が削除された構成も発明として抽出され得る。
【符号の説明】
【0093】
100…撮像装置、102…撮影光学系、104…焦点調整機構、106…絞り、108…絞り駆動機構、110…シャッタ、112…シャッタ駆動機構、114…撮像素子、116…撮像素子インターフェイス(IF)回路、118…RAM、120…表示素子、122…表示素子駆動回路、124…タッチパネル、126…タッチパネル駆動回路、128…記録メディア、130…システムコントローラ、132…操作部、134…ROM、1301…CPU、1302…AF制御回路、1303…AE制御回路、1304…画像処理回路、1305,1306…追尾処理回路、1307…顔検出回路、1308…コントラスト情報取得回路、1309…メモリ制御回路
【技術分野】
【0001】
本発明は、被写体を追尾する追尾装置及び追尾方法に関する。
【背景技術】
【0002】
従来、動体を撮影する際や動画像を撮影する際に、特定の被写体に追従するように自動合焦制御(AF)や自動露光制御(AE)を行う技術が知られている。このような特定の被写体を追従するために追尾処理が用いられている。追尾処理には、特許文献1において知られているような色情報を利用するものや、輝度情報を利用するもの、顔検出を利用するもの等、種々のものがある。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第2605004号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ここで、特許文献1等の色情報を用いた追尾処理の場合、追尾対象の被写体と類似の色情報を有する被写体が存在すると、追尾対象の被写体の乗り換えが発生してユーザの意図しない対象を追尾してしまう可能性がある。また、輝度情報を用いた場合には、形状変化の大きい(例えば動きの大きい)被写体を追尾対象とすると、追尾対象の被写体をロストしてしまう可能性がある。
【0005】
本発明は、前記の事情に鑑みてなされたもので、苦手シーンが生じても高い追尾性能の追尾装置及び追尾方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
前記の目的を達成するために、本発明の第1の態様の追尾装置は、画像データをフレーム毎に取得する画像データ取得部と、前記フレーム毎に取得された画像データのそれぞれにおける追尾対象の候補位置を検出する追尾処理部と、前記フレーム毎に検出された前記画像データにおける追尾対象の候補位置のコントラスト情報を取得するコントラスト情報取得部と、過去の前記フレームにおいて決定された前記追尾対象の位置のコントラスト情報と現在の前記フレームにおいて取得された前記追尾対象の候補位置のコントラスト情報との類似度を評価するコントラスト情報類似度評価部と、過去の前記フレームにおいて決定された前記追尾対象の位置のコントラスト情報に対する類似度が最も高いコントラスト情報を有する前記追尾対象の候補位置を、現在の前記フレームにおける追尾対象の位置として決定する制御部と、を具備することを特徴とする。
【0007】
また、前記の目的を達成するために、本発明の第2の態様の追尾方法は、画像データ取得部が、画像データをフレーム毎に取得し、追尾処理部が、前記フレーム毎に取得された画像データのそれぞれにおける追尾対象の候補位置を検出し、コントラスト情報取得部が、前記フレーム毎に検出された前記画像データにおける追尾対象の候補位置のコントラスト情報を取得し、コントラスト類似度評価部が、過去の前記フレームにおいて決定された前記追尾対象の位置のコントラスト情報と現在の前記フレームにおいて取得された前記追尾対象の候補位置のコントラスト情報との類似度を評価し、制御部が、過去の前記フレームにおいて決定された前記追尾対象の位置のコントラスト情報に対する類似度が最も高いコントラスト情報を有する前記追尾対象の候補位置を、現在の前記フレームにおける追尾対象の位置として決定する、ことを特徴とする。
【発明の効果】
【0008】
本発明によれば、苦手シーンが生じても高い追尾性能の追尾装置及び追尾方法を提供することができる。
【図面の簡単な説明】
【0009】
【図1】本発明の一実施形態に係る追尾装置を備えた撮像装置の一例としての構成を示す図である。
【図2】輝度情報を用いた追尾処理について説明するための図である。
【図3】色情報を用いた追尾処理について説明するための図である。
【図4】顔検出処理について説明するための図である。
【図5】撮像装置の撮影動作を示すフローチャートである。
【図6】本発明の一実施形態における色情報を用いた追尾処理について示すフローチャートである。
【図7】優先追尾位置判断処理について示すフローチャートである。
【図8】従来の色情報を用いた追尾処理について説明するための図である。
【図9】本発明の一実施形態における色情報を用いた追尾処理の効果について説明するための図である。
【図10】本発明の一実施形態における輝度情報を用いた追尾処理について示すフローチャートである。
【図11】追尾位置補正判断処理について示すフローチャートである。
【図12】従来の輝度情報を用いた追尾処理について説明するための図である。
【図13】本発明の一実施形態における輝度情報を用いた追尾処理の効果について説明するための図である。
【発明を実施するための形態】
【0010】
以下、図面を参照して本発明の実施形態を説明する。
図1は、本発明の一実施形態に係る追尾装置を備えた撮像装置の一例としての構成を示す図である。図1に示す撮像装置100は、撮影光学系102と、焦点調整機構104と、絞り106と、絞り駆動機構108と、シャッタ110と、シャッタ駆動機構112と、撮像素子114と、撮像素子インターフェイス(IF)回路116と、RAM118と、表示素子120と、表示素子駆動回路122と、タッチパネル124と、タッチパネル駆動回路126と、記録メディア128と、システムコントローラ130と、操作部132と、ROM134と、を有している。
【0011】
撮影光学系102は、図示しない被写体からの光束Fを、撮像素子114の受光面上に集光するための光学系である。この撮影光学系102は、フォーカスレンズ等の複数のレンズを有している。焦点調整機構104は、モータ及びその駆動回路等を有している。この焦点調整機構104は、システムコントローラ130内のCPU1301の制御に従って、撮影光学系102内のフォーカスレンズをその光軸方向(図示一点鎖線方向)に駆動させる。
【0012】
絞り106は、開閉自在に構成され、撮影光学系102を介して撮像素子114に入射する光束Fの量を調整する。絞り駆動機構108は、絞り106を駆動するための駆動機構を有している。この絞り駆動機構108は、システムコントローラ130内のCPU1301の制御に従って、絞り106を駆動させる。
【0013】
シャッタ110は、撮像素子114の受光面を遮光状態又は露光状態とするように構成されている。このシャッタ110により、撮像素子114の露光時間が調整される。シャッタ駆動機構112は、シャッタ110を駆動させるための駆動機構を有し、システムコントローラ130内のCPU1301の制御に従って、シャッタ110を駆動させる。
【0014】
撮像素子114は、撮影光学系102を介して集光された被写体からの光束Fが結像される受光面を有している。撮像素子114の受光面は、複数の画素が2次元状に配置されて構成されており、また、受光面の光入射側には、カラーフィルタが設けられている。このような撮像素子114は、受光面に結像された光束Fに対応した像(被写体像)を、その光量に応じた電気信号(以下、画像信号という)に変換する。ここで、撮像素子114は、CCD方式やCMOS方式等の種々の構成の撮像素子が知られている。また、カラーフィルタの色配列もベイヤ配列等の種々の配列が知られている。本実施形態は、撮像素子114の構成が特定の構成に限定されるものではなく、種々の構成の撮像素子を用いることが可能である。
【0015】
撮像素子IF回路116は、システムコントローラ130内のCPU1301の制御に従って、撮像素子114を駆動させる。また、撮像素子IF回路116は、システムコントローラ130内のCPU1301の制御に従って、撮像素子114で得られた画像信号を読み出し、読み出した画像信号に対してCDS(相関二重サンプリング)処理やAGC(自動利得制御)処理等のアナログ処理を施す。さらに、撮像素子IF回路116は、アナログ処理した画像信号をデジタル信号(以下、画像データという)に変換する。
【0016】
RAM118は、例えばSDRAMであり、ワークエリア、評価画像エリア、参照画像エリア、追尾位置ログエリア、コントラスト情報ログエリア、を記憶エリアとして有している。
ワークエリアは、撮像素子IF回路116で得られた画像データ等の、撮像装置100の各部で発生したデータを一時記憶しておくためにRAM118に設けられた記憶エリアである。
評価画像エリアは、評価画像データを一時記憶しておくためにRAM118に設けられた記憶エリアである。評価画像データは、後述する追尾処理における追尾対象の被写体を含むフレームの画像データである。追尾処理においては、この追尾対象を追尾するように処理が行われる。
参照画像エリアは、参照画像データを一時記憶しておくためにRAM118に設けられた記憶エリアである。参照画像データは、後述する追尾処理において、追尾対象の探索の対象となるフレームの画像データである。追尾処理においては、参照画像データ中で探索が行われる。
追尾位置ログエリアは、追尾位置ログを一時記憶しておくためにRAM118に設けられた記憶エリアである。追尾位置ログは、追尾処理の結果として得られた追尾位置を記録したログである。
【0017】
コントラスト情報ログエリアは、コントラスト情報ログを一時記憶しておくためにRAM118に設けられた記憶エリアである。コントラスト情報ログは、追尾処理におけるコントラスト情報の取得処理によって得られたコントラスト情報の変化を記録したログである。本実施形態では、コントラスト情報を例えば過去10フレーム分記録する。
【0018】
表示素子120は、例えば液晶ディスプレイ(LCD)であり、ライブビュー用の画像及び記録メディア128に記録された画像等の各種の画像を表示する。表示素子駆動回路122は、システムコントローラ130のCPU1301から入力された画像データに基づいて表示素子120を駆動させ、表示素子120に画像を表示させる。
【0019】
タッチパネル124は、表示素子120の表示画面上に一体的に形成されており、表示画面上へのユーザの指等の接触位置等を検出する。タッチパネル駆動回路126は、タッチパネル124を駆動するとともに、タッチパネル124からの接触検出信号をシステムコントローラ130のCPU1301に出力する。CPU1301は、接触検出信号から、ユーザの表示画面上への接触操作を検出し、その接触操作に応じた処理を実行する。
【0020】
記録メディア128は、例えばメモリカードであり、撮影動作によって得られた画像ファイルが記録される。画像ファイルは、画像データに所定のヘッダを付与して構成されるファイルである。ヘッダには、撮影条件を示すデータ及び追尾位置を示すデータ等が、タグデータとして記録される。
【0021】
システムコントローラ130は、撮像装置100の動作を制御するための制御回路として、CPU1301と、AF制御回路1302と、AE制御回路1303と、画像処理回路1304と、追尾処理回路1305、1306と、顔検出回路1307と、コントラスト情報取得回路1308と、メモリ制御回路1309と、を有している。
【0022】
CPU1301は、焦点調整機構104、絞り駆動機構108、シャッタ駆動機構112、表示素子駆動回路122、タッチパネル駆動回路126等のシステムコントローラ130の外部の各ブロック、及びシステムコントローラ130の内部の各制御回路の動作を制御する。また、CPU1301は、コントラスト情報類似度評価部及び制御部としての機能も有し、後述の優先追尾判断処理又は追尾位置補正判断処理において最終的な追尾位置を決定することも行う。
【0023】
AF制御回路1302は、コントラストAF処理を制御する。具体的には、AF制御回路1302は、撮像素子IF回路116で得られた画像データの高周波成分を抽出し、この抽出した高周波成分を積算することにより、AF用の合焦評価値を取得する。CPU1301は、この合焦評価値に従って画像データのコントラストを評価しつつ、焦点調整機構104を制御してフォーカスレンズを合焦状態とする。
【0024】
AE制御回路1303は、AE動作を制御する。具体的には、AE制御回路1303は、撮像素子IF回路116で得られた画像データを用いて被写体輝度を算出する。CPU1301は、この被写体輝度に従って、露光時の絞り106の開口量(絞り値)、シャッタ110の開放時間(シャッタ速度値)、撮像素子感度やISO感度等を算出する。
【0025】
画像処理回路1304は、画像データに対する各種の画像処理を行う。この画像処理としては、色補正処理、ガンマ(γ)補正処理、圧縮処理等が含まれる。また、画像処理回路1304は、圧縮されている画像データに対する伸張処理も施す。
【0026】
追尾処理回路1305は、画像データの輝度情報を用いた追尾処理を行う。この輝度情報を用いた追尾処理について簡単に説明する。輝度情報を用いた追尾処理では、例えば、図2(a)に示す(N−1)フレームにおいて追尾対象が設定された場合、この(N−1)フレームの画像データを、評価画像データとしてRAM118の評価画像エリアに記憶する。この評価画像データの追尾対象を含む所定範囲202の画像データを、基準画像データに設定する。この後の追尾処理では、参照画像データの基準画像データ202と対応する部分を探索する。
Nフレームの追尾処理を例に示すと、まず、Nフレームの画像データを、参照画像データとしてRAM118の参照画像エリアに記憶する。この参照画像データのうちの所定の探索範囲204の画像データと基準画像データ202との相関量を求めることにより、参照画像データの基準画像データ202と対応する部分を探索する。相関量は、例えば基準画像データと参照画像データとの差分絶対値和(画素毎に輝度差の絶対値を求めてそれを積算したもの)から判定する。例えば、図2(b)に示す参照画像データの領域206の参照画像データと基準画像データ202との差分絶対値和を求めたとすると、参照画像データの領域206と基準画像データ202とは明らかに異なる画像データであり、差分絶対値和が大きくなる。これに対し、参照画像データの領域208と基準画像データ202との差分絶対値和を求めたとすると、差分絶対値和が小さくなる。このように、基準画像データ202との相関量が大きくなるに従って差分絶対値和が小さくなる。輝度情報を用いた追尾処理では、相関量が最大の、即ち差分絶対値和が最小の領域を参照画像データから探索する。図2(b)の例では、領域208となる。なお、追尾位置ログエリアには、領域208の中で最も一致度の高い位置を追尾位置として記録する。なお、このような位置が複数ある場合には、例えば、領域208の中心に近い位置を追尾位置とする。次回の追尾処理時には、この追尾位置を追尾処理の開始位置とすることが望ましい。これにより、追尾処理にかかる時間を軽減することが可能である。
【0027】
追尾処理回路1306は、画像データの色情報を用いた追尾処理を行う。この色情報を用いた追尾処理について簡単に説明する。色情報を用いた追尾処理では、評価画像データ内で設定された色と同色であると判定できる領域である追尾色領域を探索する。図3(a)に示すように、(N−1)フレームにおいて、被写体のある位置302が指定された場合、評価画像データ中の位置302の色情報を取得する。そして、位置302を追尾処理の開始位置として、位置302と同じ色情報を有する領域を探索する。具体的には、位置302を開始位置から周辺に向かうように順次色情報を取得し、取得した色情報が位置302の色情報と同一であると判定できる場合には領域に含め、取得した色情報が位置302の色情報と同一であると判定できない場合には領域に含めない。このようにして追尾色領域を探索すると、例えば、図3(a)に示すような単色の被写体の場合、被写体に内接する矩形領域304が追尾色領域となる。また、追尾位置ログエリアに記録する追尾位置は、例えば追尾色領域304の重心位置(図3(a)の例では、位置302と同じ)とする。次回の追尾処理においては、この追尾位置を追尾処理の開始位置とする。
【0028】
Nフレームの追尾処理を例に示すと、図3(b)に示す参照画像データとして記憶したNフレームの画像データの所定の探索範囲の中で、(N−1)フレームの追尾位置302を追尾処理の開始位置とし、追尾位置302の周辺から順次、追尾色領域304の色と同色であると判定できる領域を追尾色領域として探索する。図3(b)の例では、領域306が追尾色領域となる。
【0029】
顔検出回路1307は、画像データにおける被写体(人物)の顔を検出する。ここで、顔検出処理について簡単に説明する。顔検出処理においては、各フレームで得られる画像データと、図4(a)に示すような顔パーツ402、404、406との相関量を求める。顔パーツ402は、人物の鼻部周辺の陰影のパターンに対応した画像データであり、顔パーツ404は、人物の目部周辺の陰影のパターンに対応した画像データであり、顔パーツ406は、人物の口部周辺の陰影のパターンに対応した画像データである。画像データと顔パーツ402、404、406との相関量は、図4(b)に示すような、人物の顔を示す所定の配置となったときに最大となる。このとき、顔パーツ402、404、406を含む領域408に顔が存在しているとする。なお、顔パーツ402、404、406は予め設定した検索顔の大きさに応じて、大きさを変えても良い。ここで、図4(b)では、顔領域を矩形領域としているが、円形領域としても良い。
【0030】
コントラスト情報取得回路1308は、画像データにおける所定のエリアをコントラスト取得エリアに設定し、このコントラスト取得エリアにおけるコントラスト情報を取得する。コントラスト情報は、AF制御回路1302で得られるAF用の合焦評価値を利用することが可能である。
【0031】
メモリ制御回路1309は、CPU1301等が、RAM118、記録メディア128、ROM134にアクセスするための制御を行うインターフェイスである。
【0032】
操作部132は、ユーザによって操作される各種の操作部材である。操作部132としては、例えば、レリーズ釦、動画釦、モードダイヤル、選択キー、電源釦等が含まれる。
レリーズボタン釦は、1stレリーズスイッチと、2ndレリーズスイッチと、を有している。1stレリーズスイッチは、ユーザがレリーズ釦を半押しするとオンするスイッチである。1stレリーズスイッチがオンすることにより、AF処理等の撮影準備動作が行われる。また、2ndレリーズスイッチは、ユーザがレリーズ釦を全押しするとオンするスイッチである。2ndレリーズスイッチがオンすることにより、静止画撮影用の露光動作が行われる。
動画釦は、動画撮影の開始又は終了を指示するための操作部材である。ユーザによって動画釦が押されると動画撮影処理が開始される。また、動画撮影処理の実行中に動画釦が押されると、動画撮影処理が終了される。
モードダイヤルは、撮像装置の撮影設定を選択するための操作部材である。本実施形態では、撮像装置の撮影設定として、例えば、静止画撮影モードと動画撮影モードを選択できる。静止画撮影モードは、静止画像を撮影するための撮影設定である。また、動画撮影モードは、動画像を撮影するための撮影設定である。
選択キーは、例えばメニュー画面上での項目の選択や決定をするための操作部材である。ユーザによって選択キーが操作されるとメニュー画面上での項目の選択や決定が行われる。
電源釦は、撮像装置の電源をオン又はオフするための操作部材である。ユーザによって電源釦が操作されると、撮像装置100が起動して動作可能な状態となる。撮像装置が起動している間に電源釦が操作されると、撮像装置100が省電力待機状態となる。
【0033】
ROM134は、CPU1301が種々の処理を実行するためのプログラムコードを記憶している。また、ROM134は、撮影光学系102、絞り106、及び撮像素子114等の動作に必要な制御パラメータ、並びに画像処理回路1304での画像処理に必要な制御パラメータ等の、各種の制御パラメータを記憶している。さらには、ROM134は、顔検出回路1307における顔検出に用いられる顔パーツのデータや追尾枠を表示するためのデータ等も記憶している。
【0034】
次に、本実施形態に係る撮像装置の動作について説明する。図5は、撮像装置100の撮影動作を示すフローチャートである。CPU1301は、ROM134から必要なプログラムコードを読み込んで図5の動作を制御する。
【0035】
S100において、CPU1301は、現在の撮像装置100の撮影設定が静止画撮影モードであるかを判定する。前述したように、撮影設定は、モードダイヤルによって設定される。
【0036】
S100において、撮影設定が静止画撮影モードであると判定した場合に、S102において、CPU1301は、ライブビュー動作を開始させる。ライブビュー動作として、CPU1301は、シャッタ駆動機構112を制御してシャッタ110を開放した後、CPU1301は、撮像素子IF回路116を制御して撮像素子114による撮像を開始させる。その後、CPU1301は、撮像素子114による撮像の結果としてRAM118のワークエリアに記憶された画像データを画像処理回路1304に入力してライブビュー表示用の画像処理を施す。続いて、CPU1301は、ライブビュー表示用の画像処理がされた画像データを表示素子駆動回路122に入力し、表示素子120に画像を表示させる。このような表示動作を繰り返し実行することにより、被写体の画像を動画表示する。この動画表示により、ユーザは、被写体を観察することが可能である。
【0037】
S104において、CPU1301は、1stレリーズスイッチがオンされたかを判定する。S104において、1stレリーズスイッチがオンされたと判定するまでは、CPU1301は、ライブビュー動作を継続する。
【0038】
また、S104において、1stレリーズスイッチがオンされたと判定した場合に、S106において、CPU1301は、レリーズAF処理を行う。レリーズAFにおいては、スキャン駆動によって、フォーカスレンズを合焦位置まで駆動させる。スキャン駆動では、CPU1301は、焦点調整機構104を制御して、フォーカスレンズを所定のスキャン範囲内で一方向に駆動させつつ、AF制御回路1302で順次算出される合焦評価値を評価する。そして、CPU1301は、合焦評価値の評価の結果、コントラストが最大となるレンズ位置において、フォーカスレンズの駆動を停止させる。このようなスキャン駆動は、AF前のフォーカスレンズの位置と合焦位置との差が大きい場合に行われる。
【0039】
S108において、CPU1301は、表示素子駆動回路122を制御して、表示素子120に追尾枠を表示させる。ここで、追尾枠は、表示素子120の画面上の追尾対象の位置に表示させる。例えば、レリーズAFで合焦した被写体を追尾対象とし、その被写体に追尾枠を表示させるようにしても良いし、顔検出回路1307によって顔が検出された場合には、その顔に追尾枠を表示させるようにしても良い。さらに、タッチパネル124により、表示素子120の画面上に表示された被写体が指定された場合には、その被写体上に追尾枠を表示させるようにしても良い。
【0040】
S110において、CPU1301は、追尾処理を行う。この追尾処理の詳細については後述する。
S112において、CPU1301は、追尾位置の被写体に合焦するようにAF処理を行うとともに、追尾位置の被写体の露光が適正となるようにAE処理を行う。
追尾処理後のAF処理においては、スキャン駆動又はウォブリング駆動によって、フォーカスレンズを合焦位置まで駆動させる。ウォブリング駆動では、CPU1301は、フォーカスレンズを駆動したときにAF制御回路1302で算出された合焦評価値が、前回のレンズ位置での合焦評価値に対して増加したかを判定する。そして、CPU1301は、合焦評価値が増加した場合には前回と同方向にフォーカスレンズを微小駆動させ、合焦評価値が減少した場合には前回と逆方向にフォーカスレンズを微小駆動させる。このような動作を高速で繰り返してフォーカスレンズを徐々に合焦位置まで駆動させる。
【0041】
また、AE処理において、CPU1301は、AE制御回路1303で算出された追尾位置の被写体の輝度を予め定められた適正な量(適正露光量)とする、本露光時の絞り106の開口量(絞り値)、シャッタ110の開放時間(シャッタ速度値)を算出する。
【0042】
S114において、CPU1301は、2ndレリーズスイッチがオンされたかを判定する。S114において、2ndレリーズスイッチがオンされていないと判定した場合に、CPU1301は、S110の追尾処理以後の処理を実行する。このように、静止画撮影モード時には、2ndレリーズスイッチがオンされるまでは、追尾処理が継続される。
【0043】
また、S114において、2ndレリーズスイッチがオンされたと判定した場合に、S116において、CPU1301は、表示素子駆動回路122を制御して、追尾枠を非表示とする。
【0044】
S118において、CPU1301は、静止画像データを記録メディア128に記録する処理を行う。この際、CPU1301は、シャッタ駆動機構112を制御して、シャッタ110を閉じる。その後、CPU1301は、絞り駆動機構108を制御して、絞り106を先に算出した絞り値まで絞り込む。続いて、CPU1301は、シャッタ駆動機構112を制御して、シャッタ110を先に算出した開放時間だけ開放しつつ、撮像素子114による撮像(露光)を行う。その後、CPU1301は、撮像素子114を介して得られた静止画像データを画像処理回路1304において処理する。そして、CPU1301は、画像処理回路1304において処理された静止画像データにヘッダを付与して静止画像ファイルを生成し、生成した静止画像ファイルを記録メディア128に記録する。
S120において、CPU1301は、S110の追尾処理の結果として得られた追尾位置を示すデータを、先に記録メディア128に記録した静止画像ファイルに追記する。その後に、CPU1301は、図5に示す動作を終了させる。
【0045】
また、S100において、撮影設定が動画撮影モードであると判定した場合に、S122において、CPU1301は、ライブビュー動作を開始させる。
【0046】
S124において、CPU1301は、動画釦がオンされたかを判定する。S124において、動画釦がオンされたと判定するまでは、CPU1301は、ライブビュー動作を継続する。
【0047】
また、S124において、動画釦がオンされたと判定した場合に、S126において、CPU1301は、表示素子駆動回路122を制御して、表示素子120に追尾枠を表示させる。
【0048】
S128において、CPU1301は、追尾処理を行う。この追尾処理の詳細については、後述する。
【0049】
S130において、CPU1301は、追尾位置の被写体に合焦するようにAF処理を行うともに、追尾位置の被写体の露光が適正となるようにAE処理を行う。S130におけるAF処理おいては、ウォブリング駆動によって、フォーカスレンズを合焦位置まで駆動させる。
【0050】
S132において、CPU1301は、動画像データを記録メディア128に記録する処理を行う。この際、CPU1301は、絞り駆動機構108を制御して、絞り106をAE処理において算出した絞り値まで絞り込む。続いて、CPU1301は、AE処理において算出したシャッタ速度値に対応した時間だけ撮像素子114による撮像(露光)を実行させる。露光の終了後、CPU1301は、動画像ファイルを生成して記録メディア128に記録する。また、CPU1301は、撮像素子114を介して得られた動画像データを画像処理回路1304において処理し、画像処理回路1304において処理された動画像データを動画像ファイルに記録する。
【0051】
S134において、CPU1301は、S128の追尾処理の結果として得られた追尾位置を示すデータを、先に記録メディア128に記録した動画像ファイルと同時記録する。
【0052】
S136において、CPU1301は、動画釦がオフされたかを判定する。S136において、動画釦がオフされていないと判定した場合に、CPU1301は、S128の追尾処理以後の処理を実行する。このように、動画撮影モード時では、動画釦がオフされるまでは、追尾処理と動画像データの記録が継続される。
【0053】
また、S136において、動画釦がオフされたと判定した場合に、S138において、CPU1301は、表示素子駆動回路122を制御して、追尾枠を非表示とする。その後、CPU1301は、図5に示す動作を終了させる。
【0054】
次に、本実施形態に係る追尾方法としての追尾処理について説明する。
まず、色情報を用いた場合の追尾処理について説明する。図6は、色情報を用いた追尾処理について示すフローチャートである。
S200において、CPU1301は、撮像素子IF回路116を制御して撮像素子114による撮像を実行する。S202において、CPU1301は、撮像素子114による撮像により、撮像素子IF回路116において得られた画像データをRAM118に取り込む。ここで、初回の追尾処理で得られた画像データは、評価画像データとする。このため、CPU1301は、初回の追尾処理で得られた画像データをRAM118の評価画像エリアに取り込む。また、2回目以後の追尾処理で得られた画像データは、参照画像データとする。このため、CPU1301は、2回目以後の追尾処理で得られた画像データをRAM118の参照画像エリアに取り込む。
【0055】
S204において、CPU1301は、追尾処理回路1306により、色情報を用いた追尾処理を行う。色情報を用いた追尾処理については、前述したので説明を省略する。なお、初回の追尾処理においては、評価画像データのみが取得された状態であるので、S204以後の処理は省略される。以後の説明においては、評価画像データと参照画像データの両方が取得されているものとして説明を続ける。S206において、CPU1301は、色情報を用いた追尾処理の結果として得られた追尾位置を、追尾候補位置としてRAM118の追尾位置ログエリアに記憶させる。
【0056】
S208において、CPU1301は、コントラスト情報取得回路1308により、S206で記憶された追尾候補位置におけるコントラスト情報を取得する。S210において、CPU1301は、取得したコントラスト情報を、RAM118のコントラスト情報ログエリアに記憶させる。ここで、コントラスト情報を取得するためのコントラスト取得エリアは、追尾候補位置のエリアだけでなく、追尾候補位置を含む所定のサイズのエリアに設定しても良い。なお、コントラスト取得エリアのサイズは、全ての追尾候補位置で同一サイズとすることが好ましい。
【0057】
S212において、CPU1301は、優先追尾位置判断処理を行う。優先追尾位置判断処理は、現在のフレームにおいて複数の追尾候補位置がRAM118に記憶された場合に、その何れを採用するかを判断するための処理である。この優先追尾位置判断処理の詳細については後述する。
【0058】
S214において、CPU1301は、優先追尾位置判断処理の結果として採用された追尾位置の信頼性を判断する。信頼性は、例えば参照画像データの彩度から判断する。具体的には、参照画像データの追尾位置の彩度が所定値以上である場合には、信頼性があると判断する。この信頼性を判定するための閾値は適宜設定可能である。
【0059】
S216において、CPU1301は、最終的な追尾位置を、RAM118の追尾位置ログエリアに記録する。次回(次フレーム)の追尾処理においては、この最終的な追尾位置を追尾処理の開始位置とする。ただし、S214の信頼性判断において、信頼性がないと判断された場合には、追尾位置を記録しないようにしても良い。
【0060】
S218において、CPU1301は、表示素子駆動回路122を制御して、追尾枠の表示位置をS216で記録した追尾位置に対応した位置に更新する。その後、CPU1301は、図6の追尾処理を終了させる。
【0061】
次に、優先追尾位置判断処理について図7を参照して説明する。優先追尾位置判断処理においては、現在のフレームにおける各追尾候補位置のコントラスト情報と過去のフレームにおいて決定された最終的な追尾位置のコントラスト情報との類似度に応じて、現在のフレームにおける最終的な追尾位置を決定する。
【0062】
S300において、CPU1301は、現在のフレームに対応した複数の追尾候補位置が、RAM118の追尾位置ログエリアに記録されたか否かを判定する。
S300において、現在フレームに対応した複数の追尾候補位置がRAM118に記録されていると判定した場合に、S302において、CPU1301は、過去のフレームの追尾位置のコントラスト情報と現在のフレームの各追尾候補位置のコントラスト情報との類似度を算出する。現在のフレームをNフレームとした場合、類似度は、例えば(N−1)フレームにおける追尾位置のコントラスト情報とNフレームの各追尾候補位置のコントラスト情報との差として求めることが可能である。この差が小さいほど類似度が高くなる。
【0063】
S304において、CPU1301は、算出された類似度のうち、類似度が最も高いコントラスト情報を有する追尾候補位置を、最終的な追尾位置に決定する。その後、CPU1301は、図7の優先追尾位置判断処理を終了させる。
【0064】
また、S300において、現在のフレームに対応した追尾候補位置が、1つのみRAM118に記録されていると判定した場合に、S306において、CPU1301は、その1つの追尾候補位置を、最終的な追尾位置に決定する。その後、CPU1301は、図7の追尾処理を終了させる。
【0065】
以下、図6及び図7で示した追尾処理の効果について説明する。
この追尾処理の効果を説明するために、まず、従来の色情報を用いた追尾処理について説明する。追尾処理に先立って、あるフレームにおいて、図8(a)に示す被写体Bの位置A1が追尾対象として指定されたとする。このとき、図8(a)に示す画像データが評価画像データとなる。そして、位置A1に追尾枠が表示される。
【0066】
その後、別のフレームにおいて、図8(b)に示すように、被写体Bに被写体Cが接近したとする。被写体Cは、追尾対象の被写体Bとは同色の被写体である。このような複数の同色被写体を含むフレームの画像データを参照画像データとして、色情報を用いた追尾処理を行ったとする。この場合、図8(a)の位置A1と同じ色情報を有する領域を、参照画像データの中から探索する。この場合、追尾位置は、図8(b)に示す被写体B上の位置A1になる可能性と、図8(c)に示す被写体C上の位置A2になる可能性とが生じる。図8(c)のように、追尾の対象の乗り換わりが発生してしまうと、それ以後のフレームにおいて正しい追尾処理を行うことができなくなる。
【0067】
次に、図6及び図7で示す本実施形態の追尾処理を適用した場合の効果について説明する。ここでは、例として、図9(a)に示す被写体Eを追尾するとし、過去のフレームにおいて得られた最終的な追尾位置が位置Fであるとする。また、過去のフレームにおけるコントラスト情報は、追尾位置Fを含む所定サイズを有するコントラスト取得エリアGのコントラスト情報を取得する。
【0068】
現在のフレームにおいて、図9(b)に示すように、被写体Eと被写体Hとが存在していたとする。被写体Eと被写体Hとは同一色の被写体である。この場合、色情報を用いた追尾処理では、追尾位置Fと同色の領域が探索され、追尾候補位置が算出される。図9(b)の例では、被写体E上の位置I1と被写体H上の位置I2が、追尾候補位置となる。最終的な追尾位置としては、追尾候補位置I1が選択される必要がある。
【0069】
追尾候補位置が複数存在する場合、各追尾候補位置でコントラスト情報が取得される。追尾候補位置I1におけるコントラスト情報は、図9(c)に示すように、追尾候補位置I1を含み、コントラスト取得エリアGと同一サイズのコントラスト取得エリアJ1のコントラスト情報を取得する。また、追尾候補位置I2におけるコントラスト情報は、図9(c)に示すように、追尾候補位置I2を含み、コントラスト取得エリアGと同一サイズのコントラスト取得エリアJ2のコントラスト情報を取得する。
【0070】
続いて、コントラスト情報の類似度が評価される。コントラスト取得エリアGのコントラスト情報とコントラスト取得エリアJ1のコントラスト情報との類似度は、最大(両コントラスト情報の差が0)となる。これは、コントラスト取得エリアGのコントラスト情報とコントラスト取得エリアJ1のコントラスト情報とが同一の部分のコントラスト情報であるためである。一方、コントラスト取得エリアGのコントラスト情報とコントラスト取得エリアJ2のコントラスト情報との類似度は、最大とはならない。これは、コントラスト取得エリアGのコントラスト情報とコントラスト取得エリアJ2のコントラスト情報とが異なる部分のコントラスト情報であるためである。このようにして、最終的な追尾位置としては、追尾候補位置I1が選択される。
【0071】
このように、本実施形態における追尾処理では、色情報を利用して追尾処理を行うだけではなく、色情報を利用して得られたそれぞれの追尾候補位置における被写体が、過去のフレームの追尾位置における被写体と対応しているか否かを、過去のフレームの追尾位置におけるコントラスト情報と現在のフレームの各追尾候補位置におけるコントラスト情報との類似度から判断している。コントラスト情報の類似度が高いということは、対応する追尾候補位置において、過去のフレームと同一の被写体を追尾している可能性が高いと考えられる。このような判断を行うことにより、本実施形態では、複数の同色被写体を含むフレームにおいても、適切な追尾候補位置を最終的な追尾位置として決定することが可能である。
【0072】
また、追尾候補位置毎にコントラスト取得エリアを設定してコントラスト情報を抽出する場合において、コントラスト取得エリアのサイズを同一サイズとすることにより、コントラスト情報の類似度が最大となる追尾候補位置を検出し易くすることが可能である。このため、追尾位置の誤検出の可能性を低減することが可能である。
【0073】
次に、輝度情報を用いた場合の追尾処理について説明する。図10は、輝度情報を用いた追尾処理について示すフローチャートである。
S400において、CPU1301は、撮像素子IF回路116を制御して撮像素子114による撮像を実行する。S402において、CPU1301は、撮像素子114による撮像により、撮像素子IF回路116において得られた画像データをRAM118に取り込む。ここで、初回の追尾処理で得られた画像データは、評価画像データとする。このため、CPU1301は、初回の追尾処理で得られた画像データをRAM118の評価画像エリアに取り込む。また、2回目以後の追尾処理で得られた画像データは、参照画像データとする。このため、CPU1301は、2回目以後の追尾処理で得られた画像データをRAM118の参照画像エリアに取り込む。
【0074】
S404において、CPU1301は、追尾処理回路1306により、輝度情報を用いた追尾処理を行う。輝度情報を用いた追尾処理については、前述したので説明を省略する。なお、初回の追尾処理においては、評価画像データのみが取得された状態であるので、S404以後の処理は省略される。以後の説明においては、評価画像データと参照画像データの両方が取得されているものとして説明を続ける。S406において、CPU1301は、輝度情報を用いた追尾処理の結果として得られた追尾位置を、追尾候補位置としてRAM118の追尾位置ログエリアに記憶させる。
【0075】
S408において、CPU1301は、コントラスト情報取得回路1308により、S406で記憶された追尾候補位置におけるコントラスト情報を取得する。S410において、CPU1301は、コントラスト情報取得回路1308により、S406で記憶された追尾候補位置の周辺位置の複数のコントラスト取得エリアにおいてコントラスト情報を取得する。コントラスト取得エリアは、追尾候補位置におけるコントラスト取得エリアを囲むように複数設定する。また、それぞれのコントラスト取得エリアは、追尾候補位置におけるコントラスト取得エリアと同一のサイズのエリアとするように設定することが好ましい。S412において、CPU1301は、S408及びS410において取得したコントラスト情報を、RAM118のコントラスト情報ログエリアに記憶させる。
【0076】
S414において、CPU1301は、追尾位置補正判断処理を行う。追尾位置補正判断処理は、現在のフレームにおいて算出された追尾位置を補正するか否かを判断するための処理である。この追尾位置補正判断処理の詳細については後述する。
【0077】
S416において、CPU1301は、追尾位置補正判断処理の結果として採用された追尾位置の信頼性を判断する。信頼性は、例えば参照画像データの各画素のデータから判断する。具体的には、参照画像データにおける追尾対象の領域の隣接画素間の差分和が所定値以下である場合には、信頼性があると判断する。
S418において、CPU1301は、最終的な追尾位置を、RAM118の追尾位置ログエリアに記録する。次回(次フレーム)の追尾処理においては、この最終的な追尾位置を追尾処理の開始位置とする。ただし、S416の信頼性判断において、信頼性がないと判断された場合には、追尾位置を記録しないようにしても良い。
【0078】
S420において、CPU1301は、表示素子駆動回路122を制御して、追尾枠の表示位置をS418で記録した追尾位置に対応した位置に更新する。その後、CPU1301は、図10の追尾処理を終了させる。
【0079】
次に、追尾位置補正判断処理について図11を参照して説明する。追尾位置補正判断処理においては、現在のフレームにおける各コントラスト取得エリアのコントラスト情報と過去のフレームにおいて決定された最終的な追尾位置のコントラスト情報との類似度に応じて、現在のフレームにおける最終的な追尾位置を決定する。
【0080】
S500において、CPU1301は、現在のフレーム(Nフレーム)における追尾候補位置のコントラスト取得エリアで取得されたコントラスト情報と過去のフレーム(N−1フレーム)において最終的に決定された追尾位置のコントラスト取得エリアで取得されたコントラスト情報との差が閾値を超えているか否かを判定する。
S500において、現在のフレームにおける追尾候補位置のコントラスト取得エリアで取得されたコントラスト情報と過去のフレームおける追尾位置のコントラスト取得エリアで取得されたコントラスト情報との差が閾値を超えていると判定した場合、即ち現在のフレームにおける追尾候補位置のコントラスト情報と過去のフレームおける追尾位置のコントラスト情報との類似度が低いと判定した場合に、S302において、CPU1301は、過去のフレームの追尾位置のコントラスト情報と現在のフレームの追尾候補位置の周辺位置の各コントラスト取得エリアにおけるコントラスト情報との類似度を算出する。
【0081】
S504において、CPU1301は、算出された類似度のうち、最も高い類似度が閾値を超えているか否か、即ちコントラスト情報の差の最小値が閾値よりも小さいか否かを判定する。S504において、最も高い類似度が閾値を超えていると判定した場合に、S506において、CPU1301は、最も高い類似度のコントラスト情報を有する位置を、最終的な追尾位置に決定する。ここで、追尾候補位置におけるコントラスト情報が最も高い類似度を有している場合には、追尾候補位置を最終的な追尾位置に決定する。その後、CPU1301は、図11の追尾位置補正判断処理を終了させる。
【0082】
また、S500において、現在のフレームにおける追尾候補位置のコントラスト取得エリアで取得されたコントラスト情報と過去のフレームおける追尾位置のコントラスト取得エリアで取得されたコントラスト情報との差が閾値を超えていないと判定した場合、又はS504において、最も高い類似度が閾値を超えていないと判定した場合に、CPU1301は、図11の追尾位置補正判断処理を終了させる。この場合には、追尾位置の補正は行われず、追尾候補位置が最終的な追尾位置となる。
【0083】
以下、図10及び図11で示した追尾処理の効果について説明する。
この追尾処理の効果を説明するために、まず、従来の輝度情報を用いた追尾処理について説明する。追尾処理に先立って、あるフレームにおいて、図12(a)に示す被写体Dの位置C1(被写体の胸部)が追尾対象として指定されたとする。このとき、図12(a)に示す画像データが評価画像データとなり、この中の位置C1の画像データが基準画像データとなる。そして、位置C1に追尾枠が表示される。
【0084】
その後、別のフレームにおいて、図12(b)に示すようにして被写体Dに動きが生じたとする。図12(b)の例は、被写体Dが、正面向きから横向きに変化する動きをした場合を示している。このような被写体Dに動きが生じた状態で輝度情報を用いた追尾処理を行ったとする。前述したように、輝度情報を用いた追尾処理では、基準画像データと類似の画像データを参照画像データから探索する。横向きの場合には、正面向きの場合の胸部(基準画像データ)と類似する画像データを多く含んでいるので、被写体Dの胸部を正しく追尾することが可能である。
【0085】
さらに、別のフレームにおいて、図12(c)に示すようにして被写体Dに動きが生じたとする。図12(c)の例は、被写体Dが、横向きから後ろ向きに変化する動きをした場合を示している。このような被写体Dに動きが生じた状態で輝度情報を用いた追尾処理を行ったとする。ここで、後ろ向きの場合には、正面向きの場合の胸部(基準画像データ)と類似する画像データを殆ど含んでいないので、被写体Dの胸部を追尾することができなくなる可能性が生じる。特に、被写体Dが、胸と背中とで模様が異なる服を着ている場合等では、追尾対象をロストして追尾処理が不能となる可能性が高い。
【0086】
次に、図10及び図12で示す本実施形態の追尾処理を適用した場合の効果について説明する。ここでは、例として、図13(a)に示す被写体Kの位置L1を追尾するものとする。
【0087】
あるフレームにおいて、図13(b)に示すようにして、被写体Kの向きが横向きから後ろ向きに変化し、これによって追尾対象をロストして、追尾候補位置がL2となったとする。このような場合、追尾位置L1のコントラスト情報と追尾候補位置L2のコントラスト情報との差が大きく(類似度が低く)なる。
【0088】
図13(b)の例では、追尾位置L1のコントラスト情報と追尾候補位置L2のコントラスト情報との差が大きいので、追尾位置L1のコントラスト情報と、図13(c)に示す追尾候補位置L2の周辺位置Mのコントラスト情報との類似度が評価される。ここで、図13(c)の例では、周辺位置Mを、追尾候補位置L2を囲むようにして配置された8つのコントラスト取得エリアで構成している。各コントラスト取得エリアは、追尾位置L1と同サイズとしておくことが好ましい。周辺位置Mのコントラスト取得エリアを8つ以上としても良い。例えば、追尾候補位置L2を含めて5×5のコントラスト取得エリアとしても良い。この場合、周辺位置Mのコントラスト取得エリアは、24個のコントラスト取得エリアによって構成される。また、周辺位置Mに含まれるコントラスト取得エリアを8つよりも少なくしても良い。例えば、追尾候補位置L2の上下左右位置にのみ、コントラスト取得エリアを配置しても良い。この場合、周辺位置Mのコントラスト取得エリアは、4個のコントラスト取得エリアによって構成される。
【0089】
周辺位置Mも含めてコントラスト情報の類似度が評価される。図13(c)の例では、コントラスト取得エリアNのコントラスト情報が、追尾位置L1のコントラスト情報との類似度が最も高いと評価される。これは、コントラスト取得エリアNが被写体K上のエリアであるためである。コントラスト取得エリアNにおける類似度が、閾値を超えていると判定された場合に、図13(d)に示すようにして、現フレームの追尾位置が、追尾候補位置L2から、コントラスト取得エリアNに対応した位置L3に補正される。
【0090】
このように、本実施形態における追尾処理では、輝度情報を利用した追尾処理によって得られた追尾候補位置における被写体が、本来の追尾対象の被写体でない場合に、その追尾候補位置の周辺位置のコントラスト情報を用いて追尾対象の被写体を探索するようにしている。被写体が大きく移動していなければ、追尾候補位置の周辺に本来の追尾対象の被写体が存在していると考えられる。このようにして追尾位置を探索することにより、本実施形態では、追尾対象の被写体をロストしてしまっても、最終的には追尾位置を正しい追尾位置に補正することが可能である。
【0091】
また、追尾候補位置のコントラスト取得エリアと周辺位置の各コントラスト取得エリアのサイズとを同一サイズとすることにより、コントラスト情報の類似度を比較し易い。このため、追尾位置の誤検出の可能性を低減することが可能である。
【0092】
以上実施形態に基づいて本発明を説明したが、本発明は上述した実施形態に限定されるものではなく、本発明の要旨の範囲内で種々の変形や応用が可能なことは勿論である。例えば、上述した実施形態では、色情報を用いた追尾処理の例と輝度情報を用いた追尾処理の例とについて説明している。これらの追尾処理は、何れも、顏検出を用いた追尾処理に対しても適用可能である。
また、前述の動作の説明において、便宜上「まず」、「次に」等を用いて動作を説明しているが、この順で動作を実施することが必須であることを意味するものではない。
さらに、上記した実施形態には種々の段階の発明が含まれており、開示される複数の構成要件の適当な組合せにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、上述したような課題を解決でき、上述したような効果が得られる場合には、この構成要件が削除された構成も発明として抽出され得る。
【符号の説明】
【0093】
100…撮像装置、102…撮影光学系、104…焦点調整機構、106…絞り、108…絞り駆動機構、110…シャッタ、112…シャッタ駆動機構、114…撮像素子、116…撮像素子インターフェイス(IF)回路、118…RAM、120…表示素子、122…表示素子駆動回路、124…タッチパネル、126…タッチパネル駆動回路、128…記録メディア、130…システムコントローラ、132…操作部、134…ROM、1301…CPU、1302…AF制御回路、1303…AE制御回路、1304…画像処理回路、1305,1306…追尾処理回路、1307…顔検出回路、1308…コントラスト情報取得回路、1309…メモリ制御回路
【特許請求の範囲】
【請求項1】
画像データをフレーム毎に取得する画像データ取得部と、
前記フレーム毎に取得された画像データのそれぞれにおける追尾対象の候補位置を検出する追尾処理部と、
前記フレーム毎に検出された前記画像データにおける追尾対象の候補位置のコントラスト情報を取得するコントラスト情報取得部と、
過去の前記フレームにおいて決定された前記追尾対象の位置のコントラスト情報と現在の前記フレームにおいて取得された前記追尾対象の候補位置のコントラスト情報との類似度を評価するコントラスト情報類似度評価部と、
過去の前記フレームにおいて決定された前記追尾対象の位置のコントラスト情報に対する類似度が最も高いコントラスト情報を有する前記追尾対象の候補位置を、現在の前記フレームにおける追尾対象の位置として決定する制御部と、
を具備することを特徴とする追尾装置。
【請求項2】
前記コントラスト情報取得部は、前記追尾処理部によって複数の前記追尾対象の候補位置が検出された場合に、各追尾対象の候補位置について同一サイズのコントラスト取得エリアを設定し、該コントラスト取得エリアにおいてコントラスト情報を取得することを特徴とする請求項1に記載の追尾装置。
【請求項3】
前記追尾処理部は、前記追尾対象の色情報に従って前記追尾対象の候補位置を検出することを特徴とする請求項2に記載の追尾装置。
【請求項4】
前記コントラスト情報取得部は、追尾対象の候補位置及び該追尾対象の候補位置の周辺位置に同一サイズのコントラスト取得エリアを設定し、該コントラスト取得エリアにおいてコントラスト情報を取得することを特徴とする請求項1に記載の追尾装置。
【請求項5】
前記追尾処理部は、前記追尾対象の輝度情報に従って前記追尾対象の候補位置を検出することを特徴とする請求項4に記載の追尾装置。
【請求項6】
画像データ取得部が、画像データをフレーム毎に取得し、
追尾処理部が、前記フレーム毎に取得された画像データのそれぞれにおける追尾対象の候補位置を検出し、
コントラスト情報取得部が、前記フレーム毎に検出された前記画像データにおける追尾対象の候補位置のコントラスト情報を取得し、
コントラスト類似度評価部が、過去の前記フレームにおいて決定された前記追尾対象の位置のコントラスト情報と現在の前記フレームにおいて取得された前記追尾対象の候補位置のコントラスト情報との類似度を評価し、
制御部が、過去の前記フレームにおいて決定された前記追尾対象の位置のコントラスト情報に対する類似度が最も高いコントラスト情報を有する前記追尾対象の候補位置を、現在の前記フレームにおける追尾対象の位置として決定する、
ことを特徴とする追尾方法。
【請求項1】
画像データをフレーム毎に取得する画像データ取得部と、
前記フレーム毎に取得された画像データのそれぞれにおける追尾対象の候補位置を検出する追尾処理部と、
前記フレーム毎に検出された前記画像データにおける追尾対象の候補位置のコントラスト情報を取得するコントラスト情報取得部と、
過去の前記フレームにおいて決定された前記追尾対象の位置のコントラスト情報と現在の前記フレームにおいて取得された前記追尾対象の候補位置のコントラスト情報との類似度を評価するコントラスト情報類似度評価部と、
過去の前記フレームにおいて決定された前記追尾対象の位置のコントラスト情報に対する類似度が最も高いコントラスト情報を有する前記追尾対象の候補位置を、現在の前記フレームにおける追尾対象の位置として決定する制御部と、
を具備することを特徴とする追尾装置。
【請求項2】
前記コントラスト情報取得部は、前記追尾処理部によって複数の前記追尾対象の候補位置が検出された場合に、各追尾対象の候補位置について同一サイズのコントラスト取得エリアを設定し、該コントラスト取得エリアにおいてコントラスト情報を取得することを特徴とする請求項1に記載の追尾装置。
【請求項3】
前記追尾処理部は、前記追尾対象の色情報に従って前記追尾対象の候補位置を検出することを特徴とする請求項2に記載の追尾装置。
【請求項4】
前記コントラスト情報取得部は、追尾対象の候補位置及び該追尾対象の候補位置の周辺位置に同一サイズのコントラスト取得エリアを設定し、該コントラスト取得エリアにおいてコントラスト情報を取得することを特徴とする請求項1に記載の追尾装置。
【請求項5】
前記追尾処理部は、前記追尾対象の輝度情報に従って前記追尾対象の候補位置を検出することを特徴とする請求項4に記載の追尾装置。
【請求項6】
画像データ取得部が、画像データをフレーム毎に取得し、
追尾処理部が、前記フレーム毎に取得された画像データのそれぞれにおける追尾対象の候補位置を検出し、
コントラスト情報取得部が、前記フレーム毎に検出された前記画像データにおける追尾対象の候補位置のコントラスト情報を取得し、
コントラスト類似度評価部が、過去の前記フレームにおいて決定された前記追尾対象の位置のコントラスト情報と現在の前記フレームにおいて取得された前記追尾対象の候補位置のコントラスト情報との類似度を評価し、
制御部が、過去の前記フレームにおいて決定された前記追尾対象の位置のコントラスト情報に対する類似度が最も高いコントラスト情報を有する前記追尾対象の候補位置を、現在の前記フレームにおける追尾対象の位置として決定する、
ことを特徴とする追尾方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2013−98935(P2013−98935A)
【公開日】平成25年5月20日(2013.5.20)
【国際特許分類】
【出願番号】特願2011−242703(P2011−242703)
【出願日】平成23年11月4日(2011.11.4)
【出願人】(504371974)オリンパスイメージング株式会社 (2,647)
【Fターム(参考)】
【公開日】平成25年5月20日(2013.5.20)
【国際特許分類】
【出願日】平成23年11月4日(2011.11.4)
【出願人】(504371974)オリンパスイメージング株式会社 (2,647)
【Fターム(参考)】
[ Back to top ]