KR102464704B1 - Method for posting data and apparatus for posting data - Google Patents

Method for posting data and apparatus for posting data Download PDF

Info

Publication number
KR102464704B1
KR102464704B1 KR1020210116469A KR20210116469A KR102464704B1 KR 102464704 B1 KR102464704 B1 KR 102464704B1 KR 1020210116469 A KR1020210116469 A KR 1020210116469A KR 20210116469 A KR20210116469 A KR 20210116469A KR 102464704 B1 KR102464704 B1 KR 102464704B1
Authority
KR
South Korea
Prior art keywords
eye image
data
image
reflected scene
neural network
Prior art date
Application number
KR1020210116469A
Other languages
Korean (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 KR1020210116469A priority Critical patent/KR102464704B1/en
Application granted granted Critical
Publication of KR102464704B1 publication Critical patent/KR102464704B1/en

Links

Images

Classifications

    • G06T5/005
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4318Generation of visual interfaces for content selection or interaction; Content or additional data rendering by altering the content in the rendering process, e.g. blanking, blurring or masking an image region
    • 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/20084Artificial neural networks [ANN]
    • 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/30041Eye; Retina; Ophthalmic

Landscapes

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

Abstract

The present invention relates to a data posting method to protect privacy of a user, and a data posting apparatus. The data posting method comprises the steps of allowing a server to: receive first data, which includes image data or video data including eye image data, from a user terminal; detect a first eye image from the first data; use a decision neural network analyzing the first eye image to determine whether a reflected scene exists in the first eye image; generate a second eye image in which the reflected scene is removed in response to determining that the reflected scene exists; synthesize the second eye image with the first data to generate second data from which the reflected scene is removed; and post an image or video corresponding to the second data.

Description

데이터 게시 방법 및 데이터 게시 장치{METHOD FOR POSTING DATA AND APPARATUS FOR POSTING DATA}Data Posting Methods and Data Posting Devices

본 개시는 데이터 게시 방법 및 데이터 게시 장치에 관한 것으로, 자세하게는 데이터를 보정하고 게시하여 사생활을 보호하는 데이터 게시 방법 및 데이터 게시 장치에 관한 것이다. The present disclosure relates to a data posting method and a data posting device, and more particularly, to a data posting method and data posting device for protecting privacy by correcting and posting data.

최근 카메라 해상도의 발달로 인해 사진이나 비디오의 화질이 향상되고, 또한 인공지능의 발달로 작은 이미지를 확대하거나 복원하여 정보를 추출하는 것이 가능하다. 이에 따라, 사진이나 비디오에 등장하는 피사체의 눈에 반사된 이미지를 복원하여 정보를 획득하는 것이 가능하다. 이에 따라 많은 사람들이 페이스북이나 인스타그램 같은 소셜 미디어에 무심코 업로드하는 사진 또는 동영상으로부터 사용자의 개인 정보가 유출될 가능성이 있다. Due to the recent development of camera resolution, the quality of photos and videos is improved, and it is possible to extract information by enlarging or restoring a small image with the development of artificial intelligence. Accordingly, it is possible to obtain information by restoring an image reflected by the eyes of a subject appearing in a photo or video. As a result, there is a possibility that users' personal information may be leaked from photos or videos that many people inadvertently upload to social media such as Facebook or Instagram.

한국특허 등록번호 제10-2090891호Korean Patent Registration No. 10-2090891 한국특허 등록번호 제10-2209595호Korean Patent Registration No. 10-2209595 미국특허 공개번호 2021/010373호US Patent Publication No. 2021/010373

Eye In-Painting with Exemplar Generative Adversarial Networks, Brian Dolhansky, Cristian Canton Ferrer Facebook Inc. 1 Hacker Way, Menlo Park (CA), USAEye In-Painting with Exemplar Generative Adversarial Networks, Brian Dolhansky, Cristian Canton Ferrer Facebook Inc. 1 Hacker Way, Menlo Park (CA), USA Registration of eye reflection and scene images using an aspherical eye model, Atsushi Nakazawa et al.Registration of eye reflection and scene images using an aspherical eye model, Atsushi Nakazawa et al. Globally and Locally Consistent Image Completion, Satoshi Iizuka et al. Globally and Locally Consistent Image Completion, Satoshi Iizuka et al. Single Image Reflection Removal Using Deep Encoder-Decoder Network. Zhixiang chi et al.Single Image Reflection Removal Using Deep Encoder-Decoder Network. Zhixiang chi et al. Facial Attribute Editing via Style Skip Connections, Wenqing Chu et al.Facial Attribute Editing via Style Skip Connections, Wenqing Chu et al.

본 개시는 피사체의 눈에 반사된 이미지를 제거하여 사용자의 사생활을 보호하는 방법 및 장치를 제공한다.The present disclosure provides a method and apparatus for protecting a user's privacy by removing an image reflected by the subject's eyes.

본 개시의 일 형태에 의하면, 데이터 게시 방법은 서버가 사용자 단말기로부터 눈 이미지 데이터를 포함하는 이미지 데이터 또는 동영상 데이터를 포함하는 제1 데이터를 수신하는 단계; 상기 제1 데이터로부터 제1 눈 이미지를 검출하는 단계; 상기 제1 눈 이미지를 분석하는 결정 신경망을 이용하여 상기 제1 눈 이미지에 반사된 장면이 있는지 판단하는 단계; 상기 반사된 장면이 있다고 판단하는 것에 대응하여, 상기 반사된 장면이 제거된 제2 눈 이미지를 생성하는 단계;According to one aspect of the present disclosure, a data posting method includes: receiving, by a server, image data including eye image data or first data including moving picture data from a user terminal; detecting a first eye image from the first data; determining whether there is a scene reflected in the first eye image using a decision neural network that analyzes the first eye image; in response to determining that there is the reflected scene, generating a second eye image from which the reflected scene is removed;

상기 제1 데이터에 상기 제2 눈 이미지를 합성하여 상기 반사된 장면이 제거된 제2 데이터를 생성하는 단계; 및 상기 제2 데이터에 대응하는 이미지 또는 동영상을 게시하는 단계를 포함한다.generating second data from which the reflected scene is removed by synthesizing the second eye image with the first data; and posting an image or video corresponding to the second data.

일 실시예에서, 상기 반사된 장면이 제거된 상기 제2 눈 이미지를 생성하는 단계는, 상기 결정 신경망의 출력을 수신하고 이용하여 상기 제1 눈 이미지로부터 상기 반사된 장면을 추출하는 단계; 및 상기 제1 눈 이미지 및 상기 추출된 반사된 장면을 입력으로 하여 상기 반사된 장면이 제거된 제2 눈 이미지를 생성하는 단계를 포함할 수 있다.In an embodiment, generating the second eye image from which the reflected scene is removed includes: receiving and using an output of the neural network to extract the reflected scene from the first eye image; and generating a second eye image from which the reflected scene is removed by inputting the first eye image and the extracted reflected scene as inputs.

일 실시예에서, 상기 제1 눈 이미지 및 상기 추출된 반사된 장면을 입력으로 하여 상기 반사된 장면이 제거된 제2 눈 이미지를 생성하는 단계는, 상기 제1 눈 이미지를 입력으로 하여 반사된 장면이 없는 전체적인 눈 이미지를 생성하고, 상기 추출된 반사된 장면을 입력으로 하여 상기 반사된 장면이 제거된 국부적인 이미지를 생성하는 단계; 및 상기 전체적인 눈 이미지와 상기 국부적인 이미지를 합성하여 상기 제2 눈 이미지를 생성하는 단계를 포함할 수 있다.In one embodiment, the step of generating a second eye image from which the reflected scene is removed by inputting the first eye image and the extracted reflected scene as an input includes: a reflected scene using the first eye image as an input generating an overall eye image without ophthalmic features, and generating a local image from which the reflected scene is removed by inputting the extracted reflected scene as an input; and generating the second eye image by synthesizing the overall eye image and the local image.

일 실시예에서, 상기 제1 눈 이미지 및 상기 추출된 반사된 장면을 입력으로 하여 상기 반사된 장면이 제거된 제2 눈 이미지를 생성하는 단계는, 상기 제1 눈 이미지를 입력으로 하여 상기 제1 눈 이미지로부터 제1 정보를 생성하는 단계; 상기 추출된 반사된 장면을 입력으로 하여 제2 정보를 생성하는 단계; 및 상기 제1 정보와 상기 제2 정보에 기초하여 상기 제2 눈 이미지를 생성하는 단계를 포함할 수 있다. In one embodiment, the step of generating a second eye image from which the reflected scene is removed by inputting the first eye image and the extracted reflected scene as an input includes: generating first information from the eye image; generating second information by using the extracted reflected scene as an input; and generating the second eye image based on the first information and the second information.

일 실시예에서, 상기 제1 눈 이미지를 입력으로 하여 상기 제1 눈 이미지로부터 제1 정보를 생성하는 단계와 상기 추출된 반사된 장면을 입력으로 하여 제2 정보를 생성하는 단계는 서로 다른 생성기에 의해 수행되고, 상기 제1 정보와 상기 제2 정보를 기초하여 상기 제2 눈 이미지를 생성하는 단계는 상기 제1 눈 이미지를 입력으로 하여 상기 제1 눈 이미지로부터 제1 정보를 생성하는 생성기에 의해 수행될 수 있다. In one embodiment, the step of generating first information from the first eye image by inputting the first eye image as an input and the step of generating the second information by using the extracted reflected scene as an input are different generators. and generating the second eye image based on the first information and the second information is performed by a generator that receives the first eye image as an input and generates first information from the first eye image. can be performed.

일 실시예에서, 상기 제1 눈 이미지 및 상기 추출된 반사된 장면을 입력으로 하여 상기 반사된 장면이 제거된 제2 눈 이미지를 생성하는 단계는, 상기 제1 눈 이미지를 입력으로 하여 상기 제1 눈 이미지로부터 제1 특징맵을 생성하는 단계; 상기 추출된 반사된 장면을 입력으로 하여 제2 특징 맵을 생성하는 단계; 및 상기 제1 특징맵과 상기 제2 특징맵을 연결(concatenate)하여 상기 제2 눈 이미지를 생성하는 단계를 포함할 수 있다. In one embodiment, the step of generating a second eye image from which the reflected scene is removed by inputting the first eye image and the extracted reflected scene as an input includes: generating a first feature map from the eye image; generating a second feature map by using the extracted reflected scene as an input; and generating the second eye image by concatenating the first feature map and the second feature map.

일 실시예에서, 상기 제1 특징맵과 상기 제2 특징맵은 동일한 차원(dimension)을 갖도록 생성될 수 있다. In an embodiment, the first feature map and the second feature map may be generated to have the same dimension.

일 실시예에서, 상기 제1 눈 이미지로부터 상기 반사된 장면을 추출하는 단계는 상기 결정 신경망의 출력을 수신하고 이용하여 주의 기법(attention mechanism)을 이용하여 수행될 수 있다. In an embodiment, the step of extracting the reflected scene from the first eye image may be performed using an attention mechanism by receiving and using the output of the decision neural network.

일 실시예에서, 상기 반사된 장면이 제거된 제2 눈 이미지를 생성하는 단계는 상기 결정 신경망의 출력을 수신하고 이용하여 상기 제1 눈 이미지로부터 상기 반사된 장면을 추출하는 단계; 상기 제1 눈 이미지로부터 상기 반사된 장면을 마스킹하여 마스킹된 이미지를 생성하는 단계; 및 상기 마스킹된 이미지 및 상기 추출된 반사된 장면을 입력으로 하여 상기 반사된 장면이 제거된 제2 눈 이미지를 생성하는 단계를 포함할 수 있다. In an embodiment, generating the second eye image from which the reflected scene has been removed includes: receiving and using an output of the neural network to extract the reflected scene from the first eye image; generating a masked image by masking the reflected scene from the first eye image; and generating a second eye image from which the reflected scene is removed by inputting the masked image and the extracted reflected scene as inputs.

일 실시예에서, 상기 제1 데이터로부터 제1 눈 이미지를 검출하는 단계 이전에, 상기 제1 데이터에 대응하는 이미지 또는 동영상을 게시하는 단계를 더 포함하고, 상기 제2 데이터에 대응하는 이미지 또는 동영상을 게시하는 단계는 상기게시된 상기 제1 데이터에 대응하는 이미지 또는 동영상을 상기 제2 데이터에 대응하는 이미지 또는 동영상으로 교체하여 게시하는 단계를 포함할 수 있다. In an embodiment, before detecting a first eye image from the first data, the method further comprises posting an image or video corresponding to the first data, and an image or video corresponding to the second data. The posting may include posting the posted image or video corresponding to the first data by replacing the image or video corresponding to the second data.

일 실시예에서, 상기 제1 눈 이미지를 분석하는 결정 신경망을 이용하여 상기 제1 눈 이미지에 반사된 장면이 있는지 판단하는 단계는, 상기 결정 신경망이 출력하는 상기 제1 눈 이미지에 상기 반사된 장면이 존재할 확률 및 기 설정된 임계치(threshold)에 기초하여 판단하는 단계를 포함할 수 있다. In an embodiment, the step of determining whether there is a scene reflected in the first eye image using a decision neural network that analyzes the first eye image includes the scene reflected in the first eye image output by the decision neural network It may include the step of determining based on the existence probability and a preset threshold (threshold).

본 개시의 일 형태에 의하면, 데이터 게시 장치는, 사용자 단말기로부터 눈 이미지 데이터를 포함하는 이미지 데이터 또는 동영상 데이터를 포함하는 제1 데이터를 수신하도록 구성된 통신 모듈; 상기 제1 데이터로부터 제1 눈 이미지를 검출하고 상기 제1 눈 이미지를 분석하여 상기 제1 눈 이미지에 반사된 장면이 있는지 판단하도록 구성된 결정 신경망; 상기 결정 신경망의 출력을 수신하고 상기 출력에 기초하여 상기 반사된 장면이 제거된 제2 눈 이미지를 생성하고, 상기 제1 데이터에 상기 제2 눈 이미지를 합성하여 상기 반사된 장면이 제거된 제2 데이터를 생성하도록 구성된 복원 신경망; 상기 제2 데이터에 대응하는 이미지 또는 동영상을 게시하도록 구성된 컨트롤러; 및 상기 제1 데이터 및 상기 제2 데이터를 저장하고, 상기 제1 데이터 및 상기 제2 데이터의 삭제가 가능하도록 구성된 스토리지를 포함한다. According to one aspect of the present disclosure, a data posting device includes: a communication module configured to receive image data including eye image data or first data including moving picture data from a user terminal; a decision neural network configured to detect a first eye image from the first data and analyze the first eye image to determine if there is a reflected scene in the first eye image; receiving the output of the neural network, generating a second eye image from which the reflected scene is removed based on the output, and synthesizing the second eye image with the first data to remove the reflected scene a reconstructed neural network configured to generate data; a controller configured to post an image or video corresponding to the second data; and a storage configured to store the first data and the second data, and to enable deletion of the first data and the second data.

일 실시예에서, 상기 복원 신경망은, 상기 결정 신경망의 출력에 기초하여 상기 제1 눈 이미지로부터 상기 반사된 장면을 추출하도록 구성되고, 상기 제1 눈 이미지 및 상기 추출된 반사된 장면에 기초하여 상기 반사된 장면이 제거된 제2 눈 이미지를 생성하도록 구성된 생성기를 포함할 수 있다. In an embodiment, the reconstructed neural network is configured to extract the reflected scene from the first eye image based on an output of the decision neural network, and based on the first eye image and the extracted reflected scene and a generator configured to generate a second eye image with the reflected scene removed.

일 실시예에서, 상기 생성기는, 상기 제1 눈 이미지를 입력으로 하여 반사된 장면이 없는 전체적인 눈 이미지를 생성하도록 구성된 제1 생성기; 및 상기 추출된 반사된 장면을 입력으로 하여 상기 반사된 장면이 제거된 국부적인 이미지를 생성하도록 구성된 제2 생성기를 포함하고, 상기 전체적인 눈 이미지와 상기 국부적인 이미지를 합성하여 상기 제2 눈 이미지를 생성하도록 구성된될 수 있다. In one embodiment, the generator comprises: a first generator configured to receive the first eye image as an input and generate an overall eye image without a reflected scene; and a second generator configured to receive the extracted reflected scene as an input and generate a local image from which the reflected scene is removed, wherein the second eye image is generated by synthesizing the global eye image and the local image. may be configured to generate.

일 실시예에서, 상기 복원 신경망은, 상기 제1 눈 이미지를 입력으로 하여 상기 제1 눈 이미지로부터 제1 정보를 생성하도록 구성된 제1 생성기; 및 상기 추출된 반사된 장면을 입력으로 하여 제2 정보를 생성하도록 구성된 제2 생성기를 포함하고, 상기 제1 생성기는 상기 제1 정보와 상기 제2 정보에 기초하여 상기 제2 눈 이미지를 생성하도록 구성될 수 있다. In an embodiment, the reconstructed neural network may include: a first generator configured to receive the first eye image as an input and generate first information from the first eye image; and a second generator configured to generate second information using the extracted reflected scene as an input, wherein the first generator is configured to generate the second eye image based on the first information and the second information can be configured.

일 실시예에서, 상기 제1 생성기는 인코더 및 디코더를 포함하는 인코더-디코더 설계 구조를 갖고, 상기 인코더와 상기 디코더는 공간 정보 전송(spatial information transfer) 및 잔여 학습을 위한 스킵 연결(skip connection)의 대칭 구조를 갖고, 상기 디코더는 정규화 기법을 이용하여 상기 제1 눈 이미지의 스타일을 유지하도록 구성될 수 있다. In one embodiment, the first generator has an encoder-decoder design structure comprising an encoder and a decoder, wherein the encoder and the decoder are of a skip connection for spatial information transfer and residual learning. Having a symmetric structure, the decoder may be configured to maintain the style of the first eye image using a normalization technique.

일 실시예에서, 상기 복원 신경망은, 상기 제1 눈 이미지를 입력으로 하여 상기 제1 눈 이미지로부터 제1 특징맵을 생성하도록 구성된 제1 생성기; 및 상기 추출된 반사된 장면을 입력으로 하여 제2 특징 맵을 생성하도록 구성된 제2 생성기를 포함하고, 상기 제1 생성기는 제1 특징맵과 상기 제2 특징맵을 연결(concatenate)하여 상기 제2 눈 이미지를 생성하도록 구성될 수 있다. In an embodiment, the reconstructed neural network may include: a first generator configured to generate a first feature map from the first eye image by receiving the first eye image as an input; and a second generator configured to generate a second feature map using the extracted reflected scene as an input, wherein the first generator concatenates the first feature map and the second feature map to generate the second feature map. and may be configured to generate an eye image.

일 실시예에서, 상기 제1 생성기 및 상기 제2 생성기는 상기 제1 특징맵과 상기 제2 특징맵이 동일한 차원(dimension)을 갖도록 각각 생성할 수 있다. In an embodiment, the first generator and the second generator may each generate the first feature map and the second feature map to have the same dimension.

일 실시예에서, 상기 복원 신경망은, 상기 결정 신경망의 출력을 수신하고 상기 출력에 기초하여 주의 기법(attention mechanism)을 이용하여 상기 제1 눈 이미지로부터 상기 반사된 장면을 추출하도록 구성될 수 있다. In an embodiment, the reconstructed neural network may be configured to receive an output of the decision neural network and extract the reflected scene from the first eye image using an attention mechanism based on the output.

일 실시예에서, 상기 복원 신경망은, 상기 결정 신경망의 출력에 기초하여 상기 제1 눈 이미지로부터 상기 반사된 장면을 추출하고 상기 제1 눈 이미지로부터 상기 반사된 장면을 마스킹하여 마스킹된 이미지를 생성하고 상기 마스킹된 이미지 및 상기 추출된 반사된 장면을 입력으로 하여 상기 반사된 장면이 제거된 제2 눈 이미지를 생성하도록 구성될 수 있다. In one embodiment, the reconstructed neural network extracts the reflected scene from the first eye image based on the output of the decision neural network and masks the reflected scene from the first eye image to generate a masked image, and take the masked image and the extracted reflected scene as inputs to generate a second eye image from which the reflected scene is removed.

일 실시예에서, 상기 컨트롤러는 상기 제1 데이터로부터 상기 제1 눈 이미지를 검출하기 이전에, 상기 제1 데이터에 대응하는 이미지 또는 동영상을 게시하도록 상기 데이터 게시 장치를 제어하고, 상기 제2 데이터를 생성한 이후, 상기 게시된 상기 제1 데이터에 대응하는 이미지 또는 동영상을 상기 제2 데이터에 대응하는 이미지 또는 동영상으로 교체하여 게시하도록 상기 데이터 게시 장치를 제어하도록 구성될 수 있다. In one embodiment, before detecting the first eye image from the first data, the controller controls the data posting device to publish an image or video corresponding to the first data, and After the generation, it may be configured to control the data posting device to replace the posted image or video corresponding to the first data with an image or video corresponding to the second data to be posted.

일 실시예에서, 상기 결정 신경망은 상기 제1 눈 이미지에 상기 반사된 장면이 존재할 확률을 출력하도록 학습될 수 있다. In an embodiment, the decision neural network may be trained to output a probability that the reflected scene exists in the first eye image.

본 개시의 일 형태에 의하면, 데이터 게시 방법은, 각막에 반사된 장면을 포함하는 반사 계층과 상기 반사된 장면을 포함하지 않는전송 계층을 포함하는 제1 눈 이미지 - 상기 제1 눈 이미지는 상기 반사 계층과 상기 전송 계층이 합성된 하나의 이미지이고 -를 수신하는 단계; 상기 반사 계층에 관련된 정보를 상기 제1 눈 이미지로부터 추출하는 단계; 상기 반사 계층에 관련된 정보에 기초하여 상기 제1 눈 이미지로부터 상기 반사된 장면을 포함하는 반사 이미지를 추출하는 단계; 상기 제1 눈 이미지 및 상기 반사 이미지에 기초하여, 상기 반사된 장면이 제거된 각막을 포함하는 제2 눈 이미지를 생성하는 단계; 및 상기 제2 눈 이미지를 게시하는 단계를 포함한다. According to one aspect of the present disclosure, a data posting method comprises: a first eye image including a reflective layer including a reflected scene on the cornea and a transport layer not including the reflected scene, wherein the first eye image is the reflection a layer and the transport layer are one image synthesized; receiving -; extracting information related to the reflection layer from the first eye image; extracting a reflection image including the reflected scene from the first eye image based on information related to the reflection layer; generating a second eye image including a cornea from which the reflected scene is removed, based on the first eye image and the reflected image; and posting the second eye image.

본 개시의 일 형태에 의하면, 눈 이미지를 포함하는 데이터를 보정하는 생성기(generator)와 판별기(discriminator)를 포함하는 생성적 적대 신경망(generative adversarial networks)을 학습시키는 방법으로, 상기 방법은 반사된 장면을 포함하는 제1 눈 이미지를 분석하여, 상기 제1 눈 이미지로부터 반사된 장면을 포함하는 반사 계층 및 상기 반사된 장면이 없는 전송 계층을 분리하도록 구성된 결정 신경망으로부터 출력을 수신하는 단계; 상기 출력에 기초하여, 반사된 장면이 복원 가능한지 여부를 판단하는 단계; 상기 반사된 장면이 복원 가능하다고 판단하는 것에 대응하여, 상기 생성기가 상기 반사된 장면이 제거된 제2 눈 이미지를 생성하는 단계; 상기 제1 눈 이미지 및 상기 제2 눈 이미지를 상기 판별기에 입력하여 진짜인지 가짜인지 판별하는 단계; 및 상기 판별기가 상기 생성기로 피드백을 제공하는 단계; 상기 피드백으로부터 상기 생성기가 학습하는 단계를 포함한다.According to one aspect of the present disclosure, there is provided a method for training generative adversarial networks including a generator and a discriminator for correcting data including an eye image, the method comprising: receiving an output from a decision neural network configured to analyze a first eye image comprising a scene and separate a reflective layer comprising a reflected scene from the first eye image and a transport layer without the reflected scene; determining whether the reflected scene is reconstructable based on the output; in response to determining that the reflected scene is reconstructable, generating, by the generator, a second eye image from which the reflected scene is removed; inputting the first eye image and the second eye image into the discriminator to determine whether the image is real or fake; and providing feedback from the discriminator to the generator. and learning by the generator from the feedback.

피사체의 눈에 반사된 이미지를 제거하고 사생활을 보호하는 한편, 새로운 눈 이미지를 합성하여 자연스러운 이미지 또는 비디오를 제공할 수 있다.It can remove images reflected in the subject's eyes and protect privacy, while synthesizing new eye images to provide a natural image or video.

도 1은 본 개시의 일 실시예에 따른 시스템의 개념도이다.
도 2는 본 개시의 일 실시예에 따른 서버의 블록도이다.
도 3은 본 개시의 일 실시예에 따른 데이터를 게시하는 방법의 순서도이다.
도 4는 본 개시의 일 실시예에 따른 데이터를 게시하는 방법의 순서도이다.
도 5는 본 개시의 일 실시예에 따른 반사 영역이 존재하는지 여부를 결정하는 결정 신경망의 개념도이다.
도 6a는 본 개시의 일 실시예에 따른 데이터를 보정하는 네트워크의 개념도이다.
도 6c는 본 개시의 일 실시예에 따른 데이터를 보정하는 네트워크를 사용하여 데이터를 보정하는 개념도이다.
도 6b는 본 개시의 일 실시예에 따른 데이터를 보정하는 네트워크를 사용하여 데이터를 보정하는 개념도이다.
도 7a는 본 개시의 일 실시예에 따른 제1 생성기의 개념도이다.
도 7b는 본 개시의 일 실시예에 따른 제2 생성기의 개념도이다.
도 8은 본 개시의 일 실시예에 따른 데이터를 보정하는 네트워크의 일부의 개념도이다.
1 is a conceptual diagram of a system according to an embodiment of the present disclosure.
2 is a block diagram of a server according to an embodiment of the present disclosure.
3 is a flowchart of a method of posting data according to an embodiment of the present disclosure;
4 is a flowchart of a method of posting data according to an embodiment of the present disclosure.
5 is a conceptual diagram of a decision neural network for determining whether a reflection region exists according to an embodiment of the present disclosure.
6A is a conceptual diagram of a network for correcting data according to an embodiment of the present disclosure.
6C is a conceptual diagram of correcting data using a network for correcting data according to an embodiment of the present disclosure.
6B is a conceptual diagram of correcting data using a network for correcting data according to an embodiment of the present disclosure.
7A is a conceptual diagram of a first generator according to an embodiment of the present disclosure.
7B is a conceptual diagram of a second generator according to an embodiment of the present disclosure.
8 is a conceptual diagram of a part of a network for correcting data according to an embodiment of the present disclosure.

이하에서는 도면을 참조하여 본 개시에 대해 상세히 설명하도록 한다. 본 개시를 설명함에 있어서, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 개시의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그에 대해 상세한 설명은 생략한다. 덧붙여, 하기 실시예는 여러 가지 다른 형태로 변형될 수 있으며, 본 개시의 기술적 사상의 범위가 하기 실시예에 한정되는 것은 아니다. 오히려, 이들 실시예는 본 개시를 더욱 충실하고 완전하게 하고, 당업자에게 본 개시의 기술적 사상을 완전하게 전달하기 위하여 제공되는 것이다.Hereinafter, the present disclosure will be described in detail with reference to the drawings. In describing the present disclosure, if it is determined that a detailed description of a related known function or configuration may unnecessarily obscure the subject matter of the present disclosure, a detailed description thereof will be omitted. In addition, the following examples may be modified in various other forms, and the scope of the technical spirit of the present disclosure is not limited to the following examples. Rather, these embodiments are provided to more fully and complete the present disclosure, and to fully convey the technical spirit of the present disclosure to those skilled in the art.

본 개시에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 개시의 실시예의 다양한 변경(modifications), 균등물(equivalents), 및/또는 대체물(alternatives)을 포함하는 것으로 이해되어야 한다.It is to be understood that the techniques described in the present disclosure are not intended to be limited to specific embodiments, and include various modifications, equivalents, and/or alternatives of the embodiments of the present disclosure.

도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.In connection with the description of the drawings, like reference numerals may be used for like components.

본 개시에서, "가진다," "가질 수 있다," "포함한다," 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다. 본 개시에서, "A 또는 B," "A 또는/및 B 중 적어도 하나," 또는 "A 또는/및 B 중 하나 또는 그 이상"등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B," "A 및 B 중 적어도 하나," 또는 "A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는 (3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다.In the present disclosure, expressions such as “have,” “may have,” “include,” or “may include” indicate the presence of a corresponding characteristic (eg, a numerical value, function, operation, or component such as a part). and does not exclude the presence of additional features. In this disclosure, expressions such as “A or B,” “at least one of A and/and B,” or “one or more of A or/and B” may include all possible combinations of the items listed together. . For example, "A or B," "at least one of A and B," or "at least one of A or B" means (1) includes at least one A, (2) includes at least one B; Or (3) it may refer to all cases including both at least one A and at least one B.

본 개시에서 사용된 "제1," "제2," "첫째," 또는 "둘째,"등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다.As used in the present disclosure, expressions such as “first,” “second,” “first,” or “second,” may modify various elements, regardless of order and/or importance, and refer to one element. It is used only to distinguish it from other components, and does not limit the components.

어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 다른 구성요소(예: 제3 구성요소)가 존재하지 않는 것으로 이해될 수 있다.A component (eg, a first component) is "coupled with/to (operatively or communicatively)" to another component (eg, a second component) When referring to "connected to", it should be understood that the certain element may be directly connected to the other element or may be connected through another element (eg, a third element). On the other hand, when it is said that a component (eg, a first component) is "directly connected" or "directly connected" to another component (eg, a second component), the component and the It may be understood that other components (eg, a third component) do not exist between other components.

본 개시에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)," "~하는 능력을 가지는(having the capacity to)," "~하도록 설계된(designed to)," "~하도록 변경된(adapted to)," "~하도록 만들어진(made to)," 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성된(또는 설정된)"은 하드웨어적으로 "특별히 설계된(specifically designed to)" 것 만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서," A, B, 및 C를 수행하도록 구성된(또는 설정된) 모듈"은 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.The expression "configured to (or configured to)" as used in this disclosure depends on the context, for example, "suitable for," "having the capacity to" ," "designed to," "adapted to," "made to," or "capable of." The term “configured (or configured to)” may not necessarily mean only “specifically designed to” hardware. Instead, in some circumstances, the expression “a device configured to” may mean that the device is “capable of” with other devices or parts. For example, the phrase "a processor configured (or configured to perform) A, B, and C," a module configured (or configured to perform) A, B, and C," refers to a dedicated processor (eg, : embedded processor) or a generic-purpose processor (eg, CPU or application processor) capable of performing corresponding operations by executing one or more software programs stored in a memory device.

본 개시에 기재된 선행 문헌은 그 전체가 본 개시에 결합된다. 따라서, 본 개시에서 설명이 간략하게 된 내용은 선행 문헌을 통해 보충될 수 있다. Prior documents described in this disclosure are incorporated herein by reference in their entirety. Accordingly, the contents of which the description is simplified in the present disclosure may be supplemented through prior literature.

시스템system

도 1은 일 실시예에 따른 시스템(100)의 블록도이다. 시스템(100)은 단말기(110) 및 서버(120)를 포함할 수 있다. 서버(120)는 단말기(110)로부터 데이터를 수신하여 게시(post)해주는 서버일 수 있다. 일 실시예에서, 서버(120)는 소셜 네트워크 서비스를 제공하는 개체일 수 있다. 예를 들어, 서버(120)는 인스타그램, 페이스북, 카카오스토리 등 다양한 서비스 제공 업체일 수 있다. 일 실시예에서, “서버”는 컴퓨팅 시스템, 프로그램이 실행되고 있는 하드웨어, 하드웨어에서 실행되는 소프트웨어, 클라우드 서비스를 포함하며, 네트워크를 통해 다른 서버와 연결될 수 있다. 또한 “서버”는 사용자 또는 관리자의 요청에 의해 서비스를 제공하도록 구성된 시스템을 포함하고, 하나 이상의 응용 프로그램을 상호 협력적인 환경에서 운용하는 분산 처리 형태를 의미할 수 있다. “서버”는 프로세서, 스토리지 또는 데이터베이스, 통신 모듈 등의 하드웨어를 포함할 수 있다. 프로세서는 서버의 구성 요소를 관리하고 제어한다. 일 실시예에서, 프로세서는 ASICs(application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(microprocessors), 기타 기능 수행을 위한 임의의 형태의 프로세서 또는 컨트롤러일 수 있다. 스토리지는 서버의 동작을 위한 정보를 저장하도록 구성된다. 스토리지는 서버에서 구동되는 다수의 응용 프로그램(application program) 또는 애플리케이션(application), 프로세서가 읽어들일 수 있는 데이터들, 명령어들을 저장할 수 있다. 예를 들어, 스토리지는 HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, EPROM, 플래시 드라이브, 하드 드라이브, 네트워크를 이용한 클라우드 등과 같은 다양한 저장 공간을 포함할 수 있다. 서버는 인공 지능 모델을 포함할 수 있다. 일 실시예에서, 프로세서, 스토리지 및 스토리지에 저장된 코드의 조합에 의해 인공 지능 모델이 구현될 수 있다. 인공 지능 모델이란, 본 개시에서, 대량의 학습 데이터를 통해 인공 신경망(Artificial Neural Network, ANN)을 포함하는 학습 모델을 학습시켜 인공 신경망 내부의 파라미터를 최적화하고, 학습된 학습 모델을 이용하여 대화 시스템(도시하지 않음)의 동작에 관여하는 모델을 의미할 수 있다. 일 실시예에서 인공 지능 모듈(도시하지 않음)은 MRC(Machine Reading Comprehension)를 통해 학습될 수 있다. 일 실시예에서, 인공 지능 모듈에 사용되는 인공 신경망 모델은 합성곱 신경망(Convolutional Neural Network, CNN), 심층 신경망(Deep Neural Network, DNN), 순환 신경망(Recurrent Neural Network, RNN), 제한적 볼츠만 머신(Restricted Boltzmann Machine, RBM), 심층 신뢰 신경망(Deep Belief Network, DBN), 양방향 순환 신경망(Bidirectional Recurrent Deep Neural Network, BRDNN), 오토인코더(Autoencoder), 변이형 오토 인코더(Variational Auto Encoder, VAE) 또는 심층 Q-네트워크(Deep Q-Networks), 생성적 대립 신경망(Generative Adversarial Network, GAN), 등 중 적어도 어느 하나 또는 이들의 조합과 변형된 모델이 있으나, 전술한 예에 한정되지 않는다. 인공 지능 모듈은 본 개시의 출원 시점에서 웹 검색 등 종래 기술에 의해 구현될 수 있는 모든 인공 지능 신경망에 의해 구현될 수 있다. 1 is a block diagram of a system 100 according to one embodiment. The system 100 may include a terminal 110 and a server 120 . The server 120 may be a server that receives and posts data from the terminal 110 . In one embodiment, the server 120 may be an entity that provides a social network service. For example, the server 120 may be various service providers such as Instagram, Facebook, and Kakao Story. In an embodiment, a “server” includes a computing system, hardware on which a program is executed, software running on the hardware, and cloud services, and may be connected to other servers through a network. In addition, “server” may refer to a distributed processing type that includes a system configured to provide a service at the request of a user or administrator, and operates one or more application programs in a mutually cooperative environment. “Server” may include hardware such as a processor, storage or database, and communication module. The processor manages and controls the components of the server. In one embodiment, the processor includes application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, It may be micro-controllers, microprocessors, or any other type of processor or controller for performing other functions. The storage is configured to store information for the operation of the server. The storage may store a plurality of application programs or applications running in the server, data readable by the processor, and instructions. For example, storage includes various storage spaces such as hard disk drive (HDD), solid state disk (SSD), silicon disk drive (SDD), ROM, RAM, EPROM, flash drive, hard drive, cloud using network, etc. can do. The server may include an artificial intelligence model. In one embodiment, an artificial intelligence model may be implemented by a combination of a processor, storage, and code stored in the storage. An artificial intelligence model is, in the present disclosure, by learning a learning model including an artificial neural network (ANN) through a large amount of learning data to optimize the parameters inside the artificial neural network, and a conversation system using the learned learning model It may mean a model involved in the operation of (not shown). In an embodiment, the artificial intelligence module (not shown) may be learned through Machine Reading Comprehension (MRC). In one embodiment, the artificial neural network model used in the artificial intelligence module is a convolutional neural network (CNN), a deep neural network (DNN), a recurrent neural network (RNN), a constrained Boltzmann machine ( Restricted Boltzmann Machine (RBM), Deep Belief Network (DBN), Bidirectional Recurrent Deep Neural Network (BRDNN), Autoencoder, Variational Auto Encoder (VAE) or Deep Q-networks (Deep Q-Networks), generative adversarial networks (GAN), and at least any one or a combination thereof and a modified model, but is not limited to the above-described example. The artificial intelligence module may be implemented by any artificial intelligence neural network that may be implemented by prior art such as web search at the time of filing of the present disclosure.

단말기(110)는 디스플레이(115)를 포함한다. 단말기(110)는 디스플레이(115)를 통해 이미지 혹은 비디오를 사용자에게 보여줄 수 있다. 단말기(110)는 서버(120)가 제공하는 서비스를 통해 이미지 혹은 비디오를 다른 단말기(130, 140, 150)와 공유할 수 있다. 즉, 사용자는 단말기(110)에서 서버(120)가 제공하는 서비스에 이미지 또는 비디오를 업로드(upload) 또는 게시(post)하고, 서버(120)는 업로드되거나 게시된 이미지 또는 비디오를 서버(120)가 제공하는 서비스를 통해 다른 단말기(130, 140, 150)의 사용자에게 제공할 수 있다. 이미지 또는 비디오는 데이터 형태로 단말기(110, 130, 140, 150)와 서버(120) 사이에 주고받게 된다. The terminal 110 includes a display 115 . The terminal 110 may show an image or video to the user through the display 115 . The terminal 110 may share an image or video with other terminals 130 , 140 , and 150 through a service provided by the server 120 . That is, the user uploads or posts an image or video from the terminal 110 to the service provided by the server 120 , and the server 120 transmits the uploaded or posted image or video to the server 120 . It can be provided to users of other terminals 130 , 140 , and 150 through the service provided by . An image or video is exchanged between the terminals 110 , 130 , 140 , 150 and the server 120 in the form of data.

일 실시예에서, 단말기(110)의 사용자는 직접 제작한 컨텐츠(이미지 또는 비디오)를 서버(120)가 제공하는 서비스에 게시한다. 예를 들어, 사용자는 친구들과 함께 사진 또는 동영상을 촬영하거나, 기억에 남기고 싶은 장소, 순간 등을 촬영하여 서버(120)에 공유할 수 있다. 이 때, 사람의 얼굴이 촬영될 수 있다. 사람의 얼굴이 촬영되는 경우, 사람의 눈에 주변 환경이나 주위 사람들이 반사될 수 있다. 따라서, 촬영된 사람의 얼굴이 공유되는 경우, 촬영된 사람의 눈에 반사된 이미지도 공유될 수 있고, 사람의 눈을 확대하거나 또는 특정 기법으로 복원하는 경우 사용자 및 사용자 주위의 정보가 유출될 수 있다. 이러한 반사는 사용자의 눈의 각막에서 발생할 수 있고, 특히 배경이 어두운 홍채, 동공 등에서 주도적으로 발생할 수 있다. 물론 눈의 공막에서도 반사가 발생할 수 있다. 또한, 사람의 눈뿐 아니라, 거울, 유리 재질의 물건(예를 들어, 유리병) 등 물체가 반사되는 물체를 촬영하는 경우에 사용자 및 사용자 주위의 정보가 유출될 수 있다. In an embodiment, the user of the terminal 110 posts the content (image or video) directly produced by the server 120 to the service provided. For example, a user may take a picture or a video with friends, or capture a place, moment, etc. that they want to remember and share with the server 120 . In this case, a person's face may be photographed. When a person's face is photographed, the human eye may reflect the surrounding environment or surrounding people. Therefore, if the photographed person's face is shared, the image reflected by the photographed person's eyes may also be shared, and when the human eye is enlarged or restored by a specific technique, information about the user and the user may be leaked. have. Such a reflection may occur in the cornea of the user's eye, and in particular, may mainly occur in the iris, pupil, etc. with a dark background. Of course, reflexes can also occur in the sclera of the eye. In addition, when an object reflecting an object such as a mirror or a glass object (eg, a glass bottle) as well as human eyes is photographed, information about the user and the user's surroundings may be leaked.

서버(120)와 단말기(110) 사이의 네트워크의 통신 방식은 GSM(Global System for Mobile communication), CDMA(Code Division Multi Access), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced) 등), WLAN(Wireless LAN), Wi-Fi(Wireless-Fidelity), Wi-Fi(Wireless Fidelity) Direct, DLNA(Digital Living Network Alliance), WiBro(Wireless Broadband), WiMAX(World Interoperability for Microwave Access)에 따라 구축된 네트워크를 이용할 수 있으나, 이에 한정하는 것은 아니며 향후 개발될 모든 전송 방식 표준을 포함할 수 있다. 또한 네트워크의 통신 방식은 유/무선을 통하여 데이터를 주고받을 수 있는 것을 모두 포함할 수 있다. The communication method of the network between the server 120 and the terminal 110 is GSM (Global System for Mobile communication), CDMA (Code Division Multi Access), HSDPA (High Speed Downlink Packet Access), HSUPA (High Speed Uplink Packet Access) , LTE (Long Term Evolution), LTE-A (Long Term Evolution-Advanced), etc.), WLAN (Wireless LAN), Wi-Fi (Wireless-Fidelity), Wi-Fi (Wireless Fidelity) Direct, DLNA (Digital Living Network) Alliance), WiBro (Wireless Broadband), and WiMAX (World Interoperability for Microwave Access) may use a network established, but is not limited thereto, and may include all transmission method standards to be developed in the future. In addition, the communication method of the network may include both data transmission and reception via wired/wireless.

