Table of Contents

Class HistogramEqualizationOptions

Namespace
SixLabors.ImageSharp.Processing.Processors.Normalization
Assembly
SixLabors.ImageSharp.dll

Data container providing the different options for the histogram equalization.

public class HistogramEqualizationOptions
Inheritance
HistogramEqualizationOptions
Inherited Members

Constructors

HistogramEqualizationOptions()

public HistogramEqualizationOptions()

Properties

ClipHistogram

Gets or sets a value indicating whether to clip the histogram bins at a specific value. It is recommended to use clipping when the AdaptiveTileInterpolation method is used, to suppress artifacts which can occur on the borders of the tiles. Defaults to false.

public bool ClipHistogram { get; set; }

Property Value

bool

ClipLimit

Gets or sets the histogram clip limit. Adaptive histogram equalization may cause noise to be amplified in near constant regions. To reduce this problem, histogram bins which exceed a given limit will be capped at this value. The exceeding values will be redistributed equally to all other bins. The clipLimit depends on the size of the tiles the image is split into and therefore the image size itself. Defaults to 350.

public int ClipLimit { get; set; }

Property Value

int

Remarks

LuminanceLevels

Gets or sets the number of different luminance levels. Typical values are 256 for 8-bit grayscale images or 65536 for 16-bit grayscale images. Defaults to 256.

public int LuminanceLevels { get; set; }

Property Value

int

Method

Gets or sets the histogram equalization method to use. Defaults to global histogram equalization.

public HistogramEqualizationMethod Method { get; set; }

Property Value

HistogramEqualizationMethod

NumberOfTiles

Gets or sets the number of tiles the image is split into (horizontal and vertically) for the adaptive histogram equalization. Defaults to 8.

public int NumberOfTiles { get; set; }

Property Value

int

SyncChannels

Gets or sets a value indicating whether to synchronize the scaling factor over all color channels. This parameter is only applicable to AutoLevel and is ignored for all others. Defaults to true.

public bool SyncChannels { get; set; }

Property Value

bool