KR20210048623A - Apparatus and method for estimating age using modified cycle-consistent adversarial networks - Google Patents

Apparatus and method for estimating age using modified cycle-consistent adversarial networks Download PDF

Info

Publication number
KR20210048623A
KR20210048623A KR1020190131912A KR20190131912A KR20210048623A KR 20210048623 A KR20210048623 A KR 20210048623A KR 1020190131912 A KR1020190131912 A KR 1020190131912A KR 20190131912 A KR20190131912 A KR 20190131912A KR 20210048623 A KR20210048623 A KR 20210048623A
Authority
KR
South Korea
Prior art keywords
age
image
original image
neural network
generating
Prior art date
Application number
KR1020190131912A
Other languages
Korean (ko)
Other versions
KR102259208B1 (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 KR1020190131912A priority Critical patent/KR102259208B1/en
Publication of KR20210048623A publication Critical patent/KR20210048623A/en
Application granted granted Critical
Publication of KR102259208B1 publication Critical patent/KR102259208B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/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
    • G06K9/00221
    • G06K9/42
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/32Normalisation of the pattern dimensions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Image Analysis (AREA)

Abstract

The present invention relates to an age estimation technique, and more particularly, to an age recognition technique using a modified cycle-generating adversarial neural network. According to one embodiment of the present invention, through the process of generating a transformed image even using an age estimation neural network which has learned a face image from one database, it is possible to increase the accuracy of age estimation for images in one database and other databases which have low relevance. An age estimation device includes a preprocessing unit, a transformation unit, and an age estimation unit.

Description

수정된 사이클 생성적 적대 신경망을 이용하는 나이 추정 장치 및 방법{APPARATUS AND METHOD FOR ESTIMATING AGE USING MODIFIED CYCLE-CONSISTENT ADVERSARIAL NETWORKS}A device and method for estimating age using a modified cycle-generated adversarial neural network {APPARATUS AND METHOD FOR ESTIMATING AGE USING MODIFIED CYCLE-CONSISTENT ADVERSARIAL NETWORKS}

본 발명은 나이 추정 기술에 관한 것으로, 보다 상세하게는 수정된 사이클 생성적 적대 신경망을 이용한 나이 인식 기술에 관한 것이다. The present invention relates to an age estimation technique, and more particularly, to an age recognition technique using a modified cycle-generated hostile neural network.

최근 얼굴 영상을 참조하여 사람의 나이를 실시간으로 추정하는 기술이 요구되고 있다. 나이 계층별 마케팅, 제품 수요 조사, 소비 동향 분석 등 다양한 분야에서 활발히 적용되고 있다. 또한, 딥 러닝 기술의 발전과 함께 최근 특징 기반(handcrafted feature-based) 방법보다는 컨볼루션 신경망(convolutional neural network, CNN)을 이용한 딥 특징 기반 나이 추정(deep feature-based age estimation) 기술에 관한 연구들이 많이 수행되고 있다. 일반적으로 나이 추정을 위한 얼굴 영상은 인종, 카메라 및 조명 등 대상 및 환경 변화에 따라 특성이 많이 다르다. 기존 대부분 딥 특징 기반 나이 추정 방법에서는 각 데이터베이스 별로 나이 추정기(age estimator)를 별도로 학습시켜서 사용한다. 따라서 학습되지 않은 이종의(heterogeneous) 얼굴 영상에 대해서는 인식 성능이 떨어지는 문제가 있다. 또한 이를 해결하기 위하여 이종의 데이터베이스들을 결합하여 함께 학습하는 과정을 수행한다고 하더라도, 학습시간이 오래 걸리고 데이터베이스내에 포함된 다양한 환경 변화요인들에 대한 충분한 학습이 어려워서 나이 추정기의 추정 성능이 저하되는 문제가 있다. Recently, a technology for estimating a person's age in real time by referring to a face image is required. It is actively applied in various fields such as marketing by age group, product demand survey, and consumption trend analysis. In addition, with the development of deep learning technology, recent studies on deep feature-based age estimation technology using a convolutional neural network (CNN) rather than a handcrafted feature-based method have been conducted. A lot is being practiced. In general, face images for age estimation have a lot of different characteristics according to changes in objects and environments such as race, camera, and lighting. In most existing deep feature-based age estimation methods, an age estimator is separately trained and used for each database. Therefore, there is a problem in that the recognition performance is deteriorated with respect to a heterogeneous face image that has not been learned. In addition, even if the process of learning together by combining heterogeneous databases to solve this problem, it takes a long time to learn and it is difficult to sufficiently learn about various environmental change factors included in the database, so that the estimation performance of the age estimator is degraded. have.

본 발명의 배경기술은 대한민국 등록특허공보 10-1786754호에 개시되어 있다.The background technology of the present invention is disclosed in Korean Patent Publication No. 10-1786754.

본 발명은 수정된 사이클 생성적 적대 신경망을 이용하여 일 데이터베이스의 얼굴 영상을 학습한 나이 추정 신경망을 이용하더라도 변환 영상을 생성하는 과정을 통해 일 데이터베이스와 연관성이 낮은 타 데이터베이스의 영상에 대한 나이 추정의 정확도를 높이는 나이 추정 장치 및 방법을 제공한다. The present invention uses a modified cycle-generated hostile neural network to estimate the age of an image of another database having a low correlation with the work database through the process of generating a transformed image even when using an age-estimating neural network that has learned a face image from a work database. It provides an age estimation apparatus and method that improves accuracy.

본 발명의 일 측면에 따르면, 나이추정 장치가 제공된다.According to an aspect of the present invention, an age estimation device is provided.

본 발명의 일 실시 예에 따른 나이 추정 장치는 입력 영상에 대한 전처리 과정을 수행하여 원본 영상을 생성하는 전처리부, 상기 원본 영상을 수정된 사이클 생성적 적대 신경망을 이용하여 변환 영상을 생성하는 변환부 및 상기 변환 영상에 대한 나이를 추정하는 나이 추정부를 포함할 수 있다. The age estimation apparatus according to an embodiment of the present invention includes a preprocessor for generating an original image by performing a preprocessing process on an input image, and a conversion unit for generating a transformed image using a modified cycle-generated hostile neural network for the original image. And an age estimating unit that estimates the age of the transformed image.

상기 나이 추정 장치는 상기 원본 영상의 나이와 상기 변환 영상의 나이 차이에 임계값 이상인 경우, 상기 원본 영상의 나이를 상기 입력 영상에 대한 나이로 출력하고, 상기 원본 영상의 나이와 상기 변환 영상의 나이 차이에 임계값 미만인 경우, 상기 변환 영상의 나이를 상기 입력 영상에 대한 나이로 출력하는 선정부를 더 포함하되, 상기 나이 추정부는 상기 원본 영상에 대한 나이를 추가로 추정할 수 있다.When the age difference between the age of the original image and the transformed image is equal to or greater than a threshold, the age estimating apparatus outputs the age of the original image as the age of the input image, and the age of the original image and the age of the transformed image If the difference is less than a threshold, the conversion image further includes a selection unit for outputting the age of the input image, the age estimating unit may further estimate the age of the original image.

상기 수정된 사이클 생성적 적대 신경망은 생성부 및 판별부를 포함하고, 상기 생성부는 일 데이터베이스의 영상과 타 데이터베이스의 영상에 대한 상기 생성부의 추가 출력인 특징 벡터 간의 거리에 따른 손실을 포함하는 손실 함수를 포함하여 학습되고, 상기 판별부는 상기 원본 영상과 상기 변환 영상에 대한 상기 판별부의 추가 출력에 대해 증가 함수를 적용한 추가적인 손실을 고려한 손실 함수를 사용하여 학습될 수 있다.The modified cycle-generated hostile neural network includes a generator and a discrimination unit, and the generator provides a loss function including a loss according to a distance between an image of one database and a feature vector that is an additional output of the generation unit for an image of another database. And the determination unit may be learned using a loss function in consideration of an additional loss obtained by applying an increase function to the additional output of the determination unit for the original image and the transformed image.

상기 생성부는 상기 변환 영상을 출력하는 레이어 및 상기 추가 출력을 출력하는 레이어를 포함하는 신경망이고, 상기 판별부는 원 출력을 출력하는 레이어 및 상기 추가 출력을 출력하는 레이어를 포함하는 신경망일 수 있다.The generation unit may be a neural network including a layer outputting the transformed image and a layer outputting the additional output, and the determining unit may be a neural network including a layer outputting the original output and a layer outputting the additional output.

상기 전처리부는 상기 입력 영상에서 얼굴 영역을 추출하고, 상기 얼굴 영역에서 양 눈의 중심 위치를 바탕으로 인플레인 로테이션 각도(in-plane rotation)를 산출하고, 상기 인플레이 로테이션 각도에 따라 상기 얼굴 영역을 회전하고, 상기 얼굴 영역의 크기를 정규화 하여 상기 원본 영상을 생성할 수 있다.The preprocessor extracts a face area from the input image, calculates an in-plane rotation based on the center position of both eyes in the face area, and rotates the face area according to the inplay rotation angle. Then, the original image may be generated by normalizing the size of the face region.

본 발명의 다른 측면에 따르면, 나이 추정 장치에서의 나이 추정 방법이 제공된다.According to another aspect of the present invention, an age estimation method in an age estimation apparatus is provided.

본 발명의 일 실시 예에 따른 나이 추정 방법은 입력 영상에 대한 전처리 과정을 수행하여 원본 영상을 생성하는 단계, 상기 원본 영상을 수정된 사이클 생성적 적대 신경망을 이용하여 변환 영상을 생성하는 단계 및 상기 변환 영상에 대한 나이를 추정하는 단계를 포함할 수 있다. The age estimation method according to an embodiment of the present invention includes generating an original image by performing a preprocessing process on an input image, generating a transformed image using a cycle-generating hostile neural network modified from the original image, and the It may include estimating the age of the transformed image.

상기 나이 추정 방법은 상기 원본 영상에 대한 나이를 추가로 추정하는 단계; 및 상기 원본 영상의 나이와 상기 변환 영상의 나이 차이에 임계값 이상인 경우, 상기 원본 영상의 나이를 상기 입력 영상에 대한 나이로 출력하고, 상기 원본 영상의 나이와 상기 변환 영상의 나이 차이에 임계값 미만인 경우, 상기 변환 영상의 나이를 상기 입력 영상에 대한 나이로 출력하는 단계를 더 포함할 수 있다.The age estimation method further includes estimating an age for the original image; And when the difference between the age of the original image and the age of the transformed image is greater than or equal to a threshold value, the age of the original image is output as the age of the input image, and a threshold value is applied to the age difference between the age of the original image and the transformed image. If it is less than, the step of outputting the age of the converted image as the age of the input image may further include.

상기 수정된 사이클 생성적 적대 신경망은 생성부 및 판별부를 포함하고, 상기 생성부는 일 데이터베이스의 영상과 타 데이터베이스의 영상에 대한 상기 생성부의 추가 출력인 특징 벡터 간의 거리에 따른 손실을 포함하는 손실 함수를 포함하여 학습되고, 상기 판별부는 상기 원본 영상과 상기 변환 영상에 대한 상기 판별부의 추가 출력에 대해 증가 함수를 적용한 추가적인 손실을 고려한 손실 함수를 사용하여 학습될 수 있다.The modified cycle-generated hostile neural network includes a generator and a discrimination unit, and the generator provides a loss function including a loss according to a distance between an image of one database and a feature vector that is an additional output of the generation unit for an image of another database. And the determination unit may be learned using a loss function in consideration of an additional loss obtained by applying an increase function to the additional output of the determination unit for the original image and the transformed image.

상기 생성부는 상기 변환 영상을 출력하는 레이어 및 상기 추가 출력을 출력하는 레이어를 포함하는 신경망이고, 상기 판별부는 원 출력을 출력하는 레이어 및 상기 추가 출력을 출력하는 레이어를 포함하는 신경망일 수 있다.The generation unit may be a neural network including a layer outputting the transformed image and a layer outputting the additional output, and the determining unit may be a neural network including a layer outputting the original output and a layer outputting the additional output.

상기입력 영상에 대한 전처리 과정을 수행하여 원본 영상을 생성하는 단계는, 상기 입력 영상에서 얼굴 영역을 추출하는 단계, 상기 얼굴 영역에서 양 눈의 중심 위치를 바탕으로 인플레인 로테이션 각도(in-plane rotation)를 산출하는 단계; 상기 인플레이 로테이션 각도에 따라 상기 얼굴 영역을 회전하는 단계 및 상기 얼굴 영역의 크기를 정규화 하여 상기 원본 영상을 생성하는 단계를 포함할 수 있다.The generating of the original image by performing a preprocessing process on the input image includes: extracting a face region from the input image, and an in-plane rotation angle based on the center positions of both eyes in the face region. Calculating ); It may include rotating the face region according to the in-play rotation angle, and generating the original image by normalizing the size of the face region.