서버server

도 2는 본 개시의 일 실시예에 따른 서버(120)의 블록도이다. 서버(120)는 소셜 네트워크 서비스를 제공하는 서비스 프로바이더를 포함할 수 있다. 도 2를 참조하면, 서버(120)는 통신 모듈(121), 컨트롤러(122), 스토리지(123), 결정 신경망(124), 복원 신경망(125)을 포함한다. 서버(120)는 통신 모듈(121)을 통해 단말기(110)로부터 이미지 또는 동영상을 수신하고, 스토리지(123)에 저장하여 게시할 수 있다. 서버(120)의 게시에 의해, 이미지 또는 동영상을 보낸 사용자 단독 혹은 서버(120)의 모든 사용자가 동일한 이미지 또는 동영상을 공유할 수 있다. 통신 모듈(121)은 상술한 통신 방식을 통해 단말기와 정보를 주고받을 수 있다. 컨트롤러(122)는 서버(120)의 전반적인 동작을 제어하고, 기 입력된 명령어들의 집합(예를 들어, 소프트웨어) 또는 서버(120)를 제어하는 관리자의 입력에 의해 서버(120) 또는 서버(120)에 속한 여러 기능을 수행할 수 있다. 스토리지(123)는 명령어, 소프트웨어, 데이터 등을 저장할 수 있다. 스토리지(123)는 물리적인 저장 공간 또는 클라우드와 같은 네트워크 저장 공간을 포함할 수 있다. 2 is a block diagram of a server 120 according to an embodiment of the present disclosure. The server 120 may include a service provider that provides a social network service. Referring to FIG. 2 , the server 120 includes a communication module 121 , a controller 122 , a storage 123 , a decision neural network 124 , and a reconstructed neural network 125 . The server 120 may receive an image or video from the terminal 110 through the communication module 121 , store it in the storage 123 , and post it. By posting of the server 120 , only the user who sent the image or video or all users of the server 120 can share the same image or video. The communication module 121 may exchange information with the terminal through the above-described communication method. The controller 122 controls the overall operation of the server 120, and the server 120 or the server 120 by a set of previously input commands (eg, software) or an input of an administrator who controls the server 120 ) can perform several functions. The storage 123 may store commands, software, data, and the like. The storage 123 may include a physical storage space or a network storage space such as a cloud.

