I've had the best results with pictures of houses, although certain photos of people or nature can look neat, too. (For example: https://brushify.art/s/ruYmQWk, original photo from https://en.wikipedia.org/wiki/Pillars_of_Creation.) The effect obscures the edges of the photo, so images with plenty of margin around the subject work best.
Something I'd like to play around with is swapping the GIMP script for an AI-based process (maybe using something like Stable Diffusion?), with the goal of generating images that look more handmade (something like these: https://www.etsy.com/ca/search?q=watercolor+house). I have exactly zero AI experience though, so there would be a bit of a learning curve.
Would love any thoughts or critiques!
----
edit: remove unrelated details
[1] - Tyler Hobbs (2017) - a guide to simulating watercolor paint with generative art - https://tylerxhobbs.com/essays/2017/a-generative-approach-to...
[2] - Curtis|Anderson|Seims|Fleischery|Salesin (undated) - Computer-Generated Watercolor - https://grail.cs.washington.edu/projects/watercolor/paper_sm...
It is loosely based on the process described here: https://yunfei.work/watercolor/watercolor_pp.pdf and I though this can't be too hard...
I found it challenging to combine high resolution results with reasonable processing times.
Otherwise the process is the following:
I enter the page -> Upload image -> See 4h of queue for getting my result -> I close the tab, leaving there a pending task.
Here's how I would approach it: train a dreambooth model on watercolor style images, then run image-to-image using that model.
For examples of what dreambooth models can do see: https://synapticpaint.com/dreambooth/info/ (sample images here generated using a "modern disney" style model).
If you need help getting this set up feel free to email me! This stuff is probably not harder than getting gimp to run in a container.
I see this technology as more analogous to hand writing books -> printing. I predict that more people, not less, will be involved in creative industries related to visual arts (design, film, illustration, animation, etc.) as a result of this technology becoming more accessible.
Art will take a hit to be sure, and the brunt of it will be taken by artists with actual skills.
Congrats for the unexpected success :)
Any chance of porting this to the web using WASM? I've used ImageMagick in the browser before, I've never used Gimp, but if there's enough overlap you could use the former. That's of course assuming two things:
1) you have the time
2) you're happy to port the closed source, source code to the client
Both of which are perfectly fine to answer with a "no" :)
Also, I think it would be prudent to terminate the request if the client instance is destroyed. Right now I assume there's a bunch of requests being processed for users who have closed the tab.
You can implement with something like this and simply train it against a watercolor image: https://github.com/yusuketomoto/chainer-fast-neuralstyle
Haven’t tried it with stable diffusion but you’d probably have more control and better results with a CNN like the one I linked.
What you want to gain is experience with prompt engineering for these tools.
Here's a good resource https://openart.ai/promptbook
Dall-e offers an API with some limitations (max 4MB square PNG, content filtering): https://beta.openai.com/docs/guides/images/usage
Photopea.com has a watercolor filter, in JS, all client side. It's not very good ATM so there's certainly room for improvement. Doing it all client side would solve the queue problem.
Have fun!
Like you said I bet using Stable Diffusion would speed this up dramatically but who knows if you'll get the same effect on your images.
Seeing example output would be interesting, even if service is hugged to death.
PS: Congrats on the little one. :D
It's a busy day! There are currently 512 people in front of you. Please keep this tab open!
Estimated wait time: 7 hours, 7 minutes
> It's a busy day! There are currently 1073 people in front of you. Please keep this tab open!
> Estimated wait time: 14 hours, 54 minutes
Oops, sorry OP for all the traffic :D
Plus we have to be real and say, is the only reason the queue so long, because you let a bunch of nerds on HN add to the queue for free? I'm guessing the answer is, "probably." No need to engineer a fix for a problem that will typically not exist.
> There are currently 1069 people in front of you. Please keep this tab open!
> Estimated wait time: 14 hours, 51 minutes
Bruh moment.
I suppose it would make more sense to WASM the implementation and run it clientside?
The hug is getting tighter ;-)
Please discuss the project if it's interesting to you, otherwise move on. There is a human who posted the project. Maybe they were nervous to post because of the feedback they get. Maybe they wish it ran faster (as they noted on its slowness), and provided some context by stating they couldn't devote 100% focus to this project because they were caring for a new born baby.