MetadataExtractor

classe publique MetadataExtractor

Charge les métadonnées à partir de TFLite Model FlatBuffer.

TFLite Model FlatBuffer peut être généré à l’aide du fichier de schéma TFLite Model.

Certains modèles contiennent un tampon plat de métadonnées TFLite, qui enregistre plus d'informations sur ce que fait le modèle et sur la manière de l'interpréter. Le Flatbuffer de métadonnées TFLite peut être généré à l’aide du fichier de schéma de métadonnées TFLite.

Il est permis de transmettre un modèle FlatBuffer sans métadonnées TFLite. Cependant, l’appel de méthodes lisant les métadonnées TFLite entraînera des erreurs d’exécution.

De même, il est permis de passer un modèle FlatBuffer sans fichiers associés. Cependant, l'appel de méthodes qui lisent les fichiers associés entraînera des erreurs d'exécution.

Bien que le modèle TFLite FlatBuffer prenne en charge plusieurs sous-graphes, TFLite Interpreter ne prend en charge jusqu'à présent qu'un seul sous-graphe. Voir les instructions sur la façon de spécifier un sous-graphe lors de la conversion pour plus d'informations. Par conséquent, MetadataExtractor omet l’index de sous-graphe comme entrée dans ses méthodes.

Classes imbriquées

classe MetadataExtractor.QuantizationParams Paramètres de quantification qui correspondent à 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

Flux d'entrée
getAssociatedFile ( String nomfichier)
Obtient le fichier associé compressé avec le fileName spécifié.
Définir < Chaîne >
getAssociatedFileNames ()
Obtient les noms de fichiers des fichiers associés.
int
getInputTensorCount ()
Obtient le nombre de tenseurs d'entrée dans le modèle.
TensorMétadonnées
getInputTensorMetadata (int inputIndex)
Obtient les métadonnées du tenseur d'entrée spécifié par inputIndex .
MetadataExtractor.QuantizationParams
getInputTensorQuantizationParams (int inputIndex)
Obtient les paramètres de quantification pour le tenseur d'entrée spécifié par inputIndex .
int[]
getInputTensorShape (int inputIndex)
Obtient la forme du tenseur d'entrée avec inputIndex .
octet
getInputTensorType (int inputIndex)
Obtient l' ERROR(/TensorType) du tenseur d'entrée avec inputIndex .
Métadonnées du modèle
getModelMetadata ()
Obtient le gestionnaire racine des métadonnées du modèle.
int
getOutputTensorCount ()
Obtient le nombre de tenseurs de sortie dans le modèle.
TensorMétadonnées
getOutputTensorMetadata (int outputIndex)
Obtient les métadonnées du tenseur de sortie spécifié par outputIndex .
MetadataExtractor.QuantizationParams
getOutputTensorQuantizationParams (int outputIndex)
Obtient les paramètres de quantification pour le tenseur de sortie spécifié par outputIndex .
int[]
getOutputTensorShape (int outputIndex)
Obtient la forme du tenseur de sortie avec outputIndex .
octet
getOutputTensorType (int outputIndex)
Obtient l' ERROR(/TensorType) du tenseur de sortie avec outputIndex .
booléen
hasMetadata ()
Renvoie true si le modèle contient des métadonnées.
booléen final
isMinimumParserVersionSatisfied ()
Renvoie true si la version minimale de l'analyseur requise par le tampon plat de métadonnées donné précède ou est é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
tampon le modèle TFLite FlatBuffer
Jetés
Exception d'argument illégal si le nombre de tenseurs 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)

Obtient le fichier associé compressé avec le fileName spécifié.

Paramètres
nom de fichier le nom du fichier associé
Retour
  • le flux d'entrée brut contenant le fichier spécifié
Jetés
IllegalStateException si le modèle n'est pas un fichier zip
Exception d'argument illégal si le fichier spécifié n'existe pas dans le modèle

public Set <String> getAssociatedFileNames ()

Obtient les noms de fichiers des fichiers associés.

Retour
  • les noms de fichiers des fichiers associés
Jetés
IllegalStateException si le modèle n'est pas un fichier zip

public int getInputTensorCount ()

Obtient le nombre de tenseurs d'entrée dans le modèle.

public TensorMetadata getInputTensorMetadata (int inputIndex)

Obtient les métadonnées du tenseur d'entrée spécifié par inputIndex .

Paramètres
Indice d'entrée l'indice du tenseur d'entrée souhaité
Jetés
IllegalStateException si ce modèle ne contient pas de métadonnées de modèle

public MetadataExtractor.QuantizationParams getInputTensorQuantizationParams (int inputIndex)

Obtient les paramètres de quantification pour le tenseur d'entrée spécifié par inputIndex .

Paramètres
Indice d'entrée l'indice du tenseur d'entrée souhaité

public int[] getInputTensorShape (int inputIndex)

Obtient la forme du tenseur d'entrée avec inputIndex .

Paramètres
Indice d'entrée l'indice du tenseur d'entrée souhaité

octet public getInputTensorType (int inputIndex)

Obtient l' ERROR(/TensorType) du tenseur d'entrée avec inputIndex .

Paramètres
Indice d'entrée l'indice du tenseur d'entrée souhaité

public ModelMetadata getModelMetadata ()

Obtient le gestionnaire racine des métadonnées du modèle.

Jetés
IllegalStateException si ce modèle ne contient pas de métadonnées de modèle

public int getOutputTensorCount ()

Obtient le nombre de tenseurs de sortie dans le modèle.

public TensorMetadata getOutputTensorMetadata (int outputIndex)

Obtient les métadonnées du tenseur de sortie spécifié par outputIndex .

Paramètres
Indice de sortie l'indice du tenseur de sortie souhaité
Jetés
IllegalStateException si ce modèle ne contient pas de métadonnées de modèle

public MetadataExtractor.QuantizationParams getOutputTensorQuantizationParams (int outputIndex)

Obtient les paramètres de quantification pour le tenseur de sortie spécifié par outputIndex .

Paramètres
Indice de sortie l'indice du tenseur de sortie souhaité

public int[] getOutputTensorShape (int outputIndex)

Obtient la forme du tenseur de sortie avec outputIndex .

Paramètres
Indice de sortie l'indice du tenseur de sortie souhaité

octet public getOutputTensorType (int outputIndex)

Obtient l' ERROR(/TensorType) du tenseur de sortie avec outputIndex .

Paramètres
Indice de sortie l'indice du tenseur de sortie souhaité

public booléen hasMetadata ()

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

public final booléen isMinimumParserVersionSatisfied ()

Renvoie true si la version minimale de l'analyseur requise par le tampon plat de métadonnées donné précède ou est é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'extraction de métadonnées. Sinon, il renvoie false .

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

  • il renvoie true , si la version minimale requise de l'analyseur est la même ou plus ancienne, comme 1.14.1 ou 1.14.0 . La version nulle précè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 ;
  • il renvoie false , si la version minimale requise de l'analyseur est plus récente, comme 1.14.2 .