code: def read_csv(csv_file, class_whitelist=None, load_score=False):
      """Loads boxes and class labels from a CSV file in the AVA format.
      CSV file format described at https://research.google.com/ava/download.html.
      Args:
        csv_file: A file object.
        class_whitelist: If provided, boxes corresponding to (integer) class labels
          not in this set are skipped.
      Returns:
        boxes: A dictionary mapping each unique image key (string) to a list of
          boxes, given as coordinates [y1, x1, y2, x2].
        labels: A dictionary mapping each unique image key (string) to a list of
          integer class lables, matching the corresponding box in `boxes`.
        scores: A dictionary mapping each unique image key (string) to a list of
          score values lables, matching the corresponding label in `labels`. If
          scores are not provided in the csv, then they will default to 1.0.
      """
      boxes = defaultdict(list)
      labels = defaultdict(list)
      scores = defaultdict(list)
      with pathmgr.open(csv_file, "r") as f:
          reader = csv.reader(f)
          for row in reader:
              assert len(row) in [7, 8], (
                  "Wrong number of columns: " + row
              )
              image_key = make_image_key(row[0], row[1])
              x1, y1, x2, y2 = [float(n) for n in row[2:6]]
              action_id = int(row[6])
              if class_whitelist and action_id not in class_whitelist:
                  continue
              score = 1.0
              if load_score:
                  score = float(row[7])
              boxes[image_key].append([y1, x1, y2, x2])
              labels[image_key].append(action_id)
              scores[image_key].append(score)
      return boxes, labels, scores
  
file_path: SlowFast/slowfast/utils/ava_eval_helper.py
imports: from __future__ import absolute_import, division, print_function, unicode_literals
  import csv
  import logging
  import pprint
  import time
  from collections import defaultdict
  import numpy
  import slowfast.utils.distributed
  from ava_evaluation import object_detection_evaluation, standard_fields
  from slowfast.utils.env import pathmgr
label_desc: Use image node_id 2 for calling a global function with example usage: read_csv(csv_file, class_whitelist, load_score) and returns: boxes,  labels,  scores