Skip to content

huchenlei/ComfyUI-IC-Light-Native

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ComfyUI-IC-Light-Native

ComfyUI native implementation of IC-Light.

Install

Download the repository and unpack into the custom_nodes folder in the ComfyUI installation directory.

Or clone via GIT, starting from ComfyUI installation directory:

cd custom_nodes
git clone git@github.com:huchenlei/ComfyUI-IC-Light-Native.git

Download models

IC-Light main repo is based on diffusers. In order to load it with UnetLoader in ComfyUI, state_dict keys need to convert to ldm format. You can download models with ldm keys here: https://huggingface.co/huchenlei/IC-Light-ldm/tree/main

There are 2 models:

  • iclight_sd15_fc_unet_ldm: Use this in FG workflows
  • iclight_sd15_fbc_unet_ldm: Use this in BG workflows

After you download these models, please put them under ComfyUI/models/unet and load them with UNETLoader node.

[Important!] Required nodes

You MUST install following nodes first for IC light to work properly.

  • ComfyUI-layerdiffuse: Although not used in the workflow, the patching of weight load in layerdiffuse is a dependency for IC-Light nodes to work properly.

Recommended nodes

  • ComfyUI-KJNodes: Provides various mask nodes to create light map.
  • ComfyUI-Easy-Use: A giant node pack of everything. The remove bg node used in workflow comes from this pack.
  • ComfyUI_essentials: Many useful tooling nodes. Image resize node used in the workflow comes from this pack.

Workflows

Please make sure the fg image's masked/transparent area are grey before you pass it to the VAE. Otherwise, you will get background obscured in FC workflows or darkened background in FBC workflows. You can use IC Light Apply Mask Grey to make sure the masked area's color is correct. See following examples: 12 05 2024_16 22 48_REC 12 05 2024_16 19 02_REC

image

Light from right image

Light from left image

image

Common Issues

IC-Light's unet is accepting extra inputs on top of the common noise input. FG model accepts extra 1 input (4 channels). BG model accepts 2 extra input (8 channels). The original unet's input is 4 channels as well.

If you see following issue, it means IC-Light's unet is not properly loaded, and you need to install ComfyUI-layerdiffuse first.

RuntimeError: Given groups=1, weight of size [320, 4, 3, 3], expected input[2, 8, 64, 64] to have 4 channels, but got 8 channels instead

If you see following error, it means you are using FG workflow but loaded the BG model.

RuntimeError: Given groups=1, weight of size [320, 8, 3, 3], expected input[2, 12, 64, 64] to have 8 channels, but got 12 channels instead

If you see following error, it means you are using FG workflow but loaded the BG model.

RuntimeError: Given groups=1, weight of size [320, 12, 3, 3], expected input[2, 8, 64, 64] to have 12 channels, but got 8 channels instead

About

ComfyUI native implementation of IC-Light

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages