Categories
etcetera

Generative Lumber

Wood is a curious material. You can see its history in a slice, due to its imperfect rings. I wanted to recreate a simplified version of this. First, I created a skeleton of line segments to represent the trunk and branches. From these, I created a 3D distance map. If I plotted the contours of […]

Categories
etcetera

Splash!

I’ve been wanting to generate patterns that look like splashes. It’s tempting to simulate attractive particles flying through the air, and then see where they intersect the ground, but that’s more intensive than is necessary. Instead, I pretended to throw some metaballs at the ground: Those look like splashes to me! To generate these required […]

Categories
etcetera

Ambiguous Digits 2: Generative Adversarial Network

I’m still interested in making ambiguous-looking numbers. Last time, I trained a neural network to identify pictures of handwritten numbers, and then used that to create images that look like one digit when right-side-up, and a different one when upside-down. This time, I’ll use a Generative Adversarial Network (GAN). A GAN is a pair of […]

Categories
etcetera

Ambiguous Digits 1: Classification-based

I wanted to create a set of numbers that look like different numbers when they’re rotated 180°, but I especially wanted a computer to do it for me. I’ve been using TensorFlow recently, and that sounded like a good place to start. There is a standard data set used for number identification, the MNIST database, […]

Categories
etcetera

Generative Writing

I wanted to generate random hand-written letters and have them look like writing. I wanted each alphabet to have a unique style: aspect ratio of characters, sharpness, and number of strokes. In the following image, each row is a different generated alphabet. Seems to work alright. They are visually distinct, though sometimes too complicated. Now […]

Categories
etcetera

Worm Trails

Branching patterns are great. Here, the little movers die upon hitting a path, and respawn at the location of another mover. With some tweaks, this system can make a lot of nice patterns. You can even play with it online here! The basic version is here: That’s fun to watch evolve, but there are so […]

Categories
etcetera

Animated Rorschach Blots

Using metaballs and thresholding, here’s an animated Rorschach blot: You can play with a variety of options at this link.

Categories
etcetera

Gingery Roots

You can get pretty nice patterns just by moving circles around. Here are some of them. I vary the speed, wiggliness, transparency, and coloration.

Categories
etcetera

Trees

Trees are nice branching things. Here’s some pictures with generated trees. If you want to generate your own, play with the snowy trees here, and the colorful trees here.

Categories
etcetera

Rug in the Wind

I wanted to make an image out of strings, like if the threads of a shag carpet were extended, and dyed to match the colors of an underlying image. The strings hanging statically are no fun, so I added some wind, based on Perlin noise. Here’s a gif of the result: There’s lots of different […]