3d039591fe
Previously before this commit, credits are already in entry and licenses are already in root. This commit will make info clearer.
52 lines
1.9 KiB
Python
52 lines
1.9 KiB
Python
# Taken from https://github.com/comfyanonymous/ComfyUI
|
|
# This file is only for reference, and not used in the backend or runtime.
|
|
|
|
|
|
import torch
|
|
import ldm_patched.contrib.external
|
|
import ldm_patched.modules.utils
|
|
|
|
class SD_4XUpscale_Conditioning:
|
|
@classmethod
|
|
def INPUT_TYPES(s):
|
|
return {"required": { "images": ("IMAGE",),
|
|
"positive": ("CONDITIONING",),
|
|
"negative": ("CONDITIONING",),
|
|
"scale_ratio": ("FLOAT", {"default": 4.0, "min": 0.0, "max": 10.0, "step": 0.01}),
|
|
"noise_augmentation": ("FLOAT", {"default": 0.0, "min": 0.0, "max": 1.0, "step": 0.001}),
|
|
}}
|
|
RETURN_TYPES = ("CONDITIONING", "CONDITIONING", "LATENT")
|
|
RETURN_NAMES = ("positive", "negative", "latent")
|
|
|
|
FUNCTION = "encode"
|
|
|
|
CATEGORY = "conditioning/upscale_diffusion"
|
|
|
|
def encode(self, images, positive, negative, scale_ratio, noise_augmentation):
|
|
width = max(1, round(images.shape[-2] * scale_ratio))
|
|
height = max(1, round(images.shape[-3] * scale_ratio))
|
|
|
|
pixels = ldm_patched.modules.utils.common_upscale((images.movedim(-1,1) * 2.0) - 1.0, width // 4, height // 4, "bilinear", "center")
|
|
|
|
out_cp = []
|
|
out_cn = []
|
|
|
|
for t in positive:
|
|
n = [t[0], t[1].copy()]
|
|
n[1]['concat_image'] = pixels
|
|
n[1]['noise_augmentation'] = noise_augmentation
|
|
out_cp.append(n)
|
|
|
|
for t in negative:
|
|
n = [t[0], t[1].copy()]
|
|
n[1]['concat_image'] = pixels
|
|
n[1]['noise_augmentation'] = noise_augmentation
|
|
out_cn.append(n)
|
|
|
|
latent = torch.zeros([images.shape[0], 4, height // 4, width // 4])
|
|
return (out_cp, out_cn, {"samples":latent})
|
|
|
|
NODE_CLASS_MAPPINGS = {
|
|
"SD_4XUpscale_Conditioning": SD_4XUpscale_Conditioning,
|
|
}
|