(57)【要約】【課題】  画像中のオブジェクトの検出において、同一の被写体を撮影した複数の画像を用いて、それを複数の検出工程として構成し、かつその画像間の関係を有効利用することにより、より簡単で効率的、かつ誤検出の少ないオブジェクト検出方法及び装置を提供する。【解決手段】  第１の画像に対する第１の検出工程と、前記検出工程での検出情報に基づいて、第２の画像に対する検出領域を設定する第２の検出領域設定工程と、前記検出領域に対する第２の検出工程と、前記第１及び第２の検出工程における検出結果に基づいて、オブジェクト検出を判定する判定工程とを含むことを特徴とするオブジェクト検出方法及び装置。【選択図】        図５
2006331266.tif 000002
【特許請求の範囲】
【請求項１】
異なる位置から同一の被写体に対する複数の画像を撮影する撮影装置により取得された第１の画像と第２の画像を用いて、前記第１の画像及び第２の画像中の特定のオブジェクトを検出するオブジェクト検出方法において、
前記第１の画像においてオブジェクト候補を検出する第１のオブジェクト検出工程と、
前記第１のオブジェクト検出工程で検出されたオブジェクト候補に基づいて、前記第２の画像における検出領域を設定する第２の検出領域設定工程と、
前記第２の検出領域設定工程で設定された検出領域でオブジェクト候補を検出する第２のオブジェクト検出工程と、
前記第２のオブジェクト検出工程におけるオブジェクト候補の検出結果に基づいて、オブジェクト検出を判定するオブジェクト判定工程とを含むことを特徴とするオブジェクト検出方法。
【請求項２】
前記第１のオブジェクト検出工程は、前記第１の画像におけるオブジェクト候補の位置と大きさに関する情報を検出するものであり、
前記第２の検出領域設定工程は、
前記第１のオブジェクト検出工程で検出されたオブジェクト候補の前記第１の画像における位置と大きさに関する情報から、前記オブジェクト候補と対応する前記第２の画像でのオブジェクト候補の位置と大きさを推定して、前記第２の画像においてオブジェクト候補を検出すべき領域を設定する、
ことを特徴とする請求項１に記載のオブジェクト検出方法。
【請求項３】
前記第１のオブジェクト検出工程は、前記第１の画像において異なる複数の検出領域を設定する第１の検出領域設定工程を含んでおり、かつ、前記第１の検出領域設定工程で設定されたそれぞれの検出領域において、オブジェクト候補を検出するものであり、
前記第２の検出領域設定工程は、前記第１のオブジェクト検出工程でオブジェクト候補が検出されたときに、それぞれのオブジェクト候補に対応付けられた、前記第２の画像における検出領域を設定し、
前記第２のオブジェクト検出工程は、前記第２の検出領域設定工程により設定されたそれぞれの検出領域において、オブジェクト候補を検出するものであり、
前記オブジェクト判定工程は、前記第１のオブジェクト検出工程で検出されたそれぞれのオブジェクト候補の検出結果と、前記第２のオブジェクト検出工程で対応付けて検出されたそれぞれのオブジェクト候補の検出結果とに基づいて、オブジェクト検出を判定する、
ことを特徴とする請求項１または２に記載のオブジェクト検出方法。
【請求項４】
前記第１のオブジェクト検出工程は、前記第１の画像において異なる複数のオブジェクト検出方法でオブジェクト候補を検出するものであり、
前記オブジェクト判定工程は、前記第１のオブジェクト検出工程において、設定された検出領域に対して、それぞれのオブジェクト検出方法のうち少なくとも一つの検出方法でオブジェクト候補が検出されなかった場合、当該検出領域ではオブジェクトは検出されないと判定する、
ことを特徴とする請求項１乃至３の何れか１項に記載のオブジェクト検出方法。
【請求項５】
前記第２のオブジェクト検出工程は、前記第２の画像において異なる複数のオブジェクト検出方法でオブジェクト候補を検出するものであり、
前記オブジェクト判定工程は、前記第２のオブジェクト検出工程において、設定された検出領域に対して、それぞれのオブジェクト検出方法のうち少なくとも一つの検出方法でオブジェクト候補が検出されなかった場合、当該検出領域ではオブジェクトは検出されないと判定する、
ことを特徴とする請求項１乃至４の何れか１項に記載のオブジェクト検出方法。
【請求項６】
前記第１のオブジェクト検出工程は、前記第１の検出領域設定工程で設定されたそれぞれの検出領域において、異なる複数のオブジェクト検出方法でオブジェクト候補を検出するものであり、
一つの検出方法により検出されたオブジェクト候補の数が、予め定められたしきい値以下のときに、第２のオブジェクト検出工程に移行する、
ことを特徴とする請求項１乃至５の何れか１項に記載のオブジェクト検出方法。
【請求項７】
前記検出するオブジェクトは顔であることを特徴とする請求項１乃至６の何れか１項に記載のオブジェクト検出方法。
【請求項８】
異なる位置から同一の被写体に対する複数の画像を撮影する撮影装置により取得された第１の画像と第２の画像を用いて、前記第１の画像及び第２の画像中の特定のオブジェクトを検出するオブジェクト検出装置において、
前記第１の画像においてオブジェクト候補を検出する第１のオブジェクト検出手段と、
前記第１のオブジェクト検出手段で検出されたオブジェクト候補に基づいて、前記第２の画像における検出領域を設定する第２の検出領域設定手段と、
前記第２の検出領域設定手段で設定された検出領域でオブジェクト候補を検出する第２のオブジェクト検出手段と、
前記第２のオブジェクト検出手段におけるオブジェクト候補の検出結果に基づいて、オブジェクト検出を判定するオブジェクト判定手段とを有することを特徴とするオブジェクト検出装置。
【請求項９】
前記第１のオブジェクト検出手段は、前記第１の画像におけるオブジェクト候補の位置と大きさに関する情報を検出するものであり、
前記第２の検出領域設定手段は、
前記第１のオブジェクト検出手段で検出されたオブジェクト候補の前記第１の画像における位置と大きさに関する情報から、前記オブジェクト候補と対応する前記第２の画像でのオブジェクト候補の位置と大きさを推定して、前記第２の画像においてオブジェクト候補を検出すべき領域を設定する、
ことを特徴とする請求項８に記載のオブジェクト検出装置。
【請求項１０】
前記第１のオブジェクト検出手段は、前記第１の画像において異なる複数の検出領域を設定する第１の検出領域設定手段を含んでおり、かつ、前記第１の検出領域設定手段で設定されたそれぞれの検出領域において、オブジェクト候補を検出するものであり、
前記第２の検出領域設定手段は、前記第１のオブジェクト検出手段でオブジェクト候補が検出されたときに、それぞれのオブジェクト候補に対応付けられた、前記第２の画像における検出領域を設定し、
前記第２のオブジェクト検出手段は、前記第２の検出領域設定手段により設定されたそれぞれの検出領域において、オブジェクト候補を検出するものであり、
前記オブジェクト判定手段は、前記第１のオブジェクト検出手段で検出されたそれぞれのオブジェクト候補の検出結果と、前記第２のオブジェクト検出手段で対応付けて検出されたそれぞれのオブジェクト候補の検出結果とに基づいて、オブジェクト検出を判定する、
ことを特徴とする請求項８または９に記載のオブジェクト検出装置。
【請求項１１】
前記第１のオブジェクト検出手段は、前記第１の画像において異なる複数のオブジェクト検出方法でオブジェクト候補を検出するものであり、
前記オブジェクト判定手段は、前記第１のオブジェクト検出手段において、設定された検出領域に対して、それぞれのオブジェクト検出方法のうち少なくとも一つの検出方法でオブジェクト候補が検出されなかった場合、当該検出領域ではオブジェクトは検出されないと判定する、
ことを特徴とする請求項８乃至１０の何れか１項に記載のオブジェクト検出装置。
【請求項１２】
前記第２のオブジェクト検出手段は、前記第２の画像において異なる複数のオブジェクト検出方法でオブジェクト候補を検出するものであり、
前記オブジェクト判定手段は、前記第２のオブジェクト検出手段において、設定された検出領域に対して、それぞれのオブジェクト検出方法のうち少なくとも一つの検出方法でオブジェクト候補が検出されなかった場合、当該検出領域ではオブジェクトは検出されないと判定する、
ことを特徴とする請求項８乃至１１の何れか１項に記載のオブジェクト検出装置。
【請求項１３】
前記第１のオブジェクト検出手段は、前記第１の検出領域設定手段で設定されたそれぞれの検出領域において、異なる複数のオブジェクト検出方法でオブジェクト候補を検出するものであり、
一つの検出方法により検出されたオブジェクト候補の数が、予め定められたしきい値以下のときに、第２のオブジェクト検出手段を動作させる、
ことを特徴とする請求項８乃至１２の何れか１項に記載のオブジェクト検出装置。
【請求項１４】
前記検出するオブジェクトは顔であることを特徴とする請求項８乃至１３の何れか１項に記載のオブジェクト検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像内の顔などのオブジェクトの検出方法及びオブジェクト検出装置に関するものである。
【背景技術】
【０００２】
従来、画像から顔などのオブジェクトを検出し、その領域を抽出する処理技術が重要な課題として開発されてきた。特に人間の顔については、より進んだ識別や表情認識の課題も重要となって来つつあり、そのベースである画像からの抽出処理自体の精度と効率がさらに要求されている。
【０００３】
人の顔の検出は様々な課題を抱えている。対象となる画像は、通常、制御不可能な照明下で撮影され、背景も一定ではないし、画像品質もよいとはいえず、オブジェクトとの距離も予測できない。当然、顔の位置および向きも、制御されていない。
【０００４】
しかしそういった状況下でも、誤検出がきわめて少なく、かつ検出のための処理時間が速くてすむような検出方法が求められてきた。
【０００５】
従来のオブジェクト、特に顔の検出方法としては、画像の濃淡を用いて事前に用意したテンプレートとのマッチング処理を行い最適のテンプレートを選択するテンプレートマッチング法などが知られている。また、検出領域の画像から様々な特徴量を抽出し、それらの特徴量の値から判定していく方法もある。どういう特徴量のどういう値が、オブジェクトの判定に重要であるかは、データを用いて実験的に設定していく、あるいは学習していくこともできる。他にも、検出領域の画像をベクトル空間に位置づけて、判別空間を設定したりするたぐいの検出方法も多数あり、その空間設定や判別の指標についても多数のバリエーションがある。
【０００６】
しかし、いずれの方法についても、精度（誤検出）の問題と速度（遅い）の問題が常について回った。特にたいていの方法においては、検出するために適切な矩形領域を設定する必要があり、実際的には、検出の精度を低下させぬためには、適切な矩形領域でもって対象となる画像全体をスキャンし、検出される矩形領域を探索する必要があった。このため多大な時間を要したりする。
【０００７】
従って検出の処理自体を簡単にし、全体の処理時間を長くしないと共に、誤検出は増やさないことが求められている。
【０００８】
この検出の精度と速度の問題に対して、複数の簡単な検出方法を組み合わせて、総合的に検出判定するようなタイプの処理技術も提案されている（例えば、特許文献１参照）。
【０００９】
特許文献１では、カスケード式検出方法と呼ばれる検出処理を提案している。一つ一つは簡単な検出力が弱い識別器を多数、カスケード式に、すなわち順々に実行して、各実行結果による評価値が累積され、その積み重ねにより、順次受け入れ、拒否、検出続行の分別を行っていくものである。これにより、判別しやすい矩形領域は早い段階で判別が決定され、判別しにくいものが後まで残っていくので、処理時間もそれほど長くならないというものである。
【００１０】
しかしながら、精度、すなわち誤検出の問題については、簡単で検出力が弱い識別器を用いるため、その数をどのくらい用意するかに依存してしまう。また、単に検出力のよく似た識別器を増やすだけでは、効果に限界がある。誤検出をより少なくするための、別の手段を付加することが望まれる。
【００１１】
また、ステレオ画像を利用して、検出すべきオブジェクトのサイズを特定し、矩形領域を網羅的に探索していく手間を省こうというタイプの技術も提案されている（例えば、特許文献２参照）。
【００１２】
特許文献２では、ステレオ画像を利用して距離情報を求めている。ステレオ画像は立体視可能なように撮影された視差のある二つの画像からなる。これから画像中の特定の箇所毎に距離情報を算出することができる。画像全体に渡って距離情報を求めると、被写体のエッジ部が求められ、それによりオブジェクト候補の輪郭を導き出そうというものである。オブジェクト候補の位置と大きさがほぼ推定できるなら、矩形領域の探索の手間が大幅に省け、処理を高速化できるというものである。
【００１３】
しかしながら、検出する処理自体は従来の方法を必要とする。また、オブジェクト候補の輪郭をより正確に求めるには、距離情報の算出精度が問題になってくる。精度のよくない距離情報よりも、ステレオ画像そのものを検出に利用することが望まれる。
【特許文献１】特開２００４−２５２９４０号公報
【特許文献２】特開２００２−２１６１２９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１４】
本発明の目的は、画像中のオブジェクトの検出において、同一の被写体を撮影した複数の画像を用いて、それを複数の検出工程として構成し、かつその画像間の関係を有効利用することにより、上記課題を解決し、より簡単で効率的、かつ誤検出の少ないオブジェクト検出方法及びオブジェクト検出装置を提供することである。
【課題を解決するための手段】
【００１５】
本発明の目的は、以下の構成により達成することができる。
【００１６】
（請求項１）
異なる位置から同一の被写体に対する複数の画像を撮影する撮影装置により取得された第１の画像と第２の画像を用いて、前記第１の画像及び第２の画像中の特定のオブジェクトを検出するオブジェクト検出方法において、前記第１の画像においてオブジェクト候補を検出する第１のオブジェクト検出工程と、前記第１のオブジェクト検出工程で検出されたオブジェクト候補に基づいて、前記第２の画像における検出領域を設定する第２の検出領域設定工程と、前記第２の検出領域設定工程で設定された検出領域でオブジェクト候補を検出する第２のオブジェクト検出工程と、前記第２のオブジェクト検出工程におけるオブジェクト候補の検出結果に基づいて、オブジェクト検出を判定するオブジェクト判定工程とを含むことを特徴とするオブジェクト検出方法。
【００１７】
（請求項２）
前記第１のオブジェクト検出工程は、前記第１の画像におけるオブジェクト候補の位置と大きさに関する情報を検出するものであり、前記第２の検出領域設定工程は、前記第１のオブジェクト検出工程で検出されたオブジェクト候補の前記第１の画像における位置と大きさに関する情報から、前記オブジェクト候補と対応する前記第２の画像でのオブジェクト候補の位置と大きさを推定して、前記第２の画像においてオブジェクト候補を検出すべき領域を設定する、ことを特徴とする請求項１に記載のオブジェクト検出方法。
【００１８】
（請求項３）
前記第１のオブジェクト検出工程は、前記第１の画像において異なる複数の検出領域を設定する第１の検出領域設定工程を含んでおり、かつ、前記第１の検出領域設定工程で設定されたそれぞれの検出領域において、オブジェクト候補を検出するものであり、前記第２の検出領域設定工程は、前記第１のオブジェクト検出工程でオブジェクト候補が検出されたときに、それぞれのオブジェクト候補に対応付けられた、前記第２の画像における検出領域を設定し、前記第２のオブジェクト検出工程は、前記第２の検出領域設定工程により設定されたそれぞれの検出領域において、オブジェクト候補を検出するものであり、前記オブジェクト判定工程は、前記第１のオブジェクト検出工程で検出されたそれぞれのオブジェクト候補の検出結果と、前記第２のオブジェクト検出工程で対応付けて検出されたそれぞれのオブジェクト候補の検出結果とに基づいて、オブジェクト検出を判定する、ことを特徴とする請求項１または２に記載のオブジェクト検出方法。
【００１９】
（請求項４）
前記第１のオブジェクト検出工程は、前記第１の画像において異なる複数のオブジェクト検出方法でオブジェクト候補を検出するものであり、前記オブジェクト判定工程は、前記第１のオブジェクト検出工程において、設定された検出領域に対して、それぞれのオブジェクト検出方法のうち少なくとも一つの検出方法でオブジェクト候補が検出されなかった場合、当該検出領域ではオブジェクトは検出されないと判定する、ことを特徴とする請求項１乃至３の何れか１項に記載のオブジェクト検出方法。
【００２０】
（請求項５）
前記第２のオブジェクト検出工程は、前記第２の画像において異なる複数のオブジェクト検出方法でオブジェクト候補を検出するものであり、前記オブジェクト判定工程は、前記第２のオブジェクト検出工程において、設定された検出領域に対して、それぞれのオブジェクト検出方法のうち少なくとも一つの検出方法でオブジェクト候補が検出されなかった場合、当該検出領域ではオブジェクトは検出されないと判定する、ことを特徴とする請求項１乃至４の何れか１項に記載のオブジェクト検出方法。
【００２１】
（請求項６）
前記第１のオブジェクト検出工程は、前記第１の検出領域設定工程で設定されたそれぞれの検出領域において、異なる複数のオブジェクト検出方法でオブジェクト候補を検出するものであり、一つの検出方法により検出されたオブジェクト候補の数が、予め定められたしきい値以下のときに、第２のオブジェクト検出工程に移行する、ことを特徴とする請求項１乃至５の何れか１項に記載のオブジェクト検出方法。
【００２２】
（請求項７）
前記検出するオブジェクトは顔であることを特徴とする請求項１乃至６の何れか１項に記載のオブジェクト検出方法。
【００２３】
（請求項８）
異なる位置から同一の被写体に対する複数の画像を撮影する撮影装置により取得された第１の画像と第２の画像を用いて、前記第１の画像及び第２の画像中の特定のオブジェクトを検出するオブジェクト検出装置において、前記第１の画像においてオブジェクト候補を検出する第１のオブジェクト検出手段と、前記第１のオブジェクト検出手段で検出されたオブジェクト候補に基づいて、前記第２の画像における検出領域を設定する第２の検出領域設定手段と、前記第２の検出領域設定手段で設定された検出領域でオブジェクト候補を検出する第２のオブジェクト検出手段と、前記第２のオブジェクト検出手段におけるオブジェクト候補の検出結果に基づいて、オブジェクト検出を判定するオブジェクト判定手段とを有することを特徴とするオブジェクト検出装置。
【００２４】
（請求項９）
前記第１のオブジェクト検出手段は、前記第１の画像におけるオブジェクト候補の位置と大きさに関する情報を検出するものであり、前記第２の検出領域設定手段は、前記第１のオブジェクト検出手段で検出されたオブジェクト候補の前記第１の画像における位置と大きさに関する情報から、前記オブジェクト候補と対応する前記第２の画像でのオブジェクト候補の位置と大きさを推定して、前記第２の画像においてオブジェクト候補を検出すべき領域を設定する、ことを特徴とする請求項８に記載のオブジェクト検出装置。
【００２５】
（請求項１０）
前記第１のオブジェクト検出手段は、前記第１の画像において異なる複数の検出領域を設定する第１の検出領域設定手段を含んでおり、かつ、前記第１の検出領域設定手段で設定されたそれぞれの検出領域において、オブジェクト候補を検出するものであり、前記第２の検出領域設定手段は、前記第１のオブジェクト検出手段でオブジェクト候補が検出されたときに、それぞれのオブジェクト候補に対応付けられた、前記第２の画像における検出領域を設定し、前記第２のオブジェクト検出手段は、前記第２の検出領域設定手段により設定されたそれぞれの検出領域において、オブジェクト候補を検出するものであり、前記オブジェクト判定手段は、前記第１のオブジェクト検出手段で検出されたそれぞれのオブジェクト候補の検出結果と、前記第２のオブジェクト検出手段で対応付けて検出されたそれぞれのオブジェクト候補の検出結果とに基づいて、オブジェクト検出を判定する、ことを特徴とする請求項８または９に記載のオブジェクト検出装置。
【００２６】
（請求項１１）
前記第１のオブジェクト検出手段は、前記第１の画像において異なる複数のオブジェクト検出方法でオブジェクト候補を検出するものであり、前記オブジェクト判定手段は、前記第１のオブジェクト検出手段において、設定された検出領域に対して、それぞれのオブジェクト検出方法のうち少なくとも一つの検出方法でオブジェクト候補が検出されなかった場合、当該検出領域ではオブジェクトは検出されないと判定する、ことを特徴とする請求項８乃至１０の何れか１項に記載のオブジェクト検出装置。
【００２７】
（請求項１２）
前記第２のオブジェクト検出手段は、前記第２の画像において異なる複数のオブジェクト検出方法でオブジェクト候補を検出するものであり、前記オブジェクト判定手段は、前記第２のオブジェクト検出手段において、設定された検出領域に対して、それぞれのオブジェクト検出方法のうち少なくとも一つの検出方法でオブジェクト候補が検出されなかった場合、当該検出領域ではオブジェクトは検出されないと判定する、ことを特徴とする請求項８乃至１１の何れか１項に記載のオブジェクト検出装置。
【００２８】
（請求項１３）
前記第１のオブジェクト検出手段は、前記第１の検出領域設定手段で設定されたそれぞれの検出領域において、異なる複数のオブジェクト検出方法でオブジェクト候補を検出するものであり、一つの検出方法により検出されたオブジェクト候補の数が、予め定められたしきい値以下のときに、第２のオブジェクト検出手段を動作させる、ことを特徴とする請求項８乃至１２の何れか１項に記載のオブジェクト検出装置。
【００２９】
（請求項１４）
前記検出するオブジェクトは顔であることを特徴とする請求項８乃至１３の何れか１項に記載のオブジェクト検出装置。
【発明の効果】
【００３０】
請求項１及び８に記載の発明によれば、
同一の被写体を撮影した複数の画像を用いて、それを複数のオブジェクト検出工程として構成し、それらの検出工程でオブジェクト候補が検出された場合のみオブジェクトの検出を判定し、一度でも検出されないと非検出としてその後の処理を打ち切ることにより、より簡単で効率的、かつ誤検出の少ないオブジェクト検出方法を提供することができる。
【００３１】
請求項２及び９に記載の発明によれば、
同一の被写体を撮影した複数の画像を用いて、それを複数のオブジェクト検出工程として構成し、先行する工程で設定した検出領域に応じて、次の工程での検出領域を特定することにより、オブジェクト検出方法をさらに簡単で効率的にすることができる。
【００３２】
請求項３，４，５，１０，１１そして１２に記載の発明によれば、
同一の被写体を撮影した複数の画像を用いて、それを複数のオブジェクト検出工程として構成し、各々の工程で適切な、異なる複数の検出領域設定及び異なる複数の検出方法設定と組み合わせることにより、オブジェクト検出方法をさらに誤検出の少ないものにすることができる。
【００３３】
請求項６及び１３に記載の発明によれば、
同一の被写体を撮影した複数の画像を用いて、それを複数のオブジェクト検出工程として構成し、各々の工程で適切な検出領域設定及び検出方法設定と組み合わせるにあたり、検出工程でオブジェクト候補が一度でも検出されないと非検出としてその後の処理を打ち切ることにより、検出方法の変更される毎にオブジェクト候補の数が減っていくように複数のオブジェクト検出工程を構成することができ、さらに打ち切りによりオブジェクト候補の数が所定のしきい値以下になったかどうかで処理のステップを変更することにより、オブジェクト検出方法をさらに簡単で効率的にすることができる。
【００３４】
請求項７及び１４に記載の発明によれば、
同一の被写体を撮影した複数の画像を用いて、それを複数の顔検出工程として構成し、各々の工程で適切な検出領域設定及び検出方法設定と組み合わせることにより、また先行する工程で設定した検出領域に応じて、次の工程での検出領域を特定することができることにより、またすべての検出工程の顔候補検出結果を総合して、顔の検出を判定することにより、画像中での検出が困難な人の顔に対して、より簡単で効率的、かつ誤検出の少ない顔検出方法を提供することができる。
【発明を実施するための最良の形態】
【００３５】
本発明に係る撮影装置としてステレオカメラを使用し、前記ステレオカメラを用いて取得した第１、第２の画像からオブジェクトを検出する場合を例にして、本発明に係るオブジェクト検出方法及びオブジェクト検出装置の実施形態の例を説明する。
【００３６】
検出したいオブジェクトとしては、人間あるいはその顔が要求されることが多い。以下の例では、人の顔を検出すべきオブジェクトとして考える。
【００３７】
顔は、人間が視覚的に特定の個人を同定するために、最も簡単に精度よく利用できるものである。従って、画像から人の顔を自動的に抽出する多くの顔検出方法が研究されてきた。また、検出のみならず、検出した顔から機械的に特定の個人を認証できるシステムも要求が高まっている。顔から特定の個人を認証するために顔の三次元情報を利用することも盛んになってきており、顔の検出にも三次元情報の元になるステレオ画像が用いられるケースが増えて来ている。
【００３８】
図１は、本発明に係る撮影装置の一実施形態であるステレオカメラ１の外観図である。
【００３９】
ステレオカメラ１は、平行に位置する第１の光学系Ａと第２の光学系Ｂの二つの光学系を有し、両方の光学系は、特定の位置にある被写体をある視差を以て撮影するような配置構造となっている。従って検出したいオブジェクト、例えば顔が撮影された画像中に写っている場合は、二つの光学系、つまり第１の光学系Ａと第２の光学系Ｂにより撮影された第１の画像と第２の画像の両方に写っているはずである。
【００４０】
図９に、ステレオカメラで撮影された第１の画像（画像ＡＸ１）と第２の画像（画像ＢＸ１）のサンプルを簡略化した図にして示す。画像間には視差があり、同一の被写体Ｐが写っているが、その水平方向の位置は異なっている。本実施形態例では、この第１の画像と第２の画像の特別な関係を利用して、検出の処理を効率化すると共に、検出の精度を向上するものである。
【００４１】
なお、ステレオカメラを例にしているが、撮影装置は、それに限定されるものではなく、複数の撮影装置を組み合わせたものでもよい。異なる位置から同一の被写体に対する複数の画像を撮影するものであり、その配置関係が特定できるような撮影装置であればその配置構成は問わない。
【００４２】
図２は、図１に示したステレオカメラ１及び本発明に係るオブジェクト検出装置の一実施形態である画像処理装置２からなるオブジェクト検出システムの構成を示すブロック図である。図２を用いて、ステレオカメラ１で撮影した第１の画像と第２の画像が、画像処理装置２におけるオブジェクト検出のための画像処理部３により取得される流れを説明する。
【００４３】
画像処理装置２はオブジェクト検出装置として機能する。画像処理装置２において、画像処理部３がオブジェクト検出処理を実行する。
【００４４】
ステレオカメラ１において、Ａは第１の光学系である。Ｂは第１の光学系と光軸が平行になるよう配置された第２の光学系である。９は第１の光学系Ａにより結像された第１の画像を撮像する第１の撮像素子である。１０は第２の光学系Ｂにより結像された第２の画像を撮像する第２の撮像素子である。第１の撮像素子９及び第２の撮像素子１０によって撮像された第１の画像と第２の画像は、それぞれ電気信号に変換され、出力画像生成部１１に送られる。
【００４５】
出力画像生成部１１で出力のためにデジタル画像データとして画像形成された第１の画像と、第２の画像は、画像出力部１２により通信経路１３を通じて画像入力部５に送られ、オブジェクト検出処理を実行する画像処理部３により取得される。画像処理部３は取得した第１の画像と第２の画像を一旦メモリ４に格納し、オブジェクト検出処理に備える。
【００４６】
なお、本実施形態例では、オブジェクト検出処理はステレオカメラ１の外部の画像処理装置２で行っているが、ステレオカメラ自体がオブジェクト検出処理を実行する画像処理部３を含むような構成であってもよい。また、第１の画像と第２の画像は、通信経路１３を経るのではなく、一旦取り外し可能な記録媒体に移されて、その後読み出されるものであってもよい。画像処理部３の画像取得方法は、様々な形態が可能である。
【００４７】
画像処理部３によるオブジェクト検出結果は、必要に応じて、適宜ディスプレイやプリンタを含む出力部６により表示またはプリントアウトされる。
【００４８】
図３を用いて、画像処理部３の構成を説明する。図３は図２における画像処理装置２のうち、画像処理部３とメモリ４の構成を示すブロック図である。
【００４９】
画像処理部３において、３１は、ＣＰＵとプログラムを格納するＲＯＭ、作業領域としてのＲＡＭなどのメモリを含む制御部であり、画像処理部３全体の活動を制御する。３２は画像切り換え部であり、主として、処理工程に応じて第１及び第２の画像の一方を保持するために機能する。３３はオブジェクト判定部であり、オブジェクト判定手段として機能する。すなわち、後述のオブジェクト判定工程を実行する。
【００５０】
３４は第１検出領域設定部であり、第１の検出領域設定手段として機能する。すなわち、後述の第１の検出領域設定工程を実行する。３５は第１検出方法設定部であり、第１の検出方法設定手段として機能する。すなわち、後述の第１の検出方法設定工程を実行する。３６は第１オブジェクト検出部であり、前記第１検出領域設定部及び第１検出方法設定部と協同して、前記第１のオブジェクト検出手段として機能する。すなわち、後述の第１のオブジェクト検出工程を実行する。
【００５１】
３７は第２検出領域設定部であり、第２の検出領域設定手段として機能する。すなわち、後述の第２の検出領域設定工程を実行する。３８は第２検出方法設定部であり、第２の検出方法設定手段として機能する。すなわち、後述の第２の検出方法設定工程を実行する。３９は第２オブジェクト検出部であり、第２のオブジェクト検出手段として機能する。すなわち、後述の第２のオブジェクト検出工程を実行する。
【００５２】
メモリ４において、４１は複数の検出情報であり、例えば、第１検出領域設定部３４や第２検出領域設定部３７で設定された検出領域の位置情報や検出領域の大きさ情報、第１オブジェクト検出部３６や第２オブジェクト検出部３９で検出されたオブジェクト候補の評価値等が含まれる。
【００５３】
４３には、オブジェクト候補を検出した複数の検出領域の具体的データが、検出データとして格納される。検出情報４１にはインデックス情報が格納されており、その実体が検出データ４３である。
【００５４】
図４（ａ）には、メモリ４に記憶される検出データ４３の内容の例を示す。通し番号４３１、第１の画像に対するオブジェクト候補を検出した領域の始点座標４３２、同じく終点座標４３３、必要ならば検出時の評価値４３４、それらに対応して、第２の画像でオブジェクト候補を検出した領域の始点座標４３５、同じく終点座標４３６、必要ならば検出時の評価値４３７などである。始点座標と終点座標から位置と大きさが求められる。
【００５５】
検出情報４１は、オブジェクト判定部３３により、制御部３１を通じてアクセスされる。その動作は、検出情報の書き込み、あるいは削除である。一度でもオブジェクト検出と判定されると検出情報が書き込み、または保持され、一度でもオブジェクト非検出と判定されると検出情報が削除される。また第２検出領域設定部３７からも、検出領域設定のための情報として読み出される。
【００５６】
４２は複数の検出方法の情報であり、実行済み及び残余の検出方法も含めて、インデックス情報が格納されている。４４には複数の検出方法の本体データが予め格納されている。図４（ｂ）には、メモリ４に記憶されている検出方法データ４４の内容の例を示す。通し番号４４１、第１の画像に対するオブジェクト候補の検出方法、すなわち第１の検出方法４４２、第２の画像に対するオブジェクト候補の検出方法、すなわち第２の検出方法４４３などである。これらはオブジェクト検出処理に先立って予め記憶されており、処理中に書き換え、または削除されることはない。
【００５７】
検出方法情報４２は、同じく制御部３１を通じて、第１検出方法設定部３５及び第２検出方法設定部３８により、検出方法設定のためにアクセスされる。また、検出方法の繰り返しにおいて、実行済み、あるいは残余の検出方法を確認し、処理の流れを切り換えるためにもアクセスされる。
【００５８】
これらの画像処理部３の各構成要素が動作する手順については、以下の処理例を用いて詳しく説明する。
【００５９】
（処理例１）
図５を用いて、オブジェクト検出処理の処理例１を説明する。図５は処理例１によるオブジェクト検出処理の流れを示すフローチャートである。
【００６０】
オブジェクト検出処理を開始すると、まずステップＳ１１でメモリ４に格納されている第１の画像、第２の画像を読み出す。あるいはステレオカメラ１から、あるいはその他の記憶装置から、受信して取得してもよい。
【００６１】
次に、第１の検出領域設定工程であるステップＳ１２で、第１検出領域設定部３４が、第１の画像に対して、第１の検出領域を設定する。具体的には、適当なサブウィンドウを設定し、そのサブウィンドウで第１の画像の全領域をスキャンしていく。
【００６２】
図６を用いてステップＳ１２で実行されるサブウィンドウのスキャンを説明する。図６（ａ）は、第１の画像の全領域５１に対してサブウィンドウ６１を設定したところを示す。
【００６３】
このサブウィンドウ６１の領域が、第１の検出領域として設定されることになる。この設定した第１の検出領域、すなわちサブウィンドウ６１に対してオブジェクト、すなわち顔の検出処理が実行されるが、検出処理が実行されるのは一つのサブウィンドウだけではなく、サブウィンドウを第１の画像全領域５１に渡ってスキャンすることにより、第１の画像全領域５１に対して検出処理を行うことになる。
【００６４】
図６（ａ）にはサブウィンドウ６１が矢印方向に画素単位でずらされ、スキャンされる様子を示す。水平方向にスキャンが終わると垂直方向にまた画素単位でずらされ、同じくスキャンを継続する。このようにして第１の画像５１中のあらゆる位置にあるサブウィンドウ６１、すなわち検出領域に対してオブジェクト検出処理が実行されることになる。
【００６５】
図６（ｂ）には、第１の画像の全領域５１に対して、図６（ａ）とは異なるサイズのサブウィンドウ６２を設定したところを示す。第１の画像中５１に検出すべきオブジェクトがあるとしても、そのサイズは不明である。異なるサイズのオブジェクトに対しても同様の検出方法を適用するために、サブウィンドウのサイズを少しずつ変えて、やはり第１の画像の全領域５１をスキャンする。これでオブジェクトのサイズが異なっても、検出することができる。
【００６６】
従って、サブウィンドウのサイズを様々に変え、かつスキャンをしてその都度検出処理を行っていくことになる。
【００６７】
また、サイズを変える別法として、第１の画像の解像度変換を行い、第１の画像のサイズ自体を少しずつ変えていき、ウィンドウは同じサイズで、それら複数の解像度変換された画像をスキャンしていくという方法もある。この方法だと、検出領域のサイズは不変なのでサイズを考慮することなく効率的に検出処理を実行することができる。
【００６８】
このようにスキャンの方法は様々な形態があり得るが、要は、第１の画像の全領域中のどの位置にどのサイズでオブジェクトが存在していても検出できるように、第１の画像に対して網羅的に第１の検出領域を設定していくということである。
【００６９】
本処理例では、処理を繰り返すことにより、第１の検出領域設定を順次変更して、第１の画像の全領域を網羅的にスキャンするようにした。
【００７０】
図５に戻って、第１の検出方法設定工程であるステップＳ１３では、第１検出方法設定部３５が、ステップＳ１２で設定した第１の検出領域に対するオブジェクト検出方法の設定を行う。
【００７１】
オブジェクト検出方法は様々な公知の方法があり、任意の方法を設定すればよい。例えば、テンプレートマッチングのような方法でもよい。様々なテンプレートを用意し、各々とのマッチング度合いから判定していき、多数の用意されたテンプレートの判定を総合して判定するようにすれば、全体としての精度を上げることもできる。
【００７２】
検出領域の画像から様々な特徴量を抽出し、それらの特徴量の値から判定していく方法もある。どういう特徴量のどういう値が、オブジェクトの判定に重要であるかは、データを用いて実験的に設定していく、あるいは学習していくことで検出精度を上げることもできる。
【００７３】
他にも、検出領域の画像をベクトル空間に位置づけて、判別空間を設定したりするたぐいの検出方法も多数あり、その空間設定や判別の指標についても多数のバリエーションがある。
【００７４】
本処理例においては、具体的な検出方法は問わないが、検出の精度と検出の速さを兼ね備えるために、簡単な検出方法、すなわち弱い識別手段を多数、カスケード式に構成し、順次試して、総合的に判定することを前提としている。
【００７５】
このようにすれば、ステップＳ１３が何度も繰り返され、その都度異なる検出方法が設定されるようなオブジェクト検出処理も可能である。またステップＳ１３で設定する検出方法は、複数の検出方法からなる検出方法であってもよい。
【００７６】
本処理例は、複数の検出方法を予め用意しておき、それらすべてを順次実行すべく、繰り返し処理を行うようにしたが、こういった検出処理の方法についての詳細は後述する。
【００７７】
次に、第１のオブジェクト検出工程であるステップＳ１４で、第１オブジェクト検出部３６が、ステップＳ１２で設定した第１の検出領域に対して、ステップＳ１３で設定した第１の検出方法を適用し、オブジェクト候補の検出処理を実行する。
【００７８】
ステップＳ１４の検出工程はオブジェクトの候補があるかどうかの結果を出力する。この段階では候補であり、オブジェクト検出の判定は、すべてのオブジェクト検出工程を終えることにより判定されることになる。
【００７９】
ステップＳ１５では、ステップＳ１４の第１のオブジェクト検出工程の結果に対してオブジェクトの候補が検出されたかどうかを判別する。オブジェクトの候補が検出された場合（ステップＳ１５：ＹＥＳ）は、ステップＳ１６を実行し、オブジェクト候補の検出情報をメモリに記憶して、ステップＳ１８へ進む。ステップＳ１６で記憶されるのは、検出領域の位置情報、検出領域の大きさ情報などであり、検出方法によっては、オブジェクト候補の評価値等も含まれる。
【００８０】
なお、メモリ４に記憶されるオブジェクト候補の検出情報４１は、異なる検出領域でオブジェクト候補の検出を行うことで増加し、異なる検出方法でオブジェクト候補の検出を行うことにより減少する。最終的にすべての検出方法を試した後で残ったオブジェクト候補がオブジェクトとして判定されることになる。
【００８１】
ステップＳ１５でオブジェクトの候補が検出されなかった場合（ステップＳ１５：ＮＯ）は、ステップＳ１７を実行し、この時点で当該検出領域にはオブジェクト候補が検出されなかったと判定する。もし該当する検出領域の位置情報、検出領域の大きさ情報が既に記憶されている場合は、その検出情報を削除することになる。一旦検出情報が削除されると、その検出情報が参照されることはない、すなわち同じ検出領域に対してその後新たな検出方法が試されることはない。従って次のステップＳ１８は省略され、ステップＳ１９へ進むことになる。
【００８２】
要は、用意されたすべての検出方法に対してオブジェクト候補が検出された場合にのみ、その検出領域に対してオブジェクト検出の判定を下し、用意されたすべての検出方法の中で一度でもオブジェクト候補が検出されないと、その検出領域はオブジェクト非検出の判定を下し、それ以後のその検出領域に対する検出処理は打ち切るのである。
【００８３】
この第１の検出領域に対するステップＳ１５の判別とステップＳ１６、Ｓ１７の検出情報の記憶管理、そして後述する第２の検出領域に対するステップＳ２４の判別とステップＳ２５、Ｓ２６の検出情報の記憶管理は、オブジェクト判定部３３により、オブジェクト検出処理の終了までに何度も繰り返されることになるが、それらすべての工程が総合されてオブジェクト判定工程が形成されることになる。
【００８４】
ステップＳ１８では、予め用意された複数の検出方法がすべて試されたかどうかを判定する。設定された第１の検出領域に対して、すべての検出方法が終了している場合（ステップＳ１８：ＹＥＳ）は、ステップＳ１９に進む。未実行の検出方法が残っている場合（ステップＳ１８：ＮＯ）は、ステップＳ１３の第１の検出方法設定工程に戻り、新たな検出方法を設定の上、引き続く処理を繰り返すことになる。
【００８５】
ステップＳ１９では、第１の画像に対する第１の検出領域のスキャンがすべて終了したかどうかを判定する。スキャンが終了し、すべての検出領域設定が終了している場合（ステップＳ１９：ＹＥＳ）は、ステップＳ２０に進む。検出領域のスキャンが残っている場合（ステップＳ１９：ＮＯ）は、ステップＳ１２の第１の検出領域設定工程に戻り、スキャンを継続して新たな検出領域を設定の上、引き続く処理を繰り返すことになる。
【００８６】
ステップＳ１９を終えてステップＳ２０へ進んだ時点で、第１の画像の全領域をスキャンしたすべて第１の検出領域に対して、すべての用意された第１の検出方法を適用し、すべての第１のオブジェクト検出工程が終了したことになる。
【００８７】
もちろん、ここまでの処理途中でオブジェクト候補が非検出という結果になり、検出情報４１としてメモリ４に記憶されなかった、あるいは削除された検出領域が多数あるはずである。ステップＳ２０へ進んだ時点で検出情報４１としてメモリ４に記憶されている検出領域は、まだオブジェクト候補が検出され続けているということであり、引き続く第２の画像での検出処理でも検出情報４１としてメモリ４に記憶が保持されていれば、最終的に当該検出領域におけるオブジェクト検出と判定されることになる。
【００８８】
従って、以下の第２の画像に対する処理は、ここまでに検出情報として記憶されている検出領域だけを対象として順次実行される。
【００８９】
ステップＳ２０では、メモリ４から順次検出情報４１を読み出していく。これは、第１の画像に対してはスキャン操作により網羅的に第１の検出領域を設定したのに対して、第２の画像に対しては、第１の画像に対する結果からオブジェクト候補があると推定される検出領域のみを第２の検出領域として設定していく操作になる。
【００９０】
次の、第２の検出領域設定工程であるステップＳ２１では、第２検出領域設定部３７が、ステップＳ２０で読み出された検出情報４１に基づき、その検出情報４１に対応する第２の画像における第２の検出領域を設定する。
【００９１】
ステップＳ１６で記憶され、ステップＳ２０で読み出された検出情報（位置情報と大きさ情報）は、第１の画像中で検出されたオブジェクト候補の位置と大きさを表しており、第２の画像中での対応するオブジェクト候補の位置と大きさを推定するのに用いられる。
【００９２】
つまり、第２の画像においては、第１の画像の場合と異なり、検出領域の設定は第２の画像の全領域をスキャンするのではなく、第１の画像で検出されたオブジェクト候補の検出情報から、第２の画像中の対応するオブジェクト候補が存在する位置とサイズを推定し、その領域を第２の検出領域として設定する。
【００９３】
ステップＳ２１で実行される第２の検出領域の設定方法についての詳細は後述する。
【００９４】
次に、第２の検出方法設定工程であるステップＳ２２では、第２検出方法設定部３８が、ステップＳ２１で設定された第２の検出領域に対して、オブジェクト検出方法の設定を行う。
【００９５】
本処理例では、第２の画像についても、第１の画像の場合と同じく、複数の検出方法を予め用意しておき、繰り返し処理でそれらすべてを順次実行するようにした。これら複数の検出方法は、本処理例では第１の画像についての複数の検出方法と同じ検出方法を使用したが、もちろん第１の画像の場合と異なる検出方法を使用してもよい。また、一つの検出方法が複数の検出方法から構成されていてもよい。
【００９６】
次に、第２のオブジェクト検出工程であるステップＳ２３で、第２オブジェクト検出部３９が、ステップＳ２１で設定した第２の検出領域に対して、ステップＳ２２で設定した第２の検出方法を適用し、オブジェクト候補の検出処理を実行する。
【００９７】
第１の画像の場合と同様に、設定した検出方法による検出工程はオブジェクトの候補があるかどうかの結果を出力する。
【００９８】
ステップＳ２４では、ステップＳ２３の第２のオブジェクト検出工程の結果に対してオブジェクトの候補が検出されたかどうかを判別する。オブジェクトの候補が検出された場合（ステップＳ２４：ＹＥＳ）は、ステップＳ２５を実行し、オブジェクト候補の検出情報をメモリに記憶して、ステップＳ２７へ進む。
【００９９】
第１の画像についての検出処理でメモリ４に記憶され続けたオブジェクト候補の検出情報４１ではあるが、第２の画像についてさらに多数の検出方法を試すことにより、さらに減っていくことになる。第２の画像についてのすべての検出方法を試した後で残ったオブジェクト候補がオブジェクトとして判定されることになる。
【０１００】
ステップＳ２４でオブジェクトの候補が検出されなかった場合（ステップＳ２４：ＮＯ）は、ステップＳ２６を実行し、この時点で当該検出領域にはオブジェクト候補が検出されなかったと判定する。従って該当する検出領域の位置情報と大きさ情報は、その検出情報を削除することになる。一旦検出情報が削除されると、その検出情報が参照されることはない、すなわち同じ検出領域に対してその後新たな検出方法が試されることはないのは、第１の画像の場合と同様である。従って次のステップＳ２７は省略され、ステップＳ２８へ進むことになる。
【０１０１】
ステップＳ２７では、予め用意された複数の検出方法がすべて試されたかどうかを判定する。設定された第２の検出領域に対して、すべての検出方法が終了している場合（ステップＳ２７：ＹＥＳ）は、ステップＳ２８に進む。未実行の検出方法が残っている場合（ステップＳ２７：ＮＯ）は、ステップＳ２２の第２の検出方法設定工程に戻り、新たな検出方法を設定の上、引き続く処理を繰り返すことになる。
【０１０２】
ステップＳ２８では、メモリに記憶されていたすべての検出情報を読み出し、第２の画像に対して、その検出情報に対応するすべての処理が終了したかどうかを判定する。すべての検出情報に対する処理が終了している場合（ステップＳ２８：ＹＥＳ）は、これですべてのオブジェクト検出処理を終了する。この時点でメモリに残っている検出情報が、最終的にオブジェクト検出と判定されたことになる。
【０１０３】
検出情報の読み出しと処理が残っている場合（ステップＳ２８：ＮＯ）は、ステップＳ２０の検出情報の読み出しに戻り、残った新たな検出情報を読み出した上で、引き続く処理を繰り返すことになる。
【０１０４】
図５のステップＳ１３乃至ステップＳ１８及びステップＳ２２乃至ステップＳ２７で実行される検出方法の設定及びオブジェクト候補検出処理の一例として、カスケード方式の検出処理について説明する。
【０１０５】
この検出処理方法においては、複数の簡単な検出方法を予め用意しておき、それらすべてを順次実行すべく、繰り返し処理を行うことにより、簡単な検出方法で、精度よく、かつ効率的にオブジェクトを検出することができる。その詳細を図７を用いて説明する。図７（ａ）は、複数の検出方法をカスケード式に、すなわち順次実行して判別処理を掛けていく手順を示したものである。
【０１０６】
図７（ａ）において、１０１はある検出方法を実行する工程であり、１０２は別のある検出方法を実行する工程である。そういった互いに異なる検出方法を実行する工程が複数並んでおり、最終がＭの検出方法実行工程である。実行処理は矢印の順に行われる。つまり工程１０１、工程１０２の順に実行され、工程Ｍで終了する。
【０１０７】
まず、検出領域が設定されると、工程１０１が実行される。工程１０１の結果により、オブジェクトが、この時点では候補として、検出されると、次の工程１０２が実行される。オブジェクト候補が検出されないと、この時点でオブジェクト非検出と最終判定され、以後の処理は行われない。
【０１０８】
工程１０２に進んだ場合、同様に、工程１０２の結果によりオブジェクト候補が検出されると、次の工程１０３（図示せず）が実行される。オブジェクト候補が検出されないと、同じようにこの時点でオブジェクト非検出と最終判定され、以後の処理は行われない。
【０１０９】
このように検出処理を進めていき、最後の検出方法実行工程Ｍの結果にいたるまで、すべての検出方法実行工程でオブジェクト候補が検出された場合のみ、最終的にオブジェクト検出と判定される。途中で一度でもオブジェクト候補が検出されなければ、その時点でオブジェクト非検出と最終判定され、検出処理は終了する。
【０１１０】
以上から分かるように、この検出処理の特徴は、簡単な検出方法を複数用意することで全体としての検出精度を確保すると共に、一つ一つの検出方法は弱い検出、すなわちオブジェクトらしきものは候補とし、確実にオブジェクトでないものは排除していくことで、おそらく大多数のオブジェクトを含まない検出領域を早い処理段階で排除し、全体の処理時間を短縮することにある。
【０１１１】
これらの複数の検出方法は順次実行されるが、連続して実行される必要はない。例えば、工程１０１の結果が出た時点で、工程１０２に移らず、別の検出領域に対する工程１０１の実行に移ってもよい。但し工程１０１の結果は保持されていて、いずれ工程１０２を実行することになる。従って順序は保持されるが、連続して実行される必要はない。
【０１１２】
複数の検出方法を構成して一つの検出方法としてまとめてもよい。図７（ｂ）にその例を示す。
【０１１３】
図７（ｂ）では、二つずつの副検出方法をまとめて一つの検出方法としている。図７（ａ）との比較でいえば、１０１、１０２といった工程が、それぞれ二つずつの副検出方法から構成されている。従ってこの二つの副検出方法は連続して実行される。しかしその両方でオブジェクト候補が検出された場合のみオブジェクト候補が検出されたとするのは、図７（ａ）と同じである。
【０１１４】
このように複数の検出方法の組み合わせは多々考えられるが、オブジェクトでないものは早い段階で排除するという考え方で、任意に適切な組み合わせを選択すればよい。
【０１１５】
図５のステップＳ２１で実行される、第１の検出領域での検出情報４１から第２の検出領域を設定する方法について、図８を用いて、具体的な実例を説明する。図８は、オブジェクトを撮影したステレオカメラと撮影対象のオブジェクトの位置関係を示す図である。
【０１１６】
図８において、１は撮影に用いるステレオカメラであり、Ｘは撮影対象のオブジェクトＰの位置を示す。Ｘはステレオカメラ１の第１の光学系Ａ及び第２の光学系Ｂから等距離にあるものとし、光学系Ａ及びＢの光軸方向でのステレオカメラ１からの距離をＤとする。ｄは、光学系Ａ及びＢの各光軸間の距離である。θは各光学系の画角、すなわち撮影画像に写る角度範囲を示す。
【０１１７】
図９は、Ｘの位置にあるオブジェクトＰ（ここでは顔である）をステレオカメラ１で撮影し、取得された画像を示す。画像ＡＸ１は、第１の光学系Ａにより取得された第１の画像であり、画像ＢＸ１は、第２の光学系Ｂにより取得された第２の画像である。
【０１１８】
画像ＡＸ１及び画像ＢＸ１の双方の画像中に、同一のＸの位置にあるオブジェクトＰが画像として存在している。しかし、第１の光学系と第２の光学系の光軸が距離ｄを隔てているため、画像ＡＸ１中でのオブジェクトの位置と画像ＢＸ１中でのオブジェクトの位置とは、互いに異なっている。
【０１１９】
本実施形態では、まず第１の画像に対してオブジェクト検出が行われ、次いで第２の画像に対してオブジェクト検出が行われる。第１の画像及び第２の画像の少なくとも一方でオブジェクト候補が検出されなかった場合には、その検出領域に対する検出処理はそこで打ち切られる。すなわち、第１の画像に対してオブジェクトの候補が検出された検出領域に対してのみ、第２の画像についてオブジェクト検出処理を行う。
【０１２０】
第１の画像でオブジェクトの候補が検出された場合は、検出されたオブジェクト候補の検出情報、すなわち第１の検出領域の第１の画像中の位置及び大きさから、第２の画像での対応するオブジェクト候補の存在する位置と大きさを推定し、第１の検出領域と対応する第２の検出領域を設定する。
【０１２１】
上記推定の実例として、第１の画像ＡＸ１及び第２の画像ＢＸ１の画像サイズを、いずれも６４０×４８０画素とし、第１の光学系Ａと第２の光学系Ｂの距離ｄを０．１ｍ、それぞれの画角θをいずれも５０度とする。またオブジェクトＰの位置Ｘのステレオカメラ１からの距離Ｄを１ｍとする。
【０１２２】
第１の画像ＡＸ１におけるオブジェクトＰの水平座標位置と第２の画像ＢＸ１におけるオブジェクトの水平座標位置との差をｘとし、これを求める。
【０１２３】
第１の光学系Ａと第２の光学系Ｂの距離ｄ＝０．１ｍであるから、ステレオカメラ１からの距離Ｄ＝１ｍの地点での水平方向０．１ｍが、画像ＡＸ１と画像ＢＸ１における水平方向の座標位置の差ｘ（画素）に相当することになる。
【０１２４】
画角θ＝５０度を考慮すれば、距離Ｄ＝１ｍの地点での水平方向全画像範囲が６４０画素に相当するので、
ｘ／６４０＝ｄ／（２Ｄｔａｎ（θ／２））
従って、これを計算すると
ｘ＝６８（画素）
となる。
【０１２５】
表１に、距離Ｄが異なった場合についての、第１の画像ＡＸ１での検出情報（オブジェクトの位置と大きさ、すなわち検出領域の位置と大きさ）から、第２の画像ＢＸ１での検出領域の位置と大きさを計算した例を示す。位置と大きさはいずれも水平方向の座標値（画素）に基づく。
【０１２６】
【表１】
2006331266.tif 000003
【０１２７】
例えば、上記の例で、第１の画像ＡＸ１での検出情報（オブジェクト候補を検出した第１の検出領域の位置と大きさ）が、それぞれ２５０と１３７の場合は、ｘ＝６８（画素）により、第２の画像ＢＸ１での第２の検出領域の位置と大きさは、位置が２５０−６８＝１８２で、大きさは１３７になる。この場合は、ステレオカメラであり、第１及び第２の光学系から、各光学系の光軸方向のオブジェクトとの距離が同じであるため、水平方向に位置がずれるだけで大きさは変わらない。
【０１２８】
図９には、水平方向の座標位置を上記の数値例で示している。第１の画像ＡＸ１における第１の検出領域ＡＸ２の水平方向位置が２５０、大きさが１３７に対して、第２の画像ＢＸ１における第２の検出領域ＢＸ２の水平方向位置が１８２、大きさが１３７である。
【０１２９】
このようにして、第１の画像でのオブジェクト候補検出情報、すなわち第１の検出領域の第１の画像中の位置及び大きさから、第２の画像での対応するオブジェクト候補の存在する位置と大きさを推定し、第１の検出領域と対応する第２の検出領域を設定することができる。
【０１３０】
実際にはオブジェクト候補の位置とサイズの推定には変動が生ずることが考えられる。例えば、ウィンドウサイズが１３７としたときに検出されたとする。ウィンドウサイズは離散的であり、その次のサイズが１１４であったとすれば、１３７から１１４の間に適切なウィンドウサイズがあるものと考えられる。
【０１３１】
ウィンドウサイズ１１４の場合は、上記位置のずれはｘ＝５７（画素）と計算されるので、実際は図１０に示すように、第２の検出領域６４の位置を第１の検出領域６３の位置に対して、−６８から−５７まで変化させてスキャンし、最適の検出領域を設定するようにすることが好ましい。
【０１３２】
以上、処理例１の手順を実行することにより、次のような検出精度向上と、処理時間短縮の効果がある。
【０１３３】
（１）そのオブジェクト検出処理の中で、第１の画像と第２の画像の双方を検出工程に掛け、かつ一方で検出されるならば当然他方でも検出されねばならないことを利用し、オブジェクトでないものは他方の検出工程を省略することにより、画像を増加して精度向上に寄与しながら、処理時間の増大は最小限にとどめることができる。
【０１３４】
（２）また、第１の画像でオブジェクトの候補が検出されたときには、第１の画像での検出情報、すなわち第１の画像中でのオブジェクト候補検出の位置と大きさに関する情報から、第２の画像中でのオブジェクト候補の存在すべき位置と大きさの情報を算出することにより、第２の画像について検出領域を特定することができ、検出領域を変更して反復検出する工程を削減し、処理時間を大きく短縮することができる。
【０１３５】
（３）また、精度向上のためには、複数の検出方法を設定した複数の検出工程に掛けることが有効であるが、一方で処理を煩雑にし、処理時間を増やすことになる。しかし、上記複数画像や複数検出領域と組み合わせながら、オブジェクト候補を検出できなかった領域は、即、以後の処理を打ち切るというふるい落とし方式の判定を実行することにより、画像中の大多数を占める非オブジェクト領域を早い段階で排除し、処理時間を大きく短縮することができる。
【０１３６】
本実施形態でのオブジェクト検出処理は、精度を向上すべく、複数の検出工程を順次反復する構成となっている。検出工程を複数にしている要素は、複数の画像（ステレオ画像としての第１及び第２の画像）、複数の検出領域、複数の検出方法である。各検出工程はそれらの組み合わせであるが、それらの反復の組み合わせにより順序的に見ると様々な多段構成がある。
【０１３７】
例えば、上述の処理例１では、まず第１の画像と第２の画像の設定が変更され、次に各画像について検出領域が設定変更して繰り返され、次に各検出領域について検出方法が設定変更して繰り返される。
【０１３８】
それらの反復の組み合わせ順序は、いかに早い段階でオブジェクトでないものを排除して、必要のない検出工程をスキップするか、すなわち全体の処理を効率化して処理時間を短縮するか、という観点から任意に選択すればよい。
【０１３９】
以下の処理例２及び処理例３では、別の反復の組み合わせを例示して説明する。
【０１４０】
（処理例２）
図１１を用いて、オブジェクト検出処理の別の処理例２を説明する。図１１は処理例２によるオブジェクト検出処理の流れを示すフローチャートである。
【０１４１】
処理例２が処理例１と異なるのは、反復処理の順序が異なるのみであり、一つ一つのステップは処理例１と同じものがほとんどである。処理例１と同じステップには同じ符号を付して、その工程の説明は省略する。
【０１４２】
オブジェクト検出処理を開始すると、まずステップＳ１１でメモリに格納されている第１の画像、第２の画像を読み出す。それ以前の撮影も含めて、処理例１と同様である。
【０１４３】
次に、第１の検出領域設定工程であるステップＳ１２で、第１の画像に対して、第１の検出領域を設定する。適当なサブウィンドウを設定し、そのサブウィンドウで第１の画像の全領域をスキャンしていくのは、処理例１と同様である。
【０１４４】
次に、第１の検出方法設定工程であるステップＳ１３では、ステップＳ１２で設定した第１の検出領域に対するオブジェクト検出方法の設定を行う。複数の検出方法を予め用意しておき、それらすべてを順次実行すべく、繰り返し処理を行うようにしたのは、処理例１と同様である。
【０１４５】
次に、第１のオブジェクト検出工程であるステップＳ１４で、ステップＳ１２で設定した第１の検出領域に対して、ステップＳ１３で設定した第１の検出方法を適用し、オブジェクト候補の検出処理を実行する。この段階ではオブジェクト候補であり、オブジェクト検出の判定は、すべてのオブジェクト検出工程を終えてから判定されることになるのは、処理例１と同様である。
【０１４６】
ステップＳ１５では、ステップＳ１４の第１のオブジェクト検出工程の結果に対してオブジェクトの候補が検出されたかどうかを判別する。オブジェクトの候補が検出された場合（ステップＳ１５：ＹＥＳ）は、ステップＳ２１へ進む、すなわちオブジェクト候補が検出された時点で第２の画像の処理に進むことになる。
【０１４７】
ステップＳ１５でオブジェクトの候補が検出されなかった場合（ステップＳ１５：ＮＯ）は、ステップＳ１７を実行し、この時点で当該検出領域にはオブジェクト候補が検出されなかったと判定し、もし当該検出情報が既に記憶されていれば削除する。従って第２の画像に対して検出処理が行われることはなく、次のステップＳ２１以後の処理は省略され、ステップＳ１９へ進むことになる。
【０１４８】
次の、第２の検出領域設定工程であるステップＳ２１では、ステップＳ１４でオブジェクト候補を検出した第１の検出領域に基づき、その検出領域に対応する第２の画像における第２の検出領域を設定する。第１の検出領域の位置情報、大きさ情報から第２の検出領域の位置、大きさを推定する方法は、処理例１と同様である。
【０１４９】
次に、第２の検出方法設定工程であるステップＳ２２では、ステップＳ２１で設定された第２の検出領域に対して、オブジェクト検出方法の設定を行う。第１の画像についての複数の検出方法と同じ検出方法を使用してもよいし、異なる検出方法を使用してもよいのは、処理例１と同様である。
【０１５０】
次に、第２のオブジェクト検出工程であるステップＳ２３で、ステップＳ２１で設定した第２の検出領域に対して、ステップＳ２２で設定した第２の検出方法を適用し、オブジェクト候補の検出処理を実行する。
【０１５１】
ステップＳ２４では、ステップＳ２３の第２のオブジェクト検出工程の結果に対してオブジェクトの候補が検出されたかどうかを判別する。オブジェクトの候補が検出された場合（ステップＳ２４：ＹＥＳ）は、ステップＳ１６を実行し、オブジェクト候補の検出情報をメモリに記憶して、ステップＳ１８へ進む。
【０１５２】
ステップＳ２４でオブジェクトの候補が検出されなかった場合（ステップＳ２４：ＮＯ）は、ステップＳ１７を実行し、この時点で当該検出領域にはオブジェクト候補が検出されなかったと判定し、当該検出情報を削除する。従ってその検出領域に対してその後新たな検出方法が試されることはないのは、処理例１と同様である。従って次のステップＳ１８は省略され、ステップＳ１９へ進むことになる。
【０１５３】
用意されたすべての検出方法に対してオブジェクト候補が検出された場合にのみ、その検出領域に対してオブジェクト検出の判定を下し、一度でもオブジェクト候補が検出されないと、その検出領域はオブジェクト非検出の判定を下し、第２の画像も含めて、それ以後のその検出領域に対する検出処理は打ち切るのである。
【０１５４】
従って処理例２の場合、第１の検出領域および第２の検出領域に対して何度も繰り返されることになるステップＳ１５の判別とステップＳ１６、Ｓ１７の記憶及び削除の処理がオブジェクト判定工程を形成することになる。
【０１５５】
ステップＳ１８では、予め用意された複数の検出方法がすべて試されたかどうかを判定する。設定された検出領域に対して、すべての検出方法が終了している場合（ステップＳ１８：ＹＥＳ）は、ステップＳ１９に進む。未実行の検出方法が残っている場合（ステップＳ１８：ＮＯ）は、ステップＳ１３の第１の検出方法設定工程に戻り、新たな検出方法を設定の上、引き続く処理を繰り返すことになる。
【０１５６】
ステップＳ１９では、第１の画像に対する第１の検出領域のスキャンがすべて終了したかどうかを判定する。スキャンが終了し、すべての検出領域設定が終了している場合（ステップＳ１９：ＹＥＳ）は、これですべてのオブジェクト検出処理を終了する。この時点でメモリに残っている検出情報が、最終的にオブジェクト検出と判定されたことになる。
【０１５７】
検出領域のスキャンが残っている場合（ステップＳ１９：ＮＯ）は、ステップＳ１２の第１の検出領域設定工程に戻り、スキャンを継続して新たな検出領域を設定の上、引き続く処理を繰り返すことになる。
【０１５８】
（処理例３）
図１２乃至図１５を用いて、オブジェクト検出処理の他の処理例３を説明する。図１２乃至図１５は処理例３によるオブジェクト検出処理の流れを示すフローチャートである。
【０１５９】
処理例３が処理例１及び２と異なるのは、反復処理の順序が異なる点、さらにオブジェクト候補の検出された検出領域の数が所定のしきい値以下になった時点で、反復処理の順序を変更している点である。一つ一つのステップは処理例１及び２と同じものがほとんどである。処理例１及び２と同じステップには、処理例１及び２の符号を参照してその工程の説明は省略する。
【０１６０】
オブジェクト検出処理を開始すると、まず図１２のステップＳ３０１でメモリに格納されている第１の画像、第２の画像を読み出す。それ以前の撮影も含めて、処理例１のステップＳ１１と同様である。
【０１６１】
次に、第１の検出方法設定工程であるステップＳ３０２で、オブジェクト検出方法の設定を行う。複数の検出方法を予め用意しておき、それらすべてを順次実行すべく、繰り返し処理を行うようにしたのは、処理例１ステップＳ１３と同様である。
【０１６２】
ステップＳ３０３では、メモリから順次検出情報を読み出していく。処理例１ステップＳ２０と同様である。但し、初期のみは第１の画像のスキャンを行う。すなわち、このステップＳ３０３は省略し、次のステップＳ３０４でスキャン操作により網羅的に第１の検出領域を設定していく。
【０１６３】
次に、第１の検出領域設定工程であるステップＳ３０４で、第１の画像に対して、第１の検出領域を設定する。前述のように、初期は適当なサブウィンドウを設定し、そのサブウィンドウで第１の画像の全領域をスキャンしていく。先行するステップＳ３０３で検出情報を読み取っているときは、その検出情報に基づき設定する。
【０１６４】
次に、第１のオブジェクト検出工程であるステップＳ３０５で、ステップＳ３０４で設定した第１の検出領域に対して、ステップＳ３０２で設定した第１の検出方法を適用し、オブジェクト候補の検出処理を実行する。処理例１ステップＳ１４と同様である。
【０１６５】
ステップＳ３０６では、ステップＳ３０５の第１のオブジェクト検出工程の結果に対してオブジェクトの候補が検出されたかどうかを判別する。処理例１ステップＳ１５と同様である。オブジェクトの候補が検出された場合（ステップＳ３０６：ＹＥＳ）は、ステップＳ３０７を実行し、オブジェクト候補の検出情報をメモリに記憶または保持する。
【０１６６】
ステップＳ３０６でオブジェクトの候補が検出されなかった場合（ステップＳ３０６：ＮＯ）は、ステップＳ３０８を実行し、この時点で当該検出領域にはオブジェクト候補が検出されなかったと判定する。すなわちメモリに検出情報は記憶されず、既に記憶されていれば削除される。
【０１６７】
ステップＳ３０９では、メモリに記憶されていたすべての検出情報を読み出し、第１の画像に対して、その検出情報に対応するすべての処理が終了したかどうかを判定する。処理例１ステップＳ２８と同様である。すべての検出情報に対する処理が終了している場合（ステップＳ３０９：ＹＥＳ）は、これですべてのオブジェクト検出処理を終了する。この時点でメモリに残っている検出情報が、最終的にオブジェクト検出と判定されたことになる。
【０１６８】
検出情報の読み出しと処理が残っている場合（ステップＳ３０９：ＮＯ）は、ステップＳ３０３の検出情報の読み出しに戻り、残った新たな検出情報を読み出した上で、引き続く処理を繰り返すことになる。
【０１６９】
次に、ステップＳ３１０では、オブジェクト候補の検出された検出領域の数、すなわちメモリに記憶された検出情報の数が所定のしきい値以下であるかどうかを判定する。ただし、初期はすべての検出領域についてスキャン中、すなわち検出情報記憶中であるので、スキャン中はこのステップＳ３１０は省略する。
【０１７０】
ステップＳ３１０で検出情報の数が所定のしきい値以下である場合（ステップＳ３１０：ＹＥＳ）は、前検出方法の終了を待たずに第２の画像の処理に移行するため、ステップＳ３１２に進む。検出情報の数が所定のしきい値以下でない場合（ステップＳ３１０：ＮＯ）は、ステップＳ３１１に進む。
【０１７１】
ステップＳ３１１では、予め用意された複数の検出方法がすべて試されたかどうかを判定する。処理例１ステップＳ１８と同様である。すべての検出方法が終了している場合（ステップＳ３１１：ＹＥＳ）は、ステップＳ３１２へ進む。未実行の検出方法が残っている場合（ステップＳ３１１：ＮＯ）は、ステップＳ３０２の第１の検出方法設定工程に戻り、新たな検出方法を設定の上、引き続く処理を繰り返すことになる。
【０１７２】
ステップＳ３１２では、ここまでに既に実行済みの検出方法の情報をメモリに記憶する。同じ実行済みの検出方法を、次の図１３の第２の画像についての処理で実行するためである。
【０１７３】
図１３のステップＳ３２１では、メモリに記憶されている第１の画像についての既に実行済みの検出方法の情報をメモリから読み出す。
【０１７４】
次に、第２の検出方法設定工程であるステップＳ３２２では、ステップＳ３２１で読み出された実行済みの検出方法に基づき、それらを順次実行すべく第２のオブジェクト検出方法の設定を行う。処理例１ステップＳ２２と同様である。
【０１７５】
ステップＳ３２３では、メモリに記憶された検出情報を順次読み出していく。処理例１ステップＳ２０と同様である。
【０１７６】
次の、第２の検出領域設定工程であるステップＳ３２４では、ステップＳ３２３で読み出された検出情報に基づき、その検出情報に対応する第２の画像における第２の検出領域を設定する。第２の検出領域の設定方法は、処理例１及び２のステップＳ２１と同様である。
【０１７７】
次に、第２のオブジェクト検出工程であるステップＳ３２５で、ステップＳ３２４で設定した第２の検出領域に対して、ステップＳ３２２で設定した第２の検出方法を適用し、オブジェクト候補の検出処理を実行する。処理例１及び２のステップＳ２３と同様である。
【０１７８】
ステップＳ３２６では、ステップＳ３２５の第２のオブジェクト検出工程の結果に対してオブジェクトの候補が検出されたかどうかを判別する。ステップＳ３０６と同様である。オブジェクトの候補が検出された場合（ステップＳ３２６：ＹＥＳ）は、ステップＳ３２７を実行し、オブジェクト候補の検出情報をメモリに記憶または保持する。
【０１７９】
ステップＳ３２６でオブジェクトの候補が検出されなかった場合（ステップＳ３２６：ＮＯ）は、ステップＳ３２８を実行し、この時点で当該検出領域にはオブジェクト候補が検出されなかったと判定する。すなわちメモリに記憶されている当該検出情報は削除される。
【０１８０】
ステップＳ３２９では、メモリに記憶されていたすべての検出情報を読み出し、第２の画像に対する処理が終了したかどうかを判定する。処理例１及び２のステップＳ２８と同様である。すべての検出情報に対する処理が終了している場合（ステップＳ３２９：ＹＥＳ）は、ステップＳ３３０へ進む。
【０１８１】
検出情報の読み出しと処理が残っている場合（ステップＳ３２９：ＮＯ）は、ステップＳ３２３の検出情報の読み出しに戻り、残った新たな検出情報を読み出した上で、引き続く処理を繰り返すことになる。
【０１８２】
ステップＳ３３０では、メモリに実行済み検出方法情報として記憶されているすべての実行済み検出方法を読み出し、第２の画像について実行処理したかどうかを判定する。すべての実行済み検出方法に対する実行処理が終了している場合（ステップＳ３３０：ＹＥＳ）は、ステップＳ３３１へ進む。
【０１８３】
実行済み検出方法の読み出しと処理が残っている場合（ステップＳ３３０：ＮＯ）は、ステップＳ３２１の実行済み検出方法情報の読み出しに戻り、残った新たな実行済み検出方法を読み出した上で、引き続く処理を繰り返すことになる。
【０１８４】
ステップＳ３３１では、予め用意された複数の検出方法がすべて、実行済み検出方法に含まれているかどうか、すなわちすべての検出方法が第１及び第２の画像に対して試されたかどうかを判定する。すべての検出方法が終了している場合（ステップＳ３３１：ＹＥＳ）は、これですべてのオブジェクト検出処理を終了する。この時点でメモリに残っている検出情報が、最終的にオブジェクト検出と判定されたことになる。
【０１８５】
実行済みでない検出方法が残っている場合（ステップＳ３３１：ＮＯ）は、未実行の検出方法を第１及び第２の画像に対して実行処理するため、図１４のステップＳ３４１へと進む。
【０１８６】
図１４のステップＳ３４１では、予め用意された複数の検出方法のうち、実行済み検出方法に含まれていないもの、すなわち残っているすべて未実行の検出方法についての情報を残余検出方法情報としてメモリに記憶する。
【０１８７】
ステップＳ３４２では、メモリに記憶されている残余検出方法情報を順次メモリから読み出す。
【０１８８】
次に、第１の検出方法設定工程であるステップＳ３４３では、ステップＳ３４２で読み出された残余検出方法情報に基づき、それらを順次実行すべく第１のオブジェクト検出方法の設定を行う。処理例１及び２のステップＳ１３と同様である。
【０１８９】
ステップＳ３４４では、メモリに記憶された検出情報を順次読み出していく。処理例１及び２のステップＳ２０と同様である。
【０１９０】
次の、第１の検出領域設定工程であるステップＳ３４５では、ステップＳ３４４で読み出された検出情報に基づき、その検出情報に対応する第１の画像における第１の検出領域を設定する。処理例１及び２のステップＳ１２と同様である。
【０１９１】
次に、第１のオブジェクト検出工程であるステップＳ３４６で、ステップＳ３４５で設定した第１の検出領域に対して、ステップＳ３４３で設定した第１の検出方法を適用し、オブジェクト候補の検出処理を実行する。処理例１及び２のステップＳ１４と同様である。
【０１９２】
ステップＳ３４７では、ステップＳ３４６の第１のオブジェクト検出工程の結果に対してオブジェクトの候補が検出されたかどうかを判別する。ステップＳ３０６と同様である。オブジェクトの候補が検出された場合（ステップＳ３４７：ＹＥＳ）は、ステップＳ３４８を実行し、オブジェクト候補の検出情報をメモリに保持する。
【０１９３】
ステップＳ３４７でオブジェクトの候補が検出されなかった場合（ステップＳ３４７：ＮＯ）は、ステップＳ３４９を実行し、この時点で当該検出領域にはオブジェクト候補が検出されなかったと判定する。すなわちメモリに記憶されている当該検出情報は削除される。
【０１９４】
ステップＳ３５０では、メモリに記憶されていたすべての検出情報を読み出し、第１の画像に対する処理が終了したかどうかを判定する。ステップＳ３２９と同様である。すべての検出情報に対する処理が終了している場合（ステップＳ３５０：ＹＥＳ）は、ステップＳ３５１へ進む。
【０１９５】
検出情報の読み出しと処理が残っている場合（ステップＳ３５０：ＮＯ）は、ステップＳ３４４の検出情報の読み出しに戻り、残った新たな検出情報を読み出した上で、引き続く処理を繰り返すことになる。
【０１９６】
ステップＳ３５１では、メモリに残余検出方法情報として記憶されているすべての残余検出方法を読み出し、第１の画像について実行処理したかどうかを判定する。すべての残余検出方法に対する実行処理が終了している場合（ステップＳ３５１：ＹＥＳ）は、残余の検出方法を第２の画像に対して実行処理するため、次の図１５のステップＳ３６１へと進む。
【０１９７】
残余検出方法の読み出しと処理が残っている場合（ステップＳ３５１：ＮＯ）は、ステップＳ３４２の残余検出方法情報の読み出しに戻り、残った新たな残余検出方法を読み出した上で、引き続く処理を繰り返すことになる。
【０１９８】
図１５のステップＳ３６１では、メモリに記憶されている残余検出方法情報を順次メモリから読み出す。
【０１９９】
次に、第２の検出方法設定工程であるステップＳ３６２では、ステップＳ３６１で読み出された残余検出方法情報に基づき、それらを順次実行すべく第２のオブジェクト検出方法の設定を行う。処理例１及び２のステップＳ２２と同様である。
【０２００】
ステップＳ３６３では、メモリに記憶された検出情報を順次読み出していく。処理例１及び２のステップＳ２０と同様である。
【０２０１】
次の、第２の検出領域設定工程であるステップＳ３６４では、ステップＳ３６３で読み出された検出情報に基づき、その検出情報に対応する第２の画像における第２の検出領域を設定する。処理例１及び２のステップＳ２１と同様である。
【０２０２】
次に、第２のオブジェクト検出工程であるステップＳ３６５で、ステップＳ３６４で設定した第２の検出領域に対して、ステップＳ３６２で設定した第２の検出方法を適用し、オブジェクト候補の検出処理を実行する。処理例１及び２のステップＳ２３と同様である。
【０２０３】
ステップＳ３６６では、ステップＳ３６５の第２のオブジェクト検出工程の結果に対してオブジェクトの候補が検出されたかどうかを判別する。ステップＳ３０６と同様である。オブジェクトの候補が検出された場合（ステップＳ３６６：ＹＥＳ）は、ステップＳ３６７を実行し、オブジェクト候補の検出情報をメモリに保持する。
【０２０４】
ステップＳ３６６でオブジェクトの候補が検出されなかった場合（ステップＳ３６６：ＮＯ）は、ステップＳ３６８を実行し、この時点で当該検出領域にはオブジェクト候補が検出されなかったと判定する。すなわちメモリに記憶されている当該検出情報は削除される。
【０２０５】
ステップＳ３６９では、メモリに記憶されていたすべての検出情報を読み出し、第２の画像に対する処理が終了したかどうかを判定する。処理例１及び２のステップＳ２８と同様である。すべての検出情報に対する処理が終了している場合（ステップＳ３６９：ＹＥＳ）は、ステップＳ３７０へ進む。
【０２０６】
検出情報の読み出しと処理が残っている場合（ステップＳ３６９：ＮＯ）は、ステップＳ３６３の検出情報の読み出しに戻り、残った新たな検出情報を読み出した上で、引き続く処理を繰り返すことになる。
【０２０７】
ステップＳ３７０では、メモリに残余検出方法情報として記憶されているすべての残余検出方法を読み出し、第２の画像について実行処理したかどうかを判定する。すべての残余検出方法に対する実行処理が終了している場合（ステップＳ３７０：ＹＥＳ）は、これですべてのオブジェクト検出処理が終了する。この時点でメモリに残っている検出情報が、最終的にオブジェクト検出と判定されたことになる。
【０２０８】
残余検出方法の読み出しと処理が残っている場合（ステップＳ３７０：ＮＯ）は、ステップＳ３６１の残余検出方法情報の読み出しに戻り、残った新たな残余検出方法を読み出した上で、引き続く処理を繰り返すことになる。
【０２０９】
上記処理例１乃至３に示したような実施形態により、画像中のオブジェクトの検出において、同一の被写体を撮影した複数の画像を用いて、それを複数の検出工程として構成し、かつその画像間の関係を有効利用することにより、より簡単で効率的、かつ誤検出の少ないオブジェクト検出方法及びオブジェクト検出装置を提供することができる。
【０２１０】
なお本発明の実施形態は、上記の実施形態に限定されるものではなく、本発明の趣旨に則る限り、様々な変更された形態もその範囲に許容されるものである。
【図面の簡単な説明】
【０２１１】
【図１】本発明に係る撮影装置の一実施形態であるステレオカメラの外観図である。
【図２】図１のステレオカメラ及び本発明に係るオブジェクト検出装置の一実施形態である画像処理装置からなるオブジェクト検出システムの構成を示すブロック図である。
【図３】図２の画像処理装置における、画像処理部とメモリの構成を示すブロック図である。
【図４】図３のメモリに記憶される検出情報及び検出方法の内容の例を示す図である。
【図５】処理例１に係るオブジェクト検出処理の流れを示すフローチャートである。
【図６】第１の画像に対して第１の検出領域を設定し、スキャンする状態を示す図である。
【図７】複数の異なる検出方法を用いて順次検出、判別する検出処理の実例を示す図である。
【図８】オブジェクトを撮影したステレオカメラと撮影対象のオブジェクトの位置関係の実例を示す図である。
【図９】ステレオカメラで撮影された第１の画像と第２の画像の例を簡略化して示す図である。
【図１０】第１の検出領域に対する第２の検出領域設定の状態の例を示す図である。
【図１１】処理例２に係るオブジェクト検出処理の流れを示すフローチャートである。
【図１２】処理例３に係るオブジェクト検出処理の流れを示すフローチャート（１／４）である。
【図１３】処理例３に係るオブジェクト検出処理の流れを示すフローチャート（２／４）である。
【図１４】処理例３に係るオブジェクト検出処理の流れを示すフローチャート（３／４）である。
【図１５】処理例３に係るオブジェクト検出処理の流れを示すフローチャート（４／４）である。
【符号の説明】
【０２１２】
１  ステレオカメラ
２  画像処理装置
３  画像処理部
４  メモリ
５  画像入力部
６  出力部
９  第１の撮像素子
１０  第２の撮像素子
１１  出力画像生成部
１２  画像出力部
１３  通信経路
３１  制御部
３２  画像切り換え部
３３  オブジェクト判定部
３４  第１検出領域設定部
３５  第１検出方法設定部
３６  第１オブジェクト検出部
３７  第２検出領域設定部
３８  第２検出方法設定部
３９  第２オブジェクト検出部
４１  検出情報
４２  検出方法情報
５１  画像領域
６１、６２  サブウィンドウ
６３、６４  検出領域
【図１】
2006331266.tif 000004
【図２】
2006331266.tif 000005
【図３】
2006331266.tif 000006
【図４】
2006331266.tif 000007
【図５】
2006331266.tif 000008
【図６】
2006331266.tif 000009
【図７】
2006331266.tif 000010
【図８】
2006331266.tif 000011
【図９】
2006331266.tif 000012
【図１０】
2006331266.tif 000013
【図１１】
2006331266.tif 000014
【図１２】
2006331266.tif 000015
【図１３】
2006331266.tif 000016
【図１４】
2006331266.tif 000017
【図１５】
2006331266.tif 000018