Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/zeh/random-art-generator

Command-line application to produce generative art based on a target image
https://github.com/zeh/random-art-generator

cli-app computer-art generative-art hill-climbing image-processing procedural-generation rust

Last synced: 4 days ago
JSON representation

Command-line application to produce generative art based on a target image

Awesome Lists containing this project

README

        


Random Art Generator

# Random Art Generator

![GitHub](https://img.shields.io/github/license/zeh/random-art-generator)

Download | Reference | Changelog | License (MIT)

Random Art Generator is a command-line application to produce generative art.

When passed a _target_ image, it will start painting elements on a blank canvas, essentially creating new images at random. Resulting images that are _mathematically closer_ to the target image are kept, and used as a new canvas; results that aren't get discarded. This repeats until the desired number of attempts or generations is achieved.

For example:

```shell
rag profile.jpg --generations 100
```

Technically known as [hill climbing](https://en.wikipedia.org/wiki/Hill_climbing), this process allows the creation of new images that progressively converge into the target image, with a style all its own depending on the chosen painting algorithm and its arguments.

This application is written in [Rust](https://www.rust-lang.org/), and downloadable binaries are currently available for macOS, Linux, and Windows. A webasm target - so it can be used as a JavaScript library - is planned for later.