陈建华的博客
专注web开发
Win7 64位导入opencv提示 ImportError: DLL load failed: 找不到指定的模块。
2019-10-12 12:55:53   阅读42次

   由于安装的是Ghost版的win7,总是有这样那样莫名其妙的问题,最近准备使用OpenCV处理做深度学习图像处理,安装opencv都没有任何异常,导入时候就提示:


     from .cv2 import *


 ImportError: DLL load failed: 找不到指定的模块。


     网上方法一(失败):


          大多是说安装的opencv版本与Python版本不兼容,我查看过,我的是Python3.6,不管pip还是pycharm安装的版本都是opencv_python-3.4.2.17,是吻合的。为了避免不对,卸载后在网上下载了opencv_python-3.4.2.17-cp36-cp36m-win_amd64.whl到本地安装,结果问题依旧。


    网上方法二(失败):


           也有很多网上帖子说是安装一下microsoft Visual C++ distributed 2015 X64的,但从添加删除程序里看,我是已经安装了的。


    方法三:使用depends软件查看究竟缺失什么DLL(成功)


           下载地址:http://www.dependencywalker.com/


            下载后,用软件打开Opencv安装目录(目录名称是cv2,我的目录在Anaconda的虚拟环境下面:C:\Users\Administrator\venv2\Lib\site-packages\cv2)的cv2.cp36-win_amd64.pyd,于是软件提示缺失了两个DLL,就是下图中黄色的两个:

20180808181340225.png

20180808181414413.png

于是用everything在电脑中查找,其中IEShims.dll可以找到,在我的电脑:C:\Windows\winsxs\amd64_microsoft-windows-ie-ieshims_31bf3856ad364e35_8.0.7601.17514_none_c06d7c9c27da8591下,看路径应该是64位版本的。


api-ms-win-downlevel-shlwapi-l1-1-0.dll在电脑中找不到,百度上下载了一个。


抱着尝试的心情将这两个DLL复制到opencv路径下,再次用depends查看如下:

20180808181753802.png

已经没有黄色叹号不满足依赖的情况。

在终端中:

201808081819034.png

可以看到opencv导入成功,问题得到解决,可以愉快的玩耍了,哈哈哈!这个软件果然很强大,以后凡是DLL缺失的都可以用它来寻找解决线索。




-----------------------------------------------------
转载请注明来源此处
原地址:#

-----网友评论----
暂无评论
-----发表评论----
微网聚博客乐园 ©2014 blog.mn886.net 鲁ICP备14012923号   网站导航