An AI-powered art generation app that transforms your photos by blending their content with unique artistic styles to create stunning, one-of-a-kind images.
Neural Style Transfer (NST) is a technique which combines two images (content image for the object of the image and the style image from which only the style is extracted) into a third target image.
Basically, in Neural Style Transfer we have two images- style and content. We need to copy the style from the style image and apply it to the content image. By, style I basically mean, the patterns, the brushstrokes, etc.
Note
Want to know more about the NST Paper? Check out this repo here: NeuStyle
Let's have a look to an example below: (The left-most image is the content, central image is the style and the right-most image is the output.)
You can check out the deployed app here: NeuraCanvas
Clone the repository and install the required dependencies using the following commands:
git clone https://github.com/aman-chhetri/NeuraCanvas.gitcd NeuraCanvaspip install -r requirements.txtstreamlit run app.pyThen, your default browser (localhost) should open the following page:
- Go to sidebar dropdown and choose option
"Click here to run app!". - After that
uploadthe content and style images respecctively. - Then after that click
"START"button to start the model. - After a while around 40-50 secs, you can see the
generated images.
If the image looks unoptimized, try increasing iterations number (or tune the weights of the loss function).
These are some of the resources I referred to while working on this project. You might want to check them out.
- The original paper on neural style transfer by Gatys et al .
- PyTorch's tutorial on NST.
- The original paper on VGG19.
I found these repos useful: (while implementing the model)
- fast_neural_style (PyTorch, feed-forward method)
- neural-style-tf (TensorFlow, optimization method)
- neural-style (TensorFlow, optimization method)
I found some of the content/style images from here:
It is publicly open for any contribution. Bugfixes, new features, and extra modules are welcome.
- To contribute to code: Fork the repo, push your changes to your fork, and submit a pull request.
- To report a bug: If something does not work, please report it using GitHub Issues.
- Email: chhetryaman3@gmail.com
- X: @amanxtwts
- Website: Portfolio
- LinkedIn: @amankshetri