본 발명의 또 다른 측면에 따르면, 상기 나이 추정 방법을 실행하고 컴퓨터가 판독 가능한 기록매체에 기록된 컴퓨터 프로그램이 제공된다.According to another aspect of the present invention, there is provided a computer program that executes the above age estimation method and is recorded on a computer-readable recording medium.

본 발명의 일 실시 예에 따르면, 일 데이터베이스의 얼굴 영상을 학습한 나이 추정 신경망을 이용하더라도 변환 영상을 생성하는 과정을 통해 일 데이터베이스와 연관성이 낮은 타 데이터베이스의 영상에 대한 나이 추정의 정확도를 높일 수 있다.According to an embodiment of the present invention, even if a neural network for estimating faces from one database is used, the accuracy of age estimation for an image of another database having a low correlation with the one database can be improved through the process of generating a transformed image. have.

또한, 본 발명의 일 실시 예에 따르면, 나이 추정 신경망의 학습을 하나의 스타일에 해당하는 데이터베이스의 영상만으로 학습시켜도 나이 추정을 정확하게 할 수 있어, 나이 추정 신경망의 학습에 필요한 비용을 줄일 수 있다.In addition, according to an embodiment of the present invention, even if the age estimation neural network is trained with only an image of a database corresponding to one style, age estimation can be accurately performed, thereby reducing the cost required for learning the age estimation neural network.

