主要内容

fasterRCNNLayers

创建一个更快的R-CNN对象检测网络

描述

例子

lgraph= fasterRCNNLayers (inputImageSizenumClassesanchorBoxes网络返回一个更快的R-CNN网络作为layerGraph(深度学习工具箱)对象。Faster R-CNN网络是一种基于卷积神经网络的目标检测器。检测器预测一组锚框的边界框坐标、对象性分数和分类分数。要训练创建的网络,请使用trainFasterRCNNObjectDetector函数。有关更多信息,请参见R-CNN入门,快R-CNN,快R-CNN

lgraph= fasterRCNNLayers (inputImageSizenumClassesanchorBoxes网络featureLayer返回基于指定的对象检测网络featureLayer网络的。指定网络为时使用此语法SeriesNetwork(深度学习工具箱)DAGNetwork(深度学习工具箱),或layerGraph(深度学习工具箱).对象。

lgraph= fasterRCNNLayers (___名称,值返回具有由一个或多个名-值对参数指定的可选输入属性的对象检测网络。

使用此功能需要深度学习工具箱™。

例子

全部折叠

指定图像大小。

inputImageSize = [224 224 3];

指定要检测的对象数量。

numClasses = 1;

使用预训练的ResNet-50网络作为Faster R-CNN网络的基础网络。你必须下载resnet50(深度学习工具箱)金宝app支持包。

网络=“resnet50”

指定用于特征提取的网络层。您可以使用analyzeNetwork(深度学习工具箱)函数查看网络中的所有层名。

featureLayer =“activation_40_relu”

指定锚框。你也可以使用estimateAnchorBoxes函数从训练数据中估计锚框。

锚定箱= [64,64;128128;192192);

创建更快的R-CNN对象检测网络。

lgraph = fastrcnnlayers (inputImageSize,numClasses,anchorBoxes,...网络、featureLayer)
lgraph = LayerGraph with properties: Layers: [188x1 nnet.cnn.layer.Layer] Connections: [205x2 table] InputNames: {'input_1'} OutputNames: {1x4 cell}

使用网络分析器可视化网络。

analyzeNetwork (lgraph)

输入参数

全部折叠

网络输入图像大小,指定为3元素向量,格式为[高度宽度深度].深度是图像通道的数量。集深度3.对于RGB图像,到1对于灰度图像,或者对于多光谱和高光谱图像的通道数。

网络要分类的类数,指定为大于0的整数。

锚框,指定为的-by-2矩阵格式为[高度宽度].根据训练数据集中对象的规模和纵横比确定锚盒。例如,如果对象是由一个方形窗口本地化的,那么您可以将锚定框的大小设置为[64 64;128 128]

预训练分类网络,指定为aSeriesNetwork(深度学习工具箱)DAGNetwork(深度学习工具箱),或layerGraph(深度学习工具箱),或类似于下列任何一项:

当您将网络指定为SeriesNetwork(深度学习工具箱)对象,DAGNetwork(深度学习工具箱)对象或名称,该函数将网络转换为Faster R-CNN网络。它通过添加区域建议网络(RPN)、ROI最大池化层以及新的分类和回归层来转换网络以支持对象检测。金宝app

特征提取层,指定为字符向量或字符串标量。使用指定的网络中较深的层之一。您可以使用analyzeNetwork(深度学习工具箱)函数查看输入网络中各层的名称。

请注意

您可以指定除全连接层之外的任何网络层作为特征层。

名称-值参数

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

在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字在报价。

例子:“ROIMaxPoolingLayer”“汽车”

ROI最大池化层,指定为“汽车”“插入”,或“替换”.您可以指定a是否roiMaxPooling2dLayer取代池化层或跟随特征提取层。

如果您选择“汽车”,函数为:

  • 当特征提取层旁边的层不是最大池化层时,在特征提取层之后插入一个新的ROI最大池化层。

  • 将特征提取层之后的当前池化层替换为ROI最大池化层。

ROI最大池化层输出大小,指定为“汽车”或者2元正整数向量。当您将值设置为时“汽车”时,函数根据参数确定输出大小ROIMaxPoolingLayer财产。它使用特征提取层或特征提取层之后的池化层的输出大小。

输出参数

全部折叠

对象检测网络,返回为layerGraph(深度学习工具箱)对象。输出和基础网络imageInputLayer归一化值是相等的。

版本历史

R2019b引入