Class ArchiveModelClassifier

java.lang.Object
rawDeepLearningClassifier.dlClassification.StandardClassifierModel
rawDeepLearningClassifier.dlClassification.archiveModel.ArchiveModelClassifier
All Implemented Interfaces:
PamSettings, SettingsNameProvider, DLClassiferModel
Direct Known Subclasses:
KetosClassifier2, KooguClassifier, PamZipModelClassifier

public abstract class ArchiveModelClassifier extends StandardClassifierModel
A Tensorflow or PyTorch model zipped with a PAMGuard settings file. This allows anyone to create a model that can be loaded with one click if and only if they have already set up the json metadata properly.
Author:
Jamie Macaulay
  • Constructor Details

    • ArchiveModelClassifier

      public ArchiveModelClassifier(DLControl dlControl)
  • Method Details

    • setDLParams

      public void setDLParams(StandardModelParams ketosParams)
    • getName

      public String getName()
      Description copied from interface: DLClassiferModel
      Get the name of the model.
      Returns:
      the name of the model.
    • getModelUI

      public DLCLassiferModelUI getModelUI()
      Description copied from interface: DLClassiferModel
      Get any UI components for the model. Can be null.
      Returns:
      UI components for the model.
    • getDLWorker

      public DLModelWorker<StandardPrediction> getDLWorker()
      Description copied from class: StandardClassifierModel
      Get the sound spot worker.
      Specified by:
      getDLWorker in class StandardClassifierModel
      Returns:
      the sound spot worker.
    • getDLParams

      public StandardModelParams getDLParams()
      Description copied from class: StandardClassifierModel
      Get the sound spot worker.
      Specified by:
      getDLParams in class StandardClassifierModel
      Returns:
      the sound spot worker.
    • getKetosParams

      public StandardModelParams getKetosParams()
      Get the parameters for the Ketos classifier.
      Parameters:
      standardDLParams - - the Ketos parameters.
    • getDLModelSettings

      public Serializable getDLModelSettings()
      Description copied from interface: DLClassiferModel
      A settings object that can be saved.
      Returns:
      the settings object.
    • getModelWorker

      public ArchiveModelWorker getModelWorker()
      Get the KetosWorker. this handles loading and running the Ketos model.
      Returns:
      the Ketos worker.
    • getUnitName

      public String getUnitName()
      Returns:
      A Name specific to this instance of the particular class, e.g. Sperm whale detector, Beaked whale detector, etc.
    • getUnitType

      public String getUnitType()
      Returns:
      A Name specific to the type, e.g. Click detector
    • getSettingsReference

      public Serializable getSettingsReference()
      Returns:
      The serialisable object that will be stored
    • getSettingsVersion

      public long getSettingsVersion()
      Returns:
      An integer version number for the settings
    • restoreSettings

      public boolean restoreSettings(PamControlledUnitSettings pamControlledUnitSettings)
      Returns:
      true if successful The object performs final checks (if needed) and then casts the settings data pamcontrolledunitSettings.settings into the correct type and uses as required
    • makeParams

      public StandardModelParams makeParams()
      Create the parameters class for the model. This can be overridden for bespoke parameters. classes.
      Returns:
      a new parameters class object.
    • isModelType

      public boolean isModelType(URI uri)
      Description copied from interface: DLClassiferModel
      Check whether a URI is compatible with a classification framework
      Parameters:
      uri - - the URI to the model
      Returns:
      true if the model is compatible.
    • getFileExtensions

      public String[] getFileExtensions()
      Get the file extensions for the model type.
      Returns:
      the file extension.