KR20180098367A - 얼굴 생체 검증 방법 및 장치 - Google Patents

얼굴 생체 검증 방법 및 장치 Download PDF

Info

Publication number
KR20180098367A
KR20180098367A KR1020187021514A KR20187021514A KR20180098367A KR 20180098367 A KR20180098367 A KR 20180098367A KR 1020187021514 A KR1020187021514 A KR 1020187021514A KR 20187021514 A KR20187021514 A KR 20187021514A KR 20180098367 A KR20180098367 A KR 20180098367A
Authority
KR
South Korea
Prior art keywords
feature point
error
face
face image
transformation matrix
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
KR1020187021514A
Other languages
English (en)
Other versions
KR102120241B1 (ko
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 KR20180098367A publication Critical patent/KR20180098367A/ko
Application granted granted Critical
Publication of KR102120241B1 publication Critical patent/KR102120241B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • G06K9/00268
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/757Matching configurations of points or features
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/161Detection; Localisation; Normalisation
    • G06V40/167Detection; Localisation; Normalisation using comparisons between temporally consecutive images
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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 OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • G06T2207/30201Face

Landscapes

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

Abstract

본 출원은 살아 있는 인간 얼굴 검증 방법 및 장치를 개시한다. 상기 장치는 적어도 2대의 카메라에 의해 캡처된 얼굴 이미지를 획득하고, 미리 설정된 얼굴 특징점에 따라 얼굴 이미지에 대해 특징점 등록을 수행하여 얼굴 이미지의 대응하는 특징점 조합을 얻는다. 특징점 조합 사이에서 호모그래피 변환 행렬을 갖춘 후에, 상기 장치는 호모그래피 변환 행렬을 사용하여 특징점 조합의 변환 에러를 계산하여 에러 계산 결과를 얻고, 에러 계산 결과에 따라 얼굴 이미지의 살아 있는 인간 얼굴 검증을 수행한다. 본 출원의 실시 예는 카메라를 캘리브레이션할 필요가 없으므로, 생체 판단 알고리즘의 계산량이 감소될 수 있으며; 또한, 카메라가 자유롭게 배치될 수 있고, 이에 따라 생체 검출의 유연성 및 편리성이 증가될 수 있다.

Description

얼굴 생체 검증 방법 및 장치
본 출원은 2016년 4월 21일에 중화 인민 공화국의 국가 지적 재산권 국에 "살아 있는 얼굴 검증 방법 및 장치(LIVING FACE VERIFICATION METHOD AND DEVICE)"의 명칭으로 출원된 중국 특허 출원 제201610252267.9호에 대한 우선권을 주장하는 바이며, 상기 문헌의 내용은 그 전체로서 원용에 의해 본 명세서에 포함된다.
본 출원은 얼굴 인식의 기술 분야에 속하며, 더욱 상세하게 말하자면, 살아 있는 인간 얼굴 검증 방법 및 장치에 관한 것이다.
생물학적 인식 기술의 발달에 따라, 얼굴 인식 기술은 성숙해 가고 있다. 액세스 제어 시스템 및 로그인(login) 시스템과 같은 일부 얼굴 인식 시스템의 경우, 사용자는 사진(picture)과 같은 불법적인 방법으로 시스템을 속일 수 있다. 따라서, 생체 검출(living body detection)은 그러한 시스템의 안전성을 보장하는 수단이 되었다. 생체 검출은 입력된 얼굴이 평면 가짜 바디(plane false body) 또는 실제 살아있는 인간 얼굴인지를 판단(judge)하는 기술이다.
기존의 멀티 카메라 생체 검출 기술은 통상 수평으로 배치된 좌우 쌍안 카메라를 채용하고 있다. 쌍안 캘리브레이션(binocular calibration)이 행해진 후, 좌측 이미지와 우측 이미지의 스테레오 매칭이 행해짐으로써, 얼굴 영역의 깊이 정보가 복원되고, 얼굴 영역의 정규 깊이 정보(regular depth information)에 따라, 실제 사람의 얼굴과 평면 가짜 바디(예를 들어,(휴대 전화 또는 태블릿 컴퓨터와 같은) 모바일 장치(device)에서 재생되는 사진 또는 비디오 또는 인쇄된 얼굴 종이) 가 구별된다.
전술한 기술적 문제를 해결하기 위해, 본 출원의 실시 예는 다음의 기술적 해결 방안을 제공한다.
살아 있는 얼굴 검증 방법이 개시되며, 상기 방법은,
적어도 2대의 카메라에 의해 캡처된 얼굴 이미지를 획득하는(acquire) 단계;
미리 설정된 얼굴 특징점에 따라 상기 얼굴 이미지에 대해 특징점 등록을 수행하여 상기 얼굴 이미지의 대응하는 특징점 조합을 얻는(obtain) 단계;
미리 설정된 알고리즘을 활용(utilize)하여 상기 특징점 조합 사이에서 호모그래피 변환 행렬(homography transformation matrix)을 갖추는(fit out) 단계;
상기 호모그래피 변환 행렬을 사용하여 상기 특징점 조합의 변환 에러(error)를 계산하여 에러 계산 결과를 얻는 단계; 및
상기 에러 계산 결과에 따라 상기 얼굴 이미지의 살아 있는 인간 얼굴 검증을 수행하는 단계를 포함한다.
살아 있는 얼굴 검증 장치가 개시되며, 상기 장치는,
적어도 2대의 카메라에 의해 캡처된 얼굴 이미지를 획득하도록 구성된 획득 유닛;
미리 설정된 얼굴 특징점에 따라 상기 얼굴 이미지에 대해 특징점 등록을 수행하여 상기 얼굴 이미지의 대응하는 특징점 조합을 얻도록 구성된 특징점 등록 유닛;
미리 설정된 알고리즘을 활용하여 상기 특징점 조합 사이에서 호모그래피 변환 행렬을 갖추도록 구성된 피팅 유닛;
상기 호모그래피 변환 행렬을 사용하여 상기 특징점 조합의 변환 에러를 계산하여 에러 계산 결과를 얻도록 구성된 계산 유닛; 및
상기 에러 계산 결과에 따라 상기 얼굴 이미지의 살아 있는 인간 얼굴 검증을 수행하는 동작을 수행하도록 구성된 검증 유닛을 포함한다.
기존의 기술과 비교하여, 본 출원의 실시 예는 카메라를 캘리브레이션(calibration)할 필요가 없으며, 그래서 기존의 기술에서의 카메라 캘리브레이션의 프로세스에서의 캘리브레이션 에러가 제거된다. 본 출원의 실시 예의 방법은, 캡처된 얼굴 이미지에 대해 특징점 매칭(matching)을 직접 수행하고, 호모그래피 변환 행렬을 갖추고, 호모그래피 변환 행렬을 사용하여 에러 계산 결과를 얻은 후에, 살아 있는 인간 얼굴 검증을 수행하며, 이에 따라 기존 생체 검출 기술과 비교하여, 상기 방법은 생체 판단 알고리즘의 계산량을 대폭 감소시키고, 생체 검출의 속도 및 실시간 성능을 증가시킨다.
도면을 참조하여, 본 출원의 기술적인 해결 방안 및 다른 유리한 효과가 명백해질 수 있도록, 본 출원의 특정 실시 예가 아래에 상세히 설명될 것이다.
도 1a는 본 출원의 실시 예에 의해 제공되는 살아 있는 인간 얼굴 검증 방법의 장면(scene) 개략도이다.
도 1b는 본 출원의 실시 예에 의해 제공되는 살아 있는 인간 얼굴 검증 방법의 흐름도이다.
도 2a는 본 출원의 실시 예에 의해 제공되는 살아 있는 인간 얼굴 검증 방법의 흐름도이다.
도 2b는 본 출원의 실시 예에 의해 제공되는 살아 있는 인간 얼굴 검증 방법에서의 특징점 등록의 개략도이다.
도 3a는 본 출원의 실시 예에 의해 제공되는 살아 있는 인간 얼굴 검증 장치의 구조 개략도이다.
도 3b는 본 출원의 실시 예에 의해 제공되는 살아 있는 인간 얼굴 검증 장치의 다른 구조 개략도이다.
도 4는 본 출원의 실시 예에 의해 제공되는 서버의 구조 개략도이다.
도면을 참조하면, 동일한 구성 요소(component) 심볼은 동일한 구성 요소를 나타낸다. 본 출원의 원리는 적절한 컴퓨팅 환경에서 구현됨으로써 설명된다. 아래에서 설명되는 것은 본 출원의 예시적인 특정 실시 예에 기반하고 있으며, 여기서 자세히 설명되지 않은 본 출원의 다른 특정 실시 예에 대한 한정으로 간주되어서는 안된다.
다음의 설명에서, 본 출원의 특정 실시 예들은 달리 지시되지 않는 한, 하나 이상의 컴퓨터 및 심볼에 의해 실행되는 단계들을 참조하여 설명될 것이다. 따라서, 이러한 단계 및 동작은 하드웨어 및 소프트웨어에 의해 구현될 수 있으며, 컴퓨터 또는 프로세서에 의해 실행될 수 있다.
여기서 사용되는 "모듈"이라는 용어는 컴퓨팅 시스템상에서 실행되는 소프트웨어 객체로 간주될 수 있다. 여기에 기술되는 상이한 구성 요소, 모듈, 엔진 및 서비스는 컴퓨팅 시스템상에서의 구현 객체로 간주될 수 있다.
본 출원의 실시 예는 살아 있는 인간 얼굴 검증 방법 및 장치를 제공한다.
도 1a를 참조하면, 도면은 본 출원의 실시 예에 의해 제공되는 살아 있는 인간 얼굴 검증 방법의 장면 개략도이다. 장면은 짧게 얼굴 검증 장치로 명명될 수 있는 살아 있는 인간 얼굴 검증 장치를 포함할 수 있다. 상기 장치는 특정 컴퓨팅 장치에 의해 구현되거나 서버와 같은 소정(certain) 컴퓨팅 장치에 통합될 수 있으며, 예를 들어 서버에서 실행되는 애플리케이션 프로그램, 서버의 확장 슬롯에 플러그된(plugged) 카드 등으로 쓰일 수 있다. 상기 장치는 예를 들어, 카메라(A)와 카메라(B)에 의해 캡처된(captured) 얼굴 이미지와 같은 적어도 2대의 카메라에 의해 캡처된 얼굴 이미지를 획득(acquire)하고, 미리 설정된 얼굴 특징점에 따라 얼굴 이미지에 대해 특징점 등록을 수행, 예를 들어, 얼굴 이미지에 대해 오감 기관(five-sense organ) 등록을 수행하여, 얼굴 이미지들 사이의 대응하는 특징점 조합을 얻으며(obtain); 그 다음에 미리 설정된 알고리즘들을 활용(utilize)하여 특징점 조합 사이에서 호모그래피 변환 행렬(homography transformation matrix)을 갖추고(fit out); 최종적으로, 호모그래피 변환 행렬을 사용하여 특징점 조합의 변환 에러를 계산하여 에러 계산 결과를 얻으며, 에러 계산 결과에 따라 얼굴 이미지의 살아 있는 인간 얼굴 검증을 수행하며, 예를 들어, 에러 계산 결과가 미리 설정된 임계 값을 만족하면(meet), 살아 있는 인간 얼굴 검증의 결과가 "통과"된 것으로 결정하기 위해, 사용된다.
본 출원의 실시 예는 카메라를 캘리브레이션할 필요가 없으며, 이에 따라 기존 기술의 카메라 캘리브레이션 프로세스에서 캘리브레이션 에러가 제거된다. 본 출원의 실시 예의 방법은, 캡처된 얼굴 이미지에 대해 특징점 매칭을 직접 수행하고, 호모그래피 변환 행렬을 갖추며, 호모그래피 변환 행렬을 사용하여 에러 계산 결과를 얻은 후에, 살아 있는 인간 얼굴 검증을 수행하므로, 기존 생체 검출 기술과 비교하여, 상기 방법은 생체 판단(living body judgment) 알고리즘의 연산량을 대폭 감소시키고, 생체 검출의 속도 및 실시간 성능을 증가시킨다.
또한, 장면은 주로 이미지 데이터를 캡처하도록 구성된 복수의 픽업(pick-up) 장치(즉, 카메라)를 더 포함할 수 있으며, 얼굴 이미지를 캡처하는 경우, 얼굴 이미지를 얼굴 검증 장치로 송신하여 살아 있는 인간의 얼굴 검증이 통과되는 지의 여부를 결정한다.
일부 실시 예는 살아 있는 인간 얼굴 검증 장치의 관점에서 설명될 것이며, 살아 있는 인간 얼굴 검증 장치는 구체적으로 서버와 같은 네트워크 장치에 통합될 수 있다.
살아 있는 인간 얼굴 검증 방법은, 적어도 2대의 카메라에 의해 캡처된 얼굴 이미지를 획득하는 단계; 미리 설정된 얼굴 특징점에 따라 얼굴 이미지에 대해 특징점 등록을 수행하여 얼굴 이미지 사이의 대응하는 특징점 조합을 획득하는 단계; 미리 설정된 알고리즘들을 활용하여 특징점 조합 사이에서 호모그래피 변환 행렬을 갖추는 단계; 호모그래피 변환 행렬을 사용하여 특징점 조합의 변환 에러를 계산하여 에러 계산 결과를 얻고, 에러 계산 결과에 따라 얼굴 이미지의 살아 있는 인간 얼굴 검증을 수행하는 단계를 포함한다.
도 1b를 참조하면, 도 1b는 본 출원의 실시 예에 의해 제공되는 살아 있는 인간 얼굴 검증 방법의 흐름도이다. 본 방법은 다음 단계를 포함할 수 있다.
단계(S101)에서, 적어도 2대의 카메라에 의해 캡처된 얼굴 이미지를 획득한다.
본 출원의 실시 예들에서, 살아 있는 인간 얼굴 검증 장치가, 적어도 2대의 카메라에 의해 캡처된 얼굴 이미지들을 획득하는 단계는 구체적으로 다음을 포함할 수 있다:
단계 1: 적어도 2대의 카메라에 의해 캡처된 이미지 데이터를 획득한다.
단계 2: 이미지 데이터에 대해 얼굴 검출을 수행하여 얼굴 검출 결과를 얻는다.
단계 3: 얼굴 검출 결과가 얼굴 이미지가 검출된 것을 지시하는 경우, 얼굴 이미지를 획득한다.
얼굴 검출은 자동 얼굴 인식 시스템의 핵심 단계이며, 임의의 주어진 이미지에 대해, 이미지를 검색하기 위한 소정의 전략이 채택되어 얼굴을 포함하는지의 여부를 결정하며, 그렇다면, 얼굴의 위치, 크기 및 자세(posture)가 리턴된다. 본 실시 예가 기존의 얼굴 검출 알고리즘을 채택하여 획득된 이미지 데이터에 대해 분석 및 인식을 수행할 수 있는 것이 쉽게 생각될 수 있으며, 여기서 얼굴 검출의 프로세스가 명시되지(specified) 않는다.
즉, 복수의 카메라(2대 이상)가 이미지 데이터를 수집하고, 이미지 데이터를 실시간으로 살아 있는 인간 얼굴 검증 장치에 송신하고, 살아 있는 인간 얼굴 검증 장치는 수신된 이미지 데이터에 대해 얼굴 검출을 수행하고, 얼굴 이미지가 검출된 것으로 결정되는 경우, 얼굴 이미지를 획득하여 생체 검증을 수행한다.
일부 실시 예에서, 카메라는 또한 수집된 이미지 데이터에 대해 직접 얼굴 검출을 수행할 수 있고, 얼굴 이미지가 검출되는 경우, 얼굴 이미지를 획득하고 생체 검증을 위해 얼굴 이미지를 살아 있는 인간 얼굴 검증 장치에 송신할 수 있다.
단계(S102)에서, 미리 설정된 얼굴 특징점에 따라 얼굴 이미지에 대해 특징점 등록을 수행하여 얼굴 이미지 사이의 대응하는 특징점 조합을 얻는다.
예를 들어, 살아 있는 인간 얼굴 검증 장치는 미리 설정된 얼굴 특징점의 개수와 위치에 따라 얼굴 이미지에 대해 특징점 등록(즉, 오감 기관 등록)을 수행함으로써, 대응하는 특징점 조합이 얻어질 수 있다.
다른 예로서, 2대의 카메라가 이용 가능하면, 2대의 카메라에 의해 캡처된 얼굴 이미지를 획득한 후, 살아 있는 인간 얼굴 검증 장치는 미리 설정된 얼굴 특징점에 따라 2개의 얼굴 이미지에 특징점 등록을 수행할 수 있으므로, 특징점 쌍이라고도 하는 복수의 특징점 조합이 얻어진다.
본 출원의 실시 예에서, 특징점 등록은 상이한 이미징(imaging) 수단에 따라 동일 영역 내에서 복수의 카메라에 의해 획득된 복수의 얼굴 이미지가, 기하학적 보정(geometric correction), 투영 변환(projection transformation), 스케일 통합(scale unification) 및 다른 처리를 포함하는, 매칭 및 중첩(superposition) 처리되는 프로세스를 의미한다.
일부 실시 예에서, 2대의 카메라가 이용 가능하다면, 살아 있는 인간 얼굴 검증 장치의 등록 프로세스는 다음과 같을 수 있다: 특징 추출이 먼저 2개의 얼굴 이미지에 대해 수행됨으로써, 특징점이 얻어지며; 유사도 측정(similarity measurement)을 수행하여 매칭된 특징점 쌍이 찾아지고; 매칭된 특징점 쌍들에 의하여 이미지 공간 좌표 변환 파라미터들이 얻어지며; 마지막으로, 좌표 변환 파라미터에 의하여 이미지 등록이 수행된다. 기존의 특징 추출 알고리즘이 이미지에 대해 특징점 등록을 수행하기 위해 채택될 수 있으며, 여기서는 구체적으로 설명하지 않는다.
단계(S103)에서, 미리 설정된 알고리즘을 활용하여 특징점 조합들 사이에서 호모그래피 변환 행렬을 갖춘다.
일부 실시 예에서, 살아 있는 인간 얼굴 검증 장치는 최소 제곱법(least square method)을 사용하여 호모그래피 변환 행렬을 생성하도록, 미리 설정된 랜덤 샘플링 컨센서스 알고리즘(random sampling consensus algorithm)을 활용하여 특징점 조합을 피팅(fit)할 수 있다.
본 출원의 실시 예들에서 랜덤 샘플링 컨센서스 알고리즘(Ransac 알고리즘)은 기본적으로 샘플들이 인라이어(inlier)(모델에 의해 기술될 수 있는 데이터)뿐만 아니라 아웃라이어(outlier)(정상 범위로부터 멀리 벗어났으며 수학적 모델에 적응하는데 실패한 데이터)를 포함하는 것 즉, 데이터 세트가 노이즈를 포함하는 것을 가정한다. 이러한 아웃라이어는 잘못된 측정, 잘못된 가설(wrong hypothesis), 잘못된 계산 등으로 생성될 수 있다. 또한, Ransac 알고리즘은 주어진 인라이어의 세트에 대해, 이러한 데이터와 일치하는 모델 파라미터를 산출할 수 있는 방법이 있다고 가정한다.
최소 제곱법은 에러의 2차 합(quadratic sum)을 최소화하는 것을 통해 데이터의 최적 함수 매칭을 찾는 것이다. 최소 제곱법을 활용하는 것에 의해, 알려지지 않은(unknown) 데이터를 용이하게 얻어질 수 있고, 이들 얻어진 데이터와 실제 데이터 사이의 에러의 2차 합이 최소가 된다.
즉, 랜덤 샘플링 컨센서스 알고리즘 및 최소 제곱법에 의하여, 살아 있는 인간 얼굴 검증 장치는 특징점 조합에 대응하는 모델, 즉 호모그래피 변환 행렬을 계산하고 갖출 수 있으며; 또한 특징점 조합을 피팅하여 호모그래피 변환 행렬을 생성하는 단계는 구체적으로 다음을 포함한다.
단계 a: 동차 좌표(homogeneous coordinates)의 형태로, 각각의 특징점 쌍을 특징점 조합으로 마킹한다;
단계 b: 행렬 모델을 고안(create)하고, 행렬 모델에 의하여 각각의 특징점 쌍간의 대응 관계를 결정한다;
단계 c: 대응 관계에 대해 동차 변환을 수행하여 동차 대응 관계를 생성한다;
단계 d: 동차 대응 관계에 기반하여 특징점 조합을 피팅하여 호모그래피 변환 행렬을 생성한다.
동차 좌표는 n 차원인 벡터가 원래 n+1 차원 벡터를 사용하여 표현된다는 것을 의미하며; 예를 들면, 2대의 카메라가 배치되면, P1, P2가 2개의 얼굴 이미지에서 대응하는 특징점 쌍의 동차 좌표인 것으로 가정하고, 호모그래피 변환 행렬의 행렬 모델 H가 고안되며, 이에 따라 호모그래피 변환 행렬 H에 의하여, P1과 P2 사이의 대응 관계는 P2 = H*P1 일 수 있다.
또한, 예를 들면, 호모그래피 변환 행렬의 행렬 모델 H가 3×3 행렬이면, 정규화를 위해, 행렬 모델 H의 h33(즉, 마지막 엘리먼트(last element))이 1과 동일하며, 그 다음에 H*P1이 동차 대응 관계로 변환되며, 한 쌍의 특징점들이 2개의 방정식을 생성(동차 변환 전후)할 수 있기 때문에, 행렬 모델 H의 8개의 알려지지 않은 파라미터의 결정은 적어도 4개의 특징점 쌍을 필요로 한다. 따라서, Ransac 알고리즘 및 최소 제곱법은 각각의 특징점 쌍에 대한 행렬 모델 H를 피팅하고 이에 따라 행렬 모델 H에 대응하는 호모그래피 변환 행렬을 얻기 위해 사용될 수 있다.
단계(S104)에서, 호모그래피 변환 행렬을 사용하여 특징점 조합의 변환 에러를 계산하여 에러 계산 결과를 얻고, 에러 계산 결과에 따라 얼굴 이미지의 살아 있는 인간 얼굴 검증을 수행한다.
살아 있는 인간 얼굴 검증 장치에 의해, 호모그래피 변환 행렬을 사용하여 특징점 조합의 변환 에러를 계산하여 에러 계산 결과를 획득하는 것은 구체적으로, 다음을 포함한다.
단계 A: 각각의 특징점 조합에 대해, 호모그래피 변환 행렬을 사용하여 대응하는 변환 에러를 계산한다.
단계 B: 각각의 특징점 조합의 대응하는 변환 에러에 따라 평균값 계산을 수행하여 평균 에러를 얻고, 평균 에러를 에러 계산 결과로 결정한다.
예를 들면, 살아 있는 인간 얼굴 검증 장치는, 각각의 특징점의 조합에 대하여, 호모그래피 변환 행렬을 사용하여 대응하는 변환 에러를 계산하며, 변환 에러는, 호모그래피 변환 행렬을 사용한 동차 변환 전후에 얻어진 특징점의 조합의 에러이고, 50개의 특징점이 미리 설정되면, 50개의 대응하는 특징점 조합이 얻어지며, 평균값 계산이 50개의 특징점의 조합의 변환 에러에 대해서 수행되어 평균 에러를 얻는다.
또한, 예를 들면, 특징점 조합이 2개의 특징점을 포함하면, 각각의 특징점 쌍은 변환 에러에 대응하고; 50개의 특징점이 미리 설정되면, 그 다음에 50개의 대응하는 특징점 쌍이 얻어지며, 평균값 계산이 50개의 특징점 쌍의 변환 에러에 대해서 수행됨으로써, 평균 에러가 얻어진다.
특징점 조합이 3개의 특징점을 포함하면, 중간 카메라를 비교하여, 2개의 에러가 각각의 특징점 조합에 존재하며; 일부 더 정확한 경우에는 비교를 위해 더 많은 에러가 설정될 수 있으며, 예를 들어, 특징점 조합이 3개의 특징점을 포함하면, 변환 에러가 각각의 특징점 쌍 사이에 존재하며, 그리고 3개의 에러가 각각의 특징점 조합에 존재할 수 있음을 이해할 수 있으며, 이는 여기서 명시되지 않는다.
일부 실시 예에서, 에러 계산 결과에 따라 얼굴 이미지의 살아 있는 인간 얼굴 검증을 수행하는 단계는, 구체적으로, 다음을 포함할 수 있다.
단계 1: 에러 계산 결과에 의해 지시된 평균 에러가 미리 설정된 임계 값보다 작거나 같다면, 살아 있는 인간 얼굴 검증의 결과가 "통과"인 것으로 결정한다;
단계 2: 에러 계산 결과에 의해 지시된 평균 에러가 미리 설정된 임계 값보다 크면, 살아 있는 인간 얼굴 검증의 결과가 "통과되지 않음"인 것으로 결정한다.
즉, 변환 에러의 평균 에러가 산출된(worked out) 후에, 평균 에러가 미리 설정된 임계 값과 비교되며; 평균 에러가 미리 설정된 임계 값보다 작거나 같으면, 살아 있는 인간 얼굴 검증의 결과가 "통과", 즉 획득된 얼굴 이미지가 실제 사람인 것으로 고려될 수 있으며 얼굴 인식이 그 다음에 수행될 수 있고; 평균 에러가 미리 설정된 임계 값보다 크면 살아 있는 인간 얼굴 검증의 결과가 "통과되지 않음", 즉 획득된 얼굴 이미지가 가짜 바디(false body)인 것으로 고려될 수 있다.
이상으로부터, 적어도 2대의 카메라가 얼굴 이미지를 캡처하는 경우, 본 출원의 실시 예에 의해 제공되는 살아 있는 인간 얼굴 검증 방법은, 먼저, 미리 설정된 얼굴 특징점에 따라 얼굴 이미지에 대해 특징점 등록을 수행하여 얼굴 이미지 사이의 대응하는 특징점의 조합을 얻고, 그 다음에 미리 설정된 알고리즘을 활용하여 특징점 조합 사이에서 호모그래피 변환 행렬을 갖추고, 마지막으로 호모그래피 변환 행렬을 사용하여 이들 특징점 조합의 변환 에러를 계산하며, 이에 따라 에러 계산 결과에 따라 살아 있는 인간 얼굴 검증을 수행하고; 본 출원의 실시 예는 카메라를 캘리브레이션할 필요가 없으므로, 캘리브레이션 에러가 제거되고, 캡처된 얼굴 이미지에 대해 직접적으로 특징점 매칭을 수행하고, 호모그래피 변환 행렬을 갖추며, 이에 따라 생체의 판단 알고리즘의 계산량이 감소될 수 있으며; 또한, 카메라가 자유롭게 배치될 수 있고, 이에 따라 생체 판단의 유연성 및 편리성이 증가될 수 있음을 알 수 있다.
일부 실시 예에서, 상기 방법에 의해 제공되는 살아 있는 인간 얼굴 검증 방법은 주로 사무실 액세스 제어 시스템(office access control system)에 적용된다. 얼굴 인식이 수행되기 전에, 상기 방법이 먼저 생체 검증을 수행하기 위해 사용되고, 살아 있는 인간 얼굴 검증이 통과되는 경우, 얼굴 인식이 수행되며; 상기 방법은 자유롭게 배치된 2대 이상의 카메라를 채택하고, 복수의 카메라에 의해 동시에 촬영된(shot) 복수의 얼굴 이미지에서 오감 기관 점(five sense organ points) 사이의 3차원 기하학적 관계를 분석하고, 평면 분석 기하학에서 특징점 쌍의 호모그래피를 활용하는 것에 의하여, 상기 방법은 사용자의 협조를 요구하지 않고 살아 있는 인간 얼굴 검증을 수행한다.
2대의 카메라를 예로 들면, 살아 있는 인간 얼굴 검증 방법이 정교화될(elaborated) 것이며, 공간을 절약하기 위해 2대의 카메라가 도어프레임(doorframe)의 측면에 각각 배치되고, 통상 수직 방향을 따라 배치된다.
도 2a를 참조하면, 도 2a는 본 출원의 실시 예에 의해 제공되는 살아 있는 인간 얼굴 검증 방법의 흐름도이다. 상기 방법은 다음 단계를 포함할 수 있다.
단계(S201)에서, 살아 있는 인간 얼굴 검증 장치는 2대의 카메라에서 이미지를 동시에 캡처한다.
예를 들어, 카메라(A)와 카메라(B)는 도어 프레임의 측면에 각각 배치되고, 수평 방향 또는 수직 방향을 따른 배치를 지원할 뿐만 아니라, 카메라 사이에 존재하는 임의 수평 또는 수직 오프셋 그리고 끼인각(included angle)을 허용하는 것에 의해 자유롭게 배치될 수 있으므로, 실제 설치(actual deployment)가 편리하고 유연하다. 공간을 절약하기 위해 카메라(A)와 카메라(B)가 수직 방향을 따라 통상 배치됨을 알 수 있다.
단계(S202)에서, 살아 있는 인간 얼굴 검증 장치는 2대의 카메라의 이미지에 대해 얼굴 검출을 수행한다.
예를 들면, 카메라(A) 및 카메라(B)는 캡처된 이미지를 살아 있는 인간 얼굴 검증 장치로 송신하고, 살아 있는 인간 얼굴 검증 장치는 수신된 이미지에 대해 얼굴 검출을 수행하며, 즉, 얼굴이 이미지에 존재하는지를 검출하며, 얼굴 검출은 주어진 이미지에 대해, 소정의 전략이 이미지를 검색하기 위해 채택되어 이미지가 얼굴을 포함하는 지의 여부를 결정하는 것을 의미한다. 본 실시 예가 기존의 얼굴 검출 알고리즘을 채택하여 획득된 이미지 데이터에 대해 분석 및 인식을 수행할 수 있다는 것은 쉽게 생각할 수 있다.
단계(S203)에서, 얼굴이 2대의 카메라의 모든 이미지에서 검출된 것으로 결정한 후에, 살아 있는 인간 얼굴 검증 장치는 특징점 등록을 수행하여 특징점 쌍을 획득한다.
예를 들면, 카메라(A) 및 카메라(B)가 모두 얼굴을 검출하는 경우, 살아 있는 인간 얼굴 검증 장치는 2개의 얼굴 이미지에 대해 특징점 등록, 즉 오감 기관 등록을 수행할 것이다. 본 실시 예에서, 90개의 특징점이 살아 있는 인간 얼굴 검증 장치에 미리 설정되어 있고, 2개의 특징점 쌍 그룹은 일대일 대응 관계에 있으며, 도 2a에 도시된 것은, 수직 방향을 따라 배치된 카메라(A)와 카메라(B)에 의해 동시에 캡처된 2개의 얼굴 이미지이며, 얼굴에 마킹된 점들이 오감 기관 특징점으로 등록된다.
단계(S204)에서, 살아 있는 인간 얼굴 검증 장치는 특징점 쌍들에 따라, 랜덤 샘플링 컨센서스(Ransac) 알고리즘을 사용하여 특징점 쌍들의 호모그래피 변환 행렬을 피팅한다.
먼저, 2개의 얼굴 이미지에서 P1(x1, y1, 1) T와 P2(x2, y2, 1) T가 대응하는 특징점 쌍의 동차 좌표라고 가정하고, 호모그래피 변환 행렬의 행렬 모델 H가 다음과 같이 고안되며, 그 다음에, 호모그래피 변환 행렬의 행렬 모델 H에 의하여, P1과 P2의 대응 관계가 P2 = H*P1이다.
H는
Figure pct00001
인 3×3 행렬이다.
정규화를 위해, 호모그래피 변환 행렬 H의 h33은 1로 설정된다. H*P1에 의해 변환된 좌표는
Figure pct00002
이다.
H*P1은 동차(homogeneous)가 되기 위해 동차 변환을 거쳐서,
Figure pct00003
를 획득하며, 즉,
Figure pct00004
이다.
한 쌍의 특징점이 2개의 방정식을 생성(동차 변환의 전후)할 수 있기 때문에, 행렬 모델 H의 8개의 알려지지 않은 파라미터의 결정은 적어도 4개의 특징점 쌍을 필요로 한다. 본 실시 예에서, 예를 들면, RANSAC 알고리즘 및 최소 제곱법이 90개의 특징점 쌍에 대해 행렬 모델 H를 피팅하고, 이에 따라 행렬 모델 H에 대응하는 호모그래피의 변환 행렬을 얻기 위해 사용될 수 있다.
단계(S205)에서, 살아 있는 인간 얼굴 검증 장치는 호모그래피 변환 행렬의 변환 전후의 특징점 쌍의 에러를 계산한다.
예를 들면, 살아 있는 인간 얼굴 검증 장치는 호모그래피 변환 행렬의 동차 변환 전후의 90개의 특징점 쌍의 에러를 계산하며, 90개의 특징점 쌍이 각각 (1)과 (2)로 대체됨으로써, 동차 변환 전후의 유클리드 거리(Euclidean distance)의 에러
Figure pct00005
가 산출될 수 있으며, 유클리드 거리는 일반적으로(commonly) 채택된 거리 정의이며, m 차원 공간에서 2개의 점들 사이의 참 거리(true distance)이다.
단계(S206)에서, 살아 있는 인간 얼굴 검증 장치는 호모그래피 변환 행렬의 변환 전후의 특징점 쌍의 에러에 따라 평균 에러를 계산한다.
예를 들면, 살아 있는 인간 얼굴 검증 장치는 90개의 특징점을 미리 설정하고, 90개의 대응하는 특징점 쌍이 얻어지며, 그 다음에, 평균값 계산이 90개의 특징점 쌍의 변환 에러에 따라 수행되어 평균 에러를 얻는다.
단계(S207a)에서, 평균 에러가 미리 설정된 임계 값보다 작거나 같으면, 살아 있는 인간 얼굴 검증 장치는 살아 있는 인간 얼굴 검증이 통과된 것으로 결정한다.
단계(S207b)에서, 평균 에러가 미리 설정된 임계 값보다 크면, 살아 있는 인간 얼굴 검증 장치는 살아 있는 인간 얼굴 검증이 통과되지 않은 것으로 결정한다.
마지막으로, 살아 있는 인간 얼굴 검증 장치는 평균 에러를 미리 설정된 임계 값(h)과 비교하여 실제 사람인지 가짜 바디인지를 판단하며; 평균 에러가 현재의 임계 값보다 작거나 같으면 살아 있는 인간 얼굴 검증이 통과된 것 즉, 이미지가 실제 사람인 것으로 결정되며, 얼굴의 생체 검증이 통과되는 경우 얼굴 인식이 수행되며, 얼굴 인식이 통과되면 문이 열리거나, 얼굴 인식이 통과되지 않으면 문이 열리지 않으며; 평균 에러가 미리 설정된 임계 값보다 크면, 살아 있는 인간 얼굴 검증이 통과되지 않은 것 즉, 이미지가 가짜 바디인 것으로 결정하고, 문이 열리지 않는다.
본 실시 예에 의해 기술된 방법은 자유롭게 배치된 2대 이상의 카메라를 채택하고, 카메라에 의해 동시에 캡처된 복수의 얼굴 이미지에서 오감 기관 점 사이의 3차원 기하학적 관계에 의하여, 평면 분석 기하학에서 특징점 쌍의 호모그래피를 활용하여, 상기 방법은 직접 복수의 카메라에 의해 촬영된 이미지에 대해 얼굴 특징점 쌍 매칭을 수행하여, 카메라 캘리브레이션 또는 사용자의 협조를 요구하지 않고 살아 있는 인간 얼굴 검증을 수행한다. 상기 방법은 카메라를 캘리브레이션하지 않고 실제 사람의 얼굴과 평면 가짜 바디((휴대 전화 또는 태블릿 컴퓨터와 같은) 모바일 장치상에 재생되는 사진이나 비디오 또는 인쇄된 얼굴 용지)를 효과적으로 구별할 수 있다. 상기 방법에서의 복수의 카메라의 배치 자유도가 높으며, 수평 방향 또는 수직 방향을 따른 배치가 지지될뿐만 아니라, 소정의 수평 또는 수직 오프셋 및 끼인각이 카메라 사이에 존재하도록 허용되며, 따라서 쌍안 시스템(binocular system)의 실제 설치가 보다 편리하고 유연하다.
상기 방법은 사무실 액세스 제어 시스템과 같은 다양한 액세스 제어 시스템뿐만 아니라 생체 검증을 요구하는 다른 시스템에도 적용 가능하다는 것을 이해할 수 있을 것이다.
이상으로부터, 적어도 2대의 카메라가 얼굴 이미지를 캡처하는 경우, 본 출원의 실시 예에 의해 제공되는 살아 있는 인간 얼굴 검증 방법은, 먼저 미리 설정된 얼굴 특징점에 따라 얼굴 이미지에 대해 특징점 등록을 수행하여 얼굴 이미지 사이의 대응하는 특징점의 조합을 얻고, 그 다음에 미리 설정된 알고리즘을 활용하여 특징점 조합 사이에서 호모그래피 변환 행렬을 갖추고, 마지막으로 호모그래피 변환 행렬을 사용하여 이들 특징점 조합의 변환 에러를 계산하며, 이에 따라 에러 계산 결과에 따라 살아 있는 인간 얼굴 검증을 수행하고; 본 출원의 실시 예는 카메라를 캘리브레이션할 필요가 없으므로, 캘리브레이션 에러가 제거되고, 캡처된 얼굴 이미지에 대해 직접적으로 특징점 매칭을 수행하고, 호모그래피 변환 행렬을 갖추며, 이에 따라 생체의 판단 알고리즘의 계산량이 감소될 수 있으며; 또한, 카메라가 자유롭게 배치될 수 있고, 이에 따라 생체 판단의 유연성 및 편리성이 증가될 수 있음을 알 수 있다.
본 출원의 실시 예에 의해 제공되는 살아 있는 인간 얼굴 검증 방법을 보다 잘 구현하기 위해, 본 출원의 실시 예는 살아 있는 인간 얼굴 검증 방법에 기반한 장치를 더 제공한다. 명사(nouns)의 의미는 상술한 살아 있는 인간 얼굴 검증 방법의 의미와 동일하며, 특정 구현 세부 사항에 대해서는 방법 실시 예에서의 설명을 참조한다.
도 3a를 참조하여, 도 3a는 본 출원의 실시 예에 의해 제공되는 살아 있는 인간 얼굴 검증 장치의 구조 개략도이고, 살아 있는 인간 얼굴 검증 장치는 획득(acquisition) 유닛(301), 특징점 등록 유닛(302), 피팅 유닛(303), 계산 유닛(304), 및 검증 유닛(305)을 포함한다.
획득 유닛(301)은, 적어도 2대의 카메라에 의해 캡처된 얼굴 이미지를 획득하도록 구성되고, 특징점 등록 유닛(302)은 미리 설정된 얼굴 특징점에 따라 얼굴 이미지에 대해 특징점 등록을 수행하여 얼굴 이미지 사이의 대응하는 특징점 조합을 얻도록 구성된다.
피팅 유닛(303)은 미리 설정된 알고리즘을 활용하여 특징점 조합들 사이에서 호모그래피 변환 행렬을 갖추도록 구성되며; 계산 유닛(304)은 호모그래피 변환 행렬을 사용하여 특징점 조합의 변환 에러를 계산하여 에러 계산 결과를 얻도록 구성되고; 검증 유닛(305)은 에러 계산 결과에 따라 얼굴 이미지의 살아 있는 인간 얼굴 검증을 수행하도록 구성된다.
또한, 도 3b를 참조하면, 도 3b는 본 출원의 실시 예에 의해 제공되는 살아 있는 인간 얼굴 검증 장치의 다른 구조 개략도이고, 획득 유닛(301)은, 적어도 2대의 카메라에 의해 캡처된 이미지 데이터를 획득하도록 구성된 이미지 획득 서브유닛(3011); 이미지 데이터에 대해 얼굴 검출을 수행하여 얼굴 검출 결과를 얻도록 구성된 검출 서브유닛(3012); 및 얼굴 검출 결과가 얼굴 이미지가 검출되었음을 지시하는 경우 얼굴 이미지를 획득하도록 구성된 얼굴 획득 서브유닛(3013)을 포함한다.
얼굴 검출은 자동 얼굴 인식 시스템의 핵심 단계이며, 임의의 주어진 이미지에 대해, 이미지를 검색하기 위한 소정의 전략이 채택되어 얼굴을 포함하는지의 여부를 결정하며, 그렇다면, 얼굴의 위치, 크기 및 자세가 리턴된다. 본 실시 예가 기존의 얼굴 검출 알고리즘을 채택하여 획득된 이미지 데이터에 대해 분석 및 인식을 수행할 수 있다는 것을 쉽게 생각할 수 있으며, 여기서 얼굴 검출의 프로세스가 명시되지 않는다.
즉, 복수의 카메라(2대 이상)가 이미지 데이터를 수집하고, 이미지 데이터를 실시간으로 살아 있는 인간 얼굴 검증 장치에 송신하고, 살아 있는 인간 얼굴 검증 장치는 수신된 이미지 데이터에 대해 얼굴 검출을 수행하고, 얼굴 이미지가 검출된 것으로 결정되는 경우, 얼굴 이미지를 획득하여 생체 검증을 수행한다.
일부 실시 예에서, 카메라는 또한 수집된 이미지 데이터에 대해 직접 얼굴 검출을 수행할 수 있으며, 얼굴 이미지가 검출되는 경우, 얼굴 이미지를 획득하고 얼굴 이미지를 생체 검증을 위해 살아 있는 인간 얼굴 검증 장치로 송신할 수 있다.
이어서(Subsequently), 특징점 등록 유닛(302)은 미리 설정된 얼굴 특징점에 따라 얼굴 이미지에 대해 특징점 등록을 수행하여 얼굴 이미지 사이의 대응하는 특징점 조합을 얻기 위해 사용될 수 있다.
예를 들면, 살아 있는 인간 얼굴 검증 장치는 미리 설정된 얼굴 특징점의 개수 및 위치에 따라 얼굴 이미지에 대해 특징점 등록(즉, 오감 기관 등록)을 수행함으로써, 대응하는 특징점 조합이 얻어질 수 있다.
다른 예로서, 2대의 카메라가 이용 가능하면, 2대의 카메라에 의해 캡처된 얼굴 이미지를 획득한 후, 살아 있는 인간 얼굴 검증 장치는 미리 설정된 얼굴 특징점에 따라 2개의 얼굴 이미지에 특징점 등록을 수행할 수 있으므로, 특징점 쌍이라고도 하는 복수의 특징점 조합이 얻어진다.
본 출원의 실시 예에서, 특징점 등록은 상이한 이미징 수단에 따라 동일한 영역 내에서 복수의 카메라에 의해 획득된 복수의 얼굴 이미지가, 기하학적 보정, 투영 변환, 스케일 통합 및 기타 처리를 포함하는, 매칭 및 중첩처리되는 것을 의미한다.
또한, 2대의 카메라가 이용 가능하면, 살아 있는 인간 얼굴 검증 장치의 등록 프로세서는 다음과 같을 수 있다. 먼저, 2개의 얼굴 이미지에 대해 특징 추출이 수행됨으로써, 특징점들이 얻어지고; 매칭된 특징점 쌍들이 유사도 측정을 수행하는 것에 의해 찾아지며; 이미지 공간 좌표 변환 파라미터들이 매칭된 특징점 쌍들에 의해 얻어지고; 마지막으로, 이미지 등록이 좌표 변환 파라미터에 의하여 수행된다. 기존의 특징 추출 알고리즘이 채택되어 이미지에 대한 특징점 등록을 수행할 수 있으며, 이는 여기서 명시되지 않는다.
그 다음에, 피팅 유닛(303)은 구체적으로, 미리 설정된 랜덤 샘플링 컨센서스 알고리즘을 이용하여 특징점 조합을 피팅하여서, 최소 제곱법을 사용하여 호모그래피 변환 행렬을 생성하도록 구성될 수 있다.
본 출원의 실시 예들에서 랜덤 샘플링 컨센서스 알고리즘(Ransac 알고리즘)은 기본적으로 샘플들이 인라이어뿐만 아니라 아웃라이어를 포함하는 것 즉, 데이터 세트가 노이즈를 포함하는 것을 가정한다. 이러한 아웃라이어는 잘못된 측정, 잘못된 가설, 잘못된 계산 등으로 생성될 수 있다. 또한, Ransac 알고리즘은 주어진 인라이어의 세트에 대해, 이러한 데이터와 일치하는 모델 파라미터를 산출할 수 있는 방법이 있다고 가정한다.
최소 제곱법은 에러의 2차 합을 최소화하는 것을 통해 데이터의 최적 함수 매칭을 찾는 것이다. 최소 제곱법을 활용하는 것에 의해, 알려지지 않은 데이터를 용이하게 얻어질 수 있고, 이들 얻어진 데이터와 실제 데이터 사이의 에러의 2차 합이 최소가 된다.
즉, 랜덤 샘플링 컨센서스 알고리즘 및 최소 제곱법에 의하여, 살아 있는 인간 얼굴 검증 장치는 특징점 조합에 대응하는 모델, 즉 호모그래피 변환 행렬을 계산하고 갖출 수 있으며; 또한, 피팅 유닛(303)은 구체적으로, 동차 좌표의 형태로 특징점 조합의 각각의 특징점 쌍을 마킹하도록 구성된 마킹 서브유닛(3031); 행렬 모델을 고안하고, 행렬 모델에 의하여 각각의 특징점 쌍 사이의 대응 관계를 결정하도록 구성된 결정 서브 유닛(3032); 대응 관계에 대해 동차 변환을 수행하여 동차 대응 관계를 생성하도록 구성된 변환 서브유닛(3033); 및 동차 대응 관계에 기반하여 특징점 조합을 피팅하여 호모그래피 변환 행렬을 생성하도록 구성된 피팅 서브 유닛(3034)을 포함한다.
동차 좌표는 n 차원인 벡터가 원래 n+1 차원 벡터를 사용하여 표현된다는 것을 의미하며; 예를 들면, 2대의 카메라가 배치되면, P1, P2가 2개의 얼굴 이미지에서 대응하는 특징점 쌍의 동차 좌표인 것으로 가정하고, 호모그래피 변환 행렬의 행렬 모델 H가 고안되며, 이에 따라 호모그래피 변환 행렬 H에 의해, P1과 P2 사이의 대응 관계가 P2=H*P1 일 수 있다.
또한, 예를 들면, 호모그래피 변환 행렬의 행렬 모델 H가 3×3 행렬이면, 정규화를 위해, 행렬 모델 H의 h33(즉, 마지막 엘리먼트)이 1과 동일하며, 그 다음에 H*P1이 동차 대응 관계로 변환되며, 한 쌍의 특징점들이 2개의 방정식을 생성(동차 변환 전 및 후)할 수 있기 때문에, 행렬 모델 H의 8개의 알려지지 않은 파라미터의 결정은 적어도 4개의 특징점 쌍을 필요로 한다. 따라서, Ransac 알고리즘 및 최소 제곱법은 각각의 특징점 쌍에 대한 행렬 모델 H를 피팅하고 이에 따라 행렬 모델 H에 대응하는 호모그래피 변환 행렬을 얻기 위해 사용될 수 있다.
계산 유닛(304)은 구체적으로, 호모그래피 변환 행렬을 사용하여 각각의 특징점 조합에 대해 대응하는 변환 에러를 계산하고, 각각의 특징점 조합의 대응하는 변환 에러에 따라 평균값 계산을 수행하여 평균 에러를 얻으며, 평균 에러를 에러 계산 결과로 결정하도록 구성될 수 있음을 이해할 수 있다.
예를 들면, 살아 있는 인간 얼굴 검증 장치는, 각각의 특징점의 조합에 대하여, 호모그래피 변환 행렬을 사용하여 대응하는 변환 에러를 계산하며, 변환 에러는, 호모그래피 변환 행렬을 사용하여 동차 변환 전후에 얻어진 특징점의 조합의 에러이며; 50개의 특징점이 미리 설정되어 있으면, 50개의 대응하는 특징점의 조합이 얻어지며, 50개의 특징점의 조합의 변환 에러에 대해 평균값 계산이 수행되어 평균 에러를 얻는다.
또한, 예를 들면, 특징점 조합이 2개의 특징점을 포함하면, 각각의 특징점 쌍은 변환 에러에 대응하고; 50개의 특징점이 미리 설정되면, 그 다음에 50개의 대응하는 특징점 쌍이 얻어지며, 평균값 계산이 50개의 특징점 쌍의 변환 에러에 대해서 수행되어 평균 에러를 얻는다.
다른 예로서, 특징점 조합이 3개의 특징점을 포함하면, 중간 카메라를 비교하여, 2개의 에러가 각각의 특징점 조합에 존재하며; 일부 더 정확한 경우에는 비교를 위해 더 많은 에러가 설정될 수 있으며, 예를 들어, 특징점 조합이 3개의 특징점을 포함하면, 변환 에러가 각각의 특징점 쌍 사이에 존재하며, 그리고 3개의 에러가 각각의 특징점 조합에 존재할 수 있으며, 이는 여기서 명시되지 않는다.
또한, 검증 유닛(305)은, 구체적으로, 에러 계산 결과에 의해 지시되는 평균 에러가 미리 설정된 임계 값보다 작거나 같으면 살아 있는 인간 얼굴 검증의 결과가 "통과"인 것으로 결정하거나, 에러 계산 결과에 의해 지시되는 평균 에러가 미리 설정된 임계 값보다 크면 살아 있는 인간 얼굴 검증의 결과가 "통과되지 않음"인 것으로 결정하도록 구성될 수 있다.
즉, 변환 에러의 평균 에러가 산출된 후에, 평균 에러는 미리 설정된 임계 값과 비교되며; 평균 에러가 미리 설정된 임계 값보다 작거나 같으면 살아 있는 인간 얼굴 검증의 결과가 "통과"인 것 즉, 획득된 얼굴 이미지가 실제 사람인 것으로 고려될 수 있으며, 그리고 얼굴 인식이 수행될 수 있으며; 평균 에러가 미리 설정된 임계 값보다 크면 살아 있는 인간 얼굴 검증의 결과가 "통과되지 않음"인 것으로 즉, 획득된 얼굴 이미지가 가짜 바디인 것으로 고려될 수 있다.
특정 구현에서, 위의 각각의 유닛은 별도의 엔티티로서 구현될 수 있거나, 또한 단일 엔티티 또는 복수의 엔티티로서 구현되도록 선택적으로 조합될 수 있으며, 위의 각각의 유닛의 특정 구현에 대해서는 상기 방법 실시 예들에 대한 설명을 참조하기 바라며, 여기에서 반복하지 않는다.
살아 있는 인간 얼굴 검증 장치는 구체적으로 서버와 같은 네트워크 장치에 통합될 수 있다.
이상으로부터, 적어도 2대의 카메라가 얼굴 이미지를 캡처하는 경우, 본 출원의 실시 예에 의해 제공되는 살아 있는 인간 얼굴 검증 장치는, 먼저 미리 설정된 얼굴 특징점에 따라 얼굴 이미지에 대해 특징점 등록을 수행하여 얼굴 이미지 사이의 대응하는 특징점의 조합을 얻고, 그 다음에 미리 설정된 알고리즘을 활용하여 특징점 조합 사이에서 호모그래피 변환 행렬을 갖추고, 마지막으로 호모그래피 변환 행렬을 사용하여 이들 특징점 조합의 변환 에러를 계산하며, 이에 따라 에러 계산 결과에 따라 살아 있는 인간 얼굴 검증을 수행하고; 본 출원의 실시 예는 카메라를 캘리브레이션할 필요가 없으므로, 캘리브레이션 에러가 제거되고, 캡처된 얼굴 이미지에 대해 직접적으로 특징점 매칭을 수행하고, 호모그래피 변환 행렬을 갖추며, 이에 따라 생체의 판단 알고리즘의 계산량이 감소될 수 있으며; 또한, 카메라가 자유롭게 배치될 수 있고, 이에 따라 생체 판단의 유연성 및 편리성이 증가될 수 있음을 알 수 있다.
본 출원의 실시 예는 본 출원의 실시 예의 살아 있는 인간 얼굴 검증 장치가 통합될 수 있는 서버를 더 제공한다. 도 4는 본 출원의 실시 예들에 포함되는 서버의 구조 개략도를 도시한다.
서버는 하나 이상의 프로세싱 코어를 갖는 프로세서(401), 하나 이상의 비일시적(non-transitory) 컴퓨터 판독 가능 저장 매체를 갖는 메모리(402), 무선 주파수(radio frequency, RF) 회로(403), 전원 공급기(power supply)(404), 입력 유닛 405), 디스플레이 유닛(406) 등을 포함한다. 당업자는 도 4에 도시된 서버 구조가 서버에 제한을 구성하지 않으며, 각각의 실시 예의 서버는 도면보다 많은 또는 적은 부분(part) 또는 임의 부분의 조합 또는 상이한 부분 배열을 포함할 수 있다는 것을 이해할 수 있다. 예를 들어, 일부 실시 예에서 서버는 RF 회로(403) 및/또는 디스플레이 유닛(406)을 가지지 않을 수 있다.
프로세서(401)는 서버의 제어 센터이고, 다양한 인터페이스 및 라인이 전체 서버의 모든 부분을 연결하기 위해 활용되며, 메모리(402)에 저장된 소프트웨어 프로그램 및/또는 모듈을 러닝(running) 또는 실행(executing)하고 메모리(402)에 저장된 데이터를 호출하는 것에 의해, 서버의 다양한 기능이 실행되고 데이터가 처리됨으로써, 전체 서버가 모니터링된다. 일부 실시 예에서, 프로세서(401)는 하나 이상의 프로세싱 코어를 포함할 수 있다. 일부 실시 예에서, 프로세서(401)는 애플리케이션 프로세서 및 변조/복조 프로세서와 통합될 수 있으며, 애플리케이션 프로세서는 주로 운영 체제, 사용자 인터페이스, 애플리케이션 프로그램 등을 처리하고, 변조/복조 프로세서는 주로 무선 통신을 처리한다. 전술한 변조/복조 프로세서는 또한 프로세서(401)에 통합되지 않을 수 있음을 이해할 수 있다.
메모리(402)는 소프트웨어 프로그램 및 모듈을 저장하도록 구성될 수 있으며, 메모리(402)에 저장된 소프트웨어 프로그램 및 모듈을 실행하는 것에 의해, 프로세서(401)는 다양한 기능 애플리케이션을 실행하고 데이터를 처리한다. 메모리(402)는 주로 프로그램 저장 영역(storage area) 및 데이터 저장 영역을 포함할 수 있다. 프로그램 저장 영역은 운영 체제, 적어도 하나의 기능-요구되는 애플리케이션 프로그램(function-needed application program)(사운드 재생 기능, 이미지 재생 기능 등) 등을 저장할 수 있다. 데이터 저장 영역은 서버의 사용법(usage)에 따라 생성되는 데이터를 저장할 수 있다. 또한, 메모리(402)는 고속 랜덤 액세스 메모리를 포함할 수 있고, 또한 적어도 하나의 디스크 저장 장치 또는 플래시 메모리 장치 또는 다른 휘발성 고체 상태 저장 장치와 같은 비휘발성 메모리를 포함할 수 있다. 이에 대응하여, 메모리(402)는 프로세서(401)가 메모리(402)에 액세스할 수 있도록 메모리 컨트롤러를 포함할 수도 있다.
구체적으로, 본 실시 예에서, 서버의 프로세서(401)는 다음의 명령에 따라 하나 이상의 애플리케이션 프로그램의 프로세스에 대응하는 실행 파일을 메모리(402)로 로딩할 것이며, 프로세서(401)는 메모리(402)에 저장된 애플리케이션 프로그램을 실행시켜, 다양한 기능을 수행할 것이다. 예를 들어, 프로세서(401)는 메모리(402)에 저장된 애플리케이션 프로그램을 러닝시켜, 적어도 2대의 카메라에 의해 캡처된 얼굴 이미지를 획득하고; 미리 설정된 얼굴 특징점에 따라 얼굴 이미지에 대해 특징점 등록을 수행하여 얼굴 이미지 사이의 대응하는 특징점 조합을 획득하며; 미리 설정된 알고리즘들을 사용하여 특징점 조합 사이에서 호모그래피 변환 행렬을 갖추고; 호모그래피 변환 행렬을 사용하여 특징점 조합의 변환 에러를 계산하여 에러 계산 결과를 얻고, 에러 계산 결과에 따라 얼굴 이미지의 살아 있는 인간 얼굴 검증을 수행하는 동작을 실행할 수 있다.
일부 실시 예에서, 프로세서(401)는 또한, 적어도 2대의 카메라에 의해 캡처된 이미지 데이터를 획득하고, 이미지 데이터에 대해 얼굴 검출을 수행하여 얼굴 검출 결과를 얻고, 얼굴 검출 결과가 얼굴 이미지가 검출된 것으로 지시하는 경우, 얼굴 이미지를 획득하도록 구성될 수 있다.
일부 실시 예에서, 프로세서(401)는 또한, 미리 설정된 랜덤 샘플링 컨센서스 알고리즘을 활용하여 특징점 조합을 피팅하여서, 최소 제곱법을 사용하여 호모그래피 변환 행렬을 생성하도록 구성될 수 있다.
일부 실시 예에서, 프로세서(401)는 또한 동차 좌표의 형태로 특징점 조합에서 각각의 특징점 쌍을 마킹하고, 행렬 모델을 고안하며, 행렬 모델에 의하여 각각의 특징점들의 쌍 사이의 대응 관계를 결정하고, 대응 관계에 대해 동차 변환을 수행하여 동차 대응 관계를 생성하며, 동차 대응 관계를 기반으로 특징점 조합을 피팅하여 호모그래피 변환 행렬을 생성하도록 구성될 수 있다.
일부 실시 예에서, 프로세서(401)는 또한 호모그래피 변환 행렬을 사용하여 각각의 특징점 조합에 대해 대응하는 변환 에러를 계산하고, 각각의 특징점 조합의 대응하는 변환 에러에 따라 평균값 계산을 수행하여 평균 에러를 얻고, 평균 에러를 에러 계산 결과로 결정하도록 구성될 수 있다.
일부 실시 예에서, 프로세서(401)는 또한 에러 계산 결과에 의해 지시된 평균 에러가 미리 설정된 임계 값보다 작거나 같으면 살아 있는 인간 얼굴 검증의 결과가 "통과"인 것으로 결정하거나, 에러 계산 결과에 의해 지시되는 평균 에러가 미리 설정된 임계 값보다 크면 살아 있는 인간 얼굴 검증의 결과가 "통과되지 않음"인 것으로 결정하도록 구성될 수 있다.
이상으로부터, 본 출원의 실시 예에 의해 제공되는 서버에서, 적어도 2대의 카메라가 얼굴 이미지를 캡처하는 경우, 특징점 등록이 미리 설정된 얼굴 특징점에 따라 얼굴 이미지에 대해 수행되어 얼굴 이미지 사이의 대응하는 특징점의 조합을 얻고, 그 다음에 미리 설정된 알고리즘이 활용되어 특징점 조합 사이에서 호모그래피 변환 행렬을 갖추고, 마지막으로 호모그래피 변환 행렬을 사용하여 이들 특징점 조합의 변환 에러가 계산되며, 이에 따라 에러 계산 결과에 따라 살아 있는 인간 얼굴 검증이 수행된다. 본 출원의 실시 예는 카메라를 캘리브레이션할 필요가 없으므로, 캘리브레이션 에러가 제거되고, 캡처된 얼굴 이미지에 대해 직접적으로 특징점 매칭을 수행하고, 호모그래피 변환 행렬을 갖추며, 이에 따라 생체의 판단 알고리즘의 계산량이 감소될 수 있으며; 또한, 카메라가 자유롭게 배치될 수 있고, 이에 따라 생체 판단의 유연성 및 편리성이 증가될 수 있음을 알 수 있다.
전술한 실시 예에서, 각각의 실시 예의 설명은 그 자체로 초점을 맞추고, 어떤 실시 예에서 상세하게 설명되지 않은 부분에 대해서는, 전술한 살아 있는 인간의 얼굴 검증 방법에 대한 상세한 설명을 참조하기 바라며, 여기에서 다시 반복하지 않는다.
본 출원의 실시 예에 의해 제공되는 살아 있는 인간 얼굴 검증 장치는, 예를 들면, 컴퓨터, 테블릿 컴퓨터, 터치 기능을 갖는 휴대 전화 등이며, 위의 실시 예의 살아 있는 인간 얼굴 검증 장치 및 살아 있는 인간 얼굴 검증 방법은 동일한 개념에 속하며, 살아 있는 인간 얼굴 검증 장치는 살아 있는 인간 얼굴 검증 방법의 실시 예에 의해 제공되는 방법 중 어느 하나를 실행할 수 있다.
본 출원에 의해 기술된 살아 있는 인간 얼굴 검증 방법의 경우, 당업계의 통상의 테스터(tester)는, 본 출원의 실시 예에 의해 설명된 살아 있는 인간 얼굴 검출 방법을 구현하는 플로우(flow)의 전부 또는 일부가, 관련된 하드웨어를 제어하는 것을 통해 컴퓨터 프로그램에 의해 수행될 수 있으며, 컴퓨터 프로그램은 단말의 메모리와 같은 비일시적 컴퓨터-판독 가능한 저장 매체에 저장될 수 있고, 단말의 적어도 하나의 프로세서에 의해 실행될 수 있으며, 실행 프로세스에서, 예를 들어, 살아 있는 인간 얼굴 검증 방법의 실시 예의 플로우가 포함될 수 있음을 주목해야 한다. 저장 매체는 디스크, 콤팩트 디스크, 판독 전용 메모리(read-only memory, ROM), 랜덤 액세스 메모리(random access memory, RAM) 등일 수 있다.
본 출원의 실시 예의 살아 있는 인간 얼굴 검증 장치의 경우, 각각의 기능 모듈은 프로세싱 칩에 통합될 수 있거나, 또는 각각의 모듈이 개별적으로 물리적으로 존재할 수 있거나, 둘 이상의 모듈이 하나의 모듈로 통합될 수 있다. 통합 모듈은 하드웨어의 형태로 또는 소프트웨어 기능 모듈의 형태로 구현될 수 있다. 통합 모듈이 소프트웨어 기능 모듈 형태로 구현되고 별개의 제품으로 판매 또는 사용되면, 통합 모듈은 또한 비일시적 컴퓨터-판독 가능한 저장 매체에 저장될 수 있으며, 저장 매체는 예를 들어 판독-전용 메모리, 디스크, 콤팩트 디스크 등일 수 있다.
본 출원의 실시 예에 의해 제공되는 살아 있는 인간 얼굴 검증 방법 및 장치가 상기에 상세히 소개되었지만, 구체적인 실시 예는 본 출원의 원리 및 구현 방법을 상세하게 설명하기 위해 적용되며, 위의 실시 예들의 실례(illustration)는 단지 본 출원의 방법과 그것의 핵심 개념을 이해하는데 도움을 주기 위한 것이며, 당업자의 경우, 본 출원의 구체적인 실시 예 빛 범위(scope)가 본 출원의 개념에 따라 변경될 수 있으며, 요약하면, 설명의 컨텐츠가 본 출원의 한정으로서 이해되어서는 안된다.

