Ошибка «Анализ входных данных ... неполная форма» при экспорте графа вывода в Tensorflow - PullRequest
0 голосов
/ 24 августа 2018

Я обучаю нейронную сеть, используя API обнаружения объектов Tensorflow для обнаружения автомобилей. Я использовал следующее видео на YouTube от senddex, чтобы изучить и выполнить этот процесс.

https://www.youtube.com/watch?v=srPndLNMMpk&t=65s

Также текстовая версия его видео:

https://pythonprogramming.net/testing-custom-object-detector-tensorflow-object-detection-api-tutorial/?completed=/training-custom-objects-tensorflow-object-detection-api-tutorial/

Часть 1-6 его серии.

Мои тренировочные данные имеют ~ 300 изображений. Тестовые данные ~ 20 изображений

Поскольку я использую концепцию трансферного обучения, я выбрал ssd_mobilenet_v1.model.

Tensorflow версия 1.10 (на процессоре) Python версия 3.6

Я тренировался до ~ 8000 шагов и потерял ~ 1.

Все идет гладко, пока я не попытаюсь экспортировать граф вывода.

Я запускаю следующую команду:

python3 export_inference_graph.py \
--input_type image_tensor \
--pipeline_config_path training/ssd_mobilenet_v1_pets.config \
--trained_checkpoint_prefix training/model.ckpt-7882 \
--output_directory car_inference_graph

После этой команды я получаю

Предупреждение:

WARNING:tensorflow:From 
/home/mydir/Desktop/models/research/object_detection/exporter.py:280: 
get_or_create_global_step (from 
tensorflow.contrib.framework.python.ops.variables) is deprecated and will be 
removed in a future version.
Instructions for updating:
Please switch to tf.train.get_or_create_global_step
WARNING:tensorflow:From 
/home/mydir/Desktop/models/research/object_detection/exporter.py:434: 
print_model_analysis (from tensorflow.contrib.tfprof.model_analyzer) is 
deprecated and will be removed after 2018-01-01.
Instructions for updating:
Use `tf.profiler.profile(graph, run_meta, op_log, cmd, options)`. Build 
`options` with `tf.profiler.ProfileOptionBuilder`. See README.md for details
106 ops no flops stats due to incomplete shapes.
Parsing Inputs...
Incomplete shape.

После этого есть список отчетов модели. (Могу опубликовать, если хотите)

У меня есть экспортированная папка car_inference_graph, в которой есть файлы контрольных точек и т. Д. внутри, как и должно быть.

Но когда я запускаю эту модель на изображениях автомобилей (тестовые изображения или новые изображения), она не обнаруживает автомобили. т.е. нет ограничивающего прямоугольника!

Я не уверен, повлияло ли это предупреждение на обнаружение, и если оно имело место, пожалуйста, помогите мне решить его!

Спасибо!

PS: чтобы помочь определить причину «отсутствия ограничивающего прямоугольника», стоит упомянуть, что на изображениях, на которых обучалась модель, даже не показаны ограничивающие рамки вокруг автомобилей. Это означает, что что-то не так с экспортом графа вывода или самой функцией ограничивающего прямоугольника.

Я только что узнал, что файл .pbtxt имеет имя: macncheese вместо имени: машина. Это вызвало проблему?

Ответы [ 2 ]

0 голосов
/ 30 августа 2018

Имя метки, используемое при маркировке, и запись в формате pbtxt должны точно совпадать.В вашем случае, поскольку имена разные, вам придется изменить имя в файле pbtxt и заново запустить обучение.

0 голосов
/ 28 августа 2018

Интересно посмотреть, исправили ли вы это - я следовал тому же учебнику и думаю, что у меня точно такая же проблема.

Только у меня были правильные файлы pbtxt.У меня нет идей о том, что вызвало это, мои следующие шаги будут заключаться в том, чтобы попробовать другую модель и, возможно, выйти из устаревшей папки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...