gpt4 book ai didi

Java 类型不兼容错误

转载 作者:太空宇宙 更新时间:2023-11-04 10:41:13 25 4
gpt4 key购买 nike

以下代码是 java 程序的一部分,用于使用 Tensorflow 库对 inception v3 模型进行预测。

private static float[] executeInceptionGraph(byte[] graphDef, Tensor image) {
try (Graph g = new Graph()) {
g.importGraphDef(graphDef);
try (Session s = new Session(g);
Tensor result = s.runner().feed("DecodeJpeg/contents", image).fetch("softmax").run().get(0)) {
final long[] rshape = result.shape();
if (result.numDimensions() != 2 || rshape[0] != 1)
{
throw new RuntimeException(
String.format(
"Expected model to produce a [1 N] shaped tensor where N is the number of labels, instead it produced one with shape %s",
Arrays.toString(rshape)));
}
int nlabels = (int) rshape[1];

return result.copyTo(new float[1][nlabels])[0];
}
}
}

但是返回语句显示错误:

incompatable types, required:float,found:Object.

我尝试将类型转换为 float[],但这给了我一个运行时错误 “线程“AWT-EventQueue-0”中的异常 java.lang.ClassCastException: [[F 无法转换为 [F”。

我从https://github.com/emara-geek/object-recognition-tensorflow下载了该程序

我正在使用 IntelliJ IDE。我应该改变什么?

最佳答案

您提供的代码与您所说复制的代码不匹配。源代码为:

return result.copyTo(new float[1][nlabels])[0];

它删除了一级数组...这解释了您所看到的错误。

关于Java 类型不兼容错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48968681/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com