도 1은 본 발명의 일 실시 예에 따른 나이 추정 장치를 간략히 예시한 블록도.
도 2는 본 발명의 일 실시 예에 따른 나이 추정 장치가 수행하는 전처리 과정을 예시한 도면.
도 3은 본 발명의 일 실시 예에 따른 나이 추정 장치의 수정된 사이클 생성적 적대 신경망의 생성부를 예시한 도면.
도 4는 본 발명의 일 실시 예에 따른 나이 추정 장치의 수정된 사이클 생성적 적대 신경망의 생성부의 구조를 예시한 테이블.
도 5는 본 발명의 일 실시 예에 따른 나이 추정 장치의 수정된 사이클 생성적 절대 신경망의 생성부의 손실 함수를 설명하기 위한 도면.
도 6은 본 발명의 일 실시 예에 따른 나이 추정 장치의 수정된 사이클 생성적 적대 신경망의 판별부의 구조를 예시한 도면.
도 7은 본 발명의 일 실시 예에 따른 나이 추정 장치의 수정된 사이클 생성적 적대 신경망의 판별부의 구조를 예시한 테이블.
도 8은 본 발명의 일 실시 예에 따른 나이 추정 장치의 수정된 사이클 생성적 절대 신경망의 생성부의 손실 함수를 설명하기 위한 도면.
도 9는 본 발명의 일 실시 예에 따른 나이 추정 장치의 나이 추정 신경망의 구조를 예시한 도면.
도 10은 본 발명의 일 실시 예에 따른 나이 추정 장치가 원본 영상과 변환 영상의 나이를 비교하는 과정을 예시한 도면.
도 11은 본 발명의 일 실시 예에 따른 나이 추정 장치에 입력된 원본 영상과 나이 추정 장치가 생성한 변환 영상을 예시한 도면.
도 12는 본 발명의 일 실시 예에 따른 나이 추정 장치가 나이를 추정하는 방법을 예시한 순서도.
도 13은 나이 추정 신경망을 이용한 두 데이터베이스의 얼굴 영상에 대한 나이 추정의 정확도를 예시한 표.
도 14는 본 발명의 일 실시 예에 따른 나이 추정 장치가 두 데이터베이스의 얼굴 영상에 대한 나이 추정한 경우의 정확도를 예시한 표.
1 is a block diagram schematically illustrating an age estimation apparatus according to an embodiment of the present invention.
2 is a diagram illustrating a preprocessing process performed by an age estimation apparatus according to an embodiment of the present invention.
3 is a diagram illustrating a generation unit of a modified cycle-generating hostile neural network of an age estimation apparatus according to an embodiment of the present invention.
4 is a table illustrating the structure of a generation unit of a modified cycle-generating hostile neural network of an age estimation apparatus according to an embodiment of the present invention.
5 is a diagram for explaining a loss function of a generator of a modified cycle-generated absolute neural network of an age estimation apparatus according to an embodiment of the present invention.
6 is a diagram illustrating a structure of a determination unit of a modified cycle-generating hostile neural network of an age estimation apparatus according to an embodiment of the present invention.
7 is a table illustrating the structure of a discriminator of a modified cycle-generating hostile neural network of an age estimation apparatus according to an embodiment of the present invention.
8 is a diagram for explaining a loss function of a generator of a modified cycle-generating absolute neural network of an age estimation apparatus according to an embodiment of the present invention.
9 is a diagram illustrating the structure of an age estimating neural network of an age estimating apparatus according to an embodiment of the present invention.
10 is a diagram illustrating a process of comparing the age of an original image and a transformed image by an age estimation apparatus according to an embodiment of the present invention.
11 is a diagram illustrating an original image input to an age estimating device and a transformed image generated by the age estimating device according to an embodiment of the present invention.
12 is a flowchart illustrating a method of estimating age by an age estimating apparatus according to an embodiment of the present invention.
13 is a table illustrating the accuracy of age estimation for face images of two databases using an age estimation neural network.
14 is a table illustrating accuracy when the age estimation apparatus estimates age for face images of two databases according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시 예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 이를 상세한 설명을 통해 상세히 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서 및 청구항에서 사용되는 단수 표현은, 달리 언급하지 않는 한 일반적으로 "하나 이상"을 의미하는 것으로 해석되어야 한다.In the present invention, various modifications may be made and various embodiments may be provided. Specific embodiments are illustrated in the drawings and will be described in detail through detailed description. However, this is not intended to limit the present invention to a specific embodiment, it should be understood to include all changes, equivalents, and substitutes included in the spirit and scope of the present invention. In describing the present invention, when it is determined that a detailed description of a related known technology may unnecessarily obscure the subject matter of the present invention, a detailed description thereof will be omitted. In addition, the singular expressions used in the specification and claims are to be construed as meaning "one or more" in general, unless otherwise stated.

이하, 본 발명의 바람직한 실시 예를 첨부도면을 참조하여 상세히 설명하기로 하며, 첨부 도면을 참조하여 설명함에 있어, 동일하거나 대응하는 구성 요소는 동일한 도면번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings, and in the description with reference to the accompanying drawings, the same or corresponding components are assigned the same reference numbers, and redundant descriptions thereof will be omitted. It should be.

도 1은 본 발명의 일 실시 예에 따른 나이 추정 장치를 간략히 예시한 블록도 이고, 도 2는 본 발명의 일 실시 예에 따른 나이 추정 장치가 수행하는 전처리 과정을 예시한 도면이고, 도 3은 본 발명의 일 실시 예에 따른 나이 추정 장치의 수정된 사이클 생성적 적대 신경망의 생성부를 예시한 도면이고, 도 4는 본 발명의 일 실시 예에 따른 나이 추정 장치의 수정된 사이클 생성적 적대 신경망의 생성부의 구조를 예시한 테이블이고, 도 5는 본 발명의 일 실시 예에 따른 나이 추정 장치의 수정된 사이클 생성적 절대 신경망의 생성부의 손실 함수를 설명하기 위한 도면이고, 도 6은 본 발명의 일 실시 예에 따른 나이 추정 장치의 수정된 사이클 생성적 적대 신경망의 판별부의 구조를 예시한 도면이고, 도 7은 본 발명의 일 실시 예에 따른 나이 추정 장치의 수정된 사이클 생성적 적대 신경망의 판별부의 구조를 예시한 테이블이고, 도 8은 본 발명의 일 실시 예에 따른 나이 추정 장치의 수정된 사이클 생성적 절대 신경망의 생성부의 손실 함수를 설명하기 위한 도면이고, 도 9는 본 발명의 일 실시 예에 따른 나이 추정 장치의 나이 추정 신경망의 구조를 예시한 도면이고, 도 10은 본 발명의 일 실시 예에 따른 나이 추정 장치가 원본 영상과 변환 영상의 나이를 비교하는 과정을 예시한 도면이다.1 is a block diagram schematically illustrating an age estimating apparatus according to an embodiment of the present invention, and FIG. 2 is a diagram illustrating a preprocessing process performed by an age estimating apparatus according to an embodiment of the present invention, and FIG. 3 is A diagram illustrating a generation unit of a modified cycle-generated hostile neural network of an age estimating apparatus according to an embodiment of the present invention, and FIG. 4 is a diagram illustrating a modified cycle-generating hostile neural network of the age estimating apparatus according to an embodiment of the present invention. A table illustrating the structure of a generator, and FIG. 5 is a diagram for explaining a loss function of a generator of a modified cycle-generated absolute neural network of an age estimation apparatus according to an embodiment of the present invention, and FIG. 6 is an embodiment of the present invention. A diagram illustrating a structure of a determination unit of a modified cycle-generated hostile neural network of an age estimation apparatus according to an embodiment, and FIG. 7 is a diagram illustrating a determination unit of a modified cycle-generating hostile neural network of an age estimating apparatus according to an embodiment of the present invention. A table illustrating the structure, and FIG. 8 is a diagram for explaining a loss function of a generator of a modified cycle-generated absolute neural network of an age estimation apparatus according to an embodiment of the present invention, and FIG. 9 is an embodiment of the present invention. FIG. 10 is a diagram illustrating a structure of an age estimating neural network of an age estimating apparatus according to FIG. 10, and FIG. 10 is a diagram illustrating a process of comparing ages of an original image and a transformed image by the age estimating apparatus according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일 실시 예에 따른 나이 추정 장치는 전처리부(110), 변환부(120), 나이 추정부(130) 및 선정부(140)를 포함한다.Referring to FIG. 1, an age estimation apparatus according to an embodiment of the present invention includes a preprocessor 110, a conversion unit 120, an age estimation unit 130, and a selection unit 140.

전처리부(110)는 나이 추정의 대상이 되는 사람이 촬영된 입력 영상을 입력 받고, 입력 영상에 대한 전처리를 수행한다. 전처리부(110)는 입력 영상에서 얼굴 영역을 추출한다. 이 때, 전처리부(110)는 dlib facial box detector를 이용하여 입력 영상에서 얼굴 영역을 추출할 수 있다. 전처리부(110)는 하기의 수학식 1과 같이 추출한 얼굴 영역에서 양 눈의 중심 위치를 바탕으로 인플레인 로테이션 각도(in-plane rotation)를 산출하고, 인플레이 로테이션 각도에 따라 얼굴 영역을 회전하고, 얼굴 영역의 크기를 정규화 하여 원본 영상을 생성한다. The preprocessor 110 receives an input image photographed by a person subject to age estimation, and performs preprocessing on the input image. The preprocessor 110 extracts a face area from the input image. In this case, the preprocessor 110 may extract a face area from the input image using a dlib facial box detector. The preprocessor 110 calculates an in-plane rotation based on the center positions of both eyes in the facial area extracted as in Equation 1 below, and rotates the face area according to the inplay rotation angle, The original image is generated by normalizing the size of the face area.

Figure pat00001
Figure pat00001

이 때, (

Figure pat00002
)는 오른쪽 눈의 중심좌표이고, (
Figure pat00003
)는 왼쪽 눈의 중심좌표를 나타낸다. 전처리부(110)는 계산된
Figure pat00004
를 바탕으로 얼굴 영역의 너비 및 높이를 재설정하여, 얼굴 영역의 전처리를 수행한다.At this time, (
Figure pat00002
) Is the center coordinate of the right eye, and (
Figure pat00003
) Represents the central coordinate of the left eye. The preprocessor 110 is calculated
Figure pat00004
Based on, the width and height of the face area are reset, and pre-processing of the face area is performed.

