masked cnet

This commit is contained in:
lllyasviel
2024-02-01 21:48:58 -08:00
parent 597fe3e049
commit 4b27699e65
2 changed files with 7 additions and 1 deletions

View File

@@ -352,6 +352,9 @@ class ControlNetForForgeOfficial(scripts.Script):
params.model.negative_advanced_weighting = soft_weighting.copy()
cond, mask = params.preprocessor.process_before_every_sampling(p, cond, mask, *args, **kwargs)
params.model.advanced_mask_weighting = mask
params.model.process_before_every_sampling(p, cond, mask, *args, **kwargs)
logger.info(f"ControlNet Method {params.preprocessor.name} patched.")

View File

@@ -22,6 +22,7 @@ class ControlModelPatcher:
self.negative_advanced_weighting = None
self.advanced_frame_weighting = None
self.advanced_sigma_weighting = None
self.advanced_mask_weighting = None
def process_after_running_preprocessors(self, process, params, *args, **kwargs):
return
@@ -155,7 +156,9 @@ class ControlNetPatcher(ControlModelPatcher):
positive_advanced_weighting=self.positive_advanced_weighting,
negative_advanced_weighting=self.negative_advanced_weighting,
advanced_frame_weighting=self.advanced_frame_weighting,
advanced_sigma_weighting=self.advanced_sigma_weighting)
advanced_sigma_weighting=self.advanced_sigma_weighting,
advanced_mask_weighting=self.advanced_mask_weighting
)
process.sd_model.forge_objects.unet = unet
return