IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ベイジン バイドゥ ネットコム サイエンス アンド テクノロジー カンパニー リミテッドの特許一覧

特開2022-78338顔生体検出方法、装置、電子機器及び記憶媒体
<>
  • 特開-顔生体検出方法、装置、電子機器及び記憶媒体 図1
  • 特開-顔生体検出方法、装置、電子機器及び記憶媒体 図2
  • 特開-顔生体検出方法、装置、電子機器及び記憶媒体 図3
  • 特開-顔生体検出方法、装置、電子機器及び記憶媒体 図4
  • 特開-顔生体検出方法、装置、電子機器及び記憶媒体 図5
  • 特開-顔生体検出方法、装置、電子機器及び記憶媒体 図6
  • 特開-顔生体検出方法、装置、電子機器及び記憶媒体 図7
  • 特開-顔生体検出方法、装置、電子機器及び記憶媒体 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022078338
(43)【公開日】2022-05-24
(54)【発明の名称】顔生体検出方法、装置、電子機器及び記憶媒体
(51)【国際特許分類】
   G06T 7/00 20170101AFI20220517BHJP
【FI】
G06T7/00 660A
G06T7/00 350C
【審査請求】有
【請求項の数】19
【出願形態】OL
【公開請求】
(21)【出願番号】P 2022043293
(22)【出願日】2022-03-18
(31)【優先権主張番号】202110573893.9
(32)【優先日】2021-05-25
(33)【優先権主張国・地域又は機関】CN
(71)【出願人】
【識別番号】514322098
【氏名又は名称】ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド
【氏名又は名称原語表記】Beijing Baidu Netcom Science Technology Co., Ltd.
【住所又は居所原語表記】2/F Baidu Campus, No.10, Shangdi 10th Street, Haidian District, Beijing 100085, China
(74)【代理人】
【識別番号】100118913
【弁理士】
【氏名又は名称】上田 邦生
(74)【代理人】
【識別番号】100142789
【弁理士】
【氏名又は名称】柳 順一郎
(74)【代理人】
【識別番号】100201466
【弁理士】
【氏名又は名称】竹内 邦彦
(72)【発明者】
【氏名】ワン, ケヤオ
(72)【発明者】
【氏名】リュウ, ジエ
(72)【発明者】
【氏名】リ, ユンハオ
(72)【発明者】
【氏名】ユエ, ハイシャオ
(72)【発明者】
【氏名】フェン, ハオチェン
(57)【要約】      (修正有)
【課題】スマートシティやスマート金融のシーンに適用される顔生体検出方法、装置、電子機器及び記憶媒体を提供する。
【解決手段】顔生体検出方法は、カラーシーケンス検証コードを取得し、電子機器の画面が対応する色を順次生成するように制御し、電子機器のカメラが対応する色におけるターゲットオブジェクトの顔画像を収集するように制御し、異なる色におけるターゲットオブジェクトの画像シーケンスを取得し、これに基づいてターゲットオブジェクトに対して顔生体検証を行い、生体スコア値を取得し、異なる色におけるターゲットオブジェクトの画像シーケンスに基づいて画像シーケンスのそれぞれの色に対応する差分図を取得し、カラーシーケンス検証コードと画像シーケンスのそれぞれの色に対応する差分図に基づいて色検証を行い、生体スコア値と色検証結果に基づいて、ターゲットオブジェクトの最終の顔生体検出結果を決定する。
【選択図】図1
【特許請求の範囲】
【請求項1】
カラーシーケンス検証コードを取得するステップと、
前記カラーシーケンス検証コードに含まれる色の順序に基づいて電子機器の画面が対応する色を順次生成するように制御し、前記電子機器のカメラが前記対応する色におけるターゲットオブジェクトの顔画像を収集するように制御し、異なる色における前記ターゲットオブジェクトの画像シーケンスを取得するステップと、
異なる色における前記ターゲットオブジェクトの画像シーケンスに基づいて前記ターゲットオブジェクトに対して顔生体検証を行い、生体スコア値を取得するステップと、
異なる色における前記ターゲットオブジェクトの画像シーケンスに基づいて前記画像シーケンスのそれぞれの色に対応する差分図を取得し、前記カラーシーケンス検証コードと前記画像シーケンスのそれぞれの色に対応する差分図に基づいて色検証を行うステップと、
前記生体スコア値と色検証結果に基づいて、前記ターゲットオブジェクトの最終の顔生体検出結果を決定するステップと、
を含む顔生体検出方法。
【請求項2】
異なる色における前記ターゲットオブジェクトの画像シーケンスに基づいて前記ターゲットオブジェクトに対して顔生体検証を行い、生体スコア値を取得するステップが、
異なる色における前記ターゲットオブジェクトの画像シーケンスに対してそれぞれ顔位置合わせを行い、前記画像シーケンスにおける各画像のうちの顔画像を取得するステップと、
各前記顔画像に対して顔色生体検出を行い、各前記顔画像に対応する顔色生体得点を取得するステップと、
異なる色における前記ターゲットオブジェクトの画像シーケンスの両眼領域をそれぞれ切り取り、前記画像シーケンスにおける各画像の両眼画像を取得するステップと、
前記画像シーケンスにおける各画像の両眼画像に基づいて瞳色生体検出を行い、前記画像シーケンスにおける各画像の瞳色生体得点を取得するステップと、
各前記顔画像に対応する顔色生体得点と前記画像シーケンスにおける各画像の瞳色生体得点に基づいて、前記生体スコア値を取得するステップと、
を含む請求項1に記載の顔生体検出方法。
【請求項3】
異なる色における前記ターゲットオブジェクトの画像シーケンスの両眼領域をそれぞれ切り取り、前記画像シーケンスにおける各画像の両眼画像を取得するステップが、
前記画像シーケンスにおける各画像の顔キーポイントを決定するステップと、
前記画像シーケンスにおける各画像の両眼領域の画像を切り取るステップと、
前記各画像の顔キーポイントに基づいて各前記両眼領域画像における左目尻座標と右目尻座標を決定するステップと、
前記左目尻座標に基づいて前記両眼領域の画像を処理し、第1の両眼画像を得るステップと、
前記右目尻座標に基づいて前記両眼領域の画像を処理し、第2の両眼画像を得るステップと、
前記各画像の第1の両眼画像と第2の両眼画像に対してオーバーラップ処理を行い、前記各画像の両眼画像を得るステップと、
を含む請求項2に記載の顔生体検出方法。
【請求項4】
各前記顔画像に対応する顔色生体得点と前記画像シーケンスにおける各画像の瞳色生体得点に基づいて、前記生体スコア値を取得するステップが、
各前記顔画像に対応する顔色生体得点と前記画像シーケンスにおける各画像の瞳色生体得点に基づいて重み付け処理を行い、前記生体スコア値を取得するステップを含む請求項2に記載の顔生体検出方法。
【請求項5】
異なる色における前記ターゲットオブジェクトの画像シーケンスに基づいて前記画像シーケンスのそれぞれの色に対応する差分図を取得するステップが、
前記画像シーケンスにおける各画像の顔キーポイントを決定するステップと、
前記各画像の顔キーポイントに基づいて、前記各画像における左目の目尻座標と右目の目尻座標を決定するステップと、
前記左目の目尻座標と右目の目尻座標に基づいて前記各画像に対してアフィン変換処理を行い、前記各画像の矯正後の顔領域画像を取得するステップと、
前記画面で生成された色順序に従って、前記各画像の矯正後の顔領域画像のうちの2つずつに対して分割演算を行い、前記画像シーケンスのそれぞれの色に対応する差分図を取得するステップと、
を含む請求項1に記載の顔生体検出方法。
【請求項6】
前記カラーシーケンス検証コードと前記画像シーケンスのそれぞれの色に対応する差分図に基づいて色検証を行うステップが、
前記画像シーケンスのそれぞれの色に対応する差分図に対して色分類を行い、対応するカラーシーケンスを取得し、前記対応するカラーシーケンスが前記カラーシーケンス検証コードと一致するか否かを検証するステップを含む請求項1に記載の顔生体検出方法。
【請求項7】
カラーシーケンス検証コードを取得するステップが、サーバによって生成された前記カラーシーケンス検証コードを取得するステップを含む請求項1から6のいずれか一項に記載の顔生体検出方法。
【請求項8】
顔生体検出の中で、前記ターゲットオブジェクトの顔を追跡し続けるステップと、
前記ターゲットオブジェクトの頭部が途中でレンズから外れたか否かを検出するステップと、
前記ターゲットオブジェクトの頭部が途中でレンズから離れたことに応答し、前記ターゲットオブジェクトを取得するステップに戻って実行するステップと、
を含む請求項1から6のいずれか一項に記載の顔生体検出方法。
【請求項9】
カラーシーケンス検証コードを取得する取得モジュールと、
前記カラーシーケンス検証コードに含まれる色の順序に基づいて電子機器の画面が対応する色を順次生成するように制御し、前記電子機器のカメラが前記対応する色におけるターゲットオブジェクトの顔画像を収集するように制御し、異なる色における前記ターゲットオブジェクトの画像シーケンスを取得する制御モジュールと、
異なる色における前記ターゲットオブジェクトの画像シーケンスに基づいて前記ターゲットオブジェクトに対して顔生体検証を行い、生体スコア値を取得する顔生体検証モジュールと、
異なる色における前記ターゲットオブジェクトの画像シーケンスに基づいて前記画像シーケンスのそれぞれの色に対応する差分図を取得し、前記カラーシーケンス検証コードと前記画像シーケンスのそれぞれの色に対応する差分図に基づいて色検証を行う色検証モジュールと、
前記生体スコア値と色検証結果に基づいて、前記ターゲットオブジェクトの最終の顔生体検出結果を決定する決定モジュールと、
を備える顔生体検出装置。
【請求項10】
前記顔生体検証モジュールが、
各前記顔画像に対して顔色生体検出を行い、各前記顔画像に対応する顔色生体得点を取得し、
異なる色における前記ターゲットオブジェクトの画像シーケンスの両眼領域をそれぞれ切り取り、前記画像シーケンスにおける各画像の両眼画像を取得し、
前記画像シーケンスにおける各画像の両眼画像に基づいて瞳色生体検出を行い、前記画像シーケンスにおける各画像の瞳色生体得点を取得し、
各前記顔画像に対応する顔色生体得点と前記画像シーケンスにおける各画像の瞳色生体得点に基づいて、前記生体スコア値を取得する請求項9に記載の顔生体検出装置。
【請求項11】
前記顔生体検証モジュールが、
前記画像シーケンスにおける各画像の顔キーポイントを決定し、
前記画像シーケンスにおける各画像の両眼領域の画像を切り取り、
前記各画像の顔キーポイントに基づいて各前記両眼領域画像における左目尻座標と右目尻座標を決定し、
前記左目尻座標に基づいて前記両眼領域の画像を処理し、第1の両眼画像を得て、
前記右目尻座標に基づいて前記両眼領域の画像を処理し、第2の両眼画像を得て、
前記各画像の第1の両眼画像と第2の両眼画像に対してオーバーラップ処理を行い、前記各画像の両眼画像を得る請求項10に記載の顔生体検出装置。
【請求項12】
前記顔生体検証モジュールが、
各前記顔画像に対応する顔色生体得点と前記画像シーケンスにおける各画像の瞳色生体得点に基づいて重み付け処理を行い、前記生体スコア値を取得する請求項10に記載の顔生体検出装置。
【請求項13】
前記色検証モジュールが、
前記画像シーケンスにおける各画像の顔キーポイントを決定し、
前記各画像の顔キーポイントに基づいて、前記各画像における左目の目尻座標と右目の目尻座標を決定し、
前記左目の目尻座標と右目の目尻座標に基づいて前記各画像に対してアフィン変換処理を行い、前記各画像の矯正後の顔領域画像を取得し、
前記画面で生成された色順序に従って、前記各画像の矯正後の顔領域画像のうちの2つずつに対して分割演算を行い、前記画像シーケンスのそれぞれの色に対応する差分図を取得する請求項9に記載の顔生体検出装置。
【請求項14】
前記色検証モジュールが、
前記画像シーケンスのそれぞれの色に対応する差分図に対して色分類を行い、対応するカラーシーケンスを取得し、前記対応するカラーシーケンスが前記カラーシーケンス検証コードと一致するか否かを検証する請求項9に記載の顔生体検出装置。
【請求項15】
前記取得モジュールが、サーバによって生成された前記カラーシーケンス検証コードを取得する請求項9から14のいずれか一項に記載の顔生体検出装置。
【請求項16】
顔生体検出の中で、前記ターゲットオブジェクトの顔を追跡し続け、前記ターゲットオブジェクトの頭部が途中でレンズから外れたか否かを検出する検出モジュールを備え、
前記取得モジュールが、前記ターゲットオブジェクトの頭部がレンズから途中で外れたことに応答し、前記カラーシーケンス検証コードを取得するステップを実行する請求項9から14のいずれか一項に記載の顔生体検出装置。
【請求項17】
少なくとも1つのプロセッサと、
該少なくとも1つのプロセッサと通信可能に接続されるメモリと、
を備え、
前記メモリには、前記少なくとも1つのプロセッサによって実行可能な命令が記憶され、前記命令が、前記少なくとも1つのプロセッサによって実行される場合、前記少なくとも1つのプロセッサが、請求項1から8のいずれか一項に記載の方法を実行できる電子機器。
【請求項18】
コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体であって、
前記コンピュータ命令が、コンピュータに請求項1から8のいずれか一項に記載の方法を実行させる非一時的なコンピュータ読み取り可能な記憶媒体。
【請求項19】
プロセッサによって実行される場合、請求項1から8のいずれか一項に記載の方法を実現するコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、人工知能技術分野に関し、具体的にコンピュータ視覚と深層学習技術の分野に関し、特に顔生体検出方法、装置、電子機器及び記憶媒体に関し、スマートシティやスマート金融のシーンに適用することができる。
【背景技術】
【0002】
顔生体検出は、1枚の画像が実写撮影であるか否かを区別するためのものであり、顔認識システムの基礎となる構成モジュールであり、顔認識システムの安全性を保証する。深層学習技術を用いる顔生体検出アルゴリズムは現在当該分野の主流の方法であり、従来のアルゴリズムに比べて精度が大幅に向上している。
【0003】
しかしながら、いくつかの適用シーンでは、深層学習に基づく顔生体アルゴリズムは汎化性が悪く、未知の攻撃サンプル及び方式効果の低下などの問題に対して、実際のアプリケーション性能に影響を与える。
【発明の概要】
【0004】
本開示は、スマートシティやスマート金融のシーンに適用される顔生体検出方法、装置、電子機器、及び記憶媒体を提供する。
【0005】
本開示の第1の態様によれば、カラーシーケンス検証コードを取得するステップと、
前記カラーシーケンス検証コードに含まれる色の順序に基づいて電子機器の画面が対応する色を順次生成するように制御し、前記電子機器のカメラが前記対応する色におけるターゲットオブジェクトの顔画像を収集するように制御し、異なる色における前記ターゲットオブジェクトの画像シーケンスを取得するステップと、異なる色における前記ターゲットオブジェクトの画像シーケンスに基づいて前記ターゲットオブジェクトに対して顔生体検証を行い、生体スコア値を取得するステップと、異なる色における前記ターゲットオブジェクトの画像シーケンスに基づいて前記画像シーケンスのそれぞれの色に対応する差分図を取得し、前記カラーシーケンス検証コードと前記画像シーケンスのそれぞれの色に対応する差分図に基づいて色検証を行うステップと、前記生体スコア値と色検証結果に基づいて、前記ターゲットオブジェクトの最終の顔生体検出結果を決定するステップと、を含む顔生体検出方法を提供する。
【0006】
本開示の第2の態様によれば、カラーシーケンス検証コードを取得する取得モジュールと、前記カラーシーケンス検証コードに含まれる色の順序に基づいて電子機器の画面が対応する色を順次生成するように制御し、前記電子機器のカメラが前記対応する色におけるターゲットオブジェクトの顔画像を収集するように制御し、異なる色における前記ターゲットオブジェクトの画像シーケンスを取得する制御モジュールと、異なる色における前記ターゲットオブジェクトの画像シーケンスに基づいて前記ターゲットオブジェクトに対して顔生体検証を行い、生体スコア値を取得する顔生体検証モジュールと、異なる色における前記ターゲットオブジェクトの画像シーケンスに基づいて前記画像シーケンスのそれぞれの色に対応する差分図を取得し、前記カラーシーケンス検証コードと前記画像シーケンスのそれぞれの色に対応する差分図に基づいて色検証を行う色検証モジュールと、前記生体スコア値と色検証結果に基づいて、前記ターゲットオブジェクトの最終の顔生体検出結果を決定する決定モジュールと、を備える顔生体検出装置を提供する。
【0007】
本開示の第3の態様によれば、電子機器を提供し、前記電子機器は、少なくとも1つのプロセッサと、前記少なくとも1つのプロセッサと通信可能に接続されるメモリと、を備え、前記メモリには、前記少なくとも1つのプロセッサによって実行可能な命令が記憶され、前記命令は、前記少なくとも1つのプロセッサによって実行される場合、前記少なくとも1つのプロセッサが前記第1の態様の実施例に記載の顔生体検出方法を実行できる。
【0008】
第4の態様によれば、コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体を提供し、前記コンピュータ命令は、コンピュータに第1の態様に記載の顔生体検出方法を実行させる。
【0009】
第5の態様によれば、コンピュータプログラムを提供し、前記コンピュータプログラムはプロセッサによって実行される場合、上記第1の態様の実施例に記載の顔生体検出方法を実現する。
【発明の効果】
【0010】
本開示の技術案によれば、入力された画像が収集画像と一致するか否かを判断する色検証コードを設定することにより、生体検出プロセス全体の安全性を向上させ、複雑なサンプル攻撃という状況を考慮し、生体検出アルゴリズムの精度と汎化性を大幅に向上させる。本開示の技術案は、任意の顔生体検出の深層学習ニューラルネットワークモデルに適用され、その性能の向上に役立つ。当該技術は、顔生体判断の性能を向上させることにより、顔認識分野の出勤、入退室管理、セキュリティ、金融支払いなど多くのアプリケーションに応用できる。
【0011】
なお、この部分に記載されている内容は、本開示の実施例の肝心または重要な特徴を特定することを意図しておらず、本開示の範囲を限定することも意図していないことを理解されたい。本開示の他の特徴は、以下の説明を通して容易に理解される。
【図面の簡単な説明】
【0012】
図面は、本技術案をよりよく理解するために使用され、本開示を限定するものではない。
図1】本開示の実施例によって提供される顔生体検出方法のフローチャートである。
図2】本開示の実施例に係る生体スコア値を取得するフローチャートである。
図3】本開示の実施例によって提供される別の顔生体検出方法のフローチャートである。
図4】本開示の実施例に係る顔生体検出方法のフローチャートである。
図5】本開示の実施例に係る電子機器のスクリーン表示画面の例を示す図である。
図6】本開示の実施例によって提供される顔生体検出装置のブロック構成図である。
図7】本開示の実施例によって提供される別の顔生体検出装置のブロック構成図である。
図8】本開示の実施例の顔生体検出方法を実現するための電子機器のブロック図である。
【発明を実施するための形態】
【0013】
以下、図面と併せて本開示の例示的な実施例を説明し、理解を容易にするためにその中には本開示の実施例の様々な詳細事項が含まれており、それらは単なる例示的なものと見なすべきである。したがって、当業者は、本開示の範囲及び精神から逸脱しない限り、ここで説明される実施例に対して様々な変更と修正を行うことができることを認識されたい。同様に、明確及び簡潔にするために、以下の説明では、周知の機能及び構造の説明を省略する。
【0014】
なお、顔生体検出は、1枚の画像が実写撮影であるか否かを区別するためのものであり、顔認識システムの基礎となる構成モジュールであり、顔認識システムの安全性を保証する。深層学習技術を用いる顔生体検出アルゴリズムは現在当該分野の主流の方法であり、従来のアルゴリズムに比べて精度が大幅に向上している。
【0015】
深層学習を用いる顔生体検出の主な方法は、畳み込みニューラルネットワークの生体判別、LSTM(Long Short-Term Memory、長短期記憶ネットワーク)に基づく生体判別方法などがある。このような方法はニューラルネットワークを用いて顔の特徴抽出と分類を行う。深層学習方法は安定性の高い顔の特徴を抽出することができ、従来の方法に比べて性能が大きく向上した。
【0016】
しかしながら、いくつかの適応シーンでは、深層学習に基づく顔生体アルゴリズムは汎化性が悪く、未知の攻撃サンプル及び方式効果の低下などの問題が実際のアプリケーション性能に影響を与える。本開示は、携帯電話/プリント写真の攻撃、3Dヘッドモジュールの攻撃などのように、攻撃サンプルが複雑且つ多様であるため、異なる材質の攻撃アイテムの反射率と生身の皮膚の反射率とが異なるため、本開示は、カラフルなカラー認証に基づく顔生体検出方法、装置、電子機器、及び記憶媒体を提案し、カラーシーケンスを認証コードとして、装置画面を利用して異なる色の光を顔に当てるとともに、装置のフロントカメラを介して異なる色での顔の画像を収集し、品質に合格したフレームを品質アルゴリズムでフィルタリングした後、顔の色差分アルゴリズムを用いて色の順序がカラーシーケンス検証コードに一致するか否かを検証して、これらの画像を畳み込みニューラルネットワークの入力として、最終的な生体検出結果を得る。以上により、本開示は、入力された画像が収集画像に一致するか否かを判断する色検証コードを設定することにより、生体検出プロセス全体の安全性を向上させ、複雑なサンプル攻撃という状況を考慮し、生体検出アルゴリズムの精度と汎化性を大幅に向上させる。
【0017】
以下、図面を参照しながら、本開示の実施例の顔生体検出方法、装置、電子機器及び記憶媒体を説明する。
【0018】
図1は、本開示の実施例によって提供される顔生体検出方法のフローチャートである。図1に示すように、当該顔生体検出方法は、以下のステップ101~105を含むことができる。
【0019】
ステップ101において、カラーシーケンス検証コードを取得する。
【0020】
例えば、身分認証生体検出要求を受信した場合、当該要求に基づいてカラーシーケンス検証コードを取得することができる。一例として、当該カラーシーケンス検証コードは当該要求に基づいてランダムに生成されたものであってもよい。
【0021】
ステップ102において、カラーシーケンス検証コードに含まれる色の順序に基づいて電子機器の画面が対応する色を順次生成するように制御し、電子機器のカメラが対応する色におけるターゲットオブジェクトの顔画像を収集するように制御し、異なる色におけるターゲットオブジェクトの画像シーケンスを取得する。
【0022】
例えば、カラーシーケンス検証コードが得られた後、カラーシーケンス検証コードに含まれる色の順序に従って、電子機器の画面を使用してターゲットオブジェクトに対応する色の光を当て、電子機器のフロントカメラを使用して異なる色が当てたターゲットオブジェクトの画像を収集し、これによって異なる色におけるターゲットオブジェクトの画像シーケンスを取得することができる。
【0023】
画像の命令を強化するために、本開示の実施例では、フロントカメラで画像を収集する時、フロントカメラの明るさを最も明るく調整することができる。または、本開示の別の実施例では、電子機器の画面を使用してターゲットオブジェクトに対応する色の光を当てる時、画面の明るさをターゲット明るさに調整することができる。
【0024】
なお、注入型攻撃を防止するために、本開示のいくつかの実施例では、サーバからカラーシーケンス検証コードを取得することができる。すなわち、サーバによって生成された前記カラーシーケンス検証コードを取得する。例えば、身分認証生体検出要求を受信する時、サーバにカラーシーケンス検証コードを要求することができる。サーバが当該要求を受信する時、カラーシーケンス検証コードをランダムに生成し、ランダムに生成されたカラーシーケンス検証コードを電子機器に送信することができる。そのため、サーバからランダムに生成されたカラーシーケンス検証コードを取得することにより、注入型攻撃電子機器が顔生体検出に影響を与える結果を防止することができ、注入型攻撃サンプル方式に対する顔生体検出アルゴリズムの防御効果を向上させることができる。
【0025】
ステップ103において、異なる色におけるターゲットオブジェクトの画像シーケンスに基づいてターゲットオブジェクトに対して顔生体検証を行い、生体スコア値を取得する。
【0026】
選択的に、異なる色におけるターゲットオブジェクトの画像シーケンスを取得した後、当該画像シーケンスを用いて顔生体検証を行い、生体スコア値を取得し、当該生体数値に基づいて当該ターゲットオブジェクトが実写撮影であるか否かを決定することができる。例えば、当該生体スコア値が一定の閾値以上である場合、当該ターゲットオブジェクトが実写撮影であると決定し、当該生体スコア値が当該閾値未満である場合、当該ターゲットオブジェクトが実写撮影ではないと決定し、すなわち当該ターゲットオブジェクトは生体ではない。
【0027】
ステップ104において、異なる色におけるターゲットオブジェクトの画像シーケンスに基づいて画像シーケンスのそれぞれの色に対応する差分図を取得し、カラーシーケンス検証コードと画像シーケンスのそれぞれの色に対応する差分図に基づいて色検証を行う。
【0028】
選択的に、顔色差分アルゴリズムを用いて画像シーケンスのそれぞれの色に対応する差分図を取得する。1つの可能な実現形態として、画像シーケンスにおける各画像の顔キーポイントを決定し、各画像の顔キーポイントに基づいて、各画像における左目の目尻座標と右目の目尻座標を決定する。左目の目尻座標と右目の目尻座標に基づいて各画像に対してアフィン変換処理を行い、各画像の矯正後の顔領域画像を取得する。画面によって生成された色順序に従って、各画像の矯正後の顔領域画像のうちの2つずつに対して分割演算を行い、画像シーケンスのそれぞれの色に対応する差分図を取得する。
【0029】
例えば、画像シーケンスにおける各画像に対してそれぞれ顔検出を行い、各画像における複数のキーポイントが得られ、例えば72のキーポイントが得られる。左、右目の目尻座標(x13,y13)(x34,y34)を用いて偏向角α、中心点Cを算出し、偏向角α、中心点Cに基づいてアフィン変換マトリクスMを算出し、アフィン変換Mによって各画像の矯正後の顔領域を取得し、28x128のスケールに縮め、これによって各画像の矯正後の顔領域画像を取得する。画面によって生成された色順序に従って、各画像の矯正後の顔領域画像のうちの2つずつに対して分割演算を行い、画像シーケンスのそれぞれの色に対応する差分図を取得する。例えば、画面によって生成された色順序が赤(R)、緑(G)、青(B)であると仮定すると、「青-赤=赤、赤-緑=緑、緑-青=青」の順序に従って、3枚の顔領域画像のうちの2つずつに対して分割演算を行い、画像シーケンスのそれぞれの色に対応する差分図を取得することができる。
【0030】
なお、顔領域の色は環境光や顔の肌色による影響が大きいため、顔領域の色に明らかな色ずれがあり、光を当てた後の顔領域を直接使用して色認識を行うと、認識効果が悪い。そのため、本開示では、隣接する2枚の光を当てた顔領域の差分図を使用すると、顔の肌色による顔領域の色ずれを良好に解消することができ、これにより、光を当てた後の正確な色認識を実現する。
【0031】
本開示の実施例では、画像シーケンスのそれぞれの色に対応する差分図を取得する時、画像シーケンスのそれぞれの色に対応する差分図に対して色分類を行い、対応するカラーシーケンスを取得し、対応するカラーシーケンスがカラーシーケンス検証コードと一致しているか否かを検証することができる。
【0032】
ステップ105において、生体スコア値と色検証結果に基づいて、ターゲットオブジェクトの最終の顔生体検出結果を決定する。
【0033】
選択的に、生体スコア値と色検証結果がそれぞれの条件を満たす場合、ターゲットオブジェクトが顔生体検出に合格したと決定し、すなわちターゲットオブジェクトが実写撮影であると決定する。生体スコア値及び/又は色検証結果がそれぞれの条件を満たさない場合、ターゲットオブジェクトが顔生体検出に合格していない決定し、すなわちターゲットオブジェクトが実写撮影ではないと決定する。例えば、生体スコア値が一定の閾値以上であり、色検証結果が検証に合格した場合、ターゲットオブジェクトが最終的に顔生体の検証に合格したと決定し、すなわちターゲットオブジェクトが実写撮影であると決定する。生体点数が一定の閾値以上であり、色検証結果が検証に合格していないことである場合、ターゲットオブジェクトが顔生体検出に合格していないと決定し、すなわちターゲットオブジェクトが実写撮影ではないと決定する。生体スコア値が一定の閾値未満であり、色検証結果が検証に合格していないことである場合、ターゲットオブジェクトが顔生体検出に合格していないと決定し、すなわちターゲットオブジェクトが実写撮影ではないと決定する。生体スコア値が一定の閾値未満であり、色検証結果が検証に合格していないことである場合、ターゲットオブジェクトが顔生体検出に合格していないと決定し、すなわちターゲットオブジェクトが実写撮影ではないと決定する。
【0034】
本開示の実施例に係る顔生体検出方法によれば、装置画面で異なる色の光を顔に当てるとともに、装置フロントカメラで異なる色での顔の画像を収集し、顔の色差分アルゴリズムで色順序がカラーシーケンス検証コードと一致するかどうかを検証し、これらの画像に対して顔生体検証を行い、色検証結果と顔生体検証結果に基づいてターゲットオブジェクトの最終の顔生体検出結果を決定し、生体検出プロセス全体の安全性を向上させ、複雑なサンプル攻撃という状況を考慮し、生体検出アルゴリズムの精度と汎化性を大幅に向上させる。未知の攻撃サンプル方式に対する顔生体検出アルゴリズムの防御効果を向上させる。顔生体検出は顔に関連する分野の基礎となる技術の1つであり、セキュリティ、通勤、金融、入退室管理などの多くのシーンに適用される。現在の多くの業務に広く応用されている。本開示を用いることで、顔生体検出技術の性能を向上させ、顔生体検出技術を基礎とする多くの応用の効果向上とユーザ体験に役立つ。業務プロジェクトのさらなる普及に有利である。
【0035】
なお、顔色生体検出と瞳色生体検出の両方から顔生体検証を実現することができる。すなわち、本開示のいくつかの実施例では、顔色生体検出と瞳色生体検出の両方から当該ターゲットオブジェクトが実写撮影であるか否かを検証することができる。1つの可能な実現形態として、図2に示すように、上記異なる色におけるターゲットオブジェクトの画像シーケンスに基づいてターゲットオブジェクトに対して顔生体検証を行い、生体スコア値を取得する実現形態は以下のステップ201~205を含むことができる。
【0036】
ステップ201において、異なる色におけるターゲットオブジェクトの画像シーケンスに対してそれぞれ顔位置合わせを行い、画像シーケンスにおける各画像のうちの顔画像を取得する。
【0037】
選択的に、画像シーケンスにおける各画像に対して画像前処理を行い、顔が含まれる画像を得て、検出モデルを介して顔を検出し、顔の大体の位置領域を得て、検出モデルは既存の顔検出モデルであり、顔位置を検出することができる。検出された顔領域に基づいて、顔キーポイント検出モデルを介して顔キーポイントを検出して顔のキーポイント座標値を得て、顔キーポイント検出モデルは既存のモデルであり、既存のモデルを呼び出し、検出された顔の画像を入力し、複数の顔キーポイント座標、例えば、それぞれは(x,y)…(x72,y72)である72の顔キーポイント座標を得る。顔のキーポイント座標値に基づいてターゲット顔に対して顔位置合わせを行って顔画像を得る。具体的には、複数の顔キーポイント座標に基づいてxとyの最大値と最小値xmin、xmax、ymin、ymaxを得て、最大値と最小値に基づいて1つの顔枠を決定することができ、当該人の顔枠を3倍拡大してから顔画像を切り取り、サイズ224x224pxに調整し、これによって画像シーケンスにおける各画像のうちの顔画像を取得する。
【0038】
ステップ202において、各枚の顔画像に対して顔色生体検出を行い、各枚の顔画像に対応する顔色生体得点を取得する。
【0039】
選択的に、得られた顔画像に対して画像正規化処理を行う。本実施例では、画像正規化処理は、画像における各ピクセルに対して順次正規化処理を行うものであり、正規化処理の方法は、各ピクセルのピクセル値から128を引いて256で除算し、各ピクセルのピクセル値を[-0.5,0.5]の間にする。正規化処理後の画像に対してランダムデータ増強処理を行う。増強処理後の画像を顔色生体検出モデルに入力し、各枚の顔画像に対応する顔色生体得点を得る。当該顔色生体検出モデルは、トレーニングされた畳み込みニューラルネットワークであってもよい。
【0040】
ステップ203において、異なる色におけるターゲットオブジェクトの画像シーケンスの両眼領域をそれぞれ切り取り、画像シーケンスにおける各画像のうちの両眼画像を取得する。
【0041】
画面に異なる色の光が表示される時、人の目の瞳に対応する色のスポットが表示され、瞳に表示されているスポットによってターゲットオブジェクトが生体であるかどうかを検証することができる。一例として、顔キーポイントにおける目角座標を用いて、各画像における両眼領域を処理して、各画像における両眼画像を得ることができる。
【0042】
いくつかの実施例では、画像シーケンスにおける各画像の顔キーポイントを決定し、画像シーケンスにおける各画像における両眼領域画像を切り取り、各画像の顔キーポイントに基づいて各枚の両眼領域画像における左目尻座標と右目尻座標を決定する。左目尻座標に基づいて両眼領域画像を処理し、第1の両眼画像を得て、右目尻座標に基づいて両眼領域画像を処理し、第2の両眼画像を得る。各画像の第1の両眼画像と第2の両眼画像に対してオーバーラップ処理を行い、各画像の両眼画像を得る。
【0043】
例えば、画像シーケンスのうちの1枚の画像を処理する例を挙げると、当該画像における顔キーポイントを決定した後、当該画像における両眼領域を切り取り、顔キーポイントに基づいて左目尻座標(x13,y13)(x17,y17)を探し出し、目角の距離Lと目の中心点Cを求め、アフィン変換マトリクスMを求め、アフィン変換に基づいて切り取った両眼領域画像を、目のみがある56x36というサイズ画像に変換し、当該画像の第1の両眼画像を得る。顔キーポイントに基づいて右目尻座標(x30,y30)(x34,y34)を探し出し、目角の距離L2と目の中心点Cを求め、アフィン変換マトリクスMを求め、アフィン変換Mに基づいて切り取った両眼領域画像アフィンを、目のみがある56x36というサイズの画像、すなわち当該画像の第2の両眼画像に変換する。第1の両眼画像と第2の両眼画像に対してオーバーラップ処理を行い、当該画像の両眼画像を得る。オーバーラップ処理とは、第1の両眼画像における色チャンネルと第2の両眼画像の色チャンネルとを加算することを指し、例えば、第1の両眼画像の色チャンネルは3つであり、第2の両眼画像の色チャンネルも3つであり、第1の両眼画像と第2の両眼画像に対してオーバーラップ処理を行って得られる画像の色チャンネルが6つになる。そのため、2枚の両眼画像を用いて瞳色生体検出を行うことにより、検出結果の精度をさらに向上させることができる。
【0044】
ステップ204において、画像シーケンスにおける各画像のうちの両眼画像に基づいて瞳色生体検出を行い、画像シーケンスにおける各画像の瞳色生体得点を取得する。
【0045】
選択的に、画像シーケンスにおける各画像のうちの両眼画像を瞳色生体検出モジュールに入力し、画像シーケンスにおける各画像の瞳色生体得点を取得する。瞳色生体検出モジュールはトレーニングされた畳み込みニューラルネットワークであってもよく、当該畳み込みニューラルネットワークは、5層の畳み込み層、3層の最大プール化層、及び1層の全接続層を含む。
【0046】
ステップ205において、各枚の顔画像に対応する顔色生体得点と画像シーケンスにおける各画像の瞳色生体得点に基づいて、生体スコア値を取得する。
【0047】
いくつかの実施例では、計算して各枚の顔画像に対応する顔色生体得点の平均数を求め、顔色生体平均得点を得て、計算して各画像の瞳色生体得点の平均数を求め、瞳色生体平均得点を得て、顔色生体平均得点と瞳色生体平均得点の和を前記生体得点値とする。
【0048】
他の実施例では、上記の色と瞳色の生体検出は、実際の応用における重み割当に基づいて最終的な生体スコア値を算出する。1つの可能な実現形態として、計算して各枚の顔画像に対応する顔色生体得点の平均を求め、顔色生体平均得点を得て、計算して各画像の瞳色生体得点の平均数を求め、瞳色生体平均得点を得て、色生体平均得点と瞳色生体平均得点に対して重み付け処理を行い、重み付け処理後に得られた数値を前記生体点値とすることができる。別の可能な実現形態として、各枚の顔画像に対応する顔色生体得点と画像シーケンスにおける各画像の瞳色生体得点に基づいて重み付け処理を行い、生体スコア値を取得することができる。
【0049】
ここからわかるように、本開示は、顔色生体検出と瞳色生体検出の両方から顔生体検証を実現することができ、これによって生体検出アルゴリズムの精度を大幅に向上させる。
【0050】
図3は、本開示の実施例によって提供される顔生体検出方法のフローチャートである。図3に示すように、当該顔生体検出方法は以下のステップ301~307を含むことができる。
【0051】
ステップ301において、ターゲットオブジェクトに対して顔検出を行う。
【0052】
選択的に、当該顔検出は、顔検出アルゴリズムと顔品質検証メカニズムを含む。例えば、顔検出アルゴリズムの実現形態は以下の通りである。カメラが補足した顔構造を分析判断し、人体の顔特徴閾値を満たすと検証に合格する。顔品質検証スキームの実現形態は以下の通りである。顔検出過程において顔の画像の品質を判断し、顔の大きさ、遮蔽の程度、ぼかしの程度などの次元からフィルタリングし、顔の画像の品質が高いほど、後続過程の信頼度が高くなる。品質の閾値は予め作成されてもよく、実際のプロセスで予め設定されたものに基づいて判断し、合格すると次のステップを行う。合格していない場合、「顔検出」に戻る。
【0053】
ステップ302において、ターゲットオブジェクトが顔検出に合格することに応答し、ターゲットオブジェクトに対して動作生体検証を行う。
【0054】
なお、動作生体検証とは、通過した前記ターゲットオブジェクトが指定されたランダムな動作を実行することによってそれが生体であるか否かが判断されることを指す。当該技術のインタラクションでは、ユーザの体験感と快適さを考慮し、プロセスでは、求められるユーザの協力が少ないまばたき、開口という2つの動作を選択して検証を強化することができる。なお、動作生体検証のステップは補助検証手段であり、カラフル生体の生体検証の一次スクリーニングを完成することに役立ち、結果の精度をある程度向上させることができる。同様に、動作生体の判断は、閾値に対して独立した制御を行ってもよく、例えば、まばたきの回数、或いは開口の幅などである。動作生体検証に合格すると、次のステップに入る。そうでなければ、動作生体検証を再び行う。
【0055】
ステップ303において、ターゲットオブジェクトが動作生体認証に合格することに応答し、カラーシーケンス検証コードを取得する。
【0056】
本開示の実施例では、ステップ303は、本開示の各実施におけるのいずれかの方式をそれぞれ用いて実現することができ、本開示の実施例はこれに対して限定するものではなく、説明も省略する。
【0057】
ステップ304において、カラーシーケンス検証コードに含まれる色の順序に基づいて電子機器の画面が対応する色を順次生成するように制御し、電子機器のカメラが対応する色におけるターゲットオブジェクトの顔画像を収集するように制御し、異なる色におけるターゲットオブジェクトの画像シーケンスを取得する。
【0058】
本開示の実施例では、ステップ304は、本開示の各実施例における任意の方式をそれぞれ用いて実現することができ、本開示の実施例はこれに対して限定するものではなく、説明も省略する。
【0059】
ステップ305において、異なる色におけるターゲットオブジェクトの画像シーケンスに基づいてターゲットオブジェクトに対して顔生体検証を行い、生体スコア値を取得する。
【0060】
本開示の実施例では、ステップ305は、本開示の各実施例における任意の方式をそれぞれ用いて実現することができ、本開示の実施例はこれに対して限定するものではなく、説明も省略する。
【0061】
ステップ306において、異なる色におけるターゲットオブジェクトの画像シーケンスに基づいて画像シーケンスのそれぞれの色に対応する差分図を取得し、カラーシーケンス検証コードと画像シーケンスのそれぞれの色に対応する差分図に基づいて色検証を行う。
【0062】
本開示の実施例では、ステップ306は、本開示の各実施例における任意の方式をそれぞれ用いて実現することができ、本開示の実施例はこれに対して限定するものではなく、説明も省略する。
【0063】
ステップ307において、生体スコア値と色検証結果に基づいて、ターゲットオブジェクトの最終の顔生体検出結果を決定する。
【0064】
本開示の実施例では、ステップ307は本開示の各実施例における任意の方式をそれぞれ用いて実現することができ、本開示の実施例はこれに対して限定するものではなく、説明も省略する。
【0065】
本開示の実施例の顔生体検出方法に基づいて、ターゲットオブジェクトに対して顔検出、動作生体検証を行うことにより、カラフル生体の生体検証の一次スクリーニングを完成することに役に立ち、顔生体検出アルゴリズムの結果の精度をさらに向上させることができる。
【0066】
当業者が本開示をより明確に理解できるように、以下、図4図5と併せて本開示の顔生体検出方法の実現形態に対して詳細に説明する。まず、本開示の実施例では、当該顔生体検出方法は、顔検出ステップ、動作生体検証ステップ、及びカラフル生体検証ステップを含むことができる。
【0067】
例えば、図4に示すように、顔検出ステップは、顔検出アルゴリズムと顔品質検証スキームを含む。顔検出の実現形態は以下の通りである。カメラが補足した顔構造を分析判断し、人体の顔特徴閾値を満たすと検証に合格する。顔品質検証スキームの実現形態は以下の通りである。上記のプロセスにおいて顔の画像の品質を判断し、顔の大きさ、遮蔽の程度、ぼかしの程度などの次元からフィルタリングし、顔の画像の品質が高いほど、後続の過程の信頼度が高くなる。品質の閾値は予め作成してもよく、実際のプロセスでは、予め設定されたものに基づいて判断し、合格すると次のステップを行う。合格していない場合、「顔検出」に戻る。
【0068】
動作生体検証ステップは以下のとおりである。合格したユーザが指定されたランダムな動作を実行することによって自身が生体であるか否かが判断される。当該技術のインタラクションでは、ユーザの体験感と快適さを考慮し、本実施例は、求められるユーザの協力が少ないまばたき、開口という2つの動作を選択して検証を強化する。当該ステップは補助検証手段であり、カラフル生体の生体検証の一次スクリーニングを完成することに役立つことができ、結果の精度をある程度向上させる。同様に、動作生体の判断は、閾値に対して独立した制御を行ってもよく、例えば、まばたきの回数、或いは開口の幅などである。動作生体検証に合格すると、次のステップに入る。そうでなければ、動作生体検証を再び行う。
【0069】
カラフル生体検証ステップは、カラーシーケンス検証コードを取得するステップと、カラーシーケンス検証コードに含まれる色を再生し、顔画像を収集するステップと、顔色と瞳色の生体検出と、色判断と、結果出力と、安全性と品質管理とを含む。以下、カラフル生体検証のステップを詳細に説明し、赤(Red)、緑(Green)、青(Blue)という3色を例として当該技術案を説明し、色を置き換えることができ、原理が一致する。
【0070】
1)カラーシーケンス検証コードを取得する。
【0071】
後続の画面表示のために、カラーシーケンス検証コードはサーバランダムに生成されたカラーシーケンスであってもよく、ランダムのシーケンスは、検出されたユーザがリアルタイムで検証されることを保証することができる。
【0072】
2)カラーシーケンス検証コードに含まれる色を再生し、顔画像を収集する。
【0073】
まず、電子機器を用いて顔/攻撃サンプルに3つの異なる色の光を当て、その後、電子機器のフロントカメラを用いて3つの色が顔/攻撃サンプルに当った画像を収集し、3枚の画像を1組として、一連の顔を含む画像を得る。例えば、図5に示すように、3つの異なる色の光の具体的な方法は、電子機器の画面に3枚の画像を表示し、色はそれぞれ赤(R)、緑(G)、青(B)に分けられ、当該3枚の画像が表示される時、カメラは顔画像を収集する。
【0074】
選択的に、各色の照明プロセスが約1.5秒である場合、収集は最適フレームというポリシーに従い、すなわち、連続ビデオストリームの中から、後続のステップの入力として最適品質の顔画像を選択し、ここで品質は上記の品質判断規則に従う。
【0075】
3)顔色と瞳色の生体検出
【0076】
ステップ2)の中から得られた3色の顔画像に対して生体検出を行い、ここでは顔色と瞳色の生体検出を含み、2つの検出アルゴリズムは生体得点を出力する。
【0077】
3.1)顔色生体検出アルゴリズム
【0078】
上記ステップにおける3色の顔画像を取得した後、本開示は、顔に含まれる72のキーポイントをそれぞれ(x,y)…(x72,y72)として定義する。
【0079】
各画像に対して画像前処理を行い、まず顔が含まれる画像を1枚取得し、検出モデルを介して顔を検出し、顔の大体の位置領域を得る。検出モデルは既存の顔検出モデルであり、顔位置を検出することができる。次に、検出された顔領域に基づいて、顔キーポイント検出モデルを介して顔キーポイントを検出して顔のキーポイント座標値を得る。顔キーポイント検出モデルは既存のモデルであり、既存のモデルを呼び出し、検出された顔の画像を入力し、72の顔キーポイント座標を得て、それぞれは(x,y) … (x72,y72)である。その後、顔のキーポイント座標値に基づいてターゲット顔に対して顔位置合わせを行って顔画像を得る。具体的には、72の顔キーポイント座標に基づいてxとyの最大値と最小値xmin、xmax、ymin、ymaxを得て、最大値と最小値に基づいて1つの顔枠を決定することができ、当該人の顔枠を3倍拡大してから顔画像を切り取り、サイズ224x224pxに調整する。
【0080】
得られた顔が含まれる画像領域に対して画像正規化処理を行う。本実施例では、画像正規化処理は、画像における各ピクセルに対して順次正規化処理を行うものであり、正規化処理の方法は、各ピクセルのピクセル値から128を引いて256で除算し、各ピクセルのピクセル値を[-0.5,0.5]の間にする。正規化処理後の画像に対してランダムデータ増強処理を行う。増強処理後の画像を顔色生体検出モデルに入力し、各枚の顔画像に対応する顔色生体得点を得る。
【0081】
3.2)瞳色生体検出アルゴリズム
【0082】
画面にR/G/Bという3色の光が表示されている場合、人の目の瞳に対応する色のスポットが表示され、瞳に表示されているスポットにより、当てられた光の色を認識することができ、具体的には、上記から72のキーポイントを得た後、両眼領域画像を切り取り、人の顔のキーポイントに基づいて左目尻座標(x13,y13)(x17,y17)を探し出し、目角の距離Lと目の中心点Cを求め、アフィン変換マトリクスMを求め、アフィン変換Mに基づいて原図に対して変換を行って、目のみがある56x36というサイズの画像に変換する。顔キーポイントに基づいて右目尻座標(x30,y30)(x34,y34)を探し出し、目角の距離L2と目の中心点Cを求め、アフィン変換マトリクスMを求め、アフィン変換Mに基づいて原図に対してアフィン変換を行って、目のみがある56x36というサイズ画像に変換する。両眼画像をオーバーラップして瞳色生体検出モデルに送り、各両眼画像の瞳色生体得点を得る。
【0083】
各枚の顔画像に対応する顔色生体得点と各枚の両眼画像の瞳色生体得点に基づいて、実際の運用における重み割り当てに基づいて重み付け処理を行い、最終的な生体得点値を得る。
【0084】
4)色判断と結果出力
【0085】
まず、顔検出と距離判断を行い、顔が存在し且つ顔と端末の光を当てるスクリーンとの距離が要件を満たす場合、サーバはカラーシーケンス検証コードを電子機器に送信する。電子機器は、カラーシーケンス検証コードの情報に基づいて光を当てる。光を当てるデータから、画像品質の要求を満たし且つそれぞれ赤(R)、緑(G)、青(B)の光を当てる画像をそれぞれ1枚選別して1組のデータとし、ここで、3枚の画像の色は、赤、緑、青という3色の任意の配列であってもよく、当該組の画像、及び3枚の画像の色順序入力モデルを使用して、当該組の画像の色順序が入力モデルの色順序であるか否かを検証し、色順序が一致すると検証された場合、色認識モジュールに合格し、そうでなければ、色検証に失敗する。具体的な実現ステップは以下の通りである。
【0086】
4.1)得られた3枚の画像に対してそれぞれ顔検出を行い、対応する72のキーポイントを得る。
【0087】
4.2)左、右目の目尻座標(x13,y13) (x34,y34)を用いて偏向角α、中心点Cを算出する。
【0088】
4.3)偏向角α、中心点Cに基づいてアフィン変換マトリクスMを算出し、アフィン変換によって3枚の画像矯正後の顔領域を取得し、28x128のスケールに縮める。
【0089】
4.4)「青-赤=赤、赤-緑=緑、緑-青=青」の順序に従って3枚の画面のそれぞれの色に対応する差分図を取得する。
【0090】
4.5)畳み込みニューラルネットワークを用いて差分図の特徴を抽出して色分類を行う。ResNet50を畳み込みニューラルネットワークのbackboneとして用いて、顔分割図の色特徴を抽出し、最後の一枚の特徴図においてグローバル平均プール化操作を行った後、全接続層とSoftmax層を経て顔差分図の色分類を行う。
【0091】
3枚の顔差分図を差分値計算モデルに入力して色認識を行う。ここで色は未知であり、X/Y/Zにすると、色判断は以下のようになる。
【0092】
4.5.1)3種類の色の信頼度がいずれも閾値N以上である場合、色の比較を行い、2種類の色または3種類の色が一致する場合、最終的に色が一致すると判断する。そうでなければ一致しない。
【0093】
4.5.2)2種類の色の信頼度がN以上である場合、色の比較を行い。2種類の色が一致する場合、最終的に色が一致すると判断する。そうでなければ一致しない。
【0094】
4.5.3)1種類の色の信頼度がN以上である場合、一致しないと直接判断する(Nは信頼度閾値であり、実際の状況に応じて調整することができる)。
【0095】
以上のステップで得られた色判断は、今回の検出に合格するか否かを判定する基準として出力される。色が一致すれば合格に相当し、生体スコア値が一定の閾値以上であるか否かを判断し、生体スコア値が一定の閾値以上である場合、当該ターゲットオブジェクトの顔生体検出が検証に合格すると決定する。色が一致せず、及び/又は生体スコア値が一定の閾値以下である場合、当該ターゲットオブジェクトの顔生体検出が検証に失敗すると決定し、ターゲットオブジェクトは再検証を選択することができる。
【0096】
5)安全性と品質管理
【0097】
生体検出の全プロセスでは、人の顔を持続的に追跡し、品質判断を行うことができる。ターゲットオブジェクトの顔画像が途中でずれる場合(顔が変わるリスクがある可能性がある)、全プロセスを再び行うと判断する。プロセスでは、品質が予め設定された閾値より低い場合、前のステップに調整してプロセスを継続する。
【0098】
以上のようにして、本開示は、完全なカラフル色検証に基づく顔生体検出の実現案を提案し、異なる材質の攻撃道具の反射率及び生体皮膚の反射率が異なるという予備知識を用いて、カラフル色検証に基づく顔生体検出方法を提案し、デバイス画面を用いて異なる明るさの光を顔に当てるとともに、デバイスフロントカメラは異なる光強度での顔の画像を収集してから、これらの画像を畳み込みニューラルネットワークの入力として、最終的な生体検出結果を得る。本開示は複雑なサンプル攻撃の状況を考慮し、生体検出アルゴリズムの精度と汎化性を大幅に向上させる。
【0099】
図6は本開示の実施例によって提供される顔生体検出装置のブロック構成図である。図6に示すように、当該顔生体検出装置は、取得モジュール601、制御モジュール602、顔生体検証モジュール603、色検証モジュール604と決定モジュール605を備えることができる。
【0100】
取得モジュール601は、カラーシーケンス検証コードを取得する。1つの可能な実現形態では、取得モジュール601はサーバによって生成されたカラーシーケンス検証コードを取得する。
【0101】
制御モジュール602は、カラーシーケンス検証コードに含まれる色の順序に基づいて電子機器の画面が対応する色を順次生成するように制御し、電子機器のカメラが対応する色におけるターゲットオブジェクトの顔画像を収集するように制御し、異なる色におけるターゲットオブジェクトの画像シーケンスを取得する。
【0102】
顔生体検証モジュール603は、異なる色におけるターゲットオブジェクトの画像シーケンスに基づいてターゲットオブジェクトに対して顔生体検証を行い、生体スコア値を取得する。
【0103】
1つの可能な実現形態では、顔生体検証モジュール603は、具体的に、各枚の顔画像に対して顔色生体検出を行い、各枚の顔画像に対応する顔色生体得点を取得し、異なる色におけるターゲットオブジェクトの画像シーケンスの両眼領域をそれぞれ切り取り、画像シーケンスにおける各画像のうちの両眼画像を取得し、画像シーケンスにおける各画像のうちの両眼画像に基づいて瞳色生体検出を行い、画像シーケンスにおける各画像の瞳色生体得点を取得し、各枚の顔画像に対応する顔色生体得点と画像シーケンスにおける各画像の瞳色生体得点に基づいて、生体スコア値を取得する。
【0104】
選択的に、顔生体検証モジュール603は、異なる色におけるターゲットオブジェクトの画像シーケンスの両眼領域をそれぞれ切り取り、画像シーケンスにおける各画像のうちの両眼画像を取得する実現案は以下の通りである。画像シーケンスにおける各画像の顔キーポイントを決定し、画像シーケンスにおける各画像における両眼領域画像を切り取り、各画像の顔キーポイントに基づいて各枚の両眼領域画像における左目尻座標と右目尻座標を決定し、左目尻座標に基づいて両眼領域画像を処理し、第1の両眼画像を得て、右目尻座標に基づいて両眼領域画像を処理し、第2の両眼画像を得て、各画像の第1の両眼画像と第2の両眼画像に対してオーバーラップ処理を行い、各画像の両眼画像を得る。
【0105】
選択的に、顔生体検証モジュール603は、各枚の顔画像に対応する顔色生体得点と画像シーケンスにおける各画像の瞳色生体得点に基づいて、生体スコア値を取得する実現案は以下の通りである。各枚の顔画像に対応する顔色生体得点と画像シーケンスにおける各画像の瞳色生体得点に基づいて重み付け処理を行い、生体スコア値を取得する。
【0106】
色検証モジュール604は、異なる色におけるターゲットオブジェクトの画像シーケンスに基づいて画像シーケンスのそれぞれの色に対応する差分図を取得し、カラーシーケンス検証コードと画像シーケンスのそれぞれの色に対応する差分図に基づいて色検証を行う。
【0107】
1つの可能な実現形態では、色検証モジュール604は、画像シーケンスにおける各画像の顔キーポイントを決定し、各画像の顔キーポイントに基づいて、各画像における左目の目尻座標と右目の目尻座標を決定し、左目の目尻座標と右目の目尻座標に基づいて各画像に対してアフィン変換処理を行い、各画像の矯正後の顔領域画像を取得し、画面によって生成された色順序に従って、各画像の矯正後の顔領域画像のうちの2つずつに対して分割演算を行い、画像シーケンスのそれぞれの色に対応する差分図を取得し、画像シーケンスのそれぞれの色に対応する差分図に対して色分類を行い、対応するカラーシーケンスを取得し、対応するカラーシーケンスがカラーシーケンス検証コードと一致しているか否かを検証する。
【0108】
決定モジュール605は、生体スコア値と色検証結果に基づいて、ターゲットオブジェクトの最終の顔生体検出結果を決定する。
【0109】
いくつかの実施例では、図7に示すように、当該顔生体検出装置は、検出モジュール706をさらに備えることができる。検出モジュール706は、顔生体検出の中で、ターゲットオブジェクトの顔を追跡し続け、ターゲットオブジェクトの頭部が途中でレンズからずれるか否かを検出する。取得モジュール701は、さらにターゲットオブジェクトの頭部が途中でレンズからずれることに応答し、前記カラーシーケンス検証コードを取得するステップを実行する。図7の701~705と図6の601~605とは同じ機能と構造を有する。
【0110】
上記の実施例の装置について、各モジュールが操作を実行する具体的な方式は、当該方法に関する実施例で詳細に説明し、ここでは詳細に説明しない。
【0111】
本開示の実施例の顔生体検出装置によれば、装置画面で異なる色の光を顔に当てるとともに、装置フロントカメラで異なる色での顔の画像を収集し、顔の色差分アルゴリズムで色順がカラーシーケンス検証コードと一致するかどうかを検証し、これらの画像に対して顔生体検証を行い、色検証結果と顔生体検証結果に基づいてターゲットオブジェクトの最終の顔生体検出結果を決定し、生体検出プロセス全体の安全性を向上させ、複雑なサンプル攻撃という状況を考慮し、生体検出アルゴリズムの精度と汎化性を大幅に向上させる。未知の攻撃サンプル方式に対する顔生体検出アルゴリズムの防御効果を向上させる。顔生体検出は顔関連分野の基礎技術の1つであり、セキュリティ、通勤、金融、入退室管理などの多くのシーンに適用される。現在の多くの業務に広く応用されている。本開示を用いることで、顔生体検出技術の性能を向上させ、顔生体検出技術を基礎とする多くの応用の効果向上とユーザ体験に役立つ。業務プロジェクトのさらなる普及に有利である。
【0112】
本開示の実施例によれば、本開示は、電子機器、読み取り可能な記憶媒体、及びコンピュータプログラムをさらに提供する。
【0113】
図8に示すように、本開示の実施例に係る顔生体検出方法を実現するための電子機器のブロック図である。電子機器は、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、メインフレームコンピュータ、及び他の適切なコンピュータなどの様々な形態のデジタルコンピュータを表すことを目的とする。電子機器は、携帯情報端末、携帯電話、スマートフォン、ウェアラブルデバイス、及び他の同様のコンピューティングデバイスなどの様々な形態のモバイルデバイスを表すこともできる。本明細書で示される部品、それらの接続と関係、及びそれらの機能は、単なる例であり、本明細書の説明及び/又は要求される本開示の実現を制限することを意図したものではない。
【0114】
図8示すように、当該電子機器は、1つ又は複数のプロセッサ801と、メモリ802と、高速インターフェース及び低速インターフェースを備える各コンポーネントを接続するためのインターフェースと、を備える。各コンポーネントは、異なるバスで相互に接続され、共通のマザーボードに取り付けられてもよいし、又は必要に応じて他の方式で取り付けられてもよい。プロセッサは、外部入力/出力装置(インターフェースに結合されたディスプレイデバイスなど)にGUIの図形情報をディスプレイするためにメモリに記憶されている命令を含む、電子機器内に実行される命令を処理することができる。他の実施形態では、必要であれば、複数のプロセッサ及び/又は複数のバスを、複数のメモリとともに使用することができる。同様に、複数の電子機器を接続することができ、各電子機器は、必要な操作(例えば、サーバアレイ、ブレードサーバ、又はマルチプロセッサシステムとする)の一部を提供する。図8では、1つのプロセッサ801を例とする。
【0115】
メモリ802は、本開示により提供される非一時的なコンピュータ読み取り可能な記憶媒体である。前記メモリには、少なくとも1つのプロセッサによって実行される命令を記憶して、前記少なくとも1つのプロセッサが本開示によって提供される顔生体検出方法を実行するようにする。本開示の非一時的なコンピュータ読み取り可能な記憶媒体は、コンピュータに本開示によって提供される顔生体検出方法を実行させるためのコンピュータ命令を記憶する。
【0116】
メモリ802は、非一時的なコンピュータ読み取り可能な記憶媒体として、非一時的なソフトウェアプログラム、非一時的なコンピュータ実行可能なプログラム及びモジュールを記憶するために使用されることができ、例えば本開示の実施例においける顔生体検出方法に対応するプログラム命令/モジュールである。プロセッサ801は、メモリ802に記憶されている非一時的なソフトウェアプログラム、命令及びモジュールを実行することにより、サーバの様々な機能アプリケーション及びデータ処理を実行し、すなわち上記の方法の実施例における顔生体検出方法を実現する。
【0117】
メモリ802は、記憶プログラム領域及び記憶データ領域を含むことができる。記憶プログラム領域は、オペレーティングシステム、少なくとも1つの機能に必要なアプリケーションを記憶することができる。記憶データ領域は、顔生体検出の電子機器の使用による作成されたデータなどを記憶することができる。また、メモリ802は、高速ランダムアクセスメモリを備えることができ、少なくとも1つの磁気ディスクストレージデバイス、フラッシュメモリデバイス、又は他の非一時的なソリッドステートストレージデバイスなどの非一時的なメモリをさらに備えることができる。いくつかの実施例では、メモリ802は、プロセッサ801に対して遠隔に設定されたメモリを選択的に備えることができ、これらの遠隔メモリは、ネットワークを介して顔生体検出の電子機器に接続されることができる。上記ネットワークの例は、インターネット、イントラネット、ローカルエリアネットワーク、モバイル通信ネットワーク及びそれらの組み合わせを含むが、これらに限定されない。
【0118】
顔生体検出方法を実現するための電子機器は、入力装置803と出力装置804とをさらに備えることができる。プロセッサ801、メモリ802、入力装置803、及び出力装置804は、バスまたは他の方式で接続することができ、図8では、バスを介して接続することを例に挙げる。
【0119】
入力装置803は、入力された数字又は文字情報を受信することができ、及び顔生体検出の電子機器のユーザ設定及び機能制御に関するキー信号入力を生成することができ、例えば、タッチスクリーン、キーパッド、マウス、トラックパッド、タッチパッド、指示棒、1つ又は複数のマウスボタン、トラックボール、ジョイスティックなどの入力装置である。出力装置804は、ディスプレイデバイス、補助照明デバイス(例えば、LED)、及び触覚フィードバックデバイス(例えば、振動モータ)などを備えることができる。当該ディスプレイデバイスは、液晶ディスプレイ(LCD)、発光ダイオード(LED)ディスプレイ、及びプラズマディスプレイを備えることができるが、これらに限定されない。いくつかの実施形態では、ディスプレイデバイスは、タッチスクリーンであってもよい。
【0120】
本明細書で説明されるシステムと技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、特定用途向けASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はそれらの組み合わせで実現することができる。これらの様々な実施形態は、1つ又は複数のコンピュータプログラムで実施されることを含むことができ、当該1つ又は複数のコンピュータプログラムは、少なくとも1つのプログラマブルプロセッサを備えるプログラム可能なシステムで実行及び/又は解釈されることができ、当該プログラマブルプロセッサは、特定用途向け又は汎用プログラマブルプロセッサであってもよく、ストレージシステム、少なくとも1つの入力装置、及び少なくとも1つの出力装置からデータ及び命令を受信し、データ及び命令を当該ストレージシステム、当該少なくとも1つの入力装置、及び当該少なくとも1つの出力装置に伝送することができる。
【0121】
これらのコンピューティングプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、又はコードとも呼ばれる)は、プログラマブルプロセッサの機械命令、高度のプロセス及び/又は対象指向プログラミング言語、及び/又はアセンブリ/機械言語でこれらのコンピューティングプログラムを実施することを含む。本明細書で使用されるように、「機械読み取り可能な媒体」及び「コンピュータ読み取り可能な媒体」という用語は、機械命令及び/又はデータをプログラマブルプロセッサに提供するために使用される任意のコンピュータプログラム製品、機器、及び/又は装置(例えば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(PLD))を指し、機械読み取り可能な信号である機械命令を受信する機械読み取り可能な媒体を含む。「機械読み取り可能な信号」という用語は、機械命令及び/又はデータをプログラマブルプロセッサに提供するための任意の信号を指す。
【0122】
ユーザとのインタラクションを提供するために、ここで説明されているシステム及び技術をコンピュータ上で実施することができ、当該コンピュータは、ユーザに情報を表示するためのディスプレイ装置(例えば、CRT(陰極線管)又はLCD(液晶ディスプレイ)モニタ)と、キーボード及びポインティングデバイス(例えば、マウス又はトラックボール)とを有し、ユーザは、当該キーボード及び当該ポインティングデバイスによって入力をコンピュータに提供することができる。他の種類の装置も、ユーザとのインタラクションを提供することができ、例えば、ユーザに提供されるフィードバックは、任意の形式のセンシングフィードバック(例えば、視覚フィードバック、聴覚フィードバック、又は触覚フィードバック)であってもよく、任意の形式(音響入力と、音声入力、または、触覚入力とを含む)でユーザからの入力を受信することができる。
【0123】
ここで説明されるシステム及び技術は、バックエンドコンポーネントを備えるコンピューティングシステム(例えば、データサーバとする)、又はミドルウェアコンポーネントを備えるコンピューティングシステム(例えば、アプリケーションサーバ)、又はフロントエンドコンポーネントを備えるコンピューティングシステム(例えば、グラフィカルユーザインタフェース又はウェブブラウザを有するユーザコンピュータ、ユーザは、当該グラフィカルユーザインタフェース又は当該ウェブブラウザによってここで説明されるシステム及び技術の実施方式とインタラクションできる)、又はこのようなバックエンドコンポーネントと、ミドルウェアコンポーネントと、フロントエンドコンポーネントのいずれかの組み合わせを備えるコンピューティングシステムで実行することができる。いずれかの形態又は媒体のデジタルデータ通信(例えば、通信ネットワーク)によってシステムのコンポーネントを相互に接続することができる。通信ネットワークの例は、ローカルエリアネットワーク(LAN)と、ワイドエリアネットワーク(WAN)と、インターネットと、ブロックチェーンネットワークを含む。
【0124】
コンピュータシステムは、クライアントとサーバを備えることができる。クライアントとサーバは、一般に、互いに離れており、通常に通信ネットワークを介してインタラクションする。対応するコンピュータ上で実行され、互いにクライアント-サーバ関係を有するコンピュータプログラムによってクライアントとサーバとの関係が生成される。サーバはクラウドサーバであってもよい、クラウドコンピューティングサーバまたはクラウドホストとも呼ばれ、クラウドコンピューティングサービスシステムにおける1つのホスト製品であり、従来の物理ホストとVPSサービス(「Virtual Private Server」、または「VPS」と略す)に存在する管理の難しさ、業務拡張性の弱い欠陥を解決した。サーバは分散システムのサーバであってもよいし、ブロックチェーンを組み込んだサーバであってもよい。
【0125】
なお、上記に示される様々な形式のフローを使用して、ステップを並べ替え、追加、又は削除することができることを理解されたい。例えば、本開示に記載されている各ステップは、並列に実行されてもよいし、順次実行されてもよいし、異なる順序で実行されてもよいが、本開示で開示されている技術案の所望の結果を実現することができれば、本明細書では限定されない。
【0126】
上記具体的な実施形態は、本開示の保護範囲を制限するものではない。当業者は、設計要件と他の要因に応じて、様々な修正、組み合わせ、サブコンビネーション、及び代替を行うことができることを理解されたい。任意の本開示の精神と原則内で行われる修正、同等の置換、及び改善などは、いずれも本開示の保護範囲内に含まれるべきである。
図1
図2
図3
図4
図5
図6
図7
図8