Команда tenorflow toco для.tflite
Я следую за шагами в TFLite Android
Я не могу использовать команду toco и поэтому не могу сгенерировать: "optimized_graph.lite"
Вот команда, которую я использую:
IMAGE_SIZE=224
toco \
--graph_def_file=tf_files/retrained_graph.pb \
--output_file=tf_files/optimized_graph.lite \
--input_format=TENSORFLOW_GRAPHDEF \
--output_format=TFLITE \
--input_shape=1,${IMAGE_SIZE},${IMAGE_SIZE},3 \
--input_array=input \
--output_array=final_result \
--inference_type=FLOAT \
--input_data_type=FLOAT
И ошибка:
F tenorflow/contrib/lite/toco/toco.cc:46] Проверка не удалась: parsed_toco_flags.input_file.specified() Отсутствует обязательный флаг: input_file
Я тщательно следовал инструкциям на Mac OS, и версия tenorflow составляет 1.7
1 ответ
Когда я побежал
toco --help
Я не видел нет --graph_def_file
в настройках этой команды. Вместо этого я нашел --input_file
, и его значение - Входной файл (модель любого поддерживаемого формата). Для форматов Protobuf поддерживаются как текстовые, так и двоичные файлы независимо от расширения файла.
После того как я заменил --graph_def_file
с --input_file
, команда сработала и я получил файл optimized_graph.lite.
Ниже приведена полная команда.
toco \
--input_file=tf_files/retrained_graph.pb \
--output_file=tf_files/optimized_graph.lite \
--input_format=TENSORFLOW_GRAPHDEF \
--output_format=TFLITE \
--input_shape=1,${IMAGE_SIZE},${IMAGE_SIZE},3 \
--input_array=input \
--output_array=final_result \
--inference_type=FLOAT \
--input_data_type=FLOAT