Skip to content

saketbyte/NST-VGG

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Table of Contents

  1. About
  2. Curious Points
  3. Technologies

About


The project is based on the paper - Image Style Transfer Using Convolutional Neural Networks. For your convenience and for my own interests, I have thoroughly read and annotated both the papers - VGG Architecture as well as the above mentioned paper. You can check the annotated versions here. paper1 paper2

A Neural Algorithm of Artistic Style that can separate and recombine the image content and style of natural images. The algorithm allows us to produce new images of high perceptual quality that combine the content of an arbitrary photograph with the appearance of numerous well- known artworks. I have provided several examples below for showing the beauty of this project. Soon, I will try to host it on web for general use and testing.

Screenshot

Content images

Content 1

Content 1

Stylised final images

Target 1

Target 4

Target 2

Target 5

Target 3

Target 6

Art images used:

Art1

Art2

Art3

Curious Points

  • The best use of this project I see is to create art! Other than that, speculating on more technical uses, I personally gained a lot of insights on how Convolutional Neural networks actually work. It allows us to visualise each aspect of the layer and tweak our code for desired results.

  • Here we must know that since each artistic image has a different style/texture, by style or texture I mean, a different set of brush strokes, colors, patterns and so on. This results in non-uniform outputs for our content and style images to provide a desired output image. Hence, we need to tweak the following paramters based on what kind of image we are trying to use as our style and content-

  • Learning Rate

  • alpha/beta - linear combination of loss weights ratio.

  • Weights for each layer of our convolutional network which determine what kind of features we wish to extract.

Here is an example to show what I mean by this-

  • Before Tweaking

Attempt1

  • After Tweaking

Attempt2

Please refer the notebook and annotated paper to understand better.

Technologies Used


A list of technologies used within the project:

  • Convolutional Neural Network
  • pyTorch
  • python
  • Computer Vision
  • Research :)

About

A project based on CNN

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors