Painting with Gaussians
Posted by yogthos 1 day ago
Comments
Comment by mkaic 1 day ago
Comment by vanderZwan 1 day ago
It's like… the way a trained human would paint feels kind of like how MSB radix sort makes an array look more ordered, going from crude to refined. The way your algorithm builds up an i|age feels like I'm looking at a radix sort that alternates between a stable MSB and LSB radix sort, which is weird as heck. It's fascinating, really.
Comment by andai 1 day ago
Comment by yogthos 1 day ago
Comment by vanderZwan 1 day ago
So interestingly, one distinguishing difference between oil paintings and acrylic paintings is that the former has more translucency, whereas the latter can be more easily layered on in a way that covers up the lower layers. This is what, according to one of my mentors in art school who was a painter, allows oil paintings to copy the feeling of real skin so well: it allows a painter who mastered the medium to create a similar subsurface scattering effect. That's also another reason why paintings in real life can look so different than images on a screen, aside from the much greater gamut than even the best color screens we have and the actual surface texture of the paint strokes. The downside is that any mistakes made on deeper layers will come through in higher layers. Especially if you paint using the techniques used by the old masters.
Anyway, this suggests your gaussian splats essentially are closer to "oil painting"-like. Makes me wonder if you could also encode this subsurface scattering and texture somehow, so that viewing the splats in 3D would recreate some of that missing effect of looking at a real painting!
Also, on the other end of the spectrum: do you think the algorithm could be modified to create SVG output? Then it might be useful as an artistic "upscaling" filter too.
(Also, speaking as someone with protanomaly, I'm guessing the links have some kind of turquise or light teal color to them, but it is effectively bright gray to me. And since they have almost the same brightness perception as the white text I genuinely cannot tell where the links are (except when the text calls them out). Since this is likely to affect anywhere between 5% to 10% of all men visiting your blog that might be worth changing.)
Comment by yogthos 13 hours ago
And I haven't thought about making SVGs, but that's a really clever idea. I'm gonna add an issue to try this out.
Oh, and thanks for the heads up regarding readbility. I'll update the theme to account for that.
Comment by teodosin 23 hours ago
How long is the frame time on the GPU implementation? Is there any hope for something like this to run at 60fps as a post process for a game? Can the data from a 3D scene be used to skip some of the initial analysis steps?
Comment by andai 1 day ago
Comment by swiftcoder 1 day ago
Comment by yogthos 1 day ago
Comment by swiftcoder 21 hours ago
Comment by MeteorMarc 1 day ago
Comment by jszymborski 1 day ago
> In the days of generative image models, it's still fun to see what can be achieved using traditional image transformation techniques.
> But the really fun part of the project was in combining a number of techniques, such as Perlin noise, wavelets, and edge detection, that I played around with previously in isolation. All these different tricks came together for this project, making it possible to build something greater than the sum of its parts. I find these are the most rewarding types of experiments where you can build on things you've previously learned and combine them in novel ways to make something new and unexpected. I hope you enjoyed the journey as much as I did working on the project.
Comment by yogthos 1 day ago
Comment by shen 1 day ago
Comment by yogthos 1 day ago
Comment by jszymborski 1 day ago
Comment by yogthos 1 day ago