Jupyter-notebook中import cv2失败: ImportError: DLL load failed: 找不到指定的程序。

在Windows配置各种opencv、opencv-python,没想到今天掉坑了去了 :使用jupyter notebook遇到这种Bug我也是无语,
问题是这样的:

在这里插入图片描述
通常遇到Python安装包问题,一般思路是在DOS中激活Python环境,直接输入

import Package

Package是有问题的安装包,来查看虚拟环境中是否成功安装该包,如果没报错说明在虚拟环境中包安装成功

在这里插入图片描述
结果我发现没啥问题,但还是报错。

考虑从下面几个方面找问题:

  1. 可能是opencv没安装完整的问题,于是
//在Virtual enve中
pip uninstall opencv-python  // 删包

pip install opencv-python  //重新安装

重新回到jupyter notebook中,发现还是报错:ImportError: DLL load failed: 找不到指定的程序。

  1. 可能是版本安装问题,于是
//在Virtual enve中
pip uninstall opencv-python  // 删包

pip install opencv-python==3.4.5.20  //重新安装一个低版本opencv

重新回到jupyter notebook中,还是同样的问题。

3.可能是pip和conda安装混淆问题
之所以会想到这,也是因为之前用Pycharm时候,选择Python环境,conda install的包和pip install的包不混用,于是:

//在Virtual enve中
pip uninstall opencv-python  // 删包

conda install opencv-python  //重新用conda安装opencv

重新回到jupyter notebook中,还是同样的问题。


5min after…
10min after…

突然灵光一闪,发现端倪:在Pycharm中我是在setting中手动设置Python文件Interpretor Path的,但是在Jupyter notebook中,我直接在桌面新建文件夹,然后打开cmd激活notebook的,但是没有选择Python解释器的步骤,我想是不是notebook调用默认的Python环境,比如Anaconda:base环境,但是我没有在base中安装opencv,于是:

cmd打开DOS,直接输入Python(不激活自己create的虚拟环境)
输入:import cv2

于是乎发现了问题:
在这里插入图片描述
Jupyter notebook调用了默认的Python解释器,所以无论我在自己create的虚拟环境中做什么,都会报错,所以查了下资料:在notebook中怎么选择虚拟环境?

Solution 如下:
Jupyter Notebook支持虚拟运行环境,需要在Anaconda里安装一个插件:nb_conda。

//在Virtual enve中
conda install nb_conda

再重新开启Jupyter Notebook:

jupyter notebook

新建Python文件,就可以选择自己的虚拟环境了:
在这里插入图片描述
在这里插入图片描述
OK,这个时候就没有报错了!

另外在安装Package时候有一个小Tips:
将安装源换为清华源,可大大加快下载速度:
比如安装opencv:

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

加上后面的链接就能把Package换成清华源。

参考Blog:
【1】ImportError:DLL load failed,找不到指定模块的解决办法
【2】如何在Jupyter Notebook中使用Python虚拟环境?

  • 10
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值