Skip to content
Go to file

Latest commit

fix front-end building failure

Git stats


Failed to load latest commit information.
Latest commit message
Commit time
Jun 7, 2018
Jun 7, 2018
Oct 17, 2019
Jun 7, 2018
Jun 7, 2018
Mar 21, 2020
Jun 7, 2018
Mar 21, 2020

Sketch to Art šŸŽØ

You could be an artist with AI

[Live Demo] Note: Only frontend is available now

Or you can Run with Docker in minutes


This project can transform your casual sketch to beautiful painting/artwork using modern AI technology.


Run with Docker

With Docker, you can quickly build and run the entire application in minutes šŸ³

# 1. First, clone the repo
git clone
cd sketch-to-art

# 2. Build Docker image
docker build -t sketch-to-art:dev .

# 3. Run!
docker run -it --rm -p 8080:8080 -p 5001:5001 -p 5002:5002 sketch-to-art:dev

Then, go to localhost:8080 and play with the demo! šŸŽ‰


To achieve the goal, there are mainly two steps in the pipeline:

  • Reconstruct and generate real image from the sketch
  • Arbitary style transfer to beautify the result with given result

Sketch Reconstruction

The principle behind this is called Conditional Adversarial Networks, known as pix2pix, which is able to generate image based on the given image.

Style Transfer

It became known to us with the appearance of Prisma app. Typically, we generate an individual model for each pre-defined style. Here, we want to go further by using any new picture as the style. So, we adopted the method, Universal Style Transfer via Feature Transforms proposed in NIPS2017, which enables us to perform arbitary style transfer.

Manual Installation


The server side is powered by Python and Flask. You can see this simpler example. Navigate to the server directory and all the files concerning the service and neural networks are there. The two main files:

  • for pix2pix translation
  • for arbitrary style transfer


Make sure you have Python installed, and some packages are needed: tensorflow, keras, pillow, flask, gevent. You can use pip to install them:

pip install -r server/requirements.txt


# Simply run with python

And you could see the output indicating the port it's listening (5001 and 5002). Go to http://localhost:5001 and you should see the returned information.


You should installed:

# Clone the repo
git clone
cd sketch-to-art

# Install dependencies
yarn  # or npm install

# Run
yarn dev  # or npm run dev

Open your favorite browser at http://localhost:8080, the site is there.


This is the final project of Digital Image Processing instructed by Prof. Jia Yan.


Xin Fu, Shuaibin Zhang, Tangbo Liu, Haoran Su


Copyright Ā© 2018, Fing

Released under the MIT License.

You canā€™t perform that action at this time.