code: def setUp(self):
      img = np.array(
          [
              [
                  [1, 2, 3, 4, 5],
                  [1, 2, 3, 4, 5],
                  [1, 2, 3, 4, 5],
                  [1, 2, 3, 4, 5],
                  [1, 2, 3, 4, 5],
              ]
          ]
      ).transpose(1, 2, 0)
      gt_polygons = [np.array([2, 2, 5, 2, 5, 5, 2, 5])]
      gt_bboxes = np.array([[2, 2, 5, 5]])
      gt_bboxes_labels = np.array([0])
      gt_ignored = np.array([True], dtype=bool)
      self.data_info = dict(
          img=img,
          gt_polygons=gt_polygons,
          gt_bboxes=gt_bboxes,
          gt_bboxes_labels=gt_bboxes_labels,
          gt_ignored=gt_ignored,
      )
  
imports: import copy
  import unittest
  import unittest.mock
  import numpy
  from mmcv.transforms import Pad, RandomResize
  from mmocr.datasets.transforms import BoundedScaleAspectJitter, RandomCrop, RandomFlip, Resize, ShortScaleAspectJitter, SourceImagePad, TextDetRandomCrop, TextDetRandomCropFlip
  from mmocr.utils import bbox2poly, poly2shapely
label_desc: Use image node_id 1 for calling the TestTextDetRandomCrop obj's underlying member method code with example usage: obj.setUp() without return types