本発明は、処理、装置、システム、物質の組成、コンピュータ読み取り可能な格納媒体上に具現化されたコンピュータプログラム製品、および/または、プロセッサ(プロセッサに接続されたメモリに格納および/またはそのメモリによって提供される命令を実行するよう構成されたプロセッサ)を含め、様々な形態で実装されうる。本明細書では、これらの実装または本発明が取りうる任意の他の形態を、技術と呼ぶ。一般に、開示された処理の工程の順序は、本発明の範囲内で変更されてもよい。特に言及しない限り、タスクを実行するよう構成されるものとして記載されたプロセッサまたはメモリなどの構成要素は、ある時間にタスクを実行するよう一時的に構成された一般的な構成要素として、または、タスクを実行するよう製造された特定の構成要素として実装されてよい。本明細書では、「プロセッサ」という用語は、1または複数のデバイス、回路、および/または、コンピュータプログラム命令などのデータを処理するよう構成された処理コアを指すものとする。
以下では、本発明の原理を示す図面を参照しつつ、本発明の1または複数の実施形態の詳細な説明を行う。本発明は、かかる実施形態に関連して説明されているが、どの実施形態にも限定されない。本発明の範囲は、特許請求の範囲によってのみ限定されるものであり、本発明は、多くの代替物、変形物、および、等価物を含む。以下の説明では、本発明の完全な理解を提供するために、多くの具体的な詳細事項が記載されている。これらの詳細事項は、例示を目的としたものであり、本発明は、これらの具体的な詳細事項の一部または全てがなくとも特許請求の範囲に従って実施可能である。簡単のために、本発明に関連する技術分野で周知の技術事項については、本発明が必要以上にわかりにくくならないように、詳細には説明していない。
当業者が本発明の技術スキーム(技術)をより良く理解するように、本発明の実施形態における技術スキームは、本発明の実施形態の図面に照らして明確かつ完全に説明されている。明らかに、記載した実施形態は、すべての実施形態ではなく、本発明の実施形態の一部にすぎない。本発明の実施形態に基づいて当業者によって得られるすべての他の実施形態は、さらなる創造的努力が費やされない限り、本発明の保護の範囲内に含まれる。
「第1」、「第2」などの用語は、本発明の記載および請求項ならびに上述の図面において、類似した対象を区別するために用いられ、必ずしも特定の順序または時系列を記載するものではないことに注意されたい。このように用いられるデータは、本明細書に記載の本発明の実施形態を本明細書図面または記載の順序以外の順序に従って実施できるように、適切な状況下で交換可能である。さらに、「備える」または「有する」という用語ならびにそれらの変化形は、非排他的であることを意図している。例えば、一連の工程またはユニットを含む処理、方法、システム、製品、または、装置は、明示的に列挙されたそれらの工程またはユニットに限定される必要はなく、明示的に列挙されていない他の工程またはユニット、もしくは、これらの処理、方法、製品、または、装置に内在する他の工程またはユニットも含みうる。
本願の様々な実施形態を記載する過程で現れる用語の一部は、以下の説明に当てはまる:
ビデオデバイス:ビデオキャプチャおよび静止画キャプチャなどの機能を有するデバイス(例えば、ビデオカメラ、スマートフォン、タブレットなど)。画像がレンズを通してキャプチャされた後、ビデオデバイス内部の光感知素子回路および制御構成要素が、画像を処理して、端末デバイスによって認識可能なデジタル信号に変換する。画像は、(例えば、パラレルポート、USB、Bluetooth(登録商標、以下同じ)、Wi−Fiなどを介して)端末デバイスへ通信された後に、ソフトウェアによって復元されうる。
被写体:ビデオデバイスを通してそこから画像情報を取得できる任意の物体。被写体は、実物体または仮想物体でありうる。
画像:ビデオデバイスによって取得された被写体の写真、画像、または、ビデオ。本明細書に記載の様々な実施形態において、第1画像は、投写情報の変更の前にビデオデバイスによって取得された被写体の画像に対応し、第2画像は、投写情報の変更の後にビデオデバイスによって取得された被写体の画像に対応する。
投写情報:被写体上に投写して、それにより、被写体からの反射を引き起こすための情報。投写情報は、投写デバイス(例えば、ディスプレイスクリーン)上に表示されるコンテンツ(例えば、テキスト、画像など)、および/または、投写デバイスの表示パラメータ(例えば、色、明るさなど)を含みうる。投写情報は、投写デバイスに表示される(または、そうでなければ投写デバイスから出力される)コンテンツを更新することによって、または、投写デバイスの表示パラメータを更新することによって更新されうる。投写情報は、以下のうちの少なくとも1つを含みうる:投写明るさ、投写色、および、投写グラフィック(例えば、ユーザインターフェイス、ビデオ、画像など、表示されているコンテンツ)。
仮想物体:実物体(例えば、人物の顔など、現実の物体)の写真、三次元モデル(例えば、蝋人形)、ビデオ、連続写真のスライド、または、写真に基づいたソフトウェアシミュレーションから合成され実物体の動作を含む画像。
本明細書で用いられているように、端末とは、一般に、ネットワークシステム内で(例えば、ユーザによって)利用され、1または複数のサーバと通信するために利用されるデバイスのことである。本開示の様々な実施形態によれば、端末は、通信機能をサポートする構成要素を備えてよい。例えば、端末は、スマートフォン、タブレットデバイス、携帯電話、ビデオ電話、電子書籍リーダ、デスクトップコンピュータ、ラップトップコンピュータ、ネットブックコンピュータ、パーソナルコンピュータ、パーソナルデジタルアシスタント(PDA)、携帯型マルチメディアプレーヤ(PMP)、mp3プレーヤ、携帯型メディカルデバイス、カメラ、ウェアラブルデバイス(例えば、ヘッドマウントデバイス(HMD)、電子衣服、電子装具、電子ネックレス、電子アクセサリ、電子タトゥー、または、スマートウォッチ)、スマート家電、車載移動局などであってよい。端末は、様々なオペレーティングシステムを実行できる。
端末は、様々な入力/出力モジュールを有しうる。例えば、端末は、タッチスクリーンまたはその他のディスプレイ、1または複数のセンサ、音声入力(例えば、ユーザの話し声)を入力できるマイク、カメラ、マウス、もしくは、端末に接続されたその他の外部入力デバイスなどを有しうる。
図1は、本願の様々な実施形態に従って、顔認識に基づいた認証のための端末を示す構造ブロック図である。
図1を参照すると、顔認識に基づいた認証のための端末100が提供されている。端末100は、図2の端末200、図3のシステム300、図9のスマートフォン900、および/または、図10のコンピュータ端末1000と関連して実施されうる。端末100は、図4の処理400、図6の処理600、図7の処理700、および/または、図8の処理800を、少なくとも部分的に実施できる。
様々な実施形態に従って、顔認識に基づいた認証のための方法が、コンピュータデバイス、携帯デバイス、または、同様の動作手段で実施されうる。
端末100は、携帯デバイスであってよい。図1に示すように、端末100は、1または複数のプロセッサ110と、メモリ120と、通信モジュール130と、を備える。プロセッサ110は、例えば、マイクロプロセッサ(MCU)またはプログラム可能論理デバイス(FPGA)などの処理手段を含む。メモリ120は、プロセッサ110によって実行された時に顔認識に基づいた認証のための方法を実施する命令など、データを格納するよう構成される。通信モジュール130は、無線または有線通信など、通信機能を実行するよう構成される。無線通信は、Wi−Fi、Bluetooth、赤外線、セルラー方式通信など、様々なプロトコルまたは技術を用いる通信を含みうる。当業者であれば、図1に示した構造は単に例示であり、電子デバイスの構造を限定するものではないことを理解できる。端末100は、さらに、ディスプレイデバイス、マイクロフォン、スピーカ、ユーザインターフェイス、ディスプレイ(例えば、タッチスクリーン)、ネットワークインターフェースなど、のうちの1または複数を備えてもよい。
メモリ120は、アプリケーションソフトウェアのソフトウェアプログラムおよびモジュール(例えば、顔認識に基づいた認証のための方法に対応するプログラム命令/モジュール)を格納するために用いられる。メモリ120に格納されたソフトウェアプログラムおよびモジュールを実行することにより、プロセッサ110は、様々な関数適用およびデータ処理を実行する(すなわち、顔認識に基づいた認証のための方法を実施する)。いくつかの実施形態において、メモリ120は、高速ランダムアクセスメモリを含む。いくつかの実施形態において、メモリ120は、1または複数の磁気ストレージデバイス、フラッシュメモリ、または、その他の不揮発性ソリッドステートメモリなど、不揮発性メモリを含みうる。いくつかの実施形態において、メモリ120は、プロセッサ110に対してリモートに配置されたメモリを含む。かかるリモートメモリは、ネットワークを介して端末100に接続されてよい。ネットワークの例は、インターネット、企業イントラネット、ローカルエリアネットワーク、モバイル通信ネットワーク、および、それらの組み合わせを含むが、これらに限定されない。
通信モジュール130は、ネットワークを介してデータを送受信するよう構成される。ネットワークの具体例は、端末100の通信サプライヤによって提供された無線ネットワークを含む。いくつかの実施形態において、通信モジュール130は、ネットワークインターフェースコントローラ(NIC)を備え、これは、基地局を介して他のネットワークに接続することにより、インターネットと通信することができる。いくつかの実施形態において、通信モジュール130は、高周波(RF)モジュールを含むか、または、そうでなければRFモジュールに対応しており、RFモジュールは、インターネットなどのネットワークと無線通信するよう構成される。
端末100は、ハードウェアコンポーネント(回路を含む)、ソフトウェアコンポーネント(コンピュータ読み取り可能な媒体に格納されたコンピュータコードを含む)、もしくは、ハードウェアコンポーネントおよびソフトウェアコンポーネントの両方の組みあわせ、を備えうる。図1に示す端末100は、携帯デバイス内に存在しうるコンポーネントのタイプを提示する目的で示した特定の具体的な実施形態の一例にすぎない。
いくつかの実施形態において、端末100は、タッチディスプレイデバイス(「タッチスクリーン」または「タッチディスプレイスクリーン」とも呼ばれる)を備える。いくつかの実施形態において、端末100は、グラフィカルユーザインターフェイス(GUI)を備える。ユーザは、指の接触および/またはタッチセンシティブ面に触れる動作によって、GUIとのヒューマンマシンインタラクションを行いうる。ヒューマンマシンインタラクション機能は、任意選択的に、以下のインタラクションのうちの1または複数を含む:ウェブページの作成、描画、テキスト処理、電子文書の作成、ゲーム、ビデオ会議、インスタントメッセージング、電子メールの送受信、インターフェースの呼び出し、デジタルビデオの再生、デジタル音声の再生、および/または、インターネットブラウジング、など。上述のヒューマンマシンインタラクション機能を実行するための実行可能な命令は、1または複数のプロセッサによって実行可能なコンピュータプログラム製品内に、もしくは、読み取り可能な記憶媒体内に、構成/格納される。
図2は、本願の様々な実施形態に従って、顔認識に基づいた認証のための端末を示す構造ブロック図である。
図2を参照すると、顔認識に基づいた認証のための端末200が提供されている。端末200は、図1の端末100、図3のシステム300、図9のスマートフォン900、および/または、図10のコンピュータ端末1000と関連して実施されうる。端末200は、図4の処理400、図6の処理600、図7の処理700、および/または、図8の処理800を、少なくとも部分的に実施できる。
端末200は、ディスプレイスクリーン210と、ビデオデバイス220(例えば、カメラなどのビデオキャプチャデバイス)と、プロセッサ230と、を備えうる。
端末200は、スマートフォン、タブレットコンピュータ、ノートブックコンピュータ、または、その他のスマートデバイスに対応しうる。いくつかの実施形態において、端末200は、ビデオカメラ手段に外部接続されたデバイス(例えば、デスクトップコンピュータ)である。例えば、端末200がスマートフォンである場合、ディスプレイスクリーン210は、スマートフォンディスプレイスクリーンに対応し、ビデオ手段220(例えば、ビデオカメラ)は、スマートフォンのカメラ(例えば、スマートフォンのフロントカメラ)に対応し、プロセッサ230は、スマートフォンのプロセッサに対応しうる。端末200がデスクトップコンピュータである場合、ディスプレイスクリーン210は、デスクトップコンピュータのディスプレイスクリーンに対応し、プロセッサ230は、デスクトップコンピュータのプロセッサに対応しうる。デスクトップコンピュータは、一般に、ビデオカメラを備えるよう構成されないので、外部ビデオカメラがコンピュータに接続されてよく、その場合、ビデオ手段220(例えば、ビデオカメラ)は、外部ビデオカメラに対応しうる。
ディスプレイスクリーン210は、投写情報を投写(例えば、表示)するよう構成される。投写情報は、ディスプレイスクリーンによって表示されるコンテンツでありうる。投写情報は、ディスプレイスクリーンの表示コンテンツを更新することによって更新されうる。
いくつかの実施形態において、ディスプレイスクリーン210は、端末デバイスのディスプレイである。例えば、ディスプレイスクリーン210は、端末200の入力/出力デバイスでありうる。ディスプレイスクリーン210は、特定の電子情報コンテンツをスクリーン上に表示することができ、かかる情報を反射させるための表示ツールである。例えば、ディスプレイスクリーン210は、(スクリーン上に表示された)電子情報コンテンツを人間の目に反射させることができる。投写情報は、ディスプレイスクリーン上に表示されるコンテンツでありうる。コンテンツ(例えば、投写情報)は、写真、テキスト、表などのうちの1または複数を含みうる。投写情報は、ディスプレイスクリーン上に表示されたコンテンツを更新することによって更新されうる。ディスプレイスクリーン210は、リアルタイムで投写情報を投写できる。例えば、ディスプレイスクリーン210によって表示される投写情報は、端末200が、ディスプレイスクリーン210によって表示されるコンテンツを処理するのと同時に表示されうる。投写情報は、色情報、形状情報、明るさ情報、ならびに、1または複数のその他の特徴に関連する情報、のうちの1または複数を含みうる。
様々な実施形態によれば、投写情報が表示された(例えば、ユーザに投写された)後にキャプチャされた1または複数の画像が、1または複数の画像処理(例えば、前処理)技術に従って処理されうる。
いくつかの実施形態において、画像が十分な解像度(例えば、所定の閾値を超える解像度)である場合、キャプチャされた画像からコンテンツが抽出され、比較されることができる。例えば、コンテンツに対応する投写情報が更新された場合、コンテンツ(例えば、写真、テキスト、表などのうちの1または複数)に対応する投写情報が、投写情報の更新前にキャプチャされた画像から、および、投写情報の更新後にキャプチャされた画像から抽出され、被写体が仮想物体であるか否か(例えば、2つの画像の間の差が、投写情報への更新と一致するか否か)を判定するために比較されうる。
様々な実施形態によると、ディスプレイスクリーンの表示コンテンツ(例えば、投写情報)の更新は、以下を含むがこれらに限定されない:ディスプレイスクリーン210の表示明るさの変更、ディスプレイスクリーン210の表示色の変更、または、ディスプレイスクリーン210上の特定のグラフィックの形状の変更。
ビデオ手段220(例えば、ビデオカメラ)は、ディスプレイスクリーン210を通して被写体に投写情報を投写(例えば、表示)した後に、現在の被写体の第1画像をキャプチャ(例えば、撮影)し、投写情報が変更(例えば、更新)された後に、更新された投写情報を備えた被写体の第2画像をキャプチャするよう構成される。
ビデオデバイス220は、ビデオ撮影および静止画キャプチャなどの機能を有するビデオ入力デバイス(ビデオカメラなど)でありうる。レンズを通して画像をキャプチャした後、ビデオデバイス220内部の光感知素子回路および制御構成要素が、画像を処理して、端末デバイスによって認識可能なデジタル信号に変換する。次いで、無線(例えば、Bluetooth、Wi−Fi、赤外線など)接続または有線(例えば、パラレルポート、USB、マイクロUSB、ファイヤワイヤなど)接続を介して端末デバイスにデジタル信号を入力した後、画像は、ソフトウェアによって復元される。被写体は、ビデオカメラを通して画像情報が取得される必要がある任意の物体でありうる。ディスプレイスクリーン210が、ディスプレイスクリーン上の表示コンテンツを被写体上に投写(例えば、表示)した後、ビデオデバイス220は、被写体の現在の画像(第1画像として機能しうる)をキャプチャ(例えば、撮影)ひいては取得することができる。ディスプレイスクリーン210が、そのスクリーン上に表示されたコンテンツを更新した後、ビデオデバイス220は、ディスプレイスクリーンが更新済みの投写情報を投写した被写体の画像(第2画像として機能しうる)をキャプチャひいては取得する。
様々な実施形態に従って、ビデオデバイス220(例えば、ビデオカメラ)は、ディスプレイデバイスがスクリーンの表示コンテンツを更新する前に被写体の第1画像を、そして、ディスプレイデバイスがスクリーンの表示コンテンツを更新した後に被写体の第2画像を、キャプチャまたはその他の方法で取得するよう構成される。第2画像は、ディスプレイデバイスがスクリーンの表示コンテンツを更新した後の被写体のフィードバック情報を含む。フィードバック情報は、以下を含むがこれらに限定されない:リアルタイム画像の明るさが、ディスプレイスクリーンによって表示された明るさと共に変化したか否か;リアルタイム画像の色が、ディスプレイスクリーンによって表示された色と共に変化したか否か;被写体の反射画像(例えば、被写体の眼球の反射)が、ディスプレイスクリーンによって現在表示されている形状を示している(または、他の方法で含んでいる)か否か、など。フィードバック情報は、第2画像に含まれるか、または、第2画像から導出されうる。
プロセッサ230は、第1画像および第2画像を処理または解析するよう構成される。例えば、プロセッサ230は、第1画像および第2画像を比較するよう構成されてよい。プロセッサ230は、対象画像が仮想物体であるか否かの判定に関連して第1画像および第2画像の比較の結果を利用できる。例えば、プロセッサ230は、被写体が仮想物体であるか否かを判定する基礎として、取得された画像相違データを利用できる。
プロセッサ230は、画像処理機能を有するCPUであってよい。いくつかの実施形態において、仮想物体は、被写体の二次元画像または三次元モデルである。被写体の第1および第2画像がビデオデバイスで取得された(例えば、得られた)後、プロセッサ230は、第1画像および第2画像に含まれる情報データを比較できる。したがって、プロセッサ230は、画像相違データを取得し、現在の被写体が仮想物体であるか否かを判定する基礎として、画像相違データを利用する。
仮想物体は、被写体の写真、被写体の三次元モデル(被写体に似せた蝋人形など)、ビデオ、連続写真のスライド、または、写真に基づいたソフトウェアシミュレーションから合成され動作を含む画像(例えば、集合的に動作を描写する連続画像)でありうる。
いくつかの実施形態において、人間の顔である被写体を例に取ると、ディスプレイスクリーンの表示コンテンツの変化への人間の顔のフィードバックと、ディスプレイスクリーンの表示コンテンツの変化への写真、ビデオ、または、シミュレーションソフトウェアのフィードバックとの間には、著しい差がある。フィードバックは、ディスプレイスクリーンから表示されたコンテンツの被写体からの反射から導出された情報に対応しうる。したがって、被写体のフィードバックデータは、現在の被写体が本物の人物の顔であるのかまたは仮想の人間の顔(例えば、人間の顔の写真またはビデオなど)を含むのかを評価するための基礎として利用できる。
様々な実施形態に従って、(例えば、端末のディスプレイからの投写情報の表示を介して)投写情報が被写体に投写されると、被写体の現在のキャプチャから取得された第1画像が得られる。投写情報が変更された後、更新された投写情報が投写されている時に、被写体のキャプチャから取得された第2画像が得られる。第1画像および第2画像が比較され、画像相違データが取得される。第1画像および第2画像は、ピクセルごとに、もしくは、1または複数のその他の画像比較技術に従って、比較されうる。画像相違データは、位置、サイズ、画像の形状、色、明るさの差、および/または、各ピクセル色の差、各ピクセルの明るさの差、複数のピクセルの2つの色の間の差、複数のピクセルの明るさの間の差などを示す情報を含みうる。例えば、画像相違データは、第1画像と第2画像との間の差に対応しうる。画像相違は、第2画像が第1画像と異なる程度を測る尺度でありうる。いくつかの実施形態において、画像相違データは、端末によって表示された投写情報への変更に対応する更新されたコンテンツを第2画像が含むか否かを示すか、または、端末によって表示された投写情報への変更に対応する更新されたコンテンツを第2画像が含むか否かの示唆が導出された情報を含む。画像相違データは、被写体が仮想物体であるか否かを判定するための基礎として機能する。
いくつかの実施形態において、ディスプレイスクリーンの1または複数の特徴(例えば、ディスプレイの明るさ、ディスプレイの色、表示するコンテンツなど)が変更され、被写体上に投写される。ビデオデバイスが、ディスプレイスクリーンの変化の前後に(例えば、被写体の)第1画像および(例えば、被写体の)第2画像を取得するために用いられ、第1画像および第2画像は、比較解析を受ける。第1画像と第2画像との間の差に対応する画像相違データは、現在の被写体が仮想物体であるか否かを判定するための基礎として機能する。被写体上に投写されるコンテンツの変更は、被写体を撮影する過程で取得されるコンテンツを変化させる。したがって、認証をくぐり抜けようとする悪意ある試みに用いられるコンテンツは、2つの画像の間の差を含まないコンテンツを利用するので、様々な実施形態は、よりロバストな認証処理を提供する。様々な実施形態において、端末によって表示される投写情報は、意図的に更新され、かかる更新の前後にキャプチャされた画像(例えば、第1画像および第2画像)は、キャプチャされる被写体が本物であるか否かの判定に関連して利用される(例えば、被写体が実際に本物である場合、キャプチャされた画像は、更新前の投写情報と、端末によって表示される情報が更新された後に表示された投写情報との間の差に対応する差を反映する)。認証を試みる悪意ある第三者によって用いられるコンテンツ(対応する動作の事前録画ビデオ、連続写真のスライドショー、もしくは、コンピュータシミュレーションを通して合成された頭を縦に振るまたは横に振る動作または瞬きなどの動作の画像など)は、一般に、二次元画像である。したがって、二次元画像上に投写された投写情報が変更され、悪意ある第三者が同じ仮想物体を用いて不正認証を試みている場合、それらの二次元画像内のどの2つの領域についても変更結果の間に差がない。様々な実施形態に従って、被写体が二次元画像(すなわち、仮想物体)であるか否かを評価するための上述したスキーム(例えば、投写情報の更新、画像相違データの決定、など)は、被写体が仮想物体であるか否かの判定に関連して利用できる。したがって、投写情報を断続的に試験および変更した後に、以下を判定することができる:キャプチャされた第1画像および第2画像内の異なる領域の画像変動結果の間に差が存在する場合、被写体は、仮想物体ではなく、生きている実在の被写体であると見なされる。例えば、様々な実施形態に従った認証のための処理は、表示の変化に対する(例えば、応答する)被写体のリアルタイムフィードバックに基づいた生きた被写体(例えば、生きた人物)の検出および識別認証で利用できるため、生体顔検出の精度を改善すると共に認証システムへの仮想物体による攻撃を減らす技術的効果を奏する。
様々な実施形態が、ビデオまたは画像攻撃(ここで、非正規ユーザは、ライブアクション(実写)を利用してシミュレートされた正規ユーザの動作を用いて認証を行う)に脆弱な既存のライブ認識に基づいた認証システムの技術的課題を解決する。
いくつかの実施形態において、端末デバイスが認証機能をアクティブ化すると(例えば、認証機能のアクティブ化に応じて)、端末デバイスは、プロセッサ230をアクティブ化して(例えば、用いて)、被写体が仮想物体であるか否かを判定することができる。
いくつかの実施形態において、第1画像は、少なくとも以下を含む:第1投写情報を投写した時の被写体の第1顔画像および第1背景画像;そして、第2画像は、少なくとも以下を含む:第2投写情報が表示(例えば、投写)された時の被写体の第2顔画像および第2背景画像。投写情報は、少なくとも、以下のうちの1つを含む:投写の明るさ、投写の色、および、投写グラフィック。いくつかの実施形態において、投写情報は、1または複数の投写の明るさ、投写の色、および、投写のグラフィックへの変更を含む。
いくつかの実施形態において、投写情報は、以下のうちの少なくとも1つを含む:投写の明るさ、投写の色、および、投写グラフィック。第1投写情報は、投写情報が変更される前(例えば、端末が第2画像に対応する情報を表示する前)の投写情報に対応しうる。第2投写情報は、変更後の投写情報に対応しうる(例えば、対象画像が仮想画像であるか否かを判定する際に用いる第2画像および第1画像の間の差を生成するための第2画像に対応する情報)。第1画像は、投写情報が変更される前に取得された被写体の画像に対応しうる(例えば、第1投写情報に基づいた被写体の画像)。第1画像は、被写体の第1顔画像および第1背景画像を含みうる。第1画像は、第1投写情報が投写されている時にキャプチャされた画像に対応しうる。第2画像は、投写情報が変更された後に取得された被写体の画像に対応しうる(例えば、第2投写情報に基づいて生成された被写体の画像)。第2画像は、被写体の第2顔画像および第2背景画像を含みうる。第2画像は、第2投写情報が投写されている時にキャプチャされた画像に対応しうる。
様々な実施形態に従って、被写体が生きた被写体であるのかまたは仮想物体であるのかを判定することが可能である。
いくつかの実施形態において、プロセッサ230は、被写体が仮想物体であると判定するよう構成される。被写体は、画像相違データがnullである場合に仮想物体であると判定される。画像相違データがnullであることは、第1画像の画像データおよび第2画像の画像データが同じであることを表している。例えば、第1画像と第2画像との間の差に対応する画像相違データが所定の閾値未満である場合、被写体も仮想物体であると見なされうる。別の例として、画像データが第1画像および第2画像の間で差なしに対応する場合、被写体は、仮想物体であると見なされうる。
いくつかの実施形態において、画像相違データが、被写体が仮想物体であるか否かを判定するための基礎として機能する場合、画像相違データがnullであれば(例えば、第1画像および第2画像が同じ画像データを有しており、画像相違データがないのであれば)、被写体が仮想物体であるとの判定がなされうる。相違データがnullではない(例えば、第1画像および第2画像が同じデータを持たず、画像相違データが存在するか、または、第1画像と第2画像との間の差の所定の閾値を超える画像データが存在する)場合、被写体が生きた被写体である(すなわち、被写体が仮想物体ではない)との判定がなされうる。
いくつかの実施形態において、画像相違データは以下を含む:第1顔画像を第2顔画像と比較して得られた第1変動度、および、第1背景画像を第2背景画像と比較して得られた第2変動度。
いくつかの実施形態において、プロセッサ230は、(例えば、投写情報が、投写の明るさおよび/または投写の色である(または、を含む)場合に)第1変動度が顔全体の明るさ変動値および/または色変動値であり、第1変動度と第2変動度との間の差が第1所定変動範囲内に収まる場合に、被写体が仮想物体であると判定するよう構成される。明るさの変動または色の変動は、様々な方法で計算されうる。例えば、明るさの変動または色の変動は、領域内のピクセル間の明るさ(または色)の平均差、領域内のピクセルのRGB色の平均差に基づいて計算されうる。被写体上に投写される投写情報が変更された場合、第1変動度は、被写体をキャプチャすることによって取得された顔画像を記録して被写体の変化を計算することによって決定され、第2変動度は、被写体が位置する背景画像をキャプチャして背景画像の変化を計算することによって決定される。対象のキャプチャは、被写体における領域を識別することを含みうる。例えば、被写体のキャプチャは、顔検出技術を用いて、画像の指定されたビット領域(例えば、顔に対応する領域)を検出することを含みうる。被写体は、顔に対応しうる;投写情報の更新の前後の2つの画像を比較することにより、第1画像内の顔に対応する領域と第2画像内の顔に対応する領域との間の差が計算されうる。第1画像内の顔と第2画像内の顔に対応する領域との間の差は、明るさ、色、コンテンツ、もしくは、1または複数のその他の特徴における差に対応しうる。被写体の変動は、被写体の明るさ、色、コンテンツ、もしくは、1または複数のその他の特徴における差に対応しうる。背景画像は、被写体の外側にあるキャプチャされた画像の領域に対応しうる。例えば、被写体が顔である場合、背景領域は、(例えば、検出された)顔の領域の外側にある画像の領域に対応しうる。顔認識または検出技術が、画像内の顔を識別するために利用されてよく、画像の他の部分すなわち残り部分は、背景画像または背景領域と見なされうる。明るさ変動値は、第1背景画像と第2背景画像との間の差でありうる。第1背景画像と第2背景画像との間の差は、明るさ、色、コンテンツ、もしくは、1または複数のその他の特徴における差に対応しうる。
いくつかの実施形態において、投写情報は、投写の明るさおよび/または投写の色であり(または、を含み)、投写の明るさは、ディスプレイスクリーンによって表示された明るさであり;投写の色は、ディスプレイスクリーンによって表示された色であり;第1顔画像は、ディスプレイスクリーンの明るさまたは色が変化する前に被写体のキャプチャから記録された顔画像であってよく;第2顔画像は、ディスプレイスクリーンの明るさまたは色が変化した後に被写体のキャプチャから記録された顔画像であってよく;第1背景画像は、ディスプレイスクリーンの明るさまたは色が変化する前に被写体が位置する背景のキャプチャから取得された背景画像であってよく;第2背景画像は、ディスプレイスクリーンの明るさまたは色が変化した後に被写体が位置する背景のキャプチャから取得された背景画像であってよく;第1変動度が、第1顔画像を第2顔画像と比較して第1顔画像および第2顔画像の間の差を計算することによって取得されてよく;第2変動度が、第1背景画像を第2背景画像と比較して第1背景画像および第2背景画像の間の差を計算することによって取得されてよい。第1変動度および第2変動度は、被写体が仮想物体であるか否かを判定するための基礎として機能しうる。例えば、第1変動度が、顔全体(例えば、第1顔画像および/または第2顔画像の顔)の明るさ変動値および/または色変動値であり、第1変動度と第2変動度との間の差が第1所定変動範囲内に収まる場合、被写体は、仮想物体であると判定される。第1顔画像と第2顔画像との間の差は、明るさ、色、コンテンツ、もしくは、1または複数のその他の特徴における差に対応しうる。例えば、明るさの差は、以下に基づいて計算できる:平均明るさ=全ピクセルの明るさ合計/ピクセル数。例えば、第1顔画像の平均明るさを計算することができ、第2顔画像の平均明るさを計算することができ、第1顔画像の平均明るさと第2顔画像の平均明るさとの間の差を計算できる。
様々な実施形態は、被写体が仮想物体であるか否かを判定するための基礎として、画像の部分的な明るさ変動を用いる。ディスプレイスクリーンの明るさは変化するので、リアルタイムにビデオカメラによって取得された画像の明るさにおける顔部分および背景部分の明るさ変動度は、或る程度の差を有する。本物の人物の顔部分の明るさ変動は、ディスプレイスクリーンからの顔部分の距離が以前と同じではなくなる(例えば、第1画像および第2画像の色または明るさの変化が検出されうる)ので、より顕著になりうるが、背景部分の明るさ変動は、背景部分の距離がほぼ同じままであるので、それほど顕著にはなりえない。写真、ビデオ、ソフトウェアシミュレーション、および、その他のかかる方法に関しては、顔部分および背景部分のディスプレイスクリーンからの距離は一般に異なるが、明るさ変動度は同じになる。様々な実施形態に従って、明るさの差が、平均明るさ=全ピクセルの明るさ合計/ピクセル数、に基づいて計算されうる。第1画像内の顔領域の平均明るさが計算され、第2画像内の顔領域の平均明るさが計算され、第1画像内の顔領域の平均明るさと第2画像の顔領域の平均明るさとの間の差が計算される。色の差が、同様に計算されうる。明るさの差および色の差の決定は、上記に限定されない。例えば、(例えば、明るさまたは色の)差を決定するための様々なその他の処理を用いてもよい。
様々な実施形態によると、画像相違データは以下を含む:第1顔画像を第2顔画像と比較して得られた第1変動度、および、第1背景画像を第2背景画像と比較して得られた第2変動度。第1顔画像および第2顔画像が、被写体の顔の少なくとも1つの生物学的特徴に関する特徴情報を含む場合、ならびに、投写情報が、投写の明るさおよび/または投写の色に対応する場合、プロセッサ230は、第1変動度が顔の任意の1または複数の生物学的特徴の明るさ変動値および/または色変動値であり、第1変動度と第2変動度との間の差が第2所定変動範囲内に収まる場合に、被写体が仮想物体であると判定するよう構成される。被写体上に投写される投写情報が変更された場合、第1変動度は、被写体をキャプチャすることによって取得された顔画像を記録して、第1画像内の顔領域と第2画像内の顔領域との間の差を計算することによって決定され、第2変動度は、被写体が位置する背景画像をキャプチャして、第1画像内の背景領域と第2画像内の背景領域との間の差を計算することによって決定される。
生物学的特徴は、被写体の顔の固有の生理学的特徴であってよく、これは、目の特徴、口の特徴、眉毛の特徴、耳の特徴、鼻の特徴、肌の特徴、などを含みうる。目の特徴は以下を含みうる:瞳孔の特徴(例えば、瞳孔のサイズおよび/または位置)、虹彩の特徴(例えば、虹彩の形状および/または位置)、ならびに、眼球の特徴(例えば、眼球のサイズおよび/または眼球によって反射された像)など。投写情報が投写の明るさおよび/または投写の色である場合、第1顔画像は、ディスプレイスクリーンの明るさまたは色が変化する前に被写体のキャプチャから記録された顔画像でありうる。第1顔画像は、対象画像の顔の少なくとも1つの生物学的特徴に関する特徴情報を含みうる。第2顔画像は、ディスプレイスクリーンの明るさまたは色が変化した後に被写体のキャプチャから記録された顔画像でありうる。第2顔画像は、対象画像の顔の少なくとも1つの生物学的特徴に関する特徴情報を含む。第1背景画像は、ディスプレイスクリーンの明るさまたは色が変化する前に被写体が位置していた背景のキャプチャから取得された背景画像でありうる。第2背景画像は、ディスプレイスクリーンの明るさまたは色が変化した後に被写体が位置していた背景のキャプチャから取得された背景画像でありうる;第1変動度は、第1顔画像を第2顔画像と比較することによって取得され;第2変動度は、第1背景画像を第2背景画像と比較することによって取得される。第1変動度および第2変動度は、被写体が仮想物体であるか否かを判定するための基礎として機能する。第1変動度が顔の任意の1または複数の生物学的特徴の明るさ変動値および/または色変動値であり、第1変動度と第2変動度との間の差が第2所定変動範囲内に収まる場合、被写体は仮想物体であるとの判定がなされる。
いくつかの実施形態において、生物学的特徴は、肌の特徴であってもよい。顔または顔の写真である被写体の一例として、被写体が人物の顔の肌である場合、ディスプレイスクリーンの明るさが変わると、電話のフロントカメラによって取得された第2画像内の人物の顔の肌の明るさが変わる。被写体が人物の顔の写真である場合、電話のフロントカメラによって取得された第2画像内の人物の顔の肌(人物の顔の写真)は、写真が光を異なって反射することから、第1画像内の顔の肌と同じように明るさが共に変化することがない。例えば、顔の肌および写真の間の関係として、光の反射特性が、異なる材質について同じではなく;顔が3D形状を有し、写真が2D(例えば、写真は平坦)である結果として、光の反射において異なる特徴を持つことになる。
様々な実施形態によると、顔の様々な部分の明るさ変動度に基づいて、被写体が仮想物体であるか否かが判定される。ディスプレイスクリーンの明るさおよび/または色が変わると、ビデオカメラによってリアルタイムに取得された画像の明るさにおいて、顔部分と背景部分との間で明るさおよび/または色の程度に差が現れる。本物の人物の場合、明るさの変動は、顔の高輝度光部分と低輝度光部分との間で、顔の3D構造により異なることになる。写真、ビデオ、ソフトウェアシミュレーション、または、その他のかかる方法の場合、顔の様々な部分の明るさの変動パターンは、その平坦な構造のために、本物の人物とは異なるものになる。
様々な実施形態に従って、画像相違データは以下を含む:第1顔画像および第2顔画像内の少なくとも1つの生物学的特徴の画像変動値に対応する差。投写情報に対応する差は、投写の明るさおよび/または投写の色である。プロセッサ230は、投写情報が投写の明るさおよび/または投写の色である場合に、任意の2つの生物学的特徴の明るさ変動値および/または色変動値を取得できる。任意の2以上の生物学的特徴の画像変動値が第3所定変動範囲内に収まる場合、被写体は仮想物体であるとの判定がなされる。被写体上に投写(例えば、表示)される投写情報が変更された場合、画像相違データは、被写体の顔の少なくとも1つの生物学的特徴のキャプチャから取得された特徴画像を記録することによって決定される。
いくつかの実施形態において、第1顔画像は、ディスプレイスクリーンが明るさまたは色を変更する前に被写体を記録およびキャプチャすることによって取得された顔画像であってよい。第1顔画像は、対象画像の顔の少なくとも1つの生物学的特徴(例えば、目、口など)に関する特徴情報を含みうる。第2顔画像は、ディスプレイスクリーンが明るさまたは色を変更した後に被写体を記録およびキャプチャすることによって取得された顔画像であってよい。第2顔画像は、被写体の顔の少なくとも1つの生物学的特徴(例えば、目、口など)に関する特徴情報を含みうる。投写情報が投写の明るさおよび/または投写の色である場合、任意の2つの生物学的特徴の明るさ変動値および/または色変動値が、ビデオデバイスによって取得される。任意の2以上の生物学的特徴の画像変動値が第3所定変動範囲内に収まる場合、被写体は仮想物体であるとの判定がなされる。
様々な実施形態は、人間の顔の少なくとも1つの生物学的特徴(例えば、目、口など)の明るさおよび/または色の変動度に基づいて、被写体が仮想物体であるか否かを判定する。ディスプレイスクリーンの明るさおよび/または色が変化すると、ビデオカメラでリアルタイムに取得された目および口の明るさおよび/または色は、(キャプチャされる被写体が実際に本物の物体(人物など)である場合)それに応じて変化する。
いくつかの実施形態において、投写情報は以下を含む:投写グラフィックス。生物学的特徴が眼球である場合、画像相違データは、第1顔画像および第2顔画像内の生物学的特徴の画像変動値であり、これは、眼球によって反射される画像コンテンツの変動値である。プロセッサ230は、画像コンテンツの変動値が第4所定変動範囲内にある場合に、被写体が仮想物体であると判定するよう構成されてよい。
いくつかの実施形態において、眼球上に投写されたグラフィック形状に基づいて、被写体が仮想物体であるか否かに関する判定がなされる。第1顔画像は、ディスプレイスクリーンが第1グラフィックを表示している間に被写体を記録およびキャプチャすることによって取得された顔画像であってよく、ここで、第1顔画像は、被写体の眼球から反射された第1グラフィックに関する画像コンテンツ情報を含む。ディスプレイスクリーンが第2グラフィックを表示する間、第2顔画像は、被写体を記録およびキャプチャすることによって取得された顔画像であってよく、ここで、第2顔画像は、被写体の眼球から反射された第1グラフィックに関する画像コンテンツ情報を含む。投写情報は、投写グラフィックスを含みうる。生物学的特徴が眼球である場合、第1顔画像および第2顔画像内の眼球から反射された画像コンテンツの変動が、ビデオデバイスによって取得される。画像コンテンツが(例えば、第1顔画像と第2顔画像との間で)同じである場合、被写体は本物の人物であるという判定がなされる。被写体が異なる場合、被写体は仮想物体であるとの判定がなされる。
時に、蝋人形またはその他の三次元モデルが、3D構造を持つ人間の特徴(肌および顔など)を有する。したがって、かかるモデルは、悪意ある認証試行に関連して利用されうる。本物の人物の眼球は、球形であり、一般に、本物の人物の顔の前にある画像を反射する。しかしながら、写真、ビデオ、または、ソフトウェアシミュレーション、もしくは、その他のかかる方法は、人物の顔の前にある画像を反射しない。ディスプレイスクリーンの明るさ、色、および、形状が変化すると、本物の人物の眼球によって反射される画像も変化する。被写体が本物の人物であるか否かに関する判定が、顔画像の眼球部分の画像を検出することによってなされうる。
正規ユーザの三次元モデル(蝋人形など)を用いて認証システムでの認証を試みる悪意ある試みを防ぐことに関連して、様々な実施形態を利用できる。したがって、生体認識に基づく認証システムのセキュリティが強化される。
様々な実施形態に従って、顔認識に基づく認証のための方法が、コンピュータデバイス、携帯デバイス、または、同様の動作手段で実施されうる。
上述した実行環境において、本願は、顔認識に基づいた認証システムの実施形態を提供する。図3に示すように、システムは以下を含む:ディスプレイデバイス310、ビデオデバイス320、および、コンピュータ端末330。
図3は、本願の様々な実施形態に従って、顔認識に基づいた認証のためのシステムを示す図である。
図3を参照すると、顔認識に基づいた認証のためのシステム300が提供されている。システム300は、図1の端末100、図2の端末200、図9のスマートフォン900、および/または、図10のコンピュータ端末1000と関連して実施されうる。システム300は、図4の処理400、図6の処理600、図7の処理700、および/または、図8の処理800を、少なくとも部分的に実施できる。
システム300は、ディスプレイデバイス310、ビデオデバイス320、および、端末330を備える。
ディスプレイデバイス310は、投写情報を投写(例えば、表示)するよう構成される。投写情報は、ディスプレイデバイス310によって表示されるコンテンツに対応しうるか、または、そのコンテンツを含みうる。一例として、投写情報は、画像、ビデオ、テキストなどを含みうる。いくつかの実施形態において、投写情報は、ディスプレイスクリーンの表示コンテンツを更新することによって更新される。
いくつかの実施形態において、ディスプレイデバイス310は、スマート端末デバイスのディスプレイスクリーンであってよい。例えば、スマート端末デバイスのディスプレイスクリーンは、端末デバイスの入力/出力デバイスでありえ、特定の電子情報コンテンツをスクリーン上に表示することができる。ディスプレイスクリーンは、かかる特定の電子情報(例えば、ビデオ、画像、テキストなど)を人間の目に反射させるための表示ツールでありうる。投写情報は、ディスプレイデバイス310上に表示されるコンテンツでありうる。このコンテンツは、写真、テキスト、表などでありうる。投写情報は、ディスプレイデバイス310上に表示されたコンテンツを更新することによって更新されうる。ディスプレイデバイス310(例えば、ディスプレイスクリーン)は、リアルタイムに投写情報を投写するために利用できる。
いくつかの実施形態において、ディスプレイデバイス310の表示コンテンツ(例えば、投写情報)の更新は、以下の方法を含むがこれらに限定されない:ディスプレイデバイス310の表示の明るさを変更する方法、ディスプレイデバイス310の表示色を変更する方法、ディスプレイデバイス310上の特定のグラフィックの形状を変更する方法、または、ディスプレイデバイス310上のコンテンツを変更する(例えば、異なるコンテンツタイプ、異なるオブジェクトなどを表示する)方法。
ビデオデバイス320は、1または複数の画像をキャプチャするよう構成される。例えば、ビデオデバイス320は、第1画像および第2画像をキャプチャしうる。ビデオデバイス320は、ディスプレイデバイス310と通信する。ビデオデバイス320は、投写情報がディスプレイデバイス310を介して被写体上に投写された後に、現在の被写体の第1画像をキャプチャするよう構成されうる。ビデオデバイス320は、被写体の第2画像をキャプチャするよう構成されうる。ビデオデバイス320は、投写情報が更新された後に、被写体の第2画像をキャプチャしうる。したがって、対象画像の第2画像は、更新された投写情報を含みうる。
ビデオデバイス320は、ビデオ撮影および静止画キャプチャなどの機能を有するビデオ入力デバイス(ビデオカメラなど)でありうる。レンズを通して画像をキャプチャした後、ビデオデバイス320内部の光感知素子回路および制御構成要素が、画像を処理して、端末デバイスによって認識可能なデジタル信号に変換する。無線(例えば、Bluetooth、Wi−Fi、赤外線など)接続または有線(例えば、パラレルポート、USB、マイクロUSB、ファイヤワイヤなど)接続を介して端末デバイスにデジタル信号を入力した後、画像は、ソフトウェアによって格納される。被写体は、ビデオカメラを通して画像情報が取得される必要がある任意の物体でありうる。ディスプレイデバイス310が、ディスプレイスクリーン上の表示コンテンツを被写体上に投写(例えば、表示)した後、ビデオデバイスは、被写体の現在の画像(第1画像として機能する)を撮影ひいては取得しうる。ディスプレイデバイス310zが、そのスクリーン上に表示されたコンテンツを更新した後、ビデオデバイス320は、ディスプレイスクリーンが更新済みの投写情報を投写した被写体の画像(第2画像として機能しうる)をキャプチャひいては取得する。
いくつかの実施形態において、被写体の画像は、赤外線ビデオカメラを用いて取得される(例えば、得られる)。赤外線ビデオカメラは、人間の顔の様々な部分の温度を決定(例えば、評価)できるため、本物の人物の顔と、写真、ビデオ、または、ソフトウェアシミュレーションとの間の差も評価できる。
端末330は、第1画像および第2画像を比較するよう構成される。端末330は、被写体が仮想物体であるか否かを判定するための基礎として、取得した画像相違データ(例えば、第1画像および第2画像の比較からの結果)を利用できる。
端末330は、パーソナルコンピュータであってよい。パーソナルコンピュータは、1または複数のプロセッサを備えうる。仮想物体は、被写体の二次元画像または三次元モデルでありうる。被写体の第1画像および第2画像が、ビデオデバイス(または別の撮像デバイス)で取得された後に、端末330(例えば、そのプロセッサ)は、第1画像および第2画像にそれぞれ含まれる情報データを比較できる。したがって、端末330は、画像相違データ(例えば、第1画像および第2画像の比較からの結果)を取得できる。端末330は、現在の被写体が仮想物体であると判定するための基礎として、画像相違データを利用できる。
仮想物体は、被写体の写真または三次元モデル(蝋人形など)、ビデオ、連続写真のスライド、もしくは、写真に基づいたソフトウェアシミュレーションから合成され動作を含む画像でありうる。
様々な実施形態に従って、投写情報が被写体に投写されると、被写体の現在のキャプチャから取得された第1画像が得られる。投写情報が変更された後、更新された投写情報が投写されている時に、被写体のキャプチャから取得された第2画像が得られる。第1画像および第2画像が比較され、画像相違データが取得される。画像相違データは、被写体が仮想物体であるか否かを判定するための基礎として機能する。
いくつかの実施形態において、ディスプレイデバイスのスクリーンディスプレイは、変更され、被写体上に投写される。ビデオデバイスを用いて、ディスプレイデバイスが変化する前後(例えば、投写情報が更新および表示される前後)に被写体の第1画像および被写体の第2画像が取得され、比較解析が第1画像および第2画像に関して実行される。第1画像および第2画像の相違データ(例えば、第1画像および第2画像に関して実行された比較解析に基づいたデータ)は、現在の被写体が仮想物体であるか否かを判定するための基礎として機能する。表示の変化に対する被写体のリアルタイムなフィードバックに基づいた生体検出および識別認証の目的が達成され、生体顔検出の精度が改善され、認証システムへの認証のために仮想物体を用いて認証しようとする悪意ある試みが低減されうる。
様々な実施形態は、認証試行に関連したビデオまたは画像の悪意ある利用(ここで、非正規ユーザは、ライブアクション(実写)を利用してシミュレートされた正規ユーザの動作を用いて認証を行う)に脆弱な生体認識に基づいた認証システムのロバスト性を改善する。
いくつかの実施形態において、第1画像は、少なくとも以下を含む:第1投写情報を投写した時の被写体の第1顔画像および第1背景画像;そして、第2画像は、少なくとも以下を含む:第2投写情報投写した時の被写体の第2顔画像および第2背景画像。投写情報は、投写の明るさ、投写の色、および、投写グラフィックス、のうちの1または複数を含む。表示される画像の様々なその他の特徴が、投写情報の生成と関連して変更されてもよい。
いくつかの実施形態において、投写情報は、投写の明るさ、投写の色、および、投写グラフィックス、のうちの1または複数を含む。第1投写情報は、変更前(例えば、投写情報が変更される前)の投写情報に対応しうる。第2投写情報は、変更後の投写情報(例えば、表示される投写情報が更新された後に表示される投写情報)に対応しうる。第1画像は、投写情報が変更される前に取得された被写体の画像であってよく、第1投写情報が投写されている時の被写体の第1顔画像および第1背景画像を含みうる。第2画像は、投写情報が変更された後に取得された被写体の画像であってよく、第2投写情報が投写されている時の被写体の第2顔画像および第2背景画像を含みうる。したがって、被写体が生きた被写体であるのかまたは仮想物体であるのかを判定することが可能である。
端末330は、さらに、画像相違データがnullである場合に、被写体が仮想物体であると判定するよう構成されてよい。画像相違データがnullであることは、第2画像が第1画像と一致することに対応しうる。例えば、画像相違データがnullであることは、第1画像の画像データおよび第2画像の画像データが同じであることに対応しうる。
様々な実施形態によれば、画像相違データが、被写体が仮想物体であるか否かを判定するための基礎として機能する場合、画像相違データがnullであれば(例えば、第1画像および第2画像が同じそれぞれの画像データを有しており、画像相違データがないのであれば)、被写体が仮想物体であるとの判定がなされうる。逆に、画像相違データがnullではない場合(例えば、第1画像および第2画像が完全に同一なそれぞれの画像データを持たず(または、第1画像および第2画像に対応する画像データが類似度の閾値内になく)、画像相違データが存在する場合)、被写体が生きた被写体であるとの判定がなされうる。
いくつかの実施形態において、画像相違データは以下を含む:第1顔画像と第2顔画像との比較に基づいた第1変動度、および、第1背景画像と第2背景画像との比較に基づいた第2変動度。
端末330は、投写情報が投写の明るさおよび/または投写の色を含む時、第1変動度が顔全体の明るさ変動値および/または色変動値であり、第1変動度と第2変動度との間の差が第1所定変動範囲内に収まる場合に、被写体が仮想物体であると判定するよう構成されてよい。被写体上に投写される投写情報が変更された場合、第1変動度は、被写体をキャプチャすることによって取得された顔画像を記録(例えば、キャプチャおよび/または格納)することによって決定され、第2変動度は、被写体が位置する背景画像をキャプチャすることによって決定される。
いくつかの実施形態において、画像相違データは以下を含む:第1顔画像と第2顔画像との比較に基づいた第1変動度、および、第1背景画像と第2背景画像との比較に基づいた第2変動度。第1顔画像および第2顔画像が、被写体の顔の少なくとも1つの生物学的特徴に関する特徴情報を含む場合に、投写情報が、投写の明るさおよび/または投写の色を含む時、被写体は、第1変動度が顔の任意の1または複数の生物学的特徴の明るさ変動値および/または色変動値であり、第1変動度と第2変動度との間の差が第2所定変動範囲内に収まる場合に、(例えば、端末330によって)仮想物体であると判定される。被写体上に投写される投写情報が変更された場合、第1変動度は、被写体をキャプチャすることによって取得された顔画像を記録することによって決定され、第2変動度は、被写体が位置する背景画像をキャプチャすることによって決定される。
様々な実施形態に従って、画像相違データは以下を含む:第1顔画像と第2顔画像とに関する少なくとも1つの生物学的特徴の画像変動値。投写情報が投写の明るさおよび/または投写の色を含む場合、任意の2つの生物学的特徴の明るさ変動値および/または色変動値が、(例えば、端末330によって)取得されうる。任意の2以上の生物学的特徴の画像相違データが所定変動範囲(例えば、第3所定変動範囲)内に収まる場合、被写体は、仮想物体であると判定される。被写体上に投写される投写情報が変更された場合、画像相違データは、被写体の顔の少なくとも1つの生物学的特徴のキャプチャから取得された特徴画像を記録(例えば、キャプチャおよび/または格納)することによって決定されうる。
いくつかの実施形態において、投写情報は、投写グラフィックスを含む。生物学的特徴が眼球である場合、画像相違データは、第1顔画像および第2顔画像内の生物学的特徴の画像変動値に対応しうる(例えば、第2顔画像内の特徴に対する第1顔画像内の特徴の画像変動値)。例えば、画像変動値は、眼球によって反射された画像コンテンツの変動値を含みうる(例えば、第2画像内の眼球によって反射された画像コンテンツに対する第1画像内の眼球によって反射された画像コンテンツの変動)。端末330は、画像コンテンツの変動値が所定変動範囲(例えば、第4所定変動範囲)内にある場合に、被写体が仮想物体であると判定するよう構成されてよい。変動範囲は、2つの画像の間の類似度の範囲に対応しうる。
様々な実施形態が、顔認識に基づいた認証のための方法を含む。図面内のフローチャートで図示する工程は、コマンドを実行できるコンピュータのグループなど、コンピュータシステムによって実施されうることに注意されたい。さらに、論理的順序がフローチャートに図示されているが、図示または記載されている工程は、いくつかの状況において、ここに示した以外の順序で実行されてもよい。
顔認識に基づいたまたは検出された顔画像の間の差の決定に基づいた認証のための方法は、図1の端末100などの端末によって実施されうる。図1に示したように、 端末100は、1または複数のプロセッサ110を備えてよい。プロセッサ110は、マイクロプロセッサ(MCU)またはプログラム可能論理デバイス(FPGA)などの処理手段を含みうるが、これらに限定されない。端末100は、メモリ120を備えてよい。メモリ120は、データを格納するよう構成されうる。端末100は、通信モジュール130を備えてよい。通信モジュール130は、通信機能のために構成されうる。さらに、端末100は、以下を備えてもよい:ディスプレイデバイス、入力/出力インターフェース(I/Oインターフェース)、ユニバーサルシリアルバス(USB)ポート(例えば、USBポートは、I/Oインターフェースとして機能するポートの中の1つのポートとして備えられてよい)、ネットワークインターフェース、電源、および/または、カメラ。当業者であれば、図1に示した構造は単に例示であり、電子デバイスの構造を限定するものではないことを理解できる。例えば、携帯デバイス100は、図1に示したよりも多いまたは少ない構成要素を備えてもよいし、図1に示した構成とは異なる構成を有してもよい。
1または複数のプロセッサ110および/またはその他のデータ処理回路は、一般に、本明細書では「データ処理回路」と呼ばれうる。データ処理回路は、ソフトウェア、ハードウェア、ファームウェア、または、それらの任意の組み合わせとして、全体または部分的に具現化されうる。さらに、データ処理回路は、単一の独立した処理モジュールであってもよいし、端末100(例えば、携帯デバイス)と完全にまたは部分的に一体化された他の構成要素のいずれかであってもよい。例えば、データ処理回路制御部は、プロセッサとして実装されてよい(例えば、インターフェース接続された可変抵抗端末パスを選択する)。
ディスプレイデバイスは、例えば、タッチスクリーン液晶ディスプレイ(LCD)であってよい。液晶ディスプレイは、ユーザが、端末100(例えば、携帯デバイス)のユーザインターフェイスと相互作用することを可能にしうる。
図1の端末100は、ハードウェアコンポーネント(回路を含む)、ソフトウェアコンポーネント(コンピュータ読み取り可能な媒体に格納されたコンピュータコードを含む)、もしくは、ハードウェアコンポーネントおよびソフトウェアコンポーネントの両方の組みあわせ、を備えうる。図1は、携帯デバイス内に存在しうるコンポーネントのタイプを提示する目的で示した特定の具体的な実施形態の一例にすぎないことに注意されたい。
図4は、本願の様々な実施形態に方法従って、顔認識に基づいた認証方法を示すフローチャートである。
図4を参照すると、顔認識に基づいた認証のための処理400が提供されている。処理400は、少なくとも部分的には、図1の端末100、図2の端末200、図3のシステム300、図9のスマートフォン900、および/または、図10のコンピュータ端末1000によって実施されうる。処理400は、図6の処理600、図7の処理700、および/または、図8の処理800と関連して実施されうる。
工程410で、第1画像が取得される。第1画像は、被写体の画像でありうる。例えば、被写体の第1画像は、画像キャプチャデバイス(ビデオカメラ、カメラなど)によって取得されうる。第1画像は、被写体上に投写(例えば、表示)される投写情報と関連して取得されうる。例えば、投写情報が被写体に投写された時に、被写体の現在のキャプチャから取得された第1画像が得られうる。
投写情報は、電子ディスプレイスクリーン上に表示されたコンテンツ(写真、テキストなど)または電子ディスプレイスクリーン上に表示されたパラメータ情報(ディスプレイスクリーンによって表示される明るさ、色など)であってよい。いくつかの実施形態において、投写情報は、別のデバイスによって被写体上に投写されて被写体に様々な変動を提示させうる情報であってもよい。被写体は、ビデオデバイスを通して画像情報が取得される任意の物体でありうる。例えば、被写体は、生きた対象物、または、生きた対象物の写真、ビデオ画像など、でありうる。いくつかの実施形態において、投写情報が被写体上に投写された後に、被写体をキャプチャすることによって取得された第1画像を現在の瞬間に得ることができる。
いくつかの実施形態において、被写体の画像が、ビデオ撮影および静止画キャプチャなどの機能を有するビデオ入力デバイス(ビデオカメラなど)を用いてキャプチャされうる。画像がレンズを通して取得された後、ビデオデバイス内部の光感知素子回路および制御構成要素が、画像を処理して、端末デバイスによって認識可能なデジタル信号に変換する。次いで、無線(例えば、Bluetooth、Wi−Fi、赤外線など)接続または有線(例えば、パラレルポート、USB、マイクロUSB、ファイヤワイヤなど)接続を介して端末デバイスにデジタル信号を入力した後、画像は、ソフトウェアによって処理(例えば、復元)される。
いくつかの実施形態において、被写体が人物の顔またはその写真である場合、投写情報が、スマートフォンのディスプレイスクリーンを通して被写体上に投写されてよく、被写体の画像(例えば、第1画像)が、画像キャプチャデバイス(例えば、端末のフロントカメラ)で被写体をキャプチャすることによって取得されうる。
図5Aは、本願の様々な実施形態に従って、端末のフロントビデオカメラによって取得された人間の顔の被写体を示す図である。
図5Aを参照すると、認証に関連してキャプチャされた被写体500が提供されている。被写体500のキャプチャおよび/または処理は、図1の端末100、図2の端末200、図3のシステム300、図9のスマートフォン900、および/または、図10のコンピュータ端末1000によって、または、関連して、実行されうる。被写体500は、図4の処理400、図6の処理600、図7の処理700、および/または、図8の処理800の一部として、認証に関連してキャプチャ、処理、または、利用されうる。
被写体500は、端末510(携帯電話など)のフロントカメラによって取得(例えば、キャプチャおよび/または格納)された顔でありうる。図5Aに示すように、被写体500(例えば、顔)は、以下を含む:眉毛501、目503、口505、鼻507、および、耳509。これらの特徴は、画像識別プログラムまたはその他の適切なプログラムによって識別されうる。例えば、特徴は、顔ランドマーク検出または特徴点検出に基づいて識別されうる。特徴点検出は、機械学習を用いて処理されうる。例えば、特徴点検出は、オープンソースライブラリDlibなどを用いて処理されうる。
図4の処理400に戻ると、工程420で、第2画像が取得される。第2画像は、被写体の画像でありうる。例えば、被写体の第2画像は、画像キャプチャデバイス(ビデオカメラ、カメラなど)によって取得されうる。第2画像は、被写体上に投写された(例えば、ディスプレイデバイスによって表示され、被写体上に投写された)投写情報に関連して取得されうる。例えば、第2被写体は、(例えば、被写体上に投写された)投写情報が変更された後(例えば、投写情報は、第1画像がキャプチャされた時に被写体上に投写されていた投写情報に対して変更されうる)、取得されうる。例えば、投写情報が変更された後、更新された投写情報の投写時に被写体のキャプチャから取得された第2画像が得られる。投写情報は、端末のディスプレイ上に表示された画像の色を変更すること、端末のディスプレイの明るさを変更すること、端末のディスプレイ上に表示された画像のサイズを変更すること、端末のディスプレイ上に表示された画像を変更することなどによって変更されうる。
投写情報が変更された後(例えば、携帯デバイスが被写体をキャプチャしている間に、携帯デバイス上に表示された画像の色またはディスプレイスクリーンの明るさが変更されうる)、投写情報は被写体上に投写され、被写体をキャプチャすることによって第2画像が取得される。
一例として、被写体が人物の顔またはその写真である場合、投写情報が、スマートフォンのディスプレイスクリーンを通して被写体上に投写され、被写体の画像が、フロントカメラで被写体をキャプチャすることによって取得される。投写情報の変更は、ディスプレイスクリーンの明るさを強くすることを含みうる。更新された投写情報(例えば、明るさを強くしたスマートフォンスクリーンによって表示された情報)が人物の顔の上に投写されると、被写体の画像(例えば、第2画像)が、電話のフロントカメラによってキャプチャされる。
図5Bは、本願の様々な実施形態に従って、端末に関連する明るさが増大された後に、端末のフロントビデオカメラによって取得された人間の顔の被写体を示す図である。
図5Bを参照すると、認証に関連してキャプチャされた被写体550が提供されている。被写体550のキャプチャおよび/または処理は、図1の端末100、図2の端末200、図3のシステム300、図9のスマートフォン900、および/または、図10のコンピュータ端末1000によって、または、関連して、実行されうる。被写体550は、図4の処理400、図6の処理600、図7の処理700、および/または、図8の処理800の一部として、認証に関連してキャプチャ、処理、または、利用されうる。
被写体550は、端末560(携帯電話など)のフロントカメラによって取得(例えば、キャプチャおよび/または格納)された顔でありうる。図5Bに示すように、被写体550(例えば、顔)は、以下を含む:眉毛551、目553、口555、鼻557、および、耳559。
図4の処理400に戻ると、工程430で、画像相違データが取得される。画像相違データは、第1画像および第2画像に少なくとも部分的に基づいて取得されうる。例えば、画像相違データは、第1画像および第2画像の比較に少なくとも部分的に基づいてよい。画像相違データは、第1画像と第2画像との間の差または類似の程度を示しうる。いくつかの実施形態において、第1画像および第2画像の異なる領域に関連する画像データ(例えば、画像変動の結果として異なる領域が生じる)が取得され(例えば、それぞれの第1画像および第2画像から抽出され)、第1画像および第2画像から取得されたかかる画像データが比較され、画像相違データが取得される。画像相違データは、第1画像および第2画像の異なる領域に関連する画像データ(例えば、画像変動の結果)の間の比較の結果に対応する。第1画像および第2画像の異なる領域に関連する画像データは、被写体の特定の特徴(例えば、目、顔の一部、被写体上に投写された情報を反射する部分、など)を含む第1画像および第2画像内の領域に対応しうる。画像相違データは、被写体の領域または被写体の特徴(例えば、被写体の顔にある目)に対応する第1画像の部分を識別し、被写体の領域または被写体の特徴に対応する第2画像の対応する部分を識別し、第1画像の部分および第2画像の部分に基づいて差グラフを生成することに基づいて取得され、第1画像の部分および第2画像の部分に基づいて(例えば、差グラフに基づいて)相違領域を決定できる。画像相違データは、相違領域の位置、サイズ、明るさの差、色の差、元々の領域における相違領域の位置、サイズ、明るさ、色などに関連する情報を含みうる。
第1画像は、投写情報が変更される前に取得された被写体の画像でありうる。第2画像は、投写情報が変更された後に取得された被写体の画像でありうる。第1画像および第2画像の異なる領域に関連する画像データ(例えば、画像変動の結果として異なる領域が生じる)が取得され(例えば、それぞれの第1画像および第2画像から抽出され)、第1画像および第2画像から取得されたかかる画像データを比較し、第1画像および第2画像における異なる領域の画像変動結果の間の画像相違データを取得することが可能である。
一例として、被写体が人間の顔またはその写真に対応する場合、第1画像および第2画像の異なる領域は、それぞれ、顔領域および背景領域でありうる。
被写体は、生きた対象物、あるいは、生きた対象物の写真またはビデオ画像もしくはシミュレーションソフトウェアによってシミュレートされた仮想物体でありうる。生きた対象物は、三次元の実体である。対照的に、仮想物体は、一般に、二次元画像である。したがって、被写体上に投写された投写情報が変更された後、仮想物体とは対照的に、生きた対象物の投写フィードバックにおいては実質的な差が明らかになる。したがって、被写体からの画像相違データフィードバックは、現在の被写体が生きた対象物(例えば、本物の人物の顔)であるか、または、仮想物体(例えば、人物の顔を含む写真またはビデオ)であるかを判定するために利用できる。
一例として、被写体が顔またはその写真に対応する場合、被写体が人物の顔であれば、(例えば、第1画像がキャプチャされた時および第2画像がキャプチャされた時から投写情報が変更された結果として)ディスプレイスクリーンの明るさが変わると、端末(例えば、スマートフォン)のフロントカメラによって取得された第2画像内の人物の顔は、明るさが変化する。被写体が人物の顔の写真に対応する場合、端末(例えば、スマートフォン)のフロントカメラによって取得された第2画像内の人物の顔(例えば、人物の顔の写真)では、明るさが共に変化することがない。
いくつかの実施形態において、画像相違データは、第1画像(またはその中の被写体)と第2画像(またはその中の被写体)との異なり方またはその程度を示す。画像相違データは、第1画像が第2画像と異なる程度を導出することができる情報を含みうる。逆に、いくつかの実施形態において、画像相違データは、第1画像と第2画像との類似の仕方またはその程度、などを示しうる。
工程440で、被写体が仮想物体であるか否かが判定される。画像相違データに少なくとも部分的に基づいて、被写体が仮想物体であるか否かが判定されうる。例えば、被写体が仮想物体であるか否かの判定は、第1画像の少なくとも一部および第2画像の一部の間の差(または差の程度)に少なくとも部分的に基づいてよい。別の例として、被写体が仮想物体であるか否かの判定は、第1画像の少なくとも一部および第2画像の一部の間の差が、投写情報への変更(または、第1画像がキャプチャされた時に投写された投写情報と第2画像がキャプチャされた時に投写された投写情報との間の差)と一貫する(例えば、一致する)か否かの判定に少なくとも部分的に基づいてもよい。被写体は、第1画像の一部と第2画像の一部との間の差が閾値差を超える(例えば、差の程度または度合いが閾値を超える)ことを画像相違データが示唆する(または、かかる示唆が画像相違データから導出される)場合に、仮想物体であると判定されうる。
いくつかの実施形態において、被写体が仮想物体ではないと判定された場合(例えば、被写体が実物体であると判定された場合)、認証を進めることができる。例えば、被写体が仮想物体であるか否かの判定は、認証処理の一部であってよい。いくつかの実施形態において、被写体が仮想物体であると判定された場合、被写体に関連する認証を拒否するか、または、他の方法で認証プロセスを終了させることができる。
仮想物体は、被写体の二次元画像または三次元モデルでありうる。被写体の第1画像および被写体の第2画像がビデオデバイス(または別の画像キャプチャデバイス)で取得された後、第1画像および第2画像の(すなわち、それらの間の)画像相違データ(例えば、明るさ変動値)が比較され、それにより、被写体が仮想物体であるか否かを判定することが可能になる。被写体が仮想物体であるか否かの判定は、第1画像と第2画像との間の差が投写情報の更新と一貫しないか否かに基づいてよい。第1画像と第2画像との間の差は、第1画像と第2画像との間の差が投写情報の更新と一致しない場合に一貫しなくなる。例えば、スクリーンが(投写情報の更新に関連して)明るさを強くした場合、第2画像は、第1画像よりも暗くなりうる。別の例として、スクリーンが(投写情報の更新に関連して)明るさを強くした場合、被写体の目からの反射に対応する第2画像の領域が、対応する更新を有するはずである;目からの反射の結果として、異なる反射または反射の特性の変化が生じない場合、被写体は、仮想物体であると見なされうる。別の例として、スクリーンが(投写情報の更新に関連して)明るさを変更し、投写情報が明るさのレベルを下げるように更新された場合、投写情報へのかかる更新は、第1画像と第2画像との間の差で表されるはずである;第2画像が第1画像の明るさよりも明るい明るさを示し、投写情報への更新が明るさの増大である場合、被写体は、仮想物体であると判定されうる。別の例として、スクリーンが(投写情報の更新に関連して)投写される画像を変更し、投写情報が投写される画像のサイズを変更するように更新された場合、投写情報へのかかる更新は、第1画像と第2画像との間の差で表されるはずである;第2画像が、第1画像で表現された対応する画像のサイズと異なるサイズを持たない画像を表す場合、または、サイズの差が十分ではない(例えば、投写情報の更新に基づいて決定された1または複数の閾値を超えない)場合、被写体は、仮想物体であると判定されうる。
仮想物体は、被写体の写真または三次元モデル(蝋人形など)、ビデオ、連続写真のスライド、もしくは、写真に基づいたソフトウェアシミュレーションから合成され動作を含む画像でありうる。
様々な実施形態に従って、投写情報が被写体に投写されると、被写体の現在のキャプチャから取得された第1画像が得られる。投写情報が変更された後、更新された投写情報が投写されている時に、被写体のキャプチャから取得された第2画像が得られる。第1画像および第2画像が比較され、画像相違データが取得される。画像相違データは、被写体が仮想物体であるか否かを判定するための基礎として機能する。
様々な実施形態に従って、被写体上に現在投写されているコンテンツは、ディスプレイスクリーン上に表示されるコンテンツまたはディスプレイスクリーンのスクリーンパラメータを変更するために変更(例えば、更新)され、変更結果(例えば、結果として得られる投写情報)が被写体上に投写される。次いで、ビデオデバイス(またはその他の画像キャプチャデバイス)を用いて、被写体上への投写に向けてデータが変更される前後に、被写体の第1画像および被写体の第2画像がキャプチャされる。画像相違データは、現在の被写体が仮想物体であるか否かを判定するための基礎として機能しうる。画像相違データは、第1画像のデータと第2画像のデータとの間の差に基づいて計算されうる。様々な実施形態に従って、被写体に投写されるコンテンツの変更(例えば、更新)は、被写体をキャプチャする過程で撮影されるコンテンツを変化させる。悪意ある認証試行に関連して悪意ある第三者によって用いられる不正コンテンツ(対応する動作の事前録画ビデオ、連続写真のスライドショー、もしくは、コンピュータシミュレーションを通して合成された頭を縦に振るまたは横に振る動作または瞬きなどの動作の画像など)は、一般に、二次元画像である。3Dモデルも、不正な認証試行に関連して悪意ある第三者によって利用されうる。したがって、二次元画像上に投写された投写情報が変更された場合に、それらの二次元画像内のどの2つの領域についても変更結果の間に差がない。したがって、様々な実施形態に従って、被写体が仮想物体であるか否かの判定は、被写体が二次元画像(例えば、仮想物体)であるか否かの判定に少なくとも部分的に基づいてよい。いくつかの実施形態において、変更された投写情報を断続的に(または定期的に)試験した後に、以下を判定することができる:キャプチャされた第1画像および第2画像内の異なる領域の画像変動結果の間に差が存在する場合、被写体は、仮想物体ではなく、生きている実在の被写体である。様々な実施形態に従って、生体の検出(例えば、被写体が本物の人物に対応するか否か)が、表示変更への被写体のリアルタイムなフィードバックに基づいてなされてもよい。したがって、生きた人間の顔の検出精度を向上させることができ、認証システムへの仮想物体による悪意ある攻撃(例えば、不正な認証試行)を低減できる。
様々な実施形態が、ビデオまたは画像攻撃(例えば、不正な認証試行)(ここで、非正規ユーザは、ライブアクション(実写)を利用してシミュレートされた正規ユーザの動作を用いて認証を行う)に脆弱な既存のライブ認識に基づいた認証システムの技術的課題を解決する。
いくつかの実施形態において、端末が認証機能をアクティブ化すると、投写情報が端末デバイスのディスプレイスクリーンによって投写される。投写情報は、ディスプレイスクリーンによって表示されたコンテンツを含み、投写情報は、ディスプレイスクリーンの表示コンテンツを更新することによって更新される。
端末は、スマートフォン、タブレットコンピュータ、ノートブックコンピュータ、または、その他のスマートデバイスにであってよい。それは、ビデオカメラ手段に外部接続されたデバイス(例えば、デスクトップコンピュータ)であってもよい。例えば、端末がスマートフォンである場合、ディスプレイスクリーンは、スマートフォンのディスプレイスクリーンでありうる。端末が認証機能をアクティブ化すると、投写情報が、端末のディスプレイスクリーンによって投写される。投写情報は、電子ディスプレイスクリーン上に表示されたコンテンツ(写真またはテキストなど)または電子ディスプレイスクリーン上に表示されたパラメータ情報(ディスプレイスクリーンによって表示される明るさまたは色など)であってよい。いくつかの実施形態において、投写情報は、別のデバイス(例えば、第1画像および/または第2画像をキャプチャするデバイスとは異なるデバイス、もしくは、被写体が仮想物体であるか否かを判定するデバイスとは異なるデバイス)によって被写体上に投写された情報であってもよい。かかる別のデバイスは、被写体に異なる変動を提示させることができる。例えば、光源の角度およびカメラアングルが異なってもよく、したがって、異なる変化を生み出しうる。投写デバイスが被写体に対して左に配置された場合、被写体(例えば、顔)の左側が、特定の特徴(例えば、明るさ)の変化について、被写体の右側と異なる変化を有するようにする。
いくつかの実施形態において、第1画像は、少なくとも以下を含む:第1投写情報を投写した時の被写体の第1顔画像および第1背景画像、そして、第2画像は、少なくとも以下を含む:第2投写情報を投写した時の被写体の第2顔画像および第2背景画像。投写情報は、投写の明るさ、投写の色、投写グラフィックスなど、のうちの1または複数を含みうる。
投写情報は、以下のうちの少なくとも1つを含みうる:投写の明るさ、投写の色、および、投写グラフィックス。第1投写情報は、変更前の投写情報に対応しうる(例えば、第2画像のキャプチャに向けて更新される前に投写された投写情報)。第2投写情報は、変更後の投写情報に対応しうる(例えば、第2画像のキャプチャに向けて更新された後に投写された投写情報)。第1画像は、投写情報が変更(例えば、更新)される前にキャプチャされた被写体の画像であってよく、第1投写情報が投写されている時の被写体の第1顔画像および第1背景画像を含みうる。第2画像は、投写情報が変更(例えば、更新)された後に取得された被写体の画像であってよく、第2投写情報が投写されている時の被写体の第2顔画像および第2背景画像を含みうる。
様々な実施形態に従って、被写体が生きた対象物であるのかまたは仮想物体であるのかを判定することが可能である。
様々な実施形態に従って、画像相違データに少なくとも部分的に基づいて、被写体が仮想物体であるか否かを判定する工程は、画像相違データがnullである場合に、被写体が仮想物体であると判定する工程を含む。画像相違データがnullであることは、第1画像の画像データおよび第2画像の画像データが同じであることを表している。
様々な実施形態によれば、画像相違データが、被写体が仮想物体であるか否かを判定するための基礎として機能する場合、画像相違データがnullであると判定されれば(例えば、第1および第2画像が同じ画像データを有しており、画像相違データがないのであれば)、被写体が仮想物体であるとの判定がなされうる。差データがnullではないと判定された場合(例えば、第1および第2画像が完全に同一なデータを持たず、画像相違データが存在する場合)、被写体が生きた被写体であるとの判定がなされうる。
様々な実施形態に従って、画像相違データに少なくとも部分的には基づいて、被写体が仮想物体であるか否かを判定する工程は、以下のうちの1または複数を含む:
技術1:画像相違データは以下を含む:第1顔画像と第2顔画像との比較に基づいて取得された第1変動度、および、第1背景画像と第2背景画像との比較に基づいて取得された第2変動度。画像相違データは、被写体が仮想物体であるか否かを判定するための基礎として用いられ、被写体が仮想物体であるか否かを判定する工程は、以下を含む:投写情報が投写の明るさおよび/または投写の色である時、第1変動度が顔全体の明るさ変動値および/または色変動値であり、第1変動度と第2変動度との間の差が第1所定変動範囲内に収まる場合に、被写体が仮想物体であると判定する工程。被写体上に投写される投写情報が変更された場合、第1変動度は、被写体をキャプチャすることによって取得された顔画像を記録することによって決定され、第2変動度は、被写体が位置する背景画像をキャプチャすることによって決定される。
技術1において、投写情報が投写の明るさおよび/または投写の色である場合に、投写の明るさは、ディスプレイスクリーンによって表示された明るさであってよく;投写の色は、ディスプレイスクリーンによって表示された色であってよく;第1顔画像は、ディスプレイスクリーンの明るさまたは色が変化する前に被写体のキャプチャから記録された顔画像であってよく;第2顔画像は、ディスプレイスクリーンの明るさまたは色が変化した後に被写体のキャプチャから記録された顔画像であってよく;第1背景画像は、ディスプレイスクリーンの明るさまたは色が変化する前に被写体が位置する背景のキャプチャから取得された背景画像であってよく;第2背景画像は、ディスプレイスクリーンの明るさまたは色が変化した後に被写体が位置する背景のキャプチャから取得された背景画像であってよく;第1変動度が、第1顔画像を第2顔画像と比較することによって取得されてよく;第2変動度が、第1背景画像を第2背景画像と比較することによって取得されてよい。第1変動度および第2変動度は、被写体が仮想物体であるか否かを判定するための基礎として機能し;第1変動度が顔全体の明るさ変動値および/または色変動値であり、第1変動度と第2変動度との間の差が第1所定変動範囲内に収まる場合に、被写体が仮想物体であると判定される。
技術1は、被写体が仮想物体であるか否かを判定するための基礎として、画像の部分的な明るさ変動を用いる。ディスプレイスクリーンの明るさが変化するので、リアルタイムにビデオカメラによって取得された画像明るさにおける顔部分および背景部分の明るさ変動度は、以下の差異を有する:本物の人物の顔部分からディスプレイスクリーンまでの距離が同じではなくなるので、本物の人物の顔部分の明るさの変動はより顕著になるが、背景部分の明るさの変動は顕著ではない。写真、ビデオ、ソフトウェアシミュレーション、および、その他のかかる方法に関しては、顔部分および背景部分のディスプレイスクリーンからの距離は基本的に異なるが、明るさ変動度は同じになる。
技術2:画像相違データは以下を含む:第1顔画像と第2顔画像との比較に基づいて取得された第1変動度および、第1背景画像と第2背景画像との比較に基づいて取得された第2変動度。第1顔画像および第2顔画像は、被写体の顔の少なくとも1つの生物学的特徴に関する特徴情報を含む。画像相違データは、被写体が仮想物体であるか否かを判定するための基礎として用いられ、被写体が仮想物体であるか否かを判定する工程は、以下を含む:投写情報が投写の明るさおよび/または投写の色である時、第1変動度が顔の任意の1または複数の生物学的特徴の明るさ変動値および/または色変動値であり、第1変動度と第2変動度との間の差が第2所定変動範囲内に収まる場合に、被写体が仮想物体であると判定する工程。被写体上に投写される投写情報が変更された場合、第1変動度は、被写体をキャプチャすることによって取得された顔画像を記録することによって決定され、第2変動度は、被写体が位置する背景画像をキャプチャすることによって決定される。
技術2において、生物学的特徴は、被写体の顔の固有の生理学的特徴であってよく、これは、目の特徴、口の特徴、眉毛の特徴、耳の特徴、鼻の特徴、肌の特徴、などを含みうる。いくつかの実施形態において、目の特徴は:瞳孔の特徴、虹彩の特徴、および、眼球の特徴を含みうる。投写情報が投写の明るさおよび/または投写の色である場合、第1顔画像は、ディスプレイスクリーンの明るさまたは色が変化する前に被写体のキャプチャから記録された顔画像でありうる。第1顔画像は、対象画像の顔の少なくとも1つの生物学的特徴に関する特徴情報を含む。第2顔画像は、ディスプレイスクリーンの明るさまたは色が変化した後に被写体のキャプチャから記録された顔画像でありうる。第2顔画像は、対象画像の顔の少なくとも1つの生物学的特徴に関する特徴情報を含む。第1背景画像は、ディスプレイスクリーンの明るさまたは色が変化する前に被写体が位置していた背景のキャプチャから取得された背景画像でありうる。第2背景画像は、ディスプレイスクリーンの明るさまたは色が変化した後に被写体が位置している背景のキャプチャから取得された背景画像でありうる。第1変動度が、第1顔画像を第2顔画像と比較することに基づいて取得されうる。第2変動度が、第1背景画像を第2背景画像と比較することに基づいて取得されうる。いくつかの実施形態において、第1変動度および第2変動度は、被写体が仮想物体であるか否かを判定するための基礎として機能する。例えば、第1変動度が顔の任意の1または複数の生物学的特徴の明るさ変動値および/または色変動値であり、第1変動度と第2変動度との間の差が第2所定変動範囲内に収まる場合、被写体は仮想物体であると判定される。
いくつかの実施形態において、生物学的特徴は、肌の特徴を含む。顔または顔の写真である被写体の一例として、被写体が人物の顔の肌である場合、ディスプレイスクリーンの明るさが変わると、端末(例えば、電話)のフロントカメラによってキャプチャされた第2画像内の人物の顔の肌の明るさが変わる。被写体が人物の顔の写真である場合、端末のフロントカメラによってキャプチャされた第2画像内の人物の顔の肌(例えば、人物の顔の写真)では、明るさが共に変化することがない。
いくつかの実施形態において、被写体が仮想物体であるかの判定は、顔の様々な部分の明るさ変動度に基づく(例えば、被写体が顔である場合)。ディスプレイスクリーンの明るさおよび/または色が変わると、ビデオカメラによってリアルタイムに取得された画像の明るさにおいて、顔部分と背景部分との間で明るさおよび/または色の程度に差が出る。本物の人物の場合、明るさの変動は、顔の高輝度光部分と低輝度光部分との間で、顔の3D構造により異なることになる。写真、ビデオ、ソフトウェアシミュレーション、または、その他のかかる方法の場合、顔の様々な部分の明るさの変動パターンは、その平坦な構造のために、本物の人物とは異なるものになる。
技術3:画像相違データは以下を含む:第1顔画像および第2顔画像内の少なくとも1つの生物学的特徴の画像変動値。画像相違データは、被写体が仮想物体であるか否かを判定するための基礎として用いられ、被写体が仮想物体であるか否かを判定する工程は以下を含む:投写情報が投写の明るさおよび/または投写の色である場合に、任意の2つの生物学的特徴の明るさ変動値および/または色変動値を取得する工程。任意の2以上の生物学的特徴の画像変動値が、第3所定変動範囲内に収まる場合、被写体は仮想物体であると判定され、ここで、被写体上に投写された投写情報が変更された場合、画像相違データは、被写体の顔の少なくとも1つの生物学的特徴のキャプチャから取得された特徴画像を記録することによって決定される。
技術3において、第1顔画像は、ディスプレイスクリーンが明るさまたは色を変更する前に被写体を記録およびキャプチャすることによって取得された顔画像であってよい。第1顔画像は、対象画像の顔の少なくとも1つの生物学的特徴(例えば、目、口など)に関する特徴情報を含みうる。第2顔画像は、ディスプレイスクリーンが明るさまたは色を変更した後に被写体を記録およびキャプチャすることによって取得された顔画像であってよい。第2顔画像は、被写体の顔の少なくとも1つの生物学的特徴(例えば、目、口など)に関する特徴情報を含む。投写情報が投写の明るさおよび/または投写の色を含む場合、任意の2つの生物学的特徴の明るさ変動値および/または色変動値が、ビデオデバイスによって取得されうる。任意の2以上の生物学的特徴の画像相違データが第3所定変動範囲内に収まる場合、被写体は、仮想物体であると判定される。
様々な実施形態に従って、人間の顔の少なくとも1つの生物学的特徴(例えば、目、口など)の明るさおよび/または色の変動度に基づいて、被写体が仮想物体であるか否かが判定される。ディスプレイスクリーンの明るさおよび/または色が変化すると、ビデオカメラでリアルタイムに取得された目および口の明るさおよび/または色は、それに応じて変化する。
技術4:投写情報は、投写グラフィクスを含む。生物学的特徴が眼球である場合、画像相違データは、第1顔画像および第2顔画像内の生物学的特徴の画像変動値を含みうる。画像変動は、眼球によって反射された画像コンテンツの変動値を含みうる。画像コンテンツの変動値が所定範囲(例えば、第4所定変動範囲)内にある場合、被写体は仮想物体であると判定される。
技術4では、眼球に(例えば、眼球上に)投写されたグラフィックの特徴が、被写体が仮想物体であるか否かを判定するための基礎として機能する。例えば、眼球に投写されたグラフィックの形状に基づいて(例えば、眼球上に投写されたグラフィックの少なくとも一部の反射を含む画像のキャプチャに基づいて)、被写体が仮想物体であるか否かが判定されうる。第1顔画像は、ディスプレイスクリーンが第1グラフィックを表示している間に被写体を記録およびキャプチャすることによって取得された顔画像でありうる。第1顔画像は、被写体の眼球から反射された第1グラフィックに関する画像コンテンツ情報を含む。第2顔画像は、ディスプレイスクリーンが第2グラフィックを表示している間に、被写体を記録およびキャプチャすることによって取得された顔画像でありうる。第2顔画像は、被写体の眼球から反射された第1グラフィックに関する画像コンテンツ情報を含む。投写情報は、投写グラフィックスを含みうる。生物学的特徴が眼球である(または、眼球を含む)場合、第1顔画像および第2顔画像内の眼球から反射された画像コンテンツの変動が、ビデオデバイスによって取得される。画像コンテンツが同じである場合(例えば、第1顔画像の画像コンテンツおよび第2顔画像の画像コンテンツが一致する場合)、被写体は本物の人物であると判定される。被写体が異なる場合、または、画像コンテンツが同じではない場合(例えば、第1顔画像の画像コンテンツおよび第2顔画像の画像コンテンツが一致する場合)、被写体は仮想物体であると判定される。
蝋人形またはその他の三次元モデルが、3D構造を持つ人間の特徴(肌および顔など)を有しうる。したがって、かかる蝋人形またはその他の三次元モデルは、上述した3つの技術(例えば、技術1、技術2、および、技術3)に基づくシステムへの認証の悪意ある試みに関連して利用されうる。本物の人物の眼球は、一般に球形であり、人物の顔の前にある画像を反射する。しかしながら、写真、ビデオ、ソフトウェアシミュレーション、また、その他のかかる方法は、人物の顔の前にある画像を反射しない。ディスプレイスクリーンの明るさ、色、および、形状が変化すると、本物の人物の眼球によって反射される画像も変化する。したがって、被写体が本物の人物であるか否かの判定が、顔画像の眼球部分の画像を検出することに基づいてなされる。
様々な実施形態に従って、2つのキャプチャされた画像の間の差が認識(例えば、検出)されうる。図5Aおよび図5Bに示すように、投写情報を変更することができ、対応する画像をキャプチャできる。図5Aにおいて、より明るい画面が、ディスプレイスクリーンから表示(例えば、投写)されうる。対照的に、図5Bでは、より暗い画面が、ディスプレイスクリーンから表示(例えば、投写)されうる。したがって、顔550は、顔500よりも暗くなりうる。顔550の明るさおよび顔500の明るさの差が検出されうる。いくつかの実施形態において、情報が、被写体の少なくとも一部によって反射されうる。例えば、被写体の画像が、反射される情報をキャプチャしうる。図5Aに示すように、目503は、被写体上に投写された特定の情報を反射しうる。反射される特定の情報は、投写されている画像の少なくとも一部などのコンテンツを含みうる。いくつかの実施形態において、目から反射される情報は、光、または、投写情報の明るさを示唆するものでありうる。対照的に、投写情報が、より暗い明るさのレベルを有するように更新された場合、投写された情報は、被写体によって反射されることがなく、投写情報からの異なるタイプの程度の情報が反射されうる。図5Bに示すように、目553は、図5Aの目503と同じ反射コンテンツを含まない。いくつかの実施形態において、明るさ変動値が、図5Bの顔550の明るさおよび図5Aの顔500の明るさに基づいて計算される。
様々な実施形態によれば、悪意ある第三者が認証システムへの悪意あるまたは不正な認証試行に関連して正規ユーザの三次元モデル(蝋人形など)を用いることを防止することが可能であるため、生体認識に基づいた認証システムのセキュリティが改善される。
図6は、本願の様々な実施形態に従って、顔認識に基づいた認証システムのための方法を示す相互作用図である。
図6を参照すると、顔認識に基づいた認証のための処理600が提供されている。処理600は、少なくとも部分的には、図1の端末100、図2の端末200、図3のシステム300、図9のスマートフォン900、および/または、図10のコンピュータ端末1000によって実施されうる。処理600は、図4の処理400、図7の処理700、および/または、図8の処理800と関連して実施されうる。
処理600は、認証システムへの認証試行に関連する被写体(例えば、ユーザ602)の認証を含みうる。認証システムは、ディスプレイデバイス(例えば、スクリーン606)および画像キャプチャデバイス(例えば、ビデオカメラ608)を備えてよい。認証システムは、さらに、端末(例えば、スマートフォンなど)を備えてよい。端末は、認証試行に関連するアプリケーション604を実行できる。
工程610で、認証試行が呼び出される。認証試行の呼び出しは、(例えば、ユーザ602によって用いられるか、または、他の形でユーザ602に関連する端末上で)アプリケーション604を実行する工程を含んでよい。例えば、ユーザ602は、アプリケーション604を開くすなわち実行するよう選択できる。いくつかの実施形態において、アプリケーション604は、システム(例えば、サーバによってホストされるシステム、端末など)へのユーザ602の認証に関連して、開かれるか、または、他の方法で呼び出される。認証試行の呼び出しは、対象位置(例えば、ユーザ602の顔)または被写体を選択するかまたは決定する工程を含んでよい。
工程615で、画像が取得される。画像は、ビデオカメラ608などの画像キャプチャデバイスによって取得されうる。画像キャプチャデバイスは、ユーザ602によって用いられる端末に含まれるか、または、他の方法で接続された端末であってよい。例えば、ビデオカメラ608は、端末のフロントカメラ(例えば、端末のディスプレイが位置する側と同じである端末の側にあるカメラ)に対応しうる。
一例として、ユーザ対象位置の画像(例えば、顔の画像)が、ビデオカメラ608によって取得される。
工程620で、変動前画像が表示される。変動前画像は、投写情報が認証試行に関連して更新(例えば、変更)される前に表示される画像に対応しうる。変動前画像は、対象位置に少なくとも部分的に基づいて表示されうる。例えば、(例えば、ユーザ602の)対象位置が取得された後、変動前画像がアプリケーション604によって表示されうる。例えば、アプリケーション604は、ディスプレイデバイス(例えば、端末のディスプレイ)に変動前画像を表示させることができる。変動前画像は、ビデオカメラ608によってキャプチャされ、アプリケーション604へ提供されうる。
工程625で、変動が表示される。例えば、端末は、変動を決定し(例えば、投写情報を更新し)、その変動を表示することができる。変動の一例は、変動の表示がディスプレイデバイスに白画面を投写させるような全白画面である。いくつかの実施形態において、アプリケーション604は、端末に変動を表示させる。例えば、アプリケーション604は、変動を決定するか、または、(例えば、認証アプリケーション、サーバなどから)変動を受信することができ、そして、端末に変動をスクリーン606上に表示させることができる。変動前画像は、対象位置に少なくとも部分的に基づいて表示されうる。例えば、(例えば、ユーザ602の)対象位置が取得された後、変動前画像がアプリケーション604によって表示されうる。
工程630で、変動は、被写体(例えば、ユーザ602)上に投写される。例えば、スクリーン606によって表示された情報に含まれるかまたはスクリーン606から表示の変動によって引き起こされた変動は、被写体の少なくとも一部の上に(例えば、ユーザ602の眼球上に)投写されうる。
工程635で、画像(例えば、第2画像)が取得される。画像は、ビデオカメラ608などの画像キャプチャデバイスによって取得されうる。画像キャプチャデバイスは、ユーザ602によって用いられる端末に含まれるか、または、他の方法で接続された端末であってよい。例えば、ビデオカメラ608は、端末のフロントカメラ(例えば、端末のディスプレイが位置する側と同じである端末の側にあるカメラ)に対応しうる。
いくつかの実施形態において、変更(例えば、投写情報への更新)がディスプレイスクリーンの表示になされた(明るさの変更、異なる色の表示、および、異なる形状の表示を含むが、これらに限定されない)後、被写体の画像(例えば、ユーザ対象位置などの対象位置)が、端末デバイスに接続された画像キャプチャデバイス(例えば、ビデオカメラ608)によってキャプチャされる。画像キャプチャデバイスは、端末のフロントカメラに対応しうる。
工程640で、変動後画像が表示される。変動後画像は、投写情報が認証試行に関連して更新(例えば、変更)された後に表示される画像に対応しうる。変動後画像は、対象位置に少なくとも部分的に基づいて表示されうる。例えば、(例えば、ユーザ602の)対象位置が取得された後、変動前画像がアプリケーション604によって表示されうる。例えば、アプリケーション604は、ディスプレイデバイス(例えば、端末のディスプレイ)に変動前画像を表示させることができる。変動後画像は、ビデオカメラ608によってキャプチャされ、アプリケーション604へ提供されうる。
いくつかの実施形態において、ディスプレイスクリーン投写情報が変更された後に取得されたユーザ対象位置画像が出力される。
工程645で、変動前に取得された画像(例えば、第1画像)および変動後に取得された画像(例えば、第2画像)が比較される。例えば、変動前に取得された画像からの画像データが、変動後に取得された画像からの画像データと比較されうる。いくつかの実施形態において、フィードバック情報が、変動前に取得された画像と変動後に取得された画像との比較に基づいて取得されうる。フィードバック情報は、変動前に取得された画像と変動後に取得された画像との比較の結果に対応しうる。
工程650で、被写体が本物の人物に対応するか否かが判定される。例えば、ユーザ602が本物の人物であるか否かが判定される。いくつかの実施形態において、アプリケーション604は、ユーザ602が本物の人物であるか否かを判定する。被写体が本物の人物に対応するか否かの判定は、変動前に取得された画像と変動後に取得された画像との比較に基づいてよい。例えば、被写体が本物の人物に対応するか否かの判定は、工程645の結果に基づいてよい。
被写体が、工程650で本物の人物に対応すると判定された場合、処理600は、さらに、ユーザを認証する工程を含んでよい。ユーザは、1または複数の認証技術に従って認証されうる。例えば、ユーザは、ユーザ識別子ならびにトークンまたはパスワードの入力と、ユーザの登録に関連して格納された情報に対するかかるユーザ識別子ならびにトークンまたはパスワードの比較とに基づいて認証されうる。別の例として、ユーザのアイデンティティは、ユーザの写真(例えば、第1画像、第2画像、または、処理600で同時にキャプチャされた別の画像)と、ユーザの登録に関連して格納された参照写真との比較に基づいて確認されてもよい。ユーザの認証に基づいて、ユーザは、ドメイン(例えば、端末、ネットワークリソース、など)へのアクセス、または、ユーザの認証に関連付けられたサービス(例えば、ユーザが認証されるウェブサービス)へのアクセスを認められうる。
いくつかの実施形態において、表示の変動の前後から得られた画像データ比較結果は、ユーザ602が本物の人物であるか否かを判定するための基礎として機能する。
様々な実施形態に従って、生きた人間の顔の検出処理は、画面表示への変更を含む。例として、画面表示への変更は、明るさの変更、異なる色の表示、および、異なる形状の表示を含むが、これらに限定されない。画面表示への変更の後、画像における表示の変動へのフィードバックが、画像キャプチャデバイス(例えば、ビデオカメラ)によって取得される。フィードバックは、以下を含むがこれらに限定されない:リアルタイムな画像の明るさがディスプレイン明るさと共に変化するか否か、リアルタイムな画像の色がディスプレイの色と共に変化するか否か、眼球によって反射された画像が現在表示されている形状を示すか否か、など。表示への人間の顔のフィードバックと、表示への写真、ビデオ、または、コンピュータシミュレーションのフィードバックとの間には差異がある。フィードバックは、被写体(例えば、ユーザ)が本物の人物であるか否かを判定するため、および、セキュリティを向上させるために利用できる。
様々な実施形態が、生体顔検出を改善するための方法を提供する。生体顔検出のためのかかる方法を、関連技術に従って生体検出で一般に用いられる動作認識検出と組み合わせれば、生体顔検出の効果を改善することができる。
上述の方法実施形態はすべて、説明を単純化するために一連の動作の組み合わせとして提示されていることに注意されたい。しかしながら、当業者であれば、本発明は、記載された動作の順序に限定されず、本発明に従って、工程の一部について、別の順序を用いてもよいし同時に実行してもよいことを理解すべきである。さらに、当業者は、本説明に記載された実施形態が、好ましい実施形態であり、本明細書に含まれる動作およびモジュールが、本発明にとって必ずしも必要とされないことも理解すべきである。
上述の実施例の説明を通して、当業者であれば、実施形態に基づいた方法が、必要な汎用ハードウェアプラットフォームと共にソフトウェアを用いて実現されうることを明確に理解できる。もちろん、ハードウェアが利用されてもよいが、多くの場合、前者が好ましい実施例である。かかる理解に基づいて、本発明の技術は、本質的に、あるいは、従来技術に寄与する部分に関して、ソフトウェア製品の形態で実現できる。これらのコンピュータソフトウェア製品は、記憶媒体(ROM/RAM、磁気ディスク、および、光学ディスクなど)に格納され、端末装置(携帯電話、コンピュータ、サーバ、または、ネットワーク装置であってよい)に、本発明の実施形態の方法を実行させるために用いられる特定の数のコマンドを含みうる。
様々な実施形態が、顔認識に基づいた認証方法を提供する。図面内のフローチャートで図示する工程は、コマンドを実行できるコンピュータのグループなど、コンピュータシステムにおいて実行されうることに注意されたい。さらに、論理的順序がフローチャートに図示されているが、図示または記載されている工程は、いくつかの状況において、ここに示した以外の順序で実行されてもよい。
顔認識に基づいた認証方法は、コンピュータデバイス、携帯デバイス、または、同様の動作手段で実行されうる。例えば、顔認識に基づいた認証方法は、図1の端末100によって実行されうる。
図7は、本願の様々な実施形態に従って、顔認識に基づいた認証のための方法を示すフローチャートである。
図7を参照すると、顔認識に基づいた認証のための処理700が提供されている。処理700は、少なくとも部分的には、図1の端末100、図2の端末200、図3のシステム300、図9のスマートフォン900、および/または、図10のコンピュータ端末1000によって実施されうる。処理700は、図4の処理400、図6の処理600、および/または、図8の処理800と関連して実施されうる。
工程710で、第1画像が取得される。第1画像の取得は、ビデオカメラなどの画像キャプチャデバイスによって第1画像をキャプチャする工程を含んでよい。いくつかの実施形態において、画像キャプチャデバイスは、スマートフォンなどの端末上のフロントカメラである。第1画像は、ディスプレイスクリーンを通して被写体上に投写情報を投写した後の現在の被写体の画像に対応しうる。
ディスプレイスクリーンは、スマート端末デバイスのディスプレイスクリーンでありうる。投写情報は、ディスプレイスクリーンを通して表示される情報でありうる。被写体は、ビデオデバイス(例えば、画像キャプチャデバイス)を通して画像情報が取得される任意の被写体でありうる。投写情報がディスプレイを通して被写体上に投写された後、被写体の現在のキャプチャから取得された第1画像が得られる。
様々な実施形態によると、ディスプレイスクリーンは、スマートフォン、タブレットコンピュータ、ノートブックコンピュータ、デスクトップコンピュータ、または、その他の外部接続されたディスプレイデバイスのディスプレイスクリーンである。
工程720で、第2画像が取得される。第2画像の取得は、ビデオカメラなどの画像キャプチャデバイスによって第2画像をキャプチャする工程を含んでよい。いくつかの実施形態において、画像キャプチャデバイスは、スマートフォンなどの端末上のフロントカメラである。第2画像は、ディスプレイスクリーンによって表示される投影情報が変更(例えば、更新)された後に取得されうる。ディスプレイスクリーン上に表示される投写情報が変更された後、第2画像がキャプチャされる。第2画像は、投写情報が更新された状態の被写体の画像に対応しうる。
様々な実施形態に従って、ディスプレイスクリーンの投写情報(例えば、色または明るさ)が変更された後、被写体の第2画像が、更新された投写情報に基づくように、画像キャプチャデバイスによって取得される。
いくつかの実施形態において、画像キャプチャデバイスは、パラレルポートまたはUSBを介してディスプレイスクリーンに接続されたビデオカメラであてよい。画像キャプチャデバイスは、スマートフォン、タブレットコンピュータ、または、ノートブックコンピュータのフロントカメラ、もしくは、デスクトップコンピュータに外部接続されたビデオカメラであってよい。
工程730で、画像相違データが取得される。画像相違データは、第1画像および第2画像に少なくとも部分的に基づいて取得されうる。例えば、画像相違データは、第1画像および第2画像の比較に基づいて取得されうる。いくつかの実施形態において、画像相違データは、第1画像の画像データと第2画像の画像データとの比較に基づいて取得される。端末は、画像相違データの取得に関連して、第1画像および第2画像を比較できる。画像相違データの決定は、第1画像および第2画像内の被写体を検出して位置特定する工程と、被写体を含む第1画像の領域と被写体を含む第2画像の領域とを比較する工程と、比較に基づいて差グラフ(またはその他の表現)を生成する工程と、第1画像および第2画像の1または複数の特徴(例えば、明るさ、色など)の間の差を計算する工程と、相違グラフにおける相違領域を検出する工程と、相違領域に関連する結果を決定する工程と、を含んでよい。
第1画像は、投写情報が変更される前に取得された被写体の画像でありうる。第2画像は、投写情報が変更された後に取得された被写体の画像でありうる。第1画像および第2画像の画像相違データは、第1画像および第2画像を比較することによって取得される。
工程740で、被写体が仮想物体であるか否かが判定される。被写体が仮想物体であるか否かの判定は、画像相違データに基づいてよい。例えば、第1画像および第2画像の比較の結果は、被写体が仮想物体であるか否かの判定に関連して利用されうる。
様々な実施形態に従って、画像相違データ(例えば、明るさ変動値)が決定(例えば、計算)される。画像相違データは、第1画像および第2画像の比較に基づいて決定されうる。例えば、第1画像および第2画像の各々に対する画像データが、画像相違データを取得するために比較される。従って、被写体が仮想物体であるか否かを判定することが可能である。
仮想物体は、被写体の写真または三次元モデル(蝋人形など)、ビデオ、連続写真のスライド、もしくは、写真に基づいたソフトウェアシミュレーションから合成され動作を含む画像でありうる。
様々な実施形態に従って、投写情報が被写体に投写されると、被写体の現在のキャプチャから取得された第1画像が得られる。投写情報が変更された後、更新された投写情報が投写されている時に、被写体のキャプチャから取得された第2画像が得られる。第1画像および第2画像が比較され、画像相違データが取得される。画像相違データは、被写体が仮想物体であるか否かを判定するための基礎として機能する。
いくつかの実施形態において、被写体上に現在投写されているコンテンツの変更(例えば、投写情報の変更)は、ディスプレイスクリーン上に表示されたコンテンツまたはディスプレイスクリーンのスクリーンパラメータを変更する工程と、変更結果を被写体上へ投写する工程と、を含む。次いで、画像キャプチャデバイス(例えば、ビデオカメラ、端末上のフロントカメラなど)を用いて、データ(例えば、ディスプレイスクリーン上に表示されたコンテンツ)が被写体上への投写に向けて変更される前および変更された後の被写体の第1画像および第2画像が取得される。第1画像および第2画像の画像相違データは、現在の被写体が仮想物体であるか否かを判定するための基礎として機能する。例えば、第1画像および第2画像の間の差に対応する画像相違データは、被写体が仮想物体であるか否かの判定に関連して利用される。被写体上に投写されるコンテンツの変更は、被写体をキャプチャする過程で撮影されるコンテンツを変化させる。攻撃者によって用いられる悪意あるまたは不正な認証試行に利用できるコンテンツ(対応する動作の事前録画ビデオ、連続写真のスライドショー、もしくは、コンピュータシミュレーションを通して合成された頭を縦に振るまたは横に振る動作または瞬きなどの動作の画像、など)は、一般に、二次元画像である。したがって、二次元画像上に投写された投写情報が変更された場合に、それらの二次元画像内のどの2つの領域についても変更結果の間に差がない。例えば、被写体が仮想物体である場合にキャプチャされた画像(例えば、対応する動作の事前録画ビデオ、連続写真のスライドショー、もしくは、コンピュータシミュレーションを通して合成された頭を縦に振るまたは横に振る動作または瞬きなどの動作の画像)に対応する画像相違データは、第1画像および第2画像が一致することを示す。様々な実施形態に従って、被写体が仮想物体であるか否かを判定する処理において、被写体が二次元画像(例えば、仮想物体)でもあるか否かを判定するために、画像相違データを用いることが可能である。いくつかの実施形態において、変更された投写情報を動的または定期的に試験した後(例えば、投写情報の変更前後の対応する画像を取得した後)、以下を判定することができる:キャプチャされた第1画像および第2画像における異なる領域の画像変動結果の間に差が存在する場合、被写体は、仮想物体ではなく、生きている実在の被写体である。例えば、様々な実施形態が、表示の変化に対する被写体のリアルタイムフィードバックに基づいて生体検出を提供し、したがって、生きた人間の顔の検出精度を向上させ、認証システムでの仮想物体による悪意あるまたは不正な認証試行を低減する。
様々な実施形態が、ビデオまたは画像攻撃(ここで、悪意あるユーザは、ライブアクション(実写)を利用してシミュレートされた正規ユーザの動作を用いて認証を行う)に脆弱な既存のライブ認識に基づいた認証システムを改善する。
上述の方法実施形態はすべて、説明を単純化するために一連の動作の組み合わせとして提示されていることに注意されたい。しかしながら、当業者であれば、本発明は、記載された動作の順序に限定されず、本発明に従って、工程の一部について、別の順序を用いてもよいし同時に実行してもよいことを理解すべきである。さらに、当業者は、本説明に記載された実施形態が、好ましい実施形態であり、本明細書に含まれる動作およびモジュールが、本発明にとって必ずしも必要とされないことも理解すべきである。
上述の実施例の説明を通して、当業者であれば、実施形態に基づいた方法が、必要な汎用ハードウェアプラットフォームと共にソフトウェアを用いて実現されうることを明確に理解できる。もちろん、ハードウェアが利用されてもよいが、多くの場合、前者が好ましい実施例である。かかる理解に基づいて、本発明の技術的スキームは、本質的に、あるいは、従来技術に寄与する部分に関して、ソフトウェア製品の形態で実現できる。これらのコンピュータソフトウェア製品は、記憶媒体(ROM/RAM、磁気ディスク、および、光学ディスクなど)に格納され、端末装置(携帯電話、コンピュータ、サーバ、または、ネットワーク装置であってよい)に、本発明の実施形態の方法を実行させるために用いられる特定の数のコマンドを含みうる。
様々な実施形態が、顔認識に基づいた認証方法を提供する。図面内のフローチャートで図示する工程は、コマンドを実行できるコンピュータのグループなど、コンピュータシステムにおいて実行されうることに注意されたい。さらに、論理的順序がフローチャートに図示されているが、図示または記載されている工程は、いくつかの状況において、ここに示した以外の順序で実行されてもよい。
顔認識に基づいた認証方法は、携帯デバイス、コンピュータデバイス、または、同様の動作手段で実行されうる。例えば、顔認識に基づいた認証方法は、図1の端末100によって実行されうる。
図8は、本願の様々な実施形態に従って、顔認識に基づいた認証のための方法を示すフローチャートである。
図8を参照すると、顔認識に基づいた認証のための処理800が提供されている。処理800は、少なくとも部分的には、図1の端末100、図2の端末200、図3のシステム300、図9のスマートフォン900、および/または、図10のコンピュータ端末1000によって実施されうる。処理800は、図4の処理400、図6の処理600、および/または、図7の処理700と関連して実施されうる。
工程810で、第1画像が取得される。第1画像の取得は、ビデオカメラなどの画像キャプチャデバイスによって第1画像をキャプチャする工程を含んでよい。いくつかの実施形態において、画像キャプチャデバイスは、スマートフォンなどの端末上のフロントカメラである。第1画像は、現在の被写体の第1画像に対応しうる。第1画像は、携帯デバイスでキャプチャされてよい。
携帯デバイスは、スマートフォン、タブレットコンピュータ、ノートブックコンピュータ、または、ビデオカメラを有するその他のかかるスマートデバイスであってよい。被写体は、画像キャプチャデバイス(例えば、ビデオカメラ)を通して画像情報が取得される任意の被写体でありうる。被写体の現在の画像は、携帯デバイスのビデオカメラによって取得されてよく、第1画像として機能しうる。
いくつかの実施形態において、端末はスマートフォンである。
工程820で、更新された投写情報が取得される。投写情報は、第1画像が取得された後に更新されうる。投写情報は、端末によって表示されるコンテンツを変更するため、または、コンテンツが端末によって表示される方法を変更する(例えば、コンテンツの色を変更する、ディスプレイの明るさを変更する、など)ために、更新されうる。端末(例えば、携帯デバイス)のディスプレイスクリーンによって表示される表示コンテンツの変更後、携帯デバイスによって被写体上に投写される投写情報が取得される。
いくつかの実施形態において、ディスプレイスクリーンは、携帯デバイスのディスプレイに対応し、これは、スクリーン上に特定の電子情報コンテンツを表示できる携帯デバイスの入力/出力デバイスであり、人間の目にかかる情報を反射させるための表示ツールである。投写情報は、ディスプレイスクリーン上に表示されるコンテンツでありうる。投写情報は、ディスプレイスクリーン上に表示されたコンテンツを更新することによって更新されうる。ディスプレイスクリーンは、リアルタイムで投写情報を投写できる。
一例として、端末(例えば、携帯デバイス)がスマートフォンである場合、ディスプレイスクリーンの表示コンテンツの変更は、電話の画面の明るさ、電話の画面の色、電話の画面上のグラフィックの形状、または、電話の画面の特定のコンテンツ(テキストおよび写真など)、の変更でありうる。上述の変更のいずれかによって、被写体上に投写される投写情報が変更されうる。
被写体は、人物(例えば、端末のユーザ)の顔でありうる。
工程830で、第2画像が取得される。第2画像の取得は、ビデオカメラなどの画像キャプチャデバイスによって第2画像をキャプチャする工程を含んでよい。いくつかの実施形態において、画像キャプチャデバイスは、スマートフォンなどの端末上のフロントカメラである。第2画像は、ディスプレイスクリーンによって表示される投影情報が変更(例えば、更新)された後に取得されうる。
携帯デバイスのディスプレイスクリーンによって表示された表示コンテンツが変更され、携帯デバイスによって被写体上に投写される投写情報が取得された後、投写情報は、被写体上に投写され、被写体の画像(第2画像として機能することになる)が、携帯デバイスのビデオカメラ(例えば、フロントカメラなど)によって取得される。
工程840で、第1画像および第2画像の異なる領域における画像変動結果が取得される。いくつかの実施形態において、端末は、画像変動結果を取得する。画像変動結果の取得は、第1画像および第2画像の異なる領域において画像変動結果を抽出する工程を含みうる。例えば、第1画像の領域および第2画像の領域が抽出されうる。抽出される第1画像の領域および第2画像の領域は、対応する被写体または被写体の一部(例えば、ユーザの眼球)を含む第1画像および第2画像内の領域に対応しうる。第1画像と第2画像との間の差に対応する画像相違データが取得されうる。例えば、画像相違データは、第1画像および第2画像の比較に基づいて取得されうる。いくつかの実施形態において、第1画像の画像データおよび第2画像の画像データが比較され、かかる比較の結果に基づいて、画像相違データが取得される。いくつかの実施形態において、画像相違データは、抽出される第1画像の領域および第2画像の領域の比較に基づいて決定される。一例として、画像相違は、明るさの変化など画像変動結果について決定されうる。画像変動結果における明るさの変化が閾値よりも大きい場合、明るさが変化したと判定されうる。明るさ画像変動結果に基づいて、明るさが変化したか否かが決定されうる。
第1画像は、投写情報が変更される前に取得された被写体の画像でありうる。第2画像は、投写情報が変更された後に取得された被写体の画像でありうる。画像キャプチャデバイス(例えば、ビデオデバイス)が被写体の第1画像および第2画像を取得した後、プロセッサは、第1画像および第2画像に含まれる画像データを比較して、画像相違データを取得できる。
工程850で、被写体が仮想物体であるか否かが判定される。被写体が仮想物体であるか否かの判定は、画像相違データに基づいてよい。例えば、第1画像および第2画像の比較の結果は、被写体が仮想物体であるか否かの判定に関連して利用されうる。
いくつかの実施形態において、投写の変更の前後の被写体の第1画像および第2画像を比較することによって、画像相違データが取得された後、画像相違データは、被写体が仮想物体であるか実物体(例えば、ユーザなどの実物体)であるかを判定するための基礎として機能する。画像相違データがnullである場合、被写体の第1画像および第2画像は、投写情報の変更の前後で同じであると見なされ、対応する被写体は、仮想物体であると判定される。画像相違データnullでない場合、被写体の第1画像および第2画像は、投写情報の変更の前後で同じではないと見なされ、対応する被写体は、実物体であると判定される。
被写体が人間の目である一例として、ディスプレイスクリーンの表示コンテンツの変更に対する人間の目のフィードバックと、ディスプレイスクリーンの表示コンテンツの変更に対する写真、ビデオ、または、シミュレーションソフトウェアのフィードバックとの間には、大きい差異が存在する(例えば、被写体が人間の目である場合、本物の目からのフィードバックは、シミュレートされた目からのフィードバックとは異なる)。したがって、被写体のフィードバックデータは、現在の被写体が本物の人物の顔であるのか、または、(例えば、人間の顔の写真またはビデオを含む)仮想の人間の顔を含むシミュレートされた被写体であるのかを判定するための基礎として利用できる。
様々な実施形態に従って、携帯デバイスのディスプレイスクリーンによって表示される表示コンテンツが変更され、被写体上に投写される。携帯デバイスの画像キャプチャデバイス(例えば、ビデオデバイス)を用いて、ディスプレイスクリーンの変更の前後の被写体の第1画像および第2画像が取得され、第1画像および第2画像は、比較解析を受ける。第1および第2画像の差データは、現在の被写体が仮想物体であるか否かを判定するための基礎として機能する。被写体上に投写されるコンテンツの変更は、被写体をキャプチャする過程で取得されるコンテンツを変化させる。攻撃者によって用いられる悪意あるまたは不正な認証試行に利用できるコンテンツ(対応する動作の事前録画ビデオ、連続写真のスライドショー、もしくは、コンピュータシミュレーションを通して合成された頭を縦に振るまたは横に振る動作または瞬きなどの動作の画像、など)は、一般に、二次元画像である。したがって、二次元画像上に投写された投写情報が変更された場合に、それらの二次元画像内のどの2つの領域についても変更結果の間に差がない。例えば、被写体が仮想物体である場合にキャプチャされた画像(例えば、対応する動作の事前録画ビデオ、連続写真のスライドショー、もしくは、コンピュータシミュレーションを通して合成された頭を縦に振るまたは横に振る動作または瞬きなどの動作の画像)に対応する画像相違データは、第1画像および第2画像が一致することを示す。様々な実施形態に従って、被写体が仮想物体であるか否かを判定する処理において、被写体が二次元画像(例えば、仮想物体)でもあるか否かを判定するために、画像相違データを用いることが可能である。いくつかの実施形態において、変更された投写情報を動的または定期的に試験した後(例えば、投写情報の変更前後の対応する画像を取得した後)、以下を判定することができる:キャプチャされた第1画像および第2画像における異なる領域の画像変動結果の間に差が存在する場合、被写体は、仮想物体ではなく、生きている実在の被写体である。例えば、様々な実施形態が、表示の変化に対する被写体のリアルタイムフィードバックに基づいて生体検出および識別認証を提供し、したがって、生きた人間の顔の検出精度を向上させ、認証システムでの仮想物体による悪意あるまたは不正な認証試行を低減する。
様々な実施形態が、ビデオまたは画像攻撃(ここで、悪意あるユーザは、ライブアクション(実写)を利用してシミュレートされた正規ユーザの動作を用いて認証を行う)に脆弱な既存のライブ認識に基づいた認証システムを改善する。
様々な実施形態に従って、再び、携帯デバイスとして電話の例を取り、人物の顔を被写体とすると、電話のディスプレイスクリーンによって表示されるコンテンツ(テキストまたは写真など)は、顔の上に投写される対応する投写情報を取得するために変更される。次いで、人物の眼球は、電話のディスプレイスクリーンによって現在表示されているコンテンツを反射する。したがって、人物の眼球によって反射される情報は、電話のディスプレイスクリーンによって表示されるコンテンツの変更の前後で同じではない。そのため、電話がコンテンツを変更する前後に電話のビデオカメラによって撮影された顔の第1画像および第2画像は異なる。被写体が顔の写真であるかもしくは別の二次元または三次元モデルである場合、電話がコンテンツを変更する前後に電話のビデオカメラによって撮影された顔の第1画像および第2画像は同じになる。したがって、様々な実施形態は、生体認識に基づいた認証システムのセキュリティを向上させる。
様々な実施形態に従って、スマートフォンまたはタブレットなどの端末が、顔認識に基づいた認証方法を実施するために提供される。
図9は、本願の様々な実施形態に従って、端末を示す図である。
図9を参照すると、顔認識に基づいた認証のための端末900が提供されている。端末900は、図1の端末100、図2の端末200、図3のシステム300、および/または、図10のコンピュータ端末1000と関連して実施されうる。端末900は、図4の処理400、図6の処理600、図7の処理700、および/または、図8の処理800を、少なくとも部分的に実施できる。
図9に示すように、端末900(例えば、スマートフォン900)は:ディスプレイスクリーン910、画像キャプチャデバイス920(例えば、ビデオカメラ)、および、プロセッサ930を備える。
ディスプレイスクリーン910は、投写情報を投写(例えば、表示)するよう構成される。投写情報は、ディスプレイスクリーンによって表示されたコンテンツを含み、投写情報は、ディスプレイスクリーンの表示コンテンツを更新することによって更新される。画像キャプチャデバイス920(例えば、ビデオカメラ)は、投写情報がディスプレイスクリーンによって被写体上に投写された後に、現在の被写体の第1画像をキャプチャし、投写情報が変更された後に、投写が更新された状態の被写体の第2画像をキャプチャするよう構成される。プロセッサ930は、第1画像の画像データ、第2画像の画像データ、第1画像および第2画像における異なる領域からの画像変動結果を取得し、第1画像および第2画像を比較し、第1画像および第2画像の異なる領域の間の画像相違データ(例えば、異なる領域の画像変動結果)を取得し、被写体が仮想物体であるか否かを判定するための基礎として画像相違データを用いるよう構成される。
いくつかの実施形態において、上述の図9に示したスマートフォンは、タッチディスプレイデバイス(「タッチスクリーン」または「タッチディスプレイスクリーン」とも呼ばれる)を有する。いくつかの実施形態において、上述した図9に示すスマートフォンは、グラフィカルユーザインターフェイス(GUI)を有する。ユーザは、指の接触および/またはタッチセンシティブ面に触れる動作によって、GUIとのヒューマンマシンインタラクションを行いうる。ヒューマンマシンインタラクション機能は、任意選択的に、以下のインタラクションを含む:ウェブページの作成、描画、テキスト処理、電子文書の作成、ゲーム、ビデオ会議、インスタントメッセージング、電子メールの送受信、インターフェースの呼び出し、デジタルビデオの再生、デジタル音声の再生、および/または、インターネットブラウジング、など。上述のヒューマンマシンインタラクション機能を実行するための実行可能な命令は、1または複数のプロセッサによって実行可能なコンピュータプログラム製品内に、もしくは、読み取り可能な記憶媒体内に、構成/格納される。
具体的には、上述の実施形態において、ディスプレイスクリーンは、スクリーン上に特定の電子情報コンテンツを表示できるスマートフォンのディスプレイスクリーンであってよく、人間の目の上にかかる情報を反射させるための表示ツールである。画像キャプチャデバイスすなわちビデオカメラは、スマートフォンのビデオカメラであってよい。画像がレンズを通してキャプチャされた後、ビデオデバイス内部の光感知素子回路および制御構成要素が、画像を処理して、端末デバイスによって認識可能なデジタル信号に変換する。次いで、デジタル信号が、無線(例えば、Bluetooth、Wi−Fi、赤外線など)接続または有線(例えば、パラレルポート、USB、マイクロUSB、ファイヤワイヤなど)接続を介して端末デバイスに入力された後、画像は、ソフトウェアによって復元される。プロセッサは、画像処理機能を有するスマートフォンのCPUであってよい。投写情報は、ディスプレイスクリーン上に表示されるコンテンツ(写真、テキスト、または、フォームであってよい)でありうる。被写体は、ビデオカメラを通して画像情報が取得される必要がある任意の物体でありうる。任意選択的な実施形態において、被写体は人物の顔でありえ、仮想物体は被写体の二次元画像または三次元モデルでありうる。
いくつかの実施形態において、仮想物体は、被写体の写真または三次元モデル(蝋人形など)、ビデオ、連続写真のスライド、もしくは、写真に基づいたソフトウェアシミュレーションから合成され動作を含む画像でありうる。
人間の目である被写体を例に取ると、ディスプレイスクリーンの表示コンテンツの変化への人間の目のフィードバックと、ディスプレイスクリーンの表示コンテンツの変化への写真、ビデオ、または、シミュレーションソフトウェアのフィードバックとの間には非常に大きい差異がある。フィードバックは、ディスプレイスクリーンから表示されたコンテンツの被写体からの反射から導出された情報に対応しうる。したがって、被写体のフィードバックデータは、現在の対象が本物の人物の顔であるのかまたは仮想の人間の顔(例えば、人間の顔の写真またはビデオなど)を含むのかを評価するための基礎として利用できる。
様々な実施形態に従って、(例えば、端末のディスプレイからの投写情報の表示を介して)投写情報が被写体に投写されると、被写体の現在のキャプチャから取得された第1画像が得られる。投写情報が変更された後、更新された投写情報が投写されている時に、被写体のキャプチャから取得された第2画像が得られる。第1画像および第2画像が比較され、画像相違データが取得される。例えば、画像相違データは、第1画像と第2画像との間の差に対応しうる。画像相違は、第2画像が第1画像と異なる程度を測る尺度でありうる。いくつかの実施形態において、画像相違データは、端末によって表示された投写情報への変更に対応する更新されたコンテンツを第2画像が含むか否かを示すか、または、端末によって表示された投写情報への変更に対応する更新されたコンテンツを第2画像が含むか否かの示唆が導出された情報を含む。画像相違データは、被写体が仮想物体であるか否かを判定するための基礎として機能する。
いくつかの実施形態において、被写体上に現在投写されているコンテンツの変更(例えば、投写情報の変更)は、ディスプレイスクリーン上に表示されたコンテンツまたはディスプレイスクリーンのスクリーンパラメータを変更する工程と、変更結果を被写体上へ投写する工程と、を含む。次いで、画像キャプチャデバイス(例えば、ビデオカメラ、端末上のフロントカメラなど)を用いて、データ(例えば、ディスプレイスクリーン上に表示されたコンテンツ)が被写体上への投写に向けて変更される前および変更された後の被写体の第1画像および第2画像が取得される。第1画像および第2画像の画像相違データは、現在の被写体が仮想物体であるか否かを判定するための基礎として機能する。例えば、第1画像および第2画像の間の差に対応する画像相違データは、被写体が仮想物体であるか否かの判定に関連して利用される。被写体上に投写されるコンテンツの変更は、被写体をキャプチャする過程で撮影されるコンテンツを変化させる。攻撃者によって用いられる悪意あるまたは不正な認証試行に利用できるコンテンツ(対応する動作の事前録画ビデオ、連続写真のスライドショー、もしくは、コンピュータシミュレーションを通して合成された頭を縦に振るまたは横に振る動作または瞬きなどの動作の画像、など)は、一般に、二次元画像である。したがって、二次元画像上に投写された投写情報が変更された場合に、それらの二次元画像内のどの2つの領域についても変更結果の間に差がない。例えば、被写体が仮想物体である場合にキャプチャされた画像(例えば、対応する動作の事前録画ビデオ、連続写真のスライドショー、もしくは、コンピュータシミュレーションを通して合成された頭を縦に振るまたは横に振る動作または瞬きなどの動作の画像)に対応する画像相違データは、第1画像および第2画像が一致することを示す。様々な実施形態に従って、被写体が仮想物体であるか否かを判定する処理において、被写体が二次元画像(すなわち、仮想物体)でもあるか否かを判定するために、画像相違データを用いることが可能である。いくつかの実施形態において、変更された投写情報を動的または定期的に試験した後(例えば、投写情報の変更前後の対応する画像を取得した後)、以下を判定することができる:キャプチャされた第1画像および第2画像における異なる領域の画像変動結果の間に差が存在する場合、被写体は、仮想物体ではなく、生きている実在の被写体である。例えば、様々な実施形態が、表示の変化に対する被写体のリアルタイムフィードバックに基づいて生体検出を提供し、したがって、生きた人間の顔の検出精度を向上させ、認証システムでの仮想物体による悪意あるまたは不正な認証試行を低減する。
様々な実施形態が、ビデオまたは画像攻撃(ここで、悪意あるユーザは、ライブアクション(実写)を利用してシミュレートされた正規ユーザの動作を用いて認証を行う)に脆弱な既存のライブ認識に基づいた認証システムを改善する。
いくつかの実施形態において、端末900は、認証機能をアクティブ化する時、被写体が仮想物体であるか否かを判定するようにプロセッサ930をアクティブ化することができる。
いくつかの実施形態において、第1画像は、少なくとも以下を含む:第1投写情報を投写した時の被写体の第1顔画像および第1背景画像、そして、第2画像は、少なくとも以下を含む:第2投写情報投写した時の被写体の第2顔画像および第2背景画像。投写情報は、以下のうちの少なくとも1つを含む:投写の明るさ、投写の色、ならびに、投写グラフィックスまたはテキスト。
いくつかの実施形態において、プロセッサ930は、画像相違データがnullである場合に、被写体が仮想物体であると判定するよう構成される。画像相違データがnullであることは、第1画像の画像データおよび第2画像の画像データが同じであることを表しうる。
いくつかの実施形態において、画像相違データは以下を含む:第1顔画像を第2顔画像と比較して得られた第1変動度、および、第1背景画像を第2背景画像と比較して得られた第2変動度。プロセッサ930は、さらに、投写情報が投写の明るさおよび/または投写の色である時、第1変動度が顔全体の明るさ変動値および/または色変動値であり、第1変動度と第2変動度との間の差が第1所定変動範囲内に収まる場合に、被写体が仮想物体であると判定するよう構成されてよい。被写体上に投写される投写情報が変更された場合、第1変動度は、被写体をキャプチャすることによって取得された顔画像を記録することによって決定され、第2変動度は、被写体が位置する背景画像をキャプチャすることによって決定される。
様々な実施形態は、被写体が仮想物体であるか否かを判定するための基礎として、画像の部分的な明るさ変動を用いる。ディスプレイスクリーンの明るさが変化するので、リアルタイムにビデオカメラによって取得された画像明るさにおける顔部分および背景部分の明るさ変動度は、以下の差異を有する:本物の人物の顔部分からディスプレイスクリーンまでの距離が同じではなくなるので、本物の人物の顔部分の明るさの変動はより顕著になるが、背景部分の明るさの変動は容易にわかるほどではない。被写体が、写真、ビデオ、ソフトウェアシミュレーション、および、その他のかかる方法に対応する場合、顔部分および背景部分のディスプレイスクリーンからの距離は基本的に異なるが、明るさ変動度は同じになる。
いくつかの実施形態において、画像相違データは以下を含む:第1顔画像を第2顔画像と比較して得られた第1変動度、および、第1背景画像を第2背景画像と比較して得られた第2変動度。第1顔画像および第2顔画像が、被写体の顔の少なくとも1つの生物学的特徴に関する特徴情報を含む場合、ならびに、投写情報が、投写の明るさおよび/または投写の色である場合、プロセッサ930は、第1変動度が顔の任意の1または複数の生物学的特徴の明るさ変動値および/または色変動値であり、第1変動度と第2変動度との間の差が第2所定変動範囲内に収まる場合に、被写体が仮想物体であると判定しうる。被写体上に投写される投写情報が変更された場合、第1変動度は、被写体をキャプチャすることによって取得された顔画像を記録することによって決定され、第2変動度は、被写体が位置する背景画像をキャプチャすることによって決定される。
様々な実施形態は、顔の様々な部分の明るさ変動度に基づいて、被写体が仮想物体であるか否かを判定する。ディスプレイスクリーンの明るさおよび/または色が変わると、ビデオカメラによってリアルタイムに取得された画像の明るさにおいて、顔部分と背景部分との間で明るさおよび/または色の程度に差が存在する。本物の人物の場合、明るさの変動は、顔の高輝度光部分と低輝度光部分との間で、顔の3D構造により異なることになる。写真、ビデオ、ソフトウェアシミュレーション、または、その他のかかる方法の場合、顔の様々な部分の明るさの変動パターンは、その平坦な構造のために、本物の人物とは異なるものになる。
いくつかの実施形態において、画像相違データは以下を含む:第1顔画像および第2顔画像内の少なくとも1つの生物学的特徴の画像変動値がある場合、かつ、投写情報が投写の明るさおよび/または投写の色である場合、プロセッサ930は、任意の2つの生物学的特徴の明るさ変動値および/または色変動値を取得するよう構成される。任意の2以上の生物学的特徴の画像相違データが第3所定変動範囲内に収まる場合、被写体は、仮想物体であると判定される。被写体上に投写される投写情報が変更された場合、画像相違データは、被写体の顔の少なくとも1つの生物学的特徴のキャプチャから取得された特徴画像を記録することによって決定される。
いくつかの実施形態において、投写情報は以下を含む:投写グラフィックス。生物学的特徴が眼球である場合、画像相違データは、第1顔画像および第2顔画像内の生物学的特徴の画像変動値であり、これは、眼球によって反射される画像コンテンツの変動値である。プロセッサ930は、さらに、画像コンテンツの変動値が所定変動範囲(例えば、第4所定変動範囲)内にある場合に、被写体が仮想物体であると判定するよう構成されてよい。
いくつかの実施例において、被写体として人物の顔の例を取ると、スマートフォンのディスプレイスクリーンによって表示されるコンテンツ(テキストまたは写真など)は、顔の上に投写される対応する投写情報を取得するために変更されうる。次いで、人物の眼球は、電話のディスプレイスクリーンによって現在表示されているコンテンツを反射する。したがって、人物の眼球によって反射される情報は、スマートフォンのディスプレイスクリーンによって表示されるコンテンツの変更の前後で同じではない。そのため、電話がコンテンツを変更する前後にスマートフォンのビデオカメラによって撮影された顔の第1画像および第2画像は異なる。被写体が顔の写真であるかもしくは別の二次元または三次元モデルである場合、スマートフォンがコンテンツを変更する前後にスマートフォンのビデオカメラによって撮影された顔の第1画像および第2画像は一般的に同じになる。様々な実施形態は、生体認識に基づいた認証システムのセキュリティを向上させる。
様々な実施形態が、コンピュータ端末を提供する。このコンピュータ端末は、コンピュータ端末のクラスタ内の任意のコンピュータ端末デバイスであってよい。コンピュータ端末は、携帯端末などの端末デバイスに置き換えられてもよい。
いくつかの実施形態において、コンピュータは、コンピュータネットワークの複数のネットワークデバイスの中の任意の1つのネットワークデバイスに配置される。
様々な実施形態に従って、コンピュータ端末は、アプリケーションの脆弱性検出方法の以下の工程のためのプログラムコードを実行できる:投写情報が被写体上に投写されている時に、被写体の現在のキャプチャから取得された第1画像が得られる。投写情報が変更された後、投写情報が投写更新を受けた時に被写体のキャプチャから取得された第2画像が得られる。第1画像および第2画像が比較され、画像相違データが取得される。画像相違データは、被写体が仮想物体であるか否かを判定するための基礎として機能する。
図10は、本願の様々な実施形態に従って、コンピュータ端末を示す構造ブロック図である。
図10を参照すると、顔認識に基づいた認証のための端末1000が提供されている。端末1000は、図1の端末100、図2の端末200、図3のシステム300、および/または、図9のスマートフォン900と関連して実施されうる。端末1000は、図4の処理400、図6の処理600、図7の処理700、および/または、図8の処理800を、少なくとも部分的に実施できる。
図10に示すように、コンピュータ端末1000は、1または複数のプロセッサ1010(例えば、プロセッサ1010a、プロセッサ1010b、および/または、プロセッサ1010n)と、メモリ1020と、通信モジュール(例えば、伝送デバイス)1030と、を備える。
メモリ1020は、ソフトウェアプログラムおよびモジュール(例えば、セキュリティ脆弱性検出方法に対応するプログラム命令/モジュール)を格納するために用いられてよい。メモリに格納されたソフトウェアプログラムおよびモジュールを実行することにより、プロセッサ1010は、様々な関数適用を実行し、データ処理(例えば、プロセッサ1010)は、攻撃に対するシステムの脆弱性を検出するための方法を実施する。メモリ1020は、高速ランダムアクセスメモリを含みうる。メモリ1020は、さらに、1または複数の磁気ストレージデバイス、フラッシュメモリ、または、その他の不揮発性ソリッドステートメモリなど、不揮発性メモリを含みうる。いくつかの実施形態において、メモリ1020は、プロセッサに対してリモートに配置されたメモリを含む。かかるリモートメモリは、ネットワークを介して端末1000に接続されてよい。ネットワークの例は、インターネット、企業イントラネット、ローカルエリアネットワーク、モバイル通信ネットワーク、および、それらの組み合わせを含むが、これらに限定されない。
プロセッサ1010は、メモリ1020によって格納された情報およびアプリケーションを呼び出して、以下の工程を実行できる:投写情報が被写体に投写されている時に、被写体の現在のキャプチャから取得された第1画像が得られる。投写情報が変更された後、投写情報が投写更新を受けた時に被写体のキャプチャから取得された第2画像が得られる。第1画像および第2画像が比較され、画像相違データが取得される。画像相違データは、被写体が仮想物体であるか否かを判定するための基礎として機能する。プロセッサ1010は、入力/出力インターフェースまたは伝送デバイス1030を用いて、メモリ1020によって格納された情報およびアプリケーションを呼び出すことができる。
プロセッサ1010は、さらに、以下の工程のためのプログラムコードを実行できる:端末デバイスが認証機能をアクティブ化すると、投写情報が端末デバイスのディスプレイスクリーンによって投写され、ここで、投写情報は、ディスプレイスクリーンによって表示されたコンテンツであり、投写情報は、ディスプレイスクリーンの表示コンテンツを更新することによって更新される。
いくつかの実施形態において、第1画像は、少なくとも以下を含む:第1投写情報を投写した時の被写体の第1顔画像および第1背景画像、そして、第2画像は、少なくとも以下を含む:第2投写情報投写した時の被写体の第2顔画像および第2背景画像。投写情報は、以下のうちの少なくとも1つを含みうる:投写の明るさ、投写の色、および、投写グラフィックス。
いくつかの実施形態において、プロセッサ1010は、以下の工程のためのプログラムコードを実行する:画像相違データがnullである場合に、被写体が仮想物体であると判定する工程。画像相違データがnullであることは、第1画像の画像データおよび第2画像の画像データが同じであることを表している。
いくつかの実施形態において、プロセッサ1010は、以下の工程のためのプログラムコードを実行する:投写情報が投写の明るさおよび/または投写の色である時、第1変動度が顔全体の明るさ変動値および/または色変動値であり、第1変動度と第2変動度との間の差が第1所定変動範囲内に収まる場合に、被写体が仮想物体であると判定される。被写体上に投写される投写情報が変更された場合、第1変動度は、被写体をキャプチャすることによって取得された顔画像を記録することによって決定され、第2変動度は、被写体が位置する背景画像をキャプチャすることによって決定される。
いくつかの実施形態において、プロセッサ1010は、以下の工程のためのプログラムコードを実行する:投写情報が投写の明るさおよび/または投写の色である時、第1変動度が顔の任意の1または複数の生物学的特徴の明るさ変動値および/または色変動値であり、第1変動度と第2変動度との間の差が閾値範囲(例えば、第2所定変動範囲)内に収まる場合に、被写体は仮想物体であると判定される。被写体上に投写される投写情報が変更された場合、第1変動度は、被写体をキャプチャすることによって取得された顔画像を記録することによって決定され、第2変動度は、被写体が位置する背景画像をキャプチャすることによって決定される。
いくつかの実施形態において、プロセッサ1010は、以下の工程のためのプログラムコードを実行する:投写情報が投写の明るさおよび/または投写の色である時、任意の2つの生物学的特徴の明るさ変動値および/または色変動値を取得する工程。任意の2以上の生物学的特徴の画像変動値が第3所定変動範囲内に収まる場合、被写体は仮想物体であるとの判定がなされる。被写体上に投写される投写情報が変更された場合、画像相違データは、被写体の顔の少なくとも1つの生物学的特徴のキャプチャから取得された特徴画像を記録することによって決定される。
いくつかの実施形態において、プロセッサ1010は、以下の工程のためのプログラムコードを実行する:投写情報は、投写グラフィックスを含む。生物学的特徴が眼球である場合、画像相違データは、第1顔画像および第2顔画像内の生物学的特徴の画像変動値であり、これは、眼球によって反射される画像コンテンツの変動値である。画像コンテンツの変動値が第4所定変動範囲内にある場合、被写体が仮想物体であるとの判定がなされる。
図10に示した構造は、例示にすぎない。コンピュータ端末は、スマートフォン(AndroidフォンまたはiOSフォンなど)、タブレットコンピュータ、パームトップコンピュータ、携帯インターネットデバイス(MID)、PAD、または、その他のかかるデバイスであってよい。図10は、電子デバイスの構造を限定するものではない。例えば、コンピュータ端末1000は、図10に示したよりも多いまたは少ない構成要素(ネットワークインターフェース、ディスプレイデバイスなど)を備えてもよいし、図10に示した構成とは異なる構成を有してもよい。
当業者であれば、上述の実施形態の様々な方法における工程の全部または一部が、端末デバイスに関連するハードウェアにプログラムで命令することによって実行されうることを理解できる。これらのプログラムは、コンピュータ読み取り可能な記憶媒体に格納されてよい。記憶媒体は、フラッシュディスク、リードオンリーメモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気ディスク、光学ディスクなどを含みうる。
様々な実施形態が、記憶媒体を提供する。いくつかの実施形態において、記憶媒体は、顔認識に基づいた認証方法によって実行されるプログラムコードを保存するために用いられる。
記憶媒体は、コンピュータネットワーク内のコンピュータ端末グループの中の任意のコンピュータ端末に配置されてもよいし、携帯端末グループの中の任意の携帯端末に配置されてもよい。
いくつかの実施形態において、記憶媒体は、以下の工程を実行するためのプログラムコードを格納するよう構成される:投写情報が被写体に投写されている時に、被写体の現在のキャプチャから取得された第1画像が得られる。投写情報が変更された後、投写情報が投写更新を受けた時に被写体のキャプチャから取得された第2画像が得られる。第1画像および第2画像が比較され、画像相違データが取得される。画像相違データは、被写体が仮想物体であるか否かを判定するための基礎として機能する。
いくつかの実施形態において、記憶媒体は、以下の工程を実行するためのプログラムコードを格納するよう構成される:端末デバイスが認証機能をアクティブ化すると、投写情報が端末デバイスのディスプレイスクリーンによって投写される。投写情報は、ディスプレイスクリーンによって表示されたコンテンツであってよく、投写情報は、ディスプレイスクリーンの表示コンテンツを更新することによって更新される。
いくつかの実施形態において、第1画像は、少なくとも以下を含む:第1投写情報を投写した時の被写体の第1顔画像および第1背景画像、そして、第2画像は、少なくとも以下を含む:第2投写情報投写した時の被写体の第2顔画像および第2背景画像。投写情報は、以下のうちの1または複数を含みうる:投写の明るさ、投写の色、および、投写グラフィックス。
いくつかの実施形態において、記憶媒体は、以下の工程を実行するためのプログラムコードを格納するよう構成される:画像相違データがnullである場合に、被写体が仮想物体であると判定する工程。画像相違データがnullであることは、第1画像の画像データおよび第2画像の画像データが同じであることを表しうる。
いくつかの実施形態において、記憶媒体は、以下の工程を実行するためのプログラムコードを格納するよう構成される:投写情報が投写の明るさおよび/または投写の色である時、第1変動度が顔全体の明るさ変動値および/または色変動値であり、第1変動度と第2変動度との間の差が第1所定変動範囲内に収まる場合に、被写体が仮想物体であると判定される。被写体上に投写される投写情報が変更された場合、第1変動度は、被写体をキャプチャすることによって取得された顔画像を記録することによって決定され、第2変動度は、被写体が位置する背景画像をキャプチャすることによって決定される。
いくつかの実施形態において、記憶媒体は、以下の工程を実行するためのプログラムコードを格納するよう構成される:投写情報が投写の明るさおよび/または投写の色である時、第1変動度が顔の任意の1または複数の生物学的特徴の明るさ変動値および/または色変動値であり、第1変動度と第2変動度との間の差が第2所定変動範囲内に収まる場合に、被写体は仮想物体であると判定される。被写体上に投写される投写情報が変更された場合、第1変動度は、被写体をキャプチャすることによって取得された顔画像を記録することによって決定され、第2変動度は、被写体が位置する背景画像をキャプチャすることによって決定される。
いくつかの実施形態において、記憶媒体は、以下の工程を実行するためのプログラムコードを格納するよう構成される:投写情報が投写の明るさおよび/または投写の色である時、任意の2つの生物学的特徴の明るさ変動値および/または色変動値を取得する工程。任意の2以上の生物学的特徴の画像相違データが閾値範囲(例えば、第3所定変動範囲)内に収まる場合、被写体は、仮想物体であると判定される。被写体上に投写される投写情報が変更された場合、画像相違データは、被写体の顔の少なくとも1つの生物学的特徴のキャプチャから取得された特徴画像を記録することによって決定される。
いくつかの実施形態において、記憶媒体は、以下の工程を実行するためのプログラムコードを格納するよう構成される:投写情報は、投写グラフィックスを含む。生物学的特徴が眼球である場合、画像相違データは、第1顔画像および第2顔画像内の生物学的特徴の画像変動値であり、これは、眼球によって反射される画像コンテンツの変動値である。画像コンテンツの変動値が閾値範囲(例えば、第4所定変動範囲)内にある場合、被写体は仮想物体であると判定される。
本発明の実施形態において、各実施形態の記載は、個別の強調点を有し、一実施形態の一部は詳細に記載されてはいない。関連の記載のためにその他の実施形態を参照してよい。
本願によって提供されたいくつかの実施形態において、開示された技術的内容は、他の方法で実現されてもよいことを理解されたい。上述したデバイスの実施形態は、単に例示である。例えば、ユニットへの分割は、単に論理機能による分割である。実際に実装される場合、他の形態の分割もありうる。例えば、複数のユニットまたは構成要素が、別のシステムに組み合わせまたは一体化されてもよく、また、一部の特徴が省略されるかまたは実行されなくてもよい。さらに、図示または議論されている挿入された結合または直接的な結合または通信接続は、いくつかのインターフェース、ユニット、モジュールを通る間接的な結合または通信リンクであってもよい。それらは、電気的であってよく、別の形態をとってもよい。
別個の構成要素として記載されたユニットは、物理的に離れていても離れていなくてもよく、ユニットとして図示された構成要素は、物理的ユニットであってもなくてもよい。それらは、1つの場所に配置されてもよいし、複数のネットワークユニットにわたって分散されてもよい。本実施形態の具現化スキームは、実際のニーズに従って、ユニットの一部またはすべてを選択することによって実現できる。
さらに、本発明の様々な実施形態における機能ユニットが、1つの処理ユニットに統合されてもよいし、各ユニットが、独立した物理的存在を有してもよいし、2以上のユニットが、単一のユニットに統合されてもよい。統合ユニットは、ハードウェアの形態をとってもよいし、ソフトウェア機能ユニットの形態をとってもよい。
統合ユニットがソフトウェア機能ユニットの形態で実現され、独立した製品として販売または利用される場合、それらは、コンピュータ読み取り可能な記憶媒体に格納されてよい。かかる理解に基づいて、様々な実施形態の技術的スキームは、本質的であるか、従来技術に寄与する部分に関するかにかかわらず、また、技術的スキームの全部または一部に関して、ソフトウェア製品の形態で実現可能である。これらのコンピュータソフトウェア製品は、記憶媒体(ROM/RAM、磁気ディスク、および、光学ディスクなど)に格納され、端末装置(携帯電話、コンピュータ、サーバ、または、ネットワーク装置であってよい)に、本発明の実施形態に記載された方法を実行させるために用いられる特定の数のコマンドを含みうる。上述した記憶媒体は、以下を含む:USBフラッシュドライブ、携帯型ハードドライブ、リードオンリーメモリ(ROM)、ランダムアクセスメモリ(RAM)、ポータブルハードドライブ、磁気ディスク、または、光学ディスク、もしくは、プログラムコードを格納できる様々な他の媒体。
以上の記載は、様々な実施形態を実施する具体的な手段にすぎない。当業者であれば、本発明の原理から逸脱することなく、改良および修飾を施すことも可能であること、そして、かかる改良および修飾も、本発明の保護範囲内にあると見なされるべきであることに注意されたい。
上述の実施形態は、理解しやすいようにいくぶん詳しく説明されているが、本発明は、提供された詳細事項に限定されるものではない。本発明を実施する多くの代替方法が存在する。開示された実施形態は、例示であり、限定を意図するものではない。