KR102578583B1 - 얼굴 인식을 이용하는 전자 장치 및 그 동작 방법 - Google Patents

얼굴 인식을 이용하는 전자 장치 및 그 동작 방법 Download PDF

Info

Publication number
KR102578583B1
KR102578583B1 KR1020210184698A KR20210184698A KR102578583B1 KR 102578583 B1 KR102578583 B1 KR 102578583B1 KR 1020210184698 A KR1020210184698 A KR 1020210184698A KR 20210184698 A KR20210184698 A KR 20210184698A KR 102578583 B1 KR102578583 B1 KR 102578583B1
Authority
KR
South Korea
Prior art keywords
user
images
user device
authentication
face
Prior art date
Application number
KR1020210184698A
Other languages
English (en)
Other versions
KR20230095329A (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 KR1020210184698A priority Critical patent/KR102578583B1/ko
Publication of KR20230095329A publication Critical patent/KR20230095329A/ko
Application granted granted Critical
Publication of KR102578583B1 publication Critical patent/KR102578583B1/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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0012Biomedical image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • 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/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/761Proximity, similarity or dissimilarity measures
    • 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/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
  • Radiology & Medical Imaging (AREA)
  • Quality & Reliability (AREA)
  • User Interface Of Digital Computer (AREA)
  • Collating Specific Patterns (AREA)

Abstract

본 개시의 일 실시예에 따르면, 사용자 장치의 동작 방법은, 상기 사용자 장치의 카메라를 통하여 사용자의 얼굴을 포함하는 제1 이미지를 획득하는 단계; 제1 인공지능 모델을 이용하여, 상기 제1 이미지로부터 상기 사용자의 얼굴 영역을 검출하는 단계; 제2 인공지능 모델을 이용하여, 상기 얼굴 영역에 대한 제1 인증을 수행하는 단계; 상기 제1 인증을 성공하는 경우, 상기 제1 인증의 성공을 나타내는 알림을 제공하고, 상기 사용자에 대응하는 특정 촬영 방법에 관한 히든 키를 이용하여 상기 사용자에 대한 제2 인증을 수행하는 단계; 및 상기 제2 인증을 성공하는 경우, 미리 정해진 특정 기능을 수행하는 단계;를 포함할 수 있다. 그 밖의 다양한 실시예가 가능하다.

Description

얼굴 인식을 이용하는 전자 장치 및 그 동작 방법{ELECTRONIC DEVICE FOR USING FACE RECOGNITION AND METHOD FOR OPERATING THE SAME}
본 개시는 얼굴 인식을 이용하는 전자 장치 및 그 동작 방법에 관한 것이다.
얼굴 인식(또는 안면 인식)(Face Recognition) 기술이란 열적외선 촬영, 3차원 측정, 골격 분석 등을 통해 얼굴 형태나 열상(Thermal Image)을 스캔·저장·인식하는 기술로, 카메라에 잡힌 얼굴 이미지와 저장된 사진 DB를 비교하여 신원을 확인하는 데에 이용되어 왔다.
특히 최근에는, 공항이나 터미널, 은행거래 등에서 인증 절차를 간소화하는 방안으로 얼굴 인식 기술을 활용하고 있다.
본 개시의 일 실시예에 따르면, 얼굴 인식을 위한 복수의 인공지능 모델들을 이용하여 사용자 인증을 수행하고, 사용자 인증을 통과한 사용자에게 사용자 장치의 사용 권한을 부여함으로써, 보안성을 높이는 전자 장치 및 그 동작 방법을 제공하는 것에 있다.
본 개시의 일 실시예에 따르면, 안티 스푸핑 기법에 기반하여 획득된 사용자의 얼굴을 포함하는 이미지들을 인증함으로써, 악의를 가진 사용자에 의해 사용자 장치가 사용되는 문제점을 방지하는 전자 장치 및 동작 방법을 제공하는 것에 있다.
본 출원이 해결하고자 하는 과제가 상술한 과제로 제한되는 것은 아니며, 언급되지 아니한 과제들은 본 명세서 및 첨부된 도면으로부터 본 출원이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 개시의 일 실시예에 따르면, 사용자 장치의 동작 방법은, 상기 사용자 장치의 카메라를 통하여 사용자의 얼굴을 포함하는 제1 이미지를 획득하는 단계; 제1 인공지능 모델을 이용하여, 상기 제1 이미지로부터 상기 사용자의 얼굴 영역을 검출하는 단계; 제2 인공지능 모델을 이용하여, 상기 얼굴 영역에 대한 제1 인증을 수행하는 단계; 상기 제1 인증을 성공하는 경우, 상기 제1 인증의 성공을 나타내는 알림을 제공하고, 상기 사용자에 대응하는 특정 촬영 방법에 관한 히든 키를 이용하여 상기 사용자에 대한 제2 인증을 수행하는 단계; 및 상기 제2 인증을 성공하는 경우, 미리 정해진 특정 기능을 수행하는 단계;를 포함할 수 있다.
본 개시의 일 실시예에 따르면, 프로세서에 의해 실행 가능한 프로그램 코드를 저장하는 비일시적 컴퓨터 판독가능 매체에 있어서, 상기 프로그램 코드가 실행되는 경우 상기 프로그램 코드는 상기 프로세서가: 사용자 장치의 카메라를 통하여 사용자의 얼굴을 포함하는 제1 이미지를 획득하고, 제1 인공지능 모델을 이용하여, 상기 제1 이미지로부터 상기 사용자의 얼굴 영역을 검출하고, 제2 인공지능 모델을 이용하여, 상기 얼굴 영역에 대한 제1 인증을 수행하고, 상기 제1 인증을 성공하는 경우, 상기 제1 인증의 성공을 나타내는 알림을 제공하고, 상기 사용자에 대응하는 특정 촬영 방법에 관한 히든 키를 이용하여 상기 사용자에 대한 제2 인증을 수행하고, 상기 제2 인증을 성공하는 경우, 미리 정해진 특정 기능을 수행하도록 할 수 있다.
본 개시의 일 실시예에 따르면, 사용자 장치는, 카메라, 디스플레이부, 및 프로세서를 포함하고, 상기 프로세서는, 상기 카메라를 통하여 사용자의 얼굴을 포함하는 제1 이미지를 획득하고, 제1 인공지능 모델을 이용하여, 상기 제1 이미지로부터 상기 사용자의 얼굴 영역을 검출하고, 제2 인공지능 모델을 이용하여, 상기 얼굴 영역에 대한 제1 인증을 수행하고, 상기 제1 인증을 성공하는 경우, 상기 제1 인증의 성공을 나타내는 알림을 제공하고, 상기 사용자에 대응하는 특정 촬영 방법에 관한 히든 키를 이용하여 상기 사용자에 대한 제2 인증을 수행하고, 및 상기 제2 인증을 성공하는 경우, 미리 정해진 특정 기능을 수행하도록 설정될 수 있다.
과제의 해결 수단이 상술한 해결 수단들로 제한되는 것은 아니며, 언급되지 아니한 해결 수단들은 본 명세서 및 첨부된 도면으로부터 본 출원이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 개시의 일 실시예에 따르면, 복수의 인공지능 모델들을 이용하여 사용자 인증을 수행하고, 사용자 인증을 통과한 사용자에게 사용자 장치의 사용 권한을 부여함으로써, 보안성을 높일 수 있다.
본 개시의 일 실시예에 따르면, 안티 스푸핑 기법에 기반하여 획득된 사용자의 얼굴을 포함하는 이미지들을 인증함으로써, 악의를 가진 사용자에 의해 사용자 장치가 사용되는 문제점을 방지할 수 있다.
효과가 상술한 효과로 제한되는 것은 아니며, 언급되지 아니한 효과들은 본 명세서 및 첨부된 도면으로부터 본 출원이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.
도 1a는 본 개시의 일 실시예에 따른 사용자 장치의 구성의 일 예를 나타내는 블록도이다.
도 1b는 본 개시의 일 실시예에 따른 사용자 장치의 일 예를 나타내는 도면이다.
도 2는 본 개시의 일 실시예에 따른 사용자 장치의 동작을 설명하기 위한 흐름도이다.
도 3은 본 개시의 일 실시예에 따른 사용자 장치의 안티 스푸핑 동작의 일 예를 설명하기 위한 도면이다.
도 4는 본 개시의 일 실시예에 따른 사용자 장치의 안티 스푸핑 동작의 일 예를 설명하기 위한 도면이다.
도 5는 본 개시의 일 실시예에 따른 사용자 장치(100)의 사용자의 얼굴의 특징점을 정확하게 분석하기 위해, 사용자의 위치를 가이드하는 동작의 예를 설명하기 위한 도면이다.
도 6은 본 개시의 일 실시예에 따른 특징점의 예를 설명하기 위한 도면이다.
도 7a 내지 도 7c는 본 개시의 일 실시예에 따른 사용자 장치의 안티 스푸핑 동작의 일 예를 설명하기 위한 도면이다.
도 8은 본 개시의 일 실시예에 따른 사용자 장치의 안티 스푸핑 동작의 다른 일 예를 설명하기 위한 도면이다.
도 9는 본 개시의 일 실시예에 따른 사용자 장치의 제1 인증을 수행하는 동작의 일 예를 설명하기 위한 도면이다.
도 10은 본 개시의 일 실시예에 따른 사용자 장치의 출입문 제어 동작의 예를 설명하기 위한 도면이다.
도 11은 본 개시의 일 실시예에 따른 사용자 장치의 모션 감지 동작의 예를 설명하기 위한 도면이다.
도 12는 본 개시의 일 실시예에 따른 사용자 장치의 동작을 설명하기 위한 흐름도이다.
도 13은 본 개시의 일 실시예에 따른 기존에 등록된 기준 얼굴 이미지를 업데이트하는 실시예를 설명하기 위한 도면이다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성 요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 명세서의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다.
어떤 구성 요소가 다른 구성 요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성 요소가 다른 구성 요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는 중간에 다른 구성 요소가 존재하지 않는 것으로 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 개시에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
도 1a는 본 개시의 일 실시예에 따른 사용자 장치의 구성의 일 예를 나타내는 블록도이다.
도 1a를 참조하면, 사용자 장치(100)는 무선 통신부(110), 입력부(120), 센싱부(140), 출력부(150), 인터페이스부(160), 메모리(170), 프로세서(180) 및 전원 공급부(190)를 포함할 수 있다. 도 1a에 도시된 구성 요소들은 사용자 장치를 구현하는데 있어서 필수적인 것은 아니어서, 본 명세서 상에서 설명되는 사용자 장치는 위에서 열거된 구성 요소들 보다 많거나, 또는 적은 구성 요소들을 가질 수 있다.
무선 통신부(110)는 사용자 장치(100)와 무선 통신 시스템 사이, 사용자 장치(100)와 다른 사용자 장치(100) 사이, 또는 사용자 장치(100)와 외부 서버 사이의 무선 통신을 가능하게 하는 하나 이상의 모듈을 포함할 수 있다. 또한, 무선 통신부(110)는 사용자 장치(100)를 하나 이상의 네트워크에 연결하기 위하여, 방송 수신 모듈(111), 이동 통신 모듈(112), 무선 인터넷 모듈(113), 근거리 통신 모듈(114), 위치 정보 모듈(115) 중 적어도 하나를 포함할 수 있다.
입력부(120)는 영상 신호 입력을 위한 카메라(121) 또는 영상 입력부, 오디오 신호 입력을 위한 마이크로폰(microphone, 122), 또는 오디오 입력부, 사용자로부터 정보를 입력받기 위한 사용자 입력부(123, 예를 들어, 터치키(touch key), 푸시키(mechanical key) 등)를 포함할 수 있다. 입력부(120)에서 수집한 음성 데이터나 이미지 데이터는 분석되어 사용자의 제어 명령으로 처리될 수 있다.
센싱부(140)는 사용자 장치(100) 내 정보, 사용자 장치(100)를 둘러싼 주변 환경 정보 및 사용자 정보 중 적어도 하나를 센싱하기 위한 하나 이상의 센서를 포함할 수 있다. 예를 들어, 센싱부(140)는 근접 센서(141, proximity sensor), 조도 센서(142, illumination sensor), 터치 센서(touch sensor), 가속도 센서(acceleration sensor), 자기 센서(magnetic sensor), 중력 센서(G-sensor), 자이로스코프 센서(gyroscope sensor), 모션 센서(motion sensor), RGB 센서, 적외선 센서(IR 센서: infrared sensor), 지문 인식 센서(finger scan sensor), 초음파 센서(ultrasonic sensor), 광 센서(optical sensor, 예를 들어, 카메라(121 참조)), 마이크로폰(microphone, 122 참조), 배터리 게이지(battery gauge), 환경 센서(예를 들어, 기압계, 습도계, 온도계, 방사능 감지 센서, 열 감지 센서, 가스 감지 센서 등), 화학 센서(예를 들어, 전자 코, 헬스 케어 센서, 생체 인식 센서 등) 중 적어도 하나를 포함할 수 있다. 한편, 본 명세서에 개시된 사용자 장치는 이러한 센서들 중 적어도 둘 이상의 센서에서 센싱되는 정보들을 조합하여 활용할 수 있다.
출력부(150)는 시각, 청각 또는 촉각 등과 관련된 출력을 발생시키기 위한 것으로, 디스플레이부(151), 음향 출력부(152), 햅팁 모듈(153), 광 출력부(154) 중 적어도 하나를 포함할 수 있다. 디스플레이부(151)는 터치 센서와 상호 레이어 구조를 이루거나 일체형으로 형성됨으로써, 터치 스크린을 구현할 수 있다. 이러한 터치 스크린은 사용자 장치(100)와 사용자 사이의 입력 인터페이스를 제공하는 사용자 입력부(123)로써 기능함과 동시에, 사용자 장치(100)와 사용자 사이의 출력 인터페이스를 제공할 수 있다.
인터페이스부(160)는 사용자 장치(100)에 연결되는 다양한 종류의 외부 기기와의 통로 역할을 수행한다. 이러한 인터페이스부(160)는 유/무선 헤드셋 포트(port), 외부 충전기 포트(port), 유/무선 데이터 포트(port), 메모리 카드(memory card) 포트, 식별 모듈이 구비된 장치를 연결하는 포트(port), 오디오 I/O(Input/Output) 포트(port), 비디오 I/O(Input/Output) 포트(port), 이어폰 포트(port) 중 적어도 하나를 포함할 수 있다. 사용자 장치(100)에서는 상기 인터페이스부(160)에 외부 기기가 연결되는 것에 대응하여, 연결된 외부 기기와 관련된 적절할 제어를 수행할 수 있다.
메모리(170)는 사용자 장치(100)의 다양한 기능을 지원하는 데이터를 저장한다. 메모리(170)는 사용자 장치(100)에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 사용자 장치(100)의 동작을 위한 데이터들, 명령어들을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는 무선 통신을 통해 외부 서버로부터 다운로드 될 수 있다. 또한 이러한 응용 프로그램 중 적어도 일부는 사용자 장치(100)의 기본적인 기능(예를 들어, 전화 착신, 발신 기능, 메시지 수신, 발신 기능)을 위하여 출고 당시부터 사용자 장치(100)상에 존재할 수 있다. 한편, 응용 프로그램은 메모리(170)에 저장되고, 사용자 장치(100) 상에 설치되어, 프로세서(180)에 의하여 상기 사용자 장치의 동작(또는 기능)을 수행하도록 구동될 수 있다.
프로세서(180)는 응용 프로그램과 관련된 동작 외에도, 통상적으로 사용자 장치(100)의 전반적인 동작을 제어한다. 프로세서(180)는 제어부(180)라 칭할 수 있다. 프로세서(180)는 위에서 살펴본 구성 요소들을 통해 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나 메모리(170)에 저장된 응용 프로그램을 구동함으로써, 사용자에게 적절한 정보 또는 기능을 제공 또는 처리할 수 있다. 또한, 프로세서(180)는 메모리(170)에 저장된 응용 프로그램을 구동하기 위하여, 도 1a와 함께 살펴본 구성 요소들 중 적어도 일부를 제어할 수 있다. 나아가, 프로세서(180)는 상기 응용 프로그램의 구동을 위하여, 사용자 장치(100)에 포함된 구성 요소들 중 적어도 둘 이상을 서로 조합하여 동작시킬 수 있다.
전원 공급부(190)는 프로세서(180)의 제어 하에서, 외부의 전원, 또는 내부의 전원을 인가 받아 사용자 장치(100)에 포함된 각 구성 요소들에 전원을 공급한다. 이러한 전원 공급부(190)는 배터리를 포함하며, 배터리는 내장형 배터리 또는 교체 가능한 형태의 배터리가 될 수 있다.
각 구성 요소들 중 적어도 일부는 이하에서 설명되는 다양한 실시예들에 따른 사용자 장치(100)의 동작, 제어, 또는 제어 방법을 구현하기 위하여 서로 협력하여 동작할 수 있다. 또한, 상기 사용자 장치의 동작, 제어, 또는 제어 방법은 상기 메모리(170)에 저장된 적어도 하나의 응용 프로그램의 구동에 의하여 사용자 장치 상에서 구현될 수 있다.
이하에서는 위에서 살펴본 사용자 장치(100)를 통하여 구현되는 다양한 실시예들을 살펴보기에 앞서, 위에서 열거된 구성 요소들에 대하여 도 1a를 참조하여 보다 구체적으로 살펴본다.
이러한 무선 통신부(110)는 방송 수신 모듈(111), 이동 통신 모듈(112), 무선 인터넷 모듈(113), 근거리 통신 모듈(114), 위치 정보 모듈(115) 중 적어도 하나를 포함할 수 있다. 무선 통신부(110)의 방송 수신 모듈(111)은 방송 채널을 통하여 외부의 방송 관리 서버로부터 방송 신호 및/또는 방송 관련된 정보를 수신한다. 상기 방송 채널은 위성 채널, 지상파 채널을 포함할 수 있다. 적어도 두 개의 방송 채널들에 대한 동시 방송 수신 또는 방송 채널 스위칭을 위해 둘 이상의 상기 방송 수신 모듈이 상기 사용자 장치(100)에 제공될 수 있다.
이동 통신 모듈(112)은 이동 통신을 위한 기술표준들 또는 통신방식(예를 들어, GSM(Global System for Mobile communication), CDMA(Code Division Multi Access), CDMA2000(Code Division Multi Access 2000), EV-DO(Enhanced Voice-Data Optimized or Enhanced Voice-Data Only), WCDMA(Wideband CDMA), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced) 등)에 따라 구축된 이동 통신망 상에서 기지국, 외부의 단말, 서버 중 적어도 하나와 무선 신호를 송수신한다.
상기 무선 신호는 음성 호 신호, 화상 통화 호 신호 또는 문자/멀티미디어 메시지 송수신에 따른 다양한 형태의 데이터를 포함할 수 있다.
무선 인터넷 모듈(113)은 무선 인터넷 접속을 위한 모듈을 말하는 것으로, 사용자 장치(100)에 내장되거나 외장될 수 있다. 무선 인터넷 모듈(113)은 무선 인터넷 기술들에 따른 통신망에서 무선 신호를 송수신하도록 이루어진다.
무선 인터넷 기술로는 예를 들어 WLAN(Wireless LAN), Wi-Fi(Wireless-Fidelity), Wi-Fi(Wireless Fidelity) Direct, DLNA(Digital Living Network Alliance), WiBro(Wireless Broadband), WiMAX(World Interoperability for Microwave Access), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced) 등이 있으며, 상기 무선 인터넷 모듈(113)은 상기에서 나열되지 않은 인터넷 기술까지 포함한 범위에서 적어도 하나의 무선 인터넷 기술에 따라 데이터를 송수신하게 된다. WiBro, HSDPA, HSUPA, GSM, CDMA, WCDMA, LTE, LTE-A 등에 의한 무선 인터넷 접속은 이동 통신망을 통해 이루어진다는 관점에서 본다면, 이동 통신망을 통해 무선 인터넷 접속을 수행하는 상기 무선 인터넷 모듈(113)은 상기 이동 통신 모듈(112)의 일종으로 이해될 수도 있다.
근거리 통신 모듈(114)은 근거리 통신(Short range communication)을 위한 것으로서, 블루투스(Bluetooth??), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association; IrDA), UWB(Ultra Wideband), ZigBee, NFC(Near Field Communication), Wi-Fi(Wireless-Fidelity), Wi-Fi Direct, Wireless USB(Wireless Universal Serial Bus) 기술 중 적어도 하나를 이용하여, 근거리 통신을 지원할 수 있다. 이러한, 근거리 통신 모듈(114)은 근거리 무선 통신망(Wireless Area Networks)을 통해 사용자 장치(100)와 무선 통신 시스템 사이, 사용자 장치(100)와 다른 사용자 장치(100) 사이, 또는 사용자 장치(100)와 다른 사용자 장치(100, 또는 외부서버)가 위치한 네트워크 사이의 무선 통신을 지원할 수 있다. 상기 근거리 무선 통신망은 근거리 무선 개인 통신망(Wireless Personal Area Networks)일 수 있다. 여기에서, 다른 사용자 장치(100)는 본 발명에 따른 사용자 장치(100)와 데이터를 상호 교환하는 것이 가능한(또는 연동 가능한) 웨어러블 디바이스(wearable device, 예를 들어, 스마트 워치(smartwatch), 스마트 글래스(smart glass), HMD(head mounted display))가 될 수 있다. 근거리 통신 모듈(114)은 사용자 장치(100) 주변에, 사용자 장치(100)와 통신 가능한 웨어러블 디바이스를 감지(또는 인식)할 수 있다. 나아가, 프로세서(180)는 감지된 웨어러블 디바이스가 본 명세서에 따른 사용자 장치(100)와 통신하도록 인증된 디바이스인 경우, 사용자 장치(100)에서 처리되는 데이터의 적어도 일부를, 근거리 통신 모듈(114)을 통해 웨어러블 디바이스로 전송할 수 있다. 따라서, 웨어러블 디바이스의 사용자는 사용자 장치(100)에서 처리되는 데이터를, 웨어러블 디바이스를 통해 이용할 수 있다. 예를 들어, 이에 따르면 사용자는 사용자 장치(100)에 전화가 수신된 경우, 웨어러블 디바이스를 통해 전화 통화를 수행하거나, 사용자 장치(100)에 메시지가 수신된 경우, 웨어러블 디바이스를 통해 상기 수신된 메시지를 확인하는 것이 가능하다.
위치 정보 모듈(115)은 사용자 장치의 위치(또는 현재 위치)를 획득하기 위한 모듈로서, 그의 대표적인 예로는 GPS(Global Positioning System) 모듈 또는 Wi-Fi(Wireless Fidelity) 모듈이 있다. 예를 들어, 사용자 장치(100)는 GPS모듈을 활용하면, GPS 위성에서 보내는 신호를 이용하여 사용자 장치(100)의 위치를 획득할 수 있다. 다른 예로서, 사용자 장치(100)는 Wi-Fi모듈을 활용하면, Wi-Fi모듈과 무선 신호를 송신 또는 수신하는 무선 AP(Wireless Access Point)의 정보에 기반하여, 사용자 장치의 위치를 획득할 수 있다. 필요에 따라서, 위치 정보 모듈(115)은 치환 또는 부가적으로 사용자 장치의 위치에 관한 데이터를 얻기 위해 무선 통신부(110)의 다른 모듈 중 어느 기능을 수행할 수 있다. 위치 정보 모듈(115)은 사용자 장치(100)의 위치(또는 현재 위치)를 획득하기 위해 이용되는 모듈로, 사용자 장치(100)의 위치를 직접적으로 계산하거나 획득하는 모듈로 한정되지는 않는다.
다음으로, 입력부(120)는 영상 정보(또는 신호), 오디오 정보(또는 신호), 데이터, 또는 사용자로부터 입력되는 정보의 입력을 위한 것으로서, 영상 정보의 입력을 위하여, 사용자 장치(100) 는 하나 또는 복수의 카메라(121)를 구비할 수 있다. 카메라(121)는 화상 통화 모드 또는 촬영 모드에서 이미지 센서에 의해 얻어지는 정지 영상 또는 동영상 등의 화상 프레임을 처리한다. 처리된 화상 프레임은 디스플레이부(151)에 표시되거나 메모리(170)에 저장될 수 있다. 한편, 사용자 장치(100)에 구비되는 복수의 카메라(121)는 매트릭스 구조를 이루도록 배치될 수 있으며, 이와 같이 매트릭스 구조를 이루는 카메라(121)를 통하여, 사용자 장치(100)에는 다양한 각도 또는 초점을 갖는 복수의 영상 정보가 입력될 수 있다. 또한, 복수의 카메라(121)는 입체 영상을 구현하기 위한 좌 영상 및 우 영상을 획득하도록, 스트레오 구조로 배치될 수 있다.
마이크로폰(122)은 외부의 음향 신호를 전기적인 음성 데이터로 처리한다. 처리된 음성 데이터는 사용자 장치(100)에서 수행 중인 기능(또는 실행 중인 응용 프로그램)에 따라 다양하게 활용될 수 있다. 한편, 마이크로폰(122)에는 외부의 음향 신호를 입력 받는 과정에서 발생되는 잡음(noise)을 제거하기 위한 다양한 잡음 제거 알고리즘이 구현될 수 있다.
사용자 입력부(123)는 사용자로부터 정보를 입력 받기 위한 것으로서, 사용자 입력부(123)를 통해 정보가 입력되면, 프로세서(180)는 입력된 정보에 대응되도록 사용자 장치(100)의 동작을 제어할 수 있다. 이러한, 사용자 입력부(123)는 기계식 (mechanical) 입력수단(또는 메커니컬 키, 예를 들어, 사용자 장치(100)의 전면, 후면 또는 측면에 위치하는 버튼, 돔 스위치 (dome switch), 조그 휠, 조그 스위치 등) 및 터치식 입력 수단을 포함할 수 있다. 일 예로서, 터치식 입력 수단은 소프트웨어적인 처리를 통해 터치스크린에 표시되는 가상 키(virtual key), 소프트 키(soft key) 또는 비주얼 키(visual key)로 이루어지거나, 상기 터치스크린 이외의 부분에 배치되는 터치 키(touch key)로 이루어질 수 있 한편, 상기 가상키 또는 비주얼 키는 다양한 형태를 가지면서 터치스크린 상에 표시되는 것이 가능하며, 예를 들어, 그래픽(graphic), 텍스트(text), 아이콘(icon), 비디오(video) 또는 이들의 조합으로 이루어질 수 있다.
한편, 센싱부(140)는 사용자 장치 내 정보, 사용자 장치를 둘러싼 주변 환경 정보 및 사용자 정보 중 적어도 하나를 센싱하고, 이에 대응하는 센싱 신호를 발생시킨다. 프로세서(180)는 이러한 센싱 신호에 기초하여, 사용자 장치(100)의 구동 또는 동작을 제어하거나, 사용자 장치(100)에 설치된 응용 프로그램과 관련된 데이터 처리, 기능 또는 동작을 수행 할 수 있다. 센싱부(140)에 포함될 수 있는 다양한 센서 중 대표적인 센서들의 대하여, 보다 구체적으로 살펴본다.
먼저, 근접 센서(141)는 소정의 검출면에 접근하는 물체, 혹은 근방에 존재하는 물체의 유무를 전자계의 힘 또는 적외선 등을 이용하여 기계적 접촉이 없이 검출하는 센서를 말한다. 이러한 근접 센서(141)는 위에서 살펴본 터치 스크린에 의해 감싸지는 사용자 장치의 내부 영역 또는 상기 터치 스크린의 근처에 근접 센서(141)가 배치될 수 있다.
근접 센서(141)의 예로는 투과형 광전 센서, 직접 반사형 광전 센서, 미러 반사형 광전 센서, 고주파 발진형 근접 센서, 정전 용량형 근접 센서, 자기형 근접 센서, 적외선 근접 센서 등이 있다. 터치 스크린이 정전식인 경우에, 근접 센서(141)는 전도성을 갖는 물체의 근접에 따른 전계의 변화로 상기 물체의 근접을 검출하도록 구성될 수 있다. 이 경우 터치 스크린(또는 터치 센서) 자체가 근접 센서로 분류될 수 있다.
한편, 설명의 편의를 위해, 터치 스크린 상에 물체가 접촉되지 않으면서 근접되어 상기 물체가 상기 터치 스크린 상에 위치함이 인식되도록 하는 행위를 "근접 터치(proximity touch)"라고 명명하고, 상기 터치 스크린 상에 물체가 실제로 접촉되는 행위를 "접촉 터치(contact touch)"라고 명명한다. 상기 터치 스크린 상에서 물체가 근접 터치 되는 위치라 함은 상기 물체가 근접 터치될 때 상기 물체가 상기 터치 스크린에 대해 수직으로 대응되는 위치를 의미한다. 상기 근접 센서(141)는 근접 터치와, 근접 터치 패턴(예를 들어, 근접 터치 거리, 근접 터치 방향, 근접 터치 속도, 근접 터치 시간, 근접 터치 위치, 근접 터치 이동 상태 등)을 감지할 수 있다. 한편, 프로세서(180)는 위와 같이, 근접 센서(141)를 통해 감지된 근접 터치 동작 및 근접 터치 패턴에 상응하는 데이터(또는 정보)를 처리하며, 나아가, 처리된 데이터에 대응하는 시각적인 정보를 터치 스크린상에 출력시킬 수 있다. 나아가, 프로세서(180)는 터치 스크린 상의 동일한 지점에 대한 터치가, 근접 터치인지 또는 접촉 터치인지에 따라, 서로 다른 동작 또는 데이터(또는 정보)가 처리되도록 사용자 장치(100)를 제어할 수 있다.
터치 센서는 저항막 방식, 정전용량 방식, 적외선 방식, 초음파 방식, 자기장 방식 등 여러 가지 터치방식 중 적어도 하나를 이용하여 터치 스크린(또는 디스플레이부(151))에 가해지는 터치(또는 터치입력)을 감지한다.
일 예로서, 터치 센서는 터치 스크린의 특정 부위에 가해진 압력 또는 특정 부위에 발생하는 정전 용량 등의 변화를 전기적인 입력 신호로 변환하도록 구성될 수 있다. 터치 센서는 터치 스크린 상에 터치를 가하는 터치 대상체가 터치 센서 상에 터치 되는 위치, 면적, 터치 시의 압력, 터치 시의 정전 용량 등을 검출할 수 있도록 구성될 수 있다. 여기에서, 터치 대상체는 상기 터치 센서에 터치를 인가하는 물체로서, 예를 들어, 손가락, 터치펜 또는 스타일러스 펜(Stylus pen), 포인터 등이 될 수 있다.
이와 같이, 터치 센서에 대한 터치 입력이 있는 경우, 그에 대응하는 신호(들)는 터치 제어기로 보내진다. 터치 제어기는 그 신호(들)를 처리한 다음 대응하는 데이터를 프로세서(180)로 전송한다. 이로써, 프로세서(180)는 디스플레이부(151)의 어느 영역이 터치 되었는지 여부 등을 알 수 있게 된다. 여기에서, 터치 제어기는 프로세서(180)와 별도의 구성 요소일 수 있고, 프로세서(180) 자체일 수 있다.
한편, 프로세서(180)는 터치 스크린(또는 터치 스크린 이외에 구비된 터치키)을 터치하는 터치 대상체의 종류에 따라 서로 다른 제어를 수행하거나, 동일한 제어를 수행할 수 있다. 터치 대상체의 종류에 따라 서로 다른 제어를 수행할지 또는 동일한 제어를 수행할 지는 현재 사용자 장치(100)의 동작 상태 또는 실행 중인 응용 프로그램에 따라 결정될 수 있다.
한편, 위에서 살펴본 터치 센서 및 근접 센서는 독립적으로 또는 조합되어, 터치 스크린에 대한 숏(또는 탭) 터치(short touch), 롱 터치(long touch), 멀티 터치(multi touch), 드래그 터치(drag touch), 플리크 터치(flick touch), 핀치-인 터치(pinch-in touch), 핀치-아웃 터치(pinch-out 터치), 스와이프(swype) 터치, 호버링(hovering) 터치 등과 같은 다양한 방식의 터치를 센싱할 수 있다.
초음파 센서는 초음파를 이용하여, 센싱 대상의 위치 정보를 인식할 수 있다. 한편 프로세서(180)는 광 센서와 복수의 초음파 센서로부터 감지되는 정보를 통해, 파동 발생원의 위치를 산출하는 것이 가능하다. 파동 발생원의 위치는 광이 초음파보다 매우 빠른 성질, 즉, 광이 광 센서에 도달하는 시간이 초음파가 초음파 센서에 도달하는 시간보다 매우 빠름을 이용하여, 산출될 수 있다. 보다 구체적으로 광을 기준 신호로 초음파가 도달하는 시간과의 시간차를 이용하여 파동 발생원의 위치가 산출될 수 있다.
한편, 입력부(120)의 구성으로 살펴본, 카메라(121)는 카메라 센서(예를 들어, CCD, CMOS 등), 포토 센서(또는 이미지 센서) 및 레이저 센서 중 적어도 하나를 포함한다.
카메라(121)와 레이저 센서는 서로 조합되어, 3차원 입체 영상에 대한 센싱 대상을 감지할 수 있다. 포토 센서는 디스플레이 소자에 적층될 수 있는데, 이러한 포토 센서는 터치 스크린에 근접한 센싱 대상의 움직임을 스캐닝하도록 이루어진다. 보다 구체적으로, 포토 센서는 행/열에 Photo Diode와 TR(Transistor)을 실장하여 Photo Diode에 인가되는 빛의 양에 따라 변화되는 전기적 신호를 이용하여 포토 센서 위에 올려지는 내용물을 스캔할 수 있다. 즉, 포토 센서는 빛의 변화량에 따른 센싱 대상의 좌표 계산을 수행하며, 이를 통하여 센싱 대상의 위치 정보가 획득될 수 있다. 센싱 대상은 사용자의 얼굴일 수 있으며, 사용자의 얼굴 영역 또는 얼굴 관심 영역일 수 있다.
디스플레이부(151)는 사용자 장치(100)에서 처리되는 정보를 표시(출력)한다. 예를 들어, 디스플레이부(151)는 사용자 장치(100)에서 구동되는 응용 프로그램의 실행화면 정보, 또는 이러한 실행화면 정보에 따른 UI(User Interface), GUI(Graphic User Interface) 정보를 표시할 수 있다. 또한, 디스플레이부(151)는 입체 영상을 표시하는 입체 디스플레이부로서 구성될 수 있다. 입체 디스플레이부에는 스테레오스코픽 방식(안경 방식), 오토 스테레오스코픽 방식(무안경 방식), 프로젝션 방식(홀로 그래픽 방식) 등의 3차원 디스플레이 방식이 적용될 수 있다.
음향 출력부(152)는 호신호 수신, 통화 모드 또는 녹음 모드, 음성 인식 모드, 방송 수신 모드 등에서 무선 통신부(110)로부터 수신되거나 메모리(170)에 저장된 오디오 데이터를 출력할 수 있다. 음향 출력부(152)는 사용자 장치(100)에서 수행되는 기능(예를 들어, 호신호 수신음, 메시지 수신음 등)과 관련된 음향 신호를 출력하기도 한다. 이러한 음향 출력부(152)에는 리시버(receiver), 스피커(speaker), 버저(buzzer) 등이 포함될 수 있다.
햅틱 모듈(haptic module)(153)은 사용자가 느낄 수 있는 다양한 촉각 효과를 발생시킨다. 햅틱 모듈(153)이 발생시키는 촉각 효과의 대표적인 예로는 진동이 될 수 있다. 햅틱 모듈(153)에서 발생하는 진동의 세기와 패턴 등은 사용자의 선택 또는 프로세서(180)의 설정에 의해 제어될 수 있다. 예를 들어, 햅틱 모듈(153)은 서로 다른 진동을 합성하여 출력하거나 순차적으로 출력할 수도 있다. 햅틱 모듈(153)은 진동 외에도, 접촉 피부면에 대해 수직 운동하는 핀 배열, 분사구나 흡입구를 통한 공기의 분사력이나 흡입력, 피부 표면에 대한 스침, 전극(electrode)의 접촉, 정전기력 등의 자극에 의한 효과와, 흡열이나 발열 가능한 소자를 이용한 냉온감 재현에 의한 효과 등 다양한 촉각 효과를 발생시킬 수 있다. 햅틱 모듈(153)은 직접적인 접촉을 통해 촉각 효과를 전달할 수 있을 뿐만 아니라, 사용자가 손가락이나 팔 등의 근 감각을 통해 촉각 효과를 느낄 수 있도록 구현할 수도 있다. 햅틱 모듈(153)은 사용자 장치(100)의 구성 태양에 따라 2개 이상이 구비될 수 있다.
광출력부(154)는 사용자 장치(100)의 광원의 빛을 이용하여 이벤트 발생을 알리기 위한 신호를 출력한다. 사용자 장치(100)에서 발생 되는 이벤트의 예로는 메시지 수신, 호 신호 수신, 부재중 전화, 알람, 일정 알림, 이메일 수신, 애플리케이션을 통한 정보 수신 등이 될 수 있다. 광출력부(154)가 출력하는 신호는 사용자 장치(100)가 전면이나 후면으로 단색이나 복수색의 빛을 발광함에 따라 구현된다. 신호 출력은 사용자 장치(100)가 사용자의 이벤트 확인을 감지함에 의하여 종료될 수 있다.
인터페이스부(160)는 사용자 장치(100)에 연결되는 모든 외부 기기와의 통로 역할을 한다. 인터페이스부(160)는 외부 기기로부터 데이터를 전송받거나, 전원을 공급받아 사용자 장치(100) 내부의 각 구성 요소에 전달하거나, 사용자 장치(100) 내부의 데이터가 외부 기기로 전송되도록 한다. 예를 들어, 유/무선 헤드셋 포트(port), 외부 충전기 포트(port), 유/무선 데이터 포트(port), 메모리 카드(memory card) 포트(port), 식별 모듈이 구비된 장치를 연결하는 포트(port), 오디오 I/O(Input/Output) 포트(port), 비디오 I/O(Input/Output) 포트(port), 이어폰 포트(port) 등이 인터페이스부(160)에 포함될 수 있다.
한편, 식별 모듈은 사용자 장치(100)의 사용 권한을 인증하기 위한 각종 정보를 저장한 칩으로서, 사용자 인증 모듈(user identify module; UIM), 가입자 인증 모듈(subscriber identity module; SIM), 범용 사용자 인증 모듈(universal subscriber identity module; USIM) 등을 포함할 수 있다. 식별 모듈이 구비된 장치(이하 '식별 장치')는 스마트 카드(smart card) 형식으로 제작될 수 있다. 따라서 식별 장치는 인터페이스부(160)를 통하여 사용자 장치(100)와 연결될 수 있다.
또한, 인터페이스부(160)는 사용자 장치(100)가 외부 크래들(cradle)과 연결될 때 크래들로부터의 전원이 상기 사용자 장치(100)에 공급되는 통로가 되거나, 사용자에 의해 상기 크래들에서 입력되는 각종 명령 신호가 상기 사용자 장치(100)로 전달되는 통로가 될 수 있다. 상기 크래들로부터 입력되는 각종 명령 신호 또는 상기 전원은 상기 사용자 장치(100)가 상기 크래들에 정확히 장착되었음을 인지하기 위한 신호로 동작될 수 있다.
메모리(170)는 프로세서(180)의 동작을 위한 프로그램을 저장할 수 있고, 입/출력되는 데이터들(예를 들어, 폰북, 메시지, 정지 영상, 동영상 등)을 임시 저장할 수도 있다. 메모리(170)는 터치 스크린 상의 터치 입력 시 출력되는 다양한 패턴의 진동 및 음향에 관한 데이터를 저장할 수 있다.
메모리(170)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), SSD 타입(Solid State Disk type), SDD 타입(Silicon Disk Drive type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(random access memory; RAM), SRAM(static random access memory), 롬(read-only memory; ROM), EEPROM(electrically erasable programmable read-only memory), PROM(programmable read-only memory), 자기 메모리, 자기 디스크 및 광디스크 중 적어도 하나의 타입의 저장 매체를 포함할 수 있다. 사용자 장치(100)는 인터넷(internet)상에서 메모리(170)의 저장 기능을 수행하는 웹 스토리지(web storage)와 관련되어 동작될 수도 있다.
프로세서(180)는 IC를 포함하며, 대표적인 IC로 AP(application processor)를 들 수 있다. AP는 사용자 장치(100)의 전반적인 연산 및 제어를 담당하고 있으며, 각 부품의 제어를 위해 AP부 의외에 복수 개의 IC를 포함할 수 있다. IC는 기판 위에 실장되어 기판상에 구현된 회로를 통해 신호를 주고 받으며 각 부품을 제어할 수 있다. 프로세서(180)는 응용 프로그램과 관련된 동작과, 통상적으로 사용자 장치(100)의 전반적인 동작을 제어한다. 예를 들어, 프로세서(180)는 사용자 장치의 상태가 설정된 조건을 만족하면, 애플리케이션들에 대한 사용자의 제어 명령의 입력을 제한하는 잠금 상태를 실행하거나, 해제할 수 있다.
프로세서(180)는 음성 통화, 데이터 통신, 화상 통화 등과 관련된 제어 및 처리를 수행하거나, 터치 스크린 상에서 행해지는 필기 입력 또는 그림 그리기 입력을 각각 문자 및 이미지로 인식할 수 있는 패턴 인식 처리를 행할 수 있다.
프로세서(180)는 메모리(170)에 저장된 프로그램을 이용하여 신경망을 학습할 수 있다. 특히, 프로세서(180)는 사용자 장치(100)와 관련된 데이터를 인식하기 위한 신경망을 학습할 수 있다. 여기서, 사용자 장치(100)와 관련된 데이터를 인식하기 위한 신경망은 인간의 뇌 구조를 컴퓨터 상에서 모의하도록 설계될 수 있으며, 인간의 신경망의 뉴런(neuron)을 모의하는 가중치를 갖는 복수의 네트워크 노드들을 포함할 수 있다. 복수의 네트워크 모드들은 뉴런이 시냅스(synapse)를 통해 신호를 주고 받는 뉴런의 시냅틱 활동을 모의하도록 각각 연결 관계에 따라 데이터를 주고 받을 수 있다. 여기서 신경망은 신경망 모델에서 발전한 딥러닝 모델을 포함할 수 있다. 딥 러닝 모델에서 복수의 네트워크 노드들은 서로 다른 레이어에 위치하면서 컨볼루션(convolution) 연결 관계에 따라 데이터를 주고 받을 수 있다. 신경망 모델의 예는 심층 신경망(DNN, deep neural networks), 합성곱 신경망(CNN, convolutional deep neural networks), 순환 신경망(RNN, Recurrent Boltzmann Machine), 제한 볼츠만 머신(RBM, Restricted Boltzmann Machine), 심층 신뢰 신경망(DBN, deep belief networks), 심층 Q-네트워크(Deep Q-Network)와 같은 다양한 딥 러닝 기법들을 포함하며, 컴퓨터비젼, 음성인식, 자연어처리, 음성/신호처리 등의 분야에 적용될 수 있다.
한편, 전술한 바와 같은 기능을 수행하는 프로세서는 범용 프로세서(예를 들어, CPU(central processing unit))일 수 있으나, 인공지능 학습을 위한 AI 전용 프로세서(예를 들어, GPU(graphics processing unit) 및/또는 NPU(neural processing unit))일 수 있다.
프로세서(180)는 데이터 분류/인식을 위한 신경망을 학습할 수 있다. 프로세서(180)는 데이터 분류/인식을 판단하기 위하여 어떤 학습 데이터를 이용할지, 학습 데이터를 이용하여 데이터를 어떻게 분류하고 인식할지에 관한 기준을 학습할 수 있다. 프로세서(180)는 학습에 이용될 학습 데이터를 획득하고, 획득된 학습데이터를 딥러닝 모델에 적용함으로써, 딥러닝 모델을 학습할 수 있다.
프로세서(180)는 데이터를 분류하고 인식하기 위한 신경망 모델에 필요한 학습 데이터를 획득할 수 있다. 예를 들어, 프로세서(180)는 학습 데이터로서, 신경망 모델에 입력하기 위한 센서 데이터 및/또는 샘플 데이터를 획득할 수 있다.
프로세서(180)는 상기 획득된 학습 데이터를 이용하여, 신경망 모델이 소정의 데이터를 어떻게 분류할지에 관한 판단 기준을 가지도록 학습할 수 있다. 이 때 프로세서(180)는 학습 데이터 중 적어도 일부를 판단 기준으로 이용하는 지도 학습(supervised learning)을 통하여, 신경망 모델을 학습시킬 수 있다. 또는 프로세서(180)는 지도 없이 학습 데이터를 이용하여 스스로 학습함으로써, 판단 기준을 발견하는 비지도 학습(unsupervised learning)을 통해 신경망 모델을 학습시킬 수 있다. 또한, 프로세서(180)는 학습에 따른 상황 판단의 결과가 올바른지에 대한 피드백을 이용하여 강화 학습(reinforcement learning)을 통하여, 신경망 모델을 학습시킬 수 있다. 또한, 프로세서(180)는 오류 역전파법(error back-propagation) 또는 경사 하강법(gradient decent)을 포함하는 학습 알고리즘을 이용하여 신경망 모델을 학습시킬 수 있다.
신경망 모델이 학습되면, 프로세서(180)는 학습된 신경망 모델을 메모리(170)에 저장할 수 있다. 프로세서(180)는 학습된 신경망 모델을 사용자 장치(100)와 유선 또는 무선 네트워크로 연결된 서버의 메모리에 저장할 수도 있다.
프로세서(180)는 인식 모델의 분석 결과를 향상시키거나, 인식 모델의 생성에 필요한 리소스 또는 시간을 절약하기 위해 학습 데이터 전처리부(미도시) 및 학습 데이터 선택부(미도시)를 더 포함할 수도 있다. 학습 데이터 전처리부는 획득된 데이터가 상황 판단을 위한 학습에 이용될 수 있도록, 획득된 데이터를 전처리할 수 있다. 예를 들어, 학습 데이터 전처리부는 프로세서(180)가 이미지 인식을 위한 학습을 위하여 획득된 학습 데이터를 이용할 수 있도록, 획득된 데이터를 기 설정된 포맷으로 가공할 수 있다. 또한, 학습 데이터 선택부는 프로세서(180)에서 획득된 학습 데이터 또는 전처리부에서 전처리된 학습 데이터 중 학습에 필요한 데이터를 선택할 수 있다. 선택된 학습 데이터는 프로세서(180)에 제공될 수 있다. 예를 들어, 학습 데이터 선택부는 센서부를 통해 획득한 센싱 정보 중 특정 정보를 검출함으로써, 특정 정보에 포함된 객체에 대한 데이터만을 학습 데이터로 선택할 수 있다.
또한, 프로세서(180)는 신경망 모델의 분석 결과를 향상시키기 위하여 신경망 모델에 평가 데이터를 입력하고, 평가 데이터로부터 출력되는 분석 결과가 소정 기준을 만족하지 못하는 경우, 학습 데이터를 다시 학습하도록 할 수 있다. 이 경우, 평가 데이터는 인식 모델을 평가하기 위한 기 정의된 데이터일 수 있다. 나아가 프로세서(180)는 이하에서 설명되는 다양한 실시예들을 본 발명에 따른 사용자 장치(100) 상에서 구현하기 위하여, 위에서 살펴본 구성 요소들을 중 어느 하나 또는 복수를 조합하여 제어할 수 있다.
전원 공급부(190)는 프로세서(180)의 제어에 의해 외부의 전원, 내부의 전원을 인가 받아 각 구성 요소들의 동작에 필요한 전원을 공급한다. 전원 공급부(190)는 배터리를 포함하며, 배터리는 충전 가능하도록 이루어지는 내장형 배터리가 될 수 있으며, 충전 등을 위하여 단말기 바디에 착탈 가능하게 결합될 수 있다. 또한, 전원 공급부(190)는 연결 포트를 구비할 수 있으며, 연결 포트는 배터리의 충전을 위하여 전원을 공급하는 외부 충전기가 전기적으로 연결되는 인터페이스(160)의 일 예로서 구성될 수 있다. 다른 예로서, 전원 공급부(190)는 연결 포트를 이용하지 않고 무선 방식으로 배터리를 충전하도록 이루어질 수 있다. 이 경우에, 전원 공급부(190)는 외부의 무선 전력 전송 장치로부터 자기 유도 현상에 기초한 유도 결합(Inductive Coupling) 방식이나 전자기적 공진 현상에 기초한 공진 결합(Magnetic Resonance Coupling) 방식 중 하나 이상을 이용하여 전력을 전달받을 수 있다.
한편, 이하에서 다양한 실시예는 예를 들어, 소프트웨어, 하드웨어 또는 이들의 조합된 것을 이용하여 컴퓨터 또는 이와 유사한 장치로 읽을 수 있는 기록 매체 내에서 구현될 수 있다.
각 구성 요소들 중 적어도 일부는 이하에서 설명되는 다양한 실시예들에 따른 사용자 장치(100)의 동작, 제어, 또는 제어 방법을 구현하기 위하여 서로 협력하여 동작할 수 있다. 또한, 사용자 장치(100)의 동작, 제어, 또는 제어 방법은 메모리(170)에 저장된 적어도 하나의 응용 프로그램의 구동에 의하여 구현될 수 있다.
도 1b는 본 개시의 일 실시예에 따른 사용자 장치의 일 예를 나타내는 도면이다. 일 실시예에 따르면, 사용자 장치(100)는 베이스(101)와 지지부(102)를 포함하는 스탠드 형태를 가질 수 있다. 상기 지지부(102)는 베이스(101)에 수직 방향으로 설치되고 디스플레이부(151)에 연결되어, 상기 디스플레이부(151)를 지지할 수 있다. 이와 같이 사용자 장치(100)가 스탠드 형태를 가질 경우, 사용자는 상기 사용자 장치(100)를 편리하게 이동 및 설치시킬 수 있다. 일 실시예에 따르면, 사용자 장치(100)는 구동부(미도시)를 더 포함할 수 있고, 카메라(121)를 통하여 인식된 사용자의 제스처에 기반하여, 디스플레이부(151)의 각도 및/또는 방향을 상기 구동부를 통하여 변경할 수 있다. 또한 사용자 장치(100)는, 스탠드 형태에 국한되지 않고, 휴대형 장치, 또는 고정형 장치와 같이 다양한 형태로 이루어질 수도 있다.
도 2는 본 개시의 일 실시예에 따른 사용자 장치의 동작을 설명하기 위한 흐름도이다.
도 3은 본 개시의 일 실시예에 따른 사용자 장치의 안티 스푸핑 동작의 일 예를 설명하기 위한 도면이다.
도 4는 본 개시의 일 실시예에 따른 사용자 장치의 안티 스푸핑 동작의 일 예를 설명하기 위한 도면이다.
201 단계에서, 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는, 카메라(121)를 통하여 사용자 장치(100)를 사용하는 사용자의 얼굴을 포함하는 제1 이미지를 획득할 수 있다. 예를 들어, 사용자 장치(100)는 카메라(121)를 통하여 사용자의 얼굴을 포함하는 제1 이미지를 촬영할 수 있고, 촬영된 제1 이미지를 메모리(170)에 저장할 수 있다.
203 단계에서, 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 제1 인공지능 모델을 이용하여, 제1 이미지로부터 사용자의 얼굴 영역을 검출할 수 있다.
일 실시예에 따르면, 사용자 장치(100)는 제1 이미지로부터 사용자의 얼굴 영역에 대응하는 제2 이미지를 생성할 수 있다. 일 실시예에 따르면, 사용자 장치(100)는 제1 인공지능 모델(예: 딥러닝 알고리즘)을 이용하여 제1 이미지로부터 사용자의 얼굴 영역을 검출(detection)할 수 있다. 딥러닝 알고리즘은 머신 러닝(machine learning) 기법의 일종으로, 복수개의 은닉층을 포함하는 인공신경망(artificial neural network) 알고리즘을 의미한다. 딥러닝 알고리즘을 이용하기 위해 딥러닝 알고리즘 모델은 여러 다양한 얼굴 포즈를 포함하는 이미지들을 이용한 학습 단계가 선행되어야 하며, 이하의 설명에서는 본 명세서에서 언급되는 딥러닝 알고리즘이 이러한 학습단계를 완료하였다고 전제한다. 예를 들어, 사용자 장치(100)는 촬영된 제1 이미지의 전체 영역 중에서 제1 인공지능 모델을 이용하여 사용자의 얼굴 영역을 검출할 수 있고, 상기 얼굴 영역의 좌표를 설정하고, 설정된 좌표에 대응하는 관심 영역을 크롭(crop)함으로써, 사용자의 얼굴 영역에 대응하는 제2 이미지를 생성할 수 있다.
일 실시예에 따르면, 사용자 장치(100)는 제2 이미지 내에서 얼굴의 특징점(예: 눈썹, 눈, 코, 입 등)을 검출할 수 있고, 검출된 얼굴의 특징점을 이용하여 제2 이미지를 정규화할 수 있다. 예를 들어, 사용자 장치(100)는 제2 이미지 내에서 검출된 얼굴의 특징점들에 기초하여, 제2 이미지를 기설정된 크기의 이미지로 조절하거나, 일정 각도만큼 회전시키거나, 색상 분포를 고르게 함으로써, 정규화 처리를 수행할 수 있다. 얼굴의 특징점을 검출하는 방법은 도 6에서 구체적으로 후술하도록 한다.
일 실시예에 따르면, 사용자 장치(100)는 제1 인공지능 모델로서 형상 기반 방법(appearance based method)을 사용할 수 있다. 형상 기반 방법은 이미지를 2차원 배열 또는 벡터로 표현하고 픽셀의 밝기 값들의 통계적인 정보를 이용하여 얼굴을 검출하는 방법으로서, 아이겐페이스(Eigenface), 피셔페이스(Fisherface), DCV(Discriminant Common Vector; 판별 공통 벡터)을 비롯하여 이들을 확장(extended), 변형(variant)한 다양한 방법들을 포함할 수 있다. 또한, 그밖에 다양한 방법들로는, Direct LDA(Direct Linear Discriminant Analysis), ERE(Eigenfeature Regularization and Extraction), 그리고 MFA(Marginal Fisher Analysis) 등이 있다. 일 실시예에 따르면, 사용자 장치(100)는 상술한 제1 인공지능 모델을 이용하는 것 이외에 지식 기반 얼굴 검출 방법(Knowledge-based Face Detection Methods), 특징 기반 얼굴 검출 방법(Feature-based Face Detection Methods), 템플릿매칭 기반 얼굴 검출 방법(Template matching-based Face Detection Methods)을 이용하여 제1 이미지로부터 사용자의 얼굴 영역을 검출할 수 있고, 본 발명이 이에 한정되는 것은 아니며, 실시예에 따라 사용자 장치(100)는 다양한 방식의 얼굴 검출 방법을 이용하여 얼굴을 검출할 수 있다.
205 단계에서, 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 제2 인공지능 모델을 이용하여, 사용자의 얼굴 영역에 대한 제1 인증을 수행할 수 있다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 제2 인공지능 모델을 이용하여, 사용자의 얼굴 영역으로부터 특징점을 검출할 수 있다. 예를 들어, 사용자 장치(100)는 제2 인공지능 모델로서, 랜덤 포레스트(Random Forest)를 이용하여 제2 이미지로부터 얼굴의 특징점 별 패치 영상 벡터를 추출하고, 추출된 각 특징점별 패치 영상 벡터에 대한 FFPD(Facial Feature Point Descriptor) 학습을 수행할 수 있다. 랜덤 포레스트는 머신러닝의 모델 중 하나로서, 의사 결정 트리를 합친 것으로 복수의 의사 결정 트리의 결과값을 평균하여 결과값으로 출력하는 모델이다. 사용자 장치(100)는 생성된 랜덤 포레스트의 각 분기 노드에서 사용되는 한 쌍의 두 점을 찾고, 각 잎-노드에서의 확률 값을 선정하여 메모리(170)에 저장할 수 있다. 사용자 장치(100)는 랜덤 포레스트를 반복 순행하여 도달한 잎-노드의 값들(출력 값)을 이용하여 서술 벡터를 생성하여 특징점을 검출할 수 있다.
구체적으로, 사용자 장치(100)는 랜덤 포레스트(K개의 트리로 이루어지고, K는 임의의 상수임)에서 각 트리의 내부 노드에서 패치 영상이 한 쌍의 두 점(a, b)을 임의로 선택하고, a-b가 양수인지 음수인지를 판별하여 패치 영상 벡터의 분기 방향(오른쪽 또는 왼쪽)을 결정하도록 하는 것을 반복할 수 있다. 사용자 장치(100)는 이러한 반복을 하면서 엔트로피(E)가 가장 낮은 한 쌍을 선택하는 방식으로 랜덤 포레스트를 순행할 수 있으며, 엔트로피는 [수학식 1]과 같이 산출될 수 있다.
Figure 112021148519667-pat00001
여기서 c는 오른쪽(R)과 왼쪽(L)을 의미하고, P(n,c)는 n번째 특징점이 오른쪽(또는 왼쪽)에서 나타날 확률을 의미하는 것으로 이는 오른쪽(또는 왼쪽)으로 분류된 n번째 특징점의 개수를 오른쪽(또는 왼쪽)으로 분류된 전체 데이터수로 나눈 값이다.
또한 랜덤 포레스트를 순행하여 얻은 출력값은 [수학식 2]와 같이 정의될 수 있다.
Figure 112021148519667-pat00002
여기서 R은 랜덤 포레스트 모델을 의미하고, Rk는 각 트리를 의미하며, fn는 특정점 일련번호를 의미하고, Ix는 입력된 패치 영상을 의미하며, K는 램덤포레스트의 트리 개수를 의미하고, n(≤N)은 특징점의 개수를 의미한다.
마지막으로 서술 벡터는 [수학식 3]과 같이 정의될 수 있다. [수학식 3]은 각 트리의 잎-노드의 값이 N개의 특징점에 대한 확률 분포를 의미하는 것으로 모든 특징점의 확률값을 얻기 위해서 복수의 연산을 수행할 필요 없이 한 번에 얻을 수 있음을 나타내고 있다.
Figure 112021148519667-pat00003
사용자 장치(100)는 제2 이미지 내의 얼굴 영역으로부터 검출된 특징점과 메모리(170)에 저장된 기준 얼굴 이미지들의 특징점을 비교 분석하여 제1 인증 절차를 수행할 수 있다. 사용자 장치(100)는 검출된 제2 이미지 내의 얼굴 영역의 특징점과 기준 얼굴 이미지들 중 어느 하나의 특징점에 대한 일치율이 기 설정된 기준보다 높으면 동일 얼굴로 판단하여 제1 인증을 성공한 것으로 결정할 수 있다. 사용자 장치(100)는 검출된 제2 이미지 내의 얼굴 영역의 특징점과 기준 얼굴 이미지들의 특징점에 대한 일치율이 기 설정된 기준보다 낮으면 서로 다른 얼굴로 판단하여 제1 인증을 실패한 것으로 결정할 수 있다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 사용자의 기준 얼굴 이미지를 등록하는 과정에 있어서, 사용자의 기준 얼굴 이미지로부터 특징점을 검출할 수 있다. 사용자 장치(100)는 제2 이미지로부터 특징점을 검출하는 방법과 동일한 방법으로 등록하고자 하는 기준 얼굴 이미지의 특징점을 검출할 수 있다. 사용자 장치(100)는 검출된 특징점이 포함된 기준 얼굴 이미지를 사용자 식별 정보(예: 고유 식별 번호, 이름, 및/또는 사용자 계정 등)와 연관시켜 메모리(170)에 저장함으로써, 기준 얼굴 이미지 및 사용자 식별 정보를 사용자 장치(100)에 등록할 수 있다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 사용자가 사용자 장치(100)에 접근하는 동안, 사용자의 접근을 감지하는 것에 기반하여 제1 인증을 수행할 수 있다. 예를 들어, 사용자 장치(100)는 사용자가 사용자 장치(100)에 접근하는 동안, 카메라(121)를 통하여 획득한 이미지 프레임들의 분석 결과에 따라, 사용자의 접근을 감지하거나 또는 센싱부(140)에 포함된 특정 센서(예: 초음파 센서)를 통하여 사용자의 접근을 감지하는 것에 기반하여 제1 인증을 수행할 수 있다. 이는 사용자가 먼저 사용자 장치(100)로 인증 요청을 하기 전이라도 전에 빠르게 사용자를 자동으로 인증함으로써, 사용자 인증의 편의성을 향상시키기 위함이다.
207 단계에서, 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 제1 인증을 성공하는 경우, 제1 인증의 성공을 나타내는 알림을 제공하고, 사용자에 대하여 고유한 히든 키를 이용하여 사용자에 대한 제2 인증을 수행할 수 있다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 제1 인증을 성공하는 경우, 출력부(150)를 통하여 제1 인증의 성공을 나타내는 알림을 제공할 수 있다. 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 제1 인증을 성공하는 경우, 디스플레이부(151)를 통하여 제1 인증의 성공을 나타내는 특정 메시지를 상기 알림으로서 표시할 수 있다. 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 제1 인증을 성공하는 경우, 음향출력부(152)를 통하여 제1 인증의 성공을 나타내는 특정 소리를 상기 알림으로서 출력할 수 있다. 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 제1 인증을 성공하는 경우, 햅틱모듈(153)을 통하여 제1 인증의 성공을 나타내는 특정 진동을 상기 알림으로서 출력할 수 있다. 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 제1 인증을 성공하는 경우, 광출력부(154)를 통하여 제1 인증의 성공을 나타내는 특정 색상의 빛을 발광할 수 있다. 상기 각 알림은 하나의 형태로 제공되거나 둘 이상이 조합되어 함께 제공될 수 있다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 제1 인증을 성공하는 경우, 사용자에 대응하는 특정 촬영 방법에 관한 히든 키를 이용하여 사용자에 대한 제2 인증을 수행할 수 있다. 일 실시예에 따르면, 사용자 장치(100)는 제1 인증을 성공하는 경우, 상기 사용자의 사용자 식별 정보와 함께 연관되도록 등록된 특정 촬영 방법에 관한 히든 키를 식별할 수 있다. 히든 키는 사용자의 얼굴에 대한 정보의 위조를 방지하기 위해서, 안티 스푸핑(anti spoofing) 동작에 사용될 수 있다.
일 실시예에 따르면, 상기 특정 촬영 방법은 서로 다른 조명 조건에서 사용자의 얼굴을 복수회 촬영하는 방법, 및 사용자의 표정 및/또는 시선을 변경하도록 가이드하여 사용자의 얼굴을 복수회 촬영하는 방법을 포함할 수 있다. 일 실시예에서 도 3을 참조하면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 디스플레이부(151)에서 특정 순서로 각기 다른 영역(301, 302, 303, 304)을 통하여 서로 다른 색상을 출력하는 복수의 조명 조건들 하에서, 카메라(121)를 통하여 사용자의 얼굴을 포함하는 복수의 이미지들을 촬영할 수 있다. 예를 들어, 사용자 장치(100)는 특정 순서로 디스플레이부(151)의 복수의 영역들에 순차적으로 특정 색상을 출력한 상태에서 사용자를 촬영함으로써, 복수의 이미지들을 획득할 수 있다. 이에 따라, 상기 복수의 이미지들은 영역 별로 서로 다른 색상 값을 가질 수 있다. 일 실시예에서 도 4를 참조하면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 사용자의 표정을 가이드하기 위한 화면(또는 음성)에 기반하여, 순차적으로 사용자의 서로 다른 표정을 포함하는 얼굴을 포함하는 복수의 이미지들(401, 402, 403, 404)을 촬영할 수 있다. 또 일 실시예에서 도시되지 않았으나, 사용자 장치(100)(예: 도 1의 프로세서(180))는 사용자의 시선의 위치를 가이드하기 위한 오브젝트(예: 빨간 점)의 위치를 디스플레이부(151) 또는 광출력부(154)를 통하여 변경하면서, 순차적으로 사용자의 얼굴을 포함하는 복수의 이미지들을 촬영할 수 있다. 이때, 복수의 이미지들의 사용자의 얼굴의 시선의 위치는 사용자 장치(100)에 표시되는 오브젝트의 위치에 대응하며, 서로 다를 수 있다. 결과적으로 복수 회 촬영된 이미지들은 모두 사용자의 얼굴을 포함하나, 픽셀 값이 서로 다를 수 있다. 예를 들어, 복수 회 촬영된 이미지들은 서로 다른 밝기 값, 및/또는 서로 다른 픽셀 값을 가질 수 있다. 일 실시예에 따르면, 사용자 장치(100)는 특정 촬영 방법에 대한 정보로서, 디스플레이부(151)의 특정 영역에서 특정 색상이 출력된 순서에 대한 정보, 사용자의 표정들의 순서에 대한 정보, 및 사용자의 시선의 위치를 가이드하기 위한 오브젝트(예: 빨간 점)의 위치들에 대한 정보를 획득하고, 이를 사용자 식별 정보 및 복수의 이미지들과 연관시켜 메모리(170)에 저장할 수 있다. 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 사용자의 기준 얼굴 이미지를 등록한 후, 복수의 촬영 방법들 중에서 임의로(randomly) 특정 촬영 방법을 선택할 수 있고, 선택된 특정 촬영 방법에 기반하여, 카메라(121)를 통하여 사용자의 얼굴을 포함하는 복수의 제1 이미지들을 획득할 수 있다. 사용자 장치(100)는 획득한 복수의 제1 이미지들을 상기 특정 촬영 방법 및 사용자 식별 정보와 연관시켜 메모리(170)에 저장함으로써, 복수의 제1 이미지들, 특정 촬영 방법, 및 사용자 식별 정보를 사용자 장치(100)에 등록할 수 있다. 일 실시예에 따르면, 상기 복수의 제1 이미지들은 모두 사용자의 얼굴을 포함하되, 서로 다른 밝기 특성 및/또는 서로 다른 픽셀 값을 가질 수 있다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 사용자의 사용자 식별 정보와 연관되는 특정 촬영 방법에 관한 히든 키에 기반하여, 카메라(121)를 통하여 사용자의 얼굴을 포함하는 복수의 제2 이미지들을 획득할 수 있다. 예를 들어, 사용자 장치(100)는 사용자 식별 정보와 연관되도록 등록된 특정 촬영 방법에 기초하여, 디스플레이부(151)에서 특정 순서로 각기 다른 영역을 통하여 서로 다른 색상을 출력하는 특정 조명 조건 하에서 카메라(121)를 통하여 사용자의 얼굴을 촬영함으로써, 복수의 제2 이미지들을 획득할 수 있다. 일 실시예에 따르면, 상기 복수의 제2 이미지들은 모두 사용자의 얼굴을 포함하되, 서로 다른 밝기 특성 및/또는 서로 다른 픽셀 값을 가질 수 있다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 사용자 식별 정보와 연관되도록 등록된 복수의 제1 이미지들과 특정 촬영 방법에 기초하여 획득한 복수의 제2 이미지들 사이의 유사도를 판단할 수 있다. 예를 들어, 사용자 장치(100)는 205 단계에서 설명된 "사용자의 얼굴 영역에 대한 제2 이미지와 기준 얼굴 이미지에 대한 일치율을 판단하는 방법(예: 제1 인증 방법)"을 이용하여, 복수의 제1 이미지들과 복수의 제2 이미지들 사이의 유사도를 판단할 수 있다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 복수의 제1 이미지들과 복수의 제2 이미지들 사이의 유사도가 임계값을 초과하는 경우, 안티 스푸핑의 결과로서 사용자에 대한 제2 인증을 성공하는 것으로 결정할 수 있다. 예를 들어, 사용자 장치(100)는 복수의 제1 이미지들 모두와 이에 대응하는 복수의 제2 이미지들 모두 사이의 유사도가 임계값을 초과하는 경우, 제2 인증을 성공하는 것으로 결정할 수 있다. 더욱 구체적으로, 사용자 장치(100)는 복수의 제1 이미지들 중 첫 번째 이미지와 복수의 제2 이미지들 중 첫 번째 이미지 사이의 유사도가 임계값을 초과하고, 복수의 제1 이미지들 중 두 번째 이미지와 복수의 제2 이미지들 중 두 번째 이미지 사이의 유사도가 임계값을 초과하며, 상기와 같은 방식으로 복수의 제1 이미지들의 모든 이미지들과 복수의 제2 이미지들의 모든 이미지들 사이의 유사도가 임계값을 초과하는 경우, 제2 인증을 성공하는 것으로 결정할 수 있다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 사용자가 사용자 장치(100)에 접근하는 동안, 사용자의 접근을 감지하는 것에 기반하여 제2 인증을 수행할 수 있다. 예를 들어, 사용자 장치(00)는 205 동작에서 사용자의 접근을 감지하는 것에 기반하여 제1 인증을 수행할 수 있고, 제1 인증을 성공하는 경우, 사용자 장치(100)에 접근하는 사용자에 대하여 제1 인증에 연속하여 제2 인증을 수행할 수 있다. 이는 사용자가 사용자 장치(100)에 접근하는 동안 제1 인증 및 제2 인증을 빠르게 수행함으로써, 사용자 인증의 편의성을 향상시키기 위함이다.
209 단계에서, 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 상기 제2 인증을 성공하는 경우, 미리 정해진 특정 기능을 수행할 수 있다. 예를 들어, 사용자 장치(100)는 상기 제2 인증을 성공하는 경우, 사용자 장치(100)의 미리 정해진 특정 기능으로서, 잠금 모드(lock mode)를 해제할 수 있다. 잠금 모드는 정해진 사용자 이외에 허가되지 않은 사용자들이 사용자 장치(100)를 사용하는 것을 방지하기 위하여 사용되는 기능을 나타낼 수 있다. 또 다른 예를 들어, 사용자 장치(100)는 상기 제2 인증을 성공하는 경우, 사용자 장치(100)의 미리 정해진 특정 기능으로서, 사용자 인증이 선행적으로 요구되는 다양한 기능들(예: 결제, 보안 앱 실행 등)을 수행할 수 있다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 제1 인증 및 제2 인증을 성공한 후에 잠금 모드를 해제하고, 정상 모드로 동작하는 도중, 제1 특정 제스처를 인식한 시점으로부터 미리 정해진 시간 이내에 제2 특정 제스처를 인식하는 경우, 상기 제2 특정 제스처에 대응하는 제1 기능을 수행할 수 있다. 예를 들어, 사용자 장치(100)는 잠금 모드를 해제하고, 정상 모드로 동작하는 도중 제1 특정 제스처(예: 카메라(121)를 향해 주먹을 움켜쥔 후 펴는 제스처)를 인식한 시점으로부터 미리 정해진 시간(예: 3초) 이내에 제2 특정 제스처(예: 허공에서 좌측으로 손을 이동하는 제스처)를 인식하는 경우, 상기 제2 특정 제스처에 대응하는 제1 기능(예: 디스플레이부(151)가 향하는 방향을 상기 제2 특정 제스처가 향하는 방향으로 변경)을 수행할 수 있다.
도 5는 본 개시의 일 실시예에 따른 사용자 장치(100)의 사용자의 얼굴의 특징점을 정확하게 분석하기 위해, 사용자의 위치를 가이드하는 동작의 예를 설명하기 위한 도면이다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 사용자의 얼굴을 포함하는 제1 이미지를 획득할 수 있다. 사용자 장치(100)는 도 5에 도시된 바와 같이, 사용자의 얼굴의 특징점의 분석이 가능한 이미지가 촬영되도록, 특정 거리에서 사용자(U)를 촬영할 수 있다. 사용자 장치(100)는 카메라(121)를 통하여 상기 사용자를 촬영한 이미지로부터 식별되는 사용자(U)의 눈 사이의 거리(d)에 기반하여 사용자 장치(100)와 사용자(U) 사이의 거리를 식별할 수 있다. 사용자 장치(100)는 식별된 거리가 이미지를 촬영하기 위한 지정된 거리와 다른 경우, 사용자(U)와의 거리를 조정하기 위해서 가이드 문구(예: "앞으로 30cm 더 다가오세요")를 디스플레이부(151) 상에 표시하거나 음향 출력부(152)(예: 스피커)를 통하여 출력할 수 있다.
도 6은 본 개시의 일 실시예에 따른 특징점의 예를 설명하기 위한 도면이다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 도 2의 203 동작을 수행하는 과정에 있어서, 제 1 이미지로부터 사용자의 얼굴에 대한 복수의 특징점들 별 제 1 값을 추출하고, 복수의 특징점들 별 값을 사용자 식별 정보와 연관되도록 저장할 수 있다. 예를 들어 도 6에 도시된 바와 같이, 사용자 장치(100)는 사용자의 얼굴 중에서 사용자들 간의 얼굴의 비교가 용이한(즉 사용자의 얼굴을 특정 지를 수 있는) 특징점(또는 랜드 마크)에 대한 값을 추출할 수 있다. 상기 특징점(또는 랜드 마크)은 도 6에 도시된 바와 같이, 신체 일부의 형태(예: 눈의 형태(601), 눈썹 형태(602), 콧대의 형태(603), 입술의 형태(604), 얼굴의 형태(605)), 신체 일부 간의 거리(예: 눈ㆍ입ㆍ콧구멍ㆍ턱ㆍ 간의 각도와 거리), 신체 일부의 뼈 돌출 정도 등을 포함할 수 있으며, 기재 및/또는 도시된 바에 제한되지 않고 다양한 부위가 특징점(또는 랜드 마크)가 될 수 있다. 사용자 장치(100)는 상기 제 1 이미지로부터 사용자의 얼굴을 검출하고, 사용자의 얼굴로부터 특징점(또는 랜드 마크)(601, 602, 603, 604, 605)을 추출하고, 3차원(3D) 공간 분석 방법에 기반하여 추출된 특징점(601, 602, 603, 604, 605) 별 각도 및/또는 방향을 나타내는 벡터 값을 획득할 수 있다. 사용자 장치(100)는 상기 추출된 특징점 별 각도 및/또는 방향을 나타내는 벡터 값을 메모리(170)에 저장할 수 있다.
도 7a 내지 도 7c는 본 개시의 일 실시예에 따른 사용자 장치의 안티 스푸핑 동작의 일 예를 설명하기 위한 도면이다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 도 2의 205 동작의 제1 인증을 수행하기에 앞서, 사용자 장치(100)에 대한 사용자의 얼굴 각도의 변화에 따라 촬영된 이미지들 내에서 얼굴의 특징점들을 검출할 수 있고, 검출된 특징점들 중에서 미리 정해진 특징점들 사이의 거리를 산출할 수 있다. 예를 들어, 도 7a의 <701> 및 <702>를 참조하면, 사용자 장치(100)는 사용자 장치(100)에 대한 사용자의 기울기가 제1 각도(예: 0도)인 상태에서 촬영된 이미지(711, 721) 내에서 얼굴을 특징점들(예: 눈썹의 형태, 눈의 형태, 코의 형태 등)을 검출할 수 있고, 미리 정해진 특징점들(예: 입술 및 턱) 사이의 제1 거리(d0)를 산출할 수 있다. 또 다른 예를 들어, 도 7b의 <703> 및 <704>를 참조하면, 사용자 장치(100)는 사용자 장치(100)에 대한 사용자의 기울기가 제2 각도(예: 30도)인 상태에서 촬영된 이미지(712, 722) 내에서 얼굴의 특징점들을 검출할 수 있고, 미리 정해진 특징점들(예: 입술 및 턱) 사이의 제2 거리(d30)를 산출할 수 있다. 또 다른 예를 들어, 도 7c의 <705> 및 <706>를 참조하면, 사용자 장치(100)는 사용자 장치(100)에 대한 사용자의 기울기가 제3 각도(예: 45도)인 상태에서 촬영된 이미지(713, 723) 내에서 얼굴을 특징점들을 검출할 수 있고, 미리 정해진 특징점들(예: 입술 및 턱) 사이의 제3 거리(d45)를 산출할 수 있다. 이 때, <701>, <703>, <705> 도면의 이미지(711, 712, 713)는 실제 사용자의 얼굴을 촬영한 이미지이고, <702>, <704>, <706> 도면의 이미지(721, 722, 723)는 사용자의 얼굴 사진을 촬영한 페이크(fake) 이미지이다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 사용자의 얼굴 각도의 변화에 따라 상기 미리 정해진 특징점들 사이의 거리의 변화가 임계값 이하로 감소하는지를 판단할 수 있다. 예를 들어, 도 7a의 <701>, 도 7b의 <703>, 및 도 7c의 <705>를 참조하면, 사용자 장치(100)는 사용자 장치(100)에 대한 사용자의 얼굴 각도의 변화(예: 제1 각도로부터 제2 각도 및/또는 제2 각도로부터 제3 각도)에 대응하는 미리 정해진 특징점들 사이의 거리의 변화(예: 제1 거리와 제2 거리의 차이 및/또는 제2 거리와 제3 거리의 차이)가 임계값 이하로 감소하는지를 판단할 수 있다. 또 다른 예를 들어, 도 7a의 <702>, 도 7b의 <704>, 및 도 7c의 <706>를 참조하면, 사용자 장치(100)는 사용자 장치(100)에 대한 사용자의 얼굴 각도의 변화(예: 제1 각도로부터 제2 각도 및/또는 제2 각도로부터 제3 각도)에 대응하는 미리 정해진 특징점들 사이의 거리의 변화(예: 제1 거리와 제2 거리의 차이 및/또는 제2 거리와 제3 거리의 차이)가 임계값 이하로 감소하는지를 판단할 수 있다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 상기 미리 정해진 특징점들 사이의 거리의 변화가 임계값 이하로 감소하는 경우, 사용자의 얼굴 영역에 대한 제1 인증을 수행할 수 있다. 예를 들어, 사용자 장치(100)는 상기 미리 정해진 특징점들 사이의 거리의 변화(예: 제1 거리와 제2 거리의 차이)가 임계값 이하로 감소하는 경우, 도 2의 205 동작에서의 제1 인증을 수행할 수 있다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 상기 미리 정해진 특징점들 사이의 거리의 변화가 임계값을 초과하는 경우, 사용자의 얼굴 영역에 대한 제1 인증의 진행을 종료할 수 있다. 예를 들어, 사용자 장치(100)는 상기 미리 정해진 특징점들 사이의 거리의 변화(예: 제1 거리와 제2 거리의 차이)가 임계값을 초과하는 경우, 제1 인증을 수행하지 않고, 사용자에게 경고 문구를 제공하거나, 제1 인증을 수행하기 위한 가이드 문구를 제공할 수 있다. 이는, 페이크 이미지를 사용할 경우, 카메라에 대한 페이지 이미지의 각도가 변화하더라도 페이크 이미지 내에서 검출된 미리 정해진 특징점들(예: 입술과 턱) 사이의 거리가 거의 감소하지 않기 때문이다.
도 8은 본 개시의 일 실시예에 따른 사용자 장치의 안티 스푸핑 동작의 다른 일 예를 설명하기 위한 도면이다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 도 2의 207 동작의 제2 인증을 수행하기에 앞서, 상기 사용자의 사용자 식별 정보로부터 기등록된 사용자의 눈 사이의 제1 거리를 식별할 수 있고, 현재 촬영된 이미지로부터 식별된 사용자의 눈 사이의 제2 거리와 상기 제1 거리의 차이에 기반하여, 사용자 장치(100)와 사용자 사이의 거리(d)를 추정할 수 있다. 예를 들어, 사용자 장치(100)는 사용자 장치(100)로부터 지정된 거리에서 촬영함으로써 등록된 제1 거리에 대한 상기 제2 거리의 비율에 기초하여, 사용자 장치(100)와 사용자 사이의 현재 거리(d)를 추정할 수 있다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 사용자 장치(100)와 사용자 사이의 거리(d)에 기반하여, 사용자의 신체 사이즈(예: 키(h))를 추정할 수 있다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 상기 추정된 사용자의 신체 사이즈가 기등록된 신체 사이즈의 차이가 미리 정해진 범위 이내인 경우, 제2 인증을 수행할 수 있다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 상기 추정된 사용자의 신체 사이즈가 기등록된 신체 사이즈의 차이가 미리 정해진 범위에 속하지 않는 경우, 제2 인증을 수행하지 않고, 인증 절차를 종료할 수 있다.
도 9는 본 개시의 일 실시예에 따른 사용자 장치의 제1 인증을 수행하는 동작의 일 예를 설명하기 위한 도면이다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 잠금 모드인 동안, 활성화된 카메라(121)를 이용하여 사용자 장치(100)에 대한 사용자의 접근을 감지할 수 있고, 사용자 장치(100)에 대하여 사용자가 접근하는 동안, 카메라(121)를 통하여 촬영된 이미지들로부터 사용자의 얼굴의 특징 벡터를 검출할 수 있다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 사용자의 얼굴의 특징 벡터가 기 등록된 특징 벡터인 경우, 상기 사용자의 얼굴에 대한 제1 인증을 성공한 것으로 결정할 수 있다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 사용자의 얼굴의 특징 벡터가 등록되지 않은 특징 벡터인 경우, 검출된 특징 벡터들을 이용하여 촬영된 이미지들의 품질 값을 산출 후, 품질 값이 가장 높은 이미지의 특징 벡터를 상기 사용자의 대표 얼굴 이미지의 특징 벡터로서 등록할 수 있다. 이 경우, 사용자 장치(100)는 미등록 사용자의 얼굴의 특징 벡터를 임시 버퍼에 저장한 후, 상기 미등록 사용자의 얼굴의 특징 벡터를 사용자 장치(100)에 등록할 수 있다. 사용자 장치(100)는 이미지의 품질 값을 산출하기 위하여, 기존에 공지된 다양한 방법들을 이용할 수 있다. 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 미등록 사용자의 얼굴로부터 정해진 형태의 특징 벡터를 검출하지 못한 경우, 상기 정해진 형태의 특징 벡터를 검출하도록 가이드를 제공하고, 정해진 형태의 특징 벡터를 사용자 장치(100)에 추가 등록할 수 있다. 예를 들어, 사용자 장치(100)는 정해진 형태의 특징 벡터가 좌측 얼굴 이미지, 우측 얼굴 이미지, 정면 얼굴 이미지로 설정된 상태에서, 사용자 장치(100)에 대하여 미등록 사용자가 접근하는 동안, 미등록 사용자의 얼굴로부터 좌측 얼굴 이미지 및 정면 얼굴 이미지만을 검출하는 경우, 미등록 사용자에게 우측 얼굴 이미지의 특징 벡터를 검출하기 위한 가이드를 제공할 수 있고, 미등록 사용자의 우측 얼굴 이미지의 특징 벡터를 사용자 장치(100)에 추가 등록할 수 있다.
일 실시예에 따르면, 사용자 장치(100)와 유선 및/또는 무선으로 연결된 외부 카메라 장치는, 외부 카메라 장치에 의하여 감지되는 사용자들의 얼굴 이미지들을 실시간으로 촬영한 후, 상기 촬영된 얼굴 이미지들을 사용자 장치(100)로 송신할 수 있고, 사용자 장치(100)는 사용자 장치(100)에 미등록된 사용자를 자동으로 등록하기 위하여, 외부 카메라 장치로부터 수신된 사용자들의 얼굴 이미지들을 분석하여 해당 사용자가 미등록 사용자인지 여부를 판단할 수 있다. 예를 들어, 메모리(170)에 저장된 기준 얼굴 이미지들 중에서 외부 카메라 장치로부터 수신된 얼굴 이미지와의 일치율이 정해진 값을 초과하는 기준 얼굴 이미지가 존재하는 경우, 사용자 장치(100)는 상기 수신된 얼굴 이미지에 대응하는 사용자를 등록 사용자로 결정할 수 있고, 메모리(170)에 저장된 기준 얼굴 이미지들 중에서 상기 수신된 얼굴 이미지와의 일치율이 정해진 값을 초과하는 기준 얼굴 이미지가 존재하지 않는 경우, 사용자 장치(100)는 상기 수신된 얼굴 이미지에 대응하는 사용자를 미등록 사용자로 결정할 수 있다. 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 외부 카메라 장치로부터 수신된 미등록 사용자의 얼굴 이미지로부터 정해진 형태의 특징 벡터를 검출하는 경우, 미등록 사용자를 사용자 장치(100)에 자동으로 등록하고, 카메라(121)를 통하여 미등록 사용자의 얼굴 이미지를 촬영하는 동작을 생략할 수 있다. 예를 들어, 사용자 장치(100)는 외부 카메라 장치로부터 수신된 미등록 사용자의 얼굴 이미지로부터 정해진 형태의 특징 벡터로서, 좌측 얼굴 이미지, 정면 얼굴 이미지, 및 우측 얼굴 이미지의 특징 벡터를 검출하는 경우, 미등록 사용자를 사용자 장치(100)에 자동으로 등록하고, 미등록 사용자의 얼굴 이미지를 촬영하는 동작을 생략할 수 있다. 이 경우, 해당 사용자는 사용자의 식별 정보(예: 이름, 휴대폰 번호)만 추가적으로 입력함으로써, 사용자 등록을 완료할 수 있다. 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 미등록 사용자의 자동 등록에 필요한 특징 벡터를 검출하지 못한 경우, 상기 특징 벡터를 추출하기 위한 가이드를 미등록 사용자에게 제공할 수 있다. 예를 들어, 사용자 장치(100)는 외부 카메라 장치로부터 수신된 미등록 사용자의 얼굴 이미지로부터 좌측 얼굴 이미지 및 정면 얼굴 이미지의 특징 벡터를 검출하고 우측 얼굴 이미지의 특징 벡터를 검출하지 못한 경우, 미등록 사용자에게 우측 얼굴 이미지의 특징 벡터를 검출하기 위한 가이드(예: 음성 메시지 및/또는 텍스트 메시지)를 제공할 수 있고, 카메라(121)를 통하여 촬영된 미등록 사용자의 우측 얼굴 이미지로부터 획득한 특징 벡터를 이용하여 미등록 사용자를 사용자 장치(100)에 등록할 수 있다.
도 10은 본 개시의 일 실시예에 따른 사용자 장치의 출입문 제어 동작의 예를 설명하기 위한 도면이다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 복수의 카메라들(1000)을 포함하는 외부 전자 장치와 무선 또는 유선으로 연결될 수 있고, 출입문 제어 장치로서 동작할 수 있다. 사용자 장치(100)는 고정된 위치에 설치된 카메라의 위치에 관한 정보를 상기 외부 전자 장치로부터 수신하여 메모리(170)에 저장할 수 있다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 도 2의 205 동작의 제1 인증을 수행하기에 앞서, 외부 전자 장치로부터 수신된 복수의 카메라들(1000)의 이미지 데이터를 이용하여 출입구(1001)에 대한 사용자의 접근을 감지할 수 있고, 출입구(1001)에 대하여 사용자가 접근하는 동안, 카메라들(1000)를 통하여 촬영된 이미지들로부터 사용자의 얼굴의 특징 벡터를 검출할 수 있다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 출입구(1001)에 대한 사용자의 접근에 따른 사용자의 얼굴의 특징 벡터의 변화량이 임계값을 초과하는지 여부를 판단할 수 있다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 얼굴의 특징 벡터의 변화량이 임계값을 초과하는 경우, 상기 사용자의 얼굴이 페이크 이미지가 아닌 것으로 결정하고, 출입구(1001)의 잠금 상태를 해제하거나, 또는 제1 인증을 수행할 수 있다.
도 11은 본 개시의 일 실시예에 따른 사용자 장치의 모션 감지 동작의 예를 설명하기 위한 도면이다.
일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 도 2의 203 단계에서의 사용자의 얼굴 영역을 검출하는 동작을 수행하기에 앞서, 얼굴 영역을 검출하는데 사용되는 리소스를 효율적으로 감소시키기 위하여, 이미지 프레임 내에서 움직이는 객체에 대응하는 영역에 기반하여 사용자의 얼굴 영역을 검출할 수 있다. 일 실시예에 따르면, 사용자 장치(100)는 카메라(예: 도 1의 카메라(121))를 통하여 획득한 이미지 프레임들을 분석하여, 이미지 프레임 내에서 움직이는 객체를 식별할 수 있다. 예를 들어, 도 11의 <1101>에 도시된 바와 같이, 사용자 장치(100)는 카메라(121)를 통하여 획득한 이미지 프레임들을 분석할 수 있고, 도 11의 <1102>에 도시된 바와 같이, 이미지 프레임들을 분석한 결과, 이미지 프레임 내에서 움직이는 객체(1110)를 식별할 수 있다. 일 실시예에 따르면, 사용자 장치(100)는 움직이는 객체를 기준으로 정해진 범위를 갖는 관심 영역을 설정할 수 있다. 예를 들어, 도 11의 <1103>을 참조하면, 사용자 장치(100)는 이미지 프레임 내에서 움직이는 객체(1110)를 기준으로 정해진 범위를 갖는 관심 영역(1111)을 크롭(crop)할 수 있고, 상기 크롭된 관심 영역(1111)을 정해진 크기로 리사이즈한 이미지로부터 사용자의 얼굴 영역을 검출할 수 있다. 기존에는, 이미지 분석을 위한 네트워크 사이즈에 대응하도록, 도 11의 <1101>에 도시된 이미지 프레임을 <1104>에 도시된 이미지 프레임으로 축소하는 방식, 즉 이미지 프레임의 전체 영역을 축소한 후, 축소된 이미지 프레임으로부터 얼굴 영역을 검출하였으나, 해당 방법은 사용자의 얼굴 영역도 동일한 비율로 작게 축소되므로 얼굴 영역이 명확히 검출되지 않는 문제점이 존재할 수 있다. 본 개시에 따라 개선된 방법에서는, 도 11의 <1103>에 도시된 이미지 프레임의 관심 영역(1111)을 추출하여, 얼굴 영역의 검출을 위한 네트워크의 이미지 프레임 사이즈에 대응하도록 상기 관심 영역(1111)을 도 11의 <1105>에 도시된 이미지 프레임으로 축소하는 방식을 이용할 수 있다.
도 12는 본 개시의 일 실시예에 따른 사용자 장치의 동작을 설명하기 위한 흐름도이다.
도 13은 본 개시의 일 실시예에 따른 기존에 등록된 기준 얼굴 이미지를 업데이트하는 실시예를 설명하기 위한 도면이다.
1201 단계에서, 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 카메라(예: 도 1의 카메라(121))를 통하여 복수의 시점들에서 촬영한 복수의 제1 이미지들로부터 사용자의 얼굴 영역들을 검출할 수 있다. 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 지정된 시간 동안 미리 정해진 개수만큼 복수의 제1 이미지들을 촬영할 수 있고, 촬영된 복수의 제1 이미지들 각각으로부터 사용자의 얼굴 영역들을 검출할 수 있다. 일 실시예에 따르면, 사용자 장치(100)는 도 2의 201 단계 및 203 단계에서 설명된 방법을 이용하여 복수의 제1 이미지들을 촬영하고, 촬영된 복수의 제1 이미지들 각각으로부터 사용자의 얼굴 영역들을 검출한 복수의 제2 이미지들을 확인할 수 있다.
1203 단계에서, 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는, 사용자의 얼굴 영역들을 포함하는 복수의 제2 이미지들 각각에 대하여 메모리(예: 도 1의 메모리(170))에 저장된 복수의 기준 얼굴 이미지들과의 일치율을 산출할 수 있고, 복수의 제2 이미지들 각각에 대하여 복수의 기준 얼굴 이미지들과의 일치율 중에서 가장 높은 일치율을 선택할 수 있다. 예를 들어, 사용자 장치(100)는 복수의 제2 이미지들 중 제1 특정 이미지와 복수의 기준 얼굴 이미지들과의 일치율을 산출할 수 있고, 제1 특정 이미지와 복수의 기준 얼굴 이미지들과의 일치율 중에서 가장 높은 일치율인 제1 일치율을 선택할 수 있다. 또 다른 예를 들어, 사용자 장치(100)는 복수의 제2 이미지들 중 제2 특정 이미지와 복수의 기준 얼굴 이미지들과의 일치율을 산출할 수 있고, 제2 특정 이미지와 복수의 기준 얼굴 이미지들과의 일치율 중에서 가장 높은 일치율인 제2 일치율을 선택할 수 있다. 이러한 방식으로, 사용자 장치(100)는 복수의 제2 이미지들 모두에 대하여, 복수의 기준 얼굴 이미지들과의 일치율을 산출할 수 있고, 복수의 제2 이미지들 각각에 대하여 복수의 기준 얼굴 이미지들과의 일치율 중에서 가장 높은 일치율을 선택할 수 있다. 일 실시예에 따르면, 사용자 장치(100)는 도 2의 205 단계에서 설명된 방법을 이용하여 제2 이미지 내의 사용자의 얼굴 영역과 복수의 기준 얼굴 이미지들 사이의 일치율을 산출할 수 있다. 더욱 구체적인 예를 들어, 도 13을 참조하면, 메모리(170)에 제1 측면 기준 얼굴 이미지(1301), 정면 기준 얼굴 이미지(1302), 및 제2 측면 기준 얼굴 이미지(1303)가 등록되어 있고, 복수의 제2 이미지들 중 하나로서 제1 특정 이미지(1310)를 획득한 경우, 사용자 장치(100)는 이미지의 랜드마크(특징점)에 기초하여 기준 얼굴 이미지들(1301, 1302, 1303) 각각에 대한 제1 특정 이미지(1310)의 일치율을 산출할 수 있고, 제1 특정 이미지(1310)와 가장 높은 일치율을 가진 정면 기준 얼굴 이미지(1302)를 선택할 수 있다.
1205 단계에서, 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는, 선택된 일치율들 중에서 제1 임계값을 초과하는 일치율의 개수가 제1 정해진 개수를 만족하는지 여부를 판단할 수 있다. 예를 들어, 복수의 제2 이미지들의 개수가 10개이고, 복수의 제2 이미지들에 대응하는 일치율들 중에서 제1 임계값을 초과하는 일치율의 개수가 제1 정해진 개수(예: 5개) 이상인 경우, 사용자 장치(100)는 제1 임계값을 초과하는 일치율의 개수가 정해진 개수를 만족하는 것으로 결정할 수 있다. 또 다른 예를 들어, 복수의 제2 이미지들의 개수가 10개이고, 복수의 제2 이미지들에 대응하는 일치율들 중에서 제1 임계값을 초과하는 일치율의 개수가 제1 정해진 개수(예: 5개) 미만인 경우, 사용자 장치(100)는 제1 임계값을 초과하는 일치율의 개수가 제1 정해진 개수를 만족하지 못하는 것으로 결정할 수 있다.
1207 단계에서, 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는, 선택된 일치율들 중에서 제1 임계값을 초과하는 일치율의 개수가 제1 정해진 개수를 만족하는 경우, 상기 선택된 일치율들에 관한 기준 얼굴 이미지들의 벡터(예: 특징점 별 벡터)에 제1 정해진 비율만큼의 상기 선택된 일치율들에 관한 제2 이미지들의 벡터를 적용함으로써, 상기 기준 얼굴 이미지들의 벡터를 업데이트할 수 있다. 일 실시예에 따르면, 제1 정해진 비율은 5%일 수 있고, 이는 하나의 예일 뿐 이에 한정되지 않고, 제1 정해진 비율은 사용자 또는 사용자 장치(100)의 제조사에 의하여 다양하게 설정될 수 있다. 선택된 일치율들에 관한 제2 이미지들은, 제1 인증을 수행하기 위하여, 1201 단계에서 촬영된 최근 이미지들에 기반하는 이미지들로서, 사용자 장치(100)는 최근에 촬영된 사용자의 얼굴 이미지를 이용하여 기존에 등록되어 있는 사용자의 기준 얼굴 이미지를 업데이트할 수 있다. 예를 들어, 도 13을 참조하면, 사용자 장치(100)는 정면 기준 얼굴 이미지(1302)의 벡터에 제1 정해진 비율(예: 5%)의 제1 특정 이미지(1310)의 벡터를 적용함으로써, 정면 기준 얼굴 이미지(1302)를 업데이트할 수 있다. 후술하는 1213 단계 및 1215 단계에서의 기준 얼굴 이미지를 업데이트하는 방법도 전술한 바와 같이 수행될 수 있다.
1209 단계에서, 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는, 사용자의 얼굴 영역에 대한 제1 인증을 성공한 것으로 결정할 수 있다. 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 사용자의 얼굴 영역에 대한 제1 인증을 성공한 경우, 미리 정해진 동작을 수행할 수 있다. 예를 들어, 사용자 장치(100)가 도 10의 출입문 제어 장치로서 동작하는 경우, 사용자 장치(100)는 제1 인증을 성공함에 따라 상기 사용자 장치(100)와 유선 및/또는 무선으로 연결된 출입문을 열도록 하는 제어 신호를 출입문으로 송신할 수 있다. 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 사용자의 얼굴 영역에 대한 제1 인증을 성공한 경우, 도 2의 207 단계 및 209 단계의 동작을 수행할 수 있다. 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 선택된 일치율들 중에서 제1 임계값을 초과하는 일치율의 개수가 제1 정해진 개수를 만족하는 경우, 사용자의 얼굴 영역에 대한 제1 인증을 성공한 것으로 결정할 수 있다.
1211 단계에서, 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는, 선택된 일치율들 중에서 제1 임계값을 초과하는 일치율의 개수가 제1 정해진 개수를 만족하지 못하는 경우, 선택된 일치율들 중에서 제1 임계값 보다 작은 제2 임계값을 초과하는 일치율의 개수가 제2 정해진 개수를 만족하는지 여부를 판단할 수 있다. 예를 들어, 복수의 제2 이미지들의 개수가 10개이고, 복수의 제2 이미지들에 대응하는 일치율들 중에서 제2 임계값을 초과하는 일치율의 개수가 제2 정해진 개수(예: 4개) 이상인 경우, 사용자 장치(100)는 제2 임계값을 초과하는 일치율의 개수가 제2 정해진 개수를 만족하는 것으로 결정할 수 있다. 또 다른 예를 들어, 복수의 제2 이미지들의 개수가 10개이고, 복수의 제2 이미지들에 대응하는 일치율들 중에서 제2 임계값을 초과하는 일치율의 개수가 제2 정해진 개수(예: 4개) 미만인 경우, 사용자 장치(100)는 제2 임계값을 초과하는 일치율의 개수가 제2 정해진 개수를 만족하지 못하는 것으로 결정할 수 있다.
1213 단계에서, 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는, 선택된 일치율들 중에서 제2 임계값을 초과하는 일치율의 개수가 제2 정해진 개수를 만족하는 경우, 상기 선택된 일치율들에 관한 기준 얼굴 이미지들의 벡터(예: 특징점 별 벡터)에 제1 정해진 비율 보다 작은 제2 정해진 비율만큼의 상기 선택된 일치율들에 관한 제2 이미지들의 벡터를 적용함으로써, 상기 기준 얼굴 이미지들의 벡터를 업데이트할 수 있다. 일 실시예에 따르면, 제2 정해진 비율은 2.5%일 수 있고, 이는 하나의 예일 뿐 이에 한정되지 않고, 제2 정해진 비율은 사용자 또는 사용자 장치(100)의 제조사에 의하여 다양하게 설정될 수 있다. 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는 선택된 일치율들 중에서 제2 임계값을 초과하는 일치율의 개수가 제2 정해진 개수를 만족하는 경우, 1209 단계에서의 사용자의 얼굴 영역에 대한 제1 인증을 성공한 것으로 결정할 수 있다.
1215 단계에서, 일 실시예에 따르면, 사용자 장치(100)(예: 도 1의 프로세서(180))는, 선택된 일치율들 중에서 제2 임계값을 초과하는 일치율의 개수가 제2 정해진 개수를 만족하지 못하는 경우, 사용자 장치(100)에 대한 추가 인증을 성공하는 것에 기반하여, 상기 선택된 일치율들에 관한 기준 얼굴 이미지들의 벡터(예: 특징점 별 벡터)에 제2 정해진 비율 보다 작은 제3 정해진 비율만큼의 상기 선택된 일치율들에 관한 제2 이미지들의 벡터를 적용함으로써, 상기 기준 얼굴 이미지들의 벡터를 업데이트할 수 있다. 상술한 실시예에서 사용자 장치(100)에 대한 추가 인증은, 사용자 장치(100)가 출입문 제어 장치로 동작하는 경우, 비밀번호나 등록된 키를 입력하여 직접 출입문을 여는 동작을 포함할 수 있고, 또는 등록된 비밀번호 및/또는 등록된 생체 정보(예: 지문, 홍채) 인식으로 사용자 장치(100)에 대한 사용자 인증을 수행하는 동작을 포함할 수 있다. 일 실시예에 따르면, 제3 정해진 비율은 1%일 수 있고, 이는 하나의 예일 뿐 이에 한정되지 않고, 제3 정해진 비율은 사용자 또는 사용자 장치(100)의 제조사에 의하여 다양하게 설정될 수 있다.
전술한 본 명세서는 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는 HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 명세서의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 명세서의 등가적 범위 내에서의 모든 변경은 본 명세서의 범위에 포함된다.
본 개시의 일 실시예에 따르면, 사용자 장치의 동작 방법은, 상기 사용자 장치의 카메라를 통하여 사용자의 얼굴을 포함하는 제1 이미지를 획득하는 단계; 제1 인공지능 모델을 이용하여, 상기 제1 이미지로부터 상기 사용자의 얼굴 영역을 검출하는 단계; 제2 인공지능 모델을 이용하여, 상기 얼굴 영역에 대한 제1 인증을 수행하는 단계; 상기 제1 인증을 성공하는 경우, 상기 제1 인증의 성공을 나타내는 알림을 제공하고, 상기 사용자에 대응하는 특정 촬영 방법에 관한 히든 키를 이용하여 상기 사용자에 대한 제2 인증을 수행하는 단계; 및 상기 제2 인증을 성공하는 경우, 미리 정해진 특정 기능을 수행하는 단계;를 포함할 수 있다.
본 개시의 일 실시예에 따르면, 상기 동작 방법은, 상기 제1 인증을 성공하는 경우, 상기 사용자의 사용자 식별 정보와 연관되는 상기 특정 촬영 방법에 관한 상기 히든 키를 식별하는 단계; 상기 히든 키에 기반하여, 상기 카메라를 통하여 상기 사용자의 얼굴을 포함하는 복수의 제2 이미지들을 획득하는 단계; 상기 사용자 식별 정보와 연관되는 복수의 제1 이미지들과 상기 복수의 제2 이미지들 사이의 유사도를 판단하는 단계; 및 상기 유사도가 임계값을 초과하는 경우, 상기 제2 인증을 성공하는 것으로 결정하는 단계;를 포함하고 상기 특정 촬영 방법은, 상기 사용자 장치의 디스플레이부에서 특정 순서로 각기 다른 영역을 통하여 서로 다른 색상을 출력하는 방법을 포함할 수 있다.
본 개시의 일 실시예에 따르면, 상기 동작 방법은, 상기 제1 인증을 수행하기에 앞서, 상기 사용자 장치에 대한 상기 사용자의 얼굴 각도의 변화에 따라 촬영된 이미지들 내에서 상기 사용자의 얼굴의 특징점들을 검출하고, 상기 검출된 특징점들 중에서 미리 정해진 특징점들 사이의 거리를 산출하는 단계; 상기 사용자의 얼굴 각도의 변화에 따라 상기 미리 정해진 특징점들 사이의 거리의 변화가 임계값 이하로 감소하는지를 판단하는 단계; 및 상기 미리 정해진 특징점들 사이의 거리의 변화가 상기 임계값 이하로 감소하는 경우, 상기 제1 인증을 수행하는 단계;를 포함할 수 있다.
본 개시의 일 실시예에 따르면, 상기 동작 방법은, 상기 사용자가 상기 사용자 장치에 접근하는 동안, 상기 사용자의 접근을 감지하는 것에 기반하여, 상기 제1 인증 및 상기 제2 인증을 연속적으로 수행하는 단계; 및 상기 제1 인증 및 제2 인증을 성공한 후에 제1 특정 제스처를 인식한 시점으로부터 미리 정해진 시간 이내에 제2 특정 제스처를 인식하는 경우, 상기 제2 특정 제스처에 대응하는 제1 기능을 수행하는 단계;를 포함할 수 있다.
본 개시의 일 실시예에 따르면, 프로세서에 의해 실행 가능한 프로그램 코드를 저장하는 비일시적 컴퓨터 판독가능 매체에 있어서, 상기 프로그램 코드가 실행되는 경우 상기 프로그램 코드는 상기 프로세서가: 사용자 장치의 카메라를 통하여 사용자의 얼굴을 포함하는 제1 이미지를 획득하고, 제1 인공지능 모델을 이용하여, 상기 제1 이미지로부터 상기 사용자의 얼굴 영역을 검출하고, 제2 인공지능 모델을 이용하여, 상기 얼굴 영역에 대한 제1 인증을 수행하고, 상기 제1 인증을 성공하는 경우, 상기 제1 인증의 성공을 나타내는 알림을 제공하고, 상기 사용자에 대응하는 특정 촬영 방법에 관한 히든 키를 이용하여 상기 사용자에 대한 제2 인증을 수행하고, 및 상기 제2 인증을 성공하는 경우, 미리 정해진 특정 기능을 수행하도록 할 수 있다.
본 개시의 일 실시예에 따르면, 사용자 장치는, 카메라, 디스플레이부, 및 프로세서를 포함하고, 상기 프로세서는, 상기 카메라를 통하여 사용자의 얼굴을 포함하는 제1 이미지를 획득하고, 제1 인공지능 모델을 이용하여, 상기 제1 이미지로부터 상기 사용자의 얼굴 영역을 검출하고, 제2 인공지능 모델을 이용하여, 상기 얼굴 영역에 대한 제1 인증을 수행하고, 상기 제1 인증을 성공하는 경우, 상기 제1 인증의 성공을 나타내는 알림을 제공하고, 상기 사용자에 대응하는 특정 촬영 방법에 관한 히든 키를 이용하여 상기 사용자에 대한 제2 인증을 수행하고, 및 상기 제2 인증을 성공하는 경우, 미리 정해진 특정 기능을 수행하도록 설정될 수 있다.
본 개시의 일 실시예에 따르면, 상기 제1 인증을 성공하는 경우, 상기 프로세서는, 상기 제1 인증의 성공을 나타내는 특정 메시지를 상기 알림으로서 표시하도록 상기 디스플레이부를 제어하는 동작, 상기 제1 인증의 성공을 나타내는 특정 소리를 상기 알림으로서 출력하도록 음향출력부를 제어하는 동작, 상기 제1 인증의 성공을 나타내는 특정 진동을 상기 알림으로서 출력하도록 햅틱모듈을 제어하는 동작, 또는 상기 제1 인증의 성공을 나타내는 특정 색상의 빛을 발광하도록 광출력부를 제어하는 동작 중 적어도 하나를 수행하도록 설정될 수 있다.
본 개시의 일 실시예에 따르면, 상기 프로세서는, 상기 제1 인증을 성공하는 경우, 상기 사용자의 사용자 식별 정보와 연관되는 상기 특정 촬영 방법에 관한 상기 히든 키를 식별하고, 상기 히든 키에 기반하여, 상기 카메라를 통하여 상기 사용자의 얼굴을 포함하는 복수의 제2 이미지들을 획득하고, 상기 사용자 식별 정보와 연관되는 복수의 제1 이미지들과 상기 복수의 제2 이미지들 사이의 유사도를 판단하고, 및 상기 유사도가 임계값을 초과하는 경우, 상기 제2 인증을 성공하는 것으로 결정하도록 설정되고, 상기 특정 촬영 방법은, 상기 디스플레이부에서 특정 순서로 각기 다른 영역을 통하여 서로 다른 색상을 출력하는 방법을 포함할 수 있다.
본 개시의 일 실시예에 따르면, 상기 프로세서는, 상기 제1 인증을 수행하기에 앞서, 상기 사용자 장치에 대한 상기 사용자의 얼굴 각도의 변화에 따라 촬영된 이미지들 내에서 상기 사용자의 얼굴의 특징점들을 검출하고, 상기 검출된 특징점들 중에서 미리 정해진 특징점들 사이의 거리를 산출하고, 상기 사용자의 얼굴 각도의 변화에 따라 상기 미리 정해진 특징점들 사이의 거리의 변화가 임계값 이하로 감소하는지를 판단하고, 및 상기 미리 정해진 특징점들 사이의 거리의 변화가 상기 임계값 이하로 감소하는 경우, 상기 제1 인증을 수행하도록 설정될 수 있다.
본 개시의 일 실시예에 따르면, 상기 프로세서는, 상기 사용자가 상기 사용자 장치에 접근하는 동안, 상기 사용자의 접근을 감지하는 것에 기반하여, 상기 제1 인증 및 상기 제2 인증을 연속적으로 수행하고, 및 상기 제1 인증 및 상기 제2 인증을 성공한 후에 제1 특정 제스처를 인식한 시점으로부터 미리 정해진 시간 이내에 제2 특정 제스처를 인식하는 경우, 상기 제2 특정 제스처에 대응하는 제1 기능을 수행하도록 설정될 수 있다.
본 개시의 일 실시예에 따르면, 상기 프로세서는, 상기 제1 이미지 내의 움직이는 객체를 식별하고, 상기 움직이는 객체를 기준으로 정해진 범위를 갖는 관심 영역을 크롭(crop)하고, 및 상기 크롭된 관심 영역을 정해진 크기로 리사이즈한 이미지로부터 상기 사용자의 얼굴 영역을 검출하도록 설정될 수 있다.
본 개시의 일 실시예에 따르면, 상기 프로세서는, 상기 사용자 장치에 등록된 복수의 기준 얼굴 이미지들과 상기 사용자의 상기 얼굴 영역을 포함하는 이미지 사이의 일치율에 기반하여, 상기 복수의 기준 얼굴 이미지들 중 적어도 하나의 특징점 벡터를 업데이트하도록 설정될 수 있다.
본 개시의 일 실시예에 따르면, 상기 프로세서는, 상기 사용자 장치와 유선 및/또는 무선으로 연결된 외부 카메라 장치로부터 수신된 사용자들의 얼굴 이미지들을 분석하여 특정 사용자가 미등록 사용자인지 여부를 판단하고, 및 상기 미등록 사용자의 얼굴 이미지로부터 정해진 형태의 특징 벡터를 검출하는 경우, 상기 미등록 사용자를 상기 사용자 장치에 자동으로 등록하고, 상기 미등록 사용자의 얼굴 이미지를 촬영하는 동작을 생략하도록 설정될 수 있다.
본 개시의 일 실시예에 따르면, 상기 사용자 장치는, 베이스, 및 상기 베이스 상에 수직 방향으로 설치되, 상기 디스플레이부를 지지하는 지지부를 포함하는, 스탠드 형태로 이루어질 수 있다.

Claims (15)

  1. 사용자 장치의 동작 방법으로서,
    상기 사용자 장치의 카메라를 통하여 사용자의 얼굴을 포함하는 복수의 제1 이미지들을 획득하는 단계;
    제1 인공지능 모델을 이용하여, 상기 복수의 제1 이미지들로부터 상기 사용자의 얼굴 영역을 검출하는 단계;
    제2 인공지능 모델을 이용하여, 상기 얼굴 영역에 대한 제1 인증을 수행하는 단계;
    상기 제1 인증을 성공하는 경우, 상기 사용자에 대응하는 촬영 방법을 이용하여 상기 사용자에 대한 제2 인증을 수행하는 단계; 및
    상기 제2 인증을 성공하는 경우, 미리 정해진 특정 기능을 수행하는 단계;를 포함하고,
    상기 사용자 장치의 동작 방법은,
    상기 복수의 제1 이미지들로부터 상기 사용자의 얼굴 영역을 검출함에 기반하여, 상기 검출된 얼굴 영역을 포함하는 복수의 제2 이미지들을 획득하는 단계;
    상기 복수의 제2 이미지들 각각에 대하여, 상기 사용자 장치에 등록되고 얼굴 영역을 포함하는 복수의 기준 얼굴 이미지들과의 제1 일치율들을 산출하는 단계;
    상기 복수의 제2 이미지들 각각에 대하여 상기 산출된 제1 일치율들 중에서 가장 높은 제2 일치율을 확인함으로써, 상기 복수의 제2 이미지들 각각에 대응하는 복수의 제2 일치율들을 획득하는 단계;
    상기 복수의 제2 일치율들 중에서 제1 임계값을 초과하는 제2 일치율의 개수가 제1 개수 이상인지 여부를 확인하는 단계;
    상기 제1 임계값을 초과하는 상기 제2 일치율의 상기 개수가 상기 제1 개수 이상임을 확인함에 기반하여, 상기 복수의 기준 얼굴 이미지들의 특징점 벡터들에 대하여, 상기 복수의 제2 이미지들의 특징점 벡터들 중 제1 비율에 해당하는 특징점 벡터들을 적용함으로써, 상기 복수의 기준 얼굴 이미지들을 업데이트하는 단계;
    상기 제1 임계값을 초과하는 상기 제2 일치율의 상기 개수가 상기 제1 개수 미만임을 확인함에 기반하여, 상기 복수의 제2 일치율들 중에서 상기 제1 임계 값 보다 작은 제2 임계 값을 초과하는 상기 제2 일치율의 개수가 제2 개수 이상인지 여부를 확인하는 단계; 및
    상기 제2 임계 값을 초과하는 상기 제2 일치율의 상기 개수가 상기 제2 개수 이상임을 확인함에 기반하여, 상기 복수의 기준 얼굴 이미지들의 상기 특징점 벡터들에 대하여, 상기 복수의 제2 이미지들의 특징점 벡터들 중 상기 제1 비율 보다 작은 제2 비율에 해당하는 특징점 벡터들을 적용함으로써, 상기 복수의 기준 얼굴 이미지들을 업데이트하는 단계를 더 포함하는, 사용자 장치의 동작 방법.
  2. 제1 항에 있어서,
    상기 제1 인증을 성공하는 경우, 상기 사용자의 사용자 식별 정보와 연관되는 상기 촬영 방법에 관한 히든 키를 식별하는 단계;
    상기 히든 키에 기반하여, 상기 카메라를 통하여 상기 사용자의 얼굴을 포함하는 복수의 제3 이미지들을 획득하는 단계;
    상기 사용자 식별 정보와 연관되는 복수의 제4 이미지들과 상기 복수의 제3 이미지들 사이의 유사도를 판단하는 단계; 및
    상기 유사도가 임계값을 초과하는 경우, 상기 제2 인증을 성공하는 것으로 결정하는 단계;를 포함하고,
    상기 촬영 방법은, 상기 사용자 장치의 디스플레이부가 상기 디스플레이부에 포함된 복수의 영역들을 통하여 상기 복수의 영역들에 각각 대응하는 서로 다른 색상들을 순차적으로 출력하는 동안, 상기 카메라를 통하여 상기 복수의 제3 이미지들을 획득하는 방법을 포함하는, 사용자 장치의 동작 방법.
  3. 제1 항에 있어서,
    상기 제1 인증을 수행하기에 앞서, 상기 사용자 장치에 대한 상기 사용자의 얼굴 각도의 변화에 따라 촬영된 이미지들 내에서 상기 사용자의 얼굴의 특징점들을 검출하고, 상기 검출된 특징점들 중에서 미리 정해진 특징점들 사이의 거리를 산출하는 단계;
    상기 사용자의 얼굴 각도의 변화에 따라 상기 미리 정해진 특징점들 사이의 거리의 변화가 임계값 이하로 감소하는지를 판단하는 단계; 및
    상기 미리 정해진 특징점들 사이의 거리의 변화가 상기 임계값 이하로 감소하는 경우, 상기 제1 인증을 수행하는 단계;를 포함하는, 사용자 장치의 동작 방법.
  4. 제1 항에 있어서,
    상기 사용자가 상기 사용자 장치에 접근하는 동안, 상기 사용자의 접근을 감지하는 것에 기반하여, 상기 제1 인증 및 상기 제2 인증을 연속적으로 수행하는 단계; 및
    상기 제1 인증 및 제2 인증을 성공한 후에 제1 특정 제스처를 인식한 시점으로부터 미리 정해진 시간 이내에 제2 특정 제스처를 인식하는 경우, 상기 제2 특정 제스처에 대응하는 제1 기능을 수행하는 단계;를 포함하는, 사용자 장치의 동작 방법.
  5. 프로세서에 의해 실행 가능한 컴퓨터 프로그램을 저장한 비일시적 컴퓨터 판독가능 매체에 있어서, 상기 컴퓨터 프로그램이 실행되는 경우 상기 컴퓨터 프로그램은 상기 프로세서가:
    사용자 장치의 카메라를 통하여 사용자의 얼굴을 포함하는 복수의 제1 이미지들을 획득하고,
    제1 인공지능 모델을 이용하여, 상기 복수의 제1 이미지들로부터 상기 사용자의 얼굴 영역을 검출하고,
    제2 인공지능 모델을 이용하여, 상기 얼굴 영역에 대한 제1 인증을 수행하고,
    상기 제1 인증을 성공하는 경우, 상기 사용자에 대응하는 촬영 방법을 이용하여 상기 사용자에 대한 제2 인증을 수행하고, 및
    상기 제2 인증을 성공하는 경우, 미리 정해진 특정 기능을 수행하도록 하고,
    상기 컴퓨터 프로그램은, 상기 프로세서가:
    상기 복수의 제1 이미지들로부터 상기 사용자의 얼굴 영역을 검출함에 기반하여, 상기 검출된 얼굴 영역을 포함하는 복수의 제2 이미지들을 획득하고,
    상기 복수의 제2 이미지들 각각에 대하여, 상기 사용자 장치에 등록되고 얼굴 영역을 포함하는 복수의 기준 얼굴 이미지들과의 제1 일치율들을 산출하고,
    상기 복수의 제2 이미지들 각각에 대하여 상기 산출된 제1 일치율들 중에서 가장 높은 제2 일치율을 확인함으로써, 상기 복수의 제2 이미지들 각각에 대응하는 복수의 제2 일치율들을 획득하고,
    상기 복수의 제2 일치율들 중에서 제1 임계값을 초과하는 제2 일치율의 개수가 제1 개수 이상인지 여부를 확인하고,
    상기 제1 임계값을 초과하는 상기 제2 일치율의 상기 개수가 상기 제1 개수 이상임을 확인함에 기반하여, 상기 복수의 기준 얼굴 이미지들의 특징점 벡터들에 대하여, 상기 복수의 제2 이미지들의 특징점 벡터들 중 제1 비율에 해당하는 특징점 벡터들을 적용함으로써, 상기 복수의 기준 얼굴 이미지들을 업데이트하고,
    상기 제1 임계값을 초과하는 상기 제2 일치율의 상기 개수가 상기 제1 개수 미만임을 확인함에 기반하여, 상기 복수의 제2 일치율들 중에서 상기 제1 임계 값 보다 작은 제2 임계 값을 초과하는 상기 제2 일치율의 개수가 제2 개수 이상인지 여부를 확인하고, 및
    상기 제2 임계 값을 초과하는 상기 제2 일치율의 상기 개수가 상기 제2 개수 이상임을 확인함에 기반하여, 상기 복수의 기준 얼굴 이미지들의 상기 특징점 벡터들에 대하여, 상기 복수의 제2 이미지들의 특징점 벡터들 중 상기 제1 비율 보다 작은 제2 비율에 해당하는 특징점 벡터들을 적용함으로써, 상기 복수의 기준 얼굴 이미지들을 업데이트하도록 하는, 비일시적 컴퓨터 판독가능 매체.
  6. 사용자 장치로서,
    카메라,
    디스플레이부, 및
    프로세서를 포함하고,
    상기 프로세서는,
    상기 카메라를 통하여 사용자의 얼굴을 포함하는 복수의 제1 이미지들을 획득하고,
    제1 인공지능 모델을 이용하여, 상기 복수의 제1 이미지들로부터 상기 사용자의 얼굴 영역을 검출하고,
    제2 인공지능 모델을 이용하여, 상기 얼굴 영역에 대한 제1 인증을 수행하고,
    상기 제1 인증을 성공하는 경우, 상기 사용자에 대응하는 촬영 방법을 이용하여 상기 사용자에 대한 제2 인증을 수행하고, 및
    상기 제2 인증을 성공하는 경우, 미리 정해진 특정 기능을 수행하도록 설정되고,
    상기 프로세서는,
    상기 복수의 제1 이미지들로부터 상기 사용자의 얼굴 영역을 검출함에 기반하여, 상기 검출된 얼굴 영역을 포함하는 복수의 제2 이미지들을 획득하고,
    상기 복수의 제2 이미지들 각각에 대하여, 상기 사용자 장치에 등록되고 얼굴 영역을 포함하는 복수의 기준 얼굴 이미지들과의 제1 일치율들을 산출하고,
    상기 복수의 제2 이미지들 각각에 대하여 상기 산출된 제1 일치율들 중에서 가장 높은 제2 일치율을 확인함으로써, 상기 복수의 제2 이미지들 각각에 대응하는 복수의 제2 일치율들을 획득하고,
    상기 복수의 제2 일치율들 중에서 제1 임계값을 초과하는 제2 일치율의 개수가 제1 개수 이상인지 여부를 확인하고,
    상기 제1 임계값을 초과하는 상기 제2 일치율의 상기 개수가 상기 제1 개수 이상임을 확인함에 기반하여, 상기 복수의 기준 얼굴 이미지들의 특징점 벡터들에 대하여, 상기 복수의 제2 이미지들의 특징점 벡터들 중 제1 비율에 해당하는 특징점 벡터들을 적용함으로써, 상기 복수의 기준 얼굴 이미지들을 업데이트하고,
    상기 제1 임계값을 초과하는 상기 제2 일치율의 상기 개수가 상기 제1 개수 미만임을 확인함에 기반하여, 상기 복수의 제2 일치율들 중에서 상기 제1 임계 값 보다 작은 제2 임계 값을 초과하는 상기 제2 일치율의 개수가 제2 개수 이상인지 여부를 확인하고, 및
    상기 제2 임계 값을 초과하는 상기 제2 일치율의 상기 개수가 상기 제2 개수 이상임을 확인함에 기반하여, 상기 복수의 기준 얼굴 이미지들의 상기 특징점 벡터들에 대하여, 상기 복수의 제2 이미지들의 특징점 벡터들 중 상기 제1 비율 보다 작은 제2 비율에 해당하는 특징점 벡터들을 적용함으로써, 상기 복수의 기준 얼굴 이미지들을 업데이트하도록 설정된 사용자 장치.
  7. 제6 항에 있어서,
    음향출력부; 및
    햅틱모듈; 및
    광출력부를 더 포함하고,
    상기 제1 인증을 성공하는 경우, 상기 프로세서는,
    상기 제1 인증의 성공을 나타내는 특정 메시지를 표시하도록 상기 디스플레이부를 제어하는 동작,
    상기 제1 인증의 성공을 나타내는 특정 소리를 출력하도록 상기 음향출력부를 제어하는 동작,
    상기 제1 인증의 성공을 나타내는 특정 진동을 출력하도록 상기 햅틱모듈을 제어하는 동작, 또는
    상기 제1 인증의 성공을 나타내는 특정 색상의 빛을 발광하도록 상기 광출력부를 제어하는 동작 중 적어도 하나를 수행하도록 설정된, 사용자 장치.
  8. 제6 항에 있어서,
    상기 프로세서는,
    상기 제1 인증을 성공하는 경우, 상기 사용자의 사용자 식별 정보와 연관되는 상기 촬영 방법에 관한 히든 키를 식별하고,
    상기 히든 키에 기반하여, 상기 카메라를 통하여 상기 사용자의 얼굴을 포함하는 복수의 제3 이미지들을 획득하고,
    상기 사용자 식별 정보와 연관되는 복수의 제4 이미지들과 상기 복수의 제3 이미지들 사이의 유사도를 판단하고, 및
    상기 유사도가 임계값을 초과하는 경우, 상기 제2 인증을 성공하는 것으로 결정하도록 설정되고,
    상기 촬영 방법은, 상기 디스플레이부가 상기 디스플레이부에 포함된 복수의 영역들을 통하여 상기 복수의 영역들에 각각 대응하는 서로 다른 색상들을 순차적으로 출력하는 동안, 상기 카메라를 통하여 상기 복수의 제3 이미지들을 획득하는 방법을 포함하는, 사용자 장치.
  9. 제6 항에 있어서,
    상기 프로세서는,
    상기 제1 인증을 수행하기에 앞서, 상기 사용자 장치에 대한 상기 사용자의 얼굴 각도의 변화에 따라 촬영된 이미지들 내에서 상기 사용자의 얼굴의 특징점들을 검출하고, 상기 검출된 특징점들 중에서 미리 정해진 특징점들 사이의 거리를 산출하고,
    상기 사용자의 얼굴 각도의 변화에 따라 상기 미리 정해진 특징점들 사이의 거리의 변화가 임계값 이하로 감소하는지를 판단하고,
    상기 미리 정해진 특징점들 사이의 거리의 변화가 상기 임계값 이하로 감소하는 경우, 상기 제1 인증을 수행하도록 설정된, 사용자 장치.
  10. 제6 항에 있어서,
    상기 프로세서는,
    상기 사용자가 상기 사용자 장치에 접근하는 동안, 상기 사용자의 접근을 감지하는 것에 기반하여, 상기 제1 인증 및 상기 제2 인증을 연속적으로 수행하고, 및
    상기 제1 인증 및 상기 제2 인증을 성공한 후에 제1 특정 제스처를 인식한 시점으로부터 미리 정해진 시간 이내에 제2 특정 제스처를 인식하는 경우, 상기 제2 특정 제스처에 대응하는 제1 기능을 수행하도록 설정된, 사용자 장치.
  11. 제6 항에 있어서,
    상기 프로세서는,
    상기 복수의 제1 이미지들 내에서 움직이는 객체를 식별하고,
    상기 움직이는 객체를 기준으로 정해진 범위를 갖는 관심 영역을 크롭(crop)하고, 및
    상기 크롭된 관심 영역을 정해진 크기로 리사이즈한 이미지로부터 상기 사용자의 얼굴 영역을 검출하도록 설정된, 사용자 장치.
  12. 삭제
  13. 제6 항에 있어서,
    상기 프로세서는,
    상기 사용자 장치와 유선 및/또는 무선으로 연결된 외부 카메라 장치로부터 수신된 사용자들의 얼굴 이미지들을 분석하여 특정 사용자가 미등록 사용자인지 여부를 판단하고, 및
    상기 미등록 사용자의 얼굴 이미지로부터 정해진 형태의 특징 벡터를 검출하는 경우, 상기 미등록 사용자를 상기 사용자 장치에 자동으로 등록하고, 상기 미등록 사용자의 얼굴 이미지를 촬영하는 동작을 생략하도록 설정된, 사용자 장치.
  14. 제6 항에 있어서,
    상기 사용자 장치는, 베이스, 및 상기 베이스 상에 수직 방향으로 설치되, 상기 디스플레이부를 지지하는 지지부를 포함하는, 스탠드 형태로 이루어지는 사용자 장치.
  15. 제6 항에 있어서,
    상기 프로세서는,
    상기 제2 임계 값을 초과하는 상기 제2 일치율의 상기 개수가 상기 제2 개수 미만임을 확인함에 기반하여, 상기 사용자에 대한 추가 인증을 수행하고, 및
    상기 사용자에 대한 추가 인증이 성공함에 기반하여, 상기 복수의 기준 얼굴 이미지들의 상기 특징점 벡터들에 대하여, 상기 복수의 제2 이미지들의 특징점 벡터들 중 상기 제2 비율 보다 작은 제3 비율에 해당하는 특징점 벡터들을 적용함으로써, 상기 복수의 기준 얼굴 이미지들을 업데이트하도록 설정된 사용자 장치.
KR1020210184698A 2021-12-22 2021-12-22 얼굴 인식을 이용하는 전자 장치 및 그 동작 방법 KR102578583B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210184698A KR102578583B1 (ko) 2021-12-22 2021-12-22 얼굴 인식을 이용하는 전자 장치 및 그 동작 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210184698A KR102578583B1 (ko) 2021-12-22 2021-12-22 얼굴 인식을 이용하는 전자 장치 및 그 동작 방법

Publications (2)

Publication Number Publication Date
KR20230095329A KR20230095329A (ko) 2023-06-29
KR102578583B1 true KR102578583B1 (ko) 2023-09-15

Family

ID=86946138

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210184698A KR102578583B1 (ko) 2021-12-22 2021-12-22 얼굴 인식을 이용하는 전자 장치 및 그 동작 방법

Country Status (1)

Country Link
KR (1) KR102578583B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014074972A (ja) * 2012-10-03 2014-04-24 Hitachi Ltd 顔画像による本人認証支援システム
KR101897072B1 (ko) * 2018-03-15 2018-10-29 한국인식산업(주) 얼굴 라이브니스 검증 방법 및 검증 장치
KR102188979B1 (ko) * 2020-06-03 2020-12-09 (주)스마트아라 블록체인 기반에서 인공지능을 이용한 사용자 인증 시스템

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180060224A (ko) * 2016-11-28 2018-06-07 주식회사 두넥스 조명 변화를 통한 사용자 인증 장치 및 그 동작 방법
KR102540920B1 (ko) * 2018-05-04 2023-06-07 현대자동차주식회사 차량 단말 및 그의 얼굴 인증 방법
CN110675539B (zh) * 2019-09-26 2022-08-12 深圳市商汤科技有限公司 身份核验方法及装置、电子设备和存储介质
KR102301785B1 (ko) * 2019-12-18 2021-09-15 주식회사 노타 얼굴 연속 인증을 위한 방법 및 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014074972A (ja) * 2012-10-03 2014-04-24 Hitachi Ltd 顔画像による本人認証支援システム
KR101897072B1 (ko) * 2018-03-15 2018-10-29 한국인식산업(주) 얼굴 라이브니스 검증 방법 및 검증 장치
KR102188979B1 (ko) * 2020-06-03 2020-12-09 (주)스마트아라 블록체인 기반에서 인공지능을 이용한 사용자 인증 시스템

Also Published As

Publication number Publication date
KR20230095329A (ko) 2023-06-29

Similar Documents

Publication Publication Date Title
US11100208B2 (en) Electronic device and method for controlling the same
KR102127932B1 (ko) 전자 장치 및 그 제어 방법
CN108664783B (zh) 基于虹膜识别的识别方法和支持该方法的电子设备
US9607138B1 (en) User authentication and verification through video analysis
KR101688168B1 (ko) 이동 단말기 및 그 제어방법
US20220309836A1 (en) Ai-based face recognition method and apparatus, device, and medium
CN111368811B (zh) 活体检测方法、装置、设备及存储介质
TWI706270B (zh) 身分識別方法、裝置和電腦可讀儲存媒體
US10803159B2 (en) Electronic device and method for controlling the same
US12106604B2 (en) Electronic device and method for processing image by same
US20190294954A1 (en) Artificial intelligence server
KR102514036B1 (ko) 전자 장치 및 그 제어 방법
KR20220067926A (ko) 연합학습 모델에서 이상 클라이언트를 제거하는 방법
CN113553887A (zh) 一种基于单目摄像头的活体检测方法、设备和可读存储介质
KR102399809B1 (ko) 전자 장치 및 그 제어 방법
KR102708688B1 (ko) 전자 장치 및 그 제어 방법
CN107977636A (zh) 人脸检测方法及装置、终端、存储介质
KR102172772B1 (ko) 인공지능 서버 및 인공지능 디바이스
CN114140839B (zh) 用于人脸识别的图像发送方法、装置、设备及存储介质
KR102578583B1 (ko) 얼굴 인식을 이용하는 전자 장치 및 그 동작 방법
KR102251076B1 (ko) 실내 이미지를 사용하여 설계도면을 추정하는 방법
KR102663389B1 (ko) 전자 장치 및 그것의 제어 방법
KR102443330B1 (ko) 치아 기반 개인 식별 장치 및 방법
KR102583586B1 (ko) Multi-class 데이터 잠재공간 분리를 위한 오토인코더 모델
KR20220104595A (ko) 중단 없는 기계학습 클러스터 재구성 방법

Legal Events

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