code: def vector_angle(self, vec1, vec2):
      if vec1.ndim > 1:
          unit_vec1 = vec1 / (norm(vec1, axis=-1) + self.eps).reshape(
              (-1, 1)
          )
      else:
          unit_vec1 = vec1 / (norm(vec1, axis=-1) + self.eps)
      if vec2.ndim > 1:
          unit_vec2 = vec2 / (norm(vec2, axis=-1) + self.eps).reshape(
              (-1, 1)
          )
      else:
          unit_vec2 = vec2 / (norm(vec2, axis=-1) + self.eps)
      return np.arccos(
          np.clip(np.sum(unit_vec1 * unit_vec2, axis=-1), -1.0, 1.0)
      )
  
imports: import cv2
  import numpy
  from ppocr.utils.utility import check_install
  from numpy.linalg import norm
label_desc: Use image node_id 2 for calling the DRRGTargets obj's underlying member method code with example usage: obj.vector_angle(vec1, vec2) and returns: np