KR102287109B1 - 피부에 해당하는 이미지 처리 영역을 보정하는 방법 및 전자 장치 - Google Patents

피부에 해당하는 이미지 처리 영역을 보정하는 방법 및 전자 장치 Download PDF

Info

Publication number
KR102287109B1
KR102287109B1 KR1020170037913A KR20170037913A KR102287109B1 KR 102287109 B1 KR102287109 B1 KR 102287109B1 KR 1020170037913 A KR1020170037913 A KR 1020170037913A KR 20170037913 A KR20170037913 A KR 20170037913A KR 102287109 B1 KR102287109 B1 KR 102287109B1
Authority
KR
South Korea
Prior art keywords
skin
region
face region
processor
data
Prior art date
Application number
KR1020170037913A
Other languages
English (en)
Other versions
KR20180108322A (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 KR1020170037913A priority Critical patent/KR102287109B1/ko
Priority to US16/495,678 priority patent/US11263790B2/en
Priority to PCT/KR2018/003168 priority patent/WO2018174493A1/ko
Publication of KR20180108322A publication Critical patent/KR20180108322A/ko
Application granted granted Critical
Publication of KR102287109B1 publication Critical patent/KR102287109B1/ko

Links

Images

Classifications

    • G06T5/001
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/90Dynamic range modification of images or parts thereof
    • G06T5/92Dynamic range modification of images or parts thereof based on global image properties
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/40Analysis of texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/56Extraction of image or video features relating to colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/162Detection; Localisation; Normalisation using pixel segmentation or colour matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • G06V40/171Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships
    • 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/178Human faces, e.g. facial parts, sketches or expressions estimating age from face image; using age information for improving recognition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/60Colour correction or control
    • H04N1/62Retouching, i.e. modification of isolated colours only or in isolated picture areas only
    • H04N1/628Memory colours, e.g. skin or sky
    • G06K2009/00322
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20076Probabilistic image processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30004Biomedical image processing
    • G06T2207/30088Skin; Dermal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • G06T2207/30201Face
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/60Extraction of image or video features relating to illumination properties, e.g. using a reflectance or lighting model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/165Detection; Localisation; Normalisation using facial parts and geometric relationships

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

전자 장치가 개시된다. 일 실시 예에 따른 전자 장치는, 메모리 및 상기 메모리와 전기적으로 연결된 프로세서를 포함하고, 상기 프로세서는, 이미지로부터 얼굴 영역을 인식하고, 복수의 인종과 연관지어 저장된 피부색 분포를 포함하는 제1 피부색 분포, 상기 얼굴 영역의 제1 색 데이터(a first color data) 및 상기 이미지 중 상기 얼굴 영역을 포함하는 보정 대상 영역의 제2 색 데이터(a second color data)에 기반하여, 상기 보정 대상 영역에 해당하는 제1 피부 확률 데이터를 확인하고, 상기 얼굴 영역의 상기 제1 색 데이터에 기반하여 상기 얼굴 영역의 카테고리를 결정하고, 및 상기 결정된 카테고리 및 상기 제1 피부 확률 데이터에 기반하여, 상기 보정 대상 영역의 색을 보정하도록 설정될 수 있다. 이 외에도 명세서를 통해 파악되는 다양한 실시 예가 가능하다.

Description

피부에 해당하는 이미지 처리 영역을 보정하는 방법 및 전자 장치{Method and device for correcting image processing area corresponding to skin}
본 문서에서 개시되는 실시 예들은, 피부에 해당하는 이미지 처리 영역을 보정하는 기술과 관련된다.
최근의 휴대 단말은 전화 기능뿐만 아니라, 사용자가 휴대 단말을 이용하여 수행할 수 있는 다양한 기능을 지원한다. 특히, 이미지 처리 기술의 발달에 힘입어 휴대 단말은 영상 촬영과 관련된 다양한 기능을 제공한다.
휴대 단말은 촬영되는 이미지를 보정하여 사용자가 원하는 영상을 얻을 수 있도록 한다. 예를 들어, 촬영되는 영상의 피부 색상을 밝게 하고, 잡티 등을 제거하는 기능을 제공할 수 있다. 또한, 이러한 보정 기능은 실시간으로 제공될 수 있다.
종래의 기술은 인종이나 성별이 다른 경우에도 동일한 방식으로 피부색을 보정하여, 사용자가 원치 않는 보정 결과물을 출력한다.
또한, 종래의 기술은 피부가 아닌 다른 객체의 색을 보정하여 사용자가 보정을 원하지 않는 영역의 색이 보정된 이미지를 출력한다.
본 문서에 개시되는 다양한 실시 예들은 인종, 성별 또는 나이에 따라 다른 보정 방식으로 이미지를 보정할 수 있는 전자 장치를 제공할 수 있다.
본 문서에 개시되는 다양한 실시 예들은 피부 영역만을 보정할 수 있는 전자 장치를 제공할 수 있다.
본 문서에 개시되는 일 실시 예에 따른 전자 장치는, 메모리 및 상기 메모리와 전기적으로 연결된 프로세서를 포함하고, 상기 프로세서는, 이미지로부터 얼굴 영역을 인식하고, 복수의 인종과 연관지어 저장된 피부색 분포를 포함하는 제1 피부색 분포, 상기 얼굴 영역의 제1 색 데이터(a first color data) 및 상기 이미지 중 상기 얼굴 영역을 포함하는 보정 대상 영역의 제2 색 데이터(a second color data)에 기반하여, 상기 보정 대상 영역에 해당하는 제1 피부 확률 데이터를 확인하고, 상기 얼굴 영역의 상기 제1 색 데이터에 기반하여 상기 얼굴 영역의 카테고리를 결정하고, 및 상기 결정된 카테고리 및 상기 제1 피부 확률 데이터에 기반하여, 상기 보정 대상 영역의 색을 보정하도록 설정될 수 있다.
본 문서에 개시되는 일 실시 예에 따른 이미지를 보정하는 방법은 상기 이미지로부터 얼굴 영역을 인식하는 동작, 복수의 인종과 연관지어 저장된 피부색 분포를 포함하는 제1 피부색 분포, 상기 얼굴 영역의 제1 색 데이터 및 상기 이미지 중 상기 얼굴 영역을 포함하는 보정 대상 영역의 제2 색 데이터에 기반하여, 상기 보정 대상 영역에 해당하는 제1 피부 확률 데이터를 확인하는 동작, 상기 얼굴 영역의 상기 제1 색 데이터에 기반하여 상기 얼굴 영역의 카테고리를 결정하는 동작, 및 상기 결정된 카테고리에 및 상기 제1 피부 확률 데이터에 기반하여, 상기 보정 대상 영역의 색을 보정하는 동작을 수행하도록 할 수 있다.
본 문서에 개시되는 일 실시 예에 따른 전자 장치는,메모리; 및 프로세서를 포함하고, 상기 프로세서는, 복수의 외부 객체들에 대한 이미지를 획득하고, 상기 이미지에 기반하여, 상기 복수의 외부 객체들 중 얼굴에 대응하는 얼굴 영역을 인식하고, 상기 얼굴 영역에 대응하는 제1 피부색 데이터에 기반하여 상기 얼굴 영역의 적어도 일부에 대한 피부에 대응할 제1 확률을 결정하고, 상기 복수의 외부 객체들 중 상기 얼굴 및 상기 얼굴과 관련된 외부 객체를 포함하는 보정 대상 영역을 결정하고, 상기 제1 확률에 적어도 기반하여, 상기 보정 대상 영역의 적어도 일부에 대한 피부에 대응할 제2 확률을 결정하고, 및 상기 제2 확률이 제1 값에 대응하는 경우, 제1 정도로 상기 적어도 일부에 대한 보정을 수행하고, 및 상기 제2 확률이 제2 값에 대응하는 경우, 제2 정도로 상기 적어도 일부에 대한 보정을 수행하도록 설정될 수 있다.
본 문서에 개시되는 실시 예들에 따르면, 이미지 내 사람이 해당하는 카테고리에 대응하는 보정 데이터를 사용하므로, 사용자가 선호하는 보정 결과물을 출력할 수 있다.
또한, 본 문서에 개시되는 실시 예들에 따르면, 피부에 해당하는 영역의 색을 이용하여 카테고리를 결정하므로, 카테고리 결정의 정확도를 높일 수 있다.
또한, 본 문서에 개시되는 실시 예들에 따르면, 이미지 내 영역별로 피부 확률을 산출함으로써 피부에 해당하는 영역만의 색을 보정할 수 있다.
이 외에, 본 문서를 통해 직접적 또는 간접적으로 파악되는 다양한 효과들이 제공될 수 있다.
도 1은 다양한 실시 예들에 따른 네트워크 환경 내의 전자 장치의 블록도를 나타낸다.
도 2는 일 실시 예에 따른 획득한 이미지를 보정하는 방법을 나타내는 흐름도이다.
도 3은 일 실시 예에 따른 이미지에 얼굴 영역 및 보정 대상 영역이 표시된 도면이다.
도 4는 일 실시 예에 따른 제1 피부 확률 데이터를 획득하는 과정을 나타낸 도면이다.
도 5는 일 실시 예에 따른 인종별 피부색 분포에 해당하는 제1 피부색 분포를 색 공간상에 나타낸 도면이다.
도 6은 일 실시 예에 따른 이미지로부터 인식된 얼굴 영역을 나타내는 도면이다.
도 7은 일 실시 예에 따른 얼굴 영역에 해당하는 제2 피부 확률 데이터를 맵으로 나타낸 도면이다.
도 8은 일 실시 예에 따른 제2 피부색 분포를 색 공간 상에 나타낸 도면이다.
도 9는 일 실시 예에 따른 얼굴 영역을 포함하는 보정 대상 영역을 나타내는 도면이다.
도 10은 일 실시 예에 따른 제1 피부 확률 데이터를 맵으로 나타낸 도면이다.
도 11 및 도 12는 일 실시 예에 따른 제1 피부 확률 데이터에 따라 픽셀의 밝기 정보가 보정되는 것을 나타낸 도면이다.
도 13은 일 실시 예에 따른 제1 피부 확률 데이터에 따라 텍스처가 보정되는 것을 나타낸 도면이다.
도 14는 일 실시 예에 따른 제1 피부 확률 데이터에 따라 색차 정보가 보정되는 것을 나타낸 도면이다.
도 15a는 일 실시 예에 따라 백인 얼굴 영역과 흑인 얼굴 영역을 포함하는 원본 이미지이다.
도 15b는 일 실시 예에 따라 백인 얼굴 영역과 흑인 얼굴 영역을 포함하는 보정된 이미지이다.
도 16은 일 실시 예에 따른 얼굴 영역이 실제로 얼굴을 포함하는지 여부를 판단하는 방법을 나타낸 흐름도이다.
도면의 설명과 관련하여, 동일 또는 유사한 구성요소에 대해서는 동일 또는 유사한 참조 부호가 사용될 수 있다.
이하, 본 발명의 다양한 실시 예가 첨부된 도면을 참조하여 기재된다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 실시 예의 다양한 변경(modification), 균등물(equivalent), 및/또는 대체물(alternative)을 포함하는 것으로 이해되어야 한다.
도 1은 다양한 실시 예들에 따른 네트워크 환경(100) 내의 전자 장치(101)의 블록도 이다. 본 문서에 개시된 다양한 실시 예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치(예: 스마트폰), 컴퓨터 장치(예: PDA(personal digital assistant), 태블릿 PC(tablet PC), 랩탑 PC(, 데스크톱 PC, 워크스테이션, 또는 서버), 휴대용 멀티미디어 장치(예: 전자 책 리더기 또는 MP3 플레이어), 휴대용 의료 기기(예: 심박, 혈당, 혈압, 또는 체온 측정기), 카메라, 또는 웨어러블 장치 중 적어도 하나를 포함할 수 있다. 웨어러블 장치는 액세서리 형(예: 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용 형 장치(head-mounted-device(HMD)), 직물 또는 의류 일체형(예: 전자 의복), 신체 부착 형(예: 스킨 패드 또는 문신), 또는 생체 이식 형 회로 중 적어도 하나를 포함할 수 있다. 어떤 실시 예들에서, 전자 장치는, 예를 들면, 텔레비전, DVD(digital video disk) 플레이어, 오디오 장치, 오디오 액세서리 장치(예: 스피커, 헤드폰, 또는 헤드 셋), 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스, 홈 오토메이션 컨트롤 패널, 보안 컨트롤 패널, 게임 콘솔, 전자 사전, 전자 키, 캠코더, 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
다른 실시 예에서, 전자 장치는 네비게이션 장치, 위성 항법 시스템(GNSS(global navigation satellite system)), EDR(event data recorder)(예: 차량/선박/비행기 용 블랙박스(black box)), 자동차 인포테인먼트 장치(예: 차량용 헤드-업 디스플레이), 산업용 또는 가정용 로봇, 드론(drone), ATM(automated teller machine), POS(point of sales) 기기, 계측 기기(예: 수도, 전기, 또는 가스 계측 기기), 또는 사물 인터넷 장치(예: 전구, 스프링클러 장치, 화재 경보기, 온도 조절기, 또는 가로등) 중 적어도 하나를 포함할 수 있다. 본 문서의 실시 예에 따른 전자 장치는 전술한 기기들에 한정되지 않으며, 또한, 예를 들면, 개인의 생체 정보(예: 심박 또는 혈당)의 측정 기능이 구비된 스마트폰의 경우처럼, 복수의 장치들의 기능들을 복합적으로 제공할 수 있다. 본 문서에서, 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공지능 전자 장치)를 지칭할 수 있다.
도 1을 참조하여, 네트워크 환경(100)에서 전자 장치(101)는 근거리 무선 통신(198)을 통하여 전자 장치(102)와 통신하거나, 또는 네트워크(199)를 통하여 전자 장치(104) 또는 서버(108)와 통신할 수 있다. 일 실시 예에 따르면, 전자 장치(101)는 서버(108)을 통하여 전자 장치(104)와 통신할 수 있다.
일 실시 예에 따르면, 전자 장치(101)는 버스(110), 프로세서(120), 메모리(130), 입력 장치(150)(예: 마이크 또는 마우스), 표시 장치(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 및 배터리(189), 통신 모듈(190), 및 가입자 식별 모듈(196)을 포함할 수 있다. 어떤 실시 예에서는, 전자 장치(101)는 구성요소들 중 적어도 하나(예: 표시 장치(160) 또는 카메라 모듈(180))를 생략하거나 다른 구성요소를 추가적으로 구비할 수 있다.
버스(110)는, 구성요소들(120-190)을 서로 연결하고, 구성요소들 간의 신호(예: 제어 메시지 또는 데이터)를 전달하는 회로를 포함할 수 있다.
프로세서(120)는, 중앙처리장치(central processing unit, CPU), 어플리케이션 프로세서(application processor, AP), GPU(graphics processing unit), 카메라의 ISP(image signal processor), 또는 CP(communication processor) 중 하나 또는 그 이상을 포함할 수 있다. 일 실시 예에 따르면, 프로세서(120)는 SoC(system on chip) 또는 SiP(system in package)로 구현될 수 있다. 프로세서(120)는, 예를 들면, 운영 체제 또는 응용 프로그램을 구동하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)을 제어할 수 있고, 각종 데이터 처리 및 연산을 수행할 수 있다. 프로세서(120)는 다른 구성요소들(예: 통신 모듈(190)) 중 적어도 하나로부터 수신된 명령 또는 데이터를 휘발성 메모리(132)에 로드 하여 처리하고, 결과 데이터를 비 휘발성 메모리(134)에 저장할 수 있다.
메모리(130)는, 휘발성 메모리(132) 또는 비 휘발성 메모리(134)를 포함할 수 있다. 휘발성 메모리(132)는, 예를 들면, RAM(random access memory)(예: DRAM, SRAM, 또는 SDRAM)로 구성될 수 있다. 비 휘발성 메모리(134)는, 예를 들면, PROM(programmable read-only memory), OTPROM(one time PROM), EPROM(erasable PROM), EEPROM(electrically EPROM), mask ROM, flash ROM, 플래시 메모리, HDD(hard disk drive), 또는 SSD(solid state drive)로 구성될 수 있다. 또한, 비 휘발성 메모리(134)는, 전자 장치(101)와의 연결 형태에 따라, 그 안에 배치된 내장 메모리(136), 또는 필요 시에만 연결하여 사용 가능한 스탠드-얼론(stand-alone) 형태의 외장 메모리(138)로 구성될 수 있다. 외장 메모리(138)는 플래시 드라이브(flash drive), 예를 들면, CF(compact flash), SD(secure digital), Micro-SD, Mini-SD, xD(extreme digital), MMC(multi-media card), 또는 메모리 스틱을 포함할 수 있다. 외장 메모리(138)는 유선(예: 케이블 또는 USB(universal serial bus)) 또는 무선(예: Bluetooth)을 통하여 전자 장치(101)와 기능적으로 또는 물리적으로 연결될 수 있다.
메모리(130)는, 예를 들면, 전자 장치(101)의 적어도 하나의 다른 소프트웨어 구성요소, 예를 들어, 프로그램(140)에 관계된 명령 또는 데이터를 저장할 수 있다. 프로그램(140)은, 예를 들면, 커널(141), 라이브러리(143), 어플리케이션 프레임워크(145), 또는 어플리케이션 프로그램(interchangeably "어플리케이션")(147)을 포함할 수 있다.
일 실시 예에서, 메모리(130)는 이미지 및 이미지에서 얼굴 영역의 위치를 나타내는 얼굴 영역 좌표를 저장할 수 있다.
일 실시 예에서, 메모리(130)는 제1 피부색 분포(a first skin color distribution)를 저장할 수 있다. 일 실시 예에서, 제1 피부색 분포는 메모리(130)에 저장되지 않고, 외부 서버에 저장될 수 있다.
일 실시 예에 따르면, 제1 피부색 분포는 YUV 방식 또는 RGB 방식으로 표현된 데이터일 수 있다.
일 실시 예에 따르면, 제1 피부색 분포는 복수의 인종들에 대해, 인종과 연관 지어 저장된 적어도 하나의 피부색(예:피부색을 구성하는 색 성분)에 대한 분포일 수 있다. 제1 피부색 분포는 통계적으로 수집된 수치를 포함하는 다양한 방식의 데이터로 구성될 수 있으며, 가우시안 혼합 모델(gaussian mixture model)은 하나의 예시일 수 있다. 일 실시 예에서, 제1 피부색 분포는 얼굴 영역에 해당하는 제2 피부 확률 데이터를 획득하기 위해 프로세서(120)에 의해 사용될 수 있다.
일 실시 예에서, 메모리(130)는 얼굴 영역의 카테고리를 결정하기 위한 분류 데이터를 저장할 수 있다. 예를 들어, 분류 데이터는 인종 카테고리를 결정하기 위한 인종 별 피부색 분포 데이터, 얼굴의 형태에 따른 나이 데이터 또는 얼굴의 형태에 따른 성별 데이터 등을 포함할 수 있다. 다만, 분류 데이터는 예시된 것에 한정되지 않고, 피부색 또는 얼굴의 형태에 기반하여 카테고리를 결정하기 위한 적절한 데이터를 더 포함할 수 있다.
일 실시 예에서, 메모리(130)는 카테고리 별 보정 데이터를 저장할 수 있다. 예를 들어, 메모리(130)는 남자 카테고리에 대응하는 제1 보정 데이터와 여자 카테고리에 대응하는 제2 보정 데이터를 저장할 수 있고, 제1 보정 데이터 및 제2 보정 데이터는 서로 다를 수 있다. 다시 말해, 제1 보정 데이터에 기반하여 보정된 이미지와 제2 보정 데이터에 기반하여 보정된 이미지는 서로 다를 수 있다.
일 실시 예에 따르면, 보정 데이터는 밝기 보정 데이터, 텍스처 보정 데이터 또는 색차 보정 데이터 등을 포함할 수 있다. 보정 데이터는, 예를 들어, 룩업 테이블(look-up table) 형태일 수 있다.
입력 장치(150)는, 마이크, 마우스, 또는 키보드를 포함할 수 있다. 일 실시 예에 따르면, 키보드는 물리적인 키보드로 연결되거나, 표시 장치(160)를 통해 가상 키보드로 표시될 수 있다.
표시 장치(160)는, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 디스플레이는, 예를 들면, 액정 디스플레이(LCD), 발광 다이오드(LED) 디스플레이, 유기 발광 다이오드(OLED) 디스플레이, 마이크로 전자기계 시스템(MEMS) 디스플레이, 또는 전자 종이(electronic paper) 디스플레이를 포함할 수 있다. 디스플레이는, 일 실시 예에 따르면, 유연하게, 투명하게, 또는 착용할 수 있게 구현될 수 있다. 디스플레이는 사용자의 터치, 제스처, 근접, 또는 호버링(hovering) 입력을 감지할 수 터치 회로(touch circuitry) 또는 터치에 대한 압력의 세기를 측정할 수 있는 압력 센서(interchangeably "force sensor")를 포함할 수 있다. 상기 터치 회로 또는 압력 센서는 디스플레이와 일체형으로 구현되거나, 또는 디스플레이와는 별도의 하나 이상의 센서들로 구현될 수 있다. 홀로그램 장치는 빛의 간섭을 이용하여 입체 영상을 허공에 보여줄 수 있다. 프로젝터는 스크린에 빛을 투사하여 영상을 표시할 수 있다. 스크린은, 예를 들면, 전자 장치(101)의 내부 또는 외부에 위치할 수 있다.
오디오 모듈(170)은, 예를 들면, 소리와 전기 신호를 쌍방향으로 변환시킬 수 있다. 일 실시 예에 따르면, 오디오 모듈(170)은, 입력 장치(150)(예: 마이크)를 통해 소리를 획득하거나, 또는 전자 장치(101)에 포함된 출력 장치(미 도시)(예: 스피커 또는 리시버), 또는 전자 장치(101)와 연결된 외부 전자 장치(예: 전자 장치(102)(예: 무선 스피커 또는 무선 헤드폰) 또는 전자 장치(106)(예: 유선 스피커 또는 유선 헤드폰))를 통해 소리를 출력할 수 있다.
센서 모듈(176)은, 예를 들면, 전자 장치(101)의 내부의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 고도, 습도, 또는 밝기)를 계측 또는 감지하여, 그 계측 또는 감지된 상태 정보에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러(color) 센서(예: RGB(red, green, blue) 센서), IR(infrared) 센서, 생체 센서(예: 홍채 센서, 지문 센서, 또는 HRM(heartbeat rate monitoring) 센서, 후각(electronic nose) 센서, EMG(electromyography) 센서, EEG(Electroencephalogram) 센서, ECG(Electrocardiogram) 센서), 온도 센서, 습도 센서, 조도 센서, 또는 UV(ultra violet) 센서를 포함할 수 있다. 센서 모듈(176)은 그 안에 속한 적어도 하나 이상의 센서들을 제어하기 위한 제어 회로를 더 포함할 수 있다. 어떤 실시 예에서는, 전자 장치(101)는 프로세서(120) 또는 프로세서(120)와는 별도의 프로세서(예: 센서 허브)를 이용하여, 센서 모듈(176)을 제어할 수 있다. 별도의 프로세서(예: 센서 허브)를 이용하는 경우에, 전자 장치(101)는 프로세서(120)가 슬립(sleep) 상태에 있는 동안, 프로세서(120)를 깨우지 않고 별도의 프로세서의 작동에 의하여 센서 모듈(176)의 동작 또는 상태의 적어도 일부를 제어할 수 있다.
인터페이스(177)는, 일 실시 예에 따르면, HDMI(high definition multimedia interface), USB, 광 인터페이스(optical interface), RS-232(recommended standard 232), D-sub(D-subminiature), MHL(mobile high-definition link) 인터페이스, SD카드/MMC(multi-media card) 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다. 연결 단자(178)는 전자 장치(101)와 전자 장치(106)를 물리적으로 연결시킬 수 있다. 일 실시 예에 따르면, 연결 단자(178)는, 예를 들면, USB 커넥터, SD 카드/MMC 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.
햅틱 모듈(179)은 전기적 신호를 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 예를 들면, 햅틱 모듈(179)은 사용자에게 촉각 또는 운동 감각과 관련된 자극을 제공할 수 있다. 햅틱 모듈(179)은 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.
카메라 모듈(180)은, 예를 들면, 정지 영상 및 동영상을 촬영할 수 있다. 카메라 모듈(180)는, 일 실시 예에 따르면, 하나 이상의 렌즈(예: 광각 렌즈 및 망원 렌즈, 또는 전면 렌즈 및 후면 렌즈), 이미지 센서, 이미지 시그널 프로세서, 또는 플래시(예: 발광 다이오드 또는 제논 램프(xenon lamp) 등)를 포함할 수 있다.
전력 관리 모듈(188)은 전자 장치(101)의 전력을 관리하기 위한 모듈로서, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구성될 수 있다.
배터리(189)는, 예를 들면, 1차 전지, 2차 전지, 또는 연료 전지를 포함하여 외부 전원에 의해 재충전되어, 상기 전자 장치(101)의 적어도 하나의 구성 요소에 전력을 공급할 수 있다.
통신 모듈(190)은, 예를 들면, 전자 장치(101)와 외부 장치(예: 제1 외부 전자 장치(102), 제2 외부 전자 장치(104), 또는 서버(108)) 간의 통신 채널 수립 및 수립된 통신 채널을 통한 유선 또는 무선 통신의 수행을 지원할 수 있다. 일 실시 예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192) 또는 유선 통신 모듈(194)을포함하고, 그 중 해당하는 통신 모듈을 이용하여 제1 네트워크(198)(예: Bluetooth 또는 IrDA(infrared data association)와 같은 근거리 통신 네트워크) 또는 제2 네트워크(199)(예: 셀룰러 네트워크와 같은 원거리 통신 네트워크)를 통하여 외부 장치와 통신할 수 있다.
무선 통신 모듈(192)은, 예를 들면, 셀룰러 통신, 근거리 무선 통신, 또는 GNSS 통신을 지원할 수 있다. 셀룰러 통신은, 예를 들면, LTE(long-term evolution), LTE-A(LTE Advance), CDMA(code division multiple access), WCDMA(wideband CDMA), UMTS(universal mobile telecommunications system), WiBro(Wireless Broadband), 또는 GSM(Global System for Mobile Communications)을 포함할 수 있다. 근거리 무선 통신은, 예를 들면, Wi-Fi(wireless fidelity), Wi-Fi Direct, Li-Fi(light fidelity), Bluetooth, BLE(Bluetooth low energy), Zigbee, NFC(near field communication), MST(magnetic secure transmission), RF(radio frequency), 또는 BAN(body area network)을 포함할 수 있다. GNSS는, 예를 들면, GPS(Global Positioning System), Glonass(Global Navigation Satellite System), Beidou Navigation Satellite System(이하 "Beidou") 또는 Galileo(the European global satellite-based navigation system)을 포함할 수 있다. 본 문서에서 "GPS"는 "GNSS"와 상호 호환적으로 사용될 수 있다.
일 실시 예에 따르면, 상기 무선 통신 모듈(192)은, 셀룰러 통신을 지원하는 경우, 예를 들면, 가입자 식별 모듈(196)을 이용하여 통신 네트워크 내에서 전자 장치(101)의 구별 및 인증을 수행할 수 있다. 일 실시 예에 따르면, 무선 통신 모듈(192)은 프로세서(120)(예: AP)와 별개인 CP를 포함할 수 있다. 이런 경우, CP는, 예를 들면, 프로세서(120)가 인액티브(예: 슬립) 상태에 있는 동안 프로세서(120)를 대신하여, 또는 프로세서(120)가 액티브 상태에 있는 동안 프로세서(120)과 함께, 전자 장치(101)의 구성요소들(110-196) 중 적어도 하나의 구성 요소와 관련된 기능들의 적어도 일부 기능을 수행할 수 있다. 일 실시 예에 따르면, 무선 통신 모듈(192)은 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS 통신 모듈 중 해당하는 통신 방식만을 지원하는 복수의 통신 모듈들로 구성될 수 있다.
유선 통신 모듈(194)은, 예를 들면, LAN(local area network), 전력선 통신 또는 POTS(plain old telephone service)를 포함할 수 있다.
제1 네트워크(198)는, 예를 들어, 전자 장치(101)와 제1 외부 전자 장치(102)간의 무선으로 직접 연결을 통해 명령 또는 데이터를 송신 또는 수신 할 수 있는 Wi-Fi 다이렉트 또는 Bluetooth를 포함할 수 있다. 제2 네트워크(199)는, 예를 들어, 전자 장치(101)와 제2 외부 전자 장치(104)간의 명령 또는 데이터를 송신 또는 수신할 수 있는 텔레커뮤니케이션 네트워크(예: LAN(local area network)나 WAN(wide area network)와 같은 컴퓨터 네트워크, 인터넷(internet), 또는 텔레폰(telephone) 네트워크)를 포함할 수 있다.
다양한 실시 예들에 따르면, 상기 명령 또는 상기 데이터는 제2 네트워크에 연결된 서버(108)를 통해서 전자 장치(101)와 제2 외부 전자 장치(104)간에 송신 또는 수신될 수 있다. 제1 및 제2 외부 전자 장치(102, 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 다양한 실시 예들에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 다른 하나 또는 복수의 전자 장치(예: 전자 장치(102, 104), 또는 서버(108)에서 실행될 수 있다. 일 실시 예에 따르면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로 또는 요청에 의하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 그와 연관된 적어도 일부 기능을 다른 장치(예: 전자 장치(102, 104), 또는 서버(108))에게 요청할 수 있다. 다른 전자 장치(예: 전자 장치(102, 104), 또는 서버(108))는 요청된 기능 또는 추가 기능을 실행하고, 그 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 수신된 결과를 그대로 또는 추가적으로 처리하여 요청된 기능이나 서비스를 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다.
도 2는 일 실시 예에 따른 획득한 이미지를 보정하는 방법을 나타내는 흐름도이다.
동작 201에서, 전자 장치(101)의 프로세서(120)는 이미지로부터 얼굴 영역을 인식할 수 있다. 상기 이미지는 메모리(130)에 저장되어 있는 이미지거나, 카메라 모듈(180)을 통해 획득된, 또는 실시간으로 획득되고 있는 이미지일 수 있다. 일 실시 예에 따르면, 이미지는 복수의 외부 객체들을 포함할 수 있다.
일 실시 예에 따르면, 프로세서(120)는 PCA(principal component analysis), FDA(fisher discriminant analysis) 또는 ICA(independent component analysis) 등의 알고리즘을 이용하여 이미지로부터 얼굴 영역을 인식할 수도 있다. 또한, 프로세서(120)는 이미지에 대해 메모리(130)에 저장된 얼굴 좌표를 이용할 수도 있다.
일 실시 예에서, 프로세서(120)는 인식된 얼굴 영역에 기반하여 이미지 중 인식된 얼굴 영역을 포함하는 보정 대상 영역을 설정할 수 있다. 예를 들어, 얼굴 영역이 사각형 형태로 인식되면, 보정 대상 영역은 얼굴 영역보다 상하좌우 방향으로 기 설정된 픽셀만큼 확장된 영역일 수 있다. 다른 예로서, 얼굴 영역이 제1 직경을 갖는 원형으로 인식되는 경우, 보정 대상 영역은 제1 직경보다 큰 제2 직경을 갖는 원형으로 인식될 수 있다. 이는 예시적인 것이며, 얼굴 영역의 형태(shape)와 보정 대상 영역의 형태는 서로 다를 수도 있고, 이미지의 크기 및 이미지에서 얼굴 영역의 위치에 따라 보정 대상 영역은 달라질 수 있다. 일 실시 예에 따르면, 보정 대상 영역은 얼굴 외의 피부가 노출된 영역을 더 포함할 수 있다.
동작 202에서, 프로세서(120)는 제1 피부색 분포, 얼굴 영역의 제1 색 데이터(a first color data) 및 보정 대상 영역의 제2 색 데이터에 기반하여, 보정 대상 영역에 해당하는 제1 피부 확률 데이터를 확인할 수 있다. 제1 색 데이터는 얼굴 영역의 영역별 색 데이터를 포함할 수 있다. 예를 들어, 제1 색 데이터는 얼굴 영역에 포함된 각 픽셀 별 색 데이터를 포함할 수 있다. 제1 피부 확률 데이터는 보정 대상 영역에 포함된 각 영역별 색이 피부색일 확률을 의미할 수 있다. 다시 말해, 각 영역의 제1 피부 확률 데이터에 따른 확률 값은 각 영역의 색이 피부색에 대하여 유사한 정도를 의미할 수 있다.
일 실시 예에서, 프로세서(120)는 메모리(130)로부터 제1 피부색 분포를 전달받거나, 외부 서버로부터 제1 피부색 분포를 수신할 수 있다.
동작 203에서, 프로세서(120)는 얼굴 영역(402)의 제1 색 데이터에 기반하여 얼굴 영역(402)의 카테고리를 결정할 수 있다. 예를 들어, 프로세서(120)는 이미지에 기반하여 인종, 나이 또는 성별 중 적어도 하나를 카테고리의 적어도 일부로 결정할 수 있다. 다시 말해, 프로세서(120)는 카테고리는 인종에 해당하는 백인, 황인 및 흑인 카테고리, 나이에 해당하는 10대, 20대, 30대 및 40대 카테고리 또는 성별에 해당하는 남성 및 여성 카테고리 중 적어도 하나를 카테고리의 적어도 일부로 결정할 수 있다.
일 실시 예에서, 프로세서(120)는 메모리(130)에 저장된 분류 데이터를 이용하여 얼굴 영역(402)의 카테고리를 결정할 수 있다. 예를 들어, 프로세서(120)는 인종 별 피부색 분포 데이터를 이용하여 인종 별 피부색 분포 중 얼굴 영역(402)의 제1 피부색 분포와 유사도가 가장 높은 인종을 판별하고, 판별된 인종에 대응하는 카테고리를 결정할 수 있다.
동작 204에서, 프로세서(120)는 결정된 카테고리 및 제1 피부 확률 데이터에 기반하여, 보정 대상 영역의 색을 보정할 수 있다. 일 실시 예에서, 프로세서(120)는 메모리(130)에 저장된 카테고리 별 보정 데이터를 이용하여 보정 대상 영역의 색을 보정할 수 있다. 일 실시 예에 따르면, 카테고리 별 보정 데이터는 밝기 보정 데이터, 텍스처 보정 데이터 또는 색차 보정 데이터 등을 포함할 수 있다. 보정 데이터는, 예를 들어, 룩업 테이블(look-up table) 형태일 수 있다.
일 실시 예에서, 프로세서(120)는 보정 대상 영역의 밝기 정보, 텍스처(texture) 또는 색차 정보 중 적어도 하나를 보정할 수 있다. 예를 들어, 프로세서(120)는 보정 대상 영역의 각 픽셀의 YUV 방식으로 정의된 색 데이터를 보정할 수 있다. 프로세서(120)는 밝기 정보를 보정하기 위해 보정 데이터를 이용하여 각 픽셀의 Y 값을 보정할 수 있다. 또한, 프로세서(120)는 텍스처를 보정하기 위해 각 픽셀의 Y값을 각 픽셀과 주변 픽셀의 Y 값 평균 값으로 변환할 수 있다. 또한, 프로세서(120)는 색차 정보를 보정하기 위해 보정 데이터를 이용하여 각 픽셀의 U 값 및 V 값을 보정할 수 있다.
일 실시 예에 따르면, 전술된 바와 같이 보정 데이터는 카테고리 별로 다를 수 있으므로, 프로세서(120)가 동일한 Y 값, U 값 및 V 값을 가지는 픽셀을 서로 다른 보정 데이터를 이용하여 보정하는 경우, 보정 결과는 다를 수 있다. 예를 들어, 남자 카테고리에 대응하는 제1 보정 데이터를 이용하여 Y 값을 보정하는 경우, 프로세서(120)는 픽셀의 Y 값을 5만큼 증가시키는 보정을 할 수 있다. 다른 예로, 여자 카테고리에 대응하는 제2 보정 데이터를 이용하여 Y 값을 보정하는 경우, 프로세서(120)는 픽셀의 Y 값을 10만큼 증가시키는 보정을 할 수 있다.
일 실시 예에서, 프로세서(120)는 제1 피부 확률 데이터에 따른 확률 값에 따라 보정 대상 영역의 보정 정도를 결정할 수 있다. 일 실시 예에 따르면, 프로세서(120)는 보정 대상 영역이 보정되는 정도(level)가 제1 피부 확률 데이터에 따른 확률 값에 비례하도록 보정 대상 영역을 보정할 수 있다. 예를 들어, 프로세서(120)가 보정 데이터를 이용하여 픽셀의 Y 값을 5 만큼 증가시키는 보정을 할 때, 상기 픽셀에 대응하는 제1 피부 확률 데이터에 따른 확률 값이 0.8인 경우, 프로세서(120)는 상기 픽셀의 Y 값을 4 만큼 증가시킬 수 있다. 다른 예로, 상기 픽셀에 상기 픽셀에 대응하는 제1 피부 확률 데이터에 따른 확률 값이 0.4인 경우, 프로세서(120)는 상기 픽셀의 Y 값을 2 만큼 증가시킬 수 있다.
도 3은 일 실시 예에 따른 이미지에 얼굴 영역 및 보정 대상 영역이 표시된 도면이다.
일 실시 예에 따른 동작 201에서, 프로세서(120)는 도 3에 도시된 것과 같은 이미지(301)로부터 얼굴 영역(302)을 인식할 수 있다. 프로세서(120)는 인식된 얼굴 영역(302) 및 얼굴 외의 피부가 노출된 영역을 더 포함하는 보정 대상 영역(303)을 설정할 수 있다.
이하에서 도 4 내지 도 10을 참조하여 동작 202의 실시 예가 구체적으로 설명될 것이다.
도 4는 일 실시 예에 따른 제1 피부 확률 데이터를 획득하는 과정을 나타낸 도면이다. 도 5는 일 실시 예에 따른 인종별 피부색 분포에 해당하는 제1 피부색 분포를 색 공간상에 나타낸 도면이다. 도 6은 일 실시 예에 따른 이미지로부터 인식된 얼굴 영역을 나타내는 도면이다. 도 7은 일 실시 예에 따른 얼굴 영역에 해당하는 제2 피부 확률 데이터를 맵으로 나타낸 도면이다. 도 8은 일 실시 예에 따른 제2 피부색 분포를 색 공간 상에 나타낸 도면이다. 도 9는 일 실시 예에 따른 얼굴 영역을 포함하는 보정 대상 영역을 나타내는 도면이다. 도 10은 일 실시 예에 따른 제1 피부 확률 데이터를 맵으로 나타낸 도면이다.
먼저, 프로세서(120)는 제1 피부색 분포(401) 및 얼굴 영역(402)의 제1 색 데이터에 기반하여 얼굴 영역(402)에 해당하는 제2 피부 확률 데이터(403)를 획득할 수 있다.
일 실시 예에서, 제1 피부색 분포(401)는 피부색의 기준(reference) 색 데이터일 수 있다. 제1 피부색 분포(401)는 복수의 인종들에 대해, 인종과 연관 지어 저장된 적어도 하나의 피부색(예:피부색을 구성하는 색 성분)에 대한 분포일 수 있다. 제1 피부색 분포(401)는 통계적으로 수집된 수치를 포함하는 다양한 방식의 데이터로 구성될 수 있으며, 가우시안 혼합 모델은 하나의 예시일 수 있다. 제1 피부색 분포(401)는 YUV 방식으로 표현될 수 있다.
일 실시 예에서, 얼굴 영역(402)의 제1 색 데이터는 동작 201에서 인식된 얼굴 영역(402)에 포함된 각 영역별 색 데이터일 수 있다. 예를 들어, 얼굴 영역(402)의 제1 색 데이터는 얼굴 영역(402)에 포함된 각 픽셀 별 색 데이터일 수 있다. 얼굴 영역(402)의 제1 색 데이터에 포함된 색 데이터는 YUV 방식으로 표현될 수 있다. 본 문서에서는 설명의 편의 상 YUV 색 좌표계를 기준으로 설명하지만, RGB 혹은 적절한 다른 색 좌표계가 사용될 수도 있다.
일 실시 예에서, 제2 피부 확률 데이터(403)는 얼굴 영역(402)에 포함된 각 영역별 색이 피부색일 확률을 의미할 수 있다. 다시 말해, 상기 각 영역의 제2 피부 확률 데이터(403)에 따른 확률 값이 클수록 제1 피부색 분포(401)에 대한 유사도가 클 수 있다. 예를 들어, 제2 피부 확률 데이터(403)는 얼굴 영역(402)에 포함된 각 픽셀 별 확률 값을 포함할 수 있다. 각 픽셀의 색에 대응하는 Y값, U값 및 V값이 제1 피부색 분포(401)에 대응하는 Y값, U값 및 V값과 근접할수록 상기 각 픽셀의 확률 값은 높을 수 있다.
도 5 내지 도 7을 참조하여, 프로세서(120)가 각 픽셀의 색이 피부색일 확률 값을 나타내는 제2 피부 확률 데이터(403)를 생성하는 실시 예를 설명한다.
프로세서(120)는 도 6과 같은 얼굴 영역(402)에 포함된 각 픽셀의 색 데이터의 YUV 값 및 도 5와 같은 제1 피부색 분포(401)의 YUV 값의 유사도를 각 픽셀 별로 산출함으로써 제2 피부 확률 데이터(403)를 획득할 수 있다. 상기 유사도는 각 픽셀의 색이 피부색일 확률 값일 수 있다. 도 7은 제2 피부 확률 데이터가 맵 형태로 표현된 것이고, 도 7의 그림에서 각 픽셀은 밝을수록 높은 확률 값을 갖는다.
위의 예시에서 제2 피부 확률 데이터가 픽셀 별 확률 값의 분포로 정의되었으나, 제2 피부 확률 데이터는 복수의 픽셀을 포함하는 영역 별 확률 값의 분포로 정의될 수 있다.
다음으로, 프로세서(120)는 제2 피부 확률 데이터(403) 및 얼굴 영역(402)의 제1 색 데이터에 기반하여 제2 피부색 분포(404)를 생성할 수 있다. 제2 피부색 분포(404)는 보정 대상 영역에 해당하는 제1 피부 확률 데이터를 획득하기 위해 프로세서(120)에 의해 사용될 수 있다.
일 실시 예에서, 프로세서(120)는 얼굴 영역(402) 중 제2 피부 확률 데이터(403)에 따른 확률 값이 기 설정된 값 이상인 영역의 밝기 정보 또는 색차(chrominance) 정보 중 적어도 하나를 이용하여 제2 피부색 분포(404)를 생성할 수 있다. 밝기 정보는 Y 값, U 값 및 V 값 중 Y로 표현될 수 있고, 색차 정보는 U 값 및 V 값으로 표현될 수 있다. 예를 들어, 제2 피부 확률 데이터(403)의 확률 값은 0부터 1 사이의 값일 수 있고, 프로세서(120)는 확률 값이 0.7 이상인 픽셀의 색에 대응하는 Y값, U값 및 V값을 이용하여 제2 피부색 분포(404)를 생성할 수 있다. 다시 말해, 프로세서(120)는 기준 피부색 데이터인 제1 피부색 분포(401)에 근접한 색을 포함하는 영역의 색 데이터를 이용하여 제2 피부색 분포(404)를 생성할 수 있다. 이러한 제2 피부색 분포(404)는 얼굴 영역(402)의 제1 색 데이터에 기반하여 생성되므로 제1 피부색 분포(401)보다 개인화된 데이터이다.
도 6 및 도 7을 참조하여, 프로세서(120)가 얼굴 영역(402)의 제1 색 데이터에 따른 제2 피부색 분포(404)를 생성하는 실시 예를 설명한다.
프로세서(120)는 제2 피부 확률 데이터(403) 중 확률 값이 0.7이상인 픽셀의 색에 대응하는 Y값, U값 및 V값을 획득할 수 있다. 예를 들어, 프로세서(120)는 도 7과 같은 제2 피부 확률 데이터(403) 맵에서 밝은 영역, 즉 확률 값이 0.7이상인 영역에 포함된 픽셀의 색에 대응하는 Y값, U값 및 V값을 도 6과 같은 얼굴 영역(402)의 제1 색 데이터로부터 획득할 수 있다. 상기 획득된 복수의 픽셀의 색에 대응하는 Y값, U값 및 V값이 제2 피부색 분포(404)일 수 있고, 제2 피부색 분포(404)는 YUV 공간 상에 도 8과 같이 표현될 수 있다.
다음으로, 프로세서(120)는 제2 피부색 분포(404) 및 보정 대상 영역(405)의 제2 색 데이터에 기반하여 보정 대상 영역(405)의 제1 피부 확률 데이터(406)를 획득할 수 있다.
일 실시 예에서, 보정 대상 영역(405)의 제2 색 데이터는 보정 대상 영역(405)에 포함된 각 영역별 색 데이터일 수 있다. 예를 들어, 보정 대상 영역(405)의 제2 색 데이터는 보정 대상 영역(405)에 포함된 각 픽셀 별 색 데이터일 수 있다. 보정 대상 영역(405)의 제2 색 데이터에 포함된 색 데이터는 YUV 방식으로 표현될 수 있다.
일 실시 예에서, 제1 피부 확률 데이터(406)는 보정 대상 영역(405)에 포함된 각 영역별 색이 피부색일 확률을 의미할 수 있다. 다시 말해, 상기 각 영역의 제1 피부 확률 데이터(406)에 따른 확률 값이 클수록 제2 피부색 분포(404)에 대한 유사도가 클 수 있다. 예를 들어, 제1 피부 확률 데이터(406)는 보정 대상 영역(405)에 포함된 각 픽셀 별 확률 값을 포함할 수 있다. 각 픽셀의 색에 대응하는 Y값, U값 및 V값이 제2 피부색 분포(404)에 대응하는 Y값, U값 및 V값과 근접할수록 상기 각 픽셀의 확률 값은 높을 수 있다. 제1 피부 확률 데이터(406)는 제2 피부 확률 데이터(403)와 달리 제2 피부색 분포(404)에 기반하여 생성된다. 제1 피부 확률 데이터(406)는 개인화된 제2 피부색 분포(404)에 기반하므로, 제1 피부 확률 데이터(406)는 제2 피부 확률 데이터(403)보다 개인화된 확률 값들을 가질 수 있다.
도 8 내지 도 10을 참조하여, 프로세서(120)가 각 픽셀의 색이 피부색일 확률 값을 나타내는 제2 피부 확률 데이터(403)를 생성하는 실시 예를 설명한다.
프로세서(120)는 도 9와 같은 얼굴 영역(402)에 포함된 각 픽셀의 색 데이터의 YUV 값 및 도 8과 같은 제2 피부색 분포(404)의 YUV 값의 유사도를 각 픽셀 별로 산출함으로써 제1 피부 확률 데이터(406)를 획득할 수 있다. 상기 유사도는 각 픽셀의 색이 피부색일 확률 값일 수 있다. 도 10은 제1 피부 확률 데이터(406)가 맵 형태로 표현된 것이고, 도 10의 그림에서 각 픽셀은 밝을수록 높은 확률 값을 갖는다.
도 10을 참조하면 얼굴의 눈과 입이 위치한 영역은 피부에 해당하지 않으므로 어두운 색으로 표현되고, 볼과 이마가 위치한 영역은 피부에 해당하므로 밝은 색으로 표현된다.
이하에서 다시 도 5를 참조하여 동작 203의 실시 예가 구체적으로 설명될 것이다.
도 5는 일 실시 예에 따른 인종별 피부색 분포에 해당하는 제1 피부색 분포를 색 공간상에 나타낸 도면이다.
프로세서(120)는 도 5에 도시된 인종 별 피부색 분포 중 얼굴 영역의 제1 피부색 분포와 가장 유사한 인종의 피부색 분포를 판별하고 카테고리를 결정할 수 있다. 예를 들어, 얼굴 영역의 제1 피부색 분포와 가장 유사한 피부색 분포가 흑인의 피부색 분포인 경우, 프로세서(120)는 얼굴 영역의 카테고리를 흑인 카테고리로 결정할 수 있다.
일 실시 예에서, 프로세서(120)는 형태에 따른 나이 데이터 또는 얼굴의 형태에 따른 성별 데이터 등을 이용하고, 얼굴 영역의 제1 색 데이터 또는 얼굴 영역 내 얼굴의 형태 중 적어도 하나에 기반하여 나이 카테고리 또는 성별 카테고리를 결정할 수 있다.
이하에서 도 11 내지 도 14을 참조하여 동작 204의 실시 예가 구체적으로 설명될 것이다.
도 11 내지 도 14를 참조하여, 프로세서(120)가 제1 피부 확률 데이터에 따른 확률 값에 비례하여 보정 대상 영역을 보정하는 실시 예를 설명한다.
도 11 및 도 12는 일 실시 예에 따른 제1 피부 확률 데이터에 따라 픽셀의 밝기 정보가 보정되는 것을 나타낸 도면이다.
도 11 및 도 12의 실시 예에서 보정 데이터에 따른 밝기 정보 보정을 위한 Y 값 증가량은 5이고, 정중앙 픽셀(1101, 1102)에 대응하는 제1 피부 확률 데이터에 따른 확률 값은 0.8 이고, 우측 상단 픽셀(1201, 1202)에 대응하는 제1 피부 확률 데이터에 따른 확률 값은 0.4인 것을 전제로 한다.
일 실시 예에서, 프로세서(120)가 도 11의 좌측 그림에 도시된 정중앙 픽셀(1101)의 밝기 정보를 보정하는 경우, 프로세서(120)는 보정 데이터에 따른 Y 값 증가량 5에 제1 피부 확률 데이터에 따른 확률 값 0.8을 곱한 값인 4를 정중앙 픽셀(1101)의 Y 값에 더할 수 있다. 이에 따라, 정중앙 픽셀(1101)의 Y 값인 10은 도 11의 우측 그림에 도시된 정중앙 픽셀(1102)의 Y 값인 14로 변환될 수 있다.
일 실시 예에서, 프로세서(120)가 도 12의 좌측 그림에 도시된 우측 상단 픽셀(1201)의 Y 값을 보정하는 경우, 프로세서(120)는 보정 데이터에 따른 Y 값 증가량 5에 제1 피부 확률 데이터에 따른 확률 값 0.4을 곱한 값인 2를 우측 상단 픽셀 (1201)의 Y 값에 더할 수 있다. 이에 따라, 우측 상단 픽셀(1201)의 Y 값인 8은 도 12의 우측 그림에 도시된 우측 상단 픽셀(1202)의 Y 값인 10로 변환될 수 있다.
도 13은 일 실시 예에 따른 제1 피부 확률 데이터에 따라 텍스처가 보정되는 것을 나타낸 도면이다.
도 13의 실시 예에서, 프로세서(120)가 보정 데이터에 따라 텍스처를 보정하기 위해 Y값을 획득하는 주변 픽셀 개수는 8개인 것을 전제로 한다.
일 실시 예에서, 프로세서(120)가 도 13의 좌측 그림에 도시된 정중앙 픽셀(1301)의 텍스처를 보정하는 경우, 프로세서(120)는 정중앙 픽셀(1301)의 Y 값을 정중앙 픽셀(1301)의 Y 값인 14 및 정중앙 픽셀(1301)의 주변 픽셀의 Y값인 5, 7, 8, 9, 3, 4, 6 및 7의 평균 값인 7을 산출할 수 있다.
프로세서(120)는 정중앙 픽셀(1301)의 텍스처를 보정한 후, 순차적으로 정중앙 픽셀(1301)의 우측에 위치한 픽셀의 텍스처를 보정할 수 있다.
도 14는 일 실시 예에 따른 제1 피부 확률 데이터에 따라 색차 정보가 보정되는 것을 나타낸 도면이다.
도 14의 실시 예에서, 보정 데이터에 따른 휘도와 청색 간의 색차 정보 보정을 위한 U 값 감소량은 4이고, 정중앙 픽셀(1401, 1402)에 대응하는 제1 피부 확률 데이터에 따른 확률 값은 0.5 인 것을 전제로 한다.
일 실시 예에서, 프로세서(120)가 도 14의 좌측 그림에 도시된 정중앙 픽셀(1401)의 휘도와 청색 간의 색차 정보를 보정하는 경우, 프로세서(120)는 보정 데이터에 따른 U 값 감소량 4에 제1 피부 확률 데이터에 따른 확률 값 0.5를 곱한 값인 2를 정중앙 픽셀(1401)의 Y 값에서 뺄 수 있다. 이에 따라, 정중앙 픽셀(1401)의 U 값인 14는 도 14의 우측 그림에 도시된 정중앙 픽셀(1402)의 U 값인 12로 변환될 수 있다.
이하에서 도 15a 및 도 15b를 참조하여 일 실시 예에 따라 이미지가 보정된 결과가 설명될 것이다.
도 15a는 일 실시 예에 따라 백인 얼굴 영역과 흑인 얼굴 영역을 포함하는 원본 이미지이다. 도 15b는 일 실시 예에 따라 백인 얼굴 영역과 흑인 얼굴 영역을 포함하는 보정된 이미지이다.
일 실시 예에서, 도 15a 및 도 15b에 도시된 제1 사람(1501)과 제2 사람(1502)의 피부색은 다른 것을 전제로 한다.
도 15a 및 도 15b를 비교하면, 일 실시 예에 따른 이미지 보정에 의해 제1 사람(1501) 및 제2 사람(1502)의 피부 영역(1501a)의 밝기는 밝아질 수 있다. 다시 도 15a 및 도 15b를 비교하면, 피부 영역(1501a, 1502a)과는 달리, 피부가 아닌 입술 영역(1501b, 1502b)과 머리카락 영역(1501c, 1502c)의 밝기나 색은 변하지 않는다는 것을 확인할 수 있다. 다시 말해, 본 발명의 일 실시 예는 이미지에서 피부색을 보정하고, 피부가 아닌 다른 객체의 색은 보정하지 않을 수 있다.
또한, 본 발명의 일 실시 예에 따르면, 도 15a 및 도 15b에 나타난 것과 같이, 제1 사람(1501)의 피부 영역(1501a)의 밝기가 보정된 정도와 제2 사람(1502)의 피부 영역(1502a)의 밝기가 보정된 정도는 다를 수 있다. 동작 203에서, 프로세서(120)가 결정한 제1 사람(1501)에 해당하는 카테고리와 제2 사람(1502)에 해당하는 카테고리는 다를 수 있다. 동작 204에서 프로세서(120)에 의해 이용되는 제1 사람(1501)의 피부 영역(1501a) 및 제2 사람(1502)의 피부 영역(1501b)을 보정하기 위한 보정 데이터는 카테고리에 따라 다르고, 밝기가 보정되는 정도는 서로 다를 수 있다.
일 실시 예에 따르면, 동작 201에서 프로세서(120)는 얼굴 영역을 인식하지만, 프로세서(120)는 동작 202를 통해 획득된 제1 피부 확률 데이터를 이용하여 지정된 조건을 만족하는지 여부(예를 들어, 얼굴 영역이 실제로 얼굴을 포함하는지 여부)를 판단할 수 있다. 얼굴 영역이 지정된 조건을 만족하는 경우, 프로세서(120)는 보정 대상 영역을 보정하고, 얼굴 영역이 얼굴을 포함하지 않는 경우, 프로세서(120)는 보정 대상 영역을 보정하지 않을 수 있다. 다시 말해, 얼굴 영역이 얼굴을 포함하는지 판단함으로써, 얼굴 영역 인식의 정확도를 높일 수 있고, 얼굴이 포함되지 않은 영역에 대하여 동작 203 및 동작 204를 수행하지 않을 수 있다.
도 16은 일 실시 예에 따른 얼굴 영역이 실제로 얼굴을 포함하는지 여부를 판단하는 방법을 나타낸 흐름도이다.
동작 1601에서, 프로세서(120)는 얼굴 영역의 크기가 제1 임계값 보다 큰지 여부를 판단할 수 있다. 얼굴 영역의 크기가 제1 임계값보다 작은 경우, 프로세서(120)는 얼굴 영역이 지정된 조건을 만족하지 않는다고 판단하여 보정 대상 영역을 보정하지 않을 수 있다. 얼굴 영역의 크기가 제1 임계값보다 큰 경우, 프로세서(120)는 얼굴 영역이 지정된 조건을 만족한다고 판단하여 동작 1602를 수행할 수 있다.
동작 1602에서, 프로세서(120)는 제1 피부 확률 데이터에 따른 영역별 확률 값의 평균이 제2 임계 값 보다 큰지 여부를 판단할 수 있다. 예를 들어, 얼굴 영역 내 일정량(예: 지정된 개수, 지정된 넓이 등) 이상의 픽셀에 대응하는 제1 피부 확률 데이터에 따른 확률 값의 평균이 제2 임계값 보다 작은 경우, 프로세서(120)는 얼굴 영역이 지정된 조건을 만족하지 않는다고 판단하여 보정 대상 영역을 보정하지 않을 수 있다. 제1 피부 확률 데이터에 따른 확률 값의 평균이 제2 임계값 보다 작은 경우, 프로세서(120)는 얼굴 영역이 지정된 조건을 만족한다고 판단하여 동작 1603를 수행할 수 있다.
동작 1603에서, 프로세서(120)는 얼굴 영역에 포함된 특징점 간의 거리 비가 기 설정된 범위에 해당하는지 여부를 판단할 수 있다. 예를 들어, 얼굴 영역의 특징점은 얼굴의 눈, 코 또는 입과 같은 지점에 해당할 수 있다. 이러한 특징점 간의 거리 비가 일반적인 사람의 눈, 코 및 입 간의 거리 비의 범위에 해당하지 않는 경우, 해당 얼굴 영역은 얼굴을 포함하지 않는다고 볼 수 있다.
얼굴 영역에 포함된 특징점 간의 거리 비가 기 설정된 범위에 해당하지 않는 경우, 프로세서(120)는 얼굴 영역이 지정된 조건을 만족하지 않는다고 판단하여 보정 대상 영역을 보정하지 않을 수 있다. 얼굴 영역에 포함된 특징점 간의 거리 비가 기 설정된 범위에 해당하는 경우, 프로세서(120)는 얼굴 영역이 지정된 조건을 만족한다고 판단하여 동작 203을 수행할 수 있다.
일 실시 예에 따라, 상술한 동작 1601 내지 동작 1603 각각은 얼굴 영역이 실제로 얼굴을 포함하는지 여부를 판단하는 동작이다. 동작 1601 내지 동작 1603 각각은 병렬적으로 수행될 수 있고, 동작 1601 내지 동작 1603 중 일부만 수행될 수 있다.
본 문서의 다양한 실시 예들 및 이에 사용된 용어들은 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시 예의 다양한 변경, 균등물, 및/또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및/또는 B 중 적어도 하나", "A, B 또는 C" 또는 "A, B 및/또는 C 중 적어도 하나" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제1," "제2," "첫째," 또는 "둘째,"등의 표현들은 해당 구성요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 어떤(예: 제1) 구성요소가 다른(예: 제2) 구성요소에 "(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다.
본 문서에서, "~하도록 설정된(adapted to or configured to)"은 상황에 따라, 예를 들면, 하드웨어적 또는 소프트웨어적으로 "~에 적합한," "~하는 능력을 가지는," "~하도록 변경된," "~하도록 만들어진," "~를 할 수 있는," 또는 "~하도록 설계된"과 상호 호환적으로(interchangeably) 사용될 수 있다. 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 설정된 (또는 구성된) 프로세서"는 해당 동작들을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치(예: 메모리 130)에 저장된 하나 이상의 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(예: CPU 또는 AP)를 의미할 수 있다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어(firmware)로 구성된 유닛(unit)을 포함하며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. "모듈"은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. "모듈"은 기계적으로 또는 전자적으로 구현될 수 있으며, 예를 들면, 어떤 동작들을 수행하는, 알려졌거나 앞으로 개발될, ASIC(application-specific integrated circuit) 칩, FPGAs(field-programmable gate arrays), 또는 프로그램 가능 논리 장치를 포함할 수 있다.
다양한 실시 예들에 따른 장치(예: 모듈들 또는 그 기능들) 또는 방법(예: 동작들)의 적어도 일부는 프로그램 모듈의 형태로 컴퓨터로 판독 가능한 저장 매체(예: 메모리(130))에 저장된 명령어로 구현될 수 있다. 상기 명령어가 프로세서(예: 프로세서(120))에 의해 실행될 경우, 프로세서가 상기 명령어에 해당하는 기능을 수행할 수 있다. 컴퓨터로 판독 가능한 기록 매체는, 하드디스크, 플로피디스크, 마그네틱 매체(예: 자기테이프), 광기록 매체(예: CD-ROM, DVD, 자기-광 매체(예: 플롭티컬 디스크), 내장 메모리 등을 포함할 수 있다. 명령어는 컴파일러에 의해 만들어지는 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다.
다양한 실시 예들에 따른 구성 요소(예: 모듈 또는 프로그램 모듈) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소를 더 포함할 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램 모듈)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 다양한 실시 예들에 따른 모듈, 프로그램 모듈 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱(heuristic)하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
본 문서에 개시되는 일 실시 예에 따른 전자 장치는, 메모리 및 상기 메모리와 전기적으로 연결된 프로세서를 포함하고, 상기 프로세서는, 이미지로부터 얼굴 영역을 인식하고, 복수의 인종과 연관지어 저장된 피부색 분포를 포함하는 제1 피부색 분포, 상기 얼굴 영역의 제1 색 데이터 및 상기 이미지 중 상기 얼굴 영역을 포함하는 보정 대상 영역의 제2 색 데이터에 기반하여, 상기 보정 대상 영역에 해당하는 제1 피부 확률 데이터를 확인하고, 상기 얼굴 영역의 상기 제1 색 데이터에 기반하여 상기 얼굴 영역의 카테고리를 결정하고, 및 상기 결정된 카테고리 및 상기 제1 피부 확률 데이터에 기반하여, 상기 보정 대상 영역의 색을 보정하도록 설정될 수 있다.
일 실시 예에서,상기 프로세서는, 상기 제1 피부색 분포 및 상기 얼굴 영역의 상기 제1 색 데이터에 기반하여 상기 얼굴 영역에 해당하는 제2 피부 확률 데이터를 획득하고, 상기 제2 피부 확률 데이터 및 상기 얼굴 영역의 상기 제1 색 데이터에 기반하여 상기 제2 피부색 분포를 생성하고, 상기 제2 피부색 분포 및 상기 보정 대상 영역의 상기 제2 색 데이터에 기반하여 상기 보정 대상 영역의 상기 제1 피부 확률 데이터를 확인하도록 설정될 수 있다.
일 실시 예에서,상기 프로세서는, 상기 얼굴 영역 중 상기 제2 피부 확률 데이터에 따른 확률 값이 기 설정된 값 이상인 영역의 밝기 정보 또는 색차 정보 중 적어도 하나를 이용하여 상기 제2 피부색 분포를 생성하도록 설정될 수 있다.
일 실시 예에서,상기 프로세서는, 상기 제1 피부 확률 데이터에 따른 확률 값에 따라 상기 보정 대상 영역의 보정 정도(level)를 결정하도록 설정될 수 있다.
일 실시 예에서,상기 프로세서는, 상기 보정 대상 영역의 밝기 정보, 텍스처(texture) 또는 색차(Chrominance) 정보 중 적어도 하나를 보정하도록 설정될 수 있다.
일 실시 예에서,상기 프로세서는, 상기 이미지에 기반하여, 인종, 나이 또는 성별 중 적어도 하나를 상기 카테고리의 적어도 일부로 결정하도록 설정될 수 있다.
일 실시 예에서,상기 프로세서는, 상기 얼굴 영역 내 포함된 얼굴의 형태에 더 기반하여 상기 카테고리를 결정하도록 설정될 수 있다.
일 실시 예에서,상기 프로세서는, 상기 제1 피부 확률 데이터를 이용하여 상기 인식된 얼굴 영역이 지정된 조건을 만족하는지 여부를 판단하고, 상기 얼굴 영역이 상기 지정된 조건을 만족하는 경우, 상기 보정 대상 영역을 보정하고, 상기 얼굴 영역이 상기 지정된 조건을 만족하지 않는 경우, 상기 보정 대상 영역을 보정하지 않도록 설정될 수 있다.
일 실시 예에서,상기 프로세서는, 상기 얼굴 영역의 크기, 상기 제1 피부 확률 데이터에 따른 영역별 확률 값의 평균 또는 상기 얼굴 영역에 포함된 특징점들의 위치 중 적어도 하나에 기반하여 상기 지정된 조건을 만족하는지 여부를 판단하도록 설정될 수 있다.
일 실시 예에서,외부 장치와 통신하는 통신 모듈을 더 포함하고, 상기 프로세서는, 상기 통신 모듈을 이용하여 상기 외부 장치로부터 상기 제1 피부색 분포를 수신하도록 설정될 수 있다.
본 문서에 개시되는 일 실시 예에 따른 이미지를 보정하는 방법은 상기 이미지로부터 얼굴 영역을 인식하는 동작, 복수의 인종과 연관지어 저장된 피부색 분포를 포함하는 제1 피부색 분포, 상기 얼굴 영역의 제1 색 데이터 및 상기 이미지 중 상기 얼굴 영역을 포함하는 보정 대상 영역의 제2 색 데이터에 기반하여, 상기 보정 대상 영역에 해당하는 제1 피부 확률 데이터를 확인하는 동작, 상기 얼굴 영역의 상기 제1 색 데이터에 기반하여 상기 얼굴 영역의 카테고리를 결정하는 동작, 및 상기 결정된 카테고리에 및 상기 제1 피부 확률 데이터에 기반하여, 상기 보정 대상 영역의 색을 보정하는 동작을 수행하도록 할 수 있다.
일 실시 예에서,상기 제1 피부 확률 데이터를 확인하는 동작은, 상기 제1 피부색 분포 및 상기 얼굴 영역의 상기 제1 색 데이터에 기반하여 상기 얼굴 영역에 해당하는 제2 피부 확률 데이터를 획득하는 동작, 상기 제2 피부 확률 데이터 및 상기 얼굴 영역의 상기 제1 색 데이터에 기반하여 상기 제2 피부색 분포를 생성하는 동작, 및 상기 제2 피부색 분포 및 상기 보정 대상 영역의 상기 제2 색 데이터에 기반하여 상기 보정 대상 영역의 상기 제1 피부 확률 데이터를 확인하는 동작을 포함할 수 있다.
일 실시 예에서, 상기 제2 피부색 분포를 생성하는 동작은, 상기 얼굴 영역 중 상기 제2 피부 확률 데이터에 따른 확률 값이 기 설정된 값 이상인 영역의 밝기 정보 또는 색차 정보 중 적어도 하나를 이용하여 상기 제2 피부색 분포를 생성하는 동작을 포함할 수 있따.
일 실시 예에서,상기 보정 대상 영역의 색을 보정하는 동작은, 상기 제1 피부 확률 데이터에 따른 확률 값에 따라 상기 보정 대상 영역의 보정 정보를 결정하는 동작을 포함할 수 있다.
일 실시 예에서,상기 제1 피부 확률 데이터를 이용하여 상기 인식된 얼굴 영역이 지정된 조건을 만족하는지 여부를 판단하는 동작을 더 포함하고, 상기 얼굴 영역이 상기 지정된 조건을 만족하는 경우, 상기 보정 대상 영역을 보정하는 동작을 수행하고, 상기 얼굴 영역이 상기 지정된 조건을 만족하지 않는 경우, 상기 보정 대상 영역을 보정하는 동작을 수행하지 않을 수 있다.
본 문서에 개시되는 일 실시 예에 따른 전자 장치는,메모리; 및 프로세서를 포함하고, 상기 프로세서는, 복수의 외부 객체들에 대한 이미지를 획득하고, 상기 이미지에 기반하여, 상기 복수의 외부 객체들 중 얼굴에 대응하는 얼굴 영역을 인식하고, 상기 얼굴 영역에 대응하는 제1 피부색 데이터에 기반하여 상기 얼굴 영역의 적어도 일부에 대한 피부에 대응할 제1 확률을 결정하고, 상기 복수의 외부 객체들 중 상기 얼굴 및 상기 얼굴과 관련된 외부 객체를 포함하는 보정 대상 영역을 결정하고, 상기 제1 확률에 적어도 기반하여, 상기 보정 대상 영역의 적어도 일부에 대한 피부에 대응할 제2 확률을 결정하고, 및 상기 제2 확률이 제1 값에 대응하는 경우, 제1 정도로 상기 적어도 일부에 대한 보정을 수행하고, 및 상기 제2 확률이 제2 값에 대응하는 경우, 제2 정도로 상기 적어도 일부에 대한 보정을 수행하도록 설정될 수 있다.
일 실시 예에서,상기 프로세서는, 상기 제1 확률을 결정하는 동작의 적어도 일부로서, 상기 제1 피부색 데이터를 적어도 이용하여 상기 얼굴 영역에 대응하는 피부 유사도를 결정하고, 및 상기 피부 유사도를 적어도 이용하여 상기 제1 확률을 결정하도록 설정될 수 있다.
일 실시 예에서, 상기 프로세서는, 상기 보정을 수행하는 동작의 일부로서, 상기 적어도 일부의 밝기 정보, 텍스처 또는 색차 정보 중 적어도 하나를 보정하도록 설정될 수 있다.
일 실시 예에서,상기 프로세서는, 상기 이미지에 기반하여 인종, 나이 또는 성별 중 적어도 하나와 관련된 상기 얼굴 영역의 카테고리를 결정하고, 상기 결정된 카테고리에 기반하여, 상기 보정의 특성을 결정하도록 설정될 수 있다.
일 실시 예에서, 상기 프로세서는, 상기 제2 확률을 이용하여 상기 인식된 얼굴 영역이 지정된 조건을 만족하는지 여부를 판단하고, 상기 얼굴 영역이 상기 지정된 조건을 만족하는 경우, 상기 보정을 수행하고, 상기 얼굴 영역이 상기 지정된 조건을 만족하지 않는 경우, 상기 보정을 수행하지 않도록 설정될 수 있다.

Claims (20)

  1. 전자 장치에 있어서,
    메모리 및
    상기 메모리와 전기적으로 연결된 프로세서를 포함하고, 상기 프로세서는,
    이미지로부터 얼굴 영역을 인식하고,
    복수의 인종과 연관지어 저장된 피부색 분포를 포함하는 제1 피부색 분포 및 상기 얼굴 영역의 제1 색 데이터에 기반하여 상기 얼굴 영역에 해당하는 제2 피부 확률 데이터를 획득하고,
    상기 제2 피부 확률 데이터 및 상기 얼굴 영역의 상기 제1 색 데이터에 기반하여 제2 피부색 분포를 생성하고,
    상기 제2 피부색 분포 및 상기 이미지 중 상기 얼굴 영역을 포함하는 보정 대상 영역의 제2 색 데이터에 기반하여, 상기 보정 대상 영역에 해당하는 제1 피부 확률 데이터를 확인하고,
    상기 얼굴 영역의 상기 제1 색 데이터에 기반하여 상기 얼굴 영역의 카테고리를 결정하고, 및
    상기 결정된 카테고리 및 상기 제1 피부 확률 데이터에 기반하여, 상기 보정 대상 영역의 색을 보정하도록 설정된, 전자 장치.
  2. 삭제
  3. 청구항 1에 있어서,
    상기 프로세서는,
    상기 얼굴 영역 중 상기 제2 피부 확률 데이터에 따른 확률 값이 기 설정된 값 이상인 영역의 밝기 정보 또는 색차 정보 중 적어도 하나를 이용하여 상기 제2 피부색 분포를 생성하도록 설정된, 전자 장치.
  4. 청구항 1에 있어서,
    상기 프로세서는,
    상기 제1 피부 확률 데이터에 따른 확률 값에 따라 상기 보정 대상 영역의 보정 정도(level)를 결정하도록 설정된, 전자 장치.
  5. 청구항 1에 있어서,
    상기 프로세서는,
    상기 보정 대상 영역의 밝기 정보, 텍스처(texture) 또는 색차(Chrominance) 정보 중 적어도 하나를 보정하도록 설정된, 전자 장치.
  6. 청구항 1에 있어서,
    상기 프로세서는,
    상기 이미지에 기반하여, 인종, 나이 또는 성별 중 적어도 하나를 상기 카테고리의 적어도 일부로 결정하도록 설정된, 전자 장치.
  7. 청구항 6에 있어서,
    상기 프로세서는,
    상기 얼굴 영역 내 포함된 얼굴의 형태에 더 기반하여 상기 카테고리를 결정하도록 설정된, 전자 장치.
  8. 청구항 1에 있어서,
    상기 프로세서는,
    상기 제1 피부 확률 데이터를 이용하여 상기 인식된 얼굴 영역이 지정된 조건을 만족하는지 여부를 판단하고,
    상기 얼굴 영역이 상기 지정된 조건을 만족하는 경우, 상기 보정 대상 영역을 보정하고,
    상기 얼굴 영역이 상기 지정된 조건을 만족하지 않는 경우, 상기 보정 대상 영역을 보정하지 않도록 설정된, 전자 장치.
  9. 청구항 8에 있어서,
    상기 프로세서는,
    상기 얼굴 영역의 크기, 상기 제1 피부 확률 데이터에 따른 영역별 확률 값의 평균 또는 상기 얼굴 영역에 포함된 특징점들의 위치 중 적어도 하나에 기반하여 상기 지정된 조건을 만족하는지 여부를 판단하도록 설정된, 전자 장치.
  10. 청구항 1에 있어서,
    외부 장치와 통신하는 통신 모듈을 더 포함하고,
    상기 프로세서는,
    상기 통신 모듈을 이용하여 상기 외부 장치로부터 상기 제1 피부색 분포를 수신하도록 설정된, 전자 장치.
  11. 이미지를 보정하는 방법에 있어서,
    상기 이미지로부터 얼굴 영역을 인식하는 동작,
    복수의 인종과 연관지어 저장된 피부색 분포를 포함하는 제1 피부색 분포 및 상기 얼굴 영역의 제1 색 데이터에 기반하여 상기 얼굴 영역에 해당하는 제2 피부 확률 데이터를 획득하는 동작,
    상기 제2 피부 확률 데이터 및 상기 얼굴 영역의 상기 제1 색 데이터에 기반하여 제2 피부색 분포를 생성하는 동작,
    상기 제2 피부색 분포 및 상기 얼굴 영역의 제1 색 데이터 및 상기 이미지 중 상기 얼굴 영역을 포함하는 보정 대상 영역의 제2 색 데이터에 기반하여, 상기 보정 대상 영역에 해당하는 제1 피부 확률 데이터를 확인하는 동작,
    상기 얼굴 영역의 상기 제1 색 데이터에 기반하여 상기 얼굴 영역의 카테고리를 결정하는 동작, 및
    상기 결정된 카테고리에 및 상기 제1 피부 확률 데이터에 기반하여, 상기 보정 대상 영역의 색을 보정하는 동작을 수행하도록 하는, 방법.
  12. 삭제
  13. 청구항 11에 있어서,
    상기 제2 피부색 분포를 생성하는 동작은,
    상기 얼굴 영역 중 상기 제2 피부 확률 데이터에 따른 확률 값이 기 설정된 값 이상인 영역의 밝기 정보 또는 색차 정보 중 적어도 하나를 이용하여 상기 제2 피부색 분포를 생성하는 동작을 포함하는, 방법.
  14. 청구항 11에 있어서,
    상기 보정 대상 영역의 색을 보정하는 동작은,
    상기 제1 피부 확률 데이터에 따른 확률 값에 따라 상기 보정 대상 영역의 보정 정도를 결정하는 동작을 포함하는, 방법.
  15. 청구항 11에 있어서,
    상기 제1 피부 확률 데이터를 이용하여 상기 인식된 얼굴 영역이 지정된 조건을 만족하는지 여부를 판단하는 동작을 더 포함하고,
    상기 얼굴 영역이 상기 지정된 조건을 만족하는 경우, 상기 보정 대상 영역을 보정하는 동작을 수행하고,
    상기 얼굴 영역이 상기 지정된 조건을 만족하지 않는 경우, 상기 보정 대상 영역을 보정하는 동작을 수행하지 않는, 방법.
  16. 전자 장치에 있어서,
    메모리; 및
    프로세서를 포함하고,
    상기 프로세서는,
    복수의 외부 객체들에 대한 이미지를 획득하고,
    상기 이미지에 기반하여, 상기 복수의 외부 객체들 중 얼굴에 대응하는 얼굴 영역을 인식하고,
    상기 얼굴 영역에 대응하는 제1 피부색 데이터에 기반하여 상기 얼굴 영역의 적어도 일부에 대한 피부에 대응할 제1 확률을 결정하고,
    상기 복수의 외부 객체들 중 상기 얼굴 및 상기 얼굴과 관련된 외부 객체를 포함하는 보정 대상 영역을 결정하고,
    상기 제1 확률에 적어도 기반하여, 상기 보정 대상 영역의 적어도 일부에 대한 피부에 대응할 제2 확률을 결정하고, 및
    상기 제2 확률이 제1 값에 대응하는 경우, 제1 정도로 상기 적어도 일부에 대한 보정을 수행하고, 및 상기 제2 확률이 제2 값에 대응하는 경우, 제2 정도로 상기 적어도 일부에 대한 보정을 수행하도록 설정된, 전자 장치.
  17. 청구항 16에 있어서,
    상기 프로세서는,
    상기 제1 확률을 결정하는 동작의 적어도 일부로서, 상기 제1 피부색 데이터를 적어도 이용하여 상기 얼굴 영역에 대응하는 피부 유사도를 결정하고, 및
    상기 피부 유사도를 적어도 이용하여 상기 제1 확률을 결정하도록 설정된, 전자 장치.
  18. 청구항 16에 있어서,
    상기 프로세서는,
    상기 보정을 수행하는 동작의 일부로서, 상기 적어도 일부의 밝기 정보, 텍스처 또는 색차 정보 중 적어도 하나를 보정하도록 설정된, 전자 장치.
  19. 청구항 16에 있어서,
    상기 프로세서는,
    상기 이미지에 기반하여 인종, 나이 또는 성별 중 적어도 하나와 관련된 상기 얼굴 영역의 카테고리를 결정하고,
    상기 결정된 카테고리에 기반하여, 상기 보정의 특성을 결정하도록 설정된, 전자 장치.
  20. 청구항 16에 있어서,
    상기 프로세서는,
    상기 제2 확률을 이용하여 상기 인식된 얼굴 영역이 지정된 조건을 만족하는지 여부를 판단하고,
    상기 얼굴 영역이 상기 지정된 조건을 만족하는 경우, 상기 보정을 수행하고,
    상기 얼굴 영역이 상기 지정된 조건을 만족하지 않는 경우, 상기 보정을 수행하지 않도록 설정된, 전자 장치.
KR1020170037913A 2017-03-24 2017-03-24 피부에 해당하는 이미지 처리 영역을 보정하는 방법 및 전자 장치 KR102287109B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020170037913A KR102287109B1 (ko) 2017-03-24 2017-03-24 피부에 해당하는 이미지 처리 영역을 보정하는 방법 및 전자 장치
US16/495,678 US11263790B2 (en) 2017-03-24 2018-03-19 Method for correcting image processing region corresponding to skin and electronic device
PCT/KR2018/003168 WO2018174493A1 (ko) 2017-03-24 2018-03-19 피부에 해당하는 이미지 처리 영역을 보정하는 방법 및 전자 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170037913A KR102287109B1 (ko) 2017-03-24 2017-03-24 피부에 해당하는 이미지 처리 영역을 보정하는 방법 및 전자 장치

Publications (2)

Publication Number Publication Date
KR20180108322A KR20180108322A (ko) 2018-10-04
KR102287109B1 true KR102287109B1 (ko) 2021-08-06

Family

ID=63586390

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170037913A KR102287109B1 (ko) 2017-03-24 2017-03-24 피부에 해당하는 이미지 처리 영역을 보정하는 방법 및 전자 장치

Country Status (3)

Country Link
US (1) US11263790B2 (ko)
KR (1) KR102287109B1 (ko)
WO (1) WO2018174493A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109360254B (zh) * 2018-10-15 2023-04-18 Oppo广东移动通信有限公司 图像处理方法和装置、电子设备、计算机可读存储介质
KR102663537B1 (ko) 2019-01-31 2024-05-08 삼성전자 주식회사 전자 장치 및 이미지 처리 방법
CN110148121B (zh) * 2019-05-09 2022-11-22 腾讯科技(深圳)有限公司 一种皮肤图像处理方法、装置、电子设备及介质
WO2020231016A1 (en) 2019-05-16 2020-11-19 Samsung Electronics Co., Ltd. Image optimization method, apparatus, device and storage medium
CN112686965A (zh) * 2020-12-25 2021-04-20 百果园技术(新加坡)有限公司 一种肤色检测方法、装置、移动终端和存储介质
US11995743B2 (en) 2021-09-21 2024-05-28 Samsung Electronics Co., Ltd. Skin tone protection using a dual-core geometric skin tone model built in device-independent space
CN114842008B (zh) * 2022-07-04 2022-10-21 南通三信塑胶装备科技股份有限公司 基于计算机视觉的注塑件色差检测方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003281535A (ja) * 2002-03-22 2003-10-03 Seiko Epson Corp 画像処理装置および画像出力装置
JP2009200900A (ja) * 2008-02-22 2009-09-03 Nikon Corp 撮像装置
JP2014164656A (ja) * 2013-02-27 2014-09-08 Ricoh Co Ltd 画像処理方法およびプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7522769B2 (en) 2005-09-09 2009-04-21 Hewlett-Packard Development Company, L.P. Method and system for skin color estimation from an image
US7634108B2 (en) * 2006-02-14 2009-12-15 Microsoft Corp. Automated face enhancement
JP4362489B2 (ja) * 2006-03-29 2009-11-11 日本電気株式会社 3次元顔データ登録システム、3次元顔データ登録方法、及び登録処理プログラム
KR101743520B1 (ko) * 2011-04-09 2017-06-08 에스프린팅솔루션 주식회사 색상 변환 장치 및 그 방법
KR101343623B1 (ko) 2012-05-11 2013-12-19 주식회사 에스원 적응적 피부색 검출 방법, 그리고 이를 이용한 얼굴 검출 방법 및 그 장치
JP2014078808A (ja) * 2012-10-09 2014-05-01 Toshiba Corp 画像処理装置、画像処理方法
JP6683367B2 (ja) * 2015-03-30 2020-04-22 国立大学法人東北大学 生体情報計測装置、生体情報計測方法及び生体情報計測プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003281535A (ja) * 2002-03-22 2003-10-03 Seiko Epson Corp 画像処理装置および画像出力装置
JP2009200900A (ja) * 2008-02-22 2009-09-03 Nikon Corp 撮像装置
JP2014164656A (ja) * 2013-02-27 2014-09-08 Ricoh Co Ltd 画像処理方法およびプログラム

Also Published As

Publication number Publication date
US20200098145A1 (en) 2020-03-26
KR20180108322A (ko) 2018-10-04
WO2018174493A1 (ko) 2018-09-27
US11263790B2 (en) 2022-03-01

Similar Documents

Publication Publication Date Title
KR102333101B1 (ko) 관심 객체에 대한 외부 광원의 속성 정보를 제공하는 방법을 지원하는 전자 장치
KR102287109B1 (ko) 피부에 해당하는 이미지 처리 영역을 보정하는 방법 및 전자 장치
US10860850B2 (en) Method of recognition based on iris recognition and electronic device supporting the same
KR102314241B1 (ko) 적응적 인증 수행 방법 및 이를 지원하는 전자 장치
US11263469B2 (en) Electronic device for processing image and method for controlling the same
US20190318545A1 (en) Command displaying method and command displaying device
KR20200037687A (ko) 복수의 음성 인식 장치들을 제어하는 방법 및 그 방법을 지원하는 전자 장치
KR102419492B1 (ko) 전자 장치 및 전자 장치의 송신 전력 제어 방법
KR102636243B1 (ko) 이미지를 처리하기 위한 방법 및 그 전자 장치
KR102456020B1 (ko) 전자 문서에 서명을 포함시키기 위한 전자 장치 및 그 전자 장치의 제어 방법
US11314525B2 (en) Method for utilizing genetic information and electronic device thereof
KR20190130770A (ko) Vr/ar 콘텐트를 제공하는 전자 장치
US11335090B2 (en) Electronic device and method for providing function by using corneal image in electronic device
KR20190020578A (ko) 외부 광에 기반하여 이미지를 처리하는 방법 및 이를 지원하는 전자 장치
US20180330154A1 (en) Electronic device for determining position of user, and method of controlling said device
KR102389201B1 (ko) 전자 장치 및 전자 장치의 제어 방법
KR102457634B1 (ko) 외부 객체에 대응되는 기준 색상 정보를 이용하여 촬영된 이미지의 색온도를 보정하는 전자 장치 및 그 전자 장치의 제어 방법
KR20150099672A (ko) 전자 장치 및 그것의 디스플레이 제어 방법
CN116724548A (zh) 用于显示内容的电子装置及其操作方法
KR102539947B1 (ko) 사용자를 인식하는 전자 장치 및 그 전자 장치를 제어하는 방법
US20230262323A1 (en) Method and device for obtaining image of object
US20230122744A1 (en) Wearable electronic device adjusting transmittance of visor and brightness of display
KR20210100341A (ko) 깊이 정보에 기반한 이미지 보정 방법 및 장치
KR20190043018A (ko) 사용자 입력을 수신하여 동작을 수행하는 웨어러블 전자 장치 및 그 전자 장치의 제어 방법
CN115983758A (zh) 区域检查方法、介质及产品

Legal Events

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