KR20200116138A - 안면 인식을 위한 방법 및 시스템 - Google Patents

안면 인식을 위한 방법 및 시스템 Download PDF

Info

Publication number
KR20200116138A
KR20200116138A KR1020207024851A KR20207024851A KR20200116138A KR 20200116138 A KR20200116138 A KR 20200116138A KR 1020207024851 A KR1020207024851 A KR 1020207024851A KR 20207024851 A KR20207024851 A KR 20207024851A KR 20200116138 A KR20200116138 A KR 20200116138A
Authority
KR
South Korea
Prior art keywords
facial
image
user
face
landmark points
Prior art date
Application number
KR1020207024851A
Other languages
English (en)
Inventor
아비셰크 콜라군다
샤오롱 왕
세라페틴 타쉬츠
다웨이 리
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Publication of KR20200116138A publication Critical patent/KR20200116138A/ko

Links

Images

Classifications

    • G06K9/00201
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • G06K9/00268
    • G06K9/00288
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • G06V20/647Three-dimensional objects by matching two-dimensional images to three-dimensional objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • G06V40/171Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/40Spoof detection, e.g. liveness detection
    • G06V40/45Detection of the body part being alive
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Artificial Intelligence (AREA)
  • Image Analysis (AREA)
  • Collating Specific Patterns (AREA)
  • Studio Devices (AREA)

Abstract

일 실시 예는 안면 라이브니스 검출(face liveness detection)을 위한 방법을 제공한다. 상기 방법은 사용자의 안면을 포함하는 제1 이미지를 수신하는 과정, 상기 제1 이미지를 기반으로 하나 혹은 그 이상의 2차원(two-dimensional: 2D) 안면 랜드마크 포인트(facial landmark point)들을 결정하는 과정, 및 상기 하나 혹은 그 이상의 결정된 2D 안면 랜드마크 포인트들과 상기 사용자에 대한 3차원(three-dimensional: 3D) 안면 모델에서의 하나 혹은 그 이상의 상응하는 3D 안면 랜드마크 포인트들을 기반으로 상기 제1 이미지에서 상기 안면의 3D 포즈(pose)를 결정하는 과정을 포함한다. 상기 방법은 상기 하나 혹은 그 이상의 결정된 2D 안면 랜드마크 포인트들과 상기 3D 포즈를 기반으로 원근 프로젝트되는(perspectively projected) 하나 혹은 그 이상의 상응하는 3D 안면 랜드마크 포인트들간의 호모그래피(homography) 매핑을 결정하는 과정, 및 상기 호모그래피 매핑을 기반으로 상기 제1 이미지에서 상기 안면의 라이브니스를 결정하는 과정을 더 포함한다.

Description

