code: def argsparser():
      parser = argparse.ArgumentParser(description=__doc__)
      parser.add_argument(
          "--mot_model_dir",
          type=str,
          default=None,
          help=(
              "Directory include:'model.pdiparams', 'model.pdmodel', "
              "'infer_cfg.yml', created by tools/export_model.py."
          ),
          required=True,
      )
      parser.add_argument(
          "--keypoint_model_dir",
          type=str,
          default=None,
          help=(
              "Directory include:'model.pdiparams', 'model.pdmodel', "
              "'infer_cfg.yml', created by tools/export_model.py."
          ),
          required=True,
      )
      parser.add_argument(
          "--image_file",
          type=str,
          default=None,
          help="Path of image file.",
      )
      parser.add_argument(
          "--image_dir",
          type=str,
          default=None,
          help="Dir of image file, `image_file` has a higher priority.",
      )
      parser.add_argument(
          "--keypoint_batch_size",
          type=int,
          default=1,
          help=(
              "batch_size for keypoint inference. In detection-keypoint unit"
              "inference, the batch size in detection is 1. Then collate det "
              "result in batch for keypoint inference."
          ),
      )
      parser.add_argument(
          "--video_file",
          type=str,
          default=None,
          help="Path of video file, `video_file` or `camera_id` has a highest priority.",
      )
      parser.add_argument(
          "--camera_id",
          type=int,
          default=-1,
          help="device id of camera to predict.",
      )
      parser.add_argument(
          "--mot_threshold",
          type=float,
          default=0.5,
          help="Threshold of score.",
      )
      parser.add_argument(
          "--keypoint_threshold",
          type=float,
          default=0.5,
          help="Threshold of score.",
      )
      parser.add_argument(
          "--output_dir",
          type=str,
          default="output",
          help="Directory of output visualization files.",
      )
      parser.add_argument(
          "--run_mode",
          type=str,
          default="paddle",
          help="mode of running(paddle/trt_fp32/trt_fp16/trt_int8)",
      )
      parser.add_argument(
          "--device",
          type=str,
          default="cpu",
          help="Choose the device you want to run, it can be: CPU/GPU/XPU/NPU, default is CPU.",
      )
      parser.add_argument(
          "--run_benchmark",
          type=ast.literal_eval,
          default=False,
          help="Whether to predict a image_file repeatedly for benchmark",
      )
      parser.add_argument(
          "--enable_mkldnn",
          type=ast.literal_eval,
          default=False,
          help="Whether use mkldnn with CPU.",
      )
      parser.add_argument(
          "--cpu_threads",
          type=int,
          default=1,
          help="Num of threads with CPU.",
      )
      parser.add_argument(
          "--trt_min_shape",
          type=int,
          default=1,
          help="min_shape for TensorRT.",
      )
      parser.add_argument(
          "--trt_max_shape",
          type=int,
          default=1088,
          help="max_shape for TensorRT.",
      )
      parser.add_argument(
          "--trt_opt_shape",
          type=int,
          default=608,
          help="opt_shape for TensorRT.",
      )
      parser.add_argument(
          "--trt_calib_mode",
          type=bool,
          default=False,
          help="If the model is produced by TRT offline quantitative "
          "calibration, trt_calib_mode need to set True.",
      )
      parser.add_argument(
          "--save_images",
          action="store_true",
          help="Save visualization image results.",
      )
      parser.add_argument(
          "--save_mot_txts",
          action="store_true",
          help="Save tracking results (txt).",
      )
      parser.add_argument(
          "--use_dark",
          type=bool,
          default=True,
          help="whether to use darkpose to get better keypoint position predict ",
      )
      parser.add_argument(
          "--save_res",
          type=bool,
          default=False,
          help=(
              "whether to save predict results to json file"
              "1) store_res: a list of image_data"
              "2) image_data: [imageid, rects, [keypoints, scores]]"
              "3) rects: list of rect [xmin, ymin, xmax, ymax]"
              "4) keypoints: 17(joint numbers)*[x, y, conf], total 51 data in list"
              "5) scores: mean of all joint conf"
          ),
      )
      parser.add_argument(
          "--tracker_config",
          type=str,
          default=None,
          help=("tracker donfig"),
      )
      return parser
  
label_desc: Use image node_id 1 for calling a global function with example usage: argsparser() and returns: parser