From de8f31440835e352aa16ab65ef9efbd789d9ead4 Mon Sep 17 00:00:00 2001 From: John Richard Chipps-Harding Date: Fri, 9 Feb 2024 02:52:46 +0000 Subject: [PATCH] Add LUT support (#7) * LUT Support * Working * Finished * Slip in license * docs * docs --- LICENSE | 21 +++++++ README.md | 16 +++++ examples/propost-lut.jpg | Bin 0 -> 153877 bytes nodes.py | 126 ++++++++++++++++++++++++++++++++++++--- requirements.txt | 3 +- 5 files changed, 157 insertions(+), 9 deletions(-) create mode 100644 LICENSE create mode 100644 examples/propost-lut.jpg diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..2f169f9 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2024 John Richard Chipps-Harding + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/README.md b/README.md index 13c13b1..add48e9 100644 --- a/README.md +++ b/README.md @@ -62,6 +62,22 @@ This filter allows you to blur the edges of the image. It has a few different op ![Pro Post Dreamy Radial Blur Example](./examples/propost-radialblur-dreamy.jpg) +### Apply LUT + +This filter allows you to apply a 3D LUT to the image. Currently it only supports 3D LUTs in the CUBE format. Upon installation, a sub-folder called `luts` will be created inside `/ComfyUI/models/`. I know it's not strictly a 'model', but it was the best place to put it for now. You can place your `.cube` files in this folder and they will be listed in the node's dropdown. + +| Parameter | Default | Type | Description | +|------------|---------|---------|---------------------------------------------------------------| +| lut_name | n/a | LUT | The `*.cube` from the `luts` folder to apply to the image. | +| strength | `1.0` | Float | The strength of the LUT effect, with a range of 0.0 to 1.0. | +| log | `false` | Boolean | If true, the image is processed in LOG color space. | + + +![Pro Post Apply LUT Example](./examples/propost-lut.jpg) +Here we apply a lut called `Waves.cube` to the image in LOG color space. + +> Note: This code is a heavily inspired from BilboX's work here: https://github.com/syllebra/bilbox-comfyui + ## Putting it all together diff --git a/examples/propost-lut.jpg b/examples/propost-lut.jpg new file mode 100644 index 0000000000000000000000000000000000000000..409da042070711c91a933be324bdebd81fef4497 GIT binary patch literal 153877 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

Jm2X7X}+@NCnQo(*GCOmEG_bih{ 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

QH>Jl4R-XBz@vVi=KvDruG#U|H>zos9H6RL4 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 VENUahfb@v$L^uN*2>$)!{{UjZl+OSF literal 0 HcmV?d00001 diff --git a/nodes.py b/nodes.py index 3169282..841a42f 100644 --- a/nodes.py +++ b/nodes.py @@ -3,15 +3,20 @@ import os import cv2 import torch import numpy as np +import folder_paths +from colour.io.luts.iridas_cube import read_LUT_IridasCube, LUT3D, LUT3x1D -# Get the directory of the current file +# Get the directory of the current file and add it to the system path current_file_directory = os.path.dirname(os.path.abspath(__file__)) - -# Append this directory to sys.path sys.path.append(current_file_directory) import filmgrainer.filmgrainer as filmgrainer +# Create the directory for the LUTs +dir_luts = os.path.join(folder_paths.models_dir, "luts") +os.makedirs(dir_luts, exist_ok=True) +folder_paths.folder_names_and_paths["luts"] = ([dir_luts], set(['.cube'])) + class ProPostVignette: def __init__(self): pass @@ -37,7 +42,7 @@ class ProPostVignette: #OUTPUT_NODE = False - CATEGORY = "propost/Effects" + CATEGORY = "Pro Post" def vignette_image(self, image: torch.Tensor, intensity: float): batch_size, height, width, _ = image.shape @@ -141,7 +146,7 @@ class ProPostFilmGrain: #OUTPUT_NODE = False - CATEGORY = "propost/Film Grain" + CATEGORY = "Pro Post" def filmgrain_image(self, image: torch.Tensor, gray_scale: bool, grain_type: str, grain_sat: float, grain_power: float, shadows: float, highs: float, scale: float, sharpen: int, src_gamma: float, seed: int): batch_size, height, width, _ = image.shape @@ -205,7 +210,7 @@ class ProPostRadialBlur: #OUTPUT_NODE = False - CATEGORY = "propost/Radial Blur" + CATEGORY = "Pro Post" def radialblur_image(self, image: torch.Tensor, edge_blur_strength: float, center_focus_weight: float, steps: int): batch_size, height, width, _ = image.shape @@ -273,6 +278,109 @@ class ProPostRadialBlur: final_image = np.clip(final_image * 255, 0, 255).astype(np.uint8) return final_image + + +class ProPostApplyLUT: + def __init__(self): + pass + + @classmethod + def INPUT_TYPES(s): + return { + "required": { + "image": ("IMAGE",), + "lut_name": (folder_paths.get_filename_list("luts"), ), + "strength": ("FLOAT", { + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + }), + "log": (["No", "Yes"], {"default":"No"}), + }, + } + + RETURN_TYPES = ("IMAGE",) + RETURN_NAMES = () + + FUNCTION = "lut_image" + + #OUTPUT_NODE = False + + CATEGORY = "Pro Post" + + def lut_image(self, image: torch.Tensor, lut_name, strength: float, log): + batch_size, height, width, _ = image.shape + result = torch.zeros_like(image) + + for b in range(batch_size): + tensor_image = image[b].numpy() + + # Apply LUT + lut_image = self.apply_lut(tensor_image, lut_name, strength, log) + + tensor = torch.from_numpy(lut_image).unsqueeze(0) + result[b] = tensor + + return (result,) + + def apply_lut(self, image, lut_name, strength, log): + if strength == 0: + return image + + # Read the LUT + lut_path = os.path.join(dir_luts, lut_name) + lut = self.read_lut(lut_path, clip=True) + + # Apply the LUT + is_non_default_domain = not np.array_equal(lut.domain, np.array([[0., 0., 0.], [1., 1., 1.]])) + dom_scale = None + + log = (log == "Yes") + + im_array = image.copy() + + if is_non_default_domain: + dom_scale = lut.domain[1] - lut.domain[0] + im_array = im_array * dom_scale + lut.domain[0] + if log: + im_array = im_array ** (1/2.2) + + im_array = lut.apply(im_array) + + if log: + im_array = im_array ** (2.2) + if is_non_default_domain: + im_array = (im_array - lut.domain[0]) / dom_scale + + # Blend the original image and the LUT-applied image based on the strength + blended_image = (1 - strength) * image + strength * im_array + + return blended_image + + def read_lut(self, lut_path, clip=False): + """ + Reads a LUT from the specified path, returning instance of LUT3D or LUT3x1D + + : the path to the file from which to read the LUT ( + : flag indicating whether to apply clipping of LUT values, limiting all values to the domain's lower and + upper bounds + """ + lut: Union[LUT3x1D, LUT3D] = read_LUT_IridasCube(lut_path) + lut.name = os.path.splitext(os.path.basename(lut_path))[0] # use base filename instead of internal LUT name + + if clip: + if lut.domain[0].max() == lut.domain[0].min() and lut.domain[1].max() == lut.domain[1].min(): + lut.table = np.clip(lut.table, lut.domain[0, 0], lut.domain[1, 0]) + else: + if len(lut.table.shape) == 2: # 3x1D + for dim in range(3): + lut.table[:, dim] = np.clip(lut.table[:, dim], lut.domain[0, dim], lut.domain[1, dim]) + else: # 3D + for dim in range(3): + lut.table[:, :, :, dim] = np.clip(lut.table[:, :, :, dim], lut.domain[0, dim], lut.domain[1, dim]) + + return lut # A dictionary that contains all nodes you want to export with their names @@ -280,12 +388,14 @@ class ProPostRadialBlur: NODE_CLASS_MAPPINGS = { "ProPostVignette": ProPostVignette, "ProPostFilmGrain": ProPostFilmGrain, - "ProPostRadialBlur": ProPostRadialBlur + "ProPostRadialBlur": ProPostRadialBlur, + "ProPostApplyLUT": ProPostApplyLUT } # A dictionary that contains the friendly/humanly readable titles for the nodes NODE_DISPLAY_NAME_MAPPINGS = { "ProPostVignette": "ProPost Vignette", "ProPostFilmGrain": "ProPost Film Grain", - "ProPostRadialBlur": "ProPost Radial Blur" + "ProPostRadialBlur": "ProPost Radial Blur", + "ProPostApplyLUT": "ProPost Apply LUT" } \ No newline at end of file diff --git a/requirements.txt b/requirements.txt index 9c8e4fa..5cd4b89 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,4 @@ numpy Pillow -opencv-python \ No newline at end of file +opencv-python +colour-science \ No newline at end of file