查看: 2669|回复: 5

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

[复制链接]

4

主题

11

帖子

39

积分

新手上路

Rank: 1

积分
39
发表于 2018-9-18 15:53:16 | 显示全部楼层 |阅读模式
在导入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下的空文件夹除外)。
有人知道是哪里出错了吗?
回复

使用道具 举报

11

主题

80

帖子

199

积分

注册会员

Rank: 2

积分
199
发表于 2018-9-18 15:54:27 | 显示全部楼层
回复

使用道具 举报

10

主题

72

帖子

180

积分

注册会员

Rank: 2

积分
180
发表于 2018-9-18 15:54:57 | 显示全部楼层
请检查您使用的python版本是否也是64位。如果不是,意味着你使用32位python版本,并安装了64位的OPENCV库二进制文件。
回复

使用道具 举报

9

主题

74

帖子

185

积分

注册会员

Rank: 2

积分
185
发表于 2018-9-18 15:56:38 | 显示全部楼层
使用如下代码
  1. import imp
  2. imp.find_module("cv2")
复制代码

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

使用道具 举报

15

主题

97

帖子

310

积分

论坛管理

Rank: 4

积分
310
发表于 2018-10-10 08:11:01 | 显示全部楼层
这个问题不错,解决了我的问题
回复

使用道具 举报

3

主题

55

帖子

131

积分

注册会员

Rank: 2

积分
131
发表于 2018-10-11 08:19:55 | 显示全部楼层
嗯嗯我之前也遇到过
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表