Tensorflow对象检测API索引超出界限

问题描述 投票:0回答:1

在运行Android TF Detect Demo并使用我重新训练的3类ssd_mobilenet_v1_coco模型时,我的TF检测Demo崩溃,给出了IndexOutOfBoundException,这是

12-26 17:53:13.931 22429-25212 / org.tensorflow.demo E / AndroidRuntime:FATAL EXCEPTION:推理过程:org.tensorflow.demo,PID:22429 java.lang.ArrayIndexOutOfBoundsException:length = 3; java.util.Vector.arrayIndexOutOfBoundsException(Vector.java:907)的java =。在java.util.Vector.element(Vector.java:328)java.util.Vector.get(Vector.java:442)的org上的索引= 3在android.os.Handler.handleCallback(Handler.java:739)的org.tensorflow.demo.DetectorActivity $ 3.run(DetectorActivity.java:289)上的.tensorflow.demo.TensorFlowObjectDetectionAPIModel.recognizeImage(TensorFlowObjectDetectionAPIModel.java:194) .os.Handler.dispatchMessage(Handler.java:95)在android.os.Hooper.loop(Looper.java:148)android.os.HandlerThread.run(HandlerThread.java:61)

它来自

for (int i = 0; i <= outputScores.length; ++i) {
  final RectF detection =
      new RectF(
          outputLocations[4 * i + 1] * inputSize,
          outputLocations[4 * i] * inputSize,
          outputLocations[4 * i + 3] * inputSize,
          outputLocations[4 * i + 2] * inputSize);

  pq.add(new Recognition("" + i, labels.get((int) outputClasses[i]), outputScores[i], detection));
}
android tensorflow object-detection
1个回答
1
投票

通过添加“???”解决我的Label文件中的字符串,似乎应用程序遵循第一个ID为1的pbtxt格式。

© www.soinside.com 2019 - 2024. All rights reserved.