예를 들어, 전처리부(110)는 도 2와 같이 얼굴 영역을 추출하고, 회전 및 정규화 하는 전처리 과정을 수행할 수 있다. 전처리부(110)는 원본 영상을 변환부(120)로 전송한다.For example, the preprocessor 110 may perform a preprocessing process of extracting, rotating, and normalizing a face region as shown in FIG. 2. The preprocessor 110 transmits the original image to the conversion unit 120.

변환부(120)는 수정된 사이클 생성적 적대 신경망(MODIFIED CYCLE-CONSISTENT ADVERSARIAL NETWORKS)를 이용하여 원본 영상을 변환 영상으로 변환한다. 이 때, 수정된 사이클 생성적 적대 신경망은 연관성 없는 두 그룹(예를 들어, A 그룹 및 B 그룹)의 영상을 통해 학습하고, A 그룹의 영상을 B 그룹에 매칭되는 영상을 생성하는 신경망일 수 있다.The conversion unit 120 converts the original image into a transformed image using a modified cycle-generating adversarial network (MODIFIED CYCLE-CONSISTENT ADVERSARIAL NETWORKS). At this time, the modified cycle-generating hostile neural network may be a neural network that learns through images of two unrelated groups (for example, group A and group B) and generates an image matching the image of group A to group B. have.

이 때, 일반적인 사이클 생성적 적대 신경망은 두 집합의 데이터가 가시적으로 확연히 다르면 학습이 정상적으로 진행되지 않는다. 본 발명의 일 실시 예에 따른 수정된 사이클 생성적 적대 신경망은 복수의 레지듀얼(residual) 블럭을 사용하여 두 개의 출력을 생성하는 생성부(generator) 및 판별부(discriminator)를 포함한다.At this time, in a general cycle-generating hostile neural network, if the two sets of data are clearly different from each other, learning does not proceed normally. The modified cycle-generating hostile neural network according to an embodiment of the present invention includes a generator and a discriminator that generate two outputs using a plurality of residual blocks.

도 3을 참조하면, 생성부는 인코더(encoder) 및 디코더(decoder)를 포함한다. 일반적인 사이클 생성적 적대 신경망의 인코더는 특징 차원(feature dimension)을 축소하여 유용한 특징 값들을 찾는 기능을 수행하나, 신경망을 기반의 구조이기 때문에 이미지를 생성하는 것에 대한 학습이 어려운 점이 있다. 본 발명의 일 실시 예에 따른 수정된 사이클 생성적 적대 신경망의 인코더는 N개의 추가적인 특징 벡터(이하 추가 출력이라 지칭)을 생성한다. 즉, 도 4에서 예시한 바와 같이 인코더는 9개의 레지듀얼 블록 이후 The 1st output(Flatten) 레이어(제1 출력 레이어라 지칭)에서 추가 출력을 출력하고, final output 레이어(제2 출력 레이어라 지칭)에서 변환 영상인 출력(원 출력이라 지칭)을 생성할 수 있다. 제1 출력 레이어 이후에는 2개의 디컨볼루션(deconveolution) 레이어가 위치할 수 있다. Referring to FIG. 3, the generation unit includes an encoder and a decoder. The encoder of a general cycle-generating hostile neural network performs a function of finding useful feature values by reducing the feature dimension, but it is difficult to learn about generating an image because it is a structure based on a neural network. The encoder of the modified cycle-generating hostile neural network according to an embodiment of the present invention generates N additional feature vectors (hereinafter referred to as additional outputs). That is, as illustrated in FIG. 4, the encoder outputs an additional output from the 1st output (Flatten) layer (referred to as the first output layer) after 9 residual blocks, and a final output layer (referred to as the second output layer). An output (referred to as the original output) that is a converted image can be generated at Two deconveolution layers may be located after the first output layer.

이 때, 변환부(120)는 상술한 구조의 4개의 독립된 생성부를 포함한다. 각 생성부는 웨이트(weight) 파라미터를 공유하지 않고 독립적으로 학습될 수 있다. 예를 들어, 예를 들어

Figure pat00005
(A는 입력 영상, B는 참조 영상)로 학습을 진행 할 때는 두 개의 generator 모델이 사용되고,
Figure pat00006
(B는 입력 영상, A는 참조 영상)로 학습을 진행 할 때도 위와 마찬가지로 두 개의 generator 모델이 사용될 수 있다.In this case, the conversion unit 120 includes four independent generation units of the above-described structure. Each generation unit may be independently learned without sharing a weight parameter. For example, for example
Figure pat00005
(A is an input image, B is a reference image) when learning is performed, two generator models are used,
Figure pat00006
(B is an input image, A is a reference image), as in the above, two generator models can be used.

이 때, 생성부는 4개의 생성부는 각각 수행하는 일(task)이 다르기 때문에 각각 손실(loss)를 포함한다. 하기의 수학식 2는

Figure pat00007
의 학습을 진행할 때 손실 함수(loss function)을 나타낸다.In this case, the generation unit includes a loss because each of the four generation units performs different tasks. Equation 2 below is
Figure pat00007
Represents a loss function when learning is performed.

Figure pat00008
Figure pat00008

Figure pat00009
는 A 를 입력으로 받아 generator에서 생성된 이미지를 나타낸다.
Figure pat00009
Represents the image generated by the generator by receiving A as an input.

이 때, 생성부는 log likelihood를 최대화(maximize)하는 방식이 아닌 하기의 수학식 3과 같이 least-squares loss 방식을 사용하여 log likelihood를 최소화(minimize)하는 방향으로 학습을 진행할 수 있다.In this case, the generation unit may perform learning in a direction of minimizing log likelihood by using a least-squares loss method as shown in Equation 3 below, rather than a method of maximizing log likelihood.

Figure pat00010
Figure pat00010

이 때, 두 개의 생성부는

Figure pat00011
의 과정에서 인코더의 후단에서 제1 출력을 생성하고, 제1 출력 간의 거리 값에 대한 감소 함수를 적용하는 손실 함수를 수행할 수 있다. 이상적인 사이클 생성적 적대 신경망은
Figure pat00012
로 진행이 되면 두 번째 생성부의 출력이 원래의 A입력과 같아지는 것이다. 하지만, 실제로 학습을 하면 두 번째 생성부의 출력은 원래의 A와는 다른 출력이 된다. 본 발명의 일 실시 예에 따른 생성부는
Figure pat00013
의 과정 중
Figure pat00014
의 경우와
Figure pat00015
가 완벽하게 변환되도록 각각의 생성자의 제1 출력 레이어에서 출력된 특징 벡터들의 거리를 산출한다. 즉, 수학식 4 및 도 5와 같이 생성부는 A를 입력 받은 생성부의 인코더 끝 부분에 출력된 특징 벡터와 B를 입력 받은 생성부의 인코더 끝 부분에 출력된 특징 벡터 사이의 거리가 가까워 지도록 학습을 한다. At this time, the two generating units
Figure pat00011
In the process of, a loss function of generating a first output at a rear end of the encoder and applying a reduction function to a distance value between the first outputs may be performed. The ideal cycle-generated hostile neural network is
Figure pat00012
When progressing to, the output of the second generation unit becomes the same as the original A input. However, when actually learning, the output of the second generation unit becomes a different output from the original A. The generator according to an embodiment of the present invention
Figure pat00013
In the process of
Figure pat00014
With the case of
Figure pat00015
The distances of the feature vectors output from the first output layer of each generator are calculated to be completely transformed. That is, as shown in Equations 4 and 5, the generation unit learns so that the distance between the feature vector output to the end of the encoder of the generator receiving A and the feature vector output to the end of the encoder receiving B becomes close. .

Figure pat00016
Figure pat00016

이 때,

Figure pat00017
는 A를 입력 받은 생성부의 인코더 끝 부분에 출력된 특징 벡터와 B를 입력 받은 생성부의 인코더 끝 부분에 출력된 특징 벡터 사이 간의 거리이고, k는 손실 함수 값의 상수를 의미한다. 또한,
Figure pat00018
의 과정을 수행하는 다른 2개의 생성부도 상술한 바와 동일한 방식으로 학습될 수 있다.At this time,
Figure pat00017
Is the distance between the feature vector output to the encoder end of the generator receiving A and the feature vector output to the encoder end of the generator receiving B, and k denotes a constant of the loss function value. Also,
Figure pat00018
The other two generation units performing the process of can also be learned in the same manner as described above.

