Style Transfer

Mar 1, 2021


Project Guidance.

Assignment 3 with 프로젝트

Paper.

Notion, A Neural Algorithm of Artistic Style

A Neural Algorithm of Artistic Style

2015년 논문.


Notion, Image Style Transfer Using Convolutional Neural Networks

Image Style Transfer Using Convolutional Neural Networks

2016년 논문. 내용이 조금 더 많다.


두 논문의 차이점.

  1. 2016년 논문은 Content Reconstructions에서 conv'N'_2를 사용한다.
  2. 2016년 논문이 최적화 방식, 입력 이미지에 따른 차이, 레이어 깊이에 따른 차이, Discussion 등 더 많은 내용을 다룬다.

Error & Trouble.

  1. torch.tensor to torch.as_tensor

    Copy Construct warning · Issue #467 · pytorch/text


  1. Loss 값이 순간적으로 튀긴다.

    덕분에 이런 이미지를 얻을 수 있다.

    Image_1614432527

Result.

Framework는 Tensorflow와 Pytorch를 모두 사용하였고, Result에서는 Tensorflow의 결과를 이용하였다.

  • 최적화 이전의 결과.

    Neural_Style_Transfer_tf

  • 최적화 이후의 결과.

    Neural_Style_Transfer_tf_2

Different Weight Rate.

Setting.

Framework = Pytorch
Input Image = Content Image
Content Weight = 1
Epoch = 400
  • Style Weight = 100.

    Neural_Style_Transfer_pytorch_Content_100

  • Style Weight = 10,000.

    Neural_Style_Transfer_pytorch_Content_10000

  • Style Weight = 1,000,000.

    Neural_Style_Transfer_pytorch_Content

Different Input Image.

Setting.

Framework = Pytorch
Style Weight = 1,000,000
Content Weight = 1
Epoch = 400
  • Content Image.

    Neural_Style_Transfer_pytorch_Content

  • Style Image.

    Neural_Style_Transfer_pytorch_Style

  • Noise Image.

    Neural_Style_Transfer_pytorch_Noise_2

    Neural_Style_Transfer_pytorch_Noise

Project Notebook.



링크.

고흐의 그림을 따라그리는 Neural Network, A Neural Algorithm of Artistic Style (2015) - README

CNN을 활용한 스타일 전송(Style Transfer), 꼼꼼한 딥러닝 논문 리뷰와 코드 실습

Neural Transfer Using PyTorch - PyTorch Tutorials 1.7.1 documentation

tf.keras를 사용한 Neural Style Transfer, TensorFlow Core

[딥러닝]Neural Style Transfer