AI 공부 도전기

[논문 Summary] StarGAN v2 (2020 CVPR) "StarGAN v2: Diverse Image Synthesis for Multiple Domains"

 

     

 

논문 정보

Citation : 2022.06.18 금요일 기준 18670회

저자

 

Yunjey Choi, Youngjung Uh - Clova AI Research, NAVER Corp, 

Jaejun Yoo - EPFL

Jung-Woo Ha - Clova AI Research, NAVER Corp

 

논문 링크

Official

https://openaccess.thecvf.com/content_CVPR_2020/papers/Choi_StarGAN_v2_Diverse_Image_Synthesis_for_Multiple_Domains_CVPR_2020_paper.pdf

 

Arxiv

https://arxiv.org/abs/1912.01865

 

StarGAN v2: Diverse Image Synthesis for Multiple Domains

A good image-to-image translation model should learn a mapping between different visual domains while satisfying the following properties: 1) diversity of generated images and 2) scalability over multiple domains. Existing methods address either of the iss

arxiv.org

 

 

논문 Summary

Abstract

 

 

0. 설명 시작 전 Overview

 

 

Image-to-Image Translation 분야에 있어 Diversity와 Scalability를 만족하는 StarGAN v2를 제안한다.

baseline이자 전작인 StarGAN 모델을 기반으로 모델의 수정을 진행한다. 

 

특정 label보다 style code를 활용하는 모델 구조로의 변경 (StyleGAN의 영향을 받음.)

mapping network(random Gaussian noise -> style code) 도입

style encoder(reference image -> style code) 도입

style code를 활용하여 다양한 이미지 생성

 

이를 통해 이미지의 시각적 질과 Diversity(다양성), Scalability(확장성)의 우수성을 충족한다.

더불어 AFHQ 데이터 세트를 제안한다.

 

1. Introduction

 

Image-to-Image Translation 목적: 서로 다룬 도메인들간의 mapping을 학습하는 것

여기서 domain이란 특정 카테고리 범주에 속하는 이미지들의 집합을 의미한다.

이때 각 이미지는 독특한 외관을 가지는 style을 가진다.

 

Image-to-Image Translation 이상: 각각의 도메인에서 다양한 스타일을 고려한 이미지를 합성할 수 있다.

Image-to-Image Translation 현실 : 임의의 도메인과 스타일을 손쉽게 바꾸는 것은 어렵고 복잡하다.

특히, 2개 도메인에 대한 mapping을 시도하는 것은 도메인이 증가할 때 확장성이 부족하다.

k개의 domain이 있다면 k(k-1) generator가 필요하다.

 

이에 scalability의 해소를 위해 단일 generator로 다수의 domain을 mapping할 수 있게 하는 StarGAN(2018 CVPR)이 제안되었다.

 

StarGAN summary

https://aigong.tistory.com/395

 

[논문 Summary] StarGAN (2018 CVPR) "StarGAN: Unified Generative Adversarial Networks for Multi-Domain Image-to-Image Translati

[논문 Summary] StarGAN (2018 CVPR) "StarGAN: Unified Generative Adversarial Networks for Multi-Domain Image-to-Image Translation" 목차 논문 정보 Citation : 2022.04.11 월요일 기준 2402회 저..

aigong.tistory.com

 

StarGAN Figure 8

  

StarGAN 문제점 : 그러나 StarGAN은 각 도메인마다 deterministic mapping을 학습하기에 데이터 분포의 multi-modal 특성을 포착하지 못한다. 이 제한은 각 도메인마다의 predetermined label에 기인한다.

 

이에 다수의 도메인에 대하여 다양한 이미지를 생성할 수 있는 scalable 접근법인 StarGAN v2를 제안한다.

1) domain label 대신  domain specific style code로 교체

2) mapping network(random Gaussian noise -> style code) 도입

3) style encoder(reference image -> style code) 도입

4) 단일 generator를 통해 다수의 도메인에 대한 다양한 이미지 합성 

 

2. StarGAN v2

 

2.1 Proposed framework

 

$\mathcal{X}, \mathcal{Y}$ : 이미지 집합, 가능한 도메인

 

 

 

Generator (Figure 2 (a))

 

$x$ : input image

$s$ : domain-specific style code, mapping network $F$ 혹은 style encoder $E$로부터 획득

$G(x,s)$ : output image

Adaptive instance normalization (AdaIN)을 사용하여 $s$를 Generator에 주입

 

Mapping network (Figure 2 (b))

 

$z$ : latent code

$y$ : domain

$F$ : mapping network, MLP로 구성되고, 다양한 style code 출력 결과를 획득

$s=F_y (z)$ : domain $y$에 상응하는 mapping network $F$에 latent code $z$를 적용했을 때의 style code $s$

 

이로써 F에 대해 모든 도메인들에 대한 style 표현을 효율적이고 효과적으로 학습할 수 있도록 한다.

 

Style encoder (Figure 2 (c))

 

$E$ : Style encoder, 다른 reference 이미지를 사용하여 다양한 style code를 생성

$s=E_y (z)$ : domain $y$에 상응하는 Style encoder $E$에 input image $x$를 적용했을 때의 style code $s$

 

이로써 $G$는 reference 이미지 $x$의 스타일 $s$를 반영하는 출력 이미지를 합성

 

Discriminator (Figure 2 (d))

 

multi-task discriminator로 다수의 출력 결과로 구성된다. 각 출력은 binary classification으로 이미지 x가 domain y에 해당하는 실제 이미지인지 가짜 이미지인지를 판단한다.

 

2.2 Training objectives

Adversarial objective

