![](/img/trans.png)
[英]ios / CoreML - The input type is MultiArray when keras model is converted to CoreML
[英]CoreML model: Convert imageType model input to multiArray
使用 PyTorch,我訓練了一個簡單的多類分類器,我想將其轉換為CoreML
模型格式。 它已轉換,但有一個問題。
我已經進行了非常詳盡的搜索,但與 mlmodel 的輸入有關的最常見問題只是關於如何將 mlmodel 的輸入格式從MLMultiArray 更改為 UIImage因為它們必須處理圖像。 但是,如果我的模型需要 UIImage 作為輸入,而我有多數組類型的數據,我該如何更改模型的輸入以使其需要多數組數據?
轉換后我得到的模型輸入規范:
input {
name: "input"
type {
imageType {
width: 3
height: 150
colorSpace: GRAYSCALE
}
}
}
我想要的模型輸入規范:
input {
name: "input"
type {
multiArrayType {
shape: 3
shape: 1
shape: 150
dataType: DOUBLE
}
}
}
任何幫助將不勝感激。 謝謝!
通常,當您轉換模型時,您會得到一個 MLMultiArray,除非您指定要將其作為圖像。 不確定您是如何轉換模型的,但您可能會說您不希望輸入是圖像(即不要為轉換器指定image_input_names
參數)。
如果您無權訪問原始模型,您可以更改 mlmodel 文件執行以下操作(可能有錯別字):
import coremltools
mlmodel = coremltools.models.MLModel("YourModel.mlmodel")
spec = mlmodel._spec
spec.description.input[0].type.multiArrayType.shape.extend([3, 1, 150])
coremltools.util.save_spec(spec, "YourNewModel.mlmodel")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.