你解决过这个问题吗?我遇到了同样的问题,找不到解决办法
【讨论】:
无法从形状为 [1, 10] 的 TensorFlowLite 张量 (StatefulPartitionedCall:1) 复制到形状为 [1, 10, 4] 的 Java 对象答案
Cannot copy from a TensorFlowLite tensor (StatefulPartitionedCall:1) with shape [1, 10] to a Java object with shape [1, 10, 4]无法从形状为 [1, 10] 的 TensorFlowLite 张量 (StatefulPartitionedCall:1) 复制到形状为 [1, 10, 4] 的 Java 对象我正在使用 Tensorflow 和 Flutter 开发一种手语实时对象检测。我通过使用 ssd_mobilenet_v2_fpnlite_640x640_coco17_tpu-8 跟随 tutorial 训练了模型。我已经使用 export_tflite_graph_tf2.py 将模型从 saved_model 转换为 tflite,这里的 comment 用于 tflite 转换。我使用flutter tflite插件实现了模型,当我运行应用程序时,它显示了这个错误。
Caused by: java.lang.IllegalArgumentException: Cannot copy from a TensorFlowLite tensor (StatefulPartitionedCall:1) with shape [1, 10] to a Java object with shape [1, 10, 4].
E/AndroidRuntime( 5724): at org.tensorflow.lite.TensorImpl.throwIfDstShapeIsIncompatible(TensorImpl.java:456)
E/AndroidRuntime( 5724): at org.tensorflow.lite.TensorImpl.copyTo(TensorImpl.java:215)
E/AndroidRuntime( 5724): at org.tensorflow.lite.NativeInterpreterWrapper.run(NativeInterpreterWrapper.java:250)
E/AndroidRuntime( 5724): at org.tensorflow.lite.InterpreterImpl.runForMultipleInputsOutputs(InterpreterImpl.java:135)
E/AndroidRuntime( 5724): at org.tensorflow.lite.Interpreter.runForMultipleInputsOutputs(Interpreter.java:80)
E/AndroidRuntime( 5724): at sq.flutter.tflite.TflitePlugin$RunSSDMobileNet.runTflite(TflitePlugin.java:674)
E/AndroidRuntime( 5724): at sq.flutter.tflite.TflitePlugin$TfliteTask.doInBackground(TflitePlugin.java:471)
E/AndroidRuntime( 5724): at sq.flutter.tflite.TflitePlugin$TfliteTask.doInBackground(TflitePlugin.java:445)
E/AndroidRuntime( 5724): at android.os.AsyncTask$2.call(AsyncTask.java:333)
E/AndroidRuntime( 5724): at java.util.concurrent.FutureTask.run(FutureTask.java:266)
E/AndroidRuntime( 5724): ... 4 more
一个星期以来我一直遇到同样的问题,我真的需要解决这个问题。我还没有找到任何可以修复它的东西。其他人提供的解决方案是更改输入张量,我不知道如何更改。
如果有人需要模型,请发表评论。我将使用 tflite 模型的链接更新问题。
【问题讨论】:
标签: android flutter tensorflow
你解决过这个问题吗?我遇到了同样的问题,找不到解决办法
【讨论】: