code: def test_augmentations_serialization_with_call_params(
      augmentation_cls,
      params,
      call_params,
      p,
      seed,
      image,
      always_apply,
  ):
      aug = augmentation_cls(p=p, always_apply=always_apply, **params)
      annotations = {"image": image, **call_params}
      serialized_aug = A.to_dict(aug)
      deserialized_aug = A.from_dict(serialized_aug)
      set_seed(seed)
      aug_data = aug(**annotations)
      set_seed(seed)
      deserialized_aug_data = deserialized_aug(**annotations)
      assert np.array_equal(
          aug_data["image"], deserialized_aug_data["image"]
      )
  
imports: import json
  import os
  import random
  from unittest.mock import patch
  import cv2
  import numpy
  import pytest
  import albumentations
  import albumentations.augmentations.functional
  import albumentations.augmentations.geometric.functional
  from albumentations.core.serialization import SERIALIZABLE_REGISTRY, shorten_class_name
  from albumentations.core.transforms_interface import ImageOnlyTransform
  from .conftest import skipif_no_torch
  from .utils import OpenMock, check_all_augs_exists, get_image_only_transforms, get_transforms, set_seed
label_desc: Use image node_id 6 for calling a global function with example usage: test_augmentations_serialization_with_call_params(augmentation_cls, params, call_params, p, seed, image, always_apply) without return types