KR102374747B1 - 객체를 인식하는 장치 및 방법 - Google Patents

객체를 인식하는 장치 및 방법 Download PDF

Info

Publication number
KR102374747B1
KR102374747B1 KR1020170173573A KR20170173573A KR102374747B1 KR 102374747 B1 KR102374747 B1 KR 102374747B1 KR 1020170173573 A KR1020170173573 A KR 1020170173573A KR 20170173573 A KR20170173573 A KR 20170173573A KR 102374747 B1 KR102374747 B1 KR 102374747B1
Authority
KR
South Korea
Prior art keywords
input image
recognizing
image
target
target image
Prior art date
Application number
KR1020170173573A
Other languages
English (en)
Other versions
KR20190072314A (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 KR1020170173573A priority Critical patent/KR102374747B1/ko
Priority to US16/176,440 priority patent/US10853678B2/en
Priority to CN201811467621.5A priority patent/CN109934083A/zh
Priority to EP18210386.1A priority patent/EP3499412B1/en
Priority to JP2018230088A priority patent/JP7163159B2/ja
Publication of KR20190072314A publication Critical patent/KR20190072314A/ko
Priority to US17/089,902 priority patent/US11423702B2/en
Application granted granted Critical
Publication of KR102374747B1 publication Critical patent/KR102374747B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/40Spoof detection, e.g. liveness detection
    • G06V40/45Detection of the body part being alive
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • G06K9/6201
    • 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
    • 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

Abstract

객체를 인식하는 장치 및 방법이 제공된다. 객체를 인식하는 장치는 객체에 대한 인식은 성공했으나, 라이브니스 검증이 실패한 경우, 객체 모델의 일부 레이어를 이용하여 단축된 객체 인식을 수행할 수 있다. 객체를 인식하는 장치는 단축된 객체 인식이 성공한 경우, 다시 라이브니스 검증을 수행할 수 있다.

Description

객체를 인식하는 장치 및 방법{METHOD AND DEVICE TO RECOGNIZE OBJECT}
이하, 객체를 인식하는 기술이 제공된다.
얼굴 인증 기술은 생체 인증 기술 중 하나로 정지 영상이나 동영상에 나타난 얼굴에 기초하여 사용자가 정당한 사용자인지 여부를 결정하는 인증 기술이다. 얼굴 인증 기술을 통해 인증 대상자의 신원을 비접촉식으로 확인 할 수 있다. 최근에는, 얼굴 인증 기술의 편리함 및 효율성 때문에 보안 시스템, 모바일 인증 및 멀티미디어 데이터 검색 등의 다양한 응용 분야에서 얼굴 인증 기술이 널리 활용되고 있다.
일 실시예에 따른 객체(object)를 인식하는 방법은, 객체 모델(object model)에 기초한 입력 이미지(input image)에 대한 객체 인식 성공 후 추가 검증(additional verification)이 실패한 경우에 응답하여, 상기 입력 이미지로부터 상기 객체 모델의 일부 레이어(layer)에 기초하여 추출된 기준 중간 데이터(reference intermediate data)를 이용하여 상기 입력 이미지와 다른 프레임에 대응하는 대상 이미지(target image)를 검증하는 단계; 및 상기 대상 이미지가 검증된 경우에 응답하여, 상기 대상 이미지에 대한 추가 검증을 수행하는 단계를 포함할 수 있다.
상기 기준 중간 데이터를 이용하여 상기 입력 이미지와 다른 프레임에 대응하는 대상 이미지를 검증하는 단계는, 상기 기준 중간 데이터를 이용하여, 상기 대상 이미지가 지시하는 객체가 상기 입력 이미지가 지시하는 객체와 동일한 지 여부를 결정하는 단계를 포함할 수 있다.
상기 기준 중간 데이터를 이용하여 상기 입력 이미지와 다른 프레임에 대응하는 대상 이미지를 검증하는 단계는, 상기 대상 이미지로부터 상기 일부 레이어에 기초하여 추출된 대상 중간 데이터(target intermediate data)가 상기 기준 중간 데이터에 매칭하는지 판단하는 단계를 포함할 수 있다.
상기 대상 중간 데이터가 상기 기준 중간 데이터에 매칭하는지 판단하는 단계는, 상기 대상 중간 데이터 및 상기 기준 중간 데이터 간의 매칭 스코어(matching score)를 산출하는 단계; 및 상기 매칭 스코어가 중간 임계(intermediate threshold)를 초과하는 경우에 응답하여, 상기 대상 이미지가 상기 입력 이미지와 동일한 객체를 포함하는 것으로 결정하는 단계를 포함할 수 있다.
상기 추가 검증을 수행하는 단계는, 상기 대상 이미지에 포함된 객체가 실제 생체(actual living body)인 지 여부를 나타내는 라이브니스(liveness)를, 상기 대상 이미지가 가지는 지 여부를 검증하는 단계를 포함할 수 있다.
상기 대상 이미지가 가지는 지 여부를 검증하는 단계는, 라이브니스 모델(liveness model)에 기초하여, 상기 대상 이미지에 대한 라이브니스 스코어(liveness score)를 산출하는 단계; 및 상기 라이브니스 스코어가 라이브니스 임계(liveness threshold)를 초과하는 경우에 응답하여, 상기 대상 이미지가 라이브니스를 가지는 것으로 결정하는 단계를 포함할 수 있다.
객체를 인식하는 방법은 복수의 프레임들로 구성되는 객체 이미지를 획득하는 단계; 및 상기 객체 이미지 중 한 프레임에 대응하는 입력 이미지를, 복수의 레이어들을 포함하는 객체 모델에 기초하여, 인식하는 단계를 더 포함할 수 있다.
객체를 인식하는 방법은 상기 입력 이미지에 대한 객체 인식이 성공한 경우에 응답하여, 상기 입력 이미지에 대하여 추가 검증을 수행하는 단계를 더 포함할 수 있다.
상기 객체 이미지 중 한 프레임에 대응하는 입력 이미지를, 복수의 레이어들을 포함하는 객체 모델에 기초하여, 인식하는 단계는, 상기 객체 모델에 기초하여, 상기 입력 이미지로부터 기준 출력 데이터를 추출하는 단계; 및 상기 기준 출력 데이터에 매칭하는 등록 데이터가 등록 데이터베이스에 존재하는 경우에 응답하여, 상기 입력 이미지가 식별된(identified) 것으로 결정하는 단계를 포함할 수 있다.
상기 입력 이미지가 식별된 것으로 결정하는 단계는, 상기 기준 출력 데이터 및 상기 등록 데이터 간의 매칭 스코어를 산출하는 단계; 및 상기 매칭 스코어가 출력 임계(output threshold)를 초과하는 경우에 응답하여, 상기 입력 이미지의 객체가 상기 등록 데이터의 객체와 동일한 것으로 결정하는 단계를 포함할 수 있다.
상기 객체 이미지 중 한 프레임에 대응하는 입력 이미지를, 복수의 레이어들을 포함하는 객체 모델에 기초하여, 인식하는 단계는, 상기 객체 모델의 일부 레이어에 기초하여, 상기 입력 이미지로부터 추출한 기준 중간 데이터를 저장하는 단계를 포함할 수 있다.
상기 기준 중간 데이터를 이용하여 상기 입력 이미지와 다른 프레임에 대응하는 대상 이미지를 검증하는 단계는, 상기 기준 중간 데이터를 이용한 검증이 실패한 경우에 응답하여, 상기 객체 모델에 기초하여 상기 대상 이미지로부터 대상 출력 데이터를 산출하는 단계; 및 상기 산출된 대상 출력 데이터에 매칭하는 등록 데이터가 등록 데이터베이스에 존재하는 경우에 응답하여, 상기 대상 이미지가 식별된 것으로 결정하는 단계를 포함할 수 있다.
상기 기준 중간 데이터를 이용하여 상기 입력 이미지와 다른 프레임에 대응하는 대상 이미지를 검증하는 단계는, 상기 산출된 대상 출력 데이터에 매칭하는 등록 데이터가 상기 등록 데이터베이스에 존재하지 않는 경우에 응답하여, 새로운 객체 이미지를 획득하는 단계를 더 포함할 수 있다.
상기 기준 중간 데이터를 이용하여 상기 입력 이미지와 다른 프레임에 대응하는 대상 이미지를 검증하는 단계는, 객체 이미지 중에서 상기 입력 이미지에 대응하는 프레임의 다음 프레임을 상기 대상 이미지로 선택하는 단계를 포함할 수 있다.
상기 기준 중간 데이터를 이용하여 상기 입력 이미지와 다른 프레임에 대응하는 대상 이미지를 검증하는 단계는, 상기 객체 모델을 구성하는 n개의 레이어들 중 m번째 레이어에 기초하여 상기 대상 이미지로부터 추출된 대상 중간 데이터 및 상기 m번째 레이어에 기초하여 상기 입력 이미지로부터 추출된 기준 중간 데이터를 비교하는 단계를 포함할 수 있다.
객체를 인식하는 방법은 상기 객체 모델에 기초하여 상기 입력 이미지로부터 추출된 기준 출력 데이터 및 등록 데이터 간의 매칭 스코어가 출력 임계를 초과하는 경우에 응답하여, 상기 입력 이미지에 대한 인식이 성공한 것으로 결정하는 단계를 더 포함하고, 상기 기준 중간 데이터를 이용하여 상기 입력 이미지와 다른 프레임에 대응하는 대상 이미지를 검증하는 단계는, 상기 기준 중간 데이터 및 상기 입력 이미지로부터 추출된 대상 중간 데이터 간의 매칭 스코어가 중간 임계를 초과하는 지 여부를 판단하는 단계를 포함하며, 상기 중간 임계는 상기 출력 임계보다 클 수 있다.
객체를 인식하는 방법은 복수의 프레임으로 구성되는 객체 이미지 중 한 프레임에 대응하는 입력 이미지에 대한, 상기 객체 모델에 기초한 인식이 실패하는 경우에 응답하여, 새로운 객체 이미지를 획득하는 단계를 더 포함할 수 있다.
객체를 인식하는 방법은 상기 대상 이미지에 대한 추가 검증이 실패하는 경우에 응답하여, 상기 대상 이미지의 다음 프레임에 대응하는 이미지로부터 상기 일부 레이어에 기초한 대상 중간 데이터를 추출하는 단계; 및 상기 대상 중간 데이터 및 상기 기준 중간 데이터에 기초하여 상기 다음 프레임에 대응하는 이미지를 검증하는 단계를 더 포함할 수 있다.
일 실시예에 따른 객체를 인식하는 장치는, 객체 모델을 저장하는 메모리; 및 상기 객체 모델에 기초한 입력 이미지에 대한 객체 인식 성공 후 추가 검증이 실패한 경우에 응답하여, 상기 입력 이미지로부터 상기 객체 모델의 일부 레이어에 기초하여 추출된 기준 중간 데이터를 이용하여 상기 입력 이미지와 다른 프레임에 대응하는 대상 이미지를 검증하고, 상기 대상 이미지가 검증된 경우에 응답하여, 상기 대상 이미지에 대한 추가 검증을 수행하는 프로세서를 포함할 수 있다.
도 1은 일 실시예에 따른 모델의 예시를 설명하는 도면이다.
도 2은 일 실시예에 따른 객체를 인식하는 장치의 개괄적인 구성을 도시한 블록도이다.
도 3은 일 실시에에 따른 객체를 인식하는 장치의 트레이닝을 설명하는 도면이다.
도 4는 일 실시예에 따른 객체를 인식하는 방법을 도시한 흐름도이다.
도 5 내지 도 7은 일 실시예에 따른 객체 인식의 과정을 설명하는 도면이다.
도 8은 일 실시예에 따른 객체를 인식하는 과정을 상세히 설명하는 흐름도이다.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 특허출원의 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
아래 설명하는 실시예들에는 다양한 변경이 가해질 수 있다. 아래 설명하는 실시예들은 실시 형태에 대해 한정하려는 것이 아니며, 이들에 대한 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 실시예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수 개의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 1은 일 실시예에 따른 모델의 예시를 설명하는 도면이다.
일 실시예에 따르면 객체 모델은 뉴럴 네트워크(100)를 포함할 수 있다. 뉴럴 네트워크(100)에 기초하여, 객체 인식을 수행하는 방법 및 그 방법을 수행하는 장치(이하, 객체를 인식하는 장치)가 제안되고, 해당 뉴럴 네트워크(100)를 트레이닝시키는 방법 및 장치(이하, 객체 트레이닝 장치)가 제안될 수 있다. 본 명세서에서, 인식(recognition)은 검증(verification) 및 식별(identification)을 포함할 수 있다. 검증은 입력 데이터가 참인지 거짓인지를 판단하는 동작을 나타낼 수 있고, 식별은 복수의 레이블들 중 입력 데이터가 지시하는 레이블(label)을 판단하는 동작을 나타낼 수 있다.
우선, 일 실시예에 따른 객체 인식을 설명하기에 앞서 뉴럴 네트워크(100)의 개략적인 구조에 대해 하기와 같이 설명한다.
일 실시예에 따르면 뉴럴 네트워크(100)는 복수의 노드들로 구성되는 복수의 레이어들을 포함할 수 있다. 또한, 뉴럴 네트워크(100)는 복수의 레이어들의 각각에 포함된 복수의 노드들을 다른 레이어에 포함된 노드에 연결시키는 연결 가중치들을 포함할 수 있다. 표정 트레이닝 장치는 뉴럴 네트워크(100)를 메모리에 저장된 내부 데이터베이스로부터 획득하거나, 통신부를 통해 외부 서버로부터 수신하여 획득할 수 있다.
예를 들어, 뉴럴 네트워크(100)는 연결선(edge)으로 연결된 많은 수의 인공 뉴런들을 이용하여 생물학적인 시스템의 계산 능력을 모방하는 인식 모델을 나타낼 수 있다. 뉴럴 네트워크(100)는 소프트웨어, 하드웨어, 또는 이들의 조합으로 구현될 수 있다. 뉴럴 네트워크(100)는 인공(artificial) 뉴럴 네트워크라고 지칭될 수 있다.
뉴럴 네트워크(100)는 생물학적인 뉴런의 기능을 단순화시킨 인공 뉴런들을 이용한다. 인공 뉴런은 노드(node)라고 지칭될 수 있다. 인공 뉴런들은 연결 가중치(connection weight)를 가지는 연결선을 통해 상호 연결될 수 있다. 연결 가중치는 연결선이 갖는 특정한 값으로, 시냅스 가중치(synapse weight) 또는 연결 강도라고 지칭될 수 있다.
뉴럴 네트워크(100)는 복수의 레이어들을 포함할 수 있다. 예를 들어, 뉴럴 네트워크(100)는 입력 레이어(input layer)(110), 히든 레이어(hidden layer)(120), 출력 레이어(output layer)(130)을 포함할 수 있다. 입력 레이어(110)는 트레이닝 또는 인식을 수행하기 위한 입력을 수신하여 히든 레이어(120)에 전달할 수 있고, 출력 레이어(130)는 히든 레이어(120)로부터 수신한 신호에 기초하여 뉴럴 네트워크(100)의 출력을 생성할 수 있다. 히든 레이어(120)는 입력 레이어(110)와 출력 레이어(130) 사이에 위치하고, 입력 레이어(110)를 통해 전달된 트레이닝 데이터의 트레이닝 입력을 예측하기 쉬운 값으로 변화시킬 수 있다.
입력 레이어(110), 히든 레이어(120) 및 출력 레이어(130)는 복수 개의 노드들을 포함할 수 있다. 입력 레이어(110)에 포함된 노드는 입력 노드(input node)라고 지칭되고, 히든 레이어(120)에 포함된 노드는 히든 노드(hidden node)라고 지칭되며, 출력 레이어(130)에 포함된 노드는 출력 노드(output node)라고 지칭될 수 있다.
입력 레이어(110)에 포함된 입력 노드들과 히든 레이어(120)에 포함된 히든 노드들은 연결 가중치를 가지는 연결선들을 통해 서로 연결될 수 있다. 히든 레이어(120)에 포함된 히든 노드들과 출력 레이어(130)에 포함된 출력 노드들은 연결 가중치를 가지는 연결선들을 통해 서로 연결될 수 있다.
도면에 도시하지 않았으나, 뉴럴 네트워크는 복수 개의 히든 레이어들을 포함할 수 있다. 복수 개의 히든 레이어들을 포함하는 뉴럴 네트워크는 깊은 뉴럴 네트워크(deep neural network)라고 지칭될 수 있다. 깊은 뉴럴 네트워크를 학습시키는 것은 깊은 학습(deep learning)이라고 지칭될 수 있다. 히든 레이어(120)에 제1 히든 레이어, 제2 히든 레이어, 및 제3 히든 레이어가 포함되는 경우를 가정하면, 제1 히든 레이어에 속한 히든 노드의 출력은 제2 히든 레이어에 속한 히든 노드들에 연결될 수 있다. 제2 히든 레이어에 속한 히든 노드의 출력은 제3 히든 레이어에 속한 히든 노드들에 연결될 수 있다.
예를 들어, 객체를 인식하는 장치는, 각 히든 레이어에 이전 히든 레이어에 포함된 이전 히든 노드들의 출력들을 연결 가중치를 가지는 연결선들을 통해 입력할 수 있고, 이전 히든 노드들의 출력들에 연결 가중치가 적용된 값들 및 활성화 함수에 기초하여 히든 레이어에 포함된 히든 노드들의 출력을 생성할 수 있다. 일 예시에 따르면, 다음 히든 노드로 출력를 발화하기 위하여, 활성화 함수의 결과는 현재 히든 노드의 임계 값을 초과해야 한다. 이 경우, 노드는 입력 벡터들을 통하여 특정 임계 활성화 강도에 도달하기 전에는 다음 노드로 신호를 발화하지 않고, 비활성화 상태를 유지할 수 있다.
일 실시예에 따른 객체 트레이닝 장치는 감독 학습(supervised learning)을 통해 뉴럴 네트워크(100)를 트레이닝시킬 수 있다. 표정 트레이닝 장치는 소프트웨어 모듈, 하드웨어 모듈, 또는 이들의 조합으로 구현될 수 있다. 감독 학습은 트레이닝 데이터의 트레이닝 입력 그에 대응하는 트레이닝 출력을 함께 뉴럴 네트워크(100)에 입력하고, 트레이닝 데이터의 트레이닝 출력에 대응하는 출력 데이터가 출력되도록 연결선들의 연결 가중치를 업데이트하는 기법이다. 트레이닝 데이터는 트레이닝 입력 및 트레이닝 출력의 쌍을 포함하는 데이터이다. 도 1은 뉴럴 네트워크의 구조를 노드 구조로 표현하였으나, 실시예들은 이러한 노드 구조에 국한되지 않는다. 메모리 스토리지에 뉴럴 네트워크를 저장하기 위하여 다양한 데이터 구조가 이용될 수 있다.
일 실시예에 따르면, 객체 트레이닝 장치는 뉴럴 네트워크에 역전파되는 손실 및 뉴럴 네트워크에 포함된 노드들의 출력 값에 기초한 기울기 하강(gradient descent) 기법을 통하여, 노드들의 파라미터를 결정할 수 있다. 예를 들어, 표정 트레이닝 장치는 손실 역 전파 학습(back-propagation learning)을 통해 노드들 사이의 연결 가중치를 업데이트할 수 있다. 손실 역 전파 학습은, 주어진 트레이닝 데이터에 대해 포워드 계산(forward computation)을 통하여 손실을 추정한 후, 출력 레이어(130)에서 시작하여 히든 레이어(120) 및 입력 레이어(110)를 향하는 역 방향으로 추정한 손실을 전파하면서, 손실을 줄이는 방향으로 연결 가중치를 업데이트하는 방법이다. 뉴럴 네트워크(100)의 처리는 입력 레이어(110), 히든 레이어(120), 및 출력 레이어(130)의 방향으로 진행되지만, 손실 역 전파 트레이닝에서 연결 가중치의 업데이트 방향은 출력 레이어(130), 히든 레이어(120), 및 입력 레이어(110)의 방향으로 진행될 수 있다. 하나 또는 그 이상의 프로세서는 뉴럴 네트워크를 원하는 방향으로 처리하기 위하여, 레이어 또는 일련의 계산 데이터를 저장하는 버퍼 메모리를 이용할 수 있다.
객체 트레이닝 장치는 현재 설정된 연결 가중치들이 얼마나 최적에 가까운지를 측정하기 위한 목적 함수(objective function)를 정의하고, 목적 함수의 결과에 기초하여 연결 가중치들을 계속 변경하고, 트레이닝을 반복적으로 수행할 수 있다. 예를 들어, 목적 함수는 뉴럴 네트워크(100)가 트레이닝 데이터의 트레이닝 입력에 기초하여 실제 출력한 출력 값과 출력되기로 원하는 기대 값 사이의 손실을 계산하기 위한 손실 함수일 수 있다. 객체 트레이닝 장치는 손실 함수의 값을 줄이는 방향으로 연결 가중치들을 업데이트할 수 있다.
도 2는 일 실시예에 따른 객체를 인식하는 장치의 개괄적인 구성을 도시한 블록도이다.
객체를 인식하는 장치(200)는 이미지 획득부(210), 프로세서(220), 및 메모리(230)를 포함할 수 있다.
이미지 획득부(210)는 객체 이미지를 획득할 수 있다. 예를 들어, 이미지 획득부(210)는 카메라를 포함할 수 있고, 객체를 촬영함으로써 객체 이미지를 생성할 수 있다. 또한, 객체 이미지는 임의의 객체와 연관된 복수의 프레임들에 대응하는 이미지를 포함할 수 있다. 복수의 프레임들에 대응하는 일련의 이미지들은, 객체를 촬영한 시간 순서에 따라 생성될 수 있다. 다만, 이미지 획득부(210)를 이로 한정하는 것은 아니고, 이미지 획득부(210)는 컬러 영상 외에도 깊이 영상 등을 획득할 수도 있다.
본 명세서에서 객체 이미지는 객체의 적어도 일부가 촬영된 이미지를 나타낼 수 있다. 예를 들어, 객체는 사람일 수 있고, 객체 이미지는 객체의 적어도 일부로서, 사람의 얼굴이 촬영된 이미지일 수 있다. 다만, 이로 한정하는 것은 아니다.
프로세서(220)는 객체 이미지 중 입력 이미지를 선택할 수 있고, 입력 이미지에 대하여 객체 인식을 수행할 수 있다. 예를 들어, 프로세서(220)는 입력 이미지에 나타나는 객체가 등록 데이터베이스에 등록되었는지 여부를 식별할 수 있다. 프로세서(220)는 미리 트레이닝된 객체 모델(231)에 기초하여, 객체 이미지 중 한 프레임에 대응하는 입력 이미지를 인식할 수 있다. 프로세서(220)는 객체 모델(231)에 이미지를 입력함으로써 특징 데이터를 추출할 수 있고, 추출된 특징 데이터를 이용하여 이미지를 인식할 수 있다. 프로세서(220)는 객체가 등록되지 않은 것으로 결정되면 인식이 실패한 것으로 결정할 수 있다. 프로세서(220)는 입력 이미지에 대한 객체 인식이 성공한 경우(예를 들어, 객체가 등록된 것으로 결정된 경우)에 응답하여, 입력 이미지에 대한 추가 검증을 수행할 수 있다.
일 실시예에 따르면 추가 검증은 촬영된 객체가 위조된 것인 지 여부를 판단하기 위한 동작을 나타낼 수 있다. 예를 들어, 추가 검증은 이미지가 라이브니스(liveness)를 가지는 지 여부를 검증하는 동작을 포함할 수 있다. 라이브니스는 객체가 실제 생체(actual living body)인 지 여부를 나타낼 수 있다. 예를 들어, 라이브니스는 객체 이미지의 각 프레임마다 결정되는 라이브니스 파라미터(liveness parameter)에 기초하여 결정될 수 있다. 라이브니스 파라미터는 각 프레임이 실제 사용자를 유효하게 촬영한 이미지에 기초한 것인지를 나타낼 수 있다. 예를 들어, 라이브니스 파라미터는 임의의 프레임에 대응하는 이미지가 실제 사용자를 촬영한 것이면 참(true)을 나타낼 수 있고, 위조된 것이면 거짓(false)을 나타낼 수 있다.
프로세서(220)는 추가 검증이 성공한 경우, 객체 인식이 최종적으로 성공한 것으로 결정할 수 있다. 예를 들어, 프로세서(220)는, 객체 이미지가 라이브니스를 가지는 것으로 검증된 경우, 객체 이미지로부터 인식된 객체를 승인할 수 있다.
일 실시예에 따르면 프로세서(220)는 추가 검증이 실패하는 경우, 다시 객체 인식을 수행할 수 있다. 프로세서(220)는 처음보다 단순화된 객체 인식을 수행할 수 있다. 예를 들어, 프로세서(220)는 입력 이미지에 대한 라이브니스 검증이 실패한 경우, 입력 이미지와 다른 프레임의 대상 이미지를 검증할 수 있다. 프로세서(220)는 객체 모델(231)의 일부 레이어의 출력을 이용하여, 입력 이미지 및 대상 이미지를 비교할 수 있다. 프로세서(220)는 일부 레이어의 출력 비교에 기초하여 입력 이미지 및 대상 이미지가 동일한 객체를 지시하는 것으로 결정된 경우에 응답하여, 대상 이미지에 대하여 추가 검증을 수행할 수 있다. 입력 이미지와 동일한 객체를 지시하는 것으로 검증된 대상 이미지에 대한 추가 검증이 승인되는 경우, 프로세서(220)는 대상 이미지에 나타난 객체를 최종적으로 인식할 수 있다.
일부 레이어는 예를 들어, 낮은 레벨에 대응하는 특징을 출력할 수 있고, 나머지 레이어는 일부 레이어보다 높은 레벨에 대응하는 특징을 출력할 수 있다. 예를 들어, 높은 레벨에 대응하는 특징은 낮은 레벨에 대응하는 특징보다 더 추상화된 특징일 수 있다.
메모리(230)는 상술한 객체 모델(231)을 저장할 수 있다. 또한, 메모리(230)는 객체 이미지, 입력 이미지, 대상 이미지, 일부 레이어의 출력, 객체 모델(231)의 출력 및 객체 인식에 요구되는 정보를 임시적으로 또는 영구적으로 저장할 수 있다.
도 3는 일 실시에에 따른 객체를 인식하는 장치의 트레이닝을 설명하는 도면이다.
트레이닝 장치(300)는 객체를 인식하는 장치에 사용되는 객체 모델(321)을 트레이닝시킬 수 있다. 일 실시예에 따른 트레이닝 장치(300)는 프로세서(310) 및 메모리(320)를 포함할 수 있다.
프로세서(310)는 트레이닝 데이터(322)에 기초하여 객체 모델(321)을 트레이닝시킬 수 있다. 트레이닝 데이터(322)는 트레이닝 입력 및 트레이닝 출력의 쌍을 포함할 수 있다. 트레이닝 입력은 예를 들어, 트레이닝 이미지일 수 있다. 트레이닝 출력은 예를 들어, 임의의 트레이닝 이미지에 대해 주어진 객체 레이블일 수 있다. 객체 레이블은 트레이닝 이미지에 나타나는 객체를 지시하는 레이블로서, 예를 들어, 사용자의 신원(ID, identification)일 수 있다.
일 실시예에 따르면 프로세서(310)는 객체 모델(321)이 트레이닝 입력으로부터 트레이닝 출력을 출력하도록, 객체 모델(321)을 트레이닝시킬 수 있다. 예를 들어, 트레이닝 동안, 프로세서(310)는 객체 모델(321)에 기초하여 트레이닝 입력으로부터 산출되는 출력과 트레이닝 출력 간의 손실(loss)을 최소화시킴으로써 객체 모델(321)을 트레이닝시킬 수 있다. 프로세서(310)는 트레이닝 입력으로부터 산출된 출력과 트레이닝 출력 간의 손실이 최소화되도록 객체 모델(321)의 파라미터를 업데이트함으로써, 객체 모델(321)을 트레이닝시킬 수 있다.
도 4는 일 실시예에 따른 객체를 인식하는 방법을 도시한 흐름도이다.
우선, 객체를 인식하는 장치는 객체 모델에 기초하여 입력 이미지를 인식할 수 있다. 객체를 인식하는 장치는 객체 모델에 기초하여 입력 이미지로부터 기준 출력 데이터를 추출할 수 있다. 객체를 인식하는 장치는 기준 출력 데이터에 매칭하는 등록 데이터가 등록 데이터베이스에 존재하는 경우에 응답하여, 입력 이미지가 식별된(identified) 것으로 결정할 수 있다. 그리고 객체를 인식하는 장치는 입력 이미지가 인식된 경우 입력 이미지에 대한 추가 검증을 수행할 수 있다. 객체를 인식하는 장치는 입력 이미지가 라이브니스를 가지는 지 여부를 판단할 수 있다. 예를 들어, 객체를 인식하는 장치는 기준 중간 데이터를 이용하여, 대상 이미지가 지시하는 객체가 입력 이미지가 지시하는 객체와 동일한 지 여부를 결정할 수 있다. 객체를 인식하는 장치는, 추가 검증으로서, 대상 이미지가 입력 이미지로부터 연속되는 일련의 이미지인 지 여부를 결정할 수 있다.
객체를 인식하는 장치는 인식된 객체에 대한 추가 검증이 실패한 경우, 해당 객체에 대해 단순화된 인식 동작을 수행할 수 있다. 예를 들어, 단계(410)에서 객체를 인식하는 장치는 객체 모델에 기초한 입력 이미지에 대한 객체 인식 성공 후 추가 검증이 실패한 경우에 응답하여, 입력 이미지로부터 객체 모델의 일부 레이어에 기초하여 추출된 기준 중간 데이터를 이용하여 입력 이미지와 다른 프레임에 대응하는 대상 이미지를 검증할 수 있다.
그리고 단계(420)에서 객체를 인식하는 장치는 대상 이미지가 검증된 경우에 응답하여, 대상 이미지에 대한 추가 검증을 수행할 수 있다. 예를 들어, 객체를 인식하는 장치는 대상 이미지에 포함된 객체가 실제 생체인 지 여부를 나타내는 라이브니스를 대상 이미지가 가지는 지 여부를 결정할 수 있다.
객체를 인식하는 장치는 대상 이미지에 대한 라이브니스 테스트(liveness test)에 기초하여, 대상 이미지의 라이브니스 스코어(liveness score)를 결정할 수 있다. 예를 들어, 대상 이미지가 실제 사용자를 유효하게 촬영한 것에 가까울수록, 라이브니스 스코어는 높게 결정될 수 있다. 예를 들어, 위조 이미지(fake image) 내 특정 프레임에 라이브니스가 있는 것으로 잘못 결정되는 것을 방지하기 위해, 현재 프레임의 라이브니스 스코어는 적어도 하나의 이전 프레임들을 고려하여 결정될 수 있다. 예를 들어, 대상 이미지의 라이브니스 스코어는 k번째 프레임에 관한 라이브니스 테스트에 기초하여 획득된 제1 라이브니스 스코어 및 이전 프레임에 대응하는 입력 이미지에 관해 결정된 제2 라이브니스 스코어의 누적에 기초하여 결정될 수 있다. 여기서, k는 정수일 수 있다. 입력 이미지는 k-1번째 프레임에 대응할 수 있다.
객체를 인식하는 장치는 대상 이미지에 관해 결정된 라이브니스 스코어와 대상 이미지에 관한 라이브니스 임계(liveness threshold)를 비교하여 라이브니스 파라미터를 결정할 수 있다. 예를 들어, 대상 이미지의 라이브니스 스코어가 대상 이미지에 관한 라이브니스 임계 이상인 경우, 객체를 인식하는 장치는 대상 이미지의 라이브니스 파라미터를 대상 이미지가 라이브니스를 가지는 것으로 결정할 수 있다.
일 실시예에 따르면, 객체를 인식하는 장치는 k번째 프레임에 관한 라이브니스 임계를, k번째 프레임의 분석 결과에 기초하여 조절할 수 있다. 예를 들어, k번째 프레임의 얼굴 영역의 크기가 적정 범위를 벗어난 경우 객체를 인식하는 장치는 k번째 프레임에 관한 라이브니스 임계를 높게 결정할 수 있다.
또한, 객체를 인식하는 장치는 라이브니스 모델(liveness model)에 기초하여, 대상 이미지에 대한 라이브니스 스코어(liveness score)를 산출할 수 있다. 라이브니스 모델은, 예를 들어, 뉴럴 네트워크일 수 있으며, 트레이닝 이미지로부터 트레이닝 레이블을 출력하도록 트레이닝될 수 있다. 트레이닝 레이블은 트레이닝 이미지가 라이브니스를 가지거나 가지지 않는 것을 지시하는 값일 수 있다. 객체를 인식하는 장치는 라이브니스 스코어가 라이브니스 임계(liveness threshold)를 초과하는 경우에 응답하여, 대상 이미지가 라이브니스를 가지는 것으로 결정할 수 있다.
도 5 내지 도 7은 일 실시예에 따른 객체 인식의 과정을 설명하는 도면이다.
도 5는 일 실시예에 따른 객체 인식의 개괄적인 과정을 설명한다.
우선, 객체를 인식하는 장치는 복수의 프레임들로 구성되는 객체 이미지를 획득할 수 있다. 객체를 인식하는 장치는 1차 객체 인식(510)을 통해 입력 이미지로부터 객체를 인식할 수 있고, 1차 객체 인식(510)이 성공한 경우 추가 검증(520)을 수행할 수 있다.
예를 들어, 객체를 인식하는 장치는 객체 이미지로부터 한 프레임에 대응하는 입력 이미지를 선택(511)할 수 있다. 객체를 인식하는 장치는 예를 들어, 복수의 프레임들 중 특정 영역에 객체의 적어도 일부(예를 들어, 얼굴)가 적절하게 피팅된 프레임에 대응하는 이미지를 입력 이미지로 선택할 수 있다.
그리고 객체를 인식하는 장치는 입력 이미지에 대해 객체 인식(512)을 수행할 수 있다. 객체를 인식하는 장치는 입력 이미지에 대한 객체 인식(512)이 실패한 경우, 인식 최종 실패(550)로 결정할 수 있다.
객체를 인식하는 장치는 입력 이미지에 대해 객체 인식(512)이 성공한 경우, 추가 검증(520)을 수행할 수 있다. 예를 들어, 객체를 인식하는 장치는 추가 검증(520)을 통해 입력 이미지가 라이브니스를 가지는 지 여부를 결정할 수 있다. 객체를 인식하는 장치는 입력 이미지가 라이브니스를 가지는 경우, 최종 인식 성공(560)으로 결정할 수 있다.
입력 이미지에 대한 추가 검증(520)이 실패한 경우, 객체를 인식하는 장치는 2차 객체 인식(530)을 통해 대상 이미지를 검증할 수 있다.
예를 들어, 객체를 인식하는 장치는 객체 이미지 중 대상 이미지를 선택(531)할 수 있다. 객체를 인식하는 장치는 입력 이미지와 다른 프레임에 대응하는 이미지를 대상 이미지로 선택할 수 있다. 객체를 인식하는 장치는 객체 이미지 중에서 입력 이미지에 대응하는 프레임의 다음 프레임을 대상 이미지로 선택할 수 있다.
그리고 객체를 인식하는 장치는 대상 이미지에 대한 객체 인식(532)을 수행할 수 있다. 예를 들어, 객체를 인식하는 장치는 객체 모델의 일부 레이어(533)에 기초하여 대상 이미지로부터 대상 중간 데이터(target intermediate data)를 추출할 수 있다. 객체를 인식하는 장치는 대상 중간 데이터 및 입력 이미지로부터 추출된 기준 중간 데이터 간의 비교에 기초하여, 대상 이미지를 검증할 수 있다. 객체를 인식하는 장치는 대상 중간 데이터 및 기준 중간 데이터가 매칭하는 경우에 응답하여, 대상 이미지가 검증된 것으로 결정할 수 있다. 예를 들어, 대상 중간 데이터 및 기준 중간 데이터가 매칭하는 경우, 객체를 인식하는 장치는 대상 이미지 및 입력 이미지 간의 연속성(continuity)이 존재하는 것으로 결정할 수 있다.
본 명세서에서 기준 중간 데이터는 객체 모델의 일부 레이어(533)에 기초하여 입력 이미지로부터 추출된 특징 데이터를 나타낼 수 있다. 대상 중간 데이터는 객체 모델의 일부 레이어(533)에 기초하여 대상 이미지로부터 추출된 특징 데이터를 나타낼 수 있다. 특징 데이터는 이미지가 추상화된 데이터로서, 예를 들어, 벡터 형태의 데이터일 수 있다. 복수의 이미지들 간의 연속성은, 복수의 이미지들이 일련의 프레임으로 연관되는 것을 나타낼 수 있다. 연속된 복수의 이미지들은 동일한 객체를 포함할 수 있다.
일 실시예에 따르면 객체 모델은 n개의 레이어들로 구성될 수 있고, 일부 레이어는 m번째 레이어를 나타낼 수 있으며, 나머지 레이어는 m+1번째부터 n번째까지의 레이어를 나타낼 수 있다. 여기서, n은 2이상의 정수일 수 있고, m은 n보다 작고 1보다 큰 정수일 수 있다. 예를 들어, 객체를 인식하는 장치는 객체 모델을 구성하는 n개의 레이어들 중 m번째 레이어에 기초하여 대상 이미지로부터 추출된 대상 중간 데이터 및 m번째 레이어에 기초하여 입력 이미지로부터 추출된 기준 중간 데이터를 비교할 수 있다. 또한, 설계에 따라 m은 변경될 수 있다. 또한, 객체를 인식하는 장치는 객체 이미지의 속성 정보(예를 들어, 픽셀들의 개수, 및 밝기 평균 등)에 기초하여 m을 동적으로 변경함으로써, 기준 중간 데이터 및 대상 중간 데이터를 추출하기 위한 레이어를 결정할 수 있다.
객체를 인식하는 장치는 일부 레이어(533)에 기초한 대상 이미지의 검증이 실패한 경우, 나머지 레이어(534)에 기초한 대상 이미지의 식별을 수행할 수 있다. 예를 들어, 객체를 인식하는 장치는 일부 레이어(533)로부터 출력된 대상 중간 데이터를 나머지 레이어(534)로 전파(propagate)시킴으로써, 대상 출력 데이터를 생성할 수 있다. 객체를 인식하는 장치는 대상 출력 데이터에 매칭되는 등록 데이터가 존재하는 경우, 대상 이미지가 식별된 것으로 결정할 수 있다.
본 명세서에서 대상 출력 데이터는 대상 이미지로부터 최종적으로 산출된, 객체 모델의 출력 데이터를 나타낼 수 있다. 기준 출력 데이터는 입력 이미지로부터 최종적으로 산출된 객체 모델의 출력 데이터를 나타낼 수 있다.
객체를 인식하는 장치는 나머지 레이어(534)에 기초한 대상 이미지의 식별이 실패한 경우, 인식 최종 실패(550)로 결정할 수 있다. 이후, 객체를 인식하는 장치는 새로운 객체 이미지를 획득하여, 다시 인식을 수행할 수 있다.
일부 레이어(533)에 기초한 대상 이미지의 검증 또는 나머지 레이어(534)에 기초한 대상 이미지의 식별이 성공한 경우, 객체를 인식하는 장치는 대상 이미지에 대한 추가 검증(540)을 수행할 수 있다.
객체를 인식하는 장치는 대상 이미지에 대한 추가 검증(540)이 성공한 경우, 최종 인식 성공(560)으로 결정할 수 있다. 또한, 객체를 인식하는 장치는 대상 이미지에 대한 추가 검증(540)이 실패한 경우, 객체 이미지로부터 새로운 대상 이미지를 선택(531)할 수 있다. 이후, 객체를 인식하는 장치는 새로운 대상 이미지에 대하여 다시 2차 객체 인식(530) 및 추가 검증(540)을 수행할 수 있다.
입력 이미지에 대한 추가 검증(520)의 실패는 입력 이미지 자체가 위조 이미지일 가능성을 나타낼 수 있다. 객체를 인식하는 장치는 입력 이미지에 대한 추가 검증(520)이 실패한 경우, 대상 이미지에 대한 2차 객체 인식(530) 및 대상 이미지에 대한 추가 검증(540)을 통해 대상 이미지를 식별 및 검증할 수 있다. 객체를 인식하는 장치는 대상 이미지로부터 추출된 대상 중간 데이터를 입력 이미지로부터 추출된 기준 중간 데이터를 비교함으로써 대상 이미지의 식별에 소요되는 시간을 절감할 수 있다.
또한, 대상 이미지가 라이브니스를 가지는 경우, 객체를 인식하는 장치는 입력 이미지도 라이브니스를 가지는 것으로 결정할 수 있다. 대상 이미지 및 입력 이미지는 일련의 객체 이미지로부터 선택된 것이므로, 서로 연관되기 때문이다. 따라서, 객체를 인식하는 장치는 식별된 대상 이미지에 대한 추가 검증을 다시 수행함으로써 인식의 정확도를 보장할 수 있다.
참고로, 설명의 편의를 위하여, 1차 객체 인식(510)과 2차 객체 인식(530)은 분리되어 도시되었으나, 객체를 인식하는 장치는 실제로는 동일한 객체 모델을 이용하여 시간 순서에 따라 1차 객체 인식(510)과 2차 객체 인식(530)을 수행할 수 있다. 예를 들어, 객체를 인식하는 장치는 객체 모델을 이용한 1차 객체 인식(510)이 종료된 이후에, 그와 동일한 객체 모델을 이용하여 2차 객체 인식(530)을 수행할 수 있다.
다만, 이로 한정하는 것은 아니고, 객체를 인식하는 장치는 제1 객체 모델에 입력 이미지를 입력함으로써 1차 객체 인식(510)을 수행하면서, 1차 객체 인식(510)이 진행되는 동안 제1 객체 모델과 동일한 구조의 기계학습 모델 및 동일한 파라미터를 가지는 제2 객체 모델에 대상 이미지를 입력함으로써 2차 객체 인식(530)을 수행할 수 있다. 이 경우, 객체를 인식하는 장치는 제1 객체 모델의 일부 레이어에 기초하여 입력 이미지로부터 기준 중간 데이터가 추출된 이후에, 제2 객체 모델에 기초하여 대상 이미지로부터 대상 중간 데이터를 추출할 수 있다.
도 6은 1차 객체 인식(510)을 설명하는 도면이다.
우선, 단계(620)에서 객체를 인식하는 장치는 객체 모델에 기초하여 입력 이미지로부터 기준 출력 데이터를 산출할 수 있다. 예를 들어, 객체를 인식하는 장치는 입력 이미지에 대응하는 데이터를 일부 레이어(621)로부터 나머지 레이어(622)로 전파시킴으로써, 기준 출력 데이터를 산출할 수 있다. 여기서, 객체를 인식하는 장치는 객체 모델의 일부 레이어(621)에 기초하여 입력 이미지로부터 추출된 기준 중간 데이터를 저장할 수 있다.
본 명세서에서 일부 레이어(621)는 하나 이상의 레이어를 포함할 수 있고, 나머지 레이어(622)도 하나 이상의 레이어를 포함할 수 있다. 각 레이어는 복수의 노드들을 포함할 수 있고, 각 레이어의 노드는 다른 레이어의 노드와 연결 가중치를 가지는 연결선을 통해 연결될 수 있다. 객체를 인식하는 장치는 각 레이어의 노드로 입력된 데이터를 연결선을 통해 전파시킬 수 있다.
그리고 단계(640)에서 객체를 인식하는 장치는 객체 모델에 기초하여 입력 이미지로부터 추출된 기준 출력 데이터가 등록 데이터와 매칭하는지 여부를 판단할 수 있다. 기준 출력 데이터에 매칭하는 등록 데이터가 존재하는 경우, 객체를 인식하는 장치는 입력 이미지가 식별된 것으로 결정할 수 있다. 예를 들어, 객체를 인식하는 장치는 입력 이미지가 등록 데이터에 대응하는 객체를 지시하는 것으로 결정할 수 있다.
일 실시예에 따르면 객체를 인식하는 장치는 기준 출력 데이터 및 등록 데이터 간의 매칭 스코어를 산출할 수 있다. 객체를 인식하는 장치는 매칭 스코어가 출력 임계(output threshold)를 초과하는 경우에 응답하여, 입력 이미지의 객체가 등록 데이터의 객체와 동일한 것으로 결정할 수 있다. 중간 임계는 출력 임계보다 큰 값으로 설정될 수 있다. 중간 레이어에 대응하는 출력끼리의 비교는 보다 높은 정확성을 요구하기 때문이다.
도 7은 2차 객체 인식(530)을 설명하는 도면이다.
우선, 대상 이미지에 대한 객체 인식(532)에서 객체를 인식하는 장치는 객체 모델의 일부 레이어(533)에 기초하여 대상 이미지로부터 대상 중간 데이터를 추출할 수 있다.
그리고 단계(730)에서 객체를 인식하는 장치는 대상 이미지가 이전 프레임과 매칭하는지 여부를 판단할 수 있다. 일 실시예에 따르면 객체를 인식하는 장치는 대상 이미지가 입력 이미지(예를 들어, 이전 프레임)에 매칭하는지 여부를 결정할 수 있다. 예를 들어, 객체를 인식하는 장치는 대상 이미지로부터, 객체 모델의 일부 레이어에 기초하여, 추출된 대상 중간 데이터가 기준 중간 데이터에 매칭하는지 판단할 수 있다. 대상 이미지는 k번째 프레임일 수 있고, 입력 이미지는 k-1번째 프레임일 수 있다.
일 실시예에 따르면 객체를 인식하는 장치는 대상 이미지가 검증된 경우에 응답하여, 대상 이미지에 대한 추가 검증(540)을 수행할 수 있다. 예를 들어, 객체를 인식하는 장치는 대상 이미지가 입력 이미지에 매칭하는 경우, 객체를 인식하는 장치는 대상 이미지에 대한 추가 검증(540)을 수행할 수 있다.
대상 이미지가 입력 이미지에 매칭하지 않는 경우, 객체를 인식하는 장치는 나머지 레이어(534)에 기초한 객체 인식을 수행할 수 있다. 예를 들어, 객체를 인식하는 장치는 일부 레이어(533)로부터 출력된 대상 중간 데이터를 나머지 레이어(534)로 전파시킴으로써, 대상 출력 데이터를 산출할 수 있다.
단계(740)에서 객체를 인식하는 장치는 대상 이미지가 등록 데이터베이스에 매칭하는지 여부를 결정할 수 있다. 일 실시예에 따르면 객체를 인식하는 장치는 대상 이미지가 등록 데이터베이스에 저장된 등록 이미지들 중 적어도 하나에 매칭하는 지 여부를 결정할 수 있다. 예를 들어, 객체를 인식하는 장치는 대상 출력 데이터가 등록 데이터에 매칭하는지 여부를 결정할 수 있다.
객체를 인식하는 장치는 대상 이미지가 등록 이미지에 매칭하는 경우, 대상 이미지에 대한 추가 검증(540)을 수행할 수 있다.
또한, 객체를 인식하는 장치는 대상 이미지가 등록 이미지에 매칭하지 않는 경우, 인식 최종 실패(550)로 결정할 수 있다. 이후 객체를 인식하는 장치는 새로운 객체 이미지를 획득하여 객체 인식을 수행할 수 있다.
도 8은 일 실시예에 따른 객체를 인식하는 과정을 상세히 설명하는 흐름도이다.
우선, 단계(810)에서 객체를 인식하는 장치는 연속된 프레임의 객체 이미지를 획득할 수 있다.
그리고 단계(811)에서 객체를 인식하는 장치는 현재 프레임 이미지를 입력 이미지로 선택할 수 있다.
이어서 단계(820)에서 객체를 인식하는 장치는 입력 이미지에 대한 객체 인식을 수행할 수 있다. 예를 들어, 단계(821)에서 객체를 인식하는 장치는 입력 이미지에 대한 일부 레이어의 출력을 저장할 수 있다. 입력 이미지로부터 일부 레이어에 기초한 출력은 기준 중간 데이터라고 나타낼 수 있다. 단계(822)에서 객체를 인식하는 장치는 입력 이미지에 대한 객체 모델의 출력을 산출할 수 있다. 입력 이미지로부터 객체 모델에 기초한 출력은 기준 출력 데이터라고 나타낼 수 있다. 단계(823)에서 객체를 인식하는 장치는 입력 이미지로부터 객체 모델에 기초한 출력이 등록에 매칭하는 지 여부를 결정할 수 있다.
객체를 인식하는 장치는 객체 모델에 기초하여 입력 이미지로부터 추출된 기준 출력 데이터에 매칭하는 등록 데이터가 식별되지 않는 경우에 응답하여, 객체 인식이 실패한 것으로 결정할 수 있다. 객체를 인식하는 장치는 복수의 프레임으로 구성되는 객체 이미지 중 한 프레임에 대응하는 입력 이미지에 대한, 객체 모델에 기초한 인식이 실패하는 경우에 응답하여, 새로운 객체 이미지를 획득할 수 있다.
그리고 단계(830)에서 객체를 인식하는 장치는 입력 이미지에 대한 라이브니스를 검사할 수 있다. 예를 들어, 객체를 인식하는 장치는 입력 이미지가 라이브니스를 가지는 지 여부를 결정함으로써, 입력 이미지가 위조 이미지인 지 여부를 결정할 수 있다.
이어서 단계(860)에서 객체를 인식하는 장치는 라이브니스 검사가 성공한 경우, 해당 입력 이미지에 대한 인식이 성공한 것으로 결정할 수 있다.
그리고 단계(812)에서 객체를 인식하는 장치는 객체 인식이 성공한 후 라이브니스 검증이 실패한 경우, 다음 프레임 이미지를 선택할 수 있다. 객체를 인식하는 장치는 입력 이미지의 다음 프레임에 대응하는 이미지를 대상 이미지로 결정할 수 있다.
이어서 단계(830)에서 객체를 인식하는 장치는 대상 이미지에 대한 객체 인식을 수행할 수 있다. 예를 들어, 단계(831)에서 객체를 인식하는 장치는 대상 이미지에 대하여 일부 레이어의 출력을 산출할 수 있다. 대상 이미지로부터 일부 레이어에 기초한 출력은 대상 중간 데이터라고 나타낼 수 있다.
그리고 단계(840)에서 객체를 인식하는 장치는 입력 이미지 및 대상 이미지의 중간 출력이 매칭하는지 여부를 결정할 수 있다. 일 실시예에 따르면, 객체를 인식하는 장치는 대상 중간 데이터 및 기준 중간 데이터가 서로 매칭하는 지 여부를 결정할 수 있다. 예를 들어, 객체를 인식하는 장치는 대상 중간 데이터 및 기준 중간 데이터 간의 매칭 스코어(matching score)를 산출할 수 있다. 객체를 인식하는 장치는 매칭 스코어가 중간 임계(intermediate threshold)를 초과하는 경우에 응답하여, 대상 이미지가 입력 이미지와 동일한 객체를 포함하는 것으로 결정할 수 있다. 중간 임계의 값은 설계에 따라 결정될 수 있다.
이어서 단계(832)에서 객체를 인식하는 장치는 대상 이미지에 대한 나머지 레이어의 출력을 산출할 수 있다. 일 실시예에 따르면 객체를 인식하는 장치는 기준 중간 데이터를 이용한 검증이 실패한 경우에 응답하여, 객체 모델에 기초하여 대상 이미지로부터 대상 출력 데이터를 산출할 수 있다. 예를 들어, 객체를 인식하는 장치는 대상 중간 데이터를 나머지 레이어로 전파시킴으로써, 대상 출력 데이터를 산출할 수 있다.
그리고 단계(833)에서 객체를 인식하는 장치는 대상 이미지와 연관된 출력이 등록에 매칭하는 지 여부를 결정할 수 있다. 예를 들어, 객체를 인식하는 장치는 대상 출력 데이터에 매칭하는 등록 데이터를 검색할 수 있다. 객체를 인식하는 장치는 산출된 대상 출력 데이터에 매칭하는 등록 데이터가 등록 데이터베이스에 존재하는 경우에 응답하여, 대상 이미지가 식별된 것으로 결정할 수 있다.
이어서 단계(850)에서 객체를 인식하는 장치는 대상 이미지에 기초한 객체 인식이 성공한 경우에 대상 이미지의 라이브니스를 검사할 수 있다. 예를 들어, 객체를 인식하는 장치는 단계(840)에서 대상 이미지로부터 추출된 대상 중간 데이터 및 입력 이미지로부터 추출된 기준 중간 데이터가 매칭하는 경우 대상 이미지의 라이브니스를 검사할 수 있다. 또한, 객체를 인식하는 장치는 단계(833)에서 대상 이미지로부터 추출된 대상 출력 데이터에 매칭하는 등록 데이터가 존재하는 경우 대상 이미지의 라이브니스를 검사할 수 있다.
일 실시예에 따르면 객체를 인식하는 장치는 대상 이미지에 대하여 라이브니스 스코어를 산출할 수 있고, 산출된 라이브니스 스코어가 라이브니스 임계를 초과하는 지 여부를 결정할 수 있다. 객체를 인식하는 장치는 대상 이미지의 라이브니스 스코어가 라이브니스 임계를 초과하는 경우에 응답하여, 대상 이미지가 라이브니스를 가지는 것으로 결정할 수 있다.
다만, 객체를 인식하는 장치는 단계(833)에서 대상 이미지가 등록되지 않은 것으로 판단된 경우, 인식이 최종적으로 실패한 것으로 결정할 수 있다. 이후, 객체를 인식하는 장치는 단계(810)로 되돌아가 새로운 객체 이미지를 획득할 수 있다. 예를 들어, 객체를 인식하는 장치는 산출된 대상 출력 데이터에 매칭하는 등록 데이터가 등록 데이터베이스에 존재하지 않는 경우에 응답하여, 새로운 객체 이미지를 획득할 수 있다.
또한, 객체를 인식하는 장치는 단계(850)에서 대상 이미지에 대한 라이브니스 검사가 실패한 경우, 또 다른 프레임의 이미지에 대하여 객체 인식을 수행할 수 있다. 예를 들어, 객체를 인식하는 장치는 대상 이미지에 대한 라이브니스 검사가 실패한 경우, 현재 이미지의 그 다음 프레임을 대상 이미지로 변경하여 선택할 수 있다. 일 실시예에 따르면 객체를 검증하는 장치는 대상 이미지에 대한 추가 검증이 실패하는 경우에 응답하여, 대상 이미지의 다음 프레임에 대응하는 이미지로부터 일부 레이어에 기초한 대상 중간 데이터를 추출할 수 있다. 객체를 검증하는 장치는 대상 중간 데이터 및 기준 중간 데이터에 기초하여 다음 프레임에 대응하는 이미지를 검증할 수 있다.
단계(860)에서 객체를 인식하는 장치는 객체 이미지에 대한 인식 및 추가 검증이 유효한 경우에 응답하여, 인식이 성공한 것으로 최종적으로 결정할 수 있다. 예를 들어, 객체를 인식하는 장치는 입력 이미지가 등록 데이터베이스에 등록된 것으로 식별되고, 입력 이미지 자체가 라이브니스를 가지는 것으로 결정된 경우, 입력 이미지의 인식이 성공한 것으로 최종적으로 결정할 수 있다. 또한, 객체를 인식하는 장치는 대상 이미지가 입력 이미지에 매칭되고, 대상 이미지 자체가 라이브니스를 가지는 것으로 결정된 경우, 대상 이미지의 인식이 성공한 것으로 최종적으로 결정할 수 있다.
객체를 인식하는 장치는 상술한 단계들(820, 821, 822, 823, 830, 831, 832, 833)에 대응하는 동작을 동일한 파라미터를 가지도록 트레이닝된 객체 모델에 기초하여 수행할 수 있다.
일 실시예에 따른 객체를 인식하는 장치는 첫번째 식별이 유효하나 추가 검증이 유효하지 않은 경우, 그 이후로는 첫번째 식별에서 성공한 결과에 기초하여 객체 모델의 일부 레이어를 이용함으로써 대상 이미지의 식별에 소요되는 시간을 단축할 수 있다.
예를 들어, 객체를 인식하는 장치는 일부 레이어에 기초하여 추출된 대상 이미지의 저레벨 특징 및 입력 이미지의 저레벨 특징을 비교하여, 두 이미지에 나타난 객체의 동일성을 판단할 수 있다. 객체를 인식하는 장치는 대상 이미지 및 입력 이미지 간의 동일성이 검증되는 경우, 대상 이미지의 라이브니스를 추가 검증할 수 있다. 따라서, 객체를 인식하는 장치는 대상 이미지의 유효한 라이브니스를 통해 입력 이미지의 라이브니스도 유효한 것으로 결정할 수 있고, 입력 이미지에 대해 미리 식별된 사용자가 인식된 것으로 최종적으로 결정할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable 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), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다.  예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.  
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
200: 객체를 인식하는 장치
210: 이미지 획득부
220: 프로세서
230: 메모리

Claims (20)

  1. 객체(object)를 인식하는 방법에 있어서,
    객체 모델(object model)에 기초한 입력 이미지(input image)에 대한 객체 인식 성공 후 추가 검증(additional verification)이 실패한 경우에 응답하여, 상기 입력 이미지로부터 상기 객체 모델의 일부 레이어(layer)에 기초하여 추출된 기준 중간 데이터(reference intermediate data)를 이용하여 상기 입력 이미지와 다른 프레임에 대응하는 대상 이미지(target image)를 검증하는 단계; 및
    상기 대상 이미지가 검증된 경우에 응답하여, 상기 대상 이미지에 대한 추가 검증을 수행하는 단계
    를 포함하는 객체를 인식하는 방법.
  2. 제1항에 있어서,
    상기 기준 중간 데이터를 이용하여 상기 입력 이미지와 다른 프레임에 대응하는 대상 이미지를 검증하는 단계는,
    상기 기준 중간 데이터를 이용하여, 상기 대상 이미지가 지시하는 객체가 상기 입력 이미지가 지시하는 객체와 동일한 지 여부를 결정하는 단계
    를 포함하는 객체를 인식하는 방법.
  3. 제1항에 있어서,
    상기 기준 중간 데이터를 이용하여 상기 입력 이미지와 다른 프레임에 대응하는 대상 이미지를 검증하는 단계는,
    상기 대상 이미지로부터 상기 일부 레이어에 기초하여 추출된 대상 중간 데이터(target intermediate data)가 상기 기준 중간 데이터에 매칭하는지 판단하는 단계
    를 포함하는 객체를 인식하는 방법.
  4. 제3항에 있어서,
    상기 대상 중간 데이터가 상기 기준 중간 데이터에 매칭하는지 판단하는 단계는,
    상기 대상 중간 데이터 및 상기 기준 중간 데이터 간의 매칭 스코어(matching score)를 산출하는 단계; 및
    상기 매칭 스코어가 중간 임계(intermediate threshold)를 초과하는 경우에 응답하여, 상기 대상 이미지가 상기 입력 이미지와 동일한 객체를 포함하는 것으로 결정하는 단계
    를 포함하는 객체를 인식하는 방법.
  5. 제1항에 있어서,
    상기 추가 검증을 수행하는 단계는,
    상기 대상 이미지에 포함된 객체가 실제 생체(actual living body)인 지 여부를 나타내는 라이브니스(liveness)를, 상기 대상 이미지가 가지는 지 여부를 검증하는 단계
    를 포함하는 객체를 인식하는 방법.
  6. 제5항에 있어서,
    상기 대상 이미지가 가지는 지 여부를 검증하는 단계는,
    라이브니스 모델(liveness model)에 기초하여, 상기 대상 이미지에 대한 라이브니스 스코어(liveness score)를 산출하는 단계; 및
    상기 라이브니스 스코어가 라이브니스 임계(liveness threshold)를 초과하는 경우에 응답하여, 상기 대상 이미지가 라이브니스를 가지는 것으로 결정하는 단계
    를 포함하는 객체를 인식하는 방법.
  7. 제1항에 있어서,
    복수의 프레임들로 구성되는 객체 이미지를 획득하는 단계; 및
    상기 객체 이미지 중 한 프레임에 대응하는 입력 이미지를, 복수의 레이어들을 포함하는 객체 모델에 기초하여, 인식하는 단계
    를 더 포함하는 객체를 인식하는 방법.
  8. 제7항에 있어서,
    상기 입력 이미지에 대한 객체 인식이 성공한 경우에 응답하여, 상기 입력 이미지에 대하여 추가 검증을 수행하는 단계
    를 더 포함하는 객체를 인식하는 방법.
  9. 제7항에 있어서,
    상기 객체 이미지 중 한 프레임에 대응하는 입력 이미지를, 복수의 레이어들을 포함하는 객체 모델에 기초하여, 인식하는 단계는,
    상기 객체 모델에 기초하여, 상기 입력 이미지로부터 기준 출력 데이터를 추출하는 단계; 및
    상기 기준 출력 데이터에 매칭하는 등록 데이터가 등록 데이터베이스에 존재하는 경우에 응답하여, 상기 입력 이미지가 식별된(identified) 것으로 결정하는 단계
    를 포함하는 객체를 인식하는 방법.
  10. 제9항에 있어서,
    상기 입력 이미지가 식별된 것으로 결정하는 단계는,
    상기 기준 출력 데이터 및 상기 등록 데이터 간의 매칭 스코어를 산출하는 단계; 및
    상기 매칭 스코어가 출력 임계(output threshold)를 초과하는 경우에 응답하여, 상기 입력 이미지의 객체가 상기 등록 데이터의 객체와 동일한 것으로 결정하는 단계
    를 포함하는 객체를 인식하는 방법.
  11. 제7항에 있어서,
    상기 객체 이미지 중 한 프레임에 대응하는 입력 이미지를, 복수의 레이어들을 포함하는 객체 모델에 기초하여, 인식하는 단계는,
    상기 객체 모델의 일부 레이어에 기초하여, 상기 입력 이미지로부터 추출한 기준 중간 데이터를 저장하는 단계
    를 포함하는 객체를 인식하는 방법.
  12. 제1항에 있어서,
    상기 기준 중간 데이터를 이용하여 상기 입력 이미지와 다른 프레임에 대응하는 대상 이미지를 검증하는 단계는,
    상기 기준 중간 데이터를 이용한 검증이 실패한 경우에 응답하여, 상기 객체 모델에 기초하여 상기 대상 이미지로부터 대상 출력 데이터를 산출하는 단계; 및
    상기 산출된 대상 출력 데이터에 매칭하는 등록 데이터가 등록 데이터베이스에 존재하는 경우에 응답하여, 상기 대상 이미지가 식별된 것으로 결정하는 단계
    를 포함하는 객체를 인식하는 방법.
  13. 제12항에 있어서,
    상기 기준 중간 데이터를 이용하여 상기 입력 이미지와 다른 프레임에 대응하는 대상 이미지를 검증하는 단계는,
    상기 산출된 대상 출력 데이터에 매칭하는 등록 데이터가 상기 등록 데이터베이스에 존재하지 않는 경우에 응답하여, 새로운 객체 이미지를 획득하는 단계
    를 더 포함하는 객체를 인식하는 방법.
  14. 제1항에 있어서,
    상기 기준 중간 데이터를 이용하여 상기 입력 이미지와 다른 프레임에 대응하는 대상 이미지를 검증하는 단계는,
    객체 이미지 중에서 상기 입력 이미지에 대응하는 프레임의 다음 프레임을 상기 대상 이미지로 선택하는 단계
    를 포함하는 객체를 인식하는 방법.
  15. 제1항에 있어서,
    상기 기준 중간 데이터를 이용하여 상기 입력 이미지와 다른 프레임에 대응하는 대상 이미지를 검증하는 단계는,
    상기 객체 모델을 구성하는 n개의 레이어들 중 m번째 레이어에 기초하여 상기 대상 이미지로부터 추출된 대상 중간 데이터 및 상기 m번째 레이어에 기초하여 상기 입력 이미지로부터 추출된 기준 중간 데이터를 비교하는 단계
    를 포함하는 객체를 인식하는 방법.
  16. 제1항에 있어서,
    상기 객체 모델에 기초하여 상기 입력 이미지로부터 추출된 기준 출력 데이터 및 등록 데이터 간의 매칭 스코어가 출력 임계를 초과하는 경우에 응답하여, 상기 입력 이미지에 대한 인식이 성공한 것으로 결정하는 단계
    를 더 포함하고,
    상기 기준 중간 데이터를 이용하여 상기 입력 이미지와 다른 프레임에 대응하는 대상 이미지를 검증하는 단계는,
    상기 기준 중간 데이터 및 상기 입력 이미지로부터 추출된 대상 중간 데이터 간의 매칭 스코어가 중간 임계를 초과하는 지 여부를 판단하는 단계
    를 포함하며,
    상기 중간 임계는 상기 출력 임계보다 큰,
    객체를 인식하는 방법.
  17. 제1항에 있어서,
    복수의 프레임으로 구성되는 객체 이미지 중 한 프레임에 대응하는 입력 이미지에 대한, 상기 객체 모델에 기초한 인식이 실패하는 경우에 응답하여, 새로운 객체 이미지를 획득하는 단계
    를 더 포함하는 객체를 인식하는 방법.
  18. 제1항에 있어서,
    상기 대상 이미지에 대한 추가 검증이 실패하는 경우에 응답하여, 상기 대상 이미지의 다음 프레임에 대응하는 이미지로부터 상기 일부 레이어에 기초한 대상 중간 데이터를 추출하는 단계; 및
    상기 대상 중간 데이터 및 상기 기준 중간 데이터에 기초하여 상기 다음 프레임에 대응하는 이미지를 검증하는 단계
    를 더 포함하는 객체를 인식하는 방법.
  19. 제1항 내지 제18항 중 어느 한 항의 방법을 수행하기 위한 명령어들을 포함하는 하나 이상의 프로그램을 저장한 컴퓨터 판독 가능 기록 매체.
  20. 객체를 인식하는 장치에 있어서,
    객체 모델을 저장하는 메모리; 및
    상기 객체 모델에 기초한 입력 이미지에 대한 객체 인식 성공 후 추가 검증이 실패한 경우에 응답하여, 상기 입력 이미지로부터 상기 객체 모델의 일부 레이어에 기초하여 추출된 기준 중간 데이터를 이용하여 상기 입력 이미지와 다른 프레임에 대응하는 대상 이미지를 검증하고, 상기 대상 이미지가 검증된 경우에 응답하여, 상기 대상 이미지에 대한 추가 검증을 수행하는 프로세서
    를 포함하는 객체를 인식하는 장치.
