Nodes/comfyui-colorfix-v3/Tile ColorFix+Sharp Patcher
ComfyUI Node

Tile ColorFix+Sharp Patcher

ColorFix with the A1111 sharp variant's CFG trick

By ihorpankin·Created 6 months ago·Updated 6 months ago· 6
Tile ColorFix+Sharp Patcher
  • model
  • ref_latent
  • model
blur_k8
weight1.00
sharpness1.00
blur_modebox (A1111 original)

This is Tile ColorFix Patcher's sharper sibling - the same low-frequency color swap, plus detail enhancement. In A1111 this was the "tile_colorfix+sharp" preprocessor, and the sharpening there is a genuinely clever hack: it works through CFG.

Here's the trick. Instead of sharpening the image directly, the node computes two versions of the color-fixed latent - the full detail version for the conditional path, and a deliberately softened version for the unconditional path. CFG then amplifies the difference between them, and the difference is the detail. Result: the model's texture gets boosted without you having to babysit a separate sharpening step.

Concretely, from the A1111 source:

detail_weight = sharpness * 0.01
neg = detail_weight * blur(x0, k) + (1 - detail_weight) * x0
x0 = cond_mark * x0 + (1 - cond_mark) * neg

The sharpness input maps to detail_weight via the ×0.01 scale, so the range is small and meaningful: 0.0 = no sharpening, 1.0 = a subtle detail boost, 2.0 = aggressive.

The inputs that matter

  • sharpness - 0–2, default 1.0. This is the "A1111 Sharpness" parameter. Unlike the Flux variant, which sharpens directly, this one is a no-op at CFG 1.0 because there's no gap to amplify.
  • ref_latent - the VAE-encoded reference, source of the color palette. Use the VAE that matches your checkpoint.
  • blur_k - frequency split, default 8, range 3–32. Larger = more aggressive color transfer.
  • weight - 0–1 color fix strength, default 1.
  • blur_mode - box (A1111 original) for exact match, gaussian (smoother) if you hit patchy color artifacts standalone.

Output is the patched model, straight into your KSampler.

Install

Pure Python, no requirements.txt, no models:

cd ComfyUI/custom_nodes
git clone https://github.com/ihorpankin/comfyui-colorfix-v3.git

Restart ComfyUI; it's under colorfix-v3. ComfyUI Manager: search "comfyui-colorfix-v3".

Where people get burned

The CFG dependency is the big one. This node's sharpening only exists if you're running CFG above 1.0 - at CFG 1.0 the cond and uncond paths are the same, there's no difference to amplify, and you've effectively paid for a color fix with a useless sharpness knob. If you're a low-CFG or distilled-model user, you want the Flux-style direct sharpening instead, or just the base patcher. Second: don't crank sharpness to 2.0 as a starting point. Subtle first; the CFG trick amplifies fast, and the failure mode is harsh, crunchy detail. Start at 1.0 or below and let the color fix do the heavy lifting.

Categorycolorfix-v3

Inputs (6)

NameTypeDefaultDescription
modelMODEL
ref_latentLATENTVAE-encoded control/reference image. Connect from VAE Encode node. This provides the color palette to transfer.
blur_kINT83–32Blur kernel radius (A1111 'Variation'). Controls frequency split point. Larger = more aggressive color transfer.
weightFLOAT1.000–1Color fix strength. 0.0 = no correction, 1.0 = full color replacement.
sharpnessFLOAT1.000–2Detail enhancement strength (A1111 'Sharpness'). Internally mapped to detail_weight = sharpness * 0.01. 0.0 = no sharpening, 1.0 = subtle detail boost, 2.0 = more aggressive sharpening.
blur_modeCOMBObox (A1111 original)Blur algorithm for frequency split. Box = A1111 exact match, sharp cutoff. Gaussian = smoother falloff, reduces patchy artifacts.

Outputs (1)

NameTypeDescription
modelMODEL