51 Commits

Author SHA1 Message Date
QualiaRain c0f5f41042 fix(control): remove inert DWPose (Legacy) pose-model selector
The DWPose (Legacy) "Pose Model" (Tiny/Medium/Large) radio wrote to
config['DWPose (Legacy)']['model'], but the rtmlib backend
(RtmlibPoseDetector.from_pretrained) only takes the mode string and
always loads RTMPose 'lightweight' - it never reads that key (the only
config[...]['model'] readers are the SegmentAnything branch). The
selector was a no-op left over from the removed mmpose DWPose processor
(see #4956).

Remove the radio, its dead 'model' config key (both the module-level and
delay_load_config dicts), and its update_settings slot; reindex the
remaining settings 18..27. The settings list stays 1:1 with the UI
controls (re-derived the append-order -> update_settings map to confirm).

No runtime behavior change. The alternative - keep the capability by
mapping Tiny/Medium/Large onto rtmlib's mode - is intentionally not taken
here since it would change which model loads.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-22 10:28:59 -04:00
QualiaRain b83ad23856 fix(control): update stale processor names after rename
update_settings() and the XYZ [Control] Processor axis still used
pre-rename names ('MediaPipe Face', 'DWPose', 'SegmentAnything') that
no longer exist as config keys after 8d4ebcd5e.

- update_settings(): update stale keys to 'MediaPipe Face (Legacy)',
  'DWPose (Legacy)', 'SegmentAnything 1.0' -- the KeyError at
  'MediaPipe Face' (line 182) was silently dropping all settings after
  position 13 on every panel change
- DWPose (Legacy) config: add missing 'model' key so update_settings
  can persist the Pose Model radio value without crashing
- processor.processors list: remove stale 'DWPose' entry (already
  present as 'DWPose (Legacy)') that caused XYZ [Control] Processor
  to offer an unloadable option

Fixes #4953

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-22 08:08:02 -04:00
QualiaRain fdb27bb5af fix(control): SegmentAnything fails to load after processor rename
The "processors multiple fixes" rename split 'SegmentAnything' / 'SAM 2.1'
into 'SegmentAnything 1.0' / 'SegmentAnything 2.1' but left Processor.load()
matching the old name by substring:

    elif 'SegmentAnything' in processor_id:
        ... config['SegmentAnything']['model'] ...

Post-rename this (a) raises KeyError because 'SegmentAnything' is no longer
a config key, so both SAM processors fail to load, and (b) wrongly routes
'SegmentAnything 2.1' (a Sam2Detector loaded via load_config) into the
SAM-v1 weight path instead of letting it fall through to the generic
load_config branch.

Match the v1 id exactly and key off config[processor_id], restoring the
pre-rename routing: v1.0 -> explicit SAM-v1 branch, v2.1 -> load_config.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-21 23:41:32 -04:00
Vladimir Mandic 8d4ebcd5ef processors multiple fixes
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-18 11:45:34 +02:00
Vladimir Mandic 68f1c73e1f remove process preview
Co-authored-by: Copilot <copilot@github.com>
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-04-29 07:59:43 +02:00
awsr c003b0eb48 PIL Image.Image type fix 2026-04-06 01:06:19 -07:00
awsr 2675e68813 Revert minor change
Will re-implement in a separate PR
2026-03-25 13:55:56 -07:00
awsr b75a1f971f RUF013 update + minor typing fixes 2026-03-24 03:39:02 -07:00
vladmandic 72895b5192 merge: modules/control/processors.py 2026-03-12 14:16:51 +01:00
Vladimir Mandic 8ea9d428d5 remove dwpose
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-02-22 09:21:24 +01:00
Vladimir Mandic 2d28e7438c remove normalbae and add state caching 2026-02-19 10:11:25 +01:00
Vladimir Mandic a3074baf8b unified logger 2026-02-19 09:46:42 +01:00
Vladimir Mandic bfe014f5da modernize typing 2026-02-19 09:15:37 +01:00
Vladimir Mandic 9927b3e62c controlnet allow processor to keep aspect-ratio for override images based on i2i or t2i resolution
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-11-04 09:37:18 -05:00
Vladimir Mandic da30d81624 Merge branch 'dev' into dev 2025-10-23 10:13:10 -04:00
Vladimir Mandic 65e1d20e24 offline mode for controlnet/t2i/xs/lite/ipadapter/processors
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-10-23 09:40:53 -04:00
Vladimir Mandic 87fc6c7913 add offload mode to controlnets and framepack
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-10-22 15:40:52 -04:00
nolbert82 48eaf60c51 added Apple's "Depth Pro" preprocessor 2025-10-22 21:27:39 +02:00
Vladimir Mandic 652eb74db2 optimize processor loading
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-10-18 10:20:47 -04:00
Vladimir Mandic d351fdb98f add more job state updates and update history tab
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-09-13 10:54:04 -04:00
Vladimir Mandic da90c0c7ff reduce memory leak on control unit change
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-07-18 09:50:36 -04:00
Vladimir Mandic cd84cfec11 xyzgrid with control tab
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-07-15 14:35:27 -04:00
Vladimir Mandic a77975165c fix xyz with control enabled
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-07-15 09:11:54 -04:00
Vladimir Mandic c608674fb0 styles support parsed and upparsed save and apply
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-02-11 11:33:37 -05:00
Vladimir Mandic 55b7f02563 reduce control logging
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-01-10 10:00:57 -05:00
Vladimir Mandic df60fe202d control processor handle null output
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-01-10 08:16:08 -05:00
Vladimir Mandic 4acf3c00a2 persist control units state on restarts 2024-09-19 20:10:55 -04:00
Vladimir Mandic 68a8ffa3cf ipadapter optional face autocrop input image 2024-08-29 14:10:38 -04:00
Vladimir Mandic b39abdd18f control allow resizing overrides to match input 2024-08-28 09:53:50 -04:00
Vladimir Mandic b036c2fc3b improve gc threshold 2024-06-21 12:57:17 -04:00
Vladimir Mandic 89e9debbcd control api 2024-03-27 11:33:29 -04:00
Vladimir Mandic 48d763693c multiple control fixes 2024-03-16 11:11:27 -04:00
Vladimir Mandic c7d5096f7e add preprocess api 2024-03-01 12:52:10 -05:00
Vladimir Mandic d65067a53c fix control processor images handling 2024-02-12 08:28:16 -05:00
Vladimir Mandic 5faa144a29 fix imports 2024-01-30 13:03:47 -05:00
Vladimir Mandic f74637e813 control process override improvements 2024-01-29 12:58:50 -05:00
Vladimir Mandic 7aa6876759 refactor all control processors to support unload and offload 2024-01-25 11:45:47 -05:00
Vladimir Mandic f83f4edb0b add depth_anywhere processor 2024-01-23 13:21:12 -05:00
Vladimir Mandic 35c66d7ac9 flexible processour output type 2024-01-17 15:54:50 -05:00
Vladimir Mandic 15b4bad80a refactor control to use new masking 2024-01-15 12:11:55 -05:00
Vladimir Mandic 615f539a4e add control glpn depth processor 2024-01-13 19:35:50 -05:00
Vladimir Mandic d4752f46ec add control dpt processor 2024-01-13 10:48:31 -05:00
Vladimir Mandic d73001f1a9 enable swtiching built-in themes on-the-fly 2024-01-10 11:58:09 -05:00
Vladimir Mandic b206612069 fix processor switch 2024-01-09 07:53:37 -05:00
Vladimir Mandic 6195ce170b control add inpaint 2024-01-01 17:35:23 -05:00
Vladimir Mandic 8126018b00 add marigold depth maps 2023-12-30 17:49:07 -05:00
Vladimir Mandic 4c4429c5b4 control fix input size and image mode 2023-12-30 13:59:22 -05:00
Vladimir Mandic 3062e9eab9 add depth3d support 2023-12-27 13:59:33 -05:00
Vladimir Mandic 93a3b532d8 control input control 2023-12-22 14:15:08 -05:00
Vladimir Mandic 5cfc044ec6 tracing and control improvements 2023-12-20 17:33:19 -05:00