主要内容

检测

使用快速R-CNN对象检测器检测对象

描述

bboxes=检测(探测器,)检测对象在一个图像或一组图片,,使用快速R-CNN检测器与卷积神经网络(地区)对象。返回对象的位置检测的边界框。

使用这个函数时,使用CUDA®使英伟达®GPU是强烈推荐。GPU大大减少了计算时间。使用GPU的并行计算需要工具箱™。关于支持计算能力的信息,看到金宝appGPU计算的需求(并行计算工具箱)

(bboxes,分数)=检测(探测器,)为每一个边界框也返回检测得分。

例子

(___,标签)=检测(探测器,)还返回一个分类标签分配的数组边界框,使用前面的语法。标签用于定义对象类在训练使用trainFastRCNNObjectDetector函数。

(___)=检测(___,roi)检测对象在指定的矩形的搜索区域roi

detectionResults=检测(探测器,ds)检测对象返回的一系列图像输入数据存储的功能。

(___)=检测(___,名称,值)使用一个或多个指定选项名称,值对参数。例如,检测(探测器,我,‘NumStongestRegions’, 1000)限制最强的地区建议1000的数量。

例子

全部折叠

检测车辆在一个图像通过使用更快R-CNN对象探测器。

加载更快R-CNN对象探测器pretrained检测车辆。

data =负载(“fasterRCNNVehicleTrainingData.mat”,“探测器”);探测器= data.detector;

读入一个测试图像。

我= imread (“highway.png”);imshow(我)

图包含一个坐标轴对象。坐标轴对象包含一个类型的对象的形象。

在图像上运行探测器并检查结果。来自的标签一会财产的探测器。

[bboxes、分数、标签]=检测(探测器,我)
bboxes =2×4150 86 80 72 91 89 67 48
成绩=2 x1单一列向量1.0000 - 0.9001
标签=2 x1分类车车

探测器检测有很高的信心。注释的图像检测和相应的检测的边界框的分数。

detectedI = insertObjectAnnotation(我“矩形”、bboxes cellstr(标签);图imshow (detectedI)

图包含一个坐标轴对象。坐标轴对象包含一个类型的对象的形象。

输入参数

全部折叠

快R-CNN对象探测器,指定为一个fastRCNNObjectDetector对象。创建这个对象,调用trainFastRCNNObjectDetector函数与训练数据作为输入。

输入图像,作为指定H——- - - - - -W——- - - - - -C——- - - - - -B数字图像的数组。图片必须是真实的,nonsparse、灰度或RGB图像。

  • H——高像素。

  • W——在像素宽度

  • C——在每个图像通道的大小必须等于网络的输入通道的大小。例如,对于灰度图像,C必须等于1。RGB彩色图像,它必须等于3

  • B——数量的图像数组中。

探测器对输入图像的范围十分敏感。因此,确保输入图像范围相似图像的范围用于训练检测器。例如,如果探测器被训练uint8图片,重新输入图像的范围内(0 255)使用im2uint8重新调节函数。这个输入图像的大小应与培训中使用的图像的大小。如果这些尺寸是非常不同的,检测器检测对象困难因为输入图像中对象的规模与规模不同的探测器被训练来识别对象。考虑你是否使用了SmallestImageDimension房地产在训练修改训练图像的大小。

数据类型:uint8|uint16|int16|||逻辑

数据存储,指定为一个数据存储对象包含图片的集合。每个图像必须是一个灰度、RGB或多通道图像。函数过程只有第一列的数据存储,它必须包含图片和必须细胞数组或包含多个列的表。

搜索感兴趣的区域,指定为研制出向量的形式xy宽度高度]。向量指定区域的左上角和大小(以像素为单位)。

名称-值参数

指定可选的双参数作为Name1 = Value1,…,以=家,在那里的名字参数名称和吗价值相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。

R2021a之前,用逗号来分隔每一个名称和值,并附上的名字在报价。

例子:“NumStrongestRegions”, 1000年

检测阈值,指定为一个标量在[0,1]。检测有分数小于这个阈值删除。减少假阳性,增加这个值。

最大数量的最强的地区建议,指定为逗号分隔组成的“NumStrongestRegions”和一个正整数。降低这个值来加快处理时间为代价的检测精度。使用所有地区的提案,这个值指定为

为每个检测到的对象选择最强的边界框,指定为逗号分隔组成的“SelectStrongest”,要么真正的

  • 真正的——每个对象返回最强的边界框。选择这些箱子,检测调用selectStrongestBboxMulticlass函数实现的,它使用nonmaximal抑制消除重叠边界框基于他们的信心的分数。

    例如:

    selectStrongestBboxMulticlass (bbox,分数,“RatioType”,“最小值”,“OverlapThreshold”,0.5);

  • ——返回所有检测到的边界框。然后您可以创建您自己的自定义操作,消除重叠边界框。

最小区域大小包含检测对象,指定为逗号分隔组成的“MinSize”和一个高度宽度)向量。单位是像素。

默认情况下,MinSize是最小的训练对象探测器可以检测。

最大区域大小,其中包含一个检测对象,指定为逗号分隔组成的最大容量的和一个高度宽度)向量。单位是像素。

为了减少计算时间,将这个值设置为已知的最大区域大小的物体图像中被发现。默认情况下,最大容量的将输入图像的高度和宽度,

最小批量大小,指定为逗号分隔组成的“MiniBatchSize”和一个标量值。使用MiniBatchSize处理大量图像。图像分为minibatches和加工作为一个批处理来提高计算效率。增加minibatch大小减少处理时间。减少使用更少的内存大小。

硬件资源上运行探测器,指定为逗号分隔组成的“ExecutionEnvironment”“汽车”,“图形”,或“cpu”

  • “汽车”——使用GPU(如果可用)。否则,使用CPU。

  • “图形”——使用GPU。使用GPU,必须启用并行计算工具箱和CUDA NVIDIA GPU。如果没有一个合适的GPU,函数返回一个错误。关于支持计算能力的信息,看到金宝appGPU计算的需求(并行计算工具箱)

  • “cpu”——使用CPU。

输出参数

全部折叠

在输入图像或图像中检测到的对象的位置,作为一个返回4矩阵或B1单元阵列。边界框的数量在一个图像,然后呢B的数量是4矩阵当图像的输入包含一个数组。

每一行的bboxes包含一个研制出向量的形式xy宽度高度]。这个向量指定相应的边界框的左上角和大小(以像素为单位)。

检测信心得分,作为一个返回1的向量或一个B1单元阵列。边界框的数量在一个图像,然后呢B的数量是1当图像的输入包含一个数组向量。更高的分数表明更高的诊断信心。

边界盒的标签,作为一个返回1分类或数组B1单元阵列。标签的数量在一个图像,然后呢B的数量是1分类数组当图像的输入包含一个数组。定义用于标签的类名称的对象,当你训练的输入探测器

检测结果,作为三栏返回表变量名,盒子,分数,标签。的盒子4矩阵,发现在图像边界框的对象。每一行包含一个边界框的第4单元矢量格式(x,y,宽度,高度]。格式指定左上角位置和大小的像素边界框在相应的形象。

版本历史

介绍了R2017a