code: def check_processed_bboxes(
      crop_anchor,
      crop_shape,
      original_boxes,
      processed_boxes,
      bbox_indices=None,
  ):
      if bbox_indices is not None:
          filtered_boxes = np.array(original_boxes[bbox_indices])
      else:
          filtered_boxes = filter_by_centroid(
              crop_anchor, crop_shape, original_boxes
          )
      assert len(original_boxes) >= len(filtered_boxes)
      assert len(filtered_boxes) == len(processed_boxes)
      nboxes = len(filtered_boxes)
      for i in range(nboxes):
          box = filtered_boxes[i]
          processed_box = processed_boxes[i]
          expected_box = map_box(box, crop_anchor, crop_shape)
          assert np.allclose(expected_box, processed_box, atol=1e-6)
  
imports: from nvidia.dali.pipeline import Pipeline
  from nvidia.dali import pipeline_def
  import nvidia.dali.ops
  import nvidia.dali.fn
  import nvidia.dali.types
  import numpy
  import random
label_desc: Use image node_id 4 for calling a global function with example usage: check_processed_bboxes(crop_anchor, crop_shape, original_boxes, processed_boxes, bbox_indices) without return types