code: def create_four_cameras(device, dtype) -> PinholeCamera:
      height = torch.tensor([5, 4, 4, 4], device=device, dtype=dtype)
      width = torch.tensor([9, 7, 7, 7], device=device, dtype=dtype)
  
      fx = width.tolist()
      fy = height.tolist()
  
      cx = (width - 1.0) / 2.0
      cy = (height - 1.0) / 2.0
  
      tx = [0.0, 0.0, 0.0, 0.0]
      ty = [0.0, 0.0, 0.0, 0.0]
      tz = [11.0, 11.0, 11.0, 5.0]
  
      pi = math.pi
      alpha = [pi / 2.0, pi / 2.0, pi / 2.0, 0.0]
      beta = [0.0, 0.0, 0.0, pi]
      gamma = [-pi / 2.0, 0.0, pi / 2.0, 0.0]
  
      intrinsics = create_intrinsics(
          fx, fy, cx, cy, device=device, dtype=dtype
      )
      extrinsics = create_extrinsics_with_rotation(
          alpha, beta, gamma, tx, ty, tz, device=device, dtype=dtype
      )
  
      cameras = PinholeCamera(intrinsics, extrinsics, height, width)
      return cameras
  
imports: import math
  import torch
  from kornia.core import Device
  from kornia.geometry.camera import PinholeCamera
  from kornia.nerf.samplers import RandomGridRaySampler, RandomRaySampler, UniformRaySampler, calc_ray_t_vals, cameras_for_ids, sample_lengths, sample_ray_points
  from kornia.testing import assert_close
label_desc: Use image node_id 5 for calling a global function with example usage: create_four_cameras(device, dtype) and returns: cameras