Собственная реализация ComfyUI IC-Light.
Загрузите репозиторий и распакуйте его в папку custom_nodes в каталоге установки ComfyUI.
Или клонируйте через GIT, начиная с каталога установки ComfyUI:
cd custom_nodes
git clone [email protected]:huchenlei/ComfyUI-IC-Light-Native.git
Основной репозиторий IC-Light основан на рассеивателях. Чтобы загрузить его с помощью UnetLoader в ComfyUI, ключи state_dict необходимо преобразовать в формат ldm. Скачать модели с ldm-ключами можно здесь: https://huggingface.co/huchenlei/IC-Light-ldm/tree/main
Есть 2 модели:
После загрузки этих моделей поместите их в папку ComfyUI/models/unet
и загрузите с помощью узла UNETLoader
.
DetailTransfer
, который помогает преобразовывать высокочастотные детали из входного изображения fg. Прежде чем передавать его в VAE, убедитесь, что замаскированная/прозрачная область изображения fg серая. В противном случае вы получите затемненный фон в рабочих процессах FC или затемненный фон в рабочих процессах FBC. Вы можете использовать IC Light Apply Mask Grey
чтобы убедиться в правильности цвета замаскированной области. См. следующие примеры:
Если вы хотите сохранить исходный цвет объекта fg, вы можете поместить объект fg в скрытое пространство для дальнейшего управления генерацией. рабочий процесс
Свет справа
Свет слева
Сеть IC-Light принимает дополнительные входы помимо общего шумового входа. Модель FG имеет дополнительный 1 вход (4 канала). Модель BG имеет 2 дополнительных входа (8 каналов). Вход оригинального unet также имеет 4 канала.
Если вы видите следующую ошибку, это означает, что вы используете рабочий процесс FG, но загрузили модель BG.
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
Если вы видите следующую ошибку, это означает, что вы используете рабочий процесс FG, но загрузили модель BG.
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