cvHaarDetectObjects、cvRectangle

cvHaarDetectObjects简介
cvHaarDetectObjects函数为开放计算机视觉( OpenCV )库 库函数 之一,用来检测图像中的目标
定义
CvSeq* cvHaarDetectObjects( const CvArr* image, CvHaarClassifierCascade* cascade,
CvMemStorage* storage, double scale_factor=1.1,
int min_neighbors=3, int flags=0,  CvSize(min_size=cvSize(0,0) ,CvSize max_size=cvSize(0,0));
参数说明
mage 被检图像
cascade haar 分类器级联的内部标识形式
storage 用来存储检测到的一序列候选目标矩形框的内存区域。
scale_factor 在前后两次相继的扫描中,搜索窗口的比例系数。例如1.1指将搜索窗口依次扩大10%
min_neighbors 构成检测目标的相邻矩形的最小个数(缺省-1)。如果组成检测目标的小矩形的个数和小于 min_neighbors-1 都会被排除。如果min_neighbors 为 0, 则函数不做任何操作就返回所有的被检候选矩形框,这种设定值一般用在用户自定义对检测结果的组合程序上。
flags 操作方式。当前唯一可以定义的操作方式是 CV_HAAR_DO_CANNY_PRUNING。如果被设定,函数利用Canny边缘检测器来排除一些边缘很少或者很多的图像区域,因为这样的区域一般不含被检目标。人脸检测中通过设定 阈值使用了这种方法,并因此提高了检测速度。
min_size 检测窗口的最小尺寸。缺省的情况下被设为 分类器训练时采用的样本尺寸(人脸检测中缺省大小是~20×20)。
关于flag不同取值的介绍
#define CV_HAAR_DO_CANNY_PRUNING 1    //这个值告诉分类器跳过平滑(无边缘)区域
      #define CV_HAAR_SCALE_IMAGE 2   //这个值告诉分类器不要缩放分类器,而是缩放图像
      #define CV_HAAR_FIND_BIGGEST_OBJECT 4  //告诉分类器只返回最大的目标
      #define CV_HAAR_DO_ROUGH_SEARCH 8  //它只能和上面一个参数一起使用,告诉分类器在任何窗口,只要第一         个候选者被发现则结束搜寻。

cvRectangle的用法

Rectangle

绘制简单、指定粗细或者带填充的 矩形

void cvRectangle(CvArr* img,CvPoint pt1,CvPoint pt2,CvScalar color,int thickness=1,int line_type=8, int shift=0 );
img
图像.
pt1
矩形的一个顶点。
pt2
矩形对角线上的另一个顶点
color
线条颜色 (RGB) 或亮度(灰度图像 )(grayscale image)
thickness
组成矩形的线条的粗细程度。取负值时(如 CV_FILLED)函数绘制填充了色彩的矩形。
line_type
线条的类型。见cvLine的描述

line_type=8, 

   8 (or 0) - 8-connected line(8邻接)连接 线。
   4 - 4-connected line(4邻接)连接线。

   CV_AA - antialiased 线条。


shift
坐标点的小数点位数。
 

函数 cvRectangle 通过对角线上的两个顶点绘制矩形。



你可能感兴趣的:(OpenCV)