(57)【要約】【課題】撮影の状況に応じて顔認識に要する時間を短縮する。【解決手段】顔認識装置は、連続する撮影により得られる画像から、顔を表す部分である顔画像を検出する顔画像検出部２２０と、顔画像が真正面顔を表しているか否かを判定する真正面顔判定部２６０と、第１対象者の顔を表す第１対象顔画像に基づく情報を記憶し、顔画像が真正面顔を表していると判定された場合、真正面顔を表していると判定された顔画像である真正面顔画像が第１対象顔画像に類似しているか否かを判定し、顔画像が真正面顔を表していないと判定された場合、顔画像検出部２２０により連続して検出された複数の顔画像が第１対象顔画像に類似しているか否かを判定する判定部２１０と、を備える。【選択図】図１
2014229015.tif 000002
【特許請求の範囲】
【請求項１】
連続する撮影により得られる画像から、顔を表す部分である顔画像を検出する顔画像検出部と、
前記顔画像が真正面顔を表しているか否かを判定する真正面顔判定部と、
第１対象者の顔を表す第１対象顔画像に基づく情報を記憶し、前記顔画像が真正面顔を表していると判定された場合、真正面顔を表していると判定された顔画像である真正面顔画像が前記第１対象顔画像に類似しているか否かを判定し、前記顔画像が真正面顔を表していないと判定された場合、前記顔画像検出部により連続して検出された複数の顔画像が前記第１対象顔画像に類似しているか否かを判定する判定部と、
を備える
顔認識装置。
【請求項２】
前記判定部は、
前記顔画像が前記第１対象顔画像であることの確からしさである第１尤度を算出する第１尤度算出部と、
前記複数の顔画像から夫々算出される複数の第１尤度の平均である平均尤度を算出する平均尤度算出部と、
前記平均尤度が所定の平均尤度閾値を上回るか否かを判定し、前記平均尤度が前記平均尤度閾値を上回ると判定された場合、前記第１対象者の識別子を出力する識別部と、
を含む、
請求項１に記載の顔認識装置。
【請求項３】
前記判定部は、
前記第１対象者の真正面顔を表す第２対象顔画像に基づく情報を記憶し、前記真正面顔画像が前記第２対象顔画像であることの確からしさである第２尤度を算出する第２尤度算出部を
更に含み、
前記識別部は、前記第２尤度が所定の第２尤度閾値を上回るか否かを判定し、前記第２尤度が前記第２尤度閾値を上回ると判定された場合、前記第１対象者の識別子を出力する、
請求項２に記載の顔認識装置。
【請求項４】
前記第１対象者に対して顔の方向の指示を通知する指示部を
更に備え、
前記顔画像検出部は、前記指示に応じて撮影された画像から顔を表す部分を対象顔画像として検出し、
前記真正面顔判定部は、前記対象顔画像が真正面顔を表しているか否かを判定し、
前記第２尤度算出部は、真正面顔を表していると判定された対象顔画像を前記第２対象顔画像として取得する、
請求項３に記載の顔認識装置。
【請求項５】
前記第２尤度算出部は、前記第２対象顔画像の中の複数の領域を複数の対象部分画像として抽出し、前記真正面顔画像の中の前記複数の領域を複数の検出部分画像として抽出し、前記複数の検出部分画像の夫々が対応する対象部分画像であることの確からしさである部分尤度を算出し、全ての部分尤度を重み付け加算することにより前記第２尤度を算出する、
請求項３又は４に記載の顔認識装置。
【請求項６】
前記第１尤度算出部は、第１ニューラルネットワークを含み、
前記第１ニューラルネットワークは、前記第１対象顔画像を用いて学習し、前記複数の顔画像の夫々から第１尤度を算出し、
前記第２尤度算出部は、第２ニューラルネットワークを含み、
前記第２ニューラルネットワークは、前記第２対象顔画像を用いて学習し、前記真正面顔画像から第２尤度を算出する、
請求項３〜５のいずれかに記載の顔認識装置。
【請求項７】
前記識別部は、前記真正面顔画像から算出された第１尤度が所定の第１尤度閾値を上回るか否かを判定し、前記真正面顔画像から算出された第１尤度が前記第１尤度閾値を上回ると判定された場合、前記第１対象者の識別子を出力する、
請求項２に記載の顔認識装置。
【請求項８】
前記判定部は、第２対象者の顔を表す第３対象顔画像に基づく情報を記憶し、前記真正面顔画像が前記第１対象顔画像に類似していると判定された場合、前記第１対象者の識別子を出力し、その後、前記複数の顔画像が前記第３対象顔画像に類似しているか否かを判定し、前記複数の顔画像が前記第３対象顔画像に類似していると判定された場合、前記第１対象者の識別子を前記第２対象者の識別子に訂正することを出力する、
請求項１〜７のいずれかに記載の顔認識装置。
【請求項９】
前記第１対象者の識別子の出力に応じて、前記第１対象者を認識したことをユーザへ通知し、前記訂正の出力に応じて、前記訂正をユーザへ通知する通知部を
更に備える、
請求項８に記載の顔認識装置。
【請求項１０】
前記真正面顔判定部は、前記顔画像から横方向のエッジを検出することにより、前記顔画像の中の顔の左端のエッジ及び右端のエッジを検出し、前記顔画像から縦方向のエッジを検出することにより、前記顔画像の中の鼻のエッジを検出し、前記左端のエッジの位置と前記右端のエッジの位置と前記鼻のエッジの位置とが所定の条件を満たす場合、前記顔画像が真正面顔を表していると判定する、
請求項１〜９のいずれかに記載の顔認識装置。
【請求項１１】
コンピュータが、第１対象者の顔を表す第１対象顔画像に基づく情報を記憶し、
前記コンピュータが、連続する撮影により得られる画像から、顔を表す部分である顔画像を検出し、
前記コンピュータが、前記顔画像が真正面顔を表しているか否かを判定し、
前記コンピュータが、前記顔画像が真正面顔を表していると判定された場合、真正面顔を表していると判定された顔画像である真正面顔画像が前記第１対象顔画像に類似しているか否かを判定し、前記顔画像が真正面顔を表していないと判定された場合、前記検出により連続して検出された複数の顔画像が前記第１対象顔画像に類似しているか否かを判定する、
ことを備える
顔認識方法。
【請求項１２】
コンピュータを、顔認識装置として機能させるためのコンピュータプログラムであって、
連続する撮影により得られる画像から、顔を表す部分である顔画像を検出する顔画像検出部と、
前記顔画像が真正面顔を表しているか否かを判定する真正面顔判定部と、
第１対象者の顔を表す第１対象顔画像に基づく情報を記憶し、前記顔画像が真正面顔を表していると判定された場合、真正面顔を表していると判定された顔画像である真正面顔画像が前記第１対象顔画像に類似しているか否かを判定し、前記顔画像が真正面顔を表していないと判定された場合、前記顔画像検出部により連続して検出された複数の顔画像が前記第１対象顔画像に類似しているか否かを判定する判定部と、
を前記コンピュータ上に実現するためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、顔認識装置、顔認識方法、およびコンピュータプログラムに関する。
【背景技術】
【０００２】
顔の画像を用いて、予め登録された人を認識する技術が知られている。また、連続して取得された複数の顔画像を用いて認識することにより、認識の精度を高める技術が知られている。例えば、特許文献１には、複数のフレームの夫々の識別結果を加重平均することにより、家庭環境のような照明条件が一定でない環境においても安定して人物を識別できる技術が記載されている。
【０００３】
また、人が顔をカメラの方向に向け、正面の顔画像を用いて認識することにより、認識の精度を高める技術が知られている。例えば、特許文献２には、認証対象の人物が撮像視野から外れそうである場合、そのことを表示することにより、正面の顔画像を得やすくする技術が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許３８２３７６０号公報
【特許文献２】特開２００８−７１１７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
複数の顔画像を用いて顔認識を行う技術では、複数の画像の撮影と認識のための時間が長くなる。また、正面の顔画像を用いて顔認識を行う技術では、正面の顔画像を得るために人の顔をカメラに向けさせるための仕組みが必要になる。
【０００６】
本発明は、上記の問題に鑑みてなされたもので、その目的は、撮影の状況に応じて顔認識に要する時間を短縮する技術を提供することにある。
【課題を解決するための手段】
【０００７】
本発明の一つの観点に係る顔認識装置は、連続する撮影により得られる画像から、顔を表す部分である顔画像を検出する顔画像検出部と、顔画像が真正面顔を表しているか否かを判定する真正面顔判定部と、第１対象者の顔を表す第１対象顔画像に基づく情報を記憶し、顔画像が真正面顔を表していると判定された場合、真正面顔を表していると判定された顔画像である真正面顔画像が第１対象顔画像に類似しているか否かを判定し、顔画像が真正面顔を表していないと判定された場合、顔画像検出部により連続して検出された複数の顔画像が第１対象顔画像に類似しているか否かを判定する判定部と、を備える。
【０００８】
判定部は、顔画像が第１対象顔画像であることの確からしさである第１尤度を算出する第１尤度算出部と、複数の顔画像から夫々算出される複数の第１尤度の平均である平均尤度を算出する平均尤度算出部と、平均尤度が所定の平均尤度閾値を上回るか否かを判定し、平均尤度が平均尤度閾値を上回ると判定された場合、第１対象者の識別子を出力する識別部と、を含んでも良い。
【０００９】
判定部は、第１対象者の真正面顔を表す第２対象顔画像に基づく情報を記憶し、真正面顔画像が第２対象顔画像であることの確からしさである第２尤度を算出する第２尤度算出部を更に含み、識別部は、第２尤度が所定の第２尤度閾値を上回るか否かを判定し、第２尤度が第２尤度閾値を上回ると判定された場合、第１対象者の識別子を出力しても良い。
【図面の簡単な説明】
【００１０】
【図１】実施例１の顔認識装置の構成を示すブロック図である。
【図２】実施例１の認識処理を示すフローチャートである。
【図３】実施例１の認識処理の一例を示す模式図である。
【図４】真正面顔判定部２６０の動作を示す模式図である。
【図５】実施例２の顔認識装置の構成を示すブロック図である。
【図６】実施例２の認識処理を示すフローチャートである。
【図７】実施例２の認識処理の一例を示す模式図である。
【図８】実施例３の第２尤度算出部３１０の動作の一例を示す模式図である。
【図９】実施例４の認識処理の一例を示す模式図である。
【発明を実施するための形態】
【００１１】
本実施形態の顔認識装置は、連続して撮影された画像から顔画像を検出し、その顔画像が真正面顔を表していると判定された時点で、その顔画像が予め登録された対象者を表しているか否かを判定することができ、認識結果を得るまでの時間を短縮することができる。
【００１２】
本実施形態の顔認識装置は、ロボット、携帯情報端末（携帯電話、スマートフォン、カメラ、パーソナルコンピュータ等を含む）、車両（カーナビゲーション装置等を含む）、キオスク端末等、ユーザとの対話やユーザの案内等を行うシステムに適用されても良い。
【実施例１】
【００１３】
図１は、実施例１の顔認識装置の構成を示すブロック図である。
【００１４】
本実施例の顔認識装置は、画像入力部１１０と、認識部１２０と、アプリケーション処理部１３０とを有する。
【００１５】
画像入力部１１０は、連続して撮影を行うことにより、複数のフレームの画像を生成する。本実施例の画像入力部１１０は、カメラである。なお、画像入力部１１０は、外部のカメラにより生成され送信される画像を受信する通信インターフェイスであっても良い。この通信インターフェイスは、外部のカメラに対して撮影の指示を送信しても良い。
【００１６】
認識部１２０は、まず登録処理として、対象者の識別子と、画像入力部１１０による撮影により得られる対象者の顔の画像に基づく情報とを登録する。その後、認識部１２０は、認識処理として、画像入力部１１０による撮影により得られる画像に基づいて対象者を認識し、認識された対象者の識別子を認識結果として出力する。
【００１７】
アプリケーション処理部１３０は、認識結果に基づいて、音声出力等のアクションを行う。例えば、アプリケーション処理部１３０は、登録処理において対象者の名前の入力を受け付け、対象者の識別子と名前を対応付けて格納し、認識処理において認識結果に応じたメッセージを音声により出力する。メッセージは、「こんにちは、Ａさん」や「Ａさんですね」等のように、認識結果に対応する対象者の名前を含んでも良い。
【００１８】
本実施例の顔認識装置は更に、ユーザからの指示をアプリケーション処理部１３０へ入力するための入力装置や、アプリケーション処理部１３０からユーザへの通知を出力するための出力装置を有していても良い。入力装置は例えば、マイクロフォン等、音声を入力する装置である。出力装置は例えば、スピーカ等、音声を出力する装置である。本実施例の顔認識装置がロボットに適用される場合、出力装置は手や腕等を動かすアクチュエータであっても良い。
【００１９】
認識部１２０及びアプリケーション処理部１３０は、例えばコンピュータにより実現される。このコンピュータは、プログラム及びデータを格納するメモリと、そのプログラムに従って認識部１２０及びアプリケーション処理部１３０の処理を実行するマイクロプロセッサとを有する。このプログラムは、コンピュータ読み取り可能な媒体に格納され、その媒体からコンピュータへインストールされても良い。
【００２０】
認識部１２０は、顔画像検出部２２０と、真正面顔判定部２６０と、判定部２１０とを有する。
【００２１】
顔画像検出部２２０は、画像入力部１１０により生成された画像から、顔を表す部分である顔画像を検出する。例えば、顔画像検出部２２０は、目及び鼻の特徴を含む肌色の領域を、顔画像として検出する。また、顔画像検出部２２０は、現在の画像から検出された顔画像を、一つの前の画像から検出された顔画像と比較し、それらの顔画像の位置の差が所定範囲内である場合に、それらの顔画像が同一人物の顔を表していると判定することにより、検出された顔画像を追跡する顔追跡を行う。なお、顔画像検出部２２０は、取得された一つの画像から複数の人の顔画像を検出しても良い。
【００２２】
真正面顔判定部２６０は、顔画像検出部２２０により検出された顔画像が真正面顔を表しているか否かを判定し、その結果を真正面顔判定結果として出力する。真正面顔判定部２６０の詳細については後述する。
【００２３】
判定部２１０は、登録処理において顔画像検出部２２０から対象者の顔画像である第１対象顔画像を取得する。その後、判定部２１０は、認識処理において顔画像検出部２２０により連続して検出された複数の顔画像が第１対象顔画像に類似しているか否かを判定する。更に判定部２１０は、真正面顔判定部２６０により顔画像が真正面顔を表していると判定された場合、真正面顔を表していると判定された顔画像である真正面顔画像が第１対象顔画像に類似しているか否かを判定する。判定部２１０は、第１尤度算出部２３０と、蓄積型算出部２４０と、識別部２７０とを有する。平均尤度算出部は、蓄積型算出部２４０等に対応する。
【００２４】
第１尤度算出部２３０は、顔画像検出部２２０により検出された顔画像が第１対象顔画像であることの確からしさ（スコア）である第１尤度を算出する。第１対象顔画像は、対象者の真正面顔以外の顔画像を含む複数の顔画像である。本実施例の第１尤度算出部２３０は、ニューラルネットワークを有し、登録処理において第１対象顔画像を教師信号としてニューラルネットワークの学習を行い、認識処理においてそのニューラルネットワークにより顔画像から第１尤度を算出する。登録処理により複数の対象者が登録される場合、第１尤度算出部２３０は、登録処理において複数の対象者の夫々の第１対象顔画像を教師信号としてニューラルネットワークの学習を行い、認識処理においてそのニューラルネットワークにより一つの顔画像から複数の対象者の夫々の第１尤度を算出する。
【００２５】
登録処理において、第１尤度算出部２３０は、ニューラルネットワークの教師信号として、対象者の複数の第１対象顔画像を取得する。例えば、本実施例の顔認識装置が人型ロボットに適用される場合、アプリケーション処理部１３０は、ユーザから対象者の登録処理の指示を受けると、ロボットの手を見ることを指示するメッセージを音声によりユーザへ出力し、ロボットの手のアクチュエータを駆動することによりロボットの手を画像入力部１１０の周りの様々な方向へ動かしながら、画像入力部１１０により連続して撮影する。顔画像検出部２２０は、撮影により得られた複数の画像から顔画像を検出し、第１対象顔画像として第１尤度算出部２３０へ出力する。これにより、第１尤度算出部２３０は、様々な方向から撮影した対象者の顔画像を用いてニューラルネットワークの学習を行うことができる。この登録処理により、第１尤度算出部２３０は、第１対象顔画像に基づく情報として、第１対象顔画像により学習されたニューラルネットワークを記憶する。
【００２６】
なお、第１尤度算出部２３０は、登録処理において、検出された第１対象顔画像を格納し、認識処理において、顔画像検出部２２０により検出された顔画像と、第１対象顔画像との類似度を算出しても良い。また、第１尤度算出部２３０は、登録処理において、第１対象顔画像から検出された特徴量を格納し、認識処理において、顔画像検出部２２０により検出された顔画像から特徴量を検出し、検出された特徴量と、格納された特徴量との類似度を算出しても良い。
【００２７】
蓄積型算出部２４０は、対象者毎に、所定の蓄積数までの第１尤度の平均を平均尤度として算出する。蓄積数は、例えば７である。また、蓄積型算出部２４０は、対象者毎に、蓄積数までの第１尤度を記憶しても良い。なお、蓄積型算出部２４０は、複数の第１尤度の加重平均を平均尤度として算出しても良い。重み付けは、現在からの時間差に応じて減少しても良い。
【００２８】
識別部２７０は、第１尤度算出部２３０により算出された第１尤度が所定の第１尤度閾値を超えたか否かを判定する。更に識別部２７０は、蓄積型算出部２４０より算出された平均尤度が所定の平均尤度閾値を超えたか否かを判定する。更に識別部２７０は、真正面顔判定結果と、第１尤度の判定結果と、平均尤度の判定結果とに基づいて、顔画像が或る対象者を表しているか否かを判定し、顔画像が或る対象者を表していると判定された場合、その対象者の識別子を認識結果として、アプリケーション処理部１３０へ出力する。
【００２９】
図２は、実施例１の認識処理を示すフローチャートである。
【００３０】
認識部１２０は、登録処理の後に認識処理を行う。
【００３１】
まず、画像入力部１１０は、撮影を行い、顔画像検出部２２０は、撮影された画像から、顔画像を検出する（Ｓ１１０）。その後、第１尤度算出部２３０は、対象者毎の第１尤度を算出する（Ｓ１２０）。真正面顔判定部２６０は、検出された顔画像が真正面顔を表しているか否かを判定する（Ｓ１３０）。
【００３２】
検出された顔画像が真正面顔を表していないと判定された場合（Ｓ１３０：ＮＯ）、識別部２７０は、処理をＳ５１０へ移行させる。一方、検出された顔画像が真正面顔を表していると判定された場合（Ｓ１３０：ＹＥＳ）、識別部２７０は、或る対象者の第１尤度が第１尤度閾値以上であるか否かを判定する（Ｓ１４０）。
【００３３】
或る対象者の第１尤度が第１尤度閾値以上でないと判定された場合（Ｓ１４０：ＮＯ）、識別部２７０は、処理をＳ５１０へ移行させる。一方、或る対象者の第１尤度が第１尤度閾値以上であると判定された場合（Ｓ１４０：ＹＥＳ）、識別部２７０は、その第１尤度に対応する対象者を特定し、その対象者の識別子を認識結果としてアプリケーション処理部１３０へ出力する（Ｓ１５０）。
【００３４】
その後、蓄積型算出部２４０は（Ｓ５１０）、算出された第１尤度を記憶し、記憶されている第１尤度から平均尤度を算出する。識別部２７０は、或る対象者の平均尤度が平均尤度閾値以上であるか否かを判定する（Ｓ５２０）。平均尤度が平均尤度閾値以上でないと判定された場合（Ｓ５２０：ＮＯ）、識別部２７０は、処理をＳ５４０へ移行させる。一方、平均尤度が平均尤度閾値以上であると判定された場合（Ｓ５２０：ＹＥＳ）、識別部２７０は、その平均尤度に対応する対象者を特定し、その対象者の識別子を認識結果としてアプリケーション処理部１３０へ出力する（Ｓ５３０）。その後、識別部２７０は、顔認識処理の終了の指示を受けたか否かを判定する（Ｓ５４０）。顔認識処理の終了の指示を受けたと判定されなかった場合（Ｓ５４０：ＮＯ）、識別部２７０は、処理をＳ１１０へ移行させる。これにより、次のフレームの画像の処理が行われる。顔認識処理の終了の指示を受けたと判定された場合（Ｓ５４０：ＹＥＳ）、識別部２７０は、この処理を終了する。以上が認識処理である。
【００３５】
なお、顔画像検出部２２０が、撮影された一つの画像から複数の顔画像を検出した場合、複数の顔画像の夫々を追跡しても良い。この場合、判定部２１０は、複数の顔画像の夫々に対して認識処理を行い、複数の顔画像の夫々から対象者を認識しても良い。また、識別部２７０は、検出された顔画像が真正面顔を表していないと判定された場合に、平均尤度が平均尤度閾値以上であるか否かを判定しても良い。
【００３６】
図３は、実施例１の認識処理の一例を示す模式図である。
【００３７】
対象者としてＡさんが顔認識装置に登録されているとする。この図は、顔認識装置がＡさんを認識する場合を示す。この図における横軸は時間である。この図は、連続して追跡された顔画像（１）〜（７）を示す。連続して撮影される顔画像の間隔を３秒とする。更にこの図は、真正面顔判定結果と、Ａさんの第１尤度と、Ａさんの平均尤度と、認識結果との時間変化を示す。この例における第１尤度閾値及び平均尤度閾値は０．６である。なお、真正面顔の顔画像から得られる尤度は、真正面顔でない顔画像から得られる尤度より高いため、第１尤度閾値は平均尤度閾値より高くても良い。
【００３８】
第１尤度算出部２３０は、顔画像（１）から連続して検出された顔画像からＡさんの第１尤度を算出する。真正面顔判定部２６０は、顔画像（３）が真正面顔を表していると判定する。このとき、顔画像（３）におけるＡさんの第１尤度は、０．８であり、第１尤度閾値以上であるため、識別部２７０は、Ａさんの識別子を認識結果としてアプリケーション処理部１３０へ出力する。このとき、Ａさんの平均尤度は、０．５７であり、平均尤度閾値より低い。
【００３９】
その後、顔画像（５）において顔画像（１）〜（５）から算出されたＡさんの平均尤度は、０．６になり、平均尤度閾値以上になったため、識別部２７０は、Ａさんの識別子を認識結果としてアプリケーション処理部１３０へ出力する。
【００４０】
この例において、真正面顔の顔画像の第１尤度から得られた認識結果と、平均尤度から得られた認識結果は同一であるものの、真正面顔の顔画像の第１尤度から得られた認識結果は、平均尤度から得られた認識結果より６秒早く出力される。或る対象者がカメラの視野内に入り顔画像が検出されてから、第１尤度が第１尤度閾値以上になるまで、第１尤度は徐々に増加している。平均尤度は、第１尤度の平均であるため、第１尤度の増加より遅れて増加している。顔画像が真正面顔を表していると判定され、且つ第１尤度が第１尤度閾値を超えたと判定された時点で、その第１尤度に対応する対象者の識別子を認識結果として出力することにより、平均尤度だけを用いる場合に比べて、認識結果を出力するまでの時間を短縮することができる。
【００４１】
本実施例によれば、真正面顔の顔画像が検出できない場合には複数の顔画像の平均尤度を用いて顔認識の精度を向上させ、真正面顔の顔画像が検出できた場合にはその顔画像の第１尤度だけを用いて顔認識の速度を向上させる。言い換えれば、カメラと対象者の位置関係や撮影タイミング等の撮影の状況に応じて、顔認識に要する時間を短縮することができる。
【００４２】
特に本実施例の顔認識装置がユーザと対話するロボットに適用される場合等においては、ユーザが画像入力部１１０のカメラに対して真正面で対話する場合が多くなり、本実施例の顔認識装置は平均尤度だけを用いる場合に比べて顔認識を高速化することができる。顔認識におけるユーザの待ち時間が減少することにより、対話をより円滑に行うことができる。
【００４３】
以下、真正面顔判定部２６０の詳細について説明する。
【００４４】
真正面顔判定部２６０は、顔画像から横方向のエッジを検出することにより、顔の左端のエッジと右端のエッジを検出し、その顔画像から縦方向のエッジを検出することにより、鼻のエッジを検出する。更に真正面顔判定部２６０は、左端のエッジの位置と右端のエッジの位置と鼻のエッジの位置とが所定の条件を満たす場合に顔画像が真正面顔を表していると判定する。
【００４５】
図４は、真正面顔判定部２６０の動作の一例を示す模式図である。
【００４６】
まず、真正面顔判定部２６０は、顔画像５１０に対して横方向エッジ抽出を行うことにより、横方向エッジ画像５２０を生成する。その後、真正面顔判定部２６０は、横方向エッジ画像５２０から、顔の左端のエッジである左端エッジ５２１と、顔の右端のエッジである右端エッジ５２２とを検出する。その後、真正面顔判定部２６０は、顔画像５１０が所定の横方向条件を満たすか否かを判定する。例えば、横方向条件は、顔画像５１０の水平位置の中心線５２３に対し、左端エッジ５２１と右端エッジ５２２が水平方向に均等に位置することである。或いは、横方向条件は、顔画像の横方向の中心線５２３から左端エッジ５２１までの水平距離と、中心線５２３から右端エッジ５２２までの水平距離との差が所定範囲内であることである。或いは、横方向条件は、左端エッジ５２１と右端エッジ５２２の中心線又は重心が、中心線５２３から所定距離以内にあることである。顔画像が横方向条件を満たす場合、顔画像に表された顔の左右方向の傾きは小さい。
【００４７】
更に真正面顔判定部２６０は、顔画像５１０に対して縦方向エッジ抽出を行うことにより、縦方向エッジ画像５３０を生成する。その後、真正面顔判定部２６０は、縦方向エッジ画像５３０から、鼻に起因するエッジを鼻エッジ５３１として検出する。真正面顔判定部２６０は、顔画像５１０が所定の縦方向条件を満たすか否かを判定する。例えば、縦方向条件は、鼻エッジ５３１が、顔画像に対して予め設定された鼻存在領域５３２の中に位置していることである。顔画像が縦方向条件を満たす場合、顔画像に表された顔の上下方向の傾きは小さい。
【００４８】
その後、真正面顔判定部２６０は、顔画像５１０が横方向条件を満たし、且つ顔画像５１０が縦方向条件を満たす場合に、その顔画像が真正面顔を表していると判定する。
【００４９】
真正面顔判定部２６０によれば、顔画像内の顔が真正面を向いていることを精度良く判定することができる。顔画像が真正面顔を表している場合、顔の特徴部が陰になることがないため、その顔画像を用いることにより顔認識の信頼性は高まる。
【実施例２】
【００５０】
本実施例においては、実施例１との相違を中心に説明する。
【００５１】
本実施例の顔認識装置は、検出された顔画像が真正面顔画像であると判定された場合に、真正面顔画像が、予め入力された対象者の真正面顔の顔画像と類似しているか否かを判定する。
【００５２】
図５は、実施例２の顔認識装置の構成を示すブロック図である。
【００５３】
実施例１の顔認識装置と比較すると、実施例２の顔認識装置は、認識部１２０の代わりに認識部１２０ｂを有し、判定部２１０の代わりに判定部２１０ｂを有し、識別部２７０の代わりに識別部２７０ｂを有する。判定部２１０と比較すると、判定部２１０ｂは、新たに第２尤度算出部３１０を有する。
【００５４】
第２尤度算出部３１０は、登録処理において、対象者の真正面顔の顔画像である第２対象顔画像を取得し、認識処理において、顔画像検出部２２０により検出された顔画像が第２対象顔画像であることの確からしさ（スコア）である第２尤度を算出する。第１対象顔画像が真正面顔以外の顔画像を含むのに対し、第２対象顔画像は、真正面顔だけの顔画像である。本実施例の第２尤度算出部３１０は、ニューラルネットワークを有し、登録処理において第２対象顔画像を教師信号としてニューラルネットワークの学習を行い、認識処理においてそのニューラルネットワークにより顔画像検出部２２０により検出された顔画像から対象者の第２尤度を算出する。登録処理により複数の対象者が登録された場合、第２尤度算出部３１０は、登録処理において複数の対象者の夫々の第２対象顔画像を教師信号としてニューラルネットワークの学習を行い、認識処理においてそのニューラルネットワークにより一つの顔画像から複数の対象者の夫々の第２尤度を算出する。
【００５５】
登録処理において、第２尤度算出部３１０は、ニューラルネットワークの教師信号として、対象者の複数の第２対象顔画像を取得する。例えば、本実施例の顔認識装置が人型ロボットに適用される場合、アプリケーション処理部１３０は、ユーザから対象者の登録処理の指示を受けると、画像入力部１１０を真正面から見ることを指示するメッセージを音声によりユーザへ出力し、画像入力部１１０により連続して撮影する。顔画像検出部２２０は、撮影により得られた複数の画像から顔画像を検出し、真正面顔判定部２６０は、検出された顔画像が真正面顔を表しているか否かを判定し、真正面顔を表していると判定された顔画像を第２対象顔画像として第２尤度算出部３１０へ出力する。これにより、第２尤度算出部３１０は、対象者の真正面顔だけの顔画像を用いてニューラルネットワークの学習を行うことができる。この登録処理により、第２尤度算出部３１０は、第２対象顔画像に基づく情報として、第２対象顔画像により学習されたニューラルネットワークを記憶する。なお、指示部は、アプリケーション処理部１３０等に対応する。
【００５６】
なお、第２尤度算出部３１０は、登録処理において、検出された第２対象顔画像を格納し、認識処理において、真正面顔を表していると判定された顔画像と、第２対象顔画像との類似度を算出しても良い。また、第２尤度算出部３１０は、登録処理において、第２対象顔画像から検出された特徴量を格納し、認識処理において、真正面顔を表していると判定された顔画像から特徴量を検出し、検出された特徴量と、格納された特徴量との類似度を算出しても良い。
【００５７】
識別部２７０ｂは、第２尤度算出部３１０により算出された第２尤度が所定の第２尤度閾値を超えたか否かを判定する。更に識別部２７０ｂは、蓄積型算出部２４０により算出された平均尤度が所定の平均尤度閾値を超えたか否かを判定する。更に識別部２７０ｂは、第２尤度の判定結果と、平均尤度の判定結果とに基づいて、顔画像が或る対象者を表しているか否かを判定し、顔画像が或る対象者を表していると判定された場合、その対象者の識別子を認識結果としてアプリケーション処理部１３０へ出力する。
【００５８】
第１尤度算出部２３０は、様々な条件（顔方向、照明条件）の顔画像を学習することにより、真正面顔以外を含む様々な条件の顔画像を認識することができる。しかし、第１尤度算出部２３０は、対象者の真正面顔の顔画像から算出される第１尤度が、対象者の真正面以外の顔画像から算出する第１尤度に比べて常に高くなるわけではないため、１枚の真正面顔の顔画像から算出された第１尤度だけで対象者を特定することは信頼性が不十分な場合もある。
【００５９】
一方、第２尤度算出部２３０は、真正面顔だけを表す第２対象顔画像だけを学習することにより、対象者の真正面顔の顔画像が撮影された場合には高い尤度を出力するため、１枚の真正面顔の顔画像から算出された第２尤度だけで対象者を特定することができる。
【００６０】
図６は、実施例２の認識処理を示すフローチャートである。
【００６１】
認識部１２０ａは、登録処理の後に認識処理を実行する。
【００６２】
実施例１と同様のＳ１１０が実行された後、真正面顔判定部２６０は、検出された顔画像が真正面顔を表しているか否かを判定する（Ｓ３１０）。
【００６３】
検出された顔画像が真正面顔を表していないと判定された場合（Ｓ３１０：ＮＯ）、識別部２７０ｂは、処理をＳ４１０へ移行させる。一方、検出された顔画像が真正面顔を表していると判定された場合（Ｓ３１０：ＹＥＳ）、第２尤度算出部３１０は、対象者毎の第２尤度を算出する（Ｓ３２０）。識別部２７０ｂは、或る対象者の第２尤度が第２尤度閾値以上であるか否かを判定する（Ｓ３３０）。
【００６４】
或る対象者の第２尤度が第２尤度閾値以上でないと判定された場合（Ｓ３３０：ＮＯ）、識別部２７０ｂは、処理をＳ４１０へ移行させる。一方、或る対象者の第２尤度が第２尤度閾値以上であると判定された場合（Ｓ３３０：ＹＥＳ）、識別部２７０ｂは、その第２尤度に対応する対象者を特定し、その対象者の識別子を認識結果としてアプリケーション処理部１３０へ出力する（Ｓ３４０）。
【００６５】
その後、第１尤度算出部２３０は、対象者毎の第１尤度を算出する（Ｓ４１０）。その後、実施例１と同様のＳ５１０〜Ｓ５４０が実行される。以上が認識処理である。
【００６６】
第２尤度算出部３１０は、顔画像検出部２２０により顔画像が検出される度に、その顔画像から第２尤度を算出しても良い。この場合、識別部２７０ｂは、或る顔画像が真正面顔を表していると判定され、且つその顔画像から算出された第２尤度が第２尤度閾値以上である場合に、その第２尤度に対応する対象者の識別子を認識結果として出力する。
【００６７】
図７は、実施例２の認識処理の一例を示す模式図である。
【００６８】
この図は、真正面顔判定結果と、Ａさんの第１尤度と、Ａさんの平均尤度と、Ａさんの第２尤度と、認識結果との時間変化を示す。この例における第２尤度閾値は０．６である。
【００６９】
真正面顔判定部２６０により顔画像（３）が真正面顔を表していると判定されたとする。顔画像（３）におけるＡさんの第２尤度は、０．９になり、第２尤度閾値以上になったため、識別部２７０ｂは、Ａさんの識別子を認識結果としてアプリケーション処理部１３０へ出力する。このとき、Ａさんの第１尤度は、０．８であり、第２尤度より低い。また、Ａさんの平均尤度は、０．５７であり、第２尤度より低い。
【００７０】
その後、顔画像（５）において顔画像（１）〜（５）から算出されたＡさんの平均尤度は、０．６になり、平均尤度閾値以上になったため、識別部２７０ｂは、Ａさんの識別子を認識結果としてアプリケーション処理部１３０へ出力する。
【００７１】
この例において、真正面顔の顔画像の第２尤度から得られた認識結果と、平均尤度から得られた認識結果は同一であるものの、真正面顔の顔画像の第２尤度から得られた認識結果は、平均尤度から得られた認識結果より６秒早く出力される。顔画像が真正面顔を表していると判定され、且つ第２尤度が第２尤度閾値を超えたと判定された時点で、その第２尤度に対応する対象者の識別子を認識結果として出力することにより、平均尤度の判定に比べて、認識結果を出力するまでの時間を短縮することができる。また、第２尤度算出部３１０が、真正面顔の顔画像だけを学習することにより、高い第２尤度を得ることができるため、第２尤度による判定の信頼性を向上させることができ、一つの真正面顔の顔画像を検出した時点で対象者を特定することが可能になる。
【実施例３】
【００７２】
本実施例においては、実施例２との相違を中心に説明する。
【００７３】
本実施例の第２尤度算出部３１０は、第２対象顔画像から、複数の部分領域に夫々位置する複数の対象部分画像を抽出する。本実施例の第２尤度算出部３１０は、複数のニューラルネットワークを有し、複数の対象部分画像により夫々学習する。更に第２尤度算出部３１０は、検出された顔画像から、複数の部分領域に夫々位置する複数の部分画像（検出部分画像）を抽出し、抽出された複数の部分画像の夫々の尤度を部分尤度として算出する。更に第２尤度算出部３１０は、複数の部分領域の夫々に予め定められた重みを用いて、全ての部分尤度を重み付け加算することにより、顔画像の第２尤度を算出する。
【００７４】
図８は、実施例３の第２尤度算出部３１０の動作の一例を示す模式図である。
【００７５】
この例において、顔画像において縦方向に並ぶ４つの部分領域が設定されている。第２尤度算出部３１０は、４つの部分領域に対応して、顔画像を４つの部分画像に分割する。例えば、第２尤度算出部３１０は、顔画像を縦方向に所定の割合で分割する。また、例えば、第２尤度算出部３１０は、目を含む部分領域や、鼻を含む部分領域など、顔画像内の特徴点を用いて、顔画像を分割しても良い。
【００７６】
この図において、第２尤度算出部３１０は、顔画像を部分画像４１０、４２０、４３０、４４０に分割する。第２尤度算出部３１０は、部分画像４１０、４２０、４３０、４４０の夫々から部分尤度を算出する。部分画像４１０、４２０、４３０、４４０に与えられた重みは夫々、０．１、０．５、０．３、０．１である。その後、第２尤度算出部３１０は、４つの部分尤度に重みを乗じて合計することにより、顔画像全体の第２尤度を算出する。この場合の第２尤度閾値は、例えば０．４程度である。
【００７７】
部分画像４１０は、前髪や額を含む部分領域であり、髪型の影響を受け、変化しやすい部分であるため重みは最も低い。部分画像４２０は、目を含む部分領域であり、変化が少なく、特徴的な部分であるため、重みは最も高い。部分画像４３０は、鼻を含む部分領域であり、変化が少なく、特徴的な部分であるため、重みは部分画像４３０の次に高い。部分画像４４０は、口を含む部分領域であり、口の開閉等の変形の影響を受け、変化しやすい部分であるため重みは最も低い。
【００７８】
このように複数の部分画像４１０、４２０、４３０、４４０を重み付けし、対象者の特徴を有する部分画像の第２尤度への寄与を大きくすることにより、髪型や口の動き等、他の部分領域の変化の影響を受けにくく、第２尤度の信頼性を向上させ、顔認識の精度を向上させることができる。
【実施例４】
【００７９】
本実施例においては、実施例２との相違を中心に説明する。
【００８０】
本実施例の識別部２７０ｂは、追跡されている一連の顔画像から、第２尤度を用いて第１の対象者を認識し、その後、平均尤度を用いて第２の対象者を認識した場合、認識結果を訂正することを出力する。
【００８１】
顔画像検出部２２０は前述のように顔画像を追跡しているため、追跡により出力される一連の顔画像の中で人の入れ替わりがないと認識することができる。第１の顔画像から算出された第１の対象者の第２尤度が第２尤度閾値以上になったとする。このとき、識別部２７０ｂは、第１の対象者の識別子を認識結果として出力する。この認識結果に応じて、アプリケーション処理部１３０は、第１の対象者を認識したことをユーザに対して通知する。例えば、アプリケーション処理部１３０は、音声により第１の対象者の名前を出力する。
【００８２】
その後、第１の顔画像から連続して追跡されている第２の顔画像に対する第２の対象者の平均尤度が平均尤度閾値以上になったとする。このとき、追跡中の一連の顔画像に基づいて、第２尤度により第１の対象者が特定され、平均尤度により第２の対象者が特定されたため、識別部２７０ｂは、平均尤度により特定された第２の対象者を優先し、第１の対象者の識別子を第２の対象者の識別子に訂正することを認識結果として出力する。この認識結果に応じて、アプリケーション処理部１３０は、誤認識したことをユーザに対して通知する。例えば、アプリケーション処理部１３０は、音声により、訂正を示すメッセージと共に、第２の対象者の名前を出力する。このメッセージは、「ごめんなさい」、「間違えました」等である。
【００８３】
図９は、実施例４の認識処理の一例を示す模式図である。
【００８４】
この図は、真正面顔判定結果と、Ａさんの第１尤度と、Ｂさんの第１尤度と、Ｂさんの平均尤度と、Ａさんの第２尤度と、認識結果との時間変化を示す。この例における平均尤度閾値及び第２尤度閾値は０．６である。
【００８５】
対象者としてＡさんとＢさんが判定部２１０ｂに登録されているとする。第１尤度算出部２３０は、連続して追跡されている顔画像群（顔画像（１）〜（７））から、Ａさんに対する第１尤度と、Ｂさんに対する第１尤度とを算出する。真正面顔判定部２６０は、顔画像（３）が真正面顔を示すと判定したとする。顔画像（３）におけるＡさんの第２尤度が０．９になり、第２尤度閾値以上になったため、識別部２７０ｂは、Ａさんの識別子を認識結果としてアプリケーション処理部１３０へ出力する。アプリケーション処理部１３０は、認識結果に応じてＡさんを認識したことをユーザへ通知する。
【００８６】
その後、顔画像（６）において顔画像（１）〜（６）から算出されたＢさんの平均尤度が０．６２になり、平均尤度閾値以上になったとする。このとき、識別部２７０ｂは、平均尤度から特定された対象者を優先し、Ａさんの識別子をＢさんの識別子へ訂正することを認識結果としてアプリケーション処理部１３０へ出力する。アプリケーション処理部１３０は、認識結果に応じて、ＡさんをＢさんに訂正することをユーザへ通知する。
【００８７】
なお、通知部は、アプリケーション処理部１３０等に対応する。
【００８８】
本実施例によれば、平均尤度による認識結果が第２尤度による認識結果と異なる場合に、第２尤度による認識結果より平均尤度による認識結果を優先する。これにより、第２尤度を用いることにより認識速度を向上させつつ、第２尤度を用いて誤認識が発生した場合でも平均尤度を用いて認識結果を訂正し、信頼性を向上させることができる。
【００８９】
受付や入門許可などのセキュリティに用いる個人認証では、極めて高い認識精度が必要である。一方、エンタテイメントロボットなどの対話に用いる顔認識では、誤認識は致命的な欠陥とならない場合がある。本実施例によれば、第２尤度を用いて高速に認識結果を出力することにより、ユーザの待ち時間は短縮され、対話におけるエンタテイメント性を向上させることができる。また、誤認識が発生した場合に、認識結果の訂正をユーザに通知することにより、訂正を通知しない場合に比べてユーザの心証を良くすることができ、対話におけるエンタテイメント性を向上させることができる。
【００９０】
なお、本発明は、上述した実施の形態に限定されない。当業者であれば、本発明の範囲内で、種々の追加や変更等を行うことができる。
【符号の説明】
【００９１】
１１０：画像入力部、  １２０、１２０ｂ：認識部、  １３０：アプリケーション処理部、  ２１０、２１０ｂ：判定部、  ２２０：顔画像検出部、  ２３０：第１尤度算出部、  ２４０：蓄積型算出部、  ２６０：真正面顔判定部、  ２７０、２７０ｂ：識別部、  ３１０：第２尤度算出部
【図１】
2014229015.tif 000003
【図２】
2014229015.tif 000004
【図３】
2014229015.tif 000005
【図４】
2014229015.tif 000006
【図５】
2014229015.tif 000007
【図６】
2014229015.tif 000008
【図７】
2014229015.tif 000009
【図８】
2014229015.tif 000010
【図９】
2014229015.tif 000011