社会诚哥 发表于 2018-9-18 15:53:16

ImportError: DLL loading failure: % 1 is not a valid Win32 application.But th...

在导入cv2的时候报了如下错误
ImportError: DLL loading failure: % 1 is not a valid Win32 application.But the DLL is there我在这台64位机器上安装了OpenCV 。路径是C:\lib\opencv。我使用的是64位Python。我的PYTHONPATH变量:PYTHONPATH=C:\lib\opencv\build\python\2.7。这个文件夹包含cv2.pyd。我的PATH变量:Path=%OPENCV_DIR%\bin;...此文件夹包含39个DLL文件,例如opencv_core246d.dll。
OPENCV_DIR的值是:OPENCV_DIR=C:\lib\opencv\build\x64\vc11。
另一个ImportError: DLL loading failure: % 1 is not a valid Win32 application.But the DLL is there问题的解决方案是将新的opencv二进制文件路径(C:\opencv\build\bin\Release)添加到Windows PATH环境变量。
但是如上所示,C:\lib\opencv\build\x64\vc11\bin我的PATH中已经有OpenCV二进制文件夹。我的OpenCV安装没有任何Release文件夹(build / java下的空文件夹除外)。
有人知道是哪里出错了吗?

强人锁男 发表于 2018-9-18 15:54:27

Python扩展包的非官方Windows二进制文件http://www.lfd.uci.edu/~gohlke/pythonlibs/
你可以从这里找到任何python库

令狐少侠 发表于 2018-9-18 15:54:57

请检查您使用的python版本是否也是64位。如果不是,意味着你使用32位python版本,并安装了64位的OPENCV库二进制文件。

蛋蛋超人 发表于 2018-9-18 15:56:38

使用如下代码
import imp
imp.find_module("cv2")
这在Anaconda DLL目录中出现了一个完全出乎意料的“cv2.pyd”文件,该文件无论是卸载和安装都没法消除。Python首先在那里寻找并没有找到我的真正1的cv2.pyd文件所在处。我删除了那个cv2.pyd文件并再次尝试了imp.find_module(“cv2”),python立即找到了正确的文件并且cv2开始工作。

I_Like_AI 发表于 2018-10-10 08:11:01

这个问题不错,解决了我的问题

HelloWorld 发表于 2018-10-11 08:19:55

嗯嗯我之前也遇到过
页: [1]
查看完整版本: ImportError: DLL loading failure: % 1 is not a valid Win32 application.But th...