TFLite モデル FlatBuffer からメタデータを読み込みます。
TFLite モデル FlatBuffer は、 TFLite モデル スキーマ ファイルを使用して生成できます。
一部のモデルには TFLite メタデータ フラットバッファーが含まれており、モデルの動作とモデルの解釈方法に関する詳細情報が記録されます。 TFLite メタデータ フラットバッファは、TFLite メタデータ スキーマ ファイルを使用して生成できます。
TFLite メタデータなしでモデル FlatBuffer を渡すことができます。ただし、TFLite メタデータから読み取るメソッドを呼び出すと、ランタイム エラーが発生します。
同様に、関連ファイルなしでモデル FlatBuffer を渡すことができます。ただし、関連ファイルを読み取るメソッドを呼び出すと、実行時エラーが発生します。
TFLite モデルの FlatBuffer は複数のサブグラフをサポートしていますが、TFLite インタープリターは今のところ単一のサブグラフのみをサポートしています。詳細については、変換中にサブグラフを指定する方法の説明を参照してください。したがって、 MetadataExtractor
メソッドの入力としてサブグラフ インデックスを省略します。
ネストされたクラス
クラス | MetadataExtractor.QuantizationParams | TFLite モデル スキーマ ファイル内のテーブルQuantizationParameters に対応する量子化パラメーター。 |
パブリックコンストラクター
パブリックメソッド
入力ストリーム | |
<文字列>を設定します | getAssociatedFileNames () 関連付けられたファイルのファイル名を取得します。 |
整数 | getInputTensorCount () モデル内の入力テンソルの数を取得します。 |
テンソルメタデータ | getInputTensorMetadata (int inputIndex) inputIndex で指定された入力テンソルのメタデータを取得します。 |
MetadataExtractor.QuantizationParams | getInputTensorQuantizationParams (int inputIndex) inputIndex で指定された入力テンソルの量子化パラメータを取得します。 |
int[] | getInputTensorShape (int inputIndex) inputIndex を使用して入力テンソルの形状を取得します。 |
バイト | getInputTensorType (int inputIndex) inputIndex を使用して入力テンソルのERROR(/TensorType) を取得します。 |
モデルメタデータ | getModelMetadata () モデルメタデータのルートハンドラーを取得します。 |
整数 | getOutputTensorCount () モデル内の出力テンソルの数を取得します。 |
テンソルメタデータ | getOutputTensorMetadata (int OutputIndex) outputIndex で指定された出力テンソルのメタデータを取得します。 |
MetadataExtractor.QuantizationParams | getOutputTensorQuantizationParams (int OutputIndex) outputIndex で指定された出力テンソルの量子化パラメータを取得します。 |
int[] | getOutputTensorShape (int OutputIndex) outputIndex を使用して出力テンソルの形状を取得します。 |
バイト | getOutputTensorType (int OutputIndex) outputIndex を使用して出力テンソルのERROR(/TensorType) を取得します。 |
ブール値 | メタデータあり() モデルにメタデータがある場合は true を返します。 |
最終ブール値 | isMinimumParserVersionSatisfied () 指定されたメタデータ フラットバッファで必要なパーサーの最小バージョンが、この MetadataExtractor ライブラリが依存しているメタデータ パーサーのバージョンよりも前か、それと等しい場合は true を返します。 |
継承されたメソッド
パブリックコンストラクター
public MetadataExtractor ( ByteBufferバッファ)
TFLite モデル FlatBuffer を使用してMetadataExtractor
を作成します。
パラメーター
バッファ | TFLite モデル FlatBuffer |
---|
投げる
IllegalArgumentException | モデル内の入力または出力テンソルの数がメタデータ内の数と一致しない場合 |
---|---|
IO例外 | モデルを Zip ファイルとして読み取るときにエラーが発生した場合 |
パブリックメソッド
public InputStream getAssociatedFile ( String fileName)
指定されたfileName
を持つパックされた関連ファイルを取得します。
パラメーター
ファイル名 | 関連するファイルの名前 |
---|
戻り値
- 指定されたファイルを含む生の入力ストリーム
投げる
IllegalStateException | モデルが zip ファイルではない場合 |
---|---|
IllegalArgumentException | 指定されたファイルがモデルに存在しない場合 |
public int getInputTensorCount ()
モデル内の入力テンソルの数を取得します。
public TensorMetadata getInputTensorMetadata (int inputIndex)
inputIndex
で指定された入力テンソルのメタデータを取得します。
パラメーター
入力インデックス | 目的の入力テンソルのインデックス |
---|
投げる
IllegalStateException | このモデルにモデル メタデータが含まれていない場合 |
---|
public MetadataExtractor.QuantizationParams getInputTensorQuantizationParams (int inputIndex)
inputIndex
で指定された入力テンソルの量子化パラメータを取得します。
パラメーター
入力インデックス | 目的の入力テンソルのインデックス |
---|
public int[] getInputTensorShape (int inputIndex)
inputIndex
を使用して入力テンソルの形状を取得します。
パラメーター
入力インデックス | 目的の入力テンソルのインデックス |
---|
パブリック バイトgetInputTensorType (int inputIndex)
inputIndex
を使用して入力テンソルのERROR(/TensorType)
を取得します。
パラメーター
入力インデックス | 目的の入力テンソルのインデックス |
---|
public ModelMetadata getModelMetadata ()
モデルメタデータのルートハンドラーを取得します。
投げる
IllegalStateException | このモデルにモデル メタデータが含まれていない場合 |
---|
public int getOutputTensorCount ()
モデル内の出力テンソルの数を取得します。
public TensorMetadata getOutputTensorMetadata (int OutputIndex)
outputIndex
で指定された出力テンソルのメタデータを取得します。
パラメーター
出力インデックス | 目的の出力テンソルのインデックス |
---|
投げる
IllegalStateException | このモデルにモデル メタデータが含まれていない場合 |
---|
public MetadataExtractor.QuantizationParams getOutputTensorQuantizationParams (int OutputIndex)
outputIndex
で指定された出力テンソルの量子化パラメータを取得します。
パラメーター
出力インデックス | 目的の出力テンソルのインデックス |
---|
public int[] getOutputTensorShape (int OutputIndex)
outputIndex
を使用して出力テンソルの形状を取得します。
パラメーター
出力インデックス | 目的の出力テンソルのインデックス |
---|
パブリック バイトgetOutputTensorType (int OutputIndex)
outputIndex
を使用して出力テンソルのERROR(/TensorType)
を取得します。
パラメーター
出力インデックス | 目的の出力テンソルのインデックス |
---|
public boolean hasMetadata ()
モデルにメタデータがある場合はtrue
を返します。それ以外の場合は、 false
を返します。
public Final boolean isMinimumParserVersionSatisfied ()
指定されたメタデータ フラットバッファで必要なパーサーの最小バージョンが、この MetadataExtractor ライブラリが依存しているメタデータ パーサーのバージョンよりも前か、それと等しい場合はtrue
を返します。この場合、メタデータ内のすべてのフィールドは、このメタデータ抽出ライブラリを使用して正しく解析できます。それ以外の場合は、 false
を返します。
たとえば、基礎となるメタデータ パーサーのバージョンが1.14.1
であると仮定します。
- 必要なパーサーの最小バージョンが
1.14.1
や1.14.0
など、同じかそれより古い場合、true
を返します。一部のメタデータ フラットバッファは最初のバージョン付けされたリリースより前に生成されるため、Null バージョンはすべての数値バージョンよりも優先されます。 - 必要な最小パーサー バージョンが新しい場合 (
1.14.2
など)、false
を返します。