StyleGan2

suhan cho·2022년 9월 10일
0

StyleGan2

기존 아키텍처 문제점

  • AdaIN style transfer -> blob like artifact발생
  • Progressive growing -> 얼굴의 특정 부분이 fixed position을 갖는 문제점 발생

성능개선

  • Path Length Regularization
    • w스페이스에서 고정된만큼 latent벡터를 이동시키면 이미지 스페이스에서도 고정된 만큼 변화를 일으킨다

      고정값 만큼 조금씩 변화를 일으킨다
    • latent interpolation에 따라서 이미지가 부드러운 변화를 보인다
  • latent벡터를 inversion 알고리즘 제안

문제상황

Bob-like Artifacts

  • AdaIN이 원인으로 추정됨
  • 생성자의 activation에서 더욱 확실히 드러남

Phase Artifact

  • Latent manipulation과정에서 특정요소에서 고정됨
  • Progressive Growing 원인
    • 각 해상도가 output 해상도에 즉시 영향을 미침

    • 저해상도에서 실제이미지 분포와 최대한 높은 frequence detail을 생성하게 되면 다음 레이어에서는 퀄리티를 높이는 식으로 간다

Removing Normalization Artifacts

  • AdaIN은 feature map의 mean/std를 개별적으로 정규화해 서로 연관된 feature들의 정보가 소실될 수 있다
    -> standard deviation만 변경해도 충분

  • convolution연선을 거친 feature map에 대해 바로 modulation적용x
    -> weight값에 대하여 modulation진행

  • 직접적으로 정규화하지 않고 feature map의 statistics를 예측하여 정규화

  • w''로 convolution 연산
    -> 기존의 AdaIN기능 대체 가능

  • normalization을 demodulation으로 대체하여 blob-like artifact가 제거

weight demodulation

  • feature map을 건드린게 아닌 weight값만 건드리기에 연관성을 건드리지 않는다
  • 기존의 Adain으로 하던 스타일을 넣는것을 이 작업을 통해 해결 가능

weight demodulation 유/무

    • 각 스타일이 generator에서 적절히 localized된다
    • corse는 고정된 상태로 fine-resolution 스타일이 효과적으로 변경된다
    • Scale-specific하지 않으며 스타일이 누적된다
    • high-level과 low-level feature를 적절히 섞기 어렵다
    • Overshooting(급격한 변동): artifacts를 생성

Image Quality and Generator Smoothness

PPL(Perceptual Path Length)

  • latent 벡터 변경에 따른 이미지의 부드럽게 나오는지(낮을 수록 shaped)object 잘 생성

  • StyleGan2가 PPL이 더 낮게 나온다(더 좋은 결과 나옴)
  • ImageNet으로 학습한 분류 모델은 Shape보다는 texture(texture-biased)에 기반하여 decision을 내림

MSG-GAN

  • G는 output skips, D는 residual net을 쓸 때 우수하다
  • progressive growing의 장점을 유지한 상태로 단점을 개선

Image Manipulation Using StyleGAN

StyleGAN Encoding (Inversion) : Gradient Descent

  • w벡터를 업데이트 하기위해서 Gradient Descent 사용

  • 18개의 style vector을 업데이트

  • 생성된 이미지에 대한 inversion이 realimg의 inversion보다 좋은 결과가 나온다
    -> 이 결과 real image인지 판단 가능

  • 진짜 이미지에서의 차이는 별로 없지만
  • 생성한 이미지에 대한 inversion은 styleGan2가 더 높은 성능을 보인다
profile
안녕하세요

0개의 댓글