또한, 생성부는 수학식 5에 따른 손실을 추가적으로 사용한다.In addition, the generation unit additionally uses the loss according to Equation 5.

Figure pat00019
Figure pat00019

Figure pat00020
Figure pat00021
에서 두 번째 생성부에서 출력된 변환 영상이고,
Figure pat00022
Figure pat00023
에서 두 번째 생성부에서 출력된 변환 영상이다.
Figure pat00020
Is
Figure pat00021
Is the converted image output from the second generation unit in,
Figure pat00022
Is
Figure pat00023
This is the converted image output from the second generation unit in.

생성부는 상술한 수학식 2 내지 수학식 5에서 나타낸 손실을 수학식 6과 같이 모두 적용한다.The generation unit applies all the losses shown in Equations 2 to 5 as shown in Equation 6.

Figure pat00024
Figure pat00024

즉, 생성부는 A 영상과 B 영상에 대한 생성부의 추가 출력 간의 거리에 따른 손실을 포함하는 손실 함수를 포함하여 학습될 수 있다.That is, the generation unit may be learned by including a loss function including a loss according to a distance between the additional output of the generation unit for the A image and the B image.

변환부(120)는 생성부와 같이 총 4개 판별부를 포함한다. 도 6과 같이 각 생성부에서 생성된 영상은 각 판별부로 입력된다. 판별부는

Figure pat00025
의 경우 하기의 수학식 7과 같이 손실을 포함할 수 있다.The conversion unit 120 includes a total of four discrimination units like the generation unit. As shown in FIG. 6, an image generated by each generation unit is input to each determination unit. The discrimination unit
Figure pat00025
In the case of, loss may be included as shown in Equation 7 below.

Figure pat00026
Figure pat00026

이 때, 판별부는 log likelihood를 최대화하는 방식이 아닌 하기의 수학식 8과 같이 log likelihood를 최소화하는 방향으로 학습을 진행할 수 있다.At this time, the determination unit may perform learning in a direction that minimizes log likelihood as shown in Equation 8 below, rather than a method of maximizing log likelihood.

Figure pat00027
Figure pat00027

또한, 판별부는 일반적인 사이클 생성적 적대 신경망이 출력하는 특징 벡터인 원 출력 이외 판별부의 마지막 레이어(도 7의 the 2nd output)를 통해 추가적인 출력을 수행한다. 추가적인 출력에 대한 손실은 수학식 9와 같이 표현할 수 있다.In addition, the determination unit performs additional output through the last layer (the 2nd output of FIG. 7) of the determination unit other than the original output, which is a feature vector output by a general cycle-generating hostile neural network. The loss for the additional output can be expressed as in Equation 9.

Figure pat00028
Figure pat00028

이 때,

Figure pat00029
은 증가 함수에 사용되는 상수 값이며, 도 8에 예시된 바와 같이
Figure pat00030
Figure pat00031
로 진행할 때 영상 A 에 관한 판별부의 마지막 출력을 뜻하고
Figure pat00032
Figure pat00033
에서의 A에 대한 변환 영상(fake image)에 관한 판별부의 마지막 출력이다. At this time,
Figure pat00029
Is a constant value used in the increment function, as illustrated in FIG. 8
Figure pat00030
Is
Figure pat00031
When proceeding to, it means the last output of the discrimination section about image A,
Figure pat00032
Is
Figure pat00033
This is the final output of the discrimination unit about the fake image for A in.

따라서, 판별부는 도 7에 예시된 바와 같은 두개의 레이어에서 각각 출력된 특징 벡터 간의 거리가 증가하도록 손실을 포함할 수 있다.Accordingly, the determination unit may include a loss such that the distance between the feature vectors output from each of the two layers as illustrated in FIG. 7 increases.

하기의 수학식 10은 상술한 판별부의 손실을 나타낸 것이다.Equation 10 below shows the loss of the above-described discrimination unit.

Figure pat00034
Figure pat00034

즉, 본 발명의 일 실시 예에 따른 판별부는 원본 영상과 변환 영상에 대한 판별부의 마지막 출력에 대해 증가 함수를 적용한 추가적인 손실을 고려한 손실 함수를 사용하여 학습될 수 있다.That is, the determination unit according to an embodiment of the present invention may be trained using a loss function in consideration of an additional loss by applying an increase function to the final output of the determination unit for the original image and the transformed image.

따라서, 본 발명의 일 실시 예에 따른 수정된 사이클 생성적 적대 신경망은 추가 특징 벡터를 추출하고, 추가 특징 벡터를 고려한 손실 함수를 사용하기 때문에 두 그룹의 영상 간의 스타일이 비슷해 지도록 영상을 변환하는 것 뿐만 아니라 나이에 맞게 영상을 변환할 수 있게 학습될 수 있다. 또한, 변환부(120)는 수정된 사이클 생성적 적대 신경망을 이용하여 일 그룹의 얼굴 영상인 원본 영상을 서로 연관성이 적은 타 그룹의 얼굴 영상의 스타일에 해당하면서도 원본 영상의 나이와 비슷한 얼굴을 나타내는 변환 영상을 생성할 수 있다.Therefore, since the modified cycle-generated hostile neural network according to an embodiment of the present invention extracts an additional feature vector and uses a loss function considering the additional feature vector, it transforms the image so that the styles between the two groups of images become similar. In addition, it can be learned to convert images according to age. In addition, the transform unit 120 uses the modified cycle-generated hostile neural network to convert the original image, which is a face image of one group, to a face image similar to the age of the original image while corresponding to the style of the face image of another group with little correlation. Converted images can be created.

나이 추정부(130)는 comparative CNN for age estimation(CCNNAE, 나이 추정 신경망이라 지칭)를 이용하여 원본 영상과 변환 영상에 해당하는 나이를 추정한다. 이 때, 나이 추정 신경망은 도 9와 같은 구조를 가지고, mini-batch 내에서 각각 두 장의 이미지들에 대한 유사도를 측정하여 구성한 손실 함수를 통해 학습될 수 있다. 즉, 나이 추정 신경망은 미니 배치(mini-batch) 안에서 두 영상에 대해 나이가 같은 경우에 거리 값이 작아지고, 나이 차이가 큰 경우 거리 값이 커지도록 하는 증가 함수 및 감소 함수를 이용하여 학습될 수 있다. 나이 추정 신경망은 마지막 레이어가 fully-connected layer이고, 해당 레이어를 통해 출력된 특징 벡터를 추출할 수 있다. 나이 추정부(130)는 원본 영상을 나이 추정 신경망에 입력하여 출력된 대상 특징 벡터와 학습된 특징 벡터 중 가장 거리가 가까운 벡터의 나이를 원본 영상의 나이로 추정할 수 있다. 또한, 나이 추정부(130)는 변환 영상에 대해서도 상술한 방식을 통해 나이를 추정할 수 있다. 나이 추정부(130)는 원본 영상 및 변환 영상의 추정된 나이를 선정부(140)로 전송한다.The age estimating unit 130 estimates the age corresponding to the original image and the transformed image using comparative CNN for age estimation (CCNNAE, referred to as an age estimating neural network). In this case, the age-estimating neural network has a structure as shown in FIG. 9 and may be learned through a loss function configured by measuring similarity between two images in a mini-batch. That is, the age estimation neural network can be trained using an increase function and a decrease function that make the distance value smaller when the age is the same for two images in a mini-batch, and increase the distance value when the age difference is large. I can. In the age-estimating neural network, the last layer is a fully-connected layer, and a feature vector output through the layer can be extracted. The age estimating unit 130 may input the original image to the age estimation neural network and estimate an age of a vector having the closest distance among the output target feature vector and the learned feature vector as the age of the original image. Also, the age estimating unit 130 may estimate the age of the transformed image through the above-described method. The age estimation unit 130 transmits the estimated age of the original image and the transformed image to the selection unit 140.