결정 신경망(124)은 수신한 데이터(예를 들어, 이미지 데이터, 동영상 데이터)를 분석 또는 해석하여 수신한 데이터를 보정할 필요가 있는지 판단할 수 있다. 일 실시예에서, 결정 신경망(124)은 이미지 데이터 또는 비디오 데이터로부터 사람의 눈을 검출하고, 사람의 눈에 반사된 영역이 있는지, 반사된 영역이 복원 가능한지 결정할 수 있다. 반사된 영역이란 홍채, 동공, 각막에 다른 장면(scene)이 반사된 영역을 의미할 수 있다. 실질적으로 반사가 각막에서 일어나더라도 이미지를 보면 홍채 또는 동공 위의 각막에 반사된 장면이 존재하는 경우가 대부분일 것이다. 이는 홍채, 동공이 어둡기 때문에 홍채, 동공 위의 각막에서 반사가 잘 일어나기 때문이다. 따라서, 본 개시에서 눈 이미지의 반사 영역이라고 하면, 홍채 또는 동공 위에 보이는 장면(홍채, 동공이 아닌 장면)을 포함할 수 있다. 보다 자세한 설명은 후술한다. The decision neural network 124 may determine whether it is necessary to correct the received data by analyzing or interpreting the received data (eg, image data, video data). In one embodiment, the decision neural network 124 may detect a human eye from image data or video data, and determine whether there is a reflected region of the human eye, and whether the reflected region is reconstructable. The reflected region may refer to a region in which another scene is reflected by the iris, the pupil, and the cornea. Even if the reflection actually occurs in the cornea, most of the cases in which the image is reflected by the cornea above the iris or pupil will be present. This is because the iris and pupil are dark, so reflection occurs well from the cornea above the iris and pupil. Therefore, in the present disclosure, when the reflection region of the eye image is referred to, a scene visible above the iris or pupil (a scene other than the iris and pupil) may be included. A more detailed description will be given later.

복원 신경망(125)은 이미지 데이터 또는 비디오 데이터로부터 사람의 눈에 반사된 영역을 제거하고 복원하여, 반사 영역이 없는 눈 이미지 또는 눈 동영상 데이터를 생성할 수 있다. 본 개시에서 반사 영역이 없는 눈 이미지 또는 동영상은, 홍채 또는 동공에서 반사 장면 없이 홍채, 동공의 이미지만이 제공되는 경우를 포함한다. 보다 자세한 설명은 후술한다.The reconstruction neural network 125 may generate an eye image or eye moving image data without a reflection area by removing and reconstructing the area reflected by the human eye from the image data or video data. In the present disclosure, the eye image or video without a reflection region includes a case in which only an image of the iris or pupil is provided without a reflection scene in the iris or pupil. A more detailed description will be given later.

데이터 보정 방법Data Calibration Method

도 3은 본 개시의 일 실시예에 따른 데이터를 게시하는 방법의 순서도이다. 일 실시예에서, 도 3에 개시된 순서도는 단말기(110) 및/또는 서버(120)에서 수행될 수 있다. 이하에서는 설명의 편의를 위해 서버(120)가 도 3에 개시된 순서도를 수행하는 것으로 설명한다. 3 is a flowchart of a method of posting data according to an embodiment of the present disclosure; In an embodiment, the flowchart shown in FIG. 3 may be performed in the terminal 110 and/or the server 120 . Hereinafter, for convenience of description, it will be described that the server 120 performs the flowchart shown in FIG. 3 .

도 3을 참조하면, 블록 S305에서 서버(120)는 데이터를 수신한다. 데이터는 이미지 데이터 및/또는 동영상 데이터를 포함한다. 블록 S310에서, 서버(120)는 데이터로부터 사람의 눈을 검출한다. 일 예로, 결정 신경망(124)이 데이터로부터 사람의 눈을 검출할 수 있다. Referring to FIG. 3 , in block S305 the server 120 receives data. The data includes image data and/or moving picture data. In block S310, the server 120 detects the human eye from the data. As an example, the decision neural network 124 may detect a human eye from the data.

일 실시예에서, 이미지 데이터 또는 비디오 데이터로부터 사람의 머리를 검출하고, 검출된 머리로부터 눈을 검출할 수 있다. 이와 다르게 영역 제안(region proposal) 방법으로 한 번에 눈을 검출할 수도 있다. 눈 검출은 머신 러닝 또는 딥 러닝 분야의 통상의 기술자에게 알려진 내용으로부터 용이하게 수행할 수 있는 기술을 이용하여 수행될 수 있다. 예를 들어, 한국 공개 특허 2021-0060554호와 같이 이미 다양한 방식으로 눈을 검출하는 방법이 공개되어 있다. In one embodiment, a human head may be detected from image data or video data, and an eye may be detected from the detected head. Alternatively, the region proposal method can detect eyes at once. Eye detection may be performed using techniques that can be easily performed from information known to those skilled in the art of machine learning or deep learning. For example, as in Korean Patent Publication No. 2021-0060554, methods for detecting eyes in various ways have already been disclosed.

본 개시에서는 다음과 다양한 실시예가 사용될 수 있다. 일 실시예에서, 객체 탐지(object detection)의 표식 검출(landmark detection)을 이용하여 눈 검출이 수행될 수 있다. 일 실시예에서, 머리, 눈으로 레이블링된 데이터를 이용하여 학습된 네트워크를 이용하여 이미지 데이터 또는 비디오 데이터로부터 사람의 머리를 검출하고, 검출된 머리로부터 눈을 검출할 수 있다. 일 실시예에서, 하르 분류기(Haar Cascade Classifier)를 이용하여 눈을 검출할 수 있다. 또 다른 실시예에서, 관심 영역(Region Of Interest, ROI)과 컨볼루션 신경망(CNN)을 이용한 방법을 사용할 수 있다. 또 다른 실시예에서, 주의 방법(attention mechanism)을 이용하여 눈을 한 번에 검출할 수 있다. 주의 방법은 예측해야 하는 결과(예를 들어, 눈의 위치나 검출)와 연관있는 부분을 판단하여 더 주의하여 보는 방법이다. 예를 들어, 학습을 통해 눈이 있을 것이라고 추정되는 부분 또는 특징에 가중치(attention score)를 주어 검출 능력을 향상시킬 수 있다. 예를 들어, 디코더에 입력 받은 반사 영역의 특징 맵을 입력하여 반사 영역에 보다 주의를 기울이도록 할 수 있다. 기존에 알려진 주의 모델(attention model)을 이용하여 수행될 수 있다. In the present disclosure, the following various embodiments may be used. In one embodiment, eye detection may be performed using landmark detection of object detection. In an embodiment, a human head may be detected from image data or video data using a network trained using data labeled as head and eyes, and eyes may be detected from the detected head. In an embodiment, the eye may be detected using a Haar Cascade Classifier. In another embodiment, a method using a region of interest (ROI) and a convolutional neural network (CNN) may be used. In another embodiment, an attention mechanism may be used to detect the eyes at once. The attention method is a method to look more carefully by judging a part related to a result to be predicted (eg, eye position or detection). For example, the detection ability may be improved by giving an attention score to a part or feature estimated to have an eye through learning. For example, by inputting a feature map of the reflective region input to the decoder, it is possible to pay more attention to the reflective region. This may be performed using a previously known attention model.

이러한 실시예로 눈 검출 방법이 제한되지 않으며 본 개시가 출원되는 시점에서 웹에서 검색되거나 통상의 기술자가 사용하는 다양한 눈 검출 기술이 사용될 수 있다.The eye detection method is not limited to this embodiment, and various eye detection techniques searched on the web or used by those skilled in the art at the time the present disclosure is filed may be used.

블록 S315에서, 서버(120) 또는 결정 신경망(124)은 반사 영역 복원의 확률(probability)을 구하여 반사 영역을 복원할 것인지 결정한다. 일 실시예에서 반사 영역은 사람의 눈(예를 들어 각막)에 반사된 물체가 존재하는 영역 또는 장면을 말한다. 예를 들어, 동공과 홍채 위의 각막에 반사 영역이 존재할 수 있다. 각막은 매우 얇고 투명하기 때문에, 사진이나 동영상으로 촬영해서 보는 경우 동공과 홍채에 반사 영역이 존재하는 것으로 보일 수 있다. 본 개시에서 반사 영역이 존재하거나 존재할 수 있는 영역은 각막 또는 동공과 홍채 위의 각막일 수 있다. In block S315, the server 120 or the decision neural network 124 determines whether to restore the reflection region by obtaining a probability of the reflection region restoration. In one embodiment, the reflective region refers to a region or scene in which an object reflected by a human eye (eg, a cornea) is present. For example, there may be reflective areas in the cornea over the pupil and iris. Because the cornea is very thin and transparent, it may appear that there are reflective areas in the pupil and iris when viewed in a photograph or video. In the present disclosure, the region in which the reflective region is or may be present may be the cornea or the cornea over the pupil and iris.

일 실시예에서 눈을 검출한 다음 반사 영역을 검출할 수 있다. 반사 영역이 검출된 경우 반사 영역을 복원할 것으로 결정할 수 있다. In one embodiment, after detecting the eye, the reflective region may be detected. If the reflective region is detected, it may be determined to restore the reflective region.

일 실시예에서, 반사 영역은 눈에서 각막 또는 동공과 홍채위의 각막을 먼저 검출하고, 그 다음 실제로 반사가 이루어진 반사 영역을 검출할 수 있다. 이 때, 반사 영역을 추출하거나 확대하지 않고 단지 반사 영역이 존재하는지 여부만을 검출할 수 있다. 각막의 검출은 객체 탐지(object detection)를 위한 신경망 및/또는 알고리즘을 사용할 수 있다. 예를 들어, 영역 제안 신경망(Region Proposal Network, RPN)을 포함하는 모델, YOLO 모델 등을 사용할 수 있다. RPN에서는 픽셀값이 급변하는 지점을 토대로 복수의 오브젝트 가능성 박스를 잡아 이로부터 각막 및/또는 반사 영역을 검출할 수 있다. 다른 실시예에서, 기 학습된 모델 및 데이터베이스를 이용하여 각막 및/또는 반사 영역을 검출할 수 있다. 예를 들어, 기 학습된 모델은 눈 이미지 데이터를 이용하여 눈, 각막 또는 동공과 홍채, 반사가 일어난 경우와 반사가 없는 경우의 데이터 세트를 통해 학습될 수 있다. 데이터베이스에는 눈 이미지 데이터를 이용하여 눈, 각막 또는 동공과 홍채, 반사가 일어난 경우와 반사가 없는 경우의 특징 벡터들이 학습되어 저장되어 있을 수 있다. 예를 들어, 수신한 데이터의 눈, 각막, 홍채, 동공 등의 특징 벡터를 구하여 기 저장된 특징 벡터와 비교하여 반사 영역을 검출할 수 있다. In one embodiment, the reflective region may first detect the cornea or the cornea above the pupil and iris in the eye, and then detect the reflective region where the reflection is actually made. In this case, it is possible to detect only whether the reflection area exists without extracting or expanding the reflection area. The detection of the cornea may use neural networks and/or algorithms for object detection. For example, a model including a Region Proposal Network (RPN), a YOLO model, or the like may be used. In RPN, it is possible to detect a cornea and/or a reflective area by grabbing a plurality of object likelihood boxes based on the point at which the pixel value changes rapidly. In another embodiment, the cornea and/or the reflective region may be detected using a pre-trained model and database. For example, the pre-trained model may be trained from a data set of eyes, corneas, pupils, and iris, with and without reflection using eye image data. In the database, the eye, cornea, or pupil and iris, and feature vectors in the case of reflection and no reflection are learned and stored using the eye image data. For example, a reflective region may be detected by obtaining a feature vector such as an eye, cornea, iris, or pupil of the received data and comparing it with a previously stored feature vector.

