code: def post_process(self, head_outs, scale_factor):
      pred_scores, pred_dist, anchor_points, stride_tensor = head_outs
      pred_bboxes = batch_distance2bbox(anchor_points, pred_dist)
      pred_bboxes *= stride_tensor
      if self.exclude_post_process:
          return (
              paddle.concat(
                  [pred_bboxes, pred_scores.transpose([0, 2, 1])],
                  axis=-1,
              ),
              None,
              None,
          )
      else:
          # scale bbox to origin
          scale_y, scale_x = paddle.split(scale_factor, 2, axis=-1)
          scale_factor = paddle.concat(
              [scale_x, scale_y, scale_x, scale_y], axis=-1
          ).reshape([-1, 1, 4])
          pred_bboxes /= scale_factor
          if self.exclude_nms:
              # `exclude_nms=True` just use in benchmark
              return pred_bboxes, pred_scores, None
          else:
              bbox_pred, bbox_num, nms_keep_idx = self.nms(
                  pred_bboxes, pred_scores
              )
              return bbox_pred, bbox_num, nms_keep_idx
  
imports: import paddle
  import paddle.nn
  import paddle.nn.functional
  from ppdet.core.workspace import register
  from paddle import ParamAttr
  from paddle.nn.initializer import KaimingNormal
  from paddle.nn.initializer import Normal, Constant
  from ..bbox_utils import batch_distance2bbox
  from ..losses import GIoULoss
  from ..initializer import bias_init_with_prob, constant_, normal_
  from ..assigners.utils import generate_anchors_for_grid_cell
  from ppdet.modeling.backbones.cspresnet import ConvBNLayer, RepVggBlock
  from ppdet.modeling.ops import get_static_shape, get_act_fn
  from ppdet.modeling.layers import MultiClassNMS
label_desc: Use image node_id 17 for calling the PPYOLOEHead obj's underlying member method code with example usage: obj.post_process(head_outs, scale_factor) and returns: paddle,  None,  None, pred_bboxes,  pred_scores,  None, bbox_pred,  bbox_num,  nms_keep_idx