123 comments

[ 1.8 ms ] story [ 185 ms ] thread
Prize for the most power-hungry mirror.

I also notice that the paintings are not stable over small changes in the inputs.

To me, that’s the charm.
How about changing the style every time the viewer blinks?
It would be cool to intercept the input from a webcam, transform it like this, and then present it to the OS as another virtual camera so you could select it in Teams or Zoom or whatever.
Super cool! I've had similar ideas when I first saw StreamDiffusion. The possibilities are endless
Have you considered a high frame rate morph effect between images? That would increase the effective frame rate and probably would look pretty cool.
I actually think the high frame rate will look worse unless the styling changes less in between frames. Otherwise, it's going to look erratic and there will be a ton of "popping" if each frame changes as much as the frames in the current video. Or maybe op wants it to be a chaotic feeling.
Many years ago I did a couple of hundred variations on the mona lisa in photoshop, and stacked them as a gif. As the eyes remained unchanged in each frame, they gave a fixed point you could focus on while the rest of the face strobed chaotically. It was a nice effect.
Sounds cool! I would like pictures with people in the room doing weird things energetically like stand on their chair. Dancing. Confetti booze strange outfits. Bordering the offensive then deleted after 30 minutes.
It's pretty neat, but I'd never have a webcam steaming everything in view to someone else's server on the internet. It'd be cool if the server ran on my own hardware, and ideally in the frame itself. The privacy policy at runpod.io wouldn't even display in my browsers. (their ToS loaded without an issue).
I wonder if you could do something like this with hardware acceleration (like google coral)
Unfortunately no, they only have a TensorFlow target and none of the hobbyist / released big model image stuff works with it
I think the low framerate adds a unique ambience, at least to me, watching the recorded videos. It gives time to appreciate the art style and generated features. It also feels like a time lapse of gradual changes. I could imagine it being annoying to look at in real time though.
> Art is ... mostly about surfacing the inner world, and only in part about skill.

I like the phrasing of the first part. But what art is "about" is very subjective.

For me, part of what I look for in art is intentionality - the notion that the artist has crafted each element toward a purpose, consciously or not. The less an artist contributes to the final piece, the less meaning I assign to it.

In this case: I would say that the individual pictures being displayed are not "art" - they have no meaning. But I think the device in whole is a piece of art. That is a creation that surfaces the creator's inner world, because they designed the device, wrote the code, crafted the prompts to achieve pieces that reflected their notion of beauty.

I love this framing (pun unintended) of "art".

Besides what you articulated as the "intention", I often think of the "story" behind the art -- whether an idea in the creator's head was expressed via the piece (or not) makes me go "yes, this is Art" (or not).

By that token, when I see automated projects like this, I think of the "installation" as art, but the pixels or arrangements generated by the piece itself is less art-like IMO.

Yes. I think we attribute the cost of the human sacrifice into the value of the art. It's a like owning 1/80th of a human soul and hanging it on the wall.
> It’s unfortunate that art selects so strongly for skill. Can we decorrelate the two?

I really like this direction. I understand why some object to the genai approaches, but in practice sometimes I get an idea of something cool and don't have the skills to create it myself. I'm not going to invest months/years to create each of those ideas and they're not important enough to spend hundreds of dollars that a skilled artist would request. Now there's a way people can try generating the thing and may end up enjoying it - and that's great. (At least for personal use, it gets a bit complicated for commercial purposes)

But unfortunately they did not.

Not everyone could build what is presented here, and inadvertently they have validated that it requires skill to produce a machine that distorts your reality. The pictures being produced isn't the art.

This is assuming an unimplemented idea has value. I think the value we attribute to an idea is actually the dissemination of the idea to others. Often a sufficiently radical idea is difficult for others to grasp and therefore an example must be created by the originator of the idea.

So when someone says "That's a great idea" what they mean is "That's great work".

Time will tell if others see an idea backed by AI work as valuable. Can they even tell? Who knows.

(comment deleted)
This really does change the interaction with art. As a future expansion it might be neat to recognize images on camera that would make for interesting art (i.e. detection of people/animals or recognition of certain styles of composition) as well as being able to choose amongst different styles.

It seems sort of akin to some modern art that incorporated TV screens and video to make dynamic installations, like Nam June Paik.

Is there any way to freeze some of the images?

I thought some of them would be awesome to keep (e.g. pfp or lockscreen photo).

