| OpenCV 3.4.8 Open Source Computer Vision

Public Member Functions | List of all members
cv::xphoto::GrayworldWB Class Referenceabstract
Additional photo processing algorithms

Gray-world white balance algorithm. More...

`#include <opencv2/xphoto/white_balance.hpp>`

Inheritance diagram for cv::xphoto::GrayworldWB:

## Public Member Functions
virtual float | getSaturationThreshold () const =0
| Maximum saturation for a pixel to be included in the gray-world assumption. More...
virtual void | setSaturationThreshold (float val)=0
| Maximum saturation for a pixel to be included in the gray-world assumption. More...
Public Member Functions inherited from cv::xphoto::WhiteBalancer
virtual void | balanceWhite (InputArray src, OutputArray dst)=0
| Applies white balancing to the input image. More...
Public Member Functions inherited from cv::Algorithm
| Algorithm ()
virtual | ~Algorithm ()
virtual void | clear ()
| Clears the algorithm state. More...
virtual bool | empty () const
| Returns true if the Algorithm is empty (e.g. in the very beginning or after unsuccessful read. More...
virtual String | getDefaultName () const
virtual void | read (const FileNode &fn)
| Reads algorithm parameters from a file storage. More...
virtual void | save (const String &filename) const
virtual void | write (FileStorage &fs) const
| Stores algorithm parameters in a file storage. More...
void | write (const Ptr< FileStorage > &fs, const String &name=String()) const
| simplified API for language bindings This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...

## Additional Inherited Members
Static Public Member Functions inherited from cv::Algorithm
template<typename _Tp >
static Ptr< _Tp > | load (const String &filename, const String &objname=String())
| Loads algorithm from the file. More...
template<typename _Tp >
static Ptr< _Tp > | loadFromString (const String &strModel, const String &objname=String())
| Loads algorithm from a String. More...
template<typename _Tp >
static Ptr< _Tp > | read (const FileNode &fn)
| Reads algorithm from the file node. More...
Protected Member Functions inherited from cv::Algorithm
void | writeFormat (FileStorage &fs) const

## Detailed Description

Gray-world white balance algorithm.

This algorithm scales the values of pixels based on a gray-world assumption which states that the average of all channels should result in a gray image.

It adds a modification which thresholds pixels based on their saturation value and only uses pixels below the provided threshold in finding average pixel values.

Saturation is calculated using the following for a 3-channel RGB image per pixel I and is in the range [0, 1]:

\[ \texttt{Saturation} [I] = \frac{\textrm{max}(R,G,B) - \textrm{min}(R,G,B) }{\textrm{max}(R,G,B)} \]

A threshold of 1 means that all pixels are used to white-balance, while a threshold of 0 means no pixels are used. Lower thresholds are useful in white-balancing saturated images.

Currently supports images of type CV_8UC3 and CV_16UC3.

## Member Function Documentation

## § getSaturationThreshold()

virtual float cv::xphoto::GrayworldWB::getSaturationThreshold | ( |  | ) | const
| pure virtual

Python:
| retval | = | cv.xphoto_GrayworldWB.getSaturationThreshold( |  | )

Maximum saturation for a pixel to be included in the gray-world assumption.

See also
  setSaturationThreshold

## § setSaturationThreshold()

virtual void cv::xphoto::GrayworldWB::setSaturationThreshold | ( | float | val | ) |
| pure virtual

Python:
| None | = | cv.xphoto_GrayworldWB.setSaturationThreshold( | val | )

Maximum saturation for a pixel to be included in the gray-world assumption.

See also
  getSaturationThreshold

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

- opencv2/xphoto/white_balance.hpp