GrayworldWB

Objective-C

@interface GrayworldWB : WhiteBalancer

Swift

class GrayworldWB : WhiteBalancer

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 REF: CV_8UC3 and REF: CV_16UC3.

Member of Xphoto

Methods

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

    Declaration

    Objective-C

    - (float)getSaturationThreshold;

    Swift

    func getSaturationThreshold() -> Float
  • getSaturationThreshold - see: -getSaturationThreshold:

    Declaration

    Objective-C

    - (void)setSaturationThreshold:(float)val;

    Swift

    func setSaturationThreshold(val: Float)