class_docstr: A simple implementation for FCN based on PaddlePaddle.
  
  The original article refers to
  Evan Shelhamer, et, al. "Fully Convolutional Networks for Semantic Segmentation"
  (https://arxiv.org/abs/1411.4038).
  
  Args:
      num_classes (int): The unique number of target classes.
      backbone (paddle.nn.Layer): Backbone networks.
      backbone_indices (tuple, optional): The values in the tuple indicate the indices of output of backbone.
          Default: (-1, ).
      channels (int, optional): The channels between conv layer and the last layer of FCNHead.
          If None, it will be the number of channels of input features. Default: None.
      align_corners (bool): An argument of F.interpolate. It should be set to False when the output size of feature
          is even, e.g. 1024x512, otherwise it is True, e.g. 769x769.  Default: False.
      pretrained (str, optional): The path or url of pretrained model. Default: None
class_docstr_tok: ["A","simple","implementation","for","FCN","based","on","PaddlePaddle",".","The","original","article","refers","to","Evan","Shelhamer",",","et",",","al",".","``","Fully","Convolutional","Networks","for","Semantic","Segmentation","''","(","https",":","\/\/arxiv.org\/abs\/1411.4038",")",".","Args",":","num_classes","(","int",")",":","The","unique","number","of","target","classes",".","backbone","(","paddle.nn.Layer",")",":","Backbone","networks",".","backbone_indices","(","tuple",",","optional",")",":","The","values","in","the","tuple","indicate","the","indices","of","output","of","backbone",".","Default",":","(","-1",",",")",".","channels","(","int",",","optional",")",":","The","channels","between","conv","layer","and","the","last","layer","of","FCNHead",".","If","None",",","it","will","be","the","number","of","channels","of","input","features",".","Default",":","None",".","align_corners","(","bool",")",":","An","argument","of","F.interpolate",".","It","should","be","set","to","False","when","the","output","size","of","feature","is","even",",","e.g",".","1024x512",",","otherwise","it","is","True",",","e.g",".","769x769",".","Default",":","False",".","pretrained","(","str",",","optional",")",":","The","path","or","url","of","pretrained","model",".","Default",":","None"]
code: def forward(self, x):
      feat_list = self.backbone(x)
      logit_list = self.head(feat_list)
      return [
          F.interpolate(
              logit,
              x.shape[2:],
              mode="bilinear",
              align_corners=self.align_corners,
          )
          for logit in logit_list
      ]
  
file_path: PaddleHub/modules/image/semantic_segmentation/FCN_HRNet_W18_Face_Seg/model/fcn.py
imports: import paddle.nn
  import paddle.nn.functional
  from .layers import ConvBNReLU
label_desc: Use image node_id 2 for calling the FCN obj's underlying member method code with example usage: obj.forward(x) and returns: unknown