선정부(140)는 원본 영상 및 변환 영상의 추정된 나이 간의 차이를 산출한다. 선정부(140)는 차이가 미리 설정된 임계값을 초과하는 경우, 변환 영상이 정상적으로 변환되지 않은 것으로 판단하여 원본 영상의 나이를 출력한다. 또한, 선정부(140)는 차이가 미리 설정된 임계값 이하인 경우, 변환 영상이 정상적으로 변환된 것으로 판단하여 변환 영상의 나이를 출력한다. 예를 들어, 도 10과 같이 원본 영상의 나이가 20세이고 변환 영상의 나이가 38세이고, 임계값이 10인 경우, 원본 영상과 변환 영상의 나이 차이가 18이기 때문에 선정부(140)는 원본 영상의 나이를 선정하여 출력할 수 있다.The selection unit 140 calculates a difference between the estimated age of the original image and the transformed image. When the difference exceeds a preset threshold, the selection unit 140 determines that the converted image has not been normally converted and outputs the age of the original image. In addition, when the difference is less than or equal to a preset threshold, the selection unit 140 determines that the converted image has been normally converted and outputs the age of the converted image. For example, as shown in FIG. 10, when the age of the original image is 20, the age of the transformed image is 38, and the threshold is 10, since the age difference between the original image and the transformed image is 18, the selection unit 140 You can select the age of and print it out.

도 11은 본 발명의 일 실시 예에 따른 나이 추정 장치에 입력된 원본 영상과 나이 추정 장치가 생성한 변환 영상을 예시한 도면이다.11 is a diagram illustrating an original image input to an age estimating device and a transformed image generated by the age estimating device according to an embodiment of the present invention.

도 11을 참조하면, 나이 추정 장치는 인종별 얼굴을 포함하는 데이터베이스 A(예를 들어, 황인), 데이터베이스 B(예를 들어, 흑인)가 존재하는 경우, A의 원본 영상을 나이 추정 장치에 입력하는 경우, 데이터베이스 B에 해당할 수 있는 얼굴로 변환된 변환 영상을 생성할 수 있다. 반대로 나이 추정 장치는 B의 원본 영상을 나이 추정 장치에 입력하는 경우, A에 속할 수 있는 변환 영상을 생성할 수 있다. 이 때, 나이 추정 장치는 도 11에 예시된 바와 같이 각 원본 영상의 나이에 대응하는 변환 영상을 생성할 수 있다.Referring to FIG. 11, the age estimation apparatus inputs the original image of A into the age estimation apparatus when there is a database A (eg, yellow-in) and a database B (eg, black) including faces by race. In this case, a transformed image converted into a face corresponding to the database B may be generated. Conversely, when the original image of B is input to the age estimating device, the age estimating apparatus may generate a converted image that may belong to A. In this case, the age estimation apparatus may generate a converted image corresponding to the age of each original image, as illustrated in FIG. 11.

도 12는 본 발명의 일 실시 예에 따른 나이 추정 장치가 나이를 추정하는 방법을 예시한 순서도이다. 이하 설명하는 각 단계의 주체는 나이 추정 장치를 구성하는 각 기능부에 의해 수행되는 과정이나 간결하고 명확한 설명을 위해 각 단계의 주체를 나이 추정 장치로 통칭하도록 한다.12 is a flowchart illustrating a method of estimating age by an age estimating apparatus according to an embodiment of the present invention. The subject of each step to be described below is a process performed by each functional unit constituting the age estimating device or the subject of each step is collectively referred to as an age estimating device for concise and clear explanation.

도 12를 참조하면, 단계 1210에서 나이 추정 장치는 입력 영상에 대해 전처리를 수행하여 원본 영상을 생성한다. 예를 들어, 나이 추정 장치는 입력 영상에서 얼굴 영역을 추출할 수 있다. 나이 추정 장치는 추출한 얼굴 영역에서 양 눈의 중심 위치를 바탕으로 인플레인 로테이션 각도를 산출하고, 인플레이 로테이션 각도에 따라 얼굴 영역을 회전하고, 얼굴 영역의 크기를 정규화 하여 원본 영상을 생성할 수 있다. Referring to FIG. 12, in step 1210, the age estimating apparatus performs pre-processing on the input image to generate an original image. For example, the age estimation apparatus may extract a face area from the input image. The age estimation apparatus may generate an original image by calculating an in-plane rotation angle based on the center positions of both eyes in the extracted face area, rotating the face area according to the in-play rotation angle, and normalizing the size of the face area.

단계 1220에서 나이 추정 장치는 수정된 사이클 생성적 적대 신경망(MODIFIED CYCLE-CONSISTENT ADVERSARIAL NETWORKS)를 이용하여 원본 영상을 변환 영상으로 변환한다. 수정된 사이클 생성적 적대 신경망은 생성부 및 판별부를 포함한다. 생성부는 일 데이터베이스의 영상과 타 데이터베이스의 영상에 대한 생성부의 추가 출력인 특징 벡터 간의 거리에 따른 손실을 포함하는 손실 함수를 포함하여 학습될 수 있다. 또한, 판별부는 원본 영상과 변환 영상에 대한 판별부의 마지막 출력에 대해 증가 함수를 적용한 추가적인 손실을 고려한 손실 함수를 사용하여 학습될 수 있다. 수정된 사이클 생성적 적대 신경망의 자세한 구조 및 학습 방법은 도 3 내지 도 8을 참조하여 상술하였다.In step 1220, the age estimation apparatus converts the original image into a transformed image using a modified cycle-generating adversarial network (MODIFIED CYCLE-CONSISTENT ADVERSARIAL NETWORKS). The modified cycle-generated hostile neural network includes a generator and a discrimination unit. The generation unit may be learned by including a loss function including a loss according to a distance between an image of one database and a feature vector that is an additional output of the generation unit for an image of another database. In addition, the determination unit may be learned using a loss function in consideration of an additional loss by applying an increase function to the final output of the determination unit for the original image and the transformed image. The detailed structure and learning method of the modified cycle-generating hostile neural network has been described above with reference to FIGS. 3 to 8.

단계 1230에서 나이 추정 장치는 나이 추정 신경망을 이용하여 원본 영상 및 변환 영상에 나이를 추정한다. 예를 들어, 나이 추정 장치는 원본 영상을 나이 추정 신경망에 입력하여 출력된 대상 특징 벡터와 학습된 특징 벡터 중 가장 거리가 가까운 벡터의 나이를 원본 영상의 나이로 추정할 수 있다.In step 1230, the age estimating apparatus estimates the age of the original image and the transformed image using an age estimating neural network. For example, the age estimating apparatus may input the original image to the age estimating neural network and estimate an age of a vector having the closest distance among the output target feature vector and the learned feature vector as the age of the original image.

단계 1240에서 나이 추정 장치는 원본 영상 및 변환 영상의 나이 차이가 미리 설정된 임계값 이상인지 판단한다.In step 1240, the age estimating apparatus determines whether the age difference between the original image and the transformed image is equal to or greater than a preset threshold.

단계 1240에서 나이 추정 장치는 나이 차이가 미리 설정된 임계값 이상인 경우, 단계 1250에서 나이 추정 장치는 원본 영상의 나이를 출력한다.In step 1240, when the age difference is greater than or equal to a preset threshold, in step 1250, the age estimating device outputs the age of the original image.

단계 1240에서 나이 추정 장치는 나이 차이가 미리 설정된 임계값 미만인 경우, 단계 1260에서 나이 추정 장치는 변환 영상의 나이를 출력한다.In step 1240, when the age difference is less than a preset threshold, the age estimating device outputs an age of the converted image in step 1260.

도 13은 나이 추정 신경망을 이용한 두 데이터베이스의 얼굴 영상에 대한 나이 추정의 정확도를 예시한 표이고, 도 14는 본 발명의 일 실시 예에 따른 나이 추정 장치가 두 데이터베이스의 얼굴 영상에 대한 나이 추정한 경우의 정확도를 예시한 표이다.13 is a table illustrating the accuracy of age estimation for face images of two databases using an age estimating neural network, and FIG. 14 is a table illustrating age estimation for face images of two databases by an age estimating apparatus according to an embodiment of the present invention. This is a table illustrating the accuracy of the case.

도 13을 참조하면, 일 데이터베이스(MORPH)를 통해 나이 추정 신경망을 학습시키고, 타 데이터베이스(MegaAge)의 영상에 따른 나이를 추정하였을 경우, 실제 나이와 추정된 나이의 차이인 MAE가 8.6이 산출되었다.Referring to FIG. 13, when an age estimation neural network is trained through a work database (MORPH) and age according to an image of another database (MegaAge) is estimated, an MAE, which is the difference between the actual age and the estimated age, was calculated to be 8.6. .

