1

由于系统中安装的 TensorFlow 版本与用于在 TensorFlow API 中编写代码的版本冲突,我遇到了多个错误。我正在使用 python 3.6.7 和 Tensorflow 2.0 开始使用代码https://github.com/tensorflow/models/blob/master/research/deeplab/g3doc/installation.md

但是我遇到了几个错误:

  1. flags = tf.app.flags AttributeError: 模块 'tensorflow' 没有属性 'app. 当我使用 2.0 时,我将 tf.app.flags 替换为 tf.compat.v1.flags。

  2. from tensorflow.contrib import slim as contrib_slim ModuleNotFoundError: No module named 'tensorflow.contrib'

我无法解决第二个问题。我能否获得帮助以了解应该使用哪个 python 和 tensorflow 版本来运行 DeepLab v3+?

4

1 回答 1

1

您应该使用 Tensorflow 版本 1.x 来运行 DeepLabV3+ 模型,因为它使用会话来运行以及基于 TensorFlow 1.x 的 slim 库。所以你的两个问题可以解决为:

  1. 不需要将 tf.app.flags 替换为 tf.compat.v1.flags。
  2. 要运行 DeepLabV3+ 模型,您需要将 deeplab 和 slim 文件夹放在一个文件夹 (deeplab_slim) 中,并通过从该父文件夹 (deeplab_slim) 运行以下导出命令来导出它们:
export PYTHONPATH=$PYTHONPATH:`pwd`:`pwd`/slim
export PYTHONPATH=$PYTHONPATH:`pwd`:`pwd`/deeplab
于 2019-12-03T00:06:45.953 回答