comfyanonymous / ComfyUI

The most powerful and modular diffusion model GUI, api and backend with a graph/nodes interface.
https://www.comfy.org/
GNU General Public License v3.0
51.09k stars 5.37k forks source link

[Feature request] A request for more nodes. #62

Open GrimblyGorn opened 1 year ago

GrimblyGorn commented 1 year ago

I've managed to make a few basic nodes directly in the nodes.py file for a few constant values (int, string, float). But I've had no luck with more complicated conversions of other scripts into nodes so far. Namely, I'd very much like the following to be implemented as nodes.

This outpainting script (https://github.com/AUTOMATIC1111/stable-diffusion-webui/blob/master/scripts/outpainting_mk_2.py) This Latent Mirroring extension (https://github.com/dfaker/SD-latent-mirroring) This dynamic CFG extension (https://github.com/mcmonkeyprojects/sd-dynamic-thresholding) This tiling extension (https://github.com/tjm35/asymmetric-tiling-sd-webui/) This symmetry script (https://gist.github.com/1ort/2fe6214cf1abe4c07087aac8d91d0d8a)

Likely in that order of concern as well. Also, any other outpaint scripts would be very handy as optional nodes most likely. There are a few others around I could link later if needed.

In general, a means of consuming the big pile of scripts and extensions available to this (https://github.com/AUTOMATIC1111/stable-diffusion-webui) could be extremely useful. That would quickly extend this node system into something much more useful all in one go. Not really sure how viable that is given the difficulties I've had thus far simply trying for making that outpaint script into a node. But, I've been attempting to do it in the most lazy copy/paste chatgpt fashion ever too, so maybe that doesn't help.

Likely with some thought and effort it wouldn't be too hard to make at least some of these into nodes. I think all the things I listed could each help extend this node system into something even more useful than it already is. I will likely mess with it more but I'm not sure how much, or how fiercely. If someone else felt like actually trying, that would likely be more useful than whatever my tinkering might lead to on this.

svupper commented 1 year ago

Hello, I'm very interested in being able to use all the available scripts from AUTOMATIC1111, is there a simple way to use them without creating a specific node for them? like you keep the original way it is used in AUTOMATIC1111 and just have a kind of generic node that applies it

comfyanonymous commented 1 year ago

The codebase between ComfyUI and a1111 is completely different so it would be extremely difficult to support loading a1111 extensions/scripts directly.

This Latent Mirroring extension

This can already be done with KSamplerAdvanced and LatentMirror

spro commented 1 year ago

This can already be done with KSamplerAdvanced and LatentMirror

Is LatentMirror available anywhere? Github search turns up nothing but this thread.

Edit: Found it - "LatentFlip" is what it's called. So symmetry can be done with a crop, flip, and composite: Screenshot 2023-08-24 at 4 24 44 PM

bluelocate commented 1 year ago

Any update for outpainting?

robinjhuang commented 2 months ago

@bluelocate https://blenderneko.github.io/ComfyUI-docs/Core%20Nodes/Image/PadImageForOutpainting/ You can accomplish outpainting with this node.

Here's a youtube tutorial

robinjhuang commented 2 months ago

I believe https://github.com/mcmonkeyprojects/sd-dynamic-thresholding supports ComfyUI now.

robinjhuang commented 2 months ago

For tiling have you tried, https://github.com/spinagon/ComfyUI-seamless-tiling?