class_docstr: Provides per frame angle argument input to the video rotate operator test.
  The expanded baseline pipeline must be provided with additional argument ``size``
  to make allowance for coalescing of inferred frames sizes
class_docstr_tok: ["Provides","per","frame","angle","argument","input","to","the","video","rotate","operator","test",".","The","expanded","baseline","pipeline","must","be","provided","with","additional","argument","``","size","``","to","make","allowance","for","coalescing","of","inferred","frames","sizes"]
code: def expand_params(self):
      assert self.input_data.desc.expandable_prefix == "F"
      expanded_params = super().expand_params()
      params_dict = {
          param_data.desc.name: param_data
          for param_data in expanded_params
      }
      expanded_angles = params_dict.get("angle")
      expanded_axis = params_dict.get("axis")
      assert (
          expanded_angles is not None
          and "size" not in self.fixed_params
          and "size" not in params_dict
      )
      sequence_extents = [
          [sample.shape[0] for sample in input_batch]
          for input_batch in self.input_data.data
      ]
      output_size_params = (
          sequence_extents,
          self.unfolded_input.data,
          expanded_angles.data,
      )
      if expanded_axis is not None:
          output_size_params += (expanded_axis.data,)
      output_sizes = [
          sequence_batch_output_size(*args)
          for args in zip(*output_size_params)
      ]
      expanded_params.append(
          ArgData(ArgDesc("size", "", "cpu"), output_sizes)
      )
      return expanded_params
  
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 2 for calling the RotatePerFrameParamsProvider obj's underlying member method code with example usage: obj.expand_params() and returns: expanded_params