我有这个问题,我尝试在python上导入cv2并获取以下错误消息。ImportError:DLL加载失败:%1不是有效的Win32应用程序
>>> import cv2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: DLL load failed: %1 is not a valid Win32 application.
我不知道有这个很多职位在那里建议,包的位数是从Python包不同。
但是,我运行的所有东西都是64位。我在win7 64位,我有winpython 2.7.3.3,64位分布,我编译opencv 64位,提供指令here,并将cv2.pyd DLL放在Python的Lib/site-packages文件夹中。
不幸的是,使用32位版本的python的建议不再适用于我,因为我必须处理numpy数组对32位太大。
谢谢!
------ UPDATE
唯一缺少的是对新的OpenCV的二进制文件的路径(C:\ OpenCV的\建设\ BIN \发布)添加到Windows PATH环境变量,重启蟒蛇。
一切似乎现在工作正常!
采取什么措施来做到这一点? – Exzile
我没有得到的是,为什么错误消息没有声明无法加载的DLL? %1似乎只是DLL的名称的占位符。 – antred
好的。因此,如果您在64位计算机上修复该错误,则必须从x64文件夹复制cv2.pyd。 @antred它是一个占位符。它通常被替换为DLL,但不起作用,因为32位无法在64位机器上加载。 –