Generated furniture: cursed, but beautiful
4 min read

Generated furniture: cursed, but beautiful

Beetle kill pine is a popular wood in Colorado, salvaged from trees killed by pine bark beetles. While the dead trees stand before harvesting, a fungus colonizes them, giving the wood interesting blue-grey streaks called spalting. It's a really pretty wood.

But AI apparently thinks "a chair made of beetle kill pine" looks something like this:

Emerging from a messy wooden plank wall is a chair-sized layered shape with a bunch of confusing legs, one arm, and oh yes three large green-black beetles.
"a chair made of beetle kill pine"

I was using CLIP+VQGAN (tutorial by @samburtonking here) which had almost certainly seen beetle kill pine wood during its internet training. But it had also seen beetles.

And maybe pinecones? Fortunately, as reader Marcello Herreshoff pointed out, the CLIP+VQGAN code I'm using allows me to give some prompts negative weights. So I can tell it to generate a picture with +1 to "a chair made of beetle kill pine" and -1 to "insect".

At first it's fairly promising - the beetle is gone, and there's some really pretty blue color emerging. It knows that beetle kill wood has blue streaks!

It looks as if canyon cliffs have melted into a wooden floor. Things have beautiful wooden texture and even the characteristic blue beetle kill streaks, but are very confusing.
a chair made of beetle kill pine: 1 | insect: -1, iteration 400

And then the next iteration looks like this.

Glowing rainbow cartoonish shapes squiggle out from an incandescent center, surrounded by a reddish brown halo of larger squiggles. Everything is three dimensional and outlined in bold black.
a chair made of beetle kill pine: 1 | insect: -1, iteration 450

So that failed on multiple levels, including a continuation of its complete ability to resemble a chair. I don't know why this collapsed so hard into rainbow spaghetti, but I've learned that when CLIP+VQGAN image generation is going poorly, it often helps to be more specific.

Here's what I got for "a chair made of blue spalted beetle kill pine wood" (with a -1 weight to "bug").

A big wooden stumplike object fills the image, with a few thick roots blending with the floor. Veins of turquoise and lapis lazuli add contrast to the weathered wood grain. Perched on a ledge is a shape kind of like a black folding chair, but squashed.
a chair made of blue spalted beetle kill pine wood: 1 | bug: -1

Granted, it's the most chairlike object yet, but it is not so much made of wood as engulfed in roiling wood. The blue spalting has gotten much more extreme than you ever see in actual beetle kill, but it's gorgeous so I'm keeping it.

I tried to specify the room. Asking for white rooms and clean images and featureless white voids still ended up with messy wood-hives. I had the best success when I specified a background that was itself strongly textured. Here's "a dining chair made of blue spalted beetle kill pine wood on a dirt path in front of a brick wall" (-1 to "bug").

There appears to be a blue bottle on a blue end table, and another end table made out of a stump. Lounging between the two is a chair made of a waterfall of golden-streaked blue wood. The chair might have a leg or two, but you can’t sit on it.
a dining chair made of blue spalted beetle kill pine wood on a dirt path in front of a brick wall: 1 | bug: -1

But I wasn't able to put the chair in a forest at all. This is its attempt to do "in a lush forest clearing with sunbeams".

A wooden floor with vague forest beyond. A chair is merged with a coffee table and a canvas showing a painting of woods and… maybe a salad?
a dining chair made of blue spalted beetle kill pine wood in a lush forest with sunbeams: 1 | bug: -1, iteration 450

I think the problem is that it always starts with a world made of wood and then carves the scene out of it. Here's a very early iteration of the generation process that led to the forest scene above:

A glossy wooden surface with a few knots of deep blue and green.
a dining chair made of blue spalted beetle kill pine wood in a lush forest with sunbeams: 1 | bug: -1, iteration 50

So instead I uploaded a picture of two spindle-backed wooden dining chairs as a starting point. Though they made much more geometrical sense before CLIP+VQGAN started altering them.

Two chairs face each other. Their seats are thick knotted pieces of wood and their backs are blue cartoonish paint alternating with carved pillars. The legs are highly distorted.
two dining chairs made of blue spalted beetle kill wood: 1 | bug: -1

That's the most chairlike chairs I managed to get, and even those are much less chairlike than the starting image I had to give it. CLIP itself can recognize a chair, so the shortcoming is likely the way VQGAN is used to present it with candidate chairs. I sort of imagine CLIP going "yeah I guess? that one's a little more like a chair than the other one?" As usual with AI-generated images, the textures are the strong point, not the geometry.

For more rejected beetle kill chairs, become an AI Weirdness supporter to check out the bonus content! Or become a free subscriber to get new AI Weirdness posts in your inbox.