Table of Contents

Method FastNlMeansDenoisingMulti

Namespace
OpenCvSharp
Assembly
OpenCvSharp.dll

FastNlMeansDenoisingMulti(IEnumerable<Mat>, OutputArray, int, int, float, int, int)

Modification of fastNlMeansDenoising function for images sequence where consequtive images have been captured in small period of time. For example video. This version of the function is for grayscale images or for manual manipulation with colorspaces.

public static void FastNlMeansDenoisingMulti(IEnumerable<Mat> srcImgs, OutputArray dst, int imgToDenoiseIndex, int temporalWindowSize, float h = 3, int templateWindowSize = 7, int searchWindowSize = 21)

Parameters

srcImgs IEnumerable<Mat>

Input 8-bit 1-channel, 2-channel or 3-channel images sequence. All images should have the same type and size.

dst OutputArray

Output image with the same size and type as srcImgs images.

imgToDenoiseIndex int

Target image to denoise index in srcImgs sequence

temporalWindowSize int

Number of surrounding images to use for target image denoising. Should be odd. Images from imgToDenoiseIndex - temporalWindowSize / 2 to imgToDenoiseIndex - temporalWindowSize / 2 from srcImgs will be used to denoise srcImgs[imgToDenoiseIndex] image.

h float

Parameter regulating filter strength for luminance component. Bigger h value perfectly removes noise but also removes image details, smaller h value preserves details but also preserves some noise

templateWindowSize int

Size in pixels of the template patch that is used to compute weights. Should be odd. Recommended value 7 pixels

searchWindowSize int

Size in pixels of the window that is used to compute weighted average for given pixel. Should be odd. Affect performance linearly: greater searchWindowsSize - greater denoising time. Recommended value 21 pixels