Back to Aurora Vision Library website

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

NormalizeLocalBrightness_Mean


Header: AVL.h
Namespace: avl
Module: FoundationBasic

Normalizes local brightness of the image. Internally uses Mean smoothing.

Applications: Compensates uneven illumination.

Syntax

C++
C#
 
void avl::NormalizeLocalBrightness_Mean
(
	const avl::Image& inImage,
	atl::Optional<const avl::Region&> inRoi,
	int inRadiusX,
	atl::Optional<int> inRadiusY,
	float inTargetMean,
	float inGammaValue,
	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 inRadiusX int 0 - 10 Nearly half of the kernel's width (2*R+1)
Input value inRadiusY Optional<int> 0 - NIL Nearly half of the kernel's height (2*R+1), or same as inRadiusX
Input value inTargetMean float 128.0f Target mean brightness
Input value inGammaValue float 0.01 - 8.0 1.0f Gamma coefficient, where 1.0 is neutral
Output value outImage Image& Output image

Description

This filter normalizes every pixels brightness to inTargetMean based on a local average calculated using SmoothImage_Mean passing to it parameters inRadiusX and inRadiusY.

Gamma correction can be performed on the image before normalization through the inGammaValue parameter.

Examples

Example image

Output of NormalizeLocalBrightness_Mean

Hardware Acceleration

This operation supports automatic parallelization for multicore and multiprocessor systems.

See Also

  • NormalizeImage – Rescales an image linearly, so that its minimum becomes inNewMinimum and the maximum of the remaining pixels becomes inNewMaximum.
  • SmoothImage_Mean – Smooths an image by averaging pixels within a rectangular kernel.