opencv_traincascade.exe用到的参数及解释


opencv_traincascade.exe的参数列表及解释,下面的所有参数都是在命令行中opencv_traincascade.exe后面使用的参数,共20个参数,参数按在源文件中存储的位置分类

一、训练时存储在变量中的参数(9个参数)

  • -data
    • 训练的分类器的存储目录
  • -vec
    • 正样本文件,由open_createsamples.exe生成,正样本文件后缀名为.vec
  • -bg
    • 负样本说明文件,主要包含负样本文件所在的目录及负样本文件名
  • -numPos
    • 每级分类器训练时所用到的正样本数目,应小于vec文件中正样本的数目,具体数目限制条件为:numPos+(numStages-1)*numPos*(1-minHitRate)<=vec文件中正样本的数目
  • -numNeg
    • 每级分类器训练时所用到的负样本数目,可以大于-bg指定的图片数目
  • -numStages
    • 训练分类器的级数,强分类器的个数
  • -precalcValBufSize
    • 缓存大小,用于存储预先计算的特征值,单位MB
  • -precalcIdxBufSize
    • 缓存大小,用于存储预先计算的特征索引,单位MB
  • -baseFormatSave
    • 仅在使用Haar特征时有效,如果指定,级联分类器将以老格式存储

二、存储在参数类中的参数()

1、存储CvCascadeParams的对象中的参数(4个参数)

-stageType
     级联类型,目前只能取BOOST
-featureType
     训练使用的特征类型,目前支持的特征有Haar,LBP和HOG
-w
     训练的正样本的宽度,Haar特征的w和h一般为20,LBP特征的w和h一般为24,HOG特征的w和h一般为64
-h
     训练的正样本的高

2、存储在CvCascadeBoostParams的对象中的参数(6个参数)

-bt
     训练分类器采用的Adaboost类型,Adaboost分为Getle Adaboost,Real Adaboost,Discrete Adaboost,Logit Adaboost,训练中默认采用Getle Adaboost
-minHitRate
     影响每个强分类器阈值,每一级分类器最小命中率,表示每一级强分类器对正样本的的分类准确率
-maxFalseAlarm
     最大虚警率,影响弱分类器的阈值,表示每个弱分类器将负样本误分为正样本的比例,一般默认值为0.5
-weightTrimRate
     0-1之间的阈值,影响参与训练的样本,样本权重更新排序后(从小到大),从前面累计权重小于(1-weightTrimRate)的样本将不参与下一次训练,一般默认值为0.95
-maxDepth
     每一个弱分类器决策树的深度,默认是1,是二叉树(stumps),只使用一个特征。
-maxWeakCount
     每级强分类器中弱分类器的最大个数,当FA降不到指定的maxFalseAlarm时可以通过指定最大弱分类器个数停止单个强分类器

3、存储在CvFeatureParams对象中的参数(1个参数)

Haar特征,CvHaarFeatureParams继承于CvFeatureParams
    -mode 
       值为BASIC、CORE、ALL三种,根据值不同采用不同的Haar特征,BASIC是基本的Haar特征,CORE是所有的上下Haar特征,ALL是使用所有的Haar特征
LBP特征,CvLBPFeatureParams继承于CvFeatureParams
      无参数
HOG特征,CvHOGFeatureParams继承于CvFeatureParams
       无参数


参数截图:
opencv_traincascade.exe用到的参数及解释_第1张图片

你可能感兴趣的:(计算机视觉)