主要内容

addPix2PixHDLocalEnhancer

将本地增强器网络添加到pix2pixHD生成器网络

描述

例子

netWithEnhancer= addPix2PixHDLocalEnhancer (将本地增强器网络添加到pix2pixHD生成器网络,.有关网络架构的更多信息,请参见pix2pixHD本地增强网络

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

netWithEnhancer= addPix2PixHDLocalEnhancer (名称,值使用名称-值参数控制本地增强器网络创建的各个方面。

例子

全部折叠

为大小为512 × 1024的32通道数据指定网络输入大小。

inputSize = [512 1024 32];

创建一个pix2pixHD全局生成器网络。

pix2pixHD = pix2pixHDGlobalGenerator (inputSize)
pix2pixHD = dlnetwork with properties: Layers: [84x1 nnet.cnn.layer.Layer] Connections: [92x2 table] Learnables: [110x3 table] State: [0x3 table] InputNames: {'GlobalGenerator_inputLayer'} OutputNames: {'GlobalGenerator_fActivation'} Initialized: 1

向pix2pixHD网络添加一个本地增强器网络。

pix2pixHDEnhanced = addPix2PixHDLocalEnhancer (pix2pixHD)
pix2pixHDEnhanced = dlnetwork with properties: Layers: [113x1 nnet.cnn.layer.Layer] Connections: [124x2 table] Learnables: [146x3 table] State: [0x3 table] InputNames: {'LocalEnhancer_inputLayer' 'GlobalGenerator_inputLayer'} OutputNames: {'LocalEnhancer_fActivation'} Initialized: 1

显示带有本地增强器的网络。

analyzeNetwork (pix2pixHDEnhanced)

输入参数

全部折叠

Pix2pixHD生成器网络,指定为dlnetwork(深度学习工具箱)对象。控件可以创建一个pix2pixHD生成器网络pix2pixHDGlobalGenerator函数。

名称-值参数

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

例子:“FilterSizeInFirstAndLastBlocks”,[5 7]添加一个局部增强器,其第一个和最后一个卷积层的大小为5乘7

局部增强器网络第一层和最后一层卷积层的滤波器大小,指定为形式为[高度宽度].当您将过滤器大小指定为标量时,该过滤器具有相同的高度和宽度。

局部增强器网络中中间卷积层的滤波器大小,指定为形式为[的正奇整数或正奇整数的2元向量高度宽度].中间卷积层是除第一卷积层和最后卷积层外的卷积层。当您将过滤器大小指定为标量时,该过滤器具有相同的高度和宽度。典型值在3到7之间。

局部增强器网络中的残留块数,指定为正整数。每个残差块由一组卷积层、归一化层和非线性层组成,每个块之间有跳跃连接。

在本地增强器网络中使用的填充样式,指定为以下值之一。

PaddingValue 描述 例子
数字标量 用指定的数值填充

3. 1 4 1 5 9 2 6 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3. 1 4 2 2 2 2 1 5 9 2 2 2 2 2 6 5 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2

“symmetric-include-edge” 使用输入的镜像值(包括边值)填充

3. 1 4 1 5 9 2 6 5 5 1 1 5 9 9 5 1 3. 3. 1 4 4 1 1 3. 3. 1 4 4 1 5 1 1 5 9 9 5 6 2 2 6 5 5 6 6 2 2 6 5 5 6 5 1 1 5 9 9 5

“symmetric-exclude-edge” 使用镜像输入值(不包括边值)的Pad

3. 1 4 1 5 9 2 6 5 5 6 2 6 5 6 2 9 5 1 5 9 5 1 4 1 3. 1 4 1 3. 9 5 1 5 9 5 1 5 6 2 6 5 6 2 9 5 1 5 9 5 1 4 1 3. 1 4 1 3.

“复制” 使用输入的重复边框元素填充

3. 1 4 1 5 9 2 6 5 3. 3. 3. 1 4 4 4 3. 3. 3. 1 4 4 4 3. 3. 3. 1 4 4 4 1 1 1 5 9 9 9 2 2 2 6 5 5 5 2 2 2 6 5 5 5 2 2 2 6 5 5 5

方法用于对局部增强器网络中的激活进行上采样,指定为以下值之一:

数据类型:字符|字符串

用于局部增强器网络卷积层的权值初始化,具体为“glorot”“他”“narrow-normal”,或函数句柄。有关更多信息,请参见指定自定义权重初始化函数(深度学习工具箱)

在本地增强器网络中使用的激活函数,指定为以下值之一。有关更多信息和可用层列表,请参见激活层(深度学习工具箱)

  • “relu”——使用一个reluLayer(深度学习工具箱)

  • “leakyRelu”——使用一个leakyReluLayer(深度学习工具箱)比例系数为0.2

  • “elu”——使用一个eluLayer(深度学习工具箱)

  • 一层对象

在局部增强器网络中每次卷积后使用的归一化运算,指定为这些值中的一个。有关更多信息和可用层列表,请参见标准化,删除和裁剪图层(深度学习工具箱)

局部增强器网络中退出的概率,指定为[0,1]范围内的一个数字。如果指定值为0,则该网络不包括退出层。如果指定的值大于0,则网络包括adropoutLayer(深度学习工具箱)在每个残块中。

本地增强器网络中所有层名的前缀,指定为字符串或字符向量。

数据类型:字符|字符串

输出参数

全部折叠

带有本地增强器的Pix2pixHD生成器网络,返回为dlnetwork(深度学习工具箱)对象。

更多关于

全部折叠

pix2pixHD本地增强网络

addPix2PixHDLocalEnhancer函数执行这些操作将一个本地增强器网络添加到一个pix2pixHD全局生成器网络。默认的增强网络遵循Wang等人提出的架构。参考文献

  1. 局部增强器网络有一个初始的层块,接受大小为[2*的图像H2 *WC),H的高度,W是宽度,和C为输入到全局发电机网络的通道数,.当具有多个图像输入层,局部增强器网络的输入图像大小为最大分辨率下的输入图像大小的两倍。

  2. 在初始块之后,局部增强网络有一个向下采样块,向下采样数据的因子为2。因此,下采样后的输出大小为[HW2 *C].

  3. addPix2PixHDLocalEnhancer函数从全局生成器网络中修剪最后一个块。然后,该函数将全局生成器网络中最后一个上采样块的输出添加到增强器网络的下采样数据的输出additionLayer(深度学习工具箱)

  4. 然后,加法的输出通过NumResidualBlocks局部增强器的残留块。

  5. 残差块之后是单个上采样块,将数据上采样到大小[2*]H2 *WC].

  6. addPix2PixHDLocalEnhancer函数向增强的网络添加最后一个块。卷积层具有由的参数指定的属性addPix2PixHDLocalEnhancer.如果全局生成器网络有最终激活层,那么该函数将向增强的网络添加相同类型的激活层。

该表描述了组成本地增强器网络的层块。

块类型 默认块图
最初的块
  • 一个imageInputLayer(深度学习工具箱)接收两倍于pix2pixHD全局生成网络大小的图像,

  • 一个convolution2dLayer(深度学习工具箱)步长为[1 1],滤光片大小为FilterSizeInFirstAndLastBlocks

  • 属性指定的可选规范化层NormalizationLayer名称-值参数。

  • 指定的激活层ActivationLayer名称-值参数。

图像输入层、二维卷积层、实例归一化层、ReLU层

将采样块
  • 一个convolution2dLayer(深度学习工具箱)步长[2 2]进行下行采样。卷积层的滤波器大小为FilterSizeInIntermediateBlocks

  • 属性指定的可选规范化层NormalizationLayer名称-值参数。

  • 指定的激活层ActivationLayer名称-值参数。

二维卷积层、实例归一化层、ReLU层

剩余块
  • 一个convolution2dLayer(深度学习工具箱)步长为[1 1],滤光片大小为FilterSizeInIntermediateBlocks

  • 属性指定的可选规范化层NormalizationLayer名称-值参数。

  • 指定的激活层ActivationLayer名称-值参数。

  • 一个可选的dropoutLayer(深度学习工具箱).默认情况下,剩余块省略掉dropout层。属性包含dropout层辍学名称-值参数作为范围(0,1)中的值。

  • 第二个convolution2dLayer(深度学习工具箱)

  • 可选的第二规格化层。

  • 一个additionLayer(深度学习工具箱)这在每个块之间提供了一个跳过连接。

二维卷积层、实例归一化层、ReLU层、二维卷积层、实例归一化层、加法层

Upsampling块
  • 上采样层,根据UpsampleMethod名称-值参数。卷积层的滤波器大小为FilterSizeInIntermediateBlocks

  • 属性指定的可选规范化层NormalizationLayer名称-值参数。

  • 指定的激活层ActivationLayer名称-值参数。

转置的二维卷积层,实例归一化层,ReLU层

最后一块
  • 一个convolution2dLayer(深度学习工具箱)步长为[1 1],滤光片大小为FilterSizeInFirstAndLastBlocks

  • 根据全局发电机网络的可选激活层,

二维卷积层,双键层

参考文献

[1]Wang Ting-Chun, Ming-Yu Liu, junyan Zhu, Andrew Tao, Jan Kautz, Bryan Catanzaro。使用条件gan的高分辨率图像合成和语义操作在2018 IEEE/CVF计算机视觉与模式识别大会, 8798 - 8807。盐湖城,美国:IEEE, 2018。https://doi.org/10.1109/CVPR.2018.00917

介绍了R2021a