class_docstr: Tree-structured Kronecker Convolutional Networks for Semantic Segmentation, 
    Note that:
      In our pytorch implementation of TKCN: for KConv(r_1,r_2), we use AvgPool2d(kernel_size = r_2, stride=1) 
      and Conv2d( kernel_size =3, dilation = r_1) to approximate it.
      The original codes (caffe)  will be relesed later .
  
  Parameters
  ----------
  nclass : int
      Number of categories for the training dataset.
  backbone : string
      Pre-trained dilated backbone network type (default:'resnet50'; 'resnet50',
      'resnet101' or 'resnet152').
  norm_layer : object
class_docstr_tok: ["Tree-structured","Kronecker","Convolutional","Networks","for","Semantic","Segmentation",",","Note","that",":","In","our","pytorch","implementation","of","TKCN",":","for","KConv","(","r_1",",","r_2",")",",","we","use","AvgPool2d","(","kernel_size","=","r_2",",","stride=1",")","and","Conv2d","(","kernel_size","=3",",","dilation","=","r_1",")","to","approximate","it",".","The","original","codes","(","caffe",")","will","be","relesed","later",".","Parameters","--","--","--","--","--","nclass",":","int","Number","of","categories","for","the","training","dataset",".","backbone",":","string","Pre-trained","dilated","backbone","network","type","(","default",":","'resnet50","'",";","'resnet50","'",",","'resnet101","'","or","'resnet152","'",")",".","norm_layer",":","object"]
code: def forward(self, x):
      # print("in tkcnet.forward(): input_size: ", x.size())  #input.size == crop_size
      imsize = x.size()[2:]
      _, _, c3, c4 = self.base_forward(x)
      x = self.head(c4)
      out = upsample(x, imsize, **self._up_kwargs)
      out1 = [out]
  
      if self.aux and self.training:
          return tuple(out1)
      else:
          return out1[0]
  
file_path: pywick/pywick/models/segmentation/testnets/tkcnet/tkcnet.py
imports: import torch
  import torch.nn
  from torch.nn.functional import upsample
  from .base import BaseNet
label_desc: Use image node_id 2 for calling the TKCNet obj's underlying member method code with example usage: obj.forward(x) and returns: tuple, out1