Posted by cataPhil 3 days ago
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
Not to sound like a luddite, but I do question the idea that the skill gap is merely an inconvenience. I suspect learning how to paint or make music changes something in yourself which teaches you some deeper life lessons.
I've heard the phrase (paraphrased): No great work of art was made by a genius, genius comes to you unexpectedly like a gust of wind. It seems that cultivating these opportunities is the most an artist can do, and removing the skill gap seems to be removing the cultivation, the thing that changes you, the essence.
There seems to be a few of these inherent deep workings that we as a people keep coming back to, without knowing what they are or how to discuss them (personally at least!). Not to rain on your parade OP, the project looks fun and super useful to a lot people! Just something I ponder on at times.
Does the totality of the project have that property? That would be less clear, but IMO, no. I see it as technically driven, not psychologically driven, although I can see how you could write an artist's statement that claims it was (it's about mirrors, after all, which are hugely symbolic).
To be clear I still like it, and if I'd done it I'd be proud of it. But it's more artifice than art.
(If I was him, I'd slow the frame rate down, not speed it up - work with the technical limitation, not against it. Have the system only display "good" images, and not update the display until another "good" image is generated. The code that decides if an image is "good" or not would be the most interesting part of the system, and could fairly be said to embody the artist's intent, and so cross (my own personal) threshold into capital-A Art.
I'd also experiment with buffering the image stream à la _Light of Other Days_ by Bob Shaw.
Oh, and as Halloween is nearly with us, the temptation to occasionally inpaint a figure standing behind the viewer would be massive.
Idle thought: to get some stability in the image, would it be possible to have an LLM generate random video filter code, instead of random images? "Write me a video filter that makes the input video look cubist". "...like an oil painting" "...with a Flash aesthetic". etc etc. Every time a filter gets generated that doesn't actively crash, swap to it. No idea if that's feasible or not.)
I enthusiastically support this notion. A simpler, than painting, example would be writing. Sure everyone has a story to tell, and everyone can write, but to make it worth other people's time would take you days if not years of perfecting the craft, as you inevitably learn things about yourself and crystallize your perspectives on this world.
Sometimes it's good to have someone with fresh eyes looking and something and not be shaped by decades of prior history.
I love this because I seem to encounter situations like that every day. Who came up with this saying?
Recent example: This guy asked a very simple question about something that's commonly done in industry (wiring two power supplies in parallel and balancing the current between them): https://www.reddit.com/r/AskElectronics/comments/1g84zd7/usi...
Literally 95% of the replies in that thread are irrelevant bullshit from "experts" that have no idea how redundant server PSUs work. I replied to some under the same username. Meanwhile another guy successfully wired two 100W USB-C ports in parallel to power an entire PC. He had no idea that the resistance of his crappy wires kept the two smps control loops stable and divided the current evenly between the two ports ensuring that neither one trips OCP: https://www.reddit.com/r/UsbCHardware/comments/1g8pser/let_m...
I wouldn't feel comfortable with this guy's usb-c setup but probably not for 'it's all going to burn down' reasons, more like 'the connection will get loose somewhere and I'll lose my work'.
I was not aware of that specific formulation but there's a maxim by Mark Twain that says "They did not know it was impossible so they did it".
Redundant switching power supplies are purpose built to be redundant. They usually have a current share circuit (to balance the load) and output diodes (to stop one supply from feeding the other one). Without that one supply will "over power" the other, fill it's output caps, and then the feedback of that supply will go "Hey the output caps are charged so why do I need to do anything!?". You end up with an erosion of power balance.
You are riding a pretty high horse, but the commenters in that thread are not wrong and if you think cheap 5V USB chargers are anything like redundant server PSU's. I don't think putting random USB chargers in parallel will cause a fire or anything, but it's just needlessly bad engineering that will be anything but robust.
A programming analogy to help people here: You can write a program that is tens of thousands of lines of if statements. It might probably work maybe for some inputs? But damn if it not bad engineering. No one would ride around on the high horse of "See the program worked! The "experts" were wrong!".
Idealism is not a victimless crime, millions suffer every day because some artist threw a buggy,idealized world model over the fence and the idiocy stuck hypnotizing millions into permanently damaging themselves.
Music itself is a language, something undefinable comes from that language that we can't modulate the same way through speech.
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?
I'd guess it's to make it work in the dark as well.
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...
I always thought that art is all about emotions, both preserving and creating them. That’s why I find a banana on the wall art, popular music is still art.
(Might be school influence but I also tend to ask myself „why”)
This invention is definitely work of art, but its output - in my eyes - not. It’s like a cloud. It can make different shapes, and some are funny, some might remind me of my close ones, but it’s still averaged randomness.
However the idea to reflect reality to this digital randomness I find without doubt - art. And, well: while not visual or audible, there is software, hardware, code and design which are also art (and difficult to make so counterpoint to thesis in first paragraph ;)).
But this leaves the role of intention ambiguous. If I double-park a BMW across two handicap spaces because I'm angry and entitled, is that art? It certainly evokes emotion, and it's also produced by emotion.
I would dissect it though since it’s not pure anger - frustration maybe, a complex one and caused by additional input. E.g. anxiety (you took what could be mine) or internal discord (after observing act of injustice).
I’d argue that it’s an act of random (again, like a cloud) and wouldn’t treat it as art.
But, if you’d park it sideways in front of the mall entrance, blocking it considerably, I’d consider it art (in my imagination I can see the headlines about artist making a statement against the overconsumption).
Yet art is art, so everyone has their own definition. I’d prefer “positive” emotions, so awe, nostalgia, etc., but I don’t see reason why anger should be excluded.
<<proceeds to print “THIS IS AN ART INSTALLATION” message to put behind the windshield>>
But the best part about art is that other people don't have to consider what you do as art.
I would find it hard to believe you are presenting it as art though, as you'll want your BMW back after you've bought whatever crap at the store.
I don't have to believe your AI generated slop is art because it doesn't actually convey any emotion.
This generation of the picture itself is art, similar to other "experience" art pieces. Its referred to as immersive art.
>But the best part about art is that other people don't have to consider what you do as art.
I often think of art in a way that is remarkably consistent with these statements.
My view was "Art is an invitation to consider" Sticking a banana to a wall becomes art when you do it to make people to engage or think about it.
Engagement is not compulsory, but I think the invitation might be. Sticking a banana to a wall to keep it away from ants is simple utility, not intended to be artistic expression.
>I don't have to believe your AI generated slop is art because it doesn't actually convey any emotion.
You don't have to engage, but choosing to denigrate is actively hostile engagement. There are plenty of people using AI for expression of ideas. There are also people doing a bunch of dumb things. Lowbrow art is still art in it's own way. Much of it may have very little to say, but I don't think there are very many people who have pretensions that low effort images are much more than a kind of doodling.
Apologies, that was not my intent, more to make people think because some people seemed to be confused about what is the art here.
Sticking a webcam through a filter to produce a pretty output isn't necessarily original, but that doesn't stop it being interactive art. Some folks here seem to think the image is art, whereas I see the whole as the art. A single static image that had been captured and run through the filter then presented doesn't really have very much to say. The installation can be interpreted in many ways and grows to be more than the sum of its parts.
Is it generating images?
Could it be co-adopted by people with vision or interpretation issues such as prosopagnosia?
Low effort/low brow art is still art.
Clicking on "create me an image" and having Bing generate a picture doesn't give the world anything as it enters zero effort, which ultimately reduces the creators investment, and therefore the viewers investment, into the piece.
Sticking a webcam shot through an AI filter is a pretty low bar. What makes it art that anyone other than the creator would care about is the real-time rendering. Thats the art that people are interested in discussing.
People do all sorts of walks as art. Whether thats Drag or a parade where the art is to make the walk interesting, or walking through the desert, laying on a bed of nails where the "walk" (or laying down) isn't necessarily interesting but the passion is.
Pressing the Bing button is unlikely to evoke any passion except from Bing product management.
crypto-art is art too
a car can be art
ceci n'est pas une pipe
A banana on the wall is not art, because it involves an everyday object in an everyday setting.
You might feel it's art, but if that's the case, then you haven't exposed yourself to true art enough to have a pool of experience or only seen so far superficial examples.
Is that not what was meant by "surfacing the inner world?"
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...
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...)
> 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 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)
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.
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.
I think lowering the framerate to something between 0.3 to 1 fps might even be better!