diff options
| author | Paul Buetow <paul@buetow.org> | 2026-03-24 11:16:45 +0200 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-03-24 11:16:45 +0200 |
| commit | 8d61721196c9f6a6b841dc3bdbb9ea9dada61c82 (patch) | |
| tree | 1e41306d0af9a727a7ade2afc875edc962e2731f /workflows | |
| parent | 728bb6dc7d664f8dcc2d8c9905e7c3f1ae062e48 (diff) | |
Add SUPIR photo restoration + local colour corrections
- workflows/photo-enhance.json: replace Real-ESRGAN-only pipeline with
SUPIR_Upscale (SUPIR-v0Q + SDXL base backbone). Parameters:
20 steps, scale_by=1.0 (original resolution), Wavelet colour fix,
tiled VAE + tiled sampling for L40 VRAM headroom.
- photo-enhance.rb: add ImageMagick colour corrections after download:
S-curve contrast (-sigmoidal-contrast 3,50%), +20% saturation
(-modulate 100,120,100), micro-contrast sharpening (-unsharp).
These stack on top of SUPIR's internal Wavelet colour fix.
- hyperstack.rb: update comfyui_install_script to install ComfyUI-SUPIR
custom node and download both SUPIR-v0Q + sd_xl_base_1.0 on provision.
- hyperstack.rb: extend status_config_loaders to auto-discover
hyperstack-vm-photo.toml so --watch shows the photo VM.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Diffstat (limited to 'workflows')
| -rw-r--r-- | workflows/photo-enhance.json | 51 |
1 files changed, 29 insertions, 22 deletions
diff --git a/workflows/photo-enhance.json b/workflows/photo-enhance.json index 6be7dfa..57910e9 100644 --- a/workflows/photo-enhance.json +++ b/workflows/photo-enhance.json @@ -8,35 +8,42 @@ } }, "2": { - "class_type": "UpscaleModelLoader", - "_meta": {"title": "Load Real-ESRGAN Model"}, + "class_type": "SUPIR_Upscale", + "_meta": {"title": "SUPIR Photo Restoration"}, "inputs": { - "model_name": "RealESRGAN_x4plus.pth" + "supir_model": "SUPIR-v0Q.ckpt", + "sdxl_model": "sd_xl_base_1.0.safetensors", + "image": ["1", 0], + "seed": 42, + "resize_method": "lanczos", + "scale_by": 1.0, + "steps": 20, + "restoration_scale": -1, + "cfg_scale": 7.5, + "a_prompt": "high quality photograph, sharp, detailed, natural colors", + "n_prompt": "blurry, noisy, low quality, artifact, overexposed, underexposed", + "s_churn": 5, + "s_noise": 1.003, + "control_scale": 1.0, + "cfg_scale_start": 4.0, + "control_scale_start": 0.0, + "color_fix_type": "Wavelet", + "keep_model_loaded": true, + "use_tiled_vae": true, + "encoder_tile_size_pixels": 512, + "decoder_tile_size_latent": 64, + "fp8_unet": false, + "use_tiled_sampling": true, + "sampler_tile_size": 128, + "sampler_tile_stride": 64 } }, "3": { - "class_type": "ImageUpscaleWithModel", - "_meta": {"title": "Enhance (internal 4x pass)"}, - "inputs": { - "upscale_model": ["2", 0], - "image": ["1", 0] - } - }, - "4": { - "class_type": "ImageScaleBy", - "_meta": {"title": "Scale back to original resolution"}, - "inputs": { - "image": ["3", 0], - "upscale_method": "lanczos", - "scale_by": 0.25 - } - }, - "5": { "class_type": "SaveImage", "_meta": {"title": "Save Enhanced Photo"}, "inputs": { - "images": ["4", 0], - "filename_prefix": "enhanced_" + "images": ["2", 0], + "filename_prefix": "enhanced_" } } } |
