JP5429564B2 - 画像処理装置および方法、並びにプログラム - Google Patents
画像処理装置および方法、並びにプログラム Download PDFInfo
- Publication number
- JP5429564B2 JP5429564B2 JP2010070494A JP2010070494A JP5429564B2 JP 5429564 B2 JP5429564 B2 JP 5429564B2 JP 2010070494 A JP2010070494 A JP 2010070494A JP 2010070494 A JP2010070494 A JP 2010070494A JP 5429564 B2 JP5429564 B2 JP 5429564B2
- Authority
- JP
- Japan
- Prior art keywords
- detection
- reliability
- subject
- input image
- area
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Image Analysis (AREA)
- Studio Devices (AREA)
Description
本発明は、画像処理装置および方法、並びにプログラムに関し、特に、より簡単かつ確実に特定の被写体を検出することができるようにした画像処理装置および方法、並びにプログラムに関する。
近年のデジタルスチルカメラやデジタルビデオカメラには、撮像された画像から人の顔を検出する顔検出機能が標準的に備えられていることが多くなってきている。これらのカメラには、検出された顔の位置に応じて、フォーカスや明るさ等の各種の処理のパラメータを最適化する機能を持つものもある。
例えば、顔の検出には、画像上の処理対象の領域が、特有の情報量空間において、予め学習により用意された辞書とどの程度類似しているかを求める検出器が利用される(例えば、特許文献1参照)。この検出器では、求められた辞書との類似度が所定のレベル以上である場合に、処理対象の領域が顔の領域であるとされる。なお、このような検出器では、顔検出に用いる辞書を他の辞書に替えることで、人の顔だけでなく、犬や猫の顔を検出することも原理的には実現可能である。
また、監視カメラ等の分野では、撮像された画像から人体全体を検出する機能が搭載された監視カメラもある。現状では、回路規模等の制約から、人体検出機能が搭載された小型カメラは存在しないが、近年の飛躍的なLSI(Large Scale Integration)集積率やDSP(Digital Signal Processor)の高速化から、近い将来での実現が予想される。
ところで、近年では、上述した検出器を用いれば、高精度に目的とする被写体を画像から検出することができるようになってきているが、検出器の原理上、辞書との類似度が低い被写体は検出することができない。そのため、検出対象の被写体の動きや姿勢などによっては、画像から目的とする被写体を検出することができなくなってしまう場合がある。
例えば、人の顔を検出する検出器では、顔がカメラの正面を向いている場合は、高い検出率で顔を検出することはできるが、その人が下を向いたり横を向いたり、後ろを振り返ったりすると、顔の検出ができなくなってしまう。
また、全身のシルエットの特徴を辞書として、人の体全体を検出する検出器では、人が立っている状態では高確率で人体を検出できるが、人が座ったりしゃがんだりした場合には、人体を検出することができなくなってしまう。
なお、辞書を利用する検出器による検出では、人の顔や体全体に限らず、犬や猫などを検出する場合にも、姿勢の変動や顔の向きの変化により目的とする被写体が検出できなくなってしまう。特に、姿勢等が大きく変化する人体や犬、猫などを検出対象とする場合、姿勢変動等による検出率の低下が顕著になる。
本発明は、このような状況に鑑みてなされたものであり、より簡単かつ確実に特定の被写体を検出することができるようにするものである。
本発明の一側面の画像処理装置は、入力画像から第1の特徴の特徴量を抽出して、前記入力画像から予め定められた被写体の第1の部位が含まれる第1の検出領域を検出するとともに、前記第1の検出領域の検出の第1の信頼度を算出する第1の被写体検出手段と、前記入力画像から第2の特徴の特徴量を抽出して、前記入力画像から前記第1の部位とは異なる前記被写体の第2の部位が含まれる第2の検出領域を検出するとともに、前記第2の検出領域の検出の第2の信頼度を算出する第2の被写体検出手段と、前記第1の信頼度が第1の閾値以上であり、かつ前記第2の信頼度が第2の閾値以上である場合、前記第1の検出領域と前記第2の検出領域の相対的な位置およびサイズの関係を示す相対関係情報を生成して記録し、前記第1の信頼度が前記第1の閾値以上であり、かつ前記第2の信頼度が前記第2の閾値未満である場合、前記第1の検出領域の検出結果と、前記相対関係情報とを用いて前記第2の検出領域を求める検出領域算出手段とを備える。
前記第1の被写体検出手段には、前記被写体の前記第1の部位が含まれる画像と、前記被写体の前記第1の部位が含まれていない画像とを用いた学習により得られた辞書を予め記録させ、前記第1の特徴の特徴量と前記辞書とを用いて前記第1の検出領域を検出させることができる。
前記入力画像は、時間的に連続して撮像された複数フレームの画像とされ、前記第2の被写体検出手段には、現フレームの前記入力画像の所定の領域の前記第2の特徴の特徴量と、前記現フレームの1つ前のフレームの前記入力画像の前記第2の検出領域の前記第2の特徴の特徴量とを比較させることで、前記現フレームの前記第2の検出領域を検出させることができる。
前記第2の被写体検出手段には、前記入力画像から第3の特徴の特徴量を抽出させて、前記入力画像の各領域における被写体らしさを示す被写体マップを生成させ、前記被写体マップにより特定される前記入力画像の被写体らしい被写体候補領域の前記第2の特徴の特徴量と、前記前のフレームの前記第2の検出領域の前記第2の特徴の特徴量とを比較させることで、前記第2の検出領域を検出させることができる。
前記第2の被写体検出手段には、前記前のフレームにおいて、前記第1の信頼度が前記第1の閾値以上であり、かつ前記第2の信頼度が前記第2の閾値未満であった場合、前記現フレームにおいて、前記被写体候補領域のうち、前記検出領域算出手段により求められた前記前のフレームの前記第2の検出領域から定まる領域を含む前記被写体候補領域を、前記第2の検出領域とさせることができる。
画像処理装置には、前記入力画像を表示する表示手段と、前記第1の信頼度に応じた表示形式で、前記入力画像上に前記第1の検出領域を囲む枠を表示させるとともに、前記第2の信頼度に応じた表示形式で、前記入力画像上に前記第2の検出領域を囲む枠を表示させる制御手段とをさらに設けることができる。
画像処理装置には、前記第1の信頼度および前記第2の信頼度に基づいて、前記入力画像を撮像する撮像手段のフォーカス制御、露出制御、または前記入力画像の符号化のビットレート制御を行なう制御手段をさらに設けることができる。
本発明の一側面の画像処理方法またはプログラムは、入力画像から第1の特徴の特徴量を抽出して、前記入力画像から予め定められた被写体の第1の部位が含まれる第1の検出領域を検出するとともに、前記第1の検出領域の検出の第1の信頼度を算出し、前記入力画像から第2の特徴の特徴量を抽出して、前記入力画像から前記第1の部位とは異なる前記被写体の第2の部位が含まれる第2の検出領域を検出するとともに、前記第2の検出領域の検出の第2の信頼度を算出し、前記第1の信頼度が第1の閾値以上であり、かつ前記第2の信頼度が第2の閾値以上である場合、前記第1の検出領域と前記第2の検出領域の相対的な位置およびサイズの関係を示す相対関係情報を生成して記録し、前記第1の信頼度が前記第1の閾値以上であり、かつ前記第2の信頼度が前記第2の閾値未満である場合、前記第1の検出領域の検出結果と、前記相対関係情報とを用いて前記第2の検出領域を求めるステップを含む。
本発明の一側面においては、入力画像から第1の特徴の特徴量が抽出されて、前記入力画像から予め定められた被写体の第1の部位が含まれる第1の検出領域が検出されるとともに、前記第1の検出領域の検出の第1の信頼度が算出され、前記入力画像から第2の特徴の特徴量が抽出されて、前記入力画像から前記第1の部位とは異なる前記被写体の第2の部位が含まれる第2の検出領域が検出されるとともに、前記第2の検出領域の検出の第2の信頼度が算出され、前記第1の信頼度が第1の閾値以上であり、かつ前記第2の信頼度が第2の閾値以上である場合、前記第1の検出領域と前記第2の検出領域の相対的な位置およびサイズの関係を示す相対関係情報が生成されて記録され、前記第1の信頼度が前記第1の閾値以上であり、かつ前記第2の信頼度が前記第2の閾値未満である場合、前記第1の検出領域の検出結果と、前記相対関係情報とが用いられて前記第2の検出領域が求められる。
本発明の一側面によれば、より簡単かつ確実に特定の被写体を検出することができる。
以下、図面を参照して、本発明を適用した実施の形態について説明する。
〈第1の実施の形態〉
[画像処理装置の構成]
図1は、本発明を適用した画像処理装置の一実施の形態の構成例を示す図である。
[画像処理装置の構成]
図1は、本発明を適用した画像処理装置の一実施の形態の構成例を示す図である。
画像処理装置11は、例えば、動きのある被写体を撮像するデジタルビデオカメラや、デジタルスチルカメラなどの撮像装置に備えられる。
画像処理装置11は、光学系31、イメージャ32、デジタル信号処理部33、表示部34、制御部35、レンズ駆動部36、インターフェース制御部37、およびユーザインターフェース38から構成される。
光学系31は、図示せぬ撮像レンズを含む光学系などからなり、光学系31に入射した光は、CCD(Charge Coupled Device)等の撮像素子で構成されるイメージャ32に入射する。イメージャ32は、光学系31から入射した光を光電変換することで、被写体を撮像する。撮像により得られた電気信号(アナログ信号)は、図示せぬA/D(Analog to Digital)変換部によりデジタル信号の画像データに変換され、デジタル信号処理部33に供給される。
デジタル信号処理部33は、イメージャ32からの画像データに対して所定の信号処理を施し、図示せぬメモリや表示部34、制御部35などに画像データを出力する。デジタル信号処理部33は、前処理部51、デモザイク処理部52、YC生成部53、解像度変換部54、被写体検出部55、被写体検出部56、およびCODEC57を備えている。
前処理部51は、前処理として、イメージャ32からの画像データに対し、R,G,Bの黒レベルを所定のレベルにクランプするクランプ処理や、R,G,Bの色チャンネル間の補正処理等を施す。デモザイク処理部52は、前処理部51により前処理された画像データに対し、画像データの各画素がR,G,B全ての色成分を有するように、画素の色成分を補完するデモザイク処理を施す。
YC生成部53は、デモザイク処理部52によりデモザイク処理された、R,G,Bの画像データから、輝度(Y)信号および色(C)信号を生成(分離)する。解像度変換部54は、YC生成部53で処理された画像データに対して、解像度変換処理を実行する。
被写体検出部55は、YC生成部53によって生成された輝度信号および色信号からなる画像データに基づいて、画像データにより表示される入力画像から被写体としての人の顔を検出し、その検出結果を制御部35に供給する。被写体検出部56は、YC生成部53によって生成された画像データに基づいて、入力画像から被写体としての人の体全体を検出し、その検出結果を制御部35に供給する。
CODEC57は、YC生成部53または解像度変換部54で生成された画像データを必要に応じて符号化し、図示せぬメモリに記録させたり、符号化された画像データを復号したりする。CODEC57で復号された画像データ、または解像度変換部54で得られた画像データは、表示部34に供給されて表示される。表示部34は、例えば液晶ディスプレイなどからなり、制御部35の制御に従ってデジタル信号処理部33から供給された入力画像を表示する。
制御部35は、インターフェース制御部37から供給される制御信号に応じて、画像処理装置11の各部を制御する。
例えば、制御部35は、デジタル信号処理部33に、各種の信号処理に用いられるパラメータ等を供給するとともに、デジタル信号処理部33からの、各種の信号処理の結果得られたデータを取得し、インターフェース制御部37に供給する。
また、制御部35は、光学系31を構成する撮像レンズを駆動させたり、絞りなどを調節させたりするための制御信号をレンズ駆動部36に供給する。さらに制御部35は、イメージャ32による入力画像の撮像も制御する。
ユーザインターフェース38は、ユーザが画像処理装置11に対する指示を入力するときに操作されるボタンやスイッチ、マイクロホン等の入力装置、ユーザに対して情報を提供するランプやスピーカ等の出力装置などから構成される。
例えば、ユーザインターフェース38は、ユーザインターフェース38としてのボタンが操作されると、その操作に応じた制御信号を、インターフェース制御部37を介して制御部35に供給する。
[制御部の構成]
また、図1の制御部35には、より詳細には、図2に示されるように統合処理部81およびデバイス制御処理部82が設けられている。
また、図1の制御部35には、より詳細には、図2に示されるように統合処理部81およびデバイス制御処理部82が設けられている。
制御部35の統合処理部81には、被写体検出部55による人の顔の検出結果である検出領域Aと、その検出結果の信頼度RA、および被写体検出部56による人体の検出結果である検出領域Bと、その検出結果の信頼度RBが供給される。
ここで、検出領域Aは、入力画像上における人の顔が含まれる領域であり、検出領域Bは、入力画像上における人体が含まれる領域である。また、検出領域Aが人の顔の領域らしいほど、信頼度RAの値は大きくなり、同様に、検出領域Bが人体の領域らしいほど、信頼度RBの値も大きくなる。
統合処理部81は、被写体検出部55および被写体検出部56から供給された検出領域および信頼度に基づいて、最終的な人の顔の検出領域A’と信頼度RA’、および最終的な人体の検出領域B’と信頼度RB’を生成し、デバイス制御処理部82に供給する。
また、統合処理部81は、供給された信頼度RAおよび信頼度RBが、予め定めた閾値以上である場合、つまり検出領域Aと検出領域Bの検出結果の信頼度がある程度高い場合、相対位置情報と相対サイズ情報を生成し、内蔵するメモリ91に記録させる。
ここで、相対位置情報とは、検出領域Aと検出領域Bの相対的な位置関係を示す情報であり、相対サイズ情報とは、検出領域Aと検出領域Bの相対的なサイズ関係を示す情報である。これらの相対位置情報と相対サイズ情報は、最終的な検出領域A’や検出領域B’の算出に適宜用いられる。
デバイス制御処理部82は、統合処理部81から供給された検出領域や信頼度に基づいて、表示部34に表示される入力画像上に、被写体としての顔や人体全体を囲む枠を表示させたり、オートフォーカス制御や入力画像の符号化の制御をしたりする。
[被写体検出部の構成]
さらに、図1の被写体検出部55および被写体検出部56は、より詳細には、図3および図4に示すように構成される。
さらに、図1の被写体検出部55および被写体検出部56は、より詳細には、図3および図4に示すように構成される。
図3は、入力画像から被写体としての人の顔を検出する被写体検出部55の構成例を示す図である。被写体検出部55は、縮小部121、輝度差分算出部122、比較部123、および判定部124から構成される。
縮小部121には、YC生成部53で処理された、時間的に連続して撮像された複数フレームの入力画像が順番に供給される。縮小部121は、供給された入力画像を特定の大きさに縮小し、輝度差分算出部122に供給する。
輝度差分算出部122は、縮小部121から供給された入力画像上の所定の領域を比較領域とし、比較領域から予め定められた所定の特徴の特徴量を抽出する。例えば、輝度差分算出部122は、比較領域内の特定の画素のペアについて、それらの画素の輝度値の差分を、画素ペアの特徴量として算出し、比較部123に供給する。輝度差分算出部122では、比較領域内の予め定められた複数の画素ペアのそれぞれについて、特徴量が算出される。
比較部123は、輝度差分算出部122から供給された比較領域の各特徴量と、予め学習により生成された辞書とを比較し、その比較結果を判定部124に供給する。判定部124は、比較部123から供給された各比較領域の比較結果に基づいて、入力画像上の人の顔の領域である検出領域Aを特定する。また、判定部124は、検出領域Aとされた比較領域についての比較部123による比較結果を信頼度RAとして、検出領域Aおよび信頼度RAを統合処理部81に供給する。
図4は、入力画像から被写体としての人の体を検出する被写体検出部56の構成例を示す図である。被写体検出部56は、縮小部151、ヒストグラム算出部152、比較部153、および判定部154から構成される。
縮小部151には、YC生成部53で処理された、時間的に連続して撮像された複数フレームの入力画像が順番に供給され、縮小部121は、供給された入力画像を特定の大きさに縮小し、ヒストグラム算出部152に供給する。
ヒストグラム算出部152は、縮小部151から供給された入力画像上の所定の領域を比較領域として、比較領域から予め定められた所定の特徴の特徴量を抽出する。例えば、ヒストグラム算出部152は、比較領域内の各領域の輝度勾配のヒストグラムを、比較領域の特徴量として算出し、比較部153に供給する。
比較部153は、ヒストグラム算出部152から供給された比較領域の各特徴量と、予め学習により生成された辞書とを比較し、その比較結果を判定部154に供給する。判定部154は、比較部153から供給された各比較領域の比較結果に基づいて、入力画像上の人体の領域である検出領域Bを特定する。また、判定部154は、検出領域Bとされた比較領域についての比較部153による比較結果を信頼度RBとして、検出領域Bおよび信頼度RBを統合処理部81に供給する。
[被写体検出処理の説明]
ところで、ユーザが画像処理装置11に画像を撮像させようとする場合、ユーザは、ユーザインターフェース38を操作して、画像を撮像する処理の開始を指示する。すると、制御部35は、インターフェース制御部37を介してユーザインターフェース38から供給された制御信号に応じて、画像処理装置11の各部を動作させる。
ところで、ユーザが画像処理装置11に画像を撮像させようとする場合、ユーザは、ユーザインターフェース38を操作して、画像を撮像する処理の開始を指示する。すると、制御部35は、インターフェース制御部37を介してユーザインターフェース38から供給された制御信号に応じて、画像処理装置11の各部を動作させる。
例えば、制御部35は、イメージャ32に入力画像を撮像させるとともに、デジタル信号処理部33に入力画像に対する前処理等の各種の処理を実行させ、各フレームの入力画像を、順次、表示部34に表示させる。
これにより、ユーザは、いわゆるプレビュー画像として、表示部34に表示された入力画像を見ながら構図を決定し、ユーザインターフェース38を操作して、静止画像等の撮像を指示することができる。
このとき、画像処理装置11は、被写体検出処理を行って、撮像された入力画像から予め定められた特定の被写体、つまり人を検出し、入力画像上の人の顔と、人全体とのそれぞれを囲む枠を表示させる。
以下、図5のフローチャートを参照して、画像処理装置11による被写体検出処理について説明する。
ステップS11において、被写体検出部55は顔検出処理を行って、供給された入力画像から人の顔を検出し、その検出結果である検出領域Aと信頼度RAを統合処理部81に供給する。また、ステップS12において、被写体検出部56は人検出処理を行って、供給された入力画像から人体を検出し、その検出結果である検出領域Bと信頼度RBを統合処理部81に供給する。なお、これらの顔検出処理および人検出処理の詳細は後述する。
ステップS13において、統合処理部81は、被写体検出部55から供給された、検出領域Aの信頼度RAが予め定めた閾値thA以上であり、かつ被写体検出部56から供給された、検出領域Bの信頼度RBが予め定めた閾値thB以上であるかを判定する。すなわち、入力画像からの人の顔の検出結果と、人の体の検出結果との両方が、ある程度信頼できるものであるか否かが判定される。
ステップS13において、信頼度RA≧thAかつ、信頼度RB≧thBであると判定された場合、ステップS14において、統合処理部81は、検出領域Aおよび検出領域Bを用いて、相対位置情報および相対サイズ情報を算出する。
例えば、図6の左側に示すように、n番目のフレーム(以下、フレームnと称する)の入力画像P(n)に、立った状態で正面を向いた人が含まれていたとする。そして、入力画像P(n)から、人の顔の検出結果として矩形状の検出領域Aが得られ、人の体の検出結果として矩形状の検出領域Bが得られたとする。
また、図6中、右側に示すように、検出領域Aの図中、縦方向の長さ(以下、適宜、高さとも称する)、および横方向の長さ(以下、適宜、幅とも称する)が、それぞれAh(n)およびAw(n)であり、検出領域Bの高さおよび幅が、Bh(n)およびBw(n)であるとする。
このような場合、統合処理部81は、検出領域Aと検出領域Bとを用いて、それらの検出領域の相対的な位置関係を示す相対位置情報と、検出領域の相対的なサイズの関係を示す相対サイズ情報を算出する。
具体的には、統合処理部81は、検出領域Aの図中、左上の頂点を点Ao(n)とし、検出領域Bの図中、左上の頂点を点Bo(n)として、点Ao(n)を始点とし、点Bo(n)を終点とするベクトルPAB(n)を算出する。
このベクトルPAB(n)は、入力画像の特定の位置を原点とするxy座標系における点Ao(n)と点Bo(n)のx成分の差、およびy成分の差から求まる2次元のベクトルであり、点Ao(n)から見た点Bo(n)の相対的な位置を示すものである。
同様にして、統合処理部81は、点Bo(n)を始点とし、点Ao(n)を終点とするベクトルPBA(n)を算出し、これらのベクトルPAB(n)およびベクトルPBA(n)を相対位置情報とする。なお、ベクトルPBA(n)は、ベクトルPAB(n)と方向(向き)が反対のベクトルであり、点Bo(n)から見た点Ao(n)の相対的な位置を示すものである。
なお、以下、入力画像上において、検出領域の幅方向をx方向とも称し、検出領域の高さ方向をy方向とも称することとする。
また、統合処理部81は、検出領域Aの幅Aw(n)を、検出領域Bの幅Bw(n)で除算して得られる相対幅SAB_w(n)、検出領域Aの高さAh(n)を検出領域Bの高さBh(n)で除算して得られる相対高さSAB_h(n)を算出する。
さらに、統合処理部81は、検出領域Bの幅Bw(n)を、検出領域Aの幅Aw(n)で除算して得られる相対幅SBA_w(n)、検出領域Bの高さBh(n)を検出領域Aの高さAh(n)で除算して得られる相対高さSBA_h(n)を算出する。
このようにして得られた相対幅SAB_w(n)=Aw(n)/Bw(n)と、相対高さSAB_h(n)=Ah(n)/Bh(n)は、それぞれ検出領域Bを基準としたときの検出領域Aの相対的な幅と高さを示している。
同様に、相対幅SBA_w(n)=Bw(n)/Aw(n)と相対高さSBA_h(n)=Bh(n)/Ah(n)は、それぞれ検出領域Aを基準としたときの検出領域Bの相対的な幅と高さを示している。相対幅SBA_w(n)および相対高さSBA_h(n)は、相対幅SAB_w(n)および相対高さSAB_h(n)の逆数となっている。
統合処理部81は、これらの相対幅SAB_w(n)、相対高さSAB_h(n)、相対幅SBA_w(n)、および相対高さSBA_h(n)を相対サイズ情報とする。
検出領域Aの信頼度RAと、検出領域Bの信頼度RBがある程度高い場合、そのフレームの入力画像上の検出領域B内に被写体としての人の体が含まれ、検出領域A内にその人の顔が含まれている可能性が極めて高いことになる。また、検出領域Aと検出領域Bは、同じ被写体の互いに異なる領域であるので、それらの領域の相対的な位置関係や相対的な大きさ(サイズ)は、大きく変化しないはずである。
そこで、検出領域Aと検出領域Bの両方とも、その検出の信頼度が高い場合に、それらの検出領域の相対位置情報と相対サイズ情報を求めておけば、検出対象となる人の顔と、その人の体全体の正確な位置や大きさの関係を把握することができる。
そうすれば、後のフレームにおいて、何れか一方の検出対象の被写体の部位が検出できなかったとしても、そのフレームの他方の検出対象の部位の検出結果と、求めておいた相対位置情報および相対サイズ情報とを用いて、検出できなかった部位の位置と大きさを特定することができる。
図5のフローチャートの説明に戻り、処理対象のフレームの相対位置情報と相対サイズ情報が算出されると、処理はステップS14からステップS15に進む。
ステップS15において、統合処理部81は、算出した相対位置情報と相対サイズ情報を、メモリ91に供給して記録させることで、メモリ91内に記録されている相対位置情報と相対サイズ情報を更新する。また、統合処理部81は、検出領域Aまたは検出領域Bの何れか一方の高さと幅もメモリ91に供給し、記録させる。例えば、以下においては、検出領域Aの高さと幅が記録されるものとする。
なお、メモリ91内に記録され、検出領域Aまたは検出領域Bの推定に用いられる相対位置情報および相対サイズ情報は、1フレーム分の相対位置情報と相対サイズ情報であってもよいし、複数フレーム分のものであってもよい。
また、統合処理部81は、被写体としての人の顔の検出領域Aも、人の体の検出領域Bもある程度の信頼度で検出されたので、それらの検出領域Aと検出領域Bを、最終的な顔と人体の検出結果である検出領域A’および検出領域B’とする。
このようにして相対位置情報および相対サイズ情報が更新されると、その後、処理はステップS20へと進む。
また、ステップS13において、信頼度RA≧thAかつ、信頼度RB≧thBではないと判定された場合、ステップS16において、統合処理部81は、信頼度RA≧thAかつ、信頼度RB<thBであるか否かを判定する。すなわち、検出領域Aはある程度信頼できるものであるが、検出領域Bはあまり信頼できないものであるかが判定される。
例えば検出領域Aとして正面を向いた人の顔を検出し、検出領域Bとして立った状態の人の体全体を検出することが想定されている場合、被写体としての人がしゃがむなどして姿勢変動が生じると、信頼度RA≧thAかつ、信頼度RB<thBとなることがある。
ステップS16において、信頼度RA≧thAかつ、信頼度RB<thBであると判定された場合、ステップS17において、統合処理部81は、被写体としての人の体が含まれる最終的な検出領域B’を算出する。
すなわち、統合処理部81は、信頼度が低いとされた検出領域Bを、被写体検出部55からの検出領域Aと、メモリ91に記録されている検出領域A、相対位置情報、および相対サイズ情報とを用いて推定し、その推定結果を最終的な人体の検出領域B’とする。
例えば、図7の左側に示すように、フレーム(n+1)の入力画像P(n+1)に、しゃがんだ状態で正面を向いた人が含まれていたとする。そして、入力画像P(n+1)から、人の顔の検出結果として矩形状の検出領域Aが得られ、人の体の領域については、人の姿勢変動があったため、信頼度RBが低く、正しく検出されなかったとする。
また、メモリ91には、処理対象のフレーム(n+1)よりも時間的に前のフレームnの相対位置情報、相対サイズ情報、および検出領域Aの高さと幅が記録されていたとする。
そのような場合、図7の右側に示すように、統合処理部81は、入力画像P(n+1)上の人の体が含まれる領域、つまり検出領域B’を算出する。検出領域B’を推定するには、検出領域B’の位置、高さ、および幅が分かればよい。
まず、統合処理部81は、相対位置情報であるベクトルPAB(n)のx成分に、処理対象のフレーム(n+1)の検出領域Aの幅Aw(n+1)と、メモリ91に記録されているフレームnの検出領域Aの幅Aw(n)との比Aw(n+1)/Aw(n)を乗算する。そして、統合処理部81は、乗算の結果得られた値を、フレーム(n+1)のベクトルPAB(n+1)のx成分とする。
同様に、統合処理部81は、ベクトルPAB(n)のy成分に、フレーム(n+1)の検出領域Aの高さAh(n+1)と、メモリ91に記録されているフレームnの検出領域Aの高さAh(n)との比Ah(n+1)/Ah(n)を乗算し、ベクトルPAB(n+1)のy成分とする。
そして、統合処理部81は、このようにして得られたベクトルPAB(n+1)と、検出領域Aの図中、左上の点Ao(n+1)の位置とから、フレーム(n+1)の検出領域B’の左上の点Bo’(n+1)を求める。すなわち、点Ao(n+1)をベクトルPAB(n+1)の始点としたときのベクトルPAB(n+1)の終点の位置が、点Bo’(n+1)とされる。この点Bo’(n+1)の位置により、検出領域B’の位置が特定される。
次に、統合処理部81は、メモリ91に記録されている相対サイズ情報である相対幅SBA_w(n)に、フレーム(n+1)の検出領域Aの幅Aw(n+1)を乗算することで、検出領域B’の幅Bw’(n+1)を算出する。また、統合処理部81は、メモリ91に記録されている相対サイズ情報である相対幅SBA_h(n)に、フレーム(n+1)の検出領域Aの高さAh(n+1)を乗算することで、検出領域B’の高さBh’(n+1)を算出する。
このようにして算出された、点Bo’(n+1)の位置と、検出領域B’の幅Bw’(n+1)および高さBh’(n+1)から、最終的な検出領域B’の位置および大きさを得ることができる。
このように、人の顔の検出領域Aはある程度の信頼度で検出されたが、人の体の検出領域Bはあまり高い信頼度で検出されなかった場合、統合処理部81は、検出された検出領域Aをそのまま最終的な検出領域A’とし、検出領域B’は検出領域Aを用いて算出する。
図5のフローチャートの説明に戻り、検出領域B’が算出されて、最終的な検出領域A’および検出領域B’が得られると、処理はステップS17からステップS20へと進む。
一方、ステップS16において、信頼度RA≧thAかつ、信頼度RB<thBでないと判定された場合、ステップS18において、統合処理部81は、信頼度RA<thAかつ、信頼度RB≧thBであるか否かを判定する。すなわち、検出領域Bはある程度信頼できるものであるが、検出領域Aはあまり信頼できないものであるかが判定される。
例えば検出領域Aとして正面を向いた人の顔を検出し、検出領域Bとして立った状態の人の体全体を検出することが想定されている場合、被写体としての人が横を向くなど顔の向きを変えると、信頼度RA<thAかつ、信頼度RB≧thBとなることがある。
ステップS18において、信頼度RA<thAかつ、信頼度RB≧thBであると判定された場合、ステップS19において、統合処理部81は、被写体としての人の顔が含まれる最終的な検出領域A’を算出する。
すなわち、統合処理部81は、信頼度が低いとされた検出領域Aを、被写体検出部56からの検出領域Bと、メモリ91に記録されている検出領域A、相対位置情報、および相対サイズ情報とを用いて推定し、その推定結果を最終的な人の顔の検出領域A’とする。
例えば、図8の左側に示すように、フレーム(n+1)の入力画像P(n+1)に、立った状態で横を向いている人が含まれていたとする。そして、入力画像P(n+1)から、人の体の検出結果として矩形状の検出領域Bが得られ、人の顔の領域については、顔の向きの変動があったため、信頼度RAが低く、正しく検出されなかったとする。
また、メモリ91には、処理対象のフレーム(n+1)よりも時間的に前のフレームnの相対位置情報、相対サイズ情報、および検出領域Aの高さと幅が記録されていたとする。
そのような場合、図8の右側に示すように、統合処理部81は、入力画像P(n+1)上の人の顔が含まれる領域、つまり検出領域A’を算出する。検出領域A’を推定するには、検出領域A’の位置、高さ、および幅が分かればよい。
まず、統合処理部81は、メモリ91に記録されているフレームnの検出領域Aの幅Aw(n)および高さAh(n)と、フレームnの相対幅SBA_w(n)および相対高さSBA_h(n)とから、フレームnの検出領域Bの幅Bw(n)および高さBh(n)を算出する。すなわち、相対幅SBA_w(n)に幅Aw(n)が乗算されて幅Bw(n)とされ、相対高さSBA_h(n)に高さAh(n)が乗算されて高さBh(n)とされる。
そして、統合処理部81は、相対位置情報であるベクトルPBA(n)のx成分に、処理対象のフレーム(n+1)の検出領域Bの幅Bw(n+1)と、求めた幅Bw(n)との比Bw(n+1)/Bw(n)を乗算し、ベクトルPBA(n+1)のx成分とする。
また、統合処理部81は、相対位置情報であるベクトルPBA(n)のy成分に、処理対象のフレーム(n+1)の検出領域Bの高さBh(n+1)と、求めた高さBh(n)との比Bh(n+1)/Bh(n)を乗算し、ベクトルPBA(n+1)のy成分とする。
さらに、統合処理部81は、このようにして得られたベクトルPBA(n+1)と、検出領域Bの図中、左上の点Bo(n+1)の位置とから、フレーム(n+1)の検出領域A’の左上の点Ao’(n+1)を求める。この点Ao’(n+1)の位置により、検出領域A’の位置が特定される。
次に、統合処理部81は、メモリ91に記録されている相対サイズ情報である相対幅SAB_w(n)に、フレーム(n+1)の検出領域Bの幅Bw(n+1)を乗算することで、検出領域A’の幅Aw’(n+1)を算出する。また、統合処理部81は、メモリ91に記録されている相対サイズ情報である相対幅SAB_h(n)に、フレーム(n+1)の検出領域Bの高さBh(n+1)を乗算することで、検出領域A’の高さAh’(n+1)を算出する。
このようにして算出された、点Ao’(n+1)の位置と、検出領域A’の幅Aw’(n+1)および高さAh’(n+1)から、最終的な検出領域A’の位置および大きさを得ることができる。
このように、人体の検出領域Bはある程度の信頼度で検出されたが、人の顔の検出領域Aはあまり高い信頼度で検出されなかった場合、統合処理部81は、検出された検出領域Bをそのまま最終的な検出領域B’とし、検出領域A’は検出領域Bを用いて算出する。
図5のフローチャートの説明に戻り、検出領域A’が算出されて、最終的な検出領域A’および検出領域B’が得られると、処理はステップS19からステップS20へと進む。
また、ステップS18において、信頼度RA<thAかつ、信頼度RB≧thBでないと判定された場合、ステップS20乃至ステップS23の処理は行われず、処理はステップS24に進む。すなわち、検出領域Aの信頼度RAも、検出領域Bの信頼度RBもともに低く、入力画像から被写体としての人の顔も体も検出できなかった場合、入力画像上に、被写体としての人の顔や体全体を囲む枠は表示されない。
ステップS15、ステップS17、またはステップS19において最終的な検出領域A’および検出領域B’が得られると、ステップS20において統合処理部81は、最終的な検出領域と、検出領域に対する信頼度とからなる検出領域情報をデバイス制御処理部82に出力する。
例えば、信頼度RA≧thAかつ、信頼度RB≧thBである場合、統合処理部81は、検出領域Aと検出領域Bを、そのまま検出領域A’および検出領域B’とし、信頼度RA’を信頼度が高い旨の「1」とし、信頼度RB’も信頼度が高い旨の「1」とする。
信頼度RA≧thAかつ、信頼度RB<thBである場合、統合処理部81は、検出領域Aをそのまま検出領域A’とし、信頼度RA’を信頼度が高い旨の「1」とする。また、統合処理部81は、ステップS17の計算で得られた領域を検出領域B’とし、信頼度RB’を信頼度が低い旨の「0」とする。
信頼度RA<thAかつ、信頼度RB≧thBである場合、統合処理部81は、検出領域Bをそのまま検出領域B’とし、信頼度RB’を信頼度が高い旨の「1」とする。また、統合処理部81は、ステップS19の計算で得られた領域を検出領域A’とし、信頼度RA’を信頼度が低い旨の「0」とする。
統合処理部81は、検出領域A’、検出領域B’、信頼度RA’、および信頼度RB’が得られると、それらを検出領域情報としてデバイス制御処理部82に供給する。
ステップS21において、デバイス制御処理部82は、統合処理部81から供給された検出領域情報に基づいて表示部34を制御し、入力画像上の人の顔と、人の体とのそれぞれを囲む枠を表示させる。このとき、デバイス制御処理部82は、人の顔を囲む枠と人の体を囲む枠とを、それらの検出領域の信頼度に応じた表示形式で表示させる。
例えば、信頼度RA’および信頼度RB’がともに「1」であり、人の顔も体も検出の信頼度が高い場合、図9の左側に示すように、デバイス制御処理部82は、入力画像P(n)上に、人の顔を囲む実線の枠FAと、その人の体全体を囲む実線の枠FBを表示させる。
また、信頼度RA’が「1」であり、信頼度RB’が「0」である場合、つまり人の顔の検出の信頼度は高いが、人体の検出の信頼度は低い場合、図9の中央に示すように、デバイス制御処理部82は、入力画像P(n)上に、人の顔を囲む実線の枠FAと、その人の体全体を囲む点線の枠FBを表示させる。
さらに、信頼度RA’が「0」であり、信頼度RB’が「1」である場合、つまり人の顔の検出の信頼度は低いが、人体の検出の信頼度は高い場合、図9の右側に示すように、デバイス制御処理部82は、入力画像P(n)上に、人の顔を囲む点線の枠FAと、その人の体全体を囲む実践の枠FBを表示させる。
このように検出領域の信頼度に応じて、検出対象となる被写体の顔や体、つまり検出領域A’や検出領域B’を囲む枠を、実線と点線などの異なる表示形式で表示すれば、ユーザは、検出対象のどの部位が高精度に検出されているかを容易に把握することができる。
なお、図9では、信頼度に応じた表示形式として、枠を実線または点線で表示させる例について説明したが、これらの枠が信頼度によって異なる表示形式で表示されれば、どのように表示されてもよい。例えば、信頼度に応じて、表示させる枠の線種や色、太さを変化させてもよいし、枠が点滅表示されるようにしてもよい。
図5のフローチャートの説明に戻り、ステップS22において、デバイス制御処理部82は、統合処理部81からの検出領域情報に基づいてCODEC57を制御し、入力画像の符号化におけるビットレート制御を行なう。
例えば、イメージャ32により撮像された入力画像が符号化されて図示せぬメモリに記録される場合、CODEC57は、YC生成部53等で生成された入力画像を符号化し、メモリに記録させる。このとき、デバイス制御処理部82は、検出領域情報に基づいて、信頼度の高い領域により多くの符号が割り当てられるように、入力画像上の各領域の符号量、つまりビットレートを制御する。
具体的には、図9の図中、左側に示したように、信頼度RA’および信頼度RB’がともに「1」であり、人の顔も体も検出の信頼度が高い場合、デバイス制御処理部82は、入力画像P(n)上の人の顔と人体の領域に、より多くの符号が割り当てられるようにビットレート制御を行う。すなわち、検出領域A’および検出領域B’の両方の領域に、より多くの符号が割り当てられるようにされる。
また、図9の中央に示すように、信頼度RA’だけが「1」であり、人の顔の検出の信頼度は高いが、人体の検出の信頼度は低い場合、デバイス制御処理部82は、検出領域A’、つまり人の顔の領域により多くの符号が割り当てられるようにビットレート制御を行う。
さらに、図9の右側に示すように、信頼度RB’だけが「1」であり、人の顔の検出の信頼度は低いが、人体の検出の信頼度は高い場合、デバイス制御処理部82は、検出領域B’、つまり人の体全体の領域に、より多くの符号が割り当てられるようにビットレート制御を行う。
このように、検出領域の信頼度に応じてビットレート制御を行なうことで、入力画像上のより被写体らしい領域に、より多くの符号を割り当てることができ、被写体の画質を特に向上させることができる。これにより、入力画像の見映えをよりよくすることができる。
ステップS23において、デバイス制御処理部82は、統合処理部81からの検出領域情報に基づいてレンズ駆動部36を制御し、オートフォーカス制御を行なう。
例えば、図9の図中、左側に示したように、信頼度RA’および信頼度RB’がともに「1」であり、人の顔も体も検出の信頼度が高かったとする。この場合、デバイス制御処理部82は、入力画像P(n)の人全体の領域のコントラストにより、オートフォーカス制御が行なわれるように、デジタル信号処理部33に光学系31のレンズを移動させるべき距離を算出させる。そして、デバイス制御処理部82は、デジタル信号処理部33による算出結果に基づいてレンズ駆動部36を制御し、被写体としての人に焦点が合うように、レンズを移動させる。
また、図9の中央に示すように、信頼度RA’だけが「1」であり、人の顔の検出の信頼度は高いが、人体の検出の信頼度は低かったとする。この場合、デバイス制御処理部82は検出領域A’、つまり人の顔の領域のコントラストによりオートフォーカス制御が行なわれるように、デジタル信号処理部33に光学系31のレンズの移動距離を算出させ、その算出結果によりレンズ駆動部36にレンズを移動させる。これにより、人の顔に焦点が合うようにレンズが移動される。
さらに、図9の右側に示すように、信頼度RB’だけが「1」であり、人の顔の検出の信頼度は低いが、人体の検出の信頼度は高かったとする。この場合、デバイス制御処理部82は検出領域B’、つまり人体の領域のコントラストによりオートフォーカス制御が行なわれるように、デジタル信号処理部33に光学系31のレンズの移動距離を算出させ、その算出結果によりレンズ駆動部36にレンズを移動させる。
なお、信頼度の高い領域を利用してオートフォーカス制御を行なうと説明したが、信頼度の高い領域を利用して露出制御や色調補正など、他の処理が行われるようにしてもよい。例えば、顔の検出の信頼度のみが高い場合には、顔の明るさが特定の明るさとなるように露出補正が行なわれる。また、人体の検出の信頼度が高い場合には、人の体全体が特定の明るさとなるように露出補正が行なわれる。
また、以上においては、信頼度RA’と信頼度RB’を2値とする例について説明したが、これらの信頼度を多値とするようにしてもよい。そのような場合、信頼度RA’と信頼度RB’の値に応じて、オートフォーカス制御、ビットレート制御、露出補正などの多段階の制御が可能となる。
ステップS23においてオートフォーカス制御が行なわれるか、またはステップS18において、信頼度RA<thAかつ、信頼度RB≧thBでないと判定されると、ステップS24において、画像処理装置11は、処理を終了するか否かを判定する。例えば、ユーザによりユーザインターフェース38が操作され、入力画像の撮像の終了が指示されると、処理を終了すると判定される。
ステップS24において、処理を終了しないと判定された場合、処理はステップS11に戻り、上述した処理が繰り返される。すなわち、次のフレームの入力画像について人の顔と体を囲む枠を表示する処理が行われる。
これに対して、ステップS24において、処理を終了すると判定された場合、画像処理装置11は行なっている処理を終了し、被写体検出処理は終了する。
このようにして画像処理装置11は、ある程度の信頼度で入力画像から人の顔と体全体の領域が検出された場合には、それらの検出領域から相対位置情報と相対サイズ情報を算出し、検出領域、相対位置情報、および相対サイズ情報を記録しておく。そして、画像処理装置11は、人の顔と体全体のうち、何れか一方の検出結果の信頼度が低い場合には、他方の検出結果と、記録している検出領域、相対位置情報、および相対サイズ情報を用いて、信頼度の低い検出領域を推定する。
このように、相対位置情報および相対サイズ情報と、信頼度の高い検出領域の検出結果とを用いれば、被写体の姿勢変動等により、一部の領域がうまく検出できなくなっても、より少ない処理量で簡単に、かつより確実に目的とする領域を検出することができる。これにより、被写体の検出結果を用いたオートフォーカス制御等の各処理を、より安定して、高精度に行うことができる。
例えば、比較的安価な検出器を2つ用いて、目的とする被写体の検出を行なえば、同じ検出器を1つだけ用いて被写体の検出を行なう場合と比べて、より高精度で安定して被写体を検出することができる。
なお、以上においては、被写体の検出すべき領域として、人の顔と、人の体全体の領域を例として説明したが、検出対象となる被写体は、人に限らず、どのようなものであってもよく、例えば犬や猫などの動物の顔と、その動物の体全体とが検出対象とされてもよい。また、検出対象となる領域は、例えば動物の顔と、動物の手足など、同じ被写体の異なる領域であればよく、一方の検出対象の領域に、他方の検出対象の領域が含まれる必要もないし、検出対象とされる領域は、3以上であってもよい。
さらに、メモリ91に記録され、検出領域の算出に用いられる相対位置情報と相対サイズ情報は、処理対象のフレームよりも前のフレームから得られたものであればよく、検出領域の算出に、複数の相対位置情報と相対サイズ情報が用いられてもよい。例えば、複数の相対位置情報と相対サイズ情報が検出領域の算出に用いられる場合、それらの相対位置情報と相対サイズ情報の平均値や重み付き加算により得られた値が用いられて、検出領域が算出される。
[顔検出処理の説明]
次に、図10および図11を参照して、図5のステップS11およびステップS12の処理に対応する顔検出処理と人検出処理について説明する。
次に、図10および図11を参照して、図5のステップS11およびステップS12の処理に対応する顔検出処理と人検出処理について説明する。
まず、図10のフローチャートを参照して、図5のステップS11の処理に対応する顔検出処理について説明する。
ステップS51において、縮小部121は、デジタル信号処理部33の前処理部51乃至YC生成部53で処理された入力画像を、予め定められた縮小倍率で縮小し、輝度差分算出部122に供給する。
例えば、顔検出処理の開始時には縮小倍率は1とされ、実質的に縮小は行なわれず、ステップS51の処理が繰り返されるたびに、より入力画像が小さく縮小されていくようにされる。
ステップS52において、輝度差分算出部122は、縮小部121から供給された入力画像から、比較領域を選択する。
ステップS53において、輝度差分算出部122は、入力画像上の比較領域内の特定の画素のペアの輝度値の差分を特徴量として算出し、比較部123に供給する。
例えば、比較領域内において、M個の特徴量TF(1)乃至特徴量TF(M)(但しMは整数)の算出に用いられる、M個の画素のペアPF(1)乃至ペアPF(M)が予め定められている。輝度差分算出部122は、M個の画素ペアのそれぞれについて、画素のペアPF(m)(但し、1≦m≦M)を構成する2つの画素の輝度値の差分を算出し、得られた輝度値の差分を特徴量TF(m)とする。
ステップS54において、比較部123は、輝度差分算出部122から供給されたM個の特徴量TF(1)乃至特徴量TF(M)と、予め記録している辞書とを用いて、処理対象となっている比較領域に対する顔の領域らしさのスコアSPを算出する。
ここで、比較部123が記録している辞書は、M個の画素のペアPF(1)乃至ペアPF(M)のそれぞれについて、アダブースト等の学習により求められた閾値θ(1)乃至閾値θ(M)と、重みα(1)乃至重みα(M)とからなる。
例えば、比較部123に記録されている辞書は、画像から人の顔を検出するための辞書であるので、その辞書の生成時、つまりアダブースト等の学習時には、予め用意された人の顔の画像と、人の顔でない画像とが学習サンプルである学習画像とされる。
そして、各学習画像について、M個の画素のペアの特徴量が求められ、画素のペアPF(m)ごとに、人の顔の学習画像の特徴量TF(m)と、人の顔でない学習画像の特徴量TF(m)とを分離(判別)する閾値θ(m)が求められる。例えば、ペアを構成する画素の位置関係は、平均的な人の顔の画像上において、目の位置と額の位置や、頭の位置と額の位置にある画素などとされる。また、各画素のペアPF(m)の重みα(m)は、例えば、より人の顔の画像と、そうでない画像とを正確に分離できるペアほど大きくなるように定められる。
比較部123は、このようにして得られたM個の閾値θ(m)および重みα(m)からなる辞書を予め記録しており、この辞書を用いて比較領域のスコアSPを算出する。
具体的には、比較部123は、画素のペアPF(m)ごとに、得られた特徴量TF(m)と、記録している閾値θ(m)とを弱識別器h(xm)に代入する。
ここで、弱識別器h(xm)は、特徴量TF(m)から閾値θ(m)を減算して得られる値が正、つまりTF(m)−θ(m)>0であれば数値「1」を出力し、TF(m)−θ(m)≦0であれば数値「0」を出力する関数である。
換言すれば、比較領域から抽出されたペアPF(m)の特徴量TF(m)が閾値θ(m)より大きく、画素のペアPF(m)だけに注目すれば、比較領域には人の顔が含まれていると推定される場合、弱識別器h(xm)の値は「1」となる。逆に、特徴量TF(m)が閾値θ(m)以下であり、画素のペアPF(m)だけに注目すれば、比較領域には人の顔が含まれていないと推定される場合、弱識別器h(xm)の値は「0」となる。
比較部123は、各画素のペアPF(m)について、特徴量と閾値を弱識別器h(xm)に代入すると、代入の結果得られた弱識別器h(xm)に、そのペアPF(m)の重みα(m)を乗算し、重みα(m)が乗算された弱識別器h(xm)の総和を算出する。そして、このようにして算出された弱識別器の総和が比較領域のスコアSPとされる。このスコアSPの値は、処理対象の比較領域が人の顔の領域らしいほど大きい値となる。
比較部123は、このようにして算出された比較領域のスコアSPを、判定部124に供給する。
ステップS55において、判定部124は、比較部123から供給された比較領域のスコアSPが、予め定められた閾値θLより大きいか否かを判定する。
ステップS55において、スコアSPが閾値θL以下である場合、比較領域には人の顔は含まれていないとされ、処理はステップS57に進む。
これに対して、ステップS55において、スコアSPが閾値θLを超えると判定された場合、ステップS56において、比較部123は、処理対象の比較領域は、人の顔の領域、つまり検出領域Aであるとする。より詳細には、処理対象となっている入力画像は、元の入力画像を所定の縮小倍率で縮小したものであるので、縮小前の元の入力画像における、処理対象の比較領域に対応する領域が検出領域Aとされる。つまり比較領域を所定の縮小倍率の逆数で拡大した領域が、検出領域Aとされる。
ステップS56において比較領域が検出領域Aとされたか、またはステップS55においてスコアSPが閾値θL以下であると判定された場合、ステップS57において、被写体検出部55は、入力画像上の全ての領域を比較領域としたか否かを判定する。
被写体検出部55では、各大きさ(スケール)に縮小された入力画像について、入力画像上の全領域が比較領域とされるように、比較領域の位置をずらしながら、比較領域からの人の顔の検出が行なわれる。
ステップS57において、まだ全ての領域を比較領域としていないと判定された場合、処理はステップS52に戻り、上述した処理が繰り返される。すなわち、次の比較領域が選択され、その比較領域が人の顔の領域であるか否かが判定される。
一方、ステップS57において、全ての領域を比較領域としたと判定された場合、ステップS58において、被写体検出部55は、予め定められた全てのスケールの入力画像で、人の顔の検出を行なったか否かを判定する。すなわち、予め定められた全ての縮小倍率で入力画像を縮小し、縮小された入力画像を対象として人の顔の検出を行なったか否かが判定される。
ステップS58において、まだ全てのスケールで顔の検出を行なっていないと判定された場合、処理はステップS51に戻り、上述した処理が繰り返される。すなわち、所定の縮小倍率で入力画像が縮小され、得られた所定のスケールの入力画像が処理対象とされて、人の顔の検出が行なわれる。このように、各スケールの入力画像を処理対象として人の顔の検出を行なうことで、入力画像から任意の大きさの人の顔を検出することができる。
これに対して、ステップS58において、全てのスケールで顔の検出を行なったと判定された場合、ステップS59において、判定部124は、入力画像から検出された人の顔の領域、つまり検出領域Aと、検出領域Aの信頼度RAを統合処理部81に出力する。
例えば、判定部124は、検出領域Aとされた比較領域のスコアSPをそのまま信頼度RAとする。また、検出領域Aとされた比較領域が複数ある場合、それらの複数の比較領域を、それぞれ検出領域Aとしてもよいし、それらの複数の比較領域のうち、スコアSPの高い順に、予め定められた数の比較領域を検出領域Aとするようにしてもよい。検出領域Aが複数検出された場合には、それらの検出領域Aについて、図5の被写体検出処理におけるステップS13乃至ステップS21の処理が行われることになる。
判定部124が、顔の検出により得られた検出領域Aと信頼度RAを出力すると、顔検出処理は終了し、その後、処理は図5のステップS12へと進む。
このようにして、被写体検出部55は、入力画像を縮小させながら、入力画像の各領域を比較領域として、比較領域から抽出された特徴量と辞書とを用いて人の顔を検出する。このように、辞書を用いて人の顔を検出することで、比較的安価で目的とする被写体を入力画像から検出することができる。
[人検出処理の説明]
次に、図11のフローチャートを参照して、図5のステップS12の処理に対応する人検出処理について説明する。
次に、図11のフローチャートを参照して、図5のステップS12の処理に対応する人検出処理について説明する。
なお、ステップS91およびステップS92の処理は、図10のステップS51およびステップS52の処理と同様であるので、その説明は省略する。
すなわち、前処理部51乃至YC生成部53で処理された入力画像が、縮小部151により所定の縮小倍率で縮小され、縮小された入力画像上の所定の領域が、ヒストグラム算出部152により比較領域として選択される。
なお、人検出に用いられる比較領域は、人の顔の検出に用いられる比較領域と同じ大きさであってもよいし、異なる大きさであってもよい。例えば、ヒストグラム算出部152では、5画素×5画素の領域を1つのセルとして、入力画像が複数のセルに分割され、さらに互いに隣接する3×3の合計9個のセルが1つのブロックとされる。そして、入力画像上の互いに隣接する40個のブロックからなる領域が比較領域とされる。
ステップS93において、ヒストグラム算出部152は、比較領域内のセルごとの輝度の勾配ヒストグラムを求めることで特徴量を算出し、比較部153に供給する。
具体的には、ヒストグラム算出部152は、比較領域内のセルについて、画素の差分を求めることで、セル内の各画素の輝度勾配を算出する。そして、ヒストグラム算出部152は、比較領域内のセルごとに、輝度勾配の所定の値の範囲をビンとし、そのビンの範囲内の輝度勾配を有するセル内の画素数をビンの頻度値とする勾配ヒストグラムを生成する。
さらにヒストグラム算出部152は、3セル×3セルからなる矩形状のブロックごとに、そのブロック内のセルの勾配ヒストグラムを正規化する。
すなわち、ヒストグラム算出部152は、1つのブロックについて、セルごとの勾配ヒストグラムの各ビンの頻度値のそれぞれを要素とする1つのベクトルVを求める。例えば、勾配ヒストグラムに9つのビンがあるとすれば、1つのブロックは9個のセルから構成されるので、ベクトルVは、各セルの各ビンの頻度値を要素とする81(=9×9)次元のベクトルなる。
ヒストグラム算出部152は、81次元のベクトル空間におけるベクトルVの長さを求め、ブロック内の各セルのビンの頻度値を、得られたベクトルVの長さで除算することにより、ブロック内の各セルの勾配ヒストグラムを正規化する。
このような正規化により得られた勾配ヒストグラムの1つのビンの頻度値が、1つの特徴量とされる。したがって、1つのブロックからは81次元の特徴量が得られ、40ブロックで構成される比較領域からは、3240(=81×40)次元の特徴量が得られることになる。
ステップS94において、比較部153は、ヒストグラム算出部152から供給された比較領域の特徴量と、予め記録している辞書とを用いて、処理対象となっている比較領域に対する人の体の領域らしさのスコアSBを算出し、判定部154に供給する。
ここで、比較部153が記録している辞書は、比較部123に記録されている辞書と同様にしてアダブースト等の学習処理により得られた、画像から人の体の領域を検出するための辞書である。この辞書は、人の体の領域か否かを判別するための特徴量ごとの閾値と重みとからなる。
比較部153は、比較領域の特徴量ごとに、特徴量と、その特徴量についての辞書としての閾値とを弱識別器に代入し、得られた弱識別器の値に特徴量ごとの辞書としての重みを乗算し、重みが乗算された弱識別器の総和をスコアSBとする。
なお、ここでの弱識別器から出力される値、つまり弱識別器の値は、図10のステップS54の処理と同様に、特徴量から閾値を減算した値が「0」を超える場合に「1」とされ、特徴量から閾値を減算した値が「0」以下の場合に「0」とされる。すなわち、ステップS94では、比較領域の大きさと、特徴量の算出方法、および特徴量の数が異なるだけで、基本的にはステップS54と同様の処理が行われる。
このようにして比較領域のスコアSBが算出されると、その後、ステップS95乃至ステップS99の処理が行われて人検出処理は終了するが、これらの処理は図10のステップS55乃至ステップS59の処理と同様であるので、その説明は省略する。
すなわち、比較領域のスコアSBが予め定められた閾値よりも大きい場合、その比較領域は、入力画像上の人の体全体が含まれる領域である検出領域Bとされ、その検出領域Bとされた比較領域のスコアSBが、そのまま検出領域Bの信頼度RBとされる。
検出領域Bと信頼度RBが、判定部154から統合処理部81に出力されて人検出処理が終了すると、その後、処理は図5のステップS13へと進む。
このようにして、被写体検出部56は、入力画像を縮小させながら、入力画像の各領域を比較領域として、比較領域から抽出された特徴量と辞書とを用いて人の体を検出する。このように、辞書を用いて人の体を検出することで、比較的安価で目的とする被写体を入力画像から検出することができる。
〈第2の実施の形態〉
[画像処理装置の構成]
なお、以上においては、学習により得られた辞書を用いて被写体を検出する例について説明したが、入力画像から目的とする被写体を検出できる方法であれば、どのような方法で被写体の検出が行なわれてもよい。
[画像処理装置の構成]
なお、以上においては、学習により得られた辞書を用いて被写体を検出する例について説明したが、入力画像から目的とする被写体を検出できる方法であれば、どのような方法で被写体の検出が行なわれてもよい。
例えば、連続する2つのフレームの入力画像を用いて動き検出をすることで、入力画像から背景に対して動いている物体を検出し、その物体を検出対象の被写体とするようにしてもよいし、入力画像から人の顔や体の輪郭を検出対象の被写体として抽出してもよい。
また、例えば、各フレームの入力画像の被写体を追尾する追尾装置により、目的とする被写体を検出するようにしてもよい。そのような場合、例えば、画像処理装置11は図12に示すように構成される。
すなわち、画像処理装置11は、光学系31、イメージャ32、デジタル信号処理部33、表示部34、制御部35、レンズ駆動部36、インターフェース制御部37、およびユーザインターフェース38から構成される。なお、図12において、図1における場合と対応する部分には、同一の符号を付してあり、その説明は適宜省略する。
図12の画像処理装置11と、図1の画像処理装置11とは、図12のデジタル信号処理部33に、図1の被写体検出部56に代えて被写体追尾部181が設けられている点で異なり、他の点では共通する。
被写体追尾部181は、被写体追尾処理を行って、各フレームの入力画像から、指定された被写体の領域、例えば被写体としての人の体全体の領域を検出領域Bとして検出する。
[被写体追尾部の構成]
被写体追尾部181は、より詳細には、図13に示すように構成される。
被写体追尾部181は、より詳細には、図13に示すように構成される。
被写体追尾部181は、被写体マップ生成部211、被写体候補領域矩形化部212、被写体領域選択部213、リファレンスマップ保持部214、マッチング処理部215、および重み係数算出部216から構成される。
被写体マップ生成部211には、イメージャ32により時間的に連続して撮像され、前処理部51乃至YC生成部53により処理された複数の入力画像が順次供給される。
被写体マップ生成部211は、入力画像が有する輝度や色等の予め定められた特徴ごとに、入力画像の各領域における特徴の特徴量を抽出し、抽出した特徴量から、入力画像の各領域における被写体らしさを示す合成特徴量マップを生成する。
具体的には、被写体マップ生成部211は、輝度を特徴とする合成特徴量マップを生成する場合、入力画像の各領域の輝度値を示す輝度の特徴量マップを生成する。そして、被写体マップ生成部211は、輝度の特徴量マップから、互いに異なる複数の帯域(空間周波数帯域)成分を抽出して帯域特徴量マップとし、各帯域特徴量マップを所定の重み係数により重み付き加算(線形結合)して合成特徴量マップとする。
ここで、帯域特徴量マップは、入力画像の各領域における特徴の特徴量の特定帯域成分を示すマップである。換言すれば、帯域特徴量マップは、入力画像の特定の帯域成分に含まれる特徴の特徴量を示している。
また、合成特徴量マップは、各特徴の特徴量から求まる入力画像の各領域における被写体らしさを示すマップである。なお、ここでいう被写体とは、ユーザが入力画像を一瞥した場合に、ユーザが注目すると推定される入力画像上の物体、つまりユーザが目を向けると推定される物体をいう。したがって、被写体は必ずしも人物に限られる訳ではない。
このようにして得られた特徴ごとの合成特徴量マップは、被写体マップ生成部211からリファレンスマップ保持部214およびマッチング処理部215に供給される。
また、被写体マップ生成部211は、特徴ごとの合成特徴量マップを、重み係数算出部216から供給された重み係数を用いて線形結合することにより、被写体マップを生成し、被写体候補領域矩形化部212に供給する。このようにして得られる被写体マップの各領域の値(画素の画素値)は、入力画像の各領域の被写体らしさを示している。
被写体候補領域矩形化部212は、被写体マップ生成部211からの被写体マップにおいて、検出対象の被写体の候補となる領域、つまり被写体らしい領域を含む矩形領域(以下、被写体候補領域とも称する)を求め、その矩形領域の位置を示す座標情報を生成する。
また、被写体候補領域矩形化部212は、被写体マップを用いて、各被写体候補領域が有する特定の特徴の特徴量を示す領域情報を生成し、各被写体候補領域の座標情報と領域情報を被写体領域選択部213に供給する。
被写体領域選択部213は、被写体候補領域矩形化部212からの座標情報および領域情報を用いて、被写体候補領域のうちの何れかを、検出対象(追尾対象)となる被写体が含まれる領域である検出領域Bとして選択する。
より詳細には、被写体マップ上において、ユーザが注目すると推定される任意の被写体らしい領域が、ユーザにより指定された検出対象の被写体の領域、つまり人の体全体の領域の候補(被写体候補領域)とされる。そして、それらの被写体候補領域のなかから、最も検出対象の被写体らしい領域が選択され、その領域と同じ位置にある入力画像の領域が、検出領域Bとして特定される。なお、以下においては、入力画像上の検出領域Bと同じ位置にある被写体マップ上の領域を、単に検出領域Bとも称することとする。
また、被写体領域選択部213は、検出領域Bの検出結果に基づいて、信頼度RBを算出し、検出領域Bと信頼度RBを統合処理部81に供給するとともに、検出領域Bをリファレンスマップ保持部214に供給する。
リファレンスマップ保持部214は、メモリ221を備えており、被写体マップ生成部211からの合成特徴量マップと、被写体領域選択部213からの検出領域Bとを用いてリファレンスマップを生成し、メモリ221に記録させる。具体的には、リファレンスマップ保持部214は、合成特徴量マップにおける検出領域Bと同じ位置の領域を切り出して、切り出された領域をリファレンスマップとする。
マッチング処理部215は、メモリ221に記録されたリファレンスマップを用いてマッチング処理を行い、被写体マップ生成部211からの合成特徴量マップから、リファレンスマップと最も相関の高い(類似する)領域を検索し、その検索結果を重み係数算出部216に供給する。すなわち、処理対象の現フレームの合成特徴量マップにおいて、現フレームより1つ前のフレーム(以下、前フレームとも称する)のリファレンスマップと最も類似の度合いの高い領域が検索される。
重み係数算出部216は、マッチング処理部215からの検索結果に基づいて、合成特徴量マップの重み係数(以下、合成重み係数とも称する)を算出し、被写体マップ生成部211に供給する。
[被写体検出処理の説明]
次に、図14のフローチャートを参照して、図12の画像処理装置11により行なわれる被写体検出処理について説明する。
次に、図14のフローチャートを参照して、図12の画像処理装置11により行なわれる被写体検出処理について説明する。
なお、画像処理装置11による被写体検出処理開始時においては、ユーザによりユーザインターフェース38が操作され、被写体追尾部181が検出対象(追尾対象)とすべき被写体、つまり人の体の領域(以下、初期選択領域と称する)が指定される。制御部35は、インターフェース制御部37を介してユーザインターフェース38から取得した、検出対象とすべき初期選択領域を、被写体追尾部181に供給する。
被写体検出処理が開始されると、ステップS131において顔検出処理が行われる。なお、この顔検出処理は、図5のステップS11の顔検出処理と同じ処理であるので、その説明は省略する。
ステップS132において、被写体追尾部181は、被写体追尾処理を行って、入力画像から、被写体としての人の体の領域を検出し、その結果得られた検出領域Bと信頼度RBを統合処理部81に出力する。なお、被写体追尾処理の詳細は、後述する。
被写体追尾処理が行われると、その後、ステップS133乃至ステップS144の処理が行われて被写体検出処理は終了するが、これらの処理は図5のステップS13乃至ステップS24の処理と同様の処理であるため、その説明は省略する。
このようにして、画像処理装置11は、入力画像から人の顔と体の領域を検出し、それらの検出結果から、最終的な顔の領域である検出領域A’と、最終的な人の体の領域である検出領域B’とを得る。このように、目的とする被写体の互いに異なる領域をそれぞれ検出することで、より少ない処理量で簡単に、かつより確実に目的とする被写体を検出することができる。
[被写体追尾処理の説明]
さらに、図15のフローチャートを参照して、図14のステップS132の処理に対応する被写体追尾処理について説明する。
さらに、図15のフローチャートを参照して、図14のステップS132の処理に対応する被写体追尾処理について説明する。
ステップS171において、被写体マップ生成部211は、前処理部51乃至YC生成部53で処理された入力画像から、合成特徴量マップを生成し、リファレンスマップ保持部214およびマッチング処理部215に供給する。
合成特徴量マップは、R,G,Bなどの色成分、輝度、各エッジの方向などの特徴ごとに生成される。例えば、エッジの特定方向を特徴として、合成特徴量マップが生成される場合、入力画像に対するフィルタ処理が行われ、入力画像の各領域の特定方向のエッジ強度を特徴量とする特徴量マップが生成される。
そして、その特徴量マップから、互いに解像度(画素数)の異なる特徴量マップが生成され、それらのなかの任意の2つの特徴量マップの差分が帯域特徴量マップとして求められる。なお、帯域特徴量マップの生成に用いられる特徴量マップは、互いに解像度、つまり画素数が異なるので、適宜アップサンプリングが行なわれる。
このようにして得られた帯域特徴量マップの画素の画素値は、入力画像における所定の画素における特徴の特徴量と、その画素の周囲の平均的な特徴量との差分を示している。
例えば、特徴が輝度である場合、帯域特徴量マップの画素値は、入力画像の所定領域の輝度と、その周囲の領域の平均的な輝度の差を示している。一般的に、画像において周囲との輝度の差分の大きい領域は、その画像を見る人の目を引く領域であるので、その領域は被写体の領域である可能性が高い。したがって、各帯域特徴量マップにおいて、より画素値の大きい画素が、より被写体の領域である可能性の高い領域であることを示している。
さらに、このようにして得られた複数の帯域特徴量マップが、所定の重み係数により重み付き加算され、合成特徴量マップとされる。なお、各帯域特徴量マップも解像度が異なるので、入力画像の大きさ(解像度)に合わせて適宜アップサンプリングが行われる。合成特徴量マップの画素の画素値は、その画素と同じ位置にある入力画像の画素の被写体の領域らしさを示しており、画素値が大きいほど、より被写体の領域らしいとされる。
ステップS172において、マッチング処理部215は、被写体マップ生成部211から供給された特徴ごとの合成特徴量マップと、メモリ221に記録されているリファレンスマップとのマッチング処理を行う。
例えば、合成特徴量マップは、複数の特徴ごとに生成されるが、メモリ221には、これらの合成特徴量マップにおける、入力画像上の検出領域Bと同じ位置の領域が、各特徴のリファレンスマップとして記録されている。ここで、メモリ221に記録されている特徴ごとのリファレンスマップは、処理対象の現フレームよりも1つ前の前フレームの合成特徴量マップと検出領域Bの検出結果とから得られたものである。
マッチング処理部215は、現フレームの特徴ごとの合成特徴量マップが供給されると、それらの特徴ごとに、合成特徴量マップから、メモリ221から読み出された前フレームのリファレンスマップと最も類似する領域を検索する。
例えば、マッチング処理部215は、合成特徴量マップ上の処理対象とする領域をずらしながら、処理対象の領域内の各画素について、その領域内の画素の画素値と、その画素と同じ位置にあるリファレンスマップの画素の画素値との差分の絶対値を求める。そして、マッチング処理部215は、処理対象の領域内の各画素について求めた差分の絶対値の総和(差分絶対値和)を求める。
マッチング処理部215は、合成特徴量マップ上の各領域のうち、求めた差分絶対値和が最小となる領域を最大類似領域とし、最大類似領域を示す情報をマッチング処理の結果として重み係数算出部216に供給する。
なお、マッチング処理として、差分絶対値和を利用する場合を例として説明したが、その他、差分二乗和等を利用したマッチング処理や、ヒストグラムマッチング、テンプレートマッチングなど、合成特徴量マップと最も類似する領域が特定できれば、どのような処理であってもよい。
ステップS173において、重み係数算出部216は、マッチング処理部215から供給されたマッチング処理の結果に基づいて、特徴ごとに、各特徴の合成特徴量マップの合成重み係数を算出する。
例えば、重み係数算出部216は、合成特徴量マップの画素のうち、最大類似領域内にない画素の合成重み係数を予め定められた値Wαとし、合成特徴量マップ上の最大類似領域内にある画素の合成重み係数を、値Wαよりも大きい予め定めた値Wβとする。
重み係数算出部216は、このように画素ごとに定めた値Wαまたは値Wβを、処理対象の現フレームにおいて合成特徴量マップの各画素に乗算される、画素ごとの合成重み係数とし、被写体マップ生成部211に供給する。
このように、合成特徴量マップの最大類似領域内の画素の合成重み係数を、最大類似領域外の画素の合成重み係数よりも大きい値とすることで、合成特徴量マップを合成して被写体マップを生成する場合に、最大類似領域の重みをより大きくすることができる。
最大類似領域は、現フレームの合成特徴量マップにおいて、前フレームの検出領域Bに対応する合成特徴量マップの領域と最も類似する領域、つまり最も相関の高い領域であるから、現フレームの入力画像において、最大類似領域と同じ領域に、被写体がある可能性が高い。
そこで、前フレームの検出領域Bとの相関がより高く、被写体がある可能性が高い領域に対して、より大きい重みがつけられるように合成重み係数を定めれば、より高精度に被写体を検出できる被写体マップが得られるようになる。
なお、画素ごとの合成重み係数とされる値Wαおよび値Wβは、各特徴の合成特徴量マップごとに同じ値とされてもよいし、特徴ごとに異なる値とされてもよい。また、同じ合成特徴量マップにおいても、最大類似領域から離れた位置にある画素ほど合成重み係数の値が小さくなるなど、画素の位置によって合成重み係数の値が異なるようにしてもよい。
ステップS174において、被写体マップ生成部211は、重み係数算出部216から供給された特徴ごとの合成重み係数を用いて、各特徴の合成特徴量マップを重み付き加算することで、被写体マップを生成し、被写体候補領域矩形化部212に供給する。すなわち、各合成特徴量マップの同じ位置にある画素の画素値に合成重み係数が乗算され、合成重み係数が乗算された画素値の総和が求められ、得られた値が、それらの画素と同じ位置にある被写体マップの画素の画素値とされる。
このようにして得られた被写体マップの画素の画素値は、その画素と同じ位置にある入力画像の画素の被写体の領域らしさを示しており、画素値が大きいほど、より被写体の領域らしいとされる。
ステップS175において、被写体候補領域矩形化部212は、被写体マップ生成部211からの被写体マップから被写体候補領域を抽出し、各被写体候補領域の座標情報を生成する。
例えば、被写体候補領域矩形化部212は、被写体マップを所定の閾値により2値化する。2値化では、被写体マップにおいて、閾値以上の画素値を有する画素の画素値が「1」とされ、閾値よりも小さい画素値を有する画素の画素値が「0」とされる。したがって、2値化後の被写体マップにおいて、画素値が「1」である領域は被写体らしい領域であり、画素値が「0」である領域は、被写体ではない領域、例えば背景の領域であるとされる。
また、被写体候補領域矩形化部212は、2値化後の被写体マップにおいて、互いに隣接する、画素値が「1」である画素からなる領域を囲む(含む)矩形領域を被写体候補領域とし、各被写体候補領域の位置を示す座標情報を生成する。
さらに、被写体候補領域矩形化部212は、各被写体候補領域について、被写体候補領域のサイズ(大きさ)や、被写体マップにおける被写体候補領域の中心位置の座標を領域情報として算出する。
なお、領域情報は、その他、2値化前の被写体マップ上の被写体候補領域内の画素の画素値の積分値(総和)や、2値化前の被写体マップ上の被写体候補領域内の画素の画素値のピーク値(最大値)などとされてもよい。
被写体候補領域矩形化部212は、各被写体候補領域の座標情報と領域情報とを被写体領域選択部213に供給する。
ステップS176において、被写体領域選択部213は、被写体候補領域矩形化部212から供給された各被写体候補領域の座標情報と領域情報とを用いて、被写体候補領域の何れかを人の体の含まれる検出領域Bとして選択する。
例えば、被写体領域選択部213は、前フレームの検出領域Bとされた被写体候補領域の領域情報を保持しておき、保持している前フレームの領域情報と、現フレームの被写体候補領域の領域情報とを比較する。
具体的には、領域情報として、被写体候補領域のサイズが算出された場合、各被写体候補領域のサイズ、つまり被写体候補領域を囲む矩形枠の大きさと、1フレーム前の検出領域Bのサイズとの差の絶対値が比較結果として求められる。
また、例えば、領域情報として、被写体候補領域の中心位置の座標が求められ、その中心位置の座標と、1フレーム前の検出領域Bの中心位置の座標が比較された場合、それらの中心位置間の距離が、比較結果として求められる。
さらに、領域情報として、被写体候補領域内の画素の画素値のピーク値や積分値が求められた場合には、それらの被写体候補領域のピーク値や積分値と、1フレーム前の検出領域Bのピーク値や積分値との差の絶対値が、比較結果として求められる。
被写体領域選択部213は、得られた領域情報の比較結果に基づいて、領域情報を指標とした場合に、現フレームの被写体候補領域のうち、前フレームの検出領域Bとの相関が最も高い被写体候補領域を、現フレームの検出領域Bとする。
具体的には、例えば、比較結果として得られた、検出領域Bに対する被写体候補領域のサイズの差、中心位置間の距離、ピーク値の差、積分値の差などの領域情報の差の絶対値が最も小さい被写体候補領域が、現フレームの検出領域Bとして選択される。
なお、1回目の被写体追尾処理においては、被写体領域選択部213には、1フレーム前の検出領域Bの領域情報は記録されていないので、被写体検出処理の開始時にユーザによって選択された初期選択領域を含む被写体候補領域が検出領域Bとされる。
また、より詳細には、処理対象の現フレームより1つ前の前フレームにおいて、信頼度RB<thBであった場合、つまり図14のステップS137において検出領域B’が算出された場合、検出領域A’から初期選択領域が求められる。
すなわち、前フレームにおいて求められた検出領域A’自体や、検出領域A’の中心位置、検出領域B’自体や検出領域B’の中心位置が初期選択領域とされる。そして、現フレームの被写体候補領域のうち、求められた初期選択領域が含まれる被写体候補領域が、現フレームにおける検出領域Bとされる。なお、初期選択領域が含まれる被写体候補領域が複数ある場合には、例えば初期選択領域との距離が最も短い被写体候補領域が、検出領域Bとされる。
このように、前フレームの検出領域Bの検出の信頼度が低い場合には、信頼度の高い検出領域Aから初期選択領域を求め、被写体追尾処理にリセットをかけることで、より安定して被写体の追尾動作を行なうことができる。
ステップS177において、被写体領域選択部213は、検出領域Bとして選択された被写体候補領域の信頼度RBを算出する。
具体的には、被写体領域選択部213は、前フレームの検出領域Bの位置やサイズを記録しており、現フレームの検出領域Bと、前フレームの検出領域Bとの位置の変動量から信頼度RBを算出する。例えば、検出領域Bの位置の変動量が小さいほど信頼度RBは高い値とされ、変動量が所定の閾値を超えると、信頼度RBが急激に低くなるようにされる。
また、例えば、現フレームの検出領域Bと、前フレームの検出領域Bとのサイズの変動量から信頼度RBが算出されてもよい。さらに、入力画像における検出領域B内の画素の輝度値や色差成分の平均値が求められ、現フレームと前フレームの平均値の差から信頼度RBが算出されるようにしてもよい。
さらに、マッチング処理において、合成特徴量マップ上の各領域の差分絶対値和が算出された場合には、各合成特徴量マップの差分絶対値和の深さの平均値や、差分絶対値和の深さを重み付き加算して得られる値から、信頼度RBが算出されるようにしてもよい。
このように、検出領域Bに関する情報を時間方向に比較して信頼度RBを算出すれば、より信用度の高い信頼度RBを得ることができる。
信頼度RBが算出されると、被写体領域選択部213は、現フレームの検出領域Bの領域情報と、検出領域Bの位置やサイズを記録する。また、被写体領域選択部213は、検出領域Bと信頼度RBを統合処理部81に供給するとともに、検出領域Bをリファレンスマップ保持部214に供給する。
ステップS178において、リファレンスマップ保持部214は、被写体マップ生成部211から供給された各特徴の合成特徴量マップと、被写体領域選択部213から供給された検出領域Bとを用いて、リファレンスマップを生成する。
すなわち、リファレンスマップ保持部214は、現フレームの各特徴の合成特徴量マップについて、合成特徴量マップにおける入力画像上の検出領域Bと同じ領域を切り出してリファレンスマップとし、メモリ221に記録させる。これらの特徴ごとのリファレンスマップは、次フレームの合成重み係数の算出に用いられる。
リファレンスマップが生成されると、被写体追尾処理は終了し、その後、処理は図14のステップS133へと進む。
このようにして被写体追尾部181は、被写体追尾処理を行って、入力画像から検出対象の被写体を検出する。被写体追尾処理では、検出対象の被写体の検出に、前のフレームの検出領域Bの領域情報を用いるようにしたので、辞書を用いる場合と比べてより簡単に、かつより安価で被写体を検出することができ、画像処理装置11をより低コストで実現することができる。
なお、以上においては、被写体追尾処理の方法として、被写体候補領域の領域情報と、前フレームの検出領域Bの領域情報とを比較する方法を例として説明したが、前フレームの検出領域Bに関する情報を利用する方法であれば、どのような方法であってもよい。
例えば、入力画像から、領域情報などの特定の特徴の特徴量を抽出して用いる場合、入力画像の各領域から抽出された特徴量と、前フレームの検出領域Bから抽出された特徴量とを比較することにより現フレームの検出領域Bを検出するようにしてもよい。この場合、例えば、入力画像上の領域のうち、前フレームの検出領域Bの特徴量との類似の度合いが最も大きい領域、つまり特徴量の差分絶対値が最小となる領域が現フレームの検出領域Bとされる。
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
図16は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
コンピュータにおいて、CPU(Central Processing Unit)301,ROM(Read Only Memory)302,RAM(Random Access Memory)303は、バス304により相互に接続されている。
バス304には、さらに、入出力インターフェース305が接続されている。入出力インターフェース305には、キーボード、マウス、マイクロホンなどよりなる入力部306、ディスプレイ、スピーカなどよりなる出力部307、ハードディスクや不揮発性のメモリなどよりなる記録部308、ネットワークインターフェースなどよりなる通信部309、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア311を駆動するドライブ310が接続されている。
以上のように構成されるコンピュータでは、CPU301が、例えば、記録部308に記録されているプログラムを、入出力インターフェース305及びバス304を介して、RAM303にロードして実行することにより、上述した一連の処理が行われる。
コンピュータ(CPU301)が実行するプログラムは、例えば、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)等)、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア311に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供される。
そして、プログラムは、リムーバブルメディア311をドライブ310に装着することにより、入出力インターフェース305を介して、記録部308にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部309で受信し、記録部308にインストールすることができる。その他、プログラムは、ROM302や記録部308に、あらかじめインストールしておくことができる。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
11 画像処理装置, 33 デジタル信号処理部, 34 表示部, 35 制御部, 55 被写体検出部, 56 被写体検出部, 81 統合処理部, 82 デバイス制御処理部, 181 被写体追尾部
Claims (9)
- 入力画像から第1の特徴の特徴量を抽出して、前記入力画像から予め定められた被写体の第1の部位が含まれる第1の検出領域を検出するとともに、前記第1の検出領域の検出の第1の信頼度を算出する第1の被写体検出手段と、
前記入力画像から第2の特徴の特徴量を抽出して、前記入力画像から前記第1の部位とは異なる前記被写体の第2の部位が含まれる第2の検出領域を検出するとともに、前記第2の検出領域の検出の第2の信頼度を算出する第2の被写体検出手段と、
前記第1の信頼度が第1の閾値以上であり、かつ前記第2の信頼度が第2の閾値以上である場合、前記第1の検出領域と前記第2の検出領域の相対的な位置およびサイズの関係を示す相対関係情報を生成して記録し、前記第1の信頼度が前記第1の閾値以上であり、かつ前記第2の信頼度が前記第2の閾値未満である場合、前記第1の検出領域の検出結果と、前記相対関係情報とを用いて前記第2の検出領域を求める検出領域算出手段と
を備える画像処理装置。 - 前記第1の被写体検出手段は、前記被写体の前記第1の部位が含まれる画像と、前記被写体の前記第1の部位が含まれていない画像とを用いた学習により得られた辞書を予め記録し、前記第1の特徴の特徴量と前記辞書とを用いて前記第1の検出領域を検出する
請求項1に記載の画像処理装置。 - 前記入力画像は、時間的に連続して撮像された複数フレームの画像であり、
前記第2の被写体検出手段は、現フレームの前記入力画像の所定の領域の前記第2の特徴の特徴量と、前記現フレームの1つ前のフレームの前記入力画像の前記第2の検出領域の前記第2の特徴の特徴量とを比較することで、前記現フレームの前記第2の検出領域を検出する
請求項2に記載の画像処理装置。 - 前記第2の被写体検出手段は、前記入力画像から第3の特徴の特徴量を抽出して、前記入力画像の各領域における被写体らしさを示す被写体マップを生成し、前記被写体マップにより特定される前記入力画像の被写体らしい被写体候補領域の前記第2の特徴の特徴量と、前記前のフレームの前記第2の検出領域の前記第2の特徴の特徴量とを比較することで、前記第2の検出領域を検出する
請求項3に記載の画像処理装置。 - 前記第2の被写体検出手段は、前記前のフレームにおいて、前記第1の信頼度が前記第1の閾値以上であり、かつ前記第2の信頼度が前記第2の閾値未満であった場合、前記現フレームにおいて、前記被写体候補領域のうち、前記検出領域算出手段により求められた前記前のフレームの前記第2の検出領域から定まる領域を含む前記被写体候補領域を、前記第2の検出領域とする
請求項4に記載の画像処理装置。 - 前記入力画像を表示する表示手段と、
前記第1の信頼度に応じた表示形式で、前記入力画像上に前記第1の検出領域を囲む枠を表示させるとともに、前記第2の信頼度に応じた表示形式で、前記入力画像上に前記第2の検出領域を囲む枠を表示させる制御手段と
をさらに備える請求項1に記載の画像処理装置。 - 前記第1の信頼度および前記第2の信頼度に基づいて、前記入力画像を撮像する撮像手段のフォーカス制御、露出制御、または前記入力画像の符号化のビットレート制御を行なう制御手段をさらに備える
請求項1に記載の画像処理装置。 - 入力画像から第1の特徴の特徴量を抽出して、前記入力画像から予め定められた被写体の第1の部位が含まれる第1の検出領域を検出するとともに、前記第1の検出領域の検出の第1の信頼度を算出する第1の被写体検出手段と、
前記入力画像から第2の特徴の特徴量を抽出して、前記入力画像から前記第1の部位とは異なる前記被写体の第2の部位が含まれる第2の検出領域を検出するとともに、前記第2の検出領域の検出の第2の信頼度を算出する第2の被写体検出手段と、
前記第1の信頼度が第1の閾値以上であり、かつ前記第2の信頼度が第2の閾値以上である場合、前記第1の検出領域と前記第2の検出領域の相対的な位置およびサイズの関係を示す相対関係情報を生成して記録し、前記第1の信頼度が前記第1の閾値以上であり、かつ前記第2の信頼度が前記第2の閾値未満である場合、前記第1の検出領域の検出結果と、前記相対関係情報とを用いて前記第2の検出領域を求める検出領域算出手段と
を備える画像処理装置の画像処理方法であって、
前記第1の被写体検出手段が、前記入力画像から前記第1の検出領域を検出するとともに、前記第1の信頼度を算出し、
前記第2の被写体検出手段が、前記入力画像から前記第2の検出領域を検出するとともに、前記第2の信頼度を算出し、
前記検出領域算出手段が、前記第1の信頼度が前記第1の閾値以上であり、かつ前記第2の信頼度が前記第2の閾値以上である場合、前記相対関係情報を生成して記録し、前記第1の信頼度が前記第1の閾値以上であり、かつ前記第2の信頼度が前記第2の閾値未満である場合、前記第2の検出領域を求める
ステップを含む画像処理方法。 - 入力画像から第1の特徴の特徴量を抽出して、前記入力画像から予め定められた被写体の第1の部位が含まれる第1の検出領域を検出するとともに、前記第1の検出領域の検出の第1の信頼度を算出し、
前記入力画像から第2の特徴の特徴量を抽出して、前記入力画像から前記第1の部位とは異なる前記被写体の第2の部位が含まれる第2の検出領域を検出するとともに、前記第2の検出領域の検出の第2の信頼度を算出し、
前記第1の信頼度が第1の閾値以上であり、かつ前記第2の信頼度が第2の閾値以上である場合、前記第1の検出領域と前記第2の検出領域の相対的な位置およびサイズの関係を示す相対関係情報を生成して記録し、前記第1の信頼度が前記第1の閾値以上であり、かつ前記第2の信頼度が前記第2の閾値未満である場合、前記第1の検出領域の検出結果と、前記相対関係情報とを用いて前記第2の検出領域を求める
ステップを含む処理をコンピュータに実行させるプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010070494A JP5429564B2 (ja) | 2010-03-25 | 2010-03-25 | 画像処理装置および方法、並びにプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010070494A JP5429564B2 (ja) | 2010-03-25 | 2010-03-25 | 画像処理装置および方法、並びにプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011205387A JP2011205387A (ja) | 2011-10-13 |
JP5429564B2 true JP5429564B2 (ja) | 2014-02-26 |
Family
ID=44881549
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010070494A Expired - Fee Related JP5429564B2 (ja) | 2010-03-25 | 2010-03-25 | 画像処理装置および方法、並びにプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5429564B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019088511A1 (en) * | 2017-11-06 | 2019-05-09 | Samsung Electronics Co., Ltd. | Electronic device and method for reliability-based object recognition |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5625196B2 (ja) * | 2012-04-09 | 2014-11-19 | 株式会社モルフォ | 特徴点検出装置、特徴点検出方法、特徴点検出プログラム及び記録媒体 |
JP5959923B2 (ja) * | 2012-04-26 | 2016-08-02 | キヤノン株式会社 | 検出装置、その制御方法、および制御プログラム、並びに撮像装置および表示装置 |
JP6087615B2 (ja) * | 2012-12-19 | 2017-03-01 | キヤノン株式会社 | 画像処理装置およびその制御方法、撮像装置、および表示装置 |
US20190277624A1 (en) * | 2016-09-30 | 2019-09-12 | Nec Corporation | Information processing device, length measurement method, and program storage medium |
JP6922821B2 (ja) * | 2018-04-13 | 2021-08-18 | オムロン株式会社 | 画像解析装置、方法およびプログラム |
JP7176616B2 (ja) * | 2019-03-22 | 2022-11-22 | 日本電気株式会社 | 画像処理システム、画像処理装置、画像処理方法、及び画像処理プログラム |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007066199A (ja) * | 2005-09-01 | 2007-03-15 | Canon Inc | 画像処理装置及び画像処理方法 |
-
2010
- 2010-03-25 JP JP2010070494A patent/JP5429564B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019088511A1 (en) * | 2017-11-06 | 2019-05-09 | Samsung Electronics Co., Ltd. | Electronic device and method for reliability-based object recognition |
Also Published As
Publication number | Publication date |
---|---|
JP2011205387A (ja) | 2011-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5429564B2 (ja) | 画像処理装置および方法、並びにプログラム | |
JP4653155B2 (ja) | 画像処理方法及び装置 | |
JP2023526207A (ja) | フレーム中の標的物体を一定のサイズに維持すること | |
EP2198394B1 (en) | Face tracking in a camera processor | |
US8594435B2 (en) | Image processing device and method, and program therefor | |
EP2424226B1 (en) | Image-processing apparatus and method, and program | |
US20170339417A1 (en) | Fast and robust face detection, region extraction, and tracking for improved video coding | |
US20080013837A1 (en) | Image Comparison | |
JP5577793B2 (ja) | 画像処理装置および方法、並びにプログラム | |
JP5084696B2 (ja) | 画像処理装置、画像処理方法及び電子機器 | |
JP2010103980A (ja) | 画像処理方法、画像処理装置及びシステム | |
JP2010103972A (ja) | 画像処理装置及び電子機器 | |
US9020269B2 (en) | Image processing device, image processing method, and recording medium | |
Rahman et al. | Real-time face-priority auto focus for digital and cell-phone cameras | |
JP5803058B2 (ja) | 画像処理装置および方法、並びにプログラム | |
JP2011146827A (ja) | 画像処理装置および方法、並びにプログラム | |
JP6511950B2 (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP2011146826A (ja) | 画像処理装置および方法、並びにプログラム | |
JP2009124644A (ja) | 画像処理装置、撮像装置及び画像再生装置 | |
US12002279B2 (en) | Image processing apparatus and method, and image capturing apparatus | |
US20130121534A1 (en) | Image Processing Apparatus And Image Sensing Apparatus | |
JP2011071925A (ja) | 移動体追尾装置および方法 | |
JP5278307B2 (ja) | 画像処理装置及び方法、並びにプログラム | |
JP2007108965A (ja) | 変化領域計算方法、変化領域計算装置、変化領域計算プログラム | |
JP5445127B2 (ja) | 画像処理装置及び方法、並びにプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130228 |
|
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: 20131107 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131120 |
|
LAPS | Cancellation because of no payment of annual fees |