从国庆放假到现在的6号,我整整搞了将近五天多。安装个TensorFlow和OpenCV不下五次,各种问题各种解决,下载后卸载,卸载后下载,我快吐了啊这个国庆,但是最终还是达到了自己的目标(我太难了,菜小燕不配拥有国庆假期QAQ)
成功很难,但坚持一定很酷~
一,下载安装Anaconda,网上版本众说纷纭,我这边版本放下面了,自行下载
百度网盘提取码:q4d6 当然你也可以去清华镜像源下载:清华anaconda镜像源
不强调的都是直接下一步哈
wins+R
打开运行窗口,输入cmd
进入命令窗口,输入python
,查看当的python版本为3.8.5
PS:这是因为anaconda里面自带的python,所以不用再专门下载python了
到这一步算是成功安装Anaconda了
二、创建TensorFlow环境空间
管理员身份运行Anaconda Prompt
这里说下哈,(base)这相当于一个环境,是anaconda默认的环境,打开Anaconda的目录找到envs文件夹下,这是后续咱们要安装tensorflow环境的地方,目前环境还没有一个
为了后续的操作更快捷点,这里把anaconda的镜像下载源换成清华大学的镜像源更快些,这里我就不再赘述了,可参考我这边博文。更换Anaconda镜像源下载更快开始创建一个环境空间tensorflow,名称无所谓哈,你开心就好
在Anaconda Prompt下输入:
conda create --name 随便取一个环境空间名称 python=你希望下载的版本号
例如:conda create --name tensorflow python=3.6
,途中输入y
然后回车确定下载
创建tensorflow这个环境空间之后,瞅见没,哦豁出现了哈
然后,咱们进去这个环境空间,activate 环境空间名称
,例如:activate tensorflow
当前面的(base)改成你的环境空间的时候,就表明成功进入了你刚才创建的环境空间了哈
PS唠会儿嗑:还记得咱们在上面创建环境空间的时候python的版本吗?诺,瞅这边,的确tensorflow这个环境空间的python就是3.6.13,这13小版本是系统帮我选择的,当然你也可以在上步中更加详细规定下python的版本号
其实每个环境空间都有其自己的python版本
若删除想要环境空间tensorflow
首先通过conda activate base
切换到base环境空间中去
其次删除tensorflow这个环境空间conda env remove -n tensorflow
三、在线下载tensorflow
继续继续!!!
输入命令:pip install tensorflow
,当然你也可以指定tensorflow的版本,例如:pip install tensorflow=1.15.1
之类的版本,我这里就直接下载最新版的哈
这里的tensorflow可不是环境空间啊,这就是tensorflow,每个人都得是这个命令哈别搞错了,开始在线下载tensorflow,还记不记得上面我所叙述的改anaconda镜像源,嘿嘿到这里起作用了,速度会较为快些喽~
四、检测安装是否成功
安装成功之后,依次输入:python
,import tensorflow as tf
,若不报红表示安装成功,嘿嘿,真棒,然后quit()
退出python编译
最后输入:conda deactivate
退出该环境空间
大功告成,中午饭奖励一下自己叭~吃顿好的
五、下载安装OpenCV
紧接着上一步哈,是在(base)下哈
输入命令:conda env list
查看anaconda下有多少个环境空间
之后我们再创建一个环境空间opencv,命令:conda create --name 你所想要创建的环境空间名称 pythnotallow=你想要的python版本号
例如:conda create --name opencv pythnotallow=3.6
,当然途中需要按下y
来继续下载安装
之后我们再查看下当前anaconda下的环境空间conda env list
,发现自己所创建的环境空间已经创建成功,同样的道理,废话不多说了
进入(激活)你所创建的环境空间,activate 你的环境空间名称
例如:activate opencv
然后,开始在线下载opencv,pip install opencv-python
六、检验opencv是否安装成功
在当前环境空间下,依次输入:python
,import cv2
若不报错表示opencv安装成功,successful!!!
最后exit()
退出python编译即可
当你看到这里的时候,很厉害,感谢您有耐心的看完我这整篇博文,感谢~ ~
我这里是将tenserflow和opencv分别独立在不同的环境空间里面了,使用谁直接切换环境空间即可,这样的优点是调用各个库的时候不会发生冲突