MetadataExtractor

Classe publique MetadataExtractor

Charge les métadonnées à partir du modèle TFLite FlatBuffer.

Le FlatBuffer du modèle TFLite peut être généré à l'aide du fichier de schéma du modèle TFLite.

Certains modèles contiennent un FlatBuffer de métadonnées TFLite qui enregistre davantage d'informations sur la fonction du modèle et sur la façon de l'interpréter. TFLite Metadata Flatbuffer peut être généré à l'aide du fichier de schéma de métadonnées TFLite.

Il est autorisé de transmettre un modèle FlatBuffer sans métadonnées TFLite. Toutefois, l'appel de méthodes qui lisent des métadonnées TFLite entraîne des erreurs d'exécution.

De même, il est possible de transmettre un modèle FlatBuffer sans fichiers associés. Toutefois, le fait d'appeler des méthodes qui lisent les fichiers associés entraîne des erreurs d'exécution.

Bien que le modèle TFLite FlatBuffer accepte plusieurs sous-graphiques, l'interpréteur TFLite n'accepte qu'un seul sous-graphe jusqu'à présent. Pour en savoir plus, consultez les instructions sur la spécification du sous-graphique lors de la conversion. Par conséquent, MetadataExtractor omet l'index de sous-graphique en tant qu'entrée dans ses méthodes.

Classes imbriquées

classe MetadataExtractor.QuantizationParams Paramètres de quantification correspondant à la table QuantizationParameters dans le fichier de schéma du modèle TFLite .

Constructeurs publics

MetadataExtractor(tampon ByteBuffer)
Crée un MetadataExtractor avec le modèle TFLite FlatBuffer.

Méthodes publiques

InputStream
getAssociatedFile(String fileName)
Récupère le fichier empaqueté associé au fileName spécifié.
Définir<String>
getAssociatedFileNames()
Récupère les noms des fichiers associés.
int
getInputTensorCount()
Récupère le nombre de Tensors d'entrée dans le modèle.
TensorMetadata
getInputTensorMetadata(int inputIndex)
Récupère les métadonnées du Tensor d'entrée spécifié par inputIndex.
MetadataExtractor.QuantizationParams
getInputTensorQuantizationParams(int inputIndex)
Récupère les paramètres de quantification du Tensor d'entrée spécifié par inputIndex.
int[]
getInputTensorShape(int inputIndex)
Récupère la forme du Tensor d'entrée avec inputIndex.
octet
getInputTensorType(int inputIndex)
Récupère la valeur ERROR(/TensorType) du Tensor d'entrée avec inputIndex.
ModelMetadata
getModelMetadata()
Récupère le gestionnaire racine des métadonnées du modèle.
int
getOutputTensorCount()
Récupère le nombre de Tensors de sortie dans le modèle.
TensorMetadata
getOutputTensorMetadata(int outputIndex)
Récupère les métadonnées du Tensor de sortie spécifié par outputIndex.
MetadataExtractor.QuantizationParams
getOutputTensorQuantizationParams(int outputIndex)
Récupère les paramètres de quantification du Tensor de sortie spécifié par outputIndex.
int[]
getOutputTensorShape(int outputIndex)
Récupère la forme du Tensor de sortie avec outputIndex.
octet
getOutputTensorType(int outputIndex)
Récupère la valeur ERROR(/TensorType) du Tensor de sortie avec outputIndex.
boolean
hasMetadata()
Renvoie la valeur true si le modèle comporte des métadonnées.
booléen final
isMinimumParserVersionSatisfied()
Renvoie true si la version minimale de l'analyseur requise par le tampon de métadonnées de métadonnées donné est antérieure ou égale à la version de l'analyseur de métadonnées sur laquelle s'appuie cette bibliothèque MetadataExtractor.

Méthodes héritées

Constructeurs publics

public MetadataExtractor (tampon ByteBuffer)

Crée un MetadataExtractor avec le modèle TFLite FlatBuffer.

Paramètres
mise en mémoire tampon le modèle TFLite FlatBuffer
Génère
IllegalArgumentException si le nombre de Tensors d'entrée ou de sortie dans le modèle ne correspond pas à celui des métadonnées
IOException si une erreur se produit lors de la lecture du modèle sous forme de fichier ZIP