Claims (18)

  1. 살아 있는(live) 인간 얼굴 검증 방법으로서,
    컴퓨팅 장치가, 적어도 2대의 카메라에 의해 캡처된 얼굴 이미지를 획득하는(acquire) 단계;
    상기 컴퓨팅 장치가, 미리 설정된 얼굴 특징점에 따라 상기 얼굴 이미지에 대해 특징점 등록을 수행하여 상기 얼굴 이미지의 대응하는 특징점 조합을 얻는(obtain) 단계;
    상기 컴퓨팅 장치가, 미리 설정된 알고리즘을 활용(utilize)하여 상기 특징점 조합 사이에서 호모그래피 변환 행렬(homography transformation matrix)을 갖추는(fit out) 단계;
    상기 컴퓨팅 장치가, 상기 호모그래피 변환 행렬을 사용하여 상기 특징점 조합의 변환 에러(error)를 계산하여 에러 계산 결과를 얻는 단계; 및
    상기 컴퓨팅 장치가, 상기 에러 계산 결과에 따라 상기 얼굴 이미지의 살아 있는 인간 얼굴 검증을 수행하는 단계
    를 포함하는 얼굴 검증 방법.
  2. 제1항에 있어서,
    상기 적어도 2대의 카메라에 의해 캡처된 얼굴 이미지를 획득하는 단계는,
    적어도 두 대의 카메라에 의해 캡처된 이미지 데이터를 획득하는 단계;
    상기 이미지 데이터에 대해 얼굴 검출을 수행하여 얼굴 검출 결과를 얻는 단계; 및
    상기 얼굴 검출 결과가 얼굴 이미지가 검출된 것을 지시하는 경우, 상기 얼굴 이미지를 획득하는 단계
    를 포함하는, 얼굴 검증 방법.
  3. 제1항에 있어서,
    상기 미리 설정된 알고리즘을 활용하여 상기 특징점 조합 사이에서 호모그래피 변환 행렬을 갖추는 단계는,
    미리 설정된 랜덤 샘플링 컨센서스(random sampling consensus) 알고리즘을 활용하여 상기 특징점 조합을 피팅(fit)하여서, 최소 제곱법(least square method)을 사용하여 상기 호모그래피 변환 행렬을 생성하는 단계
    를 포함하는, 얼굴 검증 방법.
  4. 제3항에 있어서,
    상기 특징점 조합을 피팅하여서 상기 호모그래피 변환 행렬을 생성하는 단계는,
    상기 특징점 조합의 각각의 특징점 쌍을 동차 좌표(homogeneous coordinates)의 형태로 마킹(marking)하는 단계;
    행렬 모델을 고안하고(create), 상기 행렬 모델에 의하여 각각의 특징점 사이의 대응 관계를 결정하는 단계;
    상기 대응 관계에 대해 동차 변환(homogeneous transformation)을 수행하여 동차 대응 관계를 생성하는 단계; 및
    상기 동차 대응 관계에 기반하여 상기 특징점 조합을 피팅하여 상기 호모그래피 변환 행렬을 생성하는 단계
    를 포함하는, 얼굴 검증 방법.
  5. 제1항에 있어서,
    상기 호모그래피 변환 행렬을 사용하여 상기 특징점 조합의 변환 에러를 계산하여 에러 계산 결과를 얻는 단계는,
    각각의 특징점의 조합에 대하여, 상기 호모그래피 변환 행렬을 사용하여 대응하는 변환 에러(corresponding transformation error)를 계산하는 단계;
    각각의 특징점 조합의 상기 대응하는 변환 에러에 따라 평균값 계산을 수행하여 평균 에러를 얻는 단계; 및
    상기 평균 에러를 상기 에러 계산 결과로 결정하는 단계
    를 포함하는, 얼굴 검증 방법.
  6. 제5항에 있어서
    상기 에러 계산 결과에 따라 상기 얼굴 이미지의 살아 있는 인간 얼굴 검증을 수행하는 단계는,
    상기 에러 계산 결과에 의해 지시되는 상기 평균 에러가 미리 설정된 임계 값보다 작거나 같으면, 살아 있는 인간 얼굴 검증의 결과가 "통과"인 것으로 결정하는 단계; 및
    상기 에러 계산 결과에 의해 지시되는 상기 평균 에러가 상기 미리 설정된 임계 값보다 크면, 살아 있는 인간 얼굴 검증의 결과가 "통과되지 않음"인 것으로 결정하는 단계
    를 포함하는, 얼굴 검증 방법.
  7. 살아 있는 인간 얼굴 검증 장치로서,
    하나 이상의 프로세서; 및
    메모리
    를 포함하며,
    상기 메모리에 저장된 복수의 프로그램이, 상기 하나 이상의 프로세서에 의해 실행되는 경우, 상기 장치가,
    상기 컴퓨팅 장치가, 적어도 2대의 카메라에 의해 캡처된 얼굴 이미지를 획득하고;
    상기 컴퓨팅 장치가, 미리 설정된 얼굴 특징점에 따라 상기 얼굴 이미지에 대해 특징점 등록을 수행하여 상기 얼굴 이미지의 대응하는 특징점 조합을 얻으며;
    상기 컴퓨팅 장치가, 미리 설정된 알고리즘을 활용하여 상기 특징점 조합 사이에서 호모그래피 변환 행렬을 갖추고;
    상기 컴퓨팅 장치가, 상기 호모그래피 변환 행렬을 사용하여 상기 특징점 조합의 변환 에러를 계산하여 에러 계산 결과를 얻으며; 그리고
    상기 컴퓨팅 장치가, 상기 에러 계산 결과에 따라 상기 얼굴 이미지의 살아 있는 인간 얼굴 검증을 수행하는 동작을 실행하도록 하는, 얼굴 검증 장치.
  8. 제7항에 있어서,
    상기 프로그램이, 상기 하나 이상의 프로세서에 의해 실행되는 경우, 상기 컴퓨팅 장치가,
    적어도 두 대의 카메라에 의해 캡처된 이미지 데이터를 획득하고;
    상기 이미지 데이터에 대해 얼굴 검출을 수행하여 얼굴 검출 결과를 얻으며; 그리고
    상기 얼굴 검출 결과가 얼굴 이미지가 검출된 것을 지시하는 경우, 상기 얼굴 이미지를 획득하는 동작을 실행하도록 하는, 얼굴 검증 장치.
  9. 제7항에 있어서,
    상기 프로그램이, 상기 하나 이상의 프로세서에 의해 실행되는 경우, 상기 컴퓨팅 장치가,
    미리 설정된 랜덤 샘플링 컨센서스 알고리즘을 활용하여 상기 특징점 조합을 피팅하여서, 최소 제곱법을 사용하여 상기 호모그래피 변환 행렬을 생성하는 동작을 실행하도록 하는, 얼굴 검증 장치.
  10. 제9항에 있어서,
    상기 프로그램이, 상기 하나 이상의 프로세서에 의해 실행되는 경우, 상기 컴퓨팅 장치가,
    상기 특징점 조합의 각각의 특징점 쌍을 동차 좌표의 형태로 마킹하고;
    행렬 모델을 고안하고, 상기 행렬 모델에 의하여 각각의 특징점 쌍간의 대응 관계를 결정하며;
    상기 대응 관계에 대해 동차 변환을 수행하여 동차 대응 관계를 생성하고; 그리고
    상기 동차 대응 관계에 기반하여 상기 특징점 조합을 피팅하여 상기 호모그래피 변환 행렬을 생성하는 동작을 실행하도록 하는, 얼굴 검증 장치.
  11. 제7항에 있어서,
    상기 프로그램이, 상기 하나 이상의 프로세서에 의해 실행되는 경우, 상기 컴퓨팅 장치가,
    각각의 특징점의 조합에 대하여, 상기 호모그래피 변환 행렬을 사용하여 대응하는 변환 에러를 계산하고;
    각각의 특징점 조합의 상기 대응하는 변환 에러에 따라 평균값 계산을 수행하여 평균 에러를 얻으며; 그리고
    상기 평균 에러를 상기 에러 계산 결과로 결정하는 동작을 실행하도록 하는, 얼굴 검증 장치.
  12. 제11항에 있어서,
    상기 프로그램이, 상기 하나 이상의 프로세서에 의해 실행되는 경우, 상기 컴퓨팅 장치가,
    상기 에러 계산 결과에 의해 지시되는 상기 평균 에러가 미리 설정된 임계 값보다 작거나 같으면, 살아 있는 인간 얼굴 검증의 결과가 "통과"인 것으로 결정하고; 그리고
    상기 에러 계산 결과에 의해 지시되는 상기 평균 에러가 상기 미리 설정된 임계 값보다 크면, 살아 있는 인간 얼굴 검증의 결과가 "통과되지 않음"인 것으로 결정하는 동작을 실행하도록 하는, 얼굴 검증 장치.
  13. 복수의 프로그램을 저장하는 컴퓨터 판독 가능한 저장 매체로서,
    상기 프로그램은, 컴퓨팅 장치의 하나 이상의 프로세서에 의해 실행되는 경우, 상기 하나 이상의 프로세서가,
    적어도 2대의 카메라에 의해 캡처된 얼굴 이미지를 획득하고;
    미리 설정된 얼굴 특징점에 따라 상기 얼굴 이미지에 대해 특징점 등록을 수행하여 상기 얼굴 이미지의 대응하는 특징점 조합을 얻으며;
    미리 설정된 알고리즘을 활용하여 상기 특징점 조합 사이에서 호모그래피 변환 행렬을 갖추고;
    상기 호모그래피 변환 행렬을 사용하여 상기 특징점 조합의 변환 에러를 계산하여 에러 계산 결과를 얻으며; 그리고
    상기 에러 계산 결과에 따라 상기 얼굴 이미지의 살아 있는 인간 얼굴 검증을 수행하는 동작을 실행하도록 하는, 저장 매체.
  14. 제13항에 있어서,
    상기 프로그램은, 컴퓨팅 장치의 하나 이상의 프로세서에 의해 실행되는 경우, 상기 하나 이상의 프로세서가,
    적어도 두 대의 카메라에 의해 캡처된 이미지 데이터를 획득하고;
    상기 이미지 데이터에 대해 얼굴 검출을 수행하여 얼굴 검출 결과를 얻으며; 그리고
    상기 얼굴 검출 결과가 얼굴 이미지가 검출된 것을 지시하는 경우, 상기 얼굴 이미지를 획득하는 동작을 실행하도록 하는, 저장 매체.
  15. 제13항에 있어서,
    상기 프로그램은, 컴퓨팅 장치의 하나 이상의 프로세서에 의해 실행되는 경우, 상기 하나 이상의 프로세서가,
    미리 설정된 랜덤 샘플링 컨센서스 알고리즘을 활용하여 상기 특징점 조합을 피팅하여서, 최소 제곱법을 사용하여 상기 호모그래피 변환 행렬을 생성하는 동작을 실행하도록 하는, 저장 매체.
  16. 제15항에 있어서,
    상기 프로그램은, 컴퓨팅 장치의 하나 이상의 프로세서에 의해 실행되는 경우, 상기 하나 이상의 프로세서가,
    상기 특징점 조합의 각각의 특징점 쌍을 동차 좌표의 형태로 마킹하고;
    행렬 모델을 고안하고, 상기 행렬 모델에 의하여 각각의 특징점 쌍간의 대응 관계를 결정하며;
    상기 대응 관계에 대해 동차 변환을 수행하여 동차 대응 관계를 생성하고; 그리고
    상기 동차 대응 관계에 기반하여 상기 특징점 조합을 피팅하여 상기 호모그래피 변환 행렬을 생성하는 동작을 실행하도록 하는, 저장 매체.
  17. 제13항에 있어서,
    상기 프로그램은, 컴퓨팅 장치의 하나 이상의 프로세서에 의해 실행되는 경우, 상기 하나 이상의 프로세서가,
    각각의 특징점의 조합에 대하여, 상기 호모그래피 변환 행렬을 사용하여 대응하는 변환 에러를 계산하고;
    각각의 특징점 조합의 상기 대응하는 변환 에러에 따라 평균값 계산을 수행하여 평균 에러를 얻으며; 그리고
    상기 평균 에러를 상기 에러 계산 결과로 결정하는 동작을 실행하도록 하는, 저장 매체.
  18. 제11항에 있어서,
    상기 프로그램은, 컴퓨팅 장치의 하나 이상의 프로세서에 의해 실행되는 경우, 상기 하나 이상의 프로세서가,
    상기 에러 계산 결과에 의해 지시되는 상기 평균 에러가 미리 설정된 임계 값보다 작거나 같으면, 살아 있는 인간 얼굴 검증의 결과가 "통과"인 것으로 결정하고; 그리고
    상기 에러 계산 결과에 의해 지시되는 상기 평균 에러가 상기 미리 설정된 임계 값보다 크면, 살아 있는 인간 얼굴 검증의 결과가 "통과되지 않음"인 것으로 결정하는 동작을 실행하도록 하는, 저장 매체.
