Python torch.nn.ConvTranspose2d() Examples
The following are 30
code examples of torch.nn.ConvTranspose2d().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
torch.nn
, or try the search function
.
Example #1
Source File: decoder.py From DDPAE-video-prediction with MIT License | 7 votes |
def __init__(self, input_size, n_channels, ngf, n_layers, activation='tanh'): super(ImageDecoder, self).__init__() ngf = ngf * (2 ** (n_layers - 2)) layers = [nn.ConvTranspose2d(input_size, ngf, 4, 1, 0, bias=False), nn.BatchNorm2d(ngf), nn.ReLU(True)] for i in range(1, n_layers - 1): layers += [nn.ConvTranspose2d(ngf, ngf // 2, 4, 2, 1, bias=False), nn.BatchNorm2d(ngf // 2), nn.ReLU(True)] ngf = ngf // 2 layers += [nn.ConvTranspose2d(ngf, n_channels, 4, 2, 1, bias=False)] if activation == 'tanh': layers += [nn.Tanh()] elif activation == 'sigmoid': layers += [nn.Sigmoid()] else: raise NotImplementedError self.main = nn.Sequential(*layers)
Example #2
Source File: ternausnets.py From pneumothorax-segmentation with MIT License | 6 votes |
def __init__(self, in_channels, middle_channels, out_channels, is_deconv=True): super(DecoderBlockV2, self).__init__() self.in_channels = in_channels if is_deconv: """ Paramaters for Deconvolution were chosen to avoid artifacts, following link https://distill.pub/2016/deconv-checkerboard/ """ self.block = nn.Sequential( ConvRelu(in_channels, middle_channels), nn.ConvTranspose2d(middle_channels, out_channels, kernel_size=4, stride=2, padding=1), nn.ReLU(inplace=True) ) else: self.block = nn.Sequential( Interpolate(scale_factor=2, mode='bilinear'), ConvRelu(in_channels, middle_channels), ConvRelu(middle_channels, out_channels), )
Example #3
Source File: MyNet.py From sgd-influence with MIT License | 6 votes |
def __init__(self, device, m=[64, 32, 16]): super(CifarAE, self).__init__() self.m = m self.mm = np.array((0.4914, 0.4822, 0.4465))[np.newaxis, :, np.newaxis, np.newaxis] self.ss = np.array((0.2023, 0.1994, 0.2010))[np.newaxis, :, np.newaxis, np.newaxis] self.mm = torch.from_numpy(self.mm).float().to(device) self.ss = torch.from_numpy(self.ss).float().to(device) self.encoder = nn.Sequential( nn.Conv2d(3, self.m[0], 3, stride=1, padding=0), nn.ReLU(True), nn.MaxPool2d(2, stride=2, padding=0), nn.Conv2d(self.m[0], self.m[1], 3, stride=1, padding=0), nn.ReLU(True), nn.MaxPool2d(2, stride=1, padding=0) ) self.decoder = nn.Sequential( nn.ConvTranspose2d(self.m[1], self.m[1], 5, stride=2, padding=0), nn.ReLU(True), nn.ConvTranspose2d(self.m[1], self.m[0], 4, stride=1, padding=0), nn.ReLU(True), nn.ConvTranspose2d(self.m[0], 3, 3, stride=1, padding=0), nn.Tanh() )
Example #4
Source File: MyNet.py From sgd-influence with MIT License | 6 votes |
def __init__(self, device, m=[24, 12]): super(MnistAE, self).__init__() self.m = m self.encoder = nn.Sequential( nn.Conv2d(1, self.m[0], 3, stride=1, padding=0), nn.ReLU(True), nn.MaxPool2d(2, stride=2, padding=0), nn.Conv2d(self.m[0], self.m[1], 3, stride=1, padding=0), nn.ReLU(True), nn.MaxPool2d(2, stride=1, padding=0) ) self.decoder = nn.Sequential( nn.ConvTranspose2d(self.m[1], self.m[1], 5, stride=2, padding=0), nn.ReLU(True), nn.ConvTranspose2d(self.m[1], self.m[0], 4, stride=1, padding=0), nn.ReLU(True), nn.ConvTranspose2d(self.m[0], 1, 3, stride=1, padding=0), nn.Tanh() )
Example #5
Source File: outputs.py From Parsing-R-CNN with MIT License | 6 votes |
def __init__(self, dim_in): super(Parsing_output, self).__init__() num_parsing = cfg.PRCNN.NUM_PARSING assert cfg.PRCNN.RESOLUTION[0] // cfg.PRCNN.ROI_XFORM_RESOLUTION[0] == \ cfg.PRCNN.RESOLUTION[1] // cfg.PRCNN.ROI_XFORM_RESOLUTION[1] self.up_scale = cfg.PRCNN.RESOLUTION[0] // (cfg.PRCNN.ROI_XFORM_RESOLUTION[0] * 2) deconv_kernel = 4 self.parsing_score_lowres = nn.ConvTranspose2d( dim_in, num_parsing, deconv_kernel, stride=2, padding=deconv_kernel // 2 - 1, ) nn.init.kaiming_normal_(self.parsing_score_lowres.weight, mode="fan_out", nonlinearity="relu") nn.init.constant_(self.parsing_score_lowres.bias, 0) self.dim_out = num_parsing
Example #6
Source File: helper.py From torchscope with Apache License 2.0 | 6 votes |
def compute_ConvTranspose2d_madd(module, inp, out): assert isinstance(module, nn.ConvTranspose2d) assert len(inp.size()) == 4 and len(inp.size()) == len(out.size()) in_c, in_h, in_w = inp.size()[1:] k_h, k_w = module.kernel_size out_c, out_h, out_w = out.size()[1:] groups = module.groups kernel_mul = k_h * k_w * (in_c // groups) kernel_add = kernel_mul - 1 + (0 if module.bias is None else 1) kernel_mul_group = kernel_mul * in_h * in_w * (out_c // groups) kernel_add_group = kernel_add * in_h * in_w * (out_c // groups) total_mul = kernel_mul_group * groups total_add = kernel_add_group * groups return total_mul + total_add
Example #7
Source File: helper.py From torchscope with Apache License 2.0 | 6 votes |
def compute_madd(module, inp, out): if isinstance(module, nn.Conv2d): return compute_Conv2d_madd(module, inp, out) elif isinstance(module, nn.ConvTranspose2d): return compute_ConvTranspose2d_madd(module, inp, out) elif isinstance(module, nn.BatchNorm2d): return compute_BatchNorm2d_madd(module, inp, out) elif isinstance(module, nn.MaxPool2d): return compute_MaxPool2d_madd(module, inp, out) elif isinstance(module, nn.AvgPool2d): return compute_AvgPool2d_madd(module, inp, out) elif isinstance(module, (nn.ReLU, nn.ReLU6)): return compute_ReLU_madd(module, inp, out) elif isinstance(module, nn.Softmax): return compute_Softmax_madd(module, inp, out) elif isinstance(module, nn.Linear): return compute_Linear_madd(module, inp, out) elif isinstance(module, nn.Bilinear): return compute_Bilinear_madd(module, inp[0], inp[1], out) else: return 0
Example #8
Source File: unet.py From steppy-toolkit with MIT License | 6 votes |
def _up_samples(self): up_samples = [] kernel_scale = self.kernel_scale stride = self.pool_stride kernel_size = kernel_scale * stride padding, output_padding = get_upsample_pad(stride=stride, kernel=kernel_size) for i in range(self.repeat_blocks): in_channels = int(self.n_filters * 2 ** (i + 2)) out_channels = int(self.n_filters * 2 ** (i + 1)) up_samples.append(nn.ConvTranspose2d(in_channels=in_channels, out_channels=out_channels, kernel_size=kernel_size, stride=stride, padding=padding, output_padding=output_padding, bias=False )) return nn.ModuleList(up_samples)
Example #9
Source File: ufrcnn.py From medicaldetectiontoolkit with Apache License 2.0 | 6 votes |
def __init__(self, cf, conv): super(Mask, self).__init__() self.pool_size = cf.mask_pool_size self.pyramid_levels = cf.pyramid_levels self.dim = conv.dim self.conv1 = conv(cf.end_filts, cf.end_filts, ks=3, stride=1, pad=1, norm=cf.norm, relu=cf.relu) self.conv2 = conv(cf.end_filts, cf.end_filts, ks=3, stride=1, pad=1, norm=cf.norm, relu=cf.relu) self.conv3 = conv(cf.end_filts, cf.end_filts, ks=3, stride=1, pad=1, norm=cf.norm, relu=cf.relu) self.conv4 = conv(cf.end_filts, cf.end_filts, ks=3, stride=1, pad=1, norm=cf.norm, relu=cf.relu) if conv.dim == 2: self.deconv = nn.ConvTranspose2d(cf.end_filts, cf.end_filts, kernel_size=2, stride=2) else: self.deconv = nn.ConvTranspose3d(cf.end_filts, cf.end_filts, kernel_size=2, stride=2) self.relu = nn.ReLU(inplace=True) if cf.relu == 'relu' else nn.LeakyReLU(inplace=True) self.conv5 = conv(cf.end_filts, cf.head_classes, ks=1, stride=1, relu=None) self.sigmoid = nn.Sigmoid()
Example #10
Source File: mrcnn.py From medicaldetectiontoolkit with Apache License 2.0 | 6 votes |
def __init__(self, cf, conv): super(Mask, self).__init__() self.pool_size = cf.mask_pool_size self.pyramid_levels = cf.pyramid_levels self.dim = conv.dim self.conv1 = conv(cf.end_filts, cf.end_filts, ks=3, stride=1, pad=1, norm=cf.norm, relu=cf.relu) self.conv2 = conv(cf.end_filts, cf.end_filts, ks=3, stride=1, pad=1, norm=cf.norm, relu=cf.relu) self.conv3 = conv(cf.end_filts, cf.end_filts, ks=3, stride=1, pad=1, norm=cf.norm, relu=cf.relu) self.conv4 = conv(cf.end_filts, cf.end_filts, ks=3, stride=1, pad=1, norm=cf.norm, relu=cf.relu) if conv.dim == 2: self.deconv = nn.ConvTranspose2d(cf.end_filts, cf.end_filts, kernel_size=2, stride=2) else: self.deconv = nn.ConvTranspose3d(cf.end_filts, cf.end_filts, kernel_size=2, stride=2) self.relu = nn.ReLU(inplace=True) if cf.relu == 'relu' else nn.LeakyReLU(inplace=True) self.conv5 = conv(cf.end_filts, cf.head_classes, ks=1, stride=1, relu=None) self.sigmoid = nn.Sigmoid()
Example #11
Source File: outputs.py From Parsing-R-CNN with MIT License | 6 votes |
def __init__(self, dim_in): super(UV_output, self).__init__() num_patches = cfg.UVRCNN.NUM_PATCHES deconv_kernel = 4 assert cfg.UVRCNN.RESOLUTION[0] // cfg.UVRCNN.ROI_XFORM_RESOLUTION[0] == \ cfg.UVRCNN.RESOLUTION[1] // cfg.UVRCNN.ROI_XFORM_RESOLUTION[1] self.up_scale = cfg.UVRCNN.RESOLUTION[0] // (cfg.UVRCNN.ROI_XFORM_RESOLUTION[0] * 2) self.deconv_Ann = nn.ConvTranspose2d(dim_in, 15, deconv_kernel, 2, padding=deconv_kernel // 2 - 1) self.deconv_Index = nn.ConvTranspose2d(dim_in, num_patches + 1, deconv_kernel, 2, padding=deconv_kernel // 2 - 1) self.deconv_U = nn.ConvTranspose2d(dim_in, num_patches + 1, deconv_kernel, 2, padding=deconv_kernel // 2 - 1) self.deconv_V = nn.ConvTranspose2d(dim_in, num_patches + 1, deconv_kernel, 2, padding=deconv_kernel // 2 - 1) for m in self.modules(): if isinstance(m, nn.ConvTranspose2d): nn.init.kaiming_normal_(m.weight, mode="fan_out", nonlinearity="relu") nn.init.constant_(m.bias, 0)
Example #12
Source File: ResNet2015.py From Pytorch-Networks with MIT License | 6 votes |
def _initialization(self): if self.pretrained is not False: self.modules.load_state_dict(model_zoo.load_url(model_urls[self.pretrained])) #TODO(liu):check it correct or not. else: for name, sub_module in self.named_modules(): if isinstance(sub_module, nn.Conv2d) or isinstance(sub_module, nn.ConvTranspose2d) or \ isinstance(sub_module, nn.Linear): nn.init.kaiming_normal_(sub_module.weight) # nn.init.kaiming_normal_(sub_module.weight,mode='fan_out' # ,nonlinearity='relu') if self.logger is not None: self.logger.info('init {}.weight as kaiming_normal_'.format(name)) if sub_module.bias is not None: nn.init.constant_(sub_module.bias, 0.0) if self.logger is not None: self.logger.info('init {}.bias as 0'.format(name)) # elif isinstance(sub_module, nn.BatchNorm2d): # nn.init.constant_(sub_module.weight,1) # nn.init.constant_(sub_module.bias,0) # if self.logger is not None: # self.logger.info('init {}.weight as constant_ 1'.format(name)) # self.logger.info('init {}.bias as constant_ 0'.format(name))
Example #13
Source File: outputs.py From Parsing-R-CNN with MIT License | 6 votes |
def __init__(self, dim_in): super(Keypoint_output, self).__init__() num_keypoints = cfg.KRCNN.NUM_CLASSES assert cfg.KRCNN.RESOLUTION[0] // cfg.KRCNN.ROI_XFORM_RESOLUTION[0] == \ cfg.KRCNN.RESOLUTION[1] // cfg.KRCNN.ROI_XFORM_RESOLUTION[1] self.up_scale = cfg.KRCNN.RESOLUTION[0] // (cfg.KRCNN.ROI_XFORM_RESOLUTION[0] * 2) deconv_kernel = 4 self.kps_score_lowres = nn.ConvTranspose2d( dim_in, num_keypoints, deconv_kernel, stride=2, padding=deconv_kernel // 2 - 1, ) nn.init.kaiming_normal_(self.kps_score_lowres.weight, mode="fan_out", nonlinearity="relu") nn.init.constant_(self.kps_score_lowres.bias, 0) self.dim_out = num_keypoints
Example #14
Source File: model.py From FCN-semantic-segmentation with MIT License | 6 votes |
def conv(in_planes, out_planes, kernel_size=3, stride=1, dilation=1, bias=False, transposed=False): if transposed: layer = nn.ConvTranspose2d(in_planes, out_planes, kernel_size=kernel_size, stride=stride, padding=1, output_padding=1, dilation=dilation, bias=bias) # Bilinear interpolation init w = torch.Tensor(kernel_size, kernel_size) centre = kernel_size % 2 == 1 and stride - 1 or stride - 0.5 for y in range(kernel_size): for x in range(kernel_size): w[y, x] = (1 - abs((x - centre) / stride)) * (1 - abs((y - centre) / stride)) layer.weight.data.copy_(w.div(in_planes).repeat(in_planes, out_planes, 1, 1)) else: padding = (kernel_size + 2 * (dilation - 1)) // 2 layer = nn.Conv2d(in_planes, out_planes, kernel_size=kernel_size, stride=stride, padding=padding, dilation=dilation, bias=bias) if bias: init.constant(layer.bias, 0) return layer # Returns 2D batch normalisation layer
Example #15
Source File: cifar10_LeNet.py From Deep-SAD-PyTorch with MIT License | 6 votes |
def __init__(self, rep_dim=128): super().__init__() self.rep_dim = rep_dim self.deconv1 = nn.ConvTranspose2d(int(self.rep_dim / (4 * 4)), 128, 5, bias=False, padding=2) nn.init.xavier_uniform_(self.deconv1.weight, gain=nn.init.calculate_gain('leaky_relu')) self.bn2d4 = nn.BatchNorm2d(128, eps=1e-04, affine=False) self.deconv2 = nn.ConvTranspose2d(128, 64, 5, bias=False, padding=2) nn.init.xavier_uniform_(self.deconv2.weight, gain=nn.init.calculate_gain('leaky_relu')) self.bn2d5 = nn.BatchNorm2d(64, eps=1e-04, affine=False) self.deconv3 = nn.ConvTranspose2d(64, 32, 5, bias=False, padding=2) nn.init.xavier_uniform_(self.deconv3.weight, gain=nn.init.calculate_gain('leaky_relu')) self.bn2d6 = nn.BatchNorm2d(32, eps=1e-04, affine=False) self.deconv4 = nn.ConvTranspose2d(32, 3, 5, bias=False, padding=2) nn.init.xavier_uniform_(self.deconv4.weight, gain=nn.init.calculate_gain('leaky_relu'))
Example #16
Source File: decoder.py From pytorch_sac_ae with MIT License | 6 votes |
def __init__(self, obs_shape, feature_dim, num_layers=2, num_filters=32): super().__init__() self.num_layers = num_layers self.num_filters = num_filters self.out_dim = OUT_DIM[num_layers] self.fc = nn.Linear( feature_dim, num_filters * self.out_dim * self.out_dim ) self.deconvs = nn.ModuleList() for i in range(self.num_layers - 1): self.deconvs.append( nn.ConvTranspose2d(num_filters, num_filters, 3, stride=1) ) self.deconvs.append( nn.ConvTranspose2d( num_filters, obs_shape[0], 3, stride=2, output_padding=1 ) ) self.outputs = dict()
Example #17
Source File: blocks.py From pytorch-UNet with MIT License | 6 votes |
def __init__(self, in_channels, middle_channels, out_channels, deconv_channels, dropout=False): super(Center2D, self).__init__() layers = [ nn.MaxPool2d(kernel_size=2), nn.Conv2d(in_channels, middle_channels, kernel_size=3, padding=1), nn.BatchNorm2d(middle_channels), nn.ReLU(inplace=True), nn.Conv2d(middle_channels, out_channels, kernel_size=3, padding=1), nn.BatchNorm2d(out_channels), nn.ReLU(inplace=True), nn.ConvTranspose2d(out_channels, deconv_channels, kernel_size=2, stride=2) ] if dropout: assert 0 <= dropout <= 1, 'dropout must be between 0 and 1' layers.append(nn.Dropout2d(p=dropout)) self.center = nn.Sequential(*layers)
Example #18
Source File: dcgan_generator.py From Pytorch-Project-Template with MIT License | 6 votes |
def __init__(self, config): super().__init__() self.config = config self.relu = nn.ReLU(inplace=True) self.deconv1 = nn.ConvTranspose2d(in_channels=self.config.g_input_size, out_channels=self.config.num_filt_g * 8, kernel_size=4, stride=1, padding=0, bias=False) self.batch_norm1 = nn.BatchNorm2d(self.config.num_filt_g*8) self.deconv2 = nn.ConvTranspose2d(in_channels=self.config.num_filt_g * 8, out_channels=self.config.num_filt_g * 4, kernel_size=4, stride=2, padding=1, bias=False) self.batch_norm2 = nn.BatchNorm2d(self.config.num_filt_g*4) self.deconv3 = nn.ConvTranspose2d(in_channels=self.config.num_filt_g * 4, out_channels=self.config.num_filt_g * 2, kernel_size=4, stride=2, padding=1, bias=False) self.batch_norm3 = nn.BatchNorm2d(self.config.num_filt_g*2) self.deconv4 = nn.ConvTranspose2d(in_channels=self.config.num_filt_g * 2, out_channels=self.config.num_filt_g , kernel_size=4, stride=2, padding=1, bias=False) self.batch_norm4 = nn.BatchNorm2d(self.config.num_filt_g) self.deconv5 = nn.ConvTranspose2d(in_channels=self.config.num_filt_g, out_channels=self.config.input_channels, kernel_size=4, stride=2, padding=1, bias=False) self.out = nn.Tanh() self.apply(weights_init)
Example #19
Source File: BEV_Unet.py From PolarSeg with BSD 3-Clause "New" or "Revised" License | 6 votes |
def __init__(self, in_ch, out_ch, circular_padding, bilinear=True, group_conv=False): super(up, self).__init__() # would be a nice idea if the upsampling could be learned too, # but my machine do not have enough memory to handle all those weights if bilinear: self.up = nn.Upsample(scale_factor=2, mode='bilinear', align_corners=True) elif group_conv: self.up = nn.ConvTranspose2d(in_ch//2, in_ch//2, 2, stride=2,groups = in_ch//2) else: self.up = nn.ConvTranspose2d(in_ch//2, in_ch//2, 2, stride=2) if circular_padding: self.conv = double_conv_circular(in_ch, out_ch,group_conv = group_conv) else: self.conv = double_conv(in_ch, out_ch,group_conv = group_conv)
Example #20
Source File: blocks.py From pytorch-UNet with MIT License | 6 votes |
def __init__(self, in_channels, middle_channels, out_channels, deconv_channels, dropout=False): super(Decoder2D, self).__init__() layers = [ nn.Conv2d(in_channels, middle_channels, kernel_size=3, padding=1), nn.BatchNorm2d(middle_channels), nn.ReLU(inplace=True), nn.Conv2d(middle_channels, out_channels, kernel_size=3, padding=1), nn.BatchNorm2d(out_channels), nn.ReLU(inplace=True), nn.ConvTranspose2d(out_channels, deconv_channels, kernel_size=2, stride=2) ] if dropout: assert 0 <= dropout <= 1, 'dropout must be between 0 and 1' layers.append(nn.Dropout2d(p=dropout)) self.decoder = nn.Sequential(*layers)
Example #21
Source File: main.py From DexiNed with MIT License | 6 votes |
def weight_init(m): if isinstance(m, (nn.Conv2d, )): torch.nn.init.normal_(m.weight,mean=0, std=0.01) if m.weight.data.shape[1]==torch.Size([1]): torch.nn.init.normal_(m.weight, mean=0.0,) if m.weight.data.shape==torch.Size([1,6,1,1]): torch.nn.init.constant_(m.weight,0.2) if m.bias is not None: torch.nn.init.zeros_(m.bias) # for fusion layer if isinstance(m, (nn.ConvTranspose2d,)): torch.nn.init.normal_(m.weight,mean=0, std=0.01) if m.weight.data.shape[1] == torch.Size([1]): torch.nn.init.normal_(m.weight, std=0.1) if m.bias is not None: torch.nn.init.zeros_(m.bias)
Example #22
Source File: wrappers.py From mmdetection with Apache License 2.0 | 6 votes |
def forward(self, x): if x.numel() == 0 and torch.__version__ <= '1.4.0': out_shape = [x.shape[0], self.out_channels] for i, k, p, s, d, op in zip(x.shape[-2:], self.kernel_size, self.padding, self.stride, self.dilation, self.output_padding): out_shape.append((i - 1) * s - 2 * p + (d * (k - 1) + 1) + op) empty = NewEmptyTensorOp.apply(x, out_shape) if self.training: # produce dummy gradient to avoid DDP warning. dummy = sum(x.view(-1)[0] for x in self.parameters()) * 0.0 return empty + dummy else: return empty return super(ConvTranspose2d, self).forward(x)
Example #23
Source File: fpn.py From seamseg with BSD 3-Clause "New" or "Revised" License | 6 votes |
def reset_parameters(self): gain = nn.init.calculate_gain(self.fc.bn1.activation, self.fc.bn1.activation_param) for name, mod in self.named_modules(): if isinstance(mod, nn.Linear) or isinstance(mod, nn.Conv2d) or isinstance(mod, nn.ConvTranspose2d): if "roi_cls" in name or "roi_msk" in name: nn.init.xavier_normal_(mod.weight, .01) elif "roi_bbx" in name: nn.init.xavier_normal_(mod.weight, .001) else: nn.init.xavier_normal_(mod.weight, gain) elif isinstance(mod, ABN): nn.init.constant_(mod.weight, 1.) if hasattr(mod, "bias") and mod.bias is not None: nn.init.constant_(mod.bias, 0.)
Example #24
Source File: utils.py From PLARD with MIT License | 5 votes |
def __init__(self, in_size, out_size, is_deconv): super(unetUp, self).__init__() self.conv = unetConv2(in_size, out_size, False) if is_deconv: self.up = nn.ConvTranspose2d(in_size, out_size, kernel_size=2, stride=2) else: self.up = nn.UpsamplingBilinear2d(scale_factor=2)
Example #25
Source File: CustomLayers.py From BMSG-GAN with MIT License | 5 votes |
def __init__(self, in_channels, use_eql=True): """ constructor for the inner class :param in_channels: number of input channels to the block :param use_eql: whether to use the equalized learning rate """ from torch.nn import LeakyReLU from torch.nn import Conv2d, ConvTranspose2d super().__init__() if use_eql: self.conv_1 = _equalized_deconv2d(in_channels, in_channels, (4, 4), bias=True) self.conv_2 = _equalized_conv2d(in_channels, in_channels, (3, 3), pad=1, bias=True) else: self.conv_1 = ConvTranspose2d(in_channels, in_channels, (4, 4), bias=True) self.conv_2 = Conv2d(in_channels, in_channels, (3, 3), padding=(1, 1), bias=True) # pixel normalization vector: self.pixNorm = PixelwiseNorm() # leaky_relu: self.lrelu = LeakyReLU(0.2)
Example #26
Source File: outputs.py From Parsing-R-CNN with MIT License | 5 votes |
def __init__(self, dim_in): super(Mask_deconv_output, self).__init__() num_classes = cfg.MODEL.NUM_CLASSES self.mask_deconv = nn.ConvTranspose2d(dim_in, dim_in, 2, 2, 0) self.mask_fcn_logits = nn.Conv2d(dim_in, num_classes, 1, 1, 0) # init nn.init.kaiming_normal_(self.mask_deconv.weight, mode='fan_out', nonlinearity="relu") if self.mask_deconv.bias is not None: nn.init.zeros_(self.mask_deconv.bias) nn.init.normal_(self.mask_fcn_logits.weight, std=0.001) if self.mask_fcn_logits.bias is not None: nn.init.constant_(self.mask_fcn_logits.bias, 0)
Example #27
Source File: conv.py From nsf with MIT License | 5 votes |
def __init__(self, in_channels, out_channels, kernel_size, stride, padding, output_padding=0, dilation=1): super(GatedConvTranspose2d, self).__init__() self.conv_transpose = nn.ConvTranspose2d(in_channels, 2 * out_channels, kernel_size, stride, padding, output_padding, dilation=dilation)
Example #28
Source File: utils.py From PLARD with MIT License | 5 votes |
def __init__(self, in_channels, n_filters, k_size, stride, padding, bias=True): super(deconv2DBatchNormRelu, self).__init__() self.dcbr_unit = nn.Sequential(nn.ConvTranspose2d(int(in_channels), int(n_filters), kernel_size=k_size, padding=padding, stride=stride, bias=bias), nn.BatchNorm2d(int(n_filters)), nn.ReLU(inplace=True),)
Example #29
Source File: yolo.py From ssds.pytorch with MIT License | 5 votes |
def __init__(self, inp, oup, stride=1, bilinear=True): super(_router_v3, self).__init__() self.conv = nn.Sequential( nn.Conv2d(inp, oup, 1, 1, bias=False), nn.BatchNorm2d(oup), nn.LeakyReLU(0.1, inplace=True), ) if bilinear: self.up = nn.Upsample(scale_factor=2, mode='bilinear') else: self.up = nn.ConvTranspose2d(oup, oup, 2, stride=2)
Example #30
Source File: network.py From reconstructing_faces_from_voices with GNU General Public License v3.0 | 5 votes |
def __init__(self, input_channel, channels, output_channel): super(Generator, self).__init__() self.model = nn.Sequential( nn.ConvTranspose2d(input_channel, channels[0], 4, 1, 0, bias=True), nn.ReLU(inplace=True), nn.ConvTranspose2d(channels[0], channels[1], 4, 2, 1, bias=True), nn.ReLU(inplace=True), nn.ConvTranspose2d(channels[1], channels[2], 4, 2, 1, bias=True), nn.ReLU(inplace=True), nn.ConvTranspose2d(channels[2], channels[3], 4, 2, 1, bias=True), nn.ReLU(inplace=True), nn.ConvTranspose2d(channels[3], channels[4], 4, 2, 1, bias=True), nn.ReLU(inplace=True), nn.ConvTranspose2d(channels[4], output_channel, 1, 1, 0, bias=True), )