Méthodes publiques

public InputStream getAssociatedFile (String fileName)

Récupère le fichier empaqueté associé au fileName spécifié.

Paramètres
fileName le nom du fichier associé
Renvoie
  • le flux d'entrée brut contenant le fichier spécifié
Génère
IllegalStateException Si le modèle n'est pas un fichier ZIP
IllegalArgumentException si le fichier spécifié n'existe pas dans le modèle

public Set<String> getAssociatedFileNames ()

Récupère les noms des fichiers associés.

Renvoie
  • les noms des fichiers associés
Génère
IllegalStateException Si le modèle n'est pas un fichier ZIP

public int getInputTensorCount ()

Récupère le nombre de Tensors d'entrée dans le modèle.

public TensorMetadata getInputTensorMetadata (int inputIndex)

Récupère les métadonnées du Tensor d'entrée spécifié par inputIndex.

Paramètres
inputIndex L'index du Tensor d'entrée souhaité
Génère
IllegalStateException si ce modèle ne contient pas de métadonnées de modèle

public MetadataExtractor.QuantizationParams getInputTensorQuantizationParams (int inputIndex)

Récupère les paramètres de quantification du Tensor d'entrée spécifié par inputIndex.

Paramètres
inputIndex L'index du Tensor d'entrée souhaité

public int[] getInputTensorShape (int inputIndex)

Récupère la forme du Tensor d'entrée avec inputIndex.

Paramètres
inputIndex L'index du Tensor d'entrée souhaité

public octet getInputTensorType (int inputIndex)

Récupère la valeur ERROR(/TensorType) du Tensor d'entrée avec inputIndex.

Paramètres
inputIndex L'index du Tensor d'entrée souhaité

public ModelMetadata getModelMetadata ()

Récupère le gestionnaire racine des métadonnées du modèle.

Génère
IllegalStateException si ce modèle ne contient pas de métadonnées de modèle

public int getOutputTensorCount ()

Récupère le nombre de Tensors de sortie dans le modèle.

public TensorMetadata getOutputTensorMetadata (int outputIndex)

Récupère les métadonnées du Tensor de sortie spécifié par outputIndex.

Paramètres
outputIndex L'index du Tensor de sortie souhaité
Génère
IllegalStateException si ce modèle ne contient pas de métadonnées de modèle

public MetadataExtractor.QuantizationParams getOutputTensorQuantizationParams (int outputIndex)

Récupère les paramètres de quantification du Tensor de sortie spécifié par outputIndex.

Paramètres
outputIndex L'index du Tensor de sortie souhaité

public int[] getOutputTensorShape (int outputIndex)

Récupère la forme du Tensor de sortie avec outputIndex.

Paramètres
outputIndex L'index du Tensor de sortie souhaité

public octet getOutputTensorType (int outputIndex)

Récupère la valeur ERROR(/TensorType) du Tensor de sortie avec outputIndex.

Paramètres
outputIndex L'index du Tensor de sortie souhaité

public boolean hasMetadata ()

Renvoie la valeur true si le modèle comporte des métadonnées. Sinon, renvoie false.

public final boolean isMinimumParserVersionSatisfied ()

Renvoie true si la version minimale de l'analyseur requise par le tampon de métadonnées de métadonnées donné est antérieure ou égale à la version de l'analyseur de métadonnées sur laquelle s'appuie cette bibliothèque MetadataExtractor. Dans ce cas, tous les champs des métadonnées peuvent être analysés correctement avec cette bibliothèque d'extracteurs de métadonnées. Sinon, elle renvoie false.

Par exemple, supposons que la version de l'analyseur de métadonnées sous-jacente soit 1.14.1,

  • elle renvoie true, si la version d'analyseur minimale requise est identique ou antérieure, par exemple 1.14.1 ou 1.14.0. La version nulle est précédée de toutes les versions numériques, car certains tampons plats de métadonnées sont générés avant la première version versionnée.
  • Elle renvoie false si la version minimale de l'analyseur requise est plus récente (par exemple, 1.14.2).