Nodes/ComfyUI-Image-Effects/๐Ÿ  Fisheye
ComfyUI Node

๐Ÿ  Fisheye

Real Fisheye Lens Mapping, Not a Fake Warp

By orion4dยทCreated about a year agoยทUpdated about a year agoยท 28
๐Ÿ  Fisheye
  • image
  • IMAGE
โ—„fov180โ–บ
โ—„mappingequidistantโ–บ
โ—„formatfullframeโ–บ
โ—„center_x0.50โ–บ
โ—„center_y0.50โ–บ
โ—„strength1.0โ–บ

Fisheye is the pack's most technically serious distortion node - it implements actual fisheye lens projection models rather than a one-slider fake warp. If you want an image to look like it was shot through a real ultra-wide circular lens - the kind of bend that screams "action camera" or "security cam" - this is the one. It's the showier cousin of the pack's Barrel Distortion: barrel bends the edges, fisheye wraps the image into a sphere.

It belongs in the Deformation category, and like the rest of the pack it's a post-process you drop on an image that already exists. Pair it with the VHS Glitch or Film Grain nodes and you've got a convincing low-res CCTV aesthetic.

How it works

The node remaps the image from a distortion center using a radial projection, and the mapping dropdown picks which mathematical model of fisheye optics to use - equidistant, equisolid, orthographic, and stereographic are all real fisheye projection formulas with different falloff curves. This is the detail that separates it from a generic warp: choose orthographic and the image genuinely folds toward a spherical look; choose equidistant and you get the "angular distance preserved" mapping real cameras approximate.

The format choice sets the framing: fullframe distorts the whole rectangle, while circular masks the result into the classic fisheye circle with the corners going black. fov (30โ€“360, default 180) is your field-of-view - crank past 180 for that surreal wrap-around. Everything is done with cv2.remap and bilinear interpolation, so edges stay handled and the result stays sharp.

The inputs that matter

  • fov (30โ€“360, default 180) - field of view; higher = more extreme bend.
  • mapping - equidistant (default), equisolid, orthographic, stereographic. The projection model, and the most interesting knob once you know what they do.
  • format - fullframe or circular.
  • center_x / center_y (default 0.5) - where the bubble's center lands.
  • strength (0.1โ€“2, default 1) - overall effect scale, for a subtler application than full fisheye.

Output is the warped IMAGE.

Installing it

Part of ComfyUI-Image-Effects (Orion4D). ComfyUI Manager โ†’ search "Image Effects", or:

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

Restart, then it's under Add Node โ†’ Image Effects. Needs OpenCV (it's the remap engine) - already in the pack's requirements.

Gotchas

Standard pack behavior: only the first image of a batch is processed, CPU-bound, so a 4K remap takes a beat. The thing to know about fisheye is that the content matters: faces near the frame edges get stretched grotesquely - that's authentic, but if you want the "look" without melting your subject, keep the important content near center and let the background take the distortion. If circular mode leaves hard edges, check that the effect is actually applied before any crop, since the black corners are part of the look.

CategoryImage Effects

Inputs (7)

NameTypeDefaultDescription
imageIMAGEโ€”
fovFLOAT18030โ€“360โ€”
mappingCOMBOequidistant4 options: equidistant, equisolid, orthographic, stereographic
formatCOMBOfullframe2 options: fullframe, circular
center_xoptFLOAT0.500โ€“1โ€”
center_yoptFLOAT0.500โ€“1โ€”
strengthoptFLOAT1.00.1โ€“2โ€”

Outputs (1)

NameTypeDescription
IMAGEIMAGEโ€”