Git上找的cv2.pyd
我一开始,是从人家Git上找的压缩包,解压,把cv2.pyd放到E:\Users\Administrator\AppData\Local\Programs\Python\Python36\Lib\site-packages下,然后import cv2的时候,报ImportError: DLL load failed: %1 不是有效的 Win32 应用程序这个错。
网上很多方法,都是说版本不对应,比如32位的Python版本,却装了64位的OpenCV之类的。马上检查一下自己的版本问题。
win+r键,输入cmd,输入Python
版本是没有弄错的,Python是用的64位的,OpenCV也是64位的,注意此处不是说你的电脑系统是不是64位。
此时在输入import cv2时,就报ImportError: DLL load failed: %1 不是有效的 Win32 应用程序。
按照以为网上一位仁兄的方法,把cv2.pyd复制到E:\Users\Administrator\AppData\Local\Programs\Python\Python36\Lib下,还是不行,依然是这个错。(有的人应该会成功)
pip install opencv_python-3.4.6+contrib-cp36-cp36m-win_amd64.whl 成功
因为我之前Python转的64位的,所以后缀必须是win_amd64
下载链接:opencv_python-3.4.6+contrib-cp36-cp36m-win_amd64.whl 免费
注意:一定要带contrib的,虽然不知道为啥,但是我之前用的opencv_python-3.4.5-cp36-cp36m-win_amd64.whl就没有成功
下载后,将whl放入E:\Users\Administrator\AppData\Local\Programs\Python\Python36\Scripts,打开cmd,按下图输入(由于之前已经安装了,所以显示可能和你们不太一样,正常的是最后一行有个successful)
此时在import cv2还是有问题的,真的是愁死我了。突发奇想,把之前从Git上复制过来的cv2.pyd删了,结果 成了!
装成功,其实还有个小提示的,我装好后,在Python36\Lib\site-packages下找到了cv2.cp36-win_amd64.pyd,然后回到Python36\Lib也找到了cv2.cp36-win_amd64.pyd。这个不是我自己复制过去的,是它自己装上的。