安装TensorRT,然后导入uff库包的时候报错:ImportError: ERROR: Failed to import module(cannot import name ‘GraphDef`)

欢迎大家关注笔者,你的关注是我持续更博的最大动力


原创文章,转载告知,盗版必究


安装TensorRT,然后导入uff库包的时候报错:ImportError: ERROR: Failed to import module(cannot import name 'GraphDef from 'tensorflow')

文章目录:


先说明一下我自己的环境:

  • Ubuntu18.04
  • cuda10.2
  • cudnn7.6.5
  • TensorRT-7.0.0.11
  • uff0.6.5

1 错误原因分析

在导入uff库包时,报错如下:
在这里插入图片描述

这个错误时由于:GraphDefTensorFlow1.x中是支持的,在TensorFlow2.x是不支持的,而我安装的tensorflow版本恰好是:tensorflow-gpu=2.2,因此导致这错误

2 错误解决方式

2.1 错误解决方式1(不推荐)

把tensorflow的版本降到1.x版本,如下:

pip install tensorflow-gpu==1.4.0

之所以不推荐这种方法,是因为Tensorflow1.x版本太老,用 的也比较少,而且不一定满足你现在的项目需求

2.2 错误解决方式2(推荐)

1、查看自己的uff库包的安装存放路径
在这里插入图片描述

2、修改conversion_helpers.py文件

conversion_helpers.py的路径位置

/home/shl/anaconda3/envs/TensorRT/lib/python3.7/site-packages/uff/converters/tensorflow/conversion_helpers.py

然后把conversion_helpers.py文件第18行的:from tensorflow import GraphDef 修改为from tensorflow.compat.v1 import GraphDef

在这里插入图片描述

注意:
tensorflow.compat是专门为了兼容某些tensorflow.1x版本和兼容某些tensorflow2.x版本的模块

  • tensorflow.compat.v1:兼容某些tensorflow.1x版本
  • tensorflow.compat.v2:兼容某些tensorflow.2x版本

所以,下载再遇到这种tensorflow版本问题,可以使用这个模块修改
在这里插入图片描述

3、在次查看uff能否导入成功
在这里插入图片描述
成功导入!!!


在这里插入图片描述




在这里插入图片描述
♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠

猜你喜欢

转载自blog.csdn.net/weixin_41010198/article/details/107637096