(57)【要約】【課題】適切な向きを向いた顔画像であって、複数枚撮影した顔認証用の画像の中から、メガネの影響が小さい顔画像を選択することができる顔画像選択装置を提供する。【解決手段】カメラ１００で撮影されたユーザの顔画像における顔向きの角度を推定して顔向き情報を生成する顔向き推定部１２と、顔画像における、メガネの反射による白飛び領域の割合を示す白飛び情報を生成する白飛び情報生成部１３と、顔向き情報と白飛び情報とが所定の条件を満たす顔画像を選択する顔画像選択部１５と、を有する。【選択図】図１
2020009291.tif 000002
【特許請求の範囲】
【請求項１】
撮像装置で撮影されたユーザの顔画像における顔向きの角度を示す顔向き情報を取得する顔向き情報取得部と、
前記顔画像における白飛びの度合いを示す白飛び情報を生成する白飛び情報生成部と、
前記顔向き情報と前記白飛び情報とが所定の条件を満たす顔画像を選択する顔画像選択部と、
を有する顔画像選択装置。
【請求項２】
前記顔画像選択部は、前記顔向き情報と前記白飛び情報とを用いて定義される関数に基づいて、複数の顔画像の中から、前記顔向き情報と前記白飛び情報とが前記所定の条件を満たす前記顔画像を選択する、
請求項１に記載の顔画像選択装置。
【請求項３】
前記顔向き情報と前記白飛び情報とを用いて、顔認証に用いられる顔画像としての適切の度合いを示す評価値を前記顔画像毎に算出する評価値算出部をさらに有し、
前記顔画像選択部は、前記評価値が所定の範囲内にある顔画像を前記所定の条件を満たす画像として選択する、
請求項１または２に記載の顔画像選択装置。
【請求項４】
前記ユーザに対して、前記顔向きの角度が前記撮像装置の方向を基準とした所定の角度範囲内に収まるように指示する顔向き指示部をさらに有する、
請求項３に記載の顔画像選択装置。
【請求項５】
前記顔向き指示部は、前記顔向き情報と前記白飛び情報とが前記所定の条件を満たさない場合には、前記所定の条件を満たすように再度指示する、
請求項４に記載の顔画像選択装置。
【請求項６】
前記顔向き指示部による前記顔向きの角度の指示と、前記顔向き情報取得部による前記顔向き情報の取得と、前記白飛び情報生成部による前記白飛び情報の生成と、前記評価値算出部による前記評価値の算出と、を含む処理を規定回数に至るまで繰り返させる処理制御部をさらに有する、
請求項５に記載の顔画像選択装置。
【請求項７】
前記処理制御部は、前記評価値が前記所定の範囲内にある顔画像が存在するか否かを判定し、存在しないと判定した場合には、判定後の前記処理における前記規定回数及び／または前記所定の角度範囲を増大させる、
請求項６に記載の顔画像選択装置。
【請求項８】
前記顔向き指示部は、前記指示によって前記ユーザの顔向きに変化が生じたとき、前記白飛び領域の割合が前記変化前より前記変化後の方が大きい場合には、前記ユーザに対して顔を前記変化前の方向に向けさせるように改めて指示する、
請求項４に記載の顔画像選択装置。
【請求項９】
前記顔向き指示部は、前記指示によって前記ユーザの顔向きに変化が生じたとき、前記白飛び領域の割合が前記変化前より前記変化後の方が小さい場合には、前記指示を継続する、
請求項４に記載の顔画像選択装置。 
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、人の顔画像を選択する顔画像選択装置に関する。
【背景技術】
【０００２】
個人認証の方法として、顔画像に基づき認証する顔認証技術が普及している。顔認証技術では、認証に用いるための顔画像をあらかじめ登録しておくことが必要となる。
【０００３】
顔認証技術としては、顔画像中において目尻、口角等の特徴点を抽出し、特徴点間の距離、特徴点を含む周辺領域の画像特徴量等に基づいて認証することが一般的である。従って、顔認証に用いられる顔画像としては、顔の特徴点が明瞭な画像が望ましい。特徴点が明瞭な画像は、顔画像を撮影するカメラに対してユーザの顔が適切な向きを向いているときに得られやすい。適切な向きを向いた顔画像を撮影する技術として、例えば特許文献１に開示された技術がある。
【０００４】
特許文献１には、以下のような技術が開示されている。人物の顔画像を解析して特徴点として目と瞳を検出し、検出された目と瞳に基づいて算出された目位置パラメータと瞳位置パラメータとの差を目標値と比較して顔の向きを判定する。撮影時に人物の顔の向きを判定し、撮影不可と判定したときは人物に矯正内容を伝達することにより、適正な向きの顔写真が得られる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−２６８２４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、顔認証に用いる顔画像を撮影する際、例えばユーザがメガネを掛けている場合に、光源の位置によっては、反射によりメガネに対応する位置が白く光った状態（メガネに対応する位置の画素値が飽和した白飛びの状態）の顔画像が撮影されることがある。このような顔画像では正確な顔認証が困難である。
【０００７】
本開示の目的は、複数枚撮影した顔認証用の画像の中から、メガネの反射の影響が小さい顔画像を選択することができる顔画像選択装置を提供することである。
【課題を解決するための手段】
【０００８】
本開示の顔画像選択装置は、撮像装置で撮影されたユーザの顔画像における顔向きの角度を示す顔向き情報を取得する顔向き情報取得部と、前記顔画像における、メガネの反射による白飛びの度合いを示す白飛び情報を生成する白飛び情報生成部と、前記顔向き情報と前記白飛び情報とが所定の条件を満たす顔画像を選択する顔画像選択部と、を有する。
【発明の効果】
【０００９】
本発明によれば、複数枚撮影した顔認証用の画像の中から、メガネの反射の影響が小さい顔画像を選択することができる。
【図面の簡単な説明】
【００１０】
【図１】本開示の実施の形態に係る顔画像選択装置の構成例を示す図
【図２】顔向き角度について説明するための図
【図３】白飛び情報について説明するための図
【図４】顔向き指示部により指示される所定角度範囲について説明するための図
【図５】顔画像選択装置の顔画像選択処理の第１の動作例について説明するためのフローチャート
【図６】顔画像選択装置の顔画像選択処理の第１の動作例について説明するためのフローチャート
【図７】顔画像選択装置の顔画像選択処理の第２の動作例について説明するためのフローチャート
【図８】顔画像選択装置の各機能を、プログラムにより実現するコンピュータのハードウェア構成を例示した図
【発明を実施するための形態】
【００１１】
以下、本開示の各実施の形態について図面を参照して詳細に説明する。ただし、必要以上に詳細な説明、例えば、既によく知られた事項の詳細説明や実質的に同一の構成に対する重複説明等は省略する場合がある。なお、以下の説明および参照される図面は、当業者が本開示を理解するために提供されるものであって、本開示の請求の範囲を限定するためのものではない。
【００１２】
［構成例］
図１は、本開示の実施の形態に係る顔画像選択装置１０の構成例を示す図である。図１に示すように、顔画像選択装置１０は、顔画像取得部１１、顔向き推定部１２、白飛び情報生成部１３、評価関数値算出部１４、顔画像選択部１５、顔向き指示部１６、及び処理制御部１７を有する。
【００１３】
顔画像取得部１１は、顔画像選択装置１０の外部に設けられたカメラ１００がユーザの顔を撮影して生成した顔画像を取得する。カメラ１００は撮像素子（図示せず）に入射した可視光や赤外光に基づいて画像を撮影する。カメラ１００は、本開示の撮像装置の一例である。なお、カメラ１００は、カメラ１００の近傍に設けられた光源から発せられる赤外光等の反射光に基づいて画像を撮影してもよい。また、カメラ１００が顔画像選択装置１０の外部に設けられるのではなく、顔画像選択装置１０にカメラが内蔵されていてもよい。
【００１４】
顔向き推定部１２は、顔画像取得部１１が取得した顔画像に写っているユーザの顔を抽出し、ユーザの顔が向いている方向（以下、顔向きと記載する）を推定する。顔向き推定部１２が顔画像に基づいてユーザの顔向きを推定する方法としては、例えば機械学習による方法がある。機械学習による顔向き推定方法とは、顔画像と当該顔画像に写っている顔の顔向きを大量に学習させることによって得られたモデルに基づいて画像内に写ったユーザの顔向きを推定する方法である。
【００１５】
また、顔向き推定部１２は、推定結果に基づいて、顔画像における顔が向いている方向に関する情報である顔向き情報を取得する。顔向き情報とは、例えばユーザがカメラ１００に正対している状態の顔向きを基準とした場合の、画像に写る顔の向きを例えば角度（以下、顔向き角度と記載する）で示す情報である。顔向き推定部１２は、本開示の顔向き情報取得部の一例である。
【００１６】
図２は、顔向き角度について説明するための図である。図２は、ユーザの頭とカメラ１００との位置関係を、ユーザの頭上から俯瞰した図である。図２においては、「顔向き」と示した矢印の方向がユーザの顔が向いている方向である。この方向と、ユーザから見てカメラ１００がある方向とのなす角が顔向き角度である。
【００１７】
なお、図２においては、ユーザの頭の上下方向を軸とした左右回転方向（ヨー方向）における顔向き角度のみ考慮されているが、本開示はこれに限定されない。本開示の顔向き角度としては、例えばユーザの頭の左右方向を軸とした上下回転方向（ピッチ方向）における顔向き角度、またはユーザの頭の前後方向を軸とした左右回転方向（ロール方向）における顔向き角度であってもよい。
【００１８】
白飛び情報生成部１３は、顔画像取得部１１が取得した顔画像における白飛びの度合いを示す白飛び情報を生成する。なお、白飛びとは、メガネ等により反射した光がカメラ１００の撮像素子に入射することで、撮像された画像において真っ白（輝度値が最大付近）の画素が生じ、その部分の階調が失われる現象である。また、白飛びの度合いとは、例えば顔画像を構成する全画素の内、輝度値が最大値付近の所定値以上である画素が占める割合である。例えば２５６階調の場合、輝度が２５５（最大）である画素が白飛びしていると判断されればよい。また、白飛びと判断される輝度に幅を持たせ、例えば輝度が２４５〜２５５である画素を白飛びと判断してもよい。
【００１９】
図３は、白飛び情報について説明するための図である。図３に示すように顔画像の中に白飛び領域が存在する場合、白飛び情報生成部１３は、白飛び領域が占める画素数を顔画像全体の画素数で除して白飛び領域が占める割合（以下、白飛び割合と記載する）を算出することで、算出した白飛び割合を含む白飛び情報を生成する。
【００２０】
メガネに反射した光によって白飛びが発生した顔画像では、目や瞳に対応する画素の階調が失われることがある。このため、上記説明した顔向き推定部１２に用いられる顔向き推定方法は、目や瞳に対応する特徴点を用いない方法であることが望ましい。
【００２１】
評価関数値算出部１４は、顔画像取得部１１が取得した顔画像が、顔認証に用いられる顔画像としてどの程度適切であるかを示す評価関数を定義する。評価関数は、顔向き推定部１２が推定した顔向き角度に関する顔向き情報と、白飛び情報生成部１３が生成した白飛びに関する白飛び情報と、をパラメータとして定義される関数である。評価関数値算出部１４は、本開示の評価値算出部の一例である。
【００２２】
具体的には、評価関数ｆｖは例えば、以下の式（１）で与えられる。
ｆｖ＝Ａ×｜ｄｆ｜／３６０°＋Ｂ×ｐｗ      （１）
【００２３】
ただし、式（１）において、ｄｆはカメラ方向を０とした場合の顔向き角度、ｐｗは顔画像全体の画素数に対する白飛び画素数の割合である。また、係数Ａ及びＢは重み付けのための係数である。このような評価関数ｆｖの値は、例えばユーザの顔が完全にカメラ１００に正対しており（｜ｄｆ｜＝０）、かつ白飛び画素数が０（ｐｗ＝０）である場合に最小（０）となる。すなわち、評価関数ｆｖの値が０に近いほど、その顔画像は、より顔認証に適切な画像である。なお、評価関数ｆｖの値は、本開示の評価値の一例である。
【００２４】
顔画像選択部１５は、複数の顔画像から、顔向き情報と白飛び情報とが所定の条件を満たす顔画像を選択し、外部に出力する。外部とは、例えば顔画像選択装置１０が撮影した顔画像を用いて顔認証する顔認証装置等である。
【００２５】
顔向き情報と白飛び情報とが所定の条件を満たす顔画像とは、具体的には、上記説明した評価関数の値ができるだけ小さい顔画像である。評価関数の値ができるだけ小さい顔画像とは、カメラ１００の方向から顔向きがそれほど離れておらず、かつ白飛び画素数の割合がある程度小さい顔画像である。上記説明したように、評価関数ｆｖの値は、例えばユーザの顔が完全にカメラ１００に正対しており（ｄｆ＝０）、かつ白飛び画素数が０（ｐｗ＝０）である場合に最小（０）となり、この値を示す顔画像が顔認証に最も適した画像である。
【００２６】
しかしながら、例えば光源がカメラ１００の近くに設けられている場合には、ユーザの顔がカメラ１００に正対すればするほど顔画像において白飛びが生じやすい。このため、顔向き角度ｄｆを小さくしようとすると白飛び割合ｐｗが大きくなり、白飛び割合ｐｗを小さくしようとすると顔向き角度ｄｆが大きくなる。このように顔向き角度ｄｆと白飛び割合ｐｗとがトレードオフの関係にある場合には、評価関数ｆｖの値を０にすることは困難である。このような場合、顔画像選択部１５は、評価関数ｆｖの値ができるだけ０に近い顔画像を選択する。
【００２７】
顔向き指示部１６は、顔向き推定部１２が生成した顔向き情報に基づいて、ユーザに対して顔向きを指示する。顔向き指示部１６は、例えば音声等によってユーザに指示する。これは、例えば小型ディスプレイ等の表示装置を用いて指示すると、ユーザの目が表示装置の方を向いてしまい、顔認証に適切な画像が得られにくいからである。従って、本開示では、ユーザの視線や顔向きに影響を及ぼさない指示方法であればよく、必ずしも音声を用いなくともよい。具体的には、例えばユーザの左右に光源を設け、向かせたい方向の光源を発光させる等の方法を採用してもよい。
【００２８】
顔向き指示部１６は、ユーザに対して、カメラ１００と顔を正対させるように指示する。より具体的には、顔向き指示部１６は、ユーザに対して、顔向き角度が所定角度範囲内に収まるように指示する。
【００２９】
図４は、顔向き指示部１６により指示される所定角度範囲について説明するための図である。図４に示すように、所定角度範囲は、ユーザの顔がカメラ１００に正対する方向を中心とした角度範囲である。すなわち、顔向き角度が所定角度範囲内に収まっていれば、ユーザの顔は概ねカメラに正対しており、カメラ１００によって顔認証に適切な画像が撮影可能であることになる。なお、所定角度範囲の具体例としては、例えばカメラ１００方向を０°として±５°とすればよい。
【００３０】
処理制御部１７は、顔画像選択装置１０の上記説明した各構成における処理について全体的に制御する。
【００３１】
［第１の動作例］
次に、上記説明した構成を有する顔画像選択装置１０の顔画像選択処理について説明する。図５及び図６は、顔画像選択装置１０の顔画像選択処理の第１の動作例について説明するためのフローチャートである。
【００３２】
図５において、ステップＳ１からステップＳ６までの処理は、ステップＳ７においてＹＥＳが選択されるまで繰り返される。
【００３３】
まず、顔向き指示部１６は、ユーザに対して、顔向きが所定角度範囲（図４参照）内となるように指示する（ステップＳ１）。そして、顔画像取得部１１は、カメラ１００が撮影したユーザの顔画像を取得する（ステップＳ２）。なお、ステップＳ２において顔画像取得部１１は、ステップＳ１の指示毎に１枚の顔画像を取得してもよいし、カメラ１００が連続して複数の顔画像を撮影し続けている場合には、一度に複数枚の顔画像を取得してもよい。
【００３４】
顔向き推定部１２は、取得された顔画像における顔向き角度を推定し、顔向き情報を生成する（ステップＳ３）。顔向き推定部１２は、推定された顔向き角度が所定角度範囲内であるか否かを判定する（ステップＳ４）。顔向き角度が所定角度範囲内であった場合（ステップＳ４：ＹＥＳ）、処理はステップＳ５に進み、そうでない場合（ステップＳ４：ＮＯ）、処理はステップＳ１に戻る。
【００３５】
ステップＳ４までの処理により、顔向き角度が確実に所定角度範囲内に入っている顔画像が得られる。次に、白飛び情報生成部１３は、顔画像の全画素数に対する白飛び画素数の割合を算出し、白飛び情報を生成する（ステップＳ５）。さらに、評価関数値算出部１４は、顔向き情報と白飛び情報とに基づいて定義された評価関数値を算出する（ステップＳ６）。
【００３６】
そして、処理制御部１７は、ステップＳ１からステップＳ６までの処理が、既に規定回数繰り返されたか否かを判定する（ステップＳ７）。規定回数については特に限定しないが、例えば３回程度の回数である。既に規定回数繰り返されていた場合（ステップＳ７：ＹＥＳ）、処理は図６のステップＳ１１に進む（図５及び図６のＲ１を参照）。一方、規定回数繰り返されていなかった場合（ステップＳ７：ＮＯ）、処理はステップＳ１に戻る。
【００３７】
このようにステップＳ１からステップＳ６までの処理が規定回数繰り返される間、顔向きが所定角度範囲内であるとともに、白飛び情報が生成され、評価関数値が算出された顔画像が複数枚得られる。個々の顔画像は、例えば図１に図示しない記憶部等にそれぞれ格納される。この記憶部は、顔画像選択装置１０の外部に設けられてもよいし、顔画像選択装置１０に内蔵されていてもよい。このような処理により、それぞれ顔向きや白飛び度合いが少しずつ異なる複数の顔画像が得られる。
【００３８】
処理制御部１７は、これらの複数枚の顔画像のうち、評価関数値が所定の閾値以下である顔画像があるか否かを判定する（ステップＳ１１）。所定の閾値は、顔認証に適切な顔画像であるか否かを判定するための閾値であり、顔画像選択装置１０が選択した顔画像を用いて顔認証する顔認証装置の認証精度によって決定される値である。評価関数値が所定の閾値以下である画像がない場合（ステップＳ１１：ＮＯ）、処理はステップＳ１２に進み、評価関数値が所定の閾値以下である画像が存在する場合（ステップＳ１１：ＹＥＳ）、処理はステップＳ１４に進む。
【００３９】
処理制御部１７は、顔画像選択装置１０の各構成に対して、ステップＳ１からステップＳ６の処理が繰り返される回数である規定回数を増大させる、及び／または、顔向き指示部１６に対して、所定角度範囲を増大させる。そして、処理制御部１７は、規定回数及び／または所定角度範囲を増大させた結果、それぞれの値が所定の限界値以上となったか否かを判定する（ステップＳ１３）。規定回数及び／または所定角度範囲が所定の限界値以上となった場合（ステップＳ１３：ＹＥＳ）、処理はステップＳ１４に進み、そうでない場合（ステップＳ１３：ＮＯ）、図５のステップＳ１に戻る（図５及び図６のＲ２を参照）。
【００４０】
なお、規定回数を増大させた場合、図５におけるステップＳ１からステップＳ６までの処理が繰り返される回数が増大する。この場合、単純に試行回数が増えるので、より適切な（評価関数値が小さい）顔画像が取得される可能性が高くなる。また、所定角度範囲を増大させた場合、図５のステップＳ１における顔向き指示で、顔向き指示部１６がユーザに対して顔を向けさせる範囲が広くなる。この場合、ステップＳ２において取得される顔画像の顔向きはカメラ１００の方向から多少離れた方向となるが、それまでとは顔向きが異なる方向であるため、白飛び割合が改善される可能性がある。このため、より適切な顔画像が取得される可能性が高くなる。そして、規定回数と所定角度範囲とを同時に増大させることにより、適切な顔画像が取得される可能性をさらに高めることができる。
【００４１】
なお、ステップＳ１２において、処理制御部１７は、必ずしも規定回数と所定角度範囲の両方を増大させずともよく、どちらか片方のみ増大させてもよい。
【００４２】
また、ステップＳ１３の判定に用いられる限界値とは、あらかじめ定められた規定回数及び／または所定角度範囲の最大値である。規定回数の初期値が３回である場合、例えば１度の増大分を２回とし、限界値を９回とすればよい。すなわち、１度増大された場合の規定回数は５回であり、２度増大された場合は７回であり、さらに３度増大された場合は９回となる。また、所定角度範囲の初期値が±５°である場合、例えば１度の増大分を±５°とし、限界値を±１５°とすればよい。すなわち、１度増大された場合の所定角度範囲は±１０°であり、さらに２度増大された場合は±１５°となる。このように限界値をあらかじめ定めておくことにより、処理に時間が掛かりすぎたり、カメラ１００に全く正対していない顔画像が選択されたり、といった事態を防止することができる。なお、上記例示した規定回数及び所定角度範囲の初期値及び限界値は一例であり、本開示はこれに限定されない。
【００４３】
そして顔画像選択部１５は、ここまでの処理で得られた複数の顔画像の内、評価関数値が最も小さい顔画像を選択する（ステップＳ１４）。評価関数値が最も小さい顔画像とは、上記説明したように、顔がカメラ１００に正対しており、かつ白飛びが少ない、顔認証に適した画像である。なお、ステップＳ１４において、顔画像選択部１５は、評価関数値が最も小さい顔画像を１枚のみ選択するのではなく、あらかじめ決められた枚数を選択してもよいし、評価関数値が所定の閾値以下である顔画像を全て選択してもよい。
【００４４】
以上説明したように、顔画像選択装置１０の第１の動作例によれば、ユーザの顔向き角度が確実に所定角度範囲内に入っている顔画像が取得される。そして、顔画像に含まれる白飛び画素数の割合を含む白飛び情報及び顔向き角度を含む顔向き情報に基づいて評価関数値が算出され、評価関数値が最も小さい顔画像が選択されることにより、顔認証に適切な顔画像が選択される。さらに、顔画像選択装置１０に求められる顔画像の評価関数値が所定の閾値を満たさない場合、繰り返し回数や顔向き角度の範囲等の条件を変更して処理がやり直されるため、適切な顔画像を取得できる可能性が高まる。
【００４５】
［第２の動作例］
次に、顔画像選択装置１０の第２の動作例について説明する。図７は、顔画像選択装置１０の顔画像選択処理の第２の動作例について説明するためのフローチャートである。
【００４６】
まず、顔向き指示部１６は、ユーザに対して、顔向きが所定角度範囲（図４参照）内となるように指示する（ステップＳ２１）。そして、顔画像取得部１１は、カメラ１００が撮影したユーザの顔画像を連続的に取得する（ステップＳ２２）。第２の動作例では、カメラ１００が所定の微少時間間隔で連続して撮影することが想定されており、ステップＳ２２では、顔画像取得部１１は、ステップＳ２１の指示により顔向きを変化させている最中のユーザの顔画像を連続的に取得することができる。
【００４７】
顔向き推定部１２は、連続的に取得される全ての顔画像において、顔向き角度を推定し、顔向き情報を生成する（ステップＳ２３）。顔向き推定部１２は、それぞれの画像において、推定された顔向き角度が所定角度範囲内であるか否かを判定する（ステップＳ２４）。顔向き角度が所定角度範囲内である顔画像については（ステップＳ２４：ＹＥＳ）、処理がステップＳ２５に進められ、そうでない場合（ステップＳ２４：ＮＯ）、ステップＳ２１に戻される。
【００４８】
ステップＳ２４までの処理により、顔向き角度が確実に所定角度範囲内に入っている顔画像が複数枚得られる。次に、白飛び情報生成部１３は、それぞれの顔画像において、顔画像の全画素数に対する白飛び画素数の割合を算出し、白飛び情報を生成する（ステップＳ２５）。白飛び情報生成部１３は、それぞれの顔画像において、白飛び割合が所定割合範囲内であるか否かを判定する（ステップＳ２６）。白飛び割合が所定割合範囲内ではない顔画像については（ステップＳ２６：ＮＯ）、処理がステップＳ２７に進められ、そうでない場合（ステップＳ２６：ＹＥＳ）、処理がステップＳ２１０に進められる。
【００４９】
白飛び割合が所定割合範囲内ではない場合、現在処理中の顔画像は、顔画像選択装置１０に求められる顔画像の適切さを満たしていないことになる。このため、以下のステップＳ２７からステップＳ２９において、より後に取得される顔画像の白飛び割合が改善される。白飛び情報生成部１３は、連続した複数の顔画像のうち、現在処理中の顔画像における白飛び割合が、直前に処理した顔画像の白飛び割合より減少しているか否かを判定する（ステップＳ２７）。現在処理中の顔画像の方が直前に処理した顔画像より白飛び割合が減少している場合（ステップＳ２７：ＹＥＳ）、処理はステップＳ２８に進み、そうでない場合（ステップＳ２７：ＮＯ）、処理はステップＳ２９に進む。
【００５０】
現在処理中の顔画像における白飛び割合が直前に処理した顔画像の白飛び割合より減少している場合、現状の顔向き指示（ステップＳ２１）によって白飛び割合が徐々に改善されていることになる。このため、顔向き指示部１６は、現在処理中の顔画像が撮影された時点での顔向き指示をその後も継続する（ステップＳ２８）。そして、処理はステップＳ２２に戻る。
【００５１】
一方、現在処理中の顔画像における白飛び割合が直前に処理した顔画像の白飛び割合より減少していない場合、現状の顔向き指示（ステップＳ２１）によって白飛び割合が悪化していることになる。このため、顔向き指示部１６は、直前に処理された顔画像が撮影された時点での顔向きの指示方向に戻して改めて指示する（ステップＳ２９）。そして、処理はステップＳ２２に戻る。これにより、白飛び割合のそれ以上の増加を防止することができる。
【００５２】
このように、ステップＳ２７からステップＳ２９の処理によって、より後に取得される顔画像の白飛び割合を改善することができる。
【００５３】
ステップＳ２６において、現在処理中の顔画像における白飛び割合が所定割合範囲であると判定された場合、その画像は顔画像選択装置１０に求められる顔画像の適切さを満たしていると考えられる。このため、顔画像選択部１５は、その時点で最新の顔画像、すなわち白飛び割合が所定割合範囲である顔画像を選択する（ステップＳ２１０）。これにより、顔画像選択部１５は、顔認証に適切な顔画像を選択することができる。
【００５４】
以上説明したように、顔画像選択装置１０の第２の動作例によれば、顔向き指示によって顔向きを変化させている最中のユーザの顔画像が連続的に取得される。そして、顔向き角度が所定角度範囲内であるか否か、及び白飛び割合が所定割合範囲内であるか否かが判定され、いずれも範囲内である顔画像が顔認証用の画像として選択される。一方、白飛び割合が所定割合範囲内ではない顔画像が得られた場合には、それより後に得られる顔画像の白飛び割合を改善する。具体的には、直前に処理された顔画像と処理中の顔画像との白飛び割合の変化に基づいて、顔向き指示における指示方向を変化させることで、それより後に得られる顔画像の白飛び割合が改善される。
【００５５】
このように、第２の動作例では、得られた顔画像における白飛び割合に基づいて、白飛び割合が改善されるように顔向き指示における指示方向が変化する。これにより、顔認証に適切な画像を速やかに選択することができる。
【００５６】
＜変形例＞
以上、図面を参照しながら各種の実施形態について説明したが、本開示はかかる例に限定されない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例または修正例に想到しうることは明らかであり、それらについても当然に本開示の技術的範囲に属するものと了解される。また、開示の趣旨を逸脱しない範囲において、上記実施の形態における各構成要素は任意に組み合わせてられてもよい。
【００５７】
上記説明した実施の形態において、カメラ１００は顔画像選択装置１０の外部に設けられているとしたが、本開示はこれに限定されない。カメラ１００は顔画像選択装置１０が有していてもよい。
【００５８】
上記した実施の形態において、顔向き推定部１２はユーザの顔向きを推定し、その結果に基づいて顔向き情報を生成していたが、本開示はこれに限定されない。顔向き推定部１２は、既に生成された顔向き情報を取得するようにしてもよい。
【００５９】
＜作用・効果＞
本開示の顔画像選択装置１０によれば、カメラ１００で撮影されたユーザの顔画像における顔向きの角度を示す顔向き情報を取得する顔向き推定部１２と、顔画像における、メガネの反射による白飛び領域の割合を示す白飛び情報を生成する白飛び情報生成部１３と、顔向き情報と白飛び情報とが所定の条件を満たす顔画像を選択する顔画像選択部１５と、を有する。
【００６０】
また、本開示の顔画像選択装置１０によれば、顔画像選択部１５は、顔向き情報と白飛び情報とを用いて定義される評価関数の値に基づいて、複数の顔画像の中から、顔向き情報と白飛び情報とが所定の条件を満たす顔画像を選択する。
【００６１】
このような構成により、複数の顔画像の中から、できるだけ顔向きがカメラ１００に正対しており、かつ白飛びができるだけ少ない、顔認証に適切な顔画像を選択することができる。
【００６２】
さらに、本開示の顔画像選択装置１０は、評価関数値が所定の閾値以下ではない場合には、繰り返し回数や顔向き角度の範囲等の条件を変更して処理をやり直す。これにより、適切な顔画像を取得できる可能性を高めることができる。
【００６３】
また、顔向き指示部１６は、顔向きの角度が所定の角度範囲内であるように指示し、指示によってユーザの顔向きに変化が生じたとき、白飛び領域の割合が変化前より変化後の方が大きい場合には、ユーザに対して顔を変化前の方向に向けさせるように改めて指示する。
【００６４】
このような構成により、得られた顔画像における白飛び割合に基づいて、白飛び割合が改善されるように顔向き指示における指示方向が変化する。これにより、顔認証に適切な画像を速やかに選択することができる。
【００６５】
＜コンピュータの例＞
図８は、上述した実施の形態における顔画像選択装置１０の各機能を、プログラムにより実現するコンピュータのハードウェア構成を例示した図である。
【００６６】
図８に示すように、コンピュータ２１００は、入力ボタン、タッチパッドなどの入力装置２１０１、ディスプレイ、スピーカなどの出力装置２１０２、ＣＰＵ（Central Processing Unit）２１０３、ＲＯＭ（Read Only Memory）２１０４、ＲＡＭ（Random Access Memory）２１０５を備える。また、コンピュータ２１００は、ハードディスク装置、ＳＳＤ（Solid State Drive ）などの記憶装置２１０６、ＤＶＤ−ＲＯＭ（Digital Versatile Disk Read Only Memory）、ＵＳＢ（Universal Serial Bus）メモリなどの記録媒体から情報を読み取る読取装置２１０７、ネットワークを介して通信する送受信装置２１０８を備える。上述した各部は、バス２１０９により接続される。
【００６７】
そして、読取装置２１０７は、上記各部の機能を実現するためのプログラムを記録した記録媒体からそのプログラムを読み取り、記憶装置２１０６に記憶させる。あるいは、送受信装置２１０８が、ネットワークに接続されたサーバ装置と通信し、サーバ装置からダウンロードした上記各部の機能を実現するためのプログラムを記憶装置２１０６に記憶させる。
【００６８】
そして、ＣＰＵ２１０３が、記憶装置２１０６に記憶されたプログラムをＲＡＭ２１０５にコピーし、そのプログラムに含まれる命令をＲＡＭ２１０５から順次読み出して実行することにより、上記各部の機能が実現される。また、プログラムを実行する際、ＲＡＭ２１０５または記憶装置２１０６には、各実施の形態で述べた各種処理で得られた情報が記憶され、適宜利用される。
【００６９】
＜本開示のまとめ＞
本開示における顔画像選択装置は、撮像装置で撮影されたユーザの顔画像における顔向きの角度を示す顔向き情報を取得する顔向き情報取得部と、前記顔画像における、白飛びの度合いを示す白飛び情報を生成する白飛び情報生成部と、前記顔向き情報と前記白飛び情報とが所定の条件を満たす顔画像を選択する顔画像選択部と、を有する。
【００７０】
本開示における顔画像選択装置において、前記顔画像選択部は、前記顔向き情報と前記白飛び情報とを用いて定義される関数に基づいて、複数の顔画像の中から、前記顔向き情報と前記白飛び情報とが前記所定の条件を満たす前記顔画像を選択する。
【００７１】
本開示における顔画像選択装置において、前記顔向き情報と前記白飛び情報とを用いて、顔認証に用いられる顔画像としての適切の度合いを示す評価値を前記顔画像毎に算出する評価値算出部をさらに有し、前記顔画像選択部は、前記評価値が所定の範囲内にある顔画像を前記所定の条件を満たす画像として選択する。
【００７２】
本開示における顔画像選択装置において、前記ユーザに対して、前記顔向きの角度が前記撮像装置の方向を基準とした所定の角度範囲内に収まるように指示する顔向き指示部をさらに有する。
【００７３】
本開示における顔画像選択装置において、前記顔向き指示部は、前記顔向き情報と前記白飛び情報とが前記所定の条件を満たさない場合には、前記所定の条件を満たすように再度指示する。
【００７４】
本開示における顔画像選択装置において、前記顔向き指示部による前記顔向きの角度の指示と、前記顔向き情報取得部による前記顔向き情報の取得と、前記白飛び情報生成部による前記白飛び情報の生成と、前記評価値算出部による前記評価値の算出と、を含む処理を規定回数に至るまで繰り返させる処理制御部をさらに有する。
【００７５】
本開示における顔画像選択装置において、前記処理制御部は、前記評価値が前記所定の範囲内にある顔画像が存在するか否かを判定し、存在しないと判定した場合には、判定後の前記処理における前記規定回数及び／または前記所定の角度範囲を増大させる。
【００７６】
本開示における顔画像選択装置において、前記顔向き指示部は、前記指示によって前記ユーザの顔向きに変化が生じたとき、前記白飛び領域の割合が前記変化前より前記変化後の方が大きい場合には、前記ユーザに対して顔を前記変化前の方向に向けさせるように改めて指示する。
【００７７】
本開示における顔画像選択装置において、前記顔向き指示部は、前記指示によって前記ユーザの顔向きに変化が生じたとき、前記白飛び領域の割合が前記変化前より前記変化後の方が小さい場合には、前記指示を継続する。
【産業上の利用可能性】
【００７８】
本開示は、顔認証に適切な顔画像を選択する顔画像選択装置に有用である。
【符号の説明】
【００７９】
１０  顔画像選択装置
１１  顔画像取得部
１２  顔向き推定部
１３  白飛び情報生成部
１４  評価関数値算出部
１５  顔画像選択部
１６  顔向き指示部
１７  処理制御部
【図１】
2020009291.tif 000003
【図２】
2020009291.tif 000004
【図３】
2020009291.tif 000005
【図４】
2020009291.tif 000006
【図５】
2020009291.tif 000007
【図６】
2020009291.tif 000008
【図７】
2020009291.tif 000009
【図８】
2020009291.tif 000010