我运行了命令:
python3 research/object_detection/legacy/train.py
--logtostderr
--train_dir = training/
--pipeline_config_path = training/ssd_mobilenet_v1_pets.config
但是我收到此错误:
WARNING: The TensorFlow contrib module will not be included in TensorFlow 2.0.
For more information, please see:
* https://github.com/tensorflow/community/blob/master/rfcs/20180907-contrib-sunset.md
* https://github.com/tensorflow/addons
If you depend on functionality not listed there, please file an issue.
WARNING:tensorflow:From /home/apoorva/.local/lib/python3.5/site-packages/tensorflow/python/platform/app.py:125: main (from __main__) is deprecated and will be removed in a future version.
Instructions for updating:
Use object_detection/model_main.py.
Traceback (most recent call last):
File "research/object_detection/legacy/train.py", line 184, in <module>
tf.app.run()
File "/home/apoorva/.local/lib/python3.5/site-packages/tensorflow/python/platform/app.py", line 125, in run
_sys.exit(main(argv))
File "/home/apoorva/.local/lib/python3.5/site-packages/tensorflow/python/util/deprecation.py", line 324, in new_func
return func(*args, **kwargs)
File "research/object_detection/legacy/train.py", line 93, in main
FLAGS.pipeline_config_path)
File "/home/apoorva/Tensorflowapi/models-master/research/slim/object_detection/utils/config_util.py", line 97, in get_configs_from_pipeline_file
proto_str = f.read()
File "/home/apoorva/.local/lib/python3.5/site-packages/tensorflow/python/lib/io/file_io.py", line 132, in read
pywrap_tensorflow.ReadFromStream(self._read_buf, length, status))
File "/home/apoorva/.local/lib/python3.5/site-packages/tensorflow/python/framework/errors_impl.py", line 528, in __exit__
c_api.TF_GetCode(self.status.status))
tensorflow.python.framework.errors_impl.FailedPreconditionError: =; Is a directory
我在models/research/object_detection/legacy
运行了train.py
,遇到了同样的错误,所以试图运行model_main.py
这是train.py
的更高版本,但仍然无法解决问题。
python3 research/object_detection/legacy/train.py
--logtostderr
--train_dir = training/
--pipeline_config_path = training/ssd_mobilenet_v1_pets.config
我希望训练开始并在每一步显示损失和准确性,但命令没有运行。
您以错误的格式调用命令。
python3 research/object_detection/legacy/train.py
--logtostderr --train_dir=training/
--pipeline_config_path=training/ssd_mobilenet_v1_pets.config
--train_dir
和=
之间不应该有空格,training
.否则,=
被解释为参数的值。也建议使用 model_main.py
,所以正确的调用方式是:
python3 object_detection/model_main.py --alsologtostderr
--model_dir=training/
--pipeline_config_path=training/ssd_mobilenet_v1_pets.config
我会为那些可能遇到上述错误的人写更多细节。
上述错误是由于上面人所说的命令编写不正确造成的。
--train_dir=training/
以上情况需要纠正。应根据"="删除空格。
如果在删除空格后仍发生上述错误,则需要再次检查是否将文件名或文件夹路径作为参数。