code: def get_3d_output_size(
      angle, axis, input_size, parity_correction=False
  ):
      transform = np.abs(get_3d_lin_rotation(angle, axis))
      eps = 1e-2
      in_size = np.array(input_size[2::-1], dtype=np.int32)
      out_size = np.int32(np.ceil(np.matmul(transform, in_size) - eps))
  
      if parity_correction:
          dominant_axis = np.argmax(transform, axis=1)
          out_size += (out_size % 2) ^ (in_size[dominant_axis] % 2)
  
      return out_size[::-1]
  
imports: import cv2
  import numpy
  import math
  import os
  import random
  from nvidia.dali.pipeline import Pipeline
  import nvidia.dali.ops
  import nvidia.dali.types
  import nvidia.dali
  from test_utils import compare_pipelines
  from sequences_test_utils import ArgData, ArgDesc, ArgCb, ParamsProvider, get_video_input_cases, sequence_suite_helper
label_desc: Use image node_id 3 for calling a global function with example usage: get_3d_output_size(angle, axis, input_size, parity_correction) and returns: out_size