windows,ImportError:DLL加载失败:指定的模块找不到

import numpy as np import cv2 from matplotlib import pyplot as plt img = cv2.imread('12.jpg',0) orb = cv2.ORB() kp = orb.detect(img,None) kp, des = orb.compute(img, kp) img2 = cv2.drawKeypoints(img,kp,color=(0,255,0), flags=0) plt.imshow(img2),plt.show() 

我已经将numpycv2模块添加到我的python目录并设置它们的环境variables。

我也安装了msvcp71.dllmsvcr71.dll ,但是这个错误还没有解决。

那么我怎样才能解决这种DLL问题?

版本信息:

  1. Python 3.2

  2. numpy的-1.6.1-Win32的superpack-python3.2

  3. OpenCV的-3.0.0

Solutions Collecting From Web of "windows,ImportError:DLL加载失败:指定的模块找不到"

我怀疑你已经混合了x64 pythonx86 cv2.pyd文件,反之亦然。 简单的方法是在这里安装一个正确版本的opencv: http : //www.lfd.uci.edu/~gohlke/pythonlibs/#opencv

在这里看到讨论:

  1. ImportError:DLL加载失败:%1不是有效的Win32应用程序。 但是DLL在那里
  2. 如何在Python中使用OpenCV?

要检查你的python拱门:

 In [2]: import platform In [3]: platform.architecture() Out[3]: ('64bit', 'WindowsPE') 

cv2.pyd :我建议使用PESnoop :

 D:\Anaconda\Lib\site-packages> PESnoop cv2.pyd /pe_dh ------------------------------------------------------------------------------- PESnoop 2.0 - Advanced PE32/PE32+/COFF OBJ,LIB command line dumper by yoda ------------------------------------------------------------------------------- Dump of file: cv2.pyd... Modus: 64bit Portable Executable Image... 

讨论:

https://serverfault.com/questions/29958/how-to-tell-if-a-windows-application-requires-64-bit

我怎样才能确定一个可执行文件编译的平台?