linux 找不到cv2模块,关于Windows下import cv2报错DLL load failed:找不到指定模块

因学习,需要用到opencv-python这个包。

开发环境:Win7 + Python 3.6.5 + Pip 18.0。

因开发、应用环境都会是在Windows上,因此在Windows上直接安装这个包:pip install opencv-python, 这个包依赖numpy 1.11.3以上,可以用pip install numpy先安装,版本目前是1.15.0。 一切都是OK的,写好代码,运行的时候就悲剧了,报错:from cv2 import *出了错,大致错误就是“DLL load failed:找不到指定模块”,如下图:

13e37f4f03ab2dc16dad2605884d8a55.png

错误很明显,马上copy错误提示,先百度一番,果然出现一大堆相关博客,这样的结果还是相当欣喜的,说明遇到这种错误的很多,应该很快能解决。然而,没有想到的是,从昨天下午三点多,一直到今天中午,我也没解决。百度上看了至少20几篇博客,必应上也看了2,3十篇文章。总结一下,基本都是说的解决方案就是下面几种:

(1)电脑上没安装

423b63fa80f2dfc82f6e5e8db774d4b1.png,(图中是2005,实际应该是2015版)缺少XXX.dll文件,下载安装一个就好了;

(2)pip install opencv-python自动安装的版本有问题,要卸载,然后去官网下载对应自己python和windows系统版本、位数的whl文件安装;

(3)cv2目录中或者opencv开头的dll文件放到cv2目录,再把cv2移动到Lib下;

(4)把python3.dll移动到XXXXX下???

(5)还有说pip版本太低了,升级pip后再安装就好了。

根据这些博客、文章,捣鼓了6,7个小时,也没解决我的问题,依旧是import失败。第(1)、(2)我倒是觉得有这个可能性,第(3)、(4)、(5)简直是在瞎扯淡,也不知道从哪儿copy别人的“神操作”。此时心灰意冷,开始研究dll。到底缺少什么dll,用什么软件找出缺少dll,一个一个去下载不成吗?软件是找到了,叫什么depends.exe,可惜不会用。

此时,我搞了个CentOS7的系统,试了下,import cv2没有任何错误。然后,我再把python安装包发给了以前一个同事,结果他安装完了,import也没有任何错误!和他一对比,唯一的差别就是他是win10,我是win7,而且他还没有自己去安装 VC2015,只有VC2017。

实在是不知道怎么搞了,因为不会查找DLL,只能花了2个小时,用MediaCreationTool1803.exe把win7升到了win10。然后……

linux 找不到cv2模块,关于Windows下import cv2报错DLL load failed:找不到指定模块_第1张图片

然后,他喵的,就好了!!!就这么好了???真的就好了!?卧了个狗尾巴草。。。

谨以此文献给遇到这种问题,但是又不太会Windows的业余Python同学。解决问题不一定要最好的办法,但越快越好,要不然你可能就放弃了。

你可能感兴趣的:(linux,找不到cv2模块)