code: def rotate_abs_points(
      points: np.ndarray, angle: float = 0.0
  ) -> np.ndarray:
      """Rotate points counter-clockwise.
  
      Args:
      ----
          points: array of size (N, 2)
          angle: angle between -90 and +90 degrees
  
      Returns:
      -------
          Rotated points
      """
      angle_rad = (
          angle * np.pi / 180.0
      )  # compute radian angle for np functions
      rotation_mat = np.array(
          [
              [np.cos(angle_rad), -np.sin(angle_rad)],
              [np.sin(angle_rad), np.cos(angle_rad)],
          ],
          dtype=points.dtype,
      )
      return np.matmul(points, rotation_mat.T)
  
file_path: doctr/doctr/utils/geometry.py
imports: from copy import deepcopy
  from math import ceil
  from typing import List, Optional, Tuple, Union
  import cv2
  import numpy
  from .common_types import BoundingBox, Polygon4P
label_desc: Use image node_id 5 for calling a global function with example usage: rotate_abs_points(points, angle) and returns: np