LensDistortion node

pluginIcon

This documentation is for version 4.0 of LensDistortion (net.sf.openfx.LensDistortion).

Description

Add or remove lens distortion, or produce an STMap that can be used to apply that transform.

The region of definition of the transformed image is computed from the region of definition of the Source input. If the input is defined outside of the project format, this may result in a very large region. A Crop effect may be inserted before LensDistortion to avoid this. If the input region of definition is inside the format, the Crop To Format parameter may be used to avoid expanding it.

LensDistortion can directly apply distortion/undistortion, but if the distortion parameters are not animated, the most efficient way to use LensDistortion and avoid repeated distortion function calculations is the following:

  • If the footage size is not the same as the project size, insert a FrameHold plugin between the footage to distort or undistort and the Source input of LensDistortion. This connection is only used to get the size of the input footage.

  • Set Output Mode to “STMap” in LensDistortion.

  • feed the LensDistortion output into the UV input of STMap, and feed the footage into the Source input of STMap.

This plugin concatenates transforms upstream.

Inputs

Input

Description

Optional

Source

Yes

Mask

Yes

Controls

Parameter / script name

Type

Default

Function

Format / extent

Choice

Default

Reference format for lens distortion.
Format (format): Use a pre-defined image format.
Size (size): Use a specific extent (size and offset).
Project (project): Use the project extent (size and offset).
Default (default): Use the default extent (e.g. the source clip extent, if connected).

Center / recenter

Button

Centers the region of definition to the input region of definition. If there is no input, then the region of definition is centered to the project window.

Format / NatronParamFormatChoice

Choice

HD 1920x1080

The output format
PC_Video 640x480 (PC_Video)
NTSC 720x486 0.91 (NTSC)
PAL 720x576 1.09 (PAL)
NTSC_16:9 720x486 1.21 (NTSC_16:9)
PAL_16:9 720x576 1.46 (PAL_16:9)
HD_720 1280x720 (HD_720)
HD 1920x1080 (HD)
UHD_4K 3840x2160 (UHD_4K)
1K_Super_35(full-ap) 1024x778 (1K_Super_35(full-ap))
1K_Cinemascope 914x778 2.00 (1K_Cinemascope)
2K_Super_35(full-ap) 2048x1556 (2K_Super_35(full-ap))
2K_Cinemascope 1828x1556 2.00 (2K_Cinemascope)
2K_DCP 2048x1080 (2K_DCP)
4K_Super_35(full-ap) 4096x3112 (4K_Super_35(full-ap))
4K_Cinemascope 3656x3112 2.00 (4K_Cinemascope)
4K_DCP 4096x2160 (4K_DCP)
square_256 256x256 (square_256)
square_512 512x512 (square_512)
square_1K 1024x1024 (square_1K)
square_2K 2048x2048 (square_2K)

Bottom Left / bottomLeft

Double

x: 0 y: 0

Coordinates of the bottom left corner of the size rectangle.

Size / size

Double

w: 1 h: 1

Width and height of the size rectangle.

Model / model

Choice

Nuke

Choice of the distortion model, i.e. the function that goes from distorted to undistorted image coordinates.
Nuke (nuke): The model used in Nuke’s LensDistortion plugin.
PFBarrel (pfbarrel): The PFBarrel model used in PFTrack by PixelFarm.
3DE Classic (3declassic): Degree-2 anamorphic and degree-4 radial mixed model, used in 3DEqualizer by Science-D-Visions. Works, but it is recommended to use 3DE4 Radial Standard Degree 4 or 3DE4 Anamorphic Standard Degree 4 instead.
3DE4 Anamorphic Degree 6 (3deanamorphic6): Degree-6 anamorphic model, used in 3DEqualizer by Science-D-Visions.
3DE4 Radial Fisheye Degree 8 (3defisheye8): Radial lens distortion model with equisolid-angle fisheye projection, used in 3DEqualizer by Science-D-Visions.
3DE4 Radial Standard Degree 4 (3deradial4): Radial lens distortion model, a.k.a. radial decentered cylindric degree 4, which compensates for decentered lenses (and beam splitter artefacts in stereo rigs), used in 3DEqualizer by Science-D-Visions.
3DE4 Anamorphic Standard Degree 4 (3deanamorphic4): Degree-4 anamorphic model with anamorphic lens rotation, which handles ‘human-touched’ mounted anamorphic lenses, used in 3DEqualizer by Science-D-Visions.
PanoTools (panotools): The model used in PanoTools, PTGui, PTAssembler, Hugin. See http://wiki.panotools.org/Lens_correction_model

Direction / direction

Choice

Distort

Should the output correspond to applying or to removing distortion.
Distort: The output corresponds to applying distortion.
Undistort: The output corresponds to removing distortion.

Output Mode / outputMode

Choice

Image

