Giter Club home page Giter Club logo

gnca's Introduction

Growing Neural Cellular Automata

This repository is reimplementation on PyTorch code from this blog

We can formulate task as using self-organizing model of cellular automata to reconstruct predefined pattern from any state.

Example of output from trained model:
Image of Sonic

All experiments was on running Ubuntu OS, NVDIA 2080 TI GPU.

Requirements:

* Python 3.6+
* **16GB+ RAM Memory**
* CUDA 9.1+ (For GPU training)
* 10GB GPU Memory (For GPU training) 

Steps to reproduce:

  1. Run pip install -r requirements.txt.
  2. Run python main.py to use CPU or python main.py --use-cuda to use GPU
  3. Wait while training ends, in sonic/infer_log folder will be generated images

Make GIF

  1. (Optional) Run for resize in <images_folder> folder for X in *; do convert $X -interpolate Nearest -filter point -resize 480x480 $X; done
  2. To make GIF run convert -delay 20 -loop 1 <images_folder>/*.jpg myimage.gif

How to decrease Memory usage:

  • For GPU(with --use-cuda parameter) or CPU(w/o --use-cuda parameter) you can change next parameters in config:

    1. decrease both values in ITER_NUMBER tuple
    2. decrease BATCH_SIZE
    3. decrease TARGET_SIZE
  • For CPU only usage:

    1. decrease POOL_SIZE

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.