首页 > 解决方案 > 带有 AttributeError:模块 'tensorflow' 没有属性 'gfile'

问题描述

我正在尝试在 tensorflow 的帮助下构建对象检测模型,并且一次又一次地出现此错误。我也尝试了 tf.io.Gfile,但它没有帮助。我也在使用 tensorflow 2.2.0 版本和 tensorflow-GPU 2.2.0。这是代码,

!python {SCRIPTS_PATH + '/generate_tfrecord.py'} -x {IMAGE_PATH + '/train'} -l {ANNOTATION_PATH + '/label_map.pbtxt'} -o {ANNOTATION_PATH + '/train.record'}

!python {SCRIPTS_PATH + '/generate_tfrecord.py'} -x{IMAGE_PATH + '/test'} -l {ANNOTATION_PATH + '/label_map.pbtxt'} -o {ANNOTATION_PATH + '/test.record'}

当我将 tf.gfile 更改为 tf.io.gfile 时,出现了新错误....

我试过了,现在面对这个......

回溯(最近一次通话最后):

文件“Tensorflow/scripts/generate_tfrecord.py”,第 62 行,在

label_map_dict = label_map_util.get_label_map_dict(label_map)

文件“C:\Users\91880\AppData\Roaming\Python\Python37\site-packages\object_detection\utils\label_map_util.py”,第 164 行,在 get_label_map_dict label_map = load_labelmap(label_map_path)

文件“C:\Users\91880\AppData\Roaming\Python\Python37\site-packages\object_detection\utils\label_map_util.py”,第 133 行,在 load_labelmap label_map_string = fid.read()

文件“C:\ProgramData\Anaconda3\lib\site-packages\tensorflow_core\python\lib\io\file_io.py”,第 122 行,读取 self._preread_check()

文件“C:\ProgramData\Anaconda3\lib\site-packages\tensorflow_core\python\lib\io\file_io.py”,第 84 行,在 _preread_check compat.as_bytes(self.__name), 1024 * 512)

文件“C:\ProgramData\Anaconda3\lib\site-packages\tensorflow_core\python\util\compat.py”,第 71 行,as_bytes (bytes_or_text,))

TypeError:预期的二进制或 unicode 字符串,得到项目 {

名称:“Namaste” ID:1 }

项目{名称:“谢谢”ID:2}

项目{名称:“是”ID:3}

项目{名称:“否”ID:4}

项目{名称:“好”ID:5}

标签: tensorflowtensorflow2.0object-detection

解决方案


将 TensorFlow 版本降级到 1.15,看看是否能解决问题


推荐阅读