Nodes/ComfyUI-Apt_Preset/Image_CnMapMix_visual
ComfyUI Node

Image_CnMapMix_visual

The same blend engine as Image_CnMapMix, previewed inline

By cardenluo·Created 2 years ago·Updated 22 days ago· 309
Image_CnMapMix_visual
  • image1
  • image2
  • mask2
  • IMAGE
bg_colorimage
blur_10
blur_20
diff_sensitivity0.00
diff_blur0
blend_mode
blend_factor0.50
contrast1.0
brightness0.00
mask2_smoothness0
invert_maskfalse
image1_min_black0.00
image1_max_white1.00
image2_min_black0.00
image2_max_white1.00

Same node, same math, different category. Every parameter here - blend_mode, blend_factor, the per-layer levels, the automatic diff mask, mask2 - means exactly what it means on the plain Image_CnMapMix node, right down to the default values. What's different is one flag: is_output_node is true here, which is how the pack marks the batch of nodes it added on 2026-03-22 specifically for on-canvas visualization. Practically, that means ComfyUI renders this node's output image directly in the graph even when nothing is wired to its output socket - you get an inline preview without dragging in a separate Preview Image node.

Why you'd pick this one over the plain version

If you're actively dialing in a blend - trying blend modes, nudging diff_sensitivity to isolate exactly where two control maps diverge, adjusting mask2_smoothness - you want to see the result immediately, and Image_CnMapMix_visual gives you that without extra wiring. Once you're happy with the settings and the node is genuinely feeding something downstream, either node works identically; swap to plain Image_CnMapMix if you'd rather not have the pack render an inline preview on every run, or just leave this one in place - functionally it makes no difference once it's wired up.

The inputs and outputs that matter

Read the Image_CnMapMix article for the full mechanism - bg_color, blur_1/blur_2, diff_sensitivity/diff_blur, blend_mode/blend_factor, contrast/brightness, mask2/mask2_smoothness/invert_mask, and the per-image min_black/max_white levels pairs are identical fields with identical defaults. The only structural difference is the is_output_node flag and, by extension, the category (visualize_edit rather than ImgLayer) the pack files it under.

How to install it

Same pack as its sibling - via ComfyUI Manager, search ComfyUI-Apt_Preset and install; or manually clone https://github.com/cardenluo/ComfyUI-Apt_Preset.git into ComfyUI/custom_nodes, then Windows users run install.bat and Linux/Mac users pip install -r ComfyUI-Apt_Preset/requirements.txt in their venv, and restart. Nothing extra to fetch for this specific node.

Common issues & troubleshooting

Every _visual node in your graph renders, not just the last one. Because is_output_node is true, ComfyUI executes and displays this node's result on every run regardless of whether anything downstream uses it. If you've got several _visual nodes from this pack queued in one workflow, expect all of them to render their previews, which can slow down iteration slightly compared to a graph with only plain, non-output nodes doing the same math.

Confusing this for a different node than Image_CnMapMix. It isn't - same class of behavior, same parameters. If you're troubleshooting a blend that isn't doing what you expect (wrong blend_mode assumption, blend_factor near 0, mismatched source resolutions), the fixes in the Image_CnMapMix article apply here unchanged.

CategoryApt_Preset/image/visualize_edit

Inputs (18)

NameTypeDefaultDescription
bg_colorCOMBOimage4 options: image, white, black, gray
blur_1INT00–1000
blur_2INT00–1000
diff_sensitivityFLOAT0.00-0.2–0.2
diff_blurINT00–1000
blend_modeCOMBO10 options: normal, multiply, screen, overlay, soft_light, difference, +4
blend_factorFLOAT0.500–1
contrastFLOAT1.00–3
brightnessFLOAT0.00-1–1
mask2_smoothnessINT00–500
invert_maskBOOLEANfalse
image1_min_blackFLOAT0.000–1
image1_max_whiteFLOAT1.000–1
image2_min_blackFLOAT0.000–1
image2_max_whiteFLOAT1.000–1
image1optIMAGE
image2optIMAGE
mask2optMASK

Outputs (1)

NameTypeDescription
IMAGEIMAGE