diff --git a/CHANGELOG.md b/CHANGELOG.md index 83212d2ce..4187e3011 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -70,11 +70,12 @@ - set as default face restorer in settings -> postprocessing - disabled by default, to enable simply check *face restore* in your generate advanced settings - strength is controlled by refine strength setting + - will use secondary prompt and secondary negative prompt if present in refine - **Watermarking** - SD.Next disables all known watermarks in models, but does allow user to set custom watermark - - See *settings -> image options -> watermarking* - - Invisible watermark: using steganogephy - - Image watermark: overlaid on top of image + - see *settings -> image options -> watermarking* + - invisible watermark: using steganogephy + - image watermark: overlaid on top of image - **Improvements** - **FaceID** extend support for LoRA, HyperTile and FreeU, thanks @Trojaner - **Tiling** now extends to both Unet and VAE producing smoother outputs, thanks @AI-Casanova diff --git a/scripts/face-details.py b/scripts/face-details.py index d2b706fc1..fef4edddf 100644 --- a/scripts/face-details.py +++ b/scripts/face-details.py @@ -103,6 +103,8 @@ class FaceRestorerYolo(face_restoration.FaceRestoration): shared.opts.data['mask_apply_overlay'] = True p = processing_class.switch_class(p, processing.StableDiffusionProcessingImg2Img) + shared.log.error(orig_p) + for face in faces: if face.mask is None: continue @@ -115,6 +117,13 @@ class FaceRestorerYolo(face_restoration.FaceRestoration): p.inpainting_mask_invert = 0 p.inpainting_fill = 1 # no fill p.denoising_strength = orig_p.get('denoising_strength', 0.3) + p.styles = [] + p.prompt = orig_p.get('refiner_prompt', '') + if len(p.prompt) == 0: + p.prompt = orig_p.get('all_prompts', [''])[0] + p.negative_prompt = orig_p.get('refiner_negative', '') + if len(p.negative_prompt) == 0: + p.negative_prompt = orig_p.get('all_negative_prompts', [''])[0] # TODO facehires expose as tunable p.mask_blur = 10 p.inpaint_full_res_padding = 15