def __init__(self, in_channel, n_class): super().__init__() self.conv = nn.Sequential( nn.Conv2d(in_channel, in_channel, kernel_size=3, padding=1, bias=False), nn.BatchNorm2d(in_channel), nn.ReLU(), nn.Conv2d(in_channel, n_class, kernel_size=1), ) for m in self.modules(): if isinstance(m, nn.Conv2d): init_weights(m, init_type='kaiming') elif isinstance(m, nn.BatchNorm2d): init_weights(m, init_type='kaiming')
def __init__(self, in_channel, inter_channel, out_channel): super().__init__() self.conv = nn.Sequential( nn.Conv2d(in_channel, inter_channel, 3, 2, 1, bias=False), nn.BatchNorm2d(inter_channel), nn.ReLU(True), nn.Conv2d(inter_channel, inter_channel, 3, 1, 1, bias=False), nn.BatchNorm2d(inter_channel), nn.ReLU(True), nn.Conv2d(inter_channel, out_channel, 3, 1, 1, bias=False), nn.BatchNorm2d(out_channel), ) for m in self.modules(): if isinstance(m, nn.Conv2d): init_weights(m, init_type='kaiming') elif isinstance(m, nn.BatchNorm2d): init_weights(m, init_type='kaiming')
def __init__(self, in_channel, n_class): super().__init__() self.n_class = n_class self.conv = _FCNHead(in_channel, n_class) inter_channel = in_channel // 2 self.node = 64 self.st = nn.ModuleList() for i in range(n_class): self.st.append( squeeze_and_expand(in_channel, self.node, inter_channel)) self.gcn = GCN(inter_channel, int(self.node * n_class)) for m in self.modules(): if isinstance(m, nn.Conv2d): init_weights(m, init_type='kaiming') elif isinstance(m, nn.BatchNorm2d): init_weights(m, init_type='kaiming')