Update:
Added DynamoXL-txt2img
This version requires custom nodes, article here to get started
ProjectName: Filename Prefix, Stage Prefix and Blip Caption as Filename
Random Line: Accepts multiline wildcard style batch prompt
Prompt Swap: can replace captions word for word in prompt
Prompt Styler: massive collection of Prompt Wrappers
Quad Lora Stack: 4 Lora Loaders for you to use
REMBG: removes background automatically if it can
Upscaler 4X: recommended Foolhardy_Remacri
Ultrabasic Txt2Img SDXL 1.0
This version also requires no custom nodes, but has a new Lora stack bypass layout for easy enable/disable of as many lora models as you can load. If you need facedetailer, just use SDXL1.0-SuperUpscale version instead.
UltraBasic Img2Img SDXL 1.0
This version required no custom nodes, i noticed a lot of people had problem with custom node conflicts and the face detailer, so i dropped all that stuff to keep it vanilla.
You can load and image and use denoise like you would normally to create variations of the image, also there is the super upscaler as before.
You can select nodes and press ctrl+m to "mute/unmute" them. So if you mute all the nodes in the upscaler section, it can be turned on and off like that.
I'm working on an ultra Basic txt2img next so that people can still use this if they can't get the custom nodes to work :)
SDXL1.0-SuperUpscale
This is my current SDXL 1.0 Workflow.
It is based on the SDXL 0.9 facedetailer workflow by FitCorder, but rearranged and spaced out more, with some additions such as Lora Loaders, VAE loader, 1:1 previews, Super upscale with Remacri to over 10,000x6000 in just 20 seconds with Torch2 & SDP.
There is an Article here explaining how to install SDXL1.0-Super-Upscale
if you have all the custom nodes already installed, you can use it straight away
Description
FAQ
Comments (25)
Nice workflow, thanks! One issue seems to be the 'Convert Masks to Images' is broken (attached to the FaceDetailer). Any ideas for a fix on that? Much appreciated!
I'm having the same issue.
Failed to validate prompt for output 200:
* Convert Masks to Images 199:
- Return type mismatch between linked nodes: masks, IMAGE != MASK
Output will be ignored
i pulled comfy today and use this workflow myself, so are you sure that all the custom nodes are installed?
@driftjohnson At this point i've carefully gone over all the steps several times. No luck, Tried using the comfyUI nightly repo as well as installing impact via manager. Same error: IMAGE != MASK. Looks like someone else just posted a screenshot of the broken node as well.
@Zenfyre someone managed to fix this by removing other custom nodes they already had. Give that a try, i was told some custom nodes conflict with each other.
Just a quick update - someone else was able to fix the 'Convert Masks to Images' by simply swapping that node w/ another of the same type (found in 'add node' > 'mask'). This didn't work for me. What did though, was swapping the FaceDetailer (pipe) node for another FaceDetailer (pipe) (found in 'add node' > 'ImpactPack' > 'Simple').
@Zenfyre the pipe version will iterate through many faces and fix them all, so that is what the pipe version does, however because a lot of people have had trouble with the JSON (because advanced nodes seem to fail for people) I'll put together a simpler version of this next :D I'll drop the face detailer and let people add it back later if they like
After the first generation I get the following error for any future generations:
Error occurred when executing PreviewImage: Cannot handle this data type: (1, 1, 2304), |u1 File "/workspace/ComfyUI/execution.py", line 144, in recursive_execute output_data, output_ui = get_output_data(obj, input_data_all) File "/workspace/ComfyUI/execution.py", line 74, in get_output_data return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True) File "/workspace/ComfyUI/execution.py", line 67, in map_node_over_list results.append(getattr(obj, func)(**slice_dict(input_data_all, i))) File "/workspace/ComfyUI/nodes.py", line 1216, in save_images img = Image.fromarray(np.clip(i, 0, 255).astype(np.uint8)) File "/workspace/venv/lib/python3.10/site-packages/PIL/Image.py", line 3092, in fromarray raise TypeError(msg) from e
did you install all the custom nodes? link to article in description.
@driftjohnson Yes, I have all of the custom nodes installed. I have to restart ComfyUI for each generation in order to avoid the error.
@theunlikely some people managed to correct by removing other custom nodes, i think some cause conflicts.
Can you point out the 'Vae Loader' that you mention in the workflow?
it's next to the checkpoint loader
"MMDetDetectorProvider" doesn't work/gets an error AND Convert Masks to Images doesn't work either.
Otherwise, fantastic.
Upon the initial execution, an impact-pack.ini file will be generated in the custom_nodes/ComfyUI-Impact-Pack directory.
[default] dependency_version = 2
mmdet_skip = True
Change mmdet_skip = True to mmdet_skip = False
[default] dependency_version = 2
mmdet_skip = False
taken from GitHub - ltdrdata/ComfyUI-Impact-Pack
I believe the convert masks to images issue is a false positive, but who knows really.
@Belth Okay, thanks.
@Belth Well, now that that is fixed, there are still the other issues XD.
@virtualfix6885 Post the issues
@Belth SyntaxError: Unexpected non-whitespace character after JSON at position 4
@pxlpshr. I am getting the same error: SyntaxError: Unexpected non-whitespace character after JSON at position 4
@pxlpshr @brnorman I have no idea :D
I recommend to use UltralyticsDetectorProvider instead of MMDetDetectorProvider.
What's the best way to get accurately detailed faces using this? Faces end up looking ugly and blurry
In my first version i used an extension that automatically detects faces with Yolo, draws a box around the face and inpaints for all faces it can recognise. Works really well. Unfortunately its no longer in my workflows, i removed it because people had problems with that part.
https://github.com/ltdrdata/ComfyUI-Impact-Pack
contains the FaceDetailer custom nodes.
Faces depend on the Models Memory, but we can use a fixer like this.

