Flutter 使用TFLITE插件将TFLITE自定义模型与颤振集成时遇到问题
我使用Keras构建了一个自定义模型,并将其转换为TFLITE模型。CNN模型的输入形状是60*60*3,因此当数据类型是int时,所需的缓冲区将是60*60*3*4=43200。现在,在使用功能将模型与颤振集成时-Flutter 使用TFLITE插件将TFLITE自定义模型与颤振集成时遇到问题,flutter,dart,tensorflow-lite,Flutter,Dart,Tensorflow Lite,我使用Keras构建了一个自定义模型,并将其转换为TFLITE模型。CNN模型的输入形状是60*60*3,因此当数据类型是int时,所需的缓冲区将是60*60*3*4=43200。现在,在使用功能将模型与颤振集成时- recognitions = await Tflite.runModelOnImage( path: widget.imagePath, imageMean: 127.5, imageStd: 127.5,
recognitions = await Tflite.runModelOnImage(
path: widget.imagePath,
imageMean: 127.5,
imageStd: 127.5,
numResults: 2,
threshold: 0.1,
asynch: true);
print(recognitions);
}
我收到这个错误-
E/AndroidRuntime(21412): Caused by: java.lang.IllegalArgumentException: Cannot convert between a TensorFlowLite buffer with 21600 bytes and a Java Buffer with 43200 bytes.
E/AndroidRuntime(21412): at org.tensorflow.lite.Tensor.throwIfShapeIsIncompatible(Tensor.java:332)
E/AndroidRuntime(21412): at org.tensorflow.lite.Tensor.throwIfDataIsIncompatible(Tensor.java:305)
E/AndroidRuntime(21412): at org.tensorflow.lite.Tensor.setTo(Tensor.java:123)
E/AndroidRuntime(21412): at org.tensorflow.lite.NativeInterpreterWrapper.run(NativeInterpreterWrapper.java:150)
E/AndroidRuntime(21412): at org.tensorflow.lite.Interpreter.runForMultipleInputsOutputs(Interpreter.java:311)
E/AndroidRuntime(21412): at org.tensorflow.lite.Interpreter.run(Interpreter.java:272)
E/AndroidRuntime(21412): at sq.flutter.tflite.TflitePlugin$RunModelOnImage.runTflite(TflitePlugin.java:452)
E/AndroidRuntime(21412): at sq.flutter.tflite.TflitePlugin$TfliteTask.doInBackground(TflitePlugin.java:419)
E/AndroidRuntime(21412): at sq.flutter.tflite.TflitePlugin$TfliteTask.doInBackground(TflitePlugin.java:393)
E/AndroidRuntime(21412): at android.os.AsyncTask$2.call(AsyncTask.java:333)
E/AndroidRuntime(21412): at java.util.concurrent.FutureTask.run(FutureTask.java:266)
E/AndroidRuntime(21412): ... 4 more
关于如何解决这个错误有什么建议吗