code: def extract_feature_maps_patches(self, img_feat, alpha_feat, unknown):
      # extract image feature patches with shape:
      # (N, img_h*img_w, img_c, img_ks, img_ks)
      img_ks = self.kernel_size
      img_ps = self.extract_patches(img_feat, img_ks, self.stride)
  
      # extract alpha feature patches with shape:
      # (N, img_h*img_w, alpha_c, alpha_ks, alpha_ks)
      alpha_ps = self.extract_patches(
          alpha_feat, self.rate * 2, self.rate
      )
  
      # extract unknown mask patches with shape: (N, img_h*img_w, 1, 1)
      unknown_ps = self.extract_patches(unknown, img_ks, self.stride)
      unknown_ps = unknown_ps.squeeze(
          axis=2
      )  # squeeze channel dimension
      unknown_ps = unknown_ps.mean(axis=[2, 3], keepdim=True)
  
      return img_ps, alpha_ps, unknown_ps
  
file_path: PaddleSeg/Matting/ppmatting/models/layers/gca_module.py
imports: import paddle
  import paddle.nn
  import paddle.nn.functional
  from paddleseg.cvlibs import param_init
label_desc: Use image node_id 4 for calling the GuidedCxtAtten obj's underlying member method code with example usage: obj.extract_feature_maps_patches(img_feat, alpha_feat, unknown) and returns: img_ps,  alpha_ps,  unknown_ps