code: def bbox_jitter(
      points_x, points_y, jitter_ratio_x=0.5, jitter_ratio_y=0.1
  ):
      """Jitter on the coordinates of bounding box.
  
      Args:
          points_x (list[float | int]): List of y for four vertices.
          points_y (list[float | int]): List of x for four vertices.
          jitter_ratio_x (float): Horizontal jitter ratio relative to the height.
          jitter_ratio_y (float): Vertical jitter ratio relative to the height.
      """
      assert len(points_x) == 4
      assert len(points_y) == 4
      assert isinstance(jitter_ratio_x, float)
      assert isinstance(jitter_ratio_y, float)
      assert 0 <= jitter_ratio_x < 1
      assert 0 <= jitter_ratio_y < 1
  
      points = [Point(points_x[i], points_y[i]) for i in range(4)]
      line_list = [
          LineString([points[i], points[i + 1 if i < 3 else 0]])
          for i in range(4)
      ]
  
      tmp_h = max(line_list[1].length, line_list[3].length)
  
      for i in range(4):
          jitter_pixel_x = (
              (np.random.rand() - 0.5) * 2 * jitter_ratio_x * tmp_h
          )
          jitter_pixel_y = (
              (np.random.rand() - 0.5) * 2 * jitter_ratio_y * tmp_h
          )
          points_x[i] += jitter_pixel_x
          points_y[i] += jitter_pixel_y
  
file_path: mmocr/mmocr/utils/bbox_utils.py
imports: from typing import List, Tuple
  import numpy
  from shapely.geometry import LineString, Point
  from mmocr.utils.check_argument import is_type_list
  from mmocr.utils.point_utils import point_distance, points_center
  from mmocr.utils.typing_utils import ArrayLike
label_desc: Use image node_id 12 for calling a global function with example usage: bbox_jitter(points_x, points_y, jitter_ratio_x, jitter_ratio_y) without return types