improve result quality of control (#581)

This commit is contained in:
lllyasviel 2023-10-08 14:33:16 -07:00 committed by GitHub
parent e51f7fea59
commit e00b647eee
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 11 additions and 10 deletions

View File

@ -1 +1 @@
version = '2.1.06'
version = '2.1.07'

View File

@ -2,7 +2,7 @@ adm_scaler_positive, adm_scaler_negative, adm_scaler_end, adaptive_cfg, sampler_
scheduler_name, overwrite_step, overwrite_switch, overwrite_width, overwrite_height, \
overwrite_vary_strength, overwrite_upscale_strength, \
mixing_image_prompt_and_vary_upscale, mixing_image_prompt_and_inpaint, \
debugging_cn_preprocessor, disable_soft_cn = [None] * 16
debugging_cn_preprocessor, controlnet_softness = [None] * 16
def set_all_advanced_parameters(*args):
@ -10,12 +10,12 @@ def set_all_advanced_parameters(*args):
scheduler_name, overwrite_step, overwrite_switch, overwrite_width, overwrite_height, \
overwrite_vary_strength, overwrite_upscale_strength, \
mixing_image_prompt_and_vary_upscale, mixing_image_prompt_and_inpaint, \
debugging_cn_preprocessor, disable_soft_cn
debugging_cn_preprocessor, controlnet_softness
adm_scaler_positive, adm_scaler_negative, adm_scaler_end, adaptive_cfg, sampler_name, \
scheduler_name, overwrite_step, overwrite_switch, overwrite_width, overwrite_height, \
overwrite_vary_strength, overwrite_upscale_strength, \
mixing_image_prompt_and_vary_upscale, mixing_image_prompt_and_inpaint, \
debugging_cn_preprocessor, disable_soft_cn = args
debugging_cn_preprocessor, controlnet_softness = args
return

View File

@ -372,10 +372,10 @@ def patched_cldm_forward(self, x, hint, timesteps, context, y=None, **kwargs):
h = self.middle_block(h, emb, context)
outs.append(self.middle_block_out(h, emb, context))
if not advanced_parameters.disable_soft_cn:
if advanced_parameters.controlnet_softness > 0:
for i in range(10):
k = float(i) / 9.0
outs[i] = outs[i] * (0.1 + 0.9 * k)
k = 1.0 - float(i) / 9.0
outs[i] = outs[i] * (1.0 - advanced_parameters.controlnet_softness * k)
return outs

View File

@ -104,7 +104,7 @@ with shared.gradio_root:
ip_type = gr.Radio(label='Type', choices=flags.ip_list, value=flags.default_ip, container=False)
ip_types.append(ip_type)
ip_ctrls.append(ip_type)
ip_type.change(lambda x: flags.default_parameters[x], inputs=[ip_type], outputs=[ip_stop, ip_weight], queue=False, show_progress=False)
ip_ad_cols.append(ad_col)
ip_advanced = gr.Checkbox(label='Advanced', value=False, container=False)
@ -246,13 +246,14 @@ with shared.gradio_root:
debugging_cn_preprocessor = gr.Checkbox(label='Debug Preprocessor of ControlNets', value=False)
disable_soft_cn = gr.Checkbox(label='Do not use soft weighting in ControlNets', value=False)
controlnet_softness = gr.Slider(label='Softness of ControlNet', minimum=0.0, maximum=1.0,
step=0.001, value=0.25, info='Similar to the Control Mode in A1111 (use 0.0 to disable). ')
adps = [adm_scaler_positive, adm_scaler_negative, adm_scaler_end, adaptive_cfg, sampler_name,
scheduler_name, overwrite_step, overwrite_switch, overwrite_width, overwrite_height,
overwrite_vary_strength, overwrite_upscale_strength,
mixing_image_prompt_and_vary_upscale, mixing_image_prompt_and_inpaint,
debugging_cn_preprocessor, disable_soft_cn]
debugging_cn_preprocessor, controlnet_softness]
def dev_mode_checked(r):
return gr.update(visible=r)