(57)【要約】【課題】検出対象物の一時的な変化が発生しても検出対象物の誤検出を生じ難くし、これにより検出動作の安定性の向上を図る。【解決手段】トラッキングフラグがオンになっている状態で、探索制御部６が、前フレームに対し、現フレームの顔の特徴点の位置座標の変化量が所定の範囲内であるか、顔向きの変化量が所定の角度の範囲内であるか、視線の方向変化量が所定の範囲内であるかをそれぞれ判定する。そして、これらの全ての判定において条件が満たされれば、前フレームに対する現フレームの検出結果の変化は許容範囲内であると見なし、後続フレームにおいても引き続きトラッキング情報記憶部７に保存された顔画像領域に応じて顔画像の検出処理を行う。【選択図】図１
2019185557.tif 000002
【特許請求の範囲】
【請求項１】
時系列的に入力される画像からフレーム単位で検出対象物が含まれる画像領域を検出し、当該検出された画像領域に基づいて前記検出対象物の状態を推定する処理を行う探索部と、
前記探索部により推定された前記検出対象物の状態の確からしさを表す信頼度を検出する信頼度検出部と、
前記信頼度検出部により検出された信頼度に基づいて前記探索部の処理を制御する探索制御部と
を具備し、
前記探索制御部は、
前記画像の第１フレームにおいて前記信頼度検出部により検出された信頼度が、予め設定された信頼度条件を満たすか否かを判定する第１の判定部と、
前記第１フレームにおいて検出された信頼度が前記信頼度条件を満たすと判定された場合に、前記第１フレームにおいて前記探索部により検出された画像領域の位置をメモリに保存し、前記第１フレームに続く第２フレームにおける前記検出対象物の状態の推定処理が前記保存された画像領域の位置を基準にして行われるように前記探索部を制御する第１の制御部と、
前記第２フレームにおいて、前記探索部により推定された前記検出対象物の状態の前記第１フレームからの変化が、予め設定された判定条件を満たしているか否かを判定する第２の判定部と、
前記検出対象物の状態の前記第１フレームからの変化が前記判定条件を満たしていると判定された場合に、前記第２フレームに続く第３フレームにおける前記検出対象物の状態の推定処理が前記保存された画像領域の位置を基準にして行われるように前記探索部を制御する第２の制御部と、
前記検出対象物の状態の前記第１フレームからの変化が前記判定条件を満たさないと判定された場合に、前記メモリに保存されている前記画像領域の位置を消去し、前記第２フレームに続く第３フレームにおける前記探索部の処理が前記画像領域の検出処理から行われるように前記探索部の処理を制御する第３の制御部と
を備える画像解析装置。
【請求項２】
前記探索部は、前記検出対象物を人の顔とし、当該人の顔を構成する複数の器官に対応して予め設定された複数の特徴点の位置、前記顔の向きおよび前記顔の視線方向の少なくとも１つを推定する請求項１記載の画像解析装置。
【請求項３】
前記探索部は、前記画像領域における、前記人の顔を構成する複数の器官に対応して予め設定された複数の特徴点の位置を推定する処理を行い、
前記第２の判定部は、前記判定条件として、前記特徴点の位置のフレーム間変化の許容量を定義した第１の閾値を有し、前記探索部により推定された前記特徴点の位置の前記第１フレームと前記第２フレームとの間の変化量が、前記第１の閾値を超えているか否かを判定する、請求項２に記載の画像解析装置。
【請求項４】
前記探索部は、前記画像領域から、前記人の顔の基準方向に対する向きを推定する処理を行い、
前記第２の判定部は、前記判定条件として、前記人の顔の向きのフレーム間変化の許容量を定義した第２の閾値を有し、前記探索部により推定された前記人の顔の向きの前記第１フレームと第２フレームとの間における変化量が、前記第２の閾値を超えているか否かを判定する、請求項２に記載の画像解析装置。
【請求項５】
前記探索部は、前記画像領域から、前記人の顔の視線を推定する処理を行い、
前記第２の判定部は、前記判定条件として、前記検出対象物の視線方向のフレーム間変化の許容量を定義した第３の閾値を有し、前記探索部により推定された前記人の顔の視線方向の前記第１フレームと前記第２フレームとの間の変化量が、前記第３の閾値を超えているか否かを判定する、請求項２に記載の画像解析装置。
【請求項６】
時系列的に入力される画像をもとに検出対象物の状態を推定する装置が実行する画像解析方法であって、
前記時系列的に入力される画像からフレーム単位で検出対象物が含まれる画像領域を検出し、当該検出された画像領域に基づいて前記検出対象物の状態を推定する処理を行う探索過程と、
前記探索過程により推定された前記検出対象物の状態の確からしさを表す信頼度を検出する信頼度検出過程と、
前記画像の第１フレームにおいて前記信頼度検出過程により検出された信頼度が、予め設定された信頼度条件を満たすか否かを判定する第１の判定過程と、
前記第１フレームにおいて検出された信頼度が前記信頼度条件を満たすと判定された場合に、前記第１フレームにおいて前記探索過程により検出された画像領域の位置をメモリに保存し、前記第１フレームに続く第２フレームにおける前記検出対象物の状態の推定が前記保存された画像領域の位置を基準にして行われるように前記探索過程の処理を制御する第１の制御過程と、
前記第２フレームにおいて、前記探索過程により推定された前記検出対象物の状態の前記第１フレームからの変化が、予め設定された判定条件を満たしているか否かを判定する第２の判定過程と、
前記検出対象物の状態の前記第１フレームからの変化が前記判定条件を満たしていると判定された場合に、前記第２フレームに続く第３フレームにおける前記検出対象物の状態の推定処理が前記保存された画像領域の位置を基準にして行われるように前記探索過程の処理を制御する第２の制御過程と、
前記検出対象物の状態の前記第１フレームからの変化が前記判定条件を満たさないと判定された場合に、前記メモリに保存されている前記画像領域の位置を消去し、前記第２フレームに続く第３フレームにおける前記探索過程の処理が前記画像領域の検出処理から行われるように前記探索過程を制御する第３の制御過程と
を具備する画像解析方法。
【請求項７】
請求項１乃至５のいずれかに記載の画像解析装置が備える前記各部による処理を、前記画像解析装置が備えるハードウェアプログラムに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明の実施形態は、例えば撮像された画像から人の顔を検出するために使用される画像解析装置、方法およびプログラムに関する。
【背景技術】
【０００２】
例えば、ドライバモニタリング等の監視分野において、カメラにより撮像された画像から人の顔が含まれる画像領域を検出し、検出された顔画像領域から目や鼻、口などの複数の器官の位置や顔の向き、視線等を検出する技術が提案されている。
【０００３】
撮像画像から人の顔が含まれる画像領域を検出する手法としては、例えばテンプレートマッチング等の公知の画像処理技術が知られている。この技術は、例えば、撮像画像に対し予め用意された顔の基準テンプレートの位置を所定数の画素間隔でステップ的に移動させながら、上記撮像画像からテンプレートの画像との一致の度合いが閾値以上となる画像領域を検出し、この検出された画像領域を例えば矩形の枠により抽出することにより、人の顔を検出するものである。
【０００４】
また、検出された顔画像領域から器官の位置や顔の向きを検出する技術としては、例えば検出対象とする顔の複数の器官を顔形状モデルを用いて探索する技術が知られている。この技術は、例えば、学習等により予め作成された顔形状モデルを用いて、顔画像領域から上記顔の各器官の位置を表す特徴点を探索し、この探索結果の信頼度が閾値を超えた場合にこのときの上記特徴点を含む領域を顔画像とするものである（例えば特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−１９１５９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところが、一般に従来の顔検出技術は、特許文献１に記載されているように、顔の特徴点の探索結果の信頼度が閾値を閾値に満たない場合、無条件で上記特徴点の検出に失敗したと判断し、顔領域の検出からやり直すようにしている。このため、例えば手や髪の毛により顔の一部が一時的に隠れることで特徴点の検出結果の信頼度が一時的に低下した場合にも、上記特徴点の検出結果が失敗と判定され、顔検出が初めからやり直しになる。またこのとき、撮像画像中から同時に検出された背景画像の中に、例えば後部座席の人の顔やシートの模様等の検出対象の顔の特徴と類似する画像パターンが含まれ、かつその信頼度が閾値より高いと、本来の検出対象の顔に代わって上記背景画像が検出対象として誤検出されることがあり、顔検出の処理が不安定になるという問題があった。
【０００７】
この発明は上記事情に着目してなされたもので、検出対象物の一時的な変化が発生しても検出対象物の誤検出を生じ難くし、これにより検出動作の安定性の向上を図った技術を提供しようとするものである。
【課題を解決するための手段】
【０００８】
上記課題を解決するためにこの発明の第１の態様は、探索部において、時系列的に入力される画像からフレーム単位で検出対象物が含まれる画像領域を検出し、当該検出された画像領域に基づいて前記検出対象物の状態を推定する探索部を備える画像解析装置において、前記推定された前記検出対象物の状態の確からしさを表す信頼度を検出する信頼度検出部と、この検出された信頼度に基づいて前記探索部の処理を制御する探索制御部をさらに備えている。
【０００９】
そして、探索制御部において、第１フレームにおいて検出された信頼度が信頼度条件を満たすと判定された場合に、第１フレームにおいて上記探索部により検出された画像領域の位置をメモリに保存し、第１フレームに続く第２フレームにおける上記検出対象物の状態の推定が前記保存された画像領域の位置を基準にして行われるように前記探索部を制御する。
【００１０】
また探索制御部において、前記第２フレームにおいて前記探索部により推定された前記検出対象物の状態の前記第１フレームからの変化が、予め設定された判定条件を満たしているか否かを判定する。そして、変化が判定条件を満たしていると判定された場合には、上記第２フレームに続く第３フレームにおける上記検出対象物の状態の推定処理が上記保存された画像領域の位置を基準にして行われる。
【００１１】
これに対し上記検出対象物の状態の上記第１フレームからの変化が上記判定条件を満たさないと判定された場合には、探索制御部において、上記メモリに保存されている画像領域の位置を消去し、上記第２フレームに続く第３フレームにおける探索部の処理を、画像フレーム全体を対象として上記画像領域の検出処理から行うようにしたものである。
【００１２】
従って、第１の態様によれば、画像の第１フレームにおいて探索部により推定された検出対象物の状態の信頼度が所定の信頼度条件を満たすと、例えばトラッキングモードと呼ばれる探索モードが設定される。トラッキングモードでは、上記第１フレームにおいて上記探索部により検出された画像領域の位置がメモリに保存される。そして、探索部では、上記第１フレームに続く第２フレームにおいて上記検出対象物の状態を推定する際に、上記保存された画像領域の位置を基準にして検出対象物が含まれる画像領域が検出され、この画像領域をもとに上記検出対象物の状態を推定する処理が行われる。このため、全てのフレームにおいて常に初期状態から検出対象物が含まれる画像領域を検出して検出対象物の状態を推定する処理を行う場合に比べ、画像領域の検出を効率良く行うことができる。
【００１３】
また第１の態様によれば、上記トラッキングモードが設定された状態で、探索部で推定された検出対象物の状態のフレーム間変化量が所定の判定条件を満たすか否かが判定される。そして、満たしていれば、第２フレームで推定された検出対象物の状態の変化は許容範囲内であると見なされ、続く第３フレームにおいても引き続き上記トラッキングモードによる画像領域の検出および検出対象物の状態を推定する処理が行われる。
【００１４】
このため、例えばドライバモニタリングの分野において、ドライバの顔の一部が手や髪の毛等により一時的に隠れたり、ドライバの体動に伴い顔の一部が顔画像領域の基準位置から一時的に外れた場合には、トラッキングモードが維持され、後続フレームにおいては引き続きトラッキングモードによる画像領域の検出処理と検出対象物の状態の推定処理が行われる。このため、検出対象物の画像領域の検出および検出対象物の状態の推定処理の安定性を高めることができる。
【００１５】
さらに第１の態様によれば、検出対象物の状態のフレーム間変化量が所定の判定条件を満たさなければトラッキングモードは解除され、次フレームからは再び画像の全領域を探索範囲として検出対象物が含まれる画像領域が検出され、検出対象物の状態の推定が行われる。このため、トラッキングモード設定中において、検出対象物の状態の推定結果の信頼性が上記判定条件以下に低下した場合には、次フレームでは初期状態から画像領域を検出し検出対象物の状態を推定する処理が行われる。従って、信頼度が低下した状態では、速やかにトラッキングモードは解除され、これにより検出対象物の状態を高精度に把握することができる。
【００１６】
この発明に係る装置の第２の態様は、前記第１の態様において、前記探索部が、前記検出対象物を人の顔とし、当該人の顔を構成する複数の器官に対応して予め設定された複数の特徴点の位置、前記顔の向きおよび前記顔の視線方向の少なくとも１つを推定するようにしたものである。
第２の態様によれば、例えば、ドライバモニタリングの分野においてドライバの顔の状態を信頼性高くかつ安定的に推定することが可能となる。
【００１７】
この発明に係る装置の第３の態様は、前記第２の態様において、前記探索部が、前記画像領域における、前記人の顔を構成する複数の器官に対応して予め設定された複数の特徴点の位置を推定する処理を行い、前記第２の判定部が、前記判定条件として、前記特徴点の位置のフレーム間変化の許容量を定義した第１の閾値を有し、前記探索部により推定された前記特徴点の位置の前記第１のフレームと前記第２フレームとの間の変化量が、前記第１の閾値を超えているか否かを判定するようにしたものである。
【００１８】
第３の態様によれば、例えば、ドライバの顔の特徴点位置の推定結果の信頼度が低下した場合、上記特徴点位置のフレーム間変化量が第１の閾値以下であれば、このときの特徴点位置の変化は許容範囲内であると見なされ、トラッキングモードが継続される。したがって、顔の特徴点の推定結果の信頼度が一時的に低下した場合には、トラッキングモードに従い、効率のよい処理を継続することができる。
【００１９】
この発明に係る装置の第４の態様は、前記第２の態様において、前記探索部が、前記画像領域から前記人の顔の基準方向に対する向きを推定する処理を行い、前記第２の判定部が、前記判定条件として、前記人の顔の向きのフレーム間変化の許容量を定義した第２の閾値を有し、前記探索部により推定された前記人の顔の向きの前記第１フレームと第２フレームとの間における変化量が、前記第２の閾値を超えているか否かを判定するようにしたものである。
【００２０】
第４の態様によれば、例えば、ドライバの顔の向きの推定結果の信頼度が低下した場合、上記顔向きのフレーム間変化量が第２の閾値以下であれば、このときの顔向きの変化は許容範囲内であると見なされ、トラッキングモードが継続される。したがって、顔の向きの推定結果の信頼度が一時的に低下した場合には、トラッキングモードに従い、効率のよい処理を継続することができる。
【００２１】
この発明に係る装置の第５の態様は、前記第２の態様において、前記探索部が、前記画像領域から前記人の顔の視線を推定する処理を行い、前記第２の判定部が、前記判定条件として、前記検出対象物の視線方向のフレーム間変化の許容量を定義した第３の閾値を有し、前記探索部により推定された前記人の顔の視線方向の前記第１フレームと前記第２フレームとの間の変化量が、前記第３の閾値を超えているか否かを判定するようにしたものである。
【００２２】
第５の態様によれば、例えば、ドライバの視線の方向の推定結果の信頼度が低下した場合、上記視線の方向のフレーム間変化量が第３の閾値以下であれば、このときの視線の方向の変化は許容範囲内であると見なされ、トラッキングモードが継続される。したがって、視線方向の推定結果の信頼度が一時的に低下した場合には、トラッキングモードに従い、効率のよい処理を継続することができる。
【発明の効果】
【００２３】
すなわちこの発明の各態様によれば、検出対象物の一時的な変化が発生しても検出対象物の誤検出を生じ難くし、これにより検出動作の安定性の向上を図った技術を提供することができる。
【図面の簡単な説明】
【００２４】
【図１】図１は、この発明の一実施形態に係る画像解析装置の一適用例を示すブロック図である。
【図２】図２は、この発明の一実施形態に係る画像解析装置のハードウェアの構成の一例を示すブロック図である。
【図３】図３は、この発明の一実施形態に係る画像解析装置のソフトウェアの構成の一例を示すブロック図である。
【図４】図４は、図３に示した画像解析装置による学習処理の手順と処理内容の一例を示すフローチャートである。
【図５】図５は、図３に示した画像解析装置による画像解析処理の全体の処理手順と処理内容の一例を示すフローチャートである。
【図６】図６は、図５に示した画像解析処理のサブルーチンの１つを示すフローチャートである。
【図７】図７は、図５に示した画像解析処理のうち特徴点探索処理の処理手順と処理内容の一例を示すフローチャートである。
【図８】図８は、図５に示した顔領域検出処理により検出された顔領域の一例を示す図である。
【図９】図９は、図５に示した特徴点探索処理により検出された顔特徴点の一例を示す図である。
【図１０】図１０は、顔領域の一部が手により隠された例を示す図である。
【図１１】図１１は、顔画像から抽出された特徴点の一例を示す図である。
【図１２】図１２は、顔画像から抽出された特徴点を三次元表示した例を示す図である。
【発明を実施するための形態】
【００２５】
以下、図面を参照してこの発明に係わる実施形態を説明する。
【００２６】
［適用例］
先ず、この発明の実施形態に係る画像解析装置の一適用例について説明する。  
この発明の実施形態に係る画像解析装置は、例えば、ドライバの顔を構成する複数の器官（目や、鼻、口、頬骨等）に対応して予め設定した複数の特徴点の位置や、ドライバの顔の向き、視線の方向等を監視するドライバモニタリングシステムに使用されるもので、以下のように構成される。
【００２７】
図１は、ドライバモニタリングシステムで使用される画像解析装置の機能構成を示すブロック図である。画像解析装置２はカメラ１に接続される。カメラ１は、例えば運転席と対向する位置に設置され、運転席に着座しているドライバの顔を含む所定の範囲を一定のフレーム周期で撮像し、その画像信号を出力する。
【００２８】
画像解析装置２は、画像取得部３と、顔検出部４と、信頼度検出部５と、探索制御部（単に制御部とも云う）６と、トラッキング情報記憶部７とを備えている。
【００２９】
画像取得部３は、例えば、上記カメラ１から時系列で出力される画像信号を受信し、受信した画像信号をそのフレームごとにデジタル信号からなる画像データに変換して画像メモリに保存する。
【００３０】
顔検出部４は、顔領域検出部４ａと、探索部４ｂとを有する。
顔領域検出部４ａは、上記画像取得部３により取得された画像データをフレームごとに上記画像メモリから読み出し、当該画像データからドライバの顔を含む画像領域（部分画像）を抽出する。例えば、顔領域検出部４ａは、テンプレートマッチング法を使用する。そして、画像データに対し顔の基準テンプレートの位置を所定数の画素間隔でステップ的に移動させながら、上記画像データから基準テンプレートの画像との一致の度合いが閾値以上となる画像領域を検出し、この検出された画像領域を抽出する。この顔画像領域の抽出には、例えば矩形枠が使用される。
【００３１】
探索部４ｂは、その機能として、顔の特徴点の位置を検出する位置検出部４ｂ１と、顔向き検出部４ｂ２と、視線検出部４ｂ３とを有する。探索部４ｂは、例えば、顔の複数の角度の各々に対応して用意された複数の三次元顔形状モデルを用いる。三次元顔形状モデルは、検出対象となる複数の特徴点に対応する顔の複数の器官（例えば目や鼻、口、頬骨）の三次元位置を特徴点配置ベクトルにより定義したものである。
【００３２】
探索部４ｂは、例えば上記抽出された顔画像領域に対し上記複数の三次元顔形状モデルを順次射影することにより、上記顔領域検出部４ａにより検出された顔画像領域から上記各器官の特徴量を取得する。そして、取得された特徴量の正解値に対する誤差量と、当該誤差量が閾値以内となるときの三次元顔形状モデルとに基づいて、上記顔画像領域における各特徴点の三次元位置座標を推定し、さらにこの推定された各特徴点の三次元位置座標をもとに顔の向きと視線の方向をそれぞれ推定する。
【００３３】
なお、探索部４ｂでは、先ず粗探索により顔の代表的な特徴点の位置を推定し、続いて詳細探索により多数の特徴点の位置を推定するというように、探索処理を二段階で行うことも可能である。粗探索と詳細探索との違いは、例えば、検出対象とする特徴点の数と、それに対応する三次元顔形状モデルの特徴点配置ベクトルの次元数と、特徴量の正解値に対する誤差量を判定するための判定条件にある。
【００３４】
詳細探索では、顔画像領域から顔を精度良く検出するために、例えば検出対象の特徴点を多く設定して三次元顔形状モデルの特徴点配置ベクトルの次元数を多次元とし、さらに顔画像領域から取得した特徴量の正解値に対する誤差量の判定条件を厳しく設定する。例えば、判定閾値を小さい値に設定する。これに対し粗探索では、顔の特徴点を短時間に検出するために、検出対象の特徴点を限定して三次元顔形状モデルの特徴点配置ベクトルの次元数を少なくし、さらに誤差量の判定条件が詳細探索の場合より緩くなるように、判定閾値を大きめの値に設定する。
【００３５】
信頼度検出部５は、上記探索部４ｂにより得られた特徴点の位置の推定結果についてその確からしさを表す信頼度を算出する。信頼度の算出方法としては、例えば、予め記憶された顔画像の特徴と、探索部４ｂにより検出された顔画像領域の特徴とを比較して、検出した顔領域の画像が被写体の画像である確率を求め、この確率から信頼度を算出する方法が用いられる。また、別の検出方法として、予め記憶された顔画像の特徴と、探索部４ｂにより検出された顔領域の画像の特徴との差を算出し、その差の大きさから信頼度を算出する方法を使用することもできる。
【００３６】
探索制御部６は、上記信頼度検出部５により検出された信頼度に基づいて、上記顔検出部４の動作を制御する。
例えば、探索制御部６は、画像の現フレームにおいて、上記探索部４ｂにより得られた推定結果の信頼度が閾値を超えた場合に、トラッキングフラグをオンに設定し、このとき顔領域検出部４ａにより検出された顔画像領域をトラッキング情報記憶部７に保存する。つまり、トラッキングモードを設定する。そして、上記保存された顔画像領域を、後続のフレームにおいて顔画像領域を検出するための基準位置とするように顔領域検出部４ａに提供する。
【００３７】
また探索制御部６は、上記トラッキングモードが設定されている状態で、前フレームの推定結果に対する現フレームの推定結果の変化の状況が、予め設定された判定条件を満たしているか否かを判定する。
【００３８】
ここで、上記判定条件としては以下の３種類が使用される。
(a) 顔の特徴点の位置座標の変化量が所定の範囲内であること。
(b) 顔の向きの変化量が所定の角度の範囲内であること。
(c) 視線の方向の変化量が所定の範囲内であること。
【００３９】
そして探索制御部６は、上記前フレームの推定結果に対する現フレームの推定結果の変化量が、上記３種類の判定条件(a) 〜(c) の全てを満たすと判定すると、トラッキングフラグをオンに維持したまま、つまりトラッキングモードを維持したまま、トラッキング情報記憶部７に保存されている顔画像領域を保持し続ける。そして、顔領域検出部４ａに対し上記保存された顔画像領域の座標を顔検出部４に引き続き提供し、この顔画像領域を当該顔画像領域を後続フレームにおいて上記顔領域を検出するための基準位置として使用できるようにする。
【００４０】
これに対し、上記前フレームにおける推定結果に対する現フレームにおける推定結果の変化が、上記３種類の判定条件のいずれか１つでも満たさない場合、探索制御部６はトラッキングフラグをオフにリセットし、上記トラッキング情報記憶部７に保存されている顔画像領域の座標を消去する。つまり、トラッキングモードを解除する。そして、顔領域検出部１１２に対し、後続フレームにおいては顔画像領域の検出処理を、フレーム全体を対象にして初期状態からやり直すように指示する。
【００４１】
以上のような機能構成を備えることで、この適用例によれば、ある画像フレームにおいて探索部４ｂによる推定結果の信頼度が閾値を超えると、顔の特徴点が高い信頼度で推定されたと判断されてトラッキングフラグがオンになり、当該フレームにおいて推定された顔画像領域の座標がトラッキング情報記憶部７に保存される。そして、次フレームでは、上記トラッキング情報記憶部７に保存された顔画像領域の座標を基準位置として顔画像領域の検出が行われる。このため、各フレームにおいて常に初期状態から顔画像領域を検出する場合に比べ、顔画像領域の検出を効率良く行うことができる。
【００４２】
一方、上記トラッキングフラグがオンになっている状態で、つまりトラッキングモード設定されている状態で、探索制御部６では、顔の特徴点の位置座標のフレーム間の変化量が所定の範囲内であるか、顔の向きのフレーム間の変化量が所定の角度の範囲内であるか、視線の方向のフレーム間の変化量が所定の範囲内であるかがそれぞれ判定される。そして、これらの全ての判定において判定条件が満たされれば、上記前フレームに対し現フレームの推定結果が変化したとしても、その変化は許容範囲内であると見なされ、後続フレームにおいても引き続きトラッキング情報記憶部７に保存された顔画像領域の位置座標を基準位置として顔画像領域の検出処理が行われる。
【００４３】
従って、例えば、ドライバの顔の一部が手や髪の毛等により一時的に隠れたり、ドライバの体動に伴い顔の一部がトラッキング中の顔画像領域から一時的に外れた場合にも、トラッキングモードは維持され、後続フレームにおいては引き続きトラッキング情報記憶部７に保存された顔画像領域の座標を基準位置として顔画像領域の検出処理が行われる。このため、探索部４ｂによる顔の特徴点の位置、顔の向きおよび視線の方向を推定する処理の安定性を高めることができる。
【００４４】
なお、上記判定条件を用いてトラッキングモードを維持するか否かを判定する際に、上記３つの判定条件を全て満たさなくても、これらの判定条件のうちの１つまたは２つを満たせば、トラッキングモードが継続されるようにしてもよい。
【００４５】
［一実施形態］
（構成例）
（１）システム
この発明の一実施形態に係る画像解析装置は、適用例においても述べたように、例えば、ドライバの顔の状態を監視するドライバモニタリングシステムにおいて使用される。ドライバモニタリングシステムは、例えば、カメラ１と、画像解析装置２とを備える。
【００４６】
カメラ１は、例えば、ダッシュボード上の運転者（ドライバ）と正対する位置に配置される。カメラ１は、撮像デバイスとして例えば近赤外光を受光可能なＣＭＯＳ（Complementary MOS）イメージセンサを使用する。カメラ１は、ドライバの顔を含む所定の範囲を撮像し、その画像信号を例えば信号ケーブルを介して画像解析装置２へ送出する。なお、撮像デバイスとしては、ＣＣＤ（Charge Coupled Device）等のその他の固体撮像素子を用いてもよい。またカメラ１の設置位置は、フロントガラスやルームミラー等のようにドライバと正対する場所であれば、どこに設定されてもよい。
【００４７】
（２）画像解析装置
画像解析装置２は、上記カメラ１により得られた画像信号からドライバの顔画像領域を検出し、この顔画像領域からドライバの顔の状態、例えば、顔の複数の器官（例えば目や鼻、口、頬骨）に対応して予め設定された複数の特徴点の位置、顔の向き、視線の方向を検出するものである。
【００４８】
（２−１）ハードウェア構成
図２は、画像解析装置２のハードウェア構成の一例を示すブロック図である。
画像解析装置２は、例えば、ＣＰＵ（Central Processing Unit）等のハードウェアプロセッサ１１Ａを有する。そして、このハードウェアプロセッサ１１Ａに対し、プログラムメモリ１１Ｂ、データメモリ１２、カメラインタフェース（カメラＩ／Ｆ）１３、外部インタフェース（外部Ｉ／Ｆ）１４を、バス１５を介して接続したものとなっている。
【００４９】
カメラＩ／Ｆ１３は、上記カメラ１から出力された画像信号を、例えば信号ケーブルを介して受信する。外部Ｉ／Ｆ１４は、顔の状態の検出結果を表す情報を、例えば脇見や眠気を判定するドライバ状態判定装置や、車両の動作を制御する自動運転制御装置等の外部装置へ出力する。
【００５０】
なお、車内にＬＡＮ（Local Area Network）等の車内有線ネットワークや、Bluetooth（登録商標）等の小電力無線データ通信規格を採用した車内無線ネットワークが備えられている場合には、上記カメラ１とカメラＩ／Ｆ１３との間、および外部Ｉ／Ｆ１４と外部装置との間の信号伝送を、上記ネットワークを用いて行ってもよい。
【００５１】
プログラムメモリ１１Ｂは、記憶媒体として、例えば、ＨＤＤ（Hard Disk Drive）、ＳＳＤ（Solid State Drive）等の随時書込みおよび読出しが可能な不揮発性メモリと、ＲＯＭ等の不揮発性メモリとを使用したもので、一実施形態に係る各種制御処理を実行するために必要なプログラムが格納されている。
【００５２】
データメモリ１２は、例えば、ＨＤＤまたはＳＳＤ等の随時書込みおよび読出しが可能な不揮発性メモリと、ＲＡＭ等の揮発性メモリとを組み合わせたものを記憶媒体として備え、一実施形態に係る各種処理を実行する過程で取得、検出および算出された各種データや、テンプレートデータ等を記憶するために用いられる。
【００５３】
（２−２）ソフトウェア構成
図３は、この発明の一実施形態に係る画像解析装置２のソフトウェア構成を示したブロック図である。
データメモリ１２の記憶領域には、画像記憶部１２１と、テンプレート記憶部１２２と、検出結果記憶部１２３と、トラッキング情報記憶部１２４が設けられている。画像記憶部１２１は、カメラ１から取得した画像データを一時保存するために用いられる。
【００５４】
テンプレート記憶部１２２は、画像データからドライバの顔が映っている画像領域を検出するための顔の基準テンプレートや、三次元顔形状モデルを記憶する。三次元顔画像モデルは、上記検出された顔画像領域から検出対象となる複数の器官（例えば目や鼻、口、頬骨）に対応する複数の特徴点を検出するためのもので、想定される顔の向きに応じて複数のモデルが用意される。
【００５５】
検出結果記憶部１２３は、顔画像領域から推定された顔の各器官に対応する複数の特徴点の三次元位置座標、顔の向きおよび視線の方向を表す情報を記憶するために用いられる。トラッキング情報記憶部１２４は、トラッキングフラグと、トラッキング中の顔画像領域の位置座標を保存するために用いられる。
【００５６】
制御ユニット１１は、上記ハードウェアプロセッサ１１Ａと、上記プログラムメモリ１１Ｂとから構成され、ソフトウェアによる処理機能部として、画像取得制御部１１１と、顔領域検出部１１２と、探索部１１３と、信頼度検出部１１５と、探索制御部１１６と、出力制御部１１７とを備えている。これらの処理機能部は、いずれもプログラムメモリ１１Ｂに格納されたプログラムを、上記ハードウェアプロセッサ１１Ａに実行させることにより実現される。
【００５７】
上記カメラ１から時系列で出力された画像信号はカメラＩ／Ｆ１３で受信され、フレームごとにデジタル信号からなる画像データに変換される。画像取得制御部１１１は、上記カメラＩ／Ｆ１３から、上記画像データをフレームごとに取り込んでデータメモリ１２の画像記憶部１２１に保存する処理を行う。
【００５８】
顔領域検出部１１２は、上記画像記憶部１２１から画像データをフレームごとに読み出す。そして、テンプレート記憶部１２２に記憶されている顔の基準テンプレートを用いて、上記読み出した画像データから、ドライバの顔が映っている画像領域を検出する。例えば、顔領域検出部１１２は、画像データに対し顔の基準テンプレートを予め設定した複数の画素間隔（例えば８画素）でステップ的に移動させ、この移動ごとに上記基準テンプレートと画像データとの輝度の相関値を算出する。そして、算出された相関値を予め設定されている閾値と比較し、算出された相関値が閾値以上のステップ位置に対応する画像領域を、ドライバの顔が映っている顔領域として、矩形枠により抽出する処理を行う。矩形枠のサイズは、撮像画像に写るドライバの顔のサイズに応じて予め設定されている。
【００５９】
なお、上記顔の基準テンプレート画像としては、例えば、顔全体の輪郭に対応した基準テンプレートや、一般的な顔の各器官（目、鼻、口、頬骨等）に基づくテンプレートを用いることができる。また、テンプレートマッチングによる顔検出方法としては、例えば、クロマキー処理によって頭部などの頂点を検出しこの頂点に基づいて顔を検出する方法や、肌の色に近い領域を検出してその領域を顔として検出する方法等も用いることができる。さらに顔領域検出部１１２は、ニューラルネットワークを使って教師信号による学習を行い、顔らしい領域を顔として検出するように構成されてもよい。また、顔領域検出部１１２による顔画像領域の検出処理は、その他、既存のどのような技術を適用することによって実現されてもよい。
【００６０】
探索部１１３は、位置検出部１１３１と、顔向き検出部１１３２と、視線検出部１１３３とを有する。
位置検出部１１３１は、例えば、上記顔領域検出部１１２により検出された顔画像領域から、テンプレート記憶部１２２に記憶された三次元顔形状モデルを用いて、目、鼻、口、頬骨等の顔の各器官に対応して設定された複数の特徴点を探索し、その位置座標を推定する。三次元顔形状モデルは、先に適用例等でも述べたように、ドライバの顔の複数の向きに対応して複数用意される。例えば、顔の正面方向、斜め右方向、斜め左方向、斜め上方向、斜め下方向等の代表的な顔の向きに対応するモデルが用意される。なお、顔向きをヨー方向とピッチ方向の２つの軸方向にそれぞれ一定の角度おきに定義し、これらの各軸の全ての角度の組み合わせに対応する三次元顔形状モデルを用意するようにしてもよい。三次元顔形状モデルは、例えばドライバの実際の顔に応じて学習処理により生成されるのがよいが、一般的な顔画像から取得される平均的な初期パラメータが設定されたモデルであってもよい。
【００６１】
顔向き検出部１１３２は、例えば、上記特徴点の探索により正解値に対する誤差が最も小さくなるときの各特徴点の位置座標と、当該位置座標の検出に使用した三次元顔形状モデルに基づいてドライバの顔の向きを推定する。視線検出部１１３３は、例えば、上記位置検出部１１３１により推定される複数の特徴点の位置のうち、眼球の輝点の三次元位置と瞳孔の二次元位置とに基づいて、ドライバの視線の方向を算出する。
【００６２】
信頼度検出部１１５は、上記探索部１１３により推定された特徴点の位置の信頼度αを算出する。信頼度の検出方法としては、例えば、予め記憶された顔画像の特徴と、探索部１１３により検出された顔画像領域の特徴とを比較して、検出した顔領域の画像が被写体の画像である確率を求め、この確率から信頼度を算出する方法が用いられる。
【００６３】
探索制御部１１６は、上記信頼度検出部１１５により検出された信頼度αと、上記位置検出部１１３１により推定された特徴点の位置座標と、上記顔向き検出部１１３２により推定された顔の向きと、上記視線検出部１１３３により推定された視線の方向とに基づいて、以下のような探索制御を実行する。
【００６４】
(1) 画像データの現フレームにおいて、上記探索部１１３による推定結果の信頼度αが予め設定された閾値を超えた場合に、トラッキングフラグをオンに設定し、かつ上記フレームにおいて検出された顔画像領域の座標をトラッキング情報記憶部７に保存する。つまり、トラッキングモードを設定する。そして、上記保存された顔画像領域の位置座標を、画像データの後続フレームにおいて顔画像領域を検出する際の基準位置として使用するように顔領域検出部１１２に対し指示を与える。
【００６５】
(2) 上記トラッキングモードが設定されている状態で、
(a) 前フレームの推定結果に対する現フレームで検出された顔の特徴点座標の変化量が、所定の範囲内であるか否か、
(b) 前フレームの推定結果に対する現フレームで検出された顔の向きの変化量が、所定の角度の範囲内であるか否か、
(c) 前フレームの推定結果に対する現フレームで検出された視線方向の変化量が、所定の範囲内であるか否か、
をそれぞれ判定する。
【００６６】
探索制御部１１６は、上記各判定条件(a)〜(c) の全てを満たすと判定すると、トラッキングモードを維持する。すなわち、トラッキングフラグをオンのまま維持し、かつ上記トラッキング情報記憶部７に保存されている顔画像領域の座標も保持し続ける。そして、顔領域検出部１１２に対し上記保存された顔画像領域の座標を引き続き提供し、これにより当該顔画像領域の座標を後続フレームにおいて上記顔領域を検出するための基準位置として使用できるようにする。
【００６７】
(3) これに対し、上記前フレームにおける推定結果に対する現フレームにおける推定結果の変化量が、上記３種類の判定条件(a)〜(c) のいずれか１つでも満たさない場合には、探索制御部６はトラッキングフラグをオフにリセットすると共に、上記トラッキング情報記憶部７に保存されている顔画像領域の座標を消去する。すなわち、トラッキングモードを解除する。そして、顔領域検出部１１２に対し、後続フレームにおいては、新たにトラッキングモードが設定されるまで、顔画像領域の検出処理を画像フレームの全領域を対象として初期状態からやり直すように制御する。
【００６８】
出力制御部１１７は、上記探索部１１３により得られた、顔画像領域における各特徴点の三次元位置座標、顔の向きを表す情報、および視線の方向を表す情報を、検出結果記憶部１２３から読み出して、外部Ｉ／Ｆ１４から外部装置に向け送信する。送信対象となる外部装置としては、例えば脇見警報装置や自動運転制御装置などが考えられる。
（動作例）
次に、以上のように構成された画像解析装置２の動作例を説明する。
なお、この例では、撮像された画像データから顔が含まれる画像領域を検出する処理に使用する顔の基準テンプレートが、予めテンプレート記憶部１２２に記憶されているものとして説明を行う。
【００６９】
（１）学習処理
先ず、画像解析装置２を動作させるために必要となる学習処理について説明する。
【００７０】
学習処理は、画像解析装置２によって画像データから特徴点の位置を検出するために予め実施しておく必要がある。
【００７１】
学習処理は、画像解析装置２に事前にインストールされた学習処理プログラム（図示省略）により実行される。なお、学習処理を、画像解析装置２以外の、例えばネットワーク上に設けられたサーバ等の情報処理装置において実行し、その学習結果を画像解析装置２にネットワークを介してダウンロードし、テンプレート記憶部１２２に格納するようにしてもよい。
【００７２】
学習処理は、例えば、三次元顔形状モデルの取得処理、三次元顔形状モデルの画像平面への射影処理、特徴量サンプリング処理、および誤差検出行列の取得処理により構成される。
【００７３】
学習処理では、複数の学習用顔画像（以下、学習処理の説明において「顔画像」と呼ぶ）と、各顔画像における特徴点の三次元座標が用意される。特徴点は、例えば、レーザスキャナやステレオカメラなどの技術によって取得することができるが、その他どのような技術を用いてもよい。この特徴点抽出処理は、学習処理の精度を高めるためにも、人間の顔を対象として実施されることが望ましい。
【００７４】
図１２は顔の検出対象の特徴点の位置を二次元平面で例示した図、図１３は上記特徴点を三次元座標として示した図である。図１２および図１３の例では、目の両端（目頭と目尻）および中心、左右のほお骨部分（眼窩底部分）、鼻の頂点と左右の端点、左右の口角、口の中心、鼻の左右端点と左右の口角との中間点が、特徴点としてそれぞれ設定された場合を示している。
【００７５】
図４は、画像解析装置２により実行される学習処理の処理手順と処理内容の一例を示すフローチャートである。
（１−１）三次元顔形状モデルの取得
画像解析装置２は、先ずステップＳ０１により変数ｉを定義し、これに１を代入する。次にステップＳ０２において、予め特徴点の三次元位置が取得されている学習用の顔画像のうち、ｉ番目のフレームの顔画像（Ｉmg_i）を画像記憶部１２１から読み込む。ここでは、ｉに１が代入されているため１番目のフレームの顔画像（Ｉmg_1）が読み込まれる。続いてステップＳ０３により、顔画像Ｉmg_iの特徴点の正解座標の集合を読み出し、正解モデルパラメータｋoptを取得して三次元顔形状モデルの正解モデルを作成する。次に画像解析装置２は、ステップＳ０４により、正解モデルパラメータｋoptに基づいてずれ配置モデルパラメータｋdifを作成し、ずれ配置モデルを作成する。このずれ配置モデルの作成は乱数を発生させて所定の範囲内で正解モデルからずらすことが好ましい。
【００７６】
以上の処理を具体的に説明する。先ず、各特徴点ｐｉの座標を、ｐｉ（ｘｉ，ｙｉ，ｚｉ）とする。このとき、ｉは、１からｎ（ｎは特徴点の数を示す）の値を示す。次に、各顔画像についての特徴点配置ベクトルＸを［数１］のように定義する。ある顔画像ｊについての特徴点配置ベクトルは、Ｘｊと記す。なお、Ｘの次元数は３ｎである。
【００７７】
【数１】
2019185557.tif 000003
【００７８】
この発明の一実施形態で使用される三次元顔形状モデルは、例えば図１２および図１３に例示したように目、鼻、口、頬骨に関する多数の特徴点を探索するために使用されるため、特徴点配置ベクトルＸの次元数Ｘは上記多数の特徴点の数に対応するものとなる。
【００７９】
次に画像解析装置２は、取得された全ての特徴点配置ベクトルＸを、適当な基準に基づき正規化する。このときの正規化の基準は、設計者によって適宜決定されてよい。
以下、正規化の具体例について説明する。例えば、ある顔画像ｊについての特徴点配置ベクトルＸｊについて、点ｐ１〜ｐｎの重心座標をｐＧとするとき、重心ｐＧを原点とする座標系に各点を移動させた後、［数２］によって定義されるＬｍを用いて、その大きさを正規化することができる。具体的には、Ｌｍによって移動後の座標値を割ることにより、大きさを正規化することができる。ここで、Ｌｍは、重心から各点までの直線距離の平均値である。
【００８０】
【数２】
2019185557.tif 000004
【００８１】
また、回転に対しては、例えば両目の中心を結ぶ直線が一定方向を向くように特徴点座標に対して回転変換を行うことにより、正規化することができる。以上の処理は、回転、拡大・縮小の組み合わせで表現できるため、正規化後の特徴点配置ベクトルｘは［数３］のように表すことができる（相似変換）。
【００８２】
【数３】
2019185557.tif 000005
【００８３】
次に画像解析装置２は、上記正規化特徴点配置ベクトルの集合に対し、主成分分析を行う。主成分分析は例えば以下のように行うことができる。先ず［数４］に示される式に従って、平均ベクトル（平均ベクトルはｘの上部に水平線を記すことにより示される）を取得する。なお、数４において、Ｎは、顔画像の数、即ち特徴点配置ベクトルの数を示す。
【００８４】
【数４】
2019185557.tif 000006
【００８５】
そして、［数５］に示されるように、全ての正規化特徴点配置ベクトルから平均ベクトルを差し引くことにより、差分ベクトルｘ’を取得する。画像ｊについての差分ベクトルは、ｘ’ｊと示される。
【００８６】
【数５】
2019185557.tif 000007
【００８７】
上記した主成分分析の結果、固有ベクトルと固有値との組が３ｎ個得られる。任意の正規化特徴点配置ベクトルは、［数６］に示される式によって表すことができる。
【００８８】
【数６】
2019185557.tif 000008
【００８９】
ここで、Ｐは固有ベクトル行列を示し、ｂは形状パラメータベクトルを示す。それぞれの値は［数７］に示される通りである。なお、ｅｉは、固有ベクトルを示す。
【００９０】
【数７】
2019185557.tif 000009
【００９１】
実際には、固有値の大きい上位ｋ次元までの値を用いることにより、任意の正規化特徴点配置ベクトルｘは［数８］のように近似して表すことができる。以下、固有値の大きい順に、ｅｉを第ｉ主成分と呼ぶ。
【００９２】
【数８】
2019185557.tif 000010
【００９３】
なお、実際の顔画像に顔形状モデルを当てはめる（フィッティングさせる）際には、正規化特徴点配置ベクトルｘに対して相似変換（平行移動，回転）を行う。相似変換のパラメータをｓｘ，ｓｙ，ｓｚ，ｓθ，ｓφ，ｓψとすると、形状パラメータとあわせて、モデルパラメータｋを［数９］のように表すことができる。
【００９４】
【数９】
2019185557.tif 000011
【００９５】
このモデルパラメータｋによって表される三次元顔形状モデルが、ある顔画像上の特徴点位置にほぼ正確に一致する場合に、そのパラメータをその顔画像における三次元正解モデルパラメータと呼ぶ。正確に一致しているか否かは、設計者により設定される閾値や基準に基づいて判断される。
【００９６】
（１−２）射影処理
画像解析装置２は、次にステップＳ０５において、ずれ配置モデルを学習画像上に射影する。
三次元顔形状モデルは、二次元平面に射影することにより二次元画像上での処理が可能になる。三次元形状を二次元平面に射影する方法としては、平行投影法、透視投影法などの各種の手法が存在する。ここでは、透視投影法のうち単点透視投影を例に説明する。尤も、他のどのような手法を使用しても同様の効果を得ることができる。ｚ＝０平面への単点透視投影行列は、［数１０］に示す通りである。
【００９７】
【数１０】
2019185557.tif 000012
【００９８】
ここで、ｒ＝−１／ｚであり、ｚｃはｚ軸上の投影中心を表す。これにより、三次元座標［ｘ，ｙ，ｚ］は［数１１］に示すように変換され、ｚ＝０平面上の座標系で［数１２］のように表される。
【００９９】
【数１１】
2019185557.tif 000013
【０１００】
【数１２】
2019185557.tif 000014
【０１０１】
以上の処理により、三次元顔形状モデルは二次元平面に射影される。
【０１０２】
（１−３）特徴量サンプリング
画像解析装置２は、次にステップＳ０６において、上記ずれ配置モデルが射影された二次元顔形状モデルに基づいてレティナ構造を用いたサンプリングを実行し、サンプリング特徴量ｆ_iを取得する。
【０１０３】
特徴量のサンプリングは、画像上に射影された顔形状モデルに対し可変レティナ構造を組み合わせることによって行われる。レティナ構造とは、ある着目したい特徴点（ノード）の周囲に放射状に離散的に配置されたサンプリング点の構造のことである。レティナ構造によるサンプリングを実施することにより、特徴点周りの情報を、低次元で効率的にサンプリングすることが可能となる。この学習処理では、三次元顔形状モデルから二次元平面に射影された顔形状モデル（以下、二次元顔形状モデルという）の各ノードの射影点（各点ｐ）において、レティナ構造によるサンプリングが実施される。なお、レティナ構造によるサンプリングとは、レティナ構造に従って定められたサンプリング点においてサンプリングを実施することを云う。
【０１０４】
レティナ構造は、ｉ番目のサンプリング点の座標をｑｉ（ｘｉ，ｙｉ）とすると、［数１３］のように表すことができる。
【０１０５】
【数１３】
2019185557.tif 000015
【０１０６】
従って、例えばある点ｐ（ｘｐ，ｙｐ）について、レティナ構造によるサンプリングを行うことにより得られるレティナ特徴量ｆｐは、［数１４］のように表すことができる。
【０１０７】
【数１４】
2019185557.tif 000016
【０１０８】
但し、ｆ（ｐ）は、点ｐ（サンプリング点ｐ）での特徴量を示す。また、レティナ構造における各サンプリング点の特徴量は、例えば、画像の輝度、Sovelフィルタ特徴量、Harr Wavelet特徴量、Gabor Wavelet特徴量、これらを複合した値として求められる。詳細探索を行う場合のように、特徴量が多次元の場合、レティナ特徴量は［数１５］のように表すことができる。
【０１０９】
【数１５】
2019185557.tif 000017
【０１１０】
ここで、Ｄは特徴量の次元数、ｆｄ（ｐ）は、点ｐでの第ｄ次元の特徴量を表す。また、ｑｉ（ｄ）は第ｄ次元に対するレティナ構造の、ｉ番目のサンプリング座標を示す。
【０１１１】
なお、レティナ構造は、顔形状モデルのスケールに応じてその大きさを変化させることができる。例えば、平行移動パラメータｓｚに反比例させて、レティナ構造の大きさを変化させることができる。このとき、レティナ構造ｒは［数１６］のように表すことができる。なお、ここで云うαは適当な固定値であり、探索結果の信頼度α(n) とは別の値である。またレティナ構造は、顔形状モデルにおける他のパラメータに応じて回転や形状変化させてもよい。またレティナ構造は、顔形状モデルの各ノードによってその形状（構造）が異なるように設定されてもよい。またレティナ構造は中心点一点のみの構造であってもよい。すなわち、特徴点（ノード）のみをサンプリング点とする構造もレティナ構造に含まれる。
【０１１２】
【数１６】
2019185557.tif 000018
【０１１３】
あるモデルパラメータによって定まる三次元顔形状モデルにおいて、射影平面上に射影された各ノードの射影点ごとに上記のサンプリングを行って得られたレティナ特徴量を一列に並べたベクトルを、その三次元顔形状モデルにおけるサンプリング特徴量ｆと呼ぶ。サンプリング特徴量ｆは［数１７］のように表すことができる。［数１７］において、ｎは顔形状モデルにおけるノードの数を示す。
【０１１４】
【数１７】
2019185557.tif 000019
【０１１５】
なお、サンプリング時には、各ノードに対し正規化が行われる。例えば、特徴量が０から１の範囲に収まるようにスケール変換を行うことにより正規化が行われる。また、一定の平均や分散をとるように変換を行うことによって正規化を行ってもよい。なお、特徴量によっては正規化を行わなくても良い場合がある。
【０１１６】
（１−４）誤差検出行列の取得
画像解析装置２は、次にステップＳ０７において、正解モデルパラメータｋoptと、ずれ配置モデルパラメータｋdifとに基づいて、形状モデルの誤差（ずれ）ｄp_iを取得する。ここで、全ての学習用の顔画像について処理が完了したか否かを、ステップＳ０８で判定する。この判定は、例えば、ｉの値と学習用の顔画像の数とを比較することにより判断することができる。未処理の顔画像がある場合、画像解析装置２はステップＳ０９でｉの値をインクリメントし、インクリメントされた新たなｉの値に基づいてステップＳ０２以降の処理を実行する。
【０１１７】
一方、全ての顔画像について処理が完了したと判定した場合、画像解析装置２はステップＳ１０において、各顔画像について得られたサンプリング特徴量ｆ_iと三次元顔形状モデルとの誤差ｄｐ_iの集合について、正準相関分析（Canonical Correlation Analysis）を実行する。そして、予め定められた閾値よりも小さい固定値に対応する不要な相関行列をステップＳ１１で削除し、ステップＳ１２において最終的な誤差検出行列を得る。
【０１１８】
誤差検出行列の取得は、正準相関分析を用いることにより実施される。正準相関分析は、二つの次元の異なる変量間の相関関係を求める手法の一つである。正準相関分析により、顔形状モデルの各ノードが誤った位置（検出すべき特徴点と異なる位置）に配置されてしまった場合に、どの方向に修正すべきかを表す相関関係についての学習結果を得ることができる。
【０１１９】
画像解析装置２は、先ず学習用の顔画像の特徴点の三次元位置情報から三次元顔形状モデルを作成する。または、学習用の顔画像の二次元正解座標点から三次元顔形状モデルを作成する。そして、三次元顔形状モデルから正解モデルパラメータを作成する。この正解モデルパラメータを、乱数などにより一定範囲内でずらすことにより、少なくともいずれかのノードが特徴点の三次元位置からずれているずれ配置モデルを作成する。そして、ずれ配置モデルに基づいて取得したサンプリング特徴量と、ずれ配置モデルと正解モデルとの差とを組として、相関関係についての学習結果を取得する。以下、その具体的な処理を説明する。
【０１２０】
画像解析装置２は、先ず二組の変量ベクトルｘとｙを［数１８］のように定義する。ｘは、ずれ配置モデルに対するサンプリング特徴量を示す。ｙは、正解モデルパラメータ（ｋopt）とずれ配置モデルパラメータ（ずれ配置モデルを示すパラメータ：ｋdif）との差を示す。
【０１２１】
【数１８】
2019185557.tif 000020
【０１２２】
二組の変量ベクトルは、予め次元ごとに平均“０”、分散“１”に正規化される。正規化に用いたパラメータ（各次元の平均、分散）は、後述する特徴点の検出処理において必要となる。以下、それぞれをｘave，ｘvar，ｙave，ｙvarとし、正規化パラメータと呼ぶ。
【０１２３】
次に、二つの変量に対する線形変換を［数１９］のように定義した場合、ｕ，ｖ間の相関を最大にするようなａ，ｂを求める。
【０１２４】
【数１９】
2019185557.tif 000021
【０１２５】
上記ａとｂとは、ｘ，ｙの同時分布を考え、その分散共分散行列Σを［数２０］のように定義した場合に、［数２１］に示す一般固有値問題を解いたときの最大固有値に対する固有ベクトルとして得られる。
【０１２６】
【数２０】
2019185557.tif 000022
【０１２７】
【数２１】
2019185557.tif 000023
【０１２８】
これらのうち、次元の低い方の固有値問題を先に解く。例えば、１番目の式を解いて得られる最大固有値がλ１、対応する固有ベクトルがａ１であった場合、ベクトルｂ１は、［数２２］に表される式によって得られる。
【０１２９】
【数２２】
2019185557.tif 000024
【０１３０】
このようにして求められたλ１を第１正準相関係数と呼ぶ。また、［数２３］によって表されるｕ１，ｖ１を第１正準変量と呼ぶ。
【０１３１】
【数２３】
2019185557.tif 000025
【０１３２】
以下、２番目に大きい固有値に対応する第２正準変量、３番目に大きい固有値に対応する第３正準変量というように、固有値の大きさに基づいて正準変量を順に求めていく。なお、後述する特徴点の検出処理に用いるベクトルは、固有値がある一定以上の値（閾値）を有する第Ｍ正準変量までのベクトルとする。このときの閾値は、設計者によって適宜決定されてよい。以下、第Ｍ正準変量までの変換ベクトル行列を、Ａ′，Ｂ′とし、誤差検出行列と呼ぶ。Ａ’，Ｂ’は、［数２４］のように表すことができる。
【０１３３】
【数２４】
2019185557.tif 000026
【０１３４】
Ｂ′は、一般に正方行列とはならない。しかし、特徴点の検出処理において逆行列が必要となるため、Ｂ′に対し擬似的に０ベクトルを追加し、正方行列Ｂ″とする。正方行列Ｂ″は［数２５］のように表すことができる。
【０１３５】
【数２５】
2019185557.tif 000027
【０１３６】
なお、誤差検出行列を求めることは、線形回帰、線形重回帰、または非線形重回帰等の分析手法を用いることによっても可能である。しかし、正準相関分析を用いることにより、小さな固有値に対応する変量の影響を無視することが可能となる。従って、誤差検出に影響しない要素の影響を排除することが可能となり、より安定した誤差検出が可能となる。よって、係る効果を必要としないのであれば、正準相関分析ではなく上記した他の分析手法を用いて誤差検出行列の取得を実施することも可能である。また、誤差検出行列は、ＳＶＭ（Support Vector Machine）などの手法によって取得することも可能である。
【０１３７】
以上述べた学習処理では、各学習用顔画像に対してずれ配置モデルが１つしか作成されないが、複数個のずれ配置モデルが作成されてもよい。これは、学習用の画像に対して上記ステップＳ０３〜ステップＳ０７の処理を複数回（例えば１０〜１００回）繰り返すことにより実現される。なお、以上述べた学習処理は、特許第４０９３２７３号公報に詳しく記載されている。
【０１３８】
（２）ドライバの顔状態の検出
上記学習処理が終了すると、画像解析装置２は、顔の基準テンプレートと、上記学習処理により得られた三次元顔形状モデルとを用いて、ドライバの顔状態を検出するための処理を以下のように実行する。この例では、顔状態として、顔の各器官に対応して設定された複数の特徴点の位置と、顔の向きと、視線の方向がそれぞれ検出される。
【０１３９】
図５および図６は、上記顔の状態を検出する際に制御ユニット１１において実行される処理の手順と処理内容の一例を示すフローチャートである。
【０１４０】
（２−１）ドライバの顔を含む画像データの取得
例えば、運転中のドライバの姿はカメラ１により正面から撮像され、これにより得られた画像信号はカメラ１から画像解析装置２へ送られる。画像解析装置２は、上記画像信号をカメラＩ／Ｆ１３により受信し、フレームごとにデジタル信号からなる画像データに変換する。
【０１４１】
画像解析装置２は、画像取得制御部１１１の制御の下、上記画像データをフレームごとに取り込み、データメモリ１２の画像記憶部１２１に順次記憶させる。なお、画像記憶部１２１に記憶する画像データのフレーム周期は任意に設定可能である。
【０１４２】
（２−２）顔の検出（未トラッキング時）
（２−２−１）顔領域の検出
画像解析装置２は、次に顔領域検出部１１２の制御の下、ステップＳ２０でフレーム番号ｎを１にセットした後、ステップＳ２１により上記画像記憶部１２１から画像データの第１フレームを読み込む。そして、顔領域検出部１１２の制御の下、ステップＳ２２において、先ずテンプレート記憶部１２２に予め記憶されている顔の基準テンプレートを用いて、上記読み込んだ画像データからドライバの顔が映っている画像領域を検出し、当該顔画像領域を矩形枠を用いて抽出する。
図９は、この顔領域検出処理により抽出された顔画像領域の一例を示すもので、ＦＣはドライバの顔を示している。
【０１４３】
（２−２−２）探索処理
画像解析装置２は、次に探索部１１３の制御の下、ステップＳ２２において、上記顔領域検出部１１２により矩形枠により抽出された顔画像領域から、先の学習処理により作成された三次元顔形状モデルを用いて、検出対象となる顔の器官、例えば目、鼻、口、頬骨に対し設定された複数の特徴点の位置を推定する。
【０１４４】
以下、三次元顔形状モデルを用いた特徴点の位置の推定処理の一例を説明する。図８はその処理手順と処理内容の一例を示すフローチャートである。
探索部１１３は、先ずステップＳ６０において、上記データメモリ１２の画像記憶部１２１から、上記顔領域検出部１１２の制御の下で、矩形枠により抽出された顔画像領域の座標を読み込む。続いてステップＳ６１において、上記顔画像領域の初期位置に対し、初期パラメータｋinitに基づいた三次元顔形状モデルを配置する。そして、ステップＳ６２により、変数ｉを定義してこれに“１”を代入すると共に、ｋｉを定義してこれに初期パラメータｋinitを代入する。
【０１４５】
例えば、探索部１１３は、上記矩形枠により抽出された顔画像領域から初めて特徴量を取得する場合には、先ず三次元顔形状モデルにおける各特徴点の三次元位置を決定し、この三次元顔形状モデルのパラメータ（初期パラメータ）ｋinitを取得する。この三次元顔形状モデルは、例えば、矩形枠の任意の頂点（例えば左上の角）から所定の位置に、三次元顔形状モデルに設定された目、鼻、口、頬骨等の器官（ノード）に対し限定された少数の特徴点が配置されるような形状となるように設定されている。なお、三次元顔形状モデルは、当該モデルの中心と矩形枠により抽出された顔画像領域の中心とが一致するような形状であってもよい。
【０１４６】
初期パラメータｋinitとは、［数９］によって表されるモデルパラメータｋのうち、初期値によって表されるモデルパラメータをいう。初期パラメータｋinitには、適当な値が設定されてもよい。但し、一般的な顔画像から得られる平均的な値を初期パラメータｋinitに設定することにより、様々な顔の向きや表情変化などに対応することが可能となる。従って、例えば、相似変換のパラメータｓｘ，ｓｙ，ｓｚ，ｓθ，ｓφ，ｓψについては、学習処理の際に用いた顔画像の正解モデルパラメータの平均値を用いてもよい。また、例えば、形状パラメータｂについては、ゼロとしてもよい。また、顔領域検出部１１２によって顔の向きの情報が得られる場合には、この情報を用いて初期パラメータを設定してもよい。その他、設計者が経験的に得た他の値をもって初期パラメータとしてもよい。
【０１４７】
次に探索部１１３は、ステップＳ６３において、ｋｉで表される三次元顔形状モデルを処理対象の上記顔画像領域上に射影する。そして、ステップＳ６４において、上記射影された顔形状モデルを用いて、レティナ構造に基づいたサンプリングを実行し、サンプリング特徴量ｆを取得する。続いてステップＳ６５において、上記サンプリング特徴量ｆを使用して誤差検出処理を実行する。なお、特徴量をサンプリングする際には、必ずしもレティナ構造を使用しなくてもよい。
【０１４８】
一方、探索部１１３は、顔領域検出部１１２によって抽出された顔画像領域についてサンプリング特徴量を取得するのが二度目以降の場合には、誤差検出処理によって得られた新たなモデルパラメータｋ（すなわち、正解モデルパラメータの検出値ｋｉ＋１）によって表される顔形状モデルについて、サンプリング特徴量ｆを取得する。そして、この場合も、ステップＳ６５において、上記得られたサンプリング特徴量ｆを使用して誤差検出処理を実行する。
【０１４９】
誤差検出処理では、上記取得されたサンプリング特徴量ｆ、およびテンプレート記憶部１２２に記憶されている誤差検出行列や正規化パラメータなどに基づいて、三次元顔形状モデルｋｉと正解モデルパラメータとの検出誤差ｋerrが算出される。また、この検出誤差ｋerrに基づいて、ステップＳ６６により正解モデルパラメータの検出値ｋｉ＋１が算出される。さらに、ステップＳ６７において、Δｋをｋｉ＋１とｋｉとの差として算出され、ステップＳ６８によりΔｋの二乗としてＥが算出される。
【０１５０】
また誤差検出処理では、探索処理の終了判定が行われる。誤差量を検出する処理が実行され、これにより新たなモデルパラメータｋが取得される。以下、誤差検出処理の具体的な処理例について説明する。
【０１５１】
先ず、正規化パラメータ（ｘave，ｘvar）を用いて、上記取得されたサンプリング特徴量ｆが正規化され、正準相関分析を行うためのベクトルｘが求められる。そして、［数２６］に示される式に基づいて第１〜第Ｍ正準変量が算出され、これにより変量ｕが取得される。
【０１５２】
【数２６】
2019185557.tif 000028
【０１５３】
次に、［数２７］に示される式を用いて、正規化誤差検出量ｙが算出される。なお、［数２７］において、Ｂ′が正方行列でない場合には、Ｂ′Ｔ−１はＢ′の擬似逆行列である。
【０１５４】
【数２７】
2019185557.tif 000029
【０１５５】
続いて、上記算出された正規化誤差検出量ｙに対し、正規化パラメータ（ｙave，ｙvar）を用いて復元処理が行われ、これにより誤差検出量ｋerrが取得される。誤差検出量ｋerrは、現在の顔形状モデルパラメータｋｉから正解モデルパラメータｋoptまでの誤差検出量である。
【０１５６】
従って、正解モデルパラメータの検出値ｋｉ＋１は、現在のモデルパラメータｋｉに誤差検出量ｋerrを加算することにより取得できる。但し、ｋerrは誤差を含んでいる可能性がある。このため、より安定した検出を行うために、［数２８］に表される式によって正解モデルパラメータの検出値ｋｉ＋１を取得する。［数２８］において、σは適当な固定値であり、設計者によって適宜決定されてよい。また、σは、例えばｉの変化に従って変化してもよい。
【０１５７】
【数２８】
2019185557.tif 000030
【０１５８】
誤差検出処理では、上記の特徴量のサンプリング処理と、誤差検出処理とを繰り返し正解モデルパラメータの検出値ｋｉを正解パラメータに近づけていくことが好ましい。このような繰り返し処理を行う場合には、検出値ｋｉが得られる度に終了判定が行われる。
【０１５９】
終了判定では、ステップＳ６９において、先ず取得されたｋｉ＋１の値が正常範囲内であるか否かが判定される。この判定の結果、ｋｉ＋１の値が正常範囲内でなければ、画像解析装置２は探索処理を終了する。
【０１６０】
これに対し、上記ステップＳ６９による判定の結果、ｋｉ＋１の値が正常範囲内だったとする。この場合は、ステップＳ７０において、上記ステップＳ６８により算出されたＥの値が閾値εを超えているか否かが判定される。そして、Ｅが閾値εを超えていない場合には、処理が収束したものと判断され、ステップＳ７３によりｋest が出力される。このｋest の出力後、画像解析装置２は画像データの第１フレームに基づいた顔状態の検出処理を終了する。
【０１６１】
一方、Ｅが閾値εを超えている場合には、ステップＳ７１により上記ｋｉ＋１の値に基づいて新たな三次元顔形状モデルを作成する処理が行われる。この後、ステップＳ７２においてｉの値がインクリメントされ、ステップＳ６３に戻る。そして、次のフレームの画像データを処理対象画像とし、新たな三次元顔形状モデルに基づいてステップＳ６３以降の一連の処理が繰り返し実行される。
【０１６２】
なお、例えばｉの値が閾値を超えた場合には、処理が終了する。また、例えば［数２９］によって表されるΔｋの値が閾値以下になった場合にも、処理を終了するようにしてもよい。さらに、誤差検出処理では、取得されたｋｉ＋１の値が正常範囲内であるか否かに基づいて終了判定するようにしてもよい。例えば、取得されたｋｉ＋１の値が、明らかに人の顔の画像における正解位置を示すものでない場合には、処理を終了する。また、取得されたｋｉ＋１によって表されるノードの一部が、処理対象の画像からはみでてしまった場合にも、処理を終了する。
【０１６３】
【数２９】
2019185557.tif 000031
【０１６４】
上記誤差検出処理では、処理を続行すると判定した場合、取得された正解モデルパラメータの検出値ｋｉ＋１が特徴量サンプリング処理に渡される。一方、処理を終了すると判定した場合、その時点で得られている正解モデルパラメータの検出値ｋｉ（またはｋｉ＋１であってもよい）が、ステップＳ７３により最終検出パラメータｋestとして出力される。
【０１６５】
図１０は、上記探索処理により検出された特徴点の一例を示すもので、ＰＴが特徴点の位置を示している。
【０１６６】
なお、以上述べた顔の特徴点の探索処理は、特許第４０９３２７３号公報に詳しく記載されている。
【０１６７】
また、探索部１１３では、上記検出された各特徴点の位置座標と、この位置座標を検出するときに用いた三次元顔形状モデルがどの顔向きに対応して作成されたものかにより、ドライバの顔向きが検出される。
【０１６８】
さらに、探索部１１３では、上記検出された特徴点の位置をもとに顔画像領域中の目の画像が特定され、この目の画像から眼球の角膜反射による輝点と瞳孔がそれぞれ検出される。そして、この検出された眼球の角膜反射による輝点の位置に対する瞳孔の位置座標の位置ずれ量と、カメラ１から眼球の角膜反射による輝点位置までの距離Ｄとから、視線の方向が算出される。
【０１６９】
（２−２−３）探索部１１３により得られた推定結果の信頼度の検出
上記探索処理により顔画像領域から検出対象となる複数の特徴点の位置が検出されると、続いて画像解析装置２は、信頼度検出部１１５の制御の下、ステップＳ２３において、上記探索部１１３により推定された各特徴点の位置に関する信頼度α(n) （ｎはフレーム番号で、ここではｎ＝１）を算出する。この信頼度α(n) は、例えば、予め記憶された顔画像の特徴と、探索部１１３により検出された顔画像領域の特徴とを比較して、検出した顔領域の画像が被写体の画像である確率を求め、この確率から算出することができる。
【０１７０】
（２−２−４）トラッキングモードの設定
次に画像解析装置２は、探索制御部１１６の制御の下、ステップＳ２４においてトラッキング中か否かを判定する。この判定は、トラッキングフラグがオンになっているか否かにより行われる。現在の第１フレームでは、まだトラッキングモードが設定されていないので、探索制御部１１６は図６に示すステップＳ３０に移行する。そして、上記信頼度検出部１１５により算出された信頼度α(n) を閾値と比較する。この閾値は、事前に適当な値に設定される。
【０１７１】
上記比較の結果、信頼度α(n) が閾値を超えていれば、探索制御部１１６は、ドライバの顔画像を確実に検出できたものと判断し、ステップＳ３１に移行してここでトラッキングフラグをオンにすると共に、上記顔領域検出部１１２により検出された顔画像領域の座標をトラッキング情報記憶部１２４に保存する。かくして、トラッキングモードが設定される。
【０１７２】
なお、上記ステップＳ３０による比較の結果、詳細探索結果の信頼度α(n) が閾値以下であれば、第１フレームではドライバの顔を品質良く検出できなかったと判断し、ステップＳ４３において顔画像領域の検出処理を継続する。すなわち、画像解析装置２はステップＳ３１によりフレーム番号ｎをインクリメントした後、図５のステップＳ２０に戻り、後続の第２フレームに対し上記したステップＳ２０〜Ｓ２４および図６に示すステップＳ３０〜Ｓ３２による一連の顔検出処理を実行する。
【０１７３】
（２−３）顔の状態の検出（トラッキングモードの設定中）
（２−３−１）顔領域の検出
トラッキングモードになると、画像解析装置２は次のように顔状態の検出処理を実行する。すなわち、画像解析装置２は、顔領域検出部１１２の制御の下、ステップＳ２２において、画像データの次のフレームからドライバの顔領域を検出する際に、探索制御部１１６から通知されたトラッキング情報に従い、前フレームで検出された顔画像領域の座標を基準位置として、当該領域に含まれる画像を矩形枠により抽出する。なお、この場合、上記基準位置のみから画像を抽出してもよいが、当該基準位置から所定ビット分だけ上下左右方向にシフトされた周辺の複数の領域から、それぞれ画像を抽出するようにしてもよい。
【０１７４】
（２−３−２）探索結果の信頼度の算出
画像解析装置２は、続いて探索部１１３の制御の下、ステップＳ２２において、上記抽出された顔画像領域から、検出対象の顔の特徴点の位置を探索する。ここで行われる探索処理は先に第１フレームに対し行われた探索処理と同じである。そして、画像解析装置２は、信頼度検出部１１５の制御の下、ステップＳ２３において上記探索結果の信頼度α(n) （例えば第２フレームについて顔の検出が行われているとすれば、ｎ＝２）を算出する。
【０１７５】
（２−３−３）トラッキングモードの継続
続いて画像解析装置２は、探索制御部１１６の制御の下、ステップＳ２４において、トラッキングフラグをもとにトラッキングモード設定中か否かを判定する。そして、いまはトラッキングモード設定中なので、探索制御部１１６はステップＳ２５に移行する。ステップＳ２において探索制御部１１６は、前フレームｎ−１の推定結果に対する現フレームｎの推定結果の変化の状況が、予め設定された判定条件を満たしているか否かを判定する。
【０１７６】
すなわち、この例では、前フレームｎ−１の推定結果に対する現フレームｎの推定結果の変化量が、
(a) 顔の特徴点の位置座標の変化量が所定の範囲内であること。
(b) 顔の向きの変化量が所定の角度の範囲内であること。
(c) 視線の方向の変化量が所定の範囲内であること。
をそれぞれ満足するか否かを判定する。
【０１７７】
そして探索制御部１１６は、上記前フレームｎ−１の推定結果に対する現フレームｎの推定結果の変化量が、上記３種類の判定条件(a) 〜(c) の全てを満たすと判定すると、上記推定結果の変化量は許容範囲内と見なし、ステップＳ２６に移行する。ステップＳ２６において探索制御部１１６は、現フレームで検出された顔画像領域の位置座標をトラッキング情報としてトラッキング情報記憶部１２４に保存する。すなわち、トラッキング情報を更新する。そして、後続のフレームに対しトラッキングモード設定中における顔検出処理を継続する。
【０１７８】
従って、探索制御部１１６から顔領域検出部１１２に対し、上記保存された顔画像領域の位置座標が引き続き提供され、顔領域検出部１１２ではこの提供された顔画像領域を後続フレームにおいて上記顔領域を検出するための基準位置として使用する。このため、後続のフレームに対する顔領域の検出処理では、上記トラッキング情報を基準位置として行われる。
【０１７９】
図１０は、このトラッキングモードを継続する場合の一例を示したもので、ドライバの顔ＦＣの一部が手ＨＤにより一時的に隠れた場合を示している。トラッキングモードを継続する場合の他の例としては、例えば顔ＦＣの一部が髪の毛により一時的に隠れた場合や、ドライバの姿勢の変化に応じて顔の一部がトラッキング中の顔画像領域から一時的に外れた場合が挙げられる。
【０１８０】
（２−３−４）トラッキングモードの解除
これに対し、上記ステップＳ２５において、上記前フレームｎ−１の推定結果に対する現フレームｎの推定結果の変化量が、上記３種類の判定条件(a) 〜(c) の全てを満たさないと判定されると、上記推定結果の変化量は許容範囲を超えていると判断される。この場合探索制御部１１６は、ステップＳ２７において、トラッキングフラグをオフにリセットすると共に、トラッキング情報記憶部１２４に記憶されているトラッキング情報を削除する。従って、顔領域検出部１１２は、後続フレームにおいて、トラッキング情報を用いずに初期状態から顔領域を検出する処理を実行する。
【０１８１】
（効果）
以上詳述したように一実施形態では、トラッキングフラグがオンになっている状態で、探索制御部６が、前フレームに対し、現フレームの顔の特徴点の位置座標の変化量が所定の範囲内であるか、顔向きの変化量が所定の角度の範囲内であるか、視線の方向変化量が所定の範囲内であるかをそれぞれ判定する。そして、これらの全ての判定において条件が満たされれば、前フレームに対する現フレームの推定結果の変化は許容範囲内であると見なし、後続フレームにおいても引き続きトラッキング情報記憶部７に保存された顔画像領域に応じて、顔の状態を表す、特徴点の位置、顔向きおよび視線方向の推定結果をそれぞれ推定する処理を行うようにしている。
【０１８２】
従って、例えば、ドライバの顔の一部が手や髪の毛等により一時的に隠れたり、ドライバの体動に伴い顔の一部が顔画像領域の基準位置から一時的に外れた場合にも、トラッキングモードは維持され、後続フレームにおいては引き続きトラッキング情報記憶部７に保存された顔画像領域の座標を基準位置として顔画像の検出処理が行われる。このため、顔の特徴点の検出処理の安定度を高めることができる。
【０１８３】
［変形例］
（１）一実施形態では、前フレームの推定結果に対する現フレームの推定結果の変化が、
(a) 顔の特徴点の座標の変化量が所定の範囲内であること。
(b) 顔の向きの変化量が所定の角度の範囲内であること。
(c) 視線の方向の変化量が所定の範囲内であること。
の全てを満たす場合に、フレームにおける推定結果の信頼度の低下は許容範囲内と見なし、トラッキングモードを維持するようにしている。
【０１８４】
しかし、これに限るものではなく、上記(a) 、(b) 、(c) の判定条件のうち、何れか１つまたは２つを満足している場合に、トラッキングモードを維持するようにしてもよい。
またこの場合、満足する判定条件に対応する推定結果のみを有効として外部装置へ出力可能とし、それ以外の推定結果は無効として外部装置へ出力しないようにしてもよい。
【０１８５】
（２）一実施形態では、一旦トラッキングモードに移行すると、以後顔の推定結果の信頼度が大幅に変化しない限りトラッキングモードが維持される。しかし、装置が、例えばポスタの顔画像やシートの模様等の静止模様を誤って検出してしまうと、以後半永久的にトラッキングモードが解除されなくなる心配がある。そこで、例えばトラッキングモードに移行してから一定のフレーム数に相当する時間が経過してもトラッキングモードが継続されている場合には、上記時間経過後にトラッキングモードを強制的に解除する。このようにすると、誤った対象物にトラッキングされても、この誤ったトラッキングモードから確実に離脱することができる。
【０１８６】
（３）一実施形態では、入力された画像データから、ドライバの顔における複数の器官に係る複数の特徴点の位置を推定する場合を例にとって説明した。しかし、それに限らず、検出対象物は形状モデルを設定できるものであればどのような対象物であってもよい。例えば、検出対象物としては、人の全身像や、レントゲン画像またはＣＴ（Computed Tomography）等の断層像撮像装置により得られた臓器画像等であってもよい。言い換えれば、大きさの個人差がある対象物や基本的な形が変わらずに変形する検出対象物について本技術は適用可能である。また、車両、電気製品、電子機器、回路基板などの工業製品のように変形しない剛体の検出対象物であっても、形状モデルを設定することができるため本技術を適用することができる。
【０１８７】
（４）一実施形態では画像データのフレームごとに顔状態を検出する場合を例にとって説明したが、予め設定された複数フレームおきに顔状態を検出するようにしてもよい。その他、画像解析装置の構成や検出対象物の特徴点の探索処理の手順と処理内容、抽出枠の形状とサイズ等についても、この発明の要旨を逸脱しない範囲で種々変形して実施可能である。
【０１８８】
（５）一実施形態では、顔領域検出部において画像データから顔が存在する画像領域を検出した後、この検出された顔画像領域について探索部により特徴点探索等を行って、特徴点の位置座標の変化、顔向きの変化、および視線方向の変化を検出する場合を例にとって説明した。しかし、これに限らず、顔領域検出部において画像データから顔が存在する画像領域を検出する過程において、例えば三次元顔形状モデル等を用いて顔の特徴点の位置を推定する探索方式を用いる場合には、この顔領域検出過程において検出された特徴点の位置座標のフレーム間変化量を検出するようにしてもよい。そして、この顔領域検出過程において検出された特徴点の位置座標のフレーム間変化量に基づいて、トラッキング状態を維持するか否かを判定し、トラッキング状態を制御するようにしてもよい。
【０１８９】
以上、この発明の実施形態を詳細に説明してきたが、前述までの説明はあらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。つまり、本発明の実施にあたって、実施形態に応じた具体的構成が適宜採用されてもよい。
【０１９０】
要するにこの発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【０１９１】
［付記］
上記各実施形態の一部または全部は、特許請求の範囲のほか以下の付記に示すように記載することも可能であるが、これに限られない。
（付記１）  
ハードウェアプロセッサ（１１Ａ）とメモリ（１１Ｂ）とを有する画像解析装置であって、
前記ハードウェアプロセッサ（１１Ａ）が、前記メモリ（１１Ｂ）に記憶されたプログラムを実行することにより、
時系列的に入力される画像からフレーム単位で検出対象物が含まれる画像領域を検出し（４ａ）、当該検出された画像領域に基づいて前記検出対象物の状態を推定する処理（４ｂ）を行い、
前記推定された前記検出対象物の状態の確からしさを表す信頼度を検出し（５）、
前記検出された信頼度に基づいて前記探索部の処理を制御する（６）
ように構成され、かつ
前記画像の第１フレームにおいて前記検出された信頼度が、予め設定された信頼度条件を満たすか否かを判定し（６）、
前記第１フレームにおいて検出された信頼度が前記信頼度条件を満たすと判定された場合に、前記第１フレームにおいて前記検出された画像領域の位置をメモリ（７）に保存し、前記第１フレームに続く第２フレームにおける前記検出対象物の状態の推定が前記保存された画像領域の位置を基準にして行われるように前記探索部を制御し（６）、
前記第２フレームにおいて前記推定された前記検出対象物の状態の前記第１フレームからの変化が、予め設定された判定条件を満たしているか否かを判定し（６）、
前記検出対象物の状態の前記第１フレームからの変化が前記判定条件を満たしていると判定された場合に、前記第２フレームに続く第３フレームにおける前記検出対象物の状態の推定処理が前記保存された画像領域の位置を基準にして行われるように、前記検出対象物が含まれる画像領域の検出および前記検出対象物の状態の推定を制御し（６）、
前記検出対象物の状態の前記第１フレームからの変化が前記判定条件を満たさないと判定された場合に、前記メモリに保存されている前記画像領域の位置を消去し、前記第２フレームに続く第３フレームにおける前記探索部の処理が前記画像領域の検出処理から行われるように、前記検出対象物が含まれる画像領域の検出および前記検出対象物の状態の推定を制御する（６）
ように構成される、画像解析装置。
【０１９２】
（付記２）  
ハードウェアプロセッサ（１１Ａ）と、当該ハードウェアプロセッサ（１１Ａ）を実行させるプログラムを格納したメモリ（１１Ｂ）とを有する装置が実行する画像解析方法であって、
前記ハードウェアプロセッサ（１１Ａ）が、前記時系列的に入力される画像からフレーム単位で検出対象物が含まれる画像領域を検出し、当該検出された画像領域に基づいて前記検出対象物の状態を推定する処理を行う探索過程と（Ｓ２２）、
前記ハードウェアプロセッサ（１１Ａ）が、前記探索過程により推定された前記検出対象物の状態の確からしさを表す信頼度を検出する信頼度検出過程と（２３）、
前記ハードウェアプロセッサ（１１Ａ）が、前記画像の第１フレームにおいて前記信頼度検出過程により検出された信頼度が、予め設定された信頼度条件を満たすか否かを判定する第１の判定過程（Ｓ２５）と、
前記ハードウェアプロセッサ（１１Ａ）が、前記第１フレームにおいて検出された信頼度が前記信頼度条件を満たすと判定された場合に、前記第１フレームにおいて前記探索過程により検出された画像領域の位置をメモリ（７）に保存し、前記第１フレームに続く第２フレームにおける前記検出対象物の状態の推定が前記保存された画像領域の位置を基準にして行われるように前記探索過程の処理を制御する第１の制御過程と（Ｓ３１）、
前記ハードウェアプロセッサ（１１Ａ）が、前記第２フレームにおいて前記探索過程（Ｓ２２）により推定された前記検出対象物の状態の前記第１フレームからの変化が、予め設定された判定条件を満たしているか否かを判定する第２の判定過程と（Ｓ２５）、
前記ハードウェアプロセッサ（１１Ａ）が、前記検出対象物の状態の前記第１フレームからの変化が前記判定条件を満たしていると判定された場合に、前記第２フレームに続く第３フレームにおける前記検出対象物の状態の推定処理が前記保存された画像領域の位置を基準にして行われるように前記探索過程（Ｓ２２）の処理を制御する第２の制御過程と（Ｓ２６）、
前記ハードウェアプロセッサ（１１Ａ）が、前記検出対象物の状態の前記第１フレームからの変化が前記判定条件を満たさないと判定された場合に、前記メモリ（７）に保存されている前記画像領域の位置を消去し、前記第２フレームに続く第３フレームにおける前記探索過程の処理が前記画像領域の検出処理から行われるように前記探索過程（Ｓ２２）を制御する第３の制御過程と（Ｓ２７）
を具備する画像解析方法。
【符号の説明】
【０１９３】
１…カメラ、２…画像解析装置、３…画像取得部、４…顔検出部、
４ａ…顔領域検出部、４ｂ…探索部、５…信頼度検出部、６…探索制御部、
７…トラッキング情報記憶部、１１…制御ユニット、
１１Ａ…ハードウェアプロセッサ、１１Ｂ…プログラムメモリ、
１２…データメモリ、１３…カメラＩ／Ｆ、１４…外部Ｉ／Ｆ、
１１１…画像取得制御部、１１２…顔領域検出部、１１３…探索部、
１１５…信頼度検出部、１１６…探索制御部、１１７…出力制御部、
１２１…画像記憶部、１２２…テンプレート記憶部、１２３…検出結果記憶部、
１２４…トラッキング情報記憶部、１１３１…位置検出部、
１１３２…顔向き検出部、１１３３…視線検出部。
【図１】
2019185557.tif 000032
【図２】
2019185557.tif 000033
【図３】
2019185557.tif 000034
【図４】
2019185557.tif 000035
【図５】
2019185557.tif 000036
【図６】
2019185557.tif 000037
【図７】
2019185557.tif 000038
【図８】
2019185557.tif 000039
【図９】
2019185557.tif 000040
【図１０】
2019185557.tif 000041
【図１１】
2019185557.tif 000042
【図１２】
2019185557.tif 000043