또한, 일 실시예에서, 입력 이미지로부터 반사를 인식하고 제거하도록 디자인된 신경망의 설계(network architecture)를 변형한 신경망을 이용하여 반사 영역의 복원 확률을 판단할 수 있다. 적어도 이 신경망은 동일한 눈 이미지이되 반사가 있는 눈 이미지, 반사가 없는 눈미지와 같이 짝을 이루는 이미지 데이터 세트를 이용하여 학습될 수 있다. Also, according to an embodiment, the restoration probability of the reflection region may be determined using a neural network modified from a network architecture designed to recognize and remove reflections from an input image. At least this neural network can be trained using paired image data sets, such as an identical eye image, but an eye image with and without reflection.

이미지 복원 방법과 유사하게, 반사 영역 복원 확률을 판단하는 결정 신경망(124)은 컨볼루션 인코더-디코더 신경망의 기초적인 설계를 적용하여 구현될 수 있다. 또한 결정 신경망(124)은 잔여 학습(residual learning)을 응용하여 구현될 수 있다. 잔여 학습은 계층(layer)이 많은 신경망에서, 일정 노드 마다 앞의 결과를 뒤에 붙여 gradient가 잘 전달되도록 하는 방식을 이용한다. 이를 잔여 매핑(residual mapping)이라고 하며 지름길 연결(shortcut connection 또는 skip connection)을 이용한다고 말하기도 한다. Similar to the image restoration method, the decision neural network 124 for determining the reflection region restoration probability may be implemented by applying the basic design of the convolutional encoder-decoder neural network. Also, the decision neural network 124 may be implemented by applying residual learning. Residual learning uses a method in which the gradient is transmitted well by attaching the previous result to the back for each predetermined node in a neural network with many layers. This is called residual mapping and is sometimes said to use a shortcut connection or skip connection.

보다 자세히, 단일 이미지로부터 반사를 제거하는 종래 기술이 많이 제안되어 왔다. 종래 기술에서는 사용하는 신경망의 구조가 다를 뿐 단일 이미지로부터 특징을 추출하여 반사 계층(reflection layer)과 전송 계층(transmission layer)을 분리하고, 이미지를 복원하여 반사를 제거한다. 예를 들어, 전송 계층은 의도하지 않는 반사가 제거되고 원하는 장면을 포함하는 계층이고, 반사 계층은 눈, 유리 등에 어떠한 장면이 반사된 계층을 의미할 수 있다.More specifically, a number of prior art techniques for removing reflections from a single image have been proposed. In the prior art, except that the structure of the neural network used is different, a reflection layer and a transmission layer are separated by extracting a feature from a single image, and the reflection is removed by restoring the image. For example, the transport layer may be a layer including a desired scene from which unintentional reflection is removed, and the reflective layer may mean a layer in which a certain scene is reflected on eyes, glass, or the like.

종래 기술인 Single Image Reflection Removal Using Deep Encoder-Decoder Network (Zhixiang chi et al.)은 특징 추출부(인코더), 전송 계층 복원부(디코더) 및 인코더와 디코더 사이에 배치되는 반사 복원/제거 신경망을 개시한다. 인코더는 입력 이미지로부터 특징을 추출하여 반사 계층과 전송 계층을 분리한다. 반사/복원 제거 신경망은 skip conncetion을 이용하는 신경망으로 반사를 학습하고 복원하도록 설계된다. 반사/복원 신경망은 전송 계층을 점진적으로 제거하여 오직 반사의 특징만을 보존할 수 있다. 디코더는 인코더로부터 수신한 특징과 반사 복원/제거 신경망으로부터 반사의 특징을 수신하여 전송 계층을 복원한다. 이 선행 문헌은 입력 이미지로부터 반사 계층과 전송 계층을 분리할 수 있음을 보여주기 위해 인용된 것일 뿐, 본 개시를 상기 선행 문헌에 개시된 내용으로 한정하기 위한 것이 아님이 이해될 것이다. 다른 많은 신경망 모델이 이미지로부터 반사 계층과 전송 계층을 분리하도록 설계될 수 있다. 상기 선행 문헌에 개시된 내용으로는 완전한 각막, 동공, 홍채의 복원이 수행될 수 없다.The prior art Single Image Reflection Removal Using Deep Encoder-Decoder Network (Zhixiang chi et al.) discloses a feature extraction unit (encoder), a transport layer restoration unit (decoder), and a reflection restoration/removal neural network disposed between the encoder and the decoder. . The encoder separates the reflective layer and the transport layer by extracting features from the input image. The reflex/recovery cancellation neural network is a neural network that uses skip conncetion and is designed to learn and restore reflexes. Reflective/reconstructive neural networks can only preserve the characteristics of reflections by progressively removing the transport layer. The decoder reconstructs the transport layer by receiving the feature received from the encoder and the feature of the reflection from the reflection reconstruction/removal neural network. It will be understood that this prior document is only cited to show that the reflective layer and the transport layer can be separated from the input image, and is not intended to limit the present disclosure to the contents disclosed in the prior document. Many other neural network models can be designed to separate the reflection layer and the transport layer from the image. Complete restoration of the cornea, pupil, and iris cannot be performed with the contents disclosed in the prior literature.

일 실시예에서, 반사 계층과 전송 계층을 분리하고, 반사의 특징만을 보존, 추출하는 신경망(예를 들어, 결정 신경망(124))을 사용하여 반사 영역의 복원 확률을 얻을 수 있다. 예를 들어, 반사/복원 신경망은 복수의 컨볼루션 계층과 복수의 디컨볼루션 계층을 연결하고, 잔여 학습을 수행하도록 설계될 수 있다. 예를 들어, 반사는 특징 벡터의 형태로 나타나고 각각은 확률을 의미할 수 있다. In one embodiment, the restoration probability of the reflection region may be obtained by using a neural network (eg, the decision neural network 124 ) that separates the reflection layer and the transport layer and preserves and extracts only the reflection characteristics. For example, the reflection/reconstruction neural network may be designed to connect a plurality of convolutional layers and a plurality of deconvolutional layers and perform residual learning. For example, reflections appear in the form of feature vectors, each of which may mean a probability.

입력 이미지에 반사가 존재하는 경우, 결정 신경망(124)의 출력을 체크하여 반사가 복원 가능한지 판단할 수 있다. 예를 들어, 반사가 존재하면, 결정 신경망(124)은 반사를 검출할 수 있다. 결정 신경망(124)은 검출된 반사로부터 복원이 가능한 반사의 특징들이 충분히 존재한다고 판정할 수 있다. 복원 가능성의 확률을 기초하여 서버(120)는 수신한 이미지의 눈 이미지 또는 반사 영역을 복원할 것인지 결정할 수 있다. 결정 신경(124)망은 최종 계층의 출력을 다음 신경망(예를 들어, 이미지 복원 신경망(125))으로 송신한다. When there is a reflection in the input image, it is possible to determine whether the reflection can be restored by checking the output of the decision neural network 124 . For example, if a reflection is present, the decision neural network 124 may detect the reflection. The decision neural network 124 may determine that there are sufficient characteristics of the reflex that can be reconstructed from the detected reflex. Based on the probability of the restoration possibility, the server 120 may determine whether to restore the eye image or the reflection region of the received image. The decision neural network 124 transmits the output of the final layer to the next neural network (eg, the image reconstruction neural network 125).

블록 325에서, 결정 신경망(124)이 반사 영역이 복원 가능하지 않다고 판단하는 것에 대응하여, 서버(120)는 수신한 데이터를 게시한다. 이에 따라, 데이터를 송신한 단말기(110) 및 다른 단말기(130, 140, 150)는 게시된 데이터에 해당하는 이미지 또는 동영상을 공유할 수 있다. In block 325, in response to the decision neural network 124 determining that the reflective region is not recoverable, the server 120 posts the received data. Accordingly, the terminal 110 and other terminals 130 , 140 , and 150 that have transmitted the data may share an image or a video corresponding to the posted data.

블록 S320에서, 반사 영역이 복원 가능하다고 판단하는 것에 대응하여, 서버(120) 또는 복원 신경망(125)은 반사 영역을 복원한다. 결정 신경망(124)이 반사 영역이 복원 가능하다고 판단하는 것에 대응하여 최종 계층의 출력(예를 들어, 특징 맵)을 복원 신경망(125)에 송신한다. 일 실시예에서 반사 영역의 복원은 눈에 반사된 이미지를 영구적으로 제거하여 각막 반사가 없는 눈으로 복원하는 것을 의미할 수 있다. 일 실시예에서, 각막 또는 홍채와 동공을 새롭게 생성하여 기존 데이터에 덮어씌워(overwrite) 새로운 각막 또는 홍채, 동공에 해당하는 데이터를 생성할 수 있다. 이에 따라, 각막 반사가 없는 눈을 포함하는 데이터를 획득할 수 있다. 반사 영역의 복원은 인공 지능을 이용한 네트워크, 모듈 등에 의해 수행될 수 있으며 추후에 자세히 설명한다. In block S320 , in response to determining that the reflective region is reconstructable, the server 120 or the reconstruction neural network 125 restores the reflective region. The decision neural network 124 transmits an output (eg, a feature map) of the final layer to the reconstruction neural network 125 in response to determining that the reflection region is reconstructable. In an embodiment, restoration of the reflective region may mean restoring an eye without corneal reflection by permanently removing the image reflected by the eye. In an embodiment, data corresponding to the cornea, iris, and pupil may be newly created by overwriting existing data by newly generating the cornea, iris, and pupil. Accordingly, data including an eye without corneal reflection may be obtained. The restoration of the reflection area may be performed by a network, module, etc. using artificial intelligence, and will be described in detail later.

블록 S325에서, 서버(120)는 수신한 데이터에서 반사 영역을 복원한 이미지 및/또는 동영상을 게시한다. 이에 따라, 데이터를 송신한 단말기(110) 및 다른 단말기(130, 140, 150)는 게시된 데이터에 해당하는 이미지 또는 동영상을 공유할 수 있다.In block S325, the server 120 publishes an image and/or a moving picture in which the reflection region is restored from the received data. Accordingly, the terminal 110 and other terminals 130 , 140 , and 150 that have transmitted the data may share an image or a video corresponding to the posted data.

도 4는 본 개시의 일 실시예에 따른 데이터를 게시하는 방법의 순서도이다. 일 실시예에서, 도 4에 개시된 순서도는 단말기(110) 및/또는 서버(120)에서 수행될 수 있다. 이하에서는 설명의 편의를 위해 서버(120)가 도 4에 개시된 순서도를 수행하는 것으로 설명한다. 4 is a flowchart of a method of posting data according to an embodiment of the present disclosure. In an embodiment, the flowchart shown in FIG. 4 may be performed in the terminal 110 and/or the server 120 . Hereinafter, for convenience of description, it will be described that the server 120 performs the flowchart shown in FIG. 4 .

도 4를 참조하면, 블록 S405에서 서버(120)는 데이터를 수신한다. 데이터는 이미지 데이터 및/또는 동영상 데이터를 포함한다. 블록 S410에서, 서버(120)는 수신한 데이터에 해당하는 이미지 및/또는 동영상을 게시한다. 이에 따라, 사용자는 자신이 업로드한 이미지 및/또는 동영상을 확인할 수 있다. 일 실시예에서, 블록 S410에서 게시된 이미지 및/또는 동영상을 업로드한 사용자의 계정 혹은 단말기에서만 확인하도록 서버(120)가 제어할 수 있다. 즉, 블록 S410에서 게시된 이미지 및/또는 동영상은 서버(120)의 다른 이용자들이 볼 수 없다. 이와 다르게, 블록 S410에서 게시된 이미지 및/또는 동영상을 데이터를 송신한 단말기 및 다른 단말기가 게시된 데이터에 해당하는 이미지 또는 동영상을 공유하도록 서버(120)가 제어할 수 있다.Referring to FIG. 4 , in block S405 the server 120 receives data. The data includes image data and/or moving picture data. In block S410, the server 120 posts an image and/or a video corresponding to the received data. Accordingly, the user may check the image and/or video uploaded by the user. In an embodiment, the server 120 may control to check only the user's account or terminal who uploaded the image and/or video posted in block S410 . That is, the image and/or video posted in block S410 cannot be viewed by other users of the server 120 . Alternatively, the server 120 may control the terminal that transmits the posted image and/or video data in block S410 and the other terminal to share the image or video corresponding to the posted data.

블록 S415에서 서버(120)는 데이터로부터 사람의 눈을 검출한다. 블록 S415는 블록 S310과 동일 또는 유사한 방법으로 사람의 눈을 검출할 수 있다. In block S415 the server 120 detects the human eye from the data. Block S415 may detect a human eye in the same or similar manner as block S310.

블록 S420에서, 서버(120)는 반사 영역 복원의 확률(probability)을 구하여 반사 영역을 복원할 것인지 결정한다. 블록 S420는 블록 S315와 동일 또는 유사한 방법으로 구현될 수 있다. 일 실시예에서 반사 영역은 사람의 눈(예를 들어 각막)에 반사된 물체가 존재하는 영역을 말한다. 예를 들어, 동공과 홍채 위의 각막에 반사 영역이 존재할 수 있다. 각막은 매우 얇기 때문에, 사진이나 동영상으로 촬영해서 보는 경우 동공과 홍채에 반사 영역이 존재하는 것으로 보일 수 있다. 본 개시에서 반사 영역이 존재하거나 존재할 수 있는 영역은 각막 또는 동공과 홍채 위의 각막일 수 있다. In block S420 , the server 120 determines whether to restore the reflective region by obtaining a probability of restoring the reflective region. Block S420 may be implemented in the same or similar manner as block S315. In an embodiment, the reflective region refers to a region in which an object reflected by a human eye (eg, a cornea) exists. For example, there may be reflective areas in the cornea over the pupil and iris. Because the cornea is very thin, it may appear that there are reflective areas in the pupil and iris when viewed as a photograph or video. In the present disclosure, the region in which the reflective region is or may be present may be the cornea or the cornea over the pupil and iris.

일 실시예에서 눈을 검출한 다음 반사 영역을 검출할 수 있다.In one embodiment, after detecting the eye, the reflective region may be detected.

블록 S425에서, 반사 영역이 복원 가능하지 않다고 판단하는 것에 대응하여, 서버(120)는 블록 S410에서 게시한 이미지 및/또는 동영상을 유지한다. 블록 S425에서 게시 유지된 이미지 및/또는 동영상을 데이터를 송신한 단말기 및 다른 단말기가 공유하도록 서버(120)가 제어할 수 있다. 블록 S410에서 게시된 이미지 및/또는 동영상을 업로드한 사용자의 계정 혹은 단말기에서만 확인하도록 서버(120)가 제어한 경우, 블록 S420에서 서버(120)가 반사 영역의 복원 가능성을 판별하고 복원 가능하지 않다고 판단하는 경우에만 다른 사용자들이 게시물을 확인할 수 있다. In block S425 , in response to determining that the reflective region is not recoverable, the server 120 maintains the image and/or video posted in block S410 . In block S425, the server 120 may control the posted and maintained image and/or video to be shared by the terminal that has transmitted the data and other terminals. If the server 120 controls to check only the account or terminal of the user who has uploaded the image and/or video posted in block S410, in block S420, the server 120 determines the restoration possibility of the reflective area and says that restoration is not possible. Other users can only see your post if you decide.

블록 S430에서, 반사 영역이 복원 가능하다고 판단하는 것에 대응하여, 서버(120)는 반사 영역을 복원한다. 일 실시예에서 반사 영역의 복원은 눈에 반사된 이미지를 영구적으로 제거하여 각막 반사가 없는 눈으로 복원하는 것을 의미할 수 있다. In block S430 , in response to determining that the reflective region is reconstructable, the server 120 restores the reflective region. In an embodiment, restoration of the reflective region may mean restoring an eye without corneal reflection by permanently removing the image reflected by the eye.

블록 S435에서, 각막 또는 홍채와 동공을 새롭게 생성하여 기존 데이터에 덮어씌워(overwrite) 새로운 각막 또는 홍채, 동공 데이터를 포함하는 눈 이미지를 생성할 수 있다. 이에 따라, 각막 반사가 없는 눈을 포함하는 데이터를 획득할 수 있다. 이를 이용하여, 블록 S405에서 수신한 데이터에서 눈의 반사가 제거되고 재구성된 전체 이미지/동영상 데이터를 획득할 수 있다. 반사 영역의 복원은 인공 지능을 이용한 네트워크, 모듈 등에 의해 수행될 수 있으며 추후에 자세히 설명한다. In block S435, the cornea or iris and pupil may be newly created and overwrite existing data to generate an eye image including the new cornea or iris and pupil data. Accordingly, data including an eye without corneal reflection may be acquired. By using this, it is possible to obtain the entire image/video data reconstructed in which the eye reflection is removed from the data received in block S405. The restoration of the reflection area may be performed by a network, module, etc. using artificial intelligence, and will be described in detail later.

블록 S440에서, 블록 S410에서 게시한 이미지 및/또는 동영상을, S435에서 획득한 데이터에 해당하는 이미지 및/또는 동영상으로 교체한다. 블록 S440에서 교체된 이미지 및/또는 동영상을 데이터를 송신한 단말기 및 다른 단말기가 공유하도록 서버(120)가 제어할 수 있다. 블록 S410에서 게시된 이미지 및/또는 동영상을 업로드한 사용자의 계정 혹은 단말기에서만 확인하도록 서버(120)가 제어한 경우, 블록 S440에서 게시물을 교체한 다음, 다른 사용자들이 게시물을 확인할 수 있다. In block S440, the image and/or video posted in block S410 is replaced with an image and/or video corresponding to the data obtained in S435. In block S440, the server 120 may control the replaced image and/or video to be shared by the terminal that has transmitted the data and the other terminal. If the server 120 controls to check only the account or terminal of the user who uploaded the posted image and/or video in block S410, the post is replaced in block S440, and then other users can check the post.