KR1020187021514A 2016-04-21 2017-04-13 얼굴 생체 검증 방법 및 장치 Active KR102120241B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201610252267.9 2016-04-21
CN201610252267.9A CN105868733A (zh) 2016-04-21 2016-04-21 一种人脸活体验证方法及装置
PCT/CN2017/080376 WO2017181899A1 (zh) 2016-04-21 2017-04-13 一种人脸活体验证方法及装置

Publications (2)

Publication Number Publication Date
KR20180098367A true KR20180098367A (ko) 2018-09-03
KR102120241B1 KR102120241B1 (ko) 2020-06-08

Family

ID=56632933

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187021514A Active KR102120241B1 (ko) 2016-04-21 2017-04-13 얼굴 생체 검증 방법 및 장치

Country Status (6)

Country Link
US (1) US10796179B2 (ko)
EP (1) EP3447679A4 (ko)
JP (1) JP2019509545A (ko)
KR (1) KR102120241B1 (ko)
CN (1) CN105868733A (ko)
WO (1) WO2017181899A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200029951A (ko) * 2018-09-11 2020-03-19 한국산업기술대학교산학협력단 적응적 분류에 기반한 영상정합 시스템 및 방법
WO2020205980A1 (en) * 2019-04-05 2020-10-08 Realnetworks, Inc. Face liveness detection systems and methods

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105868733A (zh) * 2016-04-21 2016-08-17 腾讯科技(深圳)有限公司 一种人脸活体验证方法及装置
CN107316029B (zh) * 2017-07-03 2018-11-23 腾讯科技(深圳)有限公司 一种活体验证方法及设备
EP3659000B1 (en) * 2017-07-28 2025-06-18 Nuro, Inc. Flexible compartment design on autonomous and semi-autonomous vehicle
EP3570250A4 (en) * 2017-10-18 2020-08-05 Sony Semiconductor Solutions Corporation IDENTIFICATION DEVICE AND ELECTRONIC DEVICE
CN108156161A (zh) * 2017-12-27 2018-06-12 百度在线网络技术(北京)有限公司 验证方法和装置
CN111046703B (zh) * 2018-10-12 2023-04-18 杭州海康威视数字技术股份有限公司 人脸防伪检测方法、装置及多目相机
CN111079470B (zh) * 2018-10-18 2023-08-22 杭州海康威视数字技术股份有限公司 人脸活体检测的方法和装置
CN111291586B (zh) * 2018-12-06 2024-05-24 北京市商汤科技开发有限公司 活体检测方法、装置、电子设备及计算机可读存储介质
CN111666786B (zh) * 2019-03-06 2024-05-03 杭州海康威视数字技术股份有限公司 图像处理方法、装置、电子设备及存储介质
CN110059590B (zh) * 2019-03-29 2023-06-30 努比亚技术有限公司 一种人脸活体验证方法、装置、移动终端及可读存储介质
CN111860055B (zh) * 2019-04-29 2023-10-24 北京眼神智能科技有限公司 人脸静默活体检测方法、装置、可读存储介质及设备
CN110636276B (zh) * 2019-08-06 2021-12-28 RealMe重庆移动通信有限公司 视频拍摄方法、装置、存储介质及电子设备
CN110751017B (zh) * 2019-09-03 2021-03-02 上海交通大学 一种基于强化学习的在线非监督的人群组分割方法及终端
CN112883762A (zh) * 2019-11-29 2021-06-01 广州慧睿思通科技股份有限公司 一种活体检测方法、装置、系统及存储介质
CN111079587B (zh) * 2019-12-03 2023-09-22 北京迈格威科技有限公司 人脸的识别方法、装置、计算机设备及可读存储介质
CN111079684B (zh) * 2019-12-24 2023-04-07 陕西西图数联科技有限公司 一种基于粗糙-精细拟合的三维人脸检测方法
CN113128258B (zh) * 2019-12-30 2022-10-04 杭州海康威视数字技术股份有限公司 活体检测方法、装置、电子设备及存储介质
CN111209870A (zh) * 2020-01-09 2020-05-29 杭州涂鸦信息技术有限公司 一种双目活体摄像头快速配准方法及其系统和装置
CN111339958B (zh) * 2020-02-28 2023-08-29 南京鑫之派智能科技有限公司 一种基于单目视觉的人脸活体检测方法及系统
CN113536844B (zh) * 2020-04-16 2023-10-31 中移(成都)信息通信科技有限公司 人脸对比方法、装置、设备及介质
CN111581411B (zh) * 2020-06-09 2023-08-22 腾讯科技(深圳)有限公司 高精度人脸形状库的构建方法、装置、设备及存储介质
CN111780673B (zh) * 2020-06-17 2022-05-31 杭州海康威视数字技术股份有限公司 一种测距方法、装置及设备
CN112287798A (zh) * 2020-10-23 2021-01-29 深圳市商汤科技有限公司 测温方法及装置、电子设备及存储介质
CN112418021A (zh) * 2020-11-10 2021-02-26 上海臻面智能信息科技有限公司 一种单rgb-ir摄像头的安全模组的实现方法及装置
CN112598716B (zh) * 2020-12-01 2024-04-05 浙江大华技术股份有限公司 一种多模态图像的配准方法、装置及系统
CN113553990B (zh) * 2021-08-09 2022-04-15 深圳智必选科技有限公司 多人脸跟踪识别的方法、装置、计算机设备及存储介质
CN118597713B (zh) * 2024-05-22 2025-11-11 福建龙净环保股份有限公司 一种机器停机控制方法及装置、电子设备、存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101923641A (zh) * 2010-09-09 2010-12-22 北京交通大学 一种改进的人脸识别方法
KR20130028734A (ko) * 2010-04-02 2013-03-19 노키아 코포레이션 얼굴 검출을 위한 방법 및 장치

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100851981B1 (ko) * 2007-02-14 2008-08-12 삼성전자주식회사 비디오 영상에서 실 객체 판별 방법 및 장치
US8315441B2 (en) 2007-06-29 2012-11-20 Nec Corporation Masquerade detection system, masquerade detection method and masquerade detection program
US8448859B2 (en) * 2008-09-05 2013-05-28 Datalogic ADC, Inc. System and method for preventing cashier and customer fraud at retail checkout
US8860795B2 (en) * 2008-10-28 2014-10-14 Nec Corporation Masquerading detection system, masquerading detection method, and computer-readable storage medium
US8553982B2 (en) * 2009-12-23 2013-10-08 Intel Corporation Model-based play field registration
US8675926B2 (en) * 2010-06-08 2014-03-18 Microsoft Corporation Distinguishing live faces from flat surfaces
CN102065313B (zh) * 2010-11-16 2012-10-31 上海大学 平行式相机阵列的未标定多视点图像校正方法
US9342886B2 (en) * 2011-04-29 2016-05-17 Qualcomm Incorporated Devices, methods, and apparatuses for homography evaluation involving a mobile device
KR101373397B1 (ko) * 2012-06-11 2014-03-13 인하대학교 산학협력단 증강현실의 호모그래피 정확도 향상을 위한 csp 기반의 ransac 샘플링 방법
CN103679118B (zh) * 2012-09-07 2017-06-16 汉王科技股份有限公司 一种人脸活体检测方法及系统
CN103971400B (zh) * 2013-02-06 2018-02-02 阿里巴巴集团控股有限公司 一种基于标识码的三维交互的方法和系统
CN104573682A (zh) * 2015-02-15 2015-04-29 四川川大智胜软件股份有限公司 一种基于人脸相似度的人脸防伪方法
CN105023010B (zh) * 2015-08-17 2018-11-06 中国科学院半导体研究所 一种人脸活体检测方法及系统
CN105205458A (zh) * 2015-09-16 2015-12-30 北京邮电大学 人脸活体检测方法、装置及系统
CN105868733A (zh) * 2016-04-21 2016-08-17 腾讯科技(深圳)有限公司 一种人脸活体验证方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130028734A (ko) * 2010-04-02 2013-03-19 노키아 코포레이션 얼굴 검출을 위한 방법 및 장치
CN101923641A (zh) * 2010-09-09 2010-12-22 北京交通大学 一种改进的人脸识别方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200029951A (ko) * 2018-09-11 2020-03-19 한국산업기술대학교산학협력단 적응적 분류에 기반한 영상정합 시스템 및 방법
WO2020205980A1 (en) * 2019-04-05 2020-10-08 Realnetworks, Inc. Face liveness detection systems and methods
US10997396B2 (en) 2019-04-05 2021-05-04 Realnetworks, Inc. Face liveness detection systems and methods
US11610437B2 (en) 2019-04-05 2023-03-21 Realnetworks Llc Face liveness detection systems and methods

