Image to image translation은 두 이미지 사이의 연관성을 학습하는 방법입니다. 보통은 1) 두 이미지의 짝을 지은 데이터가 가 구하기 어려워서 image to image을 하기 어렵고, 2) 한 이미지를 꼭 반드시 하나의 이미지에만 짝을 지을 필요가 없어 데이터 구성이 매우 어렵습니다.

 

위의 1), 2)의 예시인데, 이렇게 이미지를 짝을 지어야하는 경우에 이 데이터를 짝짓기도 어렵고, 짝을 짓더라도 다양한 경우가 많아서 golden standard로 짝을 지었다고 보장하기 어렵습니다. 

 

방법론

DRIT++은 2개의 임베딩을 나눠 만들어내는데, 1) domain invariant content space, 2) domain-specific attribute space 을 나눠 만들어냅니다.

구성은 크게 3파트입니다.

  1. 컨텐츠 인코더(content encoder): domain invariant content space을 만들어내는 인코더가 하나 필요합니다.
  2. 속성 인코더(Attribute encoder): 속성 인코더도 하나 필요합니다. 속성 인코더가 만드는 임베딩 벡터는 컨텐트 임베딩 벡터와 공유하지 않습니다. 단, X 도메인, Y도메인에 쓰이는 인코더는 동일 합니다(shared).
  3. 제너레이터(Generator): 컨텐츠 인코더가 만든 벡터와, 속성인코더가 만든 벡터를 입력으로하여 이미지를 생성합니다.
  4. 판별부(Domain discrimator): 합성된 이미지와 진짜 이미지를 판별하는 모듈입니다.

 

테스트 타임에는 attribute vectors을 prior Gaussian distribution을 따른다고 가정하고  N(0,1)의 attribution vector을 주입합니다.

 

반응형

+ Recent posts