Some optimization suggestions:

- cache the prompting somehow, unless you are doing dynamic stuff with the prompts, the language embeddings generated should be static (this depends on the architecture of the model that you are using, it's only possible with certain setups where the language processing is a separate part in the pipeline)

- consider fine-tuning an img to img model with your current outputs instead of using a language-coupled model. My intuition is that this is currently significantly over-engineered on the ML side.

- Play around with local hardware acceleration instead of sending everything to the cloud, you also probably don't need particularly high resolution for the images either.

Love it thanks, will look into it!
how much does this end up costing to run?
(comment deleted)
Nice! I peeked at the code and thought I’d share a few tips for improving the low frame rate:

Base64 encoding the JPEG bytes will increase payload size up to ~30% and burns CPU cycles on both client and server. This is unnecessary, as Websocket protocol can send binary payloads (doesn’t need to be text).

Consider removing lossy jpg compression as well, ie just send the raw RGB bytes over the network. Then on the server side you can simply call Image.frombuffer(…).

StreamDiffusion can achieve high frame rates because of extensive batching in the pipeline. You’re not benefiting from that here as the client is only sending one frame at a time and then waiting for a response. See this example for an idea of how to queue input frames and consume them in batches https://github.com/cumulo-autumn/StreamDiffusion/blob/main/e... .

Alternatively you could take a look at the SDXL Turbo and Lightning models. They are very fast at img2img but have limited resolution of 512² or 1024² pixels respectively. Which appears a bit lower than what you’re aiming for here, but they can be run locally in real time on a high end consumer grade GPU. For reference I have some code demonstrating this here https://github.com/GradientSurfer/Draw2Img/tree/main

yeah yeah yeah, do all these things, and afterwards, look at 2d interpolation methods that don't require AI for your inbetweens. There's some real fast kernel math that can lerp from one blob to another at 8 billion fps.
I think you’re getting downvoted because “yeah yeah yeah” is normally a sign that someone is sarcastically dismissing an idea, but the rest of your comment suggests you’re not at all - linerp is a great idea!
These are great ideas thank you!
It was a sincere triple yeah, born of excitement.
Makes sense, consider adding a `!` for clarity at the end next time ;)
Ok, but I wonder if it really needs to be real time like this? Wouldn't it make more sense to have some kind of button: somebody makes a pose, takes a picture, the picture is run through some kind of transformation and comes back as a painting that stays there until someone takes another picture? Wouldn't the illusion of art be better that way? (It would not be a "mirror" anymore though.)
I think it has to be either real time or a very low framerate, like once every 30 seconds. That way you have time to see each "painting"
IMO embrace low frame rate. Better energy use if its AI based on the first place (cheaper, environment... more cycles for fancier effecs) THEN pair that with e-ink display (also good energy use), I'd go for old school charcoal style but color e-ink is a thing. e-ink with some additional effects could resemble a physical paper moreso then a LCD/LED and so would be less obnoxious in the darkness of night... AND this also could be a low key security camera.
> It’s unfortunate that art selects so strongly for skill.

Jackson Pollock begs to differ.

Artistic skill lies not merely in the hand, but also in the eye.
> Artistic skill lies not merely in the hand, but also in the eye.

Precisely. There is no skill in artistry, it’s rather just a developed sense of style, that doesn’t come from a medium or method, it comes from growing to know oneself.

I agree. I think the distinction between arts and crafts is largely one of utility, rather than skill or technique.
> I agree. I think the distinction between arts and crafts is largely one of utility, rather than skill or technique.

Which is why I take offense to someone claiming that it selects for and requires skill. Especially because the ones making that argument are usually the ones arguing that they’re incapable of making art. I would tell them they just need to spend more time finding themselves.

> Which is why I take offense to someone claiming that it selects for and requires skill. Especially because the ones making that argument are usually the ones arguing that they’re incapable of making art. I would tell them they just need to spend more time finding themselves.

And spend more time (and intentional effort) in making art! It's like people want a shortcut to end result, when "real" artists know that the process of self-discovery is the reason and means through which they make the art in the first place.

The map is not the territory. The purpose of the journey is the journey itself; the destination is simply a guiding star. A whole lot of aspirational mapmakers think if they only had "this one weird trick," they'd be gods.

Um, no, I want illustrations for my stories. That’s the end, and the means can be whatever. I don’t care to search for self-discovery in that.
That’s a reasonable expectation and desirable outcome in and of itself. Not everything needs to be intended to be art for it to be perceived as such.

