code: def run(self):
      try:
          findex = 0
          for Imgpath in self.mImgList:
              if self.handle == 0:
                  self.listValue.emit(Imgpath)
                  if self.model == "paddle":
                      h, w, _ = cv2.imdecode(
                          np.fromfile(Imgpath, dtype=np.uint8), 1
                      ).shape
                      if h > 32 and w > 32:
                          self.result_dic = self.ocr.ocr(
                              Imgpath, cls=True, det=True
                          )[0]
                      else:
                          print(
                              "The size of",
                              Imgpath,
                              "is too small to be recognised",
                          )
                          self.result_dic = None
  
                  # 结果保存
                  if (
                      self.result_dic is None
                      or len(self.result_dic) == 0
                  ):
                      print("Can not recognise file", Imgpath)
                      pass
                  else:
                      strs = ""
                      for res in self.result_dic:
                          chars = res[1][0]
                          cond = res[1][1]
                          posi = res[0]
                          strs += (
                              "Transcription: "
                              + chars
                              + " Probability: "
                              + str(cond)
                              + " Location: "
                              + json.dumps(posi)
                              + "\n"
                          )
                      # Sending large amounts of data repeatedly through pyqtSignal may affect the program efficiency
                      self.listValue.emit(strs)
                      self.mainThread.result_dic = self.result_dic
                      self.mainThread.filePath = Imgpath
                      # 保存
                      self.mainThread.saveFile(mode="Auto")
                  findex += 1
                  self.progressBarValue.emit(findex)
              else:
                  break
          self.endsignal.emit(0, "readAll")
          self.exec()
      except Exception as e:
          print(e)
          raise
  
imports: import time
  import datetime
  import json
  import cv2
  import numpy
  from libs.utils import newIcon
label_desc: Use image node_id 2 for calling the Worker obj's underlying member method code with example usage: obj.run() without return types