Model

公用類別 Model

TFLite 模型的包裝函式類別與 TFLite 解譯器的包裝函式類別。

注意:Model 一次只能保存 1 個 TFLite 模型,且一律會保存 TFLite 解譯器執行個體來執行。

巢狀類別

類別 Model.Builder 此類別已淘汰。請使用 Model.createModel(Context, String, Options) 
列舉 Model.Device 用於執行分類的執行階段裝置類型。
類別 Model.Options 執行模型的選項。

公用方法

void
close()
靜態模型
createModel(結構定義內容、String modelPath、Model.Options 選項)
從資產載入模型,並使用指定的選項初始化 TFLite 解譯器。
靜態模型
createModel(背景資訊、String modelPath)
從資產中載入模型,並初始化 TFLite 解譯器。
MappedByteBuffer
getData()
傳回記憶體對應模型資料。
Tensor
getInputTensor(int inputIndex)
取得與輸入索引相關聯的 Tensor。
Tensor
getOutputTensor(int outputIndex)
取得與提供的輸出索引相關聯的 Tensor。
int[]
getOutputTensorShape(int outputIndex)
傳回輸出形狀。
字串
getPath()
傳回儲存在 Assets 中的模型檔案路徑。
void
run(Object[] input, Map<IntegerObject> 輸出)
針對多個輸入執行模型推論,並傳回多個輸出內容。

繼承的方法

公用方法

public void close ()

公開 靜態 模型 createModel (內容背景資訊、String modelPath、Model.Options 選項)

從資產載入模型,並使用指定的選項初始化 TFLite 解譯器。

參數
context 應用程式結構定義。
modelPath 模型檔案的路徑。
選項 執行模型的選項。
擲回
IOException 開啟模型檔案時發生任何例外狀況。
另請參閱

公開 靜態 模型 createModel (結構定義背景資訊、String modelPath)

從資產中載入模型,並初始化 TFLite 解譯器。

預設選項為:(1) CPU 裝置;(2) 一個執行緒。

參數
context 應用程式結構定義。
modelPath 模型檔案的路徑。
擲回
IOException 開啟模型檔案時發生任何例外狀況。

public MappedByteBuffer getData ()

傳回記憶體對應模型資料。

公開 Tensor getInputTensor (int inputIndex)

取得與輸入索引相關聯的 Tensor。

參數
inputIndex
擲回
IllegalStateException 則傳回空值。

公開 Tensor getOutputTensor (int outputIndex)

取得與提供的輸出索引相關聯的 Tensor。

參數
outputIndex
擲回
IllegalStateException 則傳回空值。

public int[] getOutputTensorShape (int outputIndex)

傳回輸出形狀。如果只有在建立圖形時才會確定輸出形狀,此項目就非常實用。

參數
outputIndex
擲回
IllegalStateException 則傳回空值。

public String getPath ()

傳回儲存在 Assets 中的模型檔案路徑。

public void run (Object[] 輸入, Map<IntegerObject> 輸出內容)

針對多個輸入執行模型推論,並傳回多個輸出內容。

參數
輸入來源 輸入資料的陣列。輸入內容的順序應與模型的輸入順序相同。每個輸入都可以是陣列或多維度陣列,或原始類型的 ByteBuffer (包括 int、浮點數、長和位元組)。ByteBuffer 是傳遞大型輸入資料的最佳方式,而字串類型則必須使用 (多維度) 陣列輸入路徑。使用 ByteBuffer 時,在模型推論完成前,其內容應維持不變。
輸出 將地圖輸出索引對應至輸出資料的多維陣列,或是原始類型的 ByteBuffer (包括 int、float、Long 和 byte)。只需要保留項目,即可使用輸出。