code: def output_split(split_name, n_frames):
      logging.info("Rendering the %s split.", split_name)
      frames = []
  
      # --- Render a set of frames from random camera poses
      for i in range(n_frames):
          matrix = update_camera()
  
          frame = renderer.render_still()
  
          frame["segmentation"] = kb.adjust_segmentation_idxs(
              frame["segmentation"], scene.assets, []
          )
  
          kb.write_png(
              filename=output_dir / split_name / f"{i}.png",
              data=frame["rgba"],
          )
          kb.write_palette_png(
              filename=output_dir
              / split_name
              / f"{i}_segmentation.png",
              data=frame["segmentation"],
          )
  
          frame_data = {
              "transform_matrix": matrix.tolist(),
              "file_path": f"{split_name}/{i}",
          }
          frames.append(frame_data)
  
      # --- Write the JSON descriptor for this split
      kb.write_json(
          filename=output_dir / f"transforms_{split_name}.json",
          data={
              "camera_angle_x": camera.field_of_view,
              "frames": frames,
          },
      )
  
imports: import logging
  import kubric
  from kubric.renderer.blender import Blender
  import numpy
  import bpy
label_desc: Use image node_id 2 for calling a global function with example usage: output_split(split_name, n_frames) without return types