πΈοΈ Adjust (jov)
The old Swiss-army image filter, still in old workflows
- pixels
- image
- mask
"Adjust (jov)" is Jovimetrix's all-in-one image filter, and the lowercase "(jov)" in the name is a time capsule. That's the pre-2.0 naming. In today's pack this functionality lives in ADJUST (JOV) πΈοΈ (and, as of 2.1, split even further into dedicated ADJUST: BLUR, ADJUST: EDGE, ADJUST: LIGHT and friends). If you opened an old workflow and this node is showing as missing, the node isn't dead - the pack just renamed and reorganized it, and you'll need to rewire.
What it does
One node, eight operations, pick one. You feed it any image and choose what to do:
- func - the operation. The eight options are BLUR, SHARPEN, EMBOSS, FIND_EDGES, CONTRAST, GAMMA, EXPOSURE, and INVERT. That's a nice spread: a denoise pass (blur), a crispening pass (sharpen), a bump-map look (emboss), an edge map (find edges), and three tonal fixes plus a channel invert.
- radius (INT, default 1) - the kernel size. Bigger radius = heavier blur or stronger emboss/edges. For sharpen you usually want it small.
- alpha (FLOAT, 0β1, default 1) - how much of the filtered result to mix into the output. At 1.0 you get the full effect; at 0.5 it's half-strength blended with the original. This is the "don't overshoot" dial and it's easy to forget.
Outputs are image and mask - the mask lets you take the filtered result and use it as a matte (FIND_EDGES is great for that, giving you a ready-made edge mask to drive a second pass). Everything is also a display node, so you can eyeball the result directly.
How it works
It's classic computer vision: each operation is a small matrix convolution or pixel transform, done with OpenCV under the hood. No model, no weights, no VRAM pressure - the whole thing is cheap enough to run mid-pipeline without thinking about it. That's typical Jovimetrix: procedural image math instead of neural inference.
Installing it
Jovimetrix installs the usual way:
- ComfyUI Manager - search "Jovimetrix", install.
- Manual -
git clone https://github.com/Amorano/Jovimetrix.gitintoComfyUI/custom_nodes/, thenpip install -r requirements.txt.
No models to download. The requirements pull in numpy, OpenCV (opencv-contrib-python), Pillow, matplotlib, and the author's cozy_comfyui helper library from GitHub. Needs ComfyUI 0.1.3+.
The naming gotcha (this is the real trap)
Because "Adjust (jov)" is the legacy name, a freshly installed current pack won't resolve it in old workflows. Two paths forward: search the current pack for ADJUST (JOV) πΈοΈ, which has the same func/radius/mix controls (plus a few more operations like pixelate, posterize and outline), or - if your workflow predates 2.1 - the even newer split nodes. The README warns that renames don't carry your connections over, so it's a manual swap. It's the same story as the pack's other renamed nodes (Route, Blend, Constant all went through this). Once you've swapped it once, you'll probably just reach for the current ADJUST node anyway - the old one is simpler, but the new one keeps the door open to more operations without adding complexity.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| pixels | * | β | |
| func | COMBO | BLUR | 8 options: BLUR, SHARPEN, EMBOSS, FIND_EDGES, CONTRAST, GAMMA, +2 |
| radiusopt | INT | 1 | β |
| alphaopt | FLOAT | 1.000β1 | β |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | β |
| mask | MASK | β |