code: def load_json_info(gt_file, img_info):
      """Collect the annotation information.
  
      Annotation Format
      {
          'textBBs': [{
              'poly_points': [[435,1406], [466,1406], [466,1439], [435,1439]],
              "type": "text",
              "id": "t1",
          }], ...
      }
  
      Some special characters are used in the transcription:
      "«text»" indicates that "text" had a strikethrough
      "¿" indicates the transcriber could not read a character
      "§" indicates the whole line or word was illegible
      "" (empty string) is if the field was blank
  
      Args:
          gt_file (str): The path to ground-truth
          img_info (dict): The dict of the img and annotation information
  
      Returns:
          img_info (dict): The dict of the img and annotation information
      """
      assert isinstance(gt_file, str)
      assert isinstance(img_info, dict)
  
      annotation = mmengine.load(gt_file)
      anno_info = []
  
      # 'textBBs' contains the printed texts of the table while 'fieldBBs'
      #  contains the text filled by human.
      for box_type in ["textBBs", "fieldBBs"]:
          for anno in annotation[box_type]:
              # Skip blanks
              if box_type == "fieldBBs":
                  if anno["type"] == "blank":
                      continue
  
              xs, ys, segmentation = [], [], []
              for p in anno["poly_points"]:
                  xs.append(p[0])
                  ys.append(p[1])
                  segmentation.append(p[0])
                  segmentation.append(p[1])
              x, y = max(0, min(xs)), max(0, min(ys))
              w, h = max(xs) - x, max(ys) - y
              bbox = [x, y, w, h]
  
              anno = dict(
                  iscrowd=0,
                  category_id=1,
                  bbox=bbox,
                  area=w * h,
                  segmentation=[segmentation],
              )
              anno_info.append(anno)
  
      img_info.update(anno_info=anno_info)
  
      return img_info
  
file_path: mmocr/tools/dataset_converters/textdet/naf_converter.py
imports: import argparse
  import os.path
  import mmcv
  import mmengine
  from mmocr.utils import dump_ocr_data
label_desc: Use image node_id 4 for calling a global function with example usage: load_json_info(gt_file, img_info) and returns: img_info