JP5230404B2 - 撮像装置、その制御方法、及びプログラム - Google Patents

撮像装置、その制御方法、及びプログラム Download PDF

Info

Publication number
JP5230404B2
JP5230404B2 JP2008330758A JP2008330758A JP5230404B2 JP 5230404 B2 JP5230404 B2 JP 5230404B2 JP 2008330758 A JP2008330758 A JP 2008330758A JP 2008330758 A JP2008330758 A JP 2008330758A JP 5230404 B2 JP5230404 B2 JP 5230404B2
Authority
JP
Japan
Prior art keywords
subject
tracking
specific
face
detection
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.)
Active
Application number
JP2008330758A
Other languages
English (en)
Other versions
JP2010154286A5 (ja
JP2010154286A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2008330758A priority Critical patent/JP5230404B2/ja
Publication of JP2010154286A publication Critical patent/JP2010154286A/ja
Publication of JP2010154286A5 publication Critical patent/JP2010154286A5/ja
Application granted granted Critical
Publication of JP5230404B2 publication Critical patent/JP5230404B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Studio Devices (AREA)

Description

本発明は、ビデオカメラやデジタルカメラ等の撮像装置における被写体検出技術に関し、特に、連続する動画像において特定の被写体を追尾する技術に関する。
画像から特定の被写体パターンを自動的に検出する画像処理技術は非常に有用であり、例えば人間の顔領域の特定に利用することができる。このような技術は、通信会議、マン・マシン・インタフェース、セキュリティ、人間の顔を追跡するためのモニタ・システム、画像圧縮などの多くの分野で使用することができる。代表例として、デジタルカメラやデジタルビデオカメラでは、撮影画像から顔を検出し、その顔について焦点や露出を最適化させる顔検出技術が実用化されている。
画像の中から特定被写体を検出する技術としては、様々な手法が提案されているが、それら手法の多くは、予め用意されたパターンデータと目的の画像を比較するパターンマッチング手法である。
例えば、画像上の複数の異なる位置で部分画像を切り出し、その部分画像が顔領域の画像であるか否かを判別して、画像上の顔領域を検出する手法が挙げられる。この場合、部分画像が顔領域であるか否かを判別するために、テンプレートマッチングによる手法や、ニューラル・ネットワークなどの学習手法により顔の特徴を学習させた識別器を用いる手法などが考えられる。
何れのパターンマッチング手法においても、顔領域の検出のためには、部分画像の画像パターンに基づいてその部分画像が顔領域の画像である確からしさを示す信頼度を算出し、その信頼度が所定の閾値を超えた場合に、その部分画像を顔領域の画像として検出する手法が一般的である。
特許文献1では、複数の異なる解像度パターンの部分画像から信頼度を算出し、部分画像毎における信頼度の和から被写体の検出を行なっている。
特許文献2では、前述の顔検出の結果に基づき、画像中の顔の位置を検出し、顔に焦点を合わせ、顔に最適な露出で撮影する撮影装置について開示されている。
一方、顔検出とは異なり、被写体位置を決定/追尾する技術として、動画像のフレーム間での画像の相関値の算出による被写体の追尾/特定技術がある。参考文献3には、操作者が予め焦点検出位置を決定した後は、対象物が移動しても、対象物に対する動画像のフレーム間の差分を抽出し、そのフレーム間差分が最小になるよう対象物を特定する。これにより、自動的に画面上の対象物を追尾して、焦点検出位置を決定する技術が開示されている。
特開2008−033424号公報 特開2005−318554号公報 特開2006−58431号公報
顔検出に代表される前述の特定被写体を検出する技術は、画像中に特定被写体を含むことを確実な信頼性を持って示すことはなく、確率論的な判断に基づいている。換言すれば、画像中に少なくとも顔を含む可能性があるという画像の数学的解析に基づいていている。この確率的数値を、顔らしさの信頼度と呼ぶ。
一般的には、顔らしさの信頼度に所定の閾値を設けて、所定の閾値を満たした場合に顔であると判断するが、上記の閾値を厳しくした場合には、実際には顔が存在するにも拘わらず顔を検出できなくなる。また、上記の閾値を緩くすると、顔とは異なる領域を顔として検出する誤検出が多発する。
つまり、正確な検出と誤検出はトレードオフの関係にあり、特定の閾値を固定的に設定することは困難であった。また、顔が正面を向いている場合は、パターンマッチングよる顔判別は比較的容易であるが、顔が側面や背面を向いている場合は、顔判別が困難であった。
一方、フレーム間での画像の相関性による被写体追尾技術では、被写体がどのような方向を向いていても被写体を特定して追尾することが可能であるが、輝度の変化(例えば照明条件の変化)や被写体の回転等により追尾精度が低減する。従って、長時間に亘って追尾を続けると、リファレンス画像が目的の被写体からずれる可能性が高く、特定の被写体を長時間に亘って的確に追尾し続けるのは困難であった。
本発明は、このような技術的な背景の下になされたもので、その目的は、複数の特定被写体が撮影画面内でどのような向きで動き回っても、特定被写体を的確に追尾し続けられるようにすることにある。
上記目的を達成するため、本発明に係る撮像装置は、撮影画面内の特定被写体を検出して前記特定被写体の被写体位置と検出信頼度を出力する被写体検出手段と、動画像のフレーム間の相関性に基づき任意の被写体を追尾被写体として追尾する被写体追尾手段とを有する撮像装置であって前記追尾被写体と前記特定被写体との撮影画面内での位置の差が所定の閾値より小さく、且つ、前記特定被写体の検出信頼度が所定の閾値より大きいという条件を満たしたとき、前記追尾被写体を前記特定被写体と同一と判定することを特徴とする。
本発明によれば、複数の特定被写体が撮影画面内でどのような向きで動き回っても、特定被写体を的確に追尾し続けることが可能となる。
以下、本発明を実施するための最良の形態を、図面に基づいて説明する。
図1は、本発明の実施例に係る撮像装置の概略構成を示すブロック図である。本撮像装置は、ビデオカメラ、デジタルスチルカメラ、監視カメラ等として構成することができる。
撮像装置の各ユニットは、バス140を介して接続されており、CPU131によって制御される。レンズユニットには、ズームレンズ101、絞り103、フォーカスレンズ105等の光学部材が含まれ、光学像は、これら光学部材を介して撮像素子110上に結像される。撮像素子110上に結像された光学像は、撮像素子110により光電変換され、撮像信号処理部120によりデジタルの画像信号として整えられ、逐次、RAM133に一時的に記憶される。
撮像素子110は、撮像制御部114により、撮像解像度や撮像信号の読み出し方法、フレームレート等が設定される。撮像信号処理部120も、撮像制御部114から指示された解像度やフレームレートにて撮像信号処理を行う。
顔検出回路121は、1つのフレーム内で顔などの特定被写体を検出するものである。この顔検出回路121は、撮像信号処理部120からRAM133へ出力された画像を予め内部に記憶されたデータベース画像とテンプレートマッチング等で比較することで、撮影画面内の複数の被写体の顔の位置や大きさ、顔の数、顔の検出信頼度等を検出する。
ここで、検出信頼度は、検出結果の確からしさを示す値であり、顔検出処理の過程で決定される。検出信頼度の算出法としては、予め記憶された特定被写体の画像の特徴と、顔検出回路121により検出した画像の特徴とを比較して、検出に係る画像が特定被写体の画像である確率を求め、この確率から算出する方法を用いることができる。また、予め記憶された特定被写体の画像の特徴と、顔検出回路121により検出した顔領域の画像の特徴との差を算出し、その差の大きさから検出信頼度を算出する方法等を用いることもできる。
顔検出回路121から出力された検出信頼度のレベルが高ければ、誤検出の可能性が少なく、低ければ誤検出の可能性が高い。なお、テンプレートマッチングによる顔検出方式は一例であり、他の方式で顔を検出してもよい。
一方、画像相関追尾回路123は、動画像のフレーム間の相関性に基づき任意の被写体を追尾被写体として追尾する被写体追尾手段として機能するものである。画像相関追尾回路123は、RAM133に蓄積された過去の画像(例えば1フレーム前の画像)と現在の画像を比較することで特定被写体の位置を特定することで、特定被写体を追尾する。CPU131は、顔検出回路121からの顔の位置や大きさ、検出信頼度と、画像相関追尾回路123からの被写体位置情報に基づいて、被写体位置を決定し、フォーカス/測光すべき画面内の位置を特定する。
なお、CPU131は、ROM(図示省略)を内蔵し、このROMに格納されたプログラムに従って、図5、図7、図9、図11のフローチャートに係る処理など、各種の処理を実行する。
フォーカス制御部113は、CPU131にて決定された被写体位置に係る撮像信号処理部120からの撮像信号AF評価値に基づいて、フォーカスモータ106を介してフォーカスレンズ105を駆動することで、目的の被写体に対する自動合焦を実現する。
また、絞り制御部112は、上記の被写体位置に係る撮像信号処理部120からの測光評価値と、撮像素子110の動作条件に基づいて、絞りモータ104を介して絞り103を駆動することで、目的の被写体に対して最適化された自動露出制御を実現する。ズーム制御部111は、CPU131の指示に従いズームモータ102を介してズームレンズ101を駆動する。
その他の処理は、一時的にRAM133に蓄積された画像信号は、画像圧縮解凍部132にて圧縮処理され、画像記録メディア135に記録され、映像出力部136を通して、TVモニタやPC用のモニタに映像信号S1として出力される。なお、記録メディア135は、フラッシュメモリ、RAM、ハードディスク、磁気テープ、光ディスク等で構成することができる。
次に、画像相関追尾回路123の動作を、図2、図3に基づいて説明する。画像相関追尾回路123は、撮影画像(現在の撮影画像)P(201)と、過去の基準となる記憶画像Q(202)を比較することにより、追尾対象の特定被写体を特定する。この場合、画像相関追尾回路123は、基準となる記憶画像Qとしては、例えばRAM133に一時記憶された1フレーム過去の画像を用いる。
例えば、図2では、基準となる記憶画像Qにおいて、追尾対象である特定被写体が存在する基準エリア204がQ(I’,J’)、Q(I”,J’)、Q(I’,J”)およびQ(I”,J”)で囲まれたエリアに設定されている。
画像相関追尾回路123は、現在の撮影画像Pに基準エリア204と同じサイズの比較エリア203を設定し、この比較エリア203と基準エリア204の間で、対応する位置の画素の画素値を比較し、その総和を相関値Lとして計算する。
この比較エリア203は、基準エリア204と同じ座標となる位置を基準位置として、それぞれ所定の画素数だけ正/負方向に2次元空間的にシフトされ、基準位置およびシフトされた位置のそれぞれにおいて、相関値Lが求められる。
ここで、基準エリア204内の画素の画素値をQ(i,j)、基準エリア204と同じ座標となる基準位置から水平方向にn、垂直方向にmだけシフトさせた比較エリア203内の画素の画素値をP(i+n,j+m)とする。この位置おける基準エリア204と比較エリア203の相関値L(n,m)を計算するための式は、
Figure 0005230404

ただし、n=0,±1,±2、…±N
m=0,±1,±2、…±M
で表される。
画像相関追尾回路123は、例えば基準エリア204と同じ座標となる基準位置、すなわちn=0,m=0の場合の相関値を、L(0,0)として出力する。そして、画像相関追尾回路123は、n,mを、それぞれ所定の画素数だけ正/負方向に2次元空間的にシフトしながら相関値L(n,m)を求める。現在の撮影画像P(201)上に点線で示した範囲205は、n,mをそれぞれ0〜±N、0〜±Mまで変化させたときに、比較エリアとなり得る範囲を示したものである。
次に、画像相関追尾回路123は、範囲205内の全てのシフト位置における相関値L(n,m)の最大値と最小値の差を求め、この差を最大相関差TLVとして出力する。図3(a)は、最大相関差TLVが大きい場合を例示し、図3(b)は最大相関差TLVが小さい場合を例示している。図3(a),(b)では、1次元でのグラフになっているが、画像相関追尾回路123は、実際には2次元の空間的に最大相関差TLVを計算する。
相関値Lは、2つの画像が一致すると小さくなり、2つの画像が一致しないと大きくなるため、一致する画像が比較エリアの中に存在する場合は、最大相関差TLVが大きくなり、一致する画像がはっきりしないときには、TLVが小さくなる可能性が高い。
最大相関差TLVを算出するのは、実際には、被写体の風や振動での揺れ等や、被写体の回転等があり、2つの画像がぴったり一致しないために、追尾被写体の確からしさを最大相関差TLVを用いて評価するためである。
そして、画像相関追尾回路123は、最大相関差TLVが閾値以上であれば、相関値L(n,m)が最大であった比較エリアを新たな基準エリア204として更新し、追尾動作を行なう。なお、2つの画像の相関性の判定手法は、上記の判定手法以外の手法を用いることも可能である。
次に、顔検出処理追尾処理を図4〜6に基づいて説明する。この顔検出処理追尾処理は、CPU131が、顔検出回路121から出力された顔検出データを用いて顔のIDを決定した後、顔のIDを維持し続けることによって行われる。まず、顔のIDを決定して保持するための条件式を説明する。
CPU131が顔検出回路121から受け取ったフレームNの被写体j(図4参照)の顔Aに対する顔検出データは、検出信頼度=RLV(A,N)、位置X=FXP(A,N)、位置Y=FYP(A,N)、サイズ=FW(A,N)という形式で記述するものとする。また、顔検出回路121により検出された顔総数は、FMAX(N)という形式で記述するものとする。
この場合、CPU131が、所定フレーム間での顔、すなわちフレームn−1の顔i(i=1〜FMAX(n−1))と、フレームnの顔j(j=1〜FMAX(n))が、顔の位置を基準にして同一の顔であるか否かを判断するための条件式Aは、下記の式で示される。
条件式A=(|FXP(j,n)-FXP(i,n-1)|+|FYP(j,n)-FYP(i,n-1)|)/FW(j,n)<PTH1
また、CPU131が、所定フレーム間での顔、すなわちフレームn−1の顔i(i=1〜FMAX(n−1))と、nフレームの顔j(j=1〜FMAX(n))が、顔の大きさを基準として同一の顔であるか否かを判断するための条件式Bは、下記の式で示される。
条件式B=(|FW(j,n)-FW(i,n-1)|/FW(j,n)<WTH1
また、CPU131が、上記の判断に先立って、フレームnにおいて検出された顔jの検出信頼度が所定の閾値RTH1よりも高いか否かを判断するための条件式Cは、下記の式で示される。
条件式C=RLV(j,n)>RTH1
また、CPU131が、フレームn−1において検出された顔iの検出信頼度が所定の閾値RTH1よりも高いか否かを判断するための条件式Dは、下記の式で示される。
条件式D=RLV(i,n-1)>RTH1
ただし、条件式A〜Dにおいて、i=1〜FMAX(n−1)、j=1〜FMAX(n)である。CPU131は、フレームn−1の顔iとフレームnの顔jがこれらの連続条件(条件式A〜D)を満たしたときに、同一の顔であると判断する。
次に、顔検出追尾処理のアルゴリズムを、図5のフローチャートに基づいて説明する。なお、図5のフローチャートは、フレームnの処理を示している。
CPU131は、顔検出回路121からフレームnに係る顔検出データ(各顔の検出信頼度、位置X、位置Y、サイズ)を受け取る(S501)。次に、CPU131は、フレームnに係る顔検出総数FMAX(n)を顔検出回路121から受け取る(S502)。次に、CPU131は、変数FNOに「1」をセットする(S503)。
そして、CPU131は、j=FNOに係る顔の検出データが、検出信頼度に係る条件式Cを満たすか否かを判別する(S504)。検出信頼度に係る条件式Cを満たさない場合は、CPU131は、変数FNOを「1」だけインクリメントする(S509)。
一方、検出信頼度に係る条件式Cを満たす場合は、CPU131は、j=FNOに係る顔と、i=1〜FMAX(n−1)に係る全ての顔の検出データについて、条件式A、条件式B、条件式Dの全てを満たすか否かを判別する(S505)。そして、CPU131は、条件式A、条件式B、条件式Dの全てを満たす顔の検出データが存在する場合は、前フレームn−1で検出された顔iと同一の顔が現在のフレームnに存在すると判断する(S505)。この処理は、CPU13が、被写体特定手段として機能することを意味する。
次に、CPU131は、S505において同一の顔が存在すると判断した場合は(S506)、その同一の顔については、従来のIDを引き継いで、当該IDに係る顔の位置や大きさ、検出信頼度等のデータを、今回のフレームnの検出データに書き換える(S508)。
一方、S505において同一の顔が存在しないと判断した場合は(S506)、今回の検出データは新規の顔に係るものであることを意味する。従って、この場合は、CPU131は、今回の検出データに対して新規の顔のIDを割り当てると共に、今回の検出データ(顔の位置や大きさ、検出信頼度等)を登録する(S507)。
CPU131は、S507又はS508の処理を行った後、変数FNOを「1」だけインクリメントし(S509)、その変数FNOが総検出顔数FMAXを超えたか否かを判別する(S510)。変数FNOが総検出顔数FMAXを超えている場合は、CPU131は、フレームnに係る顔検出追尾処理を終了する。一方、変数FNOが総検出顔数FMAXを超えていない場合は、CPU131は、インクリメントした変数FNOに係る顔の検出データについて、同様に、S504〜S510の処理を行う。
図6は、図5の顔検出追尾処理を複数のフレームに関して繰り返した場合の追尾状況を例示した概念図である。(1)のフレームでは初めての顔を検出したので、当該顔検出データに対してID=01が割り当てられる。(2)、(3)、(4)のフレームでは、検出に係る顔の移動量が小さいので、これらフレームに係る顔検出データに対してID=01が引き継がれる。
(5)のフレームでは、検出信頼度がRTH1(ここでは2)以下なので、顔を検出しなかったものとして処理される。(6)、(7)のフレームにおいても、同様に、検出信頼度がRTH1(ここでは2)以下なので、顔を検出しなかったものとして処理される。
(8)のフレームでは、検出信頼度がRTH1(閾値)より大きいので、新規に顔を検出したものとして、当該顔検出データに対してID=02が割り当てられる。以後、(9)、(10)、(11)、(12)のフレームでは、検出に係る顔の移動量が小さいので、これらフレームに係る顔検出データに対してID=02が引き継がれる。
次に、相関追尾処理のアルゴリズムを、図7のフローチャートに基づいて説明する。
CPU131は、変数IDNOに「1」をセットし(S701)、その変数IDNOで示されるID番号のIDが、その前のフレームで存在しないIDであるか否かを判別する(S702)。前のフレームで存在しないIDであれば、そのIDについて相関追尾処理を行う必要が無いため、CPU131は、変数IDNOを「1」だけインクリメントする(S709)。そして、インクリメントした変数IDNOがIDの総数であるIDMAX以下であれば(S712)、再びS702の処理に戻る。
CPU131は、変数IDNOで示されるID番号のIDが、現在のフレームから顔検出回路121にて検出された顔のIDと同じであるか否かを判別する(S703)。
顔検出回路121にて検出された顔のIDであれば、このフレームでは相関追尾処理を行う必要はない。そこで、CPU131は、顔検出回路121から引き継いだ顔の位置や大きさから追尾対象の特定被写体の位置や大きさを決定する(S706)。
換言すれば、この場合は、CPU131は、顔検出回路121で検出された顔を追尾対象として決定し、変数IDNOで示されるID番号の被写体のデータを更新する。具体的には、CPU131は、相関画像追尾回路123に、追尾対象として決定された顔の位置における画像を受け渡し、相関画像追尾回路123はこの画像を基準エリアの画像として記憶する。そして、S709の変数IDNOのインクリメント処理を行う。
一方、現在のフレームから顔検出回路121にて検出された顔のIDでなければ、CPU131は、前回の追尾結果から追尾対象の位置、大きさ、および、更新された基準エリアの画像等を読み出す(S704)。
CPU131は、S704の処理を行った後、変数IDNOで示されるID番号の被写体に対して、相関画像追尾回路123により、相関量が最大になる被写体位置を特定する(S705)。そして、CPU131は、S705の処理過程で見出された最大相関差TLVが、所定の閾値TTHよりも小さいか否かを判別する(S707)。
最大相関差TLVが、所定の閾値TTHよりも小さい場合は、CPU131は、変数IDNOで示されるID番号の被写体に対して追尾処理を終了し(S710)、変数IDNOで示されるID番号を削除する(S711)。これは、最大相関差TLVが所定の閾値TTHよりも小さく、かつ、顔検出回路121にて検出されてから間があいているので、特定した被写体位置の確からしさが低いと判断し、そのID番号における追尾を中止するためである。そして、CPU131は、変数IDNOを「1」だけインクリメントする(S709)。
CPU131は、S707にて、最大相関差TLVが所定閾値TTH以上であると判別した場合は、変数IDNOで示されるID番号の被写体の位置や大きさを、S705で特定された位置や大きさにデータ更新して(S708)、S709の変数IDNOのインクリメント処理を行う。
そして、CPU131は、インクリメントした変数IDNOがIDの総数であるIDMAXよりも大きくなった場合は、削除されたID等を考慮して、IDの総数であるIDMAXを最新の値に更新して(S713)、相関追尾処理を終了する。インクリメントした変数IDNOがIDの総数であるIDMAX以下である場合は、CPU131は、S702に戻り、インクリメントした変数IDNOで示されるID番号の被写体に対して、同様の処理を行う。
次に、画像相関追尾を行なっている被写体が、顔検出回路121で検出された顔と同一であるか否かを判断するための条件式を説明する。
ここで、顔検出回路121から出力されたフレームNの被写体の顔Aに対する顔検出データは、検出信頼度=RLV(A,N)、位置X=FXP(A,N)、位置Y=FYP(A,N)、サイズ=FW(A,N)という形式で記述するものとする。また、検出された顔総数はFMAX(N)という形式で記述するものとする。
さらに、フレームNとN−1における被写体Aの画像相関による被写体位置の検出結果については、位置X=TXP(A,N)、位置Y=TYP(A,N)、サイズ=TW(A,N)、最大相関誤差=TLV(A,N)という形式で記述するものとする。
この場合、CPU131が、フレームn−1の画像相関追尾被写体l(l=1〜IDMAX(n−1))と、フレームnの顔検出の顔k(k=1〜FMAX(n))が、位置を基準にして同一の顔であるか否かを判断するための条件式Eは、下記の式で示される。なお、上記の画像相関追尾被写体l、顔検出の顔kのイメージについては、図8に示している。
条件式E=(|FXP(k,n)-TXP(l,n-1)|+|FYP(k,n)-TYP(l,n-1)|)/FW(k,n)<PTH2
また、CPU131が、フレームn−1の画像相関追尾被写体l(l=1〜IDMAX(n−1))と、フレームnの顔検出の顔k(k=1〜FMAX(n))が、大きさを基準にして同一の顔であるか否かを判断するための条件式Fは、下記の式で示される。
条件式F=|FW(k,n)-TW(l,n-1)|/FW(k,n)<WTH2
また、CPU131が、上記の判断に先立って、フレームnにおいて検出された顔kの検出信頼度が所定の閾値RTH2よりも高いか否課を判断するための条件式Gは、下記の式で示される。
条件式G=RLV(K,n)>RTH2
なお、顔検出で決まる顔位置の精度と、画像相関追尾で決まる被写体位置の精度を比較すると、顔検出で決まる顔位置の精度の方が高いために、ここでの各閾値は、PTH1<PTH2、WTH1<WTH2としている。また、顔検出の検出信頼度に関しては、画像相関検出と顔検出を同一とみなす場合の方が厳しく判断する必要があるために、RTH1>RTH2としている。
なお、条件式E〜Gは、連続条件に相当するものである。
次に、画像相関追尾から顔検出追尾に移行する処理を、図9のフローチャートに基づいて説明する。
この移行処理は、画像相関追尾で位置や大きさを決められた被写体と、顔検出で顔の位置や大きさを検出された被写体が同一であるか否かを判別して、IDを引き継ぐことにより行われる。
CPU131は、図5の顔検出追尾処理を実行し(S901)、図7の相関追尾処理を実行して(S902)、変数IDNOに「1」をセットする(S903)。次に、CPU131は、変数IDNOで示されるID番号の被写体が顔検出で検出された顔に係るID番号である否かを判別する(S904)。
変数IDNOで示されるID番号の被写体が顔検出で検出された顔に係るID番号でなければ、CPU131は、S907に進み、変数IDNOを「1」だけインクリメントする。
一方、顔検出で検出された顔に係るID番号であれば、CPU131は、k=IDNOの顔検出に係る顔と、l=1〜IDMAX(n−1)の全ての追尾被写体について、条件式E、条件式F、条件式Gの全てを満たすか否かを判別する(S905)。すなわち、前フレームで相関追尾を行った被写体と同一の顔が、現フレームで顔検出処理で検出されたか否かを判別する。
この場合、CPU131は、条件式E、条件式F、条件式Gの全てを満たす場合は、変数IDNOで示される顔が相関追尾を行った顔(被写体)であると判定する(S905)。換言すれば、CPU131は、追尾被写体と顔検出に係る顔(被写体)が所定の連続条件(条件式E〜G)を満たした場合は、追尾被写体を顔検出に係る顔(被写体)と同一であると判定する。
次に、CPU131は、S905において、これまで相関追尾を行った被写体と同一の顔が顔検出処理で検出されたと判定した場合は(S906)、変数IDNOのID番号を当該同一の顔検出の顔のIDに引継ぎ、追尾処理を終了する(S908)。そして、CPU131は、IDNOをインクリメントする(S907)。
一方、これまで相関追尾を行った被写体と同一の顔が顔検出処理で検出されたと判定しなかった場合は(S906)、CPU131は、追尾処理を終了することなく、IDNOをインクリメントする(S907)。
そして、CPU131は、インクリメントした変数IDNOがIDの総数であるIDMAXよりも大きくなった場合は、統合されたID等を考慮して、IDの総数であるIDMAXを最新の値に更新して(S910)、本移行処理を終了する。インクリメントした変数IDNOがIDの総数であるIDMAX以下である場合は、CPU131は、S904に戻り、インクリメントした変数IDNOで示されるID番号の被写体に対して、同様の処理を行う。
図10は、図9の移行処理の実行状況を例示した概念図である。なお、図10において、実線の矢印は、顔検出による被写体の追尾を示し、破線の矢印は、画像相関による被写体の追尾を示している。また、一重線の実線と破線の矩形は、顔検出による被写体位置を示し、二重線の矩形は、画像相関による被写体位置を示している。
図10の(1)のフレームでは、検出信頼度が高く、顔検出に係る被写体なので、ID=01が特定されている。(2)、(3)、(4)のフレームでは、顔の移動量が小さいので、ID=01が維持されている。
(5)のフレームでは、検出信頼度がRTH1(ここでは2)以下なので、顔検出処理で顔が検出されることはない。そのため、画像相関による追尾が、ID=01をそのまま引き継いで実行される。(5)、(6)、(7)のフレームも同様に、顔検出処理で顔が検出されることはないが、画像相関による追尾は行われる。なお、(5)、(6)、(7)のフレームでは、顔検出処理で顔が検出されていないため、移行処理は行われない。
(8)のフレームでは、顔検出処理で顔が検出されるが、その顔検出の検出信頼度がRTH2(ここでは3)よりも低いために、移行処理の条件を満たさず、画像相関による追尾が引き続いて実行される((9)のフレームも同様)。
(10)のフレームでは、顔検出の検出信頼度がRTH2より大きくなっている。このため、顔検出による顔と画像相関による追尾被写体について、位置や大きさの比較が行われて連続条件(条件式E〜G)を満たすか否かを判別することにより、同一の被写体であるか否かの判定処理が行われる。
(10)のフレームでは、顔検出処理で検出された顔については一時的に新たなIDが付与されるが、ここで同一の被写体であると判定されると、ID=01が、そのまま、同一であると判定された顔検出の顔のIDとして引き継がれる。従って、(11)、(12)のフレームでは、顔検出の顔のIDをID=01のままにして、顔検出を継続することが可能になる。
このように、追尾被写体と顔検出に係る顔(被写体)が所定の連続条件を満たした場合は、追尾被写体を顔検出に係る顔(被写体)と同一であると判定する。そして、同一の被写体であると判定した被写体(顔)のIDとしては、画像相関で用いていたIDをそのまま引き継いて使用する。
これにより、複数の顔(特定被写体)がどのような向きで動き回っていても、顔検出処理で検出した特定被写体を的確に追尾し続けることが可能となる。
第1の実施例では、フレームn−1での追尾被写体と、フレームnでの顔検出に係る顔を比較することで、同一被写体を特定していた。これに対し、第2の実施例では、同じフレームnでの追尾被写体と顔検出に係る顔を比較することで、同一被写体を特定している。
第2の実施例における連続条件は、次のようになる。なお、下記の条件式H,I,Gは、第1の実施例と同様の検出信頼度、位置、サイズ、総検出数、最大相関差の記述形式に対応するものとなっている。
フレームnの画像相関追尾被写体l(l=1〜IDMAX(n))と、フレームnの顔検出の顔k=1〜FMAX(n))が、位置を基準にして同一の被写体であるか否かを判定するための条件式Hは、下記の式で示される。
条件式H=(|FXP(k,n)-TXP(l,n)|+|FYP(k,n)-TYP(l,n)|)/FW(k,n)<PTH3
また、CPU131が、フレームnの画像相関追尾被写体l(l=1〜IDMAX(n−1))と、フレームnの顔検出の顔k(k=1〜FMAX(n))が、大きさを基準にして同一の顔であるか否かを判断するための条件式Iは、下記の式で示される。
条件式I=|FW(k,n)-TW(l,n)|/FW(k,n)<WTH3
また、CPU131が、上記の判断に先立って、フレームnにおいて検出された顔kの検出信頼度が所定の閾値RTH2よりも高いか否課を判断するための条件式Gは、第1の実施例と同様である。すなわち、下記の通り、
条件式G=RLV(K,n)>RTH2
で示される。
なお、顔検出で決まる顔位置の精度と、画像相関追尾で決まる被写体位置の精度を比較すると、顔検出で決まる顔位置の精度の方が高いために、ここでの各閾値は、PTH1<PTH3、WTH1<WTH3としている。また、顔検出の検出信頼度に関しては、画像相関検出と顔検出を同一とみなす場合の方が厳しく判断する必要があるために、RTH1>RTH2としている。
また、異なるフレームで被写体の同一性を判定するよりも、同一のフレームで被写体の同一性を判定する方が、正確に同一性を判定できるので、PTH3<PTH2、WTH3<WTH2としている。
なお、条件式H,I,Dは、連続条件に相当するものである。
第2の実施例における画像相関追尾から顔検出追尾に移行する処理は、図11のフローチャートに示される。この図11のフローチャートの処理手順は、S1105、S1106を除いては、1の実施例に係る図9のフローチャートの処理手順と同様なので、ここでは、S1105、S1106のみを説明する。
CPU131は、顔検出で検出された顔に係るID番号であれば、k=IDNOの顔検出に係る顔と、l=1〜IDMAX(n)の全ての追尾被写体について、条件式H、条件式I、条件式Gの全てを満たすか否かを判別する(S1105)。すなわち、これまで相関追尾を行った被写体と同一の顔が顔検出処理で検出されたか否かを判別する。
この場合、CPU131は、条件式H、条件式I、条件式Gの全てを満たす場合は、変数IDNOで示される顔が相関追尾を行った顔(被写体)であると判定する(S1105)。換言すれば、CPU131は、追尾被写体と顔検出に係る顔(被写体)が所定の連続条件(条件式H,I,G)を満たした場合は、追尾被写体を顔検出に係る顔(被写体)と同一であると判定する。
次に、CPU131は、S1105において、3回連続して、すなわち、フレームn,n−1,n−2の3フレームに亘って連続して、これまで相関追尾を行った被写体と同一の顔が顔検出処理で検出されたと判定したか否かを判別する(S1106)。
その結果、3回連続して、すなわち、フレームn,n−1,n−2の3フレームに亘って連続して、今まで相関追尾を行った被写体と同一の顔が顔検出処理で検出されたと判定した場合は、変数IDNOのID番号を当該同一の顔検出の顔のIDに引継ぐ(S908)。
今まで相関追尾を行った被写体と同一の顔が顔検出処理で3回連続して検出されなかった場合は、CPU131は、変数IDNOのID番号を当該同一の顔検出の顔のIDに引継がない。
このようにして、複数の被写体が、どのような向きで画面内を動き回っても、顔検出に代表される被写体検出による追尾と、画像相関(フレーム相関)に代表される画像追尾方式の2つの方式を切換えて、同一被写体として的確に追いかけ続けることが可能になる。
なお、上記の第1、第2の実施例では、顔検出と画像相関追尾のブロックは、専用ハードウェアあり、その他のアルゴリズムはCPU131上でのソフトウェアとしていた。しかし、全てをCPU上のソフトウェアで実現する、或は全てをハードウェアで実現することも可能である。
また、顔検出の方式や画像相関追尾の方式としては、各種の方式を用いることができる。さらに、顔以外の被写体、例えば人間、動物、自動車等の被写体を検出して、画像相関追尾を併用して追尾することも可能である。
また、本発明の目的は、前述した各実施例の機能を実現するようにプログラミングされたソフトウェアのプログラムコードを記憶した記憶媒体を、システム或いは装置に供給することによっても達成される。この場合、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出し実行することとなる。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した各実施例の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
また、プログラムコードを供給するための記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。さらに、DVD−ROM、DVD−RAM、DVD−RW、DVD+RW等の光ディスクも、プログラムコードを供給するための記憶媒体として用いることができる。または、プログラムコードをネットワークを介してダウンロードしてもよい。
また、コンピュータが読み出したプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した各実施例の機能が実現される場合も含まれる。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた場合も含まれる。また、そのプログラムコードの指示に基づき、その拡張機能を拡張ボードや拡張ユニットに備わるCPU等が処理の一部または全部を行い、その処理によって前述した各実施例の機能が実現される場合も含まれる。
本発明の実施例に係る撮像装置の概略構成を示すブロック図である。 画像相関追尾回路での画像相関処理を説明するための概念図である。 画像相関処理の過程で得られる相関値を示す概念図である。 顔検出追尾処理を説明するための概念図である。 顔検出追尾処理を示すフローチャートである。 図5の顔検出追尾処理を複数のフレームに関して繰り返した場合の追尾状況を例示した概念図である。 相関追尾処理を示すフローチャートである。 相関追尾処理を説明するための概念図である。 第1の実施例における相関追尾から顔検出追尾への移行処理を示すフローチャートである。 図9の移行処理を実行した場合の追尾状況を例示した概念図である。 第2の実施例における相関追尾から顔検出追尾への移行処理を示すフローチャートである。
符号の説明
121…顔検出回路
123…画像相関追尾回路
131…CPU
133…RAM
A〜I…条件式(連続条件)

Claims (12)

  1. 撮影画面内の特定被写体を検出して前記特定被写体の被写体位置と検出信頼度を出力する被写体検出手段と、動画像のフレーム間の相関性に基づき任意の被写体を追尾被写体として追尾する被写体追尾手段とを有する撮像装置であって、
    前記追尾被写体と前記特定被写体との撮影画面内での位置の差が所定の閾値より小さく、且つ、前記特定被写体の検出信頼度が所定の閾値より大きいという条件を満たしたき、前記追尾被写体を前記特定被写体と同一と判定することを特徴とする撮像装置。
  2. 撮影画面内の特定被写体を検出して前記特定被写体の被写体位置と検出信頼度を出力する被写体検出手段と、動画像のフレーム間の相関性に基づき任意の被写体を追尾被写体として追尾する被写体追尾手段とを有する撮像装置であって、
    前記追尾被写体と前記特定被写体との撮影画面内での大きさの差が所定の閾値より小さく、且つ、前記特定被写体の検出信頼度が所定の閾値より大きいという条件を満たしたとき、前記追尾被写体を前記特定被写体と同一と判定することを特徴とする撮像装置。
  3. 撮影画面内の特定被写体を検出して前記特定被写体の被写体位置と検出信頼度を出力する被写体検出手段と、動画像のフレーム間の相関性に基づき任意の被写体を追尾被写体として追尾する被写体追尾手段とを有する撮像装置であって、
    前記追尾被写体と前記特定被写体との撮影画面内での位置の差が所定の閾値より小さく、且つ、前記追尾被写体と前記特定被写体の撮影画面内での大きさの差が所定の閾値より小さく、且つ、前記特定被写体の検出信頼度が所定の閾値より大きいという条件を満たしたとき、前記追尾被写体を前記特定被写体と同一と判定することを特徴とする撮像装置。
  4. 前記条件を複数のフレームに亘って連続で満たした場合、前記追尾被写体を前記特定被写体と同一と判定する請求項1乃至3の何れか一項に記載の撮像装置。
  5. 撮影画面内の被写体を検出して前記被写体の被写体位置と検出信頼度を出力する被写体検出手段と、動画像において前記被写体検出手段で検出された所定フレーム間の被写体の撮影画面内での位置の差が第1の閾値より小さいときに特定被写体として特定する被写体特定手段と、動画像のフレーム間の相関性に基づき任意の被写体を追尾被写体として追尾する被写体追尾手段とを有する撮像装置であって、
    前記追尾被写体と前記特定被写体との撮影画面内での位置の差が第2の閾値より小さい、但し、前記第2の閾値は、前記第1の閾値よりも大きい、という条件を満たしたとき、前記追尾被写体を前記特定被写体と同一と判定することを特徴とする撮像装置。
  6. 撮影画面内の被写体を検出して前記被写体の被写体位置と検出信頼度を出力する被写体検出手段と、動画像において前記被写体検出手段で検出された所定フレーム間の被写体の大きさの差が第1の閾値より小さいときに特定被写体として特定する被写体特定手段と、動画像のフレーム間の相関性に基づき任意の被写体を追尾被写体として追尾する被写体追尾手段とを有する撮像装置であって、
    前記追尾被写体と前記特定被写体との撮影画面内での大きさの差が第2の閾値より小さい、但し、前記第2の閾値は前記第1の閾値よりも大きい、という条件を満たしたき、前記追尾被写体を前記特定被写体と同一と判定することを特徴とする撮像装置。
  7. 撮影画面内の被写体を検出して前記被写体の被写体位置と検出信頼度を出力する被写体検出手段と、動画像において前記被写体検出手段で検出された所定フレーム間の被写体の位置の差が所定の閾値より小さく、又は動画像において前記被写体検出手段で検出された所定フレーム間の被写体の大きさの差が所定の閾値より小さく、且つ前記被写体の検出信頼度が第1の閾値より大きいときに特定被写体として特定する被写体特定手段と、動画像のフレーム間の相関性に基づき任意の被写体を追尾被写体として追尾する被写体追尾手段とを有する撮像装置であって、
    前記追尾被写体と前記特定被写体との撮影画面内での位置の差が所定の閾値より小さい、又は前記追尾被写体と前記特定被写体との撮影画面内での大きさの差が所定の閾値より小さく、且つ、前記特定被写体の検出信頼度が第2の閾値より大きい、但し、前記第2の閾値は前記第1の閾値よりも小さい、という条件を満たしたとき、前記追尾被写体を前記特定被写体と同一と判定することを特徴とする撮像装置。
  8. 前記条件を複数のフレームに亘って連続で満たすという条件を満たしたとき、前記追尾被写体を前記特定被写体と同一と判定する請求項5乃至7の何れか一項に記載の撮像装置。
  9. 撮影画面内の特定被写体を検出して前記特定被写体の被写体位置と検出信頼度を出力する被写体検出工程と、動画像のフレーム間の相関性に基づき任意の被写体を追尾被写体として追尾する被写体追尾工程とを有する撮像装置の制御方法であって、
    前記追尾被写体と前記特定被写体との撮影画面内での位置の差が所定の閾値より小さく、且つ、前記特定被写体の検出信頼度が所定の閾値より大きいという条件を満たしたとき、前記追尾被写体を前記特定被写体と同一と判定することを特徴とする撮像装置の制御方法。
  10. 撮影画面内の特定被写体を検出して前記特定被写体の被写体位置と検出信頼度を出力する被写体検出工程と、動画像のフレーム間の相関性に基づき任意の被写体を追尾被写体として追尾する被写体追尾工程とを有する撮像装置の制御方法であって、
    前記追尾被写体と前記特定被写体との撮影画面内での大きさの差が所定の閾値より小さく、且つ、前記特定被写体の検出信頼度が所定の閾値より大きいという条件を満たしたとき、前記追尾被写体を前記特定被写体と同一と判定することを特徴とする撮像装置の制御方法。
  11. 撮影画面内の特定被写体を検出して前記特定被写体の被写体位置と検出信頼度を出力する被写体検出工程と、動画像のフレーム間の相関性に基づき任意の被写体を追尾被写体として追尾する被写体追尾工程とを有する撮像装置の制御方法であって、
    前記追尾被写体と前記特定被写体との撮影画面内での位置の差が所定の閾値より小さく、且つ、前記追尾被写体と前記特定被写体との撮影画面内での大きさの差が所定の閾値より小さく、且つ、前記特定被写体の検出信頼度が所定の閾値より大きいという条件を満たしたとき、前記追尾被写体を前記特定被写体と同一と判定することを特徴とする撮像装置の制御方法。
  12. 請求項9乃至11の何れか一項に記載の撮像装置の制御方法をコンピュータが実行できるようにプログラミングされてなるプログラム。
JP2008330758A 2008-12-25 2008-12-25 撮像装置、その制御方法、及びプログラム Active JP5230404B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008330758A JP5230404B2 (ja) 2008-12-25 2008-12-25 撮像装置、その制御方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008330758A JP5230404B2 (ja) 2008-12-25 2008-12-25 撮像装置、その制御方法、及びプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2013055166A Division JP5336017B2 (ja) 2013-03-18 2013-03-18 撮像装置及び撮像方法

Publications (3)

Publication Number Publication Date
JP2010154286A JP2010154286A (ja) 2010-07-08
JP2010154286A5 JP2010154286A5 (ja) 2012-01-26
JP5230404B2 true JP5230404B2 (ja) 2013-07-10

Family

ID=42572826

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008330758A Active JP5230404B2 (ja) 2008-12-25 2008-12-25 撮像装置、その制御方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP5230404B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4117073B2 (ja) * 1998-11-18 2008-07-09 株式会社日立製作所 監視装置
JP2006254321A (ja) * 2005-03-14 2006-09-21 Matsushita Electric Ind Co Ltd 人物追尾装置及び人物追尾プログラム
JP4316541B2 (ja) * 2005-06-27 2009-08-19 パナソニック株式会社 監視記録装置及び監視記録方法

Also Published As

Publication number Publication date
JP2010154286A (ja) 2010-07-08

Similar Documents

Publication Publication Date Title
JP5567853B2 (ja) 画像認識装置および方法
US11887318B2 (en) Object tracking
TWI425828B (zh) 攝影裝置、圖像區域之判定方法以及電腦可讀取之記錄媒體
EP2028620A1 (en) Subject tracking method, subject tracking device, and computer program product
US11070729B2 (en) Image processing apparatus capable of detecting moving objects, control method thereof, and image capture apparatus
US11394870B2 (en) Main subject determining apparatus, image capturing apparatus, main subject determining method, and storage medium
JP4798042B2 (ja) 顔検出装置、顔検出方法及び顔検出プログラム
JP6521626B2 (ja) 被写体追跡装置、方法およびプログラム
JP6292540B2 (ja) 情報処理システム、情報処理方法及びプログラム
JP5710940B2 (ja) 画像処理装置、画像処理方法及び画像処理プログラム
JP2007067559A (ja) 画像処理方法、画像処理装置、及び撮像装置の制御方法
JP4606278B2 (ja) 映像構造化方法及び装置及びプログラム
KR20130091441A (ko) 물체 추적 장치 및 그 제어 방법
JP2010141847A (ja) 画像処理装置及び画像処理方法
JP2012231327A (ja) 撮像装置、撮像方法及びプログラム
JP2007006325A (ja) 撮像装置
JP5127692B2 (ja) 撮像装置及びその追尾方法
JP5118590B2 (ja) 被写体追尾方法及び撮像装置
JP7243372B2 (ja) 物体追跡装置および物体追跡方法
JP2021149687A (ja) 物体認識装置、物体認識方法及び物体認識プログラム
KR20080079506A (ko) 촬영장치 및 이의 대상 추적방법
JP5230404B2 (ja) 撮像装置、その制御方法、及びプログラム
JP5336017B2 (ja) 撮像装置及び撮像方法
JP5539565B2 (ja) 撮像装置及び被写体追跡方法
JP4924423B2 (ja) 特徴量の予測誤差に基づいて動画像のカット点を検出する装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111207

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111207

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120920

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121002

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121203

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: 20130219

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130319

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

Free format text: PAYMENT UNTIL: 20160329

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 5230404

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151