You might have noticed a few captions of images mentioning someone named Bob who is responsible for all of the artwork on the site.

Bob is the name given to a python script that hooks into a stable diffusion api. Named for the late TV Painter, he is easily reachable on my local chat server.

Using chat to fetch an image from Bob.

If I need art for something, I just ask Bob to make it for me.

Quotebook

In addition to making cheesy disposable art for this website, Bob also makes cheesy disposable art for other places. I run an automation system at my house that makes extensive use of him. For example, we have a family quotebook of amusing phrases our kids or each other have said over the years. I have a program that displays a random one of these quotes on our bathroom mirror, rotating every few seconds. Bob happily paints an original picture of each one when it comes up.

Status Image

I also have him generate what I call "status images" throughout the day. These take note of the states of various things in the house (who is home, what rooms are occupied, what appliances are in use, how much power if being used, the time of day, if there is media being consumed, and various other things), and use that information to create a prompt that Bob can make an image from. When I am at work, I have it also inject cute animals into the picture because it makes the wife smile.

Playing Music, Drinking Coffee, Robot Vacuum, Dancing with Cute Animals

Sci-Fi Scenery

Bob also generates random sci-fi art for my wall control panels. Each room has a tablet on the wall with an LCARS inspired control interface for that room. I have a section of each page that is dedicated to things that aren't always active (doorbell camera, kitchen timer, that sort of thing). When the widget is not in use, each room gets a different sci-fi themed image as a placeholder. Here are a few examples:

Bob makes new pictures for those screens once a day, so there is always fresh art around the house.

Most of the above images are fairly low resolution (around the 512x512 range), and generate in about 0.25-0.5 seconds each. Bob is running on fairly powerful hardware, so he doesn't have to flex too much to get small things done. To give him more of a challenge, I also have a few high-res projects for him to take on each day.

The Fine Art Images. (Fine as in 'good enough') and the Gallery.

Fine Art

The Fine Art script was created for my bathroom smart mirror (that will be its own post). It is essentially an 'absurd story generator.' It is written as a combination of python with jinja2 templating, and a home assistant automation. I sat down and wrote hundreds of absurd story and sentence fragments, then split them into about a dozen categories. The script pulls from some or all of these categories at random, and stitches the fragments together in order to create a prompt for Bob to draw. The results range from plain head scratching to artistic masterpieces.

Bob's Prompt: "a heavy rock band has a clone made of agent suit jacket while solving a rubik’s cube - woven art, painted in blood"

I've done a brief write-up on this script already. Bob posts new images twice a day to a local server, along with the prompts he was given to make them, These images are in rotation on my bathroom mirror, between family pictures and today's XKCD comic.

You can also see today's Fine Art posting here: https://dzw.zentormey.com/fine-art/

The Gallery is a cheap 43" 1080p television I mounted sideways on my wall. It has a Raspberry Pi 3b+ connected to it that boots directly to a locked down fullscreen kiosk chromium window that loads a webpage showing a single image that refreshes once every 10 minutes.

Bob makes art for this screen every 10 minutes (full 1080x1920 resolution) using a script that was built similarly to the Fine Art script, but with a few important differences.

  1. The Gallery can be fine tuned.
  2. There are override settings available if you want to see something specific.
  3. The scenes are meant to be visually interesting, but not necessarily as "absurd" as the Fine Art output can be.
  4. The images are temporary.

Fine Tuning:
The Gallery has a control interface mounted next to it intended to fine tune the results. This isn't required-Bob will happily take the reigns and follow his heart, if you don't point him in any specific direction-but if you have a desire to see a picture of Nicolas Cage, surrounded by clowns, under Mt. Doom, Bob is there for you:

https://upload.llamanet.amyjnobody.com:5281/upload/YRyg5XnWvU3_SU3I3jMc75kz/Nicolas_Cage_____________surrounded_by_clowns________under_mt_doom_.png
Nicolas Cage, surrounded by clowns, under Mt. Doom

The control panel allows you to mildly steer the prompting, or outright override it with whatever inane goof you are in the mood for. Each toggle switch will add an assortment of options to the prompt.


This allows you to narrow down the output to say, famous people, b/w portraits, and weird, like this one of the new pope:

Bob's Prompt: A black and white portrait of Snoop Dogg becoming Pope.

Obviously, AI Art has become a bit contentious in the media lately. Regardless of how you feel about issues like attribution, copyright, fair use, etc, I think we can all agree that at the very least this picture (From the Fine Art script) is awesome:

Bob's Prompt: Gooey Chuck Norris sharpens all the tools in the toolshed with the help of non other than spell casting outer space without a license.

Regardless, all of this is running locally on my server, without calling out to the Internet for any of it, so regardless of how the cultural winds blow vis-a-vis AI Art, I'm sure Bob will be making things for me for a long time to come.