결정 신경망decision neural network

도 5는 본 개시의 일 실시예에 따른 반사 영역이 존재하는지 여부를 결정하는 결정 신경망(124)의 개념도이다. 일 실시예에서, 결정 신경망(124)은 반사를 제거하는 네트워크(500)의 일부를 응용하여 구성될 수 있다. 네트워크(500)는 특징 추출 네트워크(510), 반사 제거/복원 네트워크(520) 및 이미지 복원 네트워크(530)을 포함할 수 있다. 네트워크(500)은 Single Image Reflection Removal Using Deep Encoder-Decoder Network (Zhixiang chi et al.)에 개시된 네트워크의 응용일 수 있다. 예를 들어, 결정 신경망(124)은 특징 추출 네트워크(510) 및 반사 제거/복원 네트워크(520)를 포함하도록 구성될 수 있다. 5 is a conceptual diagram of a decision neural network 124 that determines whether a reflection region exists according to an embodiment of the present disclosure. In one embodiment, the decision neural network 124 may be constructed by applying a portion of the network 500 that cancels reflections. The network 500 may include a feature extraction network 510 , a reflection cancellation/recovery network 520 , and an image restoration network 530 . The network 500 may be an application of the network disclosed in Single Image Reflection Removal Using Deep Encoder-Decoder Network (Zhixiang chi et al.). For example, the decision neural network 124 may be configured to include a feature extraction network 510 and a reflection cancellation/restore network 520 .

특징 추출 네트워크(510), 반사 제거/복원 네트워크(520) 및 이미지 복원 네트워크(530)는 각각 복수의 계층(layer)를 포함하고, 각 계층은 컨볼루션 계층을 포함할 수 있다. The feature extraction network 510 , the reflection cancellation/reconstruction network 520 , and the image restoration network 530 each include a plurality of layers, and each layer may include a convolutional layer.

일 실시예에서 특징 추출 네트워크(510)는 복수의 계층을 포함할 수 있다. 예를 들어, 특징 추출 네트워크(510)의 계층은 컨볼루션 계층일 수 있다. 특징 추출 네트워크(510)는 입력 이미지를 수신하여 복수의 특징맵을 생성할 수 있다. 입력 이미지는, 서버(120)가 수신하는 이미지 또는 추출된 눈 이미지를 포함할 수 있다. 특징 추출 네트워크(510)는 다양한 필터를 사용하여 입력이미지의 특징맵을 생성할 수 있다. 반사 제거/복원 네트워크(520)는 반사 계층(또는 반사 계층의 특징맵) 및 전송 계층(예를 들어, 반사 영역이 제거된 이미지를 생성하기 위한 계층 또는 전송 계층의 특징맵)을 생성할 수 있다. 이미지 복원 네트워크(530)는 반사 계층 및 전송 계층을 수신하여 반사 영역이 제거된 이미지(또는 반사 영역이 제거된 특징맵)를 생성할 수 있다. 본 개시의 결정 신경망(124)는 이미지 복원 네트워크(530)을 포함하지 않을 수 있다. 따라서 반사가 제거된 이미지의 특징맵을 생성하거나 사용하지 않을 수 있다. 예를 들어, 결정 신경망(124)은 반사만을 재구성할 수 있다. In one embodiment, the feature extraction network 510 may include a plurality of layers. For example, the layer of the feature extraction network 510 may be a convolutional layer. The feature extraction network 510 may receive the input image and generate a plurality of feature maps. The input image may include an image received by the server 120 or an extracted eye image. The feature extraction network 510 may generate a feature map of the input image using various filters. The reflection removal/recovery network 520 may generate a reflection layer (or a feature map of the reflection layer) and a transport layer (eg, a feature map of the layer or transport layer for generating an image from which the reflection region is removed). . The image restoration network 530 may receive the reflective layer and the transport layer to generate an image from which the reflective region is removed (or a feature map from which the reflective region is removed). The decision neural network 124 of the present disclosure may not include the image reconstruction network 530 . Therefore, it is possible to generate or not use the feature map of the image from which the reflection has been removed. For example, the decision neural network 124 may reconstruct only reflections.

일 실시예에서, 네트워크(500)를 학습시키는 과정에서, 반사 영역만을 포함하는 특징맵(또는 이에 대응하는 데이터, 파라미터, 이하 제1 출력이라고 한다)과 반사가 존재할 가능성(또는 이에 대응하는 데이터, 파라미터, 이하 제2 출력이라고 한다)을 생성하고 출력하도록 구성된다. 반사 제거/복원 네트워크(520)는 입력으로부터 점차적으로 전송 계층을 제거하여 반사의 특징만을 보존하도록 학습되어 반사 제거/복원 네트워크(520)의 제1 출력은 입력 이미지 중 반사 영역의 특징에 대응하는 데이터, 예를 들어 반사 영역의 특징맵을 포함할 수 있다. 반사 영역의 특징맵을 통해 반사를 재구성하고 예를 들어, 위치, 크기, 모양과 같은 특징을 획득할 수 있다. 이 반사 영역의 특징맵은 입력 이미지로부터 반사 영역을 분리하는데 사용될 수 있다. 제2 출력은 반사가 존재할 가능성을 가리키는 출력일 수 있다. 반사 제거/복원 네트워크(520)를 학습시키는 과정에서, 반사 제거/복원 네트워크(520)는 반사가 존재함을 학습할 수 있다. 반사 제거/복원 네트워크(520)는 입력 이미지에 반사가 존재하는 경우 반사의 확률을 출력할 수 있다. 예를 들어, 미리 설정된 기준치(threshold)에 의해 반사의 확률과 비교하여 반사 제거/복원 네트워크(520)는 입력 이미지에 반사가 존재한다고 결정할 수 있다. 예를 들어, 기준치는 50%일 수 있다. 즉, 결정 신경망(124)은 반사의 확률에 기초하여 입력 이미지에 반사가 존재하는지 판정할 수 있다. 결정 신경망(124)이 반사 영역이 존재한다고 판정하는 것에 대응하여, 입력 이미지 및 반사 제거/복원 네트워크(520)의 제2 출력이 복원 신경망(125)에 제공될 수 있다. In an embodiment, in the process of training the network 500 , a feature map including only a reflection region (or data corresponding thereto, a parameter, hereinafter referred to as a first output) and a possibility that reflection exists (or data corresponding thereto, parameter, hereinafter referred to as a second output) and output. The reflection cancellation/restore network 520 is trained to preserve only the reflection characteristics by gradually removing the transport layer from the input, so that the first output of the reflection removal/recovery network 520 is data corresponding to the characteristics of the reflection region in the input image. , for example, a feature map of the reflection region. Reflection can be reconstructed through the feature map of the reflective region and features such as position, size, and shape can be obtained. The feature map of this reflective region can be used to separate the reflective region from the input image. The second output may be an output indicating the likelihood that a reflection is present. In the process of learning the reflection cancellation/restore network 520 , the reflection cancellation/restore network 520 may learn that the reflection exists. The reflection cancellation/recovery network 520 may output the probability of reflection if reflection is present in the input image. For example, by comparing the probability of the reflection by a preset threshold, the reflection cancellation/recovery network 520 may determine that there is a reflection in the input image. For example, the reference value may be 50%. That is, the decision neural network 124 may determine whether a reflection is present in the input image based on the probability of the reflection. In response to the decision neural network 124 determining that a reflection region exists, an input image and a second output of the reflection cancellation/recovery network 520 may be provided to the reconstruction neural network 125 .

눈 이미지 복원 네트워크eye image restoration network

도 6a는 본 개시의 일 실시예에 따른 데이터를 보정하는 네트워크(600)의 개념도이다. 일 실시예에 있어서, 네트워크(600)는 도 2의 복원 신경망(125)에 해당할 수 있다. 네트워크(600)는 생성적 대립 신경망(Generative Adversarial Network, GAN), GAN을 변형/응용한 신경망(예를 들어, style GAN, Conditional GAN, Cycle GAN, Deep Convolution GAN, ExGAN, 등) 또는 이의 적어도 일부일 수 있으나 이러한 예시에 제한되지 않고, 입력으로부터 이미지를 생성할 수 있는 신경망은 본 개시의 실시예에 포함될 수 있다. 서버(120)는 네트워크(600)를 실행하도록 구성될 수 있다. 6A is a conceptual diagram of a network 600 for correcting data according to an embodiment of the present disclosure. In an embodiment, the network 600 may correspond to the reconstructed neural network 125 of FIG. 2 . The network 600 is a generative adversarial network (GAN), a neural network modified / applied to the GAN (eg, style GAN, Conditional GAN, Cycle GAN, Deep Convolution GAN, ExGAN, etc.) or at least a part thereof However, the example is not limited thereto, and a neural network capable of generating an image from an input may be included in an embodiment of the present disclosure. Server 120 may be configured to run network 600 .

네트워크(600)는 생성기(Generator)와 판별기(discriminator)가 경쟁하면서 실제와 가까운 이미지, 동영상, 음성 등을 자동으로 만들어 내는 신경망일 수 있다. GAN은 입력(예를 들어, 이미지, 노이즈, 벡터 등)을 수신하여 이로부터 데이터를 생성하는 생성기와 생성기로부터 입력된 데이터를 구분하는 판별기를 포함한다. 생성기는 가짜 예제를 만들어 판별모델을 최대한 속일 수 있도록 학습된다. 판별기는 가짜 예제와 실제 예제를 최대한 정확하게 구분할 수 있도록 학습된다. 동영상은 복수의 이미지 프레임의 연속된 재생이므로 이하에서는 네트워크(600)가 이미지를 생성하고 판별하는 것으로 설명하지만, 네트워크(600)가 동영상을 생성하고 판별하도록 구성될 수 있다는 것은 통상의 기술자에게 자명하다고 이해될 것이다. 또, 생성기(Generator)와 판별기(discriminator)는 입력에 기초하여 다양한 신경망을 이용하여 새로운 이미지를 생성하도록 구성된다. The network 600 may be a neural network in which a generator and a discriminator compete to automatically generate an image, video, voice, etc. close to reality. The GAN includes a generator that receives an input (eg, image, noise, vector, etc.) and generates data therefrom, and a discriminator that distinguishes the data input from the generator. The generator is trained to deceive the discriminant model as much as possible by creating fake examples. The discriminator is trained to distinguish between fake and real examples as accurately as possible. Since a moving picture is a continuous playback of a plurality of image frames, the network 600 will be described below as generating and determining an image, but it is obvious to a person skilled in the art that the network 600 may be configured to generate and determine a moving picture. will be understood In addition, a generator and a discriminator are configured to generate a new image using various neural networks based on the input.

도 6a를 참조하면, 네트워크(600)는 두개의 생성기(620, 630)와 두개의 판별기(625, 635)를 포함할 수 있다. 발명의 편의를 위해 제1 생성기(620), 제2 생성기(630), 제1 판별기(625), 제2 판별기(635)라고 하고 설명한다. 도 6a에서, 제1 판별기(625)는 글로벌 판별기(Global discriminator), 제2 판별기(635)는 로컬 판별기(Local discriminator)로 도시된다. Referring to FIG. 6A , the network 600 may include two generators 620 and 630 and two discriminators 625 and 635 . For convenience of the invention, the first generator 620 , the second generator 630 , the first discriminator 625 , and the second discriminator 635 will be described. In FIG. 6A , a first discriminator 625 is shown as a global discriminator, and a second discriminator 635 is shown as a local discriminator.

도 6a를 참조하면, 서버(120)는 눈 이미지(610)로부터 반사 영역을 결정한다. 일 실시예에서, 네트워크(600)는 결정 신경망(124)의 최종 계층의 출력을 수신할 수 있다. 결정 신경망(124)의 최종 계층의 출력은 눈 이미지의 반사 특징(예를 들어, 특징 맵)을 포함할 수 있다. 네트워크(600)에서, 반사 영역의 추출은 반사 특징을 이용한 attention mechanism을 통해 눈 이미지로부터 반사 영역을 추출할 수 있다. 예를 들어, 눈 이미지(610)로부터 반사 영역을 추출하여 전체 눈 이미지로부터 마스킹된 이미지(도시되지 않음)와 반사 영역을 포함하는 마스킹 영역(614)을 획득할 수 있다. 또한, 반사 영역은 복수의 패치(616)를 포함할 수 있다. 패치(616)는 반사 영역의 전부 또는 일부를 구성하는 이미지를 포함할 수 있다. 일 실시예에서, 패치(616) 중 적어도 하나는 반사 영역만 포함할 수 있다. 패치(616) 중 적어도 하나는 반사 영역뿐 아니라 반사가 없는 동공의 일부 이미지도 포함할 수 있다. 도 6a의 마스킹 영역(614) 또는 패치(616)는 직사각형으로 도시되었으나, 그 형상은 다양할 수 있다. 예를 들어, 반사 영역의 외곽선을 따라 추출되거나, 원형, 정사각형 등 다양하게 정해질 수 있다. 도 6a는 도면을 통해 설명을 하기 위한 예시적인 것으로, 반사 영역 또는 패치(616)의 추출은 네트워크(600) 내에서 수행되는 것으로 반사 특징을 포함하는 계층이나 반사 특징 벡터 등을 포함할 수 있다. 즉, 네트워크(600)는 학습을 통해 가장 적합한 형태로 반사 영역을 추출할 수 있다. Referring to FIG. 6A , the server 120 determines a reflection area from the eye image 610 . In one embodiment, network 600 may receive the output of the final layer of decision neural network 124 . The output of the final layer of decision neural network 124 may include reflective features (eg, feature maps) of the eye image. In the network 600 , the reflective region may be extracted from the eye image through an attention mechanism using a reflective feature. For example, a reflective region may be extracted from the eye image 610 to obtain a masked image (not shown) and a masking region 614 including the reflective region from the entire eye image. Also, the reflective region may include a plurality of patches 616 . The patch 616 may include an image that makes up all or part of the reflective area. In one embodiment, at least one of the patches 616 may include only reflective regions. At least one of the patches 616 may include a reflective area as well as some image of the pupil without reflection. Although the masking area 614 or patch 616 in FIG. 6A is shown as a rectangle, its shape may vary. For example, it may be extracted along the outline of the reflection area, or may be determined in various ways, such as a circle or a square. FIG. 6A is an example for explanation through the drawings, and extraction of the reflective region or patch 616 is performed within the network 600 and may include a layer including a reflective feature or a reflective feature vector. That is, the network 600 may extract the reflection region in the most suitable form through learning.

일 실시예에서, 마스킹 영역(614)은 반사 영역만으로 구성되거나, 반사 영역 외에 다른 구역(예를 들어, 눈꺼풀, 눈썹, 홍채, 동공, 공막 등) 포함하는 영역을 포함하거나, 반사 영역을 포함하는 각막 또는 홍채 및 동공, 공막 중 적어도 하나의 영역 전체로 구성될 수 있다. 마스킹 영역(614)은 사용자가 설정할 수 있고 또는 서버(120)나 네트워크(600)가 설정할 수 있다. In one embodiment, masking region 614 consists of only reflective regions, includes regions that include regions other than reflective regions (eg, eyelids, eyebrows, iris, pupil, sclera, etc.), or includes reflective regions. The cornea or the iris, the pupil, and at least one of the sclera may be configured as a whole. The masking area 614 may be set by a user or may be set by the server 120 or the network 600 .

제1 생성기(620)에 눈 이미지(610)를 입력한다. 제1 생성기(620)는 제2 생성기(630)와 연결(concatenate)되어, 제2 생성기(630)로부터 정보를 수신하고 이 정보와 눈 이미지(610)를 이용하여 눈 전체 이미지를 복원할 수 있다. 제1 생성기(620)는 skip connection과 spatial transfer를 이용하는 신경망을 포함하도록 구성될 수 있다. 정보는 반사 영역과 관련된 정보를 포함한다. 정보는 제2 생성기(630)에서 생성한 반사 특징, 반사 계층이 제거된 이미지, 반사 영역이 제거되고 재구성된 각막, 홍채, 동공 이미지 중 적어도 하나를 포함할 수 있다. An eye image 610 is input to the first generator 620 . The first generator 620 may be concatenated with the second generator 630 to receive information from the second generator 630 and reconstruct the entire eye image using the information and the eye image 610 . . The first generator 620 may be configured to include a neural network using skip connection and spatial transfer. The information includes information related to the reflective region. The information may include at least one of a reflective feature generated by the second generator 630 , an image from which a reflective layer is removed, and a cornea, iris, and pupil image from which the reflective region is removed and reconstructed.

즉 예를 들어, 제1 생성기(620)는 눈 이미지(610)와 제2 생성기(630)로부터 재구성된 이미지를 합성하여 반사 영역이 제거된 눈 이미지를 재구성할 수 있다. 또는, 제1 생성기(620)는 눈 이미지(610)로부터 특징을 추출하고 제2 생성기(630)로부터 수신된 특징을 이용하여, 반사 영역이 제거된 눈 이미지를 재구성할 수 있다.That is, for example, the first generator 620 may reconstruct the eye image from which the reflection region is removed by synthesizing the eye image 610 and the image reconstructed from the second generator 630 . Alternatively, the first generator 620 may extract a feature from the eye image 610 and reconstruct the eye image from which the reflection region is removed by using the feature received from the second generator 630 .

다른 실시예에서, 제1 생성기(620)는 제2 생성기(630)으로부터 정보를 받지 않고 독자적으로 학습을 통해 마스킹된 부위를 채워 눈 전체의 이미지를 복원하도록 구성될 수도 있다. 예를 들어, 제1 생성기(620)는 반사 영역이 존재하지 않는 나머지 각막, 동공, 홍채 영역에 기초하여 마스킹된 반사 영역을 복원하도록 학습되거나 구성될 수 있다.In another embodiment, the first generator 620 may be configured to reconstruct the image of the entire eye by filling in the masked region through learning independently without receiving information from the second generator 630 . For example, the first generator 620 may be trained or configured to reconstruct the masked reflective region based on the remaining corneal, pupil, and iris regions in which the reflective region does not exist.

