Class TFImageModel


  • public class TFImageModel
    extends Object
    • Constructor Summary

      Constructors 
      Constructor Description
      TFImageModel​(String pFoldername, int pImageHeight, int pImageWidth)
      Konstruktor, um ein Tensorflow Model in Java aus einem Ordner mit einem 'Saved Model' zu erstellen
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      String getErrorMessage()
      Methode, die jederzeit benutzt werden kann, um zu sehen ob zum Zeitpunkt des Aufrufs bereits irgendwelche Fehler aufgetreten sind
      String getModelInformation()
      Die Methode liefert Informationen über das Model, normalerweise inkl.
      float[] getOutputArray()
      Diese Methode ist eine von zwei Möglichkeiten, das Ergebnis einer Klassifikation zu erhalten nachdem ein Bild mit run() klassifiziert wurde
      String getOutputLabel()
      Diese Methode ist eine von zwei Möglichkeiten, das Ergebnis einer Klassifikation zu erhalten nachdem ein Bild mit run() klassifiziert wurde.
      void run()
      Methode zum Ausführen der Klassifikation.
      void setData​(String pFilename)
      Mit dieser Methode kann ein Bild als Eingabe in das Model geladen werden Im Anschluss kann dieses mit run() klassiziert werden.
      void setOutputLabels​(String[] pLabelArray)
      Mit der Methode kann ein String-Array übergeben werden, das die Klassenlabels enthält.
    • Constructor Detail

      • TFImageModel

        public TFImageModel​(String pFoldername,
                            int pImageHeight,
                            int pImageWidth)
        Konstruktor, um ein Tensorflow Model in Java aus einem Ordner mit einem 'Saved Model' zu erstellen
        Parameters:
        Name - des Ordners in dem das Tensorflow Model liegt. Der Ordner enthält üblicherweise eine Datei namens saved_model.pb und andere Unterordner mit Variablen, manchmal auch Assets. Achtung: Gültige Pfadangaben sind unter Windows z.B. "C:\\models\\myModel" oder unter Mac OS/Linux z.B. "/Users/myname/myModel"
        Breite - des Bildes, das klassifiziert werden soll
        Höhe - des Bildes, das klassifiziert werden soll Beide Werte können der Dokumentation des Tensorflow Models entnommen werden oder mit der Methode getModelInformation() hier abgefragt werden
    • Method Detail

      • getErrorMessage

        public String getErrorMessage()
        Methode, die jederzeit benutzt werden kann, um zu sehen ob zum Zeitpunkt des Aufrufs bereits irgendwelche Fehler aufgetreten sind
        Returns:
        Zeichenkette mit allen potentiell aufgetretenen Fehlern seit der letzten Instanziierung
      • getModelInformation

        public String getModelInformation()
        Die Methode liefert Informationen über das Model, normalerweise inkl. layer names, image width & height, data types
        Returns:
        Zeichenkette mit Informationen über das geladenene Model
      • setData

        public void setData​(String pFilename)
        Mit dieser Methode kann ein Bild als Eingabe in das Model geladen werden Im Anschluss kann dieses mit run() klassiziert werden.
        Parameters:
        Dateiname - inkl. Pfad des Bildes Achtung: Gültige Pfadangaben sind unter Windows z.B. "C:\\images\\myImage.png" oder unter Mac OS / Linux z.B. "/Users/myname/myImage.png"
      • run

        public void run()
        Methode zum Ausführen der Klassifikation. Das Ergebnis der Klassifikation kann mit getOutputArray() oder getOutputLabel() abgefragt werden.
      • getOutputArray

        public float[] getOutputArray()
        Diese Methode ist eine von zwei Möglichkeiten, das Ergebnis einer Klassifikation zu erhalten nachdem ein Bild mit run() klassifiziert wurde
        Returns:
        Array mit gleich vielen Feldern wie Ausgabeneuronen. Je höher der Wert, desto wahrscheinlicher ist es, dass das Bild zur Klasse gehört, die das Ausgabe- neuron repräsentiert.
      • setOutputLabels

        public void setOutputLabels​(String[] pLabelArray)
        Mit der Methode kann ein String-Array übergeben werden, das die Klassenlabels enthält. So kann jedem Ausgabeneuron genau ein Text zugeordnet werden und eine Ausgabe wie "Das war eine Katze" kann damit relaisiert werden.
      • getOutputLabel

        public String getOutputLabel()
        Diese Methode ist eine von zwei Möglichkeiten, das Ergebnis einer Klassifikation zu erhalten nachdem ein Bild mit run() klassifiziert wurde. Diese Methode liefert nur ein sinnvolles Ergebnis wenn zuvor mittels setOutputLabels(...) auch zum Model passende Klassenlabels geladen wurden.
        Returns:
        Zeichenkette, die die Klasse enthält, die laut Model-Vorhersage mit der höchsten Wahrscheinlichkeit im Bild abgebildet ist.