class_docstr: Teacher for Image Grounded Conversations (IGC) Task.
  
  See https://arxiv.org/abs/1701.08251 for more details
class_docstr_tok: ["Teacher","for","Image","Grounded","Conversations","(","IGC",")","Task",".","See","https",":","\/\/arxiv.org\/abs\/1701.08251","for","more","details"]
docstr: Override so that subclasses can see same image features.
code: def get_image_features_path(self, task, image_model_name, dt):
      """
      Override so that subclasses can see same image features.
      """
      # In default implementation, self.data_path already has task name added
      image_features_path = os.path.join(
          self.data_path, "image_features"
      )
  
      if not os.path.isdir(image_features_path):
          PathManager.mkdirs(image_features_path)
  
      return os.path.join(
          image_features_path, f"{image_model_name}_{dt}_features_dict"
      )
  
imports: from typing import Optional
  from parlai.core.params import ParlaiParser
  import csv
  import os
  from abc import ABC, abstractmethod
  from PIL import Image
  from typing import List, Dict, Any
  from parlai.core.build_data import download_multiprocess
  from parlai.core.params import Opt
  from parlai.core.teachers import AbstractImageTeacher
  from parlai.utils.io import PathManager
  import parlai.utils.typing
label_desc: Use image node_id 5 for calling the IGCTeacher obj's underlying member method code with example usage: obj.get_image_features_path(task, image_model_name, dt) and returns: os