From fdb44defc19b1e88fa45f1318a2e235eba64e6e6 Mon Sep 17 00:00:00 2001 From: Saquib Alam Date: Fri, 4 Aug 2023 01:24:09 +0530 Subject: [PATCH] Added NoisyLatentImage node in nodes.py Diffusers library starts with a random noise latent image, instead of an empty latent image. Therefore, adding this node. --- nodes.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/nodes.py b/nodes.py index 097f92308..fda79df15 100644 --- a/nodes.py +++ b/nodes.py @@ -871,6 +871,27 @@ class EmptyLatentImage: latent = torch.zeros([batch_size, 4, height // 8, width // 8]) return ({"samples":latent}, ) +class NoisyLatentImage: + def __init__(self, device="cpu"): + self.device = device + + @classmethod + def INPUT_TYPES(s): + return {"required": { + "seed": ("INT", {"default": 0, "min": 0, "max": 0xffffffffffffffff}), + "width": ("INT", {"default": 512, "min": 64, "max": MAX_RESOLUTION, "step": 8}), + "height": ("INT", {"default": 512, "min": 64, "max": MAX_RESOLUTION, "step": 8}), + "batch_size": ("INT", {"default": 1, "min": 1, "max": 64})}} + RETURN_TYPES = ("LATENT",) + FUNCTION = "generate" + + CATEGORY = "latent" + + def generate(self, seed, width, height, batch_size=1): + generator = torch.manual_seed(seed) + latent = torch.randn([batch_size, 4, height // 8, width // 8], generator=generator, device=self.device) + return ({"samples":latent}, ) + class LatentFromBatch: @classmethod