Nodes/ComfyUI-Image-Effects/๐Ÿค Pinch
ComfyUI Node

๐Ÿค Pinch

The Photoshop filter that still earns its place in ComfyUI

By orion4dยทCreated about a year agoยทUpdated about a year agoยท 28
๐Ÿค Pinch
  • image
  • IMAGE
โ—„strength0.5โ–บ
โ—„radius0.50โ–บ
โ—„center_x0.50โ–บ
โ—„center_y0.50โ–บ
โ—„falloff0.5โ–บ

You know that filter where the center of the image bulges up at you like a bubble, or sucks inward like a drain? That's Pinch, and this node is the ComfyUI version of it. It's a one-trick distortion - it warps the pixels around a point instead of regenerating anything - which makes it sound boring and makes it genuinely useful. AI images come out of the sampler geometrically "clean," and real lenses and real footage are not, so a targeted warp is a quick way to fake lens character or just mess with a composition.

This one comes from the same author as the rest of the Image Effects pack (orion4d), a 32-node collection that also gives you Spherize, Ripple, and Fisheye under Deformation. Pinch is the sibling you reach for when you want something more local than a whole-lens distortion: slimming a chin, exaggerating a nose tip, putting a "bulge" on a logo, or making a face look slightly wide-angle. People who do portrait work in ComfyUI usually end up here for touch-up warps that LoRA or inpainting would be overkill for.

How it warps

The math is a radial remap: it builds a lookup map for every pixel, then samples the image through OpenCV's remap. Positive strength pulls pixels toward the center - the classic "pinch" that magnifies whatever sits at the middle. Negative strength pushes them outward, which reads as a bulge or indentation. The radius decides how far from the center the effect reaches; beyond it, the image is untouched.

The controls that actually matter:

  • strength (default 0.5, range โˆ’2 to 2) - the whole point. Positive pinches inward, negative bulges outward. Keep it under 1 for anything that should still look like a photograph.
  • radius (default 0.5) - how wide the affected zone is, as a fraction of the image's smaller dimension.
  • center_x / center_y - move the warp off-center. Set these to place a bulge exactly on a face without cropping first.
  • falloff (default 0.5) - the softness of the transition between warped and untouched. Low values give a hard-edged bubble; high values spread the warp out gradually.

Output is a single IMAGE, so it chains into anything downstream - including another deformation node, if you want a pinch and a ripple stacked for maximum weirdness.

Where it trips people up

Two things to know before you queue a big batch. First, this is CPU math in pure Python - it rebuilds a coordinate map with a per-pixel loop, and at 1024ร—1024 that's a million iterations per run. Expect a visible pause; it's normal, not a hang. Second, like every effect node in this pack, it only processes the first frame of whatever tensor you feed it. A video or a batch of four images means the other three silently don't get pinched. Fine for single shots, a trap for anything animated.

Install

ComfyUI Manager: search ComfyUI-Image-Effects. Or the manual route:

cd ComfyUI/custom_nodes
git clone https://github.com/orion4d/ComfyUI-Image-Effects.git
cd ComfyUI-Image-Effects
pip install -r requirements.txt

Restart, and it's under right-click โ†’ Add Node โ†’ Image Effects. No models, no weights, no downloads - it's numpy and OpenCV doing all the work, so it runs anywhere.

One install note that applies to the whole pack: the requirements.txt lists some heavy optional stuff (a cupy-cuda11x line, torch, scikit-image) that the actual node code never imports. If pip chokes on those, you can install just numpy opencv-python scipy Pillow - torch already ships with ComfyUI - and these nodes run fine.

CategoryImage Effects

Inputs (6)

NameTypeDefaultDescription
imageIMAGEโ€”
strengthFLOAT0.5-2โ€“2โ€”
radiusFLOAT0.500.1โ€“1โ€”
center_xoptFLOAT0.500โ€“1โ€”
center_yoptFLOAT0.500โ€“1โ€”
falloffoptFLOAT0.50โ€“1โ€”

Outputs (1)

NameTypeDescription
IMAGEIMAGEโ€”