我正在我的android项目中实现TensorFlowInferenceInterface。但是我发现无法解析方法'feed(java.lang.String,java.lang.reflect.Array,long,java.lang.long,java.lang.long ,?)错误。我该怎么解决?
import org.tensorflow.contrib.android.TensorFlowInferenceInterface;
.......
private TensorFlowInferenceInterface tensorFlowInference;
.......
tensorFlowInference.feed(inputName, imageNormalizedPixels,1L, imageSize, imageSize, COLOR_CHANNELS.toLong())
我无法实现TensorFlowInferenceInterface的方法,例如feed,run,fetch。
答案 0 :(得分:0)
我解决了一个类似的问题,该问题非常重视参数类型。
在我解决问题之前,我的pixelArray
是float[][]
,因为我认为它是一张图片。当我使用时:
inferenceInterface.feed(INPUTNAME, pixelArray, 1, HEIGHT, WIDTH, 1);
我知道了
无法解析方法'feed(java.lang.String,float [] [],int,int,int,int)'
然后我将pixelArray
设为float[]
,问题就消失了。
我以float
输入为例,请注意,方法feed是public void feed(String inputName, float[] src, long... dims)
。但是在您的代码中,COLOR_CHANNELS.toLong()
对应于“?” imageNormalizedPixels
与java.lang.reflect.Array
相对应。
我发现了关于java.lang.reflect.Array
的描述:“它基于多维数组创建数组,而一维数组只是特殊的实现。”
所以我认为您的imageNormalizedPixels
可能不是一维数组。