도 14를 참조하면, 일 데이터베이스(MORPH)를 통해 나이 추정 신경망을 학습시키고, 변환부(120)를 통해 타 데이터베이스(MegaAge)의 영상에 대응하는 변환 영상을 생성하여 나이를 추정하였을 경우, 실제 나이와 추정된 나이의 차이는 7.12로 산출되었다.Referring to FIG. 14, when the age estimation neural network is trained through a work database (MORPH) and a transformed image corresponding to an image of another database (MegaAge) is generated through the conversion unit 120 to estimate the age, the actual age The difference between and estimated age was calculated as 7.12.

따라서, 본 발명의 일 실시 예에 따른 나이 추정 장치는 일 데이터베이스의 얼굴 영상을 학습한 나이 추정 신경망을 이용하더라도 변환 영상을 생성하는 과정을 통해 일 데이터베이스와 연관성이 낮은 타 데이터베이스의 영상에 대한 나이 추정의 정확도가 높다.Therefore, the age estimating apparatus according to an embodiment of the present invention estimates the age of an image of another database having a low correlation with the work database through the process of generating a transformed image even using an age estimating neural network that has learned a face image of a work database. The accuracy of is high.

또한, 본 발명의 일 실시 예에 따른 나이 추정 장치는 나이 추정 신경망의 학습을 하나의 스타일에 해당하는 데이터베이스의 영상만으로 학습시켜도 나이 추정을 정확하게 할 수 있어, 나이 추정 신경망의 학습에 필요한 비용을 줄일 수 있다.In addition, the age estimating apparatus according to an embodiment of the present invention can accurately estimate the age even when learning of the age estimating neural network is performed only with images from a database corresponding to one style, thereby reducing the cost required for learning the age estimating neural network. I can.

상술한 나이 추정 방법은 컴퓨터가 읽을 수 있는 매체 상에 컴퓨터가 읽을 수 있는 코드로 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체는, 예를 들어 이동형 기록 매체(CD, DVD, 블루레이 디스크, USB 저장 장치, 이동식 하드 디스크)이거나, 고정식 기록 매체(ROM, RAM, 컴퓨터 구비형 하드 디스크)일 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체에 기록된 상기 컴퓨터 프로그램은 인터넷 등의 네트워크를 통하여 다른 컴퓨팅 장치에 전송되어 상기 다른 컴퓨팅 장치에 설치될 수 있고, 이로써 상기 다른 컴퓨팅 장치에서 사용될 수 있다.The above-described method of estimating age may be implemented in computer-readable code on a computer-readable medium. The computer-readable recording medium is, for example, a removable recording medium (CD, DVD, Blu-ray disk, USB storage device, removable hard disk) or a fixed recording medium (ROM, RAM, computer-equipped hard disk). I can. The computer program recorded on the computer-readable recording medium may be transmitted to another computing device through a network such as the Internet and installed in the other computing device, thereby being used in the other computing device.

이상에서, 본 발명의 실시 예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시 예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위안에서라면, 그 모든 구성요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다.In the above, even if all the components constituting the embodiments of the present invention are described as being combined into one or operating in combination, the present invention is not necessarily limited to these embodiments. That is, as long as it is within the scope of the object of the present invention, one or more of the components may be selectively combined and operated.

도면에서 동작들이 특정한 순서로 도시되어 있지만, 반드시 동작들이 도시된 특정한 순서로 또는 순차적 순서로 실행되어야만 하거나 또는 모든 도시 된 동작들이 실행되어야만 원하는 결과를 얻을 수 있는 것으로 이해되어서는 안 된다. 특정 상황에서는, 멀티태스킹 및 병렬 처리가 유리할 수도 있다. 더욱이, 위에 설명한 실시 예 들에서 다양한 구성들의 분리는 그러한 분리가 반드시 필요한 것으로 이해되어서는 안 되고, 설명된 프로그램 컴포넌트들 및 시스템들은 일반적으로 단일 소프트웨어 제품으로 함께 통합되거나 다수의 소프트웨어 제품으로 패키지 될 수 있음을 이해하여야 한다.Although the operations are illustrated in a specific order in the drawings, it should not be understood that the operations must be executed in the specific order shown or in a sequential order, or all illustrated operations must be executed to obtain a desired result. In certain situations, multitasking and parallel processing may be advantageous. Moreover, the separation of various components in the above-described embodiments should not be understood as necessarily requiring such separation, and the described program components and systems are generally integrated together into a single software product or may be packaged into multiple software products. It should be understood that there is.

이제까지 본 발명에 대하여 그 실시 예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.So far, the present invention has been looked at around the embodiments. Those of ordinary skill in the art to which the present invention pertains will be able to understand that the present invention may be implemented in a modified form without departing from the essential characteristics of the present invention. Therefore, the disclosed embodiments should be considered from a descriptive point of view rather than a limiting point of view. The scope of the present invention is shown in the claims rather than the above description, and all differences within the scope equivalent thereto should be construed as being included in the present invention.

Claims (11)

