Ошибка «неинициализированный классификатор или недопустимый контекст» в демонстрационном приложении tenenslow - PullRequest
0 голосов
/ 02 декабря 2018

Я создаю и запускаю демо-приложение tenenslow из: https://github.com/tensorflow/tensorflow/tree/master/tensorflow/lite/java/demo

Я заменяю модель "mobilenet_quant_v1_224.tflite" моей собственной моделью "optimized_graph.tflite" и меткой "labels.txt" моей собственной меткой "retrained_labels.txt ".

Приложение работает нормально, но я получаю сообщение об ошибке:

Неинициализированный классификатор или недопустимый контекст в демонстрационном приложении Тензофлоу

enter image description here

Ответы [ 2 ]

0 голосов
/ 07 января 2019

У меня была такая же ошибка.Чтобы быть точным, моя консоль выдавала следующую ошибку:

E / AndroidRuntime: ИСКЛЮЧИТЕЛЬНОЕ ИСКЛЮЧЕНИЕ: CameraBackground Процесс: android.example.com.tflitecamerademo, PID: 5603 java.lang.IllegalArgumentException: не удается преобразовать междуБуфер TensorFlowLite с 196608 байтами и ByteBuffer с 602112 байтами.

Я обучил свою модель для изображения размером 128, а не 224 пикселей.Таким образом, когда я запускал свою модель на своем компьютере, мне нужно было указать высоту и ширину изображения как 128. Поэтому после того, как я получил ошибку, я понял, что должен был установить размер изображения на 128 в ImageClassifier.java

static final int DIM_IMG_SIZE_X = 128;
static final int DIM_IMG_SIZE_Y = 128;

Это сработало для меня

0 голосов
/ 12 декабря 2018

С Github связан ряд проблем (например, https://github.com/tensorflow/tensorflow/issues/18658, https://github.com/tensorflow/tensorflow/issues/15751).

Возможно, вам потребуется обновить https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/java/demo/app/src/main/BUILD, чтобы включить файлы пользовательских моделей и меток.

...