Art is in the eye of the beholder.

Do you share your stories publicly? I’m curious what kind of stories you would write.

It would be cool to have an HN writing group!

I do, but it’s obscure fanfiction. Admittedly with heavy computer science and AI inspirations, so maybe you’d find it interesting regardless?

It’s over here: https://forums.sufficientvelocity.com/threads/shards-of-a-br...

I read the prologue and it seems neat! I'm not familiar with the fanfiction scene really, or the works yours is based on. How did the voting work?

I like the pictures, and I can see how using AI would help a lot with that, especially in the context of existing characters, as matching styles and designs is something that AI is likely well-suited to do.

I read a bit about Shugo Chara to see what it's about, and it seems like an interesting series. The way you presented your story reminded me of Steins;Gate a bit with the reality manipulation.

Should I be familiar with the source material in order to appreciate your work better?

Thanks for sharing your work. Are you working on any other pieces?

Any anime recommendations, while you're here?

The voting is pretty much as shown. People vote on what the protagonist (usually Amu) tries to do, I decide what actually happens. It's a kind of communal roleplaying game; a quest, in SV parlance.

I've worked on other stories, but this is the only one right now. As to source material, knowing it would be beneficial, but it's all new to the protagonists and the only one I'd say is a must-have is Shugo Chara. Though not even that; several players did not know anything about Amu in advance. You'll be a little lost, but the wiki entry will suffice for giving you the basic idea. The story's set post-canon, with some divergences, so it starts off by trying to describe the current situation.

And anime... Magilumiere is great. Give it a try.

> Um, no, I want illustrations for my stories. That’s the end, and the means can be whatever. I don’t care to search for self-discovery in that.

Maybe writing a story is your art… Part of self-discovery is in finding out how you desire to express yourself. There’s a reason many books have a an author and an illustrator.

No question about that, but I always get slightly annoyed about people who insist artwork has to be internally fulfilling or whatever.

Great if that’s how it works for you, but for me it’s a means to an end.

Just watched "F for Fake" (Orson Welles, 1973), a documentary of sorts about the great art forger Elmyr de Hory who was able to imitate the style of many of his contemporaries to perfection (Modigliani, Matisse, etc.), fooling the painters themselves!

At one point in the movie his biographer says

> I think Elmyr's problem for years and the reason why he could not succeed as a painter in his own right was that the type of life he led prohibited him from having a personal vision.

Elmyr had great skill, greater than anyone alive perhaps, but he had nothing to say.

> Elmyr had great skill, greater than anyone alive perhaps, but he had nothing to say.

I would argue that he spoke volumes and had a vision so vast that he was able to take perspective from any other’s view. What a rich life Elmyr must have led.

FYI, the link to the frame used to mount the display just blocks you:

https://www.leroymerlin.fr/produits/decoration-eclairage/dec...

For those curious, it's a MILO 21 x 29.7 cm black frame. These links work for me:

https://www.leroymerlin.pt/produtos/decoracao-e-tapetes/mold...

Also, the screen he uses (HMTECH Raspberry Pi Screen 10.1) is pretty hard to find. Do people have other good recommendations for screens with similar quality and specs?

Any idea why this uses infrared light and an infrared camera?

> Any idea why this uses infrared light and an infrared camera?

I'd guess it's to make it work in the dark as well.

That's correct. Plus it also adds a layer of interaction that's pretty fun, kind of like a wand.
Every time I've looked into building something like this, when I price it out, just using an old Android tablet in kiosk mode and making it a web app ends up being much cheaper.
The screen is available on Amazon? But it's a touch screen, which seems overkill; any screen would probably work? One can always build a custom frame around it.
Touch screen I think is cool because then you could interact with the art.

I did a little research and these Waveshare displays look really beautiful. For a particular size display, they have models in different resolutions (from lower to higher res). But they're only for rpis and windows, not like mac or ipad. The QLED ones are the best.

https://www.waveshare.com/product/ai/displays/10.1hp-capqled...

Let’s hook it up to a sentiment and toxicity model, and then if you’re being too negative online, it will start to deform you into a monster, we could have a real Picture of Dorian Gray!
I chuckled, but that is actually an interesting ( and very doable ) fun project idea.
Really neat idea, I'd also love to have on my bookshelf.

> The main issue with the current setup is the low frame rate.

