OpenCV  4.10.0
开源计算机视觉
正在加载...
正在搜索...
无匹配项
| 枚举 | 函数
面向对象检测的级联分类器

详细信息

下面描述的对象检测器最初由 Paul Viola [284] 提出,并由 Rainer Lienhart [167] 改进。

首先,使用数百个特定对象(比如人脸或汽车)的样本视图(称为正面样例),对分类器(即“使用类 Haar 特征的提升分类器的级联”)进行训练,将这些视图调整到相同的大小(比如 20x20)以及相同的负面样例(任意大小的图像)。

在训练分类器之后,可以将其应用于输入图像中感兴趣的区域(与训练期间所用区域大小相同)。如果该区域可能显示对象(比如人脸/汽车),分类器将输出“1”;否则输出“0”。要在整个图像中搜索对象,可以在图像中移动搜索窗口,并使用分类器检查每个位置。该分类器经过设计,可以轻松“调整大小”,以便能够找到不同大小的感兴趣对象,而这比调整图像本身的大小要更有效率。因此,若要在图像中找到一个未知大小的对象,应在不同比例下执行扫描程序多次。

分类器名称中的“级联”一词表示所得分类器由若干个简单的分类器(“阶段”)组成,这些分类器依次应用于某个感兴趣的区域,直到某个阶段拒绝候选者或进入所有阶段。单词“提升”表示,级联中的每个阶段的分类器本身都很复杂,并且由使用四种不同的提升技术(加权投票)的基本分类器构建而成。当前支持离散 AdaBoost、真实 AdaBoost、温和 AdaBoost 和 Logitboost。基本分类器是包含至少 2 个叶子的决策树分类器。类 Haar 特征是基本分类器的输入,计算方法如下。当前算法使用以下类 Haar 特征

图像

特定分类器中使用的特征由它的形状(1a、2b 等)、感兴趣区域内的位置以及尺度指定(该尺度与检测阶段使用的尺度不同,尽管这两个尺度会被相乘)。例如,对于第三层特征(2c),响应计算为覆盖整个特征(包括两个白条和中间的黑条)的矩形下图像像素之和与乘以 3 的黑条下图像像素之和之间的差,以补偿区域大小的差异。使用积分图像(见下文和积分描述)快速计算矩形区域的像素值和。

查阅相应教程以了解更多详细信息。

以下参考仅针对检测部分。有一个单独的应用程序名为 opencv_traincascade,可以根据一组样本训练提升分类器的级联。

注意
在新 C++ 接口中,除了 Haar 类似特征外,还可使用 LBP(局部二进制模式)特征。.. [Viola01] Paul Viola 和 Michael J. Jones。使用简单特征的提升级联实现快速对象检测。IEEE CVPR,2001。可在https://github.com/SvHey/thesis/blob/master/Literature/ObjectDetection/violaJones_CVPR2001.pdf上在线获取该论文。

类 cv::BaseCascadeClassifier
 
类 cv::CascadeClassifier
 对象检测的级联分类器类。更多信息...
 
结构 cv::DefaultDeleter< CvHaarClassifierCascade >
 
类 cv::DetectionBasedTracker
 

枚举

枚举 {
  cv::CASCADE_DO_CANNY_PRUNING = 1 ,
  cv::CASCADE_SCALE_IMAGE = 2 ,
  cv::CASCADE_FIND_BIGGEST_OBJECT = 4 ,
  cv::CASCADE_DO_ROUGH_SEARCH = 8
}
 

函数

Ptr< BaseCascadeClassifier::MaskGeneratorcv::createFaceDetectionMaskGenerator ()
 

枚举类型文档

◆ 匿名枚举

匿名枚举

#include <opencv2/objdetect.hpp>

枚举器
CASCADE_DO_CANNY_PRUNING 
Python:cv.CASCADE_DO_CANNY_PRUNING
CASCADE_SCALE_IMAGE 
Python:cv.CASCADE_SCALE_IMAGE
CASCADE_FIND_BIGGEST_OBJECT 
Python:cv.CASCADE_FIND_BIGGEST_OBJECT
CASCADE_DO_ROUGH_SEARCH 
Python: cv.CASCADE_DO_ROUGH_SEARCH

函数说明

◆ createFaceDetectionMaskGenerator()

Ptr< BaseCascadeClassifier::MaskGenerator > cv::createFaceDetectionMaskGenerator ( )