导入import cv2时出现ImportError:DLL load fail:找不到指定模块的解决办法

一、Python上安装opencv

遇到的问题:前几天在导入import cv2的时候,出现 ImportError:DLL load fail:找不到指定模块,我是按照pip install opencv-python方式安装的,但是仍旧出现问题,看了有三十多个博客以及帖子,有的说缺少 Visual C++ redistributable 2015(如果是这个问题,安装即可),也看了官方主页说明的安装问题,官方地址:https://pypi.org/project/opencv-python/,但是依旧没有解决。请大家先看看这位仁兄的方法:https://blog.csdn.net/quantum7/article/details/82935434#commentsedit,如果无法解决,现在开始吧!

        最后思考了很久,可能是opencv的版本与python的不匹配,利用pip安装的时候,默认你是安装了最新的python,所以问题出现在这里,好了,下面我说下步骤吧!

1 查看自己的环境。我的环境:64位win7+python3.6.4,如果和我版本类似的,可以完全按照我的步骤尝试,如果不是,请尝试找到合适的opencv版本(这是目前的最新版本opencv-python 3.4.3.18,你要选择比这个低的版本,且看后文哦)。

2 到清华大学的opencv Python库页面,下载opencv版本,注意,一定要和你的python版本匹配哦:

https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/opencv-python/下载opencv_python-3.4.0.12-cp36-cp36m-win_amd64.whl

注意,我的版本是64位的哦,所以下载了64位的。版本不同的,下载相应的版本。由于下载的文件是个压缩包,解压以后,你会发现两个文件夹,下图

然后将这两个文件放入到你所安装的python的site-packages里面,我的是

3 离线安装,一定要离线安装!

安装方式:pip3 install D:\python\Lib\site-packages\opencv_python-3.4.0.12-cp36-cp36m-win_amd64.whl

其中,D:\python\Lib\site-packages\为我将步骤2中的两个文件放到site-packages的位置,上面的opencv_python-3.4.0.12-cp36-cp36m-win_amd64.whl与步骤2下载的opencv的版本是一致的,切记哈!不然安装会出错,离线安装,再强调一遍。

4 查看是否安装正确:打开IDLE,输入import cv2

导入import cv2时出现ImportError:DLL load fail:找不到指定模块的解决办法_第1张图片

二 、Pycharm导入cv2时出现的问题及解决办法

虽然我们已经在IDLE成功导入cv2后,但是,有些用户(包括我),也同样在Pycharm中出现问题了。思考了许久,通过查找了很多办法,参考了这篇文章http://www.cnblogs.com/FHC1994/p/8990307.html,看完后受益颇多,总结一下没有成功导入cv2的原因是:请确定Pycharm环境变量是否包含python的环境lib,查看方法如下图所示:

按照步骤查看即可:打开pycharm的settings设置,然后按照红圈开始执行

导入import cv2时出现ImportError:DLL load fail:找不到指定模块的解决办法_第2张图片

右侧,点开会发现show all

导入import cv2时出现ImportError:DLL load fail:找不到指定模块的解决办法_第3张图片

导入import cv2时出现ImportError:DLL load fail:找不到指定模块的解决办法_第4张图片

看看第三个图里面,是否将python的部分路径加进去了,我之前没有加载进去(site-packages这个文件夹必须包含进去,因为里面有cv2啊),pycahrm才能正确导入cv2。

至此结束,估计anaconda可以以同样的道理弄吧,没有尝试,希望你自己尝一下哦!

你可能感兴趣的:(python)