You are here: Start » AVL.NET » Function Reference » Image » Image Enhancement » AVL.EqualizeImageHistogram

AVL.EqualizeImageHistogram

Maps image pixels to new values to achieve uniform distribution of intensities in the range (0, 255).

Namespace:AvlNet
Assembly:AVL.NET.dll

Syntax

C++
C#
 
public static void EqualizeImageHistogram
(
	AvlNet.Image inImage,
	float inSaturateBrightestFraction,
	float inSaturateDarkestFraction,
	AvlNet.Image outImage
)

Parameters

Name Type Range Default Description
inImageAvlNet.ImageInput image.
inSaturateBrightestFractionfloat<0.0f, 1.0f>0.0fFraction of the brightest pixels skipped during normalization. Default value: 0.0f.
inSaturateDarkestFractionfloat<0.0f, 1.0f>0.0fFraction of the darkest pixels skipped during normalization. Default value: 0.0f.
outImageAvlNet.ImageOutput image.

Description

The filter applies non-linear mapping to image pixel values so that pixel intensities of the resulting image are evenly distributed in range from 0 to 255.

The operation computes the cumulative histogram \(C\) of inImage and the image size \(N\). Then the result is computed as follows:

\[ \begin{aligned} outImage[i,j] &= C[ inImage[i,j] ] \times \frac{255}{N} \end{aligned} \]

Examples

EqualizeImageHistogram run on example image.

Hardware Acceleration

This operation supports automatic parallelization for multicore and multiprocessor systems.

Hardware acceleration settings may be manipulated with Settings class.

Errors

List of possible exceptions:

Error type Description
DomainError Region exceeds an input image in EqualizeImageHistogram.
DomainError The sum of inSaturateBrightestFraction and inSaturateDarkestFraction can't be greater than 1 in EqualizeImageHistogram.
DomainError Not supported inImage pixel format in EqualizeImageHistogram. Supported formats: 1xUInt8.

Function Overrides

See also