code: def forward(self, x):
      f2, f3, f4, f5 = x
      p5 = self.toplayer_(f5)
  
      f4 = self.latlayer1_(f4)
      p4 = self._upsample_add(p5, f4, 2)
      p4 = self.smooth1_(p4)
  
      f3 = self.latlayer2_(f3)
      p3 = self._upsample_add(p4, f3, 2)
      p3 = self.smooth2_(p3)
  
      f2 = self.latlayer3_(f2)
      p2 = self._upsample_add(p3, f2, 2)
      p2 = self.smooth3_(p2)
  
      p3 = self._upsample(p3, 2)
      p4 = self._upsample(p4, 4)
      p5 = self._upsample(p5, 8)
  
      fuse = paddle.concat([p2, p3, p4, p5], axis=1)
      return fuse
  
file_path: PaddleOCR/ppocr/modeling/necks/fpn.py
imports: import paddle.nn
  import paddle
  import math
  import paddle.nn.functional
label_desc: Use image node_id 4 for calling the FPN obj's underlying member method code with example usage: obj.forward(x) and returns: fuse