Tensorflow安装及遇到的各种问题及解决过程(Windows)

Anaconda+Tensorflow+RetinaNet模型(检验环境是否ok):

在使用本文讲述的环境搭建之前,首先你需要安装Anaconda……如,我的Anaconda3-5.2.0安装在了E:\Python\Anaconda3中,接下来如何建立整洁的conda环境以及tensorflow环境配置。

1.    打开Anaconda Prompt,查看当前所有的conda环境:conda info -e

       一开始只有root

2.    创建conda环境的方法:conda create -n tensorflow pip python=3.6.2

       这样就会得到如上图所示的“tensorflow”环境了,命名“tensorflow”(根据自己需求来)

3.    激活进入环境:activate tensorflow

Tensorflow安装及遇到的各种问题及解决过程(Windows)_第1张图片

4.    查看环境内的packages列表(不同环境下相互之间不影响,package根据需求可在相应环境下独立安装):conda list

Tensorflow安装及遇到的各种问题及解决过程(Windows)_第2张图片

       红框表示这些包在“tensoflow”环境下。

5.    在使用pip命令安装的时候,经常因为源的缘故,下载速度极其慢导致失败。采用好的源能够快很多:

       国内源:

                          清华:https://pypi.tuna.tsinghua.edu.cn/simple
                          阿里云:http://mirrors.aliyun.com/pypi/simple/
                          中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/

              使用方法:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple [包名]

              使用“[包名]==[版本号]”可以指定安装特定版本;

6.    接下来是安装tensorflow和采用RetinaNet模型进行环境检测的过程(中间遇到很多问题并一一解决):

       (1)首次安装时,我采用的是:conda install tensorflow-gpu==1.10.0

           结果不仅安装了tensorflow,还奇迹般地安装了cuda和cudnn,并且与tensorflow、gpu兼容;

          (原本还想安装网上的教程一个个安装的,现在感觉可以省很多事),import tensorflow成功。

       (2)接着拿retinaNet模型来试一下环境,从网上下载模型(github:https://github.com/fizyr/keras-retinanet)

           打开/keras-retinanet-master,里面的setup.py文件用于安装这个模型的依赖包,按照README.md文件指引是推荐                   我们使用:pip install .  ,安装所有的依赖包,但是这样有几率出现解析很慢/卡死/需要等很久的情况,这里我踩了                     坑,很多次都没搞定,因此后来不采用这个方法; 

           打开setup.py文件,可以看到该模型需要的依赖包和要求:

Tensorflow安装及遇到的各种问题及解决过程(Windows)_第3张图片

           根据需求,我们依次在我们建立的“tensorflow”环境下使用:pip install [包名]  命令进行安装即可。(安装过程中有                   可能会提示你Keras版本过高等问题,按照提示安装提示推荐的适用版本即可。

       (3)最后想运行识别代码peoplecar.py看一下,

           结果报错:ValueError: numpy.dtype has the wrong size, try recompiling

           这是numpy版本太低的原因,

               pip uninstall numpy

               pip install numpy #这样会安装最新的numpy

           安装过程中提示,tensorflow要求的numpy版本有范围限制,不能大于1.14.5或者小于……,这就尴尬了版本太高又                   不行,通过试安装1.14.5,报同样的错;

           因此只能含泪卸载tensorflow,接着安装tensorflow==1.14.0,接着把numpy也升到最新。痛苦的事情又发生了,这                   次import tensorflow就报错了,提示需要10.0的cuda,但是我的gpu只能兼容9的……

           再一次卸载tensorflow,安装tensorflow==1.12.0,import tensorflow #成功。

           接着运行模型代码,报错:
                            FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy,                         it will be understood as (type, (1,)) / '(1,)type'._np_quint8 = np.dtype([("quint8", np.uint8, 1)])
                   numpy版本太高,降低到1.16.5,最后代码跑通(完美~)。

最后,大功告成,并成功将包都装在了自己需要的地方,不会向以前那样,环境越来越乱。。。

附上我适用的人车识别源代码,github:https://github.com/RoyPeng-yz/Human_Vehicle-Identification-System

新建完毕环境后,最终使用的命令如下:

          conda install tensorflow-gpu==1.12.0

          pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pillow

          pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python

          pip install -i https://pypi.tuna.tsinghua.edu.cn/simple kersa==2.2.4

          pip install -i https://pypi.tuna.tsinghua.edu.cn/simple keras_resnet

          pip install -i https://pypi.tuna.tsinghua.edu.cn/simple numpy==1.16.5

 

你可能感兴趣的:(Python)