主要内容

imageInputLayer

图像输入层

描述

图像输入层向网络输入二维图像并应用数据归一化。

对于3d图像输入,请使用image3dinputlayer.

创建

描述

= imageInputLayer (inputSize的)返回图像输入层并指定InputSize财产。

例子

= imageInputLayer (inputSize名称,价值的)设置可选属性使用名称-值对。可以指定多个名称-值对。将每个属性名用单引号括起来。

属性

全部展开

图像输入

输入数据的大小,指定为整数行向量[H W C],在那里HW., 和C分别对应于通道的高度,宽度和数量。

  • 对于灰度图像,请指定向量C等于1

  • 对于RGB图像,请指定向量C等于3.

  • 对于多光谱或高光谱图像,指定一个向量C等于通道的数量。

对于3-D图像或体积输入,使用image3dinputlayer.

例子:(224 224)

每次数据通过输入层向前传播时应用的数据规范化,指定为以下其中之一:

  • “zerocenter”-减去指定的平均值的意思是

  • 'zscore'-减去指定的平均值的意思是然后除以standarddeviation.

  • 'Rescale-ysmmetric'- 使用最小值和最大值,重新归类输入到范围[-1,1]的范围最小值最大限度, 分别。

  • “rescale-zero-one”—使用指定的最小值和最大值重新缩放输入,使其在[0,1]范围内最小值最大限度, 分别。

  • '没有任何'—不要对输入数据进行规范化处理。

  • 功能句柄 - 使用指定的功能归一化数据。该函数必须是表单y = func(x),在那里X是输入数据和输出数据吗y为规范化数据。

提示

默认情况下,软件会自动计算训练时间的归一化统计。为节省训练时的时间,指定规范化所需的统计信息并设置'resetInputnormalization'选项培训选项错误的

归一化尺寸,指定为下列尺寸之一:

  • '汽车'- 如果培训选项是错误的然后指定任何标准化统计量(的意思是standarddeviation.最小值,或最大限度),然后对与统计数据匹配的维度进行规范化。否则,重新计算训练时的统计数据,并应用通道方向的归一化。

  • “通道”- 频道明智的归一化。

  • '元素'- 明智的归一化。

  • '全部'- 使用标量统计来规范所有值。

数据类型:字符|字符串

指定为零中心和z评分标准化的意思H——- - - - - -W.——- - - - - -C阵列,一个1-by-by-C每个通道,数字标量或[],在那里HW., 和C对应于平均值的高度,宽度和频道的数量。

如果您指定了的意思是属性,然后正常化必须是“zerocenter”'zscore'.如果的意思是[],然后软件计算培训时间的平均值。

在没有培训的情况下创建网络时,可以设置此属性(例如,使用网络使用assembleNetwork)。

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

z-score标准化的标准偏差,指定为aH——- - - - - -W.——- - - - - -C阵列,一个1-by-by-C每个通道,数字标量或[],在那里HW., 和C对应于标准偏差的高度,宽度和频道的数量。

如果您指定了standarddeviation.属性,然后正常化必须是'zscore'.如果standarddeviation.[],然后软件计算训练时间的标准偏差。

在没有培训的情况下创建网络时,可以设置此属性(例如,使用网络使用assembleNetwork)。

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

缩放的最小值,指定为H——- - - - - -W.——- - - - - -C阵列,一个1-by-by-C每个通道、数字标量或最小值的数组[],在那里HW., 和C对应于最小值的高度,宽度和通道数。

如果您指定了最小值属性,然后正常化必须是'Rescale-ysmmetric'“rescale-zero-one”.如果最小值[],然后该软件在培训时间计算最小值。

在没有培训的情况下创建网络时,可以设置此属性(例如,使用网络使用assembleNetwork)。

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

缩放的最大值,指定为H——- - - - - -W.——- - - - - -C阵列,一个1-by-by-C每个通道、数字标量或最大值的数组[],在那里HW., 和C对应于最大值的高度,宽度和最大值的通道数。

如果您指定了最大限度属性,然后正常化必须是'Rescale-ysmmetric'“rescale-zero-one”.如果最大限度[]然后,软件在训练时间计算最大值。

在没有培训的情况下创建网络时,可以设置此属性(例如,使用网络使用assembleNetwork)。

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

笔记

DataAugmentation属性不推荐使用。使用裁剪、反射和其他几何变换对图像进行预处理augmentedImageDatastore代替。

要在训练期间使用的数据增强转换,指定为以下方式之一。

  • '没有任何'- 没有数据增强

  • “randcrop”-从训练图像中随机裁剪。随机作物的大小与输入的大小相同。

  • 'randfliplr'随机翻转输入图像水平与50%的机会。

  • 细胞阵列“randcrop”'randfliplr'.软件按照单元阵列中指定的顺序应用增强。

图像数据的增强是减少过度装箱的另一种方式[1][2]

数据类型:字符串|字符|细胞

层名,指定为字符向量或字符串标量。为数组输入,Trainnetwork.assembleNetwork分层图, 和dlnetwork函数自动为层分配名称的名字设置''

数据类型:字符|字符串

图层的输入数。该图层没有输入。

数据类型:

输入层名。该图层没有输入。

数据类型:细胞

此属性是只读的。

图层的输出次数。此图层仅具有单个输出。

数据类型:

此属性是只读的。

输出层的名称。此图层仅具有单个输出。

数据类型:细胞

例子

全部收缩

为28×28彩色图像创建图像输入层,名称'输入'.默认情况下,该图层通过从每个输入图像中减去训练的平均图像来执行数据归一化。

InputLayer = ImageInputLayer([28 28 3],'姓名''输入'的)
inputlayer = ImageInputLayer with properties: Name: 'input' InputSize: [28 28 3] Hyperparameters dataugmentation: 'none' NormalizationDimension: 'auto' Mean: []

包括在a中的图像输入图层大批。

层= [...ImageInputLayer([28 28 1])卷积2dlayer(5,20)rululayer maxpooling2dlayer(2,'走吧',2)全连接层(10)SoftMaxLayer分类层]
图层= 7x1层阵列,带有图层:1''图像输入28x28x1图像与“zerocenter”归一化2''卷积20 5x5卷绕卷曲[1 1]和填充[0 0 0 0] 3''Relu Relu 4''Max汇集2x2 max汇集步进[2 2]和填充[0 0 0 0] 5''完全连接的10完全连接的第6层''softmax softmax 7''分类输出crossentropyex

兼容性考虑因素

全部展开

不建议从R2019b开始

未来版本中的行为改变

参考文献

Krizhevsky, A. I. Sutskever和G. E. Hinton。基于深度卷积神经网络的图像网络分类。神经信息处理系统研究进展.25卷,2012年。

[2] Cireşan, D., U. Meier, J. Schmidhuber。“图像分类的多列深度神经网络”。计算机愿景和模式识别的IEEE会议, 2012年。

扩展功能

在R2016A介绍