개요

기존 Zookiz 데이터에서 얼굴만 수기로 크롭하여 정제. FFHQ 256*256 pretrained styleGAN2 model을 fine tuning 한다. 학습한 styleGAN2 모델의 generator를 활용하여 pixel2style2pixel encoder를 from scratch로 학습한다. 스케치 그림을 Zookiz 캐릭터로 복원하는 task이다.

 

 

 

랜덤하게 생성된 이미지

 

1차 pixel2style2pixel

data preprocessing

  • cv2를 활용해 기존 데이터를 스케치 버전으로 변환 (sketch - target)
  • test 데이터 설정 (test - target)
  • 원본 데이터가 아닌 styleGAN2가 생성한 데이터를 활용했어야 했음
for f in os.listdir('/content/drive/MyDrive/stylegan_exp01/try02/cropped_resized_dataset/'):
  if 'jpg' in f:
    img = cv2.imread(f'/content/drive/MyDrive/stylegan_exp01/try02/cropped_resized_dataset/{f}', 0)
    blur = cv2.GaussianBlur(255-img, ksize=(21,21), sigmaX=0, sigmaY=0)
    dodge = lambda image, mask: cv2.divide(image, 255-mask, scale=256)
    blended = dodge(img, blur)
    cv2.imwrite(f'/content/drive/MyDrive/stylegan_exp01/try03/sketch/{f}', blended)

 

 

 

  • 6시간 동안 11450 steps processed
  • L2 loss와 LPIPS loss는 조금씩 꾸준히 줄어드는데, W norm loss는 오히려 증가하는 모습
  • 기존 0.3~0.4 정도 하던 loss가 0.2~0.3 정도로 비교적 안정화됨 - 그러나 아주 조금씩 변화 …
  • best_model은 1000 step 마다 갱신되고 있다
  • --start_from_latent_avg를 train 옵션에 넣지 않았는데, 이것을 넣어야 했던 것 같다 (주말 동안에 해보자!)

 

  • 눈동자를 못 그리는 치명적인 문제가 있다. 그리고 봉봉의 얼굴은 전혀 표현하지 못함.

원본 레파지토리를 수정해서 내 개인 레파지토리에 올려놨는데 (AWS 서버 이용을 위해)..… 계속 학습시킬 가치가 있을까? 왜 학습이 잘 안 될까?

복사했습니다!