KR102359556B1 - 지문 영상을 이용한 사용자 인증 방법 및 사용자 인증을 위한 부호화 모델 생성 방법 - Google Patents

지문 영상을 이용한 사용자 인증 방법 및 사용자 인증을 위한 부호화 모델 생성 방법 Download PDF

Info

Publication number
KR102359556B1
KR102359556B1 KR1020160150024A KR20160150024A KR102359556B1 KR 102359556 B1 KR102359556 B1 KR 102359556B1 KR 1020160150024 A KR1020160150024 A KR 1020160150024A KR 20160150024 A KR20160150024 A KR 20160150024A KR 102359556 B1 KR102359556 B1 KR 102359556B1
Authority
KR
South Korea
Prior art keywords
sub
blocks
fingerprint image
user
fingerprint
Prior art date
Application number
KR1020160150024A
Other languages
English (en)
Other versions
KR20180052900A (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 KR1020160150024A priority Critical patent/KR102359556B1/ko
Priority to US15/654,023 priority patent/US10691909B2/en
Publication of KR20180052900A publication Critical patent/KR20180052900A/ko
Application granted granted Critical
Publication of KR102359556B1 publication Critical patent/KR102359556B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; 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/12Fingerprints or palmprints
    • G06V40/1347Preprocessing; Feature extraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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/50Extraction of image or video features by performing operations within image blocks; by using histograms, e.g. histogram of oriented gradients [HoG]; by summing image-intensity values; Projection analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • 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/12Fingerprints or palmprints
    • 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/12Fingerprints or palmprints
    • G06V40/1365Matching; Classification
    • 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/12Fingerprints or palmprints
    • G06V40/1365Matching; Classification
    • G06V40/1371Matching features related to minutiae or pores
    • 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/12Fingerprints or palmprints
    • G06V40/1365Matching; Classification
    • G06V40/1376Matching features related to ridge properties or fingerprint texture
    • 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/12Fingerprints or palmprints
    • G06V40/1382Detecting the live character of the finger, i.e. distinguishing from a fake or cadaver finger
    • G06V40/1388Detecting the live character of the finger, i.e. distinguishing from a fake or cadaver finger using image processing
    • 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/12Fingerprints or palmprints
    • G06V40/1382Detecting the live character of the finger, i.e. distinguishing from a fake or cadaver finger
    • G06V40/1394Detecting the live character of the finger, i.e. distinguishing from a fake or cadaver finger using acquisition arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Medical Informatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Collating Specific Patterns (AREA)
  • Image Analysis (AREA)

Abstract

일 실시예에 따른 지문 영상을 이용한 사용자 인증 방법 및 장치는 사용자의 지문 영상을 수신하여 지문 영상을 복수의 제1 서브 블록들로 분할하고, 부호화 모델을 이용하여 제1 서브 블록들을 부호화함으로써 입력 부호들의 집합을 생성하며, 입력 부호들의 집합과 기 등록된 이진 코드북에 포함된 등록 부호들의 집합 간에 측정된 유사도에 기초하여 사용자를 인증한다.

Description

지문 영상을 이용한 사용자 인증 방법 및 사용자 인증을 위한 부호화 모델 생성 방법{USER CERTIFICATION METHOD USING FINGERPRINT IMAGE AND GENERATING METHOD OF CODED MODEL FOR USER CERTIFICATION}
아래 실시예들은 지문 영상을 이용한 사용자 인증 방법 및 사용자 인증을 위한 부호화 모델 생성 방법에 관한 것이다.
스마트 폰 등 다양한 모바일 기기나 웨어러블 기기는 지문, 홍채, 목소리, 얼굴, 혈관 등 사용자의 다양한 생체 정보들을 보안 인증에 이용할 수 있다. 지문의 경우, 특징점(Minutiae) 정보 및 영상 정보를 사용하여 등록된 지문 영상들과의 정합을 통해 사용자 인증을 수행할 수 있다. 이 경우 모바일 기기들에 등록된 사용자의 특징점 정보 및 영상 정보로 사용자의 지문 정보를 복원하기 용이하다.
또한, 등록된 사용자 수와 등록된 손가락 개수가 많아짐에 따라 등록 지문들을 저장하기 위한 메모리 공간이 크게 증가하고, 사용자 인증을 위한 정합 시간 또한 증가하게 된다.
일 측에 따르면, 지문 영상을 이용한 사용자 인증 방법은 사용자의 지문 영상을 수신하는 단계; 상기 지문 영상을 복수의 제1 서브 블록들로 분할하는 단계; 부호화 모델을 이용하여 상기 제1 서브 블록들을 부호화함으로써 입력 부호들의 집합(set)을 생성하는 단계; 상기 입력 부호들의 집합과 기 등록된 이진 코드북(binary codebook)에 포함된 등록 부호들의 집합 간의 유사도를 측정하는 단계; 및 상기 유사도에 기초하여, 상기 사용자를 인증하는 단계를 포함한다.
상기 제1 서브 블록들로 분할하는 단계는 상기 지문 영상을 크롭핑(cropping)하는 위치가 중첩(overlay) 되도록 상기 제1 서브 블록들로 분할하는 단계; 및 상기 지문 영상을 크롭핑하는 위치가 중첩되지 않도록 상기 제1 서브 블록들로 분할하는 단계 중 어느 하나를 포함할 수 있다.
상기 제1 서브 블록들로 분할하는 단계는 상기 지문 영상을 크롭핑하는 위치를 변화시켜 상기 제1 서브 블록들로 분할하는 단계를 포함할 수 있다.
상기 입력 부호들의 집합을 생성하는 단계는 상기 제1 서브 블록들을, 크롭핑된 위치에 기초하여 서로 구별되는 복수의 클래스들 중 어느 하나의 클래스로 분류하는 단계; 및 상기 분류된 클래스에 따라 부호화된 제1 서브 블록들에 의해 상기 입력부호들의 집합을 생성하는 단계를 포함할 수 있다.
상기 부호화 모델은 상기 서브 블록들 각각의 입력에 반응하여 해당하는 서브 블록이 속한 클래스가 출력되도록, 딥 뉴럴 네트워크(deep neural network)의 파라미터를 학습시킴으로써 생성될 수 있다.
상기 지문 영상은 상기 사용자의 부분 지문을 포함할 수 있다.
상기 유사도를 측정하는 단계는 상기 입력 부호들의 집합이 상기 등록 부호들의 집합에 매칭되는지 여부에 기초하여 상기 유사도를 측정하는 단계를 포함할 수 있다.
상기 유사도를 측정하는 단계는 상기 기 등록된 이진 코드북의 비트들과 상기 입력 부호들의 집합에 대응하는 이진 코드북의 비트들을 비트와이즈 앤드(bitwise AND) 연산하는 단계; 상기 비트와이즈 앤드 연산 결과를 합산하는 단계; 상기 합산된 결과와 미리 설정된 임계치를 비교하는 단계; 및 상기 비교 결과에 기초하여, 상기 유사도를 측정하는 단계를 포함할 수 있다.
상기 유사도를 측정하는 단계는 베이즈 확률(Bayesian Probability)을 이용하여 상기 부호화된 지문 영상과 상기 이진 코드북 모델 간의 유사도 점수를 산출하는 단계; 및 상기 유사도 점수를 이용하여 상기 유사도를 측정하는 단계를 포함할 수 있다.
상기 지문 영상을 이용한 사용자 인증 방법은 상기 사용자의 복수의 등록 지문 영상들을 수신하는 단계; 및 상기 부호화 모델 및 상기 복수의 등록 지문 영상들에 기초하여 상기 이진 코드북을 생성하는 단계를 더 포함할 수 있다.
상기 이진 코드북을 생성하는 단계는 상기 복수의 등록 지문 영상들 각각에 대응하여, 상기 등록 지문 영상을 복수의 제2 서브 블록들로 분할하는 단계; 및 상기 부호화 모델을 이용하여 상기 제2 서브 블록들을 부호화함으로써 상기 등록 부호들의 집합을 포함하도록 상기 이진 코드북을 갱신하는 단계를 포함할 수 있다.
상기 복수의 제2 서브 블록들로 분할하는 단계는 상기 등록 지문 영상을 크롭핑하는 위치와 각도 중 적어도 하나를 변화시켜 상기 복수의 제2 서브 블록들로 분할하는 단계를 포함할 수 있다.
상기 지문 영상을 이용한 사용자 인증 방법은 상기 이진 코드북을 상기 사용자에 대응하여 저장하는 단계를 더 포함할 수 있다.
일 측에 따르면, 부호화 모델 생성 방법은 데이터베이스에 포함된 복수의 지문 영상들을 복수의 서브 블록들로 분할 하는 단계; 상기 서브 블록들을 그룹화 함으로써, 복수의 클래스들을 생성하는 단계; 및 상기 복수의 클래스들 각각에 속한 서브 블록들을 해당하는 클래스로 분류하는 부호화 모델을 생성하는 단계를 포함한다.
상기 복수의 서브 블록들로 분할하는 단계는 상기 데이터베이스에 포함된 복수의 지문 영상들을 크롭핑하는 위치와 각도 중 적어도 하나를 변화시켜 상기 복수의 서브 블록들로 분할하는 단계를 포함할 수 있다.
상기 복수의 지문 영상들을 복수의 사용자들의 지문 영상들 및 상기 복수의 사용자들의 복수의 손가락들에 대한 지문 영상들 중 적어도 하나를 포함할 수 있다.
상기 서브 블록들을 그룹화 함으로써, 복수의 클래스들을 생성하는 단계는 상기 서브 블록들 간의 유사도를 산출하는 단계; 및 상기 유사도에 기초하여, 상기 서브 블록들을 고유한 특징 패턴을 가지는 그룹 별로 클러스터링(clustering) 하는 단계를 포함할 수 있다.
상기 서브 블록들 간의 유사도를 산출하는 단계는 상기 서브 블록들 간의 NCC 값 및 상기 서브 블록들 간의 지배적인 방향(dominant direction)에 기초하여, 상기 서브 블록들 간의 지향 거리(Orientation Distance)를 계산하는 단계; 및 상기 서브 블록들 간의 지향 거리에 기초하여, 상기 서브 블록들 간의 유사도를 산출하는 단계를 포함할 수 있다.
상기 부호화 모델 생성 방법은 상기 복수의 클래스들 각각에 대응하여 고유의 식별자를 부여 하는 단계를 더 포함할 수 있다.
상기 부호화 모델을 생성하는 단계는 상기 서브 블록들 각각의 입력에 반응하여 해당하는 서브 블록이 속한 클래스가 출력되도록, 딥 뉴럴 네트워크(deep neural network)의 파라미터를 학습시켜 상기 부호화 모델을 생성하는 단계를 포함할 수 있다.
일 측에 따르면, 사용자 인증 장치는 사용자의 지문 영상을 수신하는 통신 인터페이스; 부호화 모델을 저장하는 메모리; 및 상기 지문 영상을 복수의 제1 서브 블록들로 분할하고, 상기 부호화 모델을 이용하여 상기 제1 서브 블록들을 부호화함으로써 입력 부호들의 집합(set)을 생성하며, 상기 입력 부호들의 집합과 기 등록된 이진 코드북(binary codebook)에 포함된 등록 부호들의 집합 간에 측정된 유사도에 기초하여 상기 사용자를 인증하는 프로세서를 포함한다.
도 1은 일 실시예에 따라 생성된 부호화 모델을 이용하는 사용자 인증 방법을 설명하기 위한 도면.
도 2는 일 실시예에 따른 부호화 모델을 생성하는 방법을 나타낸 흐름도.
도 3은 일 실시예에 따라 복수의 부분 지문 영상들로부터 복수의 서브 블록들이 그룹화된 복수의 클래스들을 생성하는 방법을 설명하기 위한 도면.
도 4 내지 도 5는 일 실시예에 따라 복수의 지문 영상들로부터 복수의 서브 블록들을 분할하는 방법을 설명하기 위한 도면.
도 6는 일 실시예에 따라 복수의 서브 블록들을 그룹화하여 복수의 클래스들을 생성하는 방법을 설명하기 위한 도면.
도 7은 일 실시예에 따라 동일한 손가락의 지문 영상으로부터 취득한 N X N 서브 블록들을 나타낸 도면.
도 8은 일 실시예에 따라 대용량 지문 데이터베이스를 사용하여 딥 러닝을 위한 학습 데이터베이스를 자동 생성하는 과정을 설명하기 위한 도면.
도 9는 일 실시예에 따른 부호화 모델을 생성하는 데에 이용되는 딥 뉴럴 네트워크의 구조를 나타낸 도면.
도 10은 일 실시예에 따른 지문 영상을 이용한 사용자 인증 방법을 나타낸 흐름도.
도 11은 일 실시예에 따른 이진 코드북을 생성하는 방법을 나타낸 흐름도.
12는 일 실시예에 따라 인증용 부분 지문을 부호화하는 과정을 설명하기 위한 도면.
도 13은 일 실시예에 따라 등록 지문들에 대한 이진 코드북을 생성하는 과정을 설명하기 위한 도면.
도 14는 일 실시예에 따라 하나의 등록 지문 영상을 위치와 각도에 따른 복수의 서브 블록들로 분할하는 방법을 설명하기 위한 도면.
도 15는 일 실시예에 따라 등록 영상들로부터 얻은 서브 블록들에 대하여 부호화 모델을 적용하여 이진 코드북을 생성하는 과정을 설명하기 위한 도면.
도 16은 일 실시예에 따른 인증을 위해 수신한 사용자의 지문 영상을 부호화 모델을 이용하여 부호화하는 과정을 설명하기 위한 도면.
도 17은 일 실시예에 따라 기 등록된 이진 코드북에 포함된 등록 부호들의 집합을 이용하여 사용자를 인증하는 과정을 설명하기 위한 도면.
도 18은 일 실시예에 따른 사용자 인증 장치의 블록도.
본 명세서에 개시되어 있는 특정한 구조적 또는 기능적 설명들은 단지 기술적 개념에 따른 실시예들을 설명하기 위한 목적으로 예시된 것이다. 개시된 실시예들은 다양한 다른 형태로 변경되어 실시될 수 있으며 본 명세서의 범위는 개시된 실시예들에 한정되지 않는다.
제1 또는 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
하기에서 설명될 실시예들은 사용자의 지문 영상을 이용하여 사용자를 인증하는 데 사용될 수 있다. 실시예들은 퍼스널 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 스마트 폰, 텔레비전, 스마트 가전 기기, 지능형 자동차, 키오스크, 웨어러블 장치 등 다양한 형태의 제품으로 구현될 수 있다. 예를 들어, 실시예들은 스마트 폰, 모바일 기기, 스마트 홈 시스템 등에서 사용자를 인증하는데 적용될 수 있다. 실시예들은 사용자 인증을 통한 결제 서비스에 적용될 수 있다. 또한, 실시예들은 사용자를 인증하여 자동으로 시동을 거는 지능형 자동차 시스템 등에도 적용될 수 있다. 이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 일 실시예에 따라 생성된 부호화 모델을 이용하는 사용자 인증 방법을 설명하기 위한 도면이다. 도 1a를 참조하면, 미리 수행되는 오프라인(Offline) 과정에 해당하는 트레이닝 데이터를 이용하여 부호화 모델을 생성하는 과정(110), 및 부호화 모델을 이용하여 등록 지문 영상에 대한 이진 코드북을 생성하는 과정(130)이 도시된다.
일반적으로 부분 지문 영상들의 경우, 손가락의 임의의 위치에서 임의의 각도로 얻어지는 영상들이기 때문에, 얼굴의 눈, 코 등과 같은 정규화(Normalization)를 위한 단일(Singular) 포인트들을 찾기 어렵다. 또한, 하나의 부분 지문 영상 내에 다양한 패턴들이 존재하므로, 동일인의 동일 손가락으로부터 취득한 영상이라고 할지라도 위치와 각도에 따라 부분 영상의 패턴이 모두 달라질 수 있다.
일 실시예에서는 지문과 같은 다양한 패턴을 갖는 영상들에 대한 학습에 적합한 학습용 데이터베이스를 자동으로 구성하고, 학습 기반으로 등록 부분 지문들에 대한 코드북을 생성함으로써 부분 지문에 대한 인식률을 향상시키고, 다양한 센서 크기와 화질로 감지된 지문 영상들에 대하여도 개별적인 튜닝이나 알고리즘 변경 없이 대응할 수 있다.
도 1a에서 부호화 모델을 생성하는 과정(110)은 일 실시예에 따른 부호화 모델 생성 장치(이하, '생성 장치')에 의해 다음과 같이 수행될 수 있다.
생성 장치는 딥 러닝(Deep learning)을 위해 트레이닝 데이터베이스(Train DB)에 포함된 대용량의 부분 지문 영상들을 다양한 위치와 각도에 대한 N x N 서브 블록들(Sub-block)로 분할한다. 생성 장치는 서브 블록들을 딥러닝 학습을 위해 각각 고유한 패턴을 갖는 그룹들로 클러스터링(Clustering)할 수 있다.
생성 장치는 각 그룹들에 고유의 식별자(ID)를 부여하고, 딥 러닝을 통해 각 그룹들에 지문의 고유한 패턴들을 학습시켜서 부호화 모델을 생성할 수 있다. 부호화 모델은 복수의 지문 영상들에 대한 딥 러닝의 학습 결과에 해당할 수 있다. 부호화 모델은 예를 들어, DLVQ(Deep Learning Vector Quantization) 모델일 수 있다. 상술한 과정을 통해 일 실시예에 따른 생성 장치는 다양한 크기와 변화된 패턴을 갖는 부분 지문 영상들에 대하여 학습에 적합한 트레이닝 데이터베이스를 자동으로 구성할 수 있으며, 이를 통해 서브 블록들은 각 그룹 별로 고유한 패턴을 갖도록 자동 분류될 수 있다.
도 1a에 도시된 DLVQ Design은 딥 러닝 과정을 나타내고, DLVQ는 딥 러닝의 학습 결과로서, 서브 블록들이 어느 클래스에 속하는지를 예측 과정(Prediction Process)을 나타낸다. 부호화 모델을 생성하는 과정(110)에 대하여는 도 2 내지 도 9를 참조하여 구체적으로 설명한다.
이진 코드북을 생성하는 과정(130)은 사용자의 지문을 등록하는 과정으로서 일 실시예에 따른 사용자 인증 장치(이하, '인증 장치')에 의해 다음과 같이 수행될 수 있다. 인증 장치는 과정(110)에서 생성된 부호화 모델을 이용하여 학습을 기반으로 사용자의 등록 지문 영상에 대한 이진 코드북을 생성할 수 있다. 등록 지문 영상은 등록 부분 지문 영상을 포함할 수 있다.
사용자가 모바일 단말 등에 다수의 사용자의 부분 지문 영상들을 등록하면, 인증 장치는 등록된 부분 지문 영상들의 서브 블록들을 과정(110)에서 생성된 부호화 모델을 이용하여 부호화할 수 있다. 인증 장치는 등록된 부분 지문들의 서브 블록들을 특징 패턴(Feature Pattern) 별로 부호화(양자화)시키고, 부호화된 숫자들을 사용자 별 또는 손가락 별로 이진 코드북 또는 이진 코드북 모델로 저장할 수 있다. 부호화된 사용자의 등록 지문 영상은 모바일 기기 등에 부호화 값들의 집합인 이진 코드북 또는 이진 코드북 모델의 형태로 저장될 수 있다. 이진 코드북을 생성하는 과정(130)에 대하여는 도 11, 도 13 내지 도 15를 참조하여 구체적으로 설명한다.
도 1b를 참조하면, 사용자의 인증용 지문 영상을 이용하여 사용자를 인증하는 과정(150)이 도시된다. 사용자를 인증하는 과정(150)은 온라인(Online) 과정에 해당할 수 있다.
사용자를 인증하는 과정(150)은 인증을 위해 입력된 사용자의 지문 영상('인증용 지문 영상')을 이용하여 실제 사용자를 인증하는 과정으로서, 일 실시예에 따른 인증 장치에 의해 다음과 같이 수행될 수 있다.
인증용 지문 영상이 수신되면, 인증 장치는 딥 러닝 학습 결과인 부호화 모델(DLVQ)을 사용하여 인증용 지문 영상을 부호화(양자화)할 수 있다. 인증용 지문 영상은 전체 지문 영상 또는 부분 지문 영상을 포함할 수 있다.
인증 장치는 등록 지문들의 정보인 기 등록된 이진 코드북에 포함된 등록 부호들의 집합과 인증용 지문 영상에 대한 부호화 결과 간의 유사성(Similarity)을 판단하여 사용자를 인증할 수 있다. 유사성 판단을 위해 인증 장치는 예를 들어, 베이즈 확률(Bayesian Probability)을 사용할 수 있다. 사용자를 인증하는 과정(150)에 대하여는 도 10, 도 16 내지 도 17을 참조하여 구체적으로 설명한다.
도 2는 일 실시예에 따른 부호화 모델을 생성하는 방법을 나타낸 흐름도이다. 도 2를 참조하면, 일 실시예에 따른 부호화 모델을 생성하는 장치(이하, '생성 장치')는 데이터베이스에 포함된 복수의 지문 영상들을 복수의 서브 블록들로 분할한다(210). 이때, 데이터베이스는 전술한 트레이닝 데이터베이스일 수 있다. 데이터베이스에 포함된 복수의 지문 영상들은 복수의 사용자들의 지문 영상들 및 복수의 사용자들의 복수의 손가락들에 대한 지문 영상들 중 적어도 하나를 포함할 수 있다. 생성 장치는 예를 들어, 데이터베이스에 포함된 복수의 지문 영상들을 크롭핑(cropping)하는 위치와 각도 중 적어도 하나를 변화시켜 복수의 서브 블록들로 분할할 수 있다. 생성 장치가 복수의 지문 영상들을 복수의 서브 블록들로 분할하는 구체적인 방법은 도 4 내지 도 5를 참조하여 설명한다.
생성 장치는 서브 블록들을 그룹화 함으로써, 복수의 클래스들을 생성한다(220). 생성 장치가 복수의 클래스들을 생성하는 방법은 도 3을 참조하여 설명한다.
생성 장치는 복수의 클래스들 각각에 속한 서브 블록들을 해당하는 클래스로 분류하는 부호화 모델을 생성한다(230). 생성 장치는 예를 들어, 서브 블록들 각각의 입력에 반응하여 해당하는 서브 블록이 속한 클래스가 출력되도록, 딥 뉴럴 네트워크(deep neural network)의 파라미터를 학습시켜 부호화 모델을 생성할 수 있다. 일 실시예에서 이용되는 딥 뉴럴 네트워크의 구조는 도 9와 같다.
도 3은 일 실시예에 따라 복수의 부분 지문 영상들로부터 복수의 서브 블록들이 그룹화된 복수의 클래스들을 생성하는 방법을 설명하기 위한 도면이다. 도 3을 참조하면, 학습을 위한 복수의 부분 지문 영상들(305)를 포함하는 대용량 부분 지문 데이터베이스(310)로부터 분할된 복수의 서브 블록들(335)이 도시된다. 복수의 부분 지문들(305)은 임의의 RST(Rotation, Scale, Transition) 성분을 가지는 부분 지문들에 해당한다.
생성 장치는 복수의 서브 블록들(335)을 균일성(uniformity)을 갖는 영상들마다 그룹화 함으로써 복수의 클래스들(330, 350, 370)을 생성할 수 있다. '균일성을 갖는 영상들'은 예를 들어, 영상의 스케일에서 약간 차이가 나거나, 영상이 약간의 이동 또는 회전된 경우라도 그 변화가 동일한 것으로 인식할 수 있을 정도에 해당하는 영상들로 이해될 수 있다.
생성 장치는 서브 블록들 간의 유사도를 산출하고, 유사도에 기초하여, 서브 블록들을 고유한 특징 패턴을 가지는 그룹 별로 클러스터링(clustering)할 수 있다. 생성 장치가 서브 블록들 간의 유사도를 산출하는 방법은 도 6 내지 8을 참조하여 설명한다.
생성 장치는 복수의 클래스들(330, 350, 370) 각각에 대응하여 고유의 식별자를 부여할 수 있다. 예를 들어, 생성 장치는 클래스(330)에는 ID 1을 부여하고, 클래스(350)에는 ID 2를 부여하고, 클래스(370)에는 ID 3을 부여할 수 있다. 고유의 식별자는 하나의 클래스를 식별하는 부호로서, 학습을 위한 인덱스에 해당할 수 있다.
도 4 내지 도 5는 일 실시예에 따라 복수의 지문 영상들로부터 복수의 서브 블록들을 분할하는 방법을 설명하기 위한 도면이다. 도 4를 참조하면, 하나의 부분 지문 영상으로부터 이동(Translation)에 불변하도록 복수의 서브 블록들(410)을 크롭핑하는 과정이 도시된다. 도 5를 참조하면, 하나의 부분 지문 영상으로부터 회전(Rotation)에 불변(Invariant)하도록 복수의 서브 블록들을 크롭핑하는 과정이 도시된다.
하나의 부분 지문 영상은 다양한 이동 및 회전을 갖는 부분 지문 영상이다. 따라서, 일 실시예에 따른 생성 장치는 모든 회전과 이동에 불변하도록 다양한 위치와 방향에 대해 N x N의 서브 블록들을 크롭핑할 수 있다. 일 실시예에서는 자율 학습(Unsupervised learning)을 할 때 클러스터링이 용이하도록 서브 블록들을 N x N의 크기로 크롭핑할 수 있다. 크롭핑된 N x N의 서브 블록들은 트레이닝 데이터베이스 생성을 위한 후보 서브 블록들에 해당할 수 있다.
N은 크롭핑 크기를 나타내고, M은 부분 지문의 가로 방향으로 오버랩(Overlap)을 허용해서 크롭핑하는 서브 블록들의 개수를 나타내고, deg_int는 회전 단위를 나타낸다.
생성 장치는 상술한 바와 같이 데이터베이스에 포함된 복수의 지문 영상들을 크롭핑하는 위치와 각도 중 적어도 하나를 변화시켜 복수의 서브 블록들로 분할할 수 있다.
도 6는 일 실시예에 따라 복수의 서브 블록들을 그룹화하여 복수의 클래스들을 생성하는 방법을 설명하기 위한 도면이다. 도 6을 참조하면, 일 실시예에 따른 서브 블록들 간의 NCC 값을 산출하는 방법을 나타낸 도면(610) 및 서브 블록들 간의 지향 거리(Orientation Distance)를 계산하는 방법을 나타낸 도면(630)이 도시된다.
일 실시예에 따른 생성 장치는 서브 블록들 간의 유사도를 산출할 수 있다.
생성 장치는 예를 들어, 서브 블록들 간의 NCC 값(NCC score) 및 서브 블록들 간의 지배적인 방향(dominant direction)(
Figure 112016110275782-pat00001
)에 기초하여, 서브 블록들 간의 지향 거리를 계산할 수 있다.
생성 장치는 서브 블록들 간의 지향 거리에 기초하여, 서브 블록들 간의 유사도를 산출할 수 있다. 서브 블록들 간의 NCC 값은 지문 영상들 간의 거리를 나타내는 값으로서, 아래의 [수학식 1]을 통해 구할 수 있다. 서브 블록들 간의 지배적인 방향(
Figure 112016110275782-pat00002
)은 아래의 [수학식 2]를 통해 구할 수 있다.
Figure 112016110275782-pat00003
여기서, x는 영상 내 픽셀의 X축(가로축) 좌표를 나타내고, y는 영상 내 픽셀의 Y축(세로축) 좌표를 나타낸다.
Figure 112016110275782-pat00004
는 등록된 지문 영상의 서브 블록들을 의미하고,
Figure 112016110275782-pat00005
는 인증용 지문 영상의 서브 블록들을 의미한다. [수학식 1]에서 ▽x, ▽y = 0 이다.
[수학식 1]을 이용하여 ▽x, ▽y = 0를 갖는 일반적인 Normalized Cross Correlation(NCC) 값을 구할 수 있다.
지문 영상들 사이의 지향 거리(Orientation Distance) 산출을 위해, 일 실시예에 따른 생성 장치는 지문 영상들에 대한 지향 추정(Orientation Estimation)을 수행하여 w x w 서브 블록들에 대한 지배적인 방향(dominant direction)을 산출할 수 있다.
생성 장치는 예를 들어, 아래의 [수학식 2]를 통해 마루(ridge)와 골(valley)로 이루어진 지문 영상에 대한 방향성, 다시 말해 서브 블록들 간의 지배적인 방향을 산출할 수 있다.
Figure 112016110275782-pat00006
여기서, x는 가로축 좌표를 나타내고, y 는 세로축 좌표를 나타내며, w는 평균 서브 블럭들에 대한 한 변의 길이를 나타낸다.
Figure 112016110275782-pat00007
는 w × w 서브 블록들(blocks) 내의 x방향의 local orientation의 추정값을 나타내고,
Figure 112016110275782-pat00008
는 w × w 서브 블록들 내의 y방향의 local orientation를 나타낸다.
Figure 112016110275782-pat00009
는 horizontal gradient operator를 나타내고,
Figure 112016110275782-pat00010
는 vertical gradient operator를 나타낸다.
Figure 112016110275782-pat00011
는 w × w 서브 블록들 내의 local orientation을 나타낸다.
Figure 112016110275782-pat00012
는 I1 이미지에 대한 w × w 서브 블록들에 대한 local orientation를 나타내고,
Figure 112016110275782-pat00013
는 I2 이미지에 대한 w × w 서브 블록들에 대한 local orientation를 나타내다.
o 는 Piecewise orientation difference를 나타낸다.
생성 장치는 아래의 [수학식 3]을 이용하여 산출한 지향 거리를 통해 유사도를 산출하고, 산출된 유사도를 통해 대용량의 부분 지문들로부터 딥 러닝을 위해 각 그룹 별로 고유의 패턴을 갖는 서브 블록들을 클러스터링할 수 있다
Figure 112016110275782-pat00014
I 1 , I 2 는 비교할 두 개의 서브 블록들을 나타낸다. α는 1보다 큰 값이다.
일 실시예에서 지향 거리를 산출하는 데에 [수학식 2]를 통해 서브 블록들 간의 지배적인 방향을 산출하는 이유는 두 서브 블록들 간의 NCC값이 커도 전체적인 지문 패턴은 비슷한 경우가 발생하여 도 7과 같이 심층 신경망이 제대로 학습되지 않게 되는 경우를 방지하기 위한 것이다.
생성 장치는 [수학식 3]을 이용하여 산출한 서브 블록들 간의 지향 거리에 기초하여, 서브 블록들 간의 유사도를 산출할 수 있다. 예를 들어, 산출된 지향 거리가 크다면 서브 블록들 간의 유사도 값은 작아지고, 지향 거리가 작다면 서브 블록들 간의 유사도 값은 커질 수 있다.
생성 장치는 앞서 산출한 유사도에 기초하여, 서브 블록들을 고유한 특징 패턴을 가지는 그룹 별로 클러스터링함으로써 복수의 클래스들을 생성할 수 있다. 생성 장치는 예를 들어, K-mean 클러스터링을 이용하여 서브 블록들을 클러스터링할 수 있다. 생성 장치는 K-mean 클러스터링을 이용하여 서브 블록들을 클러스터링하는 방법은 도 8을 참조하여 설명한다.
도 7은 일 실시예에 따라 동일한 손가락의 지문 영상으로부터 취득한 N X N 서브 블록들을 나타낸 도면이다. 도 7의 왼쪽과 오른쪽에 각각 그룹핑된 서브 블록들은 동일한 손가락의 지문 영상으로부터 취득한 서브 블록들이 서로 큰 NCC 거리를 가지지만, 작은 지향 거리를 가질 수 있음을 나타낸다.
도 8은 일 실시예에 따라 대용량 지문 데이터베이스를 사용하여 딥 러닝을 위한 학습 데이터베이스를 자동 생성하는 과정을 설명하기 위한 도면이다.
도 8을 참조하여, 일 실시예에 따른 생성 장치는 대용량의 부분 지문들(810)로부터 서브 블록들(830)을 생성하고, 서브 블록들(830)에 대해 전술한 [수학식 3]의 지향 거리 및 클러스터링 기법을 사용하여 복수의 클래스들(850)로 그룹화함으로써 딥 러닝을 위한 트레이닝 데이베이스를 자동으로 생성할 수 있다. 생성 장치는 클러스터링이 완료된 각 클래스들(또는 클러스터)(850)에 대하여 트레이닝을 위한 인덱스를 부여할 수 있다.
생성 장치는 복수의 클래스들(850)에서 빈도수가 낮은 특징 블록을 아래의 [수학식 4]와 같이 제거할 수 있다.
Figure 112016110275782-pat00015
nE k 는 k 인덱스 클래스(클러스터)에 있는 엘리먼트들의 개수를 나타낸다.
기억해야 할 특징(Feature)의 종류가 너무 커지면 모델을 학습하는데 시간이 더 오래 걸리고, 빈도수가 낮은 특징들의 경우에는 어떤 상황에서 이런 특징들이 나타나는지에 대한 예시가 별로 없어서 잘 학습하기도 힘들다. 생성 장치는 이러한 경우, 빈도수가 낮은 특징 블록을 제거하여 학습 효율을 향상시킬 수 있다.
클래스들(850)은 서로 간에 큰 클래스 간 거리(inter distance)를 가지고, 클래스 내의 서브 블록들 간에는 작은 내부 거리(intra distance)를 가질 수 있다.
도 9는 일 실시예에 따른 부호화 모델을 생성하는 데에 이용되는 딥 뉴럴 네트워크의 구조를 나타낸 도면이다.
일 실시예에 따른 생성 장치는 도 9에 도시된 것과 같은 5- 레이어의 딥 뉴럴 네트워크의 파라미터를 학습시켜 서브 블록들 각각의 입력에 반응하여 해당하는 서브 블록이 속한 클래스가 출력되도록 부호화 모델을 생성할 수 있다. 도 9의 괄호의 값은 (kernel size, stride, width, height)를 나타낸다.
도 10은 일 실시예에 따른 지문 영상을 이용한 사용자 인증 방법을 나타낸 흐름도이다. 도 10을 참조하면, 일 실시예에 따른 인증 장치는 사용자의 지문 영상을 수신한다(1010). 사용자의 지문 영상은 지문 센서를 통해 획득한 것일 수 있다. 지문 센서는 예를 들어, 커패시턴스(Capacitance) 방식의 지문 센서, 광방식의 지문센서 및 초음파 방식의 지문 센서 등을 포함할 수 있다.
지문 센서는 사용자의 부분 지문만을 취득할 수도 있고, 사용자의 전체 지문을 취득할 수도 있다. 사용자의 지문 영상은 사용자의 전체 지문뿐만 아니라 부분 지문을 포함할 수 있다. 사용자의 지문 영상은 임의의 RST(Rotation, Scale, 및 Transition)를 가질 수 있다.
인증 장치는 지문 영상을 복수의 제1 서브 블록들로 분할한다(1020). 인증 장치는 예를 들어, 지문 영상을 크롭핑하는 위치가 중첩(overlay) 되도록 제1 서브 블록들로 분할할 수 있다. 또는 인증 장치는 지문 영상을 크롭핑하는 위치가 중첩되지 않도록 제1 서브 블록들로 분할할 수 있다. 제1 서브 블록은 실시간 인증을 위해 수신한 사용자의 지문 영상(인증용 지문 영상)으로부터 분할된 서브 블록에 해당할 수 있다. 인증 장치도 생성 장치와 마찬가지로 지문 영상을 크롭핑하는 위치와 각도 중 적어도 하나를 변화시켜 지문 영상을 제1 서브 블록들로 분할할 수 있다.
인증 장치는 부호화 모델을 이용하여 제1 서브 블록들을 부호화함으로써 입력 부호들의 집합(set)을 생성한다(1030). 인증 장치가 부호화 모델을 이용하여 제1 서브 블록들을 부호화하는 방법은 도 12를 참조하여 설명한다. 부호화 모델은 서브 블록들 각각의 입력에 반응하여 해당하는 서브 블록이 속한 클래스가 출력되도록, 딥 뉴럴 네트워크의 파라미터를 학습시킴으로써 생성될 수 있다.
인증 장치는 제1 서브 블록들을, 크롭핑된 위치에 기초하여 서로 구별되는 복수의 클래스들 중 어느 하나의 클래스로 분류할 수 있다. 인증 장치는 분류된 클래스에 따라 부호화된 제1 서브 블록들에 의해 입력부호들의 집합을 생성할 수 있다.
인증 장치는 입력 부호들의 집합과 기 등록된 이진 코드북(binary codebook)에 포함된 등록 부호들의 집합 간의 유사도를 측정한다(1040). 이진 코드북은 사용자의 지문을 등록하는 과정에서 미리 생성되어 등록된 것으로서, 인증 장치가 이진 코드북을 생성하는 방법은 도 11을 참조하여 설명한다. 인증 장치는 입력 부호들의 집합이 이진 코드북에 포함된 등록 부호들의 집합에 매칭되는지 여부에 기초하여 유사도를 측정할 수 있다.
인증 장치는 단계(1040)에서 측정된 유사도에 기초하여, 사용자를 인증한다(1050). 인증 장치가 유사도를 측정하는 방법 및 사용자를 인증하는 방법은 도 17을 참조하여 설명한다.
도 11은 일 실시예에 따른 이진 코드북을 생성하는 방법을 나타낸 흐름도이다. 도 11을 참조하면, 일 실시예에 따른 인증 장치는 사용자의 복수의 등록 지문 영상들을 수신할 수 있다(1110).
인증 장치는 부호화 모델 및 복수의 등록 지문 영상들에 기초하여 이진 코드북을 생성할 수 있다(1120). 인증 장치는 이진 코드북을 사용자에 대응하여 저장할 수 있다. 인증 장치는 사용자의 전체 손가락들에 대한 지문 영상들을 모두 등록 지문 영상들로 추가하더라도 실제 등록 지문 영상들이 아닌 이진 코드북만이 인식 장치에 저장되므로 손가락 영상들의 추가로 인한 메모리 사용량의 증가는 크지 않다.
인증 장치가 부호화 모델을 사용하여 하나의 등록 지문 영상에 대응한 이진 코드북을 생성하는 과정은 도 13을 참조하여 설명한다.
도 12는 일 실시예에 따라 인증용 부분 지문을 부호화하는 과정을 설명하기 위한 도면이다. 도 12를 참조하면, 일 실시예에 따른 부호화 모델(1230)을 사용하여 하나의 부분 지문(1210)을 부호화하는 과정이 도시된다.
인증 장치는 하나의 부분 지문(1210)을 크롭핑하는 위치를 변화시켜 N x N 서브 블록들(1220)로 크롭핑할 수 있다. 인증 장치는 서브 블록들(1220)을 부호화 모델(Φ)(1230)을 통해 부호화할 수 있다. 부호화 모델(Φ)(1230)은 대용량 지문 영상들에 의해 학습된 결과인 DLVQ 모델일 수 있다.
인증 장치는 상술한 방식으로 부호화 모델(1230)을 이용하여 제1 서브 블록들을 부호화함으로써 입력 부호들의 집합을 생성할 수 있다.
도 13은 일 실시예에 따라 등록 지문들에 대한 이진 코드북을 생성하는 과정을 설명하기 위한 도면이다. 도 13을 참조하면, 등록 지문들(Enroll Images)(1310)에 대응하여 생성된 이진 코드북(1350)이 도시된다.
일 실시예에 따른 인증 장치는 사용자의 복수의 등록 지문 영상들(1310)이 수신되면, 복수의 등록 지문 영상들 각각에 대응하여, 등록 지문 영상을 복수의 제2 서브 블록들(1320)로 분할할 수 있다. '제2 서브 블록'은 등록을 위한 사용자의 지문 영상으로부터 분할된 서브 블록에 해당할 수 있다. 이때, 인증 장치는 등록 지문 영상을 크롭핑하는 위치와 각도 중 적어도 하나를 변화시켜 복수의 제2 서브 블록들로 분할할 수 있다.
인증 장치는 복수의 등록 지문 영상들 각각에 대응하여, 부호화 모델(1330)을 이용하여 제2 서브 블록들(1320)을 부호화함으로써 등록 부호들(1340)의 집합을 포함하도록 이진 코드북(1350)을 생성 및/또는 갱신할 수 있다.
일 실시예에서는 복수의 등록 지문 영상들 각각을 대신하여, 복수의 등록 지문 영상들 각각에 대응하는 이진 코드북을 저장함으로써 등록 지문 영상을 저장하기 위한 메모리 용량을 감소시킬 수 있다. 뿐만 아니라, 등록 지문 영상을 직접 저장하지 않고, 이진 코드북을 저장함으로써 해킹 등에 의한 사용자의 지문 정보 노출을 차단할 수 있다.
도 14는 일 실시예에 따라 하나의 등록 지문 영상을 위치와 각도에 따른 복수의 서브 블록들로 분할하는 방법을 설명하기 위한 도면이다. 도 4 내지 도 5를 통해 전술한 바와 같이, 일 실시예에 따른 인증 장치는 생성 장치와 마찬가지로, 등록 지문 영상을 이동(Translation) 및 회전(Rotation)에 불변(Invariant)하도록 복수의 서브 블록들로 크롭핑할 수 있다.
N은 크롭핑 크기를 나타내고, M은 부분 지문의 가로 방향으로 오버랩(Overlap)을 허용해서 크롭핑하는 서브 블록들의 개수를 나타내고, deg_int는 회전 단위를 나타낸다.
도 15는 일 실시예에 따라 등록 영상들로부터 얻은 서브 블록들에 대하여 부호화 모델을 적용하여 이진 코드북을 생성하는 과정을 설명하기 위한 도면이다. 도 15를 참조하면, 등록 ID # 에 해당하는 부분 등록 지문 영상들(1510)에 대응하여 생성된 등록 부호들의 집합을 포함하는 이진 코드북(1540)이 도시된다.
인증 장치는 복수의 등록 지문 영상들(1510) 각각에 대응하여, 등록 지문 영상을 복수의 제2 서브 블록들(1520)로 분할할 수 있다. 인증 장치는 부호화 모델(1530)을 이용하여 제2 서브 블록들(1520)을 부호화함으로써 등록 부호들의 집합("00101001010101 .. ")을 포함하도록 이진 코드북(1540)을 갱신할 수 있다. 이때, 이진 코드북(1540)은 등록 ID # 에 해당하는 부분 등록 지문 영상들(1510)에 대응하는 이진 코드북일 수 있다.
도 16은 일 실시예에 따른 인증을 위해 수신한 사용자의 지문 영상을 부호화 모델을 이용하여 부호화하는 과정을 설명하기 위한 도면이다. 도 16을 참조하면, 인증을 위한 사용자의 지문 영상('인증용 지문 영상')(1610)으로부터 부호화된 입력 부호들의 집합(1640)이 도시된다.
인증 장치는 부분 지문 영상(1610)을 복수의 제1 서브 블록들(1620)로 분할할 수 있다. 인증 장치는 부호화 모델(1630)을 이용하여 제1 서브 블록들(1620)을 부호화함으로써 입력 부호들의 집합("1010001")(1640)을 생성할 수 있다. 이때, 인증 장치는 제1 서브 블록들(1620)을, 크롭핑된 위치에 기초하여 서로 구별되는 복수의 클래스들 중 어느 하나의 클래스로 분류하고, 분류된 클래스에 따라 부호화된 제1 서브 블록들에 의해 입력 부호들의 집합(1640)을 생성할 수 있다.
도 17은 일 실시예에 따라 기 등록된 이진 코드북에 포함된 등록 부호들의 집합을 이용하여 사용자를 인증하는 과정을 설명하기 위한 도면이다. 도 17을 참조하면, 일 실시예에 따른 인증 장치는 기 등록된 이진 코드북(1710)에 포함된 등록 부호들의 집합(1715)과 입력 부호들의 집합(1725) 간의 유사도에 의해 사용자를 인정하는 과정이 도시된다.
인증 장치는 기 등록된 이진 코드북(1710)의 비트들(1725) ("00101001010101")과 입력 부호들의 집합에 대응하는 이진 코드북의 비트들(1725)("1010001")을 비트와이즈 앤드(bitwise AND) 연산할 수 있다. 인증 장치는 비트와이즈 앤드 연산 결과를 합산(1730)할 수 있다. 인증 장치는 합산된 결과와 미리 설정된 임계치를 비교한 결과에 기초하여, 유사도를 정할 수 있다. 인증 장치는 유사도에 기초하여, 사용자를 인증할 수 있다.
인증 장치는 예를 들어, 베이즈 확률(Bayesian Probability)을 이용하여 부호화된 지문 영상과 이진 코드북 간의 유사도 점수를 산출하고, 유사도 점수를 이용하여 유사도를 측정할 수 있다. 베이즈 확률은 확률을 '지식 또는 믿음의 정도를 나타내는 양'으로 해석하는 확률론이다. 확률을 발생 빈도(frequency)나 어떤 시스템의 물리적 속성으로 여기는 것과는 다른 해석이다. 어떤 가설의 확률을 평가하기 위해서 사전 확률을 먼저 밝히고 새로운 관련 데이터에 의한 새로운 확률값을 변경한다. 베이즈 정리는 이러한 확률의 계산에 있어 필요한 절차와 공식의 표준을 제시하고 있다.
인증 장치는 등록 지문들에 대한 이진 코드북(1710)이 만들어지면, 아래의 [수학식 5]를 통해 인증용 부분 지문(1720)에 대해 등록 지문들과의 부호화 값들의 비교를 통해 베이즈 확률에 기반한 유사도 점수(Similarity Score)를 산출할 수 있다. [수학식 5]는 임의의 입력되는 부분 지문(I fp )이 등록 ID(i) 일 확률을 나타낸다.
Figure 112016110275782-pat00016
Figure 112016110275782-pat00017
는 부분 입력 지문을 나타내고,
Figure 112016110275782-pat00018
는 User ID(i)에 대한 히스토그램 모델을 나타낸다.
Figure 112016110275782-pat00019
는 는 N X N 서브 블록 크기의 지문 영상을 나타내고,
Figure 112016110275782-pat00020
는 하나의 지문 영상을 구성하는 서브 블록들의 개수를 나타낸다.
인증 장치는 아래의 [수학식 6]을 이용하여 식별(Identification)을 위한 베이즈 확률을 계산할 수 있다.
Figure 112016110275782-pat00021
여기서, N은 등록 ID의 개수를 나타내고,
Figure 112016110275782-pat00022
는 i 번째 등록 ID에 대한 모델을 나타낸다.
아래의 [수학식 7]은 우도 비 테스트(Likelihood-ratio test)를 나타내고, 인증 장치는 아래의 [수학식 7]을 이용하여 검증(Verification)을 위한 베이즈 확률을 얻을 수 있다.
Figure 112016110275782-pat00023
여기서,
Figure 112016110275782-pat00024
는 i 번째 등록 ID에 대한 모델을 나타내고,
Figure 112016110275782-pat00025
는 오프라인에서 학습을 위한 대용량 데이터베이스를 이용하여 생성된 모델을 나타낸다.
도 18은 일 실시예에 따른 사용자 인증 장치의 블록도이다. 도 18을 참조하면, 일 실시예에 따른 사용자 인증 장치(이하, 인증 장치)(1800)는 통신 인터페이스(1810), 프로세서(1830) 및 메모리(1850)를 포함한다. 통신 인터페이스(1810), 프로세서(1830) 및 메모리(1850)는 버스(1805)를 통하여 서로 통신할 수 있다.
통신 인터페이스(1810)는 사용자의 지문 영상을 수신한다. 사용자의 지문 영상은 별도의 비전 센서 또는 카메라 등을 통해 촬영된 것일 수도 있고, 인증 장치(1800)에 구비된 비전 센서 또는 카메라 등을 통해 촬영된 것일 수도 있다.
프로세서(1830)는 지문 영상을 복수의 제1 서브 블록들로 분할하고, 메모리(1850)에 저장된 부호화 모델을 이용하여 제1 서브 블록들을 부호화함으로써 입력 부호들의 집합을 생성한다. 프로세서(1830)는 입력 부호들의 집합과 기 등록된 이진 코드북(binary codebook)에 포함된 등록 부호들의 집합 간에 측정된 유사도에 기초하여 사용자를 인증한다.
이 밖에도, 프로세서(1830)는 도 1 내지 도 17을 통하여 전술한 적어도 하나의 방법을 수행할 수 있다. 프로세서(1830)는 프로그램을 실행하고, 인증 장치를 제어할 수 있다. 프로세서(1830)에 의하여 실행되는 프로그램 코드는 메모리(1850)에 저장될 수 있다. 인증 장치는 입출력 장치(도면 미 표시)를 통하여 외부 장치(예를 들어, 퍼스널 컴퓨터 또는 네트워크)에 연결되고, 데이터를 교환할 수 있다.
메모리(1850)는 부호화 모델을 저장한다.
메모리(1850)는 기 등록 영상들을 포함하는 등록 데이터베이스를 저장한다. 메모리(1850)는 휘발성 메모리 또는 비 휘발성 메모리일 수 있다.
인증 장치(1800)는 소프트웨어 모듈로 구현되어 적어도 하나의 프로세서에 의하여 구동될 수 있다. 소프트웨어 모듈은 프로세서와 연결된 메모리에 프로그램 형태로 기록될 수 있다. 또는, 인증 장치(1800)는 하드웨어 모듈로 구현될 수 있다. 또는, 인증 장치(1800)는 소프트웨어 모듈 및 하드웨어 모듈의 조합으로 구현될 수도 있다. 이 경우, 소프트웨어 모듈로 구현된 기능은 프로세서에 의하여 수행되고, 하드웨어 모듈로 구현된 기능은 해당 하드웨어에 의하여 수행될 수 있다. 프로세서와 하드웨어는 입출력 버스 등을 통하여 서로 신호를 주고 받을 수 있다.
인증 장치(1800)는 이동 전화, 스마트 폰, PDA, 태블릿 컴퓨터, 랩톱 컴퓨터 등 모바일 장치, 퍼스널 컴퓨터, 태블릿 컴퓨터, 넷북 등 컴퓨팅 장치, 또는 텔레비전, 스마트 텔레비전, 게이트 제어를 위한 보안 장치 등 전자 제품 및 자율 주행 자동차 등 다양한 전자 시스템들을 포함할 수 있다. 또한, 인증 장치(1800)는 지문 인증 기능이 있는 스마트폰, 스마트 카드 등의 개인용 임베디드 단말기들에서 지문 인증을 하는 데에 사용될 수 있다.
도면에 도시하지 않았지만, 일 실시예에 따른 부호화 모델 생성 장치('생성 장치')는 프로세서 및 메모리를 포함할 수 있다. 프로세서는 데이터베이스에 포함된 복수의 지문 영상들을 복수의 서브 블록들로 분할하고, 서브 블록들을 그룹화 함으로써, 복수의 클래스들을 생성한다. 프로세서는 복수의 클래스들 각각에 속한 서브 블록들을 해당하는 클래스로 분류하는 부호화 모델을 생성한다.
메모리는 부호화 모델을 저장할 수 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.

Claims (22)

  1. 사용자의 지문 영상을 수신하는 단계;
    상기 지문 영상을 복수의 제1 서브 블록들로 분할하는 단계;
    부호화 모델을 이용하여 상기 제1 서브 블록들을 부호화함으로써 입력 부호들의 집합(set)을 생성하는 단계;
    상기 입력 부호들의 집합과 기 등록된 이진 코드북(binary codebook)에 포함된 등록 부호들의 집합 간의 유사도를 측정하는 단계; 및
    상기 유사도에 기초하여, 상기 사용자를 인증하는 단계
    를 포함하고,
    상기 이진 코드북은
    복수의 등록 지문 영상들 각각에 대응하여,
    상기 등록 지문 영상들 각각을 크롭핑하는 위치와 각도 중 적어도 하나를 변화시키고, 상기 변화된 위치와 각도 중 적어도 하나에 따라 상기 등록 지문 영상들 각각을 상기 제1 서브 블록들과 상이한 복수의 제2 서브 블록들로 분할하며, 상기 부호화 모델을 이용하여 상기 제2 서브 블록들을 부호화 하여 상기 등록 부호들의 집합을 포함하도록 상기 이진 코드북을 갱신함으로써 생성되는, 지문 영상을 이용한 사용자 인증 방법.
  2. 제1항에 있어서,
    상기 제1 서브 블록들로 분할하는 단계는
    상기 지문 영상을 크롭핑(cropping)하는 위치가 중첩(overlay) 되도록 상기 제1 서브 블록들로 분할하는 단계; 및
    상기 지문 영상을 상기 크롭핑하는 위치가 중첩되지 않도록 상기 제1 서브 블록들로 분할하는 단계
    중 어느 하나를 포함하는, 지문 영상을 이용한 사용자 인증 방법.
  3. 제1항에 있어서,
    상기 제1 서브 블록들로 분할하는 단계는
    상기 지문 영상을 상기 크롭핑하는 위치를 변화시켜 상기 제1 서브 블록들로 분할하는 단계
    를 포함하는, 지문 영상을 이용한 사용자 인증 방법.
  4. 제1항에 있어서,
    상기 입력 부호들의 집합을 생성하는 단계는
    상기 제1 서브 블록들을, 상기 크롭핑된 위치에 기초하여 서로 구별되는 복수의 클래스들 중 어느 하나의 클래스로 분류하는 단계; 및
    상기 분류된 클래스에 따라 부호화된 제1 서브 블록들에 의해 상기 입력부호들의 집합을 생성하는 단계
    를 포함하는, 지문 영상을 이용한 사용자 인증 방법.
  5. 제1항에 있어서,
    상기 부호화 모델은
    상기 서브 블록들 각각의 입력에 반응하여 해당하는 서브 블록이 속한 클래스가 출력되도록, 딥 뉴럴 네트워크(deep neural network)의 파라미터를 학습시킴으로써 생성되는, 지문 영상을 이용한 사용자 인증 방법.
  6. 제1항에 있어서,
    상기 지문 영상은
    상기 사용자의 부분 지문을 포함하는, 지문 영상을 이용한 사용자 인증 방법.
  7. 제1항에 있어서,
    상기 유사도를 측정하는 단계는
    상기 입력 부호들의 집합이 상기 등록 부호들의 집합에 매칭되는지 여부에 기초하여 상기 유사도를 측정하는 단계
    를 포함하는, 지문 영상을 이용한 사용자 인증 방법.
  8. 제1항에 있어서,
    상기 유사도를 측정하는 단계는
    상기 기 등록된 이진 코드북의 비트들과 상기 입력 부호들의 집합에 대응하는 이진 코드북의 비트들을 비트와이즈 앤드(bitwise AND) 연산하는 단계;
    상기 비트와이즈 앤드 연산 결과를 합산하는 단계;
    상기 합산된 결과와 미리 설정된 임계치를 비교하는 단계; 및
    상기 비교 결과에 기초하여, 상기 유사도를 측정하는 단계
    를 포함하는, 지문 영상을 이용한 사용자 인증 방법.
  9. 제1항에 있어서,
    상기 유사도를 측정하는 단계는
    베이즈 확률(Bayesian Probability)을 이용하여 상기 부호화된 지문 영상과 상기 이진 코드북 모델 간의 유사도 점수를 산출하는 단계; 및
    상기 유사도 점수를 이용하여 상기 유사도를 측정하는 단계
    를 포함하는, 지문 영상을 이용한 사용자 인증 방법.
  10. 제1항에 있어서,
    상기 사용자의 상기 복수의 등록 지문 영상들을 수신하는 단계; 및
    상기 부호화 모델 및 상기 복수의 등록 지문 영상들에 기초하여 상기 이진 코드북을 생성하는 단계
    를 더 포함하는, 지문 영상을 이용한 사용자 인증 방법.
  11. 삭제
  12. 삭제
  13. 제1항에 있어서,
    상기 이진 코드북을 상기 사용자에 대응하여 저장하는 단계
    를 더 포함하는, 지문 영상을 이용한 사용자 인증 방법.
  14. 데이터베이스에 포함된 복수의 지문 영상들을 딥러닝을 통한 학습과 평가에 용이하도록 N×N 크기의 복수의 서브 블록들로 분할하는 단계;
    상기 서브 블록들을 그룹화 함으로써, 복수의 클래스들을 생성하는 단계; 및
    상기 복수의 클래스들 각각에 속한 서브 블록들을 해당하는 클래스로 분류하는 부호화 모델을 생성하는 단계
    를 포함하고,
    상기 부호화 모델은
    각 특징 패턴에 대응하는 등록 지문 영상들의 서브 블록을 인코딩하고,
    상기 인코딩에 의해 획득된, 등록된 이진 코드의 집합을 각 사용자 또는 각 손가락에 대응하여 이진 코드북에 저장하며,
    상기 이진 코드북은
    상기 등록 지문 영상들 각각을 크롭핑하는 위치와 각도 중 적어도 하나를 변화시키고, 상기 변화된 위치와 각도 중 적어도 하나에 따라 상기 등록 지문 영상들 각각을 사용자의 입력 지문 영상을 분할한 제1 서브 블록들과 상이한 복수의 제2 서브 블록들로 분할하며, 상기 부호화 모델을 이용하여 상기 제2 서브 블록들을 부호화 하여 등록 부호들의 집합을 포함하도록 상기 이진 코드북을 갱신함으로써 생성되는, 부호화 모델 생성 방법.
  15. 제14항에 있어서,
    상기 복수의 서브 블록들로 분할하는 단계는
    상기 데이터베이스에 포함된 복수의 지문 영상들을 크롭핑하는 위치와 각도 중 적어도 하나를 변화시켜 상기 복수의 서브 블록들로 분할하는 단계
    를 포함하는, 부호화 모델 생성 방법.
  16. 제14항에 있어서,
    상기 복수의 지문 영상들을
    복수의 사용자들의 지문 영상들 및 상기 복수의 사용자들의 복수의 손가락들에 대한 지문 영상들 중 적어도 하나를 포함하는, 부호화 모델 생성 방법.
  17. 제14항에 있어서,
    상기 서브 블록들을 그룹화 함으로써, 복수의 클래스들을 생성하는 단계는
    상기 서브 블록들 간의 유사도를 산출하는 단계; 및
    상기 유사도에 기초하여, 상기 서브 블록들을 고유한 특징 패턴을 가지는 그룹 별로 클러스터링(clustering)하는 단계
    를 포함하는, 부호화 모델 생성 방법.
  18. 제17항에 있어서,
    상기 서브 블록들 간의 유사도를 산출하는 단계는
    상기 서브 블록들 간의 NCC 값 및 상기 서브 블록들 간의 지배적인 방향(dominant direction)에 기초하여, 상기 서브 블록들 간의 지향 거리(Orientation Distance)를 계산하는 단계; 및
    상기 서브 블록들 간의 지향 거리에 기초하여, 상기 서브 블록들 간의 유사도를 산출하는 단계
    를 포함하는, 부호화 모델 생성 방법.
  19. 제17항에 있어서,
    상기 복수의 클래스들 각각에 대응하여 고유의 식별자를 부여하는 단계
    를 더 포함하는, 부호화 모델 생성 방법.
  20. 제14항에 있어서,
    상기 부호화 모델을 생성하는 단계는
    상기 서브 블록들 각각의 입력에 반응하여 해당하는 서브 블록이 속한 클래스가 출력되도록, 딥 뉴럴 네트워크(deep neural network)의 파라미터를 학습시켜 상기 부호화 모델을 생성하는 단계
    를 포함하는, 부호화 모델 생성 방법.
  21. 하드웨어와 결합되어 제1항 내지 제10항, 제13항 내지 제20항 중 어느 하나의 항의 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램.
  22. 사용자의 지문 영상을 수신하는 통신 인터페이스;
    부호화 모델을 저장하는 메모리; 및
    상기 지문 영상을 복수의 제1 서브 블록들로 분할하고, 상기 부호화 모델을 이용하여 상기 제1 서브 블록들을 부호화함으로써 입력 부호들의 집합(set)을 생성하며, 상기 입력 부호들의 집합과 기 등록된 이진 코드북(binary codebook)에 포함된 등록 부호들의 집합 간에 측정된 유사도에 기초하여 상기 사용자를 인증하는 프로세서
    를 포함하고,
    상기 이진 코드북은
    복수의 등록 지문 영상들 각각에 대응하여,
    상기 등록 지문 영상들 각각을 크롭핑하는 위치와 각도 중 적어도 하나를 변화시키고, 상기 변화된 위치와 각도 중 적어도 하나에 따라 상기 등록 지문 영상들 각각을 상기 제1 서브 블록들과 상이한 복수의 제2 서브 블록들로 분할하며, 상기 부호화 모델을 이용하여 상기 제2 서브 블록들을 부호화 하여 상기 등록 부호들의 집합을 포함하도록 상기 이진 코드북을 갱신함으로써 생성되는, 사용자 인증 장치.
KR1020160150024A 2016-11-11 2016-11-11 지문 영상을 이용한 사용자 인증 방법 및 사용자 인증을 위한 부호화 모델 생성 방법 KR102359556B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020160150024A KR102359556B1 (ko) 2016-11-11 2016-11-11 지문 영상을 이용한 사용자 인증 방법 및 사용자 인증을 위한 부호화 모델 생성 방법
US15/654,023 US10691909B2 (en) 2016-11-11 2017-07-19 User authentication method using fingerprint image and method of generating coded model for user authentication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160150024A KR102359556B1 (ko) 2016-11-11 2016-11-11 지문 영상을 이용한 사용자 인증 방법 및 사용자 인증을 위한 부호화 모델 생성 방법

Publications (2)

Publication Number Publication Date
KR20180052900A KR20180052900A (ko) 2018-05-21
KR102359556B1 true KR102359556B1 (ko) 2022-02-08

Family

ID=62107923

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160150024A KR102359556B1 (ko) 2016-11-11 2016-11-11 지문 영상을 이용한 사용자 인증 방법 및 사용자 인증을 위한 부호화 모델 생성 방법

Country Status (2)

Country Link
US (1) US10691909B2 (ko)
KR (1) KR102359556B1 (ko)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108427872A (zh) * 2017-02-14 2018-08-21 三星电子株式会社 具有指纹识别传感器的存储装置及其操作方法
USD889477S1 (en) 2018-03-06 2020-07-07 Google Llc Display screen or a portion thereof with an animated graphical interface
USD858556S1 (en) 2018-05-07 2019-09-03 Google Llc Display screen or portion thereof with an animated graphical interface
USD894952S1 (en) 2018-05-07 2020-09-01 Google Llc Display screen or portion thereof with an animated graphical interface
USD858555S1 (en) 2018-05-07 2019-09-03 Google Llc Display screen or portion thereof with an animated graphical interface
USD859450S1 (en) 2018-05-07 2019-09-10 Google Llc Display screen or portion thereof with an animated graphical interface
USD894951S1 (en) 2018-05-07 2020-09-01 Google Llc Display screen or portion thereof with an animated graphical interface
CN109344276B (zh) * 2018-08-27 2021-01-05 广州企图腾科技有限公司 一种图像指纹生成方法、图像相似度比较方法及存储介质
FR3085775B1 (fr) * 2018-09-06 2020-10-09 Idemia Identity & Security France Procede d'extraction de caracteristiques d'une empreinte digitale representee par une image d'entree
DE112019004977T5 (de) 2018-10-05 2021-08-12 Google Llc Herunterskalierte Aufnahmevorschau für eine Panoramaaufnahmen-Benutzeroberfläche
KR102159797B1 (ko) * 2018-12-13 2020-09-23 광운대학교 산학합력단 사용자 인증 장치 및 방법
KR102562320B1 (ko) 2018-12-24 2023-08-01 삼성전자주식회사 비트 연산 기반의 뉴럴 네트워크 처리 방법 및 장치
KR102060563B1 (ko) * 2018-12-31 2020-02-11 호서대학교 산학협력단 음성 및 안면 데이터를 이용한 인증 제공 방법 및 장치
WO2020159481A1 (en) 2019-01-29 2020-08-06 Google Llc Adaptive connection management for marginal network conditions
USD921001S1 (en) 2019-05-06 2021-06-01 Google Llc Display screen or portion thereof with an animated graphical user interface
USD921647S1 (en) 2019-05-06 2021-06-08 Google Llc Display screen or portion thereof with an animated graphical user interface
USD921002S1 (en) 2019-05-06 2021-06-01 Google Llc Display screen with animated graphical interface
USD921000S1 (en) 2019-05-06 2021-06-01 Google Llc Display screen or portion thereof with an animated graphical user interface
CN110263578B (zh) * 2019-06-26 2022-06-24 湖南科技学院 一种基于云计算的身份验证***
US11109299B2 (en) 2019-12-12 2021-08-31 Google Llc Adaptive public land mobile network management for varying network conditions
US10735963B1 (en) * 2020-03-05 2020-08-04 The United States Of America As Represented By The Secretary Of The Army Wireless communication method for secure side-channel signaling and authentication at the physical layer
CN113591514B (zh) * 2020-04-30 2024-03-29 杭州海康威视数字技术股份有限公司 指纹活体检测方法、设备及存储介质
CN114787801A (zh) * 2020-10-29 2022-07-22 指纹卡安娜卡敦知识产权有限公司 用于启用智能卡的指纹认证的方法
CN114550224A (zh) * 2022-01-17 2022-05-27 北京海鑫科金高科技股份有限公司 基于深度学习的指纹图像识别比对方法、装置和电子设备
WO2023195786A1 (ko) * 2022-04-07 2023-10-12 대한민국(농촌진흥청장) 형광 실크 정보 코드 인식 방법 및 이를 이용한 장치
US11995811B1 (en) * 2023-05-03 2024-05-28 Strategic Coach Method and apparatus for determining a growth factor

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5239590A (en) * 1990-08-07 1993-08-24 Yozan, Inc. Fingerprint verification method
JP2010049379A (ja) * 2008-08-20 2010-03-04 Fujitsu Ltd 指紋画像取得装置、指紋認証装置、指紋画像取得方法及び指紋認証方法
JP2010092413A (ja) * 2008-10-10 2010-04-22 Ricoh Co Ltd 画像分類学習装置、画像分類学習方法、および画像分類学習システム
JP2010191728A (ja) 2009-02-18 2010-09-02 Hajime Nakamura 認証機能付自動接続制御を行うウェブ・ブラウザ端末装置

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100374695B1 (ko) * 2000-07-10 2003-03-03 주식회사 디토정보기술 직접 융선 추출을 이용한 자동 지문 인식 시스템
JP4405656B2 (ja) 2000-10-20 2010-01-27 富士通株式会社 指紋情報を用いた個人認証システム及び同システム用登録・認証方法
JP4623920B2 (ja) 2002-07-09 2011-02-02 ソニー株式会社 類似度算出方法及び装置、並びにプログラム及び記録媒体
US7616787B2 (en) 2003-10-01 2009-11-10 Authentec, Inc. Methods for finger biometric processing and associated finger biometric sensors
KR100572768B1 (ko) 2004-06-02 2006-04-24 김상훈 디지탈 영상 보안을 위한 사람 얼굴 객체 자동검출 방법
KR100622245B1 (ko) 2004-06-04 2006-09-08 주식회사 팬택 이동 통신 단말기에서 지문 인증 장치 및 방법
KR100752640B1 (ko) 2005-01-05 2007-08-29 삼성전자주식회사 방향성 기울기 필터를 이용한 지문 영역 분할 장치 및 방법
JP4616677B2 (ja) 2005-03-25 2011-01-19 株式会社日立製作所 生体情報による暗号鍵生成および生体情報による個人認証システム
KR101961052B1 (ko) 2007-09-24 2019-03-21 애플 인크. 전자 장치 내의 내장형 인증 시스템들
JP5134655B2 (ja) 2010-07-16 2013-01-30 株式会社日立製作所 個人認証システム、個人認証装置、及び血管画像撮影装置
US8692667B2 (en) 2011-01-19 2014-04-08 Qualcomm Incorporated Methods and apparatus for distributed learning of parameters of a fingerprint prediction map model
US20120184219A1 (en) 2011-01-19 2012-07-19 Qualcomm Incorporated Method and apparatus for learning of the parameters of a fingerprint prediction map model
KR101432011B1 (ko) 2013-03-22 2014-08-21 주식회사 슈프리마 지문 영상 처리 장치 및 방법
US9036876B2 (en) 2013-05-01 2015-05-19 Mitsubishi Electric Research Laboratories, Inc. Method and system for authenticating biometric data
JP6167733B2 (ja) * 2013-07-30 2017-07-26 富士通株式会社 生体特徴ベクトル抽出装置、生体特徴ベクトル抽出方法、および生体特徴ベクトル抽出プログラム
KR101515926B1 (ko) 2013-10-08 2015-05-04 재단법인대구경북과학기술원 객체 검출방법 및 이를 이용한 검출장치
KR101632912B1 (ko) * 2014-09-26 2016-06-24 창신정보통신(주) 지문 인식을 이용한 사용자 인증 방법
US9690972B1 (en) * 2015-01-08 2017-06-27 Lam Ko Chau Method and apparatus for fingerprint encoding, identification and authentication
US9530042B1 (en) * 2016-06-13 2016-12-27 King Saud University Method for fingerprint classification

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5239590A (en) * 1990-08-07 1993-08-24 Yozan, Inc. Fingerprint verification method
JP2010049379A (ja) * 2008-08-20 2010-03-04 Fujitsu Ltd 指紋画像取得装置、指紋認証装置、指紋画像取得方法及び指紋認証方法
JP2010092413A (ja) * 2008-10-10 2010-04-22 Ricoh Co Ltd 画像分類学習装置、画像分類学習方法、および画像分類学習システム
JP2010191728A (ja) 2009-02-18 2010-09-02 Hajime Nakamura 認証機能付自動接続制御を行うウェブ・ブラウザ端末装置

Also Published As

Publication number Publication date
US20180137329A1 (en) 2018-05-17
US10691909B2 (en) 2020-06-23
KR20180052900A (ko) 2018-05-21

Similar Documents

Publication Publication Date Title
KR102359556B1 (ko) 지문 영상을 이용한 사용자 인증 방법 및 사용자 인증을 위한 부호화 모델 생성 방법
KR102439938B1 (ko) 사용자 인증을 위한 멀티-모달 퓨전 방법 및 사용자 인증 방법
KR102608470B1 (ko) 데이터 인식 장치 및 방법과 트레이닝 장치 및 방법
US10853617B2 (en) Method, apparatus, and system for recognizing fingerprint
US9922237B2 (en) Face authentication system
KR102434562B1 (ko) 위조 지문 검출 방법 및 장치, 지문 인식 방법 및 장치
CN106295496B (zh) 脸部识别方法和设备
KR101997479B1 (ko) 사용자 인증을 위한 생체 영역을 검출하는 방법 및 장치
US20100080425A1 (en) Minutiae-based template synthesis and matching
KR102476756B1 (ko) 사용자 인증을 위한 등록 데이터베이스의 적응적 갱신 방법 및 장치
KR20170046448A (ko) 복합 인증 장치 및 방법
KR102427853B1 (ko) 사용자 인증을 위한 등록 데이터베이스의 적응적 갱신 방법 및 장치
CN113614731A (zh) 使用软生物特征的认证验证
KR20220076398A (ko) Ar장치를 위한 객체 인식 처리 장치 및 방법
KR102558736B1 (ko) 지문 인식 방법 및 장치
KR102205495B1 (ko) 지문 인식 방법 및 장치
KR102279550B1 (ko) 홍채를 위한 합성 코드를 이용한 인증 방법 및 인증 장치
CN106407942B (zh) 一种图像处理方法及其装置
KR20220008035A (ko) 위조 지문 검출 방법 및 장치
Kumar et al. An empirical evaluation of rotation invariance of LDP feature for fingerprint matching using neural networks
KR101037759B1 (ko) 활성형상모델과 가버 특징 벡터를 이용한 얼굴 인식 방법
CN110781724A (zh) 一种人脸识别神经网络、方法、装置、设备及存储介质
CN110956098A (zh) 图像处理方法及相关设备
Szczepanik et al. Security lock system for mobile devices based on fingerprint recognition algorithm
CN111401112A (zh) 人脸识别方法和装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant