docstr: Parameters:
  image: file path or numpy-array or a byte stream object
docstr_tok: ["Parameters",":","image",":","file","path","or","numpy-array","or","a","byte","stream","object"]
code: def readtextlang(
      self,
      image,
      decoder="greedy",
      beamWidth=5,
      batch_size=1,
      workers=0,
      allowlist=None,
      blocklist=None,
      detail=1,
      rotation_info=None,
      paragraph=False,
      min_size=20,
      contrast_ths=0.1,
      adjust_contrast=0.5,
      filter_ths=0.003,
      text_threshold=0.7,
      low_text=0.4,
      link_threshold=0.4,
      canvas_size=2560,
      mag_ratio=1.0,
      slope_ths=0.1,
      ycenter_ths=0.5,
      height_ths=0.5,
      width_ths=0.5,
      y_ths=0.5,
      x_ths=1.0,
      add_margin=0.1,
      threshold=0.2,
      bbox_min_score=0.2,
      bbox_min_size=3,
      max_candidates=0,
      output_format="standard",
  ):
      """
      Parameters:
      image: file path or numpy-array or a byte stream object
      """
      img, img_cv_grey = reformat_input(image)
  
      horizontal_list, free_list = self.detect(
          img,
          min_size=min_size,
          text_threshold=text_threshold,
          low_text=low_text,
          link_threshold=link_threshold,
          canvas_size=canvas_size,
          mag_ratio=mag_ratio,
          slope_ths=slope_ths,
          ycenter_ths=ycenter_ths,
          height_ths=height_ths,
          width_ths=width_ths,
          add_margin=add_margin,
          reformat=False,
          threshold=threshold,
          bbox_min_score=bbox_min_score,
          bbox_min_size=bbox_min_size,
          max_candidates=max_candidates,
      )
      # get the 1st result from hor & free list as self.detect returns a list of depth 3
      horizontal_list, free_list = horizontal_list[0], free_list[0]
      result = self.recognize(
          img_cv_grey,
          horizontal_list,
          free_list,
          decoder,
          beamWidth,
          batch_size,
          workers,
          allowlist,
          blocklist,
          detail,
          rotation_info,
          paragraph,
          contrast_ths,
          adjust_contrast,
          filter_ths,
          y_ths,
          x_ths,
          False,
          output_format,
      )
  
      char = []
      directory = "characters/"
      for i in range(len(result)):
          char.append(result[i][1])
  
      def search(arr, x):
          g = False
          for i in range(len(arr)):
              if arr[i] == x:
                  g = True
                  return 1
          if g == False:
              return -1
  
      def tupleadd(i):
          a = result[i]
          b = a + (filename[0:2],)
          return b
  
      for filename in os.listdir(directory):
          if filename.endswith(".txt"):
              with open(
                  "characters/" + filename, "rt", encoding="utf8"
              ) as myfile:
                  chartrs = str(myfile.read().splitlines()).replace(
                      "\n", ""
                  )
                  for i in range(len(char)):
                      res = search(chartrs, char[i])
                      if res != -1:
                          if (
                              filename[0:2] == "en"
                              or filename[0:2] == "ch"
                          ):
                              print(tupleadd(i))
  
imports: from .recognition import get_recognizer, get_text
  from .utils import group_text_box, get_image_list, calculate_md5, get_paragraph, download_and_unzip, printProgressBar, diff, reformat_input, make_rotated_img_list, set_result_with_confidence, reformat_input_batched, merge_to_free
  from .config import *
  from bidi.algorithm import get_display
  import numpy
  import cv2
  import torch
  import os
  import sys
  from PIL import Image
  from logging import getLogger
  import yaml
  import json
label_desc: Use image node_id 11 for calling the Reader obj's underlying member method code with example usage: obj.readtextlang(image, decoder, beamWidth, batch_size, workers, allowlist, blocklist, detail, rotation_info, paragraph, min_size, contrast_ths, adjust_contrast, filter_ths, text_threshold, low_text, link_threshold, canvas_size, mag_ratio, slope_ths, ycenter_ths, height_ths, width_ths, y_ths, x_ths, add_margin, threshold, bbox_min_score, bbox_min_size, max_candidates, output_format) and returns: b, unknown, int