Choice of the output, which may be either a distorted/undistorted image, or a distortion/undistortion STMap.
Image: The output is the distorted/undistorted Source.
STMap: The output is a distortion/undistortion STMap. It is recommended to insert a FrameHold node at the Source input so that the STMap is computed only once if the parameters are not animated.

K1 / k1

Double

0

Nuke: First radial distortion coefficient (coefficient for r^2).

K2 / k2

Double

0

Nuke: Second radial distortion coefficient (coefficient for r^4).

Center / center

Double

x: 0 y: 0

Nuke: Offset of the distortion center from the image center.

Squeeze / anamorphicSqueeze

Double

1

Nuke: Anamorphic squeeze (only for anamorphic lens).

Asymmetric / asymmetricDistortion

Double

x: 0 y: 0

Nuke: Asymmetric distortion (only for anamorphic lens).

File / pfFile

N/A

The location of the PFBarrel .pfb file to use. Keyframes are set if present in the file.

C3 / pfC3

Double

0

PFBarrel: Low order radial distortion coefficient.

C5 / pfC5

Double

0

PFBarrel: Low order radial distortion coefficient.

Center / pfP

Double

x: 0.5 y: 0.5

PFBarrel: The distortion center of the lens (specified as a factor rather than a pixel value)

Squeeze / pfSqueeze

Double

1

PFBarrel: Anamorphic squeeze (only for anamorphic lens).

fov left [unit coord] / tde4_field_of_view_xa_unit

Double

0

3DE4: Field of view.

fov bottom [unit coord] / tde4_field_of_view_ya_unit

Double

0

3DE4: Field of view.

fov right [unit coord] / tde4_field_of_view_xb_unit

Double

1

3DE4: Field of view.

fov top [unit coord] / tde4_field_of_view_yb_unit

Double

1

3DE4: Field of view.

tde4 focal length [cm] / tde4_focal_length_cm

Double

1

3DE4: Focal length.

tde4 focus distance [cm] / tde4_custom_focus_distance_cm

Double

100

3DE4: Focus distance.

tde4 filmback width [cm] / tde4_filmback_width_cm

Double

0.8

3DE4: Filmback width.

tde4 filmback height [cm] / tde4_filmback_height_cm

Double

0.6

3DE4: Filmback height.

tde4 lens center offset x [cm] / tde4_lens_center_offset_x_cm

Double

0

3DE4: Lens center horizontal offset.

tde4 lens center offset y [cm] / tde4_lens_center_offset_y_cm

Double

0

3DE4: Lens center vertical offset.

tde4 pixel aspect / tde4_pixel_aspect

Double

1

3DE4: Pixel aspect ratio.

Distortion / tde4_Distortion

Double

0

3DE Classic: Distortion.

Anamorphic Squeeze / tde4_Anamorphic_Squeeze

Double

1

3DE Classic: Anamorphic Squeeze.

Curvature X / tde4_Curvature_X

Double

0

3DE Classic: Curvature X.

Curvature Y / tde4_Curvature_Y

Double

0

3DE Classic: Curvature Y.

Quartic Distortion / tde4_Quartic_Distortion

Double

0

3DE Classic: Quartic Distortion.

Distortion - Degree 2 / tde4_Distortion_Degree_2

Double

0

3DE Standard and Fisheye: Distortion.

U - Degree 2 / tde4_U_Degree_2

Double

0

3DE Standard: U - Degree 2.

V - Degree 2 / tde4_V_Degree_2

Double

0

3DE Standard: V - Degree 2.

Quartic Distortion - Degree 4 / tde4_Quartic_Distortion_Degree_4

Double

0

3DE Standard and Fisheye: Quartic Distortion - Degree 4.

U - Degree 4 / tde4_U_Degree_4

Double

0

3DE Standard: U - Degree 4.

V - Degree 4 / tde4_V_Degree_4

Double

0

3DE Standard: V - Degree 4.

Phi - Cylindric Direction / tde4_Phi_Cylindric_Direction

Double

0

3DE Standard: Phi - Cylindric Direction.

B - Cylindric Bending / tde4_B_Cylindric_Bending

Double

0

3DE Standard: B - Cylindric Bending.

Cx02 - Degree 2 / tde4_Cx02_Degree_2

Double

0

3DE Anamorphic 4 and 6: Cx02 - Degree 2.

Cy02 - Degree 2 / tde4_Cy02_Degree_2

Double

0

3DE Anamorphic 4 and 6: Cy02 - Degree 2.

Cx22 - Degree 2 / tde4_Cx22_Degree_2

Double

0

3DE Anamorphic 4 and 6: Cx22 - Degree 2.

Cy22 - Degree 2 / tde4_Cy22_Degree_2

Double

0

3DE Anamorphic 4 and 6: Cy22 - Degree 2.

Cx04 - Degree 4 / tde4_Cx04_Degree_4

Double

0

3DE Anamorphic 4 and 6: Cx04 - Degree 4.

Cy04 - Degree 4 / tde4_Cy04_Degree_4