Also Published As

Publication number Publication date
US20180307928A1 (en) 2018-10-25
CN105868733A (zh) 2016-08-17
US10796179B2 (en) 2020-10-06
WO2017181899A1 (zh) 2017-10-26
KR102120241B1 (ko) 2020-06-08
EP3447679A1 (en) 2019-02-27
EP3447679A4 (en) 2019-04-24
JP2019509545A (ja) 2019-04-04

Similar Documents

Publication Publication Date Title
KR102120241B1 (ko) 얼굴 생체 검증 방법 및 장치
JP3954484B2 (ja) 画像処理装置およびプログラム
JP5445460B2 (ja) なりすまし検知システム、なりすまし検知方法及びなりすまし検知プログラム
KR101791590B1 (ko) 물체 자세 인식장치 및 이를 이용한 물체 자세 인식방법
US7554575B2 (en) Fast imaging system calibration
CN110287772B (zh) 平面手掌掌心区域提取方法及装置
US20140092132A1 (en) Systems and methods for 3d pose estimation
JP2008506953A5 (ko)
CN109977770A (zh) 一种自动跟踪拍摄方法、装置、系统及存储介质
WO2018228218A1 (zh) 身份识别方法、计算设备及存储介质
WO2013009662A2 (en) Calibration between depth and color sensors for depth cameras
WO2018112788A1 (zh) 图像处理方法及设备
US20200349382A1 (en) Method and computing device for adjusting region of interest
JP6662382B2 (ja) 情報処理装置および方法、並びにプログラム
US10705217B2 (en) Controlling multiple imaging sensors
CN112818874B (zh) 一种图像处理方法、装置、设备及存储介质
US20150178927A1 (en) Method and system for determining a transformation associated with a capturing device
CN106406507B (zh) 图像处理方法以及电子设备
CN116363401B (zh) 图像匹配方法、装置、电子设备、芯片
CN113330275B (zh) 相机信息计算装置、系统、相机信息计算方法及记录介质
KR102927073B1 (ko) 안면 인식을 위한 방법 및 시스템
US20240005554A1 (en) Non-transitory computer-readable recording medium, verification method, and information processing apparatus
WO2005093656A1 (ja) 特定部分姿勢推定装置、特定部分姿勢推定方法及び特定部分姿勢推定プログラム
Skocaj et al. Evaluation of performance of smart mobile devices in machine vision tasks
Cui et al. External calibration of multi-camera system based on efficient pair-wise estimation

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
PA0105 International application

