最近有学弟问我这个报错,发现曾经在SSD人脸检测 模型训练文章中记录过。可能在文章里面,不易发现,现摘录出来。
Traceback (most recent call last):
File "/home/gqw/anaconda3/envs/tensorflow/lib/python3.6/site-packages/tensorflow/models-master/research/object_detection/model_main.py", line 109, in <module>
tf.app.run()
File "/home/gqw/anaconda3/envs/tensorflow/lib/python3.6/site-packages/tensorflow/python/platform/app.py", line 125, in run
_sys.exit(main(argv))
File "/home/gqw/anaconda3/envs/tensorflow/lib/python3.6/site-packages/tensorflow/models-master/research/object_detection/model_main.py", line 71, in main
FLAGS.sample_1_of_n_eval_on_train_examples))
File "/home/gqw/anaconda3/envs/tensorflow/lib/python3.6/site-packages/tensorflow/models-master/research/object_detection/model_lib.py", line 566, in create_estimator_and_inputs
config_override=config_override)
File "/home/gqw/anaconda3/envs/tensorflow/lib/python3.6/site-packages/tensorflow/models-master/research/object_detection/utils/config_util.py", line 95, in get_configs_from_pipeline_file
proto_str = f.read()
File "/home/gqw/anaconda3/envs/tensorflow/lib/python3.6/site-packages/tensorflow/python/lib/io/file_io.py", line 125, in read
self._preread_check()
File "/home/gqw/anaconda3/envs/tensorflow/lib/python3.6/site-packages/tensorflow/python/lib/io/file_io.py", line 85, in _preread_check
compat.as_bytes(self.__name), 1024 * 512, status)
File "/home/gqw/anaconda3/envs/tensorflow/lib/python3.6/site-packages/tensorflow/python/util/compat.py", line 61, in as_bytes
(bytes_or_text,))
TypeError: Expected binary or unicode string, got None
解决
国内对这个错误可参考的博客数不是很多,只有这一个小哥遇到了相同的错误。于是去google了一下,此篇参考价值比较好。总结后主要是三个方案
1.命令是否输入正确
2.检查路径是否正确,保括斜线的方向,完整的路径必须在一行不能回车,完整的路径必须在一行不能空格
3.更改为决定路径
外国小哥看完了drecryptost大哥的回答后重启了一下,竟然好了
中国小哥大概也是这个意思
我核对我的路径没有错误,决定更改决定路径试试
依然报错
一阵沮丧之后,决定仔细看看报错信息,发现可能与配置文件有关。
create_estimator_and_inputs
config_override=config_override)
File "/home/gqw/anaconda3/envs/tensorflow/lib/python3.6/site-packages/tensorflow/models-master/research/object_detection/utils/config_util.py", line 95, in get_configs_from_pipeline_file
proto_str = f.read()
尝试检查配置文件,但打开后发现配置文件全报红了。状况惨烈如下图所示:
一度以为是运行时不通过引起的配置文件报红。
这个错误持续许久,当我再次打开PyCharm时,发现弹出了一个对话框
想起来第一次打开配置文件时,提示我是否安装插件,让我安装三个,其中就要Illuminated Cloud
点击Retry失败,然后让我激活注册,但是无论怎么激活,再次打开还是提示这个框。在我核对完时间正确之后,开始研究这是个啥?
看不懂,选择卸载,卸载方法参考了此博客
然后,配置文件就变正常了心里很是欢喜,继续运行model_main.py