Как сгенерировать tflite из сохраненной модели? - PullRequest
0 голосов
/ 24 мая 2019

Я хочу создать приложение для обнаружения объектов на основе переобученной модели ssd_mobilenet, которую я переобучил как парень на youtube .

Я выбрал модель ssd_mobilenet_v2_coco из Модель Tensorflow Zoo .После процесса переподготовки у меня есть модель со следующей структурой:

- saved_model
    - variables (empty folder)
    - saved_model.pb
- checkpoint
- frozen_inverence_graph.pb
- model.ckpt.data-00000-of-00001
- model.ckpt.index
- model.ckpt.meta
- pipeline.config

В той же папке у меня есть скрипт Python со следующим кодом:

import tensorflow as tf

converter = tf.lite.TFLiteConverter.from_saved_model("saved_model", input_shapes={"image_tensor":[1,300,300,3]})
tflite_model = converter.convert()
open("converted_model.tflite", "wb").write(tflite_model)

После запускаЭтот код, я получил следующую ошибку:

...
2019-05-24 18:46:59.811289: I tensorflow/lite/toco/import_tensorflow.cc:1324] Converting unsupported operation: TensorArrayGatherV3
2019-05-24 18:46:59.811864: I tensorflow/lite/toco/import_tensorflow.cc:1373] Unable to determine output type for op: TensorArrayGatherV3
2019-05-24 18:46:59.908207: I tensorflow/lite/toco/graph_transformations/graph_transformations.cc:39] Before Removing unused ops: 1792 operators, 3033 arrays (0 quantized)
2019-05-24 18:47:00.089034: I tensorflow/lite/toco/graph_transformations/graph_transformations.cc:39] After Removing unused ops pass 1: 1771 operators, 2979 arrays (0 quantized)
2019-05-24 18:47:00.314681: I tensorflow/lite/toco/graph_transformations/graph_transformations.cc:39] Before general graph transformations: 1771 operators, 2979 arrays (0 quantized)
2019-05-24 18:47:00.453570: F tensorflow/lite/toco/graph_transformations/resolve_constant_slice.cc:59] Check failed: dim_size >= 1 (0 vs. 1)

Есть ли какое-либо решение для "Проверка не удалась: dim_size> = 1 (0 против 1)"?

1 Ответ

0 голосов
/ 24 мая 2019

Преобразование SSD MobileNet немного отличается из-за некоторых пользовательских операций, которые необходимы на графике.

Взгляните на этот Средний пост для сквозного процесса обучения и экспорта модели в виде графика TFLite. Для конвертации вам необходимо использовать скрипт export_tflite_ssd_graph .

...