本発明の実施形態について、以下に図面を参照して説明する。最初に、本発明における撮像装置の一例について説明する。なお、以下に説明する撮像装置は、デジタルカメラなどの音声、動画及び静止画の記録が可能なものである。
<<撮像装置>>
まず、撮像装置の構成について、図1を参照して説明する。図1は、本発明の実施形態における撮像装置の構成を示すブロック図である。
図1に示すように、撮像装置1は、入射される光学像を電気信号に変換するCCD(Charge Coupled Device)またはCMOS(Complimentary Metal Oxide Semiconductor)などの固体撮像素子から成るイメージセンサ2と、被写体の光学像をイメージセンサ2に結像させるとともに光量などの調整を行うレンズ部3と、を備える。レンズ部3とイメージセンサ2とで撮像部が構成され、この撮像部によって画像信号が生成される。なお、レンズ部3は、ズームレンズやフォーカスレンズなどの各種レンズ(不図示)や、イメージセンサ2に入力される光量を調整する絞り(不図示)などを備える。
さらに、撮像装置1は、イメージセンサ2から出力されるアナログ信号である画像信号をデジタル信号に変換するとともにゲインの調整を行うAFE(Analog Front End)4と、入力される音声を電気信号に変換する集音部5と、集音部5から出力されるアナログ信号である音響信号をデジタル信号に変換するADC(Analog to Digital Converter)6と、ADC6から出力される音響信号に対して各種音響処理を施して出力する音響処理部7と、AFE4から出力される画像信号に対して各種画像処理を施す画像処理部8と、画像処理部8から出力される画像信号に対してJPEG(Joint Photographic Experts Group)圧縮方式などの静止画用の圧縮符号化処理を施したり画像処理部8から出力される画像信号と音響処理部7からの音響信号とに対してMPEG(Moving Picture Experts Group)圧縮方式などの動画用の圧縮符号化処理を施したりする圧縮処理部9と、圧縮処理部9で圧縮符号化された圧縮符号化信号を記録する外部メモリ11と、画像信号を外部メモリ11に記録したり読み出したりするドライバ部10と、ドライバ部10において外部メモリ11から読み出した圧縮符号化信号を伸長して復号する伸長処理部12と、を備える。また、画像処理部8は、入力される画像信号から追尾物体を検出する追尾処理を行う追尾処理部80を備える。なお、追尾処理部80の構成の詳細については後述する。
また、撮像装置1は、伸長処理部12で復号された画像信号をモニタなどの表示装置(不図示)で表示可能な形式の信号に変換する画像信号出力回路部13と、伸長処理部12で復号された音響信号をスピーカなどの再生装置(不図示)で再生可能な形式の信号に変換する音響信号出力回路部14と、を備える。
また、撮像装置1は、撮像装置1内全体の動作を制御するCPU(Central Processing Unit)15と、各処理を行うための各プログラムを記憶するとともにプログラム実行時の信号の一時保管を行うメモリ16と、撮像を開始するボタンや各種設定の決定を行うボタンなどのユーザからの指示が入力される操作部17と、各部の動作タイミングを一致させるためのタイミング制御信号を出力するタイミングジェネレータ(TG)部18と、CPU15と各部との間で信号のやりとりを行うためのバス19と、メモリ16と各部との間で信号のやりとりを行うためのバス20と、を備える。
なお、外部メモリ11は画像信号や音響信号を記録することができればどのようなものでも構わない。例えば、SD(Secure Digital)カードのような半導体メモリ、DVDなどの光ディスク、ハードディスクなどの磁気ディスクなどをこの外部メモリ11として使用することができる。また、外部メモリ11を撮像装置1から着脱自在としても構わない。
次に、撮像装置1の基本動作について図1を参照して説明する。まず、撮像装置1は、レンズ部3より入射される光をイメージセンサ2において光電変換することによって、電気信号である画像信号を取得する。そして、イメージセンサ2は、TG部18から入力されるタイミング制御信号に同期して、所定のフレーム周期(例えば、1/30秒)で順次AFE4に画像信号を出力する。そして、AFE4によってアナログ信号からデジタル信号へと変換された画像信号は、画像処理部8に入力される。画像処理部8は、入力される画像信号に対して階調補正や輪郭強調等の各種画像処理を施す。また、メモリ16はフレームメモリとして動作し、画像処理部8が処理を行なう際に画像信号を一時的に保持する。
また、このとき画像処理部8に入力される画像信号に基づき、レンズ部3において、各種レンズの位置が調整されてフォーカスの調整が行われたり、絞りの開度が調整されて露出の調整が行われたりする。このフォーカスや露出などの各種調整は、それぞれ最適な状態となるように所定のプログラムに基づいて自動的に行われたり、ユーザの指示に基づいて手動で行われたりする。また、追尾処理部80は、画像処理部8に入力される画像信号に対して追尾処理を行う。なお、追尾処理部80の動作の詳細については後述する。
動画を記録する場合であれば、画像信号だけでなく音響信号も記録される。集音部5で集音されて電気信号に変換されて出力される音響信号は、ADC6に入力されてデジタル化される。デジタル化された音響信号は音響処理部7に入力されて、ノイズ除去などの各種音響処理が施される。そして、画像処理部8から出力される画像信号と、音響処理部7から出力される音響信号と、はともに圧縮処理部9に入力され、圧縮処理部9において所定の圧縮方式で圧縮される。このとき、画像信号と音響信号とは時間的に関連付けられており、再生時に画像と音とがずれないように構成される。そして、圧縮された画像信号及び音響信号はドライバ部10を介して外部メモリ11に記録される。
一方、静止画のみを記録する場合であれば、画像信号が圧縮処理部9において所定の圧縮方法で圧縮され、外部メモリ11に記録される。なお、動画を記録する場合と静止画を記録する場合とで、画像処理部8において行われる処理を異なるものとしても構わない。
外部メモリ11に記録された圧縮後の画像信号及び音響信号は、ユーザの指示に基づいて伸長処理部12に読み出される。伸長処理部12では、圧縮された画像信号及び音響信号を伸長し、画像信号を画像信号出力回路部13、音響信号を音響信号出力回路部14にそれぞれ出力する。そして、画像信号出力回路部13や音響信号出力回路部14において、表示装置やスピーカで表示または再生可能な形式の信号にそれぞれ変換されて出力される。
また、本実施形態の撮像装置1は、動画または静止画の記録を開始する前(プレビュー時)や動画の記録時などに、撮像して得られた画像(いわゆるスルー画像)を表示装置に表示して、撮像前または撮像中の画像信号の状態(例えば、画角)をユーザに確認させる。画像処理部8は、この表示を行うための画像信号を生成してバス20を介し画像信号出力回路部13に出力し、画像信号出力回路部13は、表示用の画像信号を表示装置で表示可能な形式の信号に変換して出力する。
なお、表示装置やスピーカは、撮像装置1と一体となっているものでも構わないし、別体となっており、撮像装置1に備えられる端子とケーブル等を用いて接続されるようなものでも構わない。ただし、上記の表示用の画像信号を表示する表示装置は、撮像装置1と一体となっているものであると、撮像の都合上好ましい。以下では、表示装置が撮像装置1と一体となるモニタである場合について説明する。
<<追尾処理部>>
次に、図1に示した追尾処理部80について各実施例を挙げるとともに、図面を参照してそれぞれ説明する。なお、以下では説明の具体化のために、追尾処理部80で処理される画像信号を画像として表現する。特に、追尾処理部80に入力されて各種処理が行われる画像信号を「入力画像」とする。また、上記の表示用の画像信号であって、ユーザに追尾処理の初期設定(特に、後述する追尾値の設定)を行わせるために追尾処理を開始する前にモニタに表示する画像信号を「出力画像」とする。また、追尾すべき被写体を追尾物体とし、追尾物体の一部分であり追尾処理部80によって検出が行われる追尾物体の特徴部分を追尾対象とする。
また、追尾処理部80は、追尾対象を構成する画素の信号値である追尾値を入力画像から検出することにより、追尾処理を行う。追尾値として、どのような種類の信号値(例えば、R(赤)G(緑)B(青)の各値、輝度値、H(色相)S(彩度)V(明度)で表される信号のHの値)を用いることも可能であるが、以下では説明の具体化のため、色相値(以下、単に色とも呼ぶ)を用いる場合を例に挙げて説明する。また、以下の説明では色相値を角度などの値ではなく、単純な色の種類(例えば、赤色、緑色、青色など)を用いて簡易的に表現する。なお、後述する信号値や候補値なども同様とする。
<第1実施例>
最初に、追尾処理部の第1実施例について図面を参照して説明する。図2は、第1実施例の追尾処理部の構成を示すブロック図である。図2に示すように、本実施例の追尾処理部80は、入力画像に基づいて追尾値と成り得る候補値を設定するとともに当該候補値をユーザに提示する出力画像を生成する初期設定部81と、入力画像から追尾値を有する画素を検出することで追尾対象の検出を行う追尾対象検出部82と、を備える。
追尾処理部80は、最初に初期設定部81が、入力画像に基づいて1以上の候補値を設定するとともに、候補値をユーザに提示するための出力画像を生成する。生成される出力画像はモニタに表示され、ユーザに対して候補値が提示される。また、初期設定部81から追尾対象検出部82に対して、設定された候補値を示す候補値情報や、候補値を有する画素の重心位置(以下、候補値重心とする)を示す重心情報が出力される。なお、初期設定部81の構成及び動作や出力画像の詳細については、後述する。
出力画像を確認したユーザは、提示された候補値の中から追尾値にすべきものを選択し、操作部17を介して選択結果である追尾値設定指示を追尾対象検出部82に入力する。追尾対象検出部82は、入力される追尾値設定指示に基づいて追尾値を設定するとともに、順次入力される入力画像中から追尾値を有する画素を検出することで追尾処理を行い、入力画像中の追尾対象の情報(例えば、追尾対象の位置や大きさ)を示す追尾対象情報を順次出力する。
追尾対象検出部82は、入力画像の全体から追尾値を有する画素を検出しても構わないが、ある一定の領域(以下、探索領域とする)内から検出を行うこととすると、迅速かつ精度良く検出を行うことが可能となるため好ましい。例えばこの探索領域を、追尾開始時であれば後述する重心情報などに基づいて設定し、追尾処理中であれば前回の追尾対象の検出結果(検出された追尾対象の位置や大きさ)に基づいて設定することとしても構わない。なお、追尾対象検出部82が行う追尾処理はこの例に限られるものではなく、どのような方法で追尾処理を行っても構わない。
以上のようにして、追尾対象検出部82により生成される追尾対象情報は、入力画像中の追尾対象の位置(即ち、追尾物体の位置)を示すものとなる。撮像装置1は、この追尾対象情報に基づいて種々の処理を行う。例えば、焦点や露出などの撮像部の設定制御や、入力画像の画像処理などを行う。
次に、追尾処理部80に備えられる初期設定部81の構成の詳細について図面を参照して説明する。図3は、第1実施例の追尾処理部に備えられる初期設定部の構成を示すブロック図である。
図3に示すように、初期設定部81は、ユーザから入力される注目領域指定指示に基づいて入力画像中に注目領域を設定し当該注目領域内の画像(以下、注目領域画像とする)を取得する注目領域画像取得部811と、注目領域画像取得部811で取得された注目領域画像内の画素の信号値の分布を算出する信号値分布算出部812と、信号値分布算出部812で算出された信号値の分布に基づいて1以上の候補値を設定する候補値設定部813と、候補値設定部813で設定された候補値のそれぞれに対して優先順位を設定する優先順位設定部814と、候補値設定部813で設定されたそれぞれの候補値を有する画素のそれぞれの重心の位置を算出する候補値重心算出部815と、候補値設定部813で設定されたそれぞれの候補値を有する画素が注目領域画像中で占めるそれぞれの領域(以下、候補値領域とする)を算出する候補値領域算出部816と、注目領域画像を拡大した画像(以下、注目領域拡大画像とする)を生成する注目領域画像拡大部817と、候補値領域算出部816で算出されるいずれかの候補値領域に相当する注目領域拡大画像中の領域を強調処理する強調処理部818と、強調処理部818で強調処理された注目領域拡大画像(以下、強調画像とする)を入力画像に重畳させて出力画像を生成する画像合成部819と、を備える。
候補値設定部813は、設定した候補値を示す候補値情報を、候補値重心算出部815及び候補値領域算出部816に対して出力するだけでなく、図2に示したように追尾対象検出部82にも出力する。また、強調処理部818には、優先順位設定部814が設定した優先順位の情報や、ユーザが操作部17を介して入力する切替指示も入力される。強調処理部818は、優先順位に従って、切替指示が入力されるごとに強調処理する候補値の切り替えを行う。
また、初期設定部81の動作の詳細について図面を参照して説明する。図4は、第1実施例の追尾処理部に備えられる初期設定部の動作を示すフローチャートである。
図4に示すように、初期設定部81は、動作を開始した後ユーザから操作部17を介して注目領域指定指示が入力されるまで待機する(STEP1)。注目領域指定指示が入力されるまでの間は(STEP1、NO)、例えば撮像により得られた画像(スルー画像)が順次モニタに表示され、ユーザはこれを確認する。ユーザから注目領域指定指示が入力されると(STEP1、YES)、初期設定部81は、その際に撮像により得られている画像を入力画像として取得する(STEP2)。
例えば操作部17がモニタに備えられるタッチパネルで構成される場合、注目領域指定指示を、モニタに表示される画像(即ち、入力画像)中のユーザがタッチした点を示すものとしても構わない。注目領域画像取得部811は、入力画像中の注目領域指定指示によって示される点に基づいた領域(例えば、当該点を中心とした所定の大きさの領域)を注目領域として設定する(STEP3)。なお、注目領域指定指示を、入力画像中の点を示すものとしたが、領域を示すものとしても構わなく、注目領域を直接示すものとしても構わない。
ここで、入力画像と設定される注目領域の一例を図5に示す。図5に示す入力画像IP1は、追尾物体である人Hが含まれており、当該人Hの顔を略中心として注目領域FA1が設定された場合について示したものである。また、入力画像IP1の背景は水色であり、髪が茶色、上着が緑色、顔が肌色となる。なお、以下ではこの入力画像IP1が取得されて注目領域FA1が設定された場合を例示して、具体的に説明する。
注目領域画像取得部811は、入力画像のSTEP3で設定された注目領域内に含まれる画像である注目領域画像を取得する(STEP4)。例えば図6に示すように、図5の入力画像IP1中の注目領域FA1内の画像を、注目領域画像FAP1として取得する。取得された注目領域画像FAP1は、後の処理のために例えば図1のメモリ16に保持される。
信号値分布算出部812は、STEP4で取得された注目領域画像FAP1の信号値の分布を算出する(STEP5)。例えば、図7に示すような信号値の度数分布(ヒストグラム)を算出する。図7は、図6に示す注目領域画像の信号値の分布の一例を示す図であり、信号値のヒストグラムを示したものである。
候補値設定部813は、STEP5で得られた信号値の分布に基づいて、1以上の候補値を設定する(STEP6)。例えば、度数が大きく周囲から突出している信号値を候補値として設定する。図7では茶色、肌色、緑色及び水色がこの条件に該当する。ただし、背景を示す信号値である水色については、除外することとすると好ましい。例えば、入力画像IP1に対して背景領域を設定し、当該背景領域内で度数が大きい信号値を候補値から除外することにより、背景の信号値を除外しても構わない。なお、背景領域として例えば、入力画像IP1中の注目領域FA1及びその周囲の領域、入力画像IP1中の注目領域FA1を除く全領域、入力画像IP1中の中央部の所定の領域を除く全領域、入力画像IP1の全領域、などを設定することが可能である。また、以下では候補値設定部813が、候補値として肌色、緑色及び茶色を選択した場合を例示して、具体的に説明する。
優先順位設定部814は、STEP6で設定された候補値のそれぞれに対して優先順位を設定する(STEP7)。優先順位とは、候補値が追尾値として設定され得る可能性の高さ(当該候補値が追尾物体を示す信号値である可能性の高さ、当該候補値を追尾値としたときの追尾処理の実行のし易さ、などとも表現し得る)を順位で示したものであり、例えば、STEP1でユーザから与えられる注目領域指定指示の位置(例えばタッチパネルで指示される点の位置)に近い位置の画素の信号値となる候補値ほど順位が上位のものとなり、遠いものほど順位が下位となる。また、度数が大きい信号値となる候補値ほど順位が上位のものとなり、小さい信号値ほど下位のものとなる。以下では、優先順位が1位となる候補値(第1候補値)が肌色、2位の候補値(第2候補値)が緑色、3位の候補値(第3候補値)が茶色である場合を例示して、具体的に説明する。
候補値重心算出部815は、STEP6で設定されたそれぞれの候補値について候補値重心を算出する(STEP8)。候補値重心の算出方法の一例について、図8を参照して説明する。図8は、候補値重心の算出方法の一例を示す図であり、図6に示す注目領域画像FAP1について肌色(候補値)の候補値重心を算出する場合を例示したものである。
図8では、候補値重心の算出に用いる注目領域画像FAP1内の画素を円で示している。白塗りの円Eは信号値が肌色ではない画素を示すものであり、黒塗りの円CEは信号値が肌色である画素を示すものである。また、格子状のハッチングを付した円M1は、候補値重心を示すものである。図8に示すように、候補値重心M1は、信号値が肌色である画素CEの重心の位置となる。なお、算出に用いる画素C,CEは、注目領域画像FAP1内の全ての画素としても構わないし、所定の間隔ごとの画素としても構わない。また、算出される候補値重心は第1候補値のみに限られず、他の候補値についても同様に算出されることとする。
候補値領域算出部816は、STEP6で設定されたそれぞれの候補値について候補値領域を算出する(STEP9)。候補値領域の算出方法の例について図9を参照して説明する。図9(a),(b)は、候補値領域の算出方法の例を示す図であり、図6に示す注目領域画像FAP1について肌色(候補値)の候補値領域を算出する場合を例示したものである。なお、図9(a)と図9(b)とは、異なる候補値領域の算出方法を示すものである。また、図9では、図8と同様の方法で候補値領域の算出に用いる画素(C,CE)を表示しているが、図示の簡略化のため候補値領域から十分に遠い画素については図示していない。
図9(a)に示す算出方法では、肌色を示す画素の中で最も外側の画素を囲んで形成される矩形の領域を、候補値領域NAとして算出する。一方、図9(b)に示す算出方法では、図9(a)に示した矩形の領域内から肌色以外を示す画素を除き、画素を除いたことによって外側となる肌色の画素に沿うように矩形から変形して形成される領域(即ち、肌色を示す画素の中で最も外側の画素に沿って形成される領域)を、候補値領域NAとして算出する。
図9(a)の候補値領域NAの算出方法では、容易に候補値領域を形成することが可能となる。一方、図9(b)の候補値領域NAの算出方法では、候補値を示す画素に沿った形(即ち、候補値の部位の輪郭)となる候補値領域を形成することが可能となる。なお、算出に用いる画素C,CEは、注目領域画像FAP1内の全ての画素としても構わないし、所定の間隔ごとの画素としても構わない。また、算出される候補値領域は第1候補値のみに限られず、他の候補値についても同様に算出されることとする。
注目領域画像拡大部817は、STEP4において注目領域画像取得部811によって取得された注目領域画像FAP1(図6参照)を、例えば補間処理などによって拡大して注目領域拡大画像を生成する(STEP10)。また、強調処理部818は、STEP10で生成された注目領域拡大画像中の第1候補値の候補値領域を強調処理して強調画像を生成する。さらに画像合成部819は、強調処理部818で生成された強調画像をSTEP2で取得した入力画像に重畳させて、出力画像を生成する(STEP11)。
STEP11で生成される出力画像の一例について図面を参照して説明する。図10は、出力画像の一例を示す図であり、図6に示す注目領域画像を拡大して肌色(第1候補値)の候補値領域NA1を強調処理した強調画像LP1を入力画像に重畳させた出力画像OP1を示すものである。また。図10は、図9(b)に示す方法で算出された候補値領域NA1を強調処理したものであり、強調処理として候補値領域NA1の輪郭を太線枠表示する処理を採用した場合について示したものである。
STEP11で生成される出力画像OP1はモニタに表示され、ユーザに確認される。出力画像を確認したユーザは、強調処理する候補値を切り替えるか否かを判断し、必要に応じて切替指示を入力する(STEP12)。ユーザが強調処理する候補値を切り替えると判断する場合、ユーザは操作部17を介して切替指示を入力する(STEP12、YES)。切替指示が入力されると、強調処理部818は、STEP10で得られた注目領域拡大画像に対して、前回強調処理した候補値(当該処理が1回目であれば、第1候補値)とは異なる候補値の候補値領域を強調処理した強調画像を生成する。そして、当該強調画像をSTEP2で取得した入力画像に重畳させて出力画像を生成する(STEP13)。
このように出力画像を生成する場合、出力画像を構成する強調画像及び入力画像のそれぞれは静止画になる。なお、注目領域拡大画像と入力画像とをメモリ16などに保持するとともに、必要に応じて強調処理部818や画像合成部819に読み出して出力画像を生成することとしても構わない。
STEP13では、例えば現在強調処理している候補値の次に優先順位が大きい候補値の候補値領域を、強調処理するように切り替える。ただし、現在強調処理している候補値の優先順位が最も低い場合は、第1候補値の候補値領域を強調処理するように切り替える。強調処理する候補値の切替動作の具体例について、図11を参照して説明する。図11(a),(b)は、図10に示す出力画像から強調処理する候補値を順に切り替えた場合に生成される出力画像の例を示す図である。
本例では、図10に示す出力画像OP1がモニタに表示されている時に切替指示がユーザから入力されると、図11(a)に示すような、第2候補値(緑色)となる候補値領域NA2が強調処理された強調画像LP2が入力画像に重畳されて成る出力画像OP2が、出力画像OP1に替わってモニタに表示される。また図11(a)に示す出力画像OP2がモニタに表示されている時に切替指示がユーザから入力されると、図11(b)に示すような、第3候補値(茶色)となる候補値領域NA3が強調処理された強調画像LP3が入力画像に重畳されて成る出力画像OP3が、出力画像OP2に替わってモニタに表示される。さらに、上述のように第3候補値(茶色)が最も優先順位が低い候補値であるため、図11(b)に示す出力画像OP3が表示されている時に切替指示がユーザから入力されると、図10に示したような第1候補値(肌色)となる候補値領域NA1が強調処理された強調画像LP1が入力画像に重畳されて成る出力画像OP1が、出力画像OP3に替わってモニタに表示される。なお、上述のように注目領域拡大画像及び入力画像は静止画である。そのため、図10及び図11(a),(b)の出力画像OP1〜OP3中の強調画像LP1〜LP3は、強調処理される候補地領域NA1〜NA3が異なるのみで、同一の画像となる。また、出力画像OP1〜OP3中の入力画像も同様であり、同一の画像となる。
一方、切替指示が入力されない場合(STEP12、NO)、次に追尾値設定指示が入力されるか否かを確認する(STEP14)。追尾値設定指示も入力されなければ(STEP14、NO)、STEP12に戻り切替指示の入力の有無を確認する。この場合、入力画像も強調画像も変化しないため、同一の出力画像が継続して表示されることとなる。
これに対して、追尾値設定指示が入力されれば(STEP14、YES)、追尾対象検出部82が、追尾値設定指示に示される追尾値を用いて追尾処理を開始し、初期設定部81は動作を終了する。なお、追尾値設定指示を単純な決定指示(例えば、操作部17であるタッチパネル上の決定ボタンが触れられたり、物理的な決定ボタンが押下されたりして入力される指示)として、当該指示の入力時に強調処理されている候補値がそのまま追尾値として設定されるように構成しても構わない。また、追尾対象検出部82は、最初に追尾値を有する画素を検出する際に、重心情報を利用する。例えば、追尾対象検出部82が、追尾値として設定された候補値の候補値重心に基づいて最初の探索領域を設定する。より具体的には、候補値重心を最初に設定する探索領域の中心位置とする。
以上のように構成すると、出力画像OP1〜OP3を表示してユーザに候補値を提示するとともに、提示した候補値から追尾値が選択されることによって、追尾値が設定されることになる。そのため、精度良く追尾処理を行うことが可能となる好適な追尾値を、容易に設定することが可能となる。
また、ユーザが指示する注目領域FA1の画像(注目領域画像FAP1)の信号値の分布に基づいて候補値を設定したり、背景領域を示す信号値を当該候補値から除外したりすることによって、追尾物体を示す信号値が候補値として設定される可能性を高くすることが可能となる。さらに、候補値に優先順位を付加することによって、ユーザに追尾値を選択させ易くすることが可能となる。
また、候補値領域NA1〜NA3を強調処理した出力画像OP1〜OP3を表示することにより、当該候補値を追尾値として設定した場合に追尾される部分をユーザが明確に把握することが可能となる。特に、強調画像LP1〜LP3を入力画像に重畳させた出力画像OP1〜OP3を表示することにより、上記の強調処理の効果を向上させることが可能となる。即ち、追尾される部分をさらに明確にユーザが把握することが可能となる。
なお、図4、図10及び図11(a),(b)において、出力画像OP1〜OP3中の入力画像を静止画にする場合について説明したが、動画(例えばスルー画像)にしても構わない。この場合、例えばSTEP13と、STEP14のNOからSTEP12に戻る時とにおいて、撮像されて初期設定部81に順次入力される入力画像を画像合成部819が取得するとともに、当該入力画像に強調画像LP1〜LP3を重畳することで、出力画像を生成する。
また、図4、図10及び図11(a),(b)において、出力画像OP1〜OP3中の強調画像を静止画にする場合について説明したが、動画にしても構わない。この場合、例えばSTEP2〜4及びSTEP8〜10の動作を、STEP13と、STEP14のNOからSTEP12に戻る時とに行い、新たに生成した注目領域拡大画像に強調処理を施した新たな強調画像を入力画像に重畳して、出力画像を生成する。
このように構成すると、強調する候補値領域が動的に更新される動画の強調画像を生成することが可能となる。さらに、STEP13と、STEP14のNOからSTEP12に戻る時とに行う上記の動作に加えて、STEP5〜7を実行しても構わない。このように構成すると、最初にSTEP6で設定した候補値を信号値とする画素が、注目領域内から無くなってしまう(または極端に少なくなる)ことを抑制し、候補値を動的に更新することが可能となる。
また、強調画像を動画とする場合において、注目領域を、STEP1の注目領域指定指示に基づいて設定される所定の位置の領域で固定しても構わない。この場合、注目領域画像取得部811が、順次入力される入力画像から所定の位置の領域の画像を切り出すことで、順次注目領域画像を取得する。
一方、注目領域画像取得部811が取得する注目領域の入力画像中の位置を可変とすることも可能である。可変とする場合、例えば所定の候補値(強調処理中の候補値や第1候補値など)の候補値重心や候補値領域などに基づいて順次注目領域を設定しても構わないし、ユーザからの注目領域指定指示の入力を許容する構成としても構わない。ただし、第1実施例では各候補値で共通の注目領域が設定されることとする。なお、後述する第2実施例では、注目領域を候補値毎に設定する(図15参照)。
<第2実施例>
次に、追尾処理部の第2実施例について図面を参照して説明する。図12は、第1実施例の追尾処理部の構成を示すブロック図であり、第1実施例について示した図2に相当するものである。なお、図2と図12とで同様となる部分については同じ符号を付し、その詳細な説明については省略する。
図12に示すように、本実施例の追尾処理部80aは、初期設定部81aと、追尾対象検出部82と、を備える。ただし、初期設定部81aから出力されて追尾対象検出部82に入力される候補値重心を示す重心情報が、順次更新されたものとなる点において第1実施例とは異なる。なお、初期設定部81aの構成及び動作の詳細については後述する。
次に、第2実施例の初期設定部81aの構成の詳細について図面を参照して説明する。図13は、第2実施例の追尾処理部に備えられる初期設定部の構成を示すブロック図であり、第1実施例について示した図3に相当するものである。なお、図3と図13とで同様となる部分については同じ符号を付し、その詳細な説明については省略する。
図13に示すように、初期設定部81aは、注目領域画像取得部811aと、信号値分布算出部812と、候補値設定部813と、優先順位設定部814と、候補値重心算出部815aと、候補値領域算出部816aと、注目領域画像拡大部817と、強調処理部818と、画像合成部819と、を備える。ただし、出力画像が表示されてユーザが提示された候補値の中から追尾値を選択する際に、注目領域画像取得部811a、候補値重心算出部815a及び候補値領域算出部816aのそれぞれが、順次かつ候補値ごとに注目領域画像を取得したり、候補値重心や候補値領域を算出及び更新したりする点で第1実施例とは異なる。
初期設定部81aの動作について図面を参照して説明する。図14は、第2実施例の追尾処理部に備えられる初期設定部の動作を示すフローチャートであり、第1実施例について示した図4に相当するものである。なお、第1実施例の初期設定部81と第2実施例の初期設定部81aとでは、最初の出力画像(第1候補値の候補値領域を強調処理した強調画像を入力画像に重畳させて成る出力画像)を生成するまでの動作は同様のものとなる(STEP1〜11)。そのため、図14ではSTEP1〜STEP11の動作を省略して示す。なお、以下では説明の具体化のため、第1実施例において説明した条件と同様の条件で初期設定部81aが動作するものとして説明する。具体的には、STEP1〜11において、図5に示す入力画像IP1が得られるとともに図6及び図7に示すように第1候補値(肌色)、第2候補値(緑色)及び第3候補値(茶色)が設定され、STEP11で図10に示す出力画像OP1が生成される場合を例に挙げて説明する。
図14に示すように、本実施例の初期設定部81aは、上述の第1実施例の初期設定部81と同様の動作を行い、例えば図10に示すような第1候補値の候補値領域NA1を強調処理した強調画像LP1を入力画像に重畳させた出力画像OP1を生成する(STEP1〜11)。ただし、本実施例の初期設定部81aは、ユーザが追尾値を設定するまでの間に候補値領域や候補値重心を順次更新する点において、第1実施例の初期設定部81とは異なる。以下、この更新動作について説明する。
初期設定部81aは、STEP1〜11で出力画像OP1を生成した後、入力画像を取得する(STEP20)。そして、注目領域画像取得部811aが、候補値ごとに注目領域を設定する(STEP21)。特に、重心情報が示すそれぞれの候補値重心に基づいて、それぞれの注目領域を設定する。
STEP21の注目領域の設定方法について、図面を参照して説明する。図15は、入力画像及びそれぞれの候補値に対応するそれぞれの注目領域の一例を示す図であり、第1実施例について示した図5に相当するものである。図15中、第1候補値(肌色)に対応する注目領域を注目領域FA11、第2候補値(緑色)に対応する注目領域を注目領域FA12、第3候補値(茶色)に対応する注目領域を注目領域FA13とする。
注目領域画像取得部811aは、図15に示すようにそれぞれの候補値に対応するそれぞれの注目領域FA11〜FA13を、入力画像IP10中のSTEP8(2回目以降のSTEP21では後述するSTEP23)で算出されたそれぞれの候補値重心に基づいた位置(例えば、候補値重心を中心とした位置)にそれぞれ設定する。なお、それぞれの注目領域FA11〜FA13の大きさは、所定の大きさとしても構わないし、図15に示すようにそれぞれの候補値に応じたものとしても構わない。注目領域FA11〜FA13を候補値に応じた大きさとする場合、例えば当該候補値を有する画素が含まれるように注目領域FA11〜FA13の大きさを調整しても構わないし、STEP9(2回目以降のSTEP21では後述するSTEP24)で算出されたそれぞれの候補値領域に基づいた大きさとしても構わない。
また、注目領域画像取得部811aは、入力画像IP10中の、STEP21で設定される注目領域FA11〜FA13内の画像を、それぞれの候補値に対応する注目領域画像としてそれぞれ取得する(STEP22)。それぞれの注目領域画像について図16を参照して説明する。図16(a)〜(c)は、図15に示す入力画像及びそれぞれの注目領域から得られるそれぞれの注目領域画像を示す図であり、第1実施例について示す図6に相当するものである。なお、図16(a)に示す注目領域画像FAP11は、図15の入力画像IP10の注目領域FA11を示す画像であり、図16(b)に示す注目領域画像FAP12は、図15の入力画像IP10の注目領域FA12を示す画像であり、図16(c)に示す注目領域画像FAP13は、図15の入力画像IP10の注目領域FA13を示す画像である。
図16(a)〜(c)に示す注目領域画像FAP11〜FAP13は、全て同じ大きさとして示しているが、注目領域FA11〜FA13に応じた大きさ(例えば、切り出したまま)としても構わない。また、図16(a)〜(c)に示すように、それぞれの注目領域FA11〜FA13から得た画像を適宜拡大または縮小することにより、それぞれの大きさを揃えても構わない。
候補値重心算出部815aは、STEP22で取得したそれぞれの注目領域画像FAP11〜FAP13中の信号値がそれぞれの候補値を有する画素CEを用いて、新たな候補値重心をそれぞれ算出して更新する(STEP23)。これにより、候補値重心算出部815aから出力される重心情報が更新され、当該重心情報がそれぞれの新たな候補値重心を示すものとなる。
候補値重心算出部815aによる候補値重心の算出方法の一例について図17に示す。図17(a)〜(c)は、図16(a)〜(c)に示すそれぞれの注目領域画像から算出されるそれぞれの候補値重心を示す図であり、第1実施例について示した図8に相当するものである。なお、図17(a)〜(c)に示す候補値重心M11〜M13の算出方法自体は、図8に示した算出方法と同様のものである。
候補値領域算出部816aは、STEP22で取得したそれぞれの注目領域画像FAP11〜FAP13中の信号値がそれぞれの候補値を有する画素CEを用いて、新たな候補値領域をそれぞれ算出して更新する(STEP24)。なお、本実施例では強調画像をSTEP11で生成した画像のまま維持する(即ち、静止画とする)。そのため、強調処理部818に更新後の新たな候補値領域が入力されないこととしても構わない。また、STEP24を行わないこととしても構わない。
候補値領域算出部816aによる候補値領域の算出方法の一例について図18(a)〜(c)に示す。図18(a)〜(c)は、図16(a)〜(c)に示すそれぞれの注目領域画像から算出されるそれぞれの候補値領域を示す図であり、第1実施例について示した図9(a)に相当するものである。なお、図18(a)〜(c)に示す候補値領域NA11〜NA13の算出方法自体は、図9(a)に示した算出方法と同様のものである。また、図9(b)に示す方法でそれぞれの候補値領域を算出しても構わない。
そして、ユーザから切替指示が入力されるか否かを確認する(STEP12)。切替指示が入力されれば(STEP12、YES)、第1実施例のSTEP13(図4参照)と同様に、前回強調処理した候補値とは異なる候補値の候補値領域を強調処理した強調画像を生成する。ただし、本実施例では、当該強調画像をSTEP20で取得した新たな入力画像に重畳させて出力画像を生成する(STEP25)。一方、切替指示が入力されず(STEP12、NO)、追尾値設定指示も入力されない場合(STEP14、NO)、STEP20で取得した新たな入力画像に前回と同じ強調画像を重畳させて出力画像を生成する(STEP26)。即ち、本実施例では、出力画像中の強調画像は第1実施例と同様に静止画になるが、入力画像は動画になる。そして、STEP25またはSTEP26の後にSTEP20に戻り、候補値重心及び候補値領域の算出及び更新を行う(STEP20〜24)。
これに対して、追尾値設定指示が入力されると(STEP14、YES)、追尾対象検出部82が、追尾値設定指示に示される追尾値を用いて追尾処理を開始し、初期設定部81aは動作を終了する。このとき第1実施例と同様に、追尾対象検出部82は、最初に追尾値を有する画素を検出する際に、追尾値として設定された候補値の候補値重心を利用する。
また、上述の動作に伴いユーザに表示される出力画像の具体例を、図19に示す。図19(a)〜(c)は、第2実施例の追尾処理部において強調処理する候補値を順に切り替えた場合に生成される出力画像の例を示す図であり、第1実施例について示した図10及び図11(a),(b)にそれぞれ相当するものである。また、図19(a)の出力画像OP11の表示中に切替指示が入力されて図19(b)の出力画像OP12が生成及び表示され、図19(b)の出力画像OP12の表示中に切替指示が入力されて図19(c)の出力画像OP13が生成及び表示されるものとする。
図19(a)〜(c)に示す出力画像OP11〜OP13は、第1実施例について示した図10及び図11(a),(b)の出力画像OP1〜OP3と同様の静止画の強調画像LP1〜LP3を含む。しかしながら、本例では候補値重心及び候補値領域の更新(STEP23、24)のために繰り返し取得される動画の入力画像(STEP20)に、当該強調画像LP1〜LP3を重畳して出力画像OP11〜OP13を生成する。
以上のように構成すると、第1実施例と同様に出力画像を表示して、ユーザに候補値を提示するとともに選択させて追尾値を設定することとなる。そのため、精度良く追尾処理を行うことができる好適な追尾値を容易に設定することが可能となる。また、追尾される部分をユーザに明確に把握させた上で選択させることが可能となる。
本実施例ではさらに、出力画像を表示してユーザに候補値を提示する間に、候補値重心を算出するとともに順次更新して、最新の入力画像に対応したものとする。そのため、追尾対象検出部81が追尾処理を開始する際にこの順次更新される候補値重心を参照することによって、精度良く追尾処理を行うことが可能となる。
また、全ての候補値に対して候補値重心が順次更新される。したがって、ユーザがどの候補値を追尾値として設定したとしても、追尾対象検出部81が精度よく追尾処理を行うことが可能となる。
また、図19(a)〜(c)に示すように、動画の入力画像に静止画の強調画像を重畳させて出力画像OP1〜OP3を生成することとすると、ユーザが動画の入力画像に基づいて現状の画角を把握するとともに、静止画の強調画像に基づいて容易に候補値を選択することが可能となる。
なお、図14及び図19(a)〜(c)において、出力画像OP11〜OP13中の入力画像を動画にする場合について説明したが、静止画にしても構わない。特に、第1実施例の図10及び図11(a),(b)に示した出力画像OP1〜OP3と同様に、STEP2で取得した入力画像を継続して適用することで、出力画像中の入力画像を静止画にすることとしても構わない。この場合、STEP25及びSTEP26において、入力画像を更新しないこととする。
また、図14及び図19(a)〜(c)において、出力画像OP11〜OP13中の強調画像を静止画にする場合について説明したが、動画にしても構わない。特に、本実施例ではそれぞれの候補値に対応した注目領域画像が生成されるとともに候補値領域が算出及び更新されるため、これらを利用することで容易に強調画像を動画とした出力画像を生成することができる。この場合、候補値領域算出部816aで算出及び更新した新たな候補値領域が強調処理部818に入力される構成にするとともに、STEP25及びSTEP26において、STEP22で生成した注目領域画像を用いた強調画像を新たに生成することとする。
強調画像を動画にする場合の出力画像の具体例を、図20に示す。図20(a)〜(c)は、第2実施例の追尾処理部において強調処理する候補値を順に切り替えた場合に生成される出力画像の別例を示す図であり、図18(a)〜(c)に示した候補値領域NA11〜NA13をそれぞれ強調処理した場合に得られる出力画像を示したものである。
図20(a)は第1候補値の候補値領域NA11を強調処理した強調画像LP11を入力画像に重畳して成る出力画像OP111を示したものであり、図20(b)は第2候補値の候補値領域NA12を強調処理した強調画像LP12を入力画像に重畳して成る出力画像OP112を示したものであり、図20(c)は第3候補値の候補値領域NA13を強調処理した強調画像LP13を入力画像に重畳して成る出力画像OP113を示したものである。なお、図20(a)〜(c)の出力画像OP111〜OP113中の入力画像は、図19(a)〜(c)と同様の動画の入力画像である。
図20(a)〜(c)に示すように、それぞれの候補値ごとに、入力画像中の異なる領域(候補値を信号値とする画素が含まれる領域)を示した強調画像LP11〜LP13が生成されることとなる。したがって、候補値を把握し易い出力画像OP111〜OP113を生成することが可能となる。また、これらの出力画像OP111〜OP113中の強調画像LP11〜LP13を生成する場合、注目領域画像取得部811aで取得されるそれぞれの候補値に対応する注目領域画像を注目領域画像拡大部817で拡大し、強調処理部818でそれぞれの注目領域拡大画像中の候補値領域NA11〜NA13に相当する領域を強調処理することとする。このとき、注目領域画像拡大部817及び強調処理部818が、切替指示に基づいて処理が必要となる注目領域画像及び注目領域拡大画像を把握し、当該画像に対してのみ拡大処理や強調処理を行うこととしても構わない。
<変形例>
上述の第1実施例及び第2実施例の説明では、強調画像を生成して入力画像に重畳させることで出力画像を生成する場合について述べたが、強調画像を生成しないこととしても構わない。この場合の出力画像の例を図21及び図22に示す。図21及び図22のそれぞれは、出力画像の別例を示す図である。
図21に示す出力画像OP20は、入力画像の端部に候補値を表示する画像(以下、候補値表示画像とする)SP20を重畳させて成るものである。候補値表示画像SP20中には、それぞれの候補値を表示する領域S21〜S23が設けられている。なお、操作部17をタッチパネルとして、ユーザがいずれかの領域S21〜S23に触れることで切替指示や追尾値設定指示が入力されるように構成しても構わないし、カーソルなどで選択することで切替指示や追尾値設定指示が入力されることとしても構わない。
図21に示すような出力画像OP20を生成する場合、注目領域画像拡大部817を備えないこととしても構わない。また、強調処理部818の代わりに、候補値情報に基づいて候補値表示画像SP20を生成する候補値表示画像生成部を備えることとする。なお、候補値表示画像生成部が、優先順位を取得することとして、当該優先順位の順に候補値を表示する領域S21〜S23を並べて表示することとしても構わない。
また、図22に示す出力画像OP30は、入力画像中の候補値領域NA31に相当する領域を直接的に強調処理して成るものである。本例は注目領域拡大画像を用いないだけであり、原則的に図10、図11、図19及び図20と同様の方法で強調処理を行ったり、強調する候補値の切り替えを行ったりするものである。なお、図22に示すような出力画像OP30を生成する場合、注目領域画像拡大部817や画像合成部819を備えない構成としても構わない。
図21及び図22に示すような出力画像OP20,OP30を生成し表示することとすると、ユーザが入力画像の画角を明確に把握することが可能となる。
また、候補値領域の算出方法として、図9(a)に矩形領域の候補値領域を算出する方法について示し、図9(b)に候補値を示す画素に沿った候補値領域を算出する方法について示したが、これら以外の方法で候補値領域を算出することも可能であり、その一例を図23に示す。図23は、候補値領域の算出方法の別例を示す図である。
図23に示す算出方法は、候補値が信号値を有する画素CEに基づいて楕円形(正円形を含む)の候補値領域NA40を算出するものである。このような候補値領域NA40を算出する場合、任意の画素CEの座標(xn,yn)が、境界線ax2+by2+cxy+dx+ey=1の内側となるように、当該境界線を算出しても構わない。ただし、境界線の算出の際に少なくとも5つの画素CEを用いることとする。なお、外側に位置する画素CEを優先的に用いることとすると、好ましい。
また、楕円形の候補値領域NA40の他の算出方法として、全ての画素CEの座標(xn,yn)を用いて分散共分散行列を生成し、当該行列の固有値、固有ベクトルから公知の手法を用いて楕円の各種パラメータ(例えば、長軸、短軸及び楕円の成す角(傾き)など)を算出することも可能である。
また、追尾値、候補値及び候補値領域を算出する際や追尾対象検出部82が追尾対象の検出を行う際に、信号値を低階調化しても構わない。低階調化することにより、わずかな信号値の差異を無視することができるようになり、容易に設定や検出を行うことが可能となる。また、検出に用いる信号値の種類に応じて、低階調化する程度を決定しても構わない。
また、追尾対象検出部82が、候補値重心を示す重心情報に基づいて追尾対象の検出を開始すると述べたが、候補値領域に基づいて検出を開始することとしても構わないし、両方に基づいて検出を開始することとしても構わない。また、強調画像が強調する候補値が一つである場合について説明したが、複数であっても構わない。
また、候補値領域及び候補値重心を注目領域画像からそれぞれ算出することとしたが、候補値領域に基づいて候補値重心を算出しても構わないし、またその逆としても構わない。例えば、候補値領域の中心または重心位置を候補値重心として算出しても構わないし、候補値重心を中心または重心位置とした候補値領域を算出しても構わない。
<<他の適用例>>
上述の追尾処理部80から出力される追尾対象情報に基づいて、入力画像の切り出しを行うこととしても構わない。例えば、撮像部が広角の入力画像を作成するとともに、画像処理部8が入力画像から追尾対象(追尾物体)を含む所定の領域を切り出すことで、所望の構図となる画像を作成することとしても構わない。このように入力画像の切り出しを行うこととすると、ユーザが、撮像したいと考える追尾物体に撮像装置1を簡易的に向けるだけで、所望の構図となる画像を得ることが可能となる。そのため、ユーザが撮像に注力する必要を低減することが可能となる。
また、追尾処理を撮像装置が(撮像時に)行う場合について説明したが、再生装置が(再生時に)行うこととしても構わない。例えば、追尾処理部80,80aが、再生すべき画像(上述の入力画像に相当)中から追尾対象(追尾物体)を検出し、検出結果に応じた画像処理を当該再生すべき画像に施して再生を行う場合などにおいても、本発明を適用することができる。なお、再生装置に(再生時に)適用する場合であっても、出力画像を表示することとして、ユーザに候補値を提示することとする。また、再生すべき画像に対して上記のような入力画像の切り出しを行う場合などに、本発明を利用しても構わない。また、再生すべき画像とは、記録媒体に記録された画像であっても構わないし、放送やネットワーク等によって供給される画像であっても構わない。
また、本発明の実施形態における撮像装置1について、画像処理部8や追尾処理部80,80aなどの動作を、マイコンなどの制御装置が行うこととしても構わない。さらに、このような制御装置によって実現される機能の全部または一部をプログラムとして記述し、該プログラムをプログラム実行装置(例えばコンピュータ)上で実行することによって、その機能の全部または一部を実現するようにしても構わない。
また、上述した場合に限らず、図1の撮像装置1や図2及び図12の追尾処理部80、さらに図3及び図13の初期設定部81,81aは、ハードウェア、あるいは、ハードウェア及びソフトウェアの組み合わせによって実現可能である。また、ソフトウェアを用いて撮像装置1や追尾処理部80,80a、初期設定部81,81aを構成する場合、ソフトウェアによって実現される部位についてのブロック図は、その部位の機能ブロック図を表すこととする。
以上、本発明の実施形態についてそれぞれ説明したが、本発明の範囲はこれに限定されるものではなく、発明の主旨を逸脱しない範囲で種々の変更を加えて実行することができる。