Skip to content

AI Artist for Machine Learning for Hackers #5

Notifications You must be signed in to change notification settings

shaz13/AI_Artist

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Overview

A project that trains a convolutional neural network over a dataset to repaint an novel image in the style of a given painting. This is the implementation of Neural Style Transfer from the paper A Neural Algorithm of Artistic Style in Keras 1.0.2. This is also the code for 'Build an AI Artist' on Youtube

Alt Text

Dependencies

Use pip to install any missing dependencies

If you have dependency version issues, use virtualenv

Basic Usage

There are 3 images to identify when we run the script

  1. Your base image (to artify)
  2. Your reference image (the art to learn from)
  3. Your generated image

Run the following comand to generate an image in your chosen style

python network.py --base_image_path /path/to/your/image --style_reference_image_path /path/to/your/painting --result_prefix /path/to/generated/file/you/create

Other optional commands are

  • --image_size: Size of your output image
  • --content_weight: How much to weigh the content
  • --style_weight: How much to weigh the style
  • -style_scale: How much to scale the style
  • --total_variation_weight: Uniformity of the generated image
  • --num_iter: Nmber of iterations
  • --rescale_image: to rescale or not to rescale
  • --rescale_method: rescale algorithm
  • --maintain_aspect_ratio: to maintain aspect ratio or not
  • --content_layer: which layer to focus on for content generation

I'd run this on AWS, but you can run this locally too if you have a GPU. On a 980M GPU, the time required for each epoch depends on mainly image size (gram matrix size) :

  • For a 400x400 gram matrix, each epoch takes approximately 11-13 seconds.
  • For a 512x512 gram matrix, each epoch takes approximately 18-22 seconds.
  • For a 600x600 gram matrix, each epoch takes approximately 28-30 seconds.

Credits

Credit for the vast majority of code here goes to Somsubra Majumdar. I've merely created a wrapper around all of the important functions to get people started.

About

AI Artist for Machine Learning for Hackers #5

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.7%
  • Shell 0.3%