Carrega metadados do TFLite Model FlatBuffer.
O FlatBuffer do modelo do TFLite pode ser gerado usando o arquivo de esquema do modelo do TFLite.
Alguns modelos contêm um Flatbuffer de metadados TFLite, que registra mais informações sobre o que o modelo faz e como interpretá-lo. O Flatbuffer de metadados do TFLite pode ser gerado usando o arquivo de esquema de metadados do TFLite.
É permitido transmitir um modelo FlatBuffer sem metadados do TFLite. No entanto, invocar métodos que leem de metadados TFLite causará erros durante a execução.
Da mesma forma, é permitido passar um modelo FlatBuffer sem arquivos associados. No entanto, invocar métodos que leiam os arquivos associados causará erros no ambiente de execução.
Embora o modelo TFLite FlatBuffer ofereça suporte a vários subgráficos, o TFLite Interpreter oferece suporte apenas a
um único subgráfico até o momento. Consulte a instrução
sobre como especificar o subgráfico durante a conversão para mais informações. Portanto, MetadataExtractor
omite o índice de subgráfico como uma entrada nos próprios métodos.
Classes aninhadas
classe | MetadataExtractor.QuantizationParams | Parâmetros de quantização que correspondem à tabela, QuantizationParameters , no
arquivo de esquema
do modelo TFLite. |
Construtores públicos
Métodos públicos
InputStream |
getAssociatedFile(String fileName)
Recebe o arquivo associado compactado com o
fileName especificado. |
Set<String> |
getAssociatedFileNames()
Recebe os nomes dos arquivos associados.
|
int |
getInputTensorCount()
Recebe a contagem de tensores de entrada no modelo.
|
TensorMetadata |
getInputTensorMetadata(int inputIndex)
Recebe os metadados do tensor de entrada especificado por
inputIndex . |
MetadataExtractor.QuantizationParams |
getInputTensorQuantizationParams(int inputIndex)
Recebe os parâmetros de quantização para o tensor de entrada especificado por
inputIndex . |
int[] |
getInputTensorShape(int inputIndex)
Recebe o formato do tensor de entrada com
inputIndex . |
byte |
getInputTensorType(int inputIndex)
Recebe o
ERROR(/TensorType) do tensor de entrada com inputIndex . |
ModelMetadata |
getModelMetadata()
Recebe o gerenciador raiz dos metadados do modelo.
|
int |
getOutputTensorCount()
Recebe a contagem de tensores de saída no modelo.
|
TensorMetadata |
getOutputTensorMetadata(int outputIndex)
Recebe os metadados do tensor de saída especificado por
outputIndex . |
MetadataExtractor.QuantizationParams |
getOutputTensorQuantizationParams(int outputIndex)
Recebe os parâmetros de quantização para o tensor de saída especificado por
outputIndex . |
int[] |
getOutputTensorShape(int outputIndex)
Recebe o formato do tensor de saída com
outputIndex . |
byte |
getOutputTensorType(int outputIndex)
Recebe o
ERROR(/TensorType) do tensor de saída com outputIndex . |
boolean |
Função hasMetadata()
Retorna
true se o modelo tiver metadados. |
booleano final |
isMinimumParserVersionSatisfied()
Retornará
true se a versão mínima do analisador exigida pelo flatbuffer de metadados fornecido for anterior ou igual à versão do analisador de metadados em que essa biblioteca MetadataExtractor está
confiante. |
Métodos herdados
Construtores públicos
public MetadataExtractor (buffer ByteBuffer)
Cria um MetadataExtractor
com o modelo TFLite FlatBuffer.
Parâmetros
buffer | o modelo TFLite FlatBuffer |
---|
Gera
IllegalArgumentException | se o número de tensores de entrada ou saída no modelo não corresponder ao número nos metadados |
---|---|
IOException | se ocorrer um erro ao ler o modelo como um arquivo ZIP |
Métodos públicos
public InputStream getAssociatedFile (String fileName)
Recebe o arquivo associado compactado com o fileName
especificado.
Parâmetros
fileName | o nome do arquivo associado |
---|
Retorna
- o stream de entrada bruto que contém o arquivo especificado
Gera
IllegalStateException | se o modelo não for um arquivo ZIP |
---|---|
IllegalArgumentException | se o arquivo especificado não existir no modelo |
public Set<String> getAssociatedFileNames ()
Recebe os nomes dos arquivos associados.
Retorna
- os nomes dos arquivos associados
Gera
IllegalStateException | se o modelo não for um arquivo ZIP |
---|
public int getInputTensorCount ()
Recebe a contagem de tensores de entrada no modelo.
público TensorMetadata getInputTensorMetadata (int inputIndex)
Recebe os metadados do tensor de entrada especificado por inputIndex
.
Parâmetros
inputIndex | o índice do tensor de entrada desejado |
---|
Gera
IllegalStateException | se o modelo não contiver metadados de modelo |
---|
public MetadataExtractor.QuantizationParams getInputTensorQuantizationParams (int inputIndex)
Recebe os parâmetros de quantização para o tensor de entrada especificado por inputIndex
.
Parâmetros
inputIndex | o índice do tensor de entrada desejado |
---|
public int[] getInputTensorShape (int inputIndex)
Recebe o formato do tensor de entrada com inputIndex
.
Parâmetros
inputIndex | o índice do tensor de entrada desejado |
---|
public byte getInputTensorType (int inputIndex)
Recebe o ERROR(/TensorType)
do tensor de entrada com inputIndex
.
Parâmetros
inputIndex | o índice do tensor de entrada desejado |
---|
public ModelMetadata getModelMetadata ()
Recebe o gerenciador raiz dos metadados do modelo.
Gera
IllegalStateException | se o modelo não contiver metadados de modelo |
---|
public int getOutputTensorCount ()
Recebe a contagem de tensores de saída no modelo.
public TensorMetadata getOutputTensorMetadata (int outputIndex)
Recebe os metadados do tensor de saída especificado por outputIndex
.
Parâmetros
outputIndex | o índice do tensor de saída desejado |
---|
Gera
IllegalStateException | se o modelo não contiver metadados de modelo |
---|
public MetadataExtractor.QuantizationParams getOutputTensorQuantizationParams (int outputIndex)
Recebe os parâmetros de quantização para o tensor de saída especificado por outputIndex
.
Parâmetros
outputIndex | o índice do tensor de saída desejado |
---|
public int[] getOutputTensorShape (int outputIndex)
Recebe o formato do tensor de saída com outputIndex
.
Parâmetros
outputIndex | o índice do tensor de saída desejado |
---|
public byte getOutputTensorType (int outputIndex)
Recebe o ERROR(/TensorType)
do tensor de saída com outputIndex
.
Parâmetros
outputIndex | o índice do tensor de saída desejado |
---|
public booleano hasMetadata ()
Retorna true
se o modelo tiver metadados. Caso contrário, retorna false
.
public final booleano isMinimumParserVersionSatisfied ()
Retornará true
se a versão mínima do analisador exigida pelo flatbuffer de metadados fornecido for anterior ou igual à versão do analisador de metadados em que essa biblioteca MetadataExtractor está
confiante. Nesse caso, todos os campos dos metadados podem ser analisados corretamente com a biblioteca extratora
de metadados. Caso contrário, retorna false
.
Por exemplo, suponha que a versão do analisador de metadados seja 1.14.1
,
- ele retornará
true
se a versão mínima necessária do analisador for a mesma ou mais antiga, como1.14.1
ou1.14.0
. A versão nula precede todas as versões numéricas, porque alguns flatbuffers de metadados são gerados antes da primeira versão com controle de versão;
- ela retornará
false
se a versão mínima necessária do analisador for mais recente, como1.14.2
.