Table of Contents

Class LearningBasedWB

Namespace
Emgu.CV.XPhoto
Assembly
Emgu.CV.dll

More sophisticated learning-based automatic white balance algorithm. As GrayworldWB, this algorithm works by applying different gains to the input image channels, but their computation is a bit more involved compared to the simple gray-world assumption. More details about the algorithm can be found in: Dongliang Cheng, Brian Price, Scott Cohen, and Michael S Brown. Effective learning-based illuminant estimation using simple features. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 1000-1008, 2015. To mask out saturated pixels this function uses only pixels that satisfy the following condition: max(R,G,B) / range_max_val < saturation_thresh Currently supports images of type CV_8UC3 and CV_16UC3.

public class LearningBasedWB : WhiteBalancer, IDisposable
Inheritance
LearningBasedWB
Implements
Inherited Members

Constructors

LearningBasedWB()

Create a learning based white balancer.

public LearningBasedWB()

Properties

HistBinNum

Defines the size of one dimension of a three-dimensional RGB histogram that is used internally by the algorithm. It often makes sense to increase the number of bins for images with higher bit depth (e.g. 256 bins for a 12 bit image).

public int HistBinNum { get; set; }

Property Value

int

RangeMaxVal

Maximum possible value of the input image (e.g. 255 for 8 bit images, 4095 for 12 bit images)

public int RangeMaxVal { get; set; }

Property Value

int

SaturationThreshold

Threshold that is used to determine saturated pixels, i.e. pixels where at least one of the channels exceeds saturation_threshold x range_max_val are ignored.

public float SaturationThreshold { get; set; }

Property Value

float

Methods

DisposeObject()

Release all the unmanaged memory associated with this white balancer

protected override void DisposeObject()