code: def _get_prediction(self, image_nd, clicks_lists, is_image_changed):
      input_names = self.net.get_input_names()
      self.input_handle_1 = self.net.get_input_handle(input_names[0])
      self.input_handle_2 = self.net.get_input_handle(input_names[1])
      points_nd = self.get_points_nd(clicks_lists)
  
      image, prev_mask = self.prepare_input(image_nd)
      coord_features = self.get_coord_features(
          image, prev_mask, points_nd
      )
      image = image.numpy().astype("float32")
      coord_features = coord_features.numpy().astype("float32")
  
      self.input_handle_1.copy_from_cpu(image)
      self.input_handle_2.copy_from_cpu(coord_features)
  
      self.net.run()
  
      output_names = self.net.get_output_names()
  
      output_handle = self.net.get_output_handle(output_names[0])
      output_data = output_handle.copy_to_cpu()
      if len(output_names) == 3:
          edge_handle = self.net.get_output_handle(output_names[2])
          edge_data = edge_handle.copy_to_cpu()
          return output_data, edge_data
      else:
          return output_data, None
  
imports: import paddle
  import paddle.nn.functional
  import numpy
  from inference.transforms import AddHorizontalFlip, SigmoidForPred, LimitLongestSide
  from .ops import DistMaps, ScaleLayer, BatchImageNormalize
label_desc: Use image node_id 7 for calling the BasePredictor obj's underlying member method code with example usage: obj._get_prediction(image_nd, clicks_lists, is_image_changed) and returns: output_data,  edge_data, output_data,  None