Click or drag to resize
LearningBasedWB Class
http://www.emgu.com
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.
Inheritance Hierarchy

Namespace:  Emgu.CV.XPhoto
Assembly:  Emgu.CV.World (in Emgu.CV.World.dll) Version: 3.3.0.2824 (3.3.0.2824)
Syntax
public class LearningBasedWB : WhiteBalancer

The LearningBasedWB type exposes the following members.

Constructors
  NameDescription
Public methodLearningBasedWB
Create a learning based white balancer.
Top
Properties
  NameDescription
Public propertyHistBinNum
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 propertyPtr
Pointer to the unmanaged object
(Inherited from UnmanagedObject.)
Public propertyRangeMaxVal
Maximum possible value of the input image (e.g. 255 for 8 bit images, 4095 for 12 bit images)
Public propertySaturationThreshold
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.
Top
Methods
  NameDescription
Public methodBalanceWhite
Applies white balancing to the input image.
(Inherited from WhiteBalancer.)
Public methodDispose
The dispose function that implements IDisposable interface
(Inherited from DisposableObject.)
Protected methodDisposeObject
Release all the unmanaged memory associated with this white balancer
(Overrides WhiteBalancerDisposeObject.)
Public methodEquals (Inherited from Object.)
Protected methodFinalize
Destructor
(Inherited from DisposableObject.)
Public methodGetHashCode (Inherited from Object.)
Public methodGetType (Inherited from Object.)
Protected methodMemberwiseClone (Inherited from Object.)
Protected methodReleaseManagedResources
Release the managed resources. This function will be called during the disposal of the current object. override ride this function if you need to call the Dispose() function on any managed IDisposable object created by the current object
(Inherited from DisposableObject.)
Public methodToString (Inherited from Object.)
Top
Fields
  NameDescription
Protected field_ptr
A pointer to the unmanaged object
(Inherited from UnmanagedObject.)
Protected field_whiteBalancerPtr
Pointer to the native white balancer object
(Inherited from WhiteBalancer.)
Top
See Also