Extract shared sampler-wrapping and mask postprocessing into ssd_core.py. Add three experimental variants alongside the original (variance snapshot): dynamic variance with EMA, delta (inter-step prediction difference) with EMA, and edges (Sobel). Each sampler node now also emits a mask handle consumed by a new mask-preview node that renders the captured mask inline after sampling runs. Use reflect-padding in variance, Sobel, and blur ops to eliminate the border-aura artifact produced by zero-padded convolutions.
26 lines
1.1 KiB
Python
26 lines
1.1 KiB
Python
from .selective_sigma_detailer import (
|
|
SelectiveSigmaDetailerDeltaNode,
|
|
SelectiveSigmaDetailerDynamicVarianceNode,
|
|
SelectiveSigmaDetailerEdgesNode,
|
|
SelectiveSigmaDetailerMaskPreviewNode,
|
|
SelectiveSigmaDetailerNode,
|
|
)
|
|
|
|
NODE_CLASS_MAPPINGS = {
|
|
"SelectiveSigmaDetailerNode": SelectiveSigmaDetailerNode,
|
|
"SelectiveSigmaDetailerDynamicVarianceNode": SelectiveSigmaDetailerDynamicVarianceNode,
|
|
"SelectiveSigmaDetailerDeltaNode": SelectiveSigmaDetailerDeltaNode,
|
|
"SelectiveSigmaDetailerEdgesNode": SelectiveSigmaDetailerEdgesNode,
|
|
"SelectiveSigmaDetailerMaskPreviewNode": SelectiveSigmaDetailerMaskPreviewNode,
|
|
}
|
|
|
|
NODE_DISPLAY_NAME_MAPPINGS = {
|
|
"SelectiveSigmaDetailerNode": "Selective Sigma Detailer (Variance Snapshot)",
|
|
"SelectiveSigmaDetailerDynamicVarianceNode": "Selective Sigma Detailer (Dynamic Variance)",
|
|
"SelectiveSigmaDetailerDeltaNode": "Selective Sigma Detailer (Delta)",
|
|
"SelectiveSigmaDetailerEdgesNode": "Selective Sigma Detailer (Edges)",
|
|
"SelectiveSigmaDetailerMaskPreviewNode": "Selective Sigma Detailer Mask Preview",
|
|
}
|
|
|
|
__all__ = ["NODE_CLASS_MAPPINGS", "NODE_DISPLAY_NAME_MAPPINGS"]
|