일 실시예에서, 제1 생성기(620)에 눈 이미지(610) 대신 마스킹된 이미지(도시되지 않음)를 입력할 수 있다. 제1 생성기(620)는 제2 생성기(630)와 연결(concatenate)되어, 제2 생성기(630)로부터 정보를 수신하고 이 정보와 눈 이미지(610)를 이용하여 눈 전체 이미지를 복원할 수 있다. 마스킹된 이미지(도시되지 않음)는 각막 전체가 마스킹되거나, 반사 영역만이 마스킹되거나, 반사 영역 및 각막의 일부가 마스킹될 수 있다. 제1 생성기(620)는 학습을 통해 마스킹된 부위를 채워 눈 전체의 이미지를 복원하도록 구성된다. 일 실시예에서, 제1 생성기(620)는 마스킹된 부분을 복원하는 것이므로 마스킹되지 않은 부분의 특징을 이용하도록 skip connection과 spatial transfer를 이용하는 신경망을 포함하도록 구성될 수 있다. In an embodiment, a masked image (not shown) may be input to the first generator 620 instead of the eye image 610 . The first generator 620 may be concatenated with the second generator 630 to receive information from the second generator 630 and reconstruct the entire eye image using the information and the eye image 610 . . In the masked image (not shown), the entire cornea may be masked, only the reflective region may be masked, or the reflective region and a portion of the cornea may be masked. The first generator 620 is configured to reconstruct an image of the entire eye by filling the masked region through learning. In an embodiment, since the first generator 620 is to reconstruct a masked portion, it may be configured to include a neural network using skip connection and spatial transfer to use the features of an unmasked portion.

제1 생성기(620)는 제2 생성기(630)으로부터 정보를 받지 않고 독자적으로 학습을 통해 마스킹된 부위를 채워 눈 전체의 이미지를 복원하도록 구성될 수도 있다. 예를 들어, 제1 생성기(620)는 반사 영역이 존재하지 않는 나머지 각막, 동공, 홍채 영역에 기초하여 마스킹된 반사 영역을 복원하도록 학습되거나 구성될 수 있다. The first generator 620 may be configured to reconstruct the image of the entire eye by filling the masked region through independent learning without receiving information from the second generator 630 . For example, the first generator 620 may be trained or configured to reconstruct the masked reflective region based on the remaining corneal, pupil, and iris regions in which the reflective region does not exist.

일 실시예에서, 제1 생성기(620)는 마스킹된 이미지(612) 및 눈 이미지(610) 양쪽을 다 입력으로 하여 눈 이미지를 복원(생성)할 수 있다. In an embodiment, the first generator 620 may reconstruct (generate) an eye image by inputting both the masked image 612 and the eye image 610 as inputs.

제1 판별기(625)는 제1 생성기(620)가 생성한 눈 이미지를 수신한다. 제1 판별기(625)는 눈 이미지(610)을 더 수신할 수 있다. 제1 판별기(625)는 학습 데이터로 기 학습되어 입력받은 눈 이미지가 위조(예를 들어, 가짜 또는 진짜와 다르게 어색한 이미지인지)인지 판별할 수 있다. 학습 데이터는 다양한 눈 이미지를 포함하며, 진짜 눈 이미지와 생성된 가짜 눈 이미지를 포함할 수 있다. 제1 생성기(620)와 제1 판별기(625)는 상호 정보를 주고받으면서 학습을 진행하도록 구성된다. 즉, 제1 생성기(620)는 제1 판별기(625)을 속이기 위해 정교한 위조 이미지를 생성하도록 학습하고, 제1 판별기(625)은 생성된 이미지가 진짜 이미지인지 제1 생성기(620)가 생성한 이미지인지 판별하도록 학습한다. 제1 판별기(625)의 판별 결과는 제1 생성기(620)으로 전달되어 제1 생성기(620)와 제1 판별기(625)는 상호 경쟁을 하며 성능을 향상시킬 수 있다. The first discriminator 625 receives the eye image generated by the first generator 620 . The first discriminator 625 may further receive the eye image 610 . The first discriminator 625 may determine whether the eye image that has been pre-learned as the learning data and received is a forgery (eg, whether it is a fake or an awkward image different from the real one). The training data includes various eye images, and may include real eye images and generated fake eye images. The first generator 620 and the first discriminator 625 are configured to perform learning while exchanging information with each other. That is, the first generator 620 learns to generate a sophisticated fake image to deceive the first discriminator 625, and the first discriminator 625 determines whether the generated image is a real image or not. It learns to determine whether it is a created image. The determination result of the first discriminator 625 is transmitted to the first generator 620 , so that the first generator 620 and the first discriminator 625 compete with each other to improve performance.

제2 생성기(630)에 마스킹 영역(614) 및/또는 복수의 패치(616)를 입력한다. 제2 생성기(630)는 학습을 통해 마스킹된 영역을 복원/생성하도록 구성된다. 제2 생성기(630)는 제1 생성기(620)와 연결(concatenate)되어, 제1 생성기(620)로 정보를 송신할 수 있다. 제2 생성기(630)는 입력에 기초해 다양한 신경망을 통해 입력으로부터 다양한 정보(예를 들어, 특징, 샘플, 필터링된 계층, 채널, 파라미터, 등)를 생성할 수 있다. 즉, 제2 생성기(630)가 입력에 기초하여 또는 입력을 통해 마스킹된 영역을 복원/생성하는 과정에서 얻어지는 다양한 정보의 적어도 일부가 제1 생성기(620)로 송신하는 정보에 포함될 수 있다. 제2 생성기(630)는 마스킹 영역(614) 및/또는 복수의 패치(616)를 입력으로 하기 때문에, 제1 생성기(620)로 송신하는 정보는 마스킹 영역(614) 및/또는 복수의 패치(616)와 관련된 정보를 포함할 수 있다. The masking region 614 and/or the plurality of patches 616 are input to the second generator 630 . The second generator 630 is configured to reconstruct/create the masked region through learning. The second generator 630 may be concatenated with the first generator 620 to transmit information to the first generator 620 . The second generator 630 may generate various information (eg, features, samples, filtered layers, channels, parameters, etc.) from the inputs through various neural networks based on the inputs. That is, at least a part of the various information obtained in the process of the second generator 630 reconstructing/generating the masked region based on or through the input may be included in the information transmitted to the first generator 620 . Since the second generator 630 receives the masking area 614 and/or the plurality of patches 616 as inputs, the information transmitted to the first generator 620 includes the masking area 614 and/or the plurality of patches ( 616) and related information.

제2 판별기(635)는 제2 생성기(630)가 생성한 이미지를 수신한다. 제2판별기(635)는 마스킹 영역(614) 및/또는 복수의 패치(616)를 더 수신할 수 있다. 제2 판별기(635)는 학습 데이터로 기 학습되어 입력받은 이미지가 위조(예를 들어, 가짜 또는 진짜와 다르게 어색한 이미지 인지)인지 판별할 수 있다. 학습 데이터는 다양한 각막, 홍채, 동공 등 반사 영역이 존재할 수 있는 이미지를 포함하며, 진짜 이미지와 생성된 가짜 이미지를 포함할 수 있다. 제2 생성기(630)와 제2 판별기(635)는 상호 정보를 주고받으면서 학습을 진행하도록 구성된다. 즉, 제2 생성기(630)는 제2 판별기(635)을 속이기 위해 정교한 위조 이미지를 생성하도록 학습하고, 제2 판별기(635)은 생성된 이미지가 진짜 이미지인지 제2 생성기(630)가 생성한 이미지인지 판별하도록 학습한다. 일 실시예에서, 제2 판별기(635)는 제2 생성기(630)가 생성한 이미지가 반사 영역을 포함하고 있는지 없는지를 판별하도록 학습될 수 있다. 예를 들어, 제2 판별기(635)는 제2 생성기(630)가 생성한 이미지가 반사 영역이 없고 진짜 각막, 홍채, 동공 등과 동일한 이미지인지 판별할 수 있다. 제2 판별기(635)의 판별 결과는 제2 생성기(630)으로 전달되어 제2 생성기(630)와 제2 판별기(635)는 상호 경쟁을 하며 성능을 향상시킬 수 있다. The second discriminator 635 receives the image generated by the second generator 630 . The second discriminator 635 may further receive the masking region 614 and/or the plurality of patches 616 . The second discriminator 635 may determine whether an image that has been previously learned as the learning data and received is a forgery (eg, whether it is a fake or an awkward image different from the real one). The training data includes images in which reflective regions such as various corneas, iris, and pupils may exist, and may include real images and generated fake images. The second generator 630 and the second discriminator 635 are configured to perform learning while exchanging information with each other. That is, the second generator 630 learns to generate a sophisticated fake image to deceive the second discriminator 635, and the second discriminator 635 determines whether the generated image is a real image. It learns to determine whether it is a created image. In an embodiment, the second discriminator 635 may be trained to determine whether the image generated by the second generator 630 includes a reflective region. For example, the second determiner 635 may determine whether the image generated by the second generator 630 is the same image as a real cornea, iris, or pupil without a reflective region. The determination result of the second discriminator 635 is transmitted to the second generator 630 so that the second generator 630 and the second discriminator 635 compete with each other to improve performance.

제1 생성기(620)는 입력된 눈 이미지의 스타일을 살려(예를 들어, AdaIN을이용) 전체 눈 이미지 또는 전체 홍채 및 동공을 생성하는데 집중하고 제2 생성기(630)는 반사 영역을 생성하는데 집중할 수 있다. 2개의 생성기를 사용하여 하나의 생성기를 이용하는 것과 비교할 때 더욱 정교한 눈 이미지를 생성하는 것이 가능하다. The first generator 620 concentrates on generating the entire eye image or the entire iris and pupil using the style of the input eye image (eg, using AdaIN), and the second generator 630 focuses on generating the reflection area. can It is possible to use two generators to generate more sophisticated eye images compared to using one generator.

제1 생성기(620), 제2 생성기(630), 제1 판별기(625), 제2 판별기(635)가 상기와 같이 학습을 통해 반사 영역이 없는 눈 이미지를 정교하게 생성하는 네트워크(600)가 구성될 수 있다. A network 600 in which the first generator 620, the second generator 630, the first discriminator 625, and the second discriminator 635 precisely generate an eye image without a reflective region through learning as described above. ) can be configured.

일 실시예에서, 네트워크(600)는 StyleGAN 또는 이를 변형한 네트워크를 적용하여 구현될 수 있다. 즉, 잠재 벡터가 학습 데이터셋과 비슷한 확률 분포를 갖도록 non-linear하게 매핑을 우선적으로 하고 매핑된 잠재 벡터를 이용하여, 입력된 눈 이미지와 유사한 특징을 갖는 눈 이미지를 생성하도록 네트워크(600)를 구현될 수 있다. 또, 제1 생성기(620) 또는 제2 생성기(630)는 정규화 기법, 예를 들어 AdaIN(Adaptive Instance Normalization)을 사용할 수 있다. 일 실시예에서, AdaIN은 제1 생성기(620)의 디컨볼루션 계층 앞에 위치하여 컨볼루션 레이어와 skip connection으로 정보를 수신할 수 있다. In an embodiment, the network 600 may be implemented by applying StyleGAN or a network modified therefrom. That is, the network 600 is configured to generate an eye image having characteristics similar to the input eye image by preferentially mapping the latent vector non-linearly so that the latent vector has a probability distribution similar to that of the training dataset, and using the mapped latent vector. can be implemented. In addition, the first generator 620 or the second generator 630 may use a normalization technique, for example, Adaptive Instance Normalization (AdaIN). In an embodiment, AdaIN may be located in front of the deconvolution layer of the first generator 620 to receive information through skip connection with the convolution layer.

제1 생성기(620)가 AdaIN을 사용하여 특징 맵의 정규 정보를 조절할 수 있다. 제2 생성기(630)가 AdaIN을 사용하여 각막, 동공, 홍채를 목표하는 스타일로 정규화할 수 있다. 입력 눈 이미지가 각 계층을 지나면서 스케일과 분산(variance)에 변화가 일어날 수 있다. 이를 방지하기 위해 정규화 기법을 각 계층에 사용한다. AdaIN은 channel-wise mean and variance라는 feature statistics를 전송함으로서 미래 공간상에서 입력 이미지의 스타일을 전송할 수 있다. The first generator 620 may adjust the regular information of the feature map using AdaIN. The second generator 630 may use AdaIN to normalize the cornea, pupil, and iris to a target style. As the input eye image passes through each layer, the scale and variance may change. To prevent this, a regularization technique is used for each layer. AdaIN can transmit the style of the input image in the future space by transmitting feature statistics called channel-wise mean and variance.

도 6b는 본 개시의 일 실시예에 따른 데이터를 보정하는 네트워크를 사용하여 데이터를 보정하는 개념도이다. 도 6b를 참조하면, 제1 및 제2 판별기(625, 635)는 제1 및 제2 생성기(620, 630) 각각을 학습시키기 위해 사용되는 구성요소이므로 실제 입력받은 이미지를 보정하여 사용자에게 제공할 때 사용되지 않을 수 있음을 알 수 있다. 결정 신경망(124)은 눈 이미지 데이터로부터 반사 계층과 전송 계층을 분리한다. 결정 신경망(124)이 반사 영역이 복원가능하다고 판단하는 것에 대응하여 결정 신경망(124)의 최종 계층의 출력은 복원 신경망(125)에 전달된다. 복원 신경망(125)은 최종 계층의 출력을 이용하여 눈 이미지(610)로부터 반사 영역을 추출한다. 눈 이미지(610)는 제1 생성기(620)에 입력되고, 반사 영역으로부터 획득한 마스킹 영역(614) 또는 패치(616)는 제2 생성기(630)에 입력된다. 제2 생성기(630)는 입력으로부터 각막, 동공, 홍채 등을 생성하고, 생성 도중에 획득한 정보를 제1 생성기(620)로 전송한다. 제1 생성기(610)는 수신한 눈 이미지(610) 및 정보를 이용하여 눈 이미지를 재구성하여 출력한다. 6B is a conceptual diagram of correcting data using a network for correcting data according to an embodiment of the present disclosure. Referring to FIG. 6B , the first and second discriminators 625 and 635 are components used to learn the first and second generators 620 and 630 , respectively, so the actual input image is corrected and provided to the user. It can be seen that it may not be used when The decision neural network 124 separates the reflection layer and the transport layer from the eye image data. The output of the final layer of the decision neural network 124 is transmitted to the reconstruction neural network 125 in response to the decision neural network 124 determining that the reflection region is reconstructable. The reconstructed neural network 125 extracts a reflection region from the eye image 610 using the output of the final layer. The eye image 610 is input to the first generator 620 , and the masking region 614 or patch 616 obtained from the reflective region is input to the second generator 630 . The second generator 630 generates a cornea, a pupil, an iris, etc. from the input, and transmits information acquired during generation to the first generator 620 . The first generator 610 reconstructs and outputs the eye image using the received eye image 610 and information.

도 6c는 본 개시의 일 실시예에 따른 데이터를 보정하는 네트워크의 개념도이다. 6C is a conceptual diagram of a network for correcting data according to an embodiment of the present disclosure.

도 6c를 참조하면, 제1 생성기(620)는 눈 전체 이미지를 생성하도록 구성되고, 제2 생성기(630)는 각막 이미지를 생성하도록 구성될 수 있다. 일 실시예에서, 제1 생성기(620)는 반사된 장면이 없는 전체적인 눈 이미지를 생성하도록 구성될 수 있다. 다른 실시예에서, 제1 생성기(620)는 각막을 제외한 전체 눈 이미지를 생성하도록 구성될 수 있다. 반사 영역의 복원은 제1 생성기(620)가 생성한 이미지와 제2 생성기(630)이 생성한 이미지를 합성하여 완전한 눈 이미지를 생성하는 것에 의해 수행될 수 있다. 최종 이미지와 눈 이미지(610)을 판별기로 전송하여 전체 신경망을 학습시킬 수 있다. Referring to FIG. 6C , the first generator 620 may be configured to generate an entire eye image, and the second generator 630 may be configured to generate a corneal image. In one embodiment, the first generator 620 may be configured to generate an overall eye image without a reflected scene. In another embodiment, the first generator 620 may be configured to generate an entire eye image excluding the cornea. The restoration of the reflection region may be performed by synthesizing the image generated by the first generator 620 and the image generated by the second generator 630 to generate a complete eye image. By transmitting the final image and the eye image 610 to the discriminator, the entire neural network can be trained.

도 7a는 본 개시의 일 실시예에 따른 제1 생성기(620)의 개념도이다. 도 7a는 예시적인 도면으로, 본 개시의 제1 생성기(620)가 본 도면 및 설명에 한정되는 것은 아니다. 7A is a conceptual diagram of a first generator 620 according to an embodiment of the present disclosure. 7A is an exemplary diagram, and the first generator 620 of the present disclosure is not limited to this drawing and description.

도 7a를 참조하면, 제1 생성기(620)는 인코더-디코더 설계 구조에 기초할 수 있다. 제1 생성기(620)는 동일한 수의 다운 샘플링 계층 및 업 샘플링 계층을 포함할 수 있다. 일 실시예에서, 다운 샘플링 계층은 인코더 구조에 업 샘플링 계층은 디코더 구조에 대응될 수 있다. 일 실시예에서, 다운 샘플링 계층은 4개의 계층(622a, 622b, 622c, 622d)을, 업 샘플링 계층은 4개의 대응 계층(626a, 626b, 626c, 626d)을 포함할 수 있다. 일 실시예에서, 다운 샘플링 계층은 인코더 구조에, 업 샘플링 계층은 디코더 구조에 대응될 수 있다. 제1 생성기(620)는 복수개, 예를 들어, 3개의 AdaIN(625a, 625b, 625c)을 더 포함할 수 있다. 계층(622a, 622b, 622c, 622d), 대응 계층(626a, 626b, 626c, 626d), AdaIN(625a, 625b, 625c)의 수는 예시적인 것으로 제1 생성기(620)를 구현할 때 변경가능하다. 계층(622a, 622b, 622c, 622d) 및 대응 계층(626a, 626b, 626c, 626d)은 각각 인코더, 디코더에서의 잠재 특징 맵을 포함할 수 있다. 계층(622a, 622b, 622c, 622d)과 대응 계층(626a, 626b, 626c, 626d)은 공간 정보 전송(spatial information transfer) 관계에 있다. AdaIN(625a, 625b, 625c)은 인스턴스 정규화를 위한 정보로 사용될 수 있다. 제1 생성기(620)는 계층과 대응 계층 사이에 병목 계층(628, bottleneck layer)를 더 포함할 수 있다Referring to FIG. 7A , the first generator 620 may be based on an encoder-decoder design structure. The first generator 620 may include the same number of down-sampling layers and up-sampling layers. In an embodiment, the down-sampling layer may correspond to the encoder structure and the up-sampling layer may correspond to the decoder structure. In one embodiment, the down-sampling layer may include four layers 622a, 622b, 622c, and 622d, and the up-sampling layer may include four corresponding layers 626a, 626b, 626c, 626d. In an embodiment, a down-sampling layer may correspond to an encoder structure, and an up-sampling layer may correspond to a decoder structure. The first generator 620 may further include a plurality of, for example, three AdaINs 625a, 625b, and 625c. The number of layers 622a, 622b, 622c, 622d, corresponding layers 626a, 626b, 626c, 626d, and AdaINs 625a, 625b, 625c are exemplary and can be changed when implementing the first generator 620 . Layers 622a, 622b, 622c, 622d and corresponding layers 626a, 626b, 626c, 626d may include latent feature maps at encoders and decoders, respectively. The layers 622a, 622b, 622c, and 622d and the corresponding layers 626a, 626b, 626c, and 626d have a spatial information transfer relationship. AdaINs 625a, 625b, and 625c may be used as information for instance normalization. The first generator 620 may further include a bottleneck layer 628 between the layer and the corresponding layer.

