code: def define_graph(self):
      inputs, labels = self.input(name="Reader")
      self.crop_pos = self.input_crop_pos()
      self.crop_size = self.input_crop_size()
  
      if self.is_fused_decoder:
          images = self.decode(inputs, self.crop_pos, self.crop_size)
      else:
          images = self.decode(inputs)
          if self.device == "gpu":
              images = images.gpu()
          images = self.slice(images, self.crop_pos, self.crop_size)
      return images
  
imports: from nvidia.dali import Pipeline, pipeline_def, ops, fn, types
  import numpy
  import os
  from functools import partial
  from math import floor
  from test_utils import compare_pipelines, get_dali_extra_path, RandomDataIterator, generator_random_axes_for_3d_input, generator_random_data, as_array
  from nose_utils import assert_raises
  from nose2.tools import params
label_desc: Use image node_id 2 for calling the SlicePipeline obj's underlying member method code with example usage: obj.define_graph() and returns: images