opencv中softcascade的具体原理是怎么样的,使用的是决策树训练么

请问哪一版本的opencv里面有softcascade的啊?关于原理可以参考这篇文章:读Robust Object Detection Via Soft Cascade 小结以下是我对softcascade的理解OpenCV实现的cascade有多个强分类器,每个强分类器有多个弱分类器,每个弱分类器是一棵决策树,可以是树桩,也可以有树枝,每个枝用一个特征表述。检测时,挨个计算每个强分类器的结果并与阈值比较,当小于强分类器阈值时则退出判断,因此退出与否只依赖最新比较的强分类器,之前的计算只是比较,对后续比较没有任何帮助。经典的人脸检测器haarcascade_frontalface_alt.xml只有树桩,最多4686个弱分类器SoftCascade只有一个强分类器,这个强分类器有很多个弱分类器,每个弱分类器只有一个树桩,使用一个特征表述。检测时,挨个计算每个弱分类器,并与之前的计算结果累加起来与累加阈值进行比较,通过后继续后面的比较。因此并不依赖某一个特性值,可能某个正样本通过了大部分特征,但是少数特性没有通过,这样最后也能输出为正样本。测试数据为1.7W个人脸正样本22*22,22W负样本(初始化3.2W个,后续慢慢添加),训练结果有4923个弱分类器1、与传统cascade不同的是,softcascade并不对特性进行分组,这样避免了训练时每组必须满足检测率与虚警率而造成弱分类器很多的情况,传统cascade的检测率为每级检测率的级数次幂。那么softcascade是如何在训练时保证检测率与虚警率呢?ROC曲线部分还没读完2、softcascade也是借鉴了传统cascade的比较方法,比较弱分类器的累加和,传统cascade比较的是每个强分类器中弱分类器的累加和,由此可见传统cascade设计分组也是为了较好的控制检出率与虚警率
■网友
就是Adaboost without stage, 每个weak classifier有一个threshold,逐个evaluate,随时被拒。


    推荐阅读