【发布时间】:2021-10-28 05:52:31
【问题描述】:
我正在创建一个用于对象检测的自定义 Android 应用程序。因此,我从这里使用 Tensorflow 对象检测 Android 应用程序:examples/lite/examples/object_detection/android at master · tensorflow/examples · GitHub 我正在使用以下代码使用 TFlite 模型制造商训练我的模型:
!pip install -q tflite-model-maker
!pip install -q pycocotools
#----------------Python code--------------------------
import numpy as np
import os
from tflite_model_maker.config import ExportFormat
from tflite_model_maker import model_spec
from tflite_model_maker import object_detector
import tensorflow as tf
assert tf.version.startswith(‘2’)
tf.get_logger().setLevel(‘ERROR’)
from absl import logging
logging.set_verbosity(logging.ERROR)
spec = model_spec.get(‘efficientdet_lite0’)
test_data = object_detector.DataLoader.from_pascal_voc(’./test’, ‘./test’, label_map={1: “Ball”, 2: “Spieler Rot”, 3: “Spieler Gelb”})
train_data = object_detector.DataLoader.from_pascal_voc(’./train’, ‘./train’, label_map={1: “Ball”, 2: “Spieler Rot”, 3: “Spieler Gelb”})
validation_data = object_detector.DataLoader.from_pascal_voc(’./valid’, ‘./valid’, label_map={1: “Ball”, 2: “Spieler Rot”, 3: “Spieler Gelb”})
model = object_detector.create(train_data, model_spec=spec, batch_size=16, train_whole_model=True, validation_data=validation_data, epochs=1)
model.evaluate(test_data)
model.export(export_dir=’.’)
这工作了好几个星期,没有任何错误。现在我在 Android Studio 中收到以下错误:
Output tensor at index 0 is expected to have 3 dimensions, found 2.
我的数据集完全相同,我在 Google Colab 上进行训练。我确定我没有对 Android 应用进行任何更改。
【问题讨论】:
标签: android tensorflow deep-learning object-detection tensorflow-lite