Double

0

3DE Anamorphic 4 and 6: Cy04 - Degree 4.

Cx24 - Degree 4 / tde4_Cx24_Degree_4

Double

0

3DE Anamorphic 4 and 6: Cx24 - Degree 4.

Cy24 - Degree 4 / tde4_Cy24_Degree_4

Double

0

3DE Anamorphic 4 and 6: Cy24 - Degree 4.

Cx44 - Degree 4 / tde4_Cx44_Degree_4

Double

0

3DE Anamorphic 4 and 6: Cx44 - Degree 4.

Cy44 - Degree 4 / tde4_Cy44_Degree_4

Double

0

3DE Anamorphic 4 and 6: Cy44 - Degree 4.

Cx06 - Degree 6 / tde4_Cx06_Degree_6

Double

0

3DE Anamorphic 6: Cx06 - Degree 6.

Cy06 - Degree 6 / tde4_Cy06_Degree_6

Double

0

3DE Anamorphic 6: Cy06 - Degree 6.

Cx26 - Degree 6 / tde4_Cx26_Degree_6

Double

0

3DE Anamorphic 6: Cx26 - Degree 6.

Cy26 - Degree 6 / tde4_Cy26_Degree_6

Double

0

3DE Anamorphic 6: Cy26 - Degree 6.

Cx46 - Degree 6 / tde4_Cx46_Degree_6

Double

0

3DE Anamorphic 6: Cx46 - Degree 6.

Cy46 - Degree 6 / tde4_Cy46_Degree_6

Double

0

3DE Anamorphic 6: Cy46 - Degree 6.

Cx66 - Degree 6 / tde4_Cx66_Degree_6

Double

0

3DE Anamorphic 6: Cx66 - Degree 6.

Cy66 - Degree 6 / tde4_Cy66_Degree_6

Double

0

3DE Anamorphic 6: Cy66 - Degree 6.

Lens Rotation 4 / tde4_Lens_Rotation

Double

0

3DE Anamorphic 4: Lens Rotation 4.

Squeeze-X / tde4_Squeeze_X

Double

1

3DE Anamorphic 4: Squeeze-X.

Squeeze-Y / tde4_Squeeze_Y

Double

1

3DE Anamorphic 4: Squeeze-Y.

Degree 6 / tde4_Degree_6

Double

0

3DE Fisheye: Degree 6.

Degree 8 / tde4_Degree_8

Double

0

3DE Fisheye: Degree 8.

a / pt_a

Double

0

PanoTools: Radial lens distortion 3rd degree coefficient a.

b / pt_b

Double

0

PanoTools: Radial lens distortion 2nd degree coefficient b.

c / pt_c

Double

0

PanoTools: Radial lens distortion 1st degree coefficient c.

d / pt_d

Double

0

PanoTools: Horizontal lens shift (in pixels).

e / pt_e

Double

0

PanoTools: Vertical lens shift (in pixels).

g / pt_g

Double

0

PanoTools: Vertical lens shear (in pixels). Use to remove slight misalignment of the line scanner relative to the film transport.

t / pt_t

Double

0

PanoTools: Horizontal lens shear (in pixels).

Filter / filter

Choice

Cubic

Filtering algorithm - some filters may produce values outside of the initial range (*) or modify the values even if there is no movement (+).
Impulse (impulse): (nearest neighbor / box) Use original values.
Box (box): Integrate the source image over the bounding box of the back-transformed pixel.
Bilinear (bilinear): (tent / triangle) Bilinear interpolation between original values.
Cubic (cubic): (cubic spline) Some smoothing.
Keys (keys): (Catmull-Rom / Hermite spline) Some smoothing, plus minor sharpening (*).
Simon (simon): Some smoothing, plus medium sharpening (*).
Rifman (rifman): Some smoothing, plus significant sharpening (*).
Mitchell (mitchell): Some smoothing, plus blurring to hide pixelation (*)(+).
Parzen (parzen): (cubic B-spline) Greatest smoothing of all filters (+).
Notch (notch): Flat smoothing (which tends to hide moire’ patterns) (+).

Clamp / clamp

Boolean

Off

Clamp filter output within the original range - useful to avoid negative values in mattes

Black outside / black_outside

Boolean

Off

Fill the area outside the source image with black

Crop To Format / cropToFormat

Boolean

On

If the source is inside the format and the effect extends it outside of the format, crop it to avoid unnecessary calculations. To avoid unwanted crops, only the borders that were inside of the format in the source clip will be cropped.

Use Source RoD / useRoD

Boolean

Off

Use the region of definition of the source as the source format.

(Un)premult / premult

Boolean

Off

Divide the image by the alpha channel before processing, and re-multiply it afterwards. Use if the input images are premultiplied.

Invert Mask / maskInvert

Boolean

Off

When checked, the effect is fully applied where the mask is 0.

Mix / mix

Double

1

Mix factor between the original and the transformed image.