|On this page|
Denoise attempts to remove noise in an image by reducing curvature in the image height field.
This process is slow. In many cases, the other noise suppression tools (Median, Degrain, and Blur) will suffice at a fraction of the speed.
The result is the removal of high frequency specks. However, unlike a blur, sharp edges can be maintained. Note that fine texture detail will be treated as noise and suppressed.
An interesting painterly effect can be achieved by first adding white noise to an image using the Noise COP and then applying a few dozen iterations of Denoise.
This operation may be restricted to certain planes, or components of planes. In addition, the operation may be applied to a subset of frames within the sequence. An image must have both its frame and plane scoped to be modified.
Images that are not modified are passed through, which does not take any memory or processing time.
This operation may be masked, which restricts the operation to an area of the image. The mask may be inverted, brightened or dimmed.
The mask input is on the side of the node. The label on the connector indicates the plane being used as a mask.
The mask input can also be scaled to fit the output image’s resolution, if they differ. If this node is changing constantly, and the mask is not, it is somewhat faster to put a Scale COP down to do the resize for the mask image. Otherwise, the scale will occur every time this node cooks.
Governs the number of rounds of denoising that will be performed on the image. Running time is proportional to the number of rounds. Additional iterations will increase the removal of noise at the expense of losing more fine detail.
A scale factor for the amount of diffusion to apply in each round of iteration. The total amount of diffusion will thus be this times the Iterations. However, if this is made too large, the process can become unstable and not converge to a good result.
Instead of operating on a single frame, perform the denoise calculation across the entire sequence. This requires the entire sequence be loaded into memory and processed at once, so may be infeasible for large images or long sequences. This will result in greater frame-to-frame coherency of the resulting denoising.
An internal cache is generated for each image plane (such as C or A) denoised. To save out the result in a file ROP it is recommended to only save one plane at a time so the cache can be used.
Acts as the conversion factor from pixel space into the three dimensional coordinates in which the denoising will occur. The relative magnitude of the pixel size is important, not the absolute values. This is primarily used for the Full Sequence mode to determine how far in Z one frame should be. Making the Z steps smaller or larger will affect the relative importance of temporal coherence versus spatial coherence.
A mask can be chosen to limit the effect of the operator to areas defined by the mask. The mask can be taken from the mask input (side input) or from the first input itself.
If no mask is present, this blends the output with the input by a constant amount (0 = all input, 1 = all output).
If a mask is present, this amount multiplies the mask.
Selects the mask plane to use as a mask from the mask input. The mask can be selected from:
A mask can be a component of a plane or an entire plane. If a vector plane is supplied as a mask, its components are multiplied by the images' components.
Scalar Mask ('A', 'C.r')
C.r = I.r * M C.g = I.g * M C.b = I.b * M
Vector Mask ('C')
C.r = I.r * M.r C.g = I.g * M.g C.b = I.b * M.b
Useful for masking the operation to the image’s own alpha plane.
Selects the mask from the side mask input.
Turns off masking, without requiring disconnection of the mask input (useful for temporarily disabling the mask).
Resize Mask to Fit Image
If the mask image is a different resolution than the output image, turning on this parameter will scale the mask to the output image’s resolution.
If this node is changing constantly, and the mask is not, it is somewhat faster to put a Scale COP down to do the resize for the mask image. Otherwise, the scale will occur every time this node cooks.
Inverts the mask so that all fully 'masked' portions become unmasked. This saves you from inserting an Invert COP after the node with the mask.
Specifies the scope for both the RGB components of Color, Alpha, and other planes. The (C)RGBA mask only affects Color components and Alpha. 'C' will toggle all the RGB components.
For planes other than Color and Alpha, the plane name (plus component, if applicable) should be specified in the string field. The pulldown menu can be used to select planes or components present in this node.
A plane is specified by its name. A component is specified by both its plane and component name. The '*' wildcard may be used to scope all extra planes. Any number of planes or components can be specified, separated by spaces.
P N.x N.y P N Pz
Allows scoping of specific frames in the frame range. This is in addition to the plane scope (so a plane at a certain frame must be both plane scoped and frame scoped to be modified).
All frames are scoped.
All frames inside a subrange are scoped.
All frames outside a subrange are scoped.
Even numbered frames are scoped.
Odd numbered frames are scoped.
A user-defined list of frames are scoped.
For Inside/Outside range, this parameter specifies the subrange of the sequence to scope (or unscope). This can be edited in Timeline viewer mode (⌃ Ctrl + 2 in viewer).
For Inside/Outside Range, this parameter specifies certain number of frames before and after to slowly ramp up to scoped. The operation will be blended with its input to 'ease in' or 'ease out' the scoping effect over a number of frames. This can be edited in Timeline viewer mode (⌃ Ctrl + 2 in viewer).
For unscoped frames, this sets the blend factor between the input and modified images. Normally this is zero (use the input image). By setting this to a non-zero value, you can make unscoped frames be 'slightly' unscoped. The value can vary between 0 (unscoped) and 1 (scoped).
The frame list for 'Specific Frames'. Frame numbers should be separated by spaces.
Automatically Adjust for Length Changes
If the sequence range changes, enabling this parameter will adjust the subrange and frame dropoff lengths to fit the new range.
Start of sequence
End of sequence
Input sequence length
Sequence frame rate
Number of planes in sequence
Width and height of image
Image index (0 at start frame)
Image time (0 at start frame)
Current plane array index
Current plane index
Num of channels in current plane
Composite Project X resolution
Composite Project Y resolution
Composite Project pixel aspect ratio
Composite Project raster depth
Composite Project black point
Composite Project white point