안면 인식을 위한 방법 및 시스템
하나 혹은 그 이상의 실시 예들은 안면 인식에 관한 것으로서, 특히 안면 인식 시스템을 통해 프리젠테이션 공격(presentation attack)을 검출하기 위한 방법 및 시스템에 관한 것이다.
안면의 인식(facial recognition)(즉, 안면 인식(face recognition))은 일반적으로 라이브 캡쳐(live capture) 또는 디지털 이미지 데이터를 사용자에 대한 하나 혹은 그 이상의 저장된 기록들과 비교함으로써 상기 사용자를 식별하는 방법을 나타낸다. 안면 인식은 디바이스들, 위치들 및 서비스들에 대한 사용자 억세스를 제어하는 일반적인 방식이 되어 가고 있는 중이다.
일 예로, 안면 인식 시스템들은 우리의 일상 생활들에서 생체 인증(biometric authentication)에 광범위하게 사용되고 있지만, 상기 안면 인식 시스템들은 다양한 타입들의 스푸핑 공격(spoofing attack)들에 매우 취약하다.
일 실시 예는 안면 라이브니스 검출(face liveness detection)을 위한 방법을 제공한다. 상기 방법은 사용자의 안면을 포함하는 제1 이미지를 수신하는 과정, 상기 제1 이미지를 기반으로 하나 혹은 그 이상의 2차원(two-dimensional: 2D) 안면 랜드마크 포인트(facial landmark point)들을 결정하는 과정, 및 상기 하나 혹은 그 이상의 결정된 2D 안면 랜드마크 포인트들과 상기 사용자에 대한 3차원(three-dimensional: 3D) 안면 모델에서의 하나 혹은 그 이상의 대응하는 3D 안면 랜드마크 포인트들을 기반으로 상기 제1 이미지에서 상기 안면의 3D 포즈(pose)를 결정하는 과정을 포함한다. 상기 방법은 상기 하나 혹은 그 이상의 결정된 2D 안면 랜드마크 포인트들과 상기 3D 포즈를 기반으로 원근 프로젝트되는(perspectively projected) 하나 혹은 그 이상의 대응하는 3D 안면 랜드마크 포인트들간의 호모그래피(homography) 매핑을 결정하는 과정, 및 상기 호모그래피 매핑을 기반으로 상기 제1 이미지에서 상기 안면의 라이브니스를 결정하는 과정을 더 포함한다.
상기 하나 혹은 그 이상의 실시 예들의 이런 및 다른 특징들과, 측면들과 이점들은 하기의 설명과, 첨부 청구항들 및 첨부 도면들을 참조하여 이해되게 될 것이다.
도 1은 하나 혹은 그 이상의 실시 예들에서, 안면 인식 시스템을 구현하기 위한 예제 컴퓨팅 아키텍쳐를 도시하고 있다;
도 2는 하나 혹은 그 이상의 실시 예들에서, 상기 안면 인식 시스템을 구체적으로 도시하고 있다;
도 3은 하나 혹은 그 이상의 실시 예들에서, 사용자 등록 시스템의 하나 혹은 그 이상의 컴포넌트(component)들을 도시하고 있다;
도 4는 하나 혹은 그 이상의 실시 예들에서, 안면 라이브니스 검출(face liveness detection) 시스템의 하나 혹은 그 이상의 컴포넌트들을 도시하고 있다;
도 5는 하나 혹은 그 이상의 실시 예들에서, 상기 안면 라이브니스 검출 시스템에 의해 수행되는 안면 라이브니스 검출 프로세스를 도시하고 있다;
도 6은 하나 혹은 그 이상의 실시 예들에서, 안면 라이브니스 검출을 수행하여 프리젠테이션 공격(presentation attack)을 검출하는 예제 프로세스의 플로우차트를 도시하고 있다; 및
도 7은 상기 개시되어 있는 실시 예들을 구현하는데 유용한 컴퓨터 시스템을 포함하는 정보 프로세싱 시스템을 도시하고 있는 예제 하이-레벨 블록 다이아그램이다.
하기의 설명은 하나 혹은 그 이상의 실시 예들의 일반적인 원리들을 설명하기 위한 목적들을 위해 이루어지며, 여기에서 청구되는 발명의 컨셉들을 제한하는 것을 의미하지는 않는다. 또한, 여기에서 설명되는 특정 특징들은 상기 다양한 가능한 결합들 및 치환들 각각에서 설명되는 다른 특징들과 결합되어 사용될 수 있다. 여기에서 특별하게 정의되지 않는 한, 모든 용어들은 해당 기술 분야의 당업자들에 의해 이해되는 의미들 및/혹은 사전들, 논문, 등에서 정의되어 있는 바와 같은 의미들뿐만 아니라 상세한 설명으로부터 암시되는 의미들을 포함하는 주어진 가장 넓은 가능한 해석이 될 것이다.
본 명세서에서, 용어 "프리젠테이션 공격(presentation attack)"은 일반적으로 안면 인식 시스템에 의해 사용되는 이미지 센서(일 예로, 카메라)로 사용자의 안면의 2차원(two-dimensional: 2D) 이미지를 프리젠트하는(presenting) 것을 포함하는 스푸핑(spoofing)의 방법(즉, 스푸핑 공격(spoofing attack))을 나타내기 위해 사용된다. 상기 2D 이미지는 프린트된 매체(일 예로, 프린트되는 사진) 또는 디스플레이 디바이스(일 예로, 스마트 폰, 태블릿 등과 같은 이동 디바이스)를 사용하여 상기 이미지 센서로 프리젠트될 수 있다. 일 예로, 공격자는 사용자의 인물 사진을 획득하고, 평면 표면(즉, 프린트되는 매체 또는 디스플레이 디바이스) 상에 상기 사진을 프린트/디스플레이하고, 상기 평면 표면을 상기 이미지 센서로 프리젠트할 수 있다.
본 명세서에서, 용어 "안면 라이브니스 검출(face liveness detection)"은 일반적으로 안면 인식 시스템에 의해 사용되는 이미지 센서(일 예로, 카메라)로 프리젠트되는 오브젝트(object)가 사용자의 실제 3차원(three-dimensional: 3D) 안면인지(일 예로, 상기 사용자가 상기 이미지 센서의 앞에 서 있는 중이다), 혹은 상기 사용자의 2D 안면 이미지인지를(일 예로, 상기 2D 안면 이미지는 프린트되는 매체 혹은 디스플레이 디바이스를 사용하여 상기 이미지 센서로 프리젠테이션 공격의 일부로서 프리젠트된다) 결정하는 프로세스를 나타내기 위해 사용된다.
하나 혹은 그 이상의 실시 예들은 안면 인식에 관한 것으로서, 특히 안면 인식 시스템을 통해 프리젠테이션 공격을 검출하기 위한 방법 및 시스템에 관한 것이다. 일 실시 예는 안면 라이브니스 검출을 위한 방법을 제공한다. 상기 방법은 사용자의 안면을 포함하는 제1 이미지를 수신하는 과정, 상기 제1 이미지를 기반으로 하나 혹은 그 이상의 2차원(two-dimensional: 2D) 안면 랜드마크 포인트(facial landmark point)들을 결정하는 과정, 및 상기 하나 혹은 그 이상의 결정된, 검출된 2D 안면 랜드마크 포인트들과 상기 사용자에 대한 3차원(three-dimensional: 3D) 안면 모델에서의 하나 혹은 그 이상의 상응하는 3D 안면 랜드마크 포인트들을 기반으로 상기 제1 이미지에서 상기 안면의 3D 포즈(pose)를 결정하는 과정을 포함한다. 상기 방법은 상기 하나 혹은 그 이상의 결정된 2D 안면 랜드마크 포인트들과 상기 3D 포즈를 기반으로 원근 프로젝트되는 (perspectively projected) 하나 혹은 그 이상의 상응하는 3D 안면 랜드마크 포인트들간의 호모그래피(homography) 매핑을 결정하는 과정, 및 상기 호모그래피 매핑을 기반으로 상기 제1 이미지에서 상기 안면의 라이브니스를 결정하는 과정을 더 포함한다.
안면 라이브니스 검출을 위한 종래의 방법들은 다른 3D 포즈 변형들을 가지는 사용자의 다수의 이미지들을 사용하여 안면 인식 시스템의 이미지 센서로 프리젠트되는 안면이 실제 3D 안면인지 혹은 프린트되는 매체 혹은 디스플레이 디바이스와 같은, 평면 표면에 프린트되는/디스플레이되는 2D 안면 이미지인지를 결정한다. 상기와 같은 종래의 방법들은 다수의 이미지들에서 키 포인트(key point)들(일 예로, 2D 안면 랜드마크 포인트들)을 추적함으로써 신 지오메트리(scene geometry)를 결정하는 것을 포함한다. 상기와 같은 종래의 방법들은 더 많은 사용자 액션들을 필요로 하기 때문에(일 예로, 사용자의 다수의 이미지들이 필요로 된다) 안면 인식 시스템들의 유용성에 영향을 미친다.
일 실시 예는 안면 인식 시스템에 의해 사용되는 이미지 센서로 프리젠트되는 오브젝트(일 예로, 실제(actual), 라이브(live) 사용자, 프린트된 사진, 등의 안면)이 2D 평면 표면을 가지는지(일 예로, 상기 오브젝트는 프린트되는 매체 혹은 디스플레이 디바이스를 사용하여 상기 카메라로 프리젠트되는 2D 프린트되는/디스플레이되는 이미지이다) 혹은 라이브 3D 표면을 가지는지를(일 예로, 상기 오브젝트는 상기 이미지 센서와 근접하여 위치하고 있는 사용자의 실제 3D 안면이다) 결정함으로써 프리젠테이션 공격을 검출하도록 구성되는 상기 시스템을 제공한다. 일 실시 예에서, 상기 시스템은 다음 중 적어도 하나를 수행하도록 구성된다: (1) 다수의 뷰(view)들로부터의 3D 형상(shape) 구성, (2) 평면 캘리브레이션(calibration) 오브젝트를 사용하는 이미지 센서 캘리브레이션, (3) 2D 안면 랜드마크 포인트들을 결정하는 것, (4) 3D 포즈 추정, 및 (5) 하나의 평면상의 안면 랜드마크 포인트들을 다른 평면에 매핑하는 호모그래피 매핑(homography mapping)을 결정하는 것. 상기 시스템은 사용자의 알려진 3D 안면 형상과 캘리브레이트된 이미지 센서를 사용하여 신 및 이미지 센서 지오메트리를 결정하는 프리젠테이션 공격들과 같은 스푸핑 공격들을 검출하도록 구성된다. 일 실시 예에서, 상기 시스템은 상기 이미지 센서에 의해 캡쳐되는 단일 이미지 및 상기 이미지 센서에 대한 하나 혹은 그 이상의 카메라 고유 파라미터들을 기반으로 안면 라이브니스 검출을 수행하도록 구성된다. 종래의 방법들과는 달리, 상기 시스템은 프레젠테이션 공격을 검출하기 위해 3D 포즈 변형들을 가지는 다수의 안면 이미지들의 캡쳐를 필요로 하지 않고, 따라서 턴어라운드(turnaround) 시간을 감소시킬 수 있다.
도 1은 하나 혹은 그 이상의 실시 예들에서, 안면 인식 시스템(300)을 구현하기 위한 예제 컴퓨팅 아키텍쳐(10)를 도시하고 있다. 상기 컴퓨팅 아키텍처(10)는 하나 혹은 그 이상의 프로세서들(110) 및 하나 혹은 그 이상의 저장 유닛들(120)과 같은, 계산 자원들을 포함하는 전자 디바이스(100)를 포함한다. 하나 혹은 그 이상의 어플리케이션들은 상기 전자 디바이스(100)의 계산 자원들을 사용하여 상기 전자 디바이스(100) 상에서 실행/동작 할 수 있다. .
전자 디바이스(100)의 예들은 데스크탑 컴퓨터, 이동 전자 디바이스(일 예로, 태블릿, 스마트 폰, 랩탑, 등), 또는 스마트 텔레비전, 스마트 카와 같은 소비자 제품, 또는 인증을 위해 안면 인식을 사용하는 임의의 다른 제품을 포함하며, 그렇다고 이로 한정되는 것은 아니다.
일 실시 예에서, 상기 전자 디바이스(100)는 카메라와 같은 상기 전자 디바이스(100)에 통합되거나 혹은 상기 전자 디바이스(100)에 연결되는 이미지 센서(140)를 포함한다. 상기 전자 디바이스(100) 상의 하나 혹은 그 이상의 어플리케이션들은 상기 이미지 센서(140)를 사용하여 상기 이미지 센서(140)로 프리젠트되는 오브젝트의 이미지를 캡쳐할 수 있다.
일 실시 예에서, 상기 전자 디바이스(100) 상의 어플리케이션들은 다음 중 적어도 하나를 수행하도록 구성되는 안면 인식 시스템(300)을 포함하며, 그렇다고 이에 한정되는 것은 아니다: (1) 오브젝트의 이미지를 수신한다, 일 실시 예에서, 상기 오브젝트는 상기 이미지 센서(140)로 프리젠트된다, (2) 상기 수신된 이미지 및 등록된 사용자에 대해 저장되어 있는 기록들이 동일한 사용자를 캡쳐한다는 것을 검증하기 위해 안면 검증(facial verification)을 수행한다, 및 (3) 상기 오브젝트가 사용자(50)의 실제 3D 안면인지 혹은 프린트되는 매체(일 예로, 프린트되는 사진), 혹은 디스플레이 디바이스(일 예로, 스마트폰, 태블릿, 등)와 같은 평면 표면 상에 프린트되는/디스플레이되는 2D 안면 이미지(55)인지 결정하기 위해 안면 라이브니스 검출을 수행한다. 일 실시 예에서, 상기 안면 인식 시스템(300)은 사용자의 안면에 상응하는 부분을 포함하는 제1 이미지를 수신하고, 상기 제1 이미지를 기반으로 상기 사용자의 안면에 관련되는 2차원(two-dimensional: 2D) 이미지 정보를 획득하고, 상기 사용자에 대한 3차원(three-dimensional: 3D) 안면 모델을 기반으로 상기 사용자의 안면의 3D 형상 정보를 획득하고, 상기 2D 이미지 정보 및 3D 형상 정보간의 매핑(mapping)(일 예로, 상기 2D 이미지 정보에 포함되어 있는 하나 혹은 그 이상의 결정된 2D 안면 랜드마크 포인트들과 상기 3D 형상 정보에 포함되어 있는 하나 혹은 그 이상의 상응하는 원근 프로젝트되는(perspectively projected) 3D 안면 랜드마크 포인트들간의 매핑)을 제공하고, 상기 매핑을 기반으로 상기 제1 이미지에서 상기 안면의 라이브니스를 식별하도록 더 구성된다.
일 실시 예에서, 상기 전자 디바이스(100) 상의 어플리케이션들은 모바일 뱅킹 어플리케이션(mobile banking application)과 같은 상기 전자 디바이스(100)상에 로드되거나 혹은 다운로드되는 하나 혹은 그 이상의 소프트웨어 모바일 어플리케이션들(150)을 더 포함 할 수 있다. 상기 전자 디바이스(100) 상의 소프트웨어 모바일 어플리케이션(150)은 상기 안면 인식 시스템(300)과 데이터를 교환할 수 있다. 일 예로, 모바일 뱅킹 어플리케이션은 사용자가 상기 모바일 뱅킹 애플리케이션에 로그인 할 때 상기 사용자의 신원을 검증하기 위해 상기 안면 인식 시스템(300)을 호출할 수 있다.
일 실시 예에서, 상기 전자 디바이스(100)는 마이크로폰, GPS, 또는 깊이 센서와 같은 하나 혹은 그 이상의 추가 센서들을 더 포함할 수 있다. 상기 전자 디바이스(100)의 센서는 컨텐트 및/또는 센서-기반 컨텍스트 정보를 캡쳐하기 위해 사용될 수 있다. 일 예로, 상기 안면 인식 시스템(300) 및/또는 소프트웨어 모바일 어플리케이션(150)은 오디오 데이터(일 예로, 음성 기록들)를 위한 마이크로폰, 위치 데이터(일 예로, 위치 좌표들)를 위한 GPS, 혹은 상기 이미지 센서(140)로 프리젠트되는 오브젝트의 형상을 위한 깊이 센서와 같은 상기 전자 디바이스(100)의 하나 혹은 그 이상의 추가적인 센서들을 사용하여 컨텐트 및/혹은 센서-기반 컨텍스트 정보를 캡쳐할 수 있다.
일 실시 예에서, 상기 전자 디바이스(100)는 키보드, 키패드, 터치 인터페이스, 또는 디스플레이 스크린과 같은, 상기 전자 디바이스(100)에 통합되거나 혹은 상기 전자 디바이스(100)에 연결되는 하나 혹은 그 이상의 입/출력(input/output: I/O) 유닛들(130)을 포함한다.
일 실시 예에서, 상기 전자 디바이스(100)는 연결(일 예로, WiFi 연결 또는 셀룰러 데이터 연결과 같은 무선 연결, 유선 연결, 또는 그 둘의 조합)을 통해 하나 혹은 이상의 원격 서버들(200) 또는 원격 전자 디바이스들과 데이터를 교환하도록 구성된다. 일 예로, 원격 서버(200)는 하나 혹은 그 이상의 온라인 서비스들(일 예로, 온라인 뱅킹 서비스)을 호스팅하고, 및/혹은 하나 혹은 그 이상의 소프트웨어 모바일 어플리케이션들(150)을 배포하기 위한 온라인 플랫폼(online platform)일 수 있다.
일 실시 예에서, 상기 컴퓨팅 아키텍쳐(10)는 중앙 집중형 컴퓨팅 아키텍쳐이다. 다른 실시 예에서, 상기 컴퓨팅 아키텍쳐(10)는 분산 컴퓨팅 아키텍쳐이다.
도 2는 하나 혹은 그 이상의 실시 예들에서, 상기 안면 인식 시스템(300)을 구체적으로 도시하고 있다. 일 실시 예에서, 상기 안면 인식 시스템(300)은 상기 이미지 센서(140)를 사용하여 상기 이미지 센서(140)로 프리젠트되는 오브젝트의 이미지를 캡쳐한다. 상기 이미지 센서(140)는 상기 안면 인식 시스템(300) 및/혹은 상기 전자 디바이스(100) 상의 소프트웨어 모바일 어플리케이션(150)에 의해 오브젝트의 이미지를 캡처하기 위해 호출될 수 있다.
일 실시 예에서, 상기 안면 인식 시스템(300)은 적어도 2개의 다른 동작 단계들(즉, 모드들) - 등록(즉, 셋업) 단계 및 인식 단계-를 가진다. 본 명세서에서 나중에 상세히 설명되는 바와 같이, 상기 등록 단계는 다음 중 적어도 하나를 수행하는 것을 포함한다: (1) 상기 이미지 센서(140)의 캘리브레이션, 및 (2) 다른 3D 포즈들에서 사용자의 다수의 이미지들을 사용하여 상기 안면 인식 시스템(300)에 상기 사용자를 등록. 일 실시 예에서, 상기 안면 인식 시스템(300)은 상기 등록 단계를 수행하도록 구성되는 사용자 등록 시스템(310)을 포함한다.
일 실시 예에서, 상기 등록 단계는 각 사용자에 대해 한 번 수행된다.
일 실시 예에서, 상기 등록 단계는 오프라인에서 발생할 수 있다(즉, 상기 전자 디바이스(100) 상에서가 아닌). 일 예로, 일 실시 예에서, 상기 등록 단계는 원격 서버(200) 또는 원격 전자 디바이스를 사용하여 발생할 수 있다.
본 명세서에서 나중에 상세히 설명되는 바와 같이, 상기 인식 단계는 다음 중 적어도 하나를 수행하는 것을 포함한다: (1) 상기 이미지 센서 (140)에 의해 캡쳐되는 단일 이미지를 기반으로 하는 안면 검증, 및 (2) 상기 단일 이미지를 기반으로 하는 안면 라이브니스 검출. 안면 라이브니스 검출을 위해 단일 이미지만을 요구함으로써, 상기 안면 인식 시스템(300)은 상기 인식 단계 동안 상기 이미지 센서(140)로 프리젠트되는 오브젝트의 3D 형상을 캡쳐하기 위한 고가의 센서에 대한 필요성을 제거한다.
일 실시 예에서, 상기 안면 인식 시스템(300)은 상기 인식 단계를 수행하도록 구성되는 안면 라이브니스 검출 시스템(320)을 포함한다.
일 실시 예에서, 상기 인식 단계는 상기 이미지 센서(140)가 안면 인식을 위해 상기 이미지 센서(140)로 프리젠트되는 오브젝트의 이미지를 캡쳐할 때마다 실행된다.
일 실시 예에서, 상기 인식 단계는 온라인에서(즉, 상기 전자 디바이스(100) 상에서) 발생될 수 있다.
도 3은 하나 혹은 그 이상의 실시 예들에서, 사용자 등록 시스템(310)의 하나 혹은 그 이상의 컴포넌트(component)들을 도시하고 있다. 본 명세서에서, 용어 "카메라 고유 파라미터(camera intrinsic parameter)"는 일반적으로 이미지 센서(일 예로, 카메라)에 대한 파라미터를 나타내며, 여기서 상기 파라미터는 이미지 형성 프로세스와 연관된다. 다른 카메라 고유 파라미터들의 예제들은 초점 길이(focal length), 프로젝션의 중심, 방사형 왜곡(radial distortion) 등을 포함하지만, 그렇다고 이에 한정되지는 않는다. 본 명세서에서, 용어 "카메라 고유 행렬"은 일반적으로 이미지 센서에 대한 하나 혹은 그 이상의 카메라 고유 파라미터들을 나타내는 행렬을 나타낸다.
일 실시 예에서, 상기 사용자 등록 시스템(310)은 캘리브레이션 유닛(410)을 포함한다. 상기 등록 단계에서, 상기 캘리브레이션 유닛(410)은: (1) 상기 전자 디바이스(100)의 이미지 센서(140)의 캘리브레이션을 수행하고, (2) 상기 캘리브레이션을 기반으로, 상기 이미지 센서(140)에 대한 하나 혹은 그 이상의 카메라 고유 파라미터들을 포함하는 카메라 고유 정보(415)를 생성한다. 일 실시 예에서, 상기 캘리브레이션 유닛(410)에 의해 수행되는 캘리브레이션은 다른 3D 포즈들에서 평면 캘리브레이션 오브젝트(일 예로, 체커 보드(checker board), 등)의 다수의 이미지들을 캡쳐하기 위해 상기 이미지 센서(140)를 사용하는 것을 포함한다. 상기 카메라 고유 정보(415)는 상기 이미지 센서(140)에 대한 저장된 기록들로서 상기 전자 디바이스(100)의 하나 혹은 그 이상의 저장 유닛들(120)에 저장될 수 있다.
일 실시 예에서, 상기 이미지 센서(140)가 고정 초점 거리 카메라일 경우 상기 이미지 센서(140)는 한 번만 캘리브레이트될 필요가 있다.
일 실시 예에서, 상기 사용자 등록 시스템(310)은 상기 안면 인식 시스템(300)에 사용자를 등록하는 것에 대한 요청을 수신하도록 구성되는 멀티-뷰(multi-view) 캡쳐 유닛(420)을 포함하고, 여기서 상기 요청은 다른 3D 포즈들에서 상기 사용자의 다수의 안면 이미지들(425)을 포함한다. 일 실시 예에서, 상기 다수의 안면 이미지들(425)은 상기 이미지 센서(140) 또는 다른 이미지 센서(일 예로, 원격 전자 디바이스 상의 카메라)를 사용하여 캡쳐될 수 있다. 상기 다수의 안면 이미지들(425)은 상기 전자 디바이스(100)의 하나 혹은 그 이상의 저장 유닛들(120)에 상기 등록된 사용자에 대한 저장된 기록들로서 저장될 수 있다.
일 실시 예에서, 상기 사용자 등록 시스템(310)은 모션(motion) 기술들을 사용하여 사용자의 안면의 3D 안면 모델 (즉, 구조, 형상)(435)을 생성하도록 구성되는 3D 형상 재구성 유닛(430)을 포함한다. 구체적으로, 상기 3D 형상 재구성 유닛(430)은: (1) 상기 캘리브레이션 유닛(410)으로부터 상기 이미지 센서(140)에 대한 카메라 고유 정보(415)를 수신하고, (2) 상기 멀티-뷰 캡쳐 유닛(420)으로부터 다른 3D 포즈들에서 상기 사용자의 다수의 안면 이미지들(425)을 수신하고, (3) 상기 다수의 안면 이미지들(425)에서 2D 안면 랜드마크 포인트들을 결정/식별 및 추적하고, 및 (4) 상기 결정된 2D 안면 랜드마크 포인트들 및 상기 카메라 고유 정보(415)를 기반으로 상기 사용자의 안면의 3D 형상을 복구/재구성함으로써 상기 사용자에 대한 상응하는 3D 안면 모델(435)을 생성하도록 구성된다. 상기 상응하는 3D 안면 모델(435)은 상기 전자 디바이스(100)의 하나 혹은 그 이상의 저장 유닛들(120)에 상기 등록된 사용자에 대한 저장된 기록들로서 저장될 수 있다. 상기 상응하는 3D 안면 모델(435)은 상기 다수의 안면 이미지들(425)에서 상기 결정된 2D 안면 랜드마크 포인트들로부터 재구성되는 하나 혹은 그 이상의 레이블되는(labeled) 3D 안면 랜드마크 포인트들을 포함할 수 있다. 여기에서 나중에 상세히 설명되는 바와 같이, 상기 등록 단계 동안 생성되는 상기 상응하는 3D 안면 모델(435)은 상기 인식 단계 동안 사용될 수 있다.
일 실시 예에서, 사용자에 대한 3D 안면 모델(435)은 상기 전자 디바이스(100) 또는 원격 전자 디바이스의 하나 혹은 그 이상의 깊이 센서들을 사용하여 캡쳐되는 센서-기반 컨텍스트 정보를 사용하여 형성될 수 있다.
도 4는 하나 혹은 그 이상의 실시 예들에서, 안면 라이브니스 검출 시스템(320)의 하나 혹은 그 이상의 컴포넌트들을 도시하고 있다. 본 명세서에서, 용어 "쿼리 이미지(query image)"는 일반적으로 상기 인식 단계 동안 상기 이미지 센서(140)로 제시되는 오브젝트의 단일 이미지를 나타내며, 여기서 상기 쿼리 이미지는 상기 이미지 센서(140)에 의해 캡쳐/형성되고, 안면 인식을 위해 상기 안면 인식 시스템(300)으로 포워딩된다.
일 실시 예에서, 상기 안면 라이브니스 검출 시스템(320)은 상기 이미지 센서(140)로 제시되는 오브젝트의 안면 인식에 대한 요청을 수신하도록 구성되는 단일 캡쳐 유닛(510)을 포함한다. 일 실시 예에서, 상기 요청은 상기 전자 디바이스(100) 상의 소프트웨어 모바일 어플리케이션(150), 원격 서버(200), 또는 원격 전자 디바이스 중 적어도 하나로부터 수신된다. 상기 요청은 상기 오브젝트의 쿼리 이미지(515)를 포함하고, 상기 쿼리 이미지(515)는 상기 이미지 센서(140)에 의해 캡쳐된다.
일 실시 예에서, 상기 안면 라이브니스 검출 시스템(320)은: (1) 상기 단일 캡쳐 유닛(510)으로부터 오브젝트의 쿼리 이미지(515)를 수신하고, 및 (2) 상기 쿼리 이미지(515)에서 2D 안면 랜드마크 포인트들(525)을 결정/식별하도록 구성되는 랜드마크 결정 유닛(520)을 포함한다. 일 실시 예에서, 상기 결정된 2D 안면 랜드마크 포인트들(525)은 상기 쿼리 이미지(515)에 대한 좌표들( "이미지 좌표들(image coordinates)")로 나타내진다.
일 실시 예에서, 상기 안면 라이브니스 검출 시스템(320)은: (1) 상기 단일 캡쳐 유닛(510)으로부터 오브젝트의 쿼리 이미지(515)를 수신하고, (2) 상기 쿼리 이미지(515)를 기반으로 안면 검증을 수행하고, 및 (3) 상기 안면 검증의 결과를 나타내는 검증 상태(535)를 생성하도록 구성되는 안면 검증 유닛(530)을 포함한다. 일 실시 예에서, 상기 안면 검증 유닛(530)은 상기 쿼리 이미지(515)와 등록되어 있는 사용자에 대한 저장된 기록들(일 예로, 상기 등록 단계 동안 캡쳐된, 혹은 상기 하나 혹은 그 이상의 저장 유닛들(120) 상에 저장되어 있는 안면 이미지들)을 비교함으로써 안면 검증을 수행하여 상기 쿼리 이미지(515)와 상기 저장되어 있는 기록들이 동일한 사용자를 캡쳐한 것인지 여부를 결정한다. 일 실시 예에서, 상기 검증 상태 (535)는 다음 중 하나이다: (1) 상기 쿼리 이미지(515)에서 캡쳐되는 사용자가 검증됨을 지시하는 포지티브 검증 상태(positive verification status)(즉, 상기 사용자가 등록되어 있는 사용자이다), 또는 (2) 상기 쿼리 이미지(515)에서 캡쳐되는 사용자가 검증되지 않음을 지시하는 네가티브 검증 상태(negative verification status)(즉, 상기 사용자가 등록되어 있는 사용자가 아니다).
일 실시 예에서, 상기 안면 라이브니스 검출 시스템(320)은 쿼리 이미지(515)에서 캡쳐되는 사용자의 안면의 추정된 3D 포즈를 결정하도록 구성되는 3D 포즈 추정 유닛(560)을 포함한다.
일 실시 예에서, 상기 안면 라이브니스 검출 시스템(320)은 쿼리 이미지 (515)에 대해 수행된 안면 검증의 결과를 기반으로 안면 라이브니스 검출이 수행되어야만 하는지 혹은 바이패스되어야만(bypassed) 하는지를 제어하도록 구성되는 제1 제어 유닛(550)을 포함한다. 구체적으로, 상기 안면 검증 유닛(530)으로부터 네가티브 검증 상태를 수신하는 것에 대한 응답으로, 상기 제1 유닛(550)은 안면 라이브니스 검출을 바이패스하고, 상기 쿼리 이미지(515)에서 캡쳐된 사용자가 검증되지 않는다는 것(즉, 등록된 사용자가 아니라는 것)을 지시하는 실패 검증 보고(555)를 생성한다. 상기 안면 검증 유닛(530)으로부터 포지티브 검증 상태(535)를 수신하는 것에 대한 응답으로, 상기 제1 유닛(550)은 상기 쿼리 이미지(515)에서 캡쳐된 사용자의 안면의 추정된 3D 포즈를 결정하기 위해 상기 3D 포즈 추정 유닛(560)을 호출함으로써 안면 라이브니스 검출을 진행한다.
일 실시 예에서, 상기 안면 라이브니스 검출 시스템(320)은 다음의 각각을 입력들로서 수신하도록 구성되는 3D 포즈 및 호모그래피 최적화 유닛(540)을 포함한다: (1) 쿼리 이미지(515)에서 캡쳐되는 사용자에 상응하는 3D 안면 모델(435) (일 예로, 상기 등록 단계 동안 생성되고 상기 하나 혹은 그 이상의 저장 유닛들(120)에 저장되는 3D 안면 모델(435)), (2) 상기 이미지 센서(140)에 대한 카메라 고유 정보(415)(일 예로, 상기 등록 단계 동안 생성되고 상기 하나 혹은 그 이상의 저장 유닛들(120)에 저장되는 카메라 고유 정보 (415)), (3) 상기 쿼리 이미지(515)에서 결정된 2D 안면 랜드마크 포인트들(525)(일 예로, 상기 랜드마크 결정 유닛(520)으로부터의 결정된 2D 안면 랜드마크 포인트들(525)), 및 (4) 상기 쿼리 이미지(515)에서 캡쳐되는 사용자의 안면의 추정된 3D 포즈(일 예로, 상기 3D 포즈 추정 유닛(560)으로부터의 추정된 3D 포즈).
일 실시 예에서, 각 등록된 사용자는 상기 등록 단계 동안 캡쳐되고 저장되는 상기 사용자 자신의 안면의 상응하는 3D 안면 모델(435)을 가진다. 상기 안면 라이브니스 검출 시스템(320)은, 쿼리 이미지(515)를 수신하는 것에 대한 응답으로, 상기 쿼리 이미지(515)에서 캡쳐되는 사용자가 검증되는 것을 지시하는(즉, 상기 사용자는 등록된 사용자이다) 포지티브 검증 상태를 생성하고, 상기 안면 라이브니스 검출 시스템(320)은 (일 예로, 상기 하나 혹은 그 이상의 저장 유닛들(120)로부터) 상기 사용자에 상응하는 3D 안면 모델(435)을 검색한다.
상기 3D 포즈 및 호모그래피 최적화 유닛(540)은: (1) 상기 쿼리 이미지(515)에서 상기 결정된 2D 안면 랜드마크 포인트들(525)과 상기 3D 안면 모델(435)에서 레이블된(labeled) 3D 안면 랜드마크 포인트들간의 상관성(correspondence)들을 결정하고, (2) 이미지 좌표들에서 상기 결정된 2D 안면 랜드마크 포인트들(525)을 동종 카메라(homogenous camera)에 대한 좌표들("동종 카메라 좌표들(homogenous camera coordinates)")로 변환하기 위해 상기 결정된 2D 안면 랜드마크 포인트들(525)과 상기 카메라 고유 정보(415)에 포함되어 있는 카메라 고유 정보의 역(inverse)을 곱함으로써 2D 안면 랜드마크 포인트들의 제1 이미지를 생성하고, (3) 상기 추정된 3D 포즈를 기반으로 상응하는 3D 안면 랜드마크 포인트들의 원근 프로젝션(perspective projection)으로 3D 안면 랜드마크 포인트들의 제1 이미지를 생성하고, (4) 상기 제1 이미지에서 2D 안면 랜드마크 포인트들과 상기 제2 이미지에서 상응하는 원근 프로젝트되는 3D 랜드마크 포인트들간의 거리를 감소시키거나 혹은 최소화시키기 위해서, 반복적인 리파인먼트(refinement)를 통해, 상기 추정된 3D 포즈 및 상기 제1 이미지와 제2 이미지간의 호모그래피 매핑을 조인트하게(jointly) 최적화시키도록 더 구성된다. 일 실시 예에서, 상기 3D 포즈 및 호모그래피 최적화 유닛(540)은 상기 이미지 센서(140)에 대한 하나 혹은 그 이상의 카메라 고유 파라미터들을 기반으로 상기 호모그래피 매핑을 분해함으로써 상기 호모그래피 매핑을 결정하도록 더 구성된다.
일 실시 예에서, 상기 안면 라이브니스 검출 시스템(320)은: (1) 상기 호모그래피 매핑과 신원 변환을 나타내는 신원 행렬간의 거리를 결정하도록 구성되는 거리 유닛(570), 및 (2) 상기 호모그래피 매핑과 상기 신원 행렬간의 거리를 미리 결정되어 있는 임계값과 비교하도록 구성되는 비교 유닛(580)을 더 포함한다. 일 실시 예에서, 상기 호모그래피 매핑과 상기 신원 행렬간의 거리가 상기 미리 결정되어 있는 임계값을 초과할 경우, 상기 비교 유닛(580)은 상기 이미지 센서(140)에 프리젠트되는 오브젝트가 평면 2D 표면을 가진다고 결정하고, 상기 오브젝트가 상기 이미지 센서(140)에 프리젠테이션 공격의 일부로 (즉, 상기 오브젝트는 spoof이다) 프리젠트되었을 수 있는 2D 프린트되는/디스플레이되는 안면 이미지(55)라는 것을 지시하는 실패 안면 라이브니스 검출 보고(failed face liveness detection report)(586)를 생성한다. 상기 호모그래피 매핑과 상기 신원 행렬간의 거리가 상기 미리 결정되어 있는 임계값을 초과하지 않을 경우, 상기 비교 유닛(580)은 상기 오브젝트가 라이브(live) 3D 표면을 가진다고 결정하고, 상기 오브젝트가 실제 3D 안면이라는 것을(즉, 상기 오브젝트는 라이브(live)이다) 지시하는 성공 안면 라이브니스 검출 보고(successful face liveness detection report)(585)를 생성한다. 일 실시 예에서, 상기 오브젝트가 특정 스케일(scale) 및 특정 거리로 상기 이미지 센서(140)에 프리젠트되는 실제 3D 안면일 경우 상기 호모그래피 매핑은 상기 신원 행렬과 동일하다. 따라서, 상기 안면 라이브니스 검출 시스템(320)은 상기 이미지 센서(140)가 실제 3D 오브젝트로부터 상기 쿼리 이미지(515)를 형성하는지 혹은 상기 오브젝트의 2D 이미지로부터 상기 쿼리 이미지(515)를 형성하는지 검출하도록 구성된다.
일 실시 예에서, 상기 안면 라이브니스 검출 시스템(320)은 상기 이미지 센서(140)를 사용하여 캡쳐되는 이미지들의 시퀀스(sequence)를 기반으로 안면 라이브니스 검출을 수행하도록 구성된다. 상기 안면 라이브니스 검출 시스템(320)은 결과들을 종합하고, 상기 종합된 결과들을 기반으로 상기 이미지 센서(140)에 프리젠트되는 오브젝트가 라이브(live)인지 여부에 대한 최종 결정을 한다.
도 5는 하나 혹은 그 이상의 실시 예들에서, 상기 안면 라이브니스 검출 시스템(320)에 의해 수행되는 안면 라이브니스 검출 프로세스를 도시하고 있다. 사용자의 실제 3D 안면을 캡쳐하기 위해 사용되는 이미지 센서 C'을 가정하기로 한다. 상기 사용자의 안면은 3D 형상(즉, 모델, 구조) S 및 상기 이미지 센서 C'에 대한 3D 포즈 [R|T]를 가진다. 일 실시 예에서, 상기 사용자의 안면의 3D 형상 S는 상기 안면 인식 시스템(300)에 알려져 있다. 일 예로, 일 실시 예에서, 상기 안면 인식 시스템(300)의 하나 혹은 그 이상의 컴포넌트들(일 예로, 상기 캘리브레이션 유닛(410), 멀티-뷰 캡쳐 유닛(420), 및 3D 형상 재구성 유닛(430))은 상기 등록 단계 동안 상기 사용자가 상기 안면 인식 시스템(300)에 등록할 때 상기 사용자의 안면의 3D 형상 S를 결정/획득하도록 구성된다.
상기 이미지 센서 C'은 다음의 다수의 변환들을 통해 상기 사용자의 안면의 2D 이미지 I'를 형성한다: (1) 원근 프로젝션 평면 P'으로의 상기 형상 S의 원근 프로젝션, 및 2) 상기 원근 프로젝션을 상기 이미지 센서 C'에 대한 카메라 고유 행렬 K'과 곱함에 의한 아핀(affine) 변환 K'. 공격자는 상기 2D 이미지 I'를 프린트되는 매체 혹은 디스플레이 디바이스 상에 프린트/디스플레이함으로써, 프리젠테이션 공격 동안 사용하기 위해서 상기 사용자의 안면의 2D 사진 J를 생성할 수 있고, 따라서 상기 2D 이미지 I'가 다른 아핀 변환 A를 겪게 된다.
이미지 센서 C는 안면 인식 시스템이 안면 인식을 위해 상기 안면 인식 시스템에 프리젠트되는 오브젝트를 캡쳐하기 위해 사용된다고 가정하기로 한다(일 예로, 상기 안면 인식 시스템 (300)의 이미지 센서(140)). 공격자가 프리젠테이션 공격의 일부로 상기 2D 사진 J를 상기 이미지 센서 C에 프리젠트한다고 가정하기로 한다. 상기 2D 사진 J에서 상기 사용자의 안면은 상기 이미지 센서 C에 대해 3D 포즈 [r|t]를 가진다. 상기 이미지 센서 C는 다음을 포함하는 다수의 변환들을 통해 상기 2D 사진 J의 2D 이미지 I를 형성한다: (1) 원근 프로젝션 평면 P 상으로의 상기 2D 사진 J의 원근 프로젝션, 및 (2) 상기 원근 프로젝션에 상기 이미지 센서 C에 대한 카메라 고유 행렬 K를 곱함으로써의 아핀 변환 K. 일 실시 예에서, 상기 안면 인식 시스템(300)의 하나 혹은 그 이상의 컴포넌트들(일 예로, 상기 캘리브레이션 유닛(410))은 상기 등록 단계 동안 상기 이미지 센서 C의 캘리브레이션을 수행함으로써 상기 이미지 센서 C에 대한 카메라 고유 행렬 K를 결정하도록 구성된다.
일 실시 예에서, 상기 2D 이미지 I는 하기와 같이 제공되는 수학식 1에 따라 나타내질 수 있다:
Figure pct00001
여기서,
Figure pct00002
는 상기 이미지 센서 C에 의해 적용되는 원근 프로젝션 함수이고,
Figure pct00003
는 원근 프로젝션 함수
Figure pct00004
에 따른 원근 프로젝션이 뒤따르는 3D 유클리디안 공간(Euclidean space)에서의 강체 변환(rigid transformation) [r|t]과 2D 공간에서의 아핀 변환 AK'의 곱을 나타내는 변환이다. 상기 변환
Figure pct00005
는 도 5에서 상기 음영 영역(330)으로 나타내진다. 상기 변환
Figure pct00006
는 평면 프로젝트 변환(planar projective transformation)을 나타내는 호모그래피 매핑 H로 결합될 수 있고, 따라서 상기 2D 이미지 I는 또한 하기에서 제공되는 수학식 2에 따라 나타내질 수 있다:
Figure pct00007
일 실시 예에서, 상기 안면 인식 시스템(300)의 하나 혹은 그 이상의 컴포넌트들(일 예로, 상기 3D 포즈 및 호모그래피 최적화(540)은 비-선형 최적화 접근 방식을 사용하여 상기 이미지 센서 C'에 대한 상기 사용자의 안면의 호모그래피 매핑 H 및 3D 포즈 [R|T]를 추정하도록 구성된다. 구체적으로, 상기 안면 인식 시스템 (300)은 먼저 상기 호모그래피 매핑 H를 신원 변환을 나타내는 신원 행렬로, 상기 3D 포즈 [R|T]를 정면 3D 포즈로 초기화한다. 상기 안면 인식 시스템(300)은 다음으로 상기 2D 이미지 I에서 검출된 2D 안면 랜드마크 포인트들과 상기 3D 형상 S에서 레이블된 3D 안면 랜드마크 포인트들 간의 상관성들을 결정한다. 그리고 나서, 상기 상관성들을 사용하여, 상기 안면 인식 시스템(300)은 하기에 제공되는 수학식 3에 따라 에러 E를 최소화시킴으로써 상기 호모그래피 매핑 H와 상기 3D 포즈 [R|T]를 추정한다:
Figure pct00008
여기서,
Figure pct00009
는 상기 2D 이미지 I에서 2D 랜드마크 포인트이고,
Figure pct00010
는 상기 3D 형상 S에서 상응하는 레이블된 3D 랜드마크 포인트이고, wi는 웨이트 함수(weight function) wi가 상기 레이블된 3D 랜드마크 포인트의 깊이에 반비례하도록 설정되는 상응하는 웨이트 함수이다. 예제 웨이트 함수 wi는 하기에서 제공되는 수학식 4에 따라 나타내질 수 있다:
Figure pct00011
여기서,
Figure pct00012
는 상기 3D 형상 S에서 i번째로 레이블된 3D 랜드마크 포인트의 z-좌표이다.
일 실시 예에서, 상기 안면 인식 시스템(300)의 하나 혹은 그 이상의 컴포넌트들(일 예로, 상기 거리 유닛(570) 및 비교 유닛(580))은 상기 추정된 호모그래피 매핑 H, 상기 추정된 3D 포즈 [R|T] 및 상기 최소화된 에러 E를 기반으로 프리젠테이션 공격을 검출하도록 구성된다. 구체적으로, 상기 안면 인식 시스템(300)은: (1) 상기 신원 행렬로부터의 추정된 호모그래피 매핑 H의 편차, 및 (2) 상기 최소화된 에러 E를 기반으로 프리젠테이션 공격을 검출하도록 구성된다. 일 실시 예에서, 신경 네트워크는 상기 최소화된 에러 E 및 상기 신원 행렬로부터의 상기 추정된 호모그래피 매핑 H의 각 엘리먼트의 편차를 기반으로 안면 라이브니스 검출에 대해 훈련된다.
스푸핑 시도가 없고 (일 예로, 프리젠테이션 공격 없음), 상기 이미지 센서 C에 프리젠트되는 오브젝트가 상기 2D 사진 J 대신에 상기 사용자의 실제 3D 안면인 경우 (일 예로, 상기 사용자가 상기 이미지 센서 C의 앞에 서있는 중이다), 상기 호모그래피 매핑 H은 상기 신원 행렬과 동일하다.
일 실시 예에서, 상기 안면 인식 시스템(300)은 다른 3D 오브젝트들(일 예로, 차량들, 동물들, 개인들, 등)을 인식하고, 그 라이브니스 검출을 수행하도록 구성되는 오브젝트 인식 시스템으로 구현될 수 있다.
도 6은 하나 혹은 그 이상의 실시 예들에서, 안면 라이브니스 검출을 수행하여 프리젠테이션 공격을 검출하는 예제 프로세스(800)의 플로우차트이다. 프로세스 블록(801)은 (일 예로, 이미지 센서(140)에 의해 캡쳐되는) 사용자의 안면을 포함하는 제1 이미지(일 예로, 쿼리 이미지(515))를 수신하는 과정을 포함한다. 일 실시 예에서, 상기 프로세스 블록(801)은 사용자의 안면에 상응하는 부분을 포함하는 제1 이미지를 수신하는 과정을 포함한다. 프로세스 블록(802)은 상기 제1 이미지를 기반으로 하나 혹은 그 이상의 2D 안면 랜드마크 포인트들을 결정하는 과정을 포함한다. 일 실시 예에서, 상기 프로세스 블록(802)은 상기 제1 이미지를 기반으로 상기 사용자의 안면에 관련되는 2차원(two-dimensional: 2D) 이미지 정보를 획득하는 과정을 포함한다. 프로세스 블록(803)은 상기 하나 혹은 그 이상의 결정된 2D 안면 랜드마크 포인트들과 상기 사용자에 대한 3D 안면 모델에서의 하나 혹은 그 이상의 상응하는 3D 안면 랜드마크 포인트들을 기반으로 상기 제1 이미지에서 상기 안면의 3D 포즈를 결정하는 과정을 포함한다. 일 실시 예에서, 상기 프로세스 블록(803)은 상기 사용자에 대한 3차원(three-dimensional: 3D) 안면 모델을 기반으로 상기 사용자의 안면의 3D 형상 정보를 획득하는 과정을 포함한다. 프로세스 블록(804)은 상기 하나 혹은 그 이상의 결정된 2D 안면 랜드마크 포인트들과 상기 3D 포즈를 기반으로 원근 프로젝트되는(perspectively projected) 하나 혹은 그 이상의 상응하는 3D 안면 랜드마크 포인트들간의 호모그래피(homography) 매핑을 결정하는 과정을 포함한다. 일 실시 예에서, 상기 프로세스 블록(804)은 상기 2D 이미지 정보 및 3D 형상 정보간의 매핑(mapping)(일 예로, 상기 2D 이미지 정보에 포함되어 있는 하나 혹은 그 이상의 결정된 2D 안면 랜드마크 포인트들과 상기 3D 형상 정보에 포함되어 있는 하나 혹은 그 이상의 상응하는 원근 프로젝트되는 3D 안면 랜드마크 포인트들간의 매핑)을 제공하는 과정을 포함한다. 프로세스 블록(805)은 상기 호모그래피 매핑을 기반으로 상기 제1 이미지에서 상기 안면의 라이브니스를(즉, 상기 제1 이미지에서 상기 안면이 실제 3D 안면인지 여부) 결정하는 과정을 포함한다. 일 실시 예에서, 상기 프로세스 블록(805)은 상기 매핑을 기반으로 상기 제1 이미지에서 상기 안면의 라이브니스를 식별하는 과정을 포함한다.
일 실시 예에서, 프로세스 블록들(801-805)은 상기 안면 라이브니스 검출 시스템(320)과 같은, 상기 안면 인식 시스템(300)의 하나 혹은 그 이상의 컴포넌트들에 의해 수행될 수 있다.
도 7은 상기 개시되어 있는 실시 예들을 구현하는데 유용한 컴퓨터 시스템(600)을 포함하는 정보 프로세싱 시스템을 도시하고 있는 하이-레벨 블록 다이아그램이다. 각 시스템(300, 310, 320)은 디스플레이 디바이스, 혹은 서버 디바이스에 통합될 수 있다. 상기 컴퓨터 시스템(600)은 하나 혹은 그 이상의 프로세서들(601)을 포함하고, (비디오, 그래픽들, 텍스트, 및 다른 데이터를 디스플레이하는) 전자 디스플레이 디바이스(602), 메인 메모리(603)(일 예로, 랜덤 억세스 메모리(random access memory: RAM)), 저장 디바이스(604)(일 예로, 하드 디스크 드라이브), 제거 가능 저장 디바이스(605)(일 예로, 제거 가능 저장 드라이브, 제거 가능 메모리 모듈, 마그네틱 테이프 드라이브, 광 디스크 드라이브, 그에 저장되어 있는 컴퓨터 소프트웨어 및/혹은 데이터를 가지는 컴퓨터 리드 가능 매체), 사용자 인터페이스 디바이스(606)(일 예로, 키보드, 터치 스크린, 키패드, 포인팅 디바이스(pointing device)), 및 통신 인터페이스(607)(일 예로, 모뎀, (이더넷 카드와 같은) 네트워크 인터페이스, 통신 포트, 혹은 PCMCIA 슬롯(slot) 및 카드)를 더 포함할 수 있다. 상기 통신 인터페이스(607)는 소트프웨어 및 데이터가 상기 컴퓨터 시스템 및 외부 디바이스들간에 전달되는 것을 허락한다. 상기 시스템(600)은 상기에서 설명한 바와 같은 디바이스들/모듈들(601)이 607을 통해 연결되는 통신 인프라스트럭쳐(infrastructure)(608)(일 예로, 통신 버스(bus), 크로스-오버 바(cross-over bar, 혹은 네트워크)를 더 포함한다.
통신 인터페이스(607)를 통해 전달되는 정보는 신호들을 운반하는 통신 링크를 통해 통신 인터페이스(607)에 의해 수신되는 것이 가능한 전자, 전자기, 광, 혹은 다른 신호들과 같은 신호들의 형태가 될 수 있거나, 혹은 유선 혹은 케이블, 광 섬유, 전화 선, 셀룰라 전화 링크, 무선 주파수(radio frequency: RF) 링크, 및/혹은 다른 통신 채널들을 사용하여 구현될 수 있다. 여기에서의 블록 다이아그램 및/혹은 플로우차트들을 나타내는 컴퓨터 프로그램 인스트럭션(instruction)들은 컴퓨터, 프로그램 가능 데이터 프로세싱 장치, 혹은 프로세싱 디바이스들에 로딩되어 그에서 수행되는 일련의 동작들이 컴퓨터 구현 프로세스를 생성하도록 할 수 있다. 일 실시 예들에서, 프로세스 800(도 6)에 대한 프로세싱 인스트럭션들은 상기 프로세서(601)에 의한 실행을 위해 상기 메모리(603), 저장 디바이스(604), 및 제거 가능 저장 디바이스(605) 상에 프로그램 인스트럭션들로서 저장될 수 있다.
실시 예들은 플로우차트 설명들, 및/혹은 방법들, 장치 (시스템들) 및 컴퓨터 프로그램 제품들을 참조하여 설명되었다. 그와 같은 설명들/다이아그램들의 각 블록 또는 그 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 구현될 수 있다. 프로세서로 제공될 때 상기 컴퓨터 프로그램 인스트럭션들은 상기 프로세서를 통해 실행하는 상기 인스트럭션들이 상기 플로우차트 및/혹은 블록 다이아그램에서 명시된 기능들/동작들을 구현하기 위한 수단을 생성할 수 있도록 머신을 생성한다. 상기 플로우차트/블록 다이아그램들에서의 각 블록은 하드웨어 및/또는 소프트웨어 모듈 또는 로직을 나타낼 수 있다. 대안적인 구현들에서, 상기 블록들에서 언급된 기능들은 도면들에서 언급된 순서를 벗어나서 동시에 발생할 수 있다.
상기 용어들 "컴퓨터 프로그램 매체", "컴퓨터 사용 가능 매체", "컴퓨터 리드 가능 매체" 및 "컴퓨터 프로그램 제품"은 일반적으로 메인 메모리, 보조 메모리, 이동식 저장 드라이브, 하드 디스크 드라이브에 인스톨된 하드 디스크 및 신호들과 같은 매체들을 나타내는데 사용된다. 이러한 컴퓨터 프로그램 제품들은 상기 컴퓨터 시스템에 소프트웨어를 제공하기 위한 수단이다. 상기 컴퓨터 리드 가능 매체는 상기 컴퓨터 시스템이 상기 컴퓨터 리드 가능 매체로부터 데이터, 인스트럭션들, 메시지들 또는 메시지 패킷들, 및 다른 컴퓨터 리드 가능 정보를 리드하는 것을 허락한다. 상기 컴퓨터 리드 가능 매체는, 일 예로, 플로피 디스크, ROM, 플래시 메모리, 디스크 드라이브 메모리, CD-ROM 및 다른 영구 저장 장치와 같은 비-휘발성 메모리를 포함할 수 있다. 이는 일 예로, 컴퓨터 시스템들간에 데이터 및 컴퓨터 인트스럭션들과 같은 정보를 전송하는 데 유용하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 리드 가능 매체에 저장될 수 있으며, 컴퓨터, 다른 프로그램 가능 데이터 프로세싱 장치 또는 다른 디바이스들이 특정 방식으로 기능하도록 지시할 수 있으며, 상기 컴퓨터 리드 가능 매체에 저장되어 있는 인스트럭션들은 상기 플로우차트 및/또는 블록 다이어그램 블록 혹은 블록들에 명시된 기능/액션을 구현하는 인스트럭션들을 포함하는 제품을 생성한다.
상기 실시 예들의 측면들은 시스템, 방법, 혹은 컴퓨터 프로그램 제품으로 구현될 수 있다는 것이 해당 기술 분야의 당업자에 의해 인식될 것이다. 따라서, 상기 실시 예들의 측면들은 완전한 하드웨어 실시 예, 완전한 소프트웨어 실시 예, 여기에서 "회로", "모듈", 혹은 "시스템"이라고 일반적으로 칭해질 수 있는 소프트웨어 및 하드웨어 측면들을 결합하는 실시예의 형태를 가질 수 있다. 또한, 상기 실시 예들의 측면들은 하나 혹은 그 이상의 컴퓨터 리드 가능 매체(들)에 구현되는 컴퓨터 리드 가능 프로그램 코드를 가지는 상기 하나 혹은 그 이상의 컴퓨터 리드 가능 매체(들)에 구현되는 컴퓨터 프로그램 제품의 형태를 가질 수 있다.
하나 혹은 그 이상의 컴퓨터 리드 가능 매체(들)의 임의의 결합이 사용될 수 있다. 상기 컴퓨터 리드 가능 매체는 컴퓨터 리드 가능 저장 매체가 될 수 있다. 컴퓨터 리드 가능 저장 매체는 일 예로, 전자, 마그네틱, 광, 전자기, 적외선, 혹은 반도체 시스템, 장치, 혹은 디바이스, 혹은 상기에서 설명한 바와 같은 것들의 임의의 적합한 결합이 될 수 있으며, 그렇다고 이에 한정되지는 않는다. 상기 컴퓨터 리드 가능 저장 매체의 보다 특정한 예제들 (불완전 리스트(non-exhaustive list))은 다음을 포함할 것이다: 하나 혹은 그 이상의 유선들을 가지는 전자 연결, 휴대용 컴퓨터 디스켓, 하드 디스크, 랜덤 억세스 메모리(random access memory: RAM), 리드-온니 메모리(read-only memory: ROM), 삭제 가능 프로그램 가능 리드-온니 메모리(erasable programmable read-only memory (EPROM) 혹은 플래쉬 메모리), 광 섬유, 휴대용 컴팩트 디스크 리드-온니 메모리(compact disc read-only memory: CD-ROM), 강 저장 디바이스, 마그네틱 저장 디바이스, 혹은 상기에서 설명한 바와 같은 것들의 임의의 적합한 결합. 이 문서의 컨텍스트에서, 컴퓨터 리드 가능 저장 매체는 인스트럭션 실행 시스템, 장치, 혹은 디바이스에 의한 사용을 위한, 혹은 인스트럭션 실행 시스템, 장치, 혹은 디바이스와의 연결에서의 사용을 위한 프로그램을 포함하거나 혹은 저장할 수 있는 임의의 유형의(tangible) 저장 매체가 될 수 있다. 일 실시 예에서, 라이브니스(liveness) 검출을 위한 방법을 수행하는 인스트럭션들을 포함하는 비-일시적 컴퓨터 리드가능 저장 매체에 있어서, 상기 방법은: 사용자의 안면에 상응하는 부분을 포함하는 제1 이미지를 수신하는 과정; 상기 제1 이미지를 기반으로 하나 혹은 그 이상의 2차원(two-dimensional: 2D) 안면 랜드마크 포인트(facial landmark point)들을 결정하는 과정; 상기 하나 혹은 그 이상의 결정된 2D 안면 랜드마크 포인트들과 상기 사용자에 대한 3차원(three-dimensional: 3D) 안면 모델에서의 하나 혹은 그 이상의 상응하는 3D 안면 랜드마크 포인트들을 기반으로 상기 제1 이미지에서 상기 안면의 3D 포즈(pose)를 결정하는 과정; 상기 하나 혹은 그 이상의 결정된 2D 안면 랜드마크 포인트들과 상기 3D 포즈를 기반으로 원근 프로젝트되는 하나 혹은 그 이상의 상응하는 3D 안면 랜드마크 포인트들간의 호모그래피(homography) 매핑을 결정하는 과정; 및 상기 호모그래피 매핑을 기반으로 상기 제1 이미지에서 상기 안면의 라이브니스를 결정하는 과정을 포함한다.
하나 혹은 그 이상의 실시 예들의 측면들에 대한 동작들을 수행하는 컴퓨터 프로그램 코드는 자바(Java), 소몰토크(Smalltalk), C++ 등과 같은 오브젝트 지향 프로그래밍 언어(object oriented programming language)와, 상기 "C" 프로그래밍 언어와 같은 일반적인 절차 프로그래밍 언어(procedural programming language)들, 혹은 유사한 프로그래밍 언어들을 포함하는 하나 혹은 그 이상의 프로그래핑 언어들의 임의의 결합으로 라이트될 수 있다. 상기 프로그램 코드는 상기 사용자의 컴퓨터 상에서 전체적으로, 상기 사용자의 컴퓨터 상에서 부분적으로, 스탠드-얼론(stand-alone) 소프트웨어 패키지로서, 상기 사용자의 컴퓨터 상에서 부분적으로, 원격 컴퓨터 상에서 부분적으로, 혹은 상기 원격 컴퓨터, 혹은 서버 상에서 전체적으로 실행될 수 있다. 후자의 시나리오에서, 상기 원격 컴퓨터는 근거리 통신 네트워크(local area network: LAN) 혹은 광역 네트워크(wide area network: WAN)를 포함하는 임의의 타입의 네트워크를 통해서 상기 사용자의 컴퓨터에 연결될 수 있거나, 혹은 상기 연결은 (일 예로, 상기 인터넷 서비스 제공자를 사용하여 상기 인터넷을 통해) 외부 컴퓨터에 대해 이루어질 수 있다.
하나 혹은 그 이상의 실시 예들의 측면들은 플로우차트 설명들, 및/혹은 방법들, 장치 (시스템들) 및 컴퓨터 프로그램 제품들을 참조하여 상기에서 설명되고 있다. 상기 플로우차트 도시들 및/혹은 블록 다이아그램들, 및 상기 플로우차트 도시들 및/혹은 블록 다이아그램들이 블록들의 결합들의 각 블록은 컴퓨터 프로그램 인스트럭션들에 의해 구현될 수 있다는 것이 이해될 수 있을 것이다. 이런 컴퓨터 프로그램 인스트럭션들은 특수 목적 컴퓨터, 혹은 머신(machine)을 생성하는 다른 프로그램 가능 데이터 프로세싱 장치로 제공될 수 있으며, 따라서 상기 컴퓨터 혹은 다른 프로그램 가능 데이터 프로세싱 장치의 프로세서를 통해 실행되는 상기 인스트럭션들은 상기 플로우차트 및/혹은 블록 다아이그램 블록 혹은 블록들에서 명시되어 있는 기능들/동작들을 구현하는 수단을 생성한다.
이런 컴퓨터 프로그램 인스트럭션들은 또한 컴퓨터, 다른 프로그램 가능 데이터 프로세싱 장치, 혹은 특정 방식으로 기능하는 다른 디바이스들을 지시할 수 있는 컴퓨터 리드 가능 매체에 저장될 수 있고, 따라서 상기 컴퓨터 리드 가능 매체에 저장되어 있는 인스트럭션들은 상기 플로우차트 및/혹은 블록 다아이그램 블록 혹은 블록들에서 명시되어 있는 기능/동작을 구현하는 인스트럭션들을 포함하는 제조 물품을 생성한다.
상기 컴퓨터 프로그램 인스트럭션들은 또한 컴퓨터, 다른 프로그램 가능 데이터 프로세싱 장치, 또는 다른 디바이스들에 로딩되어 일련의 동작 단계들이 상기 컴퓨터, 다른 프로그램 가능 장치, 또는 다른 디바이스들에서 수행되어 컴퓨터 구현 프로세스를 생성하게 할 수 있으며, 따라서 상기 컴퓨터, 또는 다른 프로그램 가능 장치에서 실행되는 상기 인스트럭션들은 상기 플로우차트 및/또는 블록 다이아그램 블록 혹은 블록들에서 명시된 기능들/동작들을 구현하기 위한 프로세스들을 제공한다.
도면들에서의 상기 플로우차트 및 블록 다이아그램들은 다양한 실시 예들에 따른 시스템들, 방법들 및 컴퓨터 프로그램 제품들의 가능한 구현들의 아키텍처, 기능성 및 동작을 도시하고 있다. 이와 관련하여, 상기 플로우차트 혹은 블록 다이아그램들에서의 각 블록은 상기 명시된 논리 기능(들)을 구현하기 위한 하나 혹은 그 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트, 또는 인스트럭션들의 일부를 나타낼 수 있다. 몇몇 대안적인 구현 예들에서, 상기 블록에서 기재된 기능들은 도면들에 기재된 순서를 벗어나서 발생할 수 있다. 일 예로, 연속으로 도시되어 있는 2개의 블록들은 사실상 실질적으로 동시에 실행될 수 있거나, 또는 상기 블록들은 상기 관련되는 기능에 따라 때때로 역순으로 실행될 수 있다. 또한, 상기 블록 다이아그램들 및/또는 플로우차트 도시의 각 블록 및 상기 블록 다이아그램들 및/또는 플로우차트 도시의 블록들의 결합들은 상기 명시된 기능들 혹은 동작들을 수행하거나 혹은 특수 목적 하드웨어 및 컴퓨터 인스트럭션들의 결합들을 수행하는 특수 목적 하드웨어-기반 시스템들에 의해 구현될 수 있다는 것에 유의하여야만 할 것이다.
단수의 엘리먼트에 대한 청구항들에서의 참조들은 명확하게 그렇게 명시하지 않을 경우, "오직 하나(one and only)"를 의미하는 의도를 가지는 것은 아니며, 오히려 "하나 혹은 그 이상(one or more)"을 의미하는 의도를 가진다. 해당 기술 분야의 당업자들에 의해 현재 알려져 있는 혹은 이후에 알려지게 될, 상기에서 설명한 바람직한 실시 예의 엘리먼트들에 대한 모든 구조적 및 기능적 균등물들은 제시되는 청구항들에 의해 포함되도록 하는 의도를 가진다. 여기에서의 어떤 청구항도 상기 엘리먼트가 구문 "수단(means for)" 혹은 "단계(step for)"를 명시적으로 언급하지 않는 한, 35 U.S.C.의 섹션 112의 여섯 번째 단락에 따라 해석되지 않을 것이다.
여기에서 사용되는 용어는 단지 특정한 실시 예들을 설명하기 위한 목적으로 존재하며, 본 발명을 한정하려는 의도를 가지지 않는다. 여기에서 사용되는 바와 같은, 단수의 형태들 "한(a)", "한(an)", 및 "상기(the)"는 문맥 상 명백하게 다르게 지시하지 않는 한, 복수의 형식들을 포함하는 의도를 가진다. 또한, 본 명세서에서 사용될 때 "포함한다(comprises)" 및/또는 "포함하는(comprising)"이라는 용어들은 언급된 특징들, 정수들, 단계들, 동작들, 엘리먼트들, 및/또는 컴포넌트들의 존재를 명시하지만, 하나 혹은 그 이상의 다른 특징들, 정수들, 동작들, 엘리먼트들, 컴포넌트들, 및/혹은 그들의 그룹들의 존재 혹은 추가를 배제하는 것은 아니라는 것이 이해될 것이다.
하기의 청구항들에 포함되어 있는 모든 means 혹은 step plus function 엘리먼트들의 상응하는 구조들, 재료들, 동작들, 및 균등물들은 구체적으로 청구되는 다른 청구되는 엘리먼트들과 결합하여 상기 기능을 수행하는 임의의 구조, 재료, 혹은 동작을 포함하는 의도를 가진다. 상기 실시 예들의 설명은 예시 및 설명의 목적들을 위해 제시되었지만, 개시되어 있는 형태의 실시 예들에 대해 철저하게 의도되는 것은 아니고 또한 그로 한정되는 것도 아니다. 많은 수정들 및 변경들이 본 발명의 범위 및 사상으로부터 벗어남이 없이 해당 기술분야의 당업자들에게 명백할 것이다.
상기 실시 예들이 그 특정 버전들을 참조하여 설명되었지만; 다른 버전들도 가능하다. 따라서, 첨부된 청구항들의 사상 및 범위는 여기에 포함되어 있는 바람직한 버전들의 설명으로 제한되어서는 안 된다.

Claims (15)

  1. 안면 라이브니스 검출(face liveness detection)을 위한 방법에 있어서,
    사용자의 안면에 상응하는 부분을 포함하는 제1 이미지를 수신하는 과정;
    상기 제1 이미지를 기반으로 상기 사용자의 안면에 관련되는 2차원(two-dimensional: 2D) 이미지 정보를 획득하는 과정;
    상기 사용자에 대한 3차원(three-dimensional: 3D) 안면 모델을 기반으로 상기 사용자의 안면의 3D 형상 정보를 획득하는 과정;
    상기 2D 이미지 정보 및 3D 형상 정보간의 매핑(mapping)을 제공하는 과정; 및
    상기 매핑을 기반으로 상기 제1 이미지에서 상기 안면의 라이브니스를 식별하는 과정을 포함하는 안면 라이브니스 검출을 위한 방법.
  2. 제1항에 있어서,
    상기 제1 이미지를 기반으로 하나 혹은 그 이상의 2차원(two-dimensional: 2D) 안면 랜드마크 포인트(facial landmark point)들을 결정하는 과정;
    상기 하나 혹은 그 이상의 결정된 2D 안면 랜드마크 포인트들과 상기 사용자에 대한 3차원(three-dimensional: 3D) 안면 모델에서의 하나 혹은 그 이상의 상응하는 3D 안면 랜드마크 포인트들을 기반으로 상기 제1 이미지에서 상기 안면의 3D 포즈(pose)를 결정하는 과정;
    상기 하나 혹은 그 이상의 결정된 2D 안면 랜드마크 포인트들과 상기 3D 포즈를 기반으로 원근 프로젝트되는(perspectively projected) 하나 혹은 그 이상의 상응하는 3D 안면 랜드마크 포인트들간의 호모그래피(homography) 매핑을 결정하는 과정; 및
    상기 호모그래피 매핑을 기반으로 상기 제1 이미지에서 상기 안면의 라이브니스를 결정하는 과정을 더 포함하는 안면 라이브니스 검출을 위한 방법.
  3. 제2항에 있어서,
    이미지 센서에 대한 하나 혹은 그 이상의 파라미터들을 기반으로 상기 하나 혹은 그 이상의 결정된 2D 랜드마크 포인트들을 하나 혹은 그 이상의 다른 2D 안면 랜드마크 포인트들로 변환하여 상기 하나 혹은 그 이상의 다른 2D 안면 랜드마크 포인트들을 포함하는 제2 이미지를 생성하는 과정을 더 포함하며;
    상기 호모그래피 매핑은 상기 제2 이미지를 더 기반으로 하는 안면 라이브니스 검출을 위한 방법.
  4. 제2항에 있어서,
    제 1 사용자를 등록하기 위한 요청을 수신하는 과정, 상기 요청은 다른 포즈들에서 상기 제 1 사용자의 다수의 안면 이미지들을 포함하며;
    상기 다수의 안면 이미지들에서 2D 안면 랜드마크 포인트들의 집합을 결정 및 추적하는 과정; 및
    상기 2D 안면 랜드마크 포인트들의 집합 및 이미지 센서에 대한 하나 혹은 그 이상의 파라미터들을 기반으로 상기 제1 사용자에 대한 3D 안면 모델을 생성하는 과정을 더 포함하는 안면 라이브니스 검출을 위한 방법.
  5. 제2항에 있어서,
    상기 3D 포즈 및 호모그래피 매핑을 프로세싱하여 상기 하나 혹은 그 이상의 결정된 2D 안면 랜드마크 포인트들과 상기 하나 혹은 그 이상의 상응하는 원근 프로젝트되는 3D 안면 랜드마크 포인트들간의 거리를 감소시키는 과정을 더 포함하는 안면 라이브니스 검출을 위한 방법.
  6. 제2항에 있어서,
    상기 제1 이미지에서 상기 안면의 라이브니스를 결정하는 과정은 신원 행렬로부터 상기 호모그래피 매핑의 편차를 결정하는 과정을 포함하는 안면 라이브니스 검출을 위한 방법.
  7. 제2항에 있어서,
    상기 호모그래피 매핑을 결정하는 과정은 이미지 센서에 대한 하나 혹은 그 이상의 파라미터들을 기반으로 상기 호모그래피 매핑을 분해하는 과정을 포함하는 안면 라이브니스 검출을 위한 방법.
  8. 제2항에 있어서,
    상기 제1 이미지를 기반으로 안면 검증을 수행하여 상기 사용자가 등록된 사용자라고 결정하는 과정; 및
    상기 사용자가 등록된 사용자라고 결정하는 것에 대한 응답으로 상기 사용자에 대한 3D 안면 모델을 획득하는 과정을 더 포함하는 안면 라이브니스 검출을 위한 방법.
  9. 안면 라이브니스 검출(face liveness detection)을 위한 전자 디바이스에 있어서,
    적어도 하나의 프로세서; 및
    상기 적어도 하나에 의해 실행될 때 상기 적어도 하나의 프로세서가:
    사용자의 안면을 포함하는 제1 이미지를 수신하는 동작;
    상기 제1 이미지를 기반으로 상기 사용자의 안면에 관련되는 2차원(two-dimensional: 2D) 이미지 정보를 획득하는 동작;
    상기 사용자에 대한 3차원(three-dimensional: 3D) 안면 모델을 기반으로 상기 사용자의 안면의 3D 형상 정보를 획득하는 동작;
    상기 2D 이미지 정보 및 3D 형상 정보간의 매핑(mapping)을 식별하고; 및
    상기 매핑을 기반으로 상기 제1 이미지에서 상기 안면의 라이브니스를 식별하는 동작을 포함하는 동작들을 수행하도록 하는 인스트럭션(instruction)들을 저장하는 비-일시적 프로세서-리드가능 메모리 디바이스를 포함하는 안면 라이브니스 검출을 위한 전자 디바이스.
  10. 제9항에 있어서,
    상기 동작들은:
    상기 제1 이미지를 기반으로 하나 혹은 그 이상의 2차원(two-dimensional: 2D) 안면 랜드마크 포인트(facial landmark point)들을 결정하는 동작;
    상기 하나 혹은 그 이상의 결정된 2D 안면 랜드마크 포인트들과 상기 사용자에 대한 3차원(three-dimensional: 3D) 안면 모델에서의 하나 혹은 그 이상의 상응하는 3D 안면 랜드마크 포인트들을 기반으로 상기 제1 이미지에서 상기 안면의 3D 포즈(pose)를 결정하는 동작;
    상기 하나 혹은 그 이상의 결정된 2D 안면 랜드마크 포인트들과 상기 3D 포즈를 기반으로 원근 프로젝트되는(perspectively projected) 하나 혹은 그 이상의 상응하는 3D 안면 랜드마크 포인트들간의 호모그래피(homography) 매핑을 결정하는 동작; 및
    상기 호모그래피 매핑을 기반으로 상기 제1 이미지에서 상기 안면의 라이브니스를 결정하는 동작을 더 포함하는 안면 라이브니스 검출을 위한 전자 디바이스.
  11. 제10항에 있어서,
    상기 동작들은:
    이미지 센서에 대한 하나 혹은 그 이상의 파라미터들을 기반으로 상기 하나 혹은 그 이상의 결정된 2D 랜드마크 포인트들을 하나 혹은 그 이상의 다른 2D 안면 랜드마크 포인트들로 변환하여 상기 하나 혹은 그 이상의 다른 2D 안면 랜드마크 포인트들을 포함하는 제2 이미지를 생성하는 동작을 더 포함하며;
    상기 호모그래피 매핑은 상기 제2 이미지를 더 기반으로 하는 안면 라이브니스 검출을 위한 전자 디바이스.
  12. 제10항에 있어서,
    상기 동작들은:
    새로운 사용자를 등록하기 위한 요청을 수신하는 동작, 상기 요청은 다른 포즈들에서 상기 새로운 사용자의 다수의 안면 이미지들을 포함하며;
    상기 다수의 안면 이미지들에서 2D 안면 랜드마크 포인트들의 집합을 결정 및 추적하는 동작; 및
    상기 2D 안면 랜드마크 포인트들의 집합 및 이미지 센서에 대한 하나 혹은 그 이상의 파라미터들을 기반으로 상기 새로운 사용자에 대한 3D 안면 모델을 생성하는 동작을 더 포함하는 안면 라이브니스 검출을 위한 전자 디바이스.
  13. 제10항에 있어서,
    상기 동작들은:
    상기 3D 포즈 및 호모그래피 매핑을 프로세싱하여 상기 하나 혹은 그 이상의 결정된 2D 안면 랜드마크 포인트들과 상기 하나 혹은 그 이상의 상응하는 원근 프로젝트되는 3D 안면 랜드마크 포인트들간의 거리를 감소시키는 과정을 더 포함하는 안면 라이브니스 검출을 위한 전자 디바이스.
  14. 제10항에 있어서,
    상기 제1 이미지에서 상기 안면의 라이브니스를 결정하는 동작은 신원 행렬로부터 상기 호모그래피 매핑의 편차를 결정하는 동작을 포함하고, 상기 호모그래피 매핑을 결정하는 동작은 이미지 센서에 대한 하나 혹은 그 이상의 파라미터들을 기반으로 호모그래피 매핑을 분해하는 동작을 포함하는 안면 라이브니스 검출을 위한 전자 디바이스.
  15. 제9항에 있어서,
    상기 동작들은:
    상기 제1 이미지를 기반으로 안면 검증을 수행하여 상기 사용자가 등록된 사용자라고 결정하는 동작; 및
    상기 사용자가 등록된 사용자라고 결정하는 것에 대한 응답으로 상기 사용자에 대한 3D 안면 모델을 획득하는 동작을 더 포함하는 안면 라이브니스 검출을 위한 전자 디바이스.
KR1020207024851A 2018-02-26 2019-02-26 안면 인식을 위한 방법 및 시스템 KR20200116138A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/905,609 US10776609B2 (en) 2018-02-26 2018-02-26 Method and system for facial recognition
US15/905,609 2018-02-26
PCT/KR2019/002317 WO2019164379A1 (en) 2018-02-26 2019-02-26 Method and system for facial recognition

Publications (1)

Publication Number Publication Date
KR20200116138A true KR20200116138A (ko) 2020-10-08

Family

ID=67685904

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207024851A KR20200116138A (ko) 2018-02-26 2019-02-26 안면 인식을 위한 방법 및 시스템

Country Status (5)

Country Link
US (1) US10776609B2 (ko)
EP (1) EP3721380A4 (ko)
KR (1) KR20200116138A (ko)
CN (1) CN111788572A (ko)
WO (1) WO2019164379A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102393543B1 (ko) 2020-11-02 2022-05-03 김효린 안면 인증 딥러닝 모델을 스마트폰 디바이스 내에서 학습하기 위한 안면 데이터 수집 및 처리 방법과 그 방법을 수행하는 디바이스

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10552986B1 (en) * 2018-07-20 2020-02-04 Banuba Limited Computer systems and computer-implemented methods configured to track multiple eye-gaze and heartrate related parameters during users' interaction with electronic computing devices
JP6956051B2 (ja) * 2018-09-03 2021-10-27 株式会社東芝 画像処理装置、運転支援システム、画像処理方法及びプログラム
CN111382596A (zh) * 2018-12-27 2020-07-07 鸿富锦精密工业(武汉)有限公司 人脸识别方法、装置及计算机存储介质
CN110245612A (zh) * 2019-06-14 2019-09-17 百度在线网络技术(北京)有限公司 人脸图像的检测方法和装置
US10803301B1 (en) * 2019-08-02 2020-10-13 Capital One Services, Llc Detecting fraud in image recognition systems
KR20210108082A (ko) 2020-02-25 2021-09-02 삼성전자주식회사 위상 차를 이용하는 라이브니스 검출 방법 및 장치
KR20210128274A (ko) 2020-04-16 2021-10-26 삼성전자주식회사 라이브니스 검사 방법 및 장치
CN111753750B (zh) * 2020-06-28 2024-03-08 中国银行股份有限公司 活体检测方法及装置、存储介质及电子设备
CN112559332B (zh) * 2020-07-13 2023-04-07 支付宝(杭州)信息技术有限公司 一种生物特征识别的攻击测试方法、装置及设备
US11694480B2 (en) * 2020-07-27 2023-07-04 Samsung Electronics Co., Ltd. Method and apparatus with liveness detection
IL281554B2 (en) * 2021-03-16 2023-02-01 Emza Visual Sense Ltd Apparatus and method for detecting and outputting three-dimensional objects
CN113642428B (zh) * 2021-07-29 2022-09-27 北京百度网讯科技有限公司 人脸活体检测方法、装置、电子设备及存储介质
CN113705428A (zh) * 2021-08-26 2021-11-26 北京市商汤科技开发有限公司 活体检测方法及装置、电子设备及计算机可读存储介质

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100851981B1 (ko) 2007-02-14 2008-08-12 삼성전자주식회사 비디오 영상에서 실 객체 판별 방법 및 장치
KR101700595B1 (ko) 2010-01-05 2017-01-31 삼성전자주식회사 얼굴 인식 장치 및 그 방법
US8675926B2 (en) 2010-06-08 2014-03-18 Microsoft Corporation Distinguishing live faces from flat surfaces
CN101894254B (zh) 2010-06-13 2013-01-09 南开大学 一种基于等高线法的三维人脸识别方法
CN101923641B (zh) 2010-09-09 2012-08-08 北京交通大学 一种改进的人脸识别方法
CN101976339B (zh) 2010-11-12 2015-07-15 北京邮电大学 一种用于人脸识别的局部特征提取方法
EP2689396A4 (en) * 2011-03-21 2015-06-03 Intel Corp PROCESS FOR ADVANCED CHANGES WITH 3D FACE MODELING AND MARKING ALIGNMENT
US8457367B1 (en) 2012-06-26 2013-06-04 Google Inc. Facial recognition
US8856541B1 (en) 2013-01-10 2014-10-07 Google Inc. Liveness detection
US9842423B2 (en) 2013-07-08 2017-12-12 Qualcomm Incorporated Systems and methods for producing a three-dimensional face model
US9202119B2 (en) 2013-10-18 2015-12-01 Daon Holdings Limited Methods and systems for determining user liveness
CN105096377B (zh) 2014-05-14 2019-03-19 华为技术有限公司 一种图像处理方法和装置
WO2016070300A1 (en) 2014-11-07 2016-05-12 Xiaoou Tang System and method for detecting genuine user
US10134177B2 (en) * 2015-01-15 2018-11-20 Samsung Electronics Co., Ltd. Method and apparatus for adjusting face pose
CN104915649B (zh) 2015-06-04 2018-12-14 南京理工大学 一种应用于人脸识别的活体检测方法
US9600715B2 (en) * 2015-06-26 2017-03-21 Intel Corporation Emotion detection system
EP3951750A1 (en) 2015-08-10 2022-02-09 Yoti Holding Limited Liveness detection safe against replay attack
US10489973B2 (en) * 2015-08-17 2019-11-26 Cubic Corporation 3D face reconstruction from gate camera
CN105205455B (zh) 2015-08-31 2019-02-26 李岩 一种移动平台上人脸识别的活体检测方法及系统
US9898674B2 (en) * 2015-12-10 2018-02-20 International Business Machines Corporation Spoof detection for facial recognition
CN105590097B (zh) 2015-12-17 2019-01-25 重庆邮电大学 暗视觉条件下双摄像头协同实时人脸识别安防系统及方法
US10289822B2 (en) 2016-07-22 2019-05-14 Nec Corporation Liveness detection for antispoof face recognition

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102393543B1 (ko) 2020-11-02 2022-05-03 김효린 안면 인증 딥러닝 모델을 스마트폰 디바이스 내에서 학습하기 위한 안면 데이터 수집 및 처리 방법과 그 방법을 수행하는 디바이스

Also Published As

Publication number Publication date
WO2019164379A1 (en) 2019-08-29
EP3721380A4 (en) 2021-01-27
US10776609B2 (en) 2020-09-15
US20190266388A1 (en) 2019-08-29
CN111788572A (zh) 2020-10-16
EP3721380A1 (en) 2020-10-14

Similar Documents

Publication Publication Date Title
KR20200116138A (ko) 안면 인식을 위한 방법 및 시스템
US11481878B2 (en) Content-based detection and three dimensional geometric reconstruction of objects in image and video data
US9779296B1 (en) Content-based detection and three dimensional geometric reconstruction of objects in image and video data
EP3525165B1 (en) Method and apparatus with image fusion
JP5445460B2 (ja) なりすまし検知システム、なりすまし検知方法及びなりすまし検知プログラム
JP6629513B2 (ja) ライブネス検査方法と装置、及び映像処理方法と装置
US8908911B2 (en) Redundant detection filtering
EP2591460A1 (en) Method, apparatus and computer program product for providing object tracking using template switching and feature adaptation
CN110111241B (zh) 用于生成动态图像的方法和装置
WO2021218568A1 (zh) 图像深度确定方法及活体识别方法、电路、设备和介质
US20220343660A1 (en) System for item recognition using computer vision
US11244182B2 (en) Spoof detection by estimating subject motion from captured image frames
CN114742866A (zh) 图像配准方法、装置、存储介质及电子设备
JP6086491B2 (ja) 画像処理装置およびそのデータベース構築装置
JP6931267B2 (ja) 原画像を目標画像に基づいて変形した表示画像を生成するプログラム、装置及び方法
CN111429353A (zh) 图像拼接及全景图拼接方法和装置、存储介质、电子设备
US20220392256A1 (en) Authentication device, registration device, authentication method, registration method, and storage medium
US11663752B1 (en) Augmented reality processing device and method
TWI703504B (zh) 序號檢測系統
KR102665968B1 (ko) 블러 추정 방법 및 장치
CN116778467A (zh) 远距离车牌识别方法、系统、摄像头及可读存储介质
CN112927142A (zh) 一种基于时域插值的高速高分辨率视频生成方法和装置
JP2019008441A (ja) 情報処理装置及びプログラム
JP2018013854A (ja) 追跡装置および追跡方法

Legal Events

Date Code Title Description
A201 Request for examination