Drag Your GAN paper review

신형환·2023년 6월 1일
0

PaperReview

목록 보기
11/11


Pan, Xingang, et al. "Drag Your GAN: Interactive Point-based Manipulation on the Generative Image Manifold." arXiv preprint arXiv:2305.10973 (2023).

INTRODUCTION

GAN 네트워크는 임의의 이미지를 생성하는것에 있어 메우 성공적임.
사람들은 기존의 이미지를 컨트롤하여 새로운 이미지를 생성하고 싶어 함.
예를들어 자동차 디자이너는 자신이 디자인한 자동차에 대하여 인터렉티브한 scene들을 얻고 싶어할 것임.

DragGAN은 사용자가 생성된 이미지를 직접 조작할 수 있게 해주는 방법을 제공함.
이는 생성된 이미지의 특정 지점을 선택하고 그 지점을 원하는 방향으로 드래그함으로써 이루어짐.
이러한 점에서 DragGAN은 사용자가 생성된 이미지를 직접적으로, 그리고 직관적으로 조작할 수 있게 해주는 특징을 가지고 있음.

DragGAN의 핵심 아이디어는 생성된 이미지의 특정 지점을 선택하면, 그 지점이 생성 모델의 잠재 공간에서 특정 지점에 대응된다는 점입니다. 그리고 사용자가 이미지를 드래그하면, 이에 대응되는 잠재 공간의 지점도 같은 방향으로 이동하게 됩니다. 이렇게 함으로써, 사용자는 생성된 이미지를 원하는 방향으로 조작할 수 있게 됩니다.

이러한 방식은 사용자가 생성 모델을 보다 쉽게 이해하고 사용할 수 있게 해주며, 또한 생성 모델의 잠재 공간을 보다 효과적으로 탐색할 수 있게 해줍니다. 이는 생성 모델의 사용성을 크게 향상시키는 중요한 기능입니다.

METHOD

StyleGAN

stylegan 아키텍쳐를 사용하였음.
기존의 GAN decoder는 가우시안 분포를 따르게 되어있음
이러한 부분은 데이터셋의 분포를 따라가게 되어있음.
왜냐면 사용자가 원하는 데이터는 비선형적인 분포를 따라가기 떄문에.
자신이 원하는 "style" latent z 를 만들어내기 힘듬.
따라서 가우시안 분포를 따라하는 레이턴트 코드가 아닌 비선형적인 레이턴트 코드를 만들어내기 위해
레이턴트 코드를 생성하는 FC 맵핑네트워크를 통과시킴.

motion supervision & Point Tracking

사용자는 제너레이터로 생성된 이미지에 핸들포인트와 타겟포인트를 입력함.
이때 제너레이터가 이미지를 생성하기 위한 레이턴트 코드가 w임.
w'는 핸들 포인트가
핸들 포인트가 가지는 리셉티브 필드가 있을것이고 이를 생성하는 레이턴트 코드가 있을것임
그럼

  1. 임의의 레이턴트 코드로 이미지 생성
  2. 핸들 포인트와 타겟 포인트 입력받음
  3. 최적화를 위해 새로운 레이턴트코드 생성(motion supervision)
  4. 핸들 포인트가 어디로 이동했는지 확인(point tracking)
  5. 핸들 포인트가 타겟 포인트로 이동하는 것을 loss로 하여(L1) 레이턴트 코드 업데이트

motion supervision


첫번째 항은 핸들포인트 주변의 피쳐맵 F(qi)와 핸들포인트가 이동한 후의 피쳐맵F(qi+di)의 L1거리를 계산함
즉 핸들포인트가 움직이면서 피쳐맵이 얼마나 변화하는지 측정하는거임
첫번째 항은 앞뒤가 같아지면 0 이 됨 즉 타겟 주변의 피쳐맵과 동일해지면 로스가 낮아짐
두번쨰 항은 피쳐맵 자체의 값을 로스로 두어 전체적인 피쳐 맵이 변하지 않도록 함

point tracking

포인트 트레킹은 새로운 이미지에서 핸들포인트가 어디에 위치한지 찾음.
즉 새로운 피쳐맵F'에서 qi은 r2 범위내의 점 위치.
를 fi과 L1길이를 측정해서 가장 낮은 값이 새로운 핸들 포인트의 위치임.

Eval

Qualitative Evaluation

Quantitative Evaluation

0개의 댓글