opencv:级联分类器训练(cascade classifier training)(两个分类器的区别)

# 介绍 级联分类器包括两个工作阶段:训练(traning),检测(detection)。检测阶段在文档《objdetect module of general OpenCV documentation》中描述,在那篇文档中,给出了一些关于级联分类器的基本信息。本文主要说明如何训练一个级联分类器:准备训练数据,执行训练程序 # 重要提示 有两个程序用来训练级联分类器:opencv_haartraining 和 opencv_traincascade。后者是一个较新的版本,使用c++编写,基于opencv 2.x api。但两者最主要的区别是,后者即支持 Haae [Viola2001 http://docs.opencv.org/doc/user_guide/ug_traincascade.html#viola2001 ],也支持LBP [Liao2007 http://docs.opencv.org/doc/user_guide/ug_traincascade.html#liao2007 ] (local binary patterns). LBP比Haar更加integer,所以,无论是training还是detection,LBP都比Haar快好几倍。至于两种方法的检测质量,取决于训练:首先是训练数据集的质量,然后是训练的参数。基于LBP的分类器达到基于Haar分类器的质量是有可能的。 opencv_haartraining 和 opencv_traincascade使用不同的文件格式保存训练过的分类器。注意,新的级联检测接口(见类CascadeClassifier,objdetect模块)支持两种格式。opencv_traincascade可以保存(导出)旧格式的训练结果。但两者在中断后,不能load(import)彼此的文件格式.(But opencv_traincascade and opencv_haartraining can not load (import) a classifier in another … 继续阅读 

原文地址:https://www.cnblogs.com/qqhfeng/p/3634897.html