OpenCV  4.10.0
开源计算机视觉
正在加载...
正在搜索...
无匹配项
公共成员函数 | 所有成员列表
cv::xphoto::LearningBasedWB 类参考abstract

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

#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)。
 
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)。
 
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 继承的公共成员函数
 算法 ()
 
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 一样,此算法通过对输入图像通道应用不同的增益来工作,但与简单的灰世界假设相比,它们的计算要复杂得多。有关算法的更多详细信息,请参阅 [55]

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

\[ \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

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

根据 [55] ,为输入图像计算以下特征

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

另请参阅
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) -> None

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

另请参阅
getHistBinNum

◆ setRangeMaxVal()

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

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

另请参阅
getRangeMaxVal

◆ setSaturationThreshold()

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

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

另请参阅
getSaturationThreshold

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