입력 영상에 대한 전처리 과정을 수행하여 원본 영상을 생성하는 전처리부;
상기 원본 영상을 수정된 사이클 생성적 적대 신경망을 이용하여 변환 영상을 생성하는 변환부; 및
상기 변환 영상에 대한 나이를 추정하는 나이 추정부;
를 포함하는 나이 추정 장치.
A preprocessor for generating an original image by performing a preprocessing process on the input image;
A transform unit for generating a transformed image using a modified cycle-generating hostile neural network for the original image; And
An age estimating unit for estimating an age for the transformed image;
Age estimation device comprising a.
제1 항에 있어서,
상기 원본 영상의 나이와 상기 변환 영상의 나이 차이에 임계값 이상인 경우, 상기 원본 영상의 나이를 상기 입력 영상에 대한 나이로 출력하고, 상기 원본 영상의 나이와 상기 변환 영상의 나이 차이에 임계값 미만인 경우, 상기 변환 영상의 나이를 상기 입력 영상에 대한 나이로 출력하는 선정부;
를 더 포함하되,
상기 나이 추정부는 상기 원본 영상에 대한 나이를 추가로 추정하는 것을 특징으로 하는 나이 추정 장치.
The method of claim 1,
When the age difference between the age of the original image and the transformed image is greater than or equal to a threshold value, the age of the original image is output as the age of the input image, and the age difference between the age of the original image and the transformed image is less than the threshold value. In case, the selection unit for outputting the age of the converted image as the age of the input image;
But further include,
The age estimating unit further estimates the age of the original image.
제1 항에 있어서,
상기 수정된 사이클 생성적 적대 신경망은 생성부 및 판별부를 포함하고,
상기 생성부는 일 데이터베이스의 영상과 타 데이터베이스의 영상에 대한 상기 생성부의 추가 출력인 특징 벡터 간의 거리에 따른 손실을 포함하는 손실 함수를 포함하여 학습되고,
상기 판별부는 상기 원본 영상과 상기 변환 영상에 대한 상기 판별부의 추가 출력에 대해 증가 함수를 적용한 추가적인 손실을 고려한 손실 함수를 사용하여 학습되는 것을 특징으로 하는 나이 추정 장치.
The method of claim 1,
The modified cycle-generating hostile neural network includes a generation unit and a discrimination unit,
The generation unit is learned including a loss function including a loss according to a distance between an image of one database and a feature vector that is an additional output of the generation unit for an image of another database,
Wherein the determination unit is trained using a loss function in consideration of an additional loss obtained by applying an increase function to an additional output of the determination unit for the original image and the transformed image.
제3항에 있어서,
상기 생성부는 상기 변환 영상을 출력하는 레이어 및 상기 추가 출력을 출력하는 레이어를 포함하는 신경망이고,
상기 판별부는 원 출력을 출력하는 레이어 및 상기 추가 출력을 출력하는 레이어를 포함하는 신경망인 것을 특징으로 하는 나이 추정 장치.
The method of claim 3,
The generator is a neural network including a layer outputting the transformed image and a layer outputting the additional output,
Wherein the determination unit is a neural network including a layer outputting an original output and a layer outputting the additional output.
제1 항에 있어서,
상기 전처리부는
상기 입력 영상에서 얼굴 영역을 추출하고,
상기 얼굴 영역에서 양 눈의 중심 위치를 바탕으로 인플레인 로테이션 각도(in-plane rotation)를 산출하고,
상기 인플레이 로테이션 각도에 따라 상기 얼굴 영역을 회전하고,
상기 얼굴 영역의 크기를 정규화 하여 상기 원본 영상을 생성하는 것을 특징으로 하는 나이 추정 장치.
The method of claim 1,
The pretreatment unit
Extracting a face area from the input image,
Calculate an in-plane rotation based on the center position of both eyes in the face area,
Rotate the face region according to the inplay rotation angle,
And generating the original image by normalizing the size of the face region.
나이 추정 장치가 나이를 추정하는 방법에 있어서,
입력 영상에 대한 전처리 과정을 수행하여 원본 영상을 생성하는 단계;
상기 원본 영상을 수정된 사이클 생성적 적대 신경망을 이용하여 변환 영상을 생성하는 단계; 및
상기 변환 영상에 대한 나이를 추정하는 단계;
를 포함하는 나이 추정 방법.
In the method of estimating the age by the age estimation device,
Generating an original image by performing a preprocessing process on the input image;
Generating a transformed image from the original image using a modified cycle-generated hostile neural network; And
Estimating an age for the transformed image;
Age estimation method comprising a.
제6 항에 있어서,
상기 원본 영상에 대한 나이를 추가로 추정하는 단계; 및
상기 원본 영상의 나이와 상기 변환 영상의 나이 차이에 임계값 이상인 경우, 상기 원본 영상의 나이를 상기 입력 영상에 대한 나이로 출력하고, 상기 원본 영상의 나이와 상기 변환 영상의 나이 차이에 임계값 미만인 경우, 상기 변환 영상의 나이를 상기 입력 영상에 대한 나이로 출력하는 단계;
를 더 포함하는 것을 특징으로 하는 나이 추정 방법.
The method of claim 6,
Additionally estimating an age for the original image; And
When the age difference between the age of the original image and the transformed image is greater than or equal to a threshold value, the age of the original image is output as the age of the input image, and the age difference between the age of the original image and the transformed image is less than the threshold value. In case, outputting the age of the converted image as the age of the input image;
Age estimation method further comprising a.
제6 항에 있어서,
상기 수정된 사이클 생성적 적대 신경망은 생성부 및 판별부를 포함하고,
상기 생성부는 일 데이터베이스의 영상과 타 데이터베이스의 영상에 대한 상기 생성부의 추가 출력인 특징 벡터 간의 거리에 따른 손실을 포함하는 손실 함수를 포함하여 학습되고,
상기 판별부는 상기 원본 영상과 상기 변환 영상에 대한 상기 판별부의 추가 출력에 대해 증가 함수를 적용한 추가적인 손실을 고려한 손실 함수를 사용하여 학습되는 것을 특징으로 하는 나이 추정 방법.
The method of claim 6,
The modified cycle-generating hostile neural network includes a generation unit and a discrimination unit,
The generation unit is learned including a loss function including a loss according to a distance between an image of one database and a feature vector that is an additional output of the generation unit for an image of another database,
Wherein the determination unit is trained using a loss function taking into account an additional loss obtained by applying an increase function to an additional output of the determination unit for the original image and the transformed image.
제8항에 있어서,
상기 생성부는 상기 변환 영상을 출력하는 레이어 및 상기 추가 출력을 출력하는 레이어를 포함하는 신경망이고,
상기 판별부는 원 출력을 출력하는 레이어 및 상기 추가 출력을 출력하는 레이어를 포함하는 신경망인 것을 특징으로 하는 나이 추정 방법.
The method of claim 8,
The generator is a neural network including a layer outputting the transformed image and a layer outputting the additional output,
Wherein the determination unit is a neural network including a layer outputting an original output and a layer outputting the additional output.
제6 항에 있어서,
상기입력 영상에 대한 전처리 과정을 수행하여 원본 영상을 생성하는 단계는,
상기 입력 영상에서 얼굴 영역을 추출하는 단계;
상기 얼굴 영역에서 양 눈의 중심 위치를 바탕으로 인플레인 로테이션 각도(in-plane rotation)를 산출하는 단계;
상기 인플레이 로테이션 각도에 따라 상기 얼굴 영역을 회전하는 단계; 및
상기 얼굴 영역의 크기를 정규화 하여 상기 원본 영상을 생성하는 단계;
를 포함하는 것을 특징으로 하는 나이 추정 방법
The method of claim 6,
The step of generating an original image by performing a preprocessing process on the input image,
Extracting a face area from the input image;
Calculating an in-plane rotation based on the center positions of both eyes in the face area;
Rotating the face region according to the inplay rotation angle; And
Generating the original image by normalizing the size of the face area;
Age estimation method comprising a
제6항 내지 제10항 중 어느 하나의 나이 추정 방법을 실행하고 컴퓨터가 판독 가능한 기록매체에 기록된 컴퓨터 프로그램.

A computer program recorded in a computer-readable recording medium after executing the method for estimating the age of any one of claims 6 to 10.

KR1020190131912A 2019-10-23 2019-10-23 Apparatus and method for estimating age using modified cycle-consistent adversarial networks KR102259208B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190131912A KR102259208B1 (en) 2019-10-23 2019-10-23 Apparatus and method for estimating age using modified cycle-consistent adversarial networks

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190131912A KR102259208B1 (en) 2019-10-23 2019-10-23 Apparatus and method for estimating age using modified cycle-consistent adversarial networks

Publications (2)

Publication Number Publication Date
KR20210048623A true KR20210048623A (en) 2021-05-04
KR102259208B1 KR102259208B1 (en) 2021-06-02

Family

ID=75913782

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190131912A KR102259208B1 (en) 2019-10-23 2019-10-23 Apparatus and method for estimating age using modified cycle-consistent adversarial networks

Country Status (1)

Country Link
KR (1) KR102259208B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160110741A (en) * 2015-03-11 2016-09-22 동국대학교 산학협력단 Device and method for human age estimation
JP2019162426A (en) * 2018-03-19 2019-09-26 ジェームズ アール. グライドウェル デンタル セラミックス,インコーポレーテッド Dental cad automation using deep learning

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160110741A (en) * 2015-03-11 2016-09-22 동국대학교 산학협력단 Device and method for human age estimation
JP2019162426A (en) * 2018-03-19 2019-09-26 ジェームズ アール. グライドウェル デンタル セラミックス,インコーポレーテッド Dental cad automation using deep learning

Also Published As

Publication number Publication date
KR102259208B1 (en) 2021-06-02

Similar Documents

Publication Publication Date Title
Kunin et al. Loss landscapes of regularized linear autoencoders
Kuhnke et al. Deep head pose estimation using synthetic images and partial adversarial domain adaption for continuous label spaces
US8351649B1 (en) Video feed target tracking
Alletto et al. From ego to nos-vision: Detecting social relationships in first-person views
US10554957B2 (en) Learning-based matching for active stereo systems
CN111476771B (en) Domain self-adaption method and system based on distance countermeasure generation network
WO2021220688A1 (en) Reinforcement learning model for labeling spatial relationships between images
US9904843B2 (en) Information processing device, information processing method, and program
US9690985B2 (en) Apparatus and method for recognizing object using depth image
KR20110109695A (en) Face recognition system and method thereof
Haber et al. A practical approach to real-time neutral feature subtraction for facial expression recognition
CN115731396A (en) Continuous learning method based on Bayesian variation inference
CN108469729B (en) Human body target identification and following method based on RGB-D information
Bilkhu et al. Emotion classification from facial expressions using cascaded regression trees and SVM
Tin et al. Gender and age estimation based on facial images
CN111080517B (en) Three-dimensional point cloud splicing method based on improved butterfly optimization algorithm
JP7472471B2 (en) Estimation system, estimation device, and estimation method
KR102259208B1 (en) Apparatus and method for estimating age using modified cycle-consistent adversarial networks
CN117131377A (en) Zero-order learning visual model reasoning method based on open domain attribute and object guidance
US20230326238A1 (en) Optimization-based parametric model fitting via deep learning
WO2022236647A1 (en) Methods, devices, and computer readable media for training a keypoint estimation network using cgan-based data augmentation
CN115935817A (en) Rapid model generation method based on diffusion model
KR20230106057A (en) Method and apparatus for 6 degree of freedom pose estimation using artifical neural network
Seki et al. Object estimation method for edge devices inspired by multimodal information processing in the brain
WO2012032747A1 (en) Feature point selecting system, feature point selecting method, feature point selecting program

Legal Events

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