(57)【要約】【課題】特定の物体の特徴検出に係る処理を適切に実行可能にすることを課題とする。【解決手段】顔領域検出部（３０１）は、所定の指標との一致度に基づいて入力画像から顔領域を検出する。顔領域特徴検出部（３０２）は、顔領域検出部（３０１）にて検出された顔領域の特徴を検出する処理を実行する。制御部（３０５）は、顔領域特徴検出部（３０２）における処理、及び、検出された顔領域の特徴を出力する顔特徴決定部（３０３）における処理の内の少なくとも一方を、一致度に応じて制御する。【選択図】図３
2018081402.tif 000002
【特許請求の範囲】
【請求項１】
所定の指標との一致度に基づいて、入力画像から物体の画像領域を検出する領域検出手段と、
前記検出された画像領域の特徴を検出する処理を実行する特徴検出手段と、
前記特徴検出手段における処理、及び、前記検出された画像領域の特徴を出力する特徴出力手段における処理の内の少なくとも一方を、前記一致度に応じて制御する制御手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記領域検出手段は、前記入力画像から複数の画像領域を検出し、
前記特徴検出手段は、前記複数の画像領域毎に特徴を検出し、
前記制御手段は、前記一致度に基づいて、前記特徴出力手段に、前記複数の画像領域の特徴から、出力する画像領域の特徴を決定させることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記領域検出手段は、前記入力画像から複数の画像領域を検出し、
前記制御手段は、前記一致度が上位の所定数の画像領域のみ、前記特徴検出手段に特徴を検出させ、
前記特徴出力手段は、前記所定数の前記画像領域の特徴を基に、出力する特徴量を決定することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記領域検出手段は、前記入力画像から複数の画像領域を検出し、
前記制御手段は、前記一致度が所定の閾値より大きい画像領域のみ、前記特徴検出手段に特徴を検出させ、
前記特徴出力手段は、前記一致度が所定の閾値より大きい前記画像領域の特徴を基に、出力する特徴量を決定することを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記入力画像は動画の各フレームの画像であり、複数のフレーム間で同一の物体の画像領域を追尾する追尾手段を有し、
前記特徴検出手段は、前記追尾手段により前記複数のフレームにおいて追尾されている同一の物体の画像領域の特徴を検出し、
前記特徴出力手段は、前記複数のフレームの前記同一の物体の画像領域の特徴を基に、出力する画像領域の特徴を決定することを特徴とする請求項１乃至４の何れか１項に記載の画像処理装置。
【請求項６】
前記領域検出手段は、前記物体の画像領域として人物の顔領域を検出し、
前記特徴検出手段は、前記顔領域の特徴を検出し、
前記特徴出力手段は、前記顔領域の特徴を出力することを特徴とする請求項１乃至５の何れか１項に記載の画像処理装置。
【請求項７】
前記特徴検出手段は、前記顔領域の特徴として、顔器官を検出する顔器官検出手段を有することを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記特徴検出手段は、前記顔領域の特徴として、前記顔領域の人物の年齢、性別、人種の少なくとも一つの人物属性を検出する人物属性検出手段を有することを特徴とする請求項６又は７に記載の画像処理装置。
【請求項９】
前記特徴検出手段は、前記顔領域の特徴として、入力された特定の人物の顔画像との同一性を判定する判定手段を有することを特徴とする請求項６乃至８の何れか１項に記載の画像処理装置。
【請求項１０】
前記領域検出手段は、入力画像の中の画像領域と、前記指標としての少なくとも一つのテンプレートとの、比較による一致度を基に、前記画像領域の検出を行うことを特徴とする請求項１乃至９の何れか１項に記載の画像処理装置。
【請求項１１】
前記比較に用いられるテンプレートは、一つ以上の第一のテンプレート群に対して所定の変換処理を施して生成した、一つ以上の第二のテンプレート群であることを特徴とする請求項１０に記載の画像処理装置。
【請求項１２】
前記領域検出手段は、所定の形状及び色の前記テンプレートと、前記入力画像の画像領域の形状及び色との比較による一致度を基に前記画像領域の検出を行うことを特徴とする請求項１０又は１１に記載の画像処理装置。
【請求項１３】
前記領域検出手段は、所定の形状及び画像の平坦度のテンプレートと、前記入力画像の画像領域の形状及び画像の平坦度との比較による一致度を基に前記画像領域の検出を行うことを特徴とする請求項１０乃至１２の何れか１項に記載の画像処理装置。
【請求項１４】
前記領域検出手段は、所定の形状及び画像のエッジ成分のテンプレートと、前記入力画像の画像領域の形状及び画像のエッジ成分との比較による一致度を基に前記画像領域の検出を行うことを特徴とする請求項１０乃至１３の何れか１項に記載の画像処理装置。
【請求項１５】
前記特徴出力手段は、一致度が最も高い画像領域の特徴と、一致度が上位の所定数の各画像領域の特徴を表す値の平均値と、上位の一致度を重みとして各画像領域の特徴を表す値を加重平均した値との、何れか一つを、前記出力する特徴として決定することを特徴とする請求項１乃至１４の何れか１項に記載の画像処理装置。
【請求項１６】
所定の指標との一致度に基づいて、入力画像から物体の画像領域を検出する領域検出工程と、
前記検出された画像領域の特徴を検出する処理を実行する特徴検出工程と、
前記特徴検出工程における処理、及び、前記検出された画像領域の特徴を出力する特徴出力工程における処理の内の少なくとも一方を、前記一致度に応じて制御する制御工程と、
を有することを特徴とする画像処理装置の画像処理方法。
【請求項１７】
コンピュータを、請求項１乃至１５の何れか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【請求項１８】
画像を撮影するカメラと、前記カメラにより撮影された画像を処理する画像処理装置とを有する画像処理システムであって、
前記カメラは、撮影した画像から、所定の指標との一致度に基づいて、物体の画像領域の検出を行い、
前記画像処理装置は、前記カメラにより検出された画像領域の特徴を検出する処理、及び、前記検出された画像領域の特徴を出力する処理の内の少なくとも一方を、前記一致度に応じて制御することを特徴とする画像処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像内の物体の特徴を検出する画像処理装置、画像処理方法、及びプログラム、画像処理システムに関する。
【背景技術】
【０００２】
近年、撮影された画像内に映っている特定の物体の特徴、例えば人物の顔の特徴を解析し、予め指定された顔画像の人物と同一人物か否かを推定する顔認証技術や、人物の年齢や性別等の人物属性を推定する技術が、監視カメラ等に応用されるようになっている。
画像内の人物の顔の特徴を解析するためには、一般的に、なるべく正面から撮影された顔画像を用いる必要がある。しかし、建物の入り口等に向けて設置された監視カメラであっても、入口を通過する人物が横を向く等することがあるため、必ずしも正面から撮影した顔画像を取得することができるわけではない。そのため、なるべく人物が正面を向いている画像を選択して特徴を解析することが望ましい。
また、特許文献１には、画像内の顔の検出後に、その顔領域に対して特徴量抽出処理を行った結果抽出された顔器官特徴点の位置ずれ量に基づいて、顔の向きを推定する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−２５２５１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ここで、動きのある物体を所定の方向から見た画像、例えば、動きのある人物の顔が正面を向いた時の画像を撮影するためには、その人物が正面を向いた瞬間になるべく撮影が行われるように、画像撮影のフレームレートを上げる必要がある。しかしながら、画像内に複数の人物が写っている場合、顔の特徴を解析する処理は、それら複数の人物の顔の数だけ実行されることになる。例えば特許文献１に開示された技術のように、画像内から検出された全ての顔に対して特徴抽出処理を実行する場合、１フレーム内に写った顔の数だけ顔器官特徴量点の抽出処理を行わなければならない。そのため、１フレームに写った顔の数が多い場合には、抽出処理がフレームレートに追従できなくなり、その結果、正面の顔の特徴を取得することが困難になるという問題が発生する。
【０００５】
そこで、本発明は、特定の物体の特徴検出に係る処理を適切に実行可能にすることを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、所定の指標との一致度に基づいて、入力画像から物体の画像領域を検出する領域検出手段と、前記検出された画像領域の特徴を検出する処理を実行する特徴検出手段と、前記特徴検出手段における処理、及び、前記検出された画像領域の特徴を出力する特徴出力手段における処理の内の少なくとも一方を、前記一致度に応じて制御する制御手段と、を有することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、特定の物体の特徴検出に係る処理を適切に実行可能となる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態の画像処理装置の概略構成を示す図である。
【図２】本実施形態の画像処理システムの適用例を説明する図である。
【図３】本実施形態の画像処理装置の機能ブロック構成を示す図である。
【図４】本実施形態の画像処理の流れを示すフローチャートである。
【図５】顔検出と一致率の説明に用いる図である。
【発明を実施するための形態】
【０００９】
以下、本発明の好ましい実施の形態を、添付の図面に基づいて詳細に説明する。
本実施形態の画像処理装置は、撮影等された画像から、特定の物体を所定の方向から見た画像領域のみを検出し、その検出した画像領域のみ特徴を検出する。本実施形態では、特定の物体を所定の方向から見た画像領域として、人物の正面の顔の画像領域（以下、顔領域とする。）のみを検出し、その顔領域の特徴を検出する。以下、撮影等された入力画像から、人物の正面の顔領域を検出して、その顔領域の特徴を検出する例を用いて、本実施形態に係る画像処理を詳細に説明する。
【００１０】
図１は、本実施形態に係る画像処理装置の一例としてのコンピュータの概略構成例を示す図である。
図１において、ＣＰＵ１００は、コンピュータの全体の動作を制御する中央演算装置である。ＲＡＭ１０２は揮発性メモリであり、プログラムや画像データなどが一時的に格納される。ＲＯＭ１０１は不揮発性メモリであり、ＣＰＵ１００の起動用プログラムや各種初期設定データ等が格納されている。ストレージ１０３は、ＲＡＭ１０２と比較して大容量な記録デバイスであり、例えばＨＤＤ（ハードディスクドライブ）やＳＳＤ（ソリッドステートドライブ）である。ストレージ１０３には、ＣＰＵ１００により実行されるＯＳ（基本ソフトウェア）や、本実施形態に係る画像処理プログラム、その他各種のデータ等が格納されている。また、ストレージ１０３は、撮影された画像データやネットワーク等を介して取得された画像データ等も記録可能となされている。ＣＰＵ１００は、電源ＯＮ等の起動時、ＲＯＭ１０１に格納されている起動用プログラムを実行する。この起動用プログラムは、ストレージ１０３に格納されているＯＳを読み出し、ＲＡＭ１０２に展開するためのものである。ＣＰＵ１００は、ＯＳの起動後、図示しない操作部等を介してユーザにより本実施形態の画像処理を起動する旨の指示がなされると、ストレージ１０３から本実施形態に係る画像処理プログラムを読み出してＲＡＭ１０２に展開する。これにより、ＣＰＵ１００は、本実施形態の画像処理を実行可能な状態となる。また、ＣＰＵ１００は、本実施形態の画像処理プログラムの動作に用いられる各種データについてもＲＡＭ１０２上に格納して読み書きを行う。ＬＡＮ１０４は、ローカルエリアネットワークのインターフェースであり、例えばいわゆるネットワークカメラや他のコンピュータ等との通信を行う。本実施形態の画像処理プログラムはＬＡＮ１０４を介して取得されてもよく、また、本実施形態の画像処理にて扱う画像データもＬＡＮ１０４を介して取得されてもよい。
【００１１】
図２は、本実施形態の画像処理システムの概略的な適用例を示す図であり、コンピュータ２００は図１に示した構成を有している。ディスプレイ２０１は、コンピュータ２００に接続され、図示しないユーザ（操作者）がコンピュータ２００を操作する際に閲覧等するための表示デバイスである。カメラ２０２は、例えばネットワークカメラであり、撮影範囲内を撮像し、その撮影画像データをネットワーク経由でコンピュータ２００に送信する機能を有する。物体２０３は、カメラ２０２の撮影範囲内に存在している被写体であり、本実施形態では人物（以下、人物２０３とする。）となされている。したがって、カメラ２０２の撮影画像には、この人物２０３の画像が映っているとする。
【００１２】
本実施形態の場合、カメラ２０２としては監視カメラを想定しているが、これに限定されるものでははい。例えば、コンピュータ２００には、デジタルスチルカメラやデジタルビデオカメラ、カメラ機能を備えたスマートフォンやタブレット端末、工業用カメラ、車載カメラ、ウェアラブルカメラ等が接続されていてもよい。また、コンピュータ２００とカメラ２０２との間は、図１のＬＡＮ１０４等のネットワークデバイス以外に、例えばＵＳＢ等により接続されていてもよい。また本実施形態では、カメラ２０２により撮影される対象（特定の物体）は、監視カメラの撮影範囲内の人物等となされているが、これには限定されず、道路等を走行している各種車両、工場内のコンベアー上を流れている部品や製品、その他、動物等であってもよい。また本実施形態では、カメラ２０２が撮影した画像をコンピュータ２００に送信する例を挙げているが、撮影された画像は、一旦、他のコンピュータのストレージデバイス等に保存された後、そのコンピュータから図２のコンピュータ２００に送信されてもよい。
【００１３】
図３は、本実施形態の画像処理プログラムをＣＰＵ１００が実行することにより形成される各ソフトウェアモジュールを機能ブロックとして表した図である。なお、図３では、各ソフトウェアモジュールを機能ブロックとして表しているが、これら各機能ブロックはそれぞれハードウェアモジュールにより構成されていてもよい。また、これら各機能ブロックの全てがソフトウェアモジュール又はハードウェアモジュールにより構成される場合の他、一部がソフトウェアモジュールで残りがハードウェアモジュールにより構成されていてもよい。
【００１４】
図３において、入力部３００は、入力画像を取得する。本実施形態の場合、入力部３００は、例えば図２に示したカメラ２０２により撮影された画像やストレージ１０３から読み出された画像、ＬＡＮ１０４を介して受信された画像などを取得する。本実施形態では、入力画像が動画のフレームとなされている例を挙げ、入力部３００は、その動画のフレームをフレーム順に取得する。入力部３００により取得された入力画像のデータは、顔領域検出部３０１、顔領域特徴検出部３０２に送られる。
【００１５】
顔領域検出部３０１は、顔一致率算出部３１０（以下、算出部３１０とする。）と顔領域決定部３２０（以下、領域決定部３２０とする。）を有して構成されている。
算出部３１０は、入力画像内を、予め設定されている指標を用いて走査し、入力画像内の画像領域毎に指標との一致度を表す値を算出する。本実施形態の場合、使用する指標は、例えば正面顔の画像領域（顔領域）を検出するためのテンプレートであり、算出部３１０は、そのテンプレートを用いて入力画像内を走査して、画像領域毎に指標（テンプレート）との一致度を表す値を算出する。なお、テンプレートの具体例については、後述する図５（ａ）〜図５（ｅ）において説明する。一致度を表す値は、テンプレートマッチングにおけるマッチ率を表す値であるため、以下、一致率と表記する。このように、算出部３１０は、予め設定されている指標を基に入力画像内を走査することにより、入力画像内の画像領域毎に指標との一致率を求め、それら画像領域毎の一致率を算出する。なお、算出部３１０にて算出される一致率は、入力画像内の各画像領域が人物の顔領域である確からしさを表す値に相当するが、例えば一致率がある程度低い画像領域は人物の顔領域ではない可能性もある。一方、一致率が高い画像領域は、人物の顔領域である可能性が高いといえる。また、算出部３１０における処理は、入力画像に対するテンプレートマッチング処理であるため、例えば入力画像の全域に対して顔領域の詳細な特徴検出処理を行う場合と比較して処理負担は非常に軽く、高速処理が可能である。算出部３１０にて画像領域毎に算出された一致率の情報と入力画像は、領域決定部３２０に送られる。また、算出部３１０にて画像領域毎に算出された一致率の情報は、制御部３０５にも送られる。
【００１６】
制御部３０５は、後述する顔領域特徴検出部３０２（特徴検出部３０２とする。）における顔領域の特徴検出処理、及び、顔特徴決定部３０３（特徴決定部３０３とする。）における顔領域の特徴決定処理の内の少なくとも一方を、一致率に応じて制御する。
【００１７】
顔領域検出部３０１の領域決定部３２０は、算出部３１０にて画像領域毎に算出された一致率に基づき、入力画像内の複数の画像領域の中で、人物の顔画像と考えられる複数の画像領域のみを、それぞれ顔領域として決定する。例えば、領域決定部３２０では、算出部３１０にて算出された一致率を基に、入力画像内で、人物の顔画像の確からしさが高い位置と大きさの複数の画像領域のみが、それぞれ顔領域として決定される。一致率に基づく顔領域の検出処理の具体例については、後述する図５（ａ）〜図５（ｅ）において説明する。領域決定部３２０により決定された複数の顔領域を示す情報は、特徴検出部３０２に送られる。
【００１８】
ここで、本実施形態では、動画の複数のフレームの画像が入力される例を示しており、例えばフレームレートが高い動画の場合には、図２に示した同一被写体の人物２０３が複数のフレームに亘って映っていることがある。このような場合、例えば、前回のフレームの顔領域の結果を保持しておき、今回のフレームの顔領域と比較をすることで、同一人物の追尾や同定を行うことができる。このため、図３の領域決定部３２０は、前回フレーム結果保持部３２１（以下、結果保持部３２１とする。）と、比較追尾部３２２とを有している。結果保持部３２１は、入力画像のフレームにおいて決定された顔領域のデータを保持し、この保持された顔領域のデータを、次回のフレームの画像が入力された際の比較対象（前回のフレームで決定された顔領域のデータ）として、比較追尾部３２２に送出する。比較追尾部３２２は、今回のフレームで決定された顔領域と、結果保持部３２１に保持されている前回のフレームで決定された顔領域との比較により、それら顔領域が同一人物の顔領域か否か（同一人物の顔領域である可能性があるか否か）の同定処理を行う。そして、比較追尾部３２２は、同一人物の顔領域であると同定した場合には、フレーム間でその同一人物の顔領域の追尾する処理を行う。この比較追尾部３２２による同定及び追尾の結果を示す情報は、特徴検出部３０２と後述する特徴決定部３０３に送られる。
【００１９】
特徴検出部３０２は、入力画像のうち領域決定部３２０で決定された複数の顔領域についてのみ、それぞれ顔の詳細な特徴を検出する。特徴検出部３０２は、顔器官検出部３３１、人物属性検出部３３２、同一性判定部３３３、関連付け部３３４、特徴量保持部３３５を有して構成されている。顔器官検出部３３１は、領域決定部３２０にて決定された顔領域毎に、例えば目、鼻、口等の顔のパーツ（顔器官）の詳細な大きさや位置等を検出する顔器官検出処理を行う。同一性判定部３３３は、顔器官検出の結果や比較追尾部３２２による追尾処理の結果、その他の特徴を解析した結果を基に、領域決定部３２０で決定された顔領域毎に、予め入力されている他の顔画像に映っている人物と同一か否かを判定する。人物属性検出部３３２は、顔器官検出の結果、顔領域の色や質感、皺等の位置、その他の解析処理を行った結果等を基に、領域決定部３２０で決定された顔領域毎に、その顔領域の人物の年齢や性別、人種などの人物属性を推定する。なお、人物の年齢、性別、人種などの人物属性の検出手法は、他にも様々な手法があり、それら手法の何れが用いられてもよい。また、特徴検出部３０２の特徴検出処理により得られる特徴量は、前述した例に限定されるものではなく、他の様々な特徴検出処理による特徴量であってもよい。本実施形態においては、これら顔領域毎の顔器官検出処理、同一性判定処理、人物属性検出処理により得られた情報が、特徴検出部３０２により顔領域毎に検出された特徴量となる。また、特徴検出部３０２での特徴検出処理は、領域決定部３２０にて決定された顔領域に対してのみ行われるため、例えば入力画像の全域に対して特徴検出処理を行う場合と比較して処理負担は非常に軽くすることができ、高速処理を可能とすることもできる。関連付け部３３４は、それら顔器官検出部３３１、人物属性検出部３３２、同一性判定部３３３により顔領域毎に検出された各特徴量と、それら顔領域毎の一致率とを関連付けする。特徴量保持部３３５は、一致率と顔領域の特徴量とを関連付けた関連付け情報を保持する。そして、特徴検出部３０２は、前述のように検出した複数の顔領域毎の特徴量と関連付け情報とを、特徴決定部３０３に送る。
なお、特徴検出部３０２は、人物属性検出部３３２、同一性判定部３３３を必ずしも両方有している必要はなく、いずれか一方のみであってもよい。或いは、特徴検出部３０２は、人物属性検出部３３２、同一性判定部３３３以外の、正面顔を解析することが望ましい他の検出処理を有している構成であっても構わない。
【００２０】
特徴決定部３０３は、特徴検出部３０２にて検出された複数の顔領域の特徴量、及びそれらに関連付けられた一致率に基づく制御部３０５による制御の下、最終的に出力する顔領域の特徴量を算出するような特徴出力の処理を行う。一例として、特徴決定部３０３は、複数の顔領域毎の特徴量のうち、一致率が最も高い顔領域の特徴量を、最終的に出力する顔領域の特徴量として採用する。また例えば、一致率の上位Ｎ個（Ｎは予め定められた数）の特徴量を平均した値や、一致率を重みとして特徴量を加重平均した値を、最終的に出力する顔領域の特徴量として算出してもよい。これらは一例であり、一致率に基づいた顔領域の特徴量を求める様々な算出値を、最終的に出力する顔領域の特徴量としてもよい。また特徴決定部３０３では、比較追尾部３２２による複数フレームにおける同一人物の同定及び追尾の結果を基に、同一人物の複数の顔領域を特定し、それら同一人物の複数の顔領域から、一致率に応じて、最終的に出力する顔領域の特徴量が決定されてもよい。このように、本実施形態の特徴決定部３０３では、顔領域の特徴量と一致率の情報に基づいて最終的に出力する顔領域の特徴量を決定する処理、つまり一致率に基づいた特徴量の出力制御処理が行われる。
【００２１】
出力部３０４は、特徴決定部３０３により決定された顔領域の特徴量の情報を、図示しない後段の構成に出力する。図示しない後段の構成では、例えば、本実施形態の画像処理装置から出力された顔領域の特徴を基に顔認証処理等を行う。
【００２２】
図４は、本実施形態の画像処理プログラムを実行することによって図１のＣＰＵ１００により行われる処理の流れを示すフローチャートである。図４に示すフローチャートの処理は主に図３の各機能ブロックにより行われるが、一部の処理（例えばステップＳ４１０）は図３には図示していないＣＰＵ１００の機能により実行される。なお、以下の説明では、図４のフローチャートの各処理のステップＳ４００〜ステップＳ４１４をそれぞれＳ４００〜Ｓ４１４と略記する。
【００２３】
Ｓ４００において、入力部３００は、顔検出処理の際に比較基準として使用される、予め設定されているテンプレートのデータを、ストレージ１０３又はＲＡＭ１０２から読み込むことにより取得する。テンプレートのデータは、予めストレージ１０３等に格納されていてもよいし、本実施形態の画像処理プログラムの実行により生成されてＲＡＭ１０２に格納されていてもよい。なお、Ｓ４００で取得するテンプレートは一つに限定されるものではなく、複数のテンプレート群から構成されてもよい。Ｓ４００の後、入力部３００は、Ｓ４０１に処理を進める。
【００２４】
Ｓ４０１において、入力部３００は、図２のカメラ２０２に対して撮影画像の送信を要求する。そして、入力部３００は、Ｓ４０２において、カメラ２０２により撮影されたフレームのデータを受信する。なお、入力部３００は、ストレージ１０３から画像データを取得してもよい。Ｓ４０２の後、ＣＰＵ１００の処理は、領域検出部３０１の算出部３１０にて行われるＳ４０３に進む。
【００２５】
Ｓ４０３において、算出部３１０は、Ｓ４００で取得されたテンプレートを用い、フレームの入力画像内を走査して、テンプレートに対する複数の画像領域毎の一致率を算出する。なお、Ｓ４０３では、テンプレートをそのまま比較に適用してもよいが、例えばフレームの入力画像或いはテンプレートを拡大縮小、回転等してから比較に用いれば、画像内の顔の映り方が不明で大きさや向きが特定できない場合にも対応することが可能となる。Ｓ４０３の後、ＣＰＵ１００の処理は、領域決定部３２０にて行われるＳ４０４に進む。
【００２６】
Ｓ４０４において、領域決定部３２０は、算出部３１０にて算出された一致率を基に、フレーム内で、顔と推定される位置及びその顔の大きさ等を表す顔領域を決定する。さらに、領域決定部３２０の結果保持部３２１は、今回のフレームで決定した顔領域のデータを保持する。Ｓ４０４の後、領域決定部３２０は、比較追尾部３２２にて行われるＳ４０５に処理を進める。
【００２７】
Ｓ４０５において、比較追尾部３２２は、結果保持部３２１に保持されている、前回のフレームで決定された顔領域と、今回のフレームから決定した顔領域とを比較する。そして、比較追尾部３２２は、今回のフレームで決定された顔領域が、前回のフレームで決定された顔領域と同一か否か、つまり顔が同一人物の顔であるか否かの同定を行い、同一人物の顔領域である場合にはそれを追尾する。なお、この比較追尾部３２２での比較は、顔の画像の詳細な特徴を基に行われる比較ではなく簡易的な比較であり、具体的には顔領域の位置や大きさを比較する処理により実現される。つまり、比較追尾部３２２は、前回のフレームで決定された顔領域の位置や大きさと、今回のフレームで決定された顔領域の位置や大きさとが似通っている場合に、それら顔領域は同一人物の顔の領域であると判定する。Ｓ４０５の後、ＣＰＵ１００の処理は、特徴検出部３０２にて行われるＳ４０６に進む。
【００２８】
Ｓ４０６において、特徴検出部３０２は、比較追尾部３２２による同定と追尾の結果を基に、今回のフレームからは、前回のフレームで決定された顔領域が検出されなかったか否か判定する。Ｓ４０６において同一の顔が検出されなかったと判定（ｙｅｓ）された場合、ＣＰＵ１００の処理は、特徴決定部３０３にて行われるＳ４１２に進む。一方、Ｓ４０６において、同一の顔が検出されたと判定（ｎｏ）された場合、特徴検出部３０２は、Ｓ４０７に処理を進める。
【００２９】
Ｓ４０７において、特徴検出部３０２は、今回のフレームにおいて顔領域が検出されていたか否かを判定する。ここで、Ｓ４０６で同一の顔が検出されたと判定（ｎｏ）されたことでＳ４０７に進んだ場合、Ｓ４０７では、今回のフレームにおいて顔領域が検出されていると判定（ｙｅｓ）されることになるため、特徴検出部３０２の処理はＳ４０８に進むことになる。一方、Ｓ４０７において顔領域が検出されていないと判定（ｎｏ）された場合、ＣＰＵ１００の処理はＳ４１０に進む。なお、Ｓ４０７において顔領域が検出されていないと判定されることがあるのは、Ｓ４０６から後述するＳ４１２以降へ処理が進んだ場合であり、Ｓ４１２以降の処理については後述する。
【００３０】
Ｓ４０８において、特徴検出部３０２は、今回のフレームから検出された顔領域毎に特徴検出処理を行って、顔領域毎の特徴量を求める。領域検出部３０１は、図３に示したように、顔器官検出部３３１、人物属性検出部３３２、同一性判定部３３３、関連付け部３３４、特徴量保持部３３５を有して構成されている。Ｓ４０８の処理は、これら構成のうち、例えば、顔器官検出部３３１、人物属性検出部３３２、同一性判定部３３３により行われる。Ｓ４０８において、顔器官検出部３３１は、領域検出部３０１により今回のフレームから検出された顔領域毎に、目、鼻、口などの顔のパーツの詳細な大きさや位置などを検出する顔器官検出処理を行う。またＳ４０８において、同一性判定部３３３は、顔器官検出部３３１による顔器官検出処理の結果等を用いて、今回のフレームから検出された顔領域が、予め入力された特定の人物の顔画像と同一か否かを判定する同一性判定処理を行う。またＳ４０８において、人物属性検出部３３２は、顔器官検出の結果と顔領域の色や質感等を解析した結果等を基にした人物の年齢や性別、人種などの人物属性を検出する。なお、同一性判定処理と人物属性検出処理は、それら両方が行われてもよいし、何れか一方のみが行われても、或いは処理をより簡略化したい場合にはそれらの両処理を行わないようにしてもよい。特徴検出部３０２は、Ｓ４０８の顔領域の特徴検出処理の後、Ｓ４０９に処理を進める。
【００３１】
Ｓ４０９の処理は、特徴検出部３０２の各構成のうち、例えば、関連付け部３３４、特徴量保持部３３５にて行われる処理である。Ｓ４０９において、関連付け部３３４は、Ｓ４０８で顔領域毎に検出された特徴量を、それら顔領域についてＳ４０３で算出部３１０により算出された一致率とそれぞれ関連付けする。そして、特徴量保持部３３５は、それら顔領域の特徴量と一致率とが関連付けされた関連付け情報を保存する。Ｓ４０９の後、ＣＰＵ１００は、Ｓ４１０に処理を進める。
【００３２】
Ｓ４１０において、ＣＰＵ１００は、不図示の操作部等を介してユーザから処理の終了要求の指示が供給されたか否かを判定し、終了要求がなされたと判定（ｙｅｓ）した場合には図４のフローチャートの処理を終了する。一方、ＣＰＵ１００は終了要求がなされていないと判定（ｎｏ）した場合には、入力部３００により行われるＳ４１１に処理を進める。Ｓ４１１において、入力部３００は、動画のフレームレート分の時間だけ待機、つまり次のフレームまで待機した後、Ｓ４０２に処理を戻す。これにより、入力部３００は、Ｓ４０２において、次のフレームのデータを受信する。なお、例えばフレームレート毎の画像送受信のタイミングを、カメラなどの画像送信側で行う場合には、ステップＳ４１１の処理は不要である。この場合、入力部３００はステップＳ４０２において次のフレームが受信されるまで待ち、次のフレームの受信がなされたとき、ＣＰＵ１００の処理はＳ４０３以降に進む。
【００３３】
次に、前述のＳ４０６において今回のフレームからは前回のフレームで決定された同一の顔領域が検出されなかったと判定されてＳ４１２に進んだ場合について説明する。Ｓ４１２の処理は、制御部３０５による制御の下、特徴決定部３０３において行われる。Ｓ４１２において、特徴決定部３０３は、前述したＳ４０９で一致率と関連付けられて特徴量保持部３３５に保存された特徴量の中に、未出力の特徴量が存在するか否かを判定する。Ｓ４１２にて未出力の特徴量が存在しないと判定（ｎｏ）された場合、ＣＰＵ１００の処理は、前述したＳ４０７以降に進む。一方、Ｓ４１２にて未出力の特徴量が存在すると判定（ｙｅｓ）した場合、特徴決定部３０３は、Ｓ４１３に処理を進める。
【００３４】
Ｓ４１３において、特徴決定部３０３は、特徴量保持部３３５に保存されている顔領域毎の特徴量、及び、顔領域毎に特徴量と関連付けられている一致率に基づく制御部３０５による制御の下で、最終的に出力する特徴量を算出する。例えば前述したように、Ｓ４１３において、特徴決定部３０３では、一致率が最も大きな特徴量を採用する処理、又は、一致率の上位Ｎ個の特徴量の平均値を算出する処理、又は、上位Ｎ個の一致率を重みとした特徴量の加重平均値を算出する処理などが行われる。例えばＳ４１３において、特徴決定部３０３は、Ｓ４０４にて特徴検出部３０２の人物属性検出部３３２で検出された顔領域毎の年齢、性別、人種などの人物属性と、顔領域毎に関連付けられている一致率とに基づき、最終的に出力する特徴量が求められてもよい。また、Ｓ４１３において、特徴決定部３０３では、Ｓ４０５で複数フレームにおいて同定及び追尾の結果を基に特定される同一人物の複数の顔領域から、一致率に基づいて最終的に出力する顔領域の特徴量が決定されてもよい。なお、Ｓ４１３の処理はこれらに限定するものではなく、一致率を基にした他の処理が行われてもよい。Ｓ４１３の後、特徴決定部３０３は、Ｓ４１４の処理として、Ｓ４１３で決定した顔領域の特徴量の情報を、出力部３０４に送る。これにより、出力部３０４は、その顔領域の特徴量を図示しない後段の構成に出力する。Ｓ４１４の後、ＣＰＵ１００の処理は、前述したＳ４０７以降に進む。
【００３５】
Ｓ４１２で未出力の特徴量が存在しないと判定されてＳ４０７に進んだ場合、又は、Ｓ４１４の処理後にＳ４０７に進んだ場合、特徴検出部３０２は、Ｓ４０７において、前述同様に今回のフレームで顔領域が検出されていたか否かを判定する。そして、Ｓ４０７において、特徴検出部３０２は、今回のフレームで顔領域が検出されていたと判定した場合、前述したＳ４０８以降に処理を進める。この場合のＳ４０８では、今回のフレームにおいて検出されていた顔領域、つまり、前回のフレームには無く今回のフレームで新たに検出された顔領域について、前述した特徴量の検出が行われる。そして、次のＳ４０９では、その検出された顔領域の特徴量に対して前述同様に一致率が関連付けされて保存されることになる。
【００３６】
以下、図５（ａ）〜図５（ｅ）を用いて、Ｓ４００で取得される顔検出処理用のテンプレートと、入力画像内の画像領域（顔領域）とテンプレートとの一致率の算出例について説明する。
図５（ａ）はＳ４００で取得される顔検出処理用のテンプレート５００の一例を示す図である。本実施形態の場合、テンプレート５００は、人物の頭部付近の形状に似た形状（この例では円形状）をしている。入力画像から人物を検出する方法は、目的に応じて複数存在するが、本実施形態のように顔の特徴を検出する目的の場合、顔の特徴が判定し易いように、人物が正面を向いたときの顔領域を検出することが望ましい。そのため、本実施形態では、図５（ａ）に例示したような、人物の顔が正面を向いたときの頭部付近の形状に似た形状のテンプレート５００が用いられる。
【００３７】
領域検出部３０１の算出部３１０は、図４のＳ４０３において、図５（ａ）のテンプレート５００を用いたマッチング処理を行いながら入力画像内を走査することにより、入力画像の中の各画像領域についてテンプレート５００との一致率を求める。そして、領域決定部３２０は、入力画像内の画像領域毎に得られた一致率が、例えば所定の一致率以上となっている画像領域には、それぞれ顔画像（顔領域）が存在していると判定して、それら顔画像を検出した顔領域として決定する。
【００３８】
また、本実施形態では、前述したように、人物の顔の特徴を検出することを目的としているため、図５（ａ）に示したテンプレート５００は、人物が正面を向いたときの顔の形状及び人物の肌色を想定したものとなされている。したがって、図５（ａ）のテンプレート５００を用いた場合、人物が正面を向いているときの顔の画像（正面顔）と、人物が斜めを向いているときの顔の画像（斜め顔）とでは、一致率が異なり、正面顔に近い場合に一致率が高くなる。また、テンプレート５００と画像領域の形状が略々一致している場合であっても、画像領域の中で肌色成分が占める面積が少ない場合には、一致率は低くなされる。
【００３９】
例えば、図５（ｂ）は、前述した図２のカメラ２０２において人物２０３を正面から撮影した場合に得られる人物画像５０１を示している。一方、図５（ｃ）は、図２のカメラ２０２において人物２０３を斜め方向から撮影した場合の人物画像５０２を示している。
図５（ｂ）の人物画像５０１の場合、図５（ｄ）に示すように、人物画像５０１の頭部の形状が図５（ａ）のテンプレート５００の形状に略々合っており、また肌色成分が占める面積も大きい。一方、図５（ｃ）の人物画像５０２の場合、図５（ｅ）に示すように、肌色成分が占める面積はある程度大きいものの図５（ｄ）よりは少なく、また人物画像５０２の頭部の形状とテンプレート５００の形状も多少異なっている。すなわち、図５（ｄ）と図５（ｅ）を比較すると、図５（ｄ）の人物画像５０１の方がテンプレート５００と形状が略々一致し且つ肌色成分の面積が大きいため、図５（ｄ）の人物画像５０１の方が、図５（ｅ）の人物画像５０２に比べて高い一致率となる。
【００４０】
なお、上述のような肌色成分を検出する際には、人種や照明光などの影響を考慮して、必ずしも一般的な肌の色ではない色を含めてもよい。すなわち、入力画像の画像領域とテンプレートとの比較の際には、人種や照明光などの影響を考慮した略同一色の領域を肌色領域とみなし、それら略同一色の領域が多ければ一致率を高くするようにしてもよい。
【００４１】
また、一致率は、前述した肌色成分の領域の面積に応じた一致率に限定されず、例えば、予め入力画像にエッジ検出フィルタ処理を施して、そのフィルタ処理後の画像の平坦度の一致率であってもよい。また、一致率は、エッジ検出フィルタ処理を施した画像において、画像のエッジ成分とテンプレートのエッジ成分との一致率であってもよい。また、予め適用する処理としては、エッジ検出フィルタ処理以外にも、輝度色差成分への色変換処理や、拡大縮小処理や回転処理であってもよく、この場合、それら処理後の画像とテンプレートの一致率を求める。さらに、特に拡大縮小処理や回転処理などは、入力画像に対して施すのではなく、テンプレートに対して施すようにしてもよい。また、顔領域の検出処理の実行の際にテンプレートに対してそれら処理を施すのではなく、それら処理がなされた複数のテンプレート群を予め用意しておいてもよい。また例えば、複数のテンプレート群を用いる場合において、例えば人物の顔の様々な角度に応じたテンプレートを用いる場合には、テンプレートの角度毎に重みを設定し、より正面顔に近いテンプレートほど重い重み付けをしておくようにしてもよい。そして、使用したテンプレート毎に、一致率に対して更に重み付けが行われていてもよい。なお、上述した処理は、複数のテンプレートを予め用意しておく場合だけでなく、予め保持していたテンプレートに対して幾何学変換処理を施すことで、複数のテンプレートを生成した場合にも有効である。
なお、本実施形態においては、テンプレートの例として図５（ａ）に示す円形状のテンプレートを例に挙げたが、本発明はこれに限るものではなく、様々な形状のテンプレートが適用可能である。
【００４２】
以上説明したように、本実施形態においては、領域検出部３０１は、入力画像の複数の画像領域についてそれぞれ指標との一致率を求め、それらの一致率を基に、複数の画像領域の中から人物の顔画像と考えられる複数の顔領域を決定している。この顔領域の決定処理は、指標としてのテンプレートを用いたマッチング処理による簡易的処理により行われるため、それらフレームから顔領域のみを高速に検出可能であり、したがって、例えば動画のフレームレートが高い場合でも顔領域を検出可能となる。特徴検出部３０２は、領域検出部３０１にて決定された複数の顔領域について、それぞれ顔器官、人物属性、人物の同一性などの詳細な顔領域の特徴量を検出し、それら検出された顔領域の特徴量と一致率を関連付けて保持する。その後、特徴決定部３０３は、特徴検出部３０２で検出された複数の顔領域の特徴量とそれに関連付けられた一致率の情報に基づいて、最終的に出力される顔領域の特徴量を算出する。すなわち、特徴決定部３０３では、領域検出部３０１により算出された一致率に基づいて、制御部３０５により、特徴量の出力処理が制御されている。このように、本実施形態では、顔領域の詳細な特徴量を検出する前に、指標との一致率に基づいて簡易的に正面の顔領域のみが検出され、それら顔領域に対してのみ詳細な特徴量が検出され、さらに特徴量と一致率を基に、最終的に出力する特徴量が算出されている。これにより、本実施形態によれば、入力画像に対する走査時に顔領域の特徴検出処理を実行することなく、なるべく正面に近い顔領域のみを選定し、その結果として、正面の顔領域の特徴量検出を適切かつ高速に実行可能になる。
なお、上述の説明では、図５を用いて説明した一致率に基づいて処理を行う例を示したが、一致率そのものではなく、一致率を使用して算出される他の値に基づいて処理を行うようにしてもよい。
【００４３】
前述の説明では、特徴決定部３０３がＳ４１３において特徴量と一致率に応じた制御により最終的に出力する顔の特徴量を決定する例を挙げたが、特徴検出部３０２によるＳ４０８の処理の実行を、一致率に基づいて変更する制御が行われてもよい。具体例には、予め定められた所定数（Ｎ個：Ｎは予め定められた数）の顔領域の特徴量検出結果を特徴決定部３０３が保持するようにしておき、制御部３０５は、一致率が上位所定数（Ｎ個）になる場合にのみ特徴検出部３０２の特徴検出処理を行わせる。これにより、特徴決定部３０３には、上位所定数（Ｎ個）の一致率に対応した顔領域の特徴量が保持されることになる。この例の場合、一致率が上位のＮ個になる場合にのみ特徴検出部３０２の処理が行われて、特徴検出部３０２の処理量が低減されるため、結果として、人物の顔領域の特徴検出の高速化が可能となる。或いは、予め定められた閾値と一致率との比較の結果、一致率が閾値より大きかった場合に、特徴検出部３０２による図４のＳ４０８の処理が実行されるように変更する制御が行われてもよい。この場合も、一致率が閾値より大きい場合にのみ特徴検出部３０２の処理が実行されて、特徴検出部３０２の処理量が低減されるため、結果として、人物の顔領域の特徴検出の高速化が可能となる。このように、顔検出処理時の一致率に基づいて特徴量の検出処理が制御されることにより、精度の高い特徴量検出結果が、少ない処理量で得られる（つまり処理の高速化が）ようになる。
【００４４】
またこの例の場合、図４のＳ４０５で同定と追尾の処理を行うに当たっては、後段の顔領域の特徴検出処理であるＳ４０８の実行やその実行結果の使用には適さない向きの顔領域であっても顔領域として検出されることが望ましい。そのため、様々な顔の向きに対する複数のテンプレートを使用して顔領域の判定を行った上で、使用したテンプレートに基づいて前述した重み付け、或いは顔領域の特徴検出処理であるＳ４０８の実行や実行結果の使用可否の制御を行うようにするとよい。
【００４５】
また、上述した実施形態で適用される構成としては、図２に示したようなコンピュータ２００で動作するソフトウェアプログラムにより実現される構成例以外にも、様々な適用例が可能である。例えば、カメラ２０２が、ハードウェア処理或いは組み込みのソフトウェア処理で前述した処理を実現してもよい。或いは、前述した処理の一部をカメラ２０２で行い、他の処理をコンピュータ２００（画像処理装置）で行うなど、単一機器内での処理に限定しない画像処理システムの構成であってもよい。画像処理システムにおけるカメラ２０２とコンピュータ２００による分散処理の例としては、例えば顔領域の決定処理であるＳ４０４までの処理をカメラ２０２で行い、以降の処理をコンピュータ２００で実行する方法が考えられる。このように処理を分けることにより、検出された顔領域の数に依存し難い処理がカメラ２０２内で実行されるため、フレームレートが高い場合でもフレームレートに追従した処理が行い易くなる利点がある。また、分散処理の他の方法としては、Ｓ４０５の顔領域の同定及び追尾処理までをカメラ２０２で行うようにしてもよい。このようにすることで、特に動きを追尾する必要がある場合において、カメラ２０２とコンピュータ２００との間の通信による遅延が発生しなくなるため、精度の高い追尾を行いながら特徴検出処理を行うことが可能となる。
【００４６】
また、カメラ２０２の処理性能に応じてカメラが行う処理を決め、それ以外の処理をコンピュータ２００で行うようにする構成であってもよい。この構成例における処理の切り分けは、撮像条件やカメラ２０２の性能に応じて動的に決定してもよいし、予め固定的に割り振ってもよい。このような構成にすることで、多数のカメラ２０２が接続されている場合においてコンピュータ２００の処理負荷を低減でき、より多くのカメラ２０２を扱うことが可能になるという利点がある。
【００４７】
また、上述の実施形態においては、入力される画像は動画であることを前提に説明を行ったが、静止画に対して処理を行うようにしてもよい。この場合、連写された複数枚の静止画であれば動画と同様に扱ってもよいが、単一の静止画であれば顔領域の同一性に係るＳ４０６及びＳ４０７の処理を省略し、単一画像に対して処理結果が出力されるようにするとよい。
【００４８】
また上述の実施形態では、人物の正面の顔画像の特徴を検出する例を挙げたが、本実施形態の画像処理装置は、例えば道路等を走行している特定の車両の特徴、工場内のコンベアー上を流れている部品や製品等の特徴、動物の特徴等を検出することも可能である。また、これら人物、車両、製品、動物等の特徴を個別に検出する場合だけでなく、それら種類毎に分けてそれぞれ特徴検出を行うようにしてもよい。
【００４９】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００５０】
上述の実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明は、その技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【００５１】
１００：ＣＰＵ、１０１：ＲＯＭ、１０２：ＲＡＭ、１０３：ストレージ、１０４：ＬＡＮインターフェース、２００：コンピュータ、２０１：ディスプレイ、２０２：カメラ、３０１：顔領域検出部、３０２：顔領域特徴検出部、３０３：顔特徴決定部
【図１】
2018081402.tif 000003
【図２】
2018081402.tif 000004
【図３】
2018081402.tif 000005
【図４】
2018081402.tif 000006
【図５】
2018081402.tif 000007