KR102434038B1 - 카메라 모듈을 이용한 클라우드 기반 피부 분석 시스템 및 방법 - Google Patents

카메라 모듈을 이용한 클라우드 기반 피부 분석 시스템 및 방법 Download PDF

Info

Publication number
KR102434038B1
KR102434038B1 KR1020220062027A KR20220062027A KR102434038B1 KR 102434038 B1 KR102434038 B1 KR 102434038B1 KR 1020220062027 A KR1020220062027 A KR 1020220062027A KR 20220062027 A KR20220062027 A KR 20220062027A KR 102434038 B1 KR102434038 B1 KR 102434038B1
Authority
KR
South Korea
Prior art keywords
data
skin
past
analysis
facial
Prior art date
Application number
KR1020220062027A
Other languages
English (en)
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 KR1020220062027A priority Critical patent/KR102434038B1/ko
Application granted granted Critical
Publication of KR102434038B1 publication Critical patent/KR102434038B1/ko
Priority to PCT/KR2023/006152 priority patent/WO2023224298A1/ko

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/44Detecting, measuring or recording for evaluating the integumentary system, e.g. skin, hair or nails
    • A61B5/441Skin evaluation, e.g. for skin disorder diagnosis
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/0059Measuring for diagnostic purposes; Identification of persons using light, e.g. diagnosis by transillumination, diascopy, fluorescence
    • A61B5/0077Devices for viewing the surface of the body, e.g. camera, magnifying lens
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/103Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
    • A61B5/107Measuring physical dimensions, e.g. size of the entire body or parts thereof
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/103Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
    • A61B5/107Measuring physical dimensions, e.g. size of the entire body or parts thereof
    • A61B5/1077Measuring of profiles
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/103Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
    • A61B5/107Measuring physical dimensions, e.g. size of the entire body or parts thereof
    • A61B5/1079Measuring physical dimensions, e.g. size of the entire body or parts thereof using optical or photographic means
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7235Details of waveform analysis
    • A61B5/7264Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/74Details of notification to user or communication with user or patient ; user input means
    • A61B5/7465Arrangements for interactive communication between patient and care services, e.g. by using a telephone network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/30ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for calculating health indices; for individual health risk assessment

