Back to Aurora Vision Library website

You are here: Start » Function Reference » Image » Image Enhancement » EqualizeImageHistogram

EqualizeImageHistogram


Header: AVL.h
Namespace: avl
Module: FoundationLite

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

Syntax

C++
C#
 
void avl::EqualizeImageHistogram
(
	const avl::Image& inImage,
	atl::Optional<const avl::Region&> inRoi,
	float inSaturateBrightestFraction,
	float inSaturateDarkestFraction,
	avl::Image& outImage
)

Parameters

Name Type Range Default Description
Input value inImage const Image& Input image
Input value inRoi Optional<const Region&> NIL Range of pixels to be processed
Input value inSaturateBrightestFraction float 0.0 - 1.0 0.0f Fraction of the brightest pixels skipped during normalization
Input value inSaturateDarkestFraction float 0.0 - 1.0 0.0f Fraction of the darkest pixels skipped during normalization
Output value outImage Image& Output image

Requirements

For input inImage only pixel formats are supported: 1⨯uint8.

Read more about pixel formats in Image documentation.

In-place Processing

This function supports in-place data processing - you can pass the same reference to inImage and outImage

Read more about In-place Computation.

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.

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.

See Also

  • ImageHistogram – Computes the histogram of the image pixel values.