1) 훈련 시, latnet code $z \in \mathcal{Z}$과 target domain $y \in \mathcal{Y}$를 랜덤하게 샘플한다.

2) mapping entwork $F$로부터 target style code $\tilde{s}=F_{\tilde{y}} (z)$를 생성한다.

3) generator $G$에 이미지와 style $x, \tilde{s}$를 입력으로 넣고 target domain $y$에 맞는 이미지를 생성한다.

 

 

target domain $y$에 해당하는 실제 이미지와 생성된 이미지 간의 adversarial loss를 구한다.

 

Style reconstruction

 generator $G$에서 생성된 이미지를 Style encoder $E$에 넣어 뽑아낸 style code와 초기 Mapping network $F$에서 얻어낸 style 간의 차이를 구하는 style reconstruction loss를 구한다. 

test time때 학습된 encoder E는 Generator로 하여금 reference 이미지의 style을 반영해서 입력 이미지를 변환하도록 도와준다.

 

Style diversification

 

 

다양한 이미지 생성을 위해 동일 target domain에 대한 랜덤 latent code $z_1, z_2$를 F의 입력으로 사용하여 style code 2개를 뽑는다. 그리고 이 둘에 대한 생성된 이미지 간의 차이를 구함으로써 Generator $G$가 다양한 이미지를 생성하도록 한다. 

해당 loss를 뺄 것이기 때문에 차이가 크면 클수록 좋다.

 

Preserving source characteristics

 

 

domain 불변 특성을 보존하기 위해 생성된 이미지를 다시 복원하는 cycle consistency loss를 사용한다.

 

논문에서 $\hat{s}=E_y(x)$라 되어있지만 문맥상 $\hat{s}=E_x(\tilde{y})$가 조금 더 맞는 설명인 것 같다.

 

즉, input image $x$를 target domain $y$에 가깝게 output image $G(x,\tilde{s})$를 생성한 후 이것을 다시 입력 domain $x$에 대해 복원하는 과정을 거쳐 $x$와 얼마나 차이가 나는지를 계산.

 

Full objective

 

 

자세한 훈련 세부사항은 Appendix B 참조. (아래 정리) 

 

3. Experiments

 

Baseline : MUNIT, DRIT, MSGAN

 

Datasets : CelebA-HQ, AFHQ

 

동등 비교를 위해 256 x 256으로 resize해서 훈련

 

Evaluation metrics : FID, LPIPS

 

Appendix C 참조

3.1 Analysis of individual components

 

 

Baseline : StarGAN

B : ACGAN discriminator의 multi-task discriminator로 교체

C : $R_1$ regularization을 적용하고 AdaIN으로 교체

D : 식 (2) 대신 latent reconstruction loss를 사용해봤지만 특정 도메인에 대한 수용력이 부족하여 유의미한 성능이 어렵다.

E : D 대신 style code를 사용

style reconstruction loss를 사용함으로써 특정 도메인의 style을 반영한 다양한 이미지 생성이 가능

F : 식 (3)을 채택함으로써 다양한 이미지 생성

 

 

3.2 Comparison on diverse image synthesis

 

유의 : LPIPS 논문에서 LPIPS는 낮을수록 좋은 지각적 평가를 나타내는 지표라고 설명합니다. 그러나 본 논문에서는 높을수록 좋다고 나와있어 해석에 유의하시길 바랍니다.

 

 

Latent-guided synthesis

 

Reference-guided synthesis

 

Human evaluation

 

4. Discussion - skip

 

5. Related work

 

GAN

Image synthesis(BigGAN), colorization, super resolution(SRGAN, ESRGAN)

StyleGAN

Pix2Pix, CycleGAN

FUNIT

기타 GAN 종류

 

6. Conclusion

 

Diversity, Scalibility를 만족하는 Image-to-image translation 분야의 어려운 2 문제를 StarGAN v2를 통해 해소한다.

AFHQ 새로운 데이터 세트 제안

 

Appendix

 

A. The AFHQ dataset

 

동물 얼굴 HQ (Aminal Faces-HQ, AFHQ) 512X512 해상도 15,000 고해상도 이미지로 구성된 데이터 세트이다.

3개의 도메인 (고양이, 개, 야생동물)에 대해 각 5천 장씩 존재한다.

각 도메인마다 8 종류 이상의 종이 포함된다.

test set에는 500 이미지로 구성

 

Flickr과 Pixabay로부터 이미지를 수집함.

 

B.training details

 

 

C. Evaluation protocal

 

 

Frechet inception distance(FID)

 

 

 

Learned perceptual image patch similarity (LPIPS)

 

 

D. Additional results

 

 

E. Network architecture

 

 

 

Generator

 

 

Mapping network

 

Style encoder

 

Discriminator

 

 

 

 

Reference

공식 Github

https://github.com/clovaai/stargan-v2

 

GitHub - clovaai/stargan-v2: StarGAN v2 - Official PyTorch Implementation (CVPR 2020)

StarGAN v2 - Official PyTorch Implementation (CVPR 2020) - GitHub - clovaai/stargan-v2: StarGAN v2 - Official PyTorch Implementation (CVPR 2020)

github.com

 

공식 YouTube

 

https://youtu.be/sx5x4KGqX6s

https://youtu.be/0EVh5Ki4dIY

 

https://colab.research.google.com/drive/1NavLGqSHDLfgbppCFg7pSRDvhYeHwg4G?usp=sharing 

 

starGAN v2 on Colab.ipynb

Colaboratory notebook

colab.research.google.com

 

공유하기

facebook twitter kakaoTalk kakaostory naver band
loading