From 623c5a44d64cd9d208e360a0a2f7382441c7aa4a Mon Sep 17 00:00:00 2001 From: Mikubill <31246794+Mikubill@users.noreply.github.com> Date: Fri, 17 Feb 2023 03:33:54 +0000 Subject: [PATCH] fix: use generic update to avoid corner issue --- scripts/controlnet.py | 48 ++++++++++++++++++++++++------------------- 1 file changed, 27 insertions(+), 21 deletions(-) diff --git a/scripts/controlnet.py b/scripts/controlnet.py index 4a219fc..17f76ef 100644 --- a/scripts/controlnet.py +++ b/scripts/controlnet.py @@ -189,45 +189,51 @@ class Script(scripts.Script): def build_sliders(module): if module == "canny": return [ - gr.Slider.update(label="Annotator resolution", value=512, minimum=64, maximum=1024, step=1, interactive=True), - gr.Slider.update(label="Canny low threshold", minimum=1, maximum=255, value=100, step=1, interactive=True), - gr.Slider.update(label="Canny high threshold", minimum=1, maximum=255, value=200, step=1, interactive=True), + gr.update(label="Annotator resolution", value=512, minimum=64, maximum=1024, step=1, interactive=True), + gr.update(label="Canny low threshold", minimum=1, maximum=255, value=100, step=1, interactive=True), + gr.update(label="Canny high threshold", minimum=1, maximum=255, value=200, step=1, interactive=True), ] elif module == "mlsd": #Hough return [ - gr.Slider.update(label="Hough Resolution", minimum=128, maximum=1024, value=512, step=1, interactive=True), - gr.Slider.update(label="Hough value threshold (MLSD)", minimum=0.01, maximum=2.0, value=0.1, step=0.01, interactive=True), - gr.Slider.update(label="Hough distance threshold (MLSD)", minimum=0.01, maximum=20.0, value=0.1, step=0.01, interactive=True) + gr.update(label="Hough Resolution", minimum=128, maximum=1024, value=512, step=1, interactive=True), + gr.update(label="Hough value threshold (MLSD)", minimum=0.01, maximum=2.0, value=0.1, step=0.01, interactive=True), + gr.update(label="Hough distance threshold (MLSD)", minimum=0.01, maximum=20.0, value=0.1, step=0.01, interactive=True) ] elif module in ["hed", "fake_scribble"]: return [ - gr.Slider.update(label="HED Resolution", minimum=128, maximum=1024, value=512, step=1, interactive=True), - gr.Slider.update(label="Threshold A", value=64, minimum=64, maximum=1024, interactive=False), - gr.Slider.update(label="Threshold B", value=64, minimum=64, maximum=1024, interactive=False), + gr.update(label="HED Resolution", minimum=128, maximum=1024, value=512, step=1, interactive=True), + gr.update(label="Threshold A", value=64, minimum=64, maximum=1024, interactive=False), + gr.update(label="Threshold B", value=64, minimum=64, maximum=1024, interactive=False), ] elif module in ["openpose", "openpose_hand", "segmentation"]: return [ - gr.Slider.update(label="Annotator Resolution", minimum=128, maximum=1024, value=512, step=1, interactive=True), - gr.Slider.update(label="Threshold A", value=64, minimum=64, maximum=1024, interactive=False), - gr.Slider.update(label="Threshold B", value=64, minimum=64, maximum=1024, interactive=False), + gr.update(label="Annotator Resolution", minimum=128, maximum=1024, value=512, step=1, interactive=True), + gr.update(label="Threshold A", value=64, minimum=64, maximum=1024, interactive=False), + gr.update(label="Threshold B", value=64, minimum=64, maximum=1024, interactive=False), ] elif module == "depth": return [ - gr.Slider.update(label="Midas Resolution", minimum=128, maximum=1024, value=384, step=1, interactive=True), - gr.Slider.update(label="Threshold A", value=64, minimum=64, maximum=1024, interactive=False), - gr.Slider.update(label="Threshold B", value=64, minimum=64, maximum=1024, interactive=False), + gr.update(label="Midas Resolution", minimum=128, maximum=1024, value=384, step=1, interactive=True), + gr.update(label="Threshold A", value=64, minimum=64, maximum=1024, interactive=False), + gr.update(label="Threshold B", value=64, minimum=64, maximum=1024, interactive=False), ] elif module == "normal_map": return [ - gr.Slider.update(label="Normal Resolution", minimum=128, maximum=1024, value=512, step=1, interactive=True), - gr.Slider.update(label="Normal background threshold", minimum=0.0, maximum=1.0, value=0.4, step=0.01, interactive=True), - gr.Slider.update(label="Threshold B", value=64, minimum=64, maximum=1024, interactive=False), + gr.update(label="Normal Resolution", minimum=128, maximum=1024, value=512, step=1, interactive=True), + gr.update(label="Normal background threshold", minimum=0.0, maximum=1.0, value=0.4, step=0.01, interactive=True), + gr.update(label="Threshold B", value=64, minimum=64, maximum=1024, interactive=False), + ] + elif module == "none": + return [ + gr.update(label="Normal Resolution", value=64, minimum=64, maximum=1024, interactive=False), + gr.update(label="Threshold A", value=64, minimum=64, maximum=1024, interactive=False), + gr.update(label="Threshold B", value=64, minimum=64, maximum=1024, interactive=False), ] else: return [ - gr.Slider.update(label="Annotator resolution", value=512, minimum=64, maximum=1024, step=1, interactive=True), - gr.Slider.update(label="Threshold A", value=64, minimum=64, maximum=1024, interactive=False), - gr.Slider.update(label="Threshold B", value=64, minimum=64, maximum=1024, interactive=False), + gr.update(label="Annotator resolution", value=512, minimum=64, maximum=1024, step=1, interactive=True), + gr.update(label="Threshold A", value=64, minimum=64, maximum=1024, interactive=False), + gr.update(label="Threshold B", value=64, minimum=64, maximum=1024, interactive=False), ] # advanced options