KR102308122B1 - 인증결과를 활용한 안면인식서버 및 안면인식시스템 - Google Patents

인증결과를 활용한 안면인식서버 및 안면인식시스템 Download PDF

Info

Publication number
KR102308122B1
KR102308122B1 KR1020190159130A KR20190159130A KR102308122B1 KR 102308122 B1 KR102308122 B1 KR 102308122B1 KR 1020190159130 A KR1020190159130 A KR 1020190159130A KR 20190159130 A KR20190159130 A KR 20190159130A KR 102308122 B1 KR102308122 B1 KR 102308122B1
Authority
KR
South Korea
Prior art keywords
unit
user
face
feature vector
image
Prior art date
Application number
KR1020190159130A
Other languages
English (en)
Other versions
KR20210069380A (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 주식회사 포스코아이씨티
Priority to KR1020190159130A priority Critical patent/KR102308122B1/ko
Priority to PCT/KR2019/017218 priority patent/WO2020117006A1/ko
Publication of KR20210069380A publication Critical patent/KR20210069380A/ko
Application granted granted Critical
Publication of KR102308122B1 publication Critical patent/KR102308122B1/ko

Links

Images

Classifications

    • G06K9/00228
    • 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/161Detection; Localisation; Normalisation
    • G06K9/00268
    • G06K9/00288
    • G06K9/481
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • G06V10/469Contour-based spatial representations, e.g. vector-coding
    • 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/172Classification, e.g. identification
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • G07C9/20Individual registration on entry or exit involving the use of a pass
    • G07C9/22Individual registration on entry or exit involving the use of a pass in combination with an identity check of the pass holder
    • G07C9/25Individual registration on entry or exit involving the use of a pass in combination with an identity check of the pass holder using biometric data, e.g. fingerprints, iris scans or voice recognition
    • G07C9/257Individual registration on entry or exit involving the use of a pass in combination with an identity check of the pass holder using biometric data, e.g. fingerprints, iris scans or voice recognition electronically
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Collating Specific Patterns (AREA)
  • Image Analysis (AREA)

Abstract

미등록사용자를 등록사용자로 잘못 승인한 인증결과를 기초로 기준임계치를 변경할 수 있는 인증결과를 활용한 안면인식시스템은 사용자의 얼굴이미지와 해당 사용자의 기준 얼굴이미지간의 유사도를 기준 임계치와 비교하여 출입을 인증한 인증결과들을 수집하는 인증결과 수집부; 상기 인증결과들 중 미등록사용자를 등록사용자로 잘못 승인한 제1 인증결과들을 추출하고, 상기 제1 인증결과들에 포함된 유사도들 중 최대값을 기초로 제1 최적 임계치를 산출하는 최적임계치 산출부; 및 상기 인증결과들 중 상기 등록사용자로 정상 승인된 제2 인증결과에 대응되는 제1 타입 사용자에 대해 상기 기준 임계치를 유지하고, 상기 제1 인증결과에 대응되는 제2 타입 사용자에 대해 상기 기준 임계치를 상기 제1 최적 임계치로 변경하는 기준임계치 변경부를 포함하는 것을 특징으로 한다.

Description

인증결과를 활용한 안면인식서버 및 안면인식시스템{Server And System for Face Recognition Using The Certification Result}
본 발명은 안면인식기술에 관한 것이다.
안면인식(Face Recognition) 기술이란 생체인식(Biometrics) 분야 중의 하나로써 사람마다 얼굴에 담겨있는 고유한 특징 정보를 이용하여 기계가 자동으로 사람을 식별하고 인증하는 기술을 의미하는 것으로서, 비밀번호 등에 의한 기존의 인증방식에 비해 보안성이 뛰어나 최근 다양한 분야에서 널리 이용되고 있다.
일반적인 안면인식시스템은 출입게이트 등에 설치된 디바이스에서 촬영된 얼굴이미지를 서버로 전송하고, 서버가 얼굴인식 및 얼굴인식에 따른 사용자 인증을 수행하고 인증결과를 디바이스로 전송함으로써 출입게이트의 개방여부를 결정한다.
사용자에 대해 인증을 수행할 때, 일반적인 안면인식시스템은 디바이스에서 촬영된 사용자의 얼굴이미지를 미리 등록된 사용자의 얼굴이미지와 비교하는데, 얼굴이미지 간에 유사도를 산출하고, 유사도를 미리 설정된 기준임계치와 비교하여 해당 사용자를 승인 또는 거절시킨다. 이때, 일반적인 안면인식시스템은 기준임계치를 임의의 값으로 설정하기 때문에 해당 사용자를 등록사용자이나 미등록사용자로 판단하여 거절시키게 되거나, 미등록사용자이나 등록사용자로 판단하여 승인시킬 수 있다는 문제점이 있다.
본 발명은 상술한 문제점을 해결하기 위한 것으로서, 미등록사용자를 등록사용자로 잘못 승인한 인증결과를 기초로 기준임계치를 변경할 수 있는 인증결과를 활용한 안면인식서버 및 안면인식시스템을 제공하는 것을 그 기술적 과제로 한다.
또한, 본 발명은 사용자, 인증장소, 및 인증시간 별로 서로 다른 기준임계치로 변경할 수 있는 인증결과를 활용한 안면인식서버 및 안면인식시스템을 제공하는 것을 그 기술적 과제로 한다.
상술한 목적을 달성하기 위해서 본 발명의 일 측면에 따른 인증결과를 활용한 안면인식시스템은 사용자의 얼굴이미지와 해당 사용자의 기준 얼굴이미지간의 유사도를 기준 임계치와 비교하여 출입을 인증한 인증결과들을 수집하는 인증결과 수집부; 상기 인증결과들 중 미등록사용자를 등록사용자로 잘못 승인한 제1 인증결과들을 추출하고, 상기 제1 인증결과들에 포함된 유사도들 중 최대값을 기초로 제1 최적 임계치를 산출하는 최적임계치 산출부; 및 상기 인증결과들 중 상기 등록사용자로 정상 승인된 제2 인증결과에 대응되는 제1 타입 사용자에 대해 상기 기준 임계치를 유지하고, 상기 제1 인증결과에 대응되는 제2 타입 사용자에 대해 상기 기준 임계치를 상기 제1 최적 임계치로 변경하는 기준임계치 변경부를 포함하는 것을 특징으로 한다.
또한, 본 발명의 다른 측면에 따른 인증결과를 활용한 안면인식시스템은 사용자의 얼굴이미지와 해당 사용자의 기준 얼굴이미지간의 유사도를 기준 임계치와 비교하여 출입을 인증한 인증결과들을 수집하는 인증결과 수집부; 상기 인증결과들 중 미등록사용자를 등록사용자로 잘못 승인한 제1 인증결과들을 추출하고, 추출된 제1 인증결과들에 포함된 유사도들 중 최대값을 기초로 제1 최적 임계치를 산출하는 최적임계치 산출부; 및 상기 기준 임계치를 상기 제1 최적 임계치로 변경하는 기준임계치 변경부를 포함하는 것을 특징으로 한다.
본 발명에 따르면, 미등록사용자를 등록사용자로 잘못 승인한 인증결과를 기초로 기준임계치를 변경할 수 있기 때문에, 최적화된 기준임계치로 설정할 수 있을 뿐만 아니라, 보안신뢰도 또한 향상된다는 효과가 있다.
또한, 본 발명은 사용자, 인증장소, 및 인증시간에 따라 서로 다른 기준임계치를 설정하기 때문에, 일괄적으로 기준임계치를 변경하는 것에 비해 인증속도 또한 향상된다는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 안면인식서버를 안면인식시스템의 구성을 개략적으로 보여주는 블록도이다.
도 2는 본 발명의 일 실시예에 따른 안면인식서버의 구성을 개략적으로 보여주는 블록도이다.
도 3은 일 실시예에 따른 에지 디바이스 관리부(210)의 구성을 보여주는 도면이다.
도 4는 본 발명의 제1 실시예에 따른 에지 디바이스의 구성을 개략적으로 보여주는 블록도이다
도 5는 인증부가 타겟 사용자를 인증하는 방법을 예시적으로 보여주는 도면이다.
도 6은 본 발명의 제2 실시예에 따른 에지 디바이스의 구성을 개략적으로 보여주는 블록도이다.
본 명세서에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 정의하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다.
"포함하다" 또는 "가지다" 등의 용어는 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
"적어도 하나"의 용어는 하나 이상의 관련 항목으로부터 제시 가능한 모든 조합을 포함하는 것으로 이해되어야 한다. 예를 들어, "제1 항목, 제2 항목 및 제 3항목 중에서 적어도 하나"의 의미는 제1 항목, 제2 항목 또는 제3 항목 각각 뿐만 아니라 제1 항목, 제2 항목 및 제3 항목 중에서 2개 이상으로부터 제시될 수 있는 모든 항목의 조합을 의미한다.
이하, 본 발명에 따른 인증결과를 활용한 안면인식서버를 포함하는 안면인식시스템의 구성을 도 1을 참조하여 보다 구체적으로 설명한다.
도 1은 본 발명의 일 실시예에 따른 인증결과를 활용한 안면인식서버를 포함하는 안면인식시스템의 구성을 개략적으로 보여주는 블록도이다. 도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 인증결과를 활용한 안면인식서버(이하' 안면인식서버' 라함)가 적용되는 안면인식시스템(100, 이하, '안면인식시스템'이라 함)은 안면인식서버(110) 및 복수개의 에지 디바이스(120)들을 포함한다.
본 발명에 따른 안면인식서버(110)는 인증대상이 되는 사용자의 인증을 수행하는 복수개의 에지 디바이스(120)들로부터 인증결과들을 수신하여 이를 기초로 기준임계치를 변경한다. 이때, 기준임계치는 에지 디바이스(120)에 의해 사용자를 등록사용자로 판단되는 기준이 되는 값이다. 등록사용자는 사용자 등록부(220)에 의해 등록된 사용자를 의미한다.
구체적으로, 기준임계치는 복수개의 에지 디바이스(120)에 의해 산출되는 유사도와 비교된다. 이때, 유사도는 사용자의 얼굴이미지와 해당 사용자의 기준 얼굴이미지간의 유사한 정도를 나타내는 값이다. 이에 따라 복수개의 에지 디바이스(120)는 사용자의 얼굴이미지와 해당 사용자의 기준 얼굴이미지간의 유사도를 기준임계치와 비교하여 사용자의 인증을 수행하게 된다.
안면인식서버(110)는 변경된 기준임계치를 복수개의 에지디바이스(120)로 전송하게 된다.
한편, 안면인식서버(110)는 얼굴인식모델을 생성하고, 생성된 얼굴인식모델을 이용하여 사용자 단말기(130)로부터 입력되는 사용자의 얼굴정보로부터 추출된 특징벡터를 이용하여 타겟사용자의 인증을 위한 어레이 파일(Array File)을 생성한다. 안면인식서버(110)는 생성된 어레이 파일을 에지 디바이스(120)로 전송함으로써 에지 디바이스(120)가 타겟사용자를 인증할 수 있도록 한다.
본 발명에 따른 안면인식서버(110)는 도 2에 도시된 바와 같이, 에지 디바이스 관리부(210), 사용자 등록부(220), 사용자 데이터 베이스(222), 입력 이미지 생성부(225), 얼굴인식부(230), 얼굴인식모델(235), 어레이 파일 생성부(240), 출입권한정보 관리부(250), 인터페이스부(270), 얼굴인식모델 트레이닝부(280)를 포함한다.
본 발명에 따른 에지 디바이스 관리부(210)는 각 장소에 설치되어 있는 복수개의 에지 디바이스(120)들의 정보를 에지 디바이스 정보 데이터베이스(219)에 등록한다. 일 실시예에 있어서, 에지 디바이스 관리부(210)는 각 에지 디바이스(120)의 식별정보를 각 에지 디바이스가 설치된 장소와 매핑시켜 에지 디바이스 정보 데이터베이스(219)에 저장할 수 있다. 여기서 에지 디바이스(120)의 식별정보는 제조사 및 시리얼 번호등을 포함할 수 있다.
한편, 에지 디바이스 관리부(210)는 인터페이스부(270)를 통해 미리 정해진 기간마다 에지 디바이스(120)로부터 인증결과들을 수신하고, 수신된 인증결과들을 에지 디바이스 정보 데이터베이스(219)에 저장할 수 있다. 이때, 인증결과는 에지 디바이스(120)가 사용자들에 대해 출입을 인증한 결과로 획득된 것이다.
본 발명에 따른 에지 디바이스 관리부(210)는 복수개의 인증결과를 수집하고, 수집된 인증결과들을 기초로 기준임계치를 변경할 수 있다.
이하, 도 3을 참조하여 본 발명에 따른 에지 디바이스 관리부(210)에 대해 보다 구체적으로 설명한다.
도 3은 일 실시예에 따른 에지 디바이스 관리부(210)의 구성을 보여주는 도면이다.
에지 디바이스 관리부(210)는 인증결과 수집부(212), 최적임계치 산출부(214), 및 기준임계치 변경부(218)를 포함한다.
인증결과 수집부(212)는 각 에지 디바이스(120)로부터 복수개의 인증결과를 수집한다. 구체적으로 인증결과 수집부(212)는 인터페이스부(270)를 통해 각 에지 디바이스(120)로부터 미리 정해진 기간마다 복수개의 인증결과를 수집할 수 있다. 이때, 인증결과는 미등록사용자를 등록사용자로 잘못 승인한 제1 인증결과, 사용자를 등록사용자로 정상 승인한 제2 인증결과, 및 등록사용자를 미등록사용자로 잘못 승인한 제3 인증결과 등을 포함할 수 있다. 여기서 제2 인증결과는 정상 인증결과로 기재될 수도 있다.
인증결과 수집부(212)는 수집된 복수개의 인증결과를 에지 디바이스 데이터베이스(219)에 저장한다.
최적임계치 산출부(214)는 최적임계치를 산출한다. 구체적으로 최적임계치 산출부(214)는 인증결과들을 기초로 최적임계치를 산출한다.
최적임계치 산출부(214)는 에지 디바이스 데이터베이스(219)에 저장된 복수개의 인증결과를 중 복수개의 제1 인증결과를 추출한다. 이때, 제1 인증결과는 미등록사용자를 등록사용자로 잘못 승인하여 발생한 인증결과를 의미한다.
일 실시예에 있어서, 인증결과는 사용자의 얼굴이미지와 해당 사용자의 기준 얼굴이미지간의 유사도, 에지 디바이스가 설치된 장소정보, 출입시간 정보, 및 사용자 정보 중 적어도 하나를 포함할 수 있다.
여기서 최적임계치 산출부(214)는 에지 디바이스 데이터베이스(219)에 저장된 복수개의 인증결과에서 제1 인증결과들을 추출한다고 설명하였으나, 이는 하나의 실시예일뿐, 최적임계치 산출부(214)는 인증결과 수집부(212)로부터 복수개의 인증결과를 전달받아 제1 인증결과들을 추출할 수도 있다.
최적임계치 산출부(214)는 제1 인증결과들에 포함된 유사도들 중 최대값을 기초로 제1 최적임계치를 산출한다. 구체적으로 최적임계치 산출부(214)는 미등록사용자를 등록사용자로 잘못 승인한 제1 인증결과에 포함된 유사도들 중 최대값을 기초로 제1 최적임계치를 산출한다.
최적임계치 산출부(214)는 제1 인증결과에 포함된 유사도들 중 최대값을 제1 최적임계치로 산출한다. 일 실시예에 있어서, 최적임계치 산출부(214)는 제1 인증결과에 포함된 유사도들 중 최대값에 마진값을 합산한 결과값을 제1 최적임계치로 산출할 수 있다.
일 실시예에 있어서, 최적임계치 산출부(214)는 등록된 각 사용자 별로 오인식률을 산출하고, 오인식률에 비례하는 마진값을 산출할 수 있다. 이때, 오인식률은 미등록사용자를 등록사용자로 잘못 승인한 비율을 의미한다. 따라서, 해당 등록사용자의 마진값이 오인식률에 비례하게 산출될 수 있다.
이러한 실시예를 따르는 경우, 각 사용자 별로 오인식률에 따라 서로 다른 마진값이 합산된 제1 최적임계치가 산출될 수 있다.
예컨대, 사용자 a가 오인식률이 50%이고, 사용자 b가 오인식률이 30%이면, 최적임계치 산출부(214)는 사용자 a에 대한 마진값을 0.07로 산출할 수 있고, 사용자 b에 대한 마진값을 0.05로 산출할 수 있다.
일 실시예에 있어서, 최적임계치 산출부(214)는 등록사용자로 정상 승인된 제2 인증결과에 대응되는 제1 타입 사용자에 대해 최적임계치를 산출하지 않을 수 있다. 이때, 제1 타입 사용자는 등록사용자로 정상 승인된 제2 인증결과를 갖는 사용자를 의미한다.
일 실시예에 있어서, 최적임계치 산출부(214)는 제1 인증결과들을 제1 인증결과에 대응되는 제2 타입 사용자별로 분류하고, 제2 타입 사용자 별로 제1 최적임계치를 다른 값으로 산출할 수 있다. 이때, 제2 타입 사용자는 미등록사용자가 등록사용자로 잘못 승인되었을 때, 제1 인증결과를 갖는 사용자로서, 해당 미등록사용자의 얼굴이미지와 비교대상이 된 기준 얼굴이미지를 등록한 사용자를 의미한다.
예컨대, 사용자는 사용자 a, 사용자 b, 및 사용자 c가 존재하고, 제1 인증결과는 제1-a 인증결과, 제1-b 인증결과, 제1-c 인증결과, 제1-d 인증결과, 제1-e 인증결과, 및 제1-f 인증결과가 존재한다. 이때, 최적임계치 산출부(214)는 사용자 a에 대한 제1 인증결과를 분류하고, 사용자 b에 대한 제1 인증결과를 분류하고 사용자 c에 대한 제1 인증결과를 분류한다.
사용자 a에 대한 제1 인증결과는 제1-a 인증결과, 제1-b 인증결과, 제1-c 인증결과가 존재하고, 사용자 b에 대한 제1 인증결과는 제1-d 인증결과, 제1-e 인증결과, 제1-f 인증결과가 존재하는 경우, 최적임계치 산출부(214)는 사용자 a에 대한 제1 인증결과들을 제1-a 인증결과, 제1-b 인증결과, 제1-c 인증결과로 분류하고, 사용자 b에 대한 제1 인증결과들을 제1-d 인증결과, 제1-e 인증결과, 제1-f 인증결과로 분류한다.
최적임계치 산출부(214)는 사용자 a에 대한 제1 최적임계치를 제1-a 인증결과, 제1-b 인증결과, 제1-c 인증결과에 따라 산출하고, 사용자 b에 대한 제1 최적임계치를 제1-d 인증결과, 제1-e 인증결과, 제1-f 인증결과에 따라 산출하게 된다. 또한, 사용자 c에 대한 제1 인증결과가 존재하지 않으므로, 최적임계치 산출부(214)는 사용자 c에 대한 제1 최적임계치를 산출하지 않는다.
일 실시예에 있어서, 최적임계치 산출부(214)는 인증결과들 중 등록사용자를 미등록사용자로 잘못 승인한 제3 인증결과들에 포함된 유사도들 중 최소값을 기초로 제2 최적임계치를 추가로 산출할 수 있다. 이때, 제3 타입 사용자는 제3 인증결과를 갖는 등록사용자로서, 인증을 시도하였으나 미등록사용자로 잘못 승인된 사용자를 의미한다.
이에 따라 해당 사용자의 기준임계치가 제2 최적임계치로 낮아질 수 있어 오인식률이 낮아질 뿐만 아니라, 인증속도 또한 향상될 수 있다.
이러한 실시예를 따르는 경우, 최적임계치 산출부(214)는 제3 인증결과들을 제3 인증결과에 대응되는 제3 타입 사용자별로 분류하고, 제3 타입 사용자 별로 제2 최적임계치를 다른 값으로 산출 할 수도 있다.
일 실시예에 있어서, 최적임계치 산출부(214)는 제1 인증결과들을 제1 인증결과를 송신한 에지 디바이스(120)별로 분류하고, 에지 디바이스(120) 별로 제1 최적 임계치를 다른 값으로 산출할 수 있다. 이때, 최적임계치 산출부(214)는 제3 인증결과들에 대해서도 에지 디바이스(120) 별로 제2 최적 임계치를 다른 값으로 산출할 수도 있다.
일 실시예에 있어서, 최적임계치 산출부(214)는 제1 인증결과가 발생된 출입시간 별로 분류하고, 각 시간별로 제1 최적임계치를 다른 값으로 산출할 수 있다. 이때, 최적임계치 산출부(214)는 제3 인증결과들에 대해서도 각 시간 별로 제2 최적임계치를 다른 값으로 산출할 수 있다.
기준임계치 변경부(218)는 미리 정해진 기준임계치를 최적임계치 산출부(214)에 의해 산출된 최적임계치로 변경한다.
이와 같이 본 발명은 인증결과를 기초로 산출된 최적임계치로 기준임계치를 변경함으로써, 보안성능이 향상된다는 효과가 있다.
일 실시예에 있어서, 기준임계치 변경부(218)는 인증결과들 중 등록사용자로 정상 승인된 제2 인증결과에 대응되는 제1 타입 사용자에 대해 기준임계치를 유지하고, 제1 인증결과에 대응되는 제2 타입 사용자에 대해 기준임계치를 제1 최적임계치로 변경할 수 있다.
이러한 실시예를 따르는 경우, 미등록사용자를 등록사용자로 잘못 승인한 제1 인증결과가 존재하는 제2 타입 사용자에 대해서만 기준임계치가 최적임계치로 변경된다.
기준임계치 변경부(218)는 등록사용자를 미등록사용자로 잘못 승인한 제3 인증결과에 대응되는 제3 타입 사용자에 대해 기준임계치를 최적임계치 산출부(214)에 의해 산출된 제2 최적 임계치로 변경할 수 있다. 이때, 제3 타입 사용자는 등록사용자로서, 인증을 시도하였으나 미등록사용자로 잘못 승인된 사용자를 의미한다.
기준임계치 변경부(218)는 각 제2 타입 사용자의 기준임계치를 제2 타입 사용자 별로 서로 다른 값으로 산출된 제1 최적임계치로 각각 변경할 수 있고, 각 제3 타입 사용자의 기준임계치를 제3 타입 사용자 별로 서로 다른 값으로 산출된 제2 최적임계치로 각각 변경할 수 있다.
또한, 기준임계치 변경부(218)는 각 에지 디바이스의 기준임계치를 제2 타입 사용자들의 에지 디바이스 별로 산출된 제1 최적 임계치들로 변경할 수 있고, 제3 타입사용자들의 에지 디바이스 별로 산출된 제2 최적 임계치들로 변경할 수 있다.
또한, 기준임계치 변경부(218)는 각 출입시간의 기준임계치를 제2 타입 사용자들의 출입시간 별로 산출된 제1 최적 임계치들로 변경할 수 있고, 제3 타입 사용자들의 출입시간 별로 산출된 제2 최적임계치들로 변경할 수 있다.
기준임계치를 제1 최적임계치로 변경하는 경우, 기준임계치는 기존보다 상승될 수 밖에 없다. 왜냐하면 제1 최적임계치는 해당 미등록사용자의 승인 시 산출된 것이기 때문이다. 이에 따라 기준임계치 변경부(218)가 일괄적으로 기준임계치를 제1 최적임계치로 변경하는 경우 에지 디바이스(120)의 인증속도가 느려지게 된다.
하지만, 상술한 실시예와 같이, 본 발명에 따른 기준임계치 변경부(218)가 각 사용자. 에지 디바이스(120), 출입시간 별로 기준임계치를 변경함으로써 기준임계치가 변경될 필요할 때에만 변경하기 때문에, 에지 디바이스(120)의 인증속도가 향상될 수 있다.
예컨대, 에지 디바이스(120)가 a 등록사용자에 대해 인증을 수행할 때 기준임계치를 0.6로 하여 인증을 수행하고, b 등록사용자에 대해 인증을 수행할때에는 기준임계치를 0.5로하여 인증을 수행하며, c 등록사용자에 대해 인증을 수행할때에는 기준임계치를 0.4로 하여 인증을 수행하게 된다.
이러한 경우, 기준임계치 변경부(218)가 a 내지 c 등록사용자 모두에 대해 기준임계치를 0.6으로 설정하면 에지 디바이스(120)의 인증속도가 낮아지지만, a 내지 c 등록사용자 별로 서로 다르게 기준임계치를 설정함으로써 에지 디바이스(120)의 인증속도가 향상될 수 있다.
다만, 상술한 실시예는 정보단위로 서로 다르게 기준임계치를 설정함으로써 관리의 어려움이 발생할 수 있다. 따라서 변형된 실시예에 있어서, 기준임계치 변경부(218)는 제1 최적임계치로 기준임계치를 일괄적으로 변경한 후 에지 디바이스(120)의 인증속도가 미리 정해진 속도보다 낮으면, 각 사용자, 에지디바이스, 또는 출입시간 별로 결정된 제1 최적임계치로 기준임계치를 변경할 수 있다.
구체적으로 기준임계치 변경부(218)는 기준임계치를 제1 최적임계치로 일괄적으로 변경한다. 그리고 기준임계치 변경부(218)는 제1 최적임계치로 변경된 기준임계치로 인증을 수행하는 에지 디바이스(120)의 인증속도가 미리 정해진 속도보다 낮은지 판단한다. 기준 임계치 변경부(218)는 에지 디바이스(120)의 인증속도가 미리 정해진 속도보다 높으면 변경된 기준임계치를 유지한다. 하지만, 에지 디바이스(120)의 인증속도가 미리 정해진 속도보다 낮으면, 기준임계치 변경부(218)는 각 사용자, 에지 디바이스(120), 출입시간 중 적어도 하나에 따라 기준임계치를 제1 최적임계치로 변경한다.
일예로, 기준 임계치 변경부(218)는 제1 최적 임계치로 변경 시 사용자에 대한 인증을 수행하는 에지디바이스(120)의 인증속도를 산출하고, 산출된 인증속도가 미리 정해진 기준속도보다 낮으면 인증결과들 중 등록사용자로 정상 승인된 제2 인증결과에 대응되는 제1 타입 사용자에 대해 기준임계치를 유지하고, 제1 인증결과에 대응되는 제2 타입 사용자에 대해 기준임계치를 제1 최적임계치로 변경할 수 있다.
이를 예로써 설명한다.
미리 정해진 기준임계치가 0.2이고, a 내지 e 등록사용자가 존재하며, 제1 최적임계치는 0.6으로 산출되고, a 등록사용자에 대한 제1 최적임계치는 0.6이고, b 등록사용자에 대한 제1 최적임계치는 0.5이며, c 등록사용자에 대한 제1 최적임계치는 0.4 인 경우, 기준임계치 변경부(218)는 a 내지 e 등록사용자에 대해 기준임계치(0.2)를 0.6으로 변경한다. 그리고, 에지 디바이스(120)의 인증속도가 미리 정해진 속도보다 낮으면, 기준임계치 변경부(218)는 a 등록사용자에 대한 기준임계치를 0.6으로 변경하고, b 등록사용자에 대한 기준임계치를 0.5로 변경하며, c 등록사용자에 대한 기준임계치를 0.4로 변경하고, d 등록사용자 및 e 등록사용자에 대한 기준임계치는 0.2로 유지한다.
이와 같이 본원발명은 에지 디바이스(120)의 인증속도에 따라 기준임계치를 일괄적으로 변경하거나 사용자, 에지 디바이스(120), 출입시간별로 변경함으로써, 보안성능을 향상시킬 수 있을 뿐만 아니라, 에지 디바이스(120)의 인증속도 또한 향상시킬 수 있다는 효과가 있다.
한편, 기준임계치 변경부(218)는 변경된 기준임계치를 각 에지 디바이스(120)로 배포한다. 구체적으로 기준임계치 변경부(218)는 인터페이스부(270)를 통해 변경된 기준임계치를 각 에지 디바이스(120)로 배포할 수 있다. 이에 따라 각 에지 디바이스(120)는 변경된 기준임계치로 인증을 수행하게 된다.
다시 도 2를 참조하면, 사용자 등록부(220)는 등록을 희망하는 사용자의 사용자 단말기(130)로부터 하나 이상의 사용자 이미지를 수신한다. 사용자 등록부(220)는 사용자 이미지가 수신되면 해당 사용자가 사용자 이미지와 동일인인지 여부를 확인하고, 동일인인 것으로 판단되면 해당 사용자에게 부여되어 있는 출입권한정보를 획득하여 사용자 이미지와 함께 사용자 데이터 베이스(222)에 등록한다.
입력 이미지 생성부(225)는 사용자 등록부(220)에 의해 입력된 사용자 이미지로부터 얼굴인식에 이용될 입력 이미지를 생성한다. 구체적으로 입력 이미지 생성부(225)는 하나의 사용자 이미지를 미리 정해진 단계까지 다운샘플링하거나 업샘플링함으로써 하나의 사용자 이미지로부터 해상도가 서로 다른 복수개의 사용자 이미지들을 생성한다.
일 실시예에 있어서, 입력 이미지 생성부(225)는 사용자 이미지에 가우시안 피라미드(Gaussian Pyramid)를 적용함으로써 다운샘플링된 사용자 이미지를 생성하거나, 사용자 이미지에 라플라시안 피라미드(Laplacian Pyramid)를 적용함으로써 업샘플링된 사용자 이미지를 생성할 수 있다.
해상도가 서로 다른 복수개의 사용자 이미지가 생성되면, 입력 이미지 생성부(225)는 각각의 사용자 이미지에 대해, 사용자 이미지 상에서 미리 정해진 픽셀크기의 윈도우를 이동시켜가면서 획득되는 복수개의 이미지를 입력 이미지로 생성한다. 입력 이미지 생성부(225)는 생성된 복수개의 입력 이미지를 얼굴인식부(230)로 입력한다.
얼굴인식부(230)는 얼굴인식모델 트레이닝부(280)에 의해 트레이닝된 얼굴인식모델(235)에 입력 이미지 생성부(225)에 의해 생성된 복수개의 입력 이미지를 입력함으로써 얼굴영역이 포함된 얼굴이미지를 획득하고, 획득된 얼굴이미지가 사람을 촬영한 실물이미지인지 여부를 판단하고, 획득된 얼굴 이미지로부터 특징벡터를 추출한다.
일 실시예에 있어서 얼굴인식모델(230)은 입력 이미지로부터 얼굴이미지를 추출하는 얼굴이미지 추출부(237), 추출된 얼굴이미지로부터 실물이미지 여부를 판단하는 실물이미지 판단부(238) 및 얼굴이미지로부터 특징벡터를 추출하는 특징벡터 추출부(239)를 포함할 수 있다.
본 발명에 따른 얼굴이미지 추출부(237)는 컨벌루션 신경망(Convolutional Neural Network: CNN)을 기반으로 구성되어 입력 이미지로부터 얼굴영역이 포함된 얼굴이미지를 추출한다. 이러한 얼굴이미지 추출부(237)는 제1 얼굴탐지부, 제2 얼굴탐지부, 제3 얼굴탐지부, 및 얼굴 이미지 정렬부를 포함한다.
제1 얼굴탐지부는 얼굴인식부(230)에 의해 입력되는 입력 이미지에 컨벌루션 연산을 적용함으로써 각 입력 이미지들의 피쳐를 추출하고, 추출된 피쳐를 기초로 해당 입력 이미지 상에서 얼굴영역을 1차적으로 추출한다.
이를 위해, 제1 얼굴탐지부는 n개의 컨벌루션 연산부, 샘플링부, 제1 및 제2 차원감소부, 및 제1 확률값 연산부를 포함한다.
일 실시예에 있어서, 제1 얼굴탐지부는 3개의 컨벌루션 연산부를 포함할 수 있다. 설명의 편의를 위해 제1 얼굴탐지부가 3개의 컨벌루션 연산부를 포함하는 것으로 설명하지만, 이는 하나의 예일 뿐 제1 얼굴탐지부는 4개 이상의 컨벌루션 연산부를 포함하거나 1개 또는 2개의 컨벌루션 연산부를 포함할 수도 있을 것이다.
제1 내지 제3 컨벌루션 연산부 각각은 입력되는 이미지에 컨벌루션 필터를 적용하여 피쳐맵을 생성하고, 생성된 피쳐맵에 활성화함수를 적용함으로써 피쳐맵에 비선형적 특성을 반영한다. 이때, 제1 내지 제3 컨벌루션 연산부에 적용되는 컨벌루션 필터는 서로 상이한 필터일 수 있다.
일 실시예에 있어서, 제1 내지 제3 컨벌루션 연산부에서 이용되는 활성화함수는 피쳐맵의 픽셀값들 중 양의 값은 그대로 출력하고 음의 값은 미리 정해진 크기만큼 감소된 값으로 출력하는 활성화함수일 수 있다. 여기서, 활성화함수란 복수의 입력정보에 가중치를 부여하여 결합해 완성된 결과값을 출력하는 함수를 의미한다.
샘플링부는 제1 컨벌루션 연산부로부터 출력되는 피쳐맵에 샘플링 필터를 적용하여 피쳐맵으로부터 특징값을 추출한다. 일 실시예에 있어서, 샘플링부는 피쳐맵 상에서 샘플링 필터에 상응하는 영역에 포함된 픽셀값들 중 최대값을 피쳐맵의 특징값으로 추출할 수 있다. 이러한 실시예에 따르는 경우 샘플링부는 맥스 풀링(Max Pooling) 레이어로 구현될 수 있고, 맥스 풀링 레이어를 통해 피쳐맵의 차원이 감소된다. 샘플링부는 차원이 감소된 피쳐맵을 제2 컨벌루션 연산부로 입력한다.
제1 차원감소부는 제3 컨벌루션 연산부에서 출력되는 피쳐맵에 제1 차원감소 필터를 적용함으로써 제3 컨벌루션 연산부에서 출력되는 피쳐맵의 차원을 감소시킨다. 일 실시예에 있어서 제1 차원감소 필터는 피쳐맵을 2차원으로 감소시킬 수 있는 필터로 설정될 수 있다.
제1 확률값 연산부는 제1 차원감소부에 의해서 출력되는 2차원의 출력 데이터에 미리 정해진 분류함수를 적용함으로써 해당 입력 이미지에 얼굴영역이 포함되어 있는지 여부에 대한 제1 확률값을 계산한다. 일 실시예에 있어서, 제1 확률값 연산부는 산출된 제1 확률값이 제1 문턱값 이상이면 입력 이미지에 얼굴영역이 포함되어 있는 것으로 판단할 수 있다.
제2 차원감소부는 제1 확률값 연산부에 의해 산출된 제1 확률값이 제1 문턱값 이상인 경우 제3 컨벌루션 연산부에서 출력되는 피쳐맵에 제2 차원감소 필터를 적용함으로써 제3 컨벌루션 연산부에서 출력되는 피쳐맵의 차원을 감소시킨다. 일 실시예에 있어서 제2 차원감소 필터는 피쳐맵을 4차원으로 감소시킬 수 있는 필터로 설정될 수 있고, 제2 차원 감소부는 4차원으로 출력되는 4개의 값을 해당 입력 이미지 상에서의 얼굴영역 좌표로 결정한다. 이때, 얼굴영역의 좌표는 얼굴이 포함된 영역을 사각형 형태의 바운딩박스(Bounding Box)로 표시하였을 때 좌측 상단 꼭지점의 좌표와 우측 하단 꼭지점의 좌표로 정의되거나, 우측상단 꼭지점의 좌표와 좌측 하단 꼭지점의 좌표로 정의될 수 있다.
제2 얼굴탐지부는 제1 얼굴탐지부에 의해 얼굴영역이 포함된 것으로 판단된 입력 이미지들 및 해당 입력 이미지들 상에서의 얼굴영역의 좌표를 입력 받고, 해당 입력 이미지들 상에서 얼굴영역의 좌표에 해당하는 제1 서브 입력 이미지들에 컨벌루션 연산을 적용함으로써 제1 서브 입력 이미지들의 피쳐를 추출하고, 추출된 피쳐를 기초로 제1 서브 입력 이미지들 상에서 얼굴영역을 2차적으로 추출한다.
이를 위해, 제2 얼굴탐지부는 n개의 컨벌루션 연산부, 제2 내지 제3 샘플링부, 제1 차원증가부, 제3 및 제4 차원감소부, 및 제2 확률값 연산부를 포함한다.
일 실시예에 있어서, 제2 얼굴탐지부는 3개의 컨벌루션 연산부를 포함할 수 있다. 설명의 편의를 위해 제2 얼굴탐지부가 3개의 컨벌루션 연산부를 포함하는 것으로 설명하지만, 이는 하나의 예일 뿐 제2 얼굴탐지부는 제1 얼굴탐지부에 포함된 컨벌루션 연산부의 개수 이상의 컨벌루션 연산부를 포함할 수 있다.
제4 내지 제6 컨벌루션 연산부 각각은 입력되는 이미지에 컨벌루션 필터를 적용하여 피쳐맵을 생성하고, 생성된 피쳐맵에 활성화함수를 적용함으로써 피쳐맵에 비선형적 특성을 반영한다. 일 실시예에 있어서, 제4 내지 제6 컨벌루션 연산부가 이용하는 활성화함수는 피쳐맵의 픽셀값들 중 양의 값은 그대로 출력하고 음의 값은 미리 정해진 크기만큼 감소된 값으로 출력하는 활성화함수일 수 있다.
제2 샘플링부는 제4 컨벌루션 연산부로부터 출력되는 피쳐맵에 샘플링 필터를 적용하여 해당 피쳐맵에서 특징값을 추출하고, 제3 샘플링부는 제5 컨벌루션 연산부로부터 출력되는 피쳐맵에 샘플링 필터를 적용하여 해당 피쳐맵에서 특징값을 추출한다. 일 실시예에 있어서, 제2 및 제3 샘플링부는 각각의 피쳐맵 상에서 샘플링 필터에 상응하는 영역에 포함된 픽셀값들 중 최대값을 피쳐맵의 특징값으로 추출할 수 있다. 이러한 실시예에 따르는 경우 제2 및 제3 샘플링부는 맥스풀링 레이어로 구현될 수 있고, 맥스풀링 레이어를 통해 각 피쳐맵의 차원이 감소된다.
제1 차원증가부는 제6 컨벌루션 연산부에서 출력되는 피쳐맵이 미리 정해진 크기의 차원을 갖도록 복수개의 노드들을 이용하여 피쳐맵의 차원을 증가시킨다. 일 실시예에 있어서, 제1 차원증가부는 제6 컨벌루션 연산부에서 출력되는 피쳐맵이 128*128의 크기를 갖거나 256*256의 크기를 갖도록 차원을 증가시킬 수 있다.
제1 차원 증가부는 차원이 증가된 피쳐맵에 활성화함수를 적용함으로써 차원이 증가된 피쳐맵에 비선형적 특정을 반영한다. 일 실시예에 있어서, 제1 차원 증가부는 피쳐맵의 픽셀값들 중 양의 값은 그대로 출력하고 음의 값은 미리 정해진 크기만큼 감소된 값으로 출력하는 활성화함수를 적용하여 피쳐맵에 비선형적 특성을 반영할 수 있다.
제3 차원감소부는 제1 차원증가부에서 출력되는 피쳐맵에 제3 차원감소 필터를 적용함으로써 제1 차원증가부에서 출력되는 피쳐맵의 차원을 감소시킨다. 일 실시예에 있어서 제3 차원감소 필터는 피쳐맵을 2차원으로 감소시킬 수 있는 필터로 설정될 수 있다.
제2 확률값 연산부는 제3 차원감소부에 의해서 출력되는 2차원의 출력 데이터에 미리 정해진 분류함수를 적용함으로써 해당 제1 서브 입력 이미지에 얼굴영역이 포함되어 있는지 여부에 대한 제2 확률값을 계산한다. 일 실시예에 있어서, 제2 확률값 연산부는 산출된 제2 확률값이 제1 문턱값보다 큰 제2 문턱값 이상이면 해당 제1 서브 입력이미지에 얼굴영역이 포함된 것으로 판단할 수 있다.
제4 차원감소부는 제2 확률값 연산부에 의해 산출된 제2 확률값이 제2 문턱값 이상인 경우 제1 차원증가부에서 출력되는 피쳐맵에 제4 차원감소 필터를 적용함으로써 제1 차원증가부에서 출력되는 피쳐맵의 차원을 감소시킨다. 일 실시예에 있어서 제4 차원감소 필터는 피쳐맵을 4차원으로 감소시킬 수 있는 필터로 설정될 수 있고, 제4 차원 감소부는 4차원으로 출력되는 4개의 값을 해당 제1 서브 입력 이미지 상에서의 얼굴영역 좌표로 결정한다. 이때, 얼굴영역의 좌표는 얼굴이 포함된 영역을 사각형 형태의 바운딩박스로 표시하였을 때 좌측 상단 꼭지점의 좌표와 우측 하단 꼭지점의 좌표로 정의되거나, 우측상단 꼭지점의 좌표와 좌측 하단 꼭지점의 좌표로 정의될 수 있다.
제3 얼굴탐지부는 제2 얼굴탐지부에 의해 얼굴영역이 포함된 것으로 판단된 제1 서브 입력 이미지들 및 해당 제1 서브 입력 이미지들 상에서의 얼굴영역의 좌표를 입력 받고, 해당 제1 서브 입력 이미지들 상에서 얼굴영역의 좌표에 해당하는 제2 서브 입력 이미지들에 컨벌루션 연산을 적용함으로써 제2 서브 입력 이미지들의 피쳐를 추출하고, 추출된 피쳐를 기초로 제2 서브 입력 이미지들 상에서 얼굴영역을 3차적으로 추출한다.
이를 위해, 제3 얼굴탐지부는 n+1개의 컨벌루션 연산부, 제4 내지 제6 샘플링부, 제2 차원증가부, 제5 내지 제6 차원감소부, 및 제3 확률값 연산부를 포함한다.
일 실시예에 있어서, 제3 얼굴탐지부는 4개의 컨벌루션 연산부를 포함할 수 있다. 설명의 편의를 위해 제3 얼굴탐지부가 4개의 컨벌루션 연산부를 포함하는 것으로 설명하지만, 이는 하나의 예일 뿐 제3 얼굴탐지부는 제2 얼굴탐지부에 포함된 컨벌루션 연산부의 개수 이상의 컨벌루션 연산부를 포함한다면 그 개수에는 제한이 없을 수 있다.
제7 내지 제10 컨벌루션 연산부 각각은 입력되는 이미지에 컨벌루션 필터를 적용하여 피쳐맵을 생성하고, 생성된 피쳐맵에 활성화함수를 적용함으로써 피쳐맵에 비선형적 특성을 반영한다. 일 실시예에 있어서, 제7 내지 제10 컨벌루션 연산부가 이용하는 활성화함수는 피쳐맵의 픽셀값들 중 양의 값은 그대로 출력하고 음의 값은 미리 정해진 크기만큼 감소된 값으로 출력하는 활성화함수일 수 있다.
제4 샘플링부는 제7 컨벌루션 연산부로부터 출력되는 피쳐맵에 샘플링 필터를 적용하여 해당 피쳐맵에서 특징값을 추출하고, 제5 샘플링부는 제8 컨벌루션 연산부로부터 출력되는 피쳐맵에 샘플링 필터를 적용하여 해당 피쳐맵에서 특징값을 추출하며, 제6 샘플링부는 제9 컨벌루션 연산부로부터 출력되는 피쳐맵에 샘플링 필터를 적용하여 해당 피쳐맵에서 특징값을 추출한다. 일 실시예에 있어서, 제4 내지 제6 샘플링부는 각각의 피쳐맵 상에서 샘플링 필터에 상응하는 영역에 포함된 픽셀값들 중 최대값을 피쳐맵의 특징값으로 추출할 수 있다. 이러한 실시예에 따르는 경우 제4 내지 제6 샘플링부는 맥스풀링 레이어로 구현될 수 있고, 맥스풀링 레이어를 통해 각 피쳐맵의 차원이 감소된다.
제2 차원증가부는 제10 컨벌루션 연산부에서 출력되는 피쳐맵이 미리 정해진 크기의 차원을 갖도록 복수개의 노드들을 이용하여 피쳐맵의 차원을 증가시킨다. 일 실시예에 있어서, 제2 차원증가부는 제10 컨벌루션 연산부에서 출력되는 피쳐맵이 128*128의 크기를 갖거나 256*256의 크기를 갖도록 차원을 증가시킬 수 있다.
제2 차원 증가부는 차원이 증가된 피쳐맵에 활성화함수를 적용함으로써 차원이 증가된 피쳐맵에 비선형적 특정을 반영한다. 일 실시예에 있어서, 제2 차원 증가부는 피쳐맵의 픽셀값들 중 양의 값은 그대로 출력하고 음의 값은 미리 정해진 크기만큼 감소된 값으로 출력하는 활성화함수를 적용하여 피쳐맵에 비선형적 특성을 반영할 수 있다.
제5 차원감소부는 제2 차원증가부에서 출력되는 피쳐맵에 제5 차원감소 필터를 적용함으로써 제2 차원증가부에서 출력되는 피쳐맵의 차원을 감소시킨다. 일 실시예에 있어서 제5 차원감소 필터는 피쳐맵을 2차원으로 감소시킬 수 있는 필터로 설정될 수 있다.
제3 확률값 연산부는 제5 차원감소부에 의해서 출력되는 2차원의 출력 데이터에 미리 정해진 분류함수를 적용함으로써 해당 제2 서브 입력 이미지에 얼굴영역이 포함되어 있는지 여부에 대한 제3 확률값을 계산한다. 일 실시예에 있어서, 제3 확률값 연산부는 산출된 제3 확률값이 제2 문턱값보다 큰 제3 문턱값 이상이면 해당 제2 서브 입력이미지에 얼굴영역이 포함된 것으로 판단한다.
제6 차원감소부는 제3 확률값 연산부에 의해 산출된 제3 확률값이 제3 문턱값 이상인 경우 제2 차원증가부에서 출력되는 피쳐맵에 제6 차원감소 필터를 적용함으로써 제2 차원증가부에서 출력되는 피쳐맵의 차원을 감소시킨다. 일 실시예에 있어서 제6 차원감소 필터는 피쳐맵을 4차원으로 감소시킬 수 있는 필터로 설정될 수 있고, 제6 차원 감소부는 4차원으로 출력되는 4개의 값을 해당 제2 서브 입력 이미지 상에서의 얼굴영역 좌표로 결정한다. 이때, 얼굴영역의 좌표는 얼굴이 포함된 영역을 사각형 형태의 바운딩박스로 표시하였을 때 좌측 상단 꼭지점의 좌표와 우측 하단 꼭지점의 좌표로 정의되거나, 우측상단 꼭지점의 좌표와 좌측 하단 꼭지점의 좌표로 정의될 수 있다.
제6 차원감소부는 산출된 얼굴영역 좌표를 이용하여 얼굴영역이 포함된 것으로 판단된 제2 서브 입력 이미지 상에서 얼굴 이미지를 추출한다.
제7 차원감소부는 제3 확률값 연산부에 의해 산출된 제3 확률값이 제3 문턱값 이상인 경우 제2 차원증가부에서 출력되는 피쳐맵에 제7 차원감소 필터를 적용함으로써 제2 차원증가부에서 출력되는 피쳐맵의 차원을 감소시킨다. 일 실시예에 있어서 제7 차원감소 필터는 피쳐맵을 10차원으로 감소시킬 수 있는 필터로 설정될 수 있고, 제7 차원 감소부는 10차원으로 출력되는 10개의 값을 해당 제2 서브 입력 이미지 상에서의 랜드마크 좌표로 결정한다. 이때, 랜드마크 좌표는 제2 서브 입력 이미지 상에서의 2개의 눈의 좌표, 코의 좌표, 2개의 입의 좌표를 의미하고, 2개의 입의 좌표는 입의 좌측 꼬리에 대한 좌표 및 입의 우측 꼬리에 대한 좌표를 의미한다.
이와 같이, 본 발명에 따르면 얼굴이미지 추출부(237)가 제1 내지 제3 얼굴탐지부로 구현되고, 제1 얼굴탐지부는 제2 얼굴탐지부에 비해 얕은(Shallow) 뎁스의 네트워크로 구성되고, 제2 얼굴탐지부는 제3 얼굴탐지부에 비해 얕은 뎁스의 네트워크로 구성됨으로써 얼굴이미지 추출부가 전체적으로 Shallow-to-Deep구조로 단계적인 형태로 형성되도록 한다. 이를 통해, 얼굴이미지 추출의 정확도를 향상시킴과 동시에 복잡도를 감소시킴으로써 얼굴인식 속도 측면에서 이득을 취할 수 있게 된다.
얼굴 이미지 정렬부는 제3 얼굴탐지부에서 출력된 랜드마크 좌표를 이용하여 얼굴이미지를 정렬한다. 구체적으로, 얼굴 이미지 정렬부는 추출된 얼굴이미지에 대한 랜드마크 좌표를 이용하여 얼굴이미지에 대해 회전, 평행이동, 확대 및 축소 중 적어도 하나를 수행하여 얼굴이미지를 정렬한다.
본 발명에서 얼굴 이미지 정렬부를 이용하여 얼굴이미지를 정렬하는 이유는 실물이미지 판단부(238) 및 특징벡터 추출부(239)에 입력으로 제공될 얼굴이미지에 일관성을 부여함으로써 얼굴인식 성능을 향상시키기 위함이다.
일 실시예에 있어서, 얼굴 이미지 정렬부는 제3 얼굴탐지부에 의해 추출된 얼굴이미지를 실물이미지 판단부(238) 및 특징벡터 추출부(239)에서 이용되는 얼굴이미지와 동일한 해상도로 리사이징(Resizing)하고, 특징벡터 추출부(239)에서 이용되는 해상도의 얼굴이미지에 대한 기준 랜드마크 좌표를 기준으로 제3 얼굴탐지부에 의해 산출된 랜드마크 좌표를 이동시킴으로써 얼굴이미지를 회전, 평행이동, 확대 또는 축소시킬 수 있다.
실물이미지 판단부(238)는 얼굴이미지 추출부(237)로부터 추출된 얼굴이미지가 사람을 촬영한 실물이미지인지 여부를 판단한다. 구체적으로, 실물이미지 판단부(238)는 신경망 네트워크를 이용하여 타겟 사용자의 얼굴이미지로부터 얼굴이미지의 RGB를 표현하는 RGB 특징벡터, 얼굴이미지의 깊이를 표현하는 깊이 특징벡터, 얼굴이미지의 빛 반사를 표현하는 반사 특징벡터를 추출하고, 추출된 각 특징벡터로 얼굴이미지의 실물이미지 여부를 판단한다.
본 발명에 따른 실물이미지 판단부(238)가 얼굴이미지 추출부(237)에 의해 추출된 얼굴이미지로 실물이미지 여부를 판단하는 이유는, 주변환경에 대한 정보를 최소화함으로써 불필요한 정보로 인하여 발생하는 과적합(Overfitting) 및 일반화 성능 저하를 방지하기 위함이다.
본 발명에 따른 실물이미지 판단부(237)는 실물 특징벡터 추출부, 특징벡터 융합부, 및 판단부를 포함한다.
실물 특징벡터 추출부는 타겟 사용자의 얼굴이미지로부터 얼굴이미지의 실물이미지 여부를 판단하기 위해 신경망 네트워크를 이용하여 얼굴이미지의 깊이를 표현하는 깊이 특징벡터, 및 얼굴이미지의 빛 반사를 표현하는 반사 특징벡터 중 적어도 하나와 얼굴이미지의 RGB를 표현하는 RGB 특징벡터를 추출한다.
RGB 특징벡터 추출부는 RGB 신경망 네트워크를 이용하여 얼굴이미지로부터 RGB 특징벡터를 추출한다. 이때, RGB 신경망 네트워크는 사람을 촬영한 2차원 실물이미지와 사진을 촬영한 2차원 페이크 이미지로 학습된다.
이를 위해, RGB 특징벡터 추출부는 제1 서브 RGB 특징벡터 추출부, 제2 서브 RGB 특징벡터 추출부, 제3 서브 RGB 특징벡터 추출부, 제4 서브 RGB 특징벡터 추출부(240), 및 RGB 특징벡터 생성부를 포함한다. 여기서, RGB 특징벡터 추출부가 4개의 서브 RGB 특징벡터 추출부를 포함하는 것으로 설명하였으나, 이는 설명의 편의를 위한 것으로, RGB 특징벡터 추출부(210)는 3개 이하의 서브 RGB 특징벡터 추출부 또는 5개 이상의 서브 RGB 특징벡터 추출부를 포함할 수 있다.
제1 서브 RGB 특징벡터 추출부는 제1 RGB 신경망 네트워크로 얼굴이미지의 피쳐맵을 생성하고, 피쳐맵을 기초로 얼굴이미지로부터 제1 서브 RGB 특징벡터를 추출한다. 제1 서브 RGB 특징벡터 추출부는 추출된 제1 서브 RGB 특징벡터를 제2 서브 RGB 특징벡터 추출부로 전달한다. 또한, 제1 서브 RGB 특징벡터 추출부는 제1 서브 RGB 특징벡터를 깊이 특징벡터 추출부 및 반사 특징벡터 추출부로 전달한다.
제2 서브 RGB 특징벡터 추출부는 제2 서브 RGB 신경망 네트워크로 제1 서브 RGB 특징벡터 추출부로부터 전달된 제1 서브 RGB 특징벡터의 피쳐맵을 생성하고, 피쳐맵을 기초로 제1 서브 RGB 특징벡터로부터 제2 서브 RGB 특징벡터를 추출한다. 제2 서브 RGB 특징벡터 추출부는 추출된 제2 서브 RGB 특징벡터를 제3 서브 RGB 특징벡터 추출부로 전달한다. 또한, 제2 서브 RGB 특징벡터 추출부는 제2 서브 RGB 특징벡터를 깊이 특징벡터 추출부 및 반사 특징벡터 추출부로 전달한다.
제3 서브 RGB 특징벡터 추출부는 제3 서브 RGB 신경망 네트워크로 제2 서브 RGB 특징벡터 추출부로부터 전달된 제2 RGB 서브 특징벡터의 피쳐맵을 생성하고, 피쳐맵을 기초로 제2 서브 RGB 특징벡터로부터 제3 서브 RGB 특징벡터를 추출한다. 제3 서브 RGB 특징벡터 추출부는 추출된 제3 서브 RGB 특징벡터를 제4 서브 RGB 특징벡터 추출부로 전달한다. 또한, 제3 서브 RGB 특징벡터 추출부(235)는 제3 서브 RGB 특징벡터를 깊이 특징벡터 추출부 및 반사 특징벡터 추출부로 전달한다.
제4 서브 RGB 특징벡터 추출부는 제4 서브 RGB 신경망 네트워크로 제3 서브 RGB 특징벡터 추출부로부터 전달된 제3 서브 RGB 특징벡터의 피쳐맵을 생성하고, 피쳐맵을 기초로 제3 서브 RGB 특징벡터로부터 제4 서브 RGB 특징벡터를 추출한다. 제4 서브 RGB 특징벡터 추출부는 추출된 제4 서브 RGB 특징벡터를 RGB 특징벡터 생성부로 전달한다.
이와 같이 서브 RGB 특징벡터 추출부는 n개의 RGB 신경망 네트워크를 이용하여 n개의 서브 RGB 특징벡터를 추출한다. 서브 RGB 특징벡터 추출부는 RGB 신경망 네트워크 별로 얼굴이미지의 피쳐맵을 생성하고, 피쳐맵을 기초로 얼굴이미지로부터 n개의 서브 RGB 특징벡터를 추출한다.
본 발명에 따른 서브 RGB 특징벡터 추출부가 n개의 서브 RGB 특징벡터를 추출하는 이유는, 서로 다른 크기를 갖는 서브 RGB 특징벡터로 RGB 특징벡터, 깊이 특징벡터, 반사 특징벡터를 생성하는 것이 하나의 고정된 크기의 특징벡터로 생성하는 것보다 해당 특징벡터의 표현력 및 구분력(Discriminative Power)이 풍부해지기 때문이다.
RGB 특징벡터 생성부는 제1 내지 제4 서브 RGB 특징벡터 추출부에 의해 생성된 제1 서브 RGB 특징벡터, 제2 서브 RGB 특징벡터, 제3 서브 RGB 특징벡터, 및 제4 서브 RGB 특징벡터를 조합하여 RGB 특징벡터를 생성한다. 구체적으로, RGB 특징벡터 생성부는 제1 서브 RGB 특징벡터, 제2 서브 RGB 특징벡터, 제3 서브 RGB 특징벡터, 및 제4 서브 RGB 특징벡터를 합산하여 RGB 특징벡터를 생성한다.
본 발명에 따른 RGB 특징벡터 생성부가 제1 내지 제4 서브 RGB 특징벡터를 합산하여 RGB 특징벡터를 생성하는 이유는, 하나의 고정된 크기의 특징벡터로 얼굴이미지의 실물이미지 여부를 판단하는 것에 비해, 여러 크기의 특징벡터를 이용하여 얼굴이미지의 실물이미지 여부를 판단하는 것이 성능이 향상되기 때문이다.
깊이 특징벡터 추출부는 RGB 특징벡터 추출부로부터 입력되는 제1 서브 RGB 특징벡터, 제2 서브 RGB 특징벡터, 및 제3 서브 RGB 특징벡터를 기초로 깊이 특징벡터(b)를 생성한다.
타인의 얼굴이 포함된 사진이 촬영된 페이크이미지에는 깊이값이 존재할 수 없다. 따라서, 본 발명은 깊이 특징벡터 추출부에서 추출되는 깊이 특징벡터를 기초로 실물이미지 판단을 정확하게 할 수 있다.
깊이 특징벡터 추출부는 제1 서브 RGB 특징벡터, 제2 서브 RGB 특징벡터, 및 제3 서브 RGB 특징벡터의 크기를 조정하고, 이를 합산하여 입력 특징벡터를 생성한다. 깊이 특징벡터 추출부는 깊이 신경망 네트워크를 이용하여 생성된 입력 특징벡터의 피쳐맵을 생성하고 해당 피쳐맵을 기초로 깊이 특징벡터를 추출한다. 이때, 깊이 특징벡터 추출부는 크기를 조정하기 위해 패딩을 수행할 수 있다. 깊이 신경망 네트워크는 사람을 촬영한 실물이미지로부터 추출된 제1 깊이이미지와 사진을 촬영한 페이크이미지로부터 추출된 제2 깊이이미지로 학습된다.
반사 특징벡터 추출부는 RGB 특징벡터 추출부로부터 입력되는 제1 서브 RGB 특징벡터, 제2 서브 RGB 특징벡터, 및 제3 서브 RGB 특징벡터를 기초로 반사 특징벡터(c)를 생성한다.
본 발명은 반사 특징벡터 추출부로부터 반사 특징벡터를 추출하는 이유는, 카메라로 사람의 얼굴을 촬영하게 되면 빛 반사가 없지만 타인의 이미지를 촬영하게 되면 미세하지만 빛 반사가 발생하게 되기 때문이다.
이에 따라 본 발명은 반사 특징벡터를 기초로 얼굴이미지가 실물이미지인지 여부를 판단함으로써 얼굴인식의 정확도가 향상된다는 효과가 있다.
반사 특징벡터 추출부는 제1 서브 RGB 특징벡터, 제2 서브 RGB 특징벡터, 및 제3 서브 RGB 특징벡터의 크기를 조정하고 이를 합산하여 입력 특징벡터를 생성한다. 반사 특징벡터 추출부는 반사 신경망 네트워크로 합산된 입력 특징벡터의 피쳐맵을 생성하고 해당 피쳐맵을 기초로 반사 특징벡터를 추출한다. 이때, 반사 특징벡터 추출부는 크기를 조정하기 위해 패딩을 수행할 수 있다. 반사 신경망 네트워크는 사람을 촬영한 실물이미지로부터 추출된 제1 반사이미지와 사진을 촬영한 페이크이미지로부터 추출된 제2 반사이미지로 학습된다.
상술한, 신경망 네트워크는 RGB 신경망 네트워크, 깊이 신경망 네트워크, 반사 신경망 네트워크를 포함하고, 각 신경망 네트워크는 복수개의 컨벌루션 연산부와 복수개의 샘플링부가 순차적으로 배치되어 각 RGB, 깊이, 및 반사 특징벡터를 추출하게 된다.
특징벡터 융합부는 깊이 특징벡터 및 반사 특징벡터 중 적어도 하나를 RGB 특징벡터와 융합하여 융합 특징벡터를 생성한다. 구체적으로, 특징벡터 융합부는 깊이 특징벡터 추출부로부터 추출된 깊이 특징벡터와 반사 특징벡터 추출부로부터 추출된 반사 특징벡터 중 적어도 하나와 RGB 특징벡터 추출부로부터 추출된 RGB 특징벡터를 융합하여 융합 특징벡터를 생성한다.
본 발명에 따른 특징벡터 융합부가 각 특징벡터를 융합하는 이유는, RGB 이미지의 특징, 반사이미지의 특징, 및 깊이 이미지의 특징을 적절하게 반영하여 풍부한 표현력을 가지는 특징벡터로 사진을 촬영한 페이크이미지를 판별할 수 있게 함으로써, 페이크이미지로 인증을 수행하는 것을 효과적으로 차단할 수 있게 하기 위함이다.
특징벡터 융합부는 제1 출력 특징벡터 생성부, 제2 출력 특징벡터 생성부, 및 융합 특징벡터 생성부를 포함한다.
제1 출력 특징벡터 생성부는 RGB 특징벡터를 k개의 융합 컨벌루션 연산부를 통과시켜 제1 출력 특징벡터를 생성한다.
제2 출력 특징벡터 생성부는 깊이 특징벡터에서 반사 특징벡터를 감산한 결과값을 k개의 융합 컨벌루션 연산부와 k번째의 컨벌루션 연산부의 출력단에 배치된 융합 샘플링부를 순차적으로 통과시켜 제2 출력 특징벡터를 생성한다.
융합 특징벡터 생성부는 제1 출력 특징벡터와 제2 출력 특징벡터를 합산하여 융합 특징벡터를 생성한다.
판단부는 융합 특징벡터를 이용하여 얼굴이미지가 사람을 촬영한 실물이미지인지 여부를 판단한다. 구체적으로 판단부는 미리 학습된 이진분류기에 융합 특징벡터를 입력하여 얼굴이미지가 실물이미지인지 여부를 판단한다.
이때, 이진분류기는 실물이미지로부터 추출된 제1 깊이 이미지 및 페이크이미지로부터 추출된 제2 깊이이미지와, 실물이미지로부터 추출된 제1 반사이미지 및 페이크이미지로부터 추출된 제2 반사이미지가 학습될 수 있다. 단순히, 2차원 실물이미지 또는 2차원 페이크이미지로 이진분류기를 학습시키는 경우, 카메라의 화질이나, 장소, 조명 등 외부 특정환경에 대해 과적합(Overfitting)되면서 다른 환경에서 나온 이미지들에 대해 판별이 어려운 문제가 있었다.
이에 따라 본 발명은 2차원 실물이미지 및 2차원 페이크 이미지뿐만 아니라, 해당 실물이미지 및 페이크이미지로부터 추출된 깊이이미지와 반사이미지를 이진분류기에 학습시킴으로써, 특정 환경에 대한 과적합을 방지할 수 있어 어느 환경에 촬영된 얼굴이미지라도 실물이미지 판단을 정확하게 할 수 있게 하였다.
이진 분류기는 실물이미지로부터 추출된 제1 깊이 이미지를 학습하게 되고, 페이크 이미지로부터 추출된 제2 깊이 이미지를 학습하게 된다. 이때, 실물이미지로부터 추출된 제1 깊이 이미지는 기준이 되는 정답으로 학습되고, 페이크 이미지로부터 추출된 제2 깊이이미지는 RGB를 블랙으로 하여 학습된다. RGB는 (0,0,0)이 된다.
또한, 이진 분류기는 실물이미지로부터 추출된 제1 반사 이미지를 학습하게 되고, 페이크 이미지로부터 추출된 제2 반사 이미지를 학습하게 된다. 이때, 실물이미지로부터 추출된 제1 반사 이미지는 RGB를 블랙으로 하여 학습된다. RGB는 (0,0,0)이 된다. 페이크이미지로부터 추출된 제2 반사 이미지는 기준이 되는 오답으로 학습된다.
판단부는 이진분류기에서 출력되는 확률값이 미리 정해진 문턱값미만이면, 해당 얼굴이미지를 페이크 이미지로 판단한다. 또한, 판단부는 이진분류기에서 출력되는 확률값이 미리 정해진 문턱값 이상이면 해당 얼굴이미지를 실물이미지로 판단한다.
이때, 판단부는 복수개의 얼굴이미지 중에 적어도 하나의 얼굴이미지가 페이크 이미지로 판단되면, 복수개의 얼굴이미지를 제거하여 특징벡터 추출부(239)로 해당 얼굴이미지가 입력되지 않게 한다.
판단부는 얼굴이미지가 페이크이미지로 판단되면, 실제 얼굴 촬영 요청메시지를 생성하여 디스플레이(미도시)로 전달한다.
또한, 판단부는 복수개의 얼굴이미지 모두가 실물이미지로 판단되면 복수개의 얼굴이미지 중 가장 큰 얼굴을 포함하는 얼굴이미지를 특징벡터 추출부(239)로 전달한다.
다시 도 2를 참조하면, 특징벡터 추출부(239)는 실물이미지 판단부(238)로부터 실물이미지로 판단된 얼굴이미지가 입력되면, 해당 얼굴이미지에 포함된 얼굴로부터 특징벡터를 추출한다.
본 발명의 일 실시예에 따른 특징벡터 추출부는 복수개의 얼굴이미지 처리부 및 특징벡터 생성부를 포함한다.
복수개의 얼굴이미지 처리부는 입력 데이터를 영상 처리하여 출력 데이터를 생성한다. 이때, 복수개의 얼굴이미지 처리부 중 1 번째 얼굴이미지 처리부에는 입력 이미지로써 얼굴이미지 추출부(237)로부터 출력되는 얼굴이미지가 입력되고, g+1번째 얼굴이미지 처리부에는 입력 이미지로써 g번재 얼굴이미지 처리부의 출력 데이터가 입력된다.
복수개의 얼굴이미지 처리부의 기능 및 세부구성은 동일하므로 이하에서는 복수개의 얼굴이미지 처리부들 중 제1 얼굴이미지 처리부에 대해 예시적으로 설명한다.
얼굴이미지 처리부(305)는 입력 데이터(얼굴이미지 또는 이전 얼굴이미지 처리부의 출력 데이터임)에 대해 컨벌루션 연산을 수행하여 피쳐맵을 생성하는 제1 유닛, 제1 유닛에 의해 생성된 피쳐맵에 가중치를 부여하는 제2 유닛, 및 연산부으로 구성된다.
제1 유닛은 정규화부, 제1 컨벌루션 연산부 및 비선형화부를 포함한다.
정규화부는 얼굴이미지 추출부로부터 입력되는 얼굴이미지들을 배치(Batch)단위로 정규화한다. 배치란 한번에 처리할 얼굴이미지들의 개수단위를 의미한다. 본 발명에 따른 정규화부가 배치단위로 정규화를 수행하는 이유는 배치 단위로 정규화를 수행하게 되면 각 얼굴 이미지에 대한 평균 및 분산이 배치 전체에 대한 평균 및 분산과 다를 수 있는데 이러한 특징이 일종의 노이즈로 작용하게 되어 전체적인 성능이 향상될 수 있기 때문이다.
또한, 배치 정규화를 통해 네트워크의 각 층마다 입력의 분포(Distribution)가 일관성 없이 바뀌는 내부 공분산 이동(Internal Covariance Shift) 현상에 의해 학습의 복잡성이 증가하고 그라디언트 소멸 또는 폭발(Gradient Vanishing or Exploding)이 일어나는 것을 방지할 수 있게 되기 때문이다.
제1 컨벌루션 연산부는 정규화부에 의해 정규화된 얼굴이미지에 대해 제1 컨벌루션 필터를 적용하여 제1 피쳐맵을 생성한다. 일 실시예에 있어서, 제1 컨벌루션 연산부는 3*3 픽셀크기를 갖고 스트라이드(Stride)의 값이 1인 제1 컨벌루션 필터를 얼굴이미지에 적용하여 제1 피쳐맵을 생성할 수 있다. 이와 같이, 본 발명에 따른 제1 컨벌루션 연산부는 3*3 픽셀크기를 갖고 스트라이드 값이 1인 제1 컨벌루션 필터를 얼굴이미지에 적용하기 때문에 제1 피쳐맵의 해상도를 높게 보존할 수 있게 된다.
비선형화부는 제1 피쳐맵에 활성화함수를 적용함으로써 제1 피쳐맵에 비선형적 특성을 부여한다. 일 실시예에 있어서, 비선형화부는 제1 피쳐맵의 픽셀값들 중 양의 픽셀값을 동일하게 출력하고 음의 픽셀값은 그 크기를 감소시켜 출력하는 활성화함수를 제1 피쳐맵에 적용함으로써 제1 피쳐맵에 비선형적 특성을 부여할 수 있다.
비선형화부가 제1 컨벌루션 연산부에 의해 생성된 제1 피쳐맵에 비선형적 특성을 부여하는 것으로 설명하였다. 하지만, 변형된 실시예에 있어서 정규화부는 제1 컨벌루션 연산부에 의해 생성된 제1 피쳐맵들을 배치단위로 추가로 정규화할 수도 있다. 이러한 실시예에 따르는 경우 정규화부는 정규화된 제1 피쳐맵을 비선형화부로 제공하고, 비선형화부는 정규화된 제1 피쳐맵에 활성화함수를 적용함으로써 정규화된 제1 피쳐맵에 비선형적 특성을 부여할 수 있다.
한편, 상술한 실시예에 있어서 제1 유닛은 제1 컨벌루션 연산부만을 포함하는 것으로 설명하였다. 하지만, 변형된 실시예에 있어서 제1 유닛은 제2 컨벌루션 연산부를 더 포함할 수 있다.
구체적으로, 제2 컨벌루션 연산부는 비선형화부에 의해 비선형적 특성이 부여된 제1 피쳐맵에 제2 컨벌루션 필터를 적용하여 제2 피쳐맵을 생성한다. 일 실시예에 있어서, 제2 컨벌루션 필터는 제1 컨벌루션 필터와 다른 필터일 수 있다. 제2 컨벌루션 필터는 제1 컨벌루션 필터의 크기는 동일하지만 다른 스트라이드 값을 갖는 필터일 수 있다. 일 예로, 제2 컨벌루션 필터는 3*3 픽셀크기를 갖고 스트라이드(Stride)의 값이 2인 필터일 수 있다.
이러한 실시예에 따르는 경우 정규화부는 제2 컨벌루션 연산부에 의해 생성된 제2 피쳐맵들을 배치단위로 추가로 정규화할 수도 있을 것이다.
한편, 제1 유닛은 사전정규화부를 더 포함할 수 있다. 사전정규화부는 얼굴이미지 추출부로부터 입력되는 얼굴이미지에 포함된 각 픽셀들의 픽셀값을 정규화할 수 있다. 일 예로, 사전정규화부는 얼굴이미지의 각 픽셀값에서 127.5를 감산한 후, 감산 결과값을 128로 제산함으로써 얼굴이미지를 정규화할 수 있다. 사전정규화부는 사전 정규화된 입력 얼굴이미지를 정규화부로 제공할 수 있다.
제2 유닛은 제1 유닛에 의해 생성된 제2 피쳐맵에 가중치를 부여한다. 본 발명에서 제2 유닛을 통해 제2 피쳐맵에 가중치를 부여하는 이유는 컨벌루션 연산의 경우 입력 이미지의 모든 채널을 컨벌루션 필터와 곱한 후 합산하는 과정에서 중요한 채널과 중요하지 않은 채널들이 모두 얽히게 되므로 데이터의 민감도(Sensitivity)가 저하되므로, 제2 피쳐맵에 각 채널 별로 그 중요도에 따라 가중치를 부여하기 위한 것이다.
제2 유닛은 샘플링부, 가중치 반영부, 및 업스케일링부를 포함한다.
먼저, 샘플링부는 제1 유닛으로부터 입력되는 제2 피쳐맵을 서브 샘플링하여 차원을 감소시킨다. 일 실시예에 있어서, 샘플링부는 제2 피쳐맵에 글로벌 풀링(Global Pooling) 필터를 적용함으로써 제2 피쳐맵의 차원을 감소시킬 수 있다. 일 예로, 제2 피쳐맵의 차원이 H*W*C인 경우 샘플링부는 제2 피쳐맵의 서브 샘플링을 통해 제2 피쳐맵의 차원을 1*1*C로 감소시킬 수 있다.
가중치 반영부는 샘플링부에 의해 차원이 감소된 제2 피쳐맵에 가중치를 부여한다. 이를 위해, 가중치 반영부는 차원 감소부, 제1 비선형화부, 차원 증가부, 및 제2 비선형화부를 포함할 수 있다.
차원 감소부는 서브 샘플링된 제2 피쳐맵을 하나의 레이어로 연결함으로써 서브 샘플링된 제2 피쳐맵의 차원을 감소시킨다. 일 예로, 샘플링부로부터 출력되는 제2 피쳐맵의 차원이 1*1*C인 경우 차원 감소부는 제2 피쳐맵의 차원을 1*1*C/r로 감소시킨다. 여기서, r은 감소율을 의미하는 것으로서, 추출하기 원하는 특징벡터의 개수에 따라 결정될 수 있다.
제1 비선형화부는 차원 감소부에 의해 차원이 감소된 제2 피쳐맵에 제1 활성화함수를 적용함으로써 차원이 감소된 제2 피쳐맵에 비선형적 특성을 부여한다. 일 실시예에 있어서, 제1 비선형화부는 제2 피쳐맵의 픽셀값들 중 양의 픽셀값은 그대로 출력하고 음의 픽셀값은 0으로 출력하는 제1 활성화함수를 적용함으로써 차원이 감소된 제2 피쳐맵에 비선형적 특성을 부여할 수 있다.
차원 증가부는 제1 비선형화부에 의해 비선형적 특성이 부여된 제2 피쳐맵의 차원을 증가시킨다. 일 예로, 비선형적 특성이 부여된 제2 피쳐맵의 차원이 1*1*c/r인 경우 차원 증가부는 제2 피쳐맵의 차원을 다시 1*1*C로 증가시킨다.
제2 비선형화부는 차원 증가부에 의해 차원이 증가된 제2 피쳐맵에 제2 활성화함수를 적용함으로써 차원이 증가된 제2 피쳐맵에 비선형적 특성을 다시 부여한다. 일 실시예에 있어서, 제2 활성화함수는 제1 활성화함수와 다른 함수일 수 있다. 예컨대, 제2 비선형화부는 차원이 증가된 제2 피쳐맵의 픽셀값들 중 양의 픽셀값은 미리 정해진 값으로 수렴하도록 하고 음의 픽셀값은 0으로 출력하는 제2 활성화함수를 적용함으로써 차원이 증가된 제2 피쳐맵에 비선형적 특성을 부여할 수 있다.
이와 같이, 본 발명에 따른 가중치 반영부는 차원감소부, 제1 비선형화부, 차원증가부, 및 제2 비선형화부를 통해 제2 피쳐맵에 가중치를 부여하고, 차원감소부와 차원증가부를 통해 병목구간을 만들어 게이팅 메커니즘을 한정함으로써 모델 복잡도를 제한하고 일반화를 지원할 수 있게 된다.
업스케일링부는 가중치 반영부에 의해 가중치가 부여된 제2 피쳐맵을 제2 유닛에 입력된 얼굴이미지와 동일한 차원으로 업스케일링한다. 일 실시예에 있어서, 제2 유닛에 입력된 얼굴이미지의 차원이 H*W*C인 경우 업스케일링부는 가중치가 부여된 제2 피쳐맵의 차원을 H*W*C로 업스케일링한다.
연산부는 제2 유닛을 통해 출력되는 업스케일링된 제2 피쳐맵을 제1 유닛에 입력된 얼굴이미지와 합산한다. 본 발명에서 연산부를 통해 제2 유닛에서 출력된 업스케일링된 제2 피쳐맵을 제1 유닛에 입력된 얼굴이미지와 합산하는 이유는 컨벌루션 신경망에서 깊이가 깊어지는 경우 특징이 흐려지는 문제(Vanish Problem)를 방지하기 위한 것이다.
특징벡터 생성부는 복수개의 얼굴이미지 처리부들 중 마지막 얼굴 이미지 처리부로부터 출력되는 피쳐맵을 하나의 레이어로 병합하여 차원을 감소시킴으로써 미리 정해진 개수의 특징벡터를 생성한다. 일 실시예에 있어서, 특징벡터 생성부는 얼굴이미지 처리부로부터 출력되는 피쳐맵으로부터 128개 이상의 특징벡터를 출력할 수 있다. 예컨대, 특징벡터 생성부는 얼굴 이미지 처리부로부터 출력되는 피쳐맵으로부터 512개의 특징벡터를 출력할 수 있다.
어레이 파일 생성부(240)는 얼굴인식부(230)에 의해 생성된 특징벡터를 이용하여 각 사용자 별로 어레이(Array)를 생성하고, 생성된 어레이들을 하나의 파일로 머지하여 어레이 파일을 생성한다. 어레이 파일 생성부(240)는 생성된 어레이 파일을 어레이 파일 데이터베이스(미도시)에 저장할 수 있다.
일 실시예에 있어서, 어레이 파일 생성부(240)에 의해 생성되는 어레이는 각 사용자의 얼굴이미지로부터 획득된 복수개의 특징벡터들과 각 사용자의 키(Key)값으로 구성될 수 있다. 이때, 사용자의 키 값은 각 사용자의 식별정보 및 각 사용자의 출입권한정보를 포함한다. 각 사용자의 식별정보는 상술한 바와 같이 각 사용자의 아이다, 성명, 전화번호, 또는 직원번호 등으로 정의될 수 있고, 각 사용자의 출입권한정보는 각 사용자가 출입할 수 있는 각 층에 대한 정보를 포함할 수 있다.
일 실시예에 있어서, 어레이 파일 생성부(240)는 에지 디바이스(120)가 설치되어 있는 각 장소 별로 어레이 파일을 생성할 수 있다. 예컨대, 제1 어레이 파일은 제1 층에 대한 출입권한이 부여된 사용자들의 어레이들로 구성될 수 있고, 제2 어레이 파일은 제2 층에 대한 출입원한이 부여된 사용자들의 어레이들로 구성될 수 있다. 이를 위해, 어레이 파일 생성부(240)는 각 사용자의 어레이들 또한 각 사용자가 출입할 수 있는 지역 별로 구분하여 생성할 수 있다. 예컨대, 제1 사용자가 제1 층과 제3 층에 출입 가능한 권한을 가진 경우, 어레이 파일 생성부(240)는 제1 사용자에 대해 제1 층에 대한 출입권한정보가 포함된 제1 어레이와 제3 층에 대한 출입권한정보가 포함된 제2 어레이를 별도로 생성할 수 있다.
본 발명에 따른 어레이 파일 생성부(240)가 에지 디바이스(120)가 설치된 각 장소 별로 어레이 파일을 생성하는 이유는 사용자의 얼굴을 인증하는 에지 디바이스(120)가 각 장소 별로 설치되는 경우, 특정 장소에 설치된 에지 디바이스(120)로 해당 장소에 대한 출입권한정보가 포함된 어레이 파일만을 전송하면 되므로 어레이 파일의 전송 및 에지 디바이스(120)에서의 어레이 파일 관리가 용이해지기 때문이다.
상술한 실시예에 있어서는 어레이 파일 생성부(240)가 각 장소 별로 어레이 파일을 생성하는 것으로 기재하였지만, 변형된 실시예에 있어서 어레이 파일 생성부(240)는 에지 디바이스(120)가 설치된 모든 장소에 대한 권한정보가 포함된 하나의 어레이 파일을 생성하고, 생성된 어레이 파일을 모든 에지 디바이스(120)로 전송할 수도 있다.
출입권한정보 관리부(250)는 각 사용자 별로 부여되어 있는 출입권한정보를 변경하거나 새로운 출입권한정보를 추가한다. 일 실시예에 있어서, 출입권한 정보 관리부(250)는 각 사용자 별로 출입권한정보를 별개로 부여하거나 각 사용자가 속한 조직 단위로 출입권한정보를 부여할 수 있다.
한편 본 발명에 따른 안면인식서버(110)는 스케줄러(260)를 더 포함할 수 있다. 스케줄러(260)는 미리 정해진 기간이 도래하거나 미리 정해진 이벤트가 발생할 때마다 일괄적으로 신규 사용자를 등록하는 기능을 수행한다. 예컨대, 상술한 실시예에 있어서는 사용자 등록부(220)가 사용자로부터 등록요청이 발생하는 경우 신규 사용자의 등록절차를 수행하는 것으로 설명하였지만, 안면인식서버(110)가 스케줄러(260)를 포함하는 경우 미리 정해진 시간 단위로 또는 미리 정해진 이벤트가 발생하면 스케줄러(260)가 사용자 등록부(220), 입력 이미지 생성부(225), 및 얼굴인식부(230)의 동작을 개시시킴으로써 신규 사용자 등록절차가 자동으로 수행되도록 할 수 있다.
인터페이스부(270)는 에지디바이스 관리부(210)로부터 변경된 기준임계치 및 어레이 파일 생성부(240)에 의해 생성된 어레이 파일을 미리 정해진 방식으로 암호화하여 각 에지 디바이스(120)로 전송한다. 일 실시예에 있어서, 인터페이스부(270)는 공개키 기반의 암호화 알고리즘을 이용하여 기준임계치 및 어레이 파일을 암호화하고, 이를 각 에지 디바이스(120)로 전송할 수 있다.
한편, 인터페이스부(270)는 암호화된 기준임계치 및 어레이 파일을 에지 디바이스(120)와 약속된 프로토콜에 따라 에지 디바이스(120)로 전송할 수 있다.
또한, 인터페이스부(270)는 각 에지 디바이스(120)로부터 미리 정해진 기간 마다 인증결과를 수신하여 에지디바이스 관리부(210)로 제공할 수 수 있다.
얼굴인식모델 트레이닝부(280)는 컨벌루션 신경망을 기초로 얼굴인식모델(235)을 생성하고, 생성된 얼굴인식모델(235)을 트레이닝시킨다. 구체적으로, 얼굴인식모델 트레이닝부(280)는 얼굴인식모델(235)을 구성하는 컨벌루션 신경망을 지속적으로 트레이닝시킴으로써 최적의 얼굴인식모델을 생성한다.
이를 위해, 얼굴인식모델 트레이닝부(280)는 얼굴이미지 추출부(237)를 트레이닝시키는 얼굴이미지 추출 트레이닝부(282), 특징벡터 추출부(239)를 트레이닝시키는 특징벡터 추출 트레이닝부(284), 실물이미지 판단부(238)를 트레이닝시키는 실물이미지 판단 트레이닝부(285) 및 특징벡터 추출부(239)의 오차를 감소시키는 오차감소부(286)를 포함한다.
얼굴이미지 추출 트레이닝부(282)는 얼굴이미지 추출부(227)를 학습 이미지를 이용하여 트레이닝시킨다. 특징벡터 추출 트레이닝부(284)는 특징벡터 추출부(239)를 학습 이미지를 이용하여 트레이닝시킨다. 실물이미지 판단 트레이닝부(285)는 실물이미지 판단부(238)를 트레이닝 시킨다.
얼굴이미지 추출 트레이닝부(282)는 얼굴이미지 추출부(237)를 구성하는 제1 내지 제3 얼굴탐지부를 학습 이미지를 이용하여 트레이닝시킨다. 구체적으로, 얼굴이미지 추출 트레이닝부(282)는 제1 내지 제3 얼굴탐지부에 미리 정해진 크기를 갖는 복수개의 학습 이미지를 입력하여 학습 이미지에서 얼굴영역이 포함될 확률값 및 얼굴영역 좌표를 산출하고, 산출된 확률값 및 얼굴영역 좌표를 역전파(Back Propagation) 알고리즘에 따라 제1 내지 제3 얼굴탐지부에 피드백함으로써 제1 내지 제3 얼굴탐지부에 적용된 컨벌루션 필터들의 필터계수 및 가중치를 갱신한다.
특징벡터 추출 트레이닝부(284)는 특징벡터 추출부(239)를 학습 이미지를 이용하여 트레이닝시킨다. 구체적으로, 특징벡터 추출 트레이닝부(505)는 특징벡터 추출부(239)에 복수개의 학습 이미지를 미리 정해진 배치단위로 입력함으로써 각 학습이미지로부터 특징벡터를 추출한다.
특징벡터 추출 트레이닝부(284)는 추출된 특징벡터들을 미리 정해진 분류함수에 적용함으로써 해당 학습 이미지가 특정 클래스에 포함될 확률값을 예측하고, 예측된 확률값(이하, '예측값'이라 함)과 실제값간의 오차를 연산하여 그 결과를 역전파 알고리즘을 이용하여 특징벡터 추출부(284)에 피드백함으로써 특징벡터 추출부(239)에 적용된 컨벌루션 필터들의 필터계수 및 가중치를 갱신한다.
일 실시예에 있어서, 특징벡터 추출 트레이닝부(284)는 실물이미지 판단부(284)의 실물 특징벡터 추출부를 학습이미지를 이용하여 트레이닝 시킬 수 있다. 이하에서는 특징벡터 추출 트레이닝부(284)가 특징벡터 추출부(239)를 트레이닝시키는 것과 실물 특징벡터 추출부를 트레이닝 시키는 것이 동일하므로, 실물 특징벡터 추출부를 트레이닝 시키는 것에 대한 구체적인 설명은 생략한다.
실물이미지 판단 트레이닝부(285)는 실물이미지 판단부(238)를 트레이닝 시킨다. 구체적으로 실물이미지 판단 트레이닝부(238)는 RGB 신경망 네트워크, 깊이 신경망 네트워크, 반사 신경망 네트워크, 및 실물이미지 판단부(238)의 판단부가 이용하는 이진분류기를 학습시킨다.
실물이미지 판단 트레이닝부는 이진분류기에 실물이미지 및 페이크 이미지를 학습시키고, 추가로, 깊이 신경망 네트워크를 통과하여 실물이미지로부터 분리된 제1 깊이이미지와 페이크이미지로부터 분리된 제2 깊이이미지, 반사 신경망 네트워크를 통과하여 실물이미지로부터 분리된 제1 반사이미지와 페이크이미지로부터 분리된 제2 반사이미지를 학습시킨다. 이때, 페이크 이미지로부터 추출된 제2 깊이이미지는 RGB를 (0,0,0)으로 하여 학습시키고, 실물이미지로부터 추출된 제1 반사이미지는 RGB를 (0,0,0)으로 하여 학습시킨다.
한편, 본 발명에 따른 얼굴인식모델 트레이닝부(280)는 오차감소부(286)를 통해 특징벡터 추출시 발생되는 오차를 더욱 감소시킴으로써 특징벡터 추출부(239)의 성능을 더욱 향상시킬 수 있다. 실물이미지 판단부(238)의 실물 특징벡터 추출부도 특징벡터 추출부(239)와 동일하게 오차감소부(286)를 통해 성능을 향상시킬 수 있다.
오차감소부(286)는 특징벡터 추출 트레이닝부(284)가 특징벡터 추출부(239)를 트레이닝시키는 과정에서 특징벡터 추출부(239)를 통해 추출된 특징벡터들에 기초한 예측값과 실제값간의 오차를 감소시킨다. 구체적으로, 오차감소부(286)는 특징벡터 추출부(239)가 학습 이미지로부터 추출한 특징벡터들을 기초로 예측값과 실제값간의 오차를 계산하고, 오차가 감소될 수 있도록 각 학습 이미지를 2차원 각도 평면상에 배치하고 배치결과에 따른 확률값을 이용하여 특징벡터 추출 트레이닝부(284)가 특징벡터 추출부(239)를 트레이닝시킬 수 있도록 한다.
본 발명에 따른 얼굴인식모델 트레이닝부(280)가 오차감소부(286)를 통해 오차감소가 되도록 특징벡터 추출부(239)를 학습시키는 이유는 동일인임에도 불구하고 얼굴이 촬영된 조명이나 환경이 변화하는 경우 동일인임을 구분해 내지 못하는 것과 같은 오차가 발생하기 때문에, 이러한 오차감소부(286)를 통해 얼굴인식의 오차가 감소될 수 있는 특징벡터가 추출되도록 특징벡터 추출부(239)를 트레이닝 시키기 위한 것이다.
본 발명의 일 실시예에 따른 오차감소부(286)는 얼굴이미지 배치부(287) 및 확률산출부(289)를 포함한다.
얼굴이미지 배치부(287)는 학습 이미지에 대해 특징벡터 추출부(239)가 추출한 복수개의 특징벡터들을 기초로 각 학습 이미지들을 2차원 각도 평면 상에 배치한다. 구체적으로, 얼굴이미지 배치부(287)는 서로 다른 클래스에 포함되는 학습 이미지들간의 코사인 유사도를 산출하고, 코사인 유사도에 따라 각 학습 이미지들 간의 이격각도인 기준각도를 산출함으로써 학습 이미지들을 2차원 각도 평면상에 배치하게 된다.
본 발명에서 얼굴이미지 배치부(287)가 각 학습 이미지들의 특징벡터를 기초로 산출되는 각 학습 이미지들 간의 거리에 따라 학습 이미지를 벡터공간에 배치하게 되면 각 학습 이미지들 간에 중첩되는 영역이 발생할 수 밖에 없어, 학습시 동일인과 타인을 명확하게 구분하기가 어렵다는 한계가 있다.
따라서, 본 발명에서는 얼굴이미지 배치부(287)가 서로 다른 클래스에 포함되는 학습 이미지들 사이의 각도를 코사인 유사도를 통해 산출하고, 산출된 각도를 기초로 각 학습 이미지를 2차원 각도 평면상에 배치하는 것이다.
확률 산출부(289)는, 2차원 각도 평면 상에서 얼굴이미지 배치부(287)에 의해 산출된 기준각도에 가산될 마진각도를 가변시키고, 가변되는 마진각도 별로 각 학습 이미지들이 해당 클래스에 포함될 확률을 산출한다.
구체적으로, 확률 산출부(525)는 각 학습 이미지 간의 기준각도(θ12)에 가산되는 마진각도(P1, P2)를 가변시키면서 서로 중첩되는 특성을 갖는 학습 이미지들이 2차원 각도 평면 상에서 이격되도록 한다. 일 실시예에 있어서, 마진각도(P1, P2)는 0보다 크고 90도 보다 작은 범위 내에서 학습률(Learning Rate)에 따라 결정될 수 있다.
예컨대, 학습률이 증가하면 마진각도도 그에 따라 증가하고 학습률이 감소하면 마진각도도 그에 따라 감소하도록 설정될 수 있다. 이때, 확률 산출부(525)는 마진각도를 미리 정해진 기준 단위만큼 가변시킬 수 있다.
확률산출부(289)에 의해 마진각도가 기준각도에 가산되면 벡터공간 내에서 서로 중첩되는 특징을 가졌던 학습 이미지들이 서로 이격되도록 배치된다는 것을 알 수 있다.
확률산출부(289)는 기준각도에 가산되는 마진각도 별로 각 학습 이미지들이 해당 클래스에 포함될 확률을 산출하고, 산출된 확률값을 특징벡터 추출 트레이닝부(284)로 제공함으로써 특징벡터 추출 트레이닝부(284)가 확률산출부(289)에 의해 산출된 확률값을 기초로 특징벡터 추출부(239)를 학습시킬 수 있도록 한다. 즉, 특징벡터 추출 트레이닝부(284)는 확률산출부(289)에 의해 산출된 확률값을 기초로 특징벡터 추출부(239)에 적용된 컨벌루션 필터들의 계수 및 가중치 중 적어도 하나를 갱신함으로써 특징벡터 추출부(239)를 학습시키게 된다.
일 실시예에 있어서, 확률 산출부(289)는 아래의 수학식 1을 이용하여 각 마진각도별로 각 학습 이미지들이 해당 클래스에 포함될 확률을 산출할 수 있다.
Figure 112019124934737-pat00001
수학식 1에서 x는 기준각도를 나타내고 p는 상기 마진각도를 나타내며, n은 클래스의 개수를 나타낸다.
일 실시예에 있어서, 확률 산출부(289)는 확률 산출부(289)에 의해 산출된 확률값을 기초로 특징벡터 추출 트레이닝부(284)에 의해 트레이닝된 특징벡터 추출부(239)에 미리 정해진 테스트 얼굴이미지를 적용했을 때 예측값과 실제값간의 오차가 기준치 이하가 될 때까지 마진각도를 계속하여 가변시킬 수 있다.
즉, 확률 산출부(289)는 트레이닝된 특징벡터 추출부(239)에 미리 정해진 테스트 얼굴이미지를 적용했을 때 산출되는 예측값과 실제값간의 오차가 기준치 이하가 되는 시점의 마진각도를 최종 마진각도로 결정한다. 이때, 예측값과 실제값간의 오차는 크로스 엔트로피(Cross Entropy) 함수를 이용하여 산출할 수 있다.
상술한 바와 같은 오차감소부(286)를 통해 오차감소가 수행되면 서로 다른 환경이나 다른 조명에서 촬영된 경우라 하더라도 동일인을 정확하게 분류해 낼 수 있게 된다.
상술한 실시예에 있어서, 얼굴인식모델 트레이닝부(280)는 알고리즘 형태의 소프트웨어로 구현되어 안면인식서버(110)에 탑재될 수 있다.
다시 도 1을 참조하면, 에지 디바이스(120)는 특정 장소 마다 배치되어 안면인식서버(110)에 의해 배포되는 얼굴인식모델(235)을 이용하여 해당 장소로의 출입을 희망하는 타겟사용자의 얼굴을 인식하고, 인식결과를 기초로 타겟사용자의 출입을 인증하는 기능을 수행한다.
본 발명에서, 안면인식서버(110)가 타겟 사용자의 얼굴인식 및 인증을 수행하지 않고 에지 디바이스(120)가 타겟 사용자의 얼굴인식 및 인증을 수행하도록 한 이유는 타겟 사용자의 얼굴인식 및 인증을 안면인식서버(110)에서 수행하는 경우 안면인식서버(110) 또는 네트워크에서 장애가 발생되면 얼굴인식 및 인증이 수행될 수 없을 뿐만 아니라 사용자의 수가 증가함에 따라 고가의 안면인식서버(110)의 증설이 요구되기 때문이다.
이에 따라 본 발명은 에지 컴퓨팅(Edge Computing) 방식을 적용하여 에지 디바이스(120)에서 타겟 사용자의 얼굴인식 및 인증을 수행하도록 함으로써 안면인식서버(110) 또는 네트워크에 장애가 발생하더라도 정상적으로 얼굴인식 서비스를 제공할 수 있어 서비스 제공 신뢰도를 향상시킬 수 있고, 사용자의 수가 증가하더라도 고가의 안면인식서버(110)를 증설할 필요가 없어 안면인식시스템(100) 구축비용을 절감할 수 있게 된다.
이하, 본 발명에 따른 에지 디바이스(120)의 구성을 도 4을 참조하여 보다 구체적으로 설명한다.
도 4은 본 발명의 제1 실시예에 따른 에지 디바이스의 구성을 개략적으로 보여주는 블록도이다. 도 4에 도시된 바와 같이, 본 발명의 제1 실시예에 따른 에지 디바이스(120)는 제1 촬영부(1210), 입력 이미지 생성부(1250), 얼굴인식부(1300), 인증부(1310), 얼굴인식모델(1320), 어레이 파일 업데이트부(1330), 메모리(1340), 및 인터페이스부(1350)를 포함한다.
제1 촬영부(1210)는 인증대상이 되는 타겟 사용자가 접근하면, 타겟 사용자를 촬영하여 촬영 이미지를 생성한다. 제1 촬영부(1210)는 생성된 촬영이미지를 입력 이미지 생성부(1250)로 전송한다.
입력 이미지 생성부(1250)는 제1 촬영부(1210)로부터 전송된 타겟 사용자의 촬영이미지로부터 얼굴인식에 이용될 입력 이미지를 생성한다. 구체적으로 입력 이미지 생성부(1250)는 하나의 타겟 사용자의 촬영이미지를 미리 정해진 단계까지 다운샘플링하거나 업샘플링함으로써 하나의 타겟 사용자의 촬영이미지로부터 해상도가 서로 다른 복수개의 타겟 사용자의 이미지들을 생성한다.
해상도가 서로 다른 복수개의 타겟 사용자 이미지가 생성되면, 입력 이미지 생성부(1250)는 각각의 타겟 사용자 이미지에 대해, 타겟 사용자 이미지 상에서 미리 정해진 픽셀크기의 윈도우를 이동시켜가면서 획득되는 복수개의 이미지를 입력 이미지로 생성한다. 입력 이미지 생성부(1250)는 생성된 입력 이미지를 얼굴인식부(1300)로 입력한다.
얼굴인식부(1300)는 입력 이미지 생성부(1250)로부터 타겟 사용자의 입력 이미지가 수신되면 수신된 타겟 사용자의 입력 이미지를 안면인식서버(110)로부터 배포된 얼굴인식모델(1320)에 입력하여 타겟 얼굴이미지를 추출하고, 추출된 타겟 얼굴이미지로부터 타겟 특징벡터를 추출한다.
또한, 얼굴인식모델(1320)은 미리 정해진 주기마다 업데이트될 수 있다. 일 예로, 에지 디바이스(120)는 안면인식서버(110)에 의해 얼굴인식모델(1320)이 업데이트될 때마다 안면인식서버(110)로부터 새로운 얼굴인식모델(1320)을 배포받음으로써 기 배포된 얼굴인식모델(1320)을 새로운 얼굴인식모델(1320)로 업데이트할 수 있다.
인증부(1310)는 얼굴인식부(1300)에 의해 획득된 타겟 특징벡터와 안면인식서버(110)로부터 수신된 어레이 파일에 포함된 특징벡터들을 비교하여 유사도를 산출하고, 산출된 유사도를 기준임계치와 비교하여 타겟 사용자가 해당 장소에 출입이 가능한 등록사용자인지 여부를 인증한다. 이때, 인증부(1310)는 미리 정해진 주기에 따라 안면인식서버(110)로부터 최적임계치로 변경된 기준임계치를 수신하고, 이를 유사도와 비교하여 타겟 사용자를 인증한다.
이하, 인증부(1310)가 타겟 사용자를 인증하는 방법에 대해 구체적으로 설명한다.
먼저, 인증부(1310)는 어레이 파일에 포함된 각 어레이 마다 해당 어레이에 포함된 특징벡터에서 타겟 특징벡터를 동일 인덱스 별로 감산하여 제곱한 제1 결과값을 산출한다. 인증부(1310)는 인덱스 별로 산출된 제1 결과값을 합산하여 제2 결과값을 산출하고, 미리 정해진 기준값에서 제2 결과값을 감산한 제3 결과값을 유사도로 산출한다.
인증부(1310)는 어레이 파일에 포함된 어레이들 중 유사도가 가장 큰 어레이에 매핑되어 있는 사용자가 타겟사용자와 가장 유사한 사용자인 것으로 결정한다. 이때, 인증부(1310)는 유사도가 기준임계치 이상인 경우 타겟사용자가 정당한 권한을 가진 사용자로 인증하게 되고, 이에 따라 타겟 사용자가 해당 장소의 출입이 허가될 수 있다.
이하, 인증부(1310)가 얼굴인식부(1300)에 의해 획득된 타겟 특징벡터와 어레이 파일에 포함된 특징벡터들을 비교하여 타겟 사용자가 해당 층에 출입이 가능한 정당한 사용자인지 여부를 인증하는 방법을 예를 들어 설명하기로 한다.
도 5는 인증부가 타겟 사용자를 인증하는 방법을 예시적으로 보여주는 도면이다. 도 5에 도시된 바와 같이, 어레이 파일은 각 사용자의 특징벡터들을 포함하는 어레이가 각 로우 별로 배치되어 있다. 예컨대, 1번째 로우에는 제1 사용자에 대한 특징벡터들이 순차적으로 배치되어 있고, 2번째 로우에는 제2 사용자에 대한 특징벡터들이 순차적으로 배치되어 있다. 이때, 각 사용자의 특징벡터들은 인덱스 순서에 따라 하나의 로우에 배치되어 있다.
도 5a에 도시된 바와 같이 인증부(1310)는 어레이 파일(1410)의 각 어레이의 특징벡터들과 타겟 특징벡터들 간의 차이값을 인덱스 별로 산출하고, 도 5b에 도시된 바와 같이 산출된 차이값들을 제곱하여 제1 결과값을 산출하며, 도 5c에 도시된 바와 같이 각 어레이 별로 제1 결과값들을 모두 합산하여 제2 결과값을 산출한다.
이후, 도 5d에 도시된 바와 같이, 인증부(1310)는 미리 정해진 기준값(예컨대, 1)에서 제2 결과값을 감산함으로써 제3 결과값인 유사도를 산출하고, 산출된 유사도들 중 제일 큰 값인 0.310528에 해당하는 어레이에 매핑되어 있는 사용자를 타겟 사용자와 가장 유사한 사용자로 결정한다. 또한, 인증부(1310)는 가장 큰 값으로 결정된 유사도가 기준임계치보다 큰 값이므로 타겟 사용자를 해당 어레이에 매핑되어 있는 사용자로 최종 인증한다.
인증부(1310)가 타겟 사용자를 인증하는 방식을 수학식으로 표현하면 아래의 수학식2와 같이 표현할 수 있다.
Figure 112019124934737-pat00002
수학식 2에서 Z는 제3 결과값인 유사도를 나타내고, R은 미리 정해진 기준값을 나타내며, Xi는 n개의 특징벡터들 중 i번째 인덱스에 해당하는 특징벡터를 나타내고 Yi는 n개의 특징벡터들 중 i번째 인덱스에 해당하는 타겟 특징벡터를 나타낸다.
인증부(1310)는 미리 정해진 주기에 따라 안면인식서버(110)로부터 변경된 기준임계치를 수신하여 갱신하고, 갱신된 기준임계치를 이용하여 타겟 사용자를 인증한다.
얼굴인식모델(1320)은 안면인식서버(110)에 의해 생성되어 배포된 것으로서, 얼굴인식모델(1320)은 안면인식서버(110)에 의해 얼굴인식모델(235)이 트레이닝되어 갱신될 때마다 갱신된 얼굴인식모델(235)로 대체된다. 이때, 얼굴인식모델(1320)은 인터페이스부(1350)를 통해 안면인식서버(110)로부터 수신될 수 있다.
업데이트부(1330)는 인터페이스부(1350)를 통해 안면인식서버(110)로부터 기준임계치 또는 어레이 파일이 수신되면 이를 제1 메모리(1342)에 업로드하여 인증부(1310)가 이를 이용하여 타겟 사용자를 인증할 수 있도록 한다. 특히, 본 발명에 따른 업데이트부(1330)는 기준임계치 또는 어레이 파일을 동적으로 로딩할 수 있다.
구체적으로, 어레이 파일 업데이트부(1330)는 제1 메모리(1342)에 기존 기준임계치 또는 어레이 파일이 로딩되어 있을 때, 안면인식서버(110)로부터 신규 기준임계치 또는 신규 어레이 파일이 수신되는 경우 신규 기준임계치 또는 신규 어레이 파일을 제2 메모리(1344)에 로딩하고, 제2 메모리(1344)에 신규 기준임계치 또는 신규 어레이 파일의 로딩이 완료되면 제1 메모리(1342)에 로딩되어 있는 기존 기준임계치 또는 어레이 파일을 제2 메모리(1344)에 로딩되어 있는 신규 기준임계치 또는 신규 어레이 파일로 대체한다.
본 발명에 따른 업데이트부(1330)가 상술한 바와 같이 기준임계치 또는 어레이 파일을 동적 로딩하는 이유는 인증부(1310)가 타겟 사용자에 대한 인증처리를 수행함과 동시에 업데이트부(1330)가 기준임계치 또는 신규 어레이 파일을 업데이트할 수 있도록 함으로써 에지 디바이스(120)가 새롭게 업데이트된 기준임계치 또는 어레이 파일을 기초로 실시간으로 얼굴인식이 수행될 수 있도록 하기 위함이다.
제1 메모리(1342)에는 인증부(1310)에 의해 이용되는 기존 기준임계치 또는 어레이 파일이 로딩되고, 제2 메모리(1344)에는 새롭게 수신된 신규 기준임계치 또는 신규 어레이 파일이 로딩된다. 제2 메모리(1344)에 신규 기준임계치 또는 신규 어레이 파일의 로딩이 완료되면 업데이트부(1330)에 의해 제1 메모리(1342)에 기록된 기존 기준임계치 또는 어레이 파일이 신규 기준임계치 또는 신규 어레이 파일로 대체되게 된다.
인터페이스부(1350)는 에지 디바이스(120)와 안면인식서버(110)간의 데이터 송수신을 매개한다. 구체적으로, 인터페이스부(1350)는 안면인식서버(110)로부터 얼굴인식모델(1320)을 수신하고, 안면인식서버(110)로부터 기준임계치 또는 어레이 파일을 수신하여 업데이트부(1330)를 통해 제1 메모리(1342) 또는 제2 메모리(1344)에 로딩한다. 또한, 인터페이스부(1350)는 인증부(1330)에 의한 인증결과를 안면인식서버(110)로 주기적으로 전송한다.
일 실시예에 있어서, 기준임계치, 어레이 파일 및 얼굴인식모델(1320)은 인터페이스부(1350)를 통해 미리 정해진 주기마다 업데이트될 수 있다.
상술한 바와 같이, 본 발명에 따르면 에지 디바이스(120)에는 얼굴인식을 위한 얼굴인식모델(1320), 기준임계치, 및 어레이 파일만 저장될 뿐 사용자의 얼굴이미지나 개인정보가 저장되지 않기 때문에 에지 디바이스(120)가 해킹되더라도 사용자의 개인정보가 유출될 염려가 없어 보안이 강화된다.
상술한 제1 실시예에 따른 에지 디바이스(120)의 경우, 제1 촬영부(1210)에 의해 생성된 촬영이미지가 입력 이미지 생성부(1250)로 직접 입력되는 것으로 설명하였다. 하지만 이러한 실시예에 따르는 경우 제1 촬영부(1210)에 의해 타겟 사용자의 얼굴이 포함된 사진이 촬영되는 경우에도 제1 촬영부(1210)는 정상적인 촬영 이미지를 생성하여 입력 이미지 생성부(1250)로 전달하게 될 수 있다. 이에 따라 타겟 사용자가 아닌 사용자가 타겟 사용자의 사진을 이용하여 인증을 수행하게 될 수 있다는 문제점이 있다.
이하, 상술한 문제점을 해결할 수 있는 제2 실시예에 따른 에지 디바이스(120)에 대해 구체적으로 설명한다.
도 6은 본 발명의 제2 실시예에 따른 에지 디바이스의 구성을 보여주는 블록도이다. 도 6에 도시된 제2 실시예에 따른 에지 디바이스는 도 4에 도시된 제1 실시예에 따른 에지 디바이스에 비해 제2 촬영부(1510) 및 진위판단부(1520)를 더 포함한다는 점에서 제1 실시예에 따른 에지 디바이스와 구별된다. 이하에서는, 설명의 편의를 위해 제1 실시예에 따른 에지 디바이스와 동일한 기능을 하는 구성에 대한 설명은 생략하고, 새롭게 추가된 제2 촬영부(1510) 및 진위판단부(1520)와 새롭게 추가된 구성으로 인해 그 기능이 변경된 제1 촬영부(1210)에 대해서만 기재하기로 한다.
제1 촬영부(1210)는 촬영대상을 촬영하여 촬영이미지를 생성한다. 제1 촬영부(1210)는 생성된 촬영이미지를 진위판단부(1520)로 전송한다.
제2 촬영부(1510)는 촬영대상을 촬영하여 뎁스(Depth) 이미지를 생성한다. 제2 촬영부(1510)는 제1 촬영부(1210)에 의해 촬영대상이 촬영되는 시점과 동일한 시점 또는 제1 촬영부(1210)에 촬영대상이 촬영되는 시점으로부터 소정시간 이전 또는 소정시간 이후에 촬영대상을 촬영할 수 있다.
일 실시예에 있어서, 제2 촬영부(1510)는 촬영대상을 촬영하여 뎁스 이미지를 생성할 수 있는 IR 카메라로 구현될 수 있다.
이와 같이 제2 실시예에 따른 에지 디바이스(120)가 제2 촬영부(1510)를 통해 촬영대상를 촬영하여 뎁스 이미지를 생성하는 이유는, 제2 촬영부(1510)에 의해 촬영대상의 실제 얼굴이 촬영되는 경우와 촬영대상의 얼굴이 포함된 사진이 촬영된 경우 서로 다른 형태의 뎁스 이미지가 생성되기 때문이다.
제2 촬영부(1510)는 생성된 뎁스 이미지를 진위판단부(1520)로 전송한다.
진위판단부(1520)는 제2 촬영부(1510)로부터 전송된 뎁스 이미지를 이용하여 제2 촬영부(1510)에 의해 촬영된 촬영대상이 사진인지 또는 실제 촬영대상의 얼굴인지 여부를 판단한다.
구체적으로, 진위판단부(1520)는 제2 촬영부(1510)로부터 수신한 뎁스 이미지로부터 뎁스 데이터를 추출하고, 이진 분류(Binary Classification)를 통해 뎁스 이미지가 촬영대상의 실제 얼굴인지 여부를 판단한다. 일 실시예에 있어서, 진위판단부(1520)는 딥 러닝(Deep Learning) 알고리즘 기반의 트레이닝을 통해 실제 얼굴과 사진에 대한 분류 정확도가 향상되도록 할 수 있다.
진위판단부(1520)는 제2 촬영부(1510)에 의해 촬영된 촬영대상이 실제 얼굴인 것으로 판단되면 제1 촬영부(1210)로부터 수신된 촬영 이미지를 입력 이미지 생성부(1250)로 전송한다.
한편, 진위판단부(1520)는 제2 촬영부(1510)에 의해 촬영된 촬영대상이 실제 얼굴이 아닌 것으로 판단되면 제1 촬영부(1210)로부터 수신된 촬영 이미지를 입력 이미지 생성부(1250)로 전송하지 않고, 인증처리가 실패하였음을 문자 형태 또는 음성 형태의 알람 메시지를 이용하여 출력하거나, 비정상적 접근 시도가 있었음을 시스템 운영자에게 통지할 수 있다.
이와 같이, 본 발명에 따르면 촬영된 촬영대상이 실제 얼굴인지 사진인지 여부를 정확하게 판별하여 사진이 촬영된 경우 인증처리가 수행되지 않도록 함으로써 정당한 권한없는 사용자가 타인의 사진을 이용하여 인증을 받고자 수행하는 시도를 원천적으로 차단할 수 있고, 이를 통해 보안을 향상시킬 수 있게 된다.
다시 도 1을 참조하면, 사용자 단말기(130)는 사용자를 신규 등록하기 위한 사용자 이미지를 사용자의 식별정보와 함께 안면인식서버(110)로 전송한다. 일 실시예에 있어서, 사용자 단말기(130)에는 안면인식서버(110)와 연동할 수 있는 얼굴등록 에이전트(미도시)가 탑재되어 있고, 사용자는 사용자 단말기(130) 상에서 얼굴등록 에이전트를 실행시킴으로써 사용자의 얼굴을 촬영한 이미지나 기 촬영된 이미지를 사용자 식별정보와 함께 안면인식서버(110)로 전송할 수 있다.
일 실시예에 있어서, 사용자 단말기(130)는 각 사용자 별로 복수개의 사용자 이미지를 등록하도록 요청할 수 있다. 이때, 각 사용자 별로 등록요청되는 복수개의 이미지는 서로 다른 환경에서 촬영된 사진이거나 서로 다른 조명하에서 촬영된 사진일 수 있다.
사용자 단말기(130)는 안면인식서버(110)로 사용자 이미지를 전송하여 사용자 등록을 요청할 수 있는 것이라면 그 종류에 제한 없이 어떤 것이든 이용 가능하다. 예컨대, 사용자 단말기(130)는 스마트폰, 노트북, 데스크탑 또는 테플릿 PC등으로 구현될 수 있다.
본 발명이 속하는 기술분야의 당업자는 상술한 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다.
예컨대, 도 2에 도시된 안면인식서버의 구성과 도 4 및 도 6에 도시된 에지 디바이스의 구성은 프로그램 형태로 구현될 수도 있을 것이다. 본 발명에 따른 안면인식서버의 구성 및 에지 디바이스의 구성이 프로그램으로 구현되는 경우, 도 2, 도 4, 및 도 6에 도시된 각 구성들이 코드로 구현되고, 특정 기능을 구현하기 위한 코드들이 하나의 프로그램으로 구현되거나, 복수개의 프로그램을 분할되어 구현될 수도 있을 것이다.
그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100: 안면인식시스템 110: 안면인식서버
120: 에지 디바이스 130: 사용자 단말기
210: 에지 디바이스 관리부 212: 인증결과 수집부
214: 최적임계치 산출부 218: 기준임계치 변경부

Claims (18)

  1. 사용자의 얼굴이미지와 해당 사용자의 기준 얼굴이미지간의 유사도를 기준 임계치와 비교하여 출입을 인증한 인증결과들을 미리 정해진 기간마다 복수의 에지 디바이스들로부터 수집하는 인증결과 수집부;
    상기 인증결과들 중 미등록사용자를 등록사용자로 잘못 승인한 제1 인증결과들을 추출하고, 상기 제1 인증결과들에 포함된 유사도들 중 최대값을 기초로 제1 최적 임계치를 산출하는 최적임계치 산출부; 및
    상기 인증결과들 중 상기 등록사용자로 정상 승인된 제2 인증결과에 대응되는 제1 타입 사용자에 대해 상기 기준 임계치를 유지하고, 상기 제1 인증결과에 대응되는 제2 타입 사용자에 대해 상기 기준 임계치를 상기 제1 최적 임계치로 변경하는 기준임계치 변경부를 포함하고,
    상기 최적임계치 산출부는, 각 사용자 별로 오인식률을 산출하고, 상기 오인식률에 비례하는 마진값을 산출하며, 상기 최대값에 상기 산출된 마진값을 합산한 결과값을 상기 제1 최적임계치로 결정하고,
    상기 에지 디바이스는 미리 정해진 업데이트 주기마다 상기 제1 최적임계치로 변경된 기준 임계치를 안면인식서버로부터 수신하는 것을 특징으로 하는 인증결과를 활용한 안면인식시스템.
  2. 삭제
  3. 제1항에 있어서,
    상기 최적임계치 산출부는, 상기 제1 인증결과들을 상기 제1 인증결과에 대응되는 제2 타입 사용자별로 분류하고, 상기 제2 타입 사용자 별로 상기 제1 최적임계치를 다른 값으로 산출하는 것을 특징으로 하는 인증결과를 활용한 안면인식시스템.
  4. 제1항에 있어서,
    상기 최적임계치 산출부는 상기 인증결과들 중 등록사용자를 미등록사용자로 잘못 승인한 제3 인증결과들에 포함된 유사도들 중 최소값을 기초로 제2 최적 임계치를 추가로 산출하고,
    상기 기준임계치 변경부는 상기 제3 인증결과에 대응되는 제3 타입 사용자에 대해 상기 기준 임계치를 상기 제2 최적 임계치로 변경하는 것을 특징으로 하는 인증결과를 활용한 안면인식시스템.
  5. 제4항에 있어서,
    상기 최적임계치 산출부는, 상기 제3 인증결과들을 상기 제3 인증결과에 대응되는 제3 타입 사용자별로 분류하고, 상기 제3 타입 사용자 별로 상기 제2 최적임계치를 다른 값으로 산출하는 것을 특징으로 하는 인증결과를 활용한 안면인식시스템.
  6. 제1항에 있어서,
    상기 최적임계치 산출부는, 상기 제1 인증결과들을 상기 제1 인증결과를 송신한 에지 디바이스 별로 분류하고, 상기 에지 디바이스 별로 상기 제1 최적 임계치를 다른 값으로 산출하는 것을 특징으로 하는 인증결과를 활용한 안면인식시스템.
  7. 제1항에 있어서,
    상기 최적임계치 산출부는, 상기 제1 인증결과들을 상기 제1 인증결과가 발생된 출입시간 별로 분류하고, 각 시간 별로 상기 제1 최적 임계치를 다른 값으로 산출하는 것을 특징으로 하는 인증결과를 활용한 안면인식시스템.
  8. 제1항에 있어서,
    상기 인증결과 수집부는 각 장소 별로 설치된 복수개의 에지 디바이스로부터 상기 인증결과를 수신하고,
    상기 에지 디바이스는 얼굴인식모델을 이용하여 상기 사용자의 얼굴이미지로부터 타겟 특징벡터를 생성하고, 상기 타겟 특징벡터를 상기 기준 얼굴이미지로부터 추출된 특징벡터들을 포함하는 복수개의 어레이로 구성된 어레이 파일을 이용하여 상기 유사도를 산출하는 것을 특징으로 하는 인증결과를 활용한 안면인식시스템.
  9. 제8항에 있어서,
    상기 에지 디바이스는, 상기 사용자의 얼굴이미지와 상기 기준 얼굴이미지 간의 유사도를 산출하고, 상기 산출된 유사도를 상기 기준 임계치 또는 상기 제1 최적임계치 중 어느 하나와 비교하여 상기 사용자를 인증하는 것을 특징으로 하는 인증결과를 활용한 안면인식시스템.
  10. 제8항에 있어서,
    상기 에지 디바이스는, 각 어레이에 포함된 특징벡터에서 상기 타겟 특징벡터를 동일 인덱스 별로 감산하여 제곱한 제1 결과값을 산출하고, 해당 어레이 내에서 각 인덱스 별로 산출된 제1 결과값들을 합산한 제2 결과값을 산출하며 각 어레이 별로 미리 정해진 기준값에서 상기 제2 결과값을 감산한 제3 결과값을 상기 유사도로 산출하는 것을 특징으로 하는 인증결과를 활용한 안면인식시스템.
  11. 사용자의 얼굴이미지와 해당 사용자의 기준 얼굴이미지간의 유사도를 기준 임계치와 비교하여 출입을 인증한 인증결과들을 미리 정해진 기간마다 복수의 에지 디바이스들로부터 수집하는 인증결과 수집부;
    상기 인증결과들 중 미등록사용자를 등록사용자로 잘못 승인한 제1 인증결과들을 추출하고, 추출된 제1 인증결과들에 포함된 유사도들 중 최대값을 기초로 제1 최적 임계치를 산출하는 최적임계치 산출부; 및
    상기 기준 임계치를 상기 제1 최적 임계치로 변경하는 기준임계치 변경부를 포함하고,
    상기 최적임계치 산출부는, 각 사용자 별로 오인식률을 산출하고, 상기 오인식률에 비례하는 마진값을 산출하며, 상기 최대값에 상기 산출된 마진값을 합산한 결과값을 상기 제1 최적임계치로 결정하고,
    상기 에지 디바이스는 미리 정해진 업데이트 주기마다 상기 제1 최적임계치로 변경된 기준 임계치를 안면인식서버로부터 수신하는 것을 특징으로 하는 인증결과를 활용한 안면인식시스템.
  12. 제11항에 있어서,
    상기 기준임계치 변경부는 상기 제1 최적 임계치 변경 시 사용자에 대한 인증을 수행하는 에지 디바이스의 인증속도를 산출하고, 산출된 인증속도가 미리 정해진 기준속도보다 낮으면, 상기 인증결과들 중 등록사용자로 정상 승인된 제2 인증결과에 대응되는 제1 타입 사용자에 대해 상기 기준 임계치를 유지하고, 상기 제1 인증결과에 대응되는 제2 타입 사용자에 대해 상기 기준 임계치를 상기 제1 최적 임계치로 변경하는 것을 특징으로 하는 인증결과를 활용한 안면인식시스템.
  13. 제1항 또는 제11항에 있어서,
    등록요청된 사용자의 입력 이미지를 얼굴인식모델에 입력함으로써 얼굴이미지를 추출하고, 상기 추출된 얼굴이미지로부터 복수개의 특징벡터를 생성하는 얼굴인식부를 더 포함하고,
    상기 얼굴인식모델은,
    상기 입력 이미지로부터 상기 얼굴이미지를 추출하는 얼굴이미지 추출부;
    상기 얼굴이미지가 사람을 촬영한 실물이미지인지 여부를 판단하는 실물이미지 판단부; 및
    상기 얼굴이미지가 실물이미지로 판단되면, 상기 얼굴이미지에 포함된 얼굴로부터 특징벡터를 추출하는 특징벡터 추출부를 포함하는 것을 특징으로 하는 인증결과를 활용한 안면인식시스템.
  14. 제13항에 있어서,
    상기 얼굴이미지 추출부는,
    서로 다른 뎁스(Depth)의 신경망 네트워크를 갖는 2개 이상의 얼굴탐지부를 이용하여 입력 이미지들로부터 상기 얼굴이미지를 추출하고,
    상기 2개 이상의 얼굴탐지부는 뎁스가 깊어지는 순서에 따라 순차적으로 배치되어 n번째 얼굴탐지부에 입력되는 입력 이미지의 개수가 n-1번째 얼굴탐지부에 입력되는 입력 이미지의 개수보다 감소되는 것을 특징으로 하는 인증결과를 활용한 안면인식시스템.
  15. 제13항에 있어서,
    상기 실물이미지 판단부는,
    상기 얼굴이미지로부터 상기 얼굴이미지의 깊이를 표현하는 깊이 특징벡터 및 상기 얼굴이미지의 빛 반사를 표현하는 반사 특징벡터 중 적어도 하나와 상기 얼굴이미지의 RGB를 표현하는 RGB 특징벡터를 추출하는 실물 특징벡터 추출부;
    상기 깊이 특징벡터 및 상기 반사 특징벡터 중 적어도 하나를 상기 RGB 특징벡터와 융합하여 융합 특징벡터를 생성하는 특징벡터 융합부; 및
    상기 융합 특징벡터를 이용하여 상기 얼굴이미지가 사람을 촬영한 실물 이미지인지 여부를 판단하는 판단부를 포함하는 것을 특징으로 하는 인증결과를 활용한 안면인식시스템.
  16. 제13항에 있어서,
    상기 특징벡터 추출부는,
    입력 데이터를 영상 처리하여 출력 데이터를 생성하는 복수개의 얼굴이미지 처리부; 및
    상기 복수개의 얼굴이미지 처리부들 중 마지막 얼굴이미지 처리부에서 출력되는 출력 데이터를 하나의 레이어로 병합하여 미리 정해진 개수의 특징벡터를 생성하는 특징벡터 생성부를 포함하고,
    상기 복수개의 얼굴 이미지 처리부들 중 1번째 얼굴이미지 처리부에는 상기 입력 이미지로써 얼굴이미지가 입력되고, n+1번째 얼굴이미지 처리부에는 상기 입력 이미지로써 n번째 얼굴이미지 처리부의 출력 데이터가 입력되는 것을 특징으로 하는 인증결과를 활용한 안면인식시스템.
  17. 제13항에 있어서,
    각 사용자 별로 상기 복수개의 특징벡터와 사용자의 식별정보로 구성된 어레이를 생성하고, 생성된 어레이들을 머지하여 어레이 파일을 생성하는 어레이 파일 생성부; 및
    상기 생성된 어레이 파일을 에지 디바이스로 전송하는 인터페이스부를 더 포함하는 것을 특징으로 하는 인증결과를 활용한 안면인식시스템.
  18. 제13항에 있어서,
    상기 얼굴인식모델은 오차감소 알고리즘을 통해 학습되어 있고,
    상기 오차감소 알고리즘은 상기 얼굴인식모델에 학습 이미지들을 입력하여 획득된 복수개의 특징벡터를 기초로 상기 학습 이미지들을 2차원 각도 평면 상에 배치하고, 서로 다른 클래스에 포함된 학습 이미지간의 기준각도에 가산되는 마진각도를 가변시켜 상기 가변되는 마진각도 별로 각 학습 이미지들이 상기 각 클래스에 포함될 확률을 산출하며, 상기 산출된 확률을 기초로 상기 얼굴인식모델을 학습시키는 것을 특징으로 하는 인증결과를 활용한 안면인식시스템.
KR1020190159130A 2018-12-07 2019-12-03 인증결과를 활용한 안면인식서버 및 안면인식시스템 KR102308122B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020190159130A KR102308122B1 (ko) 2019-12-03 2019-12-03 인증결과를 활용한 안면인식서버 및 안면인식시스템
PCT/KR2019/017218 WO2020117006A1 (ko) 2018-12-07 2019-12-06 Ai 기반의 안면인식시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190159130A KR102308122B1 (ko) 2019-12-03 2019-12-03 인증결과를 활용한 안면인식서버 및 안면인식시스템

Publications (2)

Publication Number Publication Date
KR20210069380A KR20210069380A (ko) 2021-06-11
KR102308122B1 true KR102308122B1 (ko) 2021-09-30

Family

ID=76376604

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190159130A KR102308122B1 (ko) 2018-12-07 2019-12-03 인증결과를 활용한 안면인식서버 및 안면인식시스템

Country Status (1)

Country Link
KR (1) KR102308122B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102520513B1 (ko) * 2021-11-16 2023-04-11 주식회사 딥이티 사용자 단말을 이용한 안면 인식 장치 및 방법
CN115862210B (zh) * 2022-11-08 2023-08-25 杭州青橄榄网络技术有限公司 一种访客关联方法与系统
CN116597552B (zh) * 2023-07-19 2023-09-22 青岛大数华创科技有限公司 一种用于生物样本出入库人脸识别授权管理系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008225813A (ja) * 2007-03-13 2008-09-25 National Institute Of Advanced Industrial & Technology Webブラウザ上で動作する顔認識方法及びそのプログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101500948B1 (ko) * 2013-04-25 2015-03-10 주식회사 슈프리마 분산형 생체 인식 서비스 제공 방법
KR20170000748A (ko) * 2015-06-24 2017-01-03 삼성전자주식회사 얼굴 인식 방법 및 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008225813A (ja) * 2007-03-13 2008-09-25 National Institute Of Advanced Industrial & Technology Webブラウザ上で動作する顔認識方法及びそのプログラム

Also Published As

Publication number Publication date
KR20210069380A (ko) 2021-06-11

Similar Documents

Publication Publication Date Title
KR102294574B1 (ko) 딥러닝 기반의 얼굴인식모델을 이용하여 실물이미지를 판단할 수 있는 안면인식시스템
WO2020207189A1 (zh) 身份验证方法、装置、存储介质和计算机设备
KR102137329B1 (ko) 딥러닝 기반의 얼굴인식모델을 이용하여 특징벡터를 추출하는 얼굴인식시스템
US11288504B2 (en) Iris liveness detection for mobile devices
US12014571B2 (en) Method and apparatus with liveness verification
KR102161359B1 (ko) 딥러닝 기반의 얼굴이미지 추출장치
KR102184493B1 (ko) Ai 기반의 얼굴인식 시스템
KR102184490B1 (ko) 얼굴인식용 에지 디바이스
US20190370533A1 (en) Facial verification method and apparatus based on three-dimensional (3d) image
KR102308122B1 (ko) 인증결과를 활용한 안면인식서버 및 안면인식시스템
WO2022033220A1 (zh) 人脸活体检测方法、系统、装置、计算机设备和存储介质
KR102312152B1 (ko) 시공간 환경 변화에 따른 안면인식을 위한 안면인식서버 및 안면인식 시스템
US20220327189A1 (en) Personalized biometric anti-spoofing protection using machine learning and enrollment data
US11625473B2 (en) Method and apparatus with selective combined authentication
CN112052830B (zh) 人脸检测的方法、装置和计算机存储介质
WO2021047482A1 (en) Method and system for performing steganographic technique
KR102546327B1 (ko) 클러스터링 기법을 이용하여 얼굴이미지를 비교하는 에지 디바이스 및 이를 포함한 얼굴인증 시스템
US20220383663A1 (en) Method for obtaining data from an image of an object of a user that has a biometric characteristic of the user
KR102673999B1 (ko) 주파수 성분을 이용하여 얼굴인식모델을 학습시키는 얼굴인식 시스템
KR102137328B1 (ko) 오차감소 알고리즘을 이용하여 얼굴인식모델을 트레이닝시키는 얼굴인식시스템
Arora et al. Biometrics for forensic identification in web applications and social platforms using deep learning
Therar et al. Personal Authentication System Based Iris Recognition with Digital Signature Technology
KR20220043842A (ko) 마스크 착용 얼굴인식용 에지 디바이스 및 마스크 착용 얼굴인식 시스템
WO2022110121A1 (en) Method for biometric analysis about a user of an electronic device
Srivastava et al. A Machine Learning and IoT-based Anti-spoofing Technique for Liveness Detection and Face Recognition

Legal Events

Date Code Title Description
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant