MetadataExtractor

clase pública MetadataExtractor

Carga metadatos desde FlatBuffer de modelo de TFLite.

El FlatBuffer del modelo de TFLite se puede generar con el archivo de esquema del modelo de TFLite.

Algunos modelos contienen un búfer de metadatos de TFLite, que registra más información sobre lo que hace el modelo y cómo interpretarlo. El búfer plano de metadatos de TFLite se puede generar con el archivo de esquema de metadatos de TFLite.

Se puede pasar un modelo FlatBuffer sin metadatos de TFLite. Sin embargo, invocar métodos que leen desde los metadatos de TFLite generará errores de tiempo de ejecución.

Del mismo modo, se puede pasar un FlatBuffer de modelo sin archivos asociados. Sin embargo, invocar métodos que leen los archivos asociados causará errores de tiempo de ejecución.

Aunque el modelo de TFLite FlatBuffer admite varios subgrafos, el intérprete de TFLite solo es compatible con un subgrafo. Consulta las instrucciones para especificar el subgrafo durante la conversión a fin de obtener más información. Por lo tanto, MetadataExtractor omite el índice del subgrafo como una entrada en sus métodos.

Categorías anidadas

clase MetadataExtractor.QuantizationParams Parámetros de cuantización que corresponden a la tabla, QuantizationParameters, en el archivo de esquema del modelo de TFLite. 

Constructores públicos

MetadataExtractor(búfer ByteBuffer)
Crea un MetadataExtractor con FlatBuffer del modelo de TFLite.

Métodos públicos

InputStream
getAssociatedFile(nombredelarchivo Cadena)
Obtiene el archivo asociado empaquetado con el fileName especificado.
Establecer<Cadena>
getAssociatedFileNames()
Obtiene los nombres de los archivos asociados.
int
getInputTensorCount().
Obtiene el recuento de los tensores de entrada en el modelo.
TensorMetadata
getInputTensorMetadata(int inputIndex)
Obtiene los metadatos del tensor de entrada especificado por inputIndex.
MetadataExtractor.QuantizationParams
getInputTensorQuantizationParams(int inputIndex)
Obtiene los parámetros de cuantización para el tensor de entrada especificado por inputIndex.
int[]
getInputTensorShape(int inputIndex)
Obtiene la forma del tensor de entrada con inputIndex.
byte
getInputTensorType(int inputIndex)
Obtiene el ERROR(/TensorType) del tensor de entrada con inputIndex.
ModelMetadata
getModelMetadata().
Obtiene el controlador raíz para los metadatos del modelo.
int
getOutputTensorCount()
Obtiene el recuento de los tensores de salida en el modelo.
TensorMetadata
getOutputTensorMetadata(int outputIndex)
Obtiene los metadatos del tensor de salida especificado por outputIndex.
MetadataExtractor.QuantizationParams
getOutputTensorQuantizationParams(int outputIndex)
Obtiene los parámetros de cuantización para el tensor de salida especificado por outputIndex.
int[]
getOutputTensorShape(int outputIndex)
Obtiene la forma del tensor de salida con outputIndex.
byte
getOutputTensorType(int outputIndex)
Obtiene el ERROR(/TensorType) del tensor de salida con outputIndex.
boolean
hasMetadata()
Muestra true si el modelo tiene metadatos.
booleano final
isMinimumParserVersionSatisfied()
Muestra true si la versión mínima del analizador requerida por el búfer plano de metadatos determinado es anterior o igual a la versión del analizador de metadatos que utiliza esta biblioteca de MetadataExtractor.

Métodos heredados

Constructores públicos

public MetadataExtractor (búfer ByteBuffer)

Crea un MetadataExtractor con FlatBuffer del modelo de TFLite.

Parámetros
búfer el FlatBuffer del modelo de TFLite
Arroja
IllegalArgumentException Si la cantidad de tensores de entrada o salida en el modelo no coincide con la de los metadatos
IOException Si se produce un error al leer el modelo como un archivo ZIP

Métodos públicos

public InputStream getAssociatedFile (String fileName)

Obtiene el archivo asociado empaquetado con el fileName especificado.

Parámetros
fileName el nombre del archivo asociado
Devuelve
  • la transmisión de entrada sin procesar que contiene el archivo especificado
Arroja
IllegalStateException Si el modelo no es un archivo ZIP
IllegalArgumentException si el archivo especificado no existe en el modelo

public Set<String> getAssociatedFileNames ()

Obtiene los nombres de los archivos asociados.

Devuelve
  • los nombres de los archivos asociados
Arroja
IllegalStateException Si el modelo no es un archivo ZIP

public int getInputTensorCount ()

Obtiene el recuento de los tensores de entrada en el modelo.

public TensorMetadata getInputTensorMetadata (int inputIndex)

Obtiene los metadatos del tensor de entrada especificado por inputIndex.

Parámetros
inputIndex el índice del tensor de entrada deseado
Arroja
IllegalStateException si este modelo no contiene metadatos del modelo

public MetadataExtractor.QuantizationParams getInputTensorQuantizationParams (int inputIndex)

Obtiene los parámetros de cuantización para el tensor de entrada especificado por inputIndex.

Parámetros
inputIndex el índice del tensor de entrada deseado

public int[] getInputTensorShape (int inputIndex)

Obtiene la forma del tensor de entrada con inputIndex.

Parámetros
inputIndex el índice del tensor de entrada deseado

public byte getInputTensorType (int inputIndex)

Obtiene el ERROR(/TensorType) del tensor de entrada con inputIndex.

Parámetros
inputIndex el índice del tensor de entrada deseado

public ModelMetadata getModelMetadata ()

Obtiene el controlador raíz para los metadatos del modelo.

Arroja
IllegalStateException si este modelo no contiene metadatos del modelo

public int getOutputTensorCount ()

Obtiene el recuento de los tensores de salida en el modelo.

public TensorMetadata getOutputTensorMetadata (int outputIndex)

Obtiene los metadatos del tensor de salida especificado por outputIndex.

Parámetros
outputIndex el índice del tensor de salida deseado
Arroja
IllegalStateException si este modelo no contiene metadatos del modelo

public MetadataExtractor.QuantizationParams getOutputTensorQuantizationParams (int outputIndex)

Obtiene los parámetros de cuantización para el tensor de salida especificado por outputIndex.

Parámetros
outputIndex el índice del tensor de salida deseado

public int[] getOutputTensorShape (int outputIndex)

Obtiene la forma del tensor de salida con outputIndex.

Parámetros
outputIndex el índice del tensor de salida deseado

public byte getOutputTensorType (int outputIndex)

Obtiene el ERROR(/TensorType) del tensor de salida con outputIndex.

Parámetros
outputIndex el índice del tensor de salida deseado

public boolean hasMetadata ()

Muestra true si el modelo tiene metadatos. De lo contrario, muestra false.

público final booleano isMinimumParserVersionSatisfied ()

Muestra true si la versión mínima del analizador requerida por el búfer plano de metadatos determinado es anterior o igual a la versión del analizador de metadatos que utiliza esta biblioteca de MetadataExtractor. En este caso, todos los campos de los metadatos se pueden analizar correctamente con esta biblioteca de extracción de metadatos. De lo contrario, muestra false.

Por ejemplo, supongamos que la versión del analizador de metadatos subyacente es 1.14.1.

  • muestra true, si la versión mínima requerida del analizador es igual o anterior, como 1.14.1 o 1.14.0. La versión nula precede a todas las versiones numéricas, ya que algunos búferes planos de metadatos se generan antes de la primera versión con versión;
  • muestra false, si la versión mínima requerida del analizador es más reciente, como 1.14.2.