| src | Light theme | |
| .gitignore | Cute profile picture | |
| boykisser.png | Light theme | |
| Cargo.lock | Cute profile picture | |
| Cargo.toml | Cute profile picture | |
| LICENSE | Cute profile picture | |
| out_100b.png | Light theme | |
| out_100b_old.png | Light theme | |
| README.md | Light theme | |
Profile picture
This repository is used to generate my profile picture using an input boykisser.png that I drew in Krita and some image processing code I wrote in Rust.
How it works:
boykisser.pnggets loaded.- Points in the image that aren't white are chosen at random and categorised as being part of the "body" (black) or the "blush" (red).
- Many parallel jobs are launched, each job involving a large number of iterations that render points on two canvases, one for the body and another for the blush. Each iteration involves interpolating to a random nearby point and possibly resetting the point to a random point.
- The resulting greyscale canvases of these jobs are then merged and a gradient generated from a Bézier curve is used to colour them.
- The body and blush canvases after the gradient is applied are combined and the output is generated.
Building
To create the profile picture, run cargo run --release in the project's root directory. Make sure to run in release mode, especially if you drastically increase the number of iterations.
Input
Input boykisser image, white background, black foreground with red blushing.
Output
Here is the output you get with 100 billion iterations. This took nearly an hour to generate on my machine. The default number of iterations is 100 million.
Output boykisser image, white background, magenta/pink foreground with red blushing.
Alternative
Here's an older version of the profile picture.
Output boykisser image, black background, magenta/pink foreground with red blushing.
License
Both the input image and the code is licensed under the GNU AGPLv3.
I would like to use the original boykisser image, but that is under an unknown license. I drew boykisser.png using the original boykisser as inspiration and a helpful reference.