主要内容

vision.PeopleDetector

检测正直的人用猪的特性

描述

人们对象探测器检测到的输入图像的直方图面向梯度(猪)特性和训练支持向量机(SVM)分类器。金宝app对象,从而检测到一个正直的人的位置。

检测人的形象:

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

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

了解更多关于系统对象是如何工作的,看到的系统对象是什么?

创建

描述

例子

peopleDetector= vision.PeopleDetector返回一个人探测器对象,peopleDetector跟踪一组点的视频。

peopleDetector= vision.PeopleDetector (模型)创建一个人探测器对象和设置ClassificationModel财产模型

peopleDetector= vision.PeopleDetector (名称,值)设置使用一个或多个属性名称-值对。在报价附上每个属性的名字。例如,peopleDetector = vision.PeopleDetector (“ClassificationModel”、“UprightPeople_128x64”)

属性

全部展开

属性,除非另有注明nontunable后,这意味着你不能改变它们的值调用对象。对象锁当你叫他们,释放函数打开它们。

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

改变属性值的更多信息,请参阅系统设计在MATLAB使用系统对象

分类模型的名称,指定为“UprightPeople_128x64”“UprightPeople_96x48”。像素尺寸显示图像大小用于培训。

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

人分类阈值,指定为负的标量值。使用这个阈值来控制个体的分类图像在多尺度检测条件。阈值控制次区域是否会被分类为一个人。你可以增加这个值时,有很多错误的检测。阈值越高,要求的更严格的分类。不同阈值的范围值来找到您的数据集的最优值,典型值的范围从04

可调:是的

最小的区域包含一个人,作为双元素中指定像素矢量,(高度宽度]。将此属性设置为包含一个人区域的最小大小。可以减少计算时间,当你设定这个属性。为此,将此属性设置为一个值大于图像大小用来训练分类模型。没有指定这个属性时,检测器集的图像大小用来训练分类模型。

可调:是的

最大的区域,包含了一个人,作为双元素中指定像素矢量,(高度宽度]。设置该属性包含一个人最大的地区。可以减少计算时间,当你设定这个属性。为此,将此属性设置为一个值小于输入图像的大小。没有指定这个属性时,探测器将它设置为输入图像的大小。这个属性是可调的。

多尺度对象检测缩放、大于指定为一个值1.0001。之间的比例因子逐步尺度检测分辨率MinSize最大尺寸。你可以设置一个理想值使用的比例因子:

大小()/ (大小()- - -0.5)

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

(TrainingSize* (ScaleFactorN))

在这种情况下,TrainingSize(128 64)“UprightPeople_128x64”模型和[96 48]“UprightPeople_96x48”模型。N是增加的。降低比例因子可以提高检测精度。然而,这样做会增加计算时间。这个属性是可调的。

在像素,检测窗口进步指定为一个标量或一个双元素向量,xy]。探测器使用窗口跨步滑检测窗口在图像。当你指定这个值作为一个矢量,第一和第二元素的步幅大小xy的方向。当你指定这个值作为标量,步都是相同的xy。减少窗口跨步可以提高检测精度。然而,这样做会增加计算时间。增加窗口步之外[8]会导致更多的错过了检测。这个属性是可调的。

合并检测控制,指定为真正的。这个属性控制类似的检测是否合并。将此属性设置为真正的使用一个基于均值漂移算法合并边界框。将此属性设置为输出unmerged边框。

合并的更大的灵活性和控制参数,您可以使用selectStrongestBbox函数的地方MergeDetections算法。为此,设置MergeDetections财产。看到跟踪行人在开动的汽车里例子,显示了人们探测器的使用selectStrongestBbox函数。

使用感兴趣的区域,指定为真正的。将此属性设置为真正的检测对象在输入图像中感兴趣的一个矩形区域。

使用

描述

例子

bboxes= peopleDetector ()执行多尺度对象检测输入图像,并返回一个4矩阵定义边界框。表示检测到的人数。每一行的输出矩阵,BBOXES,包含一个研制出向量,xy宽高)。这个向量指定,在像素,左上角和大小,边界框。当没有人发现,对象返回一个空向量。输入图像,,必须是一个灰度或真彩图像(RGB)。

(bboxes,分数)= peopleDetector ()此外返回一个信心值检测。

(___)= peopleDetector (,roi)检测人在矩形内搜索区域,roi

输入参数

全部展开

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

感兴趣的矩形区域内的图像,指定为一个研制出向量,xy宽度高度]。

分类模型,指定为“UprightPeople_128x64”“UprightPeople_96x48”

输出参数

全部展开

人探测器对象,作为一个对象返回。探测器探测到的人一个输入图像的直方图的梯度(猪)特性和训练支持向量机分类器。对象,从而检测到一个正直的人的位置。

对象的功能

使用一个目标函数,指定系统对象™作为第一个输入参数。例如,释放系统资源的系统对象命名obj使用这个语法:

发行版(obj)

全部展开

一步 运行系统对象算法
释放 释放资源,并允许修改系统对象属性值和输入特征
重置 重置的内部状态系统对象

例子

全部折叠

创建一个人探测器和负载输入图像。

peopleDetector = vision.PeopleDetector;我= imread (“visionteam1.jpg”);

发现人们使用探测器对象。

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

注释中发现的人。

我= insertObjectAnnotation (,“矩形”bboxes,分数);图中,imshow (I)标题(检测人员和检测成绩的);

图包含一个坐标轴对象。坐标轴对象与标题检测人员和检测成绩包含一个类型的对象的形象。

引用

[1]中间人,n和b区格。“人类的面向梯度直方图检测。”学报IEEE计算机视觉与模式识别会议,2005年6月,页886 - 893。

扩展功能

版本历史

介绍了R2012b