主要内容

selectStrongestBboxMulticlass

从重叠的簇中选择最强的多类包围框

描述

例子

selectedBboxes= selectStrongestBboxMulticlass (bboxes分数标签返回具有高置信度得分的选定边框。该函数使用贪婪非最大抑制(NMS)来消除重叠的边界框bboxes输入,仅当它们具有相同的类标签时。

selectedBboxesselectedScoresselectedLabels指数) = selectStrongestBboxMulticlass (bboxes分数标签另外,返回与所选边界框关联的分数、标签和索引。

___) = selectStrongestBboxMulticlass (___名称,值使用一个或多个指定的附加选项名称,值对参数。

例子

全部折叠

使用两种不同的模型创建检测器。这些将用于生成多类检测结果。

detectorInria = peopleDetectorACF (inria - 100 x41的);detectorCaltech = peopleDetectorACF (“caltech-50x21”);

应用探测器。

我= imread (“visionteam1.jpg”);[bboxesInria, scoresInria] =检测(detectorInria,我,“SelectStrongest”、假);[bboxesCaltech, scoresCaltech] =检测(detectorCaltech,我,“SelectStrongest”、假);

为每个检测器的结果创建分类标签。

labelsInria = repelem (“法国”元素个数(scoresInria), 1);labelsInria =分类(labelsInria, {“法国”加州理工学院的});labelsCaltech = repelem (“加州理工学院”元素个数(scoresCaltech), 1);labelsCaltech =分类(labelsCaltech, {“法国”加州理工学院的});

将所有检测器的结果合并为多类检测结果。

allBBoxes = [bboxesInria; bboxesCaltech];allScores = [scoresInria; scoresCaltech];allLabels = [labelsInria; labelsCaltech];

运行多类非最大抑制。

(bboxes、分数、标签)= selectStrongestBboxMulticlass (allBBoxes、allScores allLabels,...“RatioType”“最小值”“OverlapThreshold”, 0.65);

注释中发现的人。

注释=字符串(标签)+”:“+字符串(分数);我= insertObjectAnnotation (,“矩形”、bboxes cellstr(注释);imshow (I)标题(“被检测的人、分数和标签”

图中包含一个轴对象。标题为“检测人员”、“分数”和“标签”的axis对象包含一个类型为image的对象。

输入参数

全部折叠

边框,指定为4或- × 5非稀疏数值矩阵。为包围框的数目。矩阵的每一行都将边界框定义为轴对齐矩形或旋转矩形。该表描述了每个边界框的格式。

边界框 描述
Axis-aligned矩形

在像素坐标中定义为-乘4的数字矩阵,列的形式[xywh),地点:

  • 为轴对齐矩形的数目。

  • xy指定矩形的左上角。

  • w指定矩形的宽度,即矩形沿边框的长度x设在。

  • h指定矩形的高度,即矩形沿边框的长度y设在。

旋转的矩形

在空间坐标中定义为-乘5的数字矩阵,其行形式为[xctryctrxlenylen偏航),地点:

  • 为旋转矩形的数目。

  • xctryctr指定矩形的中心。

  • xlen指定矩形的宽度,即矩形沿边框的长度x设在前旋转。

  • ylen指定矩形的高度,即矩形沿边框的长度y设在前旋转。

  • 偏航指定旋转角度(以度为单位)。围绕包围盒的中心旋转是顺时针方向的。

正方形矩形旋转-30度。

数据类型:||int8|int16|int32|uint8|uint16|uint32

与输入边界框对应的置信度得分,指定为1的向量。的selectStrongestBboxMulticlass函数使用greedy NMS消除重叠的边界框,并将置信度评分与框关联。分数越高,表示保持边界框的信心越高。的分数输入必须是实数、有限和非稀疏的。

数据类型:||int8|int16|int32|uint8|uint16|uint32

与输入边界框对应的标签,指定为-by-1类别或数字向量。

数据类型:||int8|int16|int32|uint8|uint16|uint32|分类

名称-值参数

指定可选的逗号分隔的对名称,值参数。的名字参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:“RatioType”“联盟”设置“RatioType”财产“联盟”

比率类型,指定为字符向量“联盟”“最小值”

  • 设置比率类型为“联盟”以求两者交点面积的比值bboxAbboxB,除以两者结合的面积。

  • 设置比率类型为“最小值”以求两者交点面积的比值bboxAbboxB,除以两个边界框的最小面积。

数据类型:字符

重叠率阈值,指定为逗号分隔对,由'OverlapThreshold和范围为[0 1]的标量。当重叠率超过阈值时,函数移除参考框周围的边界框。降低阈值以减少选定的包围框的数量。但是,如果阈值降低太多,可能会消除图像中表示彼此接近的对象的框。

数据类型:|

最强框的最大数量,指定为逗号分隔对,由“NumStrongest”或者一个正标量。当您有关于最大箱子数量的先验知识时,使用此参数可以减少处理时间。将值设置为选择所有最强的、不重叠的包围框。

标签输入包含分类标签,您还可以指定一个向量,该向量包含标签输入中每个类别的最强框的最大数量。指定向量的长度必须等于标签中的类别数。

输出参数

全部折叠

选中的包围框,返回为4或5矩阵。4个元素的向量表示轴对齐的矩形,5个元素的向量表示旋转的矩形。

selectedBbox控件的输出返回选定的边界框bbox有最高自信分数的输入。该函数使用非最大抑制来消除重叠的边界框。

数据类型:||int8|int16|int32|uint8|uint16|uint32

选定的包围框的分数,返回为1的向量。的第几分selectedScores输出对应于边界框在selectedBboxes输出。的数据类型selectedScores的数据类型分数

被选择的边框的标签,返回为-by-1类别或数字向量。的标签在selectedLabels输出对应于边界框在selectedBboxes输出。的数据类型selectedLabels的数据类型标签

所选包围框的索引,返回为1的向量。的指数控件中的选定框的索引bboxes输入。

数据类型:

扩展功能

介绍了R2018a