自建站怎么搭建,宁安网站建设,智慧团登录官方网站,网站后台管理系统模板html将输出的rgb作为输入#xff0c;输入到判别器中。接着执行一个for循环#xff0c;看一下body_down列表的组成和x经过body_down之后的值。 body_down是由残差块D组成的列表#xff1a; 残差块的参数为#xff1a;(3,128),(128,128),(128,256),(256,256),(256,512),(512,5… 将输出的rgb作为输入输入到判别器中。接着执行一个for循环看一下body_down列表的组成和x经过body_down之后的值。 body_down是由残差块D组成的列表 残差块的参数为(3,128),(128,128),(128,256),(256,256),(256,512),(512,512)/-1,根据i0判断first参数的True或者False。 残差块组成 x首先进过shortcut。假设执行第一次for循环通道(3,128)/-1/True. 将RGB下采样两倍。 接着in3,out128learned_shortcutTrue。 x再经过一个卷积 接着输出x。执行完shortcut再执行卷积 conv1输出一个mid_layer,conv2输出最终的out. 因为x在开始进行了下采样为了能够相加这里也对dx进下采样。 接着执行第二个块输入和输出通道都是128.只执行下采样两倍。 后面的四个根据通道是否相等只执行如下操作 这样encoder_res里面有六个值将第四层和第六层输出放在dis_list中 接着取出dis_list进行处理 self.dis列表里面存放了两个nn.Sequential分别处理dis_list的第一第二个。 self.dis nn.ModuleList([nn.Sequential(nn.Conv2d(256, 64, 3, padding1, stride2),nn.LeakyReLU(0.2, False),nn.Conv2d(64, 64, 3, padding1),nn.BatchNorm2d(64),nn.LeakyReLU(0.2, False),nn.Conv2d(64, 64, 3, padding1),nn.BatchNorm2d(64),nn.LeakyReLU(0.2, False),nn.Conv2d(64, 64, 3, padding1),nn.BatchNorm2d(64),nn.LeakyReLU(0.2, False),nn.Conv2d(64, 1, 3, padding1)),nn.Sequential(nn.Conv2d(512, 64, 3, padding1, stride2),nn.LeakyReLU(0.2, False),nn.Conv2d(64, 64, 3, padding1),nn.BatchNorm2d(64),nn.LeakyReLU(0.2, False),nn.Conv2d(64, 64, 3, padding1),nn.BatchNorm2d(64),nn.LeakyReLU(0.2, False),nn.Conv2d(64, 64, 3, padding1),nn.BatchNorm2d(64),nn.LeakyReLU(0.2, False),nn.Conv2d(64, 1, 3, padding1))])在Sequential内部首先将输入下采样两倍然后三个卷积进行特征提取操作最后卷积输除通道为1输出Fake 或者real的概率。对应于 接着将encoder最后一个输出作为decoder输入进行上采样 残差块参数为(512,512)/1,将输入上采样两倍。 剩下的五次卷积分别倒着取列表里面的通道 将decoder的值和encoder拼接上采样6次添加到return_feats列表中。 将最后一层输出值进过一个卷积输出通道为类别通道数 最后将最后一层输出值encoder两个中间变量值decoder的5个上采样中间值作为输出。