OpenCV  4.10.0
开源计算机视觉
加载中...
搜索中...
无匹配
公共成员函数 | 静态公共成员函数 | 所有成员列表
cv::ml::RTrees 类参考抽象

该类实现了随机森林预测器。 更多信息...

#include <opencv2/ml.hpp>

cv::ml::RTrees 的协作图

公共成员函数

virtual int getActiveVarCount () const =0
 
virtual bool getCalculateVarImportance () const =0
 
virtual double getOOBError () const =0
 
virtual TermCriteria getTermCriteria () const =0
 
virtual Mat getVarImportance () const =0
 
virtual void getVotes (InputArray samples, OutputArray results, int flags) const =0
 
virtual void setActiveVarCount (int val)=0
 
virtual void setCalculateVarImportance (bool val)=0
 
virtual void setTermCriteria (const TermCriteria &val)=0
 
- 继承自 cv::ml::DTrees 的公共成员函数
virtual int getCVFolds () const =0
 
virtual int getMaxCategories () const =0
 
virtual int getMaxDepth () const =0
 
virtual int getMinSampleCount () const =0
 
virtual const std::vector< Node > & getNodes () const =0
 返回所有节点。
 
virtual cv::Mat getPriors () const =0
 按类别标签值排序的先验类别概率数组。
 
virtual float getRegressionAccuracy () const =0
 
virtual const std::vector< int > & getRoots () const =0
 返回根节点索引。
 
virtual const std::vector< Split > & getSplits () const =0
 返回所有分割。
 
virtual const std::vector< int > & getSubsets () const =0
 返回所有用于分类分割的位集。
 
virtual bool getTruncatePrunedTree () const =0
 
virtual bool getUse1SERule () const =0
 
virtual bool getUseSurrogates () const =0
 
virtual void setCVFolds (int val)=0
 
virtual void setMaxCategories (int val)=0
 
virtual void setMaxDepth (int val)=0
 
virtual void setMinSampleCount (int val)=0
 
virtual void setPriors (const cv::Mat &val)=0
 按类别标签值排序的先验类别概率数组。
 
virtual void setRegressionAccuracy (float val)=0
 
virtual void setTruncatePrunedTree (bool val)=0
 
virtual void setUse1SERule (bool val)=0
 
virtual void setUseSurrogates (bool val)=0
 
- 从 cv::ml::StatModel 继承的公共成员函数
virtual float calcError (const Ptr< TrainData > &data, bool test, OutputArray resp) const
 计算训练或测试数据集上的误差。
 
virtual bool empty () const CV_OVERRIDE
 如果算法为空(例如在初始化或读取失败后),则返回 true。
 
virtual int getVarCount () const =0
 返回训练样本中的变量数量。
 
virtual bool isClassifier () const =0
 如果模型是分类器,则返回 true。
 
virtual bool isTrained () const =0
 如果模型已训练,则返回 true。
 
virtual float predict (InputArray samples, OutputArray results=noArray(), int flags=0) const =0
 预测提供样本的响应。
 
virtual bool train (const Ptr< TrainData > &trainData, int flags=0)
 训练统计模型。
 
virtual bool train (InputArray samples, int layout, InputArray responses)
 训练统计模型。
 
- 从 cv::Algorithm 继承的公共成员函数
 Algorithm ()
 
virtual ~Algorithm ()
 
virtual void clear ()
 清除算法状态。
 
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
 

静态公共成员函数

static Ptr< RTreescreate ()
 
static Ptr< RTreesload (const String &filepath, const String &nodeName=String())
 从文件中加载并创建序列化的 RTree。
 
- 继承自 cv::ml::DTrees 的静态公共成员函数
static Ptr< DTreescreate ()
 创建空的模型。
 
static Ptr< DTreesload (const String &filepath, const String &nodeName=String())
 从文件中加载并创建序列化的 DTrees
 
- 继承自 cv::ml::StatModel 的静态公共成员函数
template<typename _Tp >
static Ptr< _Tptrain (const TrainData &data, int flags=0)
 使用默认参数创建并训练模型。
 
- 继承自 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::ml::DTrees 继承的公共类型
enum  Flags {
  PREDICT_AUTO =0 ,
  PREDICT_SUM =(1<<8) ,
  PREDICT_MAX_VOTE =(2<<8) ,
  PREDICT_MASK =(3<<8)
}
 
- 从 cv::ml::StatModel 继承的公共类型
enum  Flags {
  UPDATE_MODEL = 1 ,
  RAW_OUTPUT =1 ,
  COMPRESSED_INPUT =2 ,
  PREPROCESSED_INPUT =4
}
 
