The sampler no longer reaches into a sibling pack at runtime: the crop path planner and its helpers now live here as bfs_crop_planner.py and bfs_subject_crop.py, copied from drozbay/MaskVidExperiments (d98cc89, v0.2.0). Both packs are GPL-3.0, which is what makes the copy legal; attribution is in NOTICE and in each file's header. Only the ComfyUI node classes were dropped -- they stay in the original pack, where they belong. tracked/zoomed therefore work out of the box now, and the per-frame paste-back is ours rather than a call into their uncrop node. Also adds the node's help page (docs/BFSHeadSwapMaskedSampler.md, the '?' on the node): what each crop mode does, why the mask is native inpainting rather than a LoRA feature, why latent_mask is the output to check first, how to size the latent to the crop, and the order to switch things on when a run looks wrong. scipy is now a declared dependency (the planner uses ndimage).
9 lines
396 B
Plaintext
9 lines
396 B
Plaintext
|
|
Portions of this pack are vendored from third-party GPL-3.0 projects:
|
|
|
|
bfs_crop_planner.py, bfs_subject_crop.py
|
|
from drozbay/MaskVidExperiments (https://github.com/drozbay/MaskVidExperiments),
|
|
commit d98cc89 (v0.2.0), Copyright (c) drozbay, GPL-3.0.
|
|
Vendored so the head-swap sampler needs no runtime dependency on that pack;
|
|
behaviour unchanged, ComfyUI node classes dropped.
|