Landscapes

  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Biomedical Technology (AREA)
  • Medical Informatics (AREA)
  • Public Health (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Pathology (AREA)
  • Biophysics (AREA)
  • Animal Behavior & Ethology (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Surgery (AREA)
  • Veterinary Medicine (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Dentistry (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Primary Health Care (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Epidemiology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physiology (AREA)
  • Psychiatry (AREA)
  • Signal Processing (AREA)
  • Fuzzy Systems (AREA)
  • Nursing (AREA)
  • Dermatology (AREA)
  • Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
  • Image Analysis (AREA)

Abstract

본 개시의 예시적 실시예에 따른 피부 분석 시스템은, 카메라 모듈을 포함하고, 피시술자를 촬영함으로써 현재 얼굴윤곽데이터 및 현재 피부상태데이터를 포함하는 적어도 하나의 현재 얼굴데이터를 생성하도록 구성된 사용자 단말 및 피시술자의 과거 얼굴윤곽데이터 및 과거 피부상태데이터를 포함하는 과거 얼굴데이터를 저장하는 메모리, 적어도 하나의 현재 얼굴데이터와 과거 얼굴데이터의 적어도 하나의 차이값을 산출하도록 구성된 디퍼런셜 연산 모듈, 및 적어도 하나의 차이값이 가장 큰 현재 얼굴데이터를 대표데이터로 결정하고 대표데이터와의 차이값에 기반해 분석모드신호에 따라 효능확인결과 또는 시술제안결과를 나타내는 분석데이터를 생성하는 피부상태 추론모듈을 포함하는 클라우드 분석장치를 포함하도록 구성될 수 있다.

Description

카메라 모듈을 이용한 클라우드 기반 피부 분석 시스템 및 방법{SKIN ANALYSIS SYSTEM AND METHOD USING CAMERA MODULE BASED ON CLOUD SERVICE}
본 개시는 사용자 단말에 구비된 카메라 모듈을 이용한 클라우드 기반 피부 분석 시스템, 및 이를 이용한 피부 분석 방법에 관한 것이다.
개인 미용에 대한 관심이 증대되는 시대적 흐름에서 피부과 병원 및 피부과 의원(이하, 피부과 병의원)를 찾는 환자들은 지속적으로 증가하고 있다. 그러나, 대부분의 환자들은 본인의 피부 상태를 명확히 진단하지 못한 채 본인의 피부 상태와 무관하게 단순히 인기많은 시술만 처치받는 것이 현실이다.
스마트폰 등 사용자 단말의 성능이 비약적으로 향상되고, 사용자 단말에 구비된 카메라의 해상도 역시 반도체 회로의 고집적화에 따라 대폭 개선되면서, 개인의 피부 상태는 병의원의 정밀 기계를 사용하지 않고도 카메라 모듈만으로도 분석이 가능한 새로운 분석 장치 및 방법이 대두될 필요가 있다.
(특허문헌 1) 등록특허공보 10-2350591 B1(2022.01.18.)
본 개시가 해결하고자 하는 과제는 사용자 단말에 구비된 카메라 모듈을 이용한 클라우드 기반 피부 분석 시스템, 및 이를 이용한 피부 분석 방법을 제공하는 것에 있다.
본 개시가 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상술한 과제를 해결하기 위한 피부 분석 시스템은, 카메라 모듈을 포함하고, 피시술자를 촬영함으로써 현재 얼굴윤곽데이터 및 현재 피부상태데이터를 포함하는 적어도 하나의 현재 얼굴데이터를 생성하도록 구성된 사용자 단말 및 피시술자의 과거 얼굴윤곽데이터 및 과거 피부상태데이터를 포함하는 과거 얼굴데이터를 저장하는 메모리, 적어도 하나의 현재 얼굴데이터와 과거 얼굴데이터의 적어도 하나의 차이값을 산출하도록 구성된 디퍼런셜 연산 모듈, 및 적어도 하나의 차이값이 가장 큰 현재 얼굴데이터를 대표데이터로 결정하고 대표데이터와의 차이값에 기반해 분석모드신호에 따라 효능확인결과 또는 시술제안결과를 나타내는 분석데이터를 생성하는 피부상태 추론모듈을 포함하는 클라우드 분석장치를 포함할 수 있다.
예시적인 실시예에서, 클라우드 분석장치는 과거 피부상태데이터를 저장하는 스킨DB, 과거 얼굴윤곽데이터를 저장하는 페이셜DB, 피시술자의 과거 시술 이력을 저장하는 시술DB를 포함하는 데이터베이스를 더 포함하는 것을 특징으로 할 수 있다.
예시적인 실시예에서, 과거 얼굴데이터는, 제1 피부상태데이터 및 제1 얼굴윤곽데이터를 포함하고, 적어도 하나의 현재 얼굴데이터는, 적어도 하나의 제2 피부상태데이터 및 적어도 하나의 제2 얼굴윤곽데이터를 포함하고, 디퍼런셜 연산 모듈은,스킨DB로부터 로딩된 제1 피부상태데이터를 적어도 하나의 제2 피부상태데이터와 순차적으로 차연산하고, 페이셜DB로부터 로딩된 제1 얼굴윤곽데이터를 적어도 하나의 제2 얼굴윤곽데이터와 순차적으로 차연산하는 것을 특징으로 할 수 있다.
예시적인 실시예에서, 피부 분석 시스템은, 효능확인결과를 포함하는 제1 분석데이터에 대응되는 제1 피부시술이 시술DB에서 로딩된 과거 시술데이터상 피부시술과 일치하는 경우, 제1 피부시술을 재제안하는 제1 분석정보를 생성하고, 시술제안결과를 포함하는 제2 분석데이터에 대응되는 제2 피부시술이 시술DB에서 로딩된 과거 시술데이터상 피부시술과 불일치하는 경우, 제2 피부시술을 제안하는 제2 분석정보를 생성하는 것을 특징으로 할 수 있다.
예시적인 실시예에서, 분석모드신호는, 효능확인분석모드를 지시하는 제1 신호, 및 시술제안분석모드를 지시하는 제2 신호를 포함하고, 피부상태 추론모듈은, 제1 신호에 응답하여 대표데이터를 기준으로 과거 얼굴데이터를 감산하고, 제2 신호에 응답하여 과거 얼굴데이터를 기준으로 대표데이터를 감산하는 것을 특징으로 할 수 있다,.
예시적인 실시예에서, 사용자 단말은, 인공신경망 처리모듈을 더 포함하고, 인공신경망 처리모듈은, 차연산된 얼굴윤곽데이터 및 차연산된 얼굴윤곽데이터를, 참조 얼굴데이터를 참값으로 비교함으로써, 얼굴윤곽 및 피부상태를 학습하도록 구성된 인공신경망을 이용하고, 인공신경망은 컨볼루션 뉴럴 네트워크(CNN) 아키텍처 또는 트랜스포머(Transformer) 아키텍처 기반으로 학습되는 것을 특징으로 할 수 있다.
예시적인 실시예에서, 인공신경망 처리모듈은, 적어도 하나의 현재 얼굴데이터가 입력되는 경우 현재 얼굴윤곽데이터 및 현재 피부상태데이터를 분류하도록 구성된 것을 특징으로 할 수 있다.
예시적인 실시예에서, 사용자 단말 및 클라우드 분석장치를 이용한 피부 분석 방법은, 사용자 단말이, 현재 얼굴데이터를 센싱하는 단계, 사용자 단말이, 현재 얼굴데이터를 왜곡 보정 및 평면 변환하는 단계, 사용자 단말이, 얼굴윤곽데이터 및 피부상태데이터를 분리 인식하는 단계, 사용자 단말이, 현재 얼굴데이터를 클라우드 분석장치에 전송하는 단계, 클라우드 분석장치가, 저장된 과거 얼굴데이터를 로드하는 단계, 클라우드 분석장치가, 현재 얼굴데이터와 과거 얼굴데이터를 차연산하고, 차이값이 최대가 되는 현재 얼굴데이터를 대표데이터로 결정하는 단계 및 클라우드 분석장치가, 대표데이터와 과거 얼굴데이터의 차연산값을 분석데이터로서 출력하는 단계를 포함할 수 있다.
예시적인 실시예에서, 사용자 단말 및 클라우드 분석장치를 이용한 피부 분석 방법은, 클라우드 분석장치가, 분석데이터를 과거 시술데이터와 매칭함으로써 분석정보를 생성하고, 분석정보를 사용자 단말에 전송하는 단계 및 사용자 단말이, 분석정보에 기초해 추천시술정보 또는 효능확인정보를 사용자에게 제공하는 단계를 더 포함할 수 있다.
예시적인 실시예에서, 현재 얼굴데이터는 제1 얼굴데이터 및 제2 얼굴데이터를 포함하고, 클라우드 분석장치가, 현재 얼굴데이터와 과거 얼굴데이터를 차연산하고, 차이값이 최대가 되는 현재 얼굴데이터를 대표데이터로 결정하는 단계는, 제1 얼굴데이터를 과거 얼굴데이터와 차연산하고, 제1 연산값을 생성하는 단계, 제2 얼굴데이터를 과거 얼굴데이터와 차연산하고, 제2 연산값을 생성하는 단계, 제1 연산값 및 제2 연산값의 크기를 비교하는 단계 및 크기가 큰 연산값을 도출하는 제1 얼굴데이터를 대표데이터로 결정하는 단계를 포함하는 것을 특징으로 할 수 있다.
본 개시의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 개시의 예시적인 실시예에 따른 피부 분석 시스템은, 클라우드 솔루션에 기반하여 분석 서비스를 제공함으로써 복수의 사용자 단말이 요청하는 피부 분석 요청을 효율적으로 분산시킬 수 있다.
또한, 본 개시에 따른 피부 분석 시스템은, 컴퓨팅 파워를 클라우드로 제공함으로써 사용자 단말의 컴퓨팅 파워를 보조할 수 있어 복잡한 연산을 분산 처리할 수 있다.
또한, 본 개시에 따른 피부 분석 시스템은, 피시술자가 피부과 병의원 등 전 의료기관 또는 고성능 의료기기를 갖춘 시설에 방문하지 않고도 쉽게 피부 및 외모 상태를 분석 가능한 환경을 제공할 수 있다.
또한, 본 개시에 따른 피부 분석 시스템은, 피시술자가 서로 다른 피부과 병의원을 방문하거나, 서로 다른 시술 의료기기를 사용하더라도 시술 결과인 피시술자의 얼굴데이터에 기반해 피부를 분석하므로, 피부과 병의원 또는 의료기기가 서로 상이하더라도 균일한 분석 결과를 피시술자에게 제공할 수 있다.
나아가, 본 개시에 따른 피부 분석 시스템을 이용하여, 피시술자는 피부시술의 효능을 정량적으로 확인하거나, 기존 처치받은 피부시술 외의 새로운 피부시술을 제안받을 수 있어, 전문 의료지식이 수반되지 않고도 본인의 피부 상태를 분석할 수 있다.
본 개시의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 개시의 예시적 실시예에 따른 피부 분석 시스템을 개략적으로 도시하는 블록도이다.
도 2는 본 개시의 예시적 실시예에 따른 클라우드 분석장치를 설명하는 블록도이다.
도 3은 본 개시의 예시적 실시예에 따른 사용자 단말을 설명하는 블록도이다.
도 4는 본 개시의 예시적 실시예에 따른 얼굴데이터를 센싱하는 과정을 도시하는 개념도이다.
도 5는 본 개시의 예시적 실시예에 따른 인공신경망 처리모듈의 동작을 개념적으로 도시하는 도면이다.
도 6은 본 개시의 예시적 실시예에 따른 인공지능 학습모델의 학습 방법을 나타내는 도면이다.
도 7은 본 개시의 예시적 실시예에 따른 인공지능 학습모델의 학습 방법을 나타내는 도면이다.
도 8은 본 개시의 예시적 실시예에 따른 피부 분석 방법을 설명하는 블록도이다.
도 9는 본 개시의 예시적 실시예에 따른 피부 분석 방법을 설명하는 도면이다.
도 10은 본 개시의 예시적 실시예에 따른 피부 분석 방법을 나타내는 흐름도이다.
본 개시의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 개시는 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 개시의 개시가 완전하도록 하고, 본 개시가 속하는 기술 분야의 통상의 기술자에게 본 개시의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 개시는 청구항의 범주에 의해 정의될 뿐이다.
본 개시에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 개시를 제한하고자 하는 것은 아니다. 본 개시에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함할 수 있다. 개시에서 사용되는 "포함할 수 있다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 개시 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함할 수 있다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 개시의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.
"예시적인"이라는 단어는 본 개시에서 "예시 또는 예증으로서 사용된"의 의미로 사용된다. 본 개시에서 "예시적인"것으로 설명된 임의의 실시예는 반드시 바람직한 것으로서 해석되거나 다른 실시예들보다 이점을 갖는 것으로 해석되어서는 안된다.
본 개시의 실시예들은 기능 또는 기능을 수행하는 블록의 관점에서 설명될 수 있다. 본 개시의 '부' 또는 '모듈' 등으로 지칭될 수 있는 블록은 논리 게이트, 집적 회로, 마이크로 프로세서, 마이크로 컨트롤러, 메모리, 수동 전자 부품, 능동 전자 부품, 광학 컴포넌트, 하드와이어드 회로(hardwired circuits) 등과 같은 아날로그 또는 디지털 회로에 의해 물리적으로 구현되고, 선택적으로 펌웨어 및 소프트웨어에 의해 구동될 수 있다. 또한, 개시에서 사용되는 "부"라는 용어는 소프트웨어, FPGA (Field Programmable Gate Array), 또는 ASIC(Application Specific Integrated Circuits)과 같은 하드웨어 엘리먼트를 의미하며, "부"는 어떤 역할들을 수행할 수 있다. 그렇지만 "부"는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부"는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부"는 소프트웨어 엘리먼트들, 객체지향 소프트웨어 엘리먼트들, 클래스 엘리먼트들 및 태스크 엘리먼트들과 같은 엘리먼트들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함할 수 있다. 엘리먼트들과 "부"들 안에서 제공되는 기능은 더 작은 수의 엘리먼트들 및 "부"들로 결합되거나 추가적인 엘리먼트들과 "부"들로 더 분리될 수 있다.
본 개시의 실시예는 적어도 하나의 하드웨어 디바이스 상에서 실행되는 적어도 하나의 소프트웨어 프로그램을 사용하여 구현될 수 있고 엘리먼트를 제어하기 위해 네트워크 관리 기능을 수행할 수 있다.
공간적으로 상대적인 용어인 "아래(below)", "아래(beneath)", "하부(lower)", "위(above)", "상부(upper)" 등은 도면에 도시되어 있는 바와 같이 하나의 구성요소와 다른 구성요소들과의 상관관계를 용이하게 기술하기 위해 사용될 수 있다. 공간적으로 상대적인 용어는 도면에 도시되어 있는 방향에 더하여 사용시 또는 동작시 구성요소들의 서로 다른 방향을 포함하는 용어로 이해되어야 할 수 있다. 예를 들어, 도면에 도시되어 있는 구성요소를 뒤집을 경우, 다른 구성요소의 "아래(below)"또는 "아래(beneath)"로 기술된 구성요소는 다른 구성요소의 "위(above)"에 놓여 질 수 있다. 따라서, 예시적인 용어인 "아래"는 아래와 위의 방향을 모두 포함할 수 있다. 구성요소는 다른 방향으로도 배향될 수 있으며, 이에 따라 공간적으로 상대적인 용어들은 배향에 따라 해석될 수 있다.
각 단계들에 있어 식별부호는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 실시될 수 있다.
다른 정의가 없다면, 본 개시에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 개시가 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
이하, 첨부된 도면을 참조하여 본 개시의 실시예를 상세하게 설명할 수 있다.
도 1은 본 개시의 예시적 실시예에 따른 피부 분석 시스템(10)을 개략적으로 도시하는 블록도이다.
피부 분석 시스템(10)은 휴대폰, 스마트 폰(smart phone), 랩탑 컴퓨터(laptop computer), 디지털방송용 단말기, PDA(personal digital assistants), PMP(portable multimedia player), 네비게이션, 슬레이트 PC(slate PC), 태블릿 PC(tablet PC), 울트라북(ultrabook), 웨어러블 디바이스(wearable device, 예를 들어, 스마트워치(smartwatch), 글래스형 단말기 (smart glass), HMD(head mounted display)), 워크스테이션, 서버, 클라우드 서버 등과 같은 전자 장치일 수 있으나, 이에 제한되지 않고 데이터를 처리하기 위한 컴퓨팅 기능을 제공하는 전자적 처리 장치, 또는 전자적 처리 장치의 조합을 통칭한다.
피부 분석 시스템(10)은 클라우드 분석장치(100) 및 복수의 사용자 단말(200)을 포함할 수 있다. 클라우드 분석장치(100)는 제1 통신모듈(110), 제1 프로세서(130), 선택적으로 인공신경망 프로세서(150), 메모리(170) 및 데이터베이스(190)를 포함할 수 있고, 복수의 사용자 단말(200)들은 제1 사용자단말(201), 제2 사용자단말(202), 제N 사용자단말(203)을 포함할 수 있다. 본 개시의 예시적인 실시예에 따르면, 클라우드 분석장치(100)는 복수의 사용자 단말(200)로부터 클라우드 솔루션을 통하여 개별적으로 수신된 얼굴데이터들을 각각 분석하고, 분석정보를 각 사용자단말(201~203)에 개별적으로 제공할 수 있다.
제1 통신모듈(110)은 외부 기기와 통신할 수 있다. 따라서, 피부 분석 시스템(10)은 제1 통신모듈(110)을 통해 외부 기기와 피부 분석과 관련된 정보를 송수신할 수 있다. 제1 통신모듈(110)은 와이파이(WiFi; Wireless-Fidelity)칩, 블루투스(Bluetooth??) 칩, 무선 통신 칩, NFC(Near Field Communication) 칩, RFID(Radio Frequency Identification) 중 적어도 하나를 포함할 수 있다.
여기서, 통신, 즉 데이터의 송수신은 유선 또는 무선으로 이루어질 수 있다. 이를 위해 통신부는 LAN(Local Area Network)를 통해 인터넷 등에 접속하는 유선 통신 모듈, 이동 통신 기지국을 거쳐 이동 통신 네트워크에 접속하여 데이터를 송수신하는 이동 통신 모듈, 와이파이(Wi-Fi) 같은 WLAN(Wireless Local Area Network) 계열의 통신 방식이나 블루투스(Bluetooth), 직비(Zigbee)와 같은 WPAN(Wireless Personal Area Network) 계열의 통신 방식을 이용하는 근거리 통신 모듈, GPS(Global Positioning System)과 같은 GNSS(Global Navigation Satellite System)을 이용하는 위성 통신 모듈 또는 이들의 조합으로 구성될 수 있다.
제1 통신모듈(110)은, 기술표준들 또는 통신방식(예를 들어, 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) 등)에 따라 구축된 이동 통신망 상에서 기지국, 외부의 단말, 외부 서버 중 적어도 하나와 무선 신호를 송수신할 수 있다.
또한, 본 개시의 무선 기술로는, 예를 들어 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) 등이 있다.
또한, 본 개시의 통신 기술은, 블루투스(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), TTL(Transistor-Transistor Logic), USB, IEEE1394, Ethernet, MIDI(Musical Instrument Digital Interface), RS232, RS422, RS485, 광통신(Optical Communication), 동축케이블통신(Coaxial Cable Communication) 기술 중 적어도 하나를 이용하여, 통신을 지원하는 기술을 포함할 수 있다.
본 개시의 예시적인 실시예에 따르면, 제1 통신모듈(110)은 사용자 단말(200)로부터 얼굴데이터를 수신하고, 분석된 분석 정보를 사용자 단말(200)에 발신할 수 있다.
제1 프로세서(130)는 피부 분석 시스템(10)의 제어에 필요한 하나 이상의 명령을 처리하고, 명령에 따른 연산하고, 프로그램 로직에 따른 판단을 수행하는 등 피부 분석 시스템(10)의 각종 기능부의 유기적인 동작을 전반적으로 제어하도록 구성된다. 제1 프로세서(130)는 제1 통신모듈(110)을 통해 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나 메모리(170)에 저장된 응용 프로그램을 구동함으로써, 사용자에게 적절한 정보 또는 기능을 제공 또는 처리할 수 있다. 처리된 데이터는 메모리(170)에 저장되거나 데이터베이스(190)를 구축하는데 이용되거나, 입출력 인터페이스 또는 제1 통신모듈(110)을 통해 외부에 전송될 수 있다. 이와 같은 제1 프로세서(130)는 범용 프로세서, 전용 프로세서 또는 애플리케이션 프로세서(application processor) 등으로 구현될 수 있다. 예시적인 실시예에서, 제1 프로세서(130)는 전용 논리 회로(예컨대, FPGA(Field Programmable Gate Array), ASICs(Application Specific Integrated Circuits) 등)를 포함하는 연산 프로세서(예를 들어, CPU(Central Processing Unit), GPU(Graphic Processing Unit), AP(Application Processor) 등)로 구현될 수 있으나 이에 제한되지 않는다. 예시적인 실시예에서, 제1 프로세서(130)는 아날로그 신호를 디지털로 변환해 고속 처리할 수 있는 DSP(Digital Signal Processor), MCU(Micro Controller Unit), 또는 인공신경망을 처리하는데 특화된 NPU(Neural Processing Unit) 등으로 구현됨을 배제하지 않는다.
제1 프로세서(130)는 피부 분석 시스템(10) 및 피부 분석 시스템(10)에 의해 실행되는 응용 프로그램과 관련된 동작 외에도, 인공지능 학습모델의 구축을 위한 학습, 학습을 위해 필요한 반복적인 사칙 연산 및 구축된 학습모델을 적용한 인공지능을 이용한 학습데이터에 대한 추론을 실행하고 인공지능 처리를 위한 다양한 모듈을 제어할 수 있다.
제1 프로세서(130) 내부에서 동작하는 인공지능 외에, 인공지능 학습 및 연산에 특화된 처리 장치인 인공신경망 프로세서(150)가 클라우드 분석장치(100)에 구비될 수 있다. 도 1에서 인공신경망 프로세서(150)가 점선으로 도시되었는데, 이는 물리적으로 제1 프로세서(130)와 별도로 구현된 인공지능 전용 프로세서, 또는 제1 프로세서(130) 내부에서 실해오디는 논리적 개념의 처리 모듈을 통칭한다.
본 개시의 예시적인 실시예에 따르면 인공신경망 프로세서(150)는 은 인공지능을 구현할 수 있다. 인공지능이란 사람의 신경세포(biological neuron)를 모사하여 기계가 학습하도록 하는 인공신경망(Artificial Neural Network) 기반의 기계 학습법을 의미한다. 인공지능의 방법론에는 학습 방식에 따라 훈련데이터로서 입력데이터와 출력데이터가 같이 제공됨으로써 문제(입력데이터)의 해답(출력데이터)이 정해져 있는 지도학습(supervised learning), 및 출력데이터 없이 입력데이터만 제공되어 문제(입력데이터)의 해답(출력데이터)이 정해지지 않는 비지도학습(unsupervised learning), 및 현재의 상태(State)에서 어떤 행동(Action)을 취할 때마다 외부 환경에서 보상(Reward)이 주어지는데, 이러한 보상을 최대화 하는 방향으로 학습을 진행하는 강화학습(reinforcement learning) 으로 구분될 수 있다. 또한 인공지능의 방법론은 학습 모델의 구조인 아키텍처에 따라 구분될 수도 있는데, 널리 이용되는 딥러닝 기술의 아키텍처는, 합성곱신경망(CNN; Convolutional Neural Network), 순환신경망(RNN; Recurrent Neural Network), 트랜스포머(Transformer), 생성적 대립 신경망(GAN; generative adversarial networks) 등으로 구분될 수 있다.
인공신경망 프로세서(150)는 뉴럴 네트워크를 생성하거나, 뉴럴 네트워크를 훈련(train, 또는 학습(learn))하거나, 수신되는 입력 데이터를 기초로 연산을 수행하고, 수행 결과를 기초로 정보 신호(information signal)를 생성하거나, 뉴럴 네트워크를 재훈련(retrain)할 수 있다. 뉴럴 네트워크의 모델들은 GoogleNet, AlexNet, VGG Network 등과 같은 CNN(Convolution Neural Network), R-CNN(Region with Convolution Neural Network), RPN(Region Proposal Network), RNN(Recurrent Neural Network), S-DNN(Stacking-based deep Neural Network), S-SDNN(State-Space Dynamic Neural Network), Deconvolution Network, DBN(Deep Belief Network), RBM(Restrcted Boltzman Machine), Fully Convolutional Network, LSTM(Long Short-Term Memory) Network, Classification Network, Transformer, BERT, GPT-3, GPT-4 등 다양한 종류의 모델들을 포함할 수 있으나 이에 제한되지는 않는다. 인공신경망 프로세서(150)는 뉴럴 네트워크의 모델들에 따른 연산을 수행하기 위한 하나 이상의 프로세서를 포함할 수 있다.
메모리(170)는 프로세서(130)의 다양한 기능을 지원하는 로컬 저장 매체일 수 있다. 메모리(170)는 프로세서(130)에서 구동될 수 있는 응용 프로그램, 프로세서(130)의 동작을 위한 데이터들, 명령어들을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는, 무선 통신을 통해 외부로부터 다운로드 될 수 있다. 응용 프로그램은, 메모리(170)에 저장 및 설치되어, 프로세서(130)에 의하여 동작(또는 기능)을 수행하도록 구동될 수 있다.
메모리(170)는 DDR SDRAM(Double Data Rate Synchronous Dynamic Random Access Memory), LPDDR(Low Power Double Data Rate) SDRAM, GDDR(Graphics Double Data Rate) SDRAM, RDRAM(Rambus Dynamic Random Access Memory), DDR2 SDRAM, DDR3 SDRAM, DDR4 SDRAM 등과 같은 동적 랜덤 액세스 메모리(Dynamic Random Access Memory, DRAM)를 포함하는 휘발성 메모리(Volatile Memory)일 수 있다.
그러나, 본 개시의 실시예들은 이에 국한될 필요가 없다. 예시적인 실시예에서, 메모리(170)는 프로세서(130)에 공급되는 전원이 차단되더라도 데이터들이 남아있어야 하며, 변동사항을 반영할 수 있도록 쓰기 가능한 비휘발성 메모리(Non-Volatile Memory)로 구비될 수 있다. 그러나, 이에 한정되지 않고, 메모리(170)는 플래시 메모리(Flash Memory) 또는 EPROM 또는 EEPROM, ReRAM(resistive RAM)과 같은 저항형 메모리 셀들, PRAM(phase change RAM), MRAM(magnetic RAM), MRAM(Spin-Transfer Torgue MRAM), Conductive bridging RAM(CBRAM), FeRAM(Ferroelectric RAM), 및 다른 다양한 종류의 메모리가 적용될 수 있다. 또는, 메모리(170)는 임베디드 멀티미디어 카드(embedded multimedia card, eMMC), 유니버셜 플래시 스토리지(universal flash storage, UFS), 또는 CF(Compact Flash), SD(Secure Digital), Micro-SD(Micro Secure Digital), Mini-SD(Mini Secure Digital), xD(extreme Digital) 또는 메모리 스틱(Memory Stick) 등 다양한 종류의 장치로 구현될 수 있다. 본 개시에서 설명의 편의를 위해 하나의 메모리(170)에 모든 인스트럭션 정보가 저장되는 것으로 설명하고 있으나, 이에 한정되는 것은 아니며, 메모리(170)는 복수의 메모리들을 구비할 수 있다.
데이터베이스(190)는 각종 정보를 저장함으로써 공유되어 사용될 목적으로 통합 관리되는 데이터의 집합을 의미한다. 데이터베이스(190)는 데이터를 임시적으로 또는 반영구적으로 저장할 수 있다. 예를 들어, 데이터베이스(190)에는 적어도 하나의 디바이스를 구동하기 위한 운용 프로그램(OS: Operating System), 웹 사이트를 호스팅하기 위한 데이터나 또는 애플리케이션(예를 들어, 웹 애플리케이션)에 관한 데이터 등이 저장될 수 있다. 또, 데이터베이스는 상술한 바와 같이 모듈들을 컴퓨터 코드 형태로 저장할 수 있다. 데이터베이스(190)는 응용 프로그램과 별개인 미들웨어(Middle ware)를 통해 관리된다.
데이터베이스(190)의 예로는 하드 디스크(HDD: Hard Disk Drive), SSD(Solid State Drive), 플래쉬 메모리(flash memory), 롬(ROM: Read-Only Memory), 램(RAM: Random Access Memory) 등이 있을 수 있다. 이러한 데이터베이스는 내장 타입 또는 탈부착 가능한 타입으로 제공될 수 있다.
데이터베이스(190)는 관계형 데이터베이스(RDB; relational database), 키-값형 데이터베이스, 객체형 데이터베이스, 문서형 데이터베이스, 메모리 데이터베이스 등을 포함한다.
본 개시의 예시적인 실시예에 따른 피부 분석 시스템(10)은, 클라우드 솔루션에 기반하여 분석 서비스를 제공함으로써 복수의 사용자 단말(200)이 요청하는 피부 분석 요청을 효율적으로 분산시킬 수 있다.
또한, 본 개시에 따른 피부 분석 시스템(10)은, 컴퓨팅 파워를 클라우드로 제공함으로써 사용자 단말(200)의 컴퓨팅 파워를 보조할 수 있어 복잡한 연산을 분산 처리할 수 있다.
또한, 본 개시에 따른 피부 분석 시스템(10)은, 피시술자가 피부과 병의원 등 전 의료기관 또는 고성능 의료기기를 갖춘 시설에 방문하지 않고도 쉽게 피부 및 외모 상태를 분석 가능한 환경을 제공할 수 있다.
또한, 본 개시에 따른 피부 분석 시스템(10)은, 피시술자가 서로 다른 피부과 병의원을 방문하거나, 서로 다른 시술 의료기기를 사용하더라도 시술 결과인 피시술자의 얼굴데이터에 기반해 피부를 분석하므로, 피부과 병의원 또는 의료기기가 서로 상이하더라도 균일한 분석 결과를 피시술자에게 제공할 수 있다.
나아가, 본 개시에 따른 피부 분석 시스템(10)을 이용하여, 피시술자는 피부시술의 효능을 정량적으로 확인하거나, 기존 처치받은 피부시술 외의 새로운 피부시술을 제안받을 수 있으므로, 전문 의료지식이 수반되지 않고도 본인의 피부 상태를 분석할 수 있다.
도 2는 본 개시의 예시적 실시예에 따른 클라우드 분석장치(100)를 설명하는 블록도이다. 도 1과 중복되는 설명은 생략될 것이다.
클라우드 분석장치(100)는 제1 통신모듈(110), 제1 프로세서(130), 인공신경망 프로세서(150), 제1 메모리(170), 데이터베이스(190)를 포함할 수 있고, 제1 메모리(170)는 디퍼런셜 연산모듈(171), 피부상태 추론모듈(175)을 포함할 수 있고, 데이터베이스(190)는 스킨DB(191), 페이셜DB(193), 시술DB(195)를 포함할 수 있다.
본 개시에서, 제1 메모리(170)에 구비된 디퍼런셜 연산모듈(171), 피부상태 추론모듈(175)은 제1 프로세서(130)에 의해 페치(fetch)될 경우, 제1 프로세서(130) 내에서 디퍼런셜 연산부(미도시), 피부상태 추론부(미도시)로, 각각 논리적 연산단위로 동작할 수 있음이 통상의 기술자에게 널리 이해될 수 있을 것이다.
제1 메모리(170)는 피시술자의 과거 얼굴윤곽데이터 및 과거 피부상태데이터를 포함하는 과거 얼굴데이터를 저장할 수 있다. 제1 메모리(170)는 디퍼런셜 연산모듈(171), 피부상태 추론모듈(175)을 포함한다.
디퍼런셜 연산모듈(171)은 적어도 하나의 현재 얼굴데이터와 과거 얼굴데이터의 적어도 하나의 차이값을 산출하도록 구성될 수 있다. 본 개시의 예시적 실시예에 따르면, 디퍼런셜 연산모듈(171)은 사용자 단말(200)에 의해 피시술자의 얼굴데이터를 순차적으로 복수 개 획득할 수 있고, 피시술자의 현재 얼굴데이터를 복수 개 획득한 경우, 복수의 현재 얼굴데이터를 기준 데이터와 디퍼런셜 연산(차연산)함으로써 차이값을 산출할 수 있다.
피부상태 추론모듈(175)은 적어도 하나의 차이값이 가장 큰 현재 얼굴데이터를 대표데이터로 결정하고 대표데이터와의 차이값에 기반해 분석모드신호에 따라 효능확인결과 또는 시술제안결과를 나타내는 분석데이터를 생성할 수 있다. 본 개시의 예시적 실시예에 따르면, 피부상태 추론모듈(175)은 복수의 현재 얼굴데이터를 데이터베이스(190)로부터 로딩된 과거 얼굴데이터와 디퍼런셜 연산(차연산)할 수 있고, 그 결과로서 분석데이터를 생성할 수 있다.
예를 들어, 과거 얼굴데이터는 제1 피부상태데이터 및 제1 얼굴윤곽데이터를 포함하고, 적어도 하나의 현재 얼굴데이터는 적어도 하나의 제2 피부상태데이터 및 적어도 하나의 제2 얼굴윤곽데이터를 포함할 수 있다. 이 경우, 디퍼런셜 연산모듈(171)은, 스킨DB(191)로부터 로딩된 제1 피부상태데이터를 적어도 하나의 제2 피부상태데이터와 순차적으로 차연산하고, 페이셜DB(193)로부터 로딩된 제1 얼굴윤곽데이터를 적어도 하나의 제2 얼굴윤곽데이터와 순차적으로 차연산할 수 있다. 디퍼런셜 연산모듈(171) 및 피부상태 추론모듈(175)에 관하여는 도 8을 참조하여 보다 상세히 설명될 것이다.
인공신경망 프로세서(150)는 제1 프로세서(130)의 처리와 병렬적으로 인공지능을 구현하기 위한 고반복 연산을 수행하기 위해 특별히 마련된 연산 회로를 의미할 수 있다. 인공신경망 프로세서(150)는 제1 프로세서(130) 상에서 구현되는 논리적 기능부를 의미할 수도 있고, 인공지능 학습을 위해 별도로 마련된 ASIC, FPGA 기반의 물리적 구현부를 의미할 수도 있으며, 구현 형태에 대한 제한이 없다.
클라우드 분석장치(100)에서 인공신경망 프로세서(150)가 이용되는 경우, 클라우드 분석장치(100)는 사용자 단말(200)로부터 적어도 하나의 얼굴데이터를 수신하고, 얼굴데이터에서 얼굴윤곽과 피부상태를 각각 추출할 수 있다. 예를 들어, 사용자 단말(200)은 사용자의 얼굴 정면 이미지를 2장 이상 획득할 수 있다. 예시적인 실시예에서, 얼굴 정면 이미지는 동일한 촬영각의 2장 이상의 스틸샷 이미지일 수 있다. 예시적인 실시예에서, 얼굴 정면을 기준으로 15도 내외로 틀어진 좌측 및 우측 측면이미지를 포함할 수 있다.
예시적인 실시예에 따르면, 인공신경망 프로세서(150)는 적어도 하나의 얼굴데이터를 획득한 후, 엣지 디텍팅(edge detecting) 기술, 또는 이를 이용한 컨볼루션 뉴럴 네트워크(CNN) 등 비전 기술 기반 인공신경망을 이용하여 사용자의 얼굴 윤곽을 추출할 수 있다.
예시적인 실시예에 따르면, 인공신경망 프로세서(150)는 적어도 하나의 얼굴데이터를 획득한 후, 초해상도(super resolution) 등의 기술, 또는 이를 이용한 해상도 업스케일링 기술 기반 인공신경망을 이용하여 사용자의 피부를 정밀하게 측정함으로써 사용자의 피부상태를 추정할 수 있다.
예시적인 실시예에 따르면, 인공신경망 프로세서(150)는 적어도 하나의 얼굴데이터를 획득한 후, 스테레오 이미지 추정, 호모그래피 변환, 또는 깊이 추정 아키텍처를 가지는 인공신경망을 이용하여 사용자의 피부를 정밀하게 측정함으로써 사용자의 피부상태를 추정할 수 있다. 예를 들어, 인공신경망 프로세서(150)는 VoxelNet, Stereo R-CNN, Pseudo-LiDAR, Voxel-FPN, 3DSSD, Point-GNN, SASSD, 3D-CVF 등 2차원 및/또는 3차원 객체인식 알고리즘 및 아키텍처를 적용해 얼굴의 굴곡, 골격, 피부의 높낮이 등 피부 및 얼굴상태에 대한 다양한 센싱을 보조할 수 있다.
스킨DB(191)는 과거 피부상태데이터를 저장할 수 있고, 페이셜DB(193)는 과거 얼굴윤곽데이터를 저장할 수 있고, 시술DB(195)는 피시술자의 과거 시술 이력을 저장할 수 있다.
도 3은 본 개시의 예시적 실시예에 따른 사용자 단말(200)을 설명하는 블록도이다. 도 1 및 도 2와 중복되는 설명은 생략된다.
사용자 단말(200)은 카메라 모듈(250)을 이용하여 피시술자를 촬영함으로써 현재 얼굴윤곽데이터 및 현재 피부상태데이터를 포함하는 적어도 하나의 현재 얼굴데이터를 생성하도록 구성될 수 있다.
사용자 단말(200)은 휴대폰, 스마트 폰(smart phone), 랩탑 컴퓨터(laptop computer), 디지털방송용 단말기, PDA(personal digital assistants), PMP(portable multimedia player), 네비게이션, 슬레이트 PC(slate PC), 태블릿 PC(tablet PC), 울트라북(ultrabook), 웨어러블 디바이스(wearable device, 예를 들어, 스마트워치(smartwatch), 글래스형 단말기 (smart glass), HMD(head mounted display)) 등과 같은 전자 장치일 수 있으나, 이에 제한되지 않고 데이터를 처리하기 위한 컴퓨팅 기능을 제공하는 전자적 처리 장치일 수 있다.
사용자 단말(200)은 인공신경망 처리모듈(235)을 더 포함할 수 있는데, 인공신경망 처리모듈(235)은, 차연산된 얼굴윤곽데이터 및 차연산된 얼굴윤곽데이터를, 참조 얼굴데이터를 참값으로 비교함으로써, 얼굴윤곽 및 피부상태를 학습하도록 구성된 인공신경망을 이용하고, 인공신경망은 컨볼루션 뉴럴 네트워크(CNN) 아키텍처 또는 트랜스포머(Transformer) 아키텍처 기반으로 학습되는 것일 수 있다.
사용자 단말(200)은 제2 통신모듈(210), 제2 프로세서(230), 카메라 모듈(250), 제2 메모리(270), 및 전력관리모듈(290)을 포함할 수 있다.
제2 통신모듈(210)은 제1 통신모듈(110)과, 제2 프로세서(230)는 제1 프로세서(130)와, 제2 메모리(270)는 제1 메모리(170)와 각각 기능적으로 대응될 수 있고, 이와 중복되는 설명은 서로 배치되지 않는 범위 내에서 생략될 수 있다.
제2 메모리(270)에 구비된 이미지 보정부(271), 얼굴 인식부(273) 및 인공신경망 처리부(275)는 제2 프로세서(230)에 의해 페치(fetch)되는 경우 제2 프로세서(230) 내에서 이미지 보정모듈(231), 얼굴 인식모듈(233), 인공신경망 처리모듈(235)로, 각각 논리적 연산단위로 동작할 수 있음이 통상의 기술자에게 널리 이해될 수 있을 것이다.
이미지 보정모듈(231), 얼굴 인식모듈(233), 인공신경망 처리모듈(235)을 통해, 제2 프로세서(230)는 적어도 하나의 현재 얼굴데이터가 입력되는 경우 상기 현재 얼굴윤곽데이터 및 상기 현재 피부상태데이터를 분류할 수 있다.
이미지 보정모듈(231)은 카메라 모듈(250)로부터 획득된 얼굴데이터를 보정할 수 있다. 예를 들어, 이미지 보정모듈(231)은 사용자에 의해 촬상된 얼굴데이터에 대해 왜곡 보정 및 평면 변환을 수행할 수 있다. 획득된 얼굴데이터는 사용자에 의해 직접 촬영되므로, 사진의 각도 및 크기가 균일하지 않을 수 있으므로, 이미지 보정모듈(231)에 의해 크기, 색상, 채도, 명암, 노이즈 등이 보정되어 복수의 이미지들을 균일한 환경으로 보정할 수 있다. 또한, 이미지 보정모듈(231)은 호모그래피 변환 등을 통해 공간왜곡 및 공간변형된 이미지를 동일한 평면좌표계로 변환할 수 있다.
얼굴 인식모듈(233)은 얼굴의 이미지로부터 이목구비, 얼굴 외형, 얼굴 윤곽, 피부 분리, 헤어 분리 등을 수행하는 알고리즘을 이용해 획득된 얼굴데이터로부터 피부 상태와 얼굴 윤곽을 분리할 수 있다. 제2 프로세서(230)가 인공신경망 처리를 지원한다면, 얼굴 인식모듈(233)은 인공신경망 처리모듈(235)을 통해 학습된 인공신경망을 이용하여 얼굴의 각 부분을 효과적으로 분리할 수 있다.
본 개시의 예시적 실시예에 따르면, 인공신경망 처리모듈(235)은 합성곱 신경망(CNN, convolutional neural network, 이하 CNN이라고 지칭함)를 학습 및/또는 구현할 수 있으나, 반드시 이에 한정되지 않고 트랜스포머(Transformer) 아키텍처 등 다양한 구조의 신경망으로 형성될 수 있다. 본 개시에서는 설명의 편의를 위해 CNN이 인공신경망 처리모듈이 적용됨을 예시한다.
CNN은 영상의 각 영역에 대해 복수의 필터를 적용하여 특징 지도(Feature Map)를 만들어 내는 컨볼루션 층(Convolution Layer)과 특징 지도를 공간적으로 통합함으로써, 위치나 회전의 변화에 불변하는 특징을 추출할 수 있도록 하는 통합층(Pooling Layer)을 번갈아 수차례 반복하는 구조로 형성될 수 있다. 이를 통해, 점, 선, 면 등의 낮은 수준의 특징에서부터 복잡하고 의미 있는 높은 수준의 특징까지 다양한 수준의 특징을 추출해낼 수 있다.
컨볼루션 층은 입력 영상의 각 패치에 대하여 필터와 국지 수용장(Local Receptive Field)의 내적에 비선형 활성 함수(Activation Function)를 취함으로써 특징 지도(Feature Map)를 구할 수 있다. 다른 네트워크 구조와 비교하여, CNN은 희소한 연결성 (Sparse Connectivity)과 공유된 가중치(Shared Weights)를 가진 필터를 사용하는 특징을 가질 수 있다. 이러한 연결구조는 학습할 모수의 개수를 줄여주고, 역전파 알고리즘을 통한 학습을 효율적으로 만들어 결과적으로 예측 성능을 향상시킬 수 있다. 이와 같이, 컨볼루션 층과 통합 층의 반복을 통해 최종적으로 추출된 특징은 다중 신경망(MLP: Multi-Layer Perceptron)이나 서포트 벡터 머신(SVM: Support Vector Machine)과 같은 분류 모델이 완전 연결 층(Fully-connected Layer)의 형태로 결합되어 피부 분석 모델 학습 및 예측에 사용될 수 있다. CNN에 대한 보다 상세한 설명은 도 6 및 도 7을 참조하여 보다 상세히 설명될 것이다.
인공신경망 처리모듈(235)이 이용되는 경우, 사용자 단말(200)은 카메라 모듈(250)로부터 획득한 적어도 하나의 얼굴데이터에서 얼굴윤곽과 피부상태를 각각 추출할 수 있다. 예를 들어, 사용자 단말(200)은 사용자의 얼굴 정면 이미지를 2장 이상 획득할 수 있다. 예시적인 실시예에서, 얼굴 정면 이미지는 동일한 촬영각의 2장 이상의 스틸샷 이미지일 수 있다. 예시적인 실시예에서, 얼굴 정면을 기준으로 15도 내외로 틀어진 좌측 및 우측 측면이미지를 포함할 수 있다.
예시적인 실시예에 따르면, 인공신경망 처리모듈(235)는 적어도 하나의 얼굴데이터에 대해, 엣지 디텍팅(edge detecting) 기술, 또는 이를 이용한 컨볼루션 뉴럴 네트워크(CNN) 등 비전 기술 기반 인공신경망을 이용하여 사용자의 얼굴 윤곽을 추출할 수 있다.
예시적인 실시예에 따르면, 인공신경망 처리모듈(235)는 적어도 하나의 얼굴데이터에 대해, 수퍼 레졸루션(super resolution)등의 기술, 또는 이를 이용한 해상도 업스케일링 기술 기반 인공신경망을 이용하여 사용자의 피부를 정밀하게 측정함으로써 사용자의 피부상태를 추정할 수 있다.
예시적인 실시예에 따르면, 인공신경망 처리모듈(235)은 적어도 하나의 얼굴데이터에 대해, 스테레오 이미지 추정, 호모그래피 변환, 또는 깊이 추정 아키텍처를 가지는 인공신경망을 이용하여 사용자의 피부를 정밀하게 측정함으로써 사용자의 피부상태를 추정할 수 있다. 예를 들어, 인공신경망 처리모듈(235)은 VoxelNet, Stereo R-CNN, Pseudo-LiDAR, Voxel-FPN, 3DSSD, Point-GNN, SASSD, 3D-CVF 등 2차원 및/또는 3차원 객체인식 알고리즘 및 아키텍처를 적용해 얼굴의 굴곡, 골격, 피부의 높낮이 등 피부 및 얼굴상태에 대한 다양한 센싱을 보조할 수 있다.
카메라 모듈(250)은 사용자의 얼굴을 촬상함으로써 얼굴데이터를 획득할 수 있다. 예시적인 실시예에 따르면, 카메라 모듈(250)은 복수의 얼굴데이터를 획득할 수 있다. 예시적인 실시예에 따르면, 카메라 모듈(250)은 2차원 및/또는 3차원 객체 깊이 인식(Depth Recognization) 알고리즘을 처리할 수 있는 이미지 신호 처리기(Image Singal Processor; ISP)를 더 포함할 수 있고, 이 경우 카메라 모듈(250)은 사용자의 얼굴의 굴곡, 깊이, 피부의 굴곡 및 주름을 포함하는 얼굴이미지를 센싱할 수 있고, 그 결과로서 얼굴데이터를 생성할 수 있다.
전력관리모듈(290)은 사용자 단말(200)에 필요한 전원이나 클럭(clock)을 공급할 수 있다. 하나의 사용자 단말(200)에는 전력관리모듈(290)이 적어도 하나 포함될 수 있다.
도 4는 본 개시의 예시적 실시예에 따른 얼굴데이터(FD)를 센싱하는 과정을 도시하는 개념도이다. 도 4의 얼굴데이터(FD)를 센싱하는 동작은 사용자 단말(200)에서 수행될 수 있으나, 이에 제한되지 않고 피부 분석 시스템(10)의 다른 기능부를 통해 일부 분산 처리되거나, 전부 처리될 수도 있다.
카메라 모듈(250)은 사용자의 얼굴을 촬상함으로써 얼굴데이터(FD)를 획득할 수 있다. 예시적인 실시예에서, 카메라 모듈(250)은 복수의 얼굴데이터(FD)를 획득할 수 있다. 예컨대, 사용자 단말(200)은 사용자의 얼굴 정면 이미지를 2장 이상 획득할 수 있다. 예시적인 실시예에서, 얼굴 정면 이미지는 동일한 촬영각의 2장 이상의 스틸샷 이미지일 수 있다. 예시적인 실시예에서, 얼굴 정면을 기준으로 15도 내외로 틀어진 좌측 및 우측 측면이미지를 포함할 수 있다.
예시적인 실시예에 따르면, 카메라 모듈(250)은 2차원 및/또는 3차원 객체 깊이 인식(Depth Recognization) 알고리즘을 처리할 수 있는 이미지 신호 처리기(Image Singal Processor; ISP)를 더 포함할 수 있고, 이 경우 카메라 모듈(250)은 사용자의 얼굴의 굴곡, 깊이, 피부의 굴곡 및 주름을 포함하는 얼굴이미지를 센싱할 수 있고, 그 결과로서 얼굴데이터(FD)를 생성할 수 있다.
이미지 보정모듈(231)은 카메라 모듈(250)로부터 획득된 얼굴데이터(FD)를 보정할 수 있다. 예를 들어, 이미지 보정모듈(231)은 사용자에 의해 촬상된 얼굴데이터(FD)에 대해 왜곡 보정 및 평면 변환을 수행할 수 있다. 획득된 얼굴데이터(FD)는 사용자에 의해 직접 촬영되므로, 사진의 각도 및 크기가 균일하지 않을 수 있으므로, 이미지 보정모듈(231)에 의해 크기, 색상, 채도, 명암, 노이즈 등이 보정되어 복수의 이미지들을 균일한 환경으로 보정할 수 있다. 또한, 이미지 보정모듈(231)은 호모그래피 변환 등을 통해 공간왜곡 및 공간변형된 이미지를 동일한 평면좌표계로 변환할 수 있다.
얼굴 인식모듈(233)은 얼굴의 이미지로부터 이목구비, 얼굴 외형, 얼굴 윤곽, 피부 분리, 헤어 분리 등을 수행하는 알고리즘을 이용해 획득된 얼굴데이터로부터 피부 상태와 얼굴 윤곽을 분리할 수 있다. 제2 프로세서(230)가 인공신경망 처리를 지원한다면, 얼굴 인식모듈(233)은 인공신경망 처리모듈(235)을 통해 학습된 인공신경망을 이용하여 얼굴의 각 부분을 효과적으로 분리할 수 있다.
얼굴 인식모듈(233)은 얼굴데이터(FD)를 얼굴윤곽데이터(Face Shape Data; FSD), 및 피부상태데이터(Skin State Data; SSD)로 분리할 수 있다. 분리된 얼굴윤곽데이터(FSD) 및 피부상태데이터(SSD) 각각을 포함하는 얼굴데이터(FD)는 클라우드 분석장치(100)로 전송되어 보다 심층적으로 분석될 수 있다.
인공신경망을 이용한 객체 및 깊이 인식, 얼굴 윤곽의 엣지 디텍팅, 피부 상태의 초해상도 기법 처리 등은 사용자 단말(200)에서 바로 처리될 수도 있고, 클라우드 분석장치(100)에서 처리될 수도 있으며, 사용자 단말(200) 및 클라우드 분석장치(100) 모두에서 처리될 수도 있다.
도 5는 본 개시의 예시적 실시예에 따른 인공신경망 처리모듈(235)의 동작을 개념적으로 도시하는 도면이다.
도 5에서는 설명의 편의를 위해 사용자 단말(200)에 구비된 인공신경망 처리모듈(235)을 예시하나, 인공신경망을 구현하는 동작은 클라우드 분석장치(100)의 인공신경망 프로세서(150)에서 처리될 수도 있음은 통상의 기술자가 충분히 이해할 수 있을 것이다.
인공신경망 처리모듈(235)은, 차연산된 얼굴윤곽데이터 및 차연산된 얼굴윤곽데이터를, 참조 얼굴데이터(GT)를 참값(ground truth)으로 비교함으로써, 얼굴윤곽 및 피부상태를 학습하고 결과로써 학습된 얼굴윤곽데이터 및 학습된 피부상태데이터를 생성하도록 구성된 인공신경망을 구축할 수 있다. 인공신경망은 컨볼루션 뉴럴 네트워크(CNN) 아키텍처 또는 트랜스포머(Transformer) 아키텍처 기반으로 학습되는 것일 수 있으나, 이에 국한되지 않고 GoogleNet, AlexNet, VGG Network, CNN(Convolution Neural Network), R-CNN(Region with Convolution Neural Network), RPN(Region Proposal Network), RNN(Recurrent Neural Network), S-DNN(Stacking-based deep Neural Network), S-SDNN(State-Space Dynamic Neural Network), Deconvolution Network, DBN(Deep Belief Network), RBM(Restrcted Boltzman Machine), Fully Convolutional Network, LSTM(Long Short-Term Memory) Network, Classification Network, Generative Modeling, eXplainable AI, Continual AI, Representation Learning, AI for Material Design, 자연어 처리를 위한 BERT, SP-BERT, MRC/QA, Text Analysis, Dialog System, GPT-3, GPT-4, 비전 처리를 위한 Visual Analytics, Visual Understanding, Video Synthesis, ResNet 데이터 지능을 위한 Anomaly Detection, Prediction, Time-Series Forecasting, Optimization, Recommendation, Data Creation 등 다양한 인공지능 아키텍처 및 알고리즘을 이용할 수 있다.
인공신경망 처리모듈(235)은, 구축된 인공신경망을 배치(deploy)함으로써 상기 적어도 하나의 현재 얼굴데이터가 입력되는 경우(입력데이터) 상기 현재 얼굴윤곽데이터 및 상기 현재 피부상태데이터를 포함하는 출력데이터를 생성할 수 있다. 인공신경망 처리모듈은 인공신경망 구축에 사용된 학습모델을 생성하기 위해 이용된 다양한 하이퍼파라미터의 세팅값, 및 이를 최적화하기 위해 튜닝된 하이퍼파라미터 값들을 이용할 수 있다.
인공신경망 처리모듈(235)이 처리하는 입력데이터는 바람직하게는 이미지, 동영상, 객체 인식 정보 등 시각(Vision)화 데이터일 수 있으나, 이에 국한되지 않고, 텍스트, 음성, 사물 인식정보, 영상, 생체정보 등과 같은 인식 신호를 포함하는 다양한 종류의 정보 신호의 형태를 포함한다.
예시적인 실시예에 따르면, 인공신경망 처리모듈(235)은 적어도 하나의 얼굴데이터(FD)에 대해 엣지 디텍팅(edge detecting) 기술, 또는 이를 이용한 컨볼루션 뉴럴 네트워크(CNN) 등 비전 기술 기반 인공신경망을 이용하여 사용자의 얼굴 윤곽을 추출할 수 있다.
입력데이터는 학습에 필요한 원본 데이터이다. 예시적 실시예에서, 인공신경망 처리모듈(235)은 복수의 얼굴데이터(FD)를 수신하고, 프레임 데이터로부터 프레임 데이터가 나타내는 이미지에 포함된 사물에 대한 인식 신호를 생성할 수 있다. 예를 들어, 인공신경망 처리모듈(235)은 카메라로부터 제공되는 프레임 데이터인 입력 데이터에 기초하여, 안면 인식 신호를 생성할 수 있다. 예시적 실시예에서, 인공신경망 처리모듈(235)은 이미지 스트림에 포함되는 주파수 데이터를 입력데이터로 수신하고, 주파수 데이터로부터 추출되는 주파수에 대응되는 객체 인식 신호를 생성할 수 있다.
예시적인 실시예에 따르면, 인공신경망 처리모듈(235)은 적어도 하나의 얼굴데이터(FD)에 대해 초해상도(super resolution) 등의 기술, 또는 이를 이용한 해상도 업스케일링 기술 기반 인공신경망을 이용하여 사용자의 피부를 정밀하게 측정함으로써 사용자의 피부상태를 추정할 수 있다.
도 6 및 도 7은 본 개시의 예시적 실시예에 따른 인공지능 학습모델(NN)의 학습 방법을 나타내는 도면이다.
도 6을 참조하면, 인공지능 학습모델(NN)은 복수의 레이어들(L1 내지 Ln)을 포함할 수 있다. 복수의 레이어들(L1 내지 Ln) 각각은 선형 레이어 또는 비선형 레이어일 수 있으며, 일 실시예에 있어서, 적어도 하나의 선형 레이어 및 적어도 하나의 비선형 레이어가 결합되어 하나의 레이어로 지칭될 수도 있다. 예시적으로, 선형 레이어는 컨볼루션 레이어(convolution layer) 및 완전 연결 레이어(fully connected layer)를 포함할 수 있으며, 비선형 레이어는 풀링(pooling layer) 및 활성 레이어(activation layer)를 포함할 수 있다.
예시적으로, 제1 레이어(L1)는 컨볼루션 레이어이고, 제2 레이어(L2)는 풀링 레이어이고, 제n 레이어(Ln)는 출력 레이어로서 완전 연결 레이어일 수 있다. 인공지능 학습모델(NN)은 활성 레이어를 더 포함할 수 있으며, 다른 종류의 연산을 수행하는 레이어를 더 포함할 수 있다.
복수의 레이어들(L1 내지 Ln) 각각은 입력되는 데이터(예컨대, 이미지 프레임) 또는 이전 레이어에서 생성된 피처맵을 입력 피처맵으로서 수신하고, 입력 피처맵을 연산함으로써 출력데이터(QR)를 생성할 수 있다. 일 실시예에서, 출력데이터(QR)는 다양한 네트워크 파라미터들(평균 값, 확률 웨이트, 표준편차)일 수 있다.
피처맵은 입력 데이터의 다양한 특징이 표현된 데이터를 의미한다. 피처맵들(FM1, FM2, FMn)은 예컨대 2차원 매트릭스 또는 3차원 매트릭스(또는 텐서(tensor)) 형태를 가질 수 있다. 일 실시예에서, 입력되는 제1 피처맵(FM1)은 현재 상태에 대응하는 데이터일 수 있다. 피처맵들(FM1, FM2, FMn)은 너비(W)(또는 칼럼), 높이(H)(또는 로우) 및 깊이(D)를 가지며, 이는 좌표상의 x축, y축 및 z축에 각각 대응될 수 있다. 이 때, 깊이(D)는 채널 수로 지칭될 수 있다.
제1 레이어(L1)는 제1 피처맵(FM1)을 웨이트 커널(WK)과 컨볼루션함으로써 제2 피처맵(FM2)을 생성할 수 있다. 웨이트 커널(WK)은 제1 피처맵(FM1)을 필터링할 수 있으며, 필터 또는 맵으로도 지칭될 수 있다. 웨이트 커널(WK)의 깊이, 즉 채널 개수는 제1 피처맵(FM1)의 깊이, 즉 채널 개수와 동일하며, 웨이트 커널(WK)과 제1 피처맵(FM1)의 동일한 채널끼리 컨볼루션 될 수 있다. 웨이트 커널(WK)이 제1 피처맵(FM1)을 슬라이딩 윈도우로 하여 횡단하는 방식으로 시프트 될 수 있다. 시프트되는 양은 "스트라이드(stride) 길이" 또는 "스트라이드"로 지칭될 수 있다.
각 시프트 동안, 웨이트 커널(WK)에 포함되는 웨이트 값들 각각이 제1 피처맵(FM1)과 중첩되는 영역에서의 모든 픽셀 데이터들과 곱해지고 더해질 수 있다. 웨이트 커널(WK)에 포함되는 웨이트 값들 각각이 제1 피처맵(FM1)과 중첩되는 영역에서의 제1 피처맵(FM1)의 데이터들을 추출 데이터라 칭할 수 있다. 제1 피처맵(FM1)과 웨이트 커널(WK)이 컨볼루션 됨에 따라, 제2 피처맵(FM2)의 하나의 채널이 생성될 수 있다. 도 3에는 하나의 웨이트 커널(WK)이 표시되었으나, 실질적으로는 복수의 웨이트 맵들이 제1 피처맵(FM1)과 컨볼루션 되어, 제2 피처맵(FM2)의 복수의 채널들이 생성될 수 있다. 다시 말해, 제2 피처맵(FM2)의 채널의 수는 웨이트 맵의 개수에 대응될 수 있다.
제2 레이어(L2)는 풀링을 통해 제2 피처맵(FM2)의 공간적 크기(spatial size)를 변경함으로써, 제3 피처맵(FM3)을 생성할 수 있다. 풀링은 샘플링 또는 다운-샘플링으로 지칭될 수 있다. 2차원의 풀링 윈도우(PW)가 풀링 윈도우(PW)의 사이즈 단위로 제2 피처맵(FM2) 상에서 시프트 되고, 풀링 윈도우(PW)와 중첩되는 영역의 픽셀 데이터들 중 최대값(또는 픽셀 데이터들의 평균값)이 선택될 수 있다. 이에 따라, 제2 피처맵(FM2)으로부터 공간적 사이즈가 변경된 제3 피처맵(FM3)이 생성될 수 있다. 제3 피처맵(FM3)의 채널과 제2 피처맵(FM2)의 채널 개수는 동일하다. 일 실시예에서, 제3 피처맵(FM3)은 도 3에서 상술한, 컨볼루션이 완료된 출력 피처맵에 대응될 수 잇다.
제n 레이어(Ln)는 제n 피처맵(FMn)의 피처들을 조합함으로써 입력 데이터의 클래스(class)(CL)를 분류할 수 있다. 또한, 제n 레이어(Ln)는 클래스에 대응되는 출력데이터(QR)를 생성할 수 있다. 실시예에 있어서, 입력 데이터는 현재 상태에 대응하는 데이터에 대응될 수 있으며, 제n 레이어(Ln)는 이전 레이어로부터 제공되는 제n 피처맵(FMn)을 복수의 행동들에 대응하는 클래스들을 추출함으로써 최적의 행동을 판별하기 위한 출력데이터(QR)를 생성할 수 있다.
도 7은 본 개시의 예시적 실시예에 따른 인공지능 학습모델(도 6의 NN)의 학습 방법을 나타내는 도면이다.
도 7을 참조하면, 입력 피처맵들은 D개의 채널들을 포함하고, 각 채널의 입력 피처맵은 H행 W열의 크기를 가질 수 있다(D, H, W는 자연수). 커널들 각각은 R행 S열의 크기를 갖고, 커널들은 입력 피처맵들의 채널 수(또는 깊이)(D) 에 대응되는 개수의 채널들을 포함할 수 있다(R, S는 자연수). 출력 피처맵들은 입력 피처맵들과 커널들 간의 3차원 컨볼루션 연산을 통해 생성될 수 있고, 컨볼루션 연산에 따라 Y개의 채널들을 포함할 수 있다.
하나의 입력 피처맵과 하나의 커널 간의 컨볼루션 연산을 통해 출력 피처맵이 생성되는 과정은 도 6b를 참조해 설명될 수 있으며, 도 5b에서 설명되는 2차원 컨볼루션 연산이 전체 채널들의 입력 피처맵들과 전체 채널들의 커널들 간에 수행됨으로써, 전체 채널들의 출력 피처맵들이 생성될 수 있다.
도 7을 다시 참조하면, 설명의 편의를 위해, 입력 피처맵은 6x6 크기(size)를 가지고, 원본 커널은 3x3 크기를 가지고, 출력 피처맵은 4x4 크기인 것으로 가정하나, 이에 제한되지 않으며 인공지능 학습모델(도 6의 NN)은 다양한 크기의 피처맵들 및 커널들로 구현될 수 있다. 또한, 입력 피처맵, 원본 커널 및 출력 피처맵에 정의된 값들은 모두 예시적인 값들일 뿐이고, 본 개시에 따른 실시예들이 이에 제한되지 않는다.
원본 커널은 입력 피처 맵에서 3x3 크기의 윈도우 단위로 슬라이딩하면서 컨볼루션 연산을 수행할 수 있다. 컨볼루션 연산은 입력 피처 맵의 어느 윈도우의 각 피처 데이터 및 원본 커널에서 대응되는 위치의 각 웨이트 값들 간의 곱셈을 함으로써 획득된 값들을 모두 합산함에 따라 출력 피처 맵의 각 피처 데이터를 구하는 연산을 나타낼 수 있다.
다시 말해, 하나의 입력 피처 맵과 하나의 원본 커널 간의 컨볼루션 연산은 입력 피처 맵의 추출 데이터 및 원본 커널의 대응되는 웨이트 값들의 곱셈 및 곱셈 결과들의 합산을 반복적으로 수행함으로써 처리될 수 있고, 컨볼루션 연산의 결과로서 출력 피처 맵이 생성될 수 있다.
도 8은 본 개시의 예시적 실시예에 따른 피부 분석 방법을 설명하는 블록도이다. 도 8에서는 설명의 편의를 위해, 현재 시점의 데이터는 (t)의 참조기호가 참조부호에 부착되었고, 과거 시점의 데이터는 (t-1)의 데이터가 부착되었다,
현재 얼굴데이터(FD(t))는 현재 피부상태데이터(SSD(t)) 및 현재 얼굴윤곽데이터(FSD(t))를 포함할 수 있다. 현재 얼굴데이터(FD(t))는 적어도 하나 획득될 수 있고, 구체적으로는 1개 내지 n개 획득될 수 있다. 획득된 현재 얼굴데이터(FD(t))는 디퍼런셜 연산모듈(171)로 전송된다.
디퍼런셜 연산모듈(171)은 적어도 하나의 현재 얼굴데이터 현재 얼굴데이터(FD(t))와 과거 얼굴데이터(FD(t-1))의 적어도 하나의 차이값을 산출하도록 구성될 수 있다. 본 개시의 예시적 실시예에 따르면, 디퍼런셜 연산모듈(171)은 사용자 단말(200)에 의해 피시술자의 현재 얼굴데이터(FD(t))를 순차적으로 복수 개 획득할 수 있고, 피시술자의 현재 얼굴데이터(FD(t))를 복수 개 획득한 경우, 복수의 현재 얼굴데이터(FD(t))를 기준이 되는 데이터(예컨대, 대표데이터) 와 디퍼런셜 연산(차연산)함으로써 차이값을 산출할 수 있다.
디퍼런셜 연산모듈(171)은 시퀀스 제어부(172) 및 감산부(173)를 포함할 수 있다.
시퀀스 제어부(172)는 복수의 얼굴데이터(FD(t))의 일련의 처리 순서를 제어할 수 있다. 예를 들어, 과거 얼굴데이터(FD(t-1))는 제1 피부상태데이터 및 제1 얼굴윤곽데이터를 포함하고, 적어도 하나의 현재 얼굴데이터(FD(t))는 적어도 하나의 제2 피부상태데이터 및 적어도 하나의 제2 얼굴윤곽데이터를 포함할 수 있다. 이 경우, 시퀀스 제어부(172)는 제1 피부상태데이터와 과거 피부상태데이터(SSD(t-1))를 차연산한 후, 제2 피부상태데이터와 과거 피부상태데이터(SSD(t-1))를 차연산할 수 있도록 순위를 부여하여 시퀀스를 제어할 수 있다. 마찬가지로, 시퀀스 제어부(172)는 제1 얼굴윤곽데이터와 과거 얼굴윤곽데이터(FSD(t-1))를 차연산한 후, 제2 얼굴윤곽데이터와 과거 얼굴윤곽데이터(FSD(t-1))를 차연산할 수 있도록 순위를 부여하여 시퀀스를 제어할 수 있다.
예시적인 실시예에서, 시퀀스 제어부(172)는 피부상태데이터와 얼굴윤곽데이터의 처리 순서를 분리할 수 있다. 예컨대, 시퀀스 제어부(172)는 일련의 현재 피부상태데이터 n개(SSD(t))(1~n)가 차연산된 후, 일련의 현재 얼굴윤곽데이터 n개(FSD(t))(1~n)를 처리하도록 입력데이터의 시퀀스 처리 순서를 제어할 수 있다.
감산부(173)는 차연산을 수행하기 위해 구성될 수 있다. 감산부(173)는 스킨DB(191)로부터 로딩된 과거 피부상태데이터(SSD(t-1))를 적어도 하나의 현재 피부상태데이터(SSD(t))와 순차적으로 차연산하거나, 페이셜DB(193)로부터 로딩된 과거 얼굴윤곽데이터(FSD(t-1))를 적어도 하나의 현재 얼굴윤곽데이터(FSD(t))와 순차적으로 차연산할 수 있다.
본 개시의 예시적인 실시예에 따르면, 차연산은 얼굴데이터(FD)에 포함된 이미지의 밝기, 명암, 채도, 굴곡, 심도, 색상(RGB 색채널 또는 YUV 색채널 기반)을 포함할 수 있다.
피부상태데이터(SSD)가 8비트의 데이터 깊이를 가지는 경우, 현재 피부상태데이터(SSD(t))의 밝기는 255일 수 있고, 과거 피부상태데이터(SSD(t-1))의 밝기는 200일 수 있다. 이 경우, 감산부(173)는 현재 피부상태데이터(SSD(t))에서 과거 피부상태데이터(SSD(t-1))를 감산한 결과 55의 값을 산출할 수 있고, 이 차이값은 피부상태 추론모듈(175)에서 얼굴 광택의 시술 전후 차이로 분석될 수 있다. 분석데이터(AD)는 차이값에 대해 '피부톤이 피부과 시술 후 밝아짐' 이라는 분석을 포함할 수 있다.
얼굴윤곽데이터(FSD)가 8비트의 데이터 깊이를 가지는 경우, 피시술자 얼굴 이미지 중 턱 부분에 대한 과거 얼굴윤곽데이터(FSD(t-1))의 값은 255일 수 있고, 현재 얼굴윤곽데이터(FSD(t))의 값은 10일 수 있다. 이 경우, 감산부(173)는 과거 얼굴윤곽데이터에서 과거 피부상태데이터를 감산한 결과 245의 값을 산출할 수 있고, 이 차이값은 피부상태 추론모듈(175)에서 얼굴 윤곽의 시술 전후 차이로 분석될 수 있다. 분석데이터(AD)는 차이값에 대해 '얼굴 윤곽이 시술 전에 비해 넓어짐' 이라는 분석을 포함할 수 있다.
피부상태 추론모듈(175)은 대표데이터 산출부(176), 효능확인분석부(177), 시술제안분석부(178)를 포함할 수 있다.
본 개시의 예시적 실시예에 따르면, 피부상태 추론모듈(175)은 복수의 현재 얼굴데이터(FD(t))를 데이터베이스(190)로부터 로딩된 과거 얼굴데이터(FD(t-1))와 디퍼런셜 연산(차연산)할 수 있고, 그 결과로서 분석데이터(AD)를 생성할 수 있다.
대표데이터 산출부(176)는 디퍼런셜 연산모듈(171)로부터 수신된, 대표데이터를 포함하는 데이터 차이값들을 수신하고, 차이값이 가장 큰 현재 얼굴데이터(FD(t))를 대표데이터로 결정할 수 있다.
효능확인분석부(177)는 피부 시술 결과 피부 및 얼굴 상태가 과거 시점 대비 현재 얼마나 개선되었는지를 확인하는데 필요하기 때문에 대표데이터(RFD(t))에서 과거 얼굴데이터(FD(t-1))를 차연산할 수 있다. 효능확인에는 주로 현재 시점 데이터의 픽셀당 크기값이 과거 시점 데이터의 픽셀당 크기보다 큰 경우가 많으므로, 현재시점에서 과거시점을 차연산함으로써, 데이터의 오버플로우(overflow)를 방지할 수 있다.
시술제안분석부(178)는 피부 시술 결과 피부 및 얼굴 상태가 과거 시점 대비 현재 얼마나 악화되었는지를 확인하는데 필요하기 때문에 과거 얼굴데이터(FD(t-1)) 에서 대표데이터(RFD(t))를 차연산할 수 있다. 시술제안에는 주로 현재 시점 데이터의 픽셀당 크기값이 과거 시점 데이터의 픽셀당 크기보다 작은 경우가 많으므로, 과거시점에서 현재시점을 차연산함으로써, 데이터의 오버플로우(overflow)를 방지할 수 있다.
피부상태 추론모듈(175)은 외부로부터 입력된 분석모드신호에 따라 효능확인모드, 또는 시술제안모드로 동작할 수 있다. 분석모드신호는 효능확인분석모드를 지시하는 제1 신호, 및 시술제안분석모드를 지시하는 제2 신호를 포함한다.
예시적인 실시예에 따르면, 효능확인분석부(177)는 제1 신호에 따라 대표데이터와의 차이값에 기반해 효능확인결과를 나타내는 분석데이터(AD)를 생성할 수 있다. 예를 들어, 피부상태 추론모듈(175)은, 제1 신호에 응답하여 대표데이터를 기준으로 과거 얼굴데이터(FD(t-1))를 감산할 수 있다. 피부상태 추론모듈(175)은 효능확인결과를 포함하는 제1 분석데이터에 대응되는 제1 피부시술이 시술DB에서 로딩된 과거 시술데이터상 피부시술과 일치하는 경우, 제1 피부시술을 재제안하는 제1 분석정보를 생성할 수 있다.
시술제안분석부(178)는 제2 신호에 따라 대표데이터와의 차이값에 기반해 시술제안결과를 나타내는 분석데이터(AD)를 생성할 수 있다. 예를 들어, 제2 신호에 응답하여 과거 얼굴데이터(FD(t-1))를 기준으로 대표데이터를 감산할 수 있다. 피부상태 추론모듈(175)은 시술제안결과를 포함하는 제2 분석데이터에 대응되는 제2 피부시술이 시술DB에서 로딩된 과거 시술데이터상 피부시술과 불일치하는 경우, 제2 피부시술을 제안하는 제2 분석정보를 생성할 수 있다.
도 9는 본 개시의 예시적 실시예에 따른 피부 분석 방법을 설명하는 도면이다.
도 9(a)는 피부과 시술에 따른 피부상태 변화를 분석한 결과를 나타낸다. 도 9(a)의 좌측은 과거 피부상태데이터(SSD(t-1))일 수 있고, 우측은 현재 피부상태데이터(SSD(t))일 수 있다. 피부 분석 시스템(10)은 과거 피부상태데이터(SSD(t-1)) 및 현재 피부상태데이터(SSD(t))에 기반해 피부상태를 분석한 결과, 시술 전에 비해 시술 후 피부 상태가 개선되었다는 분석 결과를 도출할 수 있다. 피부 분석 시스템(10)은 피부 상태가 개선되었음을, 피부 시술 전후 차이값을 통해 정량적으로 산출할 수 있고, 구체적으로 주름이 나타내는 검은 줄이 사라졌음을 차연산을 통해 산출할 수 있다. 도 9(a)의 상태 변화는 보톡스 시술 효능을 확인하는 데에 이용될 수 있으나, 해당 시술에 국한되지 않는다.
도 9(b)는 피부과 시술에 따른 얼굴윤곽 변화를 분석한 결과를 나타낸다. 도 9(b)의 좌측은 현재 얼굴윤곽데이터(FSD(t))일 수 있고, 우측은 과거 얼굴윤곽데이터(FSD(t-1))일 수 있다. 피부 분석 시스템(10)은 과거 얼굴윤곽데이터(FSD(t-1)) 및 현재 얼굴윤곽데이터(FSD(t))에 기반해 얼굴윤곽을 분석한 결과, 시술 전에 비해 시술 후 얼굴 윤곽이 넓어졌다는 분석 결과를 도출할 수 있다. 피부 분석 시스템(10)은 얼굴 윤곽이 악화되었음을, 피부 시술 전후 차이값을 통해 정량적으로 산출할 수 있고, 구체적으로 얼굴 윤곽이 넓어졌음을 차연산을 통해 산출할 수 있다. 도 9(b)의 상태 변화는 보톡스 시술 효능이 만료되었음을 확인하는 데에 이용될 수 있으나, 해당 시술에 국한되지 않는다.
도 10은 본 개시의 예시적 실시예에 따른 피부 분석 방법을 나타내는 흐름도이다.
단계 S110에서, 사용자 단말(200)은, 현재 얼굴데이터(FD(t))를 센싱할 수 있다. 현재 얼굴데이터는 제1 얼굴데이터 및 제2 얼굴데이터를 포함한다.
단계 S115에서, 사용자 단말(200)은, 현재 얼굴데이터(FD(t))를 왜곡 보정 및 평면 변환할 수 있다.
단계 S120에서, 사용자 단말(200)은, 현재 얼굴윤곽데이터(FSD(t)) 및 피부상태데이터(SSD(t))를 분리 인식할 수 있다.
단계 S125에서, 사용자 단말(200)은, 현재 얼굴데이터(FD(t))를 클라우드 분석장치(100)에 전송할 수 있다.;
단계 S130에서, 클라우드 분석장치(100)는, 저장된 과거 얼굴데이터(FD(t-1))를 로드할 수 있다.
단계 S135에서, 클라우드 분석장치(100)는, 현재 얼굴데이터(FD(t))와 과거 얼굴데이터(FD(t-1))를 차연산(디퍼런셜 연산)하고, 차이값이 최대가 되는 현재 얼굴데이터(FD(t))를 대표데이터로 결정할 수 있다.
클라우드 분석장치(100)는, 현재 얼굴데이터와 과거 얼굴데이터를 차연산하고, 차이값이 최대가 되는 현재 얼굴데이터를 대표데이터로 결정할 수 있다. 클라우드 분석장치(100)는, 제1 얼굴데이터를 과거 얼굴데이터와 차연산하고, 제1 연산값을 생성할 수 있고, 제2 얼굴데이터를 과거 얼굴데이터와 차연산하고, 제2 연산값을 생성할 수 있다.
클라우드 분석장치(100)는, 제1 연산값 및 제2 연산값의 크기를 비교할 수 있다. 클라우드 분석장치(100)는, 크기가 큰 연산값을 도출하는 제1 얼굴데이터를 대표데이터로 결정할 수 있다.
단계 S140에서, 클라우드 분석장치(100)는, 대표데이터(RFD)와 과거 얼굴데이터(FD(t))의 차연산값을 분석데이터로서 출력할 수 있다
단계 S145에서, 클라우드 분석장치(100)는, 분석데이터를 과거 시술데이터와 매칭함으로써 분석정보를 생성하고, 단계 S150에서, 분석정보를 사용자 단말(200)에 전송할 수 있다
단계 S155에서, 사용자 단말(200)은, 분석정보에 기초해 추천시술정보 또는 효능확인정보를 사용자에게 제공할 수 있다.
본 개시의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 개시가 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.
본 개시의 다양한 실시예들은 기기(machine)에 의해 읽을 수 있는 저장 매체(storage medium)(예를 들어, 메모리)에 저장된 하나 이상의 인스트럭션들을 포함하는 소프트웨어로서 구현될 수 있다. 예를 들면, 기기의 프로세서(예를 들어, 프로세서(330, 440))는, 저장 매체로부터 저장된 하나 이상의 인스트럭션들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 인스트럭션에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 할 수 있다. 상기 하나 이상의 인스트럭션들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(signal)(예를 들어, 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예를 들어, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
예시적 실시예에 따르면, 본 개시에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예를 들어, compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 애플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 애플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
이상에서 전술한 본 개시의 예시적 실시예에 따른 피부 분석 방법은, 하드웨어인 서버와 결합되어 실행되기 위해 프로그램(또는 애플리케이션)으로 구현되어 매체에 저장될 수 있다. 여기에서, 프로그램은 컴퓨터가 프로그램을 읽어 들여 프로그램으로 구현된 방법들을 실행시키기 위하여, 컴퓨터의 제어부(CPU)가 컴퓨터의 장치 인터페이스를 통해 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다. 이러한 코드는 상기 방법들을 실행하는 필요한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Functional Code)를 포함할 수 있고, 상기 기능들을 컴퓨터의 제어부가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수 있다. 또한, 이러한 코드는 상기 기능들을 컴퓨터의 제어부가 실행시키는데 필요한 추가 정보나 미디어가 컴퓨터의 내부 또는 외부 저장부의 어느 위치(주소 번지)에서 참조되어야 하는지에 대한 저장부 참조관련 코드를 더 포함할 수 있다. 또한, 컴퓨터의 제어부가 상기 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 컴퓨터의 통신 모듈을 이용하여 원격에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수 있다.
상기 저장되는 매체는 레지스터, 캐쉬, 저장부 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 저장되는 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있지만, 이에 제한되지 않는다. 즉, 상기 프로그램은 컴퓨터가 접속할 수 있는 다양한 서버 상의 다양한 기록매체 또는 사용자의 컴퓨터상의 다양한 기록매체에 저장될 수 있다. 또한, 상기 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장될 수 있다.
이상, 첨부된 도면을 참조로 하여 본 개시의 실시예를 설명하였지만, 본 개시가 속하는 기술분야의 통상의 기술자는 본 개시가 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 할 수 있다.

Claims (10)

  1. 피부 분석 시스템에 있어서,
    카메라 모듈을 포함하고, 피시술자를 촬영함으로써 복수의 현재 얼굴윤곽데이터 및 복수의 현재 피부상태데이터를 포함하는 복수의 현재 얼굴데이터를 생성하도록 구성된 사용자 단말; 및
    상기 피시술자의 과거 얼굴윤곽데이터 및 과거 피부상태데이터를 포함하는 과거 얼굴데이터를 저장하는 메모리, 상기 복수의 현재 얼굴데이터와 상기 과거 얼굴데이터의 적어도 하나의 차이값을 산출하도록 구성된 디퍼런셜 연산 모듈, 및 상기 적어도 하나의 차이값이 가장 큰 현재 얼굴데이터를 대표데이터로 결정하고 상기 대표데이터와의 차이값에 기반해 분석모드신호에 따라 효능확인결과 또는 시술제안결과를 나타내는 분석데이터를 생성하는 피부상태 추론모듈을 포함하는 클라우드 분석장치를 포함하고,
    상기 디퍼런셜 연산 모듈은,
    처리 순서를 부여하여, 상기 복수의 현재 피부상태데이터 각각과 상기 과거 피부상태데이터를 차연산한 후, 상기 복수의 현재 얼굴윤곽데이터 각각과 상기 과거 얼굴윤곽데이터를 차연산함으로써 처리 순서를 분리하고,
    상기 차연산은 상기 복수의 현재 얼굴데이터 및 상기 과거 얼굴데이터에 포함된 밝기, 명암, 채도, 굴곡, 심도, RGB 색채널 색상 및 YUV 색채널 색상 각각에 대해 수행되고,
    상기 피부상태 추론모듈은,
    상기 복수의 현재 얼굴데이터 각각과 상기 과거 얼굴데이터를 차연산한 결과값 중 차이값이 가장 큰 현재 얼굴데이터를 대표 얼굴데이터로 결정하고,
    상기 대표 얼굴데이터에서 상기 과거 얼굴데이터를 차연산한 결과에 대해 피부시술 효능을 분석하고,
    상기 과거 얼굴데이터에서 상기 대표 얼굴데이터를 차연산한 결과에 대해 신규 피부시술 제안여부를 분석하는 것을 특징으로 하는, 피부 분석 시스템.
  2. 제1항에 있어서,
    상기 클라우드 분석장치는
    상기 과거 피부상태데이터를 저장하는 스킨DB, 상기 과거 얼굴윤곽데이터를 저장하는 페이셜DB, 상기 피시술자의 과거 시술 이력을 저장하는 시술DB를 포함하는 데이터베이스를 더 포함하는 것을 특징으로 하는, 피부 분석 시스템.
  3. 삭제
  4. 제2항에 있어서,
    상기 피부 분석 시스템은,
    상기 효능확인결과를 포함하는 제1 분석데이터에 대응되는 제1 피부시술이 상기 시술DB에서 로딩된 과거 시술데이터상 피부시술과 일치하는 경우, 상기 제1 피부시술을 재제안하는 제1 분석정보를 생성하고,
    상기 시술제안결과를 포함하는 제2 분석데이터에 대응되는 제2 피부시술이 상기 시술DB에서 로딩된 과거 시술데이터상 피부시술과 불일치하는 경우, 상기 제2 피부시술을 제안하는 제2 분석정보를 생성하는 것을 특징으로 하는, 피부 분석 시스템.
  5. 제1항에 있어서,
    상기 분석모드신호는,
    효능확인분석모드를 지시하는 제1 신호, 및 시술제안분석모드를 지시하는 제2 신호를 포함하고,
    상기 피부상태 추론모듈은,
    상기 제1 신호에 응답하여 상기 대표데이터를 기준으로 상기 과거 얼굴데이터를 감산하고, 상기 제2 신호에 응답하여 상기 과거 얼굴데이터를 기준으로 상기 대표데이터를 감산하는 것을 특징으로 하는, 피부 분석 시스템.
  6. 제1항에 있어서,
    상기 사용자 단말은,
    인공신경망 처리모듈을 더 포함하고,
    상기 인공신경망 처리모듈은,
    차연산된 얼굴윤곽데이터 및 차연산된 얼굴윤곽데이터를, 참조 얼굴데이터를 참값으로 비교함으로써, 얼굴윤곽 및 피부상태를 학습하도록 구성된 인공신경망을 이용하고,
    상기 인공신경망은 컨볼루션 뉴럴 네트워크(CNN) 아키텍처 또는 트랜스포머(Transformer) 아키텍처 기반으로 학습되는 것을 특징으로 하는, 피부 분석 시스템.
  7. 제6항에 있어서,
    상기 인공신경망 처리모듈은,
    상기 복수의 현재 얼굴데이터가 입력되는 경우 상기 현재 얼굴윤곽데이터 및 상기 현재 피부상태데이터를 분류하도록 구성된 것을 특징으로 하는, 피부 분석 시스템.
  8. 사용자 단말 및 클라우드 분석장치를 이용한 피부 분석 방법에 있어서,
    상기 사용자 단말이, 현재 얼굴데이터를 센싱하는 단계;
    상기 사용자 단말이, 상기 현재 얼굴데이터를 왜곡 보정 및 평면 변환하는 단계;
    상기 사용자 단말이, 상기 현재 얼굴데이터에서 얼굴윤곽데이터 및 피부상태데이터를 분리 인식하는 단계;
    상기 사용자 단말이, 상기 현재 얼굴데이터를 상기 클라우드 분석장치에 전송하는 단계;
    상기 클라우드 분석장치가, 저장된 과거 얼굴데이터를 로드하는 단계;
    상기 클라우드 분석장치가, 상기 현재 얼굴데이터와 상기 과거 얼굴데이터를 차연산하고, 차이값이 최대가 되는 현재 얼굴데이터를 대표데이터로 결정하는 단계; 및
    상기 클라우드 분석장치가, 상기 대표데이터와 상기 과거 얼굴데이터의 차연산값을 분석데이터로서 출력하는 단계를 포함하고,
    상기 현재 얼굴데이터를 대표데이터로 결정하는 단계는,
    복수의 현재 피부상태데이터 각각과 과거 피부상태데이터를 차연산하는 단계; 및
    피부상태데이터 차연산 단계 후, 복수의 현재 얼굴윤곽데이터 각각과 과거 얼굴윤곽데이터를 차연산하는 단계를 포함하고,
    상기 차연산은 상기 현재 얼굴데이터 및 상기 과거 얼굴데이터에 포함된 밝기, 명암, 채도, 굴곡, 심도, RGB 색채널 색상 및 YUV 색채널 색상 각각에 대해 수행되고,
    상기 현재 얼굴데이터는 제1 얼굴데이터 및 제2 얼굴데이터를 포함하고,
    상기 클라우드 분석장치가, 상기 현재 얼굴데이터와 상기 과거 얼굴데이터를 차연산하고, 차이값이 최대가 되는 현재 얼굴데이터를 대표데이터로 결정하는 단계는,
    상기 제1 얼굴데이터를 상기 과거 얼굴데이터와 차연산하고, 제1 연산값을 생성하는 단계;
    상기 제2 얼굴데이터를 상기 과거 얼굴데이터와 차연산하고, 제2 연산값을 생성하는 단계;
    상기 제1 연산값 및 상기 제2 연산값의 크기를 비교하는 단계; 및
    크기가 큰 연산값을 도출하는 제1 얼굴데이터를 대표데이터로 결정하는 단계를 포함하고,
    상기 차연산값을 분석데이터로서 출력하는 단계는,
    상기 대표데이터에서 상기 과거 얼굴데이터를 차연산한 결과에 대해 피부시술 효능을 분석하는 단계; 및
    상기 과거 얼굴데이터에서 상기 대표데이터를 차연산한 결과에 대해 신규 피부시술 제안여부를 분석하는 단계를 포함하는 것을 특징으로 하는, 피부 분석 방법
  9. 제8항에 있어서,
    상기 클라우드 분석장치가, 상기 분석데이터를 과거 시술데이터와 매칭함으로써 분석정보를 생성하고, 상기 분석정보를 상기 사용자 단말에 전송하는 단계; 및
    상기 사용자 단말이, 상기 분석정보에 기초해 추천시술정보 또는 효능확인정보를 사용자에게 제공하는 단계를 더 포함하는, 피부 분석 방법.
  10. 삭제
KR1020220062027A 2022-05-20 2022-05-20 카메라 모듈을 이용한 클라우드 기반 피부 분석 시스템 및 방법 KR102434038B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220062027A KR102434038B1 (ko) 2022-05-20 2022-05-20 카메라 모듈을 이용한 클라우드 기반 피부 분석 시스템 및 방법
PCT/KR2023/006152 WO2023224298A1 (ko) 2022-05-20 2023-05-04 카메라 모듈을 이용한 클라우드 기반 피부 분석 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220062027A KR102434038B1 (ko) 2022-05-20 2022-05-20 카메라 모듈을 이용한 클라우드 기반 피부 분석 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR102434038B1 true KR102434038B1 (ko) 2022-08-19

Family

ID=83113560

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220062027A KR102434038B1 (ko) 2022-05-20 2022-05-20 카메라 모듈을 이용한 클라우드 기반 피부 분석 시스템 및 방법

Country Status (2)

Country Link
KR (1) KR102434038B1 (ko)
WO (1) WO2023224298A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102486197B1 (ko) 2022-09-26 2023-01-09 강석준 3차원 얼굴 스캐닝 방법, 장치 및 시스템
WO2023224298A1 (ko) * 2022-05-20 2023-11-23 주식회사 패스트레인 카메라 모듈을 이용한 클라우드 기반 피부 분석 시스템 및 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170048856A (ko) * 2015-10-27 2017-05-10 주식회사 벤디슨 피부 자동 시술 시스템
KR20200058798A (ko) * 2018-11-20 2020-05-28 주식회사 룰루랩 피부 상태 측정용 다중 이미지 획득 모듈
KR20200137919A (ko) * 2019-05-31 2020-12-09 삼성전자주식회사 피부 케어 장치를 제어하는 전자 장치와 이의 동작 방법
KR102350591B1 (ko) 2017-11-09 2022-01-18 (주)초위스컴퍼니 진단 시스템 및 진단 시스템의 동작 방법
KR20220010381A (ko) * 2020-07-17 2022-01-25 주식회사 아트랩 피부 변화를 추적하는 전자 장치, 서버, 및 시스템

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102356465B1 (ko) * 2019-12-17 2022-01-27 고려대학교 산학협력단 사용자 얼굴 피부 분석 방법 및 서버
KR102434038B1 (ko) * 2022-05-20 2022-08-19 주식회사 패스트레인 카메라 모듈을 이용한 클라우드 기반 피부 분석 시스템 및 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170048856A (ko) * 2015-10-27 2017-05-10 주식회사 벤디슨 피부 자동 시술 시스템
KR102350591B1 (ko) 2017-11-09 2022-01-18 (주)초위스컴퍼니 진단 시스템 및 진단 시스템의 동작 방법
KR20200058798A (ko) * 2018-11-20 2020-05-28 주식회사 룰루랩 피부 상태 측정용 다중 이미지 획득 모듈
KR20200137919A (ko) * 2019-05-31 2020-12-09 삼성전자주식회사 피부 케어 장치를 제어하는 전자 장치와 이의 동작 방법
KR20220010381A (ko) * 2020-07-17 2022-01-25 주식회사 아트랩 피부 변화를 추적하는 전자 장치, 서버, 및 시스템

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023224298A1 (ko) * 2022-05-20 2023-11-23 주식회사 패스트레인 카메라 모듈을 이용한 클라우드 기반 피부 분석 시스템 및 방법
KR102486197B1 (ko) 2022-09-26 2023-01-09 강석준 3차원 얼굴 스캐닝 방법, 장치 및 시스템

Also Published As

Publication number Publication date
WO2023224298A1 (ko) 2023-11-23

Similar Documents

Publication Publication Date Title
US11875268B2 (en) Object recognition with reduced neural network weight precision
US11138466B2 (en) Image processing method, processing apparatus and processing device
KR102434038B1 (ko) 카메라 모듈을 이용한 클라우드 기반 피부 분석 시스템 및 방법
CN112183718B (zh) 一种用于计算设备的深度学习训练方法和装置
CN108268885B (zh) 特征点检测方法、设备和计算机可读存储介质
CN109389219A (zh) 用于对神经网络的参数进行量化的方法和装置
US11574198B2 (en) Apparatus and method with neural network implementation of domain adaptation
JP2019102084A (ja) ニューラルネットワークにおいてコンボリューション演算を処理する方法及びその装置
CN111914997B (zh) 训练神经网络的方法、图像处理方法及装置
EP4322056A1 (en) Model training method and apparatus
CN111695673B (zh) 训练神经网络预测器的方法、图像处理方法及装置
CN113256592B (zh) 图像特征提取模型的训练方法、系统及装置
US11481608B2 (en) Method and apparatus with neural network parameter quantization
KR20200144398A (ko) 클래스 증가 학습을 수행하는 장치 및 그의 동작 방법
WO2022012668A1 (zh) 一种训练集处理方法和装置
KR20210154502A (ko) 부동 소수점 연산을 수행하는 뉴럴 네트워크 장치 및 그의 동작 방법
CN112257759A (zh) 一种图像处理的方法以及装置
CN109754357B (zh) 图像处理方法、处理装置以及处理设备
KR20210073300A (ko) 뉴럴 네트워크 장치, 이의 동작 방법 및, 이를 포함하는 뉴럴 네트워크 시스템
KR20210121946A (ko) 뉴럴 네트워크 양자화를 위한 방법 및 장치
KR102434054B1 (ko) 피부시술정보를 포함하는 썸네일 템플릿 생성장치, 및 이의 동작 방법
US20230021444A1 (en) Image processing device, processing method thereof, and image processing system including the image processing device
KR20190127510A (ko) 분류를 위한 뉴럴 네트워크에서 파라미터를 처리하는 방법 및 장치
KR20230013995A (ko) 공정 시뮬레이션 모델 생성 방법 및 장치
CN114065901A (zh) 训练神经网络模型的方法和装置

Legal Events

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