code: def __call__(self, img, return_ocr_result_in_table=False):
      result = dict()
      time_dict = {"det": 0, "rec": 0, "table": 0, "all": 0, "match": 0}
      start = time.time()
      structure_res, elapse = self._structure(copy.deepcopy(img))
      result["cell_bbox"] = structure_res[1].tolist()
      time_dict["table"] = elapse
  
      dt_boxes, rec_res, det_elapse, rec_elapse = self._ocr(
          copy.deepcopy(img)
      )
      time_dict["det"] = det_elapse
      time_dict["rec"] = rec_elapse
  
      if return_ocr_result_in_table:
          result["boxes"] = [x.tolist() for x in dt_boxes]
          result["rec_res"] = rec_res
  
      tic = time.time()
      pred_html = self.match(structure_res, dt_boxes, rec_res)
      toc = time.time()
      time_dict["match"] = toc - tic
      result["html"] = pred_html
      end = time.time()
      time_dict["all"] = end - start
      return result, time_dict
  
imports: import os
  import sys
  import cv2
  import copy
  import logging
  import numpy
  import time
  import tools.infer.predict_rec
  import tools.infer.predict_det
  import tools.infer.utility
  from tools.infer.predict_system import sorted_boxes
  from ppocr.utils.utility import get_image_file_list, check_and_read
  from ppocr.utils.logging import get_logger
  from ppstructure.table.matcher import TableMatch
  from ppstructure.table.table_master_match import TableMasterMatcher
  from ppstructure.utility import parse_args
  import ppstructure.table.predict_structure
label_desc: Use image node_id 2 for calling the TableSystem obj's underlying member method code with example usage: obj.__call__(img, return_ocr_result_in_table) and returns: result,  time_dict