This looks like its just a quick front-end to the ControlNet scribble model (perhaps with a customized underlying model instead of base Stable Diffusion), with canned settings, presumable a canned negative prompt, and maybe some common stuff added beyond the user input to the positive prompt. Which is not to be dismissive, its a very nice demo of what SD+ControlNet scribble can do.
But for people who like it, the ControlNet scribble model (and the other ControlNet models, depth-map based, pose control, edge detection, etc.) [0] are supported in the ControlNet extension [1] to the A1111 Stable Diffusion Web UI [2], and probably similar extensions for other popular stable diffusion UIs. Should work in any current browser, and at least the A1111 UI, with ControlNet models, works on machines with as little as 4GB VRAM.
[1] https://github.com/Mikubill/sd-webui-controlnet (EDIT: even if you aren’t using the A1111 WebUI, this repo has a nice set of examples of what each of the ControlNet models does, so it may be worth checking out.)
I recently added support for it on ArtBot[1] and it supports additional options like models, steps, control type, etc, as well drawing on a canvas[2] and generating input from that. It’s pretty wild!
Free and open source [3].
Bonus: it works on Firefox (unless you’re using private mode — because Firefox doesn’t make IndexedDb available to web apps in private mode and things end up breaking)
You probably don't need canned positive prompt. ControlNet has a "guess mode" and in reality, basically just send the control to positive part with empty prompt while not sending control to negative part with empty prompt.
Edit: nvm, this particular demo does require you to type in positive prompt.
Thanks for your kind words and feedback. I love seeing all these links to your scribbles.
I'm an engineer at Replicate, which is a place to run ML models in the cloud. [0] We built Scribble Diffusion as an open-source app [1] to demonstrate how to use Replicate.
This is all built on ControlNet [2], a brilliant technique by Lvmin Zhang and Maneesh Agrawala [3] for conditioning diffusion models on additional sources, in this case human scribbles. It also allows for controlling Stable Diffusion using other inputs like pose estimation, edge detection, and depth maps.
ControlNet has only existed for three weeks, but people are already doing all kinds of cool stuff with it, like an app [4] that lets you pose a stick figure and generate DreamBooth images that match the pose. There are already a bunch of models [5] on Replicate that build on it.
I see a few bits of feedback here about issues with the Scribble Diffusion UI, and I'm tracking them on the GitHub repo. If you want to help out, please feel free to open an issue or pull request.
What a simple, but excellent concept! I kind of expected it to crash after being posted to HN, but surprisingly it is still going strong.
What does it cost to host something like that? What does it cost to generate each scribble image?
If you haven’t played with Stable Diffusion based stuff before, note that as well as telling it what (in terms of subject) you want in the prompt, you can also tell it style things. Compare:
Sorry about the trouble. The Firefox incompatibility is the result of a bug in the underlying npm package we're using to render the drawing tool and canvas.
Will be nice to be able to upload a picture/sketch instead of having to sketch something out in the scratchpad. I tend to sketch block diagrams from time to time and hate having to use some tool to draw/drag/align things.
Very cool idea though!
If you already have your own images, you can use the Replicate model directly: https://replicate.com/jagilley/controlnet-scribble -- you can upload your image using the Replicate web UI or do it programmatically using the model's HTTP API.
Uploading my own images was one of the reasons I created my own version of this. It works great with kids pictures! This is so fun to see my kids smile on their face every time they see the AI version of their drawings!
This is cool. At first I was skeptical that the sketch had nothing to do with anything and it was just feeding the prompt into an AI. But using the example "sun behind mountains"[0] it seemed to work alright. What really blew my mind was when I paired the sketch with a prompt that made no sense at all[1]. Somehow the AI cobbled together a picture that used the prompt, but also has all the same geometry of the sketch.
I use that prompt because it's something my preschooler draws on a daily basis with no qualms at all, but can often be hard for generative AI to imagine.
So it's getting close to the imaginative abilities of a 3 year old! Halfway there.
I firefox there's something wonky going on with the scribble area; the bottom of the image doesn't seem to show up until after you've drawn a lot more in the top of the image.
[+] [-] dragonwriter|3 years ago|reply
But for people who like it, the ControlNet scribble model (and the other ControlNet models, depth-map based, pose control, edge detection, etc.) [0] are supported in the ControlNet extension [1] to the A1111 Stable Diffusion Web UI [2], and probably similar extensions for other popular stable diffusion UIs. Should work in any current browser, and at least the A1111 UI, with ControlNet models, works on machines with as little as 4GB VRAM.
[0] home repo: https://huggingface.co/lllyasviel/ControlNet but for WebUI you probably want the ones linked from the readme of the WebUI ControlNet extensions [1]
[1] https://github.com/Mikubill/sd-webui-controlnet (EDIT: even if you aren’t using the A1111 WebUI, this repo has a nice set of examples of what each of the ControlNet models does, so it may be worth checking out.)
[2] https://github.com/AUTOMATIC1111/stable-diffusion-webui
[+] [-] davely|3 years ago|reply
Free and open source [3].
Bonus: it works on Firefox (unless you’re using private mode — because Firefox doesn’t make IndexedDb available to web apps in private mode and things end up breaking)
[1] https://tinybots.net/artbot/controlnet
[2] https://tinybots.net/artbot/draw
[3] https://github.com/daveschumaker/artbot-for-stable-diffusion
[+] [-] liuliu|3 years ago|reply
Edit: nvm, this particular demo does require you to type in positive prompt.
[+] [-] zsikelianos|3 years ago|reply
Thanks for your kind words and feedback. I love seeing all these links to your scribbles.
I'm an engineer at Replicate, which is a place to run ML models in the cloud. [0] We built Scribble Diffusion as an open-source app [1] to demonstrate how to use Replicate.
This is all built on ControlNet [2], a brilliant technique by Lvmin Zhang and Maneesh Agrawala [3] for conditioning diffusion models on additional sources, in this case human scribbles. It also allows for controlling Stable Diffusion using other inputs like pose estimation, edge detection, and depth maps.
ControlNet has only existed for three weeks, but people are already doing all kinds of cool stuff with it, like an app [4] that lets you pose a stick figure and generate DreamBooth images that match the pose. There are already a bunch of models [5] on Replicate that build on it.
I see a few bits of feedback here about issues with the Scribble Diffusion UI, and I'm tracking them on the GitHub repo. If you want to help out, please feel free to open an issue or pull request.
[0] https://replicate.com
[1] https://github.com/replicate/scribble-diffusion
[2] https://github.com/lllyasviel/ControlNet
[3] https://arxiv.org/abs/2302.05543
[4] https://twitter.com/dannypostmaa/status/1630442372206133248
[5] https://replicate.com/explore?query=controlnet
[+] [-] ncr100|3 years ago|reply
[+] [-] trees101|3 years ago|reply
[+] [-] shever73|3 years ago|reply
[+] [-] dragonwriter|3 years ago|reply
“a goofy owl”: https://scribblediffusion.com/scribbles/oymg4kadgvezxppvwkf5...
“a goofy owl, realistic photograph, depth of field, 4k, HDR”: https://scribblediffusion.com/scribbles/va5l24amjnb55g62renz...
“a goody owl, pointillism”: https://scribblediffusion.com/scribbles/5dfnru4f6zguphjvvdrl...
[+] [-] sinistersnare|3 years ago|reply
It seems this does not work on Firefox? I could only draw on about half the canvas and it was pretty buggy. Dont support the chrome monoculture!
[+] [-] zsikelianos|3 years ago|reply
Sorry about the trouble. The Firefox incompatibility is the result of a bug in the underlying npm package we're using to render the drawing tool and canvas.
The issue is being tracked here: https://github.com/replicate/scribble-diffusion/issues/17#is...
We may need to wait for a fix to that, or consider swapping out the package we use for scribbling on a canvas.
[+] [-] pjgalbraith|3 years ago|reply
[+] [-] aidenn0|3 years ago|reply
https://github.com/vinothpandian/react-sketch-canvas/pull/11...
[+] [-] citizenkeen|3 years ago|reply
[+] [-] unknown|3 years ago|reply
[deleted]
[+] [-] dylan604|3 years ago|reply
[+] [-] gowld|3 years ago|reply
[+] [-] mbb70|3 years ago|reply
"hummingbird drinking from tulip" disaster https://scribblediffusion.com/scribbles/n2ekqcs7vnegdcezcdvg...
"hummingbird on left drinking from tulip on right" perfect https://scribblediffusion.com/scribbles/ri5y2kzanzcs7dvxhlgy...
[+] [-] fekunde|3 years ago|reply
[1] “treasure map in the style of lord of the rings maps” https://scribblediffusion.com/scribbles/t36as45npjapxfekcuuy...
[+] [-] 1minusp|3 years ago|reply
[+] [-] zsikelianos|3 years ago|reply
If you already have your own images, you can use the Replicate model directly: https://replicate.com/jagilley/controlnet-scribble -- you can upload your image using the Replicate web UI or do it programmatically using the model's HTTP API.
[+] [-] slhomme|3 years ago|reply
Uploaded photos Examples: https://imgur.com/a/jeWgRvH Website: https://crappydrawings.ai
[+] [-] amflare|3 years ago|reply
[0]: https://scribblediffusion.com/scribbles/elun6gwkxrcr7eqy5jao... [1]: https://scribblediffusion.com/scribbles/tpsty6qcxjfrxbxz3n6b...
[+] [-] bitwize|3 years ago|reply
[+] [-] anigbrowl|3 years ago|reply
[+] [-] Exuma|3 years ago|reply
[+] [-] jfan001|3 years ago|reply
[+] [-] TedDoesntTalk|3 years ago|reply
[+] [-] janosdebugs|3 years ago|reply
[+] [-] pamelafox|3 years ago|reply
https://imgur.com/hVfCIwU
I use that prompt because it's something my preschooler draws on a daily basis with no qualms at all, but can often be hard for generative AI to imagine. So it's getting close to the imaginative abilities of a 3 year old! Halfway there.
[+] [-] pjgalbraith|3 years ago|reply
[+] [-] latexr|3 years ago|reply
https://i.imgur.com/08o9zkG.jpg
https://i.imgur.com/KkBtTyd.jpg
Eventually I did get something which looked like a partial success, but with low resolution and not something I’d consider appealing:
https://i.imgur.com/SJWkwBp.jpg
https://i.imgur.com/BpSUD4j.jpg
This is not a dig on the author. I have yet to see a simple prompt give a good result with Stable Diffusion. Are there examples of it?
[+] [-] Lewton|3 years ago|reply
are you generally an unlucky person? :D
[+] [-] nilslindemann|3 years ago|reply
[+] [-] jihadjihad|3 years ago|reply
[+] [-] bitwize|3 years ago|reply
Well, it guessed which character I drew...
https://scribblediffusion.com/scribbles/vaoxhqknfrdxpb2osym2...
Not bad. Even came close with the headband. But it figured her ear was an AirPod. (Maybe a small persocom earpod? Is this the AI's waifu-sona?)
[+] [-] aidenn0|3 years ago|reply
[+] [-] zsikelianos|3 years ago|reply
[+] [-] jszymborski|3 years ago|reply
Naturally does better with what I imagine are in-distribution[0] doodles/words than out-of-distribution[1], but still very cool (and fun!).
[0] https://scribblediffusion.com/scribbles/h373dd42xbduzerzhlos...
[1] https://scribblediffusion.com/scribbles/23xdfz5mtffwfgib32t7...
[+] [-] ajjenkins|3 years ago|reply