I'd call it a feature rather a limitation, it's not bad that I have second to process the image for a bit.

I would even increase the update frequency to 5 - 15 minutes and let it capture and generate a new image whenever it detects something changing / moving.

I think this would be cooler if the camera was somewhere different than the frame. Looking at an artistic mirror seems a little boring. Maybe make a 2nd one, and put it in someone else's house, and then feed the camera from one into the other. So you can look at the 'reflection' of someone else and have these little moments where you're both looking at the picture at the same time. Heck, make many so you never know who you're looking at. It'll be the Omegle of picture frames.
that's a good idea but something completely different than OP wanted to accomplish.

i remember that this has been done already as an art installation in public places so people could see - and interact - with others from around the world.

edit: like this here - https://www.inavateonthenet.net/news/article/vc-art-installa...

> an art installation in public places so people could see - and interact - with others from around the world

Sure, and it wasn't long before this happened:

> It took less than a week for people eager to share their ‘assets’ with the world to shut down the visual portals set up between the cities of Dublin and New York on 8 May. Although the project was aimed at bringing people together and connecting cultures, a few visitors to the locations have decided to take the invitation of getting to know others to a whole other level.

https://traveltomorrow.com/new-york-dublin-portals-shut-down...

(One wonders why flashing is such a big problem that the whole installation needs to be shut down; but it seemed quite obvious from the start that people would try to do this...)

We're getting quite good at nudie filters. Can we not just black out the goods or the whole screen if they're detected?
>But art is mostly about surfacing the inner world

Oh good lord.

What’s wrong with that? If art is expression shouldn’t everyone have the right to artistic expression? Even people who express themselves with nerdy projects and code and hardware instead of paint and canvas? What do you think art is?
This is very cool and I applaud you OP.
> But art is mostly about surfacing the inner world, and only in part about skill. It’s unfortunate that art selects so strongly for skill. Can we decorrelate the two?

I don’t think the poor lad knows what Art is.

Put another way, we have hundreds of years of recorded philosophical texts and diatribes on what constitutes Art, and what art-making is. Often written by serious practitioners who dedicate their life to it rather than internet-dwelling dabblers and dilettantes. We have people who are deemed artists, not necessarily painters but people who are wired a certain way and are industrious with their abilities. Math geniuses attend certain schools and the other pupils may pick up a thing or two from them, but that doesn’t mean the other pupils are geniuses also. So too, do artists walk among us and may do what we do and we may imitate what they do. But that doesn’t put us on equal footing whatsoever.

Art doesn’t select for skill. This is a red herring and a misunderstanding. Art doesn’t select for anything, because if it did it wouldn’t be Art. This is an old somewhat trite topic that, historically, boiled down to no more than a pithy phrase: “Art cannot be taught.” as expounded by many teachers of incredible talent in their own right who have attempted to distill it into teachable material and realized their talent is not transferable as easily as they had hoped.

Most of what you read on this subject is nonsense sold to you by grifters who want your money. Now and today more than ever. I’m all for, say, “Art and Fear” and “The Art Spirit” and even a bit of “War of Art” to name some household items on the subject. These are all great recent texts. But let’s take these for what they are: self-help literature, and nothing more. The further back in literature you go the less of this patting-on-the-back attitude you get, and more serious the subject matter is treated (example: read the lectures on Art by the presidents of the Royal Academy, they are numerous, Archive has them all. One president basically tells students to choose a different profession, discussed as an aside topic in a book on portraiture from that time.)

Elsewhere in the comments people saying how art is simply good taste seem to be oblivious to the creations of artists that led them to make such a blundering conclusion. Your taste wouldn’t exist had an artist not created a thing to begin with.

We’ve used image generators for decades now. It gets the job done. The person using it may be an artist or just someone who wants a dynamic, changing generated image on the wall.

<< Archive has them all.

Thank you. I added those to my reading list. I don't think I ever delved into the topic.

<< Often written by serious practitioners who dedicate their life to it rather than internet-dwelling dabblers and dilettantes.

And yet, here we have someone not burdened by the serious business of art and gives his personal perspective on it. I am not saying a lot of everything is not mostly crap, because it mostly is, but I found this child-like honesty oddly endearing.

<< Art doesn’t select for skill.

Artist without a skill is just a dreamer, who can't put his vision into place. Barrier of entry has been lowered now, but I am relatively certain that was not always the case.