- 从 cv::Algorithm 继承的保护成员函数
void writeFormat (FileStorage &fs) const
 

详细描述

该类实现了随机森林预测器。

参见
随机树

成员函数文档

◆ create()

静态 Ptr< RTrees > cv::ml::RTrees::create ( )
静态
Python
cv.ml.RTrees.create() -> retval
cv.ml.RTrees_create() -> retval

创建空模型。使用 StatModel::train 来训练模型,使用 StatModel::train 来创建和训练模型,使用 Algorithm::load 来加载预训练模型。

◆ getActiveVarCount()

virtual int cv::ml::RTrees::getActiveVarCount ( ) const
纯虚函数
Python
cv.ml.RTrees.getActiveVarCount() -> retval

每个树节点随机选择的特征子集的大小,这些特征用于找到最佳分割点。如果您将其设置为0,则大小将设置为总特征数的平方根。默认值是0。

参见
setActiveVarCount

◆ getCalculateVarImportance()

virtual bool cv::ml::RTrees::getCalculateVarImportance ( ) const
纯虚函数
Python
cv.ml.RTrees.getCalculateVarImportance() -> retval

如果为真,则将计算变量重要性,然后可以通过 RTrees::getVarImportance 获取。默认值为false。

参见
setCalculateVarImportance

◆ getOOBError()

virtual double cv::ml::RTrees::getOOBError ( ) const
纯虚函数
Python
cv.ml.RTrees.getOOBError() -> retval

返回OOB错误值,在训练阶段计算时calcOOBError被设置为true。如果此标志被设置为false,则返回0。OOB错误也按样本权重缩放。

◆ getTermCriteria()

virtual TermCriteria cv::ml::RTrees::getTermCriteria ( ) const
纯虚函数
Python
cv.ml.RTrees.getTermCriteria() -> retval

指定何时停止训练算法的终止条件。要么是训练并添加到集成中指定数量的树,要么是达到足够的精度(以OOB错误衡量)。通常,您拥有的树越多,精度越好。然而,精度的提高通常会减弱,并且经过一定数量的树后趋近于一个水平线。还要注意的是,树的数量线性增加预测时间。默认值是 TermCriteria(TermCriteria::MAX_ITERS + TermCriteria::EPS, 50, 0.1)

参见
setTermCriteria

◆ getVarImportance()

virtual Mat cv::ml::RTrees::getVarImportance ( ) const
纯虚函数
Python
cv.ml.RTrees.getVarImportance() -> retval

返回变量重要性数组。该方法在训练阶段当CalculateVarImportance被设置为true时返回变量重要性向量。如果此标志被设置为false,则返回空矩阵。

◆ getVotes()

virtual void cv::ml::RTrees::getVotes ( InputArray  samples,
OutputArray  results,
int  flags 
) const
纯虚函数
Python
cv.ml.RTrees.getVotes(samples, flags[, results]) -> results

返回森林中每个单独树木的结果。如果模型是回归问题,该方法将返回每个树木对每个样本案例的结果。如果是分类器,它将返回一个包含样本 + 1 行的 Mat,第一行给出类编号,下面的行返回每个样本的每个类的投票数。

参数
samples包含将计算投票的样本的数组。
results将写入计算结果的数组。
标志用于定义 RTrees 类型的标志。

◆ load()

static Ptr< RTrees > cv::ml::RTrees::load ( const String filepath,
const String nodeName = String() 
)
静态
Python
cv.ml.RTrees.load(filepath[, nodeName]) -> retval
cv.ml.RTrees_load(filepath[, nodeName]) -> retval

从文件中加载并创建序列化的 RTree。

使用 RTree::save 将 RTree 序列化和存储到磁盘。通过使用此函数调用包含分类器的文件的路径重新加载 RTree。可选指定包含分类器的节点

参数
filepath序列化 RTree 的路径
nodeName包含分类器的节点名称

◆ setActiveVarCount()

virtual void cv::ml::RTrees::setActiveVarCount ( int  val)
纯虚函数
Python
cv.ml.RTrees.setActiveVarCount(val) -> None

◆ setCalculateVarImportance()

virtual void cv::ml::RTrees::setCalculateVarImportance ( bool  val)
纯虚函数
Python
cv.ml.RTrees.setCalculateVarImportance(val) -> None

◆ setTermCriteria()

virtual void cv::ml::RTrees::setTermCriteria ( const TermCriteria val)
纯虚函数
Python
cv.ml.RTrees.setTermCriteria(val) -> None

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