OpenCV 4.12.0
开源计算机视觉
加载中...
搜索中...
无匹配项
cv::xphoto::LearningBasedWB 类参考抽象类

一种更复杂的基于学习的自动白平衡算法。 更多...

#include <opencv2/xphoto/white_balance.hpp>

cv::xphoto::LearningBasedWB 的协作图

公共成员函数

virtual void extractSimpleFeatures (InputArray src, OutputArray dst)=0
 实现算法的特征提取部分。
 
virtual int getHistBinNum () const =0
 定义由算法内部使用的三维 RGB 直方图的一个维度的尺寸。 对于具有更高位深度的图像(例如,12 位图像为 256 个 bin),增加 bin 的数量通常是有意义的。
 
virtual int getRangeMaxVal () const =0
 输入图像的最大可能值(例如,8 位图像为 255,12 位图像为 4095)
 
virtual float getSaturationThreshold () const =0
 用于确定饱和像素的阈值,即至少一个通道超过 \(\texttt{saturation_threshold}\times\texttt{range_max_val}\) 的像素将被忽略。
 
virtual void setHistBinNum (int val)=0
 定义由算法内部使用的三维 RGB 直方图的一个维度的尺寸。 对于具有更高位深度的图像(例如,12 位图像为 256 个 bin),增加 bin 的数量通常是有意义的。
 
virtual void setRangeMaxVal (int val)=0
 输入图像的最大可能值(例如,8 位图像为 255,12 位图像为 4095)
 
virtual void setSaturationThreshold (float val)=0
 用于确定饱和像素的阈值,即至少一个通道超过 \(\texttt{saturation_threshold}\times\texttt{range_max_val}\) 的像素将被忽略。
 
- 从 cv::xphoto::WhiteBalancer 继承的公共成员函数
virtual void balanceWhite (InputArray src, OutputArray dst)=0
 将白平衡应用于输入图像。
 
- 从 cv::Algorithm 继承的公共成员函数
 Algorithm ()
 
virtual ~Algorithm ()
 
virtual void clear ()
 清除算法状态。
 
virtual bool empty () const
 如果 Algorithm 为空(例如,在开始时或读取不成功后),则返回 true。
 
virtual String getDefaultName () const
 
virtual void read (const FileNode &fn)
 从文件存储中读取算法参数。
 
virtual void save (const String &filename) const
 
void write (const Ptr< FileStorage > &fs, const String &name=String()) const
 
virtual void write (FileStorage &fs) const
 将算法参数存储到文件存储中。
 
void write (FileStorage &fs, const String &name) const
 

附加继承的成员

- 从 cv::Algorithm 继承的静态公共成员函数
template<typename _Tp >
static Ptr< _Tpload (const String &filename, const String &objname=String())
 从文件中加载算法。
 
template<typename _Tp >
static Ptr< _TploadFromString (const String &strModel, const String &objname=String())
 从字符串加载算法。
 
template<typename _Tp >
static Ptr< _Tpread (const FileNode &fn)
 从文件节点读取算法。
 
- 从 cv::Algorithm 继承的保护成员函数
void writeFormat (FileStorage &fs) const
 

详细描述

一种更复杂的基于学习的自动白平衡算法。

GrayworldWB 类似,此算法通过将不同的增益应用于输入图像通道来工作,但与简单的灰度世界假设相比,它们的计算更加复杂。 有关该算法的更多详细信息,请参见 [57]

要屏蔽掉饱和像素,此函数仅使用满足以下条件的像素

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

当前支持 CV_8UC3CV_16UC3 类型的图像。

成员函数文档

◆ extractSimpleFeatures()

virtual void cv::xphoto::LearningBasedWB::extractSimpleFeatures ( InputArray src,
OutputArray dst )
纯虚函数
Python
cv.xphoto.LearningBasedWB.extractSimpleFeatures(src[, dst]) -> dst

实现算法的特征提取部分。

根据 [57],计算输入图像的以下特征

  1. 平均 (R,G,B) 元组的色度
  2. 最亮的 (R,G,B) 元组的色度(同时忽略饱和像素)
  3. 主要 (R,G,B) 元组的色度(在 RGB 直方图中具有最高值的元组)
  4. 色度调色板的模式,该调色板通过根据 RGB 直方图选取 300 种最常见的颜色并将它们投影到色度平面上来构建。 模式是调色板中密度最高的点,该点由具有 Epanechnikov 核函数的简单固定带宽核密度估计器计算得出。
参数
src输入三通道图像(假定为 BGR 颜色空间)。
dst对应于上述特征的四个 (r,g) 色度元组的数组。

◆ getHistBinNum()

virtual int cv::xphoto::LearningBasedWB::getHistBinNum ( ) const
纯虚函数
Python
cv.xphoto.LearningBasedWB.getHistBinNum() -> retval

定义由算法内部使用的三维 RGB 直方图的一个维度的尺寸。 对于具有更高位深度的图像(例如,12 位图像为 256 个 bin),增加 bin 的数量通常是有意义的。

另请参见
setHistBinNum

◆ getRangeMaxVal()

virtual int cv::xphoto::LearningBasedWB::getRangeMaxVal ( ) const
纯虚函数
Python
cv.xphoto.LearningBasedWB.getRangeMaxVal() -> retval

输入图像的最大可能值(例如,8 位图像为 255,12 位图像为 4095)

另请参见
setRangeMaxVal

◆ getSaturationThreshold()

virtual float cv::xphoto::LearningBasedWB::getSaturationThreshold ( ) const
纯虚函数
Python
cv.xphoto.LearningBasedWB.getSaturationThreshold() -> retval

用于确定饱和像素的阈值,即至少一个通道超过 \(\texttt{saturation_threshold}\times\texttt{range_max_val}\) 的像素将被忽略。

另请参见
setSaturationThreshold

◆ setHistBinNum()

virtual void cv::xphoto::LearningBasedWB::setHistBinNum ( int val)
纯虚函数
Python
cv.xphoto.LearningBasedWB.setHistBinNum(val) ->

定义由算法内部使用的三维 RGB 直方图的一个维度的尺寸。 对于具有更高位深度的图像(例如,12 位图像为 256 个 bin),增加 bin 的数量通常是有意义的。

另请参见
getHistBinNum

◆ setRangeMaxVal()

virtual void cv::xphoto::LearningBasedWB::setRangeMaxVal ( int val)
纯虚函数
Python
cv.xphoto.LearningBasedWB.setRangeMaxVal(val) ->

输入图像的最大可能值(例如,8 位图像为 255,12 位图像为 4095)

另请参见
getRangeMaxVal

◆ setSaturationThreshold()

virtual void cv::xphoto::LearningBasedWB::setSaturationThreshold ( float val)
纯虚函数
Python
cv.xphoto.LearningBasedWB.setSaturationThreshold(val) ->

用于确定饱和像素的阈值,即至少一个通道超过 \(\texttt{saturation_threshold}\times\texttt{range_max_val}\) 的像素将被忽略。

另请参见
getSaturationThreshold

此类文档是从以下文件生成的