mirror of
https://github.com/lllyasviel/stable-diffusion-webui-forge.git
synced 2026-04-29 18:51:31 +00:00
move recolor
This commit is contained in:
@@ -750,50 +750,50 @@ legacy_preprocessors = {
|
|||||||
"OpenPose"
|
"OpenPose"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"recolor_intensity": {
|
# "recolor_intensity": {
|
||||||
"label": "recolor_intensity",
|
# "label": "recolor_intensity",
|
||||||
"call_function": recolor_intensity,
|
# "call_function": recolor_intensity,
|
||||||
"unload_function": None,
|
# "unload_function": None,
|
||||||
"managed_model": None,
|
# "managed_model": None,
|
||||||
"model_free": False,
|
# "model_free": False,
|
||||||
"no_control_mode": False,
|
# "no_control_mode": False,
|
||||||
"resolution": None,
|
# "resolution": None,
|
||||||
"slider_1": {
|
# "slider_1": {
|
||||||
"label": "Gamma Correction",
|
# "label": "Gamma Correction",
|
||||||
"value": 1.0,
|
# "value": 1.0,
|
||||||
"minimum": 0.1,
|
# "minimum": 0.1,
|
||||||
"maximum": 2.0,
|
# "maximum": 2.0,
|
||||||
"step": 0.001
|
# "step": 0.001
|
||||||
},
|
# },
|
||||||
"slider_2": None,
|
# "slider_2": None,
|
||||||
"slider_3": None,
|
# "slider_3": None,
|
||||||
"priority": 0,
|
# "priority": 0,
|
||||||
"tags": [
|
# "tags": [
|
||||||
"Recolor"
|
# "Recolor"
|
||||||
]
|
# ]
|
||||||
},
|
# },
|
||||||
"recolor_luminance": {
|
# "recolor_luminance": {
|
||||||
"label": "recolor_luminance",
|
# "label": "recolor_luminance",
|
||||||
"call_function": recolor_luminance,
|
# "call_function": recolor_luminance,
|
||||||
"unload_function": None,
|
# "unload_function": None,
|
||||||
"managed_model": None,
|
# "managed_model": None,
|
||||||
"model_free": False,
|
# "model_free": False,
|
||||||
"no_control_mode": False,
|
# "no_control_mode": False,
|
||||||
"resolution": None,
|
# "resolution": None,
|
||||||
"slider_1": {
|
# "slider_1": {
|
||||||
"label": "Gamma Correction",
|
# "label": "Gamma Correction",
|
||||||
"value": 1.0,
|
# "value": 1.0,
|
||||||
"minimum": 0.1,
|
# "minimum": 0.1,
|
||||||
"maximum": 2.0,
|
# "maximum": 2.0,
|
||||||
"step": 0.001
|
# "step": 0.001
|
||||||
},
|
# },
|
||||||
"slider_2": None,
|
# "slider_2": None,
|
||||||
"slider_3": None,
|
# "slider_3": None,
|
||||||
"priority": 100,
|
# "priority": 100,
|
||||||
"tags": [
|
# "tags": [
|
||||||
"Recolor"
|
# "Recolor"
|
||||||
]
|
# ]
|
||||||
},
|
# },
|
||||||
# "reference_adain": {
|
# "reference_adain": {
|
||||||
# "label": "reference_adain",
|
# "label": "reference_adain",
|
||||||
# "call_function": identity,
|
# "call_function": identity,
|
||||||
|
|||||||
@@ -0,0 +1,49 @@
|
|||||||
|
import cv2
|
||||||
|
import numpy as np
|
||||||
|
|
||||||
|
from modules_forge.supported_preprocessor import Preprocessor, PreprocessorParameter
|
||||||
|
from modules_forge.shared import add_supported_preprocessor
|
||||||
|
|
||||||
|
|
||||||
|
class PreprocessorRecolor(Preprocessor):
|
||||||
|
def __init__(self, name, use_intensity):
|
||||||
|
super().__init__()
|
||||||
|
self.name = name
|
||||||
|
self.use_intensity = False
|
||||||
|
self.tags = ['Recolor']
|
||||||
|
self.model_filename_filters = ['color', 'recolor', 'grey', 'gray']
|
||||||
|
self.slider_resolution = PreprocessorParameter(visible=False)
|
||||||
|
self.slider_1 = PreprocessorParameter(
|
||||||
|
visible=True,
|
||||||
|
label="Gamma Correction",
|
||||||
|
value=1.0,
|
||||||
|
minimum=0.1,
|
||||||
|
maximum=2.0,
|
||||||
|
step=0.001
|
||||||
|
)
|
||||||
|
|
||||||
|
def __call__(self, input_image, resolution, slider_1=None, slider_2=None, slider_3=None, **kwargs):
|
||||||
|
gamma = slider_1
|
||||||
|
|
||||||
|
if self.use_intensity:
|
||||||
|
result = cv2.cvtColor(input_image, cv2.COLOR_BGR2HSV)
|
||||||
|
result = result[:, :, 2].astype(np.float32) / 255.0
|
||||||
|
else:
|
||||||
|
result = cv2.cvtColor(input_image, cv2.COLOR_BGR2LAB)
|
||||||
|
result = result[:, :, 0].astype(np.float32) / 255.0
|
||||||
|
|
||||||
|
result = result ** gamma
|
||||||
|
result = (result * 255.0).clip(0, 255).astype(np.uint8)
|
||||||
|
result = cv2.cvtColor(result, cv2.COLOR_GRAY2RGB)
|
||||||
|
return result
|
||||||
|
|
||||||
|
|
||||||
|
add_supported_preprocessor(PreprocessorRecolor(
|
||||||
|
name="recolor_intensity",
|
||||||
|
use_intensity=True
|
||||||
|
))
|
||||||
|
|
||||||
|
add_supported_preprocessor(PreprocessorRecolor(
|
||||||
|
name="recolor_luminance",
|
||||||
|
use_intensity=False
|
||||||
|
))
|
||||||
Reference in New Issue
Block a user