以下、本発明の実施形態を図面に基づいて詳細に説明する。なお、以下の実施形態は、本質的に好ましい例示であって、本発明、その適用物、あるいはその用途の範囲を制限することを意図するものではない。
≪第1実施形態≫
<概要>
本実施形態に係る追尾制御装置は、画像処理装置(100)にて構成される。画像処理装置(100)は、様々な撮影モードにて画像を撮像できる撮像装置(10)に備えられており、撮像された画像に対し画像処理を施す。撮像装置(10)としては、具体的には、ビデオカメラやデジタルカメラ等の電子カメラが挙げられる。
特に、撮像装置(10)は、撮影モードの1つとして、撮像装置(10)が概ね固定された状態にて被写体を追尾して撮像する追尾モード機能を有しており、本実施形態に係る画像処理装置(100)は、当該追尾機能を実現するための制御処理も行う。
移動している被写体を撮像装置(10)が撮像し続ける際、当該被写体の移動によって被写体の環境は刻々と変化する場合がある。撮像装置(10)には、このような環境の変化があっても、被写体を見失うことなく追尾し続けることが求められる。ところが、例えば網目の中や磨りガラスの中のように、被写体を取り巻く環境が急激に且つ比較的大きく変化した場合、撮像装置(10)は、変化した環境の影響を受けて被写体を見失い、追尾動作を続けることができなくなる可能性がある。
これに対し、本実施形態の画像処理装置(100)は、被写体の環境が変化したとしても撮像装置(10)が被写体を追尾して撮像できるように、追尾制御を行う。
なお、撮像装置(10)が撮像する画像は、連続撮像された複数枚の静止画であってもよいし、動画であってもよいが、以下では、動画である場合を例示する。
<撮像装置の構成>
図1に示すように、撮像装置(10)は、追尾制御装置である画像処理装置(100)に加えて、撮像部(11)及びモニタ(30)を備える。
撮像部(11)は、画像を撮像して画像データを得るものであって、ドライバ(18a,18b,18c)、フォーカスレンズ(12)、絞りユニット(14)及びイメージセンサ(20)を有する。
ドライバ(18a,18b,18c)は、フォーカスレンズ(12)、絞りユニット(14)及びイメージセンサ(20)それぞれに対応して接続され、接続された機能部を駆動する。フォーカスレンズ(12)は、被写体にピントを合わせるためのレンズであって、撮像装置(10)の筐体(図示せず)内にて可動可能に設けられている。絞りユニット(14)は、露光量を調節するためのものである。イメージセンサ(20)は、撮像素子であって、イメージセンサ(20)の受光面には、フォーカスレンズ(12)を経て被写体の光学像が入射される。イメージセンサ(20)は、この光学像に対し光電変換を施すことにより、光学像に対応する生画像信号を生成する。更に、イメージセンサ(20)では、読み出された各フレームの生画像信号に対してノイズ除去とレベル調整とが施される。
このような撮像部(11)を備える撮像装置(10)は、自動で主要被写体にピントを合わせるオートフォーカス機能、及び、自動で露出(換言すると絞りの開口量や露光期間)を制御する自動露出機能を有する。これらの各機能を実現させるべく、撮像部(11)の各ドライバ(18a〜18c)は、後述する画像処理装置(100)のCPU(32)によって制御される。
モニタ(30)は、図示してはいないが、撮像装置(10)の筐体表面において、ユーザが視認できる位置に設けられている。モニタ(30)は、タッチパネル形式の液晶表示パネルで構成されることができ、撮像装置(10)が撮像した画像や、撮像装置(10)の各種設定に用いるメニュー画面等が表示される。
<画像処理装置の構成>
本実施形態に係る画像処理装置(100)の構成について、撮影時の動作を交えて具体的に説明する。
画像処理装置(100)は、図1に示すように、信号処理回路(26)、メモリ制御回路(24)、SDRAM(38)、モニタ用ドライバ(28)、I/F回路(34)、メモリカード(36)、MPEGコーデック(27)、記憶部(42)、CPU(32)及び撮像ボタン(40)を備える。
このうち、信号処理回路(26)は、取得部としての機能を有する。CPU(32)は、算出部、追尾制御部、更新部としての機能を有する。
信号処理回路(26)は、撮像部(11)に含まれるイメージセンサ(20)から出力された各フレームの生画像信号(ディジタル信号)を次々と取得する。信号処理回路(26)は、前処理回路(26a)と後処理回路(26b)とを有する。
前処理回路(26a)は、取得した生画像データに、ディジタルクランプ、画素欠陥補正、ゲイン制御等の処理を施す。これらの処理を施された生画像データは、メモリ制御回路(24)を介してSDRAM(38)の生画像エリア(38a)に書き込まれる。
後処理回路(26b)は、生画像エリア(38a)に格納された生画像データをメモリ制御回路(24)を介して読み出し、読み出された生画像データに色分離処理、ホワイトバランス調整処理及びYUV変換処理を施す。更に、後処理回路(26b)は、YUV形式に従う画像データに対して表示用のズーム処理と探索用のズーム処理とを並列的に実行する。この結果、YUV形式に従う表示画像データ及び探索画像データが個別に作成される。表示画像データは、メモリ制御回路(24)によってSDRAM(38)の表示画像エリア(38b)に書き込まれる。探索画像データは、メモリ制御回路(24)によってSDRAM(38)の検索画像エリア(38c)に書き込まれる。
ところで、図2に示すように、被写界(即ち画面)は、垂直方向及び水平方向のそれぞれに例えば16分割され、画面には256個のブロックが形成されている。各ブロックには、垂直位置信号i(iは0〜15の整数)及び水平位置信号j(jは0〜15の整数)が割り当てられる。信号処理回路(26)は、上述した処理に加えて、画像データに係るR成分、G成分及びB成分それぞれを上記ブロック毎に積分する処理を更に行う。これによって、R成分に関する256個の積分値r(i,j)、G成分に関する256個の積分値g(i,j)、B成分に関する256個の積分値b(i,j)が、信号処理回路(26)から1フレーム期間毎に出力される。これらの積分値r(i,j),g(i,j),b(i,j)は、絞りユニット(14)による露光量及び露光時間の調節をCPU(32)が行う際の、AE評価値として用いられる。また、信号処理回路(26)は、上記R成分、G成分及びB成分それぞれの高周波数成分をブロック毎に積分する処理を更に行う。この積分値は、CPU(32)がフォーカスレンズ(12)の位置を最適にする処理を行う際の(即ちオートフォーカス)、AF評価値として用いられる。
更に、信号処理回路(26)は、画像データに係るY成分をブロック毎に積分し、Y成分に関する256個の積分値y(i,j)を1フレーム期間毎にCPU(32)に出力してもよい。
図1に戻り、SDRAM(38)の表示画像エリア(38b)に格納された各フレームの画像データ(即ち表示画像データ)がメモリ制御回路(24)によって読み出されると、モニタ用ドライバ(28)は、この画像データに基づいてモニタ(30)を駆動する。これにより、モニタ(30)には、被写体のリアルタイム動画像(スルー画像)が表示される。
撮像ボタン(40)の押下によって動画の撮像開始操作が行われると、CPU(32)は、動画記録処理を開始するべく、記録開始命令をMPEGコーデック(27)及びI/F回路(34)に与える。撮像ボタン(40)によって記録終了操作が行われると、CPU(32)は、動画記録処理を終了するべく、記録終了命令をMPEGコーデック(27)及びI/F回路(34)に与える。記録開始命令から記録終了命令までの期間、MPEGコーデック(27)は、垂直同期信号(図示せず)に応答して、SDRAM(38)の検索画像エリア(38c)に格納されたYUV形式の画像データ(即ち検索画像データ)をメモリ制御回路(24)を介して繰り返し読み出すと共に、読み出された画像データを所定形式に従って符号化する。I/F回路(34)は、記録開始命令から記録終了命令までの期間、符号化された画像データを、ファイル形式でメモリカード(36)に記録する。
なお、メモリカード(36)は、撮像装置(10)の筐体(図示せず)に対して着脱自在に設けられたものである。
CPU(32)には、フラッシュメモリ等で構成される記憶部(42)が、電気的に接続されている。記憶部(42)には、追尾対象とする被写体を自動で認識する際に利用される辞書データ(DB1)、及び、追尾撮影制御時に利用される評価値データ(DB2)が格納されている。
図3は、辞書データ(DB1)の概念を一例として表したものである。図3の辞書データ(DB1)には、人物の特徴量のデータ(G1)及び自動車の玩具の特徴量のデータ(G2)が登録されている。特徴量には、被写体の輝度、明度、彩度、色相、色成分、形状(即ち輪郭、エッジ成分)、方位、これらの組合せ等が挙げられる。本実施形態では、辞書データ(DB1)に登録される特徴量が、被写体の形状と色成分との組み合わせである場合を例示する。
以下では、辞書データ(DB1)に含まれる、追尾対象の候補となる被写体の形状特徴量を「形状情報」、追尾対象の候補となる被写体の色成分特徴量を「色成分情報」と称する。
なお、上記辞書データ(DB1)には、個々の被写体毎の特徴量が登録されていてもよいし、被写体の種類毎に特徴量を平均化した値が登録されていてもよい。例えば、被写体が人物である場合、顔の器官(目,口など)の形状は概ね同一であり、顔の色は肌色のため、人物に係る上記データ(G1)には、形状の平均化した値及び肌色の平均化した値を登録することができる。被写体が自動車の玩具である場合、形状を自動車の玩具の種類(ミニバンのミニカー、トラックのミニカー等)毎に平均化した値と、色成分を平均化した値とを登録することができる。
図4は、評価値データ(DB2)の概念を一例として表したものである。図4の評価値データ(DB2)には、追尾対象である特定の被写体毎に、当該被写体の形状特徴量に基づく形状評価値と、特定の被写体の色成分特徴量に基づく色評価値とが、対応づけて記憶される。具体的に、図4では、追尾対象である特定の被写体の番号“001”と、当該被写体の形状評価値“Shp1”及び色評価値“Clr1”とが、1レコードとして記憶され、特定の被写体の番号“002”と、当該被写体の形状評価値“Shp2”及び色評価値“Clr2”とが、1レコードとして記憶されている。評価値データ(DB2)内の各評価値は、一義的に決定された値ではなく、追尾撮像の際に更新され、以下で述べる追尾評価値の算出にて利用される。
CPU(32)は、上述した撮像部(11)のドライバ(18a〜18c)、信号処理回路(26)、メモリ制御回路(24)、モニタ用ドライバ(28)、MPEGコーデック(27)、I/F回路(34)と、バスを介して電気的に接続されている。CPU(32)は、上述した各種処理の他、信号処理回路(26)からの各積分値を用いた撮像シーン(夜景シーン等)の判定処理、撮影シーンの判定結果に応じた撮影条件の設定処理、設定された撮影条件下でのAE評価値に基づく露出調整指令出力、AF評価値に基づくオートフォーカス調整指令出力、信号処理回路(26)に対する色合い調整指令出力等を行う。
特に、本実施形態に係るCPU(32)は、追尾撮影に関する処理として、追尾対象の設定/登録処理、追尾対象の検出処理、追尾撮影制御処理を行う。
追尾対象の設定/登録処理とは、モニタ(30)に写し出されている画面にユーザが直接触れることで、追尾して撮影することを希望する被写体を選択した際に、選択された対象をCPU(32)が辞書データ(DB1)に書き込む処理である。
追尾対象の検出処理とは、撮像装置(10)が追尾モードに設定されている際に、検索画像エリア(38c)内の検索画像データから、辞書データ(DB1)に記憶されている追尾対象の被写体の存在をCPU(32)が自動で検索する処理である。
追尾撮影制御処理とは、撮像装置(10)が追尾モードに設定されている際に、追尾対象と決定された特定の被写体を、当該被写体の環境がいかに変化したとしても撮像部(11)が追尾して撮像できるように、撮像部(11)の追尾動作を制御する処理である。
上記追尾撮影に関する処理を行うにあたり、CPU(32)は、被写体の色成分特徴量に基づく「色評価値」及び形状特徴量に基づく「形状評価値」の算出、色評価値と形状評価値のどちらを重視して被写体を追尾させるかの切替制御を行う。色成分特徴量及び形状特徴量は、被写体の環境条件の変化に応じて変化するため、CPU(32)は、複数のフレーム画像毎に色評価値と形状評価値を算出し、色成分特徴量及び形状特徴量に基づいて、色評価値と形状評価値とのいずれを重視して追尾させるかを切り替える。また、CPU(32)は、重視対象の評価値に対応する特徴量(色成分特徴量または形状特徴量)を用いて、記憶部(42)内の辞書データ(DB1)を更新する処理を行う。
色評価値とは、追尾対象の被写体の色成分特徴量と、辞書データ(DB1)内の色成分情報との照合度を表した値である。形状評価値とは、追尾対象である被写体の形状特徴量と、辞書データ(DB1)内の形状情報との照合度を表した値である。
なお、フレーム画像毎に算出される色評価値及び形状評価値は、評価値データ(DB2)内に、フレーム画像毎に常に更新される。
<追尾モードに関する動作>
以下では、追尾モードに関して画像処理装置(100)が行う動作として、追尾対象の設定/登録動作、追尾対象の検出動作、追尾撮影制御動作について詳述する。
―追尾対象の設定/登録動作―
図5は、追尾対象の設定/登録動作の流れを表す図である。
先ず、モニタ(30)には、表示画像データに係る画像が、当該画像内の被写体を選択可能なように表示される(ステップS11)。
ステップS11の画面上から、追尾対象とするべき被写体がユーザによって選択された場合(ステップS12のYes)、CPU(32)は、図6に示すように、選択された被写体を枠(30a)が囲った状態の画面が表示されるように(即ち、ステップS11の画面に枠(30a)を重ねて表示するように)、モニタ用ドライバ(28)を駆動させる(ステップS13)。図6では、一例として、モニタ(30)には、追尾対象として自動車の玩具が選択され、その自動車の玩具が枠(30a)で囲われた画面例を表す。
枠(30a)に囲われた被写体を追尾対象の被写体として登録する操作がユーザによってなされると(ステップS14のYes)、CPU(32)は、枠(30a)内の被写体を、追尾対象として設定すると共に、当該被写体の特徴量等を辞書データ(DB1)に追加することで辞書データ(DB1)を更新する。(ステップS15)。
ステップS14にて登録操作がなされない場合(ステップS14のNo)、追尾対象の設定及び辞書データ(DB1)の更新が行われることなく、図6の一連の動作が終了する。
―追尾対象の検出動作―
図7は、追尾対象の検出動作の流れを示す図である。
先ず、撮像装置(10)において追尾モードが設定されているとする(ステップS21のYes)。この状態で、撮像ボタン(40)が押下されると(ステップS22のYes)、追尾対象が既に設定済みでない限り(ステップS23のNo)、CPU(32)は、現在検索画像エリア(38c)内に格納されている検知画像データ内の被写体の特徴量を算出する(ステップS24)。ここで算出される特徴量には、形状(輪郭、エッジ成分)、色成分等が含まれる。なお、これらの特徴量の算出については、特に限定されず、従来から知られている手法を用いることができる。例えば、輪郭の抽出としては、スネーク法等の従来から知られている手法を用いることができる。エッジ成分を検出してその方向の分布情報を形状特徴とする方法は一般的に知られており、本実施形態では、水平、垂直、右下がり斜め、左下がり斜めの4方向の分布情報を特徴量としている。
次いで、CPU(32)は、辞書データ(DB1)に登録済みの、各被写体の特徴量を読み出し(ステップS25)、ステップS24で算出した特徴量と読み出した特徴量とを照合する(ステップS26)。照合した結果、CPU(32)は、特徴量が一致する可能性が高いと判断した場合(ステップS26のYes)、検索画像エリア(38c)内に格納されている画像データ内の被写体を、追尾対象に設定する(ステップS27)。
ステップS26において、ステップS24で算出した特徴量と一致する可能性の高い被写体が辞書データ(DB1)内に存在しない場合(ステップS26のNo)、CPU(32)は、検索画像データ内には追尾対象が存在しない旨の情報及び追尾対象の設定登録を勧める旨の情報がモニタ(30)に表示されるように、モニタ用ドライバ(28)を駆動させる(ステップS28)。この場合、ユーザの操作によっては図5の動作が行われる。
なお、ステップS21にて追尾モードが設定されていない場合(ステップS21のNo)、ステップS23にて追尾対象が既に設定済みであった場合(ステップS23のYes)、ステップS27及びS28が行われることなく追尾対象の検出動作は終了する。
―追尾撮影制御動作―
図8及び図9は、追尾撮影制御動作の流れを示す図である。
本動作は、図8に示すように、図7に係る追尾対象の検出動作を経て(ステップS31)、追尾対象が設定済みの状態となった後に(ステップS32のYes)、行われる。従って、追尾対象が設定済みでない場合は(ステップS32のNo)、本動作は行われない。
なお、本動作で撮像される画像は、追尾対象である特定の被写体が写し出された動画である。それ故、信号処理回路(26)は、撮像部(11)から、特定の被者体を含んだ連続する複数のフレーム画像を取得する。当該フレーム画像を用いて、CPU(32)は、以下に述べる特定の被写体の追尾制御を行う。
追尾制御を始めるにあたり、先ず、CPU(32)は、追尾対象の被写体における色成分特徴量と形状特徴量とを算出する(ステップS33)。ここで算出される色成分特徴量は、辞書データ(DB1)内の色成分情報の初期値であり、形状特徴量は、辞書データ(DB1)内の形状情報の初期値である。従って、CPU(32)は、これらの初期値を、記憶部(42)内の辞書データ(DB1)に書き込む。
CPU(32)は、いわばデフォルトの設定として、形状特徴量に基づく形状評価値を色成分特徴量に基づく色評価値よりも重視するように決定する(ステップS34)。
ここで、形状評価値を“Vshp”、色評価値“Vclr”とし、形状評価値の重み付け係数を“Cshp”、色評価値の重み付け係数を“Cclr”とした場合、追尾制御にてCPU(32)が用いる追尾評価値“Trac”は、例えば下記の(1)式で表すことができる。
Trac=Cshp×Vshp+Cclr×Vclr ・・・(1)
但し、形状評価値の重み付け係数Cshpと色評価値の重み付け係数Cclrとの合計は、下記の(2)式に示すように、常に“1”となっている。
Cshp+Cclr=1 ・・・(2)
形状評価値を色評価値よりも重視するように決定するということは、(1)式の形状評価値の重み付け係数“Cshp”を、色評価値の重み付け係数“Cclr”よりも高くすることに相当する(Cshp>Cclr)。逆に、色評価値を形状評価値よりも重視するように決定するということは、上式の形状評価値の重み付け係数“Cshp”を、色評価値の重み付け係数“Cclr”よりも低くすることに相当する(Cshp<Cclr)。このように、CPU(32)は、各評価値のいずれかを重視すると決定した場合、最新の各評価値を用い且つ各重み付け係数の大小を変化させて得られた追尾評価値“Trac”を用いて、形状評価値または色評価値のいずれかを重視した追尾制御を、撮像部(11)に対して行う。
ステップS34の後、CPU(32)は、撮像部(11)に追尾撮影を開始させる(ステップS35)。これにより、撮像部(11)のドライバ(18a〜18c)は、設定済みの特定の被写体を自動で追尾して撮像するように、フォーカスレンズ(12)等を動作させる。
動画撮影の間、信号処理回路(26)は、連続する複数のフレーム画像を次々と撮像部(11)から取得し、逐次処理を行っていく。CPU(32)は、連続するフレーム画像毎に、色評価値と形状評価値とを算出する処理を開始する(ステップS36)。
ここで、ステップS36以降において、フレーム画像毎に実行される色評価値と形状評価値との算出方法について具体的に説明する。CPU(32)は、フレーム画像毎に、追尾探索領域(前フレームでの追尾対象の位置の近傍を含む領域)において、所定範囲内を、追尾対象と同じ大きさの矩形から成る探索ブロックでラスタースキャンすると、各探索ブロックにおける形状特徴量と色成分特徴量とを算出する。CPU(32)は、算出した形状特徴量を辞書データ(DB1)に係る形状情報と照合して形状評価値を求め、算出した色成分特徴量を辞書データ(DB1)に係る色成分情報と照合して色評価値を求める。従って、この時点では、形状評価値と色評価値とは、検索ブロック単位で求められる。次いで、CPU(32)は、上式(1)を用いて、検索ブロック毎の追尾評価値“Trac”を算出すると、最も追尾評価値“Trac”の値が大きい位置の検索ブロックを、追尾後の位置(領域)と設定する。このようにして、連続するフレーム毎に、追尾対象の被写体の色評価値及び形状評価値が算出されていく。
追尾後の位置、即ち、最も追尾評価値“Trac”の値が大きい位置の検索ブロックに係る形状評価値及び色評価値は、追尾対象の被写体の形状評価値及び色評価値として、評価値データ(DB2)内に一時的に格納される。
なお、本実施形態では、以下、形状評価値を評価軸とした場合を例示する。
CPU(32)は、フレーム画像毎に、該フレーム画像における形状評価値と、第1形状閾値とを比較する(ステップS37)。形状評価値が第1形状閾値以上である場合(ステップS37のYes)、CPU(32)は、重視するべき評価値の対象を、形状評価値と決定する(ステップS38)。この場合、CPU(32)は、(2)式の条件を満たした状態で、(1)式の形状評価値の重み付け係数“Cshp”を色評価値の重み付け係数“Cclr”よりも高くする(Cshp>Cclr)。これにより、撮像部(11)は、次のフレーム画像からは、色評価値よりも形状評価値を重視して被写体を追尾する。
つまり、ステップS38では、それまでの重視対象が形状評価値である場合は、次のフレーム画像においても引き続き重視対象が形状評価値となり、それまでの重視対象が色評価値である場合は、次のフレーム画像においては重視対象が形状評価値に切り替えられることを意味する。
次いで、CPU(32)は、記憶部(42)内の辞書データ(DB1)を更新する(ステップS39)。この際、辞書データ(DB1)内にて更新されるのは、形状評価値が重視対象であることから形状情報のみとするのではなく、形状情報及び色成分情報の双方である。即ち、CPU(32)は、新たなフレーム画像毎の形状特徴量を、辞書データ(DB1)の形状情報に上書きし、新たなフレーム画像毎の色成分特徴量を、辞書データ(DB1)の色成分情報に上書きする。
ステップS39の後、ステップS37以降の動作が繰り返される。
ステップS37において、形状評価値が第1形状閾値を下回る場合(ステップS37のNo)、CPU(32)は、重視するべき評価値の対象を、色評価値と決定する(ステップS40)。この場合、CPU(32)は、(2)式の条件を満たした状態で、(1)式の色評価値の重み付け係数“Cclr”を形状評価値の重み付け係数“Cshp”よりも高くする(Cclr>Cshp)。これにより、撮像部(11)は、次のフレーム画像からは、形状評価値よりも色評価値を重視して被写体を追尾する。
つまり、ステップS40では、それまでの重視対象が形状評価値である場合は、次のフレーム画像においては重視対象が色評価値に切り替えられ、それまでの重視対象が色評価値である場合は、次のフレーム画像においても引き続き重視対象が色評価値となることを意味する。
次いで、CPU(32)は、記憶部(42)内の辞書データ(DB1)を更新する(ステップS41)。この際、辞書データ(DB1)内にて更新されるのは、色評価値が重視対象であることから色成分情報であって、重視対象でない形状情報は更新対象外である。即ち、CPU(32)は、辞書データ(DB1)の形状情報は更新せず、新たなフレーム画像毎の色成分特徴量を、辞書データ(DB1)の色成分情報に上書きする。
ステップS41の後、CPU(32)は、更に新たなフレーム画像の形状評価値と第2形状閾値とを比較する(ステップS42)。形状評価値が第2形状閾値以上である場合(ステップS42のYes)、CPU(32)は、重視するべき評価値の対象を、形状評価値と決定する(ステップS43)。この場合、CPU(32)は、(2)式の条件を満たした状態で、(1)式の形状評価値の重み付け係数“Cshp”を色評価値の重み付け係数“Cclr”よりも高くする(Cshp>Cclr)。
つまり、ステップS43においては、それまでの重視対象が色評価値であったことから、次のフレーム画像においては重視対象が形状評価値に切り替えられることを意味する。
なお、ステップS42において、形状評価値が第2形状閾値を下回っている場合(ステップS42のNo)、ステップS40以降の動作が繰り返される。
次いで、CPU(32)は、記憶部(42)内の辞書データ(DB1)を更新する(ステップS44)。この際、辞書データ(DB1)内にて更新されるのは、形状評価値が重視対象であることから情報のみとするのではなく、形状情報及び色成分情報の双方である。即ち、CPU(32)は、新たなフレーム画像毎の形状特徴量を、辞書データ(DB1)の形状情報に上書きし、新たなフレーム画像毎の色成分特徴量を、辞書データ(DB1)の色成分情報に上書きする。
撮影ボタン(40)の押下が解除されるまで(ステップS45のNo)、ステップS37以降の動作が繰り返される。撮影ボタン(40)の押下が解除された場合(ステップS45のYes)、図8及び図9に係る一連の動作が終了する。
なお、第1形状閾値及び第2形状閾値は、予め適宜決定された値であることができる。第1形状閾値及び第2形状閾値は同一であってもよいし、異なっていてもよい。
ステップS39、ステップS41及びステップS44をまとめると、形状評価値を重視して被写体が追尾されている間に算出された、新たなフレーム画像の形状特徴量及び色成分特徴量は、共に辞書データ(DB1)に記憶される。色評価値を重視して被写体が追尾されている間に算出された、新たなフレーム画像の形状特徴量は、辞書データ(DB1)には記憶されず、新たなフレーム画像の色成分特徴量は、辞書データ(DB1)に記憶される。
―具体例―
図10及び図11を用いて、追尾撮影制御動作の具体例について説明する。
ここでは、図10に示すように、自律走行可能な自動車の玩具を追尾対象とする場合を例示する。図10は、一例として、自動車の玩具が走行するコースを表した図である。自動車の玩具は、当該玩具を遮るものが何もない通常の環境から走行を開始すると(期間(T1))、その後磨りガラスによって構成されたトンネルの中を走行する(期間(T2))。当該トンネルを抜けると、自動車の玩具は、再び通常の環境下を走行する(期間(T3))。
図11は、横軸を時間、縦軸を評価値とし、図10のコースを走行する自動車の玩具の形状評価値及び色評価値の経時的変化を表したグラフである。図11に示すように、走行開始から期間(T1)の間、自動車の玩具は通常の環境を走行するため、自動車の玩具、即ち追尾対象である特定の被写体の形状評価値及び色評価値は、さほど変化はなく概ね一定である。なお、期間(T1)では、評価値の初期値である形状評価値は、同じく初期値である色評価値よりも高くなっている。特定の被写体の追尾を行うにあたり、期間(T1)では、デフォルトの設定として、形状特徴量に基づく形状評価値が色成分特徴量に基づく色評価値よりも重視される。
期間(T1)から期間(T2)に至ると、走行中の自動車の玩具を取り巻く環境は、通常の環境から磨りガラスによって構成されたトンネルの中へと遷移する。当該トンネルの外から当該トンネル内の自動車の玩具を映した場合、自動車の玩具の形状はぼやけて写し出される。それ故、CPU(32)は、追尾対象である自動車の玩具の色成分の特徴量を特定することは容易であっても、その形状を特定することはやや困難となる。
ここで、走行中の自動車の玩具の筐体の先端がトンネル内にさしかかった時点から当該筐体の末端がトンネル内から抜けるまでの間を、期間(T2)として表す。すると、期間(T2)では、先ず、走行中の自動車の玩具の筐体は、進行方向側である先端部から徐々にトンネルの中に入り、やがて筐体全てがトンネル内に位置することとなる。このような玩具を取り巻く環境の変化に伴って、自動車の玩具の色成分特徴量に基づく色評価値はさほどの変化はないが、形状特徴量に基づく形状評価値は、徐々に低下する。
即ち、期間(T2)の前半では、形状評価値は、自動車の玩具の筐体のうちトンネル内に位置する部分の割合が多くなる程低下し、低下する間に第1形状閾値を下回る。走行開始から形状評価値が第1形状閾値以上であるまでの間は、形状評価値が重視対象であるが、形状評価値が第1形状閾値を下回った時、重視対象は形状評価値から色評価値に切り替わる。
次いで、走行中の自動車の玩具の筐体は、その先端部から徐々にトンネルを抜け、やがて筐体全てがトンネルから脱出する。このような玩具を取り巻く環境の変化に伴って、自動車の玩具の色成分特徴量に基づく色評価値はさほどの変化はないが、形状特徴量に基づく形状評価値は、徐々に上昇する。
即ち、期間(T2)の後半では、形状評価値は、自動車の玩具の筐体のうちトンネル内に位置する部分の割合が少なくなる程上昇し、上昇する間に第2形状閾値以上となる。形状評価値が第2形状閾値以上となった時、重視対象は、色評価値から再度形状評価値に切り替わる。
期間(T3)では、期間(T1)と同様、自動車の玩具は通常の環境を走行する。そのため、特定の被写体の形状評価値及び色評価値は、期間(T1)と同様となる。この期間(T3)においても、形状評価値は依然として第1形状閾値よりも高いため、形状評価値を重視して自動車の玩具の走行が追尾される。
なお、図11では、重視対象を形状評価値から色評価値へと切り替える際の第1形状閾値が、重視対象を色評価値から形状評価値へと切り替える際の第2形状閾値よりも高い場合を例示している。即ち、図11では、第1形状閾値と第2形状閾値とが、ヒステリシスを有するように定義されている。しかし、これに限定されず、第1形状閾値と第2形状閾値とが同一の値であってもよい。
上記図10,図11では、一例として、形状評価値が変化する場合を説明したが、形状評価値の変化量よりも色評価値の変化量の方が極端に大きい場合もあり得る。例えば、通常の環境を走行していた自動車の玩具が赤いスライドガラスの内側に入った場合、自動車の玩具が点滅しながら走行する場合、自動車の玩具の環境が暗い場所に移動した場合、自動車の玩具の筐体と背景とが同色となった場合等が挙げられる。これらのいずれの場合も、色評価値の変化の度合いは、形状評価値の変化の度合いに比べて遙かに大きくなる。このように、色評価値の変化の度合いが所定度合いを超えている場合は、色評価値を重視していていては精度の良い追尾を行うことは困難のため、CPU(32)は、形状評価値の値が形状閾値以上の場合、追尾制御において形状評価値を重視すると良い。
<効果>
本実施形態の追尾制御装置である画像処理装置(100)は、撮像装置(10)の撮像部(11)から、特定の被写体を含んだ連続する複数のフレーム画像を取得すると、連続するフレーム画像毎に、特定の被写体の色成分特徴量に基づく色評価値と、形状特徴量に基づく形状評価値とを算出する。特定の被写体の環境条件の変化に応じて、色成分特徴量及び形状特徴量は変化する。そこで、画像処理装置(100)は、色成分特徴量及び形状特徴量に基づいて、色評価値及び形状評価値のいずれを重視して撮像部(11)に被写体を追尾させるかを切り替える。例えば、被写体の追尾動作は、形状評価値を色評価値よりも重視して行われていた状態から、色評価値を形状評価値よりも重視して行われる状態に遷移する。このように、その時々の被写体の環境に応じて色評価値と形状評価値のどちらを重視して追尾するかを切り替えるため、被写体の環境が刻々と変化したとしても、特定の被写体をできる限り見失うことなく、精度良く被写体を連続して追尾することができる。従って、追尾性能が向上する。
例えば、被写体と同色の環境下に移動した被写体を引き続き追尾するような場合や点滅しながら移動している被写体を追尾する場合、色評価値の変化の度合いは、形状評価値の変化の度合いに比べて大きくなる。このような場合には、色評価値を重視よりも形状評価値を重視する方が被写体を的確に追尾することができる場合がある。そこで、本実施形態では、フレーム画像毎に形状評価値を形状閾値と比較し、形状評価値の値が形状閾値以上となった場合、追尾制御において形状評価値を重視する。これにより、被写体を見失わずに追尾することができる。
例えば、移動して網目の中や磨りガラスの内側に入った被写体を追尾する場合、当該被写体の形状は惚けてしまい、形状特徴量は低下するため、形状評価値を重視していては被写体を的確に追尾できなくなる。そこで、本実施形態では、形状評価値が形状閾値を下回った場合、追尾制御において色評価値を重視する。これにより、被写体を見失わずに追尾することができる。
ここで、本実施形態に係る色評価値とは、特定の被写体の色成分特徴量と辞書データ(DB1)内の色成分情報との照合度である。形状評価値とは、特定の被写体の形状特徴量と辞書データ(DB1)内の形状情報との照合度である。これら評価値のいずれを重視するかを切り替える制御に応じて、辞書データ(DB1)内の色成分情報及び形状情報の少なくとも一部がCPU(32)により更新される。これにより、更新された辞書データ(DB1)を用いて、より実際の状態に即した追尾制御が行われる。
具体的に、形状評価値が重視対象の場合、形状評価値を重視して被写体を追尾させている間に算出される新たなフレーム画像毎の形状特徴量を用いて、辞書データ(DB1)内の形状情報が更新されると共に、新たなフレーム画像毎の色成分特徴量を用いて、辞書データ(DB1)内の色成分情報が更新される。これにより、形状評価値を重視した追尾が行われる場合、常に辞書データ(DB1)内の形状情報及び色成分情報が最新なものとなる。
また、色評価値が重視対象の場合、辞書データ(DB1)内の形状情報の更新は行わず、色評価値を重視して被写体を追尾させている間に算出される新たなフレーム画像毎の色成分特徴量を用いて、辞書データ(DB1)内の色成分情報が更新されるこれにより、色評価値を重視した追尾が行われる場合、常に辞書データ(DB1)内の色成分情報のみが最新なものとなる。
≪第2実施形態≫
上記第1実施形態に係る図8〜図11では、形状評価値を評価軸とした場合について説明したが、本実施形態では、色評価値を評価軸とした場合について説明する。
なお、撮像装置(10)、及び、追尾制御装置である画像処理装置(100)の各構成については、上記第1実施形態と同様である。追尾対象の設定/登録動作及び追尾対象の検出動作も、上記第1実施形態と同様である。従って、以下では、追尾撮影制御動作についてのみ説明する。
<追尾撮影制御動作>
図12及び図13は、本実施形態に係る追尾撮影制御動作の流れを示す図である。なお、図12は図8に対応し、図13は図9に対応している。
図12に示すように、本動作は、図7に係る追尾対象の検出動作を経て(ステップS131)、追尾対象が設定済みの状態となった後に(ステップS132のYes)、行われる。
追尾対象が設定済みの場合(ステップS132のYes)、CPU(32)は、辞書データ(DB1)内の色成分情報及び形状情報それぞれの初期値として、追尾対象の被写体における色成分特徴量と形状特徴量とを算出し、辞書データ(DB1)に書き込む(ステップS133)。
CPU(32)は、いわばデフォルトの設定として、色成分特徴量に基づく色評価値を形状特徴量に基づく形状評価値よりも重視するように決定する(ステップS134)。本実施形態においても、上記第1実施形態にて説明した(1)式及び(2)式が、上記第1実施形態と同様に用いられる。
ステップS134の後、CPU(32)は、撮像部(11)に追尾撮影を開始させる(ステップS135)。これにより、撮像部(11)のドライバ(18a〜18c)は、設定済みの特定の被写体を自動で追尾して撮像するように、フォーカスレンズ(12)等を動作させる。
動画撮影の間、信号処理回路(26)は、連続する複数のフレーム画像を次々と撮像部(11)から取得し、逐次処理を行っていく。CPU(32)は、連続するフレーム画像毎に、色評価値と形状評価値とを算出する処理を開始する(ステップS136)。ステップS136における具体的な算出方法は、上記第1実施形態にて説明したステップS36における算出方法と同様である。
CPU(32)は、フレーム画像毎に、該フレーム画像における色評価値と、第1色閾値とを比較する(ステップS137)。色評価値が第1色閾値以上である場合(ステップS137のYes)、CPU(32)は、重視するべき評価値の対象を、色評価値と決定する(ステップS138)。つまり、CPU(32)は、(1)式の色評価値の重み付け係数“Cclr”を形状評価値の重み付け係数“Cshp”よりも高くする(Cclr>Cshp)。
つまり、ステップS138では、それまでの重視対象が色評価値である場合は、次のフレーム画像においても引き続き重視対象が色評価値となり、それまでの重視対象が形状評価値である場合は、次のフレーム画像においては重視対象が色評価値に切り替えられることを意味する。
次いで、CPU(32)は、記憶部(42)内の辞書データ(DB1)を更新する(ステップS139)。この際、辞書データ(DB1)内にて更新されるのは、色評価値が重視対象であることから色成分情報であって、重視対象でない形状情報は更新対象外である。即ち、CPU(32)は、辞書データ(DB1)の形状情報は更新せず、新たなフレーム画像毎の色成分特徴量を、辞書データ(DB1)の色成分情報に上書きする。
ステップS139の後、ステップS137以降の動作が繰り返される。
ステップS137において、色評価値が第1色閾値を下回る場合(ステップS137のNo)、CPU(32)は、重視するべき評価値の対象を、形状評価値と決定する(ステップS140)。CPU(32)は、(2)式の条件を満たした状態で、(1)式の形状評価値の重み付け係数“Cshp”を色評価値の重み付け係数“Cclr”よりも高くする(Cshp>Cclr)。
つまり、ステップS140では、それまでの重視対象が色評価値である場合は、次のフレーム画像においては重視対象が形状評価値に切り替えられ、それまでの重視対象が形状評価値である場合は、次のフレーム画像においても引き続き重視対象が形状評価値となることを意味する。
次いで、CPU(32)は、記憶部(42)内の辞書データ(DB1)を更新する(ステップS141)。この際、辞書データ(DB1)内にて更新されるのは、形状評価値が重視対象であることから形状情報のみとするのではなく、形状情報及び色成分情報の双方である。即ち、CPU(32)は、新たなフレーム画像毎の形状特徴量を、辞書データ(DB1)の形状情報に上書きし、新たなフレーム画像毎の色成分特徴量を、辞書データ(DB1)の色成分情報に上書きする。
ステップS141の後、CPU(32)は、更に新たなフレーム画像の色評価値と第2色閾値とを比較する(ステップS142)。色評価値が第2色閾値以上である場合(ステップS142のYes)、CPU(32)は、重視するべき評価値の対象を、色評価値と決定する(ステップS143)。CPU(32)は、(2)式の条件を満たした状態で、(1)式の色評価値の重み付け係数“Cclr”を形状評価値の重み付け係数“Cshp”よりも高くする(Cclr>Cshp)。
つまり、ステップS143においては、それまでの重視対象が形状評価値であったことから、次のフレーム画像においては重視対象が色評価値に切り替えられることを意味する。
なお、ステップS142において、色評価値が第2色閾値を下回っている場合(ステップS142のNo)、ステップS140以降の動作が繰り返される。
次いで、CPU(32)は、記憶部(42)内の辞書データ(DB1)を更新する(ステップS144)。この際、辞書データ(DB1)内にて更新されるのは、色評価値が重視対象であることから色成分情報であって、重視対象でない形状情報は更新対象外である。従って、CPU(32)は、新たな色評価値のみを、評価値データ(DB2)に記憶させる。CPU(32)は、辞書データ(DB1)の形状情報は更新せず、新たなフレーム画像毎の色成分特徴量を、辞書データ(DB1)の色成分情報に上書きする。
撮影ボタン(40)の押下が解除されるまで(ステップS145のNo)、ステップS137以降の動作が繰り返される。撮影ボタン(40)の押下が解除された場合(ステップS145のYes)、図12及び図13に係る一連の動作が終了する。
なお、第1色閾値及び第2色閾値は、予め適宜決定された値であることができる。第1色閾値及び第2色閾値は同一であってもよいし、異なっていてもよい。
<効果>
本実施形態は、上記第1実施形態とは異なる以下の効果を奏する。
本実施形態では、フレーム画像毎に色評価値を色閾値と比較し、任意のフレーム画像において色評価値が色閾値以上である場合、次のフレーム画像からは形状評価値よりも色評価値を重視した追尾制御が行われる。即ちここでは、色評価値が色閾値以上であるような環境下に被写体が存在する場合は、追尾制御において色評価値を重視することで、被写体を見失わずに追尾することができる。
逆に、本実施形態では、任意の前記フレーム画像において色評価値が色閾値を下回った場合、次のフレーム画像からは色評価値よりも形状評価値を重視した追尾制御が行われる。即ちここでは、色評価値が色閾値を下回るような環境下に被写体が存在する場合は、追尾制御において形状評価値を重視することで、被写体を見失わずに追尾することができる。
≪その他の実施形態≫
上記第1及び第2実施形態では、形状評価値を重視対象とする場合、図9のステップS39,S44及び図13のステップS141では、形状評価値のみならず色評価値も更新されると説明した。しかし、形状評価値を重視対象とする場合、辞書データ(DB1)内の色成分情報は更新せず形状情報のみが更新されてもよい。色成分情報を更新せず形状情報のみを更新する手段は、通常の環境を走行していた自動車の玩具が赤いスライドガラスの内側に入った場合、自動車の玩具が点滅しながら走行する場合に、好適である。これらの場合、色評価値の変化の度合いが形状評価値に比べて非常に大きく、色評価値が不連続的に変化するため、色成分特徴量の変化の度合いは著しいと言える。変化が著しい色成分特徴量に基づいて辞書データ(DB1)内の色成分情報を更新すると、例えば追尾対象の検出に悪影響が及ぶ場合があり得る。それ故、追尾精度を維持するために、色成分情報を更新せず形状情報のみを更新する手段が採用されてもよい。
追尾制御装置である画像処理装置(100)は、動画が撮像される場合のみならず、静止画が複数枚連続して撮像されるような場合にも適用することができる。
追尾制御装置は、図1において、信号処理回路(26)、CPU(32)及び記憶部(42)のみを備えた構成であることができる。
辞書データ(DB1)の更新動作は必須ではない。
形状閾値及び色閾値は、固定値ではなく、評価値に基づいて適宜補正されてもよい。