KR1020170173573A 2017-12-15 2017-12-15 객체를 인식하는 장치 및 방법 KR102374747B1 (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020170173573A KR102374747B1 (ko) 2017-12-15 2017-12-15 객체를 인식하는 장치 및 방법
US16/176,440 US10853678B2 (en) 2017-12-15 2018-10-31 Object recognition method and apparatus
CN201811467621.5A CN109934083A (zh) 2017-12-15 2018-12-03 对象识别方法和设备
EP18210386.1A EP3499412B1 (en) 2017-12-15 2018-12-05 Object recognition and liveness detection and apparatus
JP2018230088A JP7163159B2 (ja) 2017-12-15 2018-12-07 オブジェクト認識装置及び方法
US17/089,902 US11423702B2 (en) 2017-12-15 2020-11-05 Object recognition method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170173573A KR102374747B1 (ko) 2017-12-15 2017-12-15 객체를 인식하는 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20190072314A KR20190072314A (ko) 2019-06-25
KR102374747B1 true KR102374747B1 (ko) 2022-03-15

Family

ID=64606835

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170173573A KR102374747B1 (ko) 2017-12-15 2017-12-15 객체를 인식하는 장치 및 방법

Country Status (5)

Country Link
US (2) US10853678B2 (ko)
EP (1) EP3499412B1 (ko)
JP (1) JP7163159B2 (ko)
KR (1) KR102374747B1 (ko)
CN (1) CN109934083A (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3317815A4 (en) * 2015-06-30 2019-02-20 NEC Corporation of America FACE RECOGNITION SYSTEM
KR102374747B1 (ko) * 2017-12-15 2022-03-15 삼성전자주식회사 객체를 인식하는 장치 및 방법
JP6806107B2 (ja) * 2018-03-20 2021-01-06 日本電気株式会社 障害物認識支援装置、障害物認識支援方法、プログラム
EP3751580B1 (en) * 2019-06-11 2024-04-03 Siemens Healthineers AG Hemodynamic analysis of vessels using recurrent neural network
US11455531B2 (en) * 2019-10-15 2022-09-27 Siemens Aktiengesellschaft Trustworthy predictions using deep neural networks based on adversarial calibration
CN111062883B (zh) * 2019-12-04 2022-10-18 RealMe重庆移动通信有限公司 图像处理方法及装置、计算机可读介质和电子设备
US11462050B2 (en) * 2019-12-19 2022-10-04 Certify Global Inc. Systems and methods of liveness determination
CN111462083B (zh) * 2020-03-31 2023-05-02 北京东软医疗设备有限公司 图像处理方法、装置、电子设备及存储介质
JP2022546885A (ja) * 2020-08-01 2022-11-10 商▲湯▼国▲際▼私人有限公司 目標対象認識方法及び装置
JP2022186333A (ja) * 2021-06-04 2022-12-15 ソニーセミコンダクタソリューションズ株式会社 撮像装置、撮像方法および撮像プログラム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101676101B1 (ko) 2014-09-29 2016-11-15 동명대학교산학협력단 동적보상퍼지신경네트워크(dcfnn)를 기반으로 한 얼굴인식 알고리즘

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100715323B1 (ko) 2004-10-11 2007-05-07 (주)버뮤다정보기술 얼굴인식기술을 이용한 전자금융 부정 거래 방지 장치 및방법
JP5045344B2 (ja) * 2007-09-28 2012-10-10 ソニー株式会社 登録装置、登録方法、認証装置及び認証方法
JP5428835B2 (ja) * 2009-12-21 2014-02-26 富士通株式会社 署名装置、署名方法、および署名プログラム
KR101172898B1 (ko) 2010-03-10 2012-08-09 홍익대학교 산학협력단 얼굴 인식 시스템에서의 위조 검출 방법
ES2495425T3 (es) * 2011-07-11 2014-09-17 Accenture Global Services Limited Detección de vida
US8542879B1 (en) * 2012-06-26 2013-09-24 Google Inc. Facial recognition
CN102831392B (zh) 2012-07-09 2015-06-24 哈尔滨工业大学 一种远距离虹膜跟踪与采集装置及其方法
KR102057947B1 (ko) * 2013-04-01 2019-12-20 삼성전자주식회사 사용자 인증을 수행하는 디스플레이 장치 및 그 사용자 인증 방법
US9003196B2 (en) * 2013-05-13 2015-04-07 Hoyos Labs Corp. System and method for authorizing access to access-controlled environments
CN103886301B (zh) 2014-03-28 2017-01-18 北京中科奥森数据科技有限公司 一种人脸活体检测方法
SG10201402448RA (en) * 2014-05-19 2015-12-30 Ats Group Ip Holdings Ltd Face recognition using concealed mobile camera
CN104284240B (zh) 2014-09-17 2018-02-02 小米科技有限责任公司 视频浏览方法及装置
CN105518710B (zh) * 2015-04-30 2018-02-02 北京旷视科技有限公司 视频检测方法、视频检测系统以及计算机程序产品
CN106330837A (zh) 2015-06-30 2017-01-11 阿里巴巴集团控股有限公司 一种可疑网络用户的识别方法和装置
US9672409B2 (en) * 2015-07-03 2017-06-06 Fingerprint Cards Ab Apparatus and computer-implemented method for fingerprint based authentication
US9996732B2 (en) * 2015-07-20 2018-06-12 International Business Machines Corporation Liveness detector for face verification
KR102261833B1 (ko) * 2015-11-04 2021-06-08 삼성전자주식회사 인증 방법 및 장치, 및 인식기 학습 방법 및 장치
KR102554149B1 (ko) * 2015-11-16 2023-07-12 삼성전자주식회사 오브젝트 인식 방법 및 장치, 인식 모델 학습 방법 및 장치
US10860887B2 (en) 2015-11-16 2020-12-08 Samsung Electronics Co., Ltd. Method and apparatus for recognizing object, and method and apparatus for training recognition model
CN105512632B (zh) * 2015-12-09 2019-04-05 北京旷视科技有限公司 活体检测方法及装置
US10083378B2 (en) * 2015-12-28 2018-09-25 Qualcomm Incorporated Automatic detection of objects in video images
US10102358B2 (en) * 2015-12-29 2018-10-16 Sensory, Incorporated Face-controlled liveness verification
US10762037B2 (en) 2016-03-25 2020-09-01 Hitachi, Ltd Data processing system
KR102483642B1 (ko) * 2016-08-23 2023-01-02 삼성전자주식회사 라이브니스 검사 방법 및 장치
CN106529571B (zh) * 2016-10-14 2018-04-20 广州视源电子科技股份有限公司 基于神经网络的多层图像特征提取建模、图像识别方法及装置
EP3534328A4 (en) * 2016-10-31 2019-11-06 Nec Corporation IMAGE PROCESSING DEVICE, IMAGE PROCESSING METHOD, FACIAL RECOGNITION SYSTEM, PROGRAM, AND RECORDING MEDIUM
CN106934376B (zh) * 2017-03-15 2019-10-18 成都汇亿诺嘉文化传播有限公司 一种图像识别方法、装置及移动终端
US11010595B2 (en) * 2017-03-23 2021-05-18 Samsung Electronics Co., Ltd. Facial verification method and apparatus
KR102387571B1 (ko) * 2017-03-27 2022-04-18 삼성전자주식회사 라이브니스 검사 방법 및 장치
US10679083B2 (en) * 2017-03-27 2020-06-09 Samsung Electronics Co., Ltd. Liveness test method and apparatus
KR102324468B1 (ko) * 2017-03-28 2021-11-10 삼성전자주식회사 얼굴 인증을 위한 장치 및 방법
KR102370063B1 (ko) * 2017-03-28 2022-03-04 삼성전자주식회사 얼굴 인증 방법 및 장치
KR102359558B1 (ko) * 2017-03-28 2022-02-09 삼성전자주식회사 얼굴 인증 방법 및 장치
CN108664782B (zh) * 2017-03-28 2023-09-12 三星电子株式会社 面部验证方法和设备
KR102299847B1 (ko) * 2017-06-26 2021-09-08 삼성전자주식회사 얼굴 인증 방법 및 장치
CN107316029B (zh) * 2017-07-03 2018-11-23 腾讯科技(深圳)有限公司 一种活体验证方法及设备
EP3447684A1 (en) * 2017-08-22 2019-02-27 Eyn Limited Verification method and system
KR102374747B1 (ko) * 2017-12-15 2022-03-15 삼성전자주식회사 객체를 인식하는 장치 및 방법
KR102455633B1 (ko) * 2017-12-21 2022-10-17 삼성전자주식회사 라이브니스 검사 방법 및 장치
US11023757B2 (en) * 2018-02-14 2021-06-01 Samsung Electronics Co., Ltd. Method and apparatus with liveness verification
CN108764052B (zh) * 2018-04-28 2020-09-11 Oppo广东移动通信有限公司 图像处理方法、装置、计算机可读存储介质和电子设备

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101676101B1 (ko) 2014-09-29 2016-11-15 동명대학교산학협력단 동적보상퍼지신경네트워크(dcfnn)를 기반으로 한 얼굴인식 알고리즘

Also Published As

Publication number Publication date
US20210056332A1 (en) 2021-02-25
EP3499412A1 (en) 2019-06-19
US10853678B2 (en) 2020-12-01
US20190188510A1 (en) 2019-06-20
JP2019109885A (ja) 2019-07-04
EP3499412B1 (en) 2023-02-01
CN109934083A (zh) 2019-06-25
KR20190072314A (ko) 2019-06-25
JP7163159B2 (ja) 2022-10-31
US11423702B2 (en) 2022-08-23

Similar Documents

Publication Publication Date Title
KR102374747B1 (ko) 객체를 인식하는 장치 및 방법
KR102564855B1 (ko) 표정 변화에 강인한 객체 및 표정 인식 장치 및 방법, 객체 및 표정 트레이닝 장치 및 방법
KR102486699B1 (ko) 영상 인식 방법, 영상 검증 방법, 장치, 및 영상 인식 및 검증에 대한 학습 방법 및 장치
KR102608470B1 (ko) 데이터 인식 장치 및 방법과 트레이닝 장치 및 방법
US11157760B2 (en) Liveness test method and apparatus
KR102439938B1 (ko) 사용자 인증을 위한 멀티-모달 퓨전 방법 및 사용자 인증 방법
KR102501838B1 (ko) 심전도 신호를 이용한 인증 장치 및 방법
KR101997479B1 (ko) 사용자 인증을 위한 생체 영역을 검출하는 방법 및 장치
KR20160061856A (ko) 객체 인식 방법 및 장치, 및 인식기 학습 방법 및 장치
KR102415504B1 (ko) 사용자 인증을 위한 등록 데이터베이스의 갱신 방법 및 장치
KR20170002892A (ko) 위조 지문 검출 방법 및 장치, 지문 인식 방법 및 장치
KR102558741B1 (ko) 사용자 등록 장치 및 방법
KR102427853B1 (ko) 사용자 인증을 위한 등록 데이터베이스의 적응적 갱신 방법 및 장치
KR102458241B1 (ko) 사용자 인식 장치 및 방법
KR102570070B1 (ko) 일반화된 사용자 모델을 이용한 사용자 인증 방법 및 장치
KR20200083119A (ko) 사용자 인증 장치 및 방법
CN111382666A (zh) 具有用户验证的设备和方法
KR102261833B1 (ko) 인증 방법 및 장치, 및 인식기 학습 방법 및 장치
KR20200024602A (ko) 사용자 단말의 학습 방법 및 장치
KR20200110064A (ko) 변환 모델을 이용한 인증 방법 및 장치
WO2020065954A1 (ja) 認証装置、認証方法および記憶媒体
US20220044014A1 (en) Iris authentication device, iris authentication method and recording medium
KR20170057118A (ko) 오브젝트 인식 방법 및 장치, 인식 모델 학습 방법 및 장치
KR20210018586A (ko) 등장인물의 생체특징을 이용하는 비디오 콘텐트 식별 방법 및 장치
KR20220136009A (ko) 입력 데이터를 분류하는 방법과 장치 및 입력 데이터의 도용 여부를 분류하는 방법

Legal Events

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