class_docstr: The PortraitNet implementation based on PaddlePaddle.
  
  The original article refers to
  Song-Hai Zhanga, Xin Donga, Jia Lib, Ruilong Lia, Yong-Liang Yangc
  "PortraitNet: Real-time Portrait Segmentation Network for Mobile Device"
  (https://www.yongliangyang.net/docs/mobilePotrait_c&g19.pdf).
  
  Args:
      num_classes (int, optional): The unique number of target classes.  Default: 2.
      backbone (Paddle.nn.Layer): Backbone network, currently support MobileNetV2.
      add_edge (bool, optional): Whether output to edge. Default: False
      pretrained (str, optional): The path or url of pretrained model. Default: None
class_docstr_tok: ["The","PortraitNet","implementation","based","on","PaddlePaddle",".","The","original","article","refers","to","Song-Hai","Zhanga",",","Xin","Donga",",","Jia","Lib",",","Ruilong","Lia",",","Yong-Liang","Yangc","''","PortraitNet",":","Real-time","Portrait","Segmentation","Network","for","Mobile","Device","''","(","https",":","\/\/www.yongliangyang.net\/docs\/mobilePotrait_c","&","g19.pdf",")",".","Args",":","num_classes","(","int",",","optional",")",":","The","unique","number","of","target","classes",".","Default",":","2.","backbone","(","Paddle.nn.Layer",")",":","Backbone","network",",","currently","support","MobileNetV2",".","add_edge","(","bool",",","optional",")",":","Whether","output","to","edge",".","Default",":","False","pretrained","(","str",",","optional",")",":","The","path","or","url","of","pretrained","model",".","Default",":","None"]
code: def forward(self, x):
      feat_list = self.backbone(x)
      logits_list = self.head(feat_list)
      return [logits_list]
  
imports: import paddle.nn
  from paddleseg import utils
  from paddleseg.cvlibs import manager
label_desc: Use image node_id 2 for calling the PortraitNet obj's underlying member method code with example usage: obj.forward(x) and returns: list