도 7b는 본 개시의 일 실시예에 따른 제2 생성기(630)의 개념도이다. 도 7b는 예시적인 도면으로, 본 개시의 제2 생성기(630)가 본 도면 및 설명에 한정되는 것은 아니다. 7B is a conceptual diagram of a second generator 630 according to an embodiment of the present disclosure. 7B is an exemplary diagram, and the second generator 630 of the present disclosure is not limited to this drawing and description.

도 7b를 참조하면, 제2 생성기(630)는 인코더-디코더 설계 구조에 기초할 수 있다. 제2 생성기(630)는 동일한 수의 다운 샘플링 계층 및 업 샘플링 계층을 포함할 수 있다. 일 실시예에서, 다운 샘플링 계층은 인코더 구조(632)에 업 샘플링 계층은 디코더 구조(636)에 대응될 수 있다. 일 실시예에서, 다운 샘플링 계층은 3개의 계층(632a, 632b, 632c)을 포함할 수 있다. 제2 생성기(630)의 디코더(636)는 인코더(632)의 거울 구조일 수 있다. 제2 생성기(630)는 인코더(632)와 디코더(636) 사이에 병목 계층(638, bottleneck layer)를 더 포함할 수 있다. 제1 생성기(620)의 병목 계층(628)은 제2 생성기의 병목 계층(638)과 연결(concatenate)되어 눈의 지역적 특징(local feature)를 수신할 수 있다. 병목 계층(628, 638)은 인코더 단계의 잠재 공간, 잠재 특징맵, 잠재 벡터 등을 포함하는 개념일 수 있다. 일 실시예에서, 제1 생성기(620)의 병목 계층(628)은 제2 생성기의 병목 계층(638)은 동일한 차원(dimension)을 가질 수 있다. 예를 들어, 제1 생성기(620)의 병목 계층(628)은 제2 생성기의 병목 계층(638)은 동일한 형상을 갖는 n-D 매트릭스로 이해될 수 있다. Referring to FIG. 7B , the second generator 630 may be based on an encoder-decoder design structure. The second generator 630 may include the same number of down-sampling layers and up-sampling layers. In one embodiment, the down-sampling layer may correspond to the encoder structure 632 and the up-sampling layer may correspond to the decoder structure 636 . In one embodiment, the down-sampling layer may include three layers 632a, 632b, 632c. The decoder 636 of the second generator 630 may be a mirror structure of the encoder 632 . The second generator 630 may further include a bottleneck layer 638 between the encoder 632 and the decoder 636 . The bottleneck layer 628 of the first generator 620 may be concatenated with the bottleneck layer 638 of the second generator to receive a local feature of the eye. The bottleneck layers 628 and 638 may be a concept including a latent space of an encoder stage, a latent feature map, a latent vector, and the like. In one embodiment, the bottleneck layer 628 of the first generator 620 may have the same dimension as the bottleneck layer 638 of the second generator. For example, the bottleneck layer 628 of the first generator 620 may be understood as an n-D matrix having the same shape as the bottleneck layer 638 of the second generator.

일 실시예에서 제1 생성기(620)는 전체 눈이미지를 복원하고 스타일을 생성하도록 구성될 수 있다. 제2 생성기(630)는 패치(616)을 학습하여 반사 특징을 추출하도록 구성될 수 있다. 제2 생성기(630)의 디코더(636)는 패치(616)로부터 반사를 제거한 이미지를 복원하도록 구성되므로, 제2 생성기(630)는 패치(616)들로부터 반사 관련 특징을 추출하도록 학습될 수 있다. 즉, 제2 생성기(630)의 병목 계층(638)은 반사 관련 특징맵, 반사가 제거된 특징맵 등을 포함할 수 있다. In one embodiment, the first generator 620 may be configured to reconstruct the entire eye image and generate a style. The second generator 630 may be configured to learn the patch 616 to extract reflective features. Since the decoder 636 of the second generator 630 is configured to reconstruct an image that has removed reflections from the patches 616 , the second generator 630 can be trained to extract reflection-related features from the patches 616 . . That is, the bottleneck layer 638 of the second generator 630 may include a reflection-related feature map, a feature map from which reflection is removed, and the like.

제1 생성기(620)의 병목 계층(628)은 제2 생성기의 병목 계층(638)과 연결(concatenate)되어 제1 생성기(620)는 전체 눈 이미지를 복원할 수 있다. 입력 이미지의 스타일을 유지하기 위하여 제1 생성기(620)는 skip connection과 AdaIN을 사용할 수 있다. The bottleneck layer 628 of the first generator 620 is concatenated with the bottleneck layer 638 of the second generator 620 so that the first generator 620 can reconstruct the entire eye image. In order to maintain the style of the input image, the first generator 620 may use skip connection and AdaIN.

제1 생성기에서, 인코더의 스타일 정보는 디코더에서 잠재 특징 맵(latent feature map)을 조정하는데 사용될 수 있다. 인코더 내의 잠재 특징 맵의 정보는 skip connection에 의해 디코더의 대응 계층으로 전달되고 잔여 학습이 수행될 수 있다. 그 다음, 디코더의 AdaIN에서 인스턴스 정규화를 위한 정보로 사용될 수 있다. 공간 정보 전송은 디코더로 공간 정보를 전달하기 위해 사용될 수 있다. 예를 들어, 스타일 정보는 전체적인 눈 이미지의 스타일 전달을 위해, 공간 정보는 국지적인(local) 정보 전달을 위해 사용될 수 있다. 따라서, 입력 눈 이미지(610)의 모든 특징들이 잘 전달되고 보존될 수 있다. In the first generator, the style information of the encoder may be used to adjust the latent feature map at the decoder. Information of the latent feature map in the encoder is transferred to the corresponding layer of the decoder by skip connection, and residual learning can be performed. Then, it can be used as information for instance normalization in AdaIN of the decoder. Spatial information transmission may be used to convey spatial information to a decoder. For example, the style information may be used to convey the style of the overall eye image, and the spatial information may be used to convey local information. Accordingly, all features of the input eye image 610 can be well conveyed and preserved.

제2 생성기(630)의 디코더(636)는 눈 이미지를 복원하는데 사용되지 않을 수 있다. 즉, 도 7b에 도시된 제2 생성기(630)은 판별기(635)와 함께 학습을 위해서 이용되고, 눈 이미지의 복원을 위해서 디코더(636)는 사용되지 않을 수 있다. The decoder 636 of the second generator 630 may not be used to reconstruct the eye image. That is, the second generator 630 shown in FIG. 7B may be used for learning together with the discriminator 635 , and the decoder 636 may not be used to restore the eye image.

도 8은 본 개시의 일 실시예에 따른 데이터를 보정하는 네트워크(700)의 일부의 개념도이다. 도 8을 참조하면, 네트워크(700)의 생략된 일부는 도 6a에 개시된 네트워크(600)와 동일할 수 있다. 네트워크(700)는 제1 판별기(625) 및 제2 판별기(635) 대신 제1 특징 추출기(725) 및 제2 특징 추출기(735)를 포함한다. 제1 특징 추출기(725)는 및 제2 특징 추출기(735)의 출력은 하나의 출력(진짜인지 가짜인지 판별하는 출력)을 제공하기 위해 연결된다. 연결된 출력으로부터 입력된 전체 눈 이미지가 진짜인지 가짜인지 판별하도록 학습된다. 제1특징 추출기(725)는 및 제2 특징 추출기(735)의 판별 결과를 제1 생성기(620) 및 제2 생성기(630)에 전달하여 네트워크(600)를 학습시킬 수 있다. 8 is a conceptual diagram of a portion of a network 700 for correcting data according to an embodiment of the present disclosure. Referring to FIG. 8 , an omitted portion of the network 700 may be the same as the network 600 illustrated in FIG. 6A . The network 700 includes a first feature extractor 725 and a second feature extractor 735 instead of a first discriminator 625 and a second discriminator 635 . The first feature extractor 725 and the output of the second feature extractor 735 are connected to provide one output (the output that determines whether it is real or fake). From the connected output, it is trained to determine whether the input full eye image is real or fake. The first feature extractor 725 and the second feature extractor 735 transmit the determination result to the first generator 620 and the second generator 630 to train the network 600 .

본 개시에서 이미지를 이용하여 눈 이미지를 보정하는 방법이 설명되었더라도, 이러한 방법 및 장치는 동영상 내의 눈에서 발생하는 반사 영역을 제거하고 재구성하는 방법에 적용될 수 있음은 통상의 기술자에게 이해될 것이다. Although a method for correcting an eye image using an image has been described in the present disclosure, it will be understood by those skilled in the art that such a method and apparatus can be applied to a method of removing and reconstructing a reflective region occurring in an eye in a moving picture.

본 개시는 각막, 홍채, 동공의 생성에 집중하고 있다. 즉, 모든 입력 이미지에서 반사 영역을 제거하는 것이 아니고 눈에서 발생하는 반사를 제거하는 것에 집중하고 있다. 따라서, 학습된 눈 이미지 생성 네트워크를 사용하여 반사 영역을 제거한 정교한 눈 이미지의 생성이 가능하다. This disclosure focuses on the creation of the cornea, iris, and pupil. In other words, instead of removing the reflective area from all input images, we are focusing on removing the reflection from the eye. Therefore, it is possible to generate a sophisticated eye image with the reflective region removed using the trained eye image generation network.

본 개시에서, 최종 목표, 서브 목표, 목표 등은 예시적인 것으로 본 개시는 특정한 목표를 유도하기 위한 대화 방법으로 해석될 수 있다. In the present disclosure, an end goal, a sub-goal, a goal, and the like are exemplary, and the present disclosure may be interpreted as a conversational method for inducing a specific goal.

이상에서 설명된 장치 및 방법은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 컨트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus and method described above may be implemented as a hardware component, a software component, and/or a combination of the hardware component and the software component. For example, devices and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable array (FPA), It may be implemented using one or more general purpose or special purpose computers, such as a programmable logic unit (PLU), microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For convenience of understanding, although one processing device is sometimes described as being used, one of ordinary skill in the art will recognize that the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that may include For example, the processing device may include a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as parallel processors.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록매체에 저장될 수 있다.The software may comprise a computer program, code, instructions, or a combination of one or more thereof, which configures a processing device to operate as desired or is independently or collectively processed You can command the device. The software and/or data may be any kind of machine, component, physical device, virtual equipment, computer storage medium or device, to be interpreted by or to provide instructions or data to the processing device. , or may be permanently or temporarily embody in a transmitted signal wave. The software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored in one or more computer-readable recording media.

본 개시의 설명된 실시예들은 또한 어떤 태스크들이 통신 네트워크를 통해 연결되어 있는 원격 처리 장치들에 의해 수행되는 분산 컴퓨팅 환경에서 실시될 수 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 로컬 및 원격 메모리 저장 장치 둘 다에 위치할 수 있다.The described embodiments of the present disclosure may also be practiced in distributed computing environments where certain tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 해당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and available to a person skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floppy disks. - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

컴퓨팅 장치는 유선 및/또는 무선 통신을 통한 원격 컴퓨터(들) 등의 하나 이상의 원격 컴퓨터로의 논리적 연결을 사용하여 네트워크화된 환경에서 동작할 수 있다. 원격 컴퓨터(들)는 워크스테이션, 서버컴퓨터, 라우터, 퍼스널 컴퓨터, 휴대용 컴퓨터, 마이크로프로세서-기반 오락 기기, 피어 장치 또는 기타 통상의 네트워크 노드일 수 있으며, 일반적으로 컴퓨팅 장치에 대해 기술된 구성요소들 중 다수 또는 그 전부를 포함한다. 논리적 연결은 근거리 통신망(LAN) 및/또는 더 큰 네트워크, 예를 들어, 원거리 통신망(WAN)에의 유선/무선 연결을 포함한다. 이러한 LAN 및 WAN 네트워킹 환경은 사무실 및 회사에서 일반적인 것이며, 인트라넷 등의 전사적 컴퓨터 네트워크(enterprise-wide computer network)를 용이하게 해주며, 이들 모두는 전세계 컴퓨터 네트워크, 예를 들어, 인터넷에 연결될 수 있다.A computing device may operate in a networked environment using logical connections to one or more remote computers, such as remote computer(s), via wired and/or wireless communications. The remote computer(s) may be workstations, server computers, routers, personal computers, portable computers, microprocessor-based entertainment devices, peer devices, or other common network nodes, generally comprising the components described for the computing device. includes many or all of Logical connections include wired/wireless connections to local area networks (LANs) and/or larger networks, eg, wide area networks (WANs). Such LAN and WAN networking environments are common in offices and companies, and facilitate enterprise-wide computer networks, such as intranets, all of which can be connected to a worldwide computer network, for example, the Internet.

이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described with reference to the limited drawings, those skilled in the art may apply various technical modifications and variations based on the above. For example, the described techniques are performed in a different order than the described method, and/or the described components of the system, structure, apparatus, circuit, etc. are combined or combined in a different form than the described method, or other components Or substituted or substituted by equivalents may achieve an appropriate result.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다. Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

100: 시스템 110: 단말기
115: 디스플레이 120: 서버
121: 통신 모듈 122: 컨트롤러
123: 스토리지 124: 결정 신경망
125: 복원 신경망 600: 네트워크
610: 눈 이미지 614: 마스킹 영역
616: 패치 620: 제1 생성기
625: 제1 판별기 630: 제2 생성기
635: 제2 판별기
100: system 110: terminal
115: display 120: server
121: communication module 122: controller
123: storage 124: decision neural network
125: reconstructed neural network 600: network
610: eye image 614: masking area
616: patch 620: first generator
625: first discriminator 630: second generator
635: second discriminator

Claims (22)

