cvBoostStartTraining

原文如下:

/*****************************************************************************************                             Iterative training functions                               *
\****************************************************************************************/

/*
 * CvBoostTrainer
 *
 * The CvBoostTrainer structure represents internal boosting trainer.
 */
typedef struct CvBoostTrainer CvBoostTrainer;

/*
 * cvBoostStartTraining
 *
 * The cvBoostStartTraining function starts training process and calculates
 * response values and weights for the first weak classifier training.
 *
 * Parameters
 *   trainClasses
 *     Vector of classes of training samples classes. Each element must be 0 or 1 and
 *     of type CV_32FC1.
 *   weakTrainVals
 *     Vector of response values for the first trained weak classifier.
 *     Must be of type CV_32FC1.
 *   weights
 *     Weight vector of training samples for the first trained weak classifier.
 *     Must be of type CV_32FC1.
 *   type
 *     Boosting type. CV_DABCLASS, CV_RABCLASS, CV_LBCLASS, CV_GABCLASS
 *     types are supported.
 *
 * Return Values
 *   The return value is a pointer to internal trainer structure which is used
 *   to perform next training iterations.
 *
 * Remarks
 *   weakTrainVals and weights must be allocated before calling the function
 *   and of the same size as trainingClasses. Usually weights should be initialized
 *   with 1.0 value.
 *   The function calculates response values and weights for the first weak
 *   classifier training and stores them into weakTrainVals and weights
 *   respectively.
 *   Note, the training of the weak classifier using weakTrainVals, weight,
 *   trainingData is outside of this function.
 */
CV_BOOST_API
CvBoostTrainer* cvBoostStartTraining( CvMat* trainClasses,
                                      CvMat* weakTrainVals,
                                      CvMat* weights,
                                      CvMat* sampleIdx,
                                      CvBoostType type );

翻译如下:

/*****************************************************************************************                             迭代训练函数                              *
\****************************************************************************************/

/*
 * CvBoostTrainer
 *
 * 该结构体是内部提升训练的trainer结构体
 */
typedef struct CvBoostTrainer CvBoostTrainer;

/*
 * cvBoostStartTraining
 *
 * 该函数的作用是在第一个弱分类器训练时,初始化训练过程,计算特征值,并初始化样本权重
 *
 * 参数含义如下:
 *   trainClasses
 *     它是训练样本类的向量,每个元素要么是0,要么是1;而且数据0,1的数据烈性必须是CV_32FC1,即32位浮点型单通道的类型
 *   weakTrainVals
 *     第一个训练好的弱分类器的响应值,数据类型是CV_32FC1.
 *     注:响应值,我的理解是正负样本在该弱分类器下有个预测值,0或者1,可能与原来的类别相同,也可能不同,以为这是个预测过程,不可能100%。
 *   weights
 *     第一个训练好的弱分类器的权重的向量,数据类型也必须为CV_32FC1.
 *   type
 *     Boosting type.包括四种: CV_DABCLASS, CV_RABCLASS, CV_LBCLASS, CV_GABCLASS
 *
 * Return Values
 *   返回值是一个CvBoostTrainer的结构体指针,该指针用来进行下一步迭代训练过程
 *
 * Remarks
 *   weakTrainVals 和 weights 必须在回调函数使用前分配,他们的大小都与trainingClasses相同,即具有同样的行和列。
 *   一般的,weights 初始化为1.0
 *   cvBoostStartTraining函数在训练第一个弱分类器时,计算每个样本的响应值weakTrainVals和权重,并且分别存储在指针变量 weakTrainVals and weights里。
 *   注意:使用weakTrainVals, weight,trainingdata的训练过程是在这个函数外部
 */
CV_BOOST_API
CvBoostTrainer* cvBoostStartTraining( CvMat* trainClasses,
                                      CvMat* weakTrainVals,
                                      CvMat* weights,
                                      CvMat* sampleIdx,
                                      CvBoostType type );
时间: 2024-11-03 23:44:33

cvBoostStartTraining的相关文章

opencv源码分析:有关boosting的源代码( cvBoostStartTraining, cvBoostNextWeakClassifier, cvBoostEndTraining)

/***************************************************************************************** Boosting * \****************************************************************************************/ typedef struct CvBoostTrainer { CvBoostType type; int cou

cvBoostStartTraining, cvBoostNextWeakClassifier和 cvBoostEndTraining

/***************************************************************************************** Boosting * \****************************************************************************************/ typedef struct CvBoostTrainer { CvBoostType type; //一共四类例

Opencv研读笔记:haartraining程序之icvCreateCARTStageClassifier函数详解~

之前介绍了haartraining程序中的cvCreateMTStumpClassifier函数,这个函数的功能是计算最优弱分类器,这篇文章介绍一下自己对haartraining中关于强分类器计算的一些理解,也就是程序中的icvCreateCARTStageClassifier函数. 由于haartraining是基于HAAR特征进行adaboost训练,对于HAAR特征的处理比较繁琐,采用了奇数弱分类器补充针对翻转特征最优弱分类器计算的代码,所以代码看起来较为冗长.此外,其采用了较多的中间结构

opencv源码之一:cvboost.cpp

我使用的是opencv2.4.9,安装后,我的cvboost..cpp文件的路径是........\opencv\sources\apps\haartraining\cvboost.cpp,研究源码那么多天,有很多收获,opencv库真是非常强大.具体内容如下: /*M/////////////////////////////////////////////////////////////////////////////////////// // // IMPORTANT: READ BEFOR

opencv源代码分析之二:cvhaartraining.cpp

我使用的是opencv2.4.9.安装后.我的cvboost..cpp文件的路径是........\opencv\sources\apps\haartraining\cvhaartraining.cpp,研究源代码那么多天,有非常多收获.opencv库真是非常强大.当中在这篇博文中我有部分凝视,其它的有关知识请參考我博客http://blog.csdn.net/ding977921830?viewmode=contents.详细内容例如以下: /*M///////////////////////

cvBoostNextWeakClassifier(翻译)

原文如下: /* * cvBoostNextWeakClassifier * * The cvBoostNextWeakClassifier function performs next training * iteration and caluclates response values and weights for the next weak * classifier training. * * Parameters * weakEvalVals * Vector of values ob

opencv源码分析之二:cvhaartraining.cpp

我使用的是opencv2.4.9,安装后,我的cvboost..cpp文件的路径是........\opencv\sources\apps\haartraining\cvhaartraining.cpp,研究源码那么多天,有很多收获,opencv库真是非常强大.其中在这篇博文中我有部分注释,其他的有关知识请参考我博客http://blog.csdn.net/ding977921830?viewmode=contents.具体内容如下: /*M///////////////////////////