Constructor.
1031 ):
1032 super(GBlock, self).__init__()
1033
1034
1035 self.in_channels, self.out_channels = in_channels, out_channels
1036
1037 self.hidden_channels = self.in_channels // channel_ratio
1038
1039 self.which_conv, self.which_bn = which_conv, which_bn
1040
1041 self.activation = activation
1042
1043
1044 self.conv1 = self.which_conv(
1045 self.in_channels, self.hidden_channels, kernel_size=1, padding=0
1046 )
1047
1048 self.conv2 = self.which_conv(self.hidden_channels, self.hidden_channels)
1049
1050 self.conv3 = self.which_conv(self.hidden_channels, self.hidden_channels)
1051
1052 self.conv4 = self.which_conv(
1053 self.hidden_channels, self.out_channels, kernel_size=1, padding=0
1054 )
1055
1056
1057 self.bn1 = self.which_bn(self.in_channels)
1058
1059 self.bn2 = self.which_bn(self.hidden_channels)
1060
1061 self.bn3 = self.which_bn(self.hidden_channels)
1062
1063 self.bn4 = self.which_bn(self.hidden_channels)
1064
1065 self.upsample = upsample
1066