Win11+tensorflow+keras+opencv的踩坑实录

由于换了个电脑,系统也由W10换成了W11,原来带有python3.5的anaconda也不知道怎么回事一直处于闪退当中,于是无奈之下安装了python3.7,所有的包也重新安装,安装路程如下:
1.安装anacond
这里建议在清华镜像下面安装,因为快
anaconda清华镜像地址
本人下载的地址如下,如果有小白不想有别的麻烦,可以根据我的安装地址来安装在这里插入图片描述
由于tensorflow的环境适配较为蛋疼,接下来最好根据这篇博客的安装步骤来安装:
Anaconda环境适配
2.安装tensorflow
现在是2022年2月7日,我也不知道为什么打开清华镜像的tensorflow网页就提示无此文件,而直接pip tensorflow 的话时间太长了,还不知道能不能安装完成,因此直接采用手动安装的方式,这里需要主意版本的适配问题,我这里3.7版本的python选择安装1.9.0的tensorflow,安装的文件在下面:
tensorflow1.9.0安装包
在这里插入图片描述
然后把这个文件放在D盘下面,把CMD转到D盘目录下,直接pip安装。
在这里插入图片描述
这里如果不是会员的话,可以私聊我,留下邮箱,我把文件发给你,走到这一步,如果输入import tensorflow as tf 没有错误的话,基本就安装完成了。
3.安装keras+theano
keras的安装历程比较心酸,如果一开始直接pip install keras 的话,会报一个错误,大致是这样的。

ImportError: cannot import name 'tf2' from 'tensorflow.python'

这是因为我们的keras版本和tensorflow的版本不一致,因此需要找到对应版本的keras再进行pip,这里大家可以借鉴这篇博客,讲的很明白了,对照着做就完事了:
keras安装
到这一步如果进行import的话还是会报错的,很长一串的错误代码和解决方案如下:
方案1
方案2
直接根据这上面来就完事了,
那么走到这一步了,如果有不幸的小朋友肯定还会遇到一个问题那就是在进行conda的时候会发现无法利用conda安装,报错代码如下:

Anaconda An HTTP error occurred when trying to retrieve this URL.HTTP errors are often intermittent,

这是conda的url源加入了不知名的URL,现在不能使用了(或者废弃),因此需要改一下,可以借鉴下面3个大佬的方案:
方案1
方案2
方案3
这里我是直接更改C盘user下的.condarc文件
在这里插入图片描述
在这里插入图片描述
接下来还有如果你足够倒霉的话,还会在import keras 的时候遇到一个Waring;

WARNING (theano.tensor.blas): Using NumPy C-API based implementation for BLAS functions.

不要怕,解决方案在这里
方案1

在这里.theanorc.txt如果没有的话,需要你创建一个。在这里插入图片描述

下面cxxflags = -ID:\Anaconda\MinGW
是你的anaconda安装地址,直接复制就行了。到这里所有的Waring和Error都已经没了,这时再import一下。
在这里插入图片描述
啊~~~舒服。
我们来测试一下

import tensorflow as tf
import numpy as np
 
#create data
x_data = np.random.rand(100).astype(np.float32)
y_data = x_data*0.1 + 0.3
 
###create tensorflow structure start ###
Weight = tf.Variable(tf.random_uniform([1],-1.0,1.0))  #一维向量,从-1.0到1.0
biases = tf.Variable(tf.zeros([1]))                    #一维0向量
 
y = Weight*x_data + biases
loss = tf.reduce_mean(tf.square(y-y_data))
optimizer = tf.train.GradientDescentOptimizer(0.5)    #梯度下降优化器
train = optimizer.minimize(loss)                      #训练器
 
init = tf.initialize_all_variables()                   #初始化变量
###create tensorflow structure end ###
 
sess = tf.Session()                                   #建立会话
sess.run(init)                                        #激活整个神经网络very important
 
for step in range(201):
    sess.run(train)
    if step % 20 == 0:
        print(step,sess.run(Weight),sess.run(biases))

在这里插入图片描述
这里有2个Waring,我查验都不是什么大的问题,第一个Waring,程序的书写上需要规范。
Waring1解决方案
Waring2解决方案.
这里2个Waring我也只是从表面上去理解,如果大佬会的话,可以解答一下,不过最后结果还是运行了出来。

4.安装opencv
opencv的话从官网上下载一个包然后手动pip一下安装包就可以使用了,这时候需要主意要下载合适的版本,地址在这里:
官方下载地址
但是pip一下opencv的话大概率会遇到这个error:

from .cv2 import * ImportError: numpy.core.multiarray failed to import

这个是因为numpy包还要和tensorflow的版本适配,可以参考这篇博文:
方案1
这里是适配表
tensorflow和numpy的适配表
如果到最后还是报错的话,直接升级最新的numpy包,就可以解决上面的报错:

pip install -U numpy

最最最最后,我做完上述,进行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'.

这里有很长一段,这个还是很简单的,根据提示的地址,找到dtypes.py这个文件,用spyder打开, (type, 1) ”都改成“(type, (1,))”就可以了。
方案1
在这里插入图片描述
完工,没有报错,面向CSDN编程之旅开始了。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值