본문 바로가기

AI/Paper Review

Semantic Image Synthesis with Spatially-Adaptive Normalization (CVPR '19)

일명 SPADE라고 불리는 Pix2Pix SOTA 기법에 대한 논문이다.

이전에 리뷰했던 Pix2Pix 논문의 고도화 버전이며, NVIDIA의 논문에다가 저자들도 다소 겹치고, 1저자가 한국인이라는게 눈에 띈다.

 

주된 어플리케이션은 Semantic layout -> Photorealistic Image으로 변환하는 것이다.

Semantic segmentation의 라벨만으로 그럴듯한 자연 영상을 생성해준다는 것으로 이해하면 쉽다.

SPADE(Spatially-adaptive denormalization)

 

기존기법들은 semantic layout을 직접 입력으로 이용했는데, 이는 기존의 'normalization layer'에 의해 semantic information이 날라가기 때문에 suboptimal하다고 주장한다.
이를 해결하기 위해, 'spatially-adaptive normalization'이라는 기법을 제시하여 input layout을 이용한다.

아래 그림을 보면, 또다른 conv 필터를 통해 만들어낸 gamma와 beta라는 변수를 이용하여 bias와 weight처럼 곱해진다는 것이 핵심이다.

이를 통해 batch norm으로 normalized된 feature에 대해 인풋 데이터를 통해 만든 feature를 합성시켜서 'denormalized'시킨다는 것이 이 논문의 핵심 구조이다.

SPADE module

구조

SPADE generator

- SPADE : 기본적으로 normalization 연산을 학습된 tensor형태의 파라미터(gamma & beta)를 이용하여 수행
- SPADE가 있으면 학습된 modulation parameter가 label layout에 대한 압축된 정보를 충분히 갖기 때문에 genertor의 첫번째 레이어에 segmentation map을 입력할 필요가 없다.
- 따라서 generator의 인코더 부분을 버리고(pix2pixHD는 인코더-디코더 형태), 이에 따라 기존 네트워크들보다 경량화된 구조를 갖는다.
- Upsampling layer와 결합된 ResNet block 형태이고 각 residual block은 서로 다른 해상도에 대해 작용
- 학습시 multi-scale discriminator와 pix2pixHD에서 사용된 loss function과 유사한 함수를 이용
- 입력으로 noise vector(1D 256 nodes). Semantic input이 직접 들어가는 것이 아닌 conv필터를 통한 feature 형태로 중간 중간 입력됨.

 

Data
- COCO-stuff : 118000장의 학습 영상과 5000장의 검증 영상이 포함되었으며, 182개의 semantic class로 구성.
- 그 외에도 ADE20K, Cityscapes, Flickr Landscapes 등으로 데이터셋 구성


Metrics
- 합성된 영상에 대해 semantic segmentation model 적용하여 GT mask와의 유사도 측정(mIoU, accuracy)
- Frechet Inception Distance(FID)

 


이렇게 SPADE에 대해 간단히 알아보았다.

이 논문은 pix2pix에 대한 성능으로도 유명하지만, 구조 때문에 더 유명한 논문이다.

이후에 Image/Video 분야 생성 모델들에서 SPADE를 많이 가져다 차용하는 것을 확인할 수 있다.(eg. LWGAN, Video2Video, etc..)

어떻게 보면 간단한 아이디어지만 간단하면서 성능이 좋은 것만큼 훌륭한게 있을까?

이제는 GAN쪽은 잠시 접어두고, 3D Pose Estimation 위주로 볼 예정이다.

정리대는 되로 또 열심히 업로드 해야지.