mirror of
https://github.com/Bing-su/adetailer.git
synced 2026-04-30 11:11:21 +00:00
feat: save preview
This commit is contained in:
@@ -13,11 +13,11 @@ repository = "https://github.com/Bing-su/adetailer"
|
|||||||
|
|
||||||
[tool.isort]
|
[tool.isort]
|
||||||
profile = "black"
|
profile = "black"
|
||||||
known_first_party = ["modules", "launch"]
|
known_first_party = ["launch", "modules"]
|
||||||
|
|
||||||
[tool.ruff]
|
[tool.ruff]
|
||||||
select = ["A", "B", "C4", "E", "F", "I001", "ISC", "N", "PIE", "PT", "RET", "SIM", "UP", "W"]
|
select = ["A", "B", "C4", "E", "F", "I001", "ISC", "N", "PIE", "PT", "RET", "SIM", "UP", "W"]
|
||||||
ignore = ["B008", "B905", "E501", "UP007", "F401"]
|
ignore = ["B008", "B905", "E501", "UP007", "F401"]
|
||||||
|
|
||||||
[tool.ruff.isort]
|
[tool.ruff.isort]
|
||||||
known-first-party = ["modules", "launch"]
|
known-first-party = ["launch", "modules"]
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ import torch
|
|||||||
import modules
|
import modules
|
||||||
from adetailer import __version__, get_models, mediapipe_predict, ultralytics_predict
|
from adetailer import __version__, get_models, mediapipe_predict, ultralytics_predict
|
||||||
from adetailer.common import dilate_erode, is_all_black, offset
|
from adetailer.common import dilate_erode, is_all_black, offset
|
||||||
from modules import devices, scripts
|
from modules import devices, images, script_callbacks, scripts, shared
|
||||||
from modules.paths import data_path, models_path
|
from modules.paths import data_path, models_path
|
||||||
from modules.processing import StableDiffusionProcessingImg2Img, process_images
|
from modules.processing import StableDiffusionProcessingImg2Img, process_images
|
||||||
from modules.safe import load, unsafe_torch_load
|
from modules.safe import load, unsafe_torch_load
|
||||||
@@ -367,6 +367,18 @@ class AfterDetailerScript(scripts.Script):
|
|||||||
steps = len(masks)
|
steps = len(masks)
|
||||||
processed = None
|
processed = None
|
||||||
|
|
||||||
|
if opts.data.get("ad_save_previews", False):
|
||||||
|
images.save_image(
|
||||||
|
pred.preview,
|
||||||
|
p.outpath_samples,
|
||||||
|
"",
|
||||||
|
seed,
|
||||||
|
p.all_prompts[i],
|
||||||
|
opts.samples_format,
|
||||||
|
p=p,
|
||||||
|
suffix="-ad-preview",
|
||||||
|
)
|
||||||
|
|
||||||
for j in range(steps):
|
for j in range(steps):
|
||||||
mask = masks[j]
|
mask = masks[j]
|
||||||
mask = dilate_erode(mask, args.ad_dilate_erode)
|
mask = dilate_erode(mask, args.ad_dilate_erode)
|
||||||
@@ -387,3 +399,14 @@ class AfterDetailerScript(scripts.Script):
|
|||||||
if original_params:
|
if original_params:
|
||||||
with params_txt.open("w", encoding="utf-8") as f:
|
with params_txt.open("w", encoding="utf-8") as f:
|
||||||
f.write(original_params)
|
f.write(original_params)
|
||||||
|
|
||||||
|
|
||||||
|
def on_ui_settings():
|
||||||
|
section = ("ADetailer", AFTER_DETAILER)
|
||||||
|
shared.opts.add_option(
|
||||||
|
"ad_save_previews",
|
||||||
|
shared.OptionInfo(False, "Save mask previews", section=section),
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
script_callbacks.on_ui_settings(on_ui_settings)
|
||||||
|
|||||||
Reference in New Issue
Block a user