opencv源码解读——haartraining

1.参数:
-data <dir_name> :指定生成的文件目录
-vec <vec_file_name>:正样本的保存文件
-bg <background_file_name>:负样本的保存文件
-npos <number_of_positive_samples >:正样本的数量  默认2000
-nneg <number_of_negative_samples >:负样本的数量 默认2000
-nstages <number_of_stages >:训练的层数 默认14
-nsplits <number_of_splits >:
决定adaboost的弱分类器,默认 1 ,则一个简单的 stump classifier (二叉树)被使用。
如果是n,则使用带有 n 个内部节点的 CART 分类器。
-mem <memory_in_MB >:缓存大小 默认200,大一点会训练的快一些。
-sym (default) -nonsym):
-sym或者-nonsym,后面不用跟其他参数,用于指定目标对象是否垂直对称.
若你的对象是垂直对称的,比如脸,则垂直对称有利于提高训练速度.
-minhitrate <min_hit_rate >:
字面理解,最小命中率也就是准确率,总的命中率为 min_hit_rate 的 number_of_stages 次方。默认0.995
-maxfalsealarm <max_false_alarm_rate >
最大误检率,每一层训练到这个值小于0.5(默认)时训练结束,进入下一层训练。总的误检率为number_of_stages 次方。
-weighttrimming <weight_trimming >:权修正,默认0.95
-eqw:equalweights     - if not 0 initial weights of all samples will be equal,adaboost中的权值
-mode <BASIC (default) | CORE | ALL>
0 - BASIC = Viola (默认的基本的5种haar特征)
 1 - CORE  = All upright  所有垂直的特征,也就是线特征。
                  2 - ALL   = All features  所有特征,包括倾斜特征,对角特征等。
-w <sample_width >:样本宽度
-h <sample_height >:样本高度
-bt <DAB | RAB | LB | GAB (default)>
boosttype        - type of applied boosting algorithm   boost的类型
DAB: 0 - Discrete AdaBoost 
  RAB: 1- Real AdaBoost 
  LB: 2 - LogitBoost 
  GAB: 3 - Gentle AdaBoost 
-err <misclass (default) | gini | entropy>
stumperrors: - type of used error if Discrete AdaBoost algorithm is applied 
使用DAB遇到的错误类型:
misclass
gini
entropy




-maxtreesplits <max_number_of_splits_in_tree_cascade >:级联分类树的最大分支数目
-minpos <min_number_of_positive_samples_per_cluster >:每一个弱分类器的最小正样本数目 7000正3000负 可取500
有些参数与cart分类器相关,需要补充cart相关知识。

你可能感兴趣的:(源码,opencv,adaboost,训练,haar-like)