code: def parse_args():
      parser = argparse.ArgumentParser(
          description="MMDetection multi-model inference demo"
      )
      parser.add_argument(
          "inputs", type=str, help="Input image file or folder path."
      )
      parser.add_argument(
          "config",
          type=str,
          nargs="*",
          help="Config file(s), support receive multiple files",
      )
      parser.add_argument(
          "--checkpoints",
          type=str,
          nargs="*",
          help="Checkpoint file(s), support receive multiple files, "
          "remember to correspond to the above config",
      )
      parser.add_argument(
          "--weights",
          type=float,
          nargs="*",
          default=None,
          help="weights for each model, remember to "
          "correspond to the above config",
      )
      parser.add_argument(
          "--fusion-iou-thr",
          type=float,
          default=0.55,
          help="IoU value for boxes to be a match in wbf",
      )
      parser.add_argument(
          "--skip-box-thr",
          type=float,
          default=0.0,
          help="exclude boxes with score lower than this variable in wbf",
      )
      parser.add_argument(
          "--conf-type",
          type=str,
          default="avg",  # avg, max, box_and_model_avg, absent_model_aware_avg
          help="how to calculate confidence in weighted boxes in wbf",
      )
      parser.add_argument(
          "--out-dir",
          type=str,
          default="outputs",
          help="Output directory of images or prediction results.",
      )
      parser.add_argument(
          "--device", default="cuda:0", help="Device used for inference"
      )
      parser.add_argument(
          "--pred-score-thr",
          type=float,
          default=0.3,
          help="bbox score threshold",
      )
      parser.add_argument(
          "--batch-size",
          type=int,
          default=1,
          help="Inference batch size.",
      )
      parser.add_argument(
          "--show",
          action="store_true",
          help="Display the image in a popup window.",
      )
      parser.add_argument(
          "--no-save-vis",
          action="store_true",
          help="Do not save detection vis results",
      )
      parser.add_argument(
          "--no-save-pred",
          action="store_true",
          help="Do not save detection json results",
      )
      parser.add_argument(
          "--palette",
          default="none",
          choices=["coco", "voc", "citys", "random", "none"],
          help="Color palette used for visualization",
      )
  
      args = parser.parse_args()
  
      if args.no_save_vis and args.no_save_pred:
          args.out_dir = ""
  
      return args
  
file_path: mmdetection/demo/demo_multi_model.py
imports: import argparse
  import os.path
  import mmcv
  import mmengine
  from mmengine.fileio import isdir, join_path, list_dir_or_file
  from mmengine.logging import print_log
  from mmengine.structures import InstanceData
  from mmdet.apis import DetInferencer
  from mmdet.models.utils import weighted_boxes_fusion
  from mmdet.registry import VISUALIZERS
  from mmdet.structures import DetDataSample
label_desc: Use image node_id 1 for calling a global function with example usage: parse_args() and returns: args