code: def ensure_transforms_valid(
      self, transforms: Sequence[object]
  ) -> None:
      # IAA-based augmentations supports only transformation of xy keypoints.
      # If your keypoints formats is other than 'xy' we emit warning to let user
      # be aware that angle and size will not be modified.
  
      try:
          from albumentations.imgaug.transforms import DualIAATransform
      except ImportError:
          # imgaug is not installed so we skip imgaug checks.
          return
  
      if self.params.format is not None and self.params.format != "xy":
          for transform in transforms:
              if isinstance(transform, DualIAATransform):
                  warnings.warn(
                      "{} transformation supports only 'xy' keypoints "
                      "augmentation. You have '{}' keypoints format. Scale "
                      "and angle WILL NOT BE transformed.".format(
                          transform.__class__.__name__,
                          self.params.format,
                      )
                  )
                  break
  
imports: from __future__ import division
  import math
  import typing
  import warnings
  from typing import Any, Dict, List, Optional, Sequence, Tuple
  from .utils import DataProcessor, Params
label_desc: Use image node_id 4 for calling the KeypointsProcessor obj's underlying member method code with example usage: obj.ensure_transforms_valid(transforms) without return types