2024-01-25 23:41:34 +00:00
|
|
|
import gradio as gr
|
|
|
|
from modules import scripts
|
|
|
|
|
|
|
|
|
|
|
|
class FreeUForForge(scripts.Script):
|
|
|
|
def title(self):
|
|
|
|
return "FreeU Integrated"
|
|
|
|
|
2024-01-25 23:43:20 +00:00
|
|
|
def show(self, is_img2img):
|
2024-01-25 23:56:37 +00:00
|
|
|
# make this extension visible in both txt2img and img2img tab.
|
2024-01-25 23:43:20 +00:00
|
|
|
return scripts.AlwaysVisible
|
|
|
|
|
|
|
|
def ui(self, *args, **kwargs):
|
2024-01-25 23:41:34 +00:00
|
|
|
with gr.Accordion(open=False, label=self.title()):
|
|
|
|
freeu_enabled = gr.Checkbox(label='Enabled', value=False)
|
|
|
|
freeu_b1 = gr.Slider(label='B1', minimum=0, maximum=2, step=0.01, value=1.01)
|
|
|
|
freeu_b2 = gr.Slider(label='B2', minimum=0, maximum=2, step=0.01, value=1.02)
|
|
|
|
freeu_s1 = gr.Slider(label='S1', minimum=0, maximum=4, step=0.01, value=0.99)
|
|
|
|
freeu_s2 = gr.Slider(label='S2', minimum=0, maximum=4, step=0.01, value=0.95)
|
|
|
|
|
|
|
|
return freeu_enabled, freeu_b1, freeu_b2, freeu_s1, freeu_s2
|
|
|
|
|
2024-01-25 23:53:51 +00:00
|
|
|
def process_batch(self, p, *script_args, **kwargs):
|
|
|
|
freeu_enabled, freeu_b1, freeu_b2, freeu_s1, freeu_s2 = script_args
|
2024-01-26 00:02:54 +00:00
|
|
|
|
2024-01-25 23:54:52 +00:00
|
|
|
if not freeu_enabled:
|
|
|
|
return
|
|
|
|
|
2024-01-26 00:01:52 +00:00
|
|
|
# Below codes will add some logs to the texts below the image outputs on UI.
|
|
|
|
# The extra_generation_params does not influence results.
|
|
|
|
p.extra_generation_params.update(dict(
|
|
|
|
freeu_enabled=freeu_enabled,
|
|
|
|
freeu_b1=freeu_b1,
|
|
|
|
freeu_b2=freeu_b2,
|
|
|
|
freeu_s1=freeu_s1,
|
|
|
|
freeu_s2=freeu_s2,
|
|
|
|
))
|
|
|
|
|
2024-01-25 23:41:34 +00:00
|
|
|
return
|