OpenCV for Unity 2.6.4
Enox Software / Please refer to OpenCV official document ( http://docs.opencv.org/4.10.0/index.html ) for the details of the argument of the method.
Loading...
Searching...
No Matches
OpenCVForUnity.XphotoModule.LearningBasedWB Class Reference

More sophisticated learning-based automatic white balance algorithm. More...

Public Member Functions

void extractSimpleFeatures (Mat src, Mat dst)
 Implements the feature extraction part of the algorithm.
 
int getHistBinNum ()
 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).
 
int getRangeMaxVal ()
 Maximum possible value of the input image (e.g. 255 for 8 bit images, 4095 for 12 bit images)
 
float getSaturationThreshold ()
 Threshold that is used to determine saturated pixels, i.e. pixels where at least one of the channels exceeds \(\texttt{saturation_threshold}\times\texttt{range_max_val}\) are ignored.
 
void setHistBinNum (int val)
 
void setRangeMaxVal (int val)
 
void setSaturationThreshold (float val)
 
- Public Member Functions inherited from OpenCVForUnity.XphotoModule.WhiteBalancer
void balanceWhite (Mat src, Mat dst)
 Applies white balancing to the input image.
 
- Public Member Functions inherited from OpenCVForUnity.CoreModule.Algorithm
virtual void clear ()
 Clears the algorithm state.
 
virtual bool empty ()
 Returns true if the Algorithm is empty (e.g. in the very beginning or after unsuccessful read.
 
virtual string getDefaultName ()
 
IntPtr getNativeObjAddr ()
 
void save (string filename)
 
- Public Member Functions inherited from OpenCVForUnity.DisposableObject
void Dispose ()
 
void ThrowIfDisposed ()
 

Static Public Member Functions

static new LearningBasedWB __fromPtr__ (IntPtr addr)
 
- Static Public Member Functions inherited from OpenCVForUnity.XphotoModule.WhiteBalancer
static new WhiteBalancer __fromPtr__ (IntPtr addr)
 
- Static Public Member Functions inherited from OpenCVForUnity.CoreModule.Algorithm
static Algorithm __fromPtr__ (IntPtr addr)
 
- Static Public Member Functions inherited from OpenCVForUnity.DisposableObject
static IntPtr ThrowIfNullIntPtr (IntPtr ptr)
 

Protected Member Functions

override void Dispose (bool disposing)
 
- Protected Member Functions inherited from OpenCVForUnity.XphotoModule.WhiteBalancer
override void Dispose (bool disposing)
 
- Protected Member Functions inherited from OpenCVForUnity.CoreModule.Algorithm
- Protected Member Functions inherited from OpenCVForUnity.DisposableOpenCVObject
 DisposableOpenCVObject ()
 
 DisposableOpenCVObject (bool isEnabledDispose)
 
 DisposableOpenCVObject (IntPtr ptr)
 
 DisposableOpenCVObject (IntPtr ptr, bool isEnabledDispose)
 
- Protected Member Functions inherited from OpenCVForUnity.DisposableObject
 DisposableObject ()
 
 DisposableObject (bool isEnabledDispose)
 

Additional Inherited Members

- Package Functions inherited from OpenCVForUnity.XphotoModule.WhiteBalancer
- Package Functions inherited from OpenCVForUnity.CoreModule.Algorithm
- Package Attributes inherited from OpenCVForUnity.DisposableOpenCVObject
- Properties inherited from OpenCVForUnity.DisposableObject
bool IsDisposed [get, protected set]
 
bool IsEnabledDispose [get, set]
 

Detailed Description

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 [Cheng2015] .

To mask out saturated pixels this function uses only pixels that satisfy the following condition:

\[ \frac{\textrm{max}(R,G,B)}{\texttt{range_max_val}} < \texttt{saturation_thresh} \]

Currently supports images of type CV_8UC3 and CV_16UC3.

Member Function Documentation

◆ __fromPtr__()

static new LearningBasedWB OpenCVForUnity.XphotoModule.LearningBasedWB.__fromPtr__ ( IntPtr addr)
static

◆ Dispose()

override void OpenCVForUnity.XphotoModule.LearningBasedWB.Dispose ( bool disposing)
protectedvirtual

◆ extractSimpleFeatures()

void OpenCVForUnity.XphotoModule.LearningBasedWB.extractSimpleFeatures ( Mat src,
Mat dst )

Implements the feature extraction part of the algorithm.

In accordance with [Cheng2015] , computes the following features for the input image:

  1. Chromaticity of an average (R,G,B) tuple
  2. Chromaticity of the brightest (R,G,B) tuple (while ignoring saturated pixels)
  3. Chromaticity of the dominant (R,G,B) tuple (the one that has the highest value in the RGB histogram)
  4. Mode of the chromaticity palette, that is constructed by taking 300 most common colors according to the RGB histogram and projecting them on the chromaticity plane. Mode is the most high-density point of the palette, which is computed by a straightforward fixed-bandwidth kernel density estimator with a Epanechnikov kernel function.
Parameters
srcInput three-channel image (BGR color space is assumed).
dstAn array of four (r,g) chromaticity tuples corresponding to the features listed above.

◆ getHistBinNum()

int OpenCVForUnity.XphotoModule.LearningBasedWB.getHistBinNum ( )

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).

See also
setHistBinNum

◆ getRangeMaxVal()

int OpenCVForUnity.XphotoModule.LearningBasedWB.getRangeMaxVal ( )

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

See also
setRangeMaxVal

◆ getSaturationThreshold()

float OpenCVForUnity.XphotoModule.LearningBasedWB.getSaturationThreshold ( )

Threshold that is used to determine saturated pixels, i.e. pixels where at least one of the channels exceeds \(\texttt{saturation_threshold}\times\texttt{range_max_val}\) are ignored.

See also
setSaturationThreshold

◆ setHistBinNum()

void OpenCVForUnity.XphotoModule.LearningBasedWB.setHistBinNum ( int val)

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).

See also
getHistBinNum

◆ setRangeMaxVal()

void OpenCVForUnity.XphotoModule.LearningBasedWB.setRangeMaxVal ( int val)

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

See also
getRangeMaxVal

◆ setSaturationThreshold()

void OpenCVForUnity.XphotoModule.LearningBasedWB.setSaturationThreshold ( float val)

Threshold that is used to determine saturated pixels, i.e. pixels where at least one of the channels exceeds \(\texttt{saturation_threshold}\times\texttt{range_max_val}\) are ignored.

See also
getSaturationThreshold

The documentation for this class was generated from the following file: