cycleGANGenerator
创建用于图像到图像转换的CycleGAN生成器网络
描述
例子
创建CycleGAN生成器
为大小为256 × 256的RGB图像指定网络输入大小。
inputSize = [256 256 3];
创建一个CycleGAN生成器,生成输入大小的RGB图像。
净= cycleGANGenerator (inputSize)
net = dlnetwork with properties: Layers: [72x1 nnet.cnn.layer.Layer] Connections: [80x2 table] Learnables: [94x3 table] State: [0x3 table] InputNames: {'inputLayer'} OutputNames: {'fActivation'} Initialized: 1用summary查看摘要。
显示网络。
analyzeNetwork(净)
用六个剩余块创建CycleGAN生成器
为大小为128 × 128像素的RGB图像指定网络输入大小。
inputSize = [128 128 3];
创建一个带有六个剩余块的CycleGAN生成器。在所有层名中添加前缀“cycleGAN6_”。
网= cycleGANGenerator (inputSize,“NumResidualBlocks”6...“NamePrefix”,“cycleGAN6_”)
net = dlnetwork with properties: Layers: [54x1 nnet.cnn.layer.Layer] Connections: [59x2 table] Learnables: [70x3 table] State: [0x3 table] InputNames: {'cycleGAN6_inputLayer'} OutputNames: {'cycleGAN6_fActivation'} Initialized: 1查看summary。
显示网络。
analyzeNetwork(净)
输入参数
inputSize
- - - - - -网络输入大小
正整数的三元向量
网络输入大小,指定为3元素的正整数向量。inputSize
具有[HWC),H的高度,W是宽度,和C是通道数。
例子:[28日28日3]
为3通道图像指定28 × 28像素的输入大小。
名称-值参数
指定可选参数对为Name1 = Value1,…,以=家
,在那里的名字
参数名称和价值
对应的值。名-值参数必须出现在其他参数之后,但对的顺序并不重要。
在R2021a之前,名称和值之间用逗号隔开,并括起来的名字
在报价。
例子:“NumFiltersInFirstBlock”,32
在第一个卷积层中创建一个具有32个过滤器的网络
NumDownsamplingBlocks
- - - - - -下采样块数
2
(默认)|正整数
网络编码器模块中的下采样块数,指定为正整数。总的来说,网络对输入进行了2^的下采样NumDownsamplingBlocks
.解码器模块由相同数量的上采样块组成。
NumFiltersInFirstBlock
- - - - - -第一卷积层的滤波器数量
64
(默认)|积极的偶数
第一个卷积层中的过滤器数量,指定为正偶整数。
NumOutputChannels
- - - - - -输出通道数
“汽车”
(默认)|正整数
输出通道的数量,指定为“汽车”
或者一个正整数。当你指定“汽车”
,输出通道数与输入通道数相同。
FilterSizeInFirstAndLastBlocks
- - - - - -第一个和最后一个卷积层的过滤器大小
7
(默认)|积极的奇数|正奇整数的2元向量
第一个和最后一个卷积层中的过滤器大小,指定为正奇数整数或形式为[的正奇数整数的2元素向量高度宽度].当将筛选器大小指定为标量时,筛选器具有相同的高度和宽度。
FilterSizeInIntermediateBlocks
- - - - - -中间卷积层的滤波器大小
3.
(默认)|正奇整数的2元向量|积极的奇数
中间卷积层中的过滤器大小,指定为正奇数整数或形式为[的正奇数整数的2元向量高度宽度].中间卷积层是除第一卷积层和最后卷积层之外的卷积层。当将筛选器大小指定为标量时,筛选器具有相同的高度和宽度。典型值在3到7之间。
NumResidualBlocks
- - - - - -剩余块数
9
(默认)|正整数
剩余块数,指定为正整数。通常,该值设置为6
对于大小为128 * 128和9
适用于256 * 256或更大尺寸的图像。
ConvolutionPaddingValue
- - - - - -风格的填充
“symmetric-exclude-edge”
(默认)|“复制”
|“symmetric-include-edge”
|数字标量
网络中使用的填充样式,指定为这些值之一。
PaddingValue |
描述 | 例子 |
---|---|---|
数字标量 | 用指定的数值填充 |
|
“symmetric-include-edge” |
使用输入的镜像值(包括边值)进行填充 |
|
“symmetric-exclude-edge” |
使用输入的镜像值(不包括边值)进行填充 |
|
“复制” |
使用输入的重复边框元素填充 |
|
UpsampleMethod
- - - - - -用于上采样激活的方法
“transposedConv”
(默认)|“bilinearResize”
|“pixelShuffle”
用于升级激活的方法,指定为以下值之一:
“transposedConv”
——使用一个transposedConv2dLayer
(深度学习工具箱)迈着[2 2]的大步“bilinearResize”
——使用一个convolution2dLayer
(深度学习工具箱)步进[11 1]后面跟着aresize2dLayer
刻度为[2 2]“pixelShuffle”
——使用一个convolution2dLayer
(深度学习工具箱)步进[11 1]后面跟着adepthToSpace2dLayer
块大小为[2 2]
数据类型:字符
|字符串
ConvolutionWeightsInitializer
- - - - - -卷积层中使用的权重初始化
“narrow-normal”
(默认)|“glorot”
|“他”
|函数
在卷积层中使用的权重初始化,指定为“glorot”
,“他”
,“narrow-normal”
,或函数句柄。有关更多信息,请参见指定自定义权重初始化函数(深度学习工具箱).
ActivationLayer
- - - - - -激活函数
“relu”
(默认)|“leakyRelu”
|“elu”
|层对象
要在网络中使用的激活函数,指定为以下值之一。有关更多信息和可用层列表,请参见激活层(深度学习工具箱).
“relu”
——使用一个reluLayer
(深度学习工具箱)“leakyRelu”
——使用一个leakyReluLayer
(深度学习工具箱)其比例系数为0.2“elu”
——使用一个eluLayer
(深度学习工具箱)一层对象
FinalActivationLayer
- - - - - -最后卷积后的激活函数
”“双曲正切
(默认)|“没有”
|“乙状结肠”
|“softmax”
|层对象
激活函数后的最终卷积层,指定为这些值之一。有关更多信息和可用层列表,请参见输出层(深度学习工具箱).
”“双曲正切
——使用一个tanhLayer
(深度学习工具箱)“乙状结肠”
——使用一个sigmoidLayer
(深度学习工具箱)“softmax”
——使用一个softmaxLayer
(深度学习工具箱)“没有”
-不要使用最终激活层一层对象
NormalizationLayer
- - - - - -归一化操作
“实例”
(默认)|“没有”
|“批”
|层对象
在每次卷积之后使用的归一化操作,指定为以下值之一。有关更多信息和可用层列表,请参见归一化层(深度学习工具箱).
“实例”
——使用一个instanceNormalizationLayer
(深度学习工具箱)“批”
——使用一个batchNormalizationLayer
(深度学习工具箱)“没有”
不要使用归一化层一层对象
辍学
- - - - - -辍学的可能性
0
(默认)|[0,1]范围内的数字
退出概率,指定为范围[0,1]内的数字。的值0
,则网络不包含辍学层。如果指定的值大于0
,则网络包含dropoutLayer
(深度学习工具箱)在每个剩余块中。
NamePrefix
- - - - - -所有层名的前缀
""
(默认)|字符串|特征向量
网络中所有层名的前缀,指定为字符串或字符向量。
数据类型:字符
|字符串
更多关于
CycleGAN发电机网络
cycleGAN发生器网络由一个编码器模块和一个解码器模块组成。默认网络遵循Zhu等人提出的体系结构。[1].
编码器模块对输入进行2^的次采样NumDownsamplingBlocks
.编码器模块由一个初始层块组成,NumDownsamplingBlocks
将采样模块,NumResidualBlocks
残块。解码器模块对输入进行2^的上采样NumDownsamplingBlocks
.解码器模块由NumDownsamplingBlocks
上采样块和最后一个块。
下表描述了组成编码器和解码器模块的层块。
块类型 | 层 | 默认块示意图 |
---|---|---|
最初的块 |
|
|
将采样块 |
|
|
剩余块 |
|
|
Upsampling块 |
|
|
最后一块 |
|
|
参考文献
[1]朱俊燕,朴taesung Park, Phillip Isola, Alexei A. Efros。使用周期一致对抗网络的未配对图像对图像翻译。在2017 IEEE计算机视觉国际会议(ICCV), 2242 - 2251。威尼斯:IEEE 2017。https://ieeexplore.ieee.org/document/8237506.
[2]朱俊燕,朴taesung Park,王通洲。“PyTorch中的CycleGAN和pix2pix。”https://github.com/junyanz/pytorch-CycleGAN-and-pix2pix.
版本历史
介绍了R2021a
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。