win7 32位 安装opencv-python后,运行时提示 "from .cv2 import *: DLL load failed: 找不到指定的模块" 的解决办法
安装opencv后,运行一个测试程序提示"from .cv2 import *: DLL load failed: 找不到指定的模块"。于是百度一下解决办法,结果试了N多方法后也没能解决这个问题。
最后不得不耐心的下载了dependency walker来查看opencv到底是缺少了哪个dll文件。(dependency walker这个软件还是很有用的,如果试了好多方法没有解决安装问题,可以下载下来试试。运行后,单击 file->open->"D:\python32\Lib\site-packages\cv2\cv2.cp36-win32.pyd",载入这个文件后,就可以看到到底是缺少哪个dll文件了)我的提示如下图:
于是我下载了:API-MS-WIN-DOWNLEVEL-SHLWAPI-L1-1-0.DLL这个文件。解压开后有两个版本的dll文件。 一个是win7版本,一个是win8版本的。因为我的系统是32位的,我就将32位的dll文件拷贝至D:\python32\Lib\site-packages\cv2\ 文件夹下。结果又提示:DLL load failed: %1 不是有效的 Win32 应用程序。
(该dll文件也可放在window/system32/ 下面,然后注册一下)
看到这个信息时,觉得真的有些彻底希望了。python都重新安装了,opencv也试了几个版本。心想在win7难以实现opencv的安装了,是不是也像有的朋友介绍的那样,把系统升级到win10或32位重装成64位。
最后心想dll文件版本不对,就试试win7的64位dll文件吧,死马当作活马医。没想到将64位的拷贝过去后,在运行测试程序,顺利通过。
(虽然没有查找到具体的解决办法,但是搜到的一些解决方法还是给了我一些提示,让我最终能顺利的跨过这些坑)
最后就以测试运行成功加载图片的结果作为结尾吧!祝查找实现opencv安装方法的你好运