vision.PeopleDetector

检测使用HOG特征直立人

描述

人检测对象检测在使用梯度方向的直方图(HOG)的功能和训练的支持向量机(SVM)分类器的输入图像的人。金宝app该物体检测处于直立位置不堵塞的人。

为了检测人的图像:

  1. 创建vision.PeopleDetector对象并设置其属性。

  2. 调用带参数的对象,就好像它是一个功能。

要了解更多有关系统对象的方式工作,请参阅什么是系统对象?(MATLAB)。

创建

描述

peopleDetector= vision.PeopleDetector返回一个人的检测对象,peopleDetector,跟踪视频中的点的集合。

peopleDetector= vision.PeopleDetector(模型创建人检测对象,并将ClassificationModel属性模型

peopleDetector= vision.PeopleDetector(名称,值属性集使用一个或多个名称值对。在引号中每个属性的名称。例如,peopleDetector = vision.PeopleDetector( 'ClassificationModel', 'UprightPeople_128x64')

属性

展开全部

除非另有说明,性质nontunable,这意味着调用对象后,你不能改变它们的值。对象锁,当你打电话给他们,和释放功能解锁他们。

如果属性可调,你可以在任何时候改变它的值。

有关更改属性值的更多信息,请参阅使用系统对象的系统设计在MATLAB(MATLAB)。

分类模型的名称,指定为'UprightPeople_128x64'要么'UprightPeople_96x48'。像素尺寸指示用于训练图像大小。

用来训练模型的图像包括周围的人背景像素。因此,检测到的人的实际尺寸比训练图像尺寸小。

人们分类阈值,指定为非标量值。使用此阈值多尺度检测过程中控制单个图像子区域的分类。阈值控制分区是否会被列为一个人。当有许多错误的检测可以增加这个值。较高的阈值,更严格的要求,是分类。改变阈值超过值的范围来寻找您的数据集的最佳值。典型值的范围从04

可调:

包含一个人,以像素为单位指定作为两元件矢量最小区域,[高度宽度]。将此属性设置为包含人的最小尺寸的区域。您可以减少计算时间,当你设置该属性。要做到这一点,该属性设置为用于训练分类模型的图像大小的值。如果不指定此属性,探测器将其设置为用于训练分类模型的图像尺寸。

可调:

包含一个人,以像素为单位指定作为两元件矢量最大区域,[高度宽度]。将此属性设置为包含一个人最大的地区。您可以减少计算时间,当你设置该属性。要做到这一点,该属性设置为输入图像的尺寸小的值。如果不指定此属性,探测器将它设置为输入图像尺寸。此属性是可调的。

多尺度物体检测缩放,指定为一个值大于1.0001。比例因子逐步扩展的检测分辨率MINSIZEMAXSIZE。您可以将比例因子设置为使用的理想值:

尺寸一世)/(尺寸一世) -0.5

对象计算每个增量检测分辨率。

回合TrainingSize*(比例因子ñ))

在这种情况下,TrainingSize[128 64]为了'UprightPeople_128x64'模型和[96 48]为了'UprightPeople_96x48'模型。ñ是增量。降低比例因子可以提高检测精度。但是,这样做增加了计算时间。此属性是可调的。

以像素为单位,指定为标量检测窗口的步幅或两元素的向量,[Xÿ]。检测器使用的窗口的步幅到检测窗口在图像上滑动。当指定该值作为矢量,所述第一和第二元件处于步幅大小Xÿ方向。如果指定此值作为标量,步幅是上是相同的Xÿ。减少窗口步幅可以提高检测精度。但是,这样做增加了计算时间。增加窗口大步超越[8 8]会导致错过检测的数量更多。此属性是可调的。

合并检测控制,指定为真正要么。此属性控制是否类似的检测进行合并。将此属性设置为真正使用均值漂移算法基于合并包围盒。将此属性设置为输出未合并包围盒。

对于更多的灵活性和合并参数的控制,你可以使用selectStrongestBbox在地方的功能MergeDetections算法。要做到这一点,设置MergeDetections属性。查看从移动的汽车跟踪行人例如,其示出了使用人的检测器和selectStrongestBbox功能。

感兴趣的使用区域,指定为真正要么。将此属性设置为真正到的所述输入图像内的感兴趣的矩形区域内检测物体。

用法

描述

bboxes= peopleDetector(一世对输入图像的多尺度上物体检测,一世并返回中号-by-4矩阵定义中号边界框。中号代表检测的人数。所述输出矩阵的每行,BBOXES包含一个四元素矢量,[Xÿ宽度高度。这个向量指定,以像素为单位左上角和大小,边界框的。如果没有检测到人,方法返回一个空载体。输入图像,一世,必须是一个灰度或真彩色(RGB)图像。

[bboxes分数] = peopleDetector(一世另外返回该检测的置信度值。

[___] = peopleDetector(一世投资回报率检测矩形搜索区域内的人,投资回报率

输入参数

展开全部

输入图像,指定为灰度或真彩色(RGB)。

图像中感兴趣的矩形区域一世,指定为一个四元素矢量,[Xÿ宽度高度]。

分类模型,指定为'UprightPeople_128x64'要么'UprightPeople_96x48'

输出参数

展开全部

人检测对象,返回一个对象。检测器检测在使用梯度方向的直方图(HOG)的功能和训练的SVM分类器的输入图像的人。该物体检测处于直立位置不堵塞的人。

对象函数

使用对象函数,指定系统对象™作为第一个输入参数。例如,为了释放一个名为System对象的系统资源OBJ,使用此语法:

释放(OBJ)

展开全部

系统对象算法
释放 释放资源,并允许更改系统对象属性值和输入特性
重启 复位的内部状态系统对象

例子

全部收缩

创建人检测并加载输入图像。

peopleDetector = vision.PeopleDetector;I = imread('visionteam1.jpg');

检测使用人检测对象的人。

[bboxes,分数] = peopleDetector(I);

注释检测到人。

I = insertObjectAnnotation(I,'长方形',bboxes,分数);人物,imshow(I)称号(“检测到的人与检测分数”);

参考

[1]达拉尔,N。和B. Triggs。“对于人体检测方向梯度直方图,”IEEE会议计算机视觉与模式识别程序2005年6月,第886-893。

扩展功能

介绍了在R2012b