Nodes/ComfyUI-CoCoTools/Split 3 Bands
ComfyUI Node

Split 3 Bands

Separate an image into low, medium, and high frequency

By Conor-Collins·Created 2 years ago·Updated about a year ago· 33
Split 3 Bands
  • image
  • Low Frequency Image
  • Medium Frequency Image
  • High Frequency Image
low_freq_radius5
medium_freq_radius10

Retouchers have known this trick for decades: an image is really two images stacked on top of each other - the broad tone and lighting, and the fine detail. Split them apart and you can work on each independently. Split 3 Bands (class SplitThreeBandsNode) does exactly that in ComfyUI, cutting an image into three frequency bands instead of the usual two.

Here's the mental model. "Low frequency" is the image heavily blurred - big areas of light and shadow, the overall shape. "High frequency" is the opposite: the fine detail, the texture, the edges, the stuff that makes an image look sharp. In between sits a medium band. ComfyUI's core nodes don't give you this decomposition directly, which is why this node exists - it's the still-image version of the frequency tools the pack's README lists as experimental work in progress.

How it works

One required input, two tuning knobs:

  • image - the input image
  • low_freq_radius (default 5) - how strongly the low band is blurred
  • medium_freq_radius (default 10) - the boundary for the medium band

The mechanism is classic frequency separation: the low band is a blurred copy, the high band is the original minus the medium-blurred version (the difference holds the detail), and the medium band sits between the two blur radii. Three outputs, one per band:

  • Low Frequency Image - tone and lighting
  • Medium Frequency Image - the in-between structures
  • High Frequency Image - the detail

Where it fits

The high band is the star. Boost it (recombine it with the low band at a higher weight) and you've sharpened the image with real control. Discard it and you've denoised - the "remove blemishes by smoothing the detail" retouch move. You can also isolate detail for texture transfer, or keep the low band as a lighting pass for relighting experiments. If your workflow is about making images sharper or smoother with intent, this is the tool.

The fiddly part is the radii, and it's the first thing to bite you. Set low_freq_radius too small and the "low" band still has texture in it; set the gap between the radii too wide and the medium band becomes a mess of both. Tune the low radius first, then the medium. This is a node you adjust by eyeballing the outputs, not by theory.

Installing it

This node ships in ComfyUI-CoCoTools, which is deprecated and unmaintained; the original repo URL has been 404ing on GitHub since at least August 2026 and the author's successor repo (ComfyUI-CoCoTools_IO) doesn't include it. Try ComfyUI Manager (search ComfyUI-CoCoTools) first, or clone manually:

cd ComfyUI/custom_nodes
git clone https://github.com/Conor-Collins/coco_tools

Install the pack's requirements (Windows portable, from python_embeded/):

python.exe -m pip install -r ./ComfyUI/custom_nodes/ComfyUI-CoCoTools/requirements.txt

Restart ComfyUI to pick the nodes up.

Gotchas

  • The outputs are separate images, not a packaged result. If you want a rebuilt image (e.g. boosted detail), you recombine the bands yourself with core image math or blend nodes - this node only does the splitting.
  • The radii are relative to image resolution. A radius of 5 that reads as fine detail on a 512 image is a different beast on a 4K one.
  • It's abandoned code with no upstream fixes. For a critical sharpening step, a maintained pack with frequency-separation nodes is the safer long-term home; for learning the technique and building a workflow today, this works fine.
CategoryCOCO Tools/Image Tools

Inputs (3)

NameTypeDefaultDescription
imageIMAGE
low_freq_radiusINT51–100
medium_freq_radiusINT101–100

Outputs (3)

NameTypeDescription
Low Frequency ImageIMAGE
Medium Frequency ImageIMAGE
High Frequency ImageIMAGE