Generates images using markov chains.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Stephen Downward e62d7f427e Multithreaded markov data gen, removed percent, fixed try/catch in mono 4 years ago
Markov Chain Image Multithreaded markov data gen, removed percent, fixed try/catch in mono 4 years ago
.gitignore initial commit 4 years ago
Markov Chain Image.sln First commit 4 years ago
Markov Chain Image.suo First commit 4 years ago
Markov Chain Image.v12.suo Multithreaded markov data gen, removed percent, fixed try/catch in mono 4 years ago
README.md Removed step from README.md 4 years ago

README.md

markov-image-generator

This is a program that can generate images using markov chains. Although they are primarily used for text, I have implemented one with images. Because I have 16GB of RAM, I wrote it to make use of this, so you may have trouble running it on systems with less. It depends how many images you feed in.

Usage

  1. Change variables at the top of Program.cs. The most important is the data directory. Markov data is generated from pictures at {dataDIR}\Pics*

  2. Compile.

  3. Run program, press M to generate markov data. It will be generated in the data directory. Make sure you have enough space(Multiple GB)

  4. Run program again, press I to generate the final image. It will be called output.png and can be found in the data directory.

TODO

  • Finish Todo list

  • Add more comments to the code, right now I have no idea what the code does

  • Generate pixel based on last x pixels, right now x is stuck at 1, to change it would need a large-ish rewrite

  • Put config options somewhere other than in the code - command line args, or config file

  • Optimize: On disk caching? For people with less RAM, or people who want to feed in many, many images

  • Optimize: Markov data generation. Terribly slow at the moment, luckily, the data can be used more than once(So debugging isn’t too bad)

  • Add alpha values