def __init__()

in lucid/modelzoo/vision_base.py [0:0]


  def __init__(self, model_directory, manifest):
    self.manifest = manifest

    for mandatory_key in self._mandatory_properties:
      # TODO: consider if we can tell you the path of the faulty manifest here
      assert mandatory_key in manifest.keys(), "Mandatory property '{}' was not defined in json manifest.".format(mandatory_key)
    for key, value in manifest.items():
      setattr(self, key, value)

    model_path = manifest.get('model_path', 'graph.pb')
    if model_path.startswith("./"): # TODO: can we be less specific here?
      self.model_path = path.join(model_directory, model_path[2:])
    else:
      self.model_path = model_path

    layers_or_layer_names = manifest.get('layers')
    if len(layers_or_layer_names) > 0:
      if isinstance(layers_or_layer_names[0], str):
        self.layer_names = layers_or_layer_names
      elif isinstance(layers_or_layer_names[0], dict):
        self.layers = _layers_from_list_of_dicts(self, layers_or_layer_names)
        self.layer_names = [layer.name for layer in self.layers]

    super().__init__()