소셜 네트워크 서비스를 제공하는 서버가 데이터를 게시하는 방법으로,
상기 서버가 사용자 단말기로부터 눈 이미지 데이터를 포함하는 이미지 데이터 또는 동영상 데이터를 포함하는 제1 데이터를 수신하는 단계;
상기 제1 데이터로부터 제1 눈 이미지를 검출하는 단계;
상기 제1 눈 이미지를 분석하는 결정 신경망을 이용하여 상기 제1 눈 이미지에 반사된 장면이 있는지 판단하는 단계 - 상기 반사된 장면은 사람 이미지 또는 배경 이미지를 포함함 -;
상기 반사된 장면이 있다고 판단하는 것에 대응하여, 상기 반사된 장면이 제거된 제2 눈 이미지를 생성하는 단계;
상기 제1 데이터에 상기 제2 눈 이미지를 합성하여 상기 반사된 장면이 제거된 제2 데이터를 생성하는 단계; 및
상기 제2 데이터에 대응하는 이미지 또는 동영상을 게시하는 단계를 포함하는
데이터 게시 방법.
A method in which a server providing a social network service posts data,
receiving, by the server, image data including eye image data or first data including moving picture data from the user terminal;
detecting a first eye image from the first data;
determining whether there is a reflected scene in the first eye image using a decision neural network analyzing the first eye image, wherein the reflected scene includes a human image or a background image;
in response to determining that there is the reflected scene, generating a second eye image from which the reflected scene is removed;
generating second data from which the reflected scene is removed by synthesizing the second eye image with the first data; and
Posting an image or video corresponding to the second data
How to post data.
제1항에 있어서,
상기 반사된 장면이 제거된 상기 제2 눈 이미지를 생성하는 단계는,
상기 결정 신경망의 출력을 수신하고 이용하여 상기 제1 눈 이미지로부터 상기 반사된 장면을 추출하는 단계; 및
상기 제1 눈 이미지 및 상기 추출된 반사된 장면을 입력으로 하여 상기 반사된 장면이 제거된 제2 눈 이미지를 생성하는 단계를 포함하는
데이터 게시 방법.
According to claim 1,
The step of generating the second eye image from which the reflected scene is removed comprises:
receiving and using the output of the decision neural network to extract the reflected scene from the first eye image; and
and generating a second eye image from which the reflected scene is removed by inputting the first eye image and the extracted reflected scene as inputs.
How to post data.
제2항에 있어서,
상기 제1 눈 이미지 및 상기 추출된 반사된 장면을 입력으로 하여 상기 반사된 장면이 제거된 제2 눈 이미지를 생성하는 단계는,
상기 제1 눈 이미지를 입력으로 하여 반사된 장면이 없는 전체적인 눈 이미지를 생성하고, 상기 추출된 반사된 장면을 입력으로 하여 상기 반사된 장면이 제거된 국부적인 이미지를 생성하는 단계; 및
상기 전체적인 눈 이미지와 상기 국부적인 이미지를 합성하여 상기 제2 눈 이미지를 생성하는 단계를 포함하는,
데이터 게시 방법.
3. The method of claim 2,
generating a second eye image from which the reflected scene is removed by inputting the first eye image and the extracted reflected scene as inputs;
generating an overall eye image without a reflected scene by receiving the first eye image as an input, and generating a local image in which the reflected scene is removed by receiving the extracted reflected scene as an input; and
generating the second eye image by synthesizing the global eye image and the local image;
How to post data.
제2항에 있어서,
상기 제1 눈 이미지 및 상기 추출된 반사된 장면을 입력으로 하여 상기 반사된 장면이 제거된 제2 눈 이미지를 생성하는 단계는,
상기 제1 눈 이미지를 입력으로 하여 상기 제1 눈 이미지로부터 제1 정보를 생성하는 단계;
상기 추출된 반사된 장면을 입력으로 하여 제2 정보를 생성하는 단계; 및
상기 제1 정보와 상기 제2 정보에 기초하여 상기 제2 눈 이미지를 생성하는 단계를 포함하는,
데이터 게시 방법.
3. The method of claim 2,
generating a second eye image from which the reflected scene is removed by inputting the first eye image and the extracted reflected scene as inputs;
generating first information from the first eye image by receiving the first eye image as an input;
generating second information by using the extracted reflected scene as an input; and
generating the second eye image based on the first information and the second information;
How to post data.
제4항에 있어서,
상기 제1 눈 이미지를 입력으로 하여 상기 제1 눈 이미지로부터 제1 정보를 생성하는 단계와 상기 추출된 반사된 장면을 입력으로 하여 제2 정보를 생성하는 단계는 서로 다른 생성기에 의해 수행되고,
상기 제1 정보와 상기 제2 정보를 기초하여 상기 제2 눈 이미지를 생성하는 단계는 상기 제1 눈 이미지를 입력으로 하여 상기 제1 눈 이미지로부터 제1 정보를 생성하는 생성기에 의해 수행되는,
데이터 게시 방법.
5. The method of claim 4,
Generating the first information from the first eye image by taking the first eye image as an input and generating the second information by using the extracted reflected scene as an input are performed by different generators,
generating the second eye image based on the first information and the second information is performed by a generator that generates first information from the first eye image by receiving the first eye image as an input;
How to post data.
제2항에 있어서,
상기 제1 눈 이미지 및 상기 추출된 반사된 장면을 입력으로 하여 상기 반사된 장면이 제거된 제2 눈 이미지를 생성하는 단계는,
상기 제1 눈 이미지를 입력으로 하여 상기 제1 눈 이미지로부터 제1 특징맵을 생성하는 단계;
상기 추출된 반사된 장면을 입력으로 하여 제2 특징 맵을 생성하는 단계; 및
상기 제1 특징맵과 상기 제2 특징맵을 연결(concatenate)하여 상기 제2 눈 이미지를 생성하는 단계를 포함하는,
데이터 게시 방법.
3. The method of claim 2,
generating a second eye image from which the reflected scene is removed by inputting the first eye image and the extracted reflected scene as inputs;
generating a first feature map from the first eye image by receiving the first eye image as an input;
generating a second feature map by using the extracted reflected scene as an input; and
generating the second eye image by concatenating the first feature map and the second feature map;
How to post data.
제6항에 있어서,
상기 제1 특징맵과 상기 제2 특징맵은 동일한 차원(dimension)을 갖도록생성되는,
데이터 게시 방법.
7. The method of claim 6,
The first feature map and the second feature map are generated to have the same dimension,
How to post data.
제2항에 있어서,
상기 제1 눈 이미지로부터 상기 반사된 장면을 추출하는 단계는, 상기 결정 신경망의 출력을 수신하고 이용하여 주의 기법(attention mechanism)을 이용하여 수행되는,
데이터 게시 방법.
3. The method of claim 2,
The step of extracting the reflected scene from the first eye image is performed using an attention mechanism by receiving and using the output of the decision neural network,
How to post data.
제1항에 있어서,
상기 반사된 장면이 제거된 제2 눈 이미지를 생성하는 단계는
상기 결정 신경망의 출력을 수신하고 이용하여 상기 제1 눈 이미지로부터 상기 반사된 장면을 추출하는 단계;
상기 제1 눈 이미지로부터 상기 반사된 장면을 마스킹하여 마스킹된 이미지를 생성하는 단계; 및
상기 마스킹된 이미지 및 상기 추출된 반사된 장면을 입력으로 하여 상기 반사된 장면이 제거된 제2 눈 이미지를 생성하는 단계를 포함하는
데이터 게시 방법.
According to claim 1,
The step of generating a second eye image from which the reflected scene is removed includes:
receiving and using the output of the decision neural network to extract the reflected scene from the first eye image;
generating a masked image by masking the reflected scene from the first eye image; and
generating a second eye image from which the reflected scene is removed by inputting the masked image and the extracted reflected scene as inputs
How to post data.
제1항에 있어서,
상기 제1 데이터로부터 제1 눈 이미지를 검출하는 단계 이전에,
상기 제1 데이터에 대응하는 이미지 또는 동영상을 게시하는 단계를 더 포함하고,
상기 제2 데이터에 대응하는 이미지 또는 동영상을 게시하는 단계는 상기게시된 상기 제1 데이터에 대응하는 이미지 또는 동영상을 상기 제2 데이터에 대응하는 이미지 또는 동영상으로 교체하여 게시하는 단계를 포함하는
데이터 게시 방법.
According to claim 1,
Prior to detecting a first eye image from the first data,
Further comprising the step of posting an image or video corresponding to the first data,
Posting the image or video corresponding to the second data comprises the step of replacing the posted image or video corresponding to the first data with an image or video corresponding to the second data and posting it
How to post data.
제1항에 있어서,
상기 제1 눈 이미지를 분석하는 결정 신경망을 이용하여 상기 제1 눈 이미지에 반사된 장면이 있는지 판단하는 단계는,
상기 결정 신경망이 출력하는 상기 제1 눈 이미지에 상기 반사된 장면이 존재할 확률 및 기 설정된 임계치(threshold)에 기초하여 판단하는 단계를 포함하는,
데이터 게시 방법.
According to claim 1,
The step of determining whether there is a scene reflected in the first eye image using a decision neural network that analyzes the first eye image includes:
Comprising the step of determining based on the probability that the reflected scene exists in the first eye image output by the neural network and a preset threshold,
How to post data.
소셜 네트워크 서비스를 제공하도록 구성된 데이터 게시 장치로,
사용자 단말기로부터 눈 이미지 데이터를 포함하는 이미지 데이터 또는 동영상 데이터를 포함하는 제1 데이터를 수신하도록 구성된 통신 모듈;
상기 제1 데이터로부터 제1 눈 이미지를 검출하고 상기 제1 눈 이미지를 분석하여 상기 제1 눈 이미지에 반사된 장면이 있는지 판단하도록 구성된 결정 신경망 - 상기 반사된 장면은 사람 이미지 또는 배경 이미지를 포함함 -;
상기 결정 신경망의 출력을 수신하고 상기 출력에 기초하여 상기 반사된 장면이 제거된 제2 눈 이미지를 생성하고, 상기 제1 데이터에 상기 제2 눈 이미지를 합성하여 상기 반사된 장면이 제거된 제2 데이터를 생성하도록 구성된 복원 신경망;
상기 제2 데이터에 대응하는 이미지 또는 동영상을 게시하도록 구성된 컨트롤러; 및
상기 제1 데이터 및 상기 제2 데이터를 저장하고, 상기 제1 데이터 및 상기 제2 데이터의 삭제가 가능하도록 구성된 스토리지를 포함하는,
데이터 게시 장치.
A data posting device configured to provide a social network service, comprising:
a communication module configured to receive image data including eye image data or first data including moving picture data from the user terminal;
a decision neural network configured to detect a first eye image from the first data and analyze the first eye image to determine if there is a reflected scene in the first eye image, wherein the reflected scene comprises a human image or a background image -;
receiving the output of the neural network, generating a second eye image from which the reflected scene is removed based on the output, and synthesizing the second eye image with the first data to remove the reflected scene a reconstructed neural network configured to generate data;
a controller configured to post an image or video corresponding to the second data; and
a storage configured to store the first data and the second data, and to enable deletion of the first data and the second data;
data posting device.
제12항에 있어서,
상기 복원 신경망은,
상기 결정 신경망의 출력에 기초하여 상기 제1 눈 이미지로부터 상기 반사된 장면을 추출하도록 구성되고,
상기 제1 눈 이미지 및 상기 추출된 반사된 장면에 기초하여 상기 반사된 장면이 제거된 제2 눈 이미지를 생성하도록 구성된 생성기를 포함하는,
데이터 게시 장치.
13. The method of claim 12,
The reconstructed neural network is
and extract the reflected scene from the first eye image based on an output of the decision neural network;
a generator configured to generate a second eye image with the reflected scene removed based on the first eye image and the extracted reflected scene;
data posting device.
제13항에 있어서,
상기 생성기는,
상기 제1 눈 이미지를 입력으로 하여 반사된 장면이 없는 전체적인 눈 이미지를 생성하도록 구성된 제1 생성기; 및
상기 추출된 반사된 장면을 입력으로 하여 상기 반사된 장면이 제거된 국부적인 이미지를 생성하도록 구성된 제2 생성기를 포함하고,
상기 전체적인 눈 이미지와 상기 국부적인 이미지를 합성하여 상기 제2 눈 이미지를 생성하도록 구성된,
데이터 게시 장치.
14. The method of claim 13,
The generator is
a first generator configured to receive the first eye image as an input and generate an overall eye image without a reflected scene; and
a second generator configured to take the extracted reflected scene as input and generate a local image from which the reflected scene has been removed;
configured to synthesize the global eye image and the local image to produce the second eye image;
data posting device.
제13항에 있어서,
상기 복원 신경망은,
상기 제1 눈 이미지를 입력으로 하여 상기 제1 눈 이미지로부터 제1 정보를 생성하도록 구성된 제1 생성기; 및
상기 추출된 반사된 장면을 입력으로 하여 제2 정보를 생성하도록 구성된 제2 생성기를 포함하고,
상기 제1 생성기는 상기 제1 정보와 상기 제2 정보에 기초하여 상기 제2 눈 이미지를 생성하도록 구성된,
데이터 게시 장치.
14. The method of claim 13,
The reconstructed neural network is
a first generator configured to take the first eye image as an input and generate first information from the first eye image; and
a second generator configured to generate second information using the extracted reflected scene as input;
the first generator is configured to generate the second eye image based on the first information and the second information;
data posting device.
제15항에 있어서,
상기 제1 생성기는 인코더 및 디코더를 포함하는 인코더-디코더 설계 구조를 갖고, 상기 인코더와 상기 디코더는 공간 정보 전송(spatial information transfer) 및 잔여 학습을 위한 스킵 연결(skip connection)의 대칭 구조를 갖고, 상기 디코더는 정규화 기법을 이용하여 상기 제1 눈 이미지의 스타일을 유지하도록 구성된,
데이터 게시 장치.
16. The method of claim 15,
The first generator has an encoder-decoder design structure including an encoder and a decoder, wherein the encoder and the decoder have a symmetric structure of spatial information transfer and skip connection for residual learning, wherein the decoder is configured to maintain a style of the first eye image using a normalization technique;
data posting device.
제13항에 있어서,
상기 복원 신경망은,
상기 제1 눈 이미지를 입력으로 하여 상기 제1 눈 이미지로부터 제1 특징맵을 생성하도록 구성된 제1 생성기; 및
상기 추출된 반사된 장면을 입력으로 하여 제2 특징 맵을 생성하도록 구성된 제2 생성기를 포함하고
상기 제1 생성기는 제1 특징맵과 상기 제2 특징맵을 연결(concatenate)하여 상기 제2 눈 이미지를 생성하는,
데이터 게시 장치.
14. The method of claim 13,
The reconstructed neural network is
a first generator configured to take the first eye image as an input and generate a first feature map from the first eye image; and
a second generator configured to generate a second feature map using the extracted reflected scene as input;
The first generator generates the second eye image by concatenating the first feature map and the second feature map,
data posting device.
제17항에 있어서,
상기 제1 생성기 및 상기 제2 생성기는 상기 제1 특징맵과 상기 제2 특징맵이 동일한 차원(dimension)을 갖도록 각각 생성하는,
데이터 게시 장치.
18. The method of claim 17,
wherein the first generator and the second generator respectively generate the first feature map and the second feature map to have the same dimension;
data posting device.
제13항에 있어서,
상기 복원 신경망은, 상기 결정 신경망의 출력을 수신하고, 상기 출력에 기초하여 주의 기법(attention mechanism)을 이용하여 상기 제1 눈 이미지로부터 상기 반사된 장면을 추출하도록 구성된,
데이터 게시 장치.
14. The method of claim 13,
the reconstructed neural network is configured to receive an output of the decision neural network and extract the reflected scene from the first eye image using an attention mechanism based on the output;
data posting device.
제13항에 있어서,
상기 복원 신경망은,
상기 결정 신경망의 출력에 기초하여 상기 제1 눈 이미지로부터 상기 반사된 장면을 추출하고
상기 제1 눈 이미지로부터 상기 반사된 장면을 마스킹하여 마스킹된 이미지를 생성하고
상기 마스킹된 이미지 및 상기 추출된 반사된 장면을 입력으로 하여 상기 반사된 장면이 제거된 제2 눈 이미지를 생성하도록 구성된,
데이터 게시 장치.
14. The method of claim 13,
The reconstructed neural network is
extracting the reflected scene from the first eye image based on the output of the decision neural network;
masking the reflected scene from the first eye image to generate a masked image;
configured to take the masked image and the extracted reflected scene as inputs to generate a second eye image with the reflected scene removed;
data posting device.
제12항에 있어서,
상기 컨트롤러는
상기 제1 데이터로부터 상기 제1 눈 이미지를 검출하기 이전에,
상기 제1 데이터에 대응하는 이미지 또는 동영상을 게시하도록 상기 데이터 게시 장치를 제어하고,
상기 제2 데이터를 생성한 이후, 상기 게시된 상기 제1 데이터에 대응하는 이미지 또는 동영상을 상기 제2 데이터에 대응하는 이미지 또는 동영상으로 교체하여 게시하도록 상기 데이터 게시 장치를 제어하도록 구성된
데이터 게시 장치.
13. The method of claim 12,
the controller is
Prior to detecting the first eye image from the first data,
controlling the data posting device to publish an image or video corresponding to the first data,
after generating the second data, control the data posting device to replace the posted image or video corresponding to the first data with an image or video corresponding to the second data to be posted
data posting device.
제12항에 있어서,
상기 결정 신경망은 상기 제1 눈 이미지에 상기 반사된 장면이 존재할 확률을 출력하도록 학습된
데이터 게시 장치.

13. The method of claim 12,
The decision neural network is trained to output the probability that the reflected scene exists in the first eye image.
data posting device.

KR1020210116469A 2021-09-01 2021-09-01 Method for posting data and apparatus for posting data KR102464704B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210116469A KR102464704B1 (en) 2021-09-01 2021-09-01 Method for posting data and apparatus for posting data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210116469A KR102464704B1 (en) 2021-09-01 2021-09-01 Method for posting data and apparatus for posting data

Publications (1)

Publication Number Publication Date
KR102464704B1 true KR102464704B1 (en) 2022-11-09

Family

ID=84040395

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210116469A KR102464704B1 (en) 2021-09-01 2021-09-01 Method for posting data and apparatus for posting data

Country Status (1)

Country Link
KR (1) KR102464704B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190047442A (en) * 2017-10-27 2019-05-08 삼성전자주식회사 Method of removing reflection area, eye-tracking method and apparatus thereof
KR102090891B1 (en) 2016-03-10 2020-03-18 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 Methods and devices for generating eye images
US20210010373A1 (en) 2018-12-29 2021-01-14 China University Of Mining And Technology Hydraulic support monitoring support pose in real time based on inertia measurement unit and detection method thereof
KR102209595B1 (en) 2017-09-01 2021-01-28 매직 립, 인코포레이티드 Detailed eye shape model for robust biometric applications

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102090891B1 (en) 2016-03-10 2020-03-18 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 Methods and devices for generating eye images
KR102209595B1 (en) 2017-09-01 2021-01-28 매직 립, 인코포레이티드 Detailed eye shape model for robust biometric applications
KR20190047442A (en) * 2017-10-27 2019-05-08 삼성전자주식회사 Method of removing reflection area, eye-tracking method and apparatus thereof
US20210010373A1 (en) 2018-12-29 2021-01-14 China University Of Mining And Technology Hydraulic support monitoring support pose in real time based on inertia measurement unit and detection method thereof

Non-Patent Citations (8)

* Cited by examiner, † Cited by third party
Title
Eye In-Painting with Exemplar Generative Adversarial Networks, Brian Dolhansky, Cristian Canton Ferrer Facebook Inc. 1 Hacker Way, Menlo Park (CA), USA
Facial Attribute Editing via Style Skip Connections, Wenqing Chu et al.
Globally and Locally Consistent Image Completion, Satoshi Iizuka et al.
Kuanhong Cheng ET AL:"Single Image Reflection Removal via Attention Model and SN-GAN", IEEE Access, Volume: 8, 20 May 2020(2020.05.20.) 1부.* *
Registration of eye reflection and scene images using an aspherical eye model, Atsushi Nakazawa et al.
Single Image Reflection Removal Using Deep Encoder-Decoder Network. Zhixiang chi et al.
Yu-Hui Lee ET AL:"ByeGlassesGAN: Identity Preserving Eyeglasses Removal for Face Images", Computer Science_Multimedia, arXiv:2008.11042, 25 Aug. 2020(2020.08.25.) 1부.* *
Zhixiang Chi ET AL:"Single Image Reflection Removal Using Deep Encoder-Decoder Network", Computer Science_Computer Vision and Pattern Recognition, arXiv:1802.00094, 31 Jan. 2018(2018.01.31.) 1부.* *

Similar Documents

Publication Publication Date Title
AU2020201662B2 (en) Face liveness detection method and apparatus, and electronic device
US11321847B2 (en) Foreground-aware image inpainting
CN108010031B (en) Portrait segmentation method and mobile terminal
WO2018188453A1 (en) Method for determining human face area, storage medium, and computer device
US20190378247A1 (en) Image processing method, electronic device and non-transitory computer-readable recording medium
KR102286468B1 (en) Method and system for integrity verification of fake video created through deep learning
US10984225B1 (en) Masked face recognition
CN112132847A (en) Model training method, image segmentation method, device, electronic device and medium
JP2017211939A (en) Generation device, generation method, and generation program
CN113570689B (en) Portrait cartoon method, device, medium and computing equipment
CN111091112A (en) Living body detection method and device
JP2023502653A (en) Use of deliberately controlled distortion imagers for inference or training of artificial intelligence neural networks
US20150089446A1 (en) Providing control points in images
WO2022180573A1 (en) Neural network-based image-to-image translation
CN116152938A (en) Method, device and equipment for training identity recognition model and transferring electronic resources
US20230237630A1 (en) Image processing method and apparatus
KR102464704B1 (en) Method for posting data and apparatus for posting data
KR102160955B1 (en) Method and apparatus of generating 3d data based on deep learning
WO2023124869A1 (en) Liveness detection method, device and apparatus, and storage medium
CN112802060B (en) Single-target tracking method and device
US20200077016A1 (en) Automated Image Capture System with Expert Guidance
KR102358355B1 (en) Method and apparatus for progressive deblurring of face image
US20240104180A1 (en) User authentication based on three-dimensional face modeling using partial face images
EP4377902A1 (en) Machine learning based distraction classification in images
Gutensohn Developing a Natural User Interface and Facial Recognition System With OpenCV and the Microsoft Kinect

Legal Events

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