Patent event date: 20180725

Patent event code: PA01051R01D

Comment text: International Patent Application

PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20180725

Comment text: Request for Examination of Application

PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20191014

Patent event code: PE09021S01D

AMND Amendment
E601 Decision to refuse application
PE0601 Decision on rejection of patent

Patent event date: 20200413

Comment text: Decision to Refuse Application

Patent event code: PE06012S01D

Patent event date: 20191014

Comment text: Notification of reason for refusal

Patent event code: PE06011S01I

X091 Application refused [patent]
AMND Amendment
PX0901 Re-examination

Patent event code: PX09011S01I

Patent event date: 20200413

Comment text: Decision to Refuse Application

Patent event code: PX09012R01I

Patent event date: 20191213

Comment text: Amendment to Specification, etc.

Patent event code: PX09012R01I

Patent event date: 20180725

Comment text: Amendment to Specification, etc.

PX0701 Decision of registration after re-examination

Patent event date: 20200514

Comment text: Decision to Grant Registration

Patent event code: PX07013S01D

Patent event date: 20200511

Comment text: Amendment to Specification, etc.

Patent event code: PX07012R01I

Patent event date: 20200413

Comment text: Decision to Refuse Application

Patent event code: PX07011S01I

Patent event date: 20191213

Comment text: Amendment to Specification, etc.

Patent event code: PX07012R01I

Patent event date: 20180725

Comment text: Amendment to Specification, etc.

Patent event code: PX07012R01I

X701 Decision to grant (after re-examination)
GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20200602

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20200602

End annual number: 3

Start annual number: 1

PG1601 Publication of registration