All Projects → ProGamerGov → Neural-Tile

ProGamerGov / Neural-Tile

Licence: other
A better tiling script for Neural-Style

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to Neural-Tile

Neural Tools
Tools made for usage alongside artistic style transfer projects
Stars: ✭ 150 (+328.57%)
Mutual labels:  transfer, style, style-transfer, neural-style, neural
Torch Models
Stars: ✭ 65 (+85.71%)
Mutual labels:  style, style-transfer, neural-style, neural
Neural-Zoom-Legacy
Infinite Zoom For Style Transfer
Stars: ✭ 14 (-60%)
Mutual labels:  style-transfer, neural-style, neural
Fast Style Transfer
TensorFlow CNN for fast style transfer ⚡🖥🎨🖼
Stars: ✭ 10,240 (+29157.14%)
Mutual labels:  style-transfer, neural-style
Neural Style Pt
PyTorch implementation of neural style transfer algorithm
Stars: ✭ 456 (+1202.86%)
Mutual labels:  style-transfer, neural-style
Adain Style
Arbitrary Style Transfer in Real-time with Adaptive Instance Normalization
Stars: ✭ 1,049 (+2897.14%)
Mutual labels:  style-transfer, neural-style
neural-style-pytorch
Neural Style implementation in PyTorch! 🎨
Stars: ✭ 50 (+42.86%)
Mutual labels:  style-transfer, neural-style
Faststyle
Tensorflow implementation of fast neural style transfer.
Stars: ✭ 170 (+385.71%)
Mutual labels:  style-transfer, neural-style
Style Transfer
A Keras Implementation of "A Neural Algorithm of Artistic Style"
Stars: ✭ 115 (+228.57%)
Mutual labels:  style-transfer, neural-style
Tensorflow Fast Style Transfer
A simple, concise tensorflow implementation of fast style transfer
Stars: ✭ 224 (+540%)
Mutual labels:  style-transfer, neural-style
Pytorch Forecasting
Time series forecasting with PyTorch
Stars: ✭ 849 (+2325.71%)
Mutual labels:  machine, neural
Neural Style Audio Tf
TensorFlow implementation for audio neural style.
Stars: ✭ 413 (+1080%)
Mutual labels:  style-transfer, neural-style
Tensorflow Style Transfer
A simple, concise tensorflow implementation of style transfer (neural style)
Stars: ✭ 278 (+694.29%)
Mutual labels:  style-transfer, neural-style
Texture nets
Code for "Texture Networks: Feed-forward Synthesis of Textures and Stylized Images" paper.
Stars: ✭ 1,147 (+3177.14%)
Mutual labels:  style-transfer, neural-style
parallel-corpora-tools
Tools for filtering and cleaning parallel and monolingual corpora for machine translation and other natural language processing tasks.
Stars: ✭ 35 (+0%)
Mutual labels:  machine, neural
stylizeapp
A flask website for style transfer
Stars: ✭ 34 (-2.86%)
Mutual labels:  transfer, style
Neural Style Audio Torch
Torch implementation for audio neural style.
Stars: ✭ 130 (+271.43%)
Mutual labels:  style-transfer, neural-style
MeuralPaint
TensorFlow implementation of CNN fast neural style transfer ⚡️ 🎨 🌌
Stars: ✭ 19 (-45.71%)
Mutual labels:  style-transfer, neural-style
Keras-Style-Transfer
An implementation of "A Neural Algorithm of Artistic Style" in Keras
Stars: ✭ 36 (+2.86%)
Mutual labels:  style-transfer, neural-style
Setup
Setup a new machine without sudo!
Stars: ✭ 130 (+271.43%)
Mutual labels:  imagemagick, machine

Neural-Tile

Creating a larger Neural-Style images through automated tiling.


The idea for the script comes from a combination of techniques discovered by SwoosHkiD/bododge and ProGamerGov which was posted on the Neural-Style Wiki.

0000sir created the original skeleton of the script.

Requirements

A Neural Art project like Neural-Style

And ImageMagick, install it with:

sudo apt-get install imagemagick

Usage

The default version of the script is 3x3 tiles.

Copy this script to neural-style directory and add your Neural-Style or other neural network based image project settings on lines 109-124 for the initial run through of the script. Then add the same settings, or different ones, to lines 139-156 for the tiles. Whether or not you are doing multires, or the normal process, make sure that -content_image $1, -style_image $2, and -output_image $3 remain the same for everytime the neural art project is ran with your settings. If using multires, then -output_image $3 only needs to remain for the last run through/step in the chain.

Then run:

./neural-tile.sh content_image style_image

If you face a permission error, try using chmod to fix the issue:

chmod u+x ./neural-tile.sh

If you have an already styled image, or had to stop the script before all the tiles were made, the script will automaticaly pickup where it left off at:

  • To use a previously styled image, place the image into in your Neural-Style/output/<Styled_Image> directory and change your specified "content_image" parameter to the name of your previously styled image. You also need to place a copy of you previously styled image into the Neural-Style directory.

  • To continue with already processed tiles, place the original tiles into the Neural-Style/output/<Image_Name>/ directory. Place the previvously styled tiles into the Neural-Style/output/<Image_Name>/tiles/ directory. Note that it if you are using tiles that you ran through Neural-Style in a previous session, make sure you are using the Neural-Style parameters for both sessions.

Due to the way the script creates and procceses the tiles, it should be possible to safely use the -save_iter command during the processing of the tiles. This can be done to save different iteration sets of tiles, that can be renamed by the user, so that the script will put them together.

If you are using multires or the normal single step process and want the tiled image to look similar to your original styled image:

  • The style scale value that results in zero style change, is the square root of the number of tiles the image was divided into. This equation will need to be adjusted if you use a style scale value other than 1 for the initial image styling.

  • Using -original_colors 1 may also help prevent style drift, at least in terms of color.

  • The amount of drift a tile undergoes, is dependent on the tile's content.

You can adjust the amount of overlap in any of the tiling scripts by changing the values on these lines:

#Defines the overlap overlap_w=50 overlap_h=50

  • Generally speaking, the larger the overlap value, the better your tiles will blend together. Though a larger overlap value results in a smaller output image. The default values have been tested to work with many different output images.

  • Using two different overlap values for the height and width has not been tested yet, so it is recommended you use the same value for both.

How It Works

1. Generate The First Output Image:

It is recommended that you change the Neural-Style parameters to your linking.

2. Split The Initial Output Image Into Tiles:

ImageMagick is used to divide your first Neural-Style output image into a series of overlapping cropped images.

3. Run The Tiles Through Neural-Style To Increase Their Quality And Size:

The same Neural-Style parameters are then used to "U-Pres" the overlapping crop pieces, resulting in a higher resolution output.

4. Feather The Tiles:

Feathering is used to blend the overlapping cropped tiles that have gone through Neural-Style in order to increase their resolution. Feathering values can be manipulated in order to find the best values for blending the tiles together.

5. Merge The Feathered And Non-feathered Tiles Into Separate Outputs:

The feathered tiles are put back together into an image that is larger than your original Neural-Style output image.

6. Layer The Feathered Image Above the Non-feathered Image:

This is done to disguise the feathering that is done to blend the tiles together.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].