我已经建立了一个自定义的tflite模型,它是从Keras hdf5模型转换而来的。但是,当使用转换后的模型时,在安卓系统中进行预测时,应用程序会崩溃,但当我使用从互联网上下载的移动网络tflite模型时,应用程序工作正常。我需要做什么改变?问题是在模型转换中还是在应用程序中?
我已经尝试使用tflite软件包的内置功能,支持移动网和tflite给出的其他各种网,我改成了自定义建立模型预测功能,并保持转换后的文件模型。在第一种情况下,它工作,但在第二种情况下,它没有。
Future prediction(File image) async{
_recognitions= null;
var recognitions = await Tflite.runModelOnImage(
path: image.path, // required
imageMean: 0.0, // defaults to 117.0
imageStd: 255.0, // defaults to 1.0
numResults: 2, // defaults to 5
threshold: 0.2, // defaults to 0.1
asynch: true // defaults to true
// var recognitions = await Tflite.detectObjectOnImage(
// path: image.path,
// model: "SSDMobileNet",
// imageMean: 127.5,
// threshold: 0.4,
// numResultsPerClass: 2,
// asynch: true
// );
print(recognitions);
setState(() {
_recognitions=recognitions;
我已经在资产中添加了2个模型。
assets:
- images/webdoctor.png
- assets/detect.tflite
- assets/labelmap.txt
- assets/labels.txt
- assets/modelPneumonia.tflite
预期的结果将是自定义模型的工作,而不会出现应用程序崩溃。