(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024095688
(43)【公開日】2024-07-10
(54)【発明の名称】生体検知装置、制御方法、及びプログラム
(51)【国際特許分類】
G06V 40/40 20220101AFI20240703BHJP
G06T 7/00 20170101ALI20240703BHJP
G09G 5/00 20060101ALI20240703BHJP
G09G 5/02 20060101ALI20240703BHJP
G09G 5/10 20060101ALI20240703BHJP
H04N 7/18 20060101ALI20240703BHJP
【FI】
G06V40/40
G06T7/00 660A
G09G5/00 550C
G09G5/02 B
G09G5/10 B
H04N7/18 U
【審査請求】有
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2024043402
(22)【出願日】2024-03-19
(62)【分割の表示】P 2022555237の分割
【原出願日】2020-10-09
(71)【出願人】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100103894
【弁理士】
【氏名又は名称】家入 健
(72)【発明者】
【氏名】高橋 巧一
(72)【発明者】
【氏名】宮本 孝道
【テーマコード(参考)】
5B043
5C054
5C182
5L096
【Fターム(参考)】
5B043AA10
5B043BA04
5B043CA03
5B043DA05
5B043HA02
5B043HA05
5C054CA04
5C054CA05
5C054CB04
5C054CC02
5C054FC00
5C054HA05
5C182AB08
5C182AB15
5C182AC02
5C182AC43
5C182BA14
5C182BA45
5C182BA68
5C182BA75
5C182CA01
5C182CA02
5C182CA21
5C182CC21
5L096AA02
5L096AA06
5L096BA18
5L096CA04
5L096CA17
5L096CA25
5L096DA01
5L096DA02
5L096EA39
5L096FA02
5L096FA32
5L096FA59
5L096FA64
5L096FA66
5L096FA67
5L096FA69
5L096GA51
5L096HA05
5L096HA11
5L096JA11
(57)【要約】 (修正有)
【課題】3Dマスク等を利用したなりすましを防ぐことができる生体検知装置、制御方法及びプログラムを提供する。
【解決手段】生体検知装置2000は、端末60のディスプレイ装置20に表示させる表示画面30を制御し、表示画面が表示されている間に対象を撮像することで生成された撮像画像40-1、40-2を取得し、撮像画像を用いて対象が生体であるか否かを判定する。表示画面30は、表示が互いに異なる複数の領域32を有する。制御は、ディスプレイ装置20の周囲の環境光の強さに応じて、複数の領域における表示のコントラストを変化させる。
【選択図】
図1
【特許請求の範囲】
【請求項1】
ディスプレイ装置に表示させる表示画面を制御する表示制御部と、
前記表示画面が表示されている間に対象を撮像することで生成された撮像画像を取得する取得部と、
前記撮像画像を用いて前記対象が生体であるか否かを判定する生体検知部と、を備え、
前記表示画面は表示が互いに異なる複数の領域を有し、
前記表示制御部は、前記ディスプレイ装置の周囲の環境光の強さに応じて、前記複数の領域における表示のコントラストを変化させる生体検知装置。
【請求項2】
前記表示制御部は、前記環境光の強さが強くなるにつれて前記コントラストを高くなるように表示を変更する請求項1に記載の生体検知装置。
【請求項3】
前記表示制御部は、前記環境光の強さが弱くなるにつれて前記コントラストを低くなるように表示を変更する請求項1または2に記載の生体検知装置。
【請求項4】
前記表示制御部は、前記複数の領域において、一方の領域よりも明るい他方の領域の表示をより明るくする、又は前記複数の領域において、一方の領域よりも暗い他方の領域の表示をより暗くすることで前記コントラストを高くする請求項2に記載の生体検知装置。
【請求項5】
前記表示画面は、少なくとも第1表示画面と、前記第1表示画面とは異なる第2表示画面を含み、
前記撮像画像は、前記第1表示画面及び前記第2表示画面がそれぞれ表示されている間に前記対象を撮像することで生成された画像である請求項1から請求項4いずれか一項に記載の生体検知装置。
【請求項6】
前記表示制御部は、前記複数の領域の境界を表す直線の位置を、前記直線の延長線上にカメラが位置するように決定する請求項5に記載の生体検知装置。
【請求項7】
前記表示制御部は、前記複数の領域のうち、少なくとも2つの前記領域が、互いに異なる色の表示、互いに異なる明るさの表示、又は互いに異なる文字、記号、若しくは図形を含むように表示を制御する請求項1から請求項6いずれか一項に記載の生体検知装置。
【請求項8】
表示が異なる複数の領域を含む表示画面をディスプレイ装置に表示させる表示制御ステップと、
前記表示画面が表示されている間に対象を撮像することで生成された撮像画像を取得する取得ステップと、
前記撮像画像を用いて前記対象が生体であるか否かを判定する生体検知ステップと、
前記ディスプレイ装置の周囲の環境光の強さに応じて、前記複数の領域における表示のコントラストを変化させるステップと、をコンピュータに実行させるプログラム。
【請求項9】
コンピュータによって実行される制御方法であって、
表示が異なる複数の領域を含む表示画面をディスプレイ装置に表示させる表示制御ステップと、
前記表示画面が表示されている間に対象を撮像することで生成された撮像画像を取得する取得ステップと、
前記撮像画像を用いて前記対象が生体であるか否かを判定する生体検知ステップと、
前記ディスプレイ装置の周囲の環境光の強さに応じて、前記複数の領域における表示のコントラストを変化させるステップと、を有する制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、画像を用いた生体検知に関する。
【背景技術】
【0002】
カメラを利用して生体検知を行う技術が開発されている。ここでいう生体検知とは、カメラによって撮像された物体が生体であるか否かを判定することを意味する。例えば生体検知は、写真を利用したなりすましの防止などに利用される。
【0003】
カメラを利用した生体検知に関する先行技術文献として、例えば特許文献1がある。特許文献1のシステムは、照明灯を制御して照明環境を変化させることにより、互いに異なる照明環境それぞれで撮像された人物の画像を取得し、これらの画像を利用して、撮像された物体が人物であるか否かを判定する技術を開示している。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
この開示は、特許文献1に開示された技術を改善することを目的とする。
【課題を解決するための手段】
【0006】
この開示の生体検知装置は、ディスプレイ装置に表示させる表示画面を制御する表示制御部と、前記表示画面が表示されている間に対象を撮像することで生成された撮像画像を取得する取得部と、前記撮像画像を用いて前記対象が生体であるか否かを判定する生体検知部と、を備える。前記表示画面は表示が互いに異なる複数の領域を有する。前記表示制御部は、前記ディスプレイ装置の周囲の環境光の強さに応じて、前記複数の領域における表示のコントラストを変化させる。
【0007】
この開示のプログラムは、表示が異なる複数の領域を含む表示画面をディスプレイ装置に表示させる表示制御ステップと、前記表示画面が表示されている間に対象を撮像することで生成された撮像画像を取得する取得ステップと、前記撮像画像を用いて前記対象が生体であるか否かを判定する生体検知ステップと、前記ディスプレイ装置の周囲の環境光の強さに応じて、前記複数の領域における表示のコントラストを変化させるステップと、をコンピュータに実行させる。
【0008】
この開示の制御方法は、コンピュータによって実行される。当該制御方法は、表示が異なる複数の領域を含む表示画面をディスプレイ装置に表示させる表示制御ステップと、前記表示画面が表示されている間に対象を撮像することで生成された撮像画像を取得する取得ステップと、前記撮像画像を用いて前記対象が生体であるか否かを判定する生体検知ステップと、前記ディスプレイ装置の周囲の環境光の強さに応じて、前記複数の領域における表示のコントラストを変化させるステップと、を有する。
【図面の簡単な説明】
【0009】
【
図1】実施形態1の生体検知装置の動作の概要を例示する図である。
【
図2】実施形態1の生体検知装置の機能構成を例示するブロック図である。
【
図3】実施形態1の生体検知装置を実現するコンピュータのハードウエア構成を例示するブロック図である。
【
図4】実施形態1の生体検知装置によって実行される処理の流れを例示するフローチャートである。
【
図5】2つの領域で構成される画面を例示する図である。
【
図6】3つの領域を有する画面を例示する図である。
【
図7】画面が水平方向と垂直方向の双方に分割されているケースを例示する図である。
【
図8】カメラの位置に基づいて画面における境界線が定められるケースを例示する図である。
【
図9】表示制御部によってディスプレイ装置に表示される複数の画面を例示する第1の図である。
【
図10】表示制御部によってディスプレイ装置に表示される複数の画面を例示する第2の図である。
【
図11】顔の適切なサイズを示すガイドを例示する図である。
【
図12】視線の方向が固定された状態で顔の向きが左右に動かされている様子を例示する図である。
【
図13】視線方向を固定しながら顔を左右に振った場合について、顔の方向と視線方向の時間変化を例示する図である。
【
図15】実施形態2の生体検知装置の機能構成を例示するブロック図である。
【
図16】実施形態2の生体検知装置によって実行される処理の流れを例示するフローチャートである。
【
図17】対象物体が次に行うべき行動を表すガイド情報を例示する図である。
【
図18】顔の方向を表すガイドのアニメーションを例示する図である。
【
図19】対象物体の視線の位置と顔の方向を含むガイド情報を例示する図である。
【
図20】対象物体の視線の位置と顔の方向を含むガイド情報を例示する第2の図である。
【
図21】実施形態2の変形例1の生体検知装置における対象物体の動作を例示する図である。
【
図22】実施形態2の変形例1の生体検知装置におけるガイド情報を例示する図である。
【
図23】実施形態2の変形例2の生体検知装置における対象物体の動作を例示する図である。
【
図24】実施形態2の変形例2の生体検知装置におけるガイド情報を例示する図である。
【
図25】実施形態1の生体検知装置による生体検知と、実施形態2の生体検知装置による生体検知が順に行われる場合の処理の流れを例示するフローチャートである。
【発明を実施するための形態】
【0010】
以下では、本開示の実施形態について、図面を参照しながら詳細に説明する。各図面において、同一又は対応する要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略される。また、図面において、白色以外の色による塗りつぶしは、特に断らない限り、ドット柄などのパターンを利用して表現されている。また、種々の所定の値(閾値など)は、特に断らない限り、予め記憶装置に格納されているものとする。
【0011】
[実施形態1]
<概要>
図1は、実施形態1の生体検知装置2000の動作の概要を例示する図である。ここで、
図1は、生体検知装置2000の概要の理解を容易にするための図であり、生体検知装置2000の動作は、
図1に示したものに限定されない。
【0012】
生体検知装置2000は、カメラ10によって撮像された対象物体50が生体であるか否かの判定(すなわち、生体検知)を行う。例えば生体検知装置2000は、対象物体50が本物の人であるケースと、対象物体50が人の写真などの生体以外であるケース(すなわち、本物の人ではなく、人の写真などが撮像されたケース)とを識別する。ただし、生体検知の対象は、人には限定されず、犬や蛇などといったその他の動物や、ロボットなどの無生物であってもよい。以降の開示では、人が生体検知の対象であるケースについて例示されているが、人以外の動物やロボットなどの無生物を生体検知の対象とするケースについても、同様の手法を適用することができる。
【0013】
そのために、生体検知装置2000は、ディスプレイ装置20による画面の出力を制御する。例えばディスプレイ装置20は、ユーザによって利用される端末60(スマートフォンなど)に設けられている。具体的には、生体検知装置2000は、複数の画面30をそれぞれ異なるタイミングでディスプレイ装置20に表示させる。例えば
図1の例において、生体検知装置2000は、画面30-1をディスプレイ装置20に表示させた後、ディスプレイ装置20に表示される画面を、画面30-1から画面30-2に変更している。
【0014】
ここで、少なくとも1つの画面30は、複数の領域32を有する。複数の領域32には、少なくとも、互いに異なる表示が含まれる2つの領域32が存在する。例えば
図1の画面30-1は、白色で塗りつぶされた領域32-1と、黒色で塗りつぶされた領域32-2を有する。なお、図示の都合上、黒色がドット柄で表現されている。
【0015】
カメラ10は、少なくとも2つの画面30それぞれについて、その画面30がディスプレイ装置20に表示されている間に対象物体50の撮像を行い、その結果を表す撮像画像40を生成する。例えば
図1では、画面30-1が表示されている間に行われた撮像によって撮像画像40-1が生成され、画面30-2が表示されている間に行われた撮像によって、撮像画像40-2が生成されている。
【0016】
生体検知装置2000は、このようにして生成された複数の撮像画像40を取得し、取得した複数の撮像画像40を利用して、対象物体50が生体であるか否かを判定する。
【0017】
<作用効果の一例>
本実施形態の生体検知装置2000によれば、画面30がディスプレイ装置20に表示された状態で、カメラ10による撮像が行われる。ここで、対象物体50が、顔が写っている紙の写真や、顔の画像が表示されているディスプレイ装置などである場合、ディスプレイ装置20から照射された光が当該写真などに照射され、その反射光がカメラ10によって撮像される。一方、対象物体50が本物の人である場合、ディスプレイ装置20から照射された光が実物の顔に照射され、その反射光がカメラ10によって撮像される。
【0018】
紙やディスプレイ装置などの形状は略平面であり、実物の顔の形状とは大きく異なる。そのため、ディスプレイ装置20から照射された光が紙の写真などに照射されるケースと、実物の顔に照射されるケースとでは、反射光の特徴が互いに大きく異なるといえる。そして、そのような反射光の特徴の違いは、その反射光をカメラ10で撮像することで得られた撮像画像40に現れる。
【0019】
生体検知装置2000によれば、上記反射光を撮像することで得られた撮像画像40を解析することにより、このような特徴の違いに基づいて、対象物体50が生体であるか否かを判定することができる。
【0020】
また、特許文献1のシステムでは、生体検知の対象に対し、1つの照明灯から光が照射される。そのため、「画面全体を明るく光らせる」や「画面全体を暗く光らせる」などのように限られた照明環境の変更しか実現できない。この点、本実施形態の生体検知装置2000において、画面30には、その表示が互いに異なる複数の領域32が含まれる。そのため、ディスプレイ装置20から対象物体50へ照射される光のパターンを柔軟に設定することができる。例えば
図1に示されているように、「左半分が明るく、右半分が暗い」や「右半分が明るく、左半分が暗い」などといった種々のパターンの光を対象物体50に対して照射することができる。
【0021】
本実施形態の生体検知装置2000によれば、このような種々のパターンの光を対象物体50に照射し、その反射光が撮像された撮像画像40を利用して、対象物体50が生体であるか否かの判定が行われる。そのため、「画面全体を明るく光らせる」や「画面全体を暗く光らせる」などのように比較的単純なパターンの光しか対象物体50に照射できないケースと比較し、対象物体50が生体であるか否かの判定をより高い精度で行うことができる。
【0022】
以下、本実施形態の生体検知装置2000について、より詳細に説明する。
【0023】
<機能構成の例>
図2は、実施形態1の生体検知装置2000の機能構成を例示するブロック図である。生体検知装置2000は、表示制御部2020、取得部2040、及び生体検知部2060を有する。表示制御部2020は、複数の画面30をそれぞれ異なるタイミングでディスプレイ装置20に表示させる。ここで、少なくとも1つの画面30は複数の領域32を有する。また、少なくとも2つの領域32は、互いに異なる表示を含む。取得部2040は、複数の画面30それぞれが表示されている間にカメラ10によって生成された、複数の撮像画像40を取得する。生体検知部2060は、複数の撮像画像40を利用して、対象物体50が生体であるか否かを判定する。
【0024】
<ハードウエア構成の例>
生体検知装置2000の各機能構成部は、各機能構成部を実現するハードウエア(例:ハードワイヤードされた電子回路など)で実現されてもよいし、ハードウエアとソフトウエアとの組み合わせ(例:電子回路とそれを制御するプログラムの組み合わせなど)で実現されてもよい。以下、生体検知装置2000の各機能構成部がハードウエアとソフトウエアとの組み合わせで実現される場合について、さらに説明する。
【0025】
図3は、生体検知装置2000を実現するコンピュータ500のハードウエア構成を例示するブロック図である。コンピュータ500は、任意のコンピュータである。例えばコンピュータ500は、PC(Personal Computer)やサーバマシンなどといった、据え置き型のコンピュータである。その他にも例えば、コンピュータ500は、スマートフォン、タブレット端末、又はノート PC などといった可搬型のコンピュータである。なお、端末60が利用される場合、生体検知装置2000は、端末60と一体として設けられていてもよいし、別体として設けられていてもよい。
【0026】
コンピュータ500は、生体検知装置2000を実現するために設計された専用のコンピュータであってもよいし、汎用のコンピュータであってもよい。例えば、コンピュータ500に対して所定のアプリケーションをインストールすることにより、コンピュータ500で、生体検知装置2000の各機能が実現される。上記アプリケーションは、生体検知装置2000の機能構成部を実現するためのプログラムで構成される。
【0027】
コンピュータ500は、バス502、プロセッサ504、メモリ506、ストレージデバイス508、入出力インタフェース510、及びネットワークインタフェース512を有する。バス502は、プロセッサ504、メモリ506、ストレージデバイス508、入出力インタフェース510、及びネットワークインタフェース512が、相互にデータを送受信するためのデータ伝送路である。ただし、プロセッサ504などを互いに接続する方法は、バス接続に限定されない。
【0028】
プロセッサ504は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、FPGA(Field-Programmable Gate Array)、DSP(Digital Signal Processor)、又は ASIC(Application Specific Integrated Circuit)などの種々のプロセッサである。メモリ506は、RAM(Random Access Memory)などを用いて実現される主記憶装置である。ストレージデバイス508は、ハードディスク、SSD(Solid State Drive)、メモリカード、又は ROM(Read Only Memory)などを用いて実現される補助記憶装置である。
【0029】
入出力インタフェース510は、コンピュータ500と入出力デバイスとを接続するためのインタフェースである。例えば入出力インタフェース510には、カメラ10及びディスプレイ装置20が接続される。
【0030】
ネットワークインタフェース512は、コンピュータ500をネットワークに接続するためのインタフェースである。このネットワークは、LAN(Local Area Network)であってもよいし、WAN(Wide Area Network)であってもよい。
【0031】
ストレージデバイス508は、生体検知装置2000の各機能構成部を実現するプログラム(前述したアプリケーションを実現するプログラム)を記憶している。プロセッサ504は、このプログラムをメモリ506に読み出して実行することで、生体検知装置2000の各機能構成部を実現する。
【0032】
生体検知装置2000は、1つのコンピュータ500で実現されてもよいし、複数のコンピュータ500で実現されてもよい。後者の場合において、各コンピュータ500の構成は同一である必要はなく、それぞれ異なるものとすることができる。
【0033】
<ディスプレイ装置20について>
ディスプレイ装置20は、画面30を表示可能な任意のディスプレイ装置である。例えばディスプレイ装置20は、ユーザによって操作される端末60と通信可能に接続されており、端末60から出力される画面を表示するように構成される。端末60は、ユーザによって利用される任意のコンピュータである。対象物体50が本物の人であり、当該対象物体50によって端末60が利用される場合、端末60のユーザは対象物体50である。一方、対象物体50として写真等を利用したなりすましが行われようとしている場合、端末60のユーザは、このような写真等をカメラ10に撮像させている人物である。端末60は、スマートフォン、タブレット端末、又は ノート PC などの可搬型のコンピュータで実現されてもよいし、デスクトップ PC などの据え置き型のコンピュータで実現されてもよい。
【0034】
端末60が可搬型のコンピュータで実現される場合、ディスプレイ装置20は、端末60に設けられているディスプレイ装置である。一方、端末60が据え置き型のコンピュータで実現される場合、ディスプレイ装置20は、端末60と通信可能に接続されており、端末60から出力された画面が表示されるように構成されているディスプレイ装置である。
【0035】
生体検知装置2000は、端末60と一体として設けられてもよいし、別体として設けられてもよい。端末60が生体検知装置2000とは別体として設けられる場合、端末60を実現するコンピュータのハードウエア構成は、コンピュータ500と同様に、例えば
図3で表される。
【0036】
また、生体検知装置2000の機能の一部が端末60に設けられ、その他の機能が端末60以外のコンピュータに設けられるようにしてもよい。例えば、表示制御部2020と取得部2040が端末60に設けられ、生体検知部2060がサーバ装置に設けられる。この場合、例えば、カメラ10によって生成された複数の撮像画像40が、端末60からサーバ装置へ送信される。そして、サーバ装置は、受信した撮像画像40を解析することで生体検知を行い、その結果を示す情報を端末60へ送信する。
【0037】
ディスプレイ装置20は、ユーザによって操作される端末60と通信可能に接続されているものに限定されない。例えばディスプレイ装置20は、コンピュータによってゲートの開閉が制御される施設の入り口において、当該ゲートを通過する人が閲覧可能なディスプレイ装置として実現されうる。この場合、例えば、ゲートを通過しようとする人に対して、カメラ10を利用した顔認証と生体検知が行われる。具体的には、カメラ10から得られた対象物体50の撮像画像を利用して、対象物体50が、ゲートを通過可能な人物として登録されているか否かを判定する。さらに、生体検知装置2000がディスプレイ装置20の制御を行って、対象物体50についての生体検知を行う。そして、対象物体50がゲートを通過可能な人物として登録されており、なおかつ、対象物体50が生体であると判定された場合には、ゲートの開閉を制御するゲート制御装置によって、ゲートが開かれる。一方、対象物体50がゲートを通過可能な人物として登録されていなかったり、対象物体50が生体でないと判定された場合には、ゲートが開かれない(ゲートが開いている場合には、ゲート制御装置によってゲートが閉じられる)。生体検知を行うことで、登録されている人物の顔写真などを利用したなりすましを防ぐことができる。
【0038】
なお、顔認証と生体検知の結果に基づいてゲートの開閉を制御するケースにおいて、ユーザによって利用されるスマートフォン等の端末60を利用して顔認証と生体検知が行われてもよい。具体的には、まず、ユーザが端末60を操作することにより、顔認証及び生体検知装置2000による生体検知が行われる。ゲート制御装置は、顔認証と生体検知の結果を表す情報を端末60から得ることで、ゲートの開閉を制御する。顔認証と生体検知の結果を表す情報は、例えば、端末60からゲート制御装置へ無線通信で送信される。その他にも例えば、端末60は、顔認証と生体検知の結果を表す情報(例えば、二次元コードなど)をディスプレイ装置20に表示させ、当該情報をゲート制御装置と通信可能に接続されているリーダに読み取らせる。ゲート制御装置は、リーダによって読み取られた情報に基づいて、ゲートの開閉を制御する。
【0039】
<カメラ10について>
カメラ10は、ディスプレイ装置20の表示領域から出力される光が対象物体50の顔に照射されている状態で、対象物体50の顔を撮像できる位置及び姿勢で利用される。例えばカメラ10は、ディスプレイ装置20の表示領域の付近に内蔵されているカメラである。このようなカメラはインカメラなどと呼ばれる。ただし、カメラ10は、インカメラのように端末60に内蔵されているカメラには限定されない。例えば、ディスプレイ装置20の縁などに取り付けられた可搬型のカメラ(Web カメラなど)が、カメラ10として利用されうる。その他にも例えば、カメラ10は、ディスプレイ装置20とは離れた位置に設置されていてもよい。例えば前述した、生体検知装置2000による生体検知の結果に応じてゲートの開閉を制御する例では、ゲートを通過しようとする人物が撮像範囲に入るように設置された監視カメラなどを、カメラ10として利用することができる。
【0040】
カメラ10は、静止画を生成するスチルカメラであってもよいし、動画を生成するビデオカメラであってもよい。カメラ10がスチルカメラである場合、カメラ10は、複数の画面30それぞれがディスプレイ装置20に表示されている状態で撮像画像40の生成を行う。一方、カメラ10がビデオカメラである場合、例えばカメラ10は、最初の画面30が表示されてから最後の画面30が表示されるまでの間を含む期間に撮像を行うことで、ビデオデータを生成する。この場合、撮像画像40は、当該ビデオデータを構成するビデオフレームである。
【0041】
<処理の流れ>
図4は、実施形態1の生体検知装置2000によって実行される処理の流れを例示するフローチャートである。S102からS106はループ処理Aを構成する。ループ処理Aは、ディスプレイ装置20に表示させる各画面30それぞれについて実行される。
【0042】
S102において、表示制御部2020は、全ての画面30を対象としてループ処理Aを実行したか否かを判定する。全ての画面30を対象としてループ処理Aを実行した場合、
図4の処理はS108に進む。一方、まだループ処理Aの対象としていない画面30が存在する場合、表示制御部2020は、その中の1つを選択する。ここで選択される画面30を、画面iと表記する。画面30が選択された後、
図4の処理はS104に進む。
【0043】
なお、画面30の選択順序は任意である。例えば表示制御部2020は、予め定められている順序で、画面30を選択していく。その他にも例えば、表示制御部2020は、ランダムな順序で画面30を選択してもよい。
【0044】
表示制御部2020は、画面iをディスプレイ装置20に表示させる(S104)。S106はループ処理Aの終端であるため、
図4の処理はS102に進む。なお、S104の実行によって画面iがディスプレイ装置20に表示された後、カメラ10による撮像が行われ、撮像画像40が生成される。
【0045】
ループ処理Aの終了後、取得部2040は複数の撮像画像40を取得する(S108)。生体検知部2060は、取得した複数の撮像画像40を用いて、対象物体50についての生体検知を行う(S110)。
【0046】
<画面30について>
画面30は複数の領域32を有する。ディスプレイ装置20に表示される画面30のうち、少なくとも1つの画面30は、複数の領域32を有する。複数の領域32のうち、少なくとも2つの領域32は、互いに異なる表示を含む。互いに異なる表示を含む領域32とは、例えば、色若しくは明るさが互いに異なる領域32や、互いに異なる文字、記号、若しくは図形などが含まれる領域32である。このような2つの領域32を画面30に含めることにより、当該画面30が表示されたディスプレイ装置20から対象物体50に対し、明るさが不均一な光を対象物体50に照射することができる。
【0047】
図5は、2つの領域32で構成される画面30を例示する図である。画面30-1は、垂直方向の境界線によって2つの領域32-1と領域32-2に分けられている。領域32-1は画面30-1の左半分の領域であり、領域32-2は画面30-1の右半分の領域である。領域32-1と領域32-2は互いに異なる色で塗りつぶされている(全ての画素が同じ色である)。なお、領域32の全ての画素に色を設定する(領域32を完全に塗りつぶす)のではなく、領域32の一部の画素のみに色が設定されてもよい。例えば、領域32において、色が設定される画素(光らせる画素)と色が設定されない画素(光らせない画素)が交互に並ぶようにしてもよい。
【0048】
一方、画面30-2は、水平方向の境界線によって2つの領域32-3と領域32-4に分けられている。領域32-3は画面30-2の上半分の領域であり、領域32-4は画面30-2の下半分の領域である。領域32-3と領域32-4は互いに異なる色で塗りつぶされている。
【0049】
なお、領域32の色には、白、黒、赤、又は青などいった任意の色を使用できる。また、ディスプレイ装置20から赤外線などといった不可視光を出力できる場合には、不可視光を利用してもよい。例えば、「ディスプレイ装置20の左半分からは可視光を照射させ、ディスプレイ装置20の右半分からは赤外線を照射させる」という処理の後、「ディスプレイ装置20の左半分からは赤外線を照射させ、ディスプレイ装置20の右半分からは可視光を照射させる」という処理を行うことが考えられる。なお、不可視光を利用する場合、当該不可視光を検出可能なセンサを利用する必要がある。例えば、可視光と赤外線を利用する場合、可視光を撮像可能なカメラと、赤外線を撮像可能なカメラが利用される。
【0050】
図5の画面30-1と画面30-2ではいずれも、2つの領域32のサイズが互いに同一である。しかしながら、領域32のサイズはそれぞれ異なっていてもよい。
【0051】
図5において、領域32の境界線は垂直方向又は水平方向の直線となっている。しかしながら、領域32の境界線は、垂直方向又は水平方向の直線には限定されず、斜線であってもよい。また、境界線は直線には限定されず、曲線やジグザグの線などであってもよい。
【0052】
画面30に含まれる領域32の数は3つ以上であってもよい。例えば画面30は、水平方向や垂直方向に n (n>=2)分割される。
図6は、3つの領域32を有する画面30を例示する図である。
図6において、画面30-1は、水平方向に3つに分割されている(水平方向に並ぶ3つの領域32が存在する)。一方、画面30-2は、垂直方向に3つに分割されている(垂直方向に並ぶ3つの領域32が存在する)。
【0053】
ここで、画面30が3つ以上の領域32を有する場合、互いに隣接していない複数の領域32の表示は、互いに同一であってもよい。例えば、
図6の画面30-1では、領域32-1と領域32-3が同一の色で塗りつぶされ、これとは違う色で領域32-2が塗りつぶされている。一方で、
図6の画面30-2では、3つの領域32がそれぞれ異なる色で塗りつぶされている。
【0054】
また、画面30は、水平方向と垂直方向の双方に分割されてもよい。
図7は、画面30が水平方向と垂直方向の双方に分割されているケースを例示する図である。
図7において、画面30-1は、水平方向の境界線と垂直方向の境界線によって4つに分割されている。一方、画面30-2は、2つの対角線によって4つに分割されている。
【0055】
ここで、複数の領域32において表示を互いに異ならせる方法は様々である。例えば前述したように、複数の領域32は、互いに異なる色で塗りつぶされる。領域32を互いに異なる色で塗りつぶす場合、これらの領域32が表示されている場合にディスプレイ装置20から照射される光の明るさを異ならせるために、明度が互いに異なる色を利用することが好適である。
【0056】
その他にも例えば、領域32は、格子柄やドット柄などのパターンで埋められる。この場合、利用するパターンの特徴を変えることにより、ディスプレイ装置20から照射される光の明るさを異ならせることが好適である。例えば格子柄では、格子のサイズや線の太さを変えることにより、ディスプレイ装置20から照射される光の明るさを変えることができる。また、ドット柄では、ドットの大きさやドットの間隔を変えたりすることにより、ディスプレイ装置20から照射される光の明るさを変えることができる。
【0057】
その他にも例えば、領域32には、文字、記号、又は図形などが含まれてもよい。この場合にも、領域32に含まれる文字、記号、又は図形のサイズや間隔を変えたりすることにより、ディスプレイ装置20から照射される光の明るさを変えることができる。
【0058】
また、ディスプレイ装置20の表示領域の明るさを部分ごとに変更可能である場合、複数の領域32は、同一の色を互いに異なる明るさで表示してもよい。例えば、
図5の画面30-1において、領域32-1を比較的明るい白色の領域とし、領域32-2を比較的暗い白色の領域とする。こうすることで、複数の領域32が同一の色で塗りつぶされている場合でも、ディスプレイ装置20から照射される光の明るさを、領域32ごとに異ならせることができる。また、比較的暗い領域32は、光が照射されない領域にすることでも実現できる。
【0059】
<<カメラ10の位置と分割方法との関係>>
画面30を複数の領域32に分割する境界線の位置は、ディスプレイ装置20に対するカメラ10の相対位置に基づいて決定されてもよい。人がカメラ10で自分を撮像する場合、カメラ10の位置が顔の中心となるように端末60を保持する可能性が高い。そのため、カメラ10の位置に基づいて画面30の境界線の位置を決めることにより、画面30の境界線が対象物体50の中心に位置するようにすることができる。よって、「顔の左半分に明るい光を当て、顔の右半分に暗い光を当てる」などのように、対象物体50の中心を境界として、対象物体50に対して照射される光の特徴を変えることができるようになる。顔の形状は概ね左右対称であるため、顔の左右それぞれに異なる特徴の光を当てることにより、比較を容易にすることができる。
【0060】
図8は、カメラ10の位置に基づいて画面30における境界線が定められるケースを例示する図である。
図8のカメラ10は、水平方向において、ディスプレイ装置20の表示領域の中心ではなく、左寄りに設けられている。
【0061】
画面30-1のケースでは、カメラ10から垂直方向下向きに下ろした直線が境界線34-1となっている。すなわち、カメラ10から垂直方向下向きに下ろした直線を基準として、画面30が左右に分割されている。ここで、カメラ10が左寄りに設けられていることから、領域32-1の方が領域32-2よりも小さくなっている。
【0062】
一方、画面30-2のケースでは、カメラ10の位置を基準として境界線34を定めつつ、画面30が2等分される。具体的には、境界線34-2の上端が、カメラ10から垂直方向下向きに下ろした直線と、ディスプレイ装置20の表示領域の上辺との交点で定められる。そして、境界線34-2によって画面30-2が2等分されるように、領域32-4が、上記上端から右斜め下に引いた直線となっている。
【0063】
なお、画面30が水平方向又は垂直方向のいずれかに分割される場合に、どちらに分割されるのかが、カメラ10の位置によって定められてもよい。具体的には、カメラ10がディスプレイ装置20の表示領域の上又は下に設けられている場合、表示制御部2020は、画面30を水平方向に分割する。一方、カメラ10がディスプレイ装置20の表示領域の左又は右に設けられている場合、表示制御部2020は、画面30を垂直方向に分割する。
【0064】
カメラ10の位置に基づいて境界線34を決定するためには、生体検知装置2000が、カメラ10とディスプレイ装置20の表示領域との位置関係を把握できる必要がある。例えば、前述したように決定される境界線34の一端の位置を、予め生体検知装置2000に設定しておく。その他にも例えば、境界線34の一端の位置を、端末60のユーザに設定させてもよい。例えば生体検知装置2000は、端末60のユーザに、ディスプレイ装置20の表示領域上の位置を指定させる。そして、生体検知装置2000は、当該指定された位置の x 座標を、境界線34の上端の x 座標として利用する。
【0065】
なお、境界線34の一端だけでなく、境界線34そのものを端末60のユーザに設定させてもよい。例えば、ディスプレイ装置20に対してユーザに線を描かせ、その線を境界線34として利用するようにする。なお、ユーザの顔を基準として境界線34を決めさせたい場合、例えばディスプレイ装置20に、カメラ10によって撮像されているユーザの顔の画像(撮像画像40)を表示させる。そして、例えば、「あなたの顔の中央を通るように線を引いてください」などといったガイドのメッセージをディスプレイ装置20に表示させることにより、ユーザの顔を基準とした境界線34が設定されるようにする。
【0066】
また、生体検知装置2000は、撮像画像40から顔を検出し、撮像画像40上における顔の位置(例えば顔の中央を通る垂直方向の直線)に基づいて、境界線34を自動で決定してもよい。
【0067】
<画面30の表示の制御:S102-S106>
表示制御部2020は、複数の画面30をそれぞれ異なるタイミングでディスプレイ装置20に表示させる(S102-S106)。複数の画面30には、前述した種々の画面30が利用できる。なお、ディスプレイ装置20には、2種類以上の画面30が表示され、なおかつ、そのうちの少なくとも1つは、それぞれ異なる複数の領域32を持つ。ディスプレイ装置20に表示される画面30の中には、複数の領域32に分割されていない画面30が含まれていてもよい。
【0068】
図9は、表示制御部2020によってディスプレイ装置20に表示される複数の画面30を例示する第1の図である。
図9の例では、画面30-1、画面30-2、画面30-3、及び画面30-4という順で、画面30が表示される。
【0069】
画面30-1は、左半分が白色で塗りつぶされており、右半分が黒色で塗りつぶされている。画面30-2は、左半分が黒色で塗りつぶされており、右半分が白色で塗りつぶされている。画面30-3は、全体が白色で塗りつぶされている。画面30-4は、全体が黒色で塗りつぶされている。
【0070】
図10は、表示制御部2020によってディスプレイ装置20に表示される複数の画面30を例示する第2の図である。
図10では、m個の画面30が順に表示されている。これらm個の画面30は、白色で塗りつぶされている左側の領域32と黒色で塗りつぶされている右側の領域32との境界線を徐々に右へ移動させることによって生成されている。
【0071】
なお、
図10に示すように境界線を移動させていく場合において、境界線の1つの位置に対し、複数パターンの画面30が表示されてもよい。例えば
図10の例において、3秒おきに境界線を移動させながら、1秒ごとに領域32の表示を変更するとする。この場合、境界線の位置が固定された状態で、3パターンの画面30が表示される。例えば、左側の領域32が白色である画面30、左側の領域32が比較的明るいグレーである画面30、及び左側の領域32が比較的暗いグレーである画面30という3種類の画面30を表示させることにより、境界線を固定した状態で複数パターンの画面30を表示させることができる。ただし、境界線を固定した状態でその表示が変更される領域32は、1つの領域32だけに限定されず、複数の領域32それぞれの表示が変更されてもよい。
【0072】
なお、各画面30がディスプレイ装置20に表示される時間は、それぞれ同一の長さであってもよいし、異なる長さであってもよい。
【0073】
カメラ10は、2つ以上の画面30について、その画面30がディスプレイ装置20に表示されているタイミングで撮像を行える必要がある。そのために、例えば表示制御部2020は、カメラ10による撮像を制御する。具体的には、生体検知装置2000は、「ディスプレイ装置20に画面30を表示させ、その後、カメラ10に撮像を行わせる」という処理を、画面30を変更しながら繰り返す。こうすることで、画面30ごとに、その画面30がディスプレイ装置20に表示されている状態について、撮像画像40が得られる。
【0074】
ただし、カメラ10による撮像のタイミングは、表示制御部2020によって制御されなくてもよい。例えばカメラ10は、繰り返し撮像を行うように構成される。カメラ10が繰り返し撮像を行っている間にディスプレイ装置20に表示される画面30を切り替えることにより、各画面30が表示されている状態についての撮像画像40を得ることができる。この場合において、例えば、ディスプレイ装置20に1つの画面30が表示されている時間の長さは、カメラ10の撮像周期よりも長く設定されることが好適である。こうすることで、全ての画面30それぞれについて、その画面30がディスプレイ装置20に表示されている間に生成された撮像画像40を1つ以上得ることができる。ただし、画面30がディスプレイ装置20に表示されている時間の長さは、必ずしもカメラ10の撮像周期より長く設定される必要はない。
【0075】
なお、3つ以上の画面30がディスプレイ装置20に表示される場合、必ずしも全ての画面30について撮像画像40が生成される必要は無い。例えば
図10の例において、カメラ10がビデオカメラであり、境界線の移動周期よりもカメラ10の撮像周期が長いとする。この場合、m個の画面30のうち、いずれか1つ以上の画面30については、その画面30が表示されている間にカメラ10による撮像が行われない可能性がある。しかしながら、撮像画像40を2つ以上取得することができれば、生体検知部2060による生体検知を実現できる。
【0076】
<撮像画像40の取得:S108>
取得部2040は、カメラ10によって生成された複数の撮像画像40を取得する(S108)。ここで、カメラによって生成された画像を取得する方法には、様々な方法を利用することができる。例えば取得部2040は、撮像画像40が格納されている記憶装置にアクセスすることで、撮像画像40を取得する。ここで、当該記憶装置は、カメラ10の内部と外部のどちらに設けられていてもよい。その他にも例えば、取得部2040は、カメラ10から生体検知装置2000に対して送信される撮像画像40を受信することで、撮像画像40を取得してもよい。
【0077】
<生体検知の実行:S110>
生体検知部2060は、取得した複数の撮像画像40を利用して生体検知を行う。具体的には、生体検知部2060は、カメラ10によって撮像された対象物体50が生体であるか否かを判定する。
【0078】
前述したように、対象物体50が紙の写真などであるケースと、対象物体50が実物の人などであるケースでは、対象物体50の形状が大きく異なり、そのような形状の差異が、反射光の特徴の違いとして撮像画像40に現れる。そこで例えば、生体検知部2060は、撮像画像40上における対象物体50の色や明るさの分布の特徴に基づいて、対象物体50が生体であるか否かを判定する。
【0079】
生体検知部2060による生体検知を実現する具体的な方法は様々である。例えば生体検知は、学習済みの識別モデルを用いて実現される。この識別モデルは、複数の撮像画像40が入力されたことに応じて、カメラ10によって撮像された物体が生体であるか否かの判定結果を示すデータを出力する。判定結果を示すデータは、例えば、カメラ10によって撮像された物体が生体である場合に1を示し、カメラ10によって撮像された物体が生体でない場合に0を示すラベルである。このような識別モデルは、例えば CNN(Convolutional Neural Network)などのニューラルネットワークで実現することができる。ただし、識別モデルの種類はニューラルネットワークには限定されない。このように学習された識別モデルを利用して生体検知を行う手法によれば、対象物体50が生体であるか否かを判定するためのアルゴリズムをデータドリブンで容易に構築することができる。
【0080】
識別モデルの学習は、「複数の撮像画像40、正解ラベル」という組み合わせで構成される訓練データを利用して実現できる。例えば表示制御部2020が、第1パターンの画面30から第3パターンの画面30という3種類の画面30をディスプレイ装置20に表示させるとする。この場合、第1パターンの画面30から第3パターンの画面30それぞれに対応して、第1パターンの撮像画像40から第3パターンの撮像画像40が得られる。ここで、第nパターン(nは1以上3以下の整数)の撮像画像40は、第nパターンの画面30がディスプレイ装置20に表示されている間にカメラ10によって生成される撮像画像40である。このように3つのパターンの撮像画像40が得られる場合、識別モデルの学習には、「第1パターンの撮像画像40、第2パターンの撮像画像40、第3パターンの撮像画像40、正解ラベル」という組み合わせで構成される訓練データが用いられる。
【0081】
識別モデルの学習は、正例の訓練データと負例の学習データの双方を用いて行うことが好適である。正例の訓練データは、カメラ10で生体を撮像した場合に得られる複数の撮像画像40と、カメラ10によって生体が撮像されたことを示す正解ラベル(例えば1)とを示す。一方、負例の訓練データは、カメラ10で生体以外を撮像した場合に得られる複数の撮像画像40と、カメラ10によって生体以外が撮像されたことを示す正解ラベル(例えば0)とを示す。正例の訓練データと負例の訓練データの双方を用いることで、生体を撮像した場合に得られる撮像画像40と、生体以外を撮像した場合に得られる撮像画像40との違いを学習することができる。
【0082】
<結果の出力>
生体検知装置2000は、生体検知の結果を示す情報(以下、検知結果情報)を出力する。検知結果情報は、対象物体50が生体であるか否かの判定結果を示す。検知結果情報は、端末60のユーザが閲覧可能なディスプレイ装置(例えば、ディスプレイ装置20)に表示されることが好適である。ただし、検知結果情報は端末60のディスプレイ装置以外に出力されてもよい。
【0083】
<その他の処理>
対象物体50には、ディスプレイ装置20から照射される光以外にも、ディスプレイ装置20の周囲の環境光(太陽光や照明の明かりなど)が照射される。そして、ディスプレイ装置20から照射される光よりも環境光の方が極端に強い場合、環境光が支配的になってしまうことから、ディスプレイ装置20から照射される光の強さを変えても、その変化が撮像画像40に現れにくくなってしまう。そのため、生体検知装置2000を利用した生体検知は、環境光が強すぎない場所で行われることが好ましい。
【0084】
そこで例えば、生体検知装置2000は、表示制御部2020によるディスプレイ装置20の制御を行う前に環境光の強さを特定し、環境光が閾値以下であると判定された場合のみ、生体検知のための一連の処理(
図4のS102からS110)を開始するようにしてもよい。このようにすることで、環境光の強さが適切な場合に生体検知の処理が行われるようにすることができる。
【0085】
環境光の強さの特定は、例えば、照度センサを利用して行われる。照度センサは、ディスプレイ装置20や端末60に予め内蔵されていてもよいし、別途用意されてもよい。環境光が閾値より大きい場合、例えば生体検知装置2000は、もう少し暗い場所(環境光が現状よりも弱い場所)に移動するように促すメッセージをディスプレイ装置20に表示させる。このようにすることで、端末60が適切な環境で利用されていない場合に、そのことをユーザに知らせ、端末60が適切な環境で利用されるようにすることができる。
【0086】
なお、環境光の強さが適切であるか否かを判定する方法は、環境光の強さをセンサで測定する方法に限定されない。例えば生体検知装置2000は、撮像画像40の輝度の高さに基づいて、環境光の強さが適切であるか否かを判定する。撮像画像40は、画面30がディスプレイ装置20に表示されている間に生成されたものであってもよいし、画面30がディスプレイ装置20に表示されていない間に生成されたものであってもよい。例えば生体検知装置2000は、撮像画像40に含まれる全て又は一部の画素の輝度の統計値(例えば平均値)が閾値以下である場合に、環境光の強さが適切であると判定する。一方、当該統計値が閾値より大きい場合、生体検知装置2000は、環境光の強さが適切でないと判定する。
【0087】
その他にも例えば、生体検知装置2000は、比較的明るい画面30(例えば、全体が白色の画面30)がディスプレイ装置20に表示されている間にカメラ10によって生成された撮像画像40と、比較的暗い画面30(例えば、全体が黒色の画面30)がディスプレイ装置20に表示されている間にカメラ10によって生成された撮像画像40とを比較して、輝度に十分な差異がある(例えば、輝度の差異が閾値以上である)か否かを判定してもよい。輝度の差異は、例えば、前者の撮像画像40に含まれる全ての画素の輝度の統計値(例えば平均値)と、後者の撮像画像40に含まれる全ての画素の輝度の統計値との差分で表すことができる。
【0088】
ただし、輝度の統計値の算出において、対象物体50が含まれる領域の輝度が、それ以外の領域の輝度よりも優先されるようにしてもよい。例えば生体検知装置2000は、撮像画像40から対象物体50が含まれる領域を検出し、当該領域についての輝度のみを利用して、輝度の統計値を算出する。その他にも例えば、生体検知装置2000は、対象物体50が含まれる領域の輝度に対し、それ以外の領域よりも大きい重みを付与した上で、画像全体の輝度について重み付き平均を算出してもよい。
【0089】
輝度に十分な差異がないと判定された場合、環境光が強すぎると考えられる。そこで、輝度に十分な差異がないと判定された場合、例えば生体検知装置2000は、対象物体50が生体であるか否かの判定を行わず、もう少し暗い場所に移動してから生体検知をやり直すように促すメッセージを、ディスプレイ装置20に表示させる。このように撮像画像40の比較によって環境光が強すぎるか否かを判定する方法には、環境光の強さを特定するためのハードウエア(照度センサなど)が不要であるという利点がある。
【0090】
表示制御部2020は、環境光の強さに応じて、ディスプレイ装置20に表示させる画面30を変えてもよい。例えば、環境光が強いほど、画面30のコントラストを強くすることが好ましい。このようにすることで、環境光が支配的になってしまう蓋然性を低くすることができる。また、このようにすることで、環境光が弱いほど画面30のコントラストが低くなるため、ディスプレイ装置20の消費電力を削減することができる。画面30のコントラストは、「比較的明るい領域32をより明るくする」及び「比較的暗い領域32をより暗くする」という2つの対処のいずれか一方又は双方により実現できる。
【0091】
例えばディスプレイ装置20に表示させる複数の画面30を、環境光の強さのレベル(以下、環境光レベル)ごとに予め定めておく。より高い環境光レベルほど、より高いコントラストの画面30が対応付けられている。表示制御部2020は、現在の環境光の強さがどの環境光レベルに相当するのかを特定し、特定した環境光レベルに対応づけられている画面30を利用する。
【0092】
その他にも例えば、表示制御部2020は、画面30に含まれる1つ又は複数の領域32に含まれている画素の色を環境光の強さに応じて変更(補正)することで、環境光の強さに合わせた画面30を生成してもよい。例えば、環境光が強いほど値が大きくなる補正係数αを用意する。補正係数αの値域は、例えば、0<α≦1である。この補正係数を、領域32に含まれる色の明度に掛けることにより、環境光が強いほど領域32を明るくすることができる。
【0093】
生体検知装置2000は、ディスプレイ装置20に画面30を表示させる前から、撮像画像40を取得して顔検出処理を行い、撮像画像40から顔が検出されたことに応じて、生体検知のための一連の処理を開始するようにしてもよい。撮像画像40から顔が検出されない場合、生体検知を行うことができないためである。例えば生体検知装置2000は、顔を撮像するようにディスプレイ装置20にメッセージを表示させた後、繰り返し撮像画像40を取得し、顔検出処理を行う。そして、撮像画像40から顔が検出されたら、生体検知のための一連の処理を開始する。一方、一定時間撮像画像40から顔が検出されない場合、生体検知装置2000は、顔を撮像するように促すメッセージをディスプレイ装置20に表示させる。
【0094】
さらに、生体検知装置2000は、撮像画像40から顔が検出された場合に、その顔のサイズが十分な大きさであるか否かを判定してもよい。例えば生体検知装置2000は、顔のサイズが十分な大きさである場合のみ、生体検知のための一連の処理を開始する。一方、顔のサイズが十分な大きさでない場合、生体検知装置2000は、顔を大きく撮像するように促すメッセージをディスプレイ装置20に表示させる。
【0095】
顔のサイズが十分な大きさであるか否かは、例えば、撮像画像40における対象物体50の顔の領域の面積を閾値と比較することで判定される。その他にも例えば、顔のサイズが十分な大きさであるか否かは、顔のサイズそのものではなく、左目と右目の間の距離を閾値と比較することで判定されてもよい。この場合、生体検知装置2000は、撮像画像40から対象物体50の左目と右目を検出し、これらの間の距離を算出する。そして、生体検知装置2000は、算出した距離が閾値以下であるか否かを判定する。目の間の距離が閾値以下である場合、生体検知装置2000は、顔のサイズが十分な大きさであると判定する。一方、目の間の距離が閾値より大きい場合、生体検知装置2000は、顔のサイズが十分な大きさでないと判定する。
【0096】
その他にも例えば、生体検知装置2000は、ディスプレイ装置20と対象物体50との距離に基づいて、顔のサイズが十分な大きさであるか否かを判定してもよい。例えば生体検知装置2000は、ディスプレイ装置20と対象物体50との距離が閾値以下である場合に、顔のサイズが十分な大きさであると判定する。一方、ディスプレイ装置20と対象物体50との距離が閾値より大きい場合、生体検知装置2000は、顔のサイズが十分でないと判定する。なお、ディスプレイ装置20と対象物体50との距離を算出する方法には、深度センサを利用する方法などと行った種々の方法を利用できる。また、ディスプレイ装置20と対象物体50との距離の代わりに、カメラ10と対象物体50との距離を利用してもよい。この場合、カメラ10として、ステレオカメラや深度センサ付きのカメラを利用することで、カメラ10と対象物体50との距離を把握することができる。
【0097】
なお、ユーザが顔を適切なサイズで撮像しやすいように、生体検知装置2000は、ディスプレイ装置20に、顔の適切なサイズを示すガイドを表示させてもよい。
図11は、顔の適切なサイズを示すガイドを例示する図である。楕円の枠は、顔が配置されるべき位置を表している。また、点線は、顔の中心線(中心を通る線)が配置されるべき位置を表している。このようなガイドを表示させることにより、ユーザがより容易に撮像を行えるようにすることができる。
【0098】
生体検知装置2000は、撮像画像40におけるユーザの顔の中心線が、前述したガイドが示す顔の中心線(
図11の点線)と重なったことを検出し、当該検出に応じて、生体検知の一連の処理を開始してもよい。これにより、顔が適切な姿勢になったタイミングで生体検知が行われるため、生体検知の精度が向上する。なお、画像解析によって顔の中心線を特定する技術には、既存の技術を利用することができる。
【0099】
その他にも例えば、生体検知装置2000は、撮像画像40を利用して対象物体50が瞬きをしたことを検知し、当該検知に応じて、生体検知の一連の処理を開始してもよい。なお、時系列の画像から瞬きを検知する技術には、既存の技術を利用することができる。
【0100】
[実施形態2]
実施形態2の生体検知装置2000は、実施形態1の生体検知装置2000と同様に、対象物体50について生体検知を行う。ただし、実施形態2の生体検知装置2000は、実施形態1の生体検知装置2000とは異なる方法で生体検知を実現する。
【0101】
前提として、本実施形態では、カメラ10により、生体検知の対象とする人物(対象物体50)により、視線の方向が固定された状態で顔の向きが左右に動かされている様子が撮像される。
図12は、視線の方向が固定された状態で(同じ場所を見続けた状態で)顔の向きが左右に動かされている様子を例示する図である。視線は端末60上の一点に固定されている。
【0102】
ここで、カメラ10によって撮像される顔が実物の顔である場合、対象人物は、顔の動きから独立して目を動かすことができるため、視線方向を固定したままで顔の方向を変化させることができる。そして、視線方向を固定しながら顔の方向を時間と共に変化させる動作が行われた場合、顔の方向と視線方向の差分が時間と共に変化する。例えば、顔と視線が両方とも正面を向いている場合には、顔の方向と視線方向の差異が小さい一方、視線を正面に向けたまま顔が左右どちらかを向いている場合には、顔の方向と視線方向の差異が大きい。
【0103】
一方、なりすましのために、対象人物が、他人の顔が描かれている装着物(いわゆる3Dマスク等)を装着しているとする。この場合、目がマスク等に描かれているため、顔の動きから独立して目を動かすことができない。すなわち、顔の方向と一緒に視線の方向も変わってしまう。そのため、視線方向を固定しながら顔の方向を時間と共に変化させる動作を行おうとしても、実際には、顔の方向と視線方向の差分が時間と共に変化しないか、又はその変化量が小さくなる。
【0104】
図13は、視線方向を固定しながら顔を左右に振った場合について、顔の方向と視線方向の時間変化を例示する図である。双方のグラフにおいて、実線は顔の方向を表しており、点線は視線方向を表している。左のグラフは、カメラ10によって撮像される顔が実物の顔であるケースを表している。一方、右のグラフでは、カメラ10によって撮像される顔が3Dマスクであるケースを表している。これらのグラフを比較しても分かる通り、3Dマスクを付けている場合、顔の方向と視線方向との差分が比較的小さくなる。
【0105】
そこで生体検知装置2000は、顔の方向と視線方向の差分に基づいて、対象物体50が生体であるか否かを判定する。具体的には、生体検知装置2000は、カメラ10によってそれぞれ異なる時間に生成された複数の撮像画像40を取得し、各撮像画像40に写っている対象人物の顔について顔の方向と視線方向を特定し、その差分を算出する。ここで、画像に含まれる顔について、顔の方向と視線方向を特定する技術には、既存の技術を利用することができる。そして生体検知装置2000は、顔の方向と視線方向との差分に基づいて、撮像画像40に写っている対象物体50が生体であるか否かを判定する。なお、実施形態2の撮像画像40と実施形態1の撮像画像40とを区別する必要がある場合には、実施形態2の撮像画像40を「第2撮像画像」とも表記する。
【0106】
また、生体検知装置2000は、上述した生体検知を実現するために、対象物体50に所望の動作を行わせるためのガイドを示す情報(以下、ガイド情報)を、端末60のディスプレイ装置20に表示させる。生体検知装置2000は、少なくとも、視線方向に関するガイドを示すガイド情報と、顔の向きに関するガイドを示すガイド情報の双方を出力する。なお、これらのガイド情報は、同時に出力されてもよいし、互いに異なるタイミングで出力されてもよい。
【0107】
図14は、ガイド情報を例示する第1の図である。
図14において、ディスプレイ装置20には、ガイド情報を含む画面80が表示されている。画面80には、視線方向に関するガイドとして、視線を向けるべき位置を示すマークや、「視線はここに向けてください」というメッセージが含まれている。また、画面80には、顔の向きに関するガイドとして、「顔を左右に動かしてください」というメッセージが含まれている。
【0108】
なお、以下の説明では、特に断らない限り、対象物体50の顔や視線の方向は、正面方向(ディスプレイ装置20を正面視する方向)が基準の角度0°で表され、右方向がプラスの角度で表され、左方向がマイナスの角度で表される。
【0109】
<作用効果の一例>
他人になりすます方法の一つとして、前述したように、他人の顔が描かれている3Dマスク等を利用する方法が考えられる。ここで、前述したように、3Dマスク等が着用されている状態では、顔と共に視線も動いてしまう一方、3Dマスクが着用されていない状態であれば、顔とは独立して視線を動かすことができる。そのため、3Dマスク等が着用されている場合とそうでない場合とで、顔の方向と視線方向との差分に違いがある。
【0110】
この点、生体検知装置2000によれば、視線向を固定しながら顔を左右に振る動作が行われている状況がカメラ10によって撮像される。そして、生体検知装置2000は、カメラ10から得られた撮像画像40を解析することにより、顔の方向と視線方向との差分が算出し、当該差分に基づいて生体検知が行う。よって、生体検知装置2000によれば、3Dマスク等を利用したなりすましを防ぐことができる。
【0111】
<機能構成の例>
図15は、実施形態2の生体検知装置2000の機能構成を例示するブロック図である。実施形態2の生体検知装置2000は、第2表示制御部2080、第2取得部2100、及び第2生体検知部2120を有する。第2表示制御部2080は、端末60のディスプレイ装置20にガイド情報を表示させる。第2表示制御部2080は、ガイド情報の表示後にカメラ10によって生成された複数の撮像画像40を取得する。第2生体検知部2120は、複数の撮像画像40それぞれについて、対象物体50の顔の方向と視線方向を特定する。そして、第2生体検知部2120は、各撮像画像40について特定した顔の方向と視線方向との差分に基づいて、対象物体50が生体であるか否かを判定する。
【0112】
<ハードウエア構成の例>
実施形態2の生体検知装置2000のハードウエア構成は、実施形態1の生体検知装置2000のハードウエア構成と同様に、例えば、
図3で表される。ただし、実施形態2のストレージデバイス508には、実施形態2の生体検知装置2000の各機能を実現するためのプログラムが格納される。
【0113】
<処理の流れ>
図16は、実施形態2の生体検知装置2000によって実行される処理の流れを例示するフローチャートである。第2表示制御部2080はガイド情報をディスプレイ装置20に表示させる(S202)。第2取得部2100は複数の撮像画像40を取得する(S204)。第2生体検知部2120は複数の撮像画像40それぞれについて、対象物体50の視線方向と顔の方向との差分を算出する(S206)。なお、視線方向と顔の方向は、必ずしも全ての撮像画像40について算出される必要はない。第2生体検知部2120は、複数の撮像画像40それぞれについて算出された、顔の方向と視線方向との差分に基づいて、対象物体50が生体であるか否かを判定する(S208)。
【0114】
なお、実施形態2の生体検知装置2000によって実行される処理の流れは、
図16に示す流れに限定されない。例えば、第2生体検知部2120によって利用される撮像画像40は、一度にまとめて取得されなくてもよい。例えば生体検知装置2000は、「1)新たな撮像画像40を1つ取得し、2)取得した撮像画像40について、顔の方向と視線方向の差分の算出する」という処理を繰り返すことで、複数の撮像画像40それぞれについて、顔の方向と視線方向の差分を算出する。
【0115】
その他にも例えば、ガイド情報が表示されるタイミングは、撮像画像40の取得前に限定されない。例えば後述するように、生体検知装置2000は、対象物体50によって行われている動作が適切な動作であるか否かを判定し、適切な動作が行われていない場合に、適切な動作が行われるようにするためのガイド情報を表示してもよい。
【0116】
<ガイド情報について>
第2表示制御部2080によってディスプレイ装置20に表示されるガイド情報は様々である。例えば
図14に示す例のように、視線方向についてのガイドは、視線を固定すべき位置を示し、顔の方向についてのガイドは、顔を動かすべき方向を示す。このガイドを見ることで、対象物体50は、視線方向を固定しつつ、顔を左右に振るべきであることが分かる。
【0117】
その他にも例えば、第2表示制御部2080は、対象物体50の顔の動きに応じ、次に対象物体50が行うべき行動を表すガイド情報を表示させる。
図17は、対象物体50が次に行うべき行動を表すガイド情報を例示する図である。
図17においてディスプレイ装置20に表示される画面90-1から画面90-3にはいずれも、対象物体50に対するメッセージ、視線を向けるべき位置を表すガイド、及び顔を向けるべき方向を表すガイドを含むガイド情報が表示されている。このようなガイドをディスプレイ装置20に表示させることで、どの方向を向くべきかを対象物体50が容易に把握できるようになる。
【0118】
まず最初に、第2表示制御部2080は、画面90-1をディスプレイ装置20に表示させる。画面90-1に表示されているガイド情報には、顔の方向に関するガイドとして、正面を向くように促すメッセージや、正面を向いている顔の画像が表示されている。また、視線方向に関するガイドとして、バツ印のマークや目の画像が表示されている。
【0119】
第2表示制御部2080は、対象物体50の顔が正面を向いているか否かを判定する。対象物体50の顔の方向は、撮像画像40を用いて第2生体検知部2120が算出する。
【0120】
ここで、対象物体50の顔が正面を向くまでの間、画面90-1が表示され続けるようにすることが好適である。このようにすることで、対象物体50の顔が基準となる正面方向を向くまでは、生体検知が開始されないようにすることができる。ただし、所定の時間が経過しても対象物体50の顔が正面を向かなかった場合、タイムアウトにより、対象物体50が生体でないと判定されてもよい。
【0121】
一方、対象物体50の顔が正面を向いていると判定されたら、第2表示制御部2080は、ディスプレイ装置20に画面90-2を表示させる。画面90-2には、顔の方向に関するガイドとして、左を向くように促すメッセージ、左向きの矢印、及び左を向いている顔の画像が表示されている。また、視線方向に関するガイドとして、バツ印のマークや目の画像が表示されている。
【0122】
第2表示制御部2080は、対象物体50の顔が左を向いているか否かを判定する。例えば、対象物体50の顔の方向が閾値以下である場合に、対象物体50の顔が左を向いていると判定される。
【0123】
ディスプレイ装置20には、対象物体50の顔が左を向くまでの間、画面90-2が表示され続ける。ただし、所定の時間が経過しても対象物体50の顔が正面を向かなかった場合、タイムアウトにより、対象物体50が生体でないと判定されてもよい。
【0124】
一方、対象物体50の顔が左を向いていると判定されたら、第2表示制御部2080は、ディスプレイ装置20に画面90-3を表示させる。画面90-3には、顔の方向に関するガイドとして、右を向くように促すメッセージ、右向きの矢印、及び右を向いている顔の画像が表示されている。また、視線方向に関するガイドとして、バツ印のマークや目の画像が表示されている。
【0125】
このように、画面90-1、画面90-2、及び画面90-3を順に表示することにより、対象物体50に対し、視線を固定しつつ、顔の方向を正面、左、及び右の順に変更するように促すことができる。また、その後、画面90-2と画面90-3をさらに交互に表示させれば、対象物体50に対し、顔の方向を左右に繰り返し動かすように促すことができる。
【0126】
なお、対象物体50が顔の動かし方をより容易に理解できるように、顔の方向を表すガイドがアニメーションで表示されてもよい。
図18は、顔の方向を表すガイドのアニメーションを例示する図である。
【0127】
ここで、ガイド情報は、カメラ10によって生成された撮像画像40と共にディスプレイ装置20に表示されることが好適である。例えばスマートフォンなどの携帯端末では、カメラを利用する際、カメラによる撮像の結果がリアルタイムでディスプレイ装置に表示されうる。そこで、端末60においてもこのように、カメラ10によって生成された撮像画像40がリアルタイムでディスプレイ装置20に表示されるようにし、撮像画像40と共に(例えば、撮像画像40に重畳させて)ガイド情報がディスプレイ装置20に表示されるようにする。このようにすることで、対象物体50は、視線を固定しながら顔を左右に振るという動作を、自分の顔と視線の状態を確認しながら行うことができる。
【0128】
例えば
図18に示したアニメーションのガイド情報のケースでは、当該アニメーションと共に、カメラ10によって生成された撮像画像40をリアルタイムでディスプレイ装置20に表示させることが好適である。これにより、対象物体50は、アニメーションと自分の顔が重なるように自分の顔を動かすことで、顔を適切に左右に振ることができる。そのため、生体検知のために必要な動作を、対象物体50がより直感的に行えるようになる。ただし、顔の動きを表すアニメーションは、対象物体50の顔と重ならない位置(例えば画面の隅)に表示されてもよい。
【0129】
その他にも例えば、第2表示制御部2080は、対象物体50によって行われた動作が適切な動作でない場合に、対象物体50が適切な動作を行えるようにするためのガイド情報を表示させてもよい。例えば第2表示制御部2080は、対象物体50の顔の振れ幅の大きさが十分に大きいか(閾値以上であるか)を判定する。対象物体50の顔の振れ幅は、対象物体50の顔の方向の最大値と最小値との差分として算出することができる。
【0130】
対象物体50の顔の振れ幅の大きさが閾値より小さい場合、第2表示制御部2080は、顔の振れ幅を大きくすることを求めるガイド情報を、ディスプレイ装置20に表示させる。例えば、「もっと大きく顔を動かして下さい」などといったメッセージを含むガイド情報が表示される。このようなガイド情報を表示させることにより、対象物体50が、顔をより大きく振るべきであることを把握することができる。そして、このようなガイドによって顔の振れ幅をより大きくすると、対象物体50が実物の顔である場合に、顔の方向と視線方向との差分がより大きくなる。そのため、生体検知をより高い精度で行うことができるようになる。
【0131】
対象物体50によって行われた動作が適切でない別のケースとして、対象物体50の視線が固定されていないケースが考えられる。そこで例えば、第2表示制御部2080は、対象物体50の視線が固定されているか否かを判定し、対象物体50の視線が固定されていない場合、視線の固定を促すメッセージが含まれるガイド情報をディスプレイ装置20に表示させる。例えば、「視線を動かさないで下さい」などといったメッセージが含まれるガイド情報が表示される。このようなガイド情報を表示させることにより、対象物体50が、視線方向を固定できていないことを把握することができる。
【0132】
なお、視線が固定されているか否かは、例えば、視線方向の変化に基づいて算出することができる。例えば、対象物体50が正面を向いている時に算出された視線方向と現在の視線方向との差分の絶対値が閾値以上となった場合に、視線が固定されていないと判定される。
【0133】
第2表示制御部2080は、対象物体50が自分の視線の位置や顔の方向を把握できるように、対象物体50の視線の位置や顔の向きを示すガイド情報をディスプレイ装置20に表示させてもよい。
図19は、対象物体50の視線の位置と顔の方向を含むガイド情報を例示する図である。
図19において、現在の視線位置は白い丸印で表されている。対象物体50は、白い丸印がバツ印に重なるように視線の位置を調整することにより、視線を直感的に固定させることができるようになる。
【0134】
また、
図19において、現在の顔の方向は黒の丸印で表されている。対象物体50は、黒い丸印を見ることにより、自分の顔がどちらの方向を向いているのかを、直感的に把握することができる。なお、
図19は、対象物体50が正面を向くことを求められているケースを表している。そのため、対象物体50は、黒の丸印がバツ印に重なるように顔の方向を調整することにより、直感的に顔を正面方向に向けることができる。
【0135】
なお、対象物体50が正面方向を向いたことを契機として生体検知の一連の処理が開始される場合、生体検知装置2000は、
図19の例において、白い丸印と黒い丸印の双方がバツ印と重なったか否かを判定し、双方がバツ印と重なったと判定されたら、生体検知の一連の処理を開始するようにしてもよい。
【0136】
顔の方向を示すガイドは、
図19に示したものに限定されない。
図20は、対象物体50の視線の位置と顔の方向を含むガイド情報を例示する第2の図である。
図20において、現在の視線位置と現在の顔の方向を表すマークは、
図19と同様である。
【0137】
図20では、水平方向に長い長方形の枠の中に、顔の方向を表す黒の丸印が表示されている。また、顔の方向の目標を表すマークとして、黒の星印が表示されている。さらに、顔の方向を星印の向きまで移動させるように促すメッセージも表示されている。対象物体50は、黒の丸印が黒の星印に重なるように顔の方向を変えることにより、直感的に顔の方向を適切な方向へ変えることができる。
【0138】
なお、生体検知装置2000は、顔の方向が最大の方向(
図20における黒の星印)まで移動した場合、ある程度の時間(例えば2秒間)、顔の方向をその方向にとどめるように促すガイド情報をディスプレイ装置20に表示させてもよい。
【0139】
対象物体50によって行われた動作が適切でない別のケースとして、顔の動きが速すぎるケースが考えられる。そこで第2表示制御部2080は、顔の動きが速すぎる場合に、顔の動きを遅くするように促すガイドをディスプレイ装置20に表示させてもよい。顔の動きの速さは、例えば、時系列で隣接する撮像画像40における顔の位置の差で表すことができる。その他にも例えば、顔の動きの差は、顔の方向の時間変化量で表されてもよい。
【0140】
例えば第2表示制御部2080は、顔の動きの速さが閾値以上であるか否かを判定する。そして、顔の動きの速さが閾値以上である場合、第2表示制御部2080は、顔の動きを遅くするように促すガイド情報をディスプレイ装置20に表示させる。このガイド情報は、例えば、「もっとゆっくり顔を動かしてください」などといったメッセージを含む。その他にも例えば、
図17に示した顔の動きのアニメーションをガイド情報に含めてもよい。この場合、ガイド情報に含めるアニメーションにおいて、通常時よりも遅く顔が動くようにしてもよい。
【0141】
なお、第2表示制御部2080は、顔に加え、胴体部分(例えば肩など)の姿勢に関するガイドを表示させてもよい。例えば第2表示制御部2080は、撮像画像40を利用して対象物体50の胴体の方向を算出し、算出した胴体の方向に基づいて、胴体が正面を向いているか否か(例えば、胴体の方向と正面方向の差分の絶対値が閾値以下であるか否か)を判定する。そして、胴体が正面を向いていないと判定された場合、第2表示制御部2080は、胴体を正面に向けるように促すガイド情報をディスプレイ装置20に表示させる。例えばこのガイド情報は、「胴体を正面に向けてください」などといったメッセージを含む。その他にも例えば、ガイド情報は、正面方向を向いている胴体の画像を含んでもよい。
【0142】
以上の例では、ガイド情報がディスプレイ装置20に表示されている。しかしながら、ディスプレイ装置20への表示に加え、又は、ディスプレイ装置20への表示に代えて、ガイド情報が音声で出力されてもよい。例えば、「正面を向いて下さい」や「視線を固定したまま左を向いて下さい」などといった種々のメッセージが、音声メッセージとして出力される。また、前述したように、対象物体50の動作が適切でないことを検知する場合、検知された状態に合わせた音声メッセージが出力されてもよい。例えば、「視線をもう少し右上に向けて下さい」や「顔をもう少しゆっくり動かしてください」などといった音声メッセージが出力される。また、ステレオ音声などによって音声で方向を表せる場合、視線や顔を向けるべき方向を、音声の方向で表してもよい。例えば、右方向から聞こえる音声で「音が出る方向へ顔を向けて下さい」というメッセージを出力する。
【0143】
<生体検知:S206、S208>
第2生体検知部2120は、各撮像画像40について、その撮像画像40に含まれる対象物体50の顔の画像を用いて、対象物体50の顔の方向と視線方向を算出し、それらの差分を算出する(S206)。そして、各撮像画像40について算出された顔の方向と視線方向との差分に基づいて、対象物体50が生体であるか否かを判定する(S208)。例えば第2生体検知部2120は、対象物体50の顔の方向と視線方向に十分な差異がある場合に、対象物体50が生体であると判定する。一方、対象物体50の顔の方向と視線方向に十分な差異がない場合、第2生体検知部2120は、対象物体50が生体でないと判定する。
【0144】
対象物体50の顔の方向と視線方向に十分な差異があるか否かは、例えば、顔の方向と視線方向の差分を閾値と比較することで判定される。具体的な例としては、第2生体検知部2120は、顔の方向と視線方向の差分を撮像画像40ごとに算出し、顔の方向と視線方向の差分の最大値が第1の閾値以上であるか否かを判定する。顔の方向と視線方向の差分の最大値が第1の閾値以上である場合、顔の方向と視線方向に十分な差異があると判定される。一方、顔の方向と視線方向の差分の最大値が第1の閾値未満である場合、顔の方向と視線方向に十分な差異がないと判定される。ここで、右方向をプラス方向としているため、顔の方向と視線方向の差分の最大値が第1の閾値以上であることは、顔を右方向に向けた場合に、顔の方向と視線方向に十分な差異があること(言い換えれば、視線を固定したまま顔が十分に大きく右方向に向けられていること)を意味する。
【0145】
その他にも例えば、対象物体50の顔の方向と視線方向に十分な差異があるか否かは、顔の方向と視線方向の差分の最小値を第2の閾値と比較することで判定されてもよい。顔の方向と視線方向の差分の最小値が第2の閾値以下である場合、顔の方向と視線方向に十分な差異があると判定される。一方、顔の方向と視線方向の差分の最小値が第2の閾値より大きい場合、顔の方向と視線方向に十分な差異が無いと判定される。ここで、左方向をマイナス方向としているため、顔の方向と視線方向の差分の最小値が第2の閾値以下であることは、顔を左方向に向けた場合に、顔の方向と視線方向に十分な差異があること(言い換えれば、視線を固定したまま顔が十分に大きく左方向に向けられていること)を意味する。
【0146】
第2生体検知部2120は、視線を固定したまま顔が左右双方に十分に振られている場合に、顔の方向と視線方向に十分な差異があると判定してもよい。この場合、例えば第2生体検知部2120は、「顔の方向と視線方向の差分の最大値が第1の閾値以上であり、かつ、顔の方向と視線方向の差分の最小値が第2の閾値以下である」か否かを判定する。顔の方向と視線方向の差分の最大値が第1の閾値以上であり、かつ、顔の方向と視線方向の差分の最小値が第2の閾値以下である場合、第2生体検知部2120は、顔の方向と視線方向に十分な差異があると判定する。一方、顔の方向と視線方向の差分の最大値が第1の閾値以上でないか、又は、顔の方向と視線方向の差分の最小値が第2の閾値以下でない場合、第2生体検知部2120は、顔の方向と視線方向に十分な差異が無いと判定する。
【0147】
このように左右双方の方向についての判定を行うことにより、3Dマスク等を利用したなりすましをより高い精度で防ぐことができる。例えば、ある3Dマスクにおいて、描かれている視線の方向が大きく右に偏っていたとする。そして、この3Dマスクを対象物体50がかぶってなりすましを行おうとしたとする。この場合、対象物体50が顔を左に向けると、顔は左を向いている一方で視線が右を向いているため、顔の方向と視線方向の差分が大きくなる。そのため、ユーザが左を向いた場合には、顔の方向と視線方向との差分に基づくなりすましの検出が難しい可能性がある。一方で、このケースでユーザが右を向くと、顔と視線の双方が右を向くため、顔の方向と視線方向の差分が小さくなる。そのため、ユーザが右を向いた場合には、顔の方向と視線方向との差分に基づいてなりすましを検出することができる。以上のことから、対象物体50に左右両方を向かせることが好適である。
【0148】
生体検知装置2000は、顔を左右に振る一連の動作を複数回対象物体50に行わせ、これら複数回の動作ごとに、顔の方向と視線方向に十分な差異があるか否かを判定してもよい。顔を左右に振る一連の動作とは、「顔を左に向けた後、顔を右に向ける」という一連の動作か、又は、「顔を右に向けた後、顔を左に向ける」という一連の動作である。例えば第2生体検知部2120は、顔を左右に振る一連の動作を1つのセットとして扱い、複数の撮像画像40を解析することにより、セットの動作を複数検出する。第2生体検知部2120は、セットごとに、顔の方向と視線方向の差分の最大値及び最小値のいずれか一方又は双方を算出し、その算出結果に応じて、対象物体50が生体であるか否かを判定する。
【0149】
例えば第2生体検知部2120は、所定数n(nは整数)個のセットそれぞれについて、顔の方向と視線方向に十分な差異があるか否かを判定する。そして、第2生体検知部2120は、顔の方向と視線方向に十分な差異があると判定されたセットの数が所定数m(mは1以上n以下の整数)以上であるか否かを判定する。顔の方向と視線方向に十分な差異があると判定されたセットの数がm以上である場合、第2生体検知部2120は、対象物体50が生体であると判定する。一方、顔の方向と視線方向に十分な差異があると判定されたセットの数が所定数m未満である場合、第2生体検知部2120は、対象物体50が生体でないと判定する。
【0150】
その他にも例えば、第2生体検知部2120は、所定時間内に検出されたセットそれぞれについて、顔の方向と視線方向に十分な差異があるか否かを判定し、顔の方向と視線方向に十分な差異があると判定されたセットの数がm以上である場合に、対象物体50が生体であると判定してもよい。
【0151】
その他にも例えば、第2生体検知部2120は、顔の方向と視線方向に十分な差異があると判定されるセットの数がm個以上になるまで、対象物体50に顔を左右に振る動作を繰り返させてもよい。この場合、第2生体検知部2120は、対象物体50が顔を左右に振る一連の動作を行うごとに、当該一連の動作について、顔の方向と視線方向に十分な差異があるか否かを判定する。顔の方向と視線方向に十分な差異があると判定された場合には、カウンタに1が加算される。第2生体検知部2120は、カウンタがm以上になった場合、対象物体50が生体であると判定する。一方、カウンタがm以上にならなかった場合(例えば、カウンタがm以上になる前に所定時間が経過した場合)、第2生体検知部2120は、対象物体50が生体でないと判定する。
【0152】
なお、顔を左右に振る動作が正しく行われなかった場合、上記カウンタが0にクリアされるようにしてもよい。顔を左右に振る動作が正しく行われないケースは、1)顔が左又は右に十分に向けられないケース(例えば、
図25の例で黒の丸印が黒の星印に重なる前に、顔が右に向けられるケース)や、2)顔の方向と視線方向に十分な差異がないと判定されるケースである。このようにカウンタがクリアされると、顔を左右に振る正しい動作が連続してm回行われた場合のみ、対象物体50が生体であると判定される。一方、顔を左右に振る正しい動作が連続でm回行われるまでは、対象物体50が生体であると判定されない。なお、カウンタのクリア回数に上限を設け、カウンタのクリア回数が上限に達した場合、対象物体50が生体でないと判定されるようにしてもよい。また、動作を行う時間に制限時間を設け、顔を左右に振る動作が、制限時間以内に正しく連続してm回行われない場合には、対象物体50が生体でないと判定されるようにしてもよい。
【0153】
顔を右に向ける動作と顔を左に向ける動作をセットで扱うのではなく、これらの動作が個別にカウントされるようにしてもよい。この場合、顔を右に向ける動作と顔を左に向ける動作を行うべき回数(前述した所定数m)は、互いに同じであってもよいし、互いに異なってもよい。後者の場合、例えば、「顔を左に向ける動作を3回行わせ、顔を右に向ける動作を2回行わせる」などといったことが可能となる。
【0154】
なお、このように顔を左右に振る動作を複数回行わせる場合、表示制御部2020は、動作が正しく行われた回数をディスプレイ装置20に表示させてもよい。また、動作が行われる度に、動作が正しく行われたか否かの判定結果を表す表示(丸印やOKなどといった表示)がディスプレイ装置20に表示されてもよい。
【0155】
<実施形態2の変形例1>
実施形態2の生体検知装置2000において、顔を動かさずに、視線をディスプレイ装置20上の特定の位置(例えば
図14等におけるバツ印)に固定させたまま、ディスプレイ装置20を左右に動かすようにさせてもよい。
図21は、実施形態2の変形例1の生体検知装置における対象物体50の動作を例示する図である。このケースにおいても、ディスプレイ装置20の正面方向を基準の方向(0°)とすると、顔の方向と視線方向が、
図13に示したグラフと同様に変化することとなる。そのため、本変形例の生体検知装置2000においても、複数の撮像画像40それぞれについて、対象物体50の顔の方向と視線方向との差分を算出し、当該差分に基づいて、対象物体50が生体であるか否かを判定することができる。
【0156】
対象物体50が生体であるか否かを判定する具体的な方法は、前述した通りである。ただし、生体検知装置2000は、顔を左右に振る動作を検出する代わりに、ディスプレイ装置20を左右に振る動作を検出する。なお、ディスプレイ装置20を左右に振る動作は、ディスプレイ装置20に対する顔の方向の変化に基づいて検出することができる。例えば、ディスプレイ装置20が十分に右に移動されたかどうかは、ディスプレイ装置20に対する顔の方向が十分に左に移動したかどうかを判定することにより、判定することができる。同様に、ディスプレイ装置20が十分に左に移動されたかどうかは、ディスプレイ装置20に対する顔の方向が十分に右に移動したかどうかを判定することにより、判定することができる。
【0157】
ここで、本変形例の生体検知装置2000では、ガイド情報に、実施形態2のケースと異なるものが含まれうる。具体的には、生体検知装置2000は、顔を左右に振ることを促すのではなく、端末60を左右に振ることを促すガイド情報をディスプレイ装置20に表示させる。また、顔を動かさないように促すガイド情報も表示させることが好適である。
【0158】
図22は、実施形態2の変形例1の生体検知装置2000におけるガイド情報を例示する図である。この例では、まず最初に、画面100-1が表示される。画面100-1には、顔を動かさず、なおかつ、ディスプレイ装置20上のバツ印に視線を固定して、端末60(ディスプレイ装置20)を正面に構えるように促すメッセージが表示されている。
【0159】
その後、画面100-2が表示される。画面100-2には、顔を動かさず、なおかつ、ディスプレイ装置20上のバツ印に視線を固定したまま、端末60を左へ動かすように促すメッセージが表示される。画面100-2は、例えば、対象物体50の視線の方向と顔の方向のいずれもがディスプレイ装置20に対して正面を向いていることが検出されたことに応じて表示される。
【0160】
その後、画面100-3が表示される。画面100-3には、顔を動かさず、なおかつ、ディスプレイ装置20上のバツ印に視線を固定したまま、端末60を右へ動かすように促すメッセージが表示される。画面100-3は、例えば、顔を動かさず、なおかつ、ディスプレイ装置20上のバツ印に視線が固定された状態で、端末60が左へ十分に動かされたことが検出されたことに応じて、表示される。端末60が左へ十分に動かされたか否かの判定は、例えば、顔の方向が十分に右へ向いたか否かの判定(顔の方向がプラスの閾値以上になったか否かの判定)で実現できる。
【0161】
なお、端末60を繰り返し左右に動かすようにする場合、再度画面100-2が表示される。画面100-2は、例えば、顔を動かさず、なおかつ、ディスプレイ装置20上のバツ印に視線が固定された状態で、端末60が右へ十分に動かされたことが検出されたことに応じて、表示される。端末60が右へ十分に動かされたか否かの判定は、例えば、顔の方向が十分に左へ向いたか否かの判定(顔の方向がマイナスの閾値以下になったか否かの判定)で実現できる。
【0162】
<実施形態2の変形例2>
実施形態2の生体検知装置2000において、ディスプレイ装置20と顔の向きを固定したまま(ディスプレイ装置20を動かさずに、顔の向きをディスプレイ装置20の正面に向けたまま)、視線を左右に振らせるようにしてもよい。
図23は、実施形態2の変形例2の生体検知装置2000における対象物体50の動作を例示する図である。
【0163】
このケースは、実施形態2の生体検知装置2000において、視線方向と顔の方向の扱いを逆にすることに相当する。すなわち、視線方向を固定する代わりに顔の方向を固定し、顔を左右に振る代わりに、視線を左右に振ることになる。また、ガイド情報においても、実施形態2の生体検知装置2000において、視線方向について行われるガイドと同様のガイドが、実施形態2の変形例2の生体検知装置2000では、顔の方向について行われる。すなわち、視線方向を固定するガイドではなく、顔の方向を固定するガイドが表示される。さらに、実施形態2の生体検知装置2000において、顔の方向について行われるガイドと同様のガイドが、実施形態2の変形例2の生体検知装置2000では、視線の方向について行われる。すなわち、顔の方向を正面や左右に向けさせるガイドの代わりに、視線を正面や左右に向けさせるガイドが表示される。
【0164】
図24は、実施形態2の変形例2の生体検知装置2000におけるガイド情報を例示する図である。この例では、まず最初に、画面110-1が表示される。画面110-1には、顔を動かさずに視線をディスプレイ装置20の正面に向けるように促すメッセージが表示されている。
【0165】
その後、画面110-2が表示される。画面110-2には、顔を動かさずに視線を左へ動かすように促すメッセージが表示される。画面110-2は、例えば、対象物体50の視線方向と顔の方向のいずれもがディスプレイ装置20に対して正面を向いていることが検出されたことに応じて表示される。
【0166】
その後、画面110-3が表示される。画面110-3には、顔を動かさずに視線を右へ動かすように促すメッセージが表示される。画面110-3は、例えば、顔の方向が正面に固定された状態で、視線が左へ十分に動かされたこと(視線方向がマイナスの閾値以下になったこと)が検出されたことに応じて、表示される。なお、画面110-3では、視線が左に向けられた状態で閲覧されるため、右向きの矢印が左寄りの位置に表示されている。
【0167】
なお、視線を繰り返し左右に動かすようにする場合、再度画面110-2が表示される。画面110-2は、例えば、顔の方向が正面に固定された状態で、視線が右へ十分に動かされたこと(視線方向がプラスの閾値以上になったこと)が検出されたことに応じて、表示される。ただし、視線が右に向けられた状態で閲覧されるため、左向きの矢印は右寄りの位置に表示されることが好適である。
【0168】
<実施形態1との組み合わせについて>
実施形態1の生体検知装置2000と実施形態2の生体検知装置2000は、それぞれ異なる方法で生体検知を行う。そのため、同一の対象物体50について、実施形態1の生体検知装置2000による生体検知と、実施形態2の生体検知装置2000(変形例1又は変形例2でもよい)による生体検知の双方が行われることが好適である。
図25は、実施形態1の生体検知装置2000による生体検知と、実施形態2の生体検知装置2000による生体検知が順に行われる場合の処理の流れを例示するフローチャートである。
図25の例では、実施形態1の生体検知装置2000による生体検知(
図4のフローチャートに示されている一連の処理)が行われた後、実施形態2の生体検知装置2000による生体検知(
図16のフローチャートに示されている一連の処理)が行われる。ただし、実施形態2の生体検知装置2000による生体検知が行われた後、実施形態1の生体検知装置2000による生体検知が行われてもよい。
【0169】
例えばこれらの生体検知は、ユーザ認証の一環として行われうる。例えば、ユーザ認証の手法の一つとして、ユーザの顔をカメラで撮像し、その顔を事前に登録されている顔と比較することにより、そのユーザが登録済みのユーザであるか否かを判定するというものがある。この際、登録済みのユーザの写真などを利用して、他人が登録済みのユーザになりすますことを防ぐため、カメラによって撮像された物体が、写真などではなく生体であることを確認することが好ましい。そこで、対象物体50の画像と登録済みのユーザの画像との比較によって、対象物体50が登録済みのユーザであることの確認に加え、生体検知装置2000を利用して、対象物体50が生体であること(すなわち、写真などや3Dマスク等を利用したなりすましが行われていないこと)を確認することが好ましい。なお、対象物体50が登録済みのユーザであることを確認する処理と、対象物体50が生体であることを確認する処理は、どちらが先に行われてもよいし、並行して行われてもよい。
【0170】
<対象物体50の入れ替わりを防ぐ方法>
複数の手法で生体検知が行われる場合、最初から最後まで同一の対象物体50を対象として処理が行われていることを担保することが好ましい。例えば、実施形態1の生体検知装置2000による生体検知が行われてから、実施形態2の生体検知装置2000による生体検知が行われる場合、実施形態1の生体検知装置2000による生体検知が開始されてから、実施形態2の生体検知装置2000による生体検知が完了するまでの間、同一の対象物体50が生体検知の対象となるようにする。こうすることで、生体検知を実現する手法の種類ごとに生体検知の対象を入れ替えることにより、その手法では防ぎづらいなりすましの手段が利用されることを防ぐことができる。
【0171】
例えば生体検知装置2000は、以下のような処理を行う。まず前提として、生体検知装置2000は、2種類以上の生体検知処理を実行する。例えば、実施形態1の生体検知装置2000によって行われる生体検知処理(以下、第1の生体検知処理)と、実施形態2の生体検知装置2000によって行われる生体検知処理(以下、第2の生体検知処理)が行われるとする。この場合、生体検知装置2000は、第1の生体検知処理が開始してから(
図25のS102が最初に開始されてから)、第2の生体検知処理が完了するまで(
図25のS208が完了するまで)の間、生体検知のための処理と並行して、カメラ10によって同一の対象物体50が撮像され続けているか否かを繰り返し判定する。そして、カメラ10によって同一の対象物体50が撮像され続けていない可能性があると判定された場合、生体検知装置2000は、生体検知の処理を終了する。
【0172】
カメラ10によって同一の対象物体50が撮像され続けているか否かの判定は、例えば、対象物体50のトラッキングによって実現することができる。具体的には、生体検知装置2000は、カメラ10によって生成される撮像画像40を時系列で解析することで、対象物体50をトラッキングする。生体検知装置2000は、当該トラッキングに基づいて、対象物体50が撮像画像40に含まれているか否かを繰り返し判定する。そして、一連の生体検知処理が完了する前に、対象物体50が撮像画像40に含まれなくなった場合、生体検知装置2000は、カメラ10によって同一の対象物体50が撮像され続けていないと判定する。一方、対象物体50が撮像画像40に含まれ続けている間は、カメラ10によって同一の対象物体50が撮像され続けていると判定される。トラッキングでは、対象物体50を検出するために探索する撮像画像40内の領域が、前回検出された領域の近くに限定される。そのため、対象物体50の検出に要する処理の負荷が小さくなるという利点がある。
【0173】
その他にも例えば、生体検知装置2000は、生体検知処理の開始時に対象物体50の画像特徴量を登録し、当該画像特徴量が撮像画像40に含まれ続けることを確認することで、対象物体50がカメラ10に撮像され続けているか否かを判定してもよい。この場合、生体検知装置2000は、一連の生体検知処理が開始される前(例えば、
図25のS102が最初に開始される前に、撮像画像40から対象物体50を検出し、その対象物体50の画像特徴量を登録する(記憶装置に格納する)。生体検知装置2000は、その後に得られる撮像画像40から、登録した対象物体50の画像特徴量を検出する。
【0174】
撮像画像40から対象物体50の画像特徴量を検出する処理は、全ての撮像画像40に対して行われてもよいし、一部の撮像画像40に対して行われてもよい。後者の場合、例えば生体検知装置2000は、所定時間ごと(所定数ごと)の撮像画像40を対象として、対象物体50の画像特徴量の検出を行う。その他にも例えば、生体検知装置2000は、特定の条件が満たされたことに応じて、その時に得られる撮像画像40を対象として、対象物体50の画像特徴量の検出を行う。実施形態1の生体検知装置2000の場合、特定の条件は、例えば、ディスプレイ装置20に表示される画面30が変更されたことなどである。また、実施形態2の生体検知装置2000の場合、特定の条件は、例えば、顔が正面を向いた(顔の方向が0°になった)、顔が左を向いた(顔の方向がマイナスの閾値以下となった)、顔が右を向いた(顔の方向がプラスの閾値以上となった)、及び顔が動いているなどといった条件のうち、いずれか1つ以上である。
【0175】
一連の生体検知処理が完了する前に、対象物体50の画像特徴量が撮像画像40から検出されなくなった場合、生体検知装置2000は、カメラ10によって同一の対象物体50が撮像され続けていないと判定する。一方、一連の生体検知処理が完了するまでの間、対象物体50の画像特徴量が撮像画像40から検出され続ける場合には、カメラ10によって同一の対象物体50が撮像され続けていると判定される。対象物体50の画像特徴量を撮像画像40から検出する手法によれば、対象物体50以外の物体がカメラ10に撮像されうる場合であっても、対象物体50がカメラ10に撮像され続けているか否かを正確に判定することができる。
【0176】
カメラ10によって同一の対象物体50が撮像され続けていないと判定された場合、生体検知装置2000は、何らかの対処を行うことが好適である。例えば生体検知装置2000は、対象物体50の生体検知を最初から(例えば、
図25のS102から)やり直すようにする。この際、「カメラ10で自分を撮影し続けて下さい」といったメッセージをディスプレイ装置20に表示させることにより、ユーザに対し、カメラ10で自分を撮影し続けなければならないことを認識させることが好適である。その他にも例えば、生体検知装置2000は、カメラ10によって同一の対象物体50が撮像され続けていないと判定された時に行われていた生体検知が、複数種類の生体検知のうちのどれであるかを示す情報を、ディスプレイ装置20に表示させてもよい。
【0177】
また、生体検知処理のやり直しが所定回数以上(一回でもよい)発生した場合、それ以上生体検知の処理が行えないようにしてもよい。また、なりすましの対象とされたユーザのアカウントを保護する処理が行われるようにしてもよい。例えば前述したように、生体検知がユーザ認証の一環として行われるとする。この場合において、例えば人物Aが登録済みのユーザBになりすまそうとしたとする。具体的には、人物AがユーザBの写真をカメラ10に撮像させることにより、認証対象の人物がユーザBであると判定された後、生体検知装置2000によって生体検知が行われたとする。そして、前述した対象物体50のトラッキングなどにより、生体検知のやり直しが所定回数以上発生したとする。この場合、例えば生体検知装置2000は、ユーザBのアカウントをロックしたり、ユーザBの携帯端末に対して警告の通知を送信したりすることにより、ユーザBのアカウントを保護する。こうすることで、なりすましの被害をより適切に防ぐことができる。
【0178】
なお、生体検知装置2000は、同一の対象物体50が撮像され続けていない場合に行われる処理と同様の処理を、撮像画像40から人の顔が複数検出された場合に行ってもよい。
【0179】
以上、実施の形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【0180】
なお、上述の例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに提供することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM、CD-R、CD-R/W、半導体メモリ(例えば、マスク ROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM)を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに提供されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【0181】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
コンピュータによって実行されるプログラムが格納されているコンピュータ可読媒体であって、
前記プログラムは、前記コンピュータに、
複数の領域それぞれに表示が含まれる第1画面と、前記第1画面と異なる表示が含まれる第2画面とをディスプレイ装置に表示させる表示制御ステップと、
前記第1画面と前記第2画面とがそれぞれ表示されている間にカメラで対象を撮像することによって生成された、複数の撮像画像を取得する取得ステップと、
複数の前記撮像画像を用いて前記対象が生体であるか否かを判定する生体検知ステップと、を実行させ、
前記第1画面には、表示が互いに異なる少なくとも2つの領域が含まれる、コンピュータ可読媒体。
(付記2)
前記第1画面に含まれる複数の前記領域のうち、少なくとも2つの前記領域は、互いに異なる色の表示、互いに異なる明るさの表示、又は互いに異なる文字、記号、若しくは図形を含む、付記1に記載のコンピュータ可読媒体。
(付記3)
前記表示制御ステップにおいて、前記第1画面に含まれる複数の前記領域の境界を、前記撮像画像を生成するカメラと前記ディスプレイ装置の位置関係に基づいて決定する、付記1又は2に記載のコンピュータ可読媒体。
(付記4)
前記第1画面に含まれる複数の前記領域の境界は、ユーザの入力によって決定される、付記1又は2に記載のコンピュータ可読媒体。
(付記5)
前記プログラムは、複数の前記撮像画像が入力されたことに応じて、前記撮像画像に写っている前記対象が生体であるか否かを表すラベルを出力するように学習された識別モデルを有し、
前記表示制御ステップにおいて、前記取得ステップにおいて取得された複数の前記撮像画像を前記識別モデルに入力し、前記識別モデルから前記ラベルを得ることにより、前記対象が生体であるか否かの判定を行う、付記1から4いずれか一項に記載のコンピュータ可読媒体。
(付記6)
前記識別モデルは、正例の訓練データと負例の訓練データの双方を用いて学習されており、
前記正例の訓練データは、前記第1画面と前記第2画面とがそれぞれ表示されている間に、実物の人の顔を撮像することで得られた複数の撮像画像と、撮像された対象が生体であることを示すデータとを含み、
前記負例の訓練データは、前記第1画面と前記第2画面とがそれぞれ表示されている間に人の顔の画像を撮像することで得られた複数の撮像画像と、撮像された対象が生体でないことを示すデータとを含む、付記5に記載のコンピュータ可読媒体。
(付記7)
前記表示制御ステップにおいて、前記ディスプレイ装置の周囲の環境光の強さを特定し、前記環境光の強さが閾値以下である場合に、前記第1画面及び前記第2画面を前記ディスプレイ装置に表示させる、付記1から6いずれか一項に記載のコンピュータ可読媒体。
(付記8)
前記表示制御ステップにおいて、前記環境光の強さが閾値より大きい場合、環境光が現在の強さよりも弱い場所に移動するように促すメッセージを出力する、付記7に記載のコンピュータ可読媒体。
(付記9)
前記表示制御ステップにおいて、前記ディスプレイ装置の周囲の環境光の強さを特定し、前記環境光の強さに応じて、前記第1画面及び前記第2画面の少なくとも一方に含める表示を決定する、付記1から8いずれか一つに記載のコンピュータ可読媒体。
(付記10)
視線の方向に関するガイドと顔の方向に関するガイドを前記ディスプレイ装置に表示させる第2表示制御ステップと、
前記カメラで前記対象を複数回撮像することで生成された撮像画像を取得する第2取得ステップと、
各前記撮像画像に写っている前記対象の顔の画像を用いて、各前記撮像画像について顔の方向と視線方向との差分を算出し、算出した前記差分に基づいて、前記対象が生体であるか否かを判定する第2生体検知ステップと、を実行させ、
前記第2表示制御ステップにおいて、同じ場所を見続けながら顔を左右に振るように促すガイドを前記ディスプレイ装置に表示させる、付記1から9いずれか一項に記載のコンピュータ可読媒体。
(付記11)
前記第2表示制御ステップにおいて、
視線を動かさずに顔を第1方向に向けるように促すガイドを前記ディスプレイ装置に表示し、
前記対象の顔の方向が前記第1方向であるか否かを判定し、
前記対象の顔の方向が前記第1方向である場合、視線を動かさずに顔を第2方向に向けるように促すガイドを前記ディスプレイ装置に表示させる、付記10に記載のコンピュータ可読媒体。
(付記12)
前記第2表示制御ステップにおいて、前記対象の顔の振れ幅の大きさが閾値以上であるか否かを判定し、顔の振れ幅の大きさが閾値以上でない場合、顔をより大きく振ることを促すガイドを前記ディスプレイ装置に表示させる、付記10又は11に記載のコンピュータ可読媒体。
(付記13)
前記第2表示制御ステップにおいて、前記対象の顔が動く速さが閾値以上であるか否かを判定し、顔が動く速さが閾値以下である場合、顔をより遅く動かすこと促すガイドを前記ディスプレイ装置に表示させる、付記10から12いずれか一項に記載のコンピュータ可読媒体。
(付記14)
前記第2表示制御ステップにおいて、前記対象の視線方向が固定されているか否かを判定し、視線方向が固定されていない場合、視線方向を動かさないように促すガイドを前記ディスプレイ装置に表示させる、付記10から13いずれか一項に記載のコンピュータ可読媒体。
(付記15)
前記第2表示制御ステップにおいて、前記対象の顔の方向を表す表示、前記対象が顔を向けるべき方向を表す表示、前記対象の視線方向を表す表示、前記対象が視線を向けるべき方向を表す表示のいずれか1つ以上を、前記ディスプレイ装置に表示させる、付記10から14いずれか一項に記載のコンピュータ可読媒体。
(付記16)
前記表示制御ステップによる画面の表示が開始されてから前記第2生体検知ステップによって生体検知が行われるまでの間に前記カメラによって生成される撮像画像を用いて、前記カメラによって同一の前記対象が撮像され続けているか否かを判定し、
同一の前記対象が撮像され続けていない場合、前記表示制御ステップから処理をやり直す、付記10から15いずれか一項に記載のコンピュータ可読媒体。
(付記17)
前記対象をトラッキングすることによって、各前記撮像画像に前記対象が写っているか否かを判定し、
前記対象が写っていない前記撮像画像が検出された場合に、同一の前記対象が撮像され続けていないと判定する、付記16に記載のコンピュータ可読媒体。
(付記18)
前記対象の画像特徴量を各前記撮像画像から検出し、
前記対象の画像特徴量が含まれない前記撮像画像が検出された場合に、同一の前記対象が撮像され続けていないと判定する、付記16に記載のコンピュータ可読媒体。
(付記19)
複数の領域それぞれに表示が含まれる第1画面と、前記第1画面と異なる表示が含まれる第2画面とをディスプレイ装置に表示させる表示制御部と、
前記第1画面と前記第2画面とがそれぞれ表示されている間にカメラで対象を撮像することによって生成された、複数の撮像画像を取得する取得部と、
複数の前記撮像画像を用いて前記対象が生体であるか否かを判定する生体検知部と、を有し、
前記第1画面には、表示が互いに異なる少なくとも2つの領域が含まれる、生体検知装置。
(付記20)
前記第1画面に含まれる複数の前記領域のうち、少なくとも2つの前記領域は、互いに異なる色の表示、互いに異なる明るさの表示、又は互いに異なる文字、記号、若しくは図形を含む、付記19に記載の生体検知装置。
(付記21)
前記表示制御部は、前記第1画面に含まれる複数の前記領域の境界を、前記撮像画像を生成するカメラと前記ディスプレイ装置の位置関係に基づいて決定する、付記19又は20に記載の生体検知装置。
(付記22)
前記第1画面に含まれる複数の前記領域の境界は、ユーザの入力によって決定される、付記19又は20に記載の生体検知装置。
(付記23)
複数の前記撮像画像が入力されたことに応じて、前記撮像画像に写っている前記対象が生体であるか否かを表すラベルを出力するように学習された識別モデルを有し、
前記表示制御部は、前記取得部は、取得された複数の前記撮像画像を前記識別モデルに入力し、前記識別モデルから前記ラベルを得ることにより、前記対象が生体であるか否かの判定を行う、付記19から22いずれか一項に記載の生体検知装置。
(付記24)
前記識別モデルは、正例の訓練データと負例の訓練データの双方を用いて学習されており、
前記正例の訓練データは、前記第1画面と前記第2画面とがそれぞれ表示されている間に、実物の人の顔を撮像することで得られた複数の撮像画像と、撮像された対象が生体であることを示すデータとを含み、
前記負例の訓練データは、前記第1画面と前記第2画面とがそれぞれ表示されている間に人の顔の画像を撮像することで得られた複数の撮像画像と、撮像された対象が生体でないことを示すデータとを含む、付記23に記載の生体検知装置。
(付記25)
前記表示制御部は、前記ディスプレイ装置の周囲の環境光の強さを特定し、前記環境光の強さが閾値以下である場合に、前記第1画面及び前記第2画面を前記ディスプレイ装置に表示させる、付記19から24いずれか一項に記載の生体検知装置。
(付記26)
前記表示制御部は、前記環境光の強さが閾値より大きい場合、環境光が現在の強さよりも弱い場所に移動するように促すメッセージを出力する、付記25に記載の生体検知装置。
(付記27)
前記表示制御部は、前記ディスプレイ装置の周囲の環境光の強さを特定し、前記環境光の強さに応じて、前記第1画面及び前記第2画面の少なくとも一方に含める表示を決定する、付記19から26いずれか一つに記載の生体検知装置。
(付記28)
視線の方向に関するガイドと顔の方向に関するガイドを前記ディスプレイ装置に表示させる第2表示制御部と、
前記カメラで前記対象を複数回撮像することで生成された撮像画像を取得する第2取得部と、
各前記撮像画像に写っている前記対象の顔の画像を用いて、各前記撮像画像について顔の方向と視線方向との差分を算出し、算出した前記差分に基づいて、前記対象が生体であるか否かを判定する第2生体検知部と、を有し、
前記第2表示制御部は、同じ場所を見続けながら顔を左右に振るように促すガイドを前記ディスプレイ装置に表示させる、付記19から27いずれか一項に記載の生体検知装置。
(付記29)
前記第2表示制御部は、
視線を動かさずに顔を第1方向に向けるように促すガイドを前記ディスプレイ装置に表示し、
前記対象の顔の方向が前記第1方向であるか否かを判定し、
前記対象の顔の方向が前記第1方向である場合、視線を動かさずに顔を第2方向に向けるように促すガイドを前記ディスプレイ装置に表示させる、付記28に記載の生体検知装置。
(付記30)
前記第2表示制御部は、前記対象の顔の振れ幅の大きさが閾値以上であるか否かを判定し、顔の振れ幅の大きさが閾値以上でない場合、顔をより大きく振ることを促すガイドを前記ディスプレイ装置に表示させる、付記28又は29に記載の生体検知装置。
(付記31)
前記第2表示制御部は、前記対象の顔が動く速さが閾値以上であるか否かを判定し、顔が動く速さが閾値以下である場合、顔をより遅く動かすこと促すガイドを前記ディスプレイ装置に表示させる、付記28から30いずれか一項に記載の生体検知装置。
(付記32)
前記第2表示制御部は、前記対象の視線方向が固定されているか否かを判定し、視線方向が固定されていない場合、視線方向を動かさないように促すガイドを前記ディスプレイ装置に表示させる、付記28から31いずれか一項に記載の生体検知装置。
(付記33)
前記第2表示制御部は、前記対象の顔の方向を表す表示、前記対象が顔を向けるべき方向を表す表示、前記対象の視線方向を表す表示、前記対象が視線を向けるべき方向を表す表示のいずれか1つ以上を、前記ディスプレイ装置に表示させる、付記28から32いずれか一項に記載の生体検知装置。
(付記34)
前記表示制御部による画面の表示が開始されてから前記第2生体検知部によって生体検知が行われるまでの間に前記カメラによって生成される撮像画像を用いて、前記カメラによって同一の前記対象が撮像され続けているか否かを判定し、
同一の前記対象が撮像され続けていない場合、前記表示制御部から処理をやり直す、付記28から33いずれか一項に記載の生体検知装置。
(付記35)
前記対象をトラッキングすることによって、各前記撮像画像に前記対象が写っているか否かを判定し、
前記対象が写っていない前記撮像画像が検出された場合に、同一の前記対象が撮像され続けていないと判定する、付記34に記載の生体検知装置。
(付記36)
前記対象の画像特徴量を各前記撮像画像から検出し、
前記対象の画像特徴量が含まれない前記撮像画像が検出された場合に、同一の前記対象が撮像され続けていないと判定する、付記34に記載の生体検知装置。
(付記37)
コンピュータによって実行される制御方法であって、
複数の領域それぞれに表示が含まれる第1画面と、前記第1画面と異なる表示が含まれる第2画面とをディスプレイ装置に表示させる表示制御ステップと、
前記第1画面と前記第2画面とがそれぞれ表示されている間にカメラで対象を撮像することによって生成された、複数の撮像画像を取得する取得ステップと、
複数の前記撮像画像を用いて前記対象が生体であるか否かを判定する生体検知ステップと、を有し、
前記第1画面には、表示が互いに異なる少なくとも2つの領域が含まれる、制御方法。
(付記38)
前記第1画面に含まれる複数の前記領域のうち、少なくとも2つの前記領域は、互いに異なる色の表示、互いに異なる明るさの表示、又は互いに異なる文字、記号、若しくは図形を含む、付記37に記載の制御方法。
(付記39)
前記表示制御ステップにおいて、前記第1画面に含まれる複数の前記領域の境界を、前記撮像画像を生成するカメラと前記ディスプレイ装置の位置関係に基づいて決定する、付記37又は38に記載の制御方法。
(付記40)
前記第1画面に含まれる複数の前記領域の境界は、ユーザの入力によって決定される、付記37又は38に記載の制御方法。
(付記41)
前記コンピュータは、複数の前記撮像画像が入力されたことに応じて、前記撮像画像に写っている前記対象が生体であるか否かを表すラベルを出力するように学習された識別モデルを有し、
前記表示制御ステップにおいて、前記取得ステップにおいて取得された複数の前記撮像画像を前記識別モデルに入力し、前記識別モデルから前記ラベルを得ることにより、前記対象が生体であるか否かの判定を行う、付記37から40いずれか一項に記載の制御方法。
(付記42)
前記識別モデルは、正例の訓練データと負例の訓練データの双方を用いて学習されており、
前記正例の訓練データは、前記第1画面と前記第2画面とがそれぞれ表示されている間に、実物の人の顔を撮像することで得られた複数の撮像画像と、撮像された対象が生体であることを示すデータとを含み、
前記負例の訓練データは、前記第1画面と前記第2画面とがそれぞれ表示されている間に人の顔の画像を撮像することで得られた複数の撮像画像と、撮像された対象が生体でないことを示すデータとを含む、付記41に記載の制御方法。
(付記43)
前記表示制御ステップにおいて、前記ディスプレイ装置の周囲の環境光の強さを特定し、前記環境光の強さが閾値以下である場合に、前記第1画面及び前記第2画面を前記ディスプレイ装置に表示させる、付記37から42いずれか一項に記載の制御方法。
(付記44)
前記表示制御ステップにおいて、前記環境光の強さが閾値より大きい場合、環境光が現在の強さよりも弱い場所に移動するように促すメッセージを出力する、付記43に記載の制御方法。
(付記45)
前記表示制御ステップにおいて、前記ディスプレイ装置の周囲の環境光の強さを特定し、前記環境光の強さに応じて、前記第1画面及び前記第2画面の少なくとも一方に含める表示を決定する、付記37から44いずれか一つに記載の制御方法。
(付記46)
視線の方向に関するガイドと顔の方向に関するガイドを前記ディスプレイ装置に表示させる第2表示制御ステップと、
前記カメラで前記対象を複数回撮像することで生成された撮像画像を取得する第2取得ステップと、
各前記撮像画像に写っている前記対象の顔の画像を用いて、各前記撮像画像について顔の方向と視線方向との差分を算出し、算出した前記差分に基づいて、前記対象が生体であるか否かを判定する第2生体検知ステップと、を有し、
前記第2表示制御ステップにおいて、同じ場所を見続けながら顔を左右に振るように促すガイドを前記ディスプレイ装置に表示させる、付記37から45いずれか一項に記載の制御方法。
(付記47)
前記第2表示制御ステップにおいて、
視線を動かさずに顔を第1方向に向けるように促すガイドを前記ディスプレイ装置に表示し、
前記対象の顔の方向が前記第1方向であるか否かを判定し、
前記対象の顔の方向が前記第1方向である場合、視線を動かさずに顔を第2方向に向けるように促すガイドを前記ディスプレイ装置に表示させる、付記46に記載の制御方法。
(付記48)
前記第2表示制御ステップにおいて、前記対象の顔の振れ幅の大きさが閾値以上であるか否かを判定し、顔の振れ幅の大きさが閾値以上でない場合、顔をより大きく振ることを促すガイドを前記ディスプレイ装置に表示させる、付記46又は47に記載の制御方法。
(付記49)
前記第2表示制御ステップにおいて、前記対象の顔が動く速さが閾値以上であるか否かを判定し、顔が動く速さが閾値以下である場合、顔をより遅く動かすこと促すガイドを前記ディスプレイ装置に表示させる、付記46から48いずれか一項に記載の制御方法。
(付記50)
前記第2表示制御ステップにおいて、前記対象の視線方向が固定されているか否かを判定し、視線方向が固定されていない場合、視線方向を動かさないように促すガイドを前記ディスプレイ装置に表示させる、付記46から49いずれか一項に記載の制御方法。
(付記51)
前記第2表示制御ステップにおいて、前記対象の顔の方向を表す表示、前記対象が顔を向けるべき方向を表す表示、前記対象の視線方向を表す表示、前記対象が視線を向けるべき方向を表す表示のいずれか1つ以上を、前記ディスプレイ装置に表示させる、付記46から50いずれか一項に記載の制御方法。
(付記52)
前記表示制御ステップによる画面の表示が開始されてから前記第2生体検知ステップによって生体検知が行われるまでの間に前記カメラによって生成される撮像画像を用いて、前記カメラによって同一の前記対象が撮像され続けているか否かを判定し、
同一の前記対象が撮像され続けていない場合、前記表示制御ステップから処理をやり直す、付記46から51いずれか一項に記載の制御方法。
(付記53)
前記対象をトラッキングすることによって、各前記撮像画像に前記対象が写っているか否かを判定し、
前記対象が写っていない前記撮像画像が検出された場合に、同一の前記対象が撮像され続けていないと判定する、付記52に記載の制御方法。
(付記54)
前記対象の画像特徴量を各前記撮像画像から検出し、
前記対象の画像特徴量が含まれない前記撮像画像が検出された場合に、同一の前記対象が撮像され続けていないと判定する、付記52に記載の制御方法。
【符号の説明】
【0182】
10 カメラ
20 ディスプレイ装置
30 画面
32 領域
34 境界線
40 撮像画像
50 対象物体
60 端末
80、90、100、110画面
500 コンピュータ
502 バス
504 プロセッサ
506 メモリ
508 ストレージデバイス
510 入出力インタフェース
512 ネットワークインタフェース
2000 生体検知装置
2020 表示制御部
2040 取得部
2060 生体検知部
2080 第2表示制御部
2100 第2取得部
2120 第2生体検知部