mirror of
https://github.com/vladmandic/automatic
synced 2026-09-09 22:38:43 +02:00
cn always generate blended processed image
Signed-off-by: Vladimir Mandic <mandic00@live.com>
This commit is contained in:
@@ -94,6 +94,7 @@ def preprocess_image(
|
||||
|
||||
# run image processors
|
||||
processed_images = []
|
||||
blended_image = None
|
||||
for i, process in enumerate(active_process): # list[image]
|
||||
debug_log(f'Control: i={i+1} process="{process.processor_id}" input={masked_image} override={process.override}')
|
||||
processed_image = process(
|
||||
@@ -244,4 +245,4 @@ def preprocess_image(
|
||||
|
||||
t1 = time.time()
|
||||
process_timer.add('proc', t1-t0)
|
||||
return processed_image
|
||||
return processed_image, blended_image
|
||||
|
||||
@@ -506,7 +506,9 @@ def control_run(state: str = '', # pylint: disable=keyword-arg-before-vararg
|
||||
continue
|
||||
index += 1
|
||||
|
||||
processed_image = preprocess_image(p, pipe, input_image, init_image, mask, input_type, unit_type, active_process, active_model, selected_models, has_models)
|
||||
processed_image, blended_image = preprocess_image(p, pipe, input_image, init_image, mask, input_type, unit_type, active_process, active_model, selected_models, has_models)
|
||||
if is_generator:
|
||||
yield (None, blended_image, '') # result is control_output, proces_output
|
||||
|
||||
# final check
|
||||
if has_models:
|
||||
|
||||
+10
-10
@@ -253,7 +253,7 @@ def create_ui(_blocks: gr.Blocks=None):
|
||||
reset_btn = ui_components.ToolButton(value=ui_symbols.reset)
|
||||
image_upload = gr.UploadButton(label=ui_symbols.upload, file_types=['image'], elem_classes=['form', 'gradio-button', 'tool'])
|
||||
image_reuse= ui_components.ToolButton(value=ui_symbols.reuse)
|
||||
process_btn= ui_components.ToolButton(value=ui_symbols.preview)
|
||||
btn_preview= ui_components.ToolButton(value=ui_symbols.preview)
|
||||
image_preview = gr.Image(label="Input", type="pil", height=128, width=128, visible=False, interactive=True, show_label=False, show_download_button=False, container=False, elem_id=f'control_unit-{i}-override')
|
||||
controlnet_ui_units.append(unit_ui)
|
||||
units.append(unit.Unit(
|
||||
@@ -267,7 +267,7 @@ def create_ui(_blocks: gr.Blocks=None):
|
||||
model_id = model_id,
|
||||
model_strength = model_strength,
|
||||
preview_process = preview_process,
|
||||
preview_btn = process_btn,
|
||||
preview_btn = btn_preview,
|
||||
image_upload = image_upload,
|
||||
image_reuse = image_reuse,
|
||||
image_preview = image_preview,
|
||||
@@ -302,7 +302,7 @@ def create_ui(_blocks: gr.Blocks=None):
|
||||
reset_btn = ui_components.ToolButton(value=ui_symbols.reset)
|
||||
image_upload = gr.UploadButton(label=ui_symbols.upload, file_types=['image'], elem_classes=['form', 'gradio-button', 'tool'])
|
||||
image_reuse= ui_components.ToolButton(value=ui_symbols.reuse)
|
||||
process_btn= ui_components.ToolButton(value=ui_symbols.preview)
|
||||
btn_preview= ui_components.ToolButton(value=ui_symbols.preview)
|
||||
image_preview = gr.Image(label="Input", show_label=False, type="pil", interactive=False, height=128, width=128, visible=False, elem_id=f'control_unit-{i}-override')
|
||||
adapter_ui_units.append(unit_ui)
|
||||
units.append(unit.Unit(
|
||||
@@ -316,7 +316,7 @@ def create_ui(_blocks: gr.Blocks=None):
|
||||
model_id = model_id,
|
||||
model_strength = model_strength,
|
||||
preview_process = preview_process,
|
||||
preview_btn = process_btn,
|
||||
preview_btn = btn_preview,
|
||||
image_upload = image_upload,
|
||||
image_reuse = image_reuse,
|
||||
image_preview = image_preview,
|
||||
@@ -349,7 +349,7 @@ def create_ui(_blocks: gr.Blocks=None):
|
||||
reset_btn = ui_components.ToolButton(value=ui_symbols.reset)
|
||||
image_upload = gr.UploadButton(label=ui_symbols.upload, file_types=['image'], elem_classes=['form', 'gradio-button', 'tool'])
|
||||
image_reuse= ui_components.ToolButton(value=ui_symbols.reuse)
|
||||
process_btn= ui_components.ToolButton(value=ui_symbols.preview)
|
||||
btn_preview= ui_components.ToolButton(value=ui_symbols.preview)
|
||||
image_preview = gr.Image(label="Input", show_label=False, type="pil", interactive=False, height=128, width=128, visible=False, elem_id=f'control_unit-{i}-override')
|
||||
controlnetxs_ui_units.append(unit_ui)
|
||||
units.append(unit.Unit(
|
||||
@@ -363,7 +363,7 @@ def create_ui(_blocks: gr.Blocks=None):
|
||||
model_id = model_id,
|
||||
model_strength = model_strength,
|
||||
preview_process = preview_process,
|
||||
preview_btn = process_btn,
|
||||
preview_btn = btn_preview,
|
||||
image_upload = image_upload,
|
||||
image_reuse = image_reuse,
|
||||
image_preview = image_preview,
|
||||
@@ -396,7 +396,7 @@ def create_ui(_blocks: gr.Blocks=None):
|
||||
image_upload = gr.UploadButton(label=ui_symbols.upload, file_types=['image'], elem_classes=['form', 'gradio-button', 'tool'])
|
||||
image_reuse= ui_components.ToolButton(value=ui_symbols.reuse)
|
||||
image_preview = gr.Image(label="Input", show_label=False, type="pil", interactive=False, height=128, width=128, visible=False, elem_id=f'control_unit-{i}-override')
|
||||
process_btn= ui_components.ToolButton(value=ui_symbols.preview)
|
||||
btn_preview= ui_components.ToolButton(value=ui_symbols.preview)
|
||||
lite_ui_units.append(unit_ui)
|
||||
units.append(unit.Unit(
|
||||
unit_type = 'lite',
|
||||
@@ -409,7 +409,7 @@ def create_ui(_blocks: gr.Blocks=None):
|
||||
model_id = model_id,
|
||||
model_strength = model_strength,
|
||||
preview_process = preview_process,
|
||||
preview_btn = process_btn,
|
||||
preview_btn = btn_preview,
|
||||
image_upload = image_upload,
|
||||
image_reuse = image_reuse,
|
||||
image_preview = image_preview,
|
||||
@@ -440,7 +440,7 @@ def create_ui(_blocks: gr.Blocks=None):
|
||||
image_upload = gr.UploadButton(label=ui_symbols.upload, file_types=['image'], elem_classes=['form', 'gradio-button', 'tool'])
|
||||
image_reuse= ui_components.ToolButton(value=ui_symbols.reuse)
|
||||
image_preview = gr.Image(label="Input", show_label=False, type="pil", interactive=False, height=128, width=128, visible=False, elem_id=f'control_unit-{i}-override')
|
||||
process_btn= ui_components.ToolButton(value=ui_symbols.preview)
|
||||
btn_preview= ui_components.ToolButton(value=ui_symbols.preview)
|
||||
units.append(unit.Unit(
|
||||
unit_type = 'reference',
|
||||
index = i,
|
||||
@@ -452,7 +452,7 @@ def create_ui(_blocks: gr.Blocks=None):
|
||||
model_id = model_id,
|
||||
model_strength = model_strength,
|
||||
preview_process = preview_process,
|
||||
preview_btn = process_btn,
|
||||
preview_btn = btn_preview,
|
||||
image_upload = image_upload,
|
||||
image_reuse = image_reuse,
|
||||
image_preview = image_preview,
|
||||
|
||||
@@ -330,7 +330,7 @@ def apply_control(field):
|
||||
active_process, active_model, active_strength, active_start, active_end = run.check_active(p, unit.type, run.unit.current)
|
||||
has_models, selected_models, control_conditioning, control_guidance_start, control_guidance_end = run.check_enabled(p, unit.type, run.unit.current, active_model, active_strength, active_start, active_end)
|
||||
pipe = run.set_pipe(p, has_models, unit.type, selected_models, active_model, active_strength, control_conditioning, control_guidance_start, control_guidance_end)
|
||||
_processed_image = processor.preprocess_image(p, pipe, input_image=init_images[0], unit_type=unit.type, active_process=active_process, active_model=active_model, selected_models=selected_models, has_models=has_models)
|
||||
_processed_image, _blended_image = processor.preprocess_image(p, pipe, input_image=init_images[0], unit_type=unit.type, active_process=active_process, active_model=active_model, selected_models=selected_models, has_models=has_models)
|
||||
if pipe is not None:
|
||||
shared.sd_model = pipe
|
||||
elif field == 'control_start':
|
||||
|
||||
Reference in New Issue
Block a user