KR20230144580A - 이미지 프로세싱 방법, 장치, 및 디바이스, 그리고 컴퓨터-판독가능 저장 매체 - Google Patents

이미지 프로세싱 방법, 장치, 및 디바이스, 그리고 컴퓨터-판독가능 저장 매체 Download PDF

Info

Publication number
KR20230144580A
KR20230144580A KR1020237030383A KR20237030383A KR20230144580A KR 20230144580 A KR20230144580 A KR 20230144580A KR 1020237030383 A KR1020237030383 A KR 1020237030383A KR 20237030383 A KR20237030383 A KR 20237030383A KR 20230144580 A KR20230144580 A KR 20230144580A
Authority
KR
South Korea
Prior art keywords
image
avatar
sample
predicted
function
Prior art date
Application number
KR1020237030383A
Other languages
English (en)
Inventor
페이다 주
잉 타이
청제 왕
지린 리
Original Assignee
텐센트 클라우드 컴퓨팅 (베이징) 컴퍼니 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 텐센트 클라우드 컴퓨팅 (베이징) 컴퍼니 리미티드 filed Critical 텐센트 클라우드 컴퓨팅 (베이징) 컴퍼니 리미티드
Publication of KR20230144580A publication Critical patent/KR20230144580A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/04Context-preserving transformations, e.g. by using an importance map
    • G06T3/0012
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • 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
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T5/005
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/77Retouching; Inpainting; Scratch removal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/761Proximity, similarity or dissimilarity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/776Validation; Performance evaluation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/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/20Special algorithmic details
    • G06T2207/20212Image combination
    • G06T2207/20221Image fusion; Image merging

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

이미지 프로세싱 방법, 장치, 및 디바이스, 그리고 컴퓨터-판독가능 저장 매체. 방법은, 제1 예측된 이미지 및 제2 예측된 이미지를 획득하기 위하여 제1 샘플 이미지 및 제2 샘플 이미지에 대해 생성 프로세싱을 별도로 수행하기 위한 제1 생성기를 호출하는 단계; 및 제1 샘플 이미지와 제1 예측된 이미지 사이의 머리 초상화 차이, 및 제2 샘플 이미지와 제2 예측된 이미지 사이의 특정된 속성 차이에 기초하여, 이미지 프로세싱 모델을 훈련시키는 단계 - 이미지 프로세싱 모델은 입력 이미지 내의 머리 초상화를 타깃 머리 초상화로 대체하고, 입력 이미지 내의 머리 초상화의 제1 유형의 속성을 유지하기 위하여 이용됨 - 를 포함한다. 그러므로, 대체된 머리 초상화의 인증성은 높고, 이미지 프로세싱의 정확도 및 대체 효과가 개선된다.

Description

이미지 프로세싱 방법, 장치, 및 디바이스, 그리고 컴퓨터-판독가능 저장 매체
관련된 출원
이 출원은 "이미지 프로세싱 방법, 장치, 및 디바이스, 그리고 컴퓨터-판독가능 저장 매체(IMAGE PROCESSING METHOD, APPARATUS AND DEVICE, AND COMPUTER-READABLE STORAGE MEDIUM)"라는 명칭으로 2021년 6월 3일자로 출원된 중국 특허 출원 제2021106203828호에 대한 우선권을 주장하고, 이 중국 특허 출원은 그 전체적으로 참조로 통합된다.
이 출원은 컴퓨터 기술의 분야, 특히, 이미지 프로세싱 방법, 장치, 및 디바이스, 그리고 컴퓨터-판독가능 저장 매체에 관한 것이다.
컴퓨터 기술의 계속적인 발전으로, 이미지 프로세싱 기술이 폭넓게 발전되었다. 이미지 프로세싱 기술을 이용함으로써 아바타 리쉐이핑(avatar reshaping)을 실현하는 것은 상대적으로 신규한 시도 및 애플리케이션이다. 아바타 리쉐이핑은 이미지 내의 원래의 아바타를 타깃 아바타로 대체하는 프로세스를 지칭한다.
이 출원의 실시예는 이미지 프로세싱 모델을 훈련시킬 수 있는 이미지 프로세싱 방법, 장치, 및 디바이스, 그리고 컴퓨터-판독가능 저장 매체를 제공하고, 훈련된 이미지 프로세싱 모델의 프로세싱 정확도는 상대적으로 높고, 대체에 의해 획득된 아바타는 상대적으로 높은 현실성을 가지고, 이미지 프로세싱 모델은 폭넓은 범위의 사용 시나리오를 가진다.
일 측면에서, 이 출원의 실시예는 이미지 프로세싱 방법을 제공하고, 이 이미지 프로세싱 방법은,
제1 예측된 이미지 을 획득하기 위하여 제1 샘플 세트 내의 제1 샘플 이미지 를 프로세싱하기 위한 이미지 프로세싱 모델 내의 제1 생성기를 호출하는 단계 - 제1 예측된 이미지 은 제1 예측된 아바타(avatar)를 포함하고, 제1 샘플 세트는 N개의 제1 샘플 이미지를 포함하고, 각각의 제1 샘플 이미지는 동일한 타깃 사용자에 대응하는 타깃 아바타를 포함하고, N은 양의 정수이고, i는 양의 정수이고, i ≤ N임 -;
제2 예측된 이미지 을 획득하기 위하여 제2 샘플 세트 내의 제2 샘플 이미지 를 프로세싱하기 위한 제1 생성기를 호출하는 단계 - 제2 예측된 이미지 은 제2 예측된 아바타를 포함하고, 제2 샘플 세트는 M개의 제2 샘플 이미지를 포함하고, 각각의 제2 샘플 이미지는 샘플 아바타를 포함하고, M은 양의 정수이고, k는 양의 정수이고, k ≤ M임 -; 및
제1 샘플 이미지 내의 타깃 아바타와 제1 예측된 아바타 사이의 차이, 및 제2 샘플 이미지 내의 샘플 아바타의 제1 유형 속성과 제2 예측된 아바타의 제1 유형 속성 사이의 차이에 따라 이미지 프로세싱 모델을 훈련시키는 단계 - 이미지 프로세싱 모델은 입력 이미지 내의 아바타의 제1 유형 속성을 유지하면서, 입력 이미지 내의 아바타를 타깃 아바타로 대체하도록 구성됨 - 를 포함한다.
일 측면에서, 이 출원의 실시예는 이미지 프로세싱 장치를 제공한다. 이미지 프로세싱 장치는,
제1 예측된 이미지 을 획득하기 위하여 제1 샘플 세트 내의 제1 샘플 이미지 를 프로세싱하기 위한 이미지 프로세싱 모델 내의 제1 생성기를 호출하도록 구성된 제1 예측된 이미지 취득 모듈 - 제1 예측된 이미지 은 제1 예측된 아바타(avatar)를 포함하고, 제1 샘플 세트는 N개의 제1 샘플 이미지를 포함하고, 각각의 제1 샘플 이미지는 동일한 타깃 사용자에 대응하는 타깃 아바타를 포함하고, N은 양의 정수이고, i는 양의 정수이고, i ≤ N임 -;
제2 예측된 이미지 을 획득하기 위하여 제2 샘플 세트 내의 제2 샘플 이미지 를 프로세싱하기 위한 제1 생성기를 호출하도록 구성된 제2 예측된 이미지 취득 모듈 - 제2 예측된 이미지 은 제2 예측된 아바타를 포함하고, 제2 샘플 세트는 M개의 제2 샘플 이미지를 포함하고, 각각의 제2 샘플 이미지는 샘플 아바타를 포함하고, M은 양의 정수이고, k는 양의 정수이고, k ≤ M임 -; 및
제1 샘플 이미지 내의 타깃 아바타와 제1 예측된 아바타 사이의 차이, 및 제2 샘플 이미지 내의 샘플 아바타의 제1 유형 속성과 제2 예측된 아바타의 제1 유형 속성 사이의 차이에 따라 이미지 프로세싱 모델을 훈련시키도록 구성된 모델 훈련 모듈 - 이미지 프로세싱 모델은 입력 이미지 내의 아바타의 제1 유형 속성을 유지하면서, 입력 이미지 내의 아바타를 타깃 아바타로 대체하도록 구성됨 - 을 포함한다.
일 측면에서, 이 출원은 저장 장치 및 프로세서를 포함하는 이미지 프로세싱 디바이스를 제공한다.
컴퓨터 프로그램은 저장 장치 내에 저장된다.
프로세서는 위에서 설명된 바와 같은 이미지 프로세싱 방법을 구현하기 위하여 컴퓨터 프로그램을 로딩하고 실행하도록 구성된다.
일 측면에서, 이 출원은 컴퓨터-판독가능 저장 매체를 제공한다. 컴퓨터-판독가능 저장 매체는 컴퓨터 프로그램을 저장한다. 컴퓨터 프로그램은 프로세서에 의해 로딩되고 위에서 설명된 바와 같은 이미지 프로세싱 방법을 수행하도록 적응된다.
일 측면에서, 이 출원은 컴퓨터 프로그램 제품 또는 컴퓨터 프로그램을 제공한다. 컴퓨터 프로그램 제품 또는 컴퓨터 프로그램은 컴퓨터 명령을 포함한다. 컴퓨터 명령은 컴퓨터-판독가능 저장 매체 내에 저장된다. 컴퓨터 디바이스의 프로세서는 컴퓨터-판독가능 저장 매체로부터 컴퓨터 명령을 판독하고, 프로세서는 컴퓨터 디바이스가 위에서 설명된 다양한 대안적인 구현예에서 제공된 이미지 프로세싱 방법을 수행하는 것을 가능하게 하기 위하여 컴퓨터 명령을 실행한다.
이 출원의 실시예에 의해 제공된 기술적 해결책은 다음의 유익한 효과를 포함할 수 있다:
이미지 프로세싱 모델은 2개의 차이: 제1 샘플 이미지와, 제1 생성기를 통해 제1 샘플 이미지를 프로세싱함으로써 획득된 제1 예측된 이미지와의 사이의 아바타 차이, 및 제2 샘플 이미지와, 제1 생성기를 통해 제2 샘플 이미지를 프로세싱함으로써 획득된 제2 예측된 이미지와의 사이의 제1 유형 속성 차이에 기초하여 훈련된다. 이러한 방식으로, 훈련된 이미지 프로세싱 모델은 입력 이미지 내의 아바타의 제1 유형 속성을 유지하면서, 입력 이미지 내의 아바타를 타깃 아바타로 대체하기 위한 능력을 학습할 수 있다. 그러므로, 대체된 아바타는 증가된 현실성의 정도를 가지고, 이미지 프로세싱의 정확도 및 대체 효과가 개선된다.
상기한 일반적인 설명 및 다음의 상세한 설명의 둘 모두는 오직 예시적이며 설명적이고, 이 출원에 대한 임의의 제한을 구성하지 않는다는 것이 이해되어야 한다.
이 출원의 실시예에서의 기술적 해결책을 더 명확하게 설명하기 위하여, 실시예에 대한 설명에서 이용되도록 요구된 도면은 이하에서 간단하게 도입될 것이다. 분명히, 다음의 설명에서의 도면은 이 출원의 오직 일부 실시예이다. 본 기술분야에서의 통상의 기술자는 창조적인 작업 없이 이 도면에 따라 다른 도면을 추가로 획득할 수 있다.
도 1은 이 출원의 예시적인 실시예에 의해 제공된 이미지 프로세싱 시나리오 도면이다.
도 2는 이 출원의 예시적인 실시예에 의해 제공된 이미지 프로세싱 방법의 흐름도이다.
도 3은 이 출원의 예시적인 실시예에 의해 제공된 또 다른 이미지 프로세싱 방법의 흐름도이다.
도 4는 이 출원의 예시적인 실시예에 의해 제공된 훈련 샘플 세트의 생성을 예시하는 흐름도이다.
도 5는 이 출원의 예시적인 실시예에 의해 제공된 인코더의 개략적인 구조도이다.
도 6은 이 출원의 예시적인 실시예에 의해 제공된 제1 디코더의 개략적인 구조도이다.
도 7은 이 출원의 예시적인 실시예에 의해 제공된 제2 디코더의 개략적인 구조도이다.
도 8은 이 출원의 예시적인 실시예에 의해 제공된 제1 손실 함수의 결정 프로세스를 예시하는 개략도이다.
도 9는 이 출원의 예시적인 실시예에 의해 제공된 제1 손실 함수의 결정 프로세스를 예시하는 개략도이다.
도 10은 이 출원의 예시적인 실시예에 의해 제공된 제1 손실 함수의 결정 프로세스를 예시하는 개략도이다.
도 11은 이 출원의 예시적인 실시예에 의해 제공된 테스트 비디오의 프로세싱을 예시하는 흐름도이다.
도 12는 이 출원의 예시적인 실시예에 의해 제공된 제1 생성기에 의한 테스트 이미지의 생성 프로세싱을 예시하는 흐름도이다.
도 13은 이 출원의 예시적인 실시예에 의해 제공된 테스트 비디오의 프로세싱을 예시하는 흐름도이다.
도 14는 이 출원의 예시적인 실시예에 의해 제공된 이미지 프로세싱 장치의 개략적인 구조도이다.
도 15는 이 출원의 예시적인 실시예에 의해 제공된 이미지 프로세싱 디바이스의 개략적인 구조도이다.
예시적인 실시예는 본 명세서에서 상세하게 설명되고, 예시적인 실시예의 예는 도면에서 제시된다. 다음의 설명이 도면에 관련될 때, 이와 다르게 특정되지 않으면, 상이한 도면에서의 동일한 번호는 동일하거나 유사한 엘리먼트를 나타낸다. 다음의 예시적인 실시예에서 설명된 구현예는 이 출원과 일치하는 모든 구현예를 나타내지는 않는다. 반대로, 이들은 청구항에서 상세하게 설명된 이 출원의 일부 측면과 일치하는 단지 방법의 예이다.
다음은 이 출원의 실시예에서의 도면을 참조하여 이 출원의 실시예에서의 기술적 해결책을 명확하게 그리고 완전하게 설명한다.
이 출원의 실시예는 인공 지능(AI : artificial intelligence) 및 머신 학습(ML : machine learning)과 같은 기법에 관한 것이다.
추가적으로, 이 출원의 실시예는 또한, 아바타 리쉐이핑(avatar reshaping) 및 생성기에 관한 것이다. 아바타 리쉐이핑은 제1 초상화(portrait) 내의 아바타 특징의 전부 또는 일부를 제2 초상화인 것으로 대체하는 프로세스를 지칭한다. 이 출원의 실시예에서는, 이미지 프로세싱 모델에 의해 출력되는 예측된 초상화를 획득하기 위하여, 제2 초상화가 이미지 프로세싱 모델로 입력된다. 예측된 초상화는 제1 초상화의 아바타, 및 제2 초상화의 제1 유형 속성의 둘 모두를 가진다. 임의적으로, 예측된 초상화가 제1 초상화의 아바타를 가진다는 것은, 예측된 초상화가 제1 초상화의 아바타, 예를 들어, 얼굴 특징, 모발, 피부, 및 안경과 같은 외모 특징, 및 제2 초상화의 제1 유형 속성, 예를 들어, 자세, 표정, 및 조명과 같은 속성 특징의 둘 모두를 가진다는 것을 의미한다.
생성기는 생성형 대립 네트워크(GAN : generative adversarial network)의 컴포넌트이다. GAN은 생성기 및 판별기로 구성되는 비감독된 학습의 방법이다. 판별기의 입력은 실제의 샘플 이미지(즉, 실제의 이미지, 실제의 이미지는 비-모델 생성된 이미지를 지칭함) 또는 생성기에 의해 출력되는 예측된 이미지(즉, 거짓 이미지, 거짓 이미지는 모델에 기초하여 생성된 이미지를 지칭함)이다. 판별기의 목적은 생성기에 의해 출력되는 예측된 이미지 및 실제의 샘플 이미지의 현실성을 가능한 한 많이 판별하기 위한 것이고, 즉, 어느 것이 실제의 이미지이고 어느 것이 예측된 이미지인지를 판별할 수 있다. 그러나, 생성기는 생성되는 예측된 이미지가 판별기에 의해 인식되는 것을 가능한 한 많이 가능하게 하기 위한 것이고, 즉, 예측된 이미지가 가능한 한 현실적인 것을 가능하게 하기 위한 것이다. 2개의 생성기는 서로 대비되고, 파라미터는 연속적으로 조절되고(즉, 상호 최적화됨), 궁극적으로, 생성기에 의해 생성되는 예측된 이미지는 판별기에 의해 거짓인 것으로 판별되기가 어렵거나, 판별기의 인식 정확도가 임계치에 도달한다.
AI 기술에서의 컴퓨터 비전(computer vision) 기술 및 머신 학습 기술에 기초하여, 이 출원의 실시예는 이미지 프로세싱 방법을 제공한다. 이미지 프로세싱 모델은 GAN에 기초하여 훈련되어, 이로써 훈련된 이미지 프로세싱 모델은 임의의 아바타를 타깃 아바타로 리쉐이핑할 수 있고, 대체된 아바타는 임의의 아바타의 제1 유형 속성을 유지한다(즉, 아바타 리쉐이핑을 실현함).
도 1은 이 출원의 예시적인 실시예에 의해 제공된 이미지 프로세싱 시나리오 도면이다. 도 1에서 도시된 바와 같이, 이미지 프로세싱 시나리오는 단말 디바이스(101) 및 서버(102)를 포함한다. 단말 디바이스(101)는 사용자에 의해 이용되는 디바이스이고, 추가로, 단말 디바이스는 또한, 이미지 취득 기능 또는 인터페이스 디스플레이 기능을 가지는 디바이스일 수 있다. 단말 디바이스(101)는 스마트폰(예를 들어, 안드로이드(Android) 모바일 전화 및 iOS 모바일 전화), 태블릿 컴퓨터, 휴대용 개인용 컴퓨터, 및 모바일 인터넷 디바이스(MID : mobile Internet device)와 같은 디바이스를 포함할 수 있지만, 이것으로 제한되지 않는다. 단말 디바이스는 디스플레이 장치로 구성된다. 디스플레이 장치는 또한, 디스플레이, 디스플레이 스크린, 터치 스크린 등일 수 있다. 터치 스크린은 또한, 터치 제어 스크린, 터치 패널 등일 수 있다. 이 출원의 실시예에서는 이에 대해 제한이 행해지지 않는다.
서버(102)는 취득된 샘플에 따라 이미지 프로세싱 모델을 훈련시킬 수 있는 배경 디바이스를 지칭한다. 훈련된 이미지 프로세싱 모델을 획득한 후에, 서버(102)는 훈련된 이미지 프로세싱 모델을 단말 디바이스(101)로 반환할 수 있거나, 서버 내에 훈련된 이미지 프로세싱 모델을 전개할 수 있다. 서버(102)는 독립적인 물리적 서버일 수 있거나, 또한, 서버 클러스터, 또는 복수의 물리적 서버로 구성된 분산된 시스템일 수 있거나, 또한, 클라우드 서비스, 클라우드 데이터베이스, 클라우드 컴퓨팅, 클라우드 기능, 클라우드 저장, 네트워크 서비스, 클라우드 통신, 미들웨어 서비스, 도메인 명칭 서비스, 보안 서비스, 컨텐츠 전달 네트워크(CDN : content delivery network), 대량 데이터, 및 인공 지능 플랫폼과 같은 기본적인 클라우드 컴퓨팅 서비스를 제공하는 클라우드 서버일 수 있다. 추가적으로, 복수의 서버는 또한, 블록 체인 네트워크(block chain network)로 그룹화될 수 있고, 각각의 서버는 블록 체인 네트워크 내의 노드이고, 서버는 이미지 프로세싱 모델의 훈련, 저장, 또는 분산을 함께 수행한다. 단말 디바이스(101) 및 서버(102)는 유선 통신 또는 무선 통신을 통해 직접적으로 또는 간접적으로 접속될 수 있다. 이 출원의 실시예에서는 이에 대해 제한이 행해지지 않는다.
도 1에서 도시된 모델 프로세싱 시나리오에서의 단말 디바이스 및 서버의 수량은 단지 예인 것이 주목되어야 한다. 예를 들어, 단말 디바이스 및 서버의 수량은 다수일 수 있다. 이 출원은 단말 디바이스 및 서버의 수량을 제한하지 않는다.
도 1에서 도시된 이미지 프로세싱 시나리오에서, 이미지 프로세싱 흐름은 다음의 단계를 주로 포함한다:
(1) 서버는 이미지 프로세싱 모델의 훈련 샘플 세트를 취득한다. 훈련 샘플 세트는 단말 디바이스로부터 취득될 수 있거나, 데이터베이스로부터 취득될 수 있다. 훈련 샘플 세트는 제1 샘플 세트 및 제2 샘플 세트를 포함한다. 제1 샘플 세트는 N개의 제1 샘플 이미지를 포함하고, 각각의 제1 샘플 이미지는 동일한 타깃 사용자의 타깃 아바타를 포함한다. 제2 샘플 세트는 M개의 제2 샘플 이미지를 포함하고, 각각의 제2 샘플 이미지는 샘플 아바타를 포함하고, M 및 N의 둘 모두는 양의 정수이다. 이미지 프로세싱 모델은 제1 생성기를 포함한다.
제2 샘플 이미지 내에 포함된 샘플 아바타는 타깃 사용자 이외의 사용자의 아바타를 지칭하고, 예를 들어, 제1 샘플 세트는 N개의 제1 샘플 이미지를 포함하고, 각각의 제1 샘플 이미지는 사용자 A의 아바타를 포함한다. 제2 샘플 세트는 M개의 제2 샘플 이미지를 포함하고, 각각의 제2 샘플 이미지는 사용자 A 이외의 사용자의 샘플 아바타를 포함한다. 임의적으로, M개의 제2 샘플 이미지 내의 샘플 아바타는 상이한 사용자에 대응한다. 훈련된 이미지 프로세싱 모델 내의 제1 생성기는 사용자 A에 대응하는 예측된 이미지를 생성한다. 예측된 이미지는 사용자 A의 아바타를 가지고, 또한, 원래의 입력 이미지 내의 아바타의 제1 유형 속성을 유지한다.
(2) 서버는 제1 샘플 세트로부터 제1 샘플 이미지 를 선택하고, 제1 예측된 이미지 (이미지는 거짓 이미지임)을 획득하기 위하여 제1 샘플 이미지 (이미지는 실제의 이미지임)를 프로세싱하기 위한 제1 생성기를 호출하고, i는 양의 정수이고, i ≤ N이다. 제1 샘플 이미지 를 프로세싱하기 위한 제1 생성기를 호출하는 동작은, 제1 샘플 이미지 내의 아바타의 제1 특징 벡터가 제1 생성기 내의 인코더에 의해 추출되고, 제1 예측된 이미지 을 획득하기 위하여, 제1 특징 벡터가 제1 생성기 내의 디코더에 의해 디코딩되는 것을 지칭한다.
(3) 서버는 제2 샘플 세트로부터 제2 샘플 이미지 를 선택하고, 제2 예측된 이미지 (이미지는 거짓 이미지임)을 획득하기 위하여 제2 샘플 이미지 (이미지는 실제의 이미지임)에 대해 생성 프로세싱을 수행하기 위한 제1 생성기를 호출하고, k는 양의 정수이고, k ≤ M이다. 제2 샘플 이미지 에 대해 생성 프로세싱을 수행하기 위한 제1 생성기를 호출하는 동작은, 제2 샘플 이미지 내의 아바타의 제2 특징 벡터가 제1 생성기 내의 인코더에 의해 추출되고, 제2 예측된 이미지 을 획득하기 위하여, 제2 특징 벡터가 제1 생성기 내의 디코더에 의해 디코딩되는 것을 지칭한다.
(4) 서버는 제1 샘플 이미지 내의 타깃 아바타와 제1 예측된 이미지 내의 아바타(즉, 제1 예측된 아바타) 사이의 차이, 및 제2 샘플 이미지 내의 샘플 아바타의 제1 유형 속성과 제2 예측된 이미지 내의 아바타(제2 예측된 아바타)의 제1 유형 속성 사이의 차이에 따라 이미지 프로세싱 모델을 훈련시킨다.
하나의 실시예에서, 서버는 구성된 손실 함수에 의해 이미지 사이의 차이를 계산할 수 있다. 예를 들어, 서버는 제1 손실 함수에 의해 제1 샘플 이미지 내의 타깃 아바타와 제1 예측된 아바타 사이의 차이를 결정하고, 제2 손실 함수에 의해 제2 샘플 이미지 내의 샘플 아바타와 제2 예측된 이미지 내의 제1 유형 속성 사이의 차이를 결정하고, 제1 손실 함수의 함수 값 및 제2 손실 함수의 함수 값에 기초하여 타깃 손실 함수의 함수 값을 결정하고, 이미지 프로세싱 모델을 훈련시키기 위하여 타깃 손실 함수의 함수 값에 기초하여 이미지 프로세싱 모델의 파라미터를 업데이트한다.
(5) 위의 단계 (2) 내지 단계 (4)는 이미지 프로세싱 모델이 훈련 완료 조건에 도달할 때까지 반복적으로 수행된다. 훈련 완료 조건은, 타깃 손실 함수의 손실 값이 반복의 횟수와 함께 더 이상 감소하지 않거나, 반복의 횟수가 횟수 임계치에 도달하거나, 타깃 손실 함수의 손실 값이 손실 임계치 미만인 것 등이다. 훈련된 이미지 프로세싱 모델은 입력 아바타 내의 이미지의 제1 유형 속성을 유지하면서, 입력 이미지 내의 아바타를 타깃 아바타로 대체할 수 있다.
위의 설명에 기초하여, 이 출원의 실시예에 따른 이미지 프로세싱 방법은 도면을 참조하여 상세하게 설명될 것이다.
이미지 프로세싱 모델의 하나의 반복적 프로세스를 예로서 취하면, 도 2는 이 출원의 예시적인 실시예에 의해 제공된 이미지 프로세싱 방법의 흐름도이다. 이미지 프로세싱 방법은 도 1에서 도시된 서버(102)에 의해 수행될 수 있고, 도 2에서 도시된 바와 같이, 이미지 프로세싱 방법은 다음의 단계를 포함하지만, 이것으로 제한되지 않는다:
S201. 제1 예측된 이미지 을 획득하기 위하여 제1 샘플 세트 내의 제1 샘플 이미지 를 프로세싱하기 위한 이미지 프로세싱 모델 내의 제1 생성기를 호출함. 제1 예측된 이미지 은 제1 예측된 아바타를 포함하고, 제1 샘플 세트는 N개의 제1 샘플 이미지를 포함하고, 각각의 제1 샘플 이미지는 동일한 타깃 사용자에 대응하는 타깃 아바타를 포함하고, N은 양의 정수이고, i는 양의 정수이고, i ≤ N이다.
예시적으로, 제1 샘플 세트 내의 N개의 이미지는 모두 사용자 A의 아바타를 포함한다. N개의 제1 샘플 이미지는 상이한 시나리오에서의 사용자 A의 이미지일 수 있고, 예를 들어, 제1 샘플 세트 내의 상이한 이미지 내의 사용자 A는 머리 업(head up) 또는 머리 다운(head down)과 같은 상이한 자세, 및 웃음 또는 울음과 같은 상이한 표정을 가질 수 있다.
S202. 제2 예측된 이미지 을 획득하기 위하여 제2 샘플 세트 내의 제2 샘플 이미지 를 프로세싱하기 위한 제1 생성기를 호출함. 제2 예측된 이미지 은 제2 예측된 아바타를 포함하고, 제2 샘플 세트는 M개의 제2 샘플 이미지를 포함하고, 각각의 제2 샘플 이미지는 샘플 아바타를 포함하고, M은 양의 정수이고, k는 양의 정수이고, k ≤ M이다.
제2 샘플 세트 내의 M개의 이미지는 사용자 A 이외의 사용자의 아바타를 포함한다. 예시적으로, 제2 샘플 세트 내의 아바타는 사용자 A 이외의 임의의 하나 이상의 사용자의 아바타를 포함하는 이미지일 수 있다. 훈련 프로세스의 오버-피팅(over-fitting)을 회피하기 위하여, 제2 샘플 세트는 복수의 상이한 사용자의 아바타에 대응하는 이미지를 포함할 수 있다. 임의적으로, 제2 샘플 세트 내의 아바타는 상이한 시나리오에서의 사용자 A 이외의 임의의 하나 이상의 사용자의 이미지를 포함할 수 있다.
S203. 제1 샘플 이미지 내의 타깃 아바타와 제1 예측된 아바타 사이의 차이, 제2 샘플 이미지 내의 샘플 아바타의 제1 유형 속성과 제2 예측된 아바타의 제1 유형 속성 사이의 차이에 기초하여 이미지 프로세싱 모델을 훈련시킴.
서버는 업데이트된 이미지 프로세싱 모델이 훈련 완료 조건에 도달하는지 여부를 판정하고, 그 다음으로, 업데이트된 이미지 프로세싱 모델이 훈련 완료 조건에 도달하지 않는 경우에, 이미지 프로세싱 모델이 훈련 완료 조건에 도달할 때까지 S201 내지 S203의 위의 프로세스를 반복하거나, 업데이트된 이미지 프로세싱 모델이 훈련 완료 조건에 도달하는 경우에, 이미지 프로세싱 모델의 훈련을 종료시킨다. 이미지 프로세싱 모델은 입력 이미지 내의 아바타의 제1 유형 속성을 유지하면서, 입력 이미지 내의 아바타를 타깃 아바타로 대체하도록 구성된다.
입력 이미지 내의 아바타가 타깃 아바타로 대체되는 단계는, 입력 이미지 내의 제2 유형 속성을 타깃 아바타 내의 제2 유형 속성으로 대체하는 것을 지칭할 수 있다. 제2 유형 속성은 제1 유형 속성 이외의 또 다른 속성이고, 즉, 대체된 이미지는 타깃 아바타의 제2 유형 속성 및 입력 이미지 내의 아바타의 제1 유형 속성의 둘 모두를 유지한다.
1vN 아바타 리쉐이핑의 요건은 훈련된 이미지 프로세싱 모델에 의해 충족될 수 있다. 제1 생성기는 타깃 사용자의 타깃 아바타를 상이한 시나리오에서의 임의의 다른 사용자의 아바타인 것으로 대체할 수 있고, 즉, 제1 생성기는 입력 이미지(임의의 다른 사용자의 아바타를 포함하는 이미지)를 프로세싱함으로써 입력 이미지의 제1 유형 속성 및 타깃 사용자의 타깃 아바타의제2 유형 속성을 가지는 이미지를 취득할 수 있다.
이 출원의 실시예에서, 제1 샘플 세트 내의 N개의 이미지에 대응하는 타깃 사용자는 아바타의 제2 유형 속성을 제공하는 사용자이다. 이미지 프로세싱 모델의 훈련이 완료된 후, 입력 이미지가 훈련된 이미지 프로세싱 모델 내의 제1 생성기에 의해 프로세싱된 후에는, 획득되는 예측된 이미지 내의 아바타는 타깃 사용자의 아바타의 제2 유형 속성 및 입력 이미지의 제1 유형 속성의 둘 모두를 가진다. 예시적으로, 제1 샘플 세트 내의 N개의 이미지에 대응하는 사용자는 사용자 A이고, 임의의 이미지가 이미지 프로세싱 모델 내의 제1 생성기를 통해 프로세싱될 때, 사용자 A의 아바타의 제2 유형 속성을 포함하는 아바타가 획득될 수 있다.
이 출원의 실시예에서 도시된 해결책에서, 임의의 사용자의 아바타는 타깃 사용자의 아바타로 대체될 수 있어서, 1vN의 아바타 대체 애플리케이션이 실현될 수 있고, 이것은 아바타 리쉐이핑의 애플리케이션 시나리오를 확장시킨다.
임의적으로, 제1 유형 속성은 비-아이덴티티 인식 속성(non-identity recognition attribute)이고, 제2 유형 속성은 아이덴티티 인식 속성(identity recognition attribute)을 지칭한다. 예시적으로, 아이덴티티 인식 속성은 얼굴 특징, 모발, 피부, 및 안경과 같은 외모 특징을 포함할 수 있다. 비-아이덴티티 인식 속성은 표정, 자세, 및 조명과 같은 특징 속성을 포함할 수 있다. 도 3은 이 출원의 예시적인 실시예에 의해 제공된 또 다른 이미지 프로세싱 방법의 흐름도이다. 이미지 프로세싱 방법은 도 1에서 도시된 서버(102)에 의해 수행될 수 있고, 도 3에서 도시된 바와 같이, 이미지 프로세싱 방법은 다음의 단계를 포함하지만, 이것으로 제한되지 않는다:
S301. (1) 이미지 프로세싱 모델의 훈련 샘플 세트를 취득함.
하나의 가능한 구현예에서, 모델 훈련의 안정성 및 정확도를 개선시키기 위하여, 훈련 샘플 세트 내의 이미지는 프리-프로세싱(pre-processing)을 거친 이미지이다. 프리-프로세싱은 아바타 정정(avatar correction) 및 아바타 영역 세그먼트화(avatar region segmentation)와 같은 프로세스 중의 적어도 하나를 포함한다. 예시적으로, 도 4는 이 출원의 예시적인 실시예에 의해 제공된 훈련 샘플 세트의 생성을 예시하는 흐름도이다. 도 4에서 도시된 바와 같이, 이미지 프로세싱 모델의 훈련 샘플 세트를 취득하는 흐름은 단계(S3011 내지 S3013)를 주로 포함한다.
S3011: 데이터 수집 스테이지.
서버는 제1 원래의 샘플 세트 및 제2 원래의 샘플 세트를 취득한다. 제1 원래의 샘플 세트 내의 각각의 이미지는 타깃 사용자의 타깃 아바타를 포함하고, 제2 원래의 샘플 세트 내의 각각의 이미지는 타깃 사용자 이외의 사용자의 샘플 아바타를 포함한다. 임의적으로, 서버는 비디오에 대해 이미지 프레임 추출을 수행함으로써 대응하는 아바타를 포함하는 이미지를 취득할 수 있다. 제1 원래의 샘플 세트를 취득하는 프로세스를 예로서 취하면, 서버는 타깃 사용자에 대응하는 비디오로부터 타깃 아바타를 포함하는 이미지를 취득할 수 있다. 타깃 사용자에 대응하는 비디오는 단말 디바이스에 의해 업로드된 비디오일 수 있고, 비디오는 어떤 기간 길이를 가지고, 서버는 제1 원래의 샘플 세트를 획득하기 위하여 이미지 프레임 추출에 의해 비디오로부터 타깃 사용자의 타깃 아바타를 포함하는 X개의 이미지를 추출할 수 있다. 동일한 방식으로, 제2 원래의 샘플 세트가 또한 획득될 수 있다. 또는 임의적으로, 각각의 사용자에 각각 대응하는 이미지는 데이터베이스 내에 사전-저장되고, 따라서, 서버가 데이터베이스로부터 제1 원래의 샘플 세트 및 제2 원래의 샘플 세트를 취득하는 단계는 다음을 포함한다: 서버는 제1 원래의 샘플 세트를 형성하기 위하여 타깃 사용자에 대응하는 아이덴티티 정보에 기초하여 타깃 사용자의 타깃 아바타를 포함하는 X개의 이미지를 취득할 수 있고, 제2 원래의 샘플 세트를 형성하기 위하여 타깃 사용자의 아이덴티티 정보 이외의 아이덴티티 정보에 기초하여 또 다른 사용자의 샘플 아바타를 포함하는 적어도 2개의 이미지를 취득할 수 있다. 제2 원래의 샘플 세트 내의 상이한 이미지에 대응하는 사용자는 동일하거나 상이할 수 있다.
임의적으로, 원래의 샘플 세트를 취득하기 위한 위의 2개의 방법은 조합하여 이용될 수 있다. 예시적으로, 서버는 비디오에 대해 이미지 프레임 추출을 수행함으로써 제1 원래의 샘플 세트를 취득할 수 있고, 데이터베이스로부터 제2 원래의 샘플 세트를 취득할 수 있다. 또는, 서버는 비디오에 대해 이미지 프레임 추출을 수행함으로써 제2 원래의 샘플 세트를 취득할 수 있고, 데이터베이스로부터 제1 원래의 샘플 세트를 취득할 수 있다. 또는, 서버는 비디오에 대해 이미지 프레임 추출을 수행함으로써 제1 원래의 샘플 세트/제2 원래의 샘플 세트 내의 이미지의 부분을 취득하고, 데이터베이스로부터 제1 원래의 샘플 세트/제2 원래의 샘플 세트 내의 이미지의 다른 부분을 취득한다.
S3012. 아바타 정정 스테이지. 서버는 (에이다부스트 프레임워크(AdaBoost framework), 변형가능한 파트 모델(DMP : deformable part model), 및 캐스케이드 컨볼루션 신경망(CNN : convolutional neural network)과 같은) 얼굴 검출 알고리즘을 통해 (제1 원래의 샘플 세트 및 제2 원래의 샘플 세트를 포함하는) 취득된 원래의 샘플 세트 내의 이미지에 대해 아바타 영역 검출을 수행할 수 있고, 아바타 영역에 대해 교정(calibration)을 수행할 수 있고(예를 들어, 회귀 트리(regression tree)-기반 얼굴 정렬 알고리즘을 채택함), 이것은 알려진 아바타 영역 상에서 아바타의 정확한 형상을 위치시키는 목적을 가진다. 추가적으로, 서버는 또한, 정정된 아바타를 획득하기 위하여, 즉, 원래의 아바타에 대응하는 정면 아바타를 획득하기 위하여, 3D 모퍼블 모델(3DMM : 3D morphable model) 알고리즘과 같은 아바타 자세 정정 알고리즘을 통해 아바타를 정정할 수 있다. 이미지 프로세싱 모델은 정정된 아바타에 의해 훈련되고, 이것은 모델 훈련의 안정성을 개선시키는 것을 돕는다. 임의적으로, 아바타 정정 후의 원래의 샘플 이미지 세트는 훈련 샘플 세트로서 취득될 수 있거나, 서버는 추가로, 아바타 정정 후의 원래의 샘플 이미지 세트에 대해 아바타 영역 세그먼트화를 수행할 수 있고, 아바타 영역 세그먼트화 후의 샘플 이미지 세트를 훈련 샘플 세트로서 취득할 수 있다. 정정된 훈련 샘플 세트를 획득한 후에, 서버는 이미지 프로세싱 모델에 대한 훈련 프로세스를 직접적으로 시작할 수 있거나, 즉, 단계(S302)를 수행할 수 있거나, 단계(S3013)(이 단계는 옵션임)를 수행하는 것을 계속할 수 있다.
S3013. 아바타 영역 세그먼트화 스테이지. 서버가 단계(S3012)에서 원래의 샘플 이미지 세트 내의 각각의 이미지의 아바타 영역을 결정하였으므로, 서버는 정정된 원래의 샘플 이미지 세트 내의 각각의 이미지를 크롭핑(crop)할 수 있고, 각각의 이미지 내의 아바타 영역을 오직 유지한다. 다시 말해서, 이미지 프로세싱 모델이 훈련되기 전에, 아바타 정정 및 아바타 세그먼트화는 원래의 샘플 이미지 세트에 대해 미리 수행되고, 원래의 샘플 이미지 세트를 이용함으로써 이미지 프로세싱 모델을 직접적으로 훈련시키는 것과 비교되고, 아바타 영역을 오직 유지하는 샘플 이미지를 이용하여 이미지 프로세싱 모델을 훈련시킴으로써, 이미지 프로세싱 모델의 훈련 효율이 개선될 수 있다.
S302. 제1 예측된 이미지 을 획득하기 위하여 제1 샘플 세트 내의 제1 샘플 이미지 를 프로세싱하기 위한 이미지 프로세싱 모델 내의 제1 생성기를 호출함.
제1 샘플 이미지 는 제1 샘플 세트 내의 임의의 제1 샘플 이미지이다.
구현예에서, 제1 생성기는 인코더 및 제1 디코더를 포함한다. 인코더는 샘플 이미지에 대응하는 특징 벡터를 획득하기 위하여 이미지 특징을 추출하도록 구성된다. 제1 디코더는 특징 벡터에 따라 예측된 이미지를 생성하도록 구성된다.
예시적으로, 제1 예측된 이미지를 획득하는 프로세스는, 제1 샘플 이미지 를 취득한 후에, 제1 생성기 내의 인코더에 의해, 제1 샘플 이미지 에 대응하는 제1 특징 벡터를 획득하기 위하여 제1 샘플 이미지 를 인코딩하는 것; 및 제1 특징 벡터를 획득한 후에, 서버에 의해, 제1 생성된 이미지 및 제1 영역 세그먼트화 정보를 획득하기 위하여 제1 특징 벡터를 디코딩하기 위한 제1 디코더를 호출하는 것을 포함한다. 제1 영역 세그먼트화 정보는 제1 생성된 이미지 내의 아바타 영역을 지시하기 위하여 이용된다. 추가로, 서버는 제1 영역 세그먼트화 정보에 따라 제1 생성된 이미지로부터 제1 예측된 이미지 을 추출한다.
예시적으로, 도 5는 이 출원의 예시적인 실시예에 의해 제공된 인코더의 개략적인 구조도이다. 도 5에서 도시된 바와 같이, 인코더는 P개의 특징 추출(feature extraction) 네트워크 및 특징 어그리게이션(feature aggregation) 계층을 포함하고, P는 양의 정수이다. 각각의 특징 추출 네트워크는 다운-샘플링(down-sampling) 계층을 포함한다. 그러므로, 하나의 인코더에 대응하는 P개의 다운-샘플링 계층이 있다. P개의 다운-샘플링 계층의 스케일 파라미터는 상이하다. 예를 들어, 제1 다운-샘플링 계층에서, 팽창(스케일 파라미터)=1이다. 제2 다운-샘플링 계층에서는, 팽창(스케일 파라미터)=2이다. 제3 다운-샘플링 계층에서는, 팽창(스케일 파라미터)=4이다. 추가로, 각각의 다운-샘플링 계층은 심도 분리가능 컨볼루션(DSN : depth separable convolution) 네트워크에 기초하여 구성된다. DSN은 컨볼루션 함수(Conv2d, k=1) 및 심도 컨볼루션 함수(DepthConv2d, k=3, s=2, 팽창=d)를 포함한다. 이것에 기초하여, 서버에 의해, 제1 특징 벡터를 획득하기 위하여 제1 샘플 이미지 를 인코딩하기 위한 인코더를 호출하는 구현예는,
P개의 특징 추출 네트워크 내의 다운-샘플링 계층(즉, P개의 다운-샘플링 계층)을 통해 P개의 상이한 스케일 파라미터 하에서 제1 샘플 이미지 의 특징 정보를 추출하는 것; 및
제1 샘플 이미지 에 대응하는 제1 특징 벡터를 획득하기 위하여 특징 어그리게이션 계층을 통해 P개의 스케일 파라미터 하에서 제1 샘플 이미지 의 특징 정보에 대해 어그리게이션 프로세싱을 수행하는 것을 포함한다.
하나의 가능한 구현예에서, 제1 디코더는 하나의 제1 특징 리쉐이핑 네트워크, Q개의 제1 이미지 재구성 네트워크, 및 하나의 제1 컨볼루션 네트워크를 포함하고, Q는 양의 정수이다. 각각의 제1 이미지 재구성 네트워크는 하나의 제1 잔차 네트워크 및 하나의 제1 업-샘플링(up-sampling) 계층을 포함한다.
제1 특징 리쉐이핑 네트워크는 제1 디코더로 입력된 특징 벡터를 특징 맵으로 리쉐이핑하도록 구성된다.
Q개의 제1 이미지 재구성 네트워크는 융합된 특징 이미지를 획득하기 위하여 특징 맵에 대해 제1 특징 복원 프로세싱을 수행하도록 구성된다.
제1 컨볼루션 네트워크는 융합된 특징 이미지에 대해 컨볼루션 프로세싱을 수행하고, 제1 디코더로 입력된 특징 벡터에 대응하는 생성된 이미지를 출력하도록 구성된다. 예시적으로, 도 6은 이 출원의 예시적인 실시예에 의해 제공된 제1 디코더의 개략적인 구조도이다. 도 6에서 도시된 바와 같이, 제1 디코더는 하나의 제1 특징 리쉐이핑 네트워크, Q개의 제1 이미지 재구성 네트워크, 및 하나의 제1 컨볼루션 네트워크를 포함하고, Q는 양의 정수이다. 각각의 제1 이미지 재구성 네트워크는 하나의 제1 잔차 네트워크 및 하나의 제1 업-샘플링 계층을 포함한다. 제1 특징 리쉐이핑 네트워크는 제1 디코더로 입력된 특징 벡터를 특징 맵으로 리쉐이핑하도록 구성된다. 제1 이미지 재구성 네트워크는 제1 특징 맵에 대해 제1 특징 복원을 수행하도록 구성되고, 즉, Q개의 제1 업-샘플링 계층(업 스케일 블록)을 통해 제1 샘플 이미지 의 크기와 일치해야 할 특징 맵의 크기를 복원하고, 제1 잔차 네트워크를 통해 업-샘플링 프로세스 내에 존재하는 경도 실종(gradient disappearance)의 문제를 완화하여, 제1 샘플 이미지에 대응하는 융합된 특징 이미지를 획득한다. 제1 컨볼루션 네트워크는 제1 디코더로 입력된 특징 벡터에 대응하는 생성된 이미지를 획득하기 위하여 제1 샘플 이미지에 대응하는 융합된 특징 이미지에 대해 컨볼루션 프로세싱을 수행하도록 구성된다. 이것에 기초하여, 서버에 의해, 제1 생성된 이미지 및 제1 영역 세그먼트화 정보를 획득하기 위하여 제1 특징 벡터를 디코딩하기 위한 제1 디코더를 호출하는 구현예는,
제1 특징 맵을 획득하기 위하여 특징 리쉐이핑 네트워크를 통해 제1 특징 벡터를 리쉐이핑하는 것;
제1 샘플 이미지에 대응하는 융합된 특징 이미지를 획득하기 위하여 Q개의 제1 이미지 재구성 네트워크를 통해 특징 맵에 대해 제1 특징 복원을 수행하는 것; 및
제1 샘플 이미지에 대응하는 제1 생성된 이미지 및 제1 영역 세그먼트화 정보를 획득하기 위하여 제1 컨볼루션 네트워크를 통해 제1 샘플 이미지에 대응하는 융합된 특징 이미지에 대해 컨볼루션 프로세싱을 수행하는 것을 포함할 수 있다.
S303. 제2 예측된 이미지 을 획득하기 위하여 제2 샘플 세트 내의 제2 샘플 이미지 를 프로세싱하기 위한 제1 생성기를 호출함. 제2 예측된 이미지 은 제2 예측된 아바타를 포함한다.
따라서, 제1 생성기에 의해 제1 샘플 이미지를 인코딩하는 프로세스와 동일한 추론에 의해, 제2 예측된 이미지를 취득하는 프로세스는, 제2 샘플 이미지를 취득한 후에, 제1 생성기 내의 인코더에 의해, 제2 샘플 이미지에 대응하는 제2 특징 벡터를 획득하기 위하여 제2 샘플 이미지를 인코딩하고, 그 다음으로, 서버에 의해, 제2 생성 이미지 및 제2 영역 세그먼트화 정보를 획득하기 위하여 제2 특징 벡터를 디코딩하기 위한 제1 디코더를 호출하는 것으로서 구현될 수 있다. 제2 영역 세그먼트화 정보는 제2 생성 이미지 내의 아바타 영역을 지시하기 위하여 이용된다. 추가로, 서버는 제2 영역 세그먼트화 정보에 따라 제2 생성된 이미지로부터 제2 예측된 이미지 을 추출한다.
서버에 의해, 제2 특징 벡터를 획득하기 위하여 제2 샘플 이미지 를 인코딩하기 위한 인코더를 호출하는 구현예는,
P개의 특징 추출 네트워크 내의 다운-샘플링 계층(즉, P개의 다운-샘플링 계층)을 통해 P개의 상이한 스케일 파라미터 하에서 제2 샘플 이미지 의 특징 정보를 추출하는 것; 및
제2 특징 벡터를 획득하기 위하여 특징 어그리게이션 계층을 통해 P개의 스케일 파라미터 하에서 제2 샘플 이미지 의 특징 정보에 대해 어그리게이션 프로세싱을 수행하는 것을 포함할 수 있다.
따라서, 제1 생성기에 의해 제1 특징 벡터를 디코딩하는 프로세스와 동일한 추론에 의해, 서버에 의해, 제2 생성된 이미지 및 제2 영역 세그먼트화 정보를 획득하기 위하여 제2 특징 벡터를 디코딩하기 위한 제1 디코더를 호출하는 구현예는,
제2 특징 맵을 획득하기 위하여 특징 리쉐이핑 네트워크를 통해 제2 특징 벡터를 리쉐이핑하는 것;
제2 샘플 이미지에 대응하는 융합된 특징 이미지를 획득하기 위하여 Q개의 제1 이미지 재구성 네트워크를 통해 제2 특징 맵에 대해 제1 특징 복원 프로세싱을 수행하는 것; 및
제2 샘플 이미지에 대응하는 제2 생성된 이미지 및 제2 영역 세그먼트화 정보를 획득하기 위하여 제1 컨볼루션 네트워크를 통해 제2 샘플 이미지에 대응하는 융합된 특징 이미지에 대해 컨볼루션 프로세싱을 수행하는 것을 포함할 수 있다.
S304. 제3 예측된 이미지 을 획득하기 위하여 제2 샘플 이미지 를 프로세싱하기 위한 제2 생성기를 호출함. 제3 예측된 이미지 은 제3 예측된 아바타를 포함한다. 제2 생성기는 제1 생성기와 동일한 특징 추출 유닛을 가진다.
제2 생성기 및 제2 생성기 내의 동일한 특징 추출 유닛은 인코더이고, 제2 생성기 및 제1 생성기는 동일한 구조 및 파라미터를 가진다. 제2 생성기는 제1 생성기의 훈련을 보조하기 위하여 이용되고, 추가로, 제2 생성기는 제1 생성기 내의 인코더의 훈련을 보조하기 위하여 이용된다.
하나의 가능한 구현예에서, 제2 생성기는 인코더, 제2 디코더, 및 아이덴티티 인식 네트워크를 포함한다.
인코더(즉, 제1 생성기 및 제2 생성기의 동일한 특징 추출 구조)는 특징 벡터를 획득하기 위해 샘플 이미지 내의 이미지 특징을 추출하기 위하여 이용된다. 아이덴티티 인식 네트워크는 샘플 이미지, 또는 샘플 이미지에 대응하는 특징 벡터에 기초하여, 이미지의 식별 정보를 취득하도록 구성된다. 식별 정보는 상이한 이미지에 대응하는 상이한 식별부(ID : identification), 인코딩 정보 등일 수 있다. 제2 디코더는 인코더에 의해 취득된 특징 벡터 및 아이덴티티 인식 네트워크에 의해 제공된 식별 정보에 따라 예측된 이미지를 생성하도록 구성된다. 제3 예측된 이미지 을 생성하는 프로세스에서, 서버는 제2 샘플 이미지 에 대응하는 제2 특징 벡터를 획득하기 위하여 제2 샘플 이미지 를 인코딩하기 위한 인코더를 호출한다. 제2 샘플 이미지 를 인코딩할 때, 또는 제2 샘플 이미지 를 인코딩한 후에, 서버는 (제2 샘플 이미지 내의 샘플 아바타에 대응하는 사용자 ID와 같은) 제2 샘플 이미지 에 대응하는 식별 정보를 획득하기 위하여, 제2 샘플 이미지 또는 제2 샘플 이미지 에 대응하는 제2 특징 벡터에 기초하여 아이덴티티 인식을 수행하기 위한 아이덴티티 인식 네트워크를 호출한다. 추가로, 서버는 제3 생성된 이미지 및 제3 영역 세그먼트화 정보를 획득하기 위하여 제2 샘플 이미지 의 식별 정보에 따라 제2 특징 벡터를 디코딩하기 위한 제2 디코더를 호출한다. 제3 영역 세그먼트화 정보는 제3 생성 이미지 내의 아바타 영역을 지시하기 위하여 이용된다. 추가로, 서버는 제3 영역 세그먼트화 정보에 따라 제3 생성된 이미지로부터 제3 예측된 이미지 을 추출한다.
서버에 의해, 제2 특징 벡터를 획득하기 위하여 제2 샘플 이미지 를 인코딩하기 위한 인코더를 호출하는 구현예는,
P개의 특징 추출 네트워크 내의 다운-샘플링 계층(즉, P개의 다운-샘플링 계층)을 통해 P개의 상이한 스케일 파라미터 하에서 제2 샘플 이미지 의 특징 정보를 추출하는 것; 및
제2 특징 벡터를 획득하기 위하여 특징 어그리게이션 계층을 통해 P개의 스케일 파라미터 하에서 제2 샘플 이미지 의 특징 정보에 대해 어그리게이션 프로세싱을 수행하는 것을 포함할 수 있다.
도 7은 이 출원의 예시적인 실시예에 의해 제공된 제2 디코더의 개략적인 구조도이다. 도 7에서 도시된 바와 같이, 제2 디코더는 하나의 제2 특징 리쉐이핑 네트워크, Q개의 제2 이미지 재구성 네트워크(제1 디코더 내의 제1 이미지 재구성 네트워크의 수량과 일치함), 및 하나의 제2 컨볼루션 네트워크를 포함하고, Q는 양의 정수이다. 각각의 제2 이미지 재구성 네트워크는 하나의 제2 잔차 네트워크, 하나의 제2 업-샘플링 계층, 및 하나의 적응적 모듈(AdaIN)을 포함한다. 제2 특징 리쉐이핑 네트워크는 제2 디코더로 입력된 특징 벡터를 특징 맵으로 리쉐이핑하도록 구성된다. 제2 이미지 재구성 네트워크는 특징 맵에 대해 제2 특징 복원 프로세싱을 수행하고, 즉, Q개의 제2 업-샘플링 계층을 통해 제2 샘플 이미지 의 크기와 일치해야 할 특징 맵의 크기를 복원하도록 구성된다. 적응적 모듈은 업-샘플링의 프로세스에서 제2 디코더로 입력된 특징 벡터에 대응하는 식별 정보를 추가하도록 구성되어, 이로써 제2 디코더는 식별 정보에 기초하여 특징 융합을 수행하고, 제2 잔차 네트워크를 통해 업-샘플링 프로세스에서 존재하는 경도 실종의 문제를 완화하여, 제2 샘플 이미지에 대응하는 융합된 특징 이미지를 획득한다. 다시 말해서, 적응적 모듈은 제2 디코더의 디코딩 프로세스에서 제2 샘플 이미지 의 식별 정보에 기초하여 식별 정보에 대응하는 제3 특징 벡터를 취득하도록 구성된다. 제3 특징 벡터는 제2 디코더로 입력된 특징 벡터를 디코딩하기 위한 제2 디코더를 지시하기 위하여 이용된다. 제2 컨볼루션 네트워크는 제2 디코더로 입력된 특징 벡터에 대응하는 생성된 이미지를 획득하기 위하여 제2 샘플 이미지에 대응하는 융합된 특징 이미지에 대해 컨볼루션 프로세싱을 수행하도록 구성된다. 이것에 기초하여, 서버에 의해, 제3 생성된 이미지 및 제3 영역 세그먼트화 정보를 획득하기 위하여 제2 샘플 이미지의 식별 정보에 따라 제2 특징 벡터를 디코딩하기 위한 제2 디코더를 호출하는 구현예는,
제2 특징 맵을 획득하기 위하여 특징 리쉐이핑 네트워크를 통해 제2 특징 벡터를 리쉐이핑하는 것;
제2 샘플 이미지에 대응하는 융합된 특징 이미지를 획득하기 위하여 Q개의 제2 이미지 재구성 네트워크를 통해 제2 특징 맵에 대해 제2 특징 복원 프로세싱을 수행하는 것; 및
제2 샘플 이미지에 대응하는 제3 생성된 이미지 및 제3 영역 세그먼트화 정보를 획득하기 위하여 제2 컨볼루션 네트워크를 통해 제2 샘플 이미지에 대응하는 융합된 특징 이미지에 대해 컨볼루션 프로세싱을 수행하는 것을 포함할 수 있다.
S305. 제1 손실 함수의 함수 값을 결정함. 제1 손실 함수는 제1 샘플 이미지 내의 타깃 아바타와 제1 예측된 아바타 사이의 차이를 지시하기 위하여 이용된다.
하나의 가능한 구현예에서, 제1 손실 함수의 함수 값을 결정하는 프로세스는,
제1 샘플 이미지 및 제1 예측된 아바타를 각각 판별하기 위하여 제1 판별기를 호출하는 것;
제1 샘플 이미지 의 제1 판별 결과 및 제1 예측된 아바타의 제2 판별 결과에 기초하여 제1 손실 함수의 제1 분기 함수의 함수 값을 결정하는 것 - 제1 판별 결과는 제1 샘플 이미지 가 실제의 이미지인지 여부를 지시하기 위하여 이용되고, 제2 판별 결과는 제1 예측된 아바타가 실제의 이미지인지 여부를 지시하기 위하여 이용됨 -;
제1 손실 함수의 제2 분기 함수의 함수 값을 결정하는 것 - 제1 손실 함수의 제2 분기 함수는 제1 샘플 이미지 내의 타깃 아바타의 제1 지각적 특징과 제1 예측된 아바타의 제2 지각적 특징 사이의 차이를 지시하기 위하여 이용됨 -; 및
제1 손실 함수의 제1 분기 함수의 함수 값, 및 제1 손실 함수의 제2 분기 함수의 함수 값의 합을, 제1 손실 함수의 함수 값으로서 결정하는 것으로서 구현될 수 있다.
도 6은 이 출원의 예시적인 실시예에 의해 제공된 제1 손실 함수의 결정 프로세스를 예시하는 개략도이다. 도 6에서 도시된 바와 같이, 서버는 제1 판별기(특수한 판별기) 및 특징 지각 네트워크를 호출함으로써 제1 손실 함수의 함수 값의 결정을 실현한다. 예시적으로, 특징-인지 네트워크(feature-aware network)는 학습된 지각적 이미지 패치 유사도(LPIPS : learned perceptual image patch similarity) 네트워크로서 구현될 수 있다. 이미지 프로세싱 모델에 의해 제1 샘플 이미지 를 취득하고 제1 예측된 이미지 을 획득하기 위하여 제1 생성기를 통해 제1 샘플 이미지 를 프로세싱하는 구현예는 단계(S302)를 참조할 수 있고, 여기에서 상세하게 설명되지 않을 것이다.
한편으로, 제1 예측된 이미지 을 획득한 후에, 서버는 제1 판별기를 통해 제1 샘플 이미지 및 제1 예측된 이미지 을 각각 판별하고, 즉, 제2 샘플 이미지 및 제1 예측된 이미지 이 실제의 이미지인지 여부를 각각 판정하고, 제1 샘플 이미지 의 제1 판별 결과 및 제1 예측된 이미지 의 제2 판별 결과에 기초하여 제1 손실 함수의 제1 분기 함수(branch function)의 함수 값을 결정한다. 제1 분기 함수는 다음으로서 표현될 수 있다:
여기서, 은 제1 GAN(제1 생성기(G1) 및 제1 판별기(D1)를 포함함)의 제1 손실 함수의 제1 분기 함수를 나타내고, 은 제1 생성기(G)에 의해 생성된 제1 예측된 이미지 과 제1 샘플 이미지 사이의 차이를 최소화하는 것을 나타내고, 는 제1 판별기에 의한 제1 예측된 이미지 의 판별 결과와 제1 샘플 이미지 의 판별 결과 사이의 차이를 최대화하는 것을 나타내고, E(x) 함수는 x의 예상을 구하기 위하여 이용되고, 는 제1 판별기를 이용함으로써 를 판별하는 것을 나타내기 위하여 이용되고, 는 제1 샘플 이미지, 즉, xi이고, 는 인코더를 이용함으로써 를 인코딩하는 것을 나타내기 위하여 이용되고, 는 제1 디코더를 이용함으로써 를 디코딩하는 것을 나타내기 위하여 이용된다. 따라서, 는 제1 판별기를 이용함으로써 제1 샘플 이미지 를 판별하는 것을 나타내고, 는 제1 예측된 이미지, 즉, 이고, 은 제1 판별기를 이용함으로써 제1 예측된 이미지, 즉, 을 판별하는 것을 나타낸다는 것이 추론될 수 있다.
다른 한편으로, 서버는 제1 샘플 이미지 에 대응하는 제1 지각적 특징 및 제1 예측된 이미지 에 대응하는 제2 지각적 특징을 획득하기 위하여, LPIPS 네트워크를 통해 제1 샘플 이미지 및 제1 예측된 이미지 에 대해 특징 지각을 수행하고, 제1 특징 비교 결과를 획득하기 위하여 제1 지각적 특징 및 제2 지각적 특징에 대해 특징 비교를 수행한다. 제1 특징 비교 결과는 제1 샘플 이미지 와 제1 예측된 이미지 사이의 특징 차이를 반영하기 위하여 이용된다. 제1 특징 비교 결과를 획득한 후에, 서버는 제1 특징 비교 결과에 기초하여 제1 손실 함수의 제2 분기 함수의 함수 값을 결정한다. 제2 분기 함수는 다음으로서 표현될 수 있다:
여기서, 은 LPIPS 네트워크에 대응하는 제1 손실 함수의 제2 분기 함수를 나타내고, 는 LPIPS 네트워크를 통해 에 대해 특징 지각을 수행하는 것을 나타낸다. 는 제1 샘플 이미지, 즉, 이고, 는 제1 예측된 이미지, 즉, 인 것은 제1 손실 함수의 제1 분기 함수로부터 알려질 수 있다. 이것에 기초하여, 는 LPIPS 네트워크를 통해 제1 예측된 이미지, 즉, 에 대해 특징 지각을 수행하는 것을 나타내고, 는 LPIPS 네트워크를 통해 제1 샘플 이미지 에 대해 특징 지각을 수행하는 것을 나타낸다.
제1 손실 함수의 제1 분기 함수의 함수 값, 및 제1 손실 함수의 제2 분기 함수의 함수 값을 획득한 후에, 서버는 제1 손실 함수의 제1 분기 함수의 함수 값, 및 제1 손실 함수의 제2 분기 함수의 함수 값의 합을, 제1 손실 함수의 함수 값으로서 결정한다. 제1 손실 함수 는 다음으로서 표현될 수 있다:
S306. 제2 손실 함수의 함수 값을 결정함. 제2 손실 함수는 제2 샘플 이미지 내의 샘플 아바타의 제1 유형 속성과 제2 예측된 아바타의 제1 유형 속성 사이의 차이를 지시하기 위하여 이용된다.
하나의 가능한 구현예에서, 제2 손실 함수의 함수 값을 결정하는 프로세스는,
제2 예측된 아바타를 판별하기 위한 제1 판별기를 호출하는 것;
제2 예측된 아바타의 제3 판별 결과에 기초하여 제2 손실 함수의 제1 분기 함수의 함수 값을 결정하는 것 - 제3 판별 결과는 제2 예측된 아바타가 실제의 이미지인지 여부를 지시하기 위하여 이용됨 -;
속성 비교 결과를 획득하기 위하여, 제2 샘플 이미지 내의 샘플 아바타의 제1 유형 속성 및 제2 예측된 아바타의 제1 유형 속성에 대해 속성 비교를 수행하는 것;
속성 비교 결과에 기초하여 제2 손실 함수의 제2 분기 함수의 함수 값을 결정하는 것; 및
제2 손실 함수의 제1 분기 함수의 함수 값, 및 제2 손실 함수의 제2 분기 함수의 함수 값의 합을, 제2 손실 함수의 함수 값으로서 결정하는 것으로서 구현될 수 있다.
도 9는 이 출원의 예시적인 실시예에 의해 제공된 제2 손실 함수의 결정 프로세스를 예시하는 개략도이다. 도 9에서 도시된 바와 같이, 서버는 속성 인식 네트워크 및 제1 판별기를 호출함으로써 제2 손실 함수의 함수 값의 결정을 실현한다. 속성 인식 네트워크는 얼굴 표정을 지시하기 위한, 눈 크기, 눈알 위치, 및 입 크기와 같은 표정 속성을 인식할 수 있다. 속성 인식 네트워크는 [0, 1]의 범위인 연속 값을 출력한다. 예를 들어, 눈 크기에 대하여, 0은 감겨진 눈을 지시하고, 1은 완전히 열린 눈을 지시한다. 눈알 위치에 대하여, 0은 가장 좌측 측부를 향한 바이어스(bias)를 지시하고, 1은 가장 우측 측부를 향한 바이어스를 지시한다. 입 크기에 대하여, 0은 닫혀진 입을 지시하고, 1은 완전히 열린 입을 지시한다. 이미지 프로세싱 모델에 의해 제2 샘플 이미지 를 취득하고 제2 예측된 이미지 을 획득하기 위하여 제1 생성기를 통해 제2 샘플 이미지 를 프로세싱하는 구현예는 단계(S303)를 참조할 수 있고, 여기에서 상세하게 설명되지 않을 것이다.
한편으로, 제2 예측된 이미지 을 획득한 후에, 서버는 제1 판별기를 통해 제2 예측된 이미지 을 판별하고, 즉, 제2 예측된 이미지 이 실제의 이미지인지 여부를 판정하고, 제2 예측된 이미지 의 제3 판별 결과에 기초하여 제2 손실 함수의 제1 분기 함수의 함수 값을 결정한다. 제1 분기 함수는 다음으로서 표현될 수 있다:
여기서, 은 제1 GAN(제1 생성기(G1) 및 제1 판별기(D1)를 포함함)의 제2 손실 함수의 제1 분기 함수를 나타내고, 은 제1 생성기(G)에 의해 생성된 제2 예측된 이미지 과 제2 샘플 이미지 사이의 차이를 최소화하는 것을 나타내고(이로써 제1 판별기에 의한 제2 예측된 이미지 의 판별 결과는 참임), E(x) 함수는 x의 예상을 구하기 위하여 이용되고, 는 제1 판별기를 이용함으로써 를 판별하는 것을 나타내기 위하여 이용되고, 는 제2 샘플 이미지 이고, 는 인코더를 이용함으로써 를 인코딩하는 것을 나타내기 위하여 이용되고, 는 제1 디코더를 이용함으로써 를 디코딩하는 것을 나타내기 위하여 이용된다. 따라서, 은 제2 예측된 이미지 인 것이 추론될 수 있고, 는 제2 예측된 이미지 이 제1 판별기를 이용함으로써 판별된다는 것을 나타낸다.
다른 한편으로, 서버는 제2 샘플 이미지에 대응하는 제1 유형 속성 및 제1 예측된 이미지의 제1 유형 속성을 획득하기 위하여 속성 인식 네트워크를 통해 제2 샘플 이미지 및 제2 예측된 이미지 에 대해 속성 특징 추출을 수행하고, 속성 비교 결과를 획득하기 위하여 제2 샘플 이미지의 제1 유형 속성 및 제1 예측된 이미지의 제1 유형 속성에 대해 속성 비교를 수행한다. 속성 비교 결과는 제2 샘플 이미지 와 제2 예측된 이미지 사이의 속성 차이를 반영하기 위하여 이용된다. 제2 손실 함수의 함수 값은 속성 비교 결과에 기초하여 결정된다. 제2 손실 함수는 다음으로서 표현될 수 있다:
여기서, 은 속성 인식 네트워크의 손실 함수를 나타내고, 은 속성 인식 네트워크에 의해 에 대해 속성 인식을 수행하는 것을 나타낸다. 는 제2 샘플 이미지 이고, 가 제2 예측된 이미지 인 것은 제2 손실 함수의 제1 분기 함수로부터 알려질 수 있다. 이것에 기초하여, 은 속성 인식 네트워크를 통해 제2 예측된 이미지 에 대해 속성 특징 추출을 수행하는 것을 나타내고, 은 속성 인식 네트워크를 통해 제2 샘플 이미지 에 대해 속성 특징 추출을 수행하는 것을 나타낸다.
제2 손실 함수의 제1 분기 함수의 함수 값, 및 제2 손실 함수의 제2 분기 함수의 함수 값을 획득한 후에, 서버는 제2 손실 함수의 제1 분기 함수의 함수 값, 및 제2 손실 함수의 제2 분기 함수의 함수 값의 합을, 제2 손실 함수의 함수 값으로서 결정한다. 제2 손실 함수 는 다음으로서 표현될 수 있다:
S307. 제3 손실 함수의 함수 값을 결정함. 제3 손실 함수는 제2 샘플 이미지 내의 샘플 아바타와 제3 예측된 아바타 사이의 차이를 지시하기 위하여 이용된다.
하나의 가능한 구현예에서, 제3 손실 함수의 함수 값을 결정하는 프로세스는,
제2 샘플 이미지 및 제3 예측된 아바타를 각각 판별하기 위한 제2 판별기를 호출하는 것;
제2 샘플 이미지 의 제4 판별 결과 및 제3 예측된 아바타의 제5 판별 결과에 기초하여 제3 손실 함수의 제1 분기 함수의 함수 값을 결정하는 것 - 제4 판별 결과는 제2 샘플 이미지 가 실제의 이미지인지 여부를 지시하기 위하여 이용되고, 제5 판별 결과는 제3 예측된 아바타가 실제의 이미지인지 여부를 지시하기 위하여 이용됨 -;
제3 손실 함수의 제2 분기 함수의 함수 값을 결정하는 것 - 제3 손실 함수의 제2 분기 함수는 제2 샘플 이미지 내의 샘플 아바타의 제3 지각적 특징과 제3 예측된 아바타의 제4 지각적 특징 사이의 차이를 지시하기 위하여 이용됨 -; 및
제3 손실 함수의 제1 분기 함수의 함수 값, 및 제3 손실 함수의 제2 분기 함수의 함수 값의 합을, 제3 손실 함수의 함수 값으로서 결정하는 것으로서 구현될 수 있다.
도 10은 이 출원의 예시적인 실시예에 의해 제공된 제3 손실 함수의 결정 프로세스를 예시하는 개략도이다. 도 10에서 도시된 바와 같이, 서버는 제2 판별기(일반화된 판별기), 아이덴티티 인식 네트워크, 및 특징 지각 네트워크를 호출함으로써 제3 손실 함수의 함수 값의 결정을 실현한다. 제3 예측된 이미지 을 획득하기 위하여 제2 생성기를 통해 이미지 프로세싱 모델에 의해 제2 샘플 이미지 를 프로세싱하는 구현예는 단계(S304)를 참조할 수 있고, 여기에서 상세하게 설명되지 않을 것이다.
한편으로, 제3 예측된 이미지 을 획득한 후에, 서버는 제2 판별기를 통해 제2 샘플 이미지 및 제3 예측된 이미지 을 각각 판별하고, 즉, 제2 샘플 이미지 및 제3 예측된 이미지 이 실제의 이미지인지 여부를 각각 판정하고, 제2 샘플 이미지 의 제4 판별 결과 및 제3 예측된 이미지 의 제5 판별 결과에 기초하여 제3 손실 함수의 제1 분기 함수의 함수 값을 결정한다. 제1 분기 함수는 다음으로서 표현될 수 있다:
여기서, 은 제2 GAN'(제2 생성기(G2) 및 제2 판별기(D2)를 포함함)의 제3 손실 함수의 제1 분기 함수를 나타내고, 은 제2 생성기(G)에 의해 생성된 제3 예측된 이미지 과 제2 샘플 이미지 사이의 차이를 최소화하는 것을 나타내고, 는 제2 판별기에 의한 제3 예측된 이미지 의 판별 결과와 제2 샘플 이미지 의 판별 결과 사이의 차이를 최대화하는 것을 나타내고, E(x) 함수는 x의 예상을 구하기 위하여 이용되고, 는 제1 판별기를 이용함으로써 에 대해 판별을 수행하는 것을 나타내기 위하여 이용되고, 는 제2 샘플 이미지 이고, 는 인코더를 이용함으로써 를 인코딩하는 것을 나타내기 위하여 이용되고, 에 따라 제2 디코더를 이용함으로써 를 디코딩하는 것을 나타내기 위하여 이용된다. 따라서, 는 제2 판별기를 이용함으로써 제2 샘플 이미지 를 판별하는 것을 나타내고, 는 제3 예측된 이미지 이고, 는 제2 판별기를 이용함으로써 제3 예측된 이미지 을 판별하는 것을 나타낸다는 것이 추론될 수 있다.
다른 한편으로, 서버는 제2 샘플 이미지 에 대응하는 제3 지각적 특징 및 제3 예측된 이미지 에 대응하는 제4 지각적 특징을 획득하기 위하여, LPIPS 네트워크를 통해 제2 샘플 이미지 및 제3 예측된 이미지 에 대해 특징 지각을 수행하고, 제2 특징 비교 결과를 획득하기 위하여 제3 지각적 특징 및 제4 지각적 특징에 대해 특징 비교를 수행한다. 제2 특징 비교 결과는 제2 샘플 이미지 와 제3 예측된 이미지 사이의 특징 차이를 반영하기 위하여 이용된다. 제2 특징 비교 결과를 획득한 후에, 서버는 제2 특징 비교 결과에 기초하여 제3 손실 함수의 제2 분기 함수의 함수 값을 결정한다. 제2 분기 함수는 다음으로서 표현될 수 있다:
여기서, 은 LPIPS 네트워크의 제3 손실 함수의 제2 분기 함수를 나타내고, 는 LPIPS 네트워크를 통해 x에 대해 특징 지각을 수행하는 것을 나타낸다. 는 제2 샘플 이미지, 즉, 이고, 는 제3 예측된 이미지 인 것은 제3 손실 함수의 제1 분기 함수로부터 알려질 수 있다. 이것에 기초하여, 는 LPIPS 네트워크를 통해 제3 예측된 이미지, 즉, 에 대해 특징 지각을 수행하는 것을 나타내고, 는 LPIPS 네트워크를 통해 제2 샘플 이미지 에 대해 특징 지각을 수행하는 것을 나타낸다.
제3 손실 함수의 제1 분기 함수의 함수 값, 및 제3 손실 함수의 제2 분기 함수의 함수 값을 획득한 후에, 서버는 제3 손실 함수의 제1 분기 함수의 함수 값, 및 제3 손실 함수의 제2 분기 함수의 함수 값의 합을, 제3 손실 함수의 함수 값으로서 결정한다. 제3 손실 함수 는 다음으로서 표현될 수 있다:
S308. 제1 손실 함수의 함수 값, 제2 손실 함수의 함수 값, 및 제3 손실 함수의 함수 값에 기초하여 타깃 손실 함수의 함수 값을 결정함.
임의적으로, 모델 훈련 프로세스에서, 이미지 프로세싱 모델의 타깃 손실 함수의 함수 값은 제1 손실 함수의 함수 값 및 제2 손실 함수의 함수 값에 기초하여 결정될 수 있다.
제3 손실 함수의 값에 기초한 훈련을 예로서 취하면, 타깃 손실 함수는 다음으로서 표현될 수 있다:
임의적으로, 타깃 손실 함수의 함수 값은 제1 손실 함수의 함수 값, 제2 손실 함수의 함수 값, 및 제3 손실 함수의 함수 값의 합일 수 있거나, 타깃 손실 함수의 함수 값은 제1 손실 함수의 함수 값, 제2 손실 함수의 함수 값, 및 제3 손실 함수의 함수 값에 대해 가중화(weighting) 및 합산(summing)을 수행함으로써 획득된 결과일 수 있다. 3개의 함수 값 중의 매 2개의 가중치는 서로 동일하거나 상이할 수 있다. 예시적으로, 타깃 손실 함수는 다음으로서 표현될 수 있다:
여기서, a는 제1 손실 함수에 대응하는 가중치 값을 나타내고, b는 제2 손실 함수에 대응하는 가중치 값을 나타내고, c는 제3 손실 함수에 대응하는 가중치 값을 나타낸다. 3개의 함수 값 중의 매 2개의 값은 서로 동일하거나 상이할 수 있고, a+b+c=1이다.
하나의 가능한 구현예에서, 제1 손실 함수, 제2 손실 함수, 및 제3 손실 함수를 계산하는 프로세스는 동시에 수행될 수 있다.
S309. 타깃 손실 함수의 함수 값에 따라 이미지 프로세싱 모델을 훈련시킴.
구현예에서, 서버는 총 손실 함수의 손실 값을 감소시키기 위하여 이미지 프로세싱 모델의 파라미터(예를 들어, 컨볼루션 계층의 수, 업-샘플링 계층의 수, 다운-샘플링 계층의 수, 및 팽창)를 조절한다. 예시적으로, 서버는 타깃 손실 함수의 함수 값에 따라 역 전파(back propagation)를 통해 오차를 제1 생성기 및 제2 생성기(인코더 및 디코더)로 피드백하고, 경도 하강 방법(gradient descent method)을 이용함으로써 제1 생성기 및 제2 생성기의 파라미터 값을 업데이트한다. 임의적으로, 모델 훈련 동안에, 파라미터 업데이팅을 거쳐야 할 부분은, 인코더, 특정 디코더, 일반화된 디코더, 특정 판별기, 및 일반화된 판별기를 포함한다. LPIPS 네트워크, 아이덴티티 인식 네트워크, 및 속성 인식 네트워크는 파라미터 업데이팅에 참여하지 않는다.
하나의 가능한 구현예에서, 이미지 프로세싱 모델의 파라미터를 조절할 때, 서버는 를 통해 제1 생성기의 파라미터를 조절할 수 있고, 를 통해 제2 생성기의 파라미터를 조절할 수 있다.
이미지 프로세싱 모델의 훈련 프로세스에서, 파라미터가 업데이트될 때마다, 서버는 업데이트된 이미지 프로세싱 모델이 훈련 완료 조건에 도달하는지 여부를 판정할 것이고, 업데이트된 이미지 프로세싱 모델이 훈련 완료 조건에 도달하지 않는 경우에, 위의 단계(S302) 내지 단계(S309)에 따라 반복하고, 이미지 프로세싱 모델이 훈련 완료 조건에 도달할 때까지 이미지 프로세싱 모델을 훈련시키는 것을 계속하거나, 업데이트된 이미지 프로세싱 모델이 훈련 완료 조건에 도달하는 경우에, 이미지 프로세싱 모델의 훈련을 종료시킨다.
임의적으로, 제1 생성기에 추가적으로, 이 출원의 실시예에서의 이미지 프로세싱 모델은 제2 생성기, 제1 판별기, 제2 판별기, 특징 지각 네트워크, 아이덴티티 인식 네트워크, 및 속성 인식 네트워크를 더 포함할 수 있다. 모델 훈련 프로세스에서는, 제1 생성기, 제2 생성기, 제1 판별기, 및 제2 판별기의 파라미터가 모두 업데이트된다. 이미지 프로세싱 모델의 훈련이 종료된 후에, 제1 생성기는 유지되고, 다시 말해서, 훈련 완료 조건에 도달하는 이미지 프로세싱 모델은 훈련이 종료된 후에 제1 생성기를 포함한다.
또는, 이 출원의 이미지 프로세싱 모델은 제1 생성기를 포함한다. 모델 훈련 프로세스에서는, 이미지 프로세싱 모델 이외의 다른 네트워크 구조가 이미지 프로세싱 모델의 훈련을 보조하기 위하여 호출된다. 훈련 완료 조건에 도달한 후에, 훈련된 이미지 프로세싱 모델이 애플리케이션을 위하여 취득된다.
제1 유형 속성이 비-아이덴티티 인식 속성이고, 제2 유형 속성이 아이덴티티 인식 속성일 때, 입력 이미지는 훈련된 이미지 프로세싱 모델을 통해 프로세싱되고, 획득되는 예측된 이미지는, 입력 이미지 내의 아바타의 비-아이덴티티 인식 속성을 유지하지만, 타깃 아바타의 아이덴티티 인식 속성을 가지는 이미지일 수 있다. 예시적으로, 예측된 이미지 내의 아바타의, 표정, 자세, 및 조명과 같은 특징 속성은 입력 이미지의 것과 일치하고, 예측된 이미지의, 얼굴 특징, 피부, 모발, 및 안경과 같은 외모 특징은 타깃 아바타의 것과 일치한다.
예시적으로, 훈련된 이미지 프로세싱 모델은 비디오 아바타 대체 시나리오에서 적용될 수 있다. 서버에 의해 테스트 비디오에 대해 아바타 대체 프로세싱을 수행하는 프로세스를 예로서 취하면, 도 11은 이 출원의 예시적인 실시예에 의해 제공된 테스트 비디오의 프로세싱을 예시하는 흐름도이다. 도 11에서 도시된 바와 같이, 서버는 테스트 비디오를 취득한다. 테스트 비디오는 테스트 이미지의 R개의 프레임을 포함하고, 테스트 이미지의 각각의 프레임은 정정된 아바타를 포함하고, R은 양의 정수이다.
훈련된 이미지 프로세싱 모델의 제1 생성기는 테스트 이미지의 R개의 프레임에 각각 대응하는 예측된 이미지를 획득하기 위하여 테스트 이미지의 R개의 프레임을 각각 프로세싱하도록 호출된다. 예측된 이미지의 R개의 프레임은 타깃 사용자의 타깃 아바타를 포함하고, 예측된 이미지의 R개의 프레임 내의 아바타의 제1 유형 속성은 대응하는 테스트 이미지 내의 정정된 아바타의 제1 유형 속성과 일치한다.
이미지 인페인팅(image inpainting)은 정정된 아바타가 테스트 비디오에서 삭제되는 테스트 이미지의 R개의 프레임에 대해 수행된다.
예측된 이미지의 R개의 프레임은 타깃 비디오를 획득하기 위하여 이미지-인페인팅된 테스트 비디오 내의 대응하는 테스트 이미지와 각각 융합된다.
한편으로, 서버는 테스트 이미지 세트를 획득하기 위하여 테스트 비디오에 대해 이미지 프레임 추출(이미지 추출)을 수행한다. 테스트 이미지의 각각의 프레임은 테스트 아바타를 포함한다. 서버는 테스트 이미지 세트 내의 테스트 아바타를 정정하고, 테스트 아바타를 정정하는 방식은 S3012에서의 구현예를 참조할 수 있고, 이것은 여기에서 상세하게 설명되지 않을 것이다. 정정이 완료된 후에, 서버는 테스트 이미지의 각각의 프레임에 대응하는 예측된 이미지를 획득하기 위하여 테스트 이미지의 각각의 프레임을 각각 프로세싱하기 위한 아바타 대체 모델을 호출한다. 예측된 이미지 내의 아바타는 원래의 아바타의 제1 유형 속성, 및 이미지 프로세싱 모델이 훈련될 때에 제1 샘플 이미지 내에 포함된 타깃 사용자에 대응하는 아바타의 제2 유형 속성을 포함할 수 있다.
임의적으로, 테스트 이미지의 각각의 프레임에 대응하는 예측된 아바타를 획득한 후에, 테스트 이미지의 각각의 프레임 내의 아바타는 대체될 수 있다. 도 12는 이 출원의 예시적인 실시예에 의해 제공된 훈련된 이미지 프로세싱 모델에 의한 테스트 이미지의 생성 프로세싱을 예시하는 흐름도이다. 도 12에서, 서버에 의해, 테스트 이미지의 각각의 프레임에 대응하는 예측된 이미지를 획득하기 위하여 훈련된 이미지 프로세싱 모델을 각각 이용함으로써 테스트 이미지의 각각의 프레임을 프로세싱하는 구현예는 S302 또는 S303으르 참조할 수 있고, 이것은 여기에서 상세하게 설명되지 않을 것이다.
다른 한편으로, 서버에 의해 프로세싱되는 테스트 비디오 내의 이미지에 대해 아바타 리쉐이핑을 수행하는 프로세스를 예로서 취하면, 서버는 테스트 비디오에서 테스트 이미지 내의 정정된 아바타를 삭제할 필요가 있고, 정정된 아바타가 테스트 비디오로부터 삭제된 후에 획득된 테스트 이미지의 R개의 프레임에 대해 이미지 인페인팅 프로세싱을 수행하고, 이것은 원래의 아바타가 테스트 이미지로부터 삭제된 후에, (배경과 같은) 스스로 인페인팅되어야 할 이미지 또는 이미지 라이브러리 정보에 따라 인페인팅되어야 할 이미지의 누락 영역(즉, 아바타 변경 영역)을 인페인팅하는 목적을 가져서, 이로써 인페인팅된 이미지는 상대적으로 자연스러워 보인다.
도 13은 이 출원의 예시적인 실시예에 의해 제공된 테스트 비디오의 프로세싱을 예시하는 흐름도이다. 도 13에서 도시된 바와 같이, 서버는 타깃 비디오를 획득하기 위하여 예측된 이미지의 각각의 프레임을 대응하는 이미지-인페인팅된 테스트 이미지와 융합한다.
임의적으로, 서버는 융합된 비디오에 대해 컬러 정정(예를 들어, 피부 색조 조절(skin tone adjustment)을 수행할 수 있어서, 이로써 획득된 타깃 비디오는 더 현실적이다.
하나의 실시예에서, 사용자는 노래 또는 댄스 비디오를 업로드할 수 있다. 서버는 훈련된 이미지 프로세싱 모델을 이용함으로써 사용자에 의해 업로드된 비디오 내의 아바타를 스타 아바타/만화 아바타 등으로 (타깃 사용자의 아바타로서) 대체할 수 있어서, 아바타-리쉐이핑된 타깃 비디오를 획득할 수 있고, 이에 의해, 비디오의 관심을 개선시킬 수 있다. 추가적으로, 사용자는 또한, 훈련된 이미지 프로세싱 모델을 통해 "아바타 변경" 라이브 브로드캐스트(즉, 라이브 브로드캐스트 사용자의 아바타를 타깃 사용자의 아바타인 것으로 실시간으로 리쉐이핑하는 것)를 수행할 수 있어서, 이에 의해 라이브 브로드캐스트의 관심을 개선시킬 수 있다.
또 다른 실시예에서는, 모바일 지불이 "얼굴 스와이핑(face swiping)"에 의해 수행될 수 있으므로, 이것은 얼굴 인식 모델의 더 높은 정확도를 요구한다. 훈련된 이미지 프로세싱 모델은 얼굴 인식 모델을 훈련시키기 위하여(즉, 예측된 아바타의 현실성을 인식하기 위한 얼굴 인식 모델의 능력을 훈련시키기 위하여) 훈련 데이터(공격 데이터)를 생성하도록 구성될 수 있어서, 이에 의해, 모바일 지불의 신뢰성 및 보안을 개선시킬 수 있다.
이 출원의 실시예에서, 이 출원의 실시예에 의해 제공된 이미지 프로세싱 방법에 의해, 제1 생성기를 포함하는 이미지 프로세싱 모델은 동일한 타깃 사용자의 타깃 아바타를 포함하는 제1 샘플 이미지의 제1 샘플 세트, 및 샘플 아바타를 포함하는 제2 샘플 이미지의 제2 샘플 세트를 이용함으로써 훈련되고, 훈련 프로세스에서, 이미지 프로세싱 모델은 제1 샘플 이미지와, 제1 생성기를 통해 제1 샘플 이미지를 프로세싱함으로써 획득되는 제1 예측된 이미지와의 사이의 아바타 차이, 및 제2 샘플 이미지와, 제1 생성기를 통해 제2 샘플 이미지를 프로세싱함으로써 획득된 제2 예측된 이미지와의 사이의 제1 유형 속성 차이를 통해 훈련되어, 이로써 훈련된 이미지 프로세싱 모델은 입력 이미지 내의 아바타의 제1 유형 속성을 유지하면서, 입력 이미지 내의 아바타를 타깃 아바타로 대체할 수 있다. 이 출원에 기초하여 획득된 이미지 프로세싱 모델은 아바타를 유지하면서 대체된 아바타의 특정된 속성을 유지할 수 있어서, 이로써 대체된 아바타의 현실성이 높고, 이미지 프로세싱의 정확도 및 대체 효과가 개선된다.
이 출원의 실시예의 방법은 위에서 상세하게 설명된다. 이 출원의 실시예의 위의 해결책의 더 양호한 구현예를 용이하게 하기 위하여, 이 출원의 실시예의 장치가 이에 따라 다음과 같이 제공된다.
도 14는 이 출원의 예시적인 실시예에 의해 제공된 이미지 프로세싱 장치의 개략적인 구조도이다. 이미지 프로세싱 장치는 도 1에서 도시된 서버(102)에서 운반될 수 있다. 도 14에서 도시된 이미지 프로세싱 장치는 위의 도 2 및 도 3에서 설명된 방법 실시예에서의 일부 또는 모든 기능을 수행하도록 구성될 수 있다. 이미지 프로세싱 장치는,
제1 예측된 이미지 을 획득하기 위하여 제1 샘플 세트 내의 제1 샘플 이미지 를 프로세싱하기 위한 이미지 프로세싱 모델 내의 제1 생성기를 호출하도록 구성된 제1 예측된 이미지 취득 모듈(1410) - 제1 예측된 이미지 은 제1 예측된 아바타를 포함하고, 제1 샘플 세트는 N개의 제1 샘플 이미지를 포함하고, 각각의 제1 샘플 이미지는 동일한 타깃 사용자에 대응하는 타깃 아바타를 포함하고, N은 양의 정수이고, i는 양의 정수이고, i ≤ N임 -;
제2 예측된 이미지 을 획득하기 위하여 제2 샘플 세트 내의 제2 샘플 이미지 를 프로세싱하기 위한 제1 생성기를 호출하도록 구성된 제2 예측된 이미지 취득 모듈(1420) - 제2 예측된 이미지 은 제2 예측된 아바타를 포함하고, 제2 샘플 세트는 M개의 제2 샘플 이미지를 포함하고, 각각의 제2 샘플 이미지는 샘플 아바타를 포함하고, M은 양의 정수이고, k는 양의 정수이고, k ≤ M임 -; 및
제1 샘플 이미지 내의 타깃 아바타와 제1 예측된 아바타 사이의 차이, 제2 샘플 이미지 내의 샘플 아바타의 제1 유형 속성과 제2 예측된 아바타의 제1 유형 속성 사이의 차이에 따라, 이미지 프로세싱 모델을 훈련시키도록 구성된 모델 훈련 모듈(1430)을 포함한다. 이미지 프로세싱 모델은 입력 이미지 내의 아바타의 제1 유형 속성을 유지하면서, 입력 이미지 내의 아바타를 타깃 아바타로 대체하도록 구성된다.
구현예에서, 모델 훈련 모듈(1430)은,
제1 손실 함수의 함수 값을 결정하도록 구성된 제1 결정 서브-모듈 - 제1 손실 함수는 제1 샘플 이미지 내의 타깃 아바타와 제1 예측된 아바타 사이의 차이를 지시하기 위하여 이용됨 -;
제2 손실 함수의 함수 값을 결정하도록 구성된 제2 결정 서브-모듈 - 제2 손실 함수는 제2 샘플 이미지 내의 샘플 아바타의 제1 유형 속성과 제2 예측된 아바타의 제1 유형 속성 사이의 차이를 지시하기 위하여 이용됨 -;
제1 손실 함수의 함수 값 및 제2 손실 함수의 함수 값에 기초하여 이미지 프로세싱 모델의 타깃 손실 함수의 함수 값을 결정하도록 구성된 제3 결정 서브-모듈; 및
타깃 손실 함수의 함수 값에 따라 이미지 프로세싱 모델을 훈련시키도록 구성된 모델 훈련 서브-모듈을 포함한다.
구현예에서, 제1 결정 서브-모듈은,
제1 샘플 이미지 및 제1 예측된 아바타를 각각 판별하기 위하여 제1 판별기를 호출하고,
제1 샘플 이미지 의 제1 판별 결과 및 제1 예측된 아바타의 제2 판별 결과에 기초하여 제1 손실 함수의 제1 분기 함수의 함수 값을 결정하고 - 제1 판별 결과는 제1 샘플 이미지 가 실제의 이미지인지 여부를 지시하기 위하여 이용되고, 제2 판별 결과는 제1 예측된 아바타가 실제의 이미지인지 여부를 지시하기 위하여 이용됨 -,
제1 손실 함수의 제2 분기 함수의 함수 값을 결정하고 - 제1 손실 함수의 제2 분기 함수는 제1 샘플 이미지 내의 타깃 아바타의 제1 지각적 특징과 제1 예측된 아바타의 제2 지각적 특징 사이의 차이를 지시하기 위하여 이용됨 -,
제1 손실 함수의 제1 분기 함수의 함수 값, 및 제1 손실 함수의 제2 분기 함수의 함수 값의 합을, 제1 손실 함수의 함수 값으로서 결정하도록 구성된다.
구현예에서, 제2 결정 서브-모듈은,
제2 예측된 아바타를 판별하기 위한 제1 판별기를 호출하고,
제2 예측된 아바타의 제3 판별 결과에 기초하여 제2 손실 함수의 제1 분기 함수의 함수 값을 결정하고 - 제3 판별 결과는 제2 예측된 아바타가 실제의 이미지인지 여부를 지시하기 위하여 이용됨 -,
속성 비교 결과를 획득하기 위하여, 제2 샘플 이미지 내의 샘플 아바타의 제1 유형 속성 및 제2 예측된 아바타의 제1 유형 속성에 대해 속성 비교를 수행하고,
속성 비교 결과에 기초하여 제2 손실 함수의 제2 분기 함수를 결정하고,
제2 손실 함수의 제1 분기 함수의 함수 값, 및 제2 손실 함수의 제2 분기 함수의 함수 값의 합을, 제2 손실 함수의 함수 값으로서 결정하도록 구성된다.
구현예에서, 장치는,
제3 예측된 이미지 을 획득하기 위하여 제2 샘플 이미지 을 프로세싱하기 위한 제2 생성기를 호출하도록 구성된 제3 예측된 이미지 취득 모듈을 더 포함하고, 제3 예측된 이미지 은 제3 예측된 아바타를 포함한다. 제2 생성기 및 제1 생성기는 동일한 특징 추출 유닛을 가진다.
모델 훈련 모듈(1430)은,
제3 손실 함수의 함수 값을 결정하도록 구성된 제4 결정 서브-모듈 - 제3 손실 함수는 제2 샘플 이미지 내의 샘플 아바타와 제3 예측된 아바타 사이의 차이를 지시하기 위하여 이용됨 - 을 더 포함한다.
제3 결정 서브-모듈은 제1 손실 함수의 함수 값, 제2 손실 함수의 함수 값, 및 제3 손실 함수의 함수 값에 기초하여 타깃 손실 함수의 함수 값을 결정하도록 구성된다.
구현예에서, 제4 결정 서브-모듈은,
제2 샘플 이미지 및 제3 예측된 아바타를 각각 판별하기 위한 제2 판별기를 호출하고,
제2 샘플 이미지 의 제4 판별 결과 및 제3 예측된 아바타의 제5 판별 결과에 기초하여 제3 손실 함수의 제1 분기 함수의 함수 값을 결정하고 - 제4 판별 결과는 제2 샘플 이미지 가 실제의 이미지인지 여부를 지시하기 위하여 이용되고, 제5 판별 결과는 제3 예측된 아바타가 실제의 이미지인지 여부를 지시하기 위하여 이용됨 -,
제3 손실 함수의 제2 분기 함수의 함수 값을 결정하고 - 제3 손실 함수의 제2 분기 함수는 제2 샘플 이미지 내의 샘플 아바타의 제3 지각적 특징과 제3 예측된 아바타의 제4 지각적 특징 사이의 차이를 지시하기 위하여 이용됨 -,
제3 손실 함수의 제1 분기 함수의 함수 값, 및 제3 손실 함수의 제2 분기 함수의 함수 값의 합을, 제3 손실 함수의 함수 값으로서 결정하도록 구성된다.
구현예에서, 제1 생성기는 인코더 및 제1 디코더를 포함한다.
제1 예측된 이미지 취득 모듈(1410)은,
제1 특징 벡터를 획득하기 위하여 제1 샘플 이미지 를 인코딩하기 위한 상기 인코더를 호출하고,
제1 생성된 이미지 및 제1 영역 세그먼트화 정보를 획득하기 위하여 제1 특징 벡터를 디코딩하기 위한 제1 디코더를 호출하고 - 제1 영역 세그먼트화 정보는 제1 생성된 이미지 내의 아바타 영역을 지시하기 위하여 이용됨 -,
제1 영역 세그먼트화 정보에 따라 제1 생성된 이미지로부터 제1 예측된 이미지 을 추출하도록 구성된다.
구현예에서, 제1 생성기는 인코더 및 제1 디코더를 포함한다.
제2 예측된 이미지 취득 모듈(1420)은,
제2 특징 벡터를 획득하기 위하여 제2 샘플 이미지 를 인코딩하기 위한 인코더를 호출하고,
제2 생성된 이미지 및 제2 영역 세그먼트화 정보를 획득하기 위하여 제2 특징 벡터를 디코딩하기 위한 제1 디코더를 호출하고 - 제2 영역 세그먼트화 정보는 제2 생성된 이미지 내의 아바타 영역을 지시하기 위하여 이용됨 -,
제2 영역 세그먼트화 정보에 따라 제2 생성된 이미지 으로부터 제2 예측된 이미지 추출하도록 구성된다.
구현 실시예에서, 인코더는 P개의 특징 추출 네트워크 및 특징 어그리게이션 계층을 포함하고, P는 양의 정수이다. 각각의 특징 추출 네트워크는 하나의 다운-샘플링 계층을 포함한다. P개의 다운-샘플링 계층의 스케일 파라미터는 상이하다.
P개의 다운-샘플링 계층은 P개의 스케일 파라미터 하에서 인코더에 대한 이미지 입력의 특징 정보를 추출하도록 구성된다.
특징 어그리게이션 계층은 인코더에 대한 이미지 입력에 대응하는 특징 벡터를 획득하기 위하여 P개의 스케일 파라미터 하에서 특징 정보에 대해 어그리게이션 프로세싱을 수행하도록 구성된다.
구현예에서, 제1 디코더는 하나의 제1 특징 리쉐이핑 네트워크, Q개의 제1 이미지 재구성 네트워크, 및 하나의 제1 컨볼루션 네트워크를 포함하고, Q는 양의 정수이다. 각각의 제1 이미지 재구성 네트워크는 하나의 제1 잔차 네트워크 및 하나의 제1 업-샘플링 계층을 포함한다.
제1 특징 리쉐이핑 네트워크는 제1 디코더로 입력된 특징 벡터를 특징 맵으로 리쉐이핑하도록 구성된다.
Q개의 제1 이미지 재구성 네트워크는 융합된 특징 이미지를 획득하기 위하여 특징 맵에 대해 제1 특징 복원 프로세싱을 수행하도록 구성된다.
제1 컨볼루션 네트워크는 융합된 특징 이미지에 대해 컨볼루션 프로세싱을 수행하고, 제1 디코더로 입력된 특징 벡터에 대응하는 생성된 이미지를 출력하도록 구성된다.
구현예에서, 제2 생성기는 인코더, 제2 디코더, 및 아이덴티티 인식 네트워크를 포함한다.
제3 예측된 이미지 을 획득하기 위하여 제2 샘플 이미지 를 프로세싱하기 위한 제2 생성기를 호출하는 동작은,
제2 특징 벡터를 획득하기 위하여 제2 샘플 이미지 를 인코딩하기 위한 인코더를 호출하는 것;
제2 샘플 이미지 의 식별 정보를 획득하기 위하여 제2 샘플 이미지 를 인식하기 위한 아이덴티티 인식 네트워크를 호출하는 것;
제3 생성된 이미지 및 제3 영역 세그먼트화 정보를 획득하기 위하여 제2 샘플 이미지 의 식별 정보에 따라 제2 특징 벡터를 디코딩하기 위한 제2 디코더를 호출하는 것 - 제3 영역 세그먼트화 정보는 제3 생성된 이미지 내의 아바타 영역을 지시하기 위하여 이용됨 -; 및
제3 영역 세그먼트화 정보에 따라 제3 생성된 이미지로부터 제3 예측된 이미지를 추출하는 것을 포함한다.
구현예에서, 제2 디코더는 하나의 제2 특징 리쉐이핑 네트워크, Q개의 제2 이미지 재구성 네트워크, 및 하나의 제2 컨볼루션 네트워크를 포함하고, Q는 양의 정수이다. 각각의 제2 이미지 재구성 네트워크는 하나의 제2 잔차 네트워크, 하나의 제2 업-샘플링 계층, 및 하나의 적응적 모듈을 포함한다.
적응적 모듈은 제2 디코더의 디코딩 프로세스에서, 제2 샘플 이미지 의 식별 정보에 기초하여 식별 정보에 대응하는 제3 특징 벡터를 취득하도록 구성되고, 제3 특징 벡터는 제2 디코더로 입력된 특징 벡터를 디코딩하도록 제2 디코더를 지시하기 위하여 이용된다.
구현예에서, 장치는,
모델 훈련 모듈(1430)이 이미지 프로세싱 모델의 훈련을 완료한 후에, 테스트 비디오를 취득하도록 구성된 테스트 비디오 취득 모듈 - 테스트 비디오는 테스트 이미지의 R개의 프레임을 포함하고, 테스트 이미지의 각각의 프레임은 정정된 아바타를 포함하고, R은 양의 정수임 -;
테스트 이미지의 R개의 프레임에 각각 대응하는 예측된 이미지를 획득하기 위하여 테스트 이미지의 R개의 프레임을 각각 프로세싱하기 위한 훈련된 이미지 프로세싱 모델의 제1 생성기를 호출하도록 구성된 제4 테스트 이미지 취득 모듈 - 예측된 이미지의 R개의 프레임은 타깃 사용자의 타깃 아바타를 포함하고, 예측된 이미지의 R개의 프레임의 아바타의 제1 유형 속성은 대응하는 테스트 이미지 내의 정정된 아바타의 제1 유형 속성과 일치하도록 유지됨 -;
정정된 아바타가 테스트 비디오에서 삭제되는 테스트 이미지의 R개의 프레임에 대해 이미지 인페인팅을 수행하도록 구성된 이미지 인페인팅 모듈; 및
타깃 비디오를 획득하기 위하여, 테스트 이미지의 R개의 프레임을 이미지 인페인팅 후의 테스트 비디오 내의 대응하는 테스트 이미지와 각각 융합하도록 구성된 타깃 비디오 취득 모듈을 더 포함한다.
구현예에서, 제1 유형 속성은 비-아이덴티티 인식 속성을 지칭한다.
이 출원의 하나의 실시예에 따르면, 도 2 및 도 3에서 도시된 이미지 프로세싱 방법에서 관여된 단계의 일부는 도 14에서 도시된 이미지 프로세싱 장치 내의 다양한 모듈 또는 서브-모듈에 의해 수행될 수 있다. 도 14에서 도시된 이미지 프로세싱 장치 내의 각각의 모듈 또는 서브-모듈은 하나 또는 몇몇 추가적인 구조로 별도로 또는 완전히 조합함으로써 형성될 수 있거나, 그 안의 일부 모듈(들)을 복수의 기능적으로 더 작은 구조로 분할함으로써 형성될 수 있어서, 이 출원의 실시예의 기술적 효과의 달성에 영향을 주지 않으면서 동일한 동작을 실현할 수 있다. 위의 모듈은 논리적 기능에 기초하여 분할되고, 실제적인 애플리케이션에서는, 하나의 모듈의 기능이 또한, 복수의 모듈에 의해 실현될 수 있거나, 복수의 모듈의 기능이 하나의 모듈에 의해 실현될 수 있다. 이 출원의 다른 실시예에서, 이미지 프로세싱 장치는 또한, 다른 모듈을 포함할 수 있고, 실제적인 애플리케이션에서, 이 기능은 또한, 다른 모듈의 보조로 실현될 수 있고, 복수의 모듈의 협력에 의해 실현될 수 있다.
이 출원의 또 다른 실시예에 따르면, 도 14에서 도시된 바와 같은 이미지 프로세싱 장치가 구성될 수 있고, 이 출원의 실시예에 따른 이미지 프로세싱 방법은, 중앙 프로세싱 유닛(CPU : central processing unit), 랜덤 액세스 저장 매체(RAM), 및 판독-전용 저장 매체(ROM)와 같은 프로세싱 엘리먼트 및 저장 엘리먼트를 포함하는 컴퓨터와 같은 범용 컴퓨팅 장치 상에서 도 2 또는 도 3에서 도시된 바와 같은 대응하는 방법에서 관여된 단계를 실행할 수 있는 (프로그램 코드를 포함하는) 컴퓨터 프로그램을 작동시킴으로써 구현될 수 있다. 컴퓨터 프로그램은 예를 들어, 컴퓨터-판독가능 기록 매체 상에서 기록될 수 있고, 컴퓨터-판독가능 기록 매체를 통해 위의 컴퓨팅 장치에서 로딩될 수 있고, 그 안에서 작동될 수 있다.
동일한 발명 개념에 기초하여, 이 출원의 실시예에 의해 제공된 이미지 프로세싱 장치의 문제 해결 원리 및 유리한 효과는 이 출원의 실시예에 의해 제공된 이미지 프로세싱 방법의 문제 해결 원리 및 유리한 효과와 유사하고, 방법의 구현예의 원리 및 유리한 효과에 대해 참조가 행해질 수 있고, 이것은 간략함을 위하여 본 명세서에서 상세하게 설명되지 않을 것이다.
이 출원의 예시적인 실시예에 의해 제공된 이미지 프로세싱 디바이스의 개략적인 구조도인 도 15에 대해 지금부터 참조가 행해진다. 이미지 프로세싱 장치는 도 1에서 도시된 바와 같은 서버(102)일 수 있다. 이미지 프로세싱 디바이스는 프로세서(1501), 통신 인터페이스(1502), 및 메모리(1503)를 적어도 포함한다. 프로세서(1501), 통신 인터페이스(1502), 및 메모리(1503)는 버스 또는 다른 수단에 의해 접속될 수 있고, 이 출원의 실시예는 버스 접속에 의해 예시된다. 프로세서(1501)(또는 중앙 프로세싱 유닛(CPU)으로 칭해짐)는 이미지 프로세싱 디바이스의 계산 코어 및 제어 코어이고, 이미지 프로세싱 디바이스에서 다양한 명령을 파싱할 수 있고, 이미지 프로세싱 디바이스의 다양한 데이터를 프로세싱할 수 있다. 예를 들어, CPU는 사용자에 의해 이미지 프로세싱 디바이스로 전송된 온-오프(on-off) 명령을 파싱하고, 이미지 프로세싱 디바이스가 온-오프 동작을 수행하는 것을 제어하도록 구성될 수 있다. 또 다른 예를 들어, CPU는 이미지 프로세싱 장치의 내부 구조 등 사이에서 다양한 유형의 상호작용 데이터를 송신할 수 있다. 통신 인터페이스(1502)는 임의적으로, 표준 유선 인터페이스, (WI-FI 및 모바일 통신 인터페이스와 같은) 무선 인터페이스를 포함할 수 있고, 프로세서(1501)의 제어 하에서 데이터를 트랜시빙하도록 구성될 수 있다. 통신 인터페이스(1502)는 또한, 이미지 프로세싱 디바이스 내에서의 데이터의 송신 및 상호작용을 위하여 구성될 수 있다. 메모리(1503)는 이미지 프로세싱 디바이스 내의 메모리 디바이스이고, 프로그램 및 데이터를 저장하도록 구성된다. 본 명세서에서의 메모리(1503)는 이미지 프로세싱 디바이스의 내장 메모리, 및 물론, 이미지 프로세싱 디바이스에 의해 지원된 확장된 메모리의 둘 모두를 포함할 수 있다는 것이 인식될 것이다. 메모리(1503)는 저장 공간을 제공한다. 저장 공간은 이미지 프로세싱 디바이스의 오퍼레이팅 시스템을 저장하고, 이 오프레이팅 시스템은 안드로이드(Android) 시스템, iOS 시스템, 윈도우즈 전화 시스템(Windows Phone system) 등을 포함할 수 있지만, 이것으로 제한되지 않고, 이들은 이 출원에서 제한되지 않는다.
이 출원의 실시예에서, 프로세서(1501)는 메모리(1503) 내의 실행가능한 프로그램을 작동시킴으로써 이 출원에서 도시된 해결책을 구현한다. 프로세서(1501)에 의해 수행된 동작은 위에서 설명된 다양한 방법 실시예를 참조하여 설명될 수 있고, 본 명세서에서 상세하게 설명되지 않을 것이다.
동일한 발명 개념에 기초하여, 이 출원의 실시예에 의해 제공된 이미지 프로세싱 디바이스의 문제 해결 원리 및 유리한 효과는 이 출원의 실시예에 의해 제공된 이미지 프로세싱 방법의 문제 해결 원리 및 유리한 효과와 유사하고, 방법의 구현예의 원리 및 유리한 효과에 대해 참조가 행해질 수 있고, 이것은 간략함을 위하여 본 명세서에서 상세하게 설명되지 않을 것이다.
이 출원의 실시예는 컴퓨터-판독가능 저장 매체를 추가로 제공한다. 컴퓨터-판독가능 저장 매체는 컴퓨터 프로그램을 저장한다. 컴퓨터 프로그램은 프로세서에 의해 로딩되고 위에서 설명된 실시예의 이미지 프로세싱 방법을 수행하도록 적응된다.
이 출원의 실시예는 컴퓨터 프로그램 제품 또는 컴퓨터 프로그램을 추가로 제공한다. 컴퓨터 프로그램 제품 또는 컴퓨터 프로그램은 컴퓨터 명령을 포함한다. 컴퓨터 명령은 컴퓨터-판독가능 저장 매체 내에 저장된다. 컴퓨터 디바이스의 프로세서는 컴퓨터-판독가능 저장 매체로부터 컴퓨터 명령을 판독하고, 프로세서는 컴퓨터 디바이스가 위의 이미지 프로세싱 방법을 수행하는 것을 가능하게 하기 위하여 컴퓨터 명령을 실행한다.
상기한 방법 실시예의 각각에 대하여, 간략한 설명을 위하여, 방법 실시예는 일련의 액션 조합으로서 설명되지만, 본 기술분야에서의 통상의 기술자는 이 출원이 설명된 액션 시퀀스에 의해 제한되지 않는다는 것을 이해해야 하는데, 그 이유는 어떤 단계가 이 출원에서 따라 다른 시퀀스에서 또는 동시에 수행될 수 있기 때문이라는 것이 주목되어야 한다. 둘째, 본 기술분야에서의 통상의 기술자는 또한, 명세서에서 설명된 실시예가 모두 바람직한 실시예이고 관여된 모듈은 이 출원의 실시예에서 반드시 요구되지는 않는다는 것을 이해해야 한다.
이 출원의 실시예의 방법에서의 단계는 실제적인 필요성에 따라 순차적으로 조절되고, 조합되고, 삭제될 수 있다.
이 출원의 실시예의 장치에서의 모듈은 실제적인 필요성에 따라 조합되고, 분할되고, 삭제될 수 있다.
본 기술분야에서의 통상의 기술자는 위의 실시예의 다양한 방법에서의 단계의 전부 또는 일부가 연관된 하드웨어에 명령하기 위하여 프로그램에 의해 수행될 수 있다는 것을 인식할 것이다. 프로그램은 컴퓨터-판독가능 저장 매체 내에 저장될 수 있다. 컴퓨터-판독가능 저장 매체는 플래시 드라이브(flash drive), ROM, RAM, 자기 디스크, 광학 디스크 등을 포함할 수 있다.
위에서 개시되는 것은 단지 이 출원의 예시적인 실시예이고, 확실히, 이 출원의 보호 범위를 제한하도록 의도되지 않는다. 본 기술분야에서의 통상의 기술자는 위의 실시예를 구현하는 프로세스의 전부 또는 일부, 및 이 출원의 청구항에 따라 행해진 등가적인 수정이 이 출원의 범위 내에 속할 것이라는 것을 이해할 수 있다.

Claims (17)

  1. 이미지 프로세싱 방법으로서,
    제1 예측된 이미지 을 획득하기 위하여 제1 샘플 세트 내의 제1 샘플 이미지 를 프로세싱하기 위한 이미지 프로세싱 모델 내의 제1 생성기를 호출하는 단계 - 상기 제1 예측된 이미지 은 제1 예측된 아바타(avatar)를 포함하고, 상기 제1 샘플 세트는 동일한 타깃 사용자에 대응하는 타깃 아바타를 각각 포함하는 N개의 제1 샘플 이미지를 포함하고, N은 양의 정수이고, i는 양의 정수이고, i ≤ N임 -;
    제2 예측된 이미지 을 획득하기 위하여 제2 샘플 세트 내의 제2 샘플 이미지 를 프로세싱하기 위한 상기 제1 생성기를 호출하는 단계 - 상기 제2 예측된 이미지 은 제2 예측된 아바타를 포함하고, 상기 제2 샘플 세트는 샘플 아바타를 각각 포함하는 M개의 제2 샘플 이미지를 포함하고, M은 양의 정수이고, k는 양의 정수이고, k ≤ M임 -; 및
    상기 제1 샘플 이미지 내의 상기 타깃 아바타와 상기 제1 예측된 아바타 사이의 차이, 및 상기 제2 샘플 이미지 내의 상기 샘플 아바타의 제1 유형 속성과 상기 제2 예측된 아바타의 제1 유형 속성 사이의 차이에 따라 상기 이미지 프로세싱 모델을 훈련시키는 단계 - 상기 이미지 프로세싱 모델은 입력 이미지 내의 아바타의 제1 유형 속성을 유지하면서, 상기 입력 이미지 내의 아바타를 상기 타깃 아바타로 대체하도록 구성됨 -
    를 포함하는 이미지 프로세싱 방법.
  2. 제1항에 있어서,
    상기 제1 샘플 이미지 내의 상기 타깃 아바타와 상기 제1 예측된 아바타 사이의 차이, 및 상기 제2 샘플 이미지 내의 상기 샘플 아바타의 제1 유형 속성과 상기 제2 예측된 아바타의 제1 유형 속성 사이의 차이에 따라 상기 이미지 프로세싱 모델을 훈련시키는 단계는,
    제1 손실 함수의 함수 값을 결정하는 단계 - 상기 제1 손실 함수는 상기 제1 샘플 이미지 내의 상기 타깃 아바타와 상기 제1 예측된 아바타 사이의 차이를 지시하기 위하여 이용됨 -;
    제2 손실 함수의 함수 값을 결정하는 단계 - 상기 제2 손실 함수는 상기 제2 샘플 이미지 내의 상기 샘플 아바타의 상기 제1 유형 속성과 상기 제2 예측된 아바타의 상기 제1 유형 속성 사이의 차이를 지시하기 위하여 이용됨 -;
    상기 제1 손실 함수의 상기 함수 값 및 상기 제2 손실 함수의 상기 함수 값에 기초하여 상기 이미지 프로세싱 모델의 타깃 손실 함수의 함수 값을 결정하는 단계; 및
    상기 타깃 손실 함수의 상기 함수 값에 따라 상기 이미지 프로세싱 모델을 훈련시키는 단계
    를 포함하는, 이미지 프로세싱 방법.
  3. 제2항에 있어서,
    상기 제1 손실 함수의 상기 함수 값을 결정하는 단계는,
    상기 제1 샘플 이미지 및 상기 제1 예측된 아바타를 각각 판별하기 위하여 제1 판별기를 호출하는 단계;
    상기 제1 샘플 이미지 의 제1 판별 결과 및 상기 제1 예측된 아바타의 제2 판별 결과에 기초하여 상기 제1 손실 함수의 제1 분기 함수의 함수 값을 결정하는 단계 - 상기 제1 판별 결과는 상기 제1 샘플 이미지 가 실제의 이미지인지 여부를 지시하기 위하여 이용되고, 상기 제2 판별 결과는 상기 제1 예측된 아바타가 실제의 이미지인지 여부를 지시하기 위하여 이용됨 -;
    상기 제1 손실 함수의 제2 분기 함수의 함수 값을 결정하는 단계 - 상기 제1 손실 함수의 상기 제2 분기 함수는 상기 제1 샘플 이미지 내의 상기 타깃 아바타의 제1 지각적 특징과 상기 제1 예측된 아바타의 제2 지각적 특징 사이의 차이를 지시하기 위하여 이용됨 -; 및
    상기 제1 손실 함수의 상기 제1 분기 함수의 상기 함수 값, 및 상기 제1 손실 함수의 상기 제2 분기 함수의 상기 함수 값의 합을, 상기 제1 손실 함수의 상기 함수 값으로서 결정하는 단계
    를 포함하는, 이미지 프로세싱 방법.
  4. 제2항에 있어서,
    상기 제2 손실 함수의 상기 함수 값을 결정하는 단계는,
    상기 제2 예측된 아바타를 판별하기 위한 제1 판별기를 호출하는 단계;
    상기 제2 예측된 아바타의 제3 판별 결과에 기초하여 상기 제2 손실 함수의 제1 분기 함수의 함수 값을 결정하는 단계 - 상기 제3 판별 결과는 상기 제2 예측된 아바타가 실제의 이미지인지 여부를 지시하기 위하여 이용됨 -;
    속성 비교 결과를 획득하기 위하여, 상기 제2 샘플 이미지 내의 상기 샘플 아바타의 상기 제1 유형 속성 및 상기 제2 예측된 아바타의 상기 제1 유형 속성에 대해 속성 비교를 수행하는 단계;
    상기 속성 비교 결과에 기초하여 상기 제2 손실 함수의 제2 분기 함수의 함수 값을 결정하는 단계; 및
    상기 제2 손실 함수의 상기 제1 분기 함수의 상기 함수 값, 및 상기 제2 손실 함수의 상기 제2 분기 함수의 상기 함수 값의 합을, 상기 제2 손실 함수의 상기 함수 값으로서 결정하는 단계
    를 포함하는, 이미지 프로세싱 방법.
  5. 제2항에 있어서,
    상기 제1 손실 함수 및 상기 제2 손실 함수에 따라 상기 이미지 프로세싱 모델의 상기 타깃 손실 함수를 구성하기 전에, 상기 이미지 프로세싱 방법은,
    제3 예측된 이미지 을 획득하기 위하여 상기 제2 샘플 이미지 를 프로세싱하기 위한 제2 생성기를 호출하는 단계 - 상기 제3 예측된 이미지 은 제3 예측된 아바타를 포함하고, 상기 제2 생성기 및 상기 제1 생성기는 동일한 특징 추출 유닛을 가짐 -;
    제3 손실 함수의 함수 값을 결정하는 단계 - 상기 제3 손실 함수는 상기 제2 샘플 이미지 내의 상기 샘플 아바타와 상기 제3 예측된 아바타 사이의 차이를 지시하기 위하여 이용됨 -
    를 더 포함하고,
    상기 제1 손실 함수의 상기 함수 값 및 상기 제2 손실 함수의 상기 함수 값에 기초하여 상기 이미지 프로세싱 모델의 상기 타깃 손실 함수의 상기 함수 값을 결정하는 단계는,
    상기 제1 손실 함수의 상기 함수 값, 상기 제2 손실 함수의 상기 함수 값, 및 상기 제3 손실 함수의 상기 함수 값에 기초하여 상기 타깃 손실 함수의 상기 함수 값을 결정하는 단계를 포함하는, 이미지 프로세싱 방법.
  6. 제5항에 있어서,
    상기 제3 손실 함수의 상기 함수 값을 결정하는 단계는,
    상기 제2 샘플 이미지 및 상기 제3 예측된 아바타를 각각 판별하기 위한 제2 판별기를 호출하는 단계;
    상기 제2 샘플 이미지 의 제4 판별 결과 및 상기 제3 예측된 아바타의 제5 판별 결과에 기초하여 상기 제3 손실 함수의 제1 분기 함수의 함수 값을 결정하는 단계 - 상기 제4 판별 결과는 상기 제2 샘플 이미지 가 실제의 이미지인지 여부를 지시하기 위하여 이용되고, 상기 제5 판별 결과는 상기 제3 예측된 아바타가 실제의 이미지인지 여부를 지시하기 위하여 이용됨 -;
    상기 제3 손실 함수의 제2 분기 함수의 함수 값을 결정하는 단계 - 상기 제3 손실 함수의 상기 제2 분기 함수는 상기 제2 샘플 이미지 내의 상기 샘플 아바타의 제3 지각적 특징과 상기 제3 예측된 아바타의 제4 지각적 특징 사이의 차이를 지시하기 위하여 이용됨 -; 및
    상기 제3 손실 함수의 상기 제1 분기 함수의 상기 함수 값, 및 상기 제3 손실 함수의 상기 제2 분기 함수의 상기 함수 값의 합을, 상기 제3 손실 함수의 상기 함수 값으로서 결정하는 단계
    를 포함하는, 이미지 프로세싱 방법.
  7. 제1항에 있어서,
    상기 제1 생성기는 인코더 및 제1 디코더를 포함하고,
    상기 제1 예측된 이미지 을 획득하기 위하여 상기 제1 샘플 세트 내의 제1 샘플 이미지 를 프로세싱하기 위한 제1 생성기를 호출하는 단계는,
    제1 특징 벡터를 획득하기 위하여 상기 제1 샘플 이미지 를 인코딩하기 위한 상기 인코더를 호출하는 단계;
    제1 생성된 이미지 및 제1 영역 세그먼트화 정보를 획득하기 위하여 상기 제1 특징 벡터를 디코딩하기 위한 상기 제1 디코더를 호출하는 단계 - 상기 제1 영역 세그먼트화 정보는 상기 제1 생성된 이미지 내의 아바타 영역을 지시하기 위하여 이용됨 -; 및
    상기 제1 영역 세그먼트화 정보에 따라 상기 제1 생성된 이미지로부터 상기 제1 예측된 이미지 을 추출하는 단계
    를 포함하는, 이미지 프로세싱 방법.
  8. 제1항에 있어서,
    상기 제1 생성기는 인코더 및 제1 디코더를 포함하고,
    상기 제2 예측된 이미지 을 획득하기 위하여 상기 제2 샘플 세트 내의 제2 샘플 이미지 를 프로세싱하기 위한 상기 제1 생성기를 호출하는 단계는,
    제2 특징 벡터를 획득하기 위하여 상기 제2 샘플 이미지 를 인코딩하기 위한 상기 인코더를 호출하는 단계;
    제2 생성된 이미지 및 제2 영역 세그먼트화 정보를 획득하기 위하여 상기 제2 특징 벡터를 디코딩하기 위한 상기 제1 디코더를 호출하는 단계 - 상기 제2 영역 세그먼트화 정보는 상기 제2 생성된 이미지 내의 아바타 영역을 지시하기 위하여 이용됨 -; 및
    상기 제2 영역 세그먼트화 정보에 따라 상기 제2 생성된 이미지로부터 상기 제2 예측된 이미지 을 추출하는 단계
    를 포함하는, 이미지 프로세싱 방법.
  9. 제7항 또는 제8항에 있어서,
    상기 인코더는 P개의 특징 추출 네트워크 및 특징 어그리게이션 계층을 포함하고, P는 양의 정수이고; 상기 특징 추출 네트워크의 각각은 다운-샘플링 계층을 포함하고; P개의 다운-샘플링 계층의 스케일 파라미터는 상이하고,
    상기 P개의 다운-샘플링 계층은 P개의 스케일 파라미터 하에서 상기 인코더에 대한 이미지 입력의 특징 정보를 추출하도록 구성되고,
    상기 특징 어그리게이션 계층은 상기 인코더에 대한 상기 이미지 입력에 대응하는 특징 벡터를 획득하기 위하여 상기 P개의 스케일 파라미터 하에서 상기 특징 정보를 어그리게이팅하도록 구성되는, 이미지 프로세싱 방법.
  10. 제7항 또는 제8항에 있어서,
    상기 제1 디코더는 제1 특징 리쉐이핑 네트워크(feature reshaping network), Q개의 제1 이미지 재구성 네트워크, 및 제1 컨볼루션 네트워크(convolution network)를 포함하고, Q는 양의 정수이고; 상기 제1 이미지 재구성 네트워크의 각각은 제1 잔차 네트워크 및 제1 업-샘플링 계층을 포함하고,
    상기 제1 특징 리쉐이핑 네트워크는 상기 제1 디코더로 입력된 특징 벡터를 특징 맵으로 리쉐이핑하도록 구성되고,
    상기 Q개의 제1 이미지 재구성 네트워크는 융합된 특징 이미지를 획득하기 위하여 상기 특징 맵에 대해 제1 특징 복원 프로세싱을 수행하도록 구성되고,
    상기 제1 컨볼루션 네트워크는 상기 융합된 특징 이미지에 대해 컨볼루션 프로세싱을 수행하고, 상기 제1 디코더로 입력된 상기 특징 벡터에 대응하는 생성된 이미지를 출력하도록 구성되는, 이미지 프로세싱 방법.
  11. 제5항에 있어서,
    상기 제2 생성기는 인코더, 제2 디코더, 및 아이덴티티 인식 네트워크를 포함하고,
    상기 제3 예측된 이미지 을 획득하기 위하여 상기 제2 샘플 이미지 를 프로세싱하기 위한 제2 생성기를 호출하는 단계는,
    제2 특징 벡터를 획득하기 위하여 상기 제2 샘플 이미지 를 인코딩하기 위한 상기 인코더를 호출하는 단계;
    상기 제2 샘플 이미지 의 식별 정보를 획득하기 위하여 상기 제2 샘플 이미지 를 인식하기 위한 상기 아이덴티티 인식 네트워크를 호출하는 단계;
    제3 생성된 이미지 및 제3 영역 세그먼트화 정보를 획득하기 위하여 상기 제2 샘플 이미지 의 상기 식별 정보에 따라 상기 제2 특징 벡터를 디코딩하기 위한 상기 제2 디코더를 호출하는 단계 - 상기 제3 영역 세그먼트화 정보는 상기 제3 생성된 이미지 내의 아바타 영역을 지시하기 위하여 이용됨 -; 및
    상기 제3 영역 세그먼트화 정보에 따라 상기 제3 생성된 이미지 으로부터 상기 제3 예측된 이미지를 추출하는 단계
    를 포함하는, 이미지 프로세싱 방법.
  12. 제11항에 있어서,
    상기 제2 디코더는 제2 특징 리쉐이핑 네트워크, Q개의 제2 이미지 재구성 네트워크, 및 제2 컨볼루션 네트워크를 포함하고, Q는 양의 정수이고; 상기 제2 이미지 재구성 네트워크의 각각은 제2 잔차 네트워크, 제2 업-샘플링 계층, 및 적응적 모듈을 포함하고,
    상기 적응적 모듈은 상기 제2 디코더의 디코딩 프로세스에서, 상기 제2 샘플 이미지 의 상기 식별 정보에 기초하여 상기 식별 정보에 대응하는 제3 특징 벡터를 취득하도록 구성되고, 상기 제3 특징 벡터는 상기 제2 디코더로 입력된 상기 특징 벡터를 디코딩하도록 상기 제2 디코더를 지시하기 위하여 이용되는, 이미지 프로세싱 방법.
  13. 제1항에 있어서,
    상기 이미지 프로세싱 모델의 훈련을 완료한 후에,
    테스트 비디오를 취득하는 단계 - 상기 테스트 비디오는 테스트 이미지의 R개의 프레임을 포함하고, 테스트 이미지의 각각의 프레임은 정정된 아바타를 포함하고, R은 양의 정수임 -;
    테스트 이미지의 상기 R개의 프레임에 각각 대응하는 예측된 이미지를 획득하기 위하여 테스트 이미지의 상기 R개의 프레임을 각각 프로세싱하기 위한 상기 훈련된 이미지 프로세싱 모델의 상기 제1 생성기를 호출하는 단계 - 예측된 이미지의 상기 R개의 프레임은 상기 타깃 사용자의 상기 타깃 아바타를 포함하고, 예측된 이미지의 상기 R개의 프레임의 아바타의 상기 제1 유형 속성은 대응하는 테스트 이미지 내의 상기 정정된 아바타의 상기 제1 유형 속성과 일치하도록 유지됨 -;
    상기 정정된 아바타가 상기 테스트 비디오에서 삭제되는 테스트 이미지의 상기 R개의 프레임에 대해 이미지 인페인팅(image inpainting)을 수행하는 단계; 및
    상기 이미지 인페인팅 후에, 타깃 비디오를 획득하기 위하여 테스트 이미지의 상기 R개의 프레임을 상기 테스트 비디오 내의 상기 대응하는 테스트 이미지와 각각 융합하는 단계
    를 더 포함하는 이미지 프로세싱 방법.
  14. 제1항 내지 제13항 중 어느 한 항에 있어서,
    상기 제1 유형 속성은 비-아이덴티티 인식 속성(non-identity recognition attribute)인, 이미지 프로세싱 방법.
  15. 이미지 프로세싱 장치로서,
    제1 예측된 이미지 을 획득하기 위하여 제1 샘플 세트 내의 제1 샘플 이미지 를 프로세싱하기 위한 이미지 프로세싱 모델 내의 제1 생성기를 호출하도록 구성된 제1 예측된 이미지 취득 모듈 - 상기 제1 예측된 이미지 은 제1 예측된 아바타를 포함하고, 상기 제1 샘플 세트는 N개의 제1 샘플 이미지를 포함하고, 각각의 제1 샘플 이미지는 동일한 타깃 사용자에 대응하는 타깃 아바타를 포함하고, N은 양의 정수이고, i는 양의 정수이고, i ≤ N임 -;
    제2 예측된 이미지 을 획득하기 위하여 제2 샘플 세트 내의 제2 샘플 이미지 를 프로세싱하기 위한 상기 제1 생성기를 호출하도록 구성된 제2 예측된 이미지 취득 모듈 - 상기 제2 예측된 이미지 은 제2 예측된 아바타를 포함하고, 상기 제2 샘플 세트는 M개의 제2 샘플 이미지를 포함하고, 각각의 제2 샘플 이미지는 샘플 아바타를 포함하고, M은 양의 정수이고, k는 양의 정수이고, k ≤ M임 -; 및
    상기 제1 샘플 이미지 내의 상기 타깃 아바타와 상기 제1 예측된 아바타 사이의 차이, 및 상기 제2 샘플 이미지 내의 상기 샘플 아바타의 제1 유형 속성과 상기 제2 예측된 아바타의 제1 유형 속성 사이의 차이에 따라 상기 이미지 프로세싱 모델을 훈련시키도록 구성된 모델 훈련 모듈 - 상기 이미지 프로세싱 모델은 입력 이미지 내의 아바타의 제1 유형 속성을 유지하면서, 입력 이미지 내의 아바타를 상기 타깃 아바타로 대체하도록 구성됨 -
    을 포함하는 이미지 프로세싱 장치.
  16. 이미지 프로세싱 디바이스로서,
    저장 장치 및 프로세서
    를 포함하고,
    상기 저장 장치는 컴퓨터 프로그램을 저장하고,
    상기 프로세서는 제1항 내지 제14항 중 어느 한 항에 따른 상기 이미지 프로세싱 방법을 구현하기 위하여 상기 컴퓨터 프로그램을 로딩하고 실행하도록 구성되는, 이미지 프로세싱 디바이스.
  17. 컴퓨터-판독가능 저장 매체로서,
    상기 컴퓨터-판독가능 저장 매체는 컴퓨터 프로그램을 저장하고, 상기 컴퓨터 프로그램은, 프로세서에 의해 로딩되고, 제1항 내지 제14항 중 어느 한 항에 따른 상기 이미지 프로세싱 방법을 수행하도록 적응되는, 컴퓨터-판독가능 저장 매체.
KR1020237030383A 2021-06-03 2021-07-26 이미지 프로세싱 방법, 장치, 및 디바이스, 그리고 컴퓨터-판독가능 저장 매체 KR20230144580A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN202110620382.8 2021-06-03
CN202110620382.8A CN113822790B (zh) 2021-06-03 2021-06-03 一种图像处理方法、装置、设备及计算机可读存储介质
PCT/CN2021/108489 WO2022252372A1 (zh) 2021-06-03 2021-07-26 一种图像处理方法、装置、设备及计算机可读存储介质

Publications (1)

Publication Number Publication Date
KR20230144580A true KR20230144580A (ko) 2023-10-16

Family

ID=78923803

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020237030383A KR20230144580A (ko) 2021-06-03 2021-07-26 이미지 프로세싱 방법, 장치, 및 디바이스, 그리고 컴퓨터-판독가능 저장 매체

Country Status (6)

Country Link
US (1) US20230237630A1 (ko)
EP (1) EP4261770A1 (ko)
JP (1) JP2024508568A (ko)
KR (1) KR20230144580A (ko)
CN (1) CN113822790B (ko)
WO (1) WO2022252372A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116721334B (zh) * 2023-08-11 2023-11-21 腾讯科技(深圳)有限公司 图像生成模型的训练方法、装置、设备及存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3742346A3 (en) * 2019-05-23 2021-06-16 HTC Corporation Method for training generative adversarial network (gan), method for generating images by using gan, and computer readable storage medium
CN110457994B (zh) * 2019-06-26 2024-05-10 平安科技(深圳)有限公司 人脸图像生成方法及装置、存储介质、计算机设备
CN111046757B (zh) * 2019-11-27 2024-03-05 西安电子科技大学 人脸画像生成模型的训练方法、装置及相关设备
CN111402118B (zh) * 2020-03-17 2023-03-24 腾讯科技(深圳)有限公司 图像替换方法、装置、计算机设备和存储介质
CN111192201B (zh) * 2020-04-08 2020-08-28 腾讯科技(深圳)有限公司 一种生成人脸图像及其模型训练的方法、装置及电子设备
CN111523413B (zh) * 2020-04-10 2023-06-23 北京百度网讯科技有限公司 生成人脸图像的方法和装置
CN111783603A (zh) * 2020-06-24 2020-10-16 有半岛(北京)信息科技有限公司 生成对抗网络训练方法、图像换脸、视频换脸方法及装置
CN111860362A (zh) * 2020-07-24 2020-10-30 北京百度网讯科技有限公司 生成人脸图像校正模型及校正人脸图像的方法和装置

Also Published As

Publication number Publication date
JP2024508568A (ja) 2024-02-27
CN113822790A (zh) 2021-12-21
WO2022252372A1 (zh) 2022-12-08
EP4261770A1 (en) 2023-10-18
CN113822790B (zh) 2023-04-21
US20230237630A1 (en) 2023-07-27

Similar Documents

Publication Publication Date Title
WO2021103698A1 (zh) 换脸方法、装置、电子设备及存储介质
CN109934197B (zh) 人脸识别模型的训练方法、装置和计算机可读存储介质
CN110288513B (zh) 用于改变人脸属性的方法、装置、设备和存储介质
CN111814566A (zh) 图像编辑方法、装置、电子设备及存储介质
US11854247B2 (en) Data processing method and device for generating face image and medium
WO2022052530A1 (zh) 人脸矫正模型的训练方法、装置、电子设备及存储介质
CN111833236B (zh) 产生模拟用户的三维脸部模型的方法及装置
CN116109798A (zh) 图像数据处理方法、装置、设备及介质
CN115424088A (zh) 图像处理模型训练方法以及装置
CN113822953A (zh) 图像生成器的处理方法、图像生成方法及装置
US20230237630A1 (en) Image processing method and apparatus
WO2022257766A1 (zh) 图像处理方法、装置、设备及介质
CN115914505A (zh) 基于语音驱动数字人模型的视频生成方法及系统
CN114202615A (zh) 人脸表情的重建方法、装置、设备和存储介质
WO2022166840A1 (zh) 人脸属性编辑模型的训练方法、人脸属性编辑方法及设备
CN116757923B (zh) 一种图像生成方法、装置、电子设备及存储介质
US11763436B2 (en) Facial reconstruction network
CN113538254A (zh) 图像恢复方法、装置、电子设备及计算机可读存储介质
CN117011449A (zh) 三维面部模型的重构方法和装置、存储介质及电子设备
CN113744158A (zh) 图像生成方法、装置、电子设备和存储介质
CN114373033A (zh) 图像处理方法、装置、设备、存储介质及计算机程序
CN113222178A (zh) 模型训练方法、用户界面的生成方法、装置及存储介质
RU2817316C2 (ru) Способ и устройство для обучения модели генерирования изображений, способ и устройство для генерирования изображений и их устройства
CN115564803B (zh) 一种动画处理方法、装置、设备、存储介质及产品
CN117422797A (zh) 表情特征的提取方法、装置、设备及计算机可读存储介质

Legal Events

Date Code Title Description
A201 Request for examination