主要内容

ssdLayers

SSD多盒目标检测网络

描述

实例

lgraph=ssdLayers(图像大小,numClasses,baseNetwork)基于创建单点探测器(SSD)多盒对象检测网络baseNetwork,输入图像大小,以及网络应配置为分类的类别数。网络作为分层图(深度学习工具箱)对象。

SSD是一个基于卷积神经网络的对象检测器,可以预测边界框坐标、分类分数和相应的类标签。

lgraph=ssdLayers(___,锚箱,predictorLayerNames)返回SSD,其中包含锚箱在指定的位置连接到网络层的predictorLayerNames.除了前面语法中的输入参数外,还要指定这些参数。

例子

全部折叠

指定基本网络。

基本网络=“vgg16”;

指定图像大小。

imageSize = [300 300 3];

指定要检测的类。

numClasses = 2;

创建SSD对象检测网络

lgraph=ssdLayers(图像大小、numclass、基本网络);

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

分析网络(lgraph)

输入参数

全部折叠

输入图像的大小,指定为这些值之一。

  • 形式的二元向量[HW为大小的灰度图像H——- - - - - -W

  • 形式的三元向量[HW3] 对于大小为的RGB彩色图像H——- - - - - -W

当你设定baseNetwork输入到“vgg16”,“resnet50”“resnet101”这个图像大小输入必须采用[HW3].

网络要分类的类数,指定为正标量。

预训练卷积神经网络,指定为分层图(深度学习工具箱),达格网络(深度学习工具箱)系列网络(深度学习工具箱)对象或作为这些网络名称之一。若要指定其中一个名称,必须下载并安装相应有效网络名称的网络支持包。金宝app

采用预训练卷积神经网络作为SSD多盒目标检测网络的基础。有关预训练网络的详细信息,请参见MATLAB®看见预先训练的深度神经网络(深度学习工具箱)

锚箱,指定为1-x-M细胞数组MSSD网络中的预测器层数。每个预测器层包含一个K- × 2矩阵K表格的锚框[身高宽度].每个元素中的锚框数量可以变化。

每个锚盒的大小是根据输入训练数据中存在的不同对象类的比例和宽高比来确定的。每个锚盒的大小必须小于或等于输入图像的大小。您可以使用聚类方法从训练数据中估计锚盒。有关更多信息,请参见根据训练数据估计锚盒

输入的层名,指定为M-字符串或1-by的元素向量-M字符向量的单元格数组。SSD检测子网连接到由该输入指定的预测器层。

输出参数

全部折叠

SSD多盒对象检测网络,返回为a分层图(深度学习工具箱)对象。

笔记

的默认值归一化属性的图像输入层返回lgraph对象设置为归一化中指定的基本网络的属性baseNetwork

算法

这个ssdLayers函数创建SSD网络并返回lgraph,表示SSD对象检测器的网络体系结构的对象。

这个trainSSDObjectDetector函数训练并返回SSD对象检测器,SSD探测器.使用发现目标函数SSD探测器对象使用经过SSD网络体系结构培训的探测器检测对象。

bbox=检测(检测器,I)

这个ssdLayers函数使用预训练的神经网络作为基础网络,向其添加创建SSD对象检测网络所需的检测子网络。给定基础网络,ssdLayers删除基本网络中要素层之后的所有层,并添加检测子网络。检测子网络由一组串联卷积、校正线性单元(ReLU)和批量归一化层组成。检测子网中增加了SSD合并层、盒回归层和焦损分类层。

参考文献

[1] 刘伟、德拉戈米尔·安格洛夫、杜米特鲁·二汉、克里斯蒂安·塞格迪、斯科特·里德、程扬福和亚历山大·贝格,《SSD:单激发多盒探测器》,载于计算机视觉-ECCV 2016,由Bastian Leibe、Jiri Matas、Nicu Sebe和Max Welling编辑,9905:21-37。Cham:Springer国际出版社,2016年。https://doi.org/10.1007/978-3-319-46448-0_2.

[2] Huang, Jonathan, Vivek Rathod, Chen Sun, Menglong Zhu, Anoop Korattikara, Alireza Fathi, Ian Fischer, et al.现代卷积目标探测器的速度/精度权衡在2017 IEEE计算机视觉与模式识别大会(CVPR),3296-97。檀香山,HI:IEEE,2017。https//doi.org/10